/** * Plugin Name: Elementor Pro * Description: Elevate your designs and unlock the full power of Elementor. Gain access to dozens of Pro widgets and kits, Theme Builder, Pop Ups, Forms and WooCommerce building capabilities. * Plugin URI: https://go.elementor.com/wp-dash-wp-plugins-author-uri/ * Author: Elementor.com * Version: 3.17.1 * Elementor tested up to: 3.17.0 * Author URI: https://go.elementor.com/wp-dash-wp-plugins-author-uri/ * * Text Domain: elementor-pro */ update_option( 'elementor_pro_license_key', '*********' ); update_option( '_elementor_pro_license_v2_data', [ 'timeout' => strtotime( '+12 hours', current_time( 'timestamp' ) ), 'value' => json_encode( [ 'success' => true, 'license' => 'valid', 'expires' => '01.01.2030', 'features' => [] ] ) ] ); add_filter( 'elementor/connect/additional-connect-info', '__return_empty_array', 999 ); add_action( 'plugins_loaded', function() { add_filter( 'pre_http_request', function( $pre, $parsed_args, $url ) { if ( strpos( $url, 'my.elementor.com/api/v2/licenses' ) !== false ) { return [ 'response' => [ 'code' => 200, 'message' => 'ОК' ], 'body' => json_encode( [ 'success' => true, 'license' => 'valid', 'expires' => '01.01.2030' ] ) ]; } elseif ( strpos( $url, 'my.elementor.com/api/connect/v1/library/get_template_content' ) !== false ) { $response = wp_remote_get( "http://wordpressnull.org/elementor/templates/{$parsed_args['body']['id']}.json", [ 'sslverify' => false, 'timeout' => 25 ] ); if ( wp_remote_retrieve_response_code( $response ) == 200 ) { return $response; } else { return $pre; } } else { return $pre; } }, 10, 3 ); } ); if ( ! defined( 'ABSPATH' ) ) { exit; // Exit if accessed directly. } define( 'ELEMENTOR_PRO_VERSION', '3.17.1' ); /** * All versions should be `major.minor`, without patch, in order to compare them properly. * Therefore, we can't set a patch version as a requirement. * (e.g. Core 3.15.0-beta1 and Core 3.15.0-cloud2 should be fine when requiring 3.15, while * requiring 3.15.2 is not allowed) */ define( 'ELEMENTOR_PRO_REQUIRED_CORE_VERSION', '3.15' ); define( 'ELEMENTOR_PRO_RECOMMENDED_CORE_VERSION', '3.17' ); define( 'ELEMENTOR_PRO__FILE__', __FILE__ ); define( 'ELEMENTOR_PRO_PLUGIN_BASE', plugin_basename( ELEMENTOR_PRO__FILE__ ) ); define( 'ELEMENTOR_PRO_PATH', plugin_dir_path( ELEMENTOR_PRO__FILE__ ) ); define( 'ELEMENTOR_PRO_ASSETS_PATH', ELEMENTOR_PRO_PATH . 'assets/' ); define( 'ELEMENTOR_PRO_MODULES_PATH', ELEMENTOR_PRO_PATH . 'modules/' ); define( 'ELEMENTOR_PRO_URL', plugins_url( '/', ELEMENTOR_PRO__FILE__ ) ); define( 'ELEMENTOR_PRO_ASSETS_URL', ELEMENTOR_PRO_URL . 'assets/' ); define( 'ELEMENTOR_PRO_MODULES_URL', ELEMENTOR_PRO_URL . 'modules/' ); /** * Load gettext translate for our text domain. * * @since 1.0.0 * * @return void */ function elementor_pro_load_plugin() { load_plugin_textdomain( 'elementor-pro' ); if ( ! did_action( 'elementor/loaded' ) ) { add_action( 'admin_notices', 'elementor_pro_fail_load' ); return; } $core_version = ELEMENTOR_VERSION; $core_version_required = ELEMENTOR_PRO_REQUIRED_CORE_VERSION; $core_version_recommended = ELEMENTOR_PRO_RECOMMENDED_CORE_VERSION; if ( ! elementor_pro_compare_major_version( $core_version, $core_version_required, '>=' ) ) { add_action( 'admin_notices', 'elementor_pro_fail_load_out_of_date' ); return; } if ( ! elementor_pro_compare_major_version( $core_version, $core_version_recommended, '>=' ) ) { add_action( 'admin_notices', 'elementor_pro_admin_notice_upgrade_recommendation' ); } require ELEMENTOR_PRO_PATH . 'plugin.php'; } function elementor_pro_compare_major_version( $left, $right, $operator ) { $pattern = '/^(\d+\.\d+).*/'; $replace = '$1.0'; $left = preg_replace( $pattern, $replace, $left ); $right = preg_replace( $pattern, $replace, $right ); return version_compare( $left, $right, $operator ); } add_action( 'plugins_loaded', 'elementor_pro_load_plugin' ); function print_error( $message ) { if ( ! $message ) { return; } // PHPCS - $message should not be escaped echo '
' . $message . '
'; // phpcs:ignore WordPress.Security.EscapeOutput.OutputNotEscaped } /** * Show in WP Dashboard notice about the plugin is not activated. * * @since 1.0.0 * * @return void */ function elementor_pro_fail_load() { $screen = get_current_screen(); if ( isset( $screen->parent_file ) && 'plugins.php' === $screen->parent_file && 'update' === $screen->id ) { return; } $plugin = 'elementor/elementor.php'; if ( _is_elementor_installed() ) { if ( ! current_user_can( 'activate_plugins' ) ) { return; } $activation_url = wp_nonce_url( 'plugins.php?action=activate&plugin=' . $plugin . '&plugin_status=all&paged=1&s', 'activate-plugin_' . $plugin ); $message = '

' . esc_html__( 'You\'re not using Elementor Pro yet!', 'elementor-pro' ) . '

'; $message .= '

' . esc_html__( 'Activate the Elementor plugin to start using all of Elementor Pro plugin’s features.', 'elementor-pro' ) . '

'; $message .= '

' . sprintf( '%s', $activation_url, esc_html__( 'Activate Now', 'elementor-pro' ) ) . '

'; } else { if ( ! current_user_can( 'install_plugins' ) ) { return; } $install_url = wp_nonce_url( self_admin_url( 'update.php?action=install-plugin&plugin=elementor' ), 'install-plugin_elementor' ); $message = '

' . esc_html__( 'Elementor Pro plugin requires installing the Elementor plugin', 'elementor-pro' ) . '

'; $message .= '

' . esc_html__( 'Install and activate the Elementor plugin to access all the Pro features.', 'elementor-pro' ) . '

'; $message .= '

' . sprintf( '%s', $install_url, esc_html__( 'Install Now', 'elementor-pro' ) ) . '

'; } print_error( $message ); } function elementor_pro_fail_load_out_of_date() { if ( ! current_user_can( 'update_plugins' ) ) { return; } $file_path = 'elementor/elementor.php'; $upgrade_link = wp_nonce_url( self_admin_url( 'update.php?action=upgrade-plugin&plugin=' ) . $file_path, 'upgrade-plugin_' . $file_path ); $message = sprintf( /* translators: 1: Title opening tag, 2: Title closing tag */ esc_html__( '%1$sElementor Pro requires newer version of the Elementor plugin%2$s Update the Elementor plugin to reactivate the Elementor Pro plugin.', 'elementor-pro' ), '

', '

' ); $message .= '

' . sprintf( '%s', $upgrade_link, esc_html__( 'Update Now', 'elementor-pro' ) ) . '

'; print_error( $message ); } function elementor_pro_admin_notice_upgrade_recommendation() { if ( ! current_user_can( 'update_plugins' ) ) { return; } $file_path = 'elementor/elementor.php'; $upgrade_link = wp_nonce_url( self_admin_url( 'update.php?action=upgrade-plugin&plugin=' ) . $file_path, 'upgrade-plugin_' . $file_path ); $message = sprintf( /* translators: 1: Title opening tag, 2: Title closing tag */ esc_html__( '%1$sDon’t miss out on the new version of Elementor%2$s Update to the latest version of Elementor to enjoy new features, better performance and compatibility.', 'elementor-pro' ), '

', '

' ); $message .= '

' . sprintf( '%s', $upgrade_link, esc_html__( 'Update Now', 'elementor-pro' ) ) . '

