Responsive Menu - Version 4.1.4

Version Description

(17th Sep 2021) = Bug: Fixed transparent background issue. Feature: Added option to search settings in customizer. Feature: Added shortcuts to related settings in different sections of customizer. Feature: Added custom selector for hamburger icon position. Enhancement: Moved "Padding" setting from (Mobile Menu > Container > Menu) to (Menu Styling > Menu Settings) Enhancement: Moved "Enable Smooth Scrolling" setting from (Menu Styling > Menu Settings) to (Setting > Advance Setting > Technical)

Download this release

Release Info

Developer expresstech
Plugin Icon 128x128 Responsive Menu
Version 4.1.4
Comparing to
See all releases

Code changes from version 4.1.3 to 4.1.4

readme.txt CHANGED
@@ -3,7 +3,7 @@ Contributors: expresstech, responsivemenu, imvarunkmr, surajkumarsingh, infosate
3
  Tags: responsive, mega menu, navigation, mobile, hamburger
4
  Requires at least: 3.6
5
  Tested up to: 5.7
6
- Stable tag: 4.1.3
7
  Requires PHP: 5.6
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
@@ -102,6 +102,15 @@ To view our FAQ, please go to [https://responsive.menu/faq/](https://responsive.
102
  7. Main menu
103
 
104
  == Changelog ==
 
 
 
 
 
 
 
 
 
105
  = 4.1.3 (25th June 2021) =
106
  Bug: Fixed Adjust Page option issue
107
  Bug: Fixed the issue of conflict with WooCommerce plugin
@@ -133,7 +142,7 @@ Enhancement: Redirected user directly to customizer after creating a new menu
133
  Enhancement: Prevent deleting a theme if being used by active menu
134
  Enhancement: Added color alpha feature and push animation
135
  Enhancement: Added custom admin notice to upgrade
136
- Enhancement: Added admin notice with doc link if no menu created.
137
  Enhancement: Improved the default theme with new UI
138
  Enhancement: Improved the wizards UI
139
  Enhancement: Added hide menu input in new menu wizard
@@ -188,8 +197,8 @@ Bug: Fixed PHP warning and errors
188
  = 3.1.27 (19th Mar 2020) =
189
  * Fix: PHP v7.4 Compatibility
190
 
191
- = 3.1.26 (19th Feb 2020) =
192
- * Fix: WordPress 5.3 Compatibility
193
  * Fix: PHP v7.4 Compatibility
194
 
195
  = 3.1.25 (14th Dec 2019) =
3
  Tags: responsive, mega menu, navigation, mobile, hamburger
4
  Requires at least: 3.6
5
  Tested up to: 5.7
6
+ Stable tag: 4.1.4
7
  Requires PHP: 5.6
8
  License: GPLv2 or later
9
  License URI: http://www.gnu.org/licenses/gpl-2.0.html
102
  7. Main menu
103
 
104
  == Changelog ==
105
+
106
+ = 4.1.4 (17th Sep 2021) =
107
+ Bug: Fixed transparent background issue.
108
+ Feature: Added option to search settings in customizer.
109
+ Feature: Added shortcuts to related settings in different sections of customizer.
110
+ Feature: Added custom selector for hamburger icon position.
111
+ Enhancement: Moved "Padding" setting from (Mobile Menu > Container > Menu) to (Menu Styling > Menu Settings)
112
+ Enhancement: Moved "Enable Smooth Scrolling" setting from (Menu Styling > Menu Settings) to (Setting > Advance Setting > Technical)
113
+
114
  = 4.1.3 (25th June 2021) =
115
  Bug: Fixed Adjust Page option issue
116
  Bug: Fixed the issue of conflict with WooCommerce plugin
142
  Enhancement: Prevent deleting a theme if being used by active menu
143
  Enhancement: Added color alpha feature and push animation
144
  Enhancement: Added custom admin notice to upgrade
145
+ Enhancement: Added admin notice with doc link if no menu created.
146
  Enhancement: Improved the default theme with new UI
147
  Enhancement: Improved the wizards UI
148
  Enhancement: Added hide menu input in new menu wizard
197
  = 3.1.27 (19th Mar 2020) =
198
  * Fix: PHP v7.4 Compatibility
199
 
200
+ = 3.1.26 (19th Feb 2020) =
201
+ * Fix: WordPress 5.3 Compatibility
202
  * Fix: PHP v7.4 Compatibility
203
 
204
  = 3.1.25 (14th Dec 2019) =
responsive-menu.php CHANGED
@@ -4,7 +4,7 @@
4
  Plugin Name: Responsive Menu
5
  Plugin URI: https://expresstech.io
6
  Description: Highly Customisable Responsive Menu Plugin for WordPress
7
- Version: 4.1.3
8
  Author: ExpressTech
9
  Text Domain: responsive-menu
10
  Author URI: https://responsive.menu
@@ -16,7 +16,7 @@ Tags: responsive, menu, responsive menu, mega menu, max mega menu, max menu
16
  * Constant as plugin version.
17
  */
18
  if ( ! defined( 'RMP_PLUGIN_VERSION' ) ) {
19
- define( 'RMP_PLUGIN_VERSION', '4.1.3' );
20
  }
21
 
22
  define('RESPONSIVE_MENU_URL', plugin_dir_url( __FILE__ ) );
@@ -90,11 +90,11 @@ function og_pro_deactivate_pro_version_notice() {
90
  function og_deactivate_responsive_menu_pro() {
91
 
92
  $plugin = 'responsive-menu-pro/responsive-menu-pro.php';
93
-
94
  if( is_plugin_active($plugin) ){
95
  deactivate_plugins( 'responsive-menu-pro/responsive-menu-pro.php');
96
  set_transient( 'og-admin-notice-activation-pro', true, 5 );
97
-
98
  return;
99
  }
100
  }
@@ -196,7 +196,7 @@ include dirname(__FILE__) . '/config/polylang.php';
196
 
197
  /**
198
  * Activation of plugin.
199
- *
200
  * @return void
201
  */
202
  function responsive_menu_plugin_activation() {
@@ -214,7 +214,7 @@ include dirname(__FILE__) . '/config/polylang.php';
214
 
215
  /**
216
  * Deactivation of plugin.
217
- *
218
  * @return void
219
  */
220
  function responsive_menu_plugin_deactivation() {
4
  Plugin Name: Responsive Menu
5
  Plugin URI: https://expresstech.io
6
  Description: Highly Customisable Responsive Menu Plugin for WordPress
7
+ Version: 4.1.4
8
  Author: ExpressTech
9
  Text Domain: responsive-menu
10
  Author URI: https://responsive.menu
16
  * Constant as plugin version.
17
  */
18
  if ( ! defined( 'RMP_PLUGIN_VERSION' ) ) {
19
+ define( 'RMP_PLUGIN_VERSION', '4.1.4' );
20
  }
21
 
22
  define('RESPONSIVE_MENU_URL', plugin_dir_url( __FILE__ ) );
90
  function og_deactivate_responsive_menu_pro() {
91
 
92
  $plugin = 'responsive-menu-pro/responsive-menu-pro.php';
93
+
94
  if( is_plugin_active($plugin) ){
95
  deactivate_plugins( 'responsive-menu-pro/responsive-menu-pro.php');
96
  set_transient( 'og-admin-notice-activation-pro', true, 5 );
97
+
98
  return;
99
  }
100
  }
196
 
197
  /**
198
  * Activation of plugin.
199
+ *
200
  * @return void
201
  */
202
  function responsive_menu_plugin_activation() {
214
 
215
  /**
216
  * Deactivation of plugin.
217
+ *
218
  * @return void
219
  */
220
  function responsive_menu_plugin_deactivation() {
v4.0.0/assets/admin/build/css/rmpMain.css CHANGED
@@ -1 +1 @@
1
- .rmp-dialog-overlay{font-family:Product Sans}.rmp-dialog-overlay .rmp-menu-section{display:none}.rmp-dialog-overlay .rmp-menu-section.current{display:block}.rmp-dialog-overlay .rmp-dialog-backdrop{position:fixed;left:-1.25rem;right:0;top:0;bottom:0;background:rgba(13,19,61,.5098039215686274);z-index:999999}.rmp-dialog-overlay .rmp-dialog-wrap{clear:both;position:absolute;top:10%;left:0;right:0;bottom:3%;background:#fff;box-shadow:0 1px 1.25rem .3125rem rgba(0,0,0,.1);z-index:999999;box-sizing:border-box;-webkit-overflow-scrolling:touch;height:-webkit-fit-content;height:-moz-fit-content;height:fit-content}.rmp-dialog-overlay .rmp-dialog-wrap .rmp-dialog-contents{max-height:36.25rem;overflow-y:overlay}.rmp-dialog-overlay .rmp-dialog-header{height:4rem;border-bottom:1px solid #eee;overflow:hidden;display:flex;justify-content:space-between;align-items:center;box-shadow:0 0 .125rem 0 rgba(0,0,0,.1607843137254902)}.rmp-dialog-overlay .rmp-dialog-header .title{font-size:1rem;height:4rem;display:flex;align-items:center;padding-left:1.25rem;text-transform:capitalize;font-family:Product Sans Medium;color:#7e7e7e}.rmp-dialog-overlay .rmp-dialog-header .close{cursor:pointer;font-size:1.875rem;width:4rem;color:#ccd0d4;height:4rem;border:0;background-color:transparent;border-left:1px solid #ccd0d4}.rmp-dialog-overlay .rmp-dialog-footer{position:relative;text-align:right;bottom:0;left:0;right:0;padding:.625rem 1.25rem;box-sizing:border-box;height:4rem;box-shadow:0 -1px .125rem 0 rgba(0,0,0,.1607843137254902)}.rmp-dialog-overlay .rmp-theme-title .item-controls{top:unset}.rmp-dialog-overlay a{text-decoration:none}.rmp-dialog-overlay a:focus{border:0;outline:unset;box-shadow:unset}#rmp-new-menu-wizard .rmp-page-loader{background-color:hsla(0,0%,100%,.5019607843137255);height:auto;top:4rem;bottom:0}#rmp-new-menu-wizard .rmp-page-loader .rmp-loader-message{font-style:normal;font-size:.875rem;text-align:center;font-weight:600}#rmp-new-menu-wizard .rmp-theme-apply,#rmp-new-menu-wizard .rmp-theme-use{padding:.25rem .75rem;border:1px solid #c8c8c8;border-radius:.3125rem;color:#9d9d9d;letter-spacing:.14px}#rmp-new-menu-wizard .input-group{margin-bottom:.5rem;display:flex;align-items:center;padding:1.4rem 2rem;box-shadow:0 0 .25rem 0 rgba(0,0,0,.1);border:1px solid #dedcdc;background-color:#f6f6f6}#rmp-new-menu-wizard .input-group .input-label{width:35%}#rmp-new-menu-wizard .input-group .input-control{width:65%}#rmp-new-menu-wizard .input-label-title{font-family:PRODUCT SANS MEDIUM;font-size:1rem;font-weight:400;letter-spacing:.16px;color:#303030;margin-bottom:.375rem}#rmp-new-menu-wizard .input-label-description{font-family:PRODUCT SANS;font-size:.875rem;line-height:1.14;letter-spacing:.14px;color:#7b7b7b;margin-right:25%}#rmp-new-menu-wizard .input-label-description a{text-decoration:underline;color:#00adf5}#rmp-new-menu-wizard .rmp-dialog-contents .rmp-new-menu-elements{padding:2% 8%}#rmp-new-menu-wizard .input-control input[type=text],#rmp-new-menu-wizard .input-control select{width:100%;max-width:100%;max-width:34.375rem;box-shadow:0 1px .375rem 0 rgba(0,0,0,.16);border:1px solid #dedcdc;border-radius:0;height:2.625rem}#rmp-new-menu-wizard .rmp-dialog-wrap{top:5%;transition:color .5s linear}#rmp-new-menu-wizard .rmp-dialog-wrap .rmp-dialog-contents{padding:2% 3%;background:#f1f1f1;min-height:26.25rem}#rmp-new-menu-wizard .rmp-dialog-wrap .nav-tab-wrapper{border:0}#rmp-new-menu-wizard .rmp-dialog-wrap .nav-tab-wrapper .nav-tab{color:#6e6e6e;border:0;padding:0;background:unset;margin:0 2rem 0 0;font-size:.875rem;line-height:1.14;letter-spacing:.14px;position:relative;height:1.875rem;font-weight:500}#rmp-new-menu-wizard .rmp-dialog-wrap .nav-tab-wrapper .ui-tabs-active .nav-tab{color:#0085ba}#rmp-new-menu-wizard .rmp-dialog-wrap .rmp-v-divider:after{content:"";position:absolute;height:1.25rem;width:1px;background:#d2d2d2;right:-1rem}#rmp-new-menu-wizard .rmp-dialog-wrap .btn-import-theme{width:5rem;height:2.1875rem;border-radius:.375rem;box-shadow:0 .1875rem .375rem 0 rgba(0,0,0,.16);background-color:#23b507;color:#fff;border:unset}#rmp-new-menu-wizard .rmp-dialog-wrap .rmp-themes{margin:1.25rem 0}#rmp-new-menu-wizard .rmp-dialog-wrap .rmp-item-card_image{line-height:0}#rmp-new-menu-wizard .rmp-dialog-wrap .rmp-item-card_image img{height:15.625rem}#rmp-new-menu-wizard .rmp-dialog-wrap .rmp-item-card_contents{display:inline}#rmp-new-menu-wizard .rmp-dialog-wrap .rmp-item-card-backside{opacity:0;visibility:hidden;display:flex;position:absolute;top:0;left:0;height:calc(100% - .625rem);width:calc(100% - .625rem);margin:.3125rem;background:#000;flex-direction:column;justify-content:center;align-items:center;text-align:center;transform:translate3d(0,50%,0);transition:all .3s ease-in-out}#rmp-new-menu-wizard .rmp-item-card_contents h4{margin:0 .1875rem 1.375rem 0;font-size:1.125rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:1.17;letter-spacing:.18px;text-align:center;color:#fff}#rmp-new-menu-wizard .rmp-item-card{padding:.3125rem;background:#eaeaea;border:.3125rem solid #eaeaea;transition:border .3s ease-in-out}#rmp-new-menu-wizard .rmp-item-card:hover .rmp-item-card-backside{opacity:1;visibility:visible;transform:translateZ(0)}#rmp-new-menu-wizard #rmp-theme-upload{background:#36bef7;border:.125rem solid #36bef7;font-family:Product Sans Medium;border-radius:.25rem;font-size:.75rem}#rmp-new-menu-wizard .button{width:6.5625rem;height:2.1875rem;border-radius:.3125rem;background-color:#f80668;border:unset;color:#fff}#rmp-new-menu-wizard .button.btn-blue{background-color:#36bef7}#rmp-new-menu-wizard .rmp-theme-option:checked+label{border:.3125rem solid #0085ba!important}#rmp-new-menu-wizard .item-controls .rmp-theme-option:checked+label.rmp-theme-use{background-color:#0085ba;border:1px solid #0085ba!important;color:#fff}#rmp-new-menu-wizard .rmp-new-menu-step-conatiner{margin-right:12%}#rmp-new-menu-wizard .rmp-dialog-header .title span{padding:0 .625rem}#rmp-new-menu-wizard .rmp-dialog-header .rmp-new-menu-steps{display:flex;flex-direction:row;align-items:center}#rmp-new-menu-wizard .rmp-dialog-header .rmp-new-menu-step{font-size:1.25rem;padding:0 .9375rem;height:4rem;line-height:4rem;font-size:20px;color:#000;cursor:pointer;position:relative}#rmp-new-menu-wizard .rmp-dialog-header .rmp-new-menu-step.current:after{content:"";position:absolute;width:100%;height:.3125rem;background:#f80668;bottom:0;left:0}#rmp-new-menu-wizard .rmp-theme-upload-container{display:flex;flex-direction:column;justify-content:center}#rmp-new-menu-wizard .rmp-theme-upload-container p{color:#555d66;font-size:1.125rem;font-style:normal;margin:0;padding:0;text-align:center}#rmp-new-menu-wizard .rmp-theme-upload-container.hide{display:none}#rmp-new-menu-wizard .wp-upload-form{background:#fafafa;border:1px solid #ccd0d4;padding:1.875rem;margin:1.875rem auto;display:inline-flex;justify-content:space-between;align-items:center}#rmp-new-menu-wizard .rmp-dialog-footer #rmp-create-new-menu,#rmp-new-menu-wizard .rmp-dialog-footer #rmp-menu-next-step{width:8.125rem;font-size:1rem;height:2.8125rem;border:1px solid #00adf5;background-color:#36bef7;border-radius:unset}#rmp-new-menu-wizard .default-item{width:11.5rem;height:15.6rem;display:flex;justify-content:center;align-items:center;font-size:1.125rem;border:.3125rem solid #eaeaea}#rmp-new-menu-wizard .rmp_theme_grids,.rmp-theme-page .rmp_theme_grids{display:flex;justify-content:flex-start;flex-wrap:wrap}.rmp-new-menu-themes .rmp-themes .rmp-theme-option{-webkit-appearance:none;-moz-appearance:none;appearance:none;visibility:hidden;display:none}.rmp-new-menu-themes .rmp-themes .rmp-theme-title{position:relative;background:#fff;padding:1rem;line-height:1.55;font-weight:500;color:#6e6e6e;font-weight:400;margin:.3125rem 0;border:1px solid #ddd;font-family:Product Sans;font-size:.875rem;text-transform:capitalize;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out}@media only screen and (min-width:1170px){.rmp-dialog-overlay .rmp-dialog-wrap{width:73.125rem;margin:0 auto}}@media only screen and (max-width:780px){.rmp-dialog-overlay .rmp-dialog-overlay .rmp-dialog-wrap,.rmp-dialog-overlay .rmp-dialog-wrap{top:0;right:0;bottom:0;left:0;border:none;z-index:999999;position:absolute}#rmp-new-menu-wizard .input-group{flex-direction:column}#rmp-new-menu-wizard .input-group .input-control,#rmp-new-menu-wizard .input-group .input-label{width:100%;margin-bottom:.625rem}#rmp-new-menu-wizard .rmp-dialog-contents .rmp-new-menu-elements{padding:0}#rmp-new-menu-wizard .rmp-dialog-overlay .rmp-dialog-contents{flex-direction:column}#rmp-new-menu-wizard .rmp-dialog-contents .rmp-new-menu-themes{width:100%;border-right:unset;margin-bottom:.625rem}#rmp-new-menu-wizard .rmp-dialog-contents .rmp-new-menu-elements{width:auto}#rmp-new-menu-wizard .rmp-mega-menu-dialog .icon-tabs,#rmp-new-menu-wizard .rmp-menu-icons-dialog .icon-tabs{flex-direction:column}.rmp-dialog-contents .rmp-new-menu-elements{padding:0}.rmp-mega-menu-dialog .icon-tabs,.rmp-menu-icons-dialog .icon-tabs{flex-direction:column}}:root{--mainColor:#323232;--mainDarkColor:#212121;--accentColor:#14ffec;--secondaryAccentColor:#0d7377;--white:#fff;--lightWhite:#f0f0f0;--black:#000;--lightBlack:#5e5e5e;--gray:#d8e3e7;--pink:#f80668}.rmp-dark-mode .rmp-editor-overlay .collapse-sidebar{background-color:var(--mainDarkColor)}.rmp-dark-mode .rmp-editor-overlay .collapse-sidebar .collapse-sidebar-arrow:before{color:var(--accentColor)}.rmp-dark-mode .rmp-preview-mobile #rmp-preview-wrapper,.rmp-dark-mode .rmp-preview-tablet #rmp-preview-wrapper{box-shadow:0 .1875rem 0 #212121,0 .25rem 0 #212121,0 .3125rem 0 #212121,0 .4375rem 0 #212121,1px .375rem .9375rem #212121}.rmp-dark-mode #rmp-editor-wrapper{background-color:var(--lightBlack)}.rmp-dark-mode #rmp-editor-footer,.rmp-dark-mode #rmp-editor-header{background-color:var(--mainDarkColor)}.rmp-dark-mode #rmp-editor-footer{border-color:var(--mainColor)}.rmp-dark-mode #rmp-editor-footer .rmp-footer-sub-menu-wrapper{background-color:inherit}.rmp-dark-mode #rmp-editor-footer .rmp-footer-sub-menu-wrapper .rmp-footer-sub-menu a{background-color:var(--mainColor);border-color:var(--mainDarkColor);color:var(--white)}.rmp-dark-mode #rmp-editor-footer .rmp-preview-device-wrapper .rmp-device-preview.active{background-color:var(--accentColor)}.rmp-dark-mode #rmp-editor-footer svg path{fill:var(--lightWhite)}.rmp-dark-mode #rmp-editor-form{background-color:var(--mainColor)}.rmp-dark-mode #rmp-editor-form .rmp-tab-item svg path{fill:var(--lightWhite)}.rmp-dark-mode #rmp-editor-form .rmp-tab-item .rmp-tab-item-title{background-color:transparent!important;color:var(--white)}.rmp-dark-mode #rmp-editor-form .rmp-tab-item .rmp-tab-item-title:after{color:var(--white)}.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .rmp-mega-menu-top-item{background-color:var(--mainDarkColor)!important}.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .rmp-mega-menu-top-item .rmp-mega-menu-edit-icon svg path{fill:var(--lightWhite)}.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .rmp-accordion-content,.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .rmp-accordion-title,.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .rmp-mega-menu-top-item{background-color:var(--mainDarkColor);color:var(--white);border-color:var(--mainColor)}.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .rmp-accordion-content .ui-accordion-header-icon:before,.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .rmp-accordion-content:after,.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .rmp-accordion-title .ui-accordion-header-icon:before,.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .rmp-accordion-title:after,.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .rmp-mega-menu-top-item .ui-accordion-header-icon:before,.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .rmp-mega-menu-top-item:after{color:var(--lightWhite)}.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .nav-tab-wrapper{background-color:var(--secondaryAccentColor)}.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .nav-tab-wrapper .ui-tabs-active .nav-tab{background-color:var(--accentColor)}.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .toggle{background-color:var(--secondaryAccentColor);border-color:var(--secondaryAccentColor)}.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .toggle:checked{background-color:var(--accentColor);border-color:var(--accentColor)}.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .rmp-accordion-sub-heading,.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .rmp-icon-picker-placeholder,.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .rmp-image-picker-placeholder,.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .rmp-input-control-label{color:inherit}.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .rmp-sub-accordion-container .rmp-accordion-title{background-color:var(--mainColor)}.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .rmp-sub-accordion-container .rmp-accordion-content{border:.125rem solid var(--mainColor);margin-top:-.125rem}.rmp-dark-mode #rmp-editor-form #rmp-editor-main .rmp-order-item-description{background-color:var(--mainDarkColor)}.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control .rmp-group-input-wrapper input[type=text]{border-color:var(--mainDarkColor)}.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control .rmp-group-input-linked{background-color:var(--secondaryAccentColor);border-color:var(--secondaryAccentColor)}.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control .rmp-group-input-linked.is-linked{background-color:var(--accentColor);border-color:var(--accentColor)}.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control input[type=color],.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control input[type=date],.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control input[type=datetime-local],.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control input[type=datetime],.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control input[type=email],.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control input[type=month],.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control input[type=number],.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control input[type=password],.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control input[type=search],.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control input[type=tel],.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control input[type=text],.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control input[type=time],.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control input[type=url],.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control input[type=week],.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control select,.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control textarea{background-color:var(--mainColor);color:var(--white);border-color:var(--mainColor)}.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control .is-unit,.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control .unit-ms,.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control .unit-px,.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control .unit-s{background-color:var(--secondaryAccentColor);border-color:var(--secondaryAccentColor);color:var(--white)}.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control .button{background-color:var(--accentColor);border-color:var(--accentColor);color:var(--white)}.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .selectize-input{background-color:var(--mainColor);border-color:var(--mainColor)}.rmp-dark-mode #rmp-editor-form .rmp-device-switcher li{background-color:var(--accentColor)}.rmp-dark-mode .device-icons-group .device-title{color:var(--lightWhite)!important}.rmp-dark-mode .device-icons-group svg path{fill:var(--lightWhite)}.rmp-dark-mode .device-icons-group .device-icon .corner-icon{color:var(--accentColor)}.rmp-dark-mode .device-icons-group .device-icon label{background-color:var(--mainColor);border-color:var(--mainColor)}.rmp-dark-mode .device-icons-group .device-icon .checkbox:checked+label{border-color:var(--accentColor);background-color:var(--mainColor)}.rmp-dark-mode .rmp-tooltip-icon .rmp-tooltip-content,.rmp-dark-mode .selectize-control.multi .selectize-input>div,.rmp-dark-mode .selectize-control.multi .selectize-input>div.active,.rmp-dark-mode .selectize-dropdown{background-color:var(--secondaryAccentColor);color:var(--white)}.rmp-dark-mode .rmp-tooltip-icon .rmp-tooltip-content:before,.rmp-dark-mode .selectize-control.multi .selectize-input>div.active:before,.rmp-dark-mode .selectize-control.multi .selectize-input>div:before,.rmp-dark-mode .selectize-dropdown:before{border-bottom-color:var(--secondaryAccentColor)}.rmp-dark-mode .align-icons-group input[type=radio]:checked+label{background-color:var(--accentColor);color:var(--white)}.rmp-dark-mode .align-icons-group,.rmp-dark-mode .rmp-icon-picker-container,.rmp-dark-mode .rmp-image-picker-container{background-color:var(--mainColor)}.rmp-dark-mode .wp-picker-container .wp-color-result.button{border-color:var(--mainColor)!important;border-radius:0!important}.rmp-dark-mode .wp-picker-container .wp-color-result.button .color-alpha{border-color:var(--mainDarkColor)!important}.rmp-dark-mode .align-icons-group,.rmp-dark-mode .rmp-h-separator,.rmp-dark-mode .rmp-menu-item-icon-container .rmp-icon-picker{border-color:var(--mainColor)}.rmp-dark-mode #rmp-menu-update-notification a{color:var(--accentColor)}.rmp-dark-mode #rmp-save-menu-options,.rmp-dark-mode #rmp-theme-action{background-color:var(--accentColor)}.rmp-dark-mode .rmp-dialog-overlay .rmp-dialog-backdrop{background-color:rgba(33,33,33,.5)}.rmp-dark-mode .rmp-dialog-overlay .rmp-dialog-wrap{background-color:var(--mainColor);color:var(--white)}.rmp-dark-mode .rmp-dialog-overlay .rmp-dialog-header{border-color:var(--mainDarkColor)}.rmp-dark-mode .rmp-dialog-overlay .rmp-dialog-header .title{color:var(--white)!important}.rmp-dark-mode .rmp-dialog-overlay .rmp-dialog-header .close{border-color:var(--mainDarkColor)}.rmp-dark-mode .rmp-dialog-overlay .rmp-menu-library-title{color:var(--white)}.rmp-dark-mode #rmp-new-menu-wizard .rmp-dialog-wrap .rmp-dialog-contents{background-color:var(--mainColor)}.rmp-dark-mode #rmp-new-menu-wizard .rmp-dialog-wrap .rmp-item-card,.rmp-dark-mode #rmp-new-menu-wizard .rmp-dialog-wrap .rmp-themes .rmp-theme-title,.rmp-dark-mode #rmp-new-menu-wizard .rmp-dialog-wrap .wp-upload-form{background-color:var(--mainDarkColor);border-color:var(--mainDarkColor)}.rmp-dark-mode #rmp-new-menu-wizard .rmp-dialog-wrap #rmp-theme-upload,.rmp-dark-mode #rmp-new-menu-wizard .rmp-dialog-wrap .button.btn-blue{background-color:var(--accentColor);border-color:var(--accentColor)}.rmp-dark-mode #rmp-new-menu-wizard .rmp-dialog-wrap .nav-tab-wrapper .nav-tab,.rmp-dark-mode #rmp-new-menu-wizard .rmp-dialog-wrap .rmp-theme-upload-container p,.rmp-dark-mode #rmp-new-menu-wizard .rmp-dialog-wrap .rmp-themes .rmp-theme-title{color:var(--white)}.rmp-dark-mode #rmp-new-menu-wizard .rmp-dialog-wrap .nav-tab-wrapper .ui-tabs-active .nav-tab{color:var(--accentColor)}.rmp-dark-mode #rmp-new-menu-wizard .rmp-dialog-wrap .input-group{background-color:var(--mainDarkColor);border-color:var(--mainDarkColor)}.rmp-dark-mode #rmp-new-menu-wizard .rmp-dialog-wrap .input-group .input-label-description,.rmp-dark-mode #rmp-new-menu-wizard .rmp-dialog-wrap .input-group .input-label-title{color:var(--white)}.rmp-dark-mode #rmp-new-menu-wizard .rmp-dialog-wrap .input-group .input-label-description a,.rmp-dark-mode #rmp-new-menu-wizard .rmp-dialog-wrap .input-group .input-label-title a{color:var(--accentColor)}.rmp-dark-mode #rmp-new-menu-wizard .rmp-dialog-wrap .input-group .input-control input[type=text],.rmp-dark-mode #rmp-new-menu-wizard .rmp-dialog-wrap .input-group .input-control select{background-color:var(--mainColor);border-color:var(--mainColor);color:var(--white)}.rmp-dark-mode #rmp-new-menu-wizard .rmp-theme-option:checked+label{border-color:var(--accentColor)!important}.rmp-dark-mode #rmp-new-menu-wizard .item-controls .rmp-theme-option:checked+label.rmp-theme-use{border-color:var(--accentColor)!important;background-color:var(--accentColor)}.rmp-dark-mode #rmp-new-menu-wizard .rmp-dialog-header .rmp-new-menu-step{color:var(--white)}.rmp-dark-mode #rmp-new-menu-wizard .rmp-dialog-footer #rmp-create-new-menu,.rmp-dark-mode #rmp-new-menu-wizard .rmp-dialog-footer #rmp-menu-next-step{background-color:var(--accentColor);border-color:var(--accentColor)}.rmp-dark-mode #rmp-menu-save-theme-wizard #rmp-save-theme-name,.rmp-dark-mode #rmp-menu-save-theme-wizard .rmp-dialog-wrap .close{background-color:var(--mainDarkColor);border-color:var(--mainDarkColor);color:var(--white)}.rmp-dark-mode #rmp-menu-save-theme-wizard #rmp-save-theme{background-color:var(--accentColor);border-color:var(--accentColor)}.rmp-dark-mode #rmp-menu-save-theme-wizard .notice{color:var(--mainColor)}.rmp-dark-mode .rmp-menu-icons-dialog #tabs .nav-tab-wrapper{padding:0;background-color:var(--mainColor);border-color:var(--mainDarkColor)}.rmp-dark-mode .rmp-menu-icons-dialog #tabs .nav-tab-wrapper .nav-tab{background-color:var(--mainDarkColor);color:var(--white);margin:.125rem 0}.rmp-dark-mode .rmp-menu-icons-dialog #tabs .nav-tab-wrapper .nav-tab.nav-tab-active{background-color:var(--accentColor)}.rmp-dark-mode .rmp-menu-icons-dialog .rmp-icon-tab-contents .font-icon label:before{background-color:var(--mainDarkColor);color:var(--white);border-color:#444}.rmp-dark-mode .rmp-menu-icons-dialog #rmp-icon-search{background-color:var(--mainDarkColor);border-color:var(--mainDarkColor)}.rmp-dark-mode .rmp-menu-icons-dialog #rmp-icon-search,.rmp-dark-mode .rmp-menu-icons-dialog #rmp-icon-search-typing-message{color:var(--white)}.rmp-dark-mode .rmp-menu-icons-dialog #rmp-icon-dialog-clear{background-color:var(--pink);border-color:var(--pink);color:var(--white)}.rmp-dark-mode .rmp-menu-icons-dialog #rmp-icon-dialog-select{background-color:var(--accentColor);border-color:var(--accentColor);color:var(--white)}.rmp-dark-mode .rmp-icon-picker .rmp-font-icon{color:var(--lightWhite)}.rmp-dark-mode #rmp-widget-container .widget-item{background-color:var(--mainDarkColor);border-color:var(--mainDarkColor);color:var(--white)}.rmp-dark-mode .rmp-input-control-label{color:var(--white)}.rmp-dark-mode * ::-webkit-scrollbar-thumb{background-color:var(--mainDarkColor)}.rmp-dark-mode .rmp-page-loader{background-color:rgba(33,33,33,.8);z-index:99999999}.rmp-dark-mode .rmp-page-loader .rmp-loader-message{color:var(--white)}.rmp-dark-mode .upgrade-options{color:var(--white);background-color:var(--mainDarkColor);margin:1rem}.rmp-dark-mode .rmp-accordion-content .upgrade-options{background-color:var(--mainColor);margin:0 .9375rem}.rmp-dark-mode .upgrade-tooltip{color:var(--white)!important}
1
+ .rmp-dialog-overlay{font-family:Product Sans}.rmp-dialog-overlay .rmp-menu-section{display:none}.rmp-dialog-overlay .rmp-menu-section.current{display:block}.rmp-dialog-overlay .rmp-dialog-backdrop{position:fixed;left:-1.25rem;right:0;top:0;bottom:0;background:rgba(13,19,61,.5098039215686274);z-index:999999}.rmp-dialog-overlay .rmp-dialog-wrap{clear:both;position:absolute;top:10%;left:0;right:0;bottom:3%;background:#fff;box-shadow:0 1px 1.25rem .3125rem rgba(0,0,0,.1);z-index:999999;box-sizing:border-box;-webkit-overflow-scrolling:touch;height:-webkit-fit-content;height:-moz-fit-content;height:fit-content}.rmp-dialog-overlay .rmp-dialog-wrap .rmp-dialog-contents{max-height:36.25rem;overflow-y:overlay}.rmp-dialog-overlay .rmp-dialog-header{height:4rem;border-bottom:1px solid #eee;overflow:hidden;display:flex;justify-content:space-between;align-items:center;box-shadow:0 0 .125rem 0 rgba(0,0,0,.1607843137254902)}.rmp-dialog-overlay .rmp-dialog-header .title{font-size:1rem;height:4rem;display:flex;align-items:center;padding-left:1.25rem;text-transform:capitalize;font-family:Product Sans Medium;color:#7e7e7e}.rmp-dialog-overlay .rmp-dialog-header .close{cursor:pointer;font-size:1.875rem;width:4rem;color:#ccd0d4;height:4rem;border:0;background-color:transparent;border-left:1px solid #ccd0d4}.rmp-dialog-overlay .rmp-dialog-footer{position:relative;text-align:right;bottom:0;left:0;right:0;padding:.625rem 1.25rem;box-sizing:border-box;height:4rem;box-shadow:0 -1px .125rem 0 rgba(0,0,0,.1607843137254902)}.rmp-dialog-overlay .rmp-theme-title .item-controls{top:unset}.rmp-dialog-overlay a{text-decoration:none}.rmp-dialog-overlay a:focus{border:0;outline:unset;box-shadow:unset}#rmp-new-menu-wizard .rmp-page-loader{background-color:hsla(0,0%,100%,.5019607843137255);height:auto;top:4rem;bottom:0}#rmp-new-menu-wizard .rmp-page-loader .rmp-loader-message{font-style:normal;font-size:.875rem;text-align:center;font-weight:600}#rmp-new-menu-wizard .rmp-theme-apply,#rmp-new-menu-wizard .rmp-theme-use{padding:.25rem .75rem;border:1px solid #c8c8c8;border-radius:.3125rem;color:#9d9d9d;letter-spacing:.14px}#rmp-new-menu-wizard .input-group{margin-bottom:.5rem;display:flex;align-items:center;padding:1.4rem 2rem;box-shadow:0 0 .25rem 0 rgba(0,0,0,.1);border:1px solid #dedcdc;background-color:#f6f6f6}#rmp-new-menu-wizard .input-group .input-label{width:35%}#rmp-new-menu-wizard .input-group .input-control{width:65%}#rmp-new-menu-wizard .input-label-title{font-family:PRODUCT SANS MEDIUM;font-size:1rem;font-weight:400;letter-spacing:.16px;color:#303030;margin-bottom:.375rem}#rmp-new-menu-wizard .input-label-description{font-family:PRODUCT SANS;font-size:.875rem;line-height:1.14;letter-spacing:.14px;color:#7b7b7b;margin-right:25%}#rmp-new-menu-wizard .input-label-description a{text-decoration:underline;color:#00adf5}#rmp-new-menu-wizard .rmp-dialog-contents .rmp-new-menu-elements{padding:2% 8%}#rmp-new-menu-wizard .input-control input[type=text],#rmp-new-menu-wizard .input-control select{width:100%;max-width:100%;max-width:34.375rem;box-shadow:0 1px .375rem 0 rgba(0,0,0,.16);border:1px solid #dedcdc;border-radius:0;height:2.625rem}#rmp-new-menu-wizard .rmp-dialog-wrap{top:5%;transition:color .5s linear}#rmp-new-menu-wizard .rmp-dialog-wrap .rmp-dialog-contents{padding:2% 3%;background:#f1f1f1;min-height:26.25rem}#rmp-new-menu-wizard .rmp-dialog-wrap .nav-tab-wrapper{border:0}#rmp-new-menu-wizard .rmp-dialog-wrap .nav-tab-wrapper .nav-tab{color:#6e6e6e;border:0;padding:0;background:unset;margin:0 2rem 0 0;font-size:.875rem;line-height:1.14;letter-spacing:.14px;position:relative;height:1.875rem;font-weight:500}#rmp-new-menu-wizard .rmp-dialog-wrap .nav-tab-wrapper .ui-tabs-active .nav-tab{color:#0085ba}#rmp-new-menu-wizard .rmp-dialog-wrap .rmp-v-divider:after{content:"";position:absolute;height:1.25rem;width:1px;background:#d2d2d2;right:-1rem}#rmp-new-menu-wizard .rmp-dialog-wrap .btn-import-theme{width:5rem;height:2.1875rem;border-radius:.375rem;box-shadow:0 .1875rem .375rem 0 rgba(0,0,0,.16);background-color:#23b507;color:#fff;border:unset}#rmp-new-menu-wizard .rmp-dialog-wrap .rmp-themes{margin:1.25rem 0}#rmp-new-menu-wizard .rmp-dialog-wrap .rmp-item-card_image{line-height:0}#rmp-new-menu-wizard .rmp-dialog-wrap .rmp-item-card_image img{height:15.625rem}#rmp-new-menu-wizard .rmp-dialog-wrap .rmp-item-card_contents{display:inline}#rmp-new-menu-wizard .rmp-dialog-wrap .rmp-item-card-backside{opacity:0;visibility:hidden;display:flex;position:absolute;top:0;left:0;height:calc(100% - .625rem);width:calc(100% - .625rem);margin:.3125rem;background:#000;flex-direction:column;justify-content:center;align-items:center;text-align:center;transform:translate3d(0,50%,0);transition:all .3s ease-in-out}#rmp-new-menu-wizard .rmp-item-card_contents h4{margin:0 .1875rem 1.375rem 0;font-size:1.125rem;font-weight:400;font-stretch:normal;font-style:normal;line-height:1.17;letter-spacing:.18px;text-align:center;color:#fff}#rmp-new-menu-wizard .rmp-item-card{padding:.3125rem;background:#eaeaea;border:.3125rem solid #eaeaea;transition:border .3s ease-in-out}#rmp-new-menu-wizard .rmp-item-card:hover .rmp-item-card-backside{opacity:1;visibility:visible;transform:translateZ(0)}#rmp-new-menu-wizard #rmp-theme-upload{background:#36bef7;border:.125rem solid #36bef7;font-family:Product Sans Medium;border-radius:.25rem;font-size:.75rem}#rmp-new-menu-wizard .button{width:6.5625rem;height:2.1875rem;border-radius:.3125rem;background-color:#f80668;border:unset;color:#fff}#rmp-new-menu-wizard .button.btn-blue{background-color:#36bef7}#rmp-new-menu-wizard .rmp-theme-option:checked+label{border:.3125rem solid #0085ba!important}#rmp-new-menu-wizard .item-controls .rmp-theme-option:checked+label.rmp-theme-use{background-color:#0085ba;border:1px solid #0085ba!important;color:#fff}#rmp-new-menu-wizard .rmp-new-menu-step-conatiner{margin-right:12%}#rmp-new-menu-wizard .rmp-dialog-header .title span{padding:0 .625rem}#rmp-new-menu-wizard .rmp-dialog-header .rmp-new-menu-steps{display:flex;flex-direction:row;align-items:center}#rmp-new-menu-wizard .rmp-dialog-header .rmp-new-menu-step{font-size:1.25rem;padding:0 .9375rem;height:4rem;line-height:4rem;font-size:20px;color:#000;cursor:pointer;position:relative}#rmp-new-menu-wizard .rmp-dialog-header .rmp-new-menu-step.current:after{content:"";position:absolute;width:100%;height:.3125rem;background:#f80668;bottom:0;left:0}#rmp-new-menu-wizard .rmp-theme-upload-container{display:flex;flex-direction:column;justify-content:center}#rmp-new-menu-wizard .rmp-theme-upload-container p{color:#555d66;font-size:1.125rem;font-style:normal;margin:0;padding:0;text-align:center}#rmp-new-menu-wizard .rmp-theme-upload-container.hide{display:none}#rmp-new-menu-wizard .wp-upload-form{background:#fafafa;border:1px solid #ccd0d4;padding:1.875rem;margin:1.875rem auto;display:inline-flex;justify-content:space-between;align-items:center}#rmp-new-menu-wizard .rmp-dialog-footer #rmp-create-new-menu,#rmp-new-menu-wizard .rmp-dialog-footer #rmp-menu-next-step{width:8.125rem;font-size:1rem;height:2.8125rem;border:1px solid #00adf5;background-color:#36bef7;border-radius:unset}#rmp-new-menu-wizard .default-item{width:11.5rem;height:15.6rem;display:flex;justify-content:center;align-items:center;font-size:1.125rem;border:.3125rem solid #eaeaea}#rmp-new-menu-wizard .rmp_theme_grids,.rmp-theme-page .rmp_theme_grids{display:flex;justify-content:flex-start;flex-wrap:wrap}.rmp-new-menu-themes .rmp-themes .rmp-theme-option{-webkit-appearance:none;-moz-appearance:none;appearance:none;visibility:hidden;display:none}.rmp-new-menu-themes .rmp-themes .rmp-theme-title{position:relative;background:#fff;padding:1rem;line-height:1.55;font-weight:500;color:#6e6e6e;font-weight:400;margin:.3125rem 0;border:1px solid #ddd;font-family:Product Sans;font-size:.875rem;text-transform:capitalize;transition:color .15s ease-in-out,background-color .15s ease-in-out,border-color .15s ease-in-out}@media only screen and (min-width:1170px){.rmp-dialog-overlay .rmp-dialog-wrap{width:73.125rem;margin:0 auto}}@media only screen and (max-width:780px){.rmp-dialog-overlay .rmp-dialog-overlay .rmp-dialog-wrap,.rmp-dialog-overlay .rmp-dialog-wrap{top:0;right:0;bottom:0;left:0;border:none;z-index:999999;position:absolute}#rmp-new-menu-wizard .input-group{flex-direction:column}#rmp-new-menu-wizard .input-group .input-control,#rmp-new-menu-wizard .input-group .input-label{width:100%;margin-bottom:.625rem}#rmp-new-menu-wizard .rmp-dialog-contents .rmp-new-menu-elements{padding:0}#rmp-new-menu-wizard .rmp-dialog-overlay .rmp-dialog-contents{flex-direction:column}#rmp-new-menu-wizard .rmp-dialog-contents .rmp-new-menu-themes{width:100%;border-right:unset;margin-bottom:.625rem}#rmp-new-menu-wizard .rmp-dialog-contents .rmp-new-menu-elements{width:auto}#rmp-new-menu-wizard .rmp-mega-menu-dialog .icon-tabs,#rmp-new-menu-wizard .rmp-menu-icons-dialog .icon-tabs{flex-direction:column}.rmp-dialog-contents .rmp-new-menu-elements{padding:0}.rmp-mega-menu-dialog .icon-tabs,.rmp-menu-icons-dialog .icon-tabs{flex-direction:column}}:root{--mainColor:#323232;--mainDarkColor:#212121;--accentColor:#36bef7;--secondaryAccentColor:#0d7377;--white:#fff;--lightWhite:#f0f0f0;--black:#000;--lightBlack:#5e5e5e;--gray:#d8e3e7;--pink:#f80668}.rmp-dark-mode .rmp-editor-overlay .collapse-sidebar{background-color:var(--mainDarkColor)}.rmp-dark-mode .rmp-editor-overlay .collapse-sidebar .collapse-sidebar-arrow:before{color:var(--accentColor)}.rmp-dark-mode .rmp-preview-mobile #rmp-preview-wrapper,.rmp-dark-mode .rmp-preview-tablet #rmp-preview-wrapper{box-shadow:0 .1875rem 0 #212121,0 .25rem 0 #212121,0 .3125rem 0 #212121,0 .4375rem 0 #212121,1px .375rem .9375rem #212121}.rmp-dark-mode #rmp-editor-wrapper{background-color:var(--lightBlack)}.rmp-dark-mode #rmp-editor-footer,.rmp-dark-mode #rmp-editor-header{background-color:var(--mainDarkColor)}.rmp-dark-mode #rmp-editor-footer{border-color:var(--mainColor)}.rmp-dark-mode #rmp-editor-footer .rmp-footer-sub-menu-wrapper{background-color:inherit}.rmp-dark-mode #rmp-editor-footer .rmp-footer-sub-menu-wrapper .rmp-footer-sub-menu a{background-color:var(--mainColor);border-color:var(--mainDarkColor);color:var(--white)}.rmp-dark-mode #rmp-editor-footer .rmp-preview-device-wrapper .rmp-device-preview.active{background-color:var(--accentColor)}.rmp-dark-mode #rmp-editor-footer svg path{fill:var(--lightWhite)}.rmp-dark-mode #rmp-editor-form{background-color:var(--mainColor)}.rmp-dark-mode #rmp-editor-form .rmp-search-settings{background-color:var(--mainColor);color:var(--white);border-color:var(--mainColor)}.rmp-dark-mode #rmp-editor-form .rmp-tab-item svg path{fill:var(--lightWhite)}.rmp-dark-mode #rmp-editor-form .rmp-tab-item .rmp-tab-item-title{background-color:transparent!important;color:var(--white)}.rmp-dark-mode #rmp-editor-form .rmp-tab-item .rmp-tab-item-title:after{color:var(--white)}.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .rmp-mega-menu-top-item{background-color:var(--mainDarkColor)!important}.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .rmp-mega-menu-top-item .rmp-mega-menu-edit-icon svg path{fill:var(--lightWhite)}.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .rmp-accordion-content,.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .rmp-accordion-title,.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .rmp-mega-menu-top-item{background-color:var(--mainDarkColor);color:var(--white);border-color:var(--mainColor)}.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .rmp-accordion-content .ui-accordion-header-icon:before,.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .rmp-accordion-content:after,.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .rmp-accordion-title .ui-accordion-header-icon:before,.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .rmp-accordion-title:after,.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .rmp-mega-menu-top-item .ui-accordion-header-icon:before,.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .rmp-mega-menu-top-item:after{color:var(--lightWhite)}.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .nav-tab-wrapper{background-color:var(--secondaryAccentColor)}.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .nav-tab-wrapper .ui-tabs-active .nav-tab{background-color:var(--accentColor)}.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .toggle{background-color:var(--secondaryAccentColor);border-color:var(--secondaryAccentColor)}.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .toggle:checked{background-color:var(--accentColor);border-color:var(--accentColor)}.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .rmp-accordion-sub-heading,.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .rmp-icon-picker-placeholder,.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .rmp-image-picker-placeholder,.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .rmp-input-control-label{color:inherit}.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .rmp-sub-accordion-container .rmp-accordion-title{background-color:var(--mainColor)}.rmp-dark-mode #rmp-editor-form .rmp-accordion-container .rmp-sub-accordion-container .rmp-accordion-content{border:.125rem solid var(--mainColor);margin-top:-.125rem}.rmp-dark-mode #rmp-editor-form #rmp-editor-main .rmp-order-item-description{background-color:var(--mainDarkColor)}.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control .rmp-group-input-wrapper input[type=text]{border-color:var(--mainDarkColor)}.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control .rmp-group-input-linked{background-color:var(--secondaryAccentColor);border-color:var(--secondaryAccentColor)}.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control .rmp-group-input-linked.is-linked{background-color:var(--accentColor);border-color:var(--accentColor)}.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control input[type=color],.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control input[type=date],.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control input[type=datetime-local],.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control input[type=datetime],.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control input[type=email],.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control input[type=month],.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control input[type=number],.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control input[type=password],.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control input[type=search],.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control input[type=tel],.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control input[type=text],.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control input[type=time],.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control input[type=url],.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control input[type=week],.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control select,.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control textarea{background-color:var(--mainColor);color:var(--white);border-color:var(--mainColor)}.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control .is-unit,.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control .unit-ms,.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control .unit-px,.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control .unit-s{background-color:var(--secondaryAccentColor);border-color:var(--secondaryAccentColor);color:var(--white)}.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .rmp-input-control .button{background-color:var(--accentColor);border-color:var(--accentColor);color:var(--white)}.rmp-dark-mode #rmp-editor-form .rmp-menu-controls .selectize-input{background-color:var(--mainColor);border-color:var(--mainColor)}.rmp-dark-mode #rmp-editor-form .rmp-device-switcher li{background-color:var(--accentColor)}.rmp-dark-mode .device-icons-group .device-title{color:var(--lightWhite)!important}.rmp-dark-mode .device-icons-group svg path{fill:var(--lightWhite)}.rmp-dark-mode .device-icons-group .device-icon .corner-icon{color:var(--accentColor)}.rmp-dark-mode .device-icons-group .device-icon label{background-color:var(--mainColor);border-color:var(--mainColor)}.rmp-dark-mode .device-icons-group .device-icon .checkbox:checked+label{border-color:var(--accentColor);background-color:var(--mainColor)}.rmp-dark-mode .rmp-tooltip-icon .rmp-tooltip-content,.rmp-dark-mode .selectize-control.multi .selectize-input>div,.rmp-dark-mode .selectize-control.multi .selectize-input>div.active,.rmp-dark-mode .selectize-dropdown{background-color:var(--secondaryAccentColor);color:var(--white)}.rmp-dark-mode .rmp-tooltip-icon .rmp-tooltip-content:before,.rmp-dark-mode .selectize-control.multi .selectize-input>div.active:before,.rmp-dark-mode .selectize-control.multi .selectize-input>div:before,.rmp-dark-mode .selectize-dropdown:before{border-bottom-color:var(--secondaryAccentColor)}.rmp-dark-mode .align-icons-group input[type=radio]:checked+label{background-color:var(--accentColor);color:var(--white)}.rmp-dark-mode .align-icons-group,.rmp-dark-mode .rmp-icon-picker-container,.rmp-dark-mode .rmp-image-picker-container{background-color:var(--mainColor)}.rmp-dark-mode .wp-picker-container .wp-color-result.button{border-color:var(--mainColor)!important;border-radius:0!important}.rmp-dark-mode .wp-picker-container .wp-color-result.button .color-alpha{border-color:var(--mainDarkColor)!important}.rmp-dark-mode .align-icons-group,.rmp-dark-mode .rmp-h-separator,.rmp-dark-mode .rmp-menu-item-icon-container .rmp-icon-picker{border-color:var(--mainColor)}.rmp-dark-mode #rmp-menu-update-notification a{color:var(--accentColor)}.rmp-dark-mode #rmp-save-menu-options,.rmp-dark-mode #rmp-theme-action{background-color:var(--accentColor)}.rmp-dark-mode .rmp-dialog-overlay .rmp-dialog-backdrop{background-color:rgba(33,33,33,.5)}.rmp-dark-mode .rmp-dialog-overlay .rmp-dialog-wrap{background-color:var(--mainColor);color:var(--white)}.rmp-dark-mode .rmp-dialog-overlay .rmp-dialog-header{border-color:var(--mainDarkColor)}.rmp-dark-mode .rmp-dialog-overlay .rmp-dialog-header .title{color:var(--white)!important}.rmp-dark-mode .rmp-dialog-overlay .rmp-dialog-header .close{border-color:var(--mainDarkColor)}.rmp-dark-mode .rmp-dialog-overlay .rmp-menu-library-title{color:var(--white)}.rmp-dark-mode #rmp-new-menu-wizard .rmp-dialog-wrap .rmp-dialog-contents{background-color:var(--mainColor)}.rmp-dark-mode #rmp-new-menu-wizard .rmp-dialog-wrap .rmp-item-card,.rmp-dark-mode #rmp-new-menu-wizard .rmp-dialog-wrap .rmp-themes .rmp-theme-title,.rmp-dark-mode #rmp-new-menu-wizard .rmp-dialog-wrap .wp-upload-form{background-color:var(--mainDarkColor);border-color:var(--mainDarkColor)}.rmp-dark-mode #rmp-new-menu-wizard .rmp-dialog-wrap #rmp-theme-upload,.rmp-dark-mode #rmp-new-menu-wizard .rmp-dialog-wrap .button.btn-blue{background-color:var(--accentColor);border-color:var(--accentColor)}.rmp-dark-mode #rmp-new-menu-wizard .rmp-dialog-wrap .nav-tab-wrapper .nav-tab,.rmp-dark-mode #rmp-new-menu-wizard .rmp-dialog-wrap .rmp-theme-upload-container p,.rmp-dark-mode #rmp-new-menu-wizard .rmp-dialog-wrap .rmp-themes .rmp-theme-title{color:var(--white)}.rmp-dark-mode #rmp-new-menu-wizard .rmp-dialog-wrap .nav-tab-wrapper .ui-tabs-active .nav-tab{color:var(--accentColor)}.rmp-dark-mode #rmp-new-menu-wizard .rmp-dialog-wrap .input-group{background-color:var(--mainDarkColor);border-color:var(--mainDarkColor)}.rmp-dark-mode #rmp-new-menu-wizard .rmp-dialog-wrap .input-group .input-label-description,.rmp-dark-mode #rmp-new-menu-wizard .rmp-dialog-wrap .input-group .input-label-title{color:var(--white)}.rmp-dark-mode #rmp-new-menu-wizard .rmp-dialog-wrap .input-group .input-label-description a,.rmp-dark-mode #rmp-new-menu-wizard .rmp-dialog-wrap .input-group .input-label-title a{color:var(--accentColor)}.rmp-dark-mode #rmp-new-menu-wizard .rmp-dialog-wrap .input-group .input-control input[type=text],.rmp-dark-mode #rmp-new-menu-wizard .rmp-dialog-wrap .input-group .input-control select{background-color:var(--mainColor);border-color:var(--mainColor);color:var(--white)}.rmp-dark-mode #rmp-new-menu-wizard .rmp-theme-option:checked+label{border-color:var(--accentColor)!important}.rmp-dark-mode #rmp-new-menu-wizard .item-controls .rmp-theme-option:checked+label.rmp-theme-use{border-color:var(--accentColor)!important;background-color:var(--accentColor)}.rmp-dark-mode #rmp-new-menu-wizard .rmp-dialog-header .rmp-new-menu-step{color:var(--white)}.rmp-dark-mode #rmp-new-menu-wizard .rmp-dialog-footer #rmp-create-new-menu,.rmp-dark-mode #rmp-new-menu-wizard .rmp-dialog-footer #rmp-menu-next-step{background-color:var(--accentColor);border-color:var(--accentColor)}.rmp-dark-mode #rmp-menu-save-theme-wizard #rmp-save-theme-name,.rmp-dark-mode #rmp-menu-save-theme-wizard .rmp-dialog-wrap .close{background-color:var(--mainDarkColor);border-color:var(--mainDarkColor);color:var(--white)}.rmp-dark-mode #rmp-menu-save-theme-wizard #rmp-save-theme{background-color:var(--accentColor);border-color:var(--accentColor)}.rmp-dark-mode #rmp-menu-save-theme-wizard .notice{color:var(--mainColor)}.rmp-dark-mode .rmp-menu-icons-dialog #tabs .nav-tab-wrapper{padding:0;background-color:var(--mainColor);border-color:var(--mainDarkColor)}.rmp-dark-mode .rmp-menu-icons-dialog #tabs .nav-tab-wrapper .nav-tab{background-color:var(--mainDarkColor);color:var(--white);margin:.125rem 0}.rmp-dark-mode .rmp-menu-icons-dialog #tabs .nav-tab-wrapper .nav-tab.nav-tab-active{background-color:var(--accentColor)}.rmp-dark-mode .rmp-menu-icons-dialog .rmp-icon-tab-contents .font-icon label:before{background-color:var(--mainDarkColor);color:var(--white);border-color:#444}.rmp-dark-mode .rmp-menu-icons-dialog #rmp-icon-search{background-color:var(--mainDarkColor);border-color:var(--mainDarkColor)}.rmp-dark-mode .rmp-menu-icons-dialog #rmp-icon-search,.rmp-dark-mode .rmp-menu-icons-dialog #rmp-icon-search-typing-message{color:var(--white)}.rmp-dark-mode .rmp-menu-icons-dialog #rmp-icon-dialog-clear{background-color:var(--pink);border-color:var(--pink);color:var(--white)}.rmp-dark-mode .rmp-menu-icons-dialog #rmp-icon-dialog-select{background-color:var(--accentColor);border-color:var(--accentColor);color:var(--white)}.rmp-dark-mode .rmp-icon-picker .rmp-font-icon{color:var(--lightWhite)}.rmp-dark-mode #rmp-widget-container .widget-item{background-color:var(--mainDarkColor);border-color:var(--mainDarkColor);color:var(--white)}.rmp-dark-mode .rmp-input-control-label{color:var(--white)}.rmp-dark-mode * ::-webkit-scrollbar-thumb{background-color:var(--mainDarkColor)}.rmp-dark-mode .rmp-page-loader{background-color:rgba(33,33,33,.8);z-index:99999999}.rmp-dark-mode .rmp-page-loader .rmp-loader-message{color:var(--white)}.rmp-dark-mode .upgrade-options{color:var(--white);background-color:var(--mainDarkColor);margin:1rem}.rmp-dark-mode .rmp-accordion-content .upgrade-options{background-color:var(--mainColor);margin:0 .9375rem}.rmp-dark-mode .upgrade-tooltip{color:var(--white)!important}
v4.0.0/assets/admin/build/js/rmpMain.js CHANGED
@@ -1,2 +1,2 @@
1
  /*! For license information please see rmpMain.js.LICENSE.txt */
2
- !function(e){var n={};function r(t){if(n[t])return n[t].exports;var i=n[t]={i:t,l:!1,exports:{}};return e[t].call(i.exports,i,i.exports,r),i.l=!0,i.exports}r.m=e,r.c=n,r.d=function(e,n,t){r.o(e,n)||Object.defineProperty(e,n,{enumerable:!0,get:t})},r.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,n){if(1&n&&(e=r(e)),8&n)return e;if(4&n&&"object"==typeof e&&e&&e.__esModule)return e;var t=Object.create(null);if(r.r(t),Object.defineProperty(t,"default",{enumerable:!0,value:e}),2&n&&"string"!=typeof e)for(var i in e)r.d(t,i,function(n){return e[n]}.bind(null,i));return t},r.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(n,"a",n),n},r.o=function(e,n){return Object.prototype.hasOwnProperty.call(e,n)},r.p="",r(r.s=0)}({"./assets/admin/js/rmp-admin.js":function(module,exports){eval("/**\r\n * This is admin scripts file which contain the admin actions.\r\n *\r\n * @version 4.0.0\r\n *\r\n * @author Expresstech System\r\n *\r\n */\njQuery(document).ready(function (jQuery) {\n /**\r\n * Rollback the plugin version.\r\n *\r\n * @version 4.0.0\r\n *\r\n * @fires Click\r\n */\n jQuery('#rmp-rollback-version').on('click', function (e) {\n e.preventDefault();\n var version = jQuery('#rmp-versions').val();\n\n if ('3.1.30' === version) {\n jQuery.ajax({\n url: rmpObject.ajaxURL,\n data: {\n action: 'rmp_rollback_version'\n },\n type: 'POST',\n dataType: 'json',\n error: function error(_error) {\n jQuery(this).prop('disabled', false);\n },\n success: function success(response) {\n if (response.data.redirect) {\n location.href = response.data.redirect;\n }\n }\n });\n }\n });\n /**\r\n * Iframe loader and contents show/hide.\r\n */\n\n jQuery('#rmp-preview-iframe').on('load', function () {\n jQuery('#rmp-preview-iframe-loader').hide();\n jQuery('#rmp-menu-update-notification').remove();\n jQuery('#rmp-preview-iframe').show();\n jQuery('#rmp-preview-iframe').contents().find('a').on('click', function (e) {\n e.stopPropagation();\n e.preventDefault();\n var url = jQuery(this).attr('href'); // Prevent to load the customizer page on preview aria.\n\n if ('#' == url) {\n return;\n }\n\n if (url.indexOf('?') >= 0) {\n url = url + '&rmp_preview_mode=true';\n } else {\n url = url + '?rmp_preview_mode=true';\n }\n\n jQuery('#rmp-preview-iframe').attr('src', url);\n });\n });\n /**\r\n * Save the theme as template.\r\n *\r\n * @since 4.0.0\r\n *\r\n * @fires Click\r\n */\n\n jQuery('button#rmp-save-theme').on('click', function (e) {\n e.stopPropagation();\n e.preventDefault();\n var themeName = jQuery('#rmp-save-theme-name').val();\n\n if (3 > themeName.length) {\n alert('Please give meaning full name to this theme');\n return;\n }\n\n jQuery.ajax({\n url: rmpObject.ajaxURL,\n data: {\n 'action': 'rmp_save_theme',\n 'ajax_nonce': rmpObject.ajax_nonce,\n 'theme_name': themeName,\n 'menu_id': jQuery('#menu_id').val(),\n 'form': jQuery('#rmp-editor-form').serialize()\n },\n type: 'POST',\n dataType: 'json',\n error: function error(_error2) {\n console.log(_error2.statusText);\n },\n success: function success(response) {\n jQuery(e.target).parents('.rmp-dialog-contents').append('<div class=\"notice notice-success settings-error is-dismissible\"><p>' + response.data.message + '</p></div>');\n }\n });\n });\n /**\r\n * Ajax call to save the menu settings when click on update.\r\n *\r\n * @version 4.0.0\r\n *\r\n * @fires click\r\n */\n\n jQuery(document).on('click', 'button#rmp-save-menu-options,#rmp-menu-quick-update-button', function (e) {\n jQuery.ajax({\n url: rmpObject.ajaxURL,\n data: {\n 'action': 'rmp_save_menu_action',\n 'ajax_nonce': rmpObject.ajax_nonce,\n 'form': jQuery('#rmp-editor-form').serialize()\n },\n type: 'POST',\n dataType: 'json',\n beforeSend: function beforeSend() {\n jQuery('#rmp-preview-iframe-loader').show();\n },\n error: function error(_error3) {\n console.log(_error3.statusText);\n jQuery('#rmp-preview-iframe-loader').hide();\n },\n success: function success(response) {\n // If options is updated successfully then reload the iframe.\n if (response.success) {\n var url = jQuery('#rmp-preview-iframe').attr('src');\n jQuery('#rmp-preview-iframe').attr('src', url);\n }\n }\n });\n }); // Initiate the color picker instances.\n\n jQuery('.rmp-color-input').wpColorPicker(); // Fix events glitch on color textbox.\n\n jQuery('.rmp-color-input').removeAttr('style');\n jQuery(document).find('.rmp-color-input').off('focus'); // Initiate the tab elements.\n\n jQuery('.tabs,#rmp-setting-tabs').tabs({\n hide: {\n effect: 'explode',\n duration: 1000\n },\n show: {\n effect: 'explode',\n duration: 800\n },\n active: 0\n }); // Active tabs under ordering elements.\n\n jQuery('.nav-tab-wrapper').on('click', '.nav-tab', function (e) {\n jQuery('.nav-tab-wrapper .nav-tab').removeClass('nav-tab-active');\n jQuery(this).addClass('nav-tab-active');\n });\n /**\r\n * Check open/close of device options switcher.\r\n *\r\n * @version 4.0.0\r\n *\r\n * @fires click\r\n */\n\n jQuery('.rmp-device-switcher').on('click', function () {\n var isOpen = jQuery(this).hasClass('open');\n\n if (isOpen) {\n jQuery(this).removeClass('open');\n } else {\n jQuery('.rmp-device-switcher').removeClass('open');\n jQuery(this).addClass('open');\n }\n });\n /**\r\n * Change the option when select a device.\r\n *\r\n * @version 4.0.0\r\n *\r\n * @fires click\r\n */\n\n jQuery('.rmp-device-switcher li').on('click', function () {\n var selectedDevice = jQuery(this).attr('data-device');\n var firstDevice = jQuery('.rmp-device-switcher li:first-child').attr('data-device');\n\n if (selectedDevice != firstDevice) {\n activeDeviceOptions(selectedDevice);\n\n if ('desktop' == selectedDevice) {\n jQuery('#rmp-preview-desktop').trigger('click');\n } else if ('tablet' == selectedDevice) {\n jQuery('#rmp-preview-tablet').trigger('click');\n } else {\n jQuery('#rmp-preview-mobile').trigger('click');\n }\n }\n });\n /**\r\n * Active all the device options in editor.\r\n *\r\n * @version 4.0.0;\r\n * @param {string} selectedDevice This device name which is active.\r\n */\n\n function activeDeviceOptions(selectedDevice) {\n var firstDevice = jQuery('.rmp-device-switcher li:first-child').attr('data-device');\n var selectedIcon = jQuery('.rmp-device-switcher li[data-device=' + selectedDevice + ']').html();\n var firstIcon = jQuery('.rmp-device-switcher li:first-child').html();\n jQuery('.rmp-device-switcher li').each(function () {\n if (jQuery(this).attr('data-device') === selectedDevice) {\n jQuery(this).html(firstIcon);\n jQuery(this).attr('data-device', firstDevice);\n } else if (jQuery(this).attr('data-device') === firstDevice) {\n jQuery(this).html(selectedIcon);\n jQuery(this).attr('data-device', selectedDevice);\n }\n });\n }\n /**\r\n * Close the device switcher when mouseup other places.\r\n *\r\n * @version 4.0.0\r\n *\r\n * @fires mouseup\r\n */\n\n\n jQuery(document).on('mouseup', function (event) {\n var target = event.target;\n var deviceSwitcher = jQuery('.rmp-device-switcher');\n\n if (!deviceSwitcher.is(target) && 0 === deviceSwitcher.has(target).length) {\n deviceSwitcher.removeClass('open');\n }\n });\n /**\r\n * Active preview as per clicked device.\r\n *\r\n * @version 4.0.0\r\n *\r\n * @fires Click\r\n */\n\n jQuery('#rmp-editor-footer .rmp-preview-device-wrapper').on('click', 'button', function (e) {\n jQuery('#rmp-editor-footer').find('.rmp-preview-device-wrapper button').removeClass('active');\n jQuery('#rmp-editor-footer').find('.rmp-preview-device-wrapper button').attr('aria-pressed', 'false');\n jQuery(this).addClass('active');\n jQuery(this).attr('aria-pressed', 'true');\n var device = jQuery(this).data('device');\n var deviceEditor = jQuery('#rmp-editor-wrapper');\n var allClasses = deviceEditor.attr('class').split(' ');\n allClasses.forEach(function (value) {\n if (value.includes('rmp-preview-')) {\n deviceEditor.removeClass(value);\n }\n });\n deviceEditor.addClass('rmp-preview-' + device);\n activeDeviceOptions(device);\n });\n /**\r\n * Instantiate the accordion elements.\r\n * @version 4.0.0\r\n */\n\n jQuery('.rmp-accordion-container,.rmp-sub-accordion-container').accordion({\n collapsible: true,\n heightStyle: 'content',\n animate: 200,\n active: 0\n });\n /**\r\n * Instantiate the draggable and sortable menu item order elements.\r\n * \t@version 4.0.0\r\n */\n\n jQuery('#rmp-menu-ordering-items').accordion().sortable({\n placeholder: 'sortable-placeholder',\n opacity: 0.9,\n cursor: 'move',\n delay: 150,\n forcePlaceholderSize: true,\n active: false\n });\n /**\r\n * Stop propagating when click on item control element.\r\n */\n\n jQuery('#tab-container .item-controls, #tab-header-bar .item-controls').on('click', function (event) {\n event.stopPropagation();\n });\n /**\r\n * Show/Hide tooltip for option description.\r\n *\r\n * @version 4.0.0\r\n *\r\n * @fires click,mouseleave\r\n */\n\n jQuery('.rmp-tooltip-icon').on('click', function (e) {\n if (jQuery(this).hasClass('show-tooltip')) {\n return;\n } else {\n jQuery(this).addClass('show-tooltip');\n }\n\n var toolTipContents = jQuery(this).find('.rmp-tooltip-content');\n toolTipContents.css({\n 'left': e.pageX - toolTipContents.width() / 100 * 60,\n 'position': 'fixed',\n 'top': e.pageY - toolTipContents.height() - 10,\n 'bottom': 'unset'\n });\n toolTipContents.fadeIn();\n }).on('mouseleave', function () {\n jQuery(this).removeClass('show-tooltip');\n jQuery(this).find('.rmp-tooltip-content').fadeOut();\n });\n /**\r\n * Remove image from image picker\r\n *\r\n * @version 4.0.0\r\n *\r\n * @fires Click\r\n */\n\n jQuery('.rmp-image-picker ').on('click', '.rmp-image-picker-trash', function (e) {\n e.stopPropagation();\n e.preventDefault();\n jQuery(this).parent('.rmp-image-picker').siblings('input.rmp-image-url-input').val('');\n jQuery(this).parent('.rmp-image-picker').removeAttr('style');\n jQuery(this).remove();\n\n if (!jQuery('#rmp-editor-main').find('#rmp-menu-update-notification').length) {\n addUpdateNotification();\n }\n });\n /**\r\n * Show/Hide the theme uploader section in theme page.\r\n */\n\n jQuery('#rmp-upload-new-theme').on('click', function () {\n jQuery('#rmp-menu-library-import').toggleClass('hide');\n });\n /**\r\n * Hide theme uploader section when click on cancel.\r\n */\n\n jQuery('#rmp-menu-library-import-form').on('click', '.cancel', function (e) {\n jQuery('#rmp-menu-library-import').addClass('hide');\n });\n /**\r\n * Upload the theme file using dropzone.\r\n *\r\n * @version 4.0.0\r\n */\n\n jQuery('#rmp-menu-library-import-form').dropzone({\n clickable: true,\n acceptedFiles: '.zip',\n uploadMultiple: false,\n success: function success(file, response) {\n location.reload();\n },\n totaluploadprogress: function totaluploadprogress() {\n jQuery('.rmp-page-loader').css('display', 'flex');\n }\n });\n /**\r\n * Open theme options in editor footer.\r\n */\n\n jQuery('#rmp-theme-action').on('click', function (e) {\n jQuery('#rmp-footer-theme-options').toggleClass('open');\n });\n /**\r\n * Show/Hide the save theme wizard.\r\n */\n\n jQuery('.rmp-theme-save-button, #rmp-menu-save-theme-wizard .rmp-dialog-wrap .close').on('click', function (e) {\n jQuery('#rmp-menu-save-theme-wizard').toggle();\n });\n /**\r\n * Delete the theme from theme page.\r\n */\n\n jQuery('.rmp-theme-delete').on('click', function (e) {\n e.preventDefault();\n /** Ask for delete confirmation */\n\n var isConfirm = confirm('Are you sure, You want to delete this theme ?');\n\n if (!isConfirm) {\n return;\n } //Show the loader on deleting theme.\n\n\n var current_theme = jQuery(this);\n current_theme.append('<span class=\"spinner is-active\"></span>');\n var themeName = jQuery(this).attr('data-theme');\n var themeType = jQuery(this).attr('data-theme-type').toLowerCase();\n jQuery.ajax({\n url: rmpObject.ajaxURL,\n data: {\n 'action': 'rmp_theme_delete',\n 'ajax_nonce': rmpObject.ajax_nonce,\n 'theme_name': themeName,\n 'theme_type': themeType\n },\n type: 'POST',\n dataType: 'json',\n error: function error(_error4) {\n console.log(_error4.statusText);\n },\n success: function success(response) {\n current_theme.find('.spinner').removeClass('is-active');\n\n if (response.success) {\n location.reload();\n } else {\n alert(response.data.message);\n }\n }\n });\n });\n /**\r\n * Apply the selected theme in current active menu in editor.\r\n *\r\n * @version 4.0.0\r\n *\r\n * @fires click\r\n */\n\n jQuery(document).on('click', '.rmp-theme-apply', function (e) {\n //Show the overlay with loader.\n jQuery('.rmp-page-loader').css('display', 'flex');\n jQuery.ajax({\n url: rmpObject.ajaxURL,\n data: {\n 'action': 'rmp_theme_apply',\n 'ajax_nonce': rmpObject.ajax_nonce,\n 'theme_name': jQuery(this).attr('theme-name'),\n 'theme_type': jQuery(this).attr('theme-type').toLowerCase(),\n 'menu_id': jQuery('#menu_id').val(),\n 'menu_to_use': jQuery('#rmp-menu-to-use').val()\n },\n type: 'POST',\n dataType: 'json',\n error: function error(_error5) {\n console.log(_error5.statusText);\n jQuery('.rmp-page-loader').hide();\n },\n success: function success(response) {\n if (response.success) {\n location.reload();\n } else {\n jQuery('.rmp-page-loader').hide();\n alert(response.data.message);\n }\n }\n });\n });\n /**\r\n * Save the global settings on click.\r\n * \r\n * @version 4.0.0\r\n * \r\n * @fires click\r\n */\n\n jQuery('.rmp-save-global-settings-button').on('click', function (e) {\n e.preventDefault();\n jQuery.ajax({\n url: rmpObject.ajaxURL,\n data: {\n 'action': 'rmp_save_global_settings',\n 'ajax_nonce': rmpObject.ajax_nonce,\n 'form': jQuery('#rmp-global-settings').serialize()\n },\n type: 'POST',\n dataType: 'json',\n beforeSend: function beforeSend() {\n jQuery(this).prop('disabled', true);\n jQuery('.spinner').addClass('is-active');\n },\n error: function error(_error6) {\n console.log('Internal Error !' + _error6);\n },\n success: function success(response) {\n jQuery('.spinner').removeClass('is-active');\n jQuery(this).prop('disabled', false);\n }\n });\n });\n /**\r\n * Initiate multiple selectize option of editor.\r\n */\n\n jQuery('#rmp-keyboard-shortcut-close-menu,#rmp-keyboard-shortcut-open-menu').selectize({\n maxItems: 2,\n plugins: ['remove_button']\n });\n /**\r\n * Event to linked the group inputs.\r\n * \r\n * @fires Click\r\n */\n\n jQuery(document).on('click', 'button.rmp-group-input-linked', function () {\n jQuery(this).toggleClass('is-linked');\n });\n /**\r\n * Event to type on all sibblings input if linked.\r\n * \r\n * @fires keyup\r\n */\n\n jQuery(document).on('keyup', 'input.rmp-group-input', function (event) {\n var pressedKeys = this.value.toLocaleLowerCase();\n var parent = jQuery(this).parents('.rmp-input-group-control');\n var isLinked = parent.find('.is-linked');\n\n if (isLinked.length) {\n parent.find('input.rmp-group-input').val(pressedKeys);\n } else {\n jQuery(this).val(pressedKeys);\n }\n });\n /**\r\n * Function to add the notification and update button.\r\n */\n\n function addUpdateNotification() {\n if (!jQuery('#rmp-editor-main').find('#rmp-menu-update-notification').length) {\n jQuery('#rmp-editor-main').prepend('<div id=\"rmp-menu-update-notification\" class=\"rmp-order-item rmp-order-item-description\">' + '<span> <span class=\"rmp-font-icon dashicons dashicons-warning \"></span> Update Required </span>' + '<a href=\"javascript:void(0)\" id=\"rmp-menu-quick-update-button\">UPDATE</a>' + '</div>');\n }\n }\n\n jQuery('form#rmp-editor-form').on('keyup change paste', 'input, select, textarea, radio, checkbox', function () {\n if (!jQuery(this).hasClass('no-updates')) {\n addUpdateNotification();\n }\n });\n jQuery(document).on('click', '#rmp-icon-dialog-select,.media-button-select,.rmp-icon-picker,.rmp-image-picker', function () {\n if (!jQuery('#rmp-editor-main').find('#rmp-menu-update-notification').length) {\n addUpdateNotification();\n }\n });\n /**\r\n * Event to download exported menu settings as json file.\r\n *\r\n * @version 4.0.0 \r\n */\n\n jQuery('#rmp-export-menu-button').on('click', function (e) {\n e.preventDefault();\n var menu_id = jQuery('#rmp_export_menu_list').val();\n jQuery.ajax({\n url: rmpObject.ajaxURL,\n data: {\n 'action': 'rmp_export_menu',\n 'ajax_nonce': rmpObject.ajax_nonce,\n 'menu_id': menu_id\n },\n type: 'POST',\n dataType: 'json',\n beforeSend: function beforeSend() {\n jQuery('#rmp-export-menu-button').prop('disabled', true);\n },\n error: function error(_error7) {\n console.log(_error7.statusText);\n jQuery('#rmp-export-menu-button').prop('disabled', false);\n },\n success: function success(response) {\n jQuery('#rmp-export-menu-button').prop('disabled', false);\n\n if (response.data) {\n var menu_name = jQuery('#rmp_export_menu_list').children(\":selected\").text().trim().toLocaleLowerCase().split(' ').join('-');\n download_file(response.data, menu_name + '.json', 'application/json');\n }\n }\n });\n });\n /**\r\n * Function to download the content as file.\r\n * \r\n * @since 4.0.0\r\n * \r\n * @param {String} content Contents for file\r\n * @param {String} name Name of the file. \r\n * @param {String} type File type\r\n */\n\n function download_file(content, name, type) {\n var link = document.body.appendChild(document.createElement('a'));\n var file = new Blob([content], {\n type: type\n });\n link.href = URL.createObjectURL(file);\n link.download = name;\n link.click();\n }\n /**\r\n * Event to download exported menu settings as json file.\r\n *\r\n * @version 4.0.0 \r\n */\n\n\n jQuery('#rmp-import-menu-button').on('click', function (e) {\n e.preventDefault();\n var menu_id = jQuery('#rmp_import_menu_list').val();\n\n if (!menu_id) {\n alert('Please create menu first ! ');\n return;\n }\n\n var file_data = jQuery('#rmp_input_import_file')[0].files[0];\n\n if (!file_data) {\n alert('Choose export file ! ');\n return;\n }\n\n var form_data = new FormData();\n form_data.append('file', file_data);\n form_data.append('ajax_nonce', rmpObject.ajax_nonce);\n form_data.append('menu_id', menu_id);\n form_data.append('action', 'rmp_import_menu');\n jQuery.ajax({\n url: rmpObject.ajaxURL,\n data: form_data,\n type: 'POST',\n cache: false,\n contentType: false,\n processData: false,\n dataType: 'json',\n beforeSend: function beforeSend() {\n jQuery('#rmp-import-menu-button').prop('disabled', true);\n },\n error: function error(_error8) {\n console.log(_error8.statusText);\n jQuery('#rmp-import-menu-button').prop('disabled', false);\n },\n success: function success(response) {\n jQuery('#rmp-import-menu-button').prop('disabled', false);\n noticeClass = 'notice-error';\n\n if (response.success) {\n noticeClass = 'notice-success';\n jQuery('#rmp_input_import_file').val('');\n }\n\n jQuery('#rmp-global-settings').before('<div class=\"notice ' + noticeClass + ' settings-error is-dismissible\"> <p>' + response.data.message + '</p></div>');\n setTimeout(function () {\n jQuery('#rmp-global-settings').parent().find('.notice').remove();\n }, 3000);\n }\n });\n });\n /**\r\n * Function to manage menu container animation options.\r\n *\r\n * @param {String} optionValue \r\n */\n\n function updateMenuContainerAnimationOptions(optionValue) {\n if ('push' === optionValue) {\n jQuery('#rmp-page-wrapper').parents('.rmp-input-control-wrapper').fadeIn();\n } else {\n jQuery('#rmp-page-wrapper').parents('.rmp-input-control-wrapper').fadeOut();\n }\n\n if ('fade' === optionValue) {\n jQuery('#rmp-menu-appear-from option[value=\"top\"]').hide();\n jQuery('#rmp-menu-appear-from option[value=\"bottom\"]').hide();\n } else {\n jQuery('#rmp-menu-appear-from option[value=\"top\"]').show();\n jQuery('#rmp-menu-appear-from option[value=\"bottom\"]').show();\n }\n } // Menu container animation type and their options.\n\n\n updateMenuContainerAnimationOptions(jQuery('#rmp-animation-type').val());\n jQuery('#rmp-editor-wrapper').on('change', '#rmp-animation-type', function (e) {\n var optionValue = jQuery(this).val();\n updateMenuContainerAnimationOptions(optionValue);\n });\n /**\r\n * Event to back on home page under preview screen.\r\n *\r\n * @since 4.1.0\r\n *\r\n * @fires click\r\n *\r\n * @return void\r\n */\n\n jQuery('#rmp-preview-wrapper').on('click', function () {\n var url = window.location.href;\n url = url.substring(0, url.indexOf('wp-admin')) + '?rmp_preview_mode=true';\n jQuery('#rmp-preview-iframe-loader').show();\n jQuery('#rmp-preview-iframe').attr('src', url);\n });\n /** Call ajax to hide admin notice permanent. */\n\n jQuery('.notice-responsive-menu').on('click', '.notice-dismiss', function (event) {\n event.preventDefault();\n jQuery.ajax({\n type: \"POST\",\n url: rmpObject.ajaxURL,\n data: 'action=rmp_upgrade_admin_notice_dismiss'\n });\n });\n});\n\n//# sourceURL=webpack:///./assets/admin/js/rmp-admin.js?")},"./assets/admin/js/rmp-editor.js":function(module,exports){eval("/**\r\n * This file container the editor multi level features.\r\n *\r\n * @version 4.0.0\r\n *\r\n * @type {Object}\r\n */\nvar rmpEditor = {\n editorSidebar: '#rmp-editor-wrapper',\n sidebarDrawer: 'button.collapse-sidebar',\n mainForm: '#rmp-editor-form',\n editorContainer: '#rmp-editor-main',\n topParentNav: '#rmp-editor-nav',\n topParentTab: '#rmp-editor-pane',\n childTabs: '.rmp-accordions',\n tabItem: 'li.rmp-tab-item',\n titleLogo: '.rmp-editor-header-logo',\n closeButton: '.rmp-editor-header-close',\n titleText: '.rmp-editor-header-title',\n backButton: '.rmp-editor-header-back',\n tabId: null,\n level: 0,\n triggerBack: function triggerBack() {\n this.level--;\n parentId = jQuery('#' + this.tabId).attr('aria-parent');\n jQuery('#' + parentId).show();\n var title = jQuery('#' + parentId).attr('aria-label');\n this.updateHeader(title);\n jQuery('#' + this.tabId).hide();\n this.tabId = parentId;\n },\n updatePanel: function updatePanel(current) {\n this.tabId = current.attr('aria-owns');\n jQuery('#' + this.tabId).show();\n parentId = current.parent('ul').parent('div').attr('id');\n jQuery('#' + this.tabId).attr('aria-parent', parentId);\n jQuery('#' + parentId).hide();\n },\n updateHeader: function updateHeader(title) {\n if (0 == this.level) {\n jQuery(this.titleLogo).find('img').show();\n jQuery(this.closeButton).show();\n jQuery(this.backButton).hide();\n } else if (1 == this.level) {\n jQuery(this.backButton).css('display', 'flex');\n jQuery(this.titleLogo).find('img').hide();\n jQuery(this.closeButton).hide();\n }\n\n jQuery(this.titleText).text(title);\n },\n init: function init() {\n var self = this; // Move on next panel when click on item.\n\n jQuery(self.editorContainer).on('click', self.tabItem, function (e) {\n e.stopPropagation();\n e.preventDefault();\n current = jQuery(this);\n self.level++;\n self.updateHeader(current.text());\n self.updatePanel(current);\n }); // Back from inner panel when click on back button.\n\n jQuery(self.backButton).on('click', function (e) {\n e.stopPropagation();\n self.triggerBack();\n }); // Open/Close the editor setting sidebar.\n\n jQuery(self.sidebarDrawer).on('click', function (e) {\n jQuery(self.editorSidebar).toggleClass('expanded collapsed');\n });\n }\n};\nrmpEditor.init();\n\n//# sourceURL=webpack:///./assets/admin/js/rmp-editor.js?")},"./assets/admin/js/rmp-icon.js":function(module,exports){eval("/**\r\n * This file contain the script to handle the icon wizard and it's operation.\r\n *\r\n * @version 4.0.0\r\n */\njQuery(document).ready(function () {\n var RMP_Icon = {\n iconSelect: '#rmp-icon-dialog-select',\n iconContainer: '.rmp-menu-icons-dialog',\n clearSelector: '#rmp-icon-dialog-clear',\n closeSelector: '.rmp-menu-icons-dialog .rmp-dialog-header button.close',\n clear: function clear() {\n var self = this;\n jQuery(self.clearSelector).on('click', function () {\n jQuery(self.iconContainer).find('input').prop('checked', false);\n });\n },\n closeDialog: function closeDialog() {\n var self = this;\n jQuery(self.closeSelector).on('click', function () {\n jQuery(self.iconContainer).hide();\n });\n },\n openDialog: function openDialog(iconChooser) {\n var self = this;\n jQuery(iconChooser).on('click', function (e) {\n e.stopPropagation();\n jQuery(self.iconContainer).show();\n jQuery(self.iconSelect).attr('data-click', jQuery(e.target).attr('id'));\n });\n },\n getIconElementWrap: function getIconElementWrap(icon_class) {\n if (icon_class.includes('material-icons')) {\n icon_class = icon_class.replace('material-icons', '');\n return '<span class=\"rmp-font-icon material-icons\">' + icon_class + '</span>';\n }\n\n return '<span class=\"rmp-font-icon ' + icon_class + ' \"></span>';\n },\n removeIcon: function removeIcon(iconChooser) {\n jQuery(iconChooser).on('click', '.rmp-icon-picker-trash', function (e) {\n e.preventDefault();\n e.stopPropagation();\n jQuery(this).parent('.rmp-icon-picker').siblings('input.rmp-icon-hidden-input').val('');\n jQuery(this).siblings('.rmp-font-icon').remove();\n jQuery(this).parent('.rmp-icon-picker').removeAttr('data-icon');\n jQuery(this).remove();\n\n if (!jQuery('#rmp-editor-main').find('#rmp-menu-update-notification').length) {\n jQuery('#rmp-editor-main').prepend('<div id=\"rmp-menu-update-notification\" class=\"rmp-order-item rmp-order-item-description\">' + '<span> <span class=\"rmp-font-icon dashicons dashicons-warning \"></span> Update Required </span>' + '<a href=\"javascript:void(0)\" id=\"rmp-menu-quick-update-button\">UPDATE</a>' + '</div>');\n }\n });\n },\n getIcon: function getIcon() {\n var self = this;\n jQuery(document).on('click', this.iconSelect, function () {\n icon_class = jQuery(self.iconContainer).find('input:checked').val();\n clicker = '#' + jQuery(self.iconSelect).attr('data-click');\n icon_wrap = self.getIconElementWrap(icon_class);\n jQuery(clicker).find('.rmp-font-icon').remove();\n jQuery(clicker).prev('input.rmp-icon-hidden-input').val(icon_wrap);\n jQuery(clicker).append(icon_wrap);\n jQuery(clicker).attr('data-icon', true);\n jQuery(clicker).find('.rmp-icon-picker-trash').remove();\n jQuery(clicker).append('<i class=\"rmp-icon-picker-trash dashicons dashicons-trash\" aria-hidden=\"true\"></i>');\n jQuery(self.iconSelect).removeAttr('data-click');\n jQuery(self.closeSelector).click();\n jQuery(clicker).prev('input').first().focus();\n });\n },\n init: function init(iconChooser) {\n this.openDialog(iconChooser);\n this.removeIcon(iconChooser);\n this.getIcon();\n this.clear();\n this.closeDialog();\n jQuery('#rmp-icon-search').on('keyup', _.debounce(this.searchIcon, 500));\n jQuery('#rmp-icon-search').on('keyup', function () {\n var query_string = this.value.toLocaleLowerCase();\n\n if (query_string.length) {\n if (!jQuery('#rmp-icon-search-typing-message').length) {\n jQuery(this).after('<span id=\"rmp-icon-search-typing-message\"> Waiting for more keystrokes... </span>');\n } else {\n jQuery('#rmp-icon-search-typing-message').html('Waiting for more keystrokes...');\n }\n }\n });\n /**\r\n * Create menu item icon selector.\r\n */\n\n jQuery(document).on('click', '.delete-menu-item-icon', function () {\n jQuery(this).closest('.rmp-menu-item-icon-container').remove();\n });\n },\n searchIcon: function searchIcon(e) {\n jQuery('#rmp-icon-search-typing-message').html('Please wait moment..');\n var query_string = this.value.toLocaleLowerCase();\n var activeTab = jQuery('.rmp-menu-icons-dialog').find('.nav-tab-active');\n\n if (!activeTab.length) {\n activeTab = jQuery('.rmp-menu-icons-dialog').find('.nav-tab').first();\n }\n\n icon_container = activeTab.attr('href');\n var icon_selector = jQuery(icon_container + ' .font-icon');\n var is_exist = false;\n icon_selector.each(function () {\n var icon_label = jQuery(this).children('input').val().toLocaleLowerCase();\n\n if (icon_label.includes(query_string)) {\n jQuery(this).show();\n is_exist = true;\n } else {\n jQuery(this).hide();\n }\n });\n\n if (is_exist) {\n jQuery('#rmp-icon-search-typing-message').html('Done, Check results..');\n } else {\n jQuery('#rmp-icon-search-typing-message').html('Sorry, Not found..');\n }\n }\n };\n RMP_Icon.init('.rmp-icon-picker');\n});\n\n//# sourceURL=webpack:///./assets/admin/js/rmp-icon.js?")},"./assets/admin/js/rmp-menu-wizard.js":function(module,__webpack_exports__,__webpack_require__){"use strict";eval("__webpack_require__.r(__webpack_exports__);\n/**\r\n * This is js hook scripts file for responsive menu.\r\n *\r\n * @file This files defines the rmpNewMenuWizard object.\r\n * @author ExpressTech System.\r\n *\r\n * @since 4.1.0\r\n *\r\n * @package responsive-menu-pro\r\n */\n\n/**\r\n * Hooks class.\r\n *\r\n * @type {Object}\r\n *\r\n * @since 4.1.0\r\n */\n\nvar rmpMenuWizard = {\n /**\r\n * Initialize.\r\n *\r\n * @return {void}\r\n */\n init: function init() {\n this.setProps();\n },\n\n /**\r\n * Set properties and selectors.\r\n *\r\n * @return {void}\r\n */\n setProps: function setProps() {\n var _this = this;\n\n //Assign wizard container element id.\n var menuWizardContainer = jQuery('#rmp-new-menu-wizard'); //Open new create menu wizard on click event.\n\n jQuery(document).on('click', 'a.page-title-action', function (e) {\n e.preventDefault();\n menuWizardContainer.show();\n }); //Close the new menu wizard.\n\n jQuery('#rmp-new-menu-wizard .rmp-dialog-header button.close').on('click', function () {\n menuWizardContainer.hide();\n }); //Show/Hide the page selection input control.\n\n menuWizardContainer.on('change', '.rmp-menu-display-option', function (e) {\n var optionValue = jQuery(this).val();\n\n if ('exclude-pages' === optionValue || 'include-pages' === optionValue) {\n jQuery('#rmp-menu-page-selector').show();\n return;\n }\n\n jQuery('#rmp-menu-page-selector').hide();\n }); //Show/Hide change theme wizard in customizer page.\n\n jQuery('.rmp-theme-change-button').on('click', function (e) {\n menuWizardContainer.toggle();\n }); //Multi step form event for next button.\n\n jQuery('#rmp-menu-next-step').on('click', function () {\n _this.nextSection();\n }); //Multi step form event for top item label.\n\n jQuery('li.rmp-new-menu-step').on('click', function (e) {\n var index = jQuery(e.currentTarget).index();\n\n _this.goToSection(index);\n }); //Call ajax to save the new create menu.\n\n jQuery('#rmp-create-new-menu').on('click', function (e) {\n e.preventDefault();\n var menuName = jQuery('#rmp-menu-name');\n var themeName = jQuery('.rmp-theme-option:checked').val();\n\n if (themeName == undefined) {\n themeName = '';\n }\n\n jQuery.ajax({\n url: rmpObject.ajaxURL,\n data: {\n 'action': 'rmp_create_new_menu',\n 'ajax_nonce': rmpObject.ajax_nonce,\n 'menu_name': menuName.val(),\n 'menu_to_hide': jQuery('#rmp-hide-menu').val(),\n 'menu_to_use': jQuery('#rmp-menu-to-use').val(),\n 'menu_show_on_pages': jQuery('#rmp-menu-display-on-pages').val(),\n 'menu_show_on': jQuery('.rmp-menu-display-option').val(),\n 'menu_theme': themeName,\n 'theme_type': jQuery('.rmp-theme-option:checked').attr('theme-type')\n },\n type: 'POST',\n dataType: 'json',\n beforeSend: function beforeSend() {\n jQuery(e.currentTarget).prop('disabled', true);\n jQuery('.spinner').addClass('is-active');\n },\n error: function error(_error) {\n console.log('Internal Error !');\n jQuery('#rmp-create-new-menu').prop('disabled', false);\n jQuery('.spinner').removeClass('is-active');\n },\n success: function success(response) {\n jQuery('.spinner').removeClass('is-active');\n jQuery('#rmp-create-new-menu').prop('disabled', false);\n\n if (response.success) {\n window.location.href = response.data.customize_url;\n } else {\n alert(response.data.message);\n }\n }\n });\n }); //Ajax call to upload the theme.\n\n jQuery('#rmp-theme-upload').on('click', function (e) {\n e.preventDefault();\n var formData = new FormData();\n var file = jQuery('#rmp_menu_theme_zip').prop('files')[0];\n formData.append('file', file);\n formData.append('action', 'rmp_menu_theme_upload');\n formData.append('ajax_nonce', rmpObject.ajax_nonce);\n jQuery.ajax({\n url: rmpObject.ajaxURL,\n data: formData,\n type: 'POST',\n processData: false,\n contentType: false,\n dataType: 'json',\n success: function success(response) {\n jQuery('#rmp_menu_theme_zip').val('');\n alert(response.data.message);\n\n if (response.data.html) {\n jQuery('#rmp-new-menu-wizard').find('#tabs-1').html(response.data.html);\n jQuery('#rmp-menu-library-import').addClass('hide');\n }\n }\n });\n }); //Ajax call to check the recent changes the theme api.\n\n jQuery('.rmp-call-theme-api-button').on('click', function (e) {\n if (!jQuery(e.currentTarget).hasClass('rmp-call-theme-api-button')) {\n return;\n }\n\n jQuery('#rmp-new-menu-wizard').find('.rmp-page-loader').css('display', 'flex');\n jQuery.ajax({\n url: rmpObject.ajaxURL,\n data: {\n 'action': 'rmp_call_theme_api',\n 'ajax_nonce': rmpObject.ajax_nonce\n },\n type: 'POST',\n dataType: 'json',\n error: function error(_error2) {\n jQuery('#rmp-new-menu-wizard').find('.rmp-page-loader').hide();\n jQuery('#rmp-new-menu-wizard').find('#tabs-2 .rmp_theme_grids').html('Internal Error !');\n },\n success: function success(response) {\n if (response.data.html) {\n jQuery('#rmp-new-menu-wizard').find('#tabs-2 .rmp_theme_grids').html(response.data.html);\n jQuery(e.currentTarget).removeClass('rmp-call-theme-api-button');\n }\n }\n });\n });\n },\n\n /**\r\n * Jump to the next section of wizard.\r\n *\r\n * @return {void}\r\n */\n nextSection: function nextSection() {\n var currectSectionIndex = jQuery('div.rmp-menu-section.current').index();\n this.goToSection(currectSectionIndex + 1);\n },\n\n /**\r\n * Show the indexed section in wizard.\r\n *\r\n * @return {void}\r\n */\n goToSection: function goToSection(currectSectionIndex) {\n if (1 <= currectSectionIndex) {\n jQuery('#rmp-create-new-menu').show();\n jQuery('#rmp-menu-next-step').hide();\n } else {\n jQuery('#rmp-create-new-menu').hide();\n jQuery('#rmp-menu-next-step').show();\n }\n\n jQuery('div.rmp-menu-section').eq(currectSectionIndex).addClass('current').siblings().removeClass('current');\n jQuery('li.rmp-new-menu-step').eq(currectSectionIndex).addClass('current').siblings().removeClass('current');\n }\n};\nrmpMenuWizard.init();\n/* harmony default export */ __webpack_exports__[\"default\"] = (rmpMenuWizard);\n\n//# sourceURL=webpack:///./assets/admin/js/rmp-menu-wizard.js?")},"./assets/admin/js/rmp-preview.js":function(module,exports){eval("/**\r\n * This is preview scripts file for responsive menu customizer.\r\n *\r\n * @file This files defines the rmpHook object.\r\n * @author ExpressTech System.\r\n * @type {Object}\r\n *\r\n * @since 4.0.0\r\n *\r\n * @package responsive-menu-pro\r\n */\n\n/**\r\n * Hooks class.\r\n *\r\n * @type {Object}\r\n *\r\n * @since 4.0.0\r\n */\nvar rmpHook = {\n hooks: [],\n isBreak: false,\n\n /**\r\n * Function to register the hook.\r\n *\r\n * @since 4.0.0\r\n *\r\n * @param String name Hook Name.\r\n * @param function callback Associated function.\r\n */\n register: function register(name, callback) {\n if ('undefined' == typeof rmpHook.hooks[name]) {\n rmpHook.hooks[name] = [];\n }\n\n rmpHook.hooks[name].push(callback);\n },\n\n /**\r\n * Function to call the hook.\r\n *\r\n * @since 4.0.0\r\n *\r\n * @param String name Hook Name.\r\n * @param function params Paramter list.\r\n */\n call: function call(name, params) {\n if ('undefined' != typeof rmpHook.hooks[name]) {\n for (var i = 0; i < rmpHook.hooks[name].length; ++i) {\n var output = rmpHook.hooks[name][i](params);\n\n if (false == output) {\n rmpHook.isBreak = true;\n return false;\n }\n\n return output;\n }\n }\n\n return true;\n }\n};\n/**\r\n * Register function to color the menu elements.\r\n * \r\n * @since 4.0.0\r\n * \r\n * @param {Object} args List of inputs.\r\n * @return {String}\r\n */\n\nrmpHook.register('rmp_color_style', function (args) {\n if (!args) {\n return false;\n } // Set the state/pseudo class.\n\n\n if ('hover' == args.state) {\n args.outputSelector = args.outputSelector + ':hover';\n } else if ('placeholder' == args.state) {\n args.outputSelector = args.outputSelector + '::placeholder';\n } else if ('before' == args.state) {\n args.outputSelector = args.outputSelector + '::before';\n } else if ('after' == args.state) {\n args.outputSelector = args.outputSelector + '::after';\n } //Prepare css string and return.\n\n\n return args.outputSelector + '{ ' + args.attr + ' : ' + args.value + ';}';\n});\n/**\r\n * rmpPreview class\r\n * \r\n * @since 4.0.0\r\n * \r\n * @type {Object}\r\n */\n\nwindow.RMP_Preview = {\n iframe: '#rmp-preview-iframe',\n menuId: jQuery('#menu_id').val(),\n mobile_breakpoint: jQuery('#rmp-menu-mobile-breakpoint').val() + 'px',\n tablet_breakpoint: jQuery('#rmp-menu-tablet-breakpoint').val() + 'px',\n active_device: jQuery('#rmp_device_mode'),\n menuContainer: '#rmp-container-' + self.menuId,\n onTyping: function onTyping(inputSelector, outputSelector, type) {\n var meta = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : '';\n var self = this;\n var iframe = jQuery(self.iframe);\n jQuery(inputSelector).on('keyup change paste', function () {\n switch (type) {\n case 'border-radius':\n var value = jQuery(this).val();\n css = outputSelector + '{ border-radius : ' + value + 'px;}';\n self.inlineCssInjector(css);\n break;\n\n case 'section-padding':\n var value = jQuery(this).val();\n var is_linked = jQuery(this).parents('.rmp-input-group-control').find('.rmp-group-input-linked').hasClass('is-linked');\n var attr = 'padding';\n\n if (!is_linked) {\n pos = jQuery(this).attr('data-input');\n attr = attr + '-' + pos;\n }\n\n css = outputSelector + '{ ' + attr + ' : ' + value + ';}';\n self.inlineCssInjector(css);\n break;\n\n case 'trigger-text':\n if (iframe.contents().find(outputSelector).length) {\n iframe.contents().find(outputSelector).html(this.value);\n } else {\n iframe.contents().find('#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-box').before('<div class=\"rmp-trigger-label rmp-trigger-label-top\"><span class=\"rmp-trigger-text\">\"' + this.value + '\"</span></div>');\n }\n\n break;\n\n case 'trigger-text-open':\n if (iframe.contents().find(outputSelector).length) {\n iframe.contents().find(outputSelector).html(this.value);\n } else {\n iframe.contents().find('#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-box').before('<div class=\"rmp-trigger-label rmp-trigger-label-top\"><span class=\"rmp-trigger-text-open\">\"' + this.value + '\"</span></div>');\n }\n\n break;\n\n case 'text':\n iframe.contents().find(outputSelector).html(this.value);\n break;\n\n case 'placeholder':\n iframe.contents().find(outputSelector).attr('placeholder', this.value);\n break;\n\n case 'href':\n iframe.contents().find(outputSelector).attr('href', this.value);\n break;\n\n case 'font-size':\n var unit = jQuery(this).next('.is-unit').val();\n\n if (!unit.length) {\n unit = 'px';\n }\n\n var value = jQuery(this).val();\n css = outputSelector + '{ font-size : ' + (value + unit) + ';}';\n\n if (jQuery(this).attr('multi-device')) {\n css = self.mediaQuery(css);\n }\n\n self.inlineCssInjector(css);\n break;\n\n case 'width':\n var unit = jQuery(this).next('.is-unit').val();\n\n if (!unit) {\n unit = 'px';\n }\n\n css = outputSelector + '{ width : ' + (this.value + unit) + ';}';\n self.inlineCssInjector(css);\n break;\n\n case 'height':\n var unit = jQuery(this).next('.is-unit').val();\n\n if (!unit.length) {\n unit = 'px';\n }\n\n css = outputSelector + '{ height : ' + (this.value + unit) + ';}';\n\n if (jQuery(this).attr('multi-device')) {\n css = self.mediaQuery(css);\n }\n\n self.inlineCssInjector(css);\n break;\n\n case 'line-height':\n var unit = jQuery(this).next('.is-unit').val();\n\n if (!unit.length) {\n unit = 'px';\n }\n\n css = outputSelector + '{ line-height : ' + (this.value + unit) + ';}';\n\n if (jQuery(this).attr('multi-device')) {\n css = self.mediaQuery(css);\n }\n\n self.inlineCssInjector(css);\n break;\n\n case 'min-width':\n var unit = jQuery(this).next('.is-unit').val();\n\n if (!unit.length) {\n unit = 'px';\n }\n\n css = outputSelector + '{ min-width : ' + (this.value + unit) + ';}';\n self.inlineCssInjector(css);\n break;\n\n case 'max-width':\n var unit = jQuery(this).next('.is-unit').val();\n\n if (!unit.length) {\n unit = 'px';\n }\n\n css = outputSelector + '{ max-width : ' + (this.value + unit) + ';}';\n self.inlineCssInjector(css);\n break;\n\n case 'trigger-side-position':\n side = jQuery('#rmp-menu-button-left-or-right').val();\n unit = jQuery('#rmp-menu-button-distance-from-side-unit').val();\n value = jQuery('#rmp-menu-button-distance-from-side').val();\n css = outputSelector + '{ ' + side + ' :' + (value + unit) + ' !important;}';\n self.inlineCssInjector(css);\n break;\n\n case 'top':\n value = jQuery(this).val();\n unit = jQuery('#rmp-menu-button-top-unit').val();\n css = outputSelector + '{ top :' + (value + unit) + ' !important;}';\n self.inlineCssInjector(css);\n break;\n\n case 'border-width':\n var unit = jQuery(this).next('.is-unit').val();\n\n if (!unit) {\n unit = 'px';\n }\n\n css = outputSelector + '{ border-width : ' + (this.value + unit) + ';}';\n self.inlineCssInjector(css);\n break;\n\n case 'padding':\n var unit = jQuery(this).next('.is-unit').val();\n\n if (!unit) {\n unit = 'px';\n }\n\n if (meta == 'lr') {\n css = outputSelector + '{ padding : 0 ' + (this.value + unit) + ';}';\n }\n\n self.inlineCssInjector(css);\n break;\n }\n });\n },\n bindImage: function bindImage(inputSelector, outputSelector, type) {\n var self = this;\n var iframe = jQuery(self.iframe);\n jQuery(document).on('click', inputSelector, function (e) {\n e.preventDefault();\n var button = jQuery(this),\n custom_uploader = wp.media({\n title: 'Select image',\n library: {\n type: 'image'\n },\n button: {\n text: 'Use this image'\n },\n multiple: false\n }).on('select', function () {\n var attachment = custom_uploader.state().get('selection').first().toJSON();\n jQuery(e.target).prev('input.rmp-image-url-input').val(attachment.url);\n jQuery(e.target).css('background-image', 'url(' + attachment.url + ')');\n jQuery(e.target).append('<i class=\"rmp-image-picker-trash dashicons dashicons-trash\" aria-hidden=\"true\"></i>');\n\n if (type == 'img-src') {\n iframe.contents().find(outputSelector).attr('src', attachment.url);\n } else if (type == 'background') {\n css = outputSelector + '{ background-image : url(' + attachment.url + ');}';\n self.inlineCssInjector(css);\n } else if (type == 'trigger-icon') {\n if (iframe.contents().find(outputSelector).length) {\n iframe.contents().find(outputSelector).attr('src', attachment.url);\n } else {\n iframe.contents().find('#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-box .responsive-menu-pro-inner').hide();\n iframe.contents().find('#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-box').append('<img class=\"rmp-trigger-icon rmp-trigger-icon-inactive\" src=\"' + attachment.url + '\"/>');\n }\n } else if (type == 'trigger-icon-open') {\n if (iframe.contents().find(outputSelector).length) {\n iframe.contents().find(outputSelector).attr('src', attachment.url);\n } else {\n iframe.contents().find('#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-box .responsive-menu-pro-inner').hide();\n iframe.contents().find('#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-box').append('<img class=\"rmp-trigger-icon rmp-trigger-icon-active\" src=\"' + attachment.url + '\"/>');\n }\n }\n }).open();\n });\n },\n toggleElements: function toggleElements(inputSelector, outputSelector) {\n var self = this;\n jQuery(inputSelector).on('change', function (e) {\n e.preventDefault();\n e.stopPropagation();\n var iframe = jQuery(self.iframe);\n\n if (iframe.contents().find(outputSelector).length) {\n if (jQuery(this).is(':checked')) {\n iframe.contents().find(outputSelector).fadeIn(500);\n } else {\n iframe.contents().find(outputSelector).fadeOut(500);\n }\n } else {\n e.preventDefault();\n var menuId = jQuery('#menu_id').val(),\n toggle_on = jQuery(this).data('toggle');\n jQuery.ajax({\n url: rmpObject.ajaxURL,\n data: {\n 'action': 'rmp_enable_menu_item',\n 'ajax_nonce': rmpObject.ajax_nonce,\n 'menu_id': menuId,\n 'menu_element': toggle_on\n },\n type: 'POST',\n dataType: 'json',\n beforeSend: function beforeSend() {\n jQuery(this).prop('disabled', true);\n jQuery('#iframe-spinner').show();\n },\n error: function error(_error) {\n console.log('Internal Error !');\n jQuery(this).prop('disabled', false);\n jQuery('#iframe-spinner').hide();\n },\n success: function success(response) {\n if (response.data.markup) {\n iframe.contents().find('#rmp-container-' + self.menuId).append(response.data.markup);\n self.orderMenuElements();\n }\n\n jQuery(this).prop('disabled', false);\n jQuery('#iframe-spinner').hide();\n }\n });\n }\n });\n },\n orderMenuElements: function orderMenuElements() {\n var list = [];\n var self = this;\n var iframeContents = jQuery(self.iframe).contents();\n jQuery('#tab-container .item-title').each(function () {\n var val = jQuery(this).text().toLocaleLowerCase().trim();\n\n if (val == 'title') {\n list.push(iframeContents.find(self.menuTitle));\n iframeContents.find(self.menuTitle).remove();\n } else if (val == 'search') {\n list.push(iframeContents.find(self.menuSearch));\n iframeContents.find(self.menuSearch).remove();\n } else if (val == 'menu') {\n list.push(iframeContents.find(self.menuWrap));\n iframeContents.find(self.menuWrap).remove();\n } else {\n list.push(iframeContents.find(self.menuContents));\n iframeContents.find(self.menuContents).remove();\n }\n });\n list.forEach(function (menuElement) {\n iframeContents.find(self.menuContainer).append(menuElement);\n });\n },\n\n /**\r\n * Function to bind the color input with option and elements.\r\n * \r\n * @version 4.0.0\r\n * \r\n * @param {String} inputSelector \r\n * @param {String} outputSelector \r\n * @param {String} attr \r\n * @param {String} state \r\n */\n bindColor: function bindColor(inputSelector, outputSelector, attr, state) {\n var self = this;\n jQuery(inputSelector).wpColorPicker({\n change: function change(event, ui) {\n var value = ui.color.toString();\n var css = rmpHook.call('rmp_color_style', {\n 'outputSelector': outputSelector,\n 'attr': attr,\n 'value': value,\n 'state': state\n });\n\n if (jQuery(inputSelector).attr('multi-device')) {\n css = self.mediaQuery(css);\n }\n\n self.inlineCssInjector(css);\n }\n });\n },\n mediaQuery: function mediaQuery(css) {\n var self = this;\n self.tablet_breakpoint = jQuery('#rmp-menu-tablet-breakpoint').val() + 'px';\n css = '@media screen and (max-width: ' + self.tablet_breakpoint + ' ) {' + css + '}';\n return css;\n },\n inlineCssInjector: function inlineCssInjector(css) {\n var self = this;\n var iframe = jQuery(self.iframe);\n var styleElement = iframe.contents().find('#rmp-inline-css-' + self.menuId);\n\n if (styleElement.length) {\n styleElement.append(css);\n } else {\n style = '<style id=\"rmp-inline-css-' + self.menuId + '\">' + css + '</style>';\n iframe.contents().find('head').append(style);\n }\n },\n changeInput: function changeInput(inputSelector, outputSelector, attr) {\n var meta = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : '';\n var self = this;\n var iframe = jQuery(self.iframe);\n jQuery(inputSelector).on('change', function (e) {\n switch (attr) {\n case 'height-unit':\n value = jQuery(this).prev('input').val();\n unit = jQuery(this).val();\n css = outputSelector + '{ height : ' + (value + unit) + ';}';\n\n if (jQuery(this).attr('multi-device')) {\n css = self.mediaQuery(css);\n }\n\n self.inlineCssInjector(css);\n break;\n\n case 'line-height-unit':\n value = jQuery(this).prev('input').val();\n unit = jQuery(this).val();\n css = outputSelector + '{ line-height : ' + (value + unit) + ';}';\n\n if (jQuery(this).attr('multi-device')) {\n css = self.mediaQuery(css);\n }\n\n self.inlineCssInjector(css);\n break;\n\n case 'width-unit':\n var value = jQuery(this).prev('input').val();\n var unit = jQuery(this).val();\n css = outputSelector + '{ width : ' + (value + unit) + ';}';\n self.inlineCssInjector(css);\n break;\n\n case 'font-size':\n value = jQuery(this).prev('input').val();\n unit = jQuery(this).val();\n css = outputSelector + '{ font-size :' + value + unit + ' !important;}';\n\n if (jQuery(this).attr('multi-device')) {\n css = self.mediaQuery(css);\n }\n\n self.inlineCssInjector(css);\n break;\n\n case 'font-family':\n value = jQuery(this).val();\n css = outputSelector + '{ font-family :' + value + ' !important;}';\n\n if (jQuery(this).attr('multi-device')) {\n css = self.mediaQuery(css);\n }\n\n self.inlineCssInjector(css);\n break;\n\n case 'font-weight':\n value = jQuery(this).val();\n css = outputSelector + '{ font-weight :' + value + ';}';\n self.inlineCssInjector(css);\n break;\n\n case 'padding-unit':\n var unit = jQuery(this).val();\n var value = jQuery(this).prev('input').val();\n\n if (!unit) {\n unit = 'px';\n }\n\n if (meta == 'lr') {\n css = outputSelector + '{ padding : 0 ' + (value + unit) + ';}';\n }\n\n self.inlineCssInjector(css);\n break;\n\n case 'letter-spacing':\n value = jQuery(this).val();\n css = outputSelector + '{ letter-spacing :' + value + 'px; }';\n self.inlineCssInjector(css);\n break;\n\n case 'position-alignment':\n if (iframe.contents().find(outputSelector).length) {\n position = jQuery(this).val();\n var rmpTriggerBox = iframe.contents().find('#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-box');\n iframe.contents().find('#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-box').remove();\n\n if (position == 'top' || position == 'left') {\n iframe.contents().find('#rmp_menu_trigger-' + self.menuId).append(rmpTriggerBox);\n } else {\n iframe.contents().find('#rmp_menu_trigger-' + self.menuId).prepend(rmpTriggerBox);\n }\n }\n\n break;\n\n case 'trigger-animation':\n value = jQuery(this).val();\n var new_class = 'rmp-menu-trigger-' + value;\n all_class = iframe.contents().find(outputSelector).attr('class').split(\" \");\n all_class.forEach(function (value) {\n if (value.includes('rmp-menu-trigger-')) {\n iframe.contents().find(outputSelector).removeClass(value);\n iframe.contents().find(outputSelector).addClass(new_class);\n }\n });\n break;\n\n case 'top':\n var unit = jQuery(this).val();\n value = jQuery(this).prev('input').val();\n css = outputSelector + '{ top :' + (value + unit) + ' !important;}';\n self.inlineCssInjector(css);\n break;\n\n case 'trigger-side-position':\n side = jQuery('#rmp-menu-button-left-or-right').val();\n unit = jQuery('#rmp-menu-button-distance-from-side-unit').val();\n value = jQuery('#rmp-menu-button-distance-from-side').val();\n css = outputSelector + '{ ' + side + ' :' + (value + unit) + ' !important;}';\n self.inlineCssInjector(css);\n break;\n\n case 'trigger-side':\n side = jQuery(this).val();\n value = jQuery('#rmp-menu-button-distance-from-side').val();\n unit = jQuery('#rmp-menu-button-distance-from-side-unit').val();\n\n if (side == 'left') {\n css = outputSelector + '{' + side + ':' + (value + unit) + ' !important;right:unset !important}';\n } else {\n css = outputSelector + '{' + side + ':' + (value + unit) + ' !important;left:unset !important}';\n }\n\n self.inlineCssInjector(css);\n break;\n\n case 'position':\n value = jQuery(this).val();\n css = outputSelector + '{ position :' + value + ' !important;}';\n self.inlineCssInjector(css);\n break;\n\n case 'trigger-background':\n if (jQuery(this).is(':checked')) {\n iframe.contents().find(outputSelector).attr('style', 'background:unset !important;');\n } else {\n iframe.contents().find(outputSelector).removeAttr('style');\n }\n\n break;\n\n case 'target':\n var value = jQuery(this).val();\n\n if (!value.length) {\n value = '_self';\n }\n\n iframe.contents().find(outputSelector).attr('target', value);\n break;\n\n case 'text-align':\n var value = jQuery(this).val();\n iframe.contents().find(outputSelector).css({\n 'text-align': value\n });\n break;\n }\n });\n },\n init: function init() {\n var self = this; //Mobile menu elements.\n\n self.menuContainer = '#rmp-container-' + self.menuId;\n self.menuTitle = '#rmp-menu-title-' + self.menuId;\n self.menuSearch = '#rmp-search-box-' + self.menuId;\n self.menuWrap = '#rmp-menu-wrap-' + self.menuId;\n self.menuContents = '#rmp-menu-additional-content-' + self.menuId; //Menu container background color.\n\n self.bindColor('#rmp-container-background-colour', '#rmp-container-' + self.menuId, 'background', ''); //Menu background.\n\n self.bindColor('#rmp-menu-background-colour', '#rmp-menu-wrap-' + self.menuId, 'background'); //Menu title section background color.\n\n self.bindColor('#rmp-menu-title-background-colour', '#rmp-menu-title-' + self.menuId, 'background'); //Menu title section background hover color.\n\n self.bindColor('#rmp-menu-title-background-hover-colour', '#rmp-menu-title-' + self.menuId, 'background', 'hover'); // Menu item trigger\n\n self.bindColor('#rmp-menu-sub-arrow-shape-colour', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-subarrow', 'color');\n self.bindColor('#rmp-menu-sub-arrow-shape-hover-colour', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-subarrow', 'color', 'hover');\n self.bindColor('#rmp-menu-sub-arrow-shape-colour-active', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-subarrow.rmp-menu-subarrow-active', 'color');\n self.bindColor('#rmp-menu-sub-arrow-shape-hover-colour-active', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-subarrow.rmp-menu-subarrow-active', 'color', 'hover');\n self.bindColor('#rmp-menu-sub-arrow-border-colour', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-subarrow', 'border-color');\n self.bindColor('#rmp-menu-sub-arrow-border-hover-colour', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-subarrow', 'border-color', 'hover');\n self.bindColor('#rmp-menu-sub-arrow-border-colour-active', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-subarrow-active', 'border-color');\n self.bindColor('#rmp-menu-sub-arrow-border-hover-colour-active', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-subarrow-active', 'border-color', 'hover');\n self.bindColor('#rmp-menu-sub-arrow-background-color', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-subarrow', 'background');\n self.bindColor('#rmp-menu-sub-arrow-background-hover-colour', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-subarrow', 'background', 'hover');\n self.bindColor('#rmp-menu-sub-arrow-background-colour-active', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-subarrow.rmp-menu-subarrow-active', 'background');\n self.bindColor('#rmp-menu-sub-arrow-background-hover-colour-active', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-subarrow.rmp-menu-subarrow-active', 'background', 'hover'); //Legacy options\n\n self.bindColor('#rmp-submenu-sub-arrow-shape-colour', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-subarrow', 'color');\n self.bindColor('#rmp-submenu-sub-arrow-shape-colour-hover', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-subarrow', 'color', 'hover');\n self.bindColor('#rmp-submenu-sub-arrow-shape-colour-active', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-subarrow-active', 'color');\n self.bindColor('#rmp-submenu-sub-arrow-shape-hover-colour-active', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-subarrow-active', 'color', 'hover');\n self.bindColor('#rmp-submenu-sub-arrow-border-colour', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-subarrow', 'border-color');\n self.bindColor('#rmp-submenu-sub-arrow-border-hover-colour', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-subarrow', 'border-color', 'hover');\n self.bindColor('#rmp-submenu-sub-arrow-border-colour-active', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-subarrow.rmp-menu-subarrow-active', 'border-color');\n self.bindColor('#rmp-submenu-sub-arrow-border-hover-colour-active', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-subarrow-active', 'border-color', 'hover');\n self.bindColor('#rmp-submenu-sub-arrow-background-color', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-subarrow', 'background');\n self.bindColor('#rmp-submenu-sub-arrow-background-hover-colour', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-subarrow', 'background', 'hover');\n self.bindColor('#rmp-submenu-sub-arrow-background-colour-active', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-subarrow-active', 'background');\n self.bindColor('#rmp-submenu-sub-arrow-background-hover-colour-active', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-subarrow-active', 'background', 'hover');\n self.bindColor('#rmp-menu-title-colour', '#rmp-menu-title-' + self.menuId + ' > a', 'color');\n self.bindColor('#rmp-menu-title-hover-colour', '#rmp-menu-title-' + self.menuId + ' > a', 'color', 'hover');\n self.bindColor('#rmp-menu-additional-content-color', '#rmp-container-' + self.menuId + ' #rmp-menu-additional-content-' + self.menuId, 'color');\n self.bindColor('#rmp-menu-search-box-text-colour', '#rmp-container-' + self.menuId + ' #rmp-search-box-' + self.menuId + ' .rmp-search-box', 'color');\n self.bindColor('#rmp-menu-search-box-background-colour', '#rmp-search-box-' + self.menuId + ' .rmp-search-box', 'background');\n self.bindColor('#rmp-menu-search-box-border-colour', '#rmp-search-box-' + self.menuId + ' .rmp-search-box', 'border-color');\n self.bindColor('#rmp-menu-search-box-placeholder-colour', '#rmp-search-box-' + self.menuId + ' .rmp-search-box', 'color', 'placeholder');\n self.changeInput('#rmp-menu-title-font-weight', '#rmp-menu-title-' + self.menuId + ' #rmp-menu-title-link', 'font-weight');\n self.changeInput('#rmp-menu-title-font-family', '#rmp-menu-title-' + self.menuId + ' #rmp-menu-title-link', 'font-family'); //Menu Trigger\n\n self.bindColor('#rmp-menu-button-background-colour', '#rmp_menu_trigger-' + self.menuId, 'background', '');\n self.bindColor('#rmp-menu-button-background-colour-hover', '#rmp_menu_trigger-' + self.menuId, 'background-color', 'hover');\n self.bindColor('#rmp-menu-button-background-colour-active', '#rmp_menu_trigger-' + self.menuId + '.is-active', 'background', '');\n self.bindColor('#rmp-menu-button-line-colour', '#rmp_menu_trigger-' + self.menuId + ' .responsive-menu-pro-inner,#rmp_menu_trigger-' + self.menuId + ' .responsive-menu-pro-inner:after,#rmp_menu_trigger-' + self.menuId + ' .responsive-menu-pro-inner:before', 'background', '');\n self.bindColor('#rmp-menu-button-line-colour-active', '.is-active#rmp_menu_trigger-' + self.menuId + ' .responsive-menu-pro-inner,.is-active#rmp_menu_trigger-' + self.menuId + ' .responsive-menu-pro-inner:after,.is-active#rmp_menu_trigger-' + self.menuId + ' .responsive-menu-pro-inner:before', 'background', '');\n self.bindColor('#rmp-menu-button-line-colour-hover', '#rmp_menu_trigger-' + self.menuId + ':hover .responsive-menu-pro-inner,#rmp_menu_trigger-' + self.menuId + ':hover .responsive-menu-pro-inner:after,#rmp_menu_trigger-' + self.menuId + ':hover .responsive-menu-pro-inner:before', 'background', '');\n self.bindColor('#rmp-menu-button-text-colour', '#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-label', 'color');\n self.onTyping('#rmp-menu-toggle-border-radius', '#rmp_menu_trigger-' + self.menuId, 'border-radius');\n self.onTyping('.rmp-menu-container-padding', '#rmp-container-' + self.menuId, 'section-padding');\n self.onTyping('.rmp-menu-title-section-padding', '#rmp-menu-title-' + self.menuId, 'section-padding');\n self.onTyping('.rmp-menu-section-padding', '#rmp-menu-wrap-' + self.menuId, 'section-padding');\n self.onTyping('.rmp-menu-search-section-padding', '#rmp-search-box-' + self.menuId, 'section-padding');\n self.onTyping('.rmp-menu-additional-section-padding', '#rmp-menu-additional-content-' + self.menuId, 'section-padding'); // CONTENT BASED ELEMENTS.\n\n self.onTyping('#rmp-menu-search-box-height', '#rmp-search-box-' + self.menuId + ' .rmp-search-box', 'height');\n self.onTyping('#rmp-menu-search-box-border-radius', '#rmp-search-box-' + self.menuId + ' .rmp-search-box', 'border-radius');\n self.onTyping('#rmp-menu-menu-title', '#rmp-menu-title-' + self.menuId + ' #rmp-menu-title-link span', 'text');\n self.onTyping('#rmp-menu-additional-content', '#rmp-menu-additional-content-' + self.menuId, 'text');\n self.onTyping('#rmp-menu-search-box-text', '#rmp-search-box-' + self.menuId + ' .rmp-search-box', 'placeholder');\n self.onTyping('#rmp-menu-title-link', '#rmp-menu-title-' + self.menuId + ' #rmp-menu-title-link', 'href');\n self.onTyping('#rmp-menu-title-image-alt', '#rmp-menu-title-' + self.menuId + ' .rmp-menu-title-image', 'alt');\n self.onTyping('#rmp-menu-title-font-size', '#rmp-menu-title-' + self.menuId + ' > a', 'font-size');\n self.onTyping('#rmp-menu-title-image-width', '#rmp-menu-title-' + self.menuId + ' .rmp-menu-title-image', 'width');\n self.onTyping('#rmp-menu-title-image-height', '#rmp-menu-title-' + self.menuId + ' .rmp-menu-title-image', 'height');\n self.bindImage('#rmp-menu-title-image-selector', '#rmp-menu-title-' + self.menuId + ' .rmp-menu-title-image', 'img-src');\n self.onTyping('#rmp-menu-additional-content-font-size', '#rmp-menu-additional-content-' + self.menuId, 'font-size');\n self.onTyping('#rmp-menu-container-width', '#rmp-container-' + self.menuId, 'width');\n self.onTyping('#rmp-menu-container-min-width', '#rmp-container-' + self.menuId, 'min-width');\n self.onTyping('#rmp-menu-container-max-width', '#rmp-container-' + self.menuId, 'max-width');\n self.onTyping('#rmp-menu-button-image-alt-when-clicked', '#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-icon-active', 'alt');\n self.onTyping('#rmp-menu-button-image-alt', '#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-icon-inactive', 'alt');\n self.onTyping('#rmp-menu-button-title-open', '#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-text-open', 'trigger-text-open');\n self.onTyping('#rmp-menu-button-title', '#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-text', 'trigger-text');\n self.onTyping('#rmp-menu-button-font-size', '#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-label', 'font-size');\n self.onTyping('#rmp-menu-button-title-line-height', '#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-label', 'line-height'); //Menu Trigger\n\n self.onTyping('#rmp-menu-button-width', '#rmp_menu_trigger-' + self.menuId, 'width');\n self.onTyping('#rmp-menu-button-height', '#rmp_menu_trigger-' + self.menuId, 'height');\n self.onTyping('#rmp-menu-button-line-width', '#rmp_menu_trigger-' + self.menuId + ' .responsive-menu-pro-inner', 'width');\n self.onTyping('#rmp-menu-button-line-width', '#rmp_menu_trigger-' + self.menuId + ' .responsive-menu-pro-inner:after', 'width');\n self.onTyping('#rmp-menu-button-line-width', '#rmp_menu_trigger-' + self.menuId + ' .responsive-menu-pro-inner:before', 'width');\n self.onTyping('#rmp-menu-button-line-height', '#rmp_menu_trigger-' + self.menuId + ' .responsive-menu-pro-inner', 'height');\n self.onTyping('#rmp-menu-button-line-height', '#rmp_menu_trigger-' + self.menuId + ' .responsive-menu-pro-inner:after', 'height');\n self.onTyping('#rmp-menu-button-line-height', '#rmp_menu_trigger-' + self.menuId + ' .responsive-menu-pro-inner:before', 'height');\n self.bindImage('#rmp-button-title-image', '#rmp-menu-title-' + self.menuId + ' .rmp-menu-title-image', 'img-src');\n self.bindImage('#rmp-menu-background-image-selector', '#rmp-container-' + self.menuId, 'background');\n self.bindImage('#rmp-menu-button-image-when-clicked-selector', '#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-icon-active', 'trigger-icon-open');\n self.bindImage('#rmp-menu-button-image-selector', '#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-icon-inactive', 'trigger-icon');\n self.changeInput('#rmp-menu-title-link-location', '#rmp-menu-title-' + self.menuId + ' #rmp-menu-title-link', 'target');\n self.changeInput('.rmp-menu-title-alignment', '#rmp-menu-title-' + self.menuId, 'text-align');\n self.changeInput('.rmp-menu-additional-content-alignment', '#rmp-menu-additional-content-' + self.menuId, 'text-align'); //Top menu item links\n\n self.onTyping('#rmp-menu-links-height', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-item-link', 'height');\n self.onTyping('#rmp-menu-links-line-height', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-item-link', 'line-height');\n self.onTyping('#rmp-menu-font-size', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-item-link', 'font-size');\n self.changeInput('#rmp-menu-font', '#rmp-container-' + self.menuId + ' #rmp-menu-wrap-' + self.menuId + ' .rmp-menu-top-level-item .rmp-menu-item-link', 'font-family');\n self.changeInput('#rmp-menu-font-weight', '#rmp-container-' + self.menuId + ' #rmp-menu-wrap-' + self.menuId + ' .rmp-menu-top-level-item .rmp-menu-item-link', 'font-weight');\n self.changeInput('.rmp-menu-text-alignment', '#rmp-container-' + self.menuId + ' #rmp-menu-wrap-' + self.menuId + ' .rmp-menu-top-level-item .rmp-menu-item-link', 'text-align');\n self.changeInput('#rmp-menu-text-letter-spacing', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-item-link', 'letter-spacing');\n self.onTyping('#rmp-menu-depth-level-0', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-item-link', 'padding', 'lr');\n self.onTyping('#rmp-menu-border-width', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-item-link', 'border-width');\n self.onTyping('#rmp-menu-sub-arrow-border-width', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-subarrow', 'border-width');\n self.onTyping('#rmp-submenu-sub-arrow-border-width', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-subarrow', 'border-width');\n self.bindColor('#rmp-menu-link-color', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-item-link', 'color');\n self.bindColor('#rmp-menu-link-hover-color', ' #rmp-menu-wrap-' + self.menuId + ' .rmp-menu-item-link', 'color', 'hover');\n self.bindColor('#rmp-menu-current-link-active-color', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-current-item .rmp-menu-item-link', 'color');\n self.bindColor('#rmp-menu-current-link-active-hover-color', ' #rmp-menu-wrap-' + self.menuId + ' .rmp-menu-current-item .rmp-menu-item-link', 'color', 'hover');\n self.bindColor('#rmp-menu-item-background-colour', ' #rmp-menu-wrap-' + self.menuId + ' .rmp-menu-item-link', 'background');\n self.bindColor('#rmp-menu-item-background-hover-color', ' #rmp-menu-wrap-' + self.menuId + ' .rmp-menu-item-link', 'background', 'hover');\n self.bindColor('#rmp-menu-current-item-background-color', ' #rmp-menu-wrap-' + self.menuId + ' .rmp-menu-current-item .rmp-menu-item-link', 'background');\n self.bindColor('#rmp-menu-current-item-background-hover-color', ' #rmp-menu-wrap-' + self.menuId + ' .rmp-menu-current-item .rmp-menu-item-link', 'background', 'hover');\n self.bindColor('#rmp-menu-item-border-colour', ' #rmp-menu-wrap-' + self.menuId + ' .rmp-menu-item-link', 'border-color');\n self.bindColor('#rmp-menu-item-border-colour-hover', ' #rmp-menu-wrap-' + self.menuId + ' .rmp-menu-item-link', 'border-color', 'hover');\n self.bindColor('#rmp-menu-current-item-border-hover-colour', ' #rmp-menu-wrap-' + self.menuId + ' .rmp-menu-current-item .rmp-menu-item-link', 'border-color', 'hover');\n self.bindColor('#rmp-menu-item-border-colour-active', ' #rmp-menu-wrap-' + self.menuId + ' .rmp-menu-current-item .rmp-menu-item-link', 'border-color'); // Trigger of top level\n\n self.bindImage('#rmp-menu-inactive-arrow-image-selector', '#rmp-container-' + self.menuId + ' #rmp-menu-wrap-' + self.menuId + ' .rmp-menu-top-level-item .rmp-menu-subarrow', 'background');\n self.bindImage('#rmp-menu-active-arrow-image-selector', '#rmp-container-' + self.menuId + ' #rmp-menu-wrap-' + self.menuId + ' .rmp-menu-top-level-item .rmp-menu-subarrow-active', 'background');\n self.onTyping('#rmp-submenu-arrow-height', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-subarrow', 'height');\n self.onTyping('#rmp-submenu-arrow-width', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-subarrow', 'width');\n self.onTyping('#rmp-submenu-child-arrow-height', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-subarrow', 'height');\n self.onTyping('#rmp-submenu-child-arrow-width', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-subarrow', 'width');\n self.changeInput('#rmp-submenu-child-arrow-width-unit', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-subarrow', 'width-unit');\n self.changeInput('#rmp-submenu-child-arrow-height-unit', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-subarrow', 'height-unit');\n self.bindColor('#rmp-menu-sub-arrow-background-color', ' #rmp-menu-wrap-' + self.menuId + ' .rmp-menu-top-level-item .rmp-menu-subarrow', 'background');\n self.bindColor('#rmp-menu-sub-arrow-background-hover-colour', ' #rmp-menu-wrap-' + self.menuId + ' .rmp-menu-top-level-item .rmp-menu-subarrow', 'background', 'hover');\n self.bindColor('#rmp-menu-sub-arrow-background-colour-active', ' #rmp-menu-wrap-' + self.menuId + ' .rmp-menu-top-level-item .rmp-menu-subarrow-active', 'background');\n self.bindColor('#rmp-menu-sub-arrow-background-hover-colour-active', ' #rmp-menu-wrap-' + self.menuId + ' .rmp-menu-top-level-item .rmp-menu-subarrow-active', 'background', 'hover'); //sub menu item links\n\n self.onTyping('#rmp-submenu-links-height', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-item-link', 'height');\n self.changeInput('#rmp-submenu-links-height-unit', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-item-link', 'height-unit');\n self.onTyping('#rmp-submenu-links-line-height', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-item-link', 'line-height');\n self.changeInput('#rmp-submenu-links-line-height-unit', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-item-link', 'line-height-unit');\n self.onTyping('#rmp-submenu-font-size', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-item-link', 'font-size');\n self.changeInput('#rmp-submenu-font', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-item-link', 'font-family');\n self.changeInput('#rmp-submenu-font-weight', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-item-link', 'font-weight');\n self.changeInput('.rmp-submenu-text-alignment', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-item-link', 'text-align');\n self.changeInput('#rmp-submenu-text-letter-spacing', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-item-link', 'letter-spacing');\n self.onTyping('#rmp-submenu-border-width', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-item-link', 'border-width');\n self.bindColor('#rmp-submenu-item-border-colour', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-item-link', 'border-color');\n self.bindColor('#rmp-submenu-item-border-colour-hover', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-item-link', 'border-color', 'hover');\n self.bindColor('#rmp-submenu-item-border-colour-active', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-current-item .rmp-menu-item-link', 'border-color');\n self.bindColor('#rmp-submenu-current-item-border-hover-colour', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-current-item .rmp-menu-item-link', 'border-color', 'hover');\n self.bindColor('#rmp-submenu-link-color', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-item-link', 'color');\n self.bindColor('#rmp-submenu-link-hover-color', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-item-link', 'color', 'hover');\n self.bindColor('#rmp-submenu-link-colour-active', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-current-item .rmp-menu-item-link', 'color');\n self.bindColor('#rmp-submenu-link-active-hover-color', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-current-item .rmp-menu-item-link', 'color', 'hover');\n self.bindColor('#rmp-submenu-item-background-color', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-item-link', 'background');\n self.bindColor('#rmp-submenu-item-background-hover-color', ' #rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-item-link', 'background', 'hover');\n self.bindColor('#rmp-submenu-current-item-background-color', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-current-item .rmp-menu-item-link', 'background');\n self.bindColor('#rmp-submenu-current-item-background-hover-color', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-current-item .rmp-menu-item-link', 'background', 'hover'); //Menu Trigger\n\n self.changeInput('.rmp-menu-button-transparent-background', '#rmp_menu_trigger-' + self.menuId, 'background', '');\n self.changeInput('#rmp-menu-button-position-type', '#rmp_menu_trigger-' + self.menuId, 'position');\n self.changeInput('.rmp-menu-button-left-or-right', '#rmp_menu_trigger-' + self.menuId, 'trigger-side');\n self.onTyping('#rmp-menu-button-distance-from-side', '#rmp_menu_trigger-' + self.menuId, 'trigger-side-position');\n self.onTyping('#rmp-menu-button-top', '#rmp_menu_trigger-' + self.menuId, 'top');\n self.changeInput('#rmp-menu-button-click-animation', '#rmp_menu_trigger-' + self.menuId, 'trigger-animation');\n self.changeInput('#rmp-menu-button-font', '#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-label', 'font-family');\n self.changeInput('.rmp-menu-button-title-position', '#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-label', 'position-alignment');\n jQuery(\"#rmp-menu-button-font-icon\").focus(function () {\n var outputSelector = '#rmp_menu_trigger-' + self.menuId + ' span.rmp-trigger-icon-inactive';\n value = jQuery(this).val();\n var iframe = jQuery(self.iframe);\n\n if (iframe.contents().find(outputSelector).length) {\n iframe.contents().find(outputSelector).addClass(value);\n } else {\n iframe.contents().find('#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-box img.rmp-trigger-icon').hide();\n iframe.contents().find('#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-box .responsive-menu-pro-inner').hide();\n iframe.contents().find('#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-box').append('<span class=\"rmp-trigger-icon rmp-trigger-icon-inactive ' + value + '\"></span>');\n }\n });\n jQuery(\"#rmp-menu-button-font-icon-when-clicked\").focus(function () {\n var outputSelector = '#rmp_menu_trigger-' + self.menuId + ' span.rmp-trigger-icon-active';\n value = jQuery(this).val();\n var iframe = jQuery(self.iframe);\n\n if (iframe.contents().find(outputSelector).length) {\n iframe.contents().find(outputSelector).addClass(value);\n } else {\n iframe.contents().find('#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-box img.rmp-trigger-icon').hide();\n iframe.contents().find('#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-box .responsive-menu-pro-inner').hide();\n iframe.contents().find('#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-box').append('<span class=\"rmp-trigger-icon rmp-trigger-icon-active ' + value + '\"></span>');\n }\n }); // Ordering elements\n\n self.toggleElements('#rmp-item-order-title', '#rmp-menu-title-' + self.menuId);\n self.toggleElements('#rmp-item-order-additional-content', '#rmp-menu-additional-content-' + self.menuId);\n self.toggleElements('#rmp-item-order-search', '#rmp-search-box-' + self.menuId);\n self.toggleElements('#rmp-item-order-menu', '#rmp-menu-wrap-' + self.menuId);\n jQuery('#rmp-menu-ordering-items').sortable({\n update: function update(event, ui) {\n self.orderMenuElements();\n }\n });\n }\n};\nRMP_Preview.init();\n\n//# sourceURL=webpack:///./assets/admin/js/rmp-preview.js?")},"./assets/admin/js/wp-color-alpha.js":function(module,exports){eval("/**!\r\n * wp-color-picker-alpha\r\n *\r\n * Overwrite Automattic Iris for enabled Alpha Channel in wpColorPicker\r\n * Only run in input and is defined data alpha in true\r\n *\r\n * Version: 2.1.4\r\n * https://github.com/kallookoo/wp-color-picker-alpha\r\n * Licensed under the GPLv2 license or later.\r\n */\n(function ($) {\n // Prevent double-init.\n if ($.wp.wpColorPicker.prototype._hasAlpha) {\n return;\n } // Variable for some backgrounds ( grid )\n\n\n var image = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAAHnlligAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAHJJREFUeNpi+P///4EDBxiAGMgCCCAGFB5AADGCRBgYDh48CCRZIJS9vT2QBAggFBkmBiSAogxFBiCAoHogAKIKAlBUYTELAiAmEtABEECk20G6BOmuIl0CIMBQ/IEMkO0myiSSraaaBhZcbkUOs0HuBwDplz5uFJ3Z4gAAAABJRU5ErkJggg==',\n //Dtml stuff for wpColorPicker copy of the original color-picker.js\n _after = '<div class=\"wp-picker-holder\" />',\n _wrap = '<div class=\"wp-picker-container\" />',\n _before = '<button type=\"button\" class=\"button wp-color-result\" aria-expanded=\"false\"></button>',\n _wrappingLabel = '<label></label>',\n _wrappingLabelText = '<span class=\"screen-reader-text\"></span>';\n /**\r\n * Overwrite Color\r\n * for enable support rbga\r\n */\n\n Color.fn.toString = function () {\n if (this._alpha < 1) return this.toCSS('rgba', this._alpha).replace(/\\s+/g, '');\n var hex = parseInt(this._color, 10).toString(16);\n if (this.error) return '';\n if (hex.length < 6) hex = ('00000' + hex).substr(-6);\n return '#' + hex;\n };\n /**\r\n * Overwrite wpColorPicker\r\n */\n\n\n $.widget('wp.wpColorPicker', $.wp.wpColorPicker, {\n _hasAlpha: true,\n\n /**\r\n * @summary Creates the color picker.\r\n *\r\n * Creates the color picker, sets default values, css classes and wraps it all in HTML.\r\n *\r\n * @since 3.5.0\r\n *\r\n * @access private\r\n *\r\n * @returns {void}\r\n */\n _create: function _create() {\n // Return early if Iris support is missing.\n if (!$.support.iris) {\n return;\n }\n\n var self = this,\n el = self.element; // Override default options with options bound to the element.\n\n $.extend(self.options, el.data()); // Create a color picker which only allows adjustments to the hue.\n\n if (self.options.type === 'hue') {\n return self._createHueOnly();\n } // Bind the close event.\n\n\n self.close = $.proxy(self.close, self);\n self.initialValue = el.val(); // Add a CSS class to the input field.\n\n el.addClass('wp-color-picker');\n /*\r\n \t* Check if there's already a wrapping label, e.g. in the Customizer.\r\n \t* If there's no label, add a default one to match the Customizer template.\r\n \t*/\n\n if (!el.parent('label').length) {\n // Wrap the input field in the default label.\n el.wrap(_wrappingLabel); // Insert the default label text.\n\n self.wrappingLabelText = $(_wrappingLabelText).insertBefore(el).text('Color Picker');\n }\n /*\r\n \t* At this point, either it's the standalone version or the Customizer\r\n \t* one, we have a wrapping label to use as hook in the DOM, let's store it.\r\n \t*/\n\n\n self.wrappingLabel = el.parent(); // Wrap the label in the main wrapper.\n\n self.wrappingLabel.wrap(_wrap); // Store a reference to the main wrapper.\n\n self.wrap = self.wrappingLabel.parent(); // Set up the toggle button and insert it before the wrapping label.\n\n self.toggler = $(_before).insertBefore(self.wrappingLabel).css({\n backgroundColor: self.initialValue\n }); // Set up the Iris container and insert it after the wrapping label.\n\n self.pickerContainer = $(_after).insertAfter(self.wrappingLabel); // Wrap the wrapping label in its wrapper and append the Clear/Default button.\n\n self.wrappingLabel.wrap('<span class=\"wp-picker-input-wrap hidden rmp-color-input-wrap\" />');\n /*\r\n * The input wrapper now contains the label+input+Clear/Default button.\r\n * Store a reference to the input wrapper: we'll use this to toggle\r\n * the controls visibility.\r\n */\n\n self.inputWrapper = el.closest('.wp-picker-input-wrap');\n el.iris({\n target: self.pickerContainer,\n hide: self.options.hide,\n width: 240,\n mode: self.options.mode,\n palettes: self.options.palettes,\n\n /**\r\n * @summary Handles the onChange event if one has been defined in the options.\r\n *\r\n * Handles the onChange event if one has been defined in the options and additionally\r\n * sets the background color for the toggler element.\r\n *\r\n * @since 3.5.0\r\n *\r\n * @param {Event} event The event that's being called.\r\n * @param {HTMLElement} ui The HTMLElement containing the color picker.\r\n *\r\n * @returns {void}\r\n */\n change: function change(event, ui) {\n if (self.options.alpha) {\n self.toggler.css({\n 'background-image': 'url(' + image + ')'\n });\n self.toggler.css({\n 'position': 'relative'\n });\n\n if (self.toggler.find('span.color-alpha').length == 0) {\n self.toggler.append('<span class=\"color-alpha\" />');\n }\n\n self.toggler.find('span.color-alpha').css({\n 'width': '38px',\n 'height': '100%',\n 'position': 'absolute',\n 'top': 0,\n 'left': 0,\n 'background': ui.color.toString()\n });\n } else {\n self.toggler.css({\n backgroundColor: ui.color.toString()\n });\n }\n\n if ($.isFunction(self.options.change)) {\n self.options.change.call(this, event, ui);\n }\n }\n });\n el.val(self.initialValue);\n\n self._addListeners(); // Force the color picker to always be closed on initial load.\n\n\n if (!self.options.hide) {\n self.toggler.click();\n }\n },\n\n /**\r\n * @summary Binds event listeners to the color picker.\r\n *\r\n * @since 3.5.0\r\n *\r\n * @access private\r\n *\r\n * @returns {void}\r\n */\n _addListeners: function _addListeners() {\n var self = this;\n /**\r\n * @summary Prevent any clicks inside this widget from leaking to the top and closing it.\r\n *\r\n * @since 3.5.0\r\n *\r\n * @param {Event} event The event that's being called.\r\n *\r\n * @returs {void}\r\n */\n\n self.wrap.on('click.wpcolorpicker', function (event) {\n event.stopPropagation();\n });\n /**\r\n * @summary Open or close the color picker depending on the class.\r\n *\r\n * @since 3.5\r\n */\n\n self.toggler.click(function () {\n if (self.toggler.hasClass('wp-picker-open')) {\n self.close();\n } else {\n self.open();\n }\n });\n /**\r\n * @summary Checks if value is empty when changing the color in the color picker.\r\n *\r\n * Checks if value is empty when changing the color in the color picker.\r\n * If so, the background color is cleared.\r\n *\r\n * @since 3.5.0\r\n *\r\n * @param {Event} event The event that's being called.\r\n *\r\n * @returns {void}\r\n */\n\n self.element.on('change', function (event) {\n // Empty or Error = clear\n if ($(this).val() === '' || self.element.hasClass('iris-error')) {\n if (self.options.alpha) {\n self.toggler.find('span.color-alpha').css('backgroundColor', '');\n } else {\n self.toggler.css('backgroundColor', '');\n } // fire clear callback if we have one\n\n\n if ($.isFunction(self.options.clear)) self.options.clear.call(this, event);\n }\n });\n }\n });\n /**\r\n * Overwrite iris\r\n */\n\n $.widget('a8c.iris', $.a8c.iris, {\n _create: function _create() {\n this._super(); // Global option for check is mode rbga is enabled\n\n\n this.options.alpha = this.element.data('alpha') || false; // Is not input disabled\n\n if (!this.element.is(':input')) this.options.alpha = false;\n\n if (typeof this.options.alpha !== 'undefined' && this.options.alpha) {\n var self = this,\n el = self.element,\n _html = '<div class=\"iris-strip iris-slider iris-alpha-slider\"><div class=\"iris-slider-offset iris-slider-offset-alpha\"></div></div>',\n aContainer = $(_html).appendTo(self.picker.find('.iris-picker-inner')),\n aSlider = aContainer.find('.iris-slider-offset-alpha'),\n controls = {\n aContainer: aContainer,\n aSlider: aSlider\n };\n\n if (typeof el.data('custom-width') !== 'undefined') {\n self.options.customWidth = parseInt(el.data('custom-width')) || 0;\n } else {\n self.options.customWidth = 100;\n } // Set default width for input reset\n\n\n self.options.defaultWidth = el.width(); // Update width for input\n\n if (self._color._alpha < 1 || self._color.toString().indexOf('rgb') != -1) el.width(parseInt(self.options.defaultWidth + self.options.customWidth)); // Push new controls\n\n $.each(controls, function (k, v) {\n self.controls[k] = v;\n }); // Change size strip and add margin for sliders\n\n self.controls.square.css({\n 'margin-right': '0'\n });\n var emptyWidth = self.picker.width() - self.controls.square.width() - 20,\n stripsMargin = emptyWidth / 6,\n stripsWidth = emptyWidth / 2 - stripsMargin;\n $.each(['aContainer', 'strip'], function (k, v) {\n self.controls[v].width(stripsWidth).css({\n 'margin-left': stripsMargin + 'px'\n });\n }); // Add new slider\n\n self._initControls(); // For updated widget\n\n\n self._change();\n }\n },\n _initControls: function _initControls() {\n this._super();\n\n if (this.options.alpha) {\n var self = this,\n controls = self.controls;\n controls.aSlider.slider({\n orientation: 'vertical',\n min: 0,\n max: 100,\n step: 1,\n value: parseInt(self._color._alpha * 100),\n slide: function slide(event, ui) {\n // Update alpha value\n self._color._alpha = parseFloat(ui.value / 100);\n\n self._change.apply(self, arguments);\n }\n });\n }\n },\n _change: function _change() {\n this._super();\n\n var self = this,\n el = self.element;\n\n if (this.options.alpha) {\n var controls = self.controls,\n alpha = parseInt(self._color._alpha * 100),\n color = self._color.toRgb(),\n gradient = ['rgb(' + color.r + ',' + color.g + ',' + color.b + ') 0%', 'rgba(' + color.r + ',' + color.g + ',' + color.b + ', 0) 100%'],\n defaultWidth = self.options.defaultWidth,\n customWidth = self.options.customWidth,\n target = self.picker.closest('.wp-picker-container').find('.wp-color-result'); // Generate background slider alpha, only for CSS3 old browser fuck!! :)\n\n\n controls.aContainer.css({\n 'background': 'linear-gradient(to bottom, ' + gradient.join(', ') + '), url(' + image + ')'\n });\n\n if (target.hasClass('wp-picker-open')) {\n // Update alpha value\n controls.aSlider.slider('value', alpha);\n /**\r\n * Disabled change opacity in default slider Saturation ( only is alpha enabled )\r\n * and change input width for view all value\r\n */\n // if ( self._color._alpha < 1 ) {\n // \tcontrols.strip.attr( 'style', controls.strip.attr( 'style' ).replace( /rgba\\(([0-9]+,)(\\s+)?([0-9]+,)(\\s+)?([0-9]+)(,(\\s+)?[0-9\\.]+)\\)/g, 'rgb($1$3$5)' ) );\n // \tel.width( parseInt( defaultWidth + customWidth ) );\n // } else {\n // \tel.width( defaultWidth );\n // }\n }\n }\n\n var reset = el.data('reset-alpha') || false;\n\n if (reset) {\n self.picker.find('.iris-palette-container').on('click.palette', '.iris-palette', function () {\n self._color._alpha = 1;\n self.active = 'external';\n\n self._change();\n });\n }\n\n el.trigger('change');\n },\n _addInputListeners: function _addInputListeners(input) {\n var self = this,\n debounceTimeout = 100,\n callback = function callback(event) {\n var color = new Color(input.val()),\n val = input.val();\n input.removeClass('iris-error'); // we gave a bad color\n\n if (color.error) {\n // don't error on an empty input\n if (val !== '') input.addClass('iris-error');\n } else {\n if (color.toString() !== self._color.toString()) {\n // let's not do this on keyup for hex shortcodes\n if (!(event.type === 'keyup' && val.match(/^[0-9a-fA-F]{3}$/))) self._setOption('color', color.toString());\n }\n }\n };\n\n input.on('change', callback).on('keyup', self._debounce(callback, debounceTimeout)); // If we initialized hidden, show on first focus. The rest is up to you.\n\n if (self.options.hide) {\n input.on('focus', function () {\n self.show();\n });\n }\n }\n });\n})(jQuery);\n\n//# sourceURL=webpack:///./assets/admin/js/wp-color-alpha.js?")},"./assets/admin/rmp-main.js":function(module,__webpack_exports__,__webpack_require__){"use strict";eval('__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _scss_wizard_ui_scss__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./scss/wizard-ui.scss */ "./assets/admin/scss/wizard-ui.scss");\n/* harmony import */ var _scss_wizard_ui_scss__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_scss_wizard_ui_scss__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _scss_dark_mode_scss__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./scss/dark-mode.scss */ "./assets/admin/scss/dark-mode.scss");\n/* harmony import */ var _scss_dark_mode_scss__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_scss_dark_mode_scss__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _js_rmp_admin_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./js/rmp-admin.js */ "./assets/admin/js/rmp-admin.js");\n/* harmony import */ var _js_rmp_admin_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_js_rmp_admin_js__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _js_wp_color_alpha_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./js/wp-color-alpha.js */ "./assets/admin/js/wp-color-alpha.js");\n/* harmony import */ var _js_wp_color_alpha_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_js_wp_color_alpha_js__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _js_rmp_editor_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./js/rmp-editor.js */ "./assets/admin/js/rmp-editor.js");\n/* harmony import */ var _js_rmp_editor_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_js_rmp_editor_js__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var _js_rmp_icon_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./js/rmp-icon.js */ "./assets/admin/js/rmp-icon.js");\n/* harmony import */ var _js_rmp_icon_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_js_rmp_icon_js__WEBPACK_IMPORTED_MODULE_5__);\n/* harmony import */ var _js_rmp_preview_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./js/rmp-preview.js */ "./assets/admin/js/rmp-preview.js");\n/* harmony import */ var _js_rmp_preview_js__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_js_rmp_preview_js__WEBPACK_IMPORTED_MODULE_6__);\n/* harmony import */ var _js_rmp_menu_wizard_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./js/rmp-menu-wizard.js */ "./assets/admin/js/rmp-menu-wizard.js");\n/**\r\n * Main scripts file.\r\n *\r\n * @package responsive-menu-pro\r\n */\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\n\n//# sourceURL=webpack:///./assets/admin/rmp-main.js?')},"./assets/admin/scss/dark-mode.scss":function(module,exports,__webpack_require__){eval("// extracted by mini-css-extract-plugin\n\n//# sourceURL=webpack:///./assets/admin/scss/dark-mode.scss?")},"./assets/admin/scss/wizard-ui.scss":function(module,exports,__webpack_require__){eval("// extracted by mini-css-extract-plugin\n\n//# sourceURL=webpack:///./assets/admin/scss/wizard-ui.scss?")},0:function(module,exports,__webpack_require__){eval('module.exports = __webpack_require__(/*! C:\\xampp\\htdocs\\rmp-menu\\wp-content\\plugins\\responsive-menu\\v4.0.0\\assets\\admin/rmp-main.js */"./assets/admin/rmp-main.js");\n\n\n//# sourceURL=webpack:///multi_./assets/admin/rmp-main.js?')}});
1
  /*! For license information please see rmpMain.js.LICENSE.txt */
2
+ (function(){var __webpack_modules__={"./assets/admin/js/rmp-admin.js":function(){eval("/**\n * This is admin scripts file which contain the admin actions.\n *\n * @version 4.0.0\n *\n * @author Expresstech System\n *\n */\njQuery(document).ready(function (jQuery) {\n /**\n * Rollback the plugin version.\n *\n * @version 4.0.0\n *\n * @fires Click\n */\n jQuery('#rmp-rollback-version').on('click', function (e) {\n e.preventDefault();\n var version = jQuery('#rmp-versions').val();\n\n if ('3.1.30' === version) {\n jQuery.ajax({\n url: rmpObject.ajaxURL,\n data: {\n action: 'rmp_rollback_version'\n },\n type: 'POST',\n dataType: 'json',\n error: function error(_error) {\n jQuery(this).prop('disabled', false);\n },\n success: function success(response) {\n if (response.data.redirect) {\n location.href = response.data.redirect;\n }\n }\n });\n }\n });\n /**\n * Iframe loader and contents show/hide.\n */\n\n jQuery('#rmp-preview-iframe').on('load', function () {\n jQuery('#rmp-preview-iframe-loader').hide();\n jQuery('#rmp-menu-update-notification').remove();\n jQuery('#rmp-preview-iframe').show();\n jQuery('#rmp-preview-iframe').contents().find('a').on('click', function (e) {\n e.stopPropagation();\n e.preventDefault();\n var url = jQuery(this).attr('href'); // Prevent to load the customizer page on preview aria.\n\n if ('#' == url) {\n return;\n }\n\n if (url.indexOf('?') >= 0) {\n url = url + '&rmp_preview_mode=true';\n } else {\n url = url + '?rmp_preview_mode=true';\n }\n\n jQuery('#rmp-preview-iframe').attr('src', url);\n });\n });\n /**\n * Save the theme as template.\n *\n * @since 4.0.0\n *\n * @fires Click\n */\n\n jQuery('button#rmp-save-theme').on('click', function (e) {\n e.stopPropagation();\n e.preventDefault();\n var themeName = jQuery('#rmp-save-theme-name').val();\n\n if (3 > themeName.length) {\n alert('Please give meaning full name to this theme');\n return;\n }\n\n jQuery.ajax({\n url: rmpObject.ajaxURL,\n data: {\n 'action': 'rmp_save_theme',\n 'ajax_nonce': rmpObject.ajax_nonce,\n 'theme_name': themeName,\n 'menu_id': jQuery('#menu_id').val(),\n 'form': jQuery('#rmp-editor-form').serialize()\n },\n type: 'POST',\n dataType: 'json',\n error: function error(_error2) {\n console.log(_error2.statusText);\n },\n success: function success(response) {\n jQuery(e.target).parents('.rmp-dialog-contents').append('<div class=\"notice notice-success settings-error is-dismissible\"><p>' + response.data.message + '</p></div>');\n }\n });\n });\n /**\n * Ajax call to save the menu settings when click on update.\n *\n * @version 4.0.0\n *\n * @fires click\n */\n\n jQuery(document).on('click', 'button#rmp-save-menu-options,#rmp-menu-quick-update-button', function (e) {\n jQuery.ajax({\n url: rmpObject.ajaxURL,\n data: {\n 'action': 'rmp_save_menu_action',\n 'ajax_nonce': rmpObject.ajax_nonce,\n 'form': jQuery('#rmp-editor-form').serialize()\n },\n type: 'POST',\n dataType: 'json',\n beforeSend: function beforeSend() {\n jQuery('#rmp-preview-iframe-loader').show();\n },\n error: function error(_error3) {\n console.log(_error3.statusText);\n jQuery('#rmp-preview-iframe-loader').hide();\n },\n success: function success(response) {\n // If options is updated successfully then reload the iframe.\n if (response.success) {\n var url = jQuery('#rmp-preview-iframe').attr('src');\n jQuery('#rmp-preview-iframe').attr('src', url);\n }\n }\n });\n }); // Initiate the color picker instances.\n\n jQuery('.rmp-color-input').wpColorPicker(); // Fix events glitch on color textbox.\n\n jQuery('.rmp-color-input').removeAttr('style');\n jQuery(document).find('.rmp-color-input').off('focus'); // Initiate the tab elements.\n\n jQuery('.tabs,#rmp-setting-tabs').tabs({\n hide: {\n effect: 'explode',\n duration: 1000\n },\n show: {\n effect: 'explode',\n duration: 800\n },\n active: 0\n }); // Active tabs under ordering elements.\n\n jQuery('.nav-tab-wrapper').on('click', '.nav-tab', function (e) {\n jQuery('.nav-tab-wrapper .nav-tab').removeClass('nav-tab-active');\n jQuery(this).addClass('nav-tab-active');\n });\n /**\n * Hamburger element selector option hide and show.\n */\n\n hideShowSelect('#rmp-menu-button-position-type', '.rmp-menu-hamburger-selector-div', 'show', 'inside-element');\n jQuery('#rmp-menu-button-position-type').on('change', function () {\n hideShowSelect(this, '.rmp-menu-hamburger-selector-div', 'show', 'inside-element');\n });\n /**\n * select hide show function\n * @para string select, string show/hide Element, string show/hide\n */\n\n function hideShowSelect(checkElement, targetElement, condition, value) {\n if (jQuery(checkElement).val() == value) {\n if (condition == 'show') {\n jQuery(targetElement).show();\n } else {\n jQuery(targetElement).hide();\n }\n } else {\n if (condition == 'show') {\n jQuery(targetElement).hide();\n } else {\n jQuery(targetElement).show();\n }\n }\n }\n /**\n * Check open/close of device options switcher.\n *\n * @version 4.0.0\n *\n * @fires click\n */\n\n\n jQuery('.rmp-device-switcher').on('click', function () {\n var isOpen = jQuery(this).hasClass('open');\n\n if (isOpen) {\n jQuery(this).removeClass('open');\n } else {\n jQuery('.rmp-device-switcher').removeClass('open');\n jQuery(this).addClass('open');\n }\n });\n /**\n * Change the option when select a device.\n *\n * @version 4.0.0\n *\n * @fires click\n */\n\n jQuery('.rmp-device-switcher li').on('click', function () {\n var selectedDevice = jQuery(this).attr('data-device');\n var firstDevice = jQuery('.rmp-device-switcher li:first-child').attr('data-device');\n\n if (selectedDevice != firstDevice) {\n activeDeviceOptions(selectedDevice);\n\n if ('desktop' == selectedDevice) {\n jQuery('#rmp-preview-desktop').trigger('click');\n } else if ('tablet' == selectedDevice) {\n jQuery('#rmp-preview-tablet').trigger('click');\n } else {\n jQuery('#rmp-preview-mobile').trigger('click');\n }\n }\n });\n /**\n * Active all the device options in editor.\n *\n * @version 4.0.0;\n * @param {string} selectedDevice This device name which is active.\n */\n\n function activeDeviceOptions(selectedDevice) {\n var firstDevice = jQuery('.rmp-device-switcher li:first-child').attr('data-device');\n var selectedIcon = jQuery('.rmp-device-switcher li[data-device=' + selectedDevice + ']').html();\n var firstIcon = jQuery('.rmp-device-switcher li:first-child').html();\n jQuery('.rmp-device-switcher li').each(function () {\n if (jQuery(this).attr('data-device') === selectedDevice) {\n jQuery(this).html(firstIcon);\n jQuery(this).attr('data-device', firstDevice);\n } else if (jQuery(this).attr('data-device') === firstDevice) {\n jQuery(this).html(selectedIcon);\n jQuery(this).attr('data-device', selectedDevice);\n }\n });\n }\n /**\n * Close the device switcher when mouseup other places.\n *\n * @version 4.0.0\n *\n * @fires mouseup\n */\n\n\n jQuery(document).on('mouseup', function (event) {\n var target = event.target;\n var deviceSwitcher = jQuery('.rmp-device-switcher');\n\n if (!deviceSwitcher.is(target) && 0 === deviceSwitcher.has(target).length) {\n deviceSwitcher.removeClass('open');\n }\n });\n /**\n * Active preview as per clicked device.\n *\n * @version 4.0.0\n *\n * @fires Click\n */\n\n jQuery('#rmp-editor-footer .rmp-preview-device-wrapper').on('click', 'button', function (e) {\n jQuery('#rmp-editor-footer').find('.rmp-preview-device-wrapper button').removeClass('active');\n jQuery('#rmp-editor-footer').find('.rmp-preview-device-wrapper button').attr('aria-pressed', 'false');\n jQuery(this).addClass('active');\n jQuery(this).attr('aria-pressed', 'true');\n var device = jQuery(this).data('device');\n var deviceEditor = jQuery('#rmp-editor-wrapper');\n var allClasses = deviceEditor.attr('class').split(' ');\n allClasses.forEach(function (value) {\n if (value.includes('rmp-preview-')) {\n deviceEditor.removeClass(value);\n }\n });\n deviceEditor.addClass('rmp-preview-' + device);\n activeDeviceOptions(device);\n });\n /**\n * Instantiate the accordion elements.\n * @version 4.0.0\n */\n\n jQuery('.rmp-accordion-container,.rmp-sub-accordion-container').accordion({\n collapsible: true,\n heightStyle: 'content',\n animate: 200,\n active: 0\n });\n /**\n * Instantiate the draggable and sortable menu item order elements.\n * \t@version 4.0.0\n */\n\n jQuery('#rmp-menu-ordering-items').accordion().sortable({\n placeholder: 'sortable-placeholder',\n opacity: 0.9,\n cursor: 'move',\n delay: 150,\n forcePlaceholderSize: true,\n active: false\n });\n /**\n * Stop propagating when click on item control element.\n */\n\n jQuery('#tab-container .item-controls, #tab-header-bar .item-controls').on('click', function (event) {\n event.stopPropagation();\n });\n /**\n * Show/Hide tooltip for option description.\n *\n * @version 4.0.0\n *\n * @fires click,mouseleave\n */\n\n jQuery('.rmp-tooltip-icon').on('click', function (e) {\n if (jQuery(this).hasClass('show-tooltip')) {\n return;\n } else {\n jQuery(this).addClass('show-tooltip');\n }\n\n var toolTipContents = jQuery(this).find('.rmp-tooltip-content');\n toolTipContents.css({\n 'left': e.pageX - toolTipContents.width() / 100 * 60,\n 'position': 'fixed',\n 'top': e.pageY - toolTipContents.height() - 10,\n 'bottom': 'unset'\n });\n toolTipContents.fadeIn();\n }).on('mouseleave', function () {\n jQuery(this).removeClass('show-tooltip');\n jQuery(this).find('.rmp-tooltip-content').fadeOut();\n });\n /**\n * Remove image from image picker\n *\n * @version 4.0.0\n *\n * @fires Click\n */\n\n jQuery('.rmp-image-picker ').on('click', '.rmp-image-picker-trash', function (e) {\n e.stopPropagation();\n e.preventDefault();\n jQuery(this).parent('.rmp-image-picker').siblings('input.rmp-image-url-input').val('');\n jQuery(this).parent('.rmp-image-picker').removeAttr('style');\n jQuery(this).remove();\n\n if (!jQuery('#rmp-editor-main').find('#rmp-menu-update-notification').length) {\n addUpdateNotification();\n }\n });\n /**\n * Show/Hide the theme uploader section in theme page.\n */\n\n jQuery('#rmp-upload-new-theme').on('click', function () {\n jQuery('#rmp-menu-library-import').toggleClass('hide');\n });\n /**\n * Hide theme uploader section when click on cancel.\n */\n\n jQuery('#rmp-menu-library-import-form').on('click', '.cancel', function (e) {\n jQuery('#rmp-menu-library-import').addClass('hide');\n });\n /**\n * Upload the theme file using dropzone.\n *\n * @version 4.0.0\n */\n\n jQuery('#rmp-menu-library-import-form').dropzone({\n clickable: true,\n acceptedFiles: '.zip',\n uploadMultiple: false,\n success: function success(file, response) {\n location.reload();\n },\n totaluploadprogress: function totaluploadprogress() {\n jQuery('.rmp-page-loader').css('display', 'flex');\n }\n });\n /**\n * Open theme options in editor footer.\n */\n\n jQuery('#rmp-theme-action').on('click', function (e) {\n jQuery('#rmp-footer-theme-options').toggleClass('open');\n });\n /**\n * Show/Hide the save theme wizard.\n */\n\n jQuery('.rmp-theme-save-button, #rmp-menu-save-theme-wizard .rmp-dialog-wrap .close').on('click', function (e) {\n jQuery('#rmp-menu-save-theme-wizard').toggle();\n });\n /**\n * Delete the theme from theme page.\n */\n\n jQuery('.rmp-theme-delete').on('click', function (e) {\n e.preventDefault();\n /** Ask for delete confirmation */\n\n var isConfirm = confirm('Are you sure, You want to delete this theme ?');\n\n if (!isConfirm) {\n return;\n } //Show the loader on deleting theme.\n\n\n var current_theme = jQuery(this);\n current_theme.append('<span class=\"spinner is-active\"></span>');\n var themeName = jQuery(this).attr('data-theme');\n var themeType = jQuery(this).attr('data-theme-type').toLowerCase();\n jQuery.ajax({\n url: rmpObject.ajaxURL,\n data: {\n 'action': 'rmp_theme_delete',\n 'ajax_nonce': rmpObject.ajax_nonce,\n 'theme_name': themeName,\n 'theme_type': themeType\n },\n type: 'POST',\n dataType: 'json',\n error: function error(_error4) {\n console.log(_error4.statusText);\n },\n success: function success(response) {\n current_theme.find('.spinner').removeClass('is-active');\n\n if (response.success) {\n location.reload();\n } else {\n alert(response.data.message);\n }\n }\n });\n });\n /**\n * Apply the selected theme in current active menu in editor.\n *\n * @version 4.0.0\n *\n * @fires click\n */\n\n jQuery(document).on('click', '.rmp-theme-apply', function (e) {\n //Show the overlay with loader.\n jQuery('.rmp-page-loader').css('display', 'flex');\n jQuery.ajax({\n url: rmpObject.ajaxURL,\n data: {\n 'action': 'rmp_theme_apply',\n 'ajax_nonce': rmpObject.ajax_nonce,\n 'theme_name': jQuery(this).attr('theme-name'),\n 'theme_type': jQuery(this).attr('theme-type').toLowerCase(),\n 'menu_id': jQuery('#menu_id').val(),\n 'menu_to_use': jQuery('#rmp-menu-to-use').val()\n },\n type: 'POST',\n dataType: 'json',\n error: function error(_error5) {\n console.log(_error5.statusText);\n jQuery('.rmp-page-loader').hide();\n },\n success: function success(response) {\n if (response.success) {\n location.reload();\n } else {\n jQuery('.rmp-page-loader').hide();\n alert(response.data.message);\n }\n }\n });\n });\n /**\n * Save the global settings on click.\n *\n * @version 4.0.0\n *\n * @fires click\n */\n\n jQuery('.rmp-save-global-settings-button').on('click', function (e) {\n e.preventDefault();\n jQuery.ajax({\n url: rmpObject.ajaxURL,\n data: {\n 'action': 'rmp_save_global_settings',\n 'ajax_nonce': rmpObject.ajax_nonce,\n 'form': jQuery('#rmp-global-settings').serialize()\n },\n type: 'POST',\n dataType: 'json',\n beforeSend: function beforeSend() {\n jQuery(this).prop('disabled', true);\n jQuery('.spinner').addClass('is-active');\n },\n error: function error(_error6) {\n console.log('Internal Error !' + _error6);\n },\n success: function success(response) {\n jQuery('.spinner').removeClass('is-active');\n jQuery(this).prop('disabled', false);\n }\n });\n });\n /**\n * Initiate multiple selectize option of editor.\n */\n\n jQuery('#rmp-keyboard-shortcut-close-menu,#rmp-keyboard-shortcut-open-menu').selectize({\n maxItems: 2,\n plugins: ['remove_button']\n });\n /**\n * Event to linked the group inputs.\n *\n * @fires Click\n */\n\n jQuery(document).on('click', 'button.rmp-group-input-linked', function () {\n jQuery(this).toggleClass('is-linked');\n });\n /**\n * Event to type on all sibblings input if linked.\n *\n * @fires keyup\n */\n\n jQuery(document).on('keyup', 'input.rmp-group-input', function (event) {\n var pressedKeys = this.value.toLocaleLowerCase();\n var parent = jQuery(this).parents('.rmp-input-group-control');\n var isLinked = parent.find('.is-linked');\n\n if (isLinked.length) {\n parent.find('input.rmp-group-input').val(pressedKeys);\n } else {\n jQuery(this).val(pressedKeys);\n }\n });\n /**\n * Function to add the notification and update button.\n */\n\n function addUpdateNotification() {\n if (!jQuery('#rmp-editor-main').find('#rmp-menu-update-notification').length) {\n jQuery('#rmp-editor-main').prepend('<div id=\"rmp-menu-update-notification\" class=\"rmp-order-item rmp-order-item-description\">' + '<span> <span class=\"rmp-font-icon dashicons dashicons-warning \"></span> Update Required </span>' + '<a href=\"javascript:void(0)\" id=\"rmp-menu-quick-update-button\">UPDATE</a>' + '</div>');\n }\n }\n\n jQuery('form#rmp-editor-form').on('keyup change paste', 'input, select, textarea, radio, checkbox', function () {\n if (!jQuery(this).hasClass('no-updates')) {\n addUpdateNotification();\n }\n });\n jQuery(document).on('click', '#rmp-icon-dialog-select,.media-button-select,.rmp-icon-picker,.rmp-image-picker', function () {\n if (!jQuery('#rmp-editor-main').find('#rmp-menu-update-notification').length) {\n addUpdateNotification();\n }\n });\n /**\n * Event to download exported menu settings as json file.\n *\n * @version 4.0.0\n */\n\n jQuery('#rmp-export-menu-button').on('click', function (e) {\n e.preventDefault();\n var menu_id = jQuery('#rmp_export_menu_list').val();\n jQuery.ajax({\n url: rmpObject.ajaxURL,\n data: {\n 'action': 'rmp_export_menu',\n 'ajax_nonce': rmpObject.ajax_nonce,\n 'menu_id': menu_id\n },\n type: 'POST',\n dataType: 'json',\n beforeSend: function beforeSend() {\n jQuery('#rmp-export-menu-button').prop('disabled', true);\n },\n error: function error(_error7) {\n console.log(_error7.statusText);\n jQuery('#rmp-export-menu-button').prop('disabled', false);\n },\n success: function success(response) {\n jQuery('#rmp-export-menu-button').prop('disabled', false);\n\n if (response.data) {\n var menu_name = jQuery('#rmp_export_menu_list').children(\":selected\").text().trim().toLocaleLowerCase().split(' ').join('-');\n download_file(response.data, menu_name + '.json', 'application/json');\n }\n }\n });\n });\n /**\n * Function to download the content as file.\n *\n * @since 4.0.0\n *\n * @param {String} content Contents for file\n * @param {String} name Name of the file.\n * @param {String} type File type\n */\n\n function download_file(content, name, type) {\n var link = document.body.appendChild(document.createElement('a'));\n var file = new Blob([content], {\n type: type\n });\n link.href = URL.createObjectURL(file);\n link.download = name;\n link.click();\n }\n /**\n * Event to download exported menu settings as json file.\n *\n * @version 4.0.0\n */\n\n\n jQuery('#rmp-import-menu-button').on('click', function (e) {\n e.preventDefault();\n var menu_id = jQuery('#rmp_import_menu_list').val();\n\n if (!menu_id) {\n alert('Please create menu first ! ');\n return;\n }\n\n var file_data = jQuery('#rmp_input_import_file')[0].files[0];\n\n if (!file_data) {\n alert('Choose export file ! ');\n return;\n }\n\n var form_data = new FormData();\n form_data.append('file', file_data);\n form_data.append('ajax_nonce', rmpObject.ajax_nonce);\n form_data.append('menu_id', menu_id);\n form_data.append('action', 'rmp_import_menu');\n jQuery.ajax({\n url: rmpObject.ajaxURL,\n data: form_data,\n type: 'POST',\n cache: false,\n contentType: false,\n processData: false,\n dataType: 'json',\n beforeSend: function beforeSend() {\n jQuery('#rmp-import-menu-button').prop('disabled', true);\n },\n error: function error(_error8) {\n console.log(_error8.statusText);\n jQuery('#rmp-import-menu-button').prop('disabled', false);\n },\n success: function success(response) {\n jQuery('#rmp-import-menu-button').prop('disabled', false);\n noticeClass = 'notice-error';\n\n if (response.success) {\n noticeClass = 'notice-success';\n jQuery('#rmp_input_import_file').val('');\n }\n\n jQuery('#rmp-global-settings').before('<div class=\"notice ' + noticeClass + ' settings-error is-dismissible\"> <p>' + response.data.message + '</p></div>');\n setTimeout(function () {\n jQuery('#rmp-global-settings').parent().find('.notice').remove();\n }, 3000);\n }\n });\n });\n /**\n * Function to manage menu container animation options.\n *\n * @param {String} optionValue\n */\n\n function updateMenuContainerAnimationOptions(optionValue) {\n if ('push' === optionValue) {\n jQuery('#rmp-page-wrapper').parents('.rmp-input-control-wrapper').fadeIn();\n } else {\n jQuery('#rmp-page-wrapper').parents('.rmp-input-control-wrapper').fadeOut();\n }\n\n if ('fade' === optionValue) {\n jQuery('#rmp-menu-appear-from option[value=\"top\"]').hide();\n jQuery('#rmp-menu-appear-from option[value=\"bottom\"]').hide();\n } else {\n jQuery('#rmp-menu-appear-from option[value=\"top\"]').show();\n jQuery('#rmp-menu-appear-from option[value=\"bottom\"]').show();\n }\n } // Menu container animation type and their options.\n\n\n updateMenuContainerAnimationOptions(jQuery('#rmp-animation-type').val());\n jQuery('#rmp-editor-wrapper').on('change', '#rmp-animation-type', function (e) {\n var optionValue = jQuery(this).val();\n updateMenuContainerAnimationOptions(optionValue);\n });\n /**\n * Event to back on home page under preview screen.\n *\n * @since 4.1.0\n *\n * @fires click\n *\n * @return void\n */\n\n jQuery('#rmp-preview-wrapper').on('click', function () {\n var url = window.location.href;\n url = url.substring(0, url.indexOf('wp-admin')) + '?rmp_preview_mode=true';\n jQuery('#rmp-preview-iframe-loader').show();\n jQuery('#rmp-preview-iframe').attr('src', url);\n });\n /** Call ajax to hide admin notice permanent. */\n\n jQuery('.notice-responsive-menu').on('click', '.notice-dismiss', function (event) {\n event.preventDefault();\n jQuery.ajax({\n type: \"POST\",\n url: rmpObject.ajaxURL,\n data: 'action=rmp_upgrade_admin_notice_dismiss'\n });\n });\n});\n\n//# sourceURL=webpack://responsive-menu-pro/./assets/admin/js/rmp-admin.js?")},"./assets/admin/js/rmp-editor.js":function(){eval("/**\n * This file container the editor multi level features.\n *\n * @version 4.0.0\n *\n * @type {Object}\n */\nvar rmpEditor = {\n editorSidebar: '#rmp-editor-wrapper',\n sidebarDrawer: 'button.collapse-sidebar',\n mainForm: '#rmp-editor-form',\n editorContainer: '#rmp-editor-main',\n topParentNav: '#rmp-editor-nav',\n topParentTab: '#rmp-editor-pane',\n childTabs: '.rmp-accordions',\n parentTabItem: '.rmp-editor-pane-parent li.rmp-tab-item',\n tabItem: 'li.rmp-tab-item',\n quickItem: '.rmp-quick-edit-link',\n tabItemTitle: '.rmp-tab-item-title',\n titleLogo: '.rmp-editor-header-logo',\n closeButton: '.rmp-editor-header-close',\n searchButton: '.rmp-search-settings-btn',\n searchForm: '.rmp-search-settings',\n titleText: '.rmp-editor-header-title',\n backButton: '.rmp-editor-header-back',\n accordionItem: 'li.rmp-accordion-item',\n tabId: null,\n level: 0,\n triggerBack: function triggerBack() {\n this.level--;\n parentId = jQuery('#' + this.tabId).attr('aria-parent');\n jQuery('#' + parentId).show();\n var title = jQuery('#' + parentId).attr('aria-label');\n this.updateHeader(title);\n jQuery('#' + this.tabId).hide();\n this.tabId = parentId;\n },\n updatePanel: function updatePanel(current) {\n this.tabId = current.attr('aria-owns');\n jQuery('#' + this.tabId).show();\n parentId = current.parent('ul').parent('div').attr('id');\n jQuery('#' + this.tabId).attr('aria-parent', parentId);\n jQuery('#' + parentId).hide();\n },\n updateQuickPanel: function updateQuickPanel(current) {\n this.tabId = current.attr('aria-owns');\n var accordionId = current.attr('accordion-id');\n var subAccordionId = current.attr('sub-accordion-id');\n var subTabId = current.attr('sub-tab-id');\n parentId = jQuery(\".rmp-accordions:visible\").attr('id');\n jQuery('#' + this.tabId).attr('aria-parent', parentId);\n jQuery('#' + parentId).hide();\n jQuery('#' + this.tabId).show();\n\n if (accordionId != '') {\n if (!jQuery('#' + accordionId).hasClass(\"ui-state-active\")) {\n jQuery('#' + accordionId).click();\n }\n\n if (subAccordionId != '') {\n if (!jQuery('#' + subAccordionId).hasClass(\"ui-state-active\")) {\n jQuery('#' + subAccordionId).click();\n }\n\n accordionId = subAccordionId;\n }\n\n setTimeout(function () {\n var topPos = document.getElementById(accordionId).offsetTop;\n jQuery('#rmp-editor-main').animate({\n scrollTop: topPos - 60 + 'px'\n }, 500);\n }, 400);\n }\n\n if (subTabId != '') {\n jQuery('#' + subTabId).click();\n }\n },\n updateHeader: function updateHeader(title) {\n if (0 == this.level) {\n jQuery(this.titleLogo).find('img').show();\n jQuery(this.closeButton).show();\n jQuery(this.backButton).hide();\n jQuery(this.searchForm).css('width', '200');\n } else if (1 == this.level) {\n jQuery(this.backButton).css('display', 'flex');\n jQuery(this.titleLogo).find('img').hide();\n jQuery(this.closeButton).hide();\n jQuery(this.searchForm).css('width', '255');\n }\n\n jQuery(this.titleText).text(title);\n },\n init: function init() {\n var self = this; // Move on next panel when click on item.\n\n jQuery(self.editorContainer).on('click', self.tabItem, function (e) {\n e.stopPropagation();\n e.preventDefault();\n current = jQuery(this);\n self.level++;\n self.updateHeader(current.text());\n self.updatePanel(current);\n }); // Move on next panel when click on item.\n\n jQuery(self.editorContainer).on('click', self.quickItem, function (e) {\n e.stopPropagation();\n e.preventDefault();\n current = jQuery(this);\n var tabId = current.attr('aria-owns');\n var title = jQuery('.rmp-tab-item[aria-owns=\"' + tabId + '\"]').find('.rmp-tab-item-title').html();\n self.level++;\n self.updateHeader(title);\n self.updateQuickPanel(current);\n }); // Back from inner panel when click on back button.\n\n jQuery(self.backButton).on('click', function (e) {\n e.stopPropagation();\n self.triggerBack();\n }); // Open/Close the editor setting sidebar.\n\n jQuery(self.sidebarDrawer).on('click', function (e) {\n jQuery(self.editorSidebar).toggleClass('expanded collapsed');\n }); // Open/Close the search form.\n\n jQuery(self.searchButton).on('click', function (e) {\n jQuery(self.searchForm).toggle();\n }); //Search settings\n\n jQuery.expr[':'].containsIgnoreCase = function (n, i, m) {\n return jQuery(n).text().toUpperCase().indexOf(m[3].toUpperCase()) >= 0;\n };\n\n jQuery.fn.highlight = function (pat) {\n function innerHighlight(node, pat) {\n var skip = 0;\n\n if (jQuery(node).is(\"select,input,textarea, .rmp-tooltip-content \")) {\n return skip;\n }\n\n if (node.nodeType == 3) {\n var pos = node.data.toUpperCase().indexOf(pat);\n\n if (pos >= 0) {\n var spannode = document.createElement('i');\n spannode.className = 'rmp-highlight';\n var middlebit = node.splitText(pos);\n middlebit.splitText(pat.length);\n var middleclone = middlebit.cloneNode(true);\n spannode.appendChild(middleclone);\n middlebit.parentNode.replaceChild(spannode, middlebit);\n skip = 1;\n }\n } else if (node.nodeType == 1 && node.childNodes && !/(script|style)/i.test(node.tagName)) {\n for (var i = 0; i < node.childNodes.length; ++i) {\n i += innerHighlight(node.childNodes[i], pat);\n }\n }\n\n return skip;\n }\n\n return this.each(function () {\n innerHighlight(this, pat.toUpperCase());\n });\n };\n\n jQuery.fn.removeHighlight = function () {\n function newNormalize(node) {\n for (var i = 0, children = node.childNodes, nodeCount = children.length; i < nodeCount; i++) {\n var child = children[i];\n\n if (child.nodeType == 1) {\n newNormalize(child);\n continue;\n }\n\n if (child.nodeType != 3) {\n continue;\n }\n\n var next = child.nextSibling;\n\n if (next == null || next.nodeType != 3) {\n continue;\n }\n\n var combined_text = child.nodeValue + next.nodeValue;\n var new_node = node.ownerDocument.createTextNode(combined_text);\n node.insertBefore(new_node, child);\n node.removeChild(child);\n node.removeChild(next);\n i--;\n nodeCount--;\n }\n }\n\n return this.find(\"i.rmp-highlight\").each(function () {\n var thisParent = this.parentNode;\n thisParent.replaceChild(this.firstChild, this);\n newNormalize(thisParent);\n }).end();\n };\n\n jQuery(document).on('keyup change search', self.searchForm, function () {\n var searchTerm = jQuery(this).val();\n jQuery('#rmp-editor-main').removeHighlight();\n jQuery('.rmp-search-results-found').remove();\n if (searchTerm == '') return false;\n jQuery('#rmp-editor-main').highlight(searchTerm);\n jQuery(self.parentTabItem).each(function () {\n var target = \"#\" + jQuery(this).attr(\"aria-owns\");\n var count = jQuery(target).find(\"i.rmp-highlight:containsIgnoreCase(\" + searchTerm + \")\").length;\n jQuery(target).find(self.tabItem).each(function () {\n var childTarget = \"#\" + jQuery(this).attr(\"aria-owns\");\n var childCount = jQuery(childTarget).find(\"i.rmp-highlight:containsIgnoreCase(\" + searchTerm + \")\").length;\n\n if (childCount > 0) {\n jQuery(this).append('<span class=\"rmp-search-results-found\">' + childCount + ' Results</span>');\n count = Number(count) + Number(childCount);\n }\n });\n\n if (count > 0) {\n jQuery(target).find(self.accordionItem).each(function () {\n var accordionItemCount = jQuery(this).find(\":not(.accordion-item-title, .item-title) > i.rmp-highlight:containsIgnoreCase(\" + searchTerm + \")\").length;\n\n if (accordionItemCount > 0) {\n jQuery(this).find('.rmp-accordion-title:first > .accordion-item-title, .rmp-accordion-title:first > .item-title').append('<span class=\"rmp-search-results-found\">' + accordionItemCount + ' Results</span>');\n }\n });\n jQuery(this).append('<span class=\"rmp-search-results-found\">' + count + ' Results</span>');\n }\n });\n });\n }\n};\nrmpEditor.init();\n\n//# sourceURL=webpack://responsive-menu-pro/./assets/admin/js/rmp-editor.js?")},"./assets/admin/js/rmp-icon.js":function(){eval("/**\n * This file contain the script to handle the icon wizard and it's operation.\n *\n * @version 4.0.0\n */\njQuery(document).ready(function () {\n var RMP_Icon = {\n iconSelect: '#rmp-icon-dialog-select',\n iconContainer: '.rmp-menu-icons-dialog',\n clearSelector: '#rmp-icon-dialog-clear',\n closeSelector: '.rmp-menu-icons-dialog .rmp-dialog-header button.close',\n clear: function clear() {\n var self = this;\n jQuery(self.clearSelector).on('click', function () {\n jQuery(self.iconContainer).find('input').prop('checked', false);\n });\n },\n closeDialog: function closeDialog() {\n var self = this;\n jQuery(self.closeSelector).on('click', function () {\n jQuery(self.iconContainer).hide();\n });\n },\n openDialog: function openDialog(iconChooser) {\n var self = this;\n jQuery(iconChooser).on('click', function (e) {\n e.stopPropagation();\n jQuery(self.iconContainer).show();\n jQuery(self.iconSelect).attr('data-click', jQuery(e.target).attr('id'));\n });\n },\n getIconElementWrap: function getIconElementWrap(icon_class) {\n if (icon_class.includes('material-icons')) {\n icon_class = icon_class.replace('material-icons', '');\n return '<span class=\"rmp-font-icon material-icons\">' + icon_class + '</span>';\n }\n\n return '<span class=\"rmp-font-icon ' + icon_class + ' \"></span>';\n },\n removeIcon: function removeIcon(iconChooser) {\n jQuery(iconChooser).on('click', '.rmp-icon-picker-trash', function (e) {\n e.preventDefault();\n e.stopPropagation();\n jQuery(this).parent('.rmp-icon-picker').siblings('input.rmp-icon-hidden-input').val('');\n jQuery(this).siblings('.rmp-font-icon').remove();\n jQuery(this).parent('.rmp-icon-picker').removeAttr('data-icon');\n jQuery(this).remove();\n\n if (!jQuery('#rmp-editor-main').find('#rmp-menu-update-notification').length) {\n jQuery('#rmp-editor-main').prepend('<div id=\"rmp-menu-update-notification\" class=\"rmp-order-item rmp-order-item-description\">' + '<span> <span class=\"rmp-font-icon dashicons dashicons-warning \"></span> Update Required </span>' + '<a href=\"javascript:void(0)\" id=\"rmp-menu-quick-update-button\">UPDATE</a>' + '</div>');\n }\n });\n },\n getIcon: function getIcon() {\n var self = this;\n jQuery(document).on('click', this.iconSelect, function () {\n icon_class = jQuery(self.iconContainer).find('input:checked').val();\n clicker = '#' + jQuery(self.iconSelect).attr('data-click');\n icon_wrap = self.getIconElementWrap(icon_class);\n jQuery(clicker).find('.rmp-font-icon').remove();\n jQuery(clicker).prev('input.rmp-icon-hidden-input').val(icon_wrap);\n jQuery(clicker).append(icon_wrap);\n jQuery(clicker).attr('data-icon', true);\n jQuery(clicker).find('.rmp-icon-picker-trash').remove();\n jQuery(clicker).append('<i class=\"rmp-icon-picker-trash dashicons dashicons-trash\" aria-hidden=\"true\"></i>');\n jQuery(self.iconSelect).removeAttr('data-click');\n jQuery(self.closeSelector).click();\n jQuery(clicker).prev('input').first().focus();\n });\n },\n init: function init(iconChooser) {\n this.openDialog(iconChooser);\n this.removeIcon(iconChooser);\n this.getIcon();\n this.clear();\n this.closeDialog();\n jQuery('#rmp-icon-search').on('keyup', _.debounce(this.searchIcon, 500));\n jQuery('#rmp-icon-search').on('keyup', function () {\n var query_string = this.value.toLocaleLowerCase();\n\n if (query_string.length) {\n if (!jQuery('#rmp-icon-search-typing-message').length) {\n jQuery(this).after('<span id=\"rmp-icon-search-typing-message\"> Waiting for more keystrokes... </span>');\n } else {\n jQuery('#rmp-icon-search-typing-message').html('Waiting for more keystrokes...');\n }\n }\n });\n /**\n * Create menu item icon selector.\n */\n\n jQuery(document).on('click', '.delete-menu-item-icon', function () {\n jQuery(this).closest('.rmp-menu-item-icon-container').remove();\n });\n },\n searchIcon: function searchIcon(e) {\n jQuery('#rmp-icon-search-typing-message').html('Please wait moment..');\n var query_string = this.value.toLocaleLowerCase();\n var activeTab = jQuery('.rmp-menu-icons-dialog').find('.nav-tab-active');\n\n if (!activeTab.length) {\n activeTab = jQuery('.rmp-menu-icons-dialog').find('.nav-tab').first();\n }\n\n icon_container = activeTab.attr('href');\n var icon_selector = jQuery(icon_container + ' .font-icon');\n var is_exist = false;\n icon_selector.each(function () {\n var icon_label = jQuery(this).children('input').val().toLocaleLowerCase();\n\n if (icon_label.includes(query_string)) {\n jQuery(this).show();\n is_exist = true;\n } else {\n jQuery(this).hide();\n }\n });\n\n if (is_exist) {\n jQuery('#rmp-icon-search-typing-message').html('Done, Check results..');\n } else {\n jQuery('#rmp-icon-search-typing-message').html('Sorry, Not found..');\n }\n }\n };\n RMP_Icon.init('.rmp-icon-picker');\n});\n\n//# sourceURL=webpack://responsive-menu-pro/./assets/admin/js/rmp-icon.js?")},"./assets/admin/js/rmp-menu-wizard.js":function(__unused_webpack_module,__webpack_exports__,__webpack_require__){"use strict";eval("__webpack_require__.r(__webpack_exports__);\n/**\n * This is js hook scripts file for responsive menu.\n *\n * @file This files defines the rmpNewMenuWizard object.\n * @author ExpressTech System.\n *\n * @since 4.1.0\n *\n * @package responsive-menu-pro\n */\n\n/**\n * Hooks class.\n *\n * @type {Object}\n *\n * @since 4.1.0\n */\n\nvar rmpMenuWizard = {\n /**\n * Initialize.\n *\n * @return {void}\n */\n init: function init() {\n this.setProps();\n },\n\n /**\n * Set properties and selectors.\n *\n * @return {void}\n */\n setProps: function setProps() {\n var _this = this;\n\n //Assign wizard container element id.\n var menuWizardContainer = jQuery('#rmp-new-menu-wizard'); //Open new create menu wizard on click event.\n\n jQuery(document).on('click', 'a.page-title-action', function (e) {\n e.preventDefault();\n menuWizardContainer.show();\n }); //Close the new menu wizard.\n\n jQuery('#rmp-new-menu-wizard .rmp-dialog-header button.close').on('click', function () {\n menuWizardContainer.hide();\n }); //Show/Hide the page selection input control.\n\n menuWizardContainer.on('change', '.rmp-menu-display-option', function (e) {\n var optionValue = jQuery(this).val();\n\n if ('exclude-pages' === optionValue || 'include-pages' === optionValue) {\n jQuery('#rmp-menu-page-selector').show();\n return;\n }\n\n jQuery('#rmp-menu-page-selector').hide();\n }); //Show/Hide change theme wizard in customizer page.\n\n jQuery('.rmp-theme-change-button').on('click', function (e) {\n menuWizardContainer.toggle();\n }); //Multi step form event for next button.\n\n jQuery('#rmp-menu-next-step').on('click', function () {\n _this.nextSection();\n }); //Multi step form event for top item label.\n\n jQuery('li.rmp-new-menu-step').on('click', function (e) {\n var index = jQuery(e.currentTarget).index();\n\n _this.goToSection(index);\n }); //Call ajax to save the new create menu.\n\n jQuery('#rmp-create-new-menu').on('click', function (e) {\n e.preventDefault();\n var menuName = jQuery('#rmp-menu-name');\n var themeName = jQuery('.rmp-theme-option:checked').val();\n\n if (themeName == undefined) {\n themeName = '';\n }\n\n jQuery.ajax({\n url: rmpObject.ajaxURL,\n data: {\n 'action': 'rmp_create_new_menu',\n 'ajax_nonce': rmpObject.ajax_nonce,\n 'menu_name': menuName.val(),\n 'menu_to_hide': jQuery('#rmp-hide-menu').val(),\n 'menu_to_use': jQuery('#rmp-menu-to-use').val(),\n 'menu_show_on_pages': jQuery('#rmp-menu-display-on-pages').val(),\n 'menu_show_on': jQuery('.rmp-menu-display-option').val(),\n 'menu_theme': themeName,\n 'theme_type': jQuery('.rmp-theme-option:checked').attr('theme-type')\n },\n type: 'POST',\n dataType: 'json',\n beforeSend: function beforeSend() {\n jQuery(e.currentTarget).prop('disabled', true);\n jQuery('.spinner').addClass('is-active');\n },\n error: function error(_error) {\n console.log('Internal Error !');\n jQuery('#rmp-create-new-menu').prop('disabled', false);\n jQuery('.spinner').removeClass('is-active');\n },\n success: function success(response) {\n jQuery('.spinner').removeClass('is-active');\n jQuery('#rmp-create-new-menu').prop('disabled', false);\n\n if (response.success) {\n window.location.href = response.data.customize_url;\n } else {\n alert(response.data.message);\n }\n }\n });\n }); //Ajax call to upload the theme.\n\n jQuery('#rmp-theme-upload').on('click', function (e) {\n e.preventDefault();\n var formData = new FormData();\n var file = jQuery('#rmp_menu_theme_zip').prop('files')[0];\n formData.append('file', file);\n formData.append('action', 'rmp_menu_theme_upload');\n formData.append('ajax_nonce', rmpObject.ajax_nonce);\n jQuery.ajax({\n url: rmpObject.ajaxURL,\n data: formData,\n type: 'POST',\n processData: false,\n contentType: false,\n dataType: 'json',\n success: function success(response) {\n jQuery('#rmp_menu_theme_zip').val('');\n alert(response.data.message);\n\n if (response.data.html) {\n jQuery('#rmp-new-menu-wizard').find('#tabs-1').html(response.data.html);\n jQuery('#rmp-menu-library-import').addClass('hide');\n }\n }\n });\n }); //Ajax call to check the recent changes the theme api.\n\n jQuery('.rmp-call-theme-api-button').on('click', function (e) {\n if (!jQuery(e.currentTarget).hasClass('rmp-call-theme-api-button')) {\n return;\n }\n\n jQuery('#rmp-new-menu-wizard').find('.rmp-page-loader').css('display', 'flex');\n jQuery.ajax({\n url: rmpObject.ajaxURL,\n data: {\n 'action': 'rmp_call_theme_api',\n 'ajax_nonce': rmpObject.ajax_nonce\n },\n type: 'POST',\n dataType: 'json',\n error: function error(_error2) {\n jQuery('#rmp-new-menu-wizard').find('.rmp-page-loader').hide();\n jQuery('#rmp-new-menu-wizard').find('#tabs-2 .rmp_theme_grids').html('Internal Error !');\n },\n success: function success(response) {\n if (response.data.html) {\n jQuery('#rmp-new-menu-wizard').find('#tabs-2 .rmp_theme_grids').html(response.data.html);\n jQuery(e.currentTarget).removeClass('rmp-call-theme-api-button');\n }\n }\n });\n });\n },\n\n /**\n * Jump to the next section of wizard.\n *\n * @return {void}\n */\n nextSection: function nextSection() {\n var currectSectionIndex = jQuery('div.rmp-menu-section.current').index();\n this.goToSection(currectSectionIndex + 1);\n },\n\n /**\n * Show the indexed section in wizard.\n *\n * @return {void}\n */\n goToSection: function goToSection(currectSectionIndex) {\n if (1 <= currectSectionIndex) {\n jQuery('#rmp-create-new-menu').show();\n jQuery('#rmp-menu-next-step').hide();\n } else {\n jQuery('#rmp-create-new-menu').hide();\n jQuery('#rmp-menu-next-step').show();\n }\n\n jQuery('div.rmp-menu-section').eq(currectSectionIndex).addClass('current').siblings().removeClass('current');\n jQuery('li.rmp-new-menu-step').eq(currectSectionIndex).addClass('current').siblings().removeClass('current');\n }\n};\nrmpMenuWizard.init();\n/* harmony default export */ __webpack_exports__[\"default\"] = (rmpMenuWizard);\n\n//# sourceURL=webpack://responsive-menu-pro/./assets/admin/js/rmp-menu-wizard.js?")},"./assets/admin/js/rmp-preview.js":function(){eval("/**\n * This is preview scripts file for responsive menu customizer.\n *\n * @file This files defines the rmpHook object.\n * @author ExpressTech System.\n * @type {Object}\n *\n * @since 4.0.0\n *\n * @package responsive-menu-pro\n */\n\n/**\n * Hooks class.\n *\n * @type {Object}\n *\n * @since 4.0.0\n */\nvar rmpHook = {\n hooks: [],\n isBreak: false,\n\n /**\n * Function to register the hook.\n *\n * @since 4.0.0\n *\n * @param String name Hook Name.\n * @param function callback Associated function.\n */\n register: function register(name, callback) {\n if ('undefined' == typeof rmpHook.hooks[name]) {\n rmpHook.hooks[name] = [];\n }\n\n rmpHook.hooks[name].push(callback);\n },\n\n /**\n * Function to call the hook.\n *\n * @since 4.0.0\n *\n * @param String name Hook Name.\n * @param function params Paramter list.\n */\n call: function call(name, params) {\n if ('undefined' != typeof rmpHook.hooks[name]) {\n for (var i = 0; i < rmpHook.hooks[name].length; ++i) {\n var output = rmpHook.hooks[name][i](params);\n\n if (false == output) {\n rmpHook.isBreak = true;\n return false;\n }\n\n return output;\n }\n }\n\n return true;\n }\n};\n/**\n * Register function to color the menu elements.\n * \n * @since 4.0.0\n * \n * @param {Object} args List of inputs.\n * @return {String}\n */\n\nrmpHook.register('rmp_color_style', function (args) {\n if (!args) {\n return false;\n } // Set the state/pseudo class.\n\n\n if ('hover' == args.state) {\n args.outputSelector = args.outputSelector + ':hover';\n } else if ('placeholder' == args.state) {\n args.outputSelector = args.outputSelector + '::placeholder';\n } else if ('before' == args.state) {\n args.outputSelector = args.outputSelector + '::before';\n } else if ('after' == args.state) {\n args.outputSelector = args.outputSelector + '::after';\n } //Prepare css string and return.\n\n\n return args.outputSelector + '{ ' + args.attr + ' : ' + args.value + ';}';\n});\n/**\n * rmpPreview class\n * \n * @since 4.0.0\n * \n * @type {Object}\n */\n\nwindow.RMP_Preview = {\n iframe: '#rmp-preview-iframe',\n menuId: jQuery('#menu_id').val(),\n mobile_breakpoint: jQuery('#rmp-menu-mobile-breakpoint').val() + 'px',\n tablet_breakpoint: jQuery('#rmp-menu-tablet-breakpoint').val() + 'px',\n active_device: jQuery('#rmp_device_mode'),\n menuContainer: '#rmp-container-' + self.menuId,\n onTyping: function onTyping(inputSelector, outputSelector, type) {\n var meta = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : '';\n var self = this;\n var iframe = jQuery(self.iframe);\n jQuery(inputSelector).on('keyup change paste', function () {\n switch (type) {\n case 'border-radius':\n var value = jQuery(this).val();\n css = outputSelector + '{ border-radius : ' + value + 'px;}';\n self.inlineCssInjector(css);\n break;\n\n case 'section-padding':\n var value = jQuery(this).val();\n var is_linked = jQuery(this).parents('.rmp-input-group-control').find('.rmp-group-input-linked').hasClass('is-linked');\n var attr = 'padding';\n\n if (!is_linked) {\n pos = jQuery(this).attr('data-input');\n attr = attr + '-' + pos;\n }\n\n css = outputSelector + '{ ' + attr + ' : ' + value + ';}';\n self.inlineCssInjector(css);\n break;\n\n case 'trigger-text':\n if (iframe.contents().find(outputSelector).length) {\n iframe.contents().find(outputSelector).html(this.value);\n } else {\n iframe.contents().find('#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-box').before('<div class=\"rmp-trigger-label rmp-trigger-label-top\"><span class=\"rmp-trigger-text\">\"' + this.value + '\"</span></div>');\n }\n\n break;\n\n case 'trigger-text-open':\n if (iframe.contents().find(outputSelector).length) {\n iframe.contents().find(outputSelector).html(this.value);\n } else {\n iframe.contents().find('#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-box').before('<div class=\"rmp-trigger-label rmp-trigger-label-top\"><span class=\"rmp-trigger-text-open\">\"' + this.value + '\"</span></div>');\n }\n\n break;\n\n case 'text':\n iframe.contents().find(outputSelector).html(this.value);\n break;\n\n case 'placeholder':\n iframe.contents().find(outputSelector).attr('placeholder', this.value);\n break;\n\n case 'href':\n iframe.contents().find(outputSelector).attr('href', this.value);\n break;\n\n case 'font-size':\n var unit = jQuery(this).next('.is-unit').val();\n\n if (!unit.length) {\n unit = 'px';\n }\n\n var value = jQuery(this).val();\n css = outputSelector + '{ font-size : ' + (value + unit) + ';}';\n\n if (jQuery(this).attr('multi-device')) {\n css = self.mediaQuery(css);\n }\n\n self.inlineCssInjector(css);\n break;\n\n case 'width':\n var unit = jQuery(this).next('.is-unit').val();\n\n if (!unit) {\n unit = 'px';\n }\n\n css = outputSelector + '{ width : ' + (this.value + unit) + ';}';\n self.inlineCssInjector(css);\n break;\n\n case 'height':\n var unit = jQuery(this).next('.is-unit').val();\n\n if (!unit.length) {\n unit = 'px';\n }\n\n css = outputSelector + '{ height : ' + (this.value + unit) + ';}';\n\n if (jQuery(this).attr('multi-device')) {\n css = self.mediaQuery(css);\n }\n\n self.inlineCssInjector(css);\n break;\n\n case 'line-height':\n var unit = jQuery(this).next('.is-unit').val();\n\n if (!unit.length) {\n unit = 'px';\n }\n\n css = outputSelector + '{ line-height : ' + (this.value + unit) + ';}';\n\n if (jQuery(this).attr('multi-device')) {\n css = self.mediaQuery(css);\n }\n\n self.inlineCssInjector(css);\n break;\n\n case 'min-width':\n var unit = jQuery(this).next('.is-unit').val();\n\n if (!unit.length) {\n unit = 'px';\n }\n\n css = outputSelector + '{ min-width : ' + (this.value + unit) + ';}';\n self.inlineCssInjector(css);\n break;\n\n case 'max-width':\n var unit = jQuery(this).next('.is-unit').val();\n\n if (!unit.length) {\n unit = 'px';\n }\n\n css = outputSelector + '{ max-width : ' + (this.value + unit) + ';}';\n self.inlineCssInjector(css);\n break;\n\n case 'trigger-side-position':\n side = jQuery('#rmp-menu-button-left-or-right').val();\n unit = jQuery('#rmp-menu-button-distance-from-side-unit').val();\n value = jQuery('#rmp-menu-button-distance-from-side').val();\n css = outputSelector + '{ ' + side + ' :' + (value + unit) + ' !important;}';\n self.inlineCssInjector(css);\n break;\n\n case 'top':\n value = jQuery(this).val();\n unit = jQuery('#rmp-menu-button-top-unit').val();\n css = outputSelector + '{ top :' + (value + unit) + ' !important;}';\n self.inlineCssInjector(css);\n break;\n\n case 'border-width':\n var unit = jQuery(this).next('.is-unit').val();\n\n if (!unit) {\n unit = 'px';\n }\n\n css = outputSelector + '{ border-width : ' + (this.value + unit) + ';}';\n self.inlineCssInjector(css);\n break;\n\n case 'padding':\n var unit = jQuery(this).next('.is-unit').val();\n\n if (!unit) {\n unit = 'px';\n }\n\n if (meta == 'lr') {\n css = outputSelector + '{ padding : 0 ' + (this.value + unit) + ';}';\n }\n\n self.inlineCssInjector(css);\n break;\n }\n });\n },\n bindImage: function bindImage(inputSelector, outputSelector, type) {\n var self = this;\n var iframe = jQuery(self.iframe);\n jQuery(document).on('click', inputSelector, function (e) {\n e.preventDefault();\n var button = jQuery(this),\n custom_uploader = wp.media({\n title: 'Select image',\n library: {\n type: 'image'\n },\n button: {\n text: 'Use this image'\n },\n multiple: false\n }).on('select', function () {\n var attachment = custom_uploader.state().get('selection').first().toJSON();\n jQuery(e.target).prev('input.rmp-image-url-input').val(attachment.url);\n jQuery(e.target).css('background-image', 'url(' + attachment.url + ')');\n jQuery(e.target).append('<i class=\"rmp-image-picker-trash dashicons dashicons-trash\" aria-hidden=\"true\"></i>');\n\n if (type == 'img-src') {\n iframe.contents().find(outputSelector).attr('src', attachment.url);\n } else if (type == 'background') {\n css = outputSelector + '{ background-image : url(' + attachment.url + ');}';\n self.inlineCssInjector(css);\n } else if (type == 'trigger-icon') {\n if (iframe.contents().find(outputSelector).length) {\n iframe.contents().find(outputSelector).attr('src', attachment.url);\n } else {\n iframe.contents().find('#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-box .responsive-menu-pro-inner').hide();\n iframe.contents().find('#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-box').append('<img class=\"rmp-trigger-icon rmp-trigger-icon-inactive\" src=\"' + attachment.url + '\"/>');\n }\n } else if (type == 'trigger-icon-open') {\n if (iframe.contents().find(outputSelector).length) {\n iframe.contents().find(outputSelector).attr('src', attachment.url);\n } else {\n iframe.contents().find('#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-box .responsive-menu-pro-inner').hide();\n iframe.contents().find('#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-box').append('<img class=\"rmp-trigger-icon rmp-trigger-icon-active\" src=\"' + attachment.url + '\"/>');\n }\n }\n }).open();\n });\n },\n toggleElements: function toggleElements(inputSelector, outputSelector) {\n var self = this;\n jQuery(inputSelector).on('change', function (e) {\n e.preventDefault();\n e.stopPropagation();\n var iframe = jQuery(self.iframe);\n\n if (iframe.contents().find(outputSelector).length) {\n if (jQuery(this).is(':checked')) {\n iframe.contents().find(outputSelector).fadeIn(500);\n } else {\n iframe.contents().find(outputSelector).fadeOut(500);\n }\n } else {\n e.preventDefault();\n var menuId = jQuery('#menu_id').val(),\n toggle_on = jQuery(this).data('toggle');\n jQuery.ajax({\n url: rmpObject.ajaxURL,\n data: {\n 'action': 'rmp_enable_menu_item',\n 'ajax_nonce': rmpObject.ajax_nonce,\n 'menu_id': menuId,\n 'menu_element': toggle_on\n },\n type: 'POST',\n dataType: 'json',\n beforeSend: function beforeSend() {\n jQuery(this).prop('disabled', true);\n jQuery('#iframe-spinner').show();\n },\n error: function error(_error) {\n console.log('Internal Error !');\n jQuery(this).prop('disabled', false);\n jQuery('#iframe-spinner').hide();\n },\n success: function success(response) {\n if (response.data.markup) {\n iframe.contents().find('#rmp-container-' + self.menuId).append(response.data.markup);\n self.orderMenuElements();\n }\n\n jQuery(this).prop('disabled', false);\n jQuery('#iframe-spinner').hide();\n }\n });\n }\n });\n },\n orderMenuElements: function orderMenuElements() {\n var list = [];\n var self = this;\n var iframeContents = jQuery(self.iframe).contents();\n jQuery('#tab-container .item-title').each(function () {\n var val = jQuery(this).text().toLocaleLowerCase().trim();\n\n if (val == 'title') {\n list.push(iframeContents.find(self.menuTitle));\n iframeContents.find(self.menuTitle).remove();\n } else if (val == 'search') {\n list.push(iframeContents.find(self.menuSearch));\n iframeContents.find(self.menuSearch).remove();\n } else if (val == 'menu') {\n list.push(iframeContents.find(self.menuWrap));\n iframeContents.find(self.menuWrap).remove();\n } else {\n list.push(iframeContents.find(self.menuContents));\n iframeContents.find(self.menuContents).remove();\n }\n });\n list.forEach(function (menuElement) {\n iframeContents.find(self.menuContainer).append(menuElement);\n });\n },\n\n /**\n * Function to bind the color input with option and elements.\n * \n * @version 4.0.0\n * \n * @param {String} inputSelector \n * @param {String} outputSelector \n * @param {String} attr \n * @param {String} state \n */\n bindColor: function bindColor(inputSelector, outputSelector, attr, state) {\n var self = this;\n jQuery(inputSelector).wpColorPicker({\n change: function change(event, ui) {\n var value = ui.color.toString();\n var css = rmpHook.call('rmp_color_style', {\n 'outputSelector': outputSelector,\n 'attr': attr,\n 'value': value,\n 'state': state\n });\n\n if (jQuery(inputSelector).attr('multi-device')) {\n css = self.mediaQuery(css);\n }\n\n self.inlineCssInjector(css);\n }\n });\n },\n mediaQuery: function mediaQuery(css) {\n var self = this;\n self.tablet_breakpoint = jQuery('#rmp-menu-tablet-breakpoint').val() + 'px';\n css = '@media screen and (max-width: ' + self.tablet_breakpoint + ' ) {' + css + '}';\n return css;\n },\n inlineCssInjector: function inlineCssInjector(css) {\n var self = this;\n var iframe = jQuery(self.iframe);\n var styleElement = iframe.contents().find('#rmp-inline-css-' + self.menuId);\n\n if (styleElement.length) {\n styleElement.append(css);\n } else {\n style = '<style id=\"rmp-inline-css-' + self.menuId + '\">' + css + '</style>';\n iframe.contents().find('head').append(style);\n }\n },\n changeInput: function changeInput(inputSelector, outputSelector, attr) {\n var meta = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : '';\n var self = this;\n var iframe = jQuery(self.iframe);\n jQuery(inputSelector).on('change', function (e) {\n switch (attr) {\n case 'height-unit':\n value = jQuery(this).prev('input').val();\n unit = jQuery(this).val();\n css = outputSelector + '{ height : ' + (value + unit) + ';}';\n\n if (jQuery(this).attr('multi-device')) {\n css = self.mediaQuery(css);\n }\n\n self.inlineCssInjector(css);\n break;\n\n case 'line-height-unit':\n value = jQuery(this).prev('input').val();\n unit = jQuery(this).val();\n css = outputSelector + '{ line-height : ' + (value + unit) + ';}';\n\n if (jQuery(this).attr('multi-device')) {\n css = self.mediaQuery(css);\n }\n\n self.inlineCssInjector(css);\n break;\n\n case 'width-unit':\n var value = jQuery(this).prev('input').val();\n var unit = jQuery(this).val();\n css = outputSelector + '{ width : ' + (value + unit) + ';}';\n self.inlineCssInjector(css);\n break;\n\n case 'font-size':\n value = jQuery(this).prev('input').val();\n unit = jQuery(this).val();\n css = outputSelector + '{ font-size :' + value + unit + ' !important;}';\n\n if (jQuery(this).attr('multi-device')) {\n css = self.mediaQuery(css);\n }\n\n self.inlineCssInjector(css);\n break;\n\n case 'font-family':\n value = jQuery(this).val();\n css = outputSelector + '{ font-family :' + value + ' !important;}';\n\n if (jQuery(this).attr('multi-device')) {\n css = self.mediaQuery(css);\n }\n\n self.inlineCssInjector(css);\n break;\n\n case 'font-weight':\n value = jQuery(this).val();\n css = outputSelector + '{ font-weight :' + value + ';}';\n self.inlineCssInjector(css);\n break;\n\n case 'padding-unit':\n var unit = jQuery(this).val();\n var value = jQuery(this).prev('input').val();\n\n if (!unit) {\n unit = 'px';\n }\n\n if (meta == 'lr') {\n css = outputSelector + '{ padding : 0 ' + (value + unit) + ';}';\n }\n\n self.inlineCssInjector(css);\n break;\n\n case 'letter-spacing':\n value = jQuery(this).val();\n css = outputSelector + '{ letter-spacing :' + value + 'px; }';\n self.inlineCssInjector(css);\n break;\n\n case 'position-alignment':\n if (iframe.contents().find(outputSelector).length) {\n position = jQuery(this).val();\n var rmpTriggerBox = iframe.contents().find('#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-box');\n iframe.contents().find('#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-box').remove();\n\n if (position == 'top' || position == 'left') {\n iframe.contents().find('#rmp_menu_trigger-' + self.menuId).append(rmpTriggerBox);\n } else {\n iframe.contents().find('#rmp_menu_trigger-' + self.menuId).prepend(rmpTriggerBox);\n }\n }\n\n break;\n\n case 'trigger-animation':\n value = jQuery(this).val();\n var new_class = 'rmp-menu-trigger-' + value;\n all_class = iframe.contents().find(outputSelector).attr('class').split(\" \");\n all_class.forEach(function (value) {\n if (value.includes('rmp-menu-trigger-')) {\n iframe.contents().find(outputSelector).removeClass(value);\n iframe.contents().find(outputSelector).addClass(new_class);\n }\n });\n break;\n\n case 'top':\n var unit = jQuery(this).val();\n value = jQuery(this).prev('input').val();\n css = outputSelector + '{ top :' + (value + unit) + ' !important;}';\n self.inlineCssInjector(css);\n break;\n\n case 'trigger-side-position':\n side = jQuery('#rmp-menu-button-left-or-right').val();\n unit = jQuery('#rmp-menu-button-distance-from-side-unit').val();\n value = jQuery('#rmp-menu-button-distance-from-side').val();\n css = outputSelector + '{ ' + side + ' :' + (value + unit) + ' !important;}';\n self.inlineCssInjector(css);\n break;\n\n case 'trigger-side':\n side = jQuery(this).val();\n value = jQuery('#rmp-menu-button-distance-from-side').val();\n unit = jQuery('#rmp-menu-button-distance-from-side-unit').val();\n\n if (side == 'left') {\n css = outputSelector + '{' + side + ':' + (value + unit) + ' !important;right:unset !important}';\n } else {\n css = outputSelector + '{' + side + ':' + (value + unit) + ' !important;left:unset !important}';\n }\n\n self.inlineCssInjector(css);\n break;\n\n case 'position':\n value = jQuery(this).val();\n css = outputSelector + '{ position :' + value + ' !important;}';\n self.inlineCssInjector(css);\n break;\n\n case 'trigger-background':\n if (jQuery(this).is(':checked')) {\n iframe.contents().find(outputSelector).attr('style', 'background:unset !important;');\n } else {\n iframe.contents().find(outputSelector).removeAttr('style');\n }\n\n break;\n\n case 'target':\n var value = jQuery(this).val();\n\n if (!value.length) {\n value = '_self';\n }\n\n iframe.contents().find(outputSelector).attr('target', value);\n break;\n\n case 'text-align':\n var value = jQuery(this).val();\n iframe.contents().find(outputSelector).css({\n 'text-align': value\n });\n break;\n }\n });\n },\n init: function init() {\n var self = this; //Mobile menu elements.\n\n self.menuContainer = '#rmp-container-' + self.menuId;\n self.menuTitle = '#rmp-menu-title-' + self.menuId;\n self.menuSearch = '#rmp-search-box-' + self.menuId;\n self.menuWrap = '#rmp-menu-wrap-' + self.menuId;\n self.menuContents = '#rmp-menu-additional-content-' + self.menuId; //Menu container background color.\n\n self.bindColor('#rmp-container-background-colour', '#rmp-container-' + self.menuId, 'background', ''); //Menu background.\n\n self.bindColor('#rmp-menu-background-colour', '#rmp-menu-wrap-' + self.menuId, 'background'); //Menu title section background color.\n\n self.bindColor('#rmp-menu-title-background-colour', '#rmp-menu-title-' + self.menuId, 'background'); //Menu title section background hover color.\n\n self.bindColor('#rmp-menu-title-background-hover-colour', '#rmp-menu-title-' + self.menuId, 'background', 'hover'); // Menu item trigger\n\n self.bindColor('#rmp-menu-sub-arrow-shape-colour', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-subarrow', 'color');\n self.bindColor('#rmp-menu-sub-arrow-shape-hover-colour', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-subarrow', 'color', 'hover');\n self.bindColor('#rmp-menu-sub-arrow-shape-colour-active', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-subarrow.rmp-menu-subarrow-active', 'color');\n self.bindColor('#rmp-menu-sub-arrow-shape-hover-colour-active', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-subarrow.rmp-menu-subarrow-active', 'color', 'hover');\n self.bindColor('#rmp-menu-sub-arrow-border-colour', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-subarrow', 'border-color');\n self.bindColor('#rmp-menu-sub-arrow-border-hover-colour', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-subarrow', 'border-color', 'hover');\n self.bindColor('#rmp-menu-sub-arrow-border-colour-active', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-subarrow-active', 'border-color');\n self.bindColor('#rmp-menu-sub-arrow-border-hover-colour-active', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-subarrow-active', 'border-color', 'hover');\n self.bindColor('#rmp-menu-sub-arrow-background-color', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-subarrow', 'background');\n self.bindColor('#rmp-menu-sub-arrow-background-hover-colour', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-subarrow', 'background', 'hover');\n self.bindColor('#rmp-menu-sub-arrow-background-colour-active', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-subarrow.rmp-menu-subarrow-active', 'background');\n self.bindColor('#rmp-menu-sub-arrow-background-hover-colour-active', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-subarrow.rmp-menu-subarrow-active', 'background', 'hover'); //Legacy options\n\n self.bindColor('#rmp-submenu-sub-arrow-shape-colour', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-subarrow', 'color');\n self.bindColor('#rmp-submenu-sub-arrow-shape-colour-hover', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-subarrow', 'color', 'hover');\n self.bindColor('#rmp-submenu-sub-arrow-shape-colour-active', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-subarrow-active', 'color');\n self.bindColor('#rmp-submenu-sub-arrow-shape-hover-colour-active', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-subarrow-active', 'color', 'hover');\n self.bindColor('#rmp-submenu-sub-arrow-border-colour', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-subarrow', 'border-color');\n self.bindColor('#rmp-submenu-sub-arrow-border-hover-colour', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-subarrow', 'border-color', 'hover');\n self.bindColor('#rmp-submenu-sub-arrow-border-colour-active', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-subarrow.rmp-menu-subarrow-active', 'border-color');\n self.bindColor('#rmp-submenu-sub-arrow-border-hover-colour-active', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-subarrow-active', 'border-color', 'hover');\n self.bindColor('#rmp-submenu-sub-arrow-background-color', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-subarrow', 'background');\n self.bindColor('#rmp-submenu-sub-arrow-background-hover-colour', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-subarrow', 'background', 'hover');\n self.bindColor('#rmp-submenu-sub-arrow-background-colour-active', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-subarrow-active', 'background');\n self.bindColor('#rmp-submenu-sub-arrow-background-hover-colour-active', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-subarrow-active', 'background', 'hover');\n self.bindColor('#rmp-menu-title-colour', '#rmp-menu-title-' + self.menuId + ' > a', 'color');\n self.bindColor('#rmp-menu-title-hover-colour', '#rmp-menu-title-' + self.menuId + ' > a', 'color', 'hover');\n self.bindColor('#rmp-menu-additional-content-color', '#rmp-container-' + self.menuId + ' #rmp-menu-additional-content-' + self.menuId, 'color');\n self.bindColor('#rmp-menu-search-box-text-colour', '#rmp-container-' + self.menuId + ' #rmp-search-box-' + self.menuId + ' .rmp-search-box', 'color');\n self.bindColor('#rmp-menu-search-box-background-colour', '#rmp-search-box-' + self.menuId + ' .rmp-search-box', 'background');\n self.bindColor('#rmp-menu-search-box-border-colour', '#rmp-search-box-' + self.menuId + ' .rmp-search-box', 'border-color');\n self.bindColor('#rmp-menu-search-box-placeholder-colour', '#rmp-search-box-' + self.menuId + ' .rmp-search-box', 'color', 'placeholder');\n self.changeInput('#rmp-menu-title-font-weight', '#rmp-menu-title-' + self.menuId + ' #rmp-menu-title-link', 'font-weight');\n self.changeInput('#rmp-menu-title-font-family', '#rmp-menu-title-' + self.menuId + ' #rmp-menu-title-link', 'font-family'); //Menu Trigger\n\n self.bindColor('#rmp-menu-button-background-colour', '#rmp_menu_trigger-' + self.menuId, 'background', '');\n self.bindColor('#rmp-menu-button-background-colour-hover', '#rmp_menu_trigger-' + self.menuId, 'background-color', 'hover');\n self.bindColor('#rmp-menu-button-background-colour-active', '#rmp_menu_trigger-' + self.menuId + '.is-active', 'background', '');\n self.bindColor('#rmp-menu-button-line-colour', '#rmp_menu_trigger-' + self.menuId + ' .responsive-menu-pro-inner,#rmp_menu_trigger-' + self.menuId + ' .responsive-menu-pro-inner:after,#rmp_menu_trigger-' + self.menuId + ' .responsive-menu-pro-inner:before', 'background', '');\n self.bindColor('#rmp-menu-button-line-colour-active', '.is-active#rmp_menu_trigger-' + self.menuId + ' .responsive-menu-pro-inner,.is-active#rmp_menu_trigger-' + self.menuId + ' .responsive-menu-pro-inner:after,.is-active#rmp_menu_trigger-' + self.menuId + ' .responsive-menu-pro-inner:before', 'background', '');\n self.bindColor('#rmp-menu-button-line-colour-hover', '#rmp_menu_trigger-' + self.menuId + ':hover .responsive-menu-pro-inner,#rmp_menu_trigger-' + self.menuId + ':hover .responsive-menu-pro-inner:after,#rmp_menu_trigger-' + self.menuId + ':hover .responsive-menu-pro-inner:before', 'background', '');\n self.bindColor('#rmp-menu-button-text-colour', '#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-label', 'color');\n self.onTyping('#rmp-menu-toggle-border-radius', '#rmp_menu_trigger-' + self.menuId, 'border-radius');\n self.onTyping('.rmp-menu-container-padding', '#rmp-container-' + self.menuId, 'section-padding');\n self.onTyping('.rmp-menu-title-section-padding', '#rmp-menu-title-' + self.menuId, 'section-padding');\n self.onTyping('.rmp-menu-section-padding', '#rmp-menu-wrap-' + self.menuId, 'section-padding');\n self.onTyping('.rmp-menu-search-section-padding', '#rmp-search-box-' + self.menuId, 'section-padding');\n self.onTyping('.rmp-menu-additional-section-padding', '#rmp-menu-additional-content-' + self.menuId, 'section-padding'); // CONTENT BASED ELEMENTS.\n\n self.onTyping('#rmp-menu-search-box-height', '#rmp-search-box-' + self.menuId + ' .rmp-search-box', 'height');\n self.onTyping('#rmp-menu-search-box-border-radius', '#rmp-search-box-' + self.menuId + ' .rmp-search-box', 'border-radius');\n self.onTyping('#rmp-menu-menu-title', '#rmp-menu-title-' + self.menuId + ' #rmp-menu-title-link span', 'text');\n self.onTyping('#rmp-menu-additional-content', '#rmp-menu-additional-content-' + self.menuId, 'text');\n self.onTyping('#rmp-menu-search-box-text', '#rmp-search-box-' + self.menuId + ' .rmp-search-box', 'placeholder');\n self.onTyping('#rmp-menu-title-link', '#rmp-menu-title-' + self.menuId + ' #rmp-menu-title-link', 'href');\n self.onTyping('#rmp-menu-title-image-alt', '#rmp-menu-title-' + self.menuId + ' .rmp-menu-title-image', 'alt');\n self.onTyping('#rmp-menu-title-font-size', '#rmp-menu-title-' + self.menuId + ' > a', 'font-size');\n self.onTyping('#rmp-menu-title-image-width', '#rmp-menu-title-' + self.menuId + ' .rmp-menu-title-image', 'width');\n self.onTyping('#rmp-menu-title-image-height', '#rmp-menu-title-' + self.menuId + ' .rmp-menu-title-image', 'height');\n self.bindImage('#rmp-menu-title-image-selector', '#rmp-menu-title-' + self.menuId + ' .rmp-menu-title-image', 'img-src');\n self.onTyping('#rmp-menu-additional-content-font-size', '#rmp-menu-additional-content-' + self.menuId, 'font-size');\n self.onTyping('#rmp-menu-container-width', '#rmp-container-' + self.menuId, 'width');\n self.onTyping('#rmp-menu-container-min-width', '#rmp-container-' + self.menuId, 'min-width');\n self.onTyping('#rmp-menu-container-max-width', '#rmp-container-' + self.menuId, 'max-width');\n self.onTyping('#rmp-menu-button-image-alt-when-clicked', '#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-icon-active', 'alt');\n self.onTyping('#rmp-menu-button-image-alt', '#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-icon-inactive', 'alt');\n self.onTyping('#rmp-menu-button-title-open', '#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-text-open', 'trigger-text-open');\n self.onTyping('#rmp-menu-button-title', '#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-text', 'trigger-text');\n self.onTyping('#rmp-menu-button-font-size', '#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-label', 'font-size');\n self.onTyping('#rmp-menu-button-title-line-height', '#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-label', 'line-height'); //Menu Trigger\n\n self.onTyping('#rmp-menu-button-width', '#rmp_menu_trigger-' + self.menuId, 'width');\n self.onTyping('#rmp-menu-button-height', '#rmp_menu_trigger-' + self.menuId, 'height');\n self.onTyping('#rmp-menu-button-line-width', '#rmp_menu_trigger-' + self.menuId + ' .responsive-menu-pro-inner', 'width');\n self.onTyping('#rmp-menu-button-line-width', '#rmp_menu_trigger-' + self.menuId + ' .responsive-menu-pro-inner:after', 'width');\n self.onTyping('#rmp-menu-button-line-width', '#rmp_menu_trigger-' + self.menuId + ' .responsive-menu-pro-inner:before', 'width');\n self.onTyping('#rmp-menu-button-line-height', '#rmp_menu_trigger-' + self.menuId + ' .responsive-menu-pro-inner', 'height');\n self.onTyping('#rmp-menu-button-line-height', '#rmp_menu_trigger-' + self.menuId + ' .responsive-menu-pro-inner:after', 'height');\n self.onTyping('#rmp-menu-button-line-height', '#rmp_menu_trigger-' + self.menuId + ' .responsive-menu-pro-inner:before', 'height');\n self.bindImage('#rmp-button-title-image', '#rmp-menu-title-' + self.menuId + ' .rmp-menu-title-image', 'img-src');\n self.bindImage('#rmp-menu-background-image-selector', '#rmp-container-' + self.menuId, 'background');\n self.bindImage('#rmp-menu-button-image-when-clicked-selector', '#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-icon-active', 'trigger-icon-open');\n self.bindImage('#rmp-menu-button-image-selector', '#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-icon-inactive', 'trigger-icon');\n self.changeInput('#rmp-menu-title-link-location', '#rmp-menu-title-' + self.menuId + ' #rmp-menu-title-link', 'target');\n self.changeInput('.rmp-menu-title-alignment', '#rmp-menu-title-' + self.menuId, 'text-align');\n self.changeInput('.rmp-menu-additional-content-alignment', '#rmp-menu-additional-content-' + self.menuId, 'text-align'); //Top menu item links\n\n self.onTyping('#rmp-menu-links-height', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-item-link', 'height');\n self.onTyping('#rmp-menu-links-line-height', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-item-link', 'line-height');\n self.onTyping('#rmp-menu-font-size', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-item-link', 'font-size');\n self.changeInput('#rmp-menu-font', '#rmp-container-' + self.menuId + ' #rmp-menu-wrap-' + self.menuId + ' .rmp-menu-top-level-item .rmp-menu-item-link', 'font-family');\n self.changeInput('#rmp-menu-font-weight', '#rmp-container-' + self.menuId + ' #rmp-menu-wrap-' + self.menuId + ' .rmp-menu-top-level-item .rmp-menu-item-link', 'font-weight');\n self.changeInput('.rmp-menu-text-alignment', '#rmp-container-' + self.menuId + ' #rmp-menu-wrap-' + self.menuId + ' .rmp-menu-top-level-item .rmp-menu-item-link', 'text-align');\n self.changeInput('#rmp-menu-text-letter-spacing', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-item-link', 'letter-spacing');\n self.onTyping('#rmp-menu-depth-level-0', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-item-link', 'padding', 'lr');\n self.onTyping('#rmp-menu-border-width', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-item-link', 'border-width');\n self.onTyping('#rmp-menu-sub-arrow-border-width', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-subarrow', 'border-width');\n self.onTyping('#rmp-submenu-sub-arrow-border-width', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-subarrow', 'border-width');\n self.bindColor('#rmp-menu-link-color', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-item-link', 'color');\n self.bindColor('#rmp-menu-link-hover-color', ' #rmp-menu-wrap-' + self.menuId + ' .rmp-menu-item-link', 'color', 'hover');\n self.bindColor('#rmp-menu-current-link-active-color', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-current-item .rmp-menu-item-link', 'color');\n self.bindColor('#rmp-menu-current-link-active-hover-color', ' #rmp-menu-wrap-' + self.menuId + ' .rmp-menu-current-item .rmp-menu-item-link', 'color', 'hover');\n self.bindColor('#rmp-menu-item-background-colour', ' #rmp-menu-wrap-' + self.menuId + ' .rmp-menu-item-link', 'background');\n self.bindColor('#rmp-menu-item-background-hover-color', ' #rmp-menu-wrap-' + self.menuId + ' .rmp-menu-item-link', 'background', 'hover');\n self.bindColor('#rmp-menu-current-item-background-color', ' #rmp-menu-wrap-' + self.menuId + ' .rmp-menu-current-item .rmp-menu-item-link', 'background');\n self.bindColor('#rmp-menu-current-item-background-hover-color', ' #rmp-menu-wrap-' + self.menuId + ' .rmp-menu-current-item .rmp-menu-item-link', 'background', 'hover');\n self.bindColor('#rmp-menu-item-border-colour', ' #rmp-menu-wrap-' + self.menuId + ' .rmp-menu-item-link', 'border-color');\n self.bindColor('#rmp-menu-item-border-colour-hover', ' #rmp-menu-wrap-' + self.menuId + ' .rmp-menu-item-link', 'border-color', 'hover');\n self.bindColor('#rmp-menu-current-item-border-hover-colour', ' #rmp-menu-wrap-' + self.menuId + ' .rmp-menu-current-item .rmp-menu-item-link', 'border-color', 'hover');\n self.bindColor('#rmp-menu-item-border-colour-active', ' #rmp-menu-wrap-' + self.menuId + ' .rmp-menu-current-item .rmp-menu-item-link', 'border-color'); // Trigger of top level\n\n self.bindImage('#rmp-menu-inactive-arrow-image-selector', '#rmp-container-' + self.menuId + ' #rmp-menu-wrap-' + self.menuId + ' .rmp-menu-top-level-item .rmp-menu-subarrow', 'background');\n self.bindImage('#rmp-menu-active-arrow-image-selector', '#rmp-container-' + self.menuId + ' #rmp-menu-wrap-' + self.menuId + ' .rmp-menu-top-level-item .rmp-menu-subarrow-active', 'background');\n self.onTyping('#rmp-submenu-arrow-height', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-subarrow', 'height');\n self.onTyping('#rmp-submenu-arrow-width', '#rmp-menu-wrap-' + self.menuId + ' .rmp-menu-subarrow', 'width');\n self.onTyping('#rmp-submenu-child-arrow-height', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-subarrow', 'height');\n self.onTyping('#rmp-submenu-child-arrow-width', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-subarrow', 'width');\n self.changeInput('#rmp-submenu-child-arrow-width-unit', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-subarrow', 'width-unit');\n self.changeInput('#rmp-submenu-child-arrow-height-unit', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-subarrow', 'height-unit');\n self.bindColor('#rmp-menu-sub-arrow-background-color', ' #rmp-menu-wrap-' + self.menuId + ' .rmp-menu-top-level-item .rmp-menu-subarrow', 'background');\n self.bindColor('#rmp-menu-sub-arrow-background-hover-colour', ' #rmp-menu-wrap-' + self.menuId + ' .rmp-menu-top-level-item .rmp-menu-subarrow', 'background', 'hover');\n self.bindColor('#rmp-menu-sub-arrow-background-colour-active', ' #rmp-menu-wrap-' + self.menuId + ' .rmp-menu-top-level-item .rmp-menu-subarrow-active', 'background');\n self.bindColor('#rmp-menu-sub-arrow-background-hover-colour-active', ' #rmp-menu-wrap-' + self.menuId + ' .rmp-menu-top-level-item .rmp-menu-subarrow-active', 'background', 'hover'); //sub menu item links\n\n self.onTyping('#rmp-submenu-links-height', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-item-link', 'height');\n self.changeInput('#rmp-submenu-links-height-unit', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-item-link', 'height-unit');\n self.onTyping('#rmp-submenu-links-line-height', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-item-link', 'line-height');\n self.changeInput('#rmp-submenu-links-line-height-unit', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-item-link', 'line-height-unit');\n self.onTyping('#rmp-submenu-font-size', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-item-link', 'font-size');\n self.changeInput('#rmp-submenu-font', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-item-link', 'font-family');\n self.changeInput('#rmp-submenu-font-weight', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-item-link', 'font-weight');\n self.changeInput('.rmp-submenu-text-alignment', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-item-link', 'text-align');\n self.changeInput('#rmp-submenu-text-letter-spacing', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-item-link', 'letter-spacing');\n self.onTyping('#rmp-submenu-border-width', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-item-link', 'border-width');\n self.bindColor('#rmp-submenu-item-border-colour', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-item-link', 'border-color');\n self.bindColor('#rmp-submenu-item-border-colour-hover', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-item-link', 'border-color', 'hover');\n self.bindColor('#rmp-submenu-item-border-colour-active', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-current-item .rmp-menu-item-link', 'border-color');\n self.bindColor('#rmp-submenu-current-item-border-hover-colour', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-current-item .rmp-menu-item-link', 'border-color', 'hover');\n self.bindColor('#rmp-submenu-link-color', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-item-link', 'color');\n self.bindColor('#rmp-submenu-link-hover-color', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-item-link', 'color', 'hover');\n self.bindColor('#rmp-submenu-link-colour-active', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-current-item .rmp-menu-item-link', 'color');\n self.bindColor('#rmp-submenu-link-active-hover-color', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-current-item .rmp-menu-item-link', 'color', 'hover');\n self.bindColor('#rmp-submenu-item-background-color', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-item-link', 'background');\n self.bindColor('#rmp-submenu-item-background-hover-color', ' #rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-item-link', 'background', 'hover');\n self.bindColor('#rmp-submenu-current-item-background-color', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-current-item .rmp-menu-item-link', 'background');\n self.bindColor('#rmp-submenu-current-item-background-hover-color', '#rmp-menu-wrap-' + self.menuId + ' .rmp-submenu .rmp-menu-current-item .rmp-menu-item-link', 'background', 'hover'); //Menu Trigger\n\n self.changeInput('.rmp-menu-button-transparent-background', '#rmp_menu_trigger-' + self.menuId, 'background', '');\n self.changeInput('#rmp-menu-button-position-type', '#rmp_menu_trigger-' + self.menuId, 'position');\n self.changeInput('.rmp-menu-button-left-or-right', '#rmp_menu_trigger-' + self.menuId, 'trigger-side');\n self.onTyping('#rmp-menu-button-distance-from-side', '#rmp_menu_trigger-' + self.menuId, 'trigger-side-position');\n self.onTyping('#rmp-menu-button-top', '#rmp_menu_trigger-' + self.menuId, 'top');\n self.changeInput('#rmp-menu-button-click-animation', '#rmp_menu_trigger-' + self.menuId, 'trigger-animation');\n self.changeInput('#rmp-menu-button-font', '#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-label', 'font-family');\n self.changeInput('.rmp-menu-button-title-position', '#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-label', 'position-alignment');\n jQuery(\"#rmp-menu-button-font-icon\").focus(function () {\n var outputSelector = '#rmp_menu_trigger-' + self.menuId + ' span.rmp-trigger-icon-inactive';\n value = jQuery(this).val();\n var iframe = jQuery(self.iframe);\n\n if (iframe.contents().find(outputSelector).length) {\n iframe.contents().find(outputSelector).addClass(value);\n } else {\n iframe.contents().find('#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-box img.rmp-trigger-icon').hide();\n iframe.contents().find('#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-box .responsive-menu-pro-inner').hide();\n iframe.contents().find('#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-box').append('<span class=\"rmp-trigger-icon rmp-trigger-icon-inactive ' + value + '\"></span>');\n }\n });\n jQuery(\"#rmp-menu-button-font-icon-when-clicked\").focus(function () {\n var outputSelector = '#rmp_menu_trigger-' + self.menuId + ' span.rmp-trigger-icon-active';\n value = jQuery(this).val();\n var iframe = jQuery(self.iframe);\n\n if (iframe.contents().find(outputSelector).length) {\n iframe.contents().find(outputSelector).addClass(value);\n } else {\n iframe.contents().find('#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-box img.rmp-trigger-icon').hide();\n iframe.contents().find('#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-box .responsive-menu-pro-inner').hide();\n iframe.contents().find('#rmp_menu_trigger-' + self.menuId + ' .rmp-trigger-box').append('<span class=\"rmp-trigger-icon rmp-trigger-icon-active ' + value + '\"></span>');\n }\n }); // Ordering elements\n\n self.toggleElements('#rmp-item-order-title', '#rmp-menu-title-' + self.menuId);\n self.toggleElements('#rmp-item-order-additional-content', '#rmp-menu-additional-content-' + self.menuId);\n self.toggleElements('#rmp-item-order-search', '#rmp-search-box-' + self.menuId);\n self.toggleElements('#rmp-item-order-menu', '#rmp-menu-wrap-' + self.menuId);\n jQuery('#rmp-menu-ordering-items').sortable({\n update: function update(event, ui) {\n self.orderMenuElements();\n }\n });\n }\n};\nRMP_Preview.init();\n\n//# sourceURL=webpack://responsive-menu-pro/./assets/admin/js/rmp-preview.js?")},"./assets/admin/js/wp-color-alpha.js":function(){eval("/**!\n * wp-color-picker-alpha\n *\n * Overwrite Automattic Iris for enabled Alpha Channel in wpColorPicker\n * Only run in input and is defined data alpha in true\n *\n * Version: 2.1.4\n * https://github.com/kallookoo/wp-color-picker-alpha\n * Licensed under the GPLv2 license or later.\n */\n(function ($) {\n // Prevent double-init.\n if ($.wp.wpColorPicker.prototype._hasAlpha) {\n return;\n } // Variable for some backgrounds ( grid )\n\n\n var image = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAAHnlligAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAHJJREFUeNpi+P///4EDBxiAGMgCCCAGFB5AADGCRBgYDh48CCRZIJS9vT2QBAggFBkmBiSAogxFBiCAoHogAKIKAlBUYTELAiAmEtABEECk20G6BOmuIl0CIMBQ/IEMkO0myiSSraaaBhZcbkUOs0HuBwDplz5uFJ3Z4gAAAABJRU5ErkJggg==',\n //Dtml stuff for wpColorPicker copy of the original color-picker.js\n _after = '<div class=\"wp-picker-holder\" />',\n _wrap = '<div class=\"wp-picker-container\" />',\n _before = '<button type=\"button\" class=\"button wp-color-result\" aria-expanded=\"false\"></button>',\n _wrappingLabel = '<label></label>',\n _wrappingLabelText = '<span class=\"screen-reader-text\"></span>';\n /**\n * Overwrite Color\n * for enable support rbga\n */\n\n Color.fn.toString = function () {\n if (this._alpha < 1) return this.toCSS('rgba', this._alpha).replace(/\\s+/g, '');\n var hex = parseInt(this._color, 10).toString(16);\n if (this.error) return '';\n if (hex.length < 6) hex = ('00000' + hex).substr(-6);\n return '#' + hex;\n };\n /**\n * Overwrite wpColorPicker\n */\n\n\n $.widget('wp.wpColorPicker', $.wp.wpColorPicker, {\n _hasAlpha: true,\n\n /**\n * @summary Creates the color picker.\n *\n * Creates the color picker, sets default values, css classes and wraps it all in HTML.\n *\n * @since 3.5.0\n *\n * @access private\n *\n * @returns {void}\n */\n _create: function _create() {\n // Return early if Iris support is missing.\n if (!$.support.iris) {\n return;\n }\n\n var self = this,\n el = self.element; // Override default options with options bound to the element.\n\n $.extend(self.options, el.data()); // Create a color picker which only allows adjustments to the hue.\n\n if (self.options.type === 'hue') {\n return self._createHueOnly();\n } // Bind the close event.\n\n\n self.close = $.proxy(self.close, self);\n self.initialValue = el.val(); // Add a CSS class to the input field.\n\n el.addClass('wp-color-picker');\n /*\n \t* Check if there's already a wrapping label, e.g. in the Customizer.\n \t* If there's no label, add a default one to match the Customizer template.\n \t*/\n\n if (!el.parent('label').length) {\n // Wrap the input field in the default label.\n el.wrap(_wrappingLabel); // Insert the default label text.\n\n self.wrappingLabelText = $(_wrappingLabelText).insertBefore(el).text('Color Picker');\n }\n /*\n \t* At this point, either it's the standalone version or the Customizer\n \t* one, we have a wrapping label to use as hook in the DOM, let's store it.\n \t*/\n\n\n self.wrappingLabel = el.parent(); // Wrap the label in the main wrapper.\n\n self.wrappingLabel.wrap(_wrap); // Store a reference to the main wrapper.\n\n self.wrap = self.wrappingLabel.parent(); // Set up the toggle button and insert it before the wrapping label.\n\n self.toggler = $(_before).insertBefore(self.wrappingLabel).css({\n backgroundColor: self.initialValue\n }); // Set up the Iris container and insert it after the wrapping label.\n\n self.pickerContainer = $(_after).insertAfter(self.wrappingLabel); // Wrap the wrapping label in its wrapper and append the Clear/Default button.\n\n self.wrappingLabel.wrap('<span class=\"wp-picker-input-wrap hidden rmp-color-input-wrap\" />');\n /*\n * The input wrapper now contains the label+input+Clear/Default button.\n * Store a reference to the input wrapper: we'll use this to toggle\n * the controls visibility.\n */\n\n self.inputWrapper = el.closest('.wp-picker-input-wrap');\n el.iris({\n target: self.pickerContainer,\n hide: self.options.hide,\n width: 240,\n mode: self.options.mode,\n palettes: self.options.palettes,\n\n /**\n * @summary Handles the onChange event if one has been defined in the options.\n *\n * Handles the onChange event if one has been defined in the options and additionally\n * sets the background color for the toggler element.\n *\n * @since 3.5.0\n *\n * @param {Event} event The event that's being called.\n * @param {HTMLElement} ui The HTMLElement containing the color picker.\n *\n * @returns {void}\n */\n change: function change(event, ui) {\n if (self.options.alpha) {\n self.toggler.css({\n 'background-image': 'url(' + image + ')'\n });\n self.toggler.css({\n 'position': 'relative'\n });\n\n if (self.toggler.find('span.color-alpha').length == 0) {\n self.toggler.append('<span class=\"color-alpha\" />');\n }\n\n self.toggler.find('span.color-alpha').css({\n 'width': '38px',\n 'height': '100%',\n 'position': 'absolute',\n 'top': 0,\n 'left': 0,\n 'background': ui.color.toString()\n });\n } else {\n self.toggler.css({\n backgroundColor: ui.color.toString()\n });\n }\n\n if ($.isFunction(self.options.change)) {\n self.options.change.call(this, event, ui);\n }\n }\n });\n el.val(self.initialValue);\n\n self._addListeners(); // Force the color picker to always be closed on initial load.\n\n\n if (!self.options.hide) {\n self.toggler.click();\n }\n },\n\n /**\n * @summary Binds event listeners to the color picker.\n *\n * @since 3.5.0\n *\n * @access private\n *\n * @returns {void}\n */\n _addListeners: function _addListeners() {\n var self = this;\n /**\n * @summary Prevent any clicks inside this widget from leaking to the top and closing it.\n *\n * @since 3.5.0\n *\n * @param {Event} event The event that's being called.\n *\n * @returs {void}\n */\n\n self.wrap.on('click.wpcolorpicker', function (event) {\n event.stopPropagation();\n });\n /**\n * @summary Open or close the color picker depending on the class.\n *\n * @since 3.5\n */\n\n self.toggler.click(function () {\n if (self.toggler.hasClass('wp-picker-open')) {\n self.close();\n } else {\n self.open();\n }\n });\n /**\n * @summary Checks if value is empty when changing the color in the color picker.\n *\n * Checks if value is empty when changing the color in the color picker.\n * If so, the background color is cleared.\n *\n * @since 3.5.0\n *\n * @param {Event} event The event that's being called.\n *\n * @returns {void}\n */\n\n self.element.on('change', function (event) {\n // Empty or Error = clear\n if ($(this).val() === '' || self.element.hasClass('iris-error')) {\n if (self.options.alpha) {\n self.toggler.find('span.color-alpha').css('backgroundColor', '');\n } else {\n self.toggler.css('backgroundColor', '');\n } // fire clear callback if we have one\n\n\n if ($.isFunction(self.options.clear)) self.options.clear.call(this, event);\n }\n });\n }\n });\n /**\n * Overwrite iris\n */\n\n $.widget('a8c.iris', $.a8c.iris, {\n _create: function _create() {\n this._super(); // Global option for check is mode rbga is enabled\n\n\n this.options.alpha = this.element.data('alpha') || false; // Is not input disabled\n\n if (!this.element.is(':input')) this.options.alpha = false;\n\n if (typeof this.options.alpha !== 'undefined' && this.options.alpha) {\n var self = this,\n el = self.element,\n _html = '<div class=\"iris-strip iris-slider iris-alpha-slider\"><div class=\"iris-slider-offset iris-slider-offset-alpha\"></div></div>',\n aContainer = $(_html).appendTo(self.picker.find('.iris-picker-inner')),\n aSlider = aContainer.find('.iris-slider-offset-alpha'),\n controls = {\n aContainer: aContainer,\n aSlider: aSlider\n };\n\n if (typeof el.data('custom-width') !== 'undefined') {\n self.options.customWidth = parseInt(el.data('custom-width')) || 0;\n } else {\n self.options.customWidth = 100;\n } // Set default width for input reset\n\n\n self.options.defaultWidth = el.width(); // Update width for input\n\n if (self._color._alpha < 1 || self._color.toString().indexOf('rgb') != -1) el.width(parseInt(self.options.defaultWidth + self.options.customWidth)); // Push new controls\n\n $.each(controls, function (k, v) {\n self.controls[k] = v;\n }); // Change size strip and add margin for sliders\n\n self.controls.square.css({\n 'margin-right': '0'\n });\n var emptyWidth = self.picker.width() - self.controls.square.width() - 20,\n stripsMargin = emptyWidth / 6,\n stripsWidth = emptyWidth / 2 - stripsMargin;\n $.each(['aContainer', 'strip'], function (k, v) {\n self.controls[v].width(stripsWidth).css({\n 'margin-left': stripsMargin + 'px'\n });\n }); // Add new slider\n\n self._initControls(); // For updated widget\n\n\n self._change();\n }\n },\n _initControls: function _initControls() {\n this._super();\n\n if (this.options.alpha) {\n var self = this,\n controls = self.controls;\n controls.aSlider.slider({\n orientation: 'vertical',\n min: 0,\n max: 100,\n step: 1,\n value: parseInt(self._color._alpha * 100),\n slide: function slide(event, ui) {\n // Update alpha value\n self._color._alpha = parseFloat(ui.value / 100);\n\n self._change.apply(self, arguments);\n }\n });\n }\n },\n _change: function _change() {\n this._super();\n\n var self = this,\n el = self.element;\n\n if (this.options.alpha) {\n var controls = self.controls,\n alpha = parseInt(self._color._alpha * 100),\n color = self._color.toRgb(),\n gradient = ['rgb(' + color.r + ',' + color.g + ',' + color.b + ') 0%', 'rgba(' + color.r + ',' + color.g + ',' + color.b + ', 0) 100%'],\n defaultWidth = self.options.defaultWidth,\n customWidth = self.options.customWidth,\n target = self.picker.closest('.wp-picker-container').find('.wp-color-result'); // Generate background slider alpha, only for CSS3 old browser fuck!! :)\n\n\n controls.aContainer.css({\n 'background': 'linear-gradient(to bottom, ' + gradient.join(', ') + '), url(' + image + ')'\n });\n\n if (target.hasClass('wp-picker-open')) {\n // Update alpha value\n controls.aSlider.slider('value', alpha);\n /**\n * Disabled change opacity in default slider Saturation ( only is alpha enabled )\n * and change input width for view all value\n */\n // if ( self._color._alpha < 1 ) {\n // \tcontrols.strip.attr( 'style', controls.strip.attr( 'style' ).replace( /rgba\\(([0-9]+,)(\\s+)?([0-9]+,)(\\s+)?([0-9]+)(,(\\s+)?[0-9\\.]+)\\)/g, 'rgb($1$3$5)' ) );\n // \tel.width( parseInt( defaultWidth + customWidth ) );\n // } else {\n // \tel.width( defaultWidth );\n // }\n }\n }\n\n var reset = el.data('reset-alpha') || false;\n\n if (reset) {\n self.picker.find('.iris-palette-container').on('click.palette', '.iris-palette', function () {\n self._color._alpha = 1;\n self.active = 'external';\n\n self._change();\n });\n }\n\n el.trigger('change');\n },\n _addInputListeners: function _addInputListeners(input) {\n var self = this,\n debounceTimeout = 100,\n callback = function callback(event) {\n var color = new Color(input.val()),\n val = input.val();\n input.removeClass('iris-error'); // we gave a bad color\n\n if (color.error) {\n // don't error on an empty input\n if (val !== '') input.addClass('iris-error');\n } else {\n if (color.toString() !== self._color.toString()) {\n // let's not do this on keyup for hex shortcodes\n if (!(event.type === 'keyup' && val.match(/^[0-9a-fA-F]{3}$/))) self._setOption('color', color.toString());\n }\n }\n };\n\n input.on('change', callback).on('keyup', self._debounce(callback, debounceTimeout)); // If we initialized hidden, show on first focus. The rest is up to you.\n\n if (self.options.hide) {\n input.on('focus', function () {\n self.show();\n });\n }\n }\n });\n})(jQuery);\n\n//# sourceURL=webpack://responsive-menu-pro/./assets/admin/js/wp-color-alpha.js?")},"./assets/admin/rmp-main.js":function(__unused_webpack_module,__webpack_exports__,__webpack_require__){"use strict";eval('__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _scss_wizard_ui_scss__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./scss/wizard-ui.scss */ "./assets/admin/scss/wizard-ui.scss");\n/* harmony import */ var _scss_wizard_ui_scss__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_scss_wizard_ui_scss__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _scss_dark_mode_scss__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./scss/dark-mode.scss */ "./assets/admin/scss/dark-mode.scss");\n/* harmony import */ var _scss_dark_mode_scss__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_scss_dark_mode_scss__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _js_rmp_admin_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./js/rmp-admin.js */ "./assets/admin/js/rmp-admin.js");\n/* harmony import */ var _js_rmp_admin_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_js_rmp_admin_js__WEBPACK_IMPORTED_MODULE_2__);\n/* harmony import */ var _js_wp_color_alpha_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./js/wp-color-alpha.js */ "./assets/admin/js/wp-color-alpha.js");\n/* harmony import */ var _js_wp_color_alpha_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_js_wp_color_alpha_js__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _js_rmp_editor_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./js/rmp-editor.js */ "./assets/admin/js/rmp-editor.js");\n/* harmony import */ var _js_rmp_editor_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_js_rmp_editor_js__WEBPACK_IMPORTED_MODULE_4__);\n/* harmony import */ var _js_rmp_icon_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./js/rmp-icon.js */ "./assets/admin/js/rmp-icon.js");\n/* harmony import */ var _js_rmp_icon_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_js_rmp_icon_js__WEBPACK_IMPORTED_MODULE_5__);\n/* harmony import */ var _js_rmp_preview_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./js/rmp-preview.js */ "./assets/admin/js/rmp-preview.js");\n/* harmony import */ var _js_rmp_preview_js__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_js_rmp_preview_js__WEBPACK_IMPORTED_MODULE_6__);\n/* harmony import */ var _js_rmp_menu_wizard_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./js/rmp-menu-wizard.js */ "./assets/admin/js/rmp-menu-wizard.js");\n/**\n * Main scripts file.\n *\n * @package responsive-menu-pro\n */\n\n\n\n\n\n\n\n\n\n\n\n\n//# sourceURL=webpack://responsive-menu-pro/./assets/admin/rmp-main.js?')},"./assets/admin/scss/dark-mode.scss":function(){eval("// extracted by mini-css-extract-plugin\n\n//# sourceURL=webpack://responsive-menu-pro/./assets/admin/scss/dark-mode.scss?")},"./assets/admin/scss/wizard-ui.scss":function(){eval("// extracted by mini-css-extract-plugin\n\n//# sourceURL=webpack://responsive-menu-pro/./assets/admin/scss/wizard-ui.scss?")}},__webpack_module_cache__={};function __webpack_require__(e){var n=__webpack_module_cache__[e];if(void 0!==n)return n.exports;var r=__webpack_module_cache__[e]={exports:{}};return __webpack_modules__[e](r,r.exports,__webpack_require__),r.exports}__webpack_require__.n=function(e){var n=e&&e.__esModule?function(){return e.default}:function(){return e};return __webpack_require__.d(n,{a:n}),n},__webpack_require__.d=function(e,n){for(var r in n)__webpack_require__.o(n,r)&&!__webpack_require__.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:n[r]})},__webpack_require__.o=function(e,n){return Object.prototype.hasOwnProperty.call(e,n)},__webpack_require__.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})};var __webpack_exports__=__webpack_require__("./assets/admin/rmp-main.js")})();
v4.0.0/assets/admin/build/js/rmpMain.js.LICENSE.txt ADDED
@@ -0,0 +1,35 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ /*!**********************************!*\
2
+ !*** ./assets/admin/rmp-main.js ***!
3
+ \**********************************/
4
+
5
+ /*!*************************************!*\
6
+ !*** ./assets/admin/js/rmp-icon.js ***!
7
+ \*************************************/
8
+
9
+ /*!**************************************!*\
10
+ !*** ./assets/admin/js/rmp-admin.js ***!
11
+ \**************************************/
12
+
13
+ /*!***************************************!*\
14
+ !*** ./assets/admin/js/rmp-editor.js ***!
15
+ \***************************************/
16
+
17
+ /*!****************************************!*\
18
+ !*** ./assets/admin/js/rmp-preview.js ***!
19
+ \****************************************/
20
+
21
+ /*!******************************************!*\
22
+ !*** ./assets/admin/scss/dark-mode.scss ***!
23
+ \******************************************/
24
+
25
+ /*!******************************************!*\
26
+ !*** ./assets/admin/scss/wizard-ui.scss ***!
27
+ \******************************************/
28
+
29
+ /*!*******************************************!*\
30
+ !*** ./assets/admin/js/wp-color-alpha.js ***!
31
+ \*******************************************/
32
+
33
+ /*!********************************************!*\
34
+ !*** ./assets/admin/js/rmp-menu-wizard.js ***!
35
+ \********************************************/
v4.0.0/assets/admin/js/rmp-admin.js CHANGED
@@ -32,7 +32,7 @@ jQuery( document ).ready( function( jQuery ) {
32
  },
33
  success: function( response ) {
34
  if ( response.data.redirect ) {
35
- location.href = response.data.redirect;
36
  }
37
  }
38
  } );
@@ -64,7 +64,7 @@ jQuery( document ).ready( function( jQuery ) {
64
  }
65
 
66
  jQuery('#rmp-preview-iframe').attr('src', url );
67
-
68
  });
69
 
70
  });
@@ -163,7 +163,37 @@ jQuery( document ).ready( function( jQuery ) {
163
  jQuery( this ) .addClass( 'nav-tab-active' );
164
  } );
165
 
166
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
167
 
168
  /**
169
  * Check open/close of device options switcher.
@@ -197,11 +227,11 @@ jQuery( document ).ready( function( jQuery ) {
197
  if ( selectedDevice != firstDevice ) {
198
  activeDeviceOptions( selectedDevice );
199
  if ( 'desktop' == selectedDevice ) {
200
- jQuery( '#rmp-preview-desktop' ).trigger( 'click' );
201
  } else if ( 'tablet' == selectedDevice ) {
202
  jQuery( '#rmp-preview-tablet' ).trigger( 'click' );
203
  } else {
204
- jQuery( '#rmp-preview-mobile' ).trigger( 'click' );
205
  }
206
  }
207
  } );
@@ -348,7 +378,7 @@ jQuery( document ).ready( function( jQuery ) {
348
  jQuery( this ).remove();
349
 
350
  if ( ! jQuery('#rmp-editor-main').find('#rmp-menu-update-notification').length ) {
351
- addUpdateNotification();
352
  }
353
 
354
  } );
@@ -413,7 +443,7 @@ jQuery( document ).ready( function( jQuery ) {
413
  }
414
 
415
  //Show the loader on deleting theme.
416
- const current_theme = jQuery(this);
417
  current_theme.append( '<span class="spinner is-active"></span>' );
418
 
419
  let themeName = jQuery( this ).attr( 'data-theme' );
@@ -488,9 +518,9 @@ jQuery( document ).ready( function( jQuery ) {
488
 
489
  /**
490
  * Save the global settings on click.
491
- *
492
  * @version 4.0.0
493
- *
494
  * @fires click
495
  */
496
  jQuery( '.rmp-save-global-settings-button' ).on( 'click', function( e ) {
@@ -513,7 +543,7 @@ jQuery( document ).ready( function( jQuery ) {
513
  console.log( 'Internal Error !' + error );
514
  },
515
  success: function( response ) {
516
- jQuery( '.spinner' ).removeClass( 'is-active' );
517
  jQuery( this ).prop( 'disabled', false );
518
  }
519
  } );
@@ -529,7 +559,7 @@ jQuery( document ).ready( function( jQuery ) {
529
 
530
  /**
531
  * Event to linked the group inputs.
532
- *
533
  * @fires Click
534
  */
535
  jQuery( document ).on( 'click', 'button.rmp-group-input-linked', function() {
@@ -538,7 +568,7 @@ jQuery( document ).ready( function( jQuery ) {
538
 
539
  /**
540
  * Event to type on all sibblings input if linked.
541
- *
542
  * @fires keyup
543
  */
544
  jQuery( document ).on( 'keyup', 'input.rmp-group-input', function( event ) {
@@ -549,7 +579,7 @@ jQuery( document ).ready( function( jQuery ) {
549
  if ( isLinked.length ) {
550
  parent.find( 'input.rmp-group-input' ).val( pressedKeys);
551
  } else {
552
- jQuery( this ).val(pressedKeys);
553
  }
554
 
555
  });
@@ -584,14 +614,14 @@ jQuery( document ).ready( function( jQuery ) {
584
  '#rmp-icon-dialog-select,.media-button-select,.rmp-icon-picker,.rmp-image-picker',
585
  function() {
586
  if ( ! jQuery('#rmp-editor-main').find('#rmp-menu-update-notification').length ) {
587
- addUpdateNotification();
588
  }
589
  });
590
 
591
  /**
592
  * Event to download exported menu settings as json file.
593
  *
594
- * @version 4.0.0
595
  */
596
  jQuery( '#rmp-export-menu-button' ).on( 'click', function( e ) {
597
  e.preventDefault();
@@ -627,11 +657,11 @@ jQuery( document ).ready( function( jQuery ) {
627
 
628
  /**
629
  * Function to download the content as file.
630
- *
631
  * @since 4.0.0
632
- *
633
  * @param {String} content Contents for file
634
- * @param {String} name Name of the file.
635
  * @param {String} type File type
636
  */
637
  function download_file(content, name, type ) {
@@ -647,7 +677,7 @@ jQuery( document ).ready( function( jQuery ) {
647
  /**
648
  * Event to download exported menu settings as json file.
649
  *
650
- * @version 4.0.0
651
  */
652
  jQuery( '#rmp-import-menu-button' ).on( 'click', function( e ) {
653
  e.preventDefault();
@@ -710,7 +740,7 @@ jQuery( document ).ready( function( jQuery ) {
710
  /**
711
  * Function to manage menu container animation options.
712
  *
713
- * @param {String} optionValue
714
  */
715
  function updateMenuContainerAnimationOptions( optionValue ) {
716
 
32
  },
33
  success: function( response ) {
34
  if ( response.data.redirect ) {
35
+ location.href = response.data.redirect;
36
  }
37
  }
38
  } );
64
  }
65
 
66
  jQuery('#rmp-preview-iframe').attr('src', url );
67
+
68
  });
69
 
70
  });
163
  jQuery( this ) .addClass( 'nav-tab-active' );
164
  } );
165
 
166
+ /**
167
+ * Hamburger element selector option hide and show.
168
+ */
169
+
170
+ hideShowSelect( '#rmp-menu-button-position-type', '.rmp-menu-hamburger-selector-div', 'show', 'inside-element');
171
+
172
+ jQuery('#rmp-menu-button-position-type').on( 'change', function() {
173
+ hideShowSelect( this, '.rmp-menu-hamburger-selector-div', 'show', 'inside-element');
174
+ });
175
+
176
+
177
+ /**
178
+ * select hide show function
179
+ * @para string select, string show/hide Element, string show/hide
180
+ */
181
+ function hideShowSelect( checkElement, targetElement, condition, value ) {
182
+
183
+ if ( jQuery(checkElement).val() == value ) {
184
+ if(condition == 'show'){
185
+ jQuery(targetElement).show();
186
+ }else{
187
+ jQuery(targetElement).hide();
188
+ }
189
+ } else {
190
+ if(condition == 'show'){
191
+ jQuery(targetElement).hide();
192
+ }else{
193
+ jQuery(targetElement).show();
194
+ }
195
+ }
196
+ }
197
 
198
  /**
199
  * Check open/close of device options switcher.
227
  if ( selectedDevice != firstDevice ) {
228
  activeDeviceOptions( selectedDevice );
229
  if ( 'desktop' == selectedDevice ) {
230
+ jQuery( '#rmp-preview-desktop' ).trigger( 'click' );
231
  } else if ( 'tablet' == selectedDevice ) {
232
  jQuery( '#rmp-preview-tablet' ).trigger( 'click' );
233
  } else {
234
+ jQuery( '#rmp-preview-mobile' ).trigger( 'click' );
235
  }
236
  }
237
  } );
378
  jQuery( this ).remove();
379
 
380
  if ( ! jQuery('#rmp-editor-main').find('#rmp-menu-update-notification').length ) {
381
+ addUpdateNotification();
382
  }
383
 
384
  } );
443
  }
444
 
445
  //Show the loader on deleting theme.
446
+ const current_theme = jQuery(this);
447
  current_theme.append( '<span class="spinner is-active"></span>' );
448
 
449
  let themeName = jQuery( this ).attr( 'data-theme' );
518
 
519
  /**
520
  * Save the global settings on click.
521
+ *
522
  * @version 4.0.0
523
+ *
524
  * @fires click
525
  */
526
  jQuery( '.rmp-save-global-settings-button' ).on( 'click', function( e ) {
543
  console.log( 'Internal Error !' + error );
544
  },
545
  success: function( response ) {
546
+ jQuery( '.spinner' ).removeClass( 'is-active' );
547
  jQuery( this ).prop( 'disabled', false );
548
  }
549
  } );
559
 
560
  /**
561
  * Event to linked the group inputs.
562
+ *
563
  * @fires Click
564
  */
565
  jQuery( document ).on( 'click', 'button.rmp-group-input-linked', function() {
568
 
569
  /**
570
  * Event to type on all sibblings input if linked.
571
+ *
572
  * @fires keyup
573
  */
574
  jQuery( document ).on( 'keyup', 'input.rmp-group-input', function( event ) {
579
  if ( isLinked.length ) {
580
  parent.find( 'input.rmp-group-input' ).val( pressedKeys);
581
  } else {
582
+ jQuery( this ).val(pressedKeys);
583
  }
584
 
585
  });
614
  '#rmp-icon-dialog-select,.media-button-select,.rmp-icon-picker,.rmp-image-picker',
615
  function() {
616
  if ( ! jQuery('#rmp-editor-main').find('#rmp-menu-update-notification').length ) {
617
+ addUpdateNotification();
618
  }
619
  });
620
 
621
  /**
622
  * Event to download exported menu settings as json file.
623
  *
624
+ * @version 4.0.0
625
  */
626
  jQuery( '#rmp-export-menu-button' ).on( 'click', function( e ) {
627
  e.preventDefault();
657
 
658
  /**
659
  * Function to download the content as file.
660
+ *
661
  * @since 4.0.0
662
+ *
663
  * @param {String} content Contents for file
664
+ * @param {String} name Name of the file.
665
  * @param {String} type File type
666
  */
667
  function download_file(content, name, type ) {
677
  /**
678
  * Event to download exported menu settings as json file.
679
  *
680
+ * @version 4.0.0
681
  */
682
  jQuery( '#rmp-import-menu-button' ).on( 'click', function( e ) {
683
  e.preventDefault();
740
  /**
741
  * Function to manage menu container animation options.
742
  *
743
+ * @param {String} optionValue
744
  */
745
  function updateMenuContainerAnimationOptions( optionValue ) {
746
 
v4.0.0/assets/admin/js/rmp-editor.js CHANGED
@@ -5,7 +5,7 @@
5
  *
6
  * @type {Object}
7
  */
8
- const rmpEditor = {
9
  editorSidebar: '#rmp-editor-wrapper',
10
  sidebarDrawer: 'button.collapse-sidebar',
11
  mainForm: '#rmp-editor-form',
@@ -13,11 +13,17 @@ const rmpEditor = {
13
  topParentNav: '#rmp-editor-nav',
14
  topParentTab: '#rmp-editor-pane',
15
  childTabs: '.rmp-accordions',
 
16
  tabItem: 'li.rmp-tab-item',
 
 
17
  titleLogo: '.rmp-editor-header-logo',
18
  closeButton: '.rmp-editor-header-close',
 
 
19
  titleText: '.rmp-editor-header-title',
20
  backButton: '.rmp-editor-header-back',
 
21
  tabId: null,
22
  level: 0,
23
  triggerBack: function() {
@@ -33,22 +39,53 @@ const rmpEditor = {
33
  this.tabId = parentId;
34
  },
35
  updatePanel: function( current ) {
36
- this.tabId = current.attr( 'aria-owns' );
37
  jQuery( '#' + this.tabId ).show();
38
  parentId = current.parent( 'ul' ).parent( 'div' ).attr( 'id' );
39
  jQuery( '#' + this.tabId ).attr( 'aria-parent', parentId );
40
  jQuery( '#' + parentId ).hide();
41
  },
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
42
  updateHeader: function( title ) {
43
 
44
  if ( 0 == this.level ) {
45
  jQuery( this.titleLogo ).find( 'img' ).show();
46
  jQuery( this.closeButton ).show();
47
  jQuery( this.backButton ).hide();
 
48
  } else if ( 1 == this.level ) {
49
  jQuery( this.backButton ).css( 'display', 'flex' );
50
  jQuery( this.titleLogo ).find( 'img' ).hide();
51
  jQuery( this.closeButton ).hide();
 
52
  }
53
 
54
  jQuery( this.titleText ).text( title );
@@ -66,6 +103,18 @@ const rmpEditor = {
66
  self.updatePanel( current );
67
  } );
68
 
 
 
 
 
 
 
 
 
 
 
 
 
69
  // Back from inner panel when click on back button.
70
  jQuery( self.backButton ).on( 'click', function( e ) {
71
  e.stopPropagation();
@@ -76,9 +125,108 @@ const rmpEditor = {
76
  jQuery( self.sidebarDrawer ).on( 'click', function(e) {
77
  jQuery( self.editorSidebar ).toggleClass( 'expanded collapsed' );
78
  } );
79
- }
80
- };
81
 
82
- rmpEditor.init();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
83
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
84
 
 
5
  *
6
  * @type {Object}
7
  */
8
+ const rmpEditor = {
9
  editorSidebar: '#rmp-editor-wrapper',
10
  sidebarDrawer: 'button.collapse-sidebar',
11
  mainForm: '#rmp-editor-form',
13
  topParentNav: '#rmp-editor-nav',
14
  topParentTab: '#rmp-editor-pane',
15
  childTabs: '.rmp-accordions',
16
+ parentTabItem: '.rmp-editor-pane-parent li.rmp-tab-item',
17
  tabItem: 'li.rmp-tab-item',
18
+ quickItem: '.rmp-quick-edit-link',
19
+ tabItemTitle: '.rmp-tab-item-title',
20
  titleLogo: '.rmp-editor-header-logo',
21
  closeButton: '.rmp-editor-header-close',
22
+ searchButton: '.rmp-search-settings-btn',
23
+ searchForm: '.rmp-search-settings',
24
  titleText: '.rmp-editor-header-title',
25
  backButton: '.rmp-editor-header-back',
26
+ accordionItem: 'li.rmp-accordion-item',
27
  tabId: null,
28
  level: 0,
29
  triggerBack: function() {
39
  this.tabId = parentId;
40
  },
41
  updatePanel: function( current ) {
42
+ this.tabId = current.attr( 'aria-owns' );
43
  jQuery( '#' + this.tabId ).show();
44
  parentId = current.parent( 'ul' ).parent( 'div' ).attr( 'id' );
45
  jQuery( '#' + this.tabId ).attr( 'aria-parent', parentId );
46
  jQuery( '#' + parentId ).hide();
47
  },
48
+ updateQuickPanel: function( current ) {
49
+ this.tabId = current.attr( 'aria-owns' );
50
+ var accordionId = current.attr( 'accordion-id' );
51
+ var subAccordionId = current.attr( 'sub-accordion-id' );
52
+ var subTabId = current.attr( 'sub-tab-id' );
53
+ parentId = jQuery(".rmp-accordions:visible").attr('id');
54
+ jQuery( '#' + this.tabId ).attr( 'aria-parent', parentId );
55
+ jQuery( '#' + parentId ).hide();
56
+ jQuery( '#' + this.tabId ).show();
57
+ if(accordionId!=''){
58
+ if (!jQuery( '#' + accordionId ).hasClass("ui-state-active")) {
59
+ jQuery( '#' + accordionId ).click();
60
+ }
61
+ if (subAccordionId !='') {
62
+ if (!jQuery( '#' + subAccordionId).hasClass("ui-state-active")) {
63
+ jQuery( '#' + subAccordionId ).click();
64
+ }
65
+ accordionId = subAccordionId;
66
+ }
67
+ setTimeout( function() {
68
+ var topPos = document.getElementById(accordionId).offsetTop;
69
+ jQuery( '#rmp-editor-main' ).animate({scrollTop: topPos - 60+'px'}, 500);
70
+ }, 400);
71
+
72
+ }
73
+ if(subTabId!=''){
74
+ jQuery( '#' + subTabId ).click();
75
+ }
76
+ },
77
  updateHeader: function( title ) {
78
 
79
  if ( 0 == this.level ) {
80
  jQuery( this.titleLogo ).find( 'img' ).show();
81
  jQuery( this.closeButton ).show();
82
  jQuery( this.backButton ).hide();
83
+ jQuery( this.searchForm ).css('width','200');
84
  } else if ( 1 == this.level ) {
85
  jQuery( this.backButton ).css( 'display', 'flex' );
86
  jQuery( this.titleLogo ).find( 'img' ).hide();
87
  jQuery( this.closeButton ).hide();
88
+ jQuery( this.searchForm ).css('width','255');
89
  }
90
 
91
  jQuery( this.titleText ).text( title );
103
  self.updatePanel( current );
104
  } );
105
 
106
+ // Move on next panel when click on item.
107
+ jQuery( self.editorContainer ).on( 'click', self.quickItem, function( e ) {
108
+ e.stopPropagation();
109
+ e.preventDefault();
110
+ current = jQuery( this );
111
+ var tabId = current.attr( 'aria-owns' );
112
+ var title = jQuery('.rmp-tab-item[aria-owns="'+tabId+'"]').find('.rmp-tab-item-title').html();
113
+ self.level++;
114
+ self.updateHeader( title );
115
+ self.updateQuickPanel( current );
116
+ } );
117
+
118
  // Back from inner panel when click on back button.
119
  jQuery( self.backButton ).on( 'click', function( e ) {
120
  e.stopPropagation();
125
  jQuery( self.sidebarDrawer ).on( 'click', function(e) {
126
  jQuery( self.editorSidebar ).toggleClass( 'expanded collapsed' );
127
  } );
 
 
128
 
129
+ // Open/Close the search form.
130
+ jQuery(self.searchButton).on( 'click', function( e ) {
131
+ jQuery(self.searchForm).toggle();
132
+ } );
133
+
134
+ //Search settings
135
+ jQuery.expr[':'].containsIgnoreCase = function (n, i, m) {
136
+ return jQuery(n).text().toUpperCase().indexOf(m[3].toUpperCase()) >= 0;
137
+ };
138
+ jQuery.fn.highlight = function(pat) {
139
+ function innerHighlight(node, pat) {
140
+ var skip = 0;
141
+ if(jQuery(node).is("select,input,textarea, .rmp-tooltip-content ")){
142
+ return skip;
143
+ }
144
+ if (node.nodeType == 3) {
145
+ var pos = node.data.toUpperCase().indexOf(pat);
146
+ if (pos >= 0) {
147
+ var spannode = document.createElement('i');
148
+ spannode.className = 'rmp-highlight';
149
+ var middlebit = node.splitText(pos);
150
+ middlebit.splitText(pat.length);
151
+ var middleclone = middlebit.cloneNode(true);
152
+ spannode.appendChild(middleclone);
153
+ middlebit.parentNode.replaceChild(spannode, middlebit);
154
+ skip = 1;
155
+ }
156
+ } else if (node.nodeType == 1 && node.childNodes && !/(script|style)/i.test(node.tagName)) {
157
+ for (var i = 0; i < node.childNodes.length; ++i) {
158
+ i += innerHighlight(node.childNodes[i], pat);
159
+ }
160
+ }
161
+ return skip;
162
+ }
163
+ return this.each(function() {
164
+ innerHighlight(this, pat.toUpperCase());
165
+ });
166
+ };
167
 
168
+ jQuery.fn.removeHighlight = function() {
169
+ function newNormalize(node) {
170
+ for (var i = 0, children = node.childNodes, nodeCount = children.length; i < nodeCount; i++) {
171
+ var child = children[i];
172
+ if (child.nodeType == 1) {
173
+ newNormalize(child);
174
+ continue;
175
+ }
176
+ if (child.nodeType != 3) {
177
+ continue;
178
+ }
179
+ var next = child.nextSibling;
180
+ if (next == null || next.nodeType != 3) {
181
+ continue;
182
+ }
183
+ var combined_text = child.nodeValue + next.nodeValue;
184
+ var new_node = node.ownerDocument.createTextNode(combined_text);
185
+ node.insertBefore(new_node, child);
186
+ node.removeChild(child);
187
+ node.removeChild(next);
188
+ i--;
189
+ nodeCount--;
190
+ }
191
+ }
192
+
193
+ return this.find("i.rmp-highlight").each(function() {
194
+ var thisParent = this.parentNode;
195
+ thisParent.replaceChild(this.firstChild, this);
196
+ newNormalize(thisParent);
197
+ }).end();
198
+ };
199
+
200
+ jQuery(document).on('keyup change search', self.searchForm, function(){
201
+ var searchTerm = jQuery(this).val();
202
+ jQuery('#rmp-editor-main').removeHighlight();
203
+ jQuery('.rmp-search-results-found').remove();
204
+ if(searchTerm == '') return false;
205
+ jQuery('#rmp-editor-main').highlight( searchTerm );
206
+ jQuery(self.parentTabItem).each(function() {
207
+ var target = "#"+jQuery( this ).attr( "aria-owns" );
208
+ var count = jQuery(target).find("i.rmp-highlight:containsIgnoreCase("+searchTerm+")").length;
209
+ jQuery(target).find(self.tabItem).each(function() {
210
+ var childTarget = "#"+jQuery( this ).attr( "aria-owns" );
211
+ var childCount = jQuery(childTarget).find("i.rmp-highlight:containsIgnoreCase("+searchTerm+")").length;
212
+ if(childCount>0){
213
+ jQuery(this).append('<span class="rmp-search-results-found">'+childCount+' Results</span>');
214
+ count = Number(count)+Number(childCount);
215
+ }
216
+ });
217
+ if(count>0){
218
+ jQuery(target).find(self.accordionItem).each(function() {
219
+ var accordionItemCount = jQuery(this).find(":not(.accordion-item-title, .item-title) > i.rmp-highlight:containsIgnoreCase("+searchTerm+")").length;
220
+ if(accordionItemCount>0){
221
+ jQuery(this).find('.rmp-accordion-title:first > .accordion-item-title, .rmp-accordion-title:first > .item-title').append('<span class="rmp-search-results-found">'+accordionItemCount+' Results</span>');
222
+ }
223
+ });
224
+ jQuery(this).append('<span class="rmp-search-results-found">'+count+' Results</span>');
225
+ }
226
+ });
227
+ });
228
+
229
+ }
230
+ };
231
 
232
+ rmpEditor.init();
v4.0.0/assets/admin/scss/admin.css CHANGED
@@ -1,4 +1,3 @@
1
-
2
  /* Admin scss file */
3
 
4
  body,
@@ -60,7 +59,7 @@ ol li{
60
  .rmp-editor-active input[type="number"],
61
  .rmp-editor-active input[type="search"],
62
  .rmp-editor-active input[type="tel"],
63
- .rmp-editor-active input[type="color"],
64
  .rmp-editor-active textarea {
65
  -webkit-appearance: none;
66
  -moz-appearance: none;
@@ -111,7 +110,7 @@ input[type="datetime-local"]:focus,
111
  input[type="email"]:focus, input[type="month"]:focus, input[type="number"]:focus, input[type="search"]:focus, input[type="tel"]:focus, input[type="text"]:focus, input[type="time"]:focus, input[type="url"]:focus, input[type="week"]:focus, input[type="checkbox"]:focus, input[type="radio"]:focus, select:focus, textarea:focus {
112
  border-color: #0085ba;
113
  box-shadow: 0 0 0 1px #0085ba;
114
-
115
  }
116
 
117
  .rmp-editor-active input[type="checkbox"], input[type="radio"] {
@@ -228,8 +227,8 @@ input[type="email"]:focus, input[type="month"]:focus, input[type="number"]:focus
228
  }
229
 
230
  /* Extra large devices (large desktops, 1200px and up) */
231
- @media only screen and ( max-width: 1140px ) {
232
-
233
  }
234
 
235
  .rmp-box-header {
@@ -382,7 +381,7 @@ input[type="email"]:focus, input[type="month"]:focus, input[type="number"]:focus
382
  }
383
 
384
  * ::-webkit-scrollbar-track {
385
- box-shadow: inset 0 0 5px transparent;
386
  }
387
 
388
  * ::-webkit-scrollbar-thumb {
@@ -390,7 +389,7 @@ input[type="email"]:focus, input[type="month"]:focus, input[type="number"]:focus
390
  }
391
 
392
  * ::-webkit-scrollbar-thumb:hover {
393
- background: #2d405a;
394
  }
395
 
396
  .rmp-menu-tab-container .nav-tab-wrapper,
@@ -438,6 +437,18 @@ input[type="email"]:focus, input[type="month"]:focus, input[type="number"]:focus
438
  padding: 20px;
439
  }
440
 
 
 
 
 
 
 
 
 
 
 
 
 
441
  /* Icons dialog */
442
 
443
  .rmp-menu-icons-dialog .icon-tabs {
@@ -527,7 +538,7 @@ input[type="email"]:focus, input[type="month"]:focus, input[type="number"]:focus
527
 
528
  .theme-overlay .theme-header button {
529
  padding: 0;
530
- }
531
 
532
  .rmp-dialog-contents .tabs{
533
  width: 100%;
@@ -625,6 +636,7 @@ margin: 5px 0px 10px;
625
  height: 55px;
626
  z-index: 10;
627
  overflow: hidden;
 
628
  }
629
 
630
  .rmp-action-button {
@@ -672,15 +684,15 @@ margin: 5px 0px 10px;
672
  font-weight: 900;
673
  }
674
 
 
 
 
 
 
 
 
675
  .rmp-editor-header-close {
676
- width: 55px;
677
- height: 55px;
678
- position: absolute;
679
- right: 0;
680
- display: flex;
681
- align-items: inherit;
682
- justify-content: center;
683
- font-weight: 900;
684
  font-size: 1.2rem;
685
  background: #F80668;
686
  color: #fff;
@@ -691,6 +703,45 @@ margin: 5px 0px 10px;
691
  color: #fff;
692
  }
693
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
694
  .rmp-editor-header-title {
695
  display: inline-block;
696
  font-family: 'Product Sans';
@@ -926,7 +977,7 @@ margin: 5px 0px 10px;
926
  -khtml-user-select: none;
927
  -moz-user-select: none;
928
  -ms-user-select: none;
929
- user-select: none;
930
  }
931
 
932
  #rmp-editor-form .rmp-editor-pane-parent .rmp-tab-item {
@@ -1115,12 +1166,11 @@ margin: 5px 0px 10px;
1115
  width: 100%
1116
  }
1117
 
1118
- .rmp-menu-controls .rmp-input-control-wrapper .rmp-input-control input[type="number"]{
1119
  width: 100%;
1120
  }
1121
 
1122
  /* .rmp-menu-controls .rmp-input-control-wrapper.full-size.multi-device .rmp-input-control input[type="number"] {
1123
-
1124
  max-width: 70%;
1125
  } */
1126
 
@@ -1238,7 +1288,7 @@ margin: 5px 0px 10px;
1238
  line-height: 1;
1239
  -webkit-font-smoothing: antialiased;
1240
  cursor: move;
1241
- }
1242
 
1243
  .rmp-tooltip-icon {
1244
  width: 1.5rem;
@@ -2032,7 +2082,7 @@ button.menu-save {
2032
  background: #fff;
2033
  max-width: fit-content;
2034
  border: solid 1px #cccccc;
2035
- margin-bottom: 1rem;
2036
  }
2037
 
2038
  .rmp-menu-item-icon-container {
@@ -2096,7 +2146,7 @@ button.menu-save {
2096
  #rmp-menu-update-notification{
2097
  text-align: center;
2098
  display: flex;
2099
- justify-content: space-between;
2100
  }
2101
 
2102
  #rmp-menu-update-notification:hover {
@@ -2176,7 +2226,7 @@ div.notice-responsive-menu .notice-responsive-menu-action a:hover {
2176
  position: absolute;
2177
  top: -30px;
2178
  right: 5%;
2179
-
2180
  }
2181
 
2182
  .rmp-editor-overlay .rmp-input-control-label .upgrade-tooltip {
@@ -2345,4 +2395,4 @@ div.notice-responsive-menu .notice-responsive-menu-action a:hover {
2345
  line-height: 12px;
2346
  top: -32px;
2347
  left: 50%;
2348
- }
 
1
  /* Admin scss file */
2
 
3
  body,
59
  .rmp-editor-active input[type="number"],
60
  .rmp-editor-active input[type="search"],
61
  .rmp-editor-active input[type="tel"],
62
+ .rmp-editor-active input[type="color"],
63
  .rmp-editor-active textarea {
64
  -webkit-appearance: none;
65
  -moz-appearance: none;
110
  input[type="email"]:focus, input[type="month"]:focus, input[type="number"]:focus, input[type="search"]:focus, input[type="tel"]:focus, input[type="text"]:focus, input[type="time"]:focus, input[type="url"]:focus, input[type="week"]:focus, input[type="checkbox"]:focus, input[type="radio"]:focus, select:focus, textarea:focus {
111
  border-color: #0085ba;
112
  box-shadow: 0 0 0 1px #0085ba;
113
+
114
  }
115
 
116
  .rmp-editor-active input[type="checkbox"], input[type="radio"] {
227
  }
228
 
229
  /* Extra large devices (large desktops, 1200px and up) */
230
+ @media only screen and ( max-width: 1140px ) {
231
+
232
  }
233
 
234
  .rmp-box-header {
381
  }
382
 
383
  * ::-webkit-scrollbar-track {
384
+ box-shadow: inset 0 0 5px transparent;
385
  }
386
 
387
  * ::-webkit-scrollbar-thumb {
389
  }
390
 
391
  * ::-webkit-scrollbar-thumb:hover {
392
+ background: #2d405a;
393
  }
394
 
395
  .rmp-menu-tab-container .nav-tab-wrapper,
437
  padding: 20px;
438
  }
439
 
440
+ /*Shortcut link */
441
+ .rmp-quick-edit-link a {
442
+ background: #dbf4ff;
443
+ padding: 5px 8px;
444
+ border: 1px dashed #36bef7;
445
+ border-radius: 3px;
446
+ }
447
+
448
+ .rmp-quick-edit-link a i{
449
+ margin-left: 5px;
450
+ }
451
+
452
  /* Icons dialog */
453
 
454
  .rmp-menu-icons-dialog .icon-tabs {
538
 
539
  .theme-overlay .theme-header button {
540
  padding: 0;
541
+ }
542
 
543
  .rmp-dialog-contents .tabs{
544
  width: 100%;
636
  height: 55px;
637
  z-index: 10;
638
  overflow: hidden;
639
+ justify-content: space-between;
640
  }
641
 
642
  .rmp-action-button {
684
  font-weight: 900;
685
  }
686
 
687
+ .rmp-search-settings-btn {
688
+ color: #fff;
689
+ font-size: 20px;
690
+ cursor: pointer;
691
+ margin-right: 10px;
692
+ }
693
+
694
  .rmp-editor-header-close {
695
+ padding: 20px;
 
 
 
 
 
 
 
696
  font-size: 1.2rem;
697
  background: #F80668;
698
  color: #fff;
703
  color: #fff;
704
  }
705
 
706
+ #rmp-editor-header .rmp-search-settings {
707
+ position: absolute;
708
+ width: 200px;
709
+ height: 40px;
710
+ border-radius: 4px;
711
+ transition-duration: .3s;
712
+ display: none;
713
+ left: 60px;
714
+ background: #383C58;
715
+ border: none;
716
+ color: #fff;
717
+ }
718
+
719
+ .rmp-search-results-found {
720
+ background: #fff34d;
721
+ padding: 2px;
722
+ border-radius: 4px;
723
+ font-size: 12px;
724
+ line-height: 1;
725
+ color: #000;
726
+ margin-left: 10px;
727
+ }
728
+
729
+ .rmp-tab-item .rmp-search-results-found {
730
+ position: absolute;
731
+ right: 40px;
732
+ margin-top: -6px;
733
+ }
734
+
735
+ .rmp-highlight {
736
+ background-color: #fff34d;
737
+ color: #000;
738
+ border-radius: 5px;
739
+ padding:0px 2px;
740
+ -moz-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.7);
741
+ -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.7);
742
+ box-shadow: 0 1px 4px rgba(0, 0, 0, 0.7);
743
+ }
744
+
745
  .rmp-editor-header-title {
746
  display: inline-block;
747
  font-family: 'Product Sans';
977
  -khtml-user-select: none;
978
  -moz-user-select: none;
979
  -ms-user-select: none;
980
+ user-select: none;
981
  }
982
 
983
  #rmp-editor-form .rmp-editor-pane-parent .rmp-tab-item {
1166
  width: 100%
1167
  }
1168
 
1169
+ .rmp-menu-controls .rmp-input-control-wrapper .rmp-input-control input[type="number"]{
1170
  width: 100%;
1171
  }
1172
 
1173
  /* .rmp-menu-controls .rmp-input-control-wrapper.full-size.multi-device .rmp-input-control input[type="number"] {
 
1174
  max-width: 70%;
1175
  } */
1176
 
1288
  line-height: 1;
1289
  -webkit-font-smoothing: antialiased;
1290
  cursor: move;
1291
+ }
1292
 
1293
  .rmp-tooltip-icon {
1294
  width: 1.5rem;
2082
  background: #fff;
2083
  max-width: fit-content;
2084
  border: solid 1px #cccccc;
2085
+ margin-bottom: 1rem;
2086
  }
2087
 
2088
  .rmp-menu-item-icon-container {
2146
  #rmp-menu-update-notification{
2147
  text-align: center;
2148
  display: flex;
2149
+ justify-content: space-between;
2150
  }
2151
 
2152
  #rmp-menu-update-notification:hover {
2226
  position: absolute;
2227
  top: -30px;
2228
  right: 5%;
2229
+
2230
  }
2231
 
2232
  .rmp-editor-overlay .rmp-input-control-label .upgrade-tooltip {
2395
  line-height: 12px;
2396
  top: -32px;
2397
  left: 50%;
2398
+ }
v4.0.0/assets/admin/scss/dark-mode.scss CHANGED
@@ -1,10 +1,10 @@
1
  /**
2
- * This is dark mode styles for menu editor page and dialogs.
3
  */
4
  :root {
5
  --mainColor : #323232;
6
  --mainDarkColor:#212121;
7
- --accentColor: #14ffec;
8
  --secondaryAccentColor:#0d7377;
9
  --white: #fff;
10
  --lightWhite:#f0f0f0;
@@ -18,7 +18,7 @@
18
 
19
  //Sidebar drawer.
20
  .rmp-editor-overlay .collapse-sidebar {
21
- background-color: var(--mainDarkColor);
22
  .collapse-sidebar-arrow:before {
23
  color: var(--accentColor);
24
  }
@@ -27,9 +27,9 @@
27
  //Mobile and tablet preview shadow.
28
  .rmp-preview-mobile #rmp-preview-wrapper,
29
  .rmp-preview-tablet #rmp-preview-wrapper {
30
- box-shadow: 0px 3px 0 #212121,
31
- 0px 4px 0 #212121,
32
- 0px 5px 0 #212121,
33
  0px 7px 0 #212121,
34
  1px 6px 15px #212121;
35
  }
@@ -67,7 +67,11 @@
67
 
68
  #rmp-editor-form {
69
  background-color: var(--mainColor);
70
-
 
 
 
 
71
  .rmp-tab-item {
72
 
73
  svg path {
@@ -113,7 +117,7 @@
113
  background-color: var(--accentColor);
114
  }
115
  }
116
-
117
 
118
  .toggle {
119
  background-color: var(--secondaryAccentColor);
@@ -150,7 +154,7 @@
150
  }
151
 
152
  .rmp-menu-controls {
153
-
154
  .rmp-input-control {
155
 
156
  .rmp-group-input-wrapper input[type="text"] {
@@ -310,7 +314,7 @@
310
  color: var(--white) !important;
311
  }
312
 
313
- border-color: var(--mainDarkColor);
314
  .close {
315
  border-color: var(--mainDarkColor);
316
  }
@@ -319,7 +323,7 @@
319
  .rmp-menu-library-title {
320
  color: var( --white );
321
  }
322
- }
323
 
324
  //New Menu and change theme dialog styles.
325
  #rmp-new-menu-wizard {
@@ -514,5 +518,5 @@
514
  .upgrade-tooltip {
515
  color:var(--white) !important;
516
  }
517
-
518
- }
1
  /**
2
+ * This is dark mode styles for menu editor page and dialogs.
3
  */
4
  :root {
5
  --mainColor : #323232;
6
  --mainDarkColor:#212121;
7
+ --accentColor: #36bef7;
8
  --secondaryAccentColor:#0d7377;
9
  --white: #fff;
10
  --lightWhite:#f0f0f0;
18
 
19
  //Sidebar drawer.
20
  .rmp-editor-overlay .collapse-sidebar {
21
+ background-color: var(--mainDarkColor);
22
  .collapse-sidebar-arrow:before {
23
  color: var(--accentColor);
24
  }
27
  //Mobile and tablet preview shadow.
28
  .rmp-preview-mobile #rmp-preview-wrapper,
29
  .rmp-preview-tablet #rmp-preview-wrapper {
30
+ box-shadow: 0px 3px 0 #212121,
31
+ 0px 4px 0 #212121,
32
+ 0px 5px 0 #212121,
33
  0px 7px 0 #212121,
34
  1px 6px 15px #212121;
35
  }
67
 
68
  #rmp-editor-form {
69
  background-color: var(--mainColor);
70
+ .rmp-search-settings{
71
+ background-color: var(--mainColor);
72
+ color: var(--white);
73
+ border-color: var(--mainColor);
74
+ }
75
  .rmp-tab-item {
76
 
77
  svg path {
117
  background-color: var(--accentColor);
118
  }
119
  }
120
+
121
 
122
  .toggle {
123
  background-color: var(--secondaryAccentColor);
154
  }
155
 
156
  .rmp-menu-controls {
157
+
158
  .rmp-input-control {
159
 
160
  .rmp-group-input-wrapper input[type="text"] {
314
  color: var(--white) !important;
315
  }
316
 
317
+ border-color: var(--mainDarkColor);
318
  .close {
319
  border-color: var(--mainDarkColor);
320
  }
323
  .rmp-menu-library-title {
324
  color: var( --white );
325
  }
326
+ }
327
 
328
  //New Menu and change theme dialog styles.
329
  #rmp-new-menu-wizard {
518
  .upgrade-tooltip {
519
  color:var(--white) !important;
520
  }
521
+
522
+ }
v4.0.0/assets/js/rmp-menu.js CHANGED
@@ -2,7 +2,7 @@
2
  * This file contain the scrips for menu frontend.
3
  * @author ExpressTech System
4
  *
5
- * @since 4.0.0
6
  */
7
 
8
  jQuery( document ).ready( function( jQuery ) {
@@ -52,10 +52,16 @@ jQuery( document ).ready( function( jQuery ) {
52
  this.trigger = this.trigger +' , '+ this.options['button_click_trigger'];
53
  }
54
 
 
 
 
 
 
 
55
  this.init();
56
  }
57
 
58
- /**
59
  * This function register the events and initiate the menu settings.
60
  */
61
  init() {
@@ -69,7 +75,7 @@ jQuery( document ).ready( function( jQuery ) {
69
  e.stopPropagation();
70
  self.triggerMenu();
71
  } );
72
-
73
  // Show/Hide sub menu item when click on item toggle.
74
  jQuery( self.menuWrap ).find( self.subMenuArrow ).on( 'click', function( e ) {
75
  e.preventDefault();
@@ -124,7 +130,7 @@ jQuery( document ).ready( function( jQuery ) {
124
  }
125
  });
126
  }
127
-
128
  // Expand Sub items on Parent Item Click.
129
  if ( 'on' == self.options['menu_item_click_to_trigger_submenu'] ) {
130
  jQuery( '.rmp-menu-item-has-children > ' + self.linkElement ).on( 'click', function(e) {
@@ -200,7 +206,7 @@ jQuery( document ).ready( function( jQuery ) {
200
 
201
  /**
202
  * Function to fadeOut the hamburger menu container.
203
- */
204
  fadeMenuOut() {
205
  jQuery(this.container)
206
  .fadeOut(this.animationSpeed, function() {
@@ -210,8 +216,8 @@ jQuery( document ).ready( function( jQuery ) {
210
 
211
  /**
212
  * Function is use to open the hamburger menu.
213
- *
214
- * @since 4.0.0
215
  */
216
  openMenu() {
217
  var self = this;
@@ -231,7 +237,7 @@ jQuery( document ).ready( function( jQuery ) {
231
 
232
  /**
233
  * Function is use to close the hamburger menu.
234
- *
235
  * @since 4.0.0
236
  */
237
  closeMenu() {
@@ -249,9 +255,9 @@ jQuery( document ).ready( function( jQuery ) {
249
 
250
  /**
251
  * Function is responsible for checking the menu is open or close.
252
- *
253
  * @since 4.0.0
254
- * @param {Event} e
255
  */
256
  triggerMenu() {
257
  this.isOpen ? this.closeMenu() : this.openMenu();
@@ -296,7 +302,7 @@ jQuery( document ).ready( function( jQuery ) {
296
  jQuery( subArrow ).html(self.options['active_toggle_contents'] );
297
  jQuery( subArrow ).addClass(RmpMenu.activeSubMenuArrowClass);
298
  }
299
-
300
  }
301
 
302
  /**
@@ -314,9 +320,9 @@ jQuery( document ).ready( function( jQuery ) {
314
 
315
  /**
316
  * Returns the height of container.
317
- *
318
  * @version 4.0.0
319
- *
320
  * @return Number
321
  */
322
  menuHeight() {
@@ -325,9 +331,9 @@ jQuery( document ).ready( function( jQuery ) {
325
 
326
  /**
327
  * Returns the width of the container.
328
- *
329
  * @version 4.0.0
330
- *
331
  * @return Number
332
  */
333
  menuWidth() {
2
  * This file contain the scrips for menu frontend.
3
  * @author ExpressTech System
4
  *
5
+ * @since 4.0.0
6
  */
7
 
8
  jQuery( document ).ready( function( jQuery ) {
52
  this.trigger = this.trigger +' , '+ this.options['button_click_trigger'];
53
  }
54
 
55
+ //Append hamburger icon inside an element
56
+ if ( this.options['button_position_type'] == 'inside-element' ) {
57
+ var destination = jQuery(this.trigger).attr('destination');
58
+ jQuery(this.trigger).appendTo(jQuery(destination).parent());
59
+ }
60
+
61
  this.init();
62
  }
63
 
64
+ /**
65
  * This function register the events and initiate the menu settings.
66
  */
67
  init() {
75
  e.stopPropagation();
76
  self.triggerMenu();
77
  } );
78
+
79
  // Show/Hide sub menu item when click on item toggle.
80
  jQuery( self.menuWrap ).find( self.subMenuArrow ).on( 'click', function( e ) {
81
  e.preventDefault();
130
  }
131
  });
132
  }
133
+
134
  // Expand Sub items on Parent Item Click.
135
  if ( 'on' == self.options['menu_item_click_to_trigger_submenu'] ) {
136
  jQuery( '.rmp-menu-item-has-children > ' + self.linkElement ).on( 'click', function(e) {
206
 
207
  /**
208
  * Function to fadeOut the hamburger menu container.
209
+ */
210
  fadeMenuOut() {
211
  jQuery(this.container)
212
  .fadeOut(this.animationSpeed, function() {
216
 
217
  /**
218
  * Function is use to open the hamburger menu.
219
+ *
220
+ * @since 4.0.0
221
  */
222
  openMenu() {
223
  var self = this;
237
 
238
  /**
239
  * Function is use to close the hamburger menu.
240
+ *
241
  * @since 4.0.0
242
  */
243
  closeMenu() {
255
 
256
  /**
257
  * Function is responsible for checking the menu is open or close.
258
+ *
259
  * @since 4.0.0
260
+ * @param {Event} e
261
  */
262
  triggerMenu() {
263
  this.isOpen ? this.closeMenu() : this.openMenu();
302
  jQuery( subArrow ).html(self.options['active_toggle_contents'] );
303
  jQuery( subArrow ).addClass(RmpMenu.activeSubMenuArrowClass);
304
  }
305
+
306
  }
307
 
308
  /**
320
 
321
  /**
322
  * Returns the height of container.
323
+ *
324
  * @version 4.0.0
325
+ *
326
  * @return Number
327
  */
328
  menuHeight() {
331
 
332
  /**
333
  * Returns the width of the container.
334
+ *
335
  * @version 4.0.0
336
+ *
337
  * @return Number
338
  */
339
  menuWidth() {
v4.0.0/assets/scss/main.scss CHANGED
@@ -11,12 +11,21 @@
11
  display: none !important;
12
  }
13
  }
14
-
 
 
 
 
 
15
  #{$menu_trigger_id} {
16
 
17
  width : $menu_trigger_width;
18
  height : $menu_trigger_height;
19
- position: $menu_trigger_position_type;
 
 
 
 
20
  top : $menu_trigger_distance_from_top;
21
  border-radius: $toggle_button_border_radius + px;
22
  display: none;
@@ -53,7 +62,7 @@
53
  }
54
 
55
  .rmp-trigger-icon-active,
56
- .rmp-trigger-text-open {
57
  display: none;
58
  }
59
 
@@ -86,7 +95,7 @@
86
  display: block;
87
  margin-bottom: 12px;
88
  }
89
-
90
  &.rmp-trigger-label-bottom {
91
  display: block;
92
  margin-top: 12px;
@@ -143,7 +152,7 @@
143
  @if ( $menu_maximum_width != '' ) {
144
  max-width: $menu_maximum_width+$menu_maximum_width_unit;
145
  }
146
-
147
  @if ( $menu_minimum_width != '' ) {
148
  min-width: $menu_minimum_width + $menu_minimum_width_unit;
149
  }
@@ -163,19 +172,19 @@
163
  }
164
 
165
  @if( $menu_container_padding_top != '' ) {
166
- padding-top : $menu_container_padding_top;
167
  }
168
 
169
  @if( $menu_container_padding_left != '' ) {
170
- padding-left : $menu_container_padding_left;
171
  }
172
 
173
  @if( $menu_container_padding_bottom != '' ) {
174
- padding-bottom : $menu_container_padding_bottom;
175
  }
176
 
177
  @if( $menu_container_padding_right != '' ) {
178
- padding-right : $menu_container_padding_right;
179
  }
180
 
181
  }
@@ -183,23 +192,23 @@
183
  #{$menu_wrap} {
184
 
185
  @if( $menu_section_padding_top != '' ) {
186
- padding-top : $menu_section_padding_top;
187
  }
188
 
189
  @if( $menu_section_padding_left != '' ) {
190
- padding-left : $menu_section_padding_left;
191
  }
192
 
193
  @if( $menu_section_padding_bottom != '' ) {
194
- padding-bottom : $menu_section_padding_bottom;
195
  }
196
 
197
  @if( $menu_section_padding_right != '' ) {
198
- padding-right : $menu_section_padding_right;
199
  }
200
 
201
  @if( $menu_background_color != '' ) {
202
- background-color: $menu_background_color;
203
  }
204
 
205
  .rmp-menu,
@@ -241,7 +250,7 @@
241
  width: 100%;
242
  list-style: none;
243
  margin:0;
244
- }
245
 
246
  .rmp-menu-item-link {
247
 
@@ -257,7 +266,7 @@
257
  font-size: ( $menu_item_font_size + $menu_item_font_size_unit );
258
  }
259
 
260
-
261
  @if( $menu_item_border_width != '' ) {
262
  border-bottom: ( $menu_item_border_width + $menu_item_border_width_unit ) solid $menu_item_border_color;
263
  } @else {
@@ -325,7 +334,7 @@
325
  &:hover {
326
  color: $menu_current_item_text_color_hover;
327
  border-color: $menu_current_item_border_color_hover;
328
- background-color: $menu_current_item_background_color_hover;
329
  }
330
  }
331
  }
@@ -351,7 +360,7 @@
351
  }
352
 
353
  height: ($menu_item_toggle_height + $menu_item_toggle_height_unit);
354
-
355
  width: ( $menu_item_toggle_width + $menu_item_toggle_width_unit );
356
  color: $menu_item_toggle_text_color;
357
  background-color: $menu_item_toggle_background_color;
@@ -359,7 +368,7 @@
359
  &:hover {
360
  color: $menu_item_toggle_text_color_hover;
361
  border-color: $menu_item_toggle_border_color_hover;
362
- background-color: $menu_item_toggle_background_color_hover;
363
  }
364
 
365
  .rmp-font-icon {
@@ -393,7 +402,7 @@
393
  letter-spacing: ($submenu_text_letter_spacing + px);
394
 
395
  @if( $submenu_item_font_size != '' ) {
396
- font-size: ( $submenu_item_font_size + $submenu_item_font_size_unit );
397
  }
398
 
399
  @if( $submenu_item_border_width != '' ) {
@@ -407,7 +416,7 @@
407
  } @else {
408
  font-family: inherit;
409
  }
410
-
411
  color: $submenu_item_text_color;
412
  text-align: $submenu_item_text_alignment;
413
  background-color: $submenu_item_background_color;
@@ -428,7 +437,7 @@
428
  &:hover {
429
  color: $submenu_current_item_text_color_hover;
430
  border-color: $submenu_current_item_border_color_hover;
431
- background-color: $submenu_current_item_background_color_hover;
432
  }
433
  }
434
  }
@@ -461,7 +470,7 @@
461
  &:hover {
462
  color: $submenu_item_toggle_text_color_hover;
463
  border-color: $submenu_item_toggle_border_color_hover;
464
- background-color: $submenu_item_toggle_background_color_hover;
465
  }
466
  }
467
 
@@ -488,23 +497,23 @@
488
  }
489
 
490
  #{$menu_search_box_wrap} {
491
-
492
  display: block;
493
 
494
  @if( $menu_search_section_padding_top != '' ) {
495
- padding-top : $menu_search_section_padding_top;
496
  }
497
 
498
  @if( $menu_search_section_padding_left != '' ) {
499
- padding-left : $menu_search_section_padding_left;
500
  }
501
 
502
  @if( $menu_search_section_padding_bottom != '' ) {
503
- padding-bottom : $menu_search_section_padding_bottom;
504
  }
505
 
506
  @if( $menu_search_section_padding_right != '' ) {
507
- padding-right : $menu_search_section_padding_right;
508
  }
509
 
510
  .rmp-search-form {
@@ -556,23 +565,23 @@
556
  }
557
 
558
  @if( $menu_title_section_padding_top != '' ) {
559
- padding-top : $menu_title_section_padding_top;
560
  }
561
 
562
  @if( $menu_title_section_padding_left != '' ) {
563
- padding-left : $menu_title_section_padding_left;
564
  }
565
 
566
  @if( $menu_title_section_padding_bottom != '' ) {
567
- padding-bottom : $menu_title_section_padding_bottom;
568
  }
569
 
570
  @if( $menu_title_section_padding_right != '' ) {
571
- padding-right : $menu_title_section_padding_right;
572
  }
573
 
574
  @if( $menu_title_font_family != '' ) {
575
- font-family : $menu_title_font_family;
576
  }
577
 
578
  font-weight: $menu_title_font_weight;
@@ -614,21 +623,21 @@
614
  #{$menu_additional_content_wrap} {
615
 
616
  @if( $menu_additional_section_padding_top != '' ) {
617
- padding-top : $menu_additional_section_padding_top;
618
  }
619
 
620
  @if( $menu_additional_section_padding_left != '' ) {
621
- padding-left : $menu_additional_section_padding_left;
622
  }
623
 
624
  @if( $menu_additional_section_padding_bottom != '' ) {
625
- padding-bottom : $menu_additional_section_padding_bottom;
626
  }
627
 
628
  @if( $menu_additional_section_padding_right != '' ) {
629
- padding-right : $menu_additional_section_padding_right;
630
  }
631
-
632
  @if( $menu_additional_content_color != '' ) {
633
  color: $menu_additional_content_color;
634
  }
@@ -640,6 +649,6 @@
640
  @if( $menu_additional_content_font_size != '' ) {
641
  font-size: ($menu_additional_content_font_size + $menu_additional_content_font_size_unit) ;
642
  }
643
-
644
  }
645
  }
11
  display: none !important;
12
  }
13
  }
14
+ // Menu hamburger toggle styling.
15
+ @if($menu_trigger_position_type == 'inside-element'){
16
+ .admin-bar #{$menu_trigger_id}{
17
+ margin-top: 0px !important;
18
+ }
19
+ }
20
  #{$menu_trigger_id} {
21
 
22
  width : $menu_trigger_width;
23
  height : $menu_trigger_height;
24
+ @if($menu_trigger_position_type == 'inside-element'){
25
+ position: relative;
26
+ }@else{
27
+ position: $menu_trigger_position_type;
28
+ }
29
  top : $menu_trigger_distance_from_top;
30
  border-radius: $toggle_button_border_radius + px;
31
  display: none;
62
  }
63
 
64
  .rmp-trigger-icon-active,
65
+ .rmp-trigger-text-open {
66
  display: none;
67
  }
68
 
95
  display: block;
96
  margin-bottom: 12px;
97
  }
98
+
99
  &.rmp-trigger-label-bottom {
100
  display: block;
101
  margin-top: 12px;
152
  @if ( $menu_maximum_width != '' ) {
153
  max-width: $menu_maximum_width+$menu_maximum_width_unit;
154
  }
155
+
156
  @if ( $menu_minimum_width != '' ) {
157
  min-width: $menu_minimum_width + $menu_minimum_width_unit;
158
  }
172
  }
173
 
174
  @if( $menu_container_padding_top != '' ) {
175
+ padding-top : $menu_container_padding_top;
176
  }
177
 
178
  @if( $menu_container_padding_left != '' ) {
179
+ padding-left : $menu_container_padding_left;
180
  }
181
 
182
  @if( $menu_container_padding_bottom != '' ) {
183
+ padding-bottom : $menu_container_padding_bottom;
184
  }
185
 
186
  @if( $menu_container_padding_right != '' ) {
187
+ padding-right : $menu_container_padding_right;
188
  }
189
 
190
  }
192
  #{$menu_wrap} {
193
 
194
  @if( $menu_section_padding_top != '' ) {
195
+ padding-top : $menu_section_padding_top;
196
  }
197
 
198
  @if( $menu_section_padding_left != '' ) {
199
+ padding-left : $menu_section_padding_left;
200
  }
201
 
202
  @if( $menu_section_padding_bottom != '' ) {
203
+ padding-bottom : $menu_section_padding_bottom;
204
  }
205
 
206
  @if( $menu_section_padding_right != '' ) {
207
+ padding-right : $menu_section_padding_right;
208
  }
209
 
210
  @if( $menu_background_color != '' ) {
211
+ background-color: $menu_background_color;
212
  }
213
 
214
  .rmp-menu,
250
  width: 100%;
251
  list-style: none;
252
  margin:0;
253
+ }
254
 
255
  .rmp-menu-item-link {
256
 
266
  font-size: ( $menu_item_font_size + $menu_item_font_size_unit );
267
  }
268
 
269
+
270
  @if( $menu_item_border_width != '' ) {
271
  border-bottom: ( $menu_item_border_width + $menu_item_border_width_unit ) solid $menu_item_border_color;
272
  } @else {
334
  &:hover {
335
  color: $menu_current_item_text_color_hover;
336
  border-color: $menu_current_item_border_color_hover;
337
+ background-color: $menu_current_item_background_color_hover;
338
  }
339
  }
340
  }
360
  }
361
 
362
  height: ($menu_item_toggle_height + $menu_item_toggle_height_unit);
363
+
364
  width: ( $menu_item_toggle_width + $menu_item_toggle_width_unit );
365
  color: $menu_item_toggle_text_color;
366
  background-color: $menu_item_toggle_background_color;
368
  &:hover {
369
  color: $menu_item_toggle_text_color_hover;
370
  border-color: $menu_item_toggle_border_color_hover;
371
+ background-color: $menu_item_toggle_background_color_hover;
372
  }
373
 
374
  .rmp-font-icon {
402
  letter-spacing: ($submenu_text_letter_spacing + px);
403
 
404
  @if( $submenu_item_font_size != '' ) {
405
+ font-size: ( $submenu_item_font_size + $submenu_item_font_size_unit );
406
  }
407
 
408
  @if( $submenu_item_border_width != '' ) {
416
  } @else {
417
  font-family: inherit;
418
  }
419
+
420
  color: $submenu_item_text_color;
421
  text-align: $submenu_item_text_alignment;
422
  background-color: $submenu_item_background_color;
437
  &:hover {
438
  color: $submenu_current_item_text_color_hover;
439
  border-color: $submenu_current_item_border_color_hover;
440
+ background-color: $submenu_current_item_background_color_hover;
441
  }
442
  }
443
  }
470
  &:hover {
471
  color: $submenu_item_toggle_text_color_hover;
472
  border-color: $submenu_item_toggle_border_color_hover;
473
+ background-color: $submenu_item_toggle_background_color_hover;
474
  }
475
  }
476
 
497
  }
498
 
499
  #{$menu_search_box_wrap} {
500
+
501
  display: block;
502
 
503
  @if( $menu_search_section_padding_top != '' ) {
504
+ padding-top : $menu_search_section_padding_top;
505
  }
506
 
507
  @if( $menu_search_section_padding_left != '' ) {
508
+ padding-left : $menu_search_section_padding_left;
509
  }
510
 
511
  @if( $menu_search_section_padding_bottom != '' ) {
512
+ padding-bottom : $menu_search_section_padding_bottom;
513
  }
514
 
515
  @if( $menu_search_section_padding_right != '' ) {
516
+ padding-right : $menu_search_section_padding_right;
517
  }
518
 
519
  .rmp-search-form {
565
  }
566
 
567
  @if( $menu_title_section_padding_top != '' ) {
568
+ padding-top : $menu_title_section_padding_top;
569
  }
570
 
571
  @if( $menu_title_section_padding_left != '' ) {
572
+ padding-left : $menu_title_section_padding_left;
573
  }
574
 
575
  @if( $menu_title_section_padding_bottom != '' ) {
576
+ padding-bottom : $menu_title_section_padding_bottom;
577
  }
578
 
579
  @if( $menu_title_section_padding_right != '' ) {
580
+ padding-right : $menu_title_section_padding_right;
581
  }
582
 
583
  @if( $menu_title_font_family != '' ) {
584
+ font-family : $menu_title_font_family;
585
  }
586
 
587
  font-weight: $menu_title_font_weight;
623
  #{$menu_additional_content_wrap} {
624
 
625
  @if( $menu_additional_section_padding_top != '' ) {
626
+ padding-top : $menu_additional_section_padding_top;
627
  }
628
 
629
  @if( $menu_additional_section_padding_left != '' ) {
630
+ padding-left : $menu_additional_section_padding_left;
631
  }
632
 
633
  @if( $menu_additional_section_padding_bottom != '' ) {
634
+ padding-bottom : $menu_additional_section_padding_bottom;
635
  }
636
 
637
  @if( $menu_additional_section_padding_right != '' ) {
638
+ padding-right : $menu_additional_section_padding_right;
639
  }
640
+
641
  @if( $menu_additional_content_color != '' ) {
642
  color: $menu_additional_content_color;
643
  }
649
  @if( $menu_additional_content_font_size != '' ) {
650
  font-size: ($menu_additional_content_font_size + $menu_additional_content_font_size_unit) ;
651
  }
652
+
653
  }
654
  }
v4.0.0/inc/classes/class-control-manager.php CHANGED
@@ -2,10 +2,10 @@
2
  /**
3
  * Control_Manager class.
4
  * This class prepare the input control and it's markup.
5
- *
6
  * @version 4.0.0
7
  * @author Expresstech System
8
- *
9
  * @package responsive-menu-pro
10
  */
11
 
@@ -36,7 +36,7 @@ class Control_Manager {
36
  * To setup action/filter.
37
  *
38
  * @version 4.0.0
39
- *
40
  * @return void
41
  */
42
  protected function setup_hooks() {
@@ -45,11 +45,11 @@ class Control_Manager {
45
 
46
  /**
47
  * Add hidden field input control.
48
- *
49
  * @version 4.0.0
50
- *
51
  * @param array List of attribute
52
- *
53
  * @return HTML|string
54
  */
55
  public function add_hidden_control( $param ) {
@@ -60,10 +60,10 @@ class Control_Manager {
60
 
61
  /**
62
  * This function prepare the single text input control.
63
- *
64
  * @version 4.0.0
65
  * @param array $param List of attributes for a input control
66
- *
67
  * @return HTML
68
  */
69
  public function add_text_input_control( $param ) {
@@ -74,7 +74,7 @@ class Control_Manager {
74
 
75
  /**
76
  * Filters the text input control attributes before create.
77
- *
78
  * @version 4.0.0
79
  * @param array $param List of attribute.
80
  */
@@ -106,7 +106,7 @@ class Control_Manager {
106
 
107
  // Check label is exist.
108
  if ( ! empty( $param['label'] ) ) {
109
- $html .= sprintf(
110
  '<div class="rmp-input-control-label">
111
  <span> %s </span>
112
  <span> %s </span>
@@ -168,28 +168,28 @@ class Control_Manager {
168
 
169
  /**
170
  * Filters the text input attributes/contents after prepared.
171
- *
172
  * @version 4.0.0
173
- *
174
  * @param HTML|string Input control contents.
175
  * @param array $param List of attribute.
176
- */
177
  $html = apply_filters( 'rmp_text_control_html', $html, $param );
178
 
179
  // Check if echo parameter is empty or false.
180
  if ( empty( $param['echo'] ) ) {
181
  return $html;
182
- }
183
 
184
  echo $html;
185
  }
186
-
187
  /**
188
  * This function prepare the group text input control.
189
- *
190
  * @version 4.0.0
191
  * @param array $param List of attributes for a input control
192
- *
193
  * @return HTML
194
  */
195
  public function add_group_text_control( $param ) {
@@ -200,7 +200,7 @@ class Control_Manager {
200
 
201
  /**
202
  * Filters the text group input control attributes before create.
203
- *
204
  * @version 4.0.0
205
  * @param array $param List of attribute.
206
  */
@@ -285,19 +285,19 @@ class Control_Manager {
285
 
286
  /**
287
  * Filters the text input attributes/contents after prepared.
288
- *
289
  * @version 4.0.0
290
- *
291
  * @param HTML|string Input control contents.
292
  * @param array $param List of attribute.
293
- */
294
  $html = apply_filters( 'rmp_text_control_html', $html, $param );
295
 
296
 
297
  // Check if echo parameter is empty or false.
298
  if ( empty( $param['echo'] ) ) {
299
  return $html;
300
- }
301
 
302
  echo $html;
303
 
@@ -305,10 +305,10 @@ class Control_Manager {
305
 
306
  /**
307
  * This function prepare input unit options.
308
- *
309
  * @version 4.0.0
310
  * @param array $param List of attributes for a input control
311
- *
312
  * @return HTML
313
  */
314
  protected function get_input_control_unit( $param ) {
@@ -316,7 +316,7 @@ class Control_Manager {
316
  if ( empty( $param['name'] ) ) {
317
  return;
318
  }
319
-
320
  $value = '';
321
 
322
  if ( ! empty( $param['value'] ) ) {
@@ -332,14 +332,14 @@ class Control_Manager {
332
 
333
  /**
334
  * Filters the input units.
335
- *
336
  * @param array $unit_options List of units.
337
  */
338
  $unit_options = apply_filters( 'rmp_input_units', $unit_options );
339
 
340
  $options = '';
341
  foreach( $unit_options as $unit ) {
342
-
343
  $is_selected = '';
344
  if ( $value === $unit ) {
345
  $is_selected = 'selected';
@@ -374,10 +374,10 @@ class Control_Manager {
374
 
375
  /**
376
  * This function prepare the color control.
377
- *
378
  * @version 4.0.0
379
  * @param array $param List of attributes for a input control
380
- *
381
  * @return HTML
382
  */
383
  public function add_color_control( $param ) {
@@ -388,10 +388,10 @@ class Control_Manager {
388
 
389
  /**
390
  * Filters the color input control attribute.
391
- *
392
  * @version 4.0.0
393
  * @param array $param List of attribute.
394
- */
395
  $param = apply_filters( 'rmp_before_add_color_control', $param );
396
 
397
  $group_classes = '';
@@ -434,33 +434,33 @@ class Control_Manager {
434
  esc_attr( $class ),
435
  esc_attr( $param['value'] )
436
  );
437
-
438
  $html .= '</div></div>';
439
 
440
-
441
  /**
442
  * Filters the color input control html.
443
- *
444
  * @version 4.0.0
445
  * @param HTML|string Input control contents.
446
  * @param array $param List of attribute.
447
- */
448
  $html = apply_filters( 'rmp_color_control_html', $html, $param );
449
 
450
  // Check if echo parameter is empty or false.
451
  if ( empty( $param['echo'] ) ) {
452
  return $html;
453
- }
454
 
455
  echo $html;
456
  }
457
 
458
  /**
459
  * This function prepare the button input control.
460
- *
461
  * @version 4.0.0
462
  * @param array $param List of attributes for a input control
463
- *
464
  * @return HTML
465
  */
466
  public function add_button_control( $param ) {
@@ -470,10 +470,10 @@ class Control_Manager {
470
 
471
  /**
472
  * Filters the button input control attribute.
473
- *
474
  * @version 4.0.0
475
  * @param array $param List of attribute.
476
- */
477
  $param = apply_filters('rmp_before_add_button_control', $param );
478
 
479
  $group_classes = '';
@@ -496,22 +496,22 @@ class Control_Manager {
496
  esc_attr( $class ),
497
  esc_html( $param['label'] )
498
  );
499
-
500
  $html .= '</div></div>';
501
 
502
  /**
503
  * Filters the button input control html.
504
  * @version 4.0.0
505
- *
506
  * @param HTML|string Input control contents.
507
  * @param array $param List of attribute.
508
- */
509
  $html = apply_filters( 'rmp_button_control_html', $html, $param );
510
 
511
  // Check if echo parameter is empty or false.
512
  if ( empty( $param['echo'] ) ) {
513
  return $html;
514
- }
515
 
516
  echo $html;
517
 
@@ -519,10 +519,10 @@ class Control_Manager {
519
 
520
  /**
521
  * This function prepare the checkbox as switcher input control.
522
- *
523
  * @version 4.0.0
524
  * @param array $param List of attributes for a input control
525
- *
526
  * @return HTML
527
  */
528
  public function add_switcher_control( $param ) {
@@ -533,10 +533,10 @@ class Control_Manager {
533
 
534
  /**
535
  * Filters the switcher input control attributes.
536
- *
537
  * @version 4.0.0
538
  * @param array $param List of attribute.
539
- */
540
  $param = apply_filters('rmp_before_add_switcher_control', $param );
541
 
542
  $group_classes = '';
@@ -566,7 +566,7 @@ class Control_Manager {
566
 
567
  // Check label is exist.
568
  if ( ! empty( $param['label'] ) ) {
569
- $html .= sprintf(
570
  '<div class="rmp-input-control-label">
571
  <span> %s </span>
572
  %s
@@ -612,7 +612,7 @@ class Control_Manager {
612
  * Filters the switcher input control html.
613
  *
614
  * @version 4.0.0
615
- *
616
  * @param HTML|string Input control contents.
617
  * @param array $param List of attribute.
618
  */
@@ -621,17 +621,17 @@ class Control_Manager {
621
  // Check if echo parameter is empty or false.
622
  if ( empty( $param['echo'] ) ) {
623
  return $html;
624
- }
625
 
626
  echo $html;
627
  }
628
 
629
  /**
630
  * This function prepare the select/dropdown input control.
631
- *
632
  * @version 4.0.0
633
  * @param array $param List of attributes for a input control
634
- *
635
  * @return HTML
636
  */
637
  public function add_select_control( $param ) {
@@ -642,7 +642,7 @@ class Control_Manager {
642
 
643
  /**
644
  * Filters the select input control attributes.
645
- *
646
  * @version 4.0.0
647
  * @param array $param List of attribute.
648
  */
@@ -675,7 +675,7 @@ class Control_Manager {
675
 
676
  // Check label is exist.
677
  if ( ! empty( $param['label'] ) ) {
678
- $html .= sprintf(
679
  '<div class="rmp-input-control-label">
680
  <span> %s </span>
681
  <span> %s </span>
@@ -688,7 +688,7 @@ class Control_Manager {
688
  }
689
 
690
  $html .= '<div class="rmp-input-control">';
691
-
692
  // Check multi device options is enabled.
693
  $has_multi_device = '';
694
  if ( ! empty( $param['multi_device']) ) {
@@ -744,14 +744,14 @@ class Control_Manager {
744
  esc_attr( $is_multiple_value_allow ),
745
  $options
746
  );
747
-
748
  $html .= '</div></div>';
749
 
750
  /**
751
  * Filters the select input control html.
752
  *
753
  * @version 4.0.0
754
- *
755
  * @param HTML|string Input control contents.
756
  * @param array $param List of attribute.
757
  */
@@ -760,17 +760,17 @@ class Control_Manager {
760
  // Check if echo parameter is empty or false.
761
  if ( empty( $param['echo'] ) ) {
762
  return $html;
763
- }
764
 
765
  echo $html;
766
  }
767
 
768
  /**
769
  * This function prepare the tooltip.
770
- *
771
  * @version 4.0.0
772
  * @param array $param List of attributes for a input control
773
- *
774
  * @return HTML
775
  */
776
  public function get_tool_tip( $param ) {
@@ -784,7 +784,7 @@ class Control_Manager {
784
  <span class="rmp-tooltip-content"> %s </span>
785
  </div>',
786
  wp_kses(
787
- $param['text'],
788
  array(
789
  'a' => array(
790
  'href' => array(),
@@ -795,12 +795,55 @@ class Control_Manager {
795
  );
796
  }
797
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
798
  /**
799
  * This function prepare the icon picker control.
800
- *
801
  * @version 4.0.0
802
  * @param array $param List of attributes for a input control
803
- *
804
  * @return HTML
805
  */
806
  public function add_icon_picker_control( $param ) {
@@ -836,7 +879,7 @@ class Control_Manager {
836
 
837
  // Check label is exist.
838
  if ( ! empty( $param['label'] ) ) {
839
- $html .= sprintf(
840
  '<div class="rmp-input-control-label">
841
  <span> %s </span>
842
  <span> %s </span>
@@ -904,7 +947,7 @@ class Control_Manager {
904
  * Filters the icon picker control html.
905
  *
906
  * @version 4.0.0
907
- *
908
  * @param HTML|string Input control contents.
909
  * @param array $param List of attribute.
910
  */
@@ -913,17 +956,17 @@ class Control_Manager {
913
  // Check if echo parameter is empty or false.
914
  if ( empty( $param['echo'] ) ) {
915
  return $html;
916
- }
917
 
918
  echo $html;
919
  }
920
 
921
  /**
922
  * This function prepare the image input control.
923
- *
924
  * @version 4.0.0
925
  * @param array $param List of attributes for a input control
926
- *
927
  * @return HTML
928
  */
929
  public function add_image_control( $param ) {
@@ -952,7 +995,7 @@ class Control_Manager {
952
  }
953
 
954
  $html .= '<div class="rmp-input-control rmp-image-picker-container">';
955
-
956
  // Check multi device option is enabled.
957
  $has_multi_device = '';
958
  if ( ! empty( $param['multi_device']) ) {
@@ -995,16 +1038,16 @@ class Control_Manager {
995
  esc_attr( $param['picker_id'] ),
996
  $image_style,
997
  file_get_contents( RMP_PLUGIN_PATH_V4 .'/assets/admin/icons/svg/image-placeholder.svg' ),
998
- $trash_icon
999
  );
1000
-
1001
  $html .= '</div></div>';
1002
 
1003
  /**
1004
  * Filters the icon picker control html.
1005
  *
1006
  * @version 4.0.0
1007
- *
1008
  * @param HTML|string Input control contents.
1009
  * @param array $param List of attribute.
1010
  */
@@ -1013,17 +1056,17 @@ class Control_Manager {
1013
  // Check if echo parameter is empty or false.
1014
  if ( empty( $param['echo'] ) ) {
1015
  return $html;
1016
- }
1017
 
1018
  echo $html;
1019
  }
1020
 
1021
  /**
1022
  * This function prepare the alignment control.
1023
- *
1024
  * @version 4.0.0
1025
  * @param array $param List of attributes for a input control
1026
- *
1027
  * @return HTML
1028
  */
1029
  public function add_text_alignment_control( $param ) {
@@ -1101,22 +1144,22 @@ class Control_Manager {
1101
 
1102
  $html .= sprintf( '<div class="align-icons-group"> %s </div>', $options );
1103
 
1104
- $html .= '</div></div>';
1105
 
1106
  /**
1107
  * Filters the icon picker control html.
1108
  *
1109
  * @version 4.0.0
1110
- *
1111
  * @param HTML|string Input control contents.
1112
  * @param array $param List of attribute.
1113
  */
1114
  $html = apply_filters( 'rmp_add_text_alignment_control_html', $html, $param );
1115
-
1116
  // Check if echo parameter is empty or false.
1117
  if ( empty( $param['echo'] ) ) {
1118
  return $html;
1119
- }
1120
 
1121
  echo $html;
1122
  }
@@ -1135,7 +1178,7 @@ class Control_Manager {
1135
 
1136
  $mobile = sprintf(
1137
  '<div class="device-icon">
1138
- <input type="hidden" name="menu[use_mobile_menu]" value="on"/>
1139
  <input disabled checked class="rmp-menu-display-device checkbox mobile" type="checkbox"/>
1140
  <label for="rmp-menu-display-device-mobile" title="mobile" >
1141
  <span class="corner-icon">
@@ -1144,7 +1187,7 @@ class Control_Manager {
1144
  <span class="device">
1145
  <svg width="15" height="20" viewBox="0 0 15 20" fill="none" xmlns="http://www.w3.org/2000/svg">
1146
  <path d="M7.5 5.625C7.5 5.625 7.49251 5.625 7.47754 5.625C7.28288 5.625 7.10319 5.57259 6.93848 5.46777C6.78874 5.34798 6.68392 5.20573 6.62402 5.04102C6.59408 4.98112 6.57161 4.92122 6.55664 4.86133C6.54167 4.80143 6.53418 4.74154 6.53418 4.68164C6.53418 4.68164 6.53418 4.67415 6.53418 4.65918C6.53418 4.62923 6.53418 4.59928 6.53418 4.56934C6.54915 4.53939 6.55664 4.50195 6.55664 4.45703V4.47949C6.57161 4.44954 6.5791 4.4196 6.5791 4.38965C6.59408 4.3597 6.60905 4.32975 6.62402 4.2998C6.639 4.26986 6.64648 4.23991 6.64648 4.20996C6.66146 4.18001 6.68392 4.15007 6.71387 4.12012C6.72884 4.10514 6.74382 4.08268 6.75879 4.05273C6.77376 4.02279 6.79622 4.00033 6.82617 3.98535C6.90104 3.89551 6.99837 3.82812 7.11816 3.7832C7.23796 3.73828 7.36523 3.71582 7.5 3.71582C7.52995 3.71582 7.5599 3.71582 7.58984 3.71582C7.61979 3.71582 7.64974 3.72331 7.67969 3.73828C7.70964 3.73828 7.73958 3.74577 7.76953 3.76074C7.81445 3.76074 7.8444 3.76823 7.85938 3.7832C7.88932 3.79818 7.91927 3.81315 7.94922 3.82812C7.97917 3.8431 8.00911 3.85807 8.03906 3.87305C8.06901 3.88802 8.09147 3.91048 8.10645 3.94043C8.13639 3.9554 8.15885 3.97038 8.17383 3.98535C8.20378 4.00033 8.22624 4.02279 8.24121 4.05273C8.25618 4.08268 8.27116 4.10514 8.28613 4.12012C8.31608 4.15007 8.33105 4.18001 8.33105 4.20996C8.34603 4.23991 8.361 4.26986 8.37598 4.2998C8.39095 4.32975 8.39844 4.3597 8.39844 4.38965C8.41341 4.4196 8.42839 4.44954 8.44336 4.47949C8.44336 4.50944 8.44336 4.53939 8.44336 4.56934C8.45833 4.59928 8.46582 4.62923 8.46582 4.65918C8.46582 4.73405 8.45833 4.80143 8.44336 4.86133C8.42839 4.92122 8.40592 4.98112 8.37598 5.04102C8.361 5.10091 8.33105 5.16081 8.28613 5.2207C8.25618 5.26562 8.21875 5.31055 8.17383 5.35547C8.08398 5.43034 7.97917 5.49772 7.85938 5.55762C7.75456 5.60254 7.63477 5.625 7.5 5.625ZM9.40918 16.1592C9.40918 15.9046 9.31185 15.6875 9.11719 15.5078C8.9375 15.3132 8.72038 15.2158 8.46582 15.2158H6.53418C6.27962 15.2158 6.05501 15.3132 5.86035 15.5078C5.68066 15.6875 5.59082 15.9046 5.59082 16.1592C5.59082 16.4287 5.68066 16.6608 5.86035 16.8555C6.05501 17.0352 6.27962 17.125 6.53418 17.125H8.46582C8.72038 17.125 8.9375 17.0352 9.11719 16.8555C9.31185 16.6608 9.40918 16.4287 9.40918 16.1592ZM14.2158 16.6533V4.1875C14.2158 3.25911 13.8864 2.47298 13.2275 1.8291C12.5687 1.17025 11.7751 0.84082 10.8467 0.84082H4.15332C3.22493 0.84082 2.43132 1.17025 1.77246 1.8291C1.11361 2.47298 0.78418 3.25911 0.78418 4.1875V16.6533C0.78418 17.5667 1.11361 18.3529 1.77246 19.0117C2.43132 19.6706 3.22493 20 4.15332 20H10.8467C11.7751 20 12.5687 19.6706 13.2275 19.0117C13.8864 18.3529 14.2158 17.5667 14.2158 16.6533ZM10.8467 2.75C11.251 2.75 11.5879 2.89225 11.8574 3.17676C12.1419 3.46126 12.2842 3.79818 12.2842 4.1875V16.6533C12.2842 17.0426 12.1419 17.3796 11.8574 17.6641C11.5879 17.9486 11.251 18.0908 10.8467 18.0908H4.15332C3.74902 18.0908 3.40462 17.9486 3.12012 17.6641C2.85059 17.3796 2.71582 17.0426 2.71582 16.6533V4.1875C2.71582 3.79818 2.85059 3.46126 3.12012 3.17676C3.40462 2.89225 3.74902 2.75 4.15332 2.75H10.8467Z" fill="#56606D"/>
1147
- </svg>
1148
  </span>
1149
  </label>
1150
  <span class="rmp-input-control-label device-title"> %s </span>
@@ -1154,8 +1197,8 @@ class Control_Manager {
1154
 
1155
  $tablet = sprintf(
1156
  '<div class="device-icon">
1157
- <input type="hidden" name="menu[use_tablet_menu]" value="on"/>
1158
- <input type="hidden" name="menu[use_tablet_menu]" value="on"/>
1159
  <input disabled checked class="rmp-menu-display-device checkbox tablet" type="checkbox"/>
1160
  <label for="rmp-menu-display-device-tablet" title="tablet" >
1161
  <span class="corner-icon">
@@ -1175,7 +1218,7 @@ class Control_Manager {
1175
  $desktop = sprintf(
1176
  '<div class="device-icon">
1177
  <input type="hidden" name="menu[use_desktop_menu]" value="off"/>
1178
- <input disabled class="rmp-menu-display-device checkbox desktop" type="checkbox" />
1179
  <label for="rmp-menu-display-device-desktop" title="desktop" >
1180
  <span class="corner-icon">
1181
  <i class="fas fa-check-circle" aria-hidden="true"></i>
@@ -1196,7 +1239,7 @@ class Control_Manager {
1196
  return sprintf(
1197
  '<div class="rmp-input-control-wrapper full-size">
1198
  <label class="rmp-input-control-label">
1199
- %s
1200
  <a target="_blank" class="upgrade-tooltip" href="https://responsive.menu/pricing?utm_source=free-plugin&utm_medium=option&utm_campaign=hide_on_mobile" > PRO </a>
1201
  </label>
1202
  <div class="rmp-input-control">
@@ -1210,9 +1253,9 @@ class Control_Manager {
1210
 
1211
  /**
1212
  * Function to return the device options markup.
1213
- *
1214
  * @version 4.0.0
1215
- *
1216
  * @return HTML
1217
  */
1218
  protected function get_device_options() {
@@ -1248,7 +1291,7 @@ class Control_Manager {
1248
  $tool_tip = $this->get_tool_tip( $param['tool_tip'] );
1249
  }
1250
 
1251
- return sprintf (
1252
  '<div class="rmp-accordion-sub-heading"> %s %s</div>',
1253
  esc_html( $param['text'] ),
1254
  $tool_tip
@@ -1268,4 +1311,4 @@ class Control_Manager {
1268
  );
1269
  }
1270
 
1271
- }
2
  /**
3
  * Control_Manager class.
4
  * This class prepare the input control and it's markup.
5
+ *
6
  * @version 4.0.0
7
  * @author Expresstech System
8
+ *
9
  * @package responsive-menu-pro
10
  */
11
 
36
  * To setup action/filter.
37
  *
38
  * @version 4.0.0
39
+ *
40
  * @return void
41
  */
42
  protected function setup_hooks() {
45
 
46
  /**
47
  * Add hidden field input control.
48
+ *
49
  * @version 4.0.0
50
+ *
51
  * @param array List of attribute
52
+ *
53
  * @return HTML|string
54
  */
55
  public function add_hidden_control( $param ) {
60
 
61
  /**
62
  * This function prepare the single text input control.
63
+ *
64
  * @version 4.0.0
65
  * @param array $param List of attributes for a input control
66
+ *
67
  * @return HTML
68
  */
69
  public function add_text_input_control( $param ) {
74
 
75
  /**
76
  * Filters the text input control attributes before create.
77
+ *
78
  * @version 4.0.0
79
  * @param array $param List of attribute.
80
  */
106
 
107
  // Check label is exist.
108
  if ( ! empty( $param['label'] ) ) {
109
+ $html .= sprintf(
110
  '<div class="rmp-input-control-label">
111
  <span> %s </span>
112
  <span> %s </span>
168
 
169
  /**
170
  * Filters the text input attributes/contents after prepared.
171
+ *
172
  * @version 4.0.0
173
+ *
174
  * @param HTML|string Input control contents.
175
  * @param array $param List of attribute.
176
+ */
177
  $html = apply_filters( 'rmp_text_control_html', $html, $param );
178
 
179
  // Check if echo parameter is empty or false.
180
  if ( empty( $param['echo'] ) ) {
181
  return $html;
182
+ }
183
 
184
  echo $html;
185
  }
186
+
187
  /**
188
  * This function prepare the group text input control.
189
+ *
190
  * @version 4.0.0
191
  * @param array $param List of attributes for a input control
192
+ *
193
  * @return HTML
194
  */
195
  public function add_group_text_control( $param ) {
200
 
201
  /**
202
  * Filters the text group input control attributes before create.
203
+ *
204
  * @version 4.0.0
205
  * @param array $param List of attribute.
206
  */
285
 
286
  /**
287
  * Filters the text input attributes/contents after prepared.
288
+ *
289
  * @version 4.0.0
290
+ *
291
  * @param HTML|string Input control contents.
292
  * @param array $param List of attribute.
293
+ */
294
  $html = apply_filters( 'rmp_text_control_html', $html, $param );
295
 
296
 
297
  // Check if echo parameter is empty or false.
298
  if ( empty( $param['echo'] ) ) {
299
  return $html;
300
+ }
301
 
302
  echo $html;
303
 
305
 
306
  /**
307
  * This function prepare input unit options.
308
+ *
309
  * @version 4.0.0
310
  * @param array $param List of attributes for a input control
311
+ *
312
  * @return HTML
313
  */
314
  protected function get_input_control_unit( $param ) {
316
  if ( empty( $param['name'] ) ) {
317
  return;
318
  }
319
+
320
  $value = '';
321
 
322
  if ( ! empty( $param['value'] ) ) {
332
 
333
  /**
334
  * Filters the input units.
335
+ *
336
  * @param array $unit_options List of units.
337
  */
338
  $unit_options = apply_filters( 'rmp_input_units', $unit_options );
339
 
340
  $options = '';
341
  foreach( $unit_options as $unit ) {
342
+
343
  $is_selected = '';
344
  if ( $value === $unit ) {
345
  $is_selected = 'selected';
374
 
375
  /**
376
  * This function prepare the color control.
377
+ *
378
  * @version 4.0.0
379
  * @param array $param List of attributes for a input control
380
+ *
381
  * @return HTML
382
  */
383
  public function add_color_control( $param ) {
388
 
389
  /**
390
  * Filters the color input control attribute.
391
+ *
392
  * @version 4.0.0
393
  * @param array $param List of attribute.
394
+ */
395
  $param = apply_filters( 'rmp_before_add_color_control', $param );
396
 
397
  $group_classes = '';
434
  esc_attr( $class ),
435
  esc_attr( $param['value'] )
436
  );
437
+
438
  $html .= '</div></div>';
439
 
440
+
441
  /**
442
  * Filters the color input control html.
443
+ *
444
  * @version 4.0.0
445
  * @param HTML|string Input control contents.
446
  * @param array $param List of attribute.
447
+ */
448
  $html = apply_filters( 'rmp_color_control_html', $html, $param );
449
 
450
  // Check if echo parameter is empty or false.
451
  if ( empty( $param['echo'] ) ) {
452
  return $html;
453
+ }
454
 
455
  echo $html;
456
  }
457
 
458
  /**
459
  * This function prepare the button input control.
460
+ *
461
  * @version 4.0.0
462
  * @param array $param List of attributes for a input control
463
+ *
464
  * @return HTML
465
  */
466
  public function add_button_control( $param ) {
470
 
471
  /**
472
  * Filters the button input control attribute.
473
+ *
474
  * @version 4.0.0
475
  * @param array $param List of attribute.
476
+ */
477
  $param = apply_filters('rmp_before_add_button_control', $param );
478
 
479
  $group_classes = '';
496
  esc_attr( $class ),
497
  esc_html( $param['label'] )
498
  );
499
+
500
  $html .= '</div></div>';
501
 
502
  /**
503
  * Filters the button input control html.
504
  * @version 4.0.0
505
+ *
506
  * @param HTML|string Input control contents.
507
  * @param array $param List of attribute.
508
+ */
509
  $html = apply_filters( 'rmp_button_control_html', $html, $param );
510
 
511
  // Check if echo parameter is empty or false.
512
  if ( empty( $param['echo'] ) ) {
513
  return $html;
514
+ }
515
 
516
  echo $html;
517
 
519
 
520
  /**
521
  * This function prepare the checkbox as switcher input control.
522
+ *
523
  * @version 4.0.0
524
  * @param array $param List of attributes for a input control
525
+ *
526
  * @return HTML
527
  */
528
  public function add_switcher_control( $param ) {
533
 
534
  /**
535
  * Filters the switcher input control attributes.
536
+ *
537
  * @version 4.0.0
538
  * @param array $param List of attribute.
539
+ */
540
  $param = apply_filters('rmp_before_add_switcher_control', $param );
541
 
542
  $group_classes = '';
566
 
567
  // Check label is exist.
568
  if ( ! empty( $param['label'] ) ) {
569
+ $html .= sprintf(
570
  '<div class="rmp-input-control-label">
571
  <span> %s </span>
572
  %s
612
  * Filters the switcher input control html.
613
  *
614
  * @version 4.0.0
615
+ *
616
  * @param HTML|string Input control contents.
617
  * @param array $param List of attribute.
618
  */
621
  // Check if echo parameter is empty or false.
622
  if ( empty( $param['echo'] ) ) {
623
  return $html;
624
+ }
625
 
626
  echo $html;
627
  }
628
 
629
  /**
630
  * This function prepare the select/dropdown input control.
631
+ *
632
  * @version 4.0.0
633
  * @param array $param List of attributes for a input control
634
+ *
635
  * @return HTML
636
  */
637
  public function add_select_control( $param ) {
642
 
643
  /**
644
  * Filters the select input control attributes.
645
+ *
646
  * @version 4.0.0
647
  * @param array $param List of attribute.
648
  */
675
 
676
  // Check label is exist.
677
  if ( ! empty( $param['label'] ) ) {
678
+ $html .= sprintf(
679
  '<div class="rmp-input-control-label">
680
  <span> %s </span>
681
  <span> %s </span>
688
  }
689
 
690
  $html .= '<div class="rmp-input-control">';
691
+
692
  // Check multi device options is enabled.
693
  $has_multi_device = '';
694
  if ( ! empty( $param['multi_device']) ) {
744
  esc_attr( $is_multiple_value_allow ),
745
  $options
746
  );
747
+
748
  $html .= '</div></div>';
749
 
750
  /**
751
  * Filters the select input control html.
752
  *
753
  * @version 4.0.0
754
+ *
755
  * @param HTML|string Input control contents.
756
  * @param array $param List of attribute.
757
  */
760
  // Check if echo parameter is empty or false.
761
  if ( empty( $param['echo'] ) ) {
762
  return $html;
763
+ }
764
 
765
  echo $html;
766
  }
767
 
768
  /**
769
  * This function prepare the tooltip.
770
+ *
771
  * @version 4.0.0
772
  * @param array $param List of attributes for a input control
773
+ *
774
  * @return HTML
775
  */
776
  public function get_tool_tip( $param ) {
784
  <span class="rmp-tooltip-content"> %s </span>
785
  </div>',
786
  wp_kses(
787
+ $param['text'],
788
  array(
789
  'a' => array(
790
  'href' => array(),
795
  );
796
  }
797
 
798
+ /**
799
+ * This function prepare the shortcut.
800
+ *
801
+ * @version 4.0.0
802
+ * @param array $param List of attributes for a input control
803
+ *
804
+ * @return HTML
805
+ */
806
+ public function add_shortcut_link( $param ) {
807
+ if ( empty( $param) ) {
808
+ return;
809
+ }
810
+
811
+ // Accordion id.
812
+ $accordion_id = '';
813
+ if ( ! empty( $param['accordion_id'] ) ) {
814
+ $accordion_id = $param['accordion_id'];
815
+ }
816
+
817
+ // Sub accordion id.
818
+ $sub_accordion_id = '';
819
+ if ( ! empty( $param['sub_accordion_id'] ) ) {
820
+ $sub_accordion_id = $param['sub_accordion_id'];
821
+ }
822
+
823
+ // Sub tab id.
824
+ $sub_tab_id = '';
825
+ if ( ! empty( $param['sub_tab_id'] ) ) {
826
+ $sub_tab_id = $param['sub_tab_id'];
827
+ }
828
+
829
+ if(!empty ($param['label']) && !empty ($param['target'])){
830
+ $html = sprintf( '<div class="rmp-quick-edit-link rmp-input-control-wrapper" aria-owns="%s" accordion-id="%s" sub-accordion-id="%s" sub-tab-id="%s"><a href="javascript:void(0)">%s <i class="fas fa-share"></i></a></div>',
831
+ esc_attr( $param["target"] ),
832
+ esc_attr( $accordion_id ),
833
+ esc_attr( $sub_accordion_id ),
834
+ esc_attr( $sub_tab_id ),
835
+ esc_attr( $param["label"] )
836
+ );
837
+ }
838
+ echo $html;
839
+ }
840
+
841
  /**
842
  * This function prepare the icon picker control.
843
+ *
844
  * @version 4.0.0
845
  * @param array $param List of attributes for a input control
846
+ *
847
  * @return HTML
848
  */
849
  public function add_icon_picker_control( $param ) {
879
 
880
  // Check label is exist.
881
  if ( ! empty( $param['label'] ) ) {
882
+ $html .= sprintf(
883
  '<div class="rmp-input-control-label">
884
  <span> %s </span>
885
  <span> %s </span>
947
  * Filters the icon picker control html.
948
  *
949
  * @version 4.0.0
950
+ *
951
  * @param HTML|string Input control contents.
952
  * @param array $param List of attribute.
953
  */
956
  // Check if echo parameter is empty or false.
957
  if ( empty( $param['echo'] ) ) {
958
  return $html;
959
+ }
960
 
961
  echo $html;
962
  }
963
 
964
  /**
965
  * This function prepare the image input control.
966
+ *
967
  * @version 4.0.0
968
  * @param array $param List of attributes for a input control
969
+ *
970
  * @return HTML
971
  */
972
  public function add_image_control( $param ) {
995
  }
996
 
997
  $html .= '<div class="rmp-input-control rmp-image-picker-container">';
998
+
999
  // Check multi device option is enabled.
1000
  $has_multi_device = '';
1001
  if ( ! empty( $param['multi_device']) ) {
1038
  esc_attr( $param['picker_id'] ),
1039
  $image_style,
1040
  file_get_contents( RMP_PLUGIN_PATH_V4 .'/assets/admin/icons/svg/image-placeholder.svg' ),
1041
+ $trash_icon
1042
  );
1043
+
1044
  $html .= '</div></div>';
1045
 
1046
  /**
1047
  * Filters the icon picker control html.
1048
  *
1049
  * @version 4.0.0
1050
+ *
1051
  * @param HTML|string Input control contents.
1052
  * @param array $param List of attribute.
1053
  */
1056
  // Check if echo parameter is empty or false.
1057
  if ( empty( $param['echo'] ) ) {
1058
  return $html;
1059
+ }
1060
 
1061
  echo $html;
1062
  }
1063
 
1064
  /**
1065
  * This function prepare the alignment control.
1066
+ *
1067
  * @version 4.0.0
1068
  * @param array $param List of attributes for a input control
1069
+ *
1070
  * @return HTML
1071
  */
1072
  public function add_text_alignment_control( $param ) {
1144
 
1145
  $html .= sprintf( '<div class="align-icons-group"> %s </div>', $options );
1146
 
1147
+ $html .= '</div></div>';
1148
 
1149
  /**
1150
  * Filters the icon picker control html.
1151
  *
1152
  * @version 4.0.0
1153
+ *
1154
  * @param HTML|string Input control contents.
1155
  * @param array $param List of attribute.
1156
  */
1157
  $html = apply_filters( 'rmp_add_text_alignment_control_html', $html, $param );
1158
+
1159
  // Check if echo parameter is empty or false.
1160
  if ( empty( $param['echo'] ) ) {
1161
  return $html;
1162
+ }
1163
 
1164
  echo $html;
1165
  }
1178
 
1179
  $mobile = sprintf(
1180
  '<div class="device-icon">
1181
+ <input type="hidden" name="menu[use_mobile_menu]" value="on"/>
1182
  <input disabled checked class="rmp-menu-display-device checkbox mobile" type="checkbox"/>
1183
  <label for="rmp-menu-display-device-mobile" title="mobile" >
1184
  <span class="corner-icon">
1187
  <span class="device">
1188
  <svg width="15" height="20" viewBox="0 0 15 20" fill="none" xmlns="http://www.w3.org/2000/svg">
1189
  <path d="M7.5 5.625C7.5 5.625 7.49251 5.625 7.47754 5.625C7.28288 5.625 7.10319 5.57259 6.93848 5.46777C6.78874 5.34798 6.68392 5.20573 6.62402 5.04102C6.59408 4.98112 6.57161 4.92122 6.55664 4.86133C6.54167 4.80143 6.53418 4.74154 6.53418 4.68164C6.53418 4.68164 6.53418 4.67415 6.53418 4.65918C6.53418 4.62923 6.53418 4.59928 6.53418 4.56934C6.54915 4.53939 6.55664 4.50195 6.55664 4.45703V4.47949C6.57161 4.44954 6.5791 4.4196 6.5791 4.38965C6.59408 4.3597 6.60905 4.32975 6.62402 4.2998C6.639 4.26986 6.64648 4.23991 6.64648 4.20996C6.66146 4.18001 6.68392 4.15007 6.71387 4.12012C6.72884 4.10514 6.74382 4.08268 6.75879 4.05273C6.77376 4.02279 6.79622 4.00033 6.82617 3.98535C6.90104 3.89551 6.99837 3.82812 7.11816 3.7832C7.23796 3.73828 7.36523 3.71582 7.5 3.71582C7.52995 3.71582 7.5599 3.71582 7.58984 3.71582C7.61979 3.71582 7.64974 3.72331 7.67969 3.73828C7.70964 3.73828 7.73958 3.74577 7.76953 3.76074C7.81445 3.76074 7.8444 3.76823 7.85938 3.7832C7.88932 3.79818 7.91927 3.81315 7.94922 3.82812C7.97917 3.8431 8.00911 3.85807 8.03906 3.87305C8.06901 3.88802 8.09147 3.91048 8.10645 3.94043C8.13639 3.9554 8.15885 3.97038 8.17383 3.98535C8.20378 4.00033 8.22624 4.02279 8.24121 4.05273C8.25618 4.08268 8.27116 4.10514 8.28613 4.12012C8.31608 4.15007 8.33105 4.18001 8.33105 4.20996C8.34603 4.23991 8.361 4.26986 8.37598 4.2998C8.39095 4.32975 8.39844 4.3597 8.39844 4.38965C8.41341 4.4196 8.42839 4.44954 8.44336 4.47949C8.44336 4.50944 8.44336 4.53939 8.44336 4.56934C8.45833 4.59928 8.46582 4.62923 8.46582 4.65918C8.46582 4.73405 8.45833 4.80143 8.44336 4.86133C8.42839 4.92122 8.40592 4.98112 8.37598 5.04102C8.361 5.10091 8.33105 5.16081 8.28613 5.2207C8.25618 5.26562 8.21875 5.31055 8.17383 5.35547C8.08398 5.43034 7.97917 5.49772 7.85938 5.55762C7.75456 5.60254 7.63477 5.625 7.5 5.625ZM9.40918 16.1592C9.40918 15.9046 9.31185 15.6875 9.11719 15.5078C8.9375 15.3132 8.72038 15.2158 8.46582 15.2158H6.53418C6.27962 15.2158 6.05501 15.3132 5.86035 15.5078C5.68066 15.6875 5.59082 15.9046 5.59082 16.1592C5.59082 16.4287 5.68066 16.6608 5.86035 16.8555C6.05501 17.0352 6.27962 17.125 6.53418 17.125H8.46582C8.72038 17.125 8.9375 17.0352 9.11719 16.8555C9.31185 16.6608 9.40918 16.4287 9.40918 16.1592ZM14.2158 16.6533V4.1875C14.2158 3.25911 13.8864 2.47298 13.2275 1.8291C12.5687 1.17025 11.7751 0.84082 10.8467 0.84082H4.15332C3.22493 0.84082 2.43132 1.17025 1.77246 1.8291C1.11361 2.47298 0.78418 3.25911 0.78418 4.1875V16.6533C0.78418 17.5667 1.11361 18.3529 1.77246 19.0117C2.43132 19.6706 3.22493 20 4.15332 20H10.8467C11.7751 20 12.5687 19.6706 13.2275 19.0117C13.8864 18.3529 14.2158 17.5667 14.2158 16.6533ZM10.8467 2.75C11.251 2.75 11.5879 2.89225 11.8574 3.17676C12.1419 3.46126 12.2842 3.79818 12.2842 4.1875V16.6533C12.2842 17.0426 12.1419 17.3796 11.8574 17.6641C11.5879 17.9486 11.251 18.0908 10.8467 18.0908H4.15332C3.74902 18.0908 3.40462 17.9486 3.12012 17.6641C2.85059 17.3796 2.71582 17.0426 2.71582 16.6533V4.1875C2.71582 3.79818 2.85059 3.46126 3.12012 3.17676C3.40462 2.89225 3.74902 2.75 4.15332 2.75H10.8467Z" fill="#56606D"/>
1190
+ </svg>
1191
  </span>
1192
  </label>
1193
  <span class="rmp-input-control-label device-title"> %s </span>
1197
 
1198
  $tablet = sprintf(
1199
  '<div class="device-icon">
1200
+ <input type="hidden" name="menu[use_tablet_menu]" value="on"/>
1201
+ <input type="hidden" name="menu[use_tablet_menu]" value="on"/>
1202
  <input disabled checked class="rmp-menu-display-device checkbox tablet" type="checkbox"/>
1203
  <label for="rmp-menu-display-device-tablet" title="tablet" >
1204
  <span class="corner-icon">
1218
  $desktop = sprintf(
1219
  '<div class="device-icon">
1220
  <input type="hidden" name="menu[use_desktop_menu]" value="off"/>
1221
+ <input disabled class="rmp-menu-display-device checkbox desktop" type="checkbox" />
1222
  <label for="rmp-menu-display-device-desktop" title="desktop" >
1223
  <span class="corner-icon">
1224
  <i class="fas fa-check-circle" aria-hidden="true"></i>
1239
  return sprintf(
1240
  '<div class="rmp-input-control-wrapper full-size">
1241
  <label class="rmp-input-control-label">
1242
+ %s
1243
  <a target="_blank" class="upgrade-tooltip" href="https://responsive.menu/pricing?utm_source=free-plugin&utm_medium=option&utm_campaign=hide_on_mobile" > PRO </a>
1244
  </label>
1245
  <div class="rmp-input-control">
1253
 
1254
  /**
1255
  * Function to return the device options markup.
1256
+ *
1257
  * @version 4.0.0
1258
+ *
1259
  * @return HTML
1260
  */
1261
  protected function get_device_options() {
1291
  $tool_tip = $this->get_tool_tip( $param['tool_tip'] );
1292
  }
1293
 
1294
+ return sprintf (
1295
  '<div class="rmp-accordion-sub-heading"> %s %s</div>',
1296
  esc_html( $param['text'] ),
1297
  $tool_tip
1311
  );
1312
  }
1313
 
1314
+ }
v4.0.0/inc/classes/class-editor.php CHANGED
@@ -2,10 +2,10 @@
2
  /**
3
  * Editor class.
4
  * This class is responsible for editor UI.
5
- *
6
  * @version 4.0.0
7
  * @author Expresstech System
8
- *
9
  * @package responsive-menu-pro
10
  */
11
 
@@ -36,7 +36,7 @@ class Editor {
36
  * To setup action/filter.
37
  *
38
  * @version 4.0.0
39
- *
40
  * @return void
41
  */
42
  protected function setup_hooks() {
@@ -46,9 +46,9 @@ class Editor {
46
  /**
47
  * Function to load the menu editor page when click on particular menu
48
  * customize option from menu list.
49
- *
50
  * @version 4.0.0
51
- *
52
  * @return void
53
  */
54
  public function render_menu_editor_page() {
@@ -73,24 +73,24 @@ class Editor {
73
  ob_start();
74
  ?>
75
  <div id="rmp-editor-header" class="rmp-editor-header">
76
-
77
  <!-- Plugin logo on editor header-->
78
  <div class="rmp-editor-header-logo">
79
  <span class="dashicons dashicons-arrow-left-alt rmp-editor-header-back"></span>
80
  <img alt="logo" src="<?php echo esc_url( RMP_PLUGIN_URL_V4 .'/assets/images/rmp-logo.png' ); ?>" />
81
  </div>
82
-
83
  <!-- Menu title on editor header-->
84
  <div class="rmp-editor-header-title"><?php echo esc_html( $menu_name ); ?></div>
85
-
86
- <!-- Exit from editor button in header-->
87
- <a class="rmp-editor-header-close" href="<?php echo esc_url( admin_url().'/edit.php?post_type=rmp_menu' ); ?>">
88
- <span class="fas fa-times"></span>
89
- <span class="screen-reader-text">
90
- <?php echo esc_html__('Close the editor and go back to the previous page', 'responsive-menu-pro' ); ?>
91
- </span>
92
- </a>
93
-
 
 
94
  </div>
95
  <?php
96
 
@@ -99,7 +99,7 @@ class Editor {
99
  /**
100
  * Filters the editor header.
101
  *
102
- * @param string|HTML $html
103
  */
104
  $html = apply_filters( 'rmp_editor_header_html', $html );
105
 
@@ -128,15 +128,15 @@ class Editor {
128
 
129
  <div class="rmp-footer-sub-menu-wrapper" id="rmp-footer-theme-options">
130
  <ul class="rmp-footer-sub-menu">
131
- <li>
132
- <a id="rmp-theme-save-button" class="rmp-theme-save-button">
133
- <span class="fas fa-save"></span>
134
  <span> <?php esc_html_e( 'Save as theme', 'responsive-menu-pro' ); ?></span>
135
  </a>
136
  </li>
137
 
138
- <li>
139
- <a id="rmp-theme-change-button" class="rmp-theme-change-button" >
140
  <span class="fas fa-folder-open "></span>
141
  <span><?php esc_html_e( 'Change theme', 'responsive-menu-pro' ); ?></span>
142
  </a>
@@ -178,7 +178,7 @@ class Editor {
178
  /**
179
  * Filters the editor footer html.
180
  *
181
- * @param string|HTML $html
182
  */
183
  $html = apply_filters( 'rmp_editor_footer_html', $html );
184
 
@@ -187,7 +187,7 @@ class Editor {
187
 
188
  /**
189
  * Function to return the markups for sidebar drawers.
190
- *
191
  * @return HTML|string
192
  */
193
  public function sidebar_drawer() {
@@ -198,4 +198,4 @@ class Editor {
198
  );
199
  }
200
 
201
- }
2
  /**
3
  * Editor class.
4
  * This class is responsible for editor UI.
5
+ *
6
  * @version 4.0.0
7
  * @author Expresstech System
8
+ *
9
  * @package responsive-menu-pro
10
  */
11
 
36
  * To setup action/filter.
37
  *
38
  * @version 4.0.0
39
+ *
40
  * @return void
41
  */
42
  protected function setup_hooks() {
46
  /**
47
  * Function to load the menu editor page when click on particular menu
48
  * customize option from menu list.
49
+ *
50
  * @version 4.0.0
51
+ *
52
  * @return void
53
  */
54
  public function render_menu_editor_page() {
73
  ob_start();
74
  ?>
75
  <div id="rmp-editor-header" class="rmp-editor-header">
 
76
  <!-- Plugin logo on editor header-->
77
  <div class="rmp-editor-header-logo">
78
  <span class="dashicons dashicons-arrow-left-alt rmp-editor-header-back"></span>
79
  <img alt="logo" src="<?php echo esc_url( RMP_PLUGIN_URL_V4 .'/assets/images/rmp-logo.png' ); ?>" />
80
  </div>
 
81
  <!-- Menu title on editor header-->
82
  <div class="rmp-editor-header-title"><?php echo esc_html( $menu_name ); ?></div>
83
+ <input class="rmp-search-settings no-updates" type="search" placeholder="Search Settings.." />
84
+ <div class="rmp-search-settings-block">
85
+ <label class="rmp-search-settings-btn"><i class="fa fa-search"></i></label>
86
+ <!-- Exit from editor button in header-->
87
+ <a class="rmp-editor-header-close" href="<?php echo esc_url( admin_url().'/edit.php?post_type=rmp_menu' ); ?>">
88
+ <span class="fas fa-times"></span>
89
+ <span class="screen-reader-text">
90
+ <?php echo esc_html__('Close the editor and go back to the previous page', 'responsive-menu-pro' ); ?>
91
+ </span>
92
+ </a>
93
+ </div>
94
  </div>
95
  <?php
96
 
99
  /**
100
  * Filters the editor header.
101
  *
102
+ * @param string|HTML $html
103
  */
104
  $html = apply_filters( 'rmp_editor_header_html', $html );
105
 
128
 
129
  <div class="rmp-footer-sub-menu-wrapper" id="rmp-footer-theme-options">
130
  <ul class="rmp-footer-sub-menu">
131
+ <li>
132
+ <a id="rmp-theme-save-button" class="rmp-theme-save-button">
133
+ <span class="fas fa-save"></span>
134
  <span> <?php esc_html_e( 'Save as theme', 'responsive-menu-pro' ); ?></span>
135
  </a>
136
  </li>
137
 
138
+ <li>
139
+ <a id="rmp-theme-change-button" class="rmp-theme-change-button" >
140
  <span class="fas fa-folder-open "></span>
141
  <span><?php esc_html_e( 'Change theme', 'responsive-menu-pro' ); ?></span>
142
  </a>
178
  /**
179
  * Filters the editor footer html.
180
  *
181
+ * @param string|HTML $html
182
  */
183
  $html = apply_filters( 'rmp_editor_footer_html', $html );
184
 
187
 
188
  /**
189
  * Function to return the markups for sidebar drawers.
190
+ *
191
  * @return HTML|string
192
  */
193
  public function sidebar_drawer() {
198
  );
199
  }
200
 
201
+ }
v4.0.0/inc/classes/class-rmp-menu.php CHANGED
@@ -48,12 +48,12 @@ if ( ! class_exists( 'RMP_Menu' ) ) :
48
 
49
  /**
50
  * This is menu class constructor function.
51
- *
52
  * @access public
53
  *
54
  */
55
  public function __construct( $menu_id ) {
56
-
57
  $option_manager = Option_Manager::get_instance();
58
  $this->options = $option_manager->get_options( $menu_id );
59
 
@@ -62,15 +62,15 @@ if ( ! class_exists( 'RMP_Menu' ) ) :
62
 
63
  /**
64
  * Prepare mobile menu markup.
65
- *
66
  * @version 4.0.0
67
- *
68
  * @return HTML|string
69
  */
70
  public function mobile_menu() {
71
 
72
  $menu_switcher = $this->menu_trigger();
73
-
74
  $menu_items = '';
75
  if ( ! empty( $this->options['items_order'] ) ) {
76
  $menu_items = $this->options['items_order'];
@@ -93,7 +93,7 @@ if ( ! class_exists( 'RMP_Menu' ) ) :
93
  } else {
94
  $html .= $this->menu_additional_content();
95
  }
96
- }
97
  }
98
 
99
  $side_animation = 'rmp-' . $this->options['animation_type'] . '-' . $this->options['menu_appear_from'];
@@ -256,12 +256,18 @@ if ( ! class_exists( 'RMP_Menu' ) ) :
256
  $toggle_theme_class = apply_filters( 'rmp_menu_toggle_classes', [ 'rmp_menu_trigger', $trigger_click_animation ], $this->menu_id );
257
  $toggle_theme_class = implode( ' ' , $toggle_theme_class );
258
 
 
 
 
 
 
259
  $rmp_menu_trigger = sprintf(
260
- '<button type="button" aria-controls="rmp-container-%s" aria-label="Menu Trigger" id="rmp_menu_trigger-%s" class=" %s ">
261
  %s
262
  </button>',
263
  $this->menu_id,
264
  $this->menu_id,
 
265
  esc_attr( $toggle_theme_class ),
266
  $menu_trigger_content
267
  );
@@ -271,7 +277,7 @@ if ( ! class_exists( 'RMP_Menu' ) ) :
271
 
272
  /**
273
  * Returns menu title.
274
- *
275
  * @return HTML|string
276
  */
277
  public function menu_title() {
@@ -326,7 +332,7 @@ if ( ! class_exists( 'RMP_Menu' ) ) :
326
 
327
  /**
328
  * Return menu search box.
329
- *
330
  * @return HTML|string
331
  */
332
  public function menu_search_box() {
@@ -478,7 +484,7 @@ if ( ! class_exists( 'RMP_Menu' ) ) :
478
 
479
  /**
480
  * Function to get the location of menu.
481
- *
482
  * @return string Returns the menu location.
483
  */
484
  public function get_wp_menu_location() {
48
 
49
  /**
50
  * This is menu class constructor function.
51
+ *
52
  * @access public
53
  *
54
  */
55
  public function __construct( $menu_id ) {
56
+
57
  $option_manager = Option_Manager::get_instance();
58
  $this->options = $option_manager->get_options( $menu_id );
59
 
62
 
63
  /**
64
  * Prepare mobile menu markup.
65
+ *
66
  * @version 4.0.0
67
+ *
68
  * @return HTML|string
69
  */
70
  public function mobile_menu() {
71
 
72
  $menu_switcher = $this->menu_trigger();
73
+
74
  $menu_items = '';
75
  if ( ! empty( $this->options['items_order'] ) ) {
76
  $menu_items = $this->options['items_order'];
93
  } else {
94
  $html .= $this->menu_additional_content();
95
  }
96
+ }
97
  }
98
 
99
  $side_animation = 'rmp-' . $this->options['animation_type'] . '-' . $this->options['menu_appear_from'];
256
  $toggle_theme_class = apply_filters( 'rmp_menu_toggle_classes', [ 'rmp_menu_trigger', $trigger_click_animation ], $this->menu_id );
257
  $toggle_theme_class = implode( ' ' , $toggle_theme_class );
258
 
259
+ $menu_trigger_destination='';
260
+ if ( ! empty( $this->options['hamburger_position_selector'] ) ) {
261
+ $menu_trigger_destination=$this->options['hamburger_position_selector'];
262
+ }
263
+
264
  $rmp_menu_trigger = sprintf(
265
+ '<button type="button" aria-controls="rmp-container-%s" aria-label="Menu Trigger" id="rmp_menu_trigger-%s" destination="%s" class="%s">
266
  %s
267
  </button>',
268
  $this->menu_id,
269
  $this->menu_id,
270
+ $menu_trigger_destination,
271
  esc_attr( $toggle_theme_class ),
272
  $menu_trigger_content
273
  );
277
 
278
  /**
279
  * Returns menu title.
280
+ *
281
  * @return HTML|string
282
  */
283
  public function menu_title() {
332
 
333
  /**
334
  * Return menu search box.
335
+ *
336
  * @return HTML|string
337
  */
338
  public function menu_search_box() {
484
 
485
  /**
486
  * Function to get the location of menu.
487
+ *
488
  * @return string Returns the menu location.
489
  */
490
  public function get_wp_menu_location() {
v4.0.0/inc/classes/class-ui-manager.php CHANGED
@@ -1,11 +1,11 @@
1
  <?php
2
  /**
3
  * This file contain thh UI_Manager class and it's functionalities.
4
- *
5
  * @version 4.0.0
6
- *
7
  * @author Expresstech System
8
- *
9
  * @package responsive-menu-pro
10
  */
11
 
@@ -21,7 +21,7 @@ if ( ! defined( 'ABSPATH' ) ) {
21
  /**
22
  * Class UI_Manager
23
  * This class is responsible for provide the UI.
24
- *
25
  * @version 4.0.0
26
  */
27
  class UI_Manager {
@@ -49,7 +49,7 @@ class UI_Manager {
49
  * To setup action/filter.
50
  *
51
  * @version 4.0.0
52
- *
53
  * @return void
54
  */
55
  protected function setup_hooks() {
@@ -82,7 +82,7 @@ class UI_Manager {
82
  $title_class = $accordion_attr['item_header']['title_class'];
83
  }
84
 
85
- $title_span_class = '';
86
  if ( ! empty( $accordion_attr['item_header']['title_span_class'] ) ) {
87
  $title_span_class = $accordion_attr['item_header']['title_span_class'];
88
  }
@@ -176,7 +176,7 @@ class UI_Manager {
176
 
177
  $html = sprintf('<li class="rmp-tab-item %s" aria-owns="%s">', esc_attr( $item_class ), esc_attr( $aria_owns ) );
178
 
179
-
180
  //Item header.
181
  if ( ! empty( $tab_attr['item_header'] ) ) {
182
 
1
  <?php
2
  /**
3
  * This file contain thh UI_Manager class and it's functionalities.
4
+ *
5
  * @version 4.0.0
6
+ *
7
  * @author Expresstech System
8
+ *
9
  * @package responsive-menu-pro
10
  */
11
 
21
  /**
22
  * Class UI_Manager
23
  * This class is responsible for provide the UI.
24
+ *
25
  * @version 4.0.0
26
  */
27
  class UI_Manager {
49
  * To setup action/filter.
50
  *
51
  * @version 4.0.0
52
+ *
53
  * @return void
54
  */
55
  protected function setup_hooks() {
82
  $title_class = $accordion_attr['item_header']['title_class'];
83
  }
84
 
85
+ $title_span_class = 'accordion-item-title ';
86
  if ( ! empty( $accordion_attr['item_header']['title_span_class'] ) ) {
87
  $title_span_class = $accordion_attr['item_header']['title_span_class'];
88
  }
176
 
177
  $html = sprintf('<li class="rmp-tab-item %s" aria-owns="%s">', esc_attr( $item_class ), esc_attr( $aria_owns ) );
178
 
179
+
180
  //Item header.
181
  if ( ! empty( $tab_attr['item_header'] ) ) {
182
 
v4.0.0/inc/helpers/default-options.php CHANGED
@@ -3,7 +3,7 @@
3
  * This file contain the list of functions which have default options.
4
  *
5
  * @version 4.0.0
6
- *
7
  * @package responsive-menu-pro
8
  */
9
 
@@ -35,7 +35,7 @@ function rmp_global_default_setting_options() {
35
  /**
36
  * Function return the multi device options.
37
  * Here, Add the option which you want to make the multi device.
38
- *
39
  * @version 4.0.0
40
  *
41
  * @return array List of options.
@@ -87,13 +87,13 @@ function rmp_animation_delay_options() {
87
 
88
  /**
89
  * Function to return the list of shortcut keys for menu open and close.
90
- *
91
  * @version 4.0.0
92
- *
93
  * @return array
94
  */
95
  function rmp_get_menu_open_close_keys() {
96
- return [
97
  27 => 'Esc',
98
  13 => 'Enter',
99
  32 => 'Space',
@@ -106,7 +106,7 @@ function rmp_get_menu_open_close_keys() {
106
 
107
  function rmp_font_weight_options() {
108
 
109
- $unit_options = array(
110
  '100' => '100',
111
  '200' => '200',
112
  '300' => '300',
@@ -121,7 +121,7 @@ function rmp_font_weight_options() {
121
  'bolder' => 'Bolder',
122
  'lighter' => 'Lighter',
123
  'initial' => 'Initial',
124
- 'inherit' => 'Inherit',
125
  );
126
 
127
  $unit_options = apply_filters('rmp_font_weight_options', $unit_options );
@@ -455,7 +455,7 @@ function rmp_all_dash_icons() {
455
  * @return array - Sorted list of icon classes
456
  */
457
  function rmp_all_glyph_icons() {
458
-
459
 
460
  $glyph = array(
461
  'glyph-2a' => 'glyphicon-asterisk',
@@ -715,7 +715,7 @@ function rmp_all_glyph_icons() {
715
  'glyph-e257' => 'glyphicon-menu-left',
716
  'glyph-e258' => 'glyphicon-menu-right',
717
  'glyph-e259' => 'glyphicon-menu-down',
718
- 'glyph-e260' => 'glyphicon-menu-up',
719
  );
720
 
721
  $glyph = apply_filters( "rmp_glyphicon", $glyph );
@@ -728,7 +728,7 @@ function rmp_all_glyph_icons() {
728
  /**
729
  * Get default options.
730
  * @since 4.0.0
731
- *
732
  * @return array default_options list of option with default value.
733
  */
734
  function rmp_get_default_options() {
@@ -742,10 +742,10 @@ function rmp_get_default_options() {
742
  'submenu_submenu_arrow_height' => '39',
743
  'submenu_submenu_arrow_height_unit' => 'px',
744
  'submenu_arrow_position' => 'right',
745
- 'submenu_sub_arrow_background_colour' => 'rgba(33,33,33,0)',
746
- 'submenu_sub_arrow_background_hover_colour' => 'rgba(63,63,63,0)',
747
- 'submenu_sub_arrow_background_colour_active' => 'rgba(33,33,33,0)',
748
- 'submenu_sub_arrow_background_hover_colour_active' => 'rgba(63,63,63,0)',
749
  'submenu_sub_arrow_border_width' => '',
750
  'submenu_sub_arrow_border_width_unit' => 'px',
751
  'submenu_sub_arrow_border_colour' => '#1d4354',
@@ -757,7 +757,7 @@ function rmp_get_default_options() {
757
  'submenu_sub_arrow_shape_colour_active' => '#fff',
758
  'submenu_sub_arrow_shape_hover_colour_active' => '#fff',
759
  'use_header_bar' => 'off',
760
- 'header_bar_items_order' =>
761
  array (
762
  'logo' => 'off',
763
  'title' => 'on',
@@ -775,7 +775,7 @@ function rmp_get_default_options() {
775
  'header_bar_logo_height_unit' => 'px',
776
  'header_bar_height' => '80',
777
  'header_bar_height_unit' => 'px',
778
- 'header_bar_padding' =>
779
  array (
780
  'top' => '0px',
781
  'right' => '5%',
@@ -806,7 +806,7 @@ function rmp_get_default_options() {
806
  'desktop_menu_side' => 'left',
807
  'desktop_menu_to_hide' => '',
808
  'use_current_theme_location' => 'off',
809
- 'mega_menu' =>
810
  array (
811
  225 => 'off',
812
  227 => 'off',
@@ -829,17 +829,17 @@ function rmp_get_default_options() {
829
  'menu_to_hide' => '',
830
  'submenu_descriptions_on' => 'off',
831
  'custom_walker' => '',
832
- 'menu_background_colour' => 'rgba(0,0,0,0)',
833
  'menu_depth' => '5',
834
  'smooth_scroll_on' => 'off',
835
  'smooth_scroll_speed' => '500',
836
- 'menu_font_icons' =>
837
  array (
838
- 'id' =>
839
  array (
840
  0 => '225',
841
  ),
842
- 'icon' =>
843
  array (
844
  0 => '',
845
  ),
@@ -861,10 +861,10 @@ function rmp_get_default_options() {
861
  'menu_link_hover_colour' => '#fff',
862
  'menu_current_link_colour' => '#fff',
863
  'menu_current_link_hover_colour' => '#fff',
864
- 'menu_item_background_colour' => 'rgba(33,33,33,0)',
865
- 'menu_item_background_hover_colour' => 'rgba(63,63,63,0)',
866
  'menu_current_item_background_colour' => '#6fda44',
867
- 'menu_current_item_background_hover_colour' => 'rgba(63,63,63,0)',
868
  'menu_border_width' => '',
869
  'menu_border_width_unit' => 'px',
870
  'menu_item_border_colour' => '#1d4354',
@@ -884,10 +884,10 @@ function rmp_get_default_options() {
884
  'menu_depth_3_unit' => '%',
885
  'menu_depth_4' => '25',
886
  'menu_depth_4_unit' => '%',
887
- 'submenu_item_background_colour' => 'rgba(33,33,33,0)',
888
- 'submenu_item_background_hover_colour' => 'rgba(63,63,63,0)',
889
- 'submenu_current_item_background_colour' => 'rgba(33,33,33,0)',
890
- 'submenu_current_item_background_hover_colour' => 'rgba(63,63,63,0)',
891
  'submenu_border_width' => '',
892
  'submenu_border_width_unit' => 'px',
893
  'submenu_item_border_colour' => '#1d4354',
@@ -925,10 +925,10 @@ function rmp_get_default_options() {
925
  'menu_sub_arrow_border_hover_colour' => '#3f3f3f',
926
  'menu_sub_arrow_border_colour_active' => '#1d4354',
927
  'menu_sub_arrow_border_hover_colour_active' => '#3f3f3f',
928
- 'menu_sub_arrow_background_colour' => 'rgba(33,33,33,0)',
929
- 'menu_sub_arrow_background_hover_colour' => 'rgba(63,63,63,0)',
930
  'menu_sub_arrow_background_colour_active' => 'rgba(33,33,33,0.01)',
931
- 'menu_sub_arrow_background_hover_colour_active' => 'rgba(63,63,63,0)',
932
  'fade_submenus' => 'off',
933
  'fade_submenus_side' => 'left',
934
  'fade_submenus_delay' => '100',
@@ -981,7 +981,7 @@ function rmp_get_default_options() {
981
  'button_trigger_type_click' => 'on',
982
  'button_trigger_type_hover' => 'off',
983
  'button_click_trigger' => '',
984
- 'items_order' =>
985
  array (
986
  'title' => 'on',
987
  'additional content' => 'on',
@@ -993,15 +993,15 @@ function rmp_get_default_options() {
993
  'menu_title_link_location' => '_self',
994
  'menu_title_image' => '',
995
  'menu_title_font_icon' => '',
996
- 'menu_title_section_padding' =>
997
  array (
998
  'top' => '10%',
999
  'right' => '5%',
1000
  'bottom' => '0%',
1001
  'left' => '5%',
1002
  ),
1003
- 'menu_title_background_colour' => 'rgba(109,109,109,0)',
1004
- 'menu_title_background_hover_colour' => 'rgba(109,109,109,0)',
1005
  'menu_title_font_size' => '25',
1006
  'menu_title_font_size_unit' => 'px',
1007
  'menu_title_alignment' => 'center',
@@ -1014,7 +1014,7 @@ function rmp_get_default_options() {
1014
  'menu_title_image_height' => '',
1015
  'menu_title_image_height_unit' => 'px',
1016
  'menu_additional_content' => 'Add more content here...',
1017
- 'menu_additional_section_padding' =>
1018
  array (
1019
  'top' => '0%',
1020
  'right' => '5%',
@@ -1026,7 +1026,7 @@ function rmp_get_default_options() {
1026
  'menu_additional_content_alignment' => 'center',
1027
  'menu_additional_content_colour' => '#6fda44',
1028
  'menu_search_box_text' => 'Search',
1029
- 'menu_search_section_padding' =>
1030
  array (
1031
  'top' => '5%',
1032
  'right' => '5%',
@@ -1039,8 +1039,8 @@ function rmp_get_default_options() {
1039
  'menu_search_box_text_colour' => '#1d4354',
1040
  'menu_search_box_background_colour' => '#ffffff',
1041
  'menu_search_box_placeholder_colour' => '#1d4354',
1042
- 'menu_search_box_border_colour' => 'rgba(255,255,255,0)',
1043
- 'menu_section_padding' =>
1044
  array (
1045
  'top' => '0px',
1046
  'right' => '0px',
@@ -1054,7 +1054,7 @@ function rmp_get_default_options() {
1054
  'menu_minimum_width' => '320',
1055
  'menu_minimum_width_unit' => 'px',
1056
  'menu_auto_height' => 'off',
1057
- 'menu_container_padding' =>
1058
  array (
1059
  'top' => '0px',
1060
  'right' => '0px',
@@ -1074,4 +1074,4 @@ function rmp_get_default_options() {
1074
  );
1075
 
1076
  return $default_options;
1077
- }
3
  * This file contain the list of functions which have default options.
4
  *
5
  * @version 4.0.0
6
+ *
7
  * @package responsive-menu-pro
8
  */
9
 
35
  /**
36
  * Function return the multi device options.
37
  * Here, Add the option which you want to make the multi device.
38
+ *
39
  * @version 4.0.0
40
  *
41
  * @return array List of options.
87
 
88
  /**
89
  * Function to return the list of shortcut keys for menu open and close.
90
+ *
91
  * @version 4.0.0
92
+ *
93
  * @return array
94
  */
95
  function rmp_get_menu_open_close_keys() {
96
+ return [
97
  27 => 'Esc',
98
  13 => 'Enter',
99
  32 => 'Space',
106
 
107
  function rmp_font_weight_options() {
108
 
109
+ $unit_options = array(
110
  '100' => '100',
111
  '200' => '200',
112
  '300' => '300',
121
  'bolder' => 'Bolder',
122
  'lighter' => 'Lighter',
123
  'initial' => 'Initial',
124
+ 'inherit' => 'Inherit',
125
  );
126
 
127
  $unit_options = apply_filters('rmp_font_weight_options', $unit_options );
455
  * @return array - Sorted list of icon classes
456
  */
457
  function rmp_all_glyph_icons() {
458
+
459
 
460
  $glyph = array(
461
  'glyph-2a' => 'glyphicon-asterisk',
715
  'glyph-e257' => 'glyphicon-menu-left',
716
  'glyph-e258' => 'glyphicon-menu-right',
717
  'glyph-e259' => 'glyphicon-menu-down',
718
+ 'glyph-e260' => 'glyphicon-menu-up',
719
  );
720
 
721
  $glyph = apply_filters( "rmp_glyphicon", $glyph );
728
  /**
729
  * Get default options.
730
  * @since 4.0.0
731
+ *
732
  * @return array default_options list of option with default value.
733
  */
734
  function rmp_get_default_options() {
742
  'submenu_submenu_arrow_height' => '39',
743
  'submenu_submenu_arrow_height_unit' => 'px',
744
  'submenu_arrow_position' => 'right',
745
+ 'submenu_sub_arrow_background_colour' => '',
746
+ 'submenu_sub_arrow_background_hover_colour' => '',
747
+ 'submenu_sub_arrow_background_colour_active' => '',
748
+ 'submenu_sub_arrow_background_hover_colour_active' => '',
749
  'submenu_sub_arrow_border_width' => '',
750
  'submenu_sub_arrow_border_width_unit' => 'px',
751
  'submenu_sub_arrow_border_colour' => '#1d4354',
757
  'submenu_sub_arrow_shape_colour_active' => '#fff',
758
  'submenu_sub_arrow_shape_hover_colour_active' => '#fff',
759
  'use_header_bar' => 'off',
760
+ 'header_bar_items_order' =>
761
  array (
762
  'logo' => 'off',
763
  'title' => 'on',
775
  'header_bar_logo_height_unit' => 'px',
776
  'header_bar_height' => '80',
777
  'header_bar_height_unit' => 'px',
778
+ 'header_bar_padding' =>
779
  array (
780
  'top' => '0px',
781
  'right' => '5%',
806
  'desktop_menu_side' => 'left',
807
  'desktop_menu_to_hide' => '',
808
  'use_current_theme_location' => 'off',
809
+ 'mega_menu' =>
810
  array (
811
  225 => 'off',
812
  227 => 'off',
829
  'menu_to_hide' => '',
830
  'submenu_descriptions_on' => 'off',
831
  'custom_walker' => '',
832
+ 'menu_background_colour' => '',
833
  'menu_depth' => '5',
834
  'smooth_scroll_on' => 'off',
835
  'smooth_scroll_speed' => '500',
836
+ 'menu_font_icons' =>
837
  array (
838
+ 'id' =>
839
  array (
840
  0 => '225',
841
  ),
842
+ 'icon' =>
843
  array (
844
  0 => '',
845
  ),
861
  'menu_link_hover_colour' => '#fff',
862
  'menu_current_link_colour' => '#fff',
863
  'menu_current_link_hover_colour' => '#fff',
864
+ 'menu_item_background_colour' => '',
865
+ 'menu_item_background_hover_colour' => '',
866
  'menu_current_item_background_colour' => '#6fda44',
867
+ 'menu_current_item_background_hover_colour' => '',
868
  'menu_border_width' => '',
869
  'menu_border_width_unit' => 'px',
870
  'menu_item_border_colour' => '#1d4354',
884
  'menu_depth_3_unit' => '%',
885
  'menu_depth_4' => '25',
886
  'menu_depth_4_unit' => '%',
887
+ 'submenu_item_background_colour' => '',
888
+ 'submenu_item_background_hover_colour' => '',
889
+ 'submenu_current_item_background_colour' => '',
890
+ 'submenu_current_item_background_hover_colour' => '',
891
  'submenu_border_width' => '',
892
  'submenu_border_width_unit' => 'px',
893
  'submenu_item_border_colour' => '#1d4354',
925
  'menu_sub_arrow_border_hover_colour' => '#3f3f3f',
926
  'menu_sub_arrow_border_colour_active' => '#1d4354',
927
  'menu_sub_arrow_border_hover_colour_active' => '#3f3f3f',
928
+ 'menu_sub_arrow_background_colour' => '',
929
+ 'menu_sub_arrow_background_hover_colour' => '',
930
  'menu_sub_arrow_background_colour_active' => 'rgba(33,33,33,0.01)',
931
+ 'menu_sub_arrow_background_hover_colour_active' => '',
932
  'fade_submenus' => 'off',
933
  'fade_submenus_side' => 'left',
934
  'fade_submenus_delay' => '100',
981
  'button_trigger_type_click' => 'on',
982
  'button_trigger_type_hover' => 'off',
983
  'button_click_trigger' => '',
984
+ 'items_order' =>
985
  array (
986
  'title' => 'on',
987
  'additional content' => 'on',
993
  'menu_title_link_location' => '_self',
994
  'menu_title_image' => '',
995
  'menu_title_font_icon' => '',
996
+ 'menu_title_section_padding' =>
997
  array (
998
  'top' => '10%',
999
  'right' => '5%',
1000
  'bottom' => '0%',
1001
  'left' => '5%',
1002
  ),
1003
+ 'menu_title_background_colour' => '',
1004
+ 'menu_title_background_hover_colour' => '',
1005
  'menu_title_font_size' => '25',
1006
  'menu_title_font_size_unit' => 'px',
1007
  'menu_title_alignment' => 'center',
1014
  'menu_title_image_height' => '',
1015
  'menu_title_image_height_unit' => 'px',
1016
  'menu_additional_content' => 'Add more content here...',
1017
+ 'menu_additional_section_padding' =>
1018
  array (
1019
  'top' => '0%',
1020
  'right' => '5%',
1026
  'menu_additional_content_alignment' => 'center',
1027
  'menu_additional_content_colour' => '#6fda44',
1028
  'menu_search_box_text' => 'Search',
1029
+ 'menu_search_section_padding' =>
1030
  array (
1031
  'top' => '5%',
1032
  'right' => '5%',
1039
  'menu_search_box_text_colour' => '#1d4354',
1040
  'menu_search_box_background_colour' => '#ffffff',
1041
  'menu_search_box_placeholder_colour' => '#1d4354',
1042
+ 'menu_search_box_border_colour' => '',
1043
+ 'menu_section_padding' =>
1044
  array (
1045
  'top' => '0px',
1046
  'right' => '0px',
1054
  'menu_minimum_width' => '320',
1055
  'menu_minimum_width_unit' => 'px',
1056
  'menu_auto_height' => 'off',
1057
+ 'menu_container_padding' =>
1058
  array (
1059
  'top' => '0px',
1060
  'right' => '0px',
1074
  );
1075
 
1076
  return $default_options;
1077
+ }
v4.0.0/package.json CHANGED
@@ -18,6 +18,7 @@
18
  },
19
  "dependencies": {
20
  "jshint": "^2.12.0",
 
21
  "prompt-sync": "^4.1.6",
22
  "replace-in-file": "^3.4.2",
23
  "webfontloader": "^1.6.28"
@@ -42,22 +43,22 @@
42
  "fs-extra": "^7.0.0",
43
  "jquery": "^3.5.1",
44
  "mini-css-extract-plugin": "^0.4.3",
45
- "node-sass": "^4.14.1",
46
  "optimize-css-assets-webpack-plugin": "^5.0.1",
47
  "postcss-assets": "^5.0.0",
48
  "postcss-loader": "^3.0.0",
49
  "postcss-pxtorem": "^4.0.1",
50
  "postcss-scss": "^2.0.0",
 
51
  "sass-loader": "^7.1.0",
52
  "sass-mq": "^5.0.0",
53
  "style-loader": "^0.23.1",
54
- "stylelint": "^9.6.0",
55
  "stylelint-config-wordpress": "^13.1.0",
56
  "stylelint-webpack-plugin": "^0.10.5",
57
  "terser-webpack-plugin": "^4.2.3",
58
- "webpack": "^4.20.2",
59
  "webpack-assets-manifest": "^3.1.0",
60
- "webpack-cli": "^3.1.2",
61
  "wp-pot": "^1.9.6",
62
  "wp-pot-cli": "^1.5.0"
63
  },
18
  },
19
  "dependencies": {
20
  "jshint": "^2.12.0",
21
+ "node-sass": "^4.14.1",
22
  "prompt-sync": "^4.1.6",
23
  "replace-in-file": "^3.4.2",
24
  "webfontloader": "^1.6.28"
43
  "fs-extra": "^7.0.0",
44
  "jquery": "^3.5.1",
45
  "mini-css-extract-plugin": "^0.4.3",
 
46
  "optimize-css-assets-webpack-plugin": "^5.0.1",
47
  "postcss-assets": "^5.0.0",
48
  "postcss-loader": "^3.0.0",
49
  "postcss-pxtorem": "^4.0.1",
50
  "postcss-scss": "^2.0.0",
51
+ "prettier": "1.19.1",
52
  "sass-loader": "^7.1.0",
53
  "sass-mq": "^5.0.0",
54
  "style-loader": "^0.23.1",
55
+ "stylelint": "^13.13.1",
56
  "stylelint-config-wordpress": "^13.1.0",
57
  "stylelint-webpack-plugin": "^0.10.5",
58
  "terser-webpack-plugin": "^4.2.3",
59
+ "webpack": "^5.50.0",
60
  "webpack-assets-manifest": "^3.1.0",
61
+ "webpack-cli": "^3.3.12",
62
  "wp-pot": "^1.9.6",
63
  "wp-pot-cli": "^1.5.0"
64
  },
v4.0.0/templates/menu-elements/menu.php CHANGED
@@ -1,4 +1,4 @@
1
- <li class="rmp-accordion-item rmp-order-item">
2
  <div class="rmp-accordion-title rmp-order-item-title">
3
  <span class="item-title"><?php esc_html_e( 'Menu', 'responsive-menu-pro' ); ?></span>
4
  <span class="item-controls">
@@ -9,14 +9,11 @@
9
 
10
  <div class="rmp-accordion-content rmp-menu-controls">
11
  <?php
12
- echo $control_manager->add_group_text_control( [
13
- 'label' => __('Padding','responsive-menu-pro'),
14
- 'type' => 'text',
15
- 'class' => 'rmp-menu-section-padding',
16
- 'name' => 'menu[menu_section_padding]',
17
- 'input_options' => [ 'top', 'right', 'bottom', 'left' ],
18
- 'value_options' => ! empty( $options['menu_section_padding'] ) ? $options['menu_section_padding'] : ''
19
  ] );
20
  ?>
21
  </div>
22
- </li>
1
+ <li class="rmp-accordion-item rmp-order-item">
2
  <div class="rmp-accordion-title rmp-order-item-title">
3
  <span class="item-title"><?php esc_html_e( 'Menu', 'responsive-menu-pro' ); ?></span>
4
  <span class="item-controls">
9
 
10
  <div class="rmp-accordion-content rmp-menu-controls">
11
  <?php
12
+ echo $control_manager->add_shortcut_link( [
13
+ 'label' => 'Menu Settings',
14
+ 'target' => 'tab-menu-styling',
15
+ 'accordion_id' => 'ui-id-36',
 
 
 
16
  ] );
17
  ?>
18
  </div>
19
+ </li>
v4.0.0/templates/menu-elements/title.php CHANGED
@@ -62,7 +62,7 @@
62
  ] );
63
 
64
  echo $control_manager->add_icon_picker_control( [
65
- 'label' => __('Set Font','responsive-menu-pro'),
66
  'id' => 'rmp-button-title-icon',
67
  'group_classes' => 'full-size',
68
  'picker_class' => 'rmp-button-title-icon-picker-button',
@@ -76,7 +76,7 @@
76
 
77
  <div id="title-styles" class="title ">
78
 
79
- <?php
80
 
81
  echo $control_manager->add_group_text_control( [
82
  'label' => __('Padding','responsive-menu-pro'),
@@ -93,14 +93,14 @@
93
  'id' => 'rmp-menu-title-background-colour',
94
  'name' => 'menu[menu_title_background_colour]',
95
  'value' => rmp_get_value($options,'menu_title_background_colour'),
96
-
97
  ] );
98
  echo $control_manager->add_color_control( [
99
  'label' => __('Background Hover','responsive-menu-pro'),
100
  'id' => 'rmp-menu-title-background-hover-colour',
101
  'name' => 'menu[menu_title_background_hover_colour]',
102
  'value' => rmp_get_value($options,'menu_title_background_hover_colour'),
103
-
104
  ] );
105
  echo $ui_manager->end_group_controls();
106
 
@@ -129,7 +129,7 @@
129
  'name' => 'menu[menu_title_alignment]',
130
  'options' => ['left','center','right','justify'],
131
  'value' => rmp_get_value($options,'menu_title_alignment'),
132
-
133
  ] );
134
  echo $ui_manager->end_group_controls();
135
 
@@ -161,14 +161,14 @@
161
  'id' => 'rmp-menu-title-colour',
162
  'name' => 'menu[menu_title_colour]',
163
  'value' => rmp_get_value($options,'menu_title_colour'),
164
-
165
  ] );
166
  echo $control_manager->add_color_control( [
167
  'label' => __(' Text Hover','responsive-menu-pro'),
168
  'id' => 'rmp-menu-title-hover-colour',
169
  'name' => 'menu[menu_title_hover_colour]',
170
  'value' => rmp_get_value($options,'menu_title_hover_colour'),
171
-
172
  ] );
173
  echo $ui_manager->end_group_controls();
174
 
62
  ] );
63
 
64
  echo $control_manager->add_icon_picker_control( [
65
+ 'label' => __('Set Font Icon','responsive-menu-pro'),
66
  'id' => 'rmp-button-title-icon',
67
  'group_classes' => 'full-size',
68
  'picker_class' => 'rmp-button-title-icon-picker-button',
76
 
77
  <div id="title-styles" class="title ">
78
 
79
+ <?php
80
 
81
  echo $control_manager->add_group_text_control( [
82
  'label' => __('Padding','responsive-menu-pro'),
93
  'id' => 'rmp-menu-title-background-colour',
94
  'name' => 'menu[menu_title_background_colour]',
95
  'value' => rmp_get_value($options,'menu_title_background_colour'),
96
+
97
  ] );
98
  echo $control_manager->add_color_control( [
99
  'label' => __('Background Hover','responsive-menu-pro'),
100
  'id' => 'rmp-menu-title-background-hover-colour',
101
  'name' => 'menu[menu_title_background_hover_colour]',
102
  'value' => rmp_get_value($options,'menu_title_background_hover_colour'),
103
+
104
  ] );
105
  echo $ui_manager->end_group_controls();
106
 
129
  'name' => 'menu[menu_title_alignment]',
130
  'options' => ['left','center','right','justify'],
131
  'value' => rmp_get_value($options,'menu_title_alignment'),
132
+
133
  ] );
134
  echo $ui_manager->end_group_controls();
135
 
161
  'id' => 'rmp-menu-title-colour',
162
  'name' => 'menu[menu_title_colour]',
163
  'value' => rmp_get_value($options,'menu_title_colour'),
164
+
165
  ] );
166
  echo $control_manager->add_color_control( [
167
  'label' => __(' Text Hover','responsive-menu-pro'),
168
  'id' => 'rmp-menu-title-hover-colour',
169
  'name' => 'menu[menu_title_hover_colour]',
170
  'value' => rmp_get_value($options,'menu_title_hover_colour'),
171
+
172
  ] );
173
  echo $ui_manager->end_group_controls();
174
 
v4.0.0/templates/rmp-editor.php CHANGED
@@ -2,7 +2,7 @@
2
  /**
3
  * This is menu editor page where we can customize the menu with
4
  * all dynamic option and also the preview.
5
- *
6
  * @since 4.0.0
7
  *
8
  * @package responsive_menu_pro
@@ -91,7 +91,7 @@ $options = $option_manager->get_options( $menu_id );
91
  </span>
92
  <h3 class="rmp-tab-item-title"><?php esc_html_e( 'Menu Styling', 'responsive-menu-pro' ); ?></h3>
93
  </li>
94
-
95
  <li id="rmp-tab-item-header-bar" class="rmp-tab-item" aria-owns="tab-header-bar">
96
  <span class="rmp-tab-item-icon">
97
  <?php echo file_get_contents( RMP_PLUGIN_PATH_V4 .'/assets/admin/icons/svg/header.svg' ); ?>
@@ -163,8 +163,8 @@ $options = $option_manager->get_options( $menu_id );
163
  'label' => __('Change Theme','responsive-menu-pro'),
164
  'id' => 'rmp-change-theme-action',
165
  'group_classes' => 'full-size',
166
- 'class' => 'rmp-theme-change-button',
167
- ]
168
  );
169
  echo $ui_manager->accordion_divider();
170
 
@@ -173,18 +173,18 @@ $options = $option_manager->get_options( $menu_id );
173
  'label' => __('Save As Theme','responsive-menu-pro'),
174
  'id' => 'rmp-theme-save-action',
175
  'group_classes' => 'full-size',
176
- 'class' => 'rmp-theme-save-button',
177
- ]
178
  );
179
 
180
-
181
  echo $ui_manager->end_accordion_item();
182
 
183
  /**
184
  * Fires after prepare the theme setting section.
185
- *
186
  * @since 4.1.0
187
- *
188
  * @param int $menu_id
189
  * @param array $options
190
  */
@@ -194,7 +194,7 @@ $options = $option_manager->get_options( $menu_id );
194
  </ul>
195
  </div>
196
 
197
- <?php
198
  if ( ! empty( get_option('responsive_menu_version') ) ) {
199
  include_once RMP_PLUGIN_PATH_V4 . '/templates/legacy-settings.php';
200
  }
@@ -209,7 +209,7 @@ $options = $option_manager->get_options( $menu_id );
209
  <div id="tab-advanced-settings" class="rmp-accordions" aria-label="Advanced">
210
  <ul class="rmp-accordion-container">
211
  <?php
212
-
213
  //Device Breakpoints
214
  echo $ui_manager->start_accordion_item( [
215
  'item_header' => [
@@ -237,16 +237,16 @@ $options = $option_manager->get_options( $menu_id );
237
  'item_title' => __('Animation Speeds','responsive-menu-pro'),
238
  ]
239
  ] );
240
-
241
  echo $ui_manager->start_group_controls();
242
-
243
  echo $control_manager->add_text_input_control( [
244
  'label' => __('Colours','responsive-menu-pro'),
245
  'type' => 'text',
246
  'id' => 'rmp-menu-transition-speed',
247
  'name' => 'menu[transition_speed]',
248
  'value' => rmp_get_value($options,'transition_speed'),
249
-
250
  'tool_tip' => [
251
  'text' => __('Specify the speed at which colours transition from standard to active or hover states.','responsive-menu-pro')
252
  ],
@@ -261,7 +261,7 @@ $options = $option_manager->get_options( $menu_id );
261
  'id' => 'rmp-sub-menu-speed',
262
  'name' => 'menu[sub_menu_speed]',
263
  'value' => rmp_get_value($options,'sub_menu_speed'),
264
-
265
  'tool_tip' => [
266
  'text' => __('Specify the speed at which the sub menus transition.','responsive-menu-pro')
267
  ],
@@ -272,7 +272,7 @@ $options = $option_manager->get_options( $menu_id );
272
 
273
  echo $ui_manager->end_group_controls();
274
 
275
-
276
  echo $ui_manager->end_accordion_item();
277
 
278
  echo $ui_manager->start_accordion_item( [
@@ -292,7 +292,7 @@ $options = $option_manager->get_options( $menu_id );
292
  'feature_type' => 'pro',
293
  'name' => 'menu[show_menu_on_page_load]',
294
  'is_checked' => '',
295
-
296
  ] );
297
 
298
  echo $control_manager->add_switcher_control( [
@@ -307,6 +307,30 @@ $options = $option_manager->get_options( $menu_id );
307
  'is_checked' => ''
308
  ] );
309
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
310
  echo $ui_manager->end_accordion_item();
311
 
312
  echo $ui_manager->start_accordion_item( [
@@ -325,7 +349,7 @@ $options = $option_manager->get_options( $menu_id );
325
  echo $control_manager->upgrade_notice();
326
 
327
  echo $ui_manager->end_accordion_item();
328
-
329
  ?>
330
  </ul>
331
  </div>
@@ -407,7 +431,7 @@ $options = $option_manager->get_options( $menu_id );
407
  ]);
408
 
409
  echo $ui_manager->start_group_controls();
410
-
411
  echo $control_manager->add_text_input_control( [
412
  'label' => __('Name','responsive-menu-pro'),
413
  'type' => 'text',
@@ -495,118 +519,58 @@ $options = $option_manager->get_options( $menu_id );
495
  <div id="tab-menu-styling" class="rmp-accordions" aria-label="Menu Styling">
496
  <ul class="rmp-accordion-container">
497
  <?php
498
-
499
 
500
  echo $ui_manager->start_accordion_item( [
501
  'item_header' => [
502
- 'item_title' => __('Menu ','responsive-menu-pro'),
503
  ],
504
  'feature_type' => 'semi-pro'
505
  ] );
506
- echo $ui_manager->start_tabs_controls_panel(
507
- [ 'tab_classes' => 'rmp-tab-content',
508
- 'tab_items' =>
509
- [
510
- 0 => [
511
- 'item_class' => 'nav-tab-active',
512
- 'item_target' => 'menu-item-contents',
513
- 'item_text' => __('Contents ','responsive-menu-pro'),
514
- ],
515
- 1 => [
516
- 'item_class' => '',
517
- 'item_target' => 'menu-item-styling',
518
- 'item_text' => __('Styling ','responsive-menu-pro'),
519
- ]
520
- ]
521
- ]
522
- );
523
 
524
- echo $ui_manager->start_tab_item(
525
- [
526
- 'item_id' => 'menu-item-contents',
527
- 'item_class' => 'title-contents',
528
- ]
529
- );
530
 
531
- echo $control_manager->add_switcher_control( [
532
- 'label' => __('Item Descriptions','responsive-menu-pro'),
533
- 'id' => 'rmp-menu-submenu-descriptions-on',
534
- 'tool_tip' => [
535
- 'text' => __('Show the description text of menu items. Description text should be set while creating WordPress menus.','responsive-menu-pro'),
536
- ],
537
- 'name' => 'menu[submenu_descriptions_on]',
538
- 'is_checked' => is_rmp_option_checked('on', $options,'submenu_descriptions_on'),
 
 
 
 
 
 
 
 
 
 
 
539
  ] );
540
-
541
- echo $ui_manager->accordion_divider();
542
-
543
-
544
-
545
- echo $control_manager->add_text_input_control( [
546
- 'label' => __('Custom Walker','responsive-menu-pro'),
547
- 'group_classes' => 'full-size',
548
- 'type' => 'text',
549
- 'id' => 'rmp-custom-walker',
550
  'tool_tip' => [
551
- 'text' => __('Modify the HTML output by using a custom Walker class.','responsive-menu-pro'),
552
  ],
553
- 'name' => 'menu[custom_walker]',
554
- 'value' => rmp_get_value($options,'custom_walker'),
 
555
  ] );
556
- echo $ui_manager->end_tab_item();
557
- echo $ui_manager->start_tab_item(
558
- [
559
- 'item_id' => 'menu-item-styling',
560
- 'item_class' => 'title-contents',
561
- ]
562
- );
563
 
564
- echo $ui_manager->start_group_controls();
565
- echo $control_manager->add_color_control( [
566
- 'label' => __('Menu Background','responsive-menu-pro'),
567
- 'id' => 'rmp-menu-background-colour',
568
- 'name' => 'menu[menu_background_colour]',
569
- 'value' => rmp_get_value($options,'menu_background_colour'),
570
- ] );
571
-
572
- echo $control_manager->add_select_control( [
573
- 'label' => __('Depth Level','responsive-menu-pro'),
574
- 'id' => 'rmp-menu-depth',
575
- 'tool_tip' => [
576
- 'text' => __('Set the level of nesting for sub menus.','responsive-menu-pro'),
577
- ],
578
- 'name' => 'menu[menu_depth]',
579
- 'options' => array( '1'=>1, '2'=>2, '3' => 3, '4'=>4,'5'=>5 ),
580
- 'value' => rmp_get_value($options,'menu_depth'),
581
- ] );
582
-
583
- echo $ui_manager->end_group_controls();
584
- echo $ui_manager->accordion_divider();
585
 
586
- echo $control_manager->add_switcher_control( [
587
- 'label' => __('Smooth Scroll Enabled','responsive-menu-pro'),
588
- 'id' => 'rmp-menu-smooth-scroll-on',
589
- 'class' => 'rmp-menu-smooth-scroll-on',
590
- 'tool_tip' => [
591
- 'text' => __('The webpage will scroll smoothly to their target sections on same page.','responsive-menu-pro'),
592
- ],
593
- 'name' => 'smooth_scroll_on',
594
- 'feature_type' => 'pro',
595
- 'is_checked' => ''
596
- ] );
597
-
598
- echo $control_manager->add_text_input_control( [
599
- 'label' => __('Scroll Speed','responsive-menu-pro'),
600
- 'type' => 'number',
601
- 'id' => 'rmp-menu-smooth-scroll-speed',
602
- 'name' => 'smooth_scroll_speed',
603
- 'feature_type' => 'pro',
604
- 'value' => '0',
605
- 'has_unit' => [
606
- 'unit_type' => 'ms',
607
- ],
608
- ] );
609
- echo $ui_manager->end_tab_item();
610
 
611
  echo $ui_manager->end_accordion_item();
612
 
@@ -645,8 +609,8 @@ $options = $option_manager->get_options( $menu_id );
645
  ]
646
  ]
647
  );
648
-
649
- echo $ui_manager->start_tab_item(
650
  [
651
  'item_id' => 'top-level-item-styling',
652
  'item_class' => 'title-contents',
@@ -717,7 +681,7 @@ $options = $option_manager->get_options( $menu_id );
717
  'item_title' => __('Typography','responsive-menu-pro')
718
  ]
719
  ] );
720
-
721
  echo $control_manager->add_text_input_control( [
722
  'label' => __('Font Size','responsive-menu-pro'),
723
  'type' => 'number',
@@ -738,7 +702,7 @@ $options = $option_manager->get_options( $menu_id );
738
  ],
739
  ] );
740
 
741
-
742
 
743
  echo $control_manager->add_text_input_control( [
744
  'label' => __('Font Family','responsive-menu-pro'),
@@ -791,7 +755,7 @@ $options = $option_manager->get_options( $menu_id );
791
  ],
792
  'name' => 'menu[menu_word_wrap]',
793
  'is_checked' => is_rmp_option_checked('on', $options,'menu_word_wrap'),
794
-
795
  ] );
796
 
797
  echo $ui_manager->end_accordion_item();
@@ -816,7 +780,7 @@ $options = $option_manager->get_options( $menu_id );
816
  'id' => 'rmp-menu-link-hover-color',
817
  'name' => 'menu[menu_link_hover_colour]',
818
  'value' => rmp_get_value($options,'menu_link_hover_colour'),
819
-
820
  'multi_device' => true,
821
  ] );
822
 
@@ -825,7 +789,7 @@ $options = $option_manager->get_options( $menu_id );
825
  'id' => 'rmp-menu-current-link-active-color',
826
  'name' => 'menu[menu_current_link_colour]',
827
  'value' => rmp_get_value($options,'menu_current_link_colour'),
828
-
829
  ] );
830
 
831
  echo $control_manager->add_color_control( [
@@ -833,9 +797,9 @@ $options = $option_manager->get_options( $menu_id );
833
  'id' => 'rmp-menu-current-link-active-hover-color',
834
  'name' => 'menu[menu_current_link_hover_colour]',
835
  'value' => rmp_get_value($options,'menu_current_link_hover_colour'),
836
-
837
  ] );
838
-
839
  echo $ui_manager->end_accordion_item();
840
 
841
  echo $ui_manager->start_accordion_item( [
@@ -849,7 +813,7 @@ $options = $option_manager->get_options( $menu_id );
849
  'id' => 'rmp-menu-item-background-colour',
850
  'name' => 'menu[menu_item_background_colour]',
851
  'value' => rmp_get_value($options,'menu_item_background_colour'),
852
-
853
  'multi_device' => true,
854
 
855
  ] );
@@ -859,7 +823,7 @@ $options = $option_manager->get_options( $menu_id );
859
  'id' => 'rmp-menu-item-background-hover-color',
860
  'name' => 'menu[menu_item_background_hover_colour]',
861
  'value' => rmp_get_value($options,'menu_item_background_hover_colour'),
862
-
863
  'multi_device' => true,
864
  ] );
865
 
@@ -868,7 +832,7 @@ $options = $option_manager->get_options( $menu_id );
868
  'id' => 'rmp-menu-current-item-background-color',
869
  'name' => 'menu[menu_current_item_background_colour]',
870
  'value' => rmp_get_value($options,'menu_current_item_background_colour'),
871
-
872
  ] );
873
 
874
  echo $control_manager->add_color_control( [
@@ -876,7 +840,7 @@ $options = $option_manager->get_options( $menu_id );
876
  'id' => 'rmp-menu-current-item-background-hover-color',
877
  'name' => 'menu[menu_current_item_background_hover_colour]',
878
  'value' => rmp_get_value($options,'menu_current_item_background_hover_colour'),
879
-
880
  ] );
881
  echo $ui_manager->end_accordion_item();
882
 
@@ -912,7 +876,7 @@ $options = $option_manager->get_options( $menu_id );
912
  'id' => 'rmp-menu-item-border-colour',
913
  'name' => 'menu[menu_item_border_colour]',
914
  'value' => rmp_get_value($options,'menu_item_border_colour'),
915
-
916
  ] );
917
 
918
  echo $control_manager->add_color_control( [
@@ -920,17 +884,17 @@ $options = $option_manager->get_options( $menu_id );
920
  'id' => 'rmp-menu-item-border-colour-hover',
921
  'name' => 'menu[menu_item_border_colour_hover]',
922
  'value' => rmp_get_value($options,'menu_item_border_colour_hover'),
923
-
924
  ] );
925
  echo $ui_manager->end_group_controls();
926
-
927
  echo $ui_manager->start_group_controls();
928
  echo $control_manager->add_color_control( [
929
  'label' => __('Active Item','responsive-menu-pro'),
930
  'id' => 'rmp-menu-item-border-colour-active',
931
  'name' => 'menu[menu_current_item_border_colour]',
932
  'value' => rmp_get_value($options,'menu_current_item_border_colour'),
933
-
934
  ] );
935
 
936
  echo $control_manager->add_color_control( [
@@ -941,7 +905,7 @@ $options = $option_manager->get_options( $menu_id );
941
  ],
942
  'name' => 'menu[menu_current_item_border_hover_colour]',
943
  'value' => rmp_get_value($options,'menu_current_item_border_hover_colour'),
944
-
945
  ] );
946
  echo $ui_manager->end_group_controls();
947
 
@@ -950,7 +914,7 @@ $options = $option_manager->get_options( $menu_id );
950
  echo $ui_manager->end_sub_accordion();
951
  echo $ui_manager->end_tab_item();
952
 
953
- echo $ui_manager->start_tab_item(
954
  [
955
  'item_id' => 'sub-level-item-styling',
956
  'item_class' => 'title-contents',
@@ -1012,8 +976,8 @@ $options = $option_manager->get_options( $menu_id );
1012
  'options' => array( 'right' => 'Right' , 'left' => 'Left' ),
1013
  'value' => rmp_get_value($options,'menu_depth_side'),
1014
  ] );
1015
-
1016
-
1017
  echo $ui_manager->start_group_controls();
1018
  echo $control_manager->add_text_input_control( [
1019
  'label' => __('Child Level 1','responsive-menu-pro'),
@@ -1021,7 +985,7 @@ $options = $option_manager->get_options( $menu_id );
1021
  'id' => 'rmp-menu-depth-level-1',
1022
  'name' => 'menu[menu_depth_1]',
1023
  'value' => rmp_get_value($options,'menu_depth_1'),
1024
-
1025
  'has_unit' => [
1026
  'unit_type' => 'all',
1027
  'id' => 'rmp-menu-depth-level-1-unit',
@@ -1031,14 +995,14 @@ $options = $option_manager->get_options( $menu_id );
1031
  'value' => rmp_get_value($options,'menu_depth_1_unit'),
1032
  ],
1033
  ] );
1034
-
1035
  echo $control_manager->add_text_input_control( [
1036
  'label' => __('Child Level 2','responsive-menu-pro'),
1037
  'type' => 'number',
1038
  'id' => 'rmp-menu-depth-level-2',
1039
  'name' => 'menu[menu_depth_2]',
1040
  'value' => rmp_get_value($options,'menu_depth_2'),
1041
-
1042
  'has_unit' => [
1043
  'unit_type' => 'all',
1044
  'id' => 'rmp-menu-depth-level-2-unit',
@@ -1048,7 +1012,7 @@ $options = $option_manager->get_options( $menu_id );
1048
  'value' => rmp_get_value($options,'menu_depth_2_unit'),
1049
  ],
1050
  ] );
1051
-
1052
  echo $ui_manager->end_group_controls();
1053
 
1054
  echo $ui_manager->start_group_controls();
@@ -1058,7 +1022,7 @@ $options = $option_manager->get_options( $menu_id );
1058
  'id' => 'rmp-menu-depth-level-3',
1059
  'name' => 'menu[menu_depth_3]',
1060
  'value' => rmp_get_value($options,'menu_depth_3'),
1061
-
1062
  'has_unit' => [
1063
  'unit_type' => 'all',
1064
  'id' => 'rmp-menu-depth-level-3-unit',
@@ -1075,7 +1039,7 @@ $options = $option_manager->get_options( $menu_id );
1075
  'id' => 'rmp-menu-depth-level-4',
1076
  'name' => 'menu[menu_depth_4]',
1077
  'value' => rmp_get_value($options,'menu_depth_4'),
1078
-
1079
  'has_unit' => [
1080
  'unit_type' => 'all',
1081
  'id' => 'rmp-menu-depth-level-4-unit',
@@ -1100,31 +1064,31 @@ $options = $option_manager->get_options( $menu_id );
1100
  'value' => rmp_get_value($options,'submenu_item_background_colour'),
1101
  'multi_device' => true,
1102
  ] );
1103
-
1104
  echo $control_manager->add_color_control( [
1105
  'label' => __('Hover','responsive-menu-pro'),
1106
  'id' => 'rmp-submenu-item-background-hover-color',
1107
  'name' => 'menu[submenu_item_background_hover_colour]',
1108
  'value' => rmp_get_value($options,'submenu_item_background_hover_colour'),
1109
-
1110
  'multi_device' => true,
1111
  ] );
1112
-
1113
  echo $ui_manager->start_group_controls();
1114
  echo $control_manager->add_color_control( [
1115
  'label' => __('Active Item','responsive-menu-pro'),
1116
  'id' => 'rmp-submenu-current-item-background-color',
1117
  'name' => 'menu[submenu_current_item_background_colour]',
1118
  'value' => rmp_get_value($options,'submenu_current_item_background_colour'),
1119
-
1120
  ] );
1121
-
1122
  echo $control_manager->add_color_control( [
1123
  'label' => __('Active Item Hover','responsive-menu-pro'),
1124
  'id' => 'rmp-submenu-current-item-background-hover-color',
1125
  'name' => 'menu[submenu_current_item_background_hover_colour]',
1126
  'value' => rmp_get_value($options,'submenu_current_item_background_hover_colour'),
1127
-
1128
  ] );
1129
  echo $ui_manager->end_group_controls();
1130
  echo $ui_manager->end_accordion_item();
@@ -1152,22 +1116,22 @@ $options = $option_manager->get_options( $menu_id );
1152
  'value' => rmp_get_value($options,'submenu_border_width_unit'),
1153
  ],
1154
  ] );
1155
-
1156
  echo $ui_manager->start_group_controls();
1157
  echo $control_manager->add_color_control( [
1158
  'label' => __('Normal','responsive-menu-pro'),
1159
  'id' => 'rmp-submenu-item-border-colour',
1160
  'name' => 'menu[submenu_item_border_colour]',
1161
  'value' => rmp_get_value($options,'submenu_item_border_colour'),
1162
-
1163
  ] );
1164
-
1165
  echo $control_manager->add_color_control( [
1166
  'label' => __('Hover','responsive-menu-pro'),
1167
  'id' => 'rmp-submenu-item-border-colour-hover',
1168
  'name' => 'menu[submenu_item_border_colour_hover]',
1169
  'value' => rmp_get_value($options,'submenu_item_border_colour_hover'),
1170
-
1171
  ] );
1172
  echo $ui_manager->end_group_controls();
1173
 
@@ -1178,7 +1142,7 @@ $options = $option_manager->get_options( $menu_id );
1178
  'name' => 'menu[submenu_current_item_border_colour]',
1179
  'value' => rmp_get_value($options,'submenu_current_item_border_colour')
1180
  ] );
1181
-
1182
  echo $control_manager->add_color_control( [
1183
  'label' => __('Active Item Hover','responsive-menu-pro'),
1184
  'id' => 'rmp-submenu-current-item-border-hover-colour',
@@ -1187,10 +1151,10 @@ $options = $option_manager->get_options( $menu_id );
1187
  ],
1188
  'name' => 'menu[submenu_current_item_border_hover_colour]',
1189
  'value' => rmp_get_value($options,'submenu_current_item_border_hover_colour'),
1190
-
1191
  ] );
1192
  echo $ui_manager->end_group_controls();
1193
-
1194
  echo $ui_manager->end_accordion_item();
1195
  echo $ui_manager->start_accordion_item( [
1196
  'item_header' => [
@@ -1215,7 +1179,7 @@ $options = $option_manager->get_options( $menu_id );
1215
  'multi_device' => true,
1216
  ],
1217
  ] );
1218
-
1219
  echo $control_manager->add_text_input_control( [
1220
  'label' => __('Font Family','responsive-menu-pro'),
1221
  'type' => 'text',
@@ -1225,7 +1189,7 @@ $options = $option_manager->get_options( $menu_id );
1225
  'value' => rmp_get_value($options,'submenu_font'),
1226
  'multi_device' => true,
1227
  ] );
1228
-
1229
  echo $ui_manager->start_group_controls();
1230
 
1231
  echo $control_manager->add_select_control( [
@@ -1248,7 +1212,7 @@ $options = $option_manager->get_options( $menu_id );
1248
  'unit_type' => 'px',
1249
  ],
1250
  ] );
1251
-
1252
  echo $ui_manager->end_group_controls();
1253
 
1254
 
@@ -1273,7 +1237,7 @@ $options = $option_manager->get_options( $menu_id );
1273
  'name' => 'menu[submenu_link_colour]',
1274
  'value' => rmp_get_value($options,'submenu_link_colour'),
1275
  'multi_device' => true,
1276
-
1277
  ] );
1278
 
1279
  echo $control_manager->add_color_control( [
@@ -1302,7 +1266,7 @@ $options = $option_manager->get_options( $menu_id );
1302
 
1303
  echo $ui_manager->end_accordion_item();
1304
  echo $ui_manager->end_sub_accordion();
1305
-
1306
  echo $ui_manager->end_tab_item();
1307
 
1308
  echo $ui_manager->end_tabs_controls_panel();
@@ -1339,7 +1303,7 @@ $options = $option_manager->get_options( $menu_id );
1339
  ]
1340
  );
1341
 
1342
- echo $ui_manager->start_tab_item(
1343
  [
1344
  'item_id' => 'menu-item-arrow-text',
1345
  'item_class' => 'title-contents',
@@ -1352,7 +1316,7 @@ $options = $option_manager->get_options( $menu_id );
1352
  'id' => 'rmp-menu-inactive-arrow-shape',
1353
  'name' => 'menu[inactive_arrow_shape]',
1354
  'value' => rmp_get_value($options,'inactive_arrow_shape'),
1355
-
1356
  ] );
1357
 
1358
  echo $control_manager->add_text_input_control( [
@@ -1361,18 +1325,18 @@ $options = $option_manager->get_options( $menu_id );
1361
  'id' => 'rmp-menu-active-arrow-shape',
1362
  'name' => 'menu[active_arrow_shape]',
1363
  'value' => rmp_get_value($options,'active_arrow_shape'),
1364
-
1365
  ] );
1366
  echo $ui_manager->end_group_controls();
1367
  echo $ui_manager->end_tab_item();
1368
 
1369
- echo $ui_manager->start_tab_item(
1370
  [
1371
  'item_id' => 'menu-item-arrow-icon',
1372
  'item_class' => 'title-contents',
1373
  ]
1374
  );
1375
-
1376
 
1377
  echo $control_manager->add_icon_picker_control( [
1378
  'label' => __('Font Icon','responsive-menu-pro'),
@@ -1383,7 +1347,7 @@ $options = $option_manager->get_options( $menu_id );
1383
  'picker_id' => "rmp-menu-inactive-arrow-font-icon-selector",
1384
  'name' => 'menu[inactive_arrow_font_icon]',
1385
  'value' => rmp_get_value($options,'inactive_arrow_font_icon'),
1386
-
1387
  ] );
1388
 
1389
  echo $control_manager->add_icon_picker_control( [
@@ -1394,13 +1358,13 @@ $options = $option_manager->get_options( $menu_id );
1394
  'picker_id' => "rmp-menu-active-arrow-font-icon-selector",
1395
  'name' => 'menu[active_arrow_font_icon]',
1396
  'value' => rmp_get_value($options,'active_arrow_font_icon'),
1397
-
1398
  ] );
1399
 
1400
  echo $ui_manager->end_tab_item();
1401
 
1402
 
1403
- echo $ui_manager->start_tab_item(
1404
  [
1405
  'item_id' => 'menu-item-arrow-image',
1406
  'item_class' => 'title-style',
@@ -1415,7 +1379,7 @@ $options = $option_manager->get_options( $menu_id );
1415
  'picker_id' => "rmp-menu-inactive-arrow-image-selector",
1416
  'name' => 'menu[inactive_arrow_image]',
1417
  'value' => rmp_get_value($options,'inactive_arrow_image'),
1418
-
1419
  ] );
1420
 
1421
  echo $control_manager->add_image_control( [
@@ -1426,7 +1390,7 @@ $options = $option_manager->get_options( $menu_id );
1426
  'picker_id' => "rmp-menu-active-arrow-image-selector",
1427
  'name' => 'menu[active_arrow_image]',
1428
  'value' => rmp_get_value($options,'active_arrow_image'),
1429
-
1430
  ] );
1431
  echo $ui_manager->end_tab_item();
1432
 
@@ -1502,17 +1466,17 @@ $options = $option_manager->get_options( $menu_id );
1502
  'id' => 'rmp-menu-sub-arrow-shape-colour',
1503
  'name' => 'menu[menu_sub_arrow_shape_colour]',
1504
  'value' => rmp_get_value($options,'menu_sub_arrow_shape_colour'),
1505
-
1506
  ] );
1507
-
1508
  echo $control_manager->add_color_control( [
1509
  'label' => __('Hover','responsive-menu-pro'),
1510
  'id' => 'rmp-menu-sub-arrow-shape-hover-colour',
1511
  'name' => 'menu[menu_sub_arrow_shape_hover_colour]',
1512
  'value' => rmp_get_value($options,'menu_sub_arrow_shape_hover_colour'),
1513
-
1514
  ] );
1515
-
1516
  echo $ui_manager->end_group_controls();
1517
 
1518
  echo $ui_manager->start_group_controls();
@@ -1522,15 +1486,15 @@ $options = $option_manager->get_options( $menu_id );
1522
  'id' => 'rmp-menu-sub-arrow-shape-colour-active',
1523
  'name' => 'menu[menu_sub_arrow_shape_colour_active]',
1524
  'value' => rmp_get_value($options,'menu_sub_arrow_shape_colour_active'),
1525
-
1526
  ] );
1527
-
1528
  echo $control_manager->add_color_control( [
1529
  'label' => __('Active Item Hover','responsive-menu-pro'),
1530
  'id' => 'rmp-menu-sub-arrow-shape-hover-colour-active',
1531
  'name' => 'menu[menu_sub_arrow_shape_hover_colour_active]',
1532
  'value' => rmp_get_value($options,'menu_sub_arrow_shape_hover_colour_active'),
1533
-
1534
  ] );
1535
  echo $ui_manager->end_group_controls();
1536
 
@@ -1565,7 +1529,7 @@ $options = $option_manager->get_options( $menu_id );
1565
  'id' => 'rmp-menu-sub-arrow-border-colour',
1566
  'name' => 'menu[menu_sub_arrow_border_colour]',
1567
  'value' => rmp_get_value($options,'menu_sub_arrow_border_colour'),
1568
-
1569
  ] );
1570
 
1571
  echo $control_manager->add_color_control( [
@@ -1573,7 +1537,7 @@ $options = $option_manager->get_options( $menu_id );
1573
  'id' => 'rmp-menu-sub-arrow-border-hover-colour',
1574
  'name' => 'menu[menu_sub_arrow_border_hover_colour]',
1575
  'value' => rmp_get_value($options,'menu_sub_arrow_border_hover_colour'),
1576
-
1577
  ] );
1578
  echo $ui_manager->end_group_controls();
1579
 
@@ -1583,7 +1547,7 @@ $options = $option_manager->get_options( $menu_id );
1583
  'id' => 'rmp-menu-sub-arrow-border-colour-active',
1584
  'name' => 'menu[menu_sub_arrow_border_colour_active]',
1585
  'value' => rmp_get_value($options,'menu_sub_arrow_border_colour_active'),
1586
-
1587
  ] );
1588
 
1589
  echo $control_manager->add_color_control( [
@@ -1591,7 +1555,7 @@ $options = $option_manager->get_options( $menu_id );
1591
  'id' => 'rmp-menu-sub-arrow-border-hover-colour-active',
1592
  'name' => 'menu[menu_sub_arrow_border_hover_colour_active]',
1593
  'value' => rmp_get_value($options,'menu_sub_arrow_border_hover_colour_active'),
1594
-
1595
  ] );
1596
  echo $ui_manager->end_group_controls();
1597
 
@@ -1610,7 +1574,7 @@ $options = $option_manager->get_options( $menu_id );
1610
  'id' => 'rmp-menu-sub-arrow-background-color',
1611
  'name' => 'menu[menu_sub_arrow_background_colour]',
1612
  'value' => rmp_get_value($options,'menu_sub_arrow_background_colour'),
1613
-
1614
  ] );
1615
 
1616
  echo $control_manager->add_color_control( [
@@ -1618,7 +1582,7 @@ $options = $option_manager->get_options( $menu_id );
1618
  'id' => 'rmp-menu-sub-arrow-background-hover-colour',
1619
  'name' => 'menu[menu_sub_arrow_background_hover_colour]',
1620
  'value' => rmp_get_value($options,'menu_sub_arrow_background_hover_colour'),
1621
-
1622
  ] );
1623
  echo $ui_manager->end_group_controls();
1624
  echo $ui_manager->start_group_controls();
@@ -1628,7 +1592,7 @@ $options = $option_manager->get_options( $menu_id );
1628
  'id' => 'rmp-menu-sub-arrow-background-colour-active',
1629
  'name' => 'menu[menu_sub_arrow_background_colour_active]',
1630
  'value' => rmp_get_value($options,'menu_sub_arrow_background_colour_active'),
1631
-
1632
  ] );
1633
 
1634
  echo $control_manager->add_color_control( [
@@ -1636,7 +1600,7 @@ $options = $option_manager->get_options( $menu_id );
1636
  'id' => 'rmp-menu-sub-arrow-background-hover-colour-active',
1637
  'name' => 'menu[menu_sub_arrow_background_hover_colour_active]',
1638
  'value' => rmp_get_value($options,'menu_sub_arrow_background_hover_colour_active'),
1639
-
1640
  ] );
1641
  echo $ui_manager->end_group_controls();
1642
 
@@ -1658,7 +1622,7 @@ $options = $option_manager->get_options( $menu_id );
1658
 
1659
  echo $control_manager->upgrade_notice();
1660
  echo $ui_manager->end_accordion_item();
1661
-
1662
 
1663
  echo $ui_manager->start_accordion_item( [
1664
  'item_header' => [
@@ -1666,13 +1630,23 @@ $options = $option_manager->get_options( $menu_id );
1666
  ]
1667
  ] );
1668
 
 
 
 
 
 
 
 
 
 
 
1669
  echo $control_manager->add_switcher_control( [
1670
  'label' => __('Use Accordion','responsive-menu-pro'),
1671
  'id' => 'rmp-menu-accordion-animation',
1672
  'class' => 'rmp-menu-accordion-animation',
1673
  'name' => 'menu[accordion_animation]',
1674
  'is_checked' => is_rmp_option_checked('on', $options,'accordion_animation'),
1675
-
1676
  ] );
1677
 
1678
  echo $control_manager->add_switcher_control( [
@@ -1681,7 +1655,7 @@ $options = $option_manager->get_options( $menu_id );
1681
  'class' => 'rmp-menu-auto-expand-all-submenus',
1682
  'name' => 'menu[auto_expand_all_submenus]',
1683
  'is_checked' => is_rmp_option_checked('on', $options,'auto_expand_all_submenus'),
1684
-
1685
  ] );
1686
 
1687
  echo $control_manager->add_switcher_control( [
@@ -1690,7 +1664,7 @@ $options = $option_manager->get_options( $menu_id );
1690
  'class' => 'rmp-menu-auto-expand-current-submenus',
1691
  'name' => 'menu[auto_expand_current_submenus]',
1692
  'is_checked' => is_rmp_option_checked('on', $options,'auto_expand_current_submenus'),
1693
-
1694
  ] );
1695
 
1696
  echo $control_manager->add_switcher_control( [
@@ -1699,7 +1673,7 @@ $options = $option_manager->get_options( $menu_id );
1699
  'class' => 'rmp-menu-menu-item-click-to-trigger-submenu',
1700
  'name' => 'menu[menu_item_click_to_trigger_submenu]',
1701
  'is_checked' => is_rmp_option_checked('on', $options,'menu_item_click_to_trigger_submenu'),
1702
-
1703
  ] );
1704
 
1705
 
@@ -1718,7 +1692,7 @@ $options = $option_manager->get_options( $menu_id );
1718
  'item_title' => __('Button Style','responsive-menu-pro'),
1719
  ]
1720
  ] );
1721
-
1722
  echo $ui_manager->start_group_controls();
1723
 
1724
  echo $control_manager->add_text_input_control( [
@@ -1738,7 +1712,7 @@ $options = $option_manager->get_options( $menu_id );
1738
  'value' => rmp_get_value($options,'button_width_unit'),
1739
  ],
1740
  ] );
1741
-
1742
  echo $control_manager->add_text_input_control( [
1743
  'label' => __('Container Height','responsive-menu-pro'),
1744
  'type' => 'number',
@@ -1746,7 +1720,7 @@ $options = $option_manager->get_options( $menu_id );
1746
  'name' => 'menu[button_height]',
1747
  'class' => 'no-updates',
1748
  'value' => rmp_get_value($options,'button_height'),
1749
-
1750
  'has_unit' => [
1751
  'unit_type' => 'all',
1752
  'id' => 'rmp-menu-button-height-unit',
@@ -1771,7 +1745,7 @@ $options = $option_manager->get_options( $menu_id );
1771
  ],
1772
  'name' => 'menu[button_background_colour]',
1773
  'value' => rmp_get_value($options,'button_background_colour'),
1774
-
1775
  ] );
1776
 
1777
  echo $control_manager->add_color_control( [
@@ -1779,7 +1753,7 @@ $options = $option_manager->get_options( $menu_id );
1779
  'id' => 'rmp-menu-button-background-colour-hover',
1780
  'name' => 'menu[button_background_colour_hover]',
1781
  'value' => rmp_get_value($options,'button_background_colour_hover'),
1782
-
1783
  ] );
1784
 
1785
  echo $ui_manager->end_group_controls();
@@ -1814,7 +1788,7 @@ $options = $option_manager->get_options( $menu_id );
1814
  ],
1815
  'name' => 'menu[button_transparent_background]',
1816
  'is_checked' => is_rmp_option_checked('on', $options,'button_transparent_background'),
1817
-
1818
  ] );
1819
 
1820
  echo $ui_manager->end_accordion_item();
@@ -1849,11 +1823,25 @@ $options = $option_manager->get_options( $menu_id );
1849
  'text' => __('Specify how you want the button to stick to your page.','responsive-menu-pro')
1850
  ],
1851
  'name' => 'menu[button_position_type]',
1852
- 'options' => array( 'fixed' => 'Fixed' , 'absolute' => 'Absolute', 'relative' => 'Relative' ),
1853
  'value' => rmp_get_value($options,'button_position_type')
1854
  ] );
1855
  echo $ui_manager->end_group_controls();
1856
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1857
  echo $ui_manager->start_group_controls();
1858
  echo $control_manager->add_text_input_control( [
1859
  'label' => __('Distance from Side','responsive-menu-pro'),
@@ -1905,7 +1893,7 @@ $options = $option_manager->get_options( $menu_id );
1905
  ],
1906
  'name' => 'menu[button_push_with_animation]',
1907
  'is_checked' => is_rmp_option_checked('on', $options,'button_push_with_animation'),
1908
-
1909
  ] );
1910
 
1911
 
@@ -1941,8 +1929,8 @@ $options = $option_manager->get_options( $menu_id );
1941
  ]
1942
  ]
1943
  );
1944
-
1945
- echo $ui_manager->start_tab_item(
1946
  [
1947
  'item_id' => 'hamburger-type-line',
1948
  'item_class' => 'title-contents',
@@ -1966,7 +1954,7 @@ $options = $option_manager->get_options( $menu_id );
1966
  'id' => 'rmp-menu-button-line-margin',
1967
  'name' => 'menu[button_line_margin]',
1968
  'value' => rmp_get_value($options,'button_line_margin'),
1969
-
1970
  'tool_tip' => [
1971
  'text' => __('Set the margin between each individual button line and it\'s unit','responsive-menu-pro')
1972
  ],
@@ -2009,7 +1997,7 @@ $options = $option_manager->get_options( $menu_id );
2009
  'id' => 'rmp-menu-button-line-height',
2010
  'name' => 'menu[button_line_height]',
2011
  'value' => rmp_get_value($options,'button_line_height'),
2012
-
2013
  'tool_tip' => [
2014
  'text' => __('Set the height of each individual button line and it\'s unit','responsive-menu-pro')
2015
  ],
@@ -2031,7 +2019,7 @@ $options = $option_manager->get_options( $menu_id );
2031
  'id' => 'rmp-menu-button-line-colour',
2032
  'name' => 'menu[button_line_colour]',
2033
  'value' => rmp_get_value($options,'button_line_colour'),
2034
-
2035
  ] );
2036
 
2037
  echo $control_manager->add_color_control( [
@@ -2039,7 +2027,7 @@ $options = $option_manager->get_options( $menu_id );
2039
  'id' => 'rmp-menu-button-line-colour-hover',
2040
  'name' => 'menu[button_line_colour_hover]',
2041
  'value' => rmp_get_value($options,'button_line_colour_hover'),
2042
-
2043
  ] );
2044
  echo $ui_manager->end_group_controls();
2045
 
@@ -2049,13 +2037,13 @@ $options = $option_manager->get_options( $menu_id );
2049
  'id' => 'rmp-menu-button-line-colour-active',
2050
  'name' => 'menu[button_line_colour_active]',
2051
  'value' => rmp_get_value($options,'button_line_colour_active'),
2052
-
2053
  ] );
2054
 
2055
  echo $ui_manager->end_tab_item();
2056
 
2057
 
2058
- echo $ui_manager->start_tab_item(
2059
  [
2060
  'item_id' => 'hamburger-type-icon',
2061
  'item_class' => 'title-contents',
@@ -2074,7 +2062,7 @@ $options = $option_manager->get_options( $menu_id );
2074
  'text' => __( 'Use a custom font icon instead of standard hamburger lines', 'responsive-menu-pro' )
2075
  ],
2076
  'value' => rmp_get_value($options,'button_font_icon'),
2077
-
2078
  ] );
2079
 
2080
  echo $control_manager->add_icon_picker_control( [
@@ -2090,7 +2078,7 @@ $options = $option_manager->get_options( $menu_id );
2090
 
2091
  echo $ui_manager->end_tab_item();
2092
 
2093
- echo $ui_manager->start_tab_item(
2094
  [
2095
  'item_id' => 'hamburger-type-image',
2096
  'item_class' => 'title-contents',
@@ -2155,7 +2143,7 @@ $options = $option_manager->get_options( $menu_id );
2155
  'type' => 'text',
2156
  'value' => rmp_get_value($options,'button_title_open'),
2157
 
2158
- ] );
2159
 
2160
  echo $ui_manager->end_group_controls();
2161
 
@@ -2207,7 +2195,7 @@ $options = $option_manager->get_options( $menu_id );
2207
  'id' => 'rmp-menu-button-title-line-height',
2208
  'name' => 'menu[button_title_line_height]',
2209
  'value' => rmp_get_value($options,'button_title_line_height'),
2210
-
2211
  'has_unit' => [
2212
  'unit_type' => 'all',
2213
  'id' => 'rmp-menu-button-title-line-height-unit',
@@ -2225,7 +2213,7 @@ $options = $option_manager->get_options( $menu_id );
2225
  'id' => 'rmp-menu-button-text-colour',
2226
  'name' => 'menu[button_text_colour]',
2227
  'value' => rmp_get_value($options,'button_text_colour'),
2228
-
2229
  ] );
2230
 
2231
  echo $ui_manager->end_accordion_item();
@@ -2278,7 +2266,7 @@ $options = $option_manager->get_options( $menu_id );
2278
  <?php echo __('Drag the container items up and down to re-order their appearance on the front end.','responsive-menu-pro'); ?>
2279
  </div>
2280
  <ul class="rmp-accordion-container" id="rmp-menu-ordering-items">
2281
-
2282
  <?php
2283
 
2284
  if ( ! empty( $options['items_order'] ) ) {
@@ -2391,6 +2379,19 @@ $options = $option_manager->get_options( $menu_id );
2391
  'value' => rmp_get_value($options,'menu_container_background_colour'),
2392
  ] );
2393
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2394
  echo $control_manager->add_image_control( [
2395
  'label' => __('Background Image','responsive-menu-pro'),
2396
  'group_classes' => 'full-size',
@@ -2399,7 +2400,7 @@ $options = $option_manager->get_options( $menu_id );
2399
  'picker_id' => "rmp-menu-background-image-selector",
2400
  'name' => 'menu[menu_background_image]',
2401
  'value' => rmp_get_value($options,'menu_background_image'),
2402
-
2403
  ] );
2404
 
2405
  echo $ui_manager->accordion_divider();
@@ -2517,7 +2518,7 @@ $options = $option_manager->get_options( $menu_id );
2517
  ]
2518
  );
2519
 
2520
- $keys = rmp_get_menu_open_close_keys();
2521
 
2522
  echo $control_manager->add_select_control( [
2523
  'label' => __('Hide Menu','responsive-menu-pro'),
@@ -2544,7 +2545,7 @@ $options = $option_manager->get_options( $menu_id );
2544
  ] );
2545
 
2546
  echo $ui_manager->end_accordion_item();
2547
- ?>
2548
  </ul>
2549
  </div>
2550
  </div>
@@ -2581,4 +2582,4 @@ $options = $option_manager->get_options( $menu_id );
2581
  </div>
2582
 
2583
  </body>
2584
- </html>
2
  /**
3
  * This is menu editor page where we can customize the menu with
4
  * all dynamic option and also the preview.
5
+ *
6
  * @since 4.0.0
7
  *
8
  * @package responsive_menu_pro
91
  </span>
92
  <h3 class="rmp-tab-item-title"><?php esc_html_e( 'Menu Styling', 'responsive-menu-pro' ); ?></h3>
93
  </li>
94
+
95
  <li id="rmp-tab-item-header-bar" class="rmp-tab-item" aria-owns="tab-header-bar">
96
  <span class="rmp-tab-item-icon">
97
  <?php echo file_get_contents( RMP_PLUGIN_PATH_V4 .'/assets/admin/icons/svg/header.svg' ); ?>
163
  'label' => __('Change Theme','responsive-menu-pro'),
164
  'id' => 'rmp-change-theme-action',
165
  'group_classes' => 'full-size',
166
+ 'class' => 'rmp-theme-change-button',
167
+ ]
168
  );
169
  echo $ui_manager->accordion_divider();
170
 
173
  'label' => __('Save As Theme','responsive-menu-pro'),
174
  'id' => 'rmp-theme-save-action',
175
  'group_classes' => 'full-size',
176
+ 'class' => 'rmp-theme-save-button',
177
+ ]
178
  );
179
 
180
+
181
  echo $ui_manager->end_accordion_item();
182
 
183
  /**
184
  * Fires after prepare the theme setting section.
185
+ *
186
  * @since 4.1.0
187
+ *
188
  * @param int $menu_id
189
  * @param array $options
190
  */
194
  </ul>
195
  </div>
196
 
197
+ <?php
198
  if ( ! empty( get_option('responsive_menu_version') ) ) {
199
  include_once RMP_PLUGIN_PATH_V4 . '/templates/legacy-settings.php';
200
  }
209
  <div id="tab-advanced-settings" class="rmp-accordions" aria-label="Advanced">
210
  <ul class="rmp-accordion-container">
211
  <?php
212
+
213
  //Device Breakpoints
214
  echo $ui_manager->start_accordion_item( [
215
  'item_header' => [
237
  'item_title' => __('Animation Speeds','responsive-menu-pro'),
238
  ]
239
  ] );
240
+
241
  echo $ui_manager->start_group_controls();
242
+
243
  echo $control_manager->add_text_input_control( [
244
  'label' => __('Colours','responsive-menu-pro'),
245
  'type' => 'text',
246
  'id' => 'rmp-menu-transition-speed',
247
  'name' => 'menu[transition_speed]',
248
  'value' => rmp_get_value($options,'transition_speed'),
249
+
250
  'tool_tip' => [
251
  'text' => __('Specify the speed at which colours transition from standard to active or hover states.','responsive-menu-pro')
252
  ],
261
  'id' => 'rmp-sub-menu-speed',
262
  'name' => 'menu[sub_menu_speed]',
263
  'value' => rmp_get_value($options,'sub_menu_speed'),
264
+
265
  'tool_tip' => [
266
  'text' => __('Specify the speed at which the sub menus transition.','responsive-menu-pro')
267
  ],
272
 
273
  echo $ui_manager->end_group_controls();
274
 
275
+
276
  echo $ui_manager->end_accordion_item();
277
 
278
  echo $ui_manager->start_accordion_item( [
292
  'feature_type' => 'pro',
293
  'name' => 'menu[show_menu_on_page_load]',
294
  'is_checked' => '',
295
+
296
  ] );
297
 
298
  echo $control_manager->add_switcher_control( [
307
  'is_checked' => ''
308
  ] );
309
 
310
+ echo $control_manager->add_switcher_control( [
311
+ 'label' => __('Enable Smooth Scrolling','responsive-menu-pro'),
312
+ 'id' => 'rmp-menu-smooth-scroll-on',
313
+ 'class' => 'rmp-menu-smooth-scroll-on',
314
+ 'tool_tip' => [
315
+ 'text' => __('The webpage will scroll smoothly to their target sections on same page.','responsive-menu-pro'),
316
+ ],
317
+ 'name' => 'smooth_scroll_on',
318
+ 'feature_type' => 'pro',
319
+ 'is_checked' => ''
320
+ ] );
321
+
322
+ echo $control_manager->add_text_input_control( [
323
+ 'label' => __('Scroll Speed','responsive-menu-pro'),
324
+ 'type' => 'number',
325
+ 'id' => 'rmp-menu-smooth-scroll-speed',
326
+ 'name' => 'smooth_scroll_speed',
327
+ 'feature_type' => 'pro',
328
+ 'value' => '0',
329
+ 'has_unit' => [
330
+ 'unit_type' => 'ms',
331
+ ],
332
+ ] );
333
+
334
  echo $ui_manager->end_accordion_item();
335
 
336
  echo $ui_manager->start_accordion_item( [
349
  echo $control_manager->upgrade_notice();
350
 
351
  echo $ui_manager->end_accordion_item();
352
+
353
  ?>
354
  </ul>
355
  </div>
431
  ]);
432
 
433
  echo $ui_manager->start_group_controls();
434
+
435
  echo $control_manager->add_text_input_control( [
436
  'label' => __('Name','responsive-menu-pro'),
437
  'type' => 'text',
519
  <div id="tab-menu-styling" class="rmp-accordions" aria-label="Menu Styling">
520
  <ul class="rmp-accordion-container">
521
  <?php
522
+
523
 
524
  echo $ui_manager->start_accordion_item( [
525
  'item_header' => [
526
+ 'item_title' => __('Menu Settings','responsive-menu-pro'),
527
  ],
528
  'feature_type' => 'semi-pro'
529
  ] );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
530
 
 
 
 
 
 
 
531
 
532
+ echo $control_manager->add_text_input_control( [
533
+ 'label' => __('Custom Walker','responsive-menu-pro'),
534
+ 'group_classes' => 'full-size',
535
+ 'type' => 'text',
536
+ 'id' => 'rmp-custom-walker',
537
+ 'tool_tip' => [
538
+ 'text' => __('Modify the HTML output by using a custom Walker class.','responsive-menu-pro'),
539
+ ],
540
+ 'name' => 'menu[custom_walker]',
541
+ 'value' => rmp_get_value($options,'custom_walker'),
542
+ ] );
543
+
544
+
545
+ echo $ui_manager->start_group_controls();
546
+ echo $control_manager->add_color_control( [
547
+ 'label' => __('Menu Background','responsive-menu-pro'),
548
+ 'id' => 'rmp-menu-background-colour',
549
+ 'name' => 'menu[menu_background_colour]',
550
+ 'value' => rmp_get_value($options,'menu_background_colour'),
551
  ] );
552
+
553
+ echo $control_manager->add_select_control( [
554
+ 'label' => __('Depth Level','responsive-menu-pro'),
555
+ 'id' => 'rmp-menu-depth',
 
 
 
 
 
 
556
  'tool_tip' => [
557
+ 'text' => __('Set the level of nesting for sub menus.','responsive-menu-pro'),
558
  ],
559
+ 'name' => 'menu[menu_depth]',
560
+ 'options' => array( '1'=>1, '2'=>2, '3' => 3, '4'=>4,'5'=>5 ),
561
+ 'value' => rmp_get_value($options,'menu_depth'),
562
  ] );
 
 
 
 
 
 
 
563
 
564
+ echo $ui_manager->end_group_controls();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
565
 
566
+ echo $control_manager->add_group_text_control( [
567
+ 'label' => __('Padding','responsive-menu-pro'),
568
+ 'type' => 'text',
569
+ 'class' => 'rmp-menu-section-padding',
570
+ 'name' => 'menu[menu_section_padding]',
571
+ 'input_options' => [ 'top', 'right', 'bottom', 'left' ],
572
+ 'value_options' => ! empty( $options['menu_section_padding'] ) ? $options['menu_section_padding'] : ''
573
+ ] );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
574
 
575
  echo $ui_manager->end_accordion_item();
576
 
609
  ]
610
  ]
611
  );
612
+
613
+ echo $ui_manager->start_tab_item(
614
  [
615
  'item_id' => 'top-level-item-styling',
616
  'item_class' => 'title-contents',
681
  'item_title' => __('Typography','responsive-menu-pro')
682
  ]
683
  ] );
684
+
685
  echo $control_manager->add_text_input_control( [
686
  'label' => __('Font Size','responsive-menu-pro'),
687
  'type' => 'number',
702
  ],
703
  ] );
704
 
705
+
706
 
707
  echo $control_manager->add_text_input_control( [
708
  'label' => __('Font Family','responsive-menu-pro'),
755
  ],
756
  'name' => 'menu[menu_word_wrap]',
757
  'is_checked' => is_rmp_option_checked('on', $options,'menu_word_wrap'),
758
+
759
  ] );
760
 
761
  echo $ui_manager->end_accordion_item();
780
  'id' => 'rmp-menu-link-hover-color',
781
  'name' => 'menu[menu_link_hover_colour]',
782
  'value' => rmp_get_value($options,'menu_link_hover_colour'),
783
+
784
  'multi_device' => true,
785
  ] );
786
 
789
  'id' => 'rmp-menu-current-link-active-color',
790
  'name' => 'menu[menu_current_link_colour]',
791
  'value' => rmp_get_value($options,'menu_current_link_colour'),
792
+
793
  ] );
794
 
795
  echo $control_manager->add_color_control( [
797
  'id' => 'rmp-menu-current-link-active-hover-color',
798
  'name' => 'menu[menu_current_link_hover_colour]',
799
  'value' => rmp_get_value($options,'menu_current_link_hover_colour'),
800
+
801
  ] );
802
+
803
  echo $ui_manager->end_accordion_item();
804
 
805
  echo $ui_manager->start_accordion_item( [
813
  'id' => 'rmp-menu-item-background-colour',
814
  'name' => 'menu[menu_item_background_colour]',
815
  'value' => rmp_get_value($options,'menu_item_background_colour'),
816
+
817
  'multi_device' => true,
818
 
819
  ] );
823
  'id' => 'rmp-menu-item-background-hover-color',
824
  'name' => 'menu[menu_item_background_hover_colour]',
825
  'value' => rmp_get_value($options,'menu_item_background_hover_colour'),
826
+
827
  'multi_device' => true,
828
  ] );
829
 
832
  'id' => 'rmp-menu-current-item-background-color',
833
  'name' => 'menu[menu_current_item_background_colour]',
834
  'value' => rmp_get_value($options,'menu_current_item_background_colour'),
835
+
836
  ] );
837
 
838
  echo $control_manager->add_color_control( [
840
  'id' => 'rmp-menu-current-item-background-hover-color',
841
  'name' => 'menu[menu_current_item_background_hover_colour]',
842
  'value' => rmp_get_value($options,'menu_current_item_background_hover_colour'),
843
+
844
  ] );
845
  echo $ui_manager->end_accordion_item();
846
 
876
  'id' => 'rmp-menu-item-border-colour',
877
  'name' => 'menu[menu_item_border_colour]',
878
  'value' => rmp_get_value($options,'menu_item_border_colour'),
879
+
880
  ] );
881
 
882
  echo $control_manager->add_color_control( [
884
  'id' => 'rmp-menu-item-border-colour-hover',
885
  'name' => 'menu[menu_item_border_colour_hover]',
886
  'value' => rmp_get_value($options,'menu_item_border_colour_hover'),
887
+
888
  ] );
889
  echo $ui_manager->end_group_controls();
890
+
891
  echo $ui_manager->start_group_controls();
892
  echo $control_manager->add_color_control( [
893
  'label' => __('Active Item','responsive-menu-pro'),
894
  'id' => 'rmp-menu-item-border-colour-active',
895
  'name' => 'menu[menu_current_item_border_colour]',
896
  'value' => rmp_get_value($options,'menu_current_item_border_colour'),
897
+
898
  ] );
899
 
900
  echo $control_manager->add_color_control( [
905
  ],
906
  'name' => 'menu[menu_current_item_border_hover_colour]',
907
  'value' => rmp_get_value($options,'menu_current_item_border_hover_colour'),
908
+
909
  ] );
910
  echo $ui_manager->end_group_controls();
911
 
914
  echo $ui_manager->end_sub_accordion();
915
  echo $ui_manager->end_tab_item();
916
 
917
+ echo $ui_manager->start_tab_item(
918
  [
919
  'item_id' => 'sub-level-item-styling',
920
  'item_class' => 'title-contents',
976
  'options' => array( 'right' => 'Right' , 'left' => 'Left' ),
977
  'value' => rmp_get_value($options,'menu_depth_side'),
978
  ] );
979
+
980
+
981
  echo $ui_manager->start_group_controls();
982
  echo $control_manager->add_text_input_control( [
983
  'label' => __('Child Level 1','responsive-menu-pro'),
985
  'id' => 'rmp-menu-depth-level-1',
986
  'name' => 'menu[menu_depth_1]',
987
  'value' => rmp_get_value($options,'menu_depth_1'),
988
+
989
  'has_unit' => [
990
  'unit_type' => 'all',
991
  'id' => 'rmp-menu-depth-level-1-unit',
995
  'value' => rmp_get_value($options,'menu_depth_1_unit'),
996
  ],
997
  ] );
998
+
999
  echo $control_manager->add_text_input_control( [
1000
  'label' => __('Child Level 2','responsive-menu-pro'),
1001
  'type' => 'number',
1002
  'id' => 'rmp-menu-depth-level-2',
1003
  'name' => 'menu[menu_depth_2]',
1004
  'value' => rmp_get_value($options,'menu_depth_2'),
1005
+
1006
  'has_unit' => [
1007
  'unit_type' => 'all',
1008
  'id' => 'rmp-menu-depth-level-2-unit',
1012
  'value' => rmp_get_value($options,'menu_depth_2_unit'),
1013
  ],
1014
  ] );
1015
+
1016
  echo $ui_manager->end_group_controls();
1017
 
1018
  echo $ui_manager->start_group_controls();
1022
  'id' => 'rmp-menu-depth-level-3',
1023
  'name' => 'menu[menu_depth_3]',
1024
  'value' => rmp_get_value($options,'menu_depth_3'),
1025
+
1026
  'has_unit' => [
1027
  'unit_type' => 'all',
1028
  'id' => 'rmp-menu-depth-level-3-unit',
1039
  'id' => 'rmp-menu-depth-level-4',
1040
  'name' => 'menu[menu_depth_4]',
1041
  'value' => rmp_get_value($options,'menu_depth_4'),
1042
+
1043
  'has_unit' => [
1044
  'unit_type' => 'all',
1045
  'id' => 'rmp-menu-depth-level-4-unit',
1064
  'value' => rmp_get_value($options,'submenu_item_background_colour'),
1065
  'multi_device' => true,
1066
  ] );
1067
+
1068
  echo $control_manager->add_color_control( [
1069
  'label' => __('Hover','responsive-menu-pro'),
1070
  'id' => 'rmp-submenu-item-background-hover-color',
1071
  'name' => 'menu[submenu_item_background_hover_colour]',
1072
  'value' => rmp_get_value($options,'submenu_item_background_hover_colour'),
1073
+
1074
  'multi_device' => true,
1075
  ] );
1076
+
1077
  echo $ui_manager->start_group_controls();
1078
  echo $control_manager->add_color_control( [
1079
  'label' => __('Active Item','responsive-menu-pro'),
1080
  'id' => 'rmp-submenu-current-item-background-color',
1081
  'name' => 'menu[submenu_current_item_background_colour]',
1082
  'value' => rmp_get_value($options,'submenu_current_item_background_colour'),
1083
+
1084
  ] );
1085
+
1086
  echo $control_manager->add_color_control( [
1087
  'label' => __('Active Item Hover','responsive-menu-pro'),
1088
  'id' => 'rmp-submenu-current-item-background-hover-color',
1089
  'name' => 'menu[submenu_current_item_background_hover_colour]',
1090
  'value' => rmp_get_value($options,'submenu_current_item_background_hover_colour'),
1091
+
1092
  ] );
1093
  echo $ui_manager->end_group_controls();
1094
  echo $ui_manager->end_accordion_item();
1116
  'value' => rmp_get_value($options,'submenu_border_width_unit'),
1117
  ],
1118
  ] );
1119
+
1120
  echo $ui_manager->start_group_controls();
1121
  echo $control_manager->add_color_control( [
1122
  'label' => __('Normal','responsive-menu-pro'),
1123
  'id' => 'rmp-submenu-item-border-colour',
1124
  'name' => 'menu[submenu_item_border_colour]',
1125
  'value' => rmp_get_value($options,'submenu_item_border_colour'),
1126
+
1127
  ] );
1128
+
1129
  echo $control_manager->add_color_control( [
1130
  'label' => __('Hover','responsive-menu-pro'),
1131
  'id' => 'rmp-submenu-item-border-colour-hover',
1132
  'name' => 'menu[submenu_item_border_colour_hover]',
1133
  'value' => rmp_get_value($options,'submenu_item_border_colour_hover'),
1134
+
1135
  ] );
1136
  echo $ui_manager->end_group_controls();
1137
 
1142
  'name' => 'menu[submenu_current_item_border_colour]',
1143
  'value' => rmp_get_value($options,'submenu_current_item_border_colour')
1144
  ] );
1145
+
1146
  echo $control_manager->add_color_control( [
1147
  'label' => __('Active Item Hover','responsive-menu-pro'),
1148
  'id' => 'rmp-submenu-current-item-border-hover-colour',
1151
  ],
1152
  'name' => 'menu[submenu_current_item_border_hover_colour]',
1153
  'value' => rmp_get_value($options,'submenu_current_item_border_hover_colour'),
1154
+
1155
  ] );
1156
  echo $ui_manager->end_group_controls();
1157
+
1158
  echo $ui_manager->end_accordion_item();
1159
  echo $ui_manager->start_accordion_item( [
1160
  'item_header' => [
1179
  'multi_device' => true,
1180
  ],
1181
  ] );
1182
+
1183
  echo $control_manager->add_text_input_control( [
1184
  'label' => __('Font Family','responsive-menu-pro'),
1185
  'type' => 'text',
1189
  'value' => rmp_get_value($options,'submenu_font'),
1190
  'multi_device' => true,
1191
  ] );
1192
+
1193
  echo $ui_manager->start_group_controls();
1194
 
1195
  echo $control_manager->add_select_control( [
1212
  'unit_type' => 'px',
1213
  ],
1214
  ] );
1215
+
1216
  echo $ui_manager->end_group_controls();
1217
 
1218
 
1237
  'name' => 'menu[submenu_link_colour]',
1238
  'value' => rmp_get_value($options,'submenu_link_colour'),
1239
  'multi_device' => true,
1240
+
1241
  ] );
1242
 
1243
  echo $control_manager->add_color_control( [
1266
 
1267
  echo $ui_manager->end_accordion_item();
1268
  echo $ui_manager->end_sub_accordion();
1269
+
1270
  echo $ui_manager->end_tab_item();
1271
 
1272
  echo $ui_manager->end_tabs_controls_panel();
1303
  ]
1304
  );
1305
 
1306
+ echo $ui_manager->start_tab_item(
1307
  [
1308
  'item_id' => 'menu-item-arrow-text',
1309
  'item_class' => 'title-contents',
1316
  'id' => 'rmp-menu-inactive-arrow-shape',
1317
  'name' => 'menu[inactive_arrow_shape]',
1318
  'value' => rmp_get_value($options,'inactive_arrow_shape'),
1319
+
1320
  ] );
1321
 
1322
  echo $control_manager->add_text_input_control( [
1325
  'id' => 'rmp-menu-active-arrow-shape',
1326
  'name' => 'menu[active_arrow_shape]',
1327
  'value' => rmp_get_value($options,'active_arrow_shape'),
1328
+
1329
  ] );
1330
  echo $ui_manager->end_group_controls();
1331
  echo $ui_manager->end_tab_item();
1332
 
1333
+ echo $ui_manager->start_tab_item(
1334
  [
1335
  'item_id' => 'menu-item-arrow-icon',
1336
  'item_class' => 'title-contents',
1337
  ]
1338
  );
1339
+
1340
 
1341
  echo $control_manager->add_icon_picker_control( [
1342
  'label' => __('Font Icon','responsive-menu-pro'),
1347
  'picker_id' => "rmp-menu-inactive-arrow-font-icon-selector",
1348
  'name' => 'menu[inactive_arrow_font_icon]',
1349
  'value' => rmp_get_value($options,'inactive_arrow_font_icon'),
1350
+
1351
  ] );
1352
 
1353
  echo $control_manager->add_icon_picker_control( [
1358
  'picker_id' => "rmp-menu-active-arrow-font-icon-selector",
1359
  'name' => 'menu[active_arrow_font_icon]',
1360
  'value' => rmp_get_value($options,'active_arrow_font_icon'),
1361
+
1362
  ] );
1363
 
1364
  echo $ui_manager->end_tab_item();
1365
 
1366
 
1367
+ echo $ui_manager->start_tab_item(
1368
  [
1369
  'item_id' => 'menu-item-arrow-image',
1370
  'item_class' => 'title-style',
1379
  'picker_id' => "rmp-menu-inactive-arrow-image-selector",
1380
  'name' => 'menu[inactive_arrow_image]',
1381
  'value' => rmp_get_value($options,'inactive_arrow_image'),
1382
+
1383
  ] );
1384
 
1385
  echo $control_manager->add_image_control( [
1390
  'picker_id' => "rmp-menu-active-arrow-image-selector",
1391
  'name' => 'menu[active_arrow_image]',
1392
  'value' => rmp_get_value($options,'active_arrow_image'),
1393
+
1394
  ] );
1395
  echo $ui_manager->end_tab_item();
1396
 
1466
  'id' => 'rmp-menu-sub-arrow-shape-colour',
1467
  'name' => 'menu[menu_sub_arrow_shape_colour]',
1468
  'value' => rmp_get_value($options,'menu_sub_arrow_shape_colour'),
1469
+
1470
  ] );
1471
+
1472
  echo $control_manager->add_color_control( [
1473
  'label' => __('Hover','responsive-menu-pro'),
1474
  'id' => 'rmp-menu-sub-arrow-shape-hover-colour',
1475
  'name' => 'menu[menu_sub_arrow_shape_hover_colour]',
1476
  'value' => rmp_get_value($options,'menu_sub_arrow_shape_hover_colour'),
1477
+
1478
  ] );
1479
+
1480
  echo $ui_manager->end_group_controls();
1481
 
1482
  echo $ui_manager->start_group_controls();
1486
  'id' => 'rmp-menu-sub-arrow-shape-colour-active',
1487
  'name' => 'menu[menu_sub_arrow_shape_colour_active]',
1488
  'value' => rmp_get_value($options,'menu_sub_arrow_shape_colour_active'),
1489
+
1490
  ] );
1491
+
1492
  echo $control_manager->add_color_control( [
1493
  'label' => __('Active Item Hover','responsive-menu-pro'),
1494
  'id' => 'rmp-menu-sub-arrow-shape-hover-colour-active',
1495
  'name' => 'menu[menu_sub_arrow_shape_hover_colour_active]',
1496
  'value' => rmp_get_value($options,'menu_sub_arrow_shape_hover_colour_active'),
1497
+
1498
  ] );
1499
  echo $ui_manager->end_group_controls();
1500
 
1529
  'id' => 'rmp-menu-sub-arrow-border-colour',
1530
  'name' => 'menu[menu_sub_arrow_border_colour]',
1531
  'value' => rmp_get_value($options,'menu_sub_arrow_border_colour'),
1532
+
1533
  ] );
1534
 
1535
  echo $control_manager->add_color_control( [
1537
  'id' => 'rmp-menu-sub-arrow-border-hover-colour',
1538
  'name' => 'menu[menu_sub_arrow_border_hover_colour]',
1539
  'value' => rmp_get_value($options,'menu_sub_arrow_border_hover_colour'),
1540
+
1541
  ] );
1542
  echo $ui_manager->end_group_controls();
1543
 
1547
  'id' => 'rmp-menu-sub-arrow-border-colour-active',
1548
  'name' => 'menu[menu_sub_arrow_border_colour_active]',
1549
  'value' => rmp_get_value($options,'menu_sub_arrow_border_colour_active'),
1550
+
1551
  ] );
1552
 
1553
  echo $control_manager->add_color_control( [
1555
  'id' => 'rmp-menu-sub-arrow-border-hover-colour-active',
1556
  'name' => 'menu[menu_sub_arrow_border_hover_colour_active]',
1557
  'value' => rmp_get_value($options,'menu_sub_arrow_border_hover_colour_active'),
1558
+
1559
  ] );
1560
  echo $ui_manager->end_group_controls();
1561
 
1574
  'id' => 'rmp-menu-sub-arrow-background-color',
1575
  'name' => 'menu[menu_sub_arrow_background_colour]',
1576
  'value' => rmp_get_value($options,'menu_sub_arrow_background_colour'),
1577
+
1578
  ] );
1579
 
1580
  echo $control_manager->add_color_control( [
1582
  'id' => 'rmp-menu-sub-arrow-background-hover-colour',
1583
  'name' => 'menu[menu_sub_arrow_background_hover_colour]',
1584
  'value' => rmp_get_value($options,'menu_sub_arrow_background_hover_colour'),
1585
+
1586
  ] );
1587
  echo $ui_manager->end_group_controls();
1588
  echo $ui_manager->start_group_controls();
1592
  'id' => 'rmp-menu-sub-arrow-background-colour-active',
1593
  'name' => 'menu[menu_sub_arrow_background_colour_active]',
1594
  'value' => rmp_get_value($options,'menu_sub_arrow_background_colour_active'),
1595
+
1596
  ] );
1597
 
1598
  echo $control_manager->add_color_control( [
1600
  'id' => 'rmp-menu-sub-arrow-background-hover-colour-active',
1601
  'name' => 'menu[menu_sub_arrow_background_hover_colour_active]',
1602
  'value' => rmp_get_value($options,'menu_sub_arrow_background_hover_colour_active'),
1603
+
1604
  ] );
1605
  echo $ui_manager->end_group_controls();
1606
 
1622
 
1623
  echo $control_manager->upgrade_notice();
1624
  echo $ui_manager->end_accordion_item();
1625
+
1626
 
1627
  echo $ui_manager->start_accordion_item( [
1628
  'item_header' => [
1630
  ]
1631
  ] );
1632
 
1633
+ echo $control_manager->add_switcher_control( [
1634
+ 'label' => __('Item Descriptions','responsive-menu-pro'),
1635
+ 'id' => 'rmp-menu-submenu-descriptions-on',
1636
+ 'tool_tip' => [
1637
+ 'text' => __('Show the description text of menu items. Description text should be set while creating WordPress menus.','responsive-menu-pro'),
1638
+ ],
1639
+ 'name' => 'menu[submenu_descriptions_on]',
1640
+ 'is_checked' => is_rmp_option_checked('on', $options,'submenu_descriptions_on'),
1641
+ ] );
1642
+
1643
  echo $control_manager->add_switcher_control( [
1644
  'label' => __('Use Accordion','responsive-menu-pro'),
1645
  'id' => 'rmp-menu-accordion-animation',
1646
  'class' => 'rmp-menu-accordion-animation',
1647
  'name' => 'menu[accordion_animation]',
1648
  'is_checked' => is_rmp_option_checked('on', $options,'accordion_animation'),
1649
+
1650
  ] );
1651
 
1652
  echo $control_manager->add_switcher_control( [
1655
  'class' => 'rmp-menu-auto-expand-all-submenus',
1656
  'name' => 'menu[auto_expand_all_submenus]',
1657
  'is_checked' => is_rmp_option_checked('on', $options,'auto_expand_all_submenus'),
1658
+
1659
  ] );
1660
 
1661
  echo $control_manager->add_switcher_control( [
1664
  'class' => 'rmp-menu-auto-expand-current-submenus',
1665
  'name' => 'menu[auto_expand_current_submenus]',
1666
  'is_checked' => is_rmp_option_checked('on', $options,'auto_expand_current_submenus'),
1667
+
1668
  ] );
1669
 
1670
  echo $control_manager->add_switcher_control( [
1673
  'class' => 'rmp-menu-menu-item-click-to-trigger-submenu',
1674
  'name' => 'menu[menu_item_click_to_trigger_submenu]',
1675
  'is_checked' => is_rmp_option_checked('on', $options,'menu_item_click_to_trigger_submenu'),
1676
+
1677
  ] );
1678
 
1679
 
1692
  'item_title' => __('Button Style','responsive-menu-pro'),
1693
  ]
1694
  ] );
1695
+
1696
  echo $ui_manager->start_group_controls();
1697
 
1698
  echo $control_manager->add_text_input_control( [
1712
  'value' => rmp_get_value($options,'button_width_unit'),
1713
  ],
1714
  ] );
1715
+
1716
  echo $control_manager->add_text_input_control( [
1717
  'label' => __('Container Height','responsive-menu-pro'),
1718
  'type' => 'number',
1720
  'name' => 'menu[button_height]',
1721
  'class' => 'no-updates',
1722
  'value' => rmp_get_value($options,'button_height'),
1723
+
1724
  'has_unit' => [
1725
  'unit_type' => 'all',
1726
  'id' => 'rmp-menu-button-height-unit',
1745
  ],
1746
  'name' => 'menu[button_background_colour]',
1747
  'value' => rmp_get_value($options,'button_background_colour'),
1748
+
1749
  ] );
1750
 
1751
  echo $control_manager->add_color_control( [
1753
  'id' => 'rmp-menu-button-background-colour-hover',
1754
  'name' => 'menu[button_background_colour_hover]',
1755
  'value' => rmp_get_value($options,'button_background_colour_hover'),
1756
+
1757
  ] );
1758
 
1759
  echo $ui_manager->end_group_controls();
1788
  ],
1789
  'name' => 'menu[button_transparent_background]',
1790
  'is_checked' => is_rmp_option_checked('on', $options,'button_transparent_background'),
1791
+
1792
  ] );
1793
 
1794
  echo $ui_manager->end_accordion_item();
1823
  'text' => __('Specify how you want the button to stick to your page.','responsive-menu-pro')
1824
  ],
1825
  'name' => 'menu[button_position_type]',
1826
+ 'options' => array( 'fixed' => 'Fixed' , 'absolute' => 'Absolute', 'relative' => 'Relative', 'inside-element' => 'Custom Selector' ),
1827
  'value' => rmp_get_value($options,'button_position_type')
1828
  ] );
1829
  echo $ui_manager->end_group_controls();
1830
 
1831
+ echo $control_manager->add_text_input_control( [
1832
+ 'label' => __('Element selector','responsive-menu-pro'),
1833
+ 'id' => 'rmp-menu-hamburger-selector',
1834
+ 'type' => 'text',
1835
+ 'group_classes' => 'full-size rmp-menu-hamburger-selector-div',
1836
+ 'class' => '',
1837
+ 'placeholder' => __('e.g. #header, .header','responsive-menu-pro'),
1838
+ 'name' => 'menu[hamburger_position_selector]',
1839
+ 'value' => rmp_get_value($options,'hamburger_position_selector'),
1840
+ 'tool_tip'=> [
1841
+ 'text' => __( 'Show hamburger inside element.', 'responsive-menu-pro' )
1842
+ ]
1843
+ ] );
1844
+
1845
  echo $ui_manager->start_group_controls();
1846
  echo $control_manager->add_text_input_control( [
1847
  'label' => __('Distance from Side','responsive-menu-pro'),
1893
  ],
1894
  'name' => 'menu[button_push_with_animation]',
1895
  'is_checked' => is_rmp_option_checked('on', $options,'button_push_with_animation'),
1896
+
1897
  ] );
1898
 
1899
 
1929
  ]
1930
  ]
1931
  );
1932
+
1933
+ echo $ui_manager->start_tab_item(
1934
  [
1935
  'item_id' => 'hamburger-type-line',
1936
  'item_class' => 'title-contents',
1954
  'id' => 'rmp-menu-button-line-margin',
1955
  'name' => 'menu[button_line_margin]',
1956
  'value' => rmp_get_value($options,'button_line_margin'),
1957
+
1958
  'tool_tip' => [
1959
  'text' => __('Set the margin between each individual button line and it\'s unit','responsive-menu-pro')
1960
  ],
1997
  'id' => 'rmp-menu-button-line-height',
1998
  'name' => 'menu[button_line_height]',
1999
  'value' => rmp_get_value($options,'button_line_height'),
2000
+
2001
  'tool_tip' => [
2002
  'text' => __('Set the height of each individual button line and it\'s unit','responsive-menu-pro')
2003
  ],
2019
  'id' => 'rmp-menu-button-line-colour',
2020
  'name' => 'menu[button_line_colour]',
2021
  'value' => rmp_get_value($options,'button_line_colour'),
2022
+
2023
  ] );
2024
 
2025
  echo $control_manager->add_color_control( [
2027
  'id' => 'rmp-menu-button-line-colour-hover',
2028
  'name' => 'menu[button_line_colour_hover]',
2029
  'value' => rmp_get_value($options,'button_line_colour_hover'),
2030
+
2031
  ] );
2032
  echo $ui_manager->end_group_controls();
2033
 
2037
  'id' => 'rmp-menu-button-line-colour-active',
2038
  'name' => 'menu[button_line_colour_active]',
2039
  'value' => rmp_get_value($options,'button_line_colour_active'),
2040
+
2041
  ] );
2042
 
2043
  echo $ui_manager->end_tab_item();
2044
 
2045
 
2046
+ echo $ui_manager->start_tab_item(
2047
  [
2048
  'item_id' => 'hamburger-type-icon',
2049
  'item_class' => 'title-contents',
2062
  'text' => __( 'Use a custom font icon instead of standard hamburger lines', 'responsive-menu-pro' )
2063
  ],
2064
  'value' => rmp_get_value($options,'button_font_icon'),
2065
+
2066
  ] );
2067
 
2068
  echo $control_manager->add_icon_picker_control( [
2078
 
2079
  echo $ui_manager->end_tab_item();
2080
 
2081
+ echo $ui_manager->start_tab_item(
2082
  [
2083
  'item_id' => 'hamburger-type-image',
2084
  'item_class' => 'title-contents',
2143
  'type' => 'text',
2144
  'value' => rmp_get_value($options,'button_title_open'),
2145
 
2146
+ ] );
2147
 
2148
  echo $ui_manager->end_group_controls();
2149
 
2195
  'id' => 'rmp-menu-button-title-line-height',
2196
  'name' => 'menu[button_title_line_height]',
2197
  'value' => rmp_get_value($options,'button_title_line_height'),
2198
+
2199
  'has_unit' => [
2200
  'unit_type' => 'all',
2201
  'id' => 'rmp-menu-button-title-line-height-unit',
2213
  'id' => 'rmp-menu-button-text-colour',
2214
  'name' => 'menu[button_text_colour]',
2215
  'value' => rmp_get_value($options,'button_text_colour'),
2216
+
2217
  ] );
2218
 
2219
  echo $ui_manager->end_accordion_item();
2266
  <?php echo __('Drag the container items up and down to re-order their appearance on the front end.','responsive-menu-pro'); ?>
2267
  </div>
2268
  <ul class="rmp-accordion-container" id="rmp-menu-ordering-items">
2269
+
2270
  <?php
2271
 
2272
  if ( ! empty( $options['items_order'] ) ) {
2379
  'value' => rmp_get_value($options,'menu_container_background_colour'),
2380
  ] );
2381
 
2382
+ echo $control_manager->add_shortcut_link( [
2383
+ 'label' => 'Change Menu Background',
2384
+ 'target' => 'tab-menu-styling',
2385
+ 'accordion_id' => 'ui-id-36'
2386
+ ] );
2387
+
2388
+ echo $control_manager->add_shortcut_link( [
2389
+ 'label' => 'Style Menu Items',
2390
+ 'target' => 'tab-menu-styling',
2391
+ 'accordion_id' => 'ui-id-40',
2392
+ 'sub_accordion_id' => 'ui-id-52'
2393
+ ] );
2394
+
2395
  echo $control_manager->add_image_control( [
2396
  'label' => __('Background Image','responsive-menu-pro'),
2397
  'group_classes' => 'full-size',
2400
  'picker_id' => "rmp-menu-background-image-selector",
2401
  'name' => 'menu[menu_background_image]',
2402
  'value' => rmp_get_value($options,'menu_background_image'),
2403
+
2404
  ] );
2405
 
2406
  echo $ui_manager->accordion_divider();
2518
  ]
2519
  );
2520
 
2521
+ $keys = rmp_get_menu_open_close_keys();
2522
 
2523
  echo $control_manager->add_select_control( [
2524
  'label' => __('Hide Menu','responsive-menu-pro'),
2545
  ] );
2546
 
2547
  echo $ui_manager->end_accordion_item();
2548
+ ?>
2549
  </ul>
2550
  </div>
2551
  </div>
2582
  </div>
2583
 
2584
  </body>
2585
+ </html>