WP Table Builder – WordPress Table Plugin - Version 1.3.0

Version Description

  • FIX: Fixed an issue affecting some PHP versions to not parse version control manager files.
  • IMPROVEMENT: Sorting functionality.
Download this release

Release Info

Developer imtiazrayhan
Plugin Icon 128x128 WP Table Builder – WordPress Table Plugin
Version 1.3.0
Comparing to
See all releases

Code changes from version 1.1.8 to 1.3.0

Files changed (48) hide show
  1. inc/admin/base/controls-stack.php +54 -17
  2. inc/admin/base/element-base-object.php +98 -0
  3. inc/admin/class-accessibility.php +56 -0
  4. inc/admin/class-admin-menu.php +96 -24
  5. inc/admin/class-admin.php +1 -1
  6. inc/admin/class-export.php +2 -2
  7. inc/admin/class-wptb-listing.php +84 -38
  8. inc/admin/controls/base-control.php +9 -1
  9. inc/admin/controls/control-alignment.php +77 -34
  10. inc/admin/controls/control-button.php +6 -1
  11. inc/admin/controls/control-button2.php +109 -0
  12. inc/admin/controls/control-color.php +98 -22
  13. inc/admin/controls/control-data-mule.php +54 -0
  14. inc/admin/controls/control-html-output.php +53 -0
  15. inc/admin/controls/control-icon-select.php +63 -0
  16. inc/admin/controls/control-media-select.php +57 -0
  17. inc/admin/controls/control-named-toggle.php +62 -0
  18. inc/admin/controls/control-range.php +70 -0
  19. inc/admin/controls/control-section-group-collapse-end.php +54 -0
  20. inc/admin/controls/control-section-group-collapse-start.php +86 -0
  21. inc/admin/controls/control-section-group-collapse.php +87 -0
  22. inc/admin/controls/control-section-group-tab-content-end.php +63 -0
  23. inc/admin/controls/control-section-group-tabbed-start.php +124 -0
  24. inc/admin/controls/control-section-group-tabbed.php +87 -0
  25. inc/admin/controls/control-section-header.php +3 -2
  26. inc/admin/controls/control-select2.php +61 -0
  27. inc/admin/controls/control-sides.php +79 -0
  28. inc/admin/controls/control-size.php +6 -6
  29. inc/admin/controls/control-text.php +52 -15
  30. inc/admin/controls/control-toggle.php +17 -12
  31. inc/admin/controls/control-toggle2.php +278 -0
  32. inc/admin/controls/control-url.php +40 -9
  33. inc/admin/css/admin.css +2345 -233
  34. inc/admin/element-classes/base/element-base-object.php +0 -112
  35. inc/admin/element-classes/base/element-base.php +136 -0
  36. inc/admin/element-classes/element-scripts/button-element.js +163 -86
  37. inc/admin/element-classes/element-scripts/custom-html-element.js +94 -68
  38. inc/admin/element-classes/element-scripts/list-element.js +1 -1
  39. inc/admin/element-classes/element-scripts/text-element.js +5 -0
  40. inc/admin/element-classes/elements/button-element.php +219 -120
  41. inc/admin/element-classes/elements/custom-html-element.php +4 -4
  42. inc/admin/element-classes/elements/image-element.php +2 -2
  43. inc/admin/element-classes/elements/list-element.php +33 -3
  44. inc/admin/element-classes/elements/shortcode-element.php +2 -2
  45. inc/admin/element-classes/elements/star-rating-element.php +4 -4
  46. inc/admin/element-classes/elements/text-element.php +13 -2
  47. inc/admin/js/WPTB_Admin_Settings.js +59 -31
  48. inc/admin/js/WPTB_Admin_Settings.js.map +1 -0
inc/admin/base/controls-stack.php CHANGED
@@ -20,6 +20,13 @@ if ( ! defined( 'WPINC' ) ) {
20
  * @abstract
21
  */
22
  abstract class Controls_Stack extends Base_Object {
 
 
 
 
 
 
 
23
 
24
  /**
25
  * Get stack.
@@ -63,25 +70,55 @@ abstract class Controls_Stack extends Base_Object {
63
  */
64
  public function init_controls() {
65
  $this->_register_controls();
 
66
  }
67
-
68
  /**
69
- * Add new control to stack.
70
- *
71
- * Register a single control to allow the user to set/update data.
72
- *
73
- * This method should be used inside `_register_controls()`.
74
- *
75
- * @since 1.1.2
76
- * @access public
77
- *
78
- * @param string $id Control ID.
79
- * @param array $args Control arguments.
80
- *
81
- * @return bool True if control added, False otherwise.
82
- */
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
83
 
84
- public function add_control( $id, array $args ) {
85
- return Init::instance()->controls_manager->add_control_to_stack( $this, $id, $args );
 
 
 
 
86
  }
87
  }
20
  * @abstract
21
  */
22
  abstract class Controls_Stack extends Base_Object {
23
+
24
+ protected $defaultControlArgs = [
25
+ 'elementOptionsContainerOn' => 'true',
26
+ 'elementOptionContainerOn' => 'true',
27
+ 'elementOptionsGroupId' => 'element-options-group',
28
+ 'elementOptionClass' => 'wptb-element-option'
29
+ ];
30
 
31
  /**
32
  * Get stack.
70
  */
71
  public function init_controls() {
72
  $this->_register_controls();
73
+ do_action( 'wp-table-builder/register_controls/' . $this->get_name(), $this );
74
  }
75
+
76
  /**
77
+ * Return default control args
78
+ * @since 1.1.2
79
+ * @access public
80
+ *
81
+ * @return array
82
+ */
83
+ public function getDefaultControlArgs() {
84
+ return $this->defaultControlArgs;
85
+ }
86
+
87
+ /**
88
+ * Change default control args
89
+ *
90
+ * @param $name
91
+ * @param $value
92
+ * @since 1.1.2
93
+ * @access public
94
+ *
95
+ */
96
+ public function setDefaultControlArg( $name, $value ) {
97
+ $this->defaultControlArgs[$name] = $value;
98
+ }
99
+
100
+ /**
101
+ * Add new control to stack.
102
+ *
103
+ * Register a single control to allow the user to set/update data.
104
+ *
105
+ * This method should be used inside `_register_controls()`.
106
+ *
107
+ * @param string $id Control ID.
108
+ * @param array $args Control arguments.
109
+ *
110
+ * @param int $control_pos
111
+ * @return bool True if control added, False otherwise.
112
+ * @since 1.1.2
113
+ * @access public
114
+ *
115
+ */
116
 
117
+ public function add_control( $id, array $args, $control_pos = 0 ) {
118
+ $defaultControlArgs = $this->getDefaultControlArgs();
119
+ if( $defaultControlArgs && is_array( $defaultControlArgs ) ) {
120
+ $args = array_merge( $defaultControlArgs, $args );
121
+ }
122
+ return Init::instance()->controls_manager->add_control_to_stack( $this, $id, $args, $control_pos );
123
  }
124
  }
inc/admin/base/element-base-object.php ADDED
@@ -0,0 +1,98 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ namespace WP_Table_Builder\Inc\Admin\Base;
4
+
5
+ use WP_Table_Builder\Inc\Admin\Base\Controls_Stack;
6
+
7
+
8
+ // If this file is called directly, abort.
9
+ if ( ! defined( 'WPINC' ) ) {
10
+ die;
11
+ }
12
+
13
+ /**
14
+ * WP Table Builder element base.
15
+ *
16
+ * An abstract class that provides the needed properties and methods to
17
+ * manage and handle elements.
18
+ *
19
+ * @since 1.1.2
20
+ * @abstract
21
+ */
22
+ abstract class Element_Base_Object extends Controls_Stack {
23
+
24
+ /**
25
+ * Include file with js script for element
26
+ *
27
+ * @since 1.1.2
28
+ * @access protected
29
+ */
30
+ public function element_script() {
31
+ }
32
+
33
+ /**
34
+ * Include data to be used with element script.
35
+ *
36
+ * Included data will be formatted in JSON format and will follow the naming convention of 'wptb${camelCasedElementName}Data' within element script context.
37
+ */
38
+ public function script_data() {
39
+ }
40
+
41
+ /**
42
+ * Output a js line including script data as a variable to be used within the context of element's script.
43
+ * Included data will be in JSON format and will follow the naming convention of 'wptb${camelCasedElementName}Data'.
44
+ *
45
+ * @private
46
+ * @param bool $echoToOut whether to echo to output buffer or return the value
47
+ *
48
+ * @return string script data if $echoToOut is false
49
+ */
50
+ private function output_script_data( $echoToOut = true ) {
51
+ $prefix = 'wptb';
52
+ $postfix = 'data';
53
+ $splitName = explode( '_', $this->get_name() );
54
+
55
+ // turn element name into camelcase format
56
+ $camelCased = implode( array_map( 'ucfirst', $splitName ) );
57
+
58
+ // js variable name
59
+ $js_const_name = $prefix . $camelCased . ucfirst( $postfix );
60
+
61
+ $data_encoded = json_encode( $this->script_data() );
62
+
63
+ // prepared js line ready to inject into a js file
64
+ $js_line = "const {$js_const_name}= JSON.parse('{$data_encoded}');";
65
+
66
+ if ( $echoToOut ) {
67
+ echo $js_line;
68
+ } else {
69
+ return $js_line;
70
+ }
71
+ }
72
+
73
+ /**
74
+ * Output element script.
75
+ *
76
+ * @since 1.1.2
77
+ * @access public
78
+ */
79
+ public function output_scripts() {
80
+ $directory_script = $this->element_script();
81
+ if ( $directory_script && file_exists( $directory_script ) ) {
82
+ ?>
83
+ <script type="text/javascript">
84
+ WPTB_ElementsScriptsLauncher['<?php echo $this->get_name(); ?>'] = function (element) {
85
+ <?php $this->output_script_data(); ?>
86
+ <?php include $directory_script; ?>
87
+ <?php
88
+ $directory_script_pro = apply_filters( 'wp-table-builder/element-scripts-launcher/' . $this->get_name(), '' );
89
+ if ( $directory_script_pro && file_exists( $directory_script_pro ) ) {
90
+ include $directory_script_pro;
91
+ }
92
+ ?>
93
+ }
94
+ </script>
95
+ <?php
96
+ }
97
+ }
98
+ }
inc/admin/class-accessibility.php ADDED
@@ -0,0 +1,56 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ namespace WP_Table_Builder\Inc\Admin;
4
+
5
+ // if called directly, abort
6
+ use WP_Table_Builder\Inc\Admin\Controls\Control_Section_Group_Collapse;
7
+ use WP_Table_Builder\Inc\Admin\Managers\Controls_Manager;
8
+ use function add_action;
9
+
10
+ if ( ! defined( 'WPINC' ) ) {
11
+ die;
12
+ }
13
+
14
+ /**
15
+ * Class Accessibility.
16
+ *
17
+ * Accessibility related options/controls.
18
+ * @package WP_Table_Builder\Inc\Admin
19
+ */
20
+ class Accessibility {
21
+
22
+ /**
23
+ * Accessibility constructor.
24
+ */
25
+ public function __construct() {
26
+ add_action( 'wp-table-builder/table_settings_registered', [ $this, 'add_controls' ], 1, 1 );
27
+ }
28
+
29
+ public function add_controls( $context ) {
30
+ $accessibility_group_controls = [
31
+ 'accessibilityRoles' => [
32
+ 'label' => esc_html__( 'Table Role', 'wp-table-builder' ),
33
+ 'type' => Controls_Manager::SELECT2,
34
+ 'options' => [
35
+ 'table' => 'table',
36
+ 'presentation' => 'presentation',
37
+ 'list' => 'list',
38
+ 'rowgroup' => 'rowgroup',
39
+ ],
40
+ 'defaultValue' => 'table',
41
+ 'selectors' => [
42
+ [
43
+ 'query' => '{{{data.container}}}',
44
+ 'type' => Controls_Manager::ATTRIBUTE,
45
+ 'key' => 'role'
46
+ ]
47
+ ]
48
+ ]
49
+ ];
50
+
51
+ Control_Section_Group_Collapse::add_section( 'table_settings_accessibility', esc_html__( 'Accessibility', 'wp-table-builder' ), $accessibility_group_controls, [
52
+ $context,
53
+ 'add_control'
54
+ ], false );
55
+ }
56
+ }
inc/admin/class-admin-menu.php CHANGED
@@ -21,6 +21,12 @@ use function wp_localize_script;
21
  */
22
  class Admin_Menu {
23
 
 
 
 
 
 
 
24
  /**
25
  * Primary class constructor.
26
  *
@@ -28,6 +34,13 @@ class Admin_Menu {
28
  */
29
  public function __construct() {
30
  // Let's make some menus.
 
 
 
 
 
 
 
31
  add_action( 'admin_menu', array( $this, 'register_menus' ), 9 );
32
  add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_scripts' ) );
33
  add_action( 'wp_ajax_create_table', array( $this, 'create_table' ) );
@@ -37,7 +50,7 @@ class Admin_Menu {
37
  }
38
 
39
  public function create_table() {
40
- if (current_user_can(Settings_Manager::ALLOWED_ROLE_META_CAP)) {
41
  $id = wp_insert_post( [
42
  'post_title' => '',
43
  'post_content' => '',
@@ -52,7 +65,7 @@ class Admin_Menu {
52
 
53
  $params = json_decode( file_get_contents( 'php://input' ) );
54
 
55
- if ( current_user_can( Settings_Manager::ALLOWED_ROLE_META_CAP) && wp_verify_nonce( $params->security_code, 'wptb-security-nonce' ) ||
56
  wp_verify_nonce( $params->security_code, 'wptb-import-security-nonce' ) ) {
57
 
58
  if ( ! property_exists( $params, 'id' ) || ! absint( $params->id ) || get_post_status( absint( $params->id ) ) != 'draft' ) {
@@ -63,7 +76,15 @@ class Admin_Menu {
63
  'post_status' => 'draft'
64
  ] );
65
 
66
- add_post_meta( $id, '_wptb_content_', $params->content );
 
 
 
 
 
 
 
 
67
 
68
  wp_die( json_encode( [ 'saved', $id ] ) );
69
  } else {
@@ -81,7 +102,12 @@ class Admin_Menu {
81
 
82
  wp_die( json_encode( [ 'preview_edited' ] ) );
83
  } else {
84
- update_post_meta( absint( $params->id ), '_wptb_content_', $params->content );
 
 
 
 
 
85
 
86
  wp_die( json_encode( [ 'edited', absint( $params->id ) ] ) );
87
  }
@@ -92,7 +118,7 @@ class Admin_Menu {
92
  }
93
 
94
  public function get_table() {
95
- if ( current_user_can(Settings_Manager::ALLOWED_ROLE_META_CAP)) {
96
  $post = get_post( absint( $_REQUEST['id'] ) );
97
  $table_html = get_post_meta( absint( $_REQUEST['id'] ), '_wptb_content_', true );
98
  $name = $post->post_title;//$html = json_decode( $html );
@@ -127,7 +153,7 @@ class Admin_Menu {
127
  */
128
  public function register_menus() {
129
 
130
- global $builder_page, $tables_overview, $table_list;
131
  $menu_cap = Helpers::wptb_get_capability_manage_options();
132
 
133
  // Default Tables top level menu item.
@@ -162,7 +188,7 @@ class Admin_Menu {
162
  );
163
 
164
  // Add New Table sub menu item.
165
- $builder_page = add_submenu_page(
166
  'wptb-overview',
167
  esc_html__( 'WP Table Builder', 'wp-table-builder' ),
168
  esc_html__( 'Add New', 'wp-table-builder' ),
@@ -171,6 +197,8 @@ class Admin_Menu {
171
  array( $this, 'table_builder' )
172
  );
173
 
 
 
174
  // Add Import sub menu item.
175
  $builder_page = add_submenu_page(
176
  'wptb-overview',
@@ -183,6 +211,15 @@ class Admin_Menu {
183
 
184
  add_action( 'load-' . $builder_page, [ $this, 'load_assets' ] );
185
 
 
 
 
 
 
 
 
 
 
186
  do_action( 'wptb_admin_menu', $this );
187
 
188
  }
@@ -241,6 +278,39 @@ class Admin_Menu {
241
 
242
  } elseif ( isset( $_GET['page'] ) && sanitize_text_field( $_GET['page'] ) == 'wptb-builder' ) {
243
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
244
  wp_register_script( 'wptb-admin-builder-js', plugin_dir_url( __FILE__ ) . 'js/admin.js', array(
245
  'jquery',
246
  'wptb-admin-builder-tinymce-js',
@@ -368,26 +438,30 @@ class Admin_Menu {
368
  public function tables_list() {
369
  $table_list = new WPTB_Listing();
370
  ?>
371
- <div class="wrap">
372
- <div style="margin-bottom: 30px;">
373
- <h1 class="wp-heading-inline">
374
- <?php esc_html_e( 'All Tables', 'wp-table-builder' ); ?>
375
- </h1>
376
- <span class="wptb-split-page-title-action">
377
  <a href="<?php echo esc_url( admin_url( 'admin.php?page=wptb-builder' ) ); ?>"
378
- class="page-title-action">
379
  <?php esc_html_e( 'Add New', 'wp-table-builder' ); ?>
380
  </a>
381
  </span>
382
- </div>
383
  </div>
384
-
 
 
 
 
 
 
 
 
 
 
385
  <?php
386
- $table_list->prepare_items();
387
- ?>
388
- <form method="post"><?php
389
- $table_list->display(); ?>
390
- </form><?php
391
  }
392
 
393
  /**
@@ -417,6 +491,4 @@ class Admin_Menu {
417
  require_once NS\WP_TABLE_BUILDER_DIR . 'inc/admin/views/wptb-welcome.php';
418
  }
419
 
420
- }
421
-
422
- ;
21
  */
22
  class Admin_Menu {
23
 
24
+ /**
25
+ * Script hook name for generate menu.
26
+ * @var string
27
+ */
28
+ public static $generate_menu_script_hook = 'wptb-generate-js';
29
+
30
  /**
31
  * Primary class constructor.
32
  *
34
  */
35
  public function __construct() {
36
  // Let's make some menus.
37
+ add_filter( 'set_screen_option_' . 'tables_per_page', function ( $status, $option, $value ) {
38
+ return (int) $value;
39
+ }, 10, 3 );
40
+
41
+ add_filter( 'set-screen-option', function ( $status, $option, $value ) {
42
+ return ( $option == 'tables_per_page' ) ? (int) $value : $status;
43
+ }, 10, 3 );
44
  add_action( 'admin_menu', array( $this, 'register_menus' ), 9 );
45
  add_action( 'admin_enqueue_scripts', array( $this, 'enqueue_scripts' ) );
46
  add_action( 'wp_ajax_create_table', array( $this, 'create_table' ) );
50
  }
51
 
52
  public function create_table() {
53
+ if ( current_user_can( Settings_Manager::ALLOWED_ROLE_META_CAP ) ) {
54
  $id = wp_insert_post( [
55
  'post_title' => '',
56
  'post_content' => '',
65
 
66
  $params = json_decode( file_get_contents( 'php://input' ) );
67
 
68
+ if ( current_user_can( Settings_Manager::ALLOWED_ROLE_META_CAP ) && wp_verify_nonce( $params->security_code, 'wptb-security-nonce' ) ||
69
  wp_verify_nonce( $params->security_code, 'wptb-import-security-nonce' ) ) {
70
 
71
  if ( ! property_exists( $params, 'id' ) || ! absint( $params->id ) || get_post_status( absint( $params->id ) ) != 'draft' ) {
76
  'post_status' => 'draft'
77
  ] );
78
 
79
+ // apply table content filter
80
+ $table_content = apply_filters( 'wp-table-builder/table_content', $params->content, $params );
81
+ add_post_meta( $id, '_wptb_content_', $table_content );
82
+
83
+ // new table id filter hook
84
+ $id = apply_filters( 'wp-table-builder/new_table_id', $id, $params );
85
+
86
+ // new table saved action hook
87
+ do_action( 'wp-table-builder/new_table_saved', $id, $params );
88
 
89
  wp_die( json_encode( [ 'saved', $id ] ) );
90
  } else {
102
 
103
  wp_die( json_encode( [ 'preview_edited' ] ) );
104
  } else {
105
+ // apply table content filter
106
+ $table_content = apply_filters( 'wp-table-builder/table_content', $params->content, $params );
107
+ update_post_meta( absint( $params->id ), '_wptb_content_', $table_content );
108
+
109
+ // table edited action hook
110
+ do_action( 'wp-table-builder/table_edited', $params->id, $params );
111
 
112
  wp_die( json_encode( [ 'edited', absint( $params->id ) ] ) );
113
  }
118
  }
119
 
120
  public function get_table() {
121
+ if ( current_user_can( Settings_Manager::ALLOWED_ROLE_META_CAP ) ) {
122
  $post = get_post( absint( $_REQUEST['id'] ) );
123
  $table_html = get_post_meta( absint( $_REQUEST['id'] ), '_wptb_content_', true );
124
  $name = $post->post_title;//$html = json_decode( $html );
153
  */
154
  public function register_menus() {
155
 
156
+ global $builder_page, $tables_overview, $table_list, $builder_tool_page;
157
  $menu_cap = Helpers::wptb_get_capability_manage_options();
158
 
159
  // Default Tables top level menu item.
188
  );
189
 
190
  // Add New Table sub menu item.
191
+ $builder_tool_page = add_submenu_page(
192
  'wptb-overview',
193
  esc_html__( 'WP Table Builder', 'wp-table-builder' ),
194
  esc_html__( 'Add New', 'wp-table-builder' ),
197
  array( $this, 'table_builder' )
198
  );
199
 
200
+ $builder_page = $builder_tool_page;
201
+
202
  // Add Import sub menu item.
203
  $builder_page = add_submenu_page(
204
  'wptb-overview',
211
 
212
  add_action( 'load-' . $builder_page, [ $this, 'load_assets' ] );
213
 
214
+ // @deprecated
215
+ // add_action( 'load-' . $tables_overview, function () {
216
+ // add_screen_option( 'per_page', array(
217
+ // 'label' => 'Number of items per page:',
218
+ // 'default' => 15,
219
+ // 'option' => 'tables_per_page', // название опции, будет записано в метаполе юзера
220
+ // ) );
221
+ // } );
222
+
223
  do_action( 'wptb_admin_menu', $this );
224
 
225
  }
278
 
279
  } elseif ( isset( $_GET['page'] ) && sanitize_text_field( $_GET['page'] ) == 'wptb-builder' ) {
280
 
281
+ // builder controls
282
+ $builder_path = plugin_dir_path( __FILE__ ) . 'js/WPTB_BuilderControls.js';
283
+
284
+ wp_enqueue_script( 'wptb-controls-manager-js', plugin_dir_url( __FILE__ ) . 'js/WPTB_BuilderControls.js', [], filemtime( $builder_path ), false );
285
+
286
+ // generate controls
287
+ $generate_path = plugin_dir_path( __FILE__ ) . 'js/WPTB_Generate.js';
288
+
289
+ if ( ! isset( $_GET['table'] ) ) { // enqueue file with the same handler name as pro version and with a low priority to load pro version is it is enabled instead of normal version
290
+ wp_enqueue_script( static::$generate_menu_script_hook, plugin_dir_url( __FILE__ ) . 'js/WPTB_Generate.js', [], filemtime( $generate_path ), true );
291
+ $generate_data = [
292
+ 'mountId' => 'wptbGenerate',
293
+ 'version' => 'normal',
294
+ 'adLink' => 'https://wptablebuilder.com/',
295
+ 'security' => null,
296
+ 'prebuiltTables' => null,
297
+ 'strings' => [
298
+ 'blank' => esc_html__( 'blank', 'wp-table-builder' ),
299
+ 'generate' => esc_html__( 'generate', 'wp-table-builder' ),
300
+ 'edit' => esc_html__( 'edit', 'wp-table-builder' ),
301
+ 'searchPlaceholder' => esc_html__( 'Search (/ to focus)', 'wp-table-builder' ),
302
+ // 'prebuiltAdPart1' => esc_html__( 'For prebuilt tables and much more', 'wp-table-builder' ),
303
+ // 'prebuiltAdPart2' => esc_html__( 'Go PRO', 'wp-table-builder' ),
304
+ 'prebuiltAdPart1' => '',
305
+ 'prebuiltAdPart2' => '',
306
+ 'deleteConfirmation' => esc_html__( 'Delete prebuilt table?', 'wp-table-builder' ),
307
+ ]
308
+
309
+ ];
310
+ wp_localize_script( static::$generate_menu_script_hook, 'wptbGenerateMenuData', $generate_data );
311
+ }
312
+
313
+
314
  wp_register_script( 'wptb-admin-builder-js', plugin_dir_url( __FILE__ ) . 'js/admin.js', array(
315
  'jquery',
316
  'wptb-admin-builder-tinymce-js',
438
  public function tables_list() {
439
  $table_list = new WPTB_Listing();
440
  ?>
441
+ <div class="wrap">
442
+ <div style="margin-bottom: 30px;">
443
+ <h1 class="wp-heading-inline">
444
+ <?php esc_html_e( 'All Tables', 'wp-table-builder' ); ?>
445
+ </h1>
446
+ <span class="wptb-split-page-title-action">
447
  <a href="<?php echo esc_url( admin_url( 'admin.php?page=wptb-builder' ) ); ?>"
448
+ class="page-title-action">
449
  <?php esc_html_e( 'Add New', 'wp-table-builder' ); ?>
450
  </a>
451
  </span>
 
452
  </div>
453
+ <?php
454
+ $table_list->prepare_items();
455
+ $table_list->views();
456
+ ?>
457
+ <form method="get">
458
+ <input type="hidden" name="page" value="<?php echo $_REQUEST['page'] ?>"/>
459
+ <?php
460
+ $table_list->search_box( 'Search Tables', 'search_tables' );
461
+ $table_list->display(); ?>
462
+ </form>
463
+ </div>
464
  <?php
 
 
 
 
 
465
  }
466
 
467
  /**
491
  require_once NS\WP_TABLE_BUILDER_DIR . 'inc/admin/views/wptb-welcome.php';
492
  }
493
 
494
+ }
 
 
inc/admin/class-admin.php CHANGED
@@ -111,7 +111,7 @@ class Admin {
111
  $tables_count = wp_count_posts( 'wptb-tables' );
112
  $tables_number = $tables_count->draft;
113
 
114
- if ( $tables_number >= 10 && get_option( 'wptb_review_notify' ) == "no" ) {
115
  ?>
116
  <div class="wptb-review-notice notice notice-info">
117
  <p style="font-size: 14px;">
111
  $tables_count = wp_count_posts( 'wptb-tables' );
112
  $tables_number = $tables_count->draft;
113
 
114
+ if ( $tables_number >= 5 && get_option( 'wptb_review_notify' ) == "no" ) {
115
  ?>
116
  <div class="wptb-review-notice notice notice-info">
117
  <p style="font-size: 14px;">
inc/admin/class-export.php CHANGED
@@ -298,8 +298,8 @@ class Export {
298
  private function prepare_csv_table( $id ) {
299
  $table_html_content = get_post_meta( $id, '_wptb_content_', true );
300
 
301
- $dom_table = new DOMDocument();
302
- $dom_table->loadHTML( $table_html_content );
303
 
304
  $table_body = $dom_table->getElementsByTagName( 'tbody' )[0];
305
  $top_level_rows = $table_body->getElementsByTagName( 'tr' );
298
  private function prepare_csv_table( $id ) {
299
  $table_html_content = get_post_meta( $id, '_wptb_content_', true );
300
 
301
+ $dom_table = new DOMDocument( '1.0', 'UTF-8' );
302
+ $dom_table->loadHTML( utf8_decode( $table_html_content ) );
303
 
304
  $table_body = $dom_table->getElementsByTagName( 'tbody' )[0];
305
  $top_level_rows = $table_body->getElementsByTagName( 'tr' );
inc/admin/class-wptb-listing.php CHANGED
@@ -3,6 +3,8 @@
3
  namespace WP_Table_Builder\Inc\Admin;
4
 
5
 
 
 
6
  if ( ! class_exists( 'WP_List_Table' ) ) {
7
  die('NOT?');
8
  require_once( ABSPATH . 'wp-admin\includes\class-wp-list-table.php' );
@@ -22,20 +24,34 @@ class WPTB_Listing extends \WP_List_Table{
22
  parent::__construct( [
23
  'singular' => __( 'WPTB Table', 'wp-table-builder' ),
24
  'plural' => __( 'WPTB Tables', 'wp-table-builder' ),
25
- 'ajax' => false
26
  ] );
27
  }
 
 
 
 
 
 
 
 
 
 
28
 
29
- public static function get_tables( $per_page = 5, $page_number = 1 ) {
30
 
31
  global $wpdb, $post;
32
 
33
  $params = array( 'post_type' => 'wptb-tables', 'posts_per_page' => $per_page, 'paged' => $page_number );
34
 
 
 
35
  $params['orderby'] = isset( $_REQUEST['orderby'] ) && ! empty( sanitize_text_field( $_REQUEST['orderby'] ) ) ? sanitize_text_field( $_REQUEST['orderby'] ) : 'date';
36
  $params['order'] = isset( $_REQUEST['order'] ) && ! empty( sanitize_text_field( $_REQUEST['order'] ) ) ? sanitize_text_field( $_REQUEST['order'] ) : 'DESC';
37
-
38
- $loop = new \WP_Query( $params );
 
 
39
  $result=[];
40
  while ( $loop->have_posts() ) { $loop->the_post(); $result[] = $post; }
41
 
@@ -87,14 +103,18 @@ class WPTB_Listing extends \WP_List_Table{
87
  [ 'ID' => $id ],
88
  [ '%d' ]
89
  );
90
-
91
  }
92
 
93
- public static function record_count( $per_page ) {
94
 
95
  global $wpdb, $post;
96
 
97
  $params = array( 'post_type' => 'wptb-tables', 'posts_per_page' => $per_page );
 
 
 
 
 
98
  $params['orderby'] = isset( $_REQUEST['orderby'] ) && ! empty( sanitize_text_field( $_REQUEST['orderby'] ) ) ? sanitize_text_field( $_REQUEST['orderby'] ) : 'date';
99
  $params['order'] = isset( $_REQUEST['order'] ) && ! empty( sanitize_text_field( $_REQUEST['order'] ) ) ? sanitize_text_field( $_REQUEST['order'] ) : 'DESC';
100
 
@@ -128,6 +148,9 @@ class WPTB_Listing extends \WP_List_Table{
128
  $table_title = $item->post_title;
129
 
130
  $title = ! empty( $table_title ) ? $table_title : __( 'Table (ID #' . absint( $item->ID ) . ')', 'wp-table-builder' );
 
 
 
131
 
132
  $title = sprintf(
133
  '<a class="row-title" href="%s" title="%s"><strong>%s</strong></a>',
@@ -149,12 +172,18 @@ class WPTB_Listing extends \WP_List_Table{
149
  ),
150
  home_url()
151
  );
 
 
 
 
 
 
152
 
153
  $actions = [
154
- 'delete' => sprintf( '<a href="?page=%s&action=%s&table_id=%s&_wpnonce=%s">Delete</a>', esc_attr( $_REQUEST['page'] ), 'delete', absint( $item->ID ), $nonce ),
155
- 'duplicate' => sprintf( '<a href="?page=%s&action=%s&table_id=%s&_wpnonce=%s">Duplicate</a>', esc_attr( $_REQUEST['page'] ), 'duplicate', absint( $item->ID ), $nonce ),
156
- 'preview_' => sprintf( '<a href="%s" target="_blank">Preview</a>', $wptb_preview_button_url ),
157
- 'edit' => sprintf( '<a href="?page=wptb-builder&table=%d">Edit</a>', absint( $item->ID ) )
158
  ];
159
 
160
  return $title . $this->row_actions( $actions );
@@ -166,8 +195,10 @@ class WPTB_Listing extends \WP_List_Table{
166
  switch ( $column_name ) {
167
  case 'id':
168
  return $item->ID;
169
- case 'shortcode':
170
- return '[wptb id='.$item->ID.']';
 
 
171
  case 'created':
172
  return get_the_date( '', $item->ID );
173
  break;
@@ -229,36 +260,45 @@ class WPTB_Listing extends \WP_List_Table{
229
 
230
  $per_page = $this->get_items_per_page( 'tables_per_page', 10 );
231
  $current_page = $this->get_pagenum();
232
- $total_items = self::record_count( $per_page );
 
 
 
 
 
233
 
234
  $this->set_pagination_args( [
235
  'total_items' => $total_items, //WE have to calculate the total number of items
236
  'per_page' => $per_page //WE have to determine how many items to show on a page
237
  ] );
238
-
239
- $this->items = $this->get_tables( $per_page, $current_page );
240
-
241
  }
242
 
 
 
 
 
 
 
 
 
243
  public function process_bulk_action() {
244
-
245
  $nonce = isset( $_REQUEST['_wpnonce'] ) && esc_attr( $_REQUEST['_wpnonce'] ) ? esc_attr( $_REQUEST['_wpnonce'] ) : '';
246
-
247
-
248
  if ( 'duplicate' === $this->current_action() ) {
249
 
250
  if ( ! wp_verify_nonce( $nonce, 'wptb_nonce_table' ) ) {
251
  die( 'Go get a life script kiddies' );
252
  } else {
253
- $duplicate = $this->duplicate_table( absint( $_GET['table_id'] ) );
254
- ?>
255
- <div class="notice notice-success is-dismissible">
256
- <p><?php esc_html_e( 'Table duplicate successfully.', 'wp-table-builder' ); ?></p>
257
- </div>
258
- <script>window.history.pushState( null, null, window.location.href.split('?')[0] + '?page=wptb-overview' );</script>
259
  <?php
260
  }
261
-
262
  }
263
 
264
  if ( 'delete' === $this->current_action() ) {
@@ -268,38 +308,44 @@ class WPTB_Listing extends \WP_List_Table{
268
  } else {
269
  $this->delete_table( absint( $_GET['table_id'] ) );
270
  ?>
271
- <div class="notice notice-success is-dismissible">
272
- <p><?php esc_html_e( 'Table deleted successfully.', 'wp-table-builder' ); ?></p>
273
- </div>
274
- <script>window.history.pushState( null, null, window.location.href.split('?')[0] + '?page=wptb-overview' );</script>
275
  <?php
276
  }
277
 
278
  }
279
 
280
  // If the delete bulk action is triggered
281
- if ( ( isset( $_POST['action'] ) && sanitize_text_field( $_POST['action'] ) == 'bulk-delete' ) ||
282
- ( isset( $_POST['action2'] ) && sanitize_text_field( $_POST['action2'] ) == 'bulk-delete' ) ) {
283
-
284
  if( ! wp_verify_nonce( $nonce, 'bulk-' . $this->_args['plural'] ) ){
285
  die( 'Go get a life script kiddies' );
286
  } else {
287
- $delete_ids = esc_sql( $_POST['bulk-delete'] );
288
 
289
  // loop over the array of record IDs and delete them
290
  foreach ( $delete_ids as $id ) {
291
  $this->delete_table( absint( $id ) );
292
  }
293
-
294
  ?>
295
  <div class="notice notice-success is-dismissible">
296
  <p><?php esc_html_e( 'Bulk Delete Performed Successfully.', 'wp-table-builder' ); ?></p>
297
  </div>
298
- <script>window.history.pushState( null, null, window.location.href.split('?')[0] + '?page=wptb-overview' );</script>
299
- <?php
300
  }
301
  }
 
 
 
 
 
 
 
 
302
  }
303
  }
304
 
305
- $table = new WPTB_Listing();
3
  namespace WP_Table_Builder\Inc\Admin;
4
 
5
 
6
+ use function apply_filters;
7
+
8
  if ( ! class_exists( 'WP_List_Table' ) ) {
9
  die('NOT?');
10
  require_once( ABSPATH . 'wp-admin\includes\class-wp-list-table.php' );
24
  parent::__construct( [
25
  'singular' => __( 'WPTB Table', 'wp-table-builder' ),
26
  'plural' => __( 'WPTB Tables', 'wp-table-builder' ),
27
+ 'ajax' => false
28
  ] );
29
  }
30
+
31
+ protected function get_views() {
32
+ $count = self::record_count( 10, '' );
33
+ $status_links = array(
34
+ "all" => __( '<a href="' . esc_url( admin_url( 'admin.php?page=wptb-overview' ) ) . '">' .
35
+ 'All ' .
36
+ '<span class="count">(' . $count . ')</span></a>', 'wp-table-builde' )
37
+ );
38
+ return $status_links;
39
+ }
40
 
41
+ public static function get_tables( $per_page = 5, $page_number = 1, $search_text ) {
42
 
43
  global $wpdb, $post;
44
 
45
  $params = array( 'post_type' => 'wptb-tables', 'posts_per_page' => $per_page, 'paged' => $page_number );
46
 
47
+ if( $search_text ) $params['s'] = $search_text;
48
+
49
  $params['orderby'] = isset( $_REQUEST['orderby'] ) && ! empty( sanitize_text_field( $_REQUEST['orderby'] ) ) ? sanitize_text_field( $_REQUEST['orderby'] ) : 'date';
50
  $params['order'] = isset( $_REQUEST['order'] ) && ! empty( sanitize_text_field( $_REQUEST['order'] ) ) ? sanitize_text_field( $_REQUEST['order'] ) : 'DESC';
51
+
52
+ $params = apply_filters('wp-table-builder/get_tables_args', $params);
53
+
54
+ $loop = new \WP_Query( $params );
55
  $result=[];
56
  while ( $loop->have_posts() ) { $loop->the_post(); $result[] = $post; }
57
 
103
  [ 'ID' => $id ],
104
  [ '%d' ]
105
  );
 
106
  }
107
 
108
+ public static function record_count( $per_page, $search_text ) {
109
 
110
  global $wpdb, $post;
111
 
112
  $params = array( 'post_type' => 'wptb-tables', 'posts_per_page' => $per_page );
113
+
114
+ $params = apply_filters('wp-table-builder/record_count', $params);
115
+
116
+ if( $search_text ) $params['s'] = $search_text;
117
+
118
  $params['orderby'] = isset( $_REQUEST['orderby'] ) && ! empty( sanitize_text_field( $_REQUEST['orderby'] ) ) ? sanitize_text_field( $_REQUEST['orderby'] ) : 'date';
119
  $params['order'] = isset( $_REQUEST['order'] ) && ! empty( sanitize_text_field( $_REQUEST['order'] ) ) ? sanitize_text_field( $_REQUEST['order'] ) : 'DESC';
120
 
148
  $table_title = $item->post_title;
149
 
150
  $title = ! empty( $table_title ) ? $table_title : __( 'Table (ID #' . absint( $item->ID ) . ')', 'wp-table-builder' );
151
+
152
+ // title listing filter hook
153
+ $title = apply_filters('wp-table-builder/title_listing', $title, $item->ID);
154
 
155
  $title = sprintf(
156
  '<a class="row-title" href="%s" title="%s"><strong>%s</strong></a>',
172
  ),
173
  home_url()
174
  );
175
+
176
+ $server_request_url = remove_query_arg( '_wp_http_referer', $_SERVER['REQUEST_URI'] );
177
+ $server_request_url = remove_query_arg( '_wpnonce', $server_request_url );
178
+ $server_request_url = remove_query_arg( 'action', $server_request_url );
179
+ $server_request_url = remove_query_arg( 'table_id', $server_request_url );
180
+ $query = parse_url( $server_request_url, PHP_URL_QUERY );
181
 
182
  $actions = [
183
+ 'edit' => sprintf( '<a href="?page=wptb-builder&table=%d">Edit</a>', absint( $item->ID ) ),
184
+ 'duplicate' => '<a href="?' . $query . sprintf( '&action=%s&table_id=%s&_wpnonce=%s', 'duplicate', absint( $item->ID ), $nonce ) . '">Duplicate</a>',
185
+ 'preview_' => sprintf( '<a href="%s" target="_blank">Preview</a>', $wptb_preview_button_url ),
186
+ 'delete' => '<a href="?' . $query . sprintf( '&action=%s&table_id=%s&_wpnonce=%s', 'delete', absint( $item->ID ), $nonce ) . '">Delete</a>'
187
  ];
188
 
189
  return $title . $this->row_actions( $actions );
195
  switch ( $column_name ) {
196
  case 'id':
197
  return $item->ID;
198
+ case 'shortcode':
199
+ $shortcode = '[wptb id='.$item->ID.']';
200
+ $shortcode = apply_filters('wp-table-builder/shortcode_listing', $shortcode , $item->ID);
201
+ return $shortcode;
202
  case 'created':
203
  return get_the_date( '', $item->ID );
204
  break;
260
 
261
  $per_page = $this->get_items_per_page( 'tables_per_page', 10 );
262
  $current_page = $this->get_pagenum();
263
+
264
+ $search_text = '';
265
+ if( isset( $_REQUEST['s'] ) && ! empty( $_REQUEST['s'] ) ) {
266
+ $search_text = sanitize_text_field($_REQUEST['s']);
267
+ }
268
+ $total_items = self::record_count( $per_page, $search_text );
269
 
270
  $this->set_pagination_args( [
271
  'total_items' => $total_items, //WE have to calculate the total number of items
272
  'per_page' => $per_page //WE have to determine how many items to show on a page
273
  ] );
274
+ $this->items = $this->get_tables( $per_page, $current_page, $search_text );
 
 
275
  }
276
 
277
+ public function request_url_clear() {
278
+ $_SERVER['REQUEST_URI'] = remove_query_arg( '_wp_http_referer', $_SERVER['REQUEST_URI'] );
279
+ $_SERVER['REQUEST_URI'] = remove_query_arg( 'action', $_SERVER['REQUEST_URI'] );
280
+ $_SERVER['REQUEST_URI'] = remove_query_arg( 'action2', $_SERVER['REQUEST_URI'] );
281
+ $_SERVER['REQUEST_URI'] = remove_query_arg( 'table_id', $_SERVER['REQUEST_URI'] );
282
+ $_SERVER['REQUEST_URI'] = remove_query_arg( 'bulk-delete', $_SERVER['REQUEST_URI'] );
283
+ }
284
+
285
  public function process_bulk_action() {
286
+
287
  $nonce = isset( $_REQUEST['_wpnonce'] ) && esc_attr( $_REQUEST['_wpnonce'] ) ? esc_attr( $_REQUEST['_wpnonce'] ) : '';
288
+
289
+
290
  if ( 'duplicate' === $this->current_action() ) {
291
 
292
  if ( ! wp_verify_nonce( $nonce, 'wptb_nonce_table' ) ) {
293
  die( 'Go get a life script kiddies' );
294
  } else {
295
+ $this->duplicate_table( absint( $_GET['table_id'] ) );
296
+ ?>
297
+ <div class="notice notice-success is-dismissible">
298
+ <p><?php esc_html_e( 'Table duplicate successfully.', 'wp-table-builder' ); ?></p>
299
+ </div>
 
300
  <?php
301
  }
 
302
  }
303
 
304
  if ( 'delete' === $this->current_action() ) {
308
  } else {
309
  $this->delete_table( absint( $_GET['table_id'] ) );
310
  ?>
311
+ <div class="notice notice-success is-dismissible">
312
+ <p><?php esc_html_e( 'Table deleted successfully.', 'wp-table-builder' ); ?></p>
313
+ </div>
 
314
  <?php
315
  }
316
 
317
  }
318
 
319
  // If the delete bulk action is triggered
320
+ if ( ( isset( $_REQUEST['action'] ) && sanitize_text_field( $_REQUEST['action'] ) == 'bulk-delete' ) ||
321
+ ( isset( $_REQUEST['action2'] ) && sanitize_text_field( $_REQUEST['action2'] ) == 'bulk-delete' ) ) {
322
+
323
  if( ! wp_verify_nonce( $nonce, 'bulk-' . $this->_args['plural'] ) ){
324
  die( 'Go get a life script kiddies' );
325
  } else {
326
+ $delete_ids = esc_sql( $_REQUEST['bulk-delete'] );
327
 
328
  // loop over the array of record IDs and delete them
329
  foreach ( $delete_ids as $id ) {
330
  $this->delete_table( absint( $id ) );
331
  }
332
+
333
  ?>
334
  <div class="notice notice-success is-dismissible">
335
  <p><?php esc_html_e( 'Bulk Delete Performed Successfully.', 'wp-table-builder' ); ?></p>
336
  </div>
337
+ <?php
 
338
  }
339
  }
340
+ $this->request_url_clear();
341
+ ?>
342
+ <script>
343
+ // with sub-folder WordPress installations, this function adding extra invalid url paths to browser history, thus changing all the links that formats themselves according to current url. since the url it created is invalid, most of the links on the page become invalid and broken too.
344
+ // @deprecated
345
+ //window.history.pushState( null, null, "<?php //echo home_url() . $_SERVER['REQUEST_URI']; ?>//" );
346
+ </script>
347
+ <?php
348
  }
349
  }
350
 
351
+ $table = new WPTB_Listing();
inc/admin/controls/base-control.php CHANGED
@@ -15,7 +15,15 @@ if ( ! defined( 'WPINC' ) ) {
15
  * @abstract
16
  */
17
  abstract class Base_Control {
18
- /**
 
 
 
 
 
 
 
 
19
  * Get control type.
20
  *
21
  * Return the control type.
15
  * @abstract
16
  */
17
  abstract class Base_Control {
18
+ /**
19
+ * Base_Control constructor.
20
+ */
21
+ public function __construct() {
22
+ $this->enqueue();
23
+ }
24
+
25
+
26
+ /**
27
  * Get control type.
28
  *
29
  * Return the control type.
inc/admin/controls/control-alignment.php CHANGED
@@ -63,19 +63,30 @@ class Control_Alignment extends Base_Control {
63
  center,
64
  right,
65
  dataElement,
 
66
  targetAddClass;
 
67
 
68
  if( data.label ) {
69
  label = data.label;
70
  }
71
-
 
 
 
 
 
 
 
 
 
72
  if( 'selected' in data ) {
73
  if( data.selected == 0 ) {
74
- selected0 = 'selected';
75
  } else if( data.selected == 1 ) {
76
- selected1 = 'selected';
77
  } else if( data.selected == 2 ) {
78
- selected2 = 'selected';
79
  }
80
  }
81
 
@@ -105,24 +116,54 @@ class Control_Alignment extends Base_Control {
105
  ob_start();
106
  require NS\WP_TABLE_BUILDER_DIR . 'inc/admin/views/builder/icons/right_align.php';
107
  $right_align_image_svg = ob_get_clean();
108
- ?>
109
- <div class="wptb-settings-item-header">
 
 
 
 
 
 
 
 
 
 
 
 
110
  <p class="wptb-settings-item-title">{{{label}}}</p>
111
  </div>
112
  <div class="wptb-settings-row wptb-settings-middle-xs" style="padding-bottom: 0px; padding-top: 23px;">
113
- <ul>
114
- <li class="wptb-btn-size-btn wptb-element-property wptb-btn-size-switcher
115
- {{{selected0}}} {{{targetAddClass}}}" data-alignment-value="left" data-element="{{{elemContainer}}}">
 
 
116
  <?php echo $left_align_image_svg; ?>
 
 
 
 
117
  </li>
118
- <li class="wptb-btn-size-btn wptb-element-property wptb-btn-size-switcher
119
- {{{selected1}}} {{{targetAddClass}}}" data-alignment-value="center" data-element="{{{elemContainer}}}">
120
- <?php echo $center_align_image_svg; ?>
121
- </li>
122
- <li class="wptb-btn-size-btn wptb-element-property wptb-btn-size-switcher
123
- {{{selected2}}} {{{targetAddClass}}}" data-alignment-value="right" data-element="{{{elemContainer}}}">
124
- <?php echo $right_align_image_svg; ?>
 
 
125
  </li>
 
 
 
 
 
 
 
 
 
 
126
  </ul>
127
  </div>
128
 
@@ -160,13 +201,14 @@ class Control_Alignment extends Base_Control {
160
  convertValue = 'right';
161
  }
162
  } else {
163
- if( value == 'left' ) {
164
- convertValue = 'left';
165
- } else if( value == 'center' ) {
166
- convertValue = 'center';
167
- } else if( value == 'right' ) {
168
- convertValue = 'right';
169
- }
 
170
  }
171
 
172
  if( typeof selectorElements[j].style[selectors[i][1]] != 'undefined' ) {
@@ -199,13 +241,14 @@ class Control_Alignment extends Base_Control {
199
  return 'right';
200
  }
201
  } else {
202
- if( gettingElementValue == 'left' ) {
203
- return 'left';
204
- } else if( gettingElementValue == 'center' ) {
205
- return 'center';
206
- } else if( gettingElementValue == 'right' ) {
207
- return 'right';
208
- }
 
209
  }
210
  }
211
  }
@@ -229,18 +272,18 @@ class Control_Alignment extends Base_Control {
229
  }
230
 
231
  for ( var i = 0; i < buttons.length; i++ ) {
232
- buttons[i].classList.remove( 'selected' );
233
 
234
  if( valueSetting == buttons[i].dataset.alignmentValue ) {
235
- buttons[i].classList.add( 'selected' );
236
  }
237
 
238
  buttons[i].onclick = function () {
239
  var b = this.parentNode.getElementsByClassName( 'wptb-btn-size-btn' );
240
  for ( let i = 0; i < b.length; i++ ) {
241
- b[i].classList.remove( 'selected' );
242
  }
243
- this.classList.add( 'selected' );
244
 
245
  if( this.dataset.alignmentValue && '{{{selectorsJson}}}' ) {
246
  let selectors = JSON.parse( '{{{selectorsJson}}}' );
63
  center,
64
  right,
65
  dataElement,
66
+ alignmentAxis = 'horizontal',
67
  targetAddClass;
68
+
69
 
70
  if( data.label ) {
71
  label = data.label;
72
  }
73
+
74
+ if( data.alignmentAxis ) {
75
+ alignmentAxis = data.alignmentAxis;
76
+ }
77
+
78
+ let alignmentValues = ['left', 'center', 'right'];
79
+ if( alignmentAxis === 'vertical' ) {
80
+ alignmentValues = ['top' , 'center', 'bottom'];
81
+ }
82
+
83
  if( 'selected' in data ) {
84
  if( data.selected == 0 ) {
85
+ selected0 = 'bnt-selected';
86
  } else if( data.selected == 1 ) {
87
+ selected1 = 'bnt-selected';
88
  } else if( data.selected == 2 ) {
89
+ selected2 = 'bnt-selected';
90
  }
91
  }
92
 
116
  ob_start();
117
  require NS\WP_TABLE_BUILDER_DIR . 'inc/admin/views/builder/icons/right_align.php';
118
  $right_align_image_svg = ob_get_clean();
119
+
120
+ ob_start();
121
+ require NS\WP_TABLE_BUILDER_DIR . 'inc/admin/views/builder/icons/top_align.svg';
122
+ $top_align_image_svg = ob_get_clean();
123
+
124
+ ob_start();
125
+ require NS\WP_TABLE_BUILDER_DIR . 'inc/admin/views/builder/icons/vertical_center_align.svg';
126
+ $vertical_center_align_svg = ob_get_clean();
127
+
128
+ ob_start();
129
+ require NS\WP_TABLE_BUILDER_DIR . 'inc/admin/views/builder/icons/bottom_align.svg';
130
+ $bottom_align_svg = ob_get_clean();
131
+ ?>
132
+ <div class="wptb-settings-item-header">
133
  <p class="wptb-settings-item-title">{{{label}}}</p>
134
  </div>
135
  <div class="wptb-settings-row wptb-settings-middle-xs" style="padding-bottom: 0px; padding-top: 23px;">
136
+ <ul class="wptb-controls-ul-row">
137
+ <li class="wptb-btn-size-btn wptb-element-property wptb-btn-size-switcher wptb-button-svg-center
138
+ {{{selected0}}} {{{targetAddClass}}}" data-alignment-value="{{{alignmentValues[0]}}}" data-element="{{{elemContainer}}}">
139
+ <# if(alignmentAxis === 'horizontal'){
140
+ #>
141
  <?php echo $left_align_image_svg; ?>
142
+ <# }else{
143
+ #>
144
+ <?php echo $top_align_image_svg; ?>
145
+ <# } #>
146
  </li>
147
+ <li class="wptb-btn-size-btn wptb-element-property wptb-btn-size-switcher wptb-button-svg-center
148
+ {{{selected1}}} {{{targetAddClass}}}" data-alignment-value="{{{alignmentValues[1]}}}" data-element="{{{elemContainer}}}">
149
+ <# if(alignmentAxis === 'horizontal'){
150
+ #>
151
+ <?php echo $center_align_image_svg; ?>
152
+ <# }else{
153
+ #>
154
+ <?php echo $vertical_center_align_svg; ?>
155
+ <# } #>
156
  </li>
157
+ <li class="wptb-btn-size-btn wptb-element-property wptb-btn-size-switcher wptb-button-svg-center
158
+ {{{selected2}}} {{{targetAddClass}}}" data-alignment-value="{{{alignmentValues[2]}}}" data-element="{{{elemContainer}}}">
159
+ <# if(alignmentAxis === 'horizontal'){
160
+ #>
161
+ <?php echo $right_align_image_svg; ?>
162
+ <# }else{
163
+ #>
164
+ <?php echo $bottom_align_svg; ?>
165
+ <# } #>
166
+ </li>
167
  </ul>
168
  </div>
169
 
201
  convertValue = 'right';
202
  }
203
  } else {
204
+ <!-- if( value == 'left' ) {-->
205
+ <!-- convertValue = 'left';-->
206
+ <!-- } else if( value == 'center' ) {-->
207
+ <!-- convertValue = 'center';-->
208
+ <!-- } else if( value == 'right' ) {-->
209
+ <!-- convertValue = 'right';-->
210
+ <!-- }-->
211
+ convertValue = value;
212
  }
213
 
214
  if( typeof selectorElements[j].style[selectors[i][1]] != 'undefined' ) {
241
  return 'right';
242
  }
243
  } else {
244
+ <!-- if( gettingElementValue == 'left' ) {-->
245
+ <!-- return 'left';-->
246
+ <!-- } else if( gettingElementValue == 'center' ) {-->
247
+ <!-- return 'center';-->
248
+ <!-- } else if( gettingElementValue == 'right' ) {-->
249
+ <!-- return 'right';-->
250
+ <!-- }-->
251
+ return gettingElementValue;
252
  }
253
  }
254
  }
272
  }
273
 
274
  for ( var i = 0; i < buttons.length; i++ ) {
275
+ buttons[i].classList.remove( 'bnt-selected' );
276
 
277
  if( valueSetting == buttons[i].dataset.alignmentValue ) {
278
+ buttons[i].classList.add( 'bnt-selected' );
279
  }
280
 
281
  buttons[i].onclick = function () {
282
  var b = this.parentNode.getElementsByClassName( 'wptb-btn-size-btn' );
283
  for ( let i = 0; i < b.length; i++ ) {
284
+ b[i].classList.remove( 'bnt-selected' );
285
  }
286
+ this.classList.add( 'bnt-selected' );
287
 
288
  if( this.dataset.alignmentValue && '{{{selectorsJson}}}' ) {
289
  let selectors = JSON.parse( '{{{selectorsJson}}}' );
inc/admin/controls/control-button.php CHANGED
@@ -50,11 +50,16 @@ class Control_Button extends Base_Control {
50
  ?>
51
  <#
52
  let label,
 
53
  elemContainer;
54
 
55
  if( data.label ) {
56
  label = data.label;
57
  }
 
 
 
 
58
 
59
  if( data.elemContainer ) {
60
  elemContainer = data.elemContainer;
@@ -65,7 +70,7 @@ class Control_Button extends Base_Control {
65
 
66
  <div class="wptb-settings-row wptb-settings-middle-xs">
67
  <div class="wptb-settings-col-xs-12" style="margin: auto; text-align: center;">
68
- <input type="button" class="wptb-element-property wptb-button {{{targetInputAddClass}}}" data-element="{{{elemContainer}}}" value="{{{label}}}" title="{{{label}}}">
69
  </div>
70
  </div>
71
 
50
  ?>
51
  <#
52
  let label,
53
+ style,
54
  elemContainer;
55
 
56
  if( data.label ) {
57
  label = data.label;
58
  }
59
+
60
+ if(data.style) {
61
+ style = 'style="' + data.style + '"';
62
+ }
63
 
64
  if( data.elemContainer ) {
65
  elemContainer = data.elemContainer;
70
 
71
  <div class="wptb-settings-row wptb-settings-middle-xs">
72
  <div class="wptb-settings-col-xs-12" style="margin: auto; text-align: center;">
73
+ <input type="button" {{{style}}} class="wptb-element-property wptb-button {{{targetInputAddClass}}}" data-element="{{{elemContainer}}}" value="{{{label}}}" title="{{{label}}}">
74
  </div>
75
  </div>
76
 
inc/admin/controls/control-button2.php ADDED
@@ -0,0 +1,109 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ namespace WP_Table_Builder\Inc\Admin\Controls;
3
+
4
+ // If this file is called directly, abort.
5
+ if ( ! defined( 'WPINC' ) ) {
6
+ die;
7
+ }
8
+
9
+ /**
10
+ * WP Table Builder "Button" control.
11
+ *
12
+ * A control class for creating "button" control object
13
+ *
14
+ * @since 1.1.2
15
+ */
16
+ class Control_Button2 extends Base_Control {
17
+ /**
18
+ * Get "Button" control type.
19
+ *
20
+ * @since 1.1.2
21
+ * @access public
22
+ *
23
+ * @return string Control type.
24
+ */
25
+ public function get_type() {
26
+ return 'button2';
27
+ }
28
+
29
+ /**
30
+ * Enqueue "button" control scripts and styles.
31
+ *
32
+ * Used to register and enqueue custom scripts and styles used by the control.
33
+ *
34
+ * @since 1.1.2
35
+ * @access public
36
+ */
37
+ public function enqueue() {
38
+
39
+ }
40
+
41
+ /**
42
+ * Render "button" control output in the editor.
43
+ *
44
+ * Used to generate the control HTML in the editor wp js template
45
+ *
46
+ * @since 1.1.2
47
+ * @access public
48
+ */
49
+ public function content_template() {
50
+ ?>
51
+ <#
52
+ let label,
53
+ style,
54
+ additionsClasses,
55
+ id,
56
+ title,
57
+ elemContainer,
58
+ targetInputAddClass = '';
59
+
60
+ if( data.label ) {
61
+ label = data.label;
62
+ }
63
+
64
+ if(data.style) {
65
+ style = 'style="' + data.style + '"';
66
+ }
67
+
68
+ if(data.additionsClasses) {
69
+ additionsClasses = data.additionsClasses;
70
+ }
71
+
72
+ if(data.id) {
73
+ id = 'id="' + data.id + '"';
74
+ }
75
+
76
+ if(data.title) {
77
+ title = 'title="' + data.title + '"';
78
+ }
79
+
80
+ if( data.elemContainer ) {
81
+ elemContainer = data.elemContainer;
82
+ }
83
+
84
+ targetInputAddClass = data.elementControlTargetUnicClass;
85
+ #>
86
+ <button {{{style}}} class="wptb-element-property {{{additionsClasses}}} {{{targetInputAddClass}}}" data-element="{{{elemContainer}}}" {{{id}}}
87
+ {{{title}}}>{{{label}}}</button>
88
+
89
+ <wptb-template-script>
90
+ ( function() {
91
+ let targetButtons = document.getElementsByClassName( '{{{targetInputAddClass}}}' );
92
+ if( targetButtons.length > 0 ) {
93
+ targetButton = targetButtons[0];
94
+ let dataSelectorElement = targetButton.dataset.element;
95
+ if( dataSelectorElement ) {
96
+ let selectorElement = document.querySelector( '.' + dataSelectorElement );
97
+ if( selectorElement ) {
98
+ targetButton.onclick = function( event ) {
99
+ WPTB_Helper.wptbDocumentEventGenerate( 'wptb-control:{{{targetInputAddClass}}}', selectorElement );
100
+ };
101
+ }
102
+ }
103
+ }
104
+ } )();
105
+ </wptb-template-script>
106
+
107
+ <?php
108
+ }
109
+ }
inc/admin/controls/control-color.php CHANGED
@@ -55,13 +55,29 @@ class Control_Color extends Base_Control {
55
  name,
56
  selectors = [],
57
  elemContainer,
58
- selectorsJson,
59
- targetInputAddClass;
 
 
60
 
61
  if( data.label ) {
62
  label = data.label;
63
  }
64
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
65
  if( data.name ) {
66
  name = data.name;
67
  }
@@ -74,24 +90,24 @@ class Control_Color extends Base_Control {
74
  i++;
75
  }
76
 
77
- if( selectors && Array.isArray( selectors ) ) {
78
- selectorsJson = JSON.stringify( selectors );
79
- }
80
-
81
  if( data.elemContainer ) {
82
  elemContainer = data.elemContainer;
83
  }
84
 
85
  targetInputAddClass = data.elementControlTargetUnicClass;
86
- let dataJson = JSON.stringify( data );
 
 
87
  #>
88
- <div class='wptb-settings-item-header' >
89
- <p class="wptb-settings-item-title">{{{label}}}</p>
90
- </div>
91
- <div class="wptb-settings-row wptb-settings-middle-xs" style="padding-top: 25px; padding-bottom: 10px;">
92
- <div class='wptb-settings-col-xs-8'>
93
- <input type="text" class="wptb-element-property wptb-color-picker {{{targetInputAddClass}}}"
94
- data-element="{{{elemContainer}}}" data-type="color" value=""/>
 
 
95
  </div>
96
  </div>
97
 
@@ -119,16 +135,18 @@ class Control_Color extends Base_Control {
119
  }
120
 
121
  if( targetInput && selectorElement ) {
122
- if( '{{{selectorsJson}}}' ) {
123
- let selectors = JSON.parse( '{{{selectorsJson}}}' );
124
 
125
  let thisColorCss, thisColorCssHex;
126
  for( let i = 0; i < selectors.length; i++ ) {
127
  if( selectors[i] && Array.isArray( selectors[i] ) && selectors[i][0] && selectors[i][1] ) {
128
  let selectorElements = document.querySelectorAll( selectors[i][0] );
129
  if( selectorElements.length > 0 ) {
 
130
  for( let j = 0; j < selectorElements.length; j++ ) {
131
  if( selectors[i][1] ) {
 
132
  if( Array.isArray( selectors[i][1] ) ) {
133
  for( let k = 0; k < selectors[i][1].length; k++ ) {
134
  if( selectorElements[j].style[selectors[i][1][k]] ) {
@@ -158,16 +176,28 @@ class Control_Color extends Base_Control {
158
  }
159
  }
160
 
161
- if( thisColorCss ) {
162
- targetInput.value = thisColorCss;
163
- }
164
  }
165
  }
 
 
 
 
166
  }
167
  }
168
  }
169
 
170
- function elementColorSet( selectors, color ) {
 
 
 
 
 
 
 
 
 
 
171
  for( let i = 0; i < selectors.length; i++ ) {
172
  if( selectors[i] && Array.isArray( selectors[i] ) && selectors[i][0] && selectors[i][1] ) {
173
  let selectorElements = document.querySelectorAll( selectors[i][0] );
@@ -188,6 +218,52 @@ class Control_Color extends Base_Control {
188
  }
189
  }
190
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
191
  jQuery( '.{{{targetInputAddClass}}}' ).wpColorPicker({
192
  change: function ( event, ui ) {
193
  let uiColor;
@@ -197,7 +273,7 @@ class Control_Color extends Base_Control {
197
  uiColor = '';
198
  }
199
 
200
- elementColorSet( selectors, uiColor );
201
 
202
  let targetInput = document.getElementsByClassName( '{{{targetInputAddClass}}}' );
203
  if( targetInput.length > 0 ) {
55
  name,
56
  selectors = [],
57
  elemContainer,
58
+ useDataset,
59
+ targetInputAddClass,
60
+ dataSets,
61
+ startupValueSelector;
62
 
63
  if( data.label ) {
64
  label = data.label;
65
  }
66
+
67
+ useDataset = data.useDataset;
68
+
69
+ startupValueSelector = data.startupValueSelector;
70
+ let startupJson = null;
71
+ if(startupValueSelector){
72
+ startupJson = JSON.stringify(startupValueSelector);
73
+ }
74
+
75
+ dataSets = data.dataSets;
76
+ let dataSetsJson = null;
77
+ if(dataSets){
78
+ dataSetsJson = JSON.stringify(dataSets);
79
+ }
80
+
81
  if( data.name ) {
82
  name = data.name;
83
  }
90
  i++;
91
  }
92
 
 
 
 
 
93
  if( data.elemContainer ) {
94
  elemContainer = data.elemContainer;
95
  }
96
 
97
  targetInputAddClass = data.elementControlTargetUnicClass;
98
+ if(!window[targetInputAddClass]) window[targetInputAddClass] = [];
99
+ if(!window[targetInputAddClass]['control-color']) window[targetInputAddClass]['control-color'] = [];
100
+ window[targetInputAddClass]['control-color']['selectors'] = selectors;
101
  #>
102
+ <div id="{{{targetInputAddClass}}}">
103
+ <div class='wptb-settings-item-header'>
104
+ <p class="wptb-settings-item-title">{{{label}}}</p>
105
+ </div>
106
+ <div class="wptb-settings-row wptb-settings-middle-xs" style="padding-top: 25px; padding-bottom: 10px;">
107
+ <div class='wptb-settings-col-xs-8'>
108
+ <input type="text" class="wptb-element-property wptb-color-picker {{{targetInputAddClass}}}"
109
+ data-element="{{{elemContainer}}}" data-type="color" value=""/>
110
+ </div>
111
  </div>
112
  </div>
113
 
135
  }
136
 
137
  if( targetInput && selectorElement ) {
138
+ if( window['{{{targetInputAddClass}}}']['control-color']['selectors'] ) {
139
+ let selectors = window['{{{targetInputAddClass}}}']['control-color']['selectors'];
140
 
141
  let thisColorCss, thisColorCssHex;
142
  for( let i = 0; i < selectors.length; i++ ) {
143
  if( selectors[i] && Array.isArray( selectors[i] ) && selectors[i][0] && selectors[i][1] ) {
144
  let selectorElements = document.querySelectorAll( selectors[i][0] );
145
  if( selectorElements.length > 0 ) {
146
+ let thisColorCssArr = [];
147
  for( let j = 0; j < selectorElements.length; j++ ) {
148
  if( selectors[i][1] ) {
149
+ thisColorCss = '';
150
  if( Array.isArray( selectors[i][1] ) ) {
151
  for( let k = 0; k < selectors[i][1].length; k++ ) {
152
  if( selectorElements[j].style[selectors[i][1][k]] ) {
176
  }
177
  }
178
 
179
+ thisColorCssArr.push(thisColorCss);
 
 
180
  }
181
  }
182
+
183
+ if( thisColorCssArr.length > 0 ) {
184
+ targetInput.value = WPTB_Helper.getValueMaxCountSameElementsInArray(thisColorCssArr);
185
+ }
186
  }
187
  }
188
  }
189
 
190
+ function elementColorSet( selectors, color) {
191
+ const useDataset = 'true' === '{{{useDataset}}}';
192
+ if(useDataset){
193
+ addDataSet(selectors, color);
194
+ return;
195
+ }
196
+
197
+ if('' !== '{{{dataSetsJson}}}'){
198
+ addToDataSetSelectors(color);
199
+ }
200
+
201
  for( let i = 0; i < selectors.length; i++ ) {
202
  if( selectors[i] && Array.isArray( selectors[i] ) && selectors[i][0] && selectors[i][1] ) {
203
  let selectorElements = document.querySelectorAll( selectors[i][0] );
218
  }
219
  }
220
 
221
+
222
+ function addToDataSetSelectors(val) {
223
+ const selectorsObj = JSON.parse('{{{dataSetsJson}}}');
224
+
225
+ Object.keys(selectorsObj).map(s => {
226
+ if(Object.prototype.hasOwnProperty.call(selectorsObj , s)){
227
+ const tempEl = document.querySelector(s);
228
+ tempEl.dataset[selectorsObj[s]] = val;
229
+ }
230
+ });
231
+ }
232
+
233
+ function assignDataSetsToPicker(selectors){
234
+ selectors.map(s => {
235
+ const el = document.querySelector(s[0]);
236
+ if(el.dataset[s[1]]){
237
+ targetInput.value = el.dataset[s[1]];
238
+ }
239
+ })
240
+ }
241
+
242
+ function assignStartupData(selectors){
243
+ Object.keys(selectors).map(s => {
244
+ if(Object.prototype.hasOwnProperty.call(selectors , s) ){
245
+ const dataVal = document.querySelector(s).dataset[selectors[s]];
246
+ targetInput.value = dataVal;
247
+ }
248
+ });
249
+ }
250
+
251
+ if('true' === '{{{useDataset}}}'){
252
+ assignDataSetsToPicker(selectors);
253
+ }
254
+
255
+ if('' !== '{{{startupJson}}}'){
256
+ const startupSelectorObj = JSON.parse('{{{startupJson}}}');
257
+ assignStartupData(startupSelectorObj);
258
+ }
259
+
260
+ function addDataSet(selectors, value){
261
+ selectors.map(s => {
262
+ const el = document.querySelector(s[0]);
263
+ el.dataset[s[1]] = value;
264
+ });
265
+ }
266
+
267
  jQuery( '.{{{targetInputAddClass}}}' ).wpColorPicker({
268
  change: function ( event, ui ) {
269
  let uiColor;
273
  uiColor = '';
274
  }
275
 
276
+ elementColorSet( selectors, uiColor);
277
 
278
  let targetInput = document.getElementsByClassName( '{{{targetInputAddClass}}}' );
279
  if( targetInput.length > 0 ) {
inc/admin/controls/control-data-mule.php ADDED
@@ -0,0 +1,54 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ namespace WP_Table_Builder\Inc\Admin\Controls;
4
+
5
+ // if called directly, abort
6
+ if ( ! defined( 'WPINC' ) ) {
7
+ die;
8
+ }
9
+
10
+ /**
11
+ * Class Control_Data_Mule
12
+ *
13
+ * Data mule to carry backend data to front end
14
+ *
15
+ * Accepted options
16
+ * dataId => id for data
17
+ * dataObj => main data object
18
+ *
19
+ * @package WP_Table_Builder\Inc\Admin\Controls
20
+ */
21
+ class Control_Data_Mule extends Base_Control {
22
+ /**
23
+ * Get control type.
24
+ *
25
+ * Return the control type.
26
+ *
27
+ * @since 1.1.2
28
+ * @access public
29
+ */
30
+ public function get_type() {
31
+ return 'data_mule';
32
+ }
33
+
34
+ /**
35
+ * Control content template.
36
+ *
37
+ * Used to generate the control HTML in the editor using wp js template
38
+ *
39
+ * @since 1.1.2
40
+ * @access public
41
+ */
42
+ public function content_template() {
43
+ ?>
44
+ <#
45
+ const dataId = data.dataId;
46
+ const dataObj = data.dataObj;
47
+
48
+ WPTB_ControlsManager.setControlData(dataId , dataObj);
49
+ #>
50
+ <div style="display: none">
51
+ </div>
52
+ <?php
53
+ }
54
+ }
inc/admin/controls/control-html-output.php ADDED
@@ -0,0 +1,53 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ namespace WP_Table_Builder\Inc\Admin\Controls;
3
+
4
+ // If this file is called directly, abort.
5
+ if ( ! defined( 'WPINC' ) ) {
6
+ die;
7
+ }
8
+
9
+ class Control_Html_Output extends Base_Control {
10
+ /**
11
+ * Get size control type.
12
+ *
13
+ * @since 1.1.2
14
+ * @access public
15
+ *
16
+ * @return string Control type.
17
+ */
18
+ public function get_type() {
19
+ return 'html_output';
20
+ }
21
+
22
+ /**
23
+ * Enqueue size control scripts and styles.
24
+ *
25
+ * Used to register and enqueue custom scripts and styles used by the size
26
+ * control.
27
+ *
28
+ * @since 1.1.2
29
+ * @access public
30
+ */
31
+ public function enqueue() {
32
+
33
+ }
34
+
35
+ /**
36
+ * Render size control output in the editor.
37
+ *
38
+ * Used to generate the control HTML in the editor wp js template
39
+ *
40
+ * @since 1.1.2
41
+ * @access public
42
+ */
43
+ public function content_template() {
44
+ ?>
45
+ <#
46
+ const {html} = data;
47
+ #>
48
+ <div class="wptb-settings-row wptb-html-control-wrapper">
49
+ {{{html}}}
50
+ </div>
51
+ <?php
52
+ }
53
+ }
inc/admin/controls/control-icon-select.php ADDED
@@ -0,0 +1,63 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ namespace WP_Table_Builder\Inc\Admin\Controls;
4
+
5
+ use WP_Table_Builder as NS;
6
+
7
+ // if called directly, abort;
8
+ if ( ! defined( 'WPINC' ) ) {
9
+ die;
10
+ }
11
+
12
+ /**
13
+ * Class Control_Icon_Select
14
+ *
15
+ * Icon selection for elements
16
+ *
17
+ * Accepted options
18
+ * label => label for control element
19
+ * selectors => selector array to get/set certain values to html elements
20
+ * icons => an array of key(icon name) => value(icon url) pairs
21
+ * perPage => number of icons to be displayed at every lazy-load sessions of scroll event
22
+ *
23
+ * @package WP_Table_Builder\Inc\Admin\Controls
24
+ */
25
+ class Control_Icon_Select extends Base_Control {
26
+ /**
27
+ * Get control type.
28
+ *
29
+ * Return the control type.
30
+ *
31
+ * @since 1.1.2
32
+ * @access public
33
+ */
34
+ public function get_type() {
35
+ return 'icon_select';
36
+ }
37
+
38
+ /**
39
+ * Control content template.
40
+ *
41
+ * Used to generate the control HTML in the editor using wp js template
42
+ *
43
+ * @since 1.1.2
44
+ * @access public
45
+ */
46
+ public function content_template() {
47
+ ?>
48
+ <#
49
+ const uniqueItemClass = data.elementControlTargetUnicClass;
50
+
51
+ WPTB_ControlsManager.setControlData(uniqueItemClass , data);
52
+ #>
53
+ <div id="{{{uniqueItemClass}}}">
54
+ <icon-select-control :label="label" :icons="icons" :per-page="perPage"
55
+ :selectors="selectors" :default-value="defaultValue"></icon-select-control>
56
+ </div>
57
+ <wptb-template-script>
58
+ WPTB_ControlsManager.callControlScript('ControlIconSelect','{{{uniqueItemClass}}}');
59
+ </wptb-template-script>
60
+ <?php
61
+ }
62
+ }
63
+
inc/admin/controls/control-media-select.php ADDED
@@ -0,0 +1,57 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ namespace WP_Table_Builder\Inc\Admin\Controls;
3
+
4
+ // if called directly, abort;
5
+ if(! defined('WPINC')){
6
+ die;
7
+ }
8
+
9
+ /**
10
+ * Class Control_Media_Select
11
+ *
12
+ * Media selection for elements
13
+ *
14
+ * Accepted options
15
+ * label => label for control element
16
+ * selectors => selector array to get/set certain values to html elements
17
+ *
18
+ * @package WP_Table_Builder\Inc\Admin\Controls
19
+ */
20
+ class Control_Media_Select extends Base_Control{
21
+
22
+ /**
23
+ * Get control type.
24
+ *
25
+ * Return the control type.
26
+ *
27
+ * @since 1.1.2
28
+ * @access public
29
+ */
30
+ public function get_type() {
31
+ return 'media_select';
32
+ }
33
+
34
+ /**
35
+ * Control content template.
36
+ *
37
+ * Used to generate the control HTML in the editor using wp js template
38
+ *
39
+ * @since 1.1.2
40
+ * @access public
41
+ */
42
+ public function content_template() {
43
+ ?>
44
+ <#
45
+ const uniqueItemClass = data.elementControlTargetUnicClass;
46
+
47
+ WPTB_ControlsManager.setControlData(uniqueItemClass , data);
48
+ #>
49
+ <div id="{{{uniqueItemClass}}}">
50
+ <media-select-control :label="label" :selectors="selectors"></media-select-control>
51
+ </div>
52
+ <wptb-template-script>
53
+ WPTB_ControlsManager.callControlScript('ControlMediaSelect','{{{uniqueItemClass}}}');
54
+ </wptb-template-script>
55
+ <?php
56
+ }
57
+ }
inc/admin/controls/control-named-toggle.php ADDED
@@ -0,0 +1,62 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ namespace WP_Table_Builder\Inc\Admin\Controls;
4
+
5
+ // if called directly, abort
6
+ if ( ! defined( 'WPINC' ) ) {
7
+ die;
8
+ }
9
+
10
+ /**
11
+ * Class Control_Named_Toggle
12
+ *
13
+ * Toggle control with names as visuals
14
+ *
15
+ * Accepted options
16
+ * label => label for control element
17
+ * selectors => selector array to get/set certain values to html elements
18
+ * items => a key/value array container toggle item id as keys and its translated title as value
19
+ * defaultValue => a default value of the control
20
+ *
21
+ * @package WP_Table_Builder\Inc\Admin\Controls
22
+ */
23
+ class Control_Named_Toggle extends Base_Control {
24
+
25
+ /**
26
+ * Get control type.
27
+ *
28
+ * Return the control type.
29
+ *
30
+ * @since 1.1.2
31
+ * @access public
32
+ */
33
+ public function get_type() {
34
+ return 'named_toggle';
35
+ }
36
+
37
+ /**
38
+ * Control content template.
39
+ *
40
+ * Used to generate the control HTML in the editor using wp js template
41
+ *
42
+ * @since 1.1.2
43
+ * @access public
44
+ */
45
+ public function content_template() {
46
+ ?>
47
+ <#
48
+ const uniqueItemClass = data.elementControlTargetUnicClass;
49
+ WPTB_ControlsManager.setControlData(uniqueItemClass, data);
50
+ const elemContainer = data.elemContainer;
51
+ #>
52
+ <div id="{{{uniqueItemClass}}}">
53
+ <named-toggle-control :label="label" :items="items" :selectors="selectors" :default-value="defaultValue"
54
+ elem-container="{{{elemContainer}}}"
55
+ unique-id="{{{uniqueItemClass}}}"></named-toggle-control>
56
+ </div>
57
+ <wptb-template-script>
58
+ WPTB_ControlsManager.callControlScript('ControlNamedToggle', '{{{uniqueItemClass}}}');
59
+ </wptb-template-script>
60
+ <?php
61
+ }
62
+ }
inc/admin/controls/control-range.php ADDED
@@ -0,0 +1,70 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ namespace WP_Table_Builder\Inc\Admin\Controls;
4
+
5
+
6
+ // if called directly, abort
7
+ if ( ! defined( 'WPINC' ) ) {
8
+ die;
9
+ }
10
+
11
+ /**
12
+ * Class Control_Range
13
+ *
14
+ * Range slider control for elements
15
+ *
16
+ * Accepted options
17
+ * label => label for control element
18
+ * selectors => selector array to get/set certain values to html elements
19
+ * min => minimum value of the slider
20
+ * max => maximum value of the slider
21
+ * step => step value of the slider
22
+ * defaultValue => default value of the slider
23
+ * postFix => suffix to be added to the end of value
24
+ *
25
+ * @package WP_Table_Builder\Inc\Admin\Controls
26
+ */
27
+ class Control_Range extends Base_Control {
28
+
29
+ /**
30
+ * Get control type.
31
+ *
32
+ * Return the control type.
33
+ *
34
+ * @since 1.1.2
35
+ * @access public
36
+ */
37
+ public function get_type() {
38
+ return 'range';
39
+ }
40
+
41
+ /**
42
+ * Control content template.
43
+ *
44
+ * Used to generate the control HTML in the editor using wp js template
45
+ *
46
+ * @since 1.1.2
47
+ * @access public
48
+ */
49
+ public function content_template() {
50
+ ?>
51
+ <#
52
+ const uniqueItemClass = data.elementControlTargetUnicClass;
53
+ WPTB_ControlsManager.setControlData(uniqueItemClass, data);
54
+ const elemContainer = data.elemContainer;
55
+
56
+ if(!data.postFix){
57
+ data.postFix='';
58
+ }
59
+ #>
60
+ <div id="{{{uniqueItemClass}}}">
61
+ <range-control :label="label" :selectors="selectors" :min="min" :max="max" :step="step"
62
+ :default-value="defaultValue" unique-id="{{{uniqueItemClass}}}"
63
+ elem-container="{{{elemContainer}}}" :post-fix="postFix"></range-control>
64
+ </div>
65
+ <wptb-template-script>
66
+ WPTB_ControlsManager.callControlScript('ControlRange', '{{{uniqueItemClass}}}');
67
+ </wptb-template-script>
68
+ <?php
69
+ }
70
+ }
inc/admin/controls/control-section-group-collapse-end.php ADDED
@@ -0,0 +1,54 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ namespace WP_Table_Builder\Inc\Admin\Controls;
4
+
5
+ // if called directly, abort the process
6
+ if ( ! defined( 'WPINC' ) ) {
7
+ die;
8
+ }
9
+
10
+ class Control_Section_Group_Collapse_End extends Base_Control {
11
+ /**
12
+ * Get control type.
13
+ *
14
+ * Return the control type.
15
+ *
16
+ * @since 1.1.2
17
+ * @access public
18
+ */
19
+ public function get_type() {
20
+ return 'section_group_collapse_end';
21
+ }
22
+
23
+ /**
24
+ * Control content template.
25
+ *
26
+ * Used to generate the control HTML in the editor using wp js template
27
+ *
28
+ * @since 1.1.2
29
+ * @access public
30
+ */
31
+ public function content_template() {
32
+ ?>
33
+ <#
34
+ const startId = data.startId;
35
+ const endId = data.endId;
36
+ #>
37
+ <div id="{{{endId}}}"></div>
38
+
39
+ <wptb-template-script>
40
+ (function noConflict($) {
41
+
42
+ const startElement = $('#{{{startId}}}');
43
+ const toggleTarget = startElement.find('.wptb-panel-section-toggle-target');
44
+ const endElement = $('#{{{endId}}}').parent();
45
+
46
+ startElement.nextUntil(endElement).detach().appendTo(toggleTarget);
47
+ endElement.remove();
48
+
49
+ })(jQuery)
50
+ </wptb-template-script>
51
+ <?php
52
+ }
53
+ }
54
+
inc/admin/controls/control-section-group-collapse-start.php ADDED
@@ -0,0 +1,86 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ namespace WP_Table_Builder\Inc\Admin\Controls;
4
+
5
+ // If this file is called directly, abort.
6
+ if ( ! defined( 'WPINC' ) ) {
7
+ die;
8
+ }
9
+
10
+ /**
11
+ * WP Table Builder collapsible section group start section
12
+ *
13
+ * This is the start section of the section group that adds header and collapse mechanics with wrapper element for inner controls.
14
+ */
15
+ class Control_Section_Group_Collapse_Start extends Base_Control {
16
+
17
+ /**
18
+ * Get control type.
19
+ *
20
+ * Return the control type.
21
+ *
22
+ * @since 1.1.2
23
+ * @access public
24
+ */
25
+ public function get_type() {
26
+ return 'section_group_collapse_start';
27
+ }
28
+
29
+ /**
30
+ * Control content template.
31
+ *
32
+ * Used to generate the control HTML in the editor using wp js template
33
+ *
34
+ * @since 1.1.2
35
+ * @access public
36
+ */
37
+ public function content_template() {
38
+ ?>
39
+ <#
40
+ const label = data.label;
41
+ const sectionId = data.sectionId;
42
+ const openState = data.openState;
43
+
44
+
45
+ #>
46
+ <div class="wptb-panel-toggle-group" id="{{{sectionId}}}">
47
+ <div class="wptb-panel-toggle">
48
+ <div class="header">{{{label}}}</div>
49
+ <span class="dashicons toggle-icon"></span>
50
+ </div>
51
+ <div class="wptb-panel-section-toggle-target">
52
+
53
+ </div>
54
+ </div>
55
+
56
+ <wptb-template-script>
57
+ (function noConflict($) {
58
+ const togglePanelWrapper = $('#{{{sectionId}}}');
59
+ const elementSettingWrapper = togglePanelWrapper.parent();
60
+ const toggleTarget = togglePanelWrapper.find('.wptb-panel-section-toggle-target');
61
+ const panelToggleHeader = togglePanelWrapper.find('.wptb-panel-toggle');
62
+
63
+ togglePanelWrapper.detach().insertBefore(elementSettingWrapper);
64
+ elementSettingWrapper.remove();
65
+
66
+ function handleToggle(e){
67
+ if(e){
68
+ e.stopPropagation();
69
+ }
70
+
71
+ togglePanelWrapper.toggleClass('wptb-panel-toggle-content');
72
+ toggleTarget.slideToggle();
73
+ }
74
+
75
+ if({{{openState}}} === false){
76
+ handleToggle();
77
+ }
78
+
79
+ togglePanelWrapper.find('.toggle-icon').click(handleToggle);
80
+ panelToggleHeader.click(handleToggle);
81
+
82
+ })(jQuery)
83
+ </wptb-template-script>
84
+ <?php
85
+ }
86
+ }
inc/admin/controls/control-section-group-collapse.php ADDED
@@ -0,0 +1,87 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ namespace WP_Table_Builder\Inc\Admin\Controls;
4
+
5
+ // If this file is called directly, abort the process.
6
+ use WP_Table_Builder\Inc\Admin\Managers\Controls_Manager;
7
+
8
+ if ( ! defined( 'WPINC' ) ) {
9
+ die;
10
+ }
11
+
12
+ /**
13
+ * Class Control_Section_Group_Collapse
14
+ *
15
+ * Adds a section grouping for the supplied control elements
16
+ */
17
+ class Control_Section_Group_Collapse {
18
+
19
+ /**
20
+ * Add control section group to control manager instance.
21
+ *
22
+ * @param string $section_id section id to be used as id property of the first section element
23
+ * @param string $section_label title for section group
24
+ * @param array $section_controls controls array as keys for control ids, values for control arguments
25
+ * @param callable $control_call function to add the section controls to control manager
26
+ * @param bool $open_state force section to start as opened or not
27
+ */
28
+ public static function add_section( $section_id, $section_label, $section_controls, $control_call, $open_state = true ) {
29
+ $section_controls = apply_filters( 'wp-table-builder/register-controls-section-group/' . $section_id, $section_controls, $section_id );
30
+ $start_section_id = "${section_id}_section-group-start";
31
+ $end_section_id = "${section_id}_section-group-end";
32
+
33
+ // add section start
34
+ static::add_section_start( $section_label, $start_section_id, $open_state, $control_call );
35
+
36
+ // add group controls
37
+ foreach ( $section_controls as $control_id => $control_args ) {
38
+ $control_pos = 0;
39
+ if( is_array( $control_args ) ) {
40
+ if( array_key_exists( 'control_pos', $control_args ) ) {
41
+ $control_pos = $control_args['control_pos'];
42
+ }
43
+ if( array_key_exists( 'control_args', $control_args ) ) {
44
+ $control_args = $control_args['control_args'];
45
+ }
46
+ }
47
+ call_user_func( $control_call, $control_id, $control_args, $control_pos );
48
+ }
49
+
50
+ // add section end
51
+ static::add_section_end( $start_section_id, $end_section_id, $control_call );
52
+ }
53
+
54
+ /**
55
+ * Add section start control to control manager.
56
+ *
57
+ * @param string $section_label label for section start control
58
+ * @param string $section_id unique section id for identifying beginning of control group
59
+ * @param bool $open_state force section to start as opened or not
60
+ * @param callable $control_call function to add the section start control to control manager
61
+ */
62
+ private static function add_section_start( $section_label, $section_id, $open_state, $control_call ) {
63
+ call_user_func( $control_call, $section_id, [
64
+ 'type' => Controls_Manager::SECTION_GROUP_COLLAPSE_START,
65
+ 'label' => $section_label,
66
+ 'sectionId' => $section_id,
67
+ 'openState' => $open_state
68
+ ] );
69
+ }
70
+
71
+ /**
72
+ * Add section end control to control manager
73
+ *
74
+ * @param string $start_id id of the first element of control group
75
+ * @param string $end_id id of the last element of control group
76
+ * @param callable $control_call function to add the section end to control manager
77
+ */
78
+ private static function add_section_end( $start_id, $end_id, $control_call ) {
79
+ call_user_func( $control_call, $end_id, [
80
+ 'type' => Controls_Manager::SECTION_GROUP_COLLAPSE_END,
81
+ 'startId' => $start_id,
82
+ 'endId' => $end_id,
83
+ ] );
84
+ }
85
+
86
+
87
+ }
inc/admin/controls/control-section-group-tab-content-end.php ADDED
@@ -0,0 +1,63 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ namespace WP_Table_Builder\Inc\Admin\Controls;
4
+
5
+ // if called directly, abort;
6
+ if ( ! defined( 'WPINC' ) ) {
7
+ die;
8
+ }
9
+
10
+ /**
11
+ * Class Control_Section_Group_Tab_Content_End
12
+ *
13
+ * Control class to mark the end of tab group
14
+ */
15
+ class Control_Section_Group_Tab_Content_End extends Base_Control {
16
+
17
+ /**
18
+ * Get control type.
19
+ *
20
+ * Return the control type.
21
+ *
22
+ * @since 1.1.2
23
+ * @access public
24
+ */
25
+ public function get_type() {
26
+ return 'section_group_tab_content_end';
27
+ }
28
+
29
+ /**
30
+ * Control content template.
31
+ *
32
+ * Used to generate the control HTML in the editor using wp js template
33
+ *
34
+ * @since 1.1.2
35
+ * @access public
36
+ */
37
+ public function content_template() {
38
+ ?>
39
+ <#
40
+ const sectionId = data.sectionId;
41
+ const groupId = data.groupId;
42
+
43
+ const uniqueId = data.elementControlTargetUnicClass;
44
+ #>
45
+ <div id="{{{uniqueId}}}"></div>
46
+
47
+ <wptb-template-script>
48
+ (function noConflict($) {
49
+ const tabGroup = $('#{{{sectionId}}}');
50
+ const tab = tabGroup.find('[data-wptb-tab-group-id={{{groupId}}}]');
51
+ const endMark = $('#{{{uniqueId}}}').parent();
52
+
53
+ const tabControls = tabGroup.nextUntil(endMark);
54
+ tabControls.detach().appendTo(tab);
55
+
56
+ endMark.remove();
57
+ })(jQuery);
58
+ </wptb-template-script>
59
+
60
+ <?php
61
+
62
+ }
63
+ }
inc/admin/controls/control-section-group-tabbed-start.php ADDED
@@ -0,0 +1,124 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ namespace WP_Table_Builder\Inc\Admin\Controls;
4
+
5
+ // if called directly, abort;
6
+ if ( ! defined( 'WPINC' ) ) {
7
+ die;
8
+ }
9
+
10
+ class Control_Section_Group_Tabbed_Start extends Base_Control {
11
+
12
+ /**
13
+ * Get control type.
14
+ *
15
+ * Return the control type.
16
+ *
17
+ * @since 1.1.2
18
+ * @access public
19
+ */
20
+ public function get_type() {
21
+ return 'section_group_tabbed_start';
22
+ }
23
+
24
+ /**
25
+ * Control content template.
26
+ *
27
+ * Used to generate the control HTML in the editor using wp js template
28
+ *
29
+ * @since 1.1.2
30
+ * @access public
31
+ */
32
+ public function content_template() {
33
+ ?>
34
+ <#
35
+ const label = data.label;
36
+ const sectionId = data.sectionId;
37
+ const tabs = data.tabs;
38
+
39
+ #>
40
+ <div class="wptb-section-group-tabbed wptb-plugin-box-shadow-md" id="{{{sectionId}}}">
41
+ <div class="wptb-panel-toggle wptb-section-group-tabbed-header">
42
+ <div class="header">{{{label}}}</div>
43
+ </div>
44
+ <div class="wptb-section-group-tabbed-tabs-buttons">
45
+ <#
46
+ tabs.map((t,i) => {
47
+ const activeClass = i === 0 ? 'active' : 'disabled';
48
+ #>
49
+ <div class="wptb-settings-section-item static-active {{{activeClass}}}"
50
+ data-wptb-tabbed-button="{{{t}}}">{{{t}}}
51
+ </div>
52
+ <#
53
+ })
54
+ #>
55
+ </div>
56
+ <#
57
+ tabs.map((t,i)=>{
58
+ const visibleClass = i === 0 ? '' : 'wptb-plugin-non-visible';
59
+ #>
60
+ <div class="wptb-section-group-tab-content {{{visibleClass}}}" data-wptb-tab-group-id="{{{t}}}">
61
+
62
+ </div>
63
+ <#
64
+ });
65
+ #>
66
+ </div>
67
+
68
+ <wptb-template-script>
69
+ (function noConflict($){
70
+ const base = $('#{{{sectionId}}}');
71
+ const parent = base.parent();
72
+
73
+ base.detach().insertBefore(parent);
74
+ parent.remove();
75
+
76
+ const tabButtons = $('[data-wptb-tabbed-button]');
77
+
78
+ tabButtons.each(function () {
79
+ $(this).click(function (e) {
80
+ const datasetContent = this.dataset.wptbTabbedButton;
81
+
82
+ const tabEvent = new CustomEvent('{{{sectionId}}}', {detail: datasetContent});
83
+
84
+ document.dispatchEvent(tabEvent);
85
+ })
86
+ });
87
+
88
+ function handleButtonActiveState(event) {
89
+ const tabButtons = $('#{{{sectionId}}} [data-wptb-tabbed-button]');
90
+
91
+ tabButtons.each(function () {
92
+ const dataContent = this.dataset.wptbTabbedButton;
93
+ const isActive = dataContent === event.detail;
94
+
95
+ this.classList.add(isActive ? 'active' : 'disabled');
96
+ this.classList.remove(isActive ? 'disabled' : 'active');
97
+ })
98
+ }
99
+
100
+ function handleControlVisibility(e){
101
+ const tabContents = $('#{{{sectionId}}} [data-wptb-tab-group-id]');
102
+
103
+ tabContents.each(function () {
104
+ const dataContent = this.dataset.wptbTabGroupId;
105
+ const isActive = dataContent === e.detail;
106
+
107
+ if (isActive) {
108
+ this.classList.remove('wptb-plugin-non-visible');
109
+ } else {
110
+ this.classList.add('wptb-plugin-non-visible');
111
+ }
112
+ })
113
+ }
114
+
115
+ document.addEventListener('{{{sectionId}}}', (e) => {
116
+ handleButtonActiveState(e);
117
+ handleControlVisibility(e);
118
+ });
119
+
120
+ })(jQuery);
121
+ </wptb-template-script>
122
+ <?php
123
+ }
124
+ }
inc/admin/controls/control-section-group-tabbed.php ADDED
@@ -0,0 +1,87 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ namespace WP_Table_Builder\Inc\Admin\Controls;
4
+
5
+ // if called directly, abort.
6
+ use WP_Table_Builder\Inc\Admin\Managers\Controls_Manager;
7
+
8
+ if ( ! defined( 'WPINC' ) ) {
9
+ die;
10
+ }
11
+
12
+ /**
13
+ * Class Control_Section_Group_Tabbed
14
+ *
15
+ * Adds a tabbed control grouping for the supplied controls
16
+ */
17
+ class Control_Section_Group_Tabbed {
18
+
19
+ /**
20
+ * Add tabbed control group to control manager instance.
21
+ *
22
+ * @param string $section_id section id to be used as id property of the first section element
23
+ * @param string $section_label title for section tabbed group
24
+ * @param array $section_controls controls array
25
+ * @param callable $control_call function to add the group controls to control manager instance
26
+ */
27
+ public static function add_section( $section_id, $section_label, $section_controls, $control_call ) {
28
+ $tab_labels = array_keys( $section_controls );
29
+
30
+ // add first part of the tabbed content
31
+ static::add_start( $section_label, $section_id, $tab_labels, $control_call );
32
+
33
+ // add controls to related tabs
34
+ foreach ($section_controls as $tab => $controls){
35
+ static::add_controls($section_id, $tab , $controls , $control_call);
36
+ }
37
+
38
+ }
39
+
40
+ /**
41
+ * Add element controls to tab content
42
+ *
43
+ * @param string $section_id tab group id
44
+ * @param string $tab_id current tab id
45
+ * @param array $section_controls an array of element controls, keys for control id, values for control arguments
46
+ * @param callable $control_call function to add controls to control manager instance
47
+ */
48
+ private static function add_controls( $section_id, $tab_id, $section_controls, $control_call ) {
49
+ foreach($section_controls as $control_id => $control_options){
50
+ $control_pos = 0;
51
+ if( is_array( $control_options ) ) {
52
+ if( array_key_exists( 'control_pos', $control_options ) ) {
53
+ $control_pos = $control_options['control_pos'];
54
+ }
55
+ if( array_key_exists( 'control_args', $control_options ) ) {
56
+ $control_options = $control_options['control_args'];
57
+ }
58
+ }
59
+ call_user_func($control_call , $control_id , $control_options, $control_pos);
60
+ }
61
+
62
+ // end tab content end control
63
+ call_user_func($control_call, "${section_id}_${tab_id}_tab_content_end", [
64
+ 'type'=> Controls_Manager::SECTION_GROUP_TAB_CONTENT_END,
65
+ 'sectionId' => $section_id,
66
+ 'groupId' => $tab_id,
67
+ ]);
68
+ }
69
+
70
+ /**
71
+ * Add start part of tabbed section.
72
+ *
73
+ * @param string $section_label label for section start control
74
+ * @param string $section_id unique id for tabbed section
75
+ * @param array $tabs an array of tab labels
76
+ * @param callable $control_call function to add controls to control manager instance
77
+ */
78
+ private static function add_start( $section_label, $section_id, $tabs, $control_call ) {
79
+ call_user_func( $control_call, $section_id, [
80
+ 'type' => Controls_Manager::SECTION_GROUP_TABBED_START,
81
+ 'label' => $section_label,
82
+ 'sectionId' => $section_id,
83
+ 'tabs' => $tabs
84
+ ] );
85
+ }
86
+ }
87
+
inc/admin/controls/control-section-header.php CHANGED
@@ -59,7 +59,8 @@ class Control_Section_Header extends Base_Control {
59
  buttonBack = data.buttonBack;
60
  }
61
  #>
62
- <div class="wptb-settings-dropdown">
 
63
  <#
64
  if( buttonBack ) {
65
  #>
@@ -77,7 +78,7 @@ class Control_Section_Header extends Base_Control {
77
  <#
78
  }
79
  #>
80
- <div class="wptb-option-text">{{{label}}}</div>
81
  </div>
82
 
83
  <wptb-template-script>
59
  buttonBack = data.buttonBack;
60
  }
61
  #>
62
+ <div class="wptb-panel-toggle">
63
+ <div class="header">
64
  <#
65
  if( buttonBack ) {
66
  #>
78
  <#
79
  }
80
  #>
81
+ {{{label}}}</div>
82
  </div>
83
 
84
  <wptb-template-script>
inc/admin/controls/control-select2.php ADDED
@@ -0,0 +1,61 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ namespace WP_Table_Builder\Inc\Admin\Controls;
4
+
5
+ // if called directly, abort
6
+ if ( ! defined( 'WPINC' ) ) {
7
+ die;
8
+ }
9
+
10
+ /**
11
+ * Class Control_Select2
12
+ *
13
+ * Selection control for elements
14
+ *
15
+ * Accepted options
16
+ * label => label for control element
17
+ * selectors => selector array to get/set certain values to html elements
18
+ * options => options for the select element, values => translated texts
19
+ * defaultValue => default value for the select control
20
+ *
21
+ * @package WP_Table_Builder\Inc\Admin\Controls
22
+ */
23
+ class Control_Select2 extends Base_Control{
24
+
25
+ /**
26
+ * Get control type.
27
+ *
28
+ * Return the control type.
29
+ *
30
+ * @since 1.1.2
31
+ * @access public
32
+ */
33
+ public function get_type() {
34
+ return 'select2';
35
+ }
36
+
37
+ /**
38
+ * Control content template.
39
+ *
40
+ * Used to generate the control HTML in the editor using wp js template
41
+ *
42
+ * @since 1.1.2
43
+ * @access public
44
+ */
45
+ public function content_template() {
46
+ ?>
47
+ <#
48
+ const uniqueItemClass = data.elementControlTargetUnicClass;
49
+ WPTB_ControlsManager.setControlData(uniqueItemClass, data);
50
+ const elemContainer = data.elemContainer;
51
+ #>
52
+ <div id="{{{uniqueItemClass}}}">
53
+ <select2-control :label="label" :selectors="selectors" :options="options" :default-value="defaultValue" unique-id="{{{uniqueItemClass}}}" elem-container = "{{{elemContainer}}}" ></select2-control>
54
+ </div>
55
+ <wptb-template-script>
56
+ WPTB_ControlsManager.callControlScript('Select2', '{{{uniqueItemClass}}}');
57
+ </wptb-template-script>
58
+ <?php
59
+ }
60
+ }
61
+
inc/admin/controls/control-sides.php ADDED
@@ -0,0 +1,79 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ namespace WP_Table_Builder\Inc\Admin\Controls;
4
+
5
+ use WP_Table_Builder as NS;
6
+
7
+ // if called directly, abort
8
+ if ( ! defined( 'WPINC' ) ) {
9
+ die;
10
+ }
11
+
12
+ /**
13
+ * Class Control_Sides.
14
+ *
15
+ * Side value assign control with value type selection.
16
+ *
17
+ * Accepted options
18
+ * label => label for control element
19
+ * selectors => selector array to get/set certain values to html elements
20
+ * defaultValue => default value of the slider. use full default value for all sides, don't use shorthand definitions. e.g use '10 10 10 10' instead of '10 10'
21
+ *
22
+ * @package WP_Table_Builder\Inc\Admin\Controls
23
+ */
24
+ class Control_Sides extends Base_Control {
25
+
26
+ /**
27
+ * Get control type.
28
+ *
29
+ * Return the control type.
30
+ *
31
+ * @since 1.1.2
32
+ * @access public
33
+ */
34
+ public function get_type() {
35
+ return 'sides';
36
+ }
37
+
38
+ /**
39
+ * Control content template.
40
+ *
41
+ * Used to generate the control HTML in the editor using wp js template
42
+ *
43
+ * @since 1.1.2
44
+ * @access public
45
+ */
46
+ public function content_template() {
47
+ $strings = [
48
+ 'top' => esc_html__( 'top', 'wp-table-builder' ),
49
+ 'right' => esc_html__( 'right', 'wp-table-builder' ),
50
+ 'bottom' => esc_html__( 'bottom', 'wp-table-builder' ),
51
+ 'left' => esc_html__( 'left', 'wp-table-builder' ),
52
+ 'link' => esc_html__( 'link values', 'wp-table-builder' ),
53
+ 'unlink' => esc_html__( 'unlink values', 'wp-table-builder' ),
54
+ ];
55
+
56
+ $control_icons = [
57
+ 'link' => trailingslashit( NS\WP_TABLE_BUILDER_URL ) . 'inc/frontend/views/icons/link.svg',
58
+ 'unlink' => trailingslashit( NS\WP_TABLE_BUILDER_URL ) . 'inc/frontend/views/icons/unlink.svg',
59
+ ];
60
+
61
+ $json_strings = json_encode( $strings );
62
+ $json_icons = json_encode( $control_icons );
63
+ ?>
64
+ <#
65
+ const uniqueItemClass = data.elementControlTargetUnicClass;
66
+ WPTB_ControlsManager.setControlData(uniqueItemClass, data);
67
+ data.strings = JSON.parse('<?php echo $json_strings; ?>');
68
+ data.icons = JSON.parse('<?php echo $json_icons; ?>');
69
+ #>
70
+ <div id="{{{uniqueItemClass}}}">
71
+ <sides-control :label="label" :link-icon="icons.link" :unlink-icon="icons.unlink" :strings="strings"
72
+ :default-value="defaultValue" :selectors="selectors"></sides-control>
73
+ </div>
74
+ <wptb-template-script>
75
+ WPTB_ControlsManager.callControlScript('ControlSides', '{{{uniqueItemClass}}}');
76
+ </wptb-template-script>
77
+ <?php
78
+ }
79
+ }
inc/admin/controls/control-size.php CHANGED
@@ -84,15 +84,15 @@ class Control_Size extends Base_Control {
84
  } else {
85
  max = 100;
86
  }
87
- if( data.min ) {
88
- min = data.min;
89
- } else {
90
  min = 10;
91
- }
92
- if( data.defaultValue ) {
93
- defaultValue = data.defaultValue;
94
  } else {
 
 
 
95
  defaultValue = 15;
 
 
96
  }
97
  if( data.dimension ) {
98
  dimension = data.dimension;
84
  } else {
85
  max = 100;
86
  }
87
+ if(isNaN(data.min)) {
 
 
88
  min = 10;
 
 
 
89
  } else {
90
+ min = data.min;
91
+ }
92
+ if( isNaN(data.defaultValue )) {
93
  defaultValue = 15;
94
+ } else {
95
+ defaultValue = data.defaultValue;
96
  }
97
  if( data.dimension ) {
98
  dimension = data.dimension;
inc/admin/controls/control-text.php CHANGED
@@ -36,7 +36,7 @@ class Control_Text extends Base_Control {
36
  * @access public
37
  */
38
  public function enqueue() {
39
-
40
  }
41
 
42
  /**
@@ -55,11 +55,23 @@ class Control_Text extends Base_Control {
55
  placeholder,
56
  elemContainer,
57
  targetInputAddClass = '';
58
-
59
- if( data.label ) {
 
 
 
 
 
 
 
 
 
 
 
 
60
  label = data.label;
61
  }
62
-
63
  let i = 0;
64
  for ( let prop in data.selectors ) {
65
  selectors[i] = [];
@@ -67,32 +79,32 @@ class Control_Text extends Base_Control {
67
  selectors[i][1] = data.selectors[prop];
68
  i++;
69
  }
70
-
71
  if( selectors && Array.isArray( selectors ) ) {
72
  selectorsJson = JSON.stringify( selectors );
73
  }
74
-
75
  if( data.placeholder ) {
76
  placeholder = data.placeholder;
77
  }
78
-
79
  if( data.elemContainer ) {
80
  elemContainer = data.elemContainer;
81
  }
82
-
83
  targetInputAddClass = data.elementControlTargetUnicClass;
84
  #>
85
-
86
  <div class='wptb-settings-item-header' >
87
  <p class="wptb-settings-item-title">{{{label}}}</p>
88
  </div>
89
  <div class="wptb-settings-row wptb-settings-middle-xs" style="padding-bottom: 12px; padding-top: 23px;">
90
  <div class="wptb-settings-col-xs-8">
91
- <input class="wptb-number wptb-element-property {{{targetInputAddClass}}}"
92
  type="text" data-element="{{{elemContainer}}}" placeholder="{{{placeholder}}}">
93
  </div>
94
  </div>
95
-
96
  <wptb-template-script>
97
  ( function() {
98
  let targetInputs = document.getElementsByClassName( '{{{targetInputAddClass}}}' );
@@ -169,12 +181,29 @@ class Control_Text extends Base_Control {
169
  }
170
  }
171
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
172
  if( '{{{selectorsJson}}}' ) {
173
  let selectors = JSON.parse( '{{{selectorsJson}}}' );
174
 
175
  targetInput.value = getSetElementValue( selectors );
176
  }
177
-
178
  targetInput.oninput = function( event ) {
179
  let details = {value: this.value};
180
  WPTB_Helper.wptbDocumentEventGenerate( 'wptb-control:{{{targetInputAddClass}}}', selectorElement, details );
@@ -183,9 +212,17 @@ class Control_Text extends Base_Control {
183
 
184
  getSetElementValue( selectors, details.value );
185
  }
186
- };
187
 
188
- targetInput.onchange = function( event ) {
 
 
 
 
 
 
 
 
 
189
  let wptbTableStateSaveManager = new WPTB_TableStateSaveManager();
190
  wptbTableStateSaveManager.tableStateSet();
191
  };
@@ -193,7 +230,7 @@ class Control_Text extends Base_Control {
193
  }
194
  } )();
195
  </wptb-template-script>
196
-
197
  <?php
198
  }
199
  }
36
  * @access public
37
  */
38
  public function enqueue() {
39
+
40
  }
41
 
42
  /**
55
  placeholder,
56
  elemContainer,
57
  targetInputAddClass = '';
58
+
59
+ const {dataSelectors,attributeSelectors} = data;
60
+ let dataSelectorsJson = null;
61
+ let attributeSelectorsJson = null;
62
+
63
+ if(dataSelectors){
64
+ dataSelectorsJson = JSON.stringify(dataSelectors);
65
+ }
66
+
67
+ if(attributeSelectors){
68
+ attributeSelectorsJson = JSON.stringify(attributeSelectors);
69
+ }
70
+
71
+ if( data.label ) {
72
  label = data.label;
73
  }
74
+
75
  let i = 0;
76
  for ( let prop in data.selectors ) {
77
  selectors[i] = [];
79
  selectors[i][1] = data.selectors[prop];
80
  i++;
81
  }
82
+
83
  if( selectors && Array.isArray( selectors ) ) {
84
  selectorsJson = JSON.stringify( selectors );
85
  }
86
+
87
  if( data.placeholder ) {
88
  placeholder = data.placeholder;
89
  }
90
+
91
  if( data.elemContainer ) {
92
  elemContainer = data.elemContainer;
93
  }
94
+
95
  targetInputAddClass = data.elementControlTargetUnicClass;
96
  #>
97
+
98
  <div class='wptb-settings-item-header' >
99
  <p class="wptb-settings-item-title">{{{label}}}</p>
100
  </div>
101
  <div class="wptb-settings-row wptb-settings-middle-xs" style="padding-bottom: 12px; padding-top: 23px;">
102
  <div class="wptb-settings-col-xs-8">
103
+ <input class="wptb-number wptb-element-property {{{targetInputAddClass}}}"
104
  type="text" data-element="{{{elemContainer}}}" placeholder="{{{placeholder}}}">
105
  </div>
106
  </div>
107
+
108
  <wptb-template-script>
109
  ( function() {
110
  let targetInputs = document.getElementsByClassName( '{{{targetInputAddClass}}}' );
181
  }
182
  }
183
 
184
+ function setDataSets(selectors, value) {
185
+ Object.keys(selectors).map(s => {
186
+ if (Object.prototype.hasOwnProperty.call(selectors, s)) {
187
+ document.querySelector(s).dataset[selectors[s]] = value;
188
+ }
189
+ })
190
+ }
191
+
192
+
193
+ function setAttributes(selectors, value) {
194
+ Object.keys(selectors).map(s => {
195
+ if (Object.prototype.hasOwnProperty.call(selectors, s)) {
196
+ document.querySelector(s).setAttribute(selectors[s], value);
197
+ }
198
+ })
199
+ }
200
+
201
  if( '{{{selectorsJson}}}' ) {
202
  let selectors = JSON.parse( '{{{selectorsJson}}}' );
203
 
204
  targetInput.value = getSetElementValue( selectors );
205
  }
206
+
207
  targetInput.oninput = function( event ) {
208
  let details = {value: this.value};
209
  WPTB_Helper.wptbDocumentEventGenerate( 'wptb-control:{{{targetInputAddClass}}}', selectorElement, details );
212
 
213
  getSetElementValue( selectors, details.value );
214
  }
 
215
 
216
+ if('{{{dataSelectorsJson}}}'){
217
+ setDataSets(JSON.parse('{{{dataSelectorsJson}}}'), details.value);
218
+ }
219
+
220
+ if('{{{attributeSelectorsJson}}}'){
221
+ setAttributes(JSON.parse('{{{attributeSelectorsJson}}}'), details.value);
222
+ }
223
+ };
224
+
225
+ targetInput.onchange = function( event ) {
226
  let wptbTableStateSaveManager = new WPTB_TableStateSaveManager();
227
  wptbTableStateSaveManager.tableStateSet();
228
  };
230
  }
231
  } )();
232
  </wptb-template-script>
233
+
234
  <?php
235
  }
236
  }
inc/admin/controls/control-toggle.php CHANGED
@@ -35,7 +35,7 @@ class Control_Toggle extends Base_Control {
35
  * @access public
36
  */
37
  public function enqueue() {
38
-
39
  }
40
 
41
  /**
@@ -54,12 +54,13 @@ class Control_Toggle extends Base_Control {
54
  selectors = [],
55
  elemContainer,
56
  selectorsJson,
57
- targetInputAddClass;
 
58
 
59
  if( data.label ) {
60
  label = data.label;
61
  }
62
-
63
  let i = 0;
64
  for ( let prop in data.selectors ) {
65
  selectors[i] = [];
@@ -67,26 +68,30 @@ class Control_Toggle extends Base_Control {
67
  selectors[i][1] = data.selectors[prop];
68
  i++;
69
  }
70
-
71
  if( selectors && Array.isArray( selectors ) ) {
72
  selectorsJson = JSON.stringify( selectors );
73
  }
74
-
75
  if( data.elemContainer ) {
76
  elemContainer = data.elemContainer;
77
  }
 
 
 
 
78
 
79
  targetInputAddClass = data.elementControlTargetUnicClass;
80
  #>
81
-
82
- <div class="wptb-settings-row wptb-settings-middle-xs">
83
  <label class="wptb-toggle">
84
  <span style="font-size: 16px">{{{label}}}</span>
85
  <input class="wptb-element-property {{{targetInputAddClass}}}" type="checkbox" data-element="{{{elemContainer}}}">
86
  <i></i>
87
- </label>
88
  </div>
89
-
90
  <wptb-template-script>
91
  ( function() {
92
  let targetInputs = document.getElementsByClassName( '{{{targetInputAddClass}}}' );
@@ -237,7 +242,7 @@ class Control_Toggle extends Base_Control {
237
  if( '{{{selectorsJson}}}' ) {
238
  let selectors = JSON.parse( '{{{selectorsJson}}}' );
239
 
240
- targetInput.checked = getSetElementValue( selectors );
241
  }
242
 
243
  targetInput.onchange = function( event ) {
@@ -249,12 +254,12 @@ class Control_Toggle extends Base_Control {
249
  details = {value: 'unchecked'};
250
  }
251
 
252
- WPTB_Helper.wptbDocumentEventGenerate( 'wptb-control:{{{targetInputAddClass}}}', selectorElement, details );
253
  if( '{{{selectorsJson}}}' ) {
254
  let selectors = JSON.parse( '{{{selectorsJson}}}' );
255
 
256
  getSetElementValue( selectors, details.value );
257
  }
 
258
 
259
  let wptbTableStateSaveManager = new WPTB_TableStateSaveManager();
260
  wptbTableStateSaveManager.tableStateSet();
@@ -265,7 +270,7 @@ class Control_Toggle extends Base_Control {
265
  }
266
  } )();
267
  </wptb-template-script>
268
-
269
  <?php
270
  }
271
  }
35
  * @access public
36
  */
37
  public function enqueue() {
38
+
39
  }
40
 
41
  /**
54
  selectors = [],
55
  elemContainer,
56
  selectorsJson,
57
+ targetInputAddClass,
58
+ checked = false;
59
 
60
  if( data.label ) {
61
  label = data.label;
62
  }
63
+
64
  let i = 0;
65
  for ( let prop in data.selectors ) {
66
  selectors[i] = [];
68
  selectors[i][1] = data.selectors[prop];
69
  i++;
70
  }
71
+
72
  if( selectors && Array.isArray( selectors ) ) {
73
  selectorsJson = JSON.stringify( selectors );
74
  }
75
+
76
  if( data.elemContainer ) {
77
  elemContainer = data.elemContainer;
78
  }
79
+
80
+ if( data.checked ) {
81
+ checked = true
82
+ }
83
 
84
  targetInputAddClass = data.elementControlTargetUnicClass;
85
  #>
86
+
87
+ <div id="{{{targetInputAddClass}}}" class="wptb-settings-row wptb-settings-middle-xs">
88
  <label class="wptb-toggle">
89
  <span style="font-size: 16px">{{{label}}}</span>
90
  <input class="wptb-element-property {{{targetInputAddClass}}}" type="checkbox" data-element="{{{elemContainer}}}">
91
  <i></i>
92
+ </label>
93
  </div>
94
+
95
  <wptb-template-script>
96
  ( function() {
97
  let targetInputs = document.getElementsByClassName( '{{{targetInputAddClass}}}' );
242
  if( '{{{selectorsJson}}}' ) {
243
  let selectors = JSON.parse( '{{{selectorsJson}}}' );
244
 
245
+ targetInput.checked = getSetElementValue( selectors ) || {{{checked}}};
246
  }
247
 
248
  targetInput.onchange = function( event ) {
254
  details = {value: 'unchecked'};
255
  }
256
 
 
257
  if( '{{{selectorsJson}}}' ) {
258
  let selectors = JSON.parse( '{{{selectorsJson}}}' );
259
 
260
  getSetElementValue( selectors, details.value );
261
  }
262
+ WPTB_Helper.wptbDocumentEventGenerate( 'wptb-control:{{{targetInputAddClass}}}', selectorElement, details );
263
 
264
  let wptbTableStateSaveManager = new WPTB_TableStateSaveManager();
265
  wptbTableStateSaveManager.tableStateSet();
270
  }
271
  } )();
272
  </wptb-template-script>
273
+
274
  <?php
275
  }
276
  }
inc/admin/controls/control-toggle2.php ADDED
@@ -0,0 +1,278 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ namespace WP_Table_Builder\Inc\Admin\Controls;
3
+
4
+ // If this file is called directly, abort.
5
+ if ( ! defined( 'WPINC' ) ) {
6
+ die;
7
+ }
8
+
9
+ /**
10
+ * WP Table Builder "Toggle" control.
11
+ *
12
+ * A control class for creating "enable-disable" control object
13
+ *
14
+ * @since 1.1.2
15
+ */
16
+ class Control_Toggle2 extends Base_Control {
17
+ /**
18
+ * Get "Toggle2" control type.
19
+ *
20
+ * @since 1.2.1
21
+ * @access public
22
+ *
23
+ * @return string Control type.
24
+ */
25
+ public function get_type() {
26
+ return 'toggle2';
27
+ }
28
+
29
+ /**
30
+ * Enqueue "toggle2" control scripts and styles.
31
+ *
32
+ * Used to register and enqueue custom scripts and styles used by the control.
33
+ *
34
+ * @since 1.2.1
35
+ * @access public
36
+ */
37
+ public function enqueue() {
38
+
39
+ }
40
+
41
+ /**
42
+ * Render "toggle2" control output in the editor.
43
+ *
44
+ * Used to generate the control HTML in the editor wp js template
45
+ *
46
+ * @since 1.2.1
47
+ * @access public
48
+ */
49
+ public function content_template() {
50
+ ?>
51
+ <#
52
+ let labelOn,
53
+ labelOff,
54
+ selector,
55
+ selectors = [],
56
+ elemContainer,
57
+ selectorsJson,
58
+ targetInputAddClass;
59
+
60
+ if( data.labelOn ) {
61
+ labelOn = data.labelOn;
62
+ }
63
+
64
+ if( data.labelOff ) {
65
+ labelOff = data.labelOff;
66
+ }
67
+
68
+ let i = 0;
69
+ for ( let prop in data.selectors ) {
70
+ selectors[i] = [];
71
+ selectors[i][0] = prop;
72
+ selectors[i][1] = data.selectors[prop];
73
+ i++;
74
+ }
75
+
76
+ if( selectors && Array.isArray( selectors ) ) {
77
+ selectorsJson = JSON.stringify( selectors );
78
+ }
79
+
80
+ if( data.elemContainer ) {
81
+ elemContainer = data.elemContainer;
82
+ }
83
+
84
+ targetInputAddClass = data.elementControlTargetUnicClass;
85
+ #>
86
+
87
+ <div class="wptb-settings-row wptb-settings-middle-xs">
88
+ <label class="wptb-toggle wptb-toggle2">
89
+ <input class="wptb-element-property {{{targetInputAddClass}}}" type="checkbox" data-element="{{{elemContainer}}}">
90
+ <i>
91
+ <div class="wptb-column-fixed">{{{labelOn}}}</div>
92
+ <div class="wptb-column-auto">{{{labelOff}}}</div>
93
+ </i>
94
+ </label>
95
+ </div>
96
+
97
+ <wptb-template-script>
98
+ ( function() {
99
+ let targetInputs = document.getElementsByClassName( '{{{targetInputAddClass}}}' );
100
+ if( targetInputs.length > 0 ) {
101
+ targetInput = targetInputs[0];
102
+ let dataSelectorElement = targetInput.dataset.element;
103
+ if( dataSelectorElement ) {
104
+ let selectorElement = document.querySelector( '.' + dataSelectorElement );
105
+ if( selectorElement ) {
106
+ function getSetElementValue( selectors, value ) {
107
+ if( selectors && Array.isArray( selectors ) ) {
108
+ for( let i = 0; i < selectors.length; i++ ) {
109
+ if( selectors[i] && Array.isArray( selectors[i] ) && typeof selectors[i][0] != 'undefined' && typeof selectors[i][1] != 'undefined' ) {
110
+ let selectorElements = document.querySelectorAll( selectors[i][0] );
111
+ if( selectorElements.length > 0 ) {
112
+ for( let j = 0; j < selectorElements.length; j++ ) {
113
+ if( selectors[i][1] && Array.isArray( selectors[i][1] ) && typeof selectors[i][1][0] != 'undefined' ) {
114
+ if( Array.isArray( selectors[i][1][0] ) ) {
115
+ for( let k = 0; k < selectors[i][1].length; k++ ) {
116
+ if( typeof selectors[i][1][k] != 'undefined' && Array.isArray( selectors[i][1][k] ) ) {
117
+ if( selectors[i][1][k][0] ) {
118
+ let styleValue;
119
+
120
+ if( value ) {
121
+ if( value == 'checked' ) {
122
+ styleValue = typeof selectors[i][1][k][1] != 'undefined' ? selectors[i][1][k][1] : '';
123
+ } else {
124
+ styleValue = typeof selectors[i][1][k][2] != 'undefined' ? selectors[i][1][k][2] : '';
125
+ }
126
+ }
127
+
128
+ if( selectors[i][1][k][0] == 'class' ) {
129
+ if( value ) {
130
+ if( styleValue ) {
131
+ selectorElements[j].classList.add( styleValue );
132
+ } else {
133
+ styleValue = typeof selectors[i][1][1] != 'undefined' ? selectors[i][1][k][1] : '';
134
+ selectorElements[j].classList.remove( styleValue );
135
+ }
136
+ } else {
137
+ if( typeof selectors[i][1][k][1] != 'undefined' && selectorElements[j].classList.contains( selectors[i][1][k][1] ) ) {
138
+ return true;
139
+ } else {
140
+ return false;
141
+ }
142
+ }
143
+ } else if( typeof selectorElements[j].style[selectors[i][1][k][0]] == 'undefined' ) {
144
+ if( value ) {
145
+ if( styleValue ) {
146
+ selectorElements[j].setAttribute( selectors[i][1][k][0], styleValue );
147
+ } else {
148
+ selectorElements[j].removeAttribute( selectors[i][1][k][0] );
149
+ }
150
+ } else {
151
+ if( typeof selectors[i][1][k][1] != 'undefined' && selectorElements[j].getAttribute( selectors[i][1][k][0] ) == selectors[i][1][k][1] ) {
152
+ return true;
153
+ } else {
154
+ return false;
155
+ }
156
+ }
157
+ } else {
158
+ if( value ) {
159
+ if( styleValue ) {
160
+ selectorElements[j].style[selectors[i][1][k][0]] = styleValue;
161
+ } else {
162
+ selectorElements[j].style[selectors[i][1][k][0]] = '';
163
+ }
164
+ } else {
165
+ if( typeof selectors[i][1][k][1] != 'undefined' && selectorElements[j].style[selectors[i][1][k][0]] == selectors[i][1][k][1] ) {
166
+ return true;
167
+ } else {
168
+ return false;
169
+ }
170
+ }
171
+ }
172
+ }
173
+ }
174
+ }
175
+ } else {
176
+ let styleValue;
177
+ if( value ) {
178
+ if( value == 'checked' ) {
179
+ styleValue = typeof selectors[i][1][1] != 'undefined' ? selectors[i][1][1] : '';
180
+ } else {
181
+ styleValue = typeof selectors[i][1][2] != 'undefined' ? selectors[i][1][2] : '';
182
+ }
183
+ }
184
+
185
+ if( selectors[i][1][0] == 'class' ) {
186
+ if( value ) {
187
+ if( styleValue ) {
188
+ selectorElements[j].classList.add( styleValue );
189
+ } else {
190
+ styleValue = typeof selectors[i][1][1] != 'undefined' ? selectors[i][1][1] : '';
191
+ selectorElements[j].classList.remove( styleValue );
192
+ }
193
+ } else {
194
+ if( typeof selectors[i][1][1] != 'undefined' && selectorElements[j].classList.contains( selectors[i][1][1] ) ) {
195
+ return true;
196
+ } else {
197
+ return false;
198
+ }
199
+ }
200
+ } else if( typeof selectorElements[j].style[selectors[i][1][0]] == 'undefined' ) {
201
+ if( value ) {
202
+ if( styleValue ) {
203
+ selectorElements[j].setAttribute( selectors[i][1][0], styleValue );
204
+ } else {
205
+ selectorElements[j].removeAttribute( selectors[i][1][0] );
206
+ }
207
+ } else {
208
+ if( typeof selectors[i][1][1] != 'undefined' && selectorElements[j].getAttribute( selectors[i][1][0] ) == selectors[i][1][1] ) {
209
+ return true;
210
+ } else if( typeof selectors[i][1][2] != 'undefined' && selectorElements[j].getAttribute( selectors[i][1][0] ) == selectors[i][1][2] ) {
211
+ return false;
212
+ }
213
+ }
214
+ } else {
215
+ if( value ) {
216
+ if( styleValue ) {
217
+ selectorElements[j].style[selectors[i][1][0]] = styleValue;
218
+ } else {
219
+ selectorElements[j].style[selectors[i][1][0]] = '';
220
+ }
221
+ } else {
222
+ if( typeof selectors[i][1][1] != 'undefined' && selectorElements[j].style[selectors[i][1][0]] == selectors[i][1][1] ) {
223
+ return true;
224
+ } else if( typeof selectors[i][1][2] != 'undefined' && selectorElements[j].style[selectors[i][1][0]] == selectors[i][1][2] ) {
225
+ return false;
226
+ }
227
+ }
228
+ }
229
+ }
230
+ }
231
+ }
232
+ }
233
+ }
234
+ }
235
+ } else {
236
+ return false;
237
+ }
238
+
239
+ if( ! value ) {
240
+ return false;
241
+ }
242
+ }
243
+
244
+ if( '{{{selectorsJson}}}' ) {
245
+ let selectors = JSON.parse( '{{{selectorsJson}}}' );
246
+
247
+ targetInput.checked = getSetElementValue( selectors );
248
+ }
249
+
250
+ targetInput.onchange = function( event ) {
251
+ let details;
252
+
253
+ if( event.target.checked == true ) {
254
+ details = {value: 'checked'};
255
+ } else {
256
+ details = {value: 'unchecked'};
257
+ }
258
+
259
+ WPTB_Helper.wptbDocumentEventGenerate( 'wptb-control:{{{targetInputAddClass}}}', selectorElement, details );
260
+ if( '{{{selectorsJson}}}' ) {
261
+ let selectors = JSON.parse( '{{{selectorsJson}}}' );
262
+
263
+ getSetElementValue( selectors, details.value );
264
+ }
265
+
266
+ let wptbTableStateSaveManager = new WPTB_TableStateSaveManager();
267
+ wptbTableStateSaveManager.tableStateSet();
268
+ };
269
+
270
+ }
271
+ }
272
+ }
273
+ } )();
274
+ </wptb-template-script>
275
+
276
+ <?php
277
+ }
278
+ }
inc/admin/controls/control-url.php CHANGED
@@ -1,6 +1,8 @@
1
  <?php
2
  namespace WP_Table_Builder\Inc\Admin\Controls;
3
 
 
 
4
  // If this file is called directly, abort.
5
  if ( ! defined( 'WPINC' ) ) {
6
  die;
@@ -78,21 +80,26 @@ class Control_Url extends Base_Control {
78
  </div>
79
  <div class="wptb-settings-row wptb-settings-middle-xs" style="padding-bottom: 10px">
80
  <div class="wptb-settings-col-xs-8" style="margin: 15px 0;">
81
- <input type="text" data-type="element-link" placeholder="Insert Link Here"
82
  class="wptb-element-property {{{targetInputAddClass}}}" data-element="{{{dataElement}}}">
83
  </div>
84
- <div class="wptb-settings-col-xs-8">
85
  <input type="checkbox" data-type="element-link-target" id="element-link-target{{{postfixIdFor}}}"
86
  class="wptb-element-property {{{targetInputAddClass}}}" data-element="{{{dataElement}}}">
87
- <label for="element-link-target{{{postfixIdFor}}}">Open Link in New Tab</label>
88
  </div>
89
- <div class="wptb-settings-col-xs-8">
90
  <input type="checkbox" data-type="element-link-nofollow" id="element-link-nofollow{{{postfixIdFor}}}"
91
  class="wptb-element-property {{{targetInputAddClass}}}" data-element="{{{dataElement}}}">
92
- <label for="element-link-nofollow{{{postfixIdFor}}}">Nofollow Link</label>
93
  </div>
94
- </div>
95
-
 
 
 
 
 
96
  <wptb-template-script>
97
  ( function() {
98
  let selectorElement = document.querySelector( '{{{selector}}}' );
@@ -104,7 +111,8 @@ class Control_Url extends Base_Control {
104
 
105
  targetInputs[i].onchange = function() {
106
  if ( this.value ) {
107
- selectorElement.href = WPTB_Helper.linkHttpCheckChange( this.value );
 
108
  } else {
109
  selectorElement.removeAttribute( 'href' );
110
  }
@@ -147,8 +155,31 @@ class Control_Url extends Base_Control {
147
  let wptbTableStateSaveManager = new WPTB_TableStateSaveManager();
148
  wptbTableStateSaveManager.tableStateSet();
149
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
150
  }
151
- }
152
  } )();
153
  </wptb-template-script>
154
 
1
  <?php
2
  namespace WP_Table_Builder\Inc\Admin\Controls;
3
 
4
+ use WP_Table_Builder as NS;
5
+
6
  // If this file is called directly, abort.
7
  if ( ! defined( 'WPINC' ) ) {
8
  die;
80
  </div>
81
  <div class="wptb-settings-row wptb-settings-middle-xs" style="padding-bottom: 10px">
82
  <div class="wptb-settings-col-xs-8" style="margin: 15px 0;">
83
+ <input type="text" data-type="element-link" placeholder="<?php esc_attr_e('Insert Link Here', NS\PLUGIN_TEXT_DOMAIN); ?>"
84
  class="wptb-element-property {{{targetInputAddClass}}}" data-element="{{{dataElement}}}">
85
  </div>
86
+ <div class="wptb-settings-checkbox-row">
87
  <input type="checkbox" data-type="element-link-target" id="element-link-target{{{postfixIdFor}}}"
88
  class="wptb-element-property {{{targetInputAddClass}}}" data-element="{{{dataElement}}}">
89
+ <label for="element-link-target{{{postfixIdFor}}}"><?php esc_html_e('Open Link in New Tab', NS\PLUGIN_TEXT_DOMAIN); ?></label>
90
  </div>
91
+ <div class="wptb-settings-checkbox-row">
92
  <input type="checkbox" data-type="element-link-nofollow" id="element-link-nofollow{{{postfixIdFor}}}"
93
  class="wptb-element-property {{{targetInputAddClass}}}" data-element="{{{dataElement}}}">
94
+ <label for="element-link-nofollow{{{postfixIdFor}}}"><?php esc_html_e('Nofollow Link', NS\PLUGIN_TEXT_DOMAIN); ?></label>
95
  </div>
96
+ <div class="wptb-settings-checkbox-row">
97
+ <input type="checkbox" data-type="element-link-convert-relative" id="element-convert-relative{{{postfixIdFor}}}"
98
+ class="wptb-element-property {{{targetInputAddClass}}}" data-element="{{{dataElement}}}">
99
+ <label for="element-convert-relative{{{postfixIdFor}}}"><?php esc_html_e('Convert Relative Link to Absolute', NS\PLUGIN_TEXT_DOMAIN); ?></label>
100
+ </div>
101
+ </div>
102
+
103
  <wptb-template-script>
104
  ( function() {
105
  let selectorElement = document.querySelector( '{{{selector}}}' );
111
 
112
  targetInputs[i].onchange = function() {
113
  if ( this.value ) {
114
+ const convertRelative = selectorElement.dataset.wptbLinkEnableConvertRelative;
115
+ selectorElement.href = WPTB_Helper.linkHttpCheckChange( this.value , convertRelative === 'true' );
116
  } else {
117
  selectorElement.removeAttribute( 'href' );
118
  }
155
  let wptbTableStateSaveManager = new WPTB_TableStateSaveManager();
156
  wptbTableStateSaveManager.tableStateSet();
157
  }
158
+ } else if(targetInputs[i].dataset.type === 'element-link-convert-relative'){
159
+
160
+ const currentCheckbox = targetInputs[i];
161
+ const relativeDataValue = selectorElement.dataset.wptbLinkEnableConvertRelative;
162
+
163
+ if (relativeDataValue === 'true') {
164
+ currentCheckbox.checked = true;
165
+ }
166
+
167
+ currentCheckbox.addEventListener('change', function () {
168
+ const hrefVal = selectorElement.href;
169
+ if (this.checked) {
170
+ selectorElement.dataset.wptbLinkEnableConvertRelative = true;
171
+ } else {
172
+ selectorElement.dataset.wptbLinkEnableConvertRelative = false;
173
+ }
174
+
175
+
176
+ selectorElement.href = WPTB_Helper.linkHttpCheckChange(hrefVal, this.checked);
177
+
178
+ new WPTB_TableStateSaveManager().tableStateSet();
179
+ })
180
+
181
  }
182
+ }
183
  } )();
184
  </wptb-template-script>
185
 
inc/admin/css/admin.css CHANGED
@@ -4,6 +4,37 @@
4
  * The file is enqueued from inc/admin/class-admin.php.
5
  */
6
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
7
  html {
8
  overflow-y: hidden;
9
  }
@@ -15,8 +46,8 @@ body > img {
15
 
16
  .wptb-admin-container {
17
  background: #fff;
18
- color: #444;
19
- z-index: 10099;
20
  position: fixed;
21
  top: 0;
22
  bottom: 0;
@@ -31,7 +62,7 @@ body > img {
31
  .wptb-container {
32
  position: fixed;
33
  left: 0;
34
- top: 89px;
35
  right: 0;
36
  bottom: 0;
37
  overflow-y: auto;
@@ -42,22 +73,52 @@ body > img {
42
  box-sizing: border-box;
43
  }
44
 
45
-
46
  /**
47
  * Header Section
48
  */
49
 
 
 
 
 
 
 
50
  .wptb-header {
51
  width: 100%;
52
- background-color: #f8f8f8;
53
- padding: 0;
54
- border-bottom: 1px solid #ccc;
55
- position: fixed;
56
- z-index: 100102;
57
- display: block;
58
- top: 0;
59
- left: 0;
60
  text-align: center;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
61
  }
62
 
63
  .wptb-logo {
@@ -67,18 +128,41 @@ body > img {
67
  }
68
 
69
  .wptb-right {
70
- float: right;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
71
  }
72
 
73
  #wptb-messaging-area {
74
  align-self: center;
75
- margin: 0 auto;
76
- display: inline-block;
77
- margin-top: 15px;
78
- margin-right: 15px;
79
  position: absolute;
80
  left: 0;
81
  right: 0;
 
 
82
  }
83
 
84
  #wptb-messaging-area .wptb-message {
@@ -100,10 +184,21 @@ body > img {
100
  font-size: 15px;
101
  }
102
 
 
 
 
 
 
 
 
 
 
 
 
 
 
103
  .wptb-undo-redo-container {
104
- float: left;
105
- margin-right: 20px;
106
- margin-top: 30px;
107
  }
108
 
109
  .wptb-undo,
@@ -125,97 +220,67 @@ body > img {
125
  opacity: .4;
126
  }
127
 
 
 
 
 
 
 
 
 
128
  .wptb-embed,
129
- .wptb-preview {
130
- display: block;
131
- margin-right: 15px;
132
- float: left;
133
- margin-top: 18px;
 
134
  }
135
 
136
  .wptb-button-grey {
137
- background-color: #fff;
138
- border: 1px solid #ccc;
139
- font-size: 16px;
140
- font-weight: 500;
141
  text-transform: uppercase;
142
- display: inline-block;
143
- padding: 16px;
144
  text-decoration: none;
145
- color: #6b6b6b;
146
- }
147
-
148
- .wptb-button-grey:active,
149
- .wptb-button-grey:focus {
150
- outline: none !important;
151
- box-shadow: none !important;
152
  }
153
 
154
- .wptb-button-grey::-moz-focus-inner {
155
- border: 0 !important;
156
  }
157
 
158
  .wptb-button-grey.wptb-button-disable {
159
- opacity: 0.5;
160
  cursor: not-allowed;
161
- }
162
-
163
- .wptb-button-grey.wptb-button-disable:hover {
164
- text-decoration: none;
165
- }
166
-
167
- .wptb-save {
168
- display: block;
169
- margin-right: 25px;
170
- float: left;
171
- margin-top: 18px;
172
  }
173
 
174
  .wptb-save-btn {
175
- background: #3B7EC0;
176
- color: white;
177
- padding: 16px;
178
- font-size: 16px;
179
- text-decoration: none;
180
- display: inline-block;
181
- }
182
-
183
- .wptb-save-btn:hover {
184
- color: white;
185
- }
186
-
187
- .wptb-save-btn:focus {
188
- color: white;
189
  }
190
 
191
  .wptb-save-btn.wptb-save-disabled {
192
  cursor: not-allowed;
193
- opacity: 0.5;
194
  }
195
 
196
  .wptb-save-btn.wptb-save-disabled:hover {
197
  text-decoration: none;
198
  }
199
 
200
- .wptb-save-btn.wptb-save-disabled:focus {
201
- box-shadow: none;
202
- outline: none;
203
- }
204
-
205
  .wptb-close {
206
- background-color: #fff;
207
- border-left: 1px solid #d3d3d3;
208
- display: inline-block;
209
- padding: 30px 26px 28px 26px;
210
- float: right;
211
  }
212
 
213
  .wptb-close:hover {
214
- background: #e4e4e4;
215
  }
216
 
217
  .wptb-close a {
218
- color: #909090;
219
  text-decoration: none;
220
  }
221
 
@@ -408,28 +473,46 @@ body > img {
408
  */
409
 
410
  .wptb-left-panel {
 
 
411
  box-sizing: border-box;
 
 
 
 
 
 
 
 
 
 
412
  left: 0;
413
- height: 100%;
414
- position: fixed;
415
- width: 310px;
416
- z-index: 9999;
417
- border-right: 1px solid #ccc;
418
- background-color: #f0f3f3;
419
- display: flex;
420
- flex-direction: column;
421
- -webkit-transition: left 0.2s ease-out, right 0.2s ease-out;
422
- -o-transition: left 0.2s ease-out, right 0.2s ease-out;
423
- transition: left 0.2s ease-out, right 0.2s ease-out;
424
  }
425
 
426
- .wptb-container.collapsed .wptb-left-panel {
427
- left: -310px;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
428
  }
429
 
430
  .wptb-left-scroll-panel {
431
- overflow: auto;
432
- height: calc(100% - 89px);
 
433
  }
434
 
435
  #wptb-left-scroll-panel-curtain,
@@ -439,7 +522,7 @@ body > img {
439
  right: 0;
440
  left: 0;
441
  bottom: 0;
442
- background-color: #fff;
443
  padding: 20px;
444
  display: none;
445
  }
@@ -457,8 +540,81 @@ body > img {
457
  }
458
 
459
  .wptb-panel-left {
460
- position: relative;
461
  height: 100%;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
462
  }
463
 
464
  .wptb-left-panel-extend {
@@ -538,9 +694,16 @@ body > img {
538
  border-bottom: .5px solid #ccc;
539
  }
540
 
 
 
 
 
 
 
 
541
  .wptb-settings-items,
542
  .wptb-cell-management {
543
- margin: 0px 1px;
544
  transition: 1s 0s ease;
545
  }
546
 
@@ -556,21 +719,30 @@ body > img {
556
  }
557
 
558
  .wptb-settings-item-title {
559
- font-size: 15px;
560
- font-weight: 500;
 
561
  margin: 0;
562
  }
563
 
564
  .wptb-settings-item-header {
565
  font-size: 14px;
566
- font-weight: 500;
567
  line-height: 14px;
568
  padding: 14px 0 14px 10px;
569
  position: relative;
570
- border: 1px solid #ddd;
571
- background: #fff;
572
- margin-top: 5px;
573
- margin-bottom: -10px;
 
 
 
 
 
 
 
 
574
  }
575
 
576
  .wptb-settings-row {
@@ -579,16 +751,29 @@ body > img {
579
  flex: 0 1 auto;
580
  flex-direction: row;
581
  flex-wrap: wrap;
582
- padding-bottom: 25px;
 
 
 
 
 
 
 
 
583
  }
584
 
585
  .wptb-settings-middle-xs {
586
  align-items: center;
587
- background: #fff;
588
- padding: 10px 10px 20px 10px;
589
- margin: 0px 0 6px 0;
590
- border: 1px solid #e5dfdf;
591
- border-radius: 2px;
 
 
 
 
 
592
  }
593
 
594
  .wptb-settings-col-xs-12 {
@@ -723,7 +908,7 @@ input[type="range"]::-ms-thumb {
723
  .wptb-toggle {
724
  display: inline-block;
725
  width: 95%;
726
- padding: 25px 0 10px 0;
727
  }
728
 
729
  .wptb-toggle input {
@@ -764,13 +949,13 @@ input[type="range"]::-ms-thumb {
764
  transition: .25s;
765
  }
766
 
767
- .wptb-toggle.wptb-column-width-fix-auto input:checked + i::after,
768
  .wptb-toggle.wptb-size-fixed-auto input:checked + i::after {
769
  -webkit-transform: translateX(50px);
770
  transform: translateX(50px);
771
  }
772
 
773
- .wptb-toggle.wptb-column-width-fix-auto i,
774
  .wptb-toggle.wptb-size-fixed-auto i {
775
  float: left;
776
  width: 100px;
@@ -778,7 +963,7 @@ input[type="range"]::-ms-thumb {
778
  height: 25px;
779
  }
780
 
781
- .wptb-toggle.wptb-column-width-fix-auto i:after,
782
  .wptb-toggle.wptb-size-fixed-auto i:after {
783
  width: 50px;
784
  height: 25px;
@@ -868,7 +1053,26 @@ input[type="range"]::-ms-thumb {
868
  */
869
 
870
  .wptb-elements-section {
871
- height: auto;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
872
  }
873
 
874
  .wptb-tabs {
@@ -919,6 +1123,7 @@ ul.wptb-tabs {
919
  color: #186cba;
920
  }
921
 
 
922
  .wptb-tabs #wptb-add-elements .active {
923
  background: #fff;
924
  }
@@ -936,53 +1141,173 @@ ul.wptb-tabs {
936
  padding: 0;
937
  }
938
 
939
-
940
- /**
941
- * Elements
942
- */
943
-
944
- .wptb-elements-container {
945
- width: 100%;
946
- max-height: inherit;
947
- display: table;
948
- padding: 0 0 60px 0;
949
  }
950
 
951
- .wptb-element {
952
- background: #fff;
953
- color: #000;
954
- font-size: 15px;
955
  display: flex;
 
 
956
  align-items: center;
957
- justify-content: center;
958
- flex-direction: column;
959
- height: 100px;
960
- text-align: center;
961
- border-radius: 4px;
962
- border: 1px solid #ccc;
963
- transition: all .25s;
964
- cursor: move;
965
  }
966
 
967
- .wptb-element:nth-child(odd) {
968
- width: 47.5%;
969
- float: left;
970
- margin: 6px 0 -4px 6px;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
971
  }
972
 
973
  .wptb-element:nth-child(even) {
974
- width: 47.5%;
975
- float: right;
976
- margin: 6px 5px -4px 0;
977
  }
978
 
979
  .wptb-element p {
980
  margin: 0;
981
- font-size: 15px;
982
  }
983
 
984
  .wptb-element:hover {
985
- box-shadow: 0px 1px 2px 0.5px #cececc;
 
 
 
 
 
 
 
 
 
 
 
986
  }
987
 
988
  .left {
@@ -1004,48 +1329,69 @@ ul.wptb-tabs {
1004
 
1005
  .wptb-builder-panel {
1006
  position: relative;
1007
- left: 300px;
1008
  min-height: 100%;
1009
- padding-left: 20px;
1010
- padding-right: 20px;
1011
- -webkit-transition: left 0.2s ease-out, right 0.2s ease-out;
1012
- -o-transition: left 0.2s ease-out, right 0.2s ease-out;
1013
- transition: left 0.2s ease-out, right 0.2s ease-out;
1014
- width: calc(100% - 300px);
1015
  text-align: center;
 
 
 
 
 
1016
  }
1017
 
1018
- .wptb-container.collapsed .wptb-builder-panel {
1019
  left: 0;
1020
- width: 100%;
1021
  }
1022
 
1023
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1024
  /**
1025
  * Table name Setup
1026
  */
1027
 
1028
  .wptb-name-setup {
1029
- border-bottom: 1px solid #d6d6d6;
1030
- justify-content: center;
1031
- text-align: center;
1032
- min-width: 300px;
1033
  }
1034
 
1035
- .wptb-name-setup span {
1036
- display: inline-block;
1037
- font-size: 24px;
1038
- height: 90px;
1039
- line-height: 90px;
1040
- padding: 0 30px;
 
 
 
 
1041
  }
1042
 
1043
  #wptb-setup-name {
1044
- margin: 17px 0 18px 18px;
1045
- height: 55px;
1046
  box-shadow: none;
1047
- border: 1px solid #d6d6d6;
1048
- font-size: 18px;
1049
  width: 420px;
1050
  padding: 0 20px;
1051
  }
@@ -1096,7 +1442,7 @@ ul.wptb-tabs {
1096
  background: #fff;
1097
  margin-top: 30px;
1098
  margin-bottom: 30px;
1099
- max-width: 850px;
1100
  overflow-x: auto;
1101
  overflow-y: hidden;
1102
  }
@@ -1425,6 +1771,42 @@ table.wptb-table {
1425
  background: #329d3f;
1426
  color: #ffffff;
1427
  cursor: pointer;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1428
  }
1429
 
1430
  .wptb-button:hover {
@@ -1448,9 +1830,12 @@ table.wptb-table {
1448
  .wptb-generator-btn {
1449
  width: 92%;
1450
  padding: 15px;
1451
- background: #3B7EC0;
1452
  color: white;
1453
  cursor: pointer;
 
 
 
1454
  }
1455
 
1456
  .wptb-input-number {
@@ -1504,7 +1889,7 @@ table.wptb-table {
1504
  min-height: 55px;
1505
  text-align: center;
1506
  position: sticky !important;
1507
- top: 20px;
1508
  z-index: 100;
1509
  display: inline-block;
1510
  }
@@ -1553,7 +1938,7 @@ table.wptb-table {
1553
  box-shadow: inset 0px 0px 8px 0px rgba(0, 0, 0, 0.1);
1554
  }
1555
 
1556
- .wptb-btn-size-switcher.selected {
1557
  background: #fff;
1558
  box-shadow: inset 0px 0px 20px 4px rgba(0, 0, 0, 0.15);
1559
  cursor: default;
@@ -1601,6 +1986,10 @@ br[data-mce-bogus="1"] {
1601
  display: none;
1602
  }
1603
 
 
 
 
 
1604
  .wptb-droppable.wptb-cell ul,
1605
  .wptb-droppable.wptb-cell ol {
1606
  border: 1px solid transparent;
@@ -1635,6 +2024,8 @@ br[data-mce-bogus="1"] {
1635
  .wptb-droppable.wptb-cell li .wptb-list-item-content p {
1636
  word-wrap: break-word;
1637
  line-height: 30px;
 
 
1638
  }
1639
 
1640
  .wptb-list-container ul li > div > p::before {
@@ -1642,13 +2033,18 @@ br[data-mce-bogus="1"] {
1642
  display: inline-block;
1643
  line-height: 30px;
1644
  padding: 0 5px 0 0;
1645
- font-size: 15px;
1646
  font-family: verdana, sans-serif;
1647
  cursor: text;
 
 
 
 
 
1648
  }
1649
 
1650
  .wptb-list-container ul li > div > p::before {
1651
- padding-right: 10px;
1652
  }
1653
 
1654
  .wptb-list-container ul li > div > p.wptb-list-style-type-disc::before {
@@ -1719,7 +2115,7 @@ br[data-mce-bogus="1"] {
1719
  font-size: 9pt;
1720
  display: none;
1721
  max-width: 70px;
1722
- z-index: 10101;
1723
  box-sizing: border-box;
1724
  }
1725
 
@@ -1734,11 +2130,20 @@ br[data-mce-bogus="1"] {
1734
  height: 16px;
1735
  }
1736
 
 
 
 
 
 
 
 
 
1737
  .wptb-actions .dashicons.dashicons-trash.wptb-delete-action {
1738
  font-size: 10pt;
1739
  margin: 0em 0.1em 0 0.05em;
1740
  width: 16px;
1741
  height: 16px;
 
1742
  }
1743
 
1744
  .wptb-cell-management .wptb-button {
@@ -1772,7 +2177,7 @@ br[data-mce-bogus="1"] {
1772
  bottom: 0;
1773
  left: 0;
1774
  right: 0;
1775
- z-index: 100;
1776
  }
1777
 
1778
  .wptb-ph-element.wptb-moving-mode {
@@ -1788,7 +2193,7 @@ br[data-mce-bogus="1"] {
1788
  .wptb-drop-handle {
1789
  height: 11px;
1790
  position: absolute;
1791
- z-index: 10100;
1792
  display: none;
1793
  }
1794
 
@@ -1812,7 +2217,7 @@ br[data-mce-bogus="1"] {
1812
  position: absolute;
1813
  width: 1px;
1814
  height: 1px;
1815
- z-index: 10100;
1816
  }
1817
 
1818
  .wptb-drop-handle.wptb-moving-into-same-elem,
@@ -1871,6 +2276,7 @@ br[data-mce-bogus="1"] {
1871
  cursor: move;
1872
  width: 16px;
1873
  height: 16px;
 
1874
  }
1875
 
1876
  .wptb-no-cell-action:not(.visible),
@@ -2260,62 +2666,52 @@ wptb_shortcode_container_element {
2260
  }
2261
 
2262
  @media screen and (max-width: 600px) {
2263
- .wptb-right {
2264
- width: 100%;
2265
- text-align: justify;
2266
- }
2267
-
2268
- .wptb-embed,
2269
- .wptb-preview,
2270
- .wptb-save {
2271
- display: inline-block;
2272
- float: none;
2273
- margin: 20px 20px auto;
2274
- }
2275
-
2276
- .wptb-close {
2277
- margin-top: 10px;
2278
- margin-right: 10px;
2279
- padding: 20px;
2280
- border: none;
2281
- }
2282
-
2283
- .wptb-right::after {
2284
- content: "";
2285
- width: 100%;
2286
- display: inline-block;
2287
- }
2288
-
2289
- .wptb-container {
2290
- top: 172px;
2291
- }
2292
  }
2293
 
2294
  @media screen and (max-width: 450px) {
2295
- .wptb-embed,
2296
- .wptb-preview,
2297
- .wptb-save {
2298
- width: 100%;
2299
- margin: 15px 0px 0px;
2300
- padding: 0px 15px;
2301
- box-sizing: border-box;
2302
- }
2303
-
2304
- .wptb-embed a,
2305
- .wptb-preview a,
2306
- .wptb-save a {
2307
- width: 100%;
2308
- text-align: center;
2309
- box-sizing: border-box;
2310
- }
2311
-
2312
- #wptb-messaging-area {
2313
- top: 310px;
2314
- }
2315
-
2316
- .wptb-container {
2317
- top: 300px;
2318
- }
2319
  }
2320
 
2321
  .wptb-cell img {
@@ -2327,7 +2723,7 @@ wptb_shortcode_container_element {
2327
  }
2328
 
2329
  .wptb-back-button {
2330
- float: left;
2331
  }
2332
 
2333
  .wptb-option-text {
@@ -2639,6 +3035,20 @@ wptb_shortcode_container_element {
2639
  border-bottom: 1px solid #cbd5e0;
2640
  }
2641
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
2642
  .wptb-settings-sections-wrapper.child {
2643
  display: flex;
2644
  flex-direction: row;
@@ -2655,6 +3065,15 @@ wptb_shortcode_container_element {
2655
  transition: background-color 0.5s ease-out;
2656
  }
2657
 
 
 
 
 
 
 
 
 
 
2658
  .child .wptb-settings-section-item {
2659
  font-size: 0.8rem;
2660
  padding: 10px;
@@ -2668,6 +3087,10 @@ wptb_shortcode_container_element {
2668
  color: #CBD5E0 !important;
2669
  }
2670
 
 
 
 
 
2671
  .wptb-menu-active-section-indicator {
2672
  position: absolute;
2673
  border-bottom: 2px solid #1A202C;
@@ -3091,6 +3514,34 @@ wptb_shortcode_container_element {
3091
  background-color: #EDF2F7;
3092
  }
3093
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
3094
  @keyframes wptb-settings-rotate {
3095
  0% {
3096
  transform: rotateZ(0deg);
@@ -3099,3 +3550,1664 @@ wptb_shortcode_container_element {
3099
  transform: rotateZ(360deg);
3100
  }
3101
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
4
  * The file is enqueued from inc/admin/class-admin.php.
5
  */
6
 
7
+ /*css constants for plugin styles*/
8
+ :root {
9
+ /*constants*/
10
+ --wptb-plugin-sidebar-size-full: 300px;
11
+ --wptb-plugin-logo-color: #3299D1;
12
+ --wptb-plugin-gray-100: #F7FAFC;
13
+ --wptb-plugin-gray-200: #EDF2F7;
14
+ --wptb-plugin-gray-300: #E2E8F0;
15
+ --wptb-plugin-gray-400: #CBD5E0;
16
+ --wptb-plugin-gray-500: #A0AEC0;
17
+ --wptb-plugin-gray-700: #4A5568;
18
+ --wptb-plugin-green-500: #48BB78;
19
+ --wptb-plugin-yellow-500: #ECC94B;
20
+ --wptb-plugin-red-600: #E53E3E;
21
+ --wptb-plugin-white: #FFF;
22
+
23
+ /*theme*/
24
+ --wptb-plugin-theme-text-color-main: var(--wptb-plugin-gray-700);
25
+ --wptb-plugin-theme-color-light: var(--wptb-plugin-white);
26
+ --wptb-plugin-theme-sidebar-bg: var(--wptb-plugin-gray-300);
27
+ --wptb-plugin-theme-side-bar-font-size-base: 16px;
28
+ --wptb-plugin-theme-header-font-size-base: 16px;
29
+ --wptb-plugin-theme-side-bar-sections-font-base: 80%;
30
+
31
+
32
+ --wptb-plugin-left-panel-constant: 40px;
33
+
34
+ --wptb-prebuilt-card-border-size: 2px;
35
+ --wptb-prebuilt-card-control-size: 30px;
36
+ }
37
+
38
  html {
39
  overflow-y: hidden;
40
  }
46
 
47
  .wptb-admin-container {
48
  background: #fff;
49
+ color: var(--wptb-plugin-theme-text-color-main);
50
+ z-index: 100000;
51
  position: fixed;
52
  top: 0;
53
  bottom: 0;
62
  .wptb-container {
63
  position: fixed;
64
  left: 0;
65
+ top: 0;
66
  right: 0;
67
  bottom: 0;
68
  overflow-y: auto;
73
  box-sizing: border-box;
74
  }
75
 
 
76
  /**
77
  * Header Section
78
  */
79
 
80
+ .wptb-builder-header {
81
+ position: sticky !important;
82
+ top: 0px;
83
+ z-index: 10;
84
+ }
85
+
86
  .wptb-header {
87
  width: 100%;
88
+ background-color: var(--wptb-plugin-theme-color-light);
89
+ border-bottom: 1px solid var(--wptb-plugin-theme-sidebar-bg);
 
 
 
 
 
 
90
  text-align: center;
91
+ display: grid;
92
+ grid-auto-flow: row;
93
+ grid-template-columns: 1fr 1fr;
94
+ grid-template-areas: "table-name buttons close";
95
+ align-items: center;
96
+ justify-content: center;
97
+ font-size: var(--wptb-plugin-theme-header-font-size-base);
98
+ position: relative;
99
+ z-index: 10;
100
+ }
101
+
102
+ .wptb-left-panel[data-wptb-panel-location="right"] + .wptb-builder-panel .wptb-header {
103
+ grid-template-areas: "close buttons table-name" !important;
104
+ grid-template-columns: auto 1fr 1fr !important;
105
+ }
106
+
107
+ .wptb-header-buttons-container {
108
+ display: flex;
109
+ flex-direction: row;
110
+ align-items: center;
111
+ justify-content: center;
112
+ grid-area: buttons;
113
+ height: 100%;
114
+ }
115
+
116
+ .wptb-header-close {
117
+ font-size: 30px;
118
+ width: 30px;
119
+ height: 30px;
120
+ text-decoration: none;
121
+ color: var(--wptb-plugin-gray-500);
122
  }
123
 
124
  .wptb-logo {
128
  }
129
 
130
  .wptb-right {
131
+ width: 100%;
132
+ display: flex;
133
+ flex-direction: row;
134
+ justify-content: flex-end;
135
+ align-items: center;
136
+ height: 100%;
137
+ }
138
+
139
+ .wptb-left-panel[data-wptb-panel-location="right"] + .wptb-builder-panel .wptb-right {
140
+ flex-direction: row-reverse !important;
141
+ }
142
+
143
+ .wptb-right .wptb-settings-section-item {
144
+ margin: 0 !important;
145
+ }
146
+
147
+ .wptb-plugin-width-full {
148
+ width: 100%;
149
+ }
150
+
151
+ .wptb-plugin-height-full {
152
+ height: 100%;
153
  }
154
 
155
  #wptb-messaging-area {
156
  align-self: center;
157
+ /*margin: 0 auto;*/
158
+ /*display: inline-block;*/
159
+ /*margin-top: 15px;*/
160
+ /*margin-right: 15px;*/
161
  position: absolute;
162
  left: 0;
163
  right: 0;
164
+ bottom: 100px;
165
+ pointer-events: none;
166
  }
167
 
168
  #wptb-messaging-area .wptb-message {
184
  font-size: 15px;
185
  }
186
 
187
+ .wptb-panel-sub-container-buttons {
188
+ display: flex;
189
+ justify-content: center;
190
+ align-items: center;
191
+ height: 100%;
192
+ border-left: 1px solid var(--wptb-plugin-theme-sidebar-bg);
193
+ border-right: 1px solid var(--wptb-plugin-theme-sidebar-bg);
194
+ }
195
+
196
+ .wptb-header .wptb-settings-section-item {
197
+ padding: 15px !important;
198
+ }
199
+
200
  .wptb-undo-redo-container {
201
+ padding: 0 20px;
 
 
202
  }
203
 
204
  .wptb-undo,
220
  opacity: .4;
221
  }
222
 
223
+ .wptb-embed-btn, .wptb-preview-btn, .wptb-save-btn {
224
+ height: 100%;
225
+ display: flex;
226
+ justify-content: center;
227
+ align-items: center;
228
+ text-decoration: none;
229
+ }
230
+
231
  .wptb-embed,
232
+ .wptb-preview,
233
+ .wptb-save {
234
+ display: flex;
235
+ justify-content: center;
236
+ align-items: center;
237
+ height: 100%;
238
  }
239
 
240
  .wptb-button-grey {
241
+ background-color: var(--wptb-plugin-white);
242
+ /*border: 1px solid #ccc;*/
243
+ /*font-size: 16px;*/
244
+ /*font-weight: 500;*/
245
  text-transform: uppercase;
246
+ /*display: inline-block;*/
247
+ /*padding: 16px;*/
248
  text-decoration: none;
249
+ color: inherit;
 
 
 
 
 
 
250
  }
251
 
252
+ .wptb-button-grey:hover {
253
+ color: inherit;
254
  }
255
 
256
  .wptb-button-grey.wptb-button-disable {
 
257
  cursor: not-allowed;
258
+ color: #CBD5E0 !important;
 
 
 
 
 
 
 
 
 
 
259
  }
260
 
261
  .wptb-save-btn {
262
+ color: inherit;
 
 
 
 
 
 
 
 
 
 
 
 
 
263
  }
264
 
265
  .wptb-save-btn.wptb-save-disabled {
266
  cursor: not-allowed;
267
+ color: #CBD5E0 !important;
268
  }
269
 
270
  .wptb-save-btn.wptb-save-disabled:hover {
271
  text-decoration: none;
272
  }
273
 
 
 
 
 
 
274
  .wptb-close {
275
+ background-color: var(--wptb-plugin-white);
276
+ border-left: 1px solid var(--wptb-plugin-gray-300);
 
 
 
277
  }
278
 
279
  .wptb-close:hover {
280
+ background: var(--wptb-plugin-gray-300);
281
  }
282
 
283
  .wptb-close a {
 
284
  text-decoration: none;
285
  }
286
 
473
  */
474
 
475
  .wptb-left-panel {
476
+ position: fixed;
477
+ height: 100%;
478
  box-sizing: border-box;
479
+ background-color: var(--wptb-plugin-theme-sidebar-bg);
480
+ -webkit-transition: all 0.2s ease-out, right 0.2s ease-out;
481
+ -o-transition: all 0.2s ease-out, right 0.2s ease-out;
482
+ transition: all 0.2s ease-out, right 0.2s ease-out;
483
+ box-shadow: 0 0 5px 3px rgba(0, 0, 0, .2);
484
+ z-index: 100001;
485
+ font-size: var(--wptb-plugin-theme-side-bar-font-size-base);
486
+ }
487
+
488
+ .wptb-left-panel[data-wptb-panel-location="left"] {
489
  left: 0;
 
 
 
 
 
 
 
 
 
 
 
490
  }
491
 
492
+ .wptb-left-panel[data-wptb-panel-location="right"] {
493
+ right: 0;
494
+ }
495
+
496
+ .collapsed .wptb-left-panel[data-wptb-panel-location='left'] {
497
+ transform: translateX(calc(-100% + var(--wptb-plugin-left-panel-constant)));
498
+ }
499
+
500
+ .collapsed .wptb-left-panel[data-wptb-panel-location='right'] {
501
+ transform: translateX(calc(100% - var(--wptb-plugin-left-panel-constant)));
502
+ }
503
+
504
+ .collapsed .wptb-left-panel .wptb-left-panel-sidebar-content {
505
+ opacity: 0;
506
+ }
507
+
508
+ .collapsed .wptb-left-panel .wptb-panel-tabs {
509
+ opacity: 0;
510
  }
511
 
512
  .wptb-left-scroll-panel {
513
+ height: 100%;
514
+ overflow-y: auto;
515
+ overflow-x: hidden;
516
  }
517
 
518
  #wptb-left-scroll-panel-curtain,
522
  right: 0;
523
  left: 0;
524
  bottom: 0;
525
+ background-color: var(--wptb-plugin-theme-sidebar-bg);
526
  padding: 20px;
527
  display: none;
528
  }
540
  }
541
 
542
  .wptb-panel-left {
 
543
  height: 100%;
544
+ width: var(--wptb-plugin-sidebar-size-full);
545
+ display: grid;
546
+ grid-template-rows: auto auto 1fr auto;
547
+ grid-template-columns: 1fr;
548
+ grid-auto-flow: row;
549
+ transition: width .2s ease-out;
550
+ grid-template-areas: "brand" "sidebar-tabs" "sidebar-content" "sidebar-footer";
551
+ }
552
+
553
+ .wptb-left-panel-sidebar-content {
554
+ grid-area: sidebar-content;
555
+ overflow: auto;
556
+ transition: all 0.2s ease-out;
557
+ }
558
+
559
+ .wptb-panel-drawer-toggle {
560
+ background-color: var(--wptb-plugin-theme-sidebar-bg);
561
+ height: 50px;
562
+ width: 25px;
563
+ position: absolute;
564
+ top: calc(50% - 25px);
565
+ left: calc(100%);
566
+ display: flex;
567
+ justify-content: center;
568
+ align-items: center;
569
+ cursor: pointer;
570
+ border-radius: 0px 5px 5px 0;
571
+ box-shadow: 3px 1px 5px rgba(0, 0, 0, .2);
572
+ }
573
+
574
+ .wptb-panel-drawer-icon::after {
575
+ content: "\f341";
576
+ }
577
+
578
+ .collapsed .wptb-panel-drawer-icon::after {
579
+ content: "\f345";
580
+ }
581
+
582
+
583
+ .wptb-panel-brand {
584
+ grid-area: brand;
585
+ background-color: var(--wptb-plugin-logo-color);
586
+ color: var(--wptb-plugin-white);
587
+ padding: 25px 0;
588
+ font-size: 170%;
589
+ display: grid;
590
+ grid-template-columns: 1fr;
591
+ grid-template-rows: 1fr;
592
+ grid-template-areas: "brand-position";
593
+ text-align: center;
594
+ height: 61px;
595
+ }
596
+
597
+ .wptb-brand-name {
598
+ grid-area: brand-position
599
+ }
600
+
601
+ .wptb-brand-logo {
602
+ grid-area: brand-position;
603
+ display: none;
604
+ }
605
+
606
+ .wptb-panel-tabs {
607
+ grid-area: sidebar-tabs;
608
+ text-align: center;
609
+ justify-content: stretch;
610
+ transition: all 0.2s ease-out;
611
+ }
612
+
613
+ .wptb-panel-tabs div {
614
+ width: 100%;
615
+ margin: 0 !important;
616
+ font-size: 90%;
617
+ padding: 10px !important;
618
  }
619
 
620
  .wptb-left-panel-extend {
694
  border-bottom: .5px solid #ccc;
695
  }
696
 
697
+ .wptb-panel-table-empty-message {
698
+ padding: 0 20px;
699
+ text-align: center;
700
+ font-size: 80%;
701
+ font-style: italic;
702
+ }
703
+
704
  .wptb-settings-items,
705
  .wptb-cell-management {
706
+ /*margin: 0px 1px;*/
707
  transition: 1s 0s ease;
708
  }
709
 
719
  }
720
 
721
  .wptb-settings-item-title {
722
+ font-size: 14px !important;
723
+ margin: 0 !important;
724
+ /*font-weight: 500;*/
725
  margin: 0;
726
  }
727
 
728
  .wptb-settings-item-header {
729
  font-size: 14px;
730
+ /*font-weight: 500;*/
731
  line-height: 14px;
732
  padding: 14px 0 14px 10px;
733
  position: relative;
734
+ /*border: 1px solid #ddd;*/
735
+ background: var(--wptb-plugin-gray-100);
736
+ /*margin-top: 5px;*/
737
+ /*margin-bottom: -10px;*/
738
+ }
739
+
740
+ .wptb-settings-item-header-include-right {
741
+ font-size: 14px;
742
+ line-height: 14px;
743
+ padding: 14px 10px 14px 10px;
744
+ position: relative;
745
+ background: var(--wptb-plugin-gray-100);
746
  }
747
 
748
  .wptb-settings-row {
751
  flex: 0 1 auto;
752
  flex-direction: row;
753
  flex-wrap: wrap;
754
+ align-items: center;
755
+ /*padding-bottom: 25px;*/
756
+ }
757
+
758
+ .wptb-settings-row label {
759
+ display: flex;
760
+ flex-direction: row;
761
+ justify-content: space-between;
762
+ align-items: center;
763
  }
764
 
765
  .wptb-settings-middle-xs {
766
  align-items: center;
767
+ background: var(--wptb-plugin-gray-100);
768
+ /*padding: 10px 10px 20px 10px;*/
769
+ padding: 15px !important;
770
+ /*margin: 0px 0 6px 0;*/
771
+ border-bottom: 1px solid #e5dfdf;
772
+ /*border-radius: 2px;*/
773
+ }
774
+
775
+ .wptb-settings-middle-xs * {
776
+ font-size: 14px !important;
777
  }
778
 
779
  .wptb-settings-col-xs-12 {
908
  .wptb-toggle {
909
  display: inline-block;
910
  width: 95%;
911
+ /*padding: 25px 0 10px 0;*/
912
  }
913
 
914
  .wptb-toggle input {
949
  transition: .25s;
950
  }
951
 
952
+ .wptb-toggle.wptb-toggle2 input:checked + i::after,
953
  .wptb-toggle.wptb-size-fixed-auto input:checked + i::after {
954
  -webkit-transform: translateX(50px);
955
  transform: translateX(50px);
956
  }
957
 
958
+ .wptb-toggle.wptb-toggle2 i,
959
  .wptb-toggle.wptb-size-fixed-auto i {
960
  float: left;
961
  width: 100px;
963
  height: 25px;
964
  }
965
 
966
+ .wptb-toggle.wptb-toggle2 i:after,
967
  .wptb-toggle.wptb-size-fixed-auto i:after {
968
  width: 50px;
969
  height: 25px;
1053
  */
1054
 
1055
  .wptb-elements-section {
1056
+ /*height: auto;*/
1057
+ grid-area: sidebar-content;
1058
+ }
1059
+
1060
+ #element-options-group {
1061
+ grid-area: sidebar-content;
1062
+ padding-top: 20px;
1063
+ }
1064
+
1065
+ .wptb-settings-section {
1066
+ grid-area: sidebar-content;
1067
+ }
1068
+
1069
+ .wptb-responsive-section {
1070
+ grid-area: sidebar-content;
1071
+ }
1072
+
1073
+ [data-wptb-section] {
1074
+ padding-top: 20px;
1075
+ animation: wptb-basic-appear 0.2s ease-out;
1076
  }
1077
 
1078
  .wptb-tabs {
1123
  color: #186cba;
1124
  }
1125
 
1126
+
1127
  .wptb-tabs #wptb-add-elements .active {
1128
  background: #fff;
1129
  }
1141
  padding: 0;
1142
  }
1143
 
1144
+ .wptb-panel-toggle-group {
1145
+ background-color: var(--wptb-plugin-theme-color-light);
1146
+ box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
1147
+ margin: 20px 0;
 
 
 
 
 
 
1148
  }
1149
 
1150
+ .wptb-panel-toggle {
1151
+ background-color: var(--wptb-plugin-theme-color-light);
1152
+ padding: 10px;
 
1153
  display: flex;
1154
+ flex-direction: row;
1155
+ justify-content: space-between;
1156
  align-items: center;
1157
+ border-bottom: 3px solid var(--wptb-plugin-theme-sidebar-bg);
 
 
 
 
 
 
 
1158
  }
1159
 
1160
+ .wptb-element-options .wptb-panel-toggle {
1161
+ cursor: pointer;
1162
+ }
1163
+
1164
+ .wptb-panel-toggle .header {
1165
+ text-transform: uppercase;
1166
+ font-size: 90%;
1167
+ display: flex;
1168
+ flex-direction: row;
1169
+ }
1170
+
1171
+ .header .wptb-back-button {
1172
+ margin-right: 10px;
1173
+ }
1174
+
1175
+ .wptb-panel-toggle .toggle-icon {
1176
+ cursor: pointer;
1177
+ }
1178
+
1179
+ .wptb-panel-toggle .toggle-icon::after {
1180
+ content: "\f343";
1181
+ }
1182
+
1183
+ .wptb-panel-toggle-content .wptb-panel-toggle .toggle-icon::after {
1184
+ content: "\f347";
1185
+ }
1186
+
1187
+ .wptb-panel-toggle-target {
1188
+ background-color: var(--wptb-plugin-gray-100);
1189
+ padding: 20px 10px;
1190
+ }
1191
+
1192
+ .wptb-panel-section-toggle-target {
1193
+ background-color: var(--wptb-plugin-gray-100);
1194
+ }
1195
+
1196
+ .wptb-panel-elements-inner-wrapper {
1197
+ display: grid;
1198
+ grid-auto-flow: row;
1199
+ grid-template-columns: 1fr 1fr;
1200
+ grid-gap: 10px;
1201
+ color: var(--wptb-plugin-theme-text-color-main);
1202
+ font-size: 80%;
1203
+ }
1204
+
1205
+ .wptb-section-group-tabbed {
1206
+ display: grid;
1207
+ grid-template-columns: 1fr;
1208
+ grid-template-areas: "header" "tabButtons" "controls";
1209
+ grid-auto-flow: row;
1210
+ grid-template-rows: auto;
1211
+ }
1212
+
1213
+ .wptb-section-group-tabbed-header {
1214
+ grid-area: header;
1215
+ justify-content: center !important;
1216
+ }
1217
+
1218
+ .wptb-section-group-tabbed-tabs-buttons {
1219
+ grid-area: tabButtons;
1220
+ display: flex;
1221
+ flex-direction: row;
1222
+ background-color: var(--wptb-plugin-theme-color-light);
1223
+ text-align: center;
1224
+ justify-content: stretch;
1225
+ border-bottom: 1px solid #E5DFDF;
1226
+ }
1227
+
1228
+ .wptb-section-group-tabbed-tabs-buttons div {
1229
+ width: 100%;
1230
+ margin: 0 !important;
1231
+ font-size: 90%;
1232
+ padding: 7px !important;
1233
+ }
1234
+
1235
+ .wptb-section-group-tab-content {
1236
+ grid-area: controls;
1237
+ /*animation: wptb-basic-appear 0.2s ease-out;*/
1238
+ transition: opacity 0.2s ease-out;
1239
+ }
1240
+
1241
+ .wptb-plugin-non-visible {
1242
+ /*display: none !important;*/
1243
+ height: 0;
1244
+ opacity: 0;
1245
+ pointer-events: none;
1246
+ transition: none !important;
1247
+ }
1248
+
1249
+ .wptb-plugin-non-visible div {
1250
+ height: 0;
1251
+ }
1252
+
1253
+ /**
1254
+ * Elements
1255
+ */
1256
+
1257
+
1258
+ .wptb-elements-container {
1259
+ width: 100%;
1260
+ max-height: inherit;
1261
+ /*display: table;*/
1262
+ padding: 0 0 60px 0;
1263
+ background-color: inherit;
1264
+ }
1265
+
1266
+ .wptb-element {
1267
+ position: relative;
1268
+ background: var(--wptb-plugin-theme-color-light);
1269
+ /*font-size: 15px;*/
1270
+ display: flex;
1271
+ align-items: center;
1272
+ justify-content: center;
1273
+ flex-direction: column;
1274
+ height: 100px;
1275
+ text-align: center;
1276
+ border-radius: 5px;
1277
+ border: 2px solid var(--wptb-plugin-gray-400);
1278
+ transition: all .25s;
1279
+ cursor: move;
1280
+ }
1281
+
1282
+ .wptb-element:nth-child(odd) {
1283
+ /*width: 47.5%;*/
1284
+ /*float: left;*/
1285
+ /*margin: 6px 0 -4px 6px;*/
1286
  }
1287
 
1288
  .wptb-element:nth-child(even) {
1289
+ /*width: 47.5%;*/
1290
+ /*float: right;*/
1291
+ /*margin: 6px 5px -4px 0;*/
1292
  }
1293
 
1294
  .wptb-element p {
1295
  margin: 0;
 
1296
  }
1297
 
1298
  .wptb-element:hover {
1299
+ box-shadow: 3px 3px 2px 0.5px rgba(0, 0, 0, 0.2);
1300
+ }
1301
+
1302
+ .wptb-element svg {
1303
+ fill: var(--wptb-plugin-theme-text-color-main) !important;
1304
+ }
1305
+
1306
+ .wptb-element-draggable-icon {
1307
+ position: absolute;
1308
+ top: 0;
1309
+ right: 0;
1310
+ color: var(--wptb-plugin-gray-500) !important;
1311
  }
1312
 
1313
  .left {
1329
 
1330
  .wptb-builder-panel {
1331
  position: relative;
1332
+ /*left: var(--wptb-plugin-sidebar-size-full);*/
1333
  min-height: 100%;
1334
+ -webkit-transition: all 0.2s ease-out, right 0.2s ease-out;
1335
+ -o-transition: all 0.2s ease-out, right 0.2s ease-out;
1336
+ transition: all 0.2s ease-out, right 0.2s ease-out;
1337
+ width: calc(100% - var(--wptb-plugin-sidebar-size-full));
 
 
1338
  text-align: center;
1339
+ z-index: 100000;
1340
+ }
1341
+
1342
+ .wptb-left-panel[data-wptb-panel-location="left"] + .wptb-builder-panel {
1343
+ left: var(--wptb-plugin-sidebar-size-full);
1344
  }
1345
 
1346
+ .wptb-left-panel[data-wptb-panel-location="right"] + .wptb-builder-panel {
1347
  left: 0;
 
1348
  }
1349
 
1350
 
1351
+ .collapsed .wptb-left-panel[data-wptb-panel-location="left"] + .wptb-builder-panel {
1352
+ left: calc(0px + var(--wptb-plugin-left-panel-constant)) !important;
1353
+ width: calc(100% - var(--wptb-plugin-left-panel-constant)) !important;
1354
+ }
1355
+
1356
+
1357
+ .collapsed .wptb-left-panel[data-wptb-panel-location="right"] + .wptb-builder-panel {
1358
+ right: calc(0px - var(--wptb-plugin-left-panel-constant)) !important;
1359
+ width: calc(100% - var(--wptb-plugin-left-panel-constant)) !important;
1360
+ }
1361
+
1362
+ /*.collapsed .wptb-builder-panel {*/
1363
+ /* left: calc(0px + var(--wptb-plugin-left-panel-constant)) !important;*/
1364
+ /* width: calc(100% - var(--wptb-plugin-left-panel-constant)) !important;*/
1365
+ /*}*/
1366
+
1367
  /**
1368
  * Table name Setup
1369
  */
1370
 
1371
  .wptb-name-setup {
1372
+ /*justify-content: center;*/
1373
+ text-align: start;
1374
+ margin: 0 20px;
1375
+ grid-area: table-name;
1376
  }
1377
 
1378
+ .wptb-left-panel[data-wptb-panel-location="right"] + .wptb-builder-panel .wptb-name-setup {
1379
+ text-align: end !important;
1380
+ }
1381
+
1382
+ .wptb-left-panel[data-wptb-panel-location="right"] + .wptb-builder-panel .wptb-name-setup input {
1383
+ text-align: end !important;
1384
+ }
1385
+
1386
+ .wptb-plugin-header-close {
1387
+ grid-area: close;
1388
  }
1389
 
1390
  #wptb-setup-name {
1391
+ height: 50px;
 
1392
  box-shadow: none;
1393
+ border: 1px solid var(--wptb-plugin-gray-300);
1394
+ font-size: 100%;
1395
  width: 420px;
1396
  padding: 0 20px;
1397
  }
1442
  background: #fff;
1443
  margin-top: 30px;
1444
  margin-bottom: 30px;
1445
+ max-width: 700px;
1446
  overflow-x: auto;
1447
  overflow-y: hidden;
1448
  }
1771
  background: #329d3f;
1772
  color: #ffffff;
1773
  cursor: pointer;
1774
+ border-radius: 5px;
1775
+ border: 0;
1776
+ box-shadow: none;
1777
+ transition: all 0.2s ease-out;
1778
+ display: flex;
1779
+ flex-direction: row;
1780
+ justify-content: space-between;
1781
+ align-items: center;
1782
+ }
1783
+
1784
+ .wptb-button-icon {
1785
+ margin: 0 5px;
1786
+ order: -1;
1787
+ width: 25px;
1788
+ height: 25px;
1789
+ display: flex;
1790
+ justify-content: center;
1791
+ align-items: center;
1792
+ }
1793
+
1794
+ .wptb-button-icon svg {
1795
+ width: 100%;
1796
+ height: 100%;
1797
+ fill: currentColor;
1798
+ }
1799
+
1800
+ .wptb-button-icon[data-wptb-button-icon-src=""] {
1801
+ display: none;
1802
+ }
1803
+
1804
+ [data-wptb-button-icon-position='right'] .wptb-button-icon {
1805
+ order: 2
1806
+ }
1807
+
1808
+ .wptb-plugin-button-order-right .wptb-button-icon {
1809
+ order: 2;
1810
  }
1811
 
1812
  .wptb-button:hover {
1830
  .wptb-generator-btn {
1831
  width: 92%;
1832
  padding: 15px;
1833
+ background: var(--wptb-plugin-logo-color);
1834
  color: white;
1835
  cursor: pointer;
1836
+ border: none;
1837
+ box-shadow: none;
1838
+ border-radius: 5px;
1839
  }
1840
 
1841
  .wptb-input-number {
1889
  min-height: 55px;
1890
  text-align: center;
1891
  position: sticky !important;
1892
+ top: 95px;
1893
  z-index: 100;
1894
  display: inline-block;
1895
  }
1938
  box-shadow: inset 0px 0px 8px 0px rgba(0, 0, 0, 0.1);
1939
  }
1940
 
1941
+ .wptb-btn-size-switcher.bnt-selected {
1942
  background: #fff;
1943
  box-shadow: inset 0px 0px 20px 4px rgba(0, 0, 0, 0.15);
1944
  cursor: default;
1986
  display: none;
1987
  }
1988
 
1989
+ .wptb-text-container .mce-content-body a {
1990
+ color: rgb(30, 115, 190);
1991
+ }
1992
+
1993
  .wptb-droppable.wptb-cell ul,
1994
  .wptb-droppable.wptb-cell ol {
1995
  border: 1px solid transparent;
2024
  .wptb-droppable.wptb-cell li .wptb-list-item-content p {
2025
  word-wrap: break-word;
2026
  line-height: 30px;
2027
+ font-size: 15px;
2028
+ padding-left: 20px;
2029
  }
2030
 
2031
  .wptb-list-container ul li > div > p::before {
2033
  display: inline-block;
2034
  line-height: 30px;
2035
  padding: 0 5px 0 0;
2036
+ /* font-size: 15px; */
2037
  font-family: verdana, sans-serif;
2038
  cursor: text;
2039
+ min-width: fit-content;
2040
+ }
2041
+
2042
+ .wptb-droppable.wptb-cell li .wptb-list-item-content p span.content {
2043
+ display: block;
2044
  }
2045
 
2046
  .wptb-list-container ul li > div > p::before {
2047
+ margin-left: -20px;
2048
  }
2049
 
2050
  .wptb-list-container ul li > div > p.wptb-list-style-type-disc::before {
2115
  font-size: 9pt;
2116
  display: none;
2117
  max-width: 70px;
2118
+ z-index: 100001;
2119
  box-sizing: border-box;
2120
  }
2121
 
2130
  height: 16px;
2131
  }
2132
 
2133
+ .wptb-actions .dashicons.wptb-prebuilt-mark-action {
2134
+ font-size: 10pt;
2135
+ margin: 0em 0.05em 0 0.1em;
2136
+ width: 16px;
2137
+ height: 16px;
2138
+ cursor: pointer;
2139
+ }
2140
+
2141
  .wptb-actions .dashicons.dashicons-trash.wptb-delete-action {
2142
  font-size: 10pt;
2143
  margin: 0em 0.1em 0 0.05em;
2144
  width: 16px;
2145
  height: 16px;
2146
+ order: 2;
2147
  }
2148
 
2149
  .wptb-cell-management .wptb-button {
2177
  bottom: 0;
2178
  left: 0;
2179
  right: 0;
2180
+ z-index: 101000;
2181
  }
2182
 
2183
  .wptb-ph-element.wptb-moving-mode {
2193
  .wptb-drop-handle {
2194
  height: 11px;
2195
  position: absolute;
2196
+ z-index: 101000;
2197
  display: none;
2198
  }
2199
 
2217
  position: absolute;
2218
  width: 1px;
2219
  height: 1px;
2220
+ z-index: 101000;
2221
  }
2222
 
2223
  .wptb-drop-handle.wptb-moving-into-same-elem,
2276
  cursor: move;
2277
  width: 16px;
2278
  height: 16px;
2279
+ order: -1;
2280
  }
2281
 
2282
  .wptb-no-cell-action:not(.visible),
2666
  }
2667
 
2668
  @media screen and (max-width: 600px) {
2669
+ /*.wptb-right {*/
2670
+ /* width: 100%;*/
2671
+ /* text-align: justify;*/
2672
+ /*}*/
2673
+ /*.wptb-embed,*/
2674
+ /*.wptb-preview,*/
2675
+ /*.wptb-save {*/
2676
+ /* display: inline-block;*/
2677
+ /* float: none;*/
2678
+ /* margin: 20px 20px auto;*/
2679
+ /*}*/
2680
+ /*.wptb-close {*/
2681
+ /* padding: 20px;*/
2682
+ /*}*/
2683
+ /*.wptb-right::after {*/
2684
+ /* !*content: "";*!*/
2685
+ /* !*width: 100%;*!*/
2686
+ /* !*display: inline-block;*!*/
2687
+ /*}*/
2688
+ /*.wptb-container {*/
2689
+ /* top: 172px;*/
2690
+ /*}*/
 
 
 
 
 
 
 
2691
  }
2692
 
2693
  @media screen and (max-width: 450px) {
2694
+ /*.wptb-embed,*/
2695
+ /*.wptb-preview,*/
2696
+ /*.wptb-save {*/
2697
+ /* width: 100%;*/
2698
+ /* margin: 15px 0px 0px;*/
2699
+ /* padding: 0px 15px;*/
2700
+ /* box-sizing: border-box;*/
2701
+ /*}*/
2702
+ /*.wptb-embed a,*/
2703
+ /*.wptb-preview a,*/
2704
+ /*.wptb-save a {*/
2705
+ /* width: 100%;*/
2706
+ /* text-align: center;*/
2707
+ /* box-sizing: border-box;*/
2708
+ /*}*/
2709
+ /*#wptb-messaging-area {*/
2710
+ /* top: 310px;*/
2711
+ /*}*/
2712
+ /*.wptb-container {*/
2713
+ /* top: 300px;*/
2714
+ /*}*/
 
 
 
2715
  }
2716
 
2717
  .wptb-cell img {
2723
  }
2724
 
2725
  .wptb-back-button {
2726
+ /*float: left;*/
2727
  }
2728
 
2729
  .wptb-option-text {
3035
  border-bottom: 1px solid #cbd5e0;
3036
  }
3037
 
3038
+ .wptb-plugins-m-b-40 {
3039
+ margin-bottom: 40px;
3040
+ }
3041
+
3042
+ .wptb-settings-checkbox-row {
3043
+ display: flex;
3044
+ flex-direction: row;
3045
+ justify-content: flex-start;
3046
+ align-items: center;
3047
+ margin: 5px 0;
3048
+ width: 100%;
3049
+
3050
+ }
3051
+
3052
  .wptb-settings-sections-wrapper.child {
3053
  display: flex;
3054
  flex-direction: row;
3065
  transition: background-color 0.5s ease-out;
3066
  }
3067
 
3068
+ .wptb-settings-section-item.static-active {
3069
+ border-bottom: 3px solid transparent;
3070
+ }
3071
+
3072
+ .wptb-settings-section-item.static-active.active {
3073
+ border-bottom: 3px solid var(--wptb-plugin-logo-color) !important;
3074
+ background-color: var(--wptb-plugin-gray-100);
3075
+ }
3076
+
3077
  .child .wptb-settings-section-item {
3078
  font-size: 0.8rem;
3079
  padding: 10px;
3087
  color: #CBD5E0 !important;
3088
  }
3089
 
3090
+ .wptb-panel-tabs .wptb-settings-section-item.disabled {
3091
+ color: inherit !important;
3092
+ }
3093
+
3094
  .wptb-menu-active-section-indicator {
3095
  position: absolute;
3096
  border-bottom: 2px solid #1A202C;
3514
  background-color: #EDF2F7;
3515
  }
3516
 
3517
+ .wptb-plugin-box-shadow-md {
3518
+ box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
3519
+ }
3520
+
3521
+ .wptb-plugin-filter-box-shadow-md {
3522
+ filter: drop-shadow(4px 6px 2px rgba(0, 0, 0, 0.1))
3523
+ }
3524
+
3525
+ .wptb-plugin-filter-box-shadow-md-close {
3526
+ filter: drop-shadow(4px 1px 2px rgba(0, 0, 0, 0.1))
3527
+ }
3528
+
3529
+ .wptb-plugin-box-shadow-up-md {
3530
+ box-shadow: 0 -5px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
3531
+ }
3532
+
3533
+ .wptb-plugin-box-shadow-xl {
3534
+ box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.3), 0 2px 4px -1px rgba(0, 0, 0, 0.3) !important;
3535
+ }
3536
+
3537
+ .wptb-plugin-inset-shadow-md {
3538
+ box-shadow: inset 0 4px 6px -1px rgba(0, 0, 0, 0.2), 0 2px 4px -1px rgba(0, 0, 0, 0.2);
3539
+ }
3540
+
3541
+ .wptb-plugin-margin-no {
3542
+ margin: 0 !important;
3543
+ }
3544
+
3545
  @keyframes wptb-settings-rotate {
3546
  0% {
3547
  transform: rotateZ(0deg);
3550
  transform: rotateZ(360deg);
3551
  }
3552
  }
3553
+
3554
+ @keyframes wptb-basic-appear {
3555
+ 0% {
3556
+ opacity: 0
3557
+ }
3558
+ 100% {
3559
+ opacity: 1
3560
+ }
3561
+ }
3562
+
3563
+ .wptb-settings-space-between {
3564
+ display: flex;
3565
+ flex-direction: row;
3566
+ width: 100%;
3567
+ justify-content: space-between;
3568
+ align-items: center;
3569
+ }
3570
+
3571
+
3572
+ .wptb-icon-select-wrapper {
3573
+ align-items: center;
3574
+ height: 100%;
3575
+ }
3576
+
3577
+ .wptb-icon-select-display {
3578
+ width: 50px;
3579
+ height: 50px;
3580
+ background-color: var(--wptb-plugin-theme-color-light);
3581
+ border: 1px solid var(--wptb-plugin-gray-400);
3582
+ border-radius: 5px;
3583
+ position: relative;
3584
+ }
3585
+
3586
+ .wptb-icon-select-preview {
3587
+ width: 100%;
3588
+ height: 100%;
3589
+ justify-content: center;
3590
+ align-items: center;
3591
+ padding: 5px;
3592
+ cursor: pointer;
3593
+ position: relative;
3594
+ }
3595
+
3596
+ .wptb-icon-select-preview img[src=''] {
3597
+ display: none;
3598
+ }
3599
+
3600
+ .wptb-icon-select-preview img {
3601
+ width: 100%;
3602
+ height: 100%;
3603
+ }
3604
+
3605
+ .wptb-icon-select-drawer {
3606
+ position: fixed;
3607
+ display: grid;
3608
+ grid-template-columns: 1fr;
3609
+ grid-template-rows: auto 1fr;
3610
+ grid-auto-flow: row;
3611
+ grid-gap: 15px;
3612
+ background-color: var(--wptb-plugin-theme-color-light);
3613
+ border: 1px solid var(--wptb-plugin-gray-400);
3614
+ border-radius: 5px;
3615
+ padding: 10px;
3616
+ width: 200px;
3617
+ max-height: 200px;
3618
+ overflow-y: hidden;
3619
+ z-index: 110000;
3620
+ }
3621
+
3622
+ .wptb-icon-search-wrapper {
3623
+ width: 100%;
3624
+ }
3625
+
3626
+ .wptb-icon-search-wrapper input {
3627
+ width: 100%;
3628
+ }
3629
+
3630
+ .wptb-icon-previews {
3631
+ position: relative;
3632
+ width: 100%;
3633
+ display: grid;
3634
+ grid-template-columns: repeat(4, 1fr);
3635
+ grid-auto-flow: row;
3636
+ grid-gap: 10px;
3637
+ justify-content: center;
3638
+ align-items: center;
3639
+ overflow-y: scroll;
3640
+ }
3641
+
3642
+ .wptb-icon-select-drawer-preview {
3643
+ display: flex;
3644
+ justify-content: center;
3645
+ align-items: center;
3646
+ }
3647
+
3648
+ .wptb-icon-select-drawer-preview img {
3649
+ width: 25px;
3650
+ height: 25px;
3651
+ transition: transform .2s ease-out;
3652
+ cursor: pointer;
3653
+ }
3654
+
3655
+ .wptb-icon-select-drawer-preview img:hover {
3656
+ transform: scale(1.2);
3657
+ }
3658
+
3659
+ .wptb-icon-select-drawer-end {
3660
+ /*border: 1px solid red;*/
3661
+ }
3662
+
3663
+ .wptb-icon-preview-active {
3664
+ border: 2px solid var(--wptb-plugin-logo-color);
3665
+ }
3666
+
3667
+ .wptb-icon-reset {
3668
+ border: 1px solid var(--wptb-plugin-theme-sidebar-bg);
3669
+ width: 100%;
3670
+ height: 100%;
3671
+ border-radius: 5px;
3672
+ cursor: pointer;
3673
+ }
3674
+
3675
+ .wptb-html-control-wrapper {
3676
+ display: flex;
3677
+ flex-direction: column;
3678
+ justify-content: center;
3679
+ align-items: center;
3680
+ }
3681
+
3682
+ .wptb-html-control-wrapper > div {
3683
+ /*margin: 10px 0;*/
3684
+ }
3685
+
3686
+ .wptb-html-control-wrapper div:last-child {
3687
+ /*margin-bottom: 40px;*/
3688
+ }
3689
+
3690
+ .wptb-help-support-section-wrapper {
3691
+ display: flex;
3692
+ flex-direction: column;
3693
+ justify-content: center;
3694
+ align-items: center;
3695
+ padding: 20px 0;
3696
+ }
3697
+
3698
+ .wptb-help-support-section-wrapper div {
3699
+ margin: 5px 0;
3700
+ }
3701
+
3702
+ .wptb-builder-responsive {
3703
+ position: absolute;
3704
+ top: 0;
3705
+ left: 0;
3706
+ width: 100%;
3707
+ height: 100%;
3708
+ background-color: #fff;
3709
+ z-index: 400000;
3710
+ margin: auto;
3711
+ padding: 40px 10px;
3712
+ }
3713
+
3714
+ .wptb-responsive-menu-tools {
3715
+ margin: auto auto 60px auto;
3716
+ max-width: 700px;
3717
+ }
3718
+
3719
+ .wptb-screen-size-slider-wrapper {
3720
+ display: grid;
3721
+ grid-template-columns: 1fr;
3722
+ grid-template-areas: 'content';
3723
+ justify-content: center;
3724
+ align-items: center;
3725
+ margin-bottom: 80px;
3726
+ }
3727
+
3728
+ .wptb-screen-size-slider-empty {
3729
+ width: 100%;
3730
+ position: relative;
3731
+ height: 5px;
3732
+ border-radius: 3px;
3733
+ background-color: #fff;
3734
+ border: 1px solid var(--wptb-plugin-gray-400);
3735
+ grid-area: content;
3736
+ }
3737
+
3738
+ .wptb-screen-size-slider-fill {
3739
+ height: 100%;
3740
+ position: absolute;
3741
+ left: 0;
3742
+ border-radius: 3px;
3743
+ background-color: var(--wptb-plugin-logo-color);
3744
+ border: 1px solid transparent;
3745
+ transition: all 0.1s linear;
3746
+ }
3747
+
3748
+ .wptb-drag-active .wptb-screen-size-slider-fill {
3749
+ transition: none !important;
3750
+ }
3751
+
3752
+ .wptb-screen-size-slider-arrow {
3753
+ position: absolute;
3754
+ top: -30px;
3755
+ cursor: grab;
3756
+ transition: all 0.1s linear;
3757
+ }
3758
+
3759
+ .wptb-drag-active .wptb-screen-size-slider-arrow {
3760
+ transition: none !important;
3761
+ }
3762
+
3763
+ .wptb-screen-size-slider-arrow:active {
3764
+ cursor: grabbing;
3765
+ }
3766
+
3767
+ .wptb-size-slider-stops-wrapper {
3768
+ z-index: 900000;
3769
+ position: absolute;
3770
+ top: -10px;
3771
+ }
3772
+
3773
+ .wptb-slider-stop {
3774
+ position: absolute;
3775
+ display: flex;
3776
+ width: fit-content;
3777
+ flex-direction: column;
3778
+ justify-content: center;
3779
+ align-items: center;
3780
+ cursor: pointer;
3781
+ }
3782
+
3783
+ .wptb-slider-stop-knob {
3784
+ width: 20px;
3785
+ height: 20px;
3786
+ background-color: #fff;
3787
+ border: 2px solid var(--wptb-plugin-logo-color);
3788
+ border-radius: 50%;
3789
+ margin-bottom: 5px;
3790
+ transition: all 0.2s ease-out;
3791
+ }
3792
+
3793
+ .wptb-slider-stop-label {
3794
+ text-transform: capitalize;
3795
+ font-size: 90%;
3796
+ color: var(--wptb-plugin-gray-400);
3797
+ }
3798
+
3799
+ .wptb-slider-stop-active .wptb-slider-stop-knob {
3800
+ background-color: var(--wptb-plugin-logo-color);
3801
+ color: inherit !important;
3802
+ }
3803
+
3804
+ .wptb-slider-stop-active .wptb-slider-stop-label {
3805
+ color: inherit !important;
3806
+ }
3807
+
3808
+ .wptb-size-input-wrapper {
3809
+ display: flex;
3810
+ justify-content: center;
3811
+ align-items: center;
3812
+ font-size: 90%;
3813
+ }
3814
+
3815
+ .wptb-size-input-wrapper * {
3816
+ margin: 0 10px;
3817
+ font-size: inherit !important;
3818
+ font-variant-numeric: tabular-nums;
3819
+ }
3820
+
3821
+ .wptb-size-input {
3822
+ width: calc(9ch);
3823
+ border: 1px solid var(--wptb-plugin-gray-400) !important;
3824
+ background-color: var(--wptb-plugin-gray-100) !important;
3825
+ text-align: center;
3826
+ color: var(--wptb-plugin-theme-text-color-main) !important;
3827
+ }
3828
+
3829
+ .wptb-responsive-builder-main {
3830
+ /*display: grid;*/
3831
+ /*grid-auto-flow: row;*/
3832
+ /*grid-template-areas: "toolbox" "main";*/
3833
+ margin-bottom: 20px;
3834
+ padding: 0 20px;
3835
+ position: relative;
3836
+ }
3837
+
3838
+ .wptb-responsive-toolbox-wrapper {
3839
+ display: grid;
3840
+ align-items: center;
3841
+ border: 1px solid var(--wptb-plugin-gray-300);
3842
+ border-radius: 3px;
3843
+ grid-area: toolbox;
3844
+ }
3845
+
3846
+ .wptb-responsive-toolbox-top-static {
3847
+ display: grid;
3848
+ grid-template-columns: repeat(2, 1fr);
3849
+ grid-auto-rows: 1fr;
3850
+ align-items: center;
3851
+ grid-gap: 10px;
3852
+ }
3853
+
3854
+ .wptb-responsive-identify-cells-wrapper {
3855
+ /*grid-column: 2;*/
3856
+ }
3857
+
3858
+ .wptb-responsive-toolbox-dynamic-wrapper {
3859
+ display: grid;
3860
+ grid-template-columns: 1fr;
3861
+ grid-gap: 10px;
3862
+ grid-auto-rows: auto;
3863
+ }
3864
+
3865
+ .wptb-responsive-toolbox-wrapper > div {
3866
+ padding: 10px;
3867
+ border-bottom: 1px solid var(--wptb-plugin-gray-300);
3868
+ }
3869
+
3870
+ .wptb-responsive-toolbox-row div:nth-child(even) {
3871
+ justify-self: end;
3872
+ }
3873
+
3874
+ .wptb-responsive-toolbox-wrapper > div:last-child {
3875
+ border-bottom: none !important;
3876
+ }
3877
+
3878
+ .wptb-responsive-toolbox-dynamic-controls-holder {
3879
+ display: grid;
3880
+ grid-template-columns: repeat(2, 1fr);
3881
+ grid-gap: 5px;
3882
+ }
3883
+
3884
+ .wptb-responsive-toolbox-dynamic-controls-holder > div:nth-child(even) {
3885
+ justify-self: end;
3886
+ }
3887
+
3888
+ .wptb-responsive-size-range-name {
3889
+ justify-self: center;
3890
+ font-weight: bold;
3891
+ }
3892
+
3893
+ .wptb-responsive-clone-wrapper {
3894
+ width: 100%;
3895
+ height: 100%;
3896
+ grid-area: main;
3897
+ padding: 20px 0;
3898
+ justify-self: center;
3899
+ border: 1px solid var(--wptb-plugin-gray-300);
3900
+ border-top: none !important;
3901
+ display: flex;
3902
+ justify-content: center;
3903
+ align-items: center;
3904
+ }
3905
+
3906
+ .wptb-responsive-clone-inner-wrapper {
3907
+ display: flex;
3908
+ justify-content: center;
3909
+ width: 100%;
3910
+ }
3911
+
3912
+
3913
+ .wptb-checkerboard-pattern {
3914
+ background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyIDIiPgogICAgPHJlY3Qgd2lkdGg9IjEiIGhlaWdodD0iMSIgeD0iMCIgeT0iMCIgZmlsbD0icmdiKDIwMywyMTMsMjI0KSIvPgogICAgPHJlY3Qgd2lkdGg9IjEiIGhlaWdodD0iMSIgeD0iMSIgeT0iMCIgZmlsbD0icmdiKDIzNywyNDIsMjQ3KSIvPgogICAgPHJlY3Qgd2lkdGg9IjEiIGhlaWdodD0iMSIgeD0iMSIgeT0iMSIgZmlsbD0icmdiKDIwMywyMTMsMjI0KSIvPgogICAgPHJlY3Qgd2lkdGg9IjEiIGhlaWdodD0iMSIgeD0iMCIgeT0iMSIgZmlsbD0icmdiKDIzNywyNDIsMjQ3KSIvPgo8L3N2Zz4=");
3915
+ background-repeat: repeat;
3916
+ background-size: 20px;
3917
+ }
3918
+
3919
+ .wptb-responsive-disabled-table-overlay {
3920
+ /*grid-area: main;*/
3921
+ position: absolute;
3922
+ left: 0;
3923
+ top: 0;
3924
+ width: 100%;
3925
+ height: 100%;
3926
+ background-image: repeating-linear-gradient(45deg, transparent, transparent 15px, rgba(1, 1, 1, 0.2) 15px, rgba(1, 1, 1, 0.2) 30px);
3927
+ z-index: 10;
3928
+ }
3929
+
3930
+ .wptb-responsive-wait-overlay {
3931
+ /*grid-area: main;*/
3932
+ position: absolute;
3933
+ top: 0;
3934
+ left: 0;
3935
+ width: 100%;
3936
+ height: 100%;
3937
+ z-index: 10;
3938
+ display: flex;
3939
+ justify-content: center;
3940
+ align-items: center;
3941
+ background-color: rgba(0, 0, 0, 0.4);
3942
+ color: #fff;
3943
+ text-transform: uppercase;
3944
+ font-weight: bold;
3945
+ }
3946
+
3947
+ .wptb-responsive-wait-overlay:after {
3948
+ content: '';
3949
+ animation: wptb-text-dots 2s infinite;
3950
+ }
3951
+
3952
+ @keyframes wptb-text-dots {
3953
+ 0% {
3954
+ content: ''
3955
+ }
3956
+ 33% {
3957
+ content: '.'
3958
+ }
3959
+ 66% {
3960
+ content: '..'
3961
+ }
3962
+ 100% {
3963
+ content: '...'
3964
+ }
3965
+ }
3966
+
3967
+ .wptb-controls-flex-row {
3968
+ display: flex;
3969
+ align-items: center;
3970
+ flex-direction: row;
3971
+ }
3972
+
3973
+ .wptb-controls-flex-row label {
3974
+ margin: 0 5px;
3975
+ }
3976
+
3977
+ /*checkbox fix for WordPress default style adding margin-top*/
3978
+ .wptb-responsive-builder-main input[type="checkbox"] {
3979
+ margin-top: 0 !important;
3980
+ }
3981
+
3982
+ .wptb-responsive-cell-identifier {
3983
+ position: absolute;
3984
+ top: 0;
3985
+ left: 0;
3986
+ width: 100%;
3987
+ height: 100%;
3988
+ display: flex;
3989
+ justify-content: center;
3990
+ align-items: center;
3991
+ font-size: 4rem;
3992
+ text-shadow: 3px 3px 1px var(--wptb-plugin-gray-300);
3993
+ opacity: 0;
3994
+ transition: opacity 0.5s ease-out;
3995
+ z-index: 100;
3996
+ }
3997
+
3998
+ .wptb-responsive-show-cell-identifier .wptb-responsive-cell-identifier {
3999
+ opacity: 1 !important;
4000
+ }
4001
+
4002
+ .wptb-plugin-modal-window {
4003
+ position: absolute;
4004
+ top: 0;
4005
+ left: 0;
4006
+ width: 100%;
4007
+ height: 100%;
4008
+ background-color: rgba(0, 0, 0, 0.5);
4009
+ z-index: 600000;
4010
+ display: flex;
4011
+ justify-content: center;
4012
+ align-items: center;
4013
+ }
4014
+
4015
+ .wptb-plugin-modal-inner-window {
4016
+ max-width: 400px;
4017
+ background-color: #fff;
4018
+ padding: 20px;
4019
+ border-radius: 3px;
4020
+ display: grid;
4021
+ grid-template-areas:
4022
+ "modalIcon message"
4023
+ "buttonContainer buttonContainer";
4024
+ grid-gap: 10px;
4025
+ }
4026
+
4027
+ .wptb-plugin-modal-icon {
4028
+ grid-area: modalIcon;
4029
+ width: 50px;
4030
+ height: 100%;
4031
+ display: flex;
4032
+ justify-content: center;
4033
+ align-items: center;
4034
+ transform: scale(2);
4035
+ pointer-events: none;
4036
+ }
4037
+
4038
+ .wptb-plugin-modal-message {
4039
+ grid-area: message;
4040
+ }
4041
+
4042
+ .wptb-plugin-modal-button-container {
4043
+ margin: 5px 0 0 0;
4044
+ justify-self: center;
4045
+ grid-area: buttonContainer;
4046
+ width: 100%;
4047
+ }
4048
+
4049
+ .wptb-plugin-button-material {
4050
+ width: fit-content;
4051
+ padding: 5px;
4052
+ border-radius: 3px;
4053
+ background-color: var(--wptb-plugin-logo-color);
4054
+ color: #fff;
4055
+ cursor: pointer;
4056
+ transition: all 0.05s ease-out;
4057
+ }
4058
+
4059
+ .wptb-plugin-button-material:active {
4060
+ transform: scale(0.95);
4061
+ }
4062
+
4063
+ .wptb-plugin-button-material-fit-content {
4064
+ width: fit-content !important;
4065
+ }
4066
+
4067
+ .wptb-plugin-button-material-full-size {
4068
+ width: 100%;
4069
+ }
4070
+
4071
+ .wptb-plugin-responsive-base {
4072
+ min-width: auto !important;
4073
+ width: 100% !important;
4074
+ }
4075
+
4076
+ /*visual update for popup components inside responsive menu*/
4077
+ .wptb-responsive-toolbox-wrapper .wptb-menu-popup-wrapper {
4078
+ margin-right: 0 !important;
4079
+ }
4080
+
4081
+ .wptb-responsive-breakpoint-edit-wrapper {
4082
+ display: grid;
4083
+ grid-template-columns: repeat(2, 1fr);
4084
+ grid-auto-flow: row;
4085
+ align-items: center;
4086
+ }
4087
+
4088
+ .wptb-toggle input:disabled + i {
4089
+ background: var(--wptb-plugin-gray-400);
4090
+ }
4091
+
4092
+ .wptb-control-row {
4093
+ width: 95%;
4094
+ }
4095
+
4096
+ .wptb-builder-content {
4097
+ position: relative;
4098
+ }
4099
+
4100
+ .wptb-responsive-builder-toolbox-float {
4101
+ grid-area: toolbox;
4102
+ padding: 10px 0;
4103
+ display: flex;
4104
+ justify-content: space-between;
4105
+ }
4106
+
4107
+ .wptb-responsive-builder-toolbox-left-float {
4108
+ /*display: inline;*/
4109
+ display: flex;
4110
+ justify-content: flex-start;
4111
+ align-items: center;
4112
+ }
4113
+
4114
+ .wptb-number-postfix-buttons-wrapper {
4115
+ margin-left: 10px;
4116
+ display: flex !important;
4117
+ height: 100%;
4118
+ }
4119
+
4120
+ .wptb-number-postfix-button {
4121
+ display: flex;
4122
+ justify-content: center;
4123
+ align-items: center;
4124
+ width: 30px;
4125
+ border: 1px solid var(--wptb-plugin-gray-400) !important;
4126
+ background-color: var(--wptb-plugin-gray-100) !important;
4127
+ border-radius: 5px;
4128
+ cursor: pointer;
4129
+ font-weight: bold;
4130
+ color: var(--wptb-plugin-theme-text-color-main) !important;
4131
+ font-size: 110%;
4132
+ }
4133
+
4134
+ .wptb-number-postfix-button:active {
4135
+ animation: wptb-push 0.2s ease-out;
4136
+ }
4137
+
4138
+ .wptb-panel-toggle-section {
4139
+ grid-area: sidebar-footer;
4140
+ display: flex;
4141
+ flex-direction: row;
4142
+ justify-content: flex-end;
4143
+ align-items: center;
4144
+ padding: 20px 10px;
4145
+ background-color: var(--wptb-plugin-logo-color);
4146
+ color: #fff;
4147
+ }
4148
+
4149
+
4150
+ .wptb-left-panel[data-wptb-panel-location="right"] .wptb-panel-toggle-section {
4151
+ justify-content: flex-start !important;
4152
+ }
4153
+
4154
+
4155
+ .wptb-panel-toggle-section .wptb-panel-drawer-icon {
4156
+ cursor: pointer;
4157
+ transform: scale(2);
4158
+ }
4159
+
4160
+ .wptb-left-panel[data-wptb-panel-location="right"] .wptb-panel-toggle-section .wptb-panel-drawer-icon {
4161
+ transform: scale(2) rotateZ(180deg);
4162
+ }
4163
+
4164
+ .collapsed .wptb-panel-toggle-section {
4165
+ opacity: 1 !important;
4166
+ }
4167
+
4168
+ .wptb-cell-related-drop-handle {
4169
+ position: fixed;
4170
+ display: none;
4171
+ background-color: #e2e8f0c7;
4172
+ z-index: 300000;
4173
+ pointer-events: none;
4174
+ transition: all 0.2s ease-out;
4175
+ animation: wptb-basic-appear 0.2s ease-out;
4176
+ align-items: center;
4177
+ justify-content: center;
4178
+ font-size: 1.5rem;
4179
+ font-weight: bold;
4180
+ text-transform: uppercase;
4181
+ color: #4a5568;
4182
+ }
4183
+
4184
+ .wptb-control-media-select-button {
4185
+ width: 100px;
4186
+ height: 50px;
4187
+ border: 1px solid var(--wptb-plugin-gray-400);
4188
+ background-position: center center;
4189
+ background-size: contain;
4190
+ background-repeat: no-repeat;
4191
+ cursor: pointer;
4192
+ }
4193
+
4194
+ .wptb-control-media-button-wrapper {
4195
+ position: relative;
4196
+ }
4197
+
4198
+ .wptb-control-media-clear-button {
4199
+ position: absolute;
4200
+ width: 20px;
4201
+ height: 20px;
4202
+ top: -5px;
4203
+ right: -10px;
4204
+ color: red;
4205
+ cursor: pointer;
4206
+ }
4207
+
4208
+ .wptb-control-media-clear-button span {
4209
+ transform: scale(1.8);
4210
+ }
4211
+
4212
+ .wptb-controls-ul-row {
4213
+ display: flex;
4214
+ }
4215
+
4216
+ .wptb-button-svg-center {
4217
+ display: flex !important;
4218
+ justify-content: center;
4219
+ align-items: center;
4220
+ }
4221
+
4222
+
4223
+ /*region sides control*/
4224
+ .wptb-sides-link-icon-wrapper {
4225
+ width: 16px;
4226
+ height: 16px;
4227
+ cursor: pointer;
4228
+ transition: transform 0.1s ease-out;
4229
+ filter: opacity(0.7);
4230
+ }
4231
+
4232
+ .wptb-sides-link-icon-wrapper:active {
4233
+ transform: scale(0.9);
4234
+ }
4235
+
4236
+ .wptb-sides-controls-wrapper {
4237
+ display: grid;
4238
+ grid-template-columns: repeat(5, 1fr);
4239
+ }
4240
+
4241
+ .wptb-side-control-header {
4242
+ color: var(--wptb-plugin-gray-500);
4243
+ text-align: center;
4244
+ margin: 5px 0;
4245
+ }
4246
+
4247
+ .wptb-side-control-main-input {
4248
+ width: 100%;
4249
+ height: 30px !important;
4250
+ border: 1.5px solid var(--wptb-plugin-gray-300) !important;
4251
+ border-radius: 0 !important;
4252
+ text-align: center;
4253
+ }
4254
+
4255
+ .wptb-side-control-number-input {
4256
+ transition: all 0.3s ease-out;
4257
+ margin-left: 5px;
4258
+ }
4259
+
4260
+ .wptb-side-values-linked .wptb-side-control-number-input {
4261
+ margin-left: 0;
4262
+ }
4263
+
4264
+ .wptb-side-control-main-input:active, .wptb-side-control-main-input:focus {
4265
+ outline: none !important;
4266
+ box-shadow: none !important;
4267
+ }
4268
+
4269
+ .wptb-side-control-input-wrapper:first-of-type .wptb-side-control-main-input {
4270
+ border-left-width: 3px !important;
4271
+ border-radius: 5px 0 0 5px !important;
4272
+ }
4273
+
4274
+ .wptb-side-control-input-wrapper:last-of-type .wptb-side-control-main-input {
4275
+ border-right-width: 3px !important;
4276
+ border-radius: 0 5px 5px 0 !important;
4277
+ }
4278
+
4279
+ .wptb-side-control-dropdown-wrapper {
4280
+ align-self: end;
4281
+ }
4282
+
4283
+ .wptb-side-control-dropdown {
4284
+ background-color: var(--wptb-plugin-gray-400) !important;
4285
+ }
4286
+
4287
+ /*endregion*/
4288
+
4289
+ /*region named toggle control*/
4290
+ .wptb-named-toggle-control-wrapper {
4291
+ position: relative;
4292
+ min-height: 30px;
4293
+ display: grid;
4294
+ grid-template-columns: 1fr;
4295
+ grid-auto-columns: 1fr;
4296
+ grid-auto-flow: column;
4297
+ justify-content: center;
4298
+ align-items: center;
4299
+ border: 1px solid var(--wptb-plugin-gray-400);
4300
+ border-radius: 5px;
4301
+ background-color: var(--wptb-plugin-white);
4302
+ overflow: hidden;
4303
+ }
4304
+
4305
+ .wptb-named-toggle-item {
4306
+ display: flex;
4307
+ justify-content: center;
4308
+ align-items: center;
4309
+ text-wrap: avoid;
4310
+ padding: 10px;
4311
+ z-index: 10;
4312
+ cursor: pointer;
4313
+ color: var(--wptb-plugin-gray-400);
4314
+ font-weight: bold;
4315
+ font-size: 90% !important;
4316
+ }
4317
+
4318
+ .wptb-named-toggle-item[data-wptb-named-toggle-active='true'] {
4319
+ color: var(--wptb-plugin-white);
4320
+ }
4321
+
4322
+ .wptb-named-toggle-active-indicator {
4323
+ position: absolute;
4324
+ height: 100%;
4325
+ background-color: var(--wptb-plugin-logo-color);
4326
+ z-index: 9;
4327
+ transition: left 0.2s ease-out;
4328
+ }
4329
+
4330
+ /*endregion*/
4331
+
4332
+ /*region cell vertical alignment*/
4333
+ .wptb-cell[data-wptb-cell-vertical-alignment="top"] {
4334
+ vertical-align: baseline;
4335
+ }
4336
+
4337
+ .wptb-cell[data-wptb-cell-vertical-alignment="center"] {
4338
+ vertical-align: middle;
4339
+ }
4340
+
4341
+ .wptb-cell[data-wptb-cell-vertical-alignment="bottom"] {
4342
+ vertical-align: bottom;
4343
+ }
4344
+
4345
+ /*endregion*/
4346
+
4347
+ /*sortable mode*/
4348
+ .wptb-table-setup:not(.wptb-preview-table-manage-cells) .wptb-preview-table[data-wptb-sortable-table-vertical="1"] td[data-sorted-vertical]::after,
4349
+ .wptb-table-setup:not(.wptb-preview-table-manage-cells) .wptb-preview-table[data-wptb-sortable-table-horizontal="1"] td[data-sorted-horizontal]::after,
4350
+ .wptb-responsive-clone-wrapper .wptb-preview-table[data-wptb-sortable-table-vertical="1"] td[data-sorted-vertical]::after,
4351
+ .wptb-responsive-clone-wrapper .wptb-preview-table[data-wptb-sortable-table-horizontal="1"] td[data-sorted-horizontal]::after {
4352
+ position: absolute;
4353
+ top: 0;
4354
+ bottom: 0;
4355
+ z-index: 101;
4356
+ display: grid;
4357
+ font-family: dashicons;
4358
+ font-size: 35px;
4359
+ align-content: center;
4360
+ text-align: center;
4361
+ }
4362
+
4363
+ .wptb-table-setup:not(.wptb-preview-table-manage-cells) .wptb-preview-table[data-wptb-sortable-table-vertical="1"] td[data-sorted-vertical="ask"]::after,
4364
+ .wptb-responsive-clone-wrapper .wptb-preview-table[data-wptb-sortable-table-vertical="1"] td[data-sorted-vertical="ask"]::after{
4365
+ content: "\f142";
4366
+ right: 0;
4367
+ }
4368
+ .wptb-table-setup:not(.wptb-preview-table-manage-cells) .wptb-preview-table[data-wptb-sortable-table-vertical="1"] td[data-sorted-vertical="desk"].sortable-hover::after,
4369
+ .wptb-responsive-clone-wrapper .wptb-preview-table[data-wptb-sortable-table-vertical="1"] td[data-sorted-vertical="desk"].sortable-hover::after {
4370
+ content: "\f142";
4371
+ cursor: pointer;
4372
+ opacity: 0.7;
4373
+ }
4374
+ .wptb-table-setup:not(.wptb-preview-table-manage-cells) .wptb-preview-table[data-wptb-sortable-table-vertical="1"] td[data-sorted-vertical="desk"]::after,
4375
+ .wptb-responsive-clone-wrapper .wptb-preview-table[data-wptb-sortable-table-vertical="1"] td[data-sorted-vertical="desk"]::after {
4376
+ content: "\f140";
4377
+ right: 0;
4378
+ }
4379
+ .wptb-table-setup:not(.wptb-preview-table-manage-cells) .wptb-preview-table[data-wptb-sortable-table-vertical="1"] td[data-sorted-vertical="ask"].sortable-hover::after,
4380
+ .wptb-responsive-clone-wrapper .wptb-preview-table[data-wptb-sortable-table-vertical="1"] td[data-sorted-vertical="ask"].sortable-hover::after {
4381
+ content: "\f140";
4382
+ cursor: pointer;
4383
+ opacity: 0.7;
4384
+ }
4385
+
4386
+ .wptb-table-setup:not(.wptb-preview-table-manage-cells) .wptb-preview-table[data-wptb-sortable-table-horizontal="1"] td[data-sorted-horizontal="ask"]::after,
4387
+ .wptb-responsive-clone-wrapper .wptb-preview-table[data-wptb-sortable-table-horizontal="1"] td[data-sorted-horizontal="ask"]::after {
4388
+ content: "\f141";
4389
+ left: 0;
4390
+ }
4391
+ .wptb-table-setup:not(.wptb-preview-table-manage-cells) .wptb-preview-table[data-wptb-sortable-table-horizontal="1"] td[data-sorted-horizontal="desk"].sortable-hover::after,
4392
+ .wptb-responsive-clone-wrapper .wptb-preview-table[data-wptb-sortable-table-horizontal="1"] td[data-sorted-horizontal="desk"].sortable-hover::after {
4393
+ content: "\f141";
4394
+ cursor: pointer;
4395
+ opacity: 0.7;
4396
+ }
4397
+ .wptb-table-setup:not(.wptb-preview-table-manage-cells) .wptb-preview-table[data-wptb-sortable-table-horizontal="1"] td[data-sorted-horizontal="desk"]::after,
4398
+ .wptb-responsive-clone-wrapper .wptb-preview-table[data-wptb-sortable-table-horizontal="1"] td[data-sorted-horizontal="desk"]::after{
4399
+ content: "\f139";
4400
+ left: 0;
4401
+ }
4402
+ .wptb-table-setup:not(.wptb-preview-table-manage-cells) .wptb-preview-table[data-wptb-sortable-table-horizontal="1"] td[data-sorted-horizontal="ask"].sortable-hover::after,
4403
+ .wptb-responsive-clone-wrapper .wptb-preview-table[data-wptb-sortable-table-horizontal="1"] td[data-sorted-horizontal="ask"].sortable-hover::after {
4404
+ content: "\f139";
4405
+ cursor: pointer;
4406
+ opacity: 0.7;
4407
+ }
4408
+
4409
+ /*sortable mode end*/
4410
+
4411
+ /*endregion*/
4412
+
4413
+ /*region generate menu*/
4414
+ .wptb-generate-wrapper {
4415
+ margin: 0 50px 0 50px;
4416
+ display: flex;
4417
+ flex-direction: column;
4418
+ justify-content: center;
4419
+ align-items: center;
4420
+ color: inherit;
4421
+ }
4422
+
4423
+ .wptb-generate-menu {
4424
+ display: grid;
4425
+ grid-template-columns: 1fr;
4426
+ grid-template-areas: 'header' 'listing';
4427
+ }
4428
+
4429
+ .wptb-generate-menu-header {
4430
+ grid-area: header;
4431
+ padding: 30px;
4432
+ border-bottom: 1px solid var(--wptb-plugin-gray-300);
4433
+ }
4434
+
4435
+ .wptb-generate-menu-listing {
4436
+ grid-area: listing;
4437
+ padding: 30px;
4438
+ display: flex;
4439
+ justify-content: center;
4440
+ align-items: center;
4441
+ flex-wrap: wrap;
4442
+ }
4443
+
4444
+ .wptb-generate-search {
4445
+ border: 1px solid var(--wptb-plugin-gray-300) !important;
4446
+ text-align: center;
4447
+ font-size: 90%;
4448
+ color: inherit;
4449
+ }
4450
+
4451
+ .wptb-generate-search:active, .wptb-generate-search:focus {
4452
+ border: 1px solid var(--wptb-plugin-gray-400) !important;
4453
+ inset: 0 !important;
4454
+ box-shadow: none !important;
4455
+ }
4456
+
4457
+ .wptb-prebuilt-card {
4458
+ width: 200px;
4459
+ max-width: 200px;
4460
+ display: grid;
4461
+ grid-template-columns: 1fr;
4462
+ grid-template-rows: 125px auto;
4463
+ grid-template-areas: 'main' 'footer';
4464
+ border-radius: 5px;
4465
+ transition: all 0.4s ease-out;
4466
+ background-color: var(--wptb-plugin-theme-color-light);
4467
+ cursor: pointer;
4468
+ margin: calc(var(--wptb-prebuilt-card-control-size) + 10px);
4469
+ }
4470
+
4471
+ .wptb-prebuilt-card-active {
4472
+ cursor: default;
4473
+ animation: wptb-pop 0.2s ease-out;
4474
+ }
4475
+
4476
+ @keyframes wptb-pop {
4477
+ 0% {
4478
+ transform: scale(1);
4479
+ }
4480
+ 50% {
4481
+ transform: scale(1.05);
4482
+ }
4483
+ 0% {
4484
+ transform: scale(1);
4485
+ }
4486
+ }
4487
+
4488
+ .wptb-prebuilt-card:hover {
4489
+ box-shadow: 3px 3px 2px 0.5px rgba(0, 0, 0, 0.2);
4490
+ }
4491
+
4492
+ .wptb-prebuilt-card-preview {
4493
+ position: relative;
4494
+ grid-area: main;
4495
+ border: var(--wptb-prebuilt-card-border-size) solid var(--wptb-plugin-gray-400);
4496
+ border-bottom: 1px solid var(--wptb-plugin-gray-400) !important;
4497
+ background-color: var(--wptb-plugin-gray-300);
4498
+ display: grid;
4499
+ grid-template-columns: 1fr;
4500
+ grid-template-rows: 1fr;
4501
+ grid-template-areas: 'preview';
4502
+ justify-content: center;
4503
+ align-items: center;
4504
+ border-radius: 5px 5px 0 0;
4505
+ }
4506
+
4507
+ .wptb-team-prebuilt {
4508
+ border: var(--wptb-prebuilt-card-border-size) solid var(--wptb-plugin-logo-color) !important;
4509
+ }
4510
+
4511
+ .wptb-prebuilt-card-controls {
4512
+ grid-area: preview;
4513
+ position: relative;
4514
+ width: 100%;
4515
+ height: 100%;
4516
+ display: flex;
4517
+ justify-content: center;
4518
+ align-items: center;
4519
+ pointer-events: none;
4520
+ }
4521
+
4522
+ .wptb-prebuilt-live-display {
4523
+ width: 100%;
4524
+ height: 100%;
4525
+ grid-area: preview;
4526
+ padding: 15px
4527
+ }
4528
+
4529
+ .wptb-prebuilt-live-table {
4530
+ width: 100%;
4531
+ height: 100%;
4532
+ background-color: var(--wptb-plugin-theme-color-light);
4533
+ border-radius: 5px;
4534
+ /*overflow: hidden;*/
4535
+ border: 1px solid var(--wptb-plugin-gray-400);
4536
+ display: grid;
4537
+ }
4538
+
4539
+ .wptb-prebuilt-live-cell {
4540
+ width: 100%;
4541
+ height: 100%;
4542
+ border: 0.5px solid var(--wptb-plugin-gray-400);
4543
+ cursor: pointer;
4544
+ display: flex;
4545
+ justify-content: center;
4546
+ align-items: center;
4547
+ position: relative;
4548
+ overflow: visible;
4549
+ z-index: 10;
4550
+ }
4551
+
4552
+ .wptb-prebuilt-live-cell-hover {
4553
+ opacity: 0.7;
4554
+ background-color: var(--wptb-plugin-logo-color);
4555
+ }
4556
+
4557
+
4558
+ .wptb-prebuilt-live-cell:hover .wptb-prebuilt-live-control {
4559
+ opacity: unset;
4560
+ pointer-events: all;
4561
+ }
4562
+
4563
+ .wptb-prebuilt-live-control-hide .wptb-prebuilt-live-control {
4564
+ display: none;
4565
+ }
4566
+
4567
+ .wptb-prebuilt-live-control-active {
4568
+ background-color: var(--wptb-plugin-logo-color);
4569
+ }
4570
+
4571
+ .wptb-prebuilt-live-control {
4572
+ position: absolute;
4573
+ opacity: 0;
4574
+ pointer-events: none;
4575
+ transition: all 0.1s ease-out;
4576
+ font-size: 120%;
4577
+ }
4578
+
4579
+ .wptb-prebuilt-live-control:active {
4580
+ animation: wptb-push 0.2s ease-out;
4581
+ }
4582
+
4583
+ .wptb-prebuilt-added-cell {
4584
+ background-color: turquoise;
4585
+ cursor: default;
4586
+ z-index: 1 !important;
4587
+ }
4588
+
4589
+ .wptb-prebuilt-control {
4590
+ position: absolute;
4591
+ display: flex;
4592
+ justify-content: center;
4593
+ align-items: center;
4594
+ pointer-events: all;
4595
+ }
4596
+
4597
+ .wptb-prebuilt-control[data-orientation="row"] {
4598
+ top: 0;
4599
+ transform: translateY(calc(-100% - var(--wptb-prebuilt-card-border-size)));
4600
+ display: flex;
4601
+ justify-content: center;
4602
+ align-items: center;
4603
+ }
4604
+
4605
+ .wptb-prebuilt-control[data-orientation="col"] {
4606
+ left: 0;
4607
+ transform: translateX(calc(-100% - var(--wptb-prebuilt-card-border-size)));
4608
+ display: flex;
4609
+ flex-wrap: wrap;
4610
+ flex-direction: column-reverse;
4611
+ width: var(--wptb-prebuilt-card-control-size);
4612
+ justify-content: center;
4613
+ align-items: center;
4614
+ }
4615
+
4616
+ .wptb-prebuilt-control-input {
4617
+ text-align: center;
4618
+ width: var(--wptb-prebuilt-card-control-size);
4619
+ height: var(--wptb-prebuilt-card-control-size);
4620
+ border: 1px solid var(--wptb-plugin-gray-300) !important;
4621
+ color: inherit !important;
4622
+ border-radius: 0 !important;
4623
+ margin: 0 !important;
4624
+ }
4625
+
4626
+ .wptb-prebuilt-control-input:active, .wptb-prebuilt-control-input:focus {
4627
+ border: 1px solid var(--wptb-plugin-gray-400) !important;
4628
+ inset: 0 !important;
4629
+ box-shadow: none !important;
4630
+ }
4631
+
4632
+ .wptb-prebuilt-control-input:disabled {
4633
+ color: var(--wptb-plugin-gray-300) !important;
4634
+ }
4635
+
4636
+ .wptb-prebuilt-control-increment-box {
4637
+ width: var(--wptb-prebuilt-card-control-size);
4638
+ height: var(--wptb-prebuilt-card-control-size);
4639
+ background-color: var(--wptb-plugin-gray-300);
4640
+ display: flex;
4641
+ justify-content: center;
4642
+ align-items: center;
4643
+ font-size: 150%;
4644
+ cursor: pointer;
4645
+ }
4646
+
4647
+ .wptb-prebuilt-control-increment-box:hover {
4648
+ background-color: var(--wptb-plugin-gray-400);
4649
+ }
4650
+
4651
+ .wptb-prebuilt-control-increment-box[disabled] {
4652
+ background-color: var(--wptb-plugin-gray-200) !important;
4653
+ color: var(--wptb-plugin-gray-400) !important;
4654
+ cursor: default;
4655
+ }
4656
+
4657
+ .wptb-prebuilt-card-footer {
4658
+ grid-area: footer;
4659
+ display: flex;
4660
+ justify-content: center;
4661
+ align-items: center;
4662
+ }
4663
+
4664
+ .wptb-prebuilt-card-footer-element {
4665
+ padding: 15px;
4666
+ border: var(--wptb-prebuilt-card-border-size) solid var(--wptb-plugin-gray-400);
4667
+ border-top: 0 !important;
4668
+ width: 100%;
4669
+ height: 100%;
4670
+ border-radius: 0 0 5px 5px;
4671
+ }
4672
+
4673
+ .wptb-prebuilt-card-footer-button-holder {
4674
+ padding: 0 !important;
4675
+ display: grid;
4676
+ grid-template-columns: repeat(2, 1fr);
4677
+ grid-gap: 1px;
4678
+ background-color: var(--wptb-plugin-gray-500);
4679
+ }
4680
+
4681
+ .wptb-prebuilt-card-footer-button-holder-single {
4682
+ grid-template-columns: 1fr !important;
4683
+ }
4684
+
4685
+ .wptb-prebuilt-blank {
4686
+ font-size: 400%;
4687
+ color: var(--wptb-plugin-gray-500);
4688
+ margin: 0 !important;
4689
+ }
4690
+
4691
+ .wptb-prebuilt-footer-button {
4692
+ width: 100%;
4693
+ height: 100%;
4694
+ cursor: pointer;
4695
+ transition: color 0.2s ease-out;
4696
+ font-weight: bold;
4697
+ padding: 15px;
4698
+ color: var(--wptb-plugin-gray-400);
4699
+ }
4700
+
4701
+ .wptb-prebuilt-footer-generate {
4702
+ background-color: var(--wptb-plugin-logo-color);
4703
+ }
4704
+
4705
+ .wptb-prebuilt-footer-edit {
4706
+ background-color: var(--wptb-plugin-green-500);
4707
+ }
4708
+
4709
+ .wptb-prebuilt-footer-button:first-of-type {
4710
+ border-radius: 0 0 0 5px;
4711
+ }
4712
+
4713
+ .wptb-prebuilt-footer-button:last-of-type {
4714
+ border-radius: 0 0 5px 0;
4715
+ }
4716
+
4717
+ .wptb-prebuilt-footer-button:only-of-type {
4718
+ border-radius: 0 0 5px 5px;
4719
+ }
4720
+
4721
+ .wptb-prebuilt-footer-button:hover {
4722
+ color: var(--wptb-plugin-theme-color-light);
4723
+ }
4724
+
4725
+ .wptb-unselectable {
4726
+ -moz-user-select: none;
4727
+ -webkit-user-select: none;
4728
+ -ms-user-select: none;
4729
+ user-select: none;
4730
+ }
4731
+
4732
+ .wptb-no-pointer-events {
4733
+ pointer-events: none;
4734
+ }
4735
+
4736
+ .wptb-plugin-basic-disappear {
4737
+ animation: wptb-basic-disappear 0.1s ease-out;
4738
+ }
4739
+
4740
+ @keyframes wptb-basic-disappear {
4741
+ 0% {
4742
+ opacity: 1;
4743
+ }
4744
+ 100% {
4745
+ opacity: 0;
4746
+ }
4747
+ }
4748
+
4749
+ .wptb-prebuilt-ad {
4750
+ margin: 50px;
4751
+ color: var(--wptb-plugin-gray-500);
4752
+ }
4753
+
4754
+ .wptb-prebuilt-ad-link {
4755
+ font-size: 120%;
4756
+ color: var(--wptb-plugin-logo-color) !important;
4757
+ font-weight: bold;
4758
+ }
4759
+
4760
+ .wptb-prebuilt-table-wrapper {
4761
+ width: 100%;
4762
+ overflow: hidden !important;
4763
+ display: flex;
4764
+ justify-content: center;
4765
+ align-items: center;
4766
+ padding: 20px;
4767
+ animation: wptb-basic-disappear 0.2s ease-out alternate-reverse;
4768
+ pointer-events: none;
4769
+ }
4770
+
4771
+ .wptb-prebuilt-table-wrapper table {
4772
+ width: 700px;
4773
+ }
4774
+
4775
+ .wptb-prebuilt-card-search-indicator-main {
4776
+ color: var(--wptb-plugin-gray-500);
4777
+ }
4778
+
4779
+ .wptb-prebuilt-card-search-indicator {
4780
+ color: var(--wptb-plugin-logo-color) !important;
4781
+ font-weight: bold;
4782
+ }
4783
+
4784
+ .wptb-prebuilt-card-icon {
4785
+ width: 25px;
4786
+ height: 25px;
4787
+ position: absolute;
4788
+ cursor: pointer;
4789
+ display: flex;
4790
+ justify-content: center;
4791
+ align-items: center;
4792
+ }
4793
+
4794
+ .wptb-prebuilt-card-icon svg {
4795
+ width: 100%;
4796
+ height: 100%;
4797
+
4798
+ }
4799
+
4800
+ .wptb-prebuilt-card-fav-icon {
4801
+ left: 8px;
4802
+ top: 8px;
4803
+ }
4804
+
4805
+ .wptb-prebuilt-card-delete-icon {
4806
+ background-color: var(--wptb-plugin-gray-200);
4807
+ padding: 6px;
4808
+ border-radius: 50%;
4809
+ width: 35px;
4810
+ height: 35px;
4811
+ right: -15px;
4812
+ top: -15px;
4813
+ display: flex;
4814
+ justify-content: center;
4815
+ align-items: center;
4816
+ border: 2px solid var(--wptb-plugin-gray-400);
4817
+ transition: all 0.2s ease-out;
4818
+ z-index: 120;
4819
+ }
4820
+
4821
+ .wptb-prebuilt-card-delete-icon:hover {
4822
+ transform: scale(1.1);
4823
+ }
4824
+
4825
+ .wptb-prebuilt-card-delete-icon {
4826
+ fill: red;
4827
+ }
4828
+
4829
+ .wptb-prebuilt-card-fav-icon svg {
4830
+ transition: fill 0.2s ease-out;
4831
+ fill: transparent;
4832
+ stroke-width: 40;
4833
+ stroke: var(--wptb-plugin-theme-color-light);
4834
+ }
4835
+
4836
+ .wptb-prebuilt-card-fav-icon:active {
4837
+ animation: wptb-push 0.2s ease-out;
4838
+ }
4839
+
4840
+ .wptb-prebuilt-card-fav-icon.is-fav svg {
4841
+ fill: var(--wptb-plugin-logo-color) !important;
4842
+ stroke-width: 0 !important;
4843
+ }
4844
+
4845
+ .wptb-prebuilt-card-fav-icon:hover svg {
4846
+ fill: var(--wptb-plugin-theme-color-light);
4847
+ }
4848
+
4849
+ @keyframes wptb-push {
4850
+ 0% {
4851
+ transform: scale(1);
4852
+ }
4853
+ 50% {
4854
+ transform: scale(0.9);
4855
+ }
4856
+ 100% {
4857
+ transform: scale(1);
4858
+ }
4859
+ }
4860
+
4861
+ .wptb-prebuilt-delete-module-confirmation-overlay {
4862
+ position: absolute;
4863
+ width: 100%;
4864
+ height: 100%;
4865
+ top: 0;
4866
+ left: 0;
4867
+ display: flex;
4868
+ flex-direction: column;
4869
+ justify-content: center;
4870
+ align-items: center;
4871
+ background-color: rgba(0, 0, 0, 0.5);
4872
+ color: var(--wptb-plugin-theme-color-light);
4873
+ z-index: 100;
4874
+ border-radius: 5px 5px 0 0;
4875
+ }
4876
+
4877
+ .wptb-prebuilt-delete-module-confirmation-overlay div {
4878
+ margin: 5px;
4879
+ }
4880
+
4881
+ .wptb-prebuilt-delete-button-container {
4882
+ width: 100%;
4883
+ display: flex;
4884
+ justify-content: space-evenly;
4885
+ align-items: center;
4886
+ }
4887
+
4888
+ .wptb-prebuilt-card-circle-icon-button {
4889
+ width: 30px;
4890
+ height: 30px;
4891
+ border-radius: 50%;
4892
+ display: flex;
4893
+ justify-content: center;
4894
+ align-items: center;
4895
+ cursor: pointer;
4896
+ color: var(--wptb-plugin-theme-color-light)
4897
+ }
4898
+
4899
+ .wptb-prebuilt-card-circle-icon-button svg {
4900
+ width: 100%;
4901
+ height: 100%;
4902
+ fill: currentColor;
4903
+ }
4904
+
4905
+ .wptb-prebuilt-card-circle-icon-button:active {
4906
+ animation: wptb-push 0.2s ease-out;
4907
+ }
4908
+
4909
+ .wptb-prebuilt-card-circle-icon-button[data-wptb-button-type='positive'] {
4910
+ background-color: var(--wptb-plugin-green-500);
4911
+ }
4912
+
4913
+ .wptb-prebuilt-card-circle-icon-button[data-wptb-button-type='negative'] {
4914
+ background-color: red;
4915
+ }
4916
+
4917
+ .wptb-prebuilt-mark-indicator {
4918
+ position: absolute;
4919
+ pointer-events: none;
4920
+ width: calc(100% + 10px);
4921
+ height: calc(100% + 10px);
4922
+ top: -5px;
4923
+ left: -5px;
4924
+ background: repeating-linear-gradient(45deg, white, white 5px, var(--wptb-plugin-logo-color) 5px, var(--wptb-plugin-logo-color) 10px);
4925
+ background-size: 400% 400%;
4926
+ animation: linear-gradient-move 20s linear infinite reverse;
4927
+ opacity: 0.2;
4928
+ }
4929
+
4930
+ @keyframes linear-gradient-move {
4931
+ 0% {
4932
+ background-position: 0% 50%;
4933
+ }
4934
+ 100% {
4935
+ background-position: 100% 50%;
4936
+ }
4937
+ }
4938
+
4939
+ .wptb-prebuilt-card .wptb-prebuilt-mark-indicator {
4940
+ display: none;
4941
+ }
4942
+
4943
+ .wptb-prebuilt-tab-control {
4944
+ position: absolute;
4945
+ top: 20px;
4946
+ left: 20px;
4947
+ border: 1px solid var(--wptb-plugin-gray-400);
4948
+ display: flex;
4949
+ justify-content: center;
4950
+ align-items: center;
4951
+ border-radius: 5px;
4952
+ }
4953
+
4954
+ .wptb-prebuilt-tab-control div {
4955
+ padding: 5px;
4956
+ }
4957
+
4958
+ .wptb-prebuilt-tab-control-label {
4959
+ text-transform: capitalize;
4960
+ border-right: 1px solid var(--wptb-plugin-gray-400);
4961
+ white-space: nowrap;
4962
+ }
4963
+
4964
+ .wptb-prebuilt-tab-control-buttons-wrapper {
4965
+ display: flex;
4966
+ justify-content: center;
4967
+ align-items: center;
4968
+ flex-direction: row;
4969
+ flex-wrap: nowrap;
4970
+ }
4971
+
4972
+ .wptb-prebuilt-tab-control-icon {
4973
+ width: 35px;
4974
+ height: 35px;
4975
+ display: flex;
4976
+ justify-content: center;
4977
+ align-items: center;
4978
+ }
4979
+
4980
+ .wptb-prebuilt-tab-control-icon[data-wptb-prebuilt-tab-control-type="stop"] {
4981
+ fill: red;
4982
+ }
4983
+
4984
+ .wptb-prebuilt-tab-control-icon[data-wptb-prebuilt-tab-control-type="restart"] {
4985
+ fill: var(--wptb-plugin-green-500);
4986
+ }
4987
+
4988
+ .wptb-prebuilt-tab-control-icon svg {
4989
+ width: 100%;
4990
+ height: 100%;
4991
+ cursor: pointer;
4992
+ }
4993
+
4994
+ .wptb-prebuilt-tab-control-icon svg:active {
4995
+ animation: wptb-push 0.2s ease-out;
4996
+ }
4997
+
4998
+ .wptb-prebuilt-dev-tool {
4999
+ position: absolute;
5000
+ top: 20px;
5001
+ right: 20px;
5002
+ border: 1px solid var(--wptb-plugin-gray-400);
5003
+ display: flex;
5004
+ flex-direction: column;
5005
+ flex-wrap: nowrap;
5006
+ justify-content: center;
5007
+ align-items: center;
5008
+ border-radius: 5px;
5009
+ }
5010
+
5011
+ .wptb-prebuilt-dev-tool div {
5012
+ padding: 5px;
5013
+ }
5014
+
5015
+ .wptb-prebuilt-dev-tool .label {
5016
+ font-weight: bold;
5017
+ border-bottom: 1px solid var(--wptb-plugin-gray-400);
5018
+ }
5019
+
5020
+ .wptb-prebuilt-dev-tool .prebuilt-button {
5021
+ width: fit-content;
5022
+ padding: 10px;
5023
+ margin: 5px;
5024
+ color: var(--wptb-plugin-theme-color-light);
5025
+ background-color: var(--wptb-plugin-logo-color);
5026
+ border-radius: 5px;
5027
+ cursor: pointer;
5028
+ }
5029
+
5030
+ .wptb-prebuilt-dev-tool .prebuilt-button:active {
5031
+ animation: wptb-push 0.2s ease-out;
5032
+ }
5033
+
5034
+ .wptb-prebuilt-display-calculate {
5035
+ width: 700px;
5036
+ }
5037
+
5038
+ /*endregion*/
5039
+
5040
+ /*region tinyMCE blocker*/
5041
+ .wptb-preview-table-manage-cells table tr td div {
5042
+ pointer-events: none;
5043
+ -moz-user-select: none;
5044
+ -webkit-user-select: none;
5045
+ -ms-user-select: none;
5046
+ user-select: none;
5047
+ }
5048
+
5049
+ .wptb-plugin-blocker-element {
5050
+ position: absolute;
5051
+ top: 0;
5052
+ left: 0;
5053
+ width: 100%;
5054
+ height: 100%;
5055
+ display: flex;
5056
+ justify-content: center;
5057
+ align-items: center;
5058
+ }
5059
+
5060
+ .wptb-plugin-blocker-element-empty::before {
5061
+ content: 'Cell';
5062
+ display: block;
5063
+ font-weight: normal;
5064
+ font-size: 80%;
5065
+ text-align: center;
5066
+ color: #969fa6;
5067
+ }
5068
+
5069
+ .wptb-plugin-blocker-element-empty::after {
5070
+ content: '';
5071
+ display: block;
5072
+ border: 1px dashed #969fa6;
5073
+ position: absolute;
5074
+ top: 2px;
5075
+ right: 2px;
5076
+ bottom: 2px;
5077
+ left: 2px;
5078
+ }
5079
+
5080
+ /*endregion*/
5081
+
5082
+ /*region header-toolbar*/
5083
+ .wptb-plugin-header-toolbar {
5084
+ top: 0;
5085
+ position: absolute;
5086
+ left: 50%;
5087
+ padding: 0 10px;
5088
+ border: 1px solid var(--wptb-plugin-gray-200);
5089
+ z-index: 1;
5090
+ background-color: var(--wptb-plugin-theme-color-light);
5091
+ transition: top 0.2s ease-out;
5092
+ }
5093
+
5094
+ .wptb-plugin-header-toolbar div {
5095
+ font-size: 95%;
5096
+ width: fit-content;
5097
+ padding: 5px;
5098
+ margin: 0;
5099
+ }
5100
+
5101
+ /*endregion*/
5102
+
5103
+ /*region versionControl*/
5104
+ .wptb-settings-version-control {
5105
+ max-width: 800px;
5106
+ width: 100%;
5107
+ display: grid;
5108
+ grid-template-columns: 1fr 300px;
5109
+ grid-template-areas: 'main changelog';
5110
+ grid-template-rows: 500px;
5111
+ grid-gap: 50px;
5112
+ }
5113
+
5114
+ .wptb-version-control-main {
5115
+ grid-area: main;
5116
+ padding: 20px;
5117
+ display: flex;
5118
+ flex-direction: column;
5119
+ justify-content: space-between;
5120
+ align-items: center;
5121
+ }
5122
+
5123
+ .wptb-version-control-main-row {
5124
+ width: 100%;
5125
+ display: flex;
5126
+ justify-content: center;
5127
+ padding: 10px 0;
5128
+ flex-direction: column;
5129
+ }
5130
+
5131
+ .wptb-version-control-warning-span {
5132
+ color: var(--wptb-plugin-red-600) !important;
5133
+ text-transform: uppercase;
5134
+ font-weight: bold;
5135
+ font-size: 120%;
5136
+ }
5137
+
5138
+ .wptb-version-control-warning-info {
5139
+ font-size: 90%;
5140
+ }
5141
+
5142
+ .wptb-version-control-changelog {
5143
+ grid-area: changelog;
5144
+ background-color: var(--wptb-plugin-gray-200);
5145
+ border: 1px solid var(--wptb-plugin-gray-300);
5146
+ font-family: Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
5147
+ padding: 10px;
5148
+ overflow-y: scroll;
5149
+ height: 100%;
5150
+ }
5151
+
5152
+ .wptb-version-control-controls {
5153
+ width: 100%;
5154
+ height: 100%;
5155
+ margin: 20px 0;
5156
+ display: grid;
5157
+ grid-template-columns: auto 1fr;
5158
+ grid-template-rows: repeat(3, auto);
5159
+ align-items: center;
5160
+ grid-gap: 20px
5161
+ }
5162
+
5163
+ .wptb-version-control-row-element {
5164
+ padding: 10px 0;
5165
+
5166
+ }
5167
+
5168
+ .wptb-version-control-row-label {
5169
+ text-transform: capitalize;
5170
+ font-weight: bold;
5171
+ }
5172
+
5173
+ .wptb-version-control-row-label:after {
5174
+ content: ':';
5175
+ }
5176
+
5177
+ .wptb-version-indicator {
5178
+ height: 100%;
5179
+ /*width: 100%;*/
5180
+ display: flex;
5181
+ align-items: center;
5182
+ margin-right: 10px;
5183
+ }
5184
+
5185
+ .wptb-version-indicator-circle {
5186
+ width: 15px;
5187
+ height: 15px;
5188
+ border-radius: 50%;
5189
+ margin-right: 10px;
5190
+ }
5191
+
5192
+ .wptb-version-indicator-match {
5193
+ background-color: var(--wptb-plugin-green-500);
5194
+ }
5195
+
5196
+ .wptb-version-indicator-low {
5197
+ background-color: var(--wptb-plugin-yellow-500);
5198
+ }
5199
+
5200
+ .wptb-version-control-anchor {
5201
+ text-transform: capitalize;
5202
+ }
5203
+
5204
+ .wptb-version-control-row-slot {
5205
+ width: 100%;
5206
+ height: 100%;
5207
+ display: flex;
5208
+ justify-content: flex-start;
5209
+ align-items: center;
5210
+ flex-direction: row;
5211
+ }
5212
+
5213
+ /*endregion*/
inc/admin/element-classes/base/element-base-object.php DELETED
@@ -1,112 +0,0 @@
1
- <?php
2
- namespace WP_Table_Builder\Inc\Admin\Element_Classes\Base;
3
- use WP_Table_Builder\Inc\Admin\Base\Controls_Stack;
4
- use WP_Table_Builder\Inc\Core\Init as Init;
5
- use WP_Table_Builder as NS;
6
-
7
- // If this file is called directly, abort.
8
- if ( ! defined( 'WPINC' ) ) {
9
- die;
10
- }
11
-
12
-
13
- /**
14
- * WP Table Builder element base.
15
- *
16
- * An abstract class to register new WP Table Builder elements.
17
- *
18
- * This abstract class must be extended in order to register new elements.
19
- *
20
- * @since 1.1.2
21
- * @abstract
22
- */
23
- abstract class Element_Base_Object extends Controls_Stack {
24
-
25
- /**
26
- * Get directory icon.
27
- *
28
- * Retrieve directory item icon.
29
- *
30
- * @since 1.1.2
31
- * @access public
32
- *
33
- * @return string Directory Item icon.
34
- */
35
- abstract public function get_directory_icon();
36
-
37
- /**
38
- * Get url icon.
39
- *
40
- * Return url icon.
41
- *
42
- * @since 1.1.2
43
- * @access public
44
- *
45
- * @return string Url Item icon.
46
- */
47
- abstract public function get_url_icon();
48
-
49
- /**
50
- * Include file with js script for element
51
- *
52
- * @since 1.1.2
53
- * @access protected
54
- */
55
- public function element_script() {}
56
-
57
- /**
58
- * Render element output in the editor.
59
- *
60
- * Used to generate the live preview, using a wp js template
61
- *
62
- * @since 1.1.2
63
- * @access protected
64
- */
65
- protected function _content_template() {}
66
-
67
- /**
68
- * Output element template and script.
69
- *
70
- * Used to generate the element template on the editor.
71
- *
72
- * @since 1.1.2
73
- * @access public
74
- */
75
- public function output_template() {
76
- ob_start();
77
-
78
- $this->_content_template();
79
-
80
- $template_content = ob_get_clean();
81
-
82
- if ( empty( $template_content ) ) {
83
- return;
84
- }
85
-
86
- ?>
87
- <script type="text/html" id="tmpl-wptb-<?php echo esc_attr( $this->get_name() ); ?>-content">
88
- <?php echo $template_content; ?>
89
- </script>
90
-
91
- <?php
92
- }
93
-
94
- /**
95
- * Output element script.
96
- *
97
- * @since 1.1.2
98
- * @access public
99
- */
100
- public function output_scripts() {
101
- $directory_sctipt = $this->element_script();
102
- if( $directory_sctipt && file_exists( $directory_sctipt ) ) {
103
- ?>
104
- <script type="text/javascript">
105
- WPTB_ElementsScriptsLauncher['<?php echo $this->get_name(); ?>'] = function( element ) {
106
- <?php include $directory_sctipt; ?>
107
- }
108
- </script>
109
- <?php
110
- }
111
- }
112
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
inc/admin/element-classes/base/element-base.php ADDED
@@ -0,0 +1,136 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ namespace WP_Table_Builder\Inc\Admin\Element_Classes\Base;
4
+
5
+ use WP_Table_Builder\Inc\Admin\Base\Element_Base_Object;
6
+ use WP_Table_Builder\Inc\Admin\Managers\Elements_Manager;
7
+ use WP_Table_Builder\Inc\Core\Init as Init;
8
+ use WP_Table_Builder as NS;
9
+
10
+ // If this file is called directly, abort.
11
+ if ( ! defined( 'WPINC' ) ) {
12
+ die;
13
+ }
14
+
15
+
16
+ /**
17
+ * WP Table Builder element base.
18
+ *
19
+ * An abstract class to register new WP Table Builder elements.
20
+ *
21
+ * This abstract class must be extended in order to register new elements.
22
+ *
23
+ * @since 1.1.2
24
+ * @abstract
25
+ */
26
+ abstract class Element_Base extends Element_Base_Object {
27
+ /**
28
+ * Get directory icon.
29
+ *
30
+ * Retrieve directory item icon.
31
+ *
32
+ * @return string Directory Item icon.
33
+ * @since 1.1.2
34
+ * @access public
35
+ *
36
+ */
37
+ abstract public function get_directory_icon();
38
+
39
+ /**
40
+ * Get url icon.
41
+ *
42
+ * Return url icon.
43
+ *
44
+ * @return string Url Item icon.
45
+ * @since 1.1.2
46
+ * @access public
47
+ *
48
+ */
49
+ abstract public function get_url_icon();
50
+
51
+ /**
52
+ * Render element output in the editor.
53
+ *
54
+ * Used to generate the live preview, using a wp js template
55
+ *
56
+ * @since 1.1.2
57
+ * @access protected
58
+ */
59
+ protected function _content_template() {
60
+ }
61
+
62
+ /**
63
+ * Get a list of available icons through icon manager.
64
+ *
65
+ * @param string $extension file extension to filter out results
66
+ *
67
+ * @return array associated array of icon list, keys for icon names and values for icon urls
68
+ */
69
+ protected function read_icons( $extension = 'svg' ) {
70
+ return Init::instance()->get_icon_manager()->get_icon_list( $extension );
71
+
72
+ }
73
+
74
+ /**
75
+ * Get an icon through icon manager.
76
+ *
77
+ * @param string $name icon name
78
+ * @param boolean $echo echo to output buffer
79
+ * @param string $extension extra filename info for icon
80
+ *
81
+ * @return string|void return a string representation of the icon of void depending on to chose to output to buffer
82
+ */
83
+ protected function get_icon( $name, $echo = false, $extension = 'svg' ) {
84
+ return Init::instance()->get_icon_manager()->get_icon( $name, $echo, $extension );
85
+ }
86
+
87
+ /**
88
+ * Output element template and script.
89
+ *
90
+ * Used to generate the element template on the editor.
91
+ *
92
+ * @since 1.1.2
93
+ * @access public
94
+ */
95
+ public function output_template() {
96
+ ob_start();
97
+
98
+ $this->_content_template();
99
+
100
+ $template_content = ob_get_clean();
101
+
102
+ if ( empty( $template_content ) ) {
103
+ return;
104
+ }
105
+
106
+ ?>
107
+ <script type="text/html" id="tmpl-wptb-<?php echo esc_attr( $this->get_name() ); ?>-content">
108
+ <?php echo $template_content; ?>
109
+ </script>
110
+
111
+ <?php
112
+ }
113
+
114
+ /**
115
+ * Get type of element.
116
+ *
117
+ * This type changes according to which version (basic,pro) of the plugin this element belongs to. While basic elements are available in both versions, pro elements are only limited to pro version of the plugin.
118
+ * By default, if not overridden, element will be classified as basic.
119
+ *
120
+ * @return string type of element
121
+ */
122
+ public function get_type() {
123
+ return Elements_Manager::BASIC;
124
+ }
125
+
126
+
127
+ /**
128
+ * Get relative of element
129
+ * This function will be used to determine the positioning of elements on drop events
130
+ *
131
+ * @return string position relative
132
+ */
133
+ public function position_relative() {
134
+ return Elements_Manager::ELEMENT_RELATIVE;
135
+ }
136
+ }
inc/admin/element-classes/element-scripts/button-element.js CHANGED
@@ -1,77 +1,88 @@
1
- let a = element.querySelector( 'a' );
2
- let target = a.querySelector( 'div' );
3
- a.onclick = function( e ) {
4
- e.preventDefault();
5
  };
6
- if( target ) {
7
- let tinyMceInitStart = function() {
8
- tinyMCE.init({
9
- target: target,
10
- inline: true,
11
- plugins: "link",
12
- dialog_type: "modal",
13
- theme: 'modern',
14
- menubar: false,
15
- fixed_toolbar_container: '#wpcd_fixed_toolbar',
16
- toolbar: 'bold italic strikethrough',
17
- setup : function(ed) {
18
- ed.on( 'keydown', function(e) {
19
- if (e.keyCode == 13) {
20
- e.preventDefault();
21
- }
22
-
23
- let p = e.target.querySelector( 'p' );
24
- let pText = p.innerHTML.replace( /\s+/g, ' ' ).trim();
25
- pText = pText.replace( /&nbsp;/g, '').trim();
26
-
27
- if( ! window.buttonElemPTextKeyDown ) {
28
- window.buttonElemPTextKeyDown = pText;
29
- }
30
- });
31
-
32
- ed.on( 'keyup', function(e) {
33
- let p = e.target.querySelector( 'p' );
34
- let pText = p.innerHTML.replace( /\s+/g, ' ' ).trim();
35
- pText = pText.replace( /&nbsp;/g, '').trim();
36
- if( pText !== window.buttonElemPTextKeyDown ) {
37
- e.target.onblur = function() {
38
- let wptbTableStateSaveManager = new WPTB_TableStateSaveManager();
39
- wptbTableStateSaveManager.tableStateSet();
40
-
41
- window.buttonElemPTextKeyDown = '';
42
- e.target.onblur = '';
43
- }
44
- } else {
45
- e.target.onblur = '';
46
- }
47
- });
48
- },
49
- init_instance_callback: function (editor) {
50
- window.currentEditor = editor;
51
- editor.on( 'focus', function (e) {
52
- var totalWidth = document.getElementsByClassName('wptb-builder-panel')[0].offsetWidth;
53
- if (window.currentEditor &&
54
- document.getElementById('wptb_builder').scrollTop >= 55 &&
55
- window.currentEditor.bodyElement.style.display != 'none') {
56
- document.getElementById('wpcd_fixed_toolbar').style.position = 'fixed';
57
- document.getElementById('wpcd_fixed_toolbar').style.right = (totalWidth / 2 - document.getElementById('wpcd_fixed_toolbar').offsetWidth / 2) + 'px';
58
- document.getElementById('wpcd_fixed_toolbar').style.top = '100px';
59
- } else {
60
- document.getElementById('wpcd_fixed_toolbar').style.position = 'static';
61
- delete document.getElementById('wpcd_fixed_toolbar').style.right;
62
- delete document.getElementById('wpcd_fixed_toolbar').style.top;
63
- }
64
- });
65
- }
66
- });
67
-
68
- element.removeEventListener( 'mouseover', tinyMceInitStart, false );
69
- }
70
-
71
- element.addEventListener( 'mouseover', tinyMceInitStart, false );
 
 
 
 
 
 
 
 
 
 
 
72
  }
73
 
74
- //function textControlsChange( inputs, element ) {
75
  // if( inputs && typeof inputs === 'object' ) {
76
  // if( inputs.hasOwnProperty( 'button-id' ) ) {
77
  // let buttonIdValue = inputs['button-id'];
@@ -81,21 +92,87 @@ if( target ) {
81
  // a.setAttribute( 'id', buttonIdValue );
82
  // }
83
  // }
84
- // }
85
- //}
86
  //
87
- //WPTB_Helper.controlsInclude( element, textControlsChange );
88
 
89
  // for old elements which were before the change of structure of the plugin
90
- let infArr = element.className.match( /wptb-size-([A-Z]+)/i );
91
- if( infArr && Array.isArray( infArr ) ) {
92
- let wptbSize = infArr[0],
93
- wptbSizeNew = wptbSize.toLowerCase();
94
-
95
- element.classList.remove( wptbSize );
96
-
97
- let wptbButtonWrapper = element.querySelector( '.wptb-button-wrapper' );
98
- if( wptbButtonWrapper ) {
99
- wptbButtonWrapper.classList.add( wptbSizeNew );
100
- }
101
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ const a = element.querySelector('a');
2
+ const target = a.querySelector('div');
3
+ a.onclick = function (e) {
4
+ e.preventDefault();
5
  };
6
+ if (target) {
7
+ const tinyMceInitStart = function () {
8
+ // users tent to use native button implementation of plugin in their custom html elements, using this check to not invalidate any custom html code with tinyMCE
9
+ if (element.parentNode.classList.contains('wptb-custom-html-wrapper')) {
10
+ console.warn('element is part of custom html, aborting tinyMCE init for button.');
11
+ return;
12
+ }
13
+ tinyMCE.init({
14
+ target,
15
+ inline: true,
16
+ plugins: 'link',
17
+ dialog_type: 'modal',
18
+ theme: 'modern',
19
+ menubar: false,
20
+ fixed_toolbar_container: '#wpcd_fixed_toolbar',
21
+ toolbar: 'bold italic strikethrough',
22
+ extended_valid_elements: 'svg[*]',
23
+ verify_html: false,
24
+ setup(ed) {
25
+ ed.on('keydown', function (e) {
26
+ if (e.keyCode == 13) {
27
+ e.preventDefault();
28
+ }
29
+
30
+ const p = e.target.querySelector('p');
31
+ let pText = p.innerHTML.replace(/\s+/g, ' ').trim();
32
+ pText = pText.replace(/&nbsp;/g, '').trim();
33
+
34
+ if (!window.buttonElemPTextKeyDown) {
35
+ window.buttonElemPTextKeyDown = pText;
36
+ }
37
+ });
38
+
39
+ ed.on('keyup', function (e) {
40
+ const p = e.target.querySelector('p');
41
+ let pText = p.innerHTML.replace(/\s+/g, ' ').trim();
42
+ pText = pText.replace(/&nbsp;/g, '').trim();
43
+ if (pText !== window.buttonElemPTextKeyDown) {
44
+ e.target.onblur = function () {
45
+ const wptbTableStateSaveManager = new WPTB_TableStateSaveManager();
46
+ wptbTableStateSaveManager.tableStateSet();
47
+
48
+ window.buttonElemPTextKeyDown = '';
49
+ e.target.onblur = '';
50
+ };
51
+ } else {
52
+ e.target.onblur = '';
53
+ }
54
+ });
55
+ },
56
+ init_instance_callback(editor) {
57
+ window.currentEditor = editor;
58
+ editor.on('focus', function (e) {
59
+ const totalWidth = document.getElementsByClassName('wptb-builder-panel')[0].offsetWidth;
60
+ if (
61
+ window.currentEditor &&
62
+ document.getElementById('wptb_builder').scrollTop >= 55 &&
63
+ window.currentEditor.bodyElement.style.display != 'none'
64
+ ) {
65
+ document.getElementById('wpcd_fixed_toolbar').style.position = 'fixed';
66
+ document.getElementById('wpcd_fixed_toolbar').style.right = `${
67
+ totalWidth / 2 - document.getElementById('wpcd_fixed_toolbar').offsetWidth / 2
68
+ }px`;
69
+ document.getElementById('wpcd_fixed_toolbar').style.top = '100px';
70
+ } else {
71
+ document.getElementById('wpcd_fixed_toolbar').style.position = 'static';
72
+ delete document.getElementById('wpcd_fixed_toolbar').style.right;
73
+ delete document.getElementById('wpcd_fixed_toolbar').style.top;
74
+ }
75
+ });
76
+ },
77
+ });
78
+
79
+ element.removeEventListener('mouseover', tinyMceInitStart, false);
80
+ };
81
+
82
+ element.addEventListener('mouseover', tinyMceInitStart, false);
83
  }
84
 
85
+ // function textControlsChange( inputs, element ) {
86
  // if( inputs && typeof inputs === 'object' ) {
87
  // if( inputs.hasOwnProperty( 'button-id' ) ) {
88
  // let buttonIdValue = inputs['button-id'];
92
  // a.setAttribute( 'id', buttonIdValue );
93
  // }
94
  // }
95
+ // }
96
+ // }
97
  //
98
+ // WPTB_Helper.controlsInclude( element, textControlsChange );
99
 
100
  // for old elements which were before the change of structure of the plugin
101
+ const infArr = element.className.match(/wptb-size-([A-Z]+)/i);
102
+ if (infArr && Array.isArray(infArr)) {
103
+ const wptbSize = infArr[0];
104
+ const wptbSizeNew = wptbSize.toLowerCase();
105
+
106
+ element.classList.remove(wptbSize);
107
+
108
+ const wptbButtonWrapper = element.querySelector('.wptb-button-wrapper');
109
+ if (wptbButtonWrapper) {
110
+ wptbButtonWrapper.classList.add(wptbSizeNew);
111
+ }
112
+ }
113
+
114
+ /**
115
+ * Adds hover color change support for supported button elements.
116
+ */
117
+ function addHoverSupport() {
118
+ const buttons = Array.from(element.querySelectorAll('.wptb-button'));
119
+
120
+ buttons.map((b) => {
121
+ if (!b.dataset.wptbElementBgColor) {
122
+ b.dataset.wptbElementBgColor = getComputedStyle(b).backgroundColor;
123
+ }
124
+ if (!b.dataset.wptbElementColor) {
125
+ b.dataset.wptbElementColor = getComputedStyle(b).color;
126
+ }
127
+
128
+ b.addEventListener('mouseenter', () => {
129
+ // hover background-color
130
+ if (b.dataset.wptbElementHoverBgColor) {
131
+ b.style.backgroundColor = b.dataset.wptbElementHoverBgColor;
132
+ }
133
+ // hover color
134
+ if (b.dataset.wptbElementHoverTextColor) {
135
+ b.style.color = b.dataset.wptbElementHoverTextColor;
136
+ }
137
+ // hover scale
138
+ if (b.dataset.wptbElementHoverScale) {
139
+ b.style.transform = `scale(${b.dataset.wptbElementHoverScale})`;
140
+ }
141
+ });
142
+
143
+ b.addEventListener('mouseleave', () => {
144
+ // reset all supported hover properties to their default value
145
+ if (b.dataset.wptbElementHoverBgColor) {
146
+ b.style.backgroundColor = b.dataset.wptbElementBgColor;
147
+ }
148
+ if (b.dataset.wptbElementHoverTextColor) {
149
+ b.style.color = b.dataset.wptbElementColor;
150
+ }
151
+ if (b.dataset.wptbElementHoverScale) {
152
+ b.style.transform = 'scale(1)';
153
+ }
154
+ });
155
+ });
156
+ }
157
+
158
+ /**
159
+ * Add icon support for button elements
160
+ */
161
+ function addIconSupport() {
162
+ const buttonElements = Array.from(element.querySelectorAll('.wptb-button'));
163
+
164
+ buttonElements.map((b) => {
165
+ if (!b.querySelector('.wptb-button-icon')) {
166
+ const range = document.createRange();
167
+ range.setStart(b, 0);
168
+
169
+ const iconElementString = '<div class="wptb-button-icon" data-wptb-button-icon-src=""></div>';
170
+ const iconElement = range.createContextualFragment(iconElementString);
171
+
172
+ b.appendChild(iconElement);
173
+ }
174
+ });
175
+ }
176
+
177
+ addHoverSupport();
178
+ addIconSupport();
inc/admin/element-classes/element-scripts/custom-html-element.js CHANGED
@@ -1,80 +1,106 @@
1
- let infArr = element.className.match( /wptb-element-((.+-)\d+)/i );
2
- let controlKey = 'textarea';
3
- let elementControlTargetUnicClass = 'wptb-el-' + infArr[1] + '-' + controlKey;
4
 
5
- let tinyMceInitStart = function() {
6
- tinyMCE.init({
7
- target: element.childNodes[0],
8
- inline: true,
9
- plugins: "code",
10
- //dialog_type: "modal",
11
- //theme: 'modern',
12
- menubar: false,
13
- force_br_newlines: false,
14
- force_p_newlines: false,
15
- forced_root_block: '',
16
- paste_as_text: false,
17
- toolbar: false,
18
- extended_valid_elements: "svg[*],defs[*],pattern[*],desc[*],metadata[*],g[*],\n\
19
- mask[*],path[*],line[*],marker[*],rect[*],circle[*],\n\
20
- ellipse[*],polygon[*],polyline[*],linearGradient[*],\n\
21
- radialGradient[*],stop[*],image[*],view[*],text[*],\n\
22
- textPath[*],title[*],tspan[*],glyph[*],symbol[*],switch[*],use[*]",
23
- setup: function (ed) {
24
 
25
- ed.on('input', function (e) {
26
- let elementControlTextarea = document.getElementsByClassName(elementControlTargetUnicClass);
27
- if (elementControlTextarea.length > 0) {
28
- elementControlTextarea = elementControlTextarea[0];
29
- elementControlTextarea.value = ed.targetElm.textContent;
30
- }
31
- });
32
 
33
- ed.on('focus', function () {
34
- ed.targetElm.innerText = ed.targetElm.innerHTML;
 
 
 
35
 
36
- WPTB_Helper.wptbDocumentEventGenerate('click', ed.targetElm);
37
- WPTB_Helper.wptbDocumentEventGenerate('input', ed.targetElm);
38
- });
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
39
 
40
- ed.on('blur', function () {
41
- ed.targetElm.innerHTML = ed.targetElm.innerText;
42
- });
43
 
44
- ed.on('click', function () {
45
- WPTB_Helper.wptbDocumentEventGenerate('input', ed.targetElm);
46
- });
47
 
48
- ed.on('keydown', function (e) {
49
- let div = e.target;
50
- let divText = div.innerHTML.replace(/\s+/g, ' ').trim();
51
- divText = divText.replace(/&nbsp;/g, '').trim();
52
 
53
- if (!window.htmlElemKeyDown) {
54
- window.htmlElemKeyDown = divText;
55
- }
56
- });
57
 
58
- ed.on('keyup', function (e) {
59
- let div = e.target;
60
- let divText = div.innerHTML.replace(/\s+/g, ' ').trim();
61
- divText = divText.replace(/&nbsp;/g, '').trim();
62
- if (divText !== window.htmlElemKeyDown) {
63
- e.target.onblur = function () {
64
- let wptbTableStateSaveManager = new WPTB_TableStateSaveManager();
65
- wptbTableStateSaveManager.tableStateSet();
66
 
67
- window.htmlElemKeyDown = '';
68
- e.target.onblur = '';
69
- }
70
- } else {
71
- e.target.onblur = '';
72
- }
73
- });
74
- }
75
- });
76
 
77
- element.removeEventListener( 'mouseover', tinyMceInitStart, false );
78
- }
 
 
 
 
 
 
79
 
80
- element.addEventListener( 'mouseover', tinyMceInitStart, false );
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ const infArr = element.className.match(/wptb-element-((.+-)\d+)/i);
2
+ const controlKey = 'textarea';
3
+ const elementControlTargetUnicClass = `wptb-el-${infArr[1]}-${controlKey}`;
4
 
5
+ const allowedChildrenTags = [
6
+ 'div',
7
+ 'a',
8
+ 'p',
9
+ 'ul',
10
+ 'li',
11
+ 'ol',
12
+ 'span',
13
+ 'h1',
14
+ 'h2',
15
+ 'h3',
16
+ 'h4',
17
+ 'h5',
18
+ 'center',
19
+ 'iframe',
20
+ 'img',
21
+ ];
 
 
22
 
23
+ const innerChildTextArray = Array.from(allowedChildrenTags);
24
+ innerChildTextArray.push('#text');
25
+ const innerChildText = innerChildTextArray.join('|');
 
 
 
 
26
 
27
+ const greatTextWallOfValidChildren = allowedChildrenTags.reduce((p, c) => {
28
+ const formedValidChildren = `${c}[${innerChildText}]`;
29
+ p.push(formedValidChildren);
30
+ return p;
31
+ }, []);
32
 
33
+ const tinyMceInitStart = function () {
34
+ tinyMCE.init({
35
+ target: element.childNodes[0],
36
+ inline: true,
37
+ plugins: 'code',
38
+ // dialog_type: "modal",
39
+ // theme: 'modern',
40
+ menubar: false,
41
+ force_br_newlines: false,
42
+ force_p_newlines: false,
43
+ forced_root_block: '',
44
+ paste_as_text: false,
45
+ toolbar: false,
46
+ valid_elements: '*[*]',
47
+ valid_children: greatTextWallOfValidChildren.join(','),
48
+ allow_script_urls: true,
49
+ verify_html: false,
50
+ setup(ed) {
51
+ ed.on('input', function (e) {
52
+ let elementControlTextarea = document.getElementsByClassName(elementControlTargetUnicClass);
53
+ if (elementControlTextarea.length > 0) {
54
+ elementControlTextarea = elementControlTextarea[0];
55
+ elementControlTextarea.value = ed.targetElm.textContent;
56
+ }
57
+ });
58
 
59
+ ed.on('focus', function () {
60
+ ed.targetElm.innerText = ed.targetElm.innerHTML;
 
61
 
62
+ WPTB_Helper.wptbDocumentEventGenerate('click', ed.targetElm);
63
+ WPTB_Helper.wptbDocumentEventGenerate('input', ed.targetElm);
64
+ });
65
 
66
+ ed.on('blur', function () {
67
+ ed.targetElm.innerHTML = ed.targetElm.innerText;
68
+ });
 
69
 
70
+ ed.on('click', function () {
71
+ WPTB_Helper.wptbDocumentEventGenerate('input', ed.targetElm);
72
+ });
 
73
 
74
+ ed.on('keydown', function (e) {
75
+ const div = e.target;
76
+ let divText = div.innerHTML.replace(/\s+/g, ' ').trim();
77
+ divText = divText.replace(/&nbsp;/g, '').trim();
 
 
 
 
78
 
79
+ if (!window.htmlElemKeyDown) {
80
+ window.htmlElemKeyDown = divText;
81
+ }
82
+ });
 
 
 
 
 
83
 
84
+ ed.on('keyup', function (e) {
85
+ const div = e.target;
86
+ let divText = div.innerHTML.replace(/\s+/g, ' ').trim();
87
+ divText = divText.replace(/&nbsp;/g, '').trim();
88
+ if (divText !== window.htmlElemKeyDown) {
89
+ e.target.onblur = function () {
90
+ const wptbTableStateSaveManager = new WPTB_TableStateSaveManager();
91
+ wptbTableStateSaveManager.tableStateSet();
92
 
93
+ window.htmlElemKeyDown = '';
94
+ e.target.onblur = '';
95
+ };
96
+ } else {
97
+ e.target.onblur = '';
98
+ }
99
+ });
100
+ },
101
+ });
102
+
103
+ element.removeEventListener('mouseover', tinyMceInitStart, false);
104
+ };
105
+
106
+ element.addEventListener('mouseover', tinyMceInitStart, false);
inc/admin/element-classes/element-scripts/list-element.js CHANGED
@@ -58,7 +58,7 @@ function listItemsTinyMceInit( listItem ) {
58
  }
59
 
60
  applyGenericItemSettings( duplicate );
61
- e.target.querySelector( 'p' ).innerText = 'New List Item';
62
  article.parentNode.insertBefore( elementCopy, article );
63
  elementCopy.classList.remove( 'wptb-directlyhovered' );
64
  article.classList.remove( 'wptb-directlyhovered' );
58
  }
59
 
60
  applyGenericItemSettings( duplicate );
61
+ e.target.querySelector( 'p' ).innerHTML = 'New List Item';
62
  article.parentNode.insertBefore( elementCopy, article );
63
  elementCopy.classList.remove( 'wptb-directlyhovered' );
64
  article.classList.remove( 'wptb-directlyhovered' );
inc/admin/element-classes/element-scripts/text-element.js CHANGED
@@ -12,6 +12,11 @@ let tinyMceInitStart = function() {
12
  fixed_toolbar_container: '#wpcd_fixed_toolbar',
13
  paste_as_text: true,
14
  toolbar: 'bold italic strikethrough link unlink | alignleft aligncenter alignright alignjustify',
 
 
 
 
 
15
  setup : function( ed ) {
16
  ed.on( 'change', function(e) {
17
  let row = WPTB_Helper.findAncestor( element, 'wptb-row' );
12
  fixed_toolbar_container: '#wpcd_fixed_toolbar',
13
  paste_as_text: true,
14
  toolbar: 'bold italic strikethrough link unlink | alignleft aligncenter alignright alignjustify',
15
+ rel_list: [
16
+ {title: 'None', value: ''},
17
+ {title: 'nofollow', value: 'nofollow'}
18
+ ],
19
+ convert_urls: false,
20
  setup : function( ed ) {
21
  ed.on( 'change', function(e) {
22
  let row = WPTB_Helper.findAncestor( element, 'wptb-row' );
inc/admin/element-classes/elements/button-element.php CHANGED
@@ -1,26 +1,29 @@
1
  <?php
 
2
  namespace WP_Table_Builder\Inc\Admin\Element_Classes\Elements;
3
 
4
- use WP_Table_Builder\Inc\Admin\Element_Classes\Base\Element_Base_Object as Element_Base_Object;
 
5
  use WP_Table_Builder\Inc\Admin\Managers\Controls_Manager as Controls_Manager;
6
  use WP_Table_Builder as NS;
 
7
 
8
  // If this file is called directly, abort.
9
  if ( ! defined( 'WPINC' ) ) {
10
  die;
11
  }
12
 
13
- class Button_Element extends Element_Base_Object {
14
-
15
- /**
16
  * Get element name.
17
  *
18
  * Retrieve button editor element name.
19
  *
 
20
  * @since 1.1.2
21
  * @access public
22
  *
23
- * @return string element name.
24
  */
25
  public function get_name() {
26
  return 'button';
@@ -31,10 +34,10 @@ class Button_Element extends Element_Base_Object {
31
  *
32
  * Retrieve button editor element.
33
  *
 
34
  * @since 1.1.2
35
  * @access public
36
  *
37
- * @return string Element title.
38
  */
39
  public function get_title() {
40
  return esc_html_e( 'Button', 'wp-table-builder' );
@@ -45,40 +48,40 @@ class Button_Element extends Element_Base_Object {
45
  *
46
  * Return directory button editor icon
47
  *
 
48
  * @since 1.1.2
49
  * @access public
50
  *
51
- * @return string Directory Element icon.
52
  */
53
  public function get_directory_icon() {
54
- return wp_normalize_path ( NS\WP_TABLE_BUILDER_DIR . 'inc/admin/views/builder/icons/button.svg' );
55
  }
56
-
57
- /**
58
  * Get url icon.
59
  *
60
  * Return url button icon
61
  *
 
62
  * @since 1.1.2
63
  * @access public
64
  *
65
- * @return string Url Element icon.
66
  */
67
  public function get_url_icon() {
68
- return wp_normalize_path ( NS\WP_TABLE_BUILDER_URL . 'inc/admin/views/builder/icons/button.svg' );
69
  }
70
-
71
- /**
72
  * Include file with js script for element button
73
  *
74
  * @since 1.1.2
75
  * @access protected
76
  */
77
- public function element_script() {
78
- return wp_normalize_path ( NS\WP_TABLE_BUILDER_DIR . 'inc/admin/element-classes/element-scripts/button-element.js' );
79
- }
80
-
81
- /**
82
  * Register the element controls.
83
  *
84
  * Adds different fields to allow the user to change and customize the element settings.
@@ -88,101 +91,195 @@ class Button_Element extends Element_Base_Object {
88
  * @access protected
89
  */
90
  protected function _register_controls() {
91
- $this->add_control(
92
- 'section_header',
93
- [
94
- 'label' => __( 'Button Options', 'wp_table_builder' ),
95
- 'type' => Controls_Manager::SECTION_HEADER,
96
- 'buttonBack' => true
97
- ]
98
- );
99
-
100
- $this->add_control(
101
- 'buttonSizeCheckbox',
102
- [
103
- 'label' => __( 'Button Size', 'wp_table_builder' ),
104
- 'type' => Controls_Manager::CHANGE_ATTRIBUTE,
105
- 'selectors' => [
106
- '{{{data.container}}} .wptb-button-wrapper' => 'class: size',
107
- ],
108
- 'numberSelectedButtonDefault' => '1',
109
- 'buttonDataNames' => ['s', 'm', 'l', 'xl'],
110
- 'buttonViews' => ['S', 'M', 'L', 'XL']
111
- ]
112
- );
113
-
114
- $this->add_control(
115
- 'buttonColor',
116
- [
117
- 'label' => __( 'Button Color', 'wp_table_builder' ),
118
- 'type' => Controls_Manager::COLOR,
119
- 'selectors' => [
120
- '{{{data.container}}} .wptb-button-wrapper a div' => 'background-color',
121
- ]
122
- ]
123
- );
124
-
125
- $this->add_control(
126
- 'buttonTextSize',
127
- [
128
- 'label' => __( 'Button Text Size', 'wp_table_builder' ),
129
- 'type' => Controls_Manager::SIZE,
130
- 'selectors' => [
131
- '{{{data.container}}} .wptb-button-wrapper p' => 'fontSize',
132
- ],
133
- 'min' => 10,
134
- 'max' => 50,
135
- 'defaultValue' => 15,
136
- 'dimension' => 'px'
137
- ]
138
- );
139
-
140
- $this->add_control(
141
- 'textColor',
142
- [
143
- 'label' => __( 'Button Text Color', 'wp_table_builder' ),
144
- 'type' => Controls_Manager::COLOR,
145
- 'selectors' => [
146
- '{{{data.container}}} .wptb-button-wrapper a div' => 'color',
147
- ]
148
- ]
149
- );
150
-
151
- $this->add_control(
152
- 'buttonLink',
153
- [
154
- 'label' => __( 'Button Link', 'wp_table_builder' ),
155
- 'type' => Controls_Manager::URL,
156
- 'selector' => '{{{data.container}}} .wptb-button-wrapper a'
157
- ]
158
- );
159
-
160
- $this->add_control(
161
- 'buttonAlignmentCheckbox',
162
- [
163
- 'label' => __( 'Button Alignment', 'wp_table_builder' ),
164
- 'type' => Controls_Manager::ALIGNMENT,
165
- 'selected' => 1,
166
- 'selectors' => [
167
- '{{{data.container}}} .wptb-button-wrapper' => 'justify-content',
168
- ]
169
- ]
170
- );
171
-
172
- $this->add_control(
173
- 'button-id',
174
- [
175
- 'label' => __( 'Button Id', 'wp_table_builder' ),
176
- 'type' => Controls_Manager::TEXT,
177
- 'placeholder' => __( 'Insert Button ID Here', 'wp_table_builder' ),
178
- 'selectors' => [
179
- '{{{data.container}}} .wptb-button-wrapper a' => 'id',
180
- ]
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
181
  ]
182
- );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
183
  }
184
-
185
- /**
186
  * Render text editor element output in the editor.
187
  *
188
  * Written as a wp js template and used to generate the live preview.
@@ -192,14 +289,16 @@ class Button_Element extends Element_Base_Object {
192
  */
193
  protected function _content_template() {
194
  ?>
195
- <div class="wptb-button-wrapper wptb-size-m">
196
- <a>
197
- <div class="wptb-button"
198
- style="position: relative;">
199
- <p>Button Text</p>
200
- </div>
201
- </a>
202
- </div>
 
 
203
  <?php
204
  }
205
  }
1
  <?php
2
+
3
  namespace WP_Table_Builder\Inc\Admin\Element_Classes\Elements;
4
 
5
+ use WP_Table_Builder\Inc\Admin\Controls\Control_Section_Group_Tabbed;
6
+ use WP_Table_Builder\Inc\Admin\Element_Classes\Base\Element_Base as Element_Base;
7
  use WP_Table_Builder\Inc\Admin\Managers\Controls_Manager as Controls_Manager;
8
  use WP_Table_Builder as NS;
9
+ use function trailingslashit;
10
 
11
  // If this file is called directly, abort.
12
  if ( ! defined( 'WPINC' ) ) {
13
  die;
14
  }
15
 
16
+ class Button_Element extends Element_Base {
17
+
18
+ /**
19
  * Get element name.
20
  *
21
  * Retrieve button editor element name.
22
  *
23
+ * @return string element name.
24
  * @since 1.1.2
25
  * @access public
26
  *
 
27
  */
28
  public function get_name() {
29
  return 'button';
34
  *
35
  * Retrieve button editor element.
36
  *
37
+ * @return string Element title.
38
  * @since 1.1.2
39
  * @access public
40
  *
 
41
  */
42
  public function get_title() {
43
  return esc_html_e( 'Button', 'wp-table-builder' );
48
  *
49
  * Return directory button editor icon
50
  *
51
+ * @return string Directory Element icon.
52
  * @since 1.1.2
53
  * @access public
54
  *
 
55
  */
56
  public function get_directory_icon() {
57
+ return wp_normalize_path( NS\WP_TABLE_BUILDER_DIR . 'inc/admin/views/builder/icons/button.svg' );
58
  }
59
+
60
+ /**
61
  * Get url icon.
62
  *
63
  * Return url button icon
64
  *
65
+ * @return string Url Element icon.
66
  * @since 1.1.2
67
  * @access public
68
  *
 
69
  */
70
  public function get_url_icon() {
71
+ return wp_normalize_path( NS\WP_TABLE_BUILDER_URL . 'inc/admin/views/builder/icons/button.svg' );
72
  }
73
+
74
+ /**
75
  * Include file with js script for element button
76
  *
77
  * @since 1.1.2
78
  * @access protected
79
  */
80
+ public function element_script() {
81
+ return wp_normalize_path( NS\WP_TABLE_BUILDER_DIR . 'inc/admin/element-classes/element-scripts/button-element.js' );
82
+ }
83
+
84
+ /**
85
  * Register the element controls.
86
  *
87
  * Adds different fields to allow the user to change and customize the element settings.
91
  * @access protected
92
  */
93
  protected function _register_controls() {
94
+ $text_domain = NS\PLUGIN_TEXT_DOMAIN;
95
+
96
+ $general_controls = [
97
+ 'buttonSizeCheckbox' =>
98
+ [
99
+ 'label' => __( 'Button Size', 'wp_table_builder' ),
100
+ 'type' => Controls_Manager::CHANGE_ATTRIBUTE,
101
+ 'selectors' => [
102
+ '{{{data.container}}} .wptb-button-wrapper' => 'class: size',
103
+ ],
104
+ 'numberSelectedButtonDefault' => '1',
105
+ 'buttonDataNames' => [ 's', 'm', 'l', 'xl' ],
106
+ 'buttonViews' => [ 'S', 'M', 'L', 'XL' ]
107
+ ],
108
+ 'buttonColor' =>
109
+ [
110
+ 'label' => __( 'Button Color', 'wp_table_builder' ),
111
+ 'type' => Controls_Manager::COLOR,
112
+ 'startupValueSelector' => [
113
+ '{{{data.container}}} .wptb-button-wrapper a > div' => 'wptbElementBgColor',
114
+ ],
115
+ 'selectors' => [
116
+ '{{{data.container}}} .wptb-button-wrapper a > div' => 'background-color',
117
+ ],
118
+ 'dataSets' => [
119
+ '{{{data.container}}} .wptb-button-wrapper a > div' => 'wptbElementBgColor',
120
+ ]
121
+ ],
122
+ 'buttonTextSize' =>
123
+ [
124
+ 'label' => __( 'Button Text Size', 'wp_table_builder' ),
125
+ 'type' => Controls_Manager::SIZE,
126
+ 'selectors' => [
127
+ '{{{data.container}}} .wptb-button-wrapper p' => 'fontSize',
128
+ ],
129
+ 'min' => 10,
130
+ 'max' => 50,
131
+ 'defaultValue' => 15,
132
+ 'dimension' => 'px'
133
+ ],
134
+ 'textColor' =>
135
+ [
136
+ 'label' => __( 'Button Text Color', 'wp_table_builder' ),
137
+ 'type' => Controls_Manager::COLOR,
138
+ 'startupValueSelector' => [
139
+ '{{{data.container}}} .wptb-button-wrapper a > div' => 'wptbElementColor',
140
+ ],
141
+ 'dataSets' => [
142
+ '{{{data.container}}} .wptb-button-wrapper a > div' => 'wptbElementColor',
143
+ ],
144
+ 'selectors' => [
145
+ '{{{data.container}}} .wptb-button-wrapper a > div' => 'color',
146
+ ]
147
+ ],
148
+ 'buttonLink' =>
149
+ [
150
+ 'label' => __( 'Button Link', 'wp_table_builder' ),
151
+ 'type' => Controls_Manager::URL,
152
+ 'selector' => '{{{data.container}}} .wptb-button-wrapper a'
153
+ ],
154
+ 'buttonAlignmentCheckbox' =>
155
+ [
156
+ 'label' => __( 'Button Alignment', 'wp_table_builder' ),
157
+ 'type' => Controls_Manager::ALIGNMENT,
158
+ 'selected' => 1,
159
+ 'selectors' => [
160
+ '{{{data.container}}} .wptb-button-wrapper' => 'justify-content',
161
+ ]
162
+ ],
163
+ 'button-id' =>
164
+ [
165
+ 'label' => __( 'Button Id', 'wp_table_builder' ),
166
+ 'type' => Controls_Manager::TEXT,
167
+ 'placeholder' => __( 'Insert Button ID Here', 'wp_table_builder' ),
168
+ 'selectors' => [
169
+ '{{{data.container}}} .wptb-button-wrapper a' => 'id',
170
+ ]
171
+ ],
172
+ ];
173
+
174
+ $hover_controls = [
175
+ 'hoverBgColor' =>
176
+ [
177
+ 'label' => __( 'Color', $text_domain ),
178
+ 'type' => Controls_Manager::COLOR,
179
+ 'useDataset' => true,
180
+ 'selectors' => [
181
+ '{{{data.container}}} .wptb-button-wrapper a div' => 'wptbElementHoverBgColor',
182
+ ]
183
+ ],
184
+ 'hoverTextColor' =>
185
+ [
186
+ 'label' => __( 'Text Color', $text_domain ),
187
+ 'type' => Controls_Manager::COLOR,
188
+ 'useDataset' => true,
189
+ 'selectors' => [
190
+ '{{{data.container}}} .wptb-button-wrapper a div' => 'wptbElementHoverTextColor',
191
+ ]
192
+ ],
193
+ 'hoverButtonScale' => [
194
+ 'label' => __( 'Scale', $text_domain ),
195
+ 'type' => Controls_Manager::RANGE,
196
+ 'selectors' => [
197
+ [
198
+ 'query' => '{{{data.container}}} .wptb-button-wrapper a div',
199
+ 'type' => Controls_Manager::DATASET,
200
+ 'key' => 'wptbElementHoverScale'
201
+ ]
202
+ ],
203
+ 'min' => 1,
204
+ 'max' => 3,
205
+ 'step' => 0.1,
206
+ 'defaultValue' => 1,
207
+ 'postFix' => esc_html__( ' times', 'wp-table-builder' )
208
  ]
209
+ ];
210
+
211
+ $icon_controls = [
212
+ 'buttonIcon' => [
213
+ 'label' => __( 'Button Icon', $text_domain ),
214
+ 'type' => Controls_Manager::ICON_SELECT,
215
+ 'icons' => $this->read_icons(),
216
+ 'perPage' => 20,
217
+ 'selectors' => [
218
+ [
219
+ 'query' => '{{{data.container}}} .wptb-button-icon',
220
+ 'type' => Controls_Manager::DATASET,
221
+ 'key' => 'wptbButtonIconSrc'
222
+ ]
223
+ ]
224
+ ],
225
+ /**
226
+ * changed with new named toggle
227
+ * @deprecated
228
+ */
229
+ // 'iconPosition' => [
230
+ // 'label' => __( 'Icon Position', $text_domain ),
231
+ // 'type' => Controls_Manager::SELECT,
232
+ // 'options' => [
233
+ // [ esc_html__( 'Left', $text_domain ), 'left', '' ],
234
+ // [ esc_html__( 'Right', $text_domain ), 'right', 'wptb-plugin-button-order-right' ],
235
+ // ],
236
+ // 'selectors' => [
237
+ // '{{{data.container}}} .wptb-button-wrapper a .wptb-button' => 'class'
238
+ // ]
239
+ // ],
240
+ 'iconPosition' => [
241
+ 'label' => esc_html__( 'Icon Position', 'wp-table-builder' ),
242
+ 'type' => Controls_Manager::NAMED_TOGGLE,
243
+ 'items' => [
244
+ 'left' => esc_html__( 'left', 'wp-table-builder' ),
245
+ 'right' => esc_html__( 'right', 'wp-table-builder' ),
246
+ ],
247
+ 'selectors' => [
248
+ [
249
+ 'query' => '{{{data.container}}} .wptb-button-wrapper a .wptb-button',
250
+ 'type' => Controls_Manager::CLASSTYPE,
251
+ 'format' => 'wptb-plugin-button-order-{$}'
252
+ ]
253
+ ],
254
+ 'defaultValue' => 'left'
255
+ ],
256
+ 'iconSize' =>
257
+ [
258
+ 'label' => __( 'Icon Size', 'wp_table_builder' ),
259
+ 'type' => Controls_Manager::SIZE,
260
+ 'selectors' => [
261
+ '{{{data.container}}} .wptb-button-icon' => [ 'width', 'height' ],
262
+ ],
263
+ 'min' => 15,
264
+ 'max' => 100,
265
+ 'defaultValue' => 25,
266
+ 'dimension' => 'px'
267
+ ],
268
+ ];
269
+
270
+ $button_controls = [
271
+ esc_html__( 'general', $text_domain ) => $general_controls,
272
+ esc_html__( 'hover', $text_domain ) => $hover_controls,
273
+ esc_html__( 'icon', $text_domain ) => $icon_controls,
274
+ ];
275
+
276
+ Control_Section_Group_Tabbed::add_section( 'buttonElementOptions', __( 'button options', 'wp-table-builder' ), $button_controls, [
277
+ $this,
278
+ 'add_control'
279
+ ] );
280
  }
281
+
282
+ /**
283
  * Render text editor element output in the editor.
284
  *
285
  * Written as a wp js template and used to generate the live preview.
289
  */
290
  protected function _content_template() {
291
  ?>
292
+ <div class="wptb-button-wrapper wptb-size-m">
293
+ <a>
294
+ <div class="wptb-button"
295
+ style="position: relative;">
296
+ <p>Button Text</p>
297
+ <div class="wptb-button-icon" data-wptb-button-icon-src="">
298
+ </div>
299
+ </div>
300
+ </a>
301
+ </div>
302
  <?php
303
  }
304
  }
inc/admin/element-classes/elements/custom-html-element.php CHANGED
@@ -1,7 +1,7 @@
1
  <?php
2
  namespace WP_Table_Builder\Inc\Admin\Element_Classes\Elements;
3
 
4
- use WP_Table_Builder\Inc\Admin\Element_Classes\Base\Element_Base_Object as Element_Base_Object;
5
  use WP_Table_Builder\Inc\Admin\Managers\Controls_Manager as Controls_Manager;
6
  use WP_Table_Builder as NS;
7
 
@@ -10,7 +10,7 @@ if ( ! defined( 'WPINC' ) ) {
10
  die;
11
  }
12
 
13
- class Custom_Html_Element extends Element_Base_Object {
14
 
15
  /**
16
  * Get element name.
@@ -51,7 +51,7 @@ class Custom_Html_Element extends Element_Base_Object {
51
  * @return string directory Element icon.
52
  */
53
  public function get_directory_icon() {
54
- return NS\WP_TABLE_BUILDER_DIR . 'inc/admin/views/builder/icons/custom-html.svg'; ;
55
  }
56
 
57
  /**
@@ -65,7 +65,7 @@ class Custom_Html_Element extends Element_Base_Object {
65
  * @return string Url Element icon.
66
  */
67
  public function get_url_icon() {
68
- return wp_normalize_path ( NS\WP_TABLE_BUILDER_URL . 'inc/admin/views/builder/icons/custom-html.svg' );
69
  }
70
 
71
  /**
1
  <?php
2
  namespace WP_Table_Builder\Inc\Admin\Element_Classes\Elements;
3
 
4
+ use WP_Table_Builder\Inc\Admin\Element_Classes\Base\Element_Base as Element_Base;
5
  use WP_Table_Builder\Inc\Admin\Managers\Controls_Manager as Controls_Manager;
6
  use WP_Table_Builder as NS;
7
 
10
  die;
11
  }
12
 
13
+ class Custom_Html_Element extends Element_Base {
14
 
15
  /**
16
  * Get element name.
51
  * @return string directory Element icon.
52
  */
53
  public function get_directory_icon() {
54
+ return NS\WP_TABLE_BUILDER_DIR . 'inc/admin/views/builder/icons/html.svg'; ;
55
  }
56
 
57
  /**
65
  * @return string Url Element icon.
66
  */
67
  public function get_url_icon() {
68
+ return wp_normalize_path ( NS\WP_TABLE_BUILDER_URL . 'inc/admin/views/builder/icons/html.svg' );
69
  }
70
 
71
  /**
inc/admin/element-classes/elements/image-element.php CHANGED
@@ -1,7 +1,7 @@
1
  <?php
2
  namespace WP_Table_Builder\Inc\Admin\Element_Classes\Elements;
3
 
4
- use WP_Table_Builder\Inc\Admin\Element_Classes\Base\Element_Base_Object as Element_Base_Object;
5
  use WP_Table_Builder\Inc\Admin\Managers\Controls_Manager as Controls_Manager;
6
  use WP_Table_Builder as NS;
7
 
@@ -10,7 +10,7 @@ if ( ! defined( 'WPINC' ) ) {
10
  die;
11
  }
12
 
13
- class Image_Element extends Element_Base_Object {
14
 
15
  /**
16
  * Get element name.
1
  <?php
2
  namespace WP_Table_Builder\Inc\Admin\Element_Classes\Elements;
3
 
4
+ use WP_Table_Builder\Inc\Admin\Element_Classes\Base\Element_Base as Element_Base;
5
  use WP_Table_Builder\Inc\Admin\Managers\Controls_Manager as Controls_Manager;
6
  use WP_Table_Builder as NS;
7
 
10
  die;
11
  }
12
 
13
+ class Image_Element extends Element_Base {
14
 
15
  /**
16
  * Get element name.
inc/admin/element-classes/elements/list-element.php CHANGED
@@ -1,7 +1,7 @@
1
  <?php
2
  namespace WP_Table_Builder\Inc\Admin\Element_Classes\Elements;
3
 
4
- use WP_Table_Builder\Inc\Admin\Element_Classes\Base\Element_Base_Object as Element_Base_Object;
5
  use WP_Table_Builder\Inc\Admin\Managers\Controls_Manager as Controls_Manager;
6
  use WP_Table_Builder as NS;
7
 
@@ -10,7 +10,7 @@ if ( ! defined( 'WPINC' ) ) {
10
  die;
11
  }
12
 
13
- class List_Element extends Element_Base_Object {
14
 
15
  /**
16
  * Get element name.
@@ -51,7 +51,7 @@ class List_Element extends Element_Base_Object {
51
  * @return string Directory Element icon.
52
  */
53
  public function get_directory_icon() {
54
- return NS\WP_TABLE_BUILDER_DIR . 'inc/admin/views/builder/icons/list.svg'; ;
55
  }
56
 
57
  /**
@@ -175,6 +175,36 @@ class List_Element extends Element_Base_Object {
175
  ]
176
  ]
177
  );
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
178
 
179
  $this->add_control(
180
  'listAlignment',
1
  <?php
2
  namespace WP_Table_Builder\Inc\Admin\Element_Classes\Elements;
3
 
4
+ use WP_Table_Builder\Inc\Admin\Element_Classes\Base\Element_Base as Element_Base;
5
  use WP_Table_Builder\Inc\Admin\Managers\Controls_Manager as Controls_Manager;
6
  use WP_Table_Builder as NS;
7
 
10
  die;
11
  }
12
 
13
+ class List_Element extends Element_Base {
14
 
15
  /**
16
  * Get element name.
51
  * @return string Directory Element icon.
52
  */
53
  public function get_directory_icon() {
54
+ return NS\WP_TABLE_BUILDER_DIR . 'inc/admin/views/builder/icons/list.svg';
55
  }
56
 
57
  /**
175
  ]
176
  ]
177
  );
178
+
179
+ $this->add_control(
180
+ 'size',
181
+ [
182
+ 'label' => __( 'Font Size', 'wp_table_builder' ),
183
+ 'type' => Controls_Manager::SIZE,
184
+ 'selectors' => [
185
+ '{{{data.container}}} ul li p' => 'fontSize',
186
+ ],
187
+ 'min' => 10,
188
+ 'max' => 50,
189
+ 'defaultValue' => 15,
190
+ 'dimension' => 'px'
191
+ ]
192
+ );
193
+
194
+ $this->add_control(
195
+ 'spacing',
196
+ [
197
+ 'label' => __( 'Item Spacing', 'wp_table_builder' ),
198
+ 'type' => Controls_Manager::SIZE,
199
+ 'selectors' => [
200
+ '{{{data.container}}} ul li' => 'marginBottom',
201
+ ],
202
+ 'min' => 0,
203
+ 'max' => 30,
204
+ 'defaultValue' => 0,
205
+ 'dimension' => 'px'
206
+ ]
207
+ );
208
 
209
  $this->add_control(
210
  'listAlignment',
inc/admin/element-classes/elements/shortcode-element.php CHANGED
@@ -1,7 +1,7 @@
1
  <?php
2
  namespace WP_Table_Builder\Inc\Admin\Element_Classes\Elements;
3
 
4
- use WP_Table_Builder\Inc\Admin\Element_Classes\Base\Element_Base_Object as Element_Base_Object;
5
  use WP_Table_Builder\Inc\Admin\Managers\Controls_Manager as Controls_Manager;
6
  use WP_Table_Builder as NS;
7
 
@@ -10,7 +10,7 @@ if ( ! defined( 'WPINC' ) ) {
10
  die;
11
  }
12
 
13
- class Shortcode_Element extends Element_Base_Object {
14
 
15
  /**
16
  * Get element name.
1
  <?php
2
  namespace WP_Table_Builder\Inc\Admin\Element_Classes\Elements;
3
 
4
+ use WP_Table_Builder\Inc\Admin\Element_Classes\Base\Element_Base as Element_Base;
5
  use WP_Table_Builder\Inc\Admin\Managers\Controls_Manager as Controls_Manager;
6
  use WP_Table_Builder as NS;
7
 
10
  die;
11
  }
12
 
13
+ class Shortcode_Element extends Element_Base {
14
 
15
  /**
16
  * Get element name.
inc/admin/element-classes/elements/star-rating-element.php CHANGED
@@ -1,7 +1,7 @@
1
  <?php
2
  namespace WP_Table_Builder\Inc\Admin\Element_Classes\Elements;
3
 
4
- use WP_Table_Builder\Inc\Admin\Element_Classes\Base\Element_Base_Object as Element_Base_Object;
5
  use WP_Table_Builder\Inc\Admin\Managers\Controls_Manager as Controls_Manager;
6
  use WP_Table_Builder as NS;
7
 
@@ -10,7 +10,7 @@ if ( ! defined( 'WPINC' ) ) {
10
  die;
11
  }
12
 
13
- class Star_Rating_Element extends Element_Base_Object {
14
 
15
  /**
16
  * Get element name.
@@ -51,7 +51,7 @@ class Star_Rating_Element extends Element_Base_Object {
51
  * @return string Directory Element icon.
52
  */
53
  public function get_directory_icon() {
54
- return NS\WP_TABLE_BUILDER_DIR . 'inc/admin/views/builder/icons/half-filled-rating-star.svg'; ;
55
  }
56
 
57
  /**
@@ -65,7 +65,7 @@ class Star_Rating_Element extends Element_Base_Object {
65
  * @return string Url Element icon.
66
  */
67
  public function get_url_icon() {
68
- return wp_normalize_path ( NS\WP_TABLE_BUILDER_URL . 'inc/admin/views/builder/icons/half-filled-rating-star.svg' );
69
  }
70
 
71
  /**
1
  <?php
2
  namespace WP_Table_Builder\Inc\Admin\Element_Classes\Elements;
3
 
4
+ use WP_Table_Builder\Inc\Admin\Element_Classes\Base\Element_Base as Element_Base;
5
  use WP_Table_Builder\Inc\Admin\Managers\Controls_Manager as Controls_Manager;
6
  use WP_Table_Builder as NS;
7
 
10
  die;
11
  }
12
 
13
+ class Star_Rating_Element extends Element_Base {
14
 
15
  /**
16
  * Get element name.
51
  * @return string Directory Element icon.
52
  */
53
  public function get_directory_icon() {
54
+ return NS\WP_TABLE_BUILDER_DIR . 'inc/admin/views/builder/icons/star_rating.svg'; ;
55
  }
56
 
57
  /**
65
  * @return string Url Element icon.
66
  */
67
  public function get_url_icon() {
68
+ return wp_normalize_path ( NS\WP_TABLE_BUILDER_URL . 'inc/admin/views/builder/icons/star_rating.svg' );
69
  }
70
 
71
  /**
inc/admin/element-classes/elements/text-element.php CHANGED
@@ -1,7 +1,7 @@
1
  <?php
2
  namespace WP_Table_Builder\Inc\Admin\Element_Classes\Elements;
3
 
4
- use WP_Table_Builder\Inc\Admin\Element_Classes\Base\Element_Base_Object as Element_Base_Object;
5
  use WP_Table_Builder\Inc\Admin\Managers\Controls_Manager as Controls_Manager;
6
  use WP_Table_Builder as NS;
7
 
@@ -10,7 +10,7 @@ if ( ! defined( 'WPINC' ) ) {
10
  die;
11
  }
12
 
13
- class Text_Element extends Element_Base_Object {
14
 
15
  /**
16
  * Get element name.
@@ -107,6 +107,17 @@ class Text_Element extends Element_Base_Object {
107
  ]
108
  ]
109
  );
 
 
 
 
 
 
 
 
 
 
 
110
 
111
  $this->add_control(
112
  'size',
1
  <?php
2
  namespace WP_Table_Builder\Inc\Admin\Element_Classes\Elements;
3
 
4
+ use WP_Table_Builder\Inc\Admin\Element_Classes\Base\Element_Base as Element_Base;
5
  use WP_Table_Builder\Inc\Admin\Managers\Controls_Manager as Controls_Manager;
6
  use WP_Table_Builder as NS;
7
 
10
  die;
11
  }
12
 
13
+ class Text_Element extends Element_Base {
14
 
15
  /**
16
  * Get element name.
107
  ]
108
  ]
109
  );
110
+
111
+ $this->add_control(
112
+ 'linkColor',
113
+ [
114
+ 'label' => __( 'Link Font Color', 'wp_table_builder' ),
115
+ 'type' => Controls_Manager::COLOR,
116
+ 'selectors' => [
117
+ '{{{data.container}}} a' => 'color',
118
+ ]
119
+ ]
120
+ );
121
 
122
  $this->add_control(
123
  'size',
inc/admin/js/WPTB_Admin_Settings.js CHANGED
@@ -1,45 +1,73 @@
1
  parcelRequire=function(e,r,t,n){var i,o="function"==typeof parcelRequire&&parcelRequire,u="function"==typeof require&&require;function f(t,n){if(!r[t]){if(!e[t]){var i="function"==typeof parcelRequire&&parcelRequire;if(!n&&i)return i(t,!0);if(o)return o(t,!0);if(u&&"string"==typeof t)return u(t);var c=new Error("Cannot find module '"+t+"'");throw c.code="MODULE_NOT_FOUND",c}p.resolve=function(r){return e[t][1][r]||r},p.cache={};var l=r[t]=new f.Module(t);e[t][0].call(l.exports,p,l,l.exports,this)}return r[t].exports;function p(e){return f(p.resolve(e))}}f.isParcelRequire=!0,f.Module=function(e){this.id=e,this.bundle=f,this.exports={}},f.modules=e,f.cache=r,f.parent=o,f.register=function(r,t){e[r]=[function(e,r){r.exports=t},{}]};for(var c=0;c<t.length;c++)try{f(t[c])}catch(e){i||(i=e)}if(t.length){var l=f(t[t.length-1]);"object"==typeof exports&&"undefined"!=typeof module?module.exports=l:"function"==typeof define&&define.amd?define(function(){return l}):n&&(this[n]=l)}if(parcelRequire=f,i)throw i;return f}({"HYXJ":[function(require,module,exports) {
2
  var global = arguments[3];
3
  var e=arguments[3];Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var t=Object.freeze({});function n(e){return null==e}function r(e){return null!=e}function i(e){return!0===e}function o(e){return!1===e}function a(e){return"string"==typeof e||"number"==typeof e||"symbol"==typeof e||"boolean"==typeof e}function s(e){return null!==e&&"object"==typeof e}var c=Object.prototype.toString;function u(e){return c.call(e).slice(8,-1)}function l(e){return"[object Object]"===c.call(e)}function f(e){return"[object RegExp]"===c.call(e)}function p(e){var t=parseFloat(String(e));return t>=0&&Math.floor(t)===t&&isFinite(e)}function d(e){return r(e)&&"function"==typeof e.then&&"function"==typeof e.catch}function v(e){return null==e?"":Array.isArray(e)||l(e)&&e.toString===c?JSON.stringify(e,null,2):String(e)}function h(e){var t=parseFloat(e);return isNaN(t)?e:t}function m(e,t){for(var n=Object.create(null),r=e.split(","),i=0;i<r.length;i++)n[r[i]]=!0;return t?function(e){return n[e.toLowerCase()]}:function(e){return n[e]}}var y=m("slot,component",!0),g=m("key,ref,slot,slot-scope,is");function _(e,t){if(e.length){var n=e.indexOf(t);if(n>-1)return e.splice(n,1)}}var b=Object.prototype.hasOwnProperty;function $(e,t){return b.call(e,t)}function w(e){var t=Object.create(null);return function(n){return t[n]||(t[n]=e(n))}}var x=/-(\w)/g,C=w(function(e){return e.replace(x,function(e,t){return t?t.toUpperCase():""})}),A=w(function(e){return e.charAt(0).toUpperCase()+e.slice(1)}),k=/\B([A-Z])/g,O=w(function(e){return e.replace(k,"-$1").toLowerCase()});function S(e,t){function n(n){var r=arguments.length;return r?r>1?e.apply(t,arguments):e.call(t,n):e.call(t)}return n._length=e.length,n}function T(e,t){return e.bind(t)}var N=Function.prototype.bind?T:S;function j(e,t){t=t||0;for(var n=e.length-t,r=new Array(n);n--;)r[n]=e[n+t];return r}function E(e,t){for(var n in t)e[n]=t[n];return e}function M(e){for(var t={},n=0;n<e.length;n++)e[n]&&E(t,e[n]);return t}function D(e,t,n){}var L=function(e,t,n){return!1},I=function(e){return e};function F(e){return e.reduce(function(e,t){return e.concat(t.staticKeys||[])},[]).join(",")}function P(e,t){if(e===t)return!0;var n=s(e),r=s(t);if(!n||!r)return!n&&!r&&String(e)===String(t);try{var i=Array.isArray(e),o=Array.isArray(t);if(i&&o)return e.length===t.length&&e.every(function(e,n){return P(e,t[n])});if(e instanceof Date&&t instanceof Date)return e.getTime()===t.getTime();if(i||o)return!1;var a=Object.keys(e),c=Object.keys(t);return a.length===c.length&&a.every(function(n){return P(e[n],t[n])})}catch(u){return!1}}function R(e,t){for(var n=0;n<e.length;n++)if(P(e[n],t))return n;return-1}function H(e){var t=!1;return function(){t||(t=!0,e.apply(this,arguments))}}var B="data-server-rendered",U=["component","directive","filter"],z=["beforeCreate","created","beforeMount","mounted","beforeUpdate","updated","beforeDestroy","destroyed","activated","deactivated","errorCaptured","serverPrefetch"],V={optionMergeStrategies:Object.create(null),silent:!1,productionTip:!1,devtools:!1,performance:!1,errorHandler:null,warnHandler:null,ignoredElements:[],keyCodes:Object.create(null),isReservedTag:L,isReservedAttr:L,isUnknownElement:L,getTagNamespace:D,parsePlatformTagName:I,mustUseProp:L,async:!0,_lifecycleHooks:z},J=/a-zA-Z\u00B7\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u037D\u037F-\u1FFF\u200C-\u200D\u203F-\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD/;function K(e){var t=(e+"").charCodeAt(0);return 36===t||95===t}function q(e,t,n,r){Object.defineProperty(e,t,{value:n,enumerable:!!r,writable:!0,configurable:!0})}var W=new RegExp("[^"+J.source+".$_\\d]");function Z(e){if(!W.test(e)){var t=e.split(".");return function(e){for(var n=0;n<t.length;n++){if(!e)return;e=e[t[n]]}return e}}}var G,X="__proto__"in{},Y="undefined"!=typeof window,Q="undefined"!=typeof WXEnvironment&&!!WXEnvironment.platform,ee=Q&&WXEnvironment.platform.toLowerCase(),te=Y&&window.navigator.userAgent.toLowerCase(),ne=te&&/msie|trident/.test(te),re=te&&te.indexOf("msie 9.0")>0,ie=te&&te.indexOf("edge/")>0,oe=te&&te.indexOf("android")>0||"android"===ee,ae=te&&/iphone|ipad|ipod|ios/.test(te)||"ios"===ee,se=te&&/chrome\/\d+/.test(te)&&!ie,ce=te&&/phantomjs/.test(te),ue=te&&te.match(/firefox\/(\d+)/),le={}.watch,fe=!1;if(Y)try{var pe={};Object.defineProperty(pe,"passive",{get:function(){fe=!0}}),window.addEventListener("test-passive",null,pe)}catch(Xl){}var de=function(){return void 0===G&&(G=!Y&&!Q&&void 0!==e&&(e.process&&"server"===e.process.env.VUE_ENV)),G},ve=Y&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__;function he(e){return"function"==typeof e&&/native code/.test(e.toString())}var me,ye="undefined"!=typeof Symbol&&he(Symbol)&&"undefined"!=typeof Reflect&&he(Reflect.ownKeys);me="undefined"!=typeof Set&&he(Set)?Set:function(){function e(){this.set=Object.create(null)}return e.prototype.has=function(e){return!0===this.set[e]},e.prototype.add=function(e){this.set[e]=!0},e.prototype.clear=function(){this.set=Object.create(null)},e}();var ge,_e,be,$e,we=D,xe=D,Ce=D,Ae=D,ke=0,Oe=function(){this.id=ke++,this.subs=[]};Oe.prototype.addSub=function(e){this.subs.push(e)},Oe.prototype.removeSub=function(e){_(this.subs,e)},Oe.prototype.depend=function(){Oe.target&&Oe.target.addDep(this)},Oe.prototype.notify=function(){var e=this.subs.slice();for(var t=0,n=e.length;t<n;t++)e[t].update()},Oe.target=null;var Se=[];function Te(e){Se.push(e),Oe.target=e}function Ne(){Se.pop(),Oe.target=Se[Se.length-1]}var je=function(e,t,n,r,i,o,a,s){this.tag=e,this.data=t,this.children=n,this.text=r,this.elm=i,this.ns=void 0,this.context=o,this.fnContext=void 0,this.fnOptions=void 0,this.fnScopeId=void 0,this.key=t&&t.key,this.componentOptions=a,this.componentInstance=void 0,this.parent=void 0,this.raw=!1,this.isStatic=!1,this.isRootInsert=!0,this.isComment=!1,this.isCloned=!1,this.isOnce=!1,this.asyncFactory=s,this.asyncMeta=void 0,this.isAsyncPlaceholder=!1},Ee={child:{configurable:!0}};Ee.child.get=function(){return this.componentInstance},Object.defineProperties(je.prototype,Ee);var Me=function(e){void 0===e&&(e="");var t=new je;return t.text=e,t.isComment=!0,t};function De(e){return new je(void 0,void 0,void 0,String(e))}function Le(e){var t=new je(e.tag,e.data,e.children&&e.children.slice(),e.text,e.elm,e.context,e.componentOptions,e.asyncFactory);return t.ns=e.ns,t.isStatic=e.isStatic,t.key=e.key,t.isComment=e.isComment,t.fnContext=e.fnContext,t.fnOptions=e.fnOptions,t.fnScopeId=e.fnScopeId,t.asyncMeta=e.asyncMeta,t.isCloned=!0,t}var Ie=Array.prototype,Fe=Object.create(Ie),Pe=["push","pop","shift","unshift","splice","sort","reverse"];Pe.forEach(function(e){var t=Ie[e];q(Fe,e,function(){for(var n=[],r=arguments.length;r--;)n[r]=arguments[r];var i,o=t.apply(this,n),a=this.__ob__;switch(e){case"push":case"unshift":i=n;break;case"splice":i=n.slice(2)}return i&&a.observeArray(i),a.dep.notify(),o})});var Re=Object.getOwnPropertyNames(Fe),He=!0;function Be(e){He=e}var Ue=function(e){this.value=e,this.dep=new Oe,this.vmCount=0,q(e,"__ob__",this),Array.isArray(e)?(X?ze(e,Fe):Ve(e,Fe,Re),this.observeArray(e)):this.walk(e)};function ze(e,t){e.__proto__=t}function Ve(e,t,n){for(var r=0,i=n.length;r<i;r++){var o=n[r];q(e,o,t[o])}}function Je(e,t){var n;if(s(e)&&!(e instanceof je))return $(e,"__ob__")&&e.__ob__ instanceof Ue?n=e.__ob__:He&&!de()&&(Array.isArray(e)||l(e))&&Object.isExtensible(e)&&!e._isVue&&(n=new Ue(e)),t&&n&&n.vmCount++,n}function Ke(e,t,n,r,i){var o=new Oe,a=Object.getOwnPropertyDescriptor(e,t);if(!a||!1!==a.configurable){var s=a&&a.get,c=a&&a.set;s&&!c||2!==arguments.length||(n=e[t]);var u=!i&&Je(n);Object.defineProperty(e,t,{enumerable:!0,configurable:!0,get:function(){var t=s?s.call(e):n;return Oe.target&&(o.depend(),u&&(u.dep.depend(),Array.isArray(t)&&Ze(t))),t},set:function(t){var r=s?s.call(e):n;t===r||t!=t&&r!=r||s&&!c||(c?c.call(e,t):n=t,u=!i&&Je(t),o.notify())}})}}function qe(e,t,n){if(Array.isArray(e)&&p(t))return e.length=Math.max(e.length,t),e.splice(t,1,n),n;if(t in e&&!(t in Object.prototype))return e[t]=n,n;var r=e.__ob__;return e._isVue||r&&r.vmCount?n:r?(Ke(r.value,t,n),r.dep.notify(),n):(e[t]=n,n)}function We(e,t){if(Array.isArray(e)&&p(t))e.splice(t,1);else{var n=e.__ob__;e._isVue||n&&n.vmCount||$(e,t)&&(delete e[t],n&&n.dep.notify())}}function Ze(e){for(var t=void 0,n=0,r=e.length;n<r;n++)(t=e[n])&&t.__ob__&&t.__ob__.dep.depend(),Array.isArray(t)&&Ze(t)}Ue.prototype.walk=function(e){for(var t=Object.keys(e),n=0;n<t.length;n++)Ke(e,t[n])},Ue.prototype.observeArray=function(e){for(var t=0,n=e.length;t<n;t++)Je(e[t])};var Ge=V.optionMergeStrategies;function Xe(e,t){if(!t)return e;for(var n,r,i,o=ye?Reflect.ownKeys(t):Object.keys(t),a=0;a<o.length;a++)"__ob__"!==(n=o[a])&&(r=e[n],i=t[n],$(e,n)?r!==i&&l(r)&&l(i)&&Xe(r,i):qe(e,n,i));return e}function Ye(e,t,n){return n?function(){var r="function"==typeof t?t.call(n,n):t,i="function"==typeof e?e.call(n,n):e;return r?Xe(r,i):i}:t?e?function(){return Xe("function"==typeof t?t.call(this,this):t,"function"==typeof e?e.call(this,this):e)}:t:e}function Qe(e,t){var n=t?e?e.concat(t):Array.isArray(t)?t:[t]:e;return n?et(n):n}function et(e){for(var t=[],n=0;n<e.length;n++)-1===t.indexOf(e[n])&&t.push(e[n]);return t}function tt(e,t,n,r){var i=Object.create(e||null);return t?E(i,t):i}Ge.data=function(e,t,n){return n?Ye(e,t,n):t&&"function"!=typeof t?e:Ye(e,t)},z.forEach(function(e){Ge[e]=Qe}),U.forEach(function(e){Ge[e+"s"]=tt}),Ge.watch=function(e,t,n,r){if(e===le&&(e=void 0),t===le&&(t=void 0),!t)return Object.create(e||null);if(!e)return t;var i={};for(var o in E(i,e),t){var a=i[o],s=t[o];a&&!Array.isArray(a)&&(a=[a]),i[o]=a?a.concat(s):Array.isArray(s)?s:[s]}return i},Ge.props=Ge.methods=Ge.inject=Ge.computed=function(e,t,n,r){if(!e)return t;var i=Object.create(null);return E(i,e),t&&E(i,t),i},Ge.provide=Ye;var nt=function(e,t){return void 0===t?e:t};function rt(e){for(var t in e.components)it(t)}function it(e){new RegExp("^[a-zA-Z][\\-\\.0-9_"+J.source+"]*$").test(e)||we('Invalid component name: "'+e+'". Component names should conform to valid custom element name in html5 specification.'),(y(e)||V.isReservedTag(e))&&we("Do not use built-in or reserved HTML elements as component id: "+e)}function ot(e,t){var n=e.props;if(n){var r,i,o={};if(Array.isArray(n))for(r=n.length;r--;)"string"==typeof(i=n[r])&&(o[C(i)]={type:null});else if(l(n))for(var a in n)i=n[a],o[C(a)]=l(i)?i:{type:i};else 0;e.props=o}}function at(e,t){var n=e.inject;if(n){var r=e.inject={};if(Array.isArray(n))for(var i=0;i<n.length;i++)r[n[i]]={from:n[i]};else if(l(n))for(var o in n){var a=n[o];r[o]=l(a)?E({from:o},a):{from:a}}else 0}}function st(e){var t=e.directives;if(t)for(var n in t){var r=t[n];"function"==typeof r&&(t[n]={bind:r,update:r})}}function ct(e,t,n){l(t)||we('Invalid value for option "'+e+'": expected an Object, but got '+u(t)+".",n)}function ut(e,t,n){if("function"==typeof t&&(t=t.options),ot(t,n),at(t,n),st(t),!t._base&&(t.extends&&(e=ut(e,t.extends,n)),t.mixins))for(var r=0,i=t.mixins.length;r<i;r++)e=ut(e,t.mixins[r],n);var o,a={};for(o in e)s(o);for(o in t)$(e,o)||s(o);function s(r){var i=Ge[r]||nt;a[r]=i(e[r],t[r],n,r)}return a}function lt(e,t,n,r){if("string"==typeof n){var i=e[t];if($(i,n))return i[n];var o=C(n);if($(i,o))return i[o];var a=A(o);if($(i,a))return i[a];var s=i[n]||i[o]||i[a];return s}}function ft(e,t,n,r){var i=t[e],o=!$(n,e),a=n[e],s=gt(Boolean,i.type);if(s>-1)if(o&&!$(i,"default"))a=!1;else if(""===a||a===O(e)){var c=gt(String,i.type);(c<0||s<c)&&(a=!0)}if(void 0===a){a=pt(r,i,e);var u=He;Be(!0),Je(a),Be(u)}return a}function pt(e,t,n){if($(t,"default")){var r=t.default;return e&&e.$options.propsData&&void 0===e.$options.propsData[n]&&void 0!==e._props[n]?e._props[n]:"function"==typeof r&&"Function"!==mt(t.type)?r.call(e):r}}function dt(e,t,n,r,i){if(e.required&&i)we('Missing required prop: "'+t+'"',r);else if(null!=n||e.required){var o=e.type,a=!o||!0===o,s=[];if(o){Array.isArray(o)||(o=[o]);for(var c=0;c<o.length&&!a;c++){var u=ht(n,o[c]);s.push(u.expectedType||""),a=u.valid}}if(a){var l=e.validator;l&&(l(n)||we('Invalid prop: custom validator check failed for prop "'+t+'".',r))}else we(_t(t,n,s),r)}}var vt=/^(String|Number|Boolean|Function|Symbol)$/;function ht(e,t){var n,r=mt(t);if(vt.test(r)){var i=typeof e;(n=i===r.toLowerCase())||"object"!==i||(n=e instanceof t)}else n="Object"===r?l(e):"Array"===r?Array.isArray(e):e instanceof t;return{valid:n,expectedType:r}}function mt(e){var t=e&&e.toString().match(/^\s*function (\w+)/);return t?t[1]:""}function yt(e,t){return mt(e)===mt(t)}function gt(e,t){if(!Array.isArray(t))return yt(t,e)?0:-1;for(var n=0,r=t.length;n<r;n++)if(yt(t[n],e))return n;return-1}function _t(e,t,n){var r='Invalid prop: type check failed for prop "'+e+'". Expected '+n.map(A).join(", "),i=n[0],o=u(t),a=bt(t,i),s=bt(t,o);return 1===n.length&&$t(i)&&!wt(i,o)&&(r+=" with value "+a),r+=", got "+o+" ",$t(o)&&(r+="with value "+s+"."),r}function bt(e,t){return"String"===t?'"'+e+'"':"Number"===t?""+Number(e):""+e}function $t(e){return["string","number","boolean"].some(function(t){return e.toLowerCase()===t})}function wt(){for(var e=[],t=arguments.length;t--;)e[t]=arguments[t];return e.some(function(e){return"boolean"===e.toLowerCase()})}function xt(e,t,n){Te();try{if(t)for(var r=t;r=r.$parent;){var i=r.$options.errorCaptured;if(i)for(var o=0;o<i.length;o++)try{if(!1===i[o].call(r,e,t,n))return}catch(Xl){At(Xl,r,"errorCaptured hook")}}At(e,t,n)}finally{Ne()}}function Ct(e,t,n,r,i){var o;try{(o=n?e.apply(t,n):e.call(t))&&!o._isVue&&d(o)&&!o._handled&&(o.catch(function(e){return xt(e,r,i+" (Promise/async)")}),o._handled=!0)}catch(Xl){xt(Xl,r,i)}return o}function At(e,t,n){if(V.errorHandler)try{return V.errorHandler.call(null,e,t,n)}catch(Xl){Xl!==e&&kt(Xl,null,"config.errorHandler")}kt(e,t,n)}function kt(e,t,n){if(!Y&&!Q||"undefined"==typeof console)throw e;console.error(e)}var Ot,St,Tt,Nt,jt,Et,Mt,Dt,Lt,It,Ft,Pt,Rt=!1,Ht=[],Bt=!1;function Ut(){Bt=!1;var e=Ht.slice(0);Ht.length=0;for(var t=0;t<e.length;t++)e[t]()}if("undefined"!=typeof Promise&&he(Promise)){var zt=Promise.resolve();Ot=function(){zt.then(Ut),ae&&setTimeout(D)},Rt=!0}else if(ne||"undefined"==typeof MutationObserver||!he(MutationObserver)&&"[object MutationObserverConstructor]"!==MutationObserver.toString())Ot="undefined"!=typeof setImmediate&&he(setImmediate)?function(){setImmediate(Ut)}:function(){setTimeout(Ut,0)};else{var Vt=1,Jt=new MutationObserver(Ut),Kt=document.createTextNode(String(Vt));Jt.observe(Kt,{characterData:!0}),Ot=function(){Vt=(Vt+1)%2,Kt.data=String(Vt)},Rt=!0}function qt(e,t){var n;if(Ht.push(function(){if(e)try{e.call(t)}catch(Xl){xt(Xl,t,"nextTick")}else n&&n(t)}),Bt||(Bt=!0,Ot()),!e&&"undefined"!=typeof Promise)return new Promise(function(e){n=e})}var Wt=new me;function Zt(e){Gt(e,Wt),Wt.clear()}function Gt(e,t){var n,r,i=Array.isArray(e);if(!(!i&&!s(e)||Object.isFrozen(e)||e instanceof je)){if(e.__ob__){var o=e.__ob__.dep.id;if(t.has(o))return;t.add(o)}if(i)for(n=e.length;n--;)Gt(e[n],t);else for(n=(r=Object.keys(e)).length;n--;)Gt(e[r[n]],t)}}var Xt=w(function(e){var t="&"===e.charAt(0),n="~"===(e=t?e.slice(1):e).charAt(0),r="!"===(e=n?e.slice(1):e).charAt(0);return{name:e=r?e.slice(1):e,once:n,capture:r,passive:t}});function Yt(e,t){function n(){var e=arguments,r=n.fns;if(!Array.isArray(r))return Ct(r,null,arguments,t,"v-on handler");for(var i=r.slice(),o=0;o<i.length;o++)Ct(i[o],null,e,t,"v-on handler")}return n.fns=e,n}function Qt(e,t,r,o,a,s){var c,u,l,f;for(c in e)u=e[c],l=t[c],f=Xt(c),n(u)||(n(l)?(n(u.fns)&&(u=e[c]=Yt(u,s)),i(f.once)&&(u=e[c]=a(f.name,u,f.capture)),r(f.name,u,f.capture,f.passive,f.params)):u!==l&&(l.fns=u,e[c]=l));for(c in t)n(e[c])&&o((f=Xt(c)).name,t[c],f.capture)}function en(e,t,o){var a;e instanceof je&&(e=e.data.hook||(e.data.hook={}));var s=e[t];function c(){o.apply(this,arguments),_(a.fns,c)}n(s)?a=Yt([c]):r(s.fns)&&i(s.merged)?(a=s).fns.push(c):a=Yt([s,c]),a.merged=!0,e[t]=a}function tn(e,t,i){var o=t.options.props;if(!n(o)){var a={},s=e.attrs,c=e.props;if(r(s)||r(c))for(var u in o){var l=O(u);nn(a,c,u,l,!0)||nn(a,s,u,l,!1)}return a}}function nn(e,t,n,i,o){if(r(t)){if($(t,n))return e[n]=t[n],o||delete t[n],!0;if($(t,i))return e[n]=t[i],o||delete t[i],!0}return!1}function rn(e){for(var t=0;t<e.length;t++)if(Array.isArray(e[t]))return Array.prototype.concat.apply([],e);return e}function on(e){return a(e)?[De(e)]:Array.isArray(e)?sn(e):void 0}function an(e){return r(e)&&r(e.text)&&o(e.isComment)}function sn(e,t){var o,s,c,u,l=[];for(o=0;o<e.length;o++)n(s=e[o])||"boolean"==typeof s||(u=l[c=l.length-1],Array.isArray(s)?s.length>0&&(an((s=sn(s,(t||"")+"_"+o))[0])&&an(u)&&(l[c]=De(u.text+s[0].text),s.shift()),l.push.apply(l,s)):a(s)?an(u)?l[c]=De(u.text+s):""!==s&&l.push(De(s)):an(s)&&an(u)?l[c]=De(u.text+s.text):(i(e._isVList)&&r(s.tag)&&n(s.key)&&r(t)&&(s.key="__vlist"+t+"_"+o+"__"),l.push(s)));return l}function cn(e){var t=e.$options.provide;t&&(e._provided="function"==typeof t?t.call(e):t)}function un(e){var t=ln(e.$options.inject,e);t&&(Be(!1),Object.keys(t).forEach(function(n){Ke(e,n,t[n])}),Be(!0))}function ln(e,t){if(e){for(var n=Object.create(null),r=ye?Reflect.ownKeys(e):Object.keys(e),i=0;i<r.length;i++){var o=r[i];if("__ob__"!==o){for(var a=e[o].from,s=t;s;){if(s._provided&&$(s._provided,a)){n[o]=s._provided[a];break}s=s.$parent}if(!s)if("default"in e[o]){var c=e[o].default;n[o]="function"==typeof c?c.call(t):c}else 0}}return n}}function fn(e,t){if(!e||!e.length)return{};for(var n={},r=0,i=e.length;r<i;r++){var o=e[r],a=o.data;if(a&&a.attrs&&a.attrs.slot&&delete a.attrs.slot,o.context!==t&&o.fnContext!==t||!a||null==a.slot)(n.default||(n.default=[])).push(o);else{var s=a.slot,c=n[s]||(n[s]=[]);"template"===o.tag?c.push.apply(c,o.children||[]):c.push(o)}}for(var u in n)n[u].every(pn)&&delete n[u];return n}function pn(e){return e.isComment&&!e.asyncFactory||" "===e.text}function dn(e,n,r){var i,o=Object.keys(n).length>0,a=e?!!e.$stable:!o,s=e&&e.$key;if(e){if(e._normalized)return e._normalized;if(a&&r&&r!==t&&s===r.$key&&!o&&!r.$hasNormal)return r;for(var c in i={},e)e[c]&&"$"!==c[0]&&(i[c]=vn(n,c,e[c]))}else i={};for(var u in n)u in i||(i[u]=hn(n,u));return e&&Object.isExtensible(e)&&(e._normalized=i),q(i,"$stable",a),q(i,"$key",s),q(i,"$hasNormal",o),i}function vn(e,t,n){var r=function(){var e=arguments.length?n.apply(null,arguments):n({});return(e=e&&"object"==typeof e&&!Array.isArray(e)?[e]:on(e))&&(0===e.length||1===e.length&&e[0].isComment)?void 0:e};return n.proxy&&Object.defineProperty(e,t,{get:r,enumerable:!0,configurable:!0}),r}function hn(e,t){return function(){return e[t]}}function mn(e,t){var n,i,o,a,c;if(Array.isArray(e)||"string"==typeof e)for(n=new Array(e.length),i=0,o=e.length;i<o;i++)n[i]=t(e[i],i);else if("number"==typeof e)for(n=new Array(e),i=0;i<e;i++)n[i]=t(i+1,i);else if(s(e))if(ye&&e[Symbol.iterator]){n=[];for(var u=e[Symbol.iterator](),l=u.next();!l.done;)n.push(t(l.value,n.length)),l=u.next()}else for(a=Object.keys(e),n=new Array(a.length),i=0,o=a.length;i<o;i++)c=a[i],n[i]=t(e[c],c,i);return r(n)||(n=[]),n._isVList=!0,n}function yn(e,t,n,r){var i,o=this.$scopedSlots[e];o?(n=n||{},r&&(n=E(E({},r),n)),i=o(n)||t):i=this.$slots[e]||t;var a=n&&n.slot;return a?this.$createElement("template",{slot:a},i):i}function gn(e){return lt(this.$options,"filters",e,!0)||I}function _n(e,t){return Array.isArray(e)?-1===e.indexOf(t):e!==t}function bn(e,t,n,r,i){var o=V.keyCodes[t]||n;return i&&r&&!V.keyCodes[t]?_n(i,r):o?_n(o,e):r?O(r)!==t:void 0}function $n(e,t,n,r,i){if(n)if(s(n)){var o;Array.isArray(n)&&(n=M(n));var a=function(a){if("class"===a||"style"===a||g(a))o=e;else{var s=e.attrs&&e.attrs.type;o=r||V.mustUseProp(t,s,a)?e.domProps||(e.domProps={}):e.attrs||(e.attrs={})}var c=C(a),u=O(a);c in o||u in o||(o[a]=n[a],i&&((e.on||(e.on={}))["update:"+a]=function(e){n[a]=e}))};for(var c in n)a(c)}else;return e}function wn(e,t){var n=this._staticTrees||(this._staticTrees=[]),r=n[e];return r&&!t?r:(Cn(r=n[e]=this.$options.staticRenderFns[e].call(this._renderProxy,null,this),"__static__"+e,!1),r)}function xn(e,t,n){return Cn(e,"__once__"+t+(n?"_"+n:""),!0),e}function Cn(e,t,n){if(Array.isArray(e))for(var r=0;r<e.length;r++)e[r]&&"string"!=typeof e[r]&&An(e[r],t+"_"+r,n);else An(e,t,n)}function An(e,t,n){e.isStatic=!0,e.key=t,e.isOnce=n}function kn(e,t){if(t)if(l(t)){var n=e.on=e.on?E({},e.on):{};for(var r in t){var i=n[r],o=t[r];n[r]=i?[].concat(i,o):o}}else;return e}function On(e,t,n,r){t=t||{$stable:!n};for(var i=0;i<e.length;i++){var o=e[i];Array.isArray(o)?On(o,t,n):o&&(o.proxy&&(o.fn.proxy=!0),t[o.key]=o.fn)}return r&&(t.$key=r),t}function Sn(e,t){for(var n=0;n<t.length;n+=2){var r=t[n];"string"==typeof r&&r&&(e[t[n]]=t[n+1])}return e}function Tn(e,t){return"string"==typeof e?t+e:e}function Nn(e){e._o=xn,e._n=h,e._s=v,e._l=mn,e._t=yn,e._q=P,e._i=R,e._m=wn,e._f=gn,e._k=bn,e._b=$n,e._v=De,e._e=Me,e._u=On,e._g=kn,e._d=Sn,e._p=Tn}function jn(e,n,r,o,a){var s,c=this,u=a.options;$(o,"_uid")?(s=Object.create(o))._original=o:(s=o,o=o._original);var l=i(u._compiled),f=!l;this.data=e,this.props=n,this.children=r,this.parent=o,this.listeners=e.on||t,this.injections=ln(u.inject,o),this.slots=function(){return c.$slots||dn(e.scopedSlots,c.$slots=fn(r,o)),c.$slots},Object.defineProperty(this,"scopedSlots",{enumerable:!0,get:function(){return dn(e.scopedSlots,this.slots())}}),l&&(this.$options=u,this.$slots=this.slots(),this.$scopedSlots=dn(e.scopedSlots,this.$slots)),u._scopeId?this._c=function(e,t,n,r){var i=Vn(s,e,t,n,r,f);return i&&!Array.isArray(i)&&(i.fnScopeId=u._scopeId,i.fnContext=o),i}:this._c=function(e,t,n,r){return Vn(s,e,t,n,r,f)}}function En(e,n,i,o,a){var s=e.options,c={},u=s.props;if(r(u))for(var l in u)c[l]=ft(l,u,n||t);else r(i.attrs)&&Dn(c,i.attrs),r(i.props)&&Dn(c,i.props);var f=new jn(i,c,a,o,e),p=s.render.call(null,f._c,f);if(p instanceof je)return Mn(p,i,f.parent,s,f);if(Array.isArray(p)){for(var d=on(p)||[],v=new Array(d.length),h=0;h<d.length;h++)v[h]=Mn(d[h],i,f.parent,s,f);return v}}function Mn(e,t,n,r,i){var o=Le(e);return o.fnContext=n,o.fnOptions=r,t.slot&&((o.data||(o.data={})).slot=t.slot),o}function Dn(e,t){for(var n in t)e[C(n)]=t[n]}Nn(jn.prototype);var Ln={init:function(e,t){if(e.componentInstance&&!e.componentInstance._isDestroyed&&e.data.keepAlive){var n=e;Ln.prepatch(n,n)}else{(e.componentInstance=Pn(e,ur)).$mount(t?e.elm:void 0,t)}},prepatch:function(e,t){var n=t.componentOptions;hr(t.componentInstance=e.componentInstance,n.propsData,n.listeners,t,n.children)},insert:function(e){var t=e.context,n=e.componentInstance;n._isMounted||(n._isMounted=!0,_r(n,"mounted")),e.data.keepAlive&&(t._isMounted?Dr(n):yr(n,!0))},destroy:function(e){var t=e.componentInstance;t._isDestroyed||(e.data.keepAlive?gr(t,!0):t.$destroy())}},In=Object.keys(Ln);function Fn(e,t,o,a,c){if(!n(e)){var u=o.$options._base;if(s(e)&&(e=u.extend(e)),"function"==typeof e){var l;if(n(e.cid)&&void 0===(e=er(l=e,u)))return Qn(l,t,o,a,c);t=t||{},ri(e),r(t.model)&&Bn(e.options,t);var f=tn(t,e,c);if(i(e.options.functional))return En(e,f,t,o,a);var p=t.on;if(t.on=t.nativeOn,i(e.options.abstract)){var d=t.slot;t={},d&&(t.slot=d)}Rn(t);var v=e.options.name||c;return new je("vue-component-"+e.cid+(v?"-"+v:""),t,void 0,void 0,void 0,o,{Ctor:e,propsData:f,listeners:p,tag:c,children:a},l)}}}function Pn(e,t){var n={_isComponent:!0,_parentVnode:e,parent:t},i=e.data.inlineTemplate;return r(i)&&(n.render=i.render,n.staticRenderFns=i.staticRenderFns),new e.componentOptions.Ctor(n)}function Rn(e){for(var t=e.hook||(e.hook={}),n=0;n<In.length;n++){var r=In[n],i=t[r],o=Ln[r];i===o||i&&i._merged||(t[r]=i?Hn(o,i):o)}}function Hn(e,t){var n=function(n,r){e(n,r),t(n,r)};return n._merged=!0,n}function Bn(e,t){var n=e.model&&e.model.prop||"value",i=e.model&&e.model.event||"input";(t.attrs||(t.attrs={}))[n]=t.model.value;var o=t.on||(t.on={}),a=o[i],s=t.model.callback;r(a)?(Array.isArray(a)?-1===a.indexOf(s):a!==s)&&(o[i]=[s].concat(a)):o[i]=s}var Un=1,zn=2;function Vn(e,t,n,r,o,s){return(Array.isArray(n)||a(n))&&(o=r,r=n,n=void 0),i(s)&&(o=zn),Jn(e,t,n,r,o)}function Jn(e,t,n,i,o){if(r(n)&&r(n.__ob__))return Me();if(r(n)&&r(n.is)&&(t=n.is),!t)return Me();var a,s,c;(Array.isArray(i)&&"function"==typeof i[0]&&((n=n||{}).scopedSlots={default:i[0]},i.length=0),o===zn?i=on(i):o===Un&&(i=rn(i)),"string"==typeof t)?(s=e.$vnode&&e.$vnode.ns||V.getTagNamespace(t),a=V.isReservedTag(t)?new je(V.parsePlatformTagName(t),n,i,void 0,void 0,e):n&&n.pre||!r(c=lt(e.$options,"components",t))?new je(t,n,i,void 0,void 0,e):Fn(c,n,e,i,t)):a=Fn(t,n,e,i);return Array.isArray(a)?a:r(a)?(r(s)&&Kn(a,s),r(n)&&qn(n),a):Me()}function Kn(e,t,o){if(e.ns=t,"foreignObject"===e.tag&&(t=void 0,o=!0),r(e.children))for(var a=0,s=e.children.length;a<s;a++){var c=e.children[a];r(c.tag)&&(n(c.ns)||i(o)&&"svg"!==c.tag)&&Kn(c,t,o)}}function qn(e){s(e.style)&&Zt(e.style),s(e.class)&&Zt(e.class)}function Wn(e){e._vnode=null,e._staticTrees=null;var n=e.$options,r=e.$vnode=n._parentVnode,i=r&&r.context;e.$slots=fn(n._renderChildren,i),e.$scopedSlots=t,e._c=function(t,n,r,i){return Vn(e,t,n,r,i,!1)},e.$createElement=function(t,n,r,i){return Vn(e,t,n,r,i,!0)};var o=r&&r.data;Ke(e,"$attrs",o&&o.attrs||t,null,!0),Ke(e,"$listeners",n._parentListeners||t,null,!0)}var Zn,Gn=null;function Xn(e){Nn(e.prototype),e.prototype.$nextTick=function(e){return qt(e,this)},e.prototype._render=function(){var e,t=this,n=t.$options,r=n.render,i=n._parentVnode;i&&(t.$scopedSlots=dn(i.data.scopedSlots,t.$slots,t.$scopedSlots)),t.$vnode=i;try{Gn=t,e=r.call(t._renderProxy,t.$createElement)}catch(Xl){xt(Xl,t,"render"),e=t._vnode}finally{Gn=null}return Array.isArray(e)&&1===e.length&&(e=e[0]),e instanceof je||(e=Me()),e.parent=i,e}}function Yn(e,t){return(e.__esModule||ye&&"Module"===e[Symbol.toStringTag])&&(e=e.default),s(e)?t.extend(e):e}function Qn(e,t,n,r,i){var o=Me();return o.asyncFactory=e,o.asyncMeta={data:t,context:n,children:r,tag:i},o}function er(e,t){if(i(e.error)&&r(e.errorComp))return e.errorComp;if(r(e.resolved))return e.resolved;var o=Gn;if(o&&r(e.owners)&&-1===e.owners.indexOf(o)&&e.owners.push(o),i(e.loading)&&r(e.loadingComp))return e.loadingComp;if(o&&!r(e.owners)){var a=e.owners=[o],c=!0,u=null,l=null;o.$on("hook:destroyed",function(){return _(a,o)});var f=function(e){for(var t=0,n=a.length;t<n;t++)a[t].$forceUpdate();e&&(a.length=0,null!==u&&(clearTimeout(u),u=null),null!==l&&(clearTimeout(l),l=null))},p=H(function(n){e.resolved=Yn(n,t),c?a.length=0:f(!0)}),v=H(function(t){r(e.errorComp)&&(e.error=!0,f(!0))}),h=e(p,v);return s(h)&&(d(h)?n(e.resolved)&&h.then(p,v):d(h.component)&&(h.component.then(p,v),r(h.error)&&(e.errorComp=Yn(h.error,t)),r(h.loading)&&(e.loadingComp=Yn(h.loading,t),0===h.delay?e.loading=!0:u=setTimeout(function(){u=null,n(e.resolved)&&n(e.error)&&(e.loading=!0,f(!1))},h.delay||200)),r(h.timeout)&&(l=setTimeout(function(){l=null,n(e.resolved)&&v(null)},h.timeout)))),c=!1,e.loading?e.loadingComp:e.resolved}}function tr(e){return e.isComment&&e.asyncFactory}function nr(e){if(Array.isArray(e))for(var t=0;t<e.length;t++){var n=e[t];if(r(n)&&(r(n.componentOptions)||tr(n)))return n}}function rr(e){e._events=Object.create(null),e._hasHookEvent=!1;var t=e.$options._parentListeners;t&&sr(e,t)}function ir(e,t){Zn.$on(e,t)}function or(e,t){Zn.$off(e,t)}function ar(e,t){var n=Zn;return function r(){null!==t.apply(null,arguments)&&n.$off(e,r)}}function sr(e,t,n){Zn=e,Qt(t,n||{},ir,or,ar,e),Zn=void 0}function cr(e){var t=/^hook:/;e.prototype.$on=function(e,n){var r=this;if(Array.isArray(e))for(var i=0,o=e.length;i<o;i++)r.$on(e[i],n);else(r._events[e]||(r._events[e]=[])).push(n),t.test(e)&&(r._hasHookEvent=!0);return r},e.prototype.$once=function(e,t){var n=this;function r(){n.$off(e,r),t.apply(n,arguments)}return r.fn=t,n.$on(e,r),n},e.prototype.$off=function(e,t){var n=this;if(!arguments.length)return n._events=Object.create(null),n;if(Array.isArray(e)){for(var r=0,i=e.length;r<i;r++)n.$off(e[r],t);return n}var o,a=n._events[e];if(!a)return n;if(!t)return n._events[e]=null,n;for(var s=a.length;s--;)if((o=a[s])===t||o.fn===t){a.splice(s,1);break}return n},e.prototype.$emit=function(e){var t=this,n=t._events[e];if(n){n=n.length>1?j(n):n;for(var r=j(arguments,1),i='event handler for "'+e+'"',o=0,a=n.length;o<a;o++)Ct(n[o],t,r,t,i)}return t}}var ur=null,lr=!1;function fr(e){var t=ur;return ur=e,function(){ur=t}}function pr(e){var t=e.$options,n=t.parent;if(n&&!t.abstract){for(;n.$options.abstract&&n.$parent;)n=n.$parent;n.$children.push(e)}e.$parent=n,e.$root=n?n.$root:e,e.$children=[],e.$refs={},e._watcher=null,e._inactive=null,e._directInactive=!1,e._isMounted=!1,e._isDestroyed=!1,e._isBeingDestroyed=!1}function dr(e){e.prototype._update=function(e,t){var n=this,r=n.$el,i=n._vnode,o=fr(n);n._vnode=e,n.$el=i?n.__patch__(i,e):n.__patch__(n.$el,e,t,!1),o(),r&&(r.__vue__=null),n.$el&&(n.$el.__vue__=n),n.$vnode&&n.$parent&&n.$vnode===n.$parent._vnode&&(n.$parent.$el=n.$el)},e.prototype.$forceUpdate=function(){this._watcher&&this._watcher.update()},e.prototype.$destroy=function(){var e=this;if(!e._isBeingDestroyed){_r(e,"beforeDestroy"),e._isBeingDestroyed=!0;var t=e.$parent;!t||t._isBeingDestroyed||e.$options.abstract||_(t.$children,e),e._watcher&&e._watcher.teardown();for(var n=e._watchers.length;n--;)e._watchers[n].teardown();e._data.__ob__&&e._data.__ob__.vmCount--,e._isDestroyed=!0,e.__patch__(e._vnode,null),_r(e,"destroyed"),e.$off(),e.$el&&(e.$el.__vue__=null),e.$vnode&&(e.$vnode.parent=null)}}}function vr(e,t,n){var r;return e.$el=t,e.$options.render||(e.$options.render=Me),_r(e,"beforeMount"),r=function(){e._update(e._render(),n)},new Pr(e,r,D,{before:function(){e._isMounted&&!e._isDestroyed&&_r(e,"beforeUpdate")}},!0),n=!1,null==e.$vnode&&(e._isMounted=!0,_r(e,"mounted")),e}function hr(e,n,r,i,o){var a=i.data.scopedSlots,s=e.$scopedSlots,c=!!(a&&!a.$stable||s!==t&&!s.$stable||a&&e.$scopedSlots.$key!==a.$key),u=!!(o||e.$options._renderChildren||c);if(e.$options._parentVnode=i,e.$vnode=i,e._vnode&&(e._vnode.parent=i),e.$options._renderChildren=o,e.$attrs=i.data.attrs||t,e.$listeners=r||t,n&&e.$options.props){Be(!1);for(var l=e._props,f=e.$options._propKeys||[],p=0;p<f.length;p++){var d=f[p],v=e.$options.props;l[d]=ft(d,v,n,e)}Be(!0),e.$options.propsData=n}r=r||t;var h=e.$options._parentListeners;e.$options._parentListeners=r,sr(e,r,h),u&&(e.$slots=fn(o,i.context),e.$forceUpdate())}function mr(e){for(;e&&(e=e.$parent);)if(e._inactive)return!0;return!1}function yr(e,t){if(t){if(e._directInactive=!1,mr(e))return}else if(e._directInactive)return;if(e._inactive||null===e._inactive){e._inactive=!1;for(var n=0;n<e.$children.length;n++)yr(e.$children[n]);_r(e,"activated")}}function gr(e,t){if(!(t&&(e._directInactive=!0,mr(e))||e._inactive)){e._inactive=!0;for(var n=0;n<e.$children.length;n++)gr(e.$children[n]);_r(e,"deactivated")}}function _r(e,t){Te();var n=e.$options[t],r=t+" hook";if(n)for(var i=0,o=n.length;i<o;i++)Ct(n[i],e,null,e,r);e._hasHookEvent&&e.$emit("hook:"+t),Ne()}var br=100,$r=[],wr=[],xr={},Cr={},Ar=!1,kr=!1,Or=0;function Sr(){Or=$r.length=wr.length=0,xr={},Ar=kr=!1}var Tr=0,Nr=Date.now;if(Y&&!ne){var jr=window.performance;jr&&"function"==typeof jr.now&&Nr()>document.createEvent("Event").timeStamp&&(Nr=function(){return jr.now()})}function Er(){var e,t;for(Tr=Nr(),kr=!0,$r.sort(function(e,t){return e.id-t.id}),Or=0;Or<$r.length;Or++)(e=$r[Or]).before&&e.before(),t=e.id,xr[t]=null,e.run();var n=wr.slice(),r=$r.slice();Sr(),Lr(n),Mr(r),ve&&V.devtools&&ve.emit("flush")}function Mr(e){for(var t=e.length;t--;){var n=e[t],r=n.vm;r._watcher===n&&r._isMounted&&!r._isDestroyed&&_r(r,"updated")}}function Dr(e){e._inactive=!1,wr.push(e)}function Lr(e){for(var t=0;t<e.length;t++)e[t]._inactive=!0,yr(e[t],!0)}function Ir(e){var t=e.id;if(null==xr[t]){if(xr[t]=!0,kr){for(var n=$r.length-1;n>Or&&$r[n].id>e.id;)n--;$r.splice(n+1,0,e)}else $r.push(e);Ar||(Ar=!0,qt(Er))}}var Fr=0,Pr=function(e,t,n,r,i){this.vm=e,i&&(e._watcher=this),e._watchers.push(this),r?(this.deep=!!r.deep,this.user=!!r.user,this.lazy=!!r.lazy,this.sync=!!r.sync,this.before=r.before):this.deep=this.user=this.lazy=this.sync=!1,this.cb=n,this.id=++Fr,this.active=!0,this.dirty=this.lazy,this.deps=[],this.newDeps=[],this.depIds=new me,this.newDepIds=new me,this.expression="","function"==typeof t?this.getter=t:(this.getter=Z(t),this.getter||(this.getter=D)),this.value=this.lazy?void 0:this.get()};Pr.prototype.get=function(){var e;Te(this);var t=this.vm;try{e=this.getter.call(t,t)}catch(Xl){if(!this.user)throw Xl;xt(Xl,t,'getter for watcher "'+this.expression+'"')}finally{this.deep&&Zt(e),Ne(),this.cleanupDeps()}return e},Pr.prototype.addDep=function(e){var t=e.id;this.newDepIds.has(t)||(this.newDepIds.add(t),this.newDeps.push(e),this.depIds.has(t)||e.addSub(this))},Pr.prototype.cleanupDeps=function(){for(var e=this.deps.length;e--;){var t=this.deps[e];this.newDepIds.has(t.id)||t.removeSub(this)}var n=this.depIds;this.depIds=this.newDepIds,this.newDepIds=n,this.newDepIds.clear(),n=this.deps,this.deps=this.newDeps,this.newDeps=n,this.newDeps.length=0},Pr.prototype.update=function(){this.lazy?this.dirty=!0:this.sync?this.run():Ir(this)},Pr.prototype.run=function(){if(this.active){var e=this.get();if(e!==this.value||s(e)||this.deep){var t=this.value;if(this.value=e,this.user)try{this.cb.call(this.vm,e,t)}catch(Xl){xt(Xl,this.vm,'callback for watcher "'+this.expression+'"')}else this.cb.call(this.vm,e,t)}}},Pr.prototype.evaluate=function(){this.value=this.get(),this.dirty=!1},Pr.prototype.depend=function(){for(var e=this.deps.length;e--;)this.deps[e].depend()},Pr.prototype.teardown=function(){if(this.active){this.vm._isBeingDestroyed||_(this.vm._watchers,this);for(var e=this.deps.length;e--;)this.deps[e].removeSub(this);this.active=!1}};var Rr={enumerable:!0,configurable:!0,get:D,set:D};function Hr(e,t,n){Rr.get=function(){return this[t][n]},Rr.set=function(e){this[t][n]=e},Object.defineProperty(e,n,Rr)}function Br(e){e._watchers=[];var t=e.$options;t.props&&Ur(e,t.props),t.methods&&Gr(e,t.methods),t.data?zr(e):Je(e._data={},!0),t.computed&&Kr(e,t.computed),t.watch&&t.watch!==le&&Xr(e,t.watch)}function Ur(e,t){var n=e.$options.propsData||{},r=e._props={},i=e.$options._propKeys=[],o=!e.$parent;o||Be(!1);var a=function(o){i.push(o);var a=ft(o,t,n,e);Ke(r,o,a),o in e||Hr(e,"_props",o)};for(var s in t)a(s);Be(!0)}function zr(e){var t=e.$options.data;l(t=e._data="function"==typeof t?Vr(t,e):t||{})||(t={});for(var n=Object.keys(t),r=e.$options.props,i=(e.$options.methods,n.length);i--;){var o=n[i];0,r&&$(r,o)||K(o)||Hr(e,"_data",o)}Je(t,!0)}function Vr(e,t){Te();try{return e.call(t,t)}catch(Xl){return xt(Xl,t,"data()"),{}}finally{Ne()}}var Jr={lazy:!0};function Kr(e,t){var n=e._computedWatchers=Object.create(null),r=de();for(var i in t){var o=t[i],a="function"==typeof o?o:o.get;0,r||(n[i]=new Pr(e,a||D,D,Jr)),i in e||qr(e,i,o)}}function qr(e,t,n){var r=!de();"function"==typeof n?(Rr.get=r?Wr(t):Zr(n),Rr.set=D):(Rr.get=n.get?r&&!1!==n.cache?Wr(t):Zr(n.get):D,Rr.set=n.set||D),Object.defineProperty(e,t,Rr)}function Wr(e){return function(){var t=this._computedWatchers&&this._computedWatchers[e];if(t)return t.dirty&&t.evaluate(),Oe.target&&t.depend(),t.value}}function Zr(e){return function(){return e.call(this,this)}}function Gr(e,t){e.$options.props;for(var n in t)e[n]="function"!=typeof t[n]?D:N(t[n],e)}function Xr(e,t){for(var n in t){var r=t[n];if(Array.isArray(r))for(var i=0;i<r.length;i++)Yr(e,n,r[i]);else Yr(e,n,r)}}function Yr(e,t,n,r){return l(n)&&(r=n,n=n.handler),"string"==typeof n&&(n=e[n]),e.$watch(t,n,r)}function Qr(e){var t={get:function(){return this._data}},n={get:function(){return this._props}};Object.defineProperty(e.prototype,"$data",t),Object.defineProperty(e.prototype,"$props",n),e.prototype.$set=qe,e.prototype.$delete=We,e.prototype.$watch=function(e,t,n){if(l(t))return Yr(this,e,t,n);(n=n||{}).user=!0;var r=new Pr(this,e,t,n);if(n.immediate)try{t.call(this,r.value)}catch(i){xt(i,this,'callback for immediate watcher "'+r.expression+'"')}return function(){r.teardown()}}}var ei=0;function ti(e){e.prototype._init=function(e){var t=this;t._uid=ei++,t._isVue=!0,e&&e._isComponent?ni(t,e):t.$options=ut(ri(t.constructor),e||{},t),t._renderProxy=t,t._self=t,pr(t),rr(t),Wn(t),_r(t,"beforeCreate"),un(t),Br(t),cn(t),_r(t,"created"),t.$options.el&&t.$mount(t.$options.el)}}function ni(e,t){var n=e.$options=Object.create(e.constructor.options),r=t._parentVnode;n.parent=t.parent,n._parentVnode=r;var i=r.componentOptions;n.propsData=i.propsData,n._parentListeners=i.listeners,n._renderChildren=i.children,n._componentTag=i.tag,t.render&&(n.render=t.render,n.staticRenderFns=t.staticRenderFns)}function ri(e){var t=e.options;if(e.super){var n=ri(e.super);if(n!==e.superOptions){e.superOptions=n;var r=ii(e);r&&E(e.extendOptions,r),(t=e.options=ut(n,e.extendOptions)).name&&(t.components[t.name]=e)}}return t}function ii(e){var t,n=e.options,r=e.sealedOptions;for(var i in n)n[i]!==r[i]&&(t||(t={}),t[i]=n[i]);return t}function oi(e){this._init(e)}function ai(e){e.use=function(e){var t=this._installedPlugins||(this._installedPlugins=[]);if(t.indexOf(e)>-1)return this;var n=j(arguments,1);return n.unshift(this),"function"==typeof e.install?e.install.apply(e,n):"function"==typeof e&&e.apply(null,n),t.push(e),this}}function si(e){e.mixin=function(e){return this.options=ut(this.options,e),this}}function ci(e){e.cid=0;var t=1;e.extend=function(e){e=e||{};var n=this,r=n.cid,i=e._Ctor||(e._Ctor={});if(i[r])return i[r];var o=e.name||n.options.name;var a=function(e){this._init(e)};return(a.prototype=Object.create(n.prototype)).constructor=a,a.cid=t++,a.options=ut(n.options,e),a.super=n,a.options.props&&ui(a),a.options.computed&&li(a),a.extend=n.extend,a.mixin=n.mixin,a.use=n.use,U.forEach(function(e){a[e]=n[e]}),o&&(a.options.components[o]=a),a.superOptions=n.options,a.extendOptions=e,a.sealedOptions=E({},a.options),i[r]=a,a}}function ui(e){var t=e.options.props;for(var n in t)Hr(e.prototype,"_props",n)}function li(e){var t=e.options.computed;for(var n in t)qr(e.prototype,n,t[n])}function fi(e){U.forEach(function(t){e[t]=function(e,n){return n?("component"===t&&l(n)&&(n.name=n.name||e,n=this.options._base.extend(n)),"directive"===t&&"function"==typeof n&&(n={bind:n,update:n}),this.options[t+"s"][e]=n,n):this.options[t+"s"][e]}})}function pi(e){return e&&(e.Ctor.options.name||e.tag)}function di(e,t){return Array.isArray(e)?e.indexOf(t)>-1:"string"==typeof e?e.split(",").indexOf(t)>-1:!!f(e)&&e.test(t)}function vi(e,t){var n=e.cache,r=e.keys,i=e._vnode;for(var o in n){var a=n[o];if(a){var s=pi(a.componentOptions);s&&!t(s)&&hi(n,o,r,i)}}}function hi(e,t,n,r){var i=e[t];!i||r&&i.tag===r.tag||i.componentInstance.$destroy(),e[t]=null,_(n,t)}ti(oi),Qr(oi),cr(oi),dr(oi),Xn(oi);var mi=[String,RegExp,Array],yi={name:"keep-alive",abstract:!0,props:{include:mi,exclude:mi,max:[String,Number]},created:function(){this.cache=Object.create(null),this.keys=[]},destroyed:function(){for(var e in this.cache)hi(this.cache,e,this.keys)},mounted:function(){var e=this;this.$watch("include",function(t){vi(e,function(e){return di(t,e)})}),this.$watch("exclude",function(t){vi(e,function(e){return!di(t,e)})})},render:function(){var e=this.$slots.default,t=nr(e),n=t&&t.componentOptions;if(n){var r=pi(n),i=this.include,o=this.exclude;if(i&&(!r||!di(i,r))||o&&r&&di(o,r))return t;var a=this.cache,s=this.keys,c=null==t.key?n.Ctor.cid+(n.tag?"::"+n.tag:""):t.key;a[c]?(t.componentInstance=a[c].componentInstance,_(s,c),s.push(c)):(a[c]=t,s.push(c),this.max&&s.length>parseInt(this.max)&&hi(a,s[0],s,this._vnode)),t.data.keepAlive=!0}return t||e&&e[0]}},gi={KeepAlive:yi};function _i(e){var t={get:function(){return V}};Object.defineProperty(e,"config",t),e.util={warn:we,extend:E,mergeOptions:ut,defineReactive:Ke},e.set=qe,e.delete=We,e.nextTick=qt,e.observable=function(e){return Je(e),e},e.options=Object.create(null),U.forEach(function(t){e.options[t+"s"]=Object.create(null)}),e.options._base=e,E(e.options.components,gi),ai(e),si(e),ci(e),fi(e)}_i(oi),Object.defineProperty(oi.prototype,"$isServer",{get:de}),Object.defineProperty(oi.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),Object.defineProperty(oi,"FunctionalRenderContext",{value:jn}),oi.version="2.6.11";var bi=m("style,class"),$i=m("input,textarea,option,select,progress"),wi=function(e,t,n){return"value"===n&&$i(e)&&"button"!==t||"selected"===n&&"option"===e||"checked"===n&&"input"===e||"muted"===n&&"video"===e},xi=m("contenteditable,draggable,spellcheck"),Ci=m("events,caret,typing,plaintext-only"),Ai=function(e,t){return Ni(t)||"false"===t?"false":"contenteditable"===e&&Ci(t)?t:"true"},ki=m("allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,default,defaultchecked,defaultmuted,defaultselected,defer,disabled,enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,required,reversed,scoped,seamless,selected,sortable,translate,truespeed,typemustmatch,visible"),Oi="http://www.w3.org/1999/xlink",Si=function(e){return":"===e.charAt(5)&&"xlink"===e.slice(0,5)},Ti=function(e){return Si(e)?e.slice(6,e.length):""},Ni=function(e){return null==e||!1===e};function ji(e){for(var t=e.data,n=e,i=e;r(i.componentInstance);)(i=i.componentInstance._vnode)&&i.data&&(t=Ei(i.data,t));for(;r(n=n.parent);)n&&n.data&&(t=Ei(t,n.data));return Mi(t.staticClass,t.class)}function Ei(e,t){return{staticClass:Di(e.staticClass,t.staticClass),class:r(e.class)?[e.class,t.class]:t.class}}function Mi(e,t){return r(e)||r(t)?Di(e,Li(t)):""}function Di(e,t){return e?t?e+" "+t:e:t||""}function Li(e){return Array.isArray(e)?Ii(e):s(e)?Fi(e):"string"==typeof e?e:""}function Ii(e){for(var t,n="",i=0,o=e.length;i<o;i++)r(t=Li(e[i]))&&""!==t&&(n&&(n+=" "),n+=t);return n}function Fi(e){var t="";for(var n in e)e[n]&&(t&&(t+=" "),t+=n);return t}var Pi={svg:"http://www.w3.org/2000/svg",math:"http://www.w3.org/1998/Math/MathML"},Ri=m("html,body,base,head,link,meta,style,title,address,article,aside,footer,header,h1,h2,h3,h4,h5,h6,hgroup,nav,section,div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,rtc,ruby,s,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,embed,object,param,source,canvas,script,noscript,del,ins,caption,col,colgroup,table,thead,tbody,td,th,tr,button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,output,progress,select,textarea,details,dialog,menu,menuitem,summary,content,element,shadow,template,blockquote,iframe,tfoot"),Hi=m("svg,animate,circle,clippath,cursor,defs,desc,ellipse,filter,font-face,foreignObject,g,glyph,image,line,marker,mask,missing-glyph,path,pattern,polygon,polyline,rect,switch,symbol,text,textpath,tspan,use,view",!0),Bi=function(e){return"pre"===e},Ui=function(e){return Ri(e)||Hi(e)};function zi(e){return Hi(e)?"svg":"math"===e?"math":void 0}var Vi=Object.create(null);function Ji(e){if(!Y)return!0;if(Ui(e))return!1;if(e=e.toLowerCase(),null!=Vi[e])return Vi[e];var t=document.createElement(e);return e.indexOf("-")>-1?Vi[e]=t.constructor===window.HTMLUnknownElement||t.constructor===window.HTMLElement:Vi[e]=/HTMLUnknownElement/.test(t.toString())}var Ki=m("text,number,password,search,email,tel,url");function qi(e){if("string"==typeof e){var t=document.querySelector(e);return t||document.createElement("div")}return e}function Wi(e,t){var n=document.createElement(e);return"select"!==e?n:(t.data&&t.data.attrs&&void 0!==t.data.attrs.multiple&&n.setAttribute("multiple","multiple"),n)}function Zi(e,t){return document.createElementNS(Pi[e],t)}function Gi(e){return document.createTextNode(e)}function Xi(e){return document.createComment(e)}function Yi(e,t,n){e.insertBefore(t,n)}function Qi(e,t){e.removeChild(t)}function eo(e,t){e.appendChild(t)}function to(e){return e.parentNode}function no(e){return e.nextSibling}function ro(e){return e.tagName}function io(e,t){e.textContent=t}function oo(e,t){e.setAttribute(t,"")}var ao=Object.freeze({createElement:Wi,createElementNS:Zi,createTextNode:Gi,createComment:Xi,insertBefore:Yi,removeChild:Qi,appendChild:eo,parentNode:to,nextSibling:no,tagName:ro,setTextContent:io,setStyleScope:oo}),so={create:function(e,t){co(t)},update:function(e,t){e.data.ref!==t.data.ref&&(co(e,!0),co(t))},destroy:function(e){co(e,!0)}};function co(e,t){var n=e.data.ref;if(r(n)){var i=e.context,o=e.componentInstance||e.elm,a=i.$refs;t?Array.isArray(a[n])?_(a[n],o):a[n]===o&&(a[n]=void 0):e.data.refInFor?Array.isArray(a[n])?a[n].indexOf(o)<0&&a[n].push(o):a[n]=[o]:a[n]=o}}var uo=new je("",{},[]),lo=["create","activate","update","remove","destroy"];function fo(e,t){return e.key===t.key&&(e.tag===t.tag&&e.isComment===t.isComment&&r(e.data)===r(t.data)&&po(e,t)||i(e.isAsyncPlaceholder)&&e.asyncFactory===t.asyncFactory&&n(t.asyncFactory.error))}function po(e,t){if("input"!==e.tag)return!0;var n,i=r(n=e.data)&&r(n=n.attrs)&&n.type,o=r(n=t.data)&&r(n=n.attrs)&&n.type;return i===o||Ki(i)&&Ki(o)}function vo(e,t,n){var i,o,a={};for(i=t;i<=n;++i)r(o=e[i].key)&&(a[o]=i);return a}function ho(e){var t,o,s={},c=e.modules,u=e.nodeOps;for(t=0;t<lo.length;++t)for(s[lo[t]]=[],o=0;o<c.length;++o)r(c[o][lo[t]])&&s[lo[t]].push(c[o][lo[t]]);function l(e){var t=u.parentNode(e);r(t)&&u.removeChild(t,e)}function f(e,t,n,o,a,c,l){if(r(e.elm)&&r(c)&&(e=c[l]=Le(e)),e.isRootInsert=!a,!function(e,t,n,o){var a=e.data;if(r(a)){var c=r(e.componentInstance)&&a.keepAlive;if(r(a=a.hook)&&r(a=a.init)&&a(e,!1),r(e.componentInstance))return p(e,t),d(n,e.elm,o),i(c)&&function(e,t,n,i){var o,a=e;for(;a.componentInstance;)if(a=a.componentInstance._vnode,r(o=a.data)&&r(o=o.transition)){for(o=0;o<s.activate.length;++o)s.activate[o](uo,a);t.push(a);break}d(n,e.elm,i)}(e,t,n,o),!0}}(e,t,n,o)){var f=e.data,h=e.children,m=e.tag;r(m)?(e.elm=e.ns?u.createElementNS(e.ns,m):u.createElement(m,e),g(e),v(e,h,t),r(f)&&y(e,t),d(n,e.elm,o)):i(e.isComment)?(e.elm=u.createComment(e.text),d(n,e.elm,o)):(e.elm=u.createTextNode(e.text),d(n,e.elm,o))}}function p(e,t){r(e.data.pendingInsert)&&(t.push.apply(t,e.data.pendingInsert),e.data.pendingInsert=null),e.elm=e.componentInstance.$el,h(e)?(y(e,t),g(e)):(co(e),t.push(e))}function d(e,t,n){r(e)&&(r(n)?u.parentNode(n)===e&&u.insertBefore(e,t,n):u.appendChild(e,t))}function v(e,t,n){if(Array.isArray(t)){0;for(var r=0;r<t.length;++r)f(t[r],n,e.elm,null,!0,t,r)}else a(e.text)&&u.appendChild(e.elm,u.createTextNode(String(e.text)))}function h(e){for(;e.componentInstance;)e=e.componentInstance._vnode;return r(e.tag)}function y(e,n){for(var i=0;i<s.create.length;++i)s.create[i](uo,e);r(t=e.data.hook)&&(r(t.create)&&t.create(uo,e),r(t.insert)&&n.push(e))}function g(e){var t;if(r(t=e.fnScopeId))u.setStyleScope(e.elm,t);else for(var n=e;n;)r(t=n.context)&&r(t=t.$options._scopeId)&&u.setStyleScope(e.elm,t),n=n.parent;r(t=ur)&&t!==e.context&&t!==e.fnContext&&r(t=t.$options._scopeId)&&u.setStyleScope(e.elm,t)}function _(e,t,n,r,i,o){for(;r<=i;++r)f(n[r],o,e,t,!1,n,r)}function b(e){var t,n,i=e.data;if(r(i))for(r(t=i.hook)&&r(t=t.destroy)&&t(e),t=0;t<s.destroy.length;++t)s.destroy[t](e);if(r(t=e.children))for(n=0;n<e.children.length;++n)b(e.children[n])}function $(e,t,n){for(;t<=n;++t){var i=e[t];r(i)&&(r(i.tag)?(w(i),b(i)):l(i.elm))}}function w(e,t){if(r(t)||r(e.data)){var n,i=s.remove.length+1;for(r(t)?t.listeners+=i:t=function(e,t){function n(){0==--n.listeners&&l(e)}return n.listeners=t,n}(e.elm,i),r(n=e.componentInstance)&&r(n=n._vnode)&&r(n.data)&&w(n,t),n=0;n<s.remove.length;++n)s.remove[n](e,t);r(n=e.data.hook)&&r(n=n.remove)?n(e,t):t()}else l(e.elm)}function x(e,t,n,i){for(var o=n;o<i;o++){var a=t[o];if(r(a)&&fo(e,a))return o}}function C(e,t,o,a,c,l){if(e!==t){r(t.elm)&&r(a)&&(t=a[c]=Le(t));var p=t.elm=e.elm;if(i(e.isAsyncPlaceholder))r(t.asyncFactory.resolved)?O(e.elm,t,o):t.isAsyncPlaceholder=!0;else if(i(t.isStatic)&&i(e.isStatic)&&t.key===e.key&&(i(t.isCloned)||i(t.isOnce)))t.componentInstance=e.componentInstance;else{var d,v=t.data;r(v)&&r(d=v.hook)&&r(d=d.prepatch)&&d(e,t);var m=e.children,y=t.children;if(r(v)&&h(t)){for(d=0;d<s.update.length;++d)s.update[d](e,t);r(d=v.hook)&&r(d=d.update)&&d(e,t)}n(t.text)?r(m)&&r(y)?m!==y&&function(e,t,i,o,a){var s,c,l,p=0,d=0,v=t.length-1,h=t[0],m=t[v],y=i.length-1,g=i[0],b=i[y],w=!a;for(;p<=v&&d<=y;)n(h)?h=t[++p]:n(m)?m=t[--v]:fo(h,g)?(C(h,g,o,i,d),h=t[++p],g=i[++d]):fo(m,b)?(C(m,b,o,i,y),m=t[--v],b=i[--y]):fo(h,b)?(C(h,b,o,i,y),w&&u.insertBefore(e,h.elm,u.nextSibling(m.elm)),h=t[++p],b=i[--y]):fo(m,g)?(C(m,g,o,i,d),w&&u.insertBefore(e,m.elm,h.elm),m=t[--v],g=i[++d]):(n(s)&&(s=vo(t,p,v)),n(c=r(g.key)?s[g.key]:x(g,t,p,v))?f(g,o,e,h.elm,!1,i,d):fo(l=t[c],g)?(C(l,g,o,i,d),t[c]=void 0,w&&u.insertBefore(e,l.elm,h.elm)):f(g,o,e,h.elm,!1,i,d),g=i[++d]);p>v?_(e,n(i[y+1])?null:i[y+1].elm,i,d,y,o):d>y&&$(t,p,v)}(p,m,y,o,l):r(y)?(r(e.text)&&u.setTextContent(p,""),_(p,null,y,0,y.length-1,o)):r(m)?$(m,0,m.length-1):r(e.text)&&u.setTextContent(p,""):e.text!==t.text&&u.setTextContent(p,t.text),r(v)&&r(d=v.hook)&&r(d=d.postpatch)&&d(e,t)}}}function A(e,t,n){if(i(n)&&r(e.parent))e.parent.data.pendingInsert=t;else for(var o=0;o<t.length;++o)t[o].data.hook.insert(t[o])}var k=m("attrs,class,staticClass,staticStyle,key");function O(e,t,n,o){var a,s=t.tag,c=t.data,u=t.children;if(o=o||c&&c.pre,t.elm=e,i(t.isComment)&&r(t.asyncFactory))return t.isAsyncPlaceholder=!0,!0;if(r(c)&&(r(a=c.hook)&&r(a=a.init)&&a(t,!0),r(a=t.componentInstance)))return p(t,n),!0;if(r(s)){if(r(u))if(e.hasChildNodes())if(r(a=c)&&r(a=a.domProps)&&r(a=a.innerHTML)){if(a!==e.innerHTML)return!1}else{for(var l=!0,f=e.firstChild,d=0;d<u.length;d++){if(!f||!O(f,u[d],n,o)){l=!1;break}f=f.nextSibling}if(!l||f)return!1}else v(t,u,n);if(r(c)){var h=!1;for(var m in c)if(!k(m)){h=!0,y(t,n);break}!h&&c.class&&Zt(c.class)}}else e.data!==t.text&&(e.data=t.text);return!0}return function(e,t,o,a){if(!n(t)){var c,l=!1,p=[];if(n(e))l=!0,f(t,p);else{var d=r(e.nodeType);if(!d&&fo(e,t))C(e,t,p,null,null,a);else{if(d){if(1===e.nodeType&&e.hasAttribute(B)&&(e.removeAttribute(B),o=!0),i(o)&&O(e,t,p))return A(t,p,!0),e;c=e,e=new je(u.tagName(c).toLowerCase(),{},[],void 0,c)}var v=e.elm,m=u.parentNode(v);if(f(t,p,v._leaveCb?null:m,u.nextSibling(v)),r(t.parent))for(var y=t.parent,g=h(t);y;){for(var _=0;_<s.destroy.length;++_)s.destroy[_](y);if(y.elm=t.elm,g){for(var w=0;w<s.create.length;++w)s.create[w](uo,y);var x=y.data.hook.insert;if(x.merged)for(var k=1;k<x.fns.length;k++)x.fns[k]()}else co(y);y=y.parent}r(m)?$([e],0,0):r(e.tag)&&b(e)}}return A(t,p,l),t.elm}r(e)&&b(e)}}var mo={create:yo,update:yo,destroy:function(e){yo(e,uo)}};function yo(e,t){(e.data.directives||t.data.directives)&&go(e,t)}function go(e,t){var n,r,i,o=e===uo,a=t===uo,s=bo(e.data.directives,e.context),c=bo(t.data.directives,t.context),u=[],l=[];for(n in c)r=s[n],i=c[n],r?(i.oldValue=r.value,i.oldArg=r.arg,wo(i,"update",t,e),i.def&&i.def.componentUpdated&&l.push(i)):(wo(i,"bind",t,e),i.def&&i.def.inserted&&u.push(i));if(u.length){var f=function(){for(var n=0;n<u.length;n++)wo(u[n],"inserted",t,e)};o?en(t,"insert",f):f()}if(l.length&&en(t,"postpatch",function(){for(var n=0;n<l.length;n++)wo(l[n],"componentUpdated",t,e)}),!o)for(n in s)c[n]||wo(s[n],"unbind",e,e,a)}var _o=Object.create(null);function bo(e,t){var n,r,i=Object.create(null);if(!e)return i;for(n=0;n<e.length;n++)(r=e[n]).modifiers||(r.modifiers=_o),i[$o(r)]=r,r.def=lt(t.$options,"directives",r.name,!0);return i}function $o(e){return e.rawName||e.name+"."+Object.keys(e.modifiers||{}).join(".")}function wo(e,t,n,r,i){var o=e.def&&e.def[t];if(o)try{o(n.elm,e,n,r,i)}catch(Xl){xt(Xl,n.context,"directive "+e.name+" "+t+" hook")}}var xo=[so,mo];function Co(e,t){var i=t.componentOptions;if(!(r(i)&&!1===i.Ctor.options.inheritAttrs||n(e.data.attrs)&&n(t.data.attrs))){var o,a,s=t.elm,c=e.data.attrs||{},u=t.data.attrs||{};for(o in r(u.__ob__)&&(u=t.data.attrs=E({},u)),u)a=u[o],c[o]!==a&&Ao(s,o,a);for(o in(ne||ie)&&u.value!==c.value&&Ao(s,"value",u.value),c)n(u[o])&&(Si(o)?s.removeAttributeNS(Oi,Ti(o)):xi(o)||s.removeAttribute(o))}}function Ao(e,t,n){e.tagName.indexOf("-")>-1?ko(e,t,n):ki(t)?Ni(n)?e.removeAttribute(t):(n="allowfullscreen"===t&&"EMBED"===e.tagName?"true":t,e.setAttribute(t,n)):xi(t)?e.setAttribute(t,Ai(t,n)):Si(t)?Ni(n)?e.removeAttributeNS(Oi,Ti(t)):e.setAttributeNS(Oi,t,n):ko(e,t,n)}function ko(e,t,n){if(Ni(n))e.removeAttribute(t);else{if(ne&&!re&&"TEXTAREA"===e.tagName&&"placeholder"===t&&""!==n&&!e.__ieph){var r=function(t){t.stopImmediatePropagation(),e.removeEventListener("input",r)};e.addEventListener("input",r),e.__ieph=!0}e.setAttribute(t,n)}}var Oo={create:Co,update:Co};function So(e,t){var i=t.elm,o=t.data,a=e.data;if(!(n(o.staticClass)&&n(o.class)&&(n(a)||n(a.staticClass)&&n(a.class)))){var s=ji(t),c=i._transitionClasses;r(c)&&(s=Di(s,Li(c))),s!==i._prevClass&&(i.setAttribute("class",s),i._prevClass=s)}}var To,No,jo,Eo,Mo,Do,Lo,Io={create:So,update:So},Fo=/[\w).+\-_$\]]/;function Po(e){var t,n,r,i,o,a=!1,s=!1,c=!1,u=!1,l=0,f=0,p=0,d=0;for(r=0;r<e.length;r++)if(n=t,t=e.charCodeAt(r),a)39===t&&92!==n&&(a=!1);else if(s)34===t&&92!==n&&(s=!1);else if(c)96===t&&92!==n&&(c=!1);else if(u)47===t&&92!==n&&(u=!1);else if(124!==t||124===e.charCodeAt(r+1)||124===e.charCodeAt(r-1)||l||f||p){switch(t){case 34:s=!0;break;case 39:a=!0;break;case 96:c=!0;break;case 40:p++;break;case 41:p--;break;case 91:f++;break;case 93:f--;break;case 123:l++;break;case 125:l--}if(47===t){for(var v=r-1,h=void 0;v>=0&&" "===(h=e.charAt(v));v--);h&&Fo.test(h)||(u=!0)}}else void 0===i?(d=r+1,i=e.slice(0,r).trim()):m();function m(){(o||(o=[])).push(e.slice(d,r).trim()),d=r+1}if(void 0===i?i=e.slice(0,r).trim():0!==d&&m(),o)for(r=0;r<o.length;r++)i=Ro(i,o[r]);return i}function Ro(e,t){var n=t.indexOf("(");if(n<0)return'_f("'+t+'")('+e+")";var r=t.slice(0,n),i=t.slice(n+1);return'_f("'+r+'")('+e+(")"!==i?","+i:i)}function Ho(e,t){console.error("[Vue compiler]: "+e)}function Bo(e,t){return e?e.map(function(e){return e[t]}).filter(function(e){return e}):[]}function Uo(e,t,n,r,i){(e.props||(e.props=[])).push(Yo({name:t,value:n,dynamic:i},r)),e.plain=!1}function zo(e,t,n,r,i){(i?e.dynamicAttrs||(e.dynamicAttrs=[]):e.attrs||(e.attrs=[])).push(Yo({name:t,value:n,dynamic:i},r)),e.plain=!1}function Vo(e,t,n,r){e.attrsMap[t]=n,e.attrsList.push(Yo({name:t,value:n},r))}function Jo(e,t,n,r,i,o,a,s){(e.directives||(e.directives=[])).push(Yo({name:t,rawName:n,value:r,arg:i,isDynamicArg:o,modifiers:a},s)),e.plain=!1}function Ko(e,t,n){return n?"_p("+t+',"'+e+'")':e+t}function qo(e,n,r,i,o,a,s,c){var u;(i=i||t).right?c?n="("+n+")==='click'?'contextmenu':("+n+")":"click"===n&&(n="contextmenu",delete i.right):i.middle&&(c?n="("+n+")==='click'?'mouseup':("+n+")":"click"===n&&(n="mouseup")),i.capture&&(delete i.capture,n=Ko("!",n,c)),i.once&&(delete i.once,n=Ko("~",n,c)),i.passive&&(delete i.passive,n=Ko("&",n,c)),i.native?(delete i.native,u=e.nativeEvents||(e.nativeEvents={})):u=e.events||(e.events={});var l=Yo({value:r.trim(),dynamic:c},s);i!==t&&(l.modifiers=i);var f=u[n];Array.isArray(f)?o?f.unshift(l):f.push(l):u[n]=f?o?[l,f]:[f,l]:l,e.plain=!1}function Wo(e,t){return e.rawAttrsMap[":"+t]||e.rawAttrsMap["v-bind:"+t]||e.rawAttrsMap[t]}function Zo(e,t,n){var r=Go(e,":"+t)||Go(e,"v-bind:"+t);if(null!=r)return Po(r);if(!1!==n){var i=Go(e,t);if(null!=i)return JSON.stringify(i)}}function Go(e,t,n){var r;if(null!=(r=e.attrsMap[t]))for(var i=e.attrsList,o=0,a=i.length;o<a;o++)if(i[o].name===t){i.splice(o,1);break}return n&&delete e.attrsMap[t],r}function Xo(e,t){for(var n=e.attrsList,r=0,i=n.length;r<i;r++){var o=n[r];if(t.test(o.name))return n.splice(r,1),o}}function Yo(e,t){return t&&(null!=t.start&&(e.start=t.start),null!=t.end&&(e.end=t.end)),e}function Qo(e,t,n){var r=n||{},i=r.number,o="$$v";r.trim&&(o="(typeof $$v === 'string'? $$v.trim(): $$v)"),i&&(o="_n("+o+")");var a=ea(t,o);e.model={value:"("+t+")",expression:JSON.stringify(t),callback:"function ($$v) {"+a+"}"}}function ea(e,t){var n=ta(e);return null===n.key?e+"="+t:"$set("+n.exp+", "+n.key+", "+t+")"}function ta(e){if(e=e.trim(),To=e.length,e.indexOf("[")<0||e.lastIndexOf("]")<To-1)return(Eo=e.lastIndexOf("."))>-1?{exp:e.slice(0,Eo),key:'"'+e.slice(Eo+1)+'"'}:{exp:e,key:null};for(No=e,Eo=Mo=Do=0;!ra();)ia(jo=na())?aa(jo):91===jo&&oa(jo);return{exp:e.slice(0,Mo),key:e.slice(Mo+1,Do)}}function na(){return No.charCodeAt(++Eo)}function ra(){return Eo>=To}function ia(e){return 34===e||39===e}function oa(e){var t=1;for(Mo=Eo;!ra();)if(ia(e=na()))aa(e);else if(91===e&&t++,93===e&&t--,0===t){Do=Eo;break}}function aa(e){for(var t=e;!ra()&&(e=na())!==t;);}var sa,ca="__r",ua="__c";function la(e,t,n){Lo=n;var r=t.value,i=t.modifiers,o=e.tag,a=e.attrsMap.type;if(e.component)return Qo(e,r,i),!1;if("select"===o)da(e,r,i);else if("input"===o&&"checkbox"===a)fa(e,r,i);else if("input"===o&&"radio"===a)pa(e,r,i);else if("input"===o||"textarea"===o)va(e,r,i);else{if(!V.isReservedTag(o))return Qo(e,r,i),!1}return!0}function fa(e,t,n){var r=n&&n.number,i=Zo(e,"value")||"null",o=Zo(e,"true-value")||"true",a=Zo(e,"false-value")||"false";Uo(e,"checked","Array.isArray("+t+")?_i("+t+","+i+")>-1"+("true"===o?":("+t+")":":_q("+t+","+o+")")),qo(e,"change","var $$a="+t+",$$el=$event.target,$$c=$$el.checked?("+o+"):("+a+");if(Array.isArray($$a)){var $$v="+(r?"_n("+i+")":i)+",$$i=_i($$a,$$v);if($$el.checked){$$i<0&&("+ea(t,"$$a.concat([$$v])")+")}else{$$i>-1&&("+ea(t,"$$a.slice(0,$$i).concat($$a.slice($$i+1))")+")}}else{"+ea(t,"$$c")+"}",null,!0)}function pa(e,t,n){var r=n&&n.number,i=Zo(e,"value")||"null";Uo(e,"checked","_q("+t+","+(i=r?"_n("+i+")":i)+")"),qo(e,"change",ea(t,i),null,!0)}function da(e,t,n){var r="var $$selectedVal = "+('Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = "_value" in o ? o._value : o.value;return '+(n&&n.number?"_n(val)":"val")+"})")+";";qo(e,"change",r=r+" "+ea(t,"$event.target.multiple ? $$selectedVal : $$selectedVal[0]"),null,!0)}function va(e,t,n){var r=e.attrsMap.type,i=n||{},o=i.lazy,a=i.number,s=i.trim,c=!o&&"range"!==r,u=o?"change":"range"===r?ca:"input",l="$event.target.value";s&&(l="$event.target.value.trim()"),a&&(l="_n("+l+")");var f=ea(t,l);c&&(f="if($event.target.composing)return;"+f),Uo(e,"value","("+t+")"),qo(e,u,f,null,!0),(s||a)&&qo(e,"blur","$forceUpdate()")}function ha(e){if(r(e[ca])){var t=ne?"change":"input";e[t]=[].concat(e[ca],e[t]||[]),delete e[ca]}r(e[ua])&&(e.change=[].concat(e[ua],e.change||[]),delete e[ua])}function ma(e,t,n){var r=sa;return function i(){null!==t.apply(null,arguments)&&_a(e,i,n,r)}}var ya=Rt&&!(ue&&Number(ue[1])<=53);function ga(e,t,n,r){if(ya){var i=Tr,o=t;t=o._wrapper=function(e){if(e.target===e.currentTarget||e.timeStamp>=i||e.timeStamp<=0||e.target.ownerDocument!==document)return o.apply(this,arguments)}}sa.addEventListener(e,t,fe?{capture:n,passive:r}:n)}function _a(e,t,n,r){(r||sa).removeEventListener(e,t._wrapper||t,n)}function ba(e,t){if(!n(e.data.on)||!n(t.data.on)){var r=t.data.on||{},i=e.data.on||{};sa=t.elm,ha(r),Qt(r,i,ga,_a,ma,t.context),sa=void 0}}var $a,wa={create:ba,update:ba};function xa(e,t){if(!n(e.data.domProps)||!n(t.data.domProps)){var i,o,a=t.elm,s=e.data.domProps||{},c=t.data.domProps||{};for(i in r(c.__ob__)&&(c=t.data.domProps=E({},c)),s)i in c||(a[i]="");for(i in c){if(o=c[i],"textContent"===i||"innerHTML"===i){if(t.children&&(t.children.length=0),o===s[i])continue;1===a.childNodes.length&&a.removeChild(a.childNodes[0])}if("value"===i&&"PROGRESS"!==a.tagName){a._value=o;var u=n(o)?"":String(o);Ca(a,u)&&(a.value=u)}else if("innerHTML"===i&&Hi(a.tagName)&&n(a.innerHTML)){($a=$a||document.createElement("div")).innerHTML="<svg>"+o+"</svg>";for(var l=$a.firstChild;a.firstChild;)a.removeChild(a.firstChild);for(;l.firstChild;)a.appendChild(l.firstChild)}else if(o!==s[i])try{a[i]=o}catch(Xl){}}}}function Ca(e,t){return!e.composing&&("OPTION"===e.tagName||Aa(e,t)||ka(e,t))}function Aa(e,t){var n=!0;try{n=document.activeElement!==e}catch(Xl){}return n&&e.value!==t}function ka(e,t){var n=e.value,i=e._vModifiers;if(r(i)){if(i.number)return h(n)!==h(t);if(i.trim)return n.trim()!==t.trim()}return n!==t}var Oa={create:xa,update:xa},Sa=w(function(e){var t={},n=/:(.+)/;return e.split(/;(?![^(]*\))/g).forEach(function(e){if(e){var r=e.split(n);r.length>1&&(t[r[0].trim()]=r[1].trim())}}),t});function Ta(e){var t=Na(e.style);return e.staticStyle?E(e.staticStyle,t):t}function Na(e){return Array.isArray(e)?M(e):"string"==typeof e?Sa(e):e}function ja(e,t){var n,r={};if(t)for(var i=e;i.componentInstance;)(i=i.componentInstance._vnode)&&i.data&&(n=Ta(i.data))&&E(r,n);(n=Ta(e.data))&&E(r,n);for(var o=e;o=o.parent;)o.data&&(n=Ta(o.data))&&E(r,n);return r}var Ea,Ma=/^--/,Da=/\s*!important$/,La=function(e,t,n){if(Ma.test(t))e.style.setProperty(t,n);else if(Da.test(n))e.style.setProperty(O(t),n.replace(Da,""),"important");else{var r=Fa(t);if(Array.isArray(n))for(var i=0,o=n.length;i<o;i++)e.style[r]=n[i];else e.style[r]=n}},Ia=["Webkit","Moz","ms"],Fa=w(function(e){if(Ea=Ea||document.createElement("div").style,"filter"!==(e=C(e))&&e in Ea)return e;for(var t=e.charAt(0).toUpperCase()+e.slice(1),n=0;n<Ia.length;n++){var r=Ia[n]+t;if(r in Ea)return r}});function Pa(e,t){var i=t.data,o=e.data;if(!(n(i.staticStyle)&&n(i.style)&&n(o.staticStyle)&&n(o.style))){var a,s,c=t.elm,u=o.staticStyle,l=o.normalizedStyle||o.style||{},f=u||l,p=Na(t.data.style)||{};t.data.normalizedStyle=r(p.__ob__)?E({},p):p;var d=ja(t,!0);for(s in f)n(d[s])&&La(c,s,"");for(s in d)(a=d[s])!==f[s]&&La(c,s,null==a?"":a)}}var Ra={create:Pa,update:Pa},Ha=/\s+/;function Ba(e,t){if(t&&(t=t.trim()))if(e.classList)t.indexOf(" ")>-1?t.split(Ha).forEach(function(t){return e.classList.add(t)}):e.classList.add(t);else{var n=" "+(e.getAttribute("class")||"")+" ";n.indexOf(" "+t+" ")<0&&e.setAttribute("class",(n+t).trim())}}function Ua(e,t){if(t&&(t=t.trim()))if(e.classList)t.indexOf(" ")>-1?t.split(Ha).forEach(function(t){return e.classList.remove(t)}):e.classList.remove(t),e.classList.length||e.removeAttribute("class");else{for(var n=" "+(e.getAttribute("class")||"")+" ",r=" "+t+" ";n.indexOf(r)>=0;)n=n.replace(r," ");(n=n.trim())?e.setAttribute("class",n):e.removeAttribute("class")}}function za(e){if(e){if("object"==typeof e){var t={};return!1!==e.css&&E(t,Va(e.name||"v")),E(t,e),t}return"string"==typeof e?Va(e):void 0}}var Va=w(function(e){return{enterClass:e+"-enter",enterToClass:e+"-enter-to",enterActiveClass:e+"-enter-active",leaveClass:e+"-leave",leaveToClass:e+"-leave-to",leaveActiveClass:e+"-leave-active"}}),Ja=Y&&!re,Ka="transition",qa="animation",Wa="transition",Za="transitionend",Ga="animation",Xa="animationend";Ja&&(void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend&&(Wa="WebkitTransition",Za="webkitTransitionEnd"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend&&(Ga="WebkitAnimation",Xa="webkitAnimationEnd"));var Ya=Y?window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout:function(e){return e()};function Qa(e){Ya(function(){Ya(e)})}function es(e,t){var n=e._transitionClasses||(e._transitionClasses=[]);n.indexOf(t)<0&&(n.push(t),Ba(e,t))}function ts(e,t){e._transitionClasses&&_(e._transitionClasses,t),Ua(e,t)}function ns(e,t,n){var r=is(e,t),i=r.type,o=r.timeout,a=r.propCount;if(!i)return n();var s=i===Ka?Za:Xa,c=0,u=function(){e.removeEventListener(s,l),n()},l=function(t){t.target===e&&++c>=a&&u()};setTimeout(function(){c<a&&u()},o+1),e.addEventListener(s,l)}var rs=/\b(transform|all)(,|$)/;function is(e,t){var n,r=window.getComputedStyle(e),i=(r[Wa+"Delay"]||"").split(", "),o=(r[Wa+"Duration"]||"").split(", "),a=os(i,o),s=(r[Ga+"Delay"]||"").split(", "),c=(r[Ga+"Duration"]||"").split(", "),u=os(s,c),l=0,f=0;return t===Ka?a>0&&(n=Ka,l=a,f=o.length):t===qa?u>0&&(n=qa,l=u,f=c.length):f=(n=(l=Math.max(a,u))>0?a>u?Ka:qa:null)?n===Ka?o.length:c.length:0,{type:n,timeout:l,propCount:f,hasTransform:n===Ka&&rs.test(r[Wa+"Property"])}}function os(e,t){for(;e.length<t.length;)e=e.concat(e);return Math.max.apply(null,t.map(function(t,n){return as(t)+as(e[n])}))}function as(e){return 1e3*Number(e.slice(0,-1).replace(",","."))}function ss(e,t){var i=e.elm;r(i._leaveCb)&&(i._leaveCb.cancelled=!0,i._leaveCb());var o=za(e.data.transition);if(!n(o)&&!r(i._enterCb)&&1===i.nodeType){for(var a=o.css,c=o.type,u=o.enterClass,l=o.enterToClass,f=o.enterActiveClass,p=o.appearClass,d=o.appearToClass,v=o.appearActiveClass,m=o.beforeEnter,y=o.enter,g=o.afterEnter,_=o.enterCancelled,b=o.beforeAppear,$=o.appear,w=o.afterAppear,x=o.appearCancelled,C=o.duration,A=ur,k=ur.$vnode;k&&k.parent;)A=k.context,k=k.parent;var O=!A._isMounted||!e.isRootInsert;if(!O||$||""===$){var S=O&&p?p:u,T=O&&v?v:f,N=O&&d?d:l,j=O&&b||m,E=O&&"function"==typeof $?$:y,M=O&&w||g,D=O&&x||_,L=h(s(C)?C.enter:C);0;var I=!1!==a&&!re,F=fs(E),P=i._enterCb=H(function(){I&&(ts(i,N),ts(i,T)),P.cancelled?(I&&ts(i,S),D&&D(i)):M&&M(i),i._enterCb=null});e.data.show||en(e,"insert",function(){var t=i.parentNode,n=t&&t._pending&&t._pending[e.key];n&&n.tag===e.tag&&n.elm._leaveCb&&n.elm._leaveCb(),E&&E(i,P)}),j&&j(i),I&&(es(i,S),es(i,T),Qa(function(){ts(i,S),P.cancelled||(es(i,N),F||(ls(L)?setTimeout(P,L):ns(i,c,P)))})),e.data.show&&(t&&t(),E&&E(i,P)),I||F||P()}}}function cs(e,t){var i=e.elm;r(i._enterCb)&&(i._enterCb.cancelled=!0,i._enterCb());var o=za(e.data.transition);if(n(o)||1!==i.nodeType)return t();if(!r(i._leaveCb)){var a=o.css,c=o.type,u=o.leaveClass,l=o.leaveToClass,f=o.leaveActiveClass,p=o.beforeLeave,d=o.leave,v=o.afterLeave,m=o.leaveCancelled,y=o.delayLeave,g=o.duration,_=!1!==a&&!re,b=fs(d),$=h(s(g)?g.leave:g);0;var w=i._leaveCb=H(function(){i.parentNode&&i.parentNode._pending&&(i.parentNode._pending[e.key]=null),_&&(ts(i,l),ts(i,f)),w.cancelled?(_&&ts(i,u),m&&m(i)):(t(),v&&v(i)),i._leaveCb=null});y?y(x):x()}function x(){w.cancelled||(!e.data.show&&i.parentNode&&((i.parentNode._pending||(i.parentNode._pending={}))[e.key]=e),p&&p(i),_&&(es(i,u),es(i,f),Qa(function(){ts(i,u),w.cancelled||(es(i,l),b||(ls($)?setTimeout(w,$):ns(i,c,w)))})),d&&d(i,w),_||b||w())}}function us(e,t,n){"number"!=typeof e?we("<transition> explicit "+t+" duration is not a valid number - got "+JSON.stringify(e)+".",n.context):isNaN(e)&&we("<transition> explicit "+t+" duration is NaN - the duration expression might be incorrect.",n.context)}function ls(e){return"number"==typeof e&&!isNaN(e)}function fs(e){if(n(e))return!1;var t=e.fns;return r(t)?fs(Array.isArray(t)?t[0]:t):(e._length||e.length)>1}function ps(e,t){!0!==t.data.show&&ss(t)}var ds=Y?{create:ps,activate:ps,remove:function(e,t){!0!==e.data.show?cs(e,t):t()}}:{},vs=[Oo,Io,wa,Oa,Ra,ds],hs=vs.concat(xo),ms=ho({nodeOps:ao,modules:hs});re&&document.addEventListener("selectionchange",function(){var e=document.activeElement;e&&e.vmodel&&Cs(e,"input")});var ys={inserted:function(e,t,n,r){"select"===n.tag?(r.elm&&!r.elm._vOptions?en(n,"postpatch",function(){ys.componentUpdated(e,t,n)}):gs(e,t,n.context),e._vOptions=[].map.call(e.options,$s)):("textarea"===n.tag||Ki(e.type))&&(e._vModifiers=t.modifiers,t.modifiers.lazy||(e.addEventListener("compositionstart",ws),e.addEventListener("compositionend",xs),e.addEventListener("change",xs),re&&(e.vmodel=!0)))},componentUpdated:function(e,t,n){if("select"===n.tag){gs(e,t,n.context);var r=e._vOptions,i=e._vOptions=[].map.call(e.options,$s);if(i.some(function(e,t){return!P(e,r[t])}))(e.multiple?t.value.some(function(e){return bs(e,i)}):t.value!==t.oldValue&&bs(t.value,i))&&Cs(e,"change")}}};function gs(e,t,n){_s(e,t,n),(ne||ie)&&setTimeout(function(){_s(e,t,n)},0)}function _s(e,t,n){var r=t.value,i=e.multiple;if(!i||Array.isArray(r)){for(var o,a,s=0,c=e.options.length;s<c;s++)if(a=e.options[s],i)o=R(r,$s(a))>-1,a.selected!==o&&(a.selected=o);else if(P($s(a),r))return void(e.selectedIndex!==s&&(e.selectedIndex=s));i||(e.selectedIndex=-1)}}function bs(e,t){return t.every(function(t){return!P(t,e)})}function $s(e){return"_value"in e?e._value:e.value}function ws(e){e.target.composing=!0}function xs(e){e.target.composing&&(e.target.composing=!1,Cs(e.target,"input"))}function Cs(e,t){var n=document.createEvent("HTMLEvents");n.initEvent(t,!0,!0),e.dispatchEvent(n)}function As(e){return!e.componentInstance||e.data&&e.data.transition?e:As(e.componentInstance._vnode)}var ks={bind:function(e,t,n){var r=t.value,i=(n=As(n)).data&&n.data.transition,o=e.__vOriginalDisplay="none"===e.style.display?"":e.style.display;r&&i?(n.data.show=!0,ss(n,function(){e.style.display=o})):e.style.display=r?o:"none"},update:function(e,t,n){var r=t.value;!r!=!t.oldValue&&((n=As(n)).data&&n.data.transition?(n.data.show=!0,r?ss(n,function(){e.style.display=e.__vOriginalDisplay}):cs(n,function(){e.style.display="none"})):e.style.display=r?e.__vOriginalDisplay:"none")},unbind:function(e,t,n,r,i){i||(e.style.display=e.__vOriginalDisplay)}},Os={model:ys,show:ks},Ss={name:String,appear:Boolean,css:Boolean,mode:String,type:String,enterClass:String,leaveClass:String,enterToClass:String,leaveToClass:String,enterActiveClass:String,leaveActiveClass:String,appearClass:String,appearActiveClass:String,appearToClass:String,duration:[Number,String,Object]};function Ts(e){var t=e&&e.componentOptions;return t&&t.Ctor.options.abstract?Ts(nr(t.children)):e}function Ns(e){var t={},n=e.$options;for(var r in n.propsData)t[r]=e[r];var i=n._parentListeners;for(var o in i)t[C(o)]=i[o];return t}function js(e,t){if(/\d-keep-alive$/.test(t.tag))return e("keep-alive",{props:t.componentOptions.propsData})}function Es(e){for(;e=e.parent;)if(e.data.transition)return!0}function Ms(e,t){return t.key===e.key&&t.tag===e.tag}var Ds=function(e){return e.tag||tr(e)},Ls=function(e){return"show"===e.name},Is={name:"transition",props:Ss,abstract:!0,render:function(e){var t=this,n=this.$slots.default;if(n&&(n=n.filter(Ds)).length){0;var r=this.mode;0;var i=n[0];if(Es(this.$vnode))return i;var o=Ts(i);if(!o)return i;if(this._leaving)return js(e,i);var s="__transition-"+this._uid+"-";o.key=null==o.key?o.isComment?s+"comment":s+o.tag:a(o.key)?0===String(o.key).indexOf(s)?o.key:s+o.key:o.key;var c=(o.data||(o.data={})).transition=Ns(this),u=this._vnode,l=Ts(u);if(o.data.directives&&o.data.directives.some(Ls)&&(o.data.show=!0),l&&l.data&&!Ms(o,l)&&!tr(l)&&(!l.componentInstance||!l.componentInstance._vnode.isComment)){var f=l.data.transition=E({},c);if("out-in"===r)return this._leaving=!0,en(f,"afterLeave",function(){t._leaving=!1,t.$forceUpdate()}),js(e,i);if("in-out"===r){if(tr(o))return u;var p,d=function(){p()};en(c,"afterEnter",d),en(c,"enterCancelled",d),en(f,"delayLeave",function(e){p=e})}}return i}}},Fs=E({tag:String,moveClass:String},Ss);delete Fs.mode;var Ps={props:Fs,beforeMount:function(){var e=this,t=this._update;this._update=function(n,r){var i=fr(e);e.__patch__(e._vnode,e.kept,!1,!0),e._vnode=e.kept,i(),t.call(e,n,r)}},render:function(e){for(var t=this.tag||this.$vnode.data.tag||"span",n=Object.create(null),r=this.prevChildren=this.children,i=this.$slots.default||[],o=this.children=[],a=Ns(this),s=0;s<i.length;s++){var c=i[s];if(c.tag)if(null!=c.key&&0!==String(c.key).indexOf("__vlist"))o.push(c),n[c.key]=c,(c.data||(c.data={})).transition=a;else;}if(r){for(var u=[],l=[],f=0;f<r.length;f++){var p=r[f];p.data.transition=a,p.data.pos=p.elm.getBoundingClientRect(),n[p.key]?u.push(p):l.push(p)}this.kept=e(t,null,u),this.removed=l}return e(t,null,o)},updated:function(){var e=this.prevChildren,t=this.moveClass||(this.name||"v")+"-move";e.length&&this.hasMove(e[0].elm,t)&&(e.forEach(Rs),e.forEach(Hs),e.forEach(Bs),this._reflow=document.body.offsetHeight,e.forEach(function(e){if(e.data.moved){var n=e.elm,r=n.style;es(n,t),r.transform=r.WebkitTransform=r.transitionDuration="",n.addEventListener(Za,n._moveCb=function e(r){r&&r.target!==n||r&&!/transform$/.test(r.propertyName)||(n.removeEventListener(Za,e),n._moveCb=null,ts(n,t))})}}))},methods:{hasMove:function(e,t){if(!Ja)return!1;if(this._hasMove)return this._hasMove;var n=e.cloneNode();e._transitionClasses&&e._transitionClasses.forEach(function(e){Ua(n,e)}),Ba(n,t),n.style.display="none",this.$el.appendChild(n);var r=is(n);return this.$el.removeChild(n),this._hasMove=r.hasTransform}}};function Rs(e){e.elm._moveCb&&e.elm._moveCb(),e.elm._enterCb&&e.elm._enterCb()}function Hs(e){e.data.newPos=e.elm.getBoundingClientRect()}function Bs(e){var t=e.data.pos,n=e.data.newPos,r=t.left-n.left,i=t.top-n.top;if(r||i){e.data.moved=!0;var o=e.elm.style;o.transform=o.WebkitTransform="translate("+r+"px,"+i+"px)",o.transitionDuration="0s"}}var Us={Transition:Is,TransitionGroup:Ps};oi.config.mustUseProp=wi,oi.config.isReservedTag=Ui,oi.config.isReservedAttr=bi,oi.config.getTagNamespace=zi,oi.config.isUnknownElement=Ji,E(oi.options.directives,Os),E(oi.options.components,Us),oi.prototype.__patch__=Y?ms:D,oi.prototype.$mount=function(e,t){return vr(this,e=e&&Y?qi(e):void 0,t)},Y&&setTimeout(function(){V.devtools&&ve&&ve.emit("init",oi)},0);var zs=/\{\{((?:.|\r?\n)+?)\}\}/g,Vs=/[-.*+?^${}()|[\]\/\\]/g,Js=w(function(e){var t=e[0].replace(Vs,"\\$&"),n=e[1].replace(Vs,"\\$&");return new RegExp(t+"((?:.|\\n)+?)"+n,"g")});function Ks(e,t){var n=t?Js(t):zs;if(n.test(e)){for(var r,i,o,a=[],s=[],c=n.lastIndex=0;r=n.exec(e);){(i=r.index)>c&&(s.push(o=e.slice(c,i)),a.push(JSON.stringify(o)));var u=Po(r[1].trim());a.push("_s("+u+")"),s.push({"@binding":u}),c=i+r[0].length}return c<e.length&&(s.push(o=e.slice(c)),a.push(JSON.stringify(o))),{expression:a.join("+"),tokens:s}}}function qs(e,t){t.warn;var n=Go(e,"class");n&&(e.staticClass=JSON.stringify(n));var r=Zo(e,"class",!1);r&&(e.classBinding=r)}function Ws(e){var t="";return e.staticClass&&(t+="staticClass:"+e.staticClass+","),e.classBinding&&(t+="class:"+e.classBinding+","),t}var Zs={staticKeys:["staticClass"],transformNode:qs,genData:Ws};function Gs(e,t){t.warn;var n=Go(e,"style");n&&(e.staticStyle=JSON.stringify(Sa(n)));var r=Zo(e,"style",!1);r&&(e.styleBinding=r)}function Xs(e){var t="";return e.staticStyle&&(t+="staticStyle:"+e.staticStyle+","),e.styleBinding&&(t+="style:("+e.styleBinding+"),"),t}var Ys,Qs={staticKeys:["staticStyle"],transformNode:Gs,genData:Xs},ec={decode:function(e){return(Ys=Ys||document.createElement("div")).innerHTML=e,Ys.textContent}},tc=m("area,base,br,col,embed,frame,hr,img,input,isindex,keygen,link,meta,param,source,track,wbr"),nc=m("colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr,source"),rc=m("address,article,aside,base,blockquote,body,caption,col,colgroup,dd,details,dialog,div,dl,dt,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,head,header,hgroup,hr,html,legend,li,menuitem,meta,optgroup,option,param,rp,rt,source,style,summary,tbody,td,tfoot,th,thead,title,tr,track"),ic=/^\s*([^\s"'<>\/=]+)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/,oc=/^\s*((?:v-[\w-]+:|@|:|#)\[[^=]+\][^\s"'<>\/=]*)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/,ac="[a-zA-Z_][\\-\\.0-9_a-zA-Z"+J.source+"]*",sc="((?:"+ac+"\\:)?"+ac+")",cc=new RegExp("^<"+sc),uc=/^\s*(\/?)>/,lc=new RegExp("^<\\/"+sc+"[^>]*>"),fc=/^<!DOCTYPE [^>]+>/i,pc=/^<!\--/,dc=/^<!\[/,vc=m("script,style,textarea",!0),hc={},mc={"&lt;":"<","&gt;":">","&quot;":'"',"&amp;":"&","&#10;":"\n","&#9;":"\t","&#39;":"'"},yc=/&(?:lt|gt|quot|amp|#39);/g,gc=/&(?:lt|gt|quot|amp|#39|#10|#9);/g,_c=m("pre,textarea",!0),bc=function(e,t){return e&&_c(e)&&"\n"===t[0]};function $c(e,t){var n=t?gc:yc;return e.replace(n,function(e){return mc[e]})}function wc(e,t){for(var n,r,i=[],o=t.expectHTML,a=t.isUnaryTag||L,s=t.canBeLeftOpenTag||L,c=0;e;){if(n=e,r&&vc(r)){var u=0,l=r.toLowerCase(),f=hc[l]||(hc[l]=new RegExp("([\\s\\S]*?)(</"+l+"[^>]*>)","i")),p=e.replace(f,function(e,n,r){return u=r.length,vc(l)||"noscript"===l||(n=n.replace(/<!\--([\s\S]*?)-->/g,"$1").replace(/<!\[CDATA\[([\s\S]*?)]]>/g,"$1")),bc(l,n)&&(n=n.slice(1)),t.chars&&t.chars(n),""});c+=e.length-p.length,e=p,k(l,c-u,c)}else{var d=e.indexOf("<");if(0===d){if(pc.test(e)){var v=e.indexOf("--\x3e");if(v>=0){t.shouldKeepComment&&t.comment(e.substring(4,v),c,c+v+3),x(v+3);continue}}if(dc.test(e)){var h=e.indexOf("]>");if(h>=0){x(h+2);continue}}var m=e.match(fc);if(m){x(m[0].length);continue}var y=e.match(lc);if(y){var g=c;x(y[0].length),k(y[1],g,c);continue}var _=C();if(_){A(_),bc(_.tagName,e)&&x(1);continue}}var b=void 0,$=void 0,w=void 0;if(d>=0){for($=e.slice(d);!(lc.test($)||cc.test($)||pc.test($)||dc.test($)||(w=$.indexOf("<",1))<0);)d+=w,$=e.slice(d);b=e.substring(0,d)}d<0&&(b=e),b&&x(b.length),t.chars&&b&&t.chars(b,c-b.length,c)}if(e===n){t.chars&&t.chars(e);break}}function x(t){c+=t,e=e.substring(t)}function C(){var t=e.match(cc);if(t){var n,r,i={tagName:t[1],attrs:[],start:c};for(x(t[0].length);!(n=e.match(uc))&&(r=e.match(oc)||e.match(ic));)r.start=c,x(r[0].length),r.end=c,i.attrs.push(r);if(n)return i.unarySlash=n[1],x(n[0].length),i.end=c,i}}function A(e){var n=e.tagName,c=e.unarySlash;o&&("p"===r&&rc(n)&&k(r),s(n)&&r===n&&k(n));for(var u=a(n)||!!c,l=e.attrs.length,f=new Array(l),p=0;p<l;p++){var d=e.attrs[p],v=d[3]||d[4]||d[5]||"",h="a"===n&&"href"===d[1]?t.shouldDecodeNewlinesForHref:t.shouldDecodeNewlines;f[p]={name:d[1],value:$c(v,h)}}u||(i.push({tag:n,lowerCasedTag:n.toLowerCase(),attrs:f,start:e.start,end:e.end}),r=n),t.start&&t.start(n,f,u,e.start,e.end)}function k(e,n,o){var a,s;if(null==n&&(n=c),null==o&&(o=c),e)for(s=e.toLowerCase(),a=i.length-1;a>=0&&i[a].lowerCasedTag!==s;a--);else a=0;if(a>=0){for(var u=i.length-1;u>=a;u--)t.end&&t.end(i[u].tag,n,o);i.length=a,r=a&&i[a-1].tag}else"br"===s?t.start&&t.start(e,[],!0,n,o):"p"===s&&(t.start&&t.start(e,[],!1,n,o),t.end&&t.end(e,n,o))}k()}var xc,Cc,Ac,kc,Oc,Sc,Tc,Nc,jc,Ec=/^@|^v-on:/,Mc=/^v-|^@|^:|^#/,Dc=/([\s\S]*?)\s+(?:in|of)\s+([\s\S]*)/,Lc=/,([^,\}\]]*)(?:,([^,\}\]]*))?$/,Ic=/^\(|\)$/g,Fc=/^\[.*\]$/,Pc=/:(.*)$/,Rc=/^:|^\.|^v-bind:/,Hc=/\.[^.\]]+(?=[^\]]*$)/g,Bc=/^v-slot(:|$)|^#/,Uc=/[\r\n]/,zc=/\s+/g,Vc=/[\s"'<>\/=]/,Jc=w(ec.decode),Kc="_empty_";function qc(e,t,n){return{type:1,tag:e,attrsList:t,attrsMap:vu(t),rawAttrsMap:{},parent:n,children:[]}}function Wc(e,t){xc=t.warn||Ho,Sc=t.isPreTag||L,Tc=t.mustUseProp||L,Nc=t.getTagNamespace||L;var n=t.isReservedTag||L;jc=function(e){return!!e.component||!n(e.tag)},Ac=Bo(t.modules,"transformNode"),kc=Bo(t.modules,"preTransformNode"),Oc=Bo(t.modules,"postTransformNode"),Cc=t.delimiters;var r,i,o=[],a=!1!==t.preserveWhitespace,s=t.whitespace,c=!1,u=!1;function l(e){if(f(e),c||e.processed||(e=Xc(e,t)),o.length||e===r||r.if&&(e.elseif||e.else)&&ou(r,{exp:e.elseif,block:e}),i&&!e.forbidden)if(e.elseif||e.else)ru(e,i);else{if(e.slotScope){var n=e.slotTarget||'"default"';(i.scopedSlots||(i.scopedSlots={}))[n]=e}i.children.push(e),e.parent=i}e.children=e.children.filter(function(e){return!e.slotScope}),f(e),e.pre&&(c=!1),Sc(e.tag)&&(u=!1);for(var a=0;a<Oc.length;a++)Oc[a](e,t)}function f(e){if(!u)for(var t;(t=e.children[e.children.length-1])&&3===t.type&&" "===t.text;)e.children.pop()}return wc(e,{warn:xc,expectHTML:t.expectHTML,isUnaryTag:t.isUnaryTag,canBeLeftOpenTag:t.canBeLeftOpenTag,shouldDecodeNewlines:t.shouldDecodeNewlines,shouldDecodeNewlinesForHref:t.shouldDecodeNewlinesForHref,shouldKeepComment:t.comments,outputSourceRange:t.outputSourceRange,start:function(e,n,a,s,f){var p=i&&i.ns||Nc(e);ne&&"svg"===p&&(n=_u(n));var d=qc(e,n,i);p&&(d.ns=p),mu(d)&&!de()&&(d.forbidden=!0);for(var v=0;v<kc.length;v++)d=kc[v](d,t)||d;c||(Zc(d),d.pre&&(c=!0)),Sc(d.tag)&&(u=!0),c?Gc(d):d.processed||(eu(d),nu(d),au(d)),r||(r=d),a?l(d):(i=d,o.push(d))},end:function(e,t,n){var r=o[o.length-1];o.length-=1,i=o[o.length-1],l(r)},chars:function(e,t,n){if(i&&(!ne||"textarea"!==i.tag||i.attrsMap.placeholder!==e)){var r,o,l=i.children;if(e=u||e.trim()?hu(i)?e:Jc(e):l.length?s?"condense"===s&&Uc.test(e)?"":" ":a?" ":"":"")u||"condense"!==s||(e=e.replace(zc," ")),!c&&" "!==e&&(r=Ks(e,Cc))?o={type:2,expression:r.expression,tokens:r.tokens,text:e}:" "===e&&l.length&&" "===l[l.length-1].text||(o={type:3,text:e}),o&&l.push(o)}},comment:function(e,t,n){if(i){var r={type:3,text:e,isComment:!0};0,i.children.push(r)}}}),r}function Zc(e){null!=Go(e,"v-pre")&&(e.pre=!0)}function Gc(e){var t=e.attrsList,n=t.length;if(n)for(var r=e.attrs=new Array(n),i=0;i<n;i++)r[i]={name:t[i].name,value:JSON.stringify(t[i].value)},null!=t[i].start&&(r[i].start=t[i].start,r[i].end=t[i].end);else e.pre||(e.plain=!0)}function Xc(e,t){Yc(e),e.plain=!e.key&&!e.scopedSlots&&!e.attrsList.length,Qc(e),su(e),uu(e),lu(e);for(var n=0;n<Ac.length;n++)e=Ac[n](e,t)||e;return fu(e),e}function Yc(e){var t=Zo(e,"key");t&&(e.key=t)}function Qc(e){var t=Zo(e,"ref");t&&(e.ref=t,e.refInFor=pu(e))}function eu(e){var t;if(t=Go(e,"v-for")){var n=tu(t);n&&E(e,n)}}function tu(e){var t=e.match(Dc);if(t){var n={};n.for=t[2].trim();var r=t[1].trim().replace(Ic,""),i=r.match(Lc);return i?(n.alias=r.replace(Lc,"").trim(),n.iterator1=i[1].trim(),i[2]&&(n.iterator2=i[2].trim())):n.alias=r,n}}function nu(e){var t=Go(e,"v-if");if(t)e.if=t,ou(e,{exp:t,block:e});else{null!=Go(e,"v-else")&&(e.else=!0);var n=Go(e,"v-else-if");n&&(e.elseif=n)}}function ru(e,t){var n=iu(t.children);n&&n.if&&ou(n,{exp:e.elseif,block:e})}function iu(e){for(var t=e.length;t--;){if(1===e[t].type)return e[t];e.pop()}}function ou(e,t){e.ifConditions||(e.ifConditions=[]),e.ifConditions.push(t)}function au(e){null!=Go(e,"v-once")&&(e.once=!0)}function su(e){var t;"template"===e.tag?(t=Go(e,"scope"),e.slotScope=t||Go(e,"slot-scope")):(t=Go(e,"slot-scope"))&&(e.slotScope=t);var n=Zo(e,"slot");if(n&&(e.slotTarget='""'===n?'"default"':n,e.slotTargetDynamic=!(!e.attrsMap[":slot"]&&!e.attrsMap["v-bind:slot"]),"template"===e.tag||e.slotScope||zo(e,"slot",n,Wo(e,"slot"))),"template"===e.tag){var r=Xo(e,Bc);if(r){0;var i=cu(r),o=i.name,a=i.dynamic;e.slotTarget=o,e.slotTargetDynamic=a,e.slotScope=r.value||Kc}}else{var s=Xo(e,Bc);if(s){0;var c=e.scopedSlots||(e.scopedSlots={}),u=cu(s),l=u.name,f=u.dynamic,p=c[l]=qc("template",[],e);p.slotTarget=l,p.slotTargetDynamic=f,p.children=e.children.filter(function(e){if(!e.slotScope)return e.parent=p,!0}),p.slotScope=s.value||Kc,e.children=[],e.plain=!1}}}function cu(e){var t=e.name.replace(Bc,"");return t||"#"!==e.name[0]&&(t="default"),Fc.test(t)?{name:t.slice(1,-1),dynamic:!0}:{name:'"'+t+'"',dynamic:!1}}function uu(e){"slot"===e.tag&&(e.slotName=Zo(e,"name"))}function lu(e){var t;(t=Zo(e,"is"))&&(e.component=t),null!=Go(e,"inline-template")&&(e.inlineTemplate=!0)}function fu(e){var t,n,r,i,o,a,s,c,u=e.attrsList;for(t=0,n=u.length;t<n;t++){if(r=i=u[t].name,o=u[t].value,Mc.test(r))if(e.hasBindings=!0,(a=du(r.replace(Mc,"")))&&(r=r.replace(Hc,"")),Rc.test(r))r=r.replace(Rc,""),o=Po(o),(c=Fc.test(r))&&(r=r.slice(1,-1)),a&&(a.prop&&!c&&"innerHtml"===(r=C(r))&&(r="innerHTML"),a.camel&&!c&&(r=C(r)),a.sync&&(s=ea(o,"$event"),c?qo(e,'"update:"+('+r+")",s,null,!1,xc,u[t],!0):(qo(e,"update:"+C(r),s,null,!1,xc,u[t]),O(r)!==C(r)&&qo(e,"update:"+O(r),s,null,!1,xc,u[t])))),a&&a.prop||!e.component&&Tc(e.tag,e.attrsMap.type,r)?Uo(e,r,o,u[t],c):zo(e,r,o,u[t],c);else if(Ec.test(r))r=r.replace(Ec,""),(c=Fc.test(r))&&(r=r.slice(1,-1)),qo(e,r,o,a,!1,xc,u[t],c);else{var l=(r=r.replace(Mc,"")).match(Pc),f=l&&l[1];c=!1,f&&(r=r.slice(0,-(f.length+1)),Fc.test(f)&&(f=f.slice(1,-1),c=!0)),Jo(e,r,i,o,f,c,a,u[t])}else zo(e,r,JSON.stringify(o),u[t]),!e.component&&"muted"===r&&Tc(e.tag,e.attrsMap.type,r)&&Uo(e,r,"true",u[t])}}function pu(e){for(var t=e;t;){if(void 0!==t.for)return!0;t=t.parent}return!1}function du(e){var t=e.match(Hc);if(t){var n={};return t.forEach(function(e){n[e.slice(1)]=!0}),n}}function vu(e){for(var t={},n=0,r=e.length;n<r;n++)t[e[n].name]=e[n].value;return t}function hu(e){return"script"===e.tag||"style"===e.tag}function mu(e){return"style"===e.tag||"script"===e.tag&&(!e.attrsMap.type||"text/javascript"===e.attrsMap.type)}var yu=/^xmlns:NS\d+/,gu=/^NS\d+:/;function _u(e){for(var t=[],n=0;n<e.length;n++){var r=e[n];yu.test(r.name)||(r.name=r.name.replace(gu,""),t.push(r))}return t}function bu(e,t){for(var n=e;n;)n.for&&n.alias===t&&xc("<"+e.tag+' v-model="'+t+'">: You are binding v-model directly to a v-for iteration alias. This will not be able to modify the v-for source array because writing to the alias is like modifying a function local variable. Consider using an array of objects and use v-model on an object property instead.',e.rawAttrsMap["v-model"]),n=n.parent}function $u(e,t){if("input"===e.tag){var n,r=e.attrsMap;if(!r["v-model"])return;if((r[":type"]||r["v-bind:type"])&&(n=Zo(e,"type")),r.type||n||!r["v-bind"]||(n="("+r["v-bind"]+").type"),n){var i=Go(e,"v-if",!0),o=i?"&&("+i+")":"",a=null!=Go(e,"v-else",!0),s=Go(e,"v-else-if",!0),c=wu(e);eu(c),Vo(c,"type","checkbox"),Xc(c,t),c.processed=!0,c.if="("+n+")==='checkbox'"+o,ou(c,{exp:c.if,block:c});var u=wu(e);Go(u,"v-for",!0),Vo(u,"type","radio"),Xc(u,t),ou(c,{exp:"("+n+")==='radio'"+o,block:u});var l=wu(e);return Go(l,"v-for",!0),Vo(l,":type",n),Xc(l,t),ou(c,{exp:i,block:l}),a?c.else=!0:s&&(c.elseif=s),c}}}function wu(e){return qc(e.tag,e.attrsList.slice(),e.parent)}var xu={preTransformNode:$u},Cu=[Zs,Qs,xu];function Au(e,t){t.value&&Uo(e,"textContent","_s("+t.value+")",t)}function ku(e,t){t.value&&Uo(e,"innerHTML","_s("+t.value+")",t)}var Ou,Su,Tu={model:la,text:Au,html:ku},Nu={expectHTML:!0,modules:Cu,directives:Tu,isPreTag:Bi,isUnaryTag:tc,mustUseProp:wi,canBeLeftOpenTag:nc,isReservedTag:Ui,getTagNamespace:zi,staticKeys:F(Cu)},ju=w(Mu);function Eu(e,t){e&&(Ou=ju(t.staticKeys||""),Su=t.isReservedTag||L,Du(e),Lu(e,!1))}function Mu(e){return m("type,tag,attrsList,attrsMap,plain,parent,children,attrs,start,end,rawAttrsMap"+(e?","+e:""))}function Du(e){if(e.static=Iu(e),1===e.type){if(!Su(e.tag)&&"slot"!==e.tag&&null==e.attrsMap["inline-template"])return;for(var t=0,n=e.children.length;t<n;t++){var r=e.children[t];Du(r),r.static||(e.static=!1)}if(e.ifConditions)for(var i=1,o=e.ifConditions.length;i<o;i++){var a=e.ifConditions[i].block;Du(a),a.static||(e.static=!1)}}}function Lu(e,t){if(1===e.type){if((e.static||e.once)&&(e.staticInFor=t),e.static&&e.children.length&&(1!==e.children.length||3!==e.children[0].type))return void(e.staticRoot=!0);if(e.staticRoot=!1,e.children)for(var n=0,r=e.children.length;n<r;n++)Lu(e.children[n],t||!!e.for);if(e.ifConditions)for(var i=1,o=e.ifConditions.length;i<o;i++)Lu(e.ifConditions[i].block,t)}}function Iu(e){return 2!==e.type&&(3===e.type||!(!e.pre&&(e.hasBindings||e.if||e.for||y(e.tag)||!Su(e.tag)||Fu(e)||!Object.keys(e).every(Ou))))}function Fu(e){for(;e.parent;){if("template"!==(e=e.parent).tag)return!1;if(e.for)return!0}return!1}var Pu=/^([\w$_]+|\([^)]*?\))\s*=>|^function(?:\s+[\w$]+)?\s*\(/,Ru=/\([^)]*?\);*$/,Hu=/^[A-Za-z_$][\w$]*(?:\.[A-Za-z_$][\w$]*|\['[^']*?']|\["[^"]*?"]|\[\d+]|\[[A-Za-z_$][\w$]*])*$/,Bu={esc:27,tab:9,enter:13,space:32,up:38,left:37,right:39,down:40,delete:[8,46]},Uu={esc:["Esc","Escape"],tab:"Tab",enter:"Enter",space:[" ","Spacebar"],up:["Up","ArrowUp"],left:["Left","ArrowLeft"],right:["Right","ArrowRight"],down:["Down","ArrowDown"],delete:["Backspace","Delete","Del"]},zu=function(e){return"if("+e+")return null;"},Vu={stop:"$event.stopPropagation();",prevent:"$event.preventDefault();",self:zu("$event.target !== $event.currentTarget"),ctrl:zu("!$event.ctrlKey"),shift:zu("!$event.shiftKey"),alt:zu("!$event.altKey"),meta:zu("!$event.metaKey"),left:zu("'button' in $event && $event.button !== 0"),middle:zu("'button' in $event && $event.button !== 1"),right:zu("'button' in $event && $event.button !== 2")};function Ju(e,t){var n=t?"nativeOn:":"on:",r="",i="";for(var o in e){var a=Ku(e[o]);e[o]&&e[o].dynamic?i+=o+","+a+",":r+='"'+o+'":'+a+","}return r="{"+r.slice(0,-1)+"}",i?n+"_d("+r+",["+i.slice(0,-1)+"])":n+r}function Ku(e){if(!e)return"function(){}";if(Array.isArray(e))return"["+e.map(function(e){return Ku(e)}).join(",")+"]";var t=Hu.test(e.value),n=Pu.test(e.value),r=Hu.test(e.value.replace(Ru,""));if(e.modifiers){var i="",o="",a=[];for(var s in e.modifiers)if(Vu[s])o+=Vu[s],Bu[s]&&a.push(s);else if("exact"===s){var c=e.modifiers;o+=zu(["ctrl","shift","alt","meta"].filter(function(e){return!c[e]}).map(function(e){return"$event."+e+"Key"}).join("||"))}else a.push(s);return a.length&&(i+=qu(a)),o&&(i+=o),"function($event){"+i+(t?"return "+e.value+"($event)":n?"return ("+e.value+")($event)":r?"return "+e.value:e.value)+"}"}return t||n?e.value:"function($event){"+(r?"return "+e.value:e.value)+"}"}function qu(e){return"if(!$event.type.indexOf('key')&&"+e.map(Wu).join("&&")+")return null;"}function Wu(e){var t=parseInt(e,10);if(t)return"$event.keyCode!=="+t;var n=Bu[e],r=Uu[e];return"_k($event.keyCode,"+JSON.stringify(e)+","+JSON.stringify(n)+",$event.key,"+JSON.stringify(r)+")"}function Zu(e,t){e.wrapListeners=function(e){return"_g("+e+","+t.value+")"}}function Gu(e,t){e.wrapData=function(n){return"_b("+n+",'"+e.tag+"',"+t.value+","+(t.modifiers&&t.modifiers.prop?"true":"false")+(t.modifiers&&t.modifiers.sync?",true":"")+")"}}var Xu={on:Zu,bind:Gu,cloak:D},Yu=function(e){this.options=e,this.warn=e.warn||Ho,this.transforms=Bo(e.modules,"transformCode"),this.dataGenFns=Bo(e.modules,"genData"),this.directives=E(E({},Xu),e.directives);var t=e.isReservedTag||L;this.maybeComponent=function(e){return!!e.component||!t(e.tag)},this.onceId=0,this.staticRenderFns=[],this.pre=!1};function Qu(e,t){var n=new Yu(t);return{render:"with(this){return "+(e?el(e,n):'_c("div")')+"}",staticRenderFns:n.staticRenderFns}}function el(e,t){if(e.parent&&(e.pre=e.pre||e.parent.pre),e.staticRoot&&!e.staticProcessed)return tl(e,t);if(e.once&&!e.onceProcessed)return nl(e,t);if(e.for&&!e.forProcessed)return ol(e,t);if(e.if&&!e.ifProcessed)return rl(e,t);if("template"!==e.tag||e.slotTarget||t.pre){if("slot"===e.tag)return _l(e,t);var n;if(e.component)n=bl(e.component,e,t);else{var r;(!e.plain||e.pre&&t.maybeComponent(e))&&(r=al(e,t));var i=e.inlineTemplate?null:dl(e,t,!0);n="_c('"+e.tag+"'"+(r?","+r:"")+(i?","+i:"")+")"}for(var o=0;o<t.transforms.length;o++)n=t.transforms[o](e,n);return n}return dl(e,t)||"void 0"}function tl(e,t){e.staticProcessed=!0;var n=t.pre;return e.pre&&(t.pre=e.pre),t.staticRenderFns.push("with(this){return "+el(e,t)+"}"),t.pre=n,"_m("+(t.staticRenderFns.length-1)+(e.staticInFor?",true":"")+")"}function nl(e,t){if(e.onceProcessed=!0,e.if&&!e.ifProcessed)return rl(e,t);if(e.staticInFor){for(var n="",r=e.parent;r;){if(r.for){n=r.key;break}r=r.parent}return n?"_o("+el(e,t)+","+t.onceId+++","+n+")":el(e,t)}return tl(e,t)}function rl(e,t,n,r){return e.ifProcessed=!0,il(e.ifConditions.slice(),t,n,r)}function il(e,t,n,r){if(!e.length)return r||"_e()";var i=e.shift();return i.exp?"("+i.exp+")?"+o(i.block)+":"+il(e,t,n,r):""+o(i.block);function o(e){return n?n(e,t):e.once?nl(e,t):el(e,t)}}function ol(e,t,n,r){var i=e.for,o=e.alias,a=e.iterator1?","+e.iterator1:"",s=e.iterator2?","+e.iterator2:"";return e.forProcessed=!0,(r||"_l")+"(("+i+"),function("+o+a+s+"){return "+(n||el)(e,t)+"})"}function al(e,t){var n="{",r=sl(e,t);r&&(n+=r+","),e.key&&(n+="key:"+e.key+","),e.ref&&(n+="ref:"+e.ref+","),e.refInFor&&(n+="refInFor:true,"),e.pre&&(n+="pre:true,"),e.component&&(n+='tag:"'+e.tag+'",');for(var i=0;i<t.dataGenFns.length;i++)n+=t.dataGenFns[i](e);if(e.attrs&&(n+="attrs:"+$l(e.attrs)+","),e.props&&(n+="domProps:"+$l(e.props)+","),e.events&&(n+=Ju(e.events,!1)+","),e.nativeEvents&&(n+=Ju(e.nativeEvents,!0)+","),e.slotTarget&&!e.slotScope&&(n+="slot:"+e.slotTarget+","),e.scopedSlots&&(n+=ul(e,e.scopedSlots,t)+","),e.model&&(n+="model:{value:"+e.model.value+",callback:"+e.model.callback+",expression:"+e.model.expression+"},"),e.inlineTemplate){var o=cl(e,t);o&&(n+=o+",")}return n=n.replace(/,$/,"")+"}",e.dynamicAttrs&&(n="_b("+n+',"'+e.tag+'",'+$l(e.dynamicAttrs)+")"),e.wrapData&&(n=e.wrapData(n)),e.wrapListeners&&(n=e.wrapListeners(n)),n}function sl(e,t){var n=e.directives;if(n){var r,i,o,a,s="directives:[",c=!1;for(r=0,i=n.length;r<i;r++){o=n[r],a=!0;var u=t.directives[o.name];u&&(a=!!u(e,o,t.warn)),a&&(c=!0,s+='{name:"'+o.name+'",rawName:"'+o.rawName+'"'+(o.value?",value:("+o.value+"),expression:"+JSON.stringify(o.value):"")+(o.arg?",arg:"+(o.isDynamicArg?o.arg:'"'+o.arg+'"'):"")+(o.modifiers?",modifiers:"+JSON.stringify(o.modifiers):"")+"},")}return c?s.slice(0,-1)+"]":void 0}}function cl(e,t){var n=e.children[0];if(n&&1===n.type){var r=Qu(n,t.options);return"inlineTemplate:{render:function(){"+r.render+"},staticRenderFns:["+r.staticRenderFns.map(function(e){return"function(){"+e+"}"}).join(",")+"]}"}}function ul(e,t,n){var r=e.for||Object.keys(t).some(function(e){var n=t[e];return n.slotTargetDynamic||n.if||n.for||fl(n)}),i=!!e.if;if(!r)for(var o=e.parent;o;){if(o.slotScope&&o.slotScope!==Kc||o.for){r=!0;break}o.if&&(i=!0),o=o.parent}var a=Object.keys(t).map(function(e){return pl(t[e],n)}).join(",");return"scopedSlots:_u(["+a+"]"+(r?",null,true":"")+(!r&&i?",null,false,"+ll(a):"")+")"}function ll(e){for(var t=5381,n=e.length;n;)t=33*t^e.charCodeAt(--n);return t>>>0}function fl(e){return 1===e.type&&("slot"===e.tag||e.children.some(fl))}function pl(e,t){var n=e.attrsMap["slot-scope"];if(e.if&&!e.ifProcessed&&!n)return rl(e,t,pl,"null");if(e.for&&!e.forProcessed)return ol(e,t,pl);var r=e.slotScope===Kc?"":String(e.slotScope),i="function("+r+"){return "+("template"===e.tag?e.if&&n?"("+e.if+")?"+(dl(e,t)||"undefined")+":undefined":dl(e,t)||"undefined":el(e,t))+"}",o=r?"":",proxy:true";return"{key:"+(e.slotTarget||'"default"')+",fn:"+i+o+"}"}function dl(e,t,n,r,i){var o=e.children;if(o.length){var a=o[0];if(1===o.length&&a.for&&"template"!==a.tag&&"slot"!==a.tag){var s=n?t.maybeComponent(a)?",1":",0":"";return""+(r||el)(a,t)+s}var c=n?vl(o,t.maybeComponent):0,u=i||ml;return"["+o.map(function(e){return u(e,t)}).join(",")+"]"+(c?","+c:"")}}function vl(e,t){for(var n=0,r=0;r<e.length;r++){var i=e[r];if(1===i.type){if(hl(i)||i.ifConditions&&i.ifConditions.some(function(e){return hl(e.block)})){n=2;break}(t(i)||i.ifConditions&&i.ifConditions.some(function(e){return t(e.block)}))&&(n=1)}}return n}function hl(e){return void 0!==e.for||"template"===e.tag||"slot"===e.tag}function ml(e,t){return 1===e.type?el(e,t):3===e.type&&e.isComment?gl(e):yl(e)}function yl(e){return"_v("+(2===e.type?e.expression:wl(JSON.stringify(e.text)))+")"}function gl(e){return"_e("+JSON.stringify(e.text)+")"}function _l(e,t){var n=e.slotName||'"default"',r=dl(e,t),i="_t("+n+(r?","+r:""),o=e.attrs||e.dynamicAttrs?$l((e.attrs||[]).concat(e.dynamicAttrs||[]).map(function(e){return{name:C(e.name),value:e.value,dynamic:e.dynamic}})):null,a=e.attrsMap["v-bind"];return!o&&!a||r||(i+=",null"),o&&(i+=","+o),a&&(i+=(o?"":",null")+","+a),i+")"}function bl(e,t,n){var r=t.inlineTemplate?null:dl(t,n,!0);return"_c("+e+","+al(t,n)+(r?","+r:"")+")"}function $l(e){for(var t="",n="",r=0;r<e.length;r++){var i=e[r],o=wl(i.value);i.dynamic?n+=i.name+","+o+",":t+='"'+i.name+'":'+o+","}return t="{"+t.slice(0,-1)+"}",n?"_d("+t+",["+n.slice(0,-1)+"])":t}function wl(e){return e.replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}var xl=new RegExp("\\b"+"do,if,for,let,new,try,var,case,else,with,await,break,catch,class,const,super,throw,while,yield,delete,export,import,return,switch,default,extends,finally,continue,debugger,function,arguments".split(",").join("\\b|\\b")+"\\b"),Cl=new RegExp("\\b"+"delete,typeof,void".split(",").join("\\s*\\([^\\)]*\\)|\\b")+"\\s*\\([^\\)]*\\)"),Al=/'(?:[^'\\]|\\.)*'|"(?:[^"\\]|\\.)*"|`(?:[^`\\]|\\.)*\$\{|\}(?:[^`\\]|\\.)*`|`(?:[^`\\]|\\.)*`/g;function kl(e,t){e&&Ol(e,t)}function Ol(e,t){if(1===e.type){for(var n in e.attrsMap)if(Mc.test(n)){var r=e.attrsMap[n];if(r){var i=e.rawAttrsMap[n];"v-for"===n?Tl(e,'v-for="'+r+'"',t,i):"v-slot"===n||"#"===n[0]?El(r,n+'="'+r+'"',t,i):Ec.test(n)?Sl(r,n+'="'+r+'"',t,i):jl(r,n+'="'+r+'"',t,i)}}if(e.children)for(var o=0;o<e.children.length;o++)Ol(e.children[o],t)}else 2===e.type&&jl(e.expression,e.text,t,e)}function Sl(e,t,n,r){var i=e.replace(Al,""),o=i.match(Cl);o&&"$"!==i.charAt(o.index-1)&&n('avoid using JavaScript unary operator as property name: "'+o[0]+'" in expression '+t.trim(),r),jl(e,t,n,r)}function Tl(e,t,n,r){jl(e.for||"",t,n,r),Nl(e.alias,"v-for alias",t,n,r),Nl(e.iterator1,"v-for iterator",t,n,r),Nl(e.iterator2,"v-for iterator",t,n,r)}function Nl(e,t,n,r,i){if("string"==typeof e)try{new Function("var "+e+"=_")}catch(Xl){r("invalid "+t+' "'+e+'" in expression: '+n.trim(),i)}}function jl(e,t,n,r){try{new Function("return "+e)}catch(Xl){var i=e.replace(Al,"").match(xl);n(i?'avoid using JavaScript keyword as property name: "'+i[0]+'"\n Raw expression: '+t.trim():"invalid expression: "+Xl.message+" in\n\n "+e+"\n\n Raw expression: "+t.trim()+"\n",r)}}function El(e,t,n,r){try{new Function(e,"")}catch(Xl){n("invalid function parameter expression: "+Xl.message+" in\n\n "+e+"\n\n Raw expression: "+t.trim()+"\n",r)}}var Ml=2;function Dl(e,t,n){void 0===t&&(t=0),void 0===n&&(n=e.length);for(var r=e.split(/\r?\n/),i=0,o=[],a=0;a<r.length;a++)if((i+=r[a].length+1)>=t){for(var s=a-Ml;s<=a+Ml||n>i;s++)if(!(s<0||s>=r.length)){o.push(""+(s+1)+Ll(" ",3-String(s+1).length)+"| "+r[s]);var c=r[s].length;if(s===a){var u=t-(i-c)+1,l=n>i?c-u:n-t;o.push(" | "+Ll(" ",u)+Ll("^",l))}else if(s>a){if(n>i){var f=Math.min(n-i,c);o.push(" | "+Ll("^",f))}i+=c+1}}break}return o.join("\n")}function Ll(e,t){var n="";if(t>0)for(;1&t&&(n+=e),!((t>>>=1)<=0);)e+=e;return n}function Il(e,t){try{return new Function(e)}catch(n){return t.push({err:n,code:e}),D}}function Fl(e){var t=Object.create(null);return function(n,r,i){(r=E({},r)).warn;delete r.warn;var o=r.delimiters?String(r.delimiters)+n:n;if(t[o])return t[o];var a=e(n,r);var s={},c=[];return s.render=Il(a.render,c),s.staticRenderFns=a.staticRenderFns.map(function(e){return Il(e,c)}),t[o]=s}}function Pl(e){return function(t){function n(n,r){var i=Object.create(t),o=[],a=[],s=function(e,t,n){(n?a:o).push(e)};if(r)for(var c in r.modules&&(i.modules=(t.modules||[]).concat(r.modules)),r.directives&&(i.directives=E(Object.create(t.directives||null),r.directives)),r)"modules"!==c&&"directives"!==c&&(i[c]=r[c]);i.warn=s;var u=e(n.trim(),i);return u.errors=o,u.tips=a,u}return{compile:n,compileToFunctions:Fl(n)}}}var Rl,Hl=Pl(function(e,t){var n=Wc(e.trim(),t);!1!==t.optimize&&Eu(n,t);var r=Qu(n,t);return{ast:n,render:r.render,staticRenderFns:r.staticRenderFns}}),Bl=Hl(Nu),Ul=Bl.compile,zl=Bl.compileToFunctions;function Vl(e){return(Rl=Rl||document.createElement("div")).innerHTML=e?'<a href="\n"/>':'<div a="\n"/>',Rl.innerHTML.indexOf("&#10;")>0}var Jl=!!Y&&Vl(!1),Kl=!!Y&&Vl(!0),ql=w(function(e){var t=qi(e);return t&&t.innerHTML}),Wl=oi.prototype.$mount;function Zl(e){if(e.outerHTML)return e.outerHTML;var t=document.createElement("div");return t.appendChild(e.cloneNode(!0)),t.innerHTML}oi.prototype.$mount=function(e,t){if((e=e&&qi(e))===document.body||e===document.documentElement)return this;var n=this.$options;if(!n.render){var r=n.template;if(r)if("string"==typeof r)"#"===r.charAt(0)&&(r=ql(r));else{if(!r.nodeType)return this;r=r.innerHTML}else e&&(r=Zl(e));if(r){0;var i=zl(r,{outputSourceRange:!1,shouldDecodeNewlines:Jl,shouldDecodeNewlinesForHref:Kl,delimiters:n.delimiters,comments:n.comments},this),o=i.render,a=i.staticRenderFns;n.render=o,n.staticRenderFns=a}}return Wl.call(this,e,t)},oi.compile=zl;var Gl=oi;exports.default=Gl;
4
- },{}],"D1kn":[function(require,module,exports) {
 
 
5
  "use strict";function e(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,o)}return r}function t(t){for(var o=1;o<arguments.length;o++){var n=null!=arguments[o]?arguments[o]:{};o%2?e(Object(n),!0).forEach(function(e){r(t,e,n[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):e(Object(n)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))})}return t}function r(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var o=t({},wptbAdminSettingsData.options),n=t({},wptbAdminSettingsData.options),c={data:function(){return{store:o,rawStore:n}},methods:{revertStore:function(){var e=this;Object.keys(this.store).map(function(t){Object.prototype.hasOwnProperty.call(e.store,t)&&(e.store[t]=e.rawStore[t])})}}},i=c;exports.default=i;
6
  },{}],"wm3G":[function(require,module,exports) {
7
  "use strict";function e(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);t&&(s=s.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,s)}return r}function t(t){for(var s=1;s<arguments.length;s++){var a=null!=arguments[s]?arguments[s]:{};s%2?e(Object(a),!0).forEach(function(e){r(t,e,a[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(a)):e(Object(a)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(a,e))})}return t}function r(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var s={withMessageData:{busy:!1,show:!1,message:"",type:"ok",intervalId:-1,intervalTime:5e3}},a=t({},s.withMessageData),i={data:function(){return s},methods:{isBusy:function(){return this.withMessageData.busy},setMessage:function(e){var r=this,s=t({},a,{},e);this.withMessageData.message=s.message,this.withMessageData.type=s.type,this.withMessageData.show=!0,clearInterval(this.withMessageData.intervalId),this.withMessageData.intervalId=setInterval(function(){r.withMessageData.show=!1},s.intervalTime)},setBusy:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this.withMessageData.busy=e}}},n=i;exports.default=n;
 
 
8
  },{}],"vi91":[function(require,module,exports) {
9
  "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e={props:["logoSrc","logoAlt","pluginName"]};exports.default=e;
10
- (function(){var t=exports.default||module.exports;"function"==typeof t&&(t=t.options),Object.assign(t,{render:function(){var t=this,s=t.$createElement,e=t._self._c||s;return e("div",{staticClass:"wptb-settings-header"},[e("div",{staticClass:"wptb-settings-brand"},[e("img",{attrs:{src:t.logoSrc,alt:t.logoAlt}}),t._v(" "),e("span",{staticClass:"wptb-settings-header-name"},[t._v(" "+t._s(t.pluginName)+" ")])]),t._v(" "),e("div",{staticClass:"wptb-settings-links"},[t._t("default")],2)])},staticRenderFns:[],_compiled:!0,_scopeId:null,functional:void 0});})();
11
- },{}],"bosS":[function(require,module,exports) {
12
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var t={props:["name","current"],methods:{activePosition:function(){void 0!==this.current&&this.current!==this.name||this.$emit("activeSectionElement",this.$refs.sectionItem)}},computed:{isActive:function(){return this.activePosition(),void 0===this.current||this.current===this.name}}};exports.default=t;
13
- (function(){var e=exports.default||module.exports;"function"==typeof e&&(e=e.options),Object.assign(e,{render:function(){var e=this,t=e.$createElement;return(e._self._c||t)("div",{ref:"sectionItem",staticClass:"wptb-settings-section-item",class:{disabled:!e.isActive},on:{click:function(t){return e.$emit("sectionchange",e.name,t.target)}}},[e._v(" "+e._s(e.name)+"\n")])},staticRenderFns:[],_compiled:!0,_scopeId:null,functional:void 0});})();
14
- },{}],"jLHe":[function(require,module,exports) {
15
  "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var t={props:["activeItem","relativeParent"],methods:{toPx:function(t){return"".concat(t,"px")}},computed:{styleCalculations:function(){if(this.activeItem){var t=this.activeItem.getBoundingClientRect(),e=this.relativeParent.getBoundingClientRect(),i=Math.abs(t.left-e.left);return{width:this.toPx(t.width),height:"2px",bottom:0,left:this.toPx(i)}}return{}}}};exports.default=t;
16
- (function(){var t=exports.default||module.exports;"function"==typeof t&&(t=t.options),Object.assign(t,{render:function(){var t=this.$createElement;return(this._self._c||t)("div",{staticClass:"wptb-menu-active-section-indicator",style:this.styleCalculations})},staticRenderFns:[],_compiled:!0,_scopeId:null,functional:void 0});})();
17
- },{}],"yPIx":[function(require,module,exports) {
18
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e=n(require("./SectionItem")),t=n(require("./ActiveSectionIndicator"));function n(e){return e&&e.__esModule?e:{default:e}}var i={model:{prop:"currentSection",event:"updateSection"},props:{child:{type:Boolean,default:!1},items:Array,currentSection:String},components:{SectionItem:e.default,ActiveSectionIndicator:t.default},data:function(){return{innerCurrentSection:"",activeSectionElement:null}},mounted:function(){this.innerCurrentSection=this.currentSection||this.items[0]},watch:{innerCurrentSection:function(e){this.$emit("updateSection",e)}},methods:{handleSectionChange:function(e){this.innerCurrentSection=e},handleActiveSectionElement:function(e){this.activeSectionElement=e}}};exports.default=i;
19
- (function(){var e=exports.default||module.exports;"function"==typeof e&&(e=e.options),Object.assign(e,{render:function(){var e=this,t=e.$createElement,n=e._self._c||t;return n("div",[n("div",{ref:"wrapper",staticClass:"wptb-settings-sections-wrapper",class:{child:e.child}},[e._l(e.items,function(t){return n("section-item",{key:t,attrs:{name:t,current:e.innerCurrentSection},on:{sectionchange:e.handleSectionChange,activeSectionElement:e.handleActiveSectionElement}})}),e._v(" "),n("active-section-indicator",{attrs:{"relative-parent":e.$refs.wrapper,"active-item":e.activeSectionElement}})],2),e._v(" "),e._t("default")],2)},staticRenderFns:[],_compiled:!0,_scopeId:null,functional:void 0});})();
20
- },{"./SectionItem":"bosS","./ActiveSectionIndicator":"jLHe"}],"vTRD":[function(require,module,exports) {
21
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e={props:{center:{type:Boolean,default:!1}}};exports.default=e;
22
- (function(){var t=exports.default||module.exports;"function"==typeof t&&(t=t.options),Object.assign(t,{render:function(){var t=this.$createElement,e=this._self._c||t;return e("div",{staticClass:"wptb-settings-controls-wrapper",class:[this.center?"center":"grid"]},[e("transition",{attrs:{name:"wptb-fade",mode:"out-in"}},[this._t("default")],2)],1)},staticRenderFns:[],_compiled:!0,_scopeId:null,functional:void 0});})();
23
- },{}],"Bhde":[function(require,module,exports) {
24
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e={props:["title"]};exports.default=e;
25
- (function(){var t=exports.default||module.exports;"function"==typeof t&&(t=t.options),Object.assign(t,{render:function(){var t=this.$createElement,s=this._self._c||t;return s("div",{staticClass:"wptb-setting-control"},[this.title?s("div",{staticClass:"title"},[this._v(this._s(this.title))]):this._e(),this._v(" "),this._t("default")],2)},staticRenderFns:[],_compiled:!0,_scopeId:null,functional:void 0});})();
26
- },{}],"yXWm":[function(require,module,exports) {
27
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e={props:["fieldData","modelBind"],methods:{isType:function(e){return this.fieldData.type===e}}};exports.default=e;
28
- (function(){var e=exports.default||module.exports;"function"==typeof e&&(e=e.options),Object.assign(e,{render:function(){var e=this,i=e.$createElement,d=e._self._c||i;return d("div",[e.isType("multiCheckbox")?d("div",e._l(e.fieldData.options,function(i,a){return d("div",{key:i,staticClass:"wptb-setting-control-row"},[d("input",{directives:[{name:"model",rawName:"v-model",value:e.modelBind[e.fieldData.id],expression:"modelBind[fieldData.id]"}],attrs:{id:e.fieldData.id,type:"checkbox"},domProps:{value:a,checked:Array.isArray(e.modelBind[e.fieldData.id])?e._i(e.modelBind[e.fieldData.id],a)>-1:e.modelBind[e.fieldData.id]},on:{change:function(i){var d=e.modelBind[e.fieldData.id],t=i.target,l=!!t.checked;if(Array.isArray(d)){var o=a,n=e._i(d,o);t.checked?n<0&&e.$set(e.modelBind,e.fieldData.id,d.concat([o])):n>-1&&e.$set(e.modelBind,e.fieldData.id,d.slice(0,n).concat(d.slice(n+1)))}else e.$set(e.modelBind,e.fieldData.id,l)}}}),e._v(" "),d("label",{attrs:{for:e.fieldData.id}},[e._v(e._s(i))])])}),0):e.isType("checkbox")?d("div",[d("div",{staticClass:"wptb-setting-control-row"},[d("input",{directives:[{name:"model",rawName:"v-model",value:e.modelBind[e.fieldData.id],expression:"modelBind[fieldData.id]"}],attrs:{id:e.fieldData.id,type:"checkbox"},domProps:{checked:Array.isArray(e.modelBind[e.fieldData.id])?e._i(e.modelBind[e.fieldData.id],null)>-1:e.modelBind[e.fieldData.id]},on:{change:function(i){var d=e.modelBind[e.fieldData.id],a=i.target,t=!!a.checked;if(Array.isArray(d)){var l=e._i(d,null);a.checked?l<0&&e.$set(e.modelBind,e.fieldData.id,d.concat([null])):l>-1&&e.$set(e.modelBind,e.fieldData.id,d.slice(0,l).concat(d.slice(l+1)))}else e.$set(e.modelBind,e.fieldData.id,t)}}}),e._v(" "),d("label",{attrs:{for:e.fieldData.id}},[e._v(e._s(e.fieldData.label))])])]):e.isType("dropdown")?d("div",[d("div",{staticClass:"wptb-setting-control-row"},[d("select",{directives:[{name:"model",rawName:"v-model",value:e.modelBind[e.fieldData.id],expression:"modelBind[fieldData.id]"}],attrs:{id:e.fieldData.id},on:{change:function(i){var d=Array.prototype.filter.call(i.target.options,function(e){return e.selected}).map(function(e){return"_value"in e?e._value:e.value});e.$set(e.modelBind,e.fieldData.id,i.target.multiple?d:d[0])}}},e._l(e.fieldData.options,function(i){return d("option",{key:i.label,domProps:{value:i.value}},[e._v(" "+e._s(i.label)+" ")])}),0),e._v(" "),d("label",{attrs:{for:e.fieldData.id}},[e._v(e._s(e.fieldData.label))]),e._v(" "),e._t("default")],2)]):e._e()])},staticRenderFns:[],_compiled:!0,_scopeId:null,functional:void 0});})();
29
- },{}],"P9T4":[function(require,module,exports) {
30
  "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e=t(require("../mixins/withMessage"));function t(e){return e&&e.__esModule?e:{default:e}}var r={mixins:[e.default]};exports.default=r;
31
- (function(){var s=exports.default||module.exports;"function"==typeof s&&(s=s.options),Object.assign(s,{render:function(){var s=this,t=s.$createElement,e=s._self._c||t;return e("div",{staticClass:"wptb-settings-messages"},[s.withMessageData.busy?e("span",{staticClass:"dashicons dashicons-image-rotate wptb-settings-fetching"}):s._e(),s._v(" "),e("transition",{attrs:{name:"wptb-fade"}},[s.withMessageData.show?e("span",{staticClass:"wptb-settings-message",class:[s.withMessageData.type]},[s._v(s._s(s.withMessageData.message))]):s._e()])],1)},staticRenderFns:[],_compiled:!0,_scopeId:null,functional:void 0});})();
32
- },{"../mixins/withMessage":"wm3G"}],"ksMR":[function(require,module,exports) {
33
  "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e={props:{disabled:Boolean,type:{type:String,default:"primary"},size:{type:String,default:"normal"}},methods:{handleClick:function(){this.disabled||this.$emit("click")}}};exports.default=e;
34
- (function(){var t=exports.default||module.exports;"function"==typeof t&&(t=t.options),Object.assign(t,{render:function(){var t=this.$createElement;return(this._self._c||t)("div",{staticClass:"wptb-settings-button",class:[{disabled:this.disabled},this.type,this.size],on:{click:this.handleClick}},[this._t("default")],2)},staticRenderFns:[],_compiled:!0,_scopeId:null,functional:void 0});})();
35
- },{}],"nwtb":[function(require,module,exports) {
 
 
 
 
36
  "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e=t(require("./MessageDisplay.vue")),s=t(require("./MenuButton"));function t(e){return e&&e.__esModule?e:{default:e}}var u={props:["messageType","messageShow","messageBody","messageBusy"],components:{MessageDisplay:e.default,MenuButton:s.default}};exports.default=u;
37
- (function(){var e=exports.default||module.exports;"function"==typeof e&&(e=e.options),Object.assign(e,{render:function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"wptb-settings-footer"},[s("message-display",{attrs:{busy:e.messageBusy,message:e.messageBody,show:e.messageShow,type:e.messageType}}),e._v(" "),s("div",{staticClass:"wptb-settings-button-container"},[s("menu-button",{staticStyle:{visibility:"hidden"}},[e._v("dummy")]),e._v(" "),e._t("default")],2)],1)},staticRenderFns:[],_compiled:!0,_scopeId:null,functional:void 0});})();
38
- },{"./MessageDisplay.vue":"P9T4","./MenuButton":"ksMR"}],"pZ9N":[function(require,module,exports) {
39
- "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e=c(require("../mixins/withStore.js")),t=c(require("../mixins/withMessage")),r=c(require("../components/MenuHeader.vue")),n=c(require("../components/Sections.vue")),i=c(require("../components/MenuContent.vue")),o=c(require("../components/SettingCard.vue")),s=c(require("../components/ControlItem.vue")),u=c(require("../components/MenuFooter.vue")),a=c(require("../components/MenuButton.vue"));function c(e){return e&&e.__esModule?e:{default:e}}function f(e,t){return m(e)||h(e,t)||p(e,t)||l()}function l(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function p(e,t){if(e){if("string"==typeof e)return d(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(r):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?d(e,t):void 0}}function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function h(e,t){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e)){var r=[],n=!0,i=!1,o=void 0;try{for(var s,u=e[Symbol.iterator]();!(n=(s=u.next()).done)&&(r.push(s.value),!t||r.length!==t);n=!0);}catch(a){i=!0,o=a}finally{try{n||null==u.return||u.return()}finally{if(i)throw o}}return r}}function m(e){if(Array.isArray(e))return e}function b(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function y(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?b(Object(r),!0).forEach(function(t){g(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):b(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}function g(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var v={props:["fieldsData","settings","pluginInfo"],components:{MenuButton:a.default,MenuHeader:r.default,Sections:n.default,MenuContent:i.default,SettingCard:o.default,ControlItem:s.default,MenuFooter:u.default},mixins:[e.default,t.default],data:function(){return{sections:[],currentSection:"",parsedFields:{},resetActive:!1,canSubmit:!1,fetching:!1}},watch:{store:{handler:function(){this.resetActive?(this.canSubmit=!1,this.resetActive=!1):this.canSubmit=!0},deep:!0},fetching:function(e){this.setBusy(e)}},beforeMount:function(){var e=this;Object.keys(this.fieldsData).map(function(t){if(Object.prototype.hasOwnProperty.call(e.fieldsData,t)){var r=e.fieldsData[t].section;void 0===e.parsedFields[r]&&(e.parsedFields[r]=[]),e.parsedFields[r].push(y({},e.fieldsData[t],{id:t})),e.sections.push(r)}return null});var t=f(Object.keys(this.parsedFields).map(function(t){if(Object.prototype.hasOwnProperty.call(e.parsedFields,t))return t}),1);this.currentSection=t[0],this.sections=Array.from(new Set(this.sections))},computed:{currentFields:function(){return this.parsedFields[this.currentSection]}},methods:{resetStore:function(){this.canSubmit&&(this.revertStore(),this.resetActive=!0,this.setMessage({message:this.strings.revertMessage}))},submitSettings:function(){var e=this;if(this.canSubmit){var t=new FormData;t.append("nonce",this.settings.nonce),t.append("action",this.settings.action),t.append("options",JSON.stringify(this.store)),this.canSubmit=!1,this.fetching=!0,fetch(this.settings.ajaxUrl,{method:"POST",body:t}).then(function(e){if(e.ok)return e.json()}).then(function(t){if(t.error)throw new Error(t.error);e.setMessage({message:t.message})}).catch(function(t){console.error(t),e.setMessage({type:"error",message:t})}).finally(function(){e.fetching=!1})}}}};exports.default=v;
40
- (function(){var t=exports.default||module.exports;"function"==typeof t&&(t=t.options),Object.assign(t,{render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"wptb-settings-wrapper"},[n("menu-header",{attrs:{"logo-src":t.pluginInfo.logo,"logo-alt":t.strings.logoAlt,"plugin-name":t.pluginInfo.pluginName}},[n("a",{attrs:{href:t.pluginInfo.pluginHomepage}},[t._v(t._s(t.strings.homepage))])]),t._v(" "),n("sections",{attrs:{items:t.sections},model:{value:t.currentSection,callback:function(e){t.currentSection=e},expression:"currentSection"}}),t._v(" "),n("menu-content",t._l(t.currentFields,function(e){return n("setting-card",{key:e.id,attrs:{title:e.label}},[n("control-item",{attrs:{"field-data":e,modelBind:t.store}})],1)}),1),t._v(" "),n("menu-footer",[n("menu-button",{attrs:{type:"danger",disabled:!t.canSubmit},on:{click:t.resetStore}},[t._v(t._s(t.strings.revert))]),t._v(" "),n("menu-button",{attrs:{type:"primary",disabled:!t.canSubmit},on:{click:t.submitSettings}},[t._v(t._s(t.strings.submit))])],1)],1)},staticRenderFns:[],_compiled:!0,_scopeId:null,functional:void 0});})();
41
- },{"../mixins/withStore.js":"D1kn","../mixins/withMessage":"wm3G","../components/MenuHeader.vue":"vi91","../components/Sections.vue":"yPIx","../components/MenuContent.vue":"vTRD","../components/SettingCard.vue":"Bhde","../components/ControlItem.vue":"yXWm","../components/MenuFooter.vue":"nwtb","../components/MenuButton.vue":"ksMR"}],"yEip":[function(require,module,exports) {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
42
  "use strict";function t(t,e){t.mixin({data:function(){return{strings:e.strings}}})}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e={install:t};exports.default=e;
43
  },{}],"uD0a":[function(require,module,exports) {
44
- "use strict";var e=n(require("vue")),t=n(require("./containers/SettingsApp.vue")),r=n(require("./plugins/strings.js"));function n(e){return e&&e.__esModule?e:{default:e}}function i(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function o(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?i(Object(r),!0).forEach(function(t){u(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):i(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}function u(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var a=o({},wptbAdminSettingsData);wptbAdminSettingsData=void 0,e.default.config.productionTip=!1,e.default.use(r.default,{strings:a.strings}),new e.default({components:{SettingsApp:t.default},data:{fieldsData:a.fields,settings:a.data,pluginInfo:a.pluginInfo}}).$mount(a.data.mountId);
45
- },{"vue":"HYXJ","./containers/SettingsApp.vue":"pZ9N","./plugins/strings.js":"yEip"}]},{},["uD0a"], null)
 
 
 
1
  parcelRequire=function(e,r,t,n){var i,o="function"==typeof parcelRequire&&parcelRequire,u="function"==typeof require&&require;function f(t,n){if(!r[t]){if(!e[t]){var i="function"==typeof parcelRequire&&parcelRequire;if(!n&&i)return i(t,!0);if(o)return o(t,!0);if(u&&"string"==typeof t)return u(t);var c=new Error("Cannot find module '"+t+"'");throw c.code="MODULE_NOT_FOUND",c}p.resolve=function(r){return e[t][1][r]||r},p.cache={};var l=r[t]=new f.Module(t);e[t][0].call(l.exports,p,l,l.exports,this)}return r[t].exports;function p(e){return f(p.resolve(e))}}f.isParcelRequire=!0,f.Module=function(e){this.id=e,this.bundle=f,this.exports={}},f.modules=e,f.cache=r,f.parent=o,f.register=function(r,t){e[r]=[function(e,r){r.exports=t},{}]};for(var c=0;c<t.length;c++)try{f(t[c])}catch(e){i||(i=e)}if(t.length){var l=f(t[t.length-1]);"object"==typeof exports&&"undefined"!=typeof module?module.exports=l:"function"==typeof define&&define.amd?define(function(){return l}):n&&(this[n]=l)}if(parcelRequire=f,i)throw i;return f}({"HYXJ":[function(require,module,exports) {
2
  var global = arguments[3];
3
  var e=arguments[3];Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var t=Object.freeze({});function n(e){return null==e}function r(e){return null!=e}function i(e){return!0===e}function o(e){return!1===e}function a(e){return"string"==typeof e||"number"==typeof e||"symbol"==typeof e||"boolean"==typeof e}function s(e){return null!==e&&"object"==typeof e}var c=Object.prototype.toString;function u(e){return c.call(e).slice(8,-1)}function l(e){return"[object Object]"===c.call(e)}function f(e){return"[object RegExp]"===c.call(e)}function p(e){var t=parseFloat(String(e));return t>=0&&Math.floor(t)===t&&isFinite(e)}function d(e){return r(e)&&"function"==typeof e.then&&"function"==typeof e.catch}function v(e){return null==e?"":Array.isArray(e)||l(e)&&e.toString===c?JSON.stringify(e,null,2):String(e)}function h(e){var t=parseFloat(e);return isNaN(t)?e:t}function m(e,t){for(var n=Object.create(null),r=e.split(","),i=0;i<r.length;i++)n[r[i]]=!0;return t?function(e){return n[e.toLowerCase()]}:function(e){return n[e]}}var y=m("slot,component",!0),g=m("key,ref,slot,slot-scope,is");function _(e,t){if(e.length){var n=e.indexOf(t);if(n>-1)return e.splice(n,1)}}var b=Object.prototype.hasOwnProperty;function $(e,t){return b.call(e,t)}function w(e){var t=Object.create(null);return function(n){return t[n]||(t[n]=e(n))}}var x=/-(\w)/g,C=w(function(e){return e.replace(x,function(e,t){return t?t.toUpperCase():""})}),A=w(function(e){return e.charAt(0).toUpperCase()+e.slice(1)}),k=/\B([A-Z])/g,O=w(function(e){return e.replace(k,"-$1").toLowerCase()});function S(e,t){function n(n){var r=arguments.length;return r?r>1?e.apply(t,arguments):e.call(t,n):e.call(t)}return n._length=e.length,n}function T(e,t){return e.bind(t)}var N=Function.prototype.bind?T:S;function j(e,t){t=t||0;for(var n=e.length-t,r=new Array(n);n--;)r[n]=e[n+t];return r}function E(e,t){for(var n in t)e[n]=t[n];return e}function M(e){for(var t={},n=0;n<e.length;n++)e[n]&&E(t,e[n]);return t}function D(e,t,n){}var L=function(e,t,n){return!1},I=function(e){return e};function F(e){return e.reduce(function(e,t){return e.concat(t.staticKeys||[])},[]).join(",")}function P(e,t){if(e===t)return!0;var n=s(e),r=s(t);if(!n||!r)return!n&&!r&&String(e)===String(t);try{var i=Array.isArray(e),o=Array.isArray(t);if(i&&o)return e.length===t.length&&e.every(function(e,n){return P(e,t[n])});if(e instanceof Date&&t instanceof Date)return e.getTime()===t.getTime();if(i||o)return!1;var a=Object.keys(e),c=Object.keys(t);return a.length===c.length&&a.every(function(n){return P(e[n],t[n])})}catch(u){return!1}}function R(e,t){for(var n=0;n<e.length;n++)if(P(e[n],t))return n;return-1}function H(e){var t=!1;return function(){t||(t=!0,e.apply(this,arguments))}}var B="data-server-rendered",U=["component","directive","filter"],z=["beforeCreate","created","beforeMount","mounted","beforeUpdate","updated","beforeDestroy","destroyed","activated","deactivated","errorCaptured","serverPrefetch"],V={optionMergeStrategies:Object.create(null),silent:!1,productionTip:!1,devtools:!1,performance:!1,errorHandler:null,warnHandler:null,ignoredElements:[],keyCodes:Object.create(null),isReservedTag:L,isReservedAttr:L,isUnknownElement:L,getTagNamespace:D,parsePlatformTagName:I,mustUseProp:L,async:!0,_lifecycleHooks:z},J=/a-zA-Z\u00B7\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u037D\u037F-\u1FFF\u200C-\u200D\u203F-\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD/;function K(e){var t=(e+"").charCodeAt(0);return 36===t||95===t}function q(e,t,n,r){Object.defineProperty(e,t,{value:n,enumerable:!!r,writable:!0,configurable:!0})}var W=new RegExp("[^"+J.source+".$_\\d]");function Z(e){if(!W.test(e)){var t=e.split(".");return function(e){for(var n=0;n<t.length;n++){if(!e)return;e=e[t[n]]}return e}}}var G,X="__proto__"in{},Y="undefined"!=typeof window,Q="undefined"!=typeof WXEnvironment&&!!WXEnvironment.platform,ee=Q&&WXEnvironment.platform.toLowerCase(),te=Y&&window.navigator.userAgent.toLowerCase(),ne=te&&/msie|trident/.test(te),re=te&&te.indexOf("msie 9.0")>0,ie=te&&te.indexOf("edge/")>0,oe=te&&te.indexOf("android")>0||"android"===ee,ae=te&&/iphone|ipad|ipod|ios/.test(te)||"ios"===ee,se=te&&/chrome\/\d+/.test(te)&&!ie,ce=te&&/phantomjs/.test(te),ue=te&&te.match(/firefox\/(\d+)/),le={}.watch,fe=!1;if(Y)try{var pe={};Object.defineProperty(pe,"passive",{get:function(){fe=!0}}),window.addEventListener("test-passive",null,pe)}catch(Xl){}var de=function(){return void 0===G&&(G=!Y&&!Q&&void 0!==e&&(e.process&&"server"===e.process.env.VUE_ENV)),G},ve=Y&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__;function he(e){return"function"==typeof e&&/native code/.test(e.toString())}var me,ye="undefined"!=typeof Symbol&&he(Symbol)&&"undefined"!=typeof Reflect&&he(Reflect.ownKeys);me="undefined"!=typeof Set&&he(Set)?Set:function(){function e(){this.set=Object.create(null)}return e.prototype.has=function(e){return!0===this.set[e]},e.prototype.add=function(e){this.set[e]=!0},e.prototype.clear=function(){this.set=Object.create(null)},e}();var ge,_e,be,$e,we=D,xe=D,Ce=D,Ae=D,ke=0,Oe=function(){this.id=ke++,this.subs=[]};Oe.prototype.addSub=function(e){this.subs.push(e)},Oe.prototype.removeSub=function(e){_(this.subs,e)},Oe.prototype.depend=function(){Oe.target&&Oe.target.addDep(this)},Oe.prototype.notify=function(){var e=this.subs.slice();for(var t=0,n=e.length;t<n;t++)e[t].update()},Oe.target=null;var Se=[];function Te(e){Se.push(e),Oe.target=e}function Ne(){Se.pop(),Oe.target=Se[Se.length-1]}var je=function(e,t,n,r,i,o,a,s){this.tag=e,this.data=t,this.children=n,this.text=r,this.elm=i,this.ns=void 0,this.context=o,this.fnContext=void 0,this.fnOptions=void 0,this.fnScopeId=void 0,this.key=t&&t.key,this.componentOptions=a,this.componentInstance=void 0,this.parent=void 0,this.raw=!1,this.isStatic=!1,this.isRootInsert=!0,this.isComment=!1,this.isCloned=!1,this.isOnce=!1,this.asyncFactory=s,this.asyncMeta=void 0,this.isAsyncPlaceholder=!1},Ee={child:{configurable:!0}};Ee.child.get=function(){return this.componentInstance},Object.defineProperties(je.prototype,Ee);var Me=function(e){void 0===e&&(e="");var t=new je;return t.text=e,t.isComment=!0,t};function De(e){return new je(void 0,void 0,void 0,String(e))}function Le(e){var t=new je(e.tag,e.data,e.children&&e.children.slice(),e.text,e.elm,e.context,e.componentOptions,e.asyncFactory);return t.ns=e.ns,t.isStatic=e.isStatic,t.key=e.key,t.isComment=e.isComment,t.fnContext=e.fnContext,t.fnOptions=e.fnOptions,t.fnScopeId=e.fnScopeId,t.asyncMeta=e.asyncMeta,t.isCloned=!0,t}var Ie=Array.prototype,Fe=Object.create(Ie),Pe=["push","pop","shift","unshift","splice","sort","reverse"];Pe.forEach(function(e){var t=Ie[e];q(Fe,e,function(){for(var n=[],r=arguments.length;r--;)n[r]=arguments[r];var i,o=t.apply(this,n),a=this.__ob__;switch(e){case"push":case"unshift":i=n;break;case"splice":i=n.slice(2)}return i&&a.observeArray(i),a.dep.notify(),o})});var Re=Object.getOwnPropertyNames(Fe),He=!0;function Be(e){He=e}var Ue=function(e){this.value=e,this.dep=new Oe,this.vmCount=0,q(e,"__ob__",this),Array.isArray(e)?(X?ze(e,Fe):Ve(e,Fe,Re),this.observeArray(e)):this.walk(e)};function ze(e,t){e.__proto__=t}function Ve(e,t,n){for(var r=0,i=n.length;r<i;r++){var o=n[r];q(e,o,t[o])}}function Je(e,t){var n;if(s(e)&&!(e instanceof je))return $(e,"__ob__")&&e.__ob__ instanceof Ue?n=e.__ob__:He&&!de()&&(Array.isArray(e)||l(e))&&Object.isExtensible(e)&&!e._isVue&&(n=new Ue(e)),t&&n&&n.vmCount++,n}function Ke(e,t,n,r,i){var o=new Oe,a=Object.getOwnPropertyDescriptor(e,t);if(!a||!1!==a.configurable){var s=a&&a.get,c=a&&a.set;s&&!c||2!==arguments.length||(n=e[t]);var u=!i&&Je(n);Object.defineProperty(e,t,{enumerable:!0,configurable:!0,get:function(){var t=s?s.call(e):n;return Oe.target&&(o.depend(),u&&(u.dep.depend(),Array.isArray(t)&&Ze(t))),t},set:function(t){var r=s?s.call(e):n;t===r||t!=t&&r!=r||s&&!c||(c?c.call(e,t):n=t,u=!i&&Je(t),o.notify())}})}}function qe(e,t,n){if(Array.isArray(e)&&p(t))return e.length=Math.max(e.length,t),e.splice(t,1,n),n;if(t in e&&!(t in Object.prototype))return e[t]=n,n;var r=e.__ob__;return e._isVue||r&&r.vmCount?n:r?(Ke(r.value,t,n),r.dep.notify(),n):(e[t]=n,n)}function We(e,t){if(Array.isArray(e)&&p(t))e.splice(t,1);else{var n=e.__ob__;e._isVue||n&&n.vmCount||$(e,t)&&(delete e[t],n&&n.dep.notify())}}function Ze(e){for(var t=void 0,n=0,r=e.length;n<r;n++)(t=e[n])&&t.__ob__&&t.__ob__.dep.depend(),Array.isArray(t)&&Ze(t)}Ue.prototype.walk=function(e){for(var t=Object.keys(e),n=0;n<t.length;n++)Ke(e,t[n])},Ue.prototype.observeArray=function(e){for(var t=0,n=e.length;t<n;t++)Je(e[t])};var Ge=V.optionMergeStrategies;function Xe(e,t){if(!t)return e;for(var n,r,i,o=ye?Reflect.ownKeys(t):Object.keys(t),a=0;a<o.length;a++)"__ob__"!==(n=o[a])&&(r=e[n],i=t[n],$(e,n)?r!==i&&l(r)&&l(i)&&Xe(r,i):qe(e,n,i));return e}function Ye(e,t,n){return n?function(){var r="function"==typeof t?t.call(n,n):t,i="function"==typeof e?e.call(n,n):e;return r?Xe(r,i):i}:t?e?function(){return Xe("function"==typeof t?t.call(this,this):t,"function"==typeof e?e.call(this,this):e)}:t:e}function Qe(e,t){var n=t?e?e.concat(t):Array.isArray(t)?t:[t]:e;return n?et(n):n}function et(e){for(var t=[],n=0;n<e.length;n++)-1===t.indexOf(e[n])&&t.push(e[n]);return t}function tt(e,t,n,r){var i=Object.create(e||null);return t?E(i,t):i}Ge.data=function(e,t,n){return n?Ye(e,t,n):t&&"function"!=typeof t?e:Ye(e,t)},z.forEach(function(e){Ge[e]=Qe}),U.forEach(function(e){Ge[e+"s"]=tt}),Ge.watch=function(e,t,n,r){if(e===le&&(e=void 0),t===le&&(t=void 0),!t)return Object.create(e||null);if(!e)return t;var i={};for(var o in E(i,e),t){var a=i[o],s=t[o];a&&!Array.isArray(a)&&(a=[a]),i[o]=a?a.concat(s):Array.isArray(s)?s:[s]}return i},Ge.props=Ge.methods=Ge.inject=Ge.computed=function(e,t,n,r){if(!e)return t;var i=Object.create(null);return E(i,e),t&&E(i,t),i},Ge.provide=Ye;var nt=function(e,t){return void 0===t?e:t};function rt(e){for(var t in e.components)it(t)}function it(e){new RegExp("^[a-zA-Z][\\-\\.0-9_"+J.source+"]*$").test(e)||we('Invalid component name: "'+e+'". Component names should conform to valid custom element name in html5 specification.'),(y(e)||V.isReservedTag(e))&&we("Do not use built-in or reserved HTML elements as component id: "+e)}function ot(e,t){var n=e.props;if(n){var r,i,o={};if(Array.isArray(n))for(r=n.length;r--;)"string"==typeof(i=n[r])&&(o[C(i)]={type:null});else if(l(n))for(var a in n)i=n[a],o[C(a)]=l(i)?i:{type:i};else 0;e.props=o}}function at(e,t){var n=e.inject;if(n){var r=e.inject={};if(Array.isArray(n))for(var i=0;i<n.length;i++)r[n[i]]={from:n[i]};else if(l(n))for(var o in n){var a=n[o];r[o]=l(a)?E({from:o},a):{from:a}}else 0}}function st(e){var t=e.directives;if(t)for(var n in t){var r=t[n];"function"==typeof r&&(t[n]={bind:r,update:r})}}function ct(e,t,n){l(t)||we('Invalid value for option "'+e+'": expected an Object, but got '+u(t)+".",n)}function ut(e,t,n){if("function"==typeof t&&(t=t.options),ot(t,n),at(t,n),st(t),!t._base&&(t.extends&&(e=ut(e,t.extends,n)),t.mixins))for(var r=0,i=t.mixins.length;r<i;r++)e=ut(e,t.mixins[r],n);var o,a={};for(o in e)s(o);for(o in t)$(e,o)||s(o);function s(r){var i=Ge[r]||nt;a[r]=i(e[r],t[r],n,r)}return a}function lt(e,t,n,r){if("string"==typeof n){var i=e[t];if($(i,n))return i[n];var o=C(n);if($(i,o))return i[o];var a=A(o);if($(i,a))return i[a];var s=i[n]||i[o]||i[a];return s}}function ft(e,t,n,r){var i=t[e],o=!$(n,e),a=n[e],s=gt(Boolean,i.type);if(s>-1)if(o&&!$(i,"default"))a=!1;else if(""===a||a===O(e)){var c=gt(String,i.type);(c<0||s<c)&&(a=!0)}if(void 0===a){a=pt(r,i,e);var u=He;Be(!0),Je(a),Be(u)}return a}function pt(e,t,n){if($(t,"default")){var r=t.default;return e&&e.$options.propsData&&void 0===e.$options.propsData[n]&&void 0!==e._props[n]?e._props[n]:"function"==typeof r&&"Function"!==mt(t.type)?r.call(e):r}}function dt(e,t,n,r,i){if(e.required&&i)we('Missing required prop: "'+t+'"',r);else if(null!=n||e.required){var o=e.type,a=!o||!0===o,s=[];if(o){Array.isArray(o)||(o=[o]);for(var c=0;c<o.length&&!a;c++){var u=ht(n,o[c]);s.push(u.expectedType||""),a=u.valid}}if(a){var l=e.validator;l&&(l(n)||we('Invalid prop: custom validator check failed for prop "'+t+'".',r))}else we(_t(t,n,s),r)}}var vt=/^(String|Number|Boolean|Function|Symbol)$/;function ht(e,t){var n,r=mt(t);if(vt.test(r)){var i=typeof e;(n=i===r.toLowerCase())||"object"!==i||(n=e instanceof t)}else n="Object"===r?l(e):"Array"===r?Array.isArray(e):e instanceof t;return{valid:n,expectedType:r}}function mt(e){var t=e&&e.toString().match(/^\s*function (\w+)/);return t?t[1]:""}function yt(e,t){return mt(e)===mt(t)}function gt(e,t){if(!Array.isArray(t))return yt(t,e)?0:-1;for(var n=0,r=t.length;n<r;n++)if(yt(t[n],e))return n;return-1}function _t(e,t,n){var r='Invalid prop: type check failed for prop "'+e+'". Expected '+n.map(A).join(", "),i=n[0],o=u(t),a=bt(t,i),s=bt(t,o);return 1===n.length&&$t(i)&&!wt(i,o)&&(r+=" with value "+a),r+=", got "+o+" ",$t(o)&&(r+="with value "+s+"."),r}function bt(e,t){return"String"===t?'"'+e+'"':"Number"===t?""+Number(e):""+e}function $t(e){return["string","number","boolean"].some(function(t){return e.toLowerCase()===t})}function wt(){for(var e=[],t=arguments.length;t--;)e[t]=arguments[t];return e.some(function(e){return"boolean"===e.toLowerCase()})}function xt(e,t,n){Te();try{if(t)for(var r=t;r=r.$parent;){var i=r.$options.errorCaptured;if(i)for(var o=0;o<i.length;o++)try{if(!1===i[o].call(r,e,t,n))return}catch(Xl){At(Xl,r,"errorCaptured hook")}}At(e,t,n)}finally{Ne()}}function Ct(e,t,n,r,i){var o;try{(o=n?e.apply(t,n):e.call(t))&&!o._isVue&&d(o)&&!o._handled&&(o.catch(function(e){return xt(e,r,i+" (Promise/async)")}),o._handled=!0)}catch(Xl){xt(Xl,r,i)}return o}function At(e,t,n){if(V.errorHandler)try{return V.errorHandler.call(null,e,t,n)}catch(Xl){Xl!==e&&kt(Xl,null,"config.errorHandler")}kt(e,t,n)}function kt(e,t,n){if(!Y&&!Q||"undefined"==typeof console)throw e;console.error(e)}var Ot,St,Tt,Nt,jt,Et,Mt,Dt,Lt,It,Ft,Pt,Rt=!1,Ht=[],Bt=!1;function Ut(){Bt=!1;var e=Ht.slice(0);Ht.length=0;for(var t=0;t<e.length;t++)e[t]()}if("undefined"!=typeof Promise&&he(Promise)){var zt=Promise.resolve();Ot=function(){zt.then(Ut),ae&&setTimeout(D)},Rt=!0}else if(ne||"undefined"==typeof MutationObserver||!he(MutationObserver)&&"[object MutationObserverConstructor]"!==MutationObserver.toString())Ot="undefined"!=typeof setImmediate&&he(setImmediate)?function(){setImmediate(Ut)}:function(){setTimeout(Ut,0)};else{var Vt=1,Jt=new MutationObserver(Ut),Kt=document.createTextNode(String(Vt));Jt.observe(Kt,{characterData:!0}),Ot=function(){Vt=(Vt+1)%2,Kt.data=String(Vt)},Rt=!0}function qt(e,t){var n;if(Ht.push(function(){if(e)try{e.call(t)}catch(Xl){xt(Xl,t,"nextTick")}else n&&n(t)}),Bt||(Bt=!0,Ot()),!e&&"undefined"!=typeof Promise)return new Promise(function(e){n=e})}var Wt=new me;function Zt(e){Gt(e,Wt),Wt.clear()}function Gt(e,t){var n,r,i=Array.isArray(e);if(!(!i&&!s(e)||Object.isFrozen(e)||e instanceof je)){if(e.__ob__){var o=e.__ob__.dep.id;if(t.has(o))return;t.add(o)}if(i)for(n=e.length;n--;)Gt(e[n],t);else for(n=(r=Object.keys(e)).length;n--;)Gt(e[r[n]],t)}}var Xt=w(function(e){var t="&"===e.charAt(0),n="~"===(e=t?e.slice(1):e).charAt(0),r="!"===(e=n?e.slice(1):e).charAt(0);return{name:e=r?e.slice(1):e,once:n,capture:r,passive:t}});function Yt(e,t){function n(){var e=arguments,r=n.fns;if(!Array.isArray(r))return Ct(r,null,arguments,t,"v-on handler");for(var i=r.slice(),o=0;o<i.length;o++)Ct(i[o],null,e,t,"v-on handler")}return n.fns=e,n}function Qt(e,t,r,o,a,s){var c,u,l,f;for(c in e)u=e[c],l=t[c],f=Xt(c),n(u)||(n(l)?(n(u.fns)&&(u=e[c]=Yt(u,s)),i(f.once)&&(u=e[c]=a(f.name,u,f.capture)),r(f.name,u,f.capture,f.passive,f.params)):u!==l&&(l.fns=u,e[c]=l));for(c in t)n(e[c])&&o((f=Xt(c)).name,t[c],f.capture)}function en(e,t,o){var a;e instanceof je&&(e=e.data.hook||(e.data.hook={}));var s=e[t];function c(){o.apply(this,arguments),_(a.fns,c)}n(s)?a=Yt([c]):r(s.fns)&&i(s.merged)?(a=s).fns.push(c):a=Yt([s,c]),a.merged=!0,e[t]=a}function tn(e,t,i){var o=t.options.props;if(!n(o)){var a={},s=e.attrs,c=e.props;if(r(s)||r(c))for(var u in o){var l=O(u);nn(a,c,u,l,!0)||nn(a,s,u,l,!1)}return a}}function nn(e,t,n,i,o){if(r(t)){if($(t,n))return e[n]=t[n],o||delete t[n],!0;if($(t,i))return e[n]=t[i],o||delete t[i],!0}return!1}function rn(e){for(var t=0;t<e.length;t++)if(Array.isArray(e[t]))return Array.prototype.concat.apply([],e);return e}function on(e){return a(e)?[De(e)]:Array.isArray(e)?sn(e):void 0}function an(e){return r(e)&&r(e.text)&&o(e.isComment)}function sn(e,t){var o,s,c,u,l=[];for(o=0;o<e.length;o++)n(s=e[o])||"boolean"==typeof s||(u=l[c=l.length-1],Array.isArray(s)?s.length>0&&(an((s=sn(s,(t||"")+"_"+o))[0])&&an(u)&&(l[c]=De(u.text+s[0].text),s.shift()),l.push.apply(l,s)):a(s)?an(u)?l[c]=De(u.text+s):""!==s&&l.push(De(s)):an(s)&&an(u)?l[c]=De(u.text+s.text):(i(e._isVList)&&r(s.tag)&&n(s.key)&&r(t)&&(s.key="__vlist"+t+"_"+o+"__"),l.push(s)));return l}function cn(e){var t=e.$options.provide;t&&(e._provided="function"==typeof t?t.call(e):t)}function un(e){var t=ln(e.$options.inject,e);t&&(Be(!1),Object.keys(t).forEach(function(n){Ke(e,n,t[n])}),Be(!0))}function ln(e,t){if(e){for(var n=Object.create(null),r=ye?Reflect.ownKeys(e):Object.keys(e),i=0;i<r.length;i++){var o=r[i];if("__ob__"!==o){for(var a=e[o].from,s=t;s;){if(s._provided&&$(s._provided,a)){n[o]=s._provided[a];break}s=s.$parent}if(!s)if("default"in e[o]){var c=e[o].default;n[o]="function"==typeof c?c.call(t):c}else 0}}return n}}function fn(e,t){if(!e||!e.length)return{};for(var n={},r=0,i=e.length;r<i;r++){var o=e[r],a=o.data;if(a&&a.attrs&&a.attrs.slot&&delete a.attrs.slot,o.context!==t&&o.fnContext!==t||!a||null==a.slot)(n.default||(n.default=[])).push(o);else{var s=a.slot,c=n[s]||(n[s]=[]);"template"===o.tag?c.push.apply(c,o.children||[]):c.push(o)}}for(var u in n)n[u].every(pn)&&delete n[u];return n}function pn(e){return e.isComment&&!e.asyncFactory||" "===e.text}function dn(e,n,r){var i,o=Object.keys(n).length>0,a=e?!!e.$stable:!o,s=e&&e.$key;if(e){if(e._normalized)return e._normalized;if(a&&r&&r!==t&&s===r.$key&&!o&&!r.$hasNormal)return r;for(var c in i={},e)e[c]&&"$"!==c[0]&&(i[c]=vn(n,c,e[c]))}else i={};for(var u in n)u in i||(i[u]=hn(n,u));return e&&Object.isExtensible(e)&&(e._normalized=i),q(i,"$stable",a),q(i,"$key",s),q(i,"$hasNormal",o),i}function vn(e,t,n){var r=function(){var e=arguments.length?n.apply(null,arguments):n({});return(e=e&&"object"==typeof e&&!Array.isArray(e)?[e]:on(e))&&(0===e.length||1===e.length&&e[0].isComment)?void 0:e};return n.proxy&&Object.defineProperty(e,t,{get:r,enumerable:!0,configurable:!0}),r}function hn(e,t){return function(){return e[t]}}function mn(e,t){var n,i,o,a,c;if(Array.isArray(e)||"string"==typeof e)for(n=new Array(e.length),i=0,o=e.length;i<o;i++)n[i]=t(e[i],i);else if("number"==typeof e)for(n=new Array(e),i=0;i<e;i++)n[i]=t(i+1,i);else if(s(e))if(ye&&e[Symbol.iterator]){n=[];for(var u=e[Symbol.iterator](),l=u.next();!l.done;)n.push(t(l.value,n.length)),l=u.next()}else for(a=Object.keys(e),n=new Array(a.length),i=0,o=a.length;i<o;i++)c=a[i],n[i]=t(e[c],c,i);return r(n)||(n=[]),n._isVList=!0,n}function yn(e,t,n,r){var i,o=this.$scopedSlots[e];o?(n=n||{},r&&(n=E(E({},r),n)),i=o(n)||t):i=this.$slots[e]||t;var a=n&&n.slot;return a?this.$createElement("template",{slot:a},i):i}function gn(e){return lt(this.$options,"filters",e,!0)||I}function _n(e,t){return Array.isArray(e)?-1===e.indexOf(t):e!==t}function bn(e,t,n,r,i){var o=V.keyCodes[t]||n;return i&&r&&!V.keyCodes[t]?_n(i,r):o?_n(o,e):r?O(r)!==t:void 0}function $n(e,t,n,r,i){if(n)if(s(n)){var o;Array.isArray(n)&&(n=M(n));var a=function(a){if("class"===a||"style"===a||g(a))o=e;else{var s=e.attrs&&e.attrs.type;o=r||V.mustUseProp(t,s,a)?e.domProps||(e.domProps={}):e.attrs||(e.attrs={})}var c=C(a),u=O(a);c in o||u in o||(o[a]=n[a],i&&((e.on||(e.on={}))["update:"+a]=function(e){n[a]=e}))};for(var c in n)a(c)}else;return e}function wn(e,t){var n=this._staticTrees||(this._staticTrees=[]),r=n[e];return r&&!t?r:(Cn(r=n[e]=this.$options.staticRenderFns[e].call(this._renderProxy,null,this),"__static__"+e,!1),r)}function xn(e,t,n){return Cn(e,"__once__"+t+(n?"_"+n:""),!0),e}function Cn(e,t,n){if(Array.isArray(e))for(var r=0;r<e.length;r++)e[r]&&"string"!=typeof e[r]&&An(e[r],t+"_"+r,n);else An(e,t,n)}function An(e,t,n){e.isStatic=!0,e.key=t,e.isOnce=n}function kn(e,t){if(t)if(l(t)){var n=e.on=e.on?E({},e.on):{};for(var r in t){var i=n[r],o=t[r];n[r]=i?[].concat(i,o):o}}else;return e}function On(e,t,n,r){t=t||{$stable:!n};for(var i=0;i<e.length;i++){var o=e[i];Array.isArray(o)?On(o,t,n):o&&(o.proxy&&(o.fn.proxy=!0),t[o.key]=o.fn)}return r&&(t.$key=r),t}function Sn(e,t){for(var n=0;n<t.length;n+=2){var r=t[n];"string"==typeof r&&r&&(e[t[n]]=t[n+1])}return e}function Tn(e,t){return"string"==typeof e?t+e:e}function Nn(e){e._o=xn,e._n=h,e._s=v,e._l=mn,e._t=yn,e._q=P,e._i=R,e._m=wn,e._f=gn,e._k=bn,e._b=$n,e._v=De,e._e=Me,e._u=On,e._g=kn,e._d=Sn,e._p=Tn}function jn(e,n,r,o,a){var s,c=this,u=a.options;$(o,"_uid")?(s=Object.create(o))._original=o:(s=o,o=o._original);var l=i(u._compiled),f=!l;this.data=e,this.props=n,this.children=r,this.parent=o,this.listeners=e.on||t,this.injections=ln(u.inject,o),this.slots=function(){return c.$slots||dn(e.scopedSlots,c.$slots=fn(r,o)),c.$slots},Object.defineProperty(this,"scopedSlots",{enumerable:!0,get:function(){return dn(e.scopedSlots,this.slots())}}),l&&(this.$options=u,this.$slots=this.slots(),this.$scopedSlots=dn(e.scopedSlots,this.$slots)),u._scopeId?this._c=function(e,t,n,r){var i=Vn(s,e,t,n,r,f);return i&&!Array.isArray(i)&&(i.fnScopeId=u._scopeId,i.fnContext=o),i}:this._c=function(e,t,n,r){return Vn(s,e,t,n,r,f)}}function En(e,n,i,o,a){var s=e.options,c={},u=s.props;if(r(u))for(var l in u)c[l]=ft(l,u,n||t);else r(i.attrs)&&Dn(c,i.attrs),r(i.props)&&Dn(c,i.props);var f=new jn(i,c,a,o,e),p=s.render.call(null,f._c,f);if(p instanceof je)return Mn(p,i,f.parent,s,f);if(Array.isArray(p)){for(var d=on(p)||[],v=new Array(d.length),h=0;h<d.length;h++)v[h]=Mn(d[h],i,f.parent,s,f);return v}}function Mn(e,t,n,r,i){var o=Le(e);return o.fnContext=n,o.fnOptions=r,t.slot&&((o.data||(o.data={})).slot=t.slot),o}function Dn(e,t){for(var n in t)e[C(n)]=t[n]}Nn(jn.prototype);var Ln={init:function(e,t){if(e.componentInstance&&!e.componentInstance._isDestroyed&&e.data.keepAlive){var n=e;Ln.prepatch(n,n)}else{(e.componentInstance=Pn(e,ur)).$mount(t?e.elm:void 0,t)}},prepatch:function(e,t){var n=t.componentOptions;hr(t.componentInstance=e.componentInstance,n.propsData,n.listeners,t,n.children)},insert:function(e){var t=e.context,n=e.componentInstance;n._isMounted||(n._isMounted=!0,_r(n,"mounted")),e.data.keepAlive&&(t._isMounted?Dr(n):yr(n,!0))},destroy:function(e){var t=e.componentInstance;t._isDestroyed||(e.data.keepAlive?gr(t,!0):t.$destroy())}},In=Object.keys(Ln);function Fn(e,t,o,a,c){if(!n(e)){var u=o.$options._base;if(s(e)&&(e=u.extend(e)),"function"==typeof e){var l;if(n(e.cid)&&void 0===(e=er(l=e,u)))return Qn(l,t,o,a,c);t=t||{},ri(e),r(t.model)&&Bn(e.options,t);var f=tn(t,e,c);if(i(e.options.functional))return En(e,f,t,o,a);var p=t.on;if(t.on=t.nativeOn,i(e.options.abstract)){var d=t.slot;t={},d&&(t.slot=d)}Rn(t);var v=e.options.name||c;return new je("vue-component-"+e.cid+(v?"-"+v:""),t,void 0,void 0,void 0,o,{Ctor:e,propsData:f,listeners:p,tag:c,children:a},l)}}}function Pn(e,t){var n={_isComponent:!0,_parentVnode:e,parent:t},i=e.data.inlineTemplate;return r(i)&&(n.render=i.render,n.staticRenderFns=i.staticRenderFns),new e.componentOptions.Ctor(n)}function Rn(e){for(var t=e.hook||(e.hook={}),n=0;n<In.length;n++){var r=In[n],i=t[r],o=Ln[r];i===o||i&&i._merged||(t[r]=i?Hn(o,i):o)}}function Hn(e,t){var n=function(n,r){e(n,r),t(n,r)};return n._merged=!0,n}function Bn(e,t){var n=e.model&&e.model.prop||"value",i=e.model&&e.model.event||"input";(t.attrs||(t.attrs={}))[n]=t.model.value;var o=t.on||(t.on={}),a=o[i],s=t.model.callback;r(a)?(Array.isArray(a)?-1===a.indexOf(s):a!==s)&&(o[i]=[s].concat(a)):o[i]=s}var Un=1,zn=2;function Vn(e,t,n,r,o,s){return(Array.isArray(n)||a(n))&&(o=r,r=n,n=void 0),i(s)&&(o=zn),Jn(e,t,n,r,o)}function Jn(e,t,n,i,o){if(r(n)&&r(n.__ob__))return Me();if(r(n)&&r(n.is)&&(t=n.is),!t)return Me();var a,s,c;(Array.isArray(i)&&"function"==typeof i[0]&&((n=n||{}).scopedSlots={default:i[0]},i.length=0),o===zn?i=on(i):o===Un&&(i=rn(i)),"string"==typeof t)?(s=e.$vnode&&e.$vnode.ns||V.getTagNamespace(t),a=V.isReservedTag(t)?new je(V.parsePlatformTagName(t),n,i,void 0,void 0,e):n&&n.pre||!r(c=lt(e.$options,"components",t))?new je(t,n,i,void 0,void 0,e):Fn(c,n,e,i,t)):a=Fn(t,n,e,i);return Array.isArray(a)?a:r(a)?(r(s)&&Kn(a,s),r(n)&&qn(n),a):Me()}function Kn(e,t,o){if(e.ns=t,"foreignObject"===e.tag&&(t=void 0,o=!0),r(e.children))for(var a=0,s=e.children.length;a<s;a++){var c=e.children[a];r(c.tag)&&(n(c.ns)||i(o)&&"svg"!==c.tag)&&Kn(c,t,o)}}function qn(e){s(e.style)&&Zt(e.style),s(e.class)&&Zt(e.class)}function Wn(e){e._vnode=null,e._staticTrees=null;var n=e.$options,r=e.$vnode=n._parentVnode,i=r&&r.context;e.$slots=fn(n._renderChildren,i),e.$scopedSlots=t,e._c=function(t,n,r,i){return Vn(e,t,n,r,i,!1)},e.$createElement=function(t,n,r,i){return Vn(e,t,n,r,i,!0)};var o=r&&r.data;Ke(e,"$attrs",o&&o.attrs||t,null,!0),Ke(e,"$listeners",n._parentListeners||t,null,!0)}var Zn,Gn=null;function Xn(e){Nn(e.prototype),e.prototype.$nextTick=function(e){return qt(e,this)},e.prototype._render=function(){var e,t=this,n=t.$options,r=n.render,i=n._parentVnode;i&&(t.$scopedSlots=dn(i.data.scopedSlots,t.$slots,t.$scopedSlots)),t.$vnode=i;try{Gn=t,e=r.call(t._renderProxy,t.$createElement)}catch(Xl){xt(Xl,t,"render"),e=t._vnode}finally{Gn=null}return Array.isArray(e)&&1===e.length&&(e=e[0]),e instanceof je||(e=Me()),e.parent=i,e}}function Yn(e,t){return(e.__esModule||ye&&"Module"===e[Symbol.toStringTag])&&(e=e.default),s(e)?t.extend(e):e}function Qn(e,t,n,r,i){var o=Me();return o.asyncFactory=e,o.asyncMeta={data:t,context:n,children:r,tag:i},o}function er(e,t){if(i(e.error)&&r(e.errorComp))return e.errorComp;if(r(e.resolved))return e.resolved;var o=Gn;if(o&&r(e.owners)&&-1===e.owners.indexOf(o)&&e.owners.push(o),i(e.loading)&&r(e.loadingComp))return e.loadingComp;if(o&&!r(e.owners)){var a=e.owners=[o],c=!0,u=null,l=null;o.$on("hook:destroyed",function(){return _(a,o)});var f=function(e){for(var t=0,n=a.length;t<n;t++)a[t].$forceUpdate();e&&(a.length=0,null!==u&&(clearTimeout(u),u=null),null!==l&&(clearTimeout(l),l=null))},p=H(function(n){e.resolved=Yn(n,t),c?a.length=0:f(!0)}),v=H(function(t){r(e.errorComp)&&(e.error=!0,f(!0))}),h=e(p,v);return s(h)&&(d(h)?n(e.resolved)&&h.then(p,v):d(h.component)&&(h.component.then(p,v),r(h.error)&&(e.errorComp=Yn(h.error,t)),r(h.loading)&&(e.loadingComp=Yn(h.loading,t),0===h.delay?e.loading=!0:u=setTimeout(function(){u=null,n(e.resolved)&&n(e.error)&&(e.loading=!0,f(!1))},h.delay||200)),r(h.timeout)&&(l=setTimeout(function(){l=null,n(e.resolved)&&v(null)},h.timeout)))),c=!1,e.loading?e.loadingComp:e.resolved}}function tr(e){return e.isComment&&e.asyncFactory}function nr(e){if(Array.isArray(e))for(var t=0;t<e.length;t++){var n=e[t];if(r(n)&&(r(n.componentOptions)||tr(n)))return n}}function rr(e){e._events=Object.create(null),e._hasHookEvent=!1;var t=e.$options._parentListeners;t&&sr(e,t)}function ir(e,t){Zn.$on(e,t)}function or(e,t){Zn.$off(e,t)}function ar(e,t){var n=Zn;return function r(){null!==t.apply(null,arguments)&&n.$off(e,r)}}function sr(e,t,n){Zn=e,Qt(t,n||{},ir,or,ar,e),Zn=void 0}function cr(e){var t=/^hook:/;e.prototype.$on=function(e,n){var r=this;if(Array.isArray(e))for(var i=0,o=e.length;i<o;i++)r.$on(e[i],n);else(r._events[e]||(r._events[e]=[])).push(n),t.test(e)&&(r._hasHookEvent=!0);return r},e.prototype.$once=function(e,t){var n=this;function r(){n.$off(e,r),t.apply(n,arguments)}return r.fn=t,n.$on(e,r),n},e.prototype.$off=function(e,t){var n=this;if(!arguments.length)return n._events=Object.create(null),n;if(Array.isArray(e)){for(var r=0,i=e.length;r<i;r++)n.$off(e[r],t);return n}var o,a=n._events[e];if(!a)return n;if(!t)return n._events[e]=null,n;for(var s=a.length;s--;)if((o=a[s])===t||o.fn===t){a.splice(s,1);break}return n},e.prototype.$emit=function(e){var t=this,n=t._events[e];if(n){n=n.length>1?j(n):n;for(var r=j(arguments,1),i='event handler for "'+e+'"',o=0,a=n.length;o<a;o++)Ct(n[o],t,r,t,i)}return t}}var ur=null,lr=!1;function fr(e){var t=ur;return ur=e,function(){ur=t}}function pr(e){var t=e.$options,n=t.parent;if(n&&!t.abstract){for(;n.$options.abstract&&n.$parent;)n=n.$parent;n.$children.push(e)}e.$parent=n,e.$root=n?n.$root:e,e.$children=[],e.$refs={},e._watcher=null,e._inactive=null,e._directInactive=!1,e._isMounted=!1,e._isDestroyed=!1,e._isBeingDestroyed=!1}function dr(e){e.prototype._update=function(e,t){var n=this,r=n.$el,i=n._vnode,o=fr(n);n._vnode=e,n.$el=i?n.__patch__(i,e):n.__patch__(n.$el,e,t,!1),o(),r&&(r.__vue__=null),n.$el&&(n.$el.__vue__=n),n.$vnode&&n.$parent&&n.$vnode===n.$parent._vnode&&(n.$parent.$el=n.$el)},e.prototype.$forceUpdate=function(){this._watcher&&this._watcher.update()},e.prototype.$destroy=function(){var e=this;if(!e._isBeingDestroyed){_r(e,"beforeDestroy"),e._isBeingDestroyed=!0;var t=e.$parent;!t||t._isBeingDestroyed||e.$options.abstract||_(t.$children,e),e._watcher&&e._watcher.teardown();for(var n=e._watchers.length;n--;)e._watchers[n].teardown();e._data.__ob__&&e._data.__ob__.vmCount--,e._isDestroyed=!0,e.__patch__(e._vnode,null),_r(e,"destroyed"),e.$off(),e.$el&&(e.$el.__vue__=null),e.$vnode&&(e.$vnode.parent=null)}}}function vr(e,t,n){var r;return e.$el=t,e.$options.render||(e.$options.render=Me),_r(e,"beforeMount"),r=function(){e._update(e._render(),n)},new Pr(e,r,D,{before:function(){e._isMounted&&!e._isDestroyed&&_r(e,"beforeUpdate")}},!0),n=!1,null==e.$vnode&&(e._isMounted=!0,_r(e,"mounted")),e}function hr(e,n,r,i,o){var a=i.data.scopedSlots,s=e.$scopedSlots,c=!!(a&&!a.$stable||s!==t&&!s.$stable||a&&e.$scopedSlots.$key!==a.$key),u=!!(o||e.$options._renderChildren||c);if(e.$options._parentVnode=i,e.$vnode=i,e._vnode&&(e._vnode.parent=i),e.$options._renderChildren=o,e.$attrs=i.data.attrs||t,e.$listeners=r||t,n&&e.$options.props){Be(!1);for(var l=e._props,f=e.$options._propKeys||[],p=0;p<f.length;p++){var d=f[p],v=e.$options.props;l[d]=ft(d,v,n,e)}Be(!0),e.$options.propsData=n}r=r||t;var h=e.$options._parentListeners;e.$options._parentListeners=r,sr(e,r,h),u&&(e.$slots=fn(o,i.context),e.$forceUpdate())}function mr(e){for(;e&&(e=e.$parent);)if(e._inactive)return!0;return!1}function yr(e,t){if(t){if(e._directInactive=!1,mr(e))return}else if(e._directInactive)return;if(e._inactive||null===e._inactive){e._inactive=!1;for(var n=0;n<e.$children.length;n++)yr(e.$children[n]);_r(e,"activated")}}function gr(e,t){if(!(t&&(e._directInactive=!0,mr(e))||e._inactive)){e._inactive=!0;for(var n=0;n<e.$children.length;n++)gr(e.$children[n]);_r(e,"deactivated")}}function _r(e,t){Te();var n=e.$options[t],r=t+" hook";if(n)for(var i=0,o=n.length;i<o;i++)Ct(n[i],e,null,e,r);e._hasHookEvent&&e.$emit("hook:"+t),Ne()}var br=100,$r=[],wr=[],xr={},Cr={},Ar=!1,kr=!1,Or=0;function Sr(){Or=$r.length=wr.length=0,xr={},Ar=kr=!1}var Tr=0,Nr=Date.now;if(Y&&!ne){var jr=window.performance;jr&&"function"==typeof jr.now&&Nr()>document.createEvent("Event").timeStamp&&(Nr=function(){return jr.now()})}function Er(){var e,t;for(Tr=Nr(),kr=!0,$r.sort(function(e,t){return e.id-t.id}),Or=0;Or<$r.length;Or++)(e=$r[Or]).before&&e.before(),t=e.id,xr[t]=null,e.run();var n=wr.slice(),r=$r.slice();Sr(),Lr(n),Mr(r),ve&&V.devtools&&ve.emit("flush")}function Mr(e){for(var t=e.length;t--;){var n=e[t],r=n.vm;r._watcher===n&&r._isMounted&&!r._isDestroyed&&_r(r,"updated")}}function Dr(e){e._inactive=!1,wr.push(e)}function Lr(e){for(var t=0;t<e.length;t++)e[t]._inactive=!0,yr(e[t],!0)}function Ir(e){var t=e.id;if(null==xr[t]){if(xr[t]=!0,kr){for(var n=$r.length-1;n>Or&&$r[n].id>e.id;)n--;$r.splice(n+1,0,e)}else $r.push(e);Ar||(Ar=!0,qt(Er))}}var Fr=0,Pr=function(e,t,n,r,i){this.vm=e,i&&(e._watcher=this),e._watchers.push(this),r?(this.deep=!!r.deep,this.user=!!r.user,this.lazy=!!r.lazy,this.sync=!!r.sync,this.before=r.before):this.deep=this.user=this.lazy=this.sync=!1,this.cb=n,this.id=++Fr,this.active=!0,this.dirty=this.lazy,this.deps=[],this.newDeps=[],this.depIds=new me,this.newDepIds=new me,this.expression="","function"==typeof t?this.getter=t:(this.getter=Z(t),this.getter||(this.getter=D)),this.value=this.lazy?void 0:this.get()};Pr.prototype.get=function(){var e;Te(this);var t=this.vm;try{e=this.getter.call(t,t)}catch(Xl){if(!this.user)throw Xl;xt(Xl,t,'getter for watcher "'+this.expression+'"')}finally{this.deep&&Zt(e),Ne(),this.cleanupDeps()}return e},Pr.prototype.addDep=function(e){var t=e.id;this.newDepIds.has(t)||(this.newDepIds.add(t),this.newDeps.push(e),this.depIds.has(t)||e.addSub(this))},Pr.prototype.cleanupDeps=function(){for(var e=this.deps.length;e--;){var t=this.deps[e];this.newDepIds.has(t.id)||t.removeSub(this)}var n=this.depIds;this.depIds=this.newDepIds,this.newDepIds=n,this.newDepIds.clear(),n=this.deps,this.deps=this.newDeps,this.newDeps=n,this.newDeps.length=0},Pr.prototype.update=function(){this.lazy?this.dirty=!0:this.sync?this.run():Ir(this)},Pr.prototype.run=function(){if(this.active){var e=this.get();if(e!==this.value||s(e)||this.deep){var t=this.value;if(this.value=e,this.user)try{this.cb.call(this.vm,e,t)}catch(Xl){xt(Xl,this.vm,'callback for watcher "'+this.expression+'"')}else this.cb.call(this.vm,e,t)}}},Pr.prototype.evaluate=function(){this.value=this.get(),this.dirty=!1},Pr.prototype.depend=function(){for(var e=this.deps.length;e--;)this.deps[e].depend()},Pr.prototype.teardown=function(){if(this.active){this.vm._isBeingDestroyed||_(this.vm._watchers,this);for(var e=this.deps.length;e--;)this.deps[e].removeSub(this);this.active=!1}};var Rr={enumerable:!0,configurable:!0,get:D,set:D};function Hr(e,t,n){Rr.get=function(){return this[t][n]},Rr.set=function(e){this[t][n]=e},Object.defineProperty(e,n,Rr)}function Br(e){e._watchers=[];var t=e.$options;t.props&&Ur(e,t.props),t.methods&&Gr(e,t.methods),t.data?zr(e):Je(e._data={},!0),t.computed&&Kr(e,t.computed),t.watch&&t.watch!==le&&Xr(e,t.watch)}function Ur(e,t){var n=e.$options.propsData||{},r=e._props={},i=e.$options._propKeys=[],o=!e.$parent;o||Be(!1);var a=function(o){i.push(o);var a=ft(o,t,n,e);Ke(r,o,a),o in e||Hr(e,"_props",o)};for(var s in t)a(s);Be(!0)}function zr(e){var t=e.$options.data;l(t=e._data="function"==typeof t?Vr(t,e):t||{})||(t={});for(var n=Object.keys(t),r=e.$options.props,i=(e.$options.methods,n.length);i--;){var o=n[i];0,r&&$(r,o)||K(o)||Hr(e,"_data",o)}Je(t,!0)}function Vr(e,t){Te();try{return e.call(t,t)}catch(Xl){return xt(Xl,t,"data()"),{}}finally{Ne()}}var Jr={lazy:!0};function Kr(e,t){var n=e._computedWatchers=Object.create(null),r=de();for(var i in t){var o=t[i],a="function"==typeof o?o:o.get;0,r||(n[i]=new Pr(e,a||D,D,Jr)),i in e||qr(e,i,o)}}function qr(e,t,n){var r=!de();"function"==typeof n?(Rr.get=r?Wr(t):Zr(n),Rr.set=D):(Rr.get=n.get?r&&!1!==n.cache?Wr(t):Zr(n.get):D,Rr.set=n.set||D),Object.defineProperty(e,t,Rr)}function Wr(e){return function(){var t=this._computedWatchers&&this._computedWatchers[e];if(t)return t.dirty&&t.evaluate(),Oe.target&&t.depend(),t.value}}function Zr(e){return function(){return e.call(this,this)}}function Gr(e,t){e.$options.props;for(var n in t)e[n]="function"!=typeof t[n]?D:N(t[n],e)}function Xr(e,t){for(var n in t){var r=t[n];if(Array.isArray(r))for(var i=0;i<r.length;i++)Yr(e,n,r[i]);else Yr(e,n,r)}}function Yr(e,t,n,r){return l(n)&&(r=n,n=n.handler),"string"==typeof n&&(n=e[n]),e.$watch(t,n,r)}function Qr(e){var t={get:function(){return this._data}},n={get:function(){return this._props}};Object.defineProperty(e.prototype,"$data",t),Object.defineProperty(e.prototype,"$props",n),e.prototype.$set=qe,e.prototype.$delete=We,e.prototype.$watch=function(e,t,n){if(l(t))return Yr(this,e,t,n);(n=n||{}).user=!0;var r=new Pr(this,e,t,n);if(n.immediate)try{t.call(this,r.value)}catch(i){xt(i,this,'callback for immediate watcher "'+r.expression+'"')}return function(){r.teardown()}}}var ei=0;function ti(e){e.prototype._init=function(e){var t=this;t._uid=ei++,t._isVue=!0,e&&e._isComponent?ni(t,e):t.$options=ut(ri(t.constructor),e||{},t),t._renderProxy=t,t._self=t,pr(t),rr(t),Wn(t),_r(t,"beforeCreate"),un(t),Br(t),cn(t),_r(t,"created"),t.$options.el&&t.$mount(t.$options.el)}}function ni(e,t){var n=e.$options=Object.create(e.constructor.options),r=t._parentVnode;n.parent=t.parent,n._parentVnode=r;var i=r.componentOptions;n.propsData=i.propsData,n._parentListeners=i.listeners,n._renderChildren=i.children,n._componentTag=i.tag,t.render&&(n.render=t.render,n.staticRenderFns=t.staticRenderFns)}function ri(e){var t=e.options;if(e.super){var n=ri(e.super);if(n!==e.superOptions){e.superOptions=n;var r=ii(e);r&&E(e.extendOptions,r),(t=e.options=ut(n,e.extendOptions)).name&&(t.components[t.name]=e)}}return t}function ii(e){var t,n=e.options,r=e.sealedOptions;for(var i in n)n[i]!==r[i]&&(t||(t={}),t[i]=n[i]);return t}function oi(e){this._init(e)}function ai(e){e.use=function(e){var t=this._installedPlugins||(this._installedPlugins=[]);if(t.indexOf(e)>-1)return this;var n=j(arguments,1);return n.unshift(this),"function"==typeof e.install?e.install.apply(e,n):"function"==typeof e&&e.apply(null,n),t.push(e),this}}function si(e){e.mixin=function(e){return this.options=ut(this.options,e),this}}function ci(e){e.cid=0;var t=1;e.extend=function(e){e=e||{};var n=this,r=n.cid,i=e._Ctor||(e._Ctor={});if(i[r])return i[r];var o=e.name||n.options.name;var a=function(e){this._init(e)};return(a.prototype=Object.create(n.prototype)).constructor=a,a.cid=t++,a.options=ut(n.options,e),a.super=n,a.options.props&&ui(a),a.options.computed&&li(a),a.extend=n.extend,a.mixin=n.mixin,a.use=n.use,U.forEach(function(e){a[e]=n[e]}),o&&(a.options.components[o]=a),a.superOptions=n.options,a.extendOptions=e,a.sealedOptions=E({},a.options),i[r]=a,a}}function ui(e){var t=e.options.props;for(var n in t)Hr(e.prototype,"_props",n)}function li(e){var t=e.options.computed;for(var n in t)qr(e.prototype,n,t[n])}function fi(e){U.forEach(function(t){e[t]=function(e,n){return n?("component"===t&&l(n)&&(n.name=n.name||e,n=this.options._base.extend(n)),"directive"===t&&"function"==typeof n&&(n={bind:n,update:n}),this.options[t+"s"][e]=n,n):this.options[t+"s"][e]}})}function pi(e){return e&&(e.Ctor.options.name||e.tag)}function di(e,t){return Array.isArray(e)?e.indexOf(t)>-1:"string"==typeof e?e.split(",").indexOf(t)>-1:!!f(e)&&e.test(t)}function vi(e,t){var n=e.cache,r=e.keys,i=e._vnode;for(var o in n){var a=n[o];if(a){var s=pi(a.componentOptions);s&&!t(s)&&hi(n,o,r,i)}}}function hi(e,t,n,r){var i=e[t];!i||r&&i.tag===r.tag||i.componentInstance.$destroy(),e[t]=null,_(n,t)}ti(oi),Qr(oi),cr(oi),dr(oi),Xn(oi);var mi=[String,RegExp,Array],yi={name:"keep-alive",abstract:!0,props:{include:mi,exclude:mi,max:[String,Number]},created:function(){this.cache=Object.create(null),this.keys=[]},destroyed:function(){for(var e in this.cache)hi(this.cache,e,this.keys)},mounted:function(){var e=this;this.$watch("include",function(t){vi(e,function(e){return di(t,e)})}),this.$watch("exclude",function(t){vi(e,function(e){return!di(t,e)})})},render:function(){var e=this.$slots.default,t=nr(e),n=t&&t.componentOptions;if(n){var r=pi(n),i=this.include,o=this.exclude;if(i&&(!r||!di(i,r))||o&&r&&di(o,r))return t;var a=this.cache,s=this.keys,c=null==t.key?n.Ctor.cid+(n.tag?"::"+n.tag:""):t.key;a[c]?(t.componentInstance=a[c].componentInstance,_(s,c),s.push(c)):(a[c]=t,s.push(c),this.max&&s.length>parseInt(this.max)&&hi(a,s[0],s,this._vnode)),t.data.keepAlive=!0}return t||e&&e[0]}},gi={KeepAlive:yi};function _i(e){var t={get:function(){return V}};Object.defineProperty(e,"config",t),e.util={warn:we,extend:E,mergeOptions:ut,defineReactive:Ke},e.set=qe,e.delete=We,e.nextTick=qt,e.observable=function(e){return Je(e),e},e.options=Object.create(null),U.forEach(function(t){e.options[t+"s"]=Object.create(null)}),e.options._base=e,E(e.options.components,gi),ai(e),si(e),ci(e),fi(e)}_i(oi),Object.defineProperty(oi.prototype,"$isServer",{get:de}),Object.defineProperty(oi.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),Object.defineProperty(oi,"FunctionalRenderContext",{value:jn}),oi.version="2.6.11";var bi=m("style,class"),$i=m("input,textarea,option,select,progress"),wi=function(e,t,n){return"value"===n&&$i(e)&&"button"!==t||"selected"===n&&"option"===e||"checked"===n&&"input"===e||"muted"===n&&"video"===e},xi=m("contenteditable,draggable,spellcheck"),Ci=m("events,caret,typing,plaintext-only"),Ai=function(e,t){return Ni(t)||"false"===t?"false":"contenteditable"===e&&Ci(t)?t:"true"},ki=m("allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,default,defaultchecked,defaultmuted,defaultselected,defer,disabled,enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,required,reversed,scoped,seamless,selected,sortable,translate,truespeed,typemustmatch,visible"),Oi="http://www.w3.org/1999/xlink",Si=function(e){return":"===e.charAt(5)&&"xlink"===e.slice(0,5)},Ti=function(e){return Si(e)?e.slice(6,e.length):""},Ni=function(e){return null==e||!1===e};function ji(e){for(var t=e.data,n=e,i=e;r(i.componentInstance);)(i=i.componentInstance._vnode)&&i.data&&(t=Ei(i.data,t));for(;r(n=n.parent);)n&&n.data&&(t=Ei(t,n.data));return Mi(t.staticClass,t.class)}function Ei(e,t){return{staticClass:Di(e.staticClass,t.staticClass),class:r(e.class)?[e.class,t.class]:t.class}}function Mi(e,t){return r(e)||r(t)?Di(e,Li(t)):""}function Di(e,t){return e?t?e+" "+t:e:t||""}function Li(e){return Array.isArray(e)?Ii(e):s(e)?Fi(e):"string"==typeof e?e:""}function Ii(e){for(var t,n="",i=0,o=e.length;i<o;i++)r(t=Li(e[i]))&&""!==t&&(n&&(n+=" "),n+=t);return n}function Fi(e){var t="";for(var n in e)e[n]&&(t&&(t+=" "),t+=n);return t}var Pi={svg:"http://www.w3.org/2000/svg",math:"http://www.w3.org/1998/Math/MathML"},Ri=m("html,body,base,head,link,meta,style,title,address,article,aside,footer,header,h1,h2,h3,h4,h5,h6,hgroup,nav,section,div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,rtc,ruby,s,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,embed,object,param,source,canvas,script,noscript,del,ins,caption,col,colgroup,table,thead,tbody,td,th,tr,button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,output,progress,select,textarea,details,dialog,menu,menuitem,summary,content,element,shadow,template,blockquote,iframe,tfoot"),Hi=m("svg,animate,circle,clippath,cursor,defs,desc,ellipse,filter,font-face,foreignObject,g,glyph,image,line,marker,mask,missing-glyph,path,pattern,polygon,polyline,rect,switch,symbol,text,textpath,tspan,use,view",!0),Bi=function(e){return"pre"===e},Ui=function(e){return Ri(e)||Hi(e)};function zi(e){return Hi(e)?"svg":"math"===e?"math":void 0}var Vi=Object.create(null);function Ji(e){if(!Y)return!0;if(Ui(e))return!1;if(e=e.toLowerCase(),null!=Vi[e])return Vi[e];var t=document.createElement(e);return e.indexOf("-")>-1?Vi[e]=t.constructor===window.HTMLUnknownElement||t.constructor===window.HTMLElement:Vi[e]=/HTMLUnknownElement/.test(t.toString())}var Ki=m("text,number,password,search,email,tel,url");function qi(e){if("string"==typeof e){var t=document.querySelector(e);return t||document.createElement("div")}return e}function Wi(e,t){var n=document.createElement(e);return"select"!==e?n:(t.data&&t.data.attrs&&void 0!==t.data.attrs.multiple&&n.setAttribute("multiple","multiple"),n)}function Zi(e,t){return document.createElementNS(Pi[e],t)}function Gi(e){return document.createTextNode(e)}function Xi(e){return document.createComment(e)}function Yi(e,t,n){e.insertBefore(t,n)}function Qi(e,t){e.removeChild(t)}function eo(e,t){e.appendChild(t)}function to(e){return e.parentNode}function no(e){return e.nextSibling}function ro(e){return e.tagName}function io(e,t){e.textContent=t}function oo(e,t){e.setAttribute(t,"")}var ao=Object.freeze({createElement:Wi,createElementNS:Zi,createTextNode:Gi,createComment:Xi,insertBefore:Yi,removeChild:Qi,appendChild:eo,parentNode:to,nextSibling:no,tagName:ro,setTextContent:io,setStyleScope:oo}),so={create:function(e,t){co(t)},update:function(e,t){e.data.ref!==t.data.ref&&(co(e,!0),co(t))},destroy:function(e){co(e,!0)}};function co(e,t){var n=e.data.ref;if(r(n)){var i=e.context,o=e.componentInstance||e.elm,a=i.$refs;t?Array.isArray(a[n])?_(a[n],o):a[n]===o&&(a[n]=void 0):e.data.refInFor?Array.isArray(a[n])?a[n].indexOf(o)<0&&a[n].push(o):a[n]=[o]:a[n]=o}}var uo=new je("",{},[]),lo=["create","activate","update","remove","destroy"];function fo(e,t){return e.key===t.key&&(e.tag===t.tag&&e.isComment===t.isComment&&r(e.data)===r(t.data)&&po(e,t)||i(e.isAsyncPlaceholder)&&e.asyncFactory===t.asyncFactory&&n(t.asyncFactory.error))}function po(e,t){if("input"!==e.tag)return!0;var n,i=r(n=e.data)&&r(n=n.attrs)&&n.type,o=r(n=t.data)&&r(n=n.attrs)&&n.type;return i===o||Ki(i)&&Ki(o)}function vo(e,t,n){var i,o,a={};for(i=t;i<=n;++i)r(o=e[i].key)&&(a[o]=i);return a}function ho(e){var t,o,s={},c=e.modules,u=e.nodeOps;for(t=0;t<lo.length;++t)for(s[lo[t]]=[],o=0;o<c.length;++o)r(c[o][lo[t]])&&s[lo[t]].push(c[o][lo[t]]);function l(e){var t=u.parentNode(e);r(t)&&u.removeChild(t,e)}function f(e,t,n,o,a,c,l){if(r(e.elm)&&r(c)&&(e=c[l]=Le(e)),e.isRootInsert=!a,!function(e,t,n,o){var a=e.data;if(r(a)){var c=r(e.componentInstance)&&a.keepAlive;if(r(a=a.hook)&&r(a=a.init)&&a(e,!1),r(e.componentInstance))return p(e,t),d(n,e.elm,o),i(c)&&function(e,t,n,i){var o,a=e;for(;a.componentInstance;)if(a=a.componentInstance._vnode,r(o=a.data)&&r(o=o.transition)){for(o=0;o<s.activate.length;++o)s.activate[o](uo,a);t.push(a);break}d(n,e.elm,i)}(e,t,n,o),!0}}(e,t,n,o)){var f=e.data,h=e.children,m=e.tag;r(m)?(e.elm=e.ns?u.createElementNS(e.ns,m):u.createElement(m,e),g(e),v(e,h,t),r(f)&&y(e,t),d(n,e.elm,o)):i(e.isComment)?(e.elm=u.createComment(e.text),d(n,e.elm,o)):(e.elm=u.createTextNode(e.text),d(n,e.elm,o))}}function p(e,t){r(e.data.pendingInsert)&&(t.push.apply(t,e.data.pendingInsert),e.data.pendingInsert=null),e.elm=e.componentInstance.$el,h(e)?(y(e,t),g(e)):(co(e),t.push(e))}function d(e,t,n){r(e)&&(r(n)?u.parentNode(n)===e&&u.insertBefore(e,t,n):u.appendChild(e,t))}function v(e,t,n){if(Array.isArray(t)){0;for(var r=0;r<t.length;++r)f(t[r],n,e.elm,null,!0,t,r)}else a(e.text)&&u.appendChild(e.elm,u.createTextNode(String(e.text)))}function h(e){for(;e.componentInstance;)e=e.componentInstance._vnode;return r(e.tag)}function y(e,n){for(var i=0;i<s.create.length;++i)s.create[i](uo,e);r(t=e.data.hook)&&(r(t.create)&&t.create(uo,e),r(t.insert)&&n.push(e))}function g(e){var t;if(r(t=e.fnScopeId))u.setStyleScope(e.elm,t);else for(var n=e;n;)r(t=n.context)&&r(t=t.$options._scopeId)&&u.setStyleScope(e.elm,t),n=n.parent;r(t=ur)&&t!==e.context&&t!==e.fnContext&&r(t=t.$options._scopeId)&&u.setStyleScope(e.elm,t)}function _(e,t,n,r,i,o){for(;r<=i;++r)f(n[r],o,e,t,!1,n,r)}function b(e){var t,n,i=e.data;if(r(i))for(r(t=i.hook)&&r(t=t.destroy)&&t(e),t=0;t<s.destroy.length;++t)s.destroy[t](e);if(r(t=e.children))for(n=0;n<e.children.length;++n)b(e.children[n])}function $(e,t,n){for(;t<=n;++t){var i=e[t];r(i)&&(r(i.tag)?(w(i),b(i)):l(i.elm))}}function w(e,t){if(r(t)||r(e.data)){var n,i=s.remove.length+1;for(r(t)?t.listeners+=i:t=function(e,t){function n(){0==--n.listeners&&l(e)}return n.listeners=t,n}(e.elm,i),r(n=e.componentInstance)&&r(n=n._vnode)&&r(n.data)&&w(n,t),n=0;n<s.remove.length;++n)s.remove[n](e,t);r(n=e.data.hook)&&r(n=n.remove)?n(e,t):t()}else l(e.elm)}function x(e,t,n,i){for(var o=n;o<i;o++){var a=t[o];if(r(a)&&fo(e,a))return o}}function C(e,t,o,a,c,l){if(e!==t){r(t.elm)&&r(a)&&(t=a[c]=Le(t));var p=t.elm=e.elm;if(i(e.isAsyncPlaceholder))r(t.asyncFactory.resolved)?O(e.elm,t,o):t.isAsyncPlaceholder=!0;else if(i(t.isStatic)&&i(e.isStatic)&&t.key===e.key&&(i(t.isCloned)||i(t.isOnce)))t.componentInstance=e.componentInstance;else{var d,v=t.data;r(v)&&r(d=v.hook)&&r(d=d.prepatch)&&d(e,t);var m=e.children,y=t.children;if(r(v)&&h(t)){for(d=0;d<s.update.length;++d)s.update[d](e,t);r(d=v.hook)&&r(d=d.update)&&d(e,t)}n(t.text)?r(m)&&r(y)?m!==y&&function(e,t,i,o,a){var s,c,l,p=0,d=0,v=t.length-1,h=t[0],m=t[v],y=i.length-1,g=i[0],b=i[y],w=!a;for(;p<=v&&d<=y;)n(h)?h=t[++p]:n(m)?m=t[--v]:fo(h,g)?(C(h,g,o,i,d),h=t[++p],g=i[++d]):fo(m,b)?(C(m,b,o,i,y),m=t[--v],b=i[--y]):fo(h,b)?(C(h,b,o,i,y),w&&u.insertBefore(e,h.elm,u.nextSibling(m.elm)),h=t[++p],b=i[--y]):fo(m,g)?(C(m,g,o,i,d),w&&u.insertBefore(e,m.elm,h.elm),m=t[--v],g=i[++d]):(n(s)&&(s=vo(t,p,v)),n(c=r(g.key)?s[g.key]:x(g,t,p,v))?f(g,o,e,h.elm,!1,i,d):fo(l=t[c],g)?(C(l,g,o,i,d),t[c]=void 0,w&&u.insertBefore(e,l.elm,h.elm)):f(g,o,e,h.elm,!1,i,d),g=i[++d]);p>v?_(e,n(i[y+1])?null:i[y+1].elm,i,d,y,o):d>y&&$(t,p,v)}(p,m,y,o,l):r(y)?(r(e.text)&&u.setTextContent(p,""),_(p,null,y,0,y.length-1,o)):r(m)?$(m,0,m.length-1):r(e.text)&&u.setTextContent(p,""):e.text!==t.text&&u.setTextContent(p,t.text),r(v)&&r(d=v.hook)&&r(d=d.postpatch)&&d(e,t)}}}function A(e,t,n){if(i(n)&&r(e.parent))e.parent.data.pendingInsert=t;else for(var o=0;o<t.length;++o)t[o].data.hook.insert(t[o])}var k=m("attrs,class,staticClass,staticStyle,key");function O(e,t,n,o){var a,s=t.tag,c=t.data,u=t.children;if(o=o||c&&c.pre,t.elm=e,i(t.isComment)&&r(t.asyncFactory))return t.isAsyncPlaceholder=!0,!0;if(r(c)&&(r(a=c.hook)&&r(a=a.init)&&a(t,!0),r(a=t.componentInstance)))return p(t,n),!0;if(r(s)){if(r(u))if(e.hasChildNodes())if(r(a=c)&&r(a=a.domProps)&&r(a=a.innerHTML)){if(a!==e.innerHTML)return!1}else{for(var l=!0,f=e.firstChild,d=0;d<u.length;d++){if(!f||!O(f,u[d],n,o)){l=!1;break}f=f.nextSibling}if(!l||f)return!1}else v(t,u,n);if(r(c)){var h=!1;for(var m in c)if(!k(m)){h=!0,y(t,n);break}!h&&c.class&&Zt(c.class)}}else e.data!==t.text&&(e.data=t.text);return!0}return function(e,t,o,a){if(!n(t)){var c,l=!1,p=[];if(n(e))l=!0,f(t,p);else{var d=r(e.nodeType);if(!d&&fo(e,t))C(e,t,p,null,null,a);else{if(d){if(1===e.nodeType&&e.hasAttribute(B)&&(e.removeAttribute(B),o=!0),i(o)&&O(e,t,p))return A(t,p,!0),e;c=e,e=new je(u.tagName(c).toLowerCase(),{},[],void 0,c)}var v=e.elm,m=u.parentNode(v);if(f(t,p,v._leaveCb?null:m,u.nextSibling(v)),r(t.parent))for(var y=t.parent,g=h(t);y;){for(var _=0;_<s.destroy.length;++_)s.destroy[_](y);if(y.elm=t.elm,g){for(var w=0;w<s.create.length;++w)s.create[w](uo,y);var x=y.data.hook.insert;if(x.merged)for(var k=1;k<x.fns.length;k++)x.fns[k]()}else co(y);y=y.parent}r(m)?$([e],0,0):r(e.tag)&&b(e)}}return A(t,p,l),t.elm}r(e)&&b(e)}}var mo={create:yo,update:yo,destroy:function(e){yo(e,uo)}};function yo(e,t){(e.data.directives||t.data.directives)&&go(e,t)}function go(e,t){var n,r,i,o=e===uo,a=t===uo,s=bo(e.data.directives,e.context),c=bo(t.data.directives,t.context),u=[],l=[];for(n in c)r=s[n],i=c[n],r?(i.oldValue=r.value,i.oldArg=r.arg,wo(i,"update",t,e),i.def&&i.def.componentUpdated&&l.push(i)):(wo(i,"bind",t,e),i.def&&i.def.inserted&&u.push(i));if(u.length){var f=function(){for(var n=0;n<u.length;n++)wo(u[n],"inserted",t,e)};o?en(t,"insert",f):f()}if(l.length&&en(t,"postpatch",function(){for(var n=0;n<l.length;n++)wo(l[n],"componentUpdated",t,e)}),!o)for(n in s)c[n]||wo(s[n],"unbind",e,e,a)}var _o=Object.create(null);function bo(e,t){var n,r,i=Object.create(null);if(!e)return i;for(n=0;n<e.length;n++)(r=e[n]).modifiers||(r.modifiers=_o),i[$o(r)]=r,r.def=lt(t.$options,"directives",r.name,!0);return i}function $o(e){return e.rawName||e.name+"."+Object.keys(e.modifiers||{}).join(".")}function wo(e,t,n,r,i){var o=e.def&&e.def[t];if(o)try{o(n.elm,e,n,r,i)}catch(Xl){xt(Xl,n.context,"directive "+e.name+" "+t+" hook")}}var xo=[so,mo];function Co(e,t){var i=t.componentOptions;if(!(r(i)&&!1===i.Ctor.options.inheritAttrs||n(e.data.attrs)&&n(t.data.attrs))){var o,a,s=t.elm,c=e.data.attrs||{},u=t.data.attrs||{};for(o in r(u.__ob__)&&(u=t.data.attrs=E({},u)),u)a=u[o],c[o]!==a&&Ao(s,o,a);for(o in(ne||ie)&&u.value!==c.value&&Ao(s,"value",u.value),c)n(u[o])&&(Si(o)?s.removeAttributeNS(Oi,Ti(o)):xi(o)||s.removeAttribute(o))}}function Ao(e,t,n){e.tagName.indexOf("-")>-1?ko(e,t,n):ki(t)?Ni(n)?e.removeAttribute(t):(n="allowfullscreen"===t&&"EMBED"===e.tagName?"true":t,e.setAttribute(t,n)):xi(t)?e.setAttribute(t,Ai(t,n)):Si(t)?Ni(n)?e.removeAttributeNS(Oi,Ti(t)):e.setAttributeNS(Oi,t,n):ko(e,t,n)}function ko(e,t,n){if(Ni(n))e.removeAttribute(t);else{if(ne&&!re&&"TEXTAREA"===e.tagName&&"placeholder"===t&&""!==n&&!e.__ieph){var r=function(t){t.stopImmediatePropagation(),e.removeEventListener("input",r)};e.addEventListener("input",r),e.__ieph=!0}e.setAttribute(t,n)}}var Oo={create:Co,update:Co};function So(e,t){var i=t.elm,o=t.data,a=e.data;if(!(n(o.staticClass)&&n(o.class)&&(n(a)||n(a.staticClass)&&n(a.class)))){var s=ji(t),c=i._transitionClasses;r(c)&&(s=Di(s,Li(c))),s!==i._prevClass&&(i.setAttribute("class",s),i._prevClass=s)}}var To,No,jo,Eo,Mo,Do,Lo,Io={create:So,update:So},Fo=/[\w).+\-_$\]]/;function Po(e){var t,n,r,i,o,a=!1,s=!1,c=!1,u=!1,l=0,f=0,p=0,d=0;for(r=0;r<e.length;r++)if(n=t,t=e.charCodeAt(r),a)39===t&&92!==n&&(a=!1);else if(s)34===t&&92!==n&&(s=!1);else if(c)96===t&&92!==n&&(c=!1);else if(u)47===t&&92!==n&&(u=!1);else if(124!==t||124===e.charCodeAt(r+1)||124===e.charCodeAt(r-1)||l||f||p){switch(t){case 34:s=!0;break;case 39:a=!0;break;case 96:c=!0;break;case 40:p++;break;case 41:p--;break;case 91:f++;break;case 93:f--;break;case 123:l++;break;case 125:l--}if(47===t){for(var v=r-1,h=void 0;v>=0&&" "===(h=e.charAt(v));v--);h&&Fo.test(h)||(u=!0)}}else void 0===i?(d=r+1,i=e.slice(0,r).trim()):m();function m(){(o||(o=[])).push(e.slice(d,r).trim()),d=r+1}if(void 0===i?i=e.slice(0,r).trim():0!==d&&m(),o)for(r=0;r<o.length;r++)i=Ro(i,o[r]);return i}function Ro(e,t){var n=t.indexOf("(");if(n<0)return'_f("'+t+'")('+e+")";var r=t.slice(0,n),i=t.slice(n+1);return'_f("'+r+'")('+e+(")"!==i?","+i:i)}function Ho(e,t){console.error("[Vue compiler]: "+e)}function Bo(e,t){return e?e.map(function(e){return e[t]}).filter(function(e){return e}):[]}function Uo(e,t,n,r,i){(e.props||(e.props=[])).push(Yo({name:t,value:n,dynamic:i},r)),e.plain=!1}function zo(e,t,n,r,i){(i?e.dynamicAttrs||(e.dynamicAttrs=[]):e.attrs||(e.attrs=[])).push(Yo({name:t,value:n,dynamic:i},r)),e.plain=!1}function Vo(e,t,n,r){e.attrsMap[t]=n,e.attrsList.push(Yo({name:t,value:n},r))}function Jo(e,t,n,r,i,o,a,s){(e.directives||(e.directives=[])).push(Yo({name:t,rawName:n,value:r,arg:i,isDynamicArg:o,modifiers:a},s)),e.plain=!1}function Ko(e,t,n){return n?"_p("+t+',"'+e+'")':e+t}function qo(e,n,r,i,o,a,s,c){var u;(i=i||t).right?c?n="("+n+")==='click'?'contextmenu':("+n+")":"click"===n&&(n="contextmenu",delete i.right):i.middle&&(c?n="("+n+")==='click'?'mouseup':("+n+")":"click"===n&&(n="mouseup")),i.capture&&(delete i.capture,n=Ko("!",n,c)),i.once&&(delete i.once,n=Ko("~",n,c)),i.passive&&(delete i.passive,n=Ko("&",n,c)),i.native?(delete i.native,u=e.nativeEvents||(e.nativeEvents={})):u=e.events||(e.events={});var l=Yo({value:r.trim(),dynamic:c},s);i!==t&&(l.modifiers=i);var f=u[n];Array.isArray(f)?o?f.unshift(l):f.push(l):u[n]=f?o?[l,f]:[f,l]:l,e.plain=!1}function Wo(e,t){return e.rawAttrsMap[":"+t]||e.rawAttrsMap["v-bind:"+t]||e.rawAttrsMap[t]}function Zo(e,t,n){var r=Go(e,":"+t)||Go(e,"v-bind:"+t);if(null!=r)return Po(r);if(!1!==n){var i=Go(e,t);if(null!=i)return JSON.stringify(i)}}function Go(e,t,n){var r;if(null!=(r=e.attrsMap[t]))for(var i=e.attrsList,o=0,a=i.length;o<a;o++)if(i[o].name===t){i.splice(o,1);break}return n&&delete e.attrsMap[t],r}function Xo(e,t){for(var n=e.attrsList,r=0,i=n.length;r<i;r++){var o=n[r];if(t.test(o.name))return n.splice(r,1),o}}function Yo(e,t){return t&&(null!=t.start&&(e.start=t.start),null!=t.end&&(e.end=t.end)),e}function Qo(e,t,n){var r=n||{},i=r.number,o="$$v";r.trim&&(o="(typeof $$v === 'string'? $$v.trim(): $$v)"),i&&(o="_n("+o+")");var a=ea(t,o);e.model={value:"("+t+")",expression:JSON.stringify(t),callback:"function ($$v) {"+a+"}"}}function ea(e,t){var n=ta(e);return null===n.key?e+"="+t:"$set("+n.exp+", "+n.key+", "+t+")"}function ta(e){if(e=e.trim(),To=e.length,e.indexOf("[")<0||e.lastIndexOf("]")<To-1)return(Eo=e.lastIndexOf("."))>-1?{exp:e.slice(0,Eo),key:'"'+e.slice(Eo+1)+'"'}:{exp:e,key:null};for(No=e,Eo=Mo=Do=0;!ra();)ia(jo=na())?aa(jo):91===jo&&oa(jo);return{exp:e.slice(0,Mo),key:e.slice(Mo+1,Do)}}function na(){return No.charCodeAt(++Eo)}function ra(){return Eo>=To}function ia(e){return 34===e||39===e}function oa(e){var t=1;for(Mo=Eo;!ra();)if(ia(e=na()))aa(e);else if(91===e&&t++,93===e&&t--,0===t){Do=Eo;break}}function aa(e){for(var t=e;!ra()&&(e=na())!==t;);}var sa,ca="__r",ua="__c";function la(e,t,n){Lo=n;var r=t.value,i=t.modifiers,o=e.tag,a=e.attrsMap.type;if(e.component)return Qo(e,r,i),!1;if("select"===o)da(e,r,i);else if("input"===o&&"checkbox"===a)fa(e,r,i);else if("input"===o&&"radio"===a)pa(e,r,i);else if("input"===o||"textarea"===o)va(e,r,i);else{if(!V.isReservedTag(o))return Qo(e,r,i),!1}return!0}function fa(e,t,n){var r=n&&n.number,i=Zo(e,"value")||"null",o=Zo(e,"true-value")||"true",a=Zo(e,"false-value")||"false";Uo(e,"checked","Array.isArray("+t+")?_i("+t+","+i+")>-1"+("true"===o?":("+t+")":":_q("+t+","+o+")")),qo(e,"change","var $$a="+t+",$$el=$event.target,$$c=$$el.checked?("+o+"):("+a+");if(Array.isArray($$a)){var $$v="+(r?"_n("+i+")":i)+",$$i=_i($$a,$$v);if($$el.checked){$$i<0&&("+ea(t,"$$a.concat([$$v])")+")}else{$$i>-1&&("+ea(t,"$$a.slice(0,$$i).concat($$a.slice($$i+1))")+")}}else{"+ea(t,"$$c")+"}",null,!0)}function pa(e,t,n){var r=n&&n.number,i=Zo(e,"value")||"null";Uo(e,"checked","_q("+t+","+(i=r?"_n("+i+")":i)+")"),qo(e,"change",ea(t,i),null,!0)}function da(e,t,n){var r="var $$selectedVal = "+('Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = "_value" in o ? o._value : o.value;return '+(n&&n.number?"_n(val)":"val")+"})")+";";qo(e,"change",r=r+" "+ea(t,"$event.target.multiple ? $$selectedVal : $$selectedVal[0]"),null,!0)}function va(e,t,n){var r=e.attrsMap.type,i=n||{},o=i.lazy,a=i.number,s=i.trim,c=!o&&"range"!==r,u=o?"change":"range"===r?ca:"input",l="$event.target.value";s&&(l="$event.target.value.trim()"),a&&(l="_n("+l+")");var f=ea(t,l);c&&(f="if($event.target.composing)return;"+f),Uo(e,"value","("+t+")"),qo(e,u,f,null,!0),(s||a)&&qo(e,"blur","$forceUpdate()")}function ha(e){if(r(e[ca])){var t=ne?"change":"input";e[t]=[].concat(e[ca],e[t]||[]),delete e[ca]}r(e[ua])&&(e.change=[].concat(e[ua],e.change||[]),delete e[ua])}function ma(e,t,n){var r=sa;return function i(){null!==t.apply(null,arguments)&&_a(e,i,n,r)}}var ya=Rt&&!(ue&&Number(ue[1])<=53);function ga(e,t,n,r){if(ya){var i=Tr,o=t;t=o._wrapper=function(e){if(e.target===e.currentTarget||e.timeStamp>=i||e.timeStamp<=0||e.target.ownerDocument!==document)return o.apply(this,arguments)}}sa.addEventListener(e,t,fe?{capture:n,passive:r}:n)}function _a(e,t,n,r){(r||sa).removeEventListener(e,t._wrapper||t,n)}function ba(e,t){if(!n(e.data.on)||!n(t.data.on)){var r=t.data.on||{},i=e.data.on||{};sa=t.elm,ha(r),Qt(r,i,ga,_a,ma,t.context),sa=void 0}}var $a,wa={create:ba,update:ba};function xa(e,t){if(!n(e.data.domProps)||!n(t.data.domProps)){var i,o,a=t.elm,s=e.data.domProps||{},c=t.data.domProps||{};for(i in r(c.__ob__)&&(c=t.data.domProps=E({},c)),s)i in c||(a[i]="");for(i in c){if(o=c[i],"textContent"===i||"innerHTML"===i){if(t.children&&(t.children.length=0),o===s[i])continue;1===a.childNodes.length&&a.removeChild(a.childNodes[0])}if("value"===i&&"PROGRESS"!==a.tagName){a._value=o;var u=n(o)?"":String(o);Ca(a,u)&&(a.value=u)}else if("innerHTML"===i&&Hi(a.tagName)&&n(a.innerHTML)){($a=$a||document.createElement("div")).innerHTML="<svg>"+o+"</svg>";for(var l=$a.firstChild;a.firstChild;)a.removeChild(a.firstChild);for(;l.firstChild;)a.appendChild(l.firstChild)}else if(o!==s[i])try{a[i]=o}catch(Xl){}}}}function Ca(e,t){return!e.composing&&("OPTION"===e.tagName||Aa(e,t)||ka(e,t))}function Aa(e,t){var n=!0;try{n=document.activeElement!==e}catch(Xl){}return n&&e.value!==t}function ka(e,t){var n=e.value,i=e._vModifiers;if(r(i)){if(i.number)return h(n)!==h(t);if(i.trim)return n.trim()!==t.trim()}return n!==t}var Oa={create:xa,update:xa},Sa=w(function(e){var t={},n=/:(.+)/;return e.split(/;(?![^(]*\))/g).forEach(function(e){if(e){var r=e.split(n);r.length>1&&(t[r[0].trim()]=r[1].trim())}}),t});function Ta(e){var t=Na(e.style);return e.staticStyle?E(e.staticStyle,t):t}function Na(e){return Array.isArray(e)?M(e):"string"==typeof e?Sa(e):e}function ja(e,t){var n,r={};if(t)for(var i=e;i.componentInstance;)(i=i.componentInstance._vnode)&&i.data&&(n=Ta(i.data))&&E(r,n);(n=Ta(e.data))&&E(r,n);for(var o=e;o=o.parent;)o.data&&(n=Ta(o.data))&&E(r,n);return r}var Ea,Ma=/^--/,Da=/\s*!important$/,La=function(e,t,n){if(Ma.test(t))e.style.setProperty(t,n);else if(Da.test(n))e.style.setProperty(O(t),n.replace(Da,""),"important");else{var r=Fa(t);if(Array.isArray(n))for(var i=0,o=n.length;i<o;i++)e.style[r]=n[i];else e.style[r]=n}},Ia=["Webkit","Moz","ms"],Fa=w(function(e){if(Ea=Ea||document.createElement("div").style,"filter"!==(e=C(e))&&e in Ea)return e;for(var t=e.charAt(0).toUpperCase()+e.slice(1),n=0;n<Ia.length;n++){var r=Ia[n]+t;if(r in Ea)return r}});function Pa(e,t){var i=t.data,o=e.data;if(!(n(i.staticStyle)&&n(i.style)&&n(o.staticStyle)&&n(o.style))){var a,s,c=t.elm,u=o.staticStyle,l=o.normalizedStyle||o.style||{},f=u||l,p=Na(t.data.style)||{};t.data.normalizedStyle=r(p.__ob__)?E({},p):p;var d=ja(t,!0);for(s in f)n(d[s])&&La(c,s,"");for(s in d)(a=d[s])!==f[s]&&La(c,s,null==a?"":a)}}var Ra={create:Pa,update:Pa},Ha=/\s+/;function Ba(e,t){if(t&&(t=t.trim()))if(e.classList)t.indexOf(" ")>-1?t.split(Ha).forEach(function(t){return e.classList.add(t)}):e.classList.add(t);else{var n=" "+(e.getAttribute("class")||"")+" ";n.indexOf(" "+t+" ")<0&&e.setAttribute("class",(n+t).trim())}}function Ua(e,t){if(t&&(t=t.trim()))if(e.classList)t.indexOf(" ")>-1?t.split(Ha).forEach(function(t){return e.classList.remove(t)}):e.classList.remove(t),e.classList.length||e.removeAttribute("class");else{for(var n=" "+(e.getAttribute("class")||"")+" ",r=" "+t+" ";n.indexOf(r)>=0;)n=n.replace(r," ");(n=n.trim())?e.setAttribute("class",n):e.removeAttribute("class")}}function za(e){if(e){if("object"==typeof e){var t={};return!1!==e.css&&E(t,Va(e.name||"v")),E(t,e),t}return"string"==typeof e?Va(e):void 0}}var Va=w(function(e){return{enterClass:e+"-enter",enterToClass:e+"-enter-to",enterActiveClass:e+"-enter-active",leaveClass:e+"-leave",leaveToClass:e+"-leave-to",leaveActiveClass:e+"-leave-active"}}),Ja=Y&&!re,Ka="transition",qa="animation",Wa="transition",Za="transitionend",Ga="animation",Xa="animationend";Ja&&(void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend&&(Wa="WebkitTransition",Za="webkitTransitionEnd"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend&&(Ga="WebkitAnimation",Xa="webkitAnimationEnd"));var Ya=Y?window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout:function(e){return e()};function Qa(e){Ya(function(){Ya(e)})}function es(e,t){var n=e._transitionClasses||(e._transitionClasses=[]);n.indexOf(t)<0&&(n.push(t),Ba(e,t))}function ts(e,t){e._transitionClasses&&_(e._transitionClasses,t),Ua(e,t)}function ns(e,t,n){var r=is(e,t),i=r.type,o=r.timeout,a=r.propCount;if(!i)return n();var s=i===Ka?Za:Xa,c=0,u=function(){e.removeEventListener(s,l),n()},l=function(t){t.target===e&&++c>=a&&u()};setTimeout(function(){c<a&&u()},o+1),e.addEventListener(s,l)}var rs=/\b(transform|all)(,|$)/;function is(e,t){var n,r=window.getComputedStyle(e),i=(r[Wa+"Delay"]||"").split(", "),o=(r[Wa+"Duration"]||"").split(", "),a=os(i,o),s=(r[Ga+"Delay"]||"").split(", "),c=(r[Ga+"Duration"]||"").split(", "),u=os(s,c),l=0,f=0;return t===Ka?a>0&&(n=Ka,l=a,f=o.length):t===qa?u>0&&(n=qa,l=u,f=c.length):f=(n=(l=Math.max(a,u))>0?a>u?Ka:qa:null)?n===Ka?o.length:c.length:0,{type:n,timeout:l,propCount:f,hasTransform:n===Ka&&rs.test(r[Wa+"Property"])}}function os(e,t){for(;e.length<t.length;)e=e.concat(e);return Math.max.apply(null,t.map(function(t,n){return as(t)+as(e[n])}))}function as(e){return 1e3*Number(e.slice(0,-1).replace(",","."))}function ss(e,t){var i=e.elm;r(i._leaveCb)&&(i._leaveCb.cancelled=!0,i._leaveCb());var o=za(e.data.transition);if(!n(o)&&!r(i._enterCb)&&1===i.nodeType){for(var a=o.css,c=o.type,u=o.enterClass,l=o.enterToClass,f=o.enterActiveClass,p=o.appearClass,d=o.appearToClass,v=o.appearActiveClass,m=o.beforeEnter,y=o.enter,g=o.afterEnter,_=o.enterCancelled,b=o.beforeAppear,$=o.appear,w=o.afterAppear,x=o.appearCancelled,C=o.duration,A=ur,k=ur.$vnode;k&&k.parent;)A=k.context,k=k.parent;var O=!A._isMounted||!e.isRootInsert;if(!O||$||""===$){var S=O&&p?p:u,T=O&&v?v:f,N=O&&d?d:l,j=O&&b||m,E=O&&"function"==typeof $?$:y,M=O&&w||g,D=O&&x||_,L=h(s(C)?C.enter:C);0;var I=!1!==a&&!re,F=fs(E),P=i._enterCb=H(function(){I&&(ts(i,N),ts(i,T)),P.cancelled?(I&&ts(i,S),D&&D(i)):M&&M(i),i._enterCb=null});e.data.show||en(e,"insert",function(){var t=i.parentNode,n=t&&t._pending&&t._pending[e.key];n&&n.tag===e.tag&&n.elm._leaveCb&&n.elm._leaveCb(),E&&E(i,P)}),j&&j(i),I&&(es(i,S),es(i,T),Qa(function(){ts(i,S),P.cancelled||(es(i,N),F||(ls(L)?setTimeout(P,L):ns(i,c,P)))})),e.data.show&&(t&&t(),E&&E(i,P)),I||F||P()}}}function cs(e,t){var i=e.elm;r(i._enterCb)&&(i._enterCb.cancelled=!0,i._enterCb());var o=za(e.data.transition);if(n(o)||1!==i.nodeType)return t();if(!r(i._leaveCb)){var a=o.css,c=o.type,u=o.leaveClass,l=o.leaveToClass,f=o.leaveActiveClass,p=o.beforeLeave,d=o.leave,v=o.afterLeave,m=o.leaveCancelled,y=o.delayLeave,g=o.duration,_=!1!==a&&!re,b=fs(d),$=h(s(g)?g.leave:g);0;var w=i._leaveCb=H(function(){i.parentNode&&i.parentNode._pending&&(i.parentNode._pending[e.key]=null),_&&(ts(i,l),ts(i,f)),w.cancelled?(_&&ts(i,u),m&&m(i)):(t(),v&&v(i)),i._leaveCb=null});y?y(x):x()}function x(){w.cancelled||(!e.data.show&&i.parentNode&&((i.parentNode._pending||(i.parentNode._pending={}))[e.key]=e),p&&p(i),_&&(es(i,u),es(i,f),Qa(function(){ts(i,u),w.cancelled||(es(i,l),b||(ls($)?setTimeout(w,$):ns(i,c,w)))})),d&&d(i,w),_||b||w())}}function us(e,t,n){"number"!=typeof e?we("<transition> explicit "+t+" duration is not a valid number - got "+JSON.stringify(e)+".",n.context):isNaN(e)&&we("<transition> explicit "+t+" duration is NaN - the duration expression might be incorrect.",n.context)}function ls(e){return"number"==typeof e&&!isNaN(e)}function fs(e){if(n(e))return!1;var t=e.fns;return r(t)?fs(Array.isArray(t)?t[0]:t):(e._length||e.length)>1}function ps(e,t){!0!==t.data.show&&ss(t)}var ds=Y?{create:ps,activate:ps,remove:function(e,t){!0!==e.data.show?cs(e,t):t()}}:{},vs=[Oo,Io,wa,Oa,Ra,ds],hs=vs.concat(xo),ms=ho({nodeOps:ao,modules:hs});re&&document.addEventListener("selectionchange",function(){var e=document.activeElement;e&&e.vmodel&&Cs(e,"input")});var ys={inserted:function(e,t,n,r){"select"===n.tag?(r.elm&&!r.elm._vOptions?en(n,"postpatch",function(){ys.componentUpdated(e,t,n)}):gs(e,t,n.context),e._vOptions=[].map.call(e.options,$s)):("textarea"===n.tag||Ki(e.type))&&(e._vModifiers=t.modifiers,t.modifiers.lazy||(e.addEventListener("compositionstart",ws),e.addEventListener("compositionend",xs),e.addEventListener("change",xs),re&&(e.vmodel=!0)))},componentUpdated:function(e,t,n){if("select"===n.tag){gs(e,t,n.context);var r=e._vOptions,i=e._vOptions=[].map.call(e.options,$s);if(i.some(function(e,t){return!P(e,r[t])}))(e.multiple?t.value.some(function(e){return bs(e,i)}):t.value!==t.oldValue&&bs(t.value,i))&&Cs(e,"change")}}};function gs(e,t,n){_s(e,t,n),(ne||ie)&&setTimeout(function(){_s(e,t,n)},0)}function _s(e,t,n){var r=t.value,i=e.multiple;if(!i||Array.isArray(r)){for(var o,a,s=0,c=e.options.length;s<c;s++)if(a=e.options[s],i)o=R(r,$s(a))>-1,a.selected!==o&&(a.selected=o);else if(P($s(a),r))return void(e.selectedIndex!==s&&(e.selectedIndex=s));i||(e.selectedIndex=-1)}}function bs(e,t){return t.every(function(t){return!P(t,e)})}function $s(e){return"_value"in e?e._value:e.value}function ws(e){e.target.composing=!0}function xs(e){e.target.composing&&(e.target.composing=!1,Cs(e.target,"input"))}function Cs(e,t){var n=document.createEvent("HTMLEvents");n.initEvent(t,!0,!0),e.dispatchEvent(n)}function As(e){return!e.componentInstance||e.data&&e.data.transition?e:As(e.componentInstance._vnode)}var ks={bind:function(e,t,n){var r=t.value,i=(n=As(n)).data&&n.data.transition,o=e.__vOriginalDisplay="none"===e.style.display?"":e.style.display;r&&i?(n.data.show=!0,ss(n,function(){e.style.display=o})):e.style.display=r?o:"none"},update:function(e,t,n){var r=t.value;!r!=!t.oldValue&&((n=As(n)).data&&n.data.transition?(n.data.show=!0,r?ss(n,function(){e.style.display=e.__vOriginalDisplay}):cs(n,function(){e.style.display="none"})):e.style.display=r?e.__vOriginalDisplay:"none")},unbind:function(e,t,n,r,i){i||(e.style.display=e.__vOriginalDisplay)}},Os={model:ys,show:ks},Ss={name:String,appear:Boolean,css:Boolean,mode:String,type:String,enterClass:String,leaveClass:String,enterToClass:String,leaveToClass:String,enterActiveClass:String,leaveActiveClass:String,appearClass:String,appearActiveClass:String,appearToClass:String,duration:[Number,String,Object]};function Ts(e){var t=e&&e.componentOptions;return t&&t.Ctor.options.abstract?Ts(nr(t.children)):e}function Ns(e){var t={},n=e.$options;for(var r in n.propsData)t[r]=e[r];var i=n._parentListeners;for(var o in i)t[C(o)]=i[o];return t}function js(e,t){if(/\d-keep-alive$/.test(t.tag))return e("keep-alive",{props:t.componentOptions.propsData})}function Es(e){for(;e=e.parent;)if(e.data.transition)return!0}function Ms(e,t){return t.key===e.key&&t.tag===e.tag}var Ds=function(e){return e.tag||tr(e)},Ls=function(e){return"show"===e.name},Is={name:"transition",props:Ss,abstract:!0,render:function(e){var t=this,n=this.$slots.default;if(n&&(n=n.filter(Ds)).length){0;var r=this.mode;0;var i=n[0];if(Es(this.$vnode))return i;var o=Ts(i);if(!o)return i;if(this._leaving)return js(e,i);var s="__transition-"+this._uid+"-";o.key=null==o.key?o.isComment?s+"comment":s+o.tag:a(o.key)?0===String(o.key).indexOf(s)?o.key:s+o.key:o.key;var c=(o.data||(o.data={})).transition=Ns(this),u=this._vnode,l=Ts(u);if(o.data.directives&&o.data.directives.some(Ls)&&(o.data.show=!0),l&&l.data&&!Ms(o,l)&&!tr(l)&&(!l.componentInstance||!l.componentInstance._vnode.isComment)){var f=l.data.transition=E({},c);if("out-in"===r)return this._leaving=!0,en(f,"afterLeave",function(){t._leaving=!1,t.$forceUpdate()}),js(e,i);if("in-out"===r){if(tr(o))return u;var p,d=function(){p()};en(c,"afterEnter",d),en(c,"enterCancelled",d),en(f,"delayLeave",function(e){p=e})}}return i}}},Fs=E({tag:String,moveClass:String},Ss);delete Fs.mode;var Ps={props:Fs,beforeMount:function(){var e=this,t=this._update;this._update=function(n,r){var i=fr(e);e.__patch__(e._vnode,e.kept,!1,!0),e._vnode=e.kept,i(),t.call(e,n,r)}},render:function(e){for(var t=this.tag||this.$vnode.data.tag||"span",n=Object.create(null),r=this.prevChildren=this.children,i=this.$slots.default||[],o=this.children=[],a=Ns(this),s=0;s<i.length;s++){var c=i[s];if(c.tag)if(null!=c.key&&0!==String(c.key).indexOf("__vlist"))o.push(c),n[c.key]=c,(c.data||(c.data={})).transition=a;else;}if(r){for(var u=[],l=[],f=0;f<r.length;f++){var p=r[f];p.data.transition=a,p.data.pos=p.elm.getBoundingClientRect(),n[p.key]?u.push(p):l.push(p)}this.kept=e(t,null,u),this.removed=l}return e(t,null,o)},updated:function(){var e=this.prevChildren,t=this.moveClass||(this.name||"v")+"-move";e.length&&this.hasMove(e[0].elm,t)&&(e.forEach(Rs),e.forEach(Hs),e.forEach(Bs),this._reflow=document.body.offsetHeight,e.forEach(function(e){if(e.data.moved){var n=e.elm,r=n.style;es(n,t),r.transform=r.WebkitTransform=r.transitionDuration="",n.addEventListener(Za,n._moveCb=function e(r){r&&r.target!==n||r&&!/transform$/.test(r.propertyName)||(n.removeEventListener(Za,e),n._moveCb=null,ts(n,t))})}}))},methods:{hasMove:function(e,t){if(!Ja)return!1;if(this._hasMove)return this._hasMove;var n=e.cloneNode();e._transitionClasses&&e._transitionClasses.forEach(function(e){Ua(n,e)}),Ba(n,t),n.style.display="none",this.$el.appendChild(n);var r=is(n);return this.$el.removeChild(n),this._hasMove=r.hasTransform}}};function Rs(e){e.elm._moveCb&&e.elm._moveCb(),e.elm._enterCb&&e.elm._enterCb()}function Hs(e){e.data.newPos=e.elm.getBoundingClientRect()}function Bs(e){var t=e.data.pos,n=e.data.newPos,r=t.left-n.left,i=t.top-n.top;if(r||i){e.data.moved=!0;var o=e.elm.style;o.transform=o.WebkitTransform="translate("+r+"px,"+i+"px)",o.transitionDuration="0s"}}var Us={Transition:Is,TransitionGroup:Ps};oi.config.mustUseProp=wi,oi.config.isReservedTag=Ui,oi.config.isReservedAttr=bi,oi.config.getTagNamespace=zi,oi.config.isUnknownElement=Ji,E(oi.options.directives,Os),E(oi.options.components,Us),oi.prototype.__patch__=Y?ms:D,oi.prototype.$mount=function(e,t){return vr(this,e=e&&Y?qi(e):void 0,t)},Y&&setTimeout(function(){V.devtools&&ve&&ve.emit("init",oi)},0);var zs=/\{\{((?:.|\r?\n)+?)\}\}/g,Vs=/[-.*+?^${}()|[\]\/\\]/g,Js=w(function(e){var t=e[0].replace(Vs,"\\$&"),n=e[1].replace(Vs,"\\$&");return new RegExp(t+"((?:.|\\n)+?)"+n,"g")});function Ks(e,t){var n=t?Js(t):zs;if(n.test(e)){for(var r,i,o,a=[],s=[],c=n.lastIndex=0;r=n.exec(e);){(i=r.index)>c&&(s.push(o=e.slice(c,i)),a.push(JSON.stringify(o)));var u=Po(r[1].trim());a.push("_s("+u+")"),s.push({"@binding":u}),c=i+r[0].length}return c<e.length&&(s.push(o=e.slice(c)),a.push(JSON.stringify(o))),{expression:a.join("+"),tokens:s}}}function qs(e,t){t.warn;var n=Go(e,"class");n&&(e.staticClass=JSON.stringify(n));var r=Zo(e,"class",!1);r&&(e.classBinding=r)}function Ws(e){var t="";return e.staticClass&&(t+="staticClass:"+e.staticClass+","),e.classBinding&&(t+="class:"+e.classBinding+","),t}var Zs={staticKeys:["staticClass"],transformNode:qs,genData:Ws};function Gs(e,t){t.warn;var n=Go(e,"style");n&&(e.staticStyle=JSON.stringify(Sa(n)));var r=Zo(e,"style",!1);r&&(e.styleBinding=r)}function Xs(e){var t="";return e.staticStyle&&(t+="staticStyle:"+e.staticStyle+","),e.styleBinding&&(t+="style:("+e.styleBinding+"),"),t}var Ys,Qs={staticKeys:["staticStyle"],transformNode:Gs,genData:Xs},ec={decode:function(e){return(Ys=Ys||document.createElement("div")).innerHTML=e,Ys.textContent}},tc=m("area,base,br,col,embed,frame,hr,img,input,isindex,keygen,link,meta,param,source,track,wbr"),nc=m("colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr,source"),rc=m("address,article,aside,base,blockquote,body,caption,col,colgroup,dd,details,dialog,div,dl,dt,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,head,header,hgroup,hr,html,legend,li,menuitem,meta,optgroup,option,param,rp,rt,source,style,summary,tbody,td,tfoot,th,thead,title,tr,track"),ic=/^\s*([^\s"'<>\/=]+)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/,oc=/^\s*((?:v-[\w-]+:|@|:|#)\[[^=]+\][^\s"'<>\/=]*)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/,ac="[a-zA-Z_][\\-\\.0-9_a-zA-Z"+J.source+"]*",sc="((?:"+ac+"\\:)?"+ac+")",cc=new RegExp("^<"+sc),uc=/^\s*(\/?)>/,lc=new RegExp("^<\\/"+sc+"[^>]*>"),fc=/^<!DOCTYPE [^>]+>/i,pc=/^<!\--/,dc=/^<!\[/,vc=m("script,style,textarea",!0),hc={},mc={"&lt;":"<","&gt;":">","&quot;":'"',"&amp;":"&","&#10;":"\n","&#9;":"\t","&#39;":"'"},yc=/&(?:lt|gt|quot|amp|#39);/g,gc=/&(?:lt|gt|quot|amp|#39|#10|#9);/g,_c=m("pre,textarea",!0),bc=function(e,t){return e&&_c(e)&&"\n"===t[0]};function $c(e,t){var n=t?gc:yc;return e.replace(n,function(e){return mc[e]})}function wc(e,t){for(var n,r,i=[],o=t.expectHTML,a=t.isUnaryTag||L,s=t.canBeLeftOpenTag||L,c=0;e;){if(n=e,r&&vc(r)){var u=0,l=r.toLowerCase(),f=hc[l]||(hc[l]=new RegExp("([\\s\\S]*?)(</"+l+"[^>]*>)","i")),p=e.replace(f,function(e,n,r){return u=r.length,vc(l)||"noscript"===l||(n=n.replace(/<!\--([\s\S]*?)-->/g,"$1").replace(/<!\[CDATA\[([\s\S]*?)]]>/g,"$1")),bc(l,n)&&(n=n.slice(1)),t.chars&&t.chars(n),""});c+=e.length-p.length,e=p,k(l,c-u,c)}else{var d=e.indexOf("<");if(0===d){if(pc.test(e)){var v=e.indexOf("--\x3e");if(v>=0){t.shouldKeepComment&&t.comment(e.substring(4,v),c,c+v+3),x(v+3);continue}}if(dc.test(e)){var h=e.indexOf("]>");if(h>=0){x(h+2);continue}}var m=e.match(fc);if(m){x(m[0].length);continue}var y=e.match(lc);if(y){var g=c;x(y[0].length),k(y[1],g,c);continue}var _=C();if(_){A(_),bc(_.tagName,e)&&x(1);continue}}var b=void 0,$=void 0,w=void 0;if(d>=0){for($=e.slice(d);!(lc.test($)||cc.test($)||pc.test($)||dc.test($)||(w=$.indexOf("<",1))<0);)d+=w,$=e.slice(d);b=e.substring(0,d)}d<0&&(b=e),b&&x(b.length),t.chars&&b&&t.chars(b,c-b.length,c)}if(e===n){t.chars&&t.chars(e);break}}function x(t){c+=t,e=e.substring(t)}function C(){var t=e.match(cc);if(t){var n,r,i={tagName:t[1],attrs:[],start:c};for(x(t[0].length);!(n=e.match(uc))&&(r=e.match(oc)||e.match(ic));)r.start=c,x(r[0].length),r.end=c,i.attrs.push(r);if(n)return i.unarySlash=n[1],x(n[0].length),i.end=c,i}}function A(e){var n=e.tagName,c=e.unarySlash;o&&("p"===r&&rc(n)&&k(r),s(n)&&r===n&&k(n));for(var u=a(n)||!!c,l=e.attrs.length,f=new Array(l),p=0;p<l;p++){var d=e.attrs[p],v=d[3]||d[4]||d[5]||"",h="a"===n&&"href"===d[1]?t.shouldDecodeNewlinesForHref:t.shouldDecodeNewlines;f[p]={name:d[1],value:$c(v,h)}}u||(i.push({tag:n,lowerCasedTag:n.toLowerCase(),attrs:f,start:e.start,end:e.end}),r=n),t.start&&t.start(n,f,u,e.start,e.end)}function k(e,n,o){var a,s;if(null==n&&(n=c),null==o&&(o=c),e)for(s=e.toLowerCase(),a=i.length-1;a>=0&&i[a].lowerCasedTag!==s;a--);else a=0;if(a>=0){for(var u=i.length-1;u>=a;u--)t.end&&t.end(i[u].tag,n,o);i.length=a,r=a&&i[a-1].tag}else"br"===s?t.start&&t.start(e,[],!0,n,o):"p"===s&&(t.start&&t.start(e,[],!1,n,o),t.end&&t.end(e,n,o))}k()}var xc,Cc,Ac,kc,Oc,Sc,Tc,Nc,jc,Ec=/^@|^v-on:/,Mc=/^v-|^@|^:|^#/,Dc=/([\s\S]*?)\s+(?:in|of)\s+([\s\S]*)/,Lc=/,([^,\}\]]*)(?:,([^,\}\]]*))?$/,Ic=/^\(|\)$/g,Fc=/^\[.*\]$/,Pc=/:(.*)$/,Rc=/^:|^\.|^v-bind:/,Hc=/\.[^.\]]+(?=[^\]]*$)/g,Bc=/^v-slot(:|$)|^#/,Uc=/[\r\n]/,zc=/\s+/g,Vc=/[\s"'<>\/=]/,Jc=w(ec.decode),Kc="_empty_";function qc(e,t,n){return{type:1,tag:e,attrsList:t,attrsMap:vu(t),rawAttrsMap:{},parent:n,children:[]}}function Wc(e,t){xc=t.warn||Ho,Sc=t.isPreTag||L,Tc=t.mustUseProp||L,Nc=t.getTagNamespace||L;var n=t.isReservedTag||L;jc=function(e){return!!e.component||!n(e.tag)},Ac=Bo(t.modules,"transformNode"),kc=Bo(t.modules,"preTransformNode"),Oc=Bo(t.modules,"postTransformNode"),Cc=t.delimiters;var r,i,o=[],a=!1!==t.preserveWhitespace,s=t.whitespace,c=!1,u=!1;function l(e){if(f(e),c||e.processed||(e=Xc(e,t)),o.length||e===r||r.if&&(e.elseif||e.else)&&ou(r,{exp:e.elseif,block:e}),i&&!e.forbidden)if(e.elseif||e.else)ru(e,i);else{if(e.slotScope){var n=e.slotTarget||'"default"';(i.scopedSlots||(i.scopedSlots={}))[n]=e}i.children.push(e),e.parent=i}e.children=e.children.filter(function(e){return!e.slotScope}),f(e),e.pre&&(c=!1),Sc(e.tag)&&(u=!1);for(var a=0;a<Oc.length;a++)Oc[a](e,t)}function f(e){if(!u)for(var t;(t=e.children[e.children.length-1])&&3===t.type&&" "===t.text;)e.children.pop()}return wc(e,{warn:xc,expectHTML:t.expectHTML,isUnaryTag:t.isUnaryTag,canBeLeftOpenTag:t.canBeLeftOpenTag,shouldDecodeNewlines:t.shouldDecodeNewlines,shouldDecodeNewlinesForHref:t.shouldDecodeNewlinesForHref,shouldKeepComment:t.comments,outputSourceRange:t.outputSourceRange,start:function(e,n,a,s,f){var p=i&&i.ns||Nc(e);ne&&"svg"===p&&(n=_u(n));var d=qc(e,n,i);p&&(d.ns=p),mu(d)&&!de()&&(d.forbidden=!0);for(var v=0;v<kc.length;v++)d=kc[v](d,t)||d;c||(Zc(d),d.pre&&(c=!0)),Sc(d.tag)&&(u=!0),c?Gc(d):d.processed||(eu(d),nu(d),au(d)),r||(r=d),a?l(d):(i=d,o.push(d))},end:function(e,t,n){var r=o[o.length-1];o.length-=1,i=o[o.length-1],l(r)},chars:function(e,t,n){if(i&&(!ne||"textarea"!==i.tag||i.attrsMap.placeholder!==e)){var r,o,l=i.children;if(e=u||e.trim()?hu(i)?e:Jc(e):l.length?s?"condense"===s&&Uc.test(e)?"":" ":a?" ":"":"")u||"condense"!==s||(e=e.replace(zc," ")),!c&&" "!==e&&(r=Ks(e,Cc))?o={type:2,expression:r.expression,tokens:r.tokens,text:e}:" "===e&&l.length&&" "===l[l.length-1].text||(o={type:3,text:e}),o&&l.push(o)}},comment:function(e,t,n){if(i){var r={type:3,text:e,isComment:!0};0,i.children.push(r)}}}),r}function Zc(e){null!=Go(e,"v-pre")&&(e.pre=!0)}function Gc(e){var t=e.attrsList,n=t.length;if(n)for(var r=e.attrs=new Array(n),i=0;i<n;i++)r[i]={name:t[i].name,value:JSON.stringify(t[i].value)},null!=t[i].start&&(r[i].start=t[i].start,r[i].end=t[i].end);else e.pre||(e.plain=!0)}function Xc(e,t){Yc(e),e.plain=!e.key&&!e.scopedSlots&&!e.attrsList.length,Qc(e),su(e),uu(e),lu(e);for(var n=0;n<Ac.length;n++)e=Ac[n](e,t)||e;return fu(e),e}function Yc(e){var t=Zo(e,"key");t&&(e.key=t)}function Qc(e){var t=Zo(e,"ref");t&&(e.ref=t,e.refInFor=pu(e))}function eu(e){var t;if(t=Go(e,"v-for")){var n=tu(t);n&&E(e,n)}}function tu(e){var t=e.match(Dc);if(t){var n={};n.for=t[2].trim();var r=t[1].trim().replace(Ic,""),i=r.match(Lc);return i?(n.alias=r.replace(Lc,"").trim(),n.iterator1=i[1].trim(),i[2]&&(n.iterator2=i[2].trim())):n.alias=r,n}}function nu(e){var t=Go(e,"v-if");if(t)e.if=t,ou(e,{exp:t,block:e});else{null!=Go(e,"v-else")&&(e.else=!0);var n=Go(e,"v-else-if");n&&(e.elseif=n)}}function ru(e,t){var n=iu(t.children);n&&n.if&&ou(n,{exp:e.elseif,block:e})}function iu(e){for(var t=e.length;t--;){if(1===e[t].type)return e[t];e.pop()}}function ou(e,t){e.ifConditions||(e.ifConditions=[]),e.ifConditions.push(t)}function au(e){null!=Go(e,"v-once")&&(e.once=!0)}function su(e){var t;"template"===e.tag?(t=Go(e,"scope"),e.slotScope=t||Go(e,"slot-scope")):(t=Go(e,"slot-scope"))&&(e.slotScope=t);var n=Zo(e,"slot");if(n&&(e.slotTarget='""'===n?'"default"':n,e.slotTargetDynamic=!(!e.attrsMap[":slot"]&&!e.attrsMap["v-bind:slot"]),"template"===e.tag||e.slotScope||zo(e,"slot",n,Wo(e,"slot"))),"template"===e.tag){var r=Xo(e,Bc);if(r){0;var i=cu(r),o=i.name,a=i.dynamic;e.slotTarget=o,e.slotTargetDynamic=a,e.slotScope=r.value||Kc}}else{var s=Xo(e,Bc);if(s){0;var c=e.scopedSlots||(e.scopedSlots={}),u=cu(s),l=u.name,f=u.dynamic,p=c[l]=qc("template",[],e);p.slotTarget=l,p.slotTargetDynamic=f,p.children=e.children.filter(function(e){if(!e.slotScope)return e.parent=p,!0}),p.slotScope=s.value||Kc,e.children=[],e.plain=!1}}}function cu(e){var t=e.name.replace(Bc,"");return t||"#"!==e.name[0]&&(t="default"),Fc.test(t)?{name:t.slice(1,-1),dynamic:!0}:{name:'"'+t+'"',dynamic:!1}}function uu(e){"slot"===e.tag&&(e.slotName=Zo(e,"name"))}function lu(e){var t;(t=Zo(e,"is"))&&(e.component=t),null!=Go(e,"inline-template")&&(e.inlineTemplate=!0)}function fu(e){var t,n,r,i,o,a,s,c,u=e.attrsList;for(t=0,n=u.length;t<n;t++){if(r=i=u[t].name,o=u[t].value,Mc.test(r))if(e.hasBindings=!0,(a=du(r.replace(Mc,"")))&&(r=r.replace(Hc,"")),Rc.test(r))r=r.replace(Rc,""),o=Po(o),(c=Fc.test(r))&&(r=r.slice(1,-1)),a&&(a.prop&&!c&&"innerHtml"===(r=C(r))&&(r="innerHTML"),a.camel&&!c&&(r=C(r)),a.sync&&(s=ea(o,"$event"),c?qo(e,'"update:"+('+r+")",s,null,!1,xc,u[t],!0):(qo(e,"update:"+C(r),s,null,!1,xc,u[t]),O(r)!==C(r)&&qo(e,"update:"+O(r),s,null,!1,xc,u[t])))),a&&a.prop||!e.component&&Tc(e.tag,e.attrsMap.type,r)?Uo(e,r,o,u[t],c):zo(e,r,o,u[t],c);else if(Ec.test(r))r=r.replace(Ec,""),(c=Fc.test(r))&&(r=r.slice(1,-1)),qo(e,r,o,a,!1,xc,u[t],c);else{var l=(r=r.replace(Mc,"")).match(Pc),f=l&&l[1];c=!1,f&&(r=r.slice(0,-(f.length+1)),Fc.test(f)&&(f=f.slice(1,-1),c=!0)),Jo(e,r,i,o,f,c,a,u[t])}else zo(e,r,JSON.stringify(o),u[t]),!e.component&&"muted"===r&&Tc(e.tag,e.attrsMap.type,r)&&Uo(e,r,"true",u[t])}}function pu(e){for(var t=e;t;){if(void 0!==t.for)return!0;t=t.parent}return!1}function du(e){var t=e.match(Hc);if(t){var n={};return t.forEach(function(e){n[e.slice(1)]=!0}),n}}function vu(e){for(var t={},n=0,r=e.length;n<r;n++)t[e[n].name]=e[n].value;return t}function hu(e){return"script"===e.tag||"style"===e.tag}function mu(e){return"style"===e.tag||"script"===e.tag&&(!e.attrsMap.type||"text/javascript"===e.attrsMap.type)}var yu=/^xmlns:NS\d+/,gu=/^NS\d+:/;function _u(e){for(var t=[],n=0;n<e.length;n++){var r=e[n];yu.test(r.name)||(r.name=r.name.replace(gu,""),t.push(r))}return t}function bu(e,t){for(var n=e;n;)n.for&&n.alias===t&&xc("<"+e.tag+' v-model="'+t+'">: You are binding v-model directly to a v-for iteration alias. This will not be able to modify the v-for source array because writing to the alias is like modifying a function local variable. Consider using an array of objects and use v-model on an object property instead.',e.rawAttrsMap["v-model"]),n=n.parent}function $u(e,t){if("input"===e.tag){var n,r=e.attrsMap;if(!r["v-model"])return;if((r[":type"]||r["v-bind:type"])&&(n=Zo(e,"type")),r.type||n||!r["v-bind"]||(n="("+r["v-bind"]+").type"),n){var i=Go(e,"v-if",!0),o=i?"&&("+i+")":"",a=null!=Go(e,"v-else",!0),s=Go(e,"v-else-if",!0),c=wu(e);eu(c),Vo(c,"type","checkbox"),Xc(c,t),c.processed=!0,c.if="("+n+")==='checkbox'"+o,ou(c,{exp:c.if,block:c});var u=wu(e);Go(u,"v-for",!0),Vo(u,"type","radio"),Xc(u,t),ou(c,{exp:"("+n+")==='radio'"+o,block:u});var l=wu(e);return Go(l,"v-for",!0),Vo(l,":type",n),Xc(l,t),ou(c,{exp:i,block:l}),a?c.else=!0:s&&(c.elseif=s),c}}}function wu(e){return qc(e.tag,e.attrsList.slice(),e.parent)}var xu={preTransformNode:$u},Cu=[Zs,Qs,xu];function Au(e,t){t.value&&Uo(e,"textContent","_s("+t.value+")",t)}function ku(e,t){t.value&&Uo(e,"innerHTML","_s("+t.value+")",t)}var Ou,Su,Tu={model:la,text:Au,html:ku},Nu={expectHTML:!0,modules:Cu,directives:Tu,isPreTag:Bi,isUnaryTag:tc,mustUseProp:wi,canBeLeftOpenTag:nc,isReservedTag:Ui,getTagNamespace:zi,staticKeys:F(Cu)},ju=w(Mu);function Eu(e,t){e&&(Ou=ju(t.staticKeys||""),Su=t.isReservedTag||L,Du(e),Lu(e,!1))}function Mu(e){return m("type,tag,attrsList,attrsMap,plain,parent,children,attrs,start,end,rawAttrsMap"+(e?","+e:""))}function Du(e){if(e.static=Iu(e),1===e.type){if(!Su(e.tag)&&"slot"!==e.tag&&null==e.attrsMap["inline-template"])return;for(var t=0,n=e.children.length;t<n;t++){var r=e.children[t];Du(r),r.static||(e.static=!1)}if(e.ifConditions)for(var i=1,o=e.ifConditions.length;i<o;i++){var a=e.ifConditions[i].block;Du(a),a.static||(e.static=!1)}}}function Lu(e,t){if(1===e.type){if((e.static||e.once)&&(e.staticInFor=t),e.static&&e.children.length&&(1!==e.children.length||3!==e.children[0].type))return void(e.staticRoot=!0);if(e.staticRoot=!1,e.children)for(var n=0,r=e.children.length;n<r;n++)Lu(e.children[n],t||!!e.for);if(e.ifConditions)for(var i=1,o=e.ifConditions.length;i<o;i++)Lu(e.ifConditions[i].block,t)}}function Iu(e){return 2!==e.type&&(3===e.type||!(!e.pre&&(e.hasBindings||e.if||e.for||y(e.tag)||!Su(e.tag)||Fu(e)||!Object.keys(e).every(Ou))))}function Fu(e){for(;e.parent;){if("template"!==(e=e.parent).tag)return!1;if(e.for)return!0}return!1}var Pu=/^([\w$_]+|\([^)]*?\))\s*=>|^function(?:\s+[\w$]+)?\s*\(/,Ru=/\([^)]*?\);*$/,Hu=/^[A-Za-z_$][\w$]*(?:\.[A-Za-z_$][\w$]*|\['[^']*?']|\["[^"]*?"]|\[\d+]|\[[A-Za-z_$][\w$]*])*$/,Bu={esc:27,tab:9,enter:13,space:32,up:38,left:37,right:39,down:40,delete:[8,46]},Uu={esc:["Esc","Escape"],tab:"Tab",enter:"Enter",space:[" ","Spacebar"],up:["Up","ArrowUp"],left:["Left","ArrowLeft"],right:["Right","ArrowRight"],down:["Down","ArrowDown"],delete:["Backspace","Delete","Del"]},zu=function(e){return"if("+e+")return null;"},Vu={stop:"$event.stopPropagation();",prevent:"$event.preventDefault();",self:zu("$event.target !== $event.currentTarget"),ctrl:zu("!$event.ctrlKey"),shift:zu("!$event.shiftKey"),alt:zu("!$event.altKey"),meta:zu("!$event.metaKey"),left:zu("'button' in $event && $event.button !== 0"),middle:zu("'button' in $event && $event.button !== 1"),right:zu("'button' in $event && $event.button !== 2")};function Ju(e,t){var n=t?"nativeOn:":"on:",r="",i="";for(var o in e){var a=Ku(e[o]);e[o]&&e[o].dynamic?i+=o+","+a+",":r+='"'+o+'":'+a+","}return r="{"+r.slice(0,-1)+"}",i?n+"_d("+r+",["+i.slice(0,-1)+"])":n+r}function Ku(e){if(!e)return"function(){}";if(Array.isArray(e))return"["+e.map(function(e){return Ku(e)}).join(",")+"]";var t=Hu.test(e.value),n=Pu.test(e.value),r=Hu.test(e.value.replace(Ru,""));if(e.modifiers){var i="",o="",a=[];for(var s in e.modifiers)if(Vu[s])o+=Vu[s],Bu[s]&&a.push(s);else if("exact"===s){var c=e.modifiers;o+=zu(["ctrl","shift","alt","meta"].filter(function(e){return!c[e]}).map(function(e){return"$event."+e+"Key"}).join("||"))}else a.push(s);return a.length&&(i+=qu(a)),o&&(i+=o),"function($event){"+i+(t?"return "+e.value+"($event)":n?"return ("+e.value+")($event)":r?"return "+e.value:e.value)+"}"}return t||n?e.value:"function($event){"+(r?"return "+e.value:e.value)+"}"}function qu(e){return"if(!$event.type.indexOf('key')&&"+e.map(Wu).join("&&")+")return null;"}function Wu(e){var t=parseInt(e,10);if(t)return"$event.keyCode!=="+t;var n=Bu[e],r=Uu[e];return"_k($event.keyCode,"+JSON.stringify(e)+","+JSON.stringify(n)+",$event.key,"+JSON.stringify(r)+")"}function Zu(e,t){e.wrapListeners=function(e){return"_g("+e+","+t.value+")"}}function Gu(e,t){e.wrapData=function(n){return"_b("+n+",'"+e.tag+"',"+t.value+","+(t.modifiers&&t.modifiers.prop?"true":"false")+(t.modifiers&&t.modifiers.sync?",true":"")+")"}}var Xu={on:Zu,bind:Gu,cloak:D},Yu=function(e){this.options=e,this.warn=e.warn||Ho,this.transforms=Bo(e.modules,"transformCode"),this.dataGenFns=Bo(e.modules,"genData"),this.directives=E(E({},Xu),e.directives);var t=e.isReservedTag||L;this.maybeComponent=function(e){return!!e.component||!t(e.tag)},this.onceId=0,this.staticRenderFns=[],this.pre=!1};function Qu(e,t){var n=new Yu(t);return{render:"with(this){return "+(e?el(e,n):'_c("div")')+"}",staticRenderFns:n.staticRenderFns}}function el(e,t){if(e.parent&&(e.pre=e.pre||e.parent.pre),e.staticRoot&&!e.staticProcessed)return tl(e,t);if(e.once&&!e.onceProcessed)return nl(e,t);if(e.for&&!e.forProcessed)return ol(e,t);if(e.if&&!e.ifProcessed)return rl(e,t);if("template"!==e.tag||e.slotTarget||t.pre){if("slot"===e.tag)return _l(e,t);var n;if(e.component)n=bl(e.component,e,t);else{var r;(!e.plain||e.pre&&t.maybeComponent(e))&&(r=al(e,t));var i=e.inlineTemplate?null:dl(e,t,!0);n="_c('"+e.tag+"'"+(r?","+r:"")+(i?","+i:"")+")"}for(var o=0;o<t.transforms.length;o++)n=t.transforms[o](e,n);return n}return dl(e,t)||"void 0"}function tl(e,t){e.staticProcessed=!0;var n=t.pre;return e.pre&&(t.pre=e.pre),t.staticRenderFns.push("with(this){return "+el(e,t)+"}"),t.pre=n,"_m("+(t.staticRenderFns.length-1)+(e.staticInFor?",true":"")+")"}function nl(e,t){if(e.onceProcessed=!0,e.if&&!e.ifProcessed)return rl(e,t);if(e.staticInFor){for(var n="",r=e.parent;r;){if(r.for){n=r.key;break}r=r.parent}return n?"_o("+el(e,t)+","+t.onceId+++","+n+")":el(e,t)}return tl(e,t)}function rl(e,t,n,r){return e.ifProcessed=!0,il(e.ifConditions.slice(),t,n,r)}function il(e,t,n,r){if(!e.length)return r||"_e()";var i=e.shift();return i.exp?"("+i.exp+")?"+o(i.block)+":"+il(e,t,n,r):""+o(i.block);function o(e){return n?n(e,t):e.once?nl(e,t):el(e,t)}}function ol(e,t,n,r){var i=e.for,o=e.alias,a=e.iterator1?","+e.iterator1:"",s=e.iterator2?","+e.iterator2:"";return e.forProcessed=!0,(r||"_l")+"(("+i+"),function("+o+a+s+"){return "+(n||el)(e,t)+"})"}function al(e,t){var n="{",r=sl(e,t);r&&(n+=r+","),e.key&&(n+="key:"+e.key+","),e.ref&&(n+="ref:"+e.ref+","),e.refInFor&&(n+="refInFor:true,"),e.pre&&(n+="pre:true,"),e.component&&(n+='tag:"'+e.tag+'",');for(var i=0;i<t.dataGenFns.length;i++)n+=t.dataGenFns[i](e);if(e.attrs&&(n+="attrs:"+$l(e.attrs)+","),e.props&&(n+="domProps:"+$l(e.props)+","),e.events&&(n+=Ju(e.events,!1)+","),e.nativeEvents&&(n+=Ju(e.nativeEvents,!0)+","),e.slotTarget&&!e.slotScope&&(n+="slot:"+e.slotTarget+","),e.scopedSlots&&(n+=ul(e,e.scopedSlots,t)+","),e.model&&(n+="model:{value:"+e.model.value+",callback:"+e.model.callback+",expression:"+e.model.expression+"},"),e.inlineTemplate){var o=cl(e,t);o&&(n+=o+",")}return n=n.replace(/,$/,"")+"}",e.dynamicAttrs&&(n="_b("+n+',"'+e.tag+'",'+$l(e.dynamicAttrs)+")"),e.wrapData&&(n=e.wrapData(n)),e.wrapListeners&&(n=e.wrapListeners(n)),n}function sl(e,t){var n=e.directives;if(n){var r,i,o,a,s="directives:[",c=!1;for(r=0,i=n.length;r<i;r++){o=n[r],a=!0;var u=t.directives[o.name];u&&(a=!!u(e,o,t.warn)),a&&(c=!0,s+='{name:"'+o.name+'",rawName:"'+o.rawName+'"'+(o.value?",value:("+o.value+"),expression:"+JSON.stringify(o.value):"")+(o.arg?",arg:"+(o.isDynamicArg?o.arg:'"'+o.arg+'"'):"")+(o.modifiers?",modifiers:"+JSON.stringify(o.modifiers):"")+"},")}return c?s.slice(0,-1)+"]":void 0}}function cl(e,t){var n=e.children[0];if(n&&1===n.type){var r=Qu(n,t.options);return"inlineTemplate:{render:function(){"+r.render+"},staticRenderFns:["+r.staticRenderFns.map(function(e){return"function(){"+e+"}"}).join(",")+"]}"}}function ul(e,t,n){var r=e.for||Object.keys(t).some(function(e){var n=t[e];return n.slotTargetDynamic||n.if||n.for||fl(n)}),i=!!e.if;if(!r)for(var o=e.parent;o;){if(o.slotScope&&o.slotScope!==Kc||o.for){r=!0;break}o.if&&(i=!0),o=o.parent}var a=Object.keys(t).map(function(e){return pl(t[e],n)}).join(",");return"scopedSlots:_u(["+a+"]"+(r?",null,true":"")+(!r&&i?",null,false,"+ll(a):"")+")"}function ll(e){for(var t=5381,n=e.length;n;)t=33*t^e.charCodeAt(--n);return t>>>0}function fl(e){return 1===e.type&&("slot"===e.tag||e.children.some(fl))}function pl(e,t){var n=e.attrsMap["slot-scope"];if(e.if&&!e.ifProcessed&&!n)return rl(e,t,pl,"null");if(e.for&&!e.forProcessed)return ol(e,t,pl);var r=e.slotScope===Kc?"":String(e.slotScope),i="function("+r+"){return "+("template"===e.tag?e.if&&n?"("+e.if+")?"+(dl(e,t)||"undefined")+":undefined":dl(e,t)||"undefined":el(e,t))+"}",o=r?"":",proxy:true";return"{key:"+(e.slotTarget||'"default"')+",fn:"+i+o+"}"}function dl(e,t,n,r,i){var o=e.children;if(o.length){var a=o[0];if(1===o.length&&a.for&&"template"!==a.tag&&"slot"!==a.tag){var s=n?t.maybeComponent(a)?",1":",0":"";return""+(r||el)(a,t)+s}var c=n?vl(o,t.maybeComponent):0,u=i||ml;return"["+o.map(function(e){return u(e,t)}).join(",")+"]"+(c?","+c:"")}}function vl(e,t){for(var n=0,r=0;r<e.length;r++){var i=e[r];if(1===i.type){if(hl(i)||i.ifConditions&&i.ifConditions.some(function(e){return hl(e.block)})){n=2;break}(t(i)||i.ifConditions&&i.ifConditions.some(function(e){return t(e.block)}))&&(n=1)}}return n}function hl(e){return void 0!==e.for||"template"===e.tag||"slot"===e.tag}function ml(e,t){return 1===e.type?el(e,t):3===e.type&&e.isComment?gl(e):yl(e)}function yl(e){return"_v("+(2===e.type?e.expression:wl(JSON.stringify(e.text)))+")"}function gl(e){return"_e("+JSON.stringify(e.text)+")"}function _l(e,t){var n=e.slotName||'"default"',r=dl(e,t),i="_t("+n+(r?","+r:""),o=e.attrs||e.dynamicAttrs?$l((e.attrs||[]).concat(e.dynamicAttrs||[]).map(function(e){return{name:C(e.name),value:e.value,dynamic:e.dynamic}})):null,a=e.attrsMap["v-bind"];return!o&&!a||r||(i+=",null"),o&&(i+=","+o),a&&(i+=(o?"":",null")+","+a),i+")"}function bl(e,t,n){var r=t.inlineTemplate?null:dl(t,n,!0);return"_c("+e+","+al(t,n)+(r?","+r:"")+")"}function $l(e){for(var t="",n="",r=0;r<e.length;r++){var i=e[r],o=wl(i.value);i.dynamic?n+=i.name+","+o+",":t+='"'+i.name+'":'+o+","}return t="{"+t.slice(0,-1)+"}",n?"_d("+t+",["+n.slice(0,-1)+"])":t}function wl(e){return e.replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}var xl=new RegExp("\\b"+"do,if,for,let,new,try,var,case,else,with,await,break,catch,class,const,super,throw,while,yield,delete,export,import,return,switch,default,extends,finally,continue,debugger,function,arguments".split(",").join("\\b|\\b")+"\\b"),Cl=new RegExp("\\b"+"delete,typeof,void".split(",").join("\\s*\\([^\\)]*\\)|\\b")+"\\s*\\([^\\)]*\\)"),Al=/'(?:[^'\\]|\\.)*'|"(?:[^"\\]|\\.)*"|`(?:[^`\\]|\\.)*\$\{|\}(?:[^`\\]|\\.)*`|`(?:[^`\\]|\\.)*`/g;function kl(e,t){e&&Ol(e,t)}function Ol(e,t){if(1===e.type){for(var n in e.attrsMap)if(Mc.test(n)){var r=e.attrsMap[n];if(r){var i=e.rawAttrsMap[n];"v-for"===n?Tl(e,'v-for="'+r+'"',t,i):"v-slot"===n||"#"===n[0]?El(r,n+'="'+r+'"',t,i):Ec.test(n)?Sl(r,n+'="'+r+'"',t,i):jl(r,n+'="'+r+'"',t,i)}}if(e.children)for(var o=0;o<e.children.length;o++)Ol(e.children[o],t)}else 2===e.type&&jl(e.expression,e.text,t,e)}function Sl(e,t,n,r){var i=e.replace(Al,""),o=i.match(Cl);o&&"$"!==i.charAt(o.index-1)&&n('avoid using JavaScript unary operator as property name: "'+o[0]+'" in expression '+t.trim(),r),jl(e,t,n,r)}function Tl(e,t,n,r){jl(e.for||"",t,n,r),Nl(e.alias,"v-for alias",t,n,r),Nl(e.iterator1,"v-for iterator",t,n,r),Nl(e.iterator2,"v-for iterator",t,n,r)}function Nl(e,t,n,r,i){if("string"==typeof e)try{new Function("var "+e+"=_")}catch(Xl){r("invalid "+t+' "'+e+'" in expression: '+n.trim(),i)}}function jl(e,t,n,r){try{new Function("return "+e)}catch(Xl){var i=e.replace(Al,"").match(xl);n(i?'avoid using JavaScript keyword as property name: "'+i[0]+'"\n Raw expression: '+t.trim():"invalid expression: "+Xl.message+" in\n\n "+e+"\n\n Raw expression: "+t.trim()+"\n",r)}}function El(e,t,n,r){try{new Function(e,"")}catch(Xl){n("invalid function parameter expression: "+Xl.message+" in\n\n "+e+"\n\n Raw expression: "+t.trim()+"\n",r)}}var Ml=2;function Dl(e,t,n){void 0===t&&(t=0),void 0===n&&(n=e.length);for(var r=e.split(/\r?\n/),i=0,o=[],a=0;a<r.length;a++)if((i+=r[a].length+1)>=t){for(var s=a-Ml;s<=a+Ml||n>i;s++)if(!(s<0||s>=r.length)){o.push(""+(s+1)+Ll(" ",3-String(s+1).length)+"| "+r[s]);var c=r[s].length;if(s===a){var u=t-(i-c)+1,l=n>i?c-u:n-t;o.push(" | "+Ll(" ",u)+Ll("^",l))}else if(s>a){if(n>i){var f=Math.min(n-i,c);o.push(" | "+Ll("^",f))}i+=c+1}}break}return o.join("\n")}function Ll(e,t){var n="";if(t>0)for(;1&t&&(n+=e),!((t>>>=1)<=0);)e+=e;return n}function Il(e,t){try{return new Function(e)}catch(n){return t.push({err:n,code:e}),D}}function Fl(e){var t=Object.create(null);return function(n,r,i){(r=E({},r)).warn;delete r.warn;var o=r.delimiters?String(r.delimiters)+n:n;if(t[o])return t[o];var a=e(n,r);var s={},c=[];return s.render=Il(a.render,c),s.staticRenderFns=a.staticRenderFns.map(function(e){return Il(e,c)}),t[o]=s}}function Pl(e){return function(t){function n(n,r){var i=Object.create(t),o=[],a=[],s=function(e,t,n){(n?a:o).push(e)};if(r)for(var c in r.modules&&(i.modules=(t.modules||[]).concat(r.modules)),r.directives&&(i.directives=E(Object.create(t.directives||null),r.directives)),r)"modules"!==c&&"directives"!==c&&(i[c]=r[c]);i.warn=s;var u=e(n.trim(),i);return u.errors=o,u.tips=a,u}return{compile:n,compileToFunctions:Fl(n)}}}var Rl,Hl=Pl(function(e,t){var n=Wc(e.trim(),t);!1!==t.optimize&&Eu(n,t);var r=Qu(n,t);return{ast:n,render:r.render,staticRenderFns:r.staticRenderFns}}),Bl=Hl(Nu),Ul=Bl.compile,zl=Bl.compileToFunctions;function Vl(e){return(Rl=Rl||document.createElement("div")).innerHTML=e?'<a href="\n"/>':'<div a="\n"/>',Rl.innerHTML.indexOf("&#10;")>0}var Jl=!!Y&&Vl(!1),Kl=!!Y&&Vl(!0),ql=w(function(e){var t=qi(e);return t&&t.innerHTML}),Wl=oi.prototype.$mount;function Zl(e){if(e.outerHTML)return e.outerHTML;var t=document.createElement("div");return t.appendChild(e.cloneNode(!0)),t.innerHTML}oi.prototype.$mount=function(e,t){if((e=e&&qi(e))===document.body||e===document.documentElement)return this;var n=this.$options;if(!n.render){var r=n.template;if(r)if("string"==typeof r)"#"===r.charAt(0)&&(r=ql(r));else{if(!r.nodeType)return this;r=r.innerHTML}else e&&(r=Zl(e));if(r){0;var i=zl(r,{outputSourceRange:!1,shouldDecodeNewlines:Jl,shouldDecodeNewlinesForHref:Kl,delimiters:n.delimiters,comments:n.comments},this),o=i.render,a=i.staticRenderFns;n.render=o,n.staticRenderFns=a}}return Wl.call(this,e,t)},oi.compile=zl;var Gl=oi;exports.default=Gl;
4
+ },{}],"Lue2":[function(require,module,exports) {
5
+ "use strict";function t(t){return t&&"object"==typeof t&&"default"in t?t.default:t}Object.defineProperty(exports,"__esModule",{value:!0});var e=t(require("vue"));function r(t){return(r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t})(t)}function n(t){return o(t)||s(t)||i()}function o(t){if(Array.isArray(t)){for(var e=0,r=new Array(t.length);e<t.length;e++)r[e]=t[e];return r}}function s(t){if(Symbol.iterator in Object(t)||"[object Arguments]"===Object.prototype.toString.call(t))return Array.from(t)}function i(){throw new TypeError("Invalid attempt to spread non-iterable instance")}var a="undefined"!=typeof window;function u(t){return Array.isArray(t)||"object"===r(t)?Object.freeze(t):t}function l(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return t.reduce(function(t,r){var n=r.passengers[0],o="function"==typeof n?n(e):r.passengers;return t.concat(o)},[])}function c(t,e){return t.map(function(t,e){return[e,t]}).sort(function(t,r){return e(t[1],r[1])||t[0]-r[0]}).map(function(t){return t[1]})}function p(t,e){return e.reduce(function(e,r){return t.hasOwnProperty(r)&&(e[r]=t[r]),e},{})}var h={},d={},f={},g=e.extend({data:function(){return{transports:h,targets:d,sources:f,trackInstances:a}},methods:{open:function(t){if(a){var r=t.to,n=t.from,o=t.passengers,s=t.order,i=void 0===s?1/0:s;if(r&&n&&o){var l={to:r,from:n,passengers:u(o),order:i};-1===Object.keys(this.transports).indexOf(r)&&e.set(this.transports,r,[]);var p=this.$_getTransportIndex(l),h=this.transports[r].slice(0);-1===p?h.push(l):h[p]=l,this.transports[r]=c(h,function(t,e){return t.order-e.order})}}},close:function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],r=t.to,n=t.from;if(r&&(n||!1!==e)&&this.transports[r])if(e)this.transports[r]=[];else{var o=this.$_getTransportIndex(t);if(o>=0){var s=this.transports[r].slice(0);s.splice(o,1),this.transports[r]=s}}},registerTarget:function(t,e,r){a&&(this.trackInstances&&!r&&this.targets[t]&&console.warn("[portal-vue]: Target ".concat(t," already exists")),this.$set(this.targets,t,Object.freeze([e])))},unregisterTarget:function(t){this.$delete(this.targets,t)},registerSource:function(t,e,r){a&&(this.trackInstances&&!r&&this.sources[t]&&console.warn("[portal-vue]: source ".concat(t," already exists")),this.$set(this.sources,t,Object.freeze([e])))},unregisterSource:function(t){this.$delete(this.sources,t)},hasTarget:function(t){return!(!this.targets[t]||!this.targets[t][0])},hasSource:function(t){return!(!this.sources[t]||!this.sources[t][0])},hasContentFor:function(t){return!!this.transports[t]&&!!this.transports[t].length},$_getTransportIndex:function(t){var e=t.to,r=t.from;for(var n in this.transports[e])if(this.transports[e][n].from===r)return+n;return-1}}}),m=new g(h),y=1,v=e.extend({name:"portal",props:{disabled:{type:Boolean},name:{type:String,default:function(){return String(y++)}},order:{type:Number,default:0},slim:{type:Boolean},slotProps:{type:Object,default:function(){return{}}},tag:{type:String,default:"DIV"},to:{type:String,default:function(){return String(Math.round(1e7*Math.random()))}}},created:function(){var t=this;this.$nextTick(function(){m.registerSource(t.name,t)})},mounted:function(){this.disabled||this.sendUpdate()},updated:function(){this.disabled?this.clear():this.sendUpdate()},beforeDestroy:function(){m.unregisterSource(this.name),this.clear()},watch:{to:function(t,e){e&&e!==t&&this.clear(e),this.sendUpdate()}},methods:{clear:function(t){var e={from:this.name,to:t||this.to};m.close(e)},normalizeSlots:function(){return this.$scopedSlots.default?[this.$scopedSlots.default]:this.$slots.default},normalizeOwnChildren:function(t){return"function"==typeof t?t(this.slotProps):t},sendUpdate:function(){var t=this.normalizeSlots();if(t){var e={from:this.name,to:this.to,passengers:n(t),order:this.order};m.open(e)}else this.clear()}},render:function(t){var e=this.$slots.default||this.$scopedSlots.default||[],r=this.tag;return e&&this.disabled?e.length<=1&&this.slim?this.normalizeOwnChildren(e)[0]:t(r,[this.normalizeOwnChildren(e)]):this.slim?t():t(r,{class:{"v-portal":!0},style:{display:"none"},key:"v-portal-placeholder"})}}),S=e.extend({name:"portalTarget",props:{multiple:{type:Boolean,default:!1},name:{type:String,required:!0},slim:{type:Boolean,default:!1},slotProps:{type:Object,default:function(){return{}}},tag:{type:String,default:"div"},transition:{type:[String,Object,Function]}},data:function(){return{transports:m.transports,firstRender:!0}},created:function(){var t=this;this.$nextTick(function(){m.registerTarget(t.name,t)})},watch:{ownTransports:function(){this.$emit("change",this.children().length>0)},name:function(t,e){m.unregisterTarget(e),m.registerTarget(t,this)}},mounted:function(){var t=this;this.transition&&this.$nextTick(function(){t.firstRender=!1})},beforeDestroy:function(){m.unregisterTarget(this.name)},computed:{ownTransports:function(){var t=this.transports[this.name]||[];return this.multiple?t:0===t.length?[]:[t[t.length-1]]},passengers:function(){return l(this.ownTransports,this.slotProps)}},methods:{children:function(){return 0!==this.passengers.length?this.passengers:this.$scopedSlots.default?this.$scopedSlots.default(this.slotProps):this.$slots.default||[]},noWrapper:function(){var t=this.slim&&!this.transition;return t&&this.children().length>1&&console.warn("[portal-vue]: PortalTarget with `slim` option received more than one child element."),t}},render:function(t){var e=this.noWrapper(),r=this.children(),n=this.transition||this.tag;return e?r[0]:this.slim&&!n?t():t(n,{props:{tag:this.transition&&this.tag?this.tag:void 0},class:{"vue-portal-target":!0}},r)}}),b=0,T=["disabled","name","order","slim","slotProps","tag","to"],$=["multiple","transition"],w=e.extend({name:"MountingPortal",inheritAttrs:!1,props:{append:{type:[Boolean,String]},bail:{type:Boolean},mountTo:{type:String,required:!0},disabled:{type:Boolean},name:{type:String,default:function(){return"mounted_"+String(b++)}},order:{type:Number,default:0},slim:{type:Boolean},slotProps:{type:Object,default:function(){return{}}},tag:{type:String,default:"DIV"},to:{type:String,default:function(){return String(Math.round(1e7*Math.random()))}},multiple:{type:Boolean,default:!1},targetSlim:{type:Boolean},targetSlotProps:{type:Object,default:function(){return{}}},targetTag:{type:String,default:"div"},transition:{type:[String,Object,Function]}},created:function(){if("undefined"!=typeof document){var t=document.querySelector(this.mountTo);if(t){var e=this.$props;if(m.targets[e.name])e.bail?console.warn("[portal-vue]: Target ".concat(e.name," is already mounted.\n Aborting because 'bail: true' is set")):this.portalTarget=m.targets[e.name];else{var r=e.append;if(r){var n="string"==typeof r?r:"DIV",o=document.createElement(n);t.appendChild(o),t=o}var s=p(this.$props,$);s.slim=this.targetSlim,s.tag=this.targetTag,s.slotProps=this.targetSlotProps,s.name=this.to,this.portalTarget=new S({el:t,parent:this.$parent||this,propsData:s})}}else console.error("[portal-vue]: Mount Point '".concat(this.mountTo,"' not found in document"))}},beforeDestroy:function(){var t=this.portalTarget;if(this.append){var e=t.$el;e.parentNode.removeChild(e)}t.$destroy()},render:function(t){if(!this.portalTarget)return console.warn("[portal-vue] Target wasn't mounted"),t();if(!this.$scopedSlots.manual){var e=p(this.$props,T);return t(v,{props:e,attrs:this.$attrs,on:this.$listeners,scopedSlots:this.$scopedSlots},this.$slots.default)}var r=this.$scopedSlots.manual({to:this.to});return Array.isArray(r)&&(r=r[0]),r||t()}});function P(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};t.component(e.portalName||"Portal",v),t.component(e.portalTargetName||"PortalTarget",S),t.component(e.MountingPortalName||"MountingPortal",w)}var x={install:P};exports.default=x,exports.Portal=v,exports.PortalTarget=S,exports.MountingPortal=w,exports.Wormhole=m;
6
+ },{"vue":"HYXJ"}],"D1kn":[function(require,module,exports) {
7
  "use strict";function e(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);t&&(o=o.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,o)}return r}function t(t){for(var o=1;o<arguments.length;o++){var n=null!=arguments[o]?arguments[o]:{};o%2?e(Object(n),!0).forEach(function(e){r(t,e,n[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):e(Object(n)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))})}return t}function r(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var o=t({},wptbAdminSettingsData.options),n=t({},wptbAdminSettingsData.options),c={data:function(){return{store:o,rawStore:n}},methods:{revertStore:function(){var e=this;Object.keys(this.store).map(function(t){Object.prototype.hasOwnProperty.call(e.store,t)&&(e.store[t]=e.rawStore[t])})}}},i=c;exports.default=i;
8
  },{}],"wm3G":[function(require,module,exports) {
9
  "use strict";function e(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);t&&(s=s.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,s)}return r}function t(t){for(var s=1;s<arguments.length;s++){var a=null!=arguments[s]?arguments[s]:{};s%2?e(Object(a),!0).forEach(function(e){r(t,e,a[e])}):Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(a)):e(Object(a)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(a,e))})}return t}function r(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var s={withMessageData:{busy:!1,show:!1,message:"",type:"ok",intervalId:-1,intervalTime:5e3}},a=t({},s.withMessageData),i={data:function(){return s},methods:{isBusy:function(){return this.withMessageData.busy},setMessage:function(e){var r=this,s=t({},a,{},e);this.withMessageData.message=s.message,this.withMessageData.type=s.type,this.withMessageData.show=!0,clearInterval(this.withMessageData.intervalId),this.withMessageData.intervalId=setInterval(function(){r.withMessageData.show=!1},s.intervalTime)},setBusy:function(){var e=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];this.withMessageData.busy=e}}},n=i;exports.default=n;
10
+ },{}],"aJOh":[function(require,module,exports) {
11
+ var e,n,o=Object.create(null);"undefined"!=typeof window&&(window.__VUE_HOT_MAP__=o);var t=!1,r=!1,i="beforeCreate";function s(e,n){if(n.functional){var t=n.render;n.render=function(n,r){var i=o[e].instances;return r&&i.indexOf(r.parent)<0&&i.push(r.parent),t(n,r)}}else c(n,i,function(){var n=o[e];n.Ctor||(n.Ctor=this.constructor),n.instances.push(this)}),c(n,"beforeDestroy",function(){var n=o[e].instances;n.splice(n.indexOf(this),1)})}function c(e,n,o){var t=e[n];e[n]=t?Array.isArray(t)?t.concat(o):[t,o]:[o]}function a(e){return function(n,o){try{e(n,o)}catch(t){console.error(t),console.warn("Something went wrong during Vue component hot-reload. Full reload required.")}}}function f(e,n){for(var o in e)o in n||delete e[o];for(var t in n)e[t]=n[t]}function u(e){if(e._u){var n=e._u;return e._u=function(e){try{return n(e,!0)}catch(o){return n(e,null,!0)}},function(){e._u=n}}}exports.install=function(o,s){t||(t=!0,e=o.__esModule?o.default:o,n=e.version.split(".").map(Number),r=s,e.config._lifecycleHooks.indexOf("init")>-1&&(i="init"),exports.compatible=n[0]>=2,exports.compatible||console.warn("[HMR] You are using a version of vue-hot-reload-api that is only compatible with Vue.js core ^2.0.0."))},exports.createRecord=function(e,n){if(!o[e]){var t=null;"function"==typeof n&&(n=(t=n).options),s(e,n),o[e]={Ctor:t,options:n,instances:[]}}},exports.isRecorded=function(e){return void 0!==o[e]},exports.rerender=a(function(e,n){var t=o[e];if(n){if("function"==typeof n&&(n=n.options),t.Ctor)t.Ctor.options.render=n.render,t.Ctor.options.staticRenderFns=n.staticRenderFns,t.instances.slice().forEach(function(e){e.$options.render=n.render,e.$options.staticRenderFns=n.staticRenderFns,e._staticTrees&&(e._staticTrees=[]),Array.isArray(t.Ctor.options.cached)&&(t.Ctor.options.cached=[]),Array.isArray(e.$options.cached)&&(e.$options.cached=[]);var o=u(e);e.$forceUpdate(),e.$nextTick(o)});else if(t.options.render=n.render,t.options.staticRenderFns=n.staticRenderFns,t.options.functional){if(Object.keys(n).length>2)f(t.options,n);else{var r=t.options._injectStyles;if(r){var i=n.render;t.options.render=function(e,n){return r.call(n),i(e,n)}}}t.options._Ctor=null,Array.isArray(t.options.cached)&&(t.options.cached=[]),t.instances.slice().forEach(function(e){e.$forceUpdate()})}}else t.instances.slice().forEach(function(e){e.$forceUpdate()})}),exports.reload=a(function(e,t){var r=o[e];if(t)if("function"==typeof t&&(t=t.options),s(e,t),r.Ctor){n[1]<2&&(r.Ctor.extendOptions=t);var i=r.Ctor.super.extend(t);i.options._Ctor=r.options._Ctor,r.Ctor.options=i.options,r.Ctor.cid=i.cid,r.Ctor.prototype=i.prototype,i.release&&i.release()}else f(r.options,t);r.instances.slice().forEach(function(e){e.$vnode&&e.$vnode.context?e.$vnode.context.$forceUpdate():console.warn("Root or manually mounted instance modified. Full reload required.")})});
12
  },{}],"vi91":[function(require,module,exports) {
13
  "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e={props:["logoSrc","logoAlt","pluginName"]};exports.default=e;
14
+ (function(){var t=exports.default||module.exports;"function"==typeof t&&(t=t.options),Object.assign(t,{render:function(){var t=this,e=t.$createElement,a=t._self._c||e;return a("div",{staticClass:"wptb-settings-header"},[a("div",{staticClass:"wptb-settings-brand"},[a("img",{attrs:{src:t.logoSrc,alt:t.logoAlt}}),t._v(" "),a("span",{staticClass:"wptb-settings-header-name"},[t._v(" "+t._s(t.pluginName)+" ")])]),t._v(" "),a("div",{staticClass:"wptb-settings-links"},[t._t("default")],2)])},staticRenderFns:[],_compiled:!0,_scopeId:null,functional:void 0}),function(){if(module.hot){var e=require("vue-hot-reload-api");e.install(require("vue")),e.compatible&&(module.hot.accept(),module.hot.data?e.reload("$b57d2a",t):e.createRecord("$b57d2a",t))}}();})();
15
+ },{"vue-hot-reload-api":"aJOh","vue":"HYXJ"}],"bosS":[function(require,module,exports) {
16
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var t={props:{name:{type:String,default:"section_item"},current:{type:String,default:""},label:{type:String,default:"Section Item"},disabled:{type:Boolean,default:!1}},methods:{activePosition:function(){void 0!==this.current&&this.current!==this.name||this.$emit("activeSectionElement",this.$refs.sectionItem)},activateSection:function(t){this.disabled||this.$emit("sectionchange",this.name,t.target)}},computed:{isActive:function(){return this.activePosition(),void 0===this.current||this.current===this.name},getLabel:function(){return void 0!==this.label?this.label:this.name}}};exports.default=t;
17
+ (function(){var e=exports.default||module.exports;"function"==typeof e&&(e=e.options),Object.assign(e,{render:function(){var e=this,t=e.$createElement;return(e._self._c||t)("div",{ref:"sectionItem",staticClass:"wptb-settings-section-item",class:{disabled:e.disabled||!e.isActive},on:{click:function(t){return e.activateSection(t)}}},[e._v(" "+e._s(e.getLabel)+"\n")])},staticRenderFns:[],_compiled:!0,_scopeId:null,functional:void 0}),function(){if(module.hot){var t=require("vue-hot-reload-api");t.install(require("vue")),t.compatible&&(module.hot.accept(),module.hot.data?t.reload("$354c7f",e):t.createRecord("$354c7f",e))}}();})();
18
+ },{"vue-hot-reload-api":"aJOh","vue":"HYXJ"}],"jLHe":[function(require,module,exports) {
19
  "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var t={props:["activeItem","relativeParent"],methods:{toPx:function(t){return"".concat(t,"px")}},computed:{styleCalculations:function(){if(this.activeItem){var t=this.activeItem.getBoundingClientRect(),e=this.relativeParent.getBoundingClientRect(),i=Math.abs(t.left-e.left);return{width:this.toPx(t.width),height:"2px",bottom:0,left:this.toPx(i)}}return{}}}};exports.default=t;
20
+ (function(){var e=exports.default||module.exports;"function"==typeof e&&(e=e.options),Object.assign(e,{render:function(){var e=this.$createElement;return(this._self._c||e)("div",{staticClass:"wptb-menu-active-section-indicator",style:this.styleCalculations})},staticRenderFns:[],_compiled:!0,_scopeId:null,functional:void 0}),function(){if(module.hot){var t=require("vue-hot-reload-api");t.install(require("vue")),t.compatible&&(module.hot.accept(),module.hot.data?t.reload("$d41ec1",e):t.createRecord("$d41ec1",e))}}();})();
21
+ },{"vue-hot-reload-api":"aJOh","vue":"HYXJ"}],"yPIx":[function(require,module,exports) {
22
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e=n(require("./SectionItem")),t=n(require("./ActiveSectionIndicator"));function n(e){return e&&e.__esModule?e:{default:e}}var i={model:{prop:"currentSection",event:"updateSection"},props:{child:{type:Boolean,default:!1},items:null,currentSection:String,disabled:{type:Boolean,default:!1}},components:{SectionItem:e.default,ActiveSectionIndicator:t.default},data:function(){return{innerCurrentSection:"",activeSectionElement:null}},mounted:function(){this.innerCurrentSection=this.currentSection||this.items[0]},watch:{innerCurrentSection:function(e){this.$emit("updateSection",e)}},computed:{getItems:function(){return Array.isArray(this.items)?this.items.reduce(function(e,t){return e[t]=t,e},{}):this.items}},methods:{handleSectionChange:function(e){this.innerCurrentSection=e},handleActiveSectionElement:function(e){this.activeSectionElement=e}}};exports.default=i;
23
+ (function(){var e=exports.default||module.exports;"function"==typeof e&&(e=e.options),Object.assign(e,{render:function(){var e=this,t=e.$createElement,i=e._self._c||t;return i("div",[i("div",{ref:"wrapper",staticClass:"wptb-settings-sections-wrapper",class:{child:e.child}},[e._l(e.getItems,function(t,n){return i("section-item",{key:n,attrs:{name:n,label:t,current:e.innerCurrentSection,disabled:e.disabled},on:{sectionchange:e.handleSectionChange,activeSectionElement:e.handleActiveSectionElement}})}),e._v(" "),i("active-section-indicator",{attrs:{"relative-parent":e.$refs.wrapper,"active-item":e.activeSectionElement}})],2),e._v(" "),e._t("default")],2)},staticRenderFns:[],_compiled:!0,_scopeId:null,functional:void 0}),function(){if(module.hot){var t=require("vue-hot-reload-api");t.install(require("vue")),t.compatible&&(module.hot.accept(),module.hot.data?t.reload("$07c866",e):t.createRecord("$07c866",e))}}();})();
24
+ },{"./SectionItem":"bosS","./ActiveSectionIndicator":"jLHe","vue-hot-reload-api":"aJOh","vue":"HYXJ"}],"P9T4":[function(require,module,exports) {
 
 
 
 
 
 
 
 
 
25
  "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e=t(require("../mixins/withMessage"));function t(e){return e&&e.__esModule?e:{default:e}}var r={mixins:[e.default]};exports.default=r;
26
+ (function(){var e=exports.default||module.exports;"function"==typeof e&&(e=e.options),Object.assign(e,{render:function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"wptb-settings-messages"},[e.withMessageData.busy?s("span",{staticClass:"dashicons dashicons-image-rotate wptb-settings-fetching"}):e._e(),e._v(" "),s("transition",{attrs:{name:"wptb-fade"}},[e.withMessageData.show?s("span",{staticClass:"wptb-settings-message",class:[e.withMessageData.type]},[e._v(e._s(e.withMessageData.message))]):e._e()])],1)},staticRenderFns:[],_compiled:!0,_scopeId:null,functional:void 0}),function(){if(module.hot){var t=require("vue-hot-reload-api");t.install(require("vue")),t.compatible&&(module.hot.accept(),module.hot.data?t.reload("$08e206",e):t.createRecord("$08e206",e))}}();})();
27
+ },{"../mixins/withMessage":"wm3G","vue-hot-reload-api":"aJOh","vue":"HYXJ"}],"ksMR":[function(require,module,exports) {
28
  "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e={props:{disabled:Boolean,type:{type:String,default:"primary"},size:{type:String,default:"normal"}},methods:{handleClick:function(){this.disabled||this.$emit("click")}}};exports.default=e;
29
+ (function(){var e=exports.default||module.exports;"function"==typeof e&&(e=e.options),Object.assign(e,{render:function(){var e=this.$createElement;return(this._self._c||e)("div",{staticClass:"wptb-settings-button",class:[{disabled:this.disabled},this.type,this.size],on:{click:this.handleClick}},[this._t("default")],2)},staticRenderFns:[],_compiled:!0,_scopeId:null,functional:void 0}),function(){if(module.hot){var t=require("vue-hot-reload-api");t.install(require("vue")),t.compatible&&(module.hot.accept(),module.hot.data?t.reload("$201995",e):t.createRecord("$201995",e))}}();})();
30
+ },{"vue-hot-reload-api":"aJOh","vue":"HYXJ"}],"y8Jx":[function(require,module,exports) {
31
+ var t=null;function e(){return t||(t=n()),t}function n(){try{throw new Error}catch(e){var t=(""+e.stack).match(/(https?|file|ftp|chrome-extension|moz-extension):\/\/[^)\n]+/g);if(t)return r(t[0])}return"/"}function r(t){return(""+t).replace(/^((?:https?|file|ftp|chrome-extension|moz-extension):\/\/.+)\/[^\/]+$/,"$1")+"/"}exports.getBundleURL=e,exports.getBaseURL=r;
32
+ },{}],"uNEb":[function(require,module,exports) {
33
+ var e=require("./bundle-url");function n(e){var n=e.cloneNode();n.onload=function(){e.remove()},n.href=e.href.split("?")[0]+"?"+Date.now(),e.parentNode.insertBefore(n,e.nextSibling)}var l=null;function r(){l||(l=setTimeout(function(){for(var r=document.querySelectorAll('link[rel="stylesheet"]'),t=0;t<r.length;t++)e.getBaseURL(r[t].href)===e.getBundleURL()&&n(r[t]);l=null},50))}module.exports=r;
34
+ },{"./bundle-url":"y8Jx"}],"nwtb":[function(require,module,exports) {
35
  "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e=t(require("./MessageDisplay.vue")),s=t(require("./MenuButton"));function t(e){return e&&e.__esModule?e:{default:e}}var u={props:["messageType","messageShow","messageBody","messageBusy"],components:{MessageDisplay:e.default,MenuButton:s.default}};exports.default=u;
36
+ (function(){var e=exports.default||module.exports;"function"==typeof e&&(e=e.options),Object.assign(e,{render:function(){var e=this,t=e.$createElement,s=e._self._c||t;return s("div",{staticClass:"wptb-settings-footer"},[s("message-display",{attrs:{busy:e.messageBusy,message:e.messageBody,show:e.messageShow,type:e.messageType}}),e._v(" "),s("div",{staticClass:"wptb-settings-button-container"},[s("menu-button",{staticStyle:{visibility:"hidden"}},[e._v("dummy")]),e._v(" "),e._t("default")],2)],1)},staticRenderFns:[],_compiled:!0,_scopeId:null,functional:void 0}),function(){if(module.hot){var t=require("vue-hot-reload-api");t.install(require("vue")),t.compatible&&(module.hot.accept(),module.hot.data?t.reload("$3ebe93",e):t.createRecord("$3ebe93",e))}}();})();
37
+ },{"./MessageDisplay.vue":"P9T4","./MenuButton":"ksMR","_css_loader":"uNEb","vue-hot-reload-api":"aJOh","vue":"HYXJ"}],"CDb8":[function(require,module,exports) {
38
+ "use strict";function e(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function t(t){for(var n=1;n<arguments.length;n++){var r=null!=arguments[n]?arguments[n]:{},o=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),o.forEach(function(n){e(t,n,r[n])})}return t}Object.defineProperty(exports,"__esModule",{value:!0}),exports.Plugin=exports.SSR=exports.Fragment=exports.default=void 0;var n=function(e,t,n){Object.defineProperty(e,t,{configurable:!0,get:function(){return n},set:function(e){console.warn("tried to set frozen property ".concat(t," with ").concat(e))}})},r=function(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;Object.defineProperty(e,t,{configurable:!0,writable:!0,value:n})},o={abstract:!0,name:"Fragment",props:{name:{type:String,default:function(){return Math.floor(Date.now()*Math.random()).toString(16)}}},mounted:function(){var e=this.$el,t=e.parentNode,o=document.createComment("fragment#".concat(this.name,"#head")),i=document.createComment("fragment#".concat(this.name,"#tail"));t.insertBefore(o,e),t.insertBefore(i,e),e.appendChild=function(r){t.insertBefore(r,i),n(r,"parentNode",e)},e.insertBefore=function(r,o){t.insertBefore(r,o),n(r,"parentNode",e)},e.removeChild=function(e){t.removeChild(e),r(e,"parentNode")},Array.from(e.childNodes).forEach(function(t){return e.appendChild(t)}),t.removeChild(e),n(e,"parentNode",t),n(e,"nextSibling",i.nextSibling);var a=t.insertBefore;t.insertBefore=function(n,r){a.call(t,n,r!==e?r:o)};var c=t.removeChild;t.removeChild=function(n){if(n===e){for(;o.nextSibling!==i;)e.removeChild(o.nextSibling);t.removeChild(o),t.removeChild(i),r(e,"parentNode"),t.insertBefore=a,t.removeChild=c}else c.call(t,n)}},render:function(e){var n=this,r=this.$slots.default;return r&&r.length&&r.forEach(function(e){return e.data=t({},e.data,{attrs:t({fragment:n.name},(e.data||{}).attrs)})}),e("div",{attrs:{fragment:this.name}},r)}};function i(e,t){}var a=o,c=i,f={install:function(e){e.component("fragment",o)}},l={Fragment:o,Plugin:f,SSR:i};exports.Plugin=f,exports.SSR=c,exports.Fragment=a;var u=l;exports.default=u;
39
+ },{}],"Bhde":[function(require,module,exports) {
40
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e={props:["title"]};exports.default=e;
41
+ (function(){var t=exports.default||module.exports;"function"==typeof t&&(t=t.options),Object.assign(t,{render:function(){var t=this.$createElement,e=this._self._c||t;return e("div",{staticClass:"wptb-setting-control"},[this.title?e("div",{staticClass:"title"},[this._v(this._s(this.title))]):this._e(),this._v(" "),this._t("default")],2)},staticRenderFns:[],_compiled:!0,_scopeId:null,functional:void 0}),function(){if(module.hot){var e=require("vue-hot-reload-api");e.install(require("vue")),e.compatible&&(module.hot.accept(),module.hot.data?e.reload("$b8d3ae",t):e.createRecord("$b8d3ae",t))}}();})();
42
+ },{"vue-hot-reload-api":"aJOh","vue":"HYXJ"}],"yXWm":[function(require,module,exports) {
43
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e={props:["fieldData","modelBind"],methods:{isType:function(e){return this.fieldData.type===e}}};exports.default=e;
44
+ (function(){var e=exports.default||module.exports;"function"==typeof e&&(e=e.options),Object.assign(e,{render:function(){var e=this,i=e.$createElement,d=e._self._c||i;return d("div",[e.isType("multiCheckbox")?d("div",e._l(e.fieldData.options,function(i,a){return d("div",{key:i,staticClass:"wptb-setting-control-row"},[d("input",{directives:[{name:"model",rawName:"v-model",value:e.modelBind[e.fieldData.id],expression:"modelBind[fieldData.id]"}],attrs:{id:e.fieldData.id,type:"checkbox"},domProps:{value:a,checked:Array.isArray(e.modelBind[e.fieldData.id])?e._i(e.modelBind[e.fieldData.id],a)>-1:e.modelBind[e.fieldData.id]},on:{change:function(i){var d=e.modelBind[e.fieldData.id],t=i.target,l=!!t.checked;if(Array.isArray(d)){var o=a,n=e._i(d,o);t.checked?n<0&&e.$set(e.modelBind,e.fieldData.id,d.concat([o])):n>-1&&e.$set(e.modelBind,e.fieldData.id,d.slice(0,n).concat(d.slice(n+1)))}else e.$set(e.modelBind,e.fieldData.id,l)}}}),e._v(" "),d("label",{attrs:{for:e.fieldData.id}},[e._v(e._s(i))])])}),0):e.isType("checkbox")?d("div",[d("div",{staticClass:"wptb-setting-control-row"},[d("input",{directives:[{name:"model",rawName:"v-model",value:e.modelBind[e.fieldData.id],expression:"modelBind[fieldData.id]"}],attrs:{id:e.fieldData.id,type:"checkbox"},domProps:{checked:Array.isArray(e.modelBind[e.fieldData.id])?e._i(e.modelBind[e.fieldData.id],null)>-1:e.modelBind[e.fieldData.id]},on:{change:function(i){var d=e.modelBind[e.fieldData.id],a=i.target,t=!!a.checked;if(Array.isArray(d)){var l=e._i(d,null);a.checked?l<0&&e.$set(e.modelBind,e.fieldData.id,d.concat([null])):l>-1&&e.$set(e.modelBind,e.fieldData.id,d.slice(0,l).concat(d.slice(l+1)))}else e.$set(e.modelBind,e.fieldData.id,t)}}}),e._v(" "),d("label",{attrs:{for:e.fieldData.id}},[e._v(e._s(e.fieldData.label))])])]):e.isType("dropdown")?d("div",[d("div",{staticClass:"wptb-setting-control-row"},[d("select",{directives:[{name:"model",rawName:"v-model",value:e.modelBind[e.fieldData.id],expression:"modelBind[fieldData.id]"}],attrs:{id:e.fieldData.id},on:{change:function(i){var d=Array.prototype.filter.call(i.target.options,function(e){return e.selected}).map(function(e){return"_value"in e?e._value:e.value});e.$set(e.modelBind,e.fieldData.id,i.target.multiple?d:d[0])}}},e._l(e.fieldData.options,function(i){return d("option",{key:i.label,domProps:{value:i.value}},[e._v(" "+e._s(i.label)+" ")])}),0),e._v(" "),d("label",{attrs:{for:e.fieldData.id}},[e._v(e._s(e.fieldData.label))]),e._v(" "),e._t("default")],2)]):e._e()])},staticRenderFns:[],_compiled:!0,_scopeId:null,functional:void 0}),function(){if(module.hot){var i=require("vue-hot-reload-api");i.install(require("vue")),i.compatible&&(module.hot.accept(),module.hot.data?i.reload("$d317c2",e):i.createRecord("$d317c2",e))}}();})();
45
+ },{"vue-hot-reload-api":"aJOh","vue":"HYXJ"}],"vTRD":[function(require,module,exports) {
46
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e={props:{center:{type:Boolean,default:!1}}};exports.default=e;
47
+ (function(){var e=exports.default||module.exports;"function"==typeof e&&(e=e.options),Object.assign(e,{render:function(){var e=this.$createElement;return(this._self._c||e)("div",{staticClass:"wptb-settings-controls-wrapper",class:[this.center?"center":"grid"]},[this._t("default")],2)},staticRenderFns:[],_compiled:!0,_scopeId:null,functional:void 0}),function(){if(module.hot){var t=require("vue-hot-reload-api");t.install(require("vue")),t.compatible&&(module.hot.accept(),module.hot.data?t.reload("$ef5f07",e):t.createRecord("$ef5f07",e))}}();})();
48
+ },{"vue-hot-reload-api":"aJOh","vue":"HYXJ"}],"fmPj":[function(require,module,exports) {
49
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e=require("vue-fragment"),t=o(require("../components/SettingCard")),n=o(require("../components/ControlItem")),r=o(require("../components/MenuContent")),u=o(require("../components/MenuButton"));function o(e){return e&&e.__esModule?e:{default:e}}var a={props:{currentFields:{type:Array,default:function(){return[]}},store:{type:Object,default:function(){return{}}},disabled:{type:Boolean,default:!1}},components:{SettingCard:t.default,ControlItem:n.default,MenuContent:r.default,Fragment:e.Fragment,MenuButton:u.default}};exports.default=a;
50
+ (function(){var t=exports.default||module.exports;"function"==typeof t&&(t=t.options),Object.assign(t,{render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("fragment",[n("menu-content",t._l(t.currentFields,function(e){return n("setting-card",{key:e.id,attrs:{title:e.label}},[n("control-item",{attrs:{"field-data":e,modelBind:t.store}})],1)}),1),t._v(" "),n("portal",{attrs:{to:"footerButtons"}},[n("div",{staticClass:"wptb-settings-button-container"},[n("menu-button",{attrs:{type:"danger",disabled:t.disabled},on:{click:function(e){return t.$emit("resetStore")}}},[t._v(t._s(t.strings.revert)+" ")]),t._v(" "),n("menu-button",{attrs:{type:"primary",disabled:t.disabled},on:{click:function(e){return t.$emit("submitSettings")}}},[t._v(t._s(t.strings.submit)+" ")])],1)])],1)},staticRenderFns:[],_compiled:!0,_scopeId:null,functional:void 0}),function(){if(module.hot){var e=require("vue-hot-reload-api");e.install(require("vue")),e.compatible&&(module.hot.accept(),module.hot.data?e.reload("$b2e1c1",t):e.createRecord("$b2e1c1",t))}}();})();
51
+ },{"vue-fragment":"CDb8","../components/SettingCard":"Bhde","../components/ControlItem":"yXWm","../components/MenuContent":"vTRD","../components/MenuButton":"ksMR","vue-hot-reload-api":"aJOh","vue":"HYXJ"}],"TQBY":[function(require,module,exports) {
52
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e=require("vue-fragment"),t={props:{label:{type:String,default:"row label"}},components:{Fragment:e.Fragment}};exports.default=t;
53
+ (function(){var t=exports.default||module.exports;"function"==typeof t&&(t=t.options),Object.assign(t,{render:function(){var t=this.$createElement,e=this._self._c||t;return e("fragment",[e("div",{staticClass:"wptb-version-control-row-element wptb-version-control-row-label"},[this._v(this._s(this.label))]),this._v(" "),e("div",{staticClass:"wptb-version-control-row-element wptb-version-control-row-slot"},[this._t("default")],2)])},staticRenderFns:[],_compiled:!0,_scopeId:null,functional:void 0}),function(){if(module.hot){var e=require("vue-hot-reload-api");e.install(require("vue")),e.compatible&&(module.hot.accept(),module.hot.data?e.reload("$fa09d8",t):e.createRecord("$fa09d8",t))}}();})();
54
+ },{"vue-fragment":"CDb8","vue-hot-reload-api":"aJOh","vue":"HYXJ"}],"j6V8":[function(require,module,exports) {
55
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var t={props:{latestVersion:{type:String,default:"1.0.0"},version:{type:String,default:"1.0.0"}},computed:{indicatorStyle:function(){return{"wptb-version-indicator-match":this.latestVersion===this.version,"wptb-version-indicator-low":this.latestVersion!==this.version}}}};exports.default=t;
56
+ (function(){var t=exports.default||module.exports;"function"==typeof t&&(t=t.options),Object.assign(t,{render:function(){var t=this.$createElement,i=this._self._c||t;return i("div",{staticClass:"wptb-version-indicator"},[i("div",{staticClass:"wptb-version-indicator-circle",class:this.indicatorStyle}),this._v(" "),i("div",{staticClass:"wptb-version-indicator-version"},[this._v(this._s(this.version))])])},staticRenderFns:[],_compiled:!0,_scopeId:null,functional:void 0}),function(){if(module.hot){var i=require("vue-hot-reload-api");i.install(require("vue")),i.compatible&&(module.hot.accept(),module.hot.data?i.reload("$36a364",t):i.createRecord("$36a364",t))}}();})();
57
+ },{"vue-hot-reload-api":"aJOh","vue":"HYXJ"}],"sarO":[function(require,module,exports) {
58
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e={props:{rawChangelog:{type:String,default:"changelog"},version:{type:String,default:"1.0.0"}},data:function(){return{parsedChangelog:{}}},mounted:function(){var e=this,r=document.createElement("div");r.innerHTML=this.rawChangelog;var t=Array.from(r.querySelectorAll("h4")),n=Array.from(r.querySelectorAll("ul"));t.map(function(r,t){var o=r.textContent;e.parsedChangelog[o]=void 0!==n[t]?n[t].outerHTML:""})},computed:{getVersionChangelog:function(){return this.parsedChangelog[this.version]?this.prepareHeader(this.version)+this.parsedChangelog[this.version]:this.prepareHeader("no changelog found for version".concat(this.version))}},methods:{prepareHeader:function(e){return'<h4 style="text-align: center;">'.concat(e,"</h4>")}}};exports.default=e;
59
+ (function(){var e=exports.default||module.exports;"function"==typeof e&&(e=e.options),Object.assign(e,{render:function(){var e=this.$createElement;return(this._self._c||e)("div",{staticClass:"wptb-version-control-changelog wptb-unselectable",domProps:{innerHTML:this._s(this.getVersionChangelog)}})},staticRenderFns:[],_compiled:!0,_scopeId:null,functional:void 0}),function(){if(module.hot){var t=require("vue-hot-reload-api");t.install(require("vue")),t.compatible&&(module.hot.accept(),module.hot.data?t.reload("$465ead",e):t.createRecord("$465ead",e))}}();})();
60
+ },{"vue-hot-reload-api":"aJOh","vue":"HYXJ"}],"V4Tn":[function(require,module,exports) {
61
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e=require("vue-fragment"),t=a(require("./MenuContent")),n=a(require("./MenuButton")),r=a(require("./VersionControlRow")),o=a(require("./VersionIndicator")),s=a(require("./Changelog")),i=a(require("../mixins/withMessage"));function a(e){return e&&e.__esModule?e:{default:e}}function l(e){return(l="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var u={props:{templateData:{type:Object,default:function(){return{}}}},components:{VersionControlRow:r.default,MenuContent:t.default,Fragment:e.Fragment,MenuButton:n.default,VersionIndicator:o.default,Changelog:s.default},mixins:[i.default],data:function(){return{selectedVersion:"1.0.0",currentVersion:"1.0.0",latestVersion:"1.0.0",allVersions:{},installResult:!1,showForm:!1,form:"<p>form</p>"}},mounted:function(){var e=this.getVersionControlData().currentVersion;this.currentVersion=e,this.latestVersion=this.getVersionControlData().latestVersion,this.allVersions=this.getVersionControlData().allVersions,this.selectedVersion=void 0!==this.allVersions[e]?e:this.latestVersion},computed:{showUpdateToLatest:function(){return this.currentVersion!==this.latestVersion},sortedVersions:function(){return Object.keys(this.allVersions).sort(function(e,t){return e>t?-1:e<t?1:0})}},methods:{isVersionSelected:function(e){return this.selectedVersion===e},getVersionControlData:function(){return this.templateData.versionControl},updateToLatest:function(){this.selectedVersion=this.latestVersion,this.installVersion()},installVersion:function(){var e=this;if(!this.isVersionSelected(this.currentVersion)&&!this.isBusy()&&window.confirm(this.strings.rollbackConfirmation)){this.setBusy(!0);var t=new FormData,n=this.getVersionControlData().security,r=n.action,o=n.nonce,s=n.ajaxUrl;t.append("action",r),t.append("nonce",o),t.append("version",this.selectedVersion);var i=!1;fetch(s,{method:"POST",body:t}).then(function(e){if(e.ok){var t=e.headers.get("Content-Type");return t.includes("text/plain-text")?e.text():t.includes("text/html")?(i=!0,e.text()):e.json()}throw new Error("an error occurred, try again later")}).then(function(t){if("object"===l(t)){if(t.error)throw new Error(t.error);e.setMessage({message:t.message}),e.setInstallResult(!0)}else{if(!i)throw new Error(t);e.showForm=!0,e.form=t}}).catch(function(t){e.setMessage({type:"error",message:t}),e.setInstallResult(!1)}).finally(function(){e.setBusy(!1)})}},setInstallResult:function(e){this.installResult=e},reloadPage:function(){window.location.reload()}}};exports.default=u;
62
+ (function(){var t=exports.default||module.exports;"function"==typeof t&&(t=t.options),Object.assign(t,{render:function(){var t=this,e=t.$createElement,s=t._self._c||e;return s("fragment",[s("menu-content",{attrs:{center:!0}},[t.showForm?s("div",{domProps:{innerHTML:t._s(t.form)}}):s("div",{staticClass:"wptb-settings-version-control"},[s("div",{staticClass:"wptb-version-control-main"},[s("div",{staticClass:"wptb-version-control-main-row"},[t._v(t._s(t.strings.versionControlInfo))]),t._v(" "),s("div",{staticClass:"wptb-version-control-controls"},[s("version-control-row",{attrs:{label:t.strings.yourVersion}},[s("version-indicator",{attrs:{"latest-version":t.latestVersion,version:t.currentVersion}})],1),t._v(" "),s("version-control-row",{attrs:{label:t.strings.latestVersion}},[s("version-indicator",{attrs:{"latest-version":t.latestVersion,version:t.latestVersion}}),t._v(" "),t.showUpdateToLatest?s("a",{staticClass:"wptb-version-control-anchor",attrs:{href:"#"},on:{click:function(e){return e.preventDefault(),t.updateToLatest(e)}}},[t._v(t._s(t.strings.updateToLatest))]):t._e()],1),t._v(" "),s("version-control-row",{attrs:{label:t.strings.installVersion}},[s("select",{directives:[{name:"model",rawName:"v-model",value:t.selectedVersion,expression:"selectedVersion"}],attrs:{disabled:t.isBusy()},on:{change:function(e){var s=Array.prototype.filter.call(e.target.options,function(t){return t.selected}).map(function(t){return"_value"in t?t._value:t.value});t.selectedVersion=e.target.multiple?s:s[0]}}},t._l(t.sortedVersions,function(e){return s("option",{key:e,attrs:{disabled:e===t.currentVersion},domProps:{selected:t.isVersionSelected(e)}},[t._v(t._s(e)+" ")])}),0)])],1),t._v(" "),s("div",{staticClass:"wptb-version-control-main-row"},[s("div",{staticClass:"wptb-version-control-warning-span"},[t._v(t._s(t.strings.warning)+":")]),t._v(" "),s("div",{staticClass:"wptb-version-control-warning-info"},[t._v(t._s(t.strings.warningInfo))])])]),t._v(" "),s("changelog",{attrs:{version:t.selectedVersion,"raw-changelog":t.getVersionControlData().changelog}})],1)]),t._v(" "),s("portal",{attrs:{to:"footerButtons"}},[s("div",{staticClass:"wptb-settings-button-container"},[t.installResult?t._e():s("menu-button",{attrs:{disabled:t.isVersionSelected(t.currentVersion)||t.isBusy(),type:"primary"},on:{click:t.installVersion}},[t._v(t._s(t.strings.installVersion+" "+t.selectedVersion)+" ")]),t._v(" "),t.installResult?s("menu-button",{attrs:{type:"primary"},on:{click:t.reloadPage}},[t._v(t._s(t.strings.reload))]):t._e()],1)])],1)},staticRenderFns:[],_compiled:!0,_scopeId:null,functional:void 0}),function(){if(module.hot){var e=require("vue-hot-reload-api");e.install(require("vue")),e.compatible&&(module.hot.accept(),module.hot.data?e.reload("$f01cba",t):e.createRecord("$f01cba",t))}}();})();
63
+ },{"vue-fragment":"CDb8","./MenuContent":"vTRD","./MenuButton":"ksMR","./VersionControlRow":"TQBY","./VersionIndicator":"j6V8","./Changelog":"sarO","../mixins/withMessage":"wm3G","vue-hot-reload-api":"aJOh","vue":"HYXJ"}],"pZ9N":[function(require,module,exports) {
64
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e=a(require("../mixins/withStore.js")),t=a(require("../mixins/withMessage")),r=a(require("../components/MenuHeader.vue")),n=a(require("../components/Sections.vue")),o=a(require("../components/MenuFooter.vue")),i=a(require("../components/MenuButton.vue")),s=a(require("./GeneralSettings")),c=a(require("../components/VersionControlSettings"));function a(e){return e&&e.__esModule?e:{default:e}}function u(e,t){return h(e)||d(e,t)||l(e,t)||f()}function f(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}function l(e,t){if(e){if("string"==typeof e)return p(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);return"Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r?Array.from(r):"Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r)?p(e,t):void 0}}function p(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=new Array(t);r<t;r++)n[r]=e[r];return n}function d(e,t){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e)){var r=[],n=!0,o=!1,i=void 0;try{for(var s,c=e[Symbol.iterator]();!(n=(s=c.next()).done)&&(r.push(s.value),!t||r.length!==t);n=!0);}catch(a){o=!0,i=a}finally{try{n||null==c.return||c.return()}finally{if(o)throw i}}return r}}function h(e){if(Array.isArray(e))return e}function y(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function b(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?y(Object(r),!0).forEach(function(t){m(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):y(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}function m(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function g(e){return(g="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e})(e)}var S={props:["sectionsData","settings","pluginInfo"],components:{MenuButton:i.default,MenuHeader:r.default,Sections:n.default,MenuFooter:o.default,GeneralSettings:s.default,VersionControlSettings:c.default},mixins:[e.default,t.default],data:function(){return{sections:{},currentSection:"",parsedFields:{},resetActive:!1,canSubmit:!1,fetching:!1}},watch:{store:{handler:function(){this.resetActive?(this.canSubmit=!1,this.resetActive=!1):this.canSubmit=!0},deep:!0},fetching:function(e){this.setBusy(e)}},beforeMount:function(){var e=this;Object.keys(this.sectionsData).map(function(t){e.sections[t]=e.sectionsData[t].label,Object.prototype.hasOwnProperty.call(e.sectionsData,t)&&(void 0===e.parsedFields[t]&&(e.parsedFields[t]=[]),void 0!==e.sectionsData[t].fields&&"object"===g(e.sectionsData[t].fields)&&Object.keys(e.sectionsData[t].fields).map(function(r){Object.prototype.hasOwnProperty.call(e.sectionsData[t].fields,r)&&e.parsedFields[t].push(b({},e.sectionsData[t].fields[r],{id:r}))}))});var t=u(Object.keys(this.parsedFields).map(function(t){if(Object.prototype.hasOwnProperty.call(e.parsedFields,t))return t}),1);this.currentSection=t[0]},computed:{currentFields:function(){return this.parsedFields[this.currentSection]},currentTemplate:function(){return"".concat(this.currentSection[0].toUpperCase()+this.currentSection.slice(1),"Settings")}},methods:{resetStore:function(){this.canSubmit&&(this.revertStore(),this.resetActive=!0,this.setMessage({message:this.strings.revertMessage}))},submitSettings:function(){var e=this;if(this.canSubmit){var t=new FormData;t.append("nonce",this.settings.nonce),t.append("action",this.settings.action),t.append("options",JSON.stringify(this.store)),this.canSubmit=!1,this.fetching=!0,fetch(this.settings.ajaxUrl,{method:"POST",body:t}).then(function(e){if(e.ok)return e.json()}).then(function(t){if(t.error)throw new Error(t.error);e.setMessage({message:t.message})}).catch(function(t){console.error(t),e.setMessage({type:"error",message:t})}).finally(function(){e.fetching=!1})}}}};exports.default=S;
65
+ (function(){var e=exports.default||module.exports;"function"==typeof e&&(e=e.options),Object.assign(e,{render:function(){var e=this,t=e.$createElement,o=e._self._c||t;return o("div",{staticClass:"wptb-settings-wrapper"},[o("menu-header",{attrs:{"logo-src":e.pluginInfo.logo,"logo-alt":e.strings.logoAlt,"plugin-name":e.pluginInfo.pluginName}},[o("a",{attrs:{href:e.pluginInfo.pluginHomepage}},[e._v(e._s(e.strings.homepage))])]),e._v(" "),o("sections",{attrs:{items:e.sections,disabled:e.isBusy()},model:{value:e.currentSection,callback:function(t){e.currentSection=t},expression:"currentSection"}}),e._v(" "),o(e.currentTemplate,{tag:"component",attrs:{"current-fields":e.currentFields,store:e.store,disabled:!e.canSubmit,"template-data":e.settings},on:{resetStore:e.resetStore,submitSettings:e.submitSettings}}),e._v(" "),o("menu-footer",[o("portal-target",{attrs:{name:"footerButtons"}})],1)],1)},staticRenderFns:[],_compiled:!0,_scopeId:null,functional:void 0}),function(){if(module.hot){var t=require("vue-hot-reload-api");t.install(require("vue")),t.compatible&&(module.hot.accept(),module.hot.data?t.reload("$81608b",e):t.createRecord("$81608b",e))}}();})();
66
+ },{"../mixins/withStore.js":"D1kn","../mixins/withMessage":"wm3G","../components/MenuHeader.vue":"vi91","../components/Sections.vue":"yPIx","../components/MenuFooter.vue":"nwtb","../components/MenuButton.vue":"ksMR","./GeneralSettings":"fmPj","../components/VersionControlSettings":"V4Tn","vue-hot-reload-api":"aJOh","vue":"HYXJ"}],"yEip":[function(require,module,exports) {
67
  "use strict";function t(t,e){t.mixin({data:function(){return{strings:e.strings}}})}Object.defineProperty(exports,"__esModule",{value:!0}),exports.default=void 0;var e={install:t};exports.default=e;
68
  },{}],"uD0a":[function(require,module,exports) {
69
+ "use strict";var e=i(require("vue")),t=i(require("portal-vue")),r=i(require("./containers/SettingsApp.vue")),n=i(require("./plugins/strings.js"));function i(e){return e&&e.__esModule?e:{default:e}}function u(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function o(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?u(Object(r),!0).forEach(function(t){a(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):u(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}function a(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}var s=o({},wptbAdminSettingsData);wptbAdminSettingsData=void 0,e.default.config.productionTip=!1,e.default.use(n.default,{strings:s.strings}),e.default.use(t.default),new e.default({components:{SettingsApp:r.default},data:{sectionsData:s.sectionsData,settings:s.data,pluginInfo:s.pluginInfo}}).$mount(s.data.mountId);
70
+ },{"vue":"HYXJ","portal-vue":"Lue2","./containers/SettingsApp.vue":"pZ9N","./plugins/strings.js":"yEip"}],"PMBU":[function(require,module,exports) {
71
+ var global = arguments[3];
72
+ var e,t,o=arguments[3],a="__parcel__error__overlay__",r=module.bundle.Module;function n(e){r.call(this,e),this.hot={data:module.bundle.hotData,_acceptCallbacks:[],_disposeCallbacks:[],accept:function(e){this._acceptCallbacks.push(e||function(){})},dispose:function(e){this._disposeCallbacks.push(e)}},module.bundle.hotData=null}module.bundle.Module=n;var c=module.bundle.parent;if(!(c&&c.isParcelRequire||"undefined"==typeof WebSocket)){var i=location.hostname,l="https:"===location.protocol?"wss":"ws",s=new WebSocket(l+"://"+i+":10383/");s.onmessage=function(a){e={},t=[];var r=JSON.parse(a.data);if("update"===r.type){var n=!1;r.assets.forEach(function(e){e.isNew||h(o.parcelRequire,e.id)&&(n=!0)}),(n=n||r.assets.every(function(e){return"css"===e.type&&e.generated.js}))?(console.clear(),r.assets.forEach(function(e){f(o.parcelRequire,e)}),t.forEach(function(e){m(e[0],e[1])})):location.reload&&location.reload()}if("reload"===r.type&&(s.close(),s.onclose=function(){location.reload()}),"error-resolved"===r.type&&(console.log("[parcel] ✨ Error resolved"),p()),"error"===r.type){console.error("[parcel] 🚨 "+r.error.message+"\n"+r.error.stack),p();var c=d(r);document.body.appendChild(c)}}}function p(){var e=document.getElementById(a);e&&e.remove()}function d(e){var t=document.createElement("div");t.id=a;var o=document.createElement("div"),r=document.createElement("pre");return o.innerText=e.error.message,r.innerText=e.error.stack,t.innerHTML='<div style="background: black; font-size: 16px; color: white; position: fixed; height: 100%; width: 100%; top: 0px; left: 0px; padding: 30px; opacity: 0.85; font-family: Menlo, Consolas, monospace; z-index: 9999;"><span style="background: red; padding: 2px 4px; border-radius: 2px;">ERROR</span><span style="top: 2px; margin-left: 5px; position: relative;">🚨</span><div style="font-size: 18px; font-weight: bold; margin-top: 20px;">'+o.innerHTML+"</div><pre>"+r.innerHTML+"</pre></div>",t}function u(e,t){var o=e.modules;if(!o)return[];var a,r,n,c=[];for(a in o)for(r in o[a][1])((n=o[a][1][r])===t||Array.isArray(n)&&n[n.length-1]===t)&&c.push(a);return e.parent&&(c=c.concat(u(e.parent,t))),c}function f(e,t){var o=e.modules;if(o)if(o[t.id]||!e.parent){var a=new Function("require","module","exports",t.generated.js);t.isNew=!o[t.id],o[t.id]=[a,t.deps]}else e.parent&&f(e.parent,t)}function h(a,r){var n=a.modules;if(n){if(!n[r]&&a.parent)return h(a.parent,r);if(!e[r]){e[r]=!0;var c=a.cache[r];return t.push([a,r]),!!(c&&c.hot&&c.hot._acceptCallbacks.length)||u(o.parcelRequire,r).some(function(e){return h(o.parcelRequire,e)})}}}function m(e,t){var o=e.cache[t];if(e.hotData={},o&&(o.hot.data=e.hotData),o&&o.hot&&o.hot._disposeCallbacks.length&&o.hot._disposeCallbacks.forEach(function(t){t(e.hotData)}),delete e.cache[t],e(t),(o=e.cache[t])&&o.hot&&o.hot._acceptCallbacks.length)return o.hot._acceptCallbacks.forEach(function(e){e()}),!0}
73
+ },{}]},{},["PMBU","uD0a"], null)
inc/admin/js/WPTB_Admin_Settings.js.map ADDED
@@ -0,0 +1 @@
 
1
+ {"version":3,"sources":["../../../../../node_modules/vue/dist/vue.esm.js","../src/utils/index.ts","../src/components/wormhole.ts","../src/components/portal.tsx","../src/components/portal-target.tsx","../src/components/mounting-portal.tsx","../src/index.ts","mixins/withStore.js","mixins/withMessage.js","components/MenuHeader.vue","components/SectionItem.vue","components/ActiveSectionIndicator.vue","components/Sections.vue","components/MessageDisplay.vue","components/MenuButton.vue","components/MenuFooter.vue","../../../../../node_modules/vue-fragment/dist/vue-fragment.esm.js","components/SettingCard.vue","components/ControlItem.vue","components/MenuContent.vue","containers/GeneralSettings.vue","components/VersionControlRow.vue","components/VersionIndicator.vue","components/Changelog.vue","components/VersionControlSettings.vue","containers/SettingsApp.vue","plugins/strings.js","WPTB_Admin_Settings.js"],"names":["emptyObject","Object","freeze","isUndef","v","undefined","isDef","isTrue","isFalse","isPrimitive","value","isObject","obj","_toString","prototype","toString","toRawType","call","slice","isPlainObject","isRegExp","isValidArrayIndex","val","n","parseFloat","String","Math","floor","isFinite","isPromise","then","catch","Array","isArray","JSON","stringify","toNumber","isNaN","makeMap","str","expectsLowerCase","map","create","list","split","i","length","toLowerCase","isBuiltInTag","isReservedAttribute","remove","arr","item","index","indexOf","splice","hasOwnProperty","hasOwn","key","cached","fn","cache","cachedFn","hit","camelizeRE","camelize","replace","_","c","toUpperCase","capitalize","charAt","hyphenateRE","hyphenate","polyfillBind","ctx","boundFn","a","l","arguments","apply","_length","nativeBind","bind","Function","toArray","start","ret","extend","to","_from","toObject","res","noop","b","no","identity","genStaticKeys","modules","reduce","keys","m","concat","staticKeys","join","looseEqual","isObjectA","isObjectB","isArrayA","isArrayB","every","e","Date","getTime","keysA","keysB","looseIndexOf","once","called","SSR_ATTR","ASSET_TYPES","LIFECYCLE_HOOKS","config","optionMergeStrategies","silent","productionTip","devtools","performance","errorHandler","warnHandler","ignoredElements","keyCodes","isReservedTag","isReservedAttr","isUnknownElement","getTagNamespace","parsePlatformTagName","mustUseProp","async","_lifecycleHooks","unicodeRegExp","isReserved","charCodeAt","def","enumerable","defineProperty","writable","configurable","bailRE","RegExp","source","parsePath","path","test","segments","hasProto","inBrowser","window","inWeex","WXEnvironment","platform","weexPlatform","UA","navigator","userAgent","isIE","isIE9","isEdge","isAndroid","isIOS","isChrome","isPhantomJS","isFF","match","nativeWatch","watch","supportsPassive","opts","get","addEventListener","_isServer","isServerRendering","global","env","VUE_ENV","__VUE_DEVTOOLS_GLOBAL_HOOK__","isNative","Ctor","hasSymbol","Symbol","Reflect","ownKeys","_Set","Set","set","has","add","clear","warn","tip","generateComponentTrace","formatComponentName","hasConsole","console","classifyRE","classify","msg","vm","trace","error","includeFile","$root","options","cid","_isVue","$options","constructor","name","_componentTag","file","__file","repeat","$parent","tree","currentRecursiveSequence","last","push","uid","Dep","id","subs","addSub","sub","removeSub","depend","target","addDep","notify","sort","update","targetStack","pushTarget","popTarget","pop","VNode","tag","data","children","text","elm","context","componentOptions","asyncFactory","ns","fnContext","fnOptions","fnScopeId","componentInstance","parent","raw","isStatic","isRootInsert","isComment","isCloned","isOnce","asyncMeta","isAsyncPlaceholder","prototypeAccessors","child","defineProperties","createEmptyVNode","node","createTextVNode","cloneVNode","vnode","cloned","arrayProto","arrayMethods","methodsToPatch","forEach","method","original","mutator","args","len","result","ob","__ob__","inserted","observeArray","dep","arrayKeys","getOwnPropertyNames","shouldObserve","toggleObserving","Observer","vmCount","protoAugment","copyAugment","walk","defineReactive$$1","items","observe","src","__proto__","asRootData","isExtensible","customSetter","shallow","property","getOwnPropertyDescriptor","getter","setter","childOb","reactiveGetter","dependArray","reactiveSetter","newVal","max","del","strats","el","propsData","defaultStrat","mergeData","from","toVal","fromVal","mergeDataOrFn","parentVal","childVal","mergedDataFn","mergedInstanceDataFn","instanceData","defaultData","mergeHook","dedupeHooks","hooks","hook","mergeAssets","assertObjectType","type","key$1","props","methods","inject","computed","provide","checkComponents","components","validateComponentName","normalizeProps","normalizeInject","normalized","normalizeDirectives","dirs","directives","def$$1","mergeOptions","_base","extends","mixins","mergeField","strat","resolveAsset","warnMissing","assets","camelizedId","PascalCaseId","validateProp","propOptions","prop","absent","booleanIndex","getTypeIndex","Boolean","stringIndex","getPropDefaultValue","prevShouldObserve","assertProp","default","_props","getType","required","valid","expectedTypes","assertedType","assertType","expectedType","getInvalidTypeMessage","validator","simpleCheckRE","t","isSameType","message","receivedType","expectedValue","styleValue","receivedValue","isExplicable","isBoolean","Number","explicitTypes","some","elem","handleError","err","info","cur","errorCaptured","capture","globalHandleError","invokeWithErrorHandling","handler","_handled","logError","isUsingMicroTask","callbacks","pending","flushCallbacks","copies","timerFunc","Promise","p","resolve","setTimeout","MutationObserver","counter","observer","textNode","document","createTextNode","characterData","setImmediate","nextTick","cb","_resolve","mark","measure","perf","clearMarks","clearMeasures","startTag","endTag","initProxy","allowedGlobals","warnNonPresent","warnReservedPrefix","hasProxy","Proxy","isBuiltInModifier","hasHandler","isAllowed","$data","getHandler","handlers","render","_withStripped","_renderProxy","seenObjects","traverse","_traverse","seen","isA","isFrozen","depId","normalizeEvent","passive","once$$1","createFnInvoker","fns","invoker","arguments$1","updateListeners","on","oldOn","remove$$1","createOnceHandler","old","event","params","mergeVNodeHook","hookKey","oldHook","wrappedHook","merged","extractPropsFromVNodeData","attrs","altKey","keyInLowerCase","checkProp","hash","preserve","simpleNormalizeChildren","normalizeChildren","normalizeArrayChildren","isTextNode","nestedIndex","lastIndex","shift","_isVList","initProvide","_provided","initInjections","resolveInject","provideKey","provideDefault","resolveSlots","slots","slot","name$1","isWhitespace","normalizeScopedSlots","normalSlots","prevSlots","hasNormalSlots","isStable","$stable","$key","_normalized","$hasNormal","normalizeScopedSlot","key$2","proxyNormalSlot","proxy","renderList","iterator","next","done","renderSlot","fallback","bindObject","scopedSlotFn","$scopedSlots","nodes","$slots","$createElement","resolveFilter","isKeyNotMatch","expect","actual","checkKeyCodes","eventKeyCode","builtInKeyCode","eventKeyName","builtInKeyName","mappedKeyCode","bindObjectProps","asProp","isSync","loop","domProps","camelizedKey","hyphenatedKey","$event","renderStatic","isInFor","_staticTrees","staticRenderFns","markStatic","markOnce","markStaticNode","bindObjectListeners","existing","ours","resolveScopedSlots","hasDynamicKeys","contentHashKey","bindDynamicKeys","baseObj","values","prependModifier","symbol","installRenderHelpers","_o","_n","_s","_l","_t","_q","_i","_m","_f","_k","_b","_v","_e","_u","_g","_d","_p","FunctionalRenderContext","this$1","contextVm","_original","isCompiled","_compiled","needNormalization","listeners","injections","scopedSlots","_scopeId","_c","d","createElement","createFunctionalComponent","mergeProps","renderContext","cloneAndMarkFunctionalResult","vnodes","clone","devtoolsMeta","componentVNodeHooks","init","hydrating","_isDestroyed","keepAlive","mountedNode","prepatch","createComponentInstanceForVnode","activeInstance","$mount","oldVnode","updateChildComponent","insert","_isMounted","callHook","queueActivatedComponent","activateChildComponent","destroy","$destroy","deactivateChildComponent","hooksToMerge","createComponent","baseCtor","resolveAsyncComponent","createAsyncPlaceholder","resolveConstructorOptions","model","transformModel","functional","nativeOn","abstract","installComponentHooks","_isComponent","_parentVnode","inlineTemplate","toMerge","_merged","mergeHook$1","f1","f2","callback","SIMPLE_NORMALIZE","ALWAYS_NORMALIZE","normalizationType","alwaysNormalize","_createElement","is","$vnode","pre","applyNS","registerDeepBindings","force","style","class","initRender","_vnode","parentVnode","_renderChildren","parentData","isUpdatingChildComponent","_parentListeners","currentRenderingInstance","renderMixin","Vue","$nextTick","_render","ref","renderError","ensureCtor","comp","base","__esModule","toStringTag","factory","errorComp","resolved","owner","owners","loading","loadingComp","sync","timerLoading","timerTimeout","$on","forceRender","renderCompleted","$forceUpdate","clearTimeout","reject","reason","component","delay","timeout","getFirstComponentChild","initEvents","_events","_hasHookEvent","updateComponentListeners","remove$1","$off","_target","onceHandler","oldListeners","eventsMixin","hookRE","$once","i$1","cbs","$emit","lowerCaseEvent","setActiveInstance","prevActiveInstance","initLifecycle","$children","$refs","_watcher","_inactive","_directInactive","_isBeingDestroyed","lifecycleMixin","_update","prevEl","$el","prevVnode","restoreActiveInstance","__patch__","__vue__","teardown","_watchers","_data","mountComponent","template","updateComponent","_name","_uid","Watcher","before","renderChildren","newScopedSlots","oldScopedSlots","hasDynamicScopedSlot","needsForceUpdate","$attrs","$listeners","propKeys","_propKeys","isInInactiveTree","direct","j","MAX_UPDATE_COUNT","queue","activatedChildren","circular","waiting","flushing","resetSchedulerState","currentFlushTimestamp","getNow","now","createEvent","timeStamp","flushSchedulerQueue","watcher","run","user","expression","activatedQueue","updatedQueue","callActivatedHooks","callUpdatedHooks","emit","queueWatcher","uid$2","expOrFn","isRenderWatcher","deep","lazy","active","dirty","deps","newDeps","depIds","newDepIds","cleanupDeps","tmp","oldValue","evaluate","sharedPropertyDefinition","sourceKey","proxyGetter","proxySetter","initState","initProps","initMethods","initData","initComputed","initWatch","propsOptions","isRoot","getData","computedWatcherOptions","watchers","_computedWatchers","isSSR","userDef","defineComputed","shouldCache","createComputedGetter","createGetterInvoker","computedGetter","createWatcher","$watch","stateMixin","dataDef","propsDef","$set","$delete","immediate","unwatchFn","uid$3","initMixin","_init","initInternalComponent","_self","vnodeComponentOptions","super","superOptions","cachedSuperOptions","modifiedOptions","resolveModifiedOptions","extendOptions","modified","latest","sealed","sealedOptions","initUse","use","plugin","installedPlugins","_installedPlugins","unshift","install","initMixin$1","mixin","initExtend","Super","SuperId","cachedCtors","_Ctor","Sub","VueComponent","initProps$1","initComputed$1","Comp","initAssetRegisters","definition","getComponentName","matches","pattern","pruneCache","keepAliveInstance","filter","cachedNode","pruneCacheEntry","current","cached$$1","patternTypes","KeepAlive","include","exclude","created","destroyed","mounted","ref$1","parseInt","builtInComponents","initGlobalAPI","configDef","util","defineReactive","delete","observable","ssrContext","version","acceptValue","attr","isEnumeratedAttr","isValidContentEditableValue","convertEnumeratedValue","isFalsyAttrValue","isBooleanAttr","xlinkNS","isXlink","getXlinkProp","genClassForVnode","parentNode","childNode","mergeClassData","renderClass","staticClass","dynamicClass","stringifyClass","stringifyArray","stringifyObject","stringified","namespaceMap","svg","math","isHTMLTag","isSVG","isPreTag","unknownElementCache","HTMLUnknownElement","HTMLElement","isTextInputType","query","selected","querySelector","createElement$1","tagName","multiple","setAttribute","createElementNS","namespace","createComment","insertBefore","newNode","referenceNode","removeChild","appendChild","nextSibling","setTextContent","textContent","setStyleScope","scopeId","nodeOps","registerRef","isRemoval","refs","refInFor","emptyNode","sameVnode","sameInputType","typeA","typeB","createKeyToOldIdx","beginIdx","endIdx","createPatchFunction","backend","emptyNodeAt","createRmCb","childElm","removeNode","isUnknownElement$$1","inVPre","ignore","creatingElmInVPre","createElm","insertedVnodeQueue","parentElm","refElm","nested","ownerArray","setScope","createChildren","invokeCreateHooks","isReactivated","initComponent","reactivateComponent","pendingInsert","isPatchable","innerNode","transition","activate","ref$$1","checkDuplicateKeys","ancestor","addVnodes","startIdx","invokeDestroyHook","removeVnodes","ch","removeAndInvokeRemoveHook","rm","updateChildren","oldCh","newCh","removeOnly","oldStartIdx","newStartIdx","oldEndIdx","oldStartVnode","oldEndVnode","newEndIdx","newStartVnode","newEndVnode","oldKeyToIdx","idxInOld","vnodeToMove","canMove","patchVnode","findIdxInOld","seenKeys","end","hydrate","postpatch","invokeInsertHook","initial","hydrationBailed","isRenderedModule","assertNodeMatch","hasChildNodes","innerHTML","childrenMatch","firstChild","childNodes","fullInvoke","nodeType","patch","isInitialPatch","isRealElement","hasAttribute","removeAttribute","oldElm","_leaveCb","patchable","i$2","updateDirectives","unbindDirectives","isCreate","isDestroy","oldDirs","normalizeDirectives$1","newDirs","dirsWithInsert","dirsWithPostpatch","oldDir","dir","callHook$1","oldArg","arg","componentUpdated","callInsert","emptyModifiers","modifiers","getRawDirName","rawName","baseModules","updateAttrs","inheritAttrs","oldAttrs","setAttr","removeAttributeNS","baseSetAttr","setAttributeNS","__ieph","blocker","stopImmediatePropagation","removeEventListener","updateClass","oldData","cls","transitionClass","_transitionClasses","_prevClass","klass","validDivisionCharRE","parseFilters","exp","inSingle","inDouble","inTemplateString","inRegex","curly","square","paren","lastFilterIndex","prev","filters","trim","pushFilter","wrapFilter","baseWarn","range","pluckModuleFunction","addProp","dynamic","rangeSetItem","plain","addAttr","dynamicAttrs","addRawAttr","attrsMap","attrsList","addDirective","isDynamicArg","prependModifierMarker","addHandler","important","prevent","right","middle","events","native","nativeEvents","newHandler","getRawBindingAttr","rawAttrsMap","getBindingAttr","getStatic","dynamicValue","getAndRemoveAttr","staticValue","removeFromMap","getAndRemoveAttrByRegex","genComponentModel","number","baseValueExpression","valueExpression","assignment","genAssignmentCode","parseModel","chr","index$1","expressionPos","expressionEndPos","lastIndexOf","eof","isStringStart","parseString","parseBracket","inBracket","stringQuote","warn$1","RANGE_TOKEN","CHECKBOX_RADIO_TOKEN","_warn","genSelect","genCheckboxModel","genRadioModel","genDefaultModel","valueBinding","trueValueBinding","falseValueBinding","selectedVal","code","value$1","typeBinding","binding","needCompositionGuard","normalizeEvents","change","target$1","createOnceHandler$1","remove$2","useMicrotaskFix","add$1","attachedTimestamp","_wrapper","currentTarget","ownerDocument","updateDOMListeners","svgContainer","updateDOMProps","oldProps","_value","strCur","shouldUpdateValue","checkVal","composing","isNotInFocusAndDirty","isDirtyWithModifiers","notInFocus","activeElement","_vModifiers","parseStyleText","cssText","listDelimiter","propertyDelimiter","normalizeStyleData","normalizeStyleBinding","staticStyle","bindingStyle","getStyle","checkChild","styleData","cssVarRE","importantRE","setProp","setProperty","normalizedName","normalize","vendorNames","emptyStyle","capName","updateStyle","oldStaticStyle","oldStyleBinding","normalizedStyle","oldStyle","newStyle","whitespaceRE","addClass","classList","getAttribute","removeClass","tar","resolveTransition","css","autoCssTransition","enterClass","enterToClass","enterActiveClass","leaveClass","leaveToClass","leaveActiveClass","hasTransition","TRANSITION","ANIMATION","transitionProp","transitionEndEvent","animationProp","animationEndEvent","ontransitionend","onwebkittransitionend","onanimationend","onwebkitanimationend","raf","requestAnimationFrame","nextFrame","addTransitionClass","transitionClasses","removeTransitionClass","whenTransitionEnds","getTransitionInfo","propCount","ended","onEnd","transformRE","styles","getComputedStyle","transitionDelays","transitionDurations","transitionTimeout","getTimeout","animationDelays","animationDurations","animationTimeout","hasTransform","delays","durations","toMs","s","enter","toggleDisplay","cancelled","_enterCb","appearClass","appearToClass","appearActiveClass","beforeEnter","afterEnter","enterCancelled","beforeAppear","appear","afterAppear","appearCancelled","duration","transitionNode","isAppear","startClass","activeClass","toClass","beforeEnterHook","enterHook","afterEnterHook","enterCancelledHook","explicitEnterDuration","checkDuration","expectsCSS","userWantsControl","getHookArgumentsLength","show","pendingNode","_pending","isValidDuration","leave","beforeLeave","afterLeave","leaveCancelled","delayLeave","explicitLeaveDuration","performLeave","invokerFns","_enter","platformModules","vmodel","trigger","directive","_vOptions","setSelected","getValue","onCompositionStart","onCompositionEnd","prevOptions","curOptions","o","needReset","hasNoMatchingOption","actuallySetSelected","isMultiple","option","selectedIndex","initEvent","dispatchEvent","locateNode","transition$$1","originalDisplay","__vOriginalDisplay","display","unbind","platformDirectives","transitionProps","mode","getRealChild","compOptions","extractTransitionData","placeholder","h","rawChild","hasParentTransition","isSameChild","oldChild","isNotTextNode","isVShowDirective","Transition","_leaving","oldRawChild","delayedLeave","moveClass","TransitionGroup","beforeMount","kept","prevChildren","rawChildren","transitionData","removed","c$1","pos","getBoundingClientRect","updated","hasMove","callPendingCbs","recordPosition","applyTranslation","_reflow","body","offsetHeight","moved","transform","WebkitTransform","transitionDuration","_moveCb","propertyName","_hasMove","cloneNode","newPos","oldPos","dx","left","dy","top","platformComponents","defaultTagRE","regexEscapeRE","buildRegex","delimiters","open","close","parseText","tagRE","tokens","rawTokens","tokenValue","exec","transformNode","classBinding","genData","klass$1","transformNode$1","styleBinding","genData$1","style$1","decoder","he","decode","html","isUnaryTag","canBeLeftOpenTag","isNonPhrasingTag","attribute","dynamicArgAttribute","ncname","qnameCapture","startTagOpen","startTagClose","doctype","comment","conditionalComment","isPlainTextElement","reCache","decodingMap","encodedAttr","encodedAttrWithNewLines","isIgnoreNewlineTag","shouldIgnoreFirstNewline","decodeAttr","shouldDecodeNewlines","re","parseHTML","stack","expectHTML","isUnaryTag$$1","canBeLeftOpenTag$$1","lastTag","textEnd","commentEnd","shouldKeepComment","substring","advance","conditionalEnd","doctypeMatch","endTagMatch","curIndex","parseEndTag","startTagMatch","parseStartTag","handleStartTag","rest","chars","endTagLength","stackedTag","reStackedTag","rest$1","all","unarySlash","unary","shouldDecodeNewlinesForHref","outputSourceRange","lowerCasedTag","lowerCasedTagName","onRE","dirRE","forAliasRE","forIteratorRE","stripParensRE","dynamicArgRE","argRE","bindRE","modifierRE","slotRE","lineBreakRE","whitespaceRE$1","invalidAttributeRE","decodeHTMLCached","emptySlotScopeToken","warn$2","transforms","preTransforms","postTransforms","platformIsPreTag","platformMustUseProp","platformGetTagNamespace","maybeComponent","createASTElement","makeAttrsMap","parse","preserveWhitespace","whitespaceOption","whitespace","root","currentParent","inPre","warned","warnOnce","closeElement","element","trimEndingWhitespace","processed","processElement","if","elseif","else","checkRootConstraints","addIfCondition","block","forbidden","processIfConditions","slotScope","slotTarget","lastNode","comments","start$1","guardIESVGBug","cumulated","isForbiddenTag","processPre","processRawAttrs","processFor","processIf","processOnce","end$1","isTextTag","processKey","processRef","processSlotContent","processSlotOutlet","processComponent","processAttrs","for","iterator2","iterator1","checkInFor","parseFor","inMatch","alias","iteratorMatch","findPrevElement","condition","ifConditions","slotTargetDynamic","slotBinding","getSlotName","slotBinding$1","dynamic$1","slotContainer","slotName","syncGen","isDynamic","hasBindings","parseModifiers","camel","argMatch","checkForAliasModel","ieNSBug","ieNSPrefix","_el","preTransformNode","ifCondition","ifConditionExtra","hasElse","elseIfCondition","branch0","cloneASTElement","branch1","branch2","model$1","modules$1","directives$1","baseOptions","isStaticKey","isPlatformReservedTag","genStaticKeysCached","genStaticKeys$1","optimize","markStatic$1","markStaticRoots","static","l$1","staticInFor","staticRoot","isDirectChildOfTemplateFor","fnExpRE","fnInvokeRE","simplePathRE","esc","tab","space","up","down","keyNames","genGuard","modifierCode","stop","self","ctrl","alt","meta","genHandlers","prefix","staticHandlers","dynamicHandlers","handlerCode","genHandler","isMethodPath","isFunctionExpression","isFunctionInvocation","genModifierCode","keyModifier","genKeyFilter","genFilterCode","keyVal","keyCode","keyName","wrapListeners","bind$1","wrapData","baseDirectives","cloak","CodegenState","dataGenFns","onceId","generate","ast","state","genElement","staticProcessed","genStatic","onceProcessed","genOnce","forProcessed","genFor","ifProcessed","genIf","genChildren","genSlot","genComponent","genData$2","originalPreState","altGen","altEmpty","genIfConditions","conditions","genTernaryExp","altHelper","genDirectives","genProps","genScopedSlots","genInlineTemplate","hasRuntime","needRuntime","gen","inlineRenderFns","containsSlotChild","needsKey","generatedSlots","genScopedSlot","isLegacySyntax","reverseProxy","checkSkip","altGenElement","altGenNode","el$1","normalizationType$1","getNormalizationType","genNode","needsNormalization","genComment","genText","transformSpecialNewlines","bind$$1","componentName","staticProps","dynamicProps","prohibitedKeywordRE","unaryOperatorsRE","stripStringRE","detectErrors","checkNode","checkFor","checkFunctionParameterExpression","checkEvent","checkExpression","stripped","keywordMatch","checkIdentifier","ident","generateCodeFrame","lines","count","repeat$1","lineLength","pad","length$1","min","createFunction","errors","createCompileToFunctionFn","compile","compileToFunctions","warn$$1","compiled","tips","fnGenErrors","createCompilerCreator","baseCompile","createCompiler","finalOptions","leadingSpaceLength","div","getShouldDecode","href","idToTemplate","mount","documentElement","getOuterHTML","outerHTML","container","combinePassengers","transports","slotProps","passengers","transport","temp","newPassengers","stableSort","array","compareFn","idx","pick","acc","targets","sources","Wormhole","trackInstances","order","Infinity","newTransport","currentIndex","$_getTransportIndex","newTransports","registerTarget","unregisterTarget","registerSource","unregisterSource","hasTarget","hasSource","hasContentFor","wormhole","_id","disabled","slim","round","random","sendUpdate","beforeDestroy","newValue","closer","normalizeSlots","normalizeOwnChildren","slotContent","Tag","firstRender","ownTransports","oldVal","noWrapper","portalProps","targetProps","append","bail","mountTo","targetSlim","targetSlotProps","targetTag","$props","portalTarget","mountEl","PortalTarget","manual","Portal","content","portalName","portalTargetName","MountingPortalName","MountingPortal","store","wptbAdminSettingsData","rawStore","withStore","revertStore","k","messageData","withMessageData","busy","intervalId","intervalTime","defaults","withMessage","isBusy","setMessage","mergedOptions","clearInterval","setInterval","setBusy","_defineProperty","_objectSpread","r","getOwnPropertySymbols","unfreeze","fragment","ssr","Fragment","SSR","Plugin","strings","frontendData","withStrings","PortalVue","SettingsApp","sectionsData","settings","pluginInfo","mountId"],"mappings":"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","file":"WPTB_Admin_Settings.js","sourceRoot":"core/rollup-source","sourcesContent":["/*!\n * Vue.js v2.6.11\n * (c) 2014-2019 Evan You\n * Released under the MIT License.\n */\n/* */\n\nvar emptyObject = Object.freeze({});\n\n// These helpers produce better VM code in JS engines due to their\n// explicitness and function inlining.\nfunction isUndef (v) {\n return v === undefined || v === null\n}\n\nfunction isDef (v) {\n return v !== undefined && v !== null\n}\n\nfunction isTrue (v) {\n return v === true\n}\n\nfunction isFalse (v) {\n return v === false\n}\n\n/**\n * Check if value is primitive.\n */\nfunction isPrimitive (value) {\n return (\n typeof value === 'string' ||\n typeof value === 'number' ||\n // $flow-disable-line\n typeof value === 'symbol' ||\n typeof value === 'boolean'\n )\n}\n\n/**\n * Quick object check - this is primarily used to tell\n * Objects from primitive values when we know the value\n * is a JSON-compliant type.\n */\nfunction isObject (obj) {\n return obj !== null && typeof obj === 'object'\n}\n\n/**\n * Get the raw type string of a value, e.g., [object Object].\n */\nvar _toString = Object.prototype.toString;\n\nfunction toRawType (value) {\n return _toString.call(value).slice(8, -1)\n}\n\n/**\n * Strict object type check. Only returns true\n * for plain JavaScript objects.\n */\nfunction isPlainObject (obj) {\n return _toString.call(obj) === '[object Object]'\n}\n\nfunction isRegExp (v) {\n return _toString.call(v) === '[object RegExp]'\n}\n\n/**\n * Check if val is a valid array index.\n */\nfunction isValidArrayIndex (val) {\n var n = parseFloat(String(val));\n return n >= 0 && Math.floor(n) === n && isFinite(val)\n}\n\nfunction isPromise (val) {\n return (\n isDef(val) &&\n typeof val.then === 'function' &&\n typeof val.catch === 'function'\n )\n}\n\n/**\n * Convert a value to a string that is actually rendered.\n */\nfunction toString (val) {\n return val == null\n ? ''\n : Array.isArray(val) || (isPlainObject(val) && val.toString === _toString)\n ? JSON.stringify(val, null, 2)\n : String(val)\n}\n\n/**\n * Convert an input value to a number for persistence.\n * If the conversion fails, return original string.\n */\nfunction toNumber (val) {\n var n = parseFloat(val);\n return isNaN(n) ? val : n\n}\n\n/**\n * Make a map and return a function for checking if a key\n * is in that map.\n */\nfunction makeMap (\n str,\n expectsLowerCase\n) {\n var map = Object.create(null);\n var list = str.split(',');\n for (var i = 0; i < list.length; i++) {\n map[list[i]] = true;\n }\n return expectsLowerCase\n ? function (val) { return map[val.toLowerCase()]; }\n : function (val) { return map[val]; }\n}\n\n/**\n * Check if a tag is a built-in tag.\n */\nvar isBuiltInTag = makeMap('slot,component', true);\n\n/**\n * Check if an attribute is a reserved attribute.\n */\nvar isReservedAttribute = makeMap('key,ref,slot,slot-scope,is');\n\n/**\n * Remove an item from an array.\n */\nfunction remove (arr, item) {\n if (arr.length) {\n var index = arr.indexOf(item);\n if (index > -1) {\n return arr.splice(index, 1)\n }\n }\n}\n\n/**\n * Check whether an object has the property.\n */\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nfunction hasOwn (obj, key) {\n return hasOwnProperty.call(obj, key)\n}\n\n/**\n * Create a cached version of a pure function.\n */\nfunction cached (fn) {\n var cache = Object.create(null);\n return (function cachedFn (str) {\n var hit = cache[str];\n return hit || (cache[str] = fn(str))\n })\n}\n\n/**\n * Camelize a hyphen-delimited string.\n */\nvar camelizeRE = /-(\\w)/g;\nvar camelize = cached(function (str) {\n return str.replace(camelizeRE, function (_, c) { return c ? c.toUpperCase() : ''; })\n});\n\n/**\n * Capitalize a string.\n */\nvar capitalize = cached(function (str) {\n return str.charAt(0).toUpperCase() + str.slice(1)\n});\n\n/**\n * Hyphenate a camelCase string.\n */\nvar hyphenateRE = /\\B([A-Z])/g;\nvar hyphenate = cached(function (str) {\n return str.replace(hyphenateRE, '-$1').toLowerCase()\n});\n\n/**\n * Simple bind polyfill for environments that do not support it,\n * e.g., PhantomJS 1.x. Technically, we don't need this anymore\n * since native bind is now performant enough in most browsers.\n * But removing it would mean breaking code that was able to run in\n * PhantomJS 1.x, so this must be kept for backward compatibility.\n */\n\n/* istanbul ignore next */\nfunction polyfillBind (fn, ctx) {\n function boundFn (a) {\n var l = arguments.length;\n return l\n ? l > 1\n ? fn.apply(ctx, arguments)\n : fn.call(ctx, a)\n : fn.call(ctx)\n }\n\n boundFn._length = fn.length;\n return boundFn\n}\n\nfunction nativeBind (fn, ctx) {\n return fn.bind(ctx)\n}\n\nvar bind = Function.prototype.bind\n ? nativeBind\n : polyfillBind;\n\n/**\n * Convert an Array-like object to a real Array.\n */\nfunction toArray (list, start) {\n start = start || 0;\n var i = list.length - start;\n var ret = new Array(i);\n while (i--) {\n ret[i] = list[i + start];\n }\n return ret\n}\n\n/**\n * Mix properties into target object.\n */\nfunction extend (to, _from) {\n for (var key in _from) {\n to[key] = _from[key];\n }\n return to\n}\n\n/**\n * Merge an Array of Objects into a single Object.\n */\nfunction toObject (arr) {\n var res = {};\n for (var i = 0; i < arr.length; i++) {\n if (arr[i]) {\n extend(res, arr[i]);\n }\n }\n return res\n}\n\n/* eslint-disable no-unused-vars */\n\n/**\n * Perform no operation.\n * Stubbing args to make Flow happy without leaving useless transpiled code\n * with ...rest (https://flow.org/blog/2017/05/07/Strict-Function-Call-Arity/).\n */\nfunction noop (a, b, c) {}\n\n/**\n * Always return false.\n */\nvar no = function (a, b, c) { return false; };\n\n/* eslint-enable no-unused-vars */\n\n/**\n * Return the same value.\n */\nvar identity = function (_) { return _; };\n\n/**\n * Generate a string containing static keys from compiler modules.\n */\nfunction genStaticKeys (modules) {\n return modules.reduce(function (keys, m) {\n return keys.concat(m.staticKeys || [])\n }, []).join(',')\n}\n\n/**\n * Check if two values are loosely equal - that is,\n * if they are plain objects, do they have the same shape?\n */\nfunction looseEqual (a, b) {\n if (a === b) { return true }\n var isObjectA = isObject(a);\n var isObjectB = isObject(b);\n if (isObjectA && isObjectB) {\n try {\n var isArrayA = Array.isArray(a);\n var isArrayB = Array.isArray(b);\n if (isArrayA && isArrayB) {\n return a.length === b.length && a.every(function (e, i) {\n return looseEqual(e, b[i])\n })\n } else if (a instanceof Date && b instanceof Date) {\n return a.getTime() === b.getTime()\n } else if (!isArrayA && !isArrayB) {\n var keysA = Object.keys(a);\n var keysB = Object.keys(b);\n return keysA.length === keysB.length && keysA.every(function (key) {\n return looseEqual(a[key], b[key])\n })\n } else {\n /* istanbul ignore next */\n return false\n }\n } catch (e) {\n /* istanbul ignore next */\n return false\n }\n } else if (!isObjectA && !isObjectB) {\n return String(a) === String(b)\n } else {\n return false\n }\n}\n\n/**\n * Return the first index at which a loosely equal value can be\n * found in the array (if value is a plain object, the array must\n * contain an object of the same shape), or -1 if it is not present.\n */\nfunction looseIndexOf (arr, val) {\n for (var i = 0; i < arr.length; i++) {\n if (looseEqual(arr[i], val)) { return i }\n }\n return -1\n}\n\n/**\n * Ensure a function is called only once.\n */\nfunction once (fn) {\n var called = false;\n return function () {\n if (!called) {\n called = true;\n fn.apply(this, arguments);\n }\n }\n}\n\nvar SSR_ATTR = 'data-server-rendered';\n\nvar ASSET_TYPES = [\n 'component',\n 'directive',\n 'filter'\n];\n\nvar LIFECYCLE_HOOKS = [\n 'beforeCreate',\n 'created',\n 'beforeMount',\n 'mounted',\n 'beforeUpdate',\n 'updated',\n 'beforeDestroy',\n 'destroyed',\n 'activated',\n 'deactivated',\n 'errorCaptured',\n 'serverPrefetch'\n];\n\n/* */\n\n\n\nvar config = ({\n /**\n * Option merge strategies (used in core/util/options)\n */\n // $flow-disable-line\n optionMergeStrategies: Object.create(null),\n\n /**\n * Whether to suppress warnings.\n */\n silent: false,\n\n /**\n * Show production mode tip message on boot?\n */\n productionTip: process.env.NODE_ENV !== 'production',\n\n /**\n * Whether to enable devtools\n */\n devtools: process.env.NODE_ENV !== 'production',\n\n /**\n * Whether to record perf\n */\n performance: false,\n\n /**\n * Error handler for watcher errors\n */\n errorHandler: null,\n\n /**\n * Warn handler for watcher warns\n */\n warnHandler: null,\n\n /**\n * Ignore certain custom elements\n */\n ignoredElements: [],\n\n /**\n * Custom user key aliases for v-on\n */\n // $flow-disable-line\n keyCodes: Object.create(null),\n\n /**\n * Check if a tag is reserved so that it cannot be registered as a\n * component. This is platform-dependent and may be overwritten.\n */\n isReservedTag: no,\n\n /**\n * Check if an attribute is reserved so that it cannot be used as a component\n * prop. This is platform-dependent and may be overwritten.\n */\n isReservedAttr: no,\n\n /**\n * Check if a tag is an unknown element.\n * Platform-dependent.\n */\n isUnknownElement: no,\n\n /**\n * Get the namespace of an element\n */\n getTagNamespace: noop,\n\n /**\n * Parse the real tag name for the specific platform.\n */\n parsePlatformTagName: identity,\n\n /**\n * Check if an attribute must be bound using property, e.g. value\n * Platform-dependent.\n */\n mustUseProp: no,\n\n /**\n * Perform updates asynchronously. Intended to be used by Vue Test Utils\n * This will significantly reduce performance if set to false.\n */\n async: true,\n\n /**\n * Exposed for legacy reasons\n */\n _lifecycleHooks: LIFECYCLE_HOOKS\n});\n\n/* */\n\n/**\n * unicode letters used for parsing html tags, component names and property paths.\n * using https://www.w3.org/TR/html53/semantics-scripting.html#potentialcustomelementname\n * skipping \\u10000-\\uEFFFF due to it freezing up PhantomJS\n */\nvar unicodeRegExp = /a-zA-Z\\u00B7\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u203F-\\u2040\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD/;\n\n/**\n * Check if a string starts with $ or _\n */\nfunction isReserved (str) {\n var c = (str + '').charCodeAt(0);\n return c === 0x24 || c === 0x5F\n}\n\n/**\n * Define a property.\n */\nfunction def (obj, key, val, enumerable) {\n Object.defineProperty(obj, key, {\n value: val,\n enumerable: !!enumerable,\n writable: true,\n configurable: true\n });\n}\n\n/**\n * Parse simple path.\n */\nvar bailRE = new RegExp((\"[^\" + (unicodeRegExp.source) + \".$_\\\\d]\"));\nfunction parsePath (path) {\n if (bailRE.test(path)) {\n return\n }\n var segments = path.split('.');\n return function (obj) {\n for (var i = 0; i < segments.length; i++) {\n if (!obj) { return }\n obj = obj[segments[i]];\n }\n return obj\n }\n}\n\n/* */\n\n// can we use __proto__?\nvar hasProto = '__proto__' in {};\n\n// Browser environment sniffing\nvar inBrowser = typeof window !== 'undefined';\nvar inWeex = typeof WXEnvironment !== 'undefined' && !!WXEnvironment.platform;\nvar weexPlatform = inWeex && WXEnvironment.platform.toLowerCase();\nvar UA = inBrowser && window.navigator.userAgent.toLowerCase();\nvar isIE = UA && /msie|trident/.test(UA);\nvar isIE9 = UA && UA.indexOf('msie 9.0') > 0;\nvar isEdge = UA && UA.indexOf('edge/') > 0;\nvar isAndroid = (UA && UA.indexOf('android') > 0) || (weexPlatform === 'android');\nvar isIOS = (UA && /iphone|ipad|ipod|ios/.test(UA)) || (weexPlatform === 'ios');\nvar isChrome = UA && /chrome\\/\\d+/.test(UA) && !isEdge;\nvar isPhantomJS = UA && /phantomjs/.test(UA);\nvar isFF = UA && UA.match(/firefox\\/(\\d+)/);\n\n// Firefox has a \"watch\" function on Object.prototype...\nvar nativeWatch = ({}).watch;\n\nvar supportsPassive = false;\nif (inBrowser) {\n try {\n var opts = {};\n Object.defineProperty(opts, 'passive', ({\n get: function get () {\n /* istanbul ignore next */\n supportsPassive = true;\n }\n })); // https://github.com/facebook/flow/issues/285\n window.addEventListener('test-passive', null, opts);\n } catch (e) {}\n}\n\n// this needs to be lazy-evaled because vue may be required before\n// vue-server-renderer can set VUE_ENV\nvar _isServer;\nvar isServerRendering = function () {\n if (_isServer === undefined) {\n /* istanbul ignore if */\n if (!inBrowser && !inWeex && typeof global !== 'undefined') {\n // detect presence of vue-server-renderer and avoid\n // Webpack shimming the process\n _isServer = global['process'] && global['process'].env.VUE_ENV === 'server';\n } else {\n _isServer = false;\n }\n }\n return _isServer\n};\n\n// detect devtools\nvar devtools = inBrowser && window.__VUE_DEVTOOLS_GLOBAL_HOOK__;\n\n/* istanbul ignore next */\nfunction isNative (Ctor) {\n return typeof Ctor === 'function' && /native code/.test(Ctor.toString())\n}\n\nvar hasSymbol =\n typeof Symbol !== 'undefined' && isNative(Symbol) &&\n typeof Reflect !== 'undefined' && isNative(Reflect.ownKeys);\n\nvar _Set;\n/* istanbul ignore if */ // $flow-disable-line\nif (typeof Set !== 'undefined' && isNative(Set)) {\n // use native Set when available.\n _Set = Set;\n} else {\n // a non-standard Set polyfill that only works with primitive keys.\n _Set = /*@__PURE__*/(function () {\n function Set () {\n this.set = Object.create(null);\n }\n Set.prototype.has = function has (key) {\n return this.set[key] === true\n };\n Set.prototype.add = function add (key) {\n this.set[key] = true;\n };\n Set.prototype.clear = function clear () {\n this.set = Object.create(null);\n };\n\n return Set;\n }());\n}\n\n/* */\n\nvar warn = noop;\nvar tip = noop;\nvar generateComponentTrace = (noop); // work around flow check\nvar formatComponentName = (noop);\n\nif (process.env.NODE_ENV !== 'production') {\n var hasConsole = typeof console !== 'undefined';\n var classifyRE = /(?:^|[-_])(\\w)/g;\n var classify = function (str) { return str\n .replace(classifyRE, function (c) { return c.toUpperCase(); })\n .replace(/[-_]/g, ''); };\n\n warn = function (msg, vm) {\n var trace = vm ? generateComponentTrace(vm) : '';\n\n if (config.warnHandler) {\n config.warnHandler.call(null, msg, vm, trace);\n } else if (hasConsole && (!config.silent)) {\n console.error((\"[Vue warn]: \" + msg + trace));\n }\n };\n\n tip = function (msg, vm) {\n if (hasConsole && (!config.silent)) {\n console.warn(\"[Vue tip]: \" + msg + (\n vm ? generateComponentTrace(vm) : ''\n ));\n }\n };\n\n formatComponentName = function (vm, includeFile) {\n if (vm.$root === vm) {\n return '<Root>'\n }\n var options = typeof vm === 'function' && vm.cid != null\n ? vm.options\n : vm._isVue\n ? vm.$options || vm.constructor.options\n : vm;\n var name = options.name || options._componentTag;\n var file = options.__file;\n if (!name && file) {\n var match = file.match(/([^/\\\\]+)\\.vue$/);\n name = match && match[1];\n }\n\n return (\n (name ? (\"<\" + (classify(name)) + \">\") : \"<Anonymous>\") +\n (file && includeFile !== false ? (\" at \" + file) : '')\n )\n };\n\n var repeat = function (str, n) {\n var res = '';\n while (n) {\n if (n % 2 === 1) { res += str; }\n if (n > 1) { str += str; }\n n >>= 1;\n }\n return res\n };\n\n generateComponentTrace = function (vm) {\n if (vm._isVue && vm.$parent) {\n var tree = [];\n var currentRecursiveSequence = 0;\n while (vm) {\n if (tree.length > 0) {\n var last = tree[tree.length - 1];\n if (last.constructor === vm.constructor) {\n currentRecursiveSequence++;\n vm = vm.$parent;\n continue\n } else if (currentRecursiveSequence > 0) {\n tree[tree.length - 1] = [last, currentRecursiveSequence];\n currentRecursiveSequence = 0;\n }\n }\n tree.push(vm);\n vm = vm.$parent;\n }\n return '\\n\\nfound in\\n\\n' + tree\n .map(function (vm, i) { return (\"\" + (i === 0 ? '---> ' : repeat(' ', 5 + i * 2)) + (Array.isArray(vm)\n ? ((formatComponentName(vm[0])) + \"... (\" + (vm[1]) + \" recursive calls)\")\n : formatComponentName(vm))); })\n .join('\\n')\n } else {\n return (\"\\n\\n(found in \" + (formatComponentName(vm)) + \")\")\n }\n };\n}\n\n/* */\n\nvar uid = 0;\n\n/**\n * A dep is an observable that can have multiple\n * directives subscribing to it.\n */\nvar Dep = function Dep () {\n this.id = uid++;\n this.subs = [];\n};\n\nDep.prototype.addSub = function addSub (sub) {\n this.subs.push(sub);\n};\n\nDep.prototype.removeSub = function removeSub (sub) {\n remove(this.subs, sub);\n};\n\nDep.prototype.depend = function depend () {\n if (Dep.target) {\n Dep.target.addDep(this);\n }\n};\n\nDep.prototype.notify = function notify () {\n // stabilize the subscriber list first\n var subs = this.subs.slice();\n if (process.env.NODE_ENV !== 'production' && !config.async) {\n // subs aren't sorted in scheduler if not running async\n // we need to sort them now to make sure they fire in correct\n // order\n subs.sort(function (a, b) { return a.id - b.id; });\n }\n for (var i = 0, l = subs.length; i < l; i++) {\n subs[i].update();\n }\n};\n\n// The current target watcher being evaluated.\n// This is globally unique because only one watcher\n// can be evaluated at a time.\nDep.target = null;\nvar targetStack = [];\n\nfunction pushTarget (target) {\n targetStack.push(target);\n Dep.target = target;\n}\n\nfunction popTarget () {\n targetStack.pop();\n Dep.target = targetStack[targetStack.length - 1];\n}\n\n/* */\n\nvar VNode = function VNode (\n tag,\n data,\n children,\n text,\n elm,\n context,\n componentOptions,\n asyncFactory\n) {\n this.tag = tag;\n this.data = data;\n this.children = children;\n this.text = text;\n this.elm = elm;\n this.ns = undefined;\n this.context = context;\n this.fnContext = undefined;\n this.fnOptions = undefined;\n this.fnScopeId = undefined;\n this.key = data && data.key;\n this.componentOptions = componentOptions;\n this.componentInstance = undefined;\n this.parent = undefined;\n this.raw = false;\n this.isStatic = false;\n this.isRootInsert = true;\n this.isComment = false;\n this.isCloned = false;\n this.isOnce = false;\n this.asyncFactory = asyncFactory;\n this.asyncMeta = undefined;\n this.isAsyncPlaceholder = false;\n};\n\nvar prototypeAccessors = { child: { configurable: true } };\n\n// DEPRECATED: alias for componentInstance for backwards compat.\n/* istanbul ignore next */\nprototypeAccessors.child.get = function () {\n return this.componentInstance\n};\n\nObject.defineProperties( VNode.prototype, prototypeAccessors );\n\nvar createEmptyVNode = function (text) {\n if ( text === void 0 ) text = '';\n\n var node = new VNode();\n node.text = text;\n node.isComment = true;\n return node\n};\n\nfunction createTextVNode (val) {\n return new VNode(undefined, undefined, undefined, String(val))\n}\n\n// optimized shallow clone\n// used for static nodes and slot nodes because they may be reused across\n// multiple renders, cloning them avoids errors when DOM manipulations rely\n// on their elm reference.\nfunction cloneVNode (vnode) {\n var cloned = new VNode(\n vnode.tag,\n vnode.data,\n // #7975\n // clone children array to avoid mutating original in case of cloning\n // a child.\n vnode.children && vnode.children.slice(),\n vnode.text,\n vnode.elm,\n vnode.context,\n vnode.componentOptions,\n vnode.asyncFactory\n );\n cloned.ns = vnode.ns;\n cloned.isStatic = vnode.isStatic;\n cloned.key = vnode.key;\n cloned.isComment = vnode.isComment;\n cloned.fnContext = vnode.fnContext;\n cloned.fnOptions = vnode.fnOptions;\n cloned.fnScopeId = vnode.fnScopeId;\n cloned.asyncMeta = vnode.asyncMeta;\n cloned.isCloned = true;\n return cloned\n}\n\n/*\n * not type checking this file because flow doesn't play well with\n * dynamically accessing methods on Array prototype\n */\n\nvar arrayProto = Array.prototype;\nvar arrayMethods = Object.create(arrayProto);\n\nvar methodsToPatch = [\n 'push',\n 'pop',\n 'shift',\n 'unshift',\n 'splice',\n 'sort',\n 'reverse'\n];\n\n/**\n * Intercept mutating methods and emit events\n */\nmethodsToPatch.forEach(function (method) {\n // cache original method\n var original = arrayProto[method];\n def(arrayMethods, method, function mutator () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var result = original.apply(this, args);\n var ob = this.__ob__;\n var inserted;\n switch (method) {\n case 'push':\n case 'unshift':\n inserted = args;\n break\n case 'splice':\n inserted = args.slice(2);\n break\n }\n if (inserted) { ob.observeArray(inserted); }\n // notify change\n ob.dep.notify();\n return result\n });\n});\n\n/* */\n\nvar arrayKeys = Object.getOwnPropertyNames(arrayMethods);\n\n/**\n * In some cases we may want to disable observation inside a component's\n * update computation.\n */\nvar shouldObserve = true;\n\nfunction toggleObserving (value) {\n shouldObserve = value;\n}\n\n/**\n * Observer class that is attached to each observed\n * object. Once attached, the observer converts the target\n * object's property keys into getter/setters that\n * collect dependencies and dispatch updates.\n */\nvar Observer = function Observer (value) {\n this.value = value;\n this.dep = new Dep();\n this.vmCount = 0;\n def(value, '__ob__', this);\n if (Array.isArray(value)) {\n if (hasProto) {\n protoAugment(value, arrayMethods);\n } else {\n copyAugment(value, arrayMethods, arrayKeys);\n }\n this.observeArray(value);\n } else {\n this.walk(value);\n }\n};\n\n/**\n * Walk through all properties and convert them into\n * getter/setters. This method should only be called when\n * value type is Object.\n */\nObserver.prototype.walk = function walk (obj) {\n var keys = Object.keys(obj);\n for (var i = 0; i < keys.length; i++) {\n defineReactive$$1(obj, keys[i]);\n }\n};\n\n/**\n * Observe a list of Array items.\n */\nObserver.prototype.observeArray = function observeArray (items) {\n for (var i = 0, l = items.length; i < l; i++) {\n observe(items[i]);\n }\n};\n\n// helpers\n\n/**\n * Augment a target Object or Array by intercepting\n * the prototype chain using __proto__\n */\nfunction protoAugment (target, src) {\n /* eslint-disable no-proto */\n target.__proto__ = src;\n /* eslint-enable no-proto */\n}\n\n/**\n * Augment a target Object or Array by defining\n * hidden properties.\n */\n/* istanbul ignore next */\nfunction copyAugment (target, src, keys) {\n for (var i = 0, l = keys.length; i < l; i++) {\n var key = keys[i];\n def(target, key, src[key]);\n }\n}\n\n/**\n * Attempt to create an observer instance for a value,\n * returns the new observer if successfully observed,\n * or the existing observer if the value already has one.\n */\nfunction observe (value, asRootData) {\n if (!isObject(value) || value instanceof VNode) {\n return\n }\n var ob;\n if (hasOwn(value, '__ob__') && value.__ob__ instanceof Observer) {\n ob = value.__ob__;\n } else if (\n shouldObserve &&\n !isServerRendering() &&\n (Array.isArray(value) || isPlainObject(value)) &&\n Object.isExtensible(value) &&\n !value._isVue\n ) {\n ob = new Observer(value);\n }\n if (asRootData && ob) {\n ob.vmCount++;\n }\n return ob\n}\n\n/**\n * Define a reactive property on an Object.\n */\nfunction defineReactive$$1 (\n obj,\n key,\n val,\n customSetter,\n shallow\n) {\n var dep = new Dep();\n\n var property = Object.getOwnPropertyDescriptor(obj, key);\n if (property && property.configurable === false) {\n return\n }\n\n // cater for pre-defined getter/setters\n var getter = property && property.get;\n var setter = property && property.set;\n if ((!getter || setter) && arguments.length === 2) {\n val = obj[key];\n }\n\n var childOb = !shallow && observe(val);\n Object.defineProperty(obj, key, {\n enumerable: true,\n configurable: true,\n get: function reactiveGetter () {\n var value = getter ? getter.call(obj) : val;\n if (Dep.target) {\n dep.depend();\n if (childOb) {\n childOb.dep.depend();\n if (Array.isArray(value)) {\n dependArray(value);\n }\n }\n }\n return value\n },\n set: function reactiveSetter (newVal) {\n var value = getter ? getter.call(obj) : val;\n /* eslint-disable no-self-compare */\n if (newVal === value || (newVal !== newVal && value !== value)) {\n return\n }\n /* eslint-enable no-self-compare */\n if (process.env.NODE_ENV !== 'production' && customSetter) {\n customSetter();\n }\n // #7981: for accessor properties without setter\n if (getter && !setter) { return }\n if (setter) {\n setter.call(obj, newVal);\n } else {\n val = newVal;\n }\n childOb = !shallow && observe(newVal);\n dep.notify();\n }\n });\n}\n\n/**\n * Set a property on an object. Adds the new property and\n * triggers change notification if the property doesn't\n * already exist.\n */\nfunction set (target, key, val) {\n if (process.env.NODE_ENV !== 'production' &&\n (isUndef(target) || isPrimitive(target))\n ) {\n warn((\"Cannot set reactive property on undefined, null, or primitive value: \" + ((target))));\n }\n if (Array.isArray(target) && isValidArrayIndex(key)) {\n target.length = Math.max(target.length, key);\n target.splice(key, 1, val);\n return val\n }\n if (key in target && !(key in Object.prototype)) {\n target[key] = val;\n return val\n }\n var ob = (target).__ob__;\n if (target._isVue || (ob && ob.vmCount)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'Avoid adding reactive properties to a Vue instance or its root $data ' +\n 'at runtime - declare it upfront in the data option.'\n );\n return val\n }\n if (!ob) {\n target[key] = val;\n return val\n }\n defineReactive$$1(ob.value, key, val);\n ob.dep.notify();\n return val\n}\n\n/**\n * Delete a property and trigger change if necessary.\n */\nfunction del (target, key) {\n if (process.env.NODE_ENV !== 'production' &&\n (isUndef(target) || isPrimitive(target))\n ) {\n warn((\"Cannot delete reactive property on undefined, null, or primitive value: \" + ((target))));\n }\n if (Array.isArray(target) && isValidArrayIndex(key)) {\n target.splice(key, 1);\n return\n }\n var ob = (target).__ob__;\n if (target._isVue || (ob && ob.vmCount)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'Avoid deleting properties on a Vue instance or its root $data ' +\n '- just set it to null.'\n );\n return\n }\n if (!hasOwn(target, key)) {\n return\n }\n delete target[key];\n if (!ob) {\n return\n }\n ob.dep.notify();\n}\n\n/**\n * Collect dependencies on array elements when the array is touched, since\n * we cannot intercept array element access like property getters.\n */\nfunction dependArray (value) {\n for (var e = (void 0), i = 0, l = value.length; i < l; i++) {\n e = value[i];\n e && e.__ob__ && e.__ob__.dep.depend();\n if (Array.isArray(e)) {\n dependArray(e);\n }\n }\n}\n\n/* */\n\n/**\n * Option overwriting strategies are functions that handle\n * how to merge a parent option value and a child option\n * value into the final value.\n */\nvar strats = config.optionMergeStrategies;\n\n/**\n * Options with restrictions\n */\nif (process.env.NODE_ENV !== 'production') {\n strats.el = strats.propsData = function (parent, child, vm, key) {\n if (!vm) {\n warn(\n \"option \\\"\" + key + \"\\\" can only be used during instance \" +\n 'creation with the `new` keyword.'\n );\n }\n return defaultStrat(parent, child)\n };\n}\n\n/**\n * Helper that recursively merges two data objects together.\n */\nfunction mergeData (to, from) {\n if (!from) { return to }\n var key, toVal, fromVal;\n\n var keys = hasSymbol\n ? Reflect.ownKeys(from)\n : Object.keys(from);\n\n for (var i = 0; i < keys.length; i++) {\n key = keys[i];\n // in case the object is already observed...\n if (key === '__ob__') { continue }\n toVal = to[key];\n fromVal = from[key];\n if (!hasOwn(to, key)) {\n set(to, key, fromVal);\n } else if (\n toVal !== fromVal &&\n isPlainObject(toVal) &&\n isPlainObject(fromVal)\n ) {\n mergeData(toVal, fromVal);\n }\n }\n return to\n}\n\n/**\n * Data\n */\nfunction mergeDataOrFn (\n parentVal,\n childVal,\n vm\n) {\n if (!vm) {\n // in a Vue.extend merge, both should be functions\n if (!childVal) {\n return parentVal\n }\n if (!parentVal) {\n return childVal\n }\n // when parentVal & childVal are both present,\n // we need to return a function that returns the\n // merged result of both functions... no need to\n // check if parentVal is a function here because\n // it has to be a function to pass previous merges.\n return function mergedDataFn () {\n return mergeData(\n typeof childVal === 'function' ? childVal.call(this, this) : childVal,\n typeof parentVal === 'function' ? parentVal.call(this, this) : parentVal\n )\n }\n } else {\n return function mergedInstanceDataFn () {\n // instance merge\n var instanceData = typeof childVal === 'function'\n ? childVal.call(vm, vm)\n : childVal;\n var defaultData = typeof parentVal === 'function'\n ? parentVal.call(vm, vm)\n : parentVal;\n if (instanceData) {\n return mergeData(instanceData, defaultData)\n } else {\n return defaultData\n }\n }\n }\n}\n\nstrats.data = function (\n parentVal,\n childVal,\n vm\n) {\n if (!vm) {\n if (childVal && typeof childVal !== 'function') {\n process.env.NODE_ENV !== 'production' && warn(\n 'The \"data\" option should be a function ' +\n 'that returns a per-instance value in component ' +\n 'definitions.',\n vm\n );\n\n return parentVal\n }\n return mergeDataOrFn(parentVal, childVal)\n }\n\n return mergeDataOrFn(parentVal, childVal, vm)\n};\n\n/**\n * Hooks and props are merged as arrays.\n */\nfunction mergeHook (\n parentVal,\n childVal\n) {\n var res = childVal\n ? parentVal\n ? parentVal.concat(childVal)\n : Array.isArray(childVal)\n ? childVal\n : [childVal]\n : parentVal;\n return res\n ? dedupeHooks(res)\n : res\n}\n\nfunction dedupeHooks (hooks) {\n var res = [];\n for (var i = 0; i < hooks.length; i++) {\n if (res.indexOf(hooks[i]) === -1) {\n res.push(hooks[i]);\n }\n }\n return res\n}\n\nLIFECYCLE_HOOKS.forEach(function (hook) {\n strats[hook] = mergeHook;\n});\n\n/**\n * Assets\n *\n * When a vm is present (instance creation), we need to do\n * a three-way merge between constructor options, instance\n * options and parent options.\n */\nfunction mergeAssets (\n parentVal,\n childVal,\n vm,\n key\n) {\n var res = Object.create(parentVal || null);\n if (childVal) {\n process.env.NODE_ENV !== 'production' && assertObjectType(key, childVal, vm);\n return extend(res, childVal)\n } else {\n return res\n }\n}\n\nASSET_TYPES.forEach(function (type) {\n strats[type + 's'] = mergeAssets;\n});\n\n/**\n * Watchers.\n *\n * Watchers hashes should not overwrite one\n * another, so we merge them as arrays.\n */\nstrats.watch = function (\n parentVal,\n childVal,\n vm,\n key\n) {\n // work around Firefox's Object.prototype.watch...\n if (parentVal === nativeWatch) { parentVal = undefined; }\n if (childVal === nativeWatch) { childVal = undefined; }\n /* istanbul ignore if */\n if (!childVal) { return Object.create(parentVal || null) }\n if (process.env.NODE_ENV !== 'production') {\n assertObjectType(key, childVal, vm);\n }\n if (!parentVal) { return childVal }\n var ret = {};\n extend(ret, parentVal);\n for (var key$1 in childVal) {\n var parent = ret[key$1];\n var child = childVal[key$1];\n if (parent && !Array.isArray(parent)) {\n parent = [parent];\n }\n ret[key$1] = parent\n ? parent.concat(child)\n : Array.isArray(child) ? child : [child];\n }\n return ret\n};\n\n/**\n * Other object hashes.\n */\nstrats.props =\nstrats.methods =\nstrats.inject =\nstrats.computed = function (\n parentVal,\n childVal,\n vm,\n key\n) {\n if (childVal && process.env.NODE_ENV !== 'production') {\n assertObjectType(key, childVal, vm);\n }\n if (!parentVal) { return childVal }\n var ret = Object.create(null);\n extend(ret, parentVal);\n if (childVal) { extend(ret, childVal); }\n return ret\n};\nstrats.provide = mergeDataOrFn;\n\n/**\n * Default strategy.\n */\nvar defaultStrat = function (parentVal, childVal) {\n return childVal === undefined\n ? parentVal\n : childVal\n};\n\n/**\n * Validate component names\n */\nfunction checkComponents (options) {\n for (var key in options.components) {\n validateComponentName(key);\n }\n}\n\nfunction validateComponentName (name) {\n if (!new RegExp((\"^[a-zA-Z][\\\\-\\\\.0-9_\" + (unicodeRegExp.source) + \"]*$\")).test(name)) {\n warn(\n 'Invalid component name: \"' + name + '\". Component names ' +\n 'should conform to valid custom element name in html5 specification.'\n );\n }\n if (isBuiltInTag(name) || config.isReservedTag(name)) {\n warn(\n 'Do not use built-in or reserved HTML elements as component ' +\n 'id: ' + name\n );\n }\n}\n\n/**\n * Ensure all props option syntax are normalized into the\n * Object-based format.\n */\nfunction normalizeProps (options, vm) {\n var props = options.props;\n if (!props) { return }\n var res = {};\n var i, val, name;\n if (Array.isArray(props)) {\n i = props.length;\n while (i--) {\n val = props[i];\n if (typeof val === 'string') {\n name = camelize(val);\n res[name] = { type: null };\n } else if (process.env.NODE_ENV !== 'production') {\n warn('props must be strings when using array syntax.');\n }\n }\n } else if (isPlainObject(props)) {\n for (var key in props) {\n val = props[key];\n name = camelize(key);\n res[name] = isPlainObject(val)\n ? val\n : { type: val };\n }\n } else if (process.env.NODE_ENV !== 'production') {\n warn(\n \"Invalid value for option \\\"props\\\": expected an Array or an Object, \" +\n \"but got \" + (toRawType(props)) + \".\",\n vm\n );\n }\n options.props = res;\n}\n\n/**\n * Normalize all injections into Object-based format\n */\nfunction normalizeInject (options, vm) {\n var inject = options.inject;\n if (!inject) { return }\n var normalized = options.inject = {};\n if (Array.isArray(inject)) {\n for (var i = 0; i < inject.length; i++) {\n normalized[inject[i]] = { from: inject[i] };\n }\n } else if (isPlainObject(inject)) {\n for (var key in inject) {\n var val = inject[key];\n normalized[key] = isPlainObject(val)\n ? extend({ from: key }, val)\n : { from: val };\n }\n } else if (process.env.NODE_ENV !== 'production') {\n warn(\n \"Invalid value for option \\\"inject\\\": expected an Array or an Object, \" +\n \"but got \" + (toRawType(inject)) + \".\",\n vm\n );\n }\n}\n\n/**\n * Normalize raw function directives into object format.\n */\nfunction normalizeDirectives (options) {\n var dirs = options.directives;\n if (dirs) {\n for (var key in dirs) {\n var def$$1 = dirs[key];\n if (typeof def$$1 === 'function') {\n dirs[key] = { bind: def$$1, update: def$$1 };\n }\n }\n }\n}\n\nfunction assertObjectType (name, value, vm) {\n if (!isPlainObject(value)) {\n warn(\n \"Invalid value for option \\\"\" + name + \"\\\": expected an Object, \" +\n \"but got \" + (toRawType(value)) + \".\",\n vm\n );\n }\n}\n\n/**\n * Merge two option objects into a new one.\n * Core utility used in both instantiation and inheritance.\n */\nfunction mergeOptions (\n parent,\n child,\n vm\n) {\n if (process.env.NODE_ENV !== 'production') {\n checkComponents(child);\n }\n\n if (typeof child === 'function') {\n child = child.options;\n }\n\n normalizeProps(child, vm);\n normalizeInject(child, vm);\n normalizeDirectives(child);\n\n // Apply extends and mixins on the child options,\n // but only if it is a raw options object that isn't\n // the result of another mergeOptions call.\n // Only merged options has the _base property.\n if (!child._base) {\n if (child.extends) {\n parent = mergeOptions(parent, child.extends, vm);\n }\n if (child.mixins) {\n for (var i = 0, l = child.mixins.length; i < l; i++) {\n parent = mergeOptions(parent, child.mixins[i], vm);\n }\n }\n }\n\n var options = {};\n var key;\n for (key in parent) {\n mergeField(key);\n }\n for (key in child) {\n if (!hasOwn(parent, key)) {\n mergeField(key);\n }\n }\n function mergeField (key) {\n var strat = strats[key] || defaultStrat;\n options[key] = strat(parent[key], child[key], vm, key);\n }\n return options\n}\n\n/**\n * Resolve an asset.\n * This function is used because child instances need access\n * to assets defined in its ancestor chain.\n */\nfunction resolveAsset (\n options,\n type,\n id,\n warnMissing\n) {\n /* istanbul ignore if */\n if (typeof id !== 'string') {\n return\n }\n var assets = options[type];\n // check local registration variations first\n if (hasOwn(assets, id)) { return assets[id] }\n var camelizedId = camelize(id);\n if (hasOwn(assets, camelizedId)) { return assets[camelizedId] }\n var PascalCaseId = capitalize(camelizedId);\n if (hasOwn(assets, PascalCaseId)) { return assets[PascalCaseId] }\n // fallback to prototype chain\n var res = assets[id] || assets[camelizedId] || assets[PascalCaseId];\n if (process.env.NODE_ENV !== 'production' && warnMissing && !res) {\n warn(\n 'Failed to resolve ' + type.slice(0, -1) + ': ' + id,\n options\n );\n }\n return res\n}\n\n/* */\n\n\n\nfunction validateProp (\n key,\n propOptions,\n propsData,\n vm\n) {\n var prop = propOptions[key];\n var absent = !hasOwn(propsData, key);\n var value = propsData[key];\n // boolean casting\n var booleanIndex = getTypeIndex(Boolean, prop.type);\n if (booleanIndex > -1) {\n if (absent && !hasOwn(prop, 'default')) {\n value = false;\n } else if (value === '' || value === hyphenate(key)) {\n // only cast empty string / same name to boolean if\n // boolean has higher priority\n var stringIndex = getTypeIndex(String, prop.type);\n if (stringIndex < 0 || booleanIndex < stringIndex) {\n value = true;\n }\n }\n }\n // check default value\n if (value === undefined) {\n value = getPropDefaultValue(vm, prop, key);\n // since the default value is a fresh copy,\n // make sure to observe it.\n var prevShouldObserve = shouldObserve;\n toggleObserving(true);\n observe(value);\n toggleObserving(prevShouldObserve);\n }\n if (\n process.env.NODE_ENV !== 'production' &&\n // skip validation for weex recycle-list child component props\n !(false)\n ) {\n assertProp(prop, key, value, vm, absent);\n }\n return value\n}\n\n/**\n * Get the default value of a prop.\n */\nfunction getPropDefaultValue (vm, prop, key) {\n // no default, return undefined\n if (!hasOwn(prop, 'default')) {\n return undefined\n }\n var def = prop.default;\n // warn against non-factory defaults for Object & Array\n if (process.env.NODE_ENV !== 'production' && isObject(def)) {\n warn(\n 'Invalid default value for prop \"' + key + '\": ' +\n 'Props with type Object/Array must use a factory function ' +\n 'to return the default value.',\n vm\n );\n }\n // the raw prop value was also undefined from previous render,\n // return previous default value to avoid unnecessary watcher trigger\n if (vm && vm.$options.propsData &&\n vm.$options.propsData[key] === undefined &&\n vm._props[key] !== undefined\n ) {\n return vm._props[key]\n }\n // call factory function for non-Function types\n // a value is Function if its prototype is function even across different execution context\n return typeof def === 'function' && getType(prop.type) !== 'Function'\n ? def.call(vm)\n : def\n}\n\n/**\n * Assert whether a prop is valid.\n */\nfunction assertProp (\n prop,\n name,\n value,\n vm,\n absent\n) {\n if (prop.required && absent) {\n warn(\n 'Missing required prop: \"' + name + '\"',\n vm\n );\n return\n }\n if (value == null && !prop.required) {\n return\n }\n var type = prop.type;\n var valid = !type || type === true;\n var expectedTypes = [];\n if (type) {\n if (!Array.isArray(type)) {\n type = [type];\n }\n for (var i = 0; i < type.length && !valid; i++) {\n var assertedType = assertType(value, type[i]);\n expectedTypes.push(assertedType.expectedType || '');\n valid = assertedType.valid;\n }\n }\n\n if (!valid) {\n warn(\n getInvalidTypeMessage(name, value, expectedTypes),\n vm\n );\n return\n }\n var validator = prop.validator;\n if (validator) {\n if (!validator(value)) {\n warn(\n 'Invalid prop: custom validator check failed for prop \"' + name + '\".',\n vm\n );\n }\n }\n}\n\nvar simpleCheckRE = /^(String|Number|Boolean|Function|Symbol)$/;\n\nfunction assertType (value, type) {\n var valid;\n var expectedType = getType(type);\n if (simpleCheckRE.test(expectedType)) {\n var t = typeof value;\n valid = t === expectedType.toLowerCase();\n // for primitive wrapper objects\n if (!valid && t === 'object') {\n valid = value instanceof type;\n }\n } else if (expectedType === 'Object') {\n valid = isPlainObject(value);\n } else if (expectedType === 'Array') {\n valid = Array.isArray(value);\n } else {\n valid = value instanceof type;\n }\n return {\n valid: valid,\n expectedType: expectedType\n }\n}\n\n/**\n * Use function string name to check built-in types,\n * because a simple equality check will fail when running\n * across different vms / iframes.\n */\nfunction getType (fn) {\n var match = fn && fn.toString().match(/^\\s*function (\\w+)/);\n return match ? match[1] : ''\n}\n\nfunction isSameType (a, b) {\n return getType(a) === getType(b)\n}\n\nfunction getTypeIndex (type, expectedTypes) {\n if (!Array.isArray(expectedTypes)) {\n return isSameType(expectedTypes, type) ? 0 : -1\n }\n for (var i = 0, len = expectedTypes.length; i < len; i++) {\n if (isSameType(expectedTypes[i], type)) {\n return i\n }\n }\n return -1\n}\n\nfunction getInvalidTypeMessage (name, value, expectedTypes) {\n var message = \"Invalid prop: type check failed for prop \\\"\" + name + \"\\\".\" +\n \" Expected \" + (expectedTypes.map(capitalize).join(', '));\n var expectedType = expectedTypes[0];\n var receivedType = toRawType(value);\n var expectedValue = styleValue(value, expectedType);\n var receivedValue = styleValue(value, receivedType);\n // check if we need to specify expected value\n if (expectedTypes.length === 1 &&\n isExplicable(expectedType) &&\n !isBoolean(expectedType, receivedType)) {\n message += \" with value \" + expectedValue;\n }\n message += \", got \" + receivedType + \" \";\n // check if we need to specify received value\n if (isExplicable(receivedType)) {\n message += \"with value \" + receivedValue + \".\";\n }\n return message\n}\n\nfunction styleValue (value, type) {\n if (type === 'String') {\n return (\"\\\"\" + value + \"\\\"\")\n } else if (type === 'Number') {\n return (\"\" + (Number(value)))\n } else {\n return (\"\" + value)\n }\n}\n\nfunction isExplicable (value) {\n var explicitTypes = ['string', 'number', 'boolean'];\n return explicitTypes.some(function (elem) { return value.toLowerCase() === elem; })\n}\n\nfunction isBoolean () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return args.some(function (elem) { return elem.toLowerCase() === 'boolean'; })\n}\n\n/* */\n\nfunction handleError (err, vm, info) {\n // Deactivate deps tracking while processing error handler to avoid possible infinite rendering.\n // See: https://github.com/vuejs/vuex/issues/1505\n pushTarget();\n try {\n if (vm) {\n var cur = vm;\n while ((cur = cur.$parent)) {\n var hooks = cur.$options.errorCaptured;\n if (hooks) {\n for (var i = 0; i < hooks.length; i++) {\n try {\n var capture = hooks[i].call(cur, err, vm, info) === false;\n if (capture) { return }\n } catch (e) {\n globalHandleError(e, cur, 'errorCaptured hook');\n }\n }\n }\n }\n }\n globalHandleError(err, vm, info);\n } finally {\n popTarget();\n }\n}\n\nfunction invokeWithErrorHandling (\n handler,\n context,\n args,\n vm,\n info\n) {\n var res;\n try {\n res = args ? handler.apply(context, args) : handler.call(context);\n if (res && !res._isVue && isPromise(res) && !res._handled) {\n res.catch(function (e) { return handleError(e, vm, info + \" (Promise/async)\"); });\n // issue #9511\n // avoid catch triggering multiple times when nested calls\n res._handled = true;\n }\n } catch (e) {\n handleError(e, vm, info);\n }\n return res\n}\n\nfunction globalHandleError (err, vm, info) {\n if (config.errorHandler) {\n try {\n return config.errorHandler.call(null, err, vm, info)\n } catch (e) {\n // if the user intentionally throws the original error in the handler,\n // do not log it twice\n if (e !== err) {\n logError(e, null, 'config.errorHandler');\n }\n }\n }\n logError(err, vm, info);\n}\n\nfunction logError (err, vm, info) {\n if (process.env.NODE_ENV !== 'production') {\n warn((\"Error in \" + info + \": \\\"\" + (err.toString()) + \"\\\"\"), vm);\n }\n /* istanbul ignore else */\n if ((inBrowser || inWeex) && typeof console !== 'undefined') {\n console.error(err);\n } else {\n throw err\n }\n}\n\n/* */\n\nvar isUsingMicroTask = false;\n\nvar callbacks = [];\nvar pending = false;\n\nfunction flushCallbacks () {\n pending = false;\n var copies = callbacks.slice(0);\n callbacks.length = 0;\n for (var i = 0; i < copies.length; i++) {\n copies[i]();\n }\n}\n\n// Here we have async deferring wrappers using microtasks.\n// In 2.5 we used (macro) tasks (in combination with microtasks).\n// However, it has subtle problems when state is changed right before repaint\n// (e.g. #6813, out-in transitions).\n// Also, using (macro) tasks in event handler would cause some weird behaviors\n// that cannot be circumvented (e.g. #7109, #7153, #7546, #7834, #8109).\n// So we now use microtasks everywhere, again.\n// A major drawback of this tradeoff is that there are some scenarios\n// where microtasks have too high a priority and fire in between supposedly\n// sequential events (e.g. #4521, #6690, which have workarounds)\n// or even between bubbling of the same event (#6566).\nvar timerFunc;\n\n// The nextTick behavior leverages the microtask queue, which can be accessed\n// via either native Promise.then or MutationObserver.\n// MutationObserver has wider support, however it is seriously bugged in\n// UIWebView in iOS >= 9.3.3 when triggered in touch event handlers. It\n// completely stops working after triggering a few times... so, if native\n// Promise is available, we will use it:\n/* istanbul ignore next, $flow-disable-line */\nif (typeof Promise !== 'undefined' && isNative(Promise)) {\n var p = Promise.resolve();\n timerFunc = function () {\n p.then(flushCallbacks);\n // In problematic UIWebViews, Promise.then doesn't completely break, but\n // it can get stuck in a weird state where callbacks are pushed into the\n // microtask queue but the queue isn't being flushed, until the browser\n // needs to do some other work, e.g. handle a timer. Therefore we can\n // \"force\" the microtask queue to be flushed by adding an empty timer.\n if (isIOS) { setTimeout(noop); }\n };\n isUsingMicroTask = true;\n} else if (!isIE && typeof MutationObserver !== 'undefined' && (\n isNative(MutationObserver) ||\n // PhantomJS and iOS 7.x\n MutationObserver.toString() === '[object MutationObserverConstructor]'\n)) {\n // Use MutationObserver where native Promise is not available,\n // e.g. PhantomJS, iOS7, Android 4.4\n // (#6466 MutationObserver is unreliable in IE11)\n var counter = 1;\n var observer = new MutationObserver(flushCallbacks);\n var textNode = document.createTextNode(String(counter));\n observer.observe(textNode, {\n characterData: true\n });\n timerFunc = function () {\n counter = (counter + 1) % 2;\n textNode.data = String(counter);\n };\n isUsingMicroTask = true;\n} else if (typeof setImmediate !== 'undefined' && isNative(setImmediate)) {\n // Fallback to setImmediate.\n // Technically it leverages the (macro) task queue,\n // but it is still a better choice than setTimeout.\n timerFunc = function () {\n setImmediate(flushCallbacks);\n };\n} else {\n // Fallback to setTimeout.\n timerFunc = function () {\n setTimeout(flushCallbacks, 0);\n };\n}\n\nfunction nextTick (cb, ctx) {\n var _resolve;\n callbacks.push(function () {\n if (cb) {\n try {\n cb.call(ctx);\n } catch (e) {\n handleError(e, ctx, 'nextTick');\n }\n } else if (_resolve) {\n _resolve(ctx);\n }\n });\n if (!pending) {\n pending = true;\n timerFunc();\n }\n // $flow-disable-line\n if (!cb && typeof Promise !== 'undefined') {\n return new Promise(function (resolve) {\n _resolve = resolve;\n })\n }\n}\n\n/* */\n\nvar mark;\nvar measure;\n\nif (process.env.NODE_ENV !== 'production') {\n var perf = inBrowser && window.performance;\n /* istanbul ignore if */\n if (\n perf &&\n perf.mark &&\n perf.measure &&\n perf.clearMarks &&\n perf.clearMeasures\n ) {\n mark = function (tag) { return perf.mark(tag); };\n measure = function (name, startTag, endTag) {\n perf.measure(name, startTag, endTag);\n perf.clearMarks(startTag);\n perf.clearMarks(endTag);\n // perf.clearMeasures(name)\n };\n }\n}\n\n/* not type checking this file because flow doesn't play well with Proxy */\n\nvar initProxy;\n\nif (process.env.NODE_ENV !== 'production') {\n var allowedGlobals = makeMap(\n 'Infinity,undefined,NaN,isFinite,isNaN,' +\n 'parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,' +\n 'Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,' +\n 'require' // for Webpack/Browserify\n );\n\n var warnNonPresent = function (target, key) {\n warn(\n \"Property or method \\\"\" + key + \"\\\" is not defined on the instance but \" +\n 'referenced during render. Make sure that this property is reactive, ' +\n 'either in the data option, or for class-based components, by ' +\n 'initializing the property. ' +\n 'See: https://vuejs.org/v2/guide/reactivity.html#Declaring-Reactive-Properties.',\n target\n );\n };\n\n var warnReservedPrefix = function (target, key) {\n warn(\n \"Property \\\"\" + key + \"\\\" must be accessed with \\\"$data.\" + key + \"\\\" because \" +\n 'properties starting with \"$\" or \"_\" are not proxied in the Vue instance to ' +\n 'prevent conflicts with Vue internals. ' +\n 'See: https://vuejs.org/v2/api/#data',\n target\n );\n };\n\n var hasProxy =\n typeof Proxy !== 'undefined' && isNative(Proxy);\n\n if (hasProxy) {\n var isBuiltInModifier = makeMap('stop,prevent,self,ctrl,shift,alt,meta,exact');\n config.keyCodes = new Proxy(config.keyCodes, {\n set: function set (target, key, value) {\n if (isBuiltInModifier(key)) {\n warn((\"Avoid overwriting built-in modifier in config.keyCodes: .\" + key));\n return false\n } else {\n target[key] = value;\n return true\n }\n }\n });\n }\n\n var hasHandler = {\n has: function has (target, key) {\n var has = key in target;\n var isAllowed = allowedGlobals(key) ||\n (typeof key === 'string' && key.charAt(0) === '_' && !(key in target.$data));\n if (!has && !isAllowed) {\n if (key in target.$data) { warnReservedPrefix(target, key); }\n else { warnNonPresent(target, key); }\n }\n return has || !isAllowed\n }\n };\n\n var getHandler = {\n get: function get (target, key) {\n if (typeof key === 'string' && !(key in target)) {\n if (key in target.$data) { warnReservedPrefix(target, key); }\n else { warnNonPresent(target, key); }\n }\n return target[key]\n }\n };\n\n initProxy = function initProxy (vm) {\n if (hasProxy) {\n // determine which proxy handler to use\n var options = vm.$options;\n var handlers = options.render && options.render._withStripped\n ? getHandler\n : hasHandler;\n vm._renderProxy = new Proxy(vm, handlers);\n } else {\n vm._renderProxy = vm;\n }\n };\n}\n\n/* */\n\nvar seenObjects = new _Set();\n\n/**\n * Recursively traverse an object to evoke all converted\n * getters, so that every nested property inside the object\n * is collected as a \"deep\" dependency.\n */\nfunction traverse (val) {\n _traverse(val, seenObjects);\n seenObjects.clear();\n}\n\nfunction _traverse (val, seen) {\n var i, keys;\n var isA = Array.isArray(val);\n if ((!isA && !isObject(val)) || Object.isFrozen(val) || val instanceof VNode) {\n return\n }\n if (val.__ob__) {\n var depId = val.__ob__.dep.id;\n if (seen.has(depId)) {\n return\n }\n seen.add(depId);\n }\n if (isA) {\n i = val.length;\n while (i--) { _traverse(val[i], seen); }\n } else {\n keys = Object.keys(val);\n i = keys.length;\n while (i--) { _traverse(val[keys[i]], seen); }\n }\n}\n\n/* */\n\nvar normalizeEvent = cached(function (name) {\n var passive = name.charAt(0) === '&';\n name = passive ? name.slice(1) : name;\n var once$$1 = name.charAt(0) === '~'; // Prefixed last, checked first\n name = once$$1 ? name.slice(1) : name;\n var capture = name.charAt(0) === '!';\n name = capture ? name.slice(1) : name;\n return {\n name: name,\n once: once$$1,\n capture: capture,\n passive: passive\n }\n});\n\nfunction createFnInvoker (fns, vm) {\n function invoker () {\n var arguments$1 = arguments;\n\n var fns = invoker.fns;\n if (Array.isArray(fns)) {\n var cloned = fns.slice();\n for (var i = 0; i < cloned.length; i++) {\n invokeWithErrorHandling(cloned[i], null, arguments$1, vm, \"v-on handler\");\n }\n } else {\n // return handler return value for single handlers\n return invokeWithErrorHandling(fns, null, arguments, vm, \"v-on handler\")\n }\n }\n invoker.fns = fns;\n return invoker\n}\n\nfunction updateListeners (\n on,\n oldOn,\n add,\n remove$$1,\n createOnceHandler,\n vm\n) {\n var name, def$$1, cur, old, event;\n for (name in on) {\n def$$1 = cur = on[name];\n old = oldOn[name];\n event = normalizeEvent(name);\n if (isUndef(cur)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Invalid handler for event \\\"\" + (event.name) + \"\\\": got \" + String(cur),\n vm\n );\n } else if (isUndef(old)) {\n if (isUndef(cur.fns)) {\n cur = on[name] = createFnInvoker(cur, vm);\n }\n if (isTrue(event.once)) {\n cur = on[name] = createOnceHandler(event.name, cur, event.capture);\n }\n add(event.name, cur, event.capture, event.passive, event.params);\n } else if (cur !== old) {\n old.fns = cur;\n on[name] = old;\n }\n }\n for (name in oldOn) {\n if (isUndef(on[name])) {\n event = normalizeEvent(name);\n remove$$1(event.name, oldOn[name], event.capture);\n }\n }\n}\n\n/* */\n\nfunction mergeVNodeHook (def, hookKey, hook) {\n if (def instanceof VNode) {\n def = def.data.hook || (def.data.hook = {});\n }\n var invoker;\n var oldHook = def[hookKey];\n\n function wrappedHook () {\n hook.apply(this, arguments);\n // important: remove merged hook to ensure it's called only once\n // and prevent memory leak\n remove(invoker.fns, wrappedHook);\n }\n\n if (isUndef(oldHook)) {\n // no existing hook\n invoker = createFnInvoker([wrappedHook]);\n } else {\n /* istanbul ignore if */\n if (isDef(oldHook.fns) && isTrue(oldHook.merged)) {\n // already a merged invoker\n invoker = oldHook;\n invoker.fns.push(wrappedHook);\n } else {\n // existing plain hook\n invoker = createFnInvoker([oldHook, wrappedHook]);\n }\n }\n\n invoker.merged = true;\n def[hookKey] = invoker;\n}\n\n/* */\n\nfunction extractPropsFromVNodeData (\n data,\n Ctor,\n tag\n) {\n // we are only extracting raw values here.\n // validation and default values are handled in the child\n // component itself.\n var propOptions = Ctor.options.props;\n if (isUndef(propOptions)) {\n return\n }\n var res = {};\n var attrs = data.attrs;\n var props = data.props;\n if (isDef(attrs) || isDef(props)) {\n for (var key in propOptions) {\n var altKey = hyphenate(key);\n if (process.env.NODE_ENV !== 'production') {\n var keyInLowerCase = key.toLowerCase();\n if (\n key !== keyInLowerCase &&\n attrs && hasOwn(attrs, keyInLowerCase)\n ) {\n tip(\n \"Prop \\\"\" + keyInLowerCase + \"\\\" is passed to component \" +\n (formatComponentName(tag || Ctor)) + \", but the declared prop name is\" +\n \" \\\"\" + key + \"\\\". \" +\n \"Note that HTML attributes are case-insensitive and camelCased \" +\n \"props need to use their kebab-case equivalents when using in-DOM \" +\n \"templates. You should probably use \\\"\" + altKey + \"\\\" instead of \\\"\" + key + \"\\\".\"\n );\n }\n }\n checkProp(res, props, key, altKey, true) ||\n checkProp(res, attrs, key, altKey, false);\n }\n }\n return res\n}\n\nfunction checkProp (\n res,\n hash,\n key,\n altKey,\n preserve\n) {\n if (isDef(hash)) {\n if (hasOwn(hash, key)) {\n res[key] = hash[key];\n if (!preserve) {\n delete hash[key];\n }\n return true\n } else if (hasOwn(hash, altKey)) {\n res[key] = hash[altKey];\n if (!preserve) {\n delete hash[altKey];\n }\n return true\n }\n }\n return false\n}\n\n/* */\n\n// The template compiler attempts to minimize the need for normalization by\n// statically analyzing the template at compile time.\n//\n// For plain HTML markup, normalization can be completely skipped because the\n// generated render function is guaranteed to return Array<VNode>. There are\n// two cases where extra normalization is needed:\n\n// 1. When the children contains components - because a functional component\n// may return an Array instead of a single root. In this case, just a simple\n// normalization is needed - if any child is an Array, we flatten the whole\n// thing with Array.prototype.concat. It is guaranteed to be only 1-level deep\n// because functional components already normalize their own children.\nfunction simpleNormalizeChildren (children) {\n for (var i = 0; i < children.length; i++) {\n if (Array.isArray(children[i])) {\n return Array.prototype.concat.apply([], children)\n }\n }\n return children\n}\n\n// 2. When the children contains constructs that always generated nested Arrays,\n// e.g. <template>, <slot>, v-for, or when the children is provided by user\n// with hand-written render functions / JSX. In such cases a full normalization\n// is needed to cater to all possible types of children values.\nfunction normalizeChildren (children) {\n return isPrimitive(children)\n ? [createTextVNode(children)]\n : Array.isArray(children)\n ? normalizeArrayChildren(children)\n : undefined\n}\n\nfunction isTextNode (node) {\n return isDef(node) && isDef(node.text) && isFalse(node.isComment)\n}\n\nfunction normalizeArrayChildren (children, nestedIndex) {\n var res = [];\n var i, c, lastIndex, last;\n for (i = 0; i < children.length; i++) {\n c = children[i];\n if (isUndef(c) || typeof c === 'boolean') { continue }\n lastIndex = res.length - 1;\n last = res[lastIndex];\n // nested\n if (Array.isArray(c)) {\n if (c.length > 0) {\n c = normalizeArrayChildren(c, ((nestedIndex || '') + \"_\" + i));\n // merge adjacent text nodes\n if (isTextNode(c[0]) && isTextNode(last)) {\n res[lastIndex] = createTextVNode(last.text + (c[0]).text);\n c.shift();\n }\n res.push.apply(res, c);\n }\n } else if (isPrimitive(c)) {\n if (isTextNode(last)) {\n // merge adjacent text nodes\n // this is necessary for SSR hydration because text nodes are\n // essentially merged when rendered to HTML strings\n res[lastIndex] = createTextVNode(last.text + c);\n } else if (c !== '') {\n // convert primitive to vnode\n res.push(createTextVNode(c));\n }\n } else {\n if (isTextNode(c) && isTextNode(last)) {\n // merge adjacent text nodes\n res[lastIndex] = createTextVNode(last.text + c.text);\n } else {\n // default key for nested array children (likely generated by v-for)\n if (isTrue(children._isVList) &&\n isDef(c.tag) &&\n isUndef(c.key) &&\n isDef(nestedIndex)) {\n c.key = \"__vlist\" + nestedIndex + \"_\" + i + \"__\";\n }\n res.push(c);\n }\n }\n }\n return res\n}\n\n/* */\n\nfunction initProvide (vm) {\n var provide = vm.$options.provide;\n if (provide) {\n vm._provided = typeof provide === 'function'\n ? provide.call(vm)\n : provide;\n }\n}\n\nfunction initInjections (vm) {\n var result = resolveInject(vm.$options.inject, vm);\n if (result) {\n toggleObserving(false);\n Object.keys(result).forEach(function (key) {\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n defineReactive$$1(vm, key, result[key], function () {\n warn(\n \"Avoid mutating an injected value directly since the changes will be \" +\n \"overwritten whenever the provided component re-renders. \" +\n \"injection being mutated: \\\"\" + key + \"\\\"\",\n vm\n );\n });\n } else {\n defineReactive$$1(vm, key, result[key]);\n }\n });\n toggleObserving(true);\n }\n}\n\nfunction resolveInject (inject, vm) {\n if (inject) {\n // inject is :any because flow is not smart enough to figure out cached\n var result = Object.create(null);\n var keys = hasSymbol\n ? Reflect.ownKeys(inject)\n : Object.keys(inject);\n\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n // #6574 in case the inject object is observed...\n if (key === '__ob__') { continue }\n var provideKey = inject[key].from;\n var source = vm;\n while (source) {\n if (source._provided && hasOwn(source._provided, provideKey)) {\n result[key] = source._provided[provideKey];\n break\n }\n source = source.$parent;\n }\n if (!source) {\n if ('default' in inject[key]) {\n var provideDefault = inject[key].default;\n result[key] = typeof provideDefault === 'function'\n ? provideDefault.call(vm)\n : provideDefault;\n } else if (process.env.NODE_ENV !== 'production') {\n warn((\"Injection \\\"\" + key + \"\\\" not found\"), vm);\n }\n }\n }\n return result\n }\n}\n\n/* */\n\n\n\n/**\n * Runtime helper for resolving raw children VNodes into a slot object.\n */\nfunction resolveSlots (\n children,\n context\n) {\n if (!children || !children.length) {\n return {}\n }\n var slots = {};\n for (var i = 0, l = children.length; i < l; i++) {\n var child = children[i];\n var data = child.data;\n // remove slot attribute if the node is resolved as a Vue slot node\n if (data && data.attrs && data.attrs.slot) {\n delete data.attrs.slot;\n }\n // named slots should only be respected if the vnode was rendered in the\n // same context.\n if ((child.context === context || child.fnContext === context) &&\n data && data.slot != null\n ) {\n var name = data.slot;\n var slot = (slots[name] || (slots[name] = []));\n if (child.tag === 'template') {\n slot.push.apply(slot, child.children || []);\n } else {\n slot.push(child);\n }\n } else {\n (slots.default || (slots.default = [])).push(child);\n }\n }\n // ignore slots that contains only whitespace\n for (var name$1 in slots) {\n if (slots[name$1].every(isWhitespace)) {\n delete slots[name$1];\n }\n }\n return slots\n}\n\nfunction isWhitespace (node) {\n return (node.isComment && !node.asyncFactory) || node.text === ' '\n}\n\n/* */\n\nfunction normalizeScopedSlots (\n slots,\n normalSlots,\n prevSlots\n) {\n var res;\n var hasNormalSlots = Object.keys(normalSlots).length > 0;\n var isStable = slots ? !!slots.$stable : !hasNormalSlots;\n var key = slots && slots.$key;\n if (!slots) {\n res = {};\n } else if (slots._normalized) {\n // fast path 1: child component re-render only, parent did not change\n return slots._normalized\n } else if (\n isStable &&\n prevSlots &&\n prevSlots !== emptyObject &&\n key === prevSlots.$key &&\n !hasNormalSlots &&\n !prevSlots.$hasNormal\n ) {\n // fast path 2: stable scoped slots w/ no normal slots to proxy,\n // only need to normalize once\n return prevSlots\n } else {\n res = {};\n for (var key$1 in slots) {\n if (slots[key$1] && key$1[0] !== '$') {\n res[key$1] = normalizeScopedSlot(normalSlots, key$1, slots[key$1]);\n }\n }\n }\n // expose normal slots on scopedSlots\n for (var key$2 in normalSlots) {\n if (!(key$2 in res)) {\n res[key$2] = proxyNormalSlot(normalSlots, key$2);\n }\n }\n // avoriaz seems to mock a non-extensible $scopedSlots object\n // and when that is passed down this would cause an error\n if (slots && Object.isExtensible(slots)) {\n (slots)._normalized = res;\n }\n def(res, '$stable', isStable);\n def(res, '$key', key);\n def(res, '$hasNormal', hasNormalSlots);\n return res\n}\n\nfunction normalizeScopedSlot(normalSlots, key, fn) {\n var normalized = function () {\n var res = arguments.length ? fn.apply(null, arguments) : fn({});\n res = res && typeof res === 'object' && !Array.isArray(res)\n ? [res] // single vnode\n : normalizeChildren(res);\n return res && (\n res.length === 0 ||\n (res.length === 1 && res[0].isComment) // #9658\n ) ? undefined\n : res\n };\n // this is a slot using the new v-slot syntax without scope. although it is\n // compiled as a scoped slot, render fn users would expect it to be present\n // on this.$slots because the usage is semantically a normal slot.\n if (fn.proxy) {\n Object.defineProperty(normalSlots, key, {\n get: normalized,\n enumerable: true,\n configurable: true\n });\n }\n return normalized\n}\n\nfunction proxyNormalSlot(slots, key) {\n return function () { return slots[key]; }\n}\n\n/* */\n\n/**\n * Runtime helper for rendering v-for lists.\n */\nfunction renderList (\n val,\n render\n) {\n var ret, i, l, keys, key;\n if (Array.isArray(val) || typeof val === 'string') {\n ret = new Array(val.length);\n for (i = 0, l = val.length; i < l; i++) {\n ret[i] = render(val[i], i);\n }\n } else if (typeof val === 'number') {\n ret = new Array(val);\n for (i = 0; i < val; i++) {\n ret[i] = render(i + 1, i);\n }\n } else if (isObject(val)) {\n if (hasSymbol && val[Symbol.iterator]) {\n ret = [];\n var iterator = val[Symbol.iterator]();\n var result = iterator.next();\n while (!result.done) {\n ret.push(render(result.value, ret.length));\n result = iterator.next();\n }\n } else {\n keys = Object.keys(val);\n ret = new Array(keys.length);\n for (i = 0, l = keys.length; i < l; i++) {\n key = keys[i];\n ret[i] = render(val[key], key, i);\n }\n }\n }\n if (!isDef(ret)) {\n ret = [];\n }\n (ret)._isVList = true;\n return ret\n}\n\n/* */\n\n/**\n * Runtime helper for rendering <slot>\n */\nfunction renderSlot (\n name,\n fallback,\n props,\n bindObject\n) {\n var scopedSlotFn = this.$scopedSlots[name];\n var nodes;\n if (scopedSlotFn) { // scoped slot\n props = props || {};\n if (bindObject) {\n if (process.env.NODE_ENV !== 'production' && !isObject(bindObject)) {\n warn(\n 'slot v-bind without argument expects an Object',\n this\n );\n }\n props = extend(extend({}, bindObject), props);\n }\n nodes = scopedSlotFn(props) || fallback;\n } else {\n nodes = this.$slots[name] || fallback;\n }\n\n var target = props && props.slot;\n if (target) {\n return this.$createElement('template', { slot: target }, nodes)\n } else {\n return nodes\n }\n}\n\n/* */\n\n/**\n * Runtime helper for resolving filters\n */\nfunction resolveFilter (id) {\n return resolveAsset(this.$options, 'filters', id, true) || identity\n}\n\n/* */\n\nfunction isKeyNotMatch (expect, actual) {\n if (Array.isArray(expect)) {\n return expect.indexOf(actual) === -1\n } else {\n return expect !== actual\n }\n}\n\n/**\n * Runtime helper for checking keyCodes from config.\n * exposed as Vue.prototype._k\n * passing in eventKeyName as last argument separately for backwards compat\n */\nfunction checkKeyCodes (\n eventKeyCode,\n key,\n builtInKeyCode,\n eventKeyName,\n builtInKeyName\n) {\n var mappedKeyCode = config.keyCodes[key] || builtInKeyCode;\n if (builtInKeyName && eventKeyName && !config.keyCodes[key]) {\n return isKeyNotMatch(builtInKeyName, eventKeyName)\n } else if (mappedKeyCode) {\n return isKeyNotMatch(mappedKeyCode, eventKeyCode)\n } else if (eventKeyName) {\n return hyphenate(eventKeyName) !== key\n }\n}\n\n/* */\n\n/**\n * Runtime helper for merging v-bind=\"object\" into a VNode's data.\n */\nfunction bindObjectProps (\n data,\n tag,\n value,\n asProp,\n isSync\n) {\n if (value) {\n if (!isObject(value)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'v-bind without argument expects an Object or Array value',\n this\n );\n } else {\n if (Array.isArray(value)) {\n value = toObject(value);\n }\n var hash;\n var loop = function ( key ) {\n if (\n key === 'class' ||\n key === 'style' ||\n isReservedAttribute(key)\n ) {\n hash = data;\n } else {\n var type = data.attrs && data.attrs.type;\n hash = asProp || config.mustUseProp(tag, type, key)\n ? data.domProps || (data.domProps = {})\n : data.attrs || (data.attrs = {});\n }\n var camelizedKey = camelize(key);\n var hyphenatedKey = hyphenate(key);\n if (!(camelizedKey in hash) && !(hyphenatedKey in hash)) {\n hash[key] = value[key];\n\n if (isSync) {\n var on = data.on || (data.on = {});\n on[(\"update:\" + key)] = function ($event) {\n value[key] = $event;\n };\n }\n }\n };\n\n for (var key in value) loop( key );\n }\n }\n return data\n}\n\n/* */\n\n/**\n * Runtime helper for rendering static trees.\n */\nfunction renderStatic (\n index,\n isInFor\n) {\n var cached = this._staticTrees || (this._staticTrees = []);\n var tree = cached[index];\n // if has already-rendered static tree and not inside v-for,\n // we can reuse the same tree.\n if (tree && !isInFor) {\n return tree\n }\n // otherwise, render a fresh tree.\n tree = cached[index] = this.$options.staticRenderFns[index].call(\n this._renderProxy,\n null,\n this // for render fns generated for functional component templates\n );\n markStatic(tree, (\"__static__\" + index), false);\n return tree\n}\n\n/**\n * Runtime helper for v-once.\n * Effectively it means marking the node as static with a unique key.\n */\nfunction markOnce (\n tree,\n index,\n key\n) {\n markStatic(tree, (\"__once__\" + index + (key ? (\"_\" + key) : \"\")), true);\n return tree\n}\n\nfunction markStatic (\n tree,\n key,\n isOnce\n) {\n if (Array.isArray(tree)) {\n for (var i = 0; i < tree.length; i++) {\n if (tree[i] && typeof tree[i] !== 'string') {\n markStaticNode(tree[i], (key + \"_\" + i), isOnce);\n }\n }\n } else {\n markStaticNode(tree, key, isOnce);\n }\n}\n\nfunction markStaticNode (node, key, isOnce) {\n node.isStatic = true;\n node.key = key;\n node.isOnce = isOnce;\n}\n\n/* */\n\nfunction bindObjectListeners (data, value) {\n if (value) {\n if (!isPlainObject(value)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'v-on without argument expects an Object value',\n this\n );\n } else {\n var on = data.on = data.on ? extend({}, data.on) : {};\n for (var key in value) {\n var existing = on[key];\n var ours = value[key];\n on[key] = existing ? [].concat(existing, ours) : ours;\n }\n }\n }\n return data\n}\n\n/* */\n\nfunction resolveScopedSlots (\n fns, // see flow/vnode\n res,\n // the following are added in 2.6\n hasDynamicKeys,\n contentHashKey\n) {\n res = res || { $stable: !hasDynamicKeys };\n for (var i = 0; i < fns.length; i++) {\n var slot = fns[i];\n if (Array.isArray(slot)) {\n resolveScopedSlots(slot, res, hasDynamicKeys);\n } else if (slot) {\n // marker for reverse proxying v-slot without scope on this.$slots\n if (slot.proxy) {\n slot.fn.proxy = true;\n }\n res[slot.key] = slot.fn;\n }\n }\n if (contentHashKey) {\n (res).$key = contentHashKey;\n }\n return res\n}\n\n/* */\n\nfunction bindDynamicKeys (baseObj, values) {\n for (var i = 0; i < values.length; i += 2) {\n var key = values[i];\n if (typeof key === 'string' && key) {\n baseObj[values[i]] = values[i + 1];\n } else if (process.env.NODE_ENV !== 'production' && key !== '' && key !== null) {\n // null is a special value for explicitly removing a binding\n warn(\n (\"Invalid value for dynamic directive argument (expected string or null): \" + key),\n this\n );\n }\n }\n return baseObj\n}\n\n// helper to dynamically append modifier runtime markers to event names.\n// ensure only append when value is already string, otherwise it will be cast\n// to string and cause the type check to miss.\nfunction prependModifier (value, symbol) {\n return typeof value === 'string' ? symbol + value : value\n}\n\n/* */\n\nfunction installRenderHelpers (target) {\n target._o = markOnce;\n target._n = toNumber;\n target._s = toString;\n target._l = renderList;\n target._t = renderSlot;\n target._q = looseEqual;\n target._i = looseIndexOf;\n target._m = renderStatic;\n target._f = resolveFilter;\n target._k = checkKeyCodes;\n target._b = bindObjectProps;\n target._v = createTextVNode;\n target._e = createEmptyVNode;\n target._u = resolveScopedSlots;\n target._g = bindObjectListeners;\n target._d = bindDynamicKeys;\n target._p = prependModifier;\n}\n\n/* */\n\nfunction FunctionalRenderContext (\n data,\n props,\n children,\n parent,\n Ctor\n) {\n var this$1 = this;\n\n var options = Ctor.options;\n // ensure the createElement function in functional components\n // gets a unique context - this is necessary for correct named slot check\n var contextVm;\n if (hasOwn(parent, '_uid')) {\n contextVm = Object.create(parent);\n // $flow-disable-line\n contextVm._original = parent;\n } else {\n // the context vm passed in is a functional context as well.\n // in this case we want to make sure we are able to get a hold to the\n // real context instance.\n contextVm = parent;\n // $flow-disable-line\n parent = parent._original;\n }\n var isCompiled = isTrue(options._compiled);\n var needNormalization = !isCompiled;\n\n this.data = data;\n this.props = props;\n this.children = children;\n this.parent = parent;\n this.listeners = data.on || emptyObject;\n this.injections = resolveInject(options.inject, parent);\n this.slots = function () {\n if (!this$1.$slots) {\n normalizeScopedSlots(\n data.scopedSlots,\n this$1.$slots = resolveSlots(children, parent)\n );\n }\n return this$1.$slots\n };\n\n Object.defineProperty(this, 'scopedSlots', ({\n enumerable: true,\n get: function get () {\n return normalizeScopedSlots(data.scopedSlots, this.slots())\n }\n }));\n\n // support for compiled functional template\n if (isCompiled) {\n // exposing $options for renderStatic()\n this.$options = options;\n // pre-resolve slots for renderSlot()\n this.$slots = this.slots();\n this.$scopedSlots = normalizeScopedSlots(data.scopedSlots, this.$slots);\n }\n\n if (options._scopeId) {\n this._c = function (a, b, c, d) {\n var vnode = createElement(contextVm, a, b, c, d, needNormalization);\n if (vnode && !Array.isArray(vnode)) {\n vnode.fnScopeId = options._scopeId;\n vnode.fnContext = parent;\n }\n return vnode\n };\n } else {\n this._c = function (a, b, c, d) { return createElement(contextVm, a, b, c, d, needNormalization); };\n }\n}\n\ninstallRenderHelpers(FunctionalRenderContext.prototype);\n\nfunction createFunctionalComponent (\n Ctor,\n propsData,\n data,\n contextVm,\n children\n) {\n var options = Ctor.options;\n var props = {};\n var propOptions = options.props;\n if (isDef(propOptions)) {\n for (var key in propOptions) {\n props[key] = validateProp(key, propOptions, propsData || emptyObject);\n }\n } else {\n if (isDef(data.attrs)) { mergeProps(props, data.attrs); }\n if (isDef(data.props)) { mergeProps(props, data.props); }\n }\n\n var renderContext = new FunctionalRenderContext(\n data,\n props,\n children,\n contextVm,\n Ctor\n );\n\n var vnode = options.render.call(null, renderContext._c, renderContext);\n\n if (vnode instanceof VNode) {\n return cloneAndMarkFunctionalResult(vnode, data, renderContext.parent, options, renderContext)\n } else if (Array.isArray(vnode)) {\n var vnodes = normalizeChildren(vnode) || [];\n var res = new Array(vnodes.length);\n for (var i = 0; i < vnodes.length; i++) {\n res[i] = cloneAndMarkFunctionalResult(vnodes[i], data, renderContext.parent, options, renderContext);\n }\n return res\n }\n}\n\nfunction cloneAndMarkFunctionalResult (vnode, data, contextVm, options, renderContext) {\n // #7817 clone node before setting fnContext, otherwise if the node is reused\n // (e.g. it was from a cached normal slot) the fnContext causes named slots\n // that should not be matched to match.\n var clone = cloneVNode(vnode);\n clone.fnContext = contextVm;\n clone.fnOptions = options;\n if (process.env.NODE_ENV !== 'production') {\n (clone.devtoolsMeta = clone.devtoolsMeta || {}).renderContext = renderContext;\n }\n if (data.slot) {\n (clone.data || (clone.data = {})).slot = data.slot;\n }\n return clone\n}\n\nfunction mergeProps (to, from) {\n for (var key in from) {\n to[camelize(key)] = from[key];\n }\n}\n\n/* */\n\n/* */\n\n/* */\n\n/* */\n\n// inline hooks to be invoked on component VNodes during patch\nvar componentVNodeHooks = {\n init: function init (vnode, hydrating) {\n if (\n vnode.componentInstance &&\n !vnode.componentInstance._isDestroyed &&\n vnode.data.keepAlive\n ) {\n // kept-alive components, treat as a patch\n var mountedNode = vnode; // work around flow\n componentVNodeHooks.prepatch(mountedNode, mountedNode);\n } else {\n var child = vnode.componentInstance = createComponentInstanceForVnode(\n vnode,\n activeInstance\n );\n child.$mount(hydrating ? vnode.elm : undefined, hydrating);\n }\n },\n\n prepatch: function prepatch (oldVnode, vnode) {\n var options = vnode.componentOptions;\n var child = vnode.componentInstance = oldVnode.componentInstance;\n updateChildComponent(\n child,\n options.propsData, // updated props\n options.listeners, // updated listeners\n vnode, // new parent vnode\n options.children // new children\n );\n },\n\n insert: function insert (vnode) {\n var context = vnode.context;\n var componentInstance = vnode.componentInstance;\n if (!componentInstance._isMounted) {\n componentInstance._isMounted = true;\n callHook(componentInstance, 'mounted');\n }\n if (vnode.data.keepAlive) {\n if (context._isMounted) {\n // vue-router#1212\n // During updates, a kept-alive component's child components may\n // change, so directly walking the tree here may call activated hooks\n // on incorrect children. Instead we push them into a queue which will\n // be processed after the whole patch process ended.\n queueActivatedComponent(componentInstance);\n } else {\n activateChildComponent(componentInstance, true /* direct */);\n }\n }\n },\n\n destroy: function destroy (vnode) {\n var componentInstance = vnode.componentInstance;\n if (!componentInstance._isDestroyed) {\n if (!vnode.data.keepAlive) {\n componentInstance.$destroy();\n } else {\n deactivateChildComponent(componentInstance, true /* direct */);\n }\n }\n }\n};\n\nvar hooksToMerge = Object.keys(componentVNodeHooks);\n\nfunction createComponent (\n Ctor,\n data,\n context,\n children,\n tag\n) {\n if (isUndef(Ctor)) {\n return\n }\n\n var baseCtor = context.$options._base;\n\n // plain options object: turn it into a constructor\n if (isObject(Ctor)) {\n Ctor = baseCtor.extend(Ctor);\n }\n\n // if at this stage it's not a constructor or an async component factory,\n // reject.\n if (typeof Ctor !== 'function') {\n if (process.env.NODE_ENV !== 'production') {\n warn((\"Invalid Component definition: \" + (String(Ctor))), context);\n }\n return\n }\n\n // async component\n var asyncFactory;\n if (isUndef(Ctor.cid)) {\n asyncFactory = Ctor;\n Ctor = resolveAsyncComponent(asyncFactory, baseCtor);\n if (Ctor === undefined) {\n // return a placeholder node for async component, which is rendered\n // as a comment node but preserves all the raw information for the node.\n // the information will be used for async server-rendering and hydration.\n return createAsyncPlaceholder(\n asyncFactory,\n data,\n context,\n children,\n tag\n )\n }\n }\n\n data = data || {};\n\n // resolve constructor options in case global mixins are applied after\n // component constructor creation\n resolveConstructorOptions(Ctor);\n\n // transform component v-model data into props & events\n if (isDef(data.model)) {\n transformModel(Ctor.options, data);\n }\n\n // extract props\n var propsData = extractPropsFromVNodeData(data, Ctor, tag);\n\n // functional component\n if (isTrue(Ctor.options.functional)) {\n return createFunctionalComponent(Ctor, propsData, data, context, children)\n }\n\n // extract listeners, since these needs to be treated as\n // child component listeners instead of DOM listeners\n var listeners = data.on;\n // replace with listeners with .native modifier\n // so it gets processed during parent component patch.\n data.on = data.nativeOn;\n\n if (isTrue(Ctor.options.abstract)) {\n // abstract components do not keep anything\n // other than props & listeners & slot\n\n // work around flow\n var slot = data.slot;\n data = {};\n if (slot) {\n data.slot = slot;\n }\n }\n\n // install component management hooks onto the placeholder node\n installComponentHooks(data);\n\n // return a placeholder vnode\n var name = Ctor.options.name || tag;\n var vnode = new VNode(\n (\"vue-component-\" + (Ctor.cid) + (name ? (\"-\" + name) : '')),\n data, undefined, undefined, undefined, context,\n { Ctor: Ctor, propsData: propsData, listeners: listeners, tag: tag, children: children },\n asyncFactory\n );\n\n return vnode\n}\n\nfunction createComponentInstanceForVnode (\n vnode, // we know it's MountedComponentVNode but flow doesn't\n parent // activeInstance in lifecycle state\n) {\n var options = {\n _isComponent: true,\n _parentVnode: vnode,\n parent: parent\n };\n // check inline-template render functions\n var inlineTemplate = vnode.data.inlineTemplate;\n if (isDef(inlineTemplate)) {\n options.render = inlineTemplate.render;\n options.staticRenderFns = inlineTemplate.staticRenderFns;\n }\n return new vnode.componentOptions.Ctor(options)\n}\n\nfunction installComponentHooks (data) {\n var hooks = data.hook || (data.hook = {});\n for (var i = 0; i < hooksToMerge.length; i++) {\n var key = hooksToMerge[i];\n var existing = hooks[key];\n var toMerge = componentVNodeHooks[key];\n if (existing !== toMerge && !(existing && existing._merged)) {\n hooks[key] = existing ? mergeHook$1(toMerge, existing) : toMerge;\n }\n }\n}\n\nfunction mergeHook$1 (f1, f2) {\n var merged = function (a, b) {\n // flow complains about extra args which is why we use any\n f1(a, b);\n f2(a, b);\n };\n merged._merged = true;\n return merged\n}\n\n// transform component v-model info (value and callback) into\n// prop and event handler respectively.\nfunction transformModel (options, data) {\n var prop = (options.model && options.model.prop) || 'value';\n var event = (options.model && options.model.event) || 'input'\n ;(data.attrs || (data.attrs = {}))[prop] = data.model.value;\n var on = data.on || (data.on = {});\n var existing = on[event];\n var callback = data.model.callback;\n if (isDef(existing)) {\n if (\n Array.isArray(existing)\n ? existing.indexOf(callback) === -1\n : existing !== callback\n ) {\n on[event] = [callback].concat(existing);\n }\n } else {\n on[event] = callback;\n }\n}\n\n/* */\n\nvar SIMPLE_NORMALIZE = 1;\nvar ALWAYS_NORMALIZE = 2;\n\n// wrapper function for providing a more flexible interface\n// without getting yelled at by flow\nfunction createElement (\n context,\n tag,\n data,\n children,\n normalizationType,\n alwaysNormalize\n) {\n if (Array.isArray(data) || isPrimitive(data)) {\n normalizationType = children;\n children = data;\n data = undefined;\n }\n if (isTrue(alwaysNormalize)) {\n normalizationType = ALWAYS_NORMALIZE;\n }\n return _createElement(context, tag, data, children, normalizationType)\n}\n\nfunction _createElement (\n context,\n tag,\n data,\n children,\n normalizationType\n) {\n if (isDef(data) && isDef((data).__ob__)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Avoid using observed data object as vnode data: \" + (JSON.stringify(data)) + \"\\n\" +\n 'Always create fresh vnode data objects in each render!',\n context\n );\n return createEmptyVNode()\n }\n // object syntax in v-bind\n if (isDef(data) && isDef(data.is)) {\n tag = data.is;\n }\n if (!tag) {\n // in case of component :is set to falsy value\n return createEmptyVNode()\n }\n // warn against non-primitive key\n if (process.env.NODE_ENV !== 'production' &&\n isDef(data) && isDef(data.key) && !isPrimitive(data.key)\n ) {\n {\n warn(\n 'Avoid using non-primitive value as key, ' +\n 'use string/number value instead.',\n context\n );\n }\n }\n // support single function children as default scoped slot\n if (Array.isArray(children) &&\n typeof children[0] === 'function'\n ) {\n data = data || {};\n data.scopedSlots = { default: children[0] };\n children.length = 0;\n }\n if (normalizationType === ALWAYS_NORMALIZE) {\n children = normalizeChildren(children);\n } else if (normalizationType === SIMPLE_NORMALIZE) {\n children = simpleNormalizeChildren(children);\n }\n var vnode, ns;\n if (typeof tag === 'string') {\n var Ctor;\n ns = (context.$vnode && context.$vnode.ns) || config.getTagNamespace(tag);\n if (config.isReservedTag(tag)) {\n // platform built-in elements\n if (process.env.NODE_ENV !== 'production' && isDef(data) && isDef(data.nativeOn)) {\n warn(\n (\"The .native modifier for v-on is only valid on components but it was used on <\" + tag + \">.\"),\n context\n );\n }\n vnode = new VNode(\n config.parsePlatformTagName(tag), data, children,\n undefined, undefined, context\n );\n } else if ((!data || !data.pre) && isDef(Ctor = resolveAsset(context.$options, 'components', tag))) {\n // component\n vnode = createComponent(Ctor, data, context, children, tag);\n } else {\n // unknown or unlisted namespaced elements\n // check at runtime because it may get assigned a namespace when its\n // parent normalizes children\n vnode = new VNode(\n tag, data, children,\n undefined, undefined, context\n );\n }\n } else {\n // direct component options / constructor\n vnode = createComponent(tag, data, context, children);\n }\n if (Array.isArray(vnode)) {\n return vnode\n } else if (isDef(vnode)) {\n if (isDef(ns)) { applyNS(vnode, ns); }\n if (isDef(data)) { registerDeepBindings(data); }\n return vnode\n } else {\n return createEmptyVNode()\n }\n}\n\nfunction applyNS (vnode, ns, force) {\n vnode.ns = ns;\n if (vnode.tag === 'foreignObject') {\n // use default namespace inside foreignObject\n ns = undefined;\n force = true;\n }\n if (isDef(vnode.children)) {\n for (var i = 0, l = vnode.children.length; i < l; i++) {\n var child = vnode.children[i];\n if (isDef(child.tag) && (\n isUndef(child.ns) || (isTrue(force) && child.tag !== 'svg'))) {\n applyNS(child, ns, force);\n }\n }\n }\n}\n\n// ref #5318\n// necessary to ensure parent re-render when deep bindings like :style and\n// :class are used on slot nodes\nfunction registerDeepBindings (data) {\n if (isObject(data.style)) {\n traverse(data.style);\n }\n if (isObject(data.class)) {\n traverse(data.class);\n }\n}\n\n/* */\n\nfunction initRender (vm) {\n vm._vnode = null; // the root of the child tree\n vm._staticTrees = null; // v-once cached trees\n var options = vm.$options;\n var parentVnode = vm.$vnode = options._parentVnode; // the placeholder node in parent tree\n var renderContext = parentVnode && parentVnode.context;\n vm.$slots = resolveSlots(options._renderChildren, renderContext);\n vm.$scopedSlots = emptyObject;\n // bind the createElement fn to this instance\n // so that we get proper render context inside it.\n // args order: tag, data, children, normalizationType, alwaysNormalize\n // internal version is used by render functions compiled from templates\n vm._c = function (a, b, c, d) { return createElement(vm, a, b, c, d, false); };\n // normalization is always applied for the public version, used in\n // user-written render functions.\n vm.$createElement = function (a, b, c, d) { return createElement(vm, a, b, c, d, true); };\n\n // $attrs & $listeners are exposed for easier HOC creation.\n // they need to be reactive so that HOCs using them are always updated\n var parentData = parentVnode && parentVnode.data;\n\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n defineReactive$$1(vm, '$attrs', parentData && parentData.attrs || emptyObject, function () {\n !isUpdatingChildComponent && warn(\"$attrs is readonly.\", vm);\n }, true);\n defineReactive$$1(vm, '$listeners', options._parentListeners || emptyObject, function () {\n !isUpdatingChildComponent && warn(\"$listeners is readonly.\", vm);\n }, true);\n } else {\n defineReactive$$1(vm, '$attrs', parentData && parentData.attrs || emptyObject, null, true);\n defineReactive$$1(vm, '$listeners', options._parentListeners || emptyObject, null, true);\n }\n}\n\nvar currentRenderingInstance = null;\n\nfunction renderMixin (Vue) {\n // install runtime convenience helpers\n installRenderHelpers(Vue.prototype);\n\n Vue.prototype.$nextTick = function (fn) {\n return nextTick(fn, this)\n };\n\n Vue.prototype._render = function () {\n var vm = this;\n var ref = vm.$options;\n var render = ref.render;\n var _parentVnode = ref._parentVnode;\n\n if (_parentVnode) {\n vm.$scopedSlots = normalizeScopedSlots(\n _parentVnode.data.scopedSlots,\n vm.$slots,\n vm.$scopedSlots\n );\n }\n\n // set parent vnode. this allows render functions to have access\n // to the data on the placeholder node.\n vm.$vnode = _parentVnode;\n // render self\n var vnode;\n try {\n // There's no need to maintain a stack because all render fns are called\n // separately from one another. Nested component's render fns are called\n // when parent component is patched.\n currentRenderingInstance = vm;\n vnode = render.call(vm._renderProxy, vm.$createElement);\n } catch (e) {\n handleError(e, vm, \"render\");\n // return error render result,\n // or previous vnode to prevent render error causing blank component\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production' && vm.$options.renderError) {\n try {\n vnode = vm.$options.renderError.call(vm._renderProxy, vm.$createElement, e);\n } catch (e) {\n handleError(e, vm, \"renderError\");\n vnode = vm._vnode;\n }\n } else {\n vnode = vm._vnode;\n }\n } finally {\n currentRenderingInstance = null;\n }\n // if the returned array contains only a single node, allow it\n if (Array.isArray(vnode) && vnode.length === 1) {\n vnode = vnode[0];\n }\n // return empty vnode in case the render function errored out\n if (!(vnode instanceof VNode)) {\n if (process.env.NODE_ENV !== 'production' && Array.isArray(vnode)) {\n warn(\n 'Multiple root nodes returned from render function. Render function ' +\n 'should return a single root node.',\n vm\n );\n }\n vnode = createEmptyVNode();\n }\n // set parent\n vnode.parent = _parentVnode;\n return vnode\n };\n}\n\n/* */\n\nfunction ensureCtor (comp, base) {\n if (\n comp.__esModule ||\n (hasSymbol && comp[Symbol.toStringTag] === 'Module')\n ) {\n comp = comp.default;\n }\n return isObject(comp)\n ? base.extend(comp)\n : comp\n}\n\nfunction createAsyncPlaceholder (\n factory,\n data,\n context,\n children,\n tag\n) {\n var node = createEmptyVNode();\n node.asyncFactory = factory;\n node.asyncMeta = { data: data, context: context, children: children, tag: tag };\n return node\n}\n\nfunction resolveAsyncComponent (\n factory,\n baseCtor\n) {\n if (isTrue(factory.error) && isDef(factory.errorComp)) {\n return factory.errorComp\n }\n\n if (isDef(factory.resolved)) {\n return factory.resolved\n }\n\n var owner = currentRenderingInstance;\n if (owner && isDef(factory.owners) && factory.owners.indexOf(owner) === -1) {\n // already pending\n factory.owners.push(owner);\n }\n\n if (isTrue(factory.loading) && isDef(factory.loadingComp)) {\n return factory.loadingComp\n }\n\n if (owner && !isDef(factory.owners)) {\n var owners = factory.owners = [owner];\n var sync = true;\n var timerLoading = null;\n var timerTimeout = null\n\n ;(owner).$on('hook:destroyed', function () { return remove(owners, owner); });\n\n var forceRender = function (renderCompleted) {\n for (var i = 0, l = owners.length; i < l; i++) {\n (owners[i]).$forceUpdate();\n }\n\n if (renderCompleted) {\n owners.length = 0;\n if (timerLoading !== null) {\n clearTimeout(timerLoading);\n timerLoading = null;\n }\n if (timerTimeout !== null) {\n clearTimeout(timerTimeout);\n timerTimeout = null;\n }\n }\n };\n\n var resolve = once(function (res) {\n // cache resolved\n factory.resolved = ensureCtor(res, baseCtor);\n // invoke callbacks only if this is not a synchronous resolve\n // (async resolves are shimmed as synchronous during SSR)\n if (!sync) {\n forceRender(true);\n } else {\n owners.length = 0;\n }\n });\n\n var reject = once(function (reason) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Failed to resolve async component: \" + (String(factory)) +\n (reason ? (\"\\nReason: \" + reason) : '')\n );\n if (isDef(factory.errorComp)) {\n factory.error = true;\n forceRender(true);\n }\n });\n\n var res = factory(resolve, reject);\n\n if (isObject(res)) {\n if (isPromise(res)) {\n // () => Promise\n if (isUndef(factory.resolved)) {\n res.then(resolve, reject);\n }\n } else if (isPromise(res.component)) {\n res.component.then(resolve, reject);\n\n if (isDef(res.error)) {\n factory.errorComp = ensureCtor(res.error, baseCtor);\n }\n\n if (isDef(res.loading)) {\n factory.loadingComp = ensureCtor(res.loading, baseCtor);\n if (res.delay === 0) {\n factory.loading = true;\n } else {\n timerLoading = setTimeout(function () {\n timerLoading = null;\n if (isUndef(factory.resolved) && isUndef(factory.error)) {\n factory.loading = true;\n forceRender(false);\n }\n }, res.delay || 200);\n }\n }\n\n if (isDef(res.timeout)) {\n timerTimeout = setTimeout(function () {\n timerTimeout = null;\n if (isUndef(factory.resolved)) {\n reject(\n process.env.NODE_ENV !== 'production'\n ? (\"timeout (\" + (res.timeout) + \"ms)\")\n : null\n );\n }\n }, res.timeout);\n }\n }\n }\n\n sync = false;\n // return in case resolved synchronously\n return factory.loading\n ? factory.loadingComp\n : factory.resolved\n }\n}\n\n/* */\n\nfunction isAsyncPlaceholder (node) {\n return node.isComment && node.asyncFactory\n}\n\n/* */\n\nfunction getFirstComponentChild (children) {\n if (Array.isArray(children)) {\n for (var i = 0; i < children.length; i++) {\n var c = children[i];\n if (isDef(c) && (isDef(c.componentOptions) || isAsyncPlaceholder(c))) {\n return c\n }\n }\n }\n}\n\n/* */\n\n/* */\n\nfunction initEvents (vm) {\n vm._events = Object.create(null);\n vm._hasHookEvent = false;\n // init parent attached events\n var listeners = vm.$options._parentListeners;\n if (listeners) {\n updateComponentListeners(vm, listeners);\n }\n}\n\nvar target;\n\nfunction add (event, fn) {\n target.$on(event, fn);\n}\n\nfunction remove$1 (event, fn) {\n target.$off(event, fn);\n}\n\nfunction createOnceHandler (event, fn) {\n var _target = target;\n return function onceHandler () {\n var res = fn.apply(null, arguments);\n if (res !== null) {\n _target.$off(event, onceHandler);\n }\n }\n}\n\nfunction updateComponentListeners (\n vm,\n listeners,\n oldListeners\n) {\n target = vm;\n updateListeners(listeners, oldListeners || {}, add, remove$1, createOnceHandler, vm);\n target = undefined;\n}\n\nfunction eventsMixin (Vue) {\n var hookRE = /^hook:/;\n Vue.prototype.$on = function (event, fn) {\n var vm = this;\n if (Array.isArray(event)) {\n for (var i = 0, l = event.length; i < l; i++) {\n vm.$on(event[i], fn);\n }\n } else {\n (vm._events[event] || (vm._events[event] = [])).push(fn);\n // optimize hook:event cost by using a boolean flag marked at registration\n // instead of a hash lookup\n if (hookRE.test(event)) {\n vm._hasHookEvent = true;\n }\n }\n return vm\n };\n\n Vue.prototype.$once = function (event, fn) {\n var vm = this;\n function on () {\n vm.$off(event, on);\n fn.apply(vm, arguments);\n }\n on.fn = fn;\n vm.$on(event, on);\n return vm\n };\n\n Vue.prototype.$off = function (event, fn) {\n var vm = this;\n // all\n if (!arguments.length) {\n vm._events = Object.create(null);\n return vm\n }\n // array of events\n if (Array.isArray(event)) {\n for (var i$1 = 0, l = event.length; i$1 < l; i$1++) {\n vm.$off(event[i$1], fn);\n }\n return vm\n }\n // specific event\n var cbs = vm._events[event];\n if (!cbs) {\n return vm\n }\n if (!fn) {\n vm._events[event] = null;\n return vm\n }\n // specific handler\n var cb;\n var i = cbs.length;\n while (i--) {\n cb = cbs[i];\n if (cb === fn || cb.fn === fn) {\n cbs.splice(i, 1);\n break\n }\n }\n return vm\n };\n\n Vue.prototype.$emit = function (event) {\n var vm = this;\n if (process.env.NODE_ENV !== 'production') {\n var lowerCaseEvent = event.toLowerCase();\n if (lowerCaseEvent !== event && vm._events[lowerCaseEvent]) {\n tip(\n \"Event \\\"\" + lowerCaseEvent + \"\\\" is emitted in component \" +\n (formatComponentName(vm)) + \" but the handler is registered for \\\"\" + event + \"\\\". \" +\n \"Note that HTML attributes are case-insensitive and you cannot use \" +\n \"v-on to listen to camelCase events when using in-DOM templates. \" +\n \"You should probably use \\\"\" + (hyphenate(event)) + \"\\\" instead of \\\"\" + event + \"\\\".\"\n );\n }\n }\n var cbs = vm._events[event];\n if (cbs) {\n cbs = cbs.length > 1 ? toArray(cbs) : cbs;\n var args = toArray(arguments, 1);\n var info = \"event handler for \\\"\" + event + \"\\\"\";\n for (var i = 0, l = cbs.length; i < l; i++) {\n invokeWithErrorHandling(cbs[i], vm, args, vm, info);\n }\n }\n return vm\n };\n}\n\n/* */\n\nvar activeInstance = null;\nvar isUpdatingChildComponent = false;\n\nfunction setActiveInstance(vm) {\n var prevActiveInstance = activeInstance;\n activeInstance = vm;\n return function () {\n activeInstance = prevActiveInstance;\n }\n}\n\nfunction initLifecycle (vm) {\n var options = vm.$options;\n\n // locate first non-abstract parent\n var parent = options.parent;\n if (parent && !options.abstract) {\n while (parent.$options.abstract && parent.$parent) {\n parent = parent.$parent;\n }\n parent.$children.push(vm);\n }\n\n vm.$parent = parent;\n vm.$root = parent ? parent.$root : vm;\n\n vm.$children = [];\n vm.$refs = {};\n\n vm._watcher = null;\n vm._inactive = null;\n vm._directInactive = false;\n vm._isMounted = false;\n vm._isDestroyed = false;\n vm._isBeingDestroyed = false;\n}\n\nfunction lifecycleMixin (Vue) {\n Vue.prototype._update = function (vnode, hydrating) {\n var vm = this;\n var prevEl = vm.$el;\n var prevVnode = vm._vnode;\n var restoreActiveInstance = setActiveInstance(vm);\n vm._vnode = vnode;\n // Vue.prototype.__patch__ is injected in entry points\n // based on the rendering backend used.\n if (!prevVnode) {\n // initial render\n vm.$el = vm.__patch__(vm.$el, vnode, hydrating, false /* removeOnly */);\n } else {\n // updates\n vm.$el = vm.__patch__(prevVnode, vnode);\n }\n restoreActiveInstance();\n // update __vue__ reference\n if (prevEl) {\n prevEl.__vue__ = null;\n }\n if (vm.$el) {\n vm.$el.__vue__ = vm;\n }\n // if parent is an HOC, update its $el as well\n if (vm.$vnode && vm.$parent && vm.$vnode === vm.$parent._vnode) {\n vm.$parent.$el = vm.$el;\n }\n // updated hook is called by the scheduler to ensure that children are\n // updated in a parent's updated hook.\n };\n\n Vue.prototype.$forceUpdate = function () {\n var vm = this;\n if (vm._watcher) {\n vm._watcher.update();\n }\n };\n\n Vue.prototype.$destroy = function () {\n var vm = this;\n if (vm._isBeingDestroyed) {\n return\n }\n callHook(vm, 'beforeDestroy');\n vm._isBeingDestroyed = true;\n // remove self from parent\n var parent = vm.$parent;\n if (parent && !parent._isBeingDestroyed && !vm.$options.abstract) {\n remove(parent.$children, vm);\n }\n // teardown watchers\n if (vm._watcher) {\n vm._watcher.teardown();\n }\n var i = vm._watchers.length;\n while (i--) {\n vm._watchers[i].teardown();\n }\n // remove reference from data ob\n // frozen object may not have observer.\n if (vm._data.__ob__) {\n vm._data.__ob__.vmCount--;\n }\n // call the last hook...\n vm._isDestroyed = true;\n // invoke destroy hooks on current rendered tree\n vm.__patch__(vm._vnode, null);\n // fire destroyed hook\n callHook(vm, 'destroyed');\n // turn off all instance listeners.\n vm.$off();\n // remove __vue__ reference\n if (vm.$el) {\n vm.$el.__vue__ = null;\n }\n // release circular reference (#6759)\n if (vm.$vnode) {\n vm.$vnode.parent = null;\n }\n };\n}\n\nfunction mountComponent (\n vm,\n el,\n hydrating\n) {\n vm.$el = el;\n if (!vm.$options.render) {\n vm.$options.render = createEmptyVNode;\n if (process.env.NODE_ENV !== 'production') {\n /* istanbul ignore if */\n if ((vm.$options.template && vm.$options.template.charAt(0) !== '#') ||\n vm.$options.el || el) {\n warn(\n 'You are using the runtime-only build of Vue where the template ' +\n 'compiler is not available. Either pre-compile the templates into ' +\n 'render functions, or use the compiler-included build.',\n vm\n );\n } else {\n warn(\n 'Failed to mount component: template or render function not defined.',\n vm\n );\n }\n }\n }\n callHook(vm, 'beforeMount');\n\n var updateComponent;\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n updateComponent = function () {\n var name = vm._name;\n var id = vm._uid;\n var startTag = \"vue-perf-start:\" + id;\n var endTag = \"vue-perf-end:\" + id;\n\n mark(startTag);\n var vnode = vm._render();\n mark(endTag);\n measure((\"vue \" + name + \" render\"), startTag, endTag);\n\n mark(startTag);\n vm._update(vnode, hydrating);\n mark(endTag);\n measure((\"vue \" + name + \" patch\"), startTag, endTag);\n };\n } else {\n updateComponent = function () {\n vm._update(vm._render(), hydrating);\n };\n }\n\n // we set this to vm._watcher inside the watcher's constructor\n // since the watcher's initial patch may call $forceUpdate (e.g. inside child\n // component's mounted hook), which relies on vm._watcher being already defined\n new Watcher(vm, updateComponent, noop, {\n before: function before () {\n if (vm._isMounted && !vm._isDestroyed) {\n callHook(vm, 'beforeUpdate');\n }\n }\n }, true /* isRenderWatcher */);\n hydrating = false;\n\n // manually mounted instance, call mounted on self\n // mounted is called for render-created child components in its inserted hook\n if (vm.$vnode == null) {\n vm._isMounted = true;\n callHook(vm, 'mounted');\n }\n return vm\n}\n\nfunction updateChildComponent (\n vm,\n propsData,\n listeners,\n parentVnode,\n renderChildren\n) {\n if (process.env.NODE_ENV !== 'production') {\n isUpdatingChildComponent = true;\n }\n\n // determine whether component has slot children\n // we need to do this before overwriting $options._renderChildren.\n\n // check if there are dynamic scopedSlots (hand-written or compiled but with\n // dynamic slot names). Static scoped slots compiled from template has the\n // \"$stable\" marker.\n var newScopedSlots = parentVnode.data.scopedSlots;\n var oldScopedSlots = vm.$scopedSlots;\n var hasDynamicScopedSlot = !!(\n (newScopedSlots && !newScopedSlots.$stable) ||\n (oldScopedSlots !== emptyObject && !oldScopedSlots.$stable) ||\n (newScopedSlots && vm.$scopedSlots.$key !== newScopedSlots.$key)\n );\n\n // Any static slot children from the parent may have changed during parent's\n // update. Dynamic scoped slots may also have changed. In such cases, a forced\n // update is necessary to ensure correctness.\n var needsForceUpdate = !!(\n renderChildren || // has new static slots\n vm.$options._renderChildren || // has old static slots\n hasDynamicScopedSlot\n );\n\n vm.$options._parentVnode = parentVnode;\n vm.$vnode = parentVnode; // update vm's placeholder node without re-render\n\n if (vm._vnode) { // update child tree's parent\n vm._vnode.parent = parentVnode;\n }\n vm.$options._renderChildren = renderChildren;\n\n // update $attrs and $listeners hash\n // these are also reactive so they may trigger child update if the child\n // used them during render\n vm.$attrs = parentVnode.data.attrs || emptyObject;\n vm.$listeners = listeners || emptyObject;\n\n // update props\n if (propsData && vm.$options.props) {\n toggleObserving(false);\n var props = vm._props;\n var propKeys = vm.$options._propKeys || [];\n for (var i = 0; i < propKeys.length; i++) {\n var key = propKeys[i];\n var propOptions = vm.$options.props; // wtf flow?\n props[key] = validateProp(key, propOptions, propsData, vm);\n }\n toggleObserving(true);\n // keep a copy of raw propsData\n vm.$options.propsData = propsData;\n }\n\n // update listeners\n listeners = listeners || emptyObject;\n var oldListeners = vm.$options._parentListeners;\n vm.$options._parentListeners = listeners;\n updateComponentListeners(vm, listeners, oldListeners);\n\n // resolve slots + force update if has children\n if (needsForceUpdate) {\n vm.$slots = resolveSlots(renderChildren, parentVnode.context);\n vm.$forceUpdate();\n }\n\n if (process.env.NODE_ENV !== 'production') {\n isUpdatingChildComponent = false;\n }\n}\n\nfunction isInInactiveTree (vm) {\n while (vm && (vm = vm.$parent)) {\n if (vm._inactive) { return true }\n }\n return false\n}\n\nfunction activateChildComponent (vm, direct) {\n if (direct) {\n vm._directInactive = false;\n if (isInInactiveTree(vm)) {\n return\n }\n } else if (vm._directInactive) {\n return\n }\n if (vm._inactive || vm._inactive === null) {\n vm._inactive = false;\n for (var i = 0; i < vm.$children.length; i++) {\n activateChildComponent(vm.$children[i]);\n }\n callHook(vm, 'activated');\n }\n}\n\nfunction deactivateChildComponent (vm, direct) {\n if (direct) {\n vm._directInactive = true;\n if (isInInactiveTree(vm)) {\n return\n }\n }\n if (!vm._inactive) {\n vm._inactive = true;\n for (var i = 0; i < vm.$children.length; i++) {\n deactivateChildComponent(vm.$children[i]);\n }\n callHook(vm, 'deactivated');\n }\n}\n\nfunction callHook (vm, hook) {\n // #7573 disable dep collection when invoking lifecycle hooks\n pushTarget();\n var handlers = vm.$options[hook];\n var info = hook + \" hook\";\n if (handlers) {\n for (var i = 0, j = handlers.length; i < j; i++) {\n invokeWithErrorHandling(handlers[i], vm, null, vm, info);\n }\n }\n if (vm._hasHookEvent) {\n vm.$emit('hook:' + hook);\n }\n popTarget();\n}\n\n/* */\n\nvar MAX_UPDATE_COUNT = 100;\n\nvar queue = [];\nvar activatedChildren = [];\nvar has = {};\nvar circular = {};\nvar waiting = false;\nvar flushing = false;\nvar index = 0;\n\n/**\n * Reset the scheduler's state.\n */\nfunction resetSchedulerState () {\n index = queue.length = activatedChildren.length = 0;\n has = {};\n if (process.env.NODE_ENV !== 'production') {\n circular = {};\n }\n waiting = flushing = false;\n}\n\n// Async edge case #6566 requires saving the timestamp when event listeners are\n// attached. However, calling performance.now() has a perf overhead especially\n// if the page has thousands of event listeners. Instead, we take a timestamp\n// every time the scheduler flushes and use that for all event listeners\n// attached during that flush.\nvar currentFlushTimestamp = 0;\n\n// Async edge case fix requires storing an event listener's attach timestamp.\nvar getNow = Date.now;\n\n// Determine what event timestamp the browser is using. Annoyingly, the\n// timestamp can either be hi-res (relative to page load) or low-res\n// (relative to UNIX epoch), so in order to compare time we have to use the\n// same timestamp type when saving the flush timestamp.\n// All IE versions use low-res event timestamps, and have problematic clock\n// implementations (#9632)\nif (inBrowser && !isIE) {\n var performance = window.performance;\n if (\n performance &&\n typeof performance.now === 'function' &&\n getNow() > document.createEvent('Event').timeStamp\n ) {\n // if the event timestamp, although evaluated AFTER the Date.now(), is\n // smaller than it, it means the event is using a hi-res timestamp,\n // and we need to use the hi-res version for event listener timestamps as\n // well.\n getNow = function () { return performance.now(); };\n }\n}\n\n/**\n * Flush both queues and run the watchers.\n */\nfunction flushSchedulerQueue () {\n currentFlushTimestamp = getNow();\n flushing = true;\n var watcher, id;\n\n // Sort queue before flush.\n // This ensures that:\n // 1. Components are updated from parent to child. (because parent is always\n // created before the child)\n // 2. A component's user watchers are run before its render watcher (because\n // user watchers are created before the render watcher)\n // 3. If a component is destroyed during a parent component's watcher run,\n // its watchers can be skipped.\n queue.sort(function (a, b) { return a.id - b.id; });\n\n // do not cache length because more watchers might be pushed\n // as we run existing watchers\n for (index = 0; index < queue.length; index++) {\n watcher = queue[index];\n if (watcher.before) {\n watcher.before();\n }\n id = watcher.id;\n has[id] = null;\n watcher.run();\n // in dev build, check and stop circular updates.\n if (process.env.NODE_ENV !== 'production' && has[id] != null) {\n circular[id] = (circular[id] || 0) + 1;\n if (circular[id] > MAX_UPDATE_COUNT) {\n warn(\n 'You may have an infinite update loop ' + (\n watcher.user\n ? (\"in watcher with expression \\\"\" + (watcher.expression) + \"\\\"\")\n : \"in a component render function.\"\n ),\n watcher.vm\n );\n break\n }\n }\n }\n\n // keep copies of post queues before resetting state\n var activatedQueue = activatedChildren.slice();\n var updatedQueue = queue.slice();\n\n resetSchedulerState();\n\n // call component updated and activated hooks\n callActivatedHooks(activatedQueue);\n callUpdatedHooks(updatedQueue);\n\n // devtool hook\n /* istanbul ignore if */\n if (devtools && config.devtools) {\n devtools.emit('flush');\n }\n}\n\nfunction callUpdatedHooks (queue) {\n var i = queue.length;\n while (i--) {\n var watcher = queue[i];\n var vm = watcher.vm;\n if (vm._watcher === watcher && vm._isMounted && !vm._isDestroyed) {\n callHook(vm, 'updated');\n }\n }\n}\n\n/**\n * Queue a kept-alive component that was activated during patch.\n * The queue will be processed after the entire tree has been patched.\n */\nfunction queueActivatedComponent (vm) {\n // setting _inactive to false here so that a render function can\n // rely on checking whether it's in an inactive tree (e.g. router-view)\n vm._inactive = false;\n activatedChildren.push(vm);\n}\n\nfunction callActivatedHooks (queue) {\n for (var i = 0; i < queue.length; i++) {\n queue[i]._inactive = true;\n activateChildComponent(queue[i], true /* true */);\n }\n}\n\n/**\n * Push a watcher into the watcher queue.\n * Jobs with duplicate IDs will be skipped unless it's\n * pushed when the queue is being flushed.\n */\nfunction queueWatcher (watcher) {\n var id = watcher.id;\n if (has[id] == null) {\n has[id] = true;\n if (!flushing) {\n queue.push(watcher);\n } else {\n // if already flushing, splice the watcher based on its id\n // if already past its id, it will be run next immediately.\n var i = queue.length - 1;\n while (i > index && queue[i].id > watcher.id) {\n i--;\n }\n queue.splice(i + 1, 0, watcher);\n }\n // queue the flush\n if (!waiting) {\n waiting = true;\n\n if (process.env.NODE_ENV !== 'production' && !config.async) {\n flushSchedulerQueue();\n return\n }\n nextTick(flushSchedulerQueue);\n }\n }\n}\n\n/* */\n\n\n\nvar uid$2 = 0;\n\n/**\n * A watcher parses an expression, collects dependencies,\n * and fires callback when the expression value changes.\n * This is used for both the $watch() api and directives.\n */\nvar Watcher = function Watcher (\n vm,\n expOrFn,\n cb,\n options,\n isRenderWatcher\n) {\n this.vm = vm;\n if (isRenderWatcher) {\n vm._watcher = this;\n }\n vm._watchers.push(this);\n // options\n if (options) {\n this.deep = !!options.deep;\n this.user = !!options.user;\n this.lazy = !!options.lazy;\n this.sync = !!options.sync;\n this.before = options.before;\n } else {\n this.deep = this.user = this.lazy = this.sync = false;\n }\n this.cb = cb;\n this.id = ++uid$2; // uid for batching\n this.active = true;\n this.dirty = this.lazy; // for lazy watchers\n this.deps = [];\n this.newDeps = [];\n this.depIds = new _Set();\n this.newDepIds = new _Set();\n this.expression = process.env.NODE_ENV !== 'production'\n ? expOrFn.toString()\n : '';\n // parse expression for getter\n if (typeof expOrFn === 'function') {\n this.getter = expOrFn;\n } else {\n this.getter = parsePath(expOrFn);\n if (!this.getter) {\n this.getter = noop;\n process.env.NODE_ENV !== 'production' && warn(\n \"Failed watching path: \\\"\" + expOrFn + \"\\\" \" +\n 'Watcher only accepts simple dot-delimited paths. ' +\n 'For full control, use a function instead.',\n vm\n );\n }\n }\n this.value = this.lazy\n ? undefined\n : this.get();\n};\n\n/**\n * Evaluate the getter, and re-collect dependencies.\n */\nWatcher.prototype.get = function get () {\n pushTarget(this);\n var value;\n var vm = this.vm;\n try {\n value = this.getter.call(vm, vm);\n } catch (e) {\n if (this.user) {\n handleError(e, vm, (\"getter for watcher \\\"\" + (this.expression) + \"\\\"\"));\n } else {\n throw e\n }\n } finally {\n // \"touch\" every property so they are all tracked as\n // dependencies for deep watching\n if (this.deep) {\n traverse(value);\n }\n popTarget();\n this.cleanupDeps();\n }\n return value\n};\n\n/**\n * Add a dependency to this directive.\n */\nWatcher.prototype.addDep = function addDep (dep) {\n var id = dep.id;\n if (!this.newDepIds.has(id)) {\n this.newDepIds.add(id);\n this.newDeps.push(dep);\n if (!this.depIds.has(id)) {\n dep.addSub(this);\n }\n }\n};\n\n/**\n * Clean up for dependency collection.\n */\nWatcher.prototype.cleanupDeps = function cleanupDeps () {\n var i = this.deps.length;\n while (i--) {\n var dep = this.deps[i];\n if (!this.newDepIds.has(dep.id)) {\n dep.removeSub(this);\n }\n }\n var tmp = this.depIds;\n this.depIds = this.newDepIds;\n this.newDepIds = tmp;\n this.newDepIds.clear();\n tmp = this.deps;\n this.deps = this.newDeps;\n this.newDeps = tmp;\n this.newDeps.length = 0;\n};\n\n/**\n * Subscriber interface.\n * Will be called when a dependency changes.\n */\nWatcher.prototype.update = function update () {\n /* istanbul ignore else */\n if (this.lazy) {\n this.dirty = true;\n } else if (this.sync) {\n this.run();\n } else {\n queueWatcher(this);\n }\n};\n\n/**\n * Scheduler job interface.\n * Will be called by the scheduler.\n */\nWatcher.prototype.run = function run () {\n if (this.active) {\n var value = this.get();\n if (\n value !== this.value ||\n // Deep watchers and watchers on Object/Arrays should fire even\n // when the value is the same, because the value may\n // have mutated.\n isObject(value) ||\n this.deep\n ) {\n // set new value\n var oldValue = this.value;\n this.value = value;\n if (this.user) {\n try {\n this.cb.call(this.vm, value, oldValue);\n } catch (e) {\n handleError(e, this.vm, (\"callback for watcher \\\"\" + (this.expression) + \"\\\"\"));\n }\n } else {\n this.cb.call(this.vm, value, oldValue);\n }\n }\n }\n};\n\n/**\n * Evaluate the value of the watcher.\n * This only gets called for lazy watchers.\n */\nWatcher.prototype.evaluate = function evaluate () {\n this.value = this.get();\n this.dirty = false;\n};\n\n/**\n * Depend on all deps collected by this watcher.\n */\nWatcher.prototype.depend = function depend () {\n var i = this.deps.length;\n while (i--) {\n this.deps[i].depend();\n }\n};\n\n/**\n * Remove self from all dependencies' subscriber list.\n */\nWatcher.prototype.teardown = function teardown () {\n if (this.active) {\n // remove self from vm's watcher list\n // this is a somewhat expensive operation so we skip it\n // if the vm is being destroyed.\n if (!this.vm._isBeingDestroyed) {\n remove(this.vm._watchers, this);\n }\n var i = this.deps.length;\n while (i--) {\n this.deps[i].removeSub(this);\n }\n this.active = false;\n }\n};\n\n/* */\n\nvar sharedPropertyDefinition = {\n enumerable: true,\n configurable: true,\n get: noop,\n set: noop\n};\n\nfunction proxy (target, sourceKey, key) {\n sharedPropertyDefinition.get = function proxyGetter () {\n return this[sourceKey][key]\n };\n sharedPropertyDefinition.set = function proxySetter (val) {\n this[sourceKey][key] = val;\n };\n Object.defineProperty(target, key, sharedPropertyDefinition);\n}\n\nfunction initState (vm) {\n vm._watchers = [];\n var opts = vm.$options;\n if (opts.props) { initProps(vm, opts.props); }\n if (opts.methods) { initMethods(vm, opts.methods); }\n if (opts.data) {\n initData(vm);\n } else {\n observe(vm._data = {}, true /* asRootData */);\n }\n if (opts.computed) { initComputed(vm, opts.computed); }\n if (opts.watch && opts.watch !== nativeWatch) {\n initWatch(vm, opts.watch);\n }\n}\n\nfunction initProps (vm, propsOptions) {\n var propsData = vm.$options.propsData || {};\n var props = vm._props = {};\n // cache prop keys so that future props updates can iterate using Array\n // instead of dynamic object key enumeration.\n var keys = vm.$options._propKeys = [];\n var isRoot = !vm.$parent;\n // root instance props should be converted\n if (!isRoot) {\n toggleObserving(false);\n }\n var loop = function ( key ) {\n keys.push(key);\n var value = validateProp(key, propsOptions, propsData, vm);\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n var hyphenatedKey = hyphenate(key);\n if (isReservedAttribute(hyphenatedKey) ||\n config.isReservedAttr(hyphenatedKey)) {\n warn(\n (\"\\\"\" + hyphenatedKey + \"\\\" is a reserved attribute and cannot be used as component prop.\"),\n vm\n );\n }\n defineReactive$$1(props, key, value, function () {\n if (!isRoot && !isUpdatingChildComponent) {\n warn(\n \"Avoid mutating a prop directly since the value will be \" +\n \"overwritten whenever the parent component re-renders. \" +\n \"Instead, use a data or computed property based on the prop's \" +\n \"value. Prop being mutated: \\\"\" + key + \"\\\"\",\n vm\n );\n }\n });\n } else {\n defineReactive$$1(props, key, value);\n }\n // static props are already proxied on the component's prototype\n // during Vue.extend(). We only need to proxy props defined at\n // instantiation here.\n if (!(key in vm)) {\n proxy(vm, \"_props\", key);\n }\n };\n\n for (var key in propsOptions) loop( key );\n toggleObserving(true);\n}\n\nfunction initData (vm) {\n var data = vm.$options.data;\n data = vm._data = typeof data === 'function'\n ? getData(data, vm)\n : data || {};\n if (!isPlainObject(data)) {\n data = {};\n process.env.NODE_ENV !== 'production' && warn(\n 'data functions should return an object:\\n' +\n 'https://vuejs.org/v2/guide/components.html#data-Must-Be-a-Function',\n vm\n );\n }\n // proxy data on instance\n var keys = Object.keys(data);\n var props = vm.$options.props;\n var methods = vm.$options.methods;\n var i = keys.length;\n while (i--) {\n var key = keys[i];\n if (process.env.NODE_ENV !== 'production') {\n if (methods && hasOwn(methods, key)) {\n warn(\n (\"Method \\\"\" + key + \"\\\" has already been defined as a data property.\"),\n vm\n );\n }\n }\n if (props && hasOwn(props, key)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"The data property \\\"\" + key + \"\\\" is already declared as a prop. \" +\n \"Use prop default value instead.\",\n vm\n );\n } else if (!isReserved(key)) {\n proxy(vm, \"_data\", key);\n }\n }\n // observe data\n observe(data, true /* asRootData */);\n}\n\nfunction getData (data, vm) {\n // #7573 disable dep collection when invoking data getters\n pushTarget();\n try {\n return data.call(vm, vm)\n } catch (e) {\n handleError(e, vm, \"data()\");\n return {}\n } finally {\n popTarget();\n }\n}\n\nvar computedWatcherOptions = { lazy: true };\n\nfunction initComputed (vm, computed) {\n // $flow-disable-line\n var watchers = vm._computedWatchers = Object.create(null);\n // computed properties are just getters during SSR\n var isSSR = isServerRendering();\n\n for (var key in computed) {\n var userDef = computed[key];\n var getter = typeof userDef === 'function' ? userDef : userDef.get;\n if (process.env.NODE_ENV !== 'production' && getter == null) {\n warn(\n (\"Getter is missing for computed property \\\"\" + key + \"\\\".\"),\n vm\n );\n }\n\n if (!isSSR) {\n // create internal watcher for the computed property.\n watchers[key] = new Watcher(\n vm,\n getter || noop,\n noop,\n computedWatcherOptions\n );\n }\n\n // component-defined computed properties are already defined on the\n // component prototype. We only need to define computed properties defined\n // at instantiation here.\n if (!(key in vm)) {\n defineComputed(vm, key, userDef);\n } else if (process.env.NODE_ENV !== 'production') {\n if (key in vm.$data) {\n warn((\"The computed property \\\"\" + key + \"\\\" is already defined in data.\"), vm);\n } else if (vm.$options.props && key in vm.$options.props) {\n warn((\"The computed property \\\"\" + key + \"\\\" is already defined as a prop.\"), vm);\n }\n }\n }\n}\n\nfunction defineComputed (\n target,\n key,\n userDef\n) {\n var shouldCache = !isServerRendering();\n if (typeof userDef === 'function') {\n sharedPropertyDefinition.get = shouldCache\n ? createComputedGetter(key)\n : createGetterInvoker(userDef);\n sharedPropertyDefinition.set = noop;\n } else {\n sharedPropertyDefinition.get = userDef.get\n ? shouldCache && userDef.cache !== false\n ? createComputedGetter(key)\n : createGetterInvoker(userDef.get)\n : noop;\n sharedPropertyDefinition.set = userDef.set || noop;\n }\n if (process.env.NODE_ENV !== 'production' &&\n sharedPropertyDefinition.set === noop) {\n sharedPropertyDefinition.set = function () {\n warn(\n (\"Computed property \\\"\" + key + \"\\\" was assigned to but it has no setter.\"),\n this\n );\n };\n }\n Object.defineProperty(target, key, sharedPropertyDefinition);\n}\n\nfunction createComputedGetter (key) {\n return function computedGetter () {\n var watcher = this._computedWatchers && this._computedWatchers[key];\n if (watcher) {\n if (watcher.dirty) {\n watcher.evaluate();\n }\n if (Dep.target) {\n watcher.depend();\n }\n return watcher.value\n }\n }\n}\n\nfunction createGetterInvoker(fn) {\n return function computedGetter () {\n return fn.call(this, this)\n }\n}\n\nfunction initMethods (vm, methods) {\n var props = vm.$options.props;\n for (var key in methods) {\n if (process.env.NODE_ENV !== 'production') {\n if (typeof methods[key] !== 'function') {\n warn(\n \"Method \\\"\" + key + \"\\\" has type \\\"\" + (typeof methods[key]) + \"\\\" in the component definition. \" +\n \"Did you reference the function correctly?\",\n vm\n );\n }\n if (props && hasOwn(props, key)) {\n warn(\n (\"Method \\\"\" + key + \"\\\" has already been defined as a prop.\"),\n vm\n );\n }\n if ((key in vm) && isReserved(key)) {\n warn(\n \"Method \\\"\" + key + \"\\\" conflicts with an existing Vue instance method. \" +\n \"Avoid defining component methods that start with _ or $.\"\n );\n }\n }\n vm[key] = typeof methods[key] !== 'function' ? noop : bind(methods[key], vm);\n }\n}\n\nfunction initWatch (vm, watch) {\n for (var key in watch) {\n var handler = watch[key];\n if (Array.isArray(handler)) {\n for (var i = 0; i < handler.length; i++) {\n createWatcher(vm, key, handler[i]);\n }\n } else {\n createWatcher(vm, key, handler);\n }\n }\n}\n\nfunction createWatcher (\n vm,\n expOrFn,\n handler,\n options\n) {\n if (isPlainObject(handler)) {\n options = handler;\n handler = handler.handler;\n }\n if (typeof handler === 'string') {\n handler = vm[handler];\n }\n return vm.$watch(expOrFn, handler, options)\n}\n\nfunction stateMixin (Vue) {\n // flow somehow has problems with directly declared definition object\n // when using Object.defineProperty, so we have to procedurally build up\n // the object here.\n var dataDef = {};\n dataDef.get = function () { return this._data };\n var propsDef = {};\n propsDef.get = function () { return this._props };\n if (process.env.NODE_ENV !== 'production') {\n dataDef.set = function () {\n warn(\n 'Avoid replacing instance root $data. ' +\n 'Use nested data properties instead.',\n this\n );\n };\n propsDef.set = function () {\n warn(\"$props is readonly.\", this);\n };\n }\n Object.defineProperty(Vue.prototype, '$data', dataDef);\n Object.defineProperty(Vue.prototype, '$props', propsDef);\n\n Vue.prototype.$set = set;\n Vue.prototype.$delete = del;\n\n Vue.prototype.$watch = function (\n expOrFn,\n cb,\n options\n ) {\n var vm = this;\n if (isPlainObject(cb)) {\n return createWatcher(vm, expOrFn, cb, options)\n }\n options = options || {};\n options.user = true;\n var watcher = new Watcher(vm, expOrFn, cb, options);\n if (options.immediate) {\n try {\n cb.call(vm, watcher.value);\n } catch (error) {\n handleError(error, vm, (\"callback for immediate watcher \\\"\" + (watcher.expression) + \"\\\"\"));\n }\n }\n return function unwatchFn () {\n watcher.teardown();\n }\n };\n}\n\n/* */\n\nvar uid$3 = 0;\n\nfunction initMixin (Vue) {\n Vue.prototype._init = function (options) {\n var vm = this;\n // a uid\n vm._uid = uid$3++;\n\n var startTag, endTag;\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n startTag = \"vue-perf-start:\" + (vm._uid);\n endTag = \"vue-perf-end:\" + (vm._uid);\n mark(startTag);\n }\n\n // a flag to avoid this being observed\n vm._isVue = true;\n // merge options\n if (options && options._isComponent) {\n // optimize internal component instantiation\n // since dynamic options merging is pretty slow, and none of the\n // internal component options needs special treatment.\n initInternalComponent(vm, options);\n } else {\n vm.$options = mergeOptions(\n resolveConstructorOptions(vm.constructor),\n options || {},\n vm\n );\n }\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n initProxy(vm);\n } else {\n vm._renderProxy = vm;\n }\n // expose real self\n vm._self = vm;\n initLifecycle(vm);\n initEvents(vm);\n initRender(vm);\n callHook(vm, 'beforeCreate');\n initInjections(vm); // resolve injections before data/props\n initState(vm);\n initProvide(vm); // resolve provide after data/props\n callHook(vm, 'created');\n\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n vm._name = formatComponentName(vm, false);\n mark(endTag);\n measure((\"vue \" + (vm._name) + \" init\"), startTag, endTag);\n }\n\n if (vm.$options.el) {\n vm.$mount(vm.$options.el);\n }\n };\n}\n\nfunction initInternalComponent (vm, options) {\n var opts = vm.$options = Object.create(vm.constructor.options);\n // doing this because it's faster than dynamic enumeration.\n var parentVnode = options._parentVnode;\n opts.parent = options.parent;\n opts._parentVnode = parentVnode;\n\n var vnodeComponentOptions = parentVnode.componentOptions;\n opts.propsData = vnodeComponentOptions.propsData;\n opts._parentListeners = vnodeComponentOptions.listeners;\n opts._renderChildren = vnodeComponentOptions.children;\n opts._componentTag = vnodeComponentOptions.tag;\n\n if (options.render) {\n opts.render = options.render;\n opts.staticRenderFns = options.staticRenderFns;\n }\n}\n\nfunction resolveConstructorOptions (Ctor) {\n var options = Ctor.options;\n if (Ctor.super) {\n var superOptions = resolveConstructorOptions(Ctor.super);\n var cachedSuperOptions = Ctor.superOptions;\n if (superOptions !== cachedSuperOptions) {\n // super option changed,\n // need to resolve new options.\n Ctor.superOptions = superOptions;\n // check if there are any late-modified/attached options (#4976)\n var modifiedOptions = resolveModifiedOptions(Ctor);\n // update base extend options\n if (modifiedOptions) {\n extend(Ctor.extendOptions, modifiedOptions);\n }\n options = Ctor.options = mergeOptions(superOptions, Ctor.extendOptions);\n if (options.name) {\n options.components[options.name] = Ctor;\n }\n }\n }\n return options\n}\n\nfunction resolveModifiedOptions (Ctor) {\n var modified;\n var latest = Ctor.options;\n var sealed = Ctor.sealedOptions;\n for (var key in latest) {\n if (latest[key] !== sealed[key]) {\n if (!modified) { modified = {}; }\n modified[key] = latest[key];\n }\n }\n return modified\n}\n\nfunction Vue (options) {\n if (process.env.NODE_ENV !== 'production' &&\n !(this instanceof Vue)\n ) {\n warn('Vue is a constructor and should be called with the `new` keyword');\n }\n this._init(options);\n}\n\ninitMixin(Vue);\nstateMixin(Vue);\neventsMixin(Vue);\nlifecycleMixin(Vue);\nrenderMixin(Vue);\n\n/* */\n\nfunction initUse (Vue) {\n Vue.use = function (plugin) {\n var installedPlugins = (this._installedPlugins || (this._installedPlugins = []));\n if (installedPlugins.indexOf(plugin) > -1) {\n return this\n }\n\n // additional parameters\n var args = toArray(arguments, 1);\n args.unshift(this);\n if (typeof plugin.install === 'function') {\n plugin.install.apply(plugin, args);\n } else if (typeof plugin === 'function') {\n plugin.apply(null, args);\n }\n installedPlugins.push(plugin);\n return this\n };\n}\n\n/* */\n\nfunction initMixin$1 (Vue) {\n Vue.mixin = function (mixin) {\n this.options = mergeOptions(this.options, mixin);\n return this\n };\n}\n\n/* */\n\nfunction initExtend (Vue) {\n /**\n * Each instance constructor, including Vue, has a unique\n * cid. This enables us to create wrapped \"child\n * constructors\" for prototypal inheritance and cache them.\n */\n Vue.cid = 0;\n var cid = 1;\n\n /**\n * Class inheritance\n */\n Vue.extend = function (extendOptions) {\n extendOptions = extendOptions || {};\n var Super = this;\n var SuperId = Super.cid;\n var cachedCtors = extendOptions._Ctor || (extendOptions._Ctor = {});\n if (cachedCtors[SuperId]) {\n return cachedCtors[SuperId]\n }\n\n var name = extendOptions.name || Super.options.name;\n if (process.env.NODE_ENV !== 'production' && name) {\n validateComponentName(name);\n }\n\n var Sub = function VueComponent (options) {\n this._init(options);\n };\n Sub.prototype = Object.create(Super.prototype);\n Sub.prototype.constructor = Sub;\n Sub.cid = cid++;\n Sub.options = mergeOptions(\n Super.options,\n extendOptions\n );\n Sub['super'] = Super;\n\n // For props and computed properties, we define the proxy getters on\n // the Vue instances at extension time, on the extended prototype. This\n // avoids Object.defineProperty calls for each instance created.\n if (Sub.options.props) {\n initProps$1(Sub);\n }\n if (Sub.options.computed) {\n initComputed$1(Sub);\n }\n\n // allow further extension/mixin/plugin usage\n Sub.extend = Super.extend;\n Sub.mixin = Super.mixin;\n Sub.use = Super.use;\n\n // create asset registers, so extended classes\n // can have their private assets too.\n ASSET_TYPES.forEach(function (type) {\n Sub[type] = Super[type];\n });\n // enable recursive self-lookup\n if (name) {\n Sub.options.components[name] = Sub;\n }\n\n // keep a reference to the super options at extension time.\n // later at instantiation we can check if Super's options have\n // been updated.\n Sub.superOptions = Super.options;\n Sub.extendOptions = extendOptions;\n Sub.sealedOptions = extend({}, Sub.options);\n\n // cache constructor\n cachedCtors[SuperId] = Sub;\n return Sub\n };\n}\n\nfunction initProps$1 (Comp) {\n var props = Comp.options.props;\n for (var key in props) {\n proxy(Comp.prototype, \"_props\", key);\n }\n}\n\nfunction initComputed$1 (Comp) {\n var computed = Comp.options.computed;\n for (var key in computed) {\n defineComputed(Comp.prototype, key, computed[key]);\n }\n}\n\n/* */\n\nfunction initAssetRegisters (Vue) {\n /**\n * Create asset registration methods.\n */\n ASSET_TYPES.forEach(function (type) {\n Vue[type] = function (\n id,\n definition\n ) {\n if (!definition) {\n return this.options[type + 's'][id]\n } else {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && type === 'component') {\n validateComponentName(id);\n }\n if (type === 'component' && isPlainObject(definition)) {\n definition.name = definition.name || id;\n definition = this.options._base.extend(definition);\n }\n if (type === 'directive' && typeof definition === 'function') {\n definition = { bind: definition, update: definition };\n }\n this.options[type + 's'][id] = definition;\n return definition\n }\n };\n });\n}\n\n/* */\n\n\n\nfunction getComponentName (opts) {\n return opts && (opts.Ctor.options.name || opts.tag)\n}\n\nfunction matches (pattern, name) {\n if (Array.isArray(pattern)) {\n return pattern.indexOf(name) > -1\n } else if (typeof pattern === 'string') {\n return pattern.split(',').indexOf(name) > -1\n } else if (isRegExp(pattern)) {\n return pattern.test(name)\n }\n /* istanbul ignore next */\n return false\n}\n\nfunction pruneCache (keepAliveInstance, filter) {\n var cache = keepAliveInstance.cache;\n var keys = keepAliveInstance.keys;\n var _vnode = keepAliveInstance._vnode;\n for (var key in cache) {\n var cachedNode = cache[key];\n if (cachedNode) {\n var name = getComponentName(cachedNode.componentOptions);\n if (name && !filter(name)) {\n pruneCacheEntry(cache, key, keys, _vnode);\n }\n }\n }\n}\n\nfunction pruneCacheEntry (\n cache,\n key,\n keys,\n current\n) {\n var cached$$1 = cache[key];\n if (cached$$1 && (!current || cached$$1.tag !== current.tag)) {\n cached$$1.componentInstance.$destroy();\n }\n cache[key] = null;\n remove(keys, key);\n}\n\nvar patternTypes = [String, RegExp, Array];\n\nvar KeepAlive = {\n name: 'keep-alive',\n abstract: true,\n\n props: {\n include: patternTypes,\n exclude: patternTypes,\n max: [String, Number]\n },\n\n created: function created () {\n this.cache = Object.create(null);\n this.keys = [];\n },\n\n destroyed: function destroyed () {\n for (var key in this.cache) {\n pruneCacheEntry(this.cache, key, this.keys);\n }\n },\n\n mounted: function mounted () {\n var this$1 = this;\n\n this.$watch('include', function (val) {\n pruneCache(this$1, function (name) { return matches(val, name); });\n });\n this.$watch('exclude', function (val) {\n pruneCache(this$1, function (name) { return !matches(val, name); });\n });\n },\n\n render: function render () {\n var slot = this.$slots.default;\n var vnode = getFirstComponentChild(slot);\n var componentOptions = vnode && vnode.componentOptions;\n if (componentOptions) {\n // check pattern\n var name = getComponentName(componentOptions);\n var ref = this;\n var include = ref.include;\n var exclude = ref.exclude;\n if (\n // not included\n (include && (!name || !matches(include, name))) ||\n // excluded\n (exclude && name && matches(exclude, name))\n ) {\n return vnode\n }\n\n var ref$1 = this;\n var cache = ref$1.cache;\n var keys = ref$1.keys;\n var key = vnode.key == null\n // same constructor may get registered as different local components\n // so cid alone is not enough (#3269)\n ? componentOptions.Ctor.cid + (componentOptions.tag ? (\"::\" + (componentOptions.tag)) : '')\n : vnode.key;\n if (cache[key]) {\n vnode.componentInstance = cache[key].componentInstance;\n // make current key freshest\n remove(keys, key);\n keys.push(key);\n } else {\n cache[key] = vnode;\n keys.push(key);\n // prune oldest entry\n if (this.max && keys.length > parseInt(this.max)) {\n pruneCacheEntry(cache, keys[0], keys, this._vnode);\n }\n }\n\n vnode.data.keepAlive = true;\n }\n return vnode || (slot && slot[0])\n }\n};\n\nvar builtInComponents = {\n KeepAlive: KeepAlive\n};\n\n/* */\n\nfunction initGlobalAPI (Vue) {\n // config\n var configDef = {};\n configDef.get = function () { return config; };\n if (process.env.NODE_ENV !== 'production') {\n configDef.set = function () {\n warn(\n 'Do not replace the Vue.config object, set individual fields instead.'\n );\n };\n }\n Object.defineProperty(Vue, 'config', configDef);\n\n // exposed util methods.\n // NOTE: these are not considered part of the public API - avoid relying on\n // them unless you are aware of the risk.\n Vue.util = {\n warn: warn,\n extend: extend,\n mergeOptions: mergeOptions,\n defineReactive: defineReactive$$1\n };\n\n Vue.set = set;\n Vue.delete = del;\n Vue.nextTick = nextTick;\n\n // 2.6 explicit observable API\n Vue.observable = function (obj) {\n observe(obj);\n return obj\n };\n\n Vue.options = Object.create(null);\n ASSET_TYPES.forEach(function (type) {\n Vue.options[type + 's'] = Object.create(null);\n });\n\n // this is used to identify the \"base\" constructor to extend all plain-object\n // components with in Weex's multi-instance scenarios.\n Vue.options._base = Vue;\n\n extend(Vue.options.components, builtInComponents);\n\n initUse(Vue);\n initMixin$1(Vue);\n initExtend(Vue);\n initAssetRegisters(Vue);\n}\n\ninitGlobalAPI(Vue);\n\nObject.defineProperty(Vue.prototype, '$isServer', {\n get: isServerRendering\n});\n\nObject.defineProperty(Vue.prototype, '$ssrContext', {\n get: function get () {\n /* istanbul ignore next */\n return this.$vnode && this.$vnode.ssrContext\n }\n});\n\n// expose FunctionalRenderContext for ssr runtime helper installation\nObject.defineProperty(Vue, 'FunctionalRenderContext', {\n value: FunctionalRenderContext\n});\n\nVue.version = '2.6.11';\n\n/* */\n\n// these are reserved for web because they are directly compiled away\n// during template compilation\nvar isReservedAttr = makeMap('style,class');\n\n// attributes that should be using props for binding\nvar acceptValue = makeMap('input,textarea,option,select,progress');\nvar mustUseProp = function (tag, type, attr) {\n return (\n (attr === 'value' && acceptValue(tag)) && type !== 'button' ||\n (attr === 'selected' && tag === 'option') ||\n (attr === 'checked' && tag === 'input') ||\n (attr === 'muted' && tag === 'video')\n )\n};\n\nvar isEnumeratedAttr = makeMap('contenteditable,draggable,spellcheck');\n\nvar isValidContentEditableValue = makeMap('events,caret,typing,plaintext-only');\n\nvar convertEnumeratedValue = function (key, value) {\n return isFalsyAttrValue(value) || value === 'false'\n ? 'false'\n // allow arbitrary string value for contenteditable\n : key === 'contenteditable' && isValidContentEditableValue(value)\n ? value\n : 'true'\n};\n\nvar isBooleanAttr = makeMap(\n 'allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,' +\n 'default,defaultchecked,defaultmuted,defaultselected,defer,disabled,' +\n 'enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,' +\n 'muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,' +\n 'required,reversed,scoped,seamless,selected,sortable,translate,' +\n 'truespeed,typemustmatch,visible'\n);\n\nvar xlinkNS = 'http://www.w3.org/1999/xlink';\n\nvar isXlink = function (name) {\n return name.charAt(5) === ':' && name.slice(0, 5) === 'xlink'\n};\n\nvar getXlinkProp = function (name) {\n return isXlink(name) ? name.slice(6, name.length) : ''\n};\n\nvar isFalsyAttrValue = function (val) {\n return val == null || val === false\n};\n\n/* */\n\nfunction genClassForVnode (vnode) {\n var data = vnode.data;\n var parentNode = vnode;\n var childNode = vnode;\n while (isDef(childNode.componentInstance)) {\n childNode = childNode.componentInstance._vnode;\n if (childNode && childNode.data) {\n data = mergeClassData(childNode.data, data);\n }\n }\n while (isDef(parentNode = parentNode.parent)) {\n if (parentNode && parentNode.data) {\n data = mergeClassData(data, parentNode.data);\n }\n }\n return renderClass(data.staticClass, data.class)\n}\n\nfunction mergeClassData (child, parent) {\n return {\n staticClass: concat(child.staticClass, parent.staticClass),\n class: isDef(child.class)\n ? [child.class, parent.class]\n : parent.class\n }\n}\n\nfunction renderClass (\n staticClass,\n dynamicClass\n) {\n if (isDef(staticClass) || isDef(dynamicClass)) {\n return concat(staticClass, stringifyClass(dynamicClass))\n }\n /* istanbul ignore next */\n return ''\n}\n\nfunction concat (a, b) {\n return a ? b ? (a + ' ' + b) : a : (b || '')\n}\n\nfunction stringifyClass (value) {\n if (Array.isArray(value)) {\n return stringifyArray(value)\n }\n if (isObject(value)) {\n return stringifyObject(value)\n }\n if (typeof value === 'string') {\n return value\n }\n /* istanbul ignore next */\n return ''\n}\n\nfunction stringifyArray (value) {\n var res = '';\n var stringified;\n for (var i = 0, l = value.length; i < l; i++) {\n if (isDef(stringified = stringifyClass(value[i])) && stringified !== '') {\n if (res) { res += ' '; }\n res += stringified;\n }\n }\n return res\n}\n\nfunction stringifyObject (value) {\n var res = '';\n for (var key in value) {\n if (value[key]) {\n if (res) { res += ' '; }\n res += key;\n }\n }\n return res\n}\n\n/* */\n\nvar namespaceMap = {\n svg: 'http://www.w3.org/2000/svg',\n math: 'http://www.w3.org/1998/Math/MathML'\n};\n\nvar isHTMLTag = makeMap(\n 'html,body,base,head,link,meta,style,title,' +\n 'address,article,aside,footer,header,h1,h2,h3,h4,h5,h6,hgroup,nav,section,' +\n 'div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,' +\n 'a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,rtc,ruby,' +\n 's,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,' +\n 'embed,object,param,source,canvas,script,noscript,del,ins,' +\n 'caption,col,colgroup,table,thead,tbody,td,th,tr,' +\n 'button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,' +\n 'output,progress,select,textarea,' +\n 'details,dialog,menu,menuitem,summary,' +\n 'content,element,shadow,template,blockquote,iframe,tfoot'\n);\n\n// this map is intentionally selective, only covering SVG elements that may\n// contain child elements.\nvar isSVG = makeMap(\n 'svg,animate,circle,clippath,cursor,defs,desc,ellipse,filter,font-face,' +\n 'foreignObject,g,glyph,image,line,marker,mask,missing-glyph,path,pattern,' +\n 'polygon,polyline,rect,switch,symbol,text,textpath,tspan,use,view',\n true\n);\n\nvar isPreTag = function (tag) { return tag === 'pre'; };\n\nvar isReservedTag = function (tag) {\n return isHTMLTag(tag) || isSVG(tag)\n};\n\nfunction getTagNamespace (tag) {\n if (isSVG(tag)) {\n return 'svg'\n }\n // basic support for MathML\n // note it doesn't support other MathML elements being component roots\n if (tag === 'math') {\n return 'math'\n }\n}\n\nvar unknownElementCache = Object.create(null);\nfunction isUnknownElement (tag) {\n /* istanbul ignore if */\n if (!inBrowser) {\n return true\n }\n if (isReservedTag(tag)) {\n return false\n }\n tag = tag.toLowerCase();\n /* istanbul ignore if */\n if (unknownElementCache[tag] != null) {\n return unknownElementCache[tag]\n }\n var el = document.createElement(tag);\n if (tag.indexOf('-') > -1) {\n // http://stackoverflow.com/a/28210364/1070244\n return (unknownElementCache[tag] = (\n el.constructor === window.HTMLUnknownElement ||\n el.constructor === window.HTMLElement\n ))\n } else {\n return (unknownElementCache[tag] = /HTMLUnknownElement/.test(el.toString()))\n }\n}\n\nvar isTextInputType = makeMap('text,number,password,search,email,tel,url');\n\n/* */\n\n/**\n * Query an element selector if it's not an element already.\n */\nfunction query (el) {\n if (typeof el === 'string') {\n var selected = document.querySelector(el);\n if (!selected) {\n process.env.NODE_ENV !== 'production' && warn(\n 'Cannot find element: ' + el\n );\n return document.createElement('div')\n }\n return selected\n } else {\n return el\n }\n}\n\n/* */\n\nfunction createElement$1 (tagName, vnode) {\n var elm = document.createElement(tagName);\n if (tagName !== 'select') {\n return elm\n }\n // false or null will remove the attribute but undefined will not\n if (vnode.data && vnode.data.attrs && vnode.data.attrs.multiple !== undefined) {\n elm.setAttribute('multiple', 'multiple');\n }\n return elm\n}\n\nfunction createElementNS (namespace, tagName) {\n return document.createElementNS(namespaceMap[namespace], tagName)\n}\n\nfunction createTextNode (text) {\n return document.createTextNode(text)\n}\n\nfunction createComment (text) {\n return document.createComment(text)\n}\n\nfunction insertBefore (parentNode, newNode, referenceNode) {\n parentNode.insertBefore(newNode, referenceNode);\n}\n\nfunction removeChild (node, child) {\n node.removeChild(child);\n}\n\nfunction appendChild (node, child) {\n node.appendChild(child);\n}\n\nfunction parentNode (node) {\n return node.parentNode\n}\n\nfunction nextSibling (node) {\n return node.nextSibling\n}\n\nfunction tagName (node) {\n return node.tagName\n}\n\nfunction setTextContent (node, text) {\n node.textContent = text;\n}\n\nfunction setStyleScope (node, scopeId) {\n node.setAttribute(scopeId, '');\n}\n\nvar nodeOps = /*#__PURE__*/Object.freeze({\n createElement: createElement$1,\n createElementNS: createElementNS,\n createTextNode: createTextNode,\n createComment: createComment,\n insertBefore: insertBefore,\n removeChild: removeChild,\n appendChild: appendChild,\n parentNode: parentNode,\n nextSibling: nextSibling,\n tagName: tagName,\n setTextContent: setTextContent,\n setStyleScope: setStyleScope\n});\n\n/* */\n\nvar ref = {\n create: function create (_, vnode) {\n registerRef(vnode);\n },\n update: function update (oldVnode, vnode) {\n if (oldVnode.data.ref !== vnode.data.ref) {\n registerRef(oldVnode, true);\n registerRef(vnode);\n }\n },\n destroy: function destroy (vnode) {\n registerRef(vnode, true);\n }\n};\n\nfunction registerRef (vnode, isRemoval) {\n var key = vnode.data.ref;\n if (!isDef(key)) { return }\n\n var vm = vnode.context;\n var ref = vnode.componentInstance || vnode.elm;\n var refs = vm.$refs;\n if (isRemoval) {\n if (Array.isArray(refs[key])) {\n remove(refs[key], ref);\n } else if (refs[key] === ref) {\n refs[key] = undefined;\n }\n } else {\n if (vnode.data.refInFor) {\n if (!Array.isArray(refs[key])) {\n refs[key] = [ref];\n } else if (refs[key].indexOf(ref) < 0) {\n // $flow-disable-line\n refs[key].push(ref);\n }\n } else {\n refs[key] = ref;\n }\n }\n}\n\n/**\n * Virtual DOM patching algorithm based on Snabbdom by\n * Simon Friis Vindum (@paldepind)\n * Licensed under the MIT License\n * https://github.com/paldepind/snabbdom/blob/master/LICENSE\n *\n * modified by Evan You (@yyx990803)\n *\n * Not type-checking this because this file is perf-critical and the cost\n * of making flow understand it is not worth it.\n */\n\nvar emptyNode = new VNode('', {}, []);\n\nvar hooks = ['create', 'activate', 'update', 'remove', 'destroy'];\n\nfunction sameVnode (a, b) {\n return (\n a.key === b.key && (\n (\n a.tag === b.tag &&\n a.isComment === b.isComment &&\n isDef(a.data) === isDef(b.data) &&\n sameInputType(a, b)\n ) || (\n isTrue(a.isAsyncPlaceholder) &&\n a.asyncFactory === b.asyncFactory &&\n isUndef(b.asyncFactory.error)\n )\n )\n )\n}\n\nfunction sameInputType (a, b) {\n if (a.tag !== 'input') { return true }\n var i;\n var typeA = isDef(i = a.data) && isDef(i = i.attrs) && i.type;\n var typeB = isDef(i = b.data) && isDef(i = i.attrs) && i.type;\n return typeA === typeB || isTextInputType(typeA) && isTextInputType(typeB)\n}\n\nfunction createKeyToOldIdx (children, beginIdx, endIdx) {\n var i, key;\n var map = {};\n for (i = beginIdx; i <= endIdx; ++i) {\n key = children[i].key;\n if (isDef(key)) { map[key] = i; }\n }\n return map\n}\n\nfunction createPatchFunction (backend) {\n var i, j;\n var cbs = {};\n\n var modules = backend.modules;\n var nodeOps = backend.nodeOps;\n\n for (i = 0; i < hooks.length; ++i) {\n cbs[hooks[i]] = [];\n for (j = 0; j < modules.length; ++j) {\n if (isDef(modules[j][hooks[i]])) {\n cbs[hooks[i]].push(modules[j][hooks[i]]);\n }\n }\n }\n\n function emptyNodeAt (elm) {\n return new VNode(nodeOps.tagName(elm).toLowerCase(), {}, [], undefined, elm)\n }\n\n function createRmCb (childElm, listeners) {\n function remove$$1 () {\n if (--remove$$1.listeners === 0) {\n removeNode(childElm);\n }\n }\n remove$$1.listeners = listeners;\n return remove$$1\n }\n\n function removeNode (el) {\n var parent = nodeOps.parentNode(el);\n // element may have already been removed due to v-html / v-text\n if (isDef(parent)) {\n nodeOps.removeChild(parent, el);\n }\n }\n\n function isUnknownElement$$1 (vnode, inVPre) {\n return (\n !inVPre &&\n !vnode.ns &&\n !(\n config.ignoredElements.length &&\n config.ignoredElements.some(function (ignore) {\n return isRegExp(ignore)\n ? ignore.test(vnode.tag)\n : ignore === vnode.tag\n })\n ) &&\n config.isUnknownElement(vnode.tag)\n )\n }\n\n var creatingElmInVPre = 0;\n\n function createElm (\n vnode,\n insertedVnodeQueue,\n parentElm,\n refElm,\n nested,\n ownerArray,\n index\n ) {\n if (isDef(vnode.elm) && isDef(ownerArray)) {\n // This vnode was used in a previous render!\n // now it's used as a new node, overwriting its elm would cause\n // potential patch errors down the road when it's used as an insertion\n // reference node. Instead, we clone the node on-demand before creating\n // associated DOM element for it.\n vnode = ownerArray[index] = cloneVNode(vnode);\n }\n\n vnode.isRootInsert = !nested; // for transition enter check\n if (createComponent(vnode, insertedVnodeQueue, parentElm, refElm)) {\n return\n }\n\n var data = vnode.data;\n var children = vnode.children;\n var tag = vnode.tag;\n if (isDef(tag)) {\n if (process.env.NODE_ENV !== 'production') {\n if (data && data.pre) {\n creatingElmInVPre++;\n }\n if (isUnknownElement$$1(vnode, creatingElmInVPre)) {\n warn(\n 'Unknown custom element: <' + tag + '> - did you ' +\n 'register the component correctly? For recursive components, ' +\n 'make sure to provide the \"name\" option.',\n vnode.context\n );\n }\n }\n\n vnode.elm = vnode.ns\n ? nodeOps.createElementNS(vnode.ns, tag)\n : nodeOps.createElement(tag, vnode);\n setScope(vnode);\n\n /* istanbul ignore if */\n {\n createChildren(vnode, children, insertedVnodeQueue);\n if (isDef(data)) {\n invokeCreateHooks(vnode, insertedVnodeQueue);\n }\n insert(parentElm, vnode.elm, refElm);\n }\n\n if (process.env.NODE_ENV !== 'production' && data && data.pre) {\n creatingElmInVPre--;\n }\n } else if (isTrue(vnode.isComment)) {\n vnode.elm = nodeOps.createComment(vnode.text);\n insert(parentElm, vnode.elm, refElm);\n } else {\n vnode.elm = nodeOps.createTextNode(vnode.text);\n insert(parentElm, vnode.elm, refElm);\n }\n }\n\n function createComponent (vnode, insertedVnodeQueue, parentElm, refElm) {\n var i = vnode.data;\n if (isDef(i)) {\n var isReactivated = isDef(vnode.componentInstance) && i.keepAlive;\n if (isDef(i = i.hook) && isDef(i = i.init)) {\n i(vnode, false /* hydrating */);\n }\n // after calling the init hook, if the vnode is a child component\n // it should've created a child instance and mounted it. the child\n // component also has set the placeholder vnode's elm.\n // in that case we can just return the element and be done.\n if (isDef(vnode.componentInstance)) {\n initComponent(vnode, insertedVnodeQueue);\n insert(parentElm, vnode.elm, refElm);\n if (isTrue(isReactivated)) {\n reactivateComponent(vnode, insertedVnodeQueue, parentElm, refElm);\n }\n return true\n }\n }\n }\n\n function initComponent (vnode, insertedVnodeQueue) {\n if (isDef(vnode.data.pendingInsert)) {\n insertedVnodeQueue.push.apply(insertedVnodeQueue, vnode.data.pendingInsert);\n vnode.data.pendingInsert = null;\n }\n vnode.elm = vnode.componentInstance.$el;\n if (isPatchable(vnode)) {\n invokeCreateHooks(vnode, insertedVnodeQueue);\n setScope(vnode);\n } else {\n // empty component root.\n // skip all element-related modules except for ref (#3455)\n registerRef(vnode);\n // make sure to invoke the insert hook\n insertedVnodeQueue.push(vnode);\n }\n }\n\n function reactivateComponent (vnode, insertedVnodeQueue, parentElm, refElm) {\n var i;\n // hack for #4339: a reactivated component with inner transition\n // does not trigger because the inner node's created hooks are not called\n // again. It's not ideal to involve module-specific logic in here but\n // there doesn't seem to be a better way to do it.\n var innerNode = vnode;\n while (innerNode.componentInstance) {\n innerNode = innerNode.componentInstance._vnode;\n if (isDef(i = innerNode.data) && isDef(i = i.transition)) {\n for (i = 0; i < cbs.activate.length; ++i) {\n cbs.activate[i](emptyNode, innerNode);\n }\n insertedVnodeQueue.push(innerNode);\n break\n }\n }\n // unlike a newly created component,\n // a reactivated keep-alive component doesn't insert itself\n insert(parentElm, vnode.elm, refElm);\n }\n\n function insert (parent, elm, ref$$1) {\n if (isDef(parent)) {\n if (isDef(ref$$1)) {\n if (nodeOps.parentNode(ref$$1) === parent) {\n nodeOps.insertBefore(parent, elm, ref$$1);\n }\n } else {\n nodeOps.appendChild(parent, elm);\n }\n }\n }\n\n function createChildren (vnode, children, insertedVnodeQueue) {\n if (Array.isArray(children)) {\n if (process.env.NODE_ENV !== 'production') {\n checkDuplicateKeys(children);\n }\n for (var i = 0; i < children.length; ++i) {\n createElm(children[i], insertedVnodeQueue, vnode.elm, null, true, children, i);\n }\n } else if (isPrimitive(vnode.text)) {\n nodeOps.appendChild(vnode.elm, nodeOps.createTextNode(String(vnode.text)));\n }\n }\n\n function isPatchable (vnode) {\n while (vnode.componentInstance) {\n vnode = vnode.componentInstance._vnode;\n }\n return isDef(vnode.tag)\n }\n\n function invokeCreateHooks (vnode, insertedVnodeQueue) {\n for (var i$1 = 0; i$1 < cbs.create.length; ++i$1) {\n cbs.create[i$1](emptyNode, vnode);\n }\n i = vnode.data.hook; // Reuse variable\n if (isDef(i)) {\n if (isDef(i.create)) { i.create(emptyNode, vnode); }\n if (isDef(i.insert)) { insertedVnodeQueue.push(vnode); }\n }\n }\n\n // set scope id attribute for scoped CSS.\n // this is implemented as a special case to avoid the overhead\n // of going through the normal attribute patching process.\n function setScope (vnode) {\n var i;\n if (isDef(i = vnode.fnScopeId)) {\n nodeOps.setStyleScope(vnode.elm, i);\n } else {\n var ancestor = vnode;\n while (ancestor) {\n if (isDef(i = ancestor.context) && isDef(i = i.$options._scopeId)) {\n nodeOps.setStyleScope(vnode.elm, i);\n }\n ancestor = ancestor.parent;\n }\n }\n // for slot content they should also get the scopeId from the host instance.\n if (isDef(i = activeInstance) &&\n i !== vnode.context &&\n i !== vnode.fnContext &&\n isDef(i = i.$options._scopeId)\n ) {\n nodeOps.setStyleScope(vnode.elm, i);\n }\n }\n\n function addVnodes (parentElm, refElm, vnodes, startIdx, endIdx, insertedVnodeQueue) {\n for (; startIdx <= endIdx; ++startIdx) {\n createElm(vnodes[startIdx], insertedVnodeQueue, parentElm, refElm, false, vnodes, startIdx);\n }\n }\n\n function invokeDestroyHook (vnode) {\n var i, j;\n var data = vnode.data;\n if (isDef(data)) {\n if (isDef(i = data.hook) && isDef(i = i.destroy)) { i(vnode); }\n for (i = 0; i < cbs.destroy.length; ++i) { cbs.destroy[i](vnode); }\n }\n if (isDef(i = vnode.children)) {\n for (j = 0; j < vnode.children.length; ++j) {\n invokeDestroyHook(vnode.children[j]);\n }\n }\n }\n\n function removeVnodes (vnodes, startIdx, endIdx) {\n for (; startIdx <= endIdx; ++startIdx) {\n var ch = vnodes[startIdx];\n if (isDef(ch)) {\n if (isDef(ch.tag)) {\n removeAndInvokeRemoveHook(ch);\n invokeDestroyHook(ch);\n } else { // Text node\n removeNode(ch.elm);\n }\n }\n }\n }\n\n function removeAndInvokeRemoveHook (vnode, rm) {\n if (isDef(rm) || isDef(vnode.data)) {\n var i;\n var listeners = cbs.remove.length + 1;\n if (isDef(rm)) {\n // we have a recursively passed down rm callback\n // increase the listeners count\n rm.listeners += listeners;\n } else {\n // directly removing\n rm = createRmCb(vnode.elm, listeners);\n }\n // recursively invoke hooks on child component root node\n if (isDef(i = vnode.componentInstance) && isDef(i = i._vnode) && isDef(i.data)) {\n removeAndInvokeRemoveHook(i, rm);\n }\n for (i = 0; i < cbs.remove.length; ++i) {\n cbs.remove[i](vnode, rm);\n }\n if (isDef(i = vnode.data.hook) && isDef(i = i.remove)) {\n i(vnode, rm);\n } else {\n rm();\n }\n } else {\n removeNode(vnode.elm);\n }\n }\n\n function updateChildren (parentElm, oldCh, newCh, insertedVnodeQueue, removeOnly) {\n var oldStartIdx = 0;\n var newStartIdx = 0;\n var oldEndIdx = oldCh.length - 1;\n var oldStartVnode = oldCh[0];\n var oldEndVnode = oldCh[oldEndIdx];\n var newEndIdx = newCh.length - 1;\n var newStartVnode = newCh[0];\n var newEndVnode = newCh[newEndIdx];\n var oldKeyToIdx, idxInOld, vnodeToMove, refElm;\n\n // removeOnly is a special flag used only by <transition-group>\n // to ensure removed elements stay in correct relative positions\n // during leaving transitions\n var canMove = !removeOnly;\n\n if (process.env.NODE_ENV !== 'production') {\n checkDuplicateKeys(newCh);\n }\n\n while (oldStartIdx <= oldEndIdx && newStartIdx <= newEndIdx) {\n if (isUndef(oldStartVnode)) {\n oldStartVnode = oldCh[++oldStartIdx]; // Vnode has been moved left\n } else if (isUndef(oldEndVnode)) {\n oldEndVnode = oldCh[--oldEndIdx];\n } else if (sameVnode(oldStartVnode, newStartVnode)) {\n patchVnode(oldStartVnode, newStartVnode, insertedVnodeQueue, newCh, newStartIdx);\n oldStartVnode = oldCh[++oldStartIdx];\n newStartVnode = newCh[++newStartIdx];\n } else if (sameVnode(oldEndVnode, newEndVnode)) {\n patchVnode(oldEndVnode, newEndVnode, insertedVnodeQueue, newCh, newEndIdx);\n oldEndVnode = oldCh[--oldEndIdx];\n newEndVnode = newCh[--newEndIdx];\n } else if (sameVnode(oldStartVnode, newEndVnode)) { // Vnode moved right\n patchVnode(oldStartVnode, newEndVnode, insertedVnodeQueue, newCh, newEndIdx);\n canMove && nodeOps.insertBefore(parentElm, oldStartVnode.elm, nodeOps.nextSibling(oldEndVnode.elm));\n oldStartVnode = oldCh[++oldStartIdx];\n newEndVnode = newCh[--newEndIdx];\n } else if (sameVnode(oldEndVnode, newStartVnode)) { // Vnode moved left\n patchVnode(oldEndVnode, newStartVnode, insertedVnodeQueue, newCh, newStartIdx);\n canMove && nodeOps.insertBefore(parentElm, oldEndVnode.elm, oldStartVnode.elm);\n oldEndVnode = oldCh[--oldEndIdx];\n newStartVnode = newCh[++newStartIdx];\n } else {\n if (isUndef(oldKeyToIdx)) { oldKeyToIdx = createKeyToOldIdx(oldCh, oldStartIdx, oldEndIdx); }\n idxInOld = isDef(newStartVnode.key)\n ? oldKeyToIdx[newStartVnode.key]\n : findIdxInOld(newStartVnode, oldCh, oldStartIdx, oldEndIdx);\n if (isUndef(idxInOld)) { // New element\n createElm(newStartVnode, insertedVnodeQueue, parentElm, oldStartVnode.elm, false, newCh, newStartIdx);\n } else {\n vnodeToMove = oldCh[idxInOld];\n if (sameVnode(vnodeToMove, newStartVnode)) {\n patchVnode(vnodeToMove, newStartVnode, insertedVnodeQueue, newCh, newStartIdx);\n oldCh[idxInOld] = undefined;\n canMove && nodeOps.insertBefore(parentElm, vnodeToMove.elm, oldStartVnode.elm);\n } else {\n // same key but different element. treat as new element\n createElm(newStartVnode, insertedVnodeQueue, parentElm, oldStartVnode.elm, false, newCh, newStartIdx);\n }\n }\n newStartVnode = newCh[++newStartIdx];\n }\n }\n if (oldStartIdx > oldEndIdx) {\n refElm = isUndef(newCh[newEndIdx + 1]) ? null : newCh[newEndIdx + 1].elm;\n addVnodes(parentElm, refElm, newCh, newStartIdx, newEndIdx, insertedVnodeQueue);\n } else if (newStartIdx > newEndIdx) {\n removeVnodes(oldCh, oldStartIdx, oldEndIdx);\n }\n }\n\n function checkDuplicateKeys (children) {\n var seenKeys = {};\n for (var i = 0; i < children.length; i++) {\n var vnode = children[i];\n var key = vnode.key;\n if (isDef(key)) {\n if (seenKeys[key]) {\n warn(\n (\"Duplicate keys detected: '\" + key + \"'. This may cause an update error.\"),\n vnode.context\n );\n } else {\n seenKeys[key] = true;\n }\n }\n }\n }\n\n function findIdxInOld (node, oldCh, start, end) {\n for (var i = start; i < end; i++) {\n var c = oldCh[i];\n if (isDef(c) && sameVnode(node, c)) { return i }\n }\n }\n\n function patchVnode (\n oldVnode,\n vnode,\n insertedVnodeQueue,\n ownerArray,\n index,\n removeOnly\n ) {\n if (oldVnode === vnode) {\n return\n }\n\n if (isDef(vnode.elm) && isDef(ownerArray)) {\n // clone reused vnode\n vnode = ownerArray[index] = cloneVNode(vnode);\n }\n\n var elm = vnode.elm = oldVnode.elm;\n\n if (isTrue(oldVnode.isAsyncPlaceholder)) {\n if (isDef(vnode.asyncFactory.resolved)) {\n hydrate(oldVnode.elm, vnode, insertedVnodeQueue);\n } else {\n vnode.isAsyncPlaceholder = true;\n }\n return\n }\n\n // reuse element for static trees.\n // note we only do this if the vnode is cloned -\n // if the new node is not cloned it means the render functions have been\n // reset by the hot-reload-api and we need to do a proper re-render.\n if (isTrue(vnode.isStatic) &&\n isTrue(oldVnode.isStatic) &&\n vnode.key === oldVnode.key &&\n (isTrue(vnode.isCloned) || isTrue(vnode.isOnce))\n ) {\n vnode.componentInstance = oldVnode.componentInstance;\n return\n }\n\n var i;\n var data = vnode.data;\n if (isDef(data) && isDef(i = data.hook) && isDef(i = i.prepatch)) {\n i(oldVnode, vnode);\n }\n\n var oldCh = oldVnode.children;\n var ch = vnode.children;\n if (isDef(data) && isPatchable(vnode)) {\n for (i = 0; i < cbs.update.length; ++i) { cbs.update[i](oldVnode, vnode); }\n if (isDef(i = data.hook) && isDef(i = i.update)) { i(oldVnode, vnode); }\n }\n if (isUndef(vnode.text)) {\n if (isDef(oldCh) && isDef(ch)) {\n if (oldCh !== ch) { updateChildren(elm, oldCh, ch, insertedVnodeQueue, removeOnly); }\n } else if (isDef(ch)) {\n if (process.env.NODE_ENV !== 'production') {\n checkDuplicateKeys(ch);\n }\n if (isDef(oldVnode.text)) { nodeOps.setTextContent(elm, ''); }\n addVnodes(elm, null, ch, 0, ch.length - 1, insertedVnodeQueue);\n } else if (isDef(oldCh)) {\n removeVnodes(oldCh, 0, oldCh.length - 1);\n } else if (isDef(oldVnode.text)) {\n nodeOps.setTextContent(elm, '');\n }\n } else if (oldVnode.text !== vnode.text) {\n nodeOps.setTextContent(elm, vnode.text);\n }\n if (isDef(data)) {\n if (isDef(i = data.hook) && isDef(i = i.postpatch)) { i(oldVnode, vnode); }\n }\n }\n\n function invokeInsertHook (vnode, queue, initial) {\n // delay insert hooks for component root nodes, invoke them after the\n // element is really inserted\n if (isTrue(initial) && isDef(vnode.parent)) {\n vnode.parent.data.pendingInsert = queue;\n } else {\n for (var i = 0; i < queue.length; ++i) {\n queue[i].data.hook.insert(queue[i]);\n }\n }\n }\n\n var hydrationBailed = false;\n // list of modules that can skip create hook during hydration because they\n // are already rendered on the client or has no need for initialization\n // Note: style is excluded because it relies on initial clone for future\n // deep updates (#7063).\n var isRenderedModule = makeMap('attrs,class,staticClass,staticStyle,key');\n\n // Note: this is a browser-only function so we can assume elms are DOM nodes.\n function hydrate (elm, vnode, insertedVnodeQueue, inVPre) {\n var i;\n var tag = vnode.tag;\n var data = vnode.data;\n var children = vnode.children;\n inVPre = inVPre || (data && data.pre);\n vnode.elm = elm;\n\n if (isTrue(vnode.isComment) && isDef(vnode.asyncFactory)) {\n vnode.isAsyncPlaceholder = true;\n return true\n }\n // assert node match\n if (process.env.NODE_ENV !== 'production') {\n if (!assertNodeMatch(elm, vnode, inVPre)) {\n return false\n }\n }\n if (isDef(data)) {\n if (isDef(i = data.hook) && isDef(i = i.init)) { i(vnode, true /* hydrating */); }\n if (isDef(i = vnode.componentInstance)) {\n // child component. it should have hydrated its own tree.\n initComponent(vnode, insertedVnodeQueue);\n return true\n }\n }\n if (isDef(tag)) {\n if (isDef(children)) {\n // empty element, allow client to pick up and populate children\n if (!elm.hasChildNodes()) {\n createChildren(vnode, children, insertedVnodeQueue);\n } else {\n // v-html and domProps: innerHTML\n if (isDef(i = data) && isDef(i = i.domProps) && isDef(i = i.innerHTML)) {\n if (i !== elm.innerHTML) {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' &&\n typeof console !== 'undefined' &&\n !hydrationBailed\n ) {\n hydrationBailed = true;\n console.warn('Parent: ', elm);\n console.warn('server innerHTML: ', i);\n console.warn('client innerHTML: ', elm.innerHTML);\n }\n return false\n }\n } else {\n // iterate and compare children lists\n var childrenMatch = true;\n var childNode = elm.firstChild;\n for (var i$1 = 0; i$1 < children.length; i$1++) {\n if (!childNode || !hydrate(childNode, children[i$1], insertedVnodeQueue, inVPre)) {\n childrenMatch = false;\n break\n }\n childNode = childNode.nextSibling;\n }\n // if childNode is not null, it means the actual childNodes list is\n // longer than the virtual children list.\n if (!childrenMatch || childNode) {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' &&\n typeof console !== 'undefined' &&\n !hydrationBailed\n ) {\n hydrationBailed = true;\n console.warn('Parent: ', elm);\n console.warn('Mismatching childNodes vs. VNodes: ', elm.childNodes, children);\n }\n return false\n }\n }\n }\n }\n if (isDef(data)) {\n var fullInvoke = false;\n for (var key in data) {\n if (!isRenderedModule(key)) {\n fullInvoke = true;\n invokeCreateHooks(vnode, insertedVnodeQueue);\n break\n }\n }\n if (!fullInvoke && data['class']) {\n // ensure collecting deps for deep class bindings for future updates\n traverse(data['class']);\n }\n }\n } else if (elm.data !== vnode.text) {\n elm.data = vnode.text;\n }\n return true\n }\n\n function assertNodeMatch (node, vnode, inVPre) {\n if (isDef(vnode.tag)) {\n return vnode.tag.indexOf('vue-component') === 0 || (\n !isUnknownElement$$1(vnode, inVPre) &&\n vnode.tag.toLowerCase() === (node.tagName && node.tagName.toLowerCase())\n )\n } else {\n return node.nodeType === (vnode.isComment ? 8 : 3)\n }\n }\n\n return function patch (oldVnode, vnode, hydrating, removeOnly) {\n if (isUndef(vnode)) {\n if (isDef(oldVnode)) { invokeDestroyHook(oldVnode); }\n return\n }\n\n var isInitialPatch = false;\n var insertedVnodeQueue = [];\n\n if (isUndef(oldVnode)) {\n // empty mount (likely as component), create new root element\n isInitialPatch = true;\n createElm(vnode, insertedVnodeQueue);\n } else {\n var isRealElement = isDef(oldVnode.nodeType);\n if (!isRealElement && sameVnode(oldVnode, vnode)) {\n // patch existing root node\n patchVnode(oldVnode, vnode, insertedVnodeQueue, null, null, removeOnly);\n } else {\n if (isRealElement) {\n // mounting to a real element\n // check if this is server-rendered content and if we can perform\n // a successful hydration.\n if (oldVnode.nodeType === 1 && oldVnode.hasAttribute(SSR_ATTR)) {\n oldVnode.removeAttribute(SSR_ATTR);\n hydrating = true;\n }\n if (isTrue(hydrating)) {\n if (hydrate(oldVnode, vnode, insertedVnodeQueue)) {\n invokeInsertHook(vnode, insertedVnodeQueue, true);\n return oldVnode\n } else if (process.env.NODE_ENV !== 'production') {\n warn(\n 'The client-side rendered virtual DOM tree is not matching ' +\n 'server-rendered content. This is likely caused by incorrect ' +\n 'HTML markup, for example nesting block-level elements inside ' +\n '<p>, or missing <tbody>. Bailing hydration and performing ' +\n 'full client-side render.'\n );\n }\n }\n // either not server-rendered, or hydration failed.\n // create an empty node and replace it\n oldVnode = emptyNodeAt(oldVnode);\n }\n\n // replacing existing element\n var oldElm = oldVnode.elm;\n var parentElm = nodeOps.parentNode(oldElm);\n\n // create new node\n createElm(\n vnode,\n insertedVnodeQueue,\n // extremely rare edge case: do not insert if old element is in a\n // leaving transition. Only happens when combining transition +\n // keep-alive + HOCs. (#4590)\n oldElm._leaveCb ? null : parentElm,\n nodeOps.nextSibling(oldElm)\n );\n\n // update parent placeholder node element, recursively\n if (isDef(vnode.parent)) {\n var ancestor = vnode.parent;\n var patchable = isPatchable(vnode);\n while (ancestor) {\n for (var i = 0; i < cbs.destroy.length; ++i) {\n cbs.destroy[i](ancestor);\n }\n ancestor.elm = vnode.elm;\n if (patchable) {\n for (var i$1 = 0; i$1 < cbs.create.length; ++i$1) {\n cbs.create[i$1](emptyNode, ancestor);\n }\n // #6513\n // invoke insert hooks that may have been merged by create hooks.\n // e.g. for directives that uses the \"inserted\" hook.\n var insert = ancestor.data.hook.insert;\n if (insert.merged) {\n // start at index 1 to avoid re-invoking component mounted hook\n for (var i$2 = 1; i$2 < insert.fns.length; i$2++) {\n insert.fns[i$2]();\n }\n }\n } else {\n registerRef(ancestor);\n }\n ancestor = ancestor.parent;\n }\n }\n\n // destroy old node\n if (isDef(parentElm)) {\n removeVnodes([oldVnode], 0, 0);\n } else if (isDef(oldVnode.tag)) {\n invokeDestroyHook(oldVnode);\n }\n }\n }\n\n invokeInsertHook(vnode, insertedVnodeQueue, isInitialPatch);\n return vnode.elm\n }\n}\n\n/* */\n\nvar directives = {\n create: updateDirectives,\n update: updateDirectives,\n destroy: function unbindDirectives (vnode) {\n updateDirectives(vnode, emptyNode);\n }\n};\n\nfunction updateDirectives (oldVnode, vnode) {\n if (oldVnode.data.directives || vnode.data.directives) {\n _update(oldVnode, vnode);\n }\n}\n\nfunction _update (oldVnode, vnode) {\n var isCreate = oldVnode === emptyNode;\n var isDestroy = vnode === emptyNode;\n var oldDirs = normalizeDirectives$1(oldVnode.data.directives, oldVnode.context);\n var newDirs = normalizeDirectives$1(vnode.data.directives, vnode.context);\n\n var dirsWithInsert = [];\n var dirsWithPostpatch = [];\n\n var key, oldDir, dir;\n for (key in newDirs) {\n oldDir = oldDirs[key];\n dir = newDirs[key];\n if (!oldDir) {\n // new directive, bind\n callHook$1(dir, 'bind', vnode, oldVnode);\n if (dir.def && dir.def.inserted) {\n dirsWithInsert.push(dir);\n }\n } else {\n // existing directive, update\n dir.oldValue = oldDir.value;\n dir.oldArg = oldDir.arg;\n callHook$1(dir, 'update', vnode, oldVnode);\n if (dir.def && dir.def.componentUpdated) {\n dirsWithPostpatch.push(dir);\n }\n }\n }\n\n if (dirsWithInsert.length) {\n var callInsert = function () {\n for (var i = 0; i < dirsWithInsert.length; i++) {\n callHook$1(dirsWithInsert[i], 'inserted', vnode, oldVnode);\n }\n };\n if (isCreate) {\n mergeVNodeHook(vnode, 'insert', callInsert);\n } else {\n callInsert();\n }\n }\n\n if (dirsWithPostpatch.length) {\n mergeVNodeHook(vnode, 'postpatch', function () {\n for (var i = 0; i < dirsWithPostpatch.length; i++) {\n callHook$1(dirsWithPostpatch[i], 'componentUpdated', vnode, oldVnode);\n }\n });\n }\n\n if (!isCreate) {\n for (key in oldDirs) {\n if (!newDirs[key]) {\n // no longer present, unbind\n callHook$1(oldDirs[key], 'unbind', oldVnode, oldVnode, isDestroy);\n }\n }\n }\n}\n\nvar emptyModifiers = Object.create(null);\n\nfunction normalizeDirectives$1 (\n dirs,\n vm\n) {\n var res = Object.create(null);\n if (!dirs) {\n // $flow-disable-line\n return res\n }\n var i, dir;\n for (i = 0; i < dirs.length; i++) {\n dir = dirs[i];\n if (!dir.modifiers) {\n // $flow-disable-line\n dir.modifiers = emptyModifiers;\n }\n res[getRawDirName(dir)] = dir;\n dir.def = resolveAsset(vm.$options, 'directives', dir.name, true);\n }\n // $flow-disable-line\n return res\n}\n\nfunction getRawDirName (dir) {\n return dir.rawName || ((dir.name) + \".\" + (Object.keys(dir.modifiers || {}).join('.')))\n}\n\nfunction callHook$1 (dir, hook, vnode, oldVnode, isDestroy) {\n var fn = dir.def && dir.def[hook];\n if (fn) {\n try {\n fn(vnode.elm, dir, vnode, oldVnode, isDestroy);\n } catch (e) {\n handleError(e, vnode.context, (\"directive \" + (dir.name) + \" \" + hook + \" hook\"));\n }\n }\n}\n\nvar baseModules = [\n ref,\n directives\n];\n\n/* */\n\nfunction updateAttrs (oldVnode, vnode) {\n var opts = vnode.componentOptions;\n if (isDef(opts) && opts.Ctor.options.inheritAttrs === false) {\n return\n }\n if (isUndef(oldVnode.data.attrs) && isUndef(vnode.data.attrs)) {\n return\n }\n var key, cur, old;\n var elm = vnode.elm;\n var oldAttrs = oldVnode.data.attrs || {};\n var attrs = vnode.data.attrs || {};\n // clone observed objects, as the user probably wants to mutate it\n if (isDef(attrs.__ob__)) {\n attrs = vnode.data.attrs = extend({}, attrs);\n }\n\n for (key in attrs) {\n cur = attrs[key];\n old = oldAttrs[key];\n if (old !== cur) {\n setAttr(elm, key, cur);\n }\n }\n // #4391: in IE9, setting type can reset value for input[type=radio]\n // #6666: IE/Edge forces progress value down to 1 before setting a max\n /* istanbul ignore if */\n if ((isIE || isEdge) && attrs.value !== oldAttrs.value) {\n setAttr(elm, 'value', attrs.value);\n }\n for (key in oldAttrs) {\n if (isUndef(attrs[key])) {\n if (isXlink(key)) {\n elm.removeAttributeNS(xlinkNS, getXlinkProp(key));\n } else if (!isEnumeratedAttr(key)) {\n elm.removeAttribute(key);\n }\n }\n }\n}\n\nfunction setAttr (el, key, value) {\n if (el.tagName.indexOf('-') > -1) {\n baseSetAttr(el, key, value);\n } else if (isBooleanAttr(key)) {\n // set attribute for blank value\n // e.g. <option disabled>Select one</option>\n if (isFalsyAttrValue(value)) {\n el.removeAttribute(key);\n } else {\n // technically allowfullscreen is a boolean attribute for <iframe>,\n // but Flash expects a value of \"true\" when used on <embed> tag\n value = key === 'allowfullscreen' && el.tagName === 'EMBED'\n ? 'true'\n : key;\n el.setAttribute(key, value);\n }\n } else if (isEnumeratedAttr(key)) {\n el.setAttribute(key, convertEnumeratedValue(key, value));\n } else if (isXlink(key)) {\n if (isFalsyAttrValue(value)) {\n el.removeAttributeNS(xlinkNS, getXlinkProp(key));\n } else {\n el.setAttributeNS(xlinkNS, key, value);\n }\n } else {\n baseSetAttr(el, key, value);\n }\n}\n\nfunction baseSetAttr (el, key, value) {\n if (isFalsyAttrValue(value)) {\n el.removeAttribute(key);\n } else {\n // #7138: IE10 & 11 fires input event when setting placeholder on\n // <textarea>... block the first input event and remove the blocker\n // immediately.\n /* istanbul ignore if */\n if (\n isIE && !isIE9 &&\n el.tagName === 'TEXTAREA' &&\n key === 'placeholder' && value !== '' && !el.__ieph\n ) {\n var blocker = function (e) {\n e.stopImmediatePropagation();\n el.removeEventListener('input', blocker);\n };\n el.addEventListener('input', blocker);\n // $flow-disable-line\n el.__ieph = true; /* IE placeholder patched */\n }\n el.setAttribute(key, value);\n }\n}\n\nvar attrs = {\n create: updateAttrs,\n update: updateAttrs\n};\n\n/* */\n\nfunction updateClass (oldVnode, vnode) {\n var el = vnode.elm;\n var data = vnode.data;\n var oldData = oldVnode.data;\n if (\n isUndef(data.staticClass) &&\n isUndef(data.class) && (\n isUndef(oldData) || (\n isUndef(oldData.staticClass) &&\n isUndef(oldData.class)\n )\n )\n ) {\n return\n }\n\n var cls = genClassForVnode(vnode);\n\n // handle transition classes\n var transitionClass = el._transitionClasses;\n if (isDef(transitionClass)) {\n cls = concat(cls, stringifyClass(transitionClass));\n }\n\n // set the class\n if (cls !== el._prevClass) {\n el.setAttribute('class', cls);\n el._prevClass = cls;\n }\n}\n\nvar klass = {\n create: updateClass,\n update: updateClass\n};\n\n/* */\n\nvar validDivisionCharRE = /[\\w).+\\-_$\\]]/;\n\nfunction parseFilters (exp) {\n var inSingle = false;\n var inDouble = false;\n var inTemplateString = false;\n var inRegex = false;\n var curly = 0;\n var square = 0;\n var paren = 0;\n var lastFilterIndex = 0;\n var c, prev, i, expression, filters;\n\n for (i = 0; i < exp.length; i++) {\n prev = c;\n c = exp.charCodeAt(i);\n if (inSingle) {\n if (c === 0x27 && prev !== 0x5C) { inSingle = false; }\n } else if (inDouble) {\n if (c === 0x22 && prev !== 0x5C) { inDouble = false; }\n } else if (inTemplateString) {\n if (c === 0x60 && prev !== 0x5C) { inTemplateString = false; }\n } else if (inRegex) {\n if (c === 0x2f && prev !== 0x5C) { inRegex = false; }\n } else if (\n c === 0x7C && // pipe\n exp.charCodeAt(i + 1) !== 0x7C &&\n exp.charCodeAt(i - 1) !== 0x7C &&\n !curly && !square && !paren\n ) {\n if (expression === undefined) {\n // first filter, end of expression\n lastFilterIndex = i + 1;\n expression = exp.slice(0, i).trim();\n } else {\n pushFilter();\n }\n } else {\n switch (c) {\n case 0x22: inDouble = true; break // \"\n case 0x27: inSingle = true; break // '\n case 0x60: inTemplateString = true; break // `\n case 0x28: paren++; break // (\n case 0x29: paren--; break // )\n case 0x5B: square++; break // [\n case 0x5D: square--; break // ]\n case 0x7B: curly++; break // {\n case 0x7D: curly--; break // }\n }\n if (c === 0x2f) { // /\n var j = i - 1;\n var p = (void 0);\n // find first non-whitespace prev char\n for (; j >= 0; j--) {\n p = exp.charAt(j);\n if (p !== ' ') { break }\n }\n if (!p || !validDivisionCharRE.test(p)) {\n inRegex = true;\n }\n }\n }\n }\n\n if (expression === undefined) {\n expression = exp.slice(0, i).trim();\n } else if (lastFilterIndex !== 0) {\n pushFilter();\n }\n\n function pushFilter () {\n (filters || (filters = [])).push(exp.slice(lastFilterIndex, i).trim());\n lastFilterIndex = i + 1;\n }\n\n if (filters) {\n for (i = 0; i < filters.length; i++) {\n expression = wrapFilter(expression, filters[i]);\n }\n }\n\n return expression\n}\n\nfunction wrapFilter (exp, filter) {\n var i = filter.indexOf('(');\n if (i < 0) {\n // _f: resolveFilter\n return (\"_f(\\\"\" + filter + \"\\\")(\" + exp + \")\")\n } else {\n var name = filter.slice(0, i);\n var args = filter.slice(i + 1);\n return (\"_f(\\\"\" + name + \"\\\")(\" + exp + (args !== ')' ? ',' + args : args))\n }\n}\n\n/* */\n\n\n\n/* eslint-disable no-unused-vars */\nfunction baseWarn (msg, range) {\n console.error((\"[Vue compiler]: \" + msg));\n}\n/* eslint-enable no-unused-vars */\n\nfunction pluckModuleFunction (\n modules,\n key\n) {\n return modules\n ? modules.map(function (m) { return m[key]; }).filter(function (_) { return _; })\n : []\n}\n\nfunction addProp (el, name, value, range, dynamic) {\n (el.props || (el.props = [])).push(rangeSetItem({ name: name, value: value, dynamic: dynamic }, range));\n el.plain = false;\n}\n\nfunction addAttr (el, name, value, range, dynamic) {\n var attrs = dynamic\n ? (el.dynamicAttrs || (el.dynamicAttrs = []))\n : (el.attrs || (el.attrs = []));\n attrs.push(rangeSetItem({ name: name, value: value, dynamic: dynamic }, range));\n el.plain = false;\n}\n\n// add a raw attr (use this in preTransforms)\nfunction addRawAttr (el, name, value, range) {\n el.attrsMap[name] = value;\n el.attrsList.push(rangeSetItem({ name: name, value: value }, range));\n}\n\nfunction addDirective (\n el,\n name,\n rawName,\n value,\n arg,\n isDynamicArg,\n modifiers,\n range\n) {\n (el.directives || (el.directives = [])).push(rangeSetItem({\n name: name,\n rawName: rawName,\n value: value,\n arg: arg,\n isDynamicArg: isDynamicArg,\n modifiers: modifiers\n }, range));\n el.plain = false;\n}\n\nfunction prependModifierMarker (symbol, name, dynamic) {\n return dynamic\n ? (\"_p(\" + name + \",\\\"\" + symbol + \"\\\")\")\n : symbol + name // mark the event as captured\n}\n\nfunction addHandler (\n el,\n name,\n value,\n modifiers,\n important,\n warn,\n range,\n dynamic\n) {\n modifiers = modifiers || emptyObject;\n // warn prevent and passive modifier\n /* istanbul ignore if */\n if (\n process.env.NODE_ENV !== 'production' && warn &&\n modifiers.prevent && modifiers.passive\n ) {\n warn(\n 'passive and prevent can\\'t be used together. ' +\n 'Passive handler can\\'t prevent default event.',\n range\n );\n }\n\n // normalize click.right and click.middle since they don't actually fire\n // this is technically browser-specific, but at least for now browsers are\n // the only target envs that have right/middle clicks.\n if (modifiers.right) {\n if (dynamic) {\n name = \"(\" + name + \")==='click'?'contextmenu':(\" + name + \")\";\n } else if (name === 'click') {\n name = 'contextmenu';\n delete modifiers.right;\n }\n } else if (modifiers.middle) {\n if (dynamic) {\n name = \"(\" + name + \")==='click'?'mouseup':(\" + name + \")\";\n } else if (name === 'click') {\n name = 'mouseup';\n }\n }\n\n // check capture modifier\n if (modifiers.capture) {\n delete modifiers.capture;\n name = prependModifierMarker('!', name, dynamic);\n }\n if (modifiers.once) {\n delete modifiers.once;\n name = prependModifierMarker('~', name, dynamic);\n }\n /* istanbul ignore if */\n if (modifiers.passive) {\n delete modifiers.passive;\n name = prependModifierMarker('&', name, dynamic);\n }\n\n var events;\n if (modifiers.native) {\n delete modifiers.native;\n events = el.nativeEvents || (el.nativeEvents = {});\n } else {\n events = el.events || (el.events = {});\n }\n\n var newHandler = rangeSetItem({ value: value.trim(), dynamic: dynamic }, range);\n if (modifiers !== emptyObject) {\n newHandler.modifiers = modifiers;\n }\n\n var handlers = events[name];\n /* istanbul ignore if */\n if (Array.isArray(handlers)) {\n important ? handlers.unshift(newHandler) : handlers.push(newHandler);\n } else if (handlers) {\n events[name] = important ? [newHandler, handlers] : [handlers, newHandler];\n } else {\n events[name] = newHandler;\n }\n\n el.plain = false;\n}\n\nfunction getRawBindingAttr (\n el,\n name\n) {\n return el.rawAttrsMap[':' + name] ||\n el.rawAttrsMap['v-bind:' + name] ||\n el.rawAttrsMap[name]\n}\n\nfunction getBindingAttr (\n el,\n name,\n getStatic\n) {\n var dynamicValue =\n getAndRemoveAttr(el, ':' + name) ||\n getAndRemoveAttr(el, 'v-bind:' + name);\n if (dynamicValue != null) {\n return parseFilters(dynamicValue)\n } else if (getStatic !== false) {\n var staticValue = getAndRemoveAttr(el, name);\n if (staticValue != null) {\n return JSON.stringify(staticValue)\n }\n }\n}\n\n// note: this only removes the attr from the Array (attrsList) so that it\n// doesn't get processed by processAttrs.\n// By default it does NOT remove it from the map (attrsMap) because the map is\n// needed during codegen.\nfunction getAndRemoveAttr (\n el,\n name,\n removeFromMap\n) {\n var val;\n if ((val = el.attrsMap[name]) != null) {\n var list = el.attrsList;\n for (var i = 0, l = list.length; i < l; i++) {\n if (list[i].name === name) {\n list.splice(i, 1);\n break\n }\n }\n }\n if (removeFromMap) {\n delete el.attrsMap[name];\n }\n return val\n}\n\nfunction getAndRemoveAttrByRegex (\n el,\n name\n) {\n var list = el.attrsList;\n for (var i = 0, l = list.length; i < l; i++) {\n var attr = list[i];\n if (name.test(attr.name)) {\n list.splice(i, 1);\n return attr\n }\n }\n}\n\nfunction rangeSetItem (\n item,\n range\n) {\n if (range) {\n if (range.start != null) {\n item.start = range.start;\n }\n if (range.end != null) {\n item.end = range.end;\n }\n }\n return item\n}\n\n/* */\n\n/**\n * Cross-platform code generation for component v-model\n */\nfunction genComponentModel (\n el,\n value,\n modifiers\n) {\n var ref = modifiers || {};\n var number = ref.number;\n var trim = ref.trim;\n\n var baseValueExpression = '$$v';\n var valueExpression = baseValueExpression;\n if (trim) {\n valueExpression =\n \"(typeof \" + baseValueExpression + \" === 'string'\" +\n \"? \" + baseValueExpression + \".trim()\" +\n \": \" + baseValueExpression + \")\";\n }\n if (number) {\n valueExpression = \"_n(\" + valueExpression + \")\";\n }\n var assignment = genAssignmentCode(value, valueExpression);\n\n el.model = {\n value: (\"(\" + value + \")\"),\n expression: JSON.stringify(value),\n callback: (\"function (\" + baseValueExpression + \") {\" + assignment + \"}\")\n };\n}\n\n/**\n * Cross-platform codegen helper for generating v-model value assignment code.\n */\nfunction genAssignmentCode (\n value,\n assignment\n) {\n var res = parseModel(value);\n if (res.key === null) {\n return (value + \"=\" + assignment)\n } else {\n return (\"$set(\" + (res.exp) + \", \" + (res.key) + \", \" + assignment + \")\")\n }\n}\n\n/**\n * Parse a v-model expression into a base path and a final key segment.\n * Handles both dot-path and possible square brackets.\n *\n * Possible cases:\n *\n * - test\n * - test[key]\n * - test[test1[key]]\n * - test[\"a\"][key]\n * - xxx.test[a[a].test1[key]]\n * - test.xxx.a[\"asa\"][test1[key]]\n *\n */\n\nvar len, str, chr, index$1, expressionPos, expressionEndPos;\n\n\n\nfunction parseModel (val) {\n // Fix https://github.com/vuejs/vue/pull/7730\n // allow v-model=\"obj.val \" (trailing whitespace)\n val = val.trim();\n len = val.length;\n\n if (val.indexOf('[') < 0 || val.lastIndexOf(']') < len - 1) {\n index$1 = val.lastIndexOf('.');\n if (index$1 > -1) {\n return {\n exp: val.slice(0, index$1),\n key: '\"' + val.slice(index$1 + 1) + '\"'\n }\n } else {\n return {\n exp: val,\n key: null\n }\n }\n }\n\n str = val;\n index$1 = expressionPos = expressionEndPos = 0;\n\n while (!eof()) {\n chr = next();\n /* istanbul ignore if */\n if (isStringStart(chr)) {\n parseString(chr);\n } else if (chr === 0x5B) {\n parseBracket(chr);\n }\n }\n\n return {\n exp: val.slice(0, expressionPos),\n key: val.slice(expressionPos + 1, expressionEndPos)\n }\n}\n\nfunction next () {\n return str.charCodeAt(++index$1)\n}\n\nfunction eof () {\n return index$1 >= len\n}\n\nfunction isStringStart (chr) {\n return chr === 0x22 || chr === 0x27\n}\n\nfunction parseBracket (chr) {\n var inBracket = 1;\n expressionPos = index$1;\n while (!eof()) {\n chr = next();\n if (isStringStart(chr)) {\n parseString(chr);\n continue\n }\n if (chr === 0x5B) { inBracket++; }\n if (chr === 0x5D) { inBracket--; }\n if (inBracket === 0) {\n expressionEndPos = index$1;\n break\n }\n }\n}\n\nfunction parseString (chr) {\n var stringQuote = chr;\n while (!eof()) {\n chr = next();\n if (chr === stringQuote) {\n break\n }\n }\n}\n\n/* */\n\nvar warn$1;\n\n// in some cases, the event used has to be determined at runtime\n// so we used some reserved tokens during compile.\nvar RANGE_TOKEN = '__r';\nvar CHECKBOX_RADIO_TOKEN = '__c';\n\nfunction model (\n el,\n dir,\n _warn\n) {\n warn$1 = _warn;\n var value = dir.value;\n var modifiers = dir.modifiers;\n var tag = el.tag;\n var type = el.attrsMap.type;\n\n if (process.env.NODE_ENV !== 'production') {\n // inputs with type=\"file\" are read only and setting the input's\n // value will throw an error.\n if (tag === 'input' && type === 'file') {\n warn$1(\n \"<\" + (el.tag) + \" v-model=\\\"\" + value + \"\\\" type=\\\"file\\\">:\\n\" +\n \"File inputs are read only. Use a v-on:change listener instead.\",\n el.rawAttrsMap['v-model']\n );\n }\n }\n\n if (el.component) {\n genComponentModel(el, value, modifiers);\n // component v-model doesn't need extra runtime\n return false\n } else if (tag === 'select') {\n genSelect(el, value, modifiers);\n } else if (tag === 'input' && type === 'checkbox') {\n genCheckboxModel(el, value, modifiers);\n } else if (tag === 'input' && type === 'radio') {\n genRadioModel(el, value, modifiers);\n } else if (tag === 'input' || tag === 'textarea') {\n genDefaultModel(el, value, modifiers);\n } else if (!config.isReservedTag(tag)) {\n genComponentModel(el, value, modifiers);\n // component v-model doesn't need extra runtime\n return false\n } else if (process.env.NODE_ENV !== 'production') {\n warn$1(\n \"<\" + (el.tag) + \" v-model=\\\"\" + value + \"\\\">: \" +\n \"v-model is not supported on this element type. \" +\n 'If you are working with contenteditable, it\\'s recommended to ' +\n 'wrap a library dedicated for that purpose inside a custom component.',\n el.rawAttrsMap['v-model']\n );\n }\n\n // ensure runtime directive metadata\n return true\n}\n\nfunction genCheckboxModel (\n el,\n value,\n modifiers\n) {\n var number = modifiers && modifiers.number;\n var valueBinding = getBindingAttr(el, 'value') || 'null';\n var trueValueBinding = getBindingAttr(el, 'true-value') || 'true';\n var falseValueBinding = getBindingAttr(el, 'false-value') || 'false';\n addProp(el, 'checked',\n \"Array.isArray(\" + value + \")\" +\n \"?_i(\" + value + \",\" + valueBinding + \")>-1\" + (\n trueValueBinding === 'true'\n ? (\":(\" + value + \")\")\n : (\":_q(\" + value + \",\" + trueValueBinding + \")\")\n )\n );\n addHandler(el, 'change',\n \"var $$a=\" + value + \",\" +\n '$$el=$event.target,' +\n \"$$c=$$el.checked?(\" + trueValueBinding + \"):(\" + falseValueBinding + \");\" +\n 'if(Array.isArray($$a)){' +\n \"var $$v=\" + (number ? '_n(' + valueBinding + ')' : valueBinding) + \",\" +\n '$$i=_i($$a,$$v);' +\n \"if($$el.checked){$$i<0&&(\" + (genAssignmentCode(value, '$$a.concat([$$v])')) + \")}\" +\n \"else{$$i>-1&&(\" + (genAssignmentCode(value, '$$a.slice(0,$$i).concat($$a.slice($$i+1))')) + \")}\" +\n \"}else{\" + (genAssignmentCode(value, '$$c')) + \"}\",\n null, true\n );\n}\n\nfunction genRadioModel (\n el,\n value,\n modifiers\n) {\n var number = modifiers && modifiers.number;\n var valueBinding = getBindingAttr(el, 'value') || 'null';\n valueBinding = number ? (\"_n(\" + valueBinding + \")\") : valueBinding;\n addProp(el, 'checked', (\"_q(\" + value + \",\" + valueBinding + \")\"));\n addHandler(el, 'change', genAssignmentCode(value, valueBinding), null, true);\n}\n\nfunction genSelect (\n el,\n value,\n modifiers\n) {\n var number = modifiers && modifiers.number;\n var selectedVal = \"Array.prototype.filter\" +\n \".call($event.target.options,function(o){return o.selected})\" +\n \".map(function(o){var val = \\\"_value\\\" in o ? o._value : o.value;\" +\n \"return \" + (number ? '_n(val)' : 'val') + \"})\";\n\n var assignment = '$event.target.multiple ? $$selectedVal : $$selectedVal[0]';\n var code = \"var $$selectedVal = \" + selectedVal + \";\";\n code = code + \" \" + (genAssignmentCode(value, assignment));\n addHandler(el, 'change', code, null, true);\n}\n\nfunction genDefaultModel (\n el,\n value,\n modifiers\n) {\n var type = el.attrsMap.type;\n\n // warn if v-bind:value conflicts with v-model\n // except for inputs with v-bind:type\n if (process.env.NODE_ENV !== 'production') {\n var value$1 = el.attrsMap['v-bind:value'] || el.attrsMap[':value'];\n var typeBinding = el.attrsMap['v-bind:type'] || el.attrsMap[':type'];\n if (value$1 && !typeBinding) {\n var binding = el.attrsMap['v-bind:value'] ? 'v-bind:value' : ':value';\n warn$1(\n binding + \"=\\\"\" + value$1 + \"\\\" conflicts with v-model on the same element \" +\n 'because the latter already expands to a value binding internally',\n el.rawAttrsMap[binding]\n );\n }\n }\n\n var ref = modifiers || {};\n var lazy = ref.lazy;\n var number = ref.number;\n var trim = ref.trim;\n var needCompositionGuard = !lazy && type !== 'range';\n var event = lazy\n ? 'change'\n : type === 'range'\n ? RANGE_TOKEN\n : 'input';\n\n var valueExpression = '$event.target.value';\n if (trim) {\n valueExpression = \"$event.target.value.trim()\";\n }\n if (number) {\n valueExpression = \"_n(\" + valueExpression + \")\";\n }\n\n var code = genAssignmentCode(value, valueExpression);\n if (needCompositionGuard) {\n code = \"if($event.target.composing)return;\" + code;\n }\n\n addProp(el, 'value', (\"(\" + value + \")\"));\n addHandler(el, event, code, null, true);\n if (trim || number) {\n addHandler(el, 'blur', '$forceUpdate()');\n }\n}\n\n/* */\n\n// normalize v-model event tokens that can only be determined at runtime.\n// it's important to place the event as the first in the array because\n// the whole point is ensuring the v-model callback gets called before\n// user-attached handlers.\nfunction normalizeEvents (on) {\n /* istanbul ignore if */\n if (isDef(on[RANGE_TOKEN])) {\n // IE input[type=range] only supports `change` event\n var event = isIE ? 'change' : 'input';\n on[event] = [].concat(on[RANGE_TOKEN], on[event] || []);\n delete on[RANGE_TOKEN];\n }\n // This was originally intended to fix #4521 but no longer necessary\n // after 2.5. Keeping it for backwards compat with generated code from < 2.4\n /* istanbul ignore if */\n if (isDef(on[CHECKBOX_RADIO_TOKEN])) {\n on.change = [].concat(on[CHECKBOX_RADIO_TOKEN], on.change || []);\n delete on[CHECKBOX_RADIO_TOKEN];\n }\n}\n\nvar target$1;\n\nfunction createOnceHandler$1 (event, handler, capture) {\n var _target = target$1; // save current target element in closure\n return function onceHandler () {\n var res = handler.apply(null, arguments);\n if (res !== null) {\n remove$2(event, onceHandler, capture, _target);\n }\n }\n}\n\n// #9446: Firefox <= 53 (in particular, ESR 52) has incorrect Event.timeStamp\n// implementation and does not fire microtasks in between event propagation, so\n// safe to exclude.\nvar useMicrotaskFix = isUsingMicroTask && !(isFF && Number(isFF[1]) <= 53);\n\nfunction add$1 (\n name,\n handler,\n capture,\n passive\n) {\n // async edge case #6566: inner click event triggers patch, event handler\n // attached to outer element during patch, and triggered again. This\n // happens because browsers fire microtask ticks between event propagation.\n // the solution is simple: we save the timestamp when a handler is attached,\n // and the handler would only fire if the event passed to it was fired\n // AFTER it was attached.\n if (useMicrotaskFix) {\n var attachedTimestamp = currentFlushTimestamp;\n var original = handler;\n handler = original._wrapper = function (e) {\n if (\n // no bubbling, should always fire.\n // this is just a safety net in case event.timeStamp is unreliable in\n // certain weird environments...\n e.target === e.currentTarget ||\n // event is fired after handler attachment\n e.timeStamp >= attachedTimestamp ||\n // bail for environments that have buggy event.timeStamp implementations\n // #9462 iOS 9 bug: event.timeStamp is 0 after history.pushState\n // #9681 QtWebEngine event.timeStamp is negative value\n e.timeStamp <= 0 ||\n // #9448 bail if event is fired in another document in a multi-page\n // electron/nw.js app, since event.timeStamp will be using a different\n // starting reference\n e.target.ownerDocument !== document\n ) {\n return original.apply(this, arguments)\n }\n };\n }\n target$1.addEventListener(\n name,\n handler,\n supportsPassive\n ? { capture: capture, passive: passive }\n : capture\n );\n}\n\nfunction remove$2 (\n name,\n handler,\n capture,\n _target\n) {\n (_target || target$1).removeEventListener(\n name,\n handler._wrapper || handler,\n capture\n );\n}\n\nfunction updateDOMListeners (oldVnode, vnode) {\n if (isUndef(oldVnode.data.on) && isUndef(vnode.data.on)) {\n return\n }\n var on = vnode.data.on || {};\n var oldOn = oldVnode.data.on || {};\n target$1 = vnode.elm;\n normalizeEvents(on);\n updateListeners(on, oldOn, add$1, remove$2, createOnceHandler$1, vnode.context);\n target$1 = undefined;\n}\n\nvar events = {\n create: updateDOMListeners,\n update: updateDOMListeners\n};\n\n/* */\n\nvar svgContainer;\n\nfunction updateDOMProps (oldVnode, vnode) {\n if (isUndef(oldVnode.data.domProps) && isUndef(vnode.data.domProps)) {\n return\n }\n var key, cur;\n var elm = vnode.elm;\n var oldProps = oldVnode.data.domProps || {};\n var props = vnode.data.domProps || {};\n // clone observed objects, as the user probably wants to mutate it\n if (isDef(props.__ob__)) {\n props = vnode.data.domProps = extend({}, props);\n }\n\n for (key in oldProps) {\n if (!(key in props)) {\n elm[key] = '';\n }\n }\n\n for (key in props) {\n cur = props[key];\n // ignore children if the node has textContent or innerHTML,\n // as these will throw away existing DOM nodes and cause removal errors\n // on subsequent patches (#3360)\n if (key === 'textContent' || key === 'innerHTML') {\n if (vnode.children) { vnode.children.length = 0; }\n if (cur === oldProps[key]) { continue }\n // #6601 work around Chrome version <= 55 bug where single textNode\n // replaced by innerHTML/textContent retains its parentNode property\n if (elm.childNodes.length === 1) {\n elm.removeChild(elm.childNodes[0]);\n }\n }\n\n if (key === 'value' && elm.tagName !== 'PROGRESS') {\n // store value as _value as well since\n // non-string values will be stringified\n elm._value = cur;\n // avoid resetting cursor position when value is the same\n var strCur = isUndef(cur) ? '' : String(cur);\n if (shouldUpdateValue(elm, strCur)) {\n elm.value = strCur;\n }\n } else if (key === 'innerHTML' && isSVG(elm.tagName) && isUndef(elm.innerHTML)) {\n // IE doesn't support innerHTML for SVG elements\n svgContainer = svgContainer || document.createElement('div');\n svgContainer.innerHTML = \"<svg>\" + cur + \"</svg>\";\n var svg = svgContainer.firstChild;\n while (elm.firstChild) {\n elm.removeChild(elm.firstChild);\n }\n while (svg.firstChild) {\n elm.appendChild(svg.firstChild);\n }\n } else if (\n // skip the update if old and new VDOM state is the same.\n // `value` is handled separately because the DOM value may be temporarily\n // out of sync with VDOM state due to focus, composition and modifiers.\n // This #4521 by skipping the unnecesarry `checked` update.\n cur !== oldProps[key]\n ) {\n // some property updates can throw\n // e.g. `value` on <progress> w/ non-finite value\n try {\n elm[key] = cur;\n } catch (e) {}\n }\n }\n}\n\n// check platforms/web/util/attrs.js acceptValue\n\n\nfunction shouldUpdateValue (elm, checkVal) {\n return (!elm.composing && (\n elm.tagName === 'OPTION' ||\n isNotInFocusAndDirty(elm, checkVal) ||\n isDirtyWithModifiers(elm, checkVal)\n ))\n}\n\nfunction isNotInFocusAndDirty (elm, checkVal) {\n // return true when textbox (.number and .trim) loses focus and its value is\n // not equal to the updated value\n var notInFocus = true;\n // #6157\n // work around IE bug when accessing document.activeElement in an iframe\n try { notInFocus = document.activeElement !== elm; } catch (e) {}\n return notInFocus && elm.value !== checkVal\n}\n\nfunction isDirtyWithModifiers (elm, newVal) {\n var value = elm.value;\n var modifiers = elm._vModifiers; // injected by v-model runtime\n if (isDef(modifiers)) {\n if (modifiers.number) {\n return toNumber(value) !== toNumber(newVal)\n }\n if (modifiers.trim) {\n return value.trim() !== newVal.trim()\n }\n }\n return value !== newVal\n}\n\nvar domProps = {\n create: updateDOMProps,\n update: updateDOMProps\n};\n\n/* */\n\nvar parseStyleText = cached(function (cssText) {\n var res = {};\n var listDelimiter = /;(?![^(]*\\))/g;\n var propertyDelimiter = /:(.+)/;\n cssText.split(listDelimiter).forEach(function (item) {\n if (item) {\n var tmp = item.split(propertyDelimiter);\n tmp.length > 1 && (res[tmp[0].trim()] = tmp[1].trim());\n }\n });\n return res\n});\n\n// merge static and dynamic style data on the same vnode\nfunction normalizeStyleData (data) {\n var style = normalizeStyleBinding(data.style);\n // static style is pre-processed into an object during compilation\n // and is always a fresh object, so it's safe to merge into it\n return data.staticStyle\n ? extend(data.staticStyle, style)\n : style\n}\n\n// normalize possible array / string values into Object\nfunction normalizeStyleBinding (bindingStyle) {\n if (Array.isArray(bindingStyle)) {\n return toObject(bindingStyle)\n }\n if (typeof bindingStyle === 'string') {\n return parseStyleText(bindingStyle)\n }\n return bindingStyle\n}\n\n/**\n * parent component style should be after child's\n * so that parent component's style could override it\n */\nfunction getStyle (vnode, checkChild) {\n var res = {};\n var styleData;\n\n if (checkChild) {\n var childNode = vnode;\n while (childNode.componentInstance) {\n childNode = childNode.componentInstance._vnode;\n if (\n childNode && childNode.data &&\n (styleData = normalizeStyleData(childNode.data))\n ) {\n extend(res, styleData);\n }\n }\n }\n\n if ((styleData = normalizeStyleData(vnode.data))) {\n extend(res, styleData);\n }\n\n var parentNode = vnode;\n while ((parentNode = parentNode.parent)) {\n if (parentNode.data && (styleData = normalizeStyleData(parentNode.data))) {\n extend(res, styleData);\n }\n }\n return res\n}\n\n/* */\n\nvar cssVarRE = /^--/;\nvar importantRE = /\\s*!important$/;\nvar setProp = function (el, name, val) {\n /* istanbul ignore if */\n if (cssVarRE.test(name)) {\n el.style.setProperty(name, val);\n } else if (importantRE.test(val)) {\n el.style.setProperty(hyphenate(name), val.replace(importantRE, ''), 'important');\n } else {\n var normalizedName = normalize(name);\n if (Array.isArray(val)) {\n // Support values array created by autoprefixer, e.g.\n // {display: [\"-webkit-box\", \"-ms-flexbox\", \"flex\"]}\n // Set them one by one, and the browser will only set those it can recognize\n for (var i = 0, len = val.length; i < len; i++) {\n el.style[normalizedName] = val[i];\n }\n } else {\n el.style[normalizedName] = val;\n }\n }\n};\n\nvar vendorNames = ['Webkit', 'Moz', 'ms'];\n\nvar emptyStyle;\nvar normalize = cached(function (prop) {\n emptyStyle = emptyStyle || document.createElement('div').style;\n prop = camelize(prop);\n if (prop !== 'filter' && (prop in emptyStyle)) {\n return prop\n }\n var capName = prop.charAt(0).toUpperCase() + prop.slice(1);\n for (var i = 0; i < vendorNames.length; i++) {\n var name = vendorNames[i] + capName;\n if (name in emptyStyle) {\n return name\n }\n }\n});\n\nfunction updateStyle (oldVnode, vnode) {\n var data = vnode.data;\n var oldData = oldVnode.data;\n\n if (isUndef(data.staticStyle) && isUndef(data.style) &&\n isUndef(oldData.staticStyle) && isUndef(oldData.style)\n ) {\n return\n }\n\n var cur, name;\n var el = vnode.elm;\n var oldStaticStyle = oldData.staticStyle;\n var oldStyleBinding = oldData.normalizedStyle || oldData.style || {};\n\n // if static style exists, stylebinding already merged into it when doing normalizeStyleData\n var oldStyle = oldStaticStyle || oldStyleBinding;\n\n var style = normalizeStyleBinding(vnode.data.style) || {};\n\n // store normalized style under a different key for next diff\n // make sure to clone it if it's reactive, since the user likely wants\n // to mutate it.\n vnode.data.normalizedStyle = isDef(style.__ob__)\n ? extend({}, style)\n : style;\n\n var newStyle = getStyle(vnode, true);\n\n for (name in oldStyle) {\n if (isUndef(newStyle[name])) {\n setProp(el, name, '');\n }\n }\n for (name in newStyle) {\n cur = newStyle[name];\n if (cur !== oldStyle[name]) {\n // ie9 setting to null has no effect, must use empty string\n setProp(el, name, cur == null ? '' : cur);\n }\n }\n}\n\nvar style = {\n create: updateStyle,\n update: updateStyle\n};\n\n/* */\n\nvar whitespaceRE = /\\s+/;\n\n/**\n * Add class with compatibility for SVG since classList is not supported on\n * SVG elements in IE\n */\nfunction addClass (el, cls) {\n /* istanbul ignore if */\n if (!cls || !(cls = cls.trim())) {\n return\n }\n\n /* istanbul ignore else */\n if (el.classList) {\n if (cls.indexOf(' ') > -1) {\n cls.split(whitespaceRE).forEach(function (c) { return el.classList.add(c); });\n } else {\n el.classList.add(cls);\n }\n } else {\n var cur = \" \" + (el.getAttribute('class') || '') + \" \";\n if (cur.indexOf(' ' + cls + ' ') < 0) {\n el.setAttribute('class', (cur + cls).trim());\n }\n }\n}\n\n/**\n * Remove class with compatibility for SVG since classList is not supported on\n * SVG elements in IE\n */\nfunction removeClass (el, cls) {\n /* istanbul ignore if */\n if (!cls || !(cls = cls.trim())) {\n return\n }\n\n /* istanbul ignore else */\n if (el.classList) {\n if (cls.indexOf(' ') > -1) {\n cls.split(whitespaceRE).forEach(function (c) { return el.classList.remove(c); });\n } else {\n el.classList.remove(cls);\n }\n if (!el.classList.length) {\n el.removeAttribute('class');\n }\n } else {\n var cur = \" \" + (el.getAttribute('class') || '') + \" \";\n var tar = ' ' + cls + ' ';\n while (cur.indexOf(tar) >= 0) {\n cur = cur.replace(tar, ' ');\n }\n cur = cur.trim();\n if (cur) {\n el.setAttribute('class', cur);\n } else {\n el.removeAttribute('class');\n }\n }\n}\n\n/* */\n\nfunction resolveTransition (def$$1) {\n if (!def$$1) {\n return\n }\n /* istanbul ignore else */\n if (typeof def$$1 === 'object') {\n var res = {};\n if (def$$1.css !== false) {\n extend(res, autoCssTransition(def$$1.name || 'v'));\n }\n extend(res, def$$1);\n return res\n } else if (typeof def$$1 === 'string') {\n return autoCssTransition(def$$1)\n }\n}\n\nvar autoCssTransition = cached(function (name) {\n return {\n enterClass: (name + \"-enter\"),\n enterToClass: (name + \"-enter-to\"),\n enterActiveClass: (name + \"-enter-active\"),\n leaveClass: (name + \"-leave\"),\n leaveToClass: (name + \"-leave-to\"),\n leaveActiveClass: (name + \"-leave-active\")\n }\n});\n\nvar hasTransition = inBrowser && !isIE9;\nvar TRANSITION = 'transition';\nvar ANIMATION = 'animation';\n\n// Transition property/event sniffing\nvar transitionProp = 'transition';\nvar transitionEndEvent = 'transitionend';\nvar animationProp = 'animation';\nvar animationEndEvent = 'animationend';\nif (hasTransition) {\n /* istanbul ignore if */\n if (window.ontransitionend === undefined &&\n window.onwebkittransitionend !== undefined\n ) {\n transitionProp = 'WebkitTransition';\n transitionEndEvent = 'webkitTransitionEnd';\n }\n if (window.onanimationend === undefined &&\n window.onwebkitanimationend !== undefined\n ) {\n animationProp = 'WebkitAnimation';\n animationEndEvent = 'webkitAnimationEnd';\n }\n}\n\n// binding to window is necessary to make hot reload work in IE in strict mode\nvar raf = inBrowser\n ? window.requestAnimationFrame\n ? window.requestAnimationFrame.bind(window)\n : setTimeout\n : /* istanbul ignore next */ function (fn) { return fn(); };\n\nfunction nextFrame (fn) {\n raf(function () {\n raf(fn);\n });\n}\n\nfunction addTransitionClass (el, cls) {\n var transitionClasses = el._transitionClasses || (el._transitionClasses = []);\n if (transitionClasses.indexOf(cls) < 0) {\n transitionClasses.push(cls);\n addClass(el, cls);\n }\n}\n\nfunction removeTransitionClass (el, cls) {\n if (el._transitionClasses) {\n remove(el._transitionClasses, cls);\n }\n removeClass(el, cls);\n}\n\nfunction whenTransitionEnds (\n el,\n expectedType,\n cb\n) {\n var ref = getTransitionInfo(el, expectedType);\n var type = ref.type;\n var timeout = ref.timeout;\n var propCount = ref.propCount;\n if (!type) { return cb() }\n var event = type === TRANSITION ? transitionEndEvent : animationEndEvent;\n var ended = 0;\n var end = function () {\n el.removeEventListener(event, onEnd);\n cb();\n };\n var onEnd = function (e) {\n if (e.target === el) {\n if (++ended >= propCount) {\n end();\n }\n }\n };\n setTimeout(function () {\n if (ended < propCount) {\n end();\n }\n }, timeout + 1);\n el.addEventListener(event, onEnd);\n}\n\nvar transformRE = /\\b(transform|all)(,|$)/;\n\nfunction getTransitionInfo (el, expectedType) {\n var styles = window.getComputedStyle(el);\n // JSDOM may return undefined for transition properties\n var transitionDelays = (styles[transitionProp + 'Delay'] || '').split(', ');\n var transitionDurations = (styles[transitionProp + 'Duration'] || '').split(', ');\n var transitionTimeout = getTimeout(transitionDelays, transitionDurations);\n var animationDelays = (styles[animationProp + 'Delay'] || '').split(', ');\n var animationDurations = (styles[animationProp + 'Duration'] || '').split(', ');\n var animationTimeout = getTimeout(animationDelays, animationDurations);\n\n var type;\n var timeout = 0;\n var propCount = 0;\n /* istanbul ignore if */\n if (expectedType === TRANSITION) {\n if (transitionTimeout > 0) {\n type = TRANSITION;\n timeout = transitionTimeout;\n propCount = transitionDurations.length;\n }\n } else if (expectedType === ANIMATION) {\n if (animationTimeout > 0) {\n type = ANIMATION;\n timeout = animationTimeout;\n propCount = animationDurations.length;\n }\n } else {\n timeout = Math.max(transitionTimeout, animationTimeout);\n type = timeout > 0\n ? transitionTimeout > animationTimeout\n ? TRANSITION\n : ANIMATION\n : null;\n propCount = type\n ? type === TRANSITION\n ? transitionDurations.length\n : animationDurations.length\n : 0;\n }\n var hasTransform =\n type === TRANSITION &&\n transformRE.test(styles[transitionProp + 'Property']);\n return {\n type: type,\n timeout: timeout,\n propCount: propCount,\n hasTransform: hasTransform\n }\n}\n\nfunction getTimeout (delays, durations) {\n /* istanbul ignore next */\n while (delays.length < durations.length) {\n delays = delays.concat(delays);\n }\n\n return Math.max.apply(null, durations.map(function (d, i) {\n return toMs(d) + toMs(delays[i])\n }))\n}\n\n// Old versions of Chromium (below 61.0.3163.100) formats floating pointer numbers\n// in a locale-dependent way, using a comma instead of a dot.\n// If comma is not replaced with a dot, the input will be rounded down (i.e. acting\n// as a floor function) causing unexpected behaviors\nfunction toMs (s) {\n return Number(s.slice(0, -1).replace(',', '.')) * 1000\n}\n\n/* */\n\nfunction enter (vnode, toggleDisplay) {\n var el = vnode.elm;\n\n // call leave callback now\n if (isDef(el._leaveCb)) {\n el._leaveCb.cancelled = true;\n el._leaveCb();\n }\n\n var data = resolveTransition(vnode.data.transition);\n if (isUndef(data)) {\n return\n }\n\n /* istanbul ignore if */\n if (isDef(el._enterCb) || el.nodeType !== 1) {\n return\n }\n\n var css = data.css;\n var type = data.type;\n var enterClass = data.enterClass;\n var enterToClass = data.enterToClass;\n var enterActiveClass = data.enterActiveClass;\n var appearClass = data.appearClass;\n var appearToClass = data.appearToClass;\n var appearActiveClass = data.appearActiveClass;\n var beforeEnter = data.beforeEnter;\n var enter = data.enter;\n var afterEnter = data.afterEnter;\n var enterCancelled = data.enterCancelled;\n var beforeAppear = data.beforeAppear;\n var appear = data.appear;\n var afterAppear = data.afterAppear;\n var appearCancelled = data.appearCancelled;\n var duration = data.duration;\n\n // activeInstance will always be the <transition> component managing this\n // transition. One edge case to check is when the <transition> is placed\n // as the root node of a child component. In that case we need to check\n // <transition>'s parent for appear check.\n var context = activeInstance;\n var transitionNode = activeInstance.$vnode;\n while (transitionNode && transitionNode.parent) {\n context = transitionNode.context;\n transitionNode = transitionNode.parent;\n }\n\n var isAppear = !context._isMounted || !vnode.isRootInsert;\n\n if (isAppear && !appear && appear !== '') {\n return\n }\n\n var startClass = isAppear && appearClass\n ? appearClass\n : enterClass;\n var activeClass = isAppear && appearActiveClass\n ? appearActiveClass\n : enterActiveClass;\n var toClass = isAppear && appearToClass\n ? appearToClass\n : enterToClass;\n\n var beforeEnterHook = isAppear\n ? (beforeAppear || beforeEnter)\n : beforeEnter;\n var enterHook = isAppear\n ? (typeof appear === 'function' ? appear : enter)\n : enter;\n var afterEnterHook = isAppear\n ? (afterAppear || afterEnter)\n : afterEnter;\n var enterCancelledHook = isAppear\n ? (appearCancelled || enterCancelled)\n : enterCancelled;\n\n var explicitEnterDuration = toNumber(\n isObject(duration)\n ? duration.enter\n : duration\n );\n\n if (process.env.NODE_ENV !== 'production' && explicitEnterDuration != null) {\n checkDuration(explicitEnterDuration, 'enter', vnode);\n }\n\n var expectsCSS = css !== false && !isIE9;\n var userWantsControl = getHookArgumentsLength(enterHook);\n\n var cb = el._enterCb = once(function () {\n if (expectsCSS) {\n removeTransitionClass(el, toClass);\n removeTransitionClass(el, activeClass);\n }\n if (cb.cancelled) {\n if (expectsCSS) {\n removeTransitionClass(el, startClass);\n }\n enterCancelledHook && enterCancelledHook(el);\n } else {\n afterEnterHook && afterEnterHook(el);\n }\n el._enterCb = null;\n });\n\n if (!vnode.data.show) {\n // remove pending leave element on enter by injecting an insert hook\n mergeVNodeHook(vnode, 'insert', function () {\n var parent = el.parentNode;\n var pendingNode = parent && parent._pending && parent._pending[vnode.key];\n if (pendingNode &&\n pendingNode.tag === vnode.tag &&\n pendingNode.elm._leaveCb\n ) {\n pendingNode.elm._leaveCb();\n }\n enterHook && enterHook(el, cb);\n });\n }\n\n // start enter transition\n beforeEnterHook && beforeEnterHook(el);\n if (expectsCSS) {\n addTransitionClass(el, startClass);\n addTransitionClass(el, activeClass);\n nextFrame(function () {\n removeTransitionClass(el, startClass);\n if (!cb.cancelled) {\n addTransitionClass(el, toClass);\n if (!userWantsControl) {\n if (isValidDuration(explicitEnterDuration)) {\n setTimeout(cb, explicitEnterDuration);\n } else {\n whenTransitionEnds(el, type, cb);\n }\n }\n }\n });\n }\n\n if (vnode.data.show) {\n toggleDisplay && toggleDisplay();\n enterHook && enterHook(el, cb);\n }\n\n if (!expectsCSS && !userWantsControl) {\n cb();\n }\n}\n\nfunction leave (vnode, rm) {\n var el = vnode.elm;\n\n // call enter callback now\n if (isDef(el._enterCb)) {\n el._enterCb.cancelled = true;\n el._enterCb();\n }\n\n var data = resolveTransition(vnode.data.transition);\n if (isUndef(data) || el.nodeType !== 1) {\n return rm()\n }\n\n /* istanbul ignore if */\n if (isDef(el._leaveCb)) {\n return\n }\n\n var css = data.css;\n var type = data.type;\n var leaveClass = data.leaveClass;\n var leaveToClass = data.leaveToClass;\n var leaveActiveClass = data.leaveActiveClass;\n var beforeLeave = data.beforeLeave;\n var leave = data.leave;\n var afterLeave = data.afterLeave;\n var leaveCancelled = data.leaveCancelled;\n var delayLeave = data.delayLeave;\n var duration = data.duration;\n\n var expectsCSS = css !== false && !isIE9;\n var userWantsControl = getHookArgumentsLength(leave);\n\n var explicitLeaveDuration = toNumber(\n isObject(duration)\n ? duration.leave\n : duration\n );\n\n if (process.env.NODE_ENV !== 'production' && isDef(explicitLeaveDuration)) {\n checkDuration(explicitLeaveDuration, 'leave', vnode);\n }\n\n var cb = el._leaveCb = once(function () {\n if (el.parentNode && el.parentNode._pending) {\n el.parentNode._pending[vnode.key] = null;\n }\n if (expectsCSS) {\n removeTransitionClass(el, leaveToClass);\n removeTransitionClass(el, leaveActiveClass);\n }\n if (cb.cancelled) {\n if (expectsCSS) {\n removeTransitionClass(el, leaveClass);\n }\n leaveCancelled && leaveCancelled(el);\n } else {\n rm();\n afterLeave && afterLeave(el);\n }\n el._leaveCb = null;\n });\n\n if (delayLeave) {\n delayLeave(performLeave);\n } else {\n performLeave();\n }\n\n function performLeave () {\n // the delayed leave may have already been cancelled\n if (cb.cancelled) {\n return\n }\n // record leaving element\n if (!vnode.data.show && el.parentNode) {\n (el.parentNode._pending || (el.parentNode._pending = {}))[(vnode.key)] = vnode;\n }\n beforeLeave && beforeLeave(el);\n if (expectsCSS) {\n addTransitionClass(el, leaveClass);\n addTransitionClass(el, leaveActiveClass);\n nextFrame(function () {\n removeTransitionClass(el, leaveClass);\n if (!cb.cancelled) {\n addTransitionClass(el, leaveToClass);\n if (!userWantsControl) {\n if (isValidDuration(explicitLeaveDuration)) {\n setTimeout(cb, explicitLeaveDuration);\n } else {\n whenTransitionEnds(el, type, cb);\n }\n }\n }\n });\n }\n leave && leave(el, cb);\n if (!expectsCSS && !userWantsControl) {\n cb();\n }\n }\n}\n\n// only used in dev mode\nfunction checkDuration (val, name, vnode) {\n if (typeof val !== 'number') {\n warn(\n \"<transition> explicit \" + name + \" duration is not a valid number - \" +\n \"got \" + (JSON.stringify(val)) + \".\",\n vnode.context\n );\n } else if (isNaN(val)) {\n warn(\n \"<transition> explicit \" + name + \" duration is NaN - \" +\n 'the duration expression might be incorrect.',\n vnode.context\n );\n }\n}\n\nfunction isValidDuration (val) {\n return typeof val === 'number' && !isNaN(val)\n}\n\n/**\n * Normalize a transition hook's argument length. The hook may be:\n * - a merged hook (invoker) with the original in .fns\n * - a wrapped component method (check ._length)\n * - a plain function (.length)\n */\nfunction getHookArgumentsLength (fn) {\n if (isUndef(fn)) {\n return false\n }\n var invokerFns = fn.fns;\n if (isDef(invokerFns)) {\n // invoker\n return getHookArgumentsLength(\n Array.isArray(invokerFns)\n ? invokerFns[0]\n : invokerFns\n )\n } else {\n return (fn._length || fn.length) > 1\n }\n}\n\nfunction _enter (_, vnode) {\n if (vnode.data.show !== true) {\n enter(vnode);\n }\n}\n\nvar transition = inBrowser ? {\n create: _enter,\n activate: _enter,\n remove: function remove$$1 (vnode, rm) {\n /* istanbul ignore else */\n if (vnode.data.show !== true) {\n leave(vnode, rm);\n } else {\n rm();\n }\n }\n} : {};\n\nvar platformModules = [\n attrs,\n klass,\n events,\n domProps,\n style,\n transition\n];\n\n/* */\n\n// the directive module should be applied last, after all\n// built-in modules have been applied.\nvar modules = platformModules.concat(baseModules);\n\nvar patch = createPatchFunction({ nodeOps: nodeOps, modules: modules });\n\n/**\n * Not type checking this file because flow doesn't like attaching\n * properties to Elements.\n */\n\n/* istanbul ignore if */\nif (isIE9) {\n // http://www.matts411.com/post/internet-explorer-9-oninput/\n document.addEventListener('selectionchange', function () {\n var el = document.activeElement;\n if (el && el.vmodel) {\n trigger(el, 'input');\n }\n });\n}\n\nvar directive = {\n inserted: function inserted (el, binding, vnode, oldVnode) {\n if (vnode.tag === 'select') {\n // #6903\n if (oldVnode.elm && !oldVnode.elm._vOptions) {\n mergeVNodeHook(vnode, 'postpatch', function () {\n directive.componentUpdated(el, binding, vnode);\n });\n } else {\n setSelected(el, binding, vnode.context);\n }\n el._vOptions = [].map.call(el.options, getValue);\n } else if (vnode.tag === 'textarea' || isTextInputType(el.type)) {\n el._vModifiers = binding.modifiers;\n if (!binding.modifiers.lazy) {\n el.addEventListener('compositionstart', onCompositionStart);\n el.addEventListener('compositionend', onCompositionEnd);\n // Safari < 10.2 & UIWebView doesn't fire compositionend when\n // switching focus before confirming composition choice\n // this also fixes the issue where some browsers e.g. iOS Chrome\n // fires \"change\" instead of \"input\" on autocomplete.\n el.addEventListener('change', onCompositionEnd);\n /* istanbul ignore if */\n if (isIE9) {\n el.vmodel = true;\n }\n }\n }\n },\n\n componentUpdated: function componentUpdated (el, binding, vnode) {\n if (vnode.tag === 'select') {\n setSelected(el, binding, vnode.context);\n // in case the options rendered by v-for have changed,\n // it's possible that the value is out-of-sync with the rendered options.\n // detect such cases and filter out values that no longer has a matching\n // option in the DOM.\n var prevOptions = el._vOptions;\n var curOptions = el._vOptions = [].map.call(el.options, getValue);\n if (curOptions.some(function (o, i) { return !looseEqual(o, prevOptions[i]); })) {\n // trigger change event if\n // no matching option found for at least one value\n var needReset = el.multiple\n ? binding.value.some(function (v) { return hasNoMatchingOption(v, curOptions); })\n : binding.value !== binding.oldValue && hasNoMatchingOption(binding.value, curOptions);\n if (needReset) {\n trigger(el, 'change');\n }\n }\n }\n }\n};\n\nfunction setSelected (el, binding, vm) {\n actuallySetSelected(el, binding, vm);\n /* istanbul ignore if */\n if (isIE || isEdge) {\n setTimeout(function () {\n actuallySetSelected(el, binding, vm);\n }, 0);\n }\n}\n\nfunction actuallySetSelected (el, binding, vm) {\n var value = binding.value;\n var isMultiple = el.multiple;\n if (isMultiple && !Array.isArray(value)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"<select multiple v-model=\\\"\" + (binding.expression) + \"\\\"> \" +\n \"expects an Array value for its binding, but got \" + (Object.prototype.toString.call(value).slice(8, -1)),\n vm\n );\n return\n }\n var selected, option;\n for (var i = 0, l = el.options.length; i < l; i++) {\n option = el.options[i];\n if (isMultiple) {\n selected = looseIndexOf(value, getValue(option)) > -1;\n if (option.selected !== selected) {\n option.selected = selected;\n }\n } else {\n if (looseEqual(getValue(option), value)) {\n if (el.selectedIndex !== i) {\n el.selectedIndex = i;\n }\n return\n }\n }\n }\n if (!isMultiple) {\n el.selectedIndex = -1;\n }\n}\n\nfunction hasNoMatchingOption (value, options) {\n return options.every(function (o) { return !looseEqual(o, value); })\n}\n\nfunction getValue (option) {\n return '_value' in option\n ? option._value\n : option.value\n}\n\nfunction onCompositionStart (e) {\n e.target.composing = true;\n}\n\nfunction onCompositionEnd (e) {\n // prevent triggering an input event for no reason\n if (!e.target.composing) { return }\n e.target.composing = false;\n trigger(e.target, 'input');\n}\n\nfunction trigger (el, type) {\n var e = document.createEvent('HTMLEvents');\n e.initEvent(type, true, true);\n el.dispatchEvent(e);\n}\n\n/* */\n\n// recursively search for possible transition defined inside the component root\nfunction locateNode (vnode) {\n return vnode.componentInstance && (!vnode.data || !vnode.data.transition)\n ? locateNode(vnode.componentInstance._vnode)\n : vnode\n}\n\nvar show = {\n bind: function bind (el, ref, vnode) {\n var value = ref.value;\n\n vnode = locateNode(vnode);\n var transition$$1 = vnode.data && vnode.data.transition;\n var originalDisplay = el.__vOriginalDisplay =\n el.style.display === 'none' ? '' : el.style.display;\n if (value && transition$$1) {\n vnode.data.show = true;\n enter(vnode, function () {\n el.style.display = originalDisplay;\n });\n } else {\n el.style.display = value ? originalDisplay : 'none';\n }\n },\n\n update: function update (el, ref, vnode) {\n var value = ref.value;\n var oldValue = ref.oldValue;\n\n /* istanbul ignore if */\n if (!value === !oldValue) { return }\n vnode = locateNode(vnode);\n var transition$$1 = vnode.data && vnode.data.transition;\n if (transition$$1) {\n vnode.data.show = true;\n if (value) {\n enter(vnode, function () {\n el.style.display = el.__vOriginalDisplay;\n });\n } else {\n leave(vnode, function () {\n el.style.display = 'none';\n });\n }\n } else {\n el.style.display = value ? el.__vOriginalDisplay : 'none';\n }\n },\n\n unbind: function unbind (\n el,\n binding,\n vnode,\n oldVnode,\n isDestroy\n ) {\n if (!isDestroy) {\n el.style.display = el.__vOriginalDisplay;\n }\n }\n};\n\nvar platformDirectives = {\n model: directive,\n show: show\n};\n\n/* */\n\nvar transitionProps = {\n name: String,\n appear: Boolean,\n css: Boolean,\n mode: String,\n type: String,\n enterClass: String,\n leaveClass: String,\n enterToClass: String,\n leaveToClass: String,\n enterActiveClass: String,\n leaveActiveClass: String,\n appearClass: String,\n appearActiveClass: String,\n appearToClass: String,\n duration: [Number, String, Object]\n};\n\n// in case the child is also an abstract component, e.g. <keep-alive>\n// we want to recursively retrieve the real component to be rendered\nfunction getRealChild (vnode) {\n var compOptions = vnode && vnode.componentOptions;\n if (compOptions && compOptions.Ctor.options.abstract) {\n return getRealChild(getFirstComponentChild(compOptions.children))\n } else {\n return vnode\n }\n}\n\nfunction extractTransitionData (comp) {\n var data = {};\n var options = comp.$options;\n // props\n for (var key in options.propsData) {\n data[key] = comp[key];\n }\n // events.\n // extract listeners and pass them directly to the transition methods\n var listeners = options._parentListeners;\n for (var key$1 in listeners) {\n data[camelize(key$1)] = listeners[key$1];\n }\n return data\n}\n\nfunction placeholder (h, rawChild) {\n if (/\\d-keep-alive$/.test(rawChild.tag)) {\n return h('keep-alive', {\n props: rawChild.componentOptions.propsData\n })\n }\n}\n\nfunction hasParentTransition (vnode) {\n while ((vnode = vnode.parent)) {\n if (vnode.data.transition) {\n return true\n }\n }\n}\n\nfunction isSameChild (child, oldChild) {\n return oldChild.key === child.key && oldChild.tag === child.tag\n}\n\nvar isNotTextNode = function (c) { return c.tag || isAsyncPlaceholder(c); };\n\nvar isVShowDirective = function (d) { return d.name === 'show'; };\n\nvar Transition = {\n name: 'transition',\n props: transitionProps,\n abstract: true,\n\n render: function render (h) {\n var this$1 = this;\n\n var children = this.$slots.default;\n if (!children) {\n return\n }\n\n // filter out text nodes (possible whitespaces)\n children = children.filter(isNotTextNode);\n /* istanbul ignore if */\n if (!children.length) {\n return\n }\n\n // warn multiple elements\n if (process.env.NODE_ENV !== 'production' && children.length > 1) {\n warn(\n '<transition> can only be used on a single element. Use ' +\n '<transition-group> for lists.',\n this.$parent\n );\n }\n\n var mode = this.mode;\n\n // warn invalid mode\n if (process.env.NODE_ENV !== 'production' &&\n mode && mode !== 'in-out' && mode !== 'out-in'\n ) {\n warn(\n 'invalid <transition> mode: ' + mode,\n this.$parent\n );\n }\n\n var rawChild = children[0];\n\n // if this is a component root node and the component's\n // parent container node also has transition, skip.\n if (hasParentTransition(this.$vnode)) {\n return rawChild\n }\n\n // apply transition data to child\n // use getRealChild() to ignore abstract components e.g. keep-alive\n var child = getRealChild(rawChild);\n /* istanbul ignore if */\n if (!child) {\n return rawChild\n }\n\n if (this._leaving) {\n return placeholder(h, rawChild)\n }\n\n // ensure a key that is unique to the vnode type and to this transition\n // component instance. This key will be used to remove pending leaving nodes\n // during entering.\n var id = \"__transition-\" + (this._uid) + \"-\";\n child.key = child.key == null\n ? child.isComment\n ? id + 'comment'\n : id + child.tag\n : isPrimitive(child.key)\n ? (String(child.key).indexOf(id) === 0 ? child.key : id + child.key)\n : child.key;\n\n var data = (child.data || (child.data = {})).transition = extractTransitionData(this);\n var oldRawChild = this._vnode;\n var oldChild = getRealChild(oldRawChild);\n\n // mark v-show\n // so that the transition module can hand over the control to the directive\n if (child.data.directives && child.data.directives.some(isVShowDirective)) {\n child.data.show = true;\n }\n\n if (\n oldChild &&\n oldChild.data &&\n !isSameChild(child, oldChild) &&\n !isAsyncPlaceholder(oldChild) &&\n // #6687 component root is a comment node\n !(oldChild.componentInstance && oldChild.componentInstance._vnode.isComment)\n ) {\n // replace old child transition data with fresh one\n // important for dynamic transitions!\n var oldData = oldChild.data.transition = extend({}, data);\n // handle transition mode\n if (mode === 'out-in') {\n // return placeholder node and queue update when leave finishes\n this._leaving = true;\n mergeVNodeHook(oldData, 'afterLeave', function () {\n this$1._leaving = false;\n this$1.$forceUpdate();\n });\n return placeholder(h, rawChild)\n } else if (mode === 'in-out') {\n if (isAsyncPlaceholder(child)) {\n return oldRawChild\n }\n var delayedLeave;\n var performLeave = function () { delayedLeave(); };\n mergeVNodeHook(data, 'afterEnter', performLeave);\n mergeVNodeHook(data, 'enterCancelled', performLeave);\n mergeVNodeHook(oldData, 'delayLeave', function (leave) { delayedLeave = leave; });\n }\n }\n\n return rawChild\n }\n};\n\n/* */\n\nvar props = extend({\n tag: String,\n moveClass: String\n}, transitionProps);\n\ndelete props.mode;\n\nvar TransitionGroup = {\n props: props,\n\n beforeMount: function beforeMount () {\n var this$1 = this;\n\n var update = this._update;\n this._update = function (vnode, hydrating) {\n var restoreActiveInstance = setActiveInstance(this$1);\n // force removing pass\n this$1.__patch__(\n this$1._vnode,\n this$1.kept,\n false, // hydrating\n true // removeOnly (!important, avoids unnecessary moves)\n );\n this$1._vnode = this$1.kept;\n restoreActiveInstance();\n update.call(this$1, vnode, hydrating);\n };\n },\n\n render: function render (h) {\n var tag = this.tag || this.$vnode.data.tag || 'span';\n var map = Object.create(null);\n var prevChildren = this.prevChildren = this.children;\n var rawChildren = this.$slots.default || [];\n var children = this.children = [];\n var transitionData = extractTransitionData(this);\n\n for (var i = 0; i < rawChildren.length; i++) {\n var c = rawChildren[i];\n if (c.tag) {\n if (c.key != null && String(c.key).indexOf('__vlist') !== 0) {\n children.push(c);\n map[c.key] = c\n ;(c.data || (c.data = {})).transition = transitionData;\n } else if (process.env.NODE_ENV !== 'production') {\n var opts = c.componentOptions;\n var name = opts ? (opts.Ctor.options.name || opts.tag || '') : c.tag;\n warn((\"<transition-group> children must be keyed: <\" + name + \">\"));\n }\n }\n }\n\n if (prevChildren) {\n var kept = [];\n var removed = [];\n for (var i$1 = 0; i$1 < prevChildren.length; i$1++) {\n var c$1 = prevChildren[i$1];\n c$1.data.transition = transitionData;\n c$1.data.pos = c$1.elm.getBoundingClientRect();\n if (map[c$1.key]) {\n kept.push(c$1);\n } else {\n removed.push(c$1);\n }\n }\n this.kept = h(tag, null, kept);\n this.removed = removed;\n }\n\n return h(tag, null, children)\n },\n\n updated: function updated () {\n var children = this.prevChildren;\n var moveClass = this.moveClass || ((this.name || 'v') + '-move');\n if (!children.length || !this.hasMove(children[0].elm, moveClass)) {\n return\n }\n\n // we divide the work into three loops to avoid mixing DOM reads and writes\n // in each iteration - which helps prevent layout thrashing.\n children.forEach(callPendingCbs);\n children.forEach(recordPosition);\n children.forEach(applyTranslation);\n\n // force reflow to put everything in position\n // assign to this to avoid being removed in tree-shaking\n // $flow-disable-line\n this._reflow = document.body.offsetHeight;\n\n children.forEach(function (c) {\n if (c.data.moved) {\n var el = c.elm;\n var s = el.style;\n addTransitionClass(el, moveClass);\n s.transform = s.WebkitTransform = s.transitionDuration = '';\n el.addEventListener(transitionEndEvent, el._moveCb = function cb (e) {\n if (e && e.target !== el) {\n return\n }\n if (!e || /transform$/.test(e.propertyName)) {\n el.removeEventListener(transitionEndEvent, cb);\n el._moveCb = null;\n removeTransitionClass(el, moveClass);\n }\n });\n }\n });\n },\n\n methods: {\n hasMove: function hasMove (el, moveClass) {\n /* istanbul ignore if */\n if (!hasTransition) {\n return false\n }\n /* istanbul ignore if */\n if (this._hasMove) {\n return this._hasMove\n }\n // Detect whether an element with the move class applied has\n // CSS transitions. Since the element may be inside an entering\n // transition at this very moment, we make a clone of it and remove\n // all other transition classes applied to ensure only the move class\n // is applied.\n var clone = el.cloneNode();\n if (el._transitionClasses) {\n el._transitionClasses.forEach(function (cls) { removeClass(clone, cls); });\n }\n addClass(clone, moveClass);\n clone.style.display = 'none';\n this.$el.appendChild(clone);\n var info = getTransitionInfo(clone);\n this.$el.removeChild(clone);\n return (this._hasMove = info.hasTransform)\n }\n }\n};\n\nfunction callPendingCbs (c) {\n /* istanbul ignore if */\n if (c.elm._moveCb) {\n c.elm._moveCb();\n }\n /* istanbul ignore if */\n if (c.elm._enterCb) {\n c.elm._enterCb();\n }\n}\n\nfunction recordPosition (c) {\n c.data.newPos = c.elm.getBoundingClientRect();\n}\n\nfunction applyTranslation (c) {\n var oldPos = c.data.pos;\n var newPos = c.data.newPos;\n var dx = oldPos.left - newPos.left;\n var dy = oldPos.top - newPos.top;\n if (dx || dy) {\n c.data.moved = true;\n var s = c.elm.style;\n s.transform = s.WebkitTransform = \"translate(\" + dx + \"px,\" + dy + \"px)\";\n s.transitionDuration = '0s';\n }\n}\n\nvar platformComponents = {\n Transition: Transition,\n TransitionGroup: TransitionGroup\n};\n\n/* */\n\n// install platform specific utils\nVue.config.mustUseProp = mustUseProp;\nVue.config.isReservedTag = isReservedTag;\nVue.config.isReservedAttr = isReservedAttr;\nVue.config.getTagNamespace = getTagNamespace;\nVue.config.isUnknownElement = isUnknownElement;\n\n// install platform runtime directives & components\nextend(Vue.options.directives, platformDirectives);\nextend(Vue.options.components, platformComponents);\n\n// install platform patch function\nVue.prototype.__patch__ = inBrowser ? patch : noop;\n\n// public mount method\nVue.prototype.$mount = function (\n el,\n hydrating\n) {\n el = el && inBrowser ? query(el) : undefined;\n return mountComponent(this, el, hydrating)\n};\n\n// devtools global hook\n/* istanbul ignore next */\nif (inBrowser) {\n setTimeout(function () {\n if (config.devtools) {\n if (devtools) {\n devtools.emit('init', Vue);\n } else if (\n process.env.NODE_ENV !== 'production' &&\n process.env.NODE_ENV !== 'test'\n ) {\n console[console.info ? 'info' : 'log'](\n 'Download the Vue Devtools extension for a better development experience:\\n' +\n 'https://github.com/vuejs/vue-devtools'\n );\n }\n }\n if (process.env.NODE_ENV !== 'production' &&\n process.env.NODE_ENV !== 'test' &&\n config.productionTip !== false &&\n typeof console !== 'undefined'\n ) {\n console[console.info ? 'info' : 'log'](\n \"You are running Vue in development mode.\\n\" +\n \"Make sure to turn on production mode when deploying for production.\\n\" +\n \"See more tips at https://vuejs.org/guide/deployment.html\"\n );\n }\n }, 0);\n}\n\n/* */\n\nvar defaultTagRE = /\\{\\{((?:.|\\r?\\n)+?)\\}\\}/g;\nvar regexEscapeRE = /[-.*+?^${}()|[\\]\\/\\\\]/g;\n\nvar buildRegex = cached(function (delimiters) {\n var open = delimiters[0].replace(regexEscapeRE, '\\\\$&');\n var close = delimiters[1].replace(regexEscapeRE, '\\\\$&');\n return new RegExp(open + '((?:.|\\\\n)+?)' + close, 'g')\n});\n\n\n\nfunction parseText (\n text,\n delimiters\n) {\n var tagRE = delimiters ? buildRegex(delimiters) : defaultTagRE;\n if (!tagRE.test(text)) {\n return\n }\n var tokens = [];\n var rawTokens = [];\n var lastIndex = tagRE.lastIndex = 0;\n var match, index, tokenValue;\n while ((match = tagRE.exec(text))) {\n index = match.index;\n // push text token\n if (index > lastIndex) {\n rawTokens.push(tokenValue = text.slice(lastIndex, index));\n tokens.push(JSON.stringify(tokenValue));\n }\n // tag token\n var exp = parseFilters(match[1].trim());\n tokens.push((\"_s(\" + exp + \")\"));\n rawTokens.push({ '@binding': exp });\n lastIndex = index + match[0].length;\n }\n if (lastIndex < text.length) {\n rawTokens.push(tokenValue = text.slice(lastIndex));\n tokens.push(JSON.stringify(tokenValue));\n }\n return {\n expression: tokens.join('+'),\n tokens: rawTokens\n }\n}\n\n/* */\n\nfunction transformNode (el, options) {\n var warn = options.warn || baseWarn;\n var staticClass = getAndRemoveAttr(el, 'class');\n if (process.env.NODE_ENV !== 'production' && staticClass) {\n var res = parseText(staticClass, options.delimiters);\n if (res) {\n warn(\n \"class=\\\"\" + staticClass + \"\\\": \" +\n 'Interpolation inside attributes has been removed. ' +\n 'Use v-bind or the colon shorthand instead. For example, ' +\n 'instead of <div class=\"{{ val }}\">, use <div :class=\"val\">.',\n el.rawAttrsMap['class']\n );\n }\n }\n if (staticClass) {\n el.staticClass = JSON.stringify(staticClass);\n }\n var classBinding = getBindingAttr(el, 'class', false /* getStatic */);\n if (classBinding) {\n el.classBinding = classBinding;\n }\n}\n\nfunction genData (el) {\n var data = '';\n if (el.staticClass) {\n data += \"staticClass:\" + (el.staticClass) + \",\";\n }\n if (el.classBinding) {\n data += \"class:\" + (el.classBinding) + \",\";\n }\n return data\n}\n\nvar klass$1 = {\n staticKeys: ['staticClass'],\n transformNode: transformNode,\n genData: genData\n};\n\n/* */\n\nfunction transformNode$1 (el, options) {\n var warn = options.warn || baseWarn;\n var staticStyle = getAndRemoveAttr(el, 'style');\n if (staticStyle) {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production') {\n var res = parseText(staticStyle, options.delimiters);\n if (res) {\n warn(\n \"style=\\\"\" + staticStyle + \"\\\": \" +\n 'Interpolation inside attributes has been removed. ' +\n 'Use v-bind or the colon shorthand instead. For example, ' +\n 'instead of <div style=\"{{ val }}\">, use <div :style=\"val\">.',\n el.rawAttrsMap['style']\n );\n }\n }\n el.staticStyle = JSON.stringify(parseStyleText(staticStyle));\n }\n\n var styleBinding = getBindingAttr(el, 'style', false /* getStatic */);\n if (styleBinding) {\n el.styleBinding = styleBinding;\n }\n}\n\nfunction genData$1 (el) {\n var data = '';\n if (el.staticStyle) {\n data += \"staticStyle:\" + (el.staticStyle) + \",\";\n }\n if (el.styleBinding) {\n data += \"style:(\" + (el.styleBinding) + \"),\";\n }\n return data\n}\n\nvar style$1 = {\n staticKeys: ['staticStyle'],\n transformNode: transformNode$1,\n genData: genData$1\n};\n\n/* */\n\nvar decoder;\n\nvar he = {\n decode: function decode (html) {\n decoder = decoder || document.createElement('div');\n decoder.innerHTML = html;\n return decoder.textContent\n }\n};\n\n/* */\n\nvar isUnaryTag = makeMap(\n 'area,base,br,col,embed,frame,hr,img,input,isindex,keygen,' +\n 'link,meta,param,source,track,wbr'\n);\n\n// Elements that you can, intentionally, leave open\n// (and which close themselves)\nvar canBeLeftOpenTag = makeMap(\n 'colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr,source'\n);\n\n// HTML5 tags https://html.spec.whatwg.org/multipage/indices.html#elements-3\n// Phrasing Content https://html.spec.whatwg.org/multipage/dom.html#phrasing-content\nvar isNonPhrasingTag = makeMap(\n 'address,article,aside,base,blockquote,body,caption,col,colgroup,dd,' +\n 'details,dialog,div,dl,dt,fieldset,figcaption,figure,footer,form,' +\n 'h1,h2,h3,h4,h5,h6,head,header,hgroup,hr,html,legend,li,menuitem,meta,' +\n 'optgroup,option,param,rp,rt,source,style,summary,tbody,td,tfoot,th,thead,' +\n 'title,tr,track'\n);\n\n/**\n * Not type-checking this file because it's mostly vendor code.\n */\n\n// Regular Expressions for parsing tags and attributes\nvar attribute = /^\\s*([^\\s\"'<>\\/=]+)(?:\\s*(=)\\s*(?:\"([^\"]*)\"+|'([^']*)'+|([^\\s\"'=<>`]+)))?/;\nvar dynamicArgAttribute = /^\\s*((?:v-[\\w-]+:|@|:|#)\\[[^=]+\\][^\\s\"'<>\\/=]*)(?:\\s*(=)\\s*(?:\"([^\"]*)\"+|'([^']*)'+|([^\\s\"'=<>`]+)))?/;\nvar ncname = \"[a-zA-Z_][\\\\-\\\\.0-9_a-zA-Z\" + (unicodeRegExp.source) + \"]*\";\nvar qnameCapture = \"((?:\" + ncname + \"\\\\:)?\" + ncname + \")\";\nvar startTagOpen = new RegExp((\"^<\" + qnameCapture));\nvar startTagClose = /^\\s*(\\/?)>/;\nvar endTag = new RegExp((\"^<\\\\/\" + qnameCapture + \"[^>]*>\"));\nvar doctype = /^<!DOCTYPE [^>]+>/i;\n// #7298: escape - to avoid being passed as HTML comment when inlined in page\nvar comment = /^<!\\--/;\nvar conditionalComment = /^<!\\[/;\n\n// Special Elements (can contain anything)\nvar isPlainTextElement = makeMap('script,style,textarea', true);\nvar reCache = {};\n\nvar decodingMap = {\n '&lt;': '<',\n '&gt;': '>',\n '&quot;': '\"',\n '&amp;': '&',\n '&#10;': '\\n',\n '&#9;': '\\t',\n '&#39;': \"'\"\n};\nvar encodedAttr = /&(?:lt|gt|quot|amp|#39);/g;\nvar encodedAttrWithNewLines = /&(?:lt|gt|quot|amp|#39|#10|#9);/g;\n\n// #5992\nvar isIgnoreNewlineTag = makeMap('pre,textarea', true);\nvar shouldIgnoreFirstNewline = function (tag, html) { return tag && isIgnoreNewlineTag(tag) && html[0] === '\\n'; };\n\nfunction decodeAttr (value, shouldDecodeNewlines) {\n var re = shouldDecodeNewlines ? encodedAttrWithNewLines : encodedAttr;\n return value.replace(re, function (match) { return decodingMap[match]; })\n}\n\nfunction parseHTML (html, options) {\n var stack = [];\n var expectHTML = options.expectHTML;\n var isUnaryTag$$1 = options.isUnaryTag || no;\n var canBeLeftOpenTag$$1 = options.canBeLeftOpenTag || no;\n var index = 0;\n var last, lastTag;\n while (html) {\n last = html;\n // Make sure we're not in a plaintext content element like script/style\n if (!lastTag || !isPlainTextElement(lastTag)) {\n var textEnd = html.indexOf('<');\n if (textEnd === 0) {\n // Comment:\n if (comment.test(html)) {\n var commentEnd = html.indexOf('-->');\n\n if (commentEnd >= 0) {\n if (options.shouldKeepComment) {\n options.comment(html.substring(4, commentEnd), index, index + commentEnd + 3);\n }\n advance(commentEnd + 3);\n continue\n }\n }\n\n // http://en.wikipedia.org/wiki/Conditional_comment#Downlevel-revealed_conditional_comment\n if (conditionalComment.test(html)) {\n var conditionalEnd = html.indexOf(']>');\n\n if (conditionalEnd >= 0) {\n advance(conditionalEnd + 2);\n continue\n }\n }\n\n // Doctype:\n var doctypeMatch = html.match(doctype);\n if (doctypeMatch) {\n advance(doctypeMatch[0].length);\n continue\n }\n\n // End tag:\n var endTagMatch = html.match(endTag);\n if (endTagMatch) {\n var curIndex = index;\n advance(endTagMatch[0].length);\n parseEndTag(endTagMatch[1], curIndex, index);\n continue\n }\n\n // Start tag:\n var startTagMatch = parseStartTag();\n if (startTagMatch) {\n handleStartTag(startTagMatch);\n if (shouldIgnoreFirstNewline(startTagMatch.tagName, html)) {\n advance(1);\n }\n continue\n }\n }\n\n var text = (void 0), rest = (void 0), next = (void 0);\n if (textEnd >= 0) {\n rest = html.slice(textEnd);\n while (\n !endTag.test(rest) &&\n !startTagOpen.test(rest) &&\n !comment.test(rest) &&\n !conditionalComment.test(rest)\n ) {\n // < in plain text, be forgiving and treat it as text\n next = rest.indexOf('<', 1);\n if (next < 0) { break }\n textEnd += next;\n rest = html.slice(textEnd);\n }\n text = html.substring(0, textEnd);\n }\n\n if (textEnd < 0) {\n text = html;\n }\n\n if (text) {\n advance(text.length);\n }\n\n if (options.chars && text) {\n options.chars(text, index - text.length, index);\n }\n } else {\n var endTagLength = 0;\n var stackedTag = lastTag.toLowerCase();\n var reStackedTag = reCache[stackedTag] || (reCache[stackedTag] = new RegExp('([\\\\s\\\\S]*?)(</' + stackedTag + '[^>]*>)', 'i'));\n var rest$1 = html.replace(reStackedTag, function (all, text, endTag) {\n endTagLength = endTag.length;\n if (!isPlainTextElement(stackedTag) && stackedTag !== 'noscript') {\n text = text\n .replace(/<!\\--([\\s\\S]*?)-->/g, '$1') // #7298\n .replace(/<!\\[CDATA\\[([\\s\\S]*?)]]>/g, '$1');\n }\n if (shouldIgnoreFirstNewline(stackedTag, text)) {\n text = text.slice(1);\n }\n if (options.chars) {\n options.chars(text);\n }\n return ''\n });\n index += html.length - rest$1.length;\n html = rest$1;\n parseEndTag(stackedTag, index - endTagLength, index);\n }\n\n if (html === last) {\n options.chars && options.chars(html);\n if (process.env.NODE_ENV !== 'production' && !stack.length && options.warn) {\n options.warn((\"Mal-formatted tag at end of template: \\\"\" + html + \"\\\"\"), { start: index + html.length });\n }\n break\n }\n }\n\n // Clean up any remaining tags\n parseEndTag();\n\n function advance (n) {\n index += n;\n html = html.substring(n);\n }\n\n function parseStartTag () {\n var start = html.match(startTagOpen);\n if (start) {\n var match = {\n tagName: start[1],\n attrs: [],\n start: index\n };\n advance(start[0].length);\n var end, attr;\n while (!(end = html.match(startTagClose)) && (attr = html.match(dynamicArgAttribute) || html.match(attribute))) {\n attr.start = index;\n advance(attr[0].length);\n attr.end = index;\n match.attrs.push(attr);\n }\n if (end) {\n match.unarySlash = end[1];\n advance(end[0].length);\n match.end = index;\n return match\n }\n }\n }\n\n function handleStartTag (match) {\n var tagName = match.tagName;\n var unarySlash = match.unarySlash;\n\n if (expectHTML) {\n if (lastTag === 'p' && isNonPhrasingTag(tagName)) {\n parseEndTag(lastTag);\n }\n if (canBeLeftOpenTag$$1(tagName) && lastTag === tagName) {\n parseEndTag(tagName);\n }\n }\n\n var unary = isUnaryTag$$1(tagName) || !!unarySlash;\n\n var l = match.attrs.length;\n var attrs = new Array(l);\n for (var i = 0; i < l; i++) {\n var args = match.attrs[i];\n var value = args[3] || args[4] || args[5] || '';\n var shouldDecodeNewlines = tagName === 'a' && args[1] === 'href'\n ? options.shouldDecodeNewlinesForHref\n : options.shouldDecodeNewlines;\n attrs[i] = {\n name: args[1],\n value: decodeAttr(value, shouldDecodeNewlines)\n };\n if (process.env.NODE_ENV !== 'production' && options.outputSourceRange) {\n attrs[i].start = args.start + args[0].match(/^\\s*/).length;\n attrs[i].end = args.end;\n }\n }\n\n if (!unary) {\n stack.push({ tag: tagName, lowerCasedTag: tagName.toLowerCase(), attrs: attrs, start: match.start, end: match.end });\n lastTag = tagName;\n }\n\n if (options.start) {\n options.start(tagName, attrs, unary, match.start, match.end);\n }\n }\n\n function parseEndTag (tagName, start, end) {\n var pos, lowerCasedTagName;\n if (start == null) { start = index; }\n if (end == null) { end = index; }\n\n // Find the closest opened tag of the same type\n if (tagName) {\n lowerCasedTagName = tagName.toLowerCase();\n for (pos = stack.length - 1; pos >= 0; pos--) {\n if (stack[pos].lowerCasedTag === lowerCasedTagName) {\n break\n }\n }\n } else {\n // If no tag name is provided, clean shop\n pos = 0;\n }\n\n if (pos >= 0) {\n // Close all the open elements, up the stack\n for (var i = stack.length - 1; i >= pos; i--) {\n if (process.env.NODE_ENV !== 'production' &&\n (i > pos || !tagName) &&\n options.warn\n ) {\n options.warn(\n (\"tag <\" + (stack[i].tag) + \"> has no matching end tag.\"),\n { start: stack[i].start, end: stack[i].end }\n );\n }\n if (options.end) {\n options.end(stack[i].tag, start, end);\n }\n }\n\n // Remove the open elements from the stack\n stack.length = pos;\n lastTag = pos && stack[pos - 1].tag;\n } else if (lowerCasedTagName === 'br') {\n if (options.start) {\n options.start(tagName, [], true, start, end);\n }\n } else if (lowerCasedTagName === 'p') {\n if (options.start) {\n options.start(tagName, [], false, start, end);\n }\n if (options.end) {\n options.end(tagName, start, end);\n }\n }\n }\n}\n\n/* */\n\nvar onRE = /^@|^v-on:/;\nvar dirRE = /^v-|^@|^:|^#/;\nvar forAliasRE = /([\\s\\S]*?)\\s+(?:in|of)\\s+([\\s\\S]*)/;\nvar forIteratorRE = /,([^,\\}\\]]*)(?:,([^,\\}\\]]*))?$/;\nvar stripParensRE = /^\\(|\\)$/g;\nvar dynamicArgRE = /^\\[.*\\]$/;\n\nvar argRE = /:(.*)$/;\nvar bindRE = /^:|^\\.|^v-bind:/;\nvar modifierRE = /\\.[^.\\]]+(?=[^\\]]*$)/g;\n\nvar slotRE = /^v-slot(:|$)|^#/;\n\nvar lineBreakRE = /[\\r\\n]/;\nvar whitespaceRE$1 = /\\s+/g;\n\nvar invalidAttributeRE = /[\\s\"'<>\\/=]/;\n\nvar decodeHTMLCached = cached(he.decode);\n\nvar emptySlotScopeToken = \"_empty_\";\n\n// configurable state\nvar warn$2;\nvar delimiters;\nvar transforms;\nvar preTransforms;\nvar postTransforms;\nvar platformIsPreTag;\nvar platformMustUseProp;\nvar platformGetTagNamespace;\nvar maybeComponent;\n\nfunction createASTElement (\n tag,\n attrs,\n parent\n) {\n return {\n type: 1,\n tag: tag,\n attrsList: attrs,\n attrsMap: makeAttrsMap(attrs),\n rawAttrsMap: {},\n parent: parent,\n children: []\n }\n}\n\n/**\n * Convert HTML string to AST.\n */\nfunction parse (\n template,\n options\n) {\n warn$2 = options.warn || baseWarn;\n\n platformIsPreTag = options.isPreTag || no;\n platformMustUseProp = options.mustUseProp || no;\n platformGetTagNamespace = options.getTagNamespace || no;\n var isReservedTag = options.isReservedTag || no;\n maybeComponent = function (el) { return !!el.component || !isReservedTag(el.tag); };\n\n transforms = pluckModuleFunction(options.modules, 'transformNode');\n preTransforms = pluckModuleFunction(options.modules, 'preTransformNode');\n postTransforms = pluckModuleFunction(options.modules, 'postTransformNode');\n\n delimiters = options.delimiters;\n\n var stack = [];\n var preserveWhitespace = options.preserveWhitespace !== false;\n var whitespaceOption = options.whitespace;\n var root;\n var currentParent;\n var inVPre = false;\n var inPre = false;\n var warned = false;\n\n function warnOnce (msg, range) {\n if (!warned) {\n warned = true;\n warn$2(msg, range);\n }\n }\n\n function closeElement (element) {\n trimEndingWhitespace(element);\n if (!inVPre && !element.processed) {\n element = processElement(element, options);\n }\n // tree management\n if (!stack.length && element !== root) {\n // allow root elements with v-if, v-else-if and v-else\n if (root.if && (element.elseif || element.else)) {\n if (process.env.NODE_ENV !== 'production') {\n checkRootConstraints(element);\n }\n addIfCondition(root, {\n exp: element.elseif,\n block: element\n });\n } else if (process.env.NODE_ENV !== 'production') {\n warnOnce(\n \"Component template should contain exactly one root element. \" +\n \"If you are using v-if on multiple elements, \" +\n \"use v-else-if to chain them instead.\",\n { start: element.start }\n );\n }\n }\n if (currentParent && !element.forbidden) {\n if (element.elseif || element.else) {\n processIfConditions(element, currentParent);\n } else {\n if (element.slotScope) {\n // scoped slot\n // keep it in the children list so that v-else(-if) conditions can\n // find it as the prev node.\n var name = element.slotTarget || '\"default\"'\n ;(currentParent.scopedSlots || (currentParent.scopedSlots = {}))[name] = element;\n }\n currentParent.children.push(element);\n element.parent = currentParent;\n }\n }\n\n // final children cleanup\n // filter out scoped slots\n element.children = element.children.filter(function (c) { return !(c).slotScope; });\n // remove trailing whitespace node again\n trimEndingWhitespace(element);\n\n // check pre state\n if (element.pre) {\n inVPre = false;\n }\n if (platformIsPreTag(element.tag)) {\n inPre = false;\n }\n // apply post-transforms\n for (var i = 0; i < postTransforms.length; i++) {\n postTransforms[i](element, options);\n }\n }\n\n function trimEndingWhitespace (el) {\n // remove trailing whitespace node\n if (!inPre) {\n var lastNode;\n while (\n (lastNode = el.children[el.children.length - 1]) &&\n lastNode.type === 3 &&\n lastNode.text === ' '\n ) {\n el.children.pop();\n }\n }\n }\n\n function checkRootConstraints (el) {\n if (el.tag === 'slot' || el.tag === 'template') {\n warnOnce(\n \"Cannot use <\" + (el.tag) + \"> as component root element because it may \" +\n 'contain multiple nodes.',\n { start: el.start }\n );\n }\n if (el.attrsMap.hasOwnProperty('v-for')) {\n warnOnce(\n 'Cannot use v-for on stateful component root element because ' +\n 'it renders multiple elements.',\n el.rawAttrsMap['v-for']\n );\n }\n }\n\n parseHTML(template, {\n warn: warn$2,\n expectHTML: options.expectHTML,\n isUnaryTag: options.isUnaryTag,\n canBeLeftOpenTag: options.canBeLeftOpenTag,\n shouldDecodeNewlines: options.shouldDecodeNewlines,\n shouldDecodeNewlinesForHref: options.shouldDecodeNewlinesForHref,\n shouldKeepComment: options.comments,\n outputSourceRange: options.outputSourceRange,\n start: function start (tag, attrs, unary, start$1, end) {\n // check namespace.\n // inherit parent ns if there is one\n var ns = (currentParent && currentParent.ns) || platformGetTagNamespace(tag);\n\n // handle IE svg bug\n /* istanbul ignore if */\n if (isIE && ns === 'svg') {\n attrs = guardIESVGBug(attrs);\n }\n\n var element = createASTElement(tag, attrs, currentParent);\n if (ns) {\n element.ns = ns;\n }\n\n if (process.env.NODE_ENV !== 'production') {\n if (options.outputSourceRange) {\n element.start = start$1;\n element.end = end;\n element.rawAttrsMap = element.attrsList.reduce(function (cumulated, attr) {\n cumulated[attr.name] = attr;\n return cumulated\n }, {});\n }\n attrs.forEach(function (attr) {\n if (invalidAttributeRE.test(attr.name)) {\n warn$2(\n \"Invalid dynamic argument expression: attribute names cannot contain \" +\n \"spaces, quotes, <, >, / or =.\",\n {\n start: attr.start + attr.name.indexOf(\"[\"),\n end: attr.start + attr.name.length\n }\n );\n }\n });\n }\n\n if (isForbiddenTag(element) && !isServerRendering()) {\n element.forbidden = true;\n process.env.NODE_ENV !== 'production' && warn$2(\n 'Templates should only be responsible for mapping the state to the ' +\n 'UI. Avoid placing tags with side-effects in your templates, such as ' +\n \"<\" + tag + \">\" + ', as they will not be parsed.',\n { start: element.start }\n );\n }\n\n // apply pre-transforms\n for (var i = 0; i < preTransforms.length; i++) {\n element = preTransforms[i](element, options) || element;\n }\n\n if (!inVPre) {\n processPre(element);\n if (element.pre) {\n inVPre = true;\n }\n }\n if (platformIsPreTag(element.tag)) {\n inPre = true;\n }\n if (inVPre) {\n processRawAttrs(element);\n } else if (!element.processed) {\n // structural directives\n processFor(element);\n processIf(element);\n processOnce(element);\n }\n\n if (!root) {\n root = element;\n if (process.env.NODE_ENV !== 'production') {\n checkRootConstraints(root);\n }\n }\n\n if (!unary) {\n currentParent = element;\n stack.push(element);\n } else {\n closeElement(element);\n }\n },\n\n end: function end (tag, start, end$1) {\n var element = stack[stack.length - 1];\n // pop stack\n stack.length -= 1;\n currentParent = stack[stack.length - 1];\n if (process.env.NODE_ENV !== 'production' && options.outputSourceRange) {\n element.end = end$1;\n }\n closeElement(element);\n },\n\n chars: function chars (text, start, end) {\n if (!currentParent) {\n if (process.env.NODE_ENV !== 'production') {\n if (text === template) {\n warnOnce(\n 'Component template requires a root element, rather than just text.',\n { start: start }\n );\n } else if ((text = text.trim())) {\n warnOnce(\n (\"text \\\"\" + text + \"\\\" outside root element will be ignored.\"),\n { start: start }\n );\n }\n }\n return\n }\n // IE textarea placeholder bug\n /* istanbul ignore if */\n if (isIE &&\n currentParent.tag === 'textarea' &&\n currentParent.attrsMap.placeholder === text\n ) {\n return\n }\n var children = currentParent.children;\n if (inPre || text.trim()) {\n text = isTextTag(currentParent) ? text : decodeHTMLCached(text);\n } else if (!children.length) {\n // remove the whitespace-only node right after an opening tag\n text = '';\n } else if (whitespaceOption) {\n if (whitespaceOption === 'condense') {\n // in condense mode, remove the whitespace node if it contains\n // line break, otherwise condense to a single space\n text = lineBreakRE.test(text) ? '' : ' ';\n } else {\n text = ' ';\n }\n } else {\n text = preserveWhitespace ? ' ' : '';\n }\n if (text) {\n if (!inPre && whitespaceOption === 'condense') {\n // condense consecutive whitespaces into single space\n text = text.replace(whitespaceRE$1, ' ');\n }\n var res;\n var child;\n if (!inVPre && text !== ' ' && (res = parseText(text, delimiters))) {\n child = {\n type: 2,\n expression: res.expression,\n tokens: res.tokens,\n text: text\n };\n } else if (text !== ' ' || !children.length || children[children.length - 1].text !== ' ') {\n child = {\n type: 3,\n text: text\n };\n }\n if (child) {\n if (process.env.NODE_ENV !== 'production' && options.outputSourceRange) {\n child.start = start;\n child.end = end;\n }\n children.push(child);\n }\n }\n },\n comment: function comment (text, start, end) {\n // adding anyting as a sibling to the root node is forbidden\n // comments should still be allowed, but ignored\n if (currentParent) {\n var child = {\n type: 3,\n text: text,\n isComment: true\n };\n if (process.env.NODE_ENV !== 'production' && options.outputSourceRange) {\n child.start = start;\n child.end = end;\n }\n currentParent.children.push(child);\n }\n }\n });\n return root\n}\n\nfunction processPre (el) {\n if (getAndRemoveAttr(el, 'v-pre') != null) {\n el.pre = true;\n }\n}\n\nfunction processRawAttrs (el) {\n var list = el.attrsList;\n var len = list.length;\n if (len) {\n var attrs = el.attrs = new Array(len);\n for (var i = 0; i < len; i++) {\n attrs[i] = {\n name: list[i].name,\n value: JSON.stringify(list[i].value)\n };\n if (list[i].start != null) {\n attrs[i].start = list[i].start;\n attrs[i].end = list[i].end;\n }\n }\n } else if (!el.pre) {\n // non root node in pre blocks with no attributes\n el.plain = true;\n }\n}\n\nfunction processElement (\n element,\n options\n) {\n processKey(element);\n\n // determine whether this is a plain element after\n // removing structural attributes\n element.plain = (\n !element.key &&\n !element.scopedSlots &&\n !element.attrsList.length\n );\n\n processRef(element);\n processSlotContent(element);\n processSlotOutlet(element);\n processComponent(element);\n for (var i = 0; i < transforms.length; i++) {\n element = transforms[i](element, options) || element;\n }\n processAttrs(element);\n return element\n}\n\nfunction processKey (el) {\n var exp = getBindingAttr(el, 'key');\n if (exp) {\n if (process.env.NODE_ENV !== 'production') {\n if (el.tag === 'template') {\n warn$2(\n \"<template> cannot be keyed. Place the key on real elements instead.\",\n getRawBindingAttr(el, 'key')\n );\n }\n if (el.for) {\n var iterator = el.iterator2 || el.iterator1;\n var parent = el.parent;\n if (iterator && iterator === exp && parent && parent.tag === 'transition-group') {\n warn$2(\n \"Do not use v-for index as key on <transition-group> children, \" +\n \"this is the same as not using keys.\",\n getRawBindingAttr(el, 'key'),\n true /* tip */\n );\n }\n }\n }\n el.key = exp;\n }\n}\n\nfunction processRef (el) {\n var ref = getBindingAttr(el, 'ref');\n if (ref) {\n el.ref = ref;\n el.refInFor = checkInFor(el);\n }\n}\n\nfunction processFor (el) {\n var exp;\n if ((exp = getAndRemoveAttr(el, 'v-for'))) {\n var res = parseFor(exp);\n if (res) {\n extend(el, res);\n } else if (process.env.NODE_ENV !== 'production') {\n warn$2(\n (\"Invalid v-for expression: \" + exp),\n el.rawAttrsMap['v-for']\n );\n }\n }\n}\n\n\n\nfunction parseFor (exp) {\n var inMatch = exp.match(forAliasRE);\n if (!inMatch) { return }\n var res = {};\n res.for = inMatch[2].trim();\n var alias = inMatch[1].trim().replace(stripParensRE, '');\n var iteratorMatch = alias.match(forIteratorRE);\n if (iteratorMatch) {\n res.alias = alias.replace(forIteratorRE, '').trim();\n res.iterator1 = iteratorMatch[1].trim();\n if (iteratorMatch[2]) {\n res.iterator2 = iteratorMatch[2].trim();\n }\n } else {\n res.alias = alias;\n }\n return res\n}\n\nfunction processIf (el) {\n var exp = getAndRemoveAttr(el, 'v-if');\n if (exp) {\n el.if = exp;\n addIfCondition(el, {\n exp: exp,\n block: el\n });\n } else {\n if (getAndRemoveAttr(el, 'v-else') != null) {\n el.else = true;\n }\n var elseif = getAndRemoveAttr(el, 'v-else-if');\n if (elseif) {\n el.elseif = elseif;\n }\n }\n}\n\nfunction processIfConditions (el, parent) {\n var prev = findPrevElement(parent.children);\n if (prev && prev.if) {\n addIfCondition(prev, {\n exp: el.elseif,\n block: el\n });\n } else if (process.env.NODE_ENV !== 'production') {\n warn$2(\n \"v-\" + (el.elseif ? ('else-if=\"' + el.elseif + '\"') : 'else') + \" \" +\n \"used on element <\" + (el.tag) + \"> without corresponding v-if.\",\n el.rawAttrsMap[el.elseif ? 'v-else-if' : 'v-else']\n );\n }\n}\n\nfunction findPrevElement (children) {\n var i = children.length;\n while (i--) {\n if (children[i].type === 1) {\n return children[i]\n } else {\n if (process.env.NODE_ENV !== 'production' && children[i].text !== ' ') {\n warn$2(\n \"text \\\"\" + (children[i].text.trim()) + \"\\\" between v-if and v-else(-if) \" +\n \"will be ignored.\",\n children[i]\n );\n }\n children.pop();\n }\n }\n}\n\nfunction addIfCondition (el, condition) {\n if (!el.ifConditions) {\n el.ifConditions = [];\n }\n el.ifConditions.push(condition);\n}\n\nfunction processOnce (el) {\n var once$$1 = getAndRemoveAttr(el, 'v-once');\n if (once$$1 != null) {\n el.once = true;\n }\n}\n\n// handle content being passed to a component as slot,\n// e.g. <template slot=\"xxx\">, <div slot-scope=\"xxx\">\nfunction processSlotContent (el) {\n var slotScope;\n if (el.tag === 'template') {\n slotScope = getAndRemoveAttr(el, 'scope');\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && slotScope) {\n warn$2(\n \"the \\\"scope\\\" attribute for scoped slots have been deprecated and \" +\n \"replaced by \\\"slot-scope\\\" since 2.5. The new \\\"slot-scope\\\" attribute \" +\n \"can also be used on plain elements in addition to <template> to \" +\n \"denote scoped slots.\",\n el.rawAttrsMap['scope'],\n true\n );\n }\n el.slotScope = slotScope || getAndRemoveAttr(el, 'slot-scope');\n } else if ((slotScope = getAndRemoveAttr(el, 'slot-scope'))) {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && el.attrsMap['v-for']) {\n warn$2(\n \"Ambiguous combined usage of slot-scope and v-for on <\" + (el.tag) + \"> \" +\n \"(v-for takes higher priority). Use a wrapper <template> for the \" +\n \"scoped slot to make it clearer.\",\n el.rawAttrsMap['slot-scope'],\n true\n );\n }\n el.slotScope = slotScope;\n }\n\n // slot=\"xxx\"\n var slotTarget = getBindingAttr(el, 'slot');\n if (slotTarget) {\n el.slotTarget = slotTarget === '\"\"' ? '\"default\"' : slotTarget;\n el.slotTargetDynamic = !!(el.attrsMap[':slot'] || el.attrsMap['v-bind:slot']);\n // preserve slot as an attribute for native shadow DOM compat\n // only for non-scoped slots.\n if (el.tag !== 'template' && !el.slotScope) {\n addAttr(el, 'slot', slotTarget, getRawBindingAttr(el, 'slot'));\n }\n }\n\n // 2.6 v-slot syntax\n {\n if (el.tag === 'template') {\n // v-slot on <template>\n var slotBinding = getAndRemoveAttrByRegex(el, slotRE);\n if (slotBinding) {\n if (process.env.NODE_ENV !== 'production') {\n if (el.slotTarget || el.slotScope) {\n warn$2(\n \"Unexpected mixed usage of different slot syntaxes.\",\n el\n );\n }\n if (el.parent && !maybeComponent(el.parent)) {\n warn$2(\n \"<template v-slot> can only appear at the root level inside \" +\n \"the receiving component\",\n el\n );\n }\n }\n var ref = getSlotName(slotBinding);\n var name = ref.name;\n var dynamic = ref.dynamic;\n el.slotTarget = name;\n el.slotTargetDynamic = dynamic;\n el.slotScope = slotBinding.value || emptySlotScopeToken; // force it into a scoped slot for perf\n }\n } else {\n // v-slot on component, denotes default slot\n var slotBinding$1 = getAndRemoveAttrByRegex(el, slotRE);\n if (slotBinding$1) {\n if (process.env.NODE_ENV !== 'production') {\n if (!maybeComponent(el)) {\n warn$2(\n \"v-slot can only be used on components or <template>.\",\n slotBinding$1\n );\n }\n if (el.slotScope || el.slotTarget) {\n warn$2(\n \"Unexpected mixed usage of different slot syntaxes.\",\n el\n );\n }\n if (el.scopedSlots) {\n warn$2(\n \"To avoid scope ambiguity, the default slot should also use \" +\n \"<template> syntax when there are other named slots.\",\n slotBinding$1\n );\n }\n }\n // add the component's children to its default slot\n var slots = el.scopedSlots || (el.scopedSlots = {});\n var ref$1 = getSlotName(slotBinding$1);\n var name$1 = ref$1.name;\n var dynamic$1 = ref$1.dynamic;\n var slotContainer = slots[name$1] = createASTElement('template', [], el);\n slotContainer.slotTarget = name$1;\n slotContainer.slotTargetDynamic = dynamic$1;\n slotContainer.children = el.children.filter(function (c) {\n if (!c.slotScope) {\n c.parent = slotContainer;\n return true\n }\n });\n slotContainer.slotScope = slotBinding$1.value || emptySlotScopeToken;\n // remove children as they are returned from scopedSlots now\n el.children = [];\n // mark el non-plain so data gets generated\n el.plain = false;\n }\n }\n }\n}\n\nfunction getSlotName (binding) {\n var name = binding.name.replace(slotRE, '');\n if (!name) {\n if (binding.name[0] !== '#') {\n name = 'default';\n } else if (process.env.NODE_ENV !== 'production') {\n warn$2(\n \"v-slot shorthand syntax requires a slot name.\",\n binding\n );\n }\n }\n return dynamicArgRE.test(name)\n // dynamic [name]\n ? { name: name.slice(1, -1), dynamic: true }\n // static name\n : { name: (\"\\\"\" + name + \"\\\"\"), dynamic: false }\n}\n\n// handle <slot/> outlets\nfunction processSlotOutlet (el) {\n if (el.tag === 'slot') {\n el.slotName = getBindingAttr(el, 'name');\n if (process.env.NODE_ENV !== 'production' && el.key) {\n warn$2(\n \"`key` does not work on <slot> because slots are abstract outlets \" +\n \"and can possibly expand into multiple elements. \" +\n \"Use the key on a wrapping element instead.\",\n getRawBindingAttr(el, 'key')\n );\n }\n }\n}\n\nfunction processComponent (el) {\n var binding;\n if ((binding = getBindingAttr(el, 'is'))) {\n el.component = binding;\n }\n if (getAndRemoveAttr(el, 'inline-template') != null) {\n el.inlineTemplate = true;\n }\n}\n\nfunction processAttrs (el) {\n var list = el.attrsList;\n var i, l, name, rawName, value, modifiers, syncGen, isDynamic;\n for (i = 0, l = list.length; i < l; i++) {\n name = rawName = list[i].name;\n value = list[i].value;\n if (dirRE.test(name)) {\n // mark element as dynamic\n el.hasBindings = true;\n // modifiers\n modifiers = parseModifiers(name.replace(dirRE, ''));\n // support .foo shorthand syntax for the .prop modifier\n if (modifiers) {\n name = name.replace(modifierRE, '');\n }\n if (bindRE.test(name)) { // v-bind\n name = name.replace(bindRE, '');\n value = parseFilters(value);\n isDynamic = dynamicArgRE.test(name);\n if (isDynamic) {\n name = name.slice(1, -1);\n }\n if (\n process.env.NODE_ENV !== 'production' &&\n value.trim().length === 0\n ) {\n warn$2(\n (\"The value for a v-bind expression cannot be empty. Found in \\\"v-bind:\" + name + \"\\\"\")\n );\n }\n if (modifiers) {\n if (modifiers.prop && !isDynamic) {\n name = camelize(name);\n if (name === 'innerHtml') { name = 'innerHTML'; }\n }\n if (modifiers.camel && !isDynamic) {\n name = camelize(name);\n }\n if (modifiers.sync) {\n syncGen = genAssignmentCode(value, \"$event\");\n if (!isDynamic) {\n addHandler(\n el,\n (\"update:\" + (camelize(name))),\n syncGen,\n null,\n false,\n warn$2,\n list[i]\n );\n if (hyphenate(name) !== camelize(name)) {\n addHandler(\n el,\n (\"update:\" + (hyphenate(name))),\n syncGen,\n null,\n false,\n warn$2,\n list[i]\n );\n }\n } else {\n // handler w/ dynamic event name\n addHandler(\n el,\n (\"\\\"update:\\\"+(\" + name + \")\"),\n syncGen,\n null,\n false,\n warn$2,\n list[i],\n true // dynamic\n );\n }\n }\n }\n if ((modifiers && modifiers.prop) || (\n !el.component && platformMustUseProp(el.tag, el.attrsMap.type, name)\n )) {\n addProp(el, name, value, list[i], isDynamic);\n } else {\n addAttr(el, name, value, list[i], isDynamic);\n }\n } else if (onRE.test(name)) { // v-on\n name = name.replace(onRE, '');\n isDynamic = dynamicArgRE.test(name);\n if (isDynamic) {\n name = name.slice(1, -1);\n }\n addHandler(el, name, value, modifiers, false, warn$2, list[i], isDynamic);\n } else { // normal directives\n name = name.replace(dirRE, '');\n // parse arg\n var argMatch = name.match(argRE);\n var arg = argMatch && argMatch[1];\n isDynamic = false;\n if (arg) {\n name = name.slice(0, -(arg.length + 1));\n if (dynamicArgRE.test(arg)) {\n arg = arg.slice(1, -1);\n isDynamic = true;\n }\n }\n addDirective(el, name, rawName, value, arg, isDynamic, modifiers, list[i]);\n if (process.env.NODE_ENV !== 'production' && name === 'model') {\n checkForAliasModel(el, value);\n }\n }\n } else {\n // literal attribute\n if (process.env.NODE_ENV !== 'production') {\n var res = parseText(value, delimiters);\n if (res) {\n warn$2(\n name + \"=\\\"\" + value + \"\\\": \" +\n 'Interpolation inside attributes has been removed. ' +\n 'Use v-bind or the colon shorthand instead. For example, ' +\n 'instead of <div id=\"{{ val }}\">, use <div :id=\"val\">.',\n list[i]\n );\n }\n }\n addAttr(el, name, JSON.stringify(value), list[i]);\n // #6887 firefox doesn't update muted state if set via attribute\n // even immediately after element creation\n if (!el.component &&\n name === 'muted' &&\n platformMustUseProp(el.tag, el.attrsMap.type, name)) {\n addProp(el, name, 'true', list[i]);\n }\n }\n }\n}\n\nfunction checkInFor (el) {\n var parent = el;\n while (parent) {\n if (parent.for !== undefined) {\n return true\n }\n parent = parent.parent;\n }\n return false\n}\n\nfunction parseModifiers (name) {\n var match = name.match(modifierRE);\n if (match) {\n var ret = {};\n match.forEach(function (m) { ret[m.slice(1)] = true; });\n return ret\n }\n}\n\nfunction makeAttrsMap (attrs) {\n var map = {};\n for (var i = 0, l = attrs.length; i < l; i++) {\n if (\n process.env.NODE_ENV !== 'production' &&\n map[attrs[i].name] && !isIE && !isEdge\n ) {\n warn$2('duplicate attribute: ' + attrs[i].name, attrs[i]);\n }\n map[attrs[i].name] = attrs[i].value;\n }\n return map\n}\n\n// for script (e.g. type=\"x/template\") or style, do not decode content\nfunction isTextTag (el) {\n return el.tag === 'script' || el.tag === 'style'\n}\n\nfunction isForbiddenTag (el) {\n return (\n el.tag === 'style' ||\n (el.tag === 'script' && (\n !el.attrsMap.type ||\n el.attrsMap.type === 'text/javascript'\n ))\n )\n}\n\nvar ieNSBug = /^xmlns:NS\\d+/;\nvar ieNSPrefix = /^NS\\d+:/;\n\n/* istanbul ignore next */\nfunction guardIESVGBug (attrs) {\n var res = [];\n for (var i = 0; i < attrs.length; i++) {\n var attr = attrs[i];\n if (!ieNSBug.test(attr.name)) {\n attr.name = attr.name.replace(ieNSPrefix, '');\n res.push(attr);\n }\n }\n return res\n}\n\nfunction checkForAliasModel (el, value) {\n var _el = el;\n while (_el) {\n if (_el.for && _el.alias === value) {\n