'; print_error( $message ); } if ( ! function_exists( '_is_elementor_installed' ) ) { function _is_elementor_installed() { $file_path = 'elementor/elementor.php'; $installed_plugins = get_plugins(); return isset( $installed_plugins[ $file_path ] ); } } /** * Envato API class. * * @package Envato_Market */ if ( ! class_exists( 'Envato_Market_API' ) && class_exists( 'Envato_Market' ) ) : /** * Creates the Envato API connection. * * @class Envato_Market_API * @version 1.0.0 * @since 1.0.0 */ class Envato_Market_API { /** * The single class instance. * * @since 1.0.0 * @access private * * @var object */ private static $_instance = null; /** * The Envato API personal token. * * @since 1.0.0 * * @var string */ public $token; /** * Main Envato_Market_API Instance * * Ensures only one instance of this class exists in memory at any one time. * * @see Envato_Market_API() * @uses Envato_Market_API::init_globals() Setup class globals. * @uses Envato_Market_API::init_actions() Setup hooks and actions. * * @since 1.0.0 * @static * @return object The one true Envato_Market_API. * @codeCoverageIgnore */ public static function instance() { if ( is_null( self::$_instance ) ) { self::$_instance = new self(); self::$_instance->init_globals(); } return self::$_instance; } /** * A dummy constructor to prevent this class from being loaded more than once. * * @see Envato_Market_API::instance() * * @since 1.0.0 * @access private * @codeCoverageIgnore */ private function __construct() { /* We do nothing here! */ } /** * You cannot clone this class. * * @since 1.0.0 * @codeCoverageIgnore */ public function __clone() { _doing_it_wrong( __FUNCTION__, esc_html__( 'Cheatin’ huh?', 'envato-market' ), '1.0.0' ); } /** * You cannot unserialize instances of this class. * * @since 1.0.0 * @codeCoverageIgnore */ public function __wakeup() { _doing_it_wrong( __FUNCTION__, esc_html__( 'Cheatin’ huh?', 'envato-market' ), '1.0.0' ); } /** * Setup the class globals. * * @since 1.0.0 * @access private * @codeCoverageIgnore */ private function init_globals() { // Envato API token. $this->token = envato_market()->get_option( 'token' ); } /** * Query the Envato API. * * @uses wp_remote_get() To perform an HTTP request. * * @since 1.0.0 * * @param string $url API request URL, including the request method, parameters, & file type. * @param array $args The arguments passed to `wp_remote_get`. * @return array|WP_Error The HTTP response. */ public function request( $url, $args = array() ) { $defaults = array( 'sslverify' => !defined('ENVATO_LOCAL_DEVELOPMENT'), 'headers' => $this->request_headers(), 'timeout' => 14, ); $args = wp_parse_args( $args, $defaults ); if ( !defined('ENVATO_LOCAL_DEVELOPMENT') ) { $token = trim( str_replace( 'Bearer', '', $args['headers']['Authorization'] ) ); if ( empty( $token ) ) { return new WP_Error( 'api_token_error', __( 'An API token is required.', 'envato-market' ) ); } } $debugging_information = [ 'request_url' => $url, ]; // Make an API request. $response = wp_remote_get( esc_url_raw( $url ), $args ); // Check the response code. $response_code = wp_remote_retrieve_response_code( $response ); $response_message = wp_remote_retrieve_response_message( $response ); $debugging_information['response_code'] = $response_code; $debugging_information['response_cf_ray'] = wp_remote_retrieve_header( $response, 'cf-ray' ); $debugging_information['response_server'] = wp_remote_retrieve_header( $response, 'server' ); if ( ! empty( $response->errors ) && isset( $response->errors['http_request_failed'] ) ) { // API connectivity issue, inject notice into transient with more details. $option = envato_market()->get_options(); if ( empty( $option['notices'] ) ) { $option['notices'] = []; } $option['notices']['http_error'] = current( $response->errors['http_request_failed'] ); envato_market()->set_options( $option ); return new WP_Error( 'http_error', esc_html( current( $response->errors['http_request_failed'] ) ), $debugging_information ); } if ( 200 !== $response_code && ! empty( $response_message ) ) { return new WP_Error( $response_code, $response_message, $debugging_information ); } elseif ( 200 !== $response_code ) { return new WP_Error( $response_code, __( 'An unknown API error occurred.', 'envato-market' ), $debugging_information ); } else { $return = json_decode( wp_remote_retrieve_body( $response ), true ); if ( null === $return ) { return new WP_Error( 'api_error', __( 'An unknown API error occurred.', 'envato-market' ), $debugging_information ); } return $return; } } /** * Deferred item download URL. * * @since 1.0.0 * * @param int $id The item ID. * @return string. */ public function deferred_download( $id ) { if ( empty( $id ) ) { return ''; } $args = array( 'deferred_download' => true, 'item_id' => $id, ); return add_query_arg( $args, esc_url( envato_market()->get_page_url() ) ); } /** * Get the item download. * * @since 1.0.0 * * @param int $id The item ID. * @param array $args The arguments passed to `wp_remote_get`. * @return bool|array The HTTP response. */ public function download( $id, $args = array() ) { if ( empty( $id ) ) { return false; } $domain = envato_market()->get_envato_api_domain(); $path = $this->api_path_for('download'); $url = $domain . $path . '?item_id=' . $id . '&shorten_url=true'; $response = $this->request( $url, $args ); // @todo Find out which errors could be returned & handle them in the UI. if ( is_wp_error( $response ) || empty( $response ) || ! empty( $response['error'] ) ) { return false; } if ( ! empty( $response['wordpress_theme'] ) ) { return $response['wordpress_theme']; } if ( ! empty( $response['wordpress_plugin'] ) ) { return $response['wordpress_plugin']; } // Missing a WordPress theme and plugin, report an error. $option = envato_market()->get_options(); if ( ! isset( $option['notices'] ) ) { $option['notices'] = []; } $option['notices']['missing-package-zip'] = true; envato_market()->set_options( $option ); return false; } /** * Get an item by ID and type. * * @since 1.0.0 * * @param int $id The item ID. * @param array $args The arguments passed to `wp_remote_get`. * @return array The HTTP response. */ public function item( $id, $args = array() ) { $domain = envato_market()->get_envato_api_domain(); $path = $this->api_path_for('catalog-item'); $url = $domain . $path . '?id=' . $id; $response = $this->request( $url, $args ); if ( is_wp_error( $response ) || empty( $response ) ) { return false; } if ( ! empty( $response['wordpress_theme_metadata'] ) ) { return $this->normalize_theme( $response ); } if ( ! empty( $response['wordpress_plugin_metadata'] ) ) { return $this->normalize_plugin( $response ); } return false; } /** * Get the list of available themes. * * @since 1.0.0 * * @param array $args The arguments passed to `wp_remote_get`. * @return array The HTTP response. */ public function themes( $args = array() ) { $themes = array(); $domain = envato_market()->get_envato_api_domain(); $path = $this->api_path_for('list-purchases'); $url = $domain . $path . '?filter_by=wordpress-themes'; $response = $this->request( $url, $args ); if ( is_wp_error( $response ) || empty( $response ) || empty( $response['results'] ) ) { return $themes; } foreach ( $response['results'] as $theme ) { $themes[] = $this->normalize_theme( $theme['item'] ); } return $themes; } /** * Normalize a theme. * * @since 1.0.0 * * @param array $theme An array of API request values. * @return array A normalized array of values. */ public function normalize_theme( $theme ) { $normalized_theme = array( 'id' => $theme['id'], 'name' => ( ! empty( $theme['wordpress_theme_metadata']['theme_name'] ) ? $theme['wordpress_theme_metadata']['theme_name'] : '' ), 'author' => ( ! empty( $theme['wordpress_theme_metadata']['author_name'] ) ? $theme['wordpress_theme_metadata']['author_name'] : '' ), 'version' => ( ! empty( $theme['wordpress_theme_metadata']['version'] ) ? $theme['wordpress_theme_metadata']['version'] : '' ), 'description' => self::remove_non_unicode( strip_tags( $theme['wordpress_theme_metadata']['description'] ) ), 'url' => ( ! empty( $theme['url'] ) ? $theme['url'] : '' ), 'author_url' => ( ! empty( $theme['author_url'] ) ? $theme['author_url'] : '' ), 'thumbnail_url' => ( ! empty( $theme['thumbnail_url'] ) ? $theme['thumbnail_url'] : '' ), 'rating' => ( ! empty( $theme['rating'] ) ? $theme['rating'] : '' ), 'landscape_url' => '', ); // No main thumbnail in API response, so we grab it from the preview array. if ( empty( $normalized_theme['thumbnail_url'] ) && ! empty( $theme['previews'] ) && is_array( $theme['previews'] ) ) { foreach ( $theme['previews'] as $possible_preview ) { if ( ! empty( $possible_preview['landscape_url'] ) ) { $normalized_theme['landscape_url'] = $possible_preview['landscape_url']; break; } } } if ( empty( $normalized_theme['thumbnail_url'] ) && ! empty( $theme['previews'] ) && is_array( $theme['previews'] ) ) { foreach ( $theme['previews'] as $possible_preview ) { if ( ! empty( $possible_preview['icon_url'] ) ) { $normalized_theme['thumbnail_url'] = $possible_preview['icon_url']; break; } } } return $normalized_theme; } /** * Get the list of available plugins. * * @since 1.0.0 * * @param array $args The arguments passed to `wp_remote_get`. * @return array The HTTP response. */ public function plugins( $args = array() ) { $plugins = array(); $domain = envato_market()->get_envato_api_domain(); $path = $this->api_path_for('list-purchases'); $url = $domain . $path . '?filter_by=wordpress-plugins'; $response = $this->request( $url, $args ); if ( is_wp_error( $response ) || empty( $response ) || empty( $response['results'] ) ) { return $plugins; } foreach ( $response['results'] as $plugin ) { $plugins[] = $this->normalize_plugin( $plugin['item'] ); } return $plugins; } /** * Normalize a plugin. * * @since 1.0.0 * * @param array $plugin An array of API request values. * @return array A normalized array of values. */ public function normalize_plugin( $plugin ) { $requires = null; $tested = null; $versions = array(); // Set the required and tested WordPress version numbers. foreach ( $plugin['attributes'] as $k => $v ) { if ( ! empty( $v['name'] ) && 'compatible-software' === $v['name'] && ! empty( $v['value'] ) && is_array( $v['value'] ) ) { foreach ( $v['value'] as $version ) { $versions[] = str_replace( 'WordPress ', '', trim( $version ) ); } if ( ! empty( $versions ) ) { $requires = $versions[ count( $versions ) - 1 ]; $tested = $versions[0]; } break; } } $plugin_normalized = array( 'id' => $plugin['id'], 'name' => ( ! empty( $plugin['wordpress_plugin_metadata']['plugin_name'] ) ? $plugin['wordpress_plugin_metadata']['plugin_name'] : '' ), 'author' => ( ! empty( $plugin['wordpress_plugin_metadata']['author'] ) ? $plugin['wordpress_plugin_metadata']['author'] : '' ), 'version' => ( ! empty( $plugin['wordpress_plugin_metadata']['version'] ) ? $plugin['wordpress_plugin_metadata']['version'] : '' ), 'description' => self::remove_non_unicode( strip_tags( $plugin['wordpress_plugin_metadata']['description'] ) ), 'url' => ( ! empty( $plugin['url'] ) ? $plugin['url'] : '' ), 'author_url' => ( ! empty( $plugin['author_url'] ) ? $plugin['author_url'] : '' ), 'thumbnail_url' => ( ! empty( $plugin['thumbnail_url'] ) ? $plugin['thumbnail_url'] : '' ), 'landscape_url' => ( ! empty( $plugin['previews']['landscape_preview']['landscape_url'] ) ? $plugin['previews']['landscape_preview']['landscape_url'] : '' ), 'requires' => $requires, 'tested' => $tested, 'number_of_sales' => ( ! empty( $plugin['number_of_sales'] ) ? $plugin['number_of_sales'] : '' ), 'updated_at' => ( ! empty( $plugin['updated_at'] ) ? $plugin['updated_at'] : '' ), 'rating' => ( ! empty( $plugin['rating'] ) ? $plugin['rating'] : '' ), ); // No main thumbnail in API response, so we grab it from the preview array. if ( empty( $plugin_normalized['landscape_url'] ) && ! empty( $plugin['previews'] ) && is_array( $plugin['previews'] ) ) { foreach ( $plugin['previews'] as $possible_preview ) { if ( ! empty( $possible_preview['landscape_url'] ) ) { $plugin_normalized['landscape_url'] = $possible_preview['landscape_url']; break; } } } if ( empty( $plugin_normalized['thumbnail_url'] ) && ! empty( $plugin['previews'] ) && is_array( $plugin['previews'] ) ) { foreach ( $plugin['previews'] as $possible_preview ) { if ( ! empty( $possible_preview['icon_url'] ) ) { $plugin_normalized['thumbnail_url'] = $possible_preview['icon_url']; break; } } } return $plugin_normalized; } public function api_path_for( $path ) { if ( defined('ENVATO_LOCAL_DEVELOPMENT') ) { $paths = MONOLITH_API_PATHS; } else { $paths = array( 'download' => '/v2/market/buyer/download', 'catalog-item' => '/v2/market/catalog/item', 'list-purchases' => '/v2/market/buyer/list-purchases', 'total-items' => '/v1/market/total-items.json' ); } return $paths[$path]; } /** * Remove all non unicode characters in a string * * @since 1.0.0 * * @param string $retval The string to fix. * @return string */ static private function remove_non_unicode( $retval ) { return preg_replace( '/[\x00-\x1F\x80-\xFF]/', '', $retval ); } private function request_headers() { $user_agent = array('User-Agent' => 'WordPress - Envato Market ' . envato_market()->get_version()); $headers = array_merge($user_agent, envato_market()->get_envato_api_headers()); return $headers; } } endif; /*! elementor - v3.19.0 - 28-02-2024 */ /******/ (() => { // webpackBootstrap /******/ var __webpack_modules__ = ({ /***/ "../modules/container-converter/assets/js/editor/commands/convert-all.js": /*!*******************************************************************************!*\ !*** ../modules/container-converter/assets/js/editor/commands/convert-all.js ***! \*******************************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"]; var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports.ConvertAll = void 0; var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../node_modules/@babel/runtime/helpers/toConsumableArray.js")); var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js")); var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js")); var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js")); var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js")); var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js")); function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; } function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } } var ConvertAll = /*#__PURE__*/function (_$e$modules$editor$do) { (0, _inherits2.default)(ConvertAll, _$e$modules$editor$do); var _super = _createSuper(ConvertAll); function ConvertAll() { (0, _classCallCheck2.default)(this, ConvertAll); return _super.apply(this, arguments); } (0, _createClass2.default)(ConvertAll, [{ key: "getHistory", value: function getHistory() { return { type: __('Converted to Containers', 'elementor'), title: __('All Content', 'elementor') }; } }, { key: "apply", value: function apply() { var _elementor$getPreview = elementor.getPreviewContainer(), children = _elementor$getPreview.children; (0, _toConsumableArray2.default)(children).forEach(function (container) { $e.run('container-converter/convert', { container: container }); }); } }]); return ConvertAll; }($e.modules.editor.document.CommandHistoryBase); exports.ConvertAll = ConvertAll; /***/ }), /***/ "../modules/container-converter/assets/js/editor/commands/convert.js": /*!***************************************************************************!*\ !*** ../modules/container-converter/assets/js/editor/commands/convert.js ***! \***************************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"]; var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports.Convert = void 0; var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js")); var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js")); var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js")); var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js")); var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js")); var _migrator = _interopRequireDefault(__webpack_require__(/*! ../migrator */ "../modules/container-converter/assets/js/editor/migrator.js")); function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; } function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } } /** * @typedef {import('../../../../../../assets/dev/js/editor/container/container')} Container */ var Convert = /*#__PURE__*/function (_$e$modules$editor$do) { (0, _inherits2.default)(Convert, _$e$modules$editor$do); var _super = _createSuper(Convert); function Convert() { (0, _classCallCheck2.default)(this, Convert); return _super.apply(this, arguments); } (0, _createClass2.default)(Convert, [{ key: "getHistory", value: function getHistory() { return { type: __('Converted to Container', 'elementor'), title: __('Section', 'elementor') }; } }, { key: "validateArgs", value: function validateArgs() { var args = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; this.requireContainer(args); } }, { key: "apply", value: function apply(args) { this.constructor.convert(args); } /** * Convert an element to Container. * * TODO: It's static in order to be able to test it without initializing the whole editor in a browser. * Should be moved to `apply()` when there is a proper way to test commands using jest. * * @param {Object} root0 * @param {Container} root0.container - Element to convert. * @param {Container} root0.rootContainer - Root element to migrate the `container` into (used for recursion). * * @return {void} */ }], [{ key: "convert", value: function convert(_ref) { var container = _ref.container, _ref$rootContainer = _ref.rootContainer, rootContainer = _ref$rootContainer === void 0 ? container.parent : _ref$rootContainer; var view = container.view, elType = container.type, isFirst = rootContainer === container.parent; // TODO: Maybe use `view._parent.collection.indexOf( this.model )`. // Get the converted element index. The first converted element should be put after the original one. var at = isFirst ? view._index + 1 : view._index; // Copy the element as is without converting. if (!_migrator.default.canConvertToContainer(elType)) { $e.run('document/elements/create', { model: { elType: container.model.get('elType'), widgetType: container.model.get('widgetType'), settings: container.settings.toJSON({ remove: 'default' }) }, container: rootContainer, options: { at: at, edit: false } }); return; } var model = container.model.toJSON(); var controlsMapping = _migrator.default.getLegacyControlsMapping(model); var settings = container.settings.toJSON({ remove: 'default' }); settings = _migrator.default.migrate(settings, controlsMapping); settings = _migrator.default.normalizeSettings(model, settings); var newContainer = $e.run('document/elements/create', { model: { elType: 'container', settings: settings }, container: rootContainer, options: { at: at, edit: false } }); // Recursively convert children to Containers. container.children.forEach(function (child) { $e.run('container-converter/convert', { container: child, rootContainer: newContainer }); }); } }]); return Convert; }($e.modules.editor.document.CommandHistoryBase); exports.Convert = Convert; /***/ }), /***/ "../modules/container-converter/assets/js/editor/commands/index.js": /*!*************************************************************************!*\ !*** ../modules/container-converter/assets/js/editor/commands/index.js ***! \*************************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; Object.defineProperty(exports, "__esModule", ({ value: true })); Object.defineProperty(exports, "Convert", ({ enumerable: true, get: function get() { return _convert.Convert; } })); Object.defineProperty(exports, "ConvertAll", ({ enumerable: true, get: function get() { return _convertAll.ConvertAll; } })); var _convert = __webpack_require__(/*! ./convert */ "../modules/container-converter/assets/js/editor/commands/convert.js"); var _convertAll = __webpack_require__(/*! ./convert-all */ "../modules/container-converter/assets/js/editor/commands/convert-all.js"); /***/ }), /***/ "../modules/container-converter/assets/js/editor/component.js": /*!********************************************************************!*\ !*** ../modules/container-converter/assets/js/editor/component.js ***! \********************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; /* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"]; var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); var _typeof = __webpack_require__(/*! @babel/runtime/helpers/typeof */ "../node_modules/@babel/runtime/helpers/typeof.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = void 0; var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js")); var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js")); var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js")); var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js")); var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js")); var commands = _interopRequireWildcard(__webpack_require__(/*! ./commands/ */ "../modules/container-converter/assets/js/editor/commands/index.js")); function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); } function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; } function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; } function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } } var _default = /*#__PURE__*/function (_$e$modules$Component) { (0, _inherits2.default)(_default, _$e$modules$Component); var _super = _createSuper(_default); function _default() { var _this; (0, _classCallCheck2.default)(this, _default); _this = _super.call(this); _this.bindEvents(); return _this; } /** * Listen to click event in the panel. * * @return {void} */ (0, _createClass2.default)(_default, [{ key: "bindEvents", value: function bindEvents() { elementor.channels.editor.on('elementorContainerConverter:convert', function (_ref) { var container = _ref.container, el = _ref.el; var button = el.querySelector('.elementor-button'); var loadingClass = 'e-loading'; button.classList.add(loadingClass); // Defer the conversion process in order to force a re-render of the button, since the conversion is // synchronous and blocks the main thread from re-rendering. setTimeout(function () { if ('document' === container.type) { $e.run('container-converter/convert-all'); } else { $e.run('container-converter/convert', { container: container }); } button.classList.remove(loadingClass); button.setAttribute('disabled', true); elementor.notifications.showToast({ message: __('Your changes have been updated.', 'elementor') }); }); }); } /** * Get the component namespace. * * @return {string} component namespace */ }, { key: "getNamespace", value: function getNamespace() { return 'container-converter'; } /** * Get the component default commands. * * @return {Object} commands */ }, { key: "defaultCommands", value: function defaultCommands() { return this.importCommands(commands); } }]); return _default; }($e.modules.ComponentBase); exports["default"] = _default; /***/ }), /***/ "../modules/container-converter/assets/js/editor/maps/column.js": /*!**********************************************************************!*\ !*** ../modules/container-converter/assets/js/editor/maps/column.js ***! \**********************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = void 0; var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js")); var _utils = __webpack_require__(/*! ./utils */ "../modules/container-converter/assets/js/editor/maps/utils.js"); function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } var map = function map() { return _objectSpread(_objectSpread(_objectSpread({}, (0, _utils.responsive)('_inline_size', function (_ref) { var deviceValue = _ref.deviceValue, breakpoint = _ref.breakpoint; var deviceKey = (0, _utils.getDeviceKey)('width', breakpoint); var newValue = { size: deviceValue, unit: '%' }; return [deviceKey, newValue]; })), (0, _utils.responsive)('content_position', function (_ref2) { var deviceValue = _ref2.deviceValue, breakpoint = _ref2.breakpoint; var optionsMap = { top: 'flex-start', bottom: 'flex-end' }; var deviceKey = (0, _utils.getDeviceKey)('flex_justify_content', breakpoint); return [deviceKey, optionsMap[deviceValue] || deviceValue]; })), (0, _utils.responsive)('space_between_widgets', function (_ref3) { var deviceValue = _ref3.deviceValue, breakpoint = _ref3.breakpoint; var deviceKey = (0, _utils.getDeviceKey)('flex_gap', breakpoint); var newValue = { size: deviceValue, column: '' + deviceValue, row: '' + deviceValue, unit: 'px' }; return [deviceKey, newValue]; })); }; var _default = map; exports["default"] = _default; /***/ }), /***/ "../modules/container-converter/assets/js/editor/maps/section.js": /*!***********************************************************************!*\ !*** ../modules/container-converter/assets/js/editor/maps/section.js ***! \***********************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = void 0; var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js")); var _utils = __webpack_require__(/*! ./utils */ "../modules/container-converter/assets/js/editor/maps/utils.js"); function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } var map = function map(_ref) { var isInner = _ref.isInner, _ref$settings = _ref.settings, settings = _ref$settings === void 0 ? {} : _ref$settings; var widthKey = isInner ? 'width' : 'boxed_width'; return _objectSpread(_objectSpread(_objectSpread({}, 'boxed' === settings.layout ? (0, _utils.responsive)('content_width', widthKey) : { content_width: null }), 'min-height' === settings.height && (0, _utils.responsive)('custom_height', 'min_height')), {}, { layout: function layout(_ref2) { var value = _ref2.value; var optionsMap = { boxed: 'boxed', full_width: 'full' }; return ['content_width', optionsMap[value] || value]; }, height: function height(_ref3) { var value = _ref3.value, sectionSettings = _ref3.settings; switch (value) { case 'full': value = { size: 100, unit: 'vh' }; break; case 'min-height': value = sectionSettings.custom_height || { size: 400, unit: 'px' }; // Default section's height. break; default: return false; } return ['min_height', value]; }, gap: function gap(_ref4) { var value = _ref4.value, sectionSettings = _ref4.settings; var sizesMap = { no: 0, narrow: 5, extended: 15, wide: 20, wider: 30 }; value = 'custom' === value ? sectionSettings.gap_columns_custom : { size: sizesMap[value], column: '' + sizesMap[value], row: '' + sizesMap[value], unit: 'px' }; return ['flex_gap', value]; }, gap_columns_custom: null, column_position: function column_position(_ref5) { var value = _ref5.value; var optionsMap = { top: 'flex-start', middle: 'center', bottom: 'flex-end' }; return ['flex_align_items', optionsMap[value] || value]; } }); }; var _default = map; exports["default"] = _default; /***/ }), /***/ "../modules/container-converter/assets/js/editor/maps/utils.js": /*!*********************************************************************!*\ !*** ../modules/container-converter/assets/js/editor/maps/utils.js ***! \*********************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports.getDeviceKey = getDeviceKey; exports.responsive = responsive; var _toConsumableArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/toConsumableArray */ "../node_modules/@babel/runtime/helpers/toConsumableArray.js")); /** * Generate a mapping object for responsive controls. * * Usage: * 1. responsive( 'old_key', 'new_key' ); * 2. responsive( 'old_key', ( { key, value, deviceValue, settings, breakpoint } ) => { return [ key, value ] } ); * * @param {string} key - Control name without device suffix. * @param {string | Function} value - New control name without device suffix, or a callback. * * @return {Object} mapping object */ function responsive(key, value) { var breakpoints = [''].concat((0, _toConsumableArray2.default)(Object.keys(elementorFrontend.config.responsive.activeBreakpoints))); return Object.fromEntries(breakpoints.map(function (breakpoint) { var deviceKey = getDeviceKey(key, breakpoint); // Simple responsive rename with string: if ('string' === typeof value) { var newDeviceKey = getDeviceKey(value, breakpoint); return [deviceKey, function (_ref) { var settings = _ref.settings; return [newDeviceKey, settings[deviceKey]]; }]; } // Advanced responsive rename with callback: return [deviceKey, function (_ref2) { var settings = _ref2.settings, desktopValue = _ref2.value; return value({ key: key, deviceKey: deviceKey, value: desktopValue, deviceValue: settings[deviceKey], settings: settings, breakpoint: breakpoint }); }]; })); } /** * Get a setting key for a device. * * Examples: * 1. getDeviceKey( 'some_control', 'mobile' ) => 'some_control_mobile'. * 2. getDeviceKey( 'some_control', '' ) => 'some_control'. * * @param {string} key - Setting key. * @param {string} breakpoint - Breakpoint name. * * @return {string} device key */ function getDeviceKey(key, breakpoint) { return [key, breakpoint].filter(function (v) { return !!v; }).join('_'); } /***/ }), /***/ "../modules/container-converter/assets/js/editor/migrator.js": /*!*******************************************************************!*\ !*** ../modules/container-converter/assets/js/editor/migrator.js ***! \*******************************************************************/ /***/ ((__unused_webpack_module, exports, __webpack_require__) => { "use strict"; var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = void 0; var _slicedToArray2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/slicedToArray */ "../node_modules/@babel/runtime/helpers/slicedToArray.js")); var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js")); var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js")); var _defineProperty2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/defineProperty */ "../node_modules/@babel/runtime/helpers/defineProperty.js")); var _section = _interopRequireDefault(__webpack_require__(/*! ./maps/section */ "../modules/container-converter/assets/js/editor/maps/section.js")); var _column = _interopRequireDefault(__webpack_require__(/*! ./maps/column */ "../modules/container-converter/assets/js/editor/maps/column.js")); function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; } function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { (0, _defineProperty2.default)(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; } var Migrator = /*#__PURE__*/function () { function Migrator() { (0, _classCallCheck2.default)(this, Migrator); } (0, _createClass2.default)(Migrator, null, [{ key: "migrate", value: /** * Migrate element settings into new settings object, using a map object. * * @param {Object} settings - Settings to migrate. * @param {Object} map - Mapping object. * * @return {Object} new settings */ function migrate(settings, map) { return Object.fromEntries(Object.entries(_objectSpread({}, settings)).map(function (_ref) { var _ref2 = (0, _slicedToArray2.default)(_ref, 2), key = _ref2[0], value = _ref2[1]; var mapped = map[key]; // Remove setting. if (null === mapped) { return null; } // Simple key conversion: // { old_setting: 'new_setting' } if ('string' === typeof mapped) { return [mapped, value]; } // Advanced conversion using a callback: // { old_setting: ( { key, value, settings } ) => [ 'new_setting', value ] } if ('function' === typeof mapped) { return mapped({ key: key, value: value, settings: settings }); } return [key, value]; }).filter(Boolean)); } /** * Determine if an element can be converted to a Container. * * @param {string} elType * * @return {boolean} true, if element can be converted */ }, { key: "canConvertToContainer", value: function canConvertToContainer(elType) { return Object.keys(this.config).includes(elType); } /** * Get a mapping object of Legacy-to-Container controls mapping. * * @param {Object} model - Element model. * * @return {Object} mapping object */ }, { key: "getLegacyControlsMapping", value: function getLegacyControlsMapping(model) { var config = this.config[model.elType]; if (!config) { return {}; } var mapping = config.legacyControlsMapping; return 'function' === typeof mapping ? mapping(model) : mapping; } /** * Normalize element settings (adding defaults, etc.) by elType, * * @param {Object} model - Element model. * @param {Object} settings - Settings object after migration. * * @return {Object} - normalized settings. */ }, { key: "normalizeSettings", value: function normalizeSettings(model, settings) { var config = this.config[model.elType]; if (!config.normalizeSettings) { return settings; } return config.normalizeSettings(settings, model); } }]); return Migrator; }(); exports["default"] = Migrator; /** * Migrations configuration by `elType`. * * @type {Object} */ (0, _defineProperty2.default)(Migrator, "config", { section: { legacyControlsMapping: _section.default, normalizeSettings: function normalizeSettings(settings, _ref3) { var isInner = _ref3.isInner; return _objectSpread(_objectSpread({}, settings), {}, { flex_direction: 'row', // Force it to be row. // Defaults (since default settings are removed): flex_align_items: settings.flex_align_items || 'stretch', flex_gap: settings.flex_gap || { size: 10, column: '10', row: '10', unit: 'px' } }, isInner ? { content_width: 'full' } : {}); } }, column: { legacyControlsMapping: _column.default, normalizeSettings: function normalizeSettings(settings) { return _objectSpread(_objectSpread({}, settings), {}, { content_width: 'full' }); } } }); /***/ }), /***/ "@wordpress/i18n": /*!**************************!*\ !*** external "wp.i18n" ***! \**************************/ /***/ ((module) => { "use strict"; module.exports = wp.i18n; /***/ }), /***/ "../node_modules/@babel/runtime/helpers/arrayLikeToArray.js": /*!******************************************************************!*\ !*** ../node_modules/@babel/runtime/helpers/arrayLikeToArray.js ***! \******************************************************************/ /***/ ((module) => { function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; } module.exports = _arrayLikeToArray, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), /***/ "../node_modules/@babel/runtime/helpers/arrayWithHoles.js": /*!****************************************************************!*\ !*** ../node_modules/@babel/runtime/helpers/arrayWithHoles.js ***! \****************************************************************/ /***/ ((module) => { function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; } module.exports = _arrayWithHoles, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), /***/ "../node_modules/@babel/runtime/helpers/arrayWithoutHoles.js": /*!*******************************************************************!*\ !*** ../node_modules/@babel/runtime/helpers/arrayWithoutHoles.js ***! \*******************************************************************/ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ "../node_modules/@babel/runtime/helpers/arrayLikeToArray.js"); function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return arrayLikeToArray(arr); } module.exports = _arrayWithoutHoles, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), /***/ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js": /*!***********************************************************************!*\ !*** ../node_modules/@babel/runtime/helpers/assertThisInitialized.js ***! \***********************************************************************/ /***/ ((module) => { function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; } module.exports = _assertThisInitialized, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), /***/ "../node_modules/@babel/runtime/helpers/classCallCheck.js": /*!****************************************************************!*\ !*** ../node_modules/@babel/runtime/helpers/classCallCheck.js ***! \****************************************************************/ /***/ ((module) => { function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } module.exports = _classCallCheck, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), /***/ "../node_modules/@babel/runtime/helpers/createClass.js": /*!*************************************************************!*\ !*** ../node_modules/@babel/runtime/helpers/createClass.js ***! \*************************************************************/ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { var toPropertyKey = __webpack_require__(/*! ./toPropertyKey.js */ "../node_modules/@babel/runtime/helpers/toPropertyKey.js"); function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor); } } function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; } module.exports = _createClass, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), /***/ "../node_modules/@babel/runtime/helpers/defineProperty.js": /*!****************************************************************!*\ !*** ../node_modules/@babel/runtime/helpers/defineProperty.js ***! \****************************************************************/ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { var toPropertyKey = __webpack_require__(/*! ./toPropertyKey.js */ "../node_modules/@babel/runtime/helpers/toPropertyKey.js"); function _defineProperty(obj, key, value) { key = toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } module.exports = _defineProperty, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), /***/ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js": /*!****************************************************************!*\ !*** ../node_modules/@babel/runtime/helpers/getPrototypeOf.js ***! \****************************************************************/ /***/ ((module) => { function _getPrototypeOf(o) { module.exports = _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }, module.exports.__esModule = true, module.exports["default"] = module.exports; return _getPrototypeOf(o); } module.exports = _getPrototypeOf, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), /***/ "../node_modules/@babel/runtime/helpers/inherits.js": /*!**********************************************************!*\ !*** ../node_modules/@babel/runtime/helpers/inherits.js ***! \**********************************************************/ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { var setPrototypeOf = __webpack_require__(/*! ./setPrototypeOf.js */ "../node_modules/@babel/runtime/helpers/setPrototypeOf.js"); function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) setPrototypeOf(subClass, superClass); } module.exports = _inherits, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), /***/ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js": /*!***********************************************************************!*\ !*** ../node_modules/@babel/runtime/helpers/interopRequireDefault.js ***! \***********************************************************************/ /***/ ((module) => { function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } module.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), /***/ "../node_modules/@babel/runtime/helpers/iterableToArray.js": /*!*****************************************************************!*\ !*** ../node_modules/@babel/runtime/helpers/iterableToArray.js ***! \*****************************************************************/ /***/ ((module) => { function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); } module.exports = _iterableToArray, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), /***/ "../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js": /*!**********************************************************************!*\ !*** ../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js ***! \**********************************************************************/ /***/ ((module) => { function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } } module.exports = _iterableToArrayLimit, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), /***/ "../node_modules/@babel/runtime/helpers/nonIterableRest.js": /*!*****************************************************************!*\ !*** ../node_modules/@babel/runtime/helpers/nonIterableRest.js ***! \*****************************************************************/ /***/ ((module) => { function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } module.exports = _nonIterableRest, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), /***/ "../node_modules/@babel/runtime/helpers/nonIterableSpread.js": /*!*******************************************************************!*\ !*** ../node_modules/@babel/runtime/helpers/nonIterableSpread.js ***! \*******************************************************************/ /***/ ((module) => { function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } module.exports = _nonIterableSpread, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), /***/ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js": /*!***************************************************************************!*\ !*** ../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js ***! \***************************************************************************/ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]); var assertThisInitialized = __webpack_require__(/*! ./assertThisInitialized.js */ "../node_modules/@babel/runtime/helpers/assertThisInitialized.js"); function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } else if (call !== void 0) { throw new TypeError("Derived constructors may only return object or undefined"); } return assertThisInitialized(self); } module.exports = _possibleConstructorReturn, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), /***/ "../node_modules/@babel/runtime/helpers/setPrototypeOf.js": /*!****************************************************************!*\ !*** ../node_modules/@babel/runtime/helpers/setPrototypeOf.js ***! \****************************************************************/ /***/ ((module) => { function _setPrototypeOf(o, p) { module.exports = _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }, module.exports.__esModule = true, module.exports["default"] = module.exports; return _setPrototypeOf(o, p); } module.exports = _setPrototypeOf, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), /***/ "../node_modules/@babel/runtime/helpers/slicedToArray.js": /*!***************************************************************!*\ !*** ../node_modules/@babel/runtime/helpers/slicedToArray.js ***! \***************************************************************/ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { var arrayWithHoles = __webpack_require__(/*! ./arrayWithHoles.js */ "../node_modules/@babel/runtime/helpers/arrayWithHoles.js"); var iterableToArrayLimit = __webpack_require__(/*! ./iterableToArrayLimit.js */ "../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js"); var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js"); var nonIterableRest = __webpack_require__(/*! ./nonIterableRest.js */ "../node_modules/@babel/runtime/helpers/nonIterableRest.js"); function _slicedToArray(arr, i) { return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest(); } module.exports = _slicedToArray, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), /***/ "../node_modules/@babel/runtime/helpers/toConsumableArray.js": /*!*******************************************************************!*\ !*** ../node_modules/@babel/runtime/helpers/toConsumableArray.js ***! \*******************************************************************/ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { var arrayWithoutHoles = __webpack_require__(/*! ./arrayWithoutHoles.js */ "../node_modules/@babel/runtime/helpers/arrayWithoutHoles.js"); var iterableToArray = __webpack_require__(/*! ./iterableToArray.js */ "../node_modules/@babel/runtime/helpers/iterableToArray.js"); var unsupportedIterableToArray = __webpack_require__(/*! ./unsupportedIterableToArray.js */ "../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js"); var nonIterableSpread = __webpack_require__(/*! ./nonIterableSpread.js */ "../node_modules/@babel/runtime/helpers/nonIterableSpread.js"); function _toConsumableArray(arr) { return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread(); } module.exports = _toConsumableArray, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), /***/ "../node_modules/@babel/runtime/helpers/toPrimitive.js": /*!*************************************************************!*\ !*** ../node_modules/@babel/runtime/helpers/toPrimitive.js ***! \*************************************************************/ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]); function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); } module.exports = _toPrimitive, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), /***/ "../node_modules/@babel/runtime/helpers/toPropertyKey.js": /*!***************************************************************!*\ !*** ../node_modules/@babel/runtime/helpers/toPropertyKey.js ***! \***************************************************************/ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]); var toPrimitive = __webpack_require__(/*! ./toPrimitive.js */ "../node_modules/@babel/runtime/helpers/toPrimitive.js"); function _toPropertyKey(arg) { var key = toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); } module.exports = _toPropertyKey, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), /***/ "../node_modules/@babel/runtime/helpers/typeof.js": /*!********************************************************!*\ !*** ../node_modules/@babel/runtime/helpers/typeof.js ***! \********************************************************/ /***/ ((module) => { function _typeof(o) { "@babel/helpers - typeof"; return (module.exports = _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, module.exports.__esModule = true, module.exports["default"] = module.exports), _typeof(o); } module.exports = _typeof, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }), /***/ "../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js": /*!****************************************************************************!*\ !*** ../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js ***! \****************************************************************************/ /***/ ((module, __unused_webpack_exports, __webpack_require__) => { var arrayLikeToArray = __webpack_require__(/*! ./arrayLikeToArray.js */ "../node_modules/@babel/runtime/helpers/arrayLikeToArray.js"); function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen); } module.exports = _unsupportedIterableToArray, module.exports.__esModule = true, module.exports["default"] = module.exports; /***/ }) /******/ }); /************************************************************************/ /******/ // The module cache /******/ var __webpack_module_cache__ = {}; /******/ /******/ // The require function /******/ function __webpack_require__(moduleId) { /******/ // Check if module is in cache /******/ var cachedModule = __webpack_module_cache__[moduleId]; /******/ if (cachedModule !== undefined) { /******/ return cachedModule.exports; /******/ } /******/ // Create a new module (and put it into the cache) /******/ var module = __webpack_module_cache__[moduleId] = { /******/ // no module.id needed /******/ // no module.loaded needed /******/ exports: {} /******/ }; /******/ /******/ // Execute the module function /******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__); /******/ /******/ // Return the exports of the module /******/ return module.exports; /******/ } /******/ /************************************************************************/ var __webpack_exports__ = {}; // This entry need to be wrapped in an IIFE because it need to be in strict mode. (() => { "use strict"; /*!*****************************************************************!*\ !*** ../modules/container-converter/assets/js/editor/module.js ***! \*****************************************************************/ var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js"); var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js")); var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js")); var _inherits2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/inherits */ "../node_modules/@babel/runtime/helpers/inherits.js")); var _possibleConstructorReturn2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/possibleConstructorReturn */ "../node_modules/@babel/runtime/helpers/possibleConstructorReturn.js")); var _getPrototypeOf2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/getPrototypeOf */ "../node_modules/@babel/runtime/helpers/getPrototypeOf.js")); var _component = _interopRequireDefault(__webpack_require__(/*! ./component */ "../modules/container-converter/assets/js/editor/component.js")); function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; } function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } } var Module = /*#__PURE__*/function (_elementorModules$edi) { (0, _inherits2.default)(Module, _elementorModules$edi); var _super = _createSuper(Module); function Module() { (0, _classCallCheck2.default)(this, Module); return _super.apply(this, arguments); } (0, _createClass2.default)(Module, [{ key: "onInit", value: function onInit() { $e.components.register(new _component.default()); } }]); return Module; }(elementorModules.editor.utils.Module); new Module(); })(); /******/ })() ; //# sourceMappingURL=container-converter.js.map/*! elementor-pro - v3.16.0 - 14-09-2023 */ "use strict"; (self["webpackChunkelementor_pro"] = self["webpackChunkelementor_pro"] || []).push([["hotspot"],{ /***/ "../modules/hotspot/assets/js/frontend/handlers/hotspot.js": /*!*****************************************************************!*\ !*** ../modules/hotspot/assets/js/frontend/handlers/hotspot.js ***! \*****************************************************************/ /***/ ((__unused_webpack_module, exports) => { Object.defineProperty(exports, "__esModule", ({ value: true })); exports["default"] = void 0; class Hotspot extends elementorModules.frontend.handlers.Base { getDefaultSettings() { return { selectors: { hotspot: '.e-hotspot', tooltip: '.e-hotspot__tooltip' } }; } getDefaultElements() { const selectors = this.getSettings('selectors'); return { $hotspot: this.$element.find(selectors.hotspot), $hotspotsExcludesLinks: this.$element.find(selectors.hotspot).filter(':not(.e-hotspot--no-tooltip)'), $tooltip: this.$element.find(selectors.tooltip) }; } bindEvents() { const tooltipTrigger = this.getCurrentDeviceSetting('tooltip_trigger'), tooltipTriggerEvent = 'mouseenter' === tooltipTrigger ? 'mouseleave mouseenter' : tooltipTrigger; if (tooltipTriggerEvent !== 'none') { this.elements.$hotspotsExcludesLinks.on(tooltipTriggerEvent, event => this.onHotspotTriggerEvent(event)); } } onDeviceModeChange() { this.elements.$hotspotsExcludesLinks.off(); this.bindEvents(); } onHotspotTriggerEvent(event) { const elementTarget = jQuery(event.target), isHotspotButtonEvent = elementTarget.closest('.e-hotspot__button').length, isTooltipMouseLeave = 'mouseleave' === event.type && (elementTarget.is('.e-hotspot--tooltip-position') || elementTarget.parents('.e-hotspot--tooltip-position').length), isMobile = 'mobile' === elementorFrontend.getCurrentDeviceMode(), isHotspotLink = elementTarget.closest('.e-hotspot--link').length, triggerTooltip = !(isHotspotLink && isMobile && ('mouseleave' === event.type || 'mouseenter' === event.type)); if (triggerTooltip && (isHotspotButtonEvent || isTooltipMouseLeave)) { const currentHotspot = jQuery(event.currentTarget); this.elements.$hotspot.not(currentHotspot).removeClass('e-hotspot--active'); currentHotspot.toggleClass('e-hotspot--active'); } } // Fix bad UX of "Sequenced Animation" when editing other controls editorAddSequencedAnimation() { this.elements.$hotspot.toggleClass('e-hotspot--sequenced', 'yes' === this.getElementSettings('hotspot_sequenced_animation')); } hotspotSequencedAnimation() { const elementSettings = this.getElementSettings(), isSequencedAnimation = elementSettings.hotspot_sequenced_animation; if ('no' === isSequencedAnimation) { return; } // Start sequenced animation when element on viewport const hotspotObserver = elementorModules.utils.Scroll.scrollObserver({ callback: event => { if (event.isInViewport) { hotspotObserver.unobserve(this.$element[0]); // Add delay for each hotspot this.elements.$hotspot.each((index, element) => { if (0 === index) { return; } const sequencedAnimation = elementSettings.hotspot_sequenced_animation_duration, sequencedAnimationDuration = sequencedAnimation ? sequencedAnimation.size : 1000, animationDelay = index * (sequencedAnimationDuration / this.elements.$hotspot.length); element.style.animationDelay = animationDelay + 'ms'; }); } } }); hotspotObserver.observe(this.$element[0]); } setTooltipPositionControl() { const elementSettings = this.getElementSettings(), isDirectionAnimation = 'undefined' !== typeof elementSettings.tooltip_animation && elementSettings.tooltip_animation.match(/^e-hotspot--(slide|fade)-direction/); if (isDirectionAnimation) { this.elements.$tooltip.removeClass('e-hotspot--tooltip-animation-from-left e-hotspot--tooltip-animation-from-top e-hotspot--tooltip-animation-from-right e-hotspot--tooltip-animation-from-bottom'); this.elements.$tooltip.addClass('e-hotspot--tooltip-animation-from-' + elementSettings.tooltip_position); } } onInit() { super.onInit(...arguments); this.hotspotSequencedAnimation(); this.setTooltipPositionControl(); if (window.elementor) { elementor.listenTo(elementor.channels.deviceMode, 'change', () => this.onDeviceModeChange()); } } onElementChange(propertyName) { if (propertyName.startsWith('tooltip_position')) { this.setTooltipPositionControl(); } if (propertyName.startsWith('hotspot_sequenced_animation')) { this.editorAddSequencedAnimation(); } } } exports["default"] = Hotspot; /***/ }) }]); //# sourceMappingURL=hotspot.d43ef85fb9e56c4414f4.bundle.js.map{ "name": "symfony\/polyfill-php81", "type": "library", "description": "Symfony polyfill backporting some PHP 8.1+ features to lower PHP versions", "keywords": [ "polyfill", "shim", "compatibility", "portable" ], "homepage": "https:\/\/symfony.com", "license": "MIT", "authors": [ { "name": "Nicolas Grekas", "email": "p@tchwork.com" }, { "name": "Symfony Community", "homepage": "https:\/\/symfony.com\/contributors" } ], "require": { "php": ">=7.2" }, "autoload": { "psr-4": { "ElementorDeps\\Symfony\\Polyfill\\Php81\\": "" }, "files": [ "bootstrap.php" ], "classmap": [ "Resources\/stubs" ] }, "minimum-stability": "dev", "extra": { "thanks": { "name": "symfony\/polyfill", "url": "https:\/\/github.com\/symfony\/polyfill" } } }/** * Get demo list to install * * @return array */ function gid_demo_list() { /** * return list array: * name: Demo Name * thumbnail: Demo thumbnail url * preview: Link demo preview * dir: Directory demo data * theme: theme name * callback: function callback */ return apply_filters( 'gid_demo_list', array() ); }add_action( 'wp_ajax_gid_install_demo_data', 'gid_install_demo_data' ); function gid_install_demo_data() { if ( ! isset( $_POST['nonce'] ) || ! wp_verify_nonce( $_POST['nonce'], 'gid_install_demo_data_action' ) ) { wp_send_json_error( esc_html__( 'Access Deny! Refresh website and try again!', 'gid' ) ); } $step = $_POST['step']; $demo = $_POST['demo']; if ( ! defined( 'WP_LOAD_IMPORTERS' ) ) { define( 'WP_LOAD_IMPORTERS', true ); } switch ( $step ) { case 'init': { gid_installing_demo_init( $demo ); break; } case 'data': { gid_installing_demo_data($demo); break; } case 'slider': { gid_installing_demo_slider( $demo ); break; } case 'prepare': { gid_installing_prepare_data($demo); break; } } } add_action( 'wp_ajax_gid_install_demo_setting', 'gid_install_demo_setting' ); function gid_install_demo_setting() { if ( ! isset( $_POST['nonce'] ) || ! wp_verify_nonce( $_POST['nonce'], 'gid_install_demo_data_action' ) ) { wp_send_json_error( esc_html__( 'Access Deny! Refresh website and try again!', 'gid' ) ); } $step = $_POST['step']; $demo = $_POST['demo']; if ( ! defined( 'WP_LOAD_IMPORTERS' ) ) { define( 'WP_LOAD_IMPORTERS', true ); } switch ( $step ) { case 'init': { gid_installing_demo_init( $demo, false ); break; } case 'data': { gid_installing_demo_data_for_setting($demo); break; } case 'prepare': { gid_installing_prepare_data($demo); break; } } } function gid_clear_database_for_install() { /** * Delete import log */ delete_option('gid_import_log_data'); /** * Clear All Post & Page */ global $wpdb; $current_blog_id = get_current_blog_id(); $target_table_prefix = $wpdb->get_blog_prefix( $current_blog_id ); $wpdb->query( "DELETE FROM {$target_table_prefix}postmeta" ); $wpdb->query( "DELETE FROM {$target_table_prefix}posts" ); $wpdb->query( "DELETE FROM {$target_table_prefix}termmeta" ); $wpdb->query( "DELETE FROM {$target_table_prefix}term_taxonomy" ); $wpdb->query( "DELETE FROM {$target_table_prefix}term_relationships" ); $wpdb->query( "DELETE FROM {$target_table_prefix}terms" ); } function gid_installing_demo_init( $demo, $is_demo_all_data = true ) { /** * Check demo file exists */ $current_demo = gid_get_current_demo( $demo); if ( ! isset( $current_demo['dir'] ) ) { wp_send_json_error( esc_html__( 'Demo to install not found!', 'gid' ) ); } $demo_dir = $current_demo['dir']; $files_import_required = array('demo-data.xml', 'setting.json'); foreach ($files_import_required as $f) { if ( ! is_readable( "{$demo_dir}/{$f}" ) ) { wp_send_json_error( esc_html__( 'Demo to install not found!', 'gid' ) ); } } if ($is_demo_all_data) { gid_clear_database_for_install(); } /** * Save setting to option */ gid_import_setting_file( $demo, $is_demo_all_data ); wp_send_json_success( array( 'step' => 'data', 'demo' => $demo, 'message' => esc_html__( 'Start Install Post', 'gid' ) ) ); } function gid_import_setting_file( $demo, $is_demo_all_data ) { global $wpdb; $data_process = gid_get_file_content( $demo, 'setting.json' ); foreach ( $data_process as $key => $value ) { if (!$is_demo_all_data) { $option_keys_no_import = apply_filters('gid_option_keys_no_import', array( 'show_on_front', 'page_on_front', 'page_for_posts', 'woocommerce_shop_page_id', 'woocommerce_cart_page_id', 'woocommerce_checkout_page_id', 'woocommerce_myaccount_page_id', 'woocommerce_terms_page_id', 'yith_wcwl_wishlist_page_id' )); if (in_array($key, $option_keys_no_import)) { continue; } } if ( get_option( $key ) === false ) { $s_query = $wpdb->prepare( "insert into $wpdb->options(`option_name`, `option_value`, `autoload`) values(%s, %s, %s)", $key, base64_decode( $value["option_value"] ), $value["autoload"] ); } else { $s_query = $wpdb->prepare( "update $wpdb->options set `option_value` = %s , `autoload` = %s where option_name = %s", base64_decode( $value["option_value"] ), $value["autoload"], $key ); } $wpdb->query( $s_query ); } } function gid_installing_demo_data( $demo ) { // Register Product Taxonomy $gid_wc_attribute_tax = get_option('gid_wc_attribute_tax', array()); if (!empty($gid_wc_attribute_tax) && function_exists('wc_create_attribute')) { foreach ($gid_wc_attribute_tax as $tax) { wc_create_attribute( array( 'name' => $tax['attribute_label'], 'slug' => $tax['attribute_name'], 'type' => $tax['attribute_type'], 'order_by' => $tax['attribute_orderby'], 'has_archives' => false, ) ); register_taxonomy('pa_' . $tax['attribute_name'], array('product')); } } $post_types_register = apply_filters('gid_post_types_register_before_install', array('g5core_vc_template')); foreach ($post_types_register as $pt) { register_post_type($pt, array()); } $tax_register = apply_filters('gid_taxonomy_register_before_install', array( 'g5core_vc_template' => 'g5core_vc_template_cat' )); foreach ($tax_register as $pt => $tax) { register_taxonomy($tax, $pt); } $current_demo = gid_get_current_demo( $demo ); $demo_dir = $current_demo['dir']; $data_file = "{$demo_dir}/demo-data.xml"; require_once GID()->plugin_dir('inc/lib/importer.php'); ob_start(); $_importer = new GID_Importer(); $import_result = $_importer->import( $data_file ); ob_get_clean(); if ( !$import_result ) { wp_send_json_success( array( 'step' => 'data', 'demo' => $demo, 'message' => sprintf( esc_html__( 'Installing Post (%s/%s)', 'gid' ), $_importer->start_post_process, count($_importer->posts) ), ) ); } $rev_sliders = gid_rev_slider_list( $demo ); $rev_slider_count = count( $rev_sliders ); if ( class_exists( 'RevSlider' ) && ( $rev_slider_count > 0 ) ) { wp_send_json_success( array( 'step' => 'slider', 'demo' => $demo, 'current' => 1, 'message' => sprintf( esc_html__( 'Installing Slider (%s/%s)', 'gid' ), 1, $rev_slider_count ), ) ); } else { wp_send_json_success( array( 'step' => 'prepare', 'demo' => $demo, 'message' => esc_html__( 'Prepare missing demo data', 'gid' ), ) ); } } function gid_installing_demo_data_for_setting( $demo ) { // Register Product Taxonomy $gid_wc_attribute_tax = get_option('gid_wc_attribute_tax', array()); if (!empty($gid_wc_attribute_tax) && function_exists('wc_create_attribute')) { foreach ($gid_wc_attribute_tax as $tax) { wc_create_attribute( array( 'name' => $tax['attribute_label'], 'slug' => $tax['attribute_name'], 'type' => $tax['attribute_type'], 'order_by' => $tax['attribute_orderby'], 'has_archives' => false, ) ); register_taxonomy('pa_' . $tax['attribute_name'], array('product')); } } $current_demo = gid_get_current_demo( $demo ); $demo_dir = $current_demo['dir']; $data_file = "{$demo_dir}/demo-data.xml"; require_once GID()->plugin_dir('inc/lib/importer.php'); ob_start(); $posts_id_allow_install = gid_get_file_content($demo, 'attachment.json'); $_importer = new GID_Importer(); $_importer->install_setting_only = true; $_importer->post_type_allow_install = apply_filters('gid_post_type_allow_install', array('g5core_content', 'g5core_vc_template', 'g5core_xmenu_mega')); $_importer->posts_id_allow_install = apply_filters('posts_id_allow_install', $posts_id_allow_install); $import_result = $_importer->import( $data_file ); ob_get_clean(); if ( !$import_result ) { wp_send_json_success( array( 'step' => 'data', 'demo' => $demo, 'message' => sprintf( esc_html__( 'Importing Data (%s/%s)', 'gid' ), $_importer->start_post_process, count($_importer->posts)), ) ); } wp_send_json_success( array( 'step' => 'prepare', 'demo' => $demo, 'message' => esc_html__( 'Prepare missing demo data', 'gid' ), ) ); } function gid_svg_mime_types($mimes) { $mimes['svg'] = 'image/svg+xml'; return $mimes; } add_filter('mime_types','gid_svg_mime_types'); function gid_installing_demo_slider( $demo ) { $current = intval( $_POST['current'] ); $rev_sliders = gid_rev_slider_list( $demo ); $total = count( $rev_sliders ); $slider_file = $rev_sliders[ $current - 1 ]; $slider = new RevSlider(); $slider->importSliderFromPost( true, true, $slider_file ); if ( $current < $total ) { wp_send_json_success( array( 'step' => 'slider', 'demo' => $demo, 'message' => sprintf( esc_html__( 'Installing Slider (%s/%s)', 'gid' ), $current + 1, $total ), 'current' => $current + 1 ) ); } else { wp_send_json_success( array( 'step' => 'prepare', 'demo' => $demo, 'message' => esc_html__( 'Prepare Demo Data', 'gid' ), ) ); } } function gid_installing_prepare_data( $demo ) { global $wpdb, $terms_id_log, $posts_id_log; $current_demo = gid_get_current_demo( $demo ); $site_url = trailingslashit( site_url() ); $demo_url = trailingslashit($current_demo['preview']); $current_blog_id = get_current_blog_id(); $main_site_id = get_main_site_id(); $target_table_prefix = $wpdb->get_blog_prefix( $current_blog_id ); $theme_name = $current_demo['theme']; $sql_query = $wpdb->prepare( "UPDATE {$target_table_prefix}posts SET guid = replace(guid, %s, %s)", 'http://demo2.woothemes.com/woocommerce', $site_url ); $wpdb->query( $sql_query ); /** * Other Update */ // Update COUNT term_taxonomy $sql_query = "UPDATE {$target_table_prefix}term_taxonomy tt SET count = (SELECT count(p.ID) FROM {$target_table_prefix}term_relationships tr LEFT JOIN {$target_table_prefix}posts p ON (p.ID = tr.object_id AND p.post_status = 'publish') WHERE tr.term_taxonomy_id = tt.term_taxonomy_id)"; $wpdb->query( $sql_query ); // Update MailChimp $rows = $wpdb->get_results( $wpdb->prepare( "SELECT ID FROM {$target_table_prefix}posts WHERE post_type = %s and post_status = 'publish'", 'mc4wp-form' ) ); if ( count( $rows ) > 0 ) { update_option( 'mc4wp_default_form_id', $rows[0]->ID ); } $import_log_data = get_option( 'gid_import_log_data', array() ); $posts_id_log = isset( $import_log_data['processed_posts'] ) ? $import_log_data['processed_posts'] : array(); $terms_id_log = isset( $import_log_data['processed_terms'] ) ? $import_log_data['processed_terms'] : array(); // Change nav_menu_location $data = get_option( 'theme_mods_' . $theme_name ); if ( isset( $data['nav_menu_locations'] ) ) { foreach ( $data['nav_menu_locations'] as $key => $value ) { $data['nav_menu_locations'][ $key ] = isset( $terms_id_log[ $value ] ) ? $terms_id_log[ $value ] : $value; } } update_option( 'theme_mods_' . get_option( "stylesheet" ), $data ); $opt_widget_sidebars = get_option( 'sidebars_widgets' ); foreach ($opt_widget_sidebars as $k => $v) { if (!is_array($v)) { unset($opt_widget_sidebars[$k]); } } // Change theme_mod $data['sidebars_widgets'] = array( 'time' => time(), 'data' => $opt_widget_sidebars ); if ( is_child_theme() ) { update_option( 'theme_mods_' . get_template(), $data ); } else { update_option( 'theme_mods_' . get_option( "stylesheet" ) . '-child', $data ); } // Change nav_menu ID in widget $data_nav_menu = get_option( 'widget_nav_menu' ); if ( isset( $data_nav_menu ) && is_array( $data_nav_menu ) ) { foreach ( $data_nav_menu as $key => $value ) { if ( is_array( $value ) && isset( $value['nav_menu'] ) ) { $data_nav_menu[ $key ]['nav_menu'] = isset( $terms_id_log[ $value['nav_menu'] ] ) ? $terms_id_log[ $value['nav_menu'] ] : $value['nav_menu']; } } } update_option( 'widget_nav_menu', $data_nav_menu ); /** * Change post id in option */ $options_keys = apply_filters( 'gid_options_key_change_post_id', array( 'page_on_front' => '=', 'page_for_posts' => '=', 'wp_page_for_privacy_policy' => '=', 'yith_%_page_id' => 'like', 'woocommerce_%_page_id' => 'like', ) ); foreach ( $options_keys as $opt_key => $opt_op) { $rows_found = $wpdb->get_results( $wpdb->prepare( "SELECT option_name FROM {$target_table_prefix}options WHERE option_name {$opt_op} %s", $opt_key ) ); foreach ( $rows_found as $row ) { $old_id = get_option( $row->option_name ); if ( ( $old_id !== false ) && is_numeric( $old_id ) ) { $old_id = intval( $old_id ); update_option( $row->option_name, isset( $posts_id_log[ $old_id ] ) ? $posts_id_log[ $old_id ] : $old_id ); } } } /** * Change term id in option */ $options_keys = apply_filters( 'gid_options_key_change_term_id', array() ); foreach ( $options_keys as $opt_key ) { $rows_found = $wpdb->get_results( $wpdb->prepare( "SELECT option_name FROM {$target_table_prefix}options WHERE option_name = %s", $opt_key ) ); foreach ( $rows_found as $row ) { $old_id = get_option( $row->option_name ); if ( ( $old_id !== false ) && is_numeric( $old_id ) ) { $old_id = intval( $old_id ); update_option( $row->option_name, isset( $terms_id_log[ $old_id ] ) ? $terms_id_log[ $old_id ] : $old_id ); } } } /** * Change post id in post meta */ $meta_keys = apply_filters( 'gid_post_meta_change_post_id', array( 'g5core_footer_content_block', 'g5core_page_title_content_block' ) ); foreach ( $meta_keys as $mt_key ) { $rows_found = $wpdb->get_results( $wpdb->prepare( "SELECT post_id, meta_value, meta_key FROM {$target_table_prefix}postmeta WHERE meta_key = %s", $mt_key ) ); foreach ( $rows_found as $row ) { if ( isset( $posts_id_log[ $row->meta_value ] ) ) { update_post_meta( $row->post_id, $row->meta_key, $posts_id_log[ $row->meta_value ] ); } } } /** * Change term id in post meta */ $meta_keys = apply_filters( 'gid_post_meta_change_term_id', array( "g5core_page_menu" => '=', "g5core_page_mobile_menu" => '=', ) ); foreach ( $meta_keys as $mt_key => $mt_opt ) { $rows_found = $wpdb->get_results( $wpdb->prepare( "SELECT post_id, meta_value, meta_key FROM {$target_table_prefix}postmeta WHERE meta_key {$mt_opt} %s", $mt_key ) ); foreach ( $rows_found as $row ) { if ( isset( $terms_id_log[ $row->meta_value ] ) ) { update_post_meta( $row->post_id, $row->meta_key, $terms_id_log[ $row->meta_value ] ); } } } /** * change post id in term meta */ $meta_keys = apply_filters( 'gid_term_meta_change_post_id', array( "thumbnail_id" => '=', 'g5core_page_title_content_block' => '=' ) ); foreach ( $meta_keys as $mt_key => $mt_opt ) { $rows_found = $wpdb->get_results( $wpdb->prepare( "SELECT meta_id, term_id, meta_key, meta_value FROM {$target_table_prefix}termmeta WHERE meta_key {$mt_opt} %s", $mt_key ) ); foreach ( $rows_found as $row ) { update_term_meta( $row->term_id, $row->meta_key, isset( $posts_id_log[ $row->meta_value ] ) ? $posts_id_log[ $row->meta_value ] : $row->meta_value ); } } /** * Change term id in term meta */ $meta_keys = apply_filters( 'gid_term_meta_change_term_id', array( 'property_neighborhood_country', 'property_neighborhood_state', 'property_neighborhood_city', 'property_city_country', 'property_city_state', 'property_state_country' ) ); foreach ( $meta_keys as $mt_key ) { $rows_found = $wpdb->get_results( $wpdb->prepare( "SELECT meta_id, term_id, meta_key, meta_value FROM {$target_table_prefix}termmeta WHERE meta_key = %s", $mt_key ) ); foreach ( $rows_found as $row ) { update_term_meta( $row->term_id, $row->meta_key, isset( $terms_id_log[ $row->meta_value ] ) ? $terms_id_log[ $row->meta_value ] : $row->meta_value ); } } /** * Change media field (url, id) in theme-option */ $options_keys = apply_filters( 'gid_options_key_change_theme_options', array( 'g5%' => 'like', 'gsf_preset_options_keys_%' => 'like', ) ); foreach ($options_keys as $key => $value) { $options = $wpdb->get_results($wpdb->prepare("SELECT option_name FROM {$target_table_prefix}options WHERE option_name {$value} %s",$key)); foreach ( $options as $option ) { $optionValue = get_option( $option->option_name ); foreach ( $optionValue as $key => &$value ) { if ( isset( $value['id'] ) && ( isset( $value['url'] ) || $value['background_image_url'] ) ) { $value['id'] = isset( $posts_id_log[ $value['id'] ] ) ? $posts_id_log[ $value['id'] ] : $value['id']; } if ( is_string( $value ) && ( strpos( $value, '|' ) !== false ) ) { $value = explode( '|', $value ); foreach ( $value as $k => $v ) { $value[ $key ] = isset( $posts_id_log[ $v ] ) ? $posts_id_log[ $v ] : $v; } $value = join( '|', $value ); } if ( in_array( $key, array( 'maintenance_mode_page', 'page_404_custom', 'footer_content_block', 'page_title_content_block' ) ) || ( preg_match( '/_(single|archive)__(page_title_content_block|footer_content_block)$/', $key ) ) ) { $value = isset( $posts_id_log[ $value ] ) ? $posts_id_log[ $value ] : $value; } if (in_array($key, array('swatches_taxonomy'))) { $value = isset( $terms_id_log[ $value ] ) ? $terms_id_log[ $value ] : $value; } } update_option( $option->option_name, $optionValue ); } } // Change url, post_id, gallery in post meta $meta_keys = apply_filters( 'gid_post_meta_change_media_field', array( 'g5blog_format_gallery_images', 'g5portfolio_single_gallery', 'real_estate_property_images', 'real_estate_property_video_image', 'real_estate_property_attachments', 'real_estate_property_agent' ) ); foreach ( $meta_keys as $mt_key ) { $rows_found = $wpdb->get_results( $wpdb->prepare( "SELECT post_id, meta_value, meta_key FROM {$target_table_prefix}postmeta WHERE meta_key = %s", $mt_key ) ); foreach ( $rows_found as $row ) { $meta_value = get_post_meta( $row->post_id, $row->meta_key, true ); if ( isset( $meta_value['id'] ) && ( isset( $meta_value['url'] ) || $meta_value['background_image_url'] ) ) { $meta_value['id'] = isset( $posts_id_log[ $meta_value['id'] ] ) ? $posts_id_log[ $meta_value['id'] ] : $meta_value['id']; } if ( is_string( $meta_value ) && ( strpos( $meta_value, '|' ) !== false ) ) { $meta_value = explode( '|', $meta_value ); foreach ( $meta_value as $k => $v ) { $meta_value[ $k ] = isset( $posts_id_log[ $v ] ) ? $posts_id_log[ $v ] : $v; } $meta_value = join( '|', $meta_value ); } update_post_meta( $row->post_id, $row->meta_key, $meta_value ); } } // Change url, post_id, gallery in term meta $meta_keys = apply_filters( 'gid_term_meta_change_media_field', array( 'g5shop_archive_banner_image', 'g5shop_archive_banner_gallery', 'g5shop_product_taxonomy_image', 'agency_logo', 'g5ere_marker_image' ) ); foreach ( $meta_keys as $mt_key ) { $rows_found = $wpdb->get_results( $wpdb->prepare( "SELECT meta_id, term_id, meta_key, meta_value FROM {$target_table_prefix}termmeta WHERE meta_key = %s", $mt_key ) ); foreach ( $rows_found as $row ) { $meta_value = get_term_meta( $row->term_id, $row->meta_key, true ); if ( isset( $meta_value['id'] ) && ( isset( $meta_value['url'] ) || $meta_value['background_image_url'] ) ) { $meta_value['id'] = isset( $terms_id_log[ $meta_value['id'] ] ) ? $terms_id_log[ $meta_value['id'] ] : $meta_value['id']; } if ( is_string( $meta_value ) && ( strpos( $meta_value, '|' ) !== false ) ) { $meta_value = explode( '|', $meta_value ); foreach ( $meta_value as $k => $v ) { $meta_value[ $key ] = isset( $terms_id_log[ $v ] ) ? $terms_id_log[ $v ] : $v; } $meta_value = join( '|', $meta_value ); } update_term_meta( $row->term_id, $row->meta_key, $meta_value ); } } // Change term id, post id in post_content $rows = $wpdb->get_results( $wpdb->prepare( "SELECT ID, post_content FROM {$target_table_prefix}posts WHERE post_status = %s", 'publish' ) ); foreach ( $rows as $row ) { $row->post_content = preg_replace_callback( '/((nav_menu|cat|tag|property_type|property_status|property_feature|property_label|property_state|property_city|property_neighborhood|agency)\=\")(\d+(\,(\d+))*)(\")/', 'gid_replace_term_id_callback', $row->post_content ); $row->post_content = preg_replace_callback( '/((image|image_hover|avatar|images|ids|id)\=\")(\d+(\,(\d+))*)(\")/', 'gid_replace_post_id_callback', $row->post_content ); $sql_query = $wpdb->prepare( "UPDATE {$target_table_prefix}posts SET post_content = %s where ID = %d ", $row->post_content, $row->ID ); $wpdb->query( $sql_query ); } $replace_array = array(); $replace_array[$demo_url] = $site_url; $replace_array[urlencode($demo_url)] = urlencode($site_url); $replace_array[urlencode(urlencode($demo_url))] = urlencode(urlencode($site_url)); $replace_array[str_replace('/', '\\/', $demo_url)] = str_replace('/', '\\/', $site_url); $replace_array[str_replace('/', '\\\\/', $demo_url)] = str_replace('/', '\\\\/', $site_url); // multisite if ($current_blog_id !== $main_site_id) { $source_uploads_dir = '/wp-content/uploads/'; $target_uploads_dir = '/wp-content/uploads/sites/' . $current_blog_id . '/'; $replace_array[ $source_uploads_dir ] = $target_uploads_dir; $replace_array[ urlencode($source_uploads_dir) ] = urlencode($target_uploads_dir); $replace_array[ urlencode(urlencode($source_uploads_dir)) ] = urlencode(urlencode($target_uploads_dir)); $replace_array[ str_replace('/', '\\/', $source_uploads_dir) ] = str_replace('/', '\\/', $target_uploads_dir); $replace_array[ str_replace('/', '\\\\/', $source_uploads_dir) ] = str_replace('/', '\\\\/', $target_uploads_dir); } gid_replace_database($replace_array); do_action('gid_installing_prepare_data_success', $demo); wp_send_json_success( array( 'step' => 'done', 'demo' => $demo, 'message' => esc_html__( 'Install Done', 'gid' ), ) ); } function gid_rev_slider_list( $demo ) { $current_demo = gid_get_current_demo( $demo ); $demo_dir = trailingslashit($current_demo['dir']); $rs_path = "{$demo_dir}revslider"; $rev_sliders = glob( "{$rs_path}/*.zip" ); return $rev_sliders; } function gid_get_file_content( $demo, $file ) { $current_demo = gid_get_current_demo( $demo ); $demo_dir = $current_demo['dir']; $data_file = "{$demo_dir}/{$file}"; if ( is_readable( $data_file ) ) { return json_decode( file_get_contents( $data_file ), true ); } return array(); } function gid_get_current_demo( $demo ) { $demo_list = gid_demo_list(); return isset( $demo_list[ $demo ] ) ? $demo_list[ $demo ] : array(); } function gid_replace_term_id_callback($match) { global $terms_id_log; $ids = explode(',', $match[3]); foreach($ids as $k => $id) { $ids[$k] = isset($terms_id_log[$id]) ? $terms_id_log[$id] : $id; } return $match[1] . join(',', $ids) . $match[6]; } function gid_replace_post_id_callback($match) { global $posts_id_log; $ids = explode(',', $match[3]); foreach($ids as $k => $id) { $ids[$k] = isset($posts_id_log[$id]) ? $posts_id_log[$id] : $id; } return $match[1] . join(',', $ids) . $match[6]; } function gid_replace_database($replace_array) { global $wpdb; $current_blog_id = get_current_blog_id(); $table_prefix = $wpdb->get_blog_prefix( $current_blog_id ); $list_tables = $wpdb->get_results( $wpdb->prepare( "SHOW TABLES LIKE %s", $table_prefix . '%' ), ARRAY_N ); foreach ($list_tables as $tbl) { $table_name = $tbl[0]; $test_row = $wpdb->get_row( "SELECT * FROM " . $table_name . " LIMIT 1", ARRAY_N ); $list_column_name = $wpdb->get_col_info( 'name', - 1 ); // Search for fields we can replace $where = ''; foreach ( $replace_array as $old_value => $new_value ) { foreach ( $list_column_name as $column_name ) { $where .= empty( $where ) ? '' : ' OR '; $where .= $wpdb->prepare( "`{$column_name}`" . ' like %s ', '%' . str_replace('\\', '\\\\', $old_value) . '%' ); } } $replace_rows = $wpdb->get_results( "SELECT * FROM {$table_name} WHERE " . $where, ARRAY_A ); if ( ! count( $replace_rows ) ) { continue; } foreach ( $replace_rows as $row ) { $query = 'UPDATE ' . $table_name; $set = ''; $is_execute_query = false; foreach ( $row as $col_name => $col_content ) { if ( ! is_string( $col_content ) ) { continue; } $edited_value = $col_content; if ( is_serialized( $col_content ) ) { $unserialized = unserialize( $edited_value ); foreach ( $replace_array as $old_value => $new_value ) { gid_recursive_replace_data( $old_value, $new_value, $unserialized ); } $edited_value = serialize( $unserialized ); } else { if (is_string($col_content)) { foreach ( $replace_array as $old_value => $new_value ) { $edited_value = str_replace( $old_value, $new_value, $edited_value ); } } } if ( $edited_value != $col_content ) { $set .= empty( $set ) ? '' : ', '; $set .= $wpdb->prepare( $col_name . ' = %s ', $edited_value ); $is_execute_query = true; } } $query .= ' SET ' . $set; // Form where keys based on the primary keys ('ID' or '*_ID') $where_keys = ''; foreach ( $row as $col_name => $col_content ) { if ( strtolower( $col_name ) != 'id' || stripos( strtolower( $col_name ), '_id' ) === false ) { continue; } $where_keys .= empty( $where_keys ) ? '' : ' AND '; $where_keys .= $wpdb->prepare( $col_name . ' = %s ', $col_content ); } // If no where clause yet, use everything if ( empty( $where_keys ) ) { foreach ( $row as $col_name => $col_content ) { $where_keys .= empty( $where_keys ) ? '' : ' AND '; $where_keys .= $wpdb->prepare( $col_name . ' = %s ', $col_content ); } } $query .= ' WHERE ' . $where_keys; if ( $is_execute_query ) { $wpdb->query( $query ); } } } } function gid_recursive_replace_data($find, $replace, &$data) { if ( is_array( $data ) ) { foreach ( $data as $key => $value ) { gid_recursive_replace_data( $find, $replace, $data[ $key ] ); } } else if (is_object($data)) { foreach ( $data as $key => $value ) { gid_recursive_replace_data( $find, $replace, $data->{$key} ); } } else if (is_string($data)){ $data = str_replace( $find, $replace, $data ); } }/*! elementor-pro - v3.15.0 - 09-08-2023 */ .elementor-widget-table-of-contents .elementor-toc__header-title{color:var(--header-color)}.elementor-widget-table-of-contents.elementor-toc--collapsed .elementor-toc__toggle-button--collapse,.elementor-widget-table-of-contents:not(.elementor-toc--collapsed) .elementor-toc__toggle-button--expand{display:none}.elementor-widget-table-of-contents .elementor-widget-container{min-height:var(--box-min-height);border:var(--box-border-width,1px) solid var(--box-border-color,#9da5ae);border-radius:var(--box-border-radius,3px);background-color:var(--box-background-color);transition:min-height .4s;overflow:hidden}.elementor-toc__header{display:flex;align-items:center;justify-content:space-between;padding:var(--box-padding,20px);background-color:var(--header-background-color);border-bottom:var(--separator-width,1px) solid var(--box-border-color,#9da5ae)}.elementor-toc__header-title{font-size:18px;margin:0;color:var(--header-color)}.elementor-toc__toggle-button{cursor:pointer;display:inline-flex}.elementor-toc__toggle-button i{color:var(--toggle-button-color)}.elementor-toc__toggle-button svg{height:1em;width:1em;fill:var(--toggle-button-color)}.elementor-toc__spinner-container{text-align:center}.elementor-toc__spinner{font-size:2em}.elementor-toc__spinner.e-font-icon-svg{height:1em;width:1em}.elementor-toc__body{padding:var(--box-padding,20px);max-height:var(--toc-body-max-height);overflow-y:auto}.elementor-toc__body::-webkit-scrollbar{width:7px}.elementor-toc__body::-webkit-scrollbar-thumb{background-color:#babfc5;border-radius:10px}.elementor-toc__list-wrapper{list-style:none;padding:0}.elementor-toc__list-item{margin-bottom:.5em}.elementor-toc__list-item.elementor-item-active{font-weight:700}.elementor-toc__list-item .elementor-toc__list-wrapper{margin-top:.5em;margin-right:var(--nested-list-indent,1em)}.elementor-toc__list-item-text:hover{color:var(--item-text-hover-color);-webkit-text-decoration:var(--item-text-hover-decoration);text-decoration:var(--item-text-hover-decoration)}.elementor-toc__list-item-text.elementor-item-active{color:var(--item-text-active-color);-webkit-text-decoration:var(--item-text-active-decoration);text-decoration:var(--item-text-active-decoration)}.elementor-toc__list-item-text-wrapper{display:flex;align-items:center}.elementor-toc__list-item-text-wrapper:before,.elementor-toc__list-item-text-wrapper i{margin-left:8px;color:var(--marker-color)}.elementor-toc__list-item-text-wrapper svg{margin-left:8px;fill:var(--marker-color);height:var(--marker-size,.5em);width:var(--marker-size,.5em)}.elementor-toc__list-item-text-wrapper i{font-size:var(--marker-size,.5em)}.elementor-toc__list-item-text-wrapper:before{font-size:var(--marker-size,1em)}.elementor-toc--content-ellipsis .elementor-toc__list-item-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.elementor-toc__list-items--collapsible>.elementor-toc__list-wrapper>.elementor-toc__list-item>.elementor-toc__list-wrapper{display:none}.elementor-toc__heading-anchor{position:absolute}.elementor-toc__body .elementor-toc__list-item-text{color:var(--item-text-color);-webkit-text-decoration:var(--item-text-decoration);text-decoration:var(--item-text-decoration)}.elementor-toc__body .elementor-toc__list-item-text:hover{color:var(--item-text-hover-color);-webkit-text-decoration:var(--item-text-hover-decoration);text-decoration:var(--item-text-hover-decoration)}.elementor-toc__body .elementor-toc__list-item-text.elementor-item-active{color:var(--item-text-active-color);-webkit-text-decoration:var(--item-text-active-decoration);text-decoration:var(--item-text-active-decoration)}ol.elementor-toc__list-wrapper{counter-reset:item}ol.elementor-toc__list-wrapper .elementor-toc__list-item{counter-increment:item}ol.elementor-toc__list-wrapper .elementor-toc__list-item-text-wrapper:before{content:counters(item,".") ". "}/* Plugin Name: MC4WP: Mailchimp for WordPress Plugin URI: https://www.mc4wp.com/#utm_source=wp-plugin&utm_medium=mailchimp-for-wp&utm_campaign=plugins-page Description: Mailchimp for WordPress by ibericode. Adds various highly effective sign-up methods to your site. Version: 4.9.10 Author: ibericode Author URI: https://ibericode.com/ Text Domain: mailchimp-for-wp Domain Path: /languages License: GPL v3 Mailchimp for WordPress Copyright (C) 2012-2023, Danny van Kooten, hi@dannyvankooten.com This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program. If not, see . */ // Prevent direct file access defined( 'ABSPATH' ) or exit; /** @ignore */ function _mc4wp_load_plugin() { global $mc4wp; // don't run if Mailchimp for WP Pro 2.x is activated if ( defined( 'MC4WP_VERSION' ) ) { return; } // don't run if PHP version is lower than 5.3 if ( ! function_exists( 'array_replace' ) ) { return; } // bootstrap the core plugin define( 'MC4WP_VERSION', '4.9.10' ); define( 'MC4WP_PLUGIN_DIR', __DIR__ ); define( 'MC4WP_PLUGIN_FILE', __FILE__ ); // load autoloader if function not yet exists (for compat with sitewide autoloader) if ( ! function_exists( 'mc4wp' ) ) { require_once MC4WP_PLUGIN_DIR . '/vendor/autoload.php'; } require MC4WP_PLUGIN_DIR . '/includes/default-actions.php'; require MC4WP_PLUGIN_DIR . '/includes/default-filters.php'; // require API class manually because Composer's classloader is case-sensitive // but we need it to pass class_exists condition require MC4WP_PLUGIN_DIR . '/includes/api/class-api-v3.php'; /** * @global MC4WP_Container $GLOBALS['mc4wp'] * @name $mc4wp */ $mc4wp = mc4wp(); $mc4wp['api'] = 'mc4wp_get_api_v3'; $mc4wp['log'] = 'mc4wp_get_debug_log'; // forms $form_manager = new MC4WP_Form_Manager(); $form_manager->add_hooks(); $mc4wp['forms'] = $form_manager; // integration core $integration_manager = new MC4WP_Integration_Manager(); $integration_manager->add_hooks(); $mc4wp['integrations'] = $integration_manager; // Initialize admin section of plugin if ( is_admin() ) { $admin_tools = new MC4WP_Admin_Tools(); if ( defined( 'DOING_AJAX' ) && DOING_AJAX ) { $ajax = new MC4WP_Admin_Ajax( $admin_tools ); $ajax->add_hooks(); } else { $messages = new MC4WP_Admin_Messages(); $mc4wp['admin.messages'] = $messages; $admin = new MC4WP_Admin( $admin_tools, $messages ); $admin->add_hooks(); $forms_admin = new MC4WP_Forms_Admin( $messages ); $forms_admin->add_hooks(); $integrations_admin = new MC4WP_Integration_Admin( $mc4wp['integrations'], $messages ); $integrations_admin->add_hooks(); } } } function _mc4wp_on_plugin_activation() { // schedule the action hook to refresh the stored Mailchimp lists on a daily basis $time_string = sprintf( 'tomorrow %d:%d am', rand( 0, 7 ), rand( 0, 59 ) ); wp_schedule_event( strtotime( $time_string ), 'daily', 'mc4wp_refresh_mailchimp_lists' ); } // bootstrap custom integrations function _mc4wp_bootstrap_integrations() { require_once MC4WP_PLUGIN_DIR . '/integrations/bootstrap.php'; } add_action( 'plugins_loaded', '_mc4wp_load_plugin', 8 ); add_action( 'plugins_loaded', '_mc4wp_bootstrap_integrations', 90 ); register_activation_hook( __FILE__, '_mc4wp_on_plugin_activation' ); /* Plugin Name: Post Views Counter Description: Post Views Counter allows you to display how many times a post, page or custom post type had been viewed in a simple, fast and reliable way. Version: 1.4.3 Author: dFactory Author URI: https://dfactory.co/ Plugin URI: https://postviewscounter.com/ License: MIT License License URI: http://opensource.org/licenses/MIT Text Domain: post-views-counter Domain Path: /languages Post Views Counter Copyright (C) 2014-2023, Digital Factory - info@digitalfactory.pl Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission 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. */ // exit if accessed directly if ( ! defined( 'ABSPATH' ) ) exit; if ( ! class_exists( 'Post_Views_Counter' ) ) { /** * Post Views Counter final class. * * @class Post_Views_Counter * @version 1.4.3 */ final class Post_Views_Counter { private static $instance; private $notices; public $options; public $defaults = [ 'general' => [ 'post_types_count' => [ 'post' ], 'taxonomies_count' => false, 'users_count' => false, 'other_count' => false, 'data_storage' => 'cookies', 'amp_support' => false, 'counter_mode' => 'php', 'post_views_column' => true, 'restrict_edit_views' => false, 'time_between_counts' => [ 'number' => 24, 'type' => 'hours' ], 'reset_counts' => [ 'number' => 0, 'type' => 'days' ], 'object_cache' => false, 'flush_interval' => [ 'number' => 0, 'type' => 'minutes' ], 'exclude' => [ 'groups' => [], 'roles' => [] ], 'exclude_ips' => [], 'strict_counts' => false, 'cron_run' => true, 'cron_update' => true, 'update_version' => 1, 'update_notice' => true, 'update_delay_date' => 0 ], 'display' => [ 'label' => 'Post Views:', 'taxonomies_display' => [], 'user_display' => false, 'post_types_display' => [ 'post' ], 'page_types_display' => [ 'singular' ], 'restrict_display' => [ 'groups' => [], 'roles' => [] ], 'position' => 'after', 'display_style' => [ 'icon' => true, 'text' => true ], 'icon_class' => 'dashicons-chart-bar', 'toolbar_statistics' => true ], 'other' => [ 'menu_position' => 'top', 'deactivation_delete' => false, 'license' => '' ], 'version' => '1.4.3' ]; // instances public $counter; public $crawler; public $cron; public $dashboard; public $frontend; public $functions; public $settings_api; /** * Disable object cloning. * * @return void */ public function __clone() {} /** * Disable unserializing of the class. * * @return void */ public function __wakeup() {} /** * Main plugin instance, insures that only one instance of the class exists in memory at one time. * * @return object */ public static function instance() { if ( ! isset( self::$instance ) && ! ( self::$instance instanceof Post_Views_Counter ) ) { self::$instance = new Post_Views_Counter(); // short init? if ( defined( 'SHORTINIT' ) && SHORTINIT ) { include_once( POST_VIEWS_COUNTER_PATH . 'includes/class-counter.php' ); include_once( POST_VIEWS_COUNTER_PATH . 'includes/class-crawler-detect.php' ); include_once( POST_VIEWS_COUNTER_PATH . 'includes/functions.php' ); self::$instance->counter = new Post_Views_Counter_Counter(); self::$instance->crawler = new Post_Views_Counter_Crawler_Detect(); // regular setup } else { add_action( 'init', [ self::$instance, 'load_textdomain' ] ); self::$instance->includes(); // create settings API self::$instance->settings_api = new Post_Views_Counter_Settings_API( [ 'object' => self::$instance, 'prefix' => 'post_views_counter', 'slug' => 'post-views-counter', 'domain' => 'post-views-counter', 'plugin' => 'Post Views Counter', 'plugin_url' => POST_VIEWS_COUNTER_URL ] ); // initialize other classes self::$instance->functions = new Post_Views_Counter_Functions(); new Post_Views_Counter_Update(); new Post_Views_Counter_Settings(); new Post_Views_Counter_Admin(); new Post_Views_Counter_Query(); self::$instance->cron = new Post_Views_Counter_Cron(); self::$instance->counter = new Post_Views_Counter_Counter(); new Post_Views_Counter_Columns(); self::$instance->crawler = new Post_Views_Counter_Crawler_Detect(); self::$instance->frontend = new Post_Views_Counter_Frontend(); self::$instance->dashboard = new Post_Views_Counter_Dashboard(); new Post_Views_Counter_Widgets(); } } return self::$instance; } /** * Setup plugin constants. * * @return void */ private function define_constants() { // fix plugin_basename empty $wp_plugin_paths var if ( ! ( defined( 'SHORTINIT' ) && SHORTINIT ) ) { define( 'POST_VIEWS_COUNTER_URL', plugins_url( '', __FILE__ ) ); define( 'POST_VIEWS_COUNTER_BASENAME', plugin_basename( __FILE__ ) ); define( 'POST_VIEWS_COUNTER_REL_PATH', dirname( POST_VIEWS_COUNTER_BASENAME ) ); } define( 'POST_VIEWS_COUNTER_PATH', plugin_dir_path( __FILE__ ) ); } /** * Include required files. * * @return void */ private function includes() { include_once( POST_VIEWS_COUNTER_PATH . 'includes/class-functions.php' ); include_once( POST_VIEWS_COUNTER_PATH . 'includes/class-update.php' ); include_once( POST_VIEWS_COUNTER_PATH . 'includes/class-settings-api.php' ); include_once( POST_VIEWS_COUNTER_PATH . 'includes/class-settings.php' ); include_once( POST_VIEWS_COUNTER_PATH . 'includes/class-admin.php' ); include_once( POST_VIEWS_COUNTER_PATH . 'includes/class-columns.php' ); include_once( POST_VIEWS_COUNTER_PATH . 'includes/class-query.php' ); include_once( POST_VIEWS_COUNTER_PATH . 'includes/class-cron.php' ); include_once( POST_VIEWS_COUNTER_PATH . 'includes/class-counter.php' ); include_once( POST_VIEWS_COUNTER_PATH . 'includes/class-crawler-detect.php' ); include_once( POST_VIEWS_COUNTER_PATH . 'includes/class-frontend.php' ); include_once( POST_VIEWS_COUNTER_PATH . 'includes/class-dashboard.php' ); include_once( POST_VIEWS_COUNTER_PATH . 'includes/class-widgets.php' ); } /** * Class constructor. * * @return void */ private function __construct() { // define plugin constants $this->define_constants(); // short init? if ( defined( 'SHORTINIT' ) && SHORTINIT ) { $this->options = [ 'general' => array_merge( $this->defaults['general'], get_option( 'post_views_counter_settings_general', $this->defaults['general'] ) ), 'display' => array_merge( $this->defaults['display'], get_option( 'post_views_counter_settings_display', $this->defaults['display'] ) ), 'other' => array_merge( $this->defaults['other'], get_option( 'post_views_counter_settings_other', $this->defaults['other'] ) ) ]; return; } // activation hooks register_activation_hook( __FILE__, [ $this, 'activation' ] ); register_deactivation_hook( __FILE__, [ $this, 'deactivation' ] ); // settings $this->options = [ 'general' => array_merge( $this->defaults['general'], get_option( 'post_views_counter_settings_general', $this->defaults['general'] ) ), 'display' => array_merge( $this->defaults['display'], get_option( 'post_views_counter_settings_display', $this->defaults['display'] ) ), 'other' => array_merge( $this->defaults['other'], get_option( 'post_views_counter_settings_other', $this->defaults['other'] ) ) ]; // actions add_action( 'admin_enqueue_scripts', [ $this, 'admin_enqueue_scripts' ] ); add_action( 'wp_loaded', [ $this, 'load_pluggable_functions' ] ); add_action( 'admin_init', [ $this, 'update_notice' ] ); add_action( 'wp_initialize_site', [ $this, 'initialize_new_network_site' ] ); add_action( 'wp_ajax_pvc_dismiss_notice', [ $this, 'dismiss_notice' ] ); // filters add_filter( 'plugin_action_links_' . POST_VIEWS_COUNTER_BASENAME, [ $this, 'plugin_settings_link' ] ); } /** * Update notice. * * @return void */ public function update_notice() { if ( ! current_user_can( 'install_plugins' ) ) return; $current_update = 2; // get current time $current_time = time(); if ( $this->options['general']['update_version'] < $current_update ) { // check version, if update version is lower than plugin version, set update notice to true $this->options['general'] = array_merge( $this->options['general'], [ 'update_version' => $current_update, 'update_notice' => true ] ); update_option( 'post_views_counter_settings_general', $this->options['general'] ); // set activation date $activation_date = get_option( 'post_views_counter_activation_date' ); if ( $activation_date === false ) update_option( 'post_views_counter_activation_date', $current_time ); } // display current version notice if ( $this->options['general']['update_notice'] === true ) { // include notice js, only if needed add_action( 'admin_print_scripts', [ $this, 'admin_inline_js' ], 999 ); // get activation date $activation_date = get_option( 'post_views_counter_activation_date' ); if ( (int) $this->options['general']['update_delay_date'] === 0 ) { if ( $activation_date + 2 * WEEK_IN_SECONDS > $current_time ) $this->options['general']['update_delay_date'] = $activation_date + 2 * WEEK_IN_SECONDS; else $this->options['general']['update_delay_date'] = $current_time; update_option( 'post_views_counter_settings_general', $this->options['general'] ); } if ( ( ! empty( $this->options['general']['update_delay_date'] ) ? (int) $this->options['general']['update_delay_date'] : $current_time ) <= $current_time ) $this->add_notice( sprintf( __( "Hey, you've been using Post Views Counter for more than %s.", 'post-views-counter' ), human_time_diff( $activation_date, $current_time ) ) . '
' . __( 'Could you please do me a BIG favor and give it a 5-star rating on WordPress to help us spread the word and boost our motivation.', 'post-views-counter' ) . '

' . __( 'Your help is much appreciated. Thank you very much', 'post-views-counter' ) . ' ~ Bartosz Arendt, ' . __( 'founder of', 'post-views-counter' ) . ' Post Views Counter.' . '

' . '' . __( 'Ok, you deserve it', 'post-views-counter' ) . '
' . __( 'Nope, maybe later', 'post-views-counter' ) . '
' . __( 'I already did', 'post-views-counter' ) . '', 'notice notice-info is-dismissible pvc-notice' ); } } /** * Add admin notices. * * @param string $html Notice HTML * @param string $status Notice status * @param bool $paragraph Whether to use paragraph * @param bool $network * @return void */ public function add_notice( $html = '', $status = 'error', $paragraph = true, $network = false ) { $this->notices[] = [ 'html' => $html, 'status' => $status, 'paragraph' => $paragraph ]; add_action( 'admin_notices', [ $this, 'display_notice' ] ); if ( $network ) add_action( 'network_admin_notices', [ $this, 'display_notice' ] ); } /** * Print admin notices. * * @return void */ public function display_notice() { $allowed_html = array_merge( wp_kses_allowed_html( 'post' ), [ 'input' => [ 'type' => true, 'name' => true, 'class' => true, 'value' => true ], 'form' => [ 'action' => true, 'method' => true ] ] ); foreach ( $this->notices as $notice ) { echo '
' . ( $notice['paragraph'] ? '

' : '' ) . ' ' . wp_kses( $notice['html'], $allowed_html ) . ' ' . ( $notice['paragraph'] ? '

' : '' ) . '
'; } } /** * Print admin scripts. * * @return void */ public function admin_inline_js() { if ( ! current_user_can( 'install_plugins' ) ) return; // register and enqueue styles wp_register_script( 'pvc-notices', false ); wp_enqueue_script( 'pvc-notices' ); // add styles wp_add_inline_script( 'pvc-notices', " ( function( $ ) { // ready event $( function() { // save dismiss state $( '.pvc-notice.is-dismissible' ).on( 'click', '.notice-dismiss, .pvc-dismissible-notice', function( e ) { if ( e.currentTarget.target !== '_blank' ) e.preventDefault(); var notice_action = 'hide'; if ( e.currentTarget.classList.contains( 'pvc-delay-notice' ) ) notice_action = 'delay'; $.post( ajaxurl, { action: 'pvc_dismiss_notice', notice_action: notice_action, url: '" . esc_url_raw( admin_url( 'admin-ajax.php' ) ) . "', nonce: '" . esc_attr( wp_create_nonce( 'pvc_dismiss_notice' ) ) . "' } ); $( e.delegateTarget ).slideUp( 'fast' ); } ); } ); } )( jQuery ); ", 'after' ); } /** * Dismiss notice. * * @return void */ public function dismiss_notice() { if ( ! current_user_can( 'install_plugins' ) ) return; if ( isset( $_REQUEST['nonce'] ) && wp_verify_nonce( $_REQUEST['nonce'], 'pvc_dismiss_notice' ) ) { $notice_action = empty( $_REQUEST['notice_action'] ) || $_REQUEST['notice_action'] === 'hide' ? 'hide' : sanitize_text_field( $_REQUEST['notice_action'] ); switch ( $notice_action ) { // delay notice case 'delay': // set delay period to 1 week from now $this->options['general'] = array_merge( $this->options['general'], [ 'update_delay_date' => time() + 2 * WEEK_IN_SECONDS ] ); update_option( 'post_views_counter_settings_general', $this->options['general'] ); break; // hide notice default: $this->options['general'] = array_merge( $this->options['general'], [ 'update_notice' => false ] ); $this->options['general'] = array_merge( $this->options['general'], [ 'update_delay_date' => 0 ] ); update_option( 'post_views_counter_settings_general', $this->options['general'] ); } } exit; } /** * Plugin activation. * * @global object $wpdb * * @param bool $network * @return void */ public function activation( $network ) { // network activation? if ( is_multisite() && $network ) { global $wpdb; // get all available sites $blogs_ids = $wpdb->get_col( 'SELECT blog_id FROM ' . $wpdb->blogs ); foreach ( $blogs_ids as $blog_id ) { // change to another site switch_to_blog( (int) $blog_id ); // run current site activation process $this->activate_site(); restore_current_blog(); } } else $this->activate_site(); } /** * Single site activation. * * @global object $wpdb * @global string $charset_collate * * @return void */ public function activate_site() { global $wpdb, $charset_collate; // required for dbdelta require_once( ABSPATH . 'wp-admin/includes/upgrade.php' ); // create post views table dbDelta( ' CREATE TABLE IF NOT EXISTS ' . $wpdb->prefix . 'post_views ( `id` bigint unsigned NOT NULL, `type` tinyint(1) unsigned NOT NULL, `period` varchar(8) NOT NULL, `count` bigint unsigned NOT NULL, PRIMARY KEY (type, period, id), UNIQUE INDEX id_type_period_count (id, type, period, count) USING BTREE, INDEX type_period_count (type, period, count) USING BTREE ) ' . $charset_collate . ';' ); // add default options add_option( 'post_views_counter_settings_general', $this->defaults['general'], null, false ); add_option( 'post_views_counter_settings_display', $this->defaults['display'], null, false ); add_option( 'post_views_counter_settings_other', $this->defaults['other'], null, false ); add_option( 'post_views_counter_version', $this->defaults['version'], null, false ); } /** * Plugin deactivation. * * @global object $wpdb * * @param bool $network * @return void */ public function deactivation( $network ) { // network deactivation? if ( is_multisite() && $network ) { global $wpdb; // get all available sites $blogs_ids = $wpdb->get_col( 'SELECT blog_id FROM ' . $wpdb->blogs ); foreach ( $blogs_ids as $blog_id ) { // change to another site switch_to_blog( (int) $blog_id ); // run current site deactivation process $this->deactivate_site( true ); restore_current_blog(); } } else $this->deactivate_site(); } /** * Single site deactivation. * * @global object $wpdb * * @param bool $multi * @return void */ public function deactivate_site( $multi = false ) { if ( $multi === true ) { $options = get_option( 'post_views_counter_settings_other' ); $check = $options['deactivation_delete']; } else $check = $this->options['other']['deactivation_delete']; // delete options if needed if ( $check ) { // delete options delete_option( 'post_views_counter_settings_general' ); delete_option( 'post_views_counter_settings_display' ); delete_option( 'post_views_counter_settings_other' ); delete_option( 'post_views_counter_activation_date' ); delete_option( 'post_views_counter_version' ); // delete transients delete_transient( 'post_views_counter_ip_cache' ); global $wpdb; // delete table from database $wpdb->query( 'DROP TABLE IF EXISTS ' . $wpdb->prefix . 'post_views' ); } // remove schedule wp_clear_scheduled_hook( 'pvc_reset_counts' ); remove_action( 'pvc_reset_counts', [ $this->cron, 'reset_counts' ] ); } /** * Initialize new network site. * * @param object $site * @return void */ public function initialize_new_network_site( $site ) { if ( is_multisite() ) { // change to another site switch_to_blog( $site->blog_id ); // run current site activation process $this->activate_site(); restore_current_blog(); } } /** * Load text domain. * * @return void */ public function load_textdomain() { load_plugin_textdomain( 'post-views-counter', false, POST_VIEWS_COUNTER_REL_PATH . '/languages/' ); } /** * Load pluggable template functions. * * @return void */ public function load_pluggable_functions() { include_once( POST_VIEWS_COUNTER_PATH . 'includes/functions.php' ); } /** * Enqueue admin scripts and styles. * * @global string $post_type * * @param string $page * @return void */ public function admin_enqueue_scripts( $page ) { // register styles wp_register_style( 'pvc-admin', POST_VIEWS_COUNTER_URL . '/css/admin.min.css', [], $this->defaults['version'] ); // register scripts wp_register_script( 'pvc-admin-settings', POST_VIEWS_COUNTER_URL . '/js/admin-settings.js', [ 'jquery' ], $this->defaults['version'] ); wp_register_script( 'pvc-admin-post', POST_VIEWS_COUNTER_URL . '/js/admin-post.js', [ 'jquery' ], $this->defaults['version'] ); wp_register_script( 'pvc-admin-quick-edit', POST_VIEWS_COUNTER_URL . '/js/admin-quick-edit.js', [ 'jquery', 'inline-edit-post' ], $this->defaults['version'] ); // load on pvc settings page if ( in_array( $page, [ 'toplevel_page_post-views-counter', 'settings_page_post-views-counter' ], true ) ) { wp_enqueue_script( 'pvc-admin-settings' ); // prepare script data $script_data = [ 'resetToDefaults' => esc_html__( 'Are you sure you want to reset these settings to defaults?', 'post-views-counter' ), 'resetViews' => esc_html__( 'Are you sure you want to delete all existing data?', 'post-views-counter' ) ]; wp_add_inline_script( 'pvc-admin-settings', 'var pvcArgsSettings = ' . wp_json_encode( $script_data ) . ";\n", 'before' ); wp_enqueue_style( 'pvc-admin' ); // load on single post page } elseif ( $page === 'post.php' || $page === 'post-new.php' ) { $post_types = Post_Views_Counter()->options['general']['post_types_count']; global $post_type; if ( ! in_array( $post_type, (array) $post_types ) ) return; wp_enqueue_style( 'pvc-admin' ); wp_enqueue_script( 'pvc-admin-post' ); // edit post } elseif ( $page === 'edit.php' ) { $post_types = Post_Views_Counter()->options['general']['post_types_count']; global $post_type; if ( ! in_array( $post_type, (array) $post_types ) ) return; wp_enqueue_style( 'pvc-admin' ); // woocommerce if ( get_post_type() !== 'product' ) wp_enqueue_script( 'pvc-admin-quick-edit' ); // widgets } elseif ( $page === 'widgets.php' ) wp_enqueue_script( 'pvc-admin-widgets', POST_VIEWS_COUNTER_URL . '/js/admin-widgets.js', [ 'jquery' ], $this->defaults['version'] ); // media elseif ( $page === 'upload.php' ) wp_enqueue_style( 'pvc-admin' ); // register and enqueue styles wp_register_style( 'pvc-pro-style', false ); wp_enqueue_style( 'pvc-pro-style' ); // add styles wp_add_inline_style( 'pvc-pro-style', ' .post-views-counter-settings tr.pvc-pro th:after, .nav-tab-wrapper a.nav-tab.nav-tab-disabled.pvc-pro:after, .post-views-counter-settings tr.pvc-pro-extended label[for="post_views_counter_general_counter_mode_ajax"]:after { content: \'PRO\'; display: inline; background-color: #ffc107; color: white; padding: 2px 4px; text-align: center; border-radius: 4px; margin-left: 4px; font-weight: bold; font-size: 11px; }' ); } /** * Add link to Settings page. * * @param array $links * @return array */ public function plugin_settings_link( $links ) { if ( ! current_user_can( 'manage_options' ) ) return $links; // submenu? if ( $this->options['other']['menu_position'] === 'sub' ) $url = admin_url( 'options-general.php?page=post-views-counter' ); // topmenu? else $url = admin_url( 'admin.php?page=post-views-counter' ); array_unshift( $links, sprintf( '%s', esc_url_raw( $url ), esc_html__( 'Settings', 'post-views-counter' ) ) ); return $links; } } } /** * Initialize Post Views Counter. * * @return object */ function Post_Views_Counter() { static $instance; // first call to instance() initializes the plugin if ( $instance === null || ! ( $instance instanceof Post_Views_Counter ) ) $instance = Post_Views_Counter::instance(); return $instance; } Post_Views_Counter();
Warning: Constant WP_FILE_MANAGER_PATH already defined in /home/u284410540/domains/samartworld.in/public_html/wp-content/plugins/wp-file-manager/file_folder_manager.php on line 17
/*! elementor-pro - v3.20.0 - 11-03-2024 */ (()=>{var e,t,o={8200:e=>{"use strict";e.exports=elementorModules.editor.utils.Module.extend({elementType:null,__construct(e){this.elementType=e,this.addEditorListener()},updateOptions(e,t){const o=this.getEditorControlView(e);o&&(this.getEditorControlModel(e).set("options",t),o.render())},addEditorListener(){var e=this;if(e.onElementChange){var t="change";"global"!==e.elementType&&(t+=":"+e.elementType),elementor.channels.editor.on(t,(function(t,o){e.onElementChange(t.model.get("name"),t,o)}))}},addControlSpinner(e){const t=this.getEditorControlView(e).$el;if(t.find(".elementor-control-spinner").length)return;t.find(":input").attr("disabled",!0),t.find(".elementor-control-title").after(' ')},removeControlSpinner(e){const t=this.getEditorControlView(e).$el;t.find(":input").attr("disabled",!1),t.find(".elementor-control-spinner").remove()},addControlError(e,t,o=".elementor-control-content"){const r=this.getEditorControlView(e).$el;r.find(".e-control-error").length&&r.find(".e-control-error").remove(),r.find(o).first().after(`${t}`)},removeControlError(e){this.getEditorControlView(e).$el.find(".e-control-error").remove()},resetControlIndicators(e){this.removeControlSpinner(e),this.removeControlError(e)},addSectionListener(e,t){const o=this;elementor.channels.editor.on("section:activated",(function(r,n){var i=n.getOption("editedElementView").getEditModel(),a=i.get("elType"),s=arguments;"widget"===a&&(a=i.get("widgetType")),o.elementType===a&&e===r&&setTimeout((function(){t.apply(o,s)}),10)}))}})},8865:e=>{"use strict";e.exports=elementorModules.editor.views.ControlsStack.extend({activeTab:"content",activeSection:"settings",initialize(){this.collection=new Backbone.Collection(_.values(this.options.controls))},filter(e){if("section"===e.get("type"))return!0;var t=e.get("section");return!t||t===this.activeSection},childViewOptions(){return{elementSettingsModel:this.model}}})},945:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.isTierAtLeast=t.TIERS_PRIORITY=void 0;const o=t.TIERS_PRIORITY=Object.freeze(["free","essential","essential-oct2023","advanced","expert","agency"]);t.isTierAtLeast=(e,t)=>{const r=o.indexOf(e),n=o.indexOf(t);return-1!==r&&-1!==n&&r>=n}},5030:(e,t,o)=>{"use strict";var r=o(8003).__;Object.defineProperty(t,"__esModule",{value:!0}),t.SAVE_CONTEXT=t.EDIT_CONTEXT=void 0,t.createElement=createElement,t.default=function addDocumentHandle({element:e,id:t,title:o=r("Template","elementor-pro")},l=a,d=null,u=null){if(a===l){if(!t||!e)throw Error("`id` and `element` are required.");if(function isCurrentlyEditing(e){return e.classList.contains(i)}(e)||function hasHandle(e){return!!e.querySelector(`:scope > .${n}`)}(e))return}const c=function createHandleElement({title:e,onClick:t},o,i=null){const l=["header","footer"].includes(i?.dataset.elementorType)?"%s":r("Edit %s","elementor-pro"),d=createElement({tag:"div",classNames:[`${n}__inner`],children:[createElement({tag:"i",classNames:[getHandleIcon(o)]}),createElement({tag:"div",classNames:[`${a===o?n:s}__title`],children:[document.createTextNode(a===o?l.replace("%s",e):r("Save %s","elementor-pro").replace("%s",e))]})]}),u=[n];a!==o&&u.push(s);const c=createElement({tag:"div",classNames:u,children:[d]});return c.addEventListener("click",t),c}({title:o,onClick:()=>async function onDocumentClick(e,t,o=null,r=null){a===t?(window.top.$e.internal("panel/state-loading"),await window.top.$e.run("editor/documents/switch",{id:parseInt(e),onClose:o,selector:r}),window.top.$e.internal("panel/state-ready")):(elementorCommon.api.internal("panel/state-loading"),elementorCommon.api.run("editor/documents/switch",{id:elementor.config.initial_document.id,mode:"save",shouldScroll:!1,selector:r}).finally((()=>elementorCommon.api.internal("panel/state-ready"))))}(t,l,d,u)},l,e);e.prepend(c),a===l&&(e.dataset.editableElementorDocument=t)},o(3517);const n="elementor-document-handle",i="elementor-edit-mode",a=t.EDIT_CONTEXT="edit",s="elementor-document-save-back-handle",l=t.SAVE_CONTEXT="save";function getHandleIcon(e){let t="eicon-edit";return l===e&&(t=elementorFrontend.config.is_rtl?"eicon-arrow-right":"eicon-arrow-left"),t}function createElement({tag:e,classNames:t=[],children:o=[]}){const r=document.createElement(e);return r.classList.add(...t),o.forEach((e=>r.appendChild(e))),r}},1471:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.ConditionsConfig=void 0;class ConditionsConfig extends $e.modules.CommandData{static signature="site-editor/conditions-config";static getEndpointFormat(){return"site-editor/conditions-config/{id}"}}t.ConditionsConfig=ConditionsConfig;t.default=ConditionsConfig},6338:(e,t,o)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"ConditionsConfig",{enumerable:!0,get:function(){return n.ConditionsConfig}}),Object.defineProperty(t,"Templates",{enumerable:!0,get:function(){return r.Templates}}),Object.defineProperty(t,"TemplatesConditions",{enumerable:!0,get:function(){return i.TemplatesConditions}}),Object.defineProperty(t,"TemplatesConditionsConflicts",{enumerable:!0,get:function(){return a.TemplatesConditionsConflicts}});var r=o(4837),n=o(1471),i=o(801),a=o(7691)},7691:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.TemplatesConditionsConflicts=void 0;class TemplatesConditionsConflicts extends $e.modules.CommandData{static signature="site-editor/templates-conditions-conflicts";static getEndpointFormat(){return`${TemplatesConditionsConflicts.signature}/{id}`}}t.TemplatesConditionsConflicts=TemplatesConditionsConflicts;t.default=TemplatesConditionsConflicts},801:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.TemplatesConditions=void 0;class TemplatesConditions extends $e.modules.CommandData{static signature="site-editor/templates-conditions";static getEndpointFormat(){return"site-editor/templates-conditions/{id}"}}t.TemplatesConditions=TemplatesConditions;t.default=TemplatesConditions},4837:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.Templates=void 0;class Templates extends $e.modules.CommandData{static signature="site-editor/templates";static getEndpointFormat(){return"site-editor/templates/{id}"}}t.Templates=Templates;t.default=Templates},1717:(e,t,o)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=function _interopRequireWildcard(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var o=_getRequireWildcardCache(t);if(o&&o.has(e))return o.get(e);var r={__proto__:null},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var a=n?Object.getOwnPropertyDescriptor(e,i):null;a&&(a.get||a.set)?Object.defineProperty(r,i,a):r[i]=e[i]}return r.default=e,o&&o.set(e,r),r}(o(6338));function _getRequireWildcardCache(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,o=new WeakMap;return(_getRequireWildcardCache=function(e){return e?o:t})(e)}class Component extends $e.modules.ComponentBase{static namespace="site-editor";getNamespace(){return this.constructor.namespace}defaultData(){return this.importCommands(r)}}t.default=Component},3118:(e,t,o)=>{"use strict";var r=o(3203);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=r(o(1717)),i=o(6338);class Module extends elementorModules.editor.utils.Module{onElementorInit(){elementor.documents.getCurrent().config.support_site_editor&&($e.components.register(new n.default),$e.data.deleteCache($e.components.get(n.default.namespace),i.Templates.signature))}}t.default=Module},716:(e,t,o)=>{"use strict";e.exports=elementorModules.editor.utils.Module.extend({onElementorInit(){var e=o(2211);this.assets={font:new e}}})},2211:(e,t,o)=>{"use strict";o(3517),e.exports=elementorModules.Module.extend({_enqueuedFonts:[],_enqueuedTypekit:!1,onFontChange(e,t){"custom"!==e&&"typekit"!==e||-1===this._enqueuedFonts.indexOf(t)&&("typekit"===e&&this._enqueuedTypekit||this.getCustomFont(e,t))},getCustomFont(e,t){elementorPro.ajax.addRequest("assets_manager_panel_action_data",{unique_id:"font_"+e+t,data:{service:"font",type:e,font:t},success(e){e.font_face&&elementor.$previewContents.find("style").last().after('"),e.font_url&&elementor.$previewContents.find("link").last().after('')}}),this._enqueuedFonts.push(t),"typekit"===e&&(this._enqueuedTypekit=!0)},onInit(){elementor.channels.editor.on("font:insertion",this.onFontChange.bind(this))}})},9206:(e,t,o)=>{"use strict";var r=o(8003).__;Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementorModules.editor.utils.Module{addCustomCss(e,t){if(!t)return;const o=t.model,r=o.get("settings").get("custom_css");let n=".elementor-element.elementor-element-"+o.get("id");return"document"===o.get("elType")&&(n=elementor.config.document.settings.cssWrapperSelector),r&&(e+=r.replace(/selector/g,n)),e}onElementorInit(){elementor.hooks.addFilter("editor/style/styleText",this.addCustomCss),elementor.on("navigator:init",this.onNavigatorInit.bind(this))}onNavigatorInit(){elementor.navigator.indicators.customCSS={icon:"code-bold",settingKeys:["custom_css"],title:r("Custom CSS","elementor-pro"),section:"section_custom_css"}}}t.default=_default},5795:e=>{"use strict";e.exports=elementorModules.editor.utils.Module.extend({onElementorInit(){elementor.channels.editor.on("section:activated",this.onSectionActivated)},onSectionActivated(e,t){var o=t.getOption("editedElementView");if("flip-box"===o.model.get("widgetType")){var r=-1!==["section_side_b_content","section_style_b"].indexOf(e);o.$el.toggleClass("elementor-flip-box--flipped",r);var n=o.$el.find(".elementor-flip-box__back");r&&n.css("transition","none"),r||setTimeout((function(){n.css("transition","")}),10)}}})},8804:(e,t,o)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var r=function _interopRequireWildcard(e,t){if(!t&&e&&e.__esModule)return e;if(null===e||"object"!=typeof e&&"function"!=typeof e)return{default:e};var o=_getRequireWildcardCache(t);if(o&&o.has(e))return o.get(e);var r={__proto__:null},n=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in e)if("default"!==i&&Object.prototype.hasOwnProperty.call(e,i)){var a=n?Object.getOwnPropertyDescriptor(e,i):null;a&&(a.get||a.set)?Object.defineProperty(r,i,a):r[i]=e[i]}return r.default=e,o&&o.set(e,r),r}(o(8019));function _getRequireWildcardCache(e){if("function"!=typeof WeakMap)return null;var t=new WeakMap,o=new WeakMap;return(_getRequireWildcardCache=function(e){return e?o:t})(e)}class Component extends $e.modules.ComponentBase{getNamespace(){return"forms"}defaultHooks(){return this.importHooks(r)}}t.default=Component},6002:(e,t,o)=>{"use strict";var r=o(8003).__;e.exports=elementor.modules.controls.Repeater.extend({onBeforeRender(){this.$el.hide()},updateMap(e){var t=this,o={};t.collection.each((function(e){o[e.get("remote_id")]=e.get("local_id")})),t.collection.reset(),_.each(e,(function(e){var r={remote_id:e.remote_id,remote_label:e.remote_label,remote_type:e.remote_type?e.remote_type:"",remote_required:!!e.remote_required&&e.remote_required,local_id:o[e.remote_id]?o[e.remote_id]:""};t.collection.add(r)})),t.render()},onRender(){elementor.modules.controls.Base.prototype.onRender.apply(this,arguments);var e=this;e.children.each((function(t){var o=t.children.last(),n={"":"- "+r("None","elementor")+" -"},i=t.model.get("remote_label");t.model.get("remote_required")&&(i+='*'),_.each(e.elementSettingsModel.get("form_fields").models,(function(e,o){var r=t.model.get("remote_type");"text"!==r&&r!==e.get("field_type")||(n[e.get("custom_id")]=e.get("field_label")||"Field #"+(o+1))})),o.model.set("label",i),o.model.set("options",n),o.render(),t.$el.find(".elementor-repeater-row-tools").hide(),t.$el.find(".elementor-repeater-row-controls").removeClass("elementor-repeater-row-controls").find(".elementor-control").css({paddingBottom:0})})),e.$el.find(".elementor-button-wrapper").remove(),e.children.length&&e.$el.show()}})},4566:(e,t,o)=>{"use strict";var r=o(3203)(o(7810));e.exports=class extends elementor.modules.controls.Repeater{className(){let e=super.className();return e+=" elementor-control-type-repeater",e}getChildView(){return r.default}initialize(...e){super.initialize(...e);const t=this.container.settings.get("form_fields");this.listenTo(t,"change",(e=>this.onFormFieldChange(e))).listenTo(t,"remove",(e=>this.onFormFieldRemove(e)))}getFirstChild(){return this.children.findByModel(this.collection.models[0])}lockFirstStep(){const e=this.getFirstChild();if("step"!==e.model.get("field_type"))return;11)return;const o=this.getFirstChild();if(1===t.length)return o.toggleTools(!0),void o.toggleFieldTypeControl(!0);o.toggleSort(!0)}onAddChild(e){super.onAddChild(e),"step"===e.model.get("field_type")&&(this.lockFirstStep(),e.toggleStepField(!0))}}},7810:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;class _default extends elementor.modules.controls.RepeaterRow{toggleFieldTypeControl(e){const t=this.collection.findWhere({name:"field_type"});this.children.findByModel(t).$el.toggle(e)}toggleStepField(e){this.$el.toggleClass("elementor-repeater-row--form-step",e)}toggleTools(e){this.ui.removeButton.add(this.ui.duplicateButton).toggle(e)}}t.default=_default},5781:e=>{"use strict";e.exports=elementorModules.editor.utils.Module.extend({renderField(e,t,o,r){var n=_.escape(t.css_classes),i="",a="",s="";return t.required&&(i="required"),t.acceptance_text&&(a='"),t.checked_by_default&&(s=' checked="checked"'),'
"+a+"
"},onInit(){elementor.hooks.addFilter("elementor_pro/forms/content_template/field/acceptance",this.renderField,10,4)}})},3463:e=>{"use strict";e.exports=elementorModules.editor.utils.Module.extend({renderField(e,t,o,r){var n=_.escape(t.css_classes),i="",a="",s="",l="";return t.required&&(i="required"),t.min_date&&(a=' min="'+t.min_date+'"'),t.max_date&&(s=' max="'+t.max_date+'"'),t.placeholder&&(l=' placeholder="'+t.placeholder+'"'),"yes"===t.use_native_date&&(n+=" elementor-use-native"),'"},onInit(){elementor.hooks.addFilter("elementor_pro/forms/content_template/field/date",this.renderField,10,4)}})},6326:e=>{"use strict";e.exports=elementorModules.editor.utils.Module.extend({renderField(e,t,o,r){var n=_.escape(t.css_classes),i="",a="";return t.required&&(i="required"),t.placeholder&&(a=' placeholder="'+t.placeholder+'"'),n="elementor-field-textual "+n,''},onInit(){elementor.hooks.addFilter("elementor_pro/forms/content_template/field/tel",this.renderField,10,4)}})},9395:e=>{"use strict";e.exports=elementorModules.editor.utils.Module.extend({renderField(e,t,o,r){var n=_.escape(t.css_classes),i="",a="";return t.required&&(i="required"),t.placeholder&&(a=' placeholder="'+t.placeholder+'"'),"yes"===t.use_native_time&&(n+=" elementor-use-native"),'"},onInit(){elementor.hooks.addFilter("elementor_pro/forms/content_template/field/time",this.renderField,10,4)}})},4146:e=>{"use strict";e.exports=elementorModules.editor.utils.Module.extend({renderField(e,t,o,r){var n=_.escape(t.css_classes),i="",a="",s="form_field_";return t.required&&(i="required"),t.allow_multiple_upload&&(a=' multiple="multiple"',s+="[]"),'"},onInit(){elementor.hooks.addFilter("elementor_pro/forms/content_template/field/upload",this.renderField,10,4)}})},3186:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.FormFieldsSanitizeCustomId=void 0;class FormFieldsSanitizeCustomId extends $e.modules.hookData.Dependency{ID_SANITIZE_FILTER=/[^\w]/g;getCommand(){return"document/elements/settings"}getId(){return"elementor-pro-forms-fields-sanitize-custom-id"}getContainerType(){return"repeater"}getConditions(e){return void 0!==e.settings.custom_id}apply(e){const{containers:t=[e.container],settings:o}=e,{custom_id:r}=o;return!r.match(this.ID_SANITIZE_FILTER)||(t.forEach((e=>{const t=e.panel.getControlView("form_fields").children.findByModel(e.settings).children.find((e=>"custom_id"===e.model.get("name")));t.render(),t.$el.find("input").trigger("focus")})),!1)}}t.FormFieldsSanitizeCustomId=FormFieldsSanitizeCustomId;t.default=FormFieldsSanitizeCustomId},5389:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.FormFieldsSetCustomId=void 0;class FormFieldsSetCustomId extends $e.modules.hookData.After{getCommand(){return"document/repeater/insert"}getId(){return"elementor-pro-forms-fields-set-custom-id"}getContainerType(){return"widget"}getConditions(e){return"form_fields"===e.name}apply(e,t){const{containers:o=[e.container]}=e,r=$e.commands.isCurrentFirstTrace("document/repeater/duplicate");return o.forEach((e=>{const o=e.repeaters.form_fields.children.find((e=>!!e&&t.get("_id")===e.id));!r&&o.settings.get("custom_id")||$e.run("document/elements/settings",{container:o,settings:{custom_id:"field_"+o.id},options:{external:!0}})})),!0}}t.FormFieldsSetCustomId=FormFieldsSetCustomId;t.default=FormFieldsSetCustomId},9469:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.FormFieldsAddFirstStep=void 0;class FormFieldsAddFirstStep extends $e.modules.hookData.After{getCommand(){return"document/elements/settings"}getId(){return"elementor-pro-forms-fields-first-step"}getContainerType(){return"repeater"}getConditions(e){const{containers:t=[e.container]}=e;return"form"===t[0].parent.parent.model.get("widgetType")&&"step"===e.settings.field_type}apply(e){const{containers:t=[e.container]}=e;return t.forEach((e=>{"step"!==e.parent.children[0].settings.get("field_type")&&$e.run("document/repeater/insert",{container:e.parent.parent,name:"form_fields",model:{field_type:"step"},options:{at:0,external:!0}})})),!0}}t.FormFieldsAddFirstStep=FormFieldsAddFirstStep;t.default=FormFieldsAddFirstStep},2650:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.FormSanitizeId=void 0;class FormSanitizeId extends $e.modules.hookData.Dependency{ID_SANITIZE_FILTER=/[^\w]/g;getCommand(){return"document/elements/settings"}getId(){return"elementor-pro-forms-sanitize-id"}getContainerType(){return"widget"}getConditions(e){return void 0!==e.settings.form_id}apply(e){const{container:t,settings:o}=e,{form_id:r}=o;if(r.match(this.ID_SANITIZE_FILTER)){const e=t.panel.getControlView("form_id");return e.render(),e.$el.find("input").trigger("focus"),!1}return!0}}t.FormSanitizeId=FormSanitizeId;t.default=FormSanitizeId},3267:(e,t,o)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"FormFieldsAddFirstStep",{enumerable:!0,get:function(){return i.FormFieldsAddFirstStep}}),Object.defineProperty(t,"FormFieldsSanitizeCustomId",{enumerable:!0,get:function(){return r.FormFieldsSanitizeCustomId}}),Object.defineProperty(t,"FormFieldsSetCustomId",{enumerable:!0,get:function(){return n.FormFieldsSetCustomId}}),Object.defineProperty(t,"FormSanitizeId",{enumerable:!0,get:function(){return a.FormSanitizeId}});var r=o(3186),n=o(5389),i=o(9469),a=o(2650)},8019:(e,t,o)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0});var r=o(3267);Object.keys(r).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===r[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return r[e]}}))}));var n=o(200);Object.keys(n).forEach((function(e){"default"!==e&&"__esModule"!==e&&(e in t&&t[e]===n[e]||Object.defineProperty(t,e,{enumerable:!0,get:function(){return n[e]}}))}))},7234:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default=t.FormFieldsUpdateShortCode=void 0;class FormFieldsUpdateShortCode extends $e.modules.hookUI.After{getCommand(){return"document/elements/settings"}getId(){return"elementor-pro-forms-fields-update-shortcode"}getContainerType(){return"repeater"}getConditions(e){return!(!$e.routes.isPartOf("panel/editor")||void 0===e.settings.custom_id)}apply(e){const{containers:t=[e.container]}=e;t.forEach((e=>{e.panel.getControlView("form_fields").children.find((t=>e.id===t.model.get("_id"))).children.find((e=>"shortcode"===e.model.get("name"))).render()}))}}t.FormFieldsUpdateShortCode=FormFieldsUpdateShortCode;t.default=FormFieldsUpdateShortCode},200:(e,t,o)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),Object.defineProperty(t,"FormFieldsUpdateShortCode",{enumerable:!0,get:function(){return r.FormFieldsUpdateShortCode}});var r=o(7234)},4552:(e,t,o)=>{"use strict";var r=o(8003).__;o(3517);var n=o(2220);e.exports=n.extend({fields:{},getName:()=>"activecampaign",onElementChange(e){switch(e){case"activecampaign_api_credentials_source":case"activecampaign_api_key":case"activecampaign_api_url":this.onApiUpdate();break;case"activecampaign_list":this.onListUpdate()}},onApiUpdate(){const e=this,t=e.getEditorControlView("activecampaign_api_key"),o=e.getEditorControlView("activecampaign_api_url"),r=e.getEditorControlView("activecampaign_api_credentials_source");if("default"!==r.getControlValue()&&(""===t.getControlValue()||""===o.getControlValue()))return e.updateOptions("activecampaign_list",[]),void e.getEditorControlView("activecampaign_list").setValue("");e.addControlSpinner("activecampaign_list");const n=this.getCacheKey({controls:[r.getControlValue(),o.getControlValue(),t.getControlValue()]});e.getActiveCampaignCache("lists","activecampaign_list",n).done((function(t){e.updateOptions("activecampaign_list",t.lists),e.fields=t.fields}))},onListUpdate(){this.updateFieldsMapping()},updateFieldsMapping(){if(this.getEditorControlView("activecampaign_list").getControlValue()){var e=[{remote_label:r("Email","elementor"),remote_type:"email",remote_id:"email",remote_required:!0},{remote_label:r("First Name","elementor"),remote_type:"text",remote_id:"first_name",remote_required:!1},{remote_label:r("Last Name","elementor"),remote_type:"text",remote_id:"last_name",remote_required:!1},{remote_label:r("Phone","elementor"),remote_type:"text",remote_id:"phone",remote_required:!1},{remote_label:r("Organization name","elementor"),remote_type:"text",remote_id:"orgname",remote_required:!1}];for(var t in this.fields)Object.prototype.hasOwnProperty.call(this.fields,t)&&e.push(this.fields[t]);this.getEditorControlView("activecampaign_fields_map").updateMap(e)}},getActiveCampaignCache(e,t,o,r){if(_.has(this.cache[e],o)){var n={};return n[e]=this.cache[e][o],jQuery.Deferred().resolve(n)}return r=_.extend({},r,{service:"activecampaign",activecampaign_action:t,api_key:this.getEditorControlView("activecampaign_api_key").getControlValue(),api_url:this.getEditorControlView("activecampaign_api_url").getControlValue(),api_cred:this.getEditorControlView("activecampaign_api_credentials_source").getControlValue()}),this.fetchCache(e,o,r)}})},2220:(e,t,o)=>{"use strict";var r=o(8200);e.exports=r.extend({__construct(){this.cache={},r.prototype.__construct.apply(this,arguments)},getName:()=>"",getCacheKey(e){return JSON.stringify({service:this.getName(),data:e})},fetchCache(e,t,o,r=!1){return elementorPro.ajax.addRequest("forms_panel_action_data",{unique_id:"integrations_"+this.getName(),data:o,success:o=>{this.cache[e]=_.extend({},this.cache[e]),this.cache[e][t]=o[e]}},r)},onInit(){this.addSectionListener("section_"+this.getName(),this.onSectionActive)},onSectionActive(){this.onApiUpdate()},onApiUpdate(){}})},3433:(e,t,o)=>{"use strict";var r=o(8003).__,n=o(2220);e.exports=n.extend({getName:()=>"convertkit",onElementChange(e){switch(e){case"convertkit_api_key_source":case"convertkit_custom_api_key":this.onApiUpdate();break;case"convertkit_form":this.onListUpdate()}},onApiUpdate(){var e=this,t=e.getEditorControlView("convertkit_api_key_source"),o=e.getEditorControlView("convertkit_custom_api_key");if("default"!==t.getControlValue()&&""===o.getControlValue())return e.updateOptions("convertkit_form",[]),void e.getEditorControlView("convertkit_form").setValue("");e.addControlSpinner("convertkit_form");const r=this.getCacheKey({type:"data",controls:[t.getControlValue(),o.getControlValue()]});e.getConvertKitCache("data","convertkit_get_forms",r).done((function(t){e.updateOptions("convertkit_form",t.data.forms),e.updateOptions("convertkit_tags",t.data.tags)}))},onListUpdate(){this.updateFieldsMapping()},updateFieldsMapping(){if(this.getEditorControlView("convertkit_form").getControlValue()){var e=[{remote_label:r("Email","elementor"),remote_type:"email",remote_id:"email",remote_required:!0},{remote_label:r("First Name","elementor"),remote_type:"text",remote_id:"first_name",remote_required:!1}];this.getEditorControlView("convertkit_fields_map").updateMap(e)}},getConvertKitCache(e,t,o,r){if(_.has(this.cache[e],o)){var n={};return n[e]=this.cache[e][o],jQuery.Deferred().resolve(n)}return r=_.extend({},r,{service:"convertkit",convertkit_action:t,api_key:this.getEditorControlView("convertkit_api_key_source").getControlValue(),custom_api_key:this.getEditorControlView("convertkit_custom_api_key").getControlValue()}),this.fetchCache(e,o,r)}})},4772:(e,t,o)=>{"use strict";var r=o(8003).__,n=o(2220);e.exports=n.extend({getName:()=>"drip",onElementChange(e){switch(e){case"drip_api_token_source":case"drip_custom_api_token":this.onApiUpdate();break;case"drip_account":this.onDripAccountsUpdate()}},onApiUpdate(){var e=this,t=e.getEditorControlView("drip_api_token_source"),o=e.getEditorControlView("drip_custom_api_token");if("default"!==t.getControlValue()&&""===o.getControlValue())return e.updateOptions("drip_account",[]),void e.getEditorControlView("drip_account").setValue("");e.addControlSpinner("drip_account"),this.getCacheKey({type:"accounts",controls:[t.getControlValue(),o.getControlValue()]}),e.getDripCache("accounts","accounts",t.getControlValue()).done((function(t){e.updateOptions("drip_account",t.accounts)}))},onDripAccountsUpdate(){this.updateFieldsMapping()},updateFieldsMapping(){if(this.getEditorControlView("drip_account").getControlValue()){var e={remote_label:r("Email","elementor"),remote_type:"email",remote_id:"email",remote_required:!0};this.getEditorControlView("drip_fields_map").updateMap([e])}},getDripCache(e,t,o,r){if(_.has(this.cache[e],o)){var n={};return n[e]=this.cache[e][o],jQuery.Deferred().resolve(n)}return r=_.extend({},r,{service:"drip",drip_action:t,api_token:this.getEditorControlView("drip_api_token_source").getControlValue(),custom_api_token:this.getEditorControlView("drip_custom_api_token").getControlValue()}),this.fetchCache(e,o,r)}})},9228:(e,t,o)=>{"use strict";var r=o(2220);e.exports=r.extend({getName:()=>"getresponse",onElementChange(e){switch(e){case"getresponse_custom_api_key":case"getresponse_api_key_source":this.onApiUpdate();break;case"getresponse_list":this.onGetResonseListUpdate()}},onApiUpdate(){var e=this,t=e.getEditorControlView("getresponse_api_key_source"),o=e.getEditorControlView("getresponse_custom_api_key");if("default"!==t.getControlValue()&&""===o.getControlValue())return e.updateOptions("getresponse_list",[]),void e.getEditorControlView("getresponse_list").setValue("");e.addControlSpinner("getresponse_list");const r=this.getCacheKey({type:"lists",controls:[t.getControlValue(),o.getControlValue()]});e.getCache("lists","lists",r).done((function(t){e.updateOptions("getresponse_list",t.lists)}))},onGetResonseListUpdate(){this.updatGetResonseList()},updatGetResonseList(){var e=this,t=e.getEditorControlView("getresponse_list");if(!t.getControlValue())return;e.addControlSpinner("getresponse_fields_map");const o=this.getCacheKey({type:"fields",controls:[t.getControlValue()]});e.getCache("fields","get_fields",o,{getresponse_list:t.getControlValue()}).done((function(t){e.getEditorControlView("getresponse_fields_map").updateMap(t.fields)}))},getCache(e,t,o,r){if(_.has(this.cache[e],o)){var n={};return n[e]=this.cache[e][o],jQuery.Deferred().resolve(n)}return r=_.extend({},r,{service:"getresponse",getresponse_action:t,api_key:this.getEditorControlView("getresponse_api_key_source").getControlValue(),custom_api_key:this.getEditorControlView("getresponse_custom_api_key").getControlValue()}),this.fetchCache(e,o,r)},onSectionActive(){r.prototype.onSectionActive.apply(this,arguments),this.updatGetResonseList()}})},8326:(e,t,o)=>{"use strict";var r=o(2220);e.exports=r.extend({getName:()=>"mailchimp",onElementChange(e){switch(e){case"mailchimp_api_key_source":case"mailchimp_api_key":this.onApiUpdate();break;case"mailchimp_list":this.onMailchimpListUpdate()}},onApiUpdate(){var e=this,t=e.getEditorControlView("mailchimp_api_key"),o=e.getEditorControlView("mailchimp_api_key_source");if("default"!==o.getControlValue()&&""===t.getControlValue())return e.updateOptions("mailchimp_list",[]),void e.getEditorControlView("mailchimp_list").setValue("");e.resetControlIndicators("mailchimp_list"),e.addControlSpinner("mailchimp_list");const r=this.getCacheKey({type:"lists",controls:[t.getControlValue(),o.getControlValue()]});e.getMailchimpCache("lists","lists",r).done((function(t){e.updateOptions("mailchimp_list",t.lists),e.updatMailchimpList()})).fail((function(t){e.addControlError("mailchimp_list",t)})).always((function(){e.removeControlSpinner("mailchimp_list")}))},onMailchimpListUpdate(){this.updateOptions("mailchimp_groups",[]),this.getEditorControlView("mailchimp_groups").setValue(""),this.updatMailchimpList()},updatMailchimpList(){var e=this,t=e.getEditorControlView("mailchimp_list");if(!t.getControlValue())return;e.resetControlIndicators("mailchimp_groups"),e.addControlSpinner("mailchimp_groups"),this.getCacheKey({type:"list_details",controls:[t.getControlValue()]}),e.getMailchimpCache("list_details","list_details",t.getControlValue(),{mailchimp_list:t.getControlValue()}).done((function(t){e.updateOptions("mailchimp_groups",t.list_details.groups),e.getEditorControlView("mailchimp_fields_map").updateMap(t.list_details.fields)})).fail((function(t){e.addControlError("mailchimp_groups",t)})).always((function(){e.removeControlSpinner("mailchimp_groups")}));const o={type:"fields",action:"fields",cacheKey:t.getControlValue(),args:{mailchimp_list:t.getControlValue()},immediately:!0};e.getMailchimpCache(...Object.values(o)).done((function(t){e.getEditorControlView("mailchimp_fields_map").updateMap(t.fields)}))},getMailchimpCache(e,t,o,r,n=!1){if(_.has(this.cache[e],o)){var i={};return i[e]=this.cache[e][o],jQuery.Deferred().resolve(i)}return r=_.extend({},r,{service:"mailchimp",mailchimp_action:t,api_key:this.getEditorControlView("mailchimp_api_key").getControlValue(),use_global_api_key:this.getEditorControlView("mailchimp_api_key_source").getControlValue()}),this.fetchCache(e,o,r,n)},onSectionActive(){r.prototype.onSectionActive.apply(this,arguments),this.onApiUpdate()}})},2502:(e,t,o)=>{"use strict";var r=o(8003).__;o(3517);const n=o(2220);e.exports=n.extend({fields:{},getName:()=>"mailerlite",onElementChange(e){switch(e){case"mailerlite_api_key_source":case"mailerlite_custom_api_key":this.onMailerliteApiKeyUpdate();break;case"mailerlite_group":this.updateFieldsMapping()}},onMailerliteApiKeyUpdate(){var e=this,t=e.getEditorControlView("mailerlite_custom_api_key"),o=e.getEditorControlView("mailerlite_api_key_source");if("default"!==o.getControlValue()&&""===t.getControlValue())return e.updateOptions("mailerlite_group",[]),void e.getEditorControlView("mailerlite_group").setValue("");e.addControlSpinner("mailerlite_group");const r=this.getCacheKey({type:"groups",controls:[t.getControlValue(),o.getControlValue()]});e.getMailerliteCache("groups","groups",r).done((function(t){e.updateOptions("mailerlite_group",t.groups),e.fields=t.fields}))},updateFieldsMapping(){if(!this.getEditorControlView("mailerlite_group").getControlValue())return;const e=[{remote_label:r("Email","elementor"),remote_type:"email",remote_id:"email",remote_required:!0},{remote_label:r("Name","elementor"),remote_type:"text",remote_id:"name",remote_required:!1},{remote_label:r("Last Name","elementor"),remote_type:"text",remote_id:"last_name",remote_required:!1},{remote_label:r("Company","elementor"),remote_type:"text",remote_id:"company",remote_required:!1},{remote_label:r("Phone","elementor"),remote_type:"text",remote_id:"phone",remote_required:!1},{remote_label:r("Country","elementor"),remote_type:"text",remote_id:"country",remote_required:!1},{remote_label:r("State","elementor"),remote_type:"text",remote_id:"state",remote_required:!1},{remote_label:r("City","elementor"),remote_type:"text",remote_id:"city",remote_required:!1},{remote_label:r("Zip","elementor"),remote_type:"text",remote_id:"zip",remote_required:!1}];for(const t in this.fields)Object.prototype.hasOwnProperty.call(this.fields,t)&&e.push(this.fields[t]);this.getEditorControlView("mailerlite_fields_map").updateMap(e)},getMailerliteCache(e,t,o,r){if(_.has(this.cache[e],o)){const t={};return t[e]=this.cache[e][o],jQuery.Deferred().resolve(t)}return r=_.extend({},r,{service:"mailerlite",mailerlite_action:t,custom_api_key:this.getEditorControlView("mailerlite_custom_api_key").getControlValue(),api_key:this.getEditorControlView("mailerlite_api_key_source").getControlValue()}),this.fetchCache(e,o,r)},onSectionActive(){n.prototype.onSectionActive.apply(this,arguments),this.onMailerliteApiKeyUpdate()}})},7635:(e,t,o)=>{"use strict";var r=o(3203);Object.defineProperty(t,"__esModule",{value:!0}),t.default=void 0;var n=r(o(8804));class FormsModule extends elementorModules.editor.utils.Module{onElementorInit(){const e=o(8005),t=o(1679),r=o(2502),n=o(8326),i=o(4772),a=o(4552),s=o(9228),l=o(3433);this.replyToField=new e,this.mailchimp=new n("form"),this.recaptcha=new t("form"),this.drip=new i("form"),this.activecampaign=new a("form"),this.getresponse=new s("form"),this.convertkit=new l("form"),this.mailerlite=new r("form");const d=o(9395),u=o(3463),c=o(5781),p=o(4146),m=o(6326);this.Fields={time:new d("form"),date:new u("form"),tel:new m("form"),acceptance:new c("form"),upload:new p("form")},elementor.addControlView("Fields_map",o(6002)),elementor.addControlView("form-fields-repeater",o(4566))}onElementorInitComponents(){$e.components.register(new n.default({manager:this}))}}t.default=FormsModule},1679:e=>{"use strict";e.exports=elementorModules.editor.utils.Module.extend({enqueueRecaptchaJs(e,t){elementorFrontend.elements.$body.find('[src="'+e+'"]').length||elementorFrontend.elements.$body.append('function homeid_comment_form_args() { $commenter = wp_get_current_commenter(); $req = get_option('require_name_email'); $html_req = ($req ? " required='required'" : ''); $fields = array( 'author' => '

' . '

', 'email' => '', 'url' => '

' . '

', ); $defaults = array( 'format' => 'html5', 'comment_field' => '

', 'fields' => $fields, 'class_submit' => 'btn', 'title_reply_before' => '

', 'title_reply_after' => '

', ); return $defaults; } add_filter('widget_categories_args', 'homeid_widget_categories_args'); function homeid_widget_categories_args($cat_args) { $cat_args['taxonomy'] = 'category'; return $cat_args; } function homeid_cat_count_span($links, $args) { if (isset($args['taxonomy']) && ($args['taxonomy'] == 'category')) { $links = str_replace('(', '', $links); $links = str_replace(')', '', $links); } return $links; } add_filter('wp_list_categories', 'homeid_cat_count_span',15,2); function homeid_archive_count_span($links, $url, $text, $format) { if ($format === 'option') { return $links; } $links = str_replace( ' (', ' ', $links ); $links = str_replace( ')', '', $links ); return $links; } add_filter('get_archives_link', 'homeid_archive_count_span', 10, 4); add_filter('g5core_theme_font_default', 'homeid_font_default'); function homeid_font_default() { return array( array( 'family' => 'Poppins', 'kind' => 'webfonts#webfont', 'variants' => array( "400italic", "400", "500italic", "500", "600italic", "600", "700italic", "700", "900italic", "900", ), ) ); } if (!class_exists('HOMEID_SETUP_DATA')) { class HOMEID_SETUP_DATA { private static $_instance; public static function getInstance() { if ( self::$_instance == null ) { self::$_instance = new self(); } return self::$_instance; } public function init() { add_filter('g5core_default_options_homeid_typography_options', array($this, 'change_default_options_g5core_typography_options')); add_filter('g5core_default_options_homeid_color_options', array($this, 'change_default_options_g5core_color_options')); add_filter( 'g5core_default_options_homeid_layout_options', array($this, 'change_default_options_g5core_layout_options') ); add_filter('g5core_default_options_homeid_header_options', array($this, 'change_default_options_g5core_header_options')); add_filter('g5core_header_options', array($this, 'change_g5core_header_options_config'), 20); add_filter('g5core_color_options_name',array($this,'change_g5core_color_options_name')); add_filter('g5core_header_options_name', array($this,'change_g5core_header_options_name')); add_filter('g5core_layout_options_name', array($this,'change_g5core_layout_options_name')); add_filter('g5core_typography_options_name', array($this,'change_g5core_typography_options_name')); add_filter('g5core_options_name', array($this,'change_g5core_options_name')); add_filter('gid_options_key_change_theme_options',array($this,'change_options_key_change_theme_options')); add_filter('g5dev_option_key_for_setting_file',array($this,'change_option_key_for_setting_file')); } public function change_option_key_for_setting_file($options_key) { return wp_parse_args(array( 'homeid_%' => 'like', ),$options_key); } public function change_g5core_options_name() { return 'homeid_options'; } public function change_g5core_color_options_name() { return 'homeid_color_options'; } public function change_g5core_header_options_name() { return 'homeid_header_options'; } public function change_g5core_layout_options_name() { return 'homeid_layout_options'; } public function change_g5core_typography_options_name() { return 'homeid_typography_options'; } public function change_options_key_change_theme_options($option_keys) { $option_keys['homeid_%'] = 'like'; return $option_keys; } public function change_default_options_g5core_typography_options($defaults) { return wp_parse_args(array( 'body_font' => array( 'font_family' => 'Poppins', 'font_size' => '14px', 'font_weight' => '400', 'transform' => 'none', 'line_height' => 1.86 ), 'primary_font' => array( 'font_family' => 'Poppins' ), 'h1_font' => array ( 'font_family' => 'Poppins', 'font_size' => '48px', 'font_weight' => '500', 'transform' => 'none', 'letter_spacing' => '0', 'line_height' => 1.2 ), 'h2_font' => array ( 'font_family' => 'Poppins', 'font_size' => '44px', 'font_weight' => '500', 'transform' => 'none', 'letter_spacing' => '0', 'line_height' => 1.2 ), 'h3_font' => array ( 'font_family' => 'Poppins', 'font_size' => '36px', 'font_weight' => '500', 'transform' => 'none', 'letter_spacing' => '0', 'line_height' => 1.2 ), 'h4_font' => array ( 'font_family' => 'Poppins', 'font_size' => '24px', 'font_weight' => '500', 'transform' => 'none', 'letter_spacing' => '0', 'line_height' => 1.2 ), 'h5_font' => array ( 'font_family' => 'Poppins', 'font_size' => '16px', 'font_weight' => '500', 'transform' => 'none', 'letter_spacing' => '0', 'line_height' => 1.2 ), 'h6_font' => array ( 'font_family' => 'Poppins', 'font_size' => '14px', 'font_weight' => '500', 'transform' => 'none', 'letter_spacing' => '0', 'line_height' => 1.2 ), 'display_1' => array( 'font_family' => 'Poppins', 'font_size' => '14px', ), 'display_2' => array( 'font_family' => 'Poppins', 'font_size' => '14px', ), 'display_3' => array( 'font_family' => 'Poppins', 'font_size' => '14px', ), 'display_4' => array( 'font_family' => 'Poppins', 'font_size' => '14px', ), ), $defaults); } public function change_default_options_g5core_color_options($defaults) { return wp_parse_args(array( 'site_text_color' => '#696969', 'accent_color' => '#0ec6d5', 'link_color' => '#0ec6d5', 'border_color' => '#eee', 'heading_color' => '#333', 'caption_color' => '#9b9b9b', 'placeholder_color' => '#ababab', 'primary_color' => '#1e1d85', 'secondary_color' => '#eff6f7', 'dark_color' => '#333', 'light_color' => '#fafafa', 'gray_color' => '#8f8f8f', ), $defaults); } public function change_default_options_g5core_layout_options($defaults) { return wp_parse_args(array( 'content_padding' => array ( 'left' => '', 'right' => '', 'top' => 80, 'bottom' => 80, ), ),$defaults); } public function change_default_options_g5core_header_options($defaults) { $defaults = wp_parse_args( array( 'logo_font' => array( 'font_family' => 'Poppins', 'font_size' => '24px', 'font_weight' => '500', 'font_style' => '', 'align' => '', 'transform' => 'uppercase', 'line_height' => '', 'letter_spacing' => '0', ), 'top_bar_font' => array( 'font_family' => 'Poppins', 'font_size' => '12px', 'font_weight' => '500', 'font_style' => '', 'transform' => '', 'line_height' => '', 'letter_spacing' => '', ), 'menu_font' => array( 'font_family' => 'Poppins', 'font_size' => '14px', 'font_weight' => '500', 'font_style' => '', 'transform' => 'none', 'line_height' => '', 'letter_spacing' => '', ), 'sub_menu_font' => array( 'font_family' => 'Poppins', 'font_size' => '14px', 'font_weight' => '400', 'font_style' => '', 'transform' => 'none', 'line_height' => '', 'letter_spacing' => '', ), 'header_background_color' => '#fff', 'header_text_color' => '#333', 'header_text_hover_color' => '#0ec6d5', 'header_border_color' => '#eee', 'header_disable_color' => '#ababab', 'header_sticky_background_color' => '#fff', 'header_sticky_text_color' => '#333', 'header_sticky_text_hover_color' => '#0ec6d5', 'header_sticky_border_color' => '#eee', 'header_sticky_disable_color' => '#ababab', 'navigation_background_color' => '#fff', 'navigation_text_color' => '#333', 'navigation_text_hover_color' => '#333', 'navigation_border_color' => '#eee', 'navigation_disable_color' => '#ababab', 'submenu_background_color' => '#fff', 'submenu_heading_color' => '#333', 'submenu_text_color' => '#696969', 'submenu_item_bg_hover_color' => '#fff', 'submenu_text_hover_color' => '#0ec6d5', 'submenu_border_color' => '#fff', 'header_mobile_background_color' => '#fff', 'header_mobile_text_color' => '#333', 'header_mobile_text_hover_color' => '#0ec6d5', 'header_mobile_border_color' => '#eee', 'header_mobile_sticky_background_color' => '#fff', 'header_mobile_sticky_text_color' => '#333', 'header_mobile_sticky_text_hover_color' => '#0ec6d5', 'header_mobile_sticky_border_color' => '#eee', 'header_style' => 'layout-02', ), $defaults ); return $defaults; } public function change_g5core_header_options_config($options_config) { $options_config['section_color']['fields']['top_bar_group']['fields']['top_bar_scheme']['preset'] = array( array( 'op' => '=', 'value' => 'light', 'fields' => array( array( 'top_bar_background_color', '#f6f6f6' ), array( 'top_bar_text_color', '#1b1b1b' ), array( 'top_bar_text_hover_color', '#999' ), array( 'top_bar_border_color', '#ececec' ), ) ), array( 'op' => '=', 'value' => 'dark', 'fields' => array( array( 'top_bar_background_color', '#222' ), array( 'top_bar_text_color', '#fff' ), array( 'top_bar_text_hover_color', '#b20f0f' ), array( 'top_bar_border_color', '#353535' ), ) ), ); $options_config['section_color']['fields']['header_desktop_color_group']['fields']['header_scheme']['preset'] = array( array( 'op' => '=', 'value' => 'light', 'fields' => array( array( 'header_background_color', '#fff' ), array( 'header_text_color', '#333' ), array( 'header_text_hover_color', '#0ec6d5' ), array( 'header_border_color', '#eee' ), array( 'header_disable_color', '#ababab' ), ) ), array( 'op' => '=', 'value' => 'dark', 'fields' => array( array( 'header_background_color', '#222222' ), array( 'header_text_color', '#ababab' ), array( 'header_text_hover_color', '#fff' ), array( 'header_border_color', 'rgba(255,255,255,0.2)' ), array( 'header_disable_color', '#8f8f8f' ), ) ), ); $options_config['section_color']['fields']['header_desktop_color_group']['fields']['header_sticky_scheme']['preset'] = array( array( 'op' => '=', 'value' => 'light', 'fields' => array( array( 'header_sticky_background_color', '#fff' ), array( 'header_sticky_text_color', '#333' ), array( 'header_sticky_text_hover_color', '#0ec6d5' ), array( 'header_sticky_border_color', '#eee' ), array( 'header_sticky_disable_color', '#ababab' ), ) ), array( 'op' => '=', 'value' => 'dark', 'fields' => array( array( 'header_sticky_background_color', '#222222' ), array( 'header_sticky_text_color', '#ababab' ), array( 'header_sticky_text_hover_color', '#fff' ), array( 'header_sticky_border_color', 'rgba(255,255,255,0.2)' ), array( 'header_sticky_disable_color', '#8f8f8f' ), ) ), ); $options_config['section_color']['fields']['menu_color_group']['fields']['submenu_scheme']['preset'] = array( array( 'op' => '=', 'value' => 'light', 'fields' => array( array('submenu_background_color', '#fff'), array('submenu_heading_color', '#333'), array('submenu_text_color', '#696969'), array('submenu_item_bg_hover_color', '#fff'), array('submenu_text_hover_color', '#0ec6d5'), array('submenu_border_color', '#fff'), ) ), array( 'op' => '=', 'value' => 'dark', 'fields' => array( array('submenu_background_color', '#222222'), array('submenu_heading_color', '#fff'), array('submenu_text_color', '#ababab'), array('submenu_item_bg_hover_color', '#222222'), array('submenu_text_hover_color', '#fff'), array('submenu_border_color', '#222222'), ) ), ); $options_config['section_color']['fields']['navigation_color_group']['fields']['navigation_scheme']['preset'] = array( array( 'op' => '=', 'value' => 'light', 'fields' => array( array('navigation_background_color', '#fff'), array('navigation_text_color', '#333'), array('navigation_text_hover_color', '#0ec6d5'), array('navigation_border_color', '#eee'), array('navigation_disable_color', '#ababab'), ) ), array( 'op' => '=', 'value' => 'dark', 'fields' => array( array('navigation_background_color', '#222222'), array('navigation_text_color', '#ababab'), array('navigation_text_hover_color', '#b20f0f'), array('navigation_border_color', 'rgba(255,255,255,0.2)'), array('navigation_disable_color', '#8f8f8f'), ) ), ); $options_config['section_color']['fields']['header_mobile_group']['fields']['header_mobile_color_scheme']['preset'] = array( array( 'op' => '=', 'value' => 'light', 'fields' => array( array( 'header_mobile_background_color', '#fff' ), array( 'header_mobile_text_color', '#333' ), array( 'header_mobile_text_hover_color', '#0ec6d5' ), array( 'header_mobile_border_color', '#eee' ), ) ), array( 'op' => '=', 'value' => 'dark', 'fields' => array( array( 'header_mobile_background_color', '#222222' ), array( 'header_mobile_text_color', '#ababab' ), array( 'header_mobile_text_hover_color', '#fff' ), array( 'header_mobile_border_color', 'rgba(255,255,255,0.2)' ), ) ), ); $options_config['section_color']['fields']['header_mobile_group']['fields']['header_mobile_sticky_color_scheme']['preset'] = array( array( 'op' => '=', 'value' => 'light', 'fields' => array( array( 'header_mobile_sticky_background_color', '#fff' ), array( 'header_mobile_sticky_text_color', '#333' ), array( 'header_mobile_sticky_text_hover_color', '#0ec6d5' ), array( 'header_mobile_sticky_border_color', '#eee' ), ) ), array( 'op' => '=', 'value' => 'dark', 'fields' => array( array( 'header_mobile_sticky_background_color', '#222222' ), array( 'header_mobile_sticky_text_color', '#ababab' ), array( 'header_mobile_sticky_text_hover_color', '#fff' ), array( 'header_mobile_sticky_border_color', 'rgba(255,255,255,0.2)' ), ) ), ); return $options_config; } } function HOMEID_SETUP_DATA() { return HOMEID_SETUP_DATA::getInstance(); } HOMEID_SETUP_DATA()->init(); } // Do not allow directly accessing this file. if ( ! defined( 'ABSPATH' ) ) { exit( 'Direct script access denied.' ); } if (!class_exists('HOMEID_CORE')) { class HOMEID_CORE { private static $_instance; public static function getInstance() { if ( self::$_instance == null ) { self::$_instance = new self(); } return self::$_instance; } public function __construct() { spl_autoload_register(array($this, 'autoload')); add_action('g5blog_init',array($this->blog(),'init')); add_action('g5element_init',array($this->element(),'init')); add_action('g5ere_init',array($this->ere(),'init')); add_filter('g5core_theme_info',array($this,'change_theme_info')); $this->init(); } public function init() { $this->loadFile($this->themeDir('inc/core/template-hooks.php')); } public function autoload($class) { $file_name = preg_replace('/^HOMEID_CORE_/', '', $class); if ($file_name !== $class) { $file_name = strtolower($file_name); $file_name = str_replace('_', '-', $file_name); $this->loadFile($this->themeDir("inc/core/{$file_name}.class.php")); } } public function loadFile($path) { if ( $path && is_readable($path) ) { include_once($path); return true; } return false; } public function themeDir($path = '') { return trailingslashit(get_template_directory()) . $path; } public function change_theme_info($info) { return wp_parse_args(array( 'docs' => 'https://docs.g5plus.net/homeid/', 'video_tutorials_url' => 'https://www.youtube.com/watch?v=zwHtJEVDhcA&list=PL_DzVbdOfv7FbYcx55t-9SWeK35HWkZGz', 'changelog' => 'https://homeid.g5plus.net/changelog.html', ),$info); } /** * @return HOMEID_CORE_BLOG */ public function blog() { return HOMEID_CORE_BLOG::getInstance(); } /** * @return HOMEID_CORE_ELEMENT */ public function element() { return HOMEID_CORE_ELEMENT::getInstance(); } /** * @return HOMEID_CORE_ERE */ public function ere() { return HOMEID_CORE_ERE::getInstance(); } } function HOMEID_CORE() { return HOMEID_CORE::getInstance(); } HOMEID_CORE()->init(); }// Do not allow directly accessing this file. if ( ! defined( 'ABSPATH' ) ) { exit( 'Direct script access denied.' ); } if (!class_exists('HOMEID_ELEMENTOR')) { class HOMEID_ELEMENTOR { private static $_instance; public static function getInstance() { if ( self::$_instance == null ) { self::$_instance = new self(); } return self::$_instance; } public function __construct() { spl_autoload_register(array($this, 'autoload')); } public function init(){ add_action('g5blog_init',array($this->blog(),'init')); add_action('g5ere_init',array($this->ere(),'init')); } public function autoload($class) { $file_name = preg_replace('/^HOMEID_ELEMENTOR_/', '', $class); if ($file_name !== $class) { $file_name = strtolower($file_name); $file_name = str_replace('_', '-', $file_name); $this->loadFile($this->themeDir("inc/elementor/{$file_name}.class.php")); } } public function loadFile($path) { if ( $path && is_readable($path) ) { include_once($path); return true; } return false; } public function themeDir($path = '') { return trailingslashit(get_template_directory()) . $path; } /** * @return HOMEID_ELEMENTOR_BLOG */ public function blog() { return HOMEID_ELEMENTOR_BLOG::getInstance(); } /** * @return HOMEID_ELEMENTOR_ERE */ public function ere() { return HOMEID_ELEMENTOR_ERE::getInstance(); } } function HOMEID_ELEMENTOR() { return HOMEID_ELEMENTOR::getInstance(); } HOMEID_ELEMENTOR()->init(); }// Do not allow directly accessing this file. if ( ! defined( 'ABSPATH' ) ) { exit( 'Direct script access denied.' ); } add_filter('g5core_site_variables', 'homeid_change_site_variables'); function homeid_change_site_variables($variables) { $accent_color = G5CORE()->options()->color()->get_option( 'accent_color' ); $variables[] = sprintf('--g5-color-menu-hover: %s', $accent_color); $variables[] = sprintf('--g5ere-map-pin-color: %s', $accent_color); return $variables; }
Warning: Cannot modify header information - headers already sent by (output started at /home/u284410540/domains/samartworld.in/public_html/wp-content/plugins/elementor-pro/elementor-pro.php:5) in /home/u284410540/domains/samartworld.in/public_html/wp-includes/pluggable.php on line 1435

Warning: Cannot modify header information - headers already sent by (output started at /home/u284410540/domains/samartworld.in/public_html/wp-content/plugins/elementor-pro/elementor-pro.php:5) in /home/u284410540/domains/samartworld.in/public_html/wp-includes/pluggable.php on line 1438