Version Description
- Released on 16 December 2021 =
- New: support for WooCommerce 6.0
- Update: YITH plugin framework
Download this release
Release Info
Developer | yithemes |
Plugin | YITH WooCommerce Ajax Search |
Version | 1.13.0 |
Comparing to | |
See all releases |
Code changes from version 1.12.0 to 1.13.0
- includes/class.yith-wcas-admin.php +204 -204
- includes/class.yith-wcas-frontend.php +65 -65
- includes/class.yith-wcas.php +227 -227
- includes/compatibility/elementor/class.yith-wcas-elementor.php +85 -85
- includes/compatibility/elementor/class.yith-wcas-search-form-elementor.php +113 -113
- includes/functions.yith-wcas.php +23 -23
- includes/widgets/class.yith-wcas-ajax-search.php +99 -99
- init.php +4 -4
- languages/yith-woocommerce-ajax-search-it_IT.po +666 -666
- languages/yith-woocommerce-ajax-search-pt_PT.po +358 -358
- languages/yith-woocommerce-ajax-search.pot +2 -2
- license.txt +693 -693
- plugin-fw/assets/css/admin.css +338 -338
- plugin-fw/assets/css/codemirror/codemirror.css +260 -260
- plugin-fw/assets/css/colorbox.css +65 -65
- plugin-fw/assets/css/elementor.css +35 -35
- plugin-fw/assets/css/metaboxes.css +751 -751
- plugin-fw/assets/css/scss/yith-plugin-ui.scss +0 -8
- plugin-fw/assets/css/scss/yith-plugin-ui/_animations.scss +0 -92
- plugin-fw/assets/css/scss/yith-plugin-ui/_components.scss +0 -11
- plugin-fw/assets/css/scss/yith-plugin-ui/_head_comment.scss +0 -6
- plugin-fw/assets/css/scss/yith-plugin-ui/_tables.scss +0 -56
- plugin-fw/assets/css/scss/yith-plugin-ui/_taxonomy.scss +0 -52
- plugin-fw/assets/css/scss/yith-plugin-ui/_variables.scss +0 -121
- plugin-fw/assets/css/scss/yith-plugin-ui/_wp-pages.scss +0 -88
- plugin-fw/assets/css/scss/yith-plugin-ui/components/_action-button.scss +0 -80
- plugin-fw/assets/css/scss/yith-plugin-ui/components/_boxed-row.scss +0 -14
- plugin-fw/assets/css/scss/yith-plugin-ui/components/_buttons.scss +0 -224
- plugin-fw/assets/css/scss/yith-plugin-ui/components/_confirm.scss +0 -41
- plugin-fw/assets/css/scss/yith-plugin-ui/components/_list-table-blank-state.scss +0 -25
- plugin-fw/assets/css/scss/yith-plugin-ui/components/_modal.scss +0 -128
- plugin-fw/assets/css/scss/yith-plugin-ui/components/_tip-tip.scss +0 -79
- plugin-fw/assets/css/scss/yith-plugin-ui/mixins/_buttons.scss +0 -124
- plugin-fw/assets/css/scss/yith-plugin-ui/mixins/_tables.scss +0 -159
- plugin-fw/assets/css/yit-plugin-panel.css +1276 -1087
- plugin-fw/assets/css/yit-upgrade-to-pro.css +82 -82
- plugin-fw/assets/css/yit-upgrader.css +21 -21
- plugin-fw/assets/css/yith-fields.css +2364 -2280
- plugin-fw/assets/css/yith-icon.css +370 -358
- plugin-fw/assets/css/yith-select2-no-wc.css +740 -740
- plugin-fw/assets/fonts/yith-icon.eot +0 -0
- plugin-fw/assets/fonts/yith-icon.ttf +0 -0
- plugin-fw/assets/fonts/yith-icon.woff2 +0 -0
- plugin-fw/assets/images/arrow.svg +11 -0
- plugin-fw/assets/images/arrow_down.svg +9 -9
- plugin-fw/assets/js/codemirror/codemirror.js +5760 -5799
includes/class.yith-wcas-admin.php
CHANGED
@@ -1,204 +1,204 @@
|
|
1 |
-
<?php //phpcs:ignore WordPress.Files.FileName.InvalidClassFileName
|
2 |
-
/**
|
3 |
-
* Admin class
|
4 |
-
*
|
5 |
-
* @author YITH
|
6 |
-
* @package YITH WooCommerce Ajax Search
|
7 |
-
* @version 1.1.1
|
8 |
-
*/
|
9 |
-
|
10 |
-
if ( ! defined( 'YITH_WCAS' ) ) {
|
11 |
-
exit; } // Exit if accessed directly
|
12 |
-
|
13 |
-
if ( ! class_exists( 'YITH_WCAS_Admin' ) ) {
|
14 |
-
/**
|
15 |
-
* Admin class.
|
16 |
-
* The class manage all the admin behaviors.
|
17 |
-
*
|
18 |
-
* @since 1.0.0
|
19 |
-
*/
|
20 |
-
class YITH_WCAS_Admin {
|
21 |
-
/**
|
22 |
-
* Plugin options
|
23 |
-
*
|
24 |
-
* @var array
|
25 |
-
* @access public
|
26 |
-
* @since 1.0.0
|
27 |
-
*/
|
28 |
-
public $options = array();
|
29 |
-
|
30 |
-
/**
|
31 |
-
* Panel object
|
32 |
-
*
|
33 |
-
* @var Panel Object
|
34 |
-
*/
|
35 |
-
protected $_panel; // phpcs:ignore
|
36 |
-
|
37 |
-
/**
|
38 |
-
* Premium tab template file name.
|
39 |
-
*
|
40 |
-
* @var string
|
41 |
-
*/
|
42 |
-
protected $_premium = 'premium.php'; // phpcs:ignore
|
43 |
-
|
44 |
-
/**
|
45 |
-
* Premium version landing link.
|
46 |
-
*
|
47 |
-
* @var string
|
48 |
-
*/
|
49 |
-
protected $_premium_landing = 'https://yithemes.com/themes/plugins/yith-woocommerce-ajax-search/'; // phpcs:ignore
|
50 |
-
|
51 |
-
/**
|
52 |
-
* Ajax Search panel page.
|
53 |
-
*
|
54 |
-
* @var string
|
55 |
-
*/
|
56 |
-
protected $_panel_page = 'yith_wcas_panel'; // phpcs:ignore
|
57 |
-
|
58 |
-
|
59 |
-
/**
|
60 |
-
* Constructor
|
61 |
-
*
|
62 |
-
* @access public
|
63 |
-
* @since 1.0.0
|
64 |
-
*/
|
65 |
-
public function __construct() {
|
66 |
-
|
67 |
-
add_action( 'admin_menu', array( $this, 'register_panel' ), 5 );
|
68 |
-
add_action( 'init', array( $this, 'gutenberg_integration' ) );
|
69 |
-
// Add action links.
|
70 |
-
add_filter( 'plugin_action_links_' . plugin_basename( YITH_WCAS_DIR . '/' . basename( YITH_WCAS_FILE ) ), array( $this, 'action_links' ) );
|
71 |
-
add_filter( 'yith_show_plugin_row_meta', array( $this, 'plugin_row_meta' ), 10, 5 );
|
72 |
-
|
73 |
-
add_action( 'yith_ajax_search_premium', array( $this, 'premium_tab' ) );
|
74 |
-
|
75 |
-
// YITH WCAS Loaded.
|
76 |
-
do_action( 'yith_wcas_loaded' );
|
77 |
-
}
|
78 |
-
|
79 |
-
|
80 |
-
/**
|
81 |
-
* Gutenberg Integration
|
82 |
-
*/
|
83 |
-
public function gutenberg_integration() {
|
84 |
-
if ( function_exists( 'yith_plugin_fw_gutenberg_add_blocks' ) ) {
|
85 |
-
$blocks = include_once YITH_WCAS_DIR . 'plugin-options/gutenberg/blocks.php';
|
86 |
-
yith_plugin_fw_gutenberg_add_blocks( $blocks );
|
87 |
-
}
|
88 |
-
}
|
89 |
-
|
90 |
-
/**
|
91 |
-
* Action Links
|
92 |
-
*
|
93 |
-
* Add the action links to plugin admin page
|
94 |
-
*
|
95 |
-
* @param string $links | links plugin array.
|
96 |
-
*
|
97 |
-
* @return mixed
|
98 |
-
* @since 1.0
|
99 |
-
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
100 |
-
* @use plugin_action_links_{$plugin_file_name}
|
101 |
-
*/
|
102 |
-
public function action_links( $links ) {
|
103 |
-
$links = yith_add_action_links( $links, $this->_panel_page, false );
|
104 |
-
return $links;
|
105 |
-
}
|
106 |
-
|
107 |
-
/**
|
108 |
-
* Add a panel under YITH Plugins tab
|
109 |
-
*
|
110 |
-
* @return void
|
111 |
-
* @since 1.0
|
112 |
-
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
113 |
-
* @use /Yit_Plugin_Panel class
|
114 |
-
* @see plugin-fw/lib/yit-plugin-panel.php
|
115 |
-
*/
|
116 |
-
public function register_panel() {
|
117 |
-
|
118 |
-
if ( ! empty( $this->_panel ) ) {
|
119 |
-
return;
|
120 |
-
}
|
121 |
-
|
122 |
-
$admin_tabs = array(
|
123 |
-
'settings' => __( 'Settings', 'yith-woocommerce-ajax-search' ),
|
124 |
-
'premium' => __( 'Premium Version', 'yith-woocommerce-ajax-search' ),
|
125 |
-
);
|
126 |
-
|
127 |
-
$args = array(
|
128 |
-
'create_menu_page' => true,
|
129 |
-
'parent_slug' => '',
|
130 |
-
'plugin_slug' => YITH_WCAS_SLUG,
|
131 |
-
'page_title' => __( 'YITH WooCommerce Ajax Search', 'yith-woocommerce-ajax-search' ),
|
132 |
-
'menu_title' => __( 'Ajax Search', 'yith-woocommerce-ajax-search' ),
|
133 |
-
'capability' => 'manage_options',
|
134 |
-
'parent' => '',
|
135 |
-
'parent_page' => 'yith_plugin_panel',
|
136 |
-
'page' => $this->_panel_page,
|
137 |
-
'admin-tabs' => $admin_tabs,
|
138 |
-
'class' => yith_set_wrapper_class(),
|
139 |
-
'options-path' => YITH_WCAS_DIR . '/plugin-options',
|
140 |
-
);
|
141 |
-
|
142 |
-
/* === Fixed: not updated theme === */
|
143 |
-
if ( ! class_exists( 'YIT_Plugin_Panel_WooCommerce' ) ) {
|
144 |
-
require_once 'plugin-fw/lib/yit-plugin-panel-wc.php';
|
145 |
-
}
|
146 |
-
|
147 |
-
$this->_panel = new YIT_Plugin_Panel_WooCommerce( $args );
|
148 |
-
}
|
149 |
-
|
150 |
-
/**
|
151 |
-
* Premium Tab Template
|
152 |
-
*
|
153 |
-
* Load the premium tab template on admin page
|
154 |
-
*
|
155 |
-
* @return void
|
156 |
-
* @since 1.0
|
157 |
-
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
158 |
-
*/
|
159 |
-
public function premium_tab() {
|
160 |
-
$premium_tab_template = YITH_WCAS_TEMPLATE_PATH . '/admin/' . $this->_premium;
|
161 |
-
if ( file_exists( $premium_tab_template ) ) {
|
162 |
-
include_once $premium_tab_template;
|
163 |
-
}
|
164 |
-
|
165 |
-
}
|
166 |
-
|
167 |
-
/**
|
168 |
-
* Add the action links to plugin admin page
|
169 |
-
*
|
170 |
-
* @param string $new_row_meta_args Plugin Meta New args.
|
171 |
-
* @param string $plugin_meta Plugin Meta.
|
172 |
-
* @param string $plugin_file Plugin file.
|
173 |
-
* @param array $plugin_data Plugin data.
|
174 |
-
* @param string $status Status.
|
175 |
-
* @param string $init_file Init file.
|
176 |
-
*
|
177 |
-
* @return array
|
178 |
-
* @since 1.0
|
179 |
-
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
180 |
-
* @use plugin_row_meta
|
181 |
-
*/
|
182 |
-
public function plugin_row_meta( $new_row_meta_args, $plugin_meta, $plugin_file, $plugin_data, $status, $init_file = 'YITH_WCAS_FREE_INIT' ) {
|
183 |
-
if ( defined( $init_file ) && constant( $init_file ) === $plugin_file ) {
|
184 |
-
$new_row_meta_args['slug'] = YITH_WCAS_SLUG;
|
185 |
-
}
|
186 |
-
|
187 |
-
return $new_row_meta_args;
|
188 |
-
}
|
189 |
-
|
190 |
-
|
191 |
-
|
192 |
-
/**
|
193 |
-
* Get the premium landing uri
|
194 |
-
*
|
195 |
-
* @since 1.0.0
|
196 |
-
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
197 |
-
* @return string The premium landing link
|
198 |
-
*/
|
199 |
-
public function get_premium_landing_uri() {
|
200 |
-
return $this->_premium_landing;
|
201 |
-
}
|
202 |
-
|
203 |
-
}
|
204 |
-
}
|
1 |
+
<?php //phpcs:ignore WordPress.Files.FileName.InvalidClassFileName
|
2 |
+
/**
|
3 |
+
* Admin class
|
4 |
+
*
|
5 |
+
* @author YITH
|
6 |
+
* @package YITH WooCommerce Ajax Search
|
7 |
+
* @version 1.1.1
|
8 |
+
*/
|
9 |
+
|
10 |
+
if ( ! defined( 'YITH_WCAS' ) ) {
|
11 |
+
exit; } // Exit if accessed directly
|
12 |
+
|
13 |
+
if ( ! class_exists( 'YITH_WCAS_Admin' ) ) {
|
14 |
+
/**
|
15 |
+
* Admin class.
|
16 |
+
* The class manage all the admin behaviors.
|
17 |
+
*
|
18 |
+
* @since 1.0.0
|
19 |
+
*/
|
20 |
+
class YITH_WCAS_Admin {
|
21 |
+
/**
|
22 |
+
* Plugin options
|
23 |
+
*
|
24 |
+
* @var array
|
25 |
+
* @access public
|
26 |
+
* @since 1.0.0
|
27 |
+
*/
|
28 |
+
public $options = array();
|
29 |
+
|
30 |
+
/**
|
31 |
+
* Panel object
|
32 |
+
*
|
33 |
+
* @var Panel Object
|
34 |
+
*/
|
35 |
+
protected $_panel; // phpcs:ignore
|
36 |
+
|
37 |
+
/**
|
38 |
+
* Premium tab template file name.
|
39 |
+
*
|
40 |
+
* @var string
|
41 |
+
*/
|
42 |
+
protected $_premium = 'premium.php'; // phpcs:ignore
|
43 |
+
|
44 |
+
/**
|
45 |
+
* Premium version landing link.
|
46 |
+
*
|
47 |
+
* @var string
|
48 |
+
*/
|
49 |
+
protected $_premium_landing = 'https://yithemes.com/themes/plugins/yith-woocommerce-ajax-search/'; // phpcs:ignore
|
50 |
+
|
51 |
+
/**
|
52 |
+
* Ajax Search panel page.
|
53 |
+
*
|
54 |
+
* @var string
|
55 |
+
*/
|
56 |
+
protected $_panel_page = 'yith_wcas_panel'; // phpcs:ignore
|
57 |
+
|
58 |
+
|
59 |
+
/**
|
60 |
+
* Constructor
|
61 |
+
*
|
62 |
+
* @access public
|
63 |
+
* @since 1.0.0
|
64 |
+
*/
|
65 |
+
public function __construct() {
|
66 |
+
|
67 |
+
add_action( 'admin_menu', array( $this, 'register_panel' ), 5 );
|
68 |
+
add_action( 'init', array( $this, 'gutenberg_integration' ) );
|
69 |
+
// Add action links.
|
70 |
+
add_filter( 'plugin_action_links_' . plugin_basename( YITH_WCAS_DIR . '/' . basename( YITH_WCAS_FILE ) ), array( $this, 'action_links' ) );
|
71 |
+
add_filter( 'yith_show_plugin_row_meta', array( $this, 'plugin_row_meta' ), 10, 5 );
|
72 |
+
|
73 |
+
add_action( 'yith_ajax_search_premium', array( $this, 'premium_tab' ) );
|
74 |
+
|
75 |
+
// YITH WCAS Loaded.
|
76 |
+
do_action( 'yith_wcas_loaded' );
|
77 |
+
}
|
78 |
+
|
79 |
+
|
80 |
+
/**
|
81 |
+
* Gutenberg Integration
|
82 |
+
*/
|
83 |
+
public function gutenberg_integration() {
|
84 |
+
if ( function_exists( 'yith_plugin_fw_gutenberg_add_blocks' ) ) {
|
85 |
+
$blocks = include_once YITH_WCAS_DIR . 'plugin-options/gutenberg/blocks.php';
|
86 |
+
yith_plugin_fw_gutenberg_add_blocks( $blocks );
|
87 |
+
}
|
88 |
+
}
|
89 |
+
|
90 |
+
/**
|
91 |
+
* Action Links
|
92 |
+
*
|
93 |
+
* Add the action links to plugin admin page
|
94 |
+
*
|
95 |
+
* @param string $links | links plugin array.
|
96 |
+
*
|
97 |
+
* @return mixed
|
98 |
+
* @since 1.0
|
99 |
+
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
100 |
+
* @use plugin_action_links_{$plugin_file_name}
|
101 |
+
*/
|
102 |
+
public function action_links( $links ) {
|
103 |
+
$links = yith_add_action_links( $links, $this->_panel_page, false );
|
104 |
+
return $links;
|
105 |
+
}
|
106 |
+
|
107 |
+
/**
|
108 |
+
* Add a panel under YITH Plugins tab
|
109 |
+
*
|
110 |
+
* @return void
|
111 |
+
* @since 1.0
|
112 |
+
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
113 |
+
* @use /Yit_Plugin_Panel class
|
114 |
+
* @see plugin-fw/lib/yit-plugin-panel.php
|
115 |
+
*/
|
116 |
+
public function register_panel() {
|
117 |
+
|
118 |
+
if ( ! empty( $this->_panel ) ) {
|
119 |
+
return;
|
120 |
+
}
|
121 |
+
|
122 |
+
$admin_tabs = array(
|
123 |
+
'settings' => __( 'Settings', 'yith-woocommerce-ajax-search' ),
|
124 |
+
'premium' => __( 'Premium Version', 'yith-woocommerce-ajax-search' ),
|
125 |
+
);
|
126 |
+
|
127 |
+
$args = array(
|
128 |
+
'create_menu_page' => true,
|
129 |
+
'parent_slug' => '',
|
130 |
+
'plugin_slug' => YITH_WCAS_SLUG,
|
131 |
+
'page_title' => __( 'YITH WooCommerce Ajax Search', 'yith-woocommerce-ajax-search' ),
|
132 |
+
'menu_title' => __( 'Ajax Search', 'yith-woocommerce-ajax-search' ),
|
133 |
+
'capability' => 'manage_options',
|
134 |
+
'parent' => '',
|
135 |
+
'parent_page' => 'yith_plugin_panel',
|
136 |
+
'page' => $this->_panel_page,
|
137 |
+
'admin-tabs' => $admin_tabs,
|
138 |
+
'class' => yith_set_wrapper_class(),
|
139 |
+
'options-path' => YITH_WCAS_DIR . '/plugin-options',
|
140 |
+
);
|
141 |
+
|
142 |
+
/* === Fixed: not updated theme === */
|
143 |
+
if ( ! class_exists( 'YIT_Plugin_Panel_WooCommerce' ) ) {
|
144 |
+
require_once 'plugin-fw/lib/yit-plugin-panel-wc.php';
|
145 |
+
}
|
146 |
+
|
147 |
+
$this->_panel = new YIT_Plugin_Panel_WooCommerce( $args );
|
148 |
+
}
|
149 |
+
|
150 |
+
/**
|
151 |
+
* Premium Tab Template
|
152 |
+
*
|
153 |
+
* Load the premium tab template on admin page
|
154 |
+
*
|
155 |
+
* @return void
|
156 |
+
* @since 1.0
|
157 |
+
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
158 |
+
*/
|
159 |
+
public function premium_tab() {
|
160 |
+
$premium_tab_template = YITH_WCAS_TEMPLATE_PATH . '/admin/' . $this->_premium;
|
161 |
+
if ( file_exists( $premium_tab_template ) ) {
|
162 |
+
include_once $premium_tab_template;
|
163 |
+
}
|
164 |
+
|
165 |
+
}
|
166 |
+
|
167 |
+
/**
|
168 |
+
* Add the action links to plugin admin page
|
169 |
+
*
|
170 |
+
* @param string $new_row_meta_args Plugin Meta New args.
|
171 |
+
* @param string $plugin_meta Plugin Meta.
|
172 |
+
* @param string $plugin_file Plugin file.
|
173 |
+
* @param array $plugin_data Plugin data.
|
174 |
+
* @param string $status Status.
|
175 |
+
* @param string $init_file Init file.
|
176 |
+
*
|
177 |
+
* @return array
|
178 |
+
* @since 1.0
|
179 |
+
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
180 |
+
* @use plugin_row_meta
|
181 |
+
*/
|
182 |
+
public function plugin_row_meta( $new_row_meta_args, $plugin_meta, $plugin_file, $plugin_data, $status, $init_file = 'YITH_WCAS_FREE_INIT' ) {
|
183 |
+
if ( defined( $init_file ) && constant( $init_file ) === $plugin_file ) {
|
184 |
+
$new_row_meta_args['slug'] = YITH_WCAS_SLUG;
|
185 |
+
}
|
186 |
+
|
187 |
+
return $new_row_meta_args;
|
188 |
+
}
|
189 |
+
|
190 |
+
|
191 |
+
|
192 |
+
/**
|
193 |
+
* Get the premium landing uri
|
194 |
+
*
|
195 |
+
* @since 1.0.0
|
196 |
+
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
197 |
+
* @return string The premium landing link
|
198 |
+
*/
|
199 |
+
public function get_premium_landing_uri() {
|
200 |
+
return $this->_premium_landing;
|
201 |
+
}
|
202 |
+
|
203 |
+
}
|
204 |
+
}
|
includes/class.yith-wcas-frontend.php
CHANGED
@@ -1,65 +1,65 @@
|
|
1 |
-
<?php //phpcs:ignore WordPress.Files.FileName.InvalidClassFileName
|
2 |
-
/**
|
3 |
-
* Frontend class
|
4 |
-
*
|
5 |
-
* @author YITH
|
6 |
-
* @package YITH WooCommerce Ajax Search
|
7 |
-
* @version 1.1.1
|
8 |
-
*/
|
9 |
-
|
10 |
-
if ( ! defined( 'YITH_WCAS' ) ) {
|
11 |
-
exit; } // Exit if accessed directly
|
12 |
-
|
13 |
-
if ( ! class_exists( 'YITH_WCAS_Frontend' ) ) {
|
14 |
-
/**
|
15 |
-
* Admin class.
|
16 |
-
* The class manage all the Frontend behaviors.
|
17 |
-
*
|
18 |
-
* @since 1.0.0
|
19 |
-
*/
|
20 |
-
class YITH_WCAS_Frontend {
|
21 |
-
|
22 |
-
/**
|
23 |
-
* Constructor
|
24 |
-
*
|
25 |
-
* @access public
|
26 |
-
* @since 1.0.0
|
27 |
-
*/
|
28 |
-
public function __construct() {
|
29 |
-
|
30 |
-
// custom styles and javascript.
|
31 |
-
add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_styles_scripts' ) );
|
32 |
-
}
|
33 |
-
|
34 |
-
/**
|
35 |
-
* Enqueue styles and scripts
|
36 |
-
*
|
37 |
-
* @access public
|
38 |
-
* @return void
|
39 |
-
* @since 1.0.0
|
40 |
-
*/
|
41 |
-
public function enqueue_styles_scripts() {
|
42 |
-
$suffix = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min';
|
43 |
-
wp_register_script( 'yith_autocomplete', YITH_WCAS_URL . 'assets/js/yith-autocomplete' . $suffix . '.js', array( 'jquery' ), '1.2.7', true );
|
44 |
-
wp_register_script( 'yith_wcas_jquery-autocomplete', YITH_WCAS_URL . 'assets/js/devbridge-jquery-autocomplete' . $suffix . '.js', array( 'jquery' ), '1.2.7', true );
|
45 |
-
|
46 |
-
wp_register_script( 'yith_wcas_frontend', YITH_WCAS_URL . 'assets/js/frontend' . $suffix . '.js', array( 'jquery' ), '1.0', true );
|
47 |
-
|
48 |
-
$css = file_exists( get_stylesheet_directory() . '/woocommerce/yith_ajax_search.css' ) ? get_stylesheet_directory_uri() . '/woocommerce/yith_ajax_search.css' : YITH_WCAS_URL . 'assets/css/yith_wcas_ajax_search.css';
|
49 |
-
wp_enqueue_style( 'yith_wcas_frontend', $css, array(), YITH_WCAS_VERSION );
|
50 |
-
|
51 |
-
wp_localize_script(
|
52 |
-
'yith_wcas_frontend',
|
53 |
-
'yith_wcas_params',
|
54 |
-
array(
|
55 |
-
'loading' => YITH_WCAS_ASSETS_IMAGES_URL . 'ajax-loader.gif',
|
56 |
-
'ajax_url' => admin_url( 'admin-ajax.php' ),
|
57 |
-
|
58 |
-
)
|
59 |
-
);
|
60 |
-
|
61 |
-
wp_enqueue_script( 'yith_autocomplete' );
|
62 |
-
|
63 |
-
}
|
64 |
-
}
|
65 |
-
}
|
1 |
+
<?php //phpcs:ignore WordPress.Files.FileName.InvalidClassFileName
|
2 |
+
/**
|
3 |
+
* Frontend class
|
4 |
+
*
|
5 |
+
* @author YITH
|
6 |
+
* @package YITH WooCommerce Ajax Search
|
7 |
+
* @version 1.1.1
|
8 |
+
*/
|
9 |
+
|
10 |
+
if ( ! defined( 'YITH_WCAS' ) ) {
|
11 |
+
exit; } // Exit if accessed directly
|
12 |
+
|
13 |
+
if ( ! class_exists( 'YITH_WCAS_Frontend' ) ) {
|
14 |
+
/**
|
15 |
+
* Admin class.
|
16 |
+
* The class manage all the Frontend behaviors.
|
17 |
+
*
|
18 |
+
* @since 1.0.0
|
19 |
+
*/
|
20 |
+
class YITH_WCAS_Frontend {
|
21 |
+
|
22 |
+
/**
|
23 |
+
* Constructor
|
24 |
+
*
|
25 |
+
* @access public
|
26 |
+
* @since 1.0.0
|
27 |
+
*/
|
28 |
+
public function __construct() {
|
29 |
+
|
30 |
+
// custom styles and javascript.
|
31 |
+
add_action( 'wp_enqueue_scripts', array( $this, 'enqueue_styles_scripts' ) );
|
32 |
+
}
|
33 |
+
|
34 |
+
/**
|
35 |
+
* Enqueue styles and scripts
|
36 |
+
*
|
37 |
+
* @access public
|
38 |
+
* @return void
|
39 |
+
* @since 1.0.0
|
40 |
+
*/
|
41 |
+
public function enqueue_styles_scripts() {
|
42 |
+
$suffix = defined( 'SCRIPT_DEBUG' ) && SCRIPT_DEBUG ? '' : '.min';
|
43 |
+
wp_register_script( 'yith_autocomplete', YITH_WCAS_URL . 'assets/js/yith-autocomplete' . $suffix . '.js', array( 'jquery' ), '1.2.7', true );
|
44 |
+
wp_register_script( 'yith_wcas_jquery-autocomplete', YITH_WCAS_URL . 'assets/js/devbridge-jquery-autocomplete' . $suffix . '.js', array( 'jquery' ), '1.2.7', true );
|
45 |
+
|
46 |
+
wp_register_script( 'yith_wcas_frontend', YITH_WCAS_URL . 'assets/js/frontend' . $suffix . '.js', array( 'jquery' ), '1.0', true );
|
47 |
+
|
48 |
+
$css = file_exists( get_stylesheet_directory() . '/woocommerce/yith_ajax_search.css' ) ? get_stylesheet_directory_uri() . '/woocommerce/yith_ajax_search.css' : YITH_WCAS_URL . 'assets/css/yith_wcas_ajax_search.css';
|
49 |
+
wp_enqueue_style( 'yith_wcas_frontend', $css, array(), YITH_WCAS_VERSION );
|
50 |
+
|
51 |
+
wp_localize_script(
|
52 |
+
'yith_wcas_frontend',
|
53 |
+
'yith_wcas_params',
|
54 |
+
array(
|
55 |
+
'loading' => YITH_WCAS_ASSETS_IMAGES_URL . 'ajax-loader.gif',
|
56 |
+
'ajax_url' => admin_url( 'admin-ajax.php' ),
|
57 |
+
|
58 |
+
)
|
59 |
+
);
|
60 |
+
|
61 |
+
wp_enqueue_script( 'yith_autocomplete' );
|
62 |
+
|
63 |
+
}
|
64 |
+
}
|
65 |
+
}
|
includes/class.yith-wcas.php
CHANGED
@@ -1,227 +1,227 @@
|
|
1 |
-
<?php //phpcs:ignore WordPress.Files.FileName.InvalidClassFileName
|
2 |
-
/**
|
3 |
-
* Main class
|
4 |
-
*
|
5 |
-
* @author YITH
|
6 |
-
* @package YITH WooCommerce Ajax Search
|
7 |
-
* @version 1.1.1
|
8 |
-
*/
|
9 |
-
|
10 |
-
if ( ! defined( 'YITH_WCAS' ) ) {
|
11 |
-
exit;
|
12 |
-
} // Exit if accessed directly
|
13 |
-
|
14 |
-
if ( ! class_exists( 'YITH_WCAS' ) ) {
|
15 |
-
/**
|
16 |
-
* YITH WooCommerce Ajax Search
|
17 |
-
*
|
18 |
-
* @since 1.0.0
|
19 |
-
*/
|
20 |
-
class YITH_WCAS {
|
21 |
-
|
22 |
-
/**
|
23 |
-
* Plugin object
|
24 |
-
*
|
25 |
-
* @var string
|
26 |
-
* @since 1.0.0
|
27 |
-
*/
|
28 |
-
public $obj = null;
|
29 |
-
|
30 |
-
/**
|
31 |
-
* Constructor
|
32 |
-
*
|
33 |
-
* @return mixed|YITH_WCAS_Admin|YITH_WCAS_Frontend
|
34 |
-
* @since 1.0.0
|
35 |
-
*/
|
36 |
-
public function __construct() {
|
37 |
-
|
38 |
-
$this->obj = false;
|
39 |
-
|
40 |
-
// Load Plugin Framework.
|
41 |
-
if ( ! isset( $_REQUEST['action'] ) || 'yith_ajax_search_products' !== $_REQUEST['action'] ) { // phpcs:ignore
|
42 |
-
add_action( 'plugins_loaded', array( $this, 'plugin_fw_loader' ), 15 );
|
43 |
-
|
44 |
-
if ( is_admin() ) {
|
45 |
-
$this->obj = new YITH_WCAS_Admin();
|
46 |
-
|
47 |
-
} else {
|
48 |
-
$this->obj = new YITH_WCAS_Frontend();
|
49 |
-
}
|
50 |
-
} else {
|
51 |
-
if ( class_exists( 'YITH_JetPack' ) ) {
|
52 |
-
include_once YJP_DIR . 'plugin-fw/yit-woocommerce-compatibility.php';
|
53 |
-
} else {
|
54 |
-
include_once YITH_WCAS_DIR . 'plugin-fw/yit-woocommerce-compatibility.php';
|
55 |
-
}
|
56 |
-
}
|
57 |
-
|
58 |
-
// actions.
|
59 |
-
add_action( 'widgets_init', array( $this, 'registerWidgets' ) );
|
60 |
-
|
61 |
-
add_action( 'wp_ajax_yith_ajax_search_products', array( $this, 'ajax_search_products' ) );
|
62 |
-
add_action( 'wp_ajax_nopriv_yith_ajax_search_products', array( $this, 'ajax_search_products' ) );
|
63 |
-
|
64 |
-
// register shortcode.
|
65 |
-
add_shortcode( 'yith_woocommerce_ajax_search', array( $this, 'add_woo_ajax_search_shortcode' ) );
|
66 |
-
|
67 |
-
if ( defined( 'ELEMENTOR_VERSION' ) ) {
|
68 |
-
require_once YITH_WCAS_DIR . 'includes/compatibility/elementor/class.yith-wcas-elementor.php';
|
69 |
-
}
|
70 |
-
|
71 |
-
return $this->obj;
|
72 |
-
}
|
73 |
-
|
74 |
-
|
75 |
-
/**
|
76 |
-
* Load Plugin Framework
|
77 |
-
*
|
78 |
-
* @since 1.0
|
79 |
-
* @access public
|
80 |
-
* @return void
|
81 |
-
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
82 |
-
*/
|
83 |
-
public function plugin_fw_loader() {
|
84 |
-
if ( ! defined( 'YIT_CORE_PLUGIN' ) ) {
|
85 |
-
global $plugin_fw_data;
|
86 |
-
if ( ! empty( $plugin_fw_data ) ) {
|
87 |
-
$plugin_fw_file = array_shift( $plugin_fw_data );
|
88 |
-
require_once $plugin_fw_file;
|
89 |
-
}
|
90 |
-
}
|
91 |
-
}
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
/**
|
96 |
-
* Load template for [yith_woocommerce_ajax_search] shortcode
|
97 |
-
*
|
98 |
-
* @access public
|
99 |
-
*
|
100 |
-
* @param array $args Array of arguments.
|
101 |
-
*
|
102 |
-
* @return mixed
|
103 |
-
* @since 1.0.0
|
104 |
-
*/
|
105 |
-
public function add_woo_ajax_search_shortcode( $args = array() ) {
|
106 |
-
$args = shortcode_atts( array(), $args );
|
107 |
-
// for WC 3.6.0.
|
108 |
-
unset( $args['template'] );
|
109 |
-
|
110 |
-
ob_start();
|
111 |
-
$wc_get_template = function_exists( 'wc_get_template' ) ? 'wc_get_template' : 'woocommerce_get_template';
|
112 |
-
$wc_get_template( 'yith-woocommerce-ajax-search.php', $args, '', YITH_WCAS_DIR . 'templates/' );
|
113 |
-
return ob_get_clean();
|
114 |
-
}
|
115 |
-
|
116 |
-
/**
|
117 |
-
* Load and register widgets
|
118 |
-
*
|
119 |
-
* @access public
|
120 |
-
* @since 1.0.0
|
121 |
-
*/
|
122 |
-
public function registerWidgets() { // phpcs:ignore
|
123 |
-
register_widget( 'YITH_WCAS_Ajax_Search_Widget' );
|
124 |
-
}
|
125 |
-
|
126 |
-
|
127 |
-
/**
|
128 |
-
* Perform ajax search products
|
129 |
-
*/
|
130 |
-
public function ajax_search_products() {
|
131 |
-
global $woocommerce;
|
132 |
-
$time_start = getmicrotime();
|
133 |
-
$transient_enabled = get_option( 'yith_wcas_enable_transient', 'no' );
|
134 |
-
$transient_duration = get_option( 'yith_wcas_transient_duration', 12 );
|
135 |
-
|
136 |
-
$search_keyword = sanitize_text_field( wp_unslash( $_REQUEST['query'] ) ); //phpcs:ignore
|
137 |
-
|
138 |
-
$ordering_args = $woocommerce->query->get_catalog_ordering_args( 'title', 'asc' );
|
139 |
-
$suggestions = array();
|
140 |
-
|
141 |
-
$transient_name = 'ywcas_' . $search_keyword;
|
142 |
-
$suggestions = get_transient( $transient_name );
|
143 |
-
if ( 'no' === $transient_enabled || false === $suggestions ) {
|
144 |
-
$args = array(
|
145 |
-
's' => apply_filters( 'yith_wcas_ajax_search_products_search_query', $search_keyword ),
|
146 |
-
'post_type' => 'product',
|
147 |
-
'post_status' => 'publish',
|
148 |
-
'ignore_sticky_posts' => 1,
|
149 |
-
'orderby' => $ordering_args['orderby'],
|
150 |
-
'order' => $ordering_args['order'],
|
151 |
-
'posts_per_page' => apply_filters( 'yith_wcas_ajax_search_products_posts_per_page', get_option( 'yith_wcas_posts_per_page' ) ),
|
152 |
-
'suppress_filters' => false,
|
153 |
-
);
|
154 |
-
|
155 |
-
if ( isset( $_REQUEST['product_cat'] ) ) { //phpcs:ignore
|
156 |
-
$args['tax_query'] = array( //phpcs:ignore
|
157 |
-
'relation' => 'AND',
|
158 |
-
array(
|
159 |
-
'taxonomy' => 'product_cat',
|
160 |
-
'field' => 'slug',
|
161 |
-
'terms' => sanitize_text_field( wp_unslash( $_REQUEST['product_cat'] ) ), //phpcs:ignore
|
162 |
-
),
|
163 |
-
);
|
164 |
-
}
|
165 |
-
|
166 |
-
if ( version_compare( WC()->version, '2.7.0', '<' ) ) {
|
167 |
-
$args['meta_query'] = array( //phpcs:ignore
|
168 |
-
array(
|
169 |
-
'key' => '_visibility',
|
170 |
-
'value' => array( 'search', 'visible' ),
|
171 |
-
'compare' => 'IN',
|
172 |
-
),
|
173 |
-
);
|
174 |
-
} else {
|
175 |
-
$product_visibility_term_ids = wc_get_product_visibility_term_ids();
|
176 |
-
$args['tax_query'][] = array(
|
177 |
-
'taxonomy' => 'product_visibility',
|
178 |
-
'field' => 'term_taxonomy_id',
|
179 |
-
'terms' => $product_visibility_term_ids['exclude-from-search'],
|
180 |
-
'operator' => 'NOT IN',
|
181 |
-
);
|
182 |
-
}
|
183 |
-
|
184 |
-
$products = get_posts( $args );
|
185 |
-
|
186 |
-
if ( ! empty( $products ) ) {
|
187 |
-
foreach ( $products as $post ) {
|
188 |
-
$product = wc_get_product( $post );
|
189 |
-
|
190 |
-
$suggestions[] = apply_filters(
|
191 |
-
'yith_wcas_suggestion',
|
192 |
-
array(
|
193 |
-
'id' => $product->get_id(),
|
194 |
-
'value' => wp_strip_all_tags( $product->get_title() ),
|
195 |
-
'url' => $product->get_permalink(),
|
196 |
-
),
|
197 |
-
$product
|
198 |
-
);
|
199 |
-
}
|
200 |
-
} else {
|
201 |
-
$suggestions[] = array(
|
202 |
-
'id' => - 1,
|
203 |
-
'value' => __( 'No results', 'yith-woocommerce-ajax-search' ),
|
204 |
-
'url' => '',
|
205 |
-
);
|
206 |
-
}
|
207 |
-
wp_reset_postdata();
|
208 |
-
|
209 |
-
if ( 'yes' === $transient_enabled ) {
|
210 |
-
set_transient( $transient_name, $suggestions, $transient_duration * HOUR_IN_SECONDS );
|
211 |
-
}
|
212 |
-
}
|
213 |
-
|
214 |
-
$time_end = getmicrotime();
|
215 |
-
$time = $time_end - $time_start;
|
216 |
-
$suggestions = array(
|
217 |
-
'suggestions' => $suggestions,
|
218 |
-
'time' => $time,
|
219 |
-
);
|
220 |
-
echo wp_json_encode( $suggestions );
|
221 |
-
die();
|
222 |
-
|
223 |
-
}
|
224 |
-
|
225 |
-
|
226 |
-
}
|
227 |
-
}
|
1 |
+
<?php //phpcs:ignore WordPress.Files.FileName.InvalidClassFileName
|
2 |
+
/**
|
3 |
+
* Main class
|
4 |
+
*
|
5 |
+
* @author YITH
|
6 |
+
* @package YITH WooCommerce Ajax Search
|
7 |
+
* @version 1.1.1
|
8 |
+
*/
|
9 |
+
|
10 |
+
if ( ! defined( 'YITH_WCAS' ) ) {
|
11 |
+
exit;
|
12 |
+
} // Exit if accessed directly
|
13 |
+
|
14 |
+
if ( ! class_exists( 'YITH_WCAS' ) ) {
|
15 |
+
/**
|
16 |
+
* YITH WooCommerce Ajax Search
|
17 |
+
*
|
18 |
+
* @since 1.0.0
|
19 |
+
*/
|
20 |
+
class YITH_WCAS {
|
21 |
+
|
22 |
+
/**
|
23 |
+
* Plugin object
|
24 |
+
*
|
25 |
+
* @var string
|
26 |
+
* @since 1.0.0
|
27 |
+
*/
|
28 |
+
public $obj = null;
|
29 |
+
|
30 |
+
/**
|
31 |
+
* Constructor
|
32 |
+
*
|
33 |
+
* @return mixed|YITH_WCAS_Admin|YITH_WCAS_Frontend
|
34 |
+
* @since 1.0.0
|
35 |
+
*/
|
36 |
+
public function __construct() {
|
37 |
+
|
38 |
+
$this->obj = false;
|
39 |
+
|
40 |
+
// Load Plugin Framework.
|
41 |
+
if ( ! isset( $_REQUEST['action'] ) || 'yith_ajax_search_products' !== $_REQUEST['action'] ) { // phpcs:ignore
|
42 |
+
add_action( 'plugins_loaded', array( $this, 'plugin_fw_loader' ), 15 );
|
43 |
+
|
44 |
+
if ( is_admin() ) {
|
45 |
+
$this->obj = new YITH_WCAS_Admin();
|
46 |
+
|
47 |
+
} else {
|
48 |
+
$this->obj = new YITH_WCAS_Frontend();
|
49 |
+
}
|
50 |
+
} else {
|
51 |
+
if ( class_exists( 'YITH_JetPack' ) ) {
|
52 |
+
include_once YJP_DIR . 'plugin-fw/yit-woocommerce-compatibility.php';
|
53 |
+
} else {
|
54 |
+
include_once YITH_WCAS_DIR . 'plugin-fw/yit-woocommerce-compatibility.php';
|
55 |
+
}
|
56 |
+
}
|
57 |
+
|
58 |
+
// actions.
|
59 |
+
add_action( 'widgets_init', array( $this, 'registerWidgets' ) );
|
60 |
+
|
61 |
+
add_action( 'wp_ajax_yith_ajax_search_products', array( $this, 'ajax_search_products' ) );
|
62 |
+
add_action( 'wp_ajax_nopriv_yith_ajax_search_products', array( $this, 'ajax_search_products' ) );
|
63 |
+
|
64 |
+
// register shortcode.
|
65 |
+
add_shortcode( 'yith_woocommerce_ajax_search', array( $this, 'add_woo_ajax_search_shortcode' ) );
|
66 |
+
|
67 |
+
if ( defined( 'ELEMENTOR_VERSION' ) ) {
|
68 |
+
require_once YITH_WCAS_DIR . 'includes/compatibility/elementor/class.yith-wcas-elementor.php';
|
69 |
+
}
|
70 |
+
|
71 |
+
return $this->obj;
|
72 |
+
}
|
73 |
+
|
74 |
+
|
75 |
+
/**
|
76 |
+
* Load Plugin Framework
|
77 |
+
*
|
78 |
+
* @since 1.0
|
79 |
+
* @access public
|
80 |
+
* @return void
|
81 |
+
* @author Andrea Grillo <andrea.grillo@yithemes.com>
|
82 |
+
*/
|
83 |
+
public function plugin_fw_loader() {
|
84 |
+
if ( ! defined( 'YIT_CORE_PLUGIN' ) ) {
|
85 |
+
global $plugin_fw_data;
|
86 |
+
if ( ! empty( $plugin_fw_data ) ) {
|
87 |
+
$plugin_fw_file = array_shift( $plugin_fw_data );
|
88 |
+
require_once $plugin_fw_file;
|
89 |
+
}
|
90 |
+
}
|
91 |
+
}
|
92 |
+
|
93 |
+
|
94 |
+
|
95 |
+
/**
|
96 |
+
* Load template for [yith_woocommerce_ajax_search] shortcode
|
97 |
+
*
|
98 |
+
* @access public
|
99 |
+
*
|
100 |
+
* @param array $args Array of arguments.
|
101 |
+
*
|
102 |
+
* @return mixed
|
103 |
+
* @since 1.0.0
|
104 |
+
*/
|
105 |
+
public function add_woo_ajax_search_shortcode( $args = array() ) {
|
106 |
+
$args = shortcode_atts( array(), $args );
|
107 |
+
// for WC 3.6.0.
|
108 |
+
unset( $args['template'] );
|
109 |
+
|
110 |
+
ob_start();
|
111 |
+
$wc_get_template = function_exists( 'wc_get_template' ) ? 'wc_get_template' : 'woocommerce_get_template';
|
112 |
+
$wc_get_template( 'yith-woocommerce-ajax-search.php', $args, '', YITH_WCAS_DIR . 'templates/' );
|
113 |
+
return ob_get_clean();
|
114 |
+
}
|
115 |
+
|
116 |
+
/**
|
117 |
+
* Load and register widgets
|
118 |
+
*
|
119 |
+
* @access public
|
120 |
+
* @since 1.0.0
|
121 |
+
*/
|
122 |
+
public function registerWidgets() { // phpcs:ignore
|
123 |
+
register_widget( 'YITH_WCAS_Ajax_Search_Widget' );
|
124 |
+
}
|
125 |
+
|
126 |
+
|
127 |
+
/**
|
128 |
+
* Perform ajax search products
|
129 |
+
*/
|
130 |
+
public function ajax_search_products() {
|
131 |
+
global $woocommerce;
|
132 |
+
$time_start = getmicrotime();
|
133 |
+
$transient_enabled = get_option( 'yith_wcas_enable_transient', 'no' );
|
134 |
+
$transient_duration = get_option( 'yith_wcas_transient_duration', 12 );
|
135 |
+
|
136 |
+
$search_keyword = sanitize_text_field( wp_unslash( $_REQUEST['query'] ) ); //phpcs:ignore
|
137 |
+
|
138 |
+
$ordering_args = $woocommerce->query->get_catalog_ordering_args( 'title', 'asc' );
|
139 |
+
$suggestions = array();
|
140 |
+
|
141 |
+
$transient_name = 'ywcas_' . $search_keyword;
|
142 |
+
$suggestions = get_transient( $transient_name );
|
143 |
+
if ( 'no' === $transient_enabled || false === $suggestions ) {
|
144 |
+
$args = array(
|
145 |
+
's' => apply_filters( 'yith_wcas_ajax_search_products_search_query', $search_keyword ),
|
146 |
+
'post_type' => 'product',
|
147 |
+
'post_status' => 'publish',
|
148 |
+
'ignore_sticky_posts' => 1,
|
149 |
+
'orderby' => $ordering_args['orderby'],
|
150 |
+
'order' => $ordering_args['order'],
|
151 |
+
'posts_per_page' => apply_filters( 'yith_wcas_ajax_search_products_posts_per_page', get_option( 'yith_wcas_posts_per_page' ) ),
|
152 |
+
'suppress_filters' => false,
|
153 |
+
);
|
154 |
+
|
155 |
+
if ( isset( $_REQUEST['product_cat'] ) ) { //phpcs:ignore
|
156 |
+
$args['tax_query'] = array( //phpcs:ignore
|
157 |
+
'relation' => 'AND',
|
158 |
+
array(
|
159 |
+
'taxonomy' => 'product_cat',
|
160 |
+
'field' => 'slug',
|
161 |
+
'terms' => sanitize_text_field( wp_unslash( $_REQUEST['product_cat'] ) ), //phpcs:ignore
|
162 |
+
),
|
163 |
+
);
|
164 |
+
}
|
165 |
+
|
166 |
+
if ( version_compare( WC()->version, '2.7.0', '<' ) ) {
|
167 |
+
$args['meta_query'] = array( //phpcs:ignore
|
168 |
+
array(
|
169 |
+
'key' => '_visibility',
|
170 |
+
'value' => array( 'search', 'visible' ),
|
171 |
+
'compare' => 'IN',
|
172 |
+
),
|
173 |
+
);
|
174 |
+
} else {
|
175 |
+
$product_visibility_term_ids = wc_get_product_visibility_term_ids();
|
176 |
+
$args['tax_query'][] = array(
|
177 |
+
'taxonomy' => 'product_visibility',
|
178 |
+
'field' => 'term_taxonomy_id',
|
179 |
+
'terms' => $product_visibility_term_ids['exclude-from-search'],
|
180 |
+
'operator' => 'NOT IN',
|
181 |
+
);
|
182 |
+
}
|
183 |
+
|
184 |
+
$products = get_posts( $args );
|
185 |
+
|
186 |
+
if ( ! empty( $products ) ) {
|
187 |
+
foreach ( $products as $post ) {
|
188 |
+
$product = wc_get_product( $post );
|
189 |
+
|
190 |
+
$suggestions[] = apply_filters(
|
191 |
+
'yith_wcas_suggestion',
|
192 |
+
array(
|
193 |
+
'id' => $product->get_id(),
|
194 |
+
'value' => wp_strip_all_tags( $product->get_title() ),
|
195 |
+
'url' => $product->get_permalink(),
|
196 |
+
),
|
197 |
+
$product
|
198 |
+
);
|
199 |
+
}
|
200 |
+
} else {
|
201 |
+
$suggestions[] = array(
|
202 |
+
'id' => - 1,
|
203 |
+
'value' => __( 'No results', 'yith-woocommerce-ajax-search' ),
|
204 |
+
'url' => '',
|
205 |
+
);
|
206 |
+
}
|
207 |
+
wp_reset_postdata();
|
208 |
+
|
209 |
+
if ( 'yes' === $transient_enabled ) {
|
210 |
+
set_transient( $transient_name, $suggestions, $transient_duration * HOUR_IN_SECONDS );
|
211 |
+
}
|
212 |
+
}
|
213 |
+
|
214 |
+
$time_end = getmicrotime();
|
215 |
+
$time = $time_end - $time_start;
|
216 |
+
$suggestions = array(
|
217 |
+
'suggestions' => $suggestions,
|
218 |
+
'time' => $time,
|
219 |
+
);
|
220 |
+
echo wp_json_encode( $suggestions );
|
221 |
+
die();
|
222 |
+
|
223 |
+
}
|
224 |
+
|
225 |
+
|
226 |
+
}
|
227 |
+
}
|
includes/compatibility/elementor/class.yith-wcas-elementor.php
CHANGED
@@ -1,85 +1,85 @@
|
|
1 |
-
<?php //phpcs:ignore WordPress.Files.FileName.InvalidClassFileName
|
2 |
-
/**
|
3 |
-
* This file belongs to the YIT Plugin Framework.
|
4 |
-
*
|
5 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
-
* that is bundled with this package in the file LICENSE.txt.
|
7 |
-
* It is also available through the world-wide-web at this URL:
|
8 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
-
*
|
10 |
-
* @package YITH WooCommerce Ajax Search Premium
|
11 |
-
*/
|
12 |
-
|
13 |
-
if ( ! defined( 'ABSPATH' ) || ! defined( 'YITH_WCAS_VERSION' ) ) {
|
14 |
-
exit; // Exit if accessed directly.
|
15 |
-
}
|
16 |
-
|
17 |
-
/**
|
18 |
-
* Implements the YITH_WCAS_Elementor class.
|
19 |
-
*
|
20 |
-
* @class YITH_WCAS_Elementor
|
21 |
-
* @package YITH
|
22 |
-
* @since 1.3.6
|
23 |
-
* @author YITH
|
24 |
-
*/
|
25 |
-
if ( ! class_exists( 'YITH_WCAS_Elementor' ) ) {
|
26 |
-
|
27 |
-
/**
|
28 |
-
* Class YITH_WCAS_Elementor
|
29 |
-
*/
|
30 |
-
class YITH_WCAS_Elementor {
|
31 |
-
/**
|
32 |
-
* Single instance of the class
|
33 |
-
*
|
34 |
-
* @var YITH_WCAS_Elementor
|
35 |
-
*/
|
36 |
-
|
37 |
-
protected static $instance;
|
38 |
-
|
39 |
-
/**
|
40 |
-
* Returns single instance of the class
|
41 |
-
*
|
42 |
-
* @return YITH_WCAS_Elementor
|
43 |
-
*/
|
44 |
-
public static function get_instance() {
|
45 |
-
if ( is_null( self::$instance ) ) {
|
46 |
-
self::$instance = new self();
|
47 |
-
}
|
48 |
-
return self::$instance;
|
49 |
-
}
|
50 |
-
|
51 |
-
/**
|
52 |
-
* YITH_WCAS_Elementor constructor.
|
53 |
-
*/
|
54 |
-
public function __construct() {
|
55 |
-
if ( did_action( 'elementor/loaded' ) ) {
|
56 |
-
add_action( 'elementor/widgets/widgets_registered', array( $this, 'elementor_init_widgets' ) );
|
57 |
-
}
|
58 |
-
}
|
59 |
-
|
60 |
-
/**
|
61 |
-
* Init widget
|
62 |
-
*
|
63 |
-
* @throws Exception To return Error.
|
64 |
-
*/
|
65 |
-
public function elementor_init_widgets() {
|
66 |
-
// Include Widget files.
|
67 |
-
require_once YITH_WCAS_DIR . 'includes/compatibility/elementor/class.yith-wcas-search-form-elementor.php';
|
68 |
-
|
69 |
-
// Register widget.
|
70 |
-
\Elementor\Plugin::instance()->widgets_manager->register_widget_type( new \YITH_WCAS_Search_Form_Elementor_Widget() );
|
71 |
-
}
|
72 |
-
}
|
73 |
-
|
74 |
-
}
|
75 |
-
|
76 |
-
/**
|
77 |
-
* Unique access to instance of YITH_WCAS_Elementor class
|
78 |
-
*
|
79 |
-
* @return YITH_WCAS_Elementor
|
80 |
-
*/
|
81 |
-
function YITH_WCAS_Elementor() { //phpcs:ignore
|
82 |
-
return YITH_WCAS_Elementor::get_instance();
|
83 |
-
}
|
84 |
-
|
85 |
-
YITH_WCAS_Elementor();
|
1 |
+
<?php //phpcs:ignore WordPress.Files.FileName.InvalidClassFileName
|
2 |
+
/**
|
3 |
+
* This file belongs to the YIT Plugin Framework.
|
4 |
+
*
|
5 |
+
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
+
* that is bundled with this package in the file LICENSE.txt.
|
7 |
+
* It is also available through the world-wide-web at this URL:
|
8 |
+
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
+
*
|
10 |
+
* @package YITH WooCommerce Ajax Search Premium
|
11 |
+
*/
|
12 |
+
|
13 |
+
if ( ! defined( 'ABSPATH' ) || ! defined( 'YITH_WCAS_VERSION' ) ) {
|
14 |
+
exit; // Exit if accessed directly.
|
15 |
+
}
|
16 |
+
|
17 |
+
/**
|
18 |
+
* Implements the YITH_WCAS_Elementor class.
|
19 |
+
*
|
20 |
+
* @class YITH_WCAS_Elementor
|
21 |
+
* @package YITH
|
22 |
+
* @since 1.3.6
|
23 |
+
* @author YITH
|
24 |
+
*/
|
25 |
+
if ( ! class_exists( 'YITH_WCAS_Elementor' ) ) {
|
26 |
+
|
27 |
+
/**
|
28 |
+
* Class YITH_WCAS_Elementor
|
29 |
+
*/
|
30 |
+
class YITH_WCAS_Elementor {
|
31 |
+
/**
|
32 |
+
* Single instance of the class
|
33 |
+
*
|
34 |
+
* @var YITH_WCAS_Elementor
|
35 |
+
*/
|
36 |
+
|
37 |
+
protected static $instance;
|
38 |
+
|
39 |
+
/**
|
40 |
+
* Returns single instance of the class
|
41 |
+
*
|
42 |
+
* @return YITH_WCAS_Elementor
|
43 |
+
*/
|
44 |
+
public static function get_instance() {
|
45 |
+
if ( is_null( self::$instance ) ) {
|
46 |
+
self::$instance = new self();
|
47 |
+
}
|
48 |
+
return self::$instance;
|
49 |
+
}
|
50 |
+
|
51 |
+
/**
|
52 |
+
* YITH_WCAS_Elementor constructor.
|
53 |
+
*/
|
54 |
+
public function __construct() {
|
55 |
+
if ( did_action( 'elementor/loaded' ) ) {
|
56 |
+
add_action( 'elementor/widgets/widgets_registered', array( $this, 'elementor_init_widgets' ) );
|
57 |
+
}
|
58 |
+
}
|
59 |
+
|
60 |
+
/**
|
61 |
+
* Init widget
|
62 |
+
*
|
63 |
+
* @throws Exception To return Error.
|
64 |
+
*/
|
65 |
+
public function elementor_init_widgets() {
|
66 |
+
// Include Widget files.
|
67 |
+
require_once YITH_WCAS_DIR . 'includes/compatibility/elementor/class.yith-wcas-search-form-elementor.php';
|
68 |
+
|
69 |
+
// Register widget.
|
70 |
+
\Elementor\Plugin::instance()->widgets_manager->register_widget_type( new \YITH_WCAS_Search_Form_Elementor_Widget() );
|
71 |
+
}
|
72 |
+
}
|
73 |
+
|
74 |
+
}
|
75 |
+
|
76 |
+
/**
|
77 |
+
* Unique access to instance of YITH_WCAS_Elementor class
|
78 |
+
*
|
79 |
+
* @return YITH_WCAS_Elementor
|
80 |
+
*/
|
81 |
+
function YITH_WCAS_Elementor() { //phpcs:ignore
|
82 |
+
return YITH_WCAS_Elementor::get_instance();
|
83 |
+
}
|
84 |
+
|
85 |
+
YITH_WCAS_Elementor();
|
includes/compatibility/elementor/class.yith-wcas-search-form-elementor.php
CHANGED
@@ -1,113 +1,113 @@
|
|
1 |
-
<?php //phpcs:ignore WordPress.Files.FileName.InvalidClassFileName
|
2 |
-
/**
|
3 |
-
* This file belongs to the YIT Plugin Framework.
|
4 |
-
*
|
5 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
-
* that is bundled with this package in the file LICENSE.txt.
|
7 |
-
* It is also available through the world-wide-web at this URL:
|
8 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
-
*
|
10 |
-
* @package YITH WooCommerce Ajax Search Premium
|
11 |
-
*/
|
12 |
-
|
13 |
-
if ( ! defined( 'ABSPATH' ) || ! defined( 'YITH_WCAS_VERSION' ) ) {
|
14 |
-
exit; // Exit if accessed directly.
|
15 |
-
}
|
16 |
-
|
17 |
-
use Elementor\Controls_Manager;
|
18 |
-
|
19 |
-
/**
|
20 |
-
* Class YITH_WCAS_Search_Form_Elementor_Widget
|
21 |
-
*/
|
22 |
-
class YITH_WCAS_Search_Form_Elementor_Widget extends \Elementor\Widget_Base {
|
23 |
-
|
24 |
-
|
25 |
-
/**
|
26 |
-
* Return the name of widget.
|
27 |
-
*
|
28 |
-
* @return string
|
29 |
-
*/
|
30 |
-
public function get_name() {
|
31 |
-
return 'yith-wcas-search-form';
|
32 |
-
}
|
33 |
-
|
34 |
-
/**
|
35 |
-
* Return the title.
|
36 |
-
*
|
37 |
-
* @return string|void
|
38 |
-
*/
|
39 |
-
public function get_title() {
|
40 |
-
return __( 'YITH WooCommerce Ajax Search', 'yith-woocommerce-ajax-search' );
|
41 |
-
}
|
42 |
-
|
43 |
-
/**
|
44 |
-
* Return the icon.
|
45 |
-
*
|
46 |
-
* @return string
|
47 |
-
*/
|
48 |
-
public function get_icon() {
|
49 |
-
return 'eicon-search';
|
50 |
-
}
|
51 |
-
|
52 |
-
/**
|
53 |
-
* Return the categories.
|
54 |
-
*
|
55 |
-
* @return array
|
56 |
-
*/
|
57 |
-
public function get_categories() {
|
58 |
-
return array( 'yith', 'general' );
|
59 |
-
}
|
60 |
-
|
61 |
-
/**
|
62 |
-
* Return the keywords.
|
63 |
-
*
|
64 |
-
* @return array
|
65 |
-
*/
|
66 |
-
public function get_keywords() {
|
67 |
-
return array( 'woocommerce', 'shop', 'store', 'search', 'ajax', 'yith' );
|
68 |
-
}
|
69 |
-
|
70 |
-
/**
|
71 |
-
* Register controls
|
72 |
-
*/
|
73 |
-
protected function _register_controls() { //phpcs:ignore
|
74 |
-
$this->start_controls_section(
|
75 |
-
'section_button',
|
76 |
-
array(
|
77 |
-
'label' => __( 'YITH WooCommerce Ajax Search', 'yith-woocommerce-ajax-search' ),
|
78 |
-
)
|
79 |
-
);
|
80 |
-
|
81 |
-
$this->add_control(
|
82 |
-
'wc_style_warning',
|
83 |
-
array(
|
84 |
-
'type' => Controls_Manager::RAW_HTML,
|
85 |
-
'raw' => sprintf(
|
86 |
-
'%s [<a href="%s">%s</a>].',
|
87 |
-
__( 'This widget inherits the style from the settings of YITH WooCommerce Ajax Search plugin that you can edit', 'yith-woocommerce-ajax-search' ),
|
88 |
-
get_admin_url( null, 'admin.php?page=yith_wcas_panel&tab=output' ),
|
89 |
-
__( 'here', 'yith-woocommerce-ajax-search' )
|
90 |
-
),
|
91 |
-
'content_classes' => 'elementor-panel-alert elementor-panel-alert-info',
|
92 |
-
)
|
93 |
-
);
|
94 |
-
|
95 |
-
$this->end_controls_section();
|
96 |
-
|
97 |
-
}
|
98 |
-
|
99 |
-
/**
|
100 |
-
* Render the form
|
101 |
-
*/
|
102 |
-
protected function render() {
|
103 |
-
|
104 |
-
$settings = $this->get_settings_for_display();
|
105 |
-
|
106 |
-
$shortcode = do_shortcode( '[yith_woocommerce_ajax_search]' );
|
107 |
-
?>
|
108 |
-
<div class="elementor-shortcode"><?php echo $shortcode; //phpcs:ignore ?></div>
|
109 |
-
<?php
|
110 |
-
|
111 |
-
}
|
112 |
-
|
113 |
-
}
|
1 |
+
<?php //phpcs:ignore WordPress.Files.FileName.InvalidClassFileName
|
2 |
+
/**
|
3 |
+
* This file belongs to the YIT Plugin Framework.
|
4 |
+
*
|
5 |
+
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
6 |
+
* that is bundled with this package in the file LICENSE.txt.
|
7 |
+
* It is also available through the world-wide-web at this URL:
|
8 |
+
* http://www.gnu.org/licenses/gpl-3.0.txt
|
9 |
+
*
|
10 |
+
* @package YITH WooCommerce Ajax Search Premium
|
11 |
+
*/
|
12 |
+
|
13 |
+
if ( ! defined( 'ABSPATH' ) || ! defined( 'YITH_WCAS_VERSION' ) ) {
|
14 |
+
exit; // Exit if accessed directly.
|
15 |
+
}
|
16 |
+
|
17 |
+
use Elementor\Controls_Manager;
|
18 |
+
|
19 |
+
/**
|
20 |
+
* Class YITH_WCAS_Search_Form_Elementor_Widget
|
21 |
+
*/
|
22 |
+
class YITH_WCAS_Search_Form_Elementor_Widget extends \Elementor\Widget_Base {
|
23 |
+
|
24 |
+
|
25 |
+
/**
|
26 |
+
* Return the name of widget.
|
27 |
+
*
|
28 |
+
* @return string
|
29 |
+
*/
|
30 |
+
public function get_name() {
|
31 |
+
return 'yith-wcas-search-form';
|
32 |
+
}
|
33 |
+
|
34 |
+
/**
|
35 |
+
* Return the title.
|
36 |
+
*
|
37 |
+
* @return string|void
|
38 |
+
*/
|
39 |
+
public function get_title() {
|
40 |
+
return __( 'YITH WooCommerce Ajax Search', 'yith-woocommerce-ajax-search' );
|
41 |
+
}
|
42 |
+
|
43 |
+
/**
|
44 |
+
* Return the icon.
|
45 |
+
*
|
46 |
+
* @return string
|
47 |
+
*/
|
48 |
+
public function get_icon() {
|
49 |
+
return 'eicon-search';
|
50 |
+
}
|
51 |
+
|
52 |
+
/**
|
53 |
+
* Return the categories.
|
54 |
+
*
|
55 |
+
* @return array
|
56 |
+
*/
|
57 |
+
public function get_categories() {
|
58 |
+
return array( 'yith', 'general' );
|
59 |
+
}
|
60 |
+
|
61 |
+
/**
|
62 |
+
* Return the keywords.
|
63 |
+
*
|
64 |
+
* @return array
|
65 |
+
*/
|
66 |
+
public function get_keywords() {
|
67 |
+
return array( 'woocommerce', 'shop', 'store', 'search', 'ajax', 'yith' );
|
68 |
+
}
|
69 |
+
|
70 |
+
/**
|
71 |
+
* Register controls
|
72 |
+
*/
|
73 |
+
protected function _register_controls() { //phpcs:ignore
|
74 |
+
$this->start_controls_section(
|
75 |
+
'section_button',
|
76 |
+
array(
|
77 |
+
'label' => __( 'YITH WooCommerce Ajax Search', 'yith-woocommerce-ajax-search' ),
|
78 |
+
)
|
79 |
+
);
|
80 |
+
|
81 |
+
$this->add_control(
|
82 |
+
'wc_style_warning',
|
83 |
+
array(
|
84 |
+
'type' => Controls_Manager::RAW_HTML,
|
85 |
+
'raw' => sprintf(
|
86 |
+
'%s [<a href="%s">%s</a>].',
|
87 |
+
__( 'This widget inherits the style from the settings of YITH WooCommerce Ajax Search plugin that you can edit', 'yith-woocommerce-ajax-search' ),
|
88 |
+
get_admin_url( null, 'admin.php?page=yith_wcas_panel&tab=output' ),
|
89 |
+
__( 'here', 'yith-woocommerce-ajax-search' )
|
90 |
+
),
|
91 |
+
'content_classes' => 'elementor-panel-alert elementor-panel-alert-info',
|
92 |
+
)
|
93 |
+
);
|
94 |
+
|
95 |
+
$this->end_controls_section();
|
96 |
+
|
97 |
+
}
|
98 |
+
|
99 |
+
/**
|
100 |
+
* Render the form
|
101 |
+
*/
|
102 |
+
protected function render() {
|
103 |
+
|
104 |
+
$settings = $this->get_settings_for_display();
|
105 |
+
|
106 |
+
$shortcode = do_shortcode( '[yith_woocommerce_ajax_search]' );
|
107 |
+
?>
|
108 |
+
<div class="elementor-shortcode"><?php echo $shortcode; //phpcs:ignore ?></div>
|
109 |
+
<?php
|
110 |
+
|
111 |
+
}
|
112 |
+
|
113 |
+
}
|
includes/functions.yith-wcas.php
CHANGED
@@ -1,23 +1,23 @@
|
|
1 |
-
<?php
|
2 |
-
/**
|
3 |
-
* Functions
|
4 |
-
*
|
5 |
-
* @author YITH
|
6 |
-
* @package YITH WooCommerce Ajax Search
|
7 |
-
* @version 1.1.1
|
8 |
-
*/
|
9 |
-
|
10 |
-
if ( ! defined( 'YITH_WCAS' ) ) {
|
11 |
-
exit;
|
12 |
-
} // Exit if accessed directly
|
13 |
-
|
14 |
-
/**
|
15 |
-
* Get microtime.
|
16 |
-
*
|
17 |
-
* @return float
|
18 |
-
*/
|
19 |
-
function getmicrotime() {
|
20 |
-
list( $usec, $sec ) = explode( ' ', microtime() );
|
21 |
-
|
22 |
-
return ( (float) $usec + (float) $sec );
|
23 |
-
}
|
1 |
+
<?php
|
2 |
+
/**
|
3 |
+
* Functions
|
4 |
+
*
|
5 |
+
* @author YITH
|
6 |
+
* @package YITH WooCommerce Ajax Search
|
7 |
+
* @version 1.1.1
|
8 |
+
*/
|
9 |
+
|
10 |
+
if ( ! defined( 'YITH_WCAS' ) ) {
|
11 |
+
exit;
|
12 |
+
} // Exit if accessed directly
|
13 |
+
|
14 |
+
/**
|
15 |
+
* Get microtime.
|
16 |
+
*
|
17 |
+
* @return float
|
18 |
+
*/
|
19 |
+
function getmicrotime() {
|
20 |
+
list( $usec, $sec ) = explode( ' ', microtime() );
|
21 |
+
|
22 |
+
return ( (float) $usec + (float) $sec );
|
23 |
+
}
|
includes/widgets/class.yith-wcas-ajax-search.php
CHANGED
@@ -1,99 +1,99 @@
|
|
1 |
-
<?php //phpcs:ignore WordPress.Files.FileName.InvalidClassFileName
|
2 |
-
/**
|
3 |
-
* Ajax Search Widget
|
4 |
-
*
|
5 |
-
* @author YITH
|
6 |
-
* @package YITH WooCommerce Ajax Search
|
7 |
-
* @version 1.1.1
|
8 |
-
*/
|
9 |
-
|
10 |
-
if ( ! defined( 'YITH_WCAS' ) ) {
|
11 |
-
exit; } // Exit if accessed directly
|
12 |
-
|
13 |
-
if ( ! class_exists( 'YITH_WCAS_Ajax_Search_Widget' ) ) {
|
14 |
-
/**
|
15 |
-
* YITH WooCommerce Ajax Navigation Widget
|
16 |
-
*
|
17 |
-
* @since 1.0.0
|
18 |
-
*/
|
19 |
-
class YITH_WCAS_Ajax_Search_Widget extends WP_Widget {
|
20 |
-
/**
|
21 |
-
* Constructor.
|
22 |
-
*
|
23 |
-
* @access public
|
24 |
-
*/
|
25 |
-
public function __construct() {
|
26 |
-
|
27 |
-
/* Widget variable settings. */
|
28 |
-
$this->woo_widget_cssclass = 'woocommerce widget_product_search yith_woocommerce_ajax_search';
|
29 |
-
$this->woo_widget_description = __( 'An Ajax Search box for products only.', 'yith-woocommerce-ajax-search' );
|
30 |
-
$this->woo_widget_idbase = 'yith_woocommerce_ajax_search';
|
31 |
-
$this->woo_widget_name = __( 'YITH WooCommerce Ajax Product Search', 'yith-woocommerce-ajax-search' );
|
32 |
-
|
33 |
-
/* Widget settings. */
|
34 |
-
$widget_ops = array(
|
35 |
-
'classname' => $this->woo_widget_cssclass,
|
36 |
-
'description' => $this->woo_widget_description,
|
37 |
-
);
|
38 |
-
|
39 |
-
/* Create the widget. */
|
40 |
-
parent::__construct( 'yith_woocommerce_ajax_search', $this->woo_widget_name, $widget_ops );
|
41 |
-
}
|
42 |
-
|
43 |
-
|
44 |
-
/**
|
45 |
-
* Widget function.
|
46 |
-
*
|
47 |
-
* @see WP_Widget
|
48 |
-
* @access public
|
49 |
-
* @param array $args Array of arguments.
|
50 |
-
* @param array $instance Array of instance.
|
51 |
-
* @return void
|
52 |
-
*/
|
53 |
-
public function widget( $args, $instance ) {
|
54 |
-
|
55 |
-
$title = isset( $instance['title'] ) ? $instance['title'] : '';
|
56 |
-
$title = apply_filters( 'widget_title', $title, $instance, $this->id_base );
|
57 |
-
|
58 |
-
echo $args['before_widget']; // phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped
|
59 |
-
|
60 |
-
if ( $title ) {
|
61 |
-
echo $args['before_title'] . $title . $args['after_title']; // phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped
|
62 |
-
}
|
63 |
-
|
64 |
-
echo do_shortcode( '[yith_woocommerce_ajax_search]' );
|
65 |
-
|
66 |
-
echo $args['after_widget']; // phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped
|
67 |
-
}
|
68 |
-
|
69 |
-
/**
|
70 |
-
* Update function.
|
71 |
-
*
|
72 |
-
* @see WP_Widget->update
|
73 |
-
* @access public
|
74 |
-
* @param array $new_instance New instance.
|
75 |
-
* @param array $old_instance Old instance.
|
76 |
-
* @return array
|
77 |
-
*/
|
78 |
-
public function update( $new_instance, $old_instance ) {
|
79 |
-
$instance['title'] = isset( $new_instance ) ? wp_strip_all_tags( stripslashes( $new_instance['title'] ) ) : '';
|
80 |
-
return $instance;
|
81 |
-
}
|
82 |
-
|
83 |
-
/**
|
84 |
-
* Form function.
|
85 |
-
*
|
86 |
-
* @see WP_Widget->form
|
87 |
-
* @access public
|
88 |
-
* @param array $instance Instance.
|
89 |
-
* @return void
|
90 |
-
*/
|
91 |
-
public function form( $instance ) {
|
92 |
-
global $wpdb;
|
93 |
-
?>
|
94 |
-
<p><label for="<?php echo esc_attr( $this->get_field_id( 'title' ) ); ?>"><?php esc_html_e( 'Title:', 'woocommerce' ); ?></label>
|
95 |
-
<input type="text" class="widefat" id="<?php echo esc_attr( $this->get_field_id( 'title' ) ); ?>" name="<?php echo esc_attr( $this->get_field_name( 'title' ) ); ?>" value="<?php echo isset( $instance['title'] ) ? esc_attr( $instance['title'] ) : ''; ?>" /></p>
|
96 |
-
<?php
|
97 |
-
}
|
98 |
-
}
|
99 |
-
}
|
1 |
+
<?php //phpcs:ignore WordPress.Files.FileName.InvalidClassFileName
|
2 |
+
/**
|
3 |
+
* Ajax Search Widget
|
4 |
+
*
|
5 |
+
* @author YITH
|
6 |
+
* @package YITH WooCommerce Ajax Search
|
7 |
+
* @version 1.1.1
|
8 |
+
*/
|
9 |
+
|
10 |
+
if ( ! defined( 'YITH_WCAS' ) ) {
|
11 |
+
exit; } // Exit if accessed directly
|
12 |
+
|
13 |
+
if ( ! class_exists( 'YITH_WCAS_Ajax_Search_Widget' ) ) {
|
14 |
+
/**
|
15 |
+
* YITH WooCommerce Ajax Navigation Widget
|
16 |
+
*
|
17 |
+
* @since 1.0.0
|
18 |
+
*/
|
19 |
+
class YITH_WCAS_Ajax_Search_Widget extends WP_Widget {
|
20 |
+
/**
|
21 |
+
* Constructor.
|
22 |
+
*
|
23 |
+
* @access public
|
24 |
+
*/
|
25 |
+
public function __construct() {
|
26 |
+
|
27 |
+
/* Widget variable settings. */
|
28 |
+
$this->woo_widget_cssclass = 'woocommerce widget_product_search yith_woocommerce_ajax_search';
|
29 |
+
$this->woo_widget_description = __( 'An Ajax Search box for products only.', 'yith-woocommerce-ajax-search' );
|
30 |
+
$this->woo_widget_idbase = 'yith_woocommerce_ajax_search';
|
31 |
+
$this->woo_widget_name = __( 'YITH WooCommerce Ajax Product Search', 'yith-woocommerce-ajax-search' );
|
32 |
+
|
33 |
+
/* Widget settings. */
|
34 |
+
$widget_ops = array(
|
35 |
+
'classname' => $this->woo_widget_cssclass,
|
36 |
+
'description' => $this->woo_widget_description,
|
37 |
+
);
|
38 |
+
|
39 |
+
/* Create the widget. */
|
40 |
+
parent::__construct( 'yith_woocommerce_ajax_search', $this->woo_widget_name, $widget_ops );
|
41 |
+
}
|
42 |
+
|
43 |
+
|
44 |
+
/**
|
45 |
+
* Widget function.
|
46 |
+
*
|
47 |
+
* @see WP_Widget
|
48 |
+
* @access public
|
49 |
+
* @param array $args Array of arguments.
|
50 |
+
* @param array $instance Array of instance.
|
51 |
+
* @return void
|
52 |
+
*/
|
53 |
+
public function widget( $args, $instance ) {
|
54 |
+
|
55 |
+
$title = isset( $instance['title'] ) ? $instance['title'] : '';
|
56 |
+
$title = apply_filters( 'widget_title', $title, $instance, $this->id_base );
|
57 |
+
|
58 |
+
echo $args['before_widget']; // phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped
|
59 |
+
|
60 |
+
if ( $title ) {
|
61 |
+
echo $args['before_title'] . $title . $args['after_title']; // phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped
|
62 |
+
}
|
63 |
+
|
64 |
+
echo do_shortcode( '[yith_woocommerce_ajax_search]' );
|
65 |
+
|
66 |
+
echo $args['after_widget']; // phpcs:ignore WordPress.XSS.EscapeOutput.OutputNotEscaped
|
67 |
+
}
|
68 |
+
|
69 |
+
/**
|
70 |
+
* Update function.
|
71 |
+
*
|
72 |
+
* @see WP_Widget->update
|
73 |
+
* @access public
|
74 |
+
* @param array $new_instance New instance.
|
75 |
+
* @param array $old_instance Old instance.
|
76 |
+
* @return array
|
77 |
+
*/
|
78 |
+
public function update( $new_instance, $old_instance ) {
|
79 |
+
$instance['title'] = isset( $new_instance ) ? wp_strip_all_tags( stripslashes( $new_instance['title'] ) ) : '';
|
80 |
+
return $instance;
|
81 |
+
}
|
82 |
+
|
83 |
+
/**
|
84 |
+
* Form function.
|
85 |
+
*
|
86 |
+
* @see WP_Widget->form
|
87 |
+
* @access public
|
88 |
+
* @param array $instance Instance.
|
89 |
+
* @return void
|
90 |
+
*/
|
91 |
+
public function form( $instance ) {
|
92 |
+
global $wpdb;
|
93 |
+
?>
|
94 |
+
<p><label for="<?php echo esc_attr( $this->get_field_id( 'title' ) ); ?>"><?php esc_html_e( 'Title:', 'woocommerce' ); ?></label>
|
95 |
+
<input type="text" class="widefat" id="<?php echo esc_attr( $this->get_field_id( 'title' ) ); ?>" name="<?php echo esc_attr( $this->get_field_name( 'title' ) ); ?>" value="<?php echo isset( $instance['title'] ) ? esc_attr( $instance['title'] ) : ''; ?>" /></p>
|
96 |
+
<?php
|
97 |
+
}
|
98 |
+
}
|
99 |
+
}
|
init.php
CHANGED
@@ -3,17 +3,17 @@
|
|
3 |
* Plugin Name: YITH WooCommerce Ajax Search
|
4 |
* Plugin URI: https://yithemes.com/themes/plugins/yith-woocommerce-ajax-search/
|
5 |
* Description: <code><strong>YITH WooCommerce Ajax Search</strong></code> is the plugin that allows you to search for a specific product by inserting a few characters. Thanks to <strong>Ajax Search</strong>, users can quickly find the contents they are interested in without wasting time among site pages. <a href="https://yithemes.com/" target="_blank">Get more plugins for your e-commerce shop on <strong>YITH</strong></a>.
|
6 |
-
* Version: 1.
|
7 |
* Author: YITH
|
8 |
* Author URI: https://yithemes.com/
|
9 |
* Text Domain: yith-woocommerce-ajax-search
|
10 |
* Domain Path: /languages/
|
11 |
* WC requires at least: 5.3
|
12 |
-
* WC tested up to:
|
13 |
*
|
14 |
* @author YITH
|
15 |
* @package YITH WooCommerce Ajax Search
|
16 |
-
* @version 1.
|
17 |
*/
|
18 |
|
19 |
/*
|
@@ -75,7 +75,7 @@ register_activation_hook( __FILE__, 'yith_plugin_registration_hook' );
|
|
75 |
if ( defined( 'YITH_WCAS_VERSION' ) ) {
|
76 |
return;
|
77 |
} else {
|
78 |
-
define( 'YITH_WCAS_VERSION', '1.
|
79 |
}
|
80 |
|
81 |
if ( ! defined( 'YITH_WCAS_FREE_INIT' ) ) {
|
3 |
* Plugin Name: YITH WooCommerce Ajax Search
|
4 |
* Plugin URI: https://yithemes.com/themes/plugins/yith-woocommerce-ajax-search/
|
5 |
* Description: <code><strong>YITH WooCommerce Ajax Search</strong></code> is the plugin that allows you to search for a specific product by inserting a few characters. Thanks to <strong>Ajax Search</strong>, users can quickly find the contents they are interested in without wasting time among site pages. <a href="https://yithemes.com/" target="_blank">Get more plugins for your e-commerce shop on <strong>YITH</strong></a>.
|
6 |
+
* Version: 1.13.0
|
7 |
* Author: YITH
|
8 |
* Author URI: https://yithemes.com/
|
9 |
* Text Domain: yith-woocommerce-ajax-search
|
10 |
* Domain Path: /languages/
|
11 |
* WC requires at least: 5.3
|
12 |
+
* WC tested up to: 6.0
|
13 |
*
|
14 |
* @author YITH
|
15 |
* @package YITH WooCommerce Ajax Search
|
16 |
+
* @version 1.13.0
|
17 |
*/
|
18 |
|
19 |
/*
|
75 |
if ( defined( 'YITH_WCAS_VERSION' ) ) {
|
76 |
return;
|
77 |
} else {
|
78 |
+
define( 'YITH_WCAS_VERSION', '1.13.0' );
|
79 |
}
|
80 |
|
81 |
if ( ! defined( 'YITH_WCAS_FREE_INIT' ) ) {
|
languages/yith-woocommerce-ajax-search-it_IT.po
CHANGED
@@ -1,666 +1,666 @@
|
|
1 |
-
msgid ""
|
2 |
-
msgstr ""
|
3 |
-
"Project-Id-Version: YITH WooCommerce Ajax Search Premium\n"
|
4 |
-
"Report-Msgid-Bugs-To: http://wordpress.org/tag/init\n"
|
5 |
-
"POT-Creation-Date: 2020-03-20 07:22:19+00:00\n"
|
6 |
-
"PO-Revision-Date: 2020-03-20 08:22+0100\n"
|
7 |
-
"Last-Translator: \n"
|
8 |
-
"Language-Team: Yithemes <plugins@yithemes.com>\n"
|
9 |
-
"Language: it_IT\n"
|
10 |
-
"MIME-Version: 1.0\n"
|
11 |
-
"Content-Type: text/plain; charset=UTF-8\n"
|
12 |
-
"Content-Transfer-Encoding: 8bit\n"
|
13 |
-
"X-Generator: Poedit 2.2.1\n"
|
14 |
-
"X-Poedit-KeywordsList: __;_e;_x\n"
|
15 |
-
"X-Poedit-Basepath: .\n"
|
16 |
-
"X-Poedit-SearchPath-0: ..\n"
|
17 |
-
"X-Poedit-SearchPathExcluded-0: ../plugin-fw\n"
|
18 |
-
|
19 |
-
#: class.yith-wcas-admin.php:123
|
20 |
-
msgid "Settings"
|
21 |
-
msgstr "Impostazioni"
|
22 |
-
|
23 |
-
#: class.yith-wcas-admin.php:124
|
24 |
-
msgid "Premium Version"
|
25 |
-
msgstr "Versione premium"
|
26 |
-
|
27 |
-
#. Plugin Name of the plugin/theme
|
28 |
-
#: class.yith-wcas-admin.php:131
|
29 |
-
#: compatibility/elementor/class.yith-wcas-search-form-elementor.php:40
|
30 |
-
#: compatibility/elementor/class.yith-wcas-search-form-elementor.php:77
|
31 |
-
msgid "YITH WooCommerce Ajax Search"
|
32 |
-
msgstr "YITH WooCommerce Ajax Search"
|
33 |
-
|
34 |
-
#: class.yith-wcas-admin.php:132
|
35 |
-
msgid "Ajax Search"
|
36 |
-
msgstr "Ajax Search"
|
37 |
-
|
38 |
-
#: class.yith-wcas.php:203
|
39 |
-
msgid "No results"
|
40 |
-
msgstr "Nessun risultato"
|
41 |
-
|
42 |
-
#: compatibility/elementor/class.yith-wcas-search-form-elementor.php:87
|
43 |
-
msgid ""
|
44 |
-
"This widget inherits the style from the settings of YITH WooCommerce Ajax "
|
45 |
-
"Search plugin that you can edit"
|
46 |
-
msgstr ""
|
47 |
-
|
48 |
-
#: compatibility/elementor/class.yith-wcas-search-form-elementor.php:89
|
49 |
-
msgid "here"
|
50 |
-
msgstr ""
|
51 |
-
|
52 |
-
#: init.php:52
|
53 |
-
msgid ""
|
54 |
-
"You can't activate the free version of YITH WooCommerce Ajax Search while "
|
55 |
-
"you are using the premium one."
|
56 |
-
msgstr ""
|
57 |
-
"Non puoi attivare la versione free di YITH WooCommerce Ajax Search se stai "
|
58 |
-
"già utilizzando la premium."
|
59 |
-
|
60 |
-
#: init.php:121
|
61 |
-
msgid ""
|
62 |
-
"YITH WooCommerce Ajax Search is enabled but not effective. It requires "
|
63 |
-
"WooCommerce in order to work."
|
64 |
-
msgstr ""
|
65 |
-
"YITH WooCommerce Ajax Search è abilitato ma non in funzione. Devi aver "
|
66 |
-
"installato WooCommerce per poter funzionare."
|
67 |
-
|
68 |
-
#: plugin-options/gutenberg/blocks.php:17
|
69 |
-
#, fuzzy
|
70 |
-
#| msgid "Ajax Search"
|
71 |
-
msgctxt "[gutenberg]: block name"
|
72 |
-
msgid "Ajax Search"
|
73 |
-
msgstr "Ajax Search"
|
74 |
-
|
75 |
-
#: plugin-options/gutenberg/blocks.php:18
|
76 |
-
#, fuzzy
|
77 |
-
#| msgid "Ajax Search"
|
78 |
-
msgctxt "[gutenberg]: block description"
|
79 |
-
msgid "Show Ajax Search Form"
|
80 |
-
msgstr "Ajax Search"
|
81 |
-
|
82 |
-
#: plugin-options/gutenberg/blocks.php:22
|
83 |
-
#, fuzzy
|
84 |
-
#| msgid "Ajax Search"
|
85 |
-
msgctxt "[gutenberg]: keywords"
|
86 |
-
msgid "Ajax Search"
|
87 |
-
msgstr "Ajax Search"
|
88 |
-
|
89 |
-
#: plugin-options/gutenberg/blocks.php:23
|
90 |
-
#, fuzzy
|
91 |
-
#| msgid "Search"
|
92 |
-
msgctxt "[gutenberg]: keywords"
|
93 |
-
msgid "Search"
|
94 |
-
msgstr "Cerca"
|
95 |
-
|
96 |
-
#: plugin-options/settings-options.php:21
|
97 |
-
msgid "General settings"
|
98 |
-
msgstr "Impostazioni generali"
|
99 |
-
|
100 |
-
#: plugin-options/settings-options.php:30
|
101 |
-
msgid "Search input label"
|
102 |
-
msgstr "Etichetta campo \"Cerca\""
|
103 |
-
|
104 |
-
#: plugin-options/settings-options.php:32
|
105 |
-
#: plugin-options/settings-options.php:40
|
106 |
-
msgid "Label for Search input field."
|
107 |
-
msgstr "Etichetta per il campo \"Cerca\""
|
108 |
-
|
109 |
-
#: plugin-options/settings-options.php:34
|
110 |
-
msgid "Search for products"
|
111 |
-
msgstr "Cerca prodotto"
|
112 |
-
|
113 |
-
#: plugin-options/settings-options.php:38
|
114 |
-
msgid "Search submit label"
|
115 |
-
msgstr "Etichetta campo \"Submit\""
|
116 |
-
|
117 |
-
#: plugin-options/settings-options.php:42
|
118 |
-
msgid "Search"
|
119 |
-
msgstr "Cerca"
|
120 |
-
|
121 |
-
#: plugin-options/settings-options.php:46
|
122 |
-
msgid "Minimum number of characters"
|
123 |
-
msgstr "Numero minimo di caratteri"
|
124 |
-
|
125 |
-
#: plugin-options/settings-options.php:47
|
126 |
-
msgid "Minimum number of characters required to trigger autosuggest."
|
127 |
-
msgstr ""
|
128 |
-
"Numero minimo di caratteri richiesti per mostrare i suggerimenti automatici."
|
129 |
-
|
130 |
-
#: plugin-options/settings-options.php:60
|
131 |
-
msgid "Maximum number of results"
|
132 |
-
msgstr "Numero massimo di risultati"
|
133 |
-
|
134 |
-
#: plugin-options/settings-options.php:61
|
135 |
-
msgid "Maximum number of results showed within the autosuggest box."
|
136 |
-
msgstr "Numero massimo di risultati da mostrare tra i suggerimenti automatici."
|
137 |
-
|
138 |
-
#: plugin-options/settings-options.php:74
|
139 |
-
msgid "Enable transients to cache autocomplete results"
|
140 |
-
msgstr "Attiva i transient per salvare nella cache i risulti autocompletati"
|
141 |
-
|
142 |
-
#: plugin-options/settings-options.php:75
|
143 |
-
msgid "Save the results of a query in a transient"
|
144 |
-
msgstr "Salva i risultati di una query in un transient"
|
145 |
-
|
146 |
-
#: plugin-options/settings-options.php:84
|
147 |
-
msgid "Set the duration of transient"
|
148 |
-
msgstr "Imposta la durata del transient "
|
149 |
-
|
150 |
-
#: plugin-options/settings-options.php:85
|
151 |
-
msgid "(hours)"
|
152 |
-
msgstr "(ore)"
|
153 |
-
|
154 |
-
#: templates/admin/premium.php:256 templates/admin/premium.php:304
|
155 |
-
msgid ""
|
156 |
-
"Upgrade to the %1$spremium version%2$s%3$s of %1$sYITH WooCommerce Ajax "
|
157 |
-
"Search%2$s to benefit from all features!"
|
158 |
-
msgstr ""
|
159 |
-
"Aggiorna alla %1$spremium versione%2$s %3$s di%1$sYITH WooCommerce Ajax "
|
160 |
-
"Search%2$s per usufruire di tutte le sue funzionalità!"
|
161 |
-
|
162 |
-
#: templates/admin/premium.php:258 templates/admin/premium.php:306
|
163 |
-
msgid "%1$sUPGRADE%2$s %3$sto the premium version%2$s"
|
164 |
-
msgstr "%1$sAGGIORNA%2$s %3$salla versione premium%2$s "
|
165 |
-
|
166 |
-
#: templates/admin/premium.php:264
|
167 |
-
msgid "Premium Features"
|
168 |
-
msgstr "Funzionalità premium"
|
169 |
-
|
170 |
-
#: templates/admin/premium.php:266
|
171 |
-
msgid "HOW TO CUSTOMIZE THE RESULTS OF THE AUTOCOMPLETE"
|
172 |
-
msgstr "Come personalizzare i risultati del riempimento automatico"
|
173 |
-
|
174 |
-
#: templates/admin/premium.php:268
|
175 |
-
msgid "RESULTS OF THE AUTOCOMPLETE"
|
176 |
-
msgstr "Risultati del completamento automatico"
|
177 |
-
|
178 |
-
#: templates/admin/premium.php:273
|
179 |
-
msgid "Show %1$sthe image%2$s of the product (left or right aligned)"
|
180 |
-
msgstr "Mostra %1$sl'immagine%2$s del prodotto (a destra o sinistra)"
|
181 |
-
|
182 |
-
#: templates/admin/premium.php:274
|
183 |
-
msgid "Enable the %1$sprice visualization%2$s"
|
184 |
-
msgstr "Abilita %1$svisualizzazione prezzo%2$s"
|
185 |
-
|
186 |
-
#: templates/admin/premium.php:275
|
187 |
-
msgid "Show the %1$sproduct description%2$s"
|
188 |
-
msgstr "Mostra %1$sdescrizione prodotto%2$s"
|
189 |
-
|
190 |
-
#: templates/admin/premium.php:276
|
191 |
-
msgid "Tell to the client if the product is %1$son discount or is featured%2$s"
|
192 |
-
msgstr "Informa l'utente se il prodotto è %1$sin saldo o in evidenza%2$s"
|
193 |
-
|
194 |
-
#: templates/admin/premium.php:284
|
195 |
-
msgid "HOW TO CUSTOMIZE THE SEARCH OPTIONS"
|
196 |
-
msgstr "Come personalizzare le opzioni di ricerca"
|
197 |
-
|
198 |
-
#: templates/admin/premium.php:288
|
199 |
-
msgid "%1$sExtend the research%2$s in the excerpt and in the content"
|
200 |
-
msgstr ""
|
201 |
-
"%1$sEstendi le funzionalità di ricerca%2$s anche all'interno del riassunto "
|
202 |
-
"prodotto e del contenuto"
|
203 |
-
|
204 |
-
#: templates/admin/premium.php:289
|
205 |
-
msgid "%1$sActivate%2$s the category search"
|
206 |
-
msgstr "%1$sAbilita%2$s la ricerca per categoria"
|
207 |
-
|
208 |
-
#: templates/admin/premium.php:290
|
209 |
-
msgid "Configure the %1$stag%2$s search"
|
210 |
-
msgstr "Configura la ricerca per %1$stag%2$s"
|
211 |
-
|
212 |
-
#: templates/admin/premium.php:291
|
213 |
-
msgid "Search a product with an %1$sID%2$s"
|
214 |
-
msgstr "Cerca un prodotto utilizzando il suo %1$sID%2$s"
|
215 |
-
|
216 |
-
#: templates/yith-woocommerce-ajax-search.php:19
|
217 |
-
msgid "Search for:"
|
218 |
-
msgstr "Cerca:"
|
219 |
-
|
220 |
-
#: widgets/class.yith-wcas-ajax-search.php:29
|
221 |
-
msgid "An Ajax Search box for products only."
|
222 |
-
msgstr "Un filtro di ricerca Ajax solo per i prodotti."
|
223 |
-
|
224 |
-
#: widgets/class.yith-wcas-ajax-search.php:31
|
225 |
-
msgid "YITH WooCommerce Ajax Product Search"
|
226 |
-
msgstr "YITH WooCommerce Ajax Product Search"
|
227 |
-
|
228 |
-
#: widgets/class.yith-wcas-ajax-search.php:94
|
229 |
-
msgid "Title:"
|
230 |
-
msgstr "Titolo:"
|
231 |
-
|
232 |
-
#. Plugin URI of the plugin/theme
|
233 |
-
msgid "https://yithemes.com/themes/plugins/yith-woocommerce-ajax-search/"
|
234 |
-
msgstr ""
|
235 |
-
|
236 |
-
#. Description of the plugin/theme
|
237 |
-
msgid ""
|
238 |
-
"<code><strong>YITH WooCommerce Ajax Search</strong></code> is the plugin "
|
239 |
-
"that allows you to search for a specific product by inserting a few "
|
240 |
-
"characters. Thanks to <strong>Ajax Search</strong>, users can quickly find "
|
241 |
-
"the contents they are interested in without wasting time among site pages. "
|
242 |
-
"<a href=\"https://yithemes.com/\" target=\"_blank\">Get more plugins for "
|
243 |
-
"your e-commerce shop on <strong>YITH</strong></a>."
|
244 |
-
msgstr ""
|
245 |
-
|
246 |
-
#. Author of the plugin/theme
|
247 |
-
msgid "YITH"
|
248 |
-
msgstr ""
|
249 |
-
|
250 |
-
#. Author URI of the plugin/theme
|
251 |
-
msgid "https://yithemes.com/"
|
252 |
-
msgstr ""
|
253 |
-
|
254 |
-
#~ msgid "YITH WooCommerce Ajax Search Updated"
|
255 |
-
#~ msgstr "YITH WooCommerce Ajax Search aggiornato"
|
256 |
-
|
257 |
-
#~ msgid "Upgrade to the PREMIUM VERSION"
|
258 |
-
#~ msgstr "Aggiorna alla VERSIONE PREMIUM"
|
259 |
-
|
260 |
-
#~ msgid "Discover the Advanced Features"
|
261 |
-
#~ msgstr "Scopri le funzionalità avanzate"
|
262 |
-
|
263 |
-
#, fuzzy
|
264 |
-
#~| msgid ""
|
265 |
-
#~| "Upgrade to the PREMIUM VERSION\n"
|
266 |
-
#~| "of YITH WOOCOMMERCE AJAX SEARCH to benefit from all features!"
|
267 |
-
#~ msgid ""
|
268 |
-
#~ "Upgrade to the PREMIUM VERSION\r\n"
|
269 |
-
#~ "of YITH WOOCOMMERCE AJAX SEARCH to benefit from all features!"
|
270 |
-
#~ msgstr ""
|
271 |
-
#~ "Passa alla VERSIONE PREMIUM\n"
|
272 |
-
#~ "di YITH WooCommerce Ajax Search per poter fruire di tutte le sue "
|
273 |
-
#~ "funzionalità!"
|
274 |
-
|
275 |
-
#~ msgid "Get Support and Pro Features"
|
276 |
-
#~ msgstr "Accedi al supporto e alle funzionalità premium"
|
277 |
-
|
278 |
-
#~ msgid ""
|
279 |
-
#~ "By purchasing the premium version of the plugin, you will take advantage "
|
280 |
-
#~ "of the advanced features of the product and you will get one year of free "
|
281 |
-
#~ "updates and support through our platform available 24h/24."
|
282 |
-
#~ msgstr ""
|
283 |
-
#~ "Acquistando la versione premium del plugin, potrai utilizzare le "
|
284 |
-
#~ "funzionalità avanzate del prodotto ed otterrai un anno di aggiornamenti "
|
285 |
-
#~ "gratuiti e di supporto sulla nostra piattaforma disponibile 24h su 24."
|
286 |
-
|
287 |
-
#~ msgid "SEARCH OPTIONS"
|
288 |
-
#~ msgstr "OPZIONI DI RICERCA"
|
289 |
-
|
290 |
-
#~ msgid "Plugin Documentation"
|
291 |
-
#~ msgstr "Documentazione plugin"
|
292 |
-
|
293 |
-
#~ msgid ""
|
294 |
-
#~ "In the YIT Plugin tab you can find the YITH WooCommerce Ajax Search "
|
295 |
-
#~ "options.\n"
|
296 |
-
#~ "With this menu, you can access to all the settings of our plugins that "
|
297 |
-
#~ "you have activated.\n"
|
298 |
-
#~ "YITH WooCommerce Ajax Search is available in an outstanding PREMIUM "
|
299 |
-
#~ "version with many new options, <a href=\""
|
300 |
-
#~ msgstr ""
|
301 |
-
#~ "Nella scheda del plugin puoi trovare tutte le opzioni di YITH WooCommerce "
|
302 |
-
#~ "Ajax Search.\n"
|
303 |
-
#~ "Da questo menu, avrai accesso a tutte le impostazioni dei nostri plugin "
|
304 |
-
#~ "attivati finora.\n"
|
305 |
-
#~ "YITH WooCommerce Ajax Search è disponibile in una eccezionale versione "
|
306 |
-
#~ "PREMIUM con molte nuove optioni, <a href=\""
|
307 |
-
|
308 |
-
#~ msgid ""
|
309 |
-
#~ "From now on, you can find all the options of YITH WooCommerce Ajax Search "
|
310 |
-
#~ "Updated under YIT Plugin -> Ajax Search instead of WooCommerce -> "
|
311 |
-
#~ "Settings -> Ajax Search, as in the previous version.\n"
|
312 |
-
#~ "When one of our plugins updates, a new voice will be added to this menu.\n"
|
313 |
-
#~ "YITH WooCommerce Ajax Search renovates with new available options, "
|
314 |
-
#~ "discover the <a href=\""
|
315 |
-
#~ msgstr ""
|
316 |
-
#~ "Da adesso, puoi trovare tutte le opzioni del nuovo YITH WooCommerce Ajax "
|
317 |
-
#~ "Search in YIT Plugin > Ajax Search invece che in WooCommerce > Settings > "
|
318 |
-
#~ "Ajax Search, come accadeva nelle precedenti versioni.\n"
|
319 |
-
#~ "Quando uno dei nostri plugin verrà aggiornato, una nuova voce sarà "
|
320 |
-
#~ "aggiunta a questo menu.\n"
|
321 |
-
#~ "YITH WooCommerce Ajax Search si è rinnovato con molte nuove opzioni "
|
322 |
-
#~ "disponibili, scopri <a href=\""
|
323 |
-
|
324 |
-
#~ msgid "Output"
|
325 |
-
#~ msgstr "Risultati di ricerca"
|
326 |
-
|
327 |
-
#~ msgid "sale"
|
328 |
-
#~ msgstr "in saldo"
|
329 |
-
|
330 |
-
#~ msgid "featured"
|
331 |
-
#~ msgstr "in evidenza"
|
332 |
-
|
333 |
-
#~ msgid "Search in product brands"
|
334 |
-
#~ msgstr "Cerca marche prodotti"
|
335 |
-
|
336 |
-
#~ msgid "Extend search in product brands"
|
337 |
-
#~ msgstr "Estendi la ricerca alle marche dei prodotti"
|
338 |
-
|
339 |
-
#~ msgid ""
|
340 |
-
#~ "YITH WooCommerce Ajax Search Premium is enabled but not effective. It "
|
341 |
-
#~ "requires WooCommerce in order to work."
|
342 |
-
#~ msgstr ""
|
343 |
-
#~ "YITH WooCommerce Ajax Search Premium è abilitato ma non in funzione. Devi "
|
344 |
-
#~ "aver installato WooCommerce per poterlo utilizzare."
|
345 |
-
|
346 |
-
#~ msgid "Output Options"
|
347 |
-
#~ msgstr "Impostazioni risultati di ricerca"
|
348 |
-
|
349 |
-
#~ msgid "Show thumbnail"
|
350 |
-
#~ msgstr "Mostra thumbnail"
|
351 |
-
|
352 |
-
#~ msgid "Choose if you want show thumbnail and position"
|
353 |
-
#~ msgstr "Scegli se mostrare la thumbnail e dove"
|
354 |
-
|
355 |
-
#~ msgid "Hide thumbnail"
|
356 |
-
#~ msgstr "Nascondi thumbnail"
|
357 |
-
|
358 |
-
#~ msgid "Show on the Left"
|
359 |
-
#~ msgstr "Mostra a sinistra"
|
360 |
-
|
361 |
-
#~ msgid "Show on the Right"
|
362 |
-
#~ msgstr "Mostra a destra"
|
363 |
-
|
364 |
-
#~ msgid "Size of thumbnails"
|
365 |
-
#~ msgstr "Dimensione thumbnail"
|
366 |
-
|
367 |
-
#~ msgid "Show price"
|
368 |
-
#~ msgstr "Mostra prezzo"
|
369 |
-
|
370 |
-
#~ msgid "Show price of product"
|
371 |
-
#~ msgstr "Mostra prezzo prodotto"
|
372 |
-
|
373 |
-
#~ msgid "Price Label"
|
374 |
-
#~ msgstr "Etichetta prezzo"
|
375 |
-
|
376 |
-
#~ msgid "Show a label before the price"
|
377 |
-
#~ msgstr "Mostra un'etichetta prima del prezzo"
|
378 |
-
|
379 |
-
#~ msgid "Price:"
|
380 |
-
#~ msgstr "Prezzo:"
|
381 |
-
|
382 |
-
#~ msgid "Loader"
|
383 |
-
#~ msgstr "Icona di caricamento"
|
384 |
-
|
385 |
-
#~ msgid "Loader gif"
|
386 |
-
#~ msgstr "GIF icona di caricamento"
|
387 |
-
|
388 |
-
#~ msgid "Sales and Features badges"
|
389 |
-
#~ msgstr "Simboli \"in saldo\" e \"in evidenza\""
|
390 |
-
|
391 |
-
#~ msgid "Show sale badge"
|
392 |
-
#~ msgstr "Mostra adesivo \"in saldo\""
|
393 |
-
|
394 |
-
#~ msgid "Show sale badge if the product is on sale"
|
395 |
-
#~ msgstr "Mostra adesivo \"in saldo\" per i prodotti in saldo"
|
396 |
-
|
397 |
-
#~ msgid "Sale badge background color"
|
398 |
-
#~ msgstr "Colore sfondo adesivo \"in saldo\""
|
399 |
-
|
400 |
-
#~ msgid "Sale badge color"
|
401 |
-
#~ msgstr "Colore adesivo \"in saldo\""
|
402 |
-
|
403 |
-
#~ msgid "Show featured badge"
|
404 |
-
#~ msgstr "Mostra adesivo \"in evidenza\""
|
405 |
-
|
406 |
-
#~ msgid "Featured badge background color"
|
407 |
-
#~ msgstr "Colore sfondo adesivo \"in evidenza\""
|
408 |
-
|
409 |
-
#~ msgid "Featured badge color"
|
410 |
-
#~ msgstr "Colore adesivo \"in evidenza\""
|
411 |
-
|
412 |
-
#~ msgid "Hide featured bagde if the product is on sale"
|
413 |
-
#~ msgstr "Nascondi adesivo \"in evidenza\" per i prodotti in saldo"
|
414 |
-
|
415 |
-
#~ msgid "Title & Excerpt"
|
416 |
-
#~ msgstr "Titolo & Riassunto"
|
417 |
-
|
418 |
-
#~ msgid "Title color"
|
419 |
-
#~ msgstr "Colore titolo"
|
420 |
-
|
421 |
-
#~ msgid "Show excerpt"
|
422 |
-
#~ msgstr "Mostra riassunto"
|
423 |
-
|
424 |
-
#~ msgid "Show excerpt of product"
|
425 |
-
#~ msgstr "Mostra riassunto prodotto"
|
426 |
-
|
427 |
-
#~ msgid "Number of words to show in excerpt"
|
428 |
-
#~ msgstr "Numero di parole da mostrare nel riassunto"
|
429 |
-
|
430 |
-
#~ msgid "\"View All\" Link"
|
431 |
-
#~ msgstr "Link \"Visualizza tutto\""
|
432 |
-
|
433 |
-
#~ msgid "Show \"view all\" link"
|
434 |
-
#~ msgstr "Mostra link \"Visualizza tutto\""
|
435 |
-
|
436 |
-
#~ msgid "Add a link to the bottom of results"
|
437 |
-
#~ msgstr "Aggiungi un link sotto tutti i risultati"
|
438 |
-
|
439 |
-
#~ msgid "Text of \"view all\" link"
|
440 |
-
#~ msgstr "Testo del link \"Visualizza tutto\""
|
441 |
-
|
442 |
-
#~ msgid "Add a link at the bottom of results"
|
443 |
-
#~ msgstr "Aggiungi un link sotto tutti i risultati"
|
444 |
-
|
445 |
-
#~ msgid "View all"
|
446 |
-
#~ msgstr "Visualizza tutto"
|
447 |
-
|
448 |
-
#~ msgid "Search settings"
|
449 |
-
#~ msgstr "Impostazioni di ricerca"
|
450 |
-
|
451 |
-
#~ msgid "Choose element types to search"
|
452 |
-
#~ msgstr "Scegli il tipo di elementi da cercare"
|
453 |
-
|
454 |
-
#~ msgid "Choose if you want to extend search also to posts and pages"
|
455 |
-
#~ msgstr "Scegli se estendere la ricerca anche ad articoli e pagine"
|
456 |
-
|
457 |
-
#~ msgid "All"
|
458 |
-
#~ msgstr "Tutti"
|
459 |
-
|
460 |
-
#~ msgid "Products"
|
461 |
-
#~ msgstr "Prodotti"
|
462 |
-
|
463 |
-
#~ msgid "Search in excerpt"
|
464 |
-
#~ msgstr "Cerca in riassunto"
|
465 |
-
|
466 |
-
#~ msgid "Extend search in the excerpt of the product"
|
467 |
-
#~ msgstr "Estendi ricerca anche al riassunto del prodotto"
|
468 |
-
|
469 |
-
#~ msgid "Search in content"
|
470 |
-
#~ msgstr "Cerca nel contenuto"
|
471 |
-
|
472 |
-
#~ msgid "Extend search in the content of the product"
|
473 |
-
#~ msgstr "Estendi ricerca anche al contenuto del prodotto"
|
474 |
-
|
475 |
-
#~ msgid "Search in product categories"
|
476 |
-
#~ msgstr "Cerca tra le categorie prodotto"
|
477 |
-
|
478 |
-
#~ msgid "Extend search in product categories"
|
479 |
-
#~ msgstr "Estendi ricerca alle categorie prodotto"
|
480 |
-
|
481 |
-
#~ msgid "Search in product tags"
|
482 |
-
#~ msgstr "Cerca fra i tag del prodotto"
|
483 |
-
|
484 |
-
#~ msgid "Extend search in product tags"
|
485 |
-
#~ msgstr "Estendi ricerca ai tag del prodotto"
|
486 |
-
|
487 |
-
#~ msgid "Multiple Word Search"
|
488 |
-
#~ msgstr "Ricerca per più parole"
|
489 |
-
|
490 |
-
#~ msgid "Show items containing all words typed"
|
491 |
-
#~ msgstr "Mostra articoli contenenti tutte le parole inserite"
|
492 |
-
|
493 |
-
#~ msgid "Show items containing al least one of the words typed"
|
494 |
-
#~ msgstr "Mostra articoli contenenti almeno una delle parole inserite"
|
495 |
-
|
496 |
-
#~ msgid "Search by Sku Settings"
|
497 |
-
#~ msgstr "Impostazioni per Cerca per SKU "
|
498 |
-
|
499 |
-
#~ msgid ""
|
500 |
-
#~ "Extend search functionality so that search includes also sku. Attention: "
|
501 |
-
#~ "this feature may slow down the search process on some servers."
|
502 |
-
#~ msgstr ""
|
503 |
-
#~ "Estendi la funzionalità di ricerca in modo tale che sia incluso anche lo "
|
504 |
-
#~ "SKU del prodotto. Attenzione: questa funzionalità potrebbe rallentare il "
|
505 |
-
#~ "processo di ricerca su alcuni server."
|
506 |
-
|
507 |
-
#~ msgid "Search by sku"
|
508 |
-
#~ msgstr "Cerca per SKU"
|
509 |
-
|
510 |
-
#~ msgid "Extend search functionality so that search includes also sku"
|
511 |
-
#~ msgstr ""
|
512 |
-
#~ "Estendi la funzionalità di ricerca in modo tale da includere anche lo SKU"
|
513 |
-
|
514 |
-
#~ msgid "Search by sku variable products"
|
515 |
-
#~ msgstr "Cerca tra prodotti con SKU variabile"
|
516 |
-
|
517 |
-
#~ msgid "Extend sku search including variable products."
|
518 |
-
#~ msgstr "Estendi ricerca SKU includendo prodotti variabili."
|
519 |
-
|
520 |
-
#~ msgid "Maximum number of results showed in autosuggest box."
|
521 |
-
#~ msgstr "Numero massimo di risultati da mostrare nel riquadro suggerimenti."
|
522 |
-
|
523 |
-
#~ msgid "Additional Features"
|
524 |
-
#~ msgstr "Funzionalità aggiuntive"
|
525 |
-
|
526 |
-
#~ msgid ""
|
527 |
-
#~ "If these options are not showed, your theme may not support these "
|
528 |
-
#~ "features. Please, contact the developer of theme to implement them."
|
529 |
-
#~ msgstr ""
|
530 |
-
#~ "Se non visualizzi queste opzioni, il tuo tema potrebbe non supportare "
|
531 |
-
#~ "queste funzionalità. Contatta lo sviluppatore del tuo tema per "
|
532 |
-
#~ "implementarle."
|
533 |
-
|
534 |
-
#~ msgid "Show filter for search fields"
|
535 |
-
#~ msgstr "Mostra filtro per campi di ricerca"
|
536 |
-
|
537 |
-
#~ msgid ""
|
538 |
-
#~ "Show filter for search fields (it allows searching the Whole site or only "
|
539 |
-
#~ "among products)"
|
540 |
-
#~ msgstr ""
|
541 |
-
#~ "Mostra filtro per campi di ricerca (consente la ricerca in tutto il sito "
|
542 |
-
#~ "o solo tra i prodotti)"
|
543 |
-
|
544 |
-
#~ msgid "Show the category list"
|
545 |
-
#~ msgstr "Mostra lista categorie"
|
546 |
-
|
547 |
-
#~ msgid "Categories to show"
|
548 |
-
#~ msgstr "Categorie da mostrare"
|
549 |
-
|
550 |
-
#~ msgid ""
|
551 |
-
#~ "This option lets you decide to show all the categories or only the main "
|
552 |
-
#~ "ones"
|
553 |
-
#~ msgstr ""
|
554 |
-
#~ "Con questa opzione puoi scegliere di mostrare tutte le categorie o solo "
|
555 |
-
#~ "le principali"
|
556 |
-
|
557 |
-
#~ msgid "Main Categories"
|
558 |
-
#~ msgstr "Categorie principali"
|
559 |
-
|
560 |
-
#~ msgid "All Categories"
|
561 |
-
#~ msgstr "Tutte le categorie"
|
562 |
-
|
563 |
-
#~ msgid "Test of \"view all\" link"
|
564 |
-
#~ msgstr "Testo di"
|
565 |
-
|
566 |
-
#, fuzzy
|
567 |
-
#~ msgid "Search %s"
|
568 |
-
#~ msgstr "Cerca"
|
569 |
-
|
570 |
-
#, fuzzy
|
571 |
-
#~ msgid "Search Categories"
|
572 |
-
#~ msgstr "Cerca:"
|
573 |
-
|
574 |
-
#, fuzzy
|
575 |
-
#~ msgid "%s Settings"
|
576 |
-
#~ msgstr "Impostazioni"
|
577 |
-
|
578 |
-
#, fuzzy
|
579 |
-
#~ msgid "layout settings"
|
580 |
-
#~ msgstr "Impostazioni"
|
581 |
-
|
582 |
-
#, fuzzy
|
583 |
-
#~ msgid "Plugin Settings"
|
584 |
-
#~ msgstr "Impostazioni"
|
585 |
-
|
586 |
-
#, fuzzy
|
587 |
-
#~ msgid "Settings saved"
|
588 |
-
#~ msgstr "Impostazioni"
|
589 |
-
|
590 |
-
#, fuzzy
|
591 |
-
#~ msgid "Settings reset"
|
592 |
-
#~ msgstr "Impostazioni"
|
593 |
-
|
594 |
-
#, fuzzy
|
595 |
-
#~ msgid "Maximum number of activations exceeded"
|
596 |
-
#~ msgstr "Numero massimo di risultati"
|
597 |
-
|
598 |
-
#, fuzzy
|
599 |
-
#~ msgid "Search for a product"
|
600 |
-
#~ msgstr "Cerca prodotto"
|
601 |
-
|
602 |
-
#, fuzzy
|
603 |
-
#~ msgid "Select"
|
604 |
-
#~ msgstr "Seleziona una data"
|
605 |
-
|
606 |
-
#, fuzzy
|
607 |
-
#~ msgid "File Upload"
|
608 |
-
#~ msgstr "Upload"
|
609 |
-
|
610 |
-
#, fuzzy
|
611 |
-
#~ msgid "Click to toggle"
|
612 |
-
#~ msgstr "Clicca per anteprima"
|
613 |
-
|
614 |
-
#, fuzzy
|
615 |
-
#~ msgid "Insert the title for the field."
|
616 |
-
#~ msgstr "Seleziona un font"
|
617 |
-
|
618 |
-
#, fuzzy
|
619 |
-
#~ msgid "Select the type for this field."
|
620 |
-
#~ msgstr "Seleziona un font"
|
621 |
-
|
622 |
-
#, fuzzy
|
623 |
-
#~ msgid "Selected"
|
624 |
-
#~ msgstr "Seleziona una data"
|
625 |
-
|
626 |
-
#~ msgid "Upload"
|
627 |
-
#~ msgstr "Upload"
|
628 |
-
|
629 |
-
#~ msgid "px"
|
630 |
-
#~ msgstr "px"
|
631 |
-
|
632 |
-
#~ msgid "em"
|
633 |
-
#~ msgstr "em"
|
634 |
-
|
635 |
-
#~ msgid "pt"
|
636 |
-
#~ msgstr "pt"
|
637 |
-
|
638 |
-
#~ msgid "rem"
|
639 |
-
#~ msgstr "rem"
|
640 |
-
|
641 |
-
#~ msgid "Regular"
|
642 |
-
#~ msgstr "Regular"
|
643 |
-
|
644 |
-
#~ msgid "Bold"
|
645 |
-
#~ msgstr "Bold"
|
646 |
-
|
647 |
-
#~ msgid "Extra bold"
|
648 |
-
#~ msgstr "Extra bold"
|
649 |
-
|
650 |
-
#~ msgid "Italic"
|
651 |
-
#~ msgstr "Italic"
|
652 |
-
|
653 |
-
#~ msgid "Italic bold"
|
654 |
-
#~ msgstr "Italic bold"
|
655 |
-
|
656 |
-
#~ msgid "Label for Search submit field."
|
657 |
-
#~ msgstr "Etichetta per il campo di submit"
|
658 |
-
|
659 |
-
#~ msgid "Docs"
|
660 |
-
#~ msgstr "Documentazione"
|
661 |
-
|
662 |
-
#~ msgid "Hours"
|
663 |
-
#~ msgstr "Ore"
|
664 |
-
|
665 |
-
#~ msgid "Minutes"
|
666 |
-
#~ msgstr "Minuti"
|
1 |
+
msgid ""
|
2 |
+
msgstr ""
|
3 |
+
"Project-Id-Version: YITH WooCommerce Ajax Search Premium\n"
|
4 |
+
"Report-Msgid-Bugs-To: http://wordpress.org/tag/init\n"
|
5 |
+
"POT-Creation-Date: 2020-03-20 07:22:19+00:00\n"
|
6 |
+
"PO-Revision-Date: 2020-03-20 08:22+0100\n"
|
7 |
+
"Last-Translator: \n"
|
8 |
+
"Language-Team: Yithemes <plugins@yithemes.com>\n"
|
9 |
+
"Language: it_IT\n"
|
10 |
+
"MIME-Version: 1.0\n"
|
11 |
+
"Content-Type: text/plain; charset=UTF-8\n"
|
12 |
+
"Content-Transfer-Encoding: 8bit\n"
|
13 |
+
"X-Generator: Poedit 2.2.1\n"
|
14 |
+
"X-Poedit-KeywordsList: __;_e;_x\n"
|
15 |
+
"X-Poedit-Basepath: .\n"
|
16 |
+
"X-Poedit-SearchPath-0: ..\n"
|
17 |
+
"X-Poedit-SearchPathExcluded-0: ../plugin-fw\n"
|
18 |
+
|
19 |
+
#: class.yith-wcas-admin.php:123
|
20 |
+
msgid "Settings"
|
21 |
+
msgstr "Impostazioni"
|
22 |
+
|
23 |
+
#: class.yith-wcas-admin.php:124
|
24 |
+
msgid "Premium Version"
|
25 |
+
msgstr "Versione premium"
|
26 |
+
|
27 |
+
#. Plugin Name of the plugin/theme
|
28 |
+
#: class.yith-wcas-admin.php:131
|
29 |
+
#: compatibility/elementor/class.yith-wcas-search-form-elementor.php:40
|
30 |
+
#: compatibility/elementor/class.yith-wcas-search-form-elementor.php:77
|
31 |
+
msgid "YITH WooCommerce Ajax Search"
|
32 |
+
msgstr "YITH WooCommerce Ajax Search"
|
33 |
+
|
34 |
+
#: class.yith-wcas-admin.php:132
|
35 |
+
msgid "Ajax Search"
|
36 |
+
msgstr "Ajax Search"
|
37 |
+
|
38 |
+
#: class.yith-wcas.php:203
|
39 |
+
msgid "No results"
|
40 |
+
msgstr "Nessun risultato"
|
41 |
+
|
42 |
+
#: compatibility/elementor/class.yith-wcas-search-form-elementor.php:87
|
43 |
+
msgid ""
|
44 |
+
"This widget inherits the style from the settings of YITH WooCommerce Ajax "
|
45 |
+
"Search plugin that you can edit"
|
46 |
+
msgstr ""
|
47 |
+
|
48 |
+
#: compatibility/elementor/class.yith-wcas-search-form-elementor.php:89
|
49 |
+
msgid "here"
|
50 |
+
msgstr ""
|
51 |
+
|
52 |
+
#: init.php:52
|
53 |
+
msgid ""
|
54 |
+
"You can't activate the free version of YITH WooCommerce Ajax Search while "
|
55 |
+
"you are using the premium one."
|
56 |
+
msgstr ""
|
57 |
+
"Non puoi attivare la versione free di YITH WooCommerce Ajax Search se stai "
|
58 |
+
"già utilizzando la premium."
|
59 |
+
|
60 |
+
#: init.php:121
|
61 |
+
msgid ""
|
62 |
+
"YITH WooCommerce Ajax Search is enabled but not effective. It requires "
|
63 |
+
"WooCommerce in order to work."
|
64 |
+
msgstr ""
|
65 |
+
"YITH WooCommerce Ajax Search è abilitato ma non in funzione. Devi aver "
|
66 |
+
"installato WooCommerce per poter funzionare."
|
67 |
+
|
68 |
+
#: plugin-options/gutenberg/blocks.php:17
|
69 |
+
#, fuzzy
|
70 |
+
#| msgid "Ajax Search"
|
71 |
+
msgctxt "[gutenberg]: block name"
|
72 |
+
msgid "Ajax Search"
|
73 |
+
msgstr "Ajax Search"
|
74 |
+
|
75 |
+
#: plugin-options/gutenberg/blocks.php:18
|
76 |
+
#, fuzzy
|
77 |
+
#| msgid "Ajax Search"
|
78 |
+
msgctxt "[gutenberg]: block description"
|
79 |
+
msgid "Show Ajax Search Form"
|
80 |
+
msgstr "Ajax Search"
|
81 |
+
|
82 |
+
#: plugin-options/gutenberg/blocks.php:22
|
83 |
+
#, fuzzy
|
84 |
+
#| msgid "Ajax Search"
|
85 |
+
msgctxt "[gutenberg]: keywords"
|
86 |
+
msgid "Ajax Search"
|
87 |
+
msgstr "Ajax Search"
|
88 |
+
|
89 |
+
#: plugin-options/gutenberg/blocks.php:23
|
90 |
+
#, fuzzy
|
91 |
+
#| msgid "Search"
|
92 |
+
msgctxt "[gutenberg]: keywords"
|
93 |
+
msgid "Search"
|
94 |
+
msgstr "Cerca"
|
95 |
+
|
96 |
+
#: plugin-options/settings-options.php:21
|
97 |
+
msgid "General settings"
|
98 |
+
msgstr "Impostazioni generali"
|
99 |
+
|
100 |
+
#: plugin-options/settings-options.php:30
|
101 |
+
msgid "Search input label"
|
102 |
+
msgstr "Etichetta campo \"Cerca\""
|
103 |
+
|
104 |
+
#: plugin-options/settings-options.php:32
|
105 |
+
#: plugin-options/settings-options.php:40
|
106 |
+
msgid "Label for Search input field."
|
107 |
+
msgstr "Etichetta per il campo \"Cerca\""
|
108 |
+
|
109 |
+
#: plugin-options/settings-options.php:34
|
110 |
+
msgid "Search for products"
|
111 |
+
msgstr "Cerca prodotto"
|
112 |
+
|
113 |
+
#: plugin-options/settings-options.php:38
|
114 |
+
msgid "Search submit label"
|
115 |
+
msgstr "Etichetta campo \"Submit\""
|
116 |
+
|
117 |
+
#: plugin-options/settings-options.php:42
|
118 |
+
msgid "Search"
|
119 |
+
msgstr "Cerca"
|
120 |
+
|
121 |
+
#: plugin-options/settings-options.php:46
|
122 |
+
msgid "Minimum number of characters"
|
123 |
+
msgstr "Numero minimo di caratteri"
|
124 |
+
|
125 |
+
#: plugin-options/settings-options.php:47
|
126 |
+
msgid "Minimum number of characters required to trigger autosuggest."
|
127 |
+
msgstr ""
|
128 |
+
"Numero minimo di caratteri richiesti per mostrare i suggerimenti automatici."
|
129 |
+
|
130 |
+
#: plugin-options/settings-options.php:60
|
131 |
+
msgid "Maximum number of results"
|
132 |
+
msgstr "Numero massimo di risultati"
|
133 |
+
|
134 |
+
#: plugin-options/settings-options.php:61
|
135 |
+
msgid "Maximum number of results showed within the autosuggest box."
|
136 |
+
msgstr "Numero massimo di risultati da mostrare tra i suggerimenti automatici."
|
137 |
+
|
138 |
+
#: plugin-options/settings-options.php:74
|
139 |
+
msgid "Enable transients to cache autocomplete results"
|
140 |
+
msgstr "Attiva i transient per salvare nella cache i risulti autocompletati"
|
141 |
+
|
142 |
+
#: plugin-options/settings-options.php:75
|
143 |
+
msgid "Save the results of a query in a transient"
|
144 |
+
msgstr "Salva i risultati di una query in un transient"
|
145 |
+
|
146 |
+
#: plugin-options/settings-options.php:84
|
147 |
+
msgid "Set the duration of transient"
|
148 |
+
msgstr "Imposta la durata del transient "
|
149 |
+
|
150 |
+
#: plugin-options/settings-options.php:85
|
151 |
+
msgid "(hours)"
|
152 |
+
msgstr "(ore)"
|
153 |
+
|
154 |
+
#: templates/admin/premium.php:256 templates/admin/premium.php:304
|
155 |
+
msgid ""
|
156 |
+
"Upgrade to the %1$spremium version%2$s%3$s of %1$sYITH WooCommerce Ajax "
|
157 |
+
"Search%2$s to benefit from all features!"
|
158 |
+
msgstr ""
|
159 |
+
"Aggiorna alla %1$spremium versione%2$s %3$s di%1$sYITH WooCommerce Ajax "
|
160 |
+
"Search%2$s per usufruire di tutte le sue funzionalità!"
|
161 |
+
|
162 |
+
#: templates/admin/premium.php:258 templates/admin/premium.php:306
|
163 |
+
msgid "%1$sUPGRADE%2$s %3$sto the premium version%2$s"
|
164 |
+
msgstr "%1$sAGGIORNA%2$s %3$salla versione premium%2$s "
|
165 |
+
|
166 |
+
#: templates/admin/premium.php:264
|
167 |
+
msgid "Premium Features"
|
168 |
+
msgstr "Funzionalità premium"
|
169 |
+
|
170 |
+
#: templates/admin/premium.php:266
|
171 |
+
msgid "HOW TO CUSTOMIZE THE RESULTS OF THE AUTOCOMPLETE"
|
172 |
+
msgstr "Come personalizzare i risultati del riempimento automatico"
|
173 |
+
|
174 |
+
#: templates/admin/premium.php:268
|
175 |
+
msgid "RESULTS OF THE AUTOCOMPLETE"
|
176 |
+
msgstr "Risultati del completamento automatico"
|
177 |
+
|
178 |
+
#: templates/admin/premium.php:273
|
179 |
+
msgid "Show %1$sthe image%2$s of the product (left or right aligned)"
|
180 |
+
msgstr "Mostra %1$sl'immagine%2$s del prodotto (a destra o sinistra)"
|
181 |
+
|
182 |
+
#: templates/admin/premium.php:274
|
183 |
+
msgid "Enable the %1$sprice visualization%2$s"
|
184 |
+
msgstr "Abilita %1$svisualizzazione prezzo%2$s"
|
185 |
+
|
186 |
+
#: templates/admin/premium.php:275
|
187 |
+
msgid "Show the %1$sproduct description%2$s"
|
188 |
+
msgstr "Mostra %1$sdescrizione prodotto%2$s"
|
189 |
+
|
190 |
+
#: templates/admin/premium.php:276
|
191 |
+
msgid "Tell to the client if the product is %1$son discount or is featured%2$s"
|
192 |
+
msgstr "Informa l'utente se il prodotto è %1$sin saldo o in evidenza%2$s"
|
193 |
+
|
194 |
+
#: templates/admin/premium.php:284
|
195 |
+
msgid "HOW TO CUSTOMIZE THE SEARCH OPTIONS"
|
196 |
+
msgstr "Come personalizzare le opzioni di ricerca"
|
197 |
+
|
198 |
+
#: templates/admin/premium.php:288
|
199 |
+
msgid "%1$sExtend the research%2$s in the excerpt and in the content"
|
200 |
+
msgstr ""
|
201 |
+
"%1$sEstendi le funzionalità di ricerca%2$s anche all'interno del riassunto "
|
202 |
+
"prodotto e del contenuto"
|
203 |
+
|
204 |
+
#: templates/admin/premium.php:289
|
205 |
+
msgid "%1$sActivate%2$s the category search"
|
206 |
+
msgstr "%1$sAbilita%2$s la ricerca per categoria"
|
207 |
+
|
208 |
+
#: templates/admin/premium.php:290
|
209 |
+
msgid "Configure the %1$stag%2$s search"
|
210 |
+
msgstr "Configura la ricerca per %1$stag%2$s"
|
211 |
+
|
212 |
+
#: templates/admin/premium.php:291
|
213 |
+
msgid "Search a product with an %1$sID%2$s"
|
214 |
+
msgstr "Cerca un prodotto utilizzando il suo %1$sID%2$s"
|
215 |
+
|
216 |
+
#: templates/yith-woocommerce-ajax-search.php:19
|
217 |
+
msgid "Search for:"
|
218 |
+
msgstr "Cerca:"
|
219 |
+
|
220 |
+
#: widgets/class.yith-wcas-ajax-search.php:29
|
221 |
+
msgid "An Ajax Search box for products only."
|
222 |
+
msgstr "Un filtro di ricerca Ajax solo per i prodotti."
|
223 |
+
|
224 |
+
#: widgets/class.yith-wcas-ajax-search.php:31
|
225 |
+
msgid "YITH WooCommerce Ajax Product Search"
|
226 |
+
msgstr "YITH WooCommerce Ajax Product Search"
|
227 |
+
|
228 |
+
#: widgets/class.yith-wcas-ajax-search.php:94
|
229 |
+
msgid "Title:"
|
230 |
+
msgstr "Titolo:"
|
231 |
+
|
232 |
+
#. Plugin URI of the plugin/theme
|
233 |
+
msgid "https://yithemes.com/themes/plugins/yith-woocommerce-ajax-search/"
|
234 |
+
msgstr ""
|
235 |
+
|
236 |
+
#. Description of the plugin/theme
|
237 |
+
msgid ""
|
238 |
+
"<code><strong>YITH WooCommerce Ajax Search</strong></code> is the plugin "
|
239 |
+
"that allows you to search for a specific product by inserting a few "
|
240 |
+
"characters. Thanks to <strong>Ajax Search</strong>, users can quickly find "
|
241 |
+
"the contents they are interested in without wasting time among site pages. "
|
242 |
+
"<a href=\"https://yithemes.com/\" target=\"_blank\">Get more plugins for "
|
243 |
+
"your e-commerce shop on <strong>YITH</strong></a>."
|
244 |
+
msgstr ""
|
245 |
+
|
246 |
+
#. Author of the plugin/theme
|
247 |
+
msgid "YITH"
|
248 |
+
msgstr ""
|
249 |
+
|
250 |
+
#. Author URI of the plugin/theme
|
251 |
+
msgid "https://yithemes.com/"
|
252 |
+
msgstr ""
|
253 |
+
|
254 |
+
#~ msgid "YITH WooCommerce Ajax Search Updated"
|
255 |
+
#~ msgstr "YITH WooCommerce Ajax Search aggiornato"
|
256 |
+
|
257 |
+
#~ msgid "Upgrade to the PREMIUM VERSION"
|
258 |
+
#~ msgstr "Aggiorna alla VERSIONE PREMIUM"
|
259 |
+
|
260 |
+
#~ msgid "Discover the Advanced Features"
|
261 |
+
#~ msgstr "Scopri le funzionalità avanzate"
|
262 |
+
|
263 |
+
#, fuzzy
|
264 |
+
#~| msgid ""
|
265 |
+
#~| "Upgrade to the PREMIUM VERSION\n"
|
266 |
+
#~| "of YITH WOOCOMMERCE AJAX SEARCH to benefit from all features!"
|
267 |
+
#~ msgid ""
|
268 |
+
#~ "Upgrade to the PREMIUM VERSION\r\n"
|
269 |
+
#~ "of YITH WOOCOMMERCE AJAX SEARCH to benefit from all features!"
|
270 |
+
#~ msgstr ""
|
271 |
+
#~ "Passa alla VERSIONE PREMIUM\n"
|
272 |
+
#~ "di YITH WooCommerce Ajax Search per poter fruire di tutte le sue "
|
273 |
+
#~ "funzionalità!"
|
274 |
+
|
275 |
+
#~ msgid "Get Support and Pro Features"
|
276 |
+
#~ msgstr "Accedi al supporto e alle funzionalità premium"
|
277 |
+
|
278 |
+
#~ msgid ""
|
279 |
+
#~ "By purchasing the premium version of the plugin, you will take advantage "
|
280 |
+
#~ "of the advanced features of the product and you will get one year of free "
|
281 |
+
#~ "updates and support through our platform available 24h/24."
|
282 |
+
#~ msgstr ""
|
283 |
+
#~ "Acquistando la versione premium del plugin, potrai utilizzare le "
|
284 |
+
#~ "funzionalità avanzate del prodotto ed otterrai un anno di aggiornamenti "
|
285 |
+
#~ "gratuiti e di supporto sulla nostra piattaforma disponibile 24h su 24."
|
286 |
+
|
287 |
+
#~ msgid "SEARCH OPTIONS"
|
288 |
+
#~ msgstr "OPZIONI DI RICERCA"
|
289 |
+
|
290 |
+
#~ msgid "Plugin Documentation"
|
291 |
+
#~ msgstr "Documentazione plugin"
|
292 |
+
|
293 |
+
#~ msgid ""
|
294 |
+
#~ "In the YIT Plugin tab you can find the YITH WooCommerce Ajax Search "
|
295 |
+
#~ "options.\n"
|
296 |
+
#~ "With this menu, you can access to all the settings of our plugins that "
|
297 |
+
#~ "you have activated.\n"
|
298 |
+
#~ "YITH WooCommerce Ajax Search is available in an outstanding PREMIUM "
|
299 |
+
#~ "version with many new options, <a href=\""
|
300 |
+
#~ msgstr ""
|
301 |
+
#~ "Nella scheda del plugin puoi trovare tutte le opzioni di YITH WooCommerce "
|
302 |
+
#~ "Ajax Search.\n"
|
303 |
+
#~ "Da questo menu, avrai accesso a tutte le impostazioni dei nostri plugin "
|
304 |
+
#~ "attivati finora.\n"
|
305 |
+
#~ "YITH WooCommerce Ajax Search è disponibile in una eccezionale versione "
|
306 |
+
#~ "PREMIUM con molte nuove optioni, <a href=\""
|
307 |
+
|
308 |
+
#~ msgid ""
|
309 |
+
#~ "From now on, you can find all the options of YITH WooCommerce Ajax Search "
|
310 |
+
#~ "Updated under YIT Plugin -> Ajax Search instead of WooCommerce -> "
|
311 |
+
#~ "Settings -> Ajax Search, as in the previous version.\n"
|
312 |
+
#~ "When one of our plugins updates, a new voice will be added to this menu.\n"
|
313 |
+
#~ "YITH WooCommerce Ajax Search renovates with new available options, "
|
314 |
+
#~ "discover the <a href=\""
|
315 |
+
#~ msgstr ""
|
316 |
+
#~ "Da adesso, puoi trovare tutte le opzioni del nuovo YITH WooCommerce Ajax "
|
317 |
+
#~ "Search in YIT Plugin > Ajax Search invece che in WooCommerce > Settings > "
|
318 |
+
#~ "Ajax Search, come accadeva nelle precedenti versioni.\n"
|
319 |
+
#~ "Quando uno dei nostri plugin verrà aggiornato, una nuova voce sarà "
|
320 |
+
#~ "aggiunta a questo menu.\n"
|
321 |
+
#~ "YITH WooCommerce Ajax Search si è rinnovato con molte nuove opzioni "
|
322 |
+
#~ "disponibili, scopri <a href=\""
|
323 |
+
|
324 |
+
#~ msgid "Output"
|
325 |
+
#~ msgstr "Risultati di ricerca"
|
326 |
+
|
327 |
+
#~ msgid "sale"
|
328 |
+
#~ msgstr "in saldo"
|
329 |
+
|
330 |
+
#~ msgid "featured"
|
331 |
+
#~ msgstr "in evidenza"
|
332 |
+
|
333 |
+
#~ msgid "Search in product brands"
|
334 |
+
#~ msgstr "Cerca marche prodotti"
|
335 |
+
|
336 |
+
#~ msgid "Extend search in product brands"
|
337 |
+
#~ msgstr "Estendi la ricerca alle marche dei prodotti"
|
338 |
+
|
339 |
+
#~ msgid ""
|
340 |
+
#~ "YITH WooCommerce Ajax Search Premium is enabled but not effective. It "
|
341 |
+
#~ "requires WooCommerce in order to work."
|
342 |
+
#~ msgstr ""
|
343 |
+
#~ "YITH WooCommerce Ajax Search Premium è abilitato ma non in funzione. Devi "
|
344 |
+
#~ "aver installato WooCommerce per poterlo utilizzare."
|
345 |
+
|
346 |
+
#~ msgid "Output Options"
|
347 |
+
#~ msgstr "Impostazioni risultati di ricerca"
|
348 |
+
|
349 |
+
#~ msgid "Show thumbnail"
|
350 |
+
#~ msgstr "Mostra thumbnail"
|
351 |
+
|
352 |
+
#~ msgid "Choose if you want show thumbnail and position"
|
353 |
+
#~ msgstr "Scegli se mostrare la thumbnail e dove"
|
354 |
+
|
355 |
+
#~ msgid "Hide thumbnail"
|
356 |
+
#~ msgstr "Nascondi thumbnail"
|
357 |
+
|
358 |
+
#~ msgid "Show on the Left"
|
359 |
+
#~ msgstr "Mostra a sinistra"
|
360 |
+
|
361 |
+
#~ msgid "Show on the Right"
|
362 |
+
#~ msgstr "Mostra a destra"
|
363 |
+
|
364 |
+
#~ msgid "Size of thumbnails"
|
365 |
+
#~ msgstr "Dimensione thumbnail"
|
366 |
+
|
367 |
+
#~ msgid "Show price"
|
368 |
+
#~ msgstr "Mostra prezzo"
|
369 |
+
|
370 |
+
#~ msgid "Show price of product"
|
371 |
+
#~ msgstr "Mostra prezzo prodotto"
|
372 |
+
|
373 |
+
#~ msgid "Price Label"
|
374 |
+
#~ msgstr "Etichetta prezzo"
|
375 |
+
|
376 |
+
#~ msgid "Show a label before the price"
|
377 |
+
#~ msgstr "Mostra un'etichetta prima del prezzo"
|
378 |
+
|
379 |
+
#~ msgid "Price:"
|
380 |
+
#~ msgstr "Prezzo:"
|
381 |
+
|
382 |
+
#~ msgid "Loader"
|
383 |
+
#~ msgstr "Icona di caricamento"
|
384 |
+
|
385 |
+
#~ msgid "Loader gif"
|
386 |
+
#~ msgstr "GIF icona di caricamento"
|
387 |
+
|
388 |
+
#~ msgid "Sales and Features badges"
|
389 |
+
#~ msgstr "Simboli \"in saldo\" e \"in evidenza\""
|
390 |
+
|
391 |
+
#~ msgid "Show sale badge"
|
392 |
+
#~ msgstr "Mostra adesivo \"in saldo\""
|
393 |
+
|
394 |
+
#~ msgid "Show sale badge if the product is on sale"
|
395 |
+
#~ msgstr "Mostra adesivo \"in saldo\" per i prodotti in saldo"
|
396 |
+
|
397 |
+
#~ msgid "Sale badge background color"
|
398 |
+
#~ msgstr "Colore sfondo adesivo \"in saldo\""
|
399 |
+
|
400 |
+
#~ msgid "Sale badge color"
|
401 |
+
#~ msgstr "Colore adesivo \"in saldo\""
|
402 |
+
|
403 |
+
#~ msgid "Show featured badge"
|
404 |
+
#~ msgstr "Mostra adesivo \"in evidenza\""
|
405 |
+
|
406 |
+
#~ msgid "Featured badge background color"
|
407 |
+
#~ msgstr "Colore sfondo adesivo \"in evidenza\""
|
408 |
+
|
409 |
+
#~ msgid "Featured badge color"
|
410 |
+
#~ msgstr "Colore adesivo \"in evidenza\""
|
411 |
+
|
412 |
+
#~ msgid "Hide featured bagde if the product is on sale"
|
413 |
+
#~ msgstr "Nascondi adesivo \"in evidenza\" per i prodotti in saldo"
|
414 |
+
|
415 |
+
#~ msgid "Title & Excerpt"
|
416 |
+
#~ msgstr "Titolo & Riassunto"
|
417 |
+
|
418 |
+
#~ msgid "Title color"
|
419 |
+
#~ msgstr "Colore titolo"
|
420 |
+
|
421 |
+
#~ msgid "Show excerpt"
|
422 |
+
#~ msgstr "Mostra riassunto"
|
423 |
+
|
424 |
+
#~ msgid "Show excerpt of product"
|
425 |
+
#~ msgstr "Mostra riassunto prodotto"
|
426 |
+
|
427 |
+
#~ msgid "Number of words to show in excerpt"
|
428 |
+
#~ msgstr "Numero di parole da mostrare nel riassunto"
|
429 |
+
|
430 |
+
#~ msgid "\"View All\" Link"
|
431 |
+
#~ msgstr "Link \"Visualizza tutto\""
|
432 |
+
|
433 |
+
#~ msgid "Show \"view all\" link"
|
434 |
+
#~ msgstr "Mostra link \"Visualizza tutto\""
|
435 |
+
|
436 |
+
#~ msgid "Add a link to the bottom of results"
|
437 |
+
#~ msgstr "Aggiungi un link sotto tutti i risultati"
|
438 |
+
|
439 |
+
#~ msgid "Text of \"view all\" link"
|
440 |
+
#~ msgstr "Testo del link \"Visualizza tutto\""
|
441 |
+
|
442 |
+
#~ msgid "Add a link at the bottom of results"
|
443 |
+
#~ msgstr "Aggiungi un link sotto tutti i risultati"
|
444 |
+
|
445 |
+
#~ msgid "View all"
|
446 |
+
#~ msgstr "Visualizza tutto"
|
447 |
+
|
448 |
+
#~ msgid "Search settings"
|
449 |
+
#~ msgstr "Impostazioni di ricerca"
|
450 |
+
|
451 |
+
#~ msgid "Choose element types to search"
|
452 |
+
#~ msgstr "Scegli il tipo di elementi da cercare"
|
453 |
+
|
454 |
+
#~ msgid "Choose if you want to extend search also to posts and pages"
|
455 |
+
#~ msgstr "Scegli se estendere la ricerca anche ad articoli e pagine"
|
456 |
+
|
457 |
+
#~ msgid "All"
|
458 |
+
#~ msgstr "Tutti"
|
459 |
+
|
460 |
+
#~ msgid "Products"
|
461 |
+
#~ msgstr "Prodotti"
|
462 |
+
|
463 |
+
#~ msgid "Search in excerpt"
|
464 |
+
#~ msgstr "Cerca in riassunto"
|
465 |
+
|
466 |
+
#~ msgid "Extend search in the excerpt of the product"
|
467 |
+
#~ msgstr "Estendi ricerca anche al riassunto del prodotto"
|
468 |
+
|
469 |
+
#~ msgid "Search in content"
|
470 |
+
#~ msgstr "Cerca nel contenuto"
|
471 |
+
|
472 |
+
#~ msgid "Extend search in the content of the product"
|
473 |
+
#~ msgstr "Estendi ricerca anche al contenuto del prodotto"
|
474 |
+
|
475 |
+
#~ msgid "Search in product categories"
|
476 |
+
#~ msgstr "Cerca tra le categorie prodotto"
|
477 |
+
|
478 |
+
#~ msgid "Extend search in product categories"
|
479 |
+
#~ msgstr "Estendi ricerca alle categorie prodotto"
|
480 |
+
|
481 |
+
#~ msgid "Search in product tags"
|
482 |
+
#~ msgstr "Cerca fra i tag del prodotto"
|
483 |
+
|
484 |
+
#~ msgid "Extend search in product tags"
|
485 |
+
#~ msgstr "Estendi ricerca ai tag del prodotto"
|
486 |
+
|
487 |
+
#~ msgid "Multiple Word Search"
|
488 |
+
#~ msgstr "Ricerca per più parole"
|
489 |
+
|
490 |
+
#~ msgid "Show items containing all words typed"
|
491 |
+
#~ msgstr "Mostra articoli contenenti tutte le parole inserite"
|
492 |
+
|
493 |
+
#~ msgid "Show items containing al least one of the words typed"
|
494 |
+
#~ msgstr "Mostra articoli contenenti almeno una delle parole inserite"
|
495 |
+
|
496 |
+
#~ msgid "Search by Sku Settings"
|
497 |
+
#~ msgstr "Impostazioni per Cerca per SKU "
|
498 |
+
|
499 |
+
#~ msgid ""
|
500 |
+
#~ "Extend search functionality so that search includes also sku. Attention: "
|
501 |
+
#~ "this feature may slow down the search process on some servers."
|
502 |
+
#~ msgstr ""
|
503 |
+
#~ "Estendi la funzionalità di ricerca in modo tale che sia incluso anche lo "
|
504 |
+
#~ "SKU del prodotto. Attenzione: questa funzionalità potrebbe rallentare il "
|
505 |
+
#~ "processo di ricerca su alcuni server."
|
506 |
+
|
507 |
+
#~ msgid "Search by sku"
|
508 |
+
#~ msgstr "Cerca per SKU"
|
509 |
+
|
510 |
+
#~ msgid "Extend search functionality so that search includes also sku"
|
511 |
+
#~ msgstr ""
|
512 |
+
#~ "Estendi la funzionalità di ricerca in modo tale da includere anche lo SKU"
|
513 |
+
|
514 |
+
#~ msgid "Search by sku variable products"
|
515 |
+
#~ msgstr "Cerca tra prodotti con SKU variabile"
|
516 |
+
|
517 |
+
#~ msgid "Extend sku search including variable products."
|
518 |
+
#~ msgstr "Estendi ricerca SKU includendo prodotti variabili."
|
519 |
+
|
520 |
+
#~ msgid "Maximum number of results showed in autosuggest box."
|
521 |
+
#~ msgstr "Numero massimo di risultati da mostrare nel riquadro suggerimenti."
|
522 |
+
|
523 |
+
#~ msgid "Additional Features"
|
524 |
+
#~ msgstr "Funzionalità aggiuntive"
|
525 |
+
|
526 |
+
#~ msgid ""
|
527 |
+
#~ "If these options are not showed, your theme may not support these "
|
528 |
+
#~ "features. Please, contact the developer of theme to implement them."
|
529 |
+
#~ msgstr ""
|
530 |
+
#~ "Se non visualizzi queste opzioni, il tuo tema potrebbe non supportare "
|
531 |
+
#~ "queste funzionalità. Contatta lo sviluppatore del tuo tema per "
|
532 |
+
#~ "implementarle."
|
533 |
+
|
534 |
+
#~ msgid "Show filter for search fields"
|
535 |
+
#~ msgstr "Mostra filtro per campi di ricerca"
|
536 |
+
|
537 |
+
#~ msgid ""
|
538 |
+
#~ "Show filter for search fields (it allows searching the Whole site or only "
|
539 |
+
#~ "among products)"
|
540 |
+
#~ msgstr ""
|
541 |
+
#~ "Mostra filtro per campi di ricerca (consente la ricerca in tutto il sito "
|
542 |
+
#~ "o solo tra i prodotti)"
|
543 |
+
|
544 |
+
#~ msgid "Show the category list"
|
545 |
+
#~ msgstr "Mostra lista categorie"
|
546 |
+
|
547 |
+
#~ msgid "Categories to show"
|
548 |
+
#~ msgstr "Categorie da mostrare"
|
549 |
+
|
550 |
+
#~ msgid ""
|
551 |
+
#~ "This option lets you decide to show all the categories or only the main "
|
552 |
+
#~ "ones"
|
553 |
+
#~ msgstr ""
|
554 |
+
#~ "Con questa opzione puoi scegliere di mostrare tutte le categorie o solo "
|
555 |
+
#~ "le principali"
|
556 |
+
|
557 |
+
#~ msgid "Main Categories"
|
558 |
+
#~ msgstr "Categorie principali"
|
559 |
+
|
560 |
+
#~ msgid "All Categories"
|
561 |
+
#~ msgstr "Tutte le categorie"
|
562 |
+
|
563 |
+
#~ msgid "Test of \"view all\" link"
|
564 |
+
#~ msgstr "Testo di"
|
565 |
+
|
566 |
+
#, fuzzy
|
567 |
+
#~ msgid "Search %s"
|
568 |
+
#~ msgstr "Cerca"
|
569 |
+
|
570 |
+
#, fuzzy
|
571 |
+
#~ msgid "Search Categories"
|
572 |
+
#~ msgstr "Cerca:"
|
573 |
+
|
574 |
+
#, fuzzy
|
575 |
+
#~ msgid "%s Settings"
|
576 |
+
#~ msgstr "Impostazioni"
|
577 |
+
|
578 |
+
#, fuzzy
|
579 |
+
#~ msgid "layout settings"
|
580 |
+
#~ msgstr "Impostazioni"
|
581 |
+
|
582 |
+
#, fuzzy
|
583 |
+
#~ msgid "Plugin Settings"
|
584 |
+
#~ msgstr "Impostazioni"
|
585 |
+
|
586 |
+
#, fuzzy
|
587 |
+
#~ msgid "Settings saved"
|
588 |
+
#~ msgstr "Impostazioni"
|
589 |
+
|
590 |
+
#, fuzzy
|
591 |
+
#~ msgid "Settings reset"
|
592 |
+
#~ msgstr "Impostazioni"
|
593 |
+
|
594 |
+
#, fuzzy
|
595 |
+
#~ msgid "Maximum number of activations exceeded"
|
596 |
+
#~ msgstr "Numero massimo di risultati"
|
597 |
+
|
598 |
+
#, fuzzy
|
599 |
+
#~ msgid "Search for a product"
|
600 |
+
#~ msgstr "Cerca prodotto"
|
601 |
+
|
602 |
+
#, fuzzy
|
603 |
+
#~ msgid "Select"
|
604 |
+
#~ msgstr "Seleziona una data"
|
605 |
+
|
606 |
+
#, fuzzy
|
607 |
+
#~ msgid "File Upload"
|
608 |
+
#~ msgstr "Upload"
|
609 |
+
|
610 |
+
#, fuzzy
|
611 |
+
#~ msgid "Click to toggle"
|
612 |
+
#~ msgstr "Clicca per anteprima"
|
613 |
+
|
614 |
+
#, fuzzy
|
615 |
+
#~ msgid "Insert the title for the field."
|
616 |
+
#~ msgstr "Seleziona un font"
|
617 |
+
|
618 |
+
#, fuzzy
|
619 |
+
#~ msgid "Select the type for this field."
|
620 |
+
#~ msgstr "Seleziona un font"
|
621 |
+
|
622 |
+
#, fuzzy
|
623 |
+
#~ msgid "Selected"
|
624 |
+
#~ msgstr "Seleziona una data"
|
625 |
+
|
626 |
+
#~ msgid "Upload"
|
627 |
+
#~ msgstr "Upload"
|
628 |
+
|
629 |
+
#~ msgid "px"
|
630 |
+
#~ msgstr "px"
|
631 |
+
|
632 |
+
#~ msgid "em"
|
633 |
+
#~ msgstr "em"
|
634 |
+
|
635 |
+
#~ msgid "pt"
|
636 |
+
#~ msgstr "pt"
|
637 |
+
|
638 |
+
#~ msgid "rem"
|
639 |
+
#~ msgstr "rem"
|
640 |
+
|
641 |
+
#~ msgid "Regular"
|
642 |
+
#~ msgstr "Regular"
|
643 |
+
|
644 |
+
#~ msgid "Bold"
|
645 |
+
#~ msgstr "Bold"
|
646 |
+
|
647 |
+
#~ msgid "Extra bold"
|
648 |
+
#~ msgstr "Extra bold"
|
649 |
+
|
650 |
+
#~ msgid "Italic"
|
651 |
+
#~ msgstr "Italic"
|
652 |
+
|
653 |
+
#~ msgid "Italic bold"
|
654 |
+
#~ msgstr "Italic bold"
|
655 |
+
|
656 |
+
#~ msgid "Label for Search submit field."
|
657 |
+
#~ msgstr "Etichetta per il campo di submit"
|
658 |
+
|
659 |
+
#~ msgid "Docs"
|
660 |
+
#~ msgstr "Documentazione"
|
661 |
+
|
662 |
+
#~ msgid "Hours"
|
663 |
+
#~ msgstr "Ore"
|
664 |
+
|
665 |
+
#~ msgid "Minutes"
|
666 |
+
#~ msgstr "Minuti"
|
languages/yith-woocommerce-ajax-search-pt_PT.po
CHANGED
@@ -1,358 +1,358 @@
|
|
1 |
-
msgid ""
|
2 |
-
msgstr ""
|
3 |
-
"Project-Id-Version: YITH WooCommerce Ajax Search\n"
|
4 |
-
"Report-Msgid-Bugs-To: http://wordpress.org/tag/init\n"
|
5 |
-
"POT-Creation-Date: 2020-03-20 07:22:19+00:00\n"
|
6 |
-
"PO-Revision-Date: 2020-03-20 08:23+0100\n"
|
7 |
-
"Last-Translator: Luis Maia <lmsm76@gmail.com>\n"
|
8 |
-
"Language-Team: Your Inspiration Themes <plugins@yithemes.com>\n"
|
9 |
-
"Language: it_IT\n"
|
10 |
-
"MIME-Version: 1.0\n"
|
11 |
-
"Content-Type: text/plain; charset=UTF-8\n"
|
12 |
-
"Content-Transfer-Encoding: 8bit\n"
|
13 |
-
"X-Generator: Poedit 2.2.1\n"
|
14 |
-
"X-Poedit-KeywordsList: __;_e;_x\n"
|
15 |
-
"X-Poedit-Basepath: .\n"
|
16 |
-
"X-Poedit-SearchPath-0: ..\n"
|
17 |
-
|
18 |
-
#: class.yith-wcas-admin.php:123
|
19 |
-
msgid "Settings"
|
20 |
-
msgstr "Definições"
|
21 |
-
|
22 |
-
#: class.yith-wcas-admin.php:124
|
23 |
-
msgid "Premium Version"
|
24 |
-
msgstr ""
|
25 |
-
|
26 |
-
#. Plugin Name of the plugin/theme
|
27 |
-
#: class.yith-wcas-admin.php:131
|
28 |
-
#: compatibility/elementor/class.yith-wcas-search-form-elementor.php:40
|
29 |
-
#: compatibility/elementor/class.yith-wcas-search-form-elementor.php:77
|
30 |
-
#, fuzzy
|
31 |
-
msgid "YITH WooCommerce Ajax Search"
|
32 |
-
msgstr "YITH WooCommerce Ajax Product Search"
|
33 |
-
|
34 |
-
#: class.yith-wcas-admin.php:132
|
35 |
-
msgid "Ajax Search"
|
36 |
-
msgstr "Ajax Search"
|
37 |
-
|
38 |
-
#: class.yith-wcas.php:203
|
39 |
-
msgid "No results"
|
40 |
-
msgstr "Sem resultados"
|
41 |
-
|
42 |
-
#: compatibility/elementor/class.yith-wcas-search-form-elementor.php:87
|
43 |
-
msgid ""
|
44 |
-
"This widget inherits the style from the settings of YITH WooCommerce Ajax "
|
45 |
-
"Search plugin that you can edit"
|
46 |
-
msgstr ""
|
47 |
-
|
48 |
-
#: compatibility/elementor/class.yith-wcas-search-form-elementor.php:89
|
49 |
-
msgid "here"
|
50 |
-
msgstr ""
|
51 |
-
|
52 |
-
#: init.php:52
|
53 |
-
msgid ""
|
54 |
-
"You can't activate the free version of YITH WooCommerce Ajax Search while "
|
55 |
-
"you are using the premium one."
|
56 |
-
msgstr ""
|
57 |
-
|
58 |
-
#: init.php:121
|
59 |
-
msgid ""
|
60 |
-
"YITH WooCommerce Ajax Search is enabled but not effective. It requires "
|
61 |
-
"WooCommerce in order to work."
|
62 |
-
msgstr ""
|
63 |
-
|
64 |
-
#: plugin-options/gutenberg/blocks.php:17
|
65 |
-
#, fuzzy
|
66 |
-
#| msgid "Ajax Search"
|
67 |
-
msgctxt "[gutenberg]: block name"
|
68 |
-
msgid "Ajax Search"
|
69 |
-
msgstr "Ajax Search"
|
70 |
-
|
71 |
-
#: plugin-options/gutenberg/blocks.php:18
|
72 |
-
#, fuzzy
|
73 |
-
#| msgid "Ajax Search"
|
74 |
-
msgctxt "[gutenberg]: block description"
|
75 |
-
msgid "Show Ajax Search Form"
|
76 |
-
msgstr "Ajax Search"
|
77 |
-
|
78 |
-
#: plugin-options/gutenberg/blocks.php:22
|
79 |
-
#, fuzzy
|
80 |
-
#| msgid "Ajax Search"
|
81 |
-
msgctxt "[gutenberg]: keywords"
|
82 |
-
msgid "Ajax Search"
|
83 |
-
msgstr "Ajax Search"
|
84 |
-
|
85 |
-
#: plugin-options/gutenberg/blocks.php:23
|
86 |
-
#, fuzzy
|
87 |
-
#| msgid "Search"
|
88 |
-
msgctxt "[gutenberg]: keywords"
|
89 |
-
msgid "Search"
|
90 |
-
msgstr "Procurar"
|
91 |
-
|
92 |
-
#: plugin-options/settings-options.php:21
|
93 |
-
#, fuzzy
|
94 |
-
msgid "General settings"
|
95 |
-
msgstr "Definições Gerais"
|
96 |
-
|
97 |
-
#: plugin-options/settings-options.php:30
|
98 |
-
msgid "Search input label"
|
99 |
-
msgstr "Etiqueta Entrada Dados"
|
100 |
-
|
101 |
-
#: plugin-options/settings-options.php:32
|
102 |
-
#: plugin-options/settings-options.php:40
|
103 |
-
msgid "Label for Search input field."
|
104 |
-
msgstr "Etiqueta para campo introdução Procura Dados."
|
105 |
-
|
106 |
-
#: plugin-options/settings-options.php:34
|
107 |
-
msgid "Search for products"
|
108 |
-
msgstr "Procurar por produtos"
|
109 |
-
|
110 |
-
#: plugin-options/settings-options.php:38
|
111 |
-
msgid "Search submit label"
|
112 |
-
msgstr "Etiqueta do botão submeter"
|
113 |
-
|
114 |
-
#: plugin-options/settings-options.php:42
|
115 |
-
msgid "Search"
|
116 |
-
msgstr "Procurar"
|
117 |
-
|
118 |
-
#: plugin-options/settings-options.php:46
|
119 |
-
msgid "Minimum number of characters"
|
120 |
-
msgstr "Numero minimo caracteres"
|
121 |
-
|
122 |
-
#: plugin-options/settings-options.php:47
|
123 |
-
msgid "Minimum number of characters required to trigger autosuggest."
|
124 |
-
msgstr "Numero de caracteres necessário para ativar a autosugestão"
|
125 |
-
|
126 |
-
#: plugin-options/settings-options.php:60
|
127 |
-
msgid "Maximum number of results"
|
128 |
-
msgstr "Numero máximo de resultados"
|
129 |
-
|
130 |
-
#: plugin-options/settings-options.php:61
|
131 |
-
msgid "Maximum number of results showed within the autosuggest box."
|
132 |
-
msgstr "Numero máximo de resultados a mostrar na caixa de autosugestão"
|
133 |
-
|
134 |
-
#: plugin-options/settings-options.php:74
|
135 |
-
msgid "Enable transients to cache autocomplete results"
|
136 |
-
msgstr ""
|
137 |
-
|
138 |
-
#: plugin-options/settings-options.php:75
|
139 |
-
msgid "Save the results of a query in a transient"
|
140 |
-
msgstr ""
|
141 |
-
|
142 |
-
#: plugin-options/settings-options.php:84
|
143 |
-
msgid "Set the duration of transient"
|
144 |
-
msgstr ""
|
145 |
-
|
146 |
-
#: plugin-options/settings-options.php:85
|
147 |
-
#, fuzzy
|
148 |
-
#| msgid "Hours"
|
149 |
-
msgid "(hours)"
|
150 |
-
msgstr "Horas"
|
151 |
-
|
152 |
-
#: templates/admin/premium.php:256 templates/admin/premium.php:304
|
153 |
-
msgid ""
|
154 |
-
"Upgrade to the %1$spremium version%2$s%3$s of %1$sYITH WooCommerce Ajax "
|
155 |
-
"Search%2$s to benefit from all features!"
|
156 |
-
msgstr ""
|
157 |
-
|
158 |
-
#: templates/admin/premium.php:258 templates/admin/premium.php:306
|
159 |
-
msgid "%1$sUPGRADE%2$s %3$sto the premium version%2$s"
|
160 |
-
msgstr ""
|
161 |
-
|
162 |
-
#: templates/admin/premium.php:264
|
163 |
-
msgid "Premium Features"
|
164 |
-
msgstr ""
|
165 |
-
|
166 |
-
#: templates/admin/premium.php:266
|
167 |
-
msgid "HOW TO CUSTOMIZE THE RESULTS OF THE AUTOCOMPLETE"
|
168 |
-
msgstr ""
|
169 |
-
|
170 |
-
#: templates/admin/premium.php:268
|
171 |
-
msgid "RESULTS OF THE AUTOCOMPLETE"
|
172 |
-
msgstr ""
|
173 |
-
|
174 |
-
#: templates/admin/premium.php:273
|
175 |
-
msgid "Show %1$sthe image%2$s of the product (left or right aligned)"
|
176 |
-
msgstr ""
|
177 |
-
|
178 |
-
#: templates/admin/premium.php:274
|
179 |
-
msgid "Enable the %1$sprice visualization%2$s"
|
180 |
-
msgstr ""
|
181 |
-
|
182 |
-
#: templates/admin/premium.php:275
|
183 |
-
msgid "Show the %1$sproduct description%2$s"
|
184 |
-
msgstr ""
|
185 |
-
|
186 |
-
#: templates/admin/premium.php:276
|
187 |
-
msgid "Tell to the client if the product is %1$son discount or is featured%2$s"
|
188 |
-
msgstr ""
|
189 |
-
|
190 |
-
#: templates/admin/premium.php:284
|
191 |
-
msgid "HOW TO CUSTOMIZE THE SEARCH OPTIONS"
|
192 |
-
msgstr ""
|
193 |
-
|
194 |
-
#: templates/admin/premium.php:288
|
195 |
-
msgid "%1$sExtend the research%2$s in the excerpt and in the content"
|
196 |
-
msgstr ""
|
197 |
-
|
198 |
-
#: templates/admin/premium.php:289
|
199 |
-
msgid "%1$sActivate%2$s the category search"
|
200 |
-
msgstr ""
|
201 |
-
|
202 |
-
#: templates/admin/premium.php:290
|
203 |
-
msgid "Configure the %1$stag%2$s search"
|
204 |
-
msgstr ""
|
205 |
-
|
206 |
-
#: templates/admin/premium.php:291
|
207 |
-
msgid "Search a product with an %1$sID%2$s"
|
208 |
-
msgstr ""
|
209 |
-
|
210 |
-
#: templates/yith-woocommerce-ajax-search.php:19
|
211 |
-
msgid "Search for:"
|
212 |
-
msgstr "Procurar por:"
|
213 |
-
|
214 |
-
#: widgets/class.yith-wcas-ajax-search.php:29
|
215 |
-
msgid "An Ajax Search box for products only."
|
216 |
-
msgstr "Uma caixa de Procura somente de produtos em Ajax"
|
217 |
-
|
218 |
-
#: widgets/class.yith-wcas-ajax-search.php:31
|
219 |
-
msgid "YITH WooCommerce Ajax Product Search"
|
220 |
-
msgstr "YITH WooCommerce Ajax Product Search"
|
221 |
-
|
222 |
-
#: widgets/class.yith-wcas-ajax-search.php:94
|
223 |
-
msgid "Title:"
|
224 |
-
msgstr "Titulo:"
|
225 |
-
|
226 |
-
#. Plugin URI of the plugin/theme
|
227 |
-
msgid "https://yithemes.com/themes/plugins/yith-woocommerce-ajax-search/"
|
228 |
-
msgstr ""
|
229 |
-
|
230 |
-
#. Description of the plugin/theme
|
231 |
-
msgid ""
|
232 |
-
"<code><strong>YITH WooCommerce Ajax Search</strong></code> is the plugin "
|
233 |
-
"that allows you to search for a specific product by inserting a few "
|
234 |
-
"characters. Thanks to <strong>Ajax Search</strong>, users can quickly find "
|
235 |
-
"the contents they are interested in without wasting time among site pages. "
|
236 |
-
"<a href=\"https://yithemes.com/\" target=\"_blank\">Get more plugins for "
|
237 |
-
"your e-commerce shop on <strong>YITH</strong></a>."
|
238 |
-
msgstr ""
|
239 |
-
|
240 |
-
#. Author of the plugin/theme
|
241 |
-
msgid "YITH"
|
242 |
-
msgstr ""
|
243 |
-
|
244 |
-
#. Author URI of the plugin/theme
|
245 |
-
msgid "https://yithemes.com/"
|
246 |
-
msgstr ""
|
247 |
-
|
248 |
-
#, fuzzy
|
249 |
-
#~ msgid "YITH WooCommerce Ajax Search Updated"
|
250 |
-
#~ msgstr "YITH WooCommerce Ajax Product Search"
|
251 |
-
|
252 |
-
#, fuzzy
|
253 |
-
#~ msgid "Search %s"
|
254 |
-
#~ msgstr "Procurar"
|
255 |
-
|
256 |
-
#, fuzzy
|
257 |
-
#~ msgid "Search Categories"
|
258 |
-
#~ msgstr "Procurar por:"
|
259 |
-
|
260 |
-
#, fuzzy
|
261 |
-
#~ msgid "%s Settings"
|
262 |
-
#~ msgstr "Definições"
|
263 |
-
|
264 |
-
#, fuzzy
|
265 |
-
#~ msgid "layout settings"
|
266 |
-
#~ msgstr "Definições"
|
267 |
-
|
268 |
-
#, fuzzy
|
269 |
-
#~ msgid "Plugin Settings"
|
270 |
-
#~ msgstr "Definições"
|
271 |
-
|
272 |
-
#, fuzzy
|
273 |
-
#~ msgid "Settings saved"
|
274 |
-
#~ msgstr "Definições"
|
275 |
-
|
276 |
-
#, fuzzy
|
277 |
-
#~ msgid "Settings reset"
|
278 |
-
#~ msgstr "Definições"
|
279 |
-
|
280 |
-
#, fuzzy
|
281 |
-
#~ msgid "Maximum number of activations exceeded"
|
282 |
-
#~ msgstr "Numero máximo de resultados"
|
283 |
-
|
284 |
-
#, fuzzy
|
285 |
-
#~ msgid "Search Posts"
|
286 |
-
#~ msgstr "Procurar"
|
287 |
-
|
288 |
-
#, fuzzy
|
289 |
-
#~| msgid "Search for products"
|
290 |
-
#~ msgid "Search Product"
|
291 |
-
#~ msgstr "Procurar por produtos"
|
292 |
-
|
293 |
-
#, fuzzy
|
294 |
-
#~ msgid "Select All"
|
295 |
-
#~ msgstr "Selecione uma data"
|
296 |
-
|
297 |
-
#~ msgid "Upload"
|
298 |
-
#~ msgstr "Carregar"
|
299 |
-
|
300 |
-
#, fuzzy
|
301 |
-
#~ msgid "Search for a product"
|
302 |
-
#~ msgstr "Procurar por produtos"
|
303 |
-
|
304 |
-
#, fuzzy
|
305 |
-
#~ msgid "File Upload"
|
306 |
-
#~ msgstr "Carregar"
|
307 |
-
|
308 |
-
#, fuzzy
|
309 |
-
#~ msgid "Click to toggle"
|
310 |
-
#~ msgstr "Clicar para pré-visualizar"
|
311 |
-
|
312 |
-
#, fuzzy
|
313 |
-
#~ msgid "Insert the title for the field."
|
314 |
-
#~ msgstr "Selecione uma fonte"
|
315 |
-
|
316 |
-
#, fuzzy
|
317 |
-
#~ msgid "Select the type for this field."
|
318 |
-
#~ msgstr "Selecione uma fonte"
|
319 |
-
|
320 |
-
#, fuzzy
|
321 |
-
#~ msgid "Selected"
|
322 |
-
#~ msgstr "Selecione uma data"
|
323 |
-
|
324 |
-
#~ msgid "px"
|
325 |
-
#~ msgstr "px"
|
326 |
-
|
327 |
-
#~ msgid "em"
|
328 |
-
#~ msgstr "em"
|
329 |
-
|
330 |
-
#~ msgid "pt"
|
331 |
-
#~ msgstr "pt"
|
332 |
-
|
333 |
-
#~ msgid "rem"
|
334 |
-
#~ msgstr "rem"
|
335 |
-
|
336 |
-
#~ msgid "Regular"
|
337 |
-
#~ msgstr "Regular"
|
338 |
-
|
339 |
-
#~ msgid "Bold"
|
340 |
-
#~ msgstr "Bold"
|
341 |
-
|
342 |
-
#~ msgid "Extra bold"
|
343 |
-
#~ msgstr "Extra bold"
|
344 |
-
|
345 |
-
#~ msgid "Italic"
|
346 |
-
#~ msgstr "Italic"
|
347 |
-
|
348 |
-
#~ msgid "Italic bold"
|
349 |
-
#~ msgstr "Italic bold"
|
350 |
-
|
351 |
-
#~ msgid "Label for Search submit field."
|
352 |
-
#~ msgstr "Etiqueta para o campo do botão Procurar"
|
353 |
-
|
354 |
-
#~ msgid "Docs"
|
355 |
-
#~ msgstr "Documentação"
|
356 |
-
|
357 |
-
#~ msgid "Minutes"
|
358 |
-
#~ msgstr "Minutos"
|
1 |
+
msgid ""
|
2 |
+
msgstr ""
|
3 |
+
"Project-Id-Version: YITH WooCommerce Ajax Search\n"
|
4 |
+
"Report-Msgid-Bugs-To: http://wordpress.org/tag/init\n"
|
5 |
+
"POT-Creation-Date: 2020-03-20 07:22:19+00:00\n"
|
6 |
+
"PO-Revision-Date: 2020-03-20 08:23+0100\n"
|
7 |
+
"Last-Translator: Luis Maia <lmsm76@gmail.com>\n"
|
8 |
+
"Language-Team: Your Inspiration Themes <plugins@yithemes.com>\n"
|
9 |
+
"Language: it_IT\n"
|
10 |
+
"MIME-Version: 1.0\n"
|
11 |
+
"Content-Type: text/plain; charset=UTF-8\n"
|
12 |
+
"Content-Transfer-Encoding: 8bit\n"
|
13 |
+
"X-Generator: Poedit 2.2.1\n"
|
14 |
+
"X-Poedit-KeywordsList: __;_e;_x\n"
|
15 |
+
"X-Poedit-Basepath: .\n"
|
16 |
+
"X-Poedit-SearchPath-0: ..\n"
|
17 |
+
|
18 |
+
#: class.yith-wcas-admin.php:123
|
19 |
+
msgid "Settings"
|
20 |
+
msgstr "Definições"
|
21 |
+
|
22 |
+
#: class.yith-wcas-admin.php:124
|
23 |
+
msgid "Premium Version"
|
24 |
+
msgstr ""
|
25 |
+
|
26 |
+
#. Plugin Name of the plugin/theme
|
27 |
+
#: class.yith-wcas-admin.php:131
|
28 |
+
#: compatibility/elementor/class.yith-wcas-search-form-elementor.php:40
|
29 |
+
#: compatibility/elementor/class.yith-wcas-search-form-elementor.php:77
|
30 |
+
#, fuzzy
|
31 |
+
msgid "YITH WooCommerce Ajax Search"
|
32 |
+
msgstr "YITH WooCommerce Ajax Product Search"
|
33 |
+
|
34 |
+
#: class.yith-wcas-admin.php:132
|
35 |
+
msgid "Ajax Search"
|
36 |
+
msgstr "Ajax Search"
|
37 |
+
|
38 |
+
#: class.yith-wcas.php:203
|
39 |
+
msgid "No results"
|
40 |
+
msgstr "Sem resultados"
|
41 |
+
|
42 |
+
#: compatibility/elementor/class.yith-wcas-search-form-elementor.php:87
|
43 |
+
msgid ""
|
44 |
+
"This widget inherits the style from the settings of YITH WooCommerce Ajax "
|
45 |
+
"Search plugin that you can edit"
|
46 |
+
msgstr ""
|
47 |
+
|
48 |
+
#: compatibility/elementor/class.yith-wcas-search-form-elementor.php:89
|
49 |
+
msgid "here"
|
50 |
+
msgstr ""
|
51 |
+
|
52 |
+
#: init.php:52
|
53 |
+
msgid ""
|
54 |
+
"You can't activate the free version of YITH WooCommerce Ajax Search while "
|
55 |
+
"you are using the premium one."
|
56 |
+
msgstr ""
|
57 |
+
|
58 |
+
#: init.php:121
|
59 |
+
msgid ""
|
60 |
+
"YITH WooCommerce Ajax Search is enabled but not effective. It requires "
|
61 |
+
"WooCommerce in order to work."
|
62 |
+
msgstr ""
|
63 |
+
|
64 |
+
#: plugin-options/gutenberg/blocks.php:17
|
65 |
+
#, fuzzy
|
66 |
+
#| msgid "Ajax Search"
|
67 |
+
msgctxt "[gutenberg]: block name"
|
68 |
+
msgid "Ajax Search"
|
69 |
+
msgstr "Ajax Search"
|
70 |
+
|
71 |
+
#: plugin-options/gutenberg/blocks.php:18
|
72 |
+
#, fuzzy
|
73 |
+
#| msgid "Ajax Search"
|
74 |
+
msgctxt "[gutenberg]: block description"
|
75 |
+
msgid "Show Ajax Search Form"
|
76 |
+
msgstr "Ajax Search"
|
77 |
+
|
78 |
+
#: plugin-options/gutenberg/blocks.php:22
|
79 |
+
#, fuzzy
|
80 |
+
#| msgid "Ajax Search"
|
81 |
+
msgctxt "[gutenberg]: keywords"
|
82 |
+
msgid "Ajax Search"
|
83 |
+
msgstr "Ajax Search"
|
84 |
+
|
85 |
+
#: plugin-options/gutenberg/blocks.php:23
|
86 |
+
#, fuzzy
|
87 |
+
#| msgid "Search"
|
88 |
+
msgctxt "[gutenberg]: keywords"
|
89 |
+
msgid "Search"
|
90 |
+
msgstr "Procurar"
|
91 |
+
|
92 |
+
#: plugin-options/settings-options.php:21
|
93 |
+
#, fuzzy
|
94 |
+
msgid "General settings"
|
95 |
+
msgstr "Definições Gerais"
|
96 |
+
|
97 |
+
#: plugin-options/settings-options.php:30
|
98 |
+
msgid "Search input label"
|
99 |
+
msgstr "Etiqueta Entrada Dados"
|
100 |
+
|
101 |
+
#: plugin-options/settings-options.php:32
|
102 |
+
#: plugin-options/settings-options.php:40
|
103 |
+
msgid "Label for Search input field."
|
104 |
+
msgstr "Etiqueta para campo introdução Procura Dados."
|
105 |
+
|
106 |
+
#: plugin-options/settings-options.php:34
|
107 |
+
msgid "Search for products"
|
108 |
+
msgstr "Procurar por produtos"
|
109 |
+
|
110 |
+
#: plugin-options/settings-options.php:38
|
111 |
+
msgid "Search submit label"
|
112 |
+
msgstr "Etiqueta do botão submeter"
|
113 |
+
|
114 |
+
#: plugin-options/settings-options.php:42
|
115 |
+
msgid "Search"
|
116 |
+
msgstr "Procurar"
|
117 |
+
|
118 |
+
#: plugin-options/settings-options.php:46
|
119 |
+
msgid "Minimum number of characters"
|
120 |
+
msgstr "Numero minimo caracteres"
|
121 |
+
|
122 |
+
#: plugin-options/settings-options.php:47
|
123 |
+
msgid "Minimum number of characters required to trigger autosuggest."
|
124 |
+
msgstr "Numero de caracteres necessário para ativar a autosugestão"
|
125 |
+
|
126 |
+
#: plugin-options/settings-options.php:60
|
127 |
+
msgid "Maximum number of results"
|
128 |
+
msgstr "Numero máximo de resultados"
|
129 |
+
|
130 |
+
#: plugin-options/settings-options.php:61
|
131 |
+
msgid "Maximum number of results showed within the autosuggest box."
|
132 |
+
msgstr "Numero máximo de resultados a mostrar na caixa de autosugestão"
|
133 |
+
|
134 |
+
#: plugin-options/settings-options.php:74
|
135 |
+
msgid "Enable transients to cache autocomplete results"
|
136 |
+
msgstr ""
|
137 |
+
|
138 |
+
#: plugin-options/settings-options.php:75
|
139 |
+
msgid "Save the results of a query in a transient"
|
140 |
+
msgstr ""
|
141 |
+
|
142 |
+
#: plugin-options/settings-options.php:84
|
143 |
+
msgid "Set the duration of transient"
|
144 |
+
msgstr ""
|
145 |
+
|
146 |
+
#: plugin-options/settings-options.php:85
|
147 |
+
#, fuzzy
|
148 |
+
#| msgid "Hours"
|
149 |
+
msgid "(hours)"
|
150 |
+
msgstr "Horas"
|
151 |
+
|
152 |
+
#: templates/admin/premium.php:256 templates/admin/premium.php:304
|
153 |
+
msgid ""
|
154 |
+
"Upgrade to the %1$spremium version%2$s%3$s of %1$sYITH WooCommerce Ajax "
|
155 |
+
"Search%2$s to benefit from all features!"
|
156 |
+
msgstr ""
|
157 |
+
|
158 |
+
#: templates/admin/premium.php:258 templates/admin/premium.php:306
|
159 |
+
msgid "%1$sUPGRADE%2$s %3$sto the premium version%2$s"
|
160 |
+
msgstr ""
|
161 |
+
|
162 |
+
#: templates/admin/premium.php:264
|
163 |
+
msgid "Premium Features"
|
164 |
+
msgstr ""
|
165 |
+
|
166 |
+
#: templates/admin/premium.php:266
|
167 |
+
msgid "HOW TO CUSTOMIZE THE RESULTS OF THE AUTOCOMPLETE"
|
168 |
+
msgstr ""
|
169 |
+
|
170 |
+
#: templates/admin/premium.php:268
|
171 |
+
msgid "RESULTS OF THE AUTOCOMPLETE"
|
172 |
+
msgstr ""
|
173 |
+
|
174 |
+
#: templates/admin/premium.php:273
|
175 |
+
msgid "Show %1$sthe image%2$s of the product (left or right aligned)"
|
176 |
+
msgstr ""
|
177 |
+
|
178 |
+
#: templates/admin/premium.php:274
|
179 |
+
msgid "Enable the %1$sprice visualization%2$s"
|
180 |
+
msgstr ""
|
181 |
+
|
182 |
+
#: templates/admin/premium.php:275
|
183 |
+
msgid "Show the %1$sproduct description%2$s"
|
184 |
+
msgstr ""
|
185 |
+
|
186 |
+
#: templates/admin/premium.php:276
|
187 |
+
msgid "Tell to the client if the product is %1$son discount or is featured%2$s"
|
188 |
+
msgstr ""
|
189 |
+
|
190 |
+
#: templates/admin/premium.php:284
|
191 |
+
msgid "HOW TO CUSTOMIZE THE SEARCH OPTIONS"
|
192 |
+
msgstr ""
|
193 |
+
|
194 |
+
#: templates/admin/premium.php:288
|
195 |
+
msgid "%1$sExtend the research%2$s in the excerpt and in the content"
|
196 |
+
msgstr ""
|
197 |
+
|
198 |
+
#: templates/admin/premium.php:289
|
199 |
+
msgid "%1$sActivate%2$s the category search"
|
200 |
+
msgstr ""
|
201 |
+
|
202 |
+
#: templates/admin/premium.php:290
|
203 |
+
msgid "Configure the %1$stag%2$s search"
|
204 |
+
msgstr ""
|
205 |
+
|
206 |
+
#: templates/admin/premium.php:291
|
207 |
+
msgid "Search a product with an %1$sID%2$s"
|
208 |
+
msgstr ""
|
209 |
+
|
210 |
+
#: templates/yith-woocommerce-ajax-search.php:19
|
211 |
+
msgid "Search for:"
|
212 |
+
msgstr "Procurar por:"
|
213 |
+
|
214 |
+
#: widgets/class.yith-wcas-ajax-search.php:29
|
215 |
+
msgid "An Ajax Search box for products only."
|
216 |
+
msgstr "Uma caixa de Procura somente de produtos em Ajax"
|
217 |
+
|
218 |
+
#: widgets/class.yith-wcas-ajax-search.php:31
|
219 |
+
msgid "YITH WooCommerce Ajax Product Search"
|
220 |
+
msgstr "YITH WooCommerce Ajax Product Search"
|
221 |
+
|
222 |
+
#: widgets/class.yith-wcas-ajax-search.php:94
|
223 |
+
msgid "Title:"
|
224 |
+
msgstr "Titulo:"
|
225 |
+
|
226 |
+
#. Plugin URI of the plugin/theme
|
227 |
+
msgid "https://yithemes.com/themes/plugins/yith-woocommerce-ajax-search/"
|
228 |
+
msgstr ""
|
229 |
+
|
230 |
+
#. Description of the plugin/theme
|
231 |
+
msgid ""
|
232 |
+
"<code><strong>YITH WooCommerce Ajax Search</strong></code> is the plugin "
|
233 |
+
"that allows you to search for a specific product by inserting a few "
|
234 |
+
"characters. Thanks to <strong>Ajax Search</strong>, users can quickly find "
|
235 |
+
"the contents they are interested in without wasting time among site pages. "
|
236 |
+
"<a href=\"https://yithemes.com/\" target=\"_blank\">Get more plugins for "
|
237 |
+
"your e-commerce shop on <strong>YITH</strong></a>."
|
238 |
+
msgstr ""
|
239 |
+
|
240 |
+
#. Author of the plugin/theme
|
241 |
+
msgid "YITH"
|
242 |
+
msgstr ""
|
243 |
+
|
244 |
+
#. Author URI of the plugin/theme
|
245 |
+
msgid "https://yithemes.com/"
|
246 |
+
msgstr ""
|
247 |
+
|
248 |
+
#, fuzzy
|
249 |
+
#~ msgid "YITH WooCommerce Ajax Search Updated"
|
250 |
+
#~ msgstr "YITH WooCommerce Ajax Product Search"
|
251 |
+
|
252 |
+
#, fuzzy
|
253 |
+
#~ msgid "Search %s"
|
254 |
+
#~ msgstr "Procurar"
|
255 |
+
|
256 |
+
#, fuzzy
|
257 |
+
#~ msgid "Search Categories"
|
258 |
+
#~ msgstr "Procurar por:"
|
259 |
+
|
260 |
+
#, fuzzy
|
261 |
+
#~ msgid "%s Settings"
|
262 |
+
#~ msgstr "Definições"
|
263 |
+
|
264 |
+
#, fuzzy
|
265 |
+
#~ msgid "layout settings"
|
266 |
+
#~ msgstr "Definições"
|
267 |
+
|
268 |
+
#, fuzzy
|
269 |
+
#~ msgid "Plugin Settings"
|
270 |
+
#~ msgstr "Definições"
|
271 |
+
|
272 |
+
#, fuzzy
|
273 |
+
#~ msgid "Settings saved"
|
274 |
+
#~ msgstr "Definições"
|
275 |
+
|
276 |
+
#, fuzzy
|
277 |
+
#~ msgid "Settings reset"
|
278 |
+
#~ msgstr "Definições"
|
279 |
+
|
280 |
+
#, fuzzy
|
281 |
+
#~ msgid "Maximum number of activations exceeded"
|
282 |
+
#~ msgstr "Numero máximo de resultados"
|
283 |
+
|
284 |
+
#, fuzzy
|
285 |
+
#~ msgid "Search Posts"
|
286 |
+
#~ msgstr "Procurar"
|
287 |
+
|
288 |
+
#, fuzzy
|
289 |
+
#~| msgid "Search for products"
|
290 |
+
#~ msgid "Search Product"
|
291 |
+
#~ msgstr "Procurar por produtos"
|
292 |
+
|
293 |
+
#, fuzzy
|
294 |
+
#~ msgid "Select All"
|
295 |
+
#~ msgstr "Selecione uma data"
|
296 |
+
|
297 |
+
#~ msgid "Upload"
|
298 |
+
#~ msgstr "Carregar"
|
299 |
+
|
300 |
+
#, fuzzy
|
301 |
+
#~ msgid "Search for a product"
|
302 |
+
#~ msgstr "Procurar por produtos"
|
303 |
+
|
304 |
+
#, fuzzy
|
305 |
+
#~ msgid "File Upload"
|
306 |
+
#~ msgstr "Carregar"
|
307 |
+
|
308 |
+
#, fuzzy
|
309 |
+
#~ msgid "Click to toggle"
|
310 |
+
#~ msgstr "Clicar para pré-visualizar"
|
311 |
+
|
312 |
+
#, fuzzy
|
313 |
+
#~ msgid "Insert the title for the field."
|
314 |
+
#~ msgstr "Selecione uma fonte"
|
315 |
+
|
316 |
+
#, fuzzy
|
317 |
+
#~ msgid "Select the type for this field."
|
318 |
+
#~ msgstr "Selecione uma fonte"
|
319 |
+
|
320 |
+
#, fuzzy
|
321 |
+
#~ msgid "Selected"
|
322 |
+
#~ msgstr "Selecione uma data"
|
323 |
+
|
324 |
+
#~ msgid "px"
|
325 |
+
#~ msgstr "px"
|
326 |
+
|
327 |
+
#~ msgid "em"
|
328 |
+
#~ msgstr "em"
|
329 |
+
|
330 |
+
#~ msgid "pt"
|
331 |
+
#~ msgstr "pt"
|
332 |
+
|
333 |
+
#~ msgid "rem"
|
334 |
+
#~ msgstr "rem"
|
335 |
+
|
336 |
+
#~ msgid "Regular"
|
337 |
+
#~ msgstr "Regular"
|
338 |
+
|
339 |
+
#~ msgid "Bold"
|
340 |
+
#~ msgstr "Bold"
|
341 |
+
|
342 |
+
#~ msgid "Extra bold"
|
343 |
+
#~ msgstr "Extra bold"
|
344 |
+
|
345 |
+
#~ msgid "Italic"
|
346 |
+
#~ msgstr "Italic"
|
347 |
+
|
348 |
+
#~ msgid "Italic bold"
|
349 |
+
#~ msgstr "Italic bold"
|
350 |
+
|
351 |
+
#~ msgid "Label for Search submit field."
|
352 |
+
#~ msgstr "Etiqueta para o campo do botão Procurar"
|
353 |
+
|
354 |
+
#~ msgid "Docs"
|
355 |
+
#~ msgstr "Documentação"
|
356 |
+
|
357 |
+
#~ msgid "Minutes"
|
358 |
+
#~ msgstr "Minutos"
|
languages/yith-woocommerce-ajax-search.pot
CHANGED
@@ -2,10 +2,10 @@
|
|
2 |
# This file is distributed under the same license as the YITH WooCommerce Ajax Search package.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
-
"Project-Id-Version: YITH WooCommerce Ajax Search 1.
|
6 |
"Report-Msgid-Bugs-To: "
|
7 |
"https://wordpress.org/support/plugin/yith-woocommerce-ajax-search\n"
|
8 |
-
"POT-Creation-Date: 2021-
|
9 |
"MIME-Version: 1.0\n"
|
10 |
"Content-Type: text/plain; charset=utf-8\n"
|
11 |
"Content-Transfer-Encoding: 8bit\n"
|
2 |
# This file is distributed under the same license as the YITH WooCommerce Ajax Search package.
|
3 |
msgid ""
|
4 |
msgstr ""
|
5 |
+
"Project-Id-Version: YITH WooCommerce Ajax Search 1.13.0\n"
|
6 |
"Report-Msgid-Bugs-To: "
|
7 |
"https://wordpress.org/support/plugin/yith-woocommerce-ajax-search\n"
|
8 |
+
"POT-Creation-Date: 2021-12-16 15:58:13+00:00\n"
|
9 |
"MIME-Version: 1.0\n"
|
10 |
"Content-Type: text/plain; charset=utf-8\n"
|
11 |
"Content-Transfer-Encoding: 8bit\n"
|
license.txt
CHANGED
@@ -1,694 +1,694 @@
|
|
1 |
-
Copyright 2013-2021 Your Inspiration Solutions (email : plugins@yithemes.com)
|
2 |
-
|
3 |
-
This program is free software; you can redistribute it and/or modify
|
4 |
-
it under the terms of the GNU General Public License as published by
|
5 |
-
the Free Software Foundation; either version 3 of the License, or
|
6 |
-
(at your option) any later version.
|
7 |
-
|
8 |
-
This program is distributed in the hope that it will be useful,
|
9 |
-
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
10 |
-
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
11 |
-
GNU General Public License for more details.
|
12 |
-
|
13 |
-
You should have received a copy of the GNU General Public License
|
14 |
-
along with this program; if not, write to the Free Software
|
15 |
-
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
16 |
-
|
17 |
-
YITH WooCommerce Ajax Search is released under the GPL
|
18 |
-
|
19 |
-
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
|
20 |
-
|
21 |
-
GNU GENERAL PUBLIC LICENSE
|
22 |
-
Version 3, 29 June 2007
|
23 |
-
|
24 |
-
Copyright © 2007 Free Software Foundation, Inc. <https://fsf.org/>
|
25 |
-
Everyone is permitted to copy and distribute verbatim copies
|
26 |
-
of this license document, but changing it is not allowed.
|
27 |
-
|
28 |
-
Preamble
|
29 |
-
|
30 |
-
The GNU General Public License is a free, copyleft license for
|
31 |
-
software and other kinds of works.
|
32 |
-
|
33 |
-
The licenses for most software and other practical works are designed
|
34 |
-
to take away your freedom to share and change the works. By contrast,
|
35 |
-
the GNU General Public License is intended to guarantee your freedom to
|
36 |
-
share and change all versions of a program--to make sure it remains free
|
37 |
-
software for all its users. We, the Free Software Foundation, use the
|
38 |
-
GNU General Public License for most of our software; it applies also to
|
39 |
-
any other work released this way by its authors. You can apply it to
|
40 |
-
your programs, too.
|
41 |
-
|
42 |
-
When we speak of free software, we are referring to freedom, not
|
43 |
-
price. Our General Public Licenses are designed to make sure that you
|
44 |
-
have the freedom to distribute copies of free software (and charge for
|
45 |
-
them if you wish), that you receive source code or can get it if you
|
46 |
-
want it, that you can change the software or use pieces of it in new
|
47 |
-
free programs, and that you know you can do these things.
|
48 |
-
|
49 |
-
To protect your rights, we need to prevent others from denying you
|
50 |
-
these rights or asking you to surrender the rights. Therefore, you have
|
51 |
-
certain responsibilities if you distribute copies of the software, or if
|
52 |
-
you modify it: responsibilities to respect the freedom of others.
|
53 |
-
|
54 |
-
For example, if you distribute copies of such a program, whether
|
55 |
-
gratis or for a fee, you must pass on to the recipients the same
|
56 |
-
freedoms that you received. You must make sure that they, too, receive
|
57 |
-
or can get the source code. And you must show them these terms so they
|
58 |
-
know their rights.
|
59 |
-
|
60 |
-
Developers that use the GNU GPL protect your rights with two steps:
|
61 |
-
(1) assert copyright on the software, and (2) offer you this License
|
62 |
-
giving you legal permission to copy, distribute and/or modify it.
|
63 |
-
|
64 |
-
For the developers' and authors' protection, the GPL clearly explains
|
65 |
-
that there is no warranty for this free software. For both users' and
|
66 |
-
authors' sake, the GPL requires that modified versions be marked as
|
67 |
-
changed, so that their problems will not be attributed erroneously to
|
68 |
-
authors of previous versions.
|
69 |
-
|
70 |
-
Some devices are designed to deny users access to install or run
|
71 |
-
modified versions of the software inside them, although the manufacturer
|
72 |
-
can do so. This is fundamentally incompatible with the aim of
|
73 |
-
protecting users' freedom to change the software. The systematic
|
74 |
-
pattern of such abuse occurs in the area of products for individuals to
|
75 |
-
use, which is precisely where it is most unacceptable. Therefore, we
|
76 |
-
have designed this version of the GPL to prohibit the practice for those
|
77 |
-
products. If such problems arise substantially in other domains, we
|
78 |
-
stand ready to extend this provision to those domains in future versions
|
79 |
-
of the GPL, as needed to protect the freedom of users.
|
80 |
-
|
81 |
-
Finally, every program is threatened constantly by software patents.
|
82 |
-
States should not allow patents to restrict development and use of
|
83 |
-
software on general-purpose computers, but in those that do, we wish to
|
84 |
-
avoid the special danger that patents applied to a free program could
|
85 |
-
make it effectively proprietary. To prevent this, the GPL assures that
|
86 |
-
patents cannot be used to render the program non-free.
|
87 |
-
|
88 |
-
The precise terms and conditions for copying, distribution and
|
89 |
-
modification follow.
|
90 |
-
|
91 |
-
TERMS AND CONDITIONS
|
92 |
-
|
93 |
-
0. Definitions.
|
94 |
-
|
95 |
-
"This License" refers to version 3 of the GNU General Public License.
|
96 |
-
|
97 |
-
"Copyright" also means copyright-like laws that apply to other kinds of
|
98 |
-
works, such as semiconductor masks.
|
99 |
-
|
100 |
-
"The Program" refers to any copyrightable work licensed under this
|
101 |
-
License. Each licensee is addressed as "you". "Licensees" and
|
102 |
-
"recipients" may be individuals or organizations.
|
103 |
-
|
104 |
-
To "modify" a work means to copy from or adapt all or part of the work
|
105 |
-
in a fashion requiring copyright permission, other than the making of an
|
106 |
-
exact copy. The resulting work is called a "modified version" of the
|
107 |
-
earlier work or a work "based on" the earlier work.
|
108 |
-
|
109 |
-
A "covered work" means either the unmodified Program or a work based
|
110 |
-
on the Program.
|
111 |
-
|
112 |
-
To "propagate" a work means to do anything with it that, without
|
113 |
-
permission, would make you directly or secondarily liable for
|
114 |
-
infringement under applicable copyright law, except executing it on a
|
115 |
-
computer or modifying a private copy. Propagation includes copying,
|
116 |
-
distribution (with or without modification), making available to the
|
117 |
-
public, and in some countries other activities as well.
|
118 |
-
|
119 |
-
To "convey" a work means any kind of propagation that enables other
|
120 |
-
parties to make or receive copies. Mere interaction with a user through
|
121 |
-
a computer network, with no transfer of a copy, is not conveying.
|
122 |
-
|
123 |
-
An interactive user interface displays "Appropriate Legal Notices"
|
124 |
-
to the extent that it includes a convenient and prominently visible
|
125 |
-
feature that (1) displays an appropriate copyright notice, and (2)
|
126 |
-
tells the user that there is no warranty for the work (except to the
|
127 |
-
extent that warranties are provided), that licensees may convey the
|
128 |
-
work under this License, and how to view a copy of this License. If
|
129 |
-
the interface presents a list of user commands or options, such as a
|
130 |
-
menu, a prominent item in the list meets this criterion.
|
131 |
-
|
132 |
-
1. Source Code.
|
133 |
-
|
134 |
-
The "source code" for a work means the preferred form of the work
|
135 |
-
for making modifications to it. "Object code" means any non-source
|
136 |
-
form of a work.
|
137 |
-
|
138 |
-
A "Standard Interface" means an interface that either is an official
|
139 |
-
standard defined by a recognized standards body, or, in the case of
|
140 |
-
interfaces specified for a particular programming language, one that
|
141 |
-
is widely used among developers working in that language.
|
142 |
-
|
143 |
-
The "System Libraries" of an executable work include anything, other
|
144 |
-
than the work as a whole, that (a) is included in the normal form of
|
145 |
-
packaging a Major Component, but which is not part of that Major
|
146 |
-
Component, and (b) serves only to enable use of the work with that
|
147 |
-
Major Component, or to implement a Standard Interface for which an
|
148 |
-
implementation is available to the public in source code form. A
|
149 |
-
"Major Component", in this context, means a major essential component
|
150 |
-
(kernel, window system, and so on) of the specific operating system
|
151 |
-
(if any) on which the executable work runs, or a compiler used to
|
152 |
-
produce the work, or an object code interpreter used to run it.
|
153 |
-
|
154 |
-
The "Corresponding Source" for a work in object code form means all
|
155 |
-
the source code needed to generate, install, and (for an executable
|
156 |
-
work) run the object code and to modify the work, including scripts to
|
157 |
-
control those activities. However, it does not include the work's
|
158 |
-
System Libraries, or general-purpose tools or generally available free
|
159 |
-
programs which are used unmodified in performing those activities but
|
160 |
-
which are not part of the work. For example, Corresponding Source
|
161 |
-
includes interface definition files associated with source files for
|
162 |
-
the work, and the source code for shared libraries and dynamically
|
163 |
-
linked subprograms that the work is specifically designed to require,
|
164 |
-
such as by intimate data communication or control flow between those
|
165 |
-
subprograms and other parts of the work.
|
166 |
-
|
167 |
-
The Corresponding Source need not include anything that users
|
168 |
-
can regenerate automatically from other parts of the Corresponding
|
169 |
-
Source.
|
170 |
-
|
171 |
-
The Corresponding Source for a work in source code form is that
|
172 |
-
same work.
|
173 |
-
|
174 |
-
2. Basic Permissions.
|
175 |
-
|
176 |
-
All rights granted under this License are granted for the term of
|
177 |
-
copyright on the Program, and are irrevocable provided the stated
|
178 |
-
conditions are met. This License explicitly affirms your unlimited
|
179 |
-
permission to run the unmodified Program. The output from running a
|
180 |
-
covered work is covered by this License only if the output, given its
|
181 |
-
content, constitutes a covered work. This License acknowledges your
|
182 |
-
rights of fair use or other equivalent, as provided by copyright law.
|
183 |
-
|
184 |
-
You may make, run and propagate covered works that you do not
|
185 |
-
convey, without conditions so long as your license otherwise remains
|
186 |
-
in force. You may convey covered works to others for the sole purpose
|
187 |
-
of having them make modifications exclusively for you, or provide you
|
188 |
-
with facilities for running those works, provided that you comply with
|
189 |
-
the terms of this License in conveying all material for which you do
|
190 |
-
not control copyright. Those thus making or running the covered works
|
191 |
-
for you must do so exclusively on your behalf, under your direction
|
192 |
-
and control, on terms that prohibit them from making any copies of
|
193 |
-
your copyrighted material outside their relationship with you.
|
194 |
-
|
195 |
-
Conveying under any other circumstances is permitted solely under
|
196 |
-
the conditions stated below. Sublicensing is not allowed; section 10
|
197 |
-
makes it unnecessary.
|
198 |
-
|
199 |
-
3. Protecting Users' Legal Rights From Anti-Circumvention Law.
|
200 |
-
|
201 |
-
No covered work shall be deemed part of an effective technological
|
202 |
-
measure under any applicable law fulfilling obligations under article
|
203 |
-
11 of the WIPO copyright treaty adopted on 20 December 1996, or
|
204 |
-
similar laws prohibiting or restricting circumvention of such
|
205 |
-
measures.
|
206 |
-
|
207 |
-
When you convey a covered work, you waive any legal power to forbid
|
208 |
-
circumvention of technological measures to the extent such circumvention
|
209 |
-
is effected by exercising rights under this License with respect to
|
210 |
-
the covered work, and you disclaim any intention to limit operation or
|
211 |
-
modification of the work as a means of enforcing, against the work's
|
212 |
-
users, your or third parties' legal rights to forbid circumvention of
|
213 |
-
technological measures.
|
214 |
-
|
215 |
-
4. Conveying Verbatim Copies.
|
216 |
-
|
217 |
-
You may convey verbatim copies of the Program's source code as you
|
218 |
-
receive it, in any medium, provided that you conspicuously and
|
219 |
-
appropriately publish on each copy an appropriate copyright notice;
|
220 |
-
keep intact all notices stating that this License and any
|
221 |
-
non-permissive terms added in accord with section 7 apply to the code;
|
222 |
-
keep intact all notices of the absence of any warranty; and give all
|
223 |
-
recipients a copy of this License along with the Program.
|
224 |
-
|
225 |
-
You may charge any price or no price for each copy that you convey,
|
226 |
-
and you may offer support or warranty protection for a fee.
|
227 |
-
|
228 |
-
5. Conveying Modified Source Versions.
|
229 |
-
|
230 |
-
You may convey a work based on the Program, or the modifications to
|
231 |
-
produce it from the Program, in the form of source code under the
|
232 |
-
terms of section 4, provided that you also meet all of these conditions:
|
233 |
-
|
234 |
-
a) The work must carry prominent notices stating that you modified
|
235 |
-
it, and giving a relevant date.
|
236 |
-
|
237 |
-
b) The work must carry prominent notices stating that it is
|
238 |
-
released under this License and any conditions added under section
|
239 |
-
7. This requirement modifies the requirement in section 4 to
|
240 |
-
"keep intact all notices".
|
241 |
-
|
242 |
-
c) You must license the entire work, as a whole, under this
|
243 |
-
License to anyone who comes into possession of a copy. This
|
244 |
-
License will therefore apply, along with any applicable section 7
|
245 |
-
additional terms, to the whole of the work, and all its parts,
|
246 |
-
regardless of how they are packaged. This License gives no
|
247 |
-
permission to license the work in any other way, but it does not
|
248 |
-
invalidate such permission if you have separately received it.
|
249 |
-
|
250 |
-
d) If the work has interactive user interfaces, each must display
|
251 |
-
Appropriate Legal Notices; however, if the Program has interactive
|
252 |
-
interfaces that do not display Appropriate Legal Notices, your
|
253 |
-
work need not make them do so.
|
254 |
-
|
255 |
-
A compilation of a covered work with other separate and independent
|
256 |
-
works, which are not by their nature extensions of the covered work,
|
257 |
-
and which are not combined with it such as to form a larger program,
|
258 |
-
in or on a volume of a storage or distribution medium, is called an
|
259 |
-
"aggregate" if the compilation and its resulting copyright are not
|
260 |
-
used to limit the access or legal rights of the compilation's users
|
261 |
-
beyond what the individual works permit. Inclusion of a covered work
|
262 |
-
in an aggregate does not cause this License to apply to the other
|
263 |
-
parts of the aggregate.
|
264 |
-
|
265 |
-
6. Conveying Non-Source Forms.
|
266 |
-
|
267 |
-
You may convey a covered work in object code form under the terms
|
268 |
-
of sections 4 and 5, provided that you also convey the
|
269 |
-
machine-readable Corresponding Source under the terms of this License,
|
270 |
-
in one of these ways:
|
271 |
-
|
272 |
-
a) Convey the object code in, or embodied in, a physical product
|
273 |
-
(including a physical distribution medium), accompanied by the
|
274 |
-
Corresponding Source fixed on a durable physical medium
|
275 |
-
customarily used for software interchange.
|
276 |
-
|
277 |
-
b) Convey the object code in, or embodied in, a physical product
|
278 |
-
(including a physical distribution medium), accompanied by a
|
279 |
-
written offer, valid for at least three years and valid for as
|
280 |
-
long as you offer spare parts or customer support for that product
|
281 |
-
model, to give anyone who possesses the object code either (1) a
|
282 |
-
copy of the Corresponding Source for all the software in the
|
283 |
-
product that is covered by this License, on a durable physical
|
284 |
-
medium customarily used for software interchange, for a price no
|
285 |
-
more than your reasonable cost of physically performing this
|
286 |
-
conveying of source, or (2) access to copy the
|
287 |
-
Corresponding Source from a network server at no charge.
|
288 |
-
|
289 |
-
c) Convey individual copies of the object code with a copy of the
|
290 |
-
written offer to provide the Corresponding Source. This
|
291 |
-
alternative is allowed only occasionally and noncommercially, and
|
292 |
-
only if you received the object code with such an offer, in accord
|
293 |
-
with subsection 6b.
|
294 |
-
|
295 |
-
d) Convey the object code by offering access from a designated
|
296 |
-
place (gratis or for a charge), and offer equivalent access to the
|
297 |
-
Corresponding Source in the same way through the same place at no
|
298 |
-
further charge. You need not require recipients to copy the
|
299 |
-
Corresponding Source along with the object code. If the place to
|
300 |
-
copy the object code is a network server, the Corresponding Source
|
301 |
-
may be on a different server (operated by you or a third party)
|
302 |
-
that supports equivalent copying facilities, provided you maintain
|
303 |
-
clear directions next to the object code saying where to find the
|
304 |
-
Corresponding Source. Regardless of what server hosts the
|
305 |
-
Corresponding Source, you remain obligated to ensure that it is
|
306 |
-
available for as long as needed to satisfy these requirements.
|
307 |
-
|
308 |
-
e) Convey the object code using peer-to-peer transmission, provided
|
309 |
-
you inform other peers where the object code and Corresponding
|
310 |
-
Source of the work are being offered to the general public at no
|
311 |
-
charge under subsection 6d.
|
312 |
-
|
313 |
-
A separable portion of the object code, whose source code is excluded
|
314 |
-
from the Corresponding Source as a System Library, need not be
|
315 |
-
included in conveying the object code work.
|
316 |
-
|
317 |
-
A "User Product" is either (1) a "consumer product", which means any
|
318 |
-
tangible personal property which is normally used for personal, family,
|
319 |
-
or household purposes, or (2) anything designed or sold for incorporation
|
320 |
-
into a dwelling. In determining whether a product is a consumer product,
|
321 |
-
doubtful cases shall be resolved in favor of coverage. For a particular
|
322 |
-
product received by a particular user, "normally used" refers to a
|
323 |
-
typical or common use of that class of product, regardless of the status
|
324 |
-
of the particular user or of the way in which the particular user
|
325 |
-
actually uses, or expects or is expected to use, the product. A product
|
326 |
-
is a consumer product regardless of whether the product has substantial
|
327 |
-
commercial, industrial or non-consumer uses, unless such uses represent
|
328 |
-
the only significant mode of use of the product.
|
329 |
-
|
330 |
-
"Installation Information" for a User Product means any methods,
|
331 |
-
procedures, authorization keys, or other information required to install
|
332 |
-
and execute modified versions of a covered work in that User Product from
|
333 |
-
a modified version of its Corresponding Source. The information must
|
334 |
-
suffice to ensure that the continued functioning of the modified object
|
335 |
-
code is in no case prevented or interfered with solely because
|
336 |
-
modification has been made.
|
337 |
-
|
338 |
-
If you convey an object code work under this section in, or with, or
|
339 |
-
specifically for use in, a User Product, and the conveying occurs as
|
340 |
-
part of a transaction in which the right of possession and use of the
|
341 |
-
User Product is transferred to the recipient in perpetuity or for a
|
342 |
-
fixed term (regardless of how the transaction is characterized), the
|
343 |
-
Corresponding Source conveyed under this section must be accompanied
|
344 |
-
by the Installation Information. But this requirement does not apply
|
345 |
-
if neither you nor any third party retains the ability to install
|
346 |
-
modified object code on the User Product (for example, the work has
|
347 |
-
been installed in ROM).
|
348 |
-
|
349 |
-
The requirement to provide Installation Information does not include a
|
350 |
-
requirement to continue to provide support service, warranty, or updates
|
351 |
-
for a work that has been modified or installed by the recipient, or for
|
352 |
-
the User Product in which it has been modified or installed. Access to a
|
353 |
-
network may be denied when the modification itself materially and
|
354 |
-
adversely affects the operation of the network or violates the rules and
|
355 |
-
protocols for communication across the network.
|
356 |
-
|
357 |
-
Corresponding Source conveyed, and Installation Information provided,
|
358 |
-
in accord with this section must be in a format that is publicly
|
359 |
-
documented (and with an implementation available to the public in
|
360 |
-
source code form), and must require no special password or key for
|
361 |
-
unpacking, reading or copying.
|
362 |
-
|
363 |
-
7. Additional Terms.
|
364 |
-
|
365 |
-
"Additional permissions" are terms that supplement the terms of this
|
366 |
-
License by making exceptions from one or more of its conditions.
|
367 |
-
Additional permissions that are applicable to the entire Program shall
|
368 |
-
be treated as though they were included in this License, to the extent
|
369 |
-
that they are valid under applicable law. If additional permissions
|
370 |
-
apply only to part of the Program, that part may be used separately
|
371 |
-
under those permissions, but the entire Program remains governed by
|
372 |
-
this License without regard to the additional permissions.
|
373 |
-
|
374 |
-
When you convey a copy of a covered work, you may at your option
|
375 |
-
remove any additional permissions from that copy, or from any part of
|
376 |
-
it. (Additional permissions may be written to require their own
|
377 |
-
removal in certain cases when you modify the work.) You may place
|
378 |
-
additional permissions on material, added by you to a covered work,
|
379 |
-
for which you have or can give appropriate copyright permission.
|
380 |
-
|
381 |
-
Notwithstanding any other provision of this License, for material you
|
382 |
-
add to a covered work, you may (if authorized by the copyright holders of
|
383 |
-
that material) supplement the terms of this License with terms:
|
384 |
-
|
385 |
-
a) Disclaiming warranty or limiting liability differently from the
|
386 |
-
terms of sections 15 and 16 of this License; or
|
387 |
-
|
388 |
-
b) Requiring preservation of specified reasonable legal notices or
|
389 |
-
author attributions in that material or in the Appropriate Legal
|
390 |
-
Notices displayed by works containing it; or
|
391 |
-
|
392 |
-
c) Prohibiting misrepresentation of the origin of that material, or
|
393 |
-
requiring that modified versions of such material be marked in
|
394 |
-
reasonable ways as different from the original version; or
|
395 |
-
|
396 |
-
d) Limiting the use for publicity purposes of names of licensors or
|
397 |
-
authors of the material; or
|
398 |
-
|
399 |
-
e) Declining to grant rights under trademark law for use of some
|
400 |
-
trade names, trademarks, or service marks; or
|
401 |
-
|
402 |
-
f) Requiring indemnification of licensors and authors of that
|
403 |
-
material by anyone who conveys the material (or modified versions of
|
404 |
-
it) with contractual assumptions of liability to the recipient, for
|
405 |
-
any liability that these contractual assumptions directly impose on
|
406 |
-
those licensors and authors.
|
407 |
-
|
408 |
-
All other non-permissive additional terms are considered "further
|
409 |
-
restrictions" within the meaning of section 10. If the Program as you
|
410 |
-
received it, or any part of it, contains a notice stating that it is
|
411 |
-
governed by this License along with a term that is a further
|
412 |
-
restriction, you may remove that term. If a license document contains
|
413 |
-
a further restriction but permits relicensing or conveying under this
|
414 |
-
License, you may add to a covered work material governed by the terms
|
415 |
-
of that license document, provided that the further restriction does
|
416 |
-
not survive such relicensing or conveying.
|
417 |
-
|
418 |
-
If you add terms to a covered work in accord with this section, you
|
419 |
-
must place, in the relevant source files, a statement of the
|
420 |
-
additional terms that apply to those files, or a notice indicating
|
421 |
-
where to find the applicable terms.
|
422 |
-
|
423 |
-
Additional terms, permissive or non-permissive, may be stated in the
|
424 |
-
form of a separately written license, or stated as exceptions;
|
425 |
-
the above requirements apply either way.
|
426 |
-
|
427 |
-
8. Termination.
|
428 |
-
|
429 |
-
You may not propagate or modify a covered work except as expressly
|
430 |
-
provided under this License. Any attempt otherwise to propagate or
|
431 |
-
modify it is void, and will automatically terminate your rights under
|
432 |
-
this License (including any patent licenses granted under the third
|
433 |
-
paragraph of section 11).
|
434 |
-
|
435 |
-
However, if you cease all violation of this License, then your
|
436 |
-
license from a particular copyright holder is reinstated (a)
|
437 |
-
provisionally, unless and until the copyright holder explicitly and
|
438 |
-
finally terminates your license, and (b) permanently, if the copyright
|
439 |
-
holder fails to notify you of the violation by some reasonable means
|
440 |
-
prior to 60 days after the cessation.
|
441 |
-
|
442 |
-
Moreover, your license from a particular copyright holder is
|
443 |
-
reinstated permanently if the copyright holder notifies you of the
|
444 |
-
violation by some reasonable means, this is the first time you have
|
445 |
-
received notice of violation of this License (for any work) from that
|
446 |
-
copyright holder, and you cure the violation prior to 30 days after
|
447 |
-
your receipt of the notice.
|
448 |
-
|
449 |
-
Termination of your rights under this section does not terminate the
|
450 |
-
licenses of parties who have received copies or rights from you under
|
451 |
-
this License. If your rights have been terminated and not permanently
|
452 |
-
reinstated, you do not qualify to receive new licenses for the same
|
453 |
-
material under section 10.
|
454 |
-
|
455 |
-
9. Acceptance Not Required for Having Copies.
|
456 |
-
|
457 |
-
You are not required to accept this License in order to receive or
|
458 |
-
run a copy of the Program. Ancillary propagation of a covered work
|
459 |
-
occurring solely as a consequence of using peer-to-peer transmission
|
460 |
-
to receive a copy likewise does not require acceptance. However,
|
461 |
-
nothing other than this License grants you permission to propagate or
|
462 |
-
modify any covered work. These actions infringe copyright if you do
|
463 |
-
not accept this License. Therefore, by modifying or propagating a
|
464 |
-
covered work, you indicate your acceptance of this License to do so.
|
465 |
-
|
466 |
-
10. Automatic Licensing of Downstream Recipients.
|
467 |
-
|
468 |
-
Each time you convey a covered work, the recipient automatically
|
469 |
-
receives a license from the original licensors, to run, modify and
|
470 |
-
propagate that work, subject to this License. You are not responsible
|
471 |
-
for enforcing compliance by third parties with this License.
|
472 |
-
|
473 |
-
An "entity transaction" is a transaction transferring control of an
|
474 |
-
organization, or substantially all assets of one, or subdividing an
|
475 |
-
organization, or merging organizations. If propagation of a covered
|
476 |
-
work results from an entity transaction, each party to that
|
477 |
-
transaction who receives a copy of the work also receives whatever
|
478 |
-
licenses to the work the party's predecessor in interest had or could
|
479 |
-
give under the previous paragraph, plus a right to possession of the
|
480 |
-
Corresponding Source of the work from the predecessor in interest, if
|
481 |
-
the predecessor has it or can get it with reasonable efforts.
|
482 |
-
|
483 |
-
You may not impose any further restrictions on the exercise of the
|
484 |
-
rights granted or affirmed under this License. For example, you may
|
485 |
-
not impose a license fee, royalty, or other charge for exercise of
|
486 |
-
rights granted under this License, and you may not initiate litigation
|
487 |
-
(including a cross-claim or counterclaim in a lawsuit) alleging that
|
488 |
-
any patent claim is infringed by making, using, selling, offering for
|
489 |
-
sale, or importing the Program or any portion of it.
|
490 |
-
|
491 |
-
11. Patents.
|
492 |
-
|
493 |
-
A "contributor" is a copyright holder who authorizes use under this
|
494 |
-
License of the Program or a work on which the Program is based. The
|
495 |
-
work thus licensed is called the contributor's "contributor version".
|
496 |
-
|
497 |
-
A contributor's "essential patent claims" are all patent claims
|
498 |
-
owned or controlled by the contributor, whether already acquired or
|
499 |
-
hereafter acquired, that would be infringed by some manner, permitted
|
500 |
-
by this License, of making, using, or selling its contributor version,
|
501 |
-
but do not include claims that would be infringed only as a
|
502 |
-
consequence of further modification of the contributor version. For
|
503 |
-
purposes of this definition, "control" includes the right to grant
|
504 |
-
patent sublicenses in a manner consistent with the requirements of
|
505 |
-
this License.
|
506 |
-
|
507 |
-
Each contributor grants you a non-exclusive, worldwide, royalty-free
|
508 |
-
patent license under the contributor's essential patent claims, to
|
509 |
-
make, use, sell, offer for sale, import and otherwise run, modify and
|
510 |
-
propagate the contents of its contributor version.
|
511 |
-
|
512 |
-
In the following three paragraphs, a "patent license" is any express
|
513 |
-
agreement or commitment, however denominated, not to enforce a patent
|
514 |
-
(such as an express permission to practice a patent or covenant not to
|
515 |
-
sue for patent infringement). To "grant" such a patent license to a
|
516 |
-
party means to make such an agreement or commitment not to enforce a
|
517 |
-
patent against the party.
|
518 |
-
|
519 |
-
If you convey a covered work, knowingly relying on a patent license,
|
520 |
-
and the Corresponding Source of the work is not available for anyone
|
521 |
-
to copy, free of charge and under the terms of this License, through a
|
522 |
-
publicly available network server or other readily accessible means,
|
523 |
-
then you must either (1) cause the Corresponding Source to be so
|
524 |
-
available, or (2) arrange to deprive yourself of the benefit of the
|
525 |
-
patent license for this particular work, or (3) arrange, in a manner
|
526 |
-
consistent with the requirements of this License, to extend the patent
|
527 |
-
license to downstream recipients. "Knowingly relying" means you have
|
528 |
-
actual knowledge that, but for the patent license, your conveying the
|
529 |
-
covered work in a country, or your recipient's use of the covered work
|
530 |
-
in a country, would infringe one or more identifiable patents in that
|
531 |
-
country that you have reason to believe are valid.
|
532 |
-
|
533 |
-
If, pursuant to or in connection with a single transaction or
|
534 |
-
arrangement, you convey, or propagate by procuring conveyance of, a
|
535 |
-
covered work, and grant a patent license to some of the parties
|
536 |
-
receiving the covered work authorizing them to use, propagate, modify
|
537 |
-
or convey a specific copy of the covered work, then the patent license
|
538 |
-
you grant is automatically extended to all recipients of the covered
|
539 |
-
work and works based on it.
|
540 |
-
|
541 |
-
A patent license is "discriminatory" if it does not include within
|
542 |
-
the scope of its coverage, prohibits the exercise of, or is
|
543 |
-
conditioned on the non-exercise of one or more of the rights that are
|
544 |
-
specifically granted under this License. You may not convey a covered
|
545 |
-
work if you are a party to an arrangement with a third party that is
|
546 |
-
in the business of distributing software, under which you make payment
|
547 |
-
to the third party based on the extent of your activity of conveying
|
548 |
-
the work, and under which the third party grants, to any of the
|
549 |
-
parties who would receive the covered work from you, a discriminatory
|
550 |
-
patent license (a) in connection with copies of the covered work
|
551 |
-
conveyed by you (or copies made from those copies), or (b) primarily
|
552 |
-
for and in connection with specific products or compilations that
|
553 |
-
contain the covered work, unless you entered into that arrangement,
|
554 |
-
or that patent license was granted, prior to 28 March 2007.
|
555 |
-
|
556 |
-
Nothing in this License shall be construed as excluding or limiting
|
557 |
-
any implied license or other defenses to infringement that may
|
558 |
-
otherwise be available to you under applicable patent law.
|
559 |
-
|
560 |
-
12. No Surrender of Others' Freedom.
|
561 |
-
|
562 |
-
If conditions are imposed on you (whether by court order, agreement or
|
563 |
-
otherwise) that contradict the conditions of this License, they do not
|
564 |
-
excuse you from the conditions of this License. If you cannot convey a
|
565 |
-
covered work so as to satisfy simultaneously your obligations under this
|
566 |
-
License and any other pertinent obligations, then as a consequence you may
|
567 |
-
not convey it at all. For example, if you agree to terms that obligate you
|
568 |
-
to collect a royalty for further conveying from those to whom you convey
|
569 |
-
the Program, the only way you could satisfy both those terms and this
|
570 |
-
License would be to refrain entirely from conveying the Program.
|
571 |
-
|
572 |
-
13. Use with the GNU Affero General Public License.
|
573 |
-
|
574 |
-
Notwithstanding any other provision of this License, you have
|
575 |
-
permission to link or combine any covered work with a work licensed
|
576 |
-
under version 3 of the GNU Affero General Public License into a single
|
577 |
-
combined work, and to convey the resulting work. The terms of this
|
578 |
-
License will continue to apply to the part which is the covered work,
|
579 |
-
but the special requirements of the GNU Affero General Public License,
|
580 |
-
section 13, concerning interaction through a network will apply to the
|
581 |
-
combination as such.
|
582 |
-
|
583 |
-
14. Revised Versions of this License.
|
584 |
-
|
585 |
-
The Free Software Foundation may publish revised and/or new versions of
|
586 |
-
the GNU General Public License from time to time. Such new versions will
|
587 |
-
be similar in spirit to the present version, but may differ in detail to
|
588 |
-
address new problems or concerns.
|
589 |
-
|
590 |
-
Each version is given a distinguishing version number. If the
|
591 |
-
Program specifies that a certain numbered version of the GNU General
|
592 |
-
Public License "or any later version" applies to it, you have the
|
593 |
-
option of following the terms and conditions either of that numbered
|
594 |
-
version or of any later version published by the Free Software
|
595 |
-
Foundation. If the Program does not specify a version number of the
|
596 |
-
GNU General Public License, you may choose any version ever published
|
597 |
-
by the Free Software Foundation.
|
598 |
-
|
599 |
-
If the Program specifies that a proxy can decide which future
|
600 |
-
versions of the GNU General Public License can be used, that proxy's
|
601 |
-
public statement of acceptance of a version permanently authorizes you
|
602 |
-
to choose that version for the Program.
|
603 |
-
|
604 |
-
Later license versions may give you additional or different
|
605 |
-
permissions. However, no additional obligations are imposed on any
|
606 |
-
author or copyright holder as a result of your choosing to follow a
|
607 |
-
later version.
|
608 |
-
|
609 |
-
15. Disclaimer of Warranty.
|
610 |
-
|
611 |
-
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
|
612 |
-
APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
|
613 |
-
HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
|
614 |
-
OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
|
615 |
-
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
616 |
-
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
|
617 |
-
IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
|
618 |
-
ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
|
619 |
-
|
620 |
-
16. Limitation of Liability.
|
621 |
-
|
622 |
-
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
623 |
-
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
|
624 |
-
THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
|
625 |
-
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
|
626 |
-
USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
|
627 |
-
DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
|
628 |
-
PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
|
629 |
-
EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
|
630 |
-
SUCH DAMAGES.
|
631 |
-
|
632 |
-
17. Interpretation of Sections 15 and 16.
|
633 |
-
|
634 |
-
If the disclaimer of warranty and limitation of liability provided
|
635 |
-
above cannot be given local legal effect according to their terms,
|
636 |
-
reviewing courts shall apply local law that most closely approximates
|
637 |
-
an absolute waiver of all civil liability in connection with the
|
638 |
-
Program, unless a warranty or assumption of liability accompanies a
|
639 |
-
copy of the Program in return for a fee.
|
640 |
-
|
641 |
-
END OF TERMS AND CONDITIONS
|
642 |
-
|
643 |
-
How to Apply These Terms to Your New Programs
|
644 |
-
|
645 |
-
If you develop a new program, and you want it to be of the greatest
|
646 |
-
possible use to the public, the best way to achieve this is to make it
|
647 |
-
free software which everyone can redistribute and change under these terms.
|
648 |
-
|
649 |
-
To do so, attach the following notices to the program. It is safest
|
650 |
-
to attach them to the start of each source file to most effectively
|
651 |
-
state the exclusion of warranty; and each file should have at least
|
652 |
-
the "copyright" line and a pointer to where the full notice is found.
|
653 |
-
|
654 |
-
<one line to give the program's name and a brief idea of what it does.>
|
655 |
-
Copyright © <year> <name of author>
|
656 |
-
|
657 |
-
This program is free software: you can redistribute it and/or modify
|
658 |
-
it under the terms of the GNU General Public License as published by
|
659 |
-
the Free Software Foundation, either version 3 of the License, or
|
660 |
-
(at your option) any later version.
|
661 |
-
|
662 |
-
This program is distributed in the hope that it will be useful,
|
663 |
-
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
664 |
-
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
665 |
-
GNU General Public License for more details.
|
666 |
-
|
667 |
-
You should have received a copy of the GNU General Public License
|
668 |
-
along with this program. If not, see <https://www.gnu.org/licenses/>.
|
669 |
-
|
670 |
-
Also add information on how to contact you by electronic and paper mail.
|
671 |
-
|
672 |
-
If the program does terminal interaction, make it output a short
|
673 |
-
notice like this when it starts in an interactive mode:
|
674 |
-
|
675 |
-
<program> Copyright © <year> <name of author>
|
676 |
-
This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
677 |
-
This is free software, and you are welcome to redistribute it
|
678 |
-
under certain conditions; type `show c' for details.
|
679 |
-
|
680 |
-
The hypothetical commands `show w' and `show c' should show the appropriate
|
681 |
-
parts of the General Public License. Of course, your program's commands
|
682 |
-
might be different; for a GUI interface, you would use an "about box".
|
683 |
-
|
684 |
-
You should also get your employer (if you work as a programmer) or school,
|
685 |
-
if any, to sign a "copyright disclaimer" for the program, if necessary.
|
686 |
-
For more information on this, and how to apply and follow the GNU GPL, see
|
687 |
-
<https://www.gnu.org/licenses/>.
|
688 |
-
|
689 |
-
The GNU General Public License does not permit incorporating your program
|
690 |
-
into proprietary programs. If your program is a subroutine library, you
|
691 |
-
may consider it more useful to permit linking proprietary applications with
|
692 |
-
the library. If this is what you want to do, use the GNU Lesser General
|
693 |
-
Public License instead of this License. But first, please read
|
694 |
<https://www.gnu.org/philosophy/why-not-lgpl.html>.
|
1 |
+
Copyright 2013-2021 Your Inspiration Solutions (email : plugins@yithemes.com)
|
2 |
+
|
3 |
+
This program is free software; you can redistribute it and/or modify
|
4 |
+
it under the terms of the GNU General Public License as published by
|
5 |
+
the Free Software Foundation; either version 3 of the License, or
|
6 |
+
(at your option) any later version.
|
7 |
+
|
8 |
+
This program is distributed in the hope that it will be useful,
|
9 |
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
10 |
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
11 |
+
GNU General Public License for more details.
|
12 |
+
|
13 |
+
You should have received a copy of the GNU General Public License
|
14 |
+
along with this program; if not, write to the Free Software
|
15 |
+
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
16 |
+
|
17 |
+
YITH WooCommerce Ajax Search is released under the GPL
|
18 |
+
|
19 |
+
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
|
20 |
+
|
21 |
+
GNU GENERAL PUBLIC LICENSE
|
22 |
+
Version 3, 29 June 2007
|
23 |
+
|
24 |
+
Copyright © 2007 Free Software Foundation, Inc. <https://fsf.org/>
|
25 |
+
Everyone is permitted to copy and distribute verbatim copies
|
26 |
+
of this license document, but changing it is not allowed.
|
27 |
+
|
28 |
+
Preamble
|
29 |
+
|
30 |
+
The GNU General Public License is a free, copyleft license for
|
31 |
+
software and other kinds of works.
|
32 |
+
|
33 |
+
The licenses for most software and other practical works are designed
|
34 |
+
to take away your freedom to share and change the works. By contrast,
|
35 |
+
the GNU General Public License is intended to guarantee your freedom to
|
36 |
+
share and change all versions of a program--to make sure it remains free
|
37 |
+
software for all its users. We, the Free Software Foundation, use the
|
38 |
+
GNU General Public License for most of our software; it applies also to
|
39 |
+
any other work released this way by its authors. You can apply it to
|
40 |
+
your programs, too.
|
41 |
+
|
42 |
+
When we speak of free software, we are referring to freedom, not
|
43 |
+
price. Our General Public Licenses are designed to make sure that you
|
44 |
+
have the freedom to distribute copies of free software (and charge for
|
45 |
+
them if you wish), that you receive source code or can get it if you
|
46 |
+
want it, that you can change the software or use pieces of it in new
|
47 |
+
free programs, and that you know you can do these things.
|
48 |
+
|
49 |
+
To protect your rights, we need to prevent others from denying you
|
50 |
+
these rights or asking you to surrender the rights. Therefore, you have
|
51 |
+
certain responsibilities if you distribute copies of the software, or if
|
52 |
+
you modify it: responsibilities to respect the freedom of others.
|
53 |
+
|
54 |
+
For example, if you distribute copies of such a program, whether
|
55 |
+
gratis or for a fee, you must pass on to the recipients the same
|
56 |
+
freedoms that you received. You must make sure that they, too, receive
|
57 |
+
or can get the source code. And you must show them these terms so they
|
58 |
+
know their rights.
|
59 |
+
|
60 |
+
Developers that use the GNU GPL protect your rights with two steps:
|
61 |
+
(1) assert copyright on the software, and (2) offer you this License
|
62 |
+
giving you legal permission to copy, distribute and/or modify it.
|
63 |
+
|
64 |
+
For the developers' and authors' protection, the GPL clearly explains
|
65 |
+
that there is no warranty for this free software. For both users' and
|
66 |
+
authors' sake, the GPL requires that modified versions be marked as
|
67 |
+
changed, so that their problems will not be attributed erroneously to
|
68 |
+
authors of previous versions.
|
69 |
+
|
70 |
+
Some devices are designed to deny users access to install or run
|
71 |
+
modified versions of the software inside them, although the manufacturer
|
72 |
+
can do so. This is fundamentally incompatible with the aim of
|
73 |
+
protecting users' freedom to change the software. The systematic
|
74 |
+
pattern of such abuse occurs in the area of products for individuals to
|
75 |
+
use, which is precisely where it is most unacceptable. Therefore, we
|
76 |
+
have designed this version of the GPL to prohibit the practice for those
|
77 |
+
products. If such problems arise substantially in other domains, we
|
78 |
+
stand ready to extend this provision to those domains in future versions
|
79 |
+
of the GPL, as needed to protect the freedom of users.
|
80 |
+
|
81 |
+
Finally, every program is threatened constantly by software patents.
|
82 |
+
States should not allow patents to restrict development and use of
|
83 |
+
software on general-purpose computers, but in those that do, we wish to
|
84 |
+
avoid the special danger that patents applied to a free program could
|
85 |
+
make it effectively proprietary. To prevent this, the GPL assures that
|
86 |
+
patents cannot be used to render the program non-free.
|
87 |
+
|
88 |
+
The precise terms and conditions for copying, distribution and
|
89 |
+
modification follow.
|
90 |
+
|
91 |
+
TERMS AND CONDITIONS
|
92 |
+
|
93 |
+
0. Definitions.
|
94 |
+
|
95 |
+
"This License" refers to version 3 of the GNU General Public License.
|
96 |
+
|
97 |
+
"Copyright" also means copyright-like laws that apply to other kinds of
|
98 |
+
works, such as semiconductor masks.
|
99 |
+
|
100 |
+
"The Program" refers to any copyrightable work licensed under this
|
101 |
+
License. Each licensee is addressed as "you". "Licensees" and
|
102 |
+
"recipients" may be individuals or organizations.
|
103 |
+
|
104 |
+
To "modify" a work means to copy from or adapt all or part of the work
|
105 |
+
in a fashion requiring copyright permission, other than the making of an
|
106 |
+
exact copy. The resulting work is called a "modified version" of the
|
107 |
+
earlier work or a work "based on" the earlier work.
|
108 |
+
|
109 |
+
A "covered work" means either the unmodified Program or a work based
|
110 |
+
on the Program.
|
111 |
+
|
112 |
+
To "propagate" a work means to do anything with it that, without
|
113 |
+
permission, would make you directly or secondarily liable for
|
114 |
+
infringement under applicable copyright law, except executing it on a
|
115 |
+
computer or modifying a private copy. Propagation includes copying,
|
116 |
+
distribution (with or without modification), making available to the
|
117 |
+
public, and in some countries other activities as well.
|
118 |
+
|
119 |
+
To "convey" a work means any kind of propagation that enables other
|
120 |
+
parties to make or receive copies. Mere interaction with a user through
|
121 |
+
a computer network, with no transfer of a copy, is not conveying.
|
122 |
+
|
123 |
+
An interactive user interface displays "Appropriate Legal Notices"
|
124 |
+
to the extent that it includes a convenient and prominently visible
|
125 |
+
feature that (1) displays an appropriate copyright notice, and (2)
|
126 |
+
tells the user that there is no warranty for the work (except to the
|
127 |
+
extent that warranties are provided), that licensees may convey the
|
128 |
+
work under this License, and how to view a copy of this License. If
|
129 |
+
the interface presents a list of user commands or options, such as a
|
130 |
+
menu, a prominent item in the list meets this criterion.
|
131 |
+
|
132 |
+
1. Source Code.
|
133 |
+
|
134 |
+
The "source code" for a work means the preferred form of the work
|
135 |
+
for making modifications to it. "Object code" means any non-source
|
136 |
+
form of a work.
|
137 |
+
|
138 |
+
A "Standard Interface" means an interface that either is an official
|
139 |
+
standard defined by a recognized standards body, or, in the case of
|
140 |
+
interfaces specified for a particular programming language, one that
|
141 |
+
is widely used among developers working in that language.
|
142 |
+
|
143 |
+
The "System Libraries" of an executable work include anything, other
|
144 |
+
than the work as a whole, that (a) is included in the normal form of
|
145 |
+
packaging a Major Component, but which is not part of that Major
|
146 |
+
Component, and (b) serves only to enable use of the work with that
|
147 |
+
Major Component, or to implement a Standard Interface for which an
|
148 |
+
implementation is available to the public in source code form. A
|
149 |
+
"Major Component", in this context, means a major essential component
|
150 |
+
(kernel, window system, and so on) of the specific operating system
|
151 |
+
(if any) on which the executable work runs, or a compiler used to
|
152 |
+
produce the work, or an object code interpreter used to run it.
|
153 |
+
|
154 |
+
The "Corresponding Source" for a work in object code form means all
|
155 |
+
the source code needed to generate, install, and (for an executable
|
156 |
+
work) run the object code and to modify the work, including scripts to
|
157 |
+
control those activities. However, it does not include the work's
|
158 |
+
System Libraries, or general-purpose tools or generally available free
|
159 |
+
programs which are used unmodified in performing those activities but
|
160 |
+
which are not part of the work. For example, Corresponding Source
|
161 |
+
includes interface definition files associated with source files for
|
162 |
+
the work, and the source code for shared libraries and dynamically
|
163 |
+
linked subprograms that the work is specifically designed to require,
|
164 |
+
such as by intimate data communication or control flow between those
|
165 |
+
subprograms and other parts of the work.
|
166 |
+
|
167 |
+
The Corresponding Source need not include anything that users
|
168 |
+
can regenerate automatically from other parts of the Corresponding
|
169 |
+
Source.
|
170 |
+
|
171 |
+
The Corresponding Source for a work in source code form is that
|
172 |
+
same work.
|
173 |
+
|
174 |
+
2. Basic Permissions.
|
175 |
+
|
176 |
+
All rights granted under this License are granted for the term of
|
177 |
+
copyright on the Program, and are irrevocable provided the stated
|
178 |
+
conditions are met. This License explicitly affirms your unlimited
|
179 |
+
permission to run the unmodified Program. The output from running a
|
180 |
+
covered work is covered by this License only if the output, given its
|
181 |
+
content, constitutes a covered work. This License acknowledges your
|
182 |
+
rights of fair use or other equivalent, as provided by copyright law.
|
183 |
+
|
184 |
+
You may make, run and propagate covered works that you do not
|
185 |
+
convey, without conditions so long as your license otherwise remains
|
186 |
+
in force. You may convey covered works to others for the sole purpose
|
187 |
+
of having them make modifications exclusively for you, or provide you
|
188 |
+
with facilities for running those works, provided that you comply with
|
189 |
+
the terms of this License in conveying all material for which you do
|
190 |
+
not control copyright. Those thus making or running the covered works
|
191 |
+
for you must do so exclusively on your behalf, under your direction
|
192 |
+
and control, on terms that prohibit them from making any copies of
|
193 |
+
your copyrighted material outside their relationship with you.
|
194 |
+
|
195 |
+
Conveying under any other circumstances is permitted solely under
|
196 |
+
the conditions stated below. Sublicensing is not allowed; section 10
|
197 |
+
makes it unnecessary.
|
198 |
+
|
199 |
+
3. Protecting Users' Legal Rights From Anti-Circumvention Law.
|
200 |
+
|
201 |
+
No covered work shall be deemed part of an effective technological
|
202 |
+
measure under any applicable law fulfilling obligations under article
|
203 |
+
11 of the WIPO copyright treaty adopted on 20 December 1996, or
|
204 |
+
similar laws prohibiting or restricting circumvention of such
|
205 |
+
measures.
|
206 |
+
|
207 |
+
When you convey a covered work, you waive any legal power to forbid
|
208 |
+
circumvention of technological measures to the extent such circumvention
|
209 |
+
is effected by exercising rights under this License with respect to
|
210 |
+
the covered work, and you disclaim any intention to limit operation or
|
211 |
+
modification of the work as a means of enforcing, against the work's
|
212 |
+
users, your or third parties' legal rights to forbid circumvention of
|
213 |
+
technological measures.
|
214 |
+
|
215 |
+
4. Conveying Verbatim Copies.
|
216 |
+
|
217 |
+
You may convey verbatim copies of the Program's source code as you
|
218 |
+
receive it, in any medium, provided that you conspicuously and
|
219 |
+
appropriately publish on each copy an appropriate copyright notice;
|
220 |
+
keep intact all notices stating that this License and any
|
221 |
+
non-permissive terms added in accord with section 7 apply to the code;
|
222 |
+
keep intact all notices of the absence of any warranty; and give all
|
223 |
+
recipients a copy of this License along with the Program.
|
224 |
+
|
225 |
+
You may charge any price or no price for each copy that you convey,
|
226 |
+
and you may offer support or warranty protection for a fee.
|
227 |
+
|
228 |
+
5. Conveying Modified Source Versions.
|
229 |
+
|
230 |
+
You may convey a work based on the Program, or the modifications to
|
231 |
+
produce it from the Program, in the form of source code under the
|
232 |
+
terms of section 4, provided that you also meet all of these conditions:
|
233 |
+
|
234 |
+
a) The work must carry prominent notices stating that you modified
|
235 |
+
it, and giving a relevant date.
|
236 |
+
|
237 |
+
b) The work must carry prominent notices stating that it is
|
238 |
+
released under this License and any conditions added under section
|
239 |
+
7. This requirement modifies the requirement in section 4 to
|
240 |
+
"keep intact all notices".
|
241 |
+
|
242 |
+
c) You must license the entire work, as a whole, under this
|
243 |
+
License to anyone who comes into possession of a copy. This
|
244 |
+
License will therefore apply, along with any applicable section 7
|
245 |
+
additional terms, to the whole of the work, and all its parts,
|
246 |
+
regardless of how they are packaged. This License gives no
|
247 |
+
permission to license the work in any other way, but it does not
|
248 |
+
invalidate such permission if you have separately received it.
|
249 |
+
|
250 |
+
d) If the work has interactive user interfaces, each must display
|
251 |
+
Appropriate Legal Notices; however, if the Program has interactive
|
252 |
+
interfaces that do not display Appropriate Legal Notices, your
|
253 |
+
work need not make them do so.
|
254 |
+
|
255 |
+
A compilation of a covered work with other separate and independent
|
256 |
+
works, which are not by their nature extensions of the covered work,
|
257 |
+
and which are not combined with it such as to form a larger program,
|
258 |
+
in or on a volume of a storage or distribution medium, is called an
|
259 |
+
"aggregate" if the compilation and its resulting copyright are not
|
260 |
+
used to limit the access or legal rights of the compilation's users
|
261 |
+
beyond what the individual works permit. Inclusion of a covered work
|
262 |
+
in an aggregate does not cause this License to apply to the other
|
263 |
+
parts of the aggregate.
|
264 |
+
|
265 |
+
6. Conveying Non-Source Forms.
|
266 |
+
|
267 |
+
You may convey a covered work in object code form under the terms
|
268 |
+
of sections 4 and 5, provided that you also convey the
|
269 |
+
machine-readable Corresponding Source under the terms of this License,
|
270 |
+
in one of these ways:
|
271 |
+
|
272 |
+
a) Convey the object code in, or embodied in, a physical product
|
273 |
+
(including a physical distribution medium), accompanied by the
|
274 |
+
Corresponding Source fixed on a durable physical medium
|
275 |
+
customarily used for software interchange.
|
276 |
+
|
277 |
+
b) Convey the object code in, or embodied in, a physical product
|
278 |
+
(including a physical distribution medium), accompanied by a
|
279 |
+
written offer, valid for at least three years and valid for as
|
280 |
+
long as you offer spare parts or customer support for that product
|
281 |
+
model, to give anyone who possesses the object code either (1) a
|
282 |
+
copy of the Corresponding Source for all the software in the
|
283 |
+
product that is covered by this License, on a durable physical
|
284 |
+
medium customarily used for software interchange, for a price no
|
285 |
+
more than your reasonable cost of physically performing this
|
286 |
+
conveying of source, or (2) access to copy the
|
287 |
+
Corresponding Source from a network server at no charge.
|
288 |
+
|
289 |
+
c) Convey individual copies of the object code with a copy of the
|
290 |
+
written offer to provide the Corresponding Source. This
|
291 |
+
alternative is allowed only occasionally and noncommercially, and
|
292 |
+
only if you received the object code with such an offer, in accord
|
293 |
+
with subsection 6b.
|
294 |
+
|
295 |
+
d) Convey the object code by offering access from a designated
|
296 |
+
place (gratis or for a charge), and offer equivalent access to the
|
297 |
+
Corresponding Source in the same way through the same place at no
|
298 |
+
further charge. You need not require recipients to copy the
|
299 |
+
Corresponding Source along with the object code. If the place to
|
300 |
+
copy the object code is a network server, the Corresponding Source
|
301 |
+
may be on a different server (operated by you or a third party)
|
302 |
+
that supports equivalent copying facilities, provided you maintain
|
303 |
+
clear directions next to the object code saying where to find the
|
304 |
+
Corresponding Source. Regardless of what server hosts the
|
305 |
+
Corresponding Source, you remain obligated to ensure that it is
|
306 |
+
available for as long as needed to satisfy these requirements.
|
307 |
+
|
308 |
+
e) Convey the object code using peer-to-peer transmission, provided
|
309 |
+
you inform other peers where the object code and Corresponding
|
310 |
+
Source of the work are being offered to the general public at no
|
311 |
+
charge under subsection 6d.
|
312 |
+
|
313 |
+
A separable portion of the object code, whose source code is excluded
|
314 |
+
from the Corresponding Source as a System Library, need not be
|
315 |
+
included in conveying the object code work.
|
316 |
+
|
317 |
+
A "User Product" is either (1) a "consumer product", which means any
|
318 |
+
tangible personal property which is normally used for personal, family,
|
319 |
+
or household purposes, or (2) anything designed or sold for incorporation
|
320 |
+
into a dwelling. In determining whether a product is a consumer product,
|
321 |
+
doubtful cases shall be resolved in favor of coverage. For a particular
|
322 |
+
product received by a particular user, "normally used" refers to a
|
323 |
+
typical or common use of that class of product, regardless of the status
|
324 |
+
of the particular user or of the way in which the particular user
|
325 |
+
actually uses, or expects or is expected to use, the product. A product
|
326 |
+
is a consumer product regardless of whether the product has substantial
|
327 |
+
commercial, industrial or non-consumer uses, unless such uses represent
|
328 |
+
the only significant mode of use of the product.
|
329 |
+
|
330 |
+
"Installation Information" for a User Product means any methods,
|
331 |
+
procedures, authorization keys, or other information required to install
|
332 |
+
and execute modified versions of a covered work in that User Product from
|
333 |
+
a modified version of its Corresponding Source. The information must
|
334 |
+
suffice to ensure that the continued functioning of the modified object
|
335 |
+
code is in no case prevented or interfered with solely because
|
336 |
+
modification has been made.
|
337 |
+
|
338 |
+
If you convey an object code work under this section in, or with, or
|
339 |
+
specifically for use in, a User Product, and the conveying occurs as
|
340 |
+
part of a transaction in which the right of possession and use of the
|
341 |
+
User Product is transferred to the recipient in perpetuity or for a
|
342 |
+
fixed term (regardless of how the transaction is characterized), the
|
343 |
+
Corresponding Source conveyed under this section must be accompanied
|
344 |
+
by the Installation Information. But this requirement does not apply
|
345 |
+
if neither you nor any third party retains the ability to install
|
346 |
+
modified object code on the User Product (for example, the work has
|
347 |
+
been installed in ROM).
|
348 |
+
|
349 |
+
The requirement to provide Installation Information does not include a
|
350 |
+
requirement to continue to provide support service, warranty, or updates
|
351 |
+
for a work that has been modified or installed by the recipient, or for
|
352 |
+
the User Product in which it has been modified or installed. Access to a
|
353 |
+
network may be denied when the modification itself materially and
|
354 |
+
adversely affects the operation of the network or violates the rules and
|
355 |
+
protocols for communication across the network.
|
356 |
+
|
357 |
+
Corresponding Source conveyed, and Installation Information provided,
|
358 |
+
in accord with this section must be in a format that is publicly
|
359 |
+
documented (and with an implementation available to the public in
|
360 |
+
source code form), and must require no special password or key for
|
361 |
+
unpacking, reading or copying.
|
362 |
+
|
363 |
+
7. Additional Terms.
|
364 |
+
|
365 |
+
"Additional permissions" are terms that supplement the terms of this
|
366 |
+
License by making exceptions from one or more of its conditions.
|
367 |
+
Additional permissions that are applicable to the entire Program shall
|
368 |
+
be treated as though they were included in this License, to the extent
|
369 |
+
that they are valid under applicable law. If additional permissions
|
370 |
+
apply only to part of the Program, that part may be used separately
|
371 |
+
under those permissions, but the entire Program remains governed by
|
372 |
+
this License without regard to the additional permissions.
|
373 |
+
|
374 |
+
When you convey a copy of a covered work, you may at your option
|
375 |
+
remove any additional permissions from that copy, or from any part of
|
376 |
+
it. (Additional permissions may be written to require their own
|
377 |
+
removal in certain cases when you modify the work.) You may place
|
378 |
+
additional permissions on material, added by you to a covered work,
|
379 |
+
for which you have or can give appropriate copyright permission.
|
380 |
+
|
381 |
+
Notwithstanding any other provision of this License, for material you
|
382 |
+
add to a covered work, you may (if authorized by the copyright holders of
|
383 |
+
that material) supplement the terms of this License with terms:
|
384 |
+
|
385 |
+
a) Disclaiming warranty or limiting liability differently from the
|
386 |
+
terms of sections 15 and 16 of this License; or
|
387 |
+
|
388 |
+
b) Requiring preservation of specified reasonable legal notices or
|
389 |
+
author attributions in that material or in the Appropriate Legal
|
390 |
+
Notices displayed by works containing it; or
|
391 |
+
|
392 |
+
c) Prohibiting misrepresentation of the origin of that material, or
|
393 |
+
requiring that modified versions of such material be marked in
|
394 |
+
reasonable ways as different from the original version; or
|
395 |
+
|
396 |
+
d) Limiting the use for publicity purposes of names of licensors or
|
397 |
+
authors of the material; or
|
398 |
+
|
399 |
+
e) Declining to grant rights under trademark law for use of some
|
400 |
+
trade names, trademarks, or service marks; or
|
401 |
+
|
402 |
+
f) Requiring indemnification of licensors and authors of that
|
403 |
+
material by anyone who conveys the material (or modified versions of
|
404 |
+
it) with contractual assumptions of liability to the recipient, for
|
405 |
+
any liability that these contractual assumptions directly impose on
|
406 |
+
those licensors and authors.
|
407 |
+
|
408 |
+
All other non-permissive additional terms are considered "further
|
409 |
+
restrictions" within the meaning of section 10. If the Program as you
|
410 |
+
received it, or any part of it, contains a notice stating that it is
|
411 |
+
governed by this License along with a term that is a further
|
412 |
+
restriction, you may remove that term. If a license document contains
|
413 |
+
a further restriction but permits relicensing or conveying under this
|
414 |
+
License, you may add to a covered work material governed by the terms
|
415 |
+
of that license document, provided that the further restriction does
|
416 |
+
not survive such relicensing or conveying.
|
417 |
+
|
418 |
+
If you add terms to a covered work in accord with this section, you
|
419 |
+
must place, in the relevant source files, a statement of the
|
420 |
+
additional terms that apply to those files, or a notice indicating
|
421 |
+
where to find the applicable terms.
|
422 |
+
|
423 |
+
Additional terms, permissive or non-permissive, may be stated in the
|
424 |
+
form of a separately written license, or stated as exceptions;
|
425 |
+
the above requirements apply either way.
|
426 |
+
|
427 |
+
8. Termination.
|
428 |
+
|
429 |
+
You may not propagate or modify a covered work except as expressly
|
430 |
+
provided under this License. Any attempt otherwise to propagate or
|
431 |
+
modify it is void, and will automatically terminate your rights under
|
432 |
+
this License (including any patent licenses granted under the third
|
433 |
+
paragraph of section 11).
|
434 |
+
|
435 |
+
However, if you cease all violation of this License, then your
|
436 |
+
license from a particular copyright holder is reinstated (a)
|
437 |
+
provisionally, unless and until the copyright holder explicitly and
|
438 |
+
finally terminates your license, and (b) permanently, if the copyright
|
439 |
+
holder fails to notify you of the violation by some reasonable means
|
440 |
+
prior to 60 days after the cessation.
|
441 |
+
|
442 |
+
Moreover, your license from a particular copyright holder is
|
443 |
+
reinstated permanently if the copyright holder notifies you of the
|
444 |
+
violation by some reasonable means, this is the first time you have
|
445 |
+
received notice of violation of this License (for any work) from that
|
446 |
+
copyright holder, and you cure the violation prior to 30 days after
|
447 |
+
your receipt of the notice.
|
448 |
+
|
449 |
+
Termination of your rights under this section does not terminate the
|
450 |
+
licenses of parties who have received copies or rights from you under
|
451 |
+
this License. If your rights have been terminated and not permanently
|
452 |
+
reinstated, you do not qualify to receive new licenses for the same
|
453 |
+
material under section 10.
|
454 |
+
|
455 |
+
9. Acceptance Not Required for Having Copies.
|
456 |
+
|
457 |
+
You are not required to accept this License in order to receive or
|
458 |
+
run a copy of the Program. Ancillary propagation of a covered work
|
459 |
+
occurring solely as a consequence of using peer-to-peer transmission
|
460 |
+
to receive a copy likewise does not require acceptance. However,
|
461 |
+
nothing other than this License grants you permission to propagate or
|
462 |
+
modify any covered work. These actions infringe copyright if you do
|
463 |
+
not accept this License. Therefore, by modifying or propagating a
|
464 |
+
covered work, you indicate your acceptance of this License to do so.
|
465 |
+
|
466 |
+
10. Automatic Licensing of Downstream Recipients.
|
467 |
+
|
468 |
+
Each time you convey a covered work, the recipient automatically
|
469 |
+
receives a license from the original licensors, to run, modify and
|
470 |
+
propagate that work, subject to this License. You are not responsible
|
471 |
+
for enforcing compliance by third parties with this License.
|
472 |
+
|
473 |
+
An "entity transaction" is a transaction transferring control of an
|
474 |
+
organization, or substantially all assets of one, or subdividing an
|
475 |
+
organization, or merging organizations. If propagation of a covered
|
476 |
+
work results from an entity transaction, each party to that
|
477 |
+
transaction who receives a copy of the work also receives whatever
|
478 |
+
licenses to the work the party's predecessor in interest had or could
|
479 |
+
give under the previous paragraph, plus a right to possession of the
|
480 |
+
Corresponding Source of the work from the predecessor in interest, if
|
481 |
+
the predecessor has it or can get it with reasonable efforts.
|
482 |
+
|
483 |
+
You may not impose any further restrictions on the exercise of the
|
484 |
+
rights granted or affirmed under this License. For example, you may
|
485 |
+
not impose a license fee, royalty, or other charge for exercise of
|
486 |
+
rights granted under this License, and you may not initiate litigation
|
487 |
+
(including a cross-claim or counterclaim in a lawsuit) alleging that
|
488 |
+
any patent claim is infringed by making, using, selling, offering for
|
489 |
+
sale, or importing the Program or any portion of it.
|
490 |
+
|
491 |
+
11. Patents.
|
492 |
+
|
493 |
+
A "contributor" is a copyright holder who authorizes use under this
|
494 |
+
License of the Program or a work on which the Program is based. The
|
495 |
+
work thus licensed is called the contributor's "contributor version".
|
496 |
+
|
497 |
+
A contributor's "essential patent claims" are all patent claims
|
498 |
+
owned or controlled by the contributor, whether already acquired or
|
499 |
+
hereafter acquired, that would be infringed by some manner, permitted
|
500 |
+
by this License, of making, using, or selling its contributor version,
|
501 |
+
but do not include claims that would be infringed only as a
|
502 |
+
consequence of further modification of the contributor version. For
|
503 |
+
purposes of this definition, "control" includes the right to grant
|
504 |
+
patent sublicenses in a manner consistent with the requirements of
|
505 |
+
this License.
|
506 |
+
|
507 |
+
Each contributor grants you a non-exclusive, worldwide, royalty-free
|
508 |
+
patent license under the contributor's essential patent claims, to
|
509 |
+
make, use, sell, offer for sale, import and otherwise run, modify and
|
510 |
+
propagate the contents of its contributor version.
|
511 |
+
|
512 |
+
In the following three paragraphs, a "patent license" is any express
|
513 |
+
agreement or commitment, however denominated, not to enforce a patent
|
514 |
+
(such as an express permission to practice a patent or covenant not to
|
515 |
+
sue for patent infringement). To "grant" such a patent license to a
|
516 |
+
party means to make such an agreement or commitment not to enforce a
|
517 |
+
patent against the party.
|
518 |
+
|
519 |
+
If you convey a covered work, knowingly relying on a patent license,
|
520 |
+
and the Corresponding Source of the work is not available for anyone
|
521 |
+
to copy, free of charge and under the terms of this License, through a
|
522 |
+
publicly available network server or other readily accessible means,
|
523 |
+
then you must either (1) cause the Corresponding Source to be so
|
524 |
+
available, or (2) arrange to deprive yourself of the benefit of the
|
525 |
+
patent license for this particular work, or (3) arrange, in a manner
|
526 |
+
consistent with the requirements of this License, to extend the patent
|
527 |
+
license to downstream recipients. "Knowingly relying" means you have
|
528 |
+
actual knowledge that, but for the patent license, your conveying the
|
529 |
+
covered work in a country, or your recipient's use of the covered work
|
530 |
+
in a country, would infringe one or more identifiable patents in that
|
531 |
+
country that you have reason to believe are valid.
|
532 |
+
|
533 |
+
If, pursuant to or in connection with a single transaction or
|
534 |
+
arrangement, you convey, or propagate by procuring conveyance of, a
|
535 |
+
covered work, and grant a patent license to some of the parties
|
536 |
+
receiving the covered work authorizing them to use, propagate, modify
|
537 |
+
or convey a specific copy of the covered work, then the patent license
|
538 |
+
you grant is automatically extended to all recipients of the covered
|
539 |
+
work and works based on it.
|
540 |
+
|
541 |
+
A patent license is "discriminatory" if it does not include within
|
542 |
+
the scope of its coverage, prohibits the exercise of, or is
|
543 |
+
conditioned on the non-exercise of one or more of the rights that are
|
544 |
+
specifically granted under this License. You may not convey a covered
|
545 |
+
work if you are a party to an arrangement with a third party that is
|
546 |
+
in the business of distributing software, under which you make payment
|
547 |
+
to the third party based on the extent of your activity of conveying
|
548 |
+
the work, and under which the third party grants, to any of the
|
549 |
+
parties who would receive the covered work from you, a discriminatory
|
550 |
+
patent license (a) in connection with copies of the covered work
|
551 |
+
conveyed by you (or copies made from those copies), or (b) primarily
|
552 |
+
for and in connection with specific products or compilations that
|
553 |
+
contain the covered work, unless you entered into that arrangement,
|
554 |
+
or that patent license was granted, prior to 28 March 2007.
|
555 |
+
|
556 |
+
Nothing in this License shall be construed as excluding or limiting
|
557 |
+
any implied license or other defenses to infringement that may
|
558 |
+
otherwise be available to you under applicable patent law.
|
559 |
+
|
560 |
+
12. No Surrender of Others' Freedom.
|
561 |
+
|
562 |
+
If conditions are imposed on you (whether by court order, agreement or
|
563 |
+
otherwise) that contradict the conditions of this License, they do not
|
564 |
+
excuse you from the conditions of this License. If you cannot convey a
|
565 |
+
covered work so as to satisfy simultaneously your obligations under this
|
566 |
+
License and any other pertinent obligations, then as a consequence you may
|
567 |
+
not convey it at all. For example, if you agree to terms that obligate you
|
568 |
+
to collect a royalty for further conveying from those to whom you convey
|
569 |
+
the Program, the only way you could satisfy both those terms and this
|
570 |
+
License would be to refrain entirely from conveying the Program.
|
571 |
+
|
572 |
+
13. Use with the GNU Affero General Public License.
|
573 |
+
|
574 |
+
Notwithstanding any other provision of this License, you have
|
575 |
+
permission to link or combine any covered work with a work licensed
|
576 |
+
under version 3 of the GNU Affero General Public License into a single
|
577 |
+
combined work, and to convey the resulting work. The terms of this
|
578 |
+
License will continue to apply to the part which is the covered work,
|
579 |
+
but the special requirements of the GNU Affero General Public License,
|
580 |
+
section 13, concerning interaction through a network will apply to the
|
581 |
+
combination as such.
|
582 |
+
|
583 |
+
14. Revised Versions of this License.
|
584 |
+
|
585 |
+
The Free Software Foundation may publish revised and/or new versions of
|
586 |
+
the GNU General Public License from time to time. Such new versions will
|
587 |
+
be similar in spirit to the present version, but may differ in detail to
|
588 |
+
address new problems or concerns.
|
589 |
+
|
590 |
+
Each version is given a distinguishing version number. If the
|
591 |
+
Program specifies that a certain numbered version of the GNU General
|
592 |
+
Public License "or any later version" applies to it, you have the
|
593 |
+
option of following the terms and conditions either of that numbered
|
594 |
+
version or of any later version published by the Free Software
|
595 |
+
Foundation. If the Program does not specify a version number of the
|
596 |
+
GNU General Public License, you may choose any version ever published
|
597 |
+
by the Free Software Foundation.
|
598 |
+
|
599 |
+
If the Program specifies that a proxy can decide which future
|
600 |
+
versions of the GNU General Public License can be used, that proxy's
|
601 |
+
public statement of acceptance of a version permanently authorizes you
|
602 |
+
to choose that version for the Program.
|
603 |
+
|
604 |
+
Later license versions may give you additional or different
|
605 |
+
permissions. However, no additional obligations are imposed on any
|
606 |
+
author or copyright holder as a result of your choosing to follow a
|
607 |
+
later version.
|
608 |
+
|
609 |
+
15. Disclaimer of Warranty.
|
610 |
+
|
611 |
+
THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY
|
612 |
+
APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT
|
613 |
+
HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY
|
614 |
+
OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO,
|
615 |
+
THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
616 |
+
PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM
|
617 |
+
IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF
|
618 |
+
ALL NECESSARY SERVICING, REPAIR OR CORRECTION.
|
619 |
+
|
620 |
+
16. Limitation of Liability.
|
621 |
+
|
622 |
+
IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
|
623 |
+
WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS
|
624 |
+
THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY
|
625 |
+
GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE
|
626 |
+
USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF
|
627 |
+
DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD
|
628 |
+
PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS),
|
629 |
+
EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF
|
630 |
+
SUCH DAMAGES.
|
631 |
+
|
632 |
+
17. Interpretation of Sections 15 and 16.
|
633 |
+
|
634 |
+
If the disclaimer of warranty and limitation of liability provided
|
635 |
+
above cannot be given local legal effect according to their terms,
|
636 |
+
reviewing courts shall apply local law that most closely approximates
|
637 |
+
an absolute waiver of all civil liability in connection with the
|
638 |
+
Program, unless a warranty or assumption of liability accompanies a
|
639 |
+
copy of the Program in return for a fee.
|
640 |
+
|
641 |
+
END OF TERMS AND CONDITIONS
|
642 |
+
|
643 |
+
How to Apply These Terms to Your New Programs
|
644 |
+
|
645 |
+
If you develop a new program, and you want it to be of the greatest
|
646 |
+
possible use to the public, the best way to achieve this is to make it
|
647 |
+
free software which everyone can redistribute and change under these terms.
|
648 |
+
|
649 |
+
To do so, attach the following notices to the program. It is safest
|
650 |
+
to attach them to the start of each source file to most effectively
|
651 |
+
state the exclusion of warranty; and each file should have at least
|
652 |
+
the "copyright" line and a pointer to where the full notice is found.
|
653 |
+
|
654 |
+
<one line to give the program's name and a brief idea of what it does.>
|
655 |
+
Copyright © <year> <name of author>
|
656 |
+
|
657 |
+
This program is free software: you can redistribute it and/or modify
|
658 |
+
it under the terms of the GNU General Public License as published by
|
659 |
+
the Free Software Foundation, either version 3 of the License, or
|
660 |
+
(at your option) any later version.
|
661 |
+
|
662 |
+
This program is distributed in the hope that it will be useful,
|
663 |
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
664 |
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
665 |
+
GNU General Public License for more details.
|
666 |
+
|
667 |
+
You should have received a copy of the GNU General Public License
|
668 |
+
along with this program. If not, see <https://www.gnu.org/licenses/>.
|
669 |
+
|
670 |
+
Also add information on how to contact you by electronic and paper mail.
|
671 |
+
|
672 |
+
If the program does terminal interaction, make it output a short
|
673 |
+
notice like this when it starts in an interactive mode:
|
674 |
+
|
675 |
+
<program> Copyright © <year> <name of author>
|
676 |
+
This program comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
|
677 |
+
This is free software, and you are welcome to redistribute it
|
678 |
+
under certain conditions; type `show c' for details.
|
679 |
+
|
680 |
+
The hypothetical commands `show w' and `show c' should show the appropriate
|
681 |
+
parts of the General Public License. Of course, your program's commands
|
682 |
+
might be different; for a GUI interface, you would use an "about box".
|
683 |
+
|
684 |
+
You should also get your employer (if you work as a programmer) or school,
|
685 |
+
if any, to sign a "copyright disclaimer" for the program, if necessary.
|
686 |
+
For more information on this, and how to apply and follow the GNU GPL, see
|
687 |
+
<https://www.gnu.org/licenses/>.
|
688 |
+
|
689 |
+
The GNU General Public License does not permit incorporating your program
|
690 |
+
into proprietary programs. If your program is a subroutine library, you
|
691 |
+
may consider it more useful to permit linking proprietary applications with
|
692 |
+
the library. If this is what you want to do, use the GNU Lesser General
|
693 |
+
Public License instead of this License. But first, please read
|
694 |
<https://www.gnu.org/philosophy/why-not-lgpl.html>.
|
plugin-fw/assets/css/admin.css
CHANGED
@@ -1,338 +1,338 @@
|
|
1 |
-
/*-----------------------
|
2 |
-
YITH Debug
|
3 |
-
------------------------*/
|
4 |
-
#wpadminbar .yith-debug-admin-bar div,
|
5 |
-
#wpadminbar .yith-debug-admin-bar:hover div {
|
6 |
-
background: #05789c !important;
|
7 |
-
color: #fff !important;
|
8 |
-
}
|
9 |
-
|
10 |
-
#wpadminbar .yith-debug-admin-bar a,
|
11 |
-
#wpadminbar .yith-debug-admin-bar strong {
|
12 |
-
color: #fff !important;
|
13 |
-
}
|
14 |
-
|
15 |
-
#wpadminbar .yith-debug-admin-bar strong {
|
16 |
-
font-weight: 600;
|
17 |
-
}
|
18 |
-
|
19 |
-
#wpadminbar .yith-debug-admin-bar-post-meta .ab-empty-item,
|
20 |
-
#wpadminbar .yith-debug-admin-bar-option .ab-empty-item {
|
21 |
-
display: none;
|
22 |
-
}
|
23 |
-
|
24 |
-
#wpadminbar #wp-admin-bar-yith-debug-admin-bar-post-meta-default,
|
25 |
-
#wpadminbar #wp-admin-bar-yith-debug-admin-bar-option-default {
|
26 |
-
padding: 0;
|
27 |
-
max-height: 500px;
|
28 |
-
overflow-y: auto;
|
29 |
-
}
|
30 |
-
|
31 |
-
#wpadminbar .yith-debug-admin-bar pre {
|
32 |
-
padding: 10px;
|
33 |
-
line-height: 1.5em;
|
34 |
-
}
|
35 |
-
|
36 |
-
.notice-yith {
|
37 |
-
margin-left: 0;
|
38 |
-
border-left-color: #acc327;
|
39 |
-
}
|
40 |
-
|
41 |
-
.notice-yith.notice-alt {
|
42 |
-
background-color: #ecf7ed;
|
43 |
-
}
|
44 |
-
|
45 |
-
.yith-promo-banner-image-link {
|
46 |
-
display: block;
|
47 |
-
margin-bottom: 15px;
|
48 |
-
}
|
49 |
-
|
50 |
-
.yith-promo-banner-image {
|
51 |
-
max-width: 100%;
|
52 |
-
margin: 0 auto;
|
53 |
-
display: block;
|
54 |
-
}
|
55 |
-
|
56 |
-
/*-----------------------
|
57 |
-
YITH FEEDS
|
58 |
-
------------------------*/
|
59 |
-
|
60 |
-
.yith-feeds-logo {
|
61 |
-
display: table-cell;
|
62 |
-
background: #005b7c;
|
63 |
-
padding: 5px;
|
64 |
-
border-radius: 50%;
|
65 |
-
margin-right: 10px;
|
66 |
-
vertical-align: text-bottom;
|
67 |
-
width: 18px;
|
68 |
-
height: auto;
|
69 |
-
vertical-align: middle;
|
70 |
-
}
|
71 |
-
|
72 |
-
.yith-feeds-plugin-name {
|
73 |
-
display: table-cell;
|
74 |
-
vertical-align: middle;
|
75 |
-
}
|
76 |
-
|
77 |
-
/*-----------------------
|
78 |
-
YITH Plugins Columns
|
79 |
-
------------------------*/
|
80 |
-
@media screen and (min-width: 783px) {
|
81 |
-
|
82 |
-
.auto-fold #adminmenu .yith-plugin-fw-menu-2-columns.wp-not-current-submenu .wp-submenu-head {
|
83 |
-
width: 100%;
|
84 |
-
}
|
85 |
-
|
86 |
-
#adminmenu .yith-plugin-fw-menu-2-columns.wp-not-current-submenu .wp-submenu {
|
87 |
-
min-width: 320px;
|
88 |
-
display: flex;
|
89 |
-
flex-flow: row wrap;
|
90 |
-
}
|
91 |
-
|
92 |
-
#adminmenu .yith-plugin-fw-menu-2-columns.wp-not-current-submenu .wp-submenu li:not(.wp-submenu-head) {
|
93 |
-
width: 50%;
|
94 |
-
border-left: 1px solid #555;
|
95 |
-
box-sizing: border-box;
|
96 |
-
}
|
97 |
-
|
98 |
-
#adminmenu .yith-plugin-fw-menu-2-columns.wp-not-current-submenu .wp-submenu li:not(.wp-submenu-head):nth-child(2n) {
|
99 |
-
border-left: none;
|
100 |
-
}
|
101 |
-
|
102 |
-
#adminmenu .yith-plugin-fw-menu-3-columns.wp-not-current-submenu .wp-submenu {
|
103 |
-
min-width: 480px;
|
104 |
-
display: flex;
|
105 |
-
flex-flow: row wrap;
|
106 |
-
}
|
107 |
-
|
108 |
-
#adminmenu .yith-plugin-fw-menu-3-columns.wp-not-current-submenu .wp-submenu li:not(.wp-submenu-head) {
|
109 |
-
width: calc(100% / 3);
|
110 |
-
border-left: 1px solid #555;
|
111 |
-
box-sizing: border-box;
|
112 |
-
}
|
113 |
-
|
114 |
-
#adminmenu .yith-plugin-fw-menu-3-columns.wp-not-current-submenu .wp-submenu li:not(.wp-submenu-head):nth-child(3n + 2) {
|
115 |
-
border-left: none;
|
116 |
-
}
|
117 |
-
}
|
118 |
-
|
119 |
-
/*---------------------------
|
120 |
-
YITH System Information
|
121 |
-
----------------------------*/
|
122 |
-
|
123 |
-
.yith-system-info-wrap table.form-table {
|
124 |
-
margin: 0;
|
125 |
-
background: #fff;
|
126 |
-
}
|
127 |
-
|
128 |
-
.yith-system-info-wrap table.form-table th, .yith-system-info-wrap table.form-table td {
|
129 |
-
padding: 30px 20px !important;
|
130 |
-
}
|
131 |
-
|
132 |
-
.yith-system-info-wrap table.form-table th {
|
133 |
-
min-width: 200px;
|
134 |
-
width: auto !important;
|
135 |
-
}
|
136 |
-
|
137 |
-
.yith-system-info-wrap table.form-table textarea.yith-system-info-debug {
|
138 |
-
width: 100%;
|
139 |
-
height: 400px !important;
|
140 |
-
}
|
141 |
-
|
142 |
-
.yith-phpinfo-wrap div table.form-table {
|
143 |
-
border-bottom: none;
|
144 |
-
margin-bottom: 0;
|
145 |
-
}
|
146 |
-
|
147 |
-
.yith-phpinfo-wrap div h2 {
|
148 |
-
border-top: 1px solid #d8d8d8 !important;
|
149 |
-
}
|
150 |
-
|
151 |
-
.yith-phpinfo-wrap div {
|
152 |
-
margin-bottom: 40px;
|
153 |
-
border-bottom: 1px solid #d8d8d8;
|
154 |
-
}
|
155 |
-
|
156 |
-
.yith-phpinfo-wrap div:last-child {
|
157 |
-
margin-bottom: 0;
|
158 |
-
}
|
159 |
-
|
160 |
-
.yith-phpinfo-wrap table.form-table h1.p {
|
161 |
-
color: #2a8db0;
|
162 |
-
text-transform: uppercase;
|
163 |
-
padding: 0;
|
164 |
-
line-height: 64px;
|
165 |
-
}
|
166 |
-
|
167 |
-
|
168 |
-
.yith-phpinfo-wrap table.form-table img {
|
169 |
-
float: right;
|
170 |
-
border: 0;
|
171 |
-
}
|
172 |
-
|
173 |
-
.yith-system-info-wrap .yith-plugin-fw-field-wrapper.progress:after {
|
174 |
-
color: #336374;
|
175 |
-
display: inline-block;
|
176 |
-
font: 400 20px/1 dashicons;
|
177 |
-
speak: none;
|
178 |
-
-webkit-font-smoothing: antialiased;
|
179 |
-
-moz-osx-font-smoothing: grayscale;
|
180 |
-
vertical-align: top;
|
181 |
-
line-height: 28px;
|
182 |
-
content: '\f463';
|
183 |
-
-webkit-animation: rotation 2s infinite linear;
|
184 |
-
animation: rotation 2s infinite linear
|
185 |
-
}
|
186 |
-
|
187 |
-
.yith-system-info h2.yith-sysinfo-title {
|
188 |
-
color: #00729f;
|
189 |
-
font-size: 25px;
|
190 |
-
text-transform: uppercase;
|
191 |
-
font-weight: 800;
|
192 |
-
line-height: 25px;
|
193 |
-
padding: 20px 0;
|
194 |
-
background: none;
|
195 |
-
border: none;
|
196 |
-
}
|
197 |
-
|
198 |
-
#yith-system-alert span.yith-logo,
|
199 |
-
.yith-system-info h2 span.yith-logo {
|
200 |
-
border-radius: 50%;
|
201 |
-
background: #265b7a;
|
202 |
-
height: 30px;
|
203 |
-
width: 30px;
|
204 |
-
display: flex;
|
205 |
-
text-align: center;
|
206 |
-
margin: 0 10px 0 0;
|
207 |
-
float: left;
|
208 |
-
align-items: center;
|
209 |
-
justify-content: center;
|
210 |
-
}
|
211 |
-
|
212 |
-
|
213 |
-
.yith-system-info table td {
|
214 |
-
word-break: break-all;
|
215 |
-
padding: 20px 12px;
|
216 |
-
}
|
217 |
-
|
218 |
-
.yith-system-info table td.requirement-value,
|
219 |
-
.yith-system-info table td.info-value {
|
220 |
-
font-size: 14px;
|
221 |
-
vertical-align: middle;
|
222 |
-
text-align: left;
|
223 |
-
color: #5da726;
|
224 |
-
line-height: 19px;
|
225 |
-
}
|
226 |
-
|
227 |
-
.yith-system-info table td.requirement-value {
|
228 |
-
width: 120px;
|
229 |
-
}
|
230 |
-
|
231 |
-
.yith-system-info table td.requirement-value.has-errors {
|
232 |
-
color: #a00;
|
233 |
-
}
|
234 |
-
|
235 |
-
.yith-system-info table td.requirement-value.has-warnings {
|
236 |
-
color: #ffa200;
|
237 |
-
}
|
238 |
-
|
239 |
-
.yith-system-info table td.requirement-messages ul {
|
240 |
-
margin: 0;
|
241 |
-
padding: 0 0 10px 0;
|
242 |
-
list-style: none !important;
|
243 |
-
}
|
244 |
-
|
245 |
-
.yith-system-info table td.requirement-messages ul li {
|
246 |
-
margin-bottom: 3px;
|
247 |
-
}
|
248 |
-
|
249 |
-
.yith-system-info table td.requirement-messages span.error {
|
250 |
-
color: #a00;
|
251 |
-
font-weight: bold;
|
252 |
-
}
|
253 |
-
|
254 |
-
.yith-system-info table td.requirement-messages span.warning {
|
255 |
-
color: #a00;
|
256 |
-
font-weight: bold;
|
257 |
-
}
|
258 |
-
|
259 |
-
.yith-system-info .debug-code {
|
260 |
-
font-family: monospace;
|
261 |
-
padding: 15px;
|
262 |
-
display: inline-block;
|
263 |
-
background: #f2f3f4;
|
264 |
-
line-height: 22px;
|
265 |
-
border: 2px solid #dfe3e6;
|
266 |
-
border-radius: 5px;
|
267 |
-
margin-right: 20px;
|
268 |
-
}
|
269 |
-
|
270 |
-
.yith-system-info .copy-link {
|
271 |
-
font-size: 11px;
|
272 |
-
font-weight: 600;
|
273 |
-
padding-left: 1.7em;
|
274 |
-
position: relative;
|
275 |
-
text-decoration: none;
|
276 |
-
color: #3889d3;
|
277 |
-
}
|
278 |
-
|
279 |
-
.yith-system-info .copy-link:hover {
|
280 |
-
color: #004b91;
|
281 |
-
}
|
282 |
-
|
283 |
-
.yith-system-info .copy-link:before {
|
284 |
-
background-color: #ffffff;
|
285 |
-
border: 1px solid;
|
286 |
-
bottom: 2px;
|
287 |
-
content: '';
|
288 |
-
display: inline-block;
|
289 |
-
height: 0.9em;
|
290 |
-
left: 0;
|
291 |
-
position: absolute;
|
292 |
-
width: 0.9em;
|
293 |
-
z-index: 2;
|
294 |
-
}
|
295 |
-
|
296 |
-
.yith-system-info .copy-link:after {
|
297 |
-
background-color: #ffffff;
|
298 |
-
border: 1px solid;
|
299 |
-
bottom: 5px;
|
300 |
-
content: '';
|
301 |
-
display: inline-block;
|
302 |
-
height: 0.9em;
|
303 |
-
left: 3px;
|
304 |
-
position: absolute;
|
305 |
-
width: 0.9em;
|
306 |
-
z-index: 1;
|
307 |
-
}
|
308 |
-
|
309 |
-
.yith-system-info .copy-link .copied-tooltip {
|
310 |
-
width: 140px;
|
311 |
-
background-color: #555;
|
312 |
-
color: #fff;
|
313 |
-
text-align: center;
|
314 |
-
border-radius: 6px;
|
315 |
-
padding: 5px;
|
316 |
-
position: absolute;
|
317 |
-
z-index: 1;
|
318 |
-
bottom: 150%;
|
319 |
-
left: 50%;
|
320 |
-
margin-left: -75px;
|
321 |
-
transition: all ease .3s;
|
322 |
-
}
|
323 |
-
|
324 |
-
.yith-system-info .copy-link .copied-tooltip:after {
|
325 |
-
content: "";
|
326 |
-
position: absolute;
|
327 |
-
top: 100%;
|
328 |
-
left: 50%;
|
329 |
-
margin-left: -5px;
|
330 |
-
border-width: 5px;
|
331 |
-
border-style: solid;
|
332 |
-
border-color: #555 transparent transparent transparent;
|
333 |
-
}
|
334 |
-
|
335 |
-
.yith-system-info-menu {
|
336 |
-
font-weight: bold;
|
337 |
-
font-size: 11px !important;
|
338 |
-
}
|
1 |
+
/*-----------------------
|
2 |
+
YITH Debug
|
3 |
+
------------------------*/
|
4 |
+
#wpadminbar .yith-debug-admin-bar div,
|
5 |
+
#wpadminbar .yith-debug-admin-bar:hover div {
|
6 |
+
background: #05789c !important;
|
7 |
+
color: #fff !important;
|
8 |
+
}
|
9 |
+
|
10 |
+
#wpadminbar .yith-debug-admin-bar a,
|
11 |
+
#wpadminbar .yith-debug-admin-bar strong {
|
12 |
+
color: #fff !important;
|
13 |
+
}
|
14 |
+
|
15 |
+
#wpadminbar .yith-debug-admin-bar strong {
|
16 |
+
font-weight: 600;
|
17 |
+
}
|
18 |
+
|
19 |
+
#wpadminbar .yith-debug-admin-bar-post-meta .ab-empty-item,
|
20 |
+
#wpadminbar .yith-debug-admin-bar-option .ab-empty-item {
|
21 |
+
display: none;
|
22 |
+
}
|
23 |
+
|
24 |
+
#wpadminbar #wp-admin-bar-yith-debug-admin-bar-post-meta-default,
|
25 |
+
#wpadminbar #wp-admin-bar-yith-debug-admin-bar-option-default {
|
26 |
+
padding: 0;
|
27 |
+
max-height: 500px;
|
28 |
+
overflow-y: auto;
|
29 |
+
}
|
30 |
+
|
31 |
+
#wpadminbar .yith-debug-admin-bar pre {
|
32 |
+
padding: 10px;
|
33 |
+
line-height: 1.5em;
|
34 |
+
}
|
35 |
+
|
36 |
+
.notice-yith {
|
37 |
+
margin-left: 0;
|
38 |
+
border-left-color: #acc327;
|
39 |
+
}
|
40 |
+
|
41 |
+
.notice-yith.notice-alt {
|
42 |
+
background-color: #ecf7ed;
|
43 |
+
}
|
44 |
+
|
45 |
+
.yith-promo-banner-image-link {
|
46 |
+
display: block;
|
47 |
+
margin-bottom: 15px;
|
48 |
+
}
|
49 |
+
|
50 |
+
.yith-promo-banner-image {
|
51 |
+
max-width: 100%;
|
52 |
+
margin: 0 auto;
|
53 |
+
display: block;
|
54 |
+
}
|
55 |
+
|
56 |
+
/*-----------------------
|
57 |
+
YITH FEEDS
|
58 |
+
------------------------*/
|
59 |
+
|
60 |
+
.yith-feeds-logo {
|
61 |
+
display: table-cell;
|
62 |
+
background: #005b7c;
|
63 |
+
padding: 5px;
|
64 |
+
border-radius: 50%;
|
65 |
+
margin-right: 10px;
|
66 |
+
vertical-align: text-bottom;
|
67 |
+
width: 18px;
|
68 |
+
height: auto;
|
69 |
+
vertical-align: middle;
|
70 |
+
}
|
71 |
+
|
72 |
+
.yith-feeds-plugin-name {
|
73 |
+
display: table-cell;
|
74 |
+
vertical-align: middle;
|
75 |
+
}
|
76 |
+
|
77 |
+
/*-----------------------
|
78 |
+
YITH Plugins Columns
|
79 |
+
------------------------*/
|
80 |
+
@media screen and (min-width: 783px) {
|
81 |
+
|
82 |
+
.auto-fold #adminmenu .yith-plugin-fw-menu-2-columns.wp-not-current-submenu .wp-submenu-head {
|
83 |
+
width: 100%;
|
84 |
+
}
|
85 |
+
|
86 |
+
#adminmenu .yith-plugin-fw-menu-2-columns.wp-not-current-submenu .wp-submenu {
|
87 |
+
min-width: 320px;
|
88 |
+
display: flex;
|
89 |
+
flex-flow: row wrap;
|
90 |
+
}
|
91 |
+
|
92 |
+
#adminmenu .yith-plugin-fw-menu-2-columns.wp-not-current-submenu .wp-submenu li:not(.wp-submenu-head) {
|
93 |
+
width: 50%;
|
94 |
+
border-left: 1px solid #555;
|
95 |
+
box-sizing: border-box;
|
96 |
+
}
|
97 |
+
|
98 |
+
#adminmenu .yith-plugin-fw-menu-2-columns.wp-not-current-submenu .wp-submenu li:not(.wp-submenu-head):nth-child(2n) {
|
99 |
+
border-left: none;
|
100 |
+
}
|
101 |
+
|
102 |
+
#adminmenu .yith-plugin-fw-menu-3-columns.wp-not-current-submenu .wp-submenu {
|
103 |
+
min-width: 480px;
|
104 |
+
display: flex;
|
105 |
+
flex-flow: row wrap;
|
106 |
+
}
|
107 |
+
|
108 |
+
#adminmenu .yith-plugin-fw-menu-3-columns.wp-not-current-submenu .wp-submenu li:not(.wp-submenu-head) {
|
109 |
+
width: calc(100% / 3);
|
110 |
+
border-left: 1px solid #555;
|
111 |
+
box-sizing: border-box;
|
112 |
+
}
|
113 |
+
|
114 |
+
#adminmenu .yith-plugin-fw-menu-3-columns.wp-not-current-submenu .wp-submenu li:not(.wp-submenu-head):nth-child(3n + 2) {
|
115 |
+
border-left: none;
|
116 |
+
}
|
117 |
+
}
|
118 |
+
|
119 |
+
/*---------------------------
|
120 |
+
YITH System Information
|
121 |
+
----------------------------*/
|
122 |
+
|
123 |
+
.yith-system-info-wrap table.form-table {
|
124 |
+
margin: 0;
|
125 |
+
background: #fff;
|
126 |
+
}
|
127 |
+
|
128 |
+
.yith-system-info-wrap table.form-table th, .yith-system-info-wrap table.form-table td {
|
129 |
+
padding: 30px 20px !important;
|
130 |
+
}
|
131 |
+
|
132 |
+
.yith-system-info-wrap table.form-table th {
|
133 |
+
min-width: 200px;
|
134 |
+
width: auto !important;
|
135 |
+
}
|
136 |
+
|
137 |
+
.yith-system-info-wrap table.form-table textarea.yith-system-info-debug {
|
138 |
+
width: 100%;
|
139 |
+
height: 400px !important;
|
140 |
+
}
|
141 |
+
|
142 |
+
.yith-phpinfo-wrap div table.form-table {
|
143 |
+
border-bottom: none;
|
144 |
+
margin-bottom: 0;
|
145 |
+
}
|
146 |
+
|
147 |
+
.yith-phpinfo-wrap div h2 {
|
148 |
+
border-top: 1px solid #d8d8d8 !important;
|
149 |
+
}
|
150 |
+
|
151 |
+
.yith-phpinfo-wrap div {
|
152 |
+
margin-bottom: 40px;
|
153 |
+
border-bottom: 1px solid #d8d8d8;
|
154 |
+
}
|
155 |
+
|
156 |
+
.yith-phpinfo-wrap div:last-child {
|
157 |
+
margin-bottom: 0;
|
158 |
+
}
|
159 |
+
|
160 |
+
.yith-phpinfo-wrap table.form-table h1.p {
|
161 |
+
color: #2a8db0;
|
162 |
+
text-transform: uppercase;
|
163 |
+
padding: 0;
|
164 |
+
line-height: 64px;
|
165 |
+
}
|
166 |
+
|
167 |
+
|
168 |
+
.yith-phpinfo-wrap table.form-table img {
|
169 |
+
float: right;
|
170 |
+
border: 0;
|
171 |
+
}
|
172 |
+
|
173 |
+
.yith-system-info-wrap .yith-plugin-fw-field-wrapper.progress:after {
|
174 |
+
color: #336374;
|
175 |
+
display: inline-block;
|
176 |
+
font: 400 20px/1 dashicons;
|
177 |
+
speak: none;
|
178 |
+
-webkit-font-smoothing: antialiased;
|
179 |
+
-moz-osx-font-smoothing: grayscale;
|
180 |
+
vertical-align: top;
|
181 |
+
line-height: 28px;
|
182 |
+
content: '\f463';
|
183 |
+
-webkit-animation: rotation 2s infinite linear;
|
184 |
+
animation: rotation 2s infinite linear
|
185 |
+
}
|
186 |
+
|
187 |
+
.yith-system-info h2.yith-sysinfo-title {
|
188 |
+
color: #00729f;
|
189 |
+
font-size: 25px;
|
190 |
+
text-transform: uppercase;
|
191 |
+
font-weight: 800;
|
192 |
+
line-height: 25px;
|
193 |
+
padding: 20px 0;
|
194 |
+
background: none;
|
195 |
+
border: none;
|
196 |
+
}
|
197 |
+
|
198 |
+
#yith-system-alert span.yith-logo,
|
199 |
+
.yith-system-info h2 span.yith-logo {
|
200 |
+
border-radius: 50%;
|
201 |
+
background: #265b7a;
|
202 |
+
height: 30px;
|
203 |
+
width: 30px;
|
204 |
+
display: flex;
|
205 |
+
text-align: center;
|
206 |
+
margin: 0 10px 0 0;
|
207 |
+
float: left;
|
208 |
+
align-items: center;
|
209 |
+
justify-content: center;
|
210 |
+
}
|
211 |
+
|
212 |
+
|
213 |
+
.yith-system-info table td {
|
214 |
+
word-break: break-all;
|
215 |
+
padding: 20px 12px;
|
216 |
+
}
|
217 |
+
|
218 |
+
.yith-system-info table td.requirement-value,
|
219 |
+
.yith-system-info table td.info-value {
|
220 |
+
font-size: 14px;
|
221 |
+
vertical-align: middle;
|
222 |
+
text-align: left;
|
223 |
+
color: #5da726;
|
224 |
+
line-height: 19px;
|
225 |
+
}
|
226 |
+
|
227 |
+
.yith-system-info table td.requirement-value {
|
228 |
+
width: 120px;
|
229 |
+
}
|
230 |
+
|
231 |
+
.yith-system-info table td.requirement-value.has-errors {
|
232 |
+
color: #a00;
|
233 |
+
}
|
234 |
+
|
235 |
+
.yith-system-info table td.requirement-value.has-warnings {
|
236 |
+
color: #ffa200;
|
237 |
+
}
|
238 |
+
|
239 |
+
.yith-system-info table td.requirement-messages ul {
|
240 |
+
margin: 0;
|
241 |
+
padding: 0 0 10px 0;
|
242 |
+
list-style: none !important;
|
243 |
+
}
|
244 |
+
|
245 |
+
.yith-system-info table td.requirement-messages ul li {
|
246 |
+
margin-bottom: 3px;
|
247 |
+
}
|
248 |
+
|
249 |
+
.yith-system-info table td.requirement-messages span.error {
|
250 |
+
color: #a00;
|
251 |
+
font-weight: bold;
|
252 |
+
}
|
253 |
+
|
254 |
+
.yith-system-info table td.requirement-messages span.warning {
|
255 |
+
color: #a00;
|
256 |
+
font-weight: bold;
|
257 |
+
}
|
258 |
+
|
259 |
+
.yith-system-info .debug-code {
|
260 |
+
font-family: monospace;
|
261 |
+
padding: 15px;
|
262 |
+
display: inline-block;
|
263 |
+
background: #f2f3f4;
|
264 |
+
line-height: 22px;
|
265 |
+
border: 2px solid #dfe3e6;
|
266 |
+
border-radius: 5px;
|
267 |
+
margin-right: 20px;
|
268 |
+
}
|
269 |
+
|
270 |
+
.yith-system-info .copy-link {
|
271 |
+
font-size: 11px;
|
272 |
+
font-weight: 600;
|
273 |
+
padding-left: 1.7em;
|
274 |
+
position: relative;
|
275 |
+
text-decoration: none;
|
276 |
+
color: #3889d3;
|
277 |
+
}
|
278 |
+
|
279 |
+
.yith-system-info .copy-link:hover {
|
280 |
+
color: #004b91;
|
281 |
+
}
|
282 |
+
|
283 |
+
.yith-system-info .copy-link:before {
|
284 |
+
background-color: #ffffff;
|
285 |
+
border: 1px solid;
|
286 |
+
bottom: 2px;
|
287 |
+
content: '';
|
288 |
+
display: inline-block;
|
289 |
+
height: 0.9em;
|
290 |
+
left: 0;
|
291 |
+
position: absolute;
|
292 |
+
width: 0.9em;
|
293 |
+
z-index: 2;
|
294 |
+
}
|
295 |
+
|
296 |
+
.yith-system-info .copy-link:after {
|
297 |
+
background-color: #ffffff;
|
298 |
+
border: 1px solid;
|
299 |
+
bottom: 5px;
|
300 |
+
content: '';
|
301 |
+
display: inline-block;
|
302 |
+
height: 0.9em;
|
303 |
+
left: 3px;
|
304 |
+
position: absolute;
|
305 |
+
width: 0.9em;
|
306 |
+
z-index: 1;
|
307 |
+
}
|
308 |
+
|
309 |
+
.yith-system-info .copy-link .copied-tooltip {
|
310 |
+
width: 140px;
|
311 |
+
background-color: #555;
|
312 |
+
color: #fff;
|
313 |
+
text-align: center;
|
314 |
+
border-radius: 6px;
|
315 |
+
padding: 5px;
|
316 |
+
position: absolute;
|
317 |
+
z-index: 1;
|
318 |
+
bottom: 150%;
|
319 |
+
left: 50%;
|
320 |
+
margin-left: -75px;
|
321 |
+
transition: all ease .3s;
|
322 |
+
}
|
323 |
+
|
324 |
+
.yith-system-info .copy-link .copied-tooltip:after {
|
325 |
+
content: "";
|
326 |
+
position: absolute;
|
327 |
+
top: 100%;
|
328 |
+
left: 50%;
|
329 |
+
margin-left: -5px;
|
330 |
+
border-width: 5px;
|
331 |
+
border-style: solid;
|
332 |
+
border-color: #555 transparent transparent transparent;
|
333 |
+
}
|
334 |
+
|
335 |
+
.yith-system-info-menu {
|
336 |
+
font-weight: bold;
|
337 |
+
font-size: 11px !important;
|
338 |
+
}
|
plugin-fw/assets/css/codemirror/codemirror.css
CHANGED
@@ -1,260 +1,260 @@
|
|
1 |
-
/* BASICS */
|
2 |
-
|
3 |
-
.CodeMirror {
|
4 |
-
/* Set height, width, borders, and global font properties here */
|
5 |
-
font-family: monospace;
|
6 |
-
height: 400px;
|
7 |
-
clear: both;
|
8 |
-
padding: 0;
|
9 |
-
}
|
10 |
-
.CodeMirror-scroll {
|
11 |
-
/* Set scrolling behaviour here */
|
12 |
-
overflow: auto;
|
13 |
-
}
|
14 |
-
|
15 |
-
/* PADDING */
|
16 |
-
|
17 |
-
.CodeMirror-lines {
|
18 |
-
padding: 4px 0; /* Vertical padding around content */
|
19 |
-
}
|
20 |
-
.CodeMirror pre {
|
21 |
-
padding: 0 4px; /* Horizontal padding of content */
|
22 |
-
}
|
23 |
-
|
24 |
-
.CodeMirror-scrollbar-filler, .CodeMirror-gutter-filler {
|
25 |
-
background-color: white; /* The little square between H and V scrollbars */
|
26 |
-
}
|
27 |
-
|
28 |
-
/* GUTTER */
|
29 |
-
|
30 |
-
.CodeMirror-gutters {
|
31 |
-
border-right: 1px solid #ddd;
|
32 |
-
background-color: #f7f7f7;
|
33 |
-
white-space: nowrap;
|
34 |
-
}
|
35 |
-
.CodeMirror-linenumbers {}
|
36 |
-
.CodeMirror-linenumber {
|
37 |
-
padding: 0 3px 0 5px;
|
38 |
-
min-width: 20px;
|
39 |
-
text-align: right;
|
40 |
-
color: #999;
|
41 |
-
}
|
42 |
-
|
43 |
-
/* CURSOR */
|
44 |
-
|
45 |
-
.CodeMirror div.CodeMirror-cursor {
|
46 |
-
border-left: 1px solid black;
|
47 |
-
z-index: 3;
|
48 |
-
}
|
49 |
-
/* Shown when moving in bi-directional text */
|
50 |
-
.CodeMirror div.CodeMirror-secondarycursor {
|
51 |
-
border-left: 1px solid silver;
|
52 |
-
}
|
53 |
-
.CodeMirror.cm-keymap-fat-cursor div.CodeMirror-cursor {
|
54 |
-
width: auto;
|
55 |
-
border: 0;
|
56 |
-
background: #7e7;
|
57 |
-
z-index: 1;
|
58 |
-
}
|
59 |
-
/* Can style cursor different in overwrite (non-insert) mode */
|
60 |
-
.CodeMirror div.CodeMirror-cursor.CodeMirror-overwrite {}
|
61 |
-
|
62 |
-
.cm-tab { display: inline-block; }
|
63 |
-
|
64 |
-
/* DEFAULT THEME */
|
65 |
-
|
66 |
-
.cm-s-default .cm-keyword {color: #708;}
|
67 |
-
.cm-s-default .cm-atom {color: #219;}
|
68 |
-
.cm-s-default .cm-number {color: #164;}
|
69 |
-
.cm-s-default .cm-def {color: #00f;}
|
70 |
-
.cm-s-default .cm-variable {color: black;}
|
71 |
-
.cm-s-default .cm-variable-2 {color: #05a;}
|
72 |
-
.cm-s-default .cm-variable-3 {color: #085;}
|
73 |
-
.cm-s-default .cm-property {color: black;}
|
74 |
-
.cm-s-default .cm-operator {color: black;}
|
75 |
-
.cm-s-default .cm-comment {color: #a50;}
|
76 |
-
.cm-s-default .cm-string {color: #a11;}
|
77 |
-
.cm-s-default .cm-string-2 {color: #f50;}
|
78 |
-
.cm-s-default .cm-meta {color: #555;}
|
79 |
-
.cm-s-default .cm-error {color: #f00;}
|
80 |
-
.cm-s-default .cm-qualifier {color: #555;}
|
81 |
-
.cm-s-default .cm-builtin {color: #30a;}
|
82 |
-
.cm-s-default .cm-bracket {color: #997;}
|
83 |
-
.cm-s-default .cm-tag {color: #170;}
|
84 |
-
.cm-s-default .cm-attribute {color: #00c;}
|
85 |
-
.cm-s-default .cm-header {color: blue;}
|
86 |
-
.cm-s-default .cm-quote {color: #090;}
|
87 |
-
.cm-s-default .cm-hr {color: #999;}
|
88 |
-
.cm-s-default .cm-link {color: #00c;}
|
89 |
-
|
90 |
-
.cm-negative {color: #d44;}
|
91 |
-
.cm-positive {color: #292;}
|
92 |
-
.cm-header, .cm-strong {font-weight: bold;}
|
93 |
-
.cm-em {font-style: italic;}
|
94 |
-
.cm-link {text-decoration: underline;}
|
95 |
-
|
96 |
-
.cm-invalidchar {color: #f00;}
|
97 |
-
|
98 |
-
div.CodeMirror span.CodeMirror-matchingbracket {color: #0f0;}
|
99 |
-
div.CodeMirror span.CodeMirror-nonmatchingbracket {color: #f22;}
|
100 |
-
|
101 |
-
/* STOP */
|
102 |
-
|
103 |
-
/* The rest of this file contains styles related to the mechanics of
|
104 |
-
the editor. You probably shouldn't touch them. */
|
105 |
-
|
106 |
-
.CodeMirror {
|
107 |
-
line-height: 1;
|
108 |
-
position: relative;
|
109 |
-
overflow: hidden;
|
110 |
-
background: #fafafa;
|
111 |
-
color: black;
|
112 |
-
}
|
113 |
-
|
114 |
-
.CodeMirror-scroll {
|
115 |
-
/* 30px is the magic margin used to hide the element's real scrollbars */
|
116 |
-
/* See overflow: hidden in .CodeMirror */
|
117 |
-
margin-bottom: -30px; margin-right: -30px;
|
118 |
-
padding-bottom: 30px; padding-right: 30px;
|
119 |
-
height: 100%;
|
120 |
-
outline: none; /* Prevent dragging from highlighting the element */
|
121 |
-
position: relative;
|
122 |
-
}
|
123 |
-
.CodeMirror-sizer {
|
124 |
-
position: relative;
|
125 |
-
}
|
126 |
-
|
127 |
-
/* The fake, visible scrollbars. Used to force redraw during scrolling
|
128 |
-
before actuall scrolling happens, thus preventing shaking and
|
129 |
-
flickering artifacts. */
|
130 |
-
.CodeMirror-vscrollbar, .CodeMirror-hscrollbar, .CodeMirror-scrollbar-filler, .CodeMirror-gutter-filler {
|
131 |
-
position: absolute;
|
132 |
-
z-index: 6;
|
133 |
-
display: none;
|
134 |
-
}
|
135 |
-
.CodeMirror-vscrollbar {
|
136 |
-
right: 0; top: 0;
|
137 |
-
overflow-x: hidden;
|
138 |
-
overflow-y: scroll;
|
139 |
-
}
|
140 |
-
.CodeMirror-hscrollbar {
|
141 |
-
bottom: 0; left: 0;
|
142 |
-
overflow-y: hidden;
|
143 |
-
overflow-x: scroll;
|
144 |
-
}
|
145 |
-
.CodeMirror-scrollbar-filler {
|
146 |
-
right: 0; bottom: 0;
|
147 |
-
}
|
148 |
-
.CodeMirror-gutter-filler {
|
149 |
-
left: 0; bottom: 0;
|
150 |
-
}
|
151 |
-
|
152 |
-
.CodeMirror-gutters {
|
153 |
-
position: absolute; left: 0; top: 0;
|
154 |
-
padding-bottom: 30px;
|
155 |
-
z-index: 3;
|
156 |
-
}
|
157 |
-
.CodeMirror-gutter {
|
158 |
-
white-space: normal;
|
159 |
-
height: 100%;
|
160 |
-
padding-bottom: 30px;
|
161 |
-
margin-bottom: -32px;
|
162 |
-
display: inline-block;
|
163 |
-
/* Hack to make IE7 behave */
|
164 |
-
*zoom:1;
|
165 |
-
*display:inline;
|
166 |
-
}
|
167 |
-
.CodeMirror-gutter-elt {
|
168 |
-
position: absolute;
|
169 |
-
cursor: default;
|
170 |
-
z-index: 4;
|
171 |
-
}
|
172 |
-
|
173 |
-
.CodeMirror-lines {
|
174 |
-
cursor: text;
|
175 |
-
}
|
176 |
-
.CodeMirror pre {
|
177 |
-
/* Reset some styles that the rest of the page might have set */
|
178 |
-
-moz-border-radius: 0; -webkit-border-radius: 0; border-radius: 0;
|
179 |
-
border-width: 0;
|
180 |
-
background: transparent;
|
181 |
-
font-family: inherit;
|
182 |
-
font-size: inherit;
|
183 |
-
margin: 0;
|
184 |
-
white-space: pre;
|
185 |
-
word-wrap: normal;
|
186 |
-
line-height: inherit;
|
187 |
-
color: inherit;
|
188 |
-
z-index: 2;
|
189 |
-
position: relative;
|
190 |
-
overflow: visible;
|
191 |
-
}
|
192 |
-
.CodeMirror-wrap pre {
|
193 |
-
word-wrap: break-word;
|
194 |
-
white-space: pre-wrap;
|
195 |
-
word-break: normal;
|
196 |
-
}
|
197 |
-
.CodeMirror-code pre {
|
198 |
-
border-right: 30px solid transparent;
|
199 |
-
width: -webkit-fit-content;
|
200 |
-
width: -moz-fit-content;
|
201 |
-
width: fit-content;
|
202 |
-
}
|
203 |
-
.CodeMirror-wrap .CodeMirror-code pre {
|
204 |
-
border-right: none;
|
205 |
-
width: auto;
|
206 |
-
}
|
207 |
-
.CodeMirror-linebackground {
|
208 |
-
position: absolute;
|
209 |
-
left: 0; right: 0; top: 0; bottom: 0;
|
210 |
-
z-index: 0;
|
211 |
-
}
|
212 |
-
|
213 |
-
.CodeMirror-linewidget {
|
214 |
-
position: relative;
|
215 |
-
z-index: 2;
|
216 |
-
overflow: auto;
|
217 |
-
}
|
218 |
-
|
219 |
-
.CodeMirror-widget {
|
220 |
-
}
|
221 |
-
|
222 |
-
.CodeMirror-wrap .CodeMirror-scroll {
|
223 |
-
overflow-x: hidden;
|
224 |
-
}
|
225 |
-
|
226 |
-
.CodeMirror-measure {
|
227 |
-
position: absolute;
|
228 |
-
width: 100%; height: 0px;
|
229 |
-
overflow: hidden;
|
230 |
-
visibility: hidden;
|
231 |
-
}
|
232 |
-
.CodeMirror-measure pre { position: static; }
|
233 |
-
|
234 |
-
.CodeMirror div.CodeMirror-cursor {
|
235 |
-
position: absolute;
|
236 |
-
visibility: hidden;
|
237 |
-
border-right: none;
|
238 |
-
width: 0;
|
239 |
-
}
|
240 |
-
.CodeMirror-focused div.CodeMirror-cursor {
|
241 |
-
visibility: visible;
|
242 |
-
}
|
243 |
-
|
244 |
-
.CodeMirror-selected { background: #d9d9d9; }
|
245 |
-
.CodeMirror-focused .CodeMirror-selected { background: #d7d4f0; }
|
246 |
-
|
247 |
-
.cm-searching {
|
248 |
-
background: #ffa;
|
249 |
-
background: rgba(255, 255, 0, .4);
|
250 |
-
}
|
251 |
-
|
252 |
-
/* IE7 hack to prevent it from returning funny offsetTops on the spans */
|
253 |
-
.CodeMirror span { *vertical-align: text-bottom; }
|
254 |
-
|
255 |
-
@media print {
|
256 |
-
/* Hide the cursor when printing */
|
257 |
-
.CodeMirror div.CodeMirror-cursor {
|
258 |
-
visibility: hidden;
|
259 |
-
}
|
260 |
-
}
|
1 |
+
/* BASICS */
|
2 |
+
|
3 |
+
.CodeMirror {
|
4 |
+
/* Set height, width, borders, and global font properties here */
|
5 |
+
font-family: monospace;
|
6 |
+
height: 400px;
|
7 |
+
clear: both;
|
8 |
+
padding: 0;
|
9 |
+
}
|
10 |
+
.CodeMirror-scroll {
|
11 |
+
/* Set scrolling behaviour here */
|
12 |
+
overflow: auto;
|
13 |
+
}
|
14 |
+
|
15 |
+
/* PADDING */
|
16 |
+
|
17 |
+
.CodeMirror-lines {
|
18 |
+
padding: 4px 0; /* Vertical padding around content */
|
19 |
+
}
|
20 |
+
.CodeMirror pre {
|
21 |
+
padding: 0 4px; /* Horizontal padding of content */
|
22 |
+
}
|
23 |
+
|
24 |
+
.CodeMirror-scrollbar-filler, .CodeMirror-gutter-filler {
|
25 |
+
background-color: white; /* The little square between H and V scrollbars */
|
26 |
+
}
|
27 |
+
|
28 |
+
/* GUTTER */
|
29 |
+
|
30 |
+
.CodeMirror-gutters {
|
31 |
+
border-right: 1px solid #ddd;
|
32 |
+
background-color: #f7f7f7;
|
33 |
+
white-space: nowrap;
|
34 |
+
}
|
35 |
+
.CodeMirror-linenumbers {}
|
36 |
+
.CodeMirror-linenumber {
|
37 |
+
padding: 0 3px 0 5px;
|
38 |
+
min-width: 20px;
|
39 |
+
text-align: right;
|
40 |
+
color: #999;
|
41 |
+
}
|
42 |
+
|
43 |
+
/* CURSOR */
|
44 |
+
|
45 |
+
.CodeMirror div.CodeMirror-cursor {
|
46 |
+
border-left: 1px solid black;
|
47 |
+
z-index: 3;
|
48 |
+
}
|
49 |
+
/* Shown when moving in bi-directional text */
|
50 |
+
.CodeMirror div.CodeMirror-secondarycursor {
|
51 |
+
border-left: 1px solid silver;
|
52 |
+
}
|
53 |
+
.CodeMirror.cm-keymap-fat-cursor div.CodeMirror-cursor {
|
54 |
+
width: auto;
|
55 |
+
border: 0;
|
56 |
+
background: #7e7;
|
57 |
+
z-index: 1;
|
58 |
+
}
|
59 |
+
/* Can style cursor different in overwrite (non-insert) mode */
|
60 |
+
.CodeMirror div.CodeMirror-cursor.CodeMirror-overwrite {}
|
61 |
+
|
62 |
+
.cm-tab { display: inline-block; }
|
63 |
+
|
64 |
+
/* DEFAULT THEME */
|
65 |
+
|
66 |
+
.cm-s-default .cm-keyword {color: #708;}
|
67 |
+
.cm-s-default .cm-atom {color: #219;}
|
68 |
+
.cm-s-default .cm-number {color: #164;}
|
69 |
+
.cm-s-default .cm-def {color: #00f;}
|
70 |
+
.cm-s-default .cm-variable {color: black;}
|
71 |
+
.cm-s-default .cm-variable-2 {color: #05a;}
|
72 |
+
.cm-s-default .cm-variable-3 {color: #085;}
|
73 |
+
.cm-s-default .cm-property {color: black;}
|
74 |
+
.cm-s-default .cm-operator {color: black;}
|
75 |
+
.cm-s-default .cm-comment {color: #a50;}
|
76 |
+
.cm-s-default .cm-string {color: #a11;}
|
77 |
+
.cm-s-default .cm-string-2 {color: #f50;}
|
78 |
+
.cm-s-default .cm-meta {color: #555;}
|
79 |
+
.cm-s-default .cm-error {color: #f00;}
|
80 |
+
.cm-s-default .cm-qualifier {color: #555;}
|
81 |
+
.cm-s-default .cm-builtin {color: #30a;}
|
82 |
+
.cm-s-default .cm-bracket {color: #997;}
|
83 |
+
.cm-s-default .cm-tag {color: #170;}
|
84 |
+
.cm-s-default .cm-attribute {color: #00c;}
|
85 |
+
.cm-s-default .cm-header {color: blue;}
|
86 |
+
.cm-s-default .cm-quote {color: #090;}
|
87 |
+
.cm-s-default .cm-hr {color: #999;}
|
88 |
+
.cm-s-default .cm-link {color: #00c;}
|
89 |
+
|
90 |
+
.cm-negative {color: #d44;}
|
91 |
+
.cm-positive {color: #292;}
|
92 |
+
.cm-header, .cm-strong {font-weight: bold;}
|
93 |
+
.cm-em {font-style: italic;}
|
94 |
+
.cm-link {text-decoration: underline;}
|
95 |
+
|
96 |
+
.cm-invalidchar {color: #f00;}
|
97 |
+
|
98 |
+
div.CodeMirror span.CodeMirror-matchingbracket {color: #0f0;}
|
99 |
+
div.CodeMirror span.CodeMirror-nonmatchingbracket {color: #f22;}
|
100 |
+
|
101 |
+
/* STOP */
|
102 |
+
|
103 |
+
/* The rest of this file contains styles related to the mechanics of
|
104 |
+
the editor. You probably shouldn't touch them. */
|
105 |
+
|
106 |
+
.CodeMirror {
|
107 |
+
line-height: 1;
|
108 |
+
position: relative;
|
109 |
+
overflow: hidden;
|
110 |
+
background: #fafafa;
|
111 |
+
color: black;
|
112 |
+
}
|
113 |
+
|
114 |
+
.CodeMirror-scroll {
|
115 |
+
/* 30px is the magic margin used to hide the element's real scrollbars */
|
116 |
+
/* See overflow: hidden in .CodeMirror */
|
117 |
+
margin-bottom: -30px; margin-right: -30px;
|
118 |
+
padding-bottom: 30px; padding-right: 30px;
|
119 |
+
height: 100%;
|
120 |
+
outline: none; /* Prevent dragging from highlighting the element */
|
121 |
+
position: relative;
|
122 |
+
}
|
123 |
+
.CodeMirror-sizer {
|
124 |
+
position: relative;
|
125 |
+
}
|
126 |
+
|
127 |
+
/* The fake, visible scrollbars. Used to force redraw during scrolling
|
128 |
+
before actuall scrolling happens, thus preventing shaking and
|
129 |
+
flickering artifacts. */
|
130 |
+
.CodeMirror-vscrollbar, .CodeMirror-hscrollbar, .CodeMirror-scrollbar-filler, .CodeMirror-gutter-filler {
|
131 |
+
position: absolute;
|
132 |
+
z-index: 6;
|
133 |
+
display: none;
|
134 |
+
}
|
135 |
+
.CodeMirror-vscrollbar {
|
136 |
+
right: 0; top: 0;
|
137 |
+
overflow-x: hidden;
|
138 |
+
overflow-y: scroll;
|
139 |
+
}
|
140 |
+
.CodeMirror-hscrollbar {
|
141 |
+
bottom: 0; left: 0;
|
142 |
+
overflow-y: hidden;
|
143 |
+
overflow-x: scroll;
|
144 |
+
}
|
145 |
+
.CodeMirror-scrollbar-filler {
|
146 |
+
right: 0; bottom: 0;
|
147 |
+
}
|
148 |
+
.CodeMirror-gutter-filler {
|
149 |
+
left: 0; bottom: 0;
|
150 |
+
}
|
151 |
+
|
152 |
+
.CodeMirror-gutters {
|
153 |
+
position: absolute; left: 0; top: 0;
|
154 |
+
padding-bottom: 30px;
|
155 |
+
z-index: 3;
|
156 |
+
}
|
157 |
+
.CodeMirror-gutter {
|
158 |
+
white-space: normal;
|
159 |
+
height: 100%;
|
160 |
+
padding-bottom: 30px;
|
161 |
+
margin-bottom: -32px;
|
162 |
+
display: inline-block;
|
163 |
+
/* Hack to make IE7 behave */
|
164 |
+
*zoom:1;
|
165 |
+
*display:inline;
|
166 |
+
}
|
167 |
+
.CodeMirror-gutter-elt {
|
168 |
+
position: absolute;
|
169 |
+
cursor: default;
|
170 |
+
z-index: 4;
|
171 |
+
}
|
172 |
+
|
173 |
+
.CodeMirror-lines {
|
174 |
+
cursor: text;
|
175 |
+
}
|
176 |
+
.CodeMirror pre {
|
177 |
+
/* Reset some styles that the rest of the page might have set */
|
178 |
+
-moz-border-radius: 0; -webkit-border-radius: 0; border-radius: 0;
|
179 |
+
border-width: 0;
|
180 |
+
background: transparent;
|
181 |
+
font-family: inherit;
|
182 |
+
font-size: inherit;
|
183 |
+
margin: 0;
|
184 |
+
white-space: pre;
|
185 |
+
word-wrap: normal;
|
186 |
+
line-height: inherit;
|
187 |
+
color: inherit;
|
188 |
+
z-index: 2;
|
189 |
+
position: relative;
|
190 |
+
overflow: visible;
|
191 |
+
}
|
192 |
+
.CodeMirror-wrap pre {
|
193 |
+
word-wrap: break-word;
|
194 |
+
white-space: pre-wrap;
|
195 |
+
word-break: normal;
|
196 |
+
}
|
197 |
+
.CodeMirror-code pre {
|
198 |
+
border-right: 30px solid transparent;
|
199 |
+
width: -webkit-fit-content;
|
200 |
+
width: -moz-fit-content;
|
201 |
+
width: fit-content;
|
202 |
+
}
|
203 |
+
.CodeMirror-wrap .CodeMirror-code pre {
|
204 |
+
border-right: none;
|
205 |
+
width: auto;
|
206 |
+
}
|
207 |
+
.CodeMirror-linebackground {
|
208 |
+
position: absolute;
|
209 |
+
left: 0; right: 0; top: 0; bottom: 0;
|
210 |
+
z-index: 0;
|
211 |
+
}
|
212 |
+
|
213 |
+
.CodeMirror-linewidget {
|
214 |
+
position: relative;
|
215 |
+
z-index: 2;
|
216 |
+
overflow: auto;
|
217 |
+
}
|
218 |
+
|
219 |
+
.CodeMirror-widget {
|
220 |
+
}
|
221 |
+
|
222 |
+
.CodeMirror-wrap .CodeMirror-scroll {
|
223 |
+
overflow-x: hidden;
|
224 |
+
}
|
225 |
+
|
226 |
+
.CodeMirror-measure {
|
227 |
+
position: absolute;
|
228 |
+
width: 100%; height: 0px;
|
229 |
+
overflow: hidden;
|
230 |
+
visibility: hidden;
|
231 |
+
}
|
232 |
+
.CodeMirror-measure pre { position: static; }
|
233 |
+
|
234 |
+
.CodeMirror div.CodeMirror-cursor {
|
235 |
+
position: absolute;
|
236 |
+
visibility: hidden;
|
237 |
+
border-right: none;
|
238 |
+
width: 0;
|
239 |
+
}
|
240 |
+
.CodeMirror-focused div.CodeMirror-cursor {
|
241 |
+
visibility: visible;
|
242 |
+
}
|
243 |
+
|
244 |
+
.CodeMirror-selected { background: #d9d9d9; }
|
245 |
+
.CodeMirror-focused .CodeMirror-selected { background: #d7d4f0; }
|
246 |
+
|
247 |
+
.cm-searching {
|
248 |
+
background: #ffa;
|
249 |
+
background: rgba(255, 255, 0, .4);
|
250 |
+
}
|
251 |
+
|
252 |
+
/* IE7 hack to prevent it from returning funny offsetTops on the spans */
|
253 |
+
.CodeMirror span { *vertical-align: text-bottom; }
|
254 |
+
|
255 |
+
@media print {
|
256 |
+
/* Hide the cursor when printing */
|
257 |
+
.CodeMirror div.CodeMirror-cursor {
|
258 |
+
visibility: hidden;
|
259 |
+
}
|
260 |
+
}
|
plugin-fw/assets/css/colorbox.css
CHANGED
@@ -1,66 +1,66 @@
|
|
1 |
-
/*
|
2 |
-
Colorbox Core Style:
|
3 |
-
The following CSS is consistent between example themes and should not be altered.
|
4 |
-
*/
|
5 |
-
#colorbox, #cboxOverlay, #cboxWrapper{position:absolute; top:0; left:0; z-index:9999; overflow:hidden; -webkit-transform: translate3d(0,0,0);}
|
6 |
-
#cboxWrapper {max-width:none;}
|
7 |
-
#cboxOverlay{position:fixed; width:100%; height:100%;}
|
8 |
-
#cboxMiddleLeft, #cboxBottomLeft{clear:left;}
|
9 |
-
#cboxContent{position:relative;}
|
10 |
-
#cboxLoadedContent{overflow:auto; -webkit-overflow-scrolling: touch;}
|
11 |
-
#cboxTitle{margin:0;}
|
12 |
-
#cboxLoadingOverlay, #cboxLoadingGraphic{position:absolute; top:0; left:0; width:100%; height:100%;}
|
13 |
-
#cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow{cursor:pointer;}
|
14 |
-
.cboxPhoto{float:left; margin:auto; border:0; display:block; max-width:none; -ms-interpolation-mode:bicubic;}
|
15 |
-
.cboxIframe{width:100%; height:100%; display:block; border:0; padding:0; margin:0;}
|
16 |
-
#colorbox, #cboxContent, #cboxLoadedContent{box-sizing:content-box; -moz-box-sizing:content-box; -webkit-box-sizing:content-box;}
|
17 |
-
|
18 |
-
/*
|
19 |
-
User Style:
|
20 |
-
Change the following styles to modify the appearance of Colorbox. They are
|
21 |
-
ordered & tabbed in a way that represents the nesting of the generated HTML.
|
22 |
-
*/
|
23 |
-
#cboxOverlay{background:#fff; opacity: 0.9; filter: alpha(opacity = 90);}
|
24 |
-
#colorbox{outline:0;}
|
25 |
-
#cboxTopLeft{width:25px; height:25px; background:url(../images/colorbox/border1.png) no-repeat 0 0;}
|
26 |
-
#cboxTopCenter{height:25px; background:url(../images/colorbox/border1.png) repeat-x 0 -50px;}
|
27 |
-
#cboxTopRight{width:25px; height:25px; background:url(../images/colorbox/border1.png) no-repeat -25px 0;}
|
28 |
-
#cboxBottomLeft{width:25px; height:25px; background:url(../images/colorbox/border1.png) no-repeat 0 -25px;}
|
29 |
-
#cboxBottomCenter{height:25px; background:url(../images/colorbox/border1.png) repeat-x 0 -75px;}
|
30 |
-
#cboxBottomRight{width:25px; height:25px; background:url(../images/colorbox/border1.png) no-repeat -25px -25px;}
|
31 |
-
#cboxMiddleLeft{width:25px; background:url(../images/colorbox/border2.png) repeat-y 0 0;}
|
32 |
-
#cboxMiddleRight{width:25px; background:url(../images/colorbox/border2.png) repeat-y -25px 0;}
|
33 |
-
#cboxContent{background:#fff; overflow:hidden;}
|
34 |
-
.cboxIframe{background:#fff;}
|
35 |
-
#cboxError{padding:50px; border:1px solid #ccc;}
|
36 |
-
#cboxLoadedContent{margin-bottom:20px;}
|
37 |
-
#cboxTitle{position:absolute; bottom:0px; left:0; text-align:center; width:100%; color:#999;}
|
38 |
-
#cboxCurrent{position:absolute; bottom:0px; left:100px; color:#999;}
|
39 |
-
#cboxLoadingOverlay{background:#fff url(../images/colorbox/loading.gif) no-repeat 5px 5px;}
|
40 |
-
|
41 |
-
/* these elements are buttons, and may need to have additional styles reset to avoid unwanted base styles */
|
42 |
-
#cboxPrevious, #cboxNext, #cboxSlideshow, #cboxClose {border:0; padding:0; margin:0; overflow:visible; width:auto; background:none; }
|
43 |
-
|
44 |
-
/* avoid outlines on :active (mouseclick), but preserve outlines on :focus (tabbed navigating) */
|
45 |
-
#cboxPrevious:active, #cboxNext:active, #cboxSlideshow:active, #cboxClose:active {outline:0;}
|
46 |
-
|
47 |
-
#cboxSlideshow{position:absolute; bottom:0px; right:42px; color:#444;}
|
48 |
-
#cboxPrevious{position:absolute; bottom:0px; left:0; color:#444;}
|
49 |
-
#cboxNext{position:absolute; bottom:0px; left:63px; color:#444;}
|
50 |
-
#cboxClose{position:absolute; bottom:0; right:0; display:block; color:#444;}
|
51 |
-
|
52 |
-
/*
|
53 |
-
The following fixes a problem where IE7 and IE8 replace a PNG's alpha transparency with a black fill
|
54 |
-
when an alpha filter (opacity change) is set on the element or ancestor element. This style is not applied to or needed in IE9.
|
55 |
-
See: http://jacklmoore.com/notes/ie-transparency-problems/
|
56 |
-
*/
|
57 |
-
.cboxIE #cboxTopLeft,
|
58 |
-
.cboxIE #cboxTopCenter,
|
59 |
-
.cboxIE #cboxTopRight,
|
60 |
-
.cboxIE #cboxBottomLeft,
|
61 |
-
.cboxIE #cboxBottomCenter,
|
62 |
-
.cboxIE #cboxBottomRight,
|
63 |
-
.cboxIE #cboxMiddleLeft,
|
64 |
-
.cboxIE #cboxMiddleRight {
|
65 |
-
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#00FFFFFF,endColorstr=#00FFFFFF);
|
66 |
}
|
1 |
+
/*
|
2 |
+
Colorbox Core Style:
|
3 |
+
The following CSS is consistent between example themes and should not be altered.
|
4 |
+
*/
|
5 |
+
#colorbox, #cboxOverlay, #cboxWrapper{position:absolute; top:0; left:0; z-index:9999; overflow:hidden; -webkit-transform: translate3d(0,0,0);}
|
6 |
+
#cboxWrapper {max-width:none;}
|
7 |
+
#cboxOverlay{position:fixed; width:100%; height:100%;}
|
8 |
+
#cboxMiddleLeft, #cboxBottomLeft{clear:left;}
|
9 |
+
#cboxContent{position:relative;}
|
10 |
+
#cboxLoadedContent{overflow:auto; -webkit-overflow-scrolling: touch;}
|
11 |
+
#cboxTitle{margin:0;}
|
12 |
+
#cboxLoadingOverlay, #cboxLoadingGraphic{position:absolute; top:0; left:0; width:100%; height:100%;}
|
13 |
+
#cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow{cursor:pointer;}
|
14 |
+
.cboxPhoto{float:left; margin:auto; border:0; display:block; max-width:none; -ms-interpolation-mode:bicubic;}
|
15 |
+
.cboxIframe{width:100%; height:100%; display:block; border:0; padding:0; margin:0;}
|
16 |
+
#colorbox, #cboxContent, #cboxLoadedContent{box-sizing:content-box; -moz-box-sizing:content-box; -webkit-box-sizing:content-box;}
|
17 |
+
|
18 |
+
/*
|
19 |
+
User Style:
|
20 |
+
Change the following styles to modify the appearance of Colorbox. They are
|
21 |
+
ordered & tabbed in a way that represents the nesting of the generated HTML.
|
22 |
+
*/
|
23 |
+
#cboxOverlay{background:#fff; opacity: 0.9; filter: alpha(opacity = 90);}
|
24 |
+
#colorbox{outline:0;}
|
25 |
+
#cboxTopLeft{width:25px; height:25px; background:url(../images/colorbox/border1.png) no-repeat 0 0;}
|
26 |
+
#cboxTopCenter{height:25px; background:url(../images/colorbox/border1.png) repeat-x 0 -50px;}
|
27 |
+
#cboxTopRight{width:25px; height:25px; background:url(../images/colorbox/border1.png) no-repeat -25px 0;}
|
28 |
+
#cboxBottomLeft{width:25px; height:25px; background:url(../images/colorbox/border1.png) no-repeat 0 -25px;}
|
29 |
+
#cboxBottomCenter{height:25px; background:url(../images/colorbox/border1.png) repeat-x 0 -75px;}
|
30 |
+
#cboxBottomRight{width:25px; height:25px; background:url(../images/colorbox/border1.png) no-repeat -25px -25px;}
|
31 |
+
#cboxMiddleLeft{width:25px; background:url(../images/colorbox/border2.png) repeat-y 0 0;}
|
32 |
+
#cboxMiddleRight{width:25px; background:url(../images/colorbox/border2.png) repeat-y -25px 0;}
|
33 |
+
#cboxContent{background:#fff; overflow:hidden;}
|
34 |
+
.cboxIframe{background:#fff;}
|
35 |
+
#cboxError{padding:50px; border:1px solid #ccc;}
|
36 |
+
#cboxLoadedContent{margin-bottom:20px;}
|
37 |
+
#cboxTitle{position:absolute; bottom:0px; left:0; text-align:center; width:100%; color:#999;}
|
38 |
+
#cboxCurrent{position:absolute; bottom:0px; left:100px; color:#999;}
|
39 |
+
#cboxLoadingOverlay{background:#fff url(../images/colorbox/loading.gif) no-repeat 5px 5px;}
|
40 |
+
|
41 |
+
/* these elements are buttons, and may need to have additional styles reset to avoid unwanted base styles */
|
42 |
+
#cboxPrevious, #cboxNext, #cboxSlideshow, #cboxClose {border:0; padding:0; margin:0; overflow:visible; width:auto; background:none; }
|
43 |
+
|
44 |
+
/* avoid outlines on :active (mouseclick), but preserve outlines on :focus (tabbed navigating) */
|
45 |
+
#cboxPrevious:active, #cboxNext:active, #cboxSlideshow:active, #cboxClose:active {outline:0;}
|
46 |
+
|
47 |
+
#cboxSlideshow{position:absolute; bottom:0px; right:42px; color:#444;}
|
48 |
+
#cboxPrevious{position:absolute; bottom:0px; left:0; color:#444;}
|
49 |
+
#cboxNext{position:absolute; bottom:0px; left:63px; color:#444;}
|
50 |
+
#cboxClose{position:absolute; bottom:0; right:0; display:block; color:#444;}
|
51 |
+
|
52 |
+
/*
|
53 |
+
The following fixes a problem where IE7 and IE8 replace a PNG's alpha transparency with a black fill
|
54 |
+
when an alpha filter (opacity change) is set on the element or ancestor element. This style is not applied to or needed in IE9.
|
55 |
+
See: http://jacklmoore.com/notes/ie-transparency-problems/
|
56 |
+
*/
|
57 |
+
.cboxIE #cboxTopLeft,
|
58 |
+
.cboxIE #cboxTopCenter,
|
59 |
+
.cboxIE #cboxTopRight,
|
60 |
+
.cboxIE #cboxBottomLeft,
|
61 |
+
.cboxIE #cboxBottomCenter,
|
62 |
+
.cboxIE #cboxBottomRight,
|
63 |
+
.cboxIE #cboxMiddleLeft,
|
64 |
+
.cboxIE #cboxMiddleRight {
|
65 |
+
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#00FFFFFF,endColorstr=#00FFFFFF);
|
66 |
}
|
plugin-fw/assets/css/elementor.css
CHANGED
@@ -1,36 +1,36 @@
|
|
1 |
-
/**
|
2 |
-
* Style for Elementor Editor customization
|
3 |
-
*/
|
4 |
-
|
5 |
-
.yith-plugin-fw-elementor-widget-description {
|
6 |
-
margin-bottom : 10px;
|
7 |
-
font-style : italic;
|
8 |
-
}
|
9 |
-
|
10 |
-
.yith-plugin-fw-elementor-shortcode-widget--shortcode,
|
11 |
-
.yith-plugin-fw-elementor-shortcode-widget--empty-html {
|
12 |
-
font-family : -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
|
13 |
-
padding : 1em 1em 1.2em;
|
14 |
-
border : 1px solid #1e1e1e;
|
15 |
-
border-radius : 4px;
|
16 |
-
}
|
17 |
-
|
18 |
-
.yith-plugin-fw-elementor-shortcode-widget__title {
|
19 |
-
font-size : 15px;
|
20 |
-
font-weight : 700;
|
21 |
-
margin-bottom : 10px;
|
22 |
-
}
|
23 |
-
|
24 |
-
.yith-plugin-fw-elementor-shortcode-widget__message {
|
25 |
-
font-style : italic;
|
26 |
-
font-size : 13px;
|
27 |
-
}
|
28 |
-
|
29 |
-
.yith-plugin-fw-elementor-shortcode-widget--shortcode .yith-plugin-fw-elementor-shortcode-widget__content {
|
30 |
-
font-family : Menlo, Consolas, monaco, monospace;
|
31 |
-
color : #1e1e1e;
|
32 |
-
font-size : 13px;
|
33 |
-
padding : 0.8em 1em;
|
34 |
-
border : 1px solid #ddd;
|
35 |
-
border-radius : 4px;
|
36 |
}
|
1 |
+
/**
|
2 |
+
* Style for Elementor Editor customization
|
3 |
+
*/
|
4 |
+
|
5 |
+
.yith-plugin-fw-elementor-widget-description {
|
6 |
+
margin-bottom : 10px;
|
7 |
+
font-style : italic;
|
8 |
+
}
|
9 |
+
|
10 |
+
.yith-plugin-fw-elementor-shortcode-widget--shortcode,
|
11 |
+
.yith-plugin-fw-elementor-shortcode-widget--empty-html {
|
12 |
+
font-family : -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
|
13 |
+
padding : 1em 1em 1.2em;
|
14 |
+
border : 1px solid #1e1e1e;
|
15 |
+
border-radius : 4px;
|
16 |
+
}
|
17 |
+
|
18 |
+
.yith-plugin-fw-elementor-shortcode-widget__title {
|
19 |
+
font-size : 15px;
|
20 |
+
font-weight : 700;
|
21 |
+
margin-bottom : 10px;
|
22 |
+
}
|
23 |
+
|
24 |
+
.yith-plugin-fw-elementor-shortcode-widget__message {
|
25 |
+
font-style : italic;
|
26 |
+
font-size : 13px;
|
27 |
+
}
|
28 |
+
|
29 |
+
.yith-plugin-fw-elementor-shortcode-widget--shortcode .yith-plugin-fw-elementor-shortcode-widget__content {
|
30 |
+
font-family : Menlo, Consolas, monaco, monospace;
|
31 |
+
color : #1e1e1e;
|
32 |
+
font-size : 13px;
|
33 |
+
padding : 0.8em 1em;
|
34 |
+
border : 1px solid #ddd;
|
35 |
+
border-radius : 4px;
|
36 |
}
|
plugin-fw/assets/css/metaboxes.css
CHANGED
@@ -1,752 +1,752 @@
|
|
1 |
-
/* self-clear floats */
|
2 |
-
.clearfix:after {
|
3 |
-
content : ".";
|
4 |
-
display : block;
|
5 |
-
height : 0;
|
6 |
-
clear : both;
|
7 |
-
visibility : hidden;
|
8 |
-
overflow : hidden;
|
9 |
-
}
|
10 |
-
|
11 |
-
/* ie.css */
|
12 |
-
* html .clearfix { /* IE6 */
|
13 |
-
height : 1%;
|
14 |
-
}
|
15 |
-
|
16 |
-
*:first-child + html .clearfix { /* IE7 */
|
17 |
-
min-height : 1%;
|
18 |
-
}
|
19 |
-
|
20 |
-
.clearboth {
|
21 |
-
clear : both
|
22 |
-
}
|
23 |
-
|
24 |
-
/* === TAB STYLE */
|
25 |
-
.metaboxes-tab {
|
26 |
-
margin : -6px -12px -8px;
|
27 |
-
}
|
28 |
-
|
29 |
-
.metaboxes-tab div.tabs-panel {
|
30 |
-
height : auto;
|
31 |
-
overflow : visible;
|
32 |
-
margin-top : 0px;
|
33 |
-
padding : 0 10px;
|
34 |
-
background : none;
|
35 |
-
border : 0;
|
36 |
-
}
|
37 |
-
|
38 |
-
.metaboxes-tab ul.metaboxes-tabs {
|
39 |
-
background : #f1f1f1;
|
40 |
-
margin : 0;
|
41 |
-
padding : 10px 0 0 5px;
|
42 |
-
}
|
43 |
-
|
44 |
-
.metaboxes-tab ul.metaboxes-tabs li {
|
45 |
-
float : left;
|
46 |
-
background : #dedede;
|
47 |
-
margin : 0 0 0 5px;
|
48 |
-
}
|
49 |
-
|
50 |
-
.metaboxes-tab ul.metaboxes-tabs li a {
|
51 |
-
color : #555;
|
52 |
-
text-decoration : none;
|
53 |
-
padding : 8px 15px;
|
54 |
-
display : block;
|
55 |
-
box-shadow : none !important;
|
56 |
-
}
|
57 |
-
|
58 |
-
.metaboxes-tab ul.metaboxes-tabs li.tabs {
|
59 |
-
background : #fff;
|
60 |
-
}
|
61 |
-
|
62 |
-
.metaboxes-tab p.field-row {
|
63 |
-
margin : 20px 0;
|
64 |
-
}
|
65 |
-
|
66 |
-
.metaboxes-tab div.sep {
|
67 |
-
height : 1px;
|
68 |
-
background : #dfdfdf;
|
69 |
-
clear : both;
|
70 |
-
margin-left : -10px;
|
71 |
-
margin-right : -10px;
|
72 |
-
}
|
73 |
-
|
74 |
-
.metaboxes-tab label {
|
75 |
-
font-weight : bold;
|
76 |
-
width : 160px;
|
77 |
-
float : left;
|
78 |
-
line-height : 23px;
|
79 |
-
margin-left : -184px;
|
80 |
-
}
|
81 |
-
|
82 |
-
.metaboxes-tab label small {
|
83 |
-
font-weight : normal;
|
84 |
-
line-height : 15px;
|
85 |
-
font-style : italic;
|
86 |
-
color : #999;
|
87 |
-
display : block;
|
88 |
-
}
|
89 |
-
|
90 |
-
.metaboxes-tab .yith-plugin-fw-radio__row {
|
91 |
-
width : 100%;
|
92 |
-
min-height : 20px;
|
93 |
-
}
|
94 |
-
|
95 |
-
.metaboxes-tab .yith-plugin-fw-radio__row label,
|
96 |
-
.metaboxes-tab .yith-toggle-elements label,
|
97 |
-
.metaboxes-tab .yith-add-box label {
|
98 |
-
margin-left : 0;
|
99 |
-
font-weight : normal;
|
100 |
-
}
|
101 |
-
|
102 |
-
.metaboxes-tab.yith-plugin-ui h3 {
|
103 |
-
color : #2a8db0;
|
104 |
-
font-size : 15px;
|
105 |
-
text-transform : uppercase;
|
106 |
-
padding : 5px 20px;
|
107 |
-
margin : 0 0 0 -4px;
|
108 |
-
width : auto;
|
109 |
-
background : transparent;
|
110 |
-
}
|
111 |
-
|
112 |
-
.metaboxes-tab.yith-plugin-ui .yith-add-box,
|
113 |
-
.metaboxes-tab.yith-plugin-ui .yith-toggle-row {
|
114 |
-
width : auto;
|
115 |
-
}
|
116 |
-
|
117 |
-
.metaboxes-tab .wp-picker-container label {
|
118 |
-
font-weight : inherit;
|
119 |
-
width : auto;
|
120 |
-
float : none;
|
121 |
-
line-height : inherit;
|
122 |
-
margin-left : 0;
|
123 |
-
}
|
124 |
-
|
125 |
-
.metaboxes-tab.yith-plugin-ui .yith-plugin-fw-radio__row label {
|
126 |
-
width : auto !important;
|
127 |
-
display : inline-block;
|
128 |
-
font-weight : normal;
|
129 |
-
float : none;
|
130 |
-
}
|
131 |
-
|
132 |
-
.metaboxes-tab input[type="checkbox"] {
|
133 |
-
vertical-align : middle
|
134 |
-
}
|
135 |
-
|
136 |
-
.metaboxes-tab input.button-secondary, .metaboxes-tab input.checkbox {
|
137 |
-
width : auto;
|
138 |
-
}
|
139 |
-
|
140 |
-
.metaboxes-tab p.field-row.textarea .description {
|
141 |
-
vertical-align : top;
|
142 |
-
}
|
143 |
-
|
144 |
-
.metaboxes-tab p.field-row.checkbox {
|
145 |
-
background : none;
|
146 |
-
}
|
147 |
-
|
148 |
-
.metaboxes-tab .the-metabox {
|
149 |
-
margin : 20px 0;
|
150 |
-
margin-left : 184px;
|
151 |
-
}
|
152 |
-
|
153 |
-
.metaboxes-tab .the-metabox.no-label {
|
154 |
-
margin : 20px 0;
|
155 |
-
margin-left : 0;
|
156 |
-
}
|
157 |
-
|
158 |
-
.metaboxes-tab hr {
|
159 |
-
height : 0px;
|
160 |
-
border-top : 1px solid #dadada;
|
161 |
-
width : auto;
|
162 |
-
margin-left : -10px;
|
163 |
-
margin-right : -10px;
|
164 |
-
}
|
165 |
-
|
166 |
-
.metaboxes-tab .the-metabox p {
|
167 |
-
margin : 0;
|
168 |
-
}
|
169 |
-
|
170 |
-
.metaboxes-tab .the-metabox:last-child {
|
171 |
-
border-bottom : 0px;
|
172 |
-
}
|
173 |
-
|
174 |
-
.metaboxes-tab .the-metabox.checkbox {
|
175 |
-
background : none;
|
176 |
-
}
|
177 |
-
|
178 |
-
.metaboxes-tab span.description.inline {
|
179 |
-
display : inline-block;
|
180 |
-
line-height : 23px;
|
181 |
-
width : auto;
|
182 |
-
margin : 0;
|
183 |
-
}
|
184 |
-
|
185 |
-
.metaboxes-tab .slider label {
|
186 |
-
padding : 15px 0;
|
187 |
-
}
|
188 |
-
|
189 |
-
.metaboxes-tab.yith-plugin-ui ul.metaboxes-tabs {
|
190 |
-
background : transparent;
|
191 |
-
border-bottom : 1px solid #d8d8d8;
|
192 |
-
padding : 10px 0 0 0;
|
193 |
-
margin : 0 10px
|
194 |
-
}
|
195 |
-
|
196 |
-
|
197 |
-
.metaboxes-tab.yith-plugin-ui ul.metaboxes-tabs li {
|
198 |
-
background : #fff;
|
199 |
-
border-top : 1px solid #d8d8d8;
|
200 |
-
border-left : 1px solid #d8d8d8;
|
201 |
-
border-right : 1px solid #d8d8d8;
|
202 |
-
margin : 0 0 -1px -1px;
|
203 |
-
}
|
204 |
-
|
205 |
-
.metaboxes-tab.yith-plugin-ui ul.metaboxes-tabs li.tabs {
|
206 |
-
border-bottom : 1px solid #fff;
|
207 |
-
}
|
208 |
-
|
209 |
-
.metaboxes-tab.yith-plugin-ui ul.metaboxes-tabs li a {
|
210 |
-
color : #336374;
|
211 |
-
padding : 10px 18px;
|
212 |
-
text-transform : uppercase;
|
213 |
-
font-weight : 600;
|
214 |
-
display : inline-block;
|
215 |
-
}
|
216 |
-
|
217 |
-
.metaboxes-tab.yith-plugin-ui ul.metaboxes-tabs li.tabs a {
|
218 |
-
color : #2a8db0;
|
219 |
-
}
|
220 |
-
|
221 |
-
/* sortable table posts */
|
222 |
-
|
223 |
-
#the-list.ui-sortable tr:hover {
|
224 |
-
cursor : move;
|
225 |
-
}
|
226 |
-
|
227 |
-
.the-metabox.preview {
|
228 |
-
float : none;
|
229 |
-
}
|
230 |
-
|
231 |
-
.metaboxes-tab .the-metabox.no-label.preview {
|
232 |
-
margin-left : 184px;
|
233 |
-
}
|
234 |
-
|
235 |
-
.metaboxes-tab .the-metabox.no-label.preview img {
|
236 |
-
box-shadow : 0 1px 8px rgba(0, 0, 0, 0.2);
|
237 |
-
}
|
238 |
-
|
239 |
-
/**************************************
|
240 |
-
FIELDS
|
241 |
-
***************************************/
|
242 |
-
|
243 |
-
.metaboxes-tab select,
|
244 |
-
.metaboxes-tab input[type=text],
|
245 |
-
.metaboxes-tab input[type=number],
|
246 |
-
.metaboxes-tab textarea,
|
247 |
-
.metaboxes-tab .yith-plugin-fw-select,
|
248 |
-
.metaboxes-tab .yith-plugin-fw-slider-container,
|
249 |
-
.metaboxes-tab .yith-plugin-fw-text-input,
|
250 |
-
.metaboxes-tab .yith-plugin-fw-text-array-table,
|
251 |
-
.metaboxes-tab .yith-plugin-fw-textarea {
|
252 |
-
width : 400px;
|
253 |
-
max-width : 100%;
|
254 |
-
}
|
255 |
-
|
256 |
-
.metaboxes-tab.yith-plugin-ui input[type=number] {
|
257 |
-
width : 70px;
|
258 |
-
min-width : 70px;
|
259 |
-
}
|
260 |
-
|
261 |
-
.metaboxes-tab.yith-plugin-ui p {
|
262 |
-
font-size : 14px;
|
263 |
-
}
|
264 |
-
|
265 |
-
.metaboxes-tab.yith-plugin-ui p.section-description {
|
266 |
-
|
267 |
-
margin : 0 20px 40px 18px;
|
268 |
-
}
|
269 |
-
|
270 |
-
.metaboxes-tab .yith-plugin-fw-text-array-table input[type=text] {
|
271 |
-
width : 100%;
|
272 |
-
}
|
273 |
-
|
274 |
-
.metaboxes-tab.yith-plugin-ui .yith-add-box h3 {
|
275 |
-
padding : 0 0 30px 0;
|
276 |
-
font-weight : 600;
|
277 |
-
margin : 0;
|
278 |
-
}
|
279 |
-
|
280 |
-
.metaboxes-tab.yith-plugin-ui .select2-container--default .select2-selection--single {
|
281 |
-
border : 0;
|
282 |
-
margin : 0;
|
283 |
-
}
|
284 |
-
|
285 |
-
/* wp editor */
|
286 |
-
.the-metabox.textarea-editor .mceIframeContainer {
|
287 |
-
background : #fff;
|
288 |
-
}
|
289 |
-
|
290 |
-
|
291 |
-
.the-metabox.textarea-editor label {
|
292 |
-
margin-top : 24px;
|
293 |
-
}
|
294 |
-
|
295 |
-
/* categories */
|
296 |
-
.categories-panel {
|
297 |
-
width : 30%;
|
298 |
-
float : left;
|
299 |
-
margin-right : 4px;
|
300 |
-
}
|
301 |
-
|
302 |
-
.categories-panel .box {
|
303 |
-
height : 200px;
|
304 |
-
border : 1px solid #dfdfdf;
|
305 |
-
background : #fff;
|
306 |
-
padding : 6px 10px;
|
307 |
-
overflow : auto;
|
308 |
-
}
|
309 |
-
|
310 |
-
.categories-panel ul {
|
311 |
-
list-style : none;
|
312 |
-
margin : 0;
|
313 |
-
}
|
314 |
-
|
315 |
-
.categories-panel ul li {
|
316 |
-
line-height : 19px;
|
317 |
-
margin : 0;
|
318 |
-
padding : 0;
|
319 |
-
word-wrap : break-word;
|
320 |
-
}
|
321 |
-
|
322 |
-
.categories-panel ul li label {
|
323 |
-
font-weight : normal !important;
|
324 |
-
margin-left : 0 !important;
|
325 |
-
}
|
326 |
-
|
327 |
-
.categories-panel input.newcategory {
|
328 |
-
width : 100%;
|
329 |
-
margin-bottom : 3px;
|
330 |
-
}
|
331 |
-
|
332 |
-
/* contact form */
|
333 |
-
.contactform_item {
|
334 |
-
border-style : solid;
|
335 |
-
border-width : 1px;
|
336 |
-
line-height : 1;
|
337 |
-
margin-bottom : 20px;
|
338 |
-
padding : 0;
|
339 |
-
background-color : #f5f5f5;
|
340 |
-
background-image : -moz-linear-gradient(center top, #f9f9f9, #f5f5f5);
|
341 |
-
border-color : #dfdfdf;
|
342 |
-
border-radius : 3px 3px 3px 3px;
|
343 |
-
box-shadow : 0 1px 0 #fff inset;
|
344 |
-
min-width : 255px;
|
345 |
-
position : relative;
|
346 |
-
}
|
347 |
-
|
348 |
-
.contactform_item .handlediv {
|
349 |
-
position : relative;
|
350 |
-
top : -4px;
|
351 |
-
}
|
352 |
-
|
353 |
-
.contactform_item h3 {
|
354 |
-
min-height : 21px;
|
355 |
-
margin : 13px;
|
356 |
-
}
|
357 |
-
|
358 |
-
.contactform_item .inside {
|
359 |
-
padding : 10px !important;
|
360 |
-
}
|
361 |
-
|
362 |
-
.contactform_item .deps {
|
363 |
-
display : none;
|
364 |
-
}
|
365 |
-
|
366 |
-
.contactform_item .addoptions p.option {
|
367 |
-
margin : 5px 0 5px 200px
|
368 |
-
}
|
369 |
-
|
370 |
-
.contactform_item .addoptions p label {
|
371 |
-
width : 80px !important;
|
372 |
-
}
|
373 |
-
|
374 |
-
.contactform_item .add-field-option {
|
375 |
-
margin-bottom : 10px !important;
|
376 |
-
}
|
377 |
-
|
378 |
-
.remove_item {
|
379 |
-
float : right;
|
380 |
-
}
|
381 |
-
|
382 |
-
.metabox-sortable-placeholder {
|
383 |
-
border : 1px dotted #dedede;
|
384 |
-
margin : 10px 0
|
385 |
-
}
|
386 |
-
|
387 |
-
/* features tab */
|
388 |
-
.featurestab_item {
|
389 |
-
border-style : solid;
|
390 |
-
border-width : 1px;
|
391 |
-
line-height : 1;
|
392 |
-
margin-bottom : 20px;
|
393 |
-
padding : 0;
|
394 |
-
background-color : #f5f5f5;
|
395 |
-
background-image : -moz-linear-gradient(center top, #f9f9f9, #f5f5f5);
|
396 |
-
border-color : #dfdfdf;
|
397 |
-
border-radius : 3px 3px 3px 3px;
|
398 |
-
box-shadow : 0 1px 0 #fff inset;
|
399 |
-
min-width : 255px;
|
400 |
-
position : relative;
|
401 |
-
}
|
402 |
-
|
403 |
-
.featurestab_item .handlediv {
|
404 |
-
position : relative;
|
405 |
-
top : -4px;
|
406 |
-
}
|
407 |
-
|
408 |
-
.featurestab_item h3 {
|
409 |
-
min-height : 21px
|
410 |
-
}
|
411 |
-
|
412 |
-
.featurestab_item .inside {
|
413 |
-
padding : 10px !important;
|
414 |
-
}
|
415 |
-
|
416 |
-
.featurestab_item .deps {
|
417 |
-
display : none;
|
418 |
-
}
|
419 |
-
|
420 |
-
.featurestab_item .addoptions p.option {
|
421 |
-
margin : 5px 0 5px 200px
|
422 |
-
}
|
423 |
-
|
424 |
-
.featurestab_item .addoptions p label {
|
425 |
-
width : 80px !important;
|
426 |
-
}
|
427 |
-
|
428 |
-
.featurestab_item .add-field-option {
|
429 |
-
margin-bottom : 10px !important;
|
430 |
-
}
|
431 |
-
|
432 |
-
.messages-panel.updated {
|
433 |
-
margin : 10px 0px 10px !important;
|
434 |
-
max-width : 1200px;
|
435 |
-
border-radius : 5px;
|
436 |
-
-webkit-box-sizing : border-box;
|
437 |
-
box-sizing : border-box;
|
438 |
-
}
|
439 |
-
|
440 |
-
.ui-widget-overlay {
|
441 |
-
background-image : none !important;
|
442 |
-
}
|
443 |
-
|
444 |
-
.the-metabox .icon_type {
|
445 |
-
width : 30%;
|
446 |
-
float : left;
|
447 |
-
margin-right : 40px
|
448 |
-
}
|
449 |
-
|
450 |
-
#post-type-settings .category-list label {
|
451 |
-
width : 187px;
|
452 |
-
}
|
453 |
-
|
454 |
-
.remove_cat {
|
455 |
-
float : right;
|
456 |
-
text-align : center;
|
457 |
-
display : block;
|
458 |
-
width : 20px;
|
459 |
-
height : 20px;
|
460 |
-
border-radius : 20px;
|
461 |
-
font-weight : bold;
|
462 |
-
font-size : 10px;
|
463 |
-
background : #efefef;
|
464 |
-
text-decoration : none;
|
465 |
-
}
|
466 |
-
|
467 |
-
/* typography */
|
468 |
-
.the-metabox.typography .select_wrapper.font-family {
|
469 |
-
width : 200px;
|
470 |
-
}
|
471 |
-
|
472 |
-
.the-metabox.typography .spinner_container {
|
473 |
-
float : left;
|
474 |
-
margin-right : 10px;
|
475 |
-
}
|
476 |
-
|
477 |
-
.the-metabox.typography .spinner_container input.number {
|
478 |
-
width : 50px !important;
|
479 |
-
-webkit-border-top-right-radius : 0px;
|
480 |
-
-webkit-border-bottom-right-radius : 0px;
|
481 |
-
-moz-border-radius-topright : 0px;
|
482 |
-
-moz-border-radius-bottomright : 0px;
|
483 |
-
border-top-right-radius : 0px;
|
484 |
-
border-bottom-right-radius : 0px;
|
485 |
-
}
|
486 |
-
|
487 |
-
/* number */
|
488 |
-
.the-metabox.number input.number {
|
489 |
-
width : 50px !important;
|
490 |
-
}
|
491 |
-
|
492 |
-
/* number */
|
493 |
-
.rm_number .number {
|
494 |
-
width : 70px;
|
495 |
-
text-align : right;
|
496 |
-
-webkit-border-top-right-radius : 0px;
|
497 |
-
-webkit-border-bottom-right-radius : 0px;
|
498 |
-
-moz-border-radius-topright : 0px;
|
499 |
-
-moz-border-radius-bottomright : 0px;
|
500 |
-
border-top-right-radius : 0px;
|
501 |
-
border-bottom-right-radius : 0px;
|
502 |
-
}
|
503 |
-
|
504 |
-
.spinner-wrapper {
|
505 |
-
position : relative;
|
506 |
-
height : 23px;
|
507 |
-
overflow : hidden;
|
508 |
-
}
|
509 |
-
|
510 |
-
.spinner-wrapper input.number {
|
511 |
-
float : left;
|
512 |
-
}
|
513 |
-
|
514 |
-
.spinner-wrapper .spinner-button {
|
515 |
-
cursor : pointer;
|
516 |
-
float : left;
|
517 |
-
position : absolute;
|
518 |
-
left : 69px;
|
519 |
-
width : 15px;
|
520 |
-
height : 12px;
|
521 |
-
border : 1px solid #dfdfdf;
|
522 |
-
background : #fff;
|
523 |
-
margin : 0;
|
524 |
-
padding : 0;
|
525 |
-
line-height : 9999px;
|
526 |
-
overflow : hidden;
|
527 |
-
background : url('../images/spinner.png') no-repeat center -11px
|
528 |
-
}
|
529 |
-
|
530 |
-
.spinner-wrapper .spinner-button.button-plus {
|
531 |
-
top : 0;
|
532 |
-
-webkit-border-top-right-radius : 3px !important;
|
533 |
-
-moz-border-radius-topright : 3px !important;
|
534 |
-
border-top-right-radius : 3px !important;
|
535 |
-
}
|
536 |
-
|
537 |
-
.spinner-wrapper .spinner-button.button-minus {
|
538 |
-
bottom : 0;
|
539 |
-
background-position : center -30px;
|
540 |
-
-webkit-border-bottom-right-radius : 3px !important;
|
541 |
-
-moz-border-radius-bottomright : 3px !important;
|
542 |
-
border-bottom-right-radius : 3px !important;
|
543 |
-
}
|
544 |
-
|
545 |
-
.spinner-wrapper .spinner-button.button-plus:active {
|
546 |
-
background-position : center 0px;
|
547 |
-
}
|
548 |
-
|
549 |
-
.spinner-wrapper .spinner-button.button-minus:active {
|
550 |
-
background-position : center -20px;
|
551 |
-
}
|
552 |
-
|
553 |
-
.rm_typography .spinner_container {
|
554 |
-
float : left;
|
555 |
-
margin-right : 10px;
|
556 |
-
}
|
557 |
-
|
558 |
-
.rm_typography .spinner-wrapper {
|
559 |
-
height : 28px;
|
560 |
-
}
|
561 |
-
|
562 |
-
.rm_typography .spinner-wrapper input.number {
|
563 |
-
height : 28px;
|
564 |
-
}
|
565 |
-
|
566 |
-
.rm_typography .spinner-wrapper .spinner-button.button-plus {
|
567 |
-
height : 15px;
|
568 |
-
background-position : center -10px;
|
569 |
-
}
|
570 |
-
|
571 |
-
.rm_typography .spinner-wrapper .spinner-button.button-minus {
|
572 |
-
height : 14px;
|
573 |
-
}
|
574 |
-
|
575 |
-
.the-metabox .spinner-wrapper .spinner-button {
|
576 |
-
left : 49px;
|
577 |
-
}
|
578 |
-
|
579 |
-
.the-metabox.typography .spinner-wrapper .spinner-button {
|
580 |
-
left : 35px;
|
581 |
-
}
|
582 |
-
|
583 |
-
/* images */
|
584 |
-
.the-metabox.images, .the-metabox.images label {
|
585 |
-
margin-left : 0;
|
586 |
-
display : block;
|
587 |
-
}
|
588 |
-
|
589 |
-
.the-metabox.images .slides-wrapper {
|
590 |
-
clear : both;
|
591 |
-
}
|
592 |
-
|
593 |
-
.the-metabox.images .slides-wrapper li {
|
594 |
-
position : relative;
|
595 |
-
}
|
596 |
-
|
597 |
-
.the-metabox.images a.delete {
|
598 |
-
display : block;
|
599 |
-
margin-left : 4px;
|
600 |
-
text-decoration : none;
|
601 |
-
font-weight : bold;
|
602 |
-
color : red;
|
603 |
-
position : absolute;
|
604 |
-
top : 0;
|
605 |
-
right : 0;
|
606 |
-
width : 10px;
|
607 |
-
height : 18px;
|
608 |
-
z-index : 10;
|
609 |
-
cursor : pointer !important;
|
610 |
-
}
|
611 |
-
|
612 |
-
/* wp editor */
|
613 |
-
.wp_themeSkin iframe {
|
614 |
-
background : #fff !important;
|
615 |
-
}
|
616 |
-
|
617 |
-
/* custom tabs */
|
618 |
-
.customtab_item {
|
619 |
-
border-style : solid;
|
620 |
-
border-width : 1px;
|
621 |
-
line-height : 1;
|
622 |
-
margin-bottom : 20px;
|
623 |
-
padding : 0;
|
624 |
-
background-color : #f5f5f5;
|
625 |
-
background-image : -moz-linear-gradient(center top, #f9f9f9, #f5f5f5);
|
626 |
-
border-color : #dfdfdf;
|
627 |
-
border-radius : 3px 3px 3px 3px;
|
628 |
-
box-shadow : 0 1px 0 #fff inset;
|
629 |
-
min-width : 255px;
|
630 |
-
position : relative;
|
631 |
-
}
|
632 |
-
|
633 |
-
.customtab_item .handlediv {
|
634 |
-
position : relative;
|
635 |
-
top : -4px;
|
636 |
-
}
|
637 |
-
|
638 |
-
.customtab_item h3 {
|
639 |
-
min-height : 21px
|
640 |
-
}
|
641 |
-
|
642 |
-
.customtab_item .inside {
|
643 |
-
padding : 10px !important;
|
644 |
-
}
|
645 |
-
|
646 |
-
.customtab_item .deps {
|
647 |
-
display : none;
|
648 |
-
}
|
649 |
-
|
650 |
-
.customtab_item .addoptions p.option {
|
651 |
-
margin : 5px 0 5px 200px
|
652 |
-
}
|
653 |
-
|
654 |
-
.customtab_item .addoptions p label {
|
655 |
-
width : 80px !important;
|
656 |
-
}
|
657 |
-
|
658 |
-
.customtab_item .add-field-option {
|
659 |
-
margin-bottom : 10px !important;
|
660 |
-
}
|
661 |
-
|
662 |
-
.customtab_item .remove_item {
|
663 |
-
float : right;
|
664 |
-
}
|
665 |
-
|
666 |
-
.metabox-sortable-placeholder {
|
667 |
-
border : 1px dotted #dedede;
|
668 |
-
margin : 10px 0
|
669 |
-
}
|
670 |
-
|
671 |
-
.the-metabox.customtabs {
|
672 |
-
margin-left : 0;
|
673 |
-
}
|
674 |
-
|
675 |
-
#customtab_item_sample {
|
676 |
-
display : none;
|
677 |
-
}
|
678 |
-
|
679 |
-
.the-metabox.customtabs .field-row {
|
680 |
-
margin-bottom : 10px;
|
681 |
-
}
|
682 |
-
|
683 |
-
#yit_custom_tabs label {
|
684 |
-
font-weight : normal;
|
685 |
-
width : auto;
|
686 |
-
float : none;
|
687 |
-
line-height : auto;
|
688 |
-
margin-left : 0;
|
689 |
-
}
|
690 |
-
|
691 |
-
.wp-admin p label input[type=radio] {
|
692 |
-
width : 16px;
|
693 |
-
margin-right : 10px;
|
694 |
-
margin-top : 3px;
|
695 |
-
}
|
696 |
-
|
697 |
-
.wp-admin .form-field._preset_onsale_icon_field label input[type=radio] {
|
698 |
-
margin-top : 0;
|
699 |
-
}
|
700 |
-
|
701 |
-
.the-metabox .spinner {
|
702 |
-
margin-top : 5px;
|
703 |
-
float : none;
|
704 |
-
}
|
705 |
-
|
706 |
-
/*sidebars*/
|
707 |
-
#choose-sidebars.choose {
|
708 |
-
margin-left : 0px;
|
709 |
-
}
|
710 |
-
|
711 |
-
#_active_page_options-container label, #_active_page_options-container p {
|
712 |
-
display : inline-block;
|
713 |
-
margin : 0px;
|
714 |
-
}
|
715 |
-
|
716 |
-
#_active_page_options-container label {
|
717 |
-
margin-right : 10px;
|
718 |
-
margin-top : 3px;
|
719 |
-
}
|
720 |
-
|
721 |
-
#_active_page_options-container {
|
722 |
-
float : right;
|
723 |
-
margin-right : 20px;
|
724 |
-
margin-top : 5px;
|
725 |
-
z-index : 9999 !important;
|
726 |
-
position : absolute;
|
727 |
-
right : 0;
|
728 |
-
}
|
729 |
-
|
730 |
-
/*-----------------------
|
731 |
-
* Colorpicker - fix issues in combination with third-party themes or plugin (Basel, VC Addons, ...)
|
732 |
-
*/
|
733 |
-
.metaboxes-tab .the-metabox.colorpicker {
|
734 |
-
display : block;
|
735 |
-
width : auto;
|
736 |
-
height : auto;
|
737 |
-
overflow : visible;
|
738 |
-
top : auto;
|
739 |
-
left : auto;
|
740 |
-
background : transparent;
|
741 |
-
position : static;
|
742 |
-
z-index : 1;
|
743 |
-
font-family : inherit;
|
744 |
-
}
|
745 |
-
|
746 |
-
.the-metabox.checkbox.checkboxgroup-start.clearfix {
|
747 |
-
margin : 40px 0 0 264px;
|
748 |
-
}
|
749 |
-
|
750 |
-
.the-metabox.checkbox.checkboxgroup.clearfix {
|
751 |
-
margin : 0 0 0 264px;
|
752 |
}
|
1 |
+
/* self-clear floats */
|
2 |
+
.clearfix:after {
|
3 |
+
content : ".";
|
4 |
+
display : block;
|
5 |
+
height : 0;
|
6 |
+
clear : both;
|
7 |
+
visibility : hidden;
|
8 |
+
overflow : hidden;
|
9 |
+
}
|
10 |
+
|
11 |
+
/* ie.css */
|
12 |
+
* html .clearfix { /* IE6 */
|
13 |
+
height : 1%;
|
14 |
+
}
|
15 |
+
|
16 |
+
*:first-child + html .clearfix { /* IE7 */
|
17 |
+
min-height : 1%;
|
18 |
+
}
|
19 |
+
|
20 |
+
.clearboth {
|
21 |
+
clear : both
|
22 |
+
}
|
23 |
+
|
24 |
+
/* === TAB STYLE */
|
25 |
+
.metaboxes-tab {
|
26 |
+
margin : -6px -12px -8px;
|
27 |
+
}
|
28 |
+
|
29 |
+
.metaboxes-tab div.tabs-panel {
|
30 |
+
height : auto;
|
31 |
+
overflow : visible;
|
32 |
+
margin-top : 0px;
|
33 |
+
padding : 0 10px;
|
34 |
+
background : none;
|
35 |
+
border : 0;
|
36 |
+
}
|
37 |
+
|
38 |
+
.metaboxes-tab ul.metaboxes-tabs {
|
39 |
+
background : #f1f1f1;
|
40 |
+
margin : 0;
|
41 |
+
padding : 10px 0 0 5px;
|
42 |
+
}
|
43 |
+
|
44 |
+
.metaboxes-tab ul.metaboxes-tabs li {
|
45 |
+
float : left;
|
46 |
+
background : #dedede;
|
47 |
+
margin : 0 0 0 5px;
|
48 |
+
}
|
49 |
+
|
50 |
+
.metaboxes-tab ul.metaboxes-tabs li a {
|
51 |
+
color : #555;
|
52 |
+
text-decoration : none;
|
53 |
+
padding : 8px 15px;
|
54 |
+
display : block;
|
55 |
+
box-shadow : none !important;
|
56 |
+
}
|
57 |
+
|
58 |
+
.metaboxes-tab ul.metaboxes-tabs li.tabs {
|
59 |
+
background : #fff;
|
60 |
+
}
|
61 |
+
|
62 |
+
.metaboxes-tab p.field-row {
|
63 |
+
margin : 20px 0;
|
64 |
+
}
|
65 |
+
|
66 |
+
.metaboxes-tab div.sep {
|
67 |
+
height : 1px;
|
68 |
+
background : #dfdfdf;
|
69 |
+
clear : both;
|
70 |
+
margin-left : -10px;
|
71 |
+
margin-right : -10px;
|
72 |
+
}
|
73 |
+
|
74 |
+
.metaboxes-tab label {
|
75 |
+
font-weight : bold;
|
76 |
+
width : 160px;
|
77 |
+
float : left;
|
78 |
+
line-height : 23px;
|
79 |
+
margin-left : -184px;
|
80 |
+
}
|
81 |
+
|
82 |
+
.metaboxes-tab label small {
|
83 |
+
font-weight : normal;
|
84 |
+
line-height : 15px;
|
85 |
+
font-style : italic;
|
86 |
+
color : #999;
|
87 |
+
display : block;
|
88 |
+
}
|
89 |
+
|
90 |
+
.metaboxes-tab .yith-plugin-fw-radio__row {
|
91 |
+
width : 100%;
|
92 |
+
min-height : 20px;
|
93 |
+
}
|
94 |
+
|
95 |
+
.metaboxes-tab .yith-plugin-fw-radio__row label,
|
96 |
+
.metaboxes-tab .yith-toggle-elements label,
|
97 |
+
.metaboxes-tab .yith-add-box label {
|
98 |
+
margin-left : 0;
|
99 |
+
font-weight : normal;
|
100 |
+
}
|
101 |
+
|
102 |
+
.metaboxes-tab.yith-plugin-ui h3 {
|
103 |
+
color : #2a8db0;
|
104 |
+
font-size : 15px;
|
105 |
+
text-transform : uppercase;
|
106 |
+
padding : 5px 20px;
|
107 |
+
margin : 0 0 0 -4px;
|
108 |
+
width : auto;
|
109 |
+
background : transparent;
|
110 |
+
}
|
111 |
+
|
112 |
+
.metaboxes-tab.yith-plugin-ui .yith-add-box,
|
113 |
+
.metaboxes-tab.yith-plugin-ui .yith-toggle-row {
|
114 |
+
width : auto;
|
115 |
+
}
|
116 |
+
|
117 |
+
.metaboxes-tab .wp-picker-container label {
|
118 |
+
font-weight : inherit;
|
119 |
+
width : auto;
|
120 |
+
float : none;
|
121 |
+
line-height : inherit;
|
122 |
+
margin-left : 0;
|
123 |
+
}
|
124 |
+
|
125 |
+
.metaboxes-tab.yith-plugin-ui .yith-plugin-fw-radio__row label {
|
126 |
+
width : auto !important;
|
127 |
+
display : inline-block;
|
128 |
+
font-weight : normal;
|
129 |
+
float : none;
|
130 |
+
}
|
131 |
+
|
132 |
+
.metaboxes-tab input[type="checkbox"] {
|
133 |
+
vertical-align : middle
|
134 |
+
}
|
135 |
+
|
136 |
+
.metaboxes-tab input.button-secondary, .metaboxes-tab input.checkbox {
|
137 |
+
width : auto;
|
138 |
+
}
|
139 |
+
|
140 |
+
.metaboxes-tab p.field-row.textarea .description {
|
141 |
+
vertical-align : top;
|
142 |
+
}
|
143 |
+
|
144 |
+
.metaboxes-tab p.field-row.checkbox {
|
145 |
+
background : none;
|
146 |
+
}
|
147 |
+
|
148 |
+
.metaboxes-tab .the-metabox {
|
149 |
+
margin : 20px 0;
|
150 |
+
margin-left : 184px;
|
151 |
+
}
|
152 |
+
|
153 |
+
.metaboxes-tab .the-metabox.no-label {
|
154 |
+
margin : 20px 0;
|
155 |
+
margin-left : 0;
|
156 |
+
}
|
157 |
+
|
158 |
+
.metaboxes-tab hr {
|
159 |
+
height : 0px;
|
160 |
+
border-top : 1px solid #dadada;
|
161 |
+
width : auto;
|
162 |
+
margin-left : -10px;
|
163 |
+
margin-right : -10px;
|
164 |
+
}
|
165 |
+
|
166 |
+
.metaboxes-tab .the-metabox p {
|
167 |
+
margin : 0;
|
168 |
+
}
|
169 |
+
|
170 |
+
.metaboxes-tab .the-metabox:last-child {
|
171 |
+
border-bottom : 0px;
|
172 |
+
}
|
173 |
+
|
174 |
+
.metaboxes-tab .the-metabox.checkbox {
|
175 |
+
background : none;
|
176 |
+
}
|
177 |
+
|
178 |
+
.metaboxes-tab span.description.inline {
|
179 |
+
display : inline-block;
|
180 |
+
line-height : 23px;
|
181 |
+
width : auto;
|
182 |
+
margin : 0;
|
183 |
+
}
|
184 |
+
|
185 |
+
.metaboxes-tab .slider label {
|
186 |
+
padding : 15px 0;
|
187 |
+
}
|
188 |
+
|
189 |
+
.metaboxes-tab.yith-plugin-ui ul.metaboxes-tabs {
|
190 |
+
background : transparent;
|
191 |
+
border-bottom : 1px solid #d8d8d8;
|
192 |
+
padding : 10px 0 0 0;
|
193 |
+
margin : 0 10px
|
194 |
+
}
|
195 |
+
|
196 |
+
|
197 |
+
.metaboxes-tab.yith-plugin-ui ul.metaboxes-tabs li {
|
198 |
+
background : #fff;
|
199 |
+
border-top : 1px solid #d8d8d8;
|
200 |
+
border-left : 1px solid #d8d8d8;
|
201 |
+
border-right : 1px solid #d8d8d8;
|
202 |
+
margin : 0 0 -1px -1px;
|
203 |
+
}
|
204 |
+
|
205 |
+
.metaboxes-tab.yith-plugin-ui ul.metaboxes-tabs li.tabs {
|
206 |
+
border-bottom : 1px solid #fff;
|
207 |
+
}
|
208 |
+
|
209 |
+
.metaboxes-tab.yith-plugin-ui ul.metaboxes-tabs li a {
|
210 |
+
color : #336374;
|
211 |
+
padding : 10px 18px;
|
212 |
+
text-transform : uppercase;
|
213 |
+
font-weight : 600;
|
214 |
+
display : inline-block;
|
215 |
+
}
|
216 |
+
|
217 |
+
.metaboxes-tab.yith-plugin-ui ul.metaboxes-tabs li.tabs a {
|
218 |
+
color : #2a8db0;
|
219 |
+
}
|
220 |
+
|
221 |
+
/* sortable table posts */
|
222 |
+
|
223 |
+
#the-list.ui-sortable tr:hover {
|
224 |
+
cursor : move;
|
225 |
+
}
|
226 |
+
|
227 |
+
.the-metabox.preview {
|
228 |
+
float : none;
|
229 |
+
}
|
230 |
+
|
231 |
+
.metaboxes-tab .the-metabox.no-label.preview {
|
232 |
+
margin-left : 184px;
|
233 |
+
}
|
234 |
+
|
235 |
+
.metaboxes-tab .the-metabox.no-label.preview img {
|
236 |
+
box-shadow : 0 1px 8px rgba(0, 0, 0, 0.2);
|
237 |
+
}
|
238 |
+
|
239 |
+
/**************************************
|
240 |
+
FIELDS
|
241 |
+
***************************************/
|
242 |
+
|
243 |
+
.metaboxes-tab select,
|
244 |
+
.metaboxes-tab input[type=text],
|
245 |
+
.metaboxes-tab input[type=number],
|
246 |
+
.metaboxes-tab textarea,
|
247 |
+
.metaboxes-tab .yith-plugin-fw-select,
|
248 |
+
.metaboxes-tab .yith-plugin-fw-slider-container,
|
249 |
+
.metaboxes-tab .yith-plugin-fw-text-input,
|
250 |
+
.metaboxes-tab .yith-plugin-fw-text-array-table,
|
251 |
+
.metaboxes-tab .yith-plugin-fw-textarea {
|
252 |
+
width : 400px;
|
253 |
+
max-width : 100%;
|
254 |
+
}
|
255 |
+
|
256 |
+
.metaboxes-tab.yith-plugin-ui input[type=number] {
|
257 |
+
width : 70px;
|
258 |
+
min-width : 70px;
|
259 |
+
}
|
260 |
+
|
261 |
+
.metaboxes-tab.yith-plugin-ui p {
|
262 |
+
font-size : 14px;
|
263 |
+
}
|
264 |
+
|
265 |
+
.metaboxes-tab.yith-plugin-ui p.section-description {
|
266 |
+
|
267 |
+
margin : 0 20px 40px 18px;
|
268 |
+
}
|
269 |
+
|
270 |
+
.metaboxes-tab .yith-plugin-fw-text-array-table input[type=text] {
|
271 |
+
width : 100%;
|
272 |
+
}
|
273 |
+
|
274 |
+
.metaboxes-tab.yith-plugin-ui .yith-add-box h3 {
|
275 |
+
padding : 0 0 30px 0;
|
276 |
+
font-weight : 600;
|
277 |
+
margin : 0;
|
278 |
+
}
|
279 |
+
|
280 |
+
.metaboxes-tab.yith-plugin-ui .select2-container--default .select2-selection--single {
|
281 |
+
border : 0;
|
282 |
+
margin : 0;
|
283 |
+
}
|
284 |
+
|
285 |
+
/* wp editor */
|
286 |
+
.the-metabox.textarea-editor .mceIframeContainer {
|
287 |
+
background : #fff;
|
288 |
+
}
|
289 |
+
|
290 |
+
|
291 |
+
.the-metabox.textarea-editor label {
|
292 |
+
margin-top : 24px;
|
293 |
+
}
|
294 |
+
|
295 |
+
/* categories */
|
296 |
+
.categories-panel {
|
297 |
+
width : 30%;
|
298 |
+
float : left;
|
299 |
+
margin-right : 4px;
|
300 |
+
}
|
301 |
+
|
302 |
+
.categories-panel .box {
|
303 |
+
height : 200px;
|
304 |
+
border : 1px solid #dfdfdf;
|
305 |
+
background : #fff;
|
306 |
+
padding : 6px 10px;
|
307 |
+
overflow : auto;
|
308 |
+
}
|
309 |
+
|
310 |
+
.categories-panel ul {
|
311 |
+
list-style : none;
|
312 |
+
margin : 0;
|
313 |
+
}
|
314 |
+
|
315 |
+
.categories-panel ul li {
|
316 |
+
line-height : 19px;
|
317 |
+
margin : 0;
|
318 |
+
padding : 0;
|
319 |
+
word-wrap : break-word;
|
320 |
+
}
|
321 |
+
|
322 |
+
.categories-panel ul li label {
|
323 |
+
font-weight : normal !important;
|
324 |
+
margin-left : 0 !important;
|
325 |
+
}
|
326 |
+
|
327 |
+
.categories-panel input.newcategory {
|
328 |
+
width : 100%;
|
329 |
+
margin-bottom : 3px;
|
330 |
+
}
|
331 |
+
|
332 |
+
/* contact form */
|
333 |
+
.contactform_item {
|
334 |
+
border-style : solid;
|
335 |
+
border-width : 1px;
|
336 |
+
line-height : 1;
|
337 |
+
margin-bottom : 20px;
|
338 |
+
padding : 0;
|
339 |
+
background-color : #f5f5f5;
|
340 |
+
background-image : -moz-linear-gradient(center top, #f9f9f9, #f5f5f5);
|
341 |
+
border-color : #dfdfdf;
|
342 |
+
border-radius : 3px 3px 3px 3px;
|
343 |
+
box-shadow : 0 1px 0 #fff inset;
|
344 |
+
min-width : 255px;
|
345 |
+
position : relative;
|
346 |
+
}
|
347 |
+
|
348 |
+
.contactform_item .handlediv {
|
349 |
+
position : relative;
|
350 |
+
top : -4px;
|
351 |
+
}
|
352 |
+
|
353 |
+
.contactform_item h3 {
|
354 |
+
min-height : 21px;
|
355 |
+
margin : 13px;
|
356 |
+
}
|
357 |
+
|
358 |
+
.contactform_item .inside {
|
359 |
+
padding : 10px !important;
|
360 |
+
}
|
361 |
+
|
362 |
+
.contactform_item .deps {
|
363 |
+
display : none;
|
364 |
+
}
|
365 |
+
|
366 |
+
.contactform_item .addoptions p.option {
|
367 |
+
margin : 5px 0 5px 200px
|
368 |
+
}
|
369 |
+
|
370 |
+
.contactform_item .addoptions p label {
|
371 |
+
width : 80px !important;
|
372 |
+
}
|
373 |
+
|
374 |
+
.contactform_item .add-field-option {
|
375 |
+
margin-bottom : 10px !important;
|
376 |
+
}
|
377 |
+
|
378 |
+
.remove_item {
|
379 |
+
float : right;
|
380 |
+
}
|
381 |
+
|
382 |
+
.metabox-sortable-placeholder {
|
383 |
+
border : 1px dotted #dedede;
|
384 |
+
margin : 10px 0
|
385 |
+
}
|
386 |
+
|
387 |
+
/* features tab */
|
388 |
+
.featurestab_item {
|
389 |
+
border-style : solid;
|
390 |
+
border-width : 1px;
|
391 |
+
line-height : 1;
|
392 |
+
margin-bottom : 20px;
|
393 |
+
padding : 0;
|
394 |
+
background-color : #f5f5f5;
|
395 |
+
background-image : -moz-linear-gradient(center top, #f9f9f9, #f5f5f5);
|
396 |
+
border-color : #dfdfdf;
|
397 |
+
border-radius : 3px 3px 3px 3px;
|
398 |
+
box-shadow : 0 1px 0 #fff inset;
|
399 |
+
min-width : 255px;
|
400 |
+
position : relative;
|
401 |
+
}
|
402 |
+
|
403 |
+
.featurestab_item .handlediv {
|
404 |
+
position : relative;
|
405 |
+
top : -4px;
|
406 |
+
}
|
407 |
+
|
408 |
+
.featurestab_item h3 {
|
409 |
+
min-height : 21px
|
410 |
+
}
|
411 |
+
|
412 |
+
.featurestab_item .inside {
|
413 |
+
padding : 10px !important;
|
414 |
+
}
|
415 |
+
|
416 |
+
.featurestab_item .deps {
|
417 |
+
display : none;
|
418 |
+
}
|
419 |
+
|
420 |
+
.featurestab_item .addoptions p.option {
|
421 |
+
margin : 5px 0 5px 200px
|
422 |
+
}
|
423 |
+
|
424 |
+
.featurestab_item .addoptions p label {
|
425 |
+
width : 80px !important;
|
426 |
+
}
|
427 |
+
|
428 |
+
.featurestab_item .add-field-option {
|
429 |
+
margin-bottom : 10px !important;
|
430 |
+
}
|
431 |
+
|
432 |
+
.messages-panel.updated {
|
433 |
+
margin : 10px 0px 10px !important;
|
434 |
+
max-width : 1200px;
|
435 |
+
border-radius : 5px;
|
436 |
+
-webkit-box-sizing : border-box;
|
437 |
+
box-sizing : border-box;
|
438 |
+
}
|
439 |
+
|
440 |
+
.ui-widget-overlay {
|
441 |
+
background-image : none !important;
|
442 |
+
}
|
443 |
+
|
444 |
+
.the-metabox .icon_type {
|
445 |
+
width : 30%;
|
446 |
+
float : left;
|
447 |
+
margin-right : 40px
|
448 |
+
}
|
449 |
+
|
450 |
+
#post-type-settings .category-list label {
|
451 |
+
width : 187px;
|
452 |
+
}
|
453 |
+
|
454 |
+
.remove_cat {
|
455 |
+
float : right;
|
456 |
+
text-align : center;
|
457 |
+
display : block;
|
458 |
+
width : 20px;
|
459 |
+
height : 20px;
|
460 |
+
border-radius : 20px;
|
461 |
+
font-weight : bold;
|
462 |
+
font-size : 10px;
|
463 |
+
background : #efefef;
|
464 |
+
text-decoration : none;
|
465 |
+
}
|
466 |
+
|
467 |
+
/* typography */
|
468 |
+
.the-metabox.typography .select_wrapper.font-family {
|
469 |
+
width : 200px;
|
470 |
+
}
|
471 |
+
|
472 |
+
.the-metabox.typography .spinner_container {
|
473 |
+
float : left;
|
474 |
+
margin-right : 10px;
|
475 |
+
}
|
476 |
+
|
477 |
+
.the-metabox.typography .spinner_container input.number {
|
478 |
+
width : 50px !important;
|
479 |
+
-webkit-border-top-right-radius : 0px;
|
480 |
+
-webkit-border-bottom-right-radius : 0px;
|
481 |
+
-moz-border-radius-topright : 0px;
|
482 |
+
-moz-border-radius-bottomright : 0px;
|
483 |
+
border-top-right-radius : 0px;
|
484 |
+
border-bottom-right-radius : 0px;
|
485 |
+
}
|
486 |
+
|
487 |
+
/* number */
|
488 |
+
.the-metabox.number input.number {
|
489 |
+
width : 50px !important;
|
490 |
+
}
|
491 |
+
|
492 |
+
/* number */
|
493 |
+
.rm_number .number {
|
494 |
+
width : 70px;
|
495 |
+
text-align : right;
|
496 |
+
-webkit-border-top-right-radius : 0px;
|
497 |
+
-webkit-border-bottom-right-radius : 0px;
|
498 |
+
-moz-border-radius-topright : 0px;
|
499 |
+
-moz-border-radius-bottomright : 0px;
|
500 |
+
border-top-right-radius : 0px;
|
501 |
+
border-bottom-right-radius : 0px;
|
502 |
+
}
|
503 |
+
|
504 |
+
.spinner-wrapper {
|
505 |
+
position : relative;
|
506 |
+
height : 23px;
|
507 |
+
overflow : hidden;
|
508 |
+
}
|
509 |
+
|
510 |
+
.spinner-wrapper input.number {
|
511 |
+
float : left;
|
512 |
+
}
|
513 |
+
|
514 |
+
.spinner-wrapper .spinner-button {
|
515 |
+
cursor : pointer;
|
516 |
+
float : left;
|
517 |
+
position : absolute;
|
518 |
+
left : 69px;
|
519 |
+
width : 15px;
|
520 |
+
height : 12px;
|
521 |
+
border : 1px solid #dfdfdf;
|
522 |
+
background : #fff;
|
523 |
+
margin : 0;
|
524 |
+
padding : 0;
|
525 |
+
line-height : 9999px;
|
526 |
+
overflow : hidden;
|
527 |
+
background : url('../images/spinner.png') no-repeat center -11px
|
528 |
+
}
|
529 |
+
|
530 |
+
.spinner-wrapper .spinner-button.button-plus {
|
531 |
+
top : 0;
|
532 |
+
-webkit-border-top-right-radius : 3px !important;
|
533 |
+
-moz-border-radius-topright : 3px !important;
|
534 |
+
border-top-right-radius : 3px !important;
|
535 |
+
}
|
536 |
+
|
537 |
+
.spinner-wrapper .spinner-button.button-minus {
|
538 |
+
bottom : 0;
|
539 |
+
background-position : center -30px;
|
540 |
+
-webkit-border-bottom-right-radius : 3px !important;
|
541 |
+
-moz-border-radius-bottomright : 3px !important;
|
542 |
+
border-bottom-right-radius : 3px !important;
|
543 |
+
}
|
544 |
+
|
545 |
+
.spinner-wrapper .spinner-button.button-plus:active {
|
546 |
+
background-position : center 0px;
|
547 |
+
}
|
548 |
+
|
549 |
+
.spinner-wrapper .spinner-button.button-minus:active {
|
550 |
+
background-position : center -20px;
|
551 |
+
}
|
552 |
+
|
553 |
+
.rm_typography .spinner_container {
|
554 |
+
float : left;
|
555 |
+
margin-right : 10px;
|
556 |
+
}
|
557 |
+
|
558 |
+
.rm_typography .spinner-wrapper {
|
559 |
+
height : 28px;
|
560 |
+
}
|
561 |
+
|
562 |
+
.rm_typography .spinner-wrapper input.number {
|
563 |
+
height : 28px;
|
564 |
+
}
|
565 |
+
|
566 |
+
.rm_typography .spinner-wrapper .spinner-button.button-plus {
|
567 |
+
height : 15px;
|
568 |
+
background-position : center -10px;
|
569 |
+
}
|
570 |
+
|
571 |
+
.rm_typography .spinner-wrapper .spinner-button.button-minus {
|
572 |
+
height : 14px;
|
573 |
+
}
|
574 |
+
|
575 |
+
.the-metabox .spinner-wrapper .spinner-button {
|
576 |
+
left : 49px;
|
577 |
+
}
|
578 |
+
|
579 |
+
.the-metabox.typography .spinner-wrapper .spinner-button {
|
580 |
+
left : 35px;
|
581 |
+
}
|
582 |
+
|
583 |
+
/* images */
|
584 |
+
.the-metabox.images, .the-metabox.images label {
|
585 |
+
margin-left : 0;
|
586 |
+
display : block;
|
587 |
+
}
|
588 |
+
|
589 |
+
.the-metabox.images .slides-wrapper {
|
590 |
+
clear : both;
|
591 |
+
}
|
592 |
+
|
593 |
+
.the-metabox.images .slides-wrapper li {
|
594 |
+
position : relative;
|
595 |
+
}
|
596 |
+
|
597 |
+
.the-metabox.images a.delete {
|
598 |
+
display : block;
|
599 |
+
margin-left : 4px;
|
600 |
+
text-decoration : none;
|
601 |
+
font-weight : bold;
|
602 |
+
color : red;
|
603 |
+
position : absolute;
|
604 |
+
top : 0;
|
605 |
+
right : 0;
|
606 |
+
width : 10px;
|
607 |
+
height : 18px;
|
608 |
+
z-index : 10;
|
609 |
+
cursor : pointer !important;
|
610 |
+
}
|
611 |
+
|
612 |
+
/* wp editor */
|
613 |
+
.wp_themeSkin iframe {
|
614 |
+
background : #fff !important;
|
615 |
+
}
|
616 |
+
|
617 |
+
/* custom tabs */
|
618 |
+
.customtab_item {
|
619 |
+
border-style : solid;
|
620 |
+
border-width : 1px;
|
621 |
+
line-height : 1;
|
622 |
+
margin-bottom : 20px;
|
623 |
+
padding : 0;
|
624 |
+
background-color : #f5f5f5;
|
625 |
+
background-image : -moz-linear-gradient(center top, #f9f9f9, #f5f5f5);
|
626 |
+
border-color : #dfdfdf;
|
627 |
+
border-radius : 3px 3px 3px 3px;
|
628 |
+
box-shadow : 0 1px 0 #fff inset;
|
629 |
+
min-width : 255px;
|
630 |
+
position : relative;
|
631 |
+
}
|
632 |
+
|
633 |
+
.customtab_item .handlediv {
|
634 |
+
position : relative;
|
635 |
+
top : -4px;
|
636 |
+
}
|
637 |
+
|
638 |
+
.customtab_item h3 {
|
639 |
+
min-height : 21px
|
640 |
+
}
|
641 |
+
|
642 |
+
.customtab_item .inside {
|
643 |
+
padding : 10px !important;
|
644 |
+
}
|
645 |
+
|
646 |
+
.customtab_item .deps {
|
647 |
+
display : none;
|
648 |
+
}
|
649 |
+
|
650 |
+
.customtab_item .addoptions p.option {
|
651 |
+
margin : 5px 0 5px 200px
|
652 |
+
}
|
653 |
+
|
654 |
+
.customtab_item .addoptions p label {
|
655 |
+
width : 80px !important;
|
656 |
+
}
|
657 |
+
|
658 |
+
.customtab_item .add-field-option {
|
659 |
+
margin-bottom : 10px !important;
|
660 |
+
}
|
661 |
+
|
662 |
+
.customtab_item .remove_item {
|
663 |
+
float : right;
|
664 |
+
}
|
665 |
+
|
666 |
+
.metabox-sortable-placeholder {
|
667 |
+
border : 1px dotted #dedede;
|
668 |
+
margin : 10px 0
|
669 |
+
}
|
670 |
+
|
671 |
+
.the-metabox.customtabs {
|
672 |
+
margin-left : 0;
|
673 |
+
}
|
674 |
+
|
675 |
+
#customtab_item_sample {
|
676 |
+
display : none;
|
677 |
+
}
|
678 |
+
|
679 |
+
.the-metabox.customtabs .field-row {
|
680 |
+
margin-bottom : 10px;
|
681 |
+
}
|
682 |
+
|
683 |
+
#yit_custom_tabs label {
|
684 |
+
font-weight : normal;
|
685 |
+
width : auto;
|
686 |
+
float : none;
|
687 |
+
line-height : auto;
|
688 |
+
margin-left : 0;
|
689 |
+
}
|
690 |
+
|
691 |
+
.wp-admin p label input[type=radio] {
|
692 |
+
width : 16px;
|
693 |
+
margin-right : 10px;
|
694 |
+
margin-top : 3px;
|
695 |
+
}
|
696 |
+
|
697 |
+
.wp-admin .form-field._preset_onsale_icon_field label input[type=radio] {
|
698 |
+
margin-top : 0;
|
699 |
+
}
|
700 |
+
|
701 |
+
.the-metabox .spinner {
|
702 |
+
margin-top : 5px;
|
703 |
+
float : none;
|
704 |
+
}
|
705 |
+
|
706 |
+
/*sidebars*/
|
707 |
+
#choose-sidebars.choose {
|
708 |
+
margin-left : 0px;
|
709 |
+
}
|
710 |
+
|
711 |
+
#_active_page_options-container label, #_active_page_options-container p {
|
712 |
+
display : inline-block;
|
713 |
+
margin : 0px;
|
714 |
+
}
|
715 |
+
|
716 |
+
#_active_page_options-container label {
|
717 |
+
margin-right : 10px;
|
718 |
+
margin-top : 3px;
|
719 |
+
}
|
720 |
+
|
721 |
+
#_active_page_options-container {
|
722 |
+
float : right;
|
723 |
+
margin-right : 20px;
|
724 |
+
margin-top : 5px;
|
725 |
+
z-index : 9999 !important;
|
726 |
+
position : absolute;
|
727 |
+
right : 0;
|
728 |
+
}
|
729 |
+
|
730 |
+
/*-----------------------
|
731 |
+
* Colorpicker - fix issues in combination with third-party themes or plugin (Basel, VC Addons, ...)
|
732 |
+
*/
|
733 |
+
.metaboxes-tab .the-metabox.colorpicker {
|
734 |
+
display : block;
|
735 |
+
width : auto;
|
736 |
+
height : auto;
|
737 |
+
overflow : visible;
|
738 |
+
top : auto;
|
739 |
+
left : auto;
|
740 |
+
background : transparent;
|
741 |
+
position : static;
|
742 |
+
z-index : 1;
|
743 |
+
font-family : inherit;
|
744 |
+
}
|
745 |
+
|
746 |
+
.the-metabox.checkbox.checkboxgroup-start.clearfix {
|
747 |
+
margin : 40px 0 0 264px;
|
748 |
+
}
|
749 |
+
|
750 |
+
.the-metabox.checkbox.checkboxgroup.clearfix {
|
751 |
+
margin : 0 0 0 264px;
|
752 |
}
|
plugin-fw/assets/css/scss/yith-plugin-ui.scss
DELETED
@@ -1,8 +0,0 @@
|
|
1 |
-
@import "yith-plugin-ui/head_comment";
|
2 |
-
|
3 |
-
@import "yith-plugin-ui/variables";
|
4 |
-
@import "yith-plugin-ui/wp-pages";
|
5 |
-
@import "yith-plugin-ui/taxonomy";
|
6 |
-
@import "yith-plugin-ui/components";
|
7 |
-
@import "yith-plugin-ui/tables";
|
8 |
-
@import "yith-plugin-ui/animations";
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/assets/css/scss/yith-plugin-ui/_animations.scss
DELETED
@@ -1,92 +0,0 @@
|
|
1 |
-
/**
|
2 |
-
* YITH Animations
|
3 |
-
*/
|
4 |
-
|
5 |
-
.yith-plugin-fw-animate__appear-from-bottom{
|
6 |
-
animation: yith-plugin-fw-appear-from-bottom .3s forwards;
|
7 |
-
}
|
8 |
-
|
9 |
-
.yith-plugin-fw-animate__appear-from-top{
|
10 |
-
animation: yith-plugin-fw-appear-from-top .3s forwards;
|
11 |
-
}
|
12 |
-
|
13 |
-
.yith-plugin-fw-animate__fade-in{
|
14 |
-
animation: yith-plugin-fw-fade-in .3s forwards;
|
15 |
-
}
|
16 |
-
|
17 |
-
|
18 |
-
@-webkit-keyframes yith-plugin-fw-appear-from-top {
|
19 |
-
from {
|
20 |
-
opacity: 0;
|
21 |
-
transform: translateY(-30%);
|
22 |
-
-webkit-transform: translateY(-30%);
|
23 |
-
}
|
24 |
-
|
25 |
-
to {
|
26 |
-
opacity: 1;
|
27 |
-
transform: translateY(0);
|
28 |
-
-webkit-transform: translateY(0);
|
29 |
-
}
|
30 |
-
}
|
31 |
-
|
32 |
-
@keyframes yith-plugin-fw-appear-from-top {
|
33 |
-
from {
|
34 |
-
opacity: 0;
|
35 |
-
transform: translateY(-30%);
|
36 |
-
-webkit-transform: translateY(-30%);
|
37 |
-
}
|
38 |
-
|
39 |
-
to {
|
40 |
-
opacity: 1;
|
41 |
-
transform: translateY(0);
|
42 |
-
-webkit-transform: translateY(0);
|
43 |
-
}
|
44 |
-
}
|
45 |
-
|
46 |
-
@-webkit-keyframes yith-plugin-fw-appear-from-bottom {
|
47 |
-
from {
|
48 |
-
opacity: 0;
|
49 |
-
transform: translateY(+30%);
|
50 |
-
-webkit-transform: translateY(+30%);
|
51 |
-
}
|
52 |
-
|
53 |
-
to {
|
54 |
-
opacity: 1;
|
55 |
-
transform: translateY(0);
|
56 |
-
-webkit-transform: translateY(0);
|
57 |
-
}
|
58 |
-
}
|
59 |
-
|
60 |
-
@keyframes yith-plugin-fw-appear-from-bottom {
|
61 |
-
from {
|
62 |
-
opacity: 0;
|
63 |
-
transform: translateY(+30%);
|
64 |
-
-webkit-transform: translateY(+30%);
|
65 |
-
}
|
66 |
-
|
67 |
-
to {
|
68 |
-
opacity: 1;
|
69 |
-
transform: translateY(0);
|
70 |
-
-webkit-transform: translateY(0);
|
71 |
-
}
|
72 |
-
}
|
73 |
-
|
74 |
-
@-webkit-keyframes yith-plugin-fw-fade-in {
|
75 |
-
from {
|
76 |
-
opacity: 0;
|
77 |
-
}
|
78 |
-
|
79 |
-
to {
|
80 |
-
opacity: 1;
|
81 |
-
}
|
82 |
-
}
|
83 |
-
|
84 |
-
@keyframes yith-plugin-fw-fade-in {
|
85 |
-
from {
|
86 |
-
opacity: 0;
|
87 |
-
}
|
88 |
-
|
89 |
-
to {
|
90 |
-
opacity: 1;
|
91 |
-
}
|
92 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/assets/css/scss/yith-plugin-ui/_components.scss
DELETED
@@ -1,11 +0,0 @@
|
|
1 |
-
/**
|
2 |
-
* YITH Plugin UI - Components
|
3 |
-
*/
|
4 |
-
|
5 |
-
@import "components/action-button";
|
6 |
-
@import "components/buttons";
|
7 |
-
@import "components/boxed-row";
|
8 |
-
@import "components/confirm";
|
9 |
-
@import "components/list-table-blank-state";
|
10 |
-
@import "components/modal";
|
11 |
-
@import "components/tip-tip";
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/assets/css/scss/yith-plugin-ui/_head_comment.scss
DELETED
@@ -1,6 +0,0 @@
|
|
1 |
-
/**
|
2 |
-
* YITH Plugin UI style
|
3 |
-
*
|
4 |
-
* IMPORTANT: This file is automatically generated through SCSS files.
|
5 |
-
* Please don't edit it manually!
|
6 |
-
*/
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/assets/css/scss/yith-plugin-ui/_tables.scss
DELETED
@@ -1,56 +0,0 @@
|
|
1 |
-
/**
|
2 |
-
* YITH Plugin UI - Post Type Style
|
3 |
-
*/
|
4 |
-
|
5 |
-
@import "mixins/tables";
|
6 |
-
|
7 |
-
table.yith-plugin-fw__classic-table {
|
8 |
-
@include classic-table;
|
9 |
-
|
10 |
-
&.wp-list-table{
|
11 |
-
@include wp-table-commons;
|
12 |
-
}
|
13 |
-
}
|
14 |
-
|
15 |
-
table.yith-plugin-fw__boxed-table {
|
16 |
-
@include boxed-table;
|
17 |
-
|
18 |
-
&.wp-list-table{
|
19 |
-
@include wp-table-commons;
|
20 |
-
}
|
21 |
-
}
|
22 |
-
|
23 |
-
// WP List Tables
|
24 |
-
.yith-plugin-ui--classic-wp-list-style, .yith-plugin-ui #plugin-fw-wc .yith-plugin-ui--classic-wp-list-style {
|
25 |
-
|
26 |
-
table.wp-list-table {
|
27 |
-
@include classic-table;
|
28 |
-
|
29 |
-
@include wp-table-commons;
|
30 |
-
}
|
31 |
-
|
32 |
-
.tablenav.bottom {
|
33 |
-
display: none;
|
34 |
-
|
35 |
-
.yith-plugin-fw__list-table-blank-state {
|
36 |
-
display: flex;
|
37 |
-
}
|
38 |
-
}
|
39 |
-
}
|
40 |
-
|
41 |
-
.yith-plugin-ui--boxed-wp-list-style, .yith-plugin-ui #plugin-fw-wc .yith-plugin-ui--boxed-wp-list-style {
|
42 |
-
|
43 |
-
table.wp-list-table {
|
44 |
-
@include boxed-table;
|
45 |
-
|
46 |
-
@include wp-table-commons;
|
47 |
-
}
|
48 |
-
|
49 |
-
.tablenav.bottom {
|
50 |
-
display: none;
|
51 |
-
|
52 |
-
.yith-plugin-fw__list-table-blank-state {
|
53 |
-
display: flex;
|
54 |
-
}
|
55 |
-
}
|
56 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/assets/css/scss/yith-plugin-ui/_taxonomy.scss
DELETED
@@ -1,52 +0,0 @@
|
|
1 |
-
/**
|
2 |
-
* YITH Plugin UI - Taxonomy Style
|
3 |
-
*/
|
4 |
-
|
5 |
-
.yith-plugin-ui.yith-plugin-ui--taxonomy-type, .yith-plugin-ui--taxonomy-type {
|
6 |
-
|
7 |
-
// List
|
8 |
-
|
9 |
-
#col-container {
|
10 |
-
display: flex;
|
11 |
-
}
|
12 |
-
|
13 |
-
#col-left {
|
14 |
-
padding: 20px;
|
15 |
-
background: #f1f1f1;
|
16 |
-
border-radius: 8px;
|
17 |
-
box-sizing: border-box;
|
18 |
-
margin-right: 15px;
|
19 |
-
}
|
20 |
-
|
21 |
-
#col-right {
|
22 |
-
flex: 1;
|
23 |
-
}
|
24 |
-
|
25 |
-
h2 {
|
26 |
-
border: none;
|
27 |
-
padding: 0;
|
28 |
-
font-size: 14px;
|
29 |
-
background: transparent;
|
30 |
-
}
|
31 |
-
|
32 |
-
// Edit Tax
|
33 |
-
.wrap h1 {
|
34 |
-
color: #2a8db0;
|
35 |
-
font-size: 16px;
|
36 |
-
font-weight: 600;
|
37 |
-
}
|
38 |
-
}
|
39 |
-
|
40 |
-
@media screen and (max-width: 782px) {
|
41 |
-
.yith-plugin-ui.yith-plugin-ui--taxonomy-type {
|
42 |
-
#col-container {
|
43 |
-
display: block;
|
44 |
-
}
|
45 |
-
|
46 |
-
#col-left, #col-right {
|
47 |
-
float: none;
|
48 |
-
width: 100%;
|
49 |
-
}
|
50 |
-
}
|
51 |
-
}
|
52 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/assets/css/scss/yith-plugin-ui/_variables.scss
DELETED
@@ -1,121 +0,0 @@
|
|
1 |
-
/**
|
2 |
-
* YITH CSS Variables
|
3 |
-
*/
|
4 |
-
|
5 |
-
$content_bg: #ffffff; // Content Background.
|
6 |
-
$content_text: #3c434a; // Content Text.
|
7 |
-
|
8 |
-
$primary: #00799f; // Primary color, for buttons
|
9 |
-
$primary_hover: #0094c4; // Primary hover color, for buttons
|
10 |
-
$primary_focus: #bddce6; // Primary focus color, for buttons
|
11 |
-
$primary_text: #ffffff; // Text on primary color bg
|
12 |
-
|
13 |
-
$delete: #c41d04; // color for delete buttons
|
14 |
-
$delete_hover: lighten($delete, 5%); // color for delete buttons - hover
|
15 |
-
$delete_text: #ffffff; // Text on delete buttons
|
16 |
-
$delete_focus: #f0d2cd; // Delete focus color, for buttons
|
17 |
-
|
18 |
-
// Outline is used to stylize Secondary buttons.
|
19 |
-
$outline_text: #0087b3; // outline button - text color
|
20 |
-
$outline_border: #0094c4; // outline button - border color
|
21 |
-
$outline_bg: rgba(255, 255, 255, 0); // outline button - background color
|
22 |
-
$outline_bg_hover: rgba(157, 198, 205, .2); // outline button - background color on hover
|
23 |
-
$outline_border_hover: #007ba3; // outline button - border color on hover
|
24 |
-
$outline_focus: #dfeef2; // Outline focus color, for buttons
|
25 |
-
|
26 |
-
$delete_outline_text: $delete; // Delete-outline button - text color
|
27 |
-
$delete_outline_border: $delete; // Delete-outline button - border color
|
28 |
-
$delete_outline_bg: rgba(205, 157, 157, 0); // Delete-outline button - background color
|
29 |
-
$delete_outline_bg_hover: rgba(232, 184, 184, 0.15); // Delete-outline button - background color on hover
|
30 |
-
$delete_outline_border_hover: #db2b11; // Delete-outline button - border color on hover
|
31 |
-
$delete_outline_focus: #ffe9e7; // Delete-outline focus color, for buttons
|
32 |
-
|
33 |
-
$update: #94aa09; // Update button - background
|
34 |
-
$update_hover: darken($update, 5%); // Update button - hover
|
35 |
-
$update_text: #ffffff; // Text on update button background
|
36 |
-
$update_focus: #e7eccc; // Text on update button background
|
37 |
-
|
38 |
-
$accent: #98aa36;
|
39 |
-
|
40 |
-
$light_bg: #f0f6fb;
|
41 |
-
$light_border_color: #d7e3e7;
|
42 |
-
$light_shadow: rgba(145, 191, 227, 0.11);
|
43 |
-
$light_accent: #0079b0;
|
44 |
-
|
45 |
-
$success: #98aa36;
|
46 |
-
$success_light: lighten($success, 30%);
|
47 |
-
$success_lighter: lighten($success, 43%);
|
48 |
-
$success_lightest: lighten($success, 50%);
|
49 |
-
|
50 |
-
|
51 |
-
$table_row_highlight: #f0f6fb;
|
52 |
-
$table_row_striped: #f6f7f7;
|
53 |
-
$table_border_light: #eff0f0;
|
54 |
-
|
55 |
-
$field_border_color: #d8d8d8;
|
56 |
-
$field_border_weight: 1px;
|
57 |
-
$field_border: $field_border_weight solid $field_border_color;
|
58 |
-
|
59 |
-
$link: #0079b0; // Link Color.
|
60 |
-
|
61 |
-
// Extra variables: these will be not converted to CSS Variables
|
62 |
-
$wp_menu_size: 160px;
|
63 |
-
$wp_menu_folded_size: 36px;
|
64 |
-
$wp_menu_mobile_size: 190px;
|
65 |
-
$wp_top_bar_size: 32px;
|
66 |
-
$wp_top_bar_mobile_size: 46px;
|
67 |
-
|
68 |
-
// export vars as CSS vars
|
69 |
-
:root {
|
70 |
-
--yith-content-bg: #{$content_bg};
|
71 |
-
--yith-content-text: #{$content_text};
|
72 |
-
--yith-primary: #{$primary};
|
73 |
-
--yith-primary-hover: #{$primary_hover};
|
74 |
-
--yith-primary-focus: #{$primary_focus};
|
75 |
-
--yith-primary-text: #{$primary_text};
|
76 |
-
|
77 |
-
--yith-delete: #{$delete};
|
78 |
-
--yith-delete-hover: #{$delete_hover};
|
79 |
-
--yith-delete-text: #{$delete_text};
|
80 |
-
--yith-delete-focus: #{$delete_focus};
|
81 |
-
|
82 |
-
--yith-update: #{$update};
|
83 |
-
--yith-update-hover: #{$update_hover};
|
84 |
-
--yith-update-text: #{$update_text};
|
85 |
-
--yith-update-focus: #{$update_focus};
|
86 |
-
|
87 |
-
--yith-outline-text: #{$outline_text};
|
88 |
-
--yith-outline-border: #{$outline_border};
|
89 |
-
--yith-outline-bg: #{$outline_bg};
|
90 |
-
--yith-outline-bg-hover: #{$outline_bg_hover};
|
91 |
-
--yith-outline-border-hover: #{$outline_border_hover};
|
92 |
-
--yith-outline-focus: #{$outline_focus};
|
93 |
-
|
94 |
-
--yith-delete-outline-text: #{$delete_outline_text};
|
95 |
-
--yith-delete-outline-border: #{$delete_outline_border};
|
96 |
-
--yith-delete-outline-bg: #{$delete_outline_bg};
|
97 |
-
--yith-delete-outline-bg-hover: #{$delete_outline_bg_hover};
|
98 |
-
--yith-delete-outline-border-hover: #{$delete_outline_border_hover};
|
99 |
-
--yith-delete-outline-focus: #{$delete_outline_focus};
|
100 |
-
|
101 |
-
--yith-accent: #{$accent};
|
102 |
-
|
103 |
-
--yith-light-bg: #{$light_bg};
|
104 |
-
--yith-light-border-color: #{$light_border_color};
|
105 |
-
--yith-light-shadow: #{$light_shadow};
|
106 |
-
--yith-light-accent: #{$light_accent};
|
107 |
-
|
108 |
-
--yith-success: #{$success};
|
109 |
-
--yith-success-light: #{$success_light};
|
110 |
-
--yith-success-lighter: #{$success_lighter};
|
111 |
-
--yith-success-lightest: #{$success_lightest};
|
112 |
-
|
113 |
-
--yith-table-row-highlight: #{$table_row_highlight};
|
114 |
-
--yith-table-row-striped: #{$table_row_striped};
|
115 |
-
--yith-table-border-light: #{$table_border_light};
|
116 |
-
|
117 |
-
--yith-field-border-color: #{$field_border_color};
|
118 |
-
--yith-field-border-weight: #{$field_border_color};
|
119 |
-
--yith-field-border: #{$field_border};
|
120 |
-
--yith-link: #{$link};
|
121 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/assets/css/scss/yith-plugin-ui/_wp-pages.scss
DELETED
@@ -1,88 +0,0 @@
|
|
1 |
-
/**
|
2 |
-
* YITH Plugin UI - WP Pages
|
3 |
-
*/
|
4 |
-
|
5 |
-
.yith-plugin-fw-wp-page-wrapper {
|
6 |
-
|
7 |
-
.yith-plugin-fw__back-to-wp-list__wrapper {
|
8 |
-
margin: -5px 0 15px;
|
9 |
-
|
10 |
-
.yith-plugin-fw__back-to-wp-list {
|
11 |
-
text-decoration: none;
|
12 |
-
font-weight: 600;
|
13 |
-
text-transform: uppercase;
|
14 |
-
color: var(--yith-link);
|
15 |
-
vertical-align: middle;
|
16 |
-
|
17 |
-
&:before {
|
18 |
-
content: "\e901";
|
19 |
-
font-family: yith-icon;
|
20 |
-
margin-right: 5px;
|
21 |
-
font-size: .8em;
|
22 |
-
vertical-align: middle;
|
23 |
-
}
|
24 |
-
}
|
25 |
-
}
|
26 |
-
|
27 |
-
.wrap div#message.updated {
|
28 |
-
display: none;
|
29 |
-
padding: 15px 40px 15px 45px;
|
30 |
-
margin: 15px 0 20px;
|
31 |
-
border-radius: 5px;
|
32 |
-
background: var(--yith-success-lightest);
|
33 |
-
border: 1px solid var(--yith-success-light);
|
34 |
-
font-weight: 600;
|
35 |
-
font-size: 14px;
|
36 |
-
text-align: left;
|
37 |
-
color: var(--yith-content-text);
|
38 |
-
box-shadow: 1px 1px 2px var(--yith-success-lighter);
|
39 |
-
|
40 |
-
|
41 |
-
&:before {
|
42 |
-
font-family: yith-icon;
|
43 |
-
content: "\e921";
|
44 |
-
position: absolute;
|
45 |
-
top: 50%;
|
46 |
-
left: 13px;
|
47 |
-
font-size: 21px;
|
48 |
-
font-weight: 400;
|
49 |
-
transform: translateY(-50%);
|
50 |
-
color: var(--yith-success);
|
51 |
-
}
|
52 |
-
|
53 |
-
p {
|
54 |
-
padding: 0;
|
55 |
-
margin: 0;
|
56 |
-
}
|
57 |
-
|
58 |
-
.notice-dismiss {
|
59 |
-
position: absolute;
|
60 |
-
top: 50%;
|
61 |
-
right: 10px;
|
62 |
-
transform: translateY(-50%);
|
63 |
-
border-radius: 50%;
|
64 |
-
color: var(--yith-success);
|
65 |
-
padding: 7px;
|
66 |
-
background: transparent;
|
67 |
-
box-shadow: 0 0 0 5px rgba(0, 0, 0, 0);
|
68 |
-
transition: all .3s ease-in-out;
|
69 |
-
|
70 |
-
&:before {
|
71 |
-
font-family: yith-icon;
|
72 |
-
content: "\e906";
|
73 |
-
font-weight: 600;
|
74 |
-
font-size: 12px;
|
75 |
-
color: inherit;
|
76 |
-
}
|
77 |
-
|
78 |
-
&:hover {
|
79 |
-
box-shadow: 0 0 0 0 var(--yith-success-lighter);
|
80 |
-
background: var(--yith-success-lighter);
|
81 |
-
}
|
82 |
-
|
83 |
-
&:hover:before, &:active:before, &:focus:before {
|
84 |
-
color: inherit;
|
85 |
-
}
|
86 |
-
}
|
87 |
-
}
|
88 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/assets/css/scss/yith-plugin-ui/components/_action-button.scss
DELETED
@@ -1,80 +0,0 @@
|
|
1 |
-
.yith-plugin-ui .yith-plugin-fw__action-button, .yith-plugin-fw__action-button {
|
2 |
-
height: 35px;
|
3 |
-
width: 35px;
|
4 |
-
background-color: var(--yith-content-bg);
|
5 |
-
display: inline-block;
|
6 |
-
border: 0;
|
7 |
-
border-radius: 50%;
|
8 |
-
transition: .3s;
|
9 |
-
cursor: pointer;
|
10 |
-
box-shadow: 0 2px 7px rgba(170, 198, 222, .5);
|
11 |
-
outline: none;
|
12 |
-
position: relative;
|
13 |
-
margin: 0 5px 5px 0;
|
14 |
-
vertical-align: middle;
|
15 |
-
|
16 |
-
.yith-plugin-fw__action-button__link {
|
17 |
-
height: 100%;
|
18 |
-
width: 100%;
|
19 |
-
display: inline-block;
|
20 |
-
}
|
21 |
-
|
22 |
-
.yith-plugin-fw__action-button__icon {
|
23 |
-
position: absolute;
|
24 |
-
color: var(--yith-link);
|
25 |
-
font-size: 17px;
|
26 |
-
top: 50%;
|
27 |
-
left: 50%;
|
28 |
-
transform: translateX(-50%) translateY(-50%);
|
29 |
-
}
|
30 |
-
|
31 |
-
&.yith-plugin-fw__action-button--trash-action .yith-plugin-fw__action-button__icon,
|
32 |
-
&.yith-plugin-fw__action-button--delete-action .yith-plugin-fw__action-button__icon {
|
33 |
-
color: #a10000;
|
34 |
-
}
|
35 |
-
|
36 |
-
.yith-plugin-fw__action-button__menu {
|
37 |
-
position: absolute;
|
38 |
-
display: none;
|
39 |
-
flex-direction: column;
|
40 |
-
width: max-content;
|
41 |
-
right: 0;
|
42 |
-
margin: 5px 0 0 0;
|
43 |
-
padding: 8px 0;
|
44 |
-
background: var(--yith-content-bg);
|
45 |
-
border-radius: 5px;
|
46 |
-
box-shadow: 0 2px 7px rgba(170, 198, 222, .5);
|
47 |
-
z-index: 10;
|
48 |
-
animation: yith-plugin-fw-appear-from-top .3s forwards;
|
49 |
-
}
|
50 |
-
|
51 |
-
.yith-plugin-fw__action-button__menu__item {
|
52 |
-
margin: 0;
|
53 |
-
display: block;
|
54 |
-
padding: 7px 25px;
|
55 |
-
color: var(--yith-content-text);
|
56 |
-
cursor: pointer;
|
57 |
-
text-decoration: none;
|
58 |
-
text-align: right;
|
59 |
-
|
60 |
-
&:hover {
|
61 |
-
color: var(--yith-link);
|
62 |
-
}
|
63 |
-
}
|
64 |
-
|
65 |
-
&.yith-plugin-fw__action-button--has-menu {
|
66 |
-
.yith-plugin-fw__action-button__icon {
|
67 |
-
color: var(--yith-content-text);
|
68 |
-
}
|
69 |
-
|
70 |
-
&.yith-plugin-fw__action-button--opened {
|
71 |
-
.yith-plugin-fw__action-button__icon {
|
72 |
-
color: var(--yith-link);
|
73 |
-
}
|
74 |
-
|
75 |
-
.yith-plugin-fw__action-button__menu {
|
76 |
-
display: flex;
|
77 |
-
}
|
78 |
-
}
|
79 |
-
}
|
80 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/assets/css/scss/yith-plugin-ui/components/_boxed-row.scss
DELETED
@@ -1,14 +0,0 @@
|
|
1 |
-
|
2 |
-
.yith-plugin-fw__boxed-row, .yith-plugin-fw__boxed-row--hover-highlight {
|
3 |
-
background: var(--yith-content-bg);
|
4 |
-
border-radius: 5px;
|
5 |
-
box-shadow: 0 0 0 1px var(--yith-light-border-color), 0 3px 11px 6px var(--yith-light-shadow);
|
6 |
-
transition: background-color .2s ease-in-out;
|
7 |
-
padding: 25px;
|
8 |
-
margin-bottom: 25px;
|
9 |
-
margin-top: 25px;
|
10 |
-
}
|
11 |
-
|
12 |
-
.yith-plugin-fw__boxed-row--hover-highlight:hover {
|
13 |
-
background: var(--yith-table-row-highlight);
|
14 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/assets/css/scss/yith-plugin-ui/components/_buttons.scss
DELETED
@@ -1,224 +0,0 @@
|
|
1 |
-
@import "../mixins/buttons";
|
2 |
-
|
3 |
-
.yith-plugin-ui, .wp-core-ui .yith-plugin-ui {
|
4 |
-
|
5 |
-
// WordPress Buttons.
|
6 |
-
.button-primary, .button-secondary {
|
7 |
-
border-radius : 3px;
|
8 |
-
text-transform : none;
|
9 |
-
box-shadow : none;
|
10 |
-
border : 1px solid;
|
11 |
-
font-weight : 600;
|
12 |
-
padding : 0 12px;
|
13 |
-
outline : none;
|
14 |
-
height : auto;
|
15 |
-
transition : all ease 0.3s;
|
16 |
-
text-shadow : none;
|
17 |
-
display : inline-block;
|
18 |
-
text-decoration : none;
|
19 |
-
cursor : pointer;
|
20 |
-
white-space : nowrap;
|
21 |
-
|
22 |
-
&:focus {
|
23 |
-
outline : none;
|
24 |
-
box-shadow : none;
|
25 |
-
}
|
26 |
-
|
27 |
-
&.button-small {
|
28 |
-
padding : 0 8px;
|
29 |
-
}
|
30 |
-
}
|
31 |
-
|
32 |
-
.button-secondary {
|
33 |
-
@include button-secondary;
|
34 |
-
}
|
35 |
-
|
36 |
-
.button-primary {
|
37 |
-
@include button-primary;
|
38 |
-
}
|
39 |
-
|
40 |
-
.button.action,
|
41 |
-
#doaction,
|
42 |
-
#doaction2,
|
43 |
-
#post-query-submit,
|
44 |
-
#posts-filter #delete_all,
|
45 |
-
#search-submit,
|
46 |
-
.button.filter-button {
|
47 |
-
@include button;
|
48 |
-
@include button-secondary;
|
49 |
-
height : auto;
|
50 |
-
line-height : 33px;
|
51 |
-
border-radius : 8px;
|
52 |
-
padding : 0 15px;
|
53 |
-
font-weight : 600;
|
54 |
-
}
|
55 |
-
|
56 |
-
#posts-filter #delete_all {
|
57 |
-
@include button-delete-outline;
|
58 |
-
}
|
59 |
-
|
60 |
-
.tablenav .tablenav-pages .button,
|
61 |
-
.tablenav .tablenav-pages .tablenav-pages-navspan {
|
62 |
-
@include button-secondary;
|
63 |
-
}
|
64 |
-
|
65 |
-
@media screen and (max-width : 782px) {
|
66 |
-
.tablenav .tablenav-pages .button, .tablenav .tablenav-pages .tablenav-pages-navspan {
|
67 |
-
min-width : 44px;
|
68 |
-
padding : 12px 8px;
|
69 |
-
font-size : 18px;
|
70 |
-
line-height : 1;
|
71 |
-
}
|
72 |
-
}
|
73 |
-
|
74 |
-
// YITH Buttons.
|
75 |
-
.yith-plugin-fw__button, [class^="yith-plugin-fw__button--"], [class*=" yith-plugin-fw__button--"],
|
76 |
-
.yith-add-button, .yith-edit-button, .yith-update-button, .yith-remove-button, .yith-plugin-fw-upload-button, .yith-save-button, .yith-plugin-fw-select-all, .yith-plugin-fw-deselect-all, .yith-plugin-fw-upload-button-reset // Old buttons.
|
77 |
-
{
|
78 |
-
@include button;
|
79 |
-
}
|
80 |
-
|
81 |
-
.yith-plugin-fw__button--primary {
|
82 |
-
@include button-primary;
|
83 |
-
}
|
84 |
-
|
85 |
-
.yith-plugin-fw__button--secondary {
|
86 |
-
@include button-secondary;
|
87 |
-
}
|
88 |
-
|
89 |
-
.yith-plugin-fw__button--delete {
|
90 |
-
@include button-delete;
|
91 |
-
}
|
92 |
-
|
93 |
-
.yith-plugin-fw__button--add, .yith-add-button {
|
94 |
-
@include button-primary;
|
95 |
-
|
96 |
-
@include button-with-icon("\f115");
|
97 |
-
|
98 |
-
&:before {
|
99 |
-
display : inline-block;
|
100 |
-
margin : 0 10px 0 -5px;
|
101 |
-
font-size : .95em;
|
102 |
-
transition : transform .2s, margin .2s, font-size .2s;
|
103 |
-
transition-timing-function : ease-in-out;
|
104 |
-
}
|
105 |
-
|
106 |
-
&.closed {
|
107 |
-
@include button-secondary;
|
108 |
-
|
109 |
-
&:before {
|
110 |
-
font-size : 1.15em;
|
111 |
-
margin : 0 8px 0 -5px;
|
112 |
-
transform : rotate(-45deg);
|
113 |
-
}
|
114 |
-
}
|
115 |
-
}
|
116 |
-
|
117 |
-
.yith-plugin-fw__button--close {
|
118 |
-
@include button-secondary;
|
119 |
-
|
120 |
-
@include button-with-icon("\f117");
|
121 |
-
}
|
122 |
-
|
123 |
-
.yith-plugin-fw__button--edit, .yith-edit-button {
|
124 |
-
@include button-secondary;
|
125 |
-
|
126 |
-
@include button-with-icon("\e907");
|
127 |
-
}
|
128 |
-
|
129 |
-
.yith-plugin-fw__button--update, .yith-update-button {
|
130 |
-
@include button-update;
|
131 |
-
|
132 |
-
@include button-with-icon("\e90b");
|
133 |
-
}
|
134 |
-
|
135 |
-
.yith-plugin-fw__button--trash, .yith-remove-button {
|
136 |
-
@include button-delete;
|
137 |
-
|
138 |
-
@include button-with-icon("\e90d");
|
139 |
-
}
|
140 |
-
|
141 |
-
.yith-plugin-fw__button--upload, .yith-plugin-fw-upload-button {
|
142 |
-
@include button-primary;
|
143 |
-
|
144 |
-
@include button-with-icon("\e90c");
|
145 |
-
}
|
146 |
-
|
147 |
-
// Old buttons.
|
148 |
-
.yith-save-button {
|
149 |
-
@include button-primary;
|
150 |
-
}
|
151 |
-
|
152 |
-
.yith-plugin-fw-select-all,
|
153 |
-
.yith-plugin-fw-deselect-all,
|
154 |
-
.yith-plugin-fw-upload-button-reset {
|
155 |
-
@include button-secondary;
|
156 |
-
}
|
157 |
-
|
158 |
-
// with icons.
|
159 |
-
.button-secondary span.yith-icon {
|
160 |
-
margin-left : 0;
|
161 |
-
margin-right : 10px;
|
162 |
-
line-height : normal;
|
163 |
-
|
164 |
-
&:before {
|
165 |
-
color : inherit;
|
166 |
-
font-size : 15px;
|
167 |
-
font-weight : 400;
|
168 |
-
}
|
169 |
-
}
|
170 |
-
|
171 |
-
// With icon
|
172 |
-
.yith-plugin-fw__button--with-icon {
|
173 |
-
position : relative;
|
174 |
-
padding-left : 30px;
|
175 |
-
|
176 |
-
i {
|
177 |
-
position : absolute;
|
178 |
-
top : 50%;
|
179 |
-
left : 10px;
|
180 |
-
transform : translateY(-50%);
|
181 |
-
font-size : 1em;
|
182 |
-
font-weight : 400;
|
183 |
-
}
|
184 |
-
}
|
185 |
-
|
186 |
-
|
187 |
-
// Button Sizes
|
188 |
-
.yith-plugin-fw__button--xl, .button-xl {
|
189 |
-
padding : 0 20px;
|
190 |
-
font-size : 14px;
|
191 |
-
line-height : 38px;
|
192 |
-
|
193 |
-
&::before {
|
194 |
-
margin : 0 10px 0 -5px;
|
195 |
-
}
|
196 |
-
|
197 |
-
&.yith-plugin-fw__button--with-icon {
|
198 |
-
padding-left : 40px;
|
199 |
-
|
200 |
-
i {
|
201 |
-
left : 14px;
|
202 |
-
}
|
203 |
-
}
|
204 |
-
}
|
205 |
-
|
206 |
-
.yith-plugin-fw__button--xxl {
|
207 |
-
padding : 0 28px;
|
208 |
-
font-size : 16px;
|
209 |
-
line-height : 45px;
|
210 |
-
|
211 |
-
&::before {
|
212 |
-
margin : 0 15px 0 -10px;
|
213 |
-
}
|
214 |
-
|
215 |
-
&.yith-plugin-fw__button--with-icon {
|
216 |
-
padding-left : 45px;
|
217 |
-
|
218 |
-
i {
|
219 |
-
left : 15px;
|
220 |
-
}
|
221 |
-
}
|
222 |
-
}
|
223 |
-
}
|
224 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/assets/css/scss/yith-plugin-ui/components/_confirm.scss
DELETED
@@ -1,41 +0,0 @@
|
|
1 |
-
@import "../mixins/buttons";
|
2 |
-
|
3 |
-
.yith-plugin-fw__confirm__wrap {
|
4 |
-
|
5 |
-
.yith-plugin-fw__confirm__message {
|
6 |
-
margin-bottom: 20px;
|
7 |
-
}
|
8 |
-
|
9 |
-
.yith-plugin-fw__confirm__footer {
|
10 |
-
text-align: right;
|
11 |
-
}
|
12 |
-
|
13 |
-
|
14 |
-
.yith-plugin-fw__confirm__button {
|
15 |
-
height: auto;
|
16 |
-
line-height: 33px;
|
17 |
-
border-radius: 4px;
|
18 |
-
padding: 0 20px;
|
19 |
-
font-weight: 600;
|
20 |
-
cursor: pointer;
|
21 |
-
display: inline-block;
|
22 |
-
margin-right: 10px;
|
23 |
-
white-space: nowrap;
|
24 |
-
|
25 |
-
&:last-child {
|
26 |
-
margin-right: 0;
|
27 |
-
}
|
28 |
-
|
29 |
-
&.yith-plugin-fw__confirm__button--cancel {
|
30 |
-
@include button-secondary;
|
31 |
-
}
|
32 |
-
|
33 |
-
&.yith-plugin-fw__confirm__button--confirm {
|
34 |
-
@include button-primary;
|
35 |
-
}
|
36 |
-
|
37 |
-
&.yith-plugin-fw__confirm__button--delete {
|
38 |
-
@include button-delete;
|
39 |
-
}
|
40 |
-
}
|
41 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/assets/css/scss/yith-plugin-ui/components/_list-table-blank-state.scss
DELETED
@@ -1,25 +0,0 @@
|
|
1 |
-
.yith-plugin-fw__list-table-blank-state {
|
2 |
-
padding: 30px 30px 0;
|
3 |
-
text-align: center;
|
4 |
-
display: flex;
|
5 |
-
flex-direction: column;
|
6 |
-
|
7 |
-
& > * {
|
8 |
-
margin-bottom: 30px;
|
9 |
-
}
|
10 |
-
|
11 |
-
img.yith-plugin-fw__list-table-blank-state__icon {
|
12 |
-
width: 100px;
|
13 |
-
margin: 0 auto 30px;
|
14 |
-
}
|
15 |
-
|
16 |
-
i.yith-plugin-fw__list-table-blank-state__icon {
|
17 |
-
font-size: 65px;
|
18 |
-
margin: 0 auto 30px;
|
19 |
-
}
|
20 |
-
|
21 |
-
.yith-plugin-fw__list-table-blank-state__message {
|
22 |
-
font-size: 1.4em;
|
23 |
-
line-height: 1.5;
|
24 |
-
}
|
25 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/assets/css/scss/yith-plugin-ui/components/_modal.scss
DELETED
@@ -1,128 +0,0 @@
|
|
1 |
-
.yith-plugin-fw__modal__wrap {
|
2 |
-
display: flex;
|
3 |
-
align-items: center;
|
4 |
-
justify-content: center;
|
5 |
-
position: fixed;
|
6 |
-
top: 0;
|
7 |
-
left: 0;
|
8 |
-
width: 100%;
|
9 |
-
height: 100%;
|
10 |
-
z-index: 999999;
|
11 |
-
background: rgba(34, 59, 80, 0.7);
|
12 |
-
animation: yith-plugin-fw-fade-in .3s forwards;
|
13 |
-
box-sizing: border-box;
|
14 |
-
|
15 |
-
.yith-plugin-fw__modal__main {
|
16 |
-
position: relative;
|
17 |
-
background: #fff;
|
18 |
-
border-radius: 10px;
|
19 |
-
box-shadow: 1px 3px 16px rgba(0, 22, 59, .4);
|
20 |
-
animation: yith-plugin-fw-appear-from-top .3s forwards;
|
21 |
-
overflow: hidden;
|
22 |
-
max-width: calc(100% - 20px);
|
23 |
-
max-height: calc(100% - 20px);
|
24 |
-
display: flex;
|
25 |
-
flex-direction: column;
|
26 |
-
}
|
27 |
-
|
28 |
-
.yith-plugin-fw__modal__close {
|
29 |
-
position: absolute;
|
30 |
-
top: 0;
|
31 |
-
right: 0;
|
32 |
-
padding: 8px;
|
33 |
-
font-size: 14px;
|
34 |
-
font-weight: 600;
|
35 |
-
color: #aaa;
|
36 |
-
cursor: pointer;
|
37 |
-
|
38 |
-
&:hover {
|
39 |
-
color: #444;
|
40 |
-
}
|
41 |
-
}
|
42 |
-
|
43 |
-
.yith-plugin-fw__modal__title {
|
44 |
-
padding: 20px 25px;
|
45 |
-
font-size: 1.5em;
|
46 |
-
font-weight: 600;
|
47 |
-
line-height: 1.5em;
|
48 |
-
color: var(--yith-primary);
|
49 |
-
}
|
50 |
-
|
51 |
-
.yith-plugin-fw__modal__content {
|
52 |
-
padding: 0 25px 25px;
|
53 |
-
}
|
54 |
-
|
55 |
-
.yith-plugin-fw__modal__footer {
|
56 |
-
padding: 25px;
|
57 |
-
background: #f7f7f7;
|
58 |
-
}
|
59 |
-
|
60 |
-
&.yith-plugin-fw__modal__wrap--scroll-content {
|
61 |
-
.yith-plugin-fw__modal__content {
|
62 |
-
overflow-y: auto;
|
63 |
-
}
|
64 |
-
}
|
65 |
-
}
|
66 |
-
|
67 |
-
.yith-plugin-fw__modal--opened {
|
68 |
-
overflow: hidden;
|
69 |
-
}
|
70 |
-
|
71 |
-
// Allow seeing WP Menu.
|
72 |
-
|
73 |
-
.yith-plugin-fw__modal--allow-wp-menu {
|
74 |
-
.yith-plugin-fw__modal__wrap {
|
75 |
-
z-index: 99;
|
76 |
-
padding-left: $wp_menu_size;
|
77 |
-
padding-top: $wp_top_bar_size;
|
78 |
-
}
|
79 |
-
|
80 |
-
#adminmenuback {
|
81 |
-
z-index: 100;
|
82 |
-
}
|
83 |
-
}
|
84 |
-
|
85 |
-
@media only screen and (max-width: 960px) {
|
86 |
-
.folded {
|
87 |
-
.yith-plugin-fw__modal__wrap {
|
88 |
-
padding-left: $wp_menu_folded_size;
|
89 |
-
}
|
90 |
-
}
|
91 |
-
|
92 |
-
.auto-fold {
|
93 |
-
.yith-plugin-fw__modal--allow-wp-menu {
|
94 |
-
.yith-plugin-fw__modal__wrap {
|
95 |
-
padding-left: $wp_menu_folded_size;
|
96 |
-
}
|
97 |
-
}
|
98 |
-
}
|
99 |
-
}
|
100 |
-
|
101 |
-
@media screen and (max-width: 782px) {
|
102 |
-
.auto-fold {
|
103 |
-
.yith-plugin-fw__modal--allow-wp-menu {
|
104 |
-
.yith-plugin-fw__modal__wrap {
|
105 |
-
z-index: 999999;
|
106 |
-
width: 100%;
|
107 |
-
height: 100%;
|
108 |
-
padding-left: 0;
|
109 |
-
padding-top: 0;
|
110 |
-
}
|
111 |
-
}
|
112 |
-
|
113 |
-
.yith-plugin-fw__modal--allow-wp-menu-in-mobile {
|
114 |
-
.yith-plugin-fw__modal__wrap {
|
115 |
-
z-index: 99;
|
116 |
-
padding-top: $wp_top_bar_mobile_size;
|
117 |
-
}
|
118 |
-
|
119 |
-
&.wp-responsive-open {
|
120 |
-
.yith-plugin-fw__modal__wrap {
|
121 |
-
padding-left: $wp_menu_mobile_size;
|
122 |
-
}
|
123 |
-
}
|
124 |
-
}
|
125 |
-
|
126 |
-
|
127 |
-
}
|
128 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/assets/css/scss/yith-plugin-ui/components/_tip-tip.scss
DELETED
@@ -1,79 +0,0 @@
|
|
1 |
-
@import "../mixins/buttons";
|
2 |
-
|
3 |
-
#tiptip_holder {
|
4 |
-
display: none;
|
5 |
-
z-index: 8675309;
|
6 |
-
position: absolute;
|
7 |
-
top: 0;
|
8 |
-
|
9 |
-
/*rtl:ignore*/
|
10 |
-
left: 0;
|
11 |
-
|
12 |
-
|
13 |
-
&.tip_top {
|
14 |
-
padding-bottom: 5px;
|
15 |
-
|
16 |
-
#tiptip_arrow_inner {
|
17 |
-
margin-top: -7px;
|
18 |
-
margin-left: -6px;
|
19 |
-
border-top-color: #333;
|
20 |
-
}
|
21 |
-
}
|
22 |
-
|
23 |
-
&.tip_bottom {
|
24 |
-
padding-top: 5px;
|
25 |
-
|
26 |
-
#tiptip_arrow_inner {
|
27 |
-
margin-top: -5px;
|
28 |
-
margin-left: -6px;
|
29 |
-
border-bottom-color: #333;
|
30 |
-
}
|
31 |
-
}
|
32 |
-
|
33 |
-
&.tip_right {
|
34 |
-
padding-left: 5px;
|
35 |
-
|
36 |
-
#tiptip_arrow_inner {
|
37 |
-
margin-top: -6px;
|
38 |
-
margin-left: -5px;
|
39 |
-
border-right-color: #333;
|
40 |
-
}
|
41 |
-
}
|
42 |
-
|
43 |
-
&.tip_left {
|
44 |
-
padding-right: 5px;
|
45 |
-
|
46 |
-
#tiptip_arrow_inner {
|
47 |
-
margin-top: -6px;
|
48 |
-
margin-left: -7px;
|
49 |
-
border-left-color: #333;
|
50 |
-
}
|
51 |
-
}
|
52 |
-
|
53 |
-
|
54 |
-
#tiptip_content {
|
55 |
-
color: #fff;
|
56 |
-
font-size: 0.8em;
|
57 |
-
max-width: 150px;
|
58 |
-
background: #333;
|
59 |
-
text-align: center;
|
60 |
-
border-radius: 3px;
|
61 |
-
padding: 0.618em 1em;
|
62 |
-
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
|
63 |
-
|
64 |
-
code {
|
65 |
-
padding: 1px;
|
66 |
-
background: #888;
|
67 |
-
}
|
68 |
-
}
|
69 |
-
|
70 |
-
#tiptip_arrow,
|
71 |
-
#tiptip_arrow_inner {
|
72 |
-
position: absolute;
|
73 |
-
border-color: transparent;
|
74 |
-
border-style: solid;
|
75 |
-
border-width: 6px;
|
76 |
-
height: 0;
|
77 |
-
width: 0;
|
78 |
-
}
|
79 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/assets/css/scss/yith-plugin-ui/mixins/_buttons.scss
DELETED
@@ -1,124 +0,0 @@
|
|
1 |
-
@mixin button {
|
2 |
-
display: inline-block;
|
3 |
-
height: auto;
|
4 |
-
line-height: 30px;
|
5 |
-
border-radius: 4px;
|
6 |
-
padding: 0 17px;
|
7 |
-
font-weight: 600;
|
8 |
-
cursor: pointer;
|
9 |
-
transition: all .3s ease-in-out;
|
10 |
-
text-decoration: none;
|
11 |
-
white-space: nowrap;
|
12 |
-
|
13 |
-
&:focus {
|
14 |
-
outline: none;
|
15 |
-
box-shadow: none;
|
16 |
-
}
|
17 |
-
}
|
18 |
-
|
19 |
-
@mixin button-primary {
|
20 |
-
background: var(--yith-primary);
|
21 |
-
color: var(--yith-primary-text);
|
22 |
-
border: 1px solid var(--yith-primary);
|
23 |
-
|
24 |
-
&:focus {
|
25 |
-
background: var(--yith-primary);
|
26 |
-
color: var(--yith-primary-text);
|
27 |
-
border: 1px solid var(--yith-primary);
|
28 |
-
box-shadow: 0 0 0 3px var(--yith-primary-focus);
|
29 |
-
}
|
30 |
-
|
31 |
-
&:hover, &:active {
|
32 |
-
background: var(--yith-primary-hover);
|
33 |
-
color: var(--yith-primary-text);
|
34 |
-
border: 1px solid var(--yith-primary-hover);
|
35 |
-
}
|
36 |
-
}
|
37 |
-
|
38 |
-
@mixin button-secondary {
|
39 |
-
background: var(--yith-outline-bg);
|
40 |
-
border: 1px solid var(--yith-outline-border);
|
41 |
-
color: var(--yith-outline-text);
|
42 |
-
|
43 |
-
&:focus {
|
44 |
-
background: var(--yith-outline-bg);
|
45 |
-
border: 1px solid var(--yith-outline-border);
|
46 |
-
color: var(--yith-outline-text);
|
47 |
-
box-shadow: 0 0 0 3px var(--yith-outline-focus);
|
48 |
-
}
|
49 |
-
|
50 |
-
&:hover, &:active {
|
51 |
-
background: var(--yith-outline-bg-hover);
|
52 |
-
border-color: var(--yith-outline-border-hover);
|
53 |
-
color: var(--yith-outline-text);
|
54 |
-
}
|
55 |
-
}
|
56 |
-
|
57 |
-
@mixin button-update {
|
58 |
-
background: var(--yith-update);
|
59 |
-
color: var(--yith-update-text);
|
60 |
-
border: 1px solid var(--yith-update);
|
61 |
-
|
62 |
-
&:focus {
|
63 |
-
background: var(--yith-update);
|
64 |
-
color: var(--yith-update-text);
|
65 |
-
border: 1px solid var(--yith-update);
|
66 |
-
box-shadow: 0 0 0 3px var(--yith-update-focus);
|
67 |
-
}
|
68 |
-
|
69 |
-
&:hover, &:active {
|
70 |
-
background: var(--yith-update-hover);
|
71 |
-
color: var(--yith-update-text);
|
72 |
-
border: 1px solid var(--yith-update-hover);
|
73 |
-
}
|
74 |
-
}
|
75 |
-
|
76 |
-
@mixin button-delete {
|
77 |
-
background: var(--yith-delete);
|
78 |
-
color: var(--yith-delete-text);
|
79 |
-
border: 1px solid var(--yith-delete);
|
80 |
-
|
81 |
-
&:focus {
|
82 |
-
background: var(--yith-delete);
|
83 |
-
color: var(--yith-delete-text);
|
84 |
-
border: 1px solid var(--yith-delete);
|
85 |
-
box-shadow: 0 0 0 3px var(--yith-delete-focus);
|
86 |
-
}
|
87 |
-
|
88 |
-
&:hover, &:active {
|
89 |
-
background: var(--yith-delete-hover);
|
90 |
-
color: var(--yith-delete-text);
|
91 |
-
border: 1px solid var(--yith-delete-hover);
|
92 |
-
}
|
93 |
-
}
|
94 |
-
|
95 |
-
@mixin button-delete-outline {
|
96 |
-
background: var(--yith-delete-outline-bg);
|
97 |
-
border: 1px solid var(--yith-delete-outline-border);
|
98 |
-
color: var(--yith-delete-outline-text);
|
99 |
-
|
100 |
-
&:focus {
|
101 |
-
background: var(--yith-delete-outline-bg);
|
102 |
-
border: 1px solid var(--yith-delete-outline-border);
|
103 |
-
color: var(--yith-delete-outline-text);
|
104 |
-
box-shadow: 0 0 0 3px var(--yith-delete-outline-focus);
|
105 |
-
}
|
106 |
-
|
107 |
-
&:hover, &:active {
|
108 |
-
background: var(--yith-delete-outline-bg-hover);
|
109 |
-
border-color: var(--yith-delete-outline-border-hover);
|
110 |
-
color: var(--yith-delete-outline-text);
|
111 |
-
}
|
112 |
-
}
|
113 |
-
|
114 |
-
@mixin button-with-icon($icon) {
|
115 |
-
|
116 |
-
&:before {
|
117 |
-
font-family: yith-icon;
|
118 |
-
content: $icon;
|
119 |
-
margin: 0 8px 0 -5px;
|
120 |
-
font-size: 1.15em;
|
121 |
-
font-weight: 400;
|
122 |
-
vertical-align: top;
|
123 |
-
}
|
124 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/assets/css/scss/yith-plugin-ui/mixins/_tables.scss
DELETED
@@ -1,159 +0,0 @@
|
|
1 |
-
@mixin table-action-buttons {
|
2 |
-
|
3 |
-
thead th.column-actions, tfoot th.column-actions {
|
4 |
-
visibility: hidden;
|
5 |
-
}
|
6 |
-
|
7 |
-
th.column-actions, td.column-actions {
|
8 |
-
text-align: right;
|
9 |
-
}
|
10 |
-
|
11 |
-
.yith-plugin-fw__action-button:not(.yith-plugin-fw__action-button--visible) {
|
12 |
-
opacity: 0;
|
13 |
-
transition: .3s;
|
14 |
-
}
|
15 |
-
|
16 |
-
tbody tr:hover .yith-plugin-fw__action-button:not(.yith-plugin-fw__action-button--visible) {
|
17 |
-
opacity: 1;
|
18 |
-
}
|
19 |
-
}
|
20 |
-
|
21 |
-
@mixin wp-table-commons {
|
22 |
-
|
23 |
-
tfoot {
|
24 |
-
display: none;
|
25 |
-
}
|
26 |
-
|
27 |
-
.check-column {
|
28 |
-
width: 2em;
|
29 |
-
}
|
30 |
-
|
31 |
-
th.sortable a, th.sorted a {
|
32 |
-
padding: 0 8px 0 0;
|
33 |
-
color: inherit;
|
34 |
-
|
35 |
-
&:hover {
|
36 |
-
color: var(--yith-link);
|
37 |
-
}
|
38 |
-
}
|
39 |
-
|
40 |
-
.sorting-indicator {
|
41 |
-
visibility: visible;
|
42 |
-
|
43 |
-
&:before {
|
44 |
-
font-family: yith-icon;
|
45 |
-
content: "\f116";
|
46 |
-
color: inherit;
|
47 |
-
font-size: 10px;
|
48 |
-
top: 0;
|
49 |
-
left: 0;
|
50 |
-
}
|
51 |
-
}
|
52 |
-
|
53 |
-
th.sorted.asc .sorting-indicator:before,
|
54 |
-
th.desc:hover span.sorting-indicator:before,
|
55 |
-
th.desc a:focus span.sorting-indicator:before {
|
56 |
-
content: "\f113";
|
57 |
-
font-weight: 600;
|
58 |
-
}
|
59 |
-
|
60 |
-
th.sorted.desc .sorting-indicator:before,
|
61 |
-
th.asc:hover span.sorting-indicator:before,
|
62 |
-
th.asc a:focus span.sorting-indicator:before {
|
63 |
-
content: "\f110";
|
64 |
-
font-weight: 600;
|
65 |
-
}
|
66 |
-
@include table-action-buttons;
|
67 |
-
}
|
68 |
-
|
69 |
-
@mixin classic-table {
|
70 |
-
border: 2px solid var(--yith-table-border-light);
|
71 |
-
background: var(--yith-content-bg);
|
72 |
-
box-shadow: none;
|
73 |
-
border-spacing: 0;
|
74 |
-
|
75 |
-
th, thead td, tfoot td {
|
76 |
-
text-align: left;
|
77 |
-
line-height: 1.3em;
|
78 |
-
font-size: 14px;
|
79 |
-
}
|
80 |
-
|
81 |
-
thead th, thead td {
|
82 |
-
border-bottom: 0;
|
83 |
-
}
|
84 |
-
|
85 |
-
tfoot th, tfoot td {
|
86 |
-
border-top: 0;
|
87 |
-
}
|
88 |
-
|
89 |
-
tbody tr th, tbody tr td {
|
90 |
-
vertical-align: middle;
|
91 |
-
padding: 15px;
|
92 |
-
}
|
93 |
-
|
94 |
-
tbody tr:hover {
|
95 |
-
background: var(--yith-table-row-highlight);
|
96 |
-
}
|
97 |
-
|
98 |
-
thead td, thead th, tfoot td, tfoot th {
|
99 |
-
padding: 15px;
|
100 |
-
font-weight: 600;
|
101 |
-
}
|
102 |
-
|
103 |
-
tbody > :nth-child(odd) {
|
104 |
-
background-color: var(--yith-table-row-striped);
|
105 |
-
}
|
106 |
-
}
|
107 |
-
|
108 |
-
|
109 |
-
@mixin boxed-table {
|
110 |
-
border: 0;
|
111 |
-
border-spacing: 0 20px;
|
112 |
-
box-shadow: none;
|
113 |
-
background: transparent;
|
114 |
-
|
115 |
-
th, thead td, tfoot td {
|
116 |
-
text-align: left;
|
117 |
-
line-height: 1.3em;
|
118 |
-
font-size: 14px;
|
119 |
-
}
|
120 |
-
|
121 |
-
thead th, thead td {
|
122 |
-
border-bottom: 0;
|
123 |
-
padding: 0 0 0 25px;
|
124 |
-
font-weight: 600;
|
125 |
-
}
|
126 |
-
|
127 |
-
tbody tr {
|
128 |
-
background: var(--yith-content-bg);
|
129 |
-
border-radius: 5px;
|
130 |
-
box-shadow: 0 0 0 1px var(--yith-light-border-color), 0 3px 11px 6px var(--yith-light-shadow);
|
131 |
-
transition: background-color .2s ease-in-out;
|
132 |
-
}
|
133 |
-
|
134 |
-
tbody tr th, tbody tr td {
|
135 |
-
background: transparent;
|
136 |
-
vertical-align: middle;
|
137 |
-
padding: 25px 0 25px 25px;
|
138 |
-
}
|
139 |
-
|
140 |
-
tbody tr td:last-child {
|
141 |
-
padding-right: 25px;
|
142 |
-
}
|
143 |
-
|
144 |
-
tbody tr th:first-child,
|
145 |
-
tbody tr td:first-child {
|
146 |
-
border-radius: 5px 0 0 5px;
|
147 |
-
}
|
148 |
-
|
149 |
-
tbody tr th:last-child,
|
150 |
-
tbody tr td:last-child {
|
151 |
-
padding-right: 25px;
|
152 |
-
border-radius: 0 5px 5px 0;
|
153 |
-
}
|
154 |
-
|
155 |
-
|
156 |
-
tbody tr:hover {
|
157 |
-
background: var(--yith-table-row-highlight);
|
158 |
-
}
|
159 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
plugin-fw/assets/css/yit-plugin-panel.css
CHANGED
@@ -1,1087 +1,1276 @@
|
|
1 |
-
/*
|
2 |
-
* This file belongs to the YIT Plugin Framework.
|
3 |
-
*
|
4 |
-
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
5 |
-
* that is bundled with this package in the file LICENSE.txt.
|
6 |
-
* It is also available through the world-wide-web at this URL:
|
7 |
-
* http://www.gnu.org/licenses/gpl-3.0.txt
|
8 |
-
*/
|
9 |
-
.plugin-option tr {
|
10 |
-
border-bottom : 1px solid #ebebeb;
|
11 |
-
}
|
12 |
-
|
13 |
-
.plugin-option .yit_options,
|
14 |
-
.plugin-option .yit-options {
|
15 |
-
border-bottom : 0px;
|
16 |
-
}
|
17 |
-
|
18 |
-
.plugin-option .yit-options .option,
|
19 |
-
.plugin-option .yit_options .option {
|
20 |
-
width : 600px;
|
21 |
-
}
|
22 |
-
|
23 |
-
.plugin-option .form-table > tbody > tr > td {
|
24 |
-
padding : 25px 15px;
|
25 |
-
}
|
26 |
-
|
27 |
-
.ie8 .yit_options select,
|
28 |
-
.ie8 .yit-options select {
|
29 |
-
height : 26px;
|
30 |
-
}
|
31 |
-
|
32 |
-
/* Style to woocommerce panel*/
|
33 |
-
|
34 |
-
#plugin-fw-wc, #yith-plugin-fw-panel {
|
35 |
-
padding-top : 20px;
|
36 |
-
}
|
37 |
-
|
38 |
-
#plugin-fw-wc table.form-table, #yith-plugin-fw-panel table.form-table, .yith-plugin-fw-panel-custom-tab-container {
|
39 |
-
background-color : #fff;
|
40 |
-
margin-bottom : 20px;
|
41 |
-
}
|
42 |
-
|
43 |
-
.yith-plugin-fw-panel-custom-tab-container {
|
44 |
-
padding : 20px;
|
45 |
-
box-sizing : border-box;
|
46 |
-
margin-right : 15px;
|
47 |
-
}
|
48 |
-
|
49 |
-
.yith-plugin-ui .yith-plugin-fw-panel-custom-tab-container {
|
50 |
-
border : 1px solid #ddd;
|
51 |
-
border-top : 0;
|
52 |
-
}
|
53 |
-
|
54 |
-
.yith-plugin-ui .yith-plugin-fw-panel-custom-sub-tab-container {
|
55 |
-
padding : 20px;
|
56 |
-
box-sizing : border-box;
|
57 |
-
border : 1px solid #ccc;
|
58 |
-
border-top : 0;
|
59 |
-
margin : -20px 0 0 0;
|
60 |
-
}
|
61 |
-
|
62 |
-
.yith-plugin-fw-panel-custom-tab-container > h2,
|
63 |
-
.yith-plugin-fw-panel-custom-tab-container h2,
|
64 |
-
.yith-plugin-ui .yith-plugin-fw-panel-custom-tab-container > h2,
|
65 |
-
.yith-plugin-ui .yith-plugin-fw-panel-custom-tab-container h2,
|
66 |
-
.yith-plugin-ui .yith-plugin-fw-panel-custom-sub-tab-container > h2,
|
67 |
-
.yith-plugin-ui .yith-plugin-fw-panel-custom-sub-tab-container h2 {
|
68 |
-
border : none;
|
69 |
-
padding : 15px 0;
|
70 |
-
}
|
71 |
-
|
72 |
-
#plugin-fw-wc table.form-table th, #yith-plugin-fw-panel table.form-table th {
|
73 |
-
padding : 20px;
|
74 |
-
}
|
75 |
-
|
76 |
-
#plugin-fw-wc h3, #yith-plugin-fw-panel h3 {
|
77 |
-
padding : 0 0 0 10px;
|
78 |
-
margin : 0;
|
79 |
-
}
|
80 |
-
|
81 |
-
/**
|
82 |
-
Help tab
|
83 |
-
*/
|
84 |
-
|
85 |
-
.yith-plugin-fw-panel-help-tab-container {
|
86 |
-
background-color : #fff;
|
87 |
-
padding : 60px 25px;
|
88 |
-
}
|
89 |
-
|
90 |
-
.yith-plugin-fw-panel-help-tab-content {
|
91 |
-
background-color : #f4f4f4;
|
92 |
-
border-radius : 15px;
|
93 |
-
max-width : 1100px;
|
94 |
-
margin : 0 auto;
|
95 |
-
padding : 40px 40px 60px;
|
96 |
-
}
|
97 |
-
|
98 |
-
.yith-plugin-fw-panel-help-tab-content p,
|
99 |
-
.yith-plugin-fw-panel-help-tab-content a {
|
100 |
-
font-size : 16px;
|
101 |
-
}
|
102 |
-
|
103 |
-
.yith-plugin-fw-panel-help-tab-content .row {
|
104 |
-
margin : 0 -15px 50px;
|
105 |
-
white-space : nowrap;
|
106 |
-
}
|
107 |
-
|
108 |
-
.yith-plugin-fw-panel-help-tab-content .row:last-child {
|
109 |
-
margin-bottom : 0;
|
110 |
-
}
|
111 |
-
|
112 |
-
.yith-plugin-fw-panel-help-tab-content .row .column-left,
|
113 |
-
.yith-plugin-fw-panel-help-tab-content .row .column-right {
|
114 |
-
display : inline-block;
|
115 |
-
padding : 0 15px;
|
116 |
-
vertical-align : top;
|
117 |
-
width : 66%;
|
118 |
-
}
|
119 |
-
|
120 |
-
.yith-plugin-fw-panel-help-tab-content .row .column-right {
|
121 |
-
width : 33%;
|
122 |
-
}
|
123 |
-
|
124 |
-
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-help-tab-video,
|
125 |
-
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-help-tab-actions,
|
126 |
-
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-hc-articles,
|
127 |
-
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-submit-ticket {
|
128 |
-
box-sizing : border-box;
|
129 |
-
white-space : normal;
|
130 |
-
}
|
131 |
-
|
132 |
-
.yith-plugin-fw-panel-help-tab-content h2.yith-plugin-fw-panel-help-tab-title {
|
133 |
-
background : none;
|
134 |
-
border : none;
|
135 |
-
font-size : 22px;
|
136 |
-
line-height : 1.5em;
|
137 |
-
padding : 0;
|
138 |
-
text-align : center;
|
139 |
-
}
|
140 |
-
|
141 |
-
.yith-plugin-fw-panel-help-tab-content h3 {
|
142 |
-
color : #03689f;
|
143 |
-
font-size : 15px;
|
144 |
-
}
|
145 |
-
|
146 |
-
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-panel-tab-description {
|
147 |
-
font-size : 18px;
|
148 |
-
text-align : center;
|
149 |
-
margin-bottom : 40px;
|
150 |
-
}
|
151 |
-
|
152 |
-
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-help-tab-video {
|
153 |
-
text-align : center;
|
154 |
-
}
|
155 |
-
|
156 |
-
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-help-tab-video p.video-description {
|
157 |
-
margin-bottom : 25px;
|
158 |
-
}
|
159 |
-
|
160 |
-
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-help-tab-video .video-caption p {
|
161 |
-
margin : 5px 0;
|
162 |
-
}
|
163 |
-
|
164 |
-
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-help-tab-video .video-container {
|
165 |
-
margin : 0 auto 50px;
|
166 |
-
overflow : hidden;
|
167 |
-
padding-top : 56.25%;
|
168 |
-
position : relative;
|
169 |
-
}
|
170 |
-
|
171 |
-
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-help-tab-video .video-container iframe {
|
172 |
-
border : 0;
|
173 |
-
height : 100%;
|
174 |
-
left : 0;
|
175 |
-
position : absolute;
|
176 |
-
top : 0;
|
177 |
-
width : 100%;
|
178 |
-
}
|
179 |
-
|
180 |
-
.yith-plugin-fw-panel-help-tab-content .box-with-shadow {
|
181 |
-
display : block;
|
182 |
-
background-color : #fff;
|
183 |
-
border-radius : 5px;
|
184 |
-
box-shadow : 0 0 15px 5px rgba(174, 201, 207, 0.3);
|
185 |
-
transition : all .2s ease;
|
186 |
-
}
|
187 |
-
|
188 |
-
.yith-plugin-fw-panel-help-tab-content ul.yith-plugin-fw-help-tab-actions,
|
189 |
-
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-submit-ticket {
|
190 |
-
margin : 0 auto;
|
191 |
-
max-width : 640px;
|
192 |
-
}
|
193 |
-
|
194 |
-
.yith-plugin-fw-panel-help-tab-content ul.yith-plugin-fw-help-tab-actions:not( .full-width ) {
|
195 |
-
padding-top : 65px !important;
|
196 |
-
}
|
197 |
-
|
198 |
-
.yith-plugin-fw-panel-help-tab-content ul.yith-plugin-fw-help-tab-actions li {
|
199 |
-
margin-bottom : 20px;
|
200 |
-
}
|
201 |
-
|
202 |
-
.yith-plugin-fw-panel-help-tab-content ul.yith-plugin-fw-help-tab-actions li > a {
|
203 |
-
display : block;
|
204 |
-
padding : 15px 20px 15px 75px !important;
|
205 |
-
text-decoration : none;
|
206 |
-
}
|
207 |
-
|
208 |
-
.yith-plugin-fw-panel-help-tab-content ul.yith-plugin-fw-help-tab-actions li:hover {
|
209 |
-
box-shadow : 0 0 15px 5px rgba(177, 220, 228, 0.6);
|
210 |
-
transform : scale(1.04);
|
211 |
-
}
|
212 |
-
|
213 |
-
.yith-plugin-fw-panel-help-tab-content ul.yith-plugin-fw-help-tab-actions li a:before {
|
214 |
-
color : #03689f;
|
215 |
-
float : left;
|
216 |
-
font-family : 'yith-icon';
|
217 |
-
font-size : 36px;
|
218 |
-
line-height : 1;
|
219 |
-
margin-left : -50px;
|
220 |
-
-webkit-font-smoothing : antialiased;
|
221 |
-
-moz-osx-font-smoothing : grayscale;
|
222 |
-
}
|
223 |
-
|
224 |
-
.yith-plugin-fw-panel-help-tab-content ul.yith-plugin-fw-help-tab-actions li.read-documentation a:before {
|
225 |
-
content : '\f10d';
|
226 |
-
}
|
227 |
-
|
228 |
-
.yith-plugin-fw-panel-help-tab-content ul.yith-plugin-fw-help-tab-actions li.watch-videotutorials a:before {
|
229 |
-
content : '\f10e';
|
230 |
-
}
|
231 |
-
|
232 |
-
.yith-plugin-fw-panel-help-tab-content ul.yith-plugin-fw-help-tab-actions li.check-faqs a:before {
|
233 |
-
content : '\f10c';
|
234 |
-
}
|
235 |
-
|
236 |
-
.yith-plugin-fw-panel-help-tab-content ul.yith-plugin-fw-help-tab-actions li h4 {
|
237 |
-
margin : 0 0 5px;
|
238 |
-
}
|
239 |
-
|
240 |
-
.yith-plugin-fw-panel-help-tab-content ul.yith-plugin-fw-help-tab-actions li h4 a {
|
241 |
-
color : #03689f;
|
242 |
-
text-decoration : none;
|
243 |
-
}
|
244 |
-
|
245 |
-
.yith-plugin-fw-panel-help-tab-content ul.yith-plugin-fw-help-tab-actions li .description {
|
246 |
-
margin : 0;
|
247 |
-
font-size : 14px;
|
248 |
-
}
|
249 |
-
|
250 |
-
.yith-plugin-fw-panel-help-tab-content ul.yith-plugin-fw-help-tab-actions li .separator {
|
251 |
-
display : inline-block;
|
252 |
-
margin : 0 5px;
|
253 |
-
}
|
254 |
-
|
255 |
-
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-hc-articles h3 {
|
256 |
-
font-size : 18px;
|
257 |
-
margin : 0;
|
258 |
-
padding : 10px 0;
|
259 |
-
position : relative;
|
260 |
-
|
261 |
-
}
|
262 |
-
|
263 |
-
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-hc-articles h3:before {
|
264 |
-
content : '';
|
265 |
-
background : #03689f;
|
266 |
-
display : block;
|
267 |
-
height : 100%;
|
268 |
-
left : -40px;
|
269 |
-
position : absolute;
|
270 |
-
top : 0;
|
271 |
-
width : 15px;
|
272 |
-
|
273 |
-
}
|
274 |
-
|
275 |
-
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-hc-articles a.button {
|
276 |
-
font-size : 16px;
|
277 |
-
}
|
278 |
-
|
279 |
-
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-hc-articles-list {
|
280 |
-
margin : 15px 0 30px;
|
281 |
-
}
|
282 |
-
|
283 |
-
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-hc-articles-list li {
|
284 |
-
display : block;
|
285 |
-
margin-bottom : 10px;
|
286 |
-
}
|
287 |
-
|
288 |
-
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-hc-articles-list li:before {
|
289 |
-
content : '-';
|
290 |
-
}
|
291 |
-
|
292 |
-
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-hc-articles-list a {
|
293 |
-
text-decoration : none;
|
294 |
-
}
|
295 |
-
|
296 |
-
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-submit-ticket > .box-with-shadow {
|
297 |
-
padding : 30px !important;
|
298 |
-
}
|
299 |
-
|
300 |
-
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-submit-ticket h3 {
|
301 |
-
color : #b90a0a;
|
302 |
-
font-size : 18px;
|
303 |
-
margin : 0 0 15px;
|
304 |
-
}
|
305 |
-
|
306 |
-
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-submit-ticket p {
|
307 |
-
margin-bottom : 35px;
|
308 |
-
}
|
309 |
-
|
310 |
-
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-submit-ticket .button {
|
311 |
-
border-radius : 7px;
|
312 |
-
display : block;
|
313 |
-
font-size : 15px;
|
314 |
-
padding : 7px 15px;
|
315 |
-
text-align : center;
|
316 |
-
}
|
317 |
-
|
318 |
-
/**
|
319 |
-
|
320 |
-
*/
|
321 |
-
|
322 |
-
|
323 |
-
|
324 |
-
|
325 |
-
|
326 |
-
|
327 |
-
|
328 |
-
|
329 |
-
|
330 |
-
|
331 |
-
|
332 |
-
|
333 |
-
border
|
334 |
-
border-
|
335 |
-
|
336 |
-
|
337 |
-
|
338 |
-
|
339 |
-
|
340 |
-
|
341 |
-
|
342 |
-
|
343 |
-
}
|
344 |
-
|
345 |
-
#
|
346 |
-
|
347 |
-
|
348 |
-
|
349 |
-
|
350 |
-
|
351 |
-
}
|
352 |
-
|
353 |
-
|
354 |
-
|
355 |
-
|
356 |
-
|
357 |
-
|
358 |
-
|
359 |
-
|
360 |
-
|
361 |
-
|
362 |
-
|
363 |
-
|
364 |
-
|
365 |
-
|
366 |
-
|
367 |
-
|
368 |
-
|
369 |
-
|
370 |
-
|
371 |
-
|
372 |
-
|
373 |
-
|
374 |
-
|
375 |
-
|
376 |
-
|
377 |
-
|
378 |
-
|
379 |
-
display :
|
380 |
-
|
381 |
-
|
382 |
-
|
383 |
-
|
384 |
-
|
385 |
-
|
386 |
-
|
387 |
-
|
388 |
-
|
389 |
-
background
|
390 |
-
|
391 |
-
|
392 |
-
|
393 |
-
|
394 |
-
|
395 |
-
|
396 |
-
|
397 |
-
|
398 |
-
|
399 |
-
|
400 |
-
|
401 |
-
|
402 |
-
|
403 |
-
|
404 |
-
|
405 |
-
|
406 |
-
|
407 |
-
|
408 |
-
|
409 |
-
|
410 |
-
|
411 |
-
|
412 |
-
|
413 |
-
|
414 |
-
|
415 |
-
|
416 |
-
|
417 |
-
|
418 |
-
|
419 |
-
|
420 |
-
|
421 |
-
|
422 |
-
|
423 |
-
|
424 |
-
|
425 |
-
|
426 |
-
|
427 |
-
|
428 |
-
|
429 |
-
|
430 |
-
border
|
431 |
-
|
432 |
-
|
433 |
-
|
434 |
-
|
435 |
-
|
436 |
-
|
437 |
-
|
438 |
-
|
439 |
-
|
440 |
-
|
441 |
-
|
442 |
-
|
443 |
-
|
444 |
-
|
445 |
-
|
446 |
-
|
447 |
-
|
448 |
-
|
449 |
-
|
450 |
-
|
451 |
-
|
452 |
-
|
453 |
-
|
454 |
-
}
|
455 |
-
|
456 |
-
.
|
457 |
-
|
458 |
-
|
459 |
-
|
460 |
-
|
461 |
-
|
462 |
-
|
463 |
-
|
464 |
-
|
465 |
-
|
466 |
-
|
467 |
-
|
468 |
-
|
469 |
-
|
470 |
-
|
471 |
-
|
472 |
-
|
473 |
-
|
474 |
-
.
|
475 |
-
|
476 |
-
|
477 |
-
|
478 |
-
|
479 |
-
|
480 |
-
|
481 |
-
|
482 |
-
|
483 |
-
|
484 |
-
|
485 |
-
|
486 |
-
|
487 |
-
|
488 |
-
|
489 |
-
}
|
490 |
-
|
491 |
-
.
|
492 |
-
|
493 |
-
|
494 |
-
|
495 |
-
|
496 |
-
|
497 |
-
}
|
498 |
-
|
499 |
-
.
|
500 |
-
|
501 |
-
|
502 |
-
|
503 |
-
|
504 |
-
|
505 |
-
|
506 |
-
|
507 |
-
|
508 |
-
|
509 |
-
|
510 |
-
|
511 |
-
.
|
512 |
-
|
513 |
-
|
514 |
-
|
515 |
-
|
516 |
-
|
517 |
-
|
518 |
-
|
519 |
-
|
520 |
-
|
521 |
-
|
522 |
-
|
523 |
-
|
524 |
-
|
525 |
-
|
526 |
-
|
527 |
-
|
528 |
-
|
529 |
-
|
530 |
-
|
531 |
-
|
532 |
-
|
533 |
-
|
534 |
-
|
535 |
-
|
536 |
-
|
537 |
-
|
538 |
-
|
539 |
-
|
540 |
-
|
541 |
-
|
542 |
-
|
543 |
-
|
544 |
-
|
545 |
-
|
546 |
-
|
547 |
-
|
548 |
-
|
549 |
-
|
550 |
-
|
551 |
-
|
552 |
-
|
553 |
-
|
554 |
-
|
555 |
-
|
556 |
-
|
557 |
-
-
|
558 |
-
-
|
559 |
-
|
560 |
-
|
561 |
-
|
562 |
-
|
563 |
-
|
564 |
-
.yit-container.plugin-licence-activation
|
565 |
-
|
566 |
-
}
|
567 |
-
|
568 |
-
.yit-container.plugin-licence-activation .
|
569 |
-
|
570 |
-
|
571 |
-
|
572 |
-
|
573 |
-
|
574 |
-
|
575 |
-
|
576 |
-
|
577 |
-
|
578 |
-
|
579 |
-
|
580 |
-
|
581 |
-
|
582 |
-
|
583 |
-
|
584 |
-
|
585 |
-
|
586 |
-
|
587 |
-
|
588 |
-
|
589 |
-
|
590 |
-
|
591 |
-
|
592 |
-
|
593 |
-
|
594 |
-
|
595 |
-
|
596 |
-
|
597 |
-
|
598 |
-
|
599 |
-
|
600 |
-
|
601 |
-
|
602 |
-
.yit-container.plugin-licence-activation
|
603 |
-
|
604 |
-
|
605 |
-
|
606 |
-
|
607 |
-
|
608 |
-
border
|
609 |
-
}
|
610 |
-
|
611 |
-
.yit-container.plugin-licence-activation
|
612 |
-
|
613 |
-
}
|
614 |
-
|
615 |
-
.yit-container.plugin-licence-activation
|
616 |
-
|
617 |
-
|
618 |
-
|
619 |
-
|
620 |
-
|
621 |
-
|
622 |
-
|
623 |
-
|
624 |
-
|
625 |
-
|
626 |
-
|
627 |
-
|
628 |
-
|
629 |
-
|
630 |
-
|
631 |
-
|
632 |
-
|
633 |
-
|
634 |
-
|
635 |
-
}
|
636 |
-
|
637 |
-
.yit-container.plugin-licence-activation .
|
638 |
-
|
639 |
-
|
640 |
-
|
641 |
-
|
642 |
-
|
643 |
-
}
|
644 |
-
|
645 |
-
.yit-container.plugin-licence-activation
|
646 |
-
|
647 |
-
-
|
648 |
-
-
|
649 |
-
-
|
650 |
-
|
651 |
-
|
652 |
-
|
653 |
-
|
654 |
-
|
655 |
-
|
656 |
-
|
657 |
-
|
658 |
-
|
659 |
-
|
660 |
-
|
661 |
-
}
|
662 |
-
|
663 |
-
.yit-container.plugin-licence-activation .to-active
|
664 |
-
|
665 |
-
|
666 |
-
|
667 |
-
|
668 |
-
|
669 |
-
|
670 |
-
|
671 |
-
|
672 |
-
|
673 |
-
|
674 |
-
|
675 |
-
|
676 |
-
|
677 |
-
|
678 |
-
|
679 |
-
|
680 |
-
|
681 |
-
|
682 |
-
|
683 |
-
-
|
684 |
-
|
685 |
-
|
686 |
-
|
687 |
-
|
688 |
-
|
689 |
-
|
690 |
-
|
691 |
-
|
692 |
-
|
693 |
-
|
694 |
-
|
695 |
-
|
696 |
-
|
697 |
-
|
698 |
-
|
699 |
-
|
700 |
-
|
701 |
-
|
702 |
-
|
703 |
-
|
704 |
-
|
705 |
-
|
706 |
-
|
707 |
-
|
708 |
-
|
709 |
-
|
710 |
-
|
711 |
-
|
712 |
-
|
713 |
-
|
714 |
-
|
715 |
-
|
716 |
-
|
717 |
-
|
718 |
-
|
719 |
-
|
720 |
-
|
721 |
-
|
722 |
-
|
723 |
-
|
724 |
-
|
725 |
-
|
726 |
-
|
727 |
-
|
728 |
-
|
729 |
-
|
730 |
-
|
731 |
-
|
732 |
-
|
733 |
-
|
734 |
-
|
735 |
-
|
736 |
-
|
737 |
-
|
738 |
-
|
739 |
-
|
740 |
-
|
741 |
-
|
742 |
-
|
743 |
-
|
744 |
-
|
745 |
-
|
746 |
-
|
747 |
-
|
748 |
-
|
749 |
-
|
750 |
-
|
751 |
-
|
752 |
-
|
753 |
-
|
754 |
-
|
755 |
-
|
756 |
-
|
757 |
-
|
758 |
-
|
759 |
-
}
|
760 |
-
|
761 |
-
|
762 |
-
|
763 |
-
|
764 |
-
|
765 |
-
|
766 |
-
|
767 |
-
|
768 |
-
|
769 |
-
|
770 |
-
|
771 |
-
|
772 |
-
|
773 |
-
|
774 |
-
|
775 |
-
|
776 |
-
|
777 |
-
|
778 |
-
|
779 |
-
|
780 |
-
|
781 |
-
|
782 |
-
|
783 |
-
|
784 |
-
|
785 |
-
|
786 |
-
|
787 |
-
|
788 |
-
|
789 |
-
|
790 |
-
|
791 |
-
.
|
792 |
-
|
793 |
-
|
794 |
-
|
795 |
-
|
796 |
-
|
797 |
-
|
798 |
-
|
799 |
-
|
800 |
-
|
801 |
-
|
802 |
-
|
803 |
-
|
804 |
-
|
805 |
-
|
806 |
-
|
807 |
-
|
808 |
-
|
809 |
-
|
810 |
-
|
811 |
-
|
812 |
-
|
813 |
-
|
814 |
-
|
815 |
-
|
816 |
-
padding
|
817 |
-
|
818 |
-
|
819 |
-
|
820 |
-
|
821 |
-
|
822 |
-
|
823 |
-
|
824 |
-
|
825 |
-
|
826 |
-
|
827 |
-
|
828 |
-
|
829 |
-
|
830 |
-
|
831 |
-
|
832 |
-
|
833 |
-
|
834 |
-
|
835 |
-
|
836 |
-
|
837 |
-
}
|
838 |
-
|
839 |
-
.
|
840 |
-
|
841 |
-
|
842 |
-
|
843 |
-
|
844 |
-
|
845 |
-
|
846 |
-
|
847 |
-
|
848 |
-
}
|
849 |
-
|
850 |
-
.
|
851 |
-
|
852 |
-
|
853 |
-
}
|
854 |
-
|
855 |
-
.
|
856 |
-
|
857 |
-
|
858 |
-
|
859 |
-
|
860 |
-
|
861 |
-
|
862 |
-
|
863 |
-
|
864 |
-
|
865 |
-
|
866 |
-
|
867 |
-
|
868 |
-
|
869 |
-
|
870 |
-
|
871 |
-
|
872 |
-
|
873 |
-
|
874 |
-
|
875 |
-
|
876 |
-
.
|
877 |
-
|
878 |
-
|
879 |
-
|
880 |
-
|
881 |
-
|
882 |
-
|
883 |
-
|
884 |
-
|
885 |
-
|
886 |
-
|
887 |
-
|
888 |
-
|
889 |
-
|
890 |
-
}
|
891 |
-
|
892 |
-
|
893 |
-
|
894 |
-
|
895 |
-
|
896 |
-
|
897 |
-
|
898 |
-
|
899 |
-
|
900 |
-
|
901 |
-
|
902 |
-
|
903 |
-
|
904 |
-
|
905 |
-
|
906 |
-
|
907 |
-
|
908 |
-
|
909 |
-
|
910 |
-
|
911 |
-
|
912 |
-
|
913 |
-
|
914 |
-
|
915 |
-
|
916 |
-
|
917 |
-
|
918 |
-
|
919 |
-
|
920 |
-
|
921 |
-
|
922 |
-
|
923 |
-
|
924 |
-
|
925 |
-
|
926 |
-
|
927 |
-
|
928 |
-
|
929 |
-
|
930 |
-
|
931 |
-
|
932 |
-
|
933 |
-
|
934 |
-
|
935 |
-
|
936 |
-
|
937 |
-
|
938 |
-
|
939 |
-
|
940 |
-
|
941 |
-
|
942 |
-
|
943 |
-
|
944 |
-
|
945 |
-
|
946 |
-
|
947 |
-
|
948 |
-
|
949 |
-
|
950 |
-
|
951 |
-
}
|
952 |
-
|
953 |
-
|
954 |
-
|
955 |
-
|
956 |
-
|
957 |
-
|
958 |
-
|
959 |
-
|
960 |
-
|
961 |
-
|
962 |
-
|
963 |
-
|
964 |
-
|
965 |
-
|
966 |
-
|
967 |
-
|
968 |
-
|
969 |
-
|
970 |
-
|
971 |
-
|
972 |
-
|
973 |
-
|
974 |
-
|
975 |
-
|
976 |
-
|
977 |
-
|
978 |
-
|
979 |
-
|
980 |
-
|
981 |
-
border
|
982 |
-
border-
|
983 |
-
|
984 |
-
|
985 |
-
|
986 |
-
|
987 |
-
|
988 |
-
|
989 |
-
|
990 |
-
|
991 |
-
|
992 |
-
|
993 |
-
|
994 |
-
|
995 |
-
|
996 |
-
|
997 |
-
|
998 |
-
|
999 |
-
|
1000 |
-
|
1001 |
-
|
1002 |
-
|
1003 |
-
|
1004 |
-
|
1005 |
-
|
1006 |
-
|
1007 |
-
|
1008 |
-
|
1009 |
-
|
1010 |
-
|
1011 |
-
|
1012 |
-
|
1013 |
-
|
1014 |
-
}
|
1015 |
-
|
1016 |
-
|
1017 |
-
|
1018 |
-
|
1019 |
-
|
1020 |
-
|
1021 |
-
|
1022 |
-
|
1023 |
-
|
1024 |
-
|
1025 |
-
|
1026 |
-
|
1027 |
-
|
1028 |
-
|
1029 |
-
|
1030 |
-
|
1031 |
-
border-
|
1032 |
-
|
1033 |
-
|
1034 |
-
|
1035 |
-
|
1036 |
-
|
1037 |
-
|
1038 |
-
|
1039 |
-
|
1040 |
-
|
1041 |
-
|
1042 |
-
|
1043 |
-
|
1044 |
-
}
|
1045 |
-
|
1046 |
-
|
1047 |
-
|
1048 |
-
|
1049 |
-
|
1050 |
-
|
1051 |
-
|
1052 |
-
|
1053 |
-
|
1054 |
-
|
1055 |
-
}
|
1056 |
-
|
1057 |
-
|
1058 |
-
|
1059 |
-
|
1060 |
-
|
1061 |
-
|
1062 |
-
|
1063 |
-
|
1064 |
-
|
1065 |
-
|
1066 |
-
|
1067 |
-
|
1068 |
-
|
1069 |
-
|
1070 |
-
|
1071 |
-
|
1072 |
-
|
1073 |
-
|
1074 |
-
|
1075 |
-
|
1076 |
-
|
1077 |
-
|
1078 |
-
|
1079 |
-
|
1080 |
-
|
1081 |
-
|
1082 |
-
|
1083 |
-
|
1084 |
-
|
1085 |
-
|
1086 |
-
|
1087 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
/*
|
2 |
+
* This file belongs to the YIT Plugin Framework.
|
3 |
+
*
|
4 |
+
* This source file is subject to the GNU GENERAL PUBLIC LICENSE (GPL 3.0)
|
5 |
+
* that is bundled with this package in the file LICENSE.txt.
|
6 |
+
* It is also available through the world-wide-web at this URL:
|
7 |
+
* http://www.gnu.org/licenses/gpl-3.0.txt
|
8 |
+
*/
|
9 |
+
.plugin-option tr {
|
10 |
+
border-bottom : 1px solid #ebebeb;
|
11 |
+
}
|
12 |
+
|
13 |
+
.plugin-option .yit_options,
|
14 |
+
.plugin-option .yit-options {
|
15 |
+
border-bottom : 0px;
|
16 |
+
}
|
17 |
+
|
18 |
+
.plugin-option .yit-options .option,
|
19 |
+
.plugin-option .yit_options .option {
|
20 |
+
width : 600px;
|
21 |
+
}
|
22 |
+
|
23 |
+
.plugin-option .form-table > tbody > tr > td {
|
24 |
+
padding : 25px 15px;
|
25 |
+
}
|
26 |
+
|
27 |
+
.ie8 .yit_options select,
|
28 |
+
.ie8 .yit-options select {
|
29 |
+
height : 26px;
|
30 |
+
}
|
31 |
+
|
32 |
+
/* Style to woocommerce panel*/
|
33 |
+
|
34 |
+
#plugin-fw-wc, #yith-plugin-fw-panel {
|
35 |
+
padding-top : 20px;
|
36 |
+
}
|
37 |
+
|
38 |
+
#plugin-fw-wc table.form-table, #yith-plugin-fw-panel table.form-table, .yith-plugin-fw-panel-custom-tab-container {
|
39 |
+
background-color : #fff;
|
40 |
+
margin-bottom : 20px;
|
41 |
+
}
|
42 |
+
|
43 |
+
.yith-plugin-fw-panel-custom-tab-container {
|
44 |
+
padding : 20px;
|
45 |
+
box-sizing : border-box;
|
46 |
+
margin-right : 15px;
|
47 |
+
}
|
48 |
+
|
49 |
+
.yith-plugin-ui .yith-plugin-fw-panel-custom-tab-container {
|
50 |
+
border : 1px solid #ddd;
|
51 |
+
border-top : 0;
|
52 |
+
}
|
53 |
+
|
54 |
+
.yith-plugin-ui .yith-plugin-fw-panel-custom-sub-tab-container {
|
55 |
+
padding : 20px;
|
56 |
+
box-sizing : border-box;
|
57 |
+
border : 1px solid #ccc;
|
58 |
+
border-top : 0;
|
59 |
+
margin : -20px 0 0 0;
|
60 |
+
}
|
61 |
+
|
62 |
+
.yith-plugin-fw-panel-custom-tab-container > h2,
|
63 |
+
.yith-plugin-fw-panel-custom-tab-container h2,
|
64 |
+
.yith-plugin-ui .yith-plugin-fw-panel-custom-tab-container > h2,
|
65 |
+
.yith-plugin-ui .yith-plugin-fw-panel-custom-tab-container h2,
|
66 |
+
.yith-plugin-ui .yith-plugin-fw-panel-custom-sub-tab-container > h2,
|
67 |
+
.yith-plugin-ui .yith-plugin-fw-panel-custom-sub-tab-container h2 {
|
68 |
+
border : none;
|
69 |
+
padding : 15px 0;
|
70 |
+
}
|
71 |
+
|
72 |
+
#plugin-fw-wc table.form-table th, #yith-plugin-fw-panel table.form-table th {
|
73 |
+
padding : 20px;
|
74 |
+
}
|
75 |
+
|
76 |
+
#plugin-fw-wc h3, #yith-plugin-fw-panel h3 {
|
77 |
+
padding : 0 0 0 10px;
|
78 |
+
margin : 0;
|
79 |
+
}
|
80 |
+
|
81 |
+
/**
|
82 |
+
Help tab
|
83 |
+
*/
|
84 |
+
|
85 |
+
.yith-plugin-fw-panel-help-tab-container {
|
86 |
+
background-color : #fff;
|
87 |
+
padding : 60px 25px;
|
88 |
+
}
|
89 |
+
|
90 |
+
.yith-plugin-fw-panel-help-tab-content {
|
91 |
+
background-color : #f4f4f4;
|
92 |
+
border-radius : 15px;
|
93 |
+
max-width : 1100px;
|
94 |
+
margin : 0 auto;
|
95 |
+
padding : 40px 40px 60px;
|
96 |
+
}
|
97 |
+
|
98 |
+
.yith-plugin-fw-panel-help-tab-content p,
|
99 |
+
.yith-plugin-fw-panel-help-tab-content a {
|
100 |
+
font-size : 16px;
|
101 |
+
}
|
102 |
+
|
103 |
+
.yith-plugin-fw-panel-help-tab-content .row {
|
104 |
+
margin : 0 -15px 50px;
|
105 |
+
white-space : nowrap;
|
106 |
+
}
|
107 |
+
|
108 |
+
.yith-plugin-fw-panel-help-tab-content .row:last-child {
|
109 |
+
margin-bottom : 0;
|
110 |
+
}
|
111 |
+
|
112 |
+
.yith-plugin-fw-panel-help-tab-content .row .column-left,
|
113 |
+
.yith-plugin-fw-panel-help-tab-content .row .column-right {
|
114 |
+
display : inline-block;
|
115 |
+
padding : 0 15px;
|
116 |
+
vertical-align : top;
|
117 |
+
width : 66%;
|
118 |
+
}
|
119 |
+
|
120 |
+
.yith-plugin-fw-panel-help-tab-content .row .column-right {
|
121 |
+
width : 33%;
|
122 |
+
}
|
123 |
+
|
124 |
+
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-help-tab-video,
|
125 |
+
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-help-tab-actions,
|
126 |
+
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-hc-articles,
|
127 |
+
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-submit-ticket {
|
128 |
+
box-sizing : border-box;
|
129 |
+
white-space : normal;
|
130 |
+
}
|
131 |
+
|
132 |
+
.yith-plugin-fw-panel-help-tab-content h2.yith-plugin-fw-panel-help-tab-title {
|
133 |
+
background : none;
|
134 |
+
border : none;
|
135 |
+
font-size : 22px;
|
136 |
+
line-height : 1.5em;
|
137 |
+
padding : 0;
|
138 |
+
text-align : center;
|
139 |
+
}
|
140 |
+
|
141 |
+
.yith-plugin-fw-panel-help-tab-content h3 {
|
142 |
+
color : #03689f;
|
143 |
+
font-size : 15px;
|
144 |
+
}
|
145 |
+
|
146 |
+
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-panel-tab-description {
|
147 |
+
font-size : 18px;
|
148 |
+
text-align : center;
|
149 |
+
margin-bottom : 40px;
|
150 |
+
}
|
151 |
+
|
152 |
+
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-help-tab-video {
|
153 |
+
text-align : center;
|
154 |
+
}
|
155 |
+
|
156 |
+
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-help-tab-video p.video-description {
|
157 |
+
margin-bottom : 25px;
|
158 |
+
}
|
159 |
+
|
160 |
+
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-help-tab-video .video-caption p {
|
161 |
+
margin : 5px 0;
|
162 |
+
}
|
163 |
+
|
164 |
+
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-help-tab-video .video-container {
|
165 |
+
margin : 0 auto 50px;
|
166 |
+
overflow : hidden;
|
167 |
+
padding-top : 56.25%;
|
168 |
+
position : relative;
|
169 |
+
}
|
170 |
+
|
171 |
+
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-help-tab-video .video-container iframe {
|
172 |
+
border : 0;
|
173 |
+
height : 100%;
|
174 |
+
left : 0;
|
175 |
+
position : absolute;
|
176 |
+
top : 0;
|
177 |
+
width : 100%;
|
178 |
+
}
|
179 |
+
|
180 |
+
.yith-plugin-fw-panel-help-tab-content .box-with-shadow {
|
181 |
+
display : block;
|
182 |
+
background-color : #fff;
|
183 |
+
border-radius : 5px;
|
184 |
+
box-shadow : 0 0 15px 5px rgba(174, 201, 207, 0.3);
|
185 |
+
transition : all .2s ease;
|
186 |
+
}
|
187 |
+
|
188 |
+
.yith-plugin-fw-panel-help-tab-content ul.yith-plugin-fw-help-tab-actions,
|
189 |
+
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-submit-ticket {
|
190 |
+
margin : 0 auto;
|
191 |
+
max-width : 640px;
|
192 |
+
}
|
193 |
+
|
194 |
+
.yith-plugin-fw-panel-help-tab-content ul.yith-plugin-fw-help-tab-actions:not( .full-width ) {
|
195 |
+
padding-top : 65px !important;
|
196 |
+
}
|
197 |
+
|
198 |
+
.yith-plugin-fw-panel-help-tab-content ul.yith-plugin-fw-help-tab-actions li {
|
199 |
+
margin-bottom : 20px;
|
200 |
+
}
|
201 |
+
|
202 |
+
.yith-plugin-fw-panel-help-tab-content ul.yith-plugin-fw-help-tab-actions li > a {
|
203 |
+
display : block;
|
204 |
+
padding : 15px 20px 15px 75px !important;
|
205 |
+
text-decoration : none;
|
206 |
+
}
|
207 |
+
|
208 |
+
.yith-plugin-fw-panel-help-tab-content ul.yith-plugin-fw-help-tab-actions li:hover {
|
209 |
+
box-shadow : 0 0 15px 5px rgba(177, 220, 228, 0.6);
|
210 |
+
transform : scale(1.04);
|
211 |
+
}
|
212 |
+
|
213 |
+
.yith-plugin-fw-panel-help-tab-content ul.yith-plugin-fw-help-tab-actions li a:before {
|
214 |
+
color : #03689f;
|
215 |
+
float : left;
|
216 |
+
font-family : 'yith-icon';
|
217 |
+
font-size : 36px;
|
218 |
+
line-height : 1;
|
219 |
+
margin-left : -50px;
|
220 |
+
-webkit-font-smoothing : antialiased;
|
221 |
+
-moz-osx-font-smoothing : grayscale;
|
222 |
+
}
|
223 |
+
|
224 |
+
.yith-plugin-fw-panel-help-tab-content ul.yith-plugin-fw-help-tab-actions li.read-documentation a:before {
|
225 |
+
content : '\f10d';
|
226 |
+
}
|
227 |
+
|
228 |
+
.yith-plugin-fw-panel-help-tab-content ul.yith-plugin-fw-help-tab-actions li.watch-videotutorials a:before {
|
229 |
+
content : '\f10e';
|
230 |
+
}
|
231 |
+
|
232 |
+
.yith-plugin-fw-panel-help-tab-content ul.yith-plugin-fw-help-tab-actions li.check-faqs a:before {
|
233 |
+
content : '\f10c';
|
234 |
+
}
|
235 |
+
|
236 |
+
.yith-plugin-fw-panel-help-tab-content ul.yith-plugin-fw-help-tab-actions li h4 {
|
237 |
+
margin : 0 0 5px;
|
238 |
+
}
|
239 |
+
|
240 |
+
.yith-plugin-fw-panel-help-tab-content ul.yith-plugin-fw-help-tab-actions li h4 a {
|
241 |
+
color : #03689f;
|
242 |
+
text-decoration : none;
|
243 |
+
}
|
244 |
+
|
245 |
+
.yith-plugin-fw-panel-help-tab-content ul.yith-plugin-fw-help-tab-actions li .description {
|
246 |
+
margin : 0;
|
247 |
+
font-size : 14px;
|
248 |
+
}
|
249 |
+
|
250 |
+
.yith-plugin-fw-panel-help-tab-content ul.yith-plugin-fw-help-tab-actions li .separator {
|
251 |
+
display : inline-block;
|
252 |
+
margin : 0 5px;
|
253 |
+
}
|
254 |
+
|
255 |
+
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-hc-articles h3 {
|
256 |
+
font-size : 18px;
|
257 |
+
margin : 0;
|
258 |
+
padding : 10px 0;
|
259 |
+
position : relative;
|
260 |
+
|
261 |
+
}
|
262 |
+
|
263 |
+
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-hc-articles h3:before {
|
264 |
+
content : '';
|
265 |
+
background : #03689f;
|
266 |
+
display : block;
|
267 |
+
height : 100%;
|
268 |
+
left : -40px;
|
269 |
+
position : absolute;
|
270 |
+
top : 0;
|
271 |
+
width : 15px;
|
272 |
+
|
273 |
+
}
|
274 |
+
|
275 |
+
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-hc-articles a.button {
|
276 |
+
font-size : 16px;
|
277 |
+
}
|
278 |
+
|
279 |
+
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-hc-articles-list {
|
280 |
+
margin : 15px 0 30px;
|
281 |
+
}
|
282 |
+
|
283 |
+
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-hc-articles-list li {
|
284 |
+
display : block;
|
285 |
+
margin-bottom : 10px;
|
286 |
+
}
|
287 |
+
|
288 |
+
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-hc-articles-list li:before {
|
289 |
+
content : '-';
|
290 |
+
}
|
291 |
+
|
292 |
+
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-hc-articles-list a {
|
293 |
+
text-decoration : none;
|
294 |
+
}
|
295 |
+
|
296 |
+
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-submit-ticket > .box-with-shadow {
|
297 |
+
padding : 30px !important;
|
298 |
+
}
|
299 |
+
|
300 |
+
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-submit-ticket h3 {
|
301 |
+
color : #b90a0a;
|
302 |
+
font-size : 18px;
|
303 |
+
margin : 0 0 15px;
|
304 |
+
}
|
305 |
+
|
306 |
+
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-submit-ticket p {
|
307 |
+
margin-bottom : 35px;
|
308 |
+
}
|
309 |
+
|
310 |
+
.yith-plugin-fw-panel-help-tab-content .yith-plugin-fw-submit-ticket .button {
|
311 |
+
border-radius : 7px;
|
312 |
+
display : block;
|
313 |
+
font-size : 15px;
|
314 |
+
padding : 7px 15px;
|
315 |
+
text-align : center;
|
316 |
+
}
|
317 |
+
|
318 |
+
/**
|
319 |
+
Premium Tab
|
320 |
+
*/
|
321 |
+
|
322 |
+
#yith_plugin_fw_panel_premium_tab {
|
323 |
+
background-color : white;
|
324 |
+
padding : 40px;
|
325 |
+
margin-right : 15px;
|
326 |
+
border : 1px solid #d8d8d8;
|
327 |
+
border-top : none;
|
328 |
+
}
|
329 |
+
|
330 |
+
#yith_plugin_fw_panel_premium_tab .yith-plugin-fw-panel-premium-tab {
|
331 |
+
background-color : #f9f9f9;
|
332 |
+
padding : 40px;
|
333 |
+
border : 1px solid #dbdbdb;
|
334 |
+
border-radius : 5px;
|
335 |
+
max-width : 1400px;
|
336 |
+
margin : auto;
|
337 |
+
}
|
338 |
+
|
339 |
+
#yith_plugin_fw_panel_premium_tab .yith-plugin-fw-panel-premium-tab__header {
|
340 |
+
display : flex;
|
341 |
+
align-items : center;
|
342 |
+
gap : 35px 20px;
|
343 |
+
}
|
344 |
+
|
345 |
+
#yith_plugin_fw_panel_premium_tab .yith-plugin-fw-panel-premium-tab__header-title {
|
346 |
+
color : #C28D31;
|
347 |
+
text-transform : uppercase;
|
348 |
+
font-weight : 600;
|
349 |
+
font-size : 18px;
|
350 |
+
width : 100%;
|
351 |
+
}
|
352 |
+
|
353 |
+
#yith_plugin_fw_panel_premium_tab .yith-plugin-fw-panel-premium-tab__header-cta:before {
|
354 |
+
content : '\f11b';
|
355 |
+
font-family : 'yith-icon';
|
356 |
+
font-size : 18px;
|
357 |
+
line-height : 1em;
|
358 |
+
font-weight : 400;
|
359 |
+
}
|
360 |
+
|
361 |
+
#yith_plugin_fw_panel_premium_tab .yith-plugin-fw-panel-premium-tab__header-cta:hover:before {
|
362 |
+
transform-origin : center center;
|
363 |
+
animation : .3s yith-plugin-fw-jiggle linear;
|
364 |
+
animation-iteration-count : 3;
|
365 |
+
}
|
366 |
+
|
367 |
+
@keyframes yith-plugin-fw-jiggle {
|
368 |
+
25% {
|
369 |
+
transform : rotate(-20deg);
|
370 |
+
}
|
371 |
+
75% {
|
372 |
+
transform : rotate(20deg);
|
373 |
+
}
|
374 |
+
}
|
375 |
+
|
376 |
+
#yith_plugin_fw_panel_premium_tab .yith-plugin-fw-panel-premium-tab__header-cta {
|
377 |
+
color : white;
|
378 |
+
background-color : #e58f00;
|
379 |
+
display : flex;
|
380 |
+
align-items : center;
|
381 |
+
justify-content : space-between;
|
382 |
+
padding : 12px 24px;
|
383 |
+
column-gap : 12px;
|
384 |
+
font-size : 14px;
|
385 |
+
font-weight : 600;
|
386 |
+
}
|
387 |
+
|
388 |
+
#yith_plugin_fw_panel_premium_tab .yith-plugin-fw-panel-premium-tab__header-cta-arrow {
|
389 |
+
background : url("../images/arrow.svg") no-repeat center;
|
390 |
+
background-size : contain;
|
391 |
+
width : 100px;
|
392 |
+
height : 30px;
|
393 |
+
}
|
394 |
+
|
395 |
+
#yith_plugin_fw_panel_premium_tab .yith-plugin-fw-panel-premium-tab__content {
|
396 |
+
display : flex;
|
397 |
+
column-gap : 20px;
|
398 |
+
padding-top : 30px;
|
399 |
+
}
|
400 |
+
|
401 |
+
#yith_plugin_fw_panel_premium_tab .yith-plugin-fw-panel-premium-tab__main-image {
|
402 |
+
max-width : 50%;
|
403 |
+
object-fit : contain;
|
404 |
+
object-position : top;
|
405 |
+
flex : 1;
|
406 |
+
}
|
407 |
+
|
408 |
+
#yith_plugin_fw_panel_premium_tab .yith-plugin-fw-panel-premium-tab__features {
|
409 |
+
display : flex;
|
410 |
+
flex-direction : column;
|
411 |
+
row-gap : 45px;
|
412 |
+
font-size : 18px;
|
413 |
+
line-height : 24px;
|
414 |
+
padding-top : 30px;
|
415 |
+
flex : 1;
|
416 |
+
max-width : 100%;
|
417 |
+
}
|
418 |
+
|
419 |
+
#yith_plugin_fw_panel_premium_tab .yith-plugin-fw-panel-premium-tab__feature {
|
420 |
+
display : flex;
|
421 |
+
align-items : center;
|
422 |
+
column-gap : 25px;
|
423 |
+
}
|
424 |
+
|
425 |
+
#yith_plugin_fw_panel_premium_tab .yith-plugin-fw-panel-premium-tab__feature:before {
|
426 |
+
content : '';
|
427 |
+
display : block;
|
428 |
+
width : 12px;
|
429 |
+
height : 20px;
|
430 |
+
border : 8px solid #96ca20;
|
431 |
+
border-left : 0;
|
432 |
+
border-top : 0;
|
433 |
+
transform : rotate(45deg) translate(30%, -15%);
|
434 |
+
margin-right : 10px;
|
435 |
+
margin-bottom : 6px;
|
436 |
+
}
|
437 |
+
|
438 |
+
#yith_plugin_fw_panel_premium_tab .yith-plugin-fw-panel-premium-tab__feature-content {
|
439 |
+
width : calc(100% - 55px);
|
440 |
+
}
|
441 |
+
|
442 |
+
#yith_plugin_fw_panel_premium_tab .yith-plugin-fw-panel-premium-tab__cta-button {
|
443 |
+
background-color : #e58f00;
|
444 |
+
color : white;
|
445 |
+
text-transform : uppercase;
|
446 |
+
text-decoration : none;
|
447 |
+
border-radius : 5px;
|
448 |
+
white-space : nowrap;
|
449 |
+
transition : .3s;
|
450 |
+
}
|
451 |
+
|
452 |
+
#yith_plugin_fw_panel_premium_tab .yith-plugin-fw-panel-premium-tab__cta-button:hover {
|
453 |
+
background-color : #c67c00;
|
454 |
+
}
|
455 |
+
|
456 |
+
#yith_plugin_fw_panel_premium_tab .yith-plugin-fw-panel-premium-tab__content-cta {
|
457 |
+
padding : 20px;
|
458 |
+
font-size : 20px;
|
459 |
+
font-weight : 600;
|
460 |
+
text-align : center;
|
461 |
+
line-height : normal;
|
462 |
+
}
|
463 |
+
|
464 |
+
/**
|
465 |
+
Post type Edit
|
466 |
+
*/
|
467 |
+
|
468 |
+
.yith-plugin-fw-wp-page-wrapper {
|
469 |
+
margin : 23px 20px 0 2px;
|
470 |
+
}
|
471 |
+
|
472 |
+
.yith-plugin-fw-wp-page-wrapper .notice,
|
473 |
+
.yith-plugin-fw-wp-page-wrapper div.updated,
|
474 |
+
.yith-plugin-fw-wp-page-wrapper div.error {
|
475 |
+
margin : 5px 15px 15px 0;
|
476 |
+
}
|
477 |
+
|
478 |
+
.yith-plugin-fw-wp-page-wrapper .wrap, .yith-plugin-fw-wp-page__sub-tab-wrap {
|
479 |
+
border : 1px solid #d8d8d8;
|
480 |
+
border-top : 0;
|
481 |
+
margin : 0 15px 0 0;
|
482 |
+
background : #fff;
|
483 |
+
padding : 20px;
|
484 |
+
box-sizing : border-box;
|
485 |
+
}
|
486 |
+
|
487 |
+
.yith-plugin-fw-wp-page-wrapper .yith-plugin-fw-wp-page__sub-tab-wrap .wrap {
|
488 |
+
margin : -20px 0 0 0;
|
489 |
+
}
|
490 |
+
|
491 |
+
#wpwrap .yith-plugin-fw-wp-page-wrapper .yith-plugin-ui h2.nav-tab-wrapper, #wpbody-content .yith-plugin-fw-wp-page-wrapper .yith-plugin-ui h2.nav-tab-wrapper {
|
492 |
+
padding-bottom : 0;
|
493 |
+
}
|
494 |
+
|
495 |
+
.yith-plugin-fw-wp-page-wrapper .postbox {
|
496 |
+
box-shadow : none;
|
497 |
+
}
|
498 |
+
|
499 |
+
.yith-plugin-fw-wp-page-wrapper h1.nav-tab-wrapper, .yith-plugin-fw-wp-page-wrapper h2.nav-tab-wrapper, .yith-plugin-fw-wp-page-wrapper .nav-tab-wrapper {
|
500 |
+
padding-top : 9px;
|
501 |
+
padding-bottom : 0;
|
502 |
+
}
|
503 |
+
|
504 |
+
.yith-plugin-fw-wp-page-wrapper .wrap h1.wp-heading-inline {
|
505 |
+
color : #2a8db0;
|
506 |
+
font-size : 16px;
|
507 |
+
font-weight : 600;
|
508 |
+
}
|
509 |
+
|
510 |
+
.yith-plugin-fw-wp-page-wrapper .wrap a.page-title-action,
|
511 |
+
.yith-plugin-fw-wp-page-wrapper .wrap a.page-title-action:active {
|
512 |
+
border-radius : 3px;
|
513 |
+
text-transform : uppercase;
|
514 |
+
box-shadow : none;
|
515 |
+
border : 0;
|
516 |
+
font-weight : 700;
|
517 |
+
font-size : 11px;
|
518 |
+
padding : 0 14px;
|
519 |
+
outline : none;
|
520 |
+
height : auto;
|
521 |
+
transition : all ease 0.3s;
|
522 |
+
text-shadow : none;
|
523 |
+
vertical-align : middle;
|
524 |
+
line-height : 26px;
|
525 |
+
display : inline-block;
|
526 |
+
text-decoration : none;
|
527 |
+
cursor : pointer;
|
528 |
+
background-color : #375f6b;
|
529 |
+
color : #fff;
|
530 |
+
margin-left : 10px !important;
|
531 |
+
}
|
532 |
+
|
533 |
+
.yith-plugin-fw-wp-page-wrapper .wrap a.page-title-action:hover {
|
534 |
+
border-color : #007694;
|
535 |
+
background : #007694;
|
536 |
+
color : #fff;
|
537 |
+
}
|
538 |
+
|
539 |
+
.yith-plugin-fw-wp-page-wrapper #wp-content-editor-tools {
|
540 |
+
background : transparent;
|
541 |
+
}
|
542 |
+
|
543 |
+
/* === Plugins Upgrader === */
|
544 |
+
|
545 |
+
.yit-plugin-changelog-wrapper {
|
546 |
+
display : none;
|
547 |
+
}
|
548 |
+
|
549 |
+
.yit-plugin-changelog-title {
|
550 |
+
text-transform : uppercase;
|
551 |
+
}
|
552 |
+
|
553 |
+
.yit-plugin-changelog {
|
554 |
+
height : calc(100% - 15px);
|
555 |
+
width : calc(100% - 15px);
|
556 |
+
overflow-x : hidden;
|
557 |
+
overflow-y : auto;
|
558 |
+
z-index : 999;
|
559 |
+
background : #fcfcfc;
|
560 |
+
}
|
561 |
+
|
562 |
+
/* === Plugins Licence Activation === */
|
563 |
+
|
564 |
+
.yit-container.plugin-licence-activation {
|
565 |
+
font-family : 'Raleway', sans-serif;
|
566 |
+
}
|
567 |
+
|
568 |
+
.yit-container.plugin-licence-activation .to-active-wrapper {
|
569 |
+
margin-bottom : 60px;
|
570 |
+
}
|
571 |
+
|
572 |
+
.yit-container.plugin-licence-activation .to-active-wrapper form.to-active-form {
|
573 |
+
position : relative;
|
574 |
+
border-color : #e1e1e1;
|
575 |
+
border-style : solid;
|
576 |
+
border-width : 0;
|
577 |
+
}
|
578 |
+
|
579 |
+
.yit-container.plugin-licence-activation .to-active-wrapper form.to-active-form:first-child {
|
580 |
+
border-top-width : 1px;
|
581 |
+
}
|
582 |
+
|
583 |
+
.yit-container.plugin-licence-activation .to-active-wrapper form.to-active-form:last-child {
|
584 |
+
border-bottom-width : 1px;
|
585 |
+
}
|
586 |
+
|
587 |
+
.yit-container.plugin-licence-activation .to-active-wrapper table.to-active-table {
|
588 |
+
border-width : 0;
|
589 |
+
border-spacing : 0;
|
590 |
+
width : 100%;
|
591 |
+
}
|
592 |
+
|
593 |
+
.yit-container.plugin-licence-activation .message {
|
594 |
+
display : none;
|
595 |
+
line-height : normal;
|
596 |
+
background : #fff url(../images/licence-error.png) 15px center no-repeat;
|
597 |
+
padding-left : 65px;
|
598 |
+
padding-right : 15px;
|
599 |
+
width : 150px;
|
600 |
+
}
|
601 |
+
|
602 |
+
.yit-container.plugin-licence-activation .message-wrapper {
|
603 |
+
height : 75px;
|
604 |
+
display : none;
|
605 |
+
position : absolute;
|
606 |
+
top : 0;
|
607 |
+
right : -250px;
|
608 |
+
border : 1px solid #ff3838;
|
609 |
+
}
|
610 |
+
|
611 |
+
.yit-container.plugin-licence-activation .message-wrapper.visible {
|
612 |
+
display : table;
|
613 |
+
}
|
614 |
+
|
615 |
+
.yit-container.plugin-licence-activation .message {
|
616 |
+
display : table-cell;
|
617 |
+
vertical-align : middle;
|
618 |
+
}
|
619 |
+
|
620 |
+
.yit-container.plugin-licence-activation .arrow-left:after,
|
621 |
+
.yit-container.plugin-licence-activation .arrow-left:before {
|
622 |
+
content : "";
|
623 |
+
display : block;
|
624 |
+
width : 0;
|
625 |
+
height : 0;
|
626 |
+
position : absolute;
|
627 |
+
}
|
628 |
+
|
629 |
+
.yit-container.plugin-licence-activation .arrow-left:before {
|
630 |
+
border-top : 9px solid transparent;
|
631 |
+
border-bottom : 9px solid transparent;
|
632 |
+
border-right : 9px solid #ff3838;
|
633 |
+
top : 26px;
|
634 |
+
left : -9px;
|
635 |
+
}
|
636 |
+
|
637 |
+
.yit-container.plugin-licence-activation .arrow-left:after {
|
638 |
+
border-top : 8px solid transparent;
|
639 |
+
border-bottom : 8px solid transparent;
|
640 |
+
border-right : 8px solid #fff;
|
641 |
+
left : -8px;
|
642 |
+
top : 27px;
|
643 |
+
}
|
644 |
+
|
645 |
+
.yit-container.plugin-licence-activation h2,
|
646 |
+
.yit-container.plugin-licence-activation h3 {
|
647 |
+
text-transform : uppercase;
|
648 |
+
font-weight : 800;
|
649 |
+
margin-bottom : 30px;
|
650 |
+
}
|
651 |
+
|
652 |
+
.yit-container.plugin-licence-activation h2 {
|
653 |
+
color : #808a97;
|
654 |
+
font-size : 25px;
|
655 |
+
}
|
656 |
+
|
657 |
+
.yit-container.plugin-licence-activation h3 {
|
658 |
+
color : #313131;
|
659 |
+
font-size : 15px;
|
660 |
+
height : 20px;
|
661 |
+
}
|
662 |
+
|
663 |
+
.yit-container.plugin-licence-activation h3.to-active {
|
664 |
+
height : 20px;
|
665 |
+
position : relative;
|
666 |
+
vertical-align : top;
|
667 |
+
}
|
668 |
+
|
669 |
+
.yit-container.plugin-licence-activation .spinner.show {
|
670 |
+
display : inline-block;
|
671 |
+
vertical-align : middle;
|
672 |
+
float : none;
|
673 |
+
}
|
674 |
+
|
675 |
+
.yit-container.plugin-licence-activation h3.to-active > .spinner.show {
|
676 |
+
display : inline-block;
|
677 |
+
float : none;
|
678 |
+
top : -3px;
|
679 |
+
position : relative;
|
680 |
+
}
|
681 |
+
|
682 |
+
.yit-container.plugin-licence-activation .licence-check-section {
|
683 |
+
margin-bottom : 60px;
|
684 |
+
}
|
685 |
+
|
686 |
+
.yit-container.plugin-licence-activation span.licence-label {
|
687 |
+
font-weight : 500;
|
688 |
+
color : #606060;
|
689 |
+
margin-bottom : 30px;
|
690 |
+
}
|
691 |
+
|
692 |
+
.yit-container.plugin-licence-activation .button-licence {
|
693 |
+
border : 0;
|
694 |
+
font-size : 13px;
|
695 |
+
text-transform : uppercase;
|
696 |
+
background-color : #808a97;
|
697 |
+
color : #fff;
|
698 |
+
font-weight : 700;
|
699 |
+
border-radius : 3px;
|
700 |
+
cursor : pointer;
|
701 |
+
text-decoration : none;
|
702 |
+
padding : 5px 7px;
|
703 |
+
-webkit-transition : background-color 0.3s ease;
|
704 |
+
-moz-transition : background-color 0.3s ease;
|
705 |
+
-ms-transition : background-color 0.3s ease;
|
706 |
+
-o-transition : background-color 0.3s ease;
|
707 |
+
transition : background-color 0.3s ease;
|
708 |
+
}
|
709 |
+
|
710 |
+
.yit-container.plugin-licence-activation .button-licence:hover {
|
711 |
+
background-color : #4d5c6f;
|
712 |
+
}
|
713 |
+
|
714 |
+
.yit-container.plugin-licence-activation .button-licence.clicked {
|
715 |
+
cursor : not-allowed;
|
716 |
+
background-color : #e2e2e2 !important;
|
717 |
+
}
|
718 |
+
|
719 |
+
.yit-container.plugin-licence-activation .button-licence.licence-check {
|
720 |
+
font-weight : 400;
|
721 |
+
padding : 12px 19px;
|
722 |
+
}
|
723 |
+
|
724 |
+
.yit-container.plugin-licence-activation .button-licence.licence-renew {
|
725 |
+
text-decoration : none;
|
726 |
+
padding : 7px 12px;
|
727 |
+
font-size : 9px;
|
728 |
+
}
|
729 |
+
|
730 |
+
.yit-container.plugin-licence-activation .button-licence.licence-renew:focus {
|
731 |
+
box-shadow : none;
|
732 |
+
}
|
733 |
+
|
734 |
+
.yit-container.plugin-licence-activation table:not(.to-active-table) {
|
735 |
+
width : 100%;
|
736 |
+
border : 1px solid #dcdcdc;
|
737 |
+
border-spacing : 0;
|
738 |
+
border-radius : 5px;
|
739 |
+
border-collapse : separate;
|
740 |
+
overflow : hidden;
|
741 |
+
}
|
742 |
+
|
743 |
+
.yit-container.plugin-licence-activation table:not(.to-active-table) th {
|
744 |
+
border-bottom : 1px solid #dcdcdc;
|
745 |
+
}
|
746 |
+
|
747 |
+
.yit-container.plugin-licence-activation table:not(.to-active-table) td,
|
748 |
+
.yit-container.plugin-licence-activation table:not(.to-active-table) th {
|
749 |
+
border-right : 1px solid #dcdcdc;
|
750 |
+
}
|
751 |
+
|
752 |
+
.yit-container.plugin-licence-activation table td:last-child,
|
753 |
+
.yit-container.plugin-licence-activation table th:last-child {
|
754 |
+
border-right : 0;
|
755 |
+
}
|
756 |
+
|
757 |
+
.yit-container.plugin-licence-activation table thead tr {
|
758 |
+
background-color : #f6f4f4;
|
759 |
+
}
|
760 |
+
|
761 |
+
.yit-container.plugin-licence-activation table tbody tr {
|
762 |
+
background-color : #fff;
|
763 |
+
}
|
764 |
+
|
765 |
+
.yit-container.plugin-licence-activation table thead tr th {
|
766 |
+
font-size : 13px;
|
767 |
+
color : #313131;
|
768 |
+
text-transform : uppercase;
|
769 |
+
font-weight : bold;
|
770 |
+
}
|
771 |
+
|
772 |
+
.yit-container.plugin-licence-activation table thead tr,
|
773 |
+
.yit-container.plugin-licence-activation table tbody tr {
|
774 |
+
line-height : 60px;
|
775 |
+
}
|
776 |
+
|
777 |
+
.yit-container.plugin-licence-activation table tbody tr td {
|
778 |
+
text-align : center;
|
779 |
+
line-height : 20px;
|
780 |
+
padding : 10px 5px;
|
781 |
+
}
|
782 |
+
|
783 |
+
.yit-container.plugin-licence-activation .button-licence.licence-activation {
|
784 |
+
padding : 12px 18px;
|
785 |
+
}
|
786 |
+
|
787 |
+
.yit-container.plugin-licence-activation .to-active-table tr {
|
788 |
+
line-height : 75px;
|
789 |
+
}
|
790 |
+
|
791 |
+
.yit-container.plugin-licence-activation .to-active-table tr.plugin-row {
|
792 |
+
background-color : transparent;
|
793 |
+
-webkit-transition : all 0.3s ease;
|
794 |
+
-moz-transition : all 0.3s ease;
|
795 |
+
-ms-transition : all 0.3s ease;
|
796 |
+
-o-transition : all 0.3s ease;
|
797 |
+
transition : all 0.3s ease;
|
798 |
+
}
|
799 |
+
|
800 |
+
.yit-container.plugin-licence-activation .to-active-table tr.plugin-row.error {
|
801 |
+
background-color : #ffdcdc;
|
802 |
+
}
|
803 |
+
|
804 |
+
.yit-container.plugin-licence-activation .to-active-table td {
|
805 |
+
padding-right : 12px;
|
806 |
+
width : 33%;
|
807 |
+
}
|
808 |
+
|
809 |
+
.yit-container.plugin-licence-activation .to-active-table td.plugin-name {
|
810 |
+
color : #808a97;
|
811 |
+
font-size : 12px;
|
812 |
+
text-transform : uppercase;
|
813 |
+
font-weight : bold;
|
814 |
+
line-height : 20px;
|
815 |
+
width : 20%;
|
816 |
+
padding-left : 20px;
|
817 |
+
}
|
818 |
+
|
819 |
+
.yit-container.plugin-licence-activation .to-active-table td.activate-button {
|
820 |
+
width : 15%;
|
821 |
+
position : relative;
|
822 |
+
}
|
823 |
+
|
824 |
+
.yit-container.plugin-licence-activation input[type=text],
|
825 |
+
.yit-container.plugin-licence-activation input[type=email] {
|
826 |
+
-webkit-transition : all 0.3s ease;
|
827 |
+
-moz-transition : all 0.3s ease;
|
828 |
+
-ms-transition : all 0.3s ease;
|
829 |
+
-o-transition : all 0.3s ease;
|
830 |
+
transition : all 0.3s ease;
|
831 |
+
|
832 |
+
border : 1px solid #dcdcdc;
|
833 |
+
padding : 0 15px;
|
834 |
+
border-radius : 3px;
|
835 |
+
height : 41px;
|
836 |
+
width : 100%;
|
837 |
+
}
|
838 |
+
|
839 |
+
.yit-container.plugin-licence-activation input[type=text].require,
|
840 |
+
.yit-container.plugin-licence-activation input[type=email].require {
|
841 |
+
border : 1px solid #ff3838;
|
842 |
+
}
|
843 |
+
|
844 |
+
.yit-container.plugin-licence-activation input[type=text]:focus,
|
845 |
+
.yit-container.plugin-licence-activation input[type=email]:focus {
|
846 |
+
webkit-box-shadow : 0 0 1px rgba(30, 140, 190, .8);
|
847 |
+
box-shadow : 0 0 1px rgba(30, 140, 190, .8);
|
848 |
+
}
|
849 |
+
|
850 |
+
.yit-container.plugin-licence-activation input[type=text] {
|
851 |
+
text-transform : uppercase;
|
852 |
+
text-align : center;
|
853 |
+
}
|
854 |
+
|
855 |
+
.yit-container.plugin-licence-activation input[type=email] {
|
856 |
+
text-align : left;
|
857 |
+
}
|
858 |
+
|
859 |
+
.yit-container.plugin-licence-activation input[type=submit]:focus {
|
860 |
+
outline : 0;
|
861 |
+
}
|
862 |
+
|
863 |
+
/* === Woocommerce panel === */
|
864 |
+
#plugin-fw-wc .yit_options {
|
865 |
+
padding : 0;
|
866 |
+
border : 0;
|
867 |
+
}
|
868 |
+
|
869 |
+
#plugin-fw-wc .yit_options input.upload_button, .yit_options input.button {
|
870 |
+
background : none;
|
871 |
+
border : 1px solid #ccc;
|
872 |
+
}
|
873 |
+
|
874 |
+
/* === WP Pointers === */
|
875 |
+
|
876 |
+
#adminmenu li.menu-top.yit-pointer-selected-row,
|
877 |
+
#adminmenu li.menu-top.yit-pointer-selected-row:hover,
|
878 |
+
#adminmenu li.yit-pointer-selected-row a.menu-top {
|
879 |
+
background-color : #acc327;
|
880 |
+
color : #000;
|
881 |
+
}
|
882 |
+
|
883 |
+
#adminmenu a.menu-top.toplevel_page_yit_plugin_panel.yit-pointer {
|
884 |
+
color : #000;
|
885 |
+
}
|
886 |
+
|
887 |
+
#adminmenu a.menu-top.toplevel_page_yit_plugin_panel.yit-pointer:hover,
|
888 |
+
#adminmenu .wp-submenu a.yit-pointer-selected-row {
|
889 |
+
color : #fff;
|
890 |
+
}
|
891 |
+
|
892 |
+
#adminmenu .wp-submenu a.yit-pointer-selected-row:hover {
|
893 |
+
color : #45bbe6;
|
894 |
+
}
|
895 |
+
|
896 |
+
/* WooCommerce 2.4 Support */
|
897 |
+
.woocommerce table.form-table .colorpick {
|
898 |
+
width : 6em;
|
899 |
+
}
|
900 |
+
|
901 |
+
#wpwrap h2.nav-tab-wrapper, #wpbody-content h2.nav-tab-wrapper {
|
902 |
+
border-bottom : 1px solid #ccc;
|
903 |
+
margin-right : 15px;
|
904 |
+
text-transform : uppercase;
|
905 |
+
}
|
906 |
+
|
907 |
+
/* === YIT FRAMEWORK === */
|
908 |
+
.plugin-card .plugin-icon img {
|
909 |
+
max-width : 100%;
|
910 |
+
width : auto;
|
911 |
+
height : auto;
|
912 |
+
}
|
913 |
+
|
914 |
+
/* === Panel Content and Container === */
|
915 |
+
.yit-admin-panel-container {
|
916 |
+
position : relative;
|
917 |
+
margin-right : 15px;
|
918 |
+
}
|
919 |
+
|
920 |
+
.yith-plugin-ui .yit-admin-panel-container {
|
921 |
+
position : relative;
|
922 |
+
margin-right : 15px;
|
923 |
+
z-index : 0;
|
924 |
+
}
|
925 |
+
|
926 |
+
.yit-admin-panel-content-wrap {
|
927 |
+
width : auto;
|
928 |
+
display : block;
|
929 |
+
}
|
930 |
+
|
931 |
+
.yith-disabled {
|
932 |
+
opacity : 0.3;
|
933 |
+
pointer-events : none;
|
934 |
+
}
|
935 |
+
|
936 |
+
.yith-plugin-fw-select,
|
937 |
+
.yith-plugin-fw-slider-container,
|
938 |
+
.yith-plugin-fw-text-input,
|
939 |
+
.yith-plugin-fw-text-array-table,
|
940 |
+
.yith-plugin-fw-textarea {
|
941 |
+
width : 400px;
|
942 |
+
max-width : 100%;
|
943 |
+
}
|
944 |
+
|
945 |
+
.yith-plugin-fw-text-array-table input {
|
946 |
+
width : 100%;
|
947 |
+
}
|
948 |
+
|
949 |
+
.yith-plugin-fw-panel-wc-row.preview {
|
950 |
+
float : none;
|
951 |
+
}
|
952 |
+
|
953 |
+
.yith-plugin-fw-panel .subsubsub {
|
954 |
+
margin : 0;
|
955 |
+
}
|
956 |
+
|
957 |
+
/**
|
958 |
+
* Sub Tabs
|
959 |
+
*/
|
960 |
+
.yith-plugin-ui .yith-plugin-fw-sub-tabs-nav {
|
961 |
+
background : #fff;
|
962 |
+
padding : 10px 20px 0;
|
963 |
+
box-sizing : border-box;
|
964 |
+
margin-right : 15px;
|
965 |
+
border-left : 1px solid #d8d8d8;
|
966 |
+
border-right : 1px solid #d8d8d8;
|
967 |
+
}
|
968 |
+
|
969 |
+
.yith-plugin-ui .yith-plugin-fw-wp-page-wrapper .wrap {
|
970 |
+
margin-top : -29px;
|
971 |
+
}
|
972 |
+
|
973 |
+
.yith-plugin-ui .yith-plugin-fw-sub-tabs-nav h3.nav-tab-wrapper {
|
974 |
+
text-transform : uppercase;
|
975 |
+
line-height : inherit;
|
976 |
+
font-weight : 600;
|
977 |
+
margin : 20px 0 0 0;
|
978 |
+
box-sizing : border-box;
|
979 |
+
background-color : #f1f1f1;
|
980 |
+
padding-top : 0;
|
981 |
+
border : 1px solid #ccc;
|
982 |
+
border-bottom : 0;
|
983 |
+
}
|
984 |
+
|
985 |
+
.yith-plugin-ui .yith-plugin-fw-sub-tabs-nav .nav-tab {
|
986 |
+
line-height : 1.71428571;
|
987 |
+
margin-left : 0;
|
988 |
+
margin-right : 0;
|
989 |
+
background-color : #f1f1f1;
|
990 |
+
color : #336374;
|
991 |
+
font-size : 12px;
|
992 |
+
padding : 8px 20px 9px;
|
993 |
+
border : 0;
|
994 |
+
}
|
995 |
+
|
996 |
+
.yith-plugin-ui .yith-plugin-fw-sub-tabs-nav .nav-tab .yith-nav-sub-tab__title,
|
997 |
+
.yith-plugin-ui .yith-plugin-fw-sub-tabs-nav .nav-tab .yith-nav-sub-tab__icon {
|
998 |
+
vertical-align : middle;
|
999 |
+
}
|
1000 |
+
|
1001 |
+
.yith-plugin-ui .yith-plugin-fw-sub-tabs-nav .nav-tab .yith-nav-sub-tab__icon {
|
1002 |
+
margin-left : 8px;
|
1003 |
+
font-size : 22px;
|
1004 |
+
margin-right : -3px;
|
1005 |
+
}
|
1006 |
+
|
1007 |
+
.yith-plugin-ui .yith-plugin-fw-sub-tabs-nav .nav-tab .yith-nav-sub-tab__icon:before {
|
1008 |
+
color : inherit;
|
1009 |
+
}
|
1010 |
+
|
1011 |
+
.yith-plugin-ui .yith-plugin-fw-sub-tabs-nav .yith-nav-sub-tab--highlight {
|
1012 |
+
color : #fff;
|
1013 |
+
background : #2a8db0;
|
1014 |
+
}
|
1015 |
+
|
1016 |
+
.yith-plugin-ui .yith-plugin-fw-sub-tabs-nav .nav-tab-active {
|
1017 |
+
color : #2a8db0;
|
1018 |
+
background : #fff;
|
1019 |
+
border-bottom : 0;
|
1020 |
+
}
|
1021 |
+
|
1022 |
+
.yith-plugin-ui .yith-plugin-fw-sub-tabs-nav .nav-tab:first-child {
|
1023 |
+
border : 0;
|
1024 |
+
}
|
1025 |
+
|
1026 |
+
.yith-plugin-fw-wp-page-wrapper.yith-current-subtab-opened > .wrap {
|
1027 |
+
/* padding-top: 0; */
|
1028 |
+
}
|
1029 |
+
|
1030 |
+
.yith-plugin-fw-wp-page-wrapper .nav-tab-wrapper {
|
1031 |
+
border-bottom : 2px solid #e9e9e9;
|
1032 |
+
margin : 0;
|
1033 |
+
padding-top : 9px;
|
1034 |
+
padding-bottom : 0;
|
1035 |
+
line-height : inherit;
|
1036 |
+
}
|
1037 |
+
|
1038 |
+
div.nav-subtab-wrap {
|
1039 |
+
position : absolute;
|
1040 |
+
top : 100%;
|
1041 |
+
left : 1px;
|
1042 |
+
padding-top : 10px;
|
1043 |
+
visibility : hidden; /* hides sub-menu */
|
1044 |
+
}
|
1045 |
+
|
1046 |
+
ul.nav-subtab {
|
1047 |
+
opacity : 0;
|
1048 |
+
background-color : #fff;
|
1049 |
+
transition : max-height 0.5s ease-in;
|
1050 |
+
max-height : 0;
|
1051 |
+
z-index : 100;
|
1052 |
+
overflow : hidden;
|
1053 |
+
border : 1px solid #f2f2f2;
|
1054 |
+
padding : 14px 15px;
|
1055 |
+
}
|
1056 |
+
|
1057 |
+
ul.yith-plugin-fw-tabs {
|
1058 |
+
display : block;
|
1059 |
+
margin : 0;
|
1060 |
+
}
|
1061 |
+
|
1062 |
+
li.yith-plugin-fw-tab-element {
|
1063 |
+
position : relative;
|
1064 |
+
margin : 0;
|
1065 |
+
padding : 0;
|
1066 |
+
display : inline-block;
|
1067 |
+
overflow : visible;
|
1068 |
+
z-index : 10;
|
1069 |
+
}
|
1070 |
+
|
1071 |
+
.yith-plugin-ui li.yith-plugin-fw-tab-element {
|
1072 |
+
margin-bottom : -1px;
|
1073 |
+
}
|
1074 |
+
|
1075 |
+
li.yith-plugin-fw-tab-element:hover {
|
1076 |
+
cursor : pointer;
|
1077 |
+
}
|
1078 |
+
|
1079 |
+
li.nav-subtab-item {
|
1080 |
+
padding : 3px 0 0;
|
1081 |
+
}
|
1082 |
+
|
1083 |
+
li.nav-subtab-item a {
|
1084 |
+
font-size : 12px;
|
1085 |
+
text-decoration : none;
|
1086 |
+
letter-spacing : 0.05em;
|
1087 |
+
color : #336374;
|
1088 |
+
}
|
1089 |
+
|
1090 |
+
li.nav-subtab-item a:hover {
|
1091 |
+
color : #228fb6;
|
1092 |
+
}
|
1093 |
+
|
1094 |
+
li.yith-plugin-fw-tab-element a:hover .nav-subtab-wrap,
|
1095 |
+
li.yith-plugin-fw-tab-element:hover .nav-subtab-wrap {
|
1096 |
+
visibility : visible; /* shows sub-menu */
|
1097 |
+
}
|
1098 |
+
|
1099 |
+
li.yith-plugin-fw-tab-element a:hover ul.nav-subtab,
|
1100 |
+
li.yith-plugin-fw-tab-element:hover ul.nav-subtab {
|
1101 |
+
max-height : 200px;
|
1102 |
+
-webkit-box-shadow : -2px 2px 10px rgba(0, 111, 101, 0.27);
|
1103 |
+
-moz-box-shadow : -2px 2px 10px rgba(0, 111, 101, 0.27);
|
1104 |
+
box-shadow : -2px 2px 10px rgba(0, 111, 101, 0.27);
|
1105 |
+
opacity : 1;
|
1106 |
+
transition-delay : 0s, 0s, 0.3s;
|
1107 |
+
min-width : 180px;
|
1108 |
+
}
|
1109 |
+
|
1110 |
+
li.yith-plugin-fw-tab-element a.nav-tab i {
|
1111 |
+
margin-left : 10px;
|
1112 |
+
font-size : 12px;
|
1113 |
+
font-weight : 600;
|
1114 |
+
}
|
1115 |
+
|
1116 |
+
li.yith-plugin-fw-tab-element a.nav-tab i:before {
|
1117 |
+
color : #fff;
|
1118 |
+
}
|
1119 |
+
|
1120 |
+
.yith-plugin-ui .yith-plugin-fw-sub-tabs-nav ~ .yit-admin-panel-container {
|
1121 |
+
margin-top : 0;
|
1122 |
+
padding-top : 0;
|
1123 |
+
}
|
1124 |
+
|
1125 |
+
.yith-plugin-ui .yith-plugin-fw-sub-tabs-nav ~ .yit-admin-panel-container,
|
1126 |
+
.yith-plugin-ui .yith-plugin-fw-sub-tabs-nav ~ .yith-plugin-fw-wp-page__sub-tab-wrap {
|
1127 |
+
border : 1px solid #d8d8d8;
|
1128 |
+
border-top : 0;
|
1129 |
+
margin : 0 15px 0 0;
|
1130 |
+
background : #fff;
|
1131 |
+
padding : 0 20px 20px 20px;
|
1132 |
+
box-sizing : border-box;
|
1133 |
+
}
|
1134 |
+
|
1135 |
+
|
1136 |
+
.yith-plugin-ui .yith-plugin-fw-sub-tabs-nav ~ .yith-plugin-fw-wp-page__sub-tab-wrap .wrap {
|
1137 |
+
margin : 0;
|
1138 |
+
}
|
1139 |
+
|
1140 |
+
/**
|
1141 |
+
* Float Save Button
|
1142 |
+
*/
|
1143 |
+
|
1144 |
+
button#yith-plugin-fw-float-save-button {
|
1145 |
+
display : none;
|
1146 |
+
align-items : center;
|
1147 |
+
border-radius : 60px;
|
1148 |
+
bottom : 50px;
|
1149 |
+
box-shadow : 0 0 6px 3px rgba(0, 121, 159, .2);
|
1150 |
+
padding : 6px 20px;
|
1151 |
+
position : fixed;
|
1152 |
+
right : 70px;
|
1153 |
+
text-transform : uppercase;
|
1154 |
+
z-index : 2;
|
1155 |
+
transition : 0.3s ease-in-out;
|
1156 |
+
}
|
1157 |
+
|
1158 |
+
.ywtenv-is-sandbox button#yith-plugin-fw-float-save-button {
|
1159 |
+
bottom : 100px;
|
1160 |
+
}
|
1161 |
+
|
1162 |
+
button#yith-plugin-fw-float-save-button.visible {
|
1163 |
+
display : flex;
|
1164 |
+
}
|
1165 |
+
|
1166 |
+
button#yith-plugin-fw-float-save-button i {
|
1167 |
+
font-size : 15px;
|
1168 |
+
margin-right : 8px;
|
1169 |
+
}
|
1170 |
+
|
1171 |
+
button#yith-plugin-fw-float-save-button:hover {
|
1172 |
+
box-shadow : 0px 1px 6px 3px rgba(0, 121, 159, .3);
|
1173 |
+
}
|
1174 |
+
|
1175 |
+
button#yith-plugin-fw-float-save-button.green {
|
1176 |
+
background-color : #98aa36;
|
1177 |
+
border-color : #98aa36;
|
1178 |
+
box-shadow : 0 0 6px 3px rgba(152, 170, 54, .2);
|
1179 |
+
transition : all 0.8s linear;
|
1180 |
+
}
|
1181 |
+
|
1182 |
+
.rtl button#yith-plugin-fw-float-save-button {
|
1183 |
+
right : auto;
|
1184 |
+
left : 70px;
|
1185 |
+
}
|
1186 |
+
|
1187 |
+
.rtl button#yith-plugin-fw-float-save-button i {
|
1188 |
+
margin-left : 8px;
|
1189 |
+
margin-right : 0;
|
1190 |
+
}
|
1191 |
+
|
1192 |
+
|
1193 |
+
/* === Responsive === */
|
1194 |
+
|
1195 |
+
@media (max-width : 1210px) {
|
1196 |
+
#yith_plugin_fw_panel_premium_tab .yith-plugin-fw-panel-premium-tab__main-image,
|
1197 |
+
#yith_plugin_fw_panel_premium_tab .yith-plugin-fw-panel-premium-tab__header-cta-arrow {
|
1198 |
+
display : none;
|
1199 |
+
}
|
1200 |
+
|
1201 |
+
#yith_plugin_fw_panel_premium_tab .yith-plugin-fw-panel-premium-tab__header {
|
1202 |
+
flex-wrap : wrap;
|
1203 |
+
}
|
1204 |
+
|
1205 |
+
#yith_plugin_fw_panel_premium_tab .yith-plugin-fw-panel-premium-tab__features {
|
1206 |
+
padding-top : 15px;
|
1207 |
+
}
|
1208 |
+
}
|
1209 |
+
|
1210 |
+
@media (max-width : 600px) {
|
1211 |
+
#yith_plugin_fw_panel_premium_tab {
|
1212 |
+
padding : 20px;
|
1213 |
+
}
|
1214 |
+
|
1215 |
+
#yith_plugin_fw_panel_premium_tab .yith-plugin-fw-panel-premium-tab {
|
1216 |
+
padding : 30px;
|
1217 |
+
}
|
1218 |
+
}
|
1219 |
+
|
1220 |
+
@media (max-width : 767px) {
|
1221 |
+
|
1222 |
+
}
|
1223 |
+
|
1224 |
+
@media (max-width : 480px) {
|
1225 |
+
#yith_plugin_fw_panel_premium_tab .yith-plugin-fw-panel-premium-tab__feature:before {
|
1226 |
+
width : 8px;
|
1227 |
+
height : 15px;
|
1228 |
+
border-width : 5px;
|
1229 |
+
}
|
1230 |
+
|
1231 |
+
#yith_plugin_fw_panel_premium_tab .yith-plugin-fw-panel-premium-tab__feature {
|
1232 |
+
flex-direction : column;
|
1233 |
+
align-items : flex-start;
|
1234 |
+
row-gap : 13px;
|
1235 |
+
}
|
1236 |
+
|
1237 |
+
#yith_plugin_fw_panel_premium_tab .yith-plugin-fw-panel-premium-tab__feature-content {
|
1238 |
+
width : 100%;
|
1239 |
+
}
|
1240 |
+
|
1241 |
+
#yith_plugin_fw_panel_premium_tab .yith-plugin-fw-panel-premium-tab__cta-button {
|
1242 |
+
white-space : unset;
|
1243 |
+
}
|
1244 |
+
}
|
1245 |
+
|
1246 |
+
@media (max-width : 992px) {
|
1247 |
+
.yith-plugin-fw-panel-help-tab-content .row {
|
1248 |
+
white-space : normal;
|
1249 |
+
margin-bottom : 0;
|
1250 |
+
}
|
1251 |
+
|
1252 |
+
.yith-plugin-fw-panel-help-tab-content .row .column-left,
|
1253 |
+
.yith-plugin-fw-panel-help-tab-content .row .column-right {
|
1254 |
+
width : 100%;
|
1255 |
+
margin-bottom : 50px;
|
1256 |
+
}
|
1257 |
+
|
1258 |
+
.yith-plugin-fw-panel-help-tab-content ul.yith-plugin-fw-help-tab-actions {
|
1259 |
+
padding-top : 0 !important;
|
1260 |
+
}
|
1261 |
+
}
|
1262 |
+
|
1263 |
+
@media (min-width : 768px) and (max-width : 992px) {
|
1264 |
+
}
|
1265 |
+
|
1266 |
+
@media (min-width : 980px) and (max-width : 1199px) {
|
1267 |
+
}
|
1268 |
+
|
1269 |
+
@media (min-width : 1200px) {
|
1270 |
+
.yit-container.plugin-licence-activation {
|
1271 |
+
width : 900px;
|
1272 |
+
}
|
1273 |
+
}
|
1274 |
+
|
1275 |
+
@media only screen and (-webkit-min-device-pixel-ratio : 1.5), only screen and (-o-min-device-pixel-ratio : 3/2), only screen and (min--moz-device-pixel-ratio : 1.5), only screen and (min-device-pixel-ratio : 1.5) {
|
1276 |
+
}
|
plugin-fw/assets/css/yit-upgrade-to-pro.css
CHANGED
@@ -1,83 +1,83 @@
|
|
1 |
-
/* === Upgrade to Premium Landing page === */
|
2 |
-
|
3 |
-
#upgrade-to-premium {
|
4 |
-
width : 900px;
|
5 |
-
}
|
6 |
-
|
7 |
-
#upgrade-to-premium h1 {
|
8 |
-
font-family : 'Raleway', sans-serif;
|
9 |
-
text-transform : uppercase;
|
10 |
-
font-size : 30px;
|
11 |
-
font-weight : 700;
|
12 |
-
color : #808a97;
|
13 |
-
}
|
14 |
-
|
15 |
-
#upgrade-to-premium h3 {
|
16 |
-
font-family : 'Raleway', sans-serif;
|
17 |
-
font-size : 20px;
|
18 |
-
line-height : 29px;
|
19 |
-
font-weight : 700;
|
20 |
-
color : #808a97;
|
21 |
-
}
|
22 |
-
|
23 |
-
#upgrade-to-premium p {
|
24 |
-
font-family : 'Open Sans', sans-serif;
|
25 |
-
font-size : 15px;
|
26 |
-
line-height : 29px;
|
27 |
-
font-weight : 400;
|
28 |
-
color : #6a6a6b;
|
29 |
-
}
|
30 |
-
|
31 |
-
#upgrade-to-premium p.highlighted {
|
32 |
-
font-family : 'Raleway', sans-serif;
|
33 |
-
font-size : 20px;
|
34 |
-
line-height : 27px;
|
35 |
-
color : #808a97;
|
36 |
-
font-weight : 400;
|
37 |
-
}
|
38 |
-
|
39 |
-
#upgrade-to-premium ol {
|
40 |
-
counter-reset : item;
|
41 |
-
list-style-type : none;
|
42 |
-
margin-left : 0;
|
43 |
-
}
|
44 |
-
|
45 |
-
#upgrade-to-premium li.step {
|
46 |
-
font-family : 'open sans', sans-serif;
|
47 |
-
font-size : 15px;
|
48 |
-
color : #6a6a6b;
|
49 |
-
font-weight : 400;
|
50 |
-
position : relative;
|
51 |
-
padding-left : 50px;
|
52 |
-
line-height : 25px;
|
53 |
-
margin-bottom : 25px;
|
54 |
-
}
|
55 |
-
|
56 |
-
#upgrade-to-premium li.step:before {
|
57 |
-
content : counters(item, ".") " ";
|
58 |
-
counter-increment : item;
|
59 |
-
position : absolute;
|
60 |
-
left : 0;
|
61 |
-
top : 0;
|
62 |
-
border : 1px solid #808a97;
|
63 |
-
width : 30px;
|
64 |
-
height : 30px;
|
65 |
-
border-radius : 16px;
|
66 |
-
background-color : #808a97;
|
67 |
-
color : #ffffff;
|
68 |
-
font-weight : 700;
|
69 |
-
font-size : 18px;
|
70 |
-
text-align : center;
|
71 |
-
line-height : 27px;
|
72 |
-
}
|
73 |
-
|
74 |
-
#upgrade-to-premium li.step img {
|
75 |
-
border : 1px solid #b8b8b8;
|
76 |
-
width : 600px;
|
77 |
-
display : block;
|
78 |
-
margin : 15px 0 25px 0;
|
79 |
-
}
|
80 |
-
|
81 |
-
#cboxLoadedContent {
|
82 |
-
margin-bottom : 60px !important;
|
83 |
}
|
1 |
+
/* === Upgrade to Premium Landing page === */
|
2 |
+
|
3 |
+
#upgrade-to-premium {
|
4 |
+
width : 900px;
|
5 |
+
}
|
6 |
+
|
7 |
+
#upgrade-to-premium h1 {
|
8 |
+
font-family : 'Raleway', sans-serif;
|
9 |
+
text-transform : uppercase;
|
10 |
+
font-size : 30px;
|
11 |
+
font-weight : 700;
|
12 |
+
color : #808a97;
|
13 |
+
}
|
14 |
+
|
15 |
+
#upgrade-to-premium h3 {
|
16 |
+
font-family : 'Raleway', sans-serif;
|
17 |
+
font-size : 20px;
|
18 |
+
line-height : 29px;
|
19 |
+
font-weight : 700;
|
20 |
+
color : #808a97;
|
21 |
+
}
|
22 |
+
|
23 |
+
#upgrade-to-premium p {
|
24 |
+
font-family : 'Open Sans', sans-serif;
|
25 |
+
font-size : 15px;
|
26 |
+
line-height : 29px;
|
27 |
+
font-weight : 400;
|
28 |
+
color : #6a6a6b;
|
29 |
+
}
|
30 |
+
|
31 |
+
#upgrade-to-premium p.highlighted {
|
32 |
+
font-family : 'Raleway', sans-serif;
|
33 |
+
font-size : 20px;
|
34 |
+
line-height : 27px;
|
35 |
+
color : #808a97;
|
36 |
+
font-weight : 400;
|
37 |
+
}
|
38 |
+
|
39 |
+
#upgrade-to-premium ol {
|
40 |
+
counter-reset : item;
|
41 |
+
list-style-type : none;
|
42 |
+
margin-left : 0;
|
43 |
+
}
|
44 |
+
|
45 |
+
#upgrade-to-premium li.step {
|
46 |
+
font-family : 'open sans', sans-serif;
|
47 |
+
font-size : 15px;
|
48 |
+
color : #6a6a6b;
|
49 |
+
font-weight : 400;
|
50 |
+
position : relative;
|
51 |
+
padding-left : 50px;
|
52 |
+
line-height : 25px;
|
53 |
+
margin-bottom : 25px;
|
54 |
+
}
|
55 |
+
|
56 |
+
#upgrade-to-premium li.step:before {
|
57 |
+
content : counters(item, ".") " ";
|
58 |
+
counter-increment : item;
|
59 |
+
position : absolute;
|
60 |
+
left : 0;
|
61 |
+
top : 0;
|
62 |
+
border : 1px solid #808a97;
|
63 |
+
width : 30px;
|
64 |
+
height : 30px;
|
65 |
+
border-radius : 16px;
|
66 |
+
background-color : #808a97;
|
67 |
+
color : #ffffff;
|
68 |
+
font-weight : 700;
|
69 |
+
font-size : 18px;
|
70 |
+
text-align : center;
|
71 |
+
line-height : 27px;
|
72 |
+
}
|
73 |
+
|
74 |
+
#upgrade-to-premium li.step img {
|
75 |
+
border : 1px solid #b8b8b8;
|
76 |
+
width : 600px;
|
77 |
+
display : block;
|
78 |
+
margin : 15px 0 25px 0;
|
79 |
+
}
|
80 |
+
|
81 |
+
#cboxLoadedContent {
|
82 |
+
margin-bottom : 60px !important;
|
83 |
}
|
plugin-fw/assets/css/yit-upgrader.css
CHANGED
@@ -1,22 +1,22 @@
|
|
1 |
-
/* === Plugins Upgrader === */
|
2 |
-
|
3 |
-
.yit-plugin-changelog-wrapper {
|
4 |
-
display: none;
|
5 |
-
}
|
6 |
-
|
7 |
-
.yit-plugin-changelog-title {
|
8 |
-
text-transform: uppercase;
|
9 |
-
}
|
10 |
-
|
11 |
-
.yit-plugin-changelog {
|
12 |
-
height : calc(100% - 15px);
|
13 |
-
width : calc(100% - 15px);
|
14 |
-
overflow-x : hidden;
|
15 |
-
overflow-y : auto;
|
16 |
-
z-index : 999;
|
17 |
-
background: #fcfcfc;
|
18 |
-
}
|
19 |
-
|
20 |
-
.yith-updating:before{
|
21 |
-
animation: rotation 2s infinite linear;
|
22 |
}
|
1 |
+
/* === Plugins Upgrader === */
|
2 |
+
|
3 |
+
.yit-plugin-changelog-wrapper {
|
4 |
+
display: none;
|
5 |
+
}
|
6 |
+
|
7 |
+
.yit-plugin-changelog-title {
|
8 |
+
text-transform: uppercase;
|
9 |
+
}
|
10 |
+
|
11 |
+
.yit-plugin-changelog {
|
12 |
+
height : calc(100% - 15px);
|
13 |
+
width : calc(100% - 15px);
|
14 |
+
overflow-x : hidden;
|
15 |
+
overflow-y : auto;
|
16 |
+
z-index : 999;
|
17 |
+
background: #fcfcfc;
|
18 |
+
}
|
19 |
+
|
20 |
+
.yith-updating:before{
|
21 |
+
animation: rotation 2s infinite linear;
|
22 |
}
|
plugin-fw/assets/css/yith-fields.css
CHANGED
@@ -1,2280 +1,2364 @@
|
|
1 |
-
.yith-plugin-fw span.description {
|
2 |
-
|
3 |
-
|
4 |
-
|
5 |
-
|
6 |
-
|
7 |
-
|
8 |
-
}
|
9 |
-
|
10 |
-
.yith-plugin-fw span.description.inline {
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
}
|
16 |
-
|
17 |
-
.yith-disabled {
|
18 |
-
|
19 |
-
|
20 |
-
}
|
21 |
-
|
22 |
-
.yith-plugin-fw-field-wrapper:not(.yith-plugin-fw-title-field-wrapper) {
|
23 |
-
|
24 |
-
|
25 |
-
}
|
26 |
-
|
27 |
-
.yith-plugin-fw-field-wrapper .yith-inline-fields > div {
|
28 |
-
|
29 |
-
|
30 |
-
|
31 |
-
}
|
32 |
-
|
33 |
-
.yith-plugin-fw-field-wrapper span.desc {
|
34 |
-
|
35 |
-
|
36 |
-
}
|
37 |
-
|
38 |
-
.yith-plugin-fw-title-field-wrapper h3.title {
|
39 |
-
|
40 |
-
|
41 |
-
}
|
42 |
-
|
43 |
-
.the-metabox .yith-plugin-fw-title-field-wrapper h3.title {
|
44 |
-
|
45 |
-
}
|
46 |
-
|
47 |
-
.yith-plugin-fw span.color-alpha {
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
}
|
53 |
-
|
54 |
-
.yith-plugin-fw .wp-color-result-text {
|
55 |
-
|
56 |
-
}
|
57 |
-
|
58 |
-
.yith-plugin-fw input[type=email],
|
59 |
-
.yith-plugin-fw input[type=number],
|
60 |
-
.yith-plugin-fw input[type=text]:not(.select2-search__field),
|
61 |
-
.yith-plugin-fw select,
|
62 |
-
.woocommerce .yith-plugin-fw table.form-table input[type=email],
|
63 |
-
.woocommerce .yith-plugin-fw table.form-table input[type=number],
|
64 |
-
.yith-plugin-ui input[type=password],
|
65 |
-
.woocommerce .yith-plugin-fw table.form-table input[type=text]:not(.select2-search__field),
|
66 |
-
.woocommerce .yith-plugin-fw table.form-table select {
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
}
|
73 |
-
|
74 |
-
.yith-plugin-fw input[type=number],
|
75 |
-
.woocommerce .yith-plugin-fw table.form-table input[type=number] {
|
76 |
-
|
77 |
-
|
78 |
-
}
|
79 |
-
|
80 |
-
.woocommerce .yith-plugin-fw table.form-table input[type=text].wp-color-picker,
|
81 |
-
.woocommerce .yith-plugin-fw table.form-table input[type=text].yith-plugin-fw-colorpicker,
|
82 |
-
.yith-plugin-fw input[type=text].wp-color-picker,
|
83 |
-
.yith-plugin-fw input[type=text].yith-plugin-fw-colorpicker {
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
}
|
89 |
-
|
90 |
-
.wp-core-ui .yith-plugin-fw-colorpicker-field-wrapper button {
|
91 |
-
|
92 |
-
}
|
93 |
-
|
94 |
-
.woocommerce .yith-plugin-fw table.form-table input[type=text].colorpick,
|
95 |
-
.yith-plugin-fw input[type=text].colorpick {
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
}
|
101 |
-
|
102 |
-
.yith-plugin-fw input.select2-search__field,
|
103 |
-
.yith-plugin-fw .select2-container .select2-search--inline .select2-search__field,
|
104 |
-
.woocommerce .yith-plugin-fw input.select2-search__field,
|
105 |
-
.woocommerce .yith-plugin-fw table.form-table input.select2-search__field {
|
106 |
-
|
107 |
-
|
108 |
-
}
|
109 |
-
|
110 |
-
.yith-plugin-fw .select2-container .select2-selection--single .select2-selection__rendered {
|
111 |
-
|
112 |
-
}
|
113 |
-
|
114 |
-
.yith-plugin-fw textarea:not(.wp-editor-area) {
|
115 |
-
|
116 |
-
|
117 |
-
|
118 |
-
}
|
119 |
-
|
120 |
-
/* ------------- ICONS ------------- */
|
121 |
-
.yit-icons-manager-wrapper {
|
122 |
-
|
123 |
-
|
124 |
-
}
|
125 |
-
|
126 |
-
.yit-icons-manager-text {
|
127 |
-
|
128 |
-
}
|
129 |
-
|
130 |
-
.yit-icons-manager-icon-text {
|
131 |
-
|
132 |
-
|
133 |
-
|
134 |
-
|
135 |
-
}
|
136 |
-
|
137 |
-
.yit-icons-manager-icon-preview {
|
138 |
-
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
|
144 |
-
|
145 |
-
|
146 |
-
}
|
147 |
-
|
148 |
-
.yit-icons-manager-list-wrapper {
|
149 |
-
|
150 |
-
|
151 |
-
}
|
152 |
-
|
153 |
-
ul.yit-icons-manager-list {
|
154 |
-
|
155 |
-
|
156 |
-
|
157 |
-
|
158 |
-
}
|
159 |
-
|
160 |
-
ul.yit-icons-manager-list li {
|
161 |
-
|
162 |
-
|
163 |
-
|
164 |
-
|
165 |
-
|
166 |
-
|
167 |
-
|
168 |
-
|
169 |
-
|
170 |
-
}
|
171 |
-
|
172 |
-
ul.yit-icons-manager-list li:hover {
|
173 |
-
|
174 |
-
}
|
175 |
-
|
176 |
-
ul.yit-icons-manager-list li.active {
|
177 |
-
|
178 |
-
}
|
179 |
-
|
180 |
-
.yit-icons-manager-action-set-default {
|
181 |
-
|
182 |
-
}
|
183 |
-
|
184 |
-
.yit-icons-manager-default-icon-preview {
|
185 |
-
|
186 |
-
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
}
|
191 |
-
|
192 |
-
/* ------- Text Array ------- */
|
193 |
-
.yith-plugin-fw-text-array-table td {
|
194 |
-
|
195 |
-
}
|
196 |
-
|
197 |
-
.yith-plugin-fw-text-array-table input[type=text],
|
198 |
-
.woocommerce table.form-table table.yith-plugin-fw-text-array-table input[type=text] {
|
199 |
-
|
200 |
-
}
|
201 |
-
|
202 |
-
/* ------- Image Gallery ------- */
|
203 |
-
.yith-plugin-fw .yith-plugin-fw-image-gallery ul li {
|
204 |
-
|
205 |
-
|
206 |
-
|
207 |
-
|
208 |
-
}
|
209 |
-
|
210 |
-
.yith-plugin-fw .yith-plugin-fw-image-gallery ul li img {
|
211 |
-
|
212 |
-
|
213 |
-
}
|
214 |
-
|
215 |
-
.yith-plugin-fw .yith-plugin-fw-image-gallery ul li ul {
|
216 |
-
|
217 |
-
|
218 |
-
|
219 |
-
|
220 |
-
|
221 |
-
}
|
222 |
-
|
223 |
-
.yith-plugin-fw .yith-plugin-fw-image-gallery ul a.delete {
|
224 |
-
|
225 |
-
|
226 |
-
|
227 |
-
|
228 |
-
|
229 |
-
}
|
230 |
-
|
231 |
-
/* ------- OnOff ------- */
|
232 |
-
.yith-plugin-fw-onoff-container {
|
233 |
-
|
234 |
-
|
235 |
-
}
|
236 |
-
|
237 |
-
.yith-plugin-fw-onoff-container input {
|
238 |
-
|
239 |
-
}
|
240 |
-
|
241 |
-
.yith-plugin-fw-onoff-container input + span {
|
242 |
-
|
243 |
-
|
244 |
-
|
245 |
-
|
246 |
-
|
247 |
-
|
248 |
-
|
249 |
-
|
250 |
-
|
251 |
-
|
252 |
-
}
|
253 |
-
|
254 |
-
|
255 |
-
.yith-plugin-fw-onoff-container input + span:before {
|
256 |
-
|
257 |
-
|
258 |
-
|
259 |
-
|
260 |
-
|
261 |
-
|
262 |
-
|
263 |
-
|
264 |
-
|
265 |
-
}
|
266 |
-
|
267 |
-
.yith-plugin-fw-onoff-container input:checked + span,
|
268 |
-
.yith-plugin-fw-onoff-container input.onoffchecked + span {
|
269 |
-
|
270 |
-
}
|
271 |
-
|
272 |
-
.yith-plugin-fw-onoff-container input:checked + span:before,
|
273 |
-
.yith-plugin-fw-onoff-container input.onoffchecked + span:before {
|
274 |
-
|
275 |
-
}
|
276 |
-
|
277 |
-
/* ------- Preview ------- */
|
278 |
-
.yith-plugin-fw-preview-field {
|
279 |
-
|
280 |
-
}
|
281 |
-
|
282 |
-
/* ------- Radio ------- */
|
283 |
-
.yith-plugin-fw-radio input[type=radio] {
|
284 |
-
|
285 |
-
}
|
286 |
-
|
287 |
-
.yith-plugin-fw-radio__row {
|
288 |
-
|
289 |
-
}
|
290 |
-
|
291 |
-
/* ------- Checkbox Array ------- */
|
292 |
-
.yith-plugin-fw-checkbox-array input[type=checkbox] {
|
293 |
-
|
294 |
-
}
|
295 |
-
|
296 |
-
.yith-plugin-fw-checkbox-array__row {
|
297 |
-
|
298 |
-
|
299 |
-
}
|
300 |
-
|
301 |
-
.yith-plugin-fw-checkbox-array__row label {
|
302 |
-
|
303 |
-
|
304 |
-
|
305 |
-
|
306 |
-
|
307 |
-
|
308 |
-
}
|
309 |
-
|
310 |
-
.yith-plugin-fw-checkbox-array__row label small {
|
311 |
-
|
312 |
-
|
313 |
-
}
|
314 |
-
|
315 |
-
|
316 |
-
|
317 |
-
|
318 |
-
|
319 |
-
|
320 |
-
|
321 |
-
|
322 |
-
|
323 |
-
}
|
324 |
-
|
325 |
-
.yith-plugin-fw-sidebar-layout input[type="radio"]
|
326 |
-
|
327 |
-
|
328 |
-
|
329 |
-
|
330 |
-
|
331 |
-
|
332 |
-
}
|
333 |
-
|
334 |
-
.yith-plugin-fw-sidebar-layout input[
|
335 |
-
|
336 |
-
|
337 |
-
|
338 |
-
|
339 |
-
|
340 |
-
|
341 |
-
}
|
342 |
-
|
343 |
-
.
|
344 |
-
|
345 |
-
|
346 |
-
|
347 |
-
|
348 |
-
|
349 |
-
|
350 |
-
|
351 |
-
|
352 |
-
|
353 |
-
|
354 |
-
|
355 |
-
|
356 |
-
.yith-plugin-fw
|
357 |
-
|
358 |
-
|
359 |
-
|
360 |
-
|
361 |
-
|
362 |
-
|
363 |
-
|
364 |
-
|
365 |
-
|
366 |
-
|
367 |
-
|
368 |
-
|
369 |
-
|
370 |
-
|
371 |
-
|
372 |
-
|
373 |
-
|
374 |
-
|
375 |
-
|
376 |
-
|
377 |
-
|
378 |
-
|
379 |
-
|
380 |
-
|
381 |
-
|
382 |
-
|
383 |
-
|
384 |
-
|
385 |
-
|
386 |
-
|
387 |
-
|
388 |
-
|
389 |
-
|
390 |
-
|
391 |
-
|
392 |
-
|
393 |
-
|
394 |
-
|
395 |
-
|
396 |
-
|
397 |
-
|
398 |
-
|
399 |
-
|
400 |
-
|
401 |
-
|
402 |
-
|
403 |
-
|
404 |
-
|
405 |
-
|
406 |
-
|
407 |
-
|
408 |
-
|
409 |
-
|
410 |
-
|
411 |
-
|
412 |
-
|
413 |
-
|
414 |
-
|
415 |
-
|
416 |
-
|
417 |
-
|
418 |
-
|
419 |
-
|
420 |
-
|
421 |
-
|
422 |
-
|
423 |
-
|
424 |
-
|
425 |
-
|
426 |
-
|
427 |
-
|
428 |
-
|
429 |
-
|
430 |
-
|
431 |
-
|
432 |
-
|
433 |
-
|
434 |
-
|
435 |
-
|
436 |
-
|
437 |
-
|
438 |
-
|
439 |
-
|
440 |
-
|
441 |
-
|
442 |
-
|
443 |
-
|
444 |
-
|
445 |
-
|
446 |
-
|
447 |
-
|
448 |
-
|
449 |
-
|
450 |
-
|
451 |
-
.yith-plugin-fw-select-
|
452 |
-
|
453 |
-
|
454 |
-
|
455 |
-
|
456 |
-
|
457 |
-
|
458 |
-
|
459 |
-
|
460 |
-
|
461 |
-
|
462 |
-
|
463 |
-
|
464 |
-
|
465 |
-
|
466 |
-
|
467 |
-
|
468 |
-
|
469 |
-
|
470 |
-
|
471 |
-
|
472 |
-
|
473 |
-
}
|
474 |
-
|
475 |
-
|
476 |
-
|
477 |
-
|
478 |
-
|
479 |
-
|
480 |
-
|
481 |
-
|
482 |
-
|
483 |
-
|
484 |
-
|
485 |
-
|
486 |
-
|
487 |
-
|
488 |
-
|
489 |
-
|
490 |
-
|
491 |
-
|
492 |
-
|
493 |
-
|
494 |
-
|
495 |
-
|
496 |
-
|
497 |
-
|
498 |
-
|
499 |
-
|
500 |
-
|
501 |
-
|
502 |
-
|
503 |
-
|
504 |
-
|
505 |
-
|
506 |
-
|
507 |
-
|
508 |
-
|
509 |
-
|
510 |
-
|
511 |
-
|
512 |
-
|
513 |
-
|
514 |
-
|
515 |
-
|
516 |
-
}
|
517 |
-
|
518 |
-
.yith-plugin-fw-rate
|
519 |
-
|
520 |
-
|
521 |
-
|
522 |
-
|
523 |
-
|
524 |
-
|
525 |
-
|
526 |
-
}
|
527 |
-
|
528 |
-
.yith-plugin-
|
529 |
-
|
530 |
-
|
531 |
-
|
532 |
-
|
533 |
-
|
534 |
-
|
535 |
-
}
|
536 |
-
|
537 |
-
.yith-plugin-ui
|
538 |
-
|
539 |
-
}
|
540 |
-
|
541 |
-
.yith-plugin-ui .nav-tab {
|
542 |
-
|
543 |
-
|
544 |
-
|
545 |
-
|
546 |
-
|
547 |
-
|
548 |
-
|
549 |
-
|
550 |
-
|
551 |
-
|
552 |
-
|
553 |
-
|
554 |
-
|
555 |
-
}
|
556 |
-
|
557 |
-
.yith-plugin-ui .
|
558 |
-
|
559 |
-
|
560 |
-
|
561 |
-
|
562 |
-
|
563 |
-
.yith-plugin-ui .
|
564 |
-
|
565 |
-
|
566 |
-
|
567 |
-
|
568 |
-
|
569 |
-
|
570 |
-
|
571 |
-
|
572 |
-
|
573 |
-
|
574 |
-
|
575 |
-
}
|
576 |
-
|
577 |
-
.yith-plugin-ui .nav-tab-
|
578 |
-
.yith-plugin-ui .nav-tab-
|
579 |
-
|
580 |
-
|
581 |
-
|
582 |
-
|
583 |
-
|
584 |
-
|
585 |
-
|
586 |
-
|
587 |
-
|
588 |
-
|
589 |
-
|
590 |
-
.yith-plugin-ui
|
591 |
-
|
592 |
-
|
593 |
-
|
594 |
-
|
595 |
-
|
596 |
-
|
597 |
-
|
598 |
-
.yith-plugin-ui.
|
599 |
-
|
600 |
-
|
601 |
-
|
602 |
-
|
603 |
-
|
604 |
-
|
605 |
-
|
606 |
-
|
607 |
-
|
608 |
-
|
609 |
-
|
610 |
-
|
611 |
-
|
612 |
-
}
|
613 |
-
|
614 |
-
.yith-plugin-ui
|
615 |
-
|
616 |
-
|
617 |
-
|
618 |
-
|
619 |
-
|
620 |
-
|
621 |
-
|
622 |
-
|
623 |
-
|
624 |
-
|
625 |
-
|
626 |
-
|
627 |
-
|
628 |
-
|
629 |
-
|
630 |
-
|
631 |
-
|
632 |
-
|
633 |
-
|
634 |
-
.yith-plugin-ui
|
635 |
-
|
636 |
-
|
637 |
-
|
638 |
-
|
639 |
-
|
640 |
-
|
641 |
-
|
642 |
-
|
643 |
-
|
644 |
-
|
645 |
-
|
646 |
-
|
647 |
-
|
648 |
-
|
649 |
-
|
650 |
-
|
651 |
-
|
652 |
-
|
653 |
-
|
654 |
-
|
655 |
-
|
656 |
-
|
657 |
-
|
658 |
-
|
659 |
-
|
660 |
-
|
661 |
-
|
662 |
-
|
663 |
-
|
664 |
-
|
665 |
-
|
666 |
-
|
667 |
-
|
668 |
-
|
669 |
-
|
670 |
-
|
671 |
-
|
672 |
-
|
673 |
-
|
674 |
-
|
675 |
-
|
676 |
-
|
677 |
-
|
678 |
-
|
679 |
-
|
680 |
-
|
681 |
-
|
682 |
-
|
683 |
-
|
684 |
-
|
685 |
-
|
686 |
-
|
687 |
-
|
688 |
-
|
689 |
-
|
690 |
-
|
691 |
-
|
692 |
-
|
693 |
-
|
694 |
-
|
695 |
-
|
696 |
-
|
697 |
-
|
698 |
-
|
699 |
-
|
700 |
-
|
701 |
-
|
702 |
-
|
703 |
-
|
704 |
-
|
705 |
-
|
706 |
-
|
707 |
-
|
708 |
-
|
709 |
-
|
710 |
-
|
711 |
-
|
712 |
-
|
713 |
-
|
714 |
-
|
715 |
-
|
716 |
-
|
717 |
-
|
718 |
-
|
719 |
-
|
720 |
-
.yith-plugin-ui
|
721 |
-
|
722 |
-
|
723 |
-
|
724 |
-
|
725 |
-
.
|
726 |
-
|
727 |
-
|
728 |
-
|
729 |
-
|
730 |
-
|
731 |
-
|
732 |
-
|
733 |
-
|
734 |
-
|
735 |
-
|
736 |
-
|
737 |
-
|
738 |
-
|
739 |
-
|
740 |
-
.yith-plugin-ui
|
741 |
-
|
742 |
-
|
743 |
-
|
744 |
-
.yith-plugin-ui input
|
745 |
-
|
746 |
-
|
747 |
-
|
748 |
-
.yith-plugin-ui
|
749 |
-
|
750 |
-
|
751 |
-
|
752 |
-
.yith-plugin-
|
753 |
-
|
754 |
-
|
755 |
-
|
756 |
-
|
757 |
-
|
758 |
-
|
759 |
-
|
760 |
-
|
761 |
-
|
762 |
-
|
763 |
-
|
764 |
-
|
765 |
-
|
766 |
-
|
767 |
-
|
768 |
-
|
769 |
-
|
770 |
-
|
771 |
-
|
772 |
-
|
773 |
-
|
774 |
-
|
775 |
-
|
776 |
-
|
777 |
-
|
778 |
-
|
779 |
-
|
780 |
-
|
781 |
-
.yith-plugin-ui input[type=
|
782 |
-
|
783 |
-
|
784 |
-
|
785 |
-
|
786 |
-
|
787 |
-
|
788 |
-
|
789 |
-
|
790 |
-
|
791 |
-
.
|
792 |
-
.yith-plugin-ui input[type=text]
|
793 |
-
.woocommerce.yith-plugin-fw-panel .yith-plugin-ui table.form-table input[type=text]
|
794 |
-
|
795 |
-
|
796 |
-
|
797 |
-
|
798 |
-
|
799 |
-
}
|
800 |
-
|
801 |
-
.
|
802 |
-
|
803 |
-
|
804 |
-
|
805 |
-
|
806 |
-
|
807 |
-
|
808 |
-
|
809 |
-
|
810 |
-
|
811 |
-
|
812 |
-
|
813 |
-
.yith-plugin-ui
|
814 |
-
|
815 |
-
|
816 |
-
|
817 |
-
|
818 |
-
|
819 |
-
.yith-plugin-ui
|
820 |
-
.yith-plugin-ui .
|
821 |
-
|
822 |
-
|
823 |
-
|
824 |
-
}
|
825 |
-
|
826 |
-
.yith-plugin-ui .
|
827 |
-
.yith-plugin-
|
828 |
-
.yith-plugin-ui
|
829 |
-
|
830 |
-
|
831 |
-
|
832 |
-
|
833 |
-
|
834 |
-
|
835 |
-
|
836 |
-
|
837 |
-
|
838 |
-
|
839 |
-
|
840 |
-
|
841 |
-
|
842 |
-
|
843 |
-
|
844 |
-
|
845 |
-
|
846 |
-
|
847 |
-
|
848 |
-
|
849 |
-
|
850 |
-
|
851 |
-
|
852 |
-
|
853 |
-
.yith-plugin-ui
|
854 |
-
.yith-plugin-ui
|
855 |
-
.yith-plugin-ui
|
856 |
-
|
857 |
-
|
858 |
-
|
859 |
-
|
860 |
-
|
861 |
-
|
862 |
-
|
863 |
-
|
864 |
-
|
865 |
-
|
866 |
-
|
867 |
-
|
868 |
-
|
869 |
-
|
870 |
-
|
871 |
-
|
872 |
-
.yith-plugin-ui .select2-
|
873 |
-
|
874 |
-
|
875 |
-
|
876 |
-
|
877 |
-
|
878 |
-
|
879 |
-
|
880 |
-
|
881 |
-
|
882 |
-
|
883 |
-
|
884 |
-
|
885 |
-
|
886 |
-
|
887 |
-
|
888 |
-
|
889 |
-
|
890 |
-
|
891 |
-
|
892 |
-
|
893 |
-
|
894 |
-
}
|
895 |
-
|
896 |
-
.yith-plugin-
|
897 |
-
|
898 |
-
|
899 |
-
|
900 |
-
|
901 |
-
|
902 |
-
|
903 |
-
|
904 |
-
|
905 |
-
|
906 |
-
|
907 |
-
|
908 |
-
|
909 |
-
|
910 |
-
}
|
911 |
-
|
912 |
-
.
|
913 |
-
|
914 |
-
|
915 |
-
|
916 |
-
|
917 |
-
|
918 |
-
|
919 |
-
|
920 |
-
|
921 |
-
|
922 |
-
|
923 |
-
.yith-plugin-
|
924 |
-
|
925 |
-
|
926 |
-
|
927 |
-
|
928 |
-
|
929 |
-
|
930 |
-
|
931 |
-
|
932 |
-
.yith-plugin-fw-select2-container.select2-container--
|
933 |
-
|
934 |
-
|
935 |
-
|
936 |
-
|
937 |
-
|
938 |
-
|
939 |
-
|
940 |
-
|
941 |
-
}
|
942 |
-
|
943 |
-
.yith-plugin-
|
944 |
-
.yith-plugin-fw-
|
945 |
-
|
946 |
-
|
947 |
-
|
948 |
-
|
949 |
-
|
950 |
-
|
951 |
-
|
952 |
-
|
953 |
-
|
954 |
-
|
955 |
-
|
956 |
-
|
957 |
-
|
958 |
-
|
959 |
-
|
960 |
-
|
961 |
-
|
962 |
-
|
963 |
-
.
|
964 |
-
|
965 |
-
|
966 |
-
}
|
967 |
-
|
968 |
-
.yith-plugin-fw .select2-
|
969 |
-
|
970 |
-
|
971 |
-
|
972 |
-
}
|
973 |
-
|
974 |
-
.yith-plugin-ui .
|
975 |
-
.yith-plugin-fw-panel .
|
976 |
-
|
977 |
-
|
978 |
-
|
979 |
-
|
980 |
-
|
981 |
-
|
982 |
-
|
983 |
-
|
984 |
-
|
985 |
-
|
986 |
-
|
987 |
-
|
988 |
-
|
989 |
-
|
990 |
-
|
991 |
-
|
992 |
-
|
993 |
-
|
994 |
-
.yith-plugin-
|
995 |
-
|
996 |
-
|
997 |
-
|
998 |
-
|
999 |
-
|
1000 |
-
|
1001 |
-
|
1002 |
-
|
1003 |
-
|
1004 |
-
|
1005 |
-
|
1006 |
-
|
1007 |
-
|
1008 |
-
|
1009 |
-
|
1010 |
-
|
1011 |
-
|
1012 |
-
|
1013 |
-
|
1014 |
-
|
1015 |
-
|
1016 |
-
|
1017 |
-
|
1018 |
-
|
1019 |
-
|
1020 |
-
|
1021 |
-
|
1022 |
-
|
1023 |
-
|
1024 |
-
|
1025 |
-
|
1026 |
-
|
1027 |
-
|
1028 |
-
|
1029 |
-
|
1030 |
-
|
1031 |
-
|
1032 |
-
|
1033 |
-
|
1034 |
-
|
1035 |
-
|
1036 |
-
|
1037 |
-
|
1038 |
-
|
1039 |
-
|
1040 |
-
|
1041 |
-
|
1042 |
-
|
1043 |
-
|
1044 |
-
|
1045 |
-
|
1046 |
-
|
1047 |
-
|
1048 |
-
|
1049 |
-
.yith-plugin-ui [type="radio"]:checked + label:
|
1050 |
-
|
1051 |
-
|
1052 |
-
|
1053 |
-
|
1054 |
-
|
1055 |
-
|
1056 |
-
|
1057 |
-
|
1058 |
-
|
1059 |
-
|
1060 |
-
|
1061 |
-
|
1062 |
-
|
1063 |
-
|
1064 |
-
|
1065 |
-
|
1066 |
-
|
1067 |
-
|
1068 |
-
|
1069 |
-
|
1070 |
-
|
1071 |
-
|
1072 |
-
|
1073 |
-
|
1074 |
-
|
1075 |
-
|
1076 |
-
|
1077 |
-
|
1078 |
-
|
1079 |
-
}
|
1080 |
-
|
1081 |
-
.yith-plugin-ui
|
1082 |
-
|
1083 |
-
|
1084 |
-
|
1085 |
-
|
1086 |
-
|
1087 |
-
|
1088 |
-
|
1089 |
-
|
1090 |
-
|
1091 |
-
|
1092 |
-
|
1093 |
-
.
|
1094 |
-
|
1095 |
-
|
1096 |
-
|
1097 |
-
|
1098 |
-
|
1099 |
-
|
1100 |
-
|
1101 |
-
|
1102 |
-
|
1103 |
-
|
1104 |
-
|
1105 |
-
|
1106 |
-
|
1107 |
-
|
1108 |
-
|
1109 |
-
|
1110 |
-
|
1111 |
-
|
1112 |
-
|
1113 |
-
|
1114 |
-
|
1115 |
-
|
1116 |
-
|
1117 |
-
|
1118 |
-
|
1119 |
-
|
1120 |
-
|
1121 |
-
|
1122 |
-
|
1123 |
-
|
1124 |
-
|
1125 |
-
|
1126 |
-
|
1127 |
-
|
1128 |
-
|
1129 |
-
}
|
1130 |
-
|
1131 |
-
.yith-plugin-ui
|
1132 |
-
|
1133 |
-
|
1134 |
-
|
1135 |
-
|
1136 |
-
|
1137 |
-
|
1138 |
-
|
1139 |
-
|
1140 |
-
|
1141 |
-
|
1142 |
-
|
1143 |
-
.yith-plugin-ui .yith-plugin-fw-onoff-container input
|
1144 |
-
|
1145 |
-
|
1146 |
-
|
1147 |
-
|
1148 |
-
|
1149 |
-
|
1150 |
-
|
1151 |
-
|
1152 |
-
|
1153 |
-
|
1154 |
-
|
1155 |
-
}
|
1156 |
-
|
1157 |
-
.yith-plugin-ui .yith-plugin-fw-onoff-container input + span {
|
1158 |
-
|
1159 |
-
}
|
1160 |
-
|
1161 |
-
|
1162 |
-
|
1163 |
-
|
1164 |
-
|
1165 |
-
|
1166 |
-
|
1167 |
-
|
1168 |
-
|
1169 |
-
|
1170 |
-
|
1171 |
-
|
1172 |
-
|
1173 |
-
|
1174 |
-
|
1175 |
-
|
1176 |
-
|
1177 |
-
|
1178 |
-
|
1179 |
-
|
1180 |
-
|
1181 |
-
|
1182 |
-
|
1183 |
-
|
1184 |
-
|
1185 |
-
|
1186 |
-
|
1187 |
-
|
1188 |
-
|
1189 |
-
|
1190 |
-
|
1191 |
-
}
|
1192 |
-
|
1193 |
-
|
1194 |
-
|
1195 |
-
|
1196 |
-
#
|
1197 |
-
|
1198 |
-
|
1199 |
-
|
1200 |
-
|
1201 |
-
|
1202 |
-
|
1203 |
-
|
1204 |
-
|
1205 |
-
|
1206 |
-
|
1207 |
-
|
1208 |
-
|
1209 |
-
|
1210 |
-
|
1211 |
-
|
1212 |
-
|
1213 |
-
|
1214 |
-
|
1215 |
-
.yith-plugin-ui .yith-
|
1216 |
-
.yith-plugin-
|
1217 |
-
|
1218 |
-
|
1219 |
-
|
1220 |
-
|
1221 |
-
|
1222 |
-
|
1223 |
-
|
1224 |
-
|
1225 |
-
|
1226 |
-
|
1227 |
-
|
1228 |
-
|
1229 |
-
|
1230 |
-
|
1231 |
-
|
1232 |
-
|
1233 |
-
|
1234 |
-
|
1235 |
-
|
1236 |
-
|
1237 |
-
|
1238 |
-
|
1239 |
-
|
1240 |
-
|
1241 |
-
|
1242 |
-
|
1243 |
-
|
1244 |
-
|
1245 |
-
|
1246 |
-
#ui-datepicker-div.yith-plugin-fw-datepicker-div
|
1247 |
-
|
1248 |
-
|
1249 |
-
|
1250 |
-
|
1251 |
-
|
1252 |
-
|
1253 |
-
|
1254 |
-
|
1255 |
-
|
1256 |
-
|
1257 |
-
|
1258 |
-
|
1259 |
-
|
1260 |
-
|
1261 |
-
|
1262 |
-
|
1263 |
-
|
1264 |
-
|
1265 |
-
|
1266 |
-
|
1267 |
-
|
1268 |
-
|
1269 |
-
|
1270 |
-
|
1271 |
-
|
1272 |
-
|
1273 |
-
|
1274 |
-
|
1275 |
-
|
1276 |
-
|
1277 |
-
|
1278 |
-
|
1279 |
-
|
1280 |
-
|
1281 |
-
|
1282 |
-
|
1283 |
-
|
1284 |
-
|
1285 |
-
|
1286 |
-
|
1287 |
-
|
1288 |
-
#
|
1289 |
-
|
1290 |
-
|
1291 |
-
|
1292 |
-
|
1293 |
-
|
1294 |
-
|
1295 |
-
|
1296 |
-
|
1297 |
-
|
1298 |
-
|
1299 |
-
|
1300 |
-
|
1301 |
-
|
1302 |
-
|
1303 |
-
|
1304 |
-
|
1305 |
-
|
1306 |
-
|
1307 |
-
|
1308 |
-
|
1309 |
-
|
1310 |
-
|
1311 |
-
|
1312 |
-
|
1313 |
-
|
1314 |
-
|
1315 |
-
|
1316 |
-
|
1317 |
-
|
1318 |
-
|
1319 |
-
|
1320 |
-
|
1321 |
-
|
1322 |
-
|
1323 |
-
|
1324 |
-
}
|
1325 |
-
|
1326 |
-
|
1327 |
-
|
1328 |
-
|
1329 |
-
|
1330 |
-
|
1331 |
-
.
|
1332 |
-
|
1333 |
-
|
1334 |
-
|
1335 |
-
|
1336 |
-
|
1337 |
-
|
1338 |
-
|
1339 |
-
|
1340 |
-
|
1341 |
-
|
1342 |
-
|
1343 |
-
|
1344 |
-
|
1345 |
-
|
1346 |
-
|
1347 |
-
|
1348 |
-
|
1349 |
-
|
1350 |
-
.yith-plugin-
|
1351 |
-
|
1352 |
-
|
1353 |
-
|
1354 |
-
|
1355 |
-
|
1356 |
-
|
1357 |
-
|
1358 |
-
|
1359 |
-
|
1360 |
-
|
1361 |
-
|
1362 |
-
.yith-plugin-
|
1363 |
-
|
1364 |
-
|
1365 |
-
|
1366 |
-
|
1367 |
-
|
1368 |
-
|
1369 |
-
|
1370 |
-
|
1371 |
-
|
1372 |
-
|
1373 |
-
|
1374 |
-
|
1375 |
-
|
1376 |
-
|
1377 |
-
|
1378 |
-
|
1379 |
-
|
1380 |
-
|
1381 |
-
|
1382 |
-
|
1383 |
-
.yith-plugin-ui .wp-picker-
|
1384 |
-
|
1385 |
-
|
1386 |
-
|
1387 |
-
|
1388 |
-
|
1389 |
-
|
1390 |
-
|
1391 |
-
|
1392 |
-
|
1393 |
-
|
1394 |
-
|
1395 |
-
|
1396 |
-
|
1397 |
-
|
1398 |
-
|
1399 |
-
|
1400 |
-
|
1401 |
-
|
1402 |
-
|
1403 |
-
|
1404 |
-
|
1405 |
-
|
1406 |
-
|
1407 |
-
|
1408 |
-
|
1409 |
-
|
1410 |
-
|
1411 |
-
|
1412 |
-
|
1413 |
-
|
1414 |
-
|
1415 |
-
|
1416 |
-
|
1417 |
-
|
1418 |
-
|
1419 |
-
|
1420 |
-
|
1421 |
-
|
1422 |
-
|
1423 |
-
|
1424 |
-
|
1425 |
-
|
1426 |
-
|
1427 |
-
|
1428 |
-
|
1429 |
-
|
1430 |
-
|
1431 |
-
|
1432 |
-
|
1433 |
-
|
1434 |
-
|
1435 |
-
|
1436 |
-
|
1437 |
-
|
1438 |
-
|
1439 |
-
|
1440 |
-
|
1441 |
-
|
1442 |
-
|
1443 |
-
|
1444 |
-
|
1445 |
-
|
1446 |
-
|
1447 |
-
|
1448 |
-
|
1449 |
-
|
1450 |
-
|
1451 |
-
|
1452 |
-
|
1453 |
-
|
1454 |
-
|
1455 |
-
|
1456 |
-
|
1457 |
-
|
1458 |
-
|
1459 |
-
|
1460 |
-
|
1461 |
-
|
1462 |
-
|
1463 |
-
|
1464 |
-
|
1465 |
-
|
1466 |
-
|
1467 |
-
|
1468 |
-
|
1469 |
-
|
1470 |
-
|
1471 |
-
|
1472 |
-
|
1473 |
-
|
1474 |
-
|
1475 |
-
|
1476 |
-
|
1477 |
-
|
1478 |
-
|
1479 |
-
|
1480 |
-
|
1481 |
-
|
1482 |
-
|
1483 |
-
|
1484 |
-
|
1485 |
-
|
1486 |
-
|
1487 |
-
|
1488 |
-
|
1489 |
-
|
1490 |
-
|
1491 |
-
|
1492 |
-
|
1493 |
-
.yith-plugin-ui .yith-plugin-fw-
|
1494 |
-
|
1495 |
-
|
1496 |
-
|
1497 |
-
|
1498 |
-
|
1499 |
-
|
1500 |
-
|
1501 |
-
|
1502 |
-
|
1503 |
-
|
1504 |
-
|
1505 |
-
|
1506 |
-
|
1507 |
-
|
1508 |
-
|
1509 |
-
|
1510 |
-
|
1511 |
-
|
1512 |
-
|
1513 |
-
|
1514 |
-
|
1515 |
-
|
1516 |
-
|
1517 |
-
|
1518 |
-
|
1519 |
-
|
1520 |
-
|
1521 |
-
|
1522 |
-
|
1523 |
-
|
1524 |
-
|
1525 |
-
|
1526 |
-
|
1527 |
-
|
1528 |
-
|
1529 |
-
|
1530 |
-
|
1531 |
-
|
1532 |
-
|
1533 |
-
|
1534 |
-
|
1535 |
-
|
1536 |
-
}
|
1537 |
-
|
1538 |
-
.yith-plugin-ui .yith-
|
1539 |
-
|
1540 |
-
|
1541 |
-
|
1542 |
-
|
1543 |
-
|
1544 |
-
|
1545 |
-
|
1546 |
-
|
1547 |
-
|
1548 |
-
|
1549 |
-
|
1550 |
-
|
1551 |
-
|
1552 |
-
|
1553 |
-
|
1554 |
-
|
1555 |
-
|
1556 |
-
|
1557 |
-
|
1558 |
-
|
1559 |
-
|
1560 |
-
|
1561 |
-
}
|
1562 |
-
|
1563 |
-
.yith-plugin-ui .yith-
|
1564 |
-
|
1565 |
-
|
1566 |
-
|
1567 |
-
}
|
1568 |
-
|
1569 |
-
|
1570 |
-
|
1571 |
-
|
1572 |
-
|
1573 |
-
|
1574 |
-
|
1575 |
-
|
1576 |
-
|
1577 |
-
|
1578 |
-
|
1579 |
-
|
1580 |
-
|
1581 |
-
|
1582 |
-
|
1583 |
-
|
1584 |
-
|
1585 |
-
|
1586 |
-
}
|
1587 |
-
|
1588 |
-
.yith-plugin-ui .yith-toggle
|
1589 |
-
|
1590 |
-
|
1591 |
-
|
1592 |
-
|
1593 |
-
|
1594 |
-
|
1595 |
-
|
1596 |
-
|
1597 |
-
|
1598 |
-
|
1599 |
-
|
1600 |
-
|
1601 |
-
|
1602 |
-
|
1603 |
-
|
1604 |
-
|
1605 |
-
|
1606 |
-
|
1607 |
-
|
1608 |
-
|
1609 |
-
|
1610 |
-
|
1611 |
-
|
1612 |
-
.yith-plugin-ui .yith-
|
1613 |
-
|
1614 |
-
|
1615 |
-
|
1616 |
-
|
1617 |
-
|
1618 |
-
|
1619 |
-
|
1620 |
-
|
1621 |
-
|
1622 |
-
|
1623 |
-
|
1624 |
-
|
1625 |
-
|
1626 |
-
|
1627 |
-
|
1628 |
-
|
1629 |
-
|
1630 |
-
|
1631 |
-
|
1632 |
-
|
1633 |
-
|
1634 |
-
|
1635 |
-
|
1636 |
-
|
1637 |
-
|
1638 |
-
|
1639 |
-
|
1640 |
-
|
1641 |
-
|
1642 |
-
|
1643 |
-
|
1644 |
-
}
|
1645 |
-
|
1646 |
-
.yith-plugin-ui .yith-
|
1647 |
-
|
1648 |
-
|
1649 |
-
|
1650 |
-
|
1651 |
-
|
1652 |
-
|
1653 |
-
|
1654 |
-
|
1655 |
-
|
1656 |
-
|
1657 |
-
|
1658 |
-
|
1659 |
-
|
1660 |
-
|
1661 |
-
|
1662 |
-
|
1663 |
-
|
1664 |
-
|
1665 |
-
|
1666 |
-
|
1667 |
-
|
1668 |
-
|
1669 |
-
|
1670 |
-
|
1671 |
-
|
1672 |
-
|
1673 |
-
|
1674 |
-
.yith-plugin-ui .
|
1675 |
-
|
1676 |
-
|
1677 |
-
|
1678 |
-
|
1679 |
-
|
1680 |
-
|
1681 |
-
|
1682 |
-
|
1683 |
-
|
1684 |
-
|
1685 |
-
|
1686 |
-
|
1687 |
-
|
1688 |
-
|
1689 |
-
|
1690 |
-
|
1691 |
-
|
1692 |
-
|
1693 |
-
|
1694 |
-
|
1695 |
-
|
1696 |
-
|
1697 |
-
|
1698 |
-
|
1699 |
-
|
1700 |
-
|
1701 |
-
|
1702 |
-
|
1703 |
-
|
1704 |
-
|
1705 |
-
|
1706 |
-
|
1707 |
-
|
1708 |
-
.yith-plugin-ui
|
1709 |
-
|
1710 |
-
|
1711 |
-
|
1712 |
-
|
1713 |
-
.yith-plugin-ui
|
1714 |
-
|
1715 |
-
|
1716 |
-
|
1717 |
-
}
|
1718 |
-
|
1719 |
-
.yith-plugin-ui
|
1720 |
-
|
1721 |
-
|
1722 |
-
|
1723 |
-
|
1724 |
-
|
1725 |
-
|
1726 |
-
|
1727 |
-
|
1728 |
-
|
1729 |
-
|
1730 |
-
|
1731 |
-
|
1732 |
-
|
1733 |
-
|
1734 |
-
|
1735 |
-
|
1736 |
-
|
1737 |
-
|
1738 |
-
|
1739 |
-
}
|
1740 |
-
|
1741 |
-
.yith-plugin-ui .
|
1742 |
-
|
1743 |
-
}
|
1744 |
-
|
1745 |
-
|
1746 |
-
.yith-plugin-ui
|
1747 |
-
|
1748 |
-
|
1749 |
-
|
1750 |
-
|
1751 |
-
|
1752 |
-
|
1753 |
-
|
1754 |
-
|
1755 |
-
|
1756 |
-
|
1757 |
-
|
1758 |
-
|
1759 |
-
}
|
1760 |
-
|
1761 |
-
|
1762 |
-
|
1763 |
-
|
1764 |
-
|
1765 |
-
|
1766 |
-
|
1767 |
-
|
1768 |
-
|
1769 |
-
|
1770 |
-
|
1771 |
-
|
1772 |
-
|
1773 |
-
|
1774 |
-
|
1775 |
-
|
1776 |
-
.yith-plugin-ui
|
1777 |
-
|
1778 |
-
|
1779 |
-
|
1780 |
-
|
1781 |
-
|
1782 |
-
.yith-plugin-ui
|
1783 |
-
|
1784 |
-
}
|
1785 |
-
|
1786 |
-
.yith-plugin-ui
|
1787 |
-
|
1788 |
-
|
1789 |
-
|
1790 |
-
|
1791 |
-
|
1792 |
-
|
1793 |
-
|
1794 |
-
|
1795 |
-
|
1796 |
-
|
1797 |
-
|
1798 |
-
|
1799 |
-
|
1800 |
-
|
1801 |
-
|
1802 |
-
|
1803 |
-
|
1804 |
-
|
1805 |
-
}
|
1806 |
-
|
1807 |
-
.yith-plugin-ui
|
1808 |
-
|
1809 |
-
|
1810 |
-
|
1811 |
-
|
1812 |
-
}
|
1813 |
-
|
1814 |
-
.yith-plugin-
|
1815 |
-
|
1816 |
-
|
1817 |
-
|
1818 |
-
|
1819 |
-
|
1820 |
-
|
1821 |
-
|
1822 |
-
|
1823 |
-
*/
|
1824 |
-
.yith-plugin-
|
1825 |
-
|
1826 |
-
|
1827 |
-
|
1828 |
-
|
1829 |
-
|
1830 |
-
|
1831 |
-
}
|
1832 |
-
|
1833 |
-
|
1834 |
-
|
1835 |
-
|
1836 |
-
|
1837 |
-
|
1838 |
-
.yith-plugin-ui
|
1839 |
-
|
1840 |
-
|
1841 |
-
|
1842 |
-
|
1843 |
-
|
1844 |
-
|
1845 |
-
|
1846 |
-
|
1847 |
-
|
1848 |
-
.yith-plugin-ui .
|
1849 |
-
|
1850 |
-
|
1851 |
-
|
1852 |
-
|
1853 |
-
|
1854 |
-
|
1855 |
-
|
1856 |
-
|
1857 |
-
|
1858 |
-
|
1859 |
-
|
1860 |
-
|
1861 |
-
}
|
1862 |
-
|
1863 |
-
.yith-plugin-
|
1864 |
-
|
1865 |
-
|
1866 |
-
|
1867 |
-
|
1868 |
-
|
1869 |
-
|
1870 |
-
|
1871 |
-
|
1872 |
-
|
1873 |
-
|
1874 |
-
|
1875 |
-
|
1876 |
-
|
1877 |
-
|
1878 |
-
|
1879 |
-
|
1880 |
-
|
1881 |
-
|
1882 |
-
|
1883 |
-
|
1884 |
-
|
1885 |
-
|
1886 |
-
|
1887 |
-
|
1888 |
-
|
1889 |
-
|
1890 |
-
|
1891 |
-
|
1892 |
-
|
1893 |
-
|
1894 |
-
|
1895 |
-
|
1896 |
-
.yith-plugin-fw-
|
1897 |
-
|
1898 |
-
|
1899 |
-
|
1900 |
-
|
1901 |
-
|
1902 |
-
|
1903 |
-
|
1904 |
-
|
1905 |
-
|
1906 |
-
|
1907 |
-
|
1908 |
-
|
1909 |
-
|
1910 |
-
|
1911 |
-
|
1912 |
-
|
1913 |
-
|
1914 |
-
|
1915 |
-
|
1916 |
-
|
1917 |
-
|
1918 |
-
|
1919 |
-
|
1920 |
-
|
1921 |
-
|
1922 |
-
|
1923 |
-
|
1924 |
-
|
1925 |
-
|
1926 |
-
|
1927 |
-
|
1928 |
-
|
1929 |
-
|
1930 |
-
|
1931 |
-
|
1932 |
-
|
1933 |
-
|
1934 |
-
|
1935 |
-
|
1936 |
-
.
|
1937 |
-
|
1938 |
-
|
1939 |
-
}
|
1940 |
-
|
1941 |
-
.yith-plugin-fw-
|
1942 |
-
|
1943 |
-
|
1944 |
-
|
1945 |
-
|
1946 |
-
|
1947 |
-
|
1948 |
-
|
1949 |
-
|
1950 |
-
|
1951 |
-
|
1952 |
-
|
1953 |
-
|
1954 |
-
|
1955 |
-
|
1956 |
-
|
1957 |
-
|
1958 |
-
.yith-plugin-
|
1959 |
-
|
1960 |
-
|
1961 |
-
|
1962 |
-
|
1963 |
-
|
1964 |
-
|
1965 |
-
|
1966 |
-
|
1967 |
-
|
1968 |
-
|
1969 |
-
|
1970 |
-
|
1971 |
-
|
1972 |
-
|
1973 |
-
|
1974 |
-
|
1975 |
-
|
1976 |
-
|
1977 |
-
|
1978 |
-
|
1979 |
-
|
1980 |
-
|
1981 |
-
|
1982 |
-
|
1983 |
-
|
1984 |
-
|
1985 |
-
|
1986 |
-
|
1987 |
-
|
1988 |
-
|
1989 |
-
|
1990 |
-
|
1991 |
-
|
1992 |
-
|
1993 |
-
|
1994 |
-
|
1995 |
-
|
1996 |
-
.yith-plugin-ui .yith-plugin-fw-
|
1997 |
-
|
1998 |
-
|
1999 |
-
|
2000 |
-
|
2001 |
-
|
2002 |
-
|
2003 |
-
|
2004 |
-
|
2005 |
-
|
2006 |
-
|
2007 |
-
|
2008 |
-
|
2009 |
-
|
2010 |
-
|
2011 |
-
|
2012 |
-
|
2013 |
-
|
2014 |
-
|
2015 |
-
|
2016 |
-
}
|
2017 |
-
|
2018 |
-
.yith-plugin-fw-
|
2019 |
-
|
2020 |
-
|
2021 |
-
|
2022 |
-
|
2023 |
-
|
2024 |
-
|
2025 |
-
|
2026 |
-
}
|
2027 |
-
|
2028 |
-
.yith-plugin-fw-
|
2029 |
-
|
2030 |
-
|
2031 |
-
|
2032 |
-
|
2033 |
-
|
2034 |
-
|
2035 |
-
|
2036 |
-
|
2037 |
-
|
2038 |
-
|
2039 |
-
|
2040 |
-
|
2041 |
-
|
2042 |
-
|
2043 |
-
|
2044 |
-
|
2045 |
-
|
2046 |
-
|
2047 |
-
|
2048 |
-
|
2049 |
-
|
2050 |
-
|
2051 |
-
|
2052 |
-
|
2053 |
-
|
2054 |
-
|
2055 |
-
|
2056 |
-
|
2057 |
-
|
2058 |
-
|
2059 |
-
.
|
2060 |
-
|
2061 |
-
|
2062 |
-
|
2063 |
-
|
2064 |
-
|
2065 |
-
|
2066 |
-
|
2067 |
-
|
2068 |
-
|
2069 |
-
|
2070 |
-
|
2071 |
-
|
2072 |
-
|
2073 |
-
}
|
2074 |
-
|
2075 |
-
.yith-plugin-fw-
|
2076 |
-
|
2077 |
-
|
2078 |
-
|
2079 |
-
|
2080 |
-
|
2081 |
-
|
2082 |
-
|
2083 |
-
|
2084 |
-
|
2085 |
-
|
2086 |
-
|
2087 |
-
|
2088 |
-
|
2089 |
-
|
2090 |
-
|
2091 |
-
|
2092 |
-
|
2093 |
-
|
2094 |
-
|
2095 |
-
|
2096 |
-
|
2097 |
-
|
2098 |
-
|
2099 |
-
|
2100 |
-
|
2101 |
-
|
2102 |
-
|
2103 |
-
|
2104 |
-
|
2105 |
-
|
2106 |
-
|
2107 |
-
|
2108 |
-
|
2109 |
-
|
2110 |
-
|
2111 |
-
|
2112 |
-
|
2113 |
-
|
2114 |
-
|
2115 |
-
|
2116 |
-
|
2117 |
-
|
2118 |
-
|
2119 |
-
|
2120 |
-
|
2121 |
-
|
2122 |
-
|
2123 |
-
|
2124 |
-
|
2125 |
-
|
2126 |
-
|
2127 |
-
|
2128 |
-
|
2129 |
-
|
2130 |
-
|
2131 |
-
|
2132 |
-
|
2133 |
-
|
2134 |
-
|
2135 |
-
}
|
2136 |
-
|
2137 |
-
|
2138 |
-
|
2139 |
-
|
2140 |
-
|
2141 |
-
|
2142 |
-
|
2143 |
-
|
2144 |
-
|
2145 |
-
|
2146 |
-
|
2147 |
-
|
2148 |
-
|
2149 |
-
|
2150 |
-
|
2151 |
-
|
2152 |
-
|
2153 |
-
|
2154 |
-
|
2155 |
-
|
2156 |
-
|
2157 |
-
|
2158 |
-
|
2159 |
-
|
2160 |
-
|
2161 |
-
|
2162 |
-
|
2163 |
-
|
2164 |
-
|
2165 |
-
|
2166 |
-
|
2167 |
-
|
2168 |
-
|
2169 |
-
|
2170 |
-
|
2171 |
-
|
2172 |
-
|
2173 |
-
|
2174 |
-
|
2175 |
-
|
2176 |
-
|
2177 |
-
|
2178 |
-
|
2179 |
-
|
2180 |
-
|
2181 |
-
|
2182 |
-
|
2183 |
-
|
2184 |
-
|
2185 |
-
|
2186 |
-
|
2187 |
-
|
2188 |
-
|
2189 |
-
|
2190 |
-
|
2191 |
-
|
2192 |
-
|
2193 |
-
|
2194 |
-
|
2195 |
-
|
2196 |
-
|
2197 |
-
|
2198 |
-
|
2199 |
-
|
2200 |
-
|
2201 |
-
|
2202 |
-
}
|
2203 |
-
|
2204 |
-
|
2205 |
-
|
2206 |
-
|
2207 |
-
|
2208 |
-
|
2209 |
-
|
2210 |
-
|
2211 |
-
|
2212 |
-
|
2213 |
-
|
2214 |
-
|
2215 |
-
|
2216 |
-
|
2217 |
-
|
2218 |
-
|
2219 |
-
|
2220 |
-
|
2221 |
-
|
2222 |
-
|
2223 |
-
|
2224 |
-
|
2225 |
-
|
2226 |
-
|
2227 |
-
|
2228 |
-
|
2229 |
-
|
2230 |
-
|
2231 |
-
|
2232 |
-
|
2233 |
-
|
2234 |
-
|
2235 |
-
|
2236 |
-
|
2237 |
-
|
2238 |
-
|
2239 |
-
|
2240 |
-
|
2241 |
-
|
2242 |
-
|
2243 |
-
|
2244 |
-
|
2245 |
-
|
2246 |
-
|
2247 |
-
|
2248 |
-
|
2249 |
-
|
2250 |
-
|
2251 |
-
|
2252 |
-
|
2253 |
-
|
2254 |
-
|
2255 |
-
|
2256 |
-
|
2257 |
-
|
2258 |
-
|
2259 |
-
|
2260 |
-
|
2261 |
-
|
2262 |
-
|
2263 |
-
|
2264 |
-
|
2265 |
-
|
2266 |
-
|
2267 |
-
|
2268 |
-
|
2269 |
-
|
2270 |
-
|
2271 |
-
|
2272 |
-
|
2273 |
-
|
2274 |
-
|
2275 |
-
|
2276 |
-
|
2277 |
-
|
2278 |
-
|
2279 |
-
|
2280 |
-
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
.yith-plugin-fw span.description {
|
2 |
+
display : block;
|
3 |
+
margin-top : 5px;
|
4 |
+
font-size : 12px;
|
5 |
+
color : #777;
|
6 |
+
font-style : italic;
|
7 |
+
clear : both;
|
8 |
+
}
|
9 |
+
|
10 |
+
.yith-plugin-fw span.description.inline {
|
11 |
+
display : inline-block;
|
12 |
+
margin : 0 0 0 5px;
|
13 |
+
min-width : 0;
|
14 |
+
max-width : 100%;
|
15 |
+
}
|
16 |
+
|
17 |
+
.yith-disabled {
|
18 |
+
opacity : 0.3;
|
19 |
+
pointer-events : none;
|
20 |
+
}
|
21 |
+
|
22 |
+
.yith-plugin-fw-field-wrapper:not(.yith-plugin-fw-title-field-wrapper) {
|
23 |
+
display : block;
|
24 |
+
width : 100%;
|
25 |
+
}
|
26 |
+
|
27 |
+
.yith-plugin-fw-field-wrapper .yith-inline-fields > div {
|
28 |
+
display : inline-block;
|
29 |
+
vertical-align : middle;
|
30 |
+
margin-right : 5px;
|
31 |
+
}
|
32 |
+
|
33 |
+
.yith-plugin-fw-field-wrapper span.desc {
|
34 |
+
display : block;
|
35 |
+
width : 100%;
|
36 |
+
}
|
37 |
+
|
38 |
+
.yith-plugin-fw-title-field-wrapper h3.title {
|
39 |
+
width : 100%;
|
40 |
+
padding : 0 !important;
|
41 |
+
}
|
42 |
+
|
43 |
+
.the-metabox .yith-plugin-fw-title-field-wrapper h3.title {
|
44 |
+
float : left;
|
45 |
+
}
|
46 |
+
|
47 |
+
.yith-plugin-fw span.color-alpha {
|
48 |
+
height : 100% !important;
|
49 |
+
width : 100% !important;
|
50 |
+
border : 1px solid #d9d9d9;
|
51 |
+
margin : -1px;
|
52 |
+
}
|
53 |
+
|
54 |
+
.yith-plugin-fw .wp-color-result-text {
|
55 |
+
height : 100%;
|
56 |
+
}
|
57 |
+
|
58 |
+
.yith-plugin-fw input[type=email],
|
59 |
+
.yith-plugin-fw input[type=number],
|
60 |
+
.yith-plugin-fw input[type=text]:not(.select2-search__field),
|
61 |
+
.yith-plugin-fw select,
|
62 |
+
.woocommerce .yith-plugin-fw table.form-table input[type=email],
|
63 |
+
.woocommerce .yith-plugin-fw table.form-table input[type=number],
|
64 |
+
.yith-plugin-ui input[type=password],
|
65 |
+
.woocommerce .yith-plugin-fw table.form-table input[type=text]:not(.select2-search__field),
|
66 |
+
.woocommerce .yith-plugin-fw table.form-table select {
|
67 |
+
width : 400px;
|
68 |
+
max-width : 100%;
|
69 |
+
height : 30px;
|
70 |
+
padding : 5px;
|
71 |
+
line-height : 1;
|
72 |
+
}
|
73 |
+
|
74 |
+
.yith-plugin-fw input[type=number],
|
75 |
+
.woocommerce .yith-plugin-fw table.form-table input[type=number] {
|
76 |
+
width : 70px;
|
77 |
+
min-width : 70px;
|
78 |
+
}
|
79 |
+
|
80 |
+
.woocommerce .yith-plugin-fw table.form-table input[type=text].wp-color-picker,
|
81 |
+
.woocommerce .yith-plugin-fw table.form-table input[type=text].yith-plugin-fw-colorpicker,
|
82 |
+
.yith-plugin-fw input[type=text].wp-color-picker,
|
83 |
+
.yith-plugin-fw input[type=text].yith-plugin-fw-colorpicker {
|
84 |
+
width : 6em;
|
85 |
+
max-width : none;
|
86 |
+
height : auto;
|
87 |
+
padding : 3px 5px;
|
88 |
+
}
|
89 |
+
|
90 |
+
.wp-core-ui .yith-plugin-fw-colorpicker-field-wrapper button {
|
91 |
+
border-color : #7e8993;
|
92 |
+
}
|
93 |
+
|
94 |
+
.woocommerce .yith-plugin-fw table.form-table input[type=text].colorpick,
|
95 |
+
.yith-plugin-fw input[type=text].colorpick {
|
96 |
+
width : 6em;
|
97 |
+
max-width : none;
|
98 |
+
height : auto;
|
99 |
+
padding : 6px;
|
100 |
+
}
|
101 |
+
|
102 |
+
.yith-plugin-fw input.select2-search__field,
|
103 |
+
.yith-plugin-fw .select2-container .select2-search--inline .select2-search__field,
|
104 |
+
.woocommerce .yith-plugin-fw input.select2-search__field,
|
105 |
+
.woocommerce .yith-plugin-fw table.form-table input.select2-search__field {
|
106 |
+
padding : 3px;
|
107 |
+
min-width : 380px;
|
108 |
+
}
|
109 |
+
|
110 |
+
.yith-plugin-fw .select2-container .select2-selection--single .select2-selection__rendered {
|
111 |
+
line-height : 27px;
|
112 |
+
}
|
113 |
+
|
114 |
+
.yith-plugin-fw textarea:not(.wp-editor-area) {
|
115 |
+
width : 400px;
|
116 |
+
max-width : 100%;
|
117 |
+
padding : 5px;
|
118 |
+
}
|
119 |
+
|
120 |
+
/* ------------- ICONS ------------- */
|
121 |
+
.yit-icons-manager-wrapper {
|
122 |
+
width : 100%;
|
123 |
+
max-width : 400px;
|
124 |
+
}
|
125 |
+
|
126 |
+
.yit-icons-manager-text {
|
127 |
+
width : 100%;
|
128 |
+
}
|
129 |
+
|
130 |
+
.yit-icons-manager-icon-text {
|
131 |
+
width : calc(100% - 35px) !important;
|
132 |
+
height : 30px;
|
133 |
+
float : left;
|
134 |
+
margin : 0;
|
135 |
+
}
|
136 |
+
|
137 |
+
.yit-icons-manager-icon-preview {
|
138 |
+
width : 30px;
|
139 |
+
height : 30px;
|
140 |
+
margin-right : 5px;
|
141 |
+
float : left;
|
142 |
+
padding-top : 6px;
|
143 |
+
box-sizing : border-box;
|
144 |
+
text-align : center;
|
145 |
+
background : #f1f1f1;
|
146 |
+
}
|
147 |
+
|
148 |
+
.yit-icons-manager-list-wrapper {
|
149 |
+
margin : 10px 0;
|
150 |
+
box-shadow : 0 0 0 1px #ddd;
|
151 |
+
}
|
152 |
+
|
153 |
+
ul.yit-icons-manager-list {
|
154 |
+
width : 100%;
|
155 |
+
height : 300px;
|
156 |
+
overflow-y : scroll;
|
157 |
+
margin : 0;
|
158 |
+
}
|
159 |
+
|
160 |
+
ul.yit-icons-manager-list li {
|
161 |
+
float : left;
|
162 |
+
width : 30px;
|
163 |
+
height : 30px;
|
164 |
+
padding-top : 6px;
|
165 |
+
box-sizing : border-box;
|
166 |
+
text-align : center;
|
167 |
+
background : #f1f1f1;
|
168 |
+
margin : 1px;
|
169 |
+
cursor : pointer;
|
170 |
+
}
|
171 |
+
|
172 |
+
ul.yit-icons-manager-list li:hover {
|
173 |
+
background : #c5dcf6;
|
174 |
+
}
|
175 |
+
|
176 |
+
ul.yit-icons-manager-list li.active {
|
177 |
+
background : #d4f0ff;
|
178 |
+
}
|
179 |
+
|
180 |
+
.yit-icons-manager-action-set-default {
|
181 |
+
margin-bottom : 0;
|
182 |
+
}
|
183 |
+
|
184 |
+
.yit-icons-manager-default-icon-preview {
|
185 |
+
height : 100%;
|
186 |
+
display : inline-block;
|
187 |
+
padding-left : 10px;
|
188 |
+
border-left : 1px solid #ccc;
|
189 |
+
margin-left : 10px;
|
190 |
+
}
|
191 |
+
|
192 |
+
/* ------- Text Array ------- */
|
193 |
+
.yith-plugin-fw-text-array-table td {
|
194 |
+
padding : 1px;
|
195 |
+
}
|
196 |
+
|
197 |
+
.yith-plugin-fw-text-array-table input[type=text],
|
198 |
+
.woocommerce table.form-table table.yith-plugin-fw-text-array-table input[type=text] {
|
199 |
+
width : 100%;
|
200 |
+
}
|
201 |
+
|
202 |
+
/* ------- Image Gallery ------- */
|
203 |
+
.yith-plugin-fw .yith-plugin-fw-image-gallery ul li {
|
204 |
+
display : inline-block;
|
205 |
+
width : 80px;
|
206 |
+
margin-left : 10px;
|
207 |
+
position : relative;
|
208 |
+
}
|
209 |
+
|
210 |
+
.yith-plugin-fw .yith-plugin-fw-image-gallery ul li img {
|
211 |
+
width : 80px;
|
212 |
+
border : 1px solid #ccc;
|
213 |
+
}
|
214 |
+
|
215 |
+
.yith-plugin-fw .yith-plugin-fw-image-gallery ul li ul {
|
216 |
+
position : absolute;
|
217 |
+
top : -6px;
|
218 |
+
right : -1px;
|
219 |
+
width : 20px;
|
220 |
+
height : 20px;
|
221 |
+
}
|
222 |
+
|
223 |
+
.yith-plugin-fw .yith-plugin-fw-image-gallery ul a.delete {
|
224 |
+
background : url(../images/x.png) no-repeat;
|
225 |
+
width : 20px;
|
226 |
+
height : 20px;
|
227 |
+
display : block;
|
228 |
+
text-indent : -99999px;
|
229 |
+
}
|
230 |
+
|
231 |
+
/* ------- OnOff ------- */
|
232 |
+
.yith-plugin-fw-onoff-container {
|
233 |
+
display : inline-block;
|
234 |
+
text-align : left;
|
235 |
+
}
|
236 |
+
|
237 |
+
.yith-plugin-fw-onoff-container input {
|
238 |
+
display : none;
|
239 |
+
}
|
240 |
+
|
241 |
+
.yith-plugin-fw-onoff-container input + span {
|
242 |
+
cursor : pointer;
|
243 |
+
text-indent : -9999px;
|
244 |
+
display : block;
|
245 |
+
width : 36px;
|
246 |
+
line-height : 1;
|
247 |
+
height : 20px;
|
248 |
+
background : #a4a4a4;
|
249 |
+
border-radius : 24px;
|
250 |
+
position : relative;
|
251 |
+
transition : all 0.3s;
|
252 |
+
}
|
253 |
+
|
254 |
+
|
255 |
+
.yith-plugin-fw-onoff-container input + span:before {
|
256 |
+
content : '';
|
257 |
+
background : #fff;
|
258 |
+
width : 16px;
|
259 |
+
height : 16px;
|
260 |
+
border-radius : 50%;
|
261 |
+
position : absolute;
|
262 |
+
top : 2px;
|
263 |
+
left : 2px;
|
264 |
+
transition : all 0.3s;
|
265 |
+
}
|
266 |
+
|
267 |
+
.yith-plugin-fw-onoff-container input:checked + span,
|
268 |
+
.yith-plugin-fw-onoff-container input.onoffchecked + span {
|
269 |
+
background : #0073aa;
|
270 |
+
}
|
271 |
+
|
272 |
+
.yith-plugin-fw-onoff-container input:checked + span:before,
|
273 |
+
.yith-plugin-fw-onoff-container input.onoffchecked + span:before {
|
274 |
+
left : 18px;
|
275 |
+
}
|
276 |
+
|
277 |
+
/* ------- Preview ------- */
|
278 |
+
.yith-plugin-fw-preview-field {
|
279 |
+
max-height : 200px;
|
280 |
+
}
|
281 |
+
|
282 |
+
/* ------- Radio ------- */
|
283 |
+
.yith-plugin-fw-radio input[type=radio] {
|
284 |
+
margin : 0 3px 0 0;
|
285 |
+
}
|
286 |
+
|
287 |
+
.yith-plugin-fw-radio__row {
|
288 |
+
margin-bottom : 8px;
|
289 |
+
}
|
290 |
+
|
291 |
+
/* ------- Checkbox Array ------- */
|
292 |
+
.yith-plugin-fw-checkbox-array input[type=checkbox] {
|
293 |
+
margin : 2px 3px 0 0;
|
294 |
+
}
|
295 |
+
|
296 |
+
.yith-plugin-fw-checkbox-array__row {
|
297 |
+
margin-bottom : 10px;
|
298 |
+
display : flex;
|
299 |
+
}
|
300 |
+
|
301 |
+
.yith-plugin-fw-checkbox-array__row label {
|
302 |
+
display : inline-block !important;
|
303 |
+
width : auto !important;
|
304 |
+
float : none !important;
|
305 |
+
margin : 0 0 0 10px !important;
|
306 |
+
padding : 0 !important;
|
307 |
+
font-weight : 400 !important;
|
308 |
+
}
|
309 |
+
|
310 |
+
.yith-plugin-fw-checkbox-array__row label small {
|
311 |
+
display : block;
|
312 |
+
line-height : 2em;
|
313 |
+
}
|
314 |
+
|
315 |
+
.rtl .yith-plugin-fw-checkbox-array__row label {
|
316 |
+
margin : 0 10px 0 0 !important;
|
317 |
+
}
|
318 |
+
|
319 |
+
/* ------- Sidebar Layout ------- */
|
320 |
+
.yith-plugin-fw-sidebar-layout input[type="radio"] {
|
321 |
+
display : none;
|
322 |
+
width : 0px;
|
323 |
+
}
|
324 |
+
|
325 |
+
.yith-plugin-fw-sidebar-layout input[type="radio"]:first-child {
|
326 |
+
margin-right : -2px;
|
327 |
+
}
|
328 |
+
|
329 |
+
.yith-plugin-fw-sidebar-layout input[type="radio"] + img {
|
330 |
+
border : 2px solid #fff;
|
331 |
+
padding : 1px;
|
332 |
+
}
|
333 |
+
|
334 |
+
.yith-plugin-fw-sidebar-layout input[type="radio"] + img:hover {
|
335 |
+
cursor : pointer;
|
336 |
+
}
|
337 |
+
|
338 |
+
.yith-plugin-fw-sidebar-layout input[checked] + img {
|
339 |
+
border : 2px solid #f2ad35;
|
340 |
+
padding : 1px;
|
341 |
+
}
|
342 |
+
|
343 |
+
.yith-plugin-fw-sidebar-layout select {
|
344 |
+
vertical-align : 12px;
|
345 |
+
}
|
346 |
+
|
347 |
+
.yit-admin-panel-content-wrap .yith-plugin-fw-sidebar-layout label {
|
348 |
+
font-weight : bold;
|
349 |
+
width : 200px;
|
350 |
+
float : left;
|
351 |
+
line-height : 23px;
|
352 |
+
margin-left : -230px;
|
353 |
+
}
|
354 |
+
|
355 |
+
/* ------- Slider ------- */
|
356 |
+
.yith-plugin-fw .slider {
|
357 |
+
padding-top : 20px;
|
358 |
+
}
|
359 |
+
|
360 |
+
.yith-plugin-fw-slider-container .ui-slider .minCaption {
|
361 |
+
position : absolute;
|
362 |
+
right : 95%;
|
363 |
+
top : -6px;
|
364 |
+
margin-right : 11px;
|
365 |
+
}
|
366 |
+
|
367 |
+
.yith-plugin-fw-slider-container .ui-slider .maxCaption {
|
368 |
+
position : absolute;
|
369 |
+
left : 95%;
|
370 |
+
top : -6px;
|
371 |
+
margin-left : 20px;
|
372 |
+
}
|
373 |
+
|
374 |
+
.yith-plugin-fw-slider-container .ui-slider-horizontal .ui-slider-handle {
|
375 |
+
background : #fff;
|
376 |
+
border : 0px !important;
|
377 |
+
top : -12px !important;
|
378 |
+
border-radius : 50%;
|
379 |
+
width : 27px !important;
|
380 |
+
height : 27px !important;
|
381 |
+
box-sizing : border-box;
|
382 |
+
box-shadow : 0 1px 7px -1px rgba(0, 0, 0, 0.5);
|
383 |
+
font-size : 13px;
|
384 |
+
padding : 6px 0;
|
385 |
+
font-weight : 600;
|
386 |
+
color : #555;
|
387 |
+
text-align : center;
|
388 |
+
}
|
389 |
+
|
390 |
+
.yith-plugin-fw-slider-container .ui-slider.ui-widget-content {
|
391 |
+
background : #ccc;
|
392 |
+
border : none !important;
|
393 |
+
height : 3px !important;
|
394 |
+
border-radius : 3px !important;
|
395 |
+
width : 90%;
|
396 |
+
margin : 15px 5% 20px 5%;
|
397 |
+
}
|
398 |
+
|
399 |
+
.yith-plugin-fw-slider-container .ui-slider.ui-widget-content .ui-widget-header {
|
400 |
+
background : #4b93ff;
|
401 |
+
left : 0px !important;
|
402 |
+
-webkit-border-radius : 3px;
|
403 |
+
-moz-border-radius : 3px;
|
404 |
+
-khtml-border-radius : 3px;
|
405 |
+
border-radius : 3px;
|
406 |
+
}
|
407 |
+
|
408 |
+
/* ------- Select2 ------- */
|
409 |
+
.yith-plugin-fw-select2-wrapper {
|
410 |
+
width : 400px;
|
411 |
+
}
|
412 |
+
|
413 |
+
/* ------- Textarea ------- */
|
414 |
+
.yith-plugin-fw-textarea-editor-field-wrapper {
|
415 |
+
max-width : 1000px;
|
416 |
+
clear : both;
|
417 |
+
}
|
418 |
+
|
419 |
+
.yith-plugin-fw-textarea-editor-field-wrapper textarea.wp-editor-area,
|
420 |
+
.woocommerce table.form-table .yith-plugin-fw-textarea-editor-field-wrapper textarea.wp-editor-area {
|
421 |
+
width : 100%;
|
422 |
+
}
|
423 |
+
|
424 |
+
/* ------- Buttons ------- */
|
425 |
+
.yith-plugin-fw-buttons-field-wrapper {
|
426 |
+
margin-top : 7px;
|
427 |
+
}
|
428 |
+
|
429 |
+
/* ------- Select Images ------- */
|
430 |
+
.yith-plugin-fw-select-images__list {
|
431 |
+
margin : 0;
|
432 |
+
display : flex;
|
433 |
+
flex-wrap : wrap;
|
434 |
+
}
|
435 |
+
|
436 |
+
.yith-plugin-fw-select-images__item {
|
437 |
+
width : calc(20% - 10px);
|
438 |
+
min-width : 150px;
|
439 |
+
margin : 0 10px 10px 0;
|
440 |
+
padding : 10px;
|
441 |
+
box-sizing : border-box;
|
442 |
+
cursor : pointer;
|
443 |
+
transition : all .3s;
|
444 |
+
border : 2px solid #eee;
|
445 |
+
display : flex;
|
446 |
+
flex-direction : column;
|
447 |
+
justify-content : space-between;
|
448 |
+
}
|
449 |
+
|
450 |
+
.yith-plugin-fw-select-images__item:hover,
|
451 |
+
.yith-plugin-fw-select-images__item.yith-plugin-fw-select-images__item--selected {
|
452 |
+
border-color : #07bcce;
|
453 |
+
}
|
454 |
+
|
455 |
+
.yith-plugin-fw-select-images__item__label {
|
456 |
+
text-align : center;
|
457 |
+
font-weight : 600;
|
458 |
+
margin-bottom : 10px;
|
459 |
+
}
|
460 |
+
|
461 |
+
.yith-plugin-fw-select-images__item img {
|
462 |
+
display : block;
|
463 |
+
max-width : 100%;
|
464 |
+
margin : 0 auto;
|
465 |
+
}
|
466 |
+
|
467 |
+
/****************
|
468 |
+
WordPress 5.3 with old panel fixes
|
469 |
+
****************/
|
470 |
+
.yith-plugin-fw-field-wrapper .select2-container .select2-selection--single {
|
471 |
+
height : auto;
|
472 |
+
line-height : 1;
|
473 |
+
}
|
474 |
+
|
475 |
+
.yith-plugin-fw-field-wrapper .select2-container .select2-selection--single .select2-selection__arrow {
|
476 |
+
height : 100%;
|
477 |
+
}
|
478 |
+
|
479 |
+
/****************
|
480 |
+
YITH UI
|
481 |
+
****************/
|
482 |
+
.yith-plugin-fw-banner {
|
483 |
+
width : 100%;
|
484 |
+
height : 45px;
|
485 |
+
background : #cfd9dd url(../images/banner-premium.png) no-repeat;
|
486 |
+
display : flex;
|
487 |
+
align-items : center;
|
488 |
+
padding-right : -23px;
|
489 |
+
}
|
490 |
+
|
491 |
+
.yith-plugin-fw-banner h1 {
|
492 |
+
text-transform : uppercase;
|
493 |
+
color : #0c5777;
|
494 |
+
font-size : 15px;
|
495 |
+
padding : 0 0 0 110px;
|
496 |
+
font-weight : 700;
|
497 |
+
text-align : left;
|
498 |
+
display : inline-block;
|
499 |
+
box-sizing : border-box;
|
500 |
+
}
|
501 |
+
|
502 |
+
.yith-plugin-fw-banner span {
|
503 |
+
font-style : italic;
|
504 |
+
display : block;
|
505 |
+
font-size : 15px;
|
506 |
+
color : #214249;
|
507 |
+
text-transform : none;
|
508 |
+
text-align : right;
|
509 |
+
}
|
510 |
+
|
511 |
+
.yith-plugin-fw-banner a,
|
512 |
+
.yith-plugin-fw-banner a:focus {
|
513 |
+
text-decoration : none;
|
514 |
+
outline : none;
|
515 |
+
box-shadow : none;
|
516 |
+
}
|
517 |
+
|
518 |
+
.yith-plugin-fw-rate {
|
519 |
+
margin : 20px 0;
|
520 |
+
}
|
521 |
+
|
522 |
+
.yith-plugin-fw-rate .dashicons-star-filled {
|
523 |
+
font-size : 12px;
|
524 |
+
margin : 4px -4px;
|
525 |
+
color : #0c5777;
|
526 |
+
}
|
527 |
+
|
528 |
+
.yith-plugin-fw-rate a {
|
529 |
+
text-decoration : none;
|
530 |
+
}
|
531 |
+
|
532 |
+
.yith-plugin-ui a {
|
533 |
+
outline : none;
|
534 |
+
box-shadow : none;
|
535 |
+
}
|
536 |
+
|
537 |
+
.yith-plugin-ui {
|
538 |
+
font-family : -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
|
539 |
+
}
|
540 |
+
|
541 |
+
.yith-plugin-ui #wpwrap h2.nav-tab-wrapper, .yith-plugin-ui #wpbody-content h2.nav-tab-wrapper {
|
542 |
+
margin-top : 10px;
|
543 |
+
}
|
544 |
+
|
545 |
+
.yith-plugin-ui .nav-tab {
|
546 |
+
background-color : #336374;
|
547 |
+
color : #fff;
|
548 |
+
font-size : 13px;
|
549 |
+
padding : 7px 15px;
|
550 |
+
border : 0;
|
551 |
+
margin : 0 4px 0 0;
|
552 |
+
transition : background-color 0.3s linear;
|
553 |
+
float : none;
|
554 |
+
display : inline-block;
|
555 |
+
}
|
556 |
+
|
557 |
+
.yith-plugin-ui .nav-tab.yith-premium {
|
558 |
+
background-color : #c28d31;
|
559 |
+
padding-left : 40px;
|
560 |
+
position : relative;
|
561 |
+
}
|
562 |
+
|
563 |
+
.yith-plugin-ui .nav-tab.yith-premium:before {
|
564 |
+
content : '\f11b';
|
565 |
+
font-family : 'yith-icon';
|
566 |
+
position : absolute;
|
567 |
+
font-size : 18px;
|
568 |
+
top : 50%;
|
569 |
+
left : 12px;
|
570 |
+
line-height : 1em;
|
571 |
+
width : 1em;
|
572 |
+
height : 1em;
|
573 |
+
transform : translateY(-50%);
|
574 |
+
font-weight : 400;
|
575 |
+
}
|
576 |
+
|
577 |
+
.yith-plugin-ui .yith-nav-tab-wrapper .yith-plugin-fw-tab-element:hover > a.nav-tab:not(.nav-tab-active),
|
578 |
+
.yith-plugin-ui .yith-nav-tab-wrapper .nav-tab:not(.nav-tab-active):hover {
|
579 |
+
background-color : #207a92;
|
580 |
+
}
|
581 |
+
|
582 |
+
.yith-plugin-ui .yith-nav-tab-wrapper .yith-plugin-fw-tab-element:hover > a.nav-tab.yith-premium:not(.nav-tab-active),
|
583 |
+
.yith-plugin-ui .yith-nav-tab-wrapper .nav-tab.yith-premium:not(.nav-tab-active):hover {
|
584 |
+
background-color : #d89216;
|
585 |
+
}
|
586 |
+
|
587 |
+
.yith-plugin-ui .nav-tab-active,
|
588 |
+
.yith-plugin-ui .nav-tab-active:hover,
|
589 |
+
.yith-plugin-ui .nav-tab-active:focus,
|
590 |
+
.yith-plugin-ui .nav-tab-active:focus:active {
|
591 |
+
background-color : #fff;
|
592 |
+
color : #336374;
|
593 |
+
box-shadow : 0 3px 0 -1px #fff;
|
594 |
+
border-bottom : 0;
|
595 |
+
}
|
596 |
+
|
597 |
+
.yith-plugin-ui .nav-tab-active.yith-premium,
|
598 |
+
.yith-plugin-ui .nav-tab-active.yith-premium:hover,
|
599 |
+
.yith-plugin-ui .nav-tab-active.yith-premium:focus,
|
600 |
+
.yith-plugin-ui .nav-tab-active.yith-premium:focus:active {
|
601 |
+
background-color : #fff;
|
602 |
+
color : #c28d31;
|
603 |
+
box-shadow : none;
|
604 |
+
}
|
605 |
+
|
606 |
+
.yith-plugin-ui .yith-plugin-fw-tab-element:first-child .nav-tab-active {
|
607 |
+
border-left : 1px solid #ddd;
|
608 |
+
}
|
609 |
+
|
610 |
+
.yith-plugin-ui #plugin-fw-wc {
|
611 |
+
padding-top : 0px;
|
612 |
+
}
|
613 |
+
|
614 |
+
.yith-plugin-ui .form-table td {
|
615 |
+
padding : 15px 20px;
|
616 |
+
}
|
617 |
+
|
618 |
+
.yith-plugin-ui.metaboxes-tab label {
|
619 |
+
color : #33373b;
|
620 |
+
font-size : 14px;
|
621 |
+
margin-left : -248px;
|
622 |
+
}
|
623 |
+
|
624 |
+
.yith-plugin-ui.metaboxes-tab .the-metabox {
|
625 |
+
margin : 40px 0 40px 290px;
|
626 |
+
margin-left : 264px;
|
627 |
+
}
|
628 |
+
|
629 |
+
.yith-plugin-ui.metaboxes-tab label {
|
630 |
+
width : 200px;
|
631 |
+
font-weight : 600;
|
632 |
+
}
|
633 |
+
|
634 |
+
.yith-plugin-ui span.description {
|
635 |
+
color : #716269;
|
636 |
+
font-size : 13px;
|
637 |
+
font-style : normal;
|
638 |
+
font-weight : 400;
|
639 |
+
margin-top : 15px;
|
640 |
+
margin-left : 0;
|
641 |
+
}
|
642 |
+
|
643 |
+
#wpwrap .yith-plugin-ui h2.nav-tab-wrapper, #wpbody-content .yith-plugin-ui h2.nav-tab-wrapper {
|
644 |
+
border : 0;
|
645 |
+
border-bottom : 1px solid #ddd;
|
646 |
+
margin-right : 15px;
|
647 |
+
margin-bottom : 0;
|
648 |
+
background-color : transparent;
|
649 |
+
padding-left : 0;
|
650 |
+
}
|
651 |
+
|
652 |
+
.yith-plugin-ui #plugin-fw-wc table.form-table,
|
653 |
+
.yith-plugin-ui #yith-plugin-fw-panel table.form-table,
|
654 |
+
.yith-plugin-ui table.form-table {
|
655 |
+
border : 1px solid #d8d8d8;
|
656 |
+
border-top : 0;
|
657 |
+
margin-bottom : 40px;
|
658 |
+
}
|
659 |
+
|
660 |
+
.yith-plugin-ui #wpwrap h2.nav-tab-wrapper, .yith-plugin-ui #wpbody-content h2.nav-tab-wrapper {
|
661 |
+
background-color : transparent;
|
662 |
+
border : 0;
|
663 |
+
text-transform : none;
|
664 |
+
border-bottom : 1px solid #ddd;
|
665 |
+
}
|
666 |
+
|
667 |
+
.yith-plugin-ui h2 {
|
668 |
+
color : #2a8db0;
|
669 |
+
font-size : 16px;
|
670 |
+
border : 1px solid #d8d8d8;
|
671 |
+
border-bottom : 0;
|
672 |
+
background-color : #fff;
|
673 |
+
padding : 35px 20px;
|
674 |
+
margin : 0px;
|
675 |
+
}
|
676 |
+
|
677 |
+
.yith-plugin-ui .yith-plugin-fw-custom-tab h2 {
|
678 |
+
border : 0px solid #d8d8d8;
|
679 |
+
padding-left : 0;
|
680 |
+
}
|
681 |
+
|
682 |
+
.yith-plugin-ui #plugin-fw-wc table.form-table th, #yith-plugin-fw-panel table.form-table th.titledesc, .yith-plugin-ui #plugin-fw-wc table.form-table td, #yith-plugin-fw-panel table.form-table td.forminp {
|
683 |
+
padding : 30px 20px;
|
684 |
+
}
|
685 |
+
|
686 |
+
.yith-plugin-ui #plugin-fw-wc table.form-table tr.toggle-element-fixed td, #yith-plugin-fw-panel table.form-table tr.toggle-element-fixed td.forminp {
|
687 |
+
padding : 0 20px 30px;
|
688 |
+
}
|
689 |
+
|
690 |
+
.yith-plugin-ui #plugin-fw-wc h2 + div {
|
691 |
+
background : #fff;
|
692 |
+
border-left : 1px solid #d9d9d9;
|
693 |
+
border-right : 1px solid #d9d9d9;
|
694 |
+
margin : -20px 0 0 0;
|
695 |
+
padding-left : 20px;
|
696 |
+
padding-bottom : 5px;
|
697 |
+
}
|
698 |
+
|
699 |
+
.yith-plugin-ui #plugin-fw-wc h2 + div p, .yith-plugin-ui p.info-box {
|
700 |
+
background : #f1f1f1;
|
701 |
+
font-size : 14px;
|
702 |
+
font-weight : 700;
|
703 |
+
width : 50%;
|
704 |
+
display : block;
|
705 |
+
padding : 15px;
|
706 |
+
margin-bottom : 0;
|
707 |
+
}
|
708 |
+
|
709 |
+
.yith-plugin-ui #plugin-fw-wc h2 + div p:before, .yith-plugin-ui p.info-box:before {
|
710 |
+
content : "\e90e";
|
711 |
+
font-family : yith-icon;
|
712 |
+
font-size : 30px;
|
713 |
+
font-weight : normal;
|
714 |
+
display : block;
|
715 |
+
margin-top : -12px;
|
716 |
+
float : left;
|
717 |
+
margin-right : 15px;
|
718 |
+
}
|
719 |
+
|
720 |
+
.yith-plugin-ui h2:first-child {
|
721 |
+
border-top : 0;
|
722 |
+
}
|
723 |
+
|
724 |
+
/*** Icon ***/
|
725 |
+
.yith-plugin-ui .yith-icon--right-overlay {
|
726 |
+
position : relative;
|
727 |
+
left : -33px;
|
728 |
+
line-height : 36px;
|
729 |
+
width : 0;
|
730 |
+
}
|
731 |
+
|
732 |
+
.rtl .yith-plugin-ui .yith-icon--right-overlay {
|
733 |
+
left : auto;
|
734 |
+
right : -33px;
|
735 |
+
}
|
736 |
+
|
737 |
+
/*** General Input Style ***/
|
738 |
+
|
739 |
+
.yith-plugin-ui .yith-plugin-fw select,
|
740 |
+
.yith-plugin-ui textarea:not(.wp-editor-area),
|
741 |
+
.yith-plugin-ui input[type=number],
|
742 |
+
.yith-plugin-ui.metaboxes-tab input[type=number],
|
743 |
+
.yith-plugin-ui input[type=text],
|
744 |
+
.yith-plugin-ui input[type=email],
|
745 |
+
.yith-plugin-ui input[type=password],
|
746 |
+
.yith-plugin-ui .search-box input[name="s"],
|
747 |
+
.yith-plugin-fw.yith-plugin-ui input[type=text]:not(.select2-search__field),
|
748 |
+
.yith-plugin-fw-panel .yith-plugin-ui table.form-table input[type=text],
|
749 |
+
.woocommerce.yith-plugin-fw-panel .yith-plugin-ui table.form-table input[type=text]:not(.select2-search__field),
|
750 |
+
.woocommerce.yith-plugin-fw-panel .yith-plugin-ui table.form-table select,
|
751 |
+
.woocommerce.yith-plugin-fw-panel .yith-plugin-ui table.form-table textarea:not(.wp-editor-area),
|
752 |
+
.woocommerce .yith-plugin-fw table.form-table input[type=password],
|
753 |
+
.woocommerce.yith-plugin-fw-panel .yith-plugin-ui table.form-table input[type=number],
|
754 |
+
.woocommerce.yith-plugin-fw-panel .yith-plugin-ui table.form-table input[type=text] {
|
755 |
+
border : 1px solid #d8d8d8;
|
756 |
+
border-radius : 8px;
|
757 |
+
padding : 8px 10px;
|
758 |
+
height : 38px;
|
759 |
+
min-width : 90px;
|
760 |
+
box-shadow : none;
|
761 |
+
color : #716269;
|
762 |
+
}
|
763 |
+
|
764 |
+
|
765 |
+
.yith-plugin-ui input::-webkit-input-placeholder {
|
766 |
+
color : #999999;
|
767 |
+
}
|
768 |
+
|
769 |
+
.yith-plugin-ui input:-ms-input-placeholder {
|
770 |
+
color : #999999;
|
771 |
+
}
|
772 |
+
|
773 |
+
.yith-plugin-ui input::-ms-input-placeholder {
|
774 |
+
color : #999999;
|
775 |
+
}
|
776 |
+
|
777 |
+
.yith-plugin-ui input::placeholder {
|
778 |
+
color : #999999;
|
779 |
+
}
|
780 |
+
|
781 |
+
.woocommerce.yith-plugin-fw-panel .yith-plugin-ui table.form-table input[type=number] {
|
782 |
+
min-width : 70px;
|
783 |
+
}
|
784 |
+
|
785 |
+
.yith-plugin-ui textarea:not(.wp-editor-area),
|
786 |
+
.woocommerce.yith-plugin-fw-panel .yith-plugin-ui table.form-table textarea:not(.wp-editor-area) {
|
787 |
+
height : auto;
|
788 |
+
padding : 8px;
|
789 |
+
}
|
790 |
+
|
791 |
+
.yith-plugin-ui input[type=text]:not(.select2-search__field).wp-color-picker,
|
792 |
+
.yith-plugin-ui table.form-table input[type=text].wp-color-picker,
|
793 |
+
.woocommerce.yith-plugin-fw-panel .yith-plugin-ui table.form-table input[type=text].wp-color-picker {
|
794 |
+
border : 0;
|
795 |
+
height : 30px;
|
796 |
+
max-width : 121px;
|
797 |
+
font-size : 11px;
|
798 |
+
padding : 0;
|
799 |
+
}
|
800 |
+
|
801 |
+
.yith-plugin-ui .search-box input[name="s"] {
|
802 |
+
height : 35px;
|
803 |
+
}
|
804 |
+
|
805 |
+
.woocommerce.yith-plugin-fw-panel .yith-plugin-ui table.form-table input[type=text].small-text,
|
806 |
+
.yith-plugin-ui input[type=text].small-text {
|
807 |
+
width : 100px;
|
808 |
+
height : 25px;
|
809 |
+
border : 1px solid #d9d9d9;
|
810 |
+
}
|
811 |
+
|
812 |
+
|
813 |
+
.yith-plugin-ui select:focus,
|
814 |
+
.yith-plugin-ui .yith-plugin-fw select:focus,
|
815 |
+
.woocommerce .yith-plugin-ui table.form-table select:focus,
|
816 |
+
.woocommerce.yith-plugin-fw-panel .yith-plugin-ui table.form-table select:focus,
|
817 |
+
.yith-plugin-ui input[type=text]:not(.select2-search__field):focus,
|
818 |
+
.woocommerce.yith-plugin-fw-panel .yith-plugin-ui table.form-table input[type=text]:not(.select2-search__field):focus,
|
819 |
+
.yith-plugin-ui input[type=number]:focus,
|
820 |
+
.woocommerce.yith-plugin-fw-panel .yith-plugin-ui table.form-table input[type=number]:focus,
|
821 |
+
.yith-plugin-ui textarea:not(.wp-editor-area):focus,
|
822 |
+
.woocommerce.yith-plugin-fw-panel .yith-plugin-ui table.form-table textarea:not(.wp-editor-area):focus {
|
823 |
+
border-color : #a7d9ec;
|
824 |
+
}
|
825 |
+
|
826 |
+
.woocommerce .yith-plugin-ui table.form-table select,
|
827 |
+
.woocommerce.yith-plugin-fw-panel .yith-plugin-ui table.form-table select,
|
828 |
+
.yith-plugin-ui select {
|
829 |
+
-webkit-appearance : none;
|
830 |
+
line-height : 1.2em;
|
831 |
+
min-height : 35px;
|
832 |
+
background : #fff url("../images/arrow_down.svg") no-repeat right center;
|
833 |
+
background-size : 35px 13px;
|
834 |
+
border-radius : 8px;
|
835 |
+
padding : 8px 30px 8px 10px;
|
836 |
+
}
|
837 |
+
|
838 |
+
.yith-plugin-ui .form-table th {
|
839 |
+
width : 200px;
|
840 |
+
padding-right : 50px;
|
841 |
+
}
|
842 |
+
|
843 |
+
/** SELECT 2 **/
|
844 |
+
.yith-plugin-ui .select2-container,
|
845 |
+
.yith-plugin-ui .select2-selection--single {
|
846 |
+
height : auto;
|
847 |
+
padding : 2px;
|
848 |
+
outline : none;
|
849 |
+
}
|
850 |
+
|
851 |
+
.yith-plugin-ui .select2-container .select2-selection--single,
|
852 |
+
.yith-plugin-ui .select2-container .select2-selection--multiple,
|
853 |
+
.yith-plugin-ui .select2-container.select2-container--focus .select2-selection--single,
|
854 |
+
.yith-plugin-ui .select2-container.select2-container--focus .select2-selection--multiple,
|
855 |
+
.yith-plugin-ui .select2-container.select2-container--open .select2-selection--single,
|
856 |
+
.yith-plugin-ui .select2-container.select2-container--open .select2-selection--multiple {
|
857 |
+
margin : 0;
|
858 |
+
border : 0;
|
859 |
+
box-shadow : none !important;
|
860 |
+
}
|
861 |
+
|
862 |
+
.yith-plugin-ui .select2-container .select2-selection--single .select2-selection__arrow {
|
863 |
+
background : none;
|
864 |
+
}
|
865 |
+
|
866 |
+
/* old panel*/
|
867 |
+
|
868 |
+
.yith-plugin-fw-select2-container {
|
869 |
+
z-index : 9999;
|
870 |
+
}
|
871 |
+
|
872 |
+
.yith-plugin-ui span.select2.select2-container.select2-container--default,
|
873 |
+
span.select2.select2-container.select2-container--default.yith-plugin-fw-select2-container {
|
874 |
+
border : 1px solid #d8d8d8;
|
875 |
+
border-radius : 8px;
|
876 |
+
}
|
877 |
+
|
878 |
+
.yith-plugin-ui span.select2.select2-container.select2-container--default:hover,
|
879 |
+
.yith-plugin-ui span.select2.select2-container.select2-container--default:active,
|
880 |
+
.yith-plugin-ui span.select2.select2-container.select2-container--default:focus {
|
881 |
+
border-color : #a7d9ec;
|
882 |
+
}
|
883 |
+
|
884 |
+
.yith-plugin-ui .select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
|
885 |
+
color : #fff;
|
886 |
+
}
|
887 |
+
|
888 |
+
.woocommerce.yith-plugin-fw-panel .yith-plugin-ui table.form-table input[type=text].select2-search__field,
|
889 |
+
.yith-plugin-ui .yith-plugin-fw table.form-table input.select2-search__field {
|
890 |
+
border : 0;
|
891 |
+
padding : 0;
|
892 |
+
height : initial;
|
893 |
+
min-width : 380px;
|
894 |
+
}
|
895 |
+
|
896 |
+
.yith-plugin-ui .select2-container--default .select2-selection--multiple .select2-selection__choice,
|
897 |
+
.yith-plugin-ui .select2-selection__choice {
|
898 |
+
color : #fff;
|
899 |
+
background-color : #4e8ba2;
|
900 |
+
border-radius : 12px;
|
901 |
+
padding : 3px 30px 3px 11px;
|
902 |
+
border-color : #4e8ba2;
|
903 |
+
font-size : 13px;
|
904 |
+
max-width : 100%;
|
905 |
+
box-sizing : border-box;
|
906 |
+
position : relative;
|
907 |
+
white-space : nowrap;
|
908 |
+
overflow : hidden;
|
909 |
+
text-overflow : ellipsis;
|
910 |
+
}
|
911 |
+
|
912 |
+
.wc-wp-version-gte-53 .yith-plugin-ui .select2-container .select2-selection--single .select2-selection__arrow {
|
913 |
+
background-image : none;
|
914 |
+
}
|
915 |
+
|
916 |
+
.yith-plugin-ui .select2-container--default .select2-selection--single .select2-selection__arrow:before {
|
917 |
+
content : "\e900";
|
918 |
+
font-family : 'yith-icon' !important;
|
919 |
+
line-height : 36px;
|
920 |
+
color : #d9d9d9;
|
921 |
+
}
|
922 |
+
|
923 |
+
.yith-plugin-ui .select2-container--default .select2-selection--single .select2-selection__arrow b {
|
924 |
+
display : none;
|
925 |
+
}
|
926 |
+
|
927 |
+
.yith-plugin-fw-select2-container.select2-container--open .select2-dropdown:after {
|
928 |
+
display : none;
|
929 |
+
}
|
930 |
+
|
931 |
+
.yith-plugin-fw-select2-container.select2-container--open .select2-dropdown--below,
|
932 |
+
.yith-plugin-fw-select2-container.select2-container--open .select2-dropdown--above {
|
933 |
+
margin-top : 10px;
|
934 |
+
border-radius : 8px;
|
935 |
+
box-shadow : 0 2px 4px 0 rgba(0, 0, 0, 0.12), 0 2px 10px 0 rgba(0, 0, 0, 0.12) !important;
|
936 |
+
border : 0;
|
937 |
+
}
|
938 |
+
|
939 |
+
.yith-plugin-fw-select2-container.select2-container--open .select2-dropdown--above {
|
940 |
+
margin-top : -10px;
|
941 |
+
}
|
942 |
+
|
943 |
+
.yith-plugin-fw-select2-container.select2-container--default.select2-container--open.select2-container--below .select2-selection--single,
|
944 |
+
.yith-plugin-fw-select2-container.select2-container--default.select2-container--open.select2-container--above .select2-selection--single {
|
945 |
+
border-radius : 8px;
|
946 |
+
}
|
947 |
+
|
948 |
+
.yith-plugin-fw-select2-container .select2-results .select2-results__group, .select2-results .select2-results__option:first-child {
|
949 |
+
border-top-left-radius : 8px;
|
950 |
+
border-top-right-radius : 8px;
|
951 |
+
}
|
952 |
+
|
953 |
+
.yith-plugin-fw-select2-container .select2-results .select2-results__group,
|
954 |
+
.yith-plugin-fw-select2-container .select2-results .select2-results__option:last-child {
|
955 |
+
border-bottom-left-radius : 8px;
|
956 |
+
border-bottom-right-radius : 8px;
|
957 |
+
}
|
958 |
+
|
959 |
+
.yith-plugin-fw-select2-container .select2-dropdown {
|
960 |
+
border : 0;
|
961 |
+
}
|
962 |
+
|
963 |
+
.yith-plugin-fw-select2-container.select2-container--default .select2-results__option[data-selected=true] {
|
964 |
+
background-color : #fff;
|
965 |
+
outline : none;
|
966 |
+
}
|
967 |
+
|
968 |
+
.yith-plugin-fw-select2-container.select2-container--default .select2-results__option--highlighted[aria-selected] {
|
969 |
+
background-color : #e8eff1;
|
970 |
+
color : #4e8ba2;
|
971 |
+
outline : none;
|
972 |
+
}
|
973 |
+
|
974 |
+
.yith-plugin-ui .select2-container--default .select2-selection--multiple .select2-selection__choice__remove,
|
975 |
+
.yith-plugin-fw-panel .select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
|
976 |
+
position : absolute;
|
977 |
+
text-indent : -9999px;
|
978 |
+
right : 2px;
|
979 |
+
padding : 0 7px;
|
980 |
+
margin : 0;
|
981 |
+
}
|
982 |
+
|
983 |
+
.yith-plugin-fw-panel .select2-container--default .select2-selection--multiple .select2-selection__choice__remove:after,
|
984 |
+
.yith-plugin-ui .select2-container--default .select2-selection--multiple .select2-selection__choice__remove:after {
|
985 |
+
float : right;
|
986 |
+
color : #fff;
|
987 |
+
content : "\e906";
|
988 |
+
font-family : 'yith-icon' !important;
|
989 |
+
font-size : 9px;
|
990 |
+
line-height : 21px;
|
991 |
+
text-indent : 0;
|
992 |
+
}
|
993 |
+
|
994 |
+
.yith-plugin-ui .select2-container .select2-selection--multiple,
|
995 |
+
.yith-plugin-ui .select2-container--default.select2-container--focus .select2-selection--multiple,
|
996 |
+
.wc-wp-version-gte-53 .yith-plugin-ui .select2-container.select2-container--open .select2-selection--multiple {
|
997 |
+
border : 0;
|
998 |
+
box-shadow : none;
|
999 |
+
}
|
1000 |
+
|
1001 |
+
.yith-plugin-fw .select2-search input[type=text] {
|
1002 |
+
border : 0;
|
1003 |
+
padding : 0;
|
1004 |
+
height : auto;
|
1005 |
+
}
|
1006 |
+
|
1007 |
+
.yith-plugin-ui .yith-plugin-fw-select-field-wrapper span.yith-icon.yith-icon-magnifier,
|
1008 |
+
.yith-plugin-fw-panel .yith-plugin-fw-select-field-wrapper span.yith-icon.yith-icon-magnifier {
|
1009 |
+
position : absolute;
|
1010 |
+
padding-top : 5px;
|
1011 |
+
}
|
1012 |
+
|
1013 |
+
.yith-plugin-ui input[type=text].select2-search__field {
|
1014 |
+
border : 0;
|
1015 |
+
padding : 0;
|
1016 |
+
height : 30px;
|
1017 |
+
}
|
1018 |
+
|
1019 |
+
.yith-plugin-ui .select2-container--default .select2-search--dropdown .select2-search__field,
|
1020 |
+
.yith-plugin-fw-panel .select2-container--default .select2-search--dropdown .select2-search__field {
|
1021 |
+
border : 1px solid #d9d9d9;
|
1022 |
+
border-radius : 8px;
|
1023 |
+
box-shadow : none;
|
1024 |
+
}
|
1025 |
+
|
1026 |
+
.yith-plugin-ui .select2-dropdown,
|
1027 |
+
.yith-plugin-fw-panel .select2-dropdown {
|
1028 |
+
border : 1px solid #d9d9d9;
|
1029 |
+
}
|
1030 |
+
|
1031 |
+
/** RADIO BUTTON **/
|
1032 |
+
.yith-plugin-ui [type="radio"]:checked,
|
1033 |
+
.yith-plugin-ui [type="radio"]:not(:checked) {
|
1034 |
+
display : none !important;
|
1035 |
+
}
|
1036 |
+
|
1037 |
+
.yith-plugin-ui [type="radio"]:checked + label,
|
1038 |
+
.yith-plugin-ui [type="radio"]:not(:checked) + label {
|
1039 |
+
position : relative;
|
1040 |
+
padding-left : 35px;
|
1041 |
+
cursor : pointer;
|
1042 |
+
line-height : 20px;
|
1043 |
+
display : inline-block;
|
1044 |
+
color : #716269;
|
1045 |
+
font-size : 14px;
|
1046 |
+
}
|
1047 |
+
|
1048 |
+
.yith-plugin-ui [type="radio"]:checked + label:before,
|
1049 |
+
.yith-plugin-ui [type="radio"]:not(:checked) + label:before {
|
1050 |
+
content : '';
|
1051 |
+
position : absolute;
|
1052 |
+
left : 0;
|
1053 |
+
top : 0;
|
1054 |
+
width : 19px;
|
1055 |
+
height : 19px;
|
1056 |
+
border : 1px solid #d8d8d8;
|
1057 |
+
border-radius : 100%;
|
1058 |
+
background : #fff;
|
1059 |
+
}
|
1060 |
+
|
1061 |
+
.yith-plugin-ui [type="radio"]:checked + label:after,
|
1062 |
+
.yith-plugin-ui [type="radio"]:not(:checked) + label:after {
|
1063 |
+
content : '';
|
1064 |
+
width : 13px;
|
1065 |
+
height : 13px;
|
1066 |
+
background : #4e8ba2;
|
1067 |
+
position : absolute;
|
1068 |
+
top : 4px;
|
1069 |
+
left : 4px;
|
1070 |
+
border-radius : 100%;
|
1071 |
+
-webkit-transition : all 0.2s ease;
|
1072 |
+
transition : all 0.2s ease;
|
1073 |
+
}
|
1074 |
+
|
1075 |
+
.yith-plugin-ui [type="radio"]:not(:checked) + label:after {
|
1076 |
+
opacity : 0;
|
1077 |
+
-webkit-transform : scale(0);
|
1078 |
+
transform : scale(0);
|
1079 |
+
}
|
1080 |
+
|
1081 |
+
.yith-plugin-ui [type="radio"]:checked + label:after {
|
1082 |
+
opacity : 1;
|
1083 |
+
-webkit-transform : scale(1);
|
1084 |
+
transform : scale(1);
|
1085 |
+
}
|
1086 |
+
|
1087 |
+
.rtl .yith-plugin-ui [type="radio"]:checked + label,
|
1088 |
+
.rtl .yith-plugin-ui [type="radio"]:not(:checked) + label {
|
1089 |
+
padding-left : 0;
|
1090 |
+
padding-right : 35px;
|
1091 |
+
}
|
1092 |
+
|
1093 |
+
.rtl .yith-plugin-ui [type="radio"]:checked + label:before,
|
1094 |
+
.rtl .yith-plugin-ui [type="radio"]:not(:checked) + label:before {
|
1095 |
+
left : auto;
|
1096 |
+
right : 0;
|
1097 |
+
}
|
1098 |
+
|
1099 |
+
.rtl .yith-plugin-ui [type="radio"]:checked + label:after,
|
1100 |
+
.rtl .yith-plugin-ui [type="radio"]:not(:checked) + label:after {
|
1101 |
+
left : auto;
|
1102 |
+
right : 4px;
|
1103 |
+
}
|
1104 |
+
|
1105 |
+
/** CHECKBOX **/
|
1106 |
+
.yith-plugin-ui input[type="checkbox"] {
|
1107 |
+
-webkit-appearance : none;
|
1108 |
+
background-color : #fff;
|
1109 |
+
border : 1px solid #d8d8d8;
|
1110 |
+
box-shadow : none;
|
1111 |
+
width : 18px;
|
1112 |
+
height : 18px;
|
1113 |
+
border-radius : 3px;
|
1114 |
+
display : inline-block;
|
1115 |
+
position : relative;
|
1116 |
+
}
|
1117 |
+
|
1118 |
+
.yith-plugin-ui input[type="checkbox"]:checked {
|
1119 |
+
background-color : #4e8ba2;
|
1120 |
+
border-color : #488197;
|
1121 |
+
}
|
1122 |
+
|
1123 |
+
.yith-plugin-ui .forminp-checkbox span.description.inline {
|
1124 |
+
margin-left : 10px;
|
1125 |
+
}
|
1126 |
+
|
1127 |
+
.yith-plugin-ui input[type="checkbox"]:checked:before {
|
1128 |
+
display : none;
|
1129 |
+
}
|
1130 |
+
|
1131 |
+
.yith-plugin-ui input[type="checkbox"]:checked:after {
|
1132 |
+
content : "\e905";
|
1133 |
+
font-family : 'yith-icon';
|
1134 |
+
font-size : 10px;
|
1135 |
+
position : absolute;
|
1136 |
+
font-weight : 600;
|
1137 |
+
top : 8px;
|
1138 |
+
left : 3px;
|
1139 |
+
color : #fff;
|
1140 |
+
}
|
1141 |
+
|
1142 |
+
/** ONOFF **/
|
1143 |
+
.yith-plugin-ui .yith-plugin-fw-onoff-container input[type="checkbox"] {
|
1144 |
+
display : none;
|
1145 |
+
}
|
1146 |
+
|
1147 |
+
.yith-plugin-ui .yith-plugin-fw-onoff-container input + span {
|
1148 |
+
border : 1px solid #d8d8d8;
|
1149 |
+
background-color : #fff;
|
1150 |
+
width : 60px;
|
1151 |
+
height : 24px;
|
1152 |
+
line-height : 14px;
|
1153 |
+
padding : 4px;
|
1154 |
+
box-sizing : border-box;
|
1155 |
+
}
|
1156 |
+
|
1157 |
+
.yith-plugin-ui .yith-plugin-fw-onoff-container input + span:before {
|
1158 |
+
background-color : #d8d8d8;
|
1159 |
+
}
|
1160 |
+
|
1161 |
+
.yith-plugin-ui .yith-plugin-fw-onoff-container input + span:before {
|
1162 |
+
width : 13px;
|
1163 |
+
height : 13px;
|
1164 |
+
top : 5px;
|
1165 |
+
left : 6px;
|
1166 |
+
background-color : #d8d8d8;
|
1167 |
+
}
|
1168 |
+
|
1169 |
+
.yith-plugin-ui .yith-plugin-fw-onoff-container input + span:after {
|
1170 |
+
content : attr(data-text-off);
|
1171 |
+
height : 14px;
|
1172 |
+
font-size : 12px;
|
1173 |
+
font-weight : 600;
|
1174 |
+
padding-left : 18px;
|
1175 |
+
color : #979797;
|
1176 |
+
display : block;
|
1177 |
+
white-space : nowrap;
|
1178 |
+
text-align : center;
|
1179 |
+
}
|
1180 |
+
|
1181 |
+
.yith-plugin-ui .yith-plugin-fw-onoff-container input:checked + span,
|
1182 |
+
.yith-plugin-ui .yith-plugin-fw-onoff-container input.onoffchecked + span {
|
1183 |
+
background-color : #fff;
|
1184 |
+
border-color : #98aa36;
|
1185 |
+
}
|
1186 |
+
|
1187 |
+
.yith-plugin-ui .yith-plugin-fw-onoff-container input:checked + span:before,
|
1188 |
+
.yith-plugin-ui.yith-plugin-fw-onoff-container input.onoffchecked + span:before {
|
1189 |
+
background-color : #98aa36;
|
1190 |
+
left : 38px;
|
1191 |
+
}
|
1192 |
+
|
1193 |
+
.yith-plugin-ui .yith-plugin-fw-onoff-container input:checked + span:after,
|
1194 |
+
.yith-plugin-ui.yith-plugin-fw-onoff-container input.onoffchecked + span:after {
|
1195 |
+
content : attr(data-text-on);
|
1196 |
+
color : #98aa36;
|
1197 |
+
height : 14px;
|
1198 |
+
font-size : 12px;
|
1199 |
+
font-weight : 600;
|
1200 |
+
padding-left : 0;
|
1201 |
+
padding-right : 18px;
|
1202 |
+
display : block;
|
1203 |
+
white-space : nowrap;
|
1204 |
+
text-align : center;
|
1205 |
+
}
|
1206 |
+
|
1207 |
+
.yith-plugin-ui .yith-plugin-fw-onoff-container input + span {
|
1208 |
+
text-indent : 0;
|
1209 |
+
}
|
1210 |
+
|
1211 |
+
|
1212 |
+
/**
|
1213 |
+
DATEPICKER
|
1214 |
+
*/
|
1215 |
+
.yith-plugin-ui .yith-plugin-fw-datepicker + .yith-icon-calendar,
|
1216 |
+
.yith-plugin-fw-datepicker + .yith-icon-calendar {
|
1217 |
+
color : #ccc;
|
1218 |
+
font-size : 18px;
|
1219 |
+
}
|
1220 |
+
|
1221 |
+
div#ui-datepicker-div.yith-plugin-fw-datepicker-div {
|
1222 |
+
border : 0;
|
1223 |
+
box-shadow : 0 2px 4px 0 rgba(0, 0, 0, 0.12), 0 2px 10px 0 rgba(0, 0, 0, 0.12) !important;
|
1224 |
+
}
|
1225 |
+
|
1226 |
+
#ui-datepicker-div.yith-plugin-fw-datepicker-div .ui-datepicker-header.ui-widget-header {
|
1227 |
+
background : #4e8ba2;
|
1228 |
+
color : #fff;
|
1229 |
+
font-size : 11px;
|
1230 |
+
line-height : 25px;
|
1231 |
+
border : 0;
|
1232 |
+
min-height : 25px;
|
1233 |
+
}
|
1234 |
+
|
1235 |
+
#ui-datepicker-div.yith-plugin-fw-datepicker-div .ui-datepicker-title {
|
1236 |
+
line-height : 25px;
|
1237 |
+
}
|
1238 |
+
|
1239 |
+
#ui-datepicker-div.yith-plugin-fw-datepicker-div.ui-datepicker th {
|
1240 |
+
color : #716269;
|
1241 |
+
}
|
1242 |
+
|
1243 |
+
#ui-datepicker-div.yith-plugin-fw-datepicker-div .ui-widget-header .ui-icon,
|
1244 |
+
#ui-datepicker-div.yith-plugin-fw-datepicker-div .ui-widget-header .ui-state-hover,
|
1245 |
+
#ui-datepicker-div.yith-plugin-fw-datepicker-div.ui-datepicker .ui-datepicker-prev,
|
1246 |
+
#ui-datepicker-div.yith-plugin-fw-datepicker-div.ui-datepicker .ui-datepicker-next,
|
1247 |
+
#ui-datepicker-div.yith-plugin-fw-datepicker-div .ui-icon.ui-icon-circle-triangle-w,
|
1248 |
+
#ui-datepicker-div.yith-plugin-fw-datepicker-div .ui-icon.ui-icon-circle-triangle-e {
|
1249 |
+
background : none;
|
1250 |
+
content : "";
|
1251 |
+
border : 0;
|
1252 |
+
text-indent : 0;
|
1253 |
+
width : 15px;
|
1254 |
+
height : 20px;
|
1255 |
+
display : block;
|
1256 |
+
overflow : hidden;
|
1257 |
+
}
|
1258 |
+
|
1259 |
+
.yith-plugin-ui .yith-password-wrapper {
|
1260 |
+
display : inline-block;
|
1261 |
+
width : auto;
|
1262 |
+
position : relative;
|
1263 |
+
}
|
1264 |
+
|
1265 |
+
.yith-plugin-ui .yith-password-wrapper .yith-password-eye-closed:before,
|
1266 |
+
.yith-plugin-ui .yith-password-wrapper .yith-password-eye:before {
|
1267 |
+
content : '\e911';
|
1268 |
+
color : #999;
|
1269 |
+
font-family : 'yith-icon';
|
1270 |
+
font-size : 20px;
|
1271 |
+
font-weight : normal;
|
1272 |
+
width : 15px;
|
1273 |
+
display : block;
|
1274 |
+
position : absolute;
|
1275 |
+
right : 13px;
|
1276 |
+
top : 0;
|
1277 |
+
line-height : 38px;
|
1278 |
+
bottom : 0;
|
1279 |
+
cursor : pointer;
|
1280 |
+
}
|
1281 |
+
|
1282 |
+
.yith-plugin-ui .yith-password-wrapper .yith-password-eye-closed:before {
|
1283 |
+
content : '\e912';
|
1284 |
+
}
|
1285 |
+
|
1286 |
+
#ui-datepicker-div.yith-plugin-fw-datepicker-div .ui-icon.ui-icon-circle-triangle-w:before {
|
1287 |
+
content : "\e901";
|
1288 |
+
color : #fff;
|
1289 |
+
font-family : 'yith-icon';
|
1290 |
+
font-size : 12px;
|
1291 |
+
font-weight : normal;
|
1292 |
+
width : 15px;
|
1293 |
+
display : block;
|
1294 |
+
}
|
1295 |
+
|
1296 |
+
#ui-datepicker-div.yith-plugin-fw-datepicker-div .ui-icon.ui-icon-circle-triangle-e:before {
|
1297 |
+
content : "\e902";
|
1298 |
+
color : #fff;
|
1299 |
+
text-indent : 0;
|
1300 |
+
font-family : 'yith-icon';
|
1301 |
+
font-size : 12px;
|
1302 |
+
font-weight : normal;
|
1303 |
+
width : 15px;
|
1304 |
+
display : block;
|
1305 |
+
}
|
1306 |
+
|
1307 |
+
/* arrow */
|
1308 |
+
#ui-datepicker-div.yith-plugin-fw-datepicker-div.ui-datepicker .ui-datepicker-prev,
|
1309 |
+
#ui-datepicker-div.yith-plugin-fw-datepicker-div.ui-datepicker .ui-datepicker-next,
|
1310 |
+
#ui-datepicker-div.yith-plugin-fw-datepicker-div .ui-datepicker-prev.ui-datepicker-prev-hover,
|
1311 |
+
#ui-datepicker-div.yith-plugin-fw-datepicker-div .ui-datepicker-prev.ui-datepicker-next-hover {
|
1312 |
+
top : 1px;
|
1313 |
+
cursor : pointer;
|
1314 |
+
}
|
1315 |
+
|
1316 |
+
#ui-datepicker-div.yith-plugin-fw-datepicker-div .ui-datepicker-prev.ui-datepicker-prev,
|
1317 |
+
#ui-datepicker-div.yith-plugin-fw-datepicker-div .ui-datepicker-prev.ui-datepicker-prev-hover {
|
1318 |
+
left : 5px;
|
1319 |
+
}
|
1320 |
+
|
1321 |
+
#ui-datepicker-div.yith-plugin-fw-datepicker-div.ui-datepicker .ui-datepicker-next,
|
1322 |
+
#ui-datepicker-div.yith-plugin-fw-datepicker-div .ui-datepicker-next.ui-datepicker-next-hover {
|
1323 |
+
right : 1px;
|
1324 |
+
}
|
1325 |
+
|
1326 |
+
#ui-datepicker-div.yith-plugin-fw-datepicker-div.ui-datepicker table {
|
1327 |
+
font-size : 10px;
|
1328 |
+
}
|
1329 |
+
|
1330 |
+
#ui-datepicker-div.yith-plugin-fw-datepicker-div .ui-state-default,
|
1331 |
+
#ui-datepicker-div.yith-plugin-fw-datepicker-div.ui-widget-content .ui-state-default,
|
1332 |
+
#ui-datepicker-div.yith-plugin-fw-datepicker-div .ui-widget-header .ui-state-default {
|
1333 |
+
background : #fff;
|
1334 |
+
border : 1px solid #d9d9d9;
|
1335 |
+
|
1336 |
+
}
|
1337 |
+
|
1338 |
+
#ui-datepicker-div.yith-plugin-fw-datepicker-div .ui-state-hover,
|
1339 |
+
#ui-datepicker-div.yith-plugin-fw-datepicker-div.ui-widget-content .ui-state-hover,
|
1340 |
+
#ui-datepicker-div.yith-plugin-fw-datepicker-div a.ui-state-default:focus,
|
1341 |
+
#ui-datepicker-div.yith-plugin-fw-datepicker-div.ui-widget-content .ui-state-focus,
|
1342 |
+
#ui-datepicker-div.yith-plugin-fw-datepicker-div .ui-widget-header .ui-state-focus {
|
1343 |
+
background : #ebf1f3;
|
1344 |
+
border : 1px solid #bfd5dd;
|
1345 |
+
outline : none;
|
1346 |
+
box-shadow : none;
|
1347 |
+
}
|
1348 |
+
|
1349 |
+
#ui-datepicker-div.yith-plugin-fw-datepicker-div .ui-widget-header .ui-state-hover,
|
1350 |
+
.woocommerce #ui-datepicker-div.yith-plugin-fw-datepicker-div .ui-state-focus {
|
1351 |
+
background : none;
|
1352 |
+
border : 0;
|
1353 |
+
}
|
1354 |
+
|
1355 |
+
.rtl #ui-datepicker-div.yith-plugin-fw-datepicker-div .ui-datepicker-prev.ui-datepicker-prev,
|
1356 |
+
.rtl #ui-datepicker-div.yith-plugin-fw-datepicker-div .ui-datepicker-prev.ui-datepicker-prev-hover {
|
1357 |
+
left : auto;
|
1358 |
+
right : 5px;
|
1359 |
+
}
|
1360 |
+
|
1361 |
+
.rtl #ui-datepicker-div.yith-plugin-fw-datepicker-div.ui-datepicker .ui-datepicker-next,
|
1362 |
+
.rtl #ui-datepicker-div.yith-plugin-fw-datepicker-div .ui-datepicker-next.ui-datepicker-next-hover {
|
1363 |
+
right : auto;
|
1364 |
+
left : 1px;
|
1365 |
+
}
|
1366 |
+
|
1367 |
+
/** colorpicker **/
|
1368 |
+
.yith-plugin-ui .iris-slider-offset.ui-slider.ui-widget-content {
|
1369 |
+
background : transparent !important;
|
1370 |
+
height : auto !important;
|
1371 |
+
}
|
1372 |
+
|
1373 |
+
.yith-plugin-ui .yith-plugin-fw-field-wrapper .yith-colorpicker-group:not(:first-child) {
|
1374 |
+
margin-top : 20px;
|
1375 |
+
}
|
1376 |
+
|
1377 |
+
.yith-plugin-ui .yith-plugin-fw-field-wrapper .iris-picker,
|
1378 |
+
.yith-plugin-ui .yith-plugin-fw-field-wrapper .wp-picker-holder {
|
1379 |
+
display : none !important;
|
1380 |
+
}
|
1381 |
+
|
1382 |
+
.yith-plugin-ui .yith-plugin-fw-field-wrapper .wp-picker-input-wrap,
|
1383 |
+
.yith-plugin-ui .yith-plugin-fw-field-wrapper .wp-picker-input-wrap > * {
|
1384 |
+
display : inline-block !important;
|
1385 |
+
vertical-align : middle;
|
1386 |
+
}
|
1387 |
+
|
1388 |
+
.yith-plugin-ui .yith-plugin-fw-field-wrapper .wp-picker-active .iris-picker,
|
1389 |
+
.yith-plugin-ui .yith-plugin-fw-field-wrapper .wp-picker-active .wp-picker-holder {
|
1390 |
+
display : block !important;
|
1391 |
+
}
|
1392 |
+
|
1393 |
+
.woocommerce .yith-plugin-ui .wp-picker-container .iris-picker, .yith-plugin-ui .wp-picker-container .iris-picker {
|
1394 |
+
z-index : 100;
|
1395 |
+
position : absolute;
|
1396 |
+
margin-top : 20px;
|
1397 |
+
border : 1px solid #d8d8d8;
|
1398 |
+
border-radius : 4px;
|
1399 |
+
box-shadow : 0 1px 3px rgba(0, 0, 0, .2);
|
1400 |
+
}
|
1401 |
+
|
1402 |
+
.yith-plugin-ui .yith-plugin-fw input[type=text].wp-color-picker {
|
1403 |
+
border : 0;
|
1404 |
+
padding : 2px 5px;
|
1405 |
+
height : 30px;
|
1406 |
+
}
|
1407 |
+
|
1408 |
+
.yith-plugin-ui .wp-color-result-text {
|
1409 |
+
display : none;
|
1410 |
+
}
|
1411 |
+
|
1412 |
+
.yith-plugin-ui .wp-picker-container .wp-color-result.button {
|
1413 |
+
width : 30px;
|
1414 |
+
height : 30px;
|
1415 |
+
box-shadow : none;
|
1416 |
+
border : 1px solid #d9d9d9;
|
1417 |
+
margin-bottom : 0;
|
1418 |
+
padding : 0;
|
1419 |
+
display : inline-block;
|
1420 |
+
vertical-align : middle;
|
1421 |
+
box-sizing : content-box;
|
1422 |
+
}
|
1423 |
+
|
1424 |
+
.yith-plugin-ui .wp-picker-default-custom {
|
1425 |
+
cursor : pointer;
|
1426 |
+
width : 25px;
|
1427 |
+
padding : 0 5px;
|
1428 |
+
display : inline-block;
|
1429 |
+
vertical-align : middle;
|
1430 |
+
position : relative;
|
1431 |
+
}
|
1432 |
+
|
1433 |
+
.yith-plugin-ui .wp-picker-default-custom input.button {
|
1434 |
+
opacity : 0;
|
1435 |
+
margin : 0;
|
1436 |
+
padding : 0;
|
1437 |
+
position : absolute;
|
1438 |
+
top : 0;
|
1439 |
+
right : 0;
|
1440 |
+
left : 0;
|
1441 |
+
bottom : 0;
|
1442 |
+
z-index : 2;
|
1443 |
+
}
|
1444 |
+
|
1445 |
+
.yith-plugin-ui .wp-picker-default-custom:before {
|
1446 |
+
content : "\e91a";
|
1447 |
+
text-indent : 0;
|
1448 |
+
font-family : 'yith-icon';
|
1449 |
+
font-size : 16px;
|
1450 |
+
color : #d8d8d8;
|
1451 |
+
font-weight : normal;
|
1452 |
+
width : 15px;
|
1453 |
+
display : block;
|
1454 |
+
background : none;
|
1455 |
+
line-height : 20px;
|
1456 |
+
margin-left : 8px;
|
1457 |
+
}
|
1458 |
+
|
1459 |
+
.yith-plugin-ui .wp-picker-container {
|
1460 |
+
width : auto;
|
1461 |
+
display : inline-block;
|
1462 |
+
border : 1px solid #d9d9d9;
|
1463 |
+
border-radius : 8px;
|
1464 |
+
padding : 5px;
|
1465 |
+
}
|
1466 |
+
|
1467 |
+
.yith-plugin-ui .iris-picker .iris-square-inner {
|
1468 |
+
box-shadow : 0 0 0 1px #d9d9d9 inset;
|
1469 |
+
}
|
1470 |
+
|
1471 |
+
.yith-plugin-ui .iris-picker .iris-square-value {
|
1472 |
+
width : 0;
|
1473 |
+
height : 0;
|
1474 |
+
background : transparent;
|
1475 |
+
border : 0;
|
1476 |
+
}
|
1477 |
+
|
1478 |
+
.yith-plugin-ui .yith-single-colorpicker {
|
1479 |
+
display : inline-block;
|
1480 |
+
width : 220px;
|
1481 |
+
margin-bottom : 10px;
|
1482 |
+
}
|
1483 |
+
|
1484 |
+
.yith-plugin-ui .yith-single-colorpicker > label {
|
1485 |
+
display : block;
|
1486 |
+
font-size : 11px;
|
1487 |
+
font-weight : 600;
|
1488 |
+
margin : 0 0 10px 0;
|
1489 |
+
text-transform : uppercase;
|
1490 |
+
}
|
1491 |
+
|
1492 |
+
.yith-plugin-ui .the-metabox.multi-colorpicker span.description,
|
1493 |
+
.yith-plugin-ui .yith-plugin-fw-panel-wc-row.multi-colorpicker span.description,
|
1494 |
+
.yith-plugin-ui .yith-plugin-fw-multi-colorpicker-field-wrapper span.description {
|
1495 |
+
margin-top : 0;
|
1496 |
+
}
|
1497 |
+
|
1498 |
+
/* RANGE SLIDER */
|
1499 |
+
.yith-plugin-ui .yith-plugin-fw-slider-container .ui-slider-horizontal .ui-slider-handle {
|
1500 |
+
top : -45px !important;
|
1501 |
+
}
|
1502 |
+
|
1503 |
+
.yith-plugin-ui .yith-plugin-fw-slider-container .ui-slider-horizontal .ui-slider-handle {
|
1504 |
+
position : absolute;
|
1505 |
+
top : -33px;
|
1506 |
+
left : 0;
|
1507 |
+
width : auto !important;
|
1508 |
+
height : auto !important;
|
1509 |
+
padding : 2px 8px;
|
1510 |
+
margin-left : -15px;
|
1511 |
+
font-size : 12px;
|
1512 |
+
line-height : 20px;
|
1513 |
+
color : #4e8ba2;
|
1514 |
+
text-align : center;
|
1515 |
+
background-color : #fff;
|
1516 |
+
border : 1px solid #fff;
|
1517 |
+
border-radius : 3px;
|
1518 |
+
-webkit-transition : opacity .3s ease-in-out 0s;
|
1519 |
+
transition : opacity .3s ease-in-out 0s;
|
1520 |
+
box-shadow : 0px 1px 7px 0px rgba(1, 1, 1, 0.13);
|
1521 |
+
}
|
1522 |
+
|
1523 |
+
.yith-plugin-ui .yith-plugin-fw-slider-container .ui-slider-horizontal .ui-slider-handle:before {
|
1524 |
+
position : absolute;
|
1525 |
+
bottom : -3px;
|
1526 |
+
left : 50%;
|
1527 |
+
display : inline-block;
|
1528 |
+
width : 6px;
|
1529 |
+
height : 6px;
|
1530 |
+
margin-left : -3px;
|
1531 |
+
content : "";
|
1532 |
+
background-color : #fff;
|
1533 |
+
-webkit-transform : rotate(-45deg);
|
1534 |
+
-ms-transform : rotate(-45deg);
|
1535 |
+
transform : rotate(-45deg);
|
1536 |
+
}
|
1537 |
+
|
1538 |
+
.yith-plugin-ui .yith-plugin-fw-slider-container .ui-slider.ui-widget-content .ui-widget-header {
|
1539 |
+
background : #4e8ba2;
|
1540 |
+
}
|
1541 |
+
|
1542 |
+
.yith-plugin-ui .yith-plugin-fw-slider-container .ui-slider-horizontal .ui-slider-handle:after {
|
1543 |
+
content : '';
|
1544 |
+
width : 17px;
|
1545 |
+
height : 17px;
|
1546 |
+
display : block;
|
1547 |
+
position : absolute;
|
1548 |
+
background : #fff;
|
1549 |
+
top : 37px;
|
1550 |
+
border-radius : 50%;
|
1551 |
+
box-shadow : 0px 1px 6px 0px rgba(1, 1, 1, 0.25);
|
1552 |
+
cursor : grab;
|
1553 |
+
}
|
1554 |
+
|
1555 |
+
.yith-plugin-ui .yith-plugin-fw-slider-container .ui-slider-horizontal .ui-slider-handle:active:after {
|
1556 |
+
cursor : grabbing;
|
1557 |
+
}
|
1558 |
+
|
1559 |
+
.yith-plugin-ui .yith-plugin-fw-slider-container .ui-slider.ui-widget-content {
|
1560 |
+
height : 5px !important;
|
1561 |
+
}
|
1562 |
+
|
1563 |
+
.yith-plugin-ui .yith-plugin-fw-slider-container .ui-slider .minCaption,
|
1564 |
+
.yith-plugin-ui .yith-plugin-fw-slider-container .ui-slider .maxCaption {
|
1565 |
+
font-weight : 700;
|
1566 |
+
font-size : 12px;
|
1567 |
+
}
|
1568 |
+
|
1569 |
+
|
1570 |
+
/* ADD_BOX AND TOGGLE */
|
1571 |
+
.yith-plugin-ui .yith-add-box,
|
1572 |
+
.yith-plugin-ui .yith-toggle-row {
|
1573 |
+
width : 70%;
|
1574 |
+
border : 1px solid #d9d9d9;
|
1575 |
+
box-shadow : none;
|
1576 |
+
border-radius : 4px;
|
1577 |
+
margin : 20px 0;
|
1578 |
+
padding : 10px;
|
1579 |
+
box-sizing : border-box;
|
1580 |
+
background : white;
|
1581 |
+
}
|
1582 |
+
|
1583 |
+
.yith-plugin-ui .yith-toggle-row {
|
1584 |
+
cursor : pointer;
|
1585 |
+
transition : all ease 0.5s;
|
1586 |
+
}
|
1587 |
+
|
1588 |
+
.yith-plugin-ui .yith-toggle-row.fixed {
|
1589 |
+
margin : 0;
|
1590 |
+
}
|
1591 |
+
|
1592 |
+
.yith-plugin-ui .yith-toggle-row.highlight {
|
1593 |
+
transition : all ease 0.5s;
|
1594 |
+
/*box-shadow: 0 0 7px rgb(81, 117, 129);*/
|
1595 |
+
box-shadow : 0 0 7px rgb(30, 140, 190);
|
1596 |
+
|
1597 |
+
display : block;
|
1598 |
+
}
|
1599 |
+
|
1600 |
+
.yith-plugin-ui .yith-add-box {
|
1601 |
+
padding : 25px;
|
1602 |
+
display : none;
|
1603 |
+
}
|
1604 |
+
|
1605 |
+
.yith-plugin-ui .yith-toggle-title {
|
1606 |
+
position : relative;
|
1607 |
+
}
|
1608 |
+
|
1609 |
+
.yith-plugin-ui #plugin-fw-wc .yith-toggle-title h3,
|
1610 |
+
.yith-plugin-ui.metaboxes-tab h3,
|
1611 |
+
.yith-plugin-ui .yith-toggle-title h3,
|
1612 |
+
.metaboxes-tab.yith-plugin-ui .yith-toggle-title h3 {
|
1613 |
+
padding : 0px 20px 0px 30px;
|
1614 |
+
margin : 3px 0;
|
1615 |
+
display : inline-block;
|
1616 |
+
position : relative;
|
1617 |
+
min-width : 173px;
|
1618 |
+
box-sizing : border-box;
|
1619 |
+
font-weight : 600;
|
1620 |
+
font-size : 15px;
|
1621 |
+
color : #23282d;
|
1622 |
+
text-transform : inherit;
|
1623 |
+
}
|
1624 |
+
|
1625 |
+
.yith-plugin-ui .yith-toggle-title .subtitle {
|
1626 |
+
padding-left : 0;
|
1627 |
+
padding-top : 8px;
|
1628 |
+
font-size : 12px;
|
1629 |
+
}
|
1630 |
+
|
1631 |
+
.yith-plugin-ui .yith-toggle {
|
1632 |
+
position : absolute;
|
1633 |
+
width : 25px;
|
1634 |
+
cursor : pointer;
|
1635 |
+
left : 0;
|
1636 |
+
top : 0;
|
1637 |
+
bottom : 0;
|
1638 |
+
margin : auto;
|
1639 |
+
display : flex;
|
1640 |
+
align-items : center;
|
1641 |
+
box-sizing : border-box;
|
1642 |
+
align-items : center;
|
1643 |
+
justify-content : center;
|
1644 |
+
}
|
1645 |
+
|
1646 |
+
.yith-plugin-ui .yith-toggle > span:before {
|
1647 |
+
color : #405e69;
|
1648 |
+
}
|
1649 |
+
|
1650 |
+
.yith-plugin-ui .yith-toggle > span {
|
1651 |
+
position : absolute;
|
1652 |
+
/* right : 50%; */
|
1653 |
+
transition : transform .3s;
|
1654 |
+
line-height : 1;
|
1655 |
+
font-size : 13px;
|
1656 |
+
font-weight : 600;
|
1657 |
+
}
|
1658 |
+
|
1659 |
+
|
1660 |
+
.yith-plugin-ui .yith-toggle-row-opened .yith-toggle span {
|
1661 |
+
transform : rotateZ(90deg);
|
1662 |
+
}
|
1663 |
+
|
1664 |
+
.yith-plugin-ui .yith-toggle-content {
|
1665 |
+
display : none;
|
1666 |
+
position : relative;
|
1667 |
+
padding : 30px 25px;
|
1668 |
+
}
|
1669 |
+
|
1670 |
+
.yith-plugin-ui .yith-toggle-row-opened .yith-toggle-content {
|
1671 |
+
/* display: block;*/
|
1672 |
+
}
|
1673 |
+
|
1674 |
+
.yith-plugin-ui .yith-add-box-row,
|
1675 |
+
.yith-plugin-ui .yith-toggle-content .yith-toggle-content-row {
|
1676 |
+
display : table;
|
1677 |
+
margin-bottom : 40px;
|
1678 |
+
}
|
1679 |
+
|
1680 |
+
.yith-plugin-ui .yith-add-box-row > label,
|
1681 |
+
.yith-plugin-ui .yith-toggle-content .yith-toggle-content-row > label {
|
1682 |
+
display : table-cell;
|
1683 |
+
min-width : 180px;
|
1684 |
+
padding-right : 20px;
|
1685 |
+
color : #33373b;
|
1686 |
+
font-size : 14px;
|
1687 |
+
vertical-align : top;
|
1688 |
+
font-weight : 600;
|
1689 |
+
}
|
1690 |
+
|
1691 |
+
.yith-plugin-ui .yith-add-box-row .yith-plugin-fw-field-wrapper:not(.yith-plugin-fw-title-field-wrapper),
|
1692 |
+
.yith-plugin-ui .yith-plugin-fw-field-wrapper:not(.yith-plugin-fw-title-field-wrapper) {
|
1693 |
+
/* display: table-cell;*/
|
1694 |
+
width : auto;
|
1695 |
+
float : none;
|
1696 |
+
vertical-align : middle;
|
1697 |
+
position : relative;
|
1698 |
+
}
|
1699 |
+
|
1700 |
+
.yith-plugin-ui .yith-add-box-row span.yith-icon,
|
1701 |
+
.yith-plugin-ui .yith-toggle-content .yith-toggle-content-row span.yith-icon {
|
1702 |
+
position : absolute;
|
1703 |
+
right : 15px;
|
1704 |
+
top : 0;
|
1705 |
+
bottom : 0;
|
1706 |
+
}
|
1707 |
+
|
1708 |
+
.yith-plugin-ui .yith-add-box-buttons,
|
1709 |
+
.yith-plugin-ui .yith-toggle-content-buttons {
|
1710 |
+
text-align : right;
|
1711 |
+
}
|
1712 |
+
|
1713 |
+
.yith-plugin-ui .yith-toggle-onoff {
|
1714 |
+
position : absolute;
|
1715 |
+
cursor : pointer;
|
1716 |
+
right : 0;
|
1717 |
+
}
|
1718 |
+
|
1719 |
+
.yith-plugin-ui .yith-toggle_wrapper.ui-sortable .yith-toggle-onoff {
|
1720 |
+
right : 30px;
|
1721 |
+
}
|
1722 |
+
|
1723 |
+
.yith-plugin-ui .yith-toggle-row .yith-icon-drag {
|
1724 |
+
position : absolute;
|
1725 |
+
right : 2px;
|
1726 |
+
top : 50%;
|
1727 |
+
transform : translateY(-50%);
|
1728 |
+
font-size : 18px;
|
1729 |
+
}
|
1730 |
+
|
1731 |
+
.yith-plugin-ui .yith-toggle-row.with-subtitle .yith-toggle-onoff {
|
1732 |
+
top : 25%;
|
1733 |
+
}
|
1734 |
+
|
1735 |
+
/** SPINNER **/
|
1736 |
+
.yith-plugin-ui .spinner {
|
1737 |
+
vertical-align : -5px;
|
1738 |
+
float : none;
|
1739 |
+
}
|
1740 |
+
|
1741 |
+
.yith-plugin-ui .spinner.show {
|
1742 |
+
visibility : visible;
|
1743 |
+
}
|
1744 |
+
|
1745 |
+
/* LIST TABLE */
|
1746 |
+
.yith-plugin-ui .form-table .list-table td {
|
1747 |
+
padding : 15px 0px;
|
1748 |
+
}
|
1749 |
+
|
1750 |
+
.woocommerce.yith-plugin-fw-panel .yith-plugin-ui table.form-table .bulkactions select {
|
1751 |
+
border : 1px solid #d8d8d8;
|
1752 |
+
max-width : 200px;
|
1753 |
+
max-height : 30px;
|
1754 |
+
padding : 0 10px;
|
1755 |
+
}
|
1756 |
+
|
1757 |
+
.yith-plugin-ui .form-table .list-table th {
|
1758 |
+
width : initial;
|
1759 |
+
}
|
1760 |
+
|
1761 |
+
.yith-plugin-ui #plugin-fw-wc table.form-table th.check-column {
|
1762 |
+
padding-left : 3px;
|
1763 |
+
}
|
1764 |
+
|
1765 |
+
.yith-plugin-ui #plugin-fw-wc table.wp-list-table tbody td {
|
1766 |
+
padding-left : 20px;
|
1767 |
+
}
|
1768 |
+
|
1769 |
+
.yith-plugin-ui #plugin-fw-wc table.wp-list-table th,
|
1770 |
+
.yith-plugin-ui #plugin-fw-wc table.wp-list-table td {
|
1771 |
+
padding : 15px 20px 15px 20px;
|
1772 |
+
}
|
1773 |
+
|
1774 |
+
.yith-plugin-ui #plugin-fw-wc table.wp-list-table thead td,
|
1775 |
+
.yith-plugin-ui #plugin-fw-wc table.wp-list-table thead th,
|
1776 |
+
.yith-plugin-ui #plugin-fw-wc table.wp-list-table tfoot td,
|
1777 |
+
.yith-plugin-ui #plugin-fw-wc table.wp-list-table tfoot th {
|
1778 |
+
padding : 3px 20px;
|
1779 |
+
}
|
1780 |
+
|
1781 |
+
.yith-plugin-ui #plugin-fw-wc table.wp-list-table thead a,
|
1782 |
+
.yith-plugin-ui #plugin-fw-wc table.wp-list-table tfoot a {
|
1783 |
+
padding-left : 0;
|
1784 |
+
}
|
1785 |
+
|
1786 |
+
.yith-plugin-ui .yith-plugin-fw-list-table .list-table-title {
|
1787 |
+
margin-bottom : 20px;
|
1788 |
+
line-height : 1.2;
|
1789 |
+
}
|
1790 |
+
|
1791 |
+
.yith-plugin-ui .yith-plugin-fw-list-table .list-table-title > * {
|
1792 |
+
vertical-align : middle;
|
1793 |
+
}
|
1794 |
+
|
1795 |
+
.yith-plugin-ui .yith-plugin-fw-list-table h2 {
|
1796 |
+
border : 0;
|
1797 |
+
padding : 0;
|
1798 |
+
display : inline-block;
|
1799 |
+
margin-right : 10px;
|
1800 |
+
line-height : inherit;
|
1801 |
+
}
|
1802 |
+
|
1803 |
+
.yith-plugin-ui .form-table .yith-plugin-fw-list-table table th {
|
1804 |
+
vertical-align : middle;
|
1805 |
+
}
|
1806 |
+
|
1807 |
+
.yith-plugin-ui #doaction, .yith-plugin-ui #doaction2,
|
1808 |
+
.yith-plugin-ui #post-query-submit,
|
1809 |
+
.yith-plugin-ui #search-submit,
|
1810 |
+
.yith-plugin-ui .button.filter-button {
|
1811 |
+
line-height : 33px;
|
1812 |
+
}
|
1813 |
+
|
1814 |
+
.yith-plugin-ui .tablenav {
|
1815 |
+
margin : 20px 0;
|
1816 |
+
}
|
1817 |
+
|
1818 |
+
.yith-plugin-ui .form-table td p.yith-section-description {
|
1819 |
+
color : #716269;
|
1820 |
+
margin-bottom : 20px;
|
1821 |
+
}
|
1822 |
+
|
1823 |
+
/** Time picker width*/
|
1824 |
+
.yith-plugin-ui input.ui-timepicker-input {
|
1825 |
+
width : 100px !important;
|
1826 |
+
}
|
1827 |
+
|
1828 |
+
/** date format **/
|
1829 |
+
.yith-plugin-ui .yith-plugin-fw-date-format code {
|
1830 |
+
margin-left : 30px;
|
1831 |
+
}
|
1832 |
+
|
1833 |
+
.yith-plugin-ui .yith-plugin-fw-date-format input[type=text].small-text {
|
1834 |
+
margin-left : 45px;
|
1835 |
+
}
|
1836 |
+
|
1837 |
+
/** checkbox columns **/
|
1838 |
+
.yith-plugin-ui td.forminp-checkbox.two-cols fieldset {
|
1839 |
+
width : calc(50% - 20px);
|
1840 |
+
padding-right : 20px;
|
1841 |
+
float : left;
|
1842 |
+
}
|
1843 |
+
|
1844 |
+
.yith-plugin-ui td.forminp-checkbox.two-cols fieldset:nth-child(2n+1) {
|
1845 |
+
clear : both;
|
1846 |
+
}
|
1847 |
+
|
1848 |
+
.yith-plugin-ui td.forminp-checkbox.three-cols fieldset {
|
1849 |
+
width : calc(33% - 10px);
|
1850 |
+
padding-right : 10px;
|
1851 |
+
float : left;
|
1852 |
+
}
|
1853 |
+
|
1854 |
+
.yith-plugin-ui td.forminp-checkbox.three-cols fieldset:nth-child(3n+1) {
|
1855 |
+
clear : both;
|
1856 |
+
}
|
1857 |
+
|
1858 |
+
.yith-plugin-fw-checkbox-field-wrapper {
|
1859 |
+
display : inline-block !important;
|
1860 |
+
margin-right : 10px;
|
1861 |
+
}
|
1862 |
+
|
1863 |
+
.yith-plugin-fw-checkbox-field-wrapper + span.description {
|
1864 |
+
display : inline-block;
|
1865 |
+
vertical-align : middle;
|
1866 |
+
margin : 0;
|
1867 |
+
}
|
1868 |
+
|
1869 |
+
.yith-plugin-ui span.description {
|
1870 |
+
margin-top : 10px;
|
1871 |
+
line-height : 20px;
|
1872 |
+
max-width : 40%;
|
1873 |
+
min-width : min(100%, 360px);
|
1874 |
+
}
|
1875 |
+
|
1876 |
+
.yith-plugin-fw-option-with-description {
|
1877 |
+
display : table-cell;
|
1878 |
+
width : 90%;
|
1879 |
+
vertical-align : top;
|
1880 |
+
}
|
1881 |
+
|
1882 |
+
|
1883 |
+
/**
|
1884 |
+
* Required
|
1885 |
+
*/
|
1886 |
+
.yith-plugin-fw-panel-wc-row.yith-plugin-fw--required th.titledesc > label:after,
|
1887 |
+
.yith-plugin-fw-metabox-field-row.yith-plugin-fw--required label:first-child:after,
|
1888 |
+
.yith-plugin-fw-toggle-element-field-wrapper .yith-plugin-fw--required > label:first-child:after {
|
1889 |
+
content : '*';
|
1890 |
+
color : #ea0034;
|
1891 |
+
font-weight : 800;
|
1892 |
+
margin-left : 4px;
|
1893 |
+
}
|
1894 |
+
|
1895 |
+
/** YITH PANEL **/
|
1896 |
+
.yith-plugin-ui #yith-plugin-fw-panel {
|
1897 |
+
margin-top : -10px;
|
1898 |
+
}
|
1899 |
+
|
1900 |
+
.yith-plugin-ui #plugin-fw-wc, .yith-plugin-ui #yith-plugin-fw-panel {
|
1901 |
+
padding-top : 0;
|
1902 |
+
}
|
1903 |
+
|
1904 |
+
.yith-plugin-ui .plugin-option tr {
|
1905 |
+
border : 0;
|
1906 |
+
}
|
1907 |
+
|
1908 |
+
/** MULTI SELECT AND TEXT ARRAY INLINE STYLE **/
|
1909 |
+
.yith-plugin-ui .yith-plugin-fw-multi-select .yith-single-select,
|
1910 |
+
.yith-plugin-ui .yith-plugin-fw-text-array-inline .yith-single-text {
|
1911 |
+
display : inline-block;
|
1912 |
+
width : 30%;
|
1913 |
+
margin-right : 3%;
|
1914 |
+
max-width : 400px;
|
1915 |
+
}
|
1916 |
+
|
1917 |
+
.yith-plugin-ui .yith-plugin-fw-multi-select .yith-single-select label,
|
1918 |
+
.yith-plugin-ui .yith-plugin-fw-text-array-inline .yith-single-text label {
|
1919 |
+
display : block;
|
1920 |
+
font-size : 11px;
|
1921 |
+
font-weight : 600;
|
1922 |
+
margin : 0 0 10px 0;
|
1923 |
+
}
|
1924 |
+
|
1925 |
+
.yith-plugin-ui .yith-plugin-fw-text-array-inline .yith-single-text input,
|
1926 |
+
.yith-plugin-ui .yith-plugin-fw-multi-select .yith-single-select select,
|
1927 |
+
.yith-plugin-ui .yith-plugin-fw-multi-select .yith-single-select span.select2 {
|
1928 |
+
width : 100% !important;
|
1929 |
+
min-width : auto !important;
|
1930 |
+
}
|
1931 |
+
|
1932 |
+
/**
|
1933 |
+
* Dimensions
|
1934 |
+
*/
|
1935 |
+
|
1936 |
+
.yith-plugin-fw-dimensions {
|
1937 |
+
display : flex;
|
1938 |
+
align-items : flex-end;
|
1939 |
+
}
|
1940 |
+
|
1941 |
+
.yith-plugin-fw-dimensions__units {
|
1942 |
+
flex : 1;
|
1943 |
+
display : flex;
|
1944 |
+
margin-left : 5px;
|
1945 |
+
width : calc(100% - 105px);
|
1946 |
+
flex-wrap : wrap;
|
1947 |
+
min-height : 38px;
|
1948 |
+
margin-bottom : -8px;
|
1949 |
+
}
|
1950 |
+
|
1951 |
+
.yith-plugin-fw-dimensions__unit {
|
1952 |
+
display : inline-block;
|
1953 |
+
padding : 0 3px;
|
1954 |
+
cursor : pointer;
|
1955 |
+
font-weight : 700;
|
1956 |
+
}
|
1957 |
+
|
1958 |
+
.yith-plugin-fw-dimensions__unit--selected {
|
1959 |
+
text-decoration : underline;
|
1960 |
+
color : #007694;
|
1961 |
+
}
|
1962 |
+
|
1963 |
+
.yith-plugin-fw-dimensions__unit--unique {
|
1964 |
+
text-decoration : none;
|
1965 |
+
cursor : default;
|
1966 |
+
}
|
1967 |
+
|
1968 |
+
.yith-plugin-fw-dimensions__dimensions {
|
1969 |
+
display : flex;
|
1970 |
+
margin : 0;
|
1971 |
+
align-items : flex-end;
|
1972 |
+
max-width : 400px;
|
1973 |
+
width : 400px;
|
1974 |
+
}
|
1975 |
+
|
1976 |
+
.yith-plugin-fw-dimensions__dimension {
|
1977 |
+
text-align : center;
|
1978 |
+
flex : 1;
|
1979 |
+
}
|
1980 |
+
|
1981 |
+
.yith-plugin-fw-dimensions__dimension > input[type=number].yith-plugin-fw-dimensions__dimension__number,
|
1982 |
+
.woocommerce.yith-plugin-fw-panel .yith-plugin-ui .yith-plugin-fw-dimensions__dimension > input[type=number].yith-plugin-fw-dimensions__dimension__number,
|
1983 |
+
.yith-plugin-ui .yith-plugin-fw-dimensions__dimension > input[type=number].yith-plugin-fw-dimensions__dimension__number,
|
1984 |
+
.woocommerce .yith-plugin-fw table.form-table .yith-plugin-fw-dimensions__dimension > input[type=number].yith-plugin-fw-dimensions__dimension__number {
|
1985 |
+
width : 100%;
|
1986 |
+
min-width : 0;
|
1987 |
+
border-radius : 0;
|
1988 |
+
border : 1px solid #d8d8d8;
|
1989 |
+
border-left : none;
|
1990 |
+
height : 38px;
|
1991 |
+
text-align : center;
|
1992 |
+
padding-right : 0;
|
1993 |
+
}
|
1994 |
+
|
1995 |
+
.yith-plugin-fw-dimen sions__dimension:first-child > input[type=number].yith-plugin-fw-dimensions__dimension__number,
|
1996 |
+
.woocommerce.yith-plugin-fw-panel .yith-plugin-ui .yith-plugin-fw-dimensions__dimension:first-child > input[type=number].yith-plugin-fw-dimensions__dimension__number,
|
1997 |
+
.yith-plugin-ui .yith-plugin-fw-dimensions__dimension:first-child > input[type=number].yith-plugin-fw-dimensions__dimension__number,
|
1998 |
+
.woocommerce .yith-plugin-fw table.form-table .yith-plugin-fw-dimensions__dimension:first-child > input[type=number].yith-plugin-fw-dimensions__dimension__number {
|
1999 |
+
border-left : 1px solid #d8d8d8;
|
2000 |
+
border-radius : 6px 0 0 6px;
|
2001 |
+
}
|
2002 |
+
|
2003 |
+
.yith-plugin-fw-dimensions__dimension:last-child > input[type=number].yith-plugin-fw-dimensions__dimension__number,
|
2004 |
+
.woocommerce.yith-plugin-fw-panel .yith-plugin-ui .yith-plugin-fw-dimensions__dimension:last-child > input[type=number].yith-plugin-fw-dimensions__dimension__number,
|
2005 |
+
.yith-plugin-ui .yith-plugin-fw-dimensions__dimension:last-child > input[type=number].yith-plugin-fw-dimensions__dimension__number {
|
2006 |
+
border-radius : 0 6px 6px 0;
|
2007 |
+
}
|
2008 |
+
|
2009 |
+
.metaboxes-tab .yith-plugin-fw-dimensions__dimension__label,
|
2010 |
+
.yith-plugin-ui.metaboxes-tab label.yith-plugin-fw-dimensions__dimension__label {
|
2011 |
+
float : none;
|
2012 |
+
margin : 0;
|
2013 |
+
width : auto;
|
2014 |
+
font-weight : inherit;
|
2015 |
+
line-height : inherit;
|
2016 |
+
}
|
2017 |
+
|
2018 |
+
.yith-plugin-fw-dimensions__dimension__label,
|
2019 |
+
.metaboxes-tab .yith-plugin-fw-dimensions__dimension__label,
|
2020 |
+
.yith-plugin-ui.metaboxes-tab label.yith-plugin-fw-dimensions__dimension__label {
|
2021 |
+
text-transform : uppercase;
|
2022 |
+
letter-spacing : 1px;
|
2023 |
+
font-size : 9px;
|
2024 |
+
margin-bottom : 5px;
|
2025 |
+
display : inline-block;
|
2026 |
+
}
|
2027 |
+
|
2028 |
+
.yith-plugin-fw-dimensions__linked {
|
2029 |
+
cursor : pointer;
|
2030 |
+
}
|
2031 |
+
|
2032 |
+
.yith-plugin-fw-dimensions__linked span {
|
2033 |
+
border : 1px solid #d8d8d8;
|
2034 |
+
border-left : none;
|
2035 |
+
height : 38px;
|
2036 |
+
border-radius : 0 6px 6px 0;
|
2037 |
+
box-sizing : border-box;
|
2038 |
+
padding : 8px 10px;
|
2039 |
+
width : 100%;
|
2040 |
+
}
|
2041 |
+
|
2042 |
+
.yith-plugin-fw-dimensions--linked-active .yith-plugin-fw-dimensions__linked span {
|
2043 |
+
color : #fff;
|
2044 |
+
background : #007694;
|
2045 |
+
border-color : #007694;
|
2046 |
+
}
|
2047 |
+
|
2048 |
+
.rtl .yith-plugin-fw-dimensions__linked span {
|
2049 |
+
border-radius : 6px 0 0 6px;
|
2050 |
+
}
|
2051 |
+
|
2052 |
+
.rtl .yith-plugin-fw-dimensions__dimension:first-child > input[type=number].yith-plugin-fw-dimensions__dimension__number,
|
2053 |
+
.rtl.woocommerce.yith-plugin-fw-panel .yith-plugin-ui .yith-plugin-fw-dimensions__dimension:first-child > input[type=number].yith-plugin-fw-dimensions__dimension__number,
|
2054 |
+
.rtl .yith-plugin-ui .yith-plugin-fw-dimensions__dimension:first-child > input[type=number].yith-plugin-fw-dimensions__dimension__number,
|
2055 |
+
.rtl.woocommerce .yith-plugin-fw table.form-table .yith-plugin-fw-dimensions__dimension:first-child > input[type=number].yith-plugin-fw-dimensions__dimension__number {
|
2056 |
+
border-radius : 0 6px 6px 0;
|
2057 |
+
}
|
2058 |
+
|
2059 |
+
.rtl .yith-plugin-fw-dimensions__dimension:last-child > input[type=number].yith-plugin-fw-dimensions__dimension__number,
|
2060 |
+
.rtl.woocommerce.yith-plugin-fw-panel .yith-plugin-ui .yith-plugin-fw-dimensions__dimension:last-child > input[type=number].yith-plugin-fw-dimensions__dimension__number,
|
2061 |
+
.rtl .yith-plugin-ui .yith-plugin-fw-dimensions__dimension:last-child > input[type=number].yith-plugin-fw-dimensions__dimension__number {
|
2062 |
+
border-radius : 6px 0 0 6px;
|
2063 |
+
}
|
2064 |
+
|
2065 |
+
/**
|
2066 |
+
* Image dimensions
|
2067 |
+
*/
|
2068 |
+
.yith-plugin-ui .yith-plugin-fw-image-dimensions > div {
|
2069 |
+
display : inline-block;
|
2070 |
+
width : 30%;
|
2071 |
+
margin-right : 3%;
|
2072 |
+
max-width : 100px;
|
2073 |
+
}
|
2074 |
+
|
2075 |
+
.yith-plugin-ui .yith-plugin-fw-image-dimensions label {
|
2076 |
+
display : block;
|
2077 |
+
font-size : 11px;
|
2078 |
+
font-weight : 600;
|
2079 |
+
text-transform : uppercase;
|
2080 |
+
margin : 0 0 10px 0;
|
2081 |
+
}
|
2082 |
+
|
2083 |
+
/**
|
2084 |
+
* Copy to clipboard
|
2085 |
+
*/
|
2086 |
+
.yith-plugin-fw-copy-to-clipboard {
|
2087 |
+
background : #ffffff;
|
2088 |
+
border-radius : 8px;
|
2089 |
+
border : 1px solid #d8d8d8;
|
2090 |
+
display : flex;
|
2091 |
+
align-items : center;
|
2092 |
+
padding : 0 12px;
|
2093 |
+
max-width : 400px;
|
2094 |
+
box-sizing : border-box;
|
2095 |
+
}
|
2096 |
+
|
2097 |
+
.yith-plugin-fw-copy-to-clipboard.yith-plugin-fw-copy-to-clipboard--readonly {
|
2098 |
+
background : #f1f1f1;
|
2099 |
+
border : 1px dashed #cccccc;
|
2100 |
+
}
|
2101 |
+
|
2102 |
+
.yith-plugin-fw-copy-to-clipboard__field-wrap {
|
2103 |
+
position : relative;
|
2104 |
+
flex : 1;
|
2105 |
+
}
|
2106 |
+
|
2107 |
+
.yith-plugin-fw-copy-to-clipboard__tip {
|
2108 |
+
display : none;
|
2109 |
+
position : absolute;
|
2110 |
+
background : rgba(30, 30, 30, 0.9);
|
2111 |
+
color : #ffffff;
|
2112 |
+
padding : 7px 10px;
|
2113 |
+
border-radius : 3px;
|
2114 |
+
right : 8px;
|
2115 |
+
top : 50%;
|
2116 |
+
transform : translateY(-50%);
|
2117 |
+
pointer-events : none;
|
2118 |
+
font-size : 12px;
|
2119 |
+
line-height : 1;
|
2120 |
+
}
|
2121 |
+
|
2122 |
+
|
2123 |
+
.yith-plugin-fw-copy-to-clipboard input[type=text].yith-plugin-fw-copy-to-clipboard__field,
|
2124 |
+
.yith-plugin-fw.yith-plugin-ui .yith-plugin-fw-copy-to-clipboard input[type=text].yith-plugin-fw-copy-to-clipboard__field,
|
2125 |
+
.yith-plugin-fw-panel .yith-plugin-ui table.form-table input[type=text].yith-plugin-fw-copy-to-clipboard__field,
|
2126 |
+
.woocommerce.yith-plugin-fw-panel .yith-plugin-ui table.form-table input[type=text].yith-plugin-fw-copy-to-clipboard__field {
|
2127 |
+
height : 38px;
|
2128 |
+
width : 100%;
|
2129 |
+
background : transparent;
|
2130 |
+
padding : 0 10px 0 0;
|
2131 |
+
border : 0;
|
2132 |
+
border-radius : 0;
|
2133 |
+
box-shadow : none;
|
2134 |
+
outline : none;
|
2135 |
+
}
|
2136 |
+
|
2137 |
+
.yith-plugin-fw-copy-to-clipboard.yith-plugin-fw-copy-to-clipboard--readonly input[type=text].yith-plugin-fw-copy-to-clipboard__field,
|
2138 |
+
.woocommerce.yith-plugin-fw-panel .yith-plugin-ui table.form-table .yith-plugin-fw-copy-to-clipboard--readonly input[type=text].yith-plugin-fw-copy-to-clipboard__field {
|
2139 |
+
color : #999;
|
2140 |
+
cursor : default;
|
2141 |
+
}
|
2142 |
+
|
2143 |
+
.yith-plugin-fw-copy-to-clipboard__copy {
|
2144 |
+
display : flex;
|
2145 |
+
align-items : center;
|
2146 |
+
cursor : pointer;
|
2147 |
+
border-radius : 2px;
|
2148 |
+
padding : 1px;
|
2149 |
+
user-select : none;
|
2150 |
+
line-height : 1;
|
2151 |
+
transition : all .2s ease-in-out;
|
2152 |
+
}
|
2153 |
+
|
2154 |
+
.yith-plugin-fw-copy-to-clipboard__copy:hover {
|
2155 |
+
box-shadow : 0 0 0 4px rgba(15, 67, 60, .12);
|
2156 |
+
background-color : rgba(15, 67, 60, .12);
|
2157 |
+
}
|
2158 |
+
|
2159 |
+
.yith-plugin-fw-copy-to-clipboard__copy__text {
|
2160 |
+
font-size : 12px;
|
2161 |
+
font-weight : 600;
|
2162 |
+
}
|
2163 |
+
|
2164 |
+
.yith-plugin-fw-copy-to-clipboard__copy__icon {
|
2165 |
+
margin-right : 4px;
|
2166 |
+
font-size : 14px;
|
2167 |
+
}
|
2168 |
+
|
2169 |
+
.rtl .yith-plugin-fw-copy-to-clipboard__copy__icon {
|
2170 |
+
margin-right : 0;
|
2171 |
+
margin-left : 4px;
|
2172 |
+
}
|
2173 |
+
|
2174 |
+
/** OVERRIDE WOOCOMMERCE CLASSES FOR 5.3 */
|
2175 |
+
.branch-5-3 .yith-plugin-fw .select2-container .select2-selection--single .select2-selection__arrow {
|
2176 |
+
background : none;
|
2177 |
+
}
|
2178 |
+
|
2179 |
+
.branch-5-3 .yith-plugin-fw .select2-container.select2-container--focus .select2-selection--single, .branch-5-3 .yith-plugin-fw .select2-container.select2-container--open .select2-selection--multiple, .branch-5-3 .yith-plugin-fw .select2-container.select2-container--open .select2-selection--single {
|
2180 |
+
box-shadow : none;
|
2181 |
+
}
|
2182 |
+
|
2183 |
+
@media screen and (max-width : 1440px) {
|
2184 |
+
.yith-plugin-ui .yith-add-box,
|
2185 |
+
.yith-plugin-ui .yith-toggle-row:not(.fixed) {
|
2186 |
+
width : 80%;
|
2187 |
+
}
|
2188 |
+
|
2189 |
+
|
2190 |
+
.yith-plugin-ui .yith-add-box-row,
|
2191 |
+
.yith-plugin-ui .yith-toggle-content .yith-toggle-content-row,
|
2192 |
+
.yith-plugin-ui .yith-add-box-row label {
|
2193 |
+
display : block;
|
2194 |
+
}
|
2195 |
+
|
2196 |
+
.yith-plugin-ui .yith-toggle-content .yith-toggle-content-row > label {
|
2197 |
+
display : block;
|
2198 |
+
}
|
2199 |
+
|
2200 |
+
.yith-plugin-ui .yith-plugin-fw-option-with-description {
|
2201 |
+
width : 100%;
|
2202 |
+
}
|
2203 |
+
|
2204 |
+
.yith-plugin-ui .yith-add-box-row,
|
2205 |
+
.yith-plugin-ui .yith-add-box-row label {
|
2206 |
+
display : block;
|
2207 |
+
}
|
2208 |
+
|
2209 |
+
.yith-plugin-ui .yith-toggle-content .yith-plugin-fw-option-with-description,
|
2210 |
+
.yith-plugin-ui .yith-add-box-row .yith-plugin-fw-option-with-description {
|
2211 |
+
display : block;
|
2212 |
+
padding-top : 20px;
|
2213 |
+
}
|
2214 |
+
|
2215 |
+
|
2216 |
+
.yith-plugin-ui .yith-add-box-row .yith-plugin-fw-option-with-description span.description {
|
2217 |
+
max-width : 100%;
|
2218 |
+
}
|
2219 |
+
}
|
2220 |
+
|
2221 |
+
@media screen and (max-width : 1024px) {
|
2222 |
+
|
2223 |
+
.yith-plugin-ui .yith-add-box,
|
2224 |
+
.yith-plugin-ui .yith-toggle-row:not(.fixed) {
|
2225 |
+
width : 90%;
|
2226 |
+
}
|
2227 |
+
|
2228 |
+
.yith-plugin-ui td.forminp-checkbox.two-cols fieldset {
|
2229 |
+
width : 100%;
|
2230 |
+
padding-right : 20px;
|
2231 |
+
float : left;
|
2232 |
+
}
|
2233 |
+
|
2234 |
+
.yith-plugin-ui td.forminp-checkbox.three-cols fieldset {
|
2235 |
+
width : calc(50% - 10px);
|
2236 |
+
padding-right : 10px;
|
2237 |
+
float : left;
|
2238 |
+
}
|
2239 |
+
|
2240 |
+
.yith-plugin-ui td.forminp-checkbox.two-cols fieldset:nth-child(2n+1) {
|
2241 |
+
clear : both;
|
2242 |
+
}
|
2243 |
+
|
2244 |
+
.yith-plugin-ui td.forminp-checkbox.three-cols fieldset:nth-child(3n+1) {
|
2245 |
+
clear : initial;
|
2246 |
+
}
|
2247 |
+
|
2248 |
+
}
|
2249 |
+
|
2250 |
+
@media screen and (max-width : 782px) {
|
2251 |
+
.yith-plugin-fw-banner h1 {
|
2252 |
+
line-height : 1.2em;
|
2253 |
+
}
|
2254 |
+
|
2255 |
+
.yith-plugin-fw-banner h1 {
|
2256 |
+
font-size : 12px;
|
2257 |
+
padding-right : 10px;
|
2258 |
+
}
|
2259 |
+
|
2260 |
+
.yith-plugin-ui .yith-add-box,
|
2261 |
+
.yith-plugin-ui .yith-toggle-row {
|
2262 |
+
width : 100%;
|
2263 |
+
}
|
2264 |
+
|
2265 |
+
.yith-plugin-ui td.forminp-checkbox.two-cols fieldset,
|
2266 |
+
.yith-plugin-ui td.forminp-checkbox.three-cols fieldset {
|
2267 |
+
width : 100%;
|
2268 |
+
clear : initial;
|
2269 |
+
}
|
2270 |
+
|
2271 |
+
.yith-plugin-ui .wp-picker-container .wp-color-result.button {
|
2272 |
+
padding : 0;
|
2273 |
+
}
|
2274 |
+
|
2275 |
+
.yith-plugin-ui #plugin-fw-wc table.form-table th,
|
2276 |
+
#yith-plugin-fw-panel table.form-table th.titledesc,
|
2277 |
+
.yith-plugin-ui #plugin-fw-wc table.form-table td,
|
2278 |
+
#yith-plugin-fw-panel table.form-table td.forminp {
|
2279 |
+
padding : 20px 20px;
|
2280 |
+
}
|
2281 |
+
|
2282 |
+
.yith-plugin-ui #plugin-fw-wc table.form-table th.titledesc,
|
2283 |
+
#yith-plugin-fw-panel table.form-table th.titledesc {
|
2284 |
+
padding-bottom : 0;
|
2285 |
+
}
|
2286 |
+
}
|
2287 |
+
|
2288 |
+
@media (max-width : 480px) {
|
2289 |
+
.yith-plugin-ui .nav-tab {
|
2290 |
+
font-size : 12px;
|
2291 |
+
}
|
2292 |
+
|
2293 |
+
.yith-plugin-ui h2 {
|
2294 |
+
padding : 20px 20px;
|
2295 |
+
}
|
2296 |
+
|
2297 |
+
.yith-plugin-ui [type="radio"]:checked + label:before, .yith-plugin-ui [type="radio"]:not(:checked) + label:before {
|
2298 |
+
width : 14px;
|
2299 |
+
height : 14px;
|
2300 |
+
}
|
2301 |
+
|
2302 |
+
.yith-plugin-ui [type="radio"]:checked + label:after, .yith-plugin-ui [type="radio"]:not(:checked) + label:after {
|
2303 |
+
width : 10px;
|
2304 |
+
height : 10px;
|
2305 |
+
top : 3px;
|
2306 |
+
left : 3px;
|
2307 |
+
}
|
2308 |
+
|
2309 |
+
.yith-plugin-ui [type="radio"]:checked + label, .yith-plugin-ui [type="radio"]:not(:checked) + label {
|
2310 |
+
padding-left : 25px;
|
2311 |
+
}
|
2312 |
+
|
2313 |
+
.yith-plugin-ui [type="radio"]:checked + label, .yith-plugin-ui [type="radio"]:not(:checked) + label {
|
2314 |
+
font-size : 13px;
|
2315 |
+
}
|
2316 |
+
|
2317 |
+
.yith-plugin-ui span.description {
|
2318 |
+
font-size : 12px;
|
2319 |
+
}
|
2320 |
+
|
2321 |
+
.yith-plugin-ui #plugin-fw-wc table.form-table th,
|
2322 |
+
#yith-plugin-fw-panel table.form-table th.titledesc,
|
2323 |
+
.yith-plugin-ui #plugin-fw-wc table.form-table td,
|
2324 |
+
#yith-plugin-fw-panel table.form-table td.forminp {
|
2325 |
+
padding : 15px 20px;
|
2326 |
+
}
|
2327 |
+
|
2328 |
+
.yith-plugin-ui .yith-plugin-fw-onoff-container input + span {
|
2329 |
+
width : 48px;
|
2330 |
+
height : 20px;
|
2331 |
+
padding : 2px;
|
2332 |
+
}
|
2333 |
+
|
2334 |
+
.yith-plugin-ui .yith-plugin-fw-onoff-container input + span:before {
|
2335 |
+
top : 4px;
|
2336 |
+
left : 3px;
|
2337 |
+
width : 10px;
|
2338 |
+
height : 10px;
|
2339 |
+
}
|
2340 |
+
|
2341 |
+
.yith-plugin-ui .yith-plugin-fw-onoff-container input:checked + span:before, .yith-plugin-ui.yith-plugin-fw-onoff-container input.onoffchecked + span:before {
|
2342 |
+
left : 30px;
|
2343 |
+
}
|
2344 |
+
|
2345 |
+
.yith-plugin-ui .yith-plugin-fw-onoff-container input:checked + span:after, .yith-plugin-ui.yith-plugin-fw-onoff-container input.onoffchecked + span:after {
|
2346 |
+
font-size : 11px;
|
2347 |
+
padding-right : 12px;
|
2348 |
+
margin-top : 0;
|
2349 |
+
}
|
2350 |
+
|
2351 |
+
.yith-plugin-ui .yith-plugin-fw-onoff-container input + span:after {
|
2352 |
+
font-size : 11px;
|
2353 |
+
padding-left : 12px;
|
2354 |
+
margin-top : 0;
|
2355 |
+
}
|
2356 |
+
|
2357 |
+
.yith-plugin-fw .select2-container .select2-selection--single .select2-selection__rendered {
|
2358 |
+
font-size : 14px;
|
2359 |
+
}
|
2360 |
+
|
2361 |
+
.yith-plugin-ui input {
|
2362 |
+
font-size : 14px;
|
2363 |
+
}
|
2364 |
+
}
|
plugin-fw/assets/css/yith-icon.css
CHANGED
@@ -1,359 +1,371 @@
|
|
1 |
-
/**
|
2 |
-
* DO NOT EDIT THIS FILE DIRECTLY
|
3 |
-
* This file is automatically built using a build process
|
4 |
-
*/
|
5 |
-
|
6 |
-
/* stylelint-disable function-url-quotes, declaration-colon-newline-after */
|
7 |
-
@font-face {
|
8 |
-
font-family: yith-icon;
|
9 |
-
src: url("../fonts/yith-icon.eot?
|
10 |
-
src: url("../fonts/yith-icon.eot?
|
11 |
-
url("data:application/x-font-woff;charset=utf-8;base64,d09GRgABAAAAACAQAAsAAAAANcgAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABHU1VCAAABCAAAADMAAABCsP6z7U9TLzIAAAE8AAAAQAAAAFY4xksKY21hcAAAAXwAAAGpAAAEyNC9cJFnbHlmAAADKAAAGPkAACj8NzNL12hlYWQAABwkAAAAMAAAADYcZKiiaGhlYQAAHFQAAAAeAAAAJAQ1AjFobXR4AAAcdAAAAC0AAADsc+X/6GxvY2EAABykAAAAeAAAAHgUux7ebWF4cAAAHRwAAAAfAAAAIAFZAVZuYW1lAAAdPAAAATAAAAIiyMcJZnBvc3QAAB5sAAABpAAAAqVbl2cyeJxjYGRgYOBikGPQYWB0cfMJYeBgYGGAAJAMY05meiJQDMoDyrGAaQ4gZoOIAgCKIwNPAHicY2Bk/M44gYGVgYNBjDGNgYHBHUp/ZZBkaGFgYGJgZWbACgLSXFMYHF4yfJRiAnH1mNgYeIE0I4gDAI+GCE54nO3UV47bQBCE4Z+SqJyztDl4ndY5G/AdDB/TB/KTL9CAX/oE6xqWj2EKn0AO0wy6i0ANtOVeOlD9pqJsvzRaNeNths14h5867uvXgrjNVh4fHrRHVlmXvWardP47P5qn1vQYMGXJhgPXcs9LPvCeC/baO+HImImueMZr3vGFFzxhpGcMmbFjwTmf+cqWx6x4y1M+csMZrzjlkk880kw6dPXGOc95w5pbrrjTJLr838blr/Xn39G3Uikr9Y7KSv2jZaoW0TbVjeiY6kPUploSXVNViZ6ptkTfVGliYM340EqPxchUfWJs6ghiYuoNYmrqEmJm6hdibs29C1MPEUtTNxErK6uPtVGevbFmLVtT1xE7U/8Re1MnEgdTTxJHU3cSJ6Y+JU6NsqYzK5mJcyu5iQujrOPSKO+8Mso6ro1y342p75UxUwKUMVMWyJYpFWRtygfZNSWF7JkyQ/ZN6SEHphyRQ1OiyJEpW+TYlDJyYsobOTUlj5yZMkjOrXwXcmHlW5JLo8xrZZS5rI1y38aUX3JrSjK5M8q1e1O6yYMp5+TRuPsL0OuV/gAAAHicrVoJsB1lle7T2999e7m37+3l3Xv77ku/fbtL5/G25MHLRggJ5CVBdvKC4EApOIiJKFFrUARkrHGMJhFxFwZrxnIDtSAzBRh0SlEGBqFw1DwdF8rBODNuod+cv/u+JQmiVs2rm9P/3v85/1m+83cYk8E/eIZlmBTjMFmmjxlippmzmQuZXcxrmb9i3sLcytzN/B3zEeYB5kHmUeZJHF1plaxKWbQM026URtsto1mvNawKZ5QMDttzYNrjMNqehGadtBoWeYW21iu0+X9mm/cKbfS9UUuz3lhVrqyu9MErD4KH+oKFPjWRUOFGpMETCwsb4MYNC7SFkpcWvp6j5ZxiGN25VcU9rmoYKiXd7jxtUmhnT25+VfslhON5jhJPoaUYJwjcjpDGsD4Qixp5/rzlgXBkfj6hBkfogjCvJjZuDA7AfHAExqIX07eM5XJHDCVOa0j64vEDCVWnb9XVRK+u955em6cjca0D8/N9p8yDfbzIv8qPqsdiwDAswDsZgWFq4Du+A0ywmD/+o8I8QP748TyOCfXoZGeMF405af70p+YbQxp2M8ziIrybBTpGkMEhDrwuWAyXAPqHz844JO+Ek0tr4bjXn6TL8CFdWeuD0VqO53s+fIDuJFolHywur3NXtI5Pxzjvo3s5yYcU+VoM+fpg9B7iyQDHozXgzeEzXGaZt7uWxiFvP6UrnHxrSGm3SgnLwG8YBe2oglY0zmxAK7qcmWeuYa5n7sId/BEdXV12VqvuKs1l//RU8Ig1jTL1SAsl5ldIYxQttFIqo32Og3+awf61TjVQR21rx1lBYONhiWogJR4thCP6ohKS4686A9Qt79+y3U24N1zlXvn+ut5k2WCCZX+u/q+aTKrwKNJHz1Su815d92Db0C93VH9jZJP/Vvhw8sj2HBsELAssm0tqQRAuzGpJRovOEX1YhfGYfmaEaTETzFpmfUf2b0IfxkAj9BZDUI9Dx31YHUdCZUIdSR9Qz0RpDUVoEavUIuUxrObYSksYrpR8oUZsx2q0pqDp1b2W7fhIK5YOpoPtdd82idf0sUCPhR4KKdeb7VHbFGFBFyXpV4T8SpLEBFDbhMeRKpPFAhSDuYWFi4IXx6FYhPsgGAP4evDrWMI1TEuTU7om6zYtSqZZ07S8ppnJTKaaySSJLOuyDP2S2Jb4Axz3dl5uitJThlqgL0BSLE4cdPP73lxwn3rq4MGDbrF4SRH2WiqbMlmzIIt8niWWzKZSrIU1Icc6gsHOxLg0/+MsvqCanaQv0GWq+atk3MfMMtvDSBB51dzq0qmK5mFkoP/ArNRSDWvJbTvLpQapWBWrgVJttCpwfC70cTeGTm5uWUyHcrmv53Kwk8pm9Yidz7tjY/iDxwrUpRUiaqjBzeHU21WjMD8/H3wELfo9PdRx90A3fXQforNchtGW+eIYgymE3LUw/m1gzmX2MrcxdzB/i3ziGZNQf3CrWDZtn+53ieNxNmLxlMaGE42MmFzqr/jIqhGKonWaoDhcehA833Zada/earZ91EbbIXUPqW2ZotcSLdNpelYbxm4cQxG4ORdF4YaCwLI75rrHwybatdQ+FrbfMBeJbkWi/24nXFk1uhwlkemyM4aSSDixRHow0cKY8JmcO4uywj+MGB2huq473inOdkdCzIV/wc1Uuu5qoQf3dXWBTDIaWxGJYibTXJfDKlmZrQph9ZI8r8pjspin4YVJrDoDgv4z3sEihY6uDYVo5GLmJgQpS2Ls/BP+RD31/6KhN7ruXC6Hv52uu8j8scoNf6Hqgtv56zvtCRf+hcqM4iOd+PM0Si/LVJkB1OGLmKtQd0unqVknJGDdIme4qaUYZS0HlhBhVVqNJQC1hLww4DgNbxCI0IAfBRPLXj4W+n14lF3oKpeHy+Uu3HvaMPYVRFkWDROdoFjG4kumQYthaxlLwGfyOc5Wgn+4FDYn1SDQkkkNWDUZ/CD0+OxmuthweXeyK4m/eVmVNuI/Sdwryns3SiousxeXUWUYuOA1isJdH+IWGhc4+C71XjLQsM1ywZNP5f4RLHgouOpo8V64maFaF8qOpVE8jVrHlMqD0JyC0TyYOnBldO95GEWfPwhcB9nMvml29k3voWR26pqpqWtuoWT7TnP6dXanHQksdDqQBEe3WmPvSHawRADPdjCJA853/jX1RUg7w1+1PgVvM5b3Q+2B4vFxHFeu4zG0Uew2OpbW6oNoCZXVnabInQqOK+vith3/Ztx269lvZuv17Bz0hE9KftLps+Pf7jzn5jp97rc745HASKcXyQoe+ip8FW2VCRFHiK2Ql/yR/JGlHzCrKlS4OPZL8KXQxnEWeCkgAB81g/tNE3biA75Iy7AzJMyyTlM5UJ+QDr3BNHM+egHKbpRCNAhabi30ux7Jg4D/wq469RQCdcHhMBpgVoSSMkWU4LLYLNeOSxLyTG1vxM13CVoyeNHlq11dXbp5xeWXw9ob3clsvVqNZBJbEQc8EkqW+Jd/GAdXeZe1vi84BTcJBfcgHT/p3tiRYvDfy9JGtqSOvd6LnDmhp1tCjGdYrFAazUGp1cT2SShZZuiv/oy05hRwuNpEg2E0z2ANPI6WCseuLhaP6Usob2K59PrlUnsZ+MFHqGVGuEtNuqzvs8Hv2UOH2D1F51Xzh98v/poV8RzRtoBgYHR8jzg+umj6QH7CB+Zx+ICvmD3/3Geee77Z9y8D5vlbTqkBPh+KWh/stbZg7RtR7QmsdeyGsCLDo3w1avPEhwpqJ306cDi4Vd8Pb+9ZOzMdfH+LBKkZVgxu3afDgbXnrA12SedC8hy6hLD4B1xHgB/jyXjMWYgEtuK+MSh7iP5EIlbKWGiM+m2/PQ1CuQ9ord1qIgA3xRSpV8oER8UBMaFNcxcBBzZGHdpBIzip+6QNJzWrp98abxb71m8tFZ2+gQ3rBj1LIcFJdO+OpmVqomPed213fXLtYL+jSyRmVvuvN+Hzwc76wKazMzkP42uNmxr/TEoERU9WHDs3Ws32Sl1a0amlEnLFEaoZTXM43QTxWrVg11JxWY4nq851uMqTtWyf5HG1DJEnc9tSIQziO3zfzthhBGljtlNGrutDQHkddewCUM6IWEPOKP/Yh7w6S9HDW4onwHS4kQoDr3ngNYN5iSiWN7gueK7YP3tkfV8RWbht08BDmVqtWatldNN0TXM/7ttMyHKpMDFZKMlyIlVziu+qZfp6s9Vatr8vu6eKg5vVK+hg1+xgN/gs/DZE/LuYPczrmVuY25mDzCeYzzGPM08yP0YO6uGWR3SoIA8UWhFEUqfGsknoHKc/Ba06eo2GI4b43m87OhAdnBHRbmDNH6GDGhauyFGeC2DrUPbwYYplTC2widh48iJKZBrao370iJo8v9lujKC7IWZlpEyw4o/i9IpXrtcaSyVsJZaIehNtyGuhXtVRrA71WB4iQtPDFUzKUwhpvAgrwidjKT0RS5ox1SQ8xLouyY7rSkLRQzI3UTJrPXacYyG4T9efdc8eHprOz9pyryOgDybCjBvriku6TJJW6XleUvhuHojCP+DRMiV38YBtisT38Mp+nlIpbLgAJEEkoGmHJGFMlIBSAuYaLBJxTJAk4W6IKTabUkQOoKverm/lJEhAIZ5wJEHiCpwoSs7dKstKvKqCFBOIKiUdwgkxXY/dQkncEFU3rnGSqFz15ktkwsdGWWKIgsrTd8sxno3LPHIR1y24klcI3Rzhb+5ZKqp8xAKSd64U+9aIRBbbyjWCyEqqxJG8pEgsUchMRYtpoGInV3e70He3NnAxluP/xk5IWkzixGyXwJNYPJYIY6G4jB3ijMsUmW7UxbPO9OHEQEuJQ0jS4EMPNEfQqhyLo+ZCzcanBkTPHxaCNeHNzzFKN/Aqv/swrwhX3wBicDvcw75x6/avdVWrI5VKGjFSBlM3xlBWprjBd9cLwu6DPH81xIMn3hAsAnvD1m03QopOGaleksrQWaG9L++dxmSKuEN8bVHcfNr+wSgZJ2h8PLFqc8EAHIMDfb2fhltW7yBw4Viw5pT1Ka7KMaVXQ1ak8+Y/gq220Je/MrSaxx3QeLp4EuPpy4irFMzkangSM8xOzBoY36E3Ni0aY4ZYGmhQNdFYSckoOQgX0Jgc2+QaXkr00PLrlGDyhdRqOy1EEEZpmqWuAzdJHbiTR8fedjyROHeYQ5VUPJ6qDJluSOH6mORIGyF4B1Qvha6svFV6enDQ97yLBx0prlrG6Hy1MncCZiUi6pLs9KbrLeAKXameOzZw/Ow/mYN5W7tMswpD5oxu5wfN4DuyJG18O8vs3W00cra1VXLgwpHgE7qe6yq56f5EDmR1cD4Yu1kQ1ETK6upJt2pK2pMlvrlBENZHZwCPQxDipwazNsraBwFlH2ZCqy9AatHRYLtgipgmhAgJO6nLEgnmp9TVjNpwGLrP2XZONyTT6ST0Ig1+WPTX+aWXICuJwTMU00OvKL1bwgwwYSfAm+k+pxt/M+nkt+gcJDNFv1TyizO/o4O/RVOBTZLGTU9LCUxEI91ZXAx1x8Z9r2E205s39M7RzlFrMOL6Dg02K/qEulWjZ4QOOw805GKUaqB2OSFz9OjQb1LPitF3fyY3sffmq8fHrx7vOTe/n1elwG3uvnZ3o4GkCRPWuvpgXUCHIBRqhVZCIILEmixmHMCi+rCi1LU/f27POF3g5r0Tucx+XlIh0dzd7CzyrkIlwyvoOGw3I4rKvKrI1OEQ5DYGZDnngBOouR6eC5Oi95weylgwItmj2bXDRCwHDoaCVpNeTI3aXCvUXsvEczlq7rzAGnJBRVgWwrtPfYr9xTMcz3784wjPnuZl7jjNxOAO64KdqeHHnnjfSlrlstl7DrHgsm4yOPHYhzj20GPsCrY/ATbdIVilFpxAe7Z6e1f1xWlfqmSVdPRVLujusq1TrL6WuYK5ltmPdtdC4EDDU8NqUFhAz24IBrnmFBtdbdgUUPSBF9kVnmkB8pyps8RyEGMtOQq0T9tprz54f+V+zQmFMQg0FCNCycN/yRqbELg8OqyUGBM8Oa6IRE0pBUWLiQLHuhiGkrqRFCWxpiRUkegptV2qLDkaRZONJecz0K+eX2s2NzebyhAvcXkORJmzuzlU7jtzmLtIKVliNU1VRElgY6ykxM24SthikRUFRZJlPoaHTiSeVTgpppsJTWZze5WO35qqlGW1f3DJ1yViH2tuauJvY4PnMpxMuFQfL8odPYGHoA/1xGAyKPeI8TKiw9MLG9KVNP7em66m8Xd3VAMmSWvp5CmPzrroMRHnbWOuw3IHVXgUvcbZEMB6poP4KMS51AOOgx1ikjogqFlV9RBMhSCLw5NaPQHhU3jKZCREjd5I3Wv6I/CcLmWvGzuP1zCYcxYyK0vrOUFfJ8XEGGtzvBjT+PPGrsvGOC640+J4Ikd1hRdrg5e+T5ZJjLscgBeVGQknj5ksT8fYhlKReA5Rr2fqiCjg05lSJn1R0UCAI5HL4pLIAkhofmi9+uVEQuhjFC8qFnqDo8u1amkoWwkHBHvx6AgtBheKBHsRPLFiPq7VkhrHsrxKwitRKfp+Bi8wKfRUBaYXbXmCmaVZKqpl5bQw6pFKCzUzTEUNz6ZpqEXvVkiYxlmo2mHbKS1RWMRhcGRIIsHPlr5TCWq1P3gKEpK44+WYZWt2xRZ4RVHjylv0bK5UzrJSwlD1+FsH+/tt+OSQlFCDA+HkOo+gqD84DAfmRDlYeE6qGe6eYcEgJU8bzO7ZKOUSE+en7JS3h2FioR8GWOjoX4XpR6x9Puapu5nLUBvPgC/+GS3OmS2n3MWtjkBCxW8gxyknNUzFsDOVy3m5nCkpiqEon3c9b43nuQnHKTrOV8xcrtt1TTnsW7fPUD+kGvvCm7LHaJL7mf2w78uH4dAHYN9+kOnQ7tysmlDxF6fLrPFeR5cpOg+f0nfppGYY2qShfZku9aBqPP1g7mlIQfDLB1f7xxP07qMWXge3GtTDwYkXel/A3y8oeaFz30HHhfcd1FumGkYl9JgLLnWawARuZz1Wge8wtFKKEuJSGIQxolVwGgawSQqQ4Jbg8cEUOvwmrCs2C4VmMbgH9tRnPG8G7h5AD2+2C63CWuzKeTPeWm+mvozx4GX4FuIiK7xPYqK7GlJB90pDJKHuVwch/K5FynXPpz4WQ20DN3DuBqvRMmfc9qX+xHw6Y+1qDG0bgr9vtszNG14OW3Y2sQX7f77JRDEM+JciEFAG1wxtewsusGHzoXVtdWjN0PYh7OjsZ/G3YVznQ3up0LsgBJe1FUuhkdsyvOXLSR+FAO/dGayBtwXviECmgLZMXvuh0tDQzNDQdPAjjPcLO4P3wjE3AqIsSvTe1/4n7Z0Z+tiFNKcP5fAC/C6UwRZmO2JDRBT1lfR2GqKAFGW4hKOeqx3luIj1ROcvuJ5nRMtt1dtJVvUGdmMub25qNFQ22a63XOuos6l3eLh3kzPUe3Y+f3bvB20jH9OSmbSSdDO2m1SMZFoxssOGn0iInOz0TV90k8Zj9tzjONVqOs5rN1003WfHYNttF7ey2dbFt8WtYrVaNB9Pd0GMuDpbx4BnpbJcOs0qboz1BEmxk9kri7wWG5fFAt/RzaOICYVQi0N9CPGxA/BI/qP35h+mlH04f++9+VsfeQQfnTmPsEw0J0IrRqitu8yHHzbvv59S6DOPHjUfCLZ/1jp61IogzlIOoDBz1GKo/dNLNxQYQbFhet1BZ6jwziDrrVxqEQ811A/dQ+gcvHx41+ikvI7KRrlDqwnfzwmyLOTo/a9VOmt+ArGYxK+5fELgedoo5gQezrpqHLAZvPXuwR5r6g/mRGXX8FL4/Qn24O/jZnt64uopjheWpnH+xT5HV2PHr57iOTZ6Ecux+fThgdQ5wJlTxfISYNi8rGfPhflglPP0ULumH31oaETlbhkNLrp/bBkl0vn2wNFPR+jo4blgS8U00ifShlmZNvUTugntfbnclbkcuTP3eA7e5QYv9nZZVlcvmMGL2WIxC+b49773PbhrfNeuJf8Uyju/koVisFm6cUNTw9d0krpOpvk/g9R7NJ+FY4cPY30pnwRrxJy7wBo9SdM5N8rtlr4zhDldFaPdMNNkpqktwepkDkLfQl0LtmK0c5DSWs1EVOETmkJVEM1PU+yHpkTdEEc9T2kaVSGE+dQLUe0AZv1Ns7M33UlJ8AzipnMne+Oj4828mawNgJorgp+23M1bS/Vh7j9yYl/R0q30SLmrO7a5Z0s+A6IO/fWkKTRKtalrWKazEpJFBhcbHLQz7rDr9MSTs926Xjj/FrsWUy/YGVP8aqwwrDiiXLMLA04quD+XcSHZPZuM9zi67hfmhnD6cv4fg2fD6DjKTEa3hX4pPOlmvYMAHDvVbJUQpFoloYRSEUnnchYl1sbBqPECDY3hLZvp26PTMIVguU61Hy2tDl8wJcHUgi2qIUgJ+AJwEGyAp4NHBbea49fRJGpGyFZcASZRc4MPE1vjSYbwTU7iziMgbiVxt1a7JybKwGFc04KXZSxm6f90COYNxzFQxw3TpA9XTsRFRRHjX2PZAS7BrxEkeY+8PWsx/OLLFAuEZx99o2NqXL1MODGM381aFqgut2gW//JLfJI/wUkSLCCCqj3//M9oAu/ADwkJcpImKTJ8Kdi8q+8H76GWEmIMFnDdJK6aRt2tMvXwS34Dc78pzCk+B5vQ65xyYdBGX1yZBNtBzIpuuO3Tb/OVNmYP9IKu7ljY5jR8emVLP9M3RL/llyt1OhTxK/2fAOU4iLS6ch8o4uB6p8csAGrr0i0hunraQk+Gvlhc+TzYxlfbnR66Kq36jc6XM2rpdH/hdTC9J6Q3gThoCGiTFX6yib5F1P2W12mO7hJxOTSQsGnV1wrkqNMc3S3imjT1mYbWqs9ANgqh0xyOoG+NNtCIvngElfFKZXyWErOUNYU50zBKrG4aydSEW9zBC7Cj6JrbUkmjDNhqmBPZ0g5efAPL6xIGX5nXdV3zNEEWEkmAbMpMoS6lErwsYCv2JWTRSWWzKTSgRGeoJCRSy0OTCWFpKC9j/iRpBIeDQqSElMRcQFAx8xbwGRdERVBjdlrBTpMowCpZW5EFVcAuHYcoJCbGRU4jcoIo4XyNw4bYynyVj8Xs7Mr8tB1TV89X8cklxRjOhwPl8fXj5ZDs4Ewnf1aWiylpl1NiXNHk8vk+VsMU1XHPaPYBjIQQE7Q6cqshT5jrq5SnlKgSZJAIGjJbR2yZjGSQQiuMxlKBitFYnIITZT4ai8sljI7IZjpbl7VTti7qIpeQDNJhPc6J2umsOxmN7fCOoovFThWdJnLxlfkJDhdcJXqUkxyJfjmWwzdYDjOcGSyJJEz/CPXfBMFq2Q+vyeqhsmMjvTQSnTBJ9CNQJXau2c22QAeLcKzquxw3udlWdSUOMNmF/MpyNm2UG0lbiIMLoBnewGAqKcpz9TZP5ta0BkpneXLwkgbsbBXWpTOXbV/HsjuEpJrfkIsP9sUzRZbND9iGBVd0FZMWxxW0RMH23Hr/ebPje3JZYfQ5xSyvY/4PDjEZNQAAAHicY2BkYGAA4jufbkyJ57f5ysDNxAACdxcYX4PR/3/9/8zEzcQG5HIwgKUBkWwN/3icY2BkYGBiAAI9Job/v/5/ZeJmYGRABdYAXzsEagAAeJxjYGBgYALj//+Y4Gxk/P8/djY+MRT5X1D6Nwgz3sOnlhb4/18YGwDYOREyAAAAAAAAAAESASQBNgFKAVwBbgF+AZIBpAJiAxQDgARCBOQFbgWCBbgFygYaBjQGTga8BzIHZgeKCAYIXgmgCf4KLgpkCvALTAu8DAgMFgwkDNAM/A2gDhAOmA6sDsAO8A84D3QP+hAUEDAQqBDoERgRoBIWEkIUFhR+eJxjYGRgYLBm9GIQYQABJiDmAkIGhv9gPgMAF6MBsQB4nG2PPW7CQBCFn/mLAlKEEilSulWKNBHmp6DgANBT0Buz/kG211oWJC6QE+QMOUNOkDJnyFHybEYuEnal1ffevNnRABjiCx6q4+G2fqvTwg3VhdukoXCH/CTcxQDPwj36I+E+XjEXHuABAX/wOtVv93DCLdzhTbhN/124Q/4Q7uIRn8I9+t/CfWzwIzzAizc/py4ZpaEp1jo+ZoFtdAMbbQ+pKdTUnzTeShfaBk7v1PasDqd45lykImtytTSF01lmVGnNXofOT5wrF+NxJL4fmhxnpNwm4dYpQhgUWEMjxhEZN7ZX6v+dDTssDtSVUpjCx+RKbsVcUWcDVjR2zG6ZU+w9ceaMrkNEHTFjkJOWdWeVzngNnbKu7emE9H1OqLpKLDDmjf7k/Xp2/gurBGCqeJxtkVeXmzAQRvnWwsGYeDe9916U3jd/RpEG0LGQFAnWh38fijfZh+hB594zRcyQHCTzSZP/n2McYAGGFEucQ4YVcqxR4Dw2OMQRLuAiLuEyruAqruE6buAmbuE27uAu7uE+HuAhHuExnuApnuE5XuAlXuE1ON7gLd7hPT7gIz7hM77gK77hO37gGD+TXEjpOttqW21ECG7HldtZLkyb/9N9xFDZnomMejhj0FU9hdZnvJi582MgO5X8l7BbLmuSWzZiIYUhq0TgQqnNX2mcpT47VSZFrFdT0dismEnqIA2lk6TSDBWr4Y40pqQTMel8v5aBlG65FEExFUTFRs2pJz4lqcWARU3GD0vgtbAq1Y2oqNC2dDz+7sRQz0ZZGx1bHkkEWTPj5HY15FldagpZI7ThrmtXjbZdnD5hovU0yX7gxgVaetF7YRZelUtPzhvKvJkr2AhpIG/64Y7UsihOqIi1JqP2K4kuTJtmI+StbmjunbZh2NGy88YJlXWRAndlmZ5oRe5oJ4Idh2uDFrYytNm5MHQcXhh/fGS9busk+QOYc8P5") format("woff"),
|
12 |
-
url("../fonts/yith-icon.ttf?
|
13 |
-
font-weight: 400;
|
14 |
-
font-style: normal;
|
15 |
-
}
|
16 |
-
/* stylelint-enable */
|
17 |
-
|
18 |
-
|
19 |
-
[class^="yith-icon-"], [class*=" yith-icon-"] {
|
20 |
-
font-family: yith-icon !important;
|
21 |
-
speak: never;
|
22 |
-
font-style: normal;
|
23 |
-
font-weight: normal;
|
24 |
-
font-variant: normal;
|
25 |
-
text-transform: none;
|
26 |
-
line-height: 1;
|
27 |
-
|
28 |
-
-webkit-font-smoothing: antialiased;
|
29 |
-
-moz-osx-font-smoothing: grayscale;
|
30 |
-
|
31 |
-
width: 1em;
|
32 |
-
height: 1em;
|
33 |
-
font-size: 20px;
|
34 |
-
}
|
35 |
-
|
36 |
-
/* Icons */
|
37 |
-
|
38 |
-
.yith-icon-accounting:before {
|
39 |
-
content: "\e91d";
|
40 |
-
}
|
41 |
-
|
42 |
-
.yith-icon-arrow-down-alt:before {
|
43 |
-
content: "\f110";
|
44 |
-
}
|
45 |
-
|
46 |
-
.yith-icon-arrow-down:before {
|
47 |
-
content: "\e900";
|
48 |
-
}
|
49 |
-
|
50 |
-
.yith-icon-arrow-left-alt:before {
|
51 |
-
content: "\f111";
|
52 |
-
}
|
53 |
-
|
54 |
-
.yith-icon-arrow-left:before {
|
55 |
-
content: "\e901";
|
56 |
-
}
|
57 |
-
|
58 |
-
.yith-icon-arrow-right-alt:before {
|
59 |
-
content: "\f112";
|
60 |
-
}
|
61 |
-
|
62 |
-
.yith-icon-arrow-right:before {
|
63 |
-
content: "\e902";
|
64 |
-
}
|
65 |
-
|
66 |
-
.yith-icon-arrow-up-alt:before {
|
67 |
-
content: "\f113";
|
68 |
-
}
|
69 |
-
|
70 |
-
.yith-icon-arrow-up:before {
|
71 |
-
content: "\e903";
|
72 |
-
}
|
73 |
-
|
74 |
-
.yith-icon-bank-check:before {
|
75 |
-
content: "\e91e";
|
76 |
-
}
|
77 |
-
|
78 |
-
.yith-icon-bank:before {
|
79 |
-
content: "\e91c";
|
80 |
-
}
|
81 |
-
|
82 |
-
.yith-icon-calendar-add:before {
|
83 |
-
content: "\e913";
|
84 |
-
}
|
85 |
-
|
86 |
-
.yith-icon-calendar-money:before {
|
87 |
-
content: "\e914";
|
88 |
-
}
|
89 |
-
|
90 |
-
.yith-icon-calendar:before {
|
91 |
-
content: "\
|
92 |
-
}
|
93 |
-
|
94 |
-
.yith-icon-
|
95 |
-
content: "\
|
96 |
-
}
|
97 |
-
|
98 |
-
.yith-icon-
|
99 |
-
content: "\
|
100 |
-
}
|
101 |
-
|
102 |
-
.yith-icon-
|
103 |
-
content: "\
|
104 |
-
}
|
105 |
-
|
106 |
-
.yith-icon-check-
|
107 |
-
content: "\
|
108 |
-
}
|
109 |
-
|
110 |
-
.yith-icon-check:before {
|
111 |
-
content: "\
|
112 |
-
}
|
113 |
-
|
114 |
-
.yith-icon-
|
115 |
-
content: "\
|
116 |
-
}
|
117 |
-
|
118 |
-
.yith-icon-
|
119 |
-
content: "\
|
120 |
-
}
|
121 |
-
|
122 |
-
.yith-icon-
|
123 |
-
content: "\
|
124 |
-
}
|
125 |
-
|
126 |
-
.yith-icon-
|
127 |
-
content: "\
|
128 |
-
}
|
129 |
-
|
130 |
-
.yith-icon-
|
131 |
-
content: "\
|
132 |
-
}
|
133 |
-
|
134 |
-
.yith-icon-
|
135 |
-
content: "\
|
136 |
-
}
|
137 |
-
|
138 |
-
.yith-icon-
|
139 |
-
content: "\
|
140 |
-
}
|
141 |
-
|
142 |
-
.yith-icon-
|
143 |
-
content: "\
|
144 |
-
}
|
145 |
-
|
146 |
-
.yith-icon-
|
147 |
-
content: "\
|
148 |
-
}
|
149 |
-
|
150 |
-
.yith-icon-
|
151 |
-
content: "\
|
152 |
-
}
|
153 |
-
|
154 |
-
.yith-icon-
|
155 |
-
content: "\
|
156 |
-
}
|
157 |
-
|
158 |
-
.yith-icon-
|
159 |
-
content: "\
|
160 |
-
}
|
161 |
-
|
162 |
-
.yith-icon-
|
163 |
-
content: "\
|
164 |
-
}
|
165 |
-
|
166 |
-
.yith-icon-
|
167 |
-
content: "\
|
168 |
-
}
|
169 |
-
|
170 |
-
.yith-icon-
|
171 |
-
content: "\
|
172 |
-
}
|
173 |
-
|
174 |
-
.yith-icon-
|
175 |
-
content: "\
|
176 |
-
}
|
177 |
-
|
178 |
-
.yith-icon-
|
179 |
-
content: "\
|
180 |
-
}
|
181 |
-
|
182 |
-
.yith-icon-
|
183 |
-
content: "\
|
184 |
-
}
|
185 |
-
|
186 |
-
.yith-icon-
|
187 |
-
content: "\
|
188 |
-
}
|
189 |
-
|
190 |
-
.yith-icon-
|
191 |
-
content: "\
|
192 |
-
}
|
193 |
-
|
194 |
-
.yith-icon-
|
195 |
-
content: "\
|
196 |
-
}
|
197 |
-
|
198 |
-
.yith-icon-
|
199 |
-
content: "\
|
200 |
-
}
|
201 |
-
|
202 |
-
.yith-icon-
|
203 |
-
content: "\
|
204 |
-
}
|
205 |
-
|
206 |
-
.yith-icon-
|
207 |
-
content: "\
|
208 |
-
}
|
209 |
-
|
210 |
-
.yith-icon-
|
211 |
-
content: "\
|
212 |
-
}
|
213 |
-
|
214 |
-
.yith-icon-
|
215 |
-
content: "\
|
216 |
-
}
|
217 |
-
|
218 |
-
.yith-icon-
|
219 |
-
content: "\
|
220 |
-
}
|
221 |
-
|
222 |
-
.yith-icon-
|
223 |
-
content: "\
|
224 |
-
}
|
225 |
-
|
226 |
-
.yith-icon-
|
227 |
-
content: "\
|
228 |
-
}
|
229 |
-
|
230 |
-
.yith-icon-
|
231 |
-
content: "\
|
232 |
-
}
|
233 |
-
|
234 |
-
.yith-icon-
|
235 |
-
content: "\
|
236 |
-
}
|
237 |
-
|
238 |
-
.yith-icon-
|
239 |
-
content: "\
|
240 |
-
}
|
241 |
-
|
242 |
-
.yith-icon-
|
243 |
-
content: "\
|
244 |
-
}
|
245 |
-
|
246 |
-
.yith-icon-
|
247 |
-
content: "\
|
248 |
-
}
|
249 |
-
|
250 |
-
.yith-icon-
|
251 |
-
content: "\
|
252 |
-
}
|
253 |
-
|
254 |
-
.yith-icon-
|
255 |
-
content: "\
|
256 |
-
}
|
257 |
-
|
258 |
-
.yith-icon-
|
259 |
-
content: "\
|
260 |
-
}
|
261 |
-
|
262 |
-
.yith-icon-
|
263 |
-
content: "\
|
264 |
-
}
|
265 |
-
|
266 |
-
.yith-icon-
|
267 |
-
content: "\
|
268 |
-
}
|
269 |
-
|
270 |
-
.yith-icon-
|
271 |
-
content: "\
|
272 |
-
}
|
273 |
-
|
274 |
-
.yith-icon-
|
275 |
-
content: "\
|
276 |
-
}
|
277 |
-
|
278 |
-
.yith-icon-
|
279 |
-
content: "\
|
280 |
-
}
|
281 |
-
|
282 |
-
|
283 |
-
|
284 |
-
|
285 |
-
|
286 |
-
|
287 |
-
|
288 |
-
|
289 |
-
|
290 |
-
|
291 |
-
|
292 |
-
|
293 |
-
|
294 |
-
|
295 |
-
|
296 |
-
|
297 |
-
|
298 |
-
|
299 |
-
|
300 |
-
|
301 |
-
|
302 |
-
|
303 |
-
|
304 |
-
|
305 |
-
|
306 |
-
|
307 |
-
|
308 |
-
|
309 |
-
|
310 |
-
|
311 |
-
|
312 |
-
|
313 |
-
|
314 |
-
|
315 |
-
|
316 |
-
|
317 |
-
|
318 |
-
|
319 |
-
|
320 |
-
|
321 |
-
|
322 |
-
|
323 |
-
|
324 |
-
|
325 |
-
|
326 |
-
|
327 |
-
|
328 |
-
|
329 |
-
|
330 |
-
|
331 |
-
|
332 |
-
|
333 |
-
|
334 |
-
|
335 |
-
|
336 |
-
|
337 |
-
|
338 |
-
|
339 |
-
|
340 |
-
|
341 |
-
|
342 |
-
|
343 |
-
|
344 |
-
|
345 |
-
|
346 |
-
|
347 |
-
|
348 |
-
|
349 |
-
|
350 |
-
|
351 |
-
|
352 |
-
|
353 |
-
|
354 |
-
|
355 |
-
|
356 |
-
|
357 |
-
|
358 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
359 |
}
|
1 |
+
/**
|
2 |
+
* DO NOT EDIT THIS FILE DIRECTLY
|
3 |
+
* This file is automatically built using a build process
|
4 |
+
*/
|
5 |
+
|
6 |
+
/* stylelint-disable function-url-quotes, declaration-colon-newline-after */
|
7 |
+
@font-face {
|
8 |
+
font-family: yith-icon;
|
9 |
+
src: url("../fonts/yith-icon.eot?fb249816d6b6b6ea4bce1bf9f7028937");
|
10 |
+
src: url("../fonts/yith-icon.eot?fb249816d6b6b6ea4bce1bf9f7028937#iefix") format("embedded-opentype"),
|
11 |
+
url("data:application/x-font-woff;charset=utf-8;base64,d09GRgABAAAAACJoAAsAAAAAOVgAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABHU1VCAAABCAAAADMAAABCsP6z7U9TLzIAAAE8AAAAQAAAAFY4xksNY21hcAAAAXwAAAG1AAAE8hMl1hhnbHlmAAADNAAAGyAAACwY5txa+GhlYWQAAB5UAAAAMAAAADYcu7gWaGhlYQAAHoQAAAAeAAAAJAQ1AjRobXR4AAAepAAAADAAAAD4eeb/52xvY2EAAB7UAAAAfgAAAH5LMz6cbWF4cAAAH1QAAAAfAAAAIAFcAVZuYW1lAAAfdAAAATAAAAIiyMcJZnBvc3QAACCkAAABwwAAAtlwX/nWeJxjYGRgYOBikGPQYWB0cfMJYeBgYGGAAJAMY05meiJQDMoDyrGAaQ4gZoOIAgCKIwNPAHicY2Bk/M44gYGVgYNBjDGNgYHBHUp/ZZBkaGFgYGJgZWbACgLSXFMYHF4yfJRlAnH1mNgYeIE0I4gDAI+/CFF4nO3UR47bUBCE4Z9Ko5xzmOyccwZ8BMMn9YG88q6X7wTjapaPYQqfQD1RT010F4E20JSn0oLqDxV5/NZqVa836dfrLX7pc1evBsRtaZTT3Z3OKFVp51l9VPr+Bz/rXduc0WPCkg1H7skLXvGRD1xz0Nk5J4aMdMUz3vCer7zkCQPt0WfKjjlXfOEbWx6z4p1q+cR9LnnNBTd85qEqadHRP854zlvWPOCWR+wZs1ApHf4fw3xrTv99+p79sux6VJZTEA1Tz4imqXtEy9Qlom3qKNEx9ZY4M3WY6Jr6TfSsXu+bZoAYmGaAGJrmghiZJoQYm2aFmJimhpha/duZaZKIuWmmiIXl3cfSyL1XVt/L2jR7xMY0hcTWNI/EzjSZxN40o8TBNK3E0ch7OlkmJ84t0xMXRtZ+aeTeV0bWfm3k2o1p+pU0Uw6UNFMiKA1TNihtU0ooHVNeKGeW6S5dU4YoPVOaKH1TrigDU8IoQ1PWKCNT6ihjU/4oE1MSKVPLp0OZWT5RytzIuhZG1rI08tqVKcWUtSnPlI2Ra1tTxik7U9ope1PuKQcj145G1nsyFn8Bt6mdBQAAAHicrXoJlB3VeWb9td3aX9V7tfR7r+rt71Xv21tKTXerpYaWkBBCEmpJmB21MHjMOCjBWDKxZXzGNrYx4zOZYEsyJvGKlzOTk8SBOAc0OYDBmePYYfDY+OAkRs44icchSmayidL8t+r1IoFJfM50V/9197r3v//y/fc2YzP4A99lGSbHeEyRGWEmmAXmcuZa5iDzVubfMe9m3ss8xPwn5tPMV5jHmaeZb2Prerfq1GuiY9luuzrd61qdVrPt1DmranFYHoDtzsJ0bx46LdJtO+QNyrpvUBb9G8vCNyij301LOq32hnR9Y2YE3rgRPDESnx3RTFODo0jj58+e3Q5Ht5+lJZS8evYbAU0HqmUNBhuSh33NsjRKBv0VWqTSyqFgZUP5DYTjeY6SUKUphRMEbn9CFcyPKWkhz1+91hBOr6yYWnyaDggrmnnllfEJWIlPw0z6YfqVmSA4bakZmkMyksmcMDWDftXQzGHDGL40t0Jb4lgnVlZGLuoHx3iRf5OHiseFmGFYgPczAsM0IfIiD5j4QumVH5VXAEqvvFLCNokcne+3CdM25+2f/MT+5YQm1Qxz4QJ8iAXaRpDBIx68Lb6QDAH0B9/9dkjeD+dXx8J27zhPh+ETuj7WJ9KxvDAKI/h1OpN0lFJ8YW2cB9NxItrG+zidy3k+obiuC8m6PpF+h4QywCvpGPCu5J0Ms7a2B1fb4dp+Qkc4/6sJpdUaJSwD/8CoqEd11KJZZjtq0c3MCnMHcxfzIM7g58joxrS3UXQ3SC77r3eFkDgLyNOQdJFjUZ20p1FD69Ua6ucsRJco7K8YVAINlLZehhUENpOkqARSEtJE0mIkTSF55U17gLbr13bt9U3/7tv8W3+tZXRYNp5j2b/S/q+WzWrwNNKnXy9cV7+57MGeiZ/tb/yDVcz+j/Knsqf3BmwcsyywbJDV4zgZmNWzjJ7uI9qwOhMyo8wU02XmmC3Mtj7v34k2jIF2Yi0moJWBvvlw+oaE8oQakhGglonSJrLQIU61S2ozmA3YeleYrFcjoUlcz2l3N0MnbIVd14uQ1h0DbA/LW5Frk7ATYYJuC90UUmt1etOuLcJZQ5SkvyXkbyVJNIHqJjyLVJ2vlKESL589e13801moVOAxiGcAvhH/nWL6lu3ocs7QZcOlScm2m7pe0nU7Wyg0CoUskWVDlmFUEnsSf4Lj3sfLHVF6wdLK9ANIKpW5h/3SsXeV/RdeePjhh/1K5YYKHHE0NmezdlkW+RJLHJnN5VgHc0LAeoLFLipcnv9xET/QKM7TDxgylfwNPB5hlpi9iSdIrWqwMXWxoIXoGegf2PVmru2smm1vLdUmdafutJGr7W4dXllObNzRxMgtr7HpZBB8IwjgAOXNxhYHfuDPzOADz5SpSSun1NLie5OuD2hWeWVlJf40avSHh6jhHoJB+ho8SXv5DKOvrYtjLKacrK6L/m87cxVzhPkA8xHmP+I6cY9JIj84VUzbbkTnu7riWTZd4kWFbS9tmS5ytb4e4VKthBXdSxjF4dDjEEau122FrW6nF6E0uh5phUhdxxbDrujYXid0ejBzdAZZ4Ac+ssJPGIFpf8b3X0mKaNVq+UxSfvdyyrp1jv5P1/RlzRrwVLMw4BYs1TQ9xcyPm130CV8M/CXkFf6gx+gz1ff92X5yaTBlYpD8xPdS7vobmR4/NjAAMinobF0kqp3NcwMeqxZltiEk2RtKvCbPyGKJuhdGTG0n7sEcsxW19lrmFuYo2ktrXVw2ppBBia7+XNGbhVaY61K5o8SroXqWYBp1dhy42jh0NsN0CWwDIrFeQ3vQjaiKBuCVINicUTwlsz+jumpm3tRNZUuS3J8Ub1EzGfXLPLtsmo9Y1rmhbYOD2/YtDQ0tDVVnqtWZRUrqvMzxEQFJkyYF7v0wHdBOQUrv4fj3qKajZDKKk1JTjb+pmkYGpid2FCZ23NUfcN+2wfhn/RGR7CdshZcm0ICIoc+plF3mBrkl6HMyffxW7uvnRILgrmfuQWC3Knr9P+Ffyef+v2j1Ud9fDgJ8Dvj+BebnZe7+BdUd/P7PyCVvuPYXNADIPtL32S8i94pMgxlDvb+OuQ31vXqJavbdKOYd8jrTvurXnTVnnKDSere9CjpX0So6aa8djgMR2vCjeG7NMyqJr4Sn2bMDtdpkrTaAc89b1rGyKMuiZdN9r2HyVduiyaS0hingC6WAc9X4yzfCzqwWx3o2qwOrZeM/S7wku5MONlk7lB3I4rMia9KV+CeJR0T5yJWShsMcwWE0Gcb2vUVVubsSrEd9KQd/Qi2+DBTqsFz87ReC/wIOPBHfdqbyKNzLUKlb1VmNyaPUMdWNmsVdpHN9NLj0zqWld36YkqXNd2zefMd9lOw9YC+8ze2XI4Gz/Qok8Zndzsz92VVslWA9hykxEdqIa5hDzGHm3zPHmfsxOqHoDr8ROiUWv1530g+TUERfT7zeAoRT9Sn6V58i+IuUFrenObcMU96UNzlFPTkJnTIkPj0KyUzSs9magKnQCdHtJ+NMRb0oFEkNCyimwnSExWwo5rChE+I3Qky0sfn/ThZ25zxdy/zSPUtL9zxvEpLN6J77vJCVFaIQhxNyOaXRsh9XNIfjBpRGkNsnS5LiOYpY5BXwAf6UFXhNyGdJtkAEYEU24H+oKKws6yXIk+KyYehK4BRqHC8iCtONHOg1/7MJ3/7Qh3lk43yQMHbbgCCamaxVnvM5ABZ4sajHh2RJZ0EpGHn3fraYy2TMSvMBRas3IeQMQyuBatSaH9KMDC/ZDtf6As6IE4qknJcU2c+V4K0cR4DjOEVSC1ZxHSvH8L0+5vbA+85/z/0u5L3Jrzufh/dYa7JDbReNN2exXa2FKtNDFUEzvO5CqdJ0hfrGSlvkLg7+6lszrpv5o4zrt4p/VGy1isswlLwp+Yt+nZv54/57eblf5/9xvz0SmOrXIllfw9fh62hXmQRRh6l8Qel06fTqA8yGDFUEbPs1+Fpij7EXhDkgAL9hx1+ybTiAL/hdmoYDCWHW7A/lA7Xf+cRyL6BkMzm63DREbhO0ss0EV4SkBAL+JVUtatUFCjGSZhRArTMlZ4vIwTW2Ob6bkSRcM7WTU35pQNCz8U99vjEwMGDYt9x8M2w56s8XW41GyhNlnR3wVMJZEt38KWzc4H3W+aHglf0slP2Haft5/2ifi/Hfr3EblyX1beujuDIv8UqrEdHrrKtQnQ6g2u1g+TxUHTvxLf+GsP2i4GejOY0n0ZTGm+BZtKrw3O2VynPGahQzt5Z6x1qqtxbYwKepFU3jCi3rs1HExv/MnjzJHq54bxIfs/048hQiGcSTzWqIshIJ1YhKDjwe33/ZJ2696bF4L+wde9/yoV+5/e/v+uqX7/+bzx0+depatLf/fOHvUK0ZakOBIGj00Ph4Ebpi+kJeJC/SbeMLft8e+m8j9lXX2CN/OGZfs+uiHOD7ibT08WFnF+a+meaex1xf5wgrMjzujU5tO4mgjpJN3x6cit9rHIf3DW1ZXIh/uEuC3CIrxu89ZsCJLVdsiQ9KV0H2CjqEcOFfcBwBfoy7GjKXIUrejfNGwEpNpEgQUWGiPY1mEq2lUBsBmut1Oxic2mKOtOo1NL1oljFeoiYVBGzYnvZoBUW3pBWRHpzXnaFRZ7ZTGdm2u1rxRsa2bx0PHZXE59GNe7peaIqe/didg635LeOjniERxW6M3mXDb8cHWmM7Li8EIWLPJrd59os5EU1Ytu65wXSjOCwN6BWvmTPluic0CrrucYYN4p1a2W3mMrKcyTa8t+Mo324WR6SQaxaIPB/sySUhAt9f9wOMmyCFHu5zDVeN1p6uddpDT0JXRsQmroyuH+twrd4qSghXcQMw/dVI5bG3fOUt4yWJqE44vjV+qTK6dHrbSAWX8IEdY08Ums1Os1kwbNu37eM4b9uU5Wp5br5clWUz1/QqH2wWRoaLjWZxdKR4uIGNO41baGPf7sc18FX4xyQaPoi+8h3MfcwDzMPMZ5nfYp5lvs38GFfQSqY8hS4T10DDDoJRxsWYZR762xlthm4LLU7bE5PYN+p5BhADvCnRbWMumqKN2g6OyNE1oys1oBbiyxYpzMYi4lKHjBxZgN50lL7SohAxeHsKTRWx61M1gploGrvXw1qr2V5NYSlxRJSbdEJhF+WqhWz1qLWjWN8OcQSbrimBrmEaR8HnlJxhKllb0WzCgzJwQ3HWUE3VSMjyXNVuDrkZjoX4McP4nn/55MRCacmVhz0B7TcRFn1lICMZMsk61R/wksoP8kBU/ishTVPyIA9Ypkr8EK8e5ymVkoJ9IAkiAV0/KQkzogSUErA3YZKIM4IkCQ+BorpsThXRIw+0eq3dnAQmlDOmJwkSV+ZEUfIe0lhW4jUNJEUgmpT1CCcohqHcR0nGEjU/o3OSqN72rhtkwivTLLFEQePpt2WFZzMyj6vIGA7cyquETo7w9w6tJjU+XQKS968nRzaJRBZ76h2CyGIcw5GSpEosUcliXVd00LCSa/kDaPe72zmF5fj/4JqSrkicWBwQeKJkFNO9OK7LMD5TYQZRFi97vf0nFmpKBhKShwiGoDOFWuU5HFUXqjYRVSC6/3A23pScij5H6XZe4w+d4lXh9rtBjB+AR9hf3r33DwYajal6PY9YuJDLsYylrnfx4z/ZJgiHHub52yETP/9L8QVg79695yjkaJepxg25Au2V6Pva3Kk/p5FVEkc5ND66ZP5gVa1z1Lee2zC5eAyegxMjw1+A+zbOIPbhuXjTReNT/Bww1TdD0KT/5Z+DoXfRj78xhF7BGVBffOE8+uLXEJOpjMU0cScWmQMYHTKRR08zu9THTLDU0aBoorKSqlX1EGqgMnmuzbXDnBii5rco6fQipE7P6yL6sKoLLDUdOElqwDGE9tyehwjZ+4g9UUdAmatP2H5C4S5F8qQrIb4fGjfCQFHeLb04Ph6F4fXjnpTRHGt6pVFfPgdLEhENSfaG860ucOWB3NBHtnP80n+1x0uufpPulCfsRcMtjdvxdxArX/k+ljlyyGoHrrNb8uDaqfizhhEMVP38qBmArI2vxDP3CoJm5pyBoXy3qeZDWeI72wVhW7oH8CzECfZqM1vSE61xQN4nEe/Gw8FmujVYLtgihoMJusJKarJE4tS71NRMu3AKBq/Yc8UgZPP5LAwjjf+8Em2Nqq9CURLj79LYDYZF6UMSKeima0K4OHjFID6L+ey3aB8ki5WoWo0qi/9EG3+Lhnw7JJ1bWJBM1TRT2blwIZEdF+e9idlJT6XROqczR6lBjxt51NmsyxPKVpPuERrsElCXi16qjdLlJYujW4d2k1pW9L7HC8HckXtvn529fXboqtJxXpNiv3PozkPtNpIOzDlbW+MtAQ2CUG6Wu6ZABIm1WYwsMawgIitKA8dLVw3N0gHuPTIXFI7zkgZm51CnP8gHy/UCr6LhcP2CKKormipTg0NwtQqQtdgSzqHkhrgvTI7eAYTIY8FKeY9q10sC7gA8dAXdDj20nXa5biK9jo37csY+sM+Z8EFDSJdAw89/nv3r73I8+5nPILR7kZe5V2jEDR9x9h3ITT7z/MfXw2efLT5ykgWf9bPxuWc+ybEnn2HX44Jz4NIZglPtwjnUZ2d4eENdhtblqk7VQFvlg+Gv6TrF+VuYW5g7MWZloi4CB+qe2k6bwgK6dxMwznU2s+mxn0sBxQiEqV7hnpahxNkGSxwPMdaqoUD9dL3exo2P1s+evYQZ40BdMSKUEvyNrLOmwJXQYOVERQjljCoSLaeWVV0RBY6lgWHWsLKiJDZVUxOJkdN61fqqoVF12Vo1PmOj2jXNTmdnp6NO8BJX4kCUOXeQQ+H+aIBxj5STJVbXNVWUBFZhJTVjZzTCViqsKKiSLPMKbjqReFblJMWwTV1mgyNq325trtdkbXR81daZym92dnTwubLNcwVOJlxuhBflvpzAEzCCcmIxBeR7uvAaosNLE9vz9Tw+H8s38vg8lOaAydJcPnvRqz8uWkzEeXuYt2O6jypCil4zbAJgQ9ujRwAU51ILOAtugklagKBmQzZEMJWALA53amMHhE/JLpOpBDWGU62wE03BS4ZUfPvM1byOzpxzcLGytI0TjK2SIiqsi1G+ovNXz7y9qHBc/FGH44mc5lVebI7f+HFZJgp3M2B0ry5K2HnGZnnaxrXUusRziHpD20BEAV8oVAv56yoWAhyJ3JSRRIxfJFQ/1F7jZiIh9LEq11XKw/GZtVyjOlGsJw3iI7h1hCbja0WCtQieWLGU0ZtZnWNZXiPJdYGU3i3Dy0wOLVWZGUZdnmOWaISLYlm/xI2GpN5FyUzCWCt0aQjr0DM0koSADop2UnZRSeoWsRmcnpBI/Jerd7iC1hiNXwBTEve/pjiu7tZdgVdVLaO+2ygG1VqRlUxLMzK/Oj466sLnJiRTi08knVs8gqLR+BScWBbl+OxLUtPyD08KFqmG+njx8JVSYM5dk3Nz4WGGURI7DHC2L391ZhSx9jUY4x5ibkJpfB18iV5X4r2+5KIz140eSKhHbVxxzstNUjYcyAVBGAS2pKqWqv62H4abwtA3Pa/ieb9vB8Gg79tyUrf1mKV9UrOOJSeiz9AA+YvH4djvnYKTvw7HjoNMmw4GS5qp4ZOhw2wK30aHqXhPXlR347xuWfq8pf8eHepxzXrx8eBFyEH8s8c32sdz9NykmVyVdNvUwsG5l4dfxuevKXm5f1ZC2yVnJdRa5tpWPbGYZ31qNIGJ/f54rArfYWimmgbE1cQJ01M+7IYObJ4CJLgvfnY8hwa/A1srnXK5U4kfgcOtxTBchIfG0MLbvXK3vAWrgnAx3BIuttYwHrwG30rOFelZVP8ckdTRvFIXSaj5NUBI7nxJrRVG1Maiq23jBK7a7rS79qLfuzGaW8kXnIPtiT0T8J87XXvn9teSkgMdLMH6v9phIxvGohsRCKjjmyb2vBsH2L7z5NaeNrFpYu8EVvTnc+EfE7/OJ/pSp+dICC6b65pCPbdjhWuH0BEyAT52IN4E74nvT0GmgLpM3vrJ6sTE4sTEQvwj9PdnD8Qfg+f8FIiyyNFH3/q/aO3ixG9eS2P6hA8vwz8lPNjF7EVsiIiitR7eLkDqkNIIl3DUcvXSGBexnuj9AldXjOj43VYvy2rh2CGM5e0d7bbGZnutru+c8XYMT04O7/Amhi8vlS4f/oRrlRQ9W8irWb/g+lnVyuZVqzhpRaYpcrI3snDdPTqP0fOQ5zUa+Qyv33PdwoirwJ4PXN8tFrvXfyDjVBqNiv1sfgAU4htsCx2ekyty+Tyr+gobCpLqZou3VnhdmZXFMt+XzTOICYVEihN5SPCxB/BU6TceLT1JKftk6dFHS+996il89fs8xTJpnxStWIm0HrSffNL+0pcohRH7zBn7K/HerzpnzjgpxFmNAVRmmWoM1X96YIcMI8g2DK/76AwF3htnw/UDMRKihEaJeUiMQ1hKzim9XNgX2TR26Hbgh4Egy0JAz/md6mUrc4jFJH7TzXMCz9NCMRB4uOy2WXphBeE2/+EhZ/O/2HP1g5Or7vcvsAafz9i9hbnbN3O8sNqNi66PODoaO3v7Zp5j0w+xHFvKnxrLXQGcvblSWwUMO9fk7KUkHkxjniGq1/RClLpGFO6u1ebSs8uuVSX9OyaOXquioYeX4l1128qfy1t2fcE2zhk29I4Fwa1BQD4aPBvAB/34p8MDjjMwDHb802KlUgR79vvf/z48OHvw4Kp9SvhdWo9C0dmsnrihquFn+kFdP9L8P+PUenS+B8+dOoX51XgSnCl7eZ8zfZ6Gc34a263eJyUxXQO93STTYRaoLsHGYA4S20JNC5ait/OQ0lzTRlQRERpC1RHNL1Dsh6pEzRBHLU91AUUhgfnUClHpAGYbvVf4KCXxdxE3XTU/nJme7ZTsbHMMtKACUd7xd+6utia5Pw3EkYpjOPmp2sCgsnNoV6kAogGjrawttKvNzXewTH8kJBcYHGx83C34k743lMkuDRpG+Zr73Kai7TugqFFDKU+qnig33fKYl4u/FBR8yA4uZTNDnmFE5eUJ7L4W/yvwvcQ7TjPz6WlhVE12utPqIwDPzXW6VQSpTlWoIldE0j/YRY71sDFKvEBdY3LKZkfu9AJsRrDcotKPmtaC37ElwdbjXZolSCb8DnAQb4cX46cFvxHwW2kQtSgU674A8yi58aeIq/OkQPgOJ3FXExB3k4zfbD6iiDJw6Nf0+DUZk0X6X0DxiuV5Fsq4Zdv05ctmRlRVMfMHLDvGmfwmQZIPy3uLDsNfeI1igWTv07tYpsm1aoQTE//daRaByjK9kIbXXuWz/DlOkuAsIqjmD37wlzSA9+DPCYkDSZdUGb4W7zw48mcfppqSYAwWcNwsjppH2W0wreS/XNoY+23GmOK3YAdanYsODHpoi+vz4HqIWdEM9yL6fyv1HkYP9ICu5TlY5rUjemRL/4WlLUbdqFZv0aaIX+l/ydTo1Rlm188DRWzc6tfYZUBpXT0lRFNPS+jO0A+L69fAPfy026+ho9Js1O7fkFJNp/NLjoPpOSE9CcRGE0CLnOS6J73HaEXdsF+cniXicKggSdGGmw5cUb84PVvEMWnoswDdDVdILjKhX5y0oF9NJ9BOb0vi+my9PrtEiV0t2sKybVlV1rCtbG7Or+znBdhf8e09uaxVAyy17LlidT8v/hLLGxI6X5k3DEMPdUEWzCxAMWfnUJZyJi8LWIp1pix6uWIxhwpk9ptKgplba5o1hdWmvIzxk6QTbA4qkUwpi7GAoGHkLeA7I4iqoCluXsVKm6jAqkVXlQVNwCoDm6hEETMipxPZJGrSX+ewQFnvr/GK4hbX++ddRdvYX8M3lxUV7A8narPbZmsJ2c/ZXumyIqeoeZ9TFa5ic6XSCKtjiOr5ryuOACxTUAS9havVcU0Y62t0TTlRI7hAIui42BZiy2zKgxxqYdqWMlRM22IX7CjzaVsczrT6LFvsT13WL5q6aIicKVmkv/QMJ+qXLt0r6Gx/7cg6RbmYdbrIZdb7mxwOuIH1yCc5Zf2aL4dvshxGOIuYEkkS/hFqvwmC1VqUHJO1EmHHQnpoJHpJkBiloErsH7PbPYE2FuG5RuRz3PxOVzPUDMD8AK5Xlot5q9bOukKG3g7rVjg2nsuK8nKrx5PlTd2x6mWhHL+qA7vUgK35wk17t7LsfiGrlbYHmfGRTKHCsqUx13LgloFK1uG4sm6W3dBvjV69NHs4KArTL6l2bSvz/wDOM4tleJxjYGRgYADi0BkB0+L5bb4ycDMxgMDd07snwOj/v/5/ZuJmYgNyORjA0gBnoA1yeJxjYGRgYGIAAj0mhv+//n9l4mZgZEAFdgBfPgRtAAB4nGNgYGBgAuP//5jgbGT8/z92Ni41uDBIzf9fUPZvEGa8R0gPtfH/vzA2AE+EEzYAAAAAARIBJAE2AUoBXAFuAX4BkgGkAmIDFAOABEIE3AV+BggGHAZSBygHOgeKB6QHvggsCKIIwAj0CRgJlAnsCy4LjAu8C/IMfgzaDUoNlg2kDbIOXg6KDy4PnhAmEDoQThB+EMYRAhGIEaIRvhI2EnYSphMuE6QT0BWkFgwAAHicY2BkYGCwY/RiEGEAASYg5gJCBob/YD4DABf0AbQAeJxtjz1uwkAQhZ/5iwJShBIpUrpVijQR5qeg4ADQU9Abs/5BttdaFiQukBPkDDlDTpAyZ8hR8mxGLhJ2pdX33rzZ0QAY4gsequPhtn6r08IN1YXbpKFwh/wk3MUAz8I9+iPhPl4xFx7gAQF/8DrVb/dwwi3c4U24Tf9duEP+EO7iEZ/CPfrfwn1s8CM8wIs3P6cuGaWhKdY6PmaBbXQDG20PqSnU1J803koX2gZO79T2rA6neOZcpCJrcrU0hdNZZlRpzV6Hzk+cKxfjcSS+H5ocZ6TcJuHWKUIYFFhDI8YRGTe2V+r/nQ07LA7UlVKYwsfkSm7FXFFnA1Y0dsxumVPsPXHmjK5DRB0xY5CTlnVnlc54DZ2yru3phPR9Tqi6Siww5o3+5P16dv4LqwRgqnicbVJpd9sgENTEyJVt1Unapvd9X/S+j/S3UFhJPCNQQYqf/n2RlKT5UD7sm9llh2Ug2UmmlSb/X4fYwQwMKeY4hwwLLLFCjvNYYxd72McFXMQlHOAyruAqruE6buAmbuE27uAu7uE+HuAhHuExnuApnuE5XuAlOF7hNd7gLd7hPT7gIz7hM77gK77hO37gJw7xK1kKKV1nW23LtfDebblyW8uFaZf/6HHFUNGeqQx0d4Jel9VYWp3h+YS7ZihkJ2T5W9gNlxXJDRtgLoUhq4TnQqn1KamdpX7/lIbYoDpD2UmGSRGqxSgzyOcTktpLQwcTabwrPYVwnE3HbCpNVF7EGGhoTEfEpGv6lfSkdMul8CqVcVrLlBclG5JL6omPW9Uswrwi00TLeCWsSnUtSsq1LRwPfzoRVdhAVkaHlgcSXlbMOLlZxH1WF5p8VgttuOvaRa1tF8ZBRrQa731sT+08zRvRN8LMGlXMG3JNtKAxUwcbQOqpMX2MgVoWxBHlodJk1GRgFpwf34UNYNnqmibttPXRv3nXGCdU1gXy3BVFeqQVub2t8Ha4XOu1sKWh9db5qBhPGL5JYL1uqyT5C2UN1gAA") format("woff"),
|
12 |
+
url("../fonts/yith-icon.ttf?fb249816d6b6b6ea4bce1bf9f7028937") format("truetype");
|
13 |
+
font-weight: 400;
|
14 |
+
font-style: normal;
|
15 |
+
}
|
16 |
+
/* stylelint-enable */
|
17 |
+
|
18 |
+
|
19 |
+
[class^="yith-icon-"], [class*=" yith-icon-"] {
|
20 |
+
font-family: yith-icon !important;
|
21 |
+
speak: never;
|
22 |
+
font-style: normal;
|
23 |
+
font-weight: normal;
|
24 |
+
font-variant: normal;
|
25 |
+
text-transform: none;
|
26 |
+
line-height: 1;
|
27 |
+
|
28 |
+
-webkit-font-smoothing: antialiased;
|
29 |
+
-moz-osx-font-smoothing: grayscale;
|
30 |
+
|
31 |
+
width: 1em;
|
32 |
+
height: 1em;
|
33 |
+
font-size: 20px;
|
34 |
+
}
|
35 |
+
|
36 |
+
/* Icons */
|
37 |
+
|
38 |
+
.yith-icon-accounting:before {
|
39 |
+
content: "\e91d";
|
40 |
+
}
|
41 |
+
|
42 |
+
.yith-icon-arrow-down-alt:before {
|
43 |
+
content: "\f110";
|
44 |
+
}
|
45 |
+
|
46 |
+
.yith-icon-arrow-down:before {
|
47 |
+
content: "\e900";
|
48 |
+
}
|
49 |
+
|
50 |
+
.yith-icon-arrow-left-alt:before {
|
51 |
+
content: "\f111";
|
52 |
+
}
|
53 |
+
|
54 |
+
.yith-icon-arrow-left:before {
|
55 |
+
content: "\e901";
|
56 |
+
}
|
57 |
+
|
58 |
+
.yith-icon-arrow-right-alt:before {
|
59 |
+
content: "\f112";
|
60 |
+
}
|
61 |
+
|
62 |
+
.yith-icon-arrow-right:before {
|
63 |
+
content: "\e902";
|
64 |
+
}
|
65 |
+
|
66 |
+
.yith-icon-arrow-up-alt:before {
|
67 |
+
content: "\f113";
|
68 |
+
}
|
69 |
+
|
70 |
+
.yith-icon-arrow-up:before {
|
71 |
+
content: "\e903";
|
72 |
+
}
|
73 |
+
|
74 |
+
.yith-icon-bank-check:before {
|
75 |
+
content: "\e91e";
|
76 |
+
}
|
77 |
+
|
78 |
+
.yith-icon-bank:before {
|
79 |
+
content: "\e91c";
|
80 |
+
}
|
81 |
+
|
82 |
+
.yith-icon-calendar-add:before {
|
83 |
+
content: "\e913";
|
84 |
+
}
|
85 |
+
|
86 |
+
.yith-icon-calendar-money:before {
|
87 |
+
content: "\e914";
|
88 |
+
}
|
89 |
+
|
90 |
+
.yith-icon-calendar-schedule:before {
|
91 |
+
content: "\f11c";
|
92 |
+
}
|
93 |
+
|
94 |
+
.yith-icon-calendar:before {
|
95 |
+
content: "\e904";
|
96 |
+
}
|
97 |
+
|
98 |
+
.yith-icon-calendar2:before {
|
99 |
+
content: "\e915";
|
100 |
+
}
|
101 |
+
|
102 |
+
.yith-icon-cash:before {
|
103 |
+
content: "\e91f";
|
104 |
+
}
|
105 |
+
|
106 |
+
.yith-icon-check-alt:before {
|
107 |
+
content: "\f114";
|
108 |
+
}
|
109 |
+
|
110 |
+
.yith-icon-check-circle:before {
|
111 |
+
content: "\e921";
|
112 |
+
}
|
113 |
+
|
114 |
+
.yith-icon-check-progress-circle:before {
|
115 |
+
content: "\f11d";
|
116 |
+
}
|
117 |
+
|
118 |
+
.yith-icon-check:before {
|
119 |
+
content: "\e905";
|
120 |
+
}
|
121 |
+
|
122 |
+
.yith-icon-clone:before {
|
123 |
+
content: "\f105";
|
124 |
+
}
|
125 |
+
|
126 |
+
.yith-icon-close-alt:before {
|
127 |
+
content: "\f117";
|
128 |
+
}
|
129 |
+
|
130 |
+
.yith-icon-close:before {
|
131 |
+
content: "\e906";
|
132 |
+
}
|
133 |
+
|
134 |
+
.yith-icon-copy:before {
|
135 |
+
content: "\f101";
|
136 |
+
}
|
137 |
+
|
138 |
+
.yith-icon-credit-card:before {
|
139 |
+
content: "\e920";
|
140 |
+
}
|
141 |
+
|
142 |
+
.yith-icon-crown:before {
|
143 |
+
content: "\f11b";
|
144 |
+
}
|
145 |
+
|
146 |
+
.yith-icon-drag:before {
|
147 |
+
content: "\e90f";
|
148 |
+
}
|
149 |
+
|
150 |
+
.yith-icon-edit:before {
|
151 |
+
content: "\e907";
|
152 |
+
}
|
153 |
+
|
154 |
+
.yith-icon-eye-closed:before {
|
155 |
+
content: "\e912";
|
156 |
+
}
|
157 |
+
|
158 |
+
.yith-icon-eye:before {
|
159 |
+
content: "\e911";
|
160 |
+
}
|
161 |
+
|
162 |
+
.yith-icon-helping-hand:before {
|
163 |
+
content: "\f10c";
|
164 |
+
}
|
165 |
+
|
166 |
+
.yith-icon-image:before {
|
167 |
+
content: "\f10a";
|
168 |
+
}
|
169 |
+
|
170 |
+
.yith-icon-info-squared:before {
|
171 |
+
content: "\e922";
|
172 |
+
}
|
173 |
+
|
174 |
+
.yith-icon-info:before {
|
175 |
+
content: "\e90e";
|
176 |
+
}
|
177 |
+
|
178 |
+
.yith-icon-list-search:before {
|
179 |
+
content: "\f10d";
|
180 |
+
}
|
181 |
+
|
182 |
+
.yith-icon-lock:before {
|
183 |
+
content: "\f119";
|
184 |
+
}
|
185 |
+
|
186 |
+
.yith-icon-magnifier:before {
|
187 |
+
content: "\e908";
|
188 |
+
}
|
189 |
+
|
190 |
+
.yith-icon-mail-out:before {
|
191 |
+
content: "\f109";
|
192 |
+
}
|
193 |
+
|
194 |
+
.yith-icon-minus-alt:before {
|
195 |
+
content: "\f118";
|
196 |
+
}
|
197 |
+
|
198 |
+
.yith-icon-minus:before {
|
199 |
+
content: "\f10f";
|
200 |
+
}
|
201 |
+
|
202 |
+
.yith-icon-money-check:before {
|
203 |
+
content: "\f11a";
|
204 |
+
}
|
205 |
+
|
206 |
+
.yith-icon-more:before {
|
207 |
+
content: "\f102";
|
208 |
+
}
|
209 |
+
|
210 |
+
.yith-icon-paypal:before {
|
211 |
+
content: "\e91b";
|
212 |
+
}
|
213 |
+
|
214 |
+
.yith-icon-pdf:before {
|
215 |
+
content: "\f107";
|
216 |
+
}
|
217 |
+
|
218 |
+
.yith-icon-pencil:before {
|
219 |
+
content: "\e909";
|
220 |
+
}
|
221 |
+
|
222 |
+
.yith-icon-people:before {
|
223 |
+
content: "\e916";
|
224 |
+
}
|
225 |
+
|
226 |
+
.yith-icon-plus-alt:before {
|
227 |
+
content: "\f115";
|
228 |
+
}
|
229 |
+
|
230 |
+
.yith-icon-plus:before {
|
231 |
+
content: "\e90a";
|
232 |
+
}
|
233 |
+
|
234 |
+
.yith-icon-reply:before {
|
235 |
+
content: "\e91a";
|
236 |
+
}
|
237 |
+
|
238 |
+
.yith-icon-reset:before {
|
239 |
+
content: "\e910";
|
240 |
+
}
|
241 |
+
|
242 |
+
.yith-icon-save:before {
|
243 |
+
content: "\f10b";
|
244 |
+
}
|
245 |
+
|
246 |
+
.yith-icon-shield-money:before {
|
247 |
+
content: "\e917";
|
248 |
+
}
|
249 |
+
|
250 |
+
.yith-icon-sort-alt:before {
|
251 |
+
content: "\f116";
|
252 |
+
}
|
253 |
+
|
254 |
+
.yith-icon-sort:before {
|
255 |
+
content: "\f106";
|
256 |
+
}
|
257 |
+
|
258 |
+
.yith-icon-time-check:before {
|
259 |
+
content: "\e918";
|
260 |
+
}
|
261 |
+
|
262 |
+
.yith-icon-trash:before {
|
263 |
+
content: "\e90d";
|
264 |
+
}
|
265 |
+
|
266 |
+
.yith-icon-update:before {
|
267 |
+
content: "\e90b";
|
268 |
+
}
|
269 |
+
|
270 |
+
.yith-icon-upload:before {
|
271 |
+
content: "\e90c";
|
272 |
+
}
|
273 |
+
|
274 |
+
.yith-icon-user-off:before {
|
275 |
+
content: "\f108";
|
276 |
+
}
|
277 |
+
|
278 |
+
.yith-icon-video:before {
|
279 |
+
content: "\f10e";
|
280 |
+
}
|
281 |
+
|
282 |
+
.yith-icon-warning-triangle:before {
|
283 |
+
content: "\e923";
|
284 |
+
}
|
285 |
+
|
286 |
+
.yith-icon-world-settings:before {
|
287 |
+
content: "\e919";
|
288 |
+
}
|
289 |
+
|
290 |
+
.yith-icon-yith:before {
|
291 |
+
content: "\e924";
|
292 |
+
}
|
293 |
+
|
294 |
+
/** -------------------------------------------
|
295 |
+
* Deprecated icons
|
296 |
+
*/
|
297 |
+
|
298 |
+
/** Deprecated: use yith-icon-paypal instead */
|
299 |
+
.yith-icon-paypal-svgrepo-com:before {
|
300 |
+
content: "\e91b";
|
301 |
+
}
|
302 |
+
|
303 |
+
/** Deprecated: use yith-icon-arrow-down instead */
|
304 |
+
.yith-icon-arrow_down:before {
|
305 |
+
content: "\e900";
|
306 |
+
}
|
307 |
+
|
308 |
+
/** Deprecated: use yith-icon-eye instead */
|
309 |
+
.yith-icon-arrow_eye:before {
|
310 |
+
content: "\e911";
|
311 |
+
}
|
312 |
+
|
313 |
+
/** Deprecated: use yith-icon-eye-closed instead */
|
314 |
+
.yith-icon-arrow_eye_closed:before {
|
315 |
+
content: "\e912";
|
316 |
+
}
|
317 |
+
|
318 |
+
/** Deprecated: use yith-icon-arrow-left instead */
|
319 |
+
.yith-icon-arrow_left:before {
|
320 |
+
content: "\e901";
|
321 |
+
}
|
322 |
+
|
323 |
+
/** Deprecated: use yith-icon-arrow-right instead */
|
324 |
+
.yith-icon-arrow_right:before {
|
325 |
+
content: "\e902";
|
326 |
+
}
|
327 |
+
|
328 |
+
/** Deprecated: use yith-icon-arrow-up instead */
|
329 |
+
.yith-icon-arrow_up:before {
|
330 |
+
content: "\e903";
|
331 |
+
}
|
332 |
+
|
333 |
+
/** Deprecated: use yith-icon-calendar instead */
|
334 |
+
.yith-icon-calendar2:before {
|
335 |
+
content: "\e904";
|
336 |
+
}
|
337 |
+
|
338 |
+
/** Deprecated: use yith-icon-calendar-add instead */
|
339 |
+
.yith-icon-calendar_add:before {
|
340 |
+
content: "\e913";
|
341 |
+
}
|
342 |
+
|
343 |
+
/** Deprecated: use yith-icon-calendar-money instead */
|
344 |
+
.yith-icon-calendar_money:before {
|
345 |
+
content: "\e914";
|
346 |
+
}
|
347 |
+
|
348 |
+
/** Deprecated: use yith-icon-shield-money instead */
|
349 |
+
.yith-icon-shield_money:before {
|
350 |
+
content: "\e917";
|
351 |
+
}
|
352 |
+
|
353 |
+
/** Deprecated: use yith-icon-time-check instead */
|
354 |
+
.yith-icon-time_check:before {
|
355 |
+
content: "\e918";
|
356 |
+
}
|
357 |
+
|
358 |
+
/** Deprecated: use yith-icon-world-settings instead */
|
359 |
+
.yith-icon-world_settings:before {
|
360 |
+
content: "\e919";
|
361 |
+
}
|
362 |
+
|
363 |
+
/** Deprecated: use yith-icon-edit instead */
|
364 |
+
.yith-icon-pencil:before {
|
365 |
+
content: "\e907";
|
366 |
+
}
|
367 |
+
|
368 |
+
/** Deprecated: use yith-icon-reset instead */
|
369 |
+
.yith-icon-update:before {
|
370 |
+
content: "\e910";
|
371 |
}
|
plugin-fw/assets/css/yith-select2-no-wc.css
CHANGED
@@ -1,741 +1,741 @@
|
|
1 |
-
.select2-container {
|
2 |
-
-webkit-box-sizing : border-box;
|
3 |
-
box-sizing : border-box;
|
4 |
-
display : inline-block;
|
5 |
-
margin : 0;
|
6 |
-
position : relative;
|
7 |
-
vertical-align : middle
|
8 |
-
}
|
9 |
-
|
10 |
-
.select2-container .select2-selection--single {
|
11 |
-
-webkit-box-sizing : border-box;
|
12 |
-
box-sizing : border-box;
|
13 |
-
cursor : pointer;
|
14 |
-
display : block;
|
15 |
-
height : 28px;
|
16 |
-
margin : 0 0 -4px;
|
17 |
-
-moz-user-select : none;
|
18 |
-
-ms-user-select : none;
|
19 |
-
user-select : none;
|
20 |
-
-webkit-user-select : none
|
21 |
-
}
|
22 |
-
|
23 |
-
.select2-container .select2-selection--single .select2-selection__rendered {
|
24 |
-
display : block;
|
25 |
-
padding-left : 8px;
|
26 |
-
padding-right : 20px;
|
27 |
-
overflow : hidden;
|
28 |
-
text-overflow : ellipsis;
|
29 |
-
white-space : nowrap
|
30 |
-
}
|
31 |
-
|
32 |
-
.select2-container .select2-selection--single .select2-selection__clear {
|
33 |
-
position : relative
|
34 |
-
}
|
35 |
-
|
36 |
-
.select2-container[dir=rtl] .select2-selection--single .select2-selection__rendered {
|
37 |
-
padding-right : 8px;
|
38 |
-
padding-left : 20px
|
39 |
-
}
|
40 |
-
|
41 |
-
.select2-container .select2-selection--multiple {
|
42 |
-
-webkit-box-sizing : border-box;
|
43 |
-
box-sizing : border-box;
|
44 |
-
cursor : pointer;
|
45 |
-
display : block;
|
46 |
-
min-height : 32px;
|
47 |
-
-moz-user-select : none;
|
48 |
-
-ms-user-select : none;
|
49 |
-
user-select : none;
|
50 |
-
-webkit-user-select : none
|
51 |
-
}
|
52 |
-
|
53 |
-
.select2-container .select2-selection--multiple .select2-selection__rendered {
|
54 |
-
display : inline-block;
|
55 |
-
overflow : hidden;
|
56 |
-
padding-left : 8px;
|
57 |
-
text-overflow : ellipsis;
|
58 |
-
white-space : nowrap
|
59 |
-
}
|
60 |
-
|
61 |
-
.select2-container .select2-search--inline {
|
62 |
-
float : left;
|
63 |
-
padding : 0
|
64 |
-
}
|
65 |
-
|
66 |
-
.select2-container .select2-search--inline .select2-search__field {
|
67 |
-
-webkit-box-sizing : border-box;
|
68 |
-
box-sizing : border-box;
|
69 |
-
border : none;
|
70 |
-
font-size : 100%;
|
71 |
-
margin : 0;
|
72 |
-
padding : 0
|
73 |
-
}
|
74 |
-
|
75 |
-
.select2-container .select2-search--inline .select2-search__field::-webkit-search-cancel-button {
|
76 |
-
-webkit-appearance : none
|
77 |
-
}
|
78 |
-
|
79 |
-
.select2-dropdown {
|
80 |
-
background-color : #fff;
|
81 |
-
border : 1px solid #aaa;
|
82 |
-
border-radius : 4px;
|
83 |
-
-webkit-box-sizing : border-box;
|
84 |
-
box-sizing : border-box;
|
85 |
-
display : block;
|
86 |
-
position : absolute;
|
87 |
-
left : -100000px;
|
88 |
-
width : 100%;
|
89 |
-
z-index : 1051
|
90 |
-
}
|
91 |
-
|
92 |
-
.select2-results {
|
93 |
-
display : block
|
94 |
-
}
|
95 |
-
|
96 |
-
.select2-results__options {
|
97 |
-
list-style : none;
|
98 |
-
margin : 0;
|
99 |
-
padding : 0
|
100 |
-
}
|
101 |
-
|
102 |
-
.select2-results__option {
|
103 |
-
padding : 6px;
|
104 |
-
-moz-user-select : none;
|
105 |
-
-ms-user-select : none;
|
106 |
-
user-select : none;
|
107 |
-
-webkit-user-select : none
|
108 |
-
}
|
109 |
-
|
110 |
-
.select2-results__option[aria-selected], .select2-results__option[data-selected] {
|
111 |
-
cursor : pointer
|
112 |
-
}
|
113 |
-
|
114 |
-
.select2-container--open .select2-dropdown {
|
115 |
-
left : 0
|
116 |
-
}
|
117 |
-
|
118 |
-
.select2-container--open .select2-dropdown--above {
|
119 |
-
border-bottom : none;
|
120 |
-
border-bottom-left-radius : 0;
|
121 |
-
border-bottom-right-radius : 0
|
122 |
-
}
|
123 |
-
|
124 |
-
.select2-container--open .select2-dropdown--below {
|
125 |
-
border-top : none;
|
126 |
-
border-top-left-radius : 0;
|
127 |
-
border-top-right-radius : 0
|
128 |
-
}
|
129 |
-
|
130 |
-
.select2-search--dropdown {
|
131 |
-
display : block;
|
132 |
-
padding : 4px
|
133 |
-
}
|
134 |
-
|
135 |
-
.select2-search--dropdown .select2-search__field {
|
136 |
-
padding : 4px;
|
137 |
-
width : 100%;
|
138 |
-
-webkit-box-sizing : border-box;
|
139 |
-
box-sizing : border-box
|
140 |
-
}
|
141 |
-
|
142 |
-
.select2-search--dropdown .select2-search__field::-webkit-search-cancel-button {
|
143 |
-
-webkit-appearance : none
|
144 |
-
}
|
145 |
-
|
146 |
-
.select2-search--dropdown.select2-search--hide {
|
147 |
-
display : none
|
148 |
-
}
|
149 |
-
|
150 |
-
.select2-close-mask {
|
151 |
-
border : 0;
|
152 |
-
margin : 0;
|
153 |
-
padding : 0;
|
154 |
-
display : block;
|
155 |
-
position : fixed;
|
156 |
-
left : 0;
|
157 |
-
top : 0;
|
158 |
-
min-height : 100%;
|
159 |
-
min-width : 100%;
|
160 |
-
height : auto;
|
161 |
-
width : auto;
|
162 |
-
opacity : 0;
|
163 |
-
z-index : 99;
|
164 |
-
background-color : #fff
|
165 |
-
}
|
166 |
-
|
167 |
-
.select2-hidden-accessible {
|
168 |
-
border : 0 !important;
|
169 |
-
clip : rect(0 0 0 0) !important;
|
170 |
-
height : 1px !important;
|
171 |
-
margin : -1px !important;
|
172 |
-
overflow : hidden !important;
|
173 |
-
padding : 0 !important;
|
174 |
-
position : absolute !important;
|
175 |
-
width : 1px !important
|
176 |
-
}
|
177 |
-
|
178 |
-
.select2-container--default .select2-selection--single {
|
179 |
-
background-color : #fff;
|
180 |
-
border : 1px solid #aaa;
|
181 |
-
border-radius : 4px
|
182 |
-
}
|
183 |
-
|
184 |
-
.select2-container--default .select2-selection--single .select2-selection__rendered {
|
185 |
-
color : #444;
|
186 |
-
line-height : 28px
|
187 |
-
}
|
188 |
-
|
189 |
-
.select2-container--default .select2-selection--single .select2-selection__clear {
|
190 |
-
cursor : pointer;
|
191 |
-
float : right;
|
192 |
-
font-weight : 700
|
193 |
-
}
|
194 |
-
|
195 |
-
.select2-container--default .select2-selection--single .select2-selection__placeholder {
|
196 |
-
color : #999
|
197 |
-
}
|
198 |
-
|
199 |
-
.select2-container--default .select2-selection--single .select2-selection__arrow {
|
200 |
-
height : 26px;
|
201 |
-
position : absolute;
|
202 |
-
top : 1px;
|
203 |
-
right : 1px;
|
204 |
-
width : 20px
|
205 |
-
}
|
206 |
-
|
207 |
-
.select2-container--default .select2-selection--single .select2-selection__arrow b {
|
208 |
-
border-color : #888 transparent transparent transparent;
|
209 |
-
border-style : solid;
|
210 |
-
border-width : 5px 4px 0 4px;
|
211 |
-
height : 0;
|
212 |
-
left : 50%;
|
213 |
-
margin-left : -4px;
|
214 |
-
margin-top : -2px;
|
215 |
-
position : absolute;
|
216 |
-
top : 50%;
|
217 |
-
width : 0
|
218 |
-
}
|
219 |
-
|
220 |
-
.select2-container--default[dir=rtl] .select2-selection--single .select2-selection__clear {
|
221 |
-
float : left
|
222 |
-
}
|
223 |
-
|
224 |
-
.select2-container--default[dir=rtl] .select2-selection--single .select2-selection__arrow {
|
225 |
-
left : 1px;
|
226 |
-
right : auto
|
227 |
-
}
|
228 |
-
|
229 |
-
.select2-container--default.select2-container--disabled .select2-selection--single {
|
230 |
-
background-color : #eee;
|
231 |
-
cursor : default
|
232 |
-
}
|
233 |
-
|
234 |
-
.select2-container--default.select2-container--disabled .select2-selection--single .select2-selection__clear {
|
235 |
-
display : none
|
236 |
-
}
|
237 |
-
|
238 |
-
.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
|
239 |
-
border-color : transparent transparent #888 transparent;
|
240 |
-
border-width : 0 4px 5px 4px
|
241 |
-
}
|
242 |
-
|
243 |
-
.select2-container--default .select2-selection--multiple {
|
244 |
-
background-color : #fff;
|
245 |
-
border : 1px solid #aaa;
|
246 |
-
cursor : text;
|
247 |
-
}
|
248 |
-
|
249 |
-
.select2-container--default .select2-selection--multiple .select2-selection__rendered {
|
250 |
-
-webkit-box-sizing : border-box;
|
251 |
-
box-sizing : border-box;
|
252 |
-
list-style : none;
|
253 |
-
margin : 0;
|
254 |
-
padding : 0 5px;
|
255 |
-
width : 100%
|
256 |
-
}
|
257 |
-
|
258 |
-
.select2-container--default .select2-selection--multiple .select2-selection__rendered li {
|
259 |
-
list-style : none;
|
260 |
-
margin : 5px 5px 0 0
|
261 |
-
}
|
262 |
-
|
263 |
-
.select2-container--default .select2-selection--multiple .select2-selection__rendered li:before {
|
264 |
-
content : '';
|
265 |
-
display : none
|
266 |
-
}
|
267 |
-
|
268 |
-
.select2-container--default .select2-selection--multiple .select2-selection__placeholder {
|
269 |
-
color : #999;
|
270 |
-
margin-top : 5px;
|
271 |
-
float : left
|
272 |
-
}
|
273 |
-
|
274 |
-
.select2-container--default .select2-selection--multiple .select2-selection__clear {
|
275 |
-
cursor : pointer;
|
276 |
-
float : right;
|
277 |
-
font-weight : 700;
|
278 |
-
margin-top : 5px;
|
279 |
-
margin-right : 10px
|
280 |
-
}
|
281 |
-
|
282 |
-
.select2-container--default .select2-selection--multiple .select2-selection__choice {
|
283 |
-
background-color : #e4e4e4;
|
284 |
-
border : 1px solid #aaa;
|
285 |
-
border-radius : 4px;
|
286 |
-
cursor : default;
|
287 |
-
float : left;
|
288 |
-
margin-right : 5px;
|
289 |
-
margin-top : 5px;
|
290 |
-
padding : 0 5px
|
291 |
-
}
|
292 |
-
|
293 |
-
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
|
294 |
-
color : #999;
|
295 |
-
cursor : pointer;
|
296 |
-
display : inline-block;
|
297 |
-
font-weight : 700;
|
298 |
-
margin-right : 2px
|
299 |
-
}
|
300 |
-
|
301 |
-
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover {
|
302 |
-
color : #333
|
303 |
-
}
|
304 |
-
|
305 |
-
.select2-container--default[dir=rtl] .select2-selection--multiple .select2-search--inline, .select2-container--default[dir=rtl] .select2-selection--multiple .select2-selection__choice, .select2-container--default[dir=rtl] .select2-selection--multiple .select2-selection__placeholder {
|
306 |
-
float : right
|
307 |
-
}
|
308 |
-
|
309 |
-
.select2-container--default[dir=rtl] .select2-selection--multiple .select2-selection__choice {
|
310 |
-
margin-left : 5px;
|
311 |
-
margin-right : auto
|
312 |
-
}
|
313 |
-
|
314 |
-
.select2-container--default[dir=rtl] .select2-selection--multiple .select2-selection__choice__remove {
|
315 |
-
margin-left : 2px;
|
316 |
-
margin-right : auto
|
317 |
-
}
|
318 |
-
|
319 |
-
.select2-container--default.select2-container--focus .select2-selection--multiple {
|
320 |
-
border : solid #000 1px;
|
321 |
-
outline : 0
|
322 |
-
}
|
323 |
-
|
324 |
-
.select2-container--default.select2-container--disabled .select2-selection--multiple {
|
325 |
-
background-color : #eee;
|
326 |
-
cursor : default
|
327 |
-
}
|
328 |
-
|
329 |
-
.select2-container--default.select2-container--disabled .select2-selection__choice__remove {
|
330 |
-
display : none
|
331 |
-
}
|
332 |
-
|
333 |
-
.select2-container--default.select2-container--open.select2-container--above .select2-selection--multiple, .select2-container--default.select2-container--open.select2-container--above .select2-selection--single {
|
334 |
-
border-top-left-radius : 0;
|
335 |
-
border-top-right-radius : 0
|
336 |
-
}
|
337 |
-
|
338 |
-
.select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple, .select2-container--default.select2-container--open.select2-container--below .select2-selection--single {
|
339 |
-
border-bottom-left-radius : 0;
|
340 |
-
border-bottom-right-radius : 0
|
341 |
-
}
|
342 |
-
|
343 |
-
.select2-container--default .select2-search--dropdown .select2-search__field {
|
344 |
-
border : 1px solid #aaa
|
345 |
-
}
|
346 |
-
|
347 |
-
.select2-container--default .select2-search--inline .select2-search__field {
|
348 |
-
background : 0 0;
|
349 |
-
border : none;
|
350 |
-
outline : 0;
|
351 |
-
-webkit-box-shadow : none;
|
352 |
-
box-shadow : none;
|
353 |
-
-webkit-appearance : textfield
|
354 |
-
}
|
355 |
-
|
356 |
-
.select2-container--default .select2-results > .select2-results__options {
|
357 |
-
max-height : 200px;
|
358 |
-
overflow-y : auto
|
359 |
-
}
|
360 |
-
|
361 |
-
.select2-container--default .select2-results__option[role=group] {
|
362 |
-
padding : 0
|
363 |
-
}
|
364 |
-
|
365 |
-
.select2-container--default .select2-results__option[aria-disabled=true] {
|
366 |
-
color : #999
|
367 |
-
}
|
368 |
-
|
369 |
-
.select2-container--default .select2-results__option[aria-selected=true], .select2-container--default .select2-results__option[data-selected=true] {
|
370 |
-
background-color : #ddd
|
371 |
-
}
|
372 |
-
|
373 |
-
.select2-container--default .select2-results__option .select2-results__option {
|
374 |
-
padding-left : 1em
|
375 |
-
}
|
376 |
-
|
377 |
-
.select2-container--default .select2-results__option .select2-results__option .select2-results__group {
|
378 |
-
padding-left : 0
|
379 |
-
}
|
380 |
-
|
381 |
-
.select2-container--default .select2-results__option .select2-results__option .select2-results__option {
|
382 |
-
margin-left : -1em;
|
383 |
-
padding-left : 2em
|
384 |
-
}
|
385 |
-
|
386 |
-
.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
|
387 |
-
margin-left : -2em;
|
388 |
-
padding-left : 3em
|
389 |
-
}
|
390 |
-
|
391 |
-
.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
|
392 |
-
margin-left : -3em;
|
393 |
-
padding-left : 4em
|
394 |
-
}
|
395 |
-
|
396 |
-
.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
|
397 |
-
margin-left : -4em;
|
398 |
-
padding-left : 5em
|
399 |
-
}
|
400 |
-
|
401 |
-
.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
|
402 |
-
margin-left : -5em;
|
403 |
-
padding-left : 6em
|
404 |
-
}
|
405 |
-
|
406 |
-
.select2-container--default .select2-results__option--highlighted[aria-selected], .select2-container--default .select2-results__option--highlighted[data-selected] {
|
407 |
-
background-color : #0073aa;
|
408 |
-
color : #fff
|
409 |
-
}
|
410 |
-
|
411 |
-
.select2-container--default .select2-results__group {
|
412 |
-
cursor : default;
|
413 |
-
display : block;
|
414 |
-
padding : 6px
|
415 |
-
}
|
416 |
-
|
417 |
-
.select2-container--classic .select2-selection--single {
|
418 |
-
background-color : #f7f7f7;
|
419 |
-
border : 1px solid #aaa;
|
420 |
-
border-radius : 4px;
|
421 |
-
outline : 0;
|
422 |
-
background-image : -webkit-gradient(linear, left top, left bottom, color-stop(50%, #fff), to(#eee));
|
423 |
-
background-image : -webkit-linear-gradient(top, #fff 50%, #eee 100%);
|
424 |
-
background-image : linear-gradient(to bottom, #fff 50%, #eee 100%);
|
425 |
-
background-repeat : repeat-x
|
426 |
-
}
|
427 |
-
|
428 |
-
.select2-container--classic .select2-selection--single:focus {
|
429 |
-
border : 1px solid #0073aa
|
430 |
-
}
|
431 |
-
|
432 |
-
.select2-container--classic .select2-selection--single .select2-selection__rendered {
|
433 |
-
color : #444;
|
434 |
-
line-height : 28px
|
435 |
-
}
|
436 |
-
|
437 |
-
.select2-container--classic .select2-selection--single .select2-selection__clear {
|
438 |
-
cursor : pointer;
|
439 |
-
float : right;
|
440 |
-
font-weight : 700;
|
441 |
-
margin-right : 10px
|
442 |
-
}
|
443 |
-
|
444 |
-
.select2-container--classic .select2-selection--single .select2-selection__placeholder {
|
445 |
-
color : #999
|
446 |
-
}
|
447 |
-
|
448 |
-
.select2-container--classic .select2-selection--single .select2-selection__arrow {
|
449 |
-
background-color : #ddd;
|
450 |
-
border : none;
|
451 |
-
border-left : 1px solid #aaa;
|
452 |
-
border-top-right-radius : 4px;
|
453 |
-
border-bottom-right-radius : 4px;
|
454 |
-
height : 26px;
|
455 |
-
position : absolute;
|
456 |
-
top : 1px;
|
457 |
-
right : 1px;
|
458 |
-
width : 20px;
|
459 |
-
background-image : -webkit-gradient(linear, left top, left bottom, color-stop(50%, #eee), to(#ccc));
|
460 |
-
background-image : -webkit-linear-gradient(top, #eee 50%, #ccc 100%);
|
461 |
-
background-image : linear-gradient(to bottom, #eee 50%, #ccc 100%);
|
462 |
-
background-repeat : repeat-x
|
463 |
-
}
|
464 |
-
|
465 |
-
.select2-container--classic .select2-selection--single .select2-selection__arrow b {
|
466 |
-
border-color : #888 transparent transparent transparent;
|
467 |
-
border-style : solid;
|
468 |
-
border-width : 5px 4px 0 4px;
|
469 |
-
height : 0;
|
470 |
-
left : 50%;
|
471 |
-
margin-left : -4px;
|
472 |
-
margin-top : -2px;
|
473 |
-
position : absolute;
|
474 |
-
top : 50%;
|
475 |
-
width : 0
|
476 |
-
}
|
477 |
-
|
478 |
-
.select2-container--classic[dir=rtl] .select2-selection--single .select2-selection__clear {
|
479 |
-
float : left
|
480 |
-
}
|
481 |
-
|
482 |
-
.select2-container--classic[dir=rtl] .select2-selection--single .select2-selection__arrow {
|
483 |
-
border : none;
|
484 |
-
border-right : 1px solid #aaa;
|
485 |
-
border-radius : 0;
|
486 |
-
border-top-left-radius : 4px;
|
487 |
-
border-bottom-left-radius : 4px;
|
488 |
-
left : 1px;
|
489 |
-
right : auto
|
490 |
-
}
|
491 |
-
|
492 |
-
.select2-container--classic.select2-container--open .select2-selection--single {
|
493 |
-
border : 1px solid #0073aa
|
494 |
-
}
|
495 |
-
|
496 |
-
.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow {
|
497 |
-
background : 0 0;
|
498 |
-
border : none
|
499 |
-
}
|
500 |
-
|
501 |
-
.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow b {
|
502 |
-
border-color : transparent transparent #888 transparent;
|
503 |
-
border-width : 0 4px 5px 4px
|
504 |
-
}
|
505 |
-
|
506 |
-
.select2-container--classic.select2-container--open.select2-container--above .select2-selection--single {
|
507 |
-
border-top : none;
|
508 |
-
border-top-left-radius : 0;
|
509 |
-
border-top-right-radius : 0;
|
510 |
-
background-image : -webkit-gradient(linear, left top, left bottom, from(white), color-stop(50%, #eee));
|
511 |
-
background-image : -webkit-linear-gradient(top, #fff 0, #eee 50%);
|
512 |
-
background-image : linear-gradient(to bottom, #fff 0, #eee 50%);
|
513 |
-
background-repeat : repeat-x
|
514 |
-
}
|
515 |
-
|
516 |
-
.select2-container--classic.select2-container--open.select2-container--below .select2-selection--single {
|
517 |
-
border-bottom : none;
|
518 |
-
border-bottom-left-radius : 0;
|
519 |
-
border-bottom-right-radius : 0;
|
520 |
-
background-image : -webkit-gradient(linear, left top, left bottom, color-stop(50%, #eee), to(white));
|
521 |
-
background-image : -webkit-linear-gradient(top, #eee 50%, #fff 100%);
|
522 |
-
background-image : linear-gradient(to bottom, #eee 50%, #fff 100%);
|
523 |
-
background-repeat : repeat-x
|
524 |
-
}
|
525 |
-
|
526 |
-
.select2-container--classic .select2-selection--multiple {
|
527 |
-
background-color : #fff;
|
528 |
-
border : 1px solid #aaa;
|
529 |
-
border-radius : 4px;
|
530 |
-
cursor : text;
|
531 |
-
outline : 0
|
532 |
-
}
|
533 |
-
|
534 |
-
.select2-container--classic .select2-selection--multiple:focus {
|
535 |
-
border : 1px solid #0073aa
|
536 |
-
}
|
537 |
-
|
538 |
-
.select2-container--classic .select2-selection--multiple .select2-selection__rendered {
|
539 |
-
list-style : none;
|
540 |
-
margin : 0;
|
541 |
-
padding : 0 5px
|
542 |
-
}
|
543 |
-
|
544 |
-
.select2-container--classic .select2-selection--multiple .select2-selection__clear {
|
545 |
-
display : none
|
546 |
-
}
|
547 |
-
|
548 |
-
.select2-container--classic .select2-selection--multiple .select2-selection__choice {
|
549 |
-
background-color : #e4e4e4;
|
550 |
-
border : 1px solid #aaa;
|
551 |
-
border-radius : 4px;
|
552 |
-
cursor : default;
|
553 |
-
float : left;
|
554 |
-
margin-right : 5px;
|
555 |
-
margin-top : 5px;
|
556 |
-
padding : 0 5px
|
557 |
-
}
|
558 |
-
|
559 |
-
.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove {
|
560 |
-
color : #888;
|
561 |
-
cursor : pointer;
|
562 |
-
display : inline-block;
|
563 |
-
font-weight : 700;
|
564 |
-
margin-right : 2px
|
565 |
-
}
|
566 |
-
|
567 |
-
.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove:hover {
|
568 |
-
color : #555
|
569 |
-
}
|
570 |
-
|
571 |
-
.select2-container--classic[dir=rtl] .select2-selection--multiple .select2-selection__choice {
|
572 |
-
float : right
|
573 |
-
}
|
574 |
-
|
575 |
-
.select2-container--classic[dir=rtl] .select2-selection--multiple .select2-selection__choice {
|
576 |
-
margin-left : 5px;
|
577 |
-
margin-right : auto
|
578 |
-
}
|
579 |
-
|
580 |
-
.select2-container--classic[dir=rtl] .select2-selection--multiple .select2-selection__choice__remove {
|
581 |
-
margin-left : 2px;
|
582 |
-
margin-right : auto
|
583 |
-
}
|
584 |
-
|
585 |
-
.select2-container--classic.select2-container--open .select2-selection--multiple {
|
586 |
-
border : 1px solid #0073aa
|
587 |
-
}
|
588 |
-
|
589 |
-
.select2-container--classic.select2-container--open.select2-container--above .select2-selection--multiple {
|
590 |
-
border-top : none;
|
591 |
-
border-top-left-radius : 0;
|
592 |
-
border-top-right-radius : 0
|
593 |
-
}
|
594 |
-
|
595 |
-
.select2-container--classic.select2-container--open.select2-container--below .select2-selection--multiple {
|
596 |
-
border-bottom : none;
|
597 |
-
border-bottom-left-radius : 0;
|
598 |
-
border-bottom-right-radius : 0
|
599 |
-
}
|
600 |
-
|
601 |
-
.select2-container--classic .select2-search--dropdown .select2-search__field {
|
602 |
-
border : 1px solid #aaa;
|
603 |
-
outline : 0
|
604 |
-
}
|
605 |
-
|
606 |
-
.select2-container--classic .select2-search--inline .select2-search__field {
|
607 |
-
outline : 0;
|
608 |
-
-webkit-box-shadow : none;
|
609 |
-
box-shadow : none
|
610 |
-
}
|
611 |
-
|
612 |
-
.select2-container--classic .select2-dropdown {
|
613 |
-
background-color : #fff;
|
614 |
-
border : 1px solid transparent
|
615 |
-
}
|
616 |
-
|
617 |
-
.select2-container--classic .select2-dropdown--above {
|
618 |
-
border-bottom : none
|
619 |
-
}
|
620 |
-
|
621 |
-
.select2-container--classic .select2-dropdown--below {
|
622 |
-
border-top : none
|
623 |
-
}
|
624 |
-
|
625 |
-
.select2-container--classic .select2-results > .select2-results__options {
|
626 |
-
max-height : 200px;
|
627 |
-
overflow-y : auto
|
628 |
-
}
|
629 |
-
|
630 |
-
.select2-container--classic .select2-results__option[role=group] {
|
631 |
-
padding : 0
|
632 |
-
}
|
633 |
-
|
634 |
-
.select2-container--classic .select2-results__option[aria-disabled=true] {
|
635 |
-
color : grey
|
636 |
-
}
|
637 |
-
|
638 |
-
.select2-container--classic .select2-results__option--highlighted[aria-selected], .select2-container--classic .select2-results__option--highlighted[data-selected] {
|
639 |
-
background-color : #3875d7;
|
640 |
-
color : #fff
|
641 |
-
}
|
642 |
-
|
643 |
-
.select2-container--classic .select2-results__group {
|
644 |
-
cursor : default;
|
645 |
-
display : block;
|
646 |
-
padding : 6px
|
647 |
-
}
|
648 |
-
|
649 |
-
.select2-container--classic.select2-container--open .select2-dropdown {
|
650 |
-
border-color : #0073aa
|
651 |
-
}
|
652 |
-
|
653 |
-
|
654 |
-
.select2-drop, .select2-dropdown {
|
655 |
-
z-index : 999999 !important
|
656 |
-
}
|
657 |
-
|
658 |
-
.select2-results {
|
659 |
-
line-height : 1.5em
|
660 |
-
}
|
661 |
-
|
662 |
-
.select2-results .select2-results__group, .select2-results .select2-results__option {
|
663 |
-
margin : 0;
|
664 |
-
padding : 8px
|
665 |
-
}
|
666 |
-
|
667 |
-
.select2-results .description {
|
668 |
-
display : block;
|
669 |
-
color : #999;
|
670 |
-
padding-top : 4px
|
671 |
-
}
|
672 |
-
|
673 |
-
.select2-dropdown {
|
674 |
-
border-color : #ddd
|
675 |
-
}
|
676 |
-
|
677 |
-
.select2-dropdown--below {
|
678 |
-
-webkit-box-shadow : 0 1px 1px rgba(0, 0, 0, .1);
|
679 |
-
box-shadow : 0 1px 1px rgba(0, 0, 0, .1)
|
680 |
-
}
|
681 |
-
|
682 |
-
.select2-dropdown--above {
|
683 |
-
-webkit-box-shadow : 0 -1px 1px rgba(0, 0, 0, .1);
|
684 |
-
box-shadow : 0 -1px 1px rgba(0, 0, 0, .1)
|
685 |
-
}
|
686 |
-
|
687 |
-
.select2-container .select2-selection__rendered.ui-sortable li {
|
688 |
-
cursor : move
|
689 |
-
}
|
690 |
-
|
691 |
-
.select2-container .select2-selection {
|
692 |
-
border-color : #ddd
|
693 |
-
}
|
694 |
-
|
695 |
-
.select2-container .select2-search__field {
|
696 |
-
min-width : 150px
|
697 |
-
}
|
698 |
-
|
699 |
-
.select2-container .select2-selection--single {
|
700 |
-
height : 32px
|
701 |
-
}
|
702 |
-
|
703 |
-
.select2-container .select2-selection--single .select2-selection__rendered {
|
704 |
-
line-height : 32px;
|
705 |
-
padding-right : 24px
|
706 |
-
}
|
707 |
-
|
708 |
-
.select2-container .select2-selection--single .select2-selection__arrow {
|
709 |
-
right : 3px;
|
710 |
-
height : 30px
|
711 |
-
}
|
712 |
-
|
713 |
-
.select2-container .select2-selection--multiple {
|
714 |
-
min-height : 28px;
|
715 |
-
border-radius : 0;
|
716 |
-
line-height : 1.5
|
717 |
-
}
|
718 |
-
|
719 |
-
.select2-container .select2-selection--multiple li {
|
720 |
-
margin : 0
|
721 |
-
}
|
722 |
-
|
723 |
-
.select2-container .select2-selection--multiple .select2-selection__choice {
|
724 |
-
padding : 2px 6px
|
725 |
-
}
|
726 |
-
|
727 |
-
.select2-container .select2-selection--multiple .select2-selection__choice .description {
|
728 |
-
display : none
|
729 |
-
}
|
730 |
-
|
731 |
-
.select2-container .select2-selection__clear {
|
732 |
-
color : #999;
|
733 |
-
margin-top : -1px
|
734 |
-
}
|
735 |
-
|
736 |
-
.select2-container .select2-search--inline .select2-search__field {
|
737 |
-
font-family : inherit;
|
738 |
-
font-size : inherit;
|
739 |
-
font-weight : inherit;
|
740 |
-
padding : 3px 0
|
741 |
}
|
1 |
+
.select2-container {
|
2 |
+
-webkit-box-sizing : border-box;
|
3 |
+
box-sizing : border-box;
|
4 |
+
display : inline-block;
|
5 |
+
margin : 0;
|
6 |
+
position : relative;
|
7 |
+
vertical-align : middle
|
8 |
+
}
|
9 |
+
|
10 |
+
.select2-container .select2-selection--single {
|
11 |
+
-webkit-box-sizing : border-box;
|
12 |
+
box-sizing : border-box;
|
13 |
+
cursor : pointer;
|
14 |
+
display : block;
|
15 |
+
height : 28px;
|
16 |
+
margin : 0 0 -4px;
|
17 |
+
-moz-user-select : none;
|
18 |
+
-ms-user-select : none;
|
19 |
+
user-select : none;
|
20 |
+
-webkit-user-select : none
|
21 |
+
}
|
22 |
+
|
23 |
+
.select2-container .select2-selection--single .select2-selection__rendered {
|
24 |
+
display : block;
|
25 |
+
padding-left : 8px;
|
26 |
+
padding-right : 20px;
|
27 |
+
overflow : hidden;
|
28 |
+
text-overflow : ellipsis;
|
29 |
+
white-space : nowrap
|
30 |
+
}
|
31 |
+
|
32 |
+
.select2-container .select2-selection--single .select2-selection__clear {
|
33 |
+
position : relative
|
34 |
+
}
|
35 |
+
|
36 |
+
.select2-container[dir=rtl] .select2-selection--single .select2-selection__rendered {
|
37 |
+
padding-right : 8px;
|
38 |
+
padding-left : 20px
|
39 |
+
}
|
40 |
+
|
41 |
+
.select2-container .select2-selection--multiple {
|
42 |
+
-webkit-box-sizing : border-box;
|
43 |
+
box-sizing : border-box;
|
44 |
+
cursor : pointer;
|
45 |
+
display : block;
|
46 |
+
min-height : 32px;
|
47 |
+
-moz-user-select : none;
|
48 |
+
-ms-user-select : none;
|
49 |
+
user-select : none;
|
50 |
+
-webkit-user-select : none
|
51 |
+
}
|
52 |
+
|
53 |
+
.select2-container .select2-selection--multiple .select2-selection__rendered {
|
54 |
+
display : inline-block;
|
55 |
+
overflow : hidden;
|
56 |
+
padding-left : 8px;
|
57 |
+
text-overflow : ellipsis;
|
58 |
+
white-space : nowrap
|
59 |
+
}
|
60 |
+
|
61 |
+
.select2-container .select2-search--inline {
|
62 |
+
float : left;
|
63 |
+
padding : 0
|
64 |
+
}
|
65 |
+
|
66 |
+
.select2-container .select2-search--inline .select2-search__field {
|
67 |
+
-webkit-box-sizing : border-box;
|
68 |
+
box-sizing : border-box;
|
69 |
+
border : none;
|
70 |
+
font-size : 100%;
|
71 |
+
margin : 0;
|
72 |
+
padding : 0
|
73 |
+
}
|
74 |
+
|
75 |
+
.select2-container .select2-search--inline .select2-search__field::-webkit-search-cancel-button {
|
76 |
+
-webkit-appearance : none
|
77 |
+
}
|
78 |
+
|
79 |
+
.select2-dropdown {
|
80 |
+
background-color : #fff;
|
81 |
+
border : 1px solid #aaa;
|
82 |
+
border-radius : 4px;
|
83 |
+
-webkit-box-sizing : border-box;
|
84 |
+
box-sizing : border-box;
|
85 |
+
display : block;
|
86 |
+
position : absolute;
|
87 |
+
left : -100000px;
|
88 |
+
width : 100%;
|
89 |
+
z-index : 1051
|
90 |
+
}
|
91 |
+
|
92 |
+
.select2-results {
|
93 |
+
display : block
|
94 |
+
}
|
95 |
+
|
96 |
+
.select2-results__options {
|
97 |
+
list-style : none;
|
98 |
+
margin : 0;
|
99 |
+
padding : 0
|
100 |
+
}
|
101 |
+
|
102 |
+
.select2-results__option {
|
103 |
+
padding : 6px;
|
104 |
+
-moz-user-select : none;
|
105 |
+
-ms-user-select : none;
|
106 |
+
user-select : none;
|
107 |
+
-webkit-user-select : none
|
108 |
+
}
|
109 |
+
|
110 |
+
.select2-results__option[aria-selected], .select2-results__option[data-selected] {
|
111 |
+
cursor : pointer
|
112 |
+
}
|
113 |
+
|
114 |
+
.select2-container--open .select2-dropdown {
|
115 |
+
left : 0
|
116 |
+
}
|
117 |
+
|
118 |
+
.select2-container--open .select2-dropdown--above {
|
119 |
+
border-bottom : none;
|
120 |
+
border-bottom-left-radius : 0;
|
121 |
+
border-bottom-right-radius : 0
|
122 |
+
}
|
123 |
+
|
124 |
+
.select2-container--open .select2-dropdown--below {
|
125 |
+
border-top : none;
|
126 |
+
border-top-left-radius : 0;
|
127 |
+
border-top-right-radius : 0
|
128 |
+
}
|
129 |
+
|
130 |
+
.select2-search--dropdown {
|
131 |
+
display : block;
|
132 |
+
padding : 4px
|
133 |
+
}
|
134 |
+
|
135 |
+
.select2-search--dropdown .select2-search__field {
|
136 |
+
padding : 4px;
|
137 |
+
width : 100%;
|
138 |
+
-webkit-box-sizing : border-box;
|
139 |
+
box-sizing : border-box
|
140 |
+
}
|
141 |
+
|
142 |
+
.select2-search--dropdown .select2-search__field::-webkit-search-cancel-button {
|
143 |
+
-webkit-appearance : none
|
144 |
+
}
|
145 |
+
|
146 |
+
.select2-search--dropdown.select2-search--hide {
|
147 |
+
display : none
|
148 |
+
}
|
149 |
+
|
150 |
+
.select2-close-mask {
|
151 |
+
border : 0;
|
152 |
+
margin : 0;
|
153 |
+
padding : 0;
|
154 |
+
display : block;
|
155 |
+
position : fixed;
|
156 |
+
left : 0;
|
157 |
+
top : 0;
|
158 |
+
min-height : 100%;
|
159 |
+
min-width : 100%;
|
160 |
+
height : auto;
|
161 |
+
width : auto;
|
162 |
+
opacity : 0;
|
163 |
+
z-index : 99;
|
164 |
+
background-color : #fff
|
165 |
+
}
|
166 |
+
|
167 |
+
.select2-hidden-accessible {
|
168 |
+
border : 0 !important;
|
169 |
+
clip : rect(0 0 0 0) !important;
|
170 |
+
height : 1px !important;
|
171 |
+
margin : -1px !important;
|
172 |
+
overflow : hidden !important;
|
173 |
+
padding : 0 !important;
|
174 |
+
position : absolute !important;
|
175 |
+
width : 1px !important
|
176 |
+
}
|
177 |
+
|
178 |
+
.select2-container--default .select2-selection--single {
|
179 |
+
background-color : #fff;
|
180 |
+
border : 1px solid #aaa;
|
181 |
+
border-radius : 4px
|
182 |
+
}
|
183 |
+
|
184 |
+
.select2-container--default .select2-selection--single .select2-selection__rendered {
|
185 |
+
color : #444;
|
186 |
+
line-height : 28px
|
187 |
+
}
|
188 |
+
|
189 |
+
.select2-container--default .select2-selection--single .select2-selection__clear {
|
190 |
+
cursor : pointer;
|
191 |
+
float : right;
|
192 |
+
font-weight : 700
|
193 |
+
}
|
194 |
+
|
195 |
+
.select2-container--default .select2-selection--single .select2-selection__placeholder {
|
196 |
+
color : #999
|
197 |
+
}
|
198 |
+
|
199 |
+
.select2-container--default .select2-selection--single .select2-selection__arrow {
|
200 |
+
height : 26px;
|
201 |
+
position : absolute;
|
202 |
+
top : 1px;
|
203 |
+
right : 1px;
|
204 |
+
width : 20px
|
205 |
+
}
|
206 |
+
|
207 |
+
.select2-container--default .select2-selection--single .select2-selection__arrow b {
|
208 |
+
border-color : #888 transparent transparent transparent;
|
209 |
+
border-style : solid;
|
210 |
+
border-width : 5px 4px 0 4px;
|
211 |
+
height : 0;
|
212 |
+
left : 50%;
|
213 |
+
margin-left : -4px;
|
214 |
+
margin-top : -2px;
|
215 |
+
position : absolute;
|
216 |
+
top : 50%;
|
217 |
+
width : 0
|
218 |
+
}
|
219 |
+
|
220 |
+
.select2-container--default[dir=rtl] .select2-selection--single .select2-selection__clear {
|
221 |
+
float : left
|
222 |
+
}
|
223 |
+
|
224 |
+
.select2-container--default[dir=rtl] .select2-selection--single .select2-selection__arrow {
|
225 |
+
left : 1px;
|
226 |
+
right : auto
|
227 |
+
}
|
228 |
+
|
229 |
+
.select2-container--default.select2-container--disabled .select2-selection--single {
|
230 |
+
background-color : #eee;
|
231 |
+
cursor : default
|
232 |
+
}
|
233 |
+
|
234 |
+
.select2-container--default.select2-container--disabled .select2-selection--single .select2-selection__clear {
|
235 |
+
display : none
|
236 |
+
}
|
237 |
+
|
238 |
+
.select2-container--default.select2-container--open .select2-selection--single .select2-selection__arrow b {
|
239 |
+
border-color : transparent transparent #888 transparent;
|
240 |
+
border-width : 0 4px 5px 4px
|
241 |
+
}
|
242 |
+
|
243 |
+
.select2-container--default .select2-selection--multiple {
|
244 |
+
background-color : #fff;
|
245 |
+
border : 1px solid #aaa;
|
246 |
+
cursor : text;
|
247 |
+
}
|
248 |
+
|
249 |
+
.select2-container--default .select2-selection--multiple .select2-selection__rendered {
|
250 |
+
-webkit-box-sizing : border-box;
|
251 |
+
box-sizing : border-box;
|
252 |
+
list-style : none;
|
253 |
+
margin : 0;
|
254 |
+
padding : 0 5px;
|
255 |
+
width : 100%
|
256 |
+
}
|
257 |
+
|
258 |
+
.select2-container--default .select2-selection--multiple .select2-selection__rendered li {
|
259 |
+
list-style : none;
|
260 |
+
margin : 5px 5px 0 0
|
261 |
+
}
|
262 |
+
|
263 |
+
.select2-container--default .select2-selection--multiple .select2-selection__rendered li:before {
|
264 |
+
content : '';
|
265 |
+
display : none
|
266 |
+
}
|
267 |
+
|
268 |
+
.select2-container--default .select2-selection--multiple .select2-selection__placeholder {
|
269 |
+
color : #999;
|
270 |
+
margin-top : 5px;
|
271 |
+
float : left
|
272 |
+
}
|
273 |
+
|
274 |
+
.select2-container--default .select2-selection--multiple .select2-selection__clear {
|
275 |
+
cursor : pointer;
|
276 |
+
float : right;
|
277 |
+
font-weight : 700;
|
278 |
+
margin-top : 5px;
|
279 |
+
margin-right : 10px
|
280 |
+
}
|
281 |
+
|
282 |
+
.select2-container--default .select2-selection--multiple .select2-selection__choice {
|
283 |
+
background-color : #e4e4e4;
|
284 |
+
border : 1px solid #aaa;
|
285 |
+
border-radius : 4px;
|
286 |
+
cursor : default;
|
287 |
+
float : left;
|
288 |
+
margin-right : 5px;
|
289 |
+
margin-top : 5px;
|
290 |
+
padding : 0 5px
|
291 |
+
}
|
292 |
+
|
293 |
+
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
|
294 |
+
color : #999;
|
295 |
+
cursor : pointer;
|
296 |
+
display : inline-block;
|
297 |
+
font-weight : 700;
|
298 |
+
margin-right : 2px
|
299 |
+
}
|
300 |
+
|
301 |
+
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover {
|
302 |
+
color : #333
|
303 |
+
}
|
304 |
+
|
305 |
+
.select2-container--default[dir=rtl] .select2-selection--multiple .select2-search--inline, .select2-container--default[dir=rtl] .select2-selection--multiple .select2-selection__choice, .select2-container--default[dir=rtl] .select2-selection--multiple .select2-selection__placeholder {
|
306 |
+
float : right
|
307 |
+
}
|
308 |
+
|
309 |
+
.select2-container--default[dir=rtl] .select2-selection--multiple .select2-selection__choice {
|
310 |
+
margin-left : 5px;
|
311 |
+
margin-right : auto
|
312 |
+
}
|
313 |
+
|
314 |
+
.select2-container--default[dir=rtl] .select2-selection--multiple .select2-selection__choice__remove {
|
315 |
+
margin-left : 2px;
|
316 |
+
margin-right : auto
|
317 |
+
}
|
318 |
+
|
319 |
+
.select2-container--default.select2-container--focus .select2-selection--multiple {
|
320 |
+
border : solid #000 1px;
|
321 |
+
outline : 0
|
322 |
+
}
|
323 |
+
|
324 |
+
.select2-container--default.select2-container--disabled .select2-selection--multiple {
|
325 |
+
background-color : #eee;
|
326 |
+
cursor : default
|
327 |
+
}
|
328 |
+
|
329 |
+
.select2-container--default.select2-container--disabled .select2-selection__choice__remove {
|
330 |
+
display : none
|
331 |
+
}
|
332 |
+
|
333 |
+
.select2-container--default.select2-container--open.select2-container--above .select2-selection--multiple, .select2-container--default.select2-container--open.select2-container--above .select2-selection--single {
|
334 |
+
border-top-left-radius : 0;
|
335 |
+
border-top-right-radius : 0
|
336 |
+
}
|
337 |
+
|
338 |
+
.select2-container--default.select2-container--open.select2-container--below .select2-selection--multiple, .select2-container--default.select2-container--open.select2-container--below .select2-selection--single {
|
339 |
+
border-bottom-left-radius : 0;
|
340 |
+
border-bottom-right-radius : 0
|
341 |
+
}
|
342 |
+
|
343 |
+
.select2-container--default .select2-search--dropdown .select2-search__field {
|
344 |
+
border : 1px solid #aaa
|
345 |
+
}
|
346 |
+
|
347 |
+
.select2-container--default .select2-search--inline .select2-search__field {
|
348 |
+
background : 0 0;
|
349 |
+
border : none;
|
350 |
+
outline : 0;
|
351 |
+
-webkit-box-shadow : none;
|
352 |
+
box-shadow : none;
|
353 |
+
-webkit-appearance : textfield
|
354 |
+
}
|
355 |
+
|
356 |
+
.select2-container--default .select2-results > .select2-results__options {
|
357 |
+
max-height : 200px;
|
358 |
+
overflow-y : auto
|
359 |
+
}
|
360 |
+
|
361 |
+
.select2-container--default .select2-results__option[role=group] {
|
362 |
+
padding : 0
|
363 |
+
}
|
364 |
+
|
365 |
+
.select2-container--default .select2-results__option[aria-disabled=true] {
|
366 |
+
color : #999
|
367 |
+
}
|
368 |
+
|
369 |
+
.select2-container--default .select2-results__option[aria-selected=true], .select2-container--default .select2-results__option[data-selected=true] {
|
370 |
+
background-color : #ddd
|
371 |
+
}
|
372 |
+
|
373 |
+
.select2-container--default .select2-results__option .select2-results__option {
|
374 |
+
padding-left : 1em
|
375 |
+
}
|
376 |
+
|
377 |
+
.select2-container--default .select2-results__option .select2-results__option .select2-results__group {
|
378 |
+
padding-left : 0
|
379 |
+
}
|
380 |
+
|
381 |
+
.select2-container--default .select2-results__option .select2-results__option .select2-results__option {
|
382 |
+
margin-left : -1em;
|
383 |
+
padding-left : 2em
|
384 |
+
}
|
385 |
+
|
386 |
+
.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
|
387 |
+
margin-left : -2em;
|
388 |
+
padding-left : 3em
|
389 |
+
}
|
390 |
+
|
391 |
+
.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
|
392 |
+
margin-left : -3em;
|
393 |
+
padding-left : 4em
|
394 |
+
}
|
395 |
+
|
396 |
+
.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
|
397 |
+
margin-left : -4em;
|
398 |
+
padding-left : 5em
|
399 |
+
}
|
400 |
+
|
401 |
+
.select2-container--default .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option .select2-results__option {
|
402 |
+
margin-left : -5em;
|
403 |
+
padding-left : 6em
|
404 |
+
}
|
405 |
+
|
406 |
+
.select2-container--default .select2-results__option--highlighted[aria-selected], .select2-container--default .select2-results__option--highlighted[data-selected] {
|
407 |
+
background-color : #0073aa;
|
408 |
+
color : #fff
|
409 |
+
}
|
410 |
+
|
411 |
+
.select2-container--default .select2-results__group {
|
412 |
+
cursor : default;
|
413 |
+
display : block;
|
414 |
+
padding : 6px
|
415 |
+
}
|
416 |
+
|
417 |
+
.select2-container--classic .select2-selection--single {
|
418 |
+
background-color : #f7f7f7;
|
419 |
+
border : 1px solid #aaa;
|
420 |
+
border-radius : 4px;
|
421 |
+
outline : 0;
|
422 |
+
background-image : -webkit-gradient(linear, left top, left bottom, color-stop(50%, #fff), to(#eee));
|
423 |
+
background-image : -webkit-linear-gradient(top, #fff 50%, #eee 100%);
|
424 |
+
background-image : linear-gradient(to bottom, #fff 50%, #eee 100%);
|
425 |
+
background-repeat : repeat-x
|
426 |
+
}
|
427 |
+
|
428 |
+
.select2-container--classic .select2-selection--single:focus {
|
429 |
+
border : 1px solid #0073aa
|
430 |
+
}
|
431 |
+
|
432 |
+
.select2-container--classic .select2-selection--single .select2-selection__rendered {
|
433 |
+
color : #444;
|
434 |
+
line-height : 28px
|
435 |
+
}
|
436 |
+
|
437 |
+
.select2-container--classic .select2-selection--single .select2-selection__clear {
|
438 |
+
cursor : pointer;
|
439 |
+
float : right;
|
440 |
+
font-weight : 700;
|
441 |
+
margin-right : 10px
|
442 |
+
}
|
443 |
+
|
444 |
+
.select2-container--classic .select2-selection--single .select2-selection__placeholder {
|
445 |
+
color : #999
|
446 |
+
}
|
447 |
+
|
448 |
+
.select2-container--classic .select2-selection--single .select2-selection__arrow {
|
449 |
+
background-color : #ddd;
|
450 |
+
border : none;
|
451 |
+
border-left : 1px solid #aaa;
|
452 |
+
border-top-right-radius : 4px;
|
453 |
+
border-bottom-right-radius : 4px;
|
454 |
+
height : 26px;
|
455 |
+
position : absolute;
|
456 |
+
top : 1px;
|
457 |
+
right : 1px;
|
458 |
+
width : 20px;
|
459 |
+
background-image : -webkit-gradient(linear, left top, left bottom, color-stop(50%, #eee), to(#ccc));
|
460 |
+
background-image : -webkit-linear-gradient(top, #eee 50%, #ccc 100%);
|
461 |
+
background-image : linear-gradient(to bottom, #eee 50%, #ccc 100%);
|
462 |
+
background-repeat : repeat-x
|
463 |
+
}
|
464 |
+
|
465 |
+
.select2-container--classic .select2-selection--single .select2-selection__arrow b {
|
466 |
+
border-color : #888 transparent transparent transparent;
|
467 |
+
border-style : solid;
|
468 |
+
border-width : 5px 4px 0 4px;
|
469 |
+
height : 0;
|
470 |
+
left : 50%;
|
471 |
+
margin-left : -4px;
|
472 |
+
margin-top : -2px;
|
473 |
+
position : absolute;
|
474 |
+
top : 50%;
|
475 |
+
width : 0
|
476 |
+
}
|
477 |
+
|
478 |
+
.select2-container--classic[dir=rtl] .select2-selection--single .select2-selection__clear {
|
479 |
+
float : left
|
480 |
+
}
|
481 |
+
|
482 |
+
.select2-container--classic[dir=rtl] .select2-selection--single .select2-selection__arrow {
|
483 |
+
border : none;
|
484 |
+
border-right : 1px solid #aaa;
|
485 |
+
border-radius : 0;
|
486 |
+
border-top-left-radius : 4px;
|
487 |
+
border-bottom-left-radius : 4px;
|
488 |
+
left : 1px;
|
489 |
+
right : auto
|
490 |
+
}
|
491 |
+
|
492 |
+
.select2-container--classic.select2-container--open .select2-selection--single {
|
493 |
+
border : 1px solid #0073aa
|
494 |
+
}
|
495 |
+
|
496 |
+
.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow {
|
497 |
+
background : 0 0;
|
498 |
+
border : none
|
499 |
+
}
|
500 |
+
|
501 |
+
.select2-container--classic.select2-container--open .select2-selection--single .select2-selection__arrow b {
|
502 |
+
border-color : transparent transparent #888 transparent;
|
503 |
+
border-width : 0 4px 5px 4px
|
504 |
+
}
|
505 |
+
|
506 |
+
.select2-container--classic.select2-container--open.select2-container--above .select2-selection--single {
|
507 |
+
border-top : none;
|
508 |
+
border-top-left-radius : 0;
|
509 |
+
border-top-right-radius : 0;
|
510 |
+
background-image : -webkit-gradient(linear, left top, left bottom, from(white), color-stop(50%, #eee));
|
511 |
+
background-image : -webkit-linear-gradient(top, #fff 0, #eee 50%);
|
512 |
+
background-image : linear-gradient(to bottom, #fff 0, #eee 50%);
|
513 |
+
background-repeat : repeat-x
|
514 |
+
}
|
515 |
+
|
516 |
+
.select2-container--classic.select2-container--open.select2-container--below .select2-selection--single {
|
517 |
+
border-bottom : none;
|
518 |
+
border-bottom-left-radius : 0;
|
519 |
+
border-bottom-right-radius : 0;
|
520 |
+
background-image : -webkit-gradient(linear, left top, left bottom, color-stop(50%, #eee), to(white));
|
521 |
+
background-image : -webkit-linear-gradient(top, #eee 50%, #fff 100%);
|
522 |
+
background-image : linear-gradient(to bottom, #eee 50%, #fff 100%);
|
523 |
+
background-repeat : repeat-x
|
524 |
+
}
|
525 |
+
|
526 |
+
.select2-container--classic .select2-selection--multiple {
|
527 |
+
background-color : #fff;
|
528 |
+
border : 1px solid #aaa;
|
529 |
+
border-radius : 4px;
|
530 |
+
cursor : text;
|
531 |
+
outline : 0
|
532 |
+
}
|
533 |
+
|
534 |
+
.select2-container--classic .select2-selection--multiple:focus {
|
535 |
+
border : 1px solid #0073aa
|
536 |
+
}
|
537 |
+
|
538 |
+
.select2-container--classic .select2-selection--multiple .select2-selection__rendered {
|
539 |
+
list-style : none;
|
540 |
+
margin : 0;
|
541 |
+
padding : 0 5px
|
542 |
+
}
|
543 |
+
|
544 |
+
.select2-container--classic .select2-selection--multiple .select2-selection__clear {
|
545 |
+
display : none
|
546 |
+
}
|
547 |
+
|
548 |
+
.select2-container--classic .select2-selection--multiple .select2-selection__choice {
|
549 |
+
background-color : #e4e4e4;
|
550 |
+
border : 1px solid #aaa;
|
551 |
+
border-radius : 4px;
|
552 |
+
cursor : default;
|
553 |
+
float : left;
|
554 |
+
margin-right : 5px;
|
555 |
+
margin-top : 5px;
|
556 |
+
padding : 0 5px
|
557 |
+
}
|
558 |
+
|
559 |
+
.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove {
|
560 |
+
color : #888;
|
561 |
+
cursor : pointer;
|
562 |
+
display : inline-block;
|
563 |
+
font-weight : 700;
|
564 |
+
margin-right : 2px
|
565 |
+
}
|
566 |
+
|
567 |
+
.select2-container--classic .select2-selection--multiple .select2-selection__choice__remove:hover {
|
568 |
+
color : #555
|
569 |
+
}
|
570 |
+
|
571 |
+
.select2-container--classic[dir=rtl] .select2-selection--multiple .select2-selection__choice {
|
572 |
+
float : right
|
573 |
+
}
|
574 |
+
|
575 |
+
.select2-container--classic[dir=rtl] .select2-selection--multiple .select2-selection__choice {
|
576 |
+
margin-left : 5px;
|
577 |
+
margin-right : auto
|
578 |
+
}
|
579 |
+
|
580 |
+
.select2-container--classic[dir=rtl] .select2-selection--multiple .select2-selection__choice__remove {
|
581 |
+
margin-left : 2px;
|
582 |
+
margin-right : auto
|
583 |
+
}
|
584 |
+
|
585 |
+
.select2-container--classic.select2-container--open .select2-selection--multiple {
|
586 |
+
border : 1px solid #0073aa
|
587 |
+
}
|
588 |
+
|
589 |
+
.select2-container--classic.select2-container--open.select2-container--above .select2-selection--multiple {
|
590 |
+
border-top : none;
|
591 |
+
border-top-left-radius : 0;
|
592 |
+
border-top-right-radius : 0
|
593 |
+
}
|
594 |
+
|
595 |
+
.select2-container--classic.select2-container--open.select2-container--below .select2-selection--multiple {
|
596 |
+
border-bottom : none;
|
597 |
+
border-bottom-left-radius : 0;
|
598 |
+
border-bottom-right-radius : 0
|
599 |
+
}
|
600 |
+
|
601 |
+
.select2-container--classic .select2-search--dropdown .select2-search__field {
|
602 |
+
border : 1px solid #aaa;
|
603 |
+
outline : 0
|
604 |
+
}
|
605 |
+
|
606 |
+
.select2-container--classic .select2-search--inline .select2-search__field {
|
607 |
+
outline : 0;
|
608 |
+
-webkit-box-shadow : none;
|
609 |
+
box-shadow : none
|
610 |
+
}
|
611 |
+
|
612 |
+
.select2-container--classic .select2-dropdown {
|
613 |
+
background-color : #fff;
|
614 |
+
border : 1px solid transparent
|
615 |
+
}
|
616 |
+
|
617 |
+
.select2-container--classic .select2-dropdown--above {
|
618 |
+
border-bottom : none
|
619 |
+
}
|
620 |
+
|
621 |
+
.select2-container--classic .select2-dropdown--below {
|
622 |
+
border-top : none
|
623 |
+
}
|
624 |
+
|
625 |
+
.select2-container--classic .select2-results > .select2-results__options {
|
626 |
+
max-height : 200px;
|
627 |
+
overflow-y : auto
|
628 |
+
}
|
629 |
+
|
630 |
+
.select2-container--classic .select2-results__option[role=group] {
|
631 |
+
padding : 0
|
632 |
+
}
|
633 |
+
|
634 |
+
.select2-container--classic .select2-results__option[aria-disabled=true] {
|
635 |
+
color : grey
|
636 |
+
}
|
637 |
+
|
638 |
+
.select2-container--classic .select2-results__option--highlighted[aria-selected], .select2-container--classic .select2-results__option--highlighted[data-selected] {
|
639 |
+
background-color : #3875d7;
|
640 |
+
color : #fff
|
641 |
+
}
|
642 |
+
|
643 |
+
.select2-container--classic .select2-results__group {
|
644 |
+
cursor : default;
|
645 |
+
display : block;
|
646 |
+
padding : 6px
|
647 |
+
}
|
648 |
+
|
649 |
+
.select2-container--classic.select2-container--open .select2-dropdown {
|
650 |
+
border-color : #0073aa
|
651 |
+
}
|
652 |
+
|
653 |
+
|
654 |
+
.select2-drop, .select2-dropdown {
|
655 |
+
z-index : 999999 !important
|
656 |
+
}
|
657 |
+
|
658 |
+
.select2-results {
|
659 |
+
line-height : 1.5em
|
660 |
+
}
|
661 |
+
|
662 |
+
.select2-results .select2-results__group, .select2-results .select2-results__option {
|
663 |
+
margin : 0;
|
664 |
+
padding : 8px
|
665 |
+
}
|
666 |
+
|
667 |
+
.select2-results .description {
|
668 |
+
display : block;
|
669 |
+
color : #999;
|
670 |
+
padding-top : 4px
|
671 |
+
}
|
672 |
+
|
673 |
+
.select2-dropdown {
|
674 |
+
border-color : #ddd
|
675 |
+
}
|
676 |
+
|
677 |
+
.select2-dropdown--below {
|
678 |
+
-webkit-box-shadow : 0 1px 1px rgba(0, 0, 0, .1);
|
679 |
+
box-shadow : 0 1px 1px rgba(0, 0, 0, .1)
|
680 |
+
}
|
681 |
+
|
682 |
+
.select2-dropdown--above {
|
683 |
+
-webkit-box-shadow : 0 -1px 1px rgba(0, 0, 0, .1);
|
684 |
+
box-shadow : 0 -1px 1px rgba(0, 0, 0, .1)
|
685 |
+
}
|
686 |
+
|
687 |
+
.select2-container .select2-selection__rendered.ui-sortable li {
|
688 |
+
cursor : move
|
689 |
+
}
|
690 |
+
|
691 |
+
.select2-container .select2-selection {
|
692 |
+
border-color : #ddd
|
693 |
+
}
|
694 |
+
|
695 |
+
.select2-container .select2-search__field {
|
696 |
+
min-width : 150px
|
697 |
+
}
|
698 |
+
|
699 |
+
.select2-container .select2-selection--single {
|
700 |
+
height : 32px
|
701 |
+
}
|
702 |
+
|
703 |
+
.select2-container .select2-selection--single .select2-selection__rendered {
|
704 |
+
line-height : 32px;
|
705 |
+
padding-right : 24px
|
706 |
+
}
|
707 |
+
|
708 |
+
.select2-container .select2-selection--single .select2-selection__arrow {
|
709 |
+
right : 3px;
|
710 |
+
height : 30px
|
711 |
+
}
|
712 |
+
|
713 |
+
.select2-container .select2-selection--multiple {
|
714 |
+
min-height : 28px;
|
715 |
+
border-radius : 0;
|
716 |
+
line-height : 1.5
|
717 |
+
}
|
718 |
+
|
719 |
+
.select2-container .select2-selection--multiple li {
|
720 |
+
margin : 0
|
721 |
+
}
|
722 |
+
|
723 |
+
.select2-container .select2-selection--multiple .select2-selection__choice {
|
724 |
+
padding : 2px 6px
|
725 |
+
}
|
726 |
+
|
727 |
+
.select2-container .select2-selection--multiple .select2-selection__choice .description {
|
728 |
+
display : none
|
729 |
+
}
|
730 |
+
|
731 |
+
.select2-container .select2-selection__clear {
|
732 |
+
color : #999;
|
733 |
+
margin-top : -1px
|
734 |
+
}
|
735 |
+
|
736 |
+
.select2-container .select2-search--inline .select2-search__field {
|
737 |
+
font-family : inherit;
|
738 |
+
font-size : inherit;
|
739 |
+
font-weight : inherit;
|
740 |
+
padding : 3px 0
|
741 |
}
|
plugin-fw/assets/fonts/yith-icon.eot
CHANGED
Binary file
|
plugin-fw/assets/fonts/yith-icon.ttf
CHANGED
Binary file
|
plugin-fw/assets/fonts/yith-icon.woff2
CHANGED
Binary file
|
plugin-fw/assets/images/arrow.svg
ADDED
@@ -0,0 +1,11 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1 |
+
<?xml version="1.0" encoding="UTF-8"?>
|
2 |
+
<svg width="86px" height="26px" viewBox="0 0 86 26" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
|
3 |
+
<title>arrow2</title>
|
4 |
+
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
|
5 |
+
<g id="Create-badge---image-Copy" transform="translate(-795.000000, -218.000000)" fill="#336374">
|
6 |
+
<g id="arrow2" transform="translate(795.000000, 218.000000)">
|
7 |
+
<path d="M85.2527743,11.0287846 C85.0291804,10.8409658 84.5580864,10.4653284 83.9069923,9.99202513 C81.7582412,8.39556583 77.6702704,5.45995889 74.5990189,3.18547392 C73.0029243,2.00033766 71.6866736,1.0236802 71.0833921,0.482762228 C71.0032358,0.409512919 70.9019857,0.351289109 70.8513607,0.294943486 L70.8513607,0.306212611 L70.8513607,0.293065299 L70.8330794,0.272405237 C70.8246419,0.261136113 70.8204232,0.25550155 70.8218294,0.238597864 L70.8218294,0.238597864 C70.7216008,0.0191459435 70.5127354,-0.0622623017 70.3398646,0.0507452248 C70.1669939,0.163752751 70.086996,0.433994045 70.1552666,0.674337345 C70.2269854,0.978603707 71.7626112,2.67272876 73.859331,4.71995305 C75.783082,6.59814047 78.1540207,8.82567074 80.1143342,10.6512689 C75.6298006,10.6756854 69.8008914,10.6249743 63.3321381,10.6137052 C59.113386,10.6043142 54.6358837,10.5986797 50.0768189,10.641878 C47.4386925,10.6681726 44.7752537,10.7282746 42.1244711,10.7902548 C38.0730628,10.8860423 34.052592,11.0043682 30.1966525,11.1208158 C14.2807069,11.6072663 1.19835652,12.0279803 0.512106166,11.684272 C0.389268144,11.6171708 0.248958141,11.642693 0.144029579,11.7512246 C0.0391010166,11.8597562 -0.0145049592,12.0348087 0.00340450444,12.2104414 C0.0213139681,12.3860742 0.108017998,12.5356045 0.230856023,12.6027056 C0.848200087,12.9558049 11.476643,13.5925104 25.2283687,14.0338845 C30.4314964,14.2010431 36.088843,14.3512981 41.8108772,14.4226693 C44.5727536,14.4583548 47.351505,14.4715021 50.1077564,14.4508421 C52.9202578,14.4320602 55.6933842,14.3738364 58.3976044,14.3043434 C62.8062004,14.1916522 67.016515,14.0338845 70.8344857,13.8648476 C74.942144,13.6770288 78.5885521,13.46855 81.5388661,13.2694622 C81.0438659,13.678907 80.4940219,14.1334284 79.9104278,14.6255135 C79.0905836,15.3148083 78.2074582,16.0717178 77.3130827,16.8511656 C74.0660498,19.6853504 70.6558918,22.7392831 69.5674538,23.650204 C69.1305592,24.0067591 68.9841166,24.7618416 69.2364633,25.3568463 C69.4888101,25.951851 70.0490011,26.1723396 70.5026105,25.8551961 C71.5544861,25.1414849 74.7058939,22.9815693 77.824958,20.6357132 C79.5391776,19.3472767 81.2393347,18.0062509 82.5865229,16.8793384 C83.5022712,16.1209452 84.3879897,15.299703 85.240118,14.4189129 C85.8926184,13.708958 85.9952747,12.9708304 86,12.7754989 C85.9966809,12.7022496 86.0669934,11.6899066 85.2527743,11.0287846 Z" id="Path"></path>
|
8 |
+
</g>
|
9 |
+
</g>
|
10 |
+
</g>
|
11 |
+
</svg>
|
plugin-fw/assets/images/arrow_down.svg
CHANGED
@@ -1,9 +1,9 @@
|
|
1 |
-
<?xml version="1.0" encoding="utf-8"?>
|
2 |
-
<!-- Generator: Adobe Illustrator 23.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
3 |
-
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
4 |
-
viewBox="0 0 600 600" style="enable-background:new 0 0 600 600;" xml:space="preserve">
|
5 |
-
<style type="text/css">
|
6 |
-
.st0{fill:#d9d9d9;}
|
7 |
-
</style>
|
8 |
-
<polygon class="st0" points="50,200 300.01,449.99 550,200 499.99,150.01 300.01,349.99 99.99,150.01 "/>
|
9 |
-
</svg>
|
1 |
+
<?xml version="1.0" encoding="utf-8"?>
|
2 |
+
<!-- Generator: Adobe Illustrator 23.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
|
3 |
+
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
|
4 |
+
viewBox="0 0 600 600" style="enable-background:new 0 0 600 600;" xml:space="preserve">
|
5 |
+
<style type="text/css">
|
6 |
+
.st0{fill:#d9d9d9;}
|
7 |
+
</style>
|
8 |
+
<polygon class="st0" points="50,200 300.01,449.99 550,200 499.99,150.01 300.01,349.99 99.99,150.01 "/>
|
9 |
+
</svg>
|
plugin-fw/assets/js/codemirror/codemirror.js
CHANGED
@@ -1,5799 +1,5806 @@
|
|
1 |
-
|
2 |
-
|
3 |
-
|
4 |
-
|
5 |
-
|
6 |
-
|
7 |
-
|
8 |
-
|
9 |
-
|
10 |
-
|
11 |
-
|
12 |
-
|
13 |
-
|
14 |
-
|
15 |
-
|
16 |
-
|
17 |
-
|
18 |
-
var
|
19 |
-
var
|
20 |
-
var
|
21 |
-
var
|
22 |
-
var
|
23 |
-
var
|
24 |
-
|
25 |
-
var
|
26 |
-
|
27 |
-
var
|
28 |
-
var
|
29 |
-
var
|
30 |
-
|
31 |
-
|
32 |
-
|
33 |
-
|
34 |
-
|
35 |
-
var
|
36 |
-
var
|
37 |
-
|
38 |
-
|
39 |
-
|
40 |
-
|
41 |
-
//
|
42 |
-
|
43 |
-
|
44 |
-
|
45 |
-
|
46 |
-
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
|
65 |
-
|
66 |
-
|
67 |
-
|
68 |
-
|
69 |
-
|
70 |
-
|
71 |
-
|
72 |
-
|
73 |
-
|
74 |
-
|
75 |
-
|
76 |
-
|
77 |
-
|
78 |
-
|
79 |
-
|
80 |
-
|
81 |
-
|
82 |
-
|
83 |
-
|
84 |
-
|
85 |
-
|
86 |
-
|
87 |
-
|
88 |
-
|
89 |
-
|
90 |
-
|
91 |
-
|
92 |
-
|
93 |
-
|
94 |
-
|
95 |
-
|
96 |
-
|
97 |
-
|
98 |
-
|
99 |
-
|
100 |
-
|
101 |
-
|
102 |
-
|
103 |
-
|
104 |
-
|
105 |
-
|
106 |
-
|
107 |
-
|
108 |
-
|
109 |
-
|
110 |
-
|
111 |
-
|
112 |
-
//
|
113 |
-
d.
|
114 |
-
|
115 |
-
|
116 |
-
d.
|
117 |
-
|
118 |
-
d.
|
119 |
-
//
|
120 |
-
d.
|
121 |
-
|
122 |
-
|
123 |
-
|
124 |
-
//
|
125 |
-
d.
|
126 |
-
//
|
127 |
-
d.
|
128 |
-
//
|
129 |
-
d.
|
130 |
-
|
131 |
-
|
132 |
-
d.
|
133 |
-
//
|
134 |
-
d.
|
135 |
-
|
136 |
-
|
137 |
-
|
138 |
-
|
139 |
-
|
140 |
-
|
141 |
-
|
142 |
-
|
143 |
-
//
|
144 |
-
|
145 |
-
|
146 |
-
//
|
147 |
-
if (
|
148 |
-
|
149 |
-
|
150 |
-
|
151 |
-
|
152 |
-
|
153 |
-
|
154 |
-
|
155 |
-
//
|
156 |
-
|
157 |
-
|
158 |
-
//
|
159 |
-
d.
|
160 |
-
|
161 |
-
|
162 |
-
|
163 |
-
//
|
164 |
-
|
165 |
-
//
|
166 |
-
d.
|
167 |
-
//
|
168 |
-
d
|
169 |
-
|
170 |
-
|
171 |
-
|
172 |
-
|
173 |
-
|
174 |
-
//
|
175 |
-
|
176 |
-
|
177 |
-
|
178 |
-
|
179 |
-
|
180 |
-
|
181 |
-
|
182 |
-
|
183 |
-
|
184 |
-
|
185 |
-
|
186 |
-
|
187 |
-
|
188 |
-
|
189 |
-
|
190 |
-
|
191 |
-
|
192 |
-
|
193 |
-
|
194 |
-
|
195 |
-
|
196 |
-
|
197 |
-
|
198 |
-
|
199 |
-
|
200 |
-
|
201 |
-
|
202 |
-
cm.
|
203 |
-
|
204 |
-
|
205 |
-
|
206 |
-
|
207 |
-
|
208 |
-
|
209 |
-
|
210 |
-
|
211 |
-
|
212 |
-
|
213 |
-
|
214 |
-
|
215 |
-
|
216 |
-
|
217 |
-
|
218 |
-
|
219 |
-
|
220 |
-
|
221 |
-
|
222 |
-
|
223 |
-
|
224 |
-
|
225 |
-
|
226 |
-
|
227 |
-
|
228 |
-
|
229 |
-
|
230 |
-
|
231 |
-
|
232 |
-
|
233 |
-
|
234 |
-
|
235 |
-
|
236 |
-
|
237 |
-
|
238 |
-
|
239 |
-
|
240 |
-
|
241 |
-
|
242 |
-
|
243 |
-
|
244 |
-
(
|
245 |
-
|
246 |
-
}
|
247 |
-
|
248 |
-
function
|
249 |
-
|
250 |
-
|
251 |
-
|
252 |
-
|
253 |
-
|
254 |
-
|
255 |
-
|
256 |
-
|
257 |
-
|
258 |
-
|
259 |
-
|
260 |
-
|
261 |
-
|
262 |
-
|
263 |
-
|
264 |
-
|
265 |
-
|
266 |
-
|
267 |
-
|
268 |
-
|
269 |
-
|
270 |
-
|
271 |
-
|
272 |
-
|
273 |
-
|
274 |
-
|
275 |
-
|
276 |
-
|
277 |
-
|
278 |
-
|
279 |
-
|
280 |
-
|
281 |
-
|
282 |
-
|
283 |
-
|
284 |
-
|
285 |
-
|
286 |
-
cur = getLine(doc, found.
|
287 |
-
len +=
|
288 |
-
}
|
289 |
-
|
290 |
-
|
291 |
-
|
292 |
-
|
293 |
-
|
294 |
-
|
295 |
-
|
296 |
-
|
297 |
-
|
298 |
-
|
299 |
-
|
300 |
-
|
301 |
-
|
302 |
-
|
303 |
-
|
304 |
-
|
305 |
-
|
306 |
-
|
307 |
-
|
308 |
-
|
309 |
-
|
310 |
-
|
311 |
-
|
312 |
-
|
313 |
-
|
314 |
-
|
315 |
-
|
316 |
-
|
317 |
-
|
318 |
-
|
319 |
-
|
320 |
-
|
321 |
-
|
322 |
-
|
323 |
-
|
324 |
-
|
325 |
-
|
326 |
-
|
327 |
-
|
328 |
-
|
329 |
-
|
330 |
-
|
331 |
-
|
332 |
-
|
333 |
-
|
334 |
-
|
335 |
-
|
336 |
-
|
337 |
-
|
338 |
-
|
339 |
-
|
340 |
-
d.
|
341 |
-
d.
|
342 |
-
|
343 |
-
|
344 |
-
|
345 |
-
|
346 |
-
d.
|
347 |
-
|
348 |
-
|
349 |
-
|
350 |
-
|
351 |
-
|
352 |
-
|
353 |
-
|
354 |
-
|
355 |
-
|
356 |
-
|
357 |
-
|
358 |
-
|
359 |
-
|
360 |
-
|
361 |
-
|
362 |
-
|
363 |
-
|
364 |
-
|
365 |
-
|
366 |
-
|
367 |
-
|
368 |
-
|
369 |
-
|
370 |
-
var
|
371 |
-
|
372 |
-
|
373 |
-
|
374 |
-
|
375 |
-
|
376 |
-
|
377 |
-
|
378 |
-
|
379 |
-
|
380 |
-
|
381 |
-
|
382 |
-
|
383 |
-
|
384 |
-
if (
|
385 |
-
|
386 |
-
|
387 |
-
|
388 |
-
|
389 |
-
|
390 |
-
|
391 |
-
|
392 |
-
|
393 |
-
|
394 |
-
|
395 |
-
|
396 |
-
|
397 |
-
|
398 |
-
|
399 |
-
|
400 |
-
|
401 |
-
|
402 |
-
return
|
403 |
-
}
|
404 |
-
|
405 |
-
|
406 |
-
|
407 |
-
|
408 |
-
|
409 |
-
|
410 |
-
|
411 |
-
|
412 |
-
|
413 |
-
|
414 |
-
|
415 |
-
|
416 |
-
|
417 |
-
|
418 |
-
if (
|
419 |
-
|
420 |
-
|
421 |
-
|
422 |
-
|
423 |
-
|
424 |
-
|
425 |
-
|
426 |
-
|
427 |
-
|
428 |
-
|
429 |
-
if (cm.display.showingFrom
|
430 |
-
|
431 |
-
|
432 |
-
|
433 |
-
|
434 |
-
|
435 |
-
|
436 |
-
|
437 |
-
|
438 |
-
|
439 |
-
|
440 |
-
|
441 |
-
|
442 |
-
|
443 |
-
|
444 |
-
|
445 |
-
|
446 |
-
|
447 |
-
if (!
|
448 |
-
|
449 |
-
|
450 |
-
|
451 |
-
|
452 |
-
|
453 |
-
|
454 |
-
|
455 |
-
|
456 |
-
|
457 |
-
|
458 |
-
if (cm
|
459 |
-
|
460 |
-
|
461 |
-
|
462 |
-
|
463 |
-
|
464 |
-
var
|
465 |
-
if (
|
466 |
-
|
467 |
-
|
468 |
-
|
469 |
-
|
470 |
-
|
471 |
-
|
472 |
-
|
473 |
-
|
474 |
-
|
475 |
-
|
476 |
-
|
477 |
-
|
478 |
-
|
479 |
-
//
|
480 |
-
//
|
481 |
-
|
482 |
-
|
483 |
-
|
484 |
-
|
485 |
-
|
486 |
-
|
487 |
-
|
488 |
-
|
489 |
-
|
490 |
-
|
491 |
-
|
492 |
-
|
493 |
-
|
494 |
-
|
495 |
-
|
496 |
-
|
497 |
-
|
498 |
-
|
499 |
-
|
500 |
-
|
501 |
-
|
502 |
-
|
503 |
-
|
504 |
-
|
505 |
-
|
506 |
-
|
507 |
-
|
508 |
-
|
509 |
-
|
510 |
-
|
511 |
-
|
512 |
-
|
513 |
-
|
514 |
-
|
515 |
-
|
516 |
-
|
517 |
-
|
518 |
-
|
519 |
-
|
520 |
-
|
521 |
-
|
522 |
-
|
523 |
-
|
524 |
-
|
525 |
-
|
526 |
-
|
527 |
-
|
528 |
-
|
529 |
-
|
530 |
-
|
531 |
-
|
532 |
-
|
533 |
-
|
534 |
-
|
535 |
-
|
536 |
-
|
537 |
-
|
538 |
-
|
539 |
-
|
540 |
-
|
541 |
-
|
542 |
-
|
543 |
-
|
544 |
-
|
545 |
-
|
546 |
-
|
547 |
-
var
|
548 |
-
|
549 |
-
|
550 |
-
|
551 |
-
|
552 |
-
|
553 |
-
|
554 |
-
|
555 |
-
|
556 |
-
|
557 |
-
|
558 |
-
|
559 |
-
|
560 |
-
|
561 |
-
|
562 |
-
|
563 |
-
|
564 |
-
|
565 |
-
|
566 |
-
|
567 |
-
|
568 |
-
|
569 |
-
|
570 |
-
|
571 |
-
|
572 |
-
|
573 |
-
|
574 |
-
}
|
575 |
-
|
576 |
-
|
577 |
-
|
578 |
-
|
579 |
-
|
580 |
-
|
581 |
-
|
582 |
-
|
583 |
-
|
584 |
-
|
585 |
-
|
586 |
-
|
587 |
-
|
588 |
-
|
589 |
-
|
590 |
-
|
591 |
-
|
592 |
-
|
593 |
-
|
594 |
-
|
595 |
-
|
596 |
-
|
597 |
-
|
598 |
-
|
599 |
-
|
600 |
-
|
601 |
-
|
602 |
-
|
603 |
-
|
604 |
-
|
605 |
-
|
606 |
-
|
607 |
-
|
608 |
-
|
609 |
-
|
610 |
-
|
611 |
-
|
612 |
-
|
613 |
-
|
614 |
-
|
615 |
-
|
616 |
-
|
617 |
-
|
618 |
-
|
619 |
-
|
620 |
-
|
621 |
-
|
622 |
-
|
623 |
-
|
624 |
-
|
625 |
-
|
626 |
-
|
627 |
-
var
|
628 |
-
if (
|
629 |
-
|
630 |
-
|
631 |
-
|
632 |
-
|
633 |
-
|
634 |
-
|
635 |
-
|
636 |
-
|
637 |
-
|
638 |
-
|
639 |
-
} else {
|
640 |
-
//
|
641 |
-
//
|
642 |
-
|
643 |
-
if (
|
644 |
-
|
645 |
-
|
646 |
-
|
647 |
-
|
648 |
-
|
649 |
-
|
650 |
-
|
651 |
-
|
652 |
-
|
653 |
-
|
654 |
-
lineNode
|
655 |
-
|
656 |
-
|
657 |
-
|
658 |
-
|
659 |
-
|
660 |
-
|
661 |
-
|
662 |
-
|
663 |
-
|
664 |
-
|
665 |
-
|
666 |
-
|
667 |
-
|
668 |
-
|
669 |
-
|
670 |
-
|
671 |
-
|
672 |
-
if (
|
673 |
-
|
674 |
-
|
675 |
-
|
676 |
-
|
677 |
-
|
678 |
-
|
679 |
-
|
680 |
-
|
681 |
-
|
682 |
-
|
683 |
-
|
684 |
-
|
685 |
-
|
686 |
-
|
687 |
-
|
688 |
-
|
689 |
-
|
690 |
-
|
691 |
-
|
692 |
-
|
693 |
-
|
694 |
-
|
695 |
-
|
696 |
-
|
697 |
-
|
698 |
-
|
699 |
-
|
700 |
-
|
701 |
-
|
702 |
-
|
703 |
-
|
704 |
-
|
705 |
-
if (
|
706 |
-
|
707 |
-
|
708 |
-
|
709 |
-
|
710 |
-
|
711 |
-
|
712 |
-
|
713 |
-
|
714 |
-
|
715 |
-
|
716 |
-
if (
|
717 |
-
|
718 |
-
|
719 |
-
|
720 |
-
|
721 |
-
|
722 |
-
|
723 |
-
|
724 |
-
|
725 |
-
|
726 |
-
|
727 |
-
|
728 |
-
|
729 |
-
|
730 |
-
|
731 |
-
|
732 |
-
|
733 |
-
|
734 |
-
|
735 |
-
|
736 |
-
|
737 |
-
|
738 |
-
|
739 |
-
|
740 |
-
(
|
741 |
-
|
742 |
-
|
743 |
-
|
744 |
-
|
745 |
-
|
746 |
-
|
747 |
-
|
748 |
-
|
749 |
-
|
750 |
-
|
751 |
-
|
752 |
-
|
753 |
-
|
754 |
-
|
755 |
-
|
756 |
-
|
757 |
-
|
758 |
-
|
759 |
-
|
760 |
-
|
761 |
-
|
762 |
-
|
763 |
-
|
764 |
-
|
765 |
-
|
766 |
-
|
767 |
-
|
768 |
-
|
769 |
-
|
770 |
-
|
771 |
-
|
772 |
-
|
773 |
-
|
774 |
-
|
775 |
-
|
776 |
-
|
777 |
-
|
778 |
-
|
779 |
-
|
780 |
-
|
781 |
-
|
782 |
-
|
783 |
-
|
784 |
-
|
785 |
-
|
786 |
-
|
787 |
-
|
788 |
-
|
789 |
-
|
790 |
-
|
791 |
-
|
792 |
-
|
793 |
-
|
794 |
-
|
795 |
-
|
796 |
-
|
797 |
-
|
798 |
-
|
799 |
-
|
800 |
-
|
801 |
-
|
802 |
-
|
803 |
-
|
804 |
-
|
805 |
-
|
806 |
-
|
807 |
-
|
808 |
-
|
809 |
-
|
810 |
-
function
|
811 |
-
|
812 |
-
|
813 |
-
|
814 |
-
|
815 |
-
|
816 |
-
|
817 |
-
|
818 |
-
|
819 |
-
|
820 |
-
|
821 |
-
|
822 |
-
|
823 |
-
|
824 |
-
|
825 |
-
|
826 |
-
|
827 |
-
|
828 |
-
|
829 |
-
|
830 |
-
|
831 |
-
|
832 |
-
|
833 |
-
|
834 |
-
|
835 |
-
|
836 |
-
if (
|
837 |
-
|
838 |
-
|
839 |
-
|
840 |
-
|
841 |
-
|
842 |
-
|
843 |
-
|
844 |
-
|
845 |
-
|
846 |
-
|
847 |
-
|
848 |
-
|
849 |
-
|
850 |
-
|
851 |
-
|
852 |
-
|
853 |
-
|
854 |
-
|
855 |
-
|
856 |
-
|
857 |
-
|
858 |
-
|
859 |
-
|
860 |
-
|
861 |
-
|
862 |
-
|
863 |
-
|
864 |
-
|
865 |
-
|
866 |
-
|
867 |
-
|
868 |
-
|
869 |
-
|
870 |
-
|
871 |
-
|
872 |
-
|
873 |
-
|
874 |
-
|
875 |
-
|
876 |
-
|
877 |
-
|
878 |
-
|
879 |
-
|
880 |
-
|
881 |
-
|
882 |
-
|
883 |
-
|
884 |
-
|
885 |
-
|
886 |
-
}
|
887 |
-
|
888 |
-
|
889 |
-
|
890 |
-
|
891 |
-
if (doc.frontier
|
892 |
-
|
893 |
-
|
894 |
-
|
895 |
-
|
896 |
-
|
897 |
-
|
898 |
-
|
899 |
-
|
900 |
-
|
901 |
-
|
902 |
-
|
903 |
-
|
904 |
-
|
905 |
-
line.
|
906 |
-
|
907 |
-
|
908 |
-
|
909 |
-
|
910 |
-
|
911 |
-
|
912 |
-
|
913 |
-
|
914 |
-
|
915 |
-
|
916 |
-
|
917 |
-
|
918 |
-
|
919 |
-
|
920 |
-
|
921 |
-
|
922 |
-
|
923 |
-
|
924 |
-
|
925 |
-
|
926 |
-
|
927 |
-
|
928 |
-
|
929 |
-
|
930 |
-
|
931 |
-
|
932 |
-
|
933 |
-
|
934 |
-
|
935 |
-
|
936 |
-
|
937 |
-
|
938 |
-
|
939 |
-
|
940 |
-
|
941 |
-
|
942 |
-
|
943 |
-
|
944 |
-
|
945 |
-
|
946 |
-
|
947 |
-
|
948 |
-
|
949 |
-
|
950 |
-
|
951 |
-
|
952 |
-
|
953 |
-
|
954 |
-
|
955 |
-
|
956 |
-
|
957 |
-
|
958 |
-
|
959 |
-
|
960 |
-
|
961 |
-
|
962 |
-
|
963 |
-
|
964 |
-
|
965 |
-
|
966 |
-
|
967 |
-
function
|
968 |
-
|
969 |
-
|
970 |
-
|
971 |
-
|
972 |
-
|
973 |
-
|
974 |
-
|
975 |
-
|
976 |
-
|
977 |
-
|
978 |
-
|
979 |
-
|
980 |
-
|
981 |
-
|
982 |
-
|
983 |
-
|
984 |
-
|
985 |
-
|
986 |
-
|
987 |
-
|
988 |
-
|
989 |
-
|
990 |
-
|
991 |
-
|
992 |
-
|
993 |
-
|
994 |
-
|
995 |
-
|
996 |
-
|
997 |
-
|
998 |
-
|
999 |
-
|
1000 |
-
|
1001 |
-
|
1002 |
-
|
1003 |
-
|
1004 |
-
|
1005 |
-
|
1006 |
-
|
1007 |
-
|
1008 |
-
|
1009 |
-
|
1010 |
-
|
1011 |
-
|
1012 |
-
|
1013 |
-
|
1014 |
-
|
1015 |
-
|
1016 |
-
|
1017 |
-
|
1018 |
-
|
1019 |
-
|
1020 |
-
|
1021 |
-
|
1022 |
-
|
1023 |
-
|
1024 |
-
|
1025 |
-
|
1026 |
-
|
1027 |
-
|
1028 |
-
//
|
1029 |
-
//
|
1030 |
-
//
|
1031 |
-
//
|
1032 |
-
|
1033 |
-
|
1034 |
-
|
1035 |
-
|
1036 |
-
|
1037 |
-
|
1038 |
-
|
1039 |
-
|
1040 |
-
|
1041 |
-
|
1042 |
-
|
1043 |
-
|
1044 |
-
|
1045 |
-
|
1046 |
-
|
1047 |
-
|
1048 |
-
|
1049 |
-
|
1050 |
-
|
1051 |
-
|
1052 |
-
|
1053 |
-
|
1054 |
-
|
1055 |
-
|
1056 |
-
|
1057 |
-
|
1058 |
-
|
1059 |
-
|
1060 |
-
|
1061 |
-
|
1062 |
-
|
1063 |
-
|
1064 |
-
|
1065 |
-
|
1066 |
-
|
1067 |
-
|
1068 |
-
|
1069 |
-
|
1070 |
-
|
1071 |
-
|
1072 |
-
|
1073 |
-
|
1074 |
-
|
1075 |
-
|
1076 |
-
|
1077 |
-
|
1078 |
-
|
1079 |
-
|
1080 |
-
|
1081 |
-
|
1082 |
-
|
1083 |
-
|
1084 |
-
|
1085 |
-
|
1086 |
-
|
1087 |
-
|
1088 |
-
|
1089 |
-
|
1090 |
-
|
1091 |
-
|
1092 |
-
|
1093 |
-
|
1094 |
-
|
1095 |
-
|
1096 |
-
|
1097 |
-
|
1098 |
-
if (
|
1099 |
-
|
1100 |
-
|
1101 |
-
|
1102 |
-
|
1103 |
-
|
1104 |
-
|
1105 |
-
|
1106 |
-
|
1107 |
-
|
1108 |
-
|
1109 |
-
|
1110 |
-
|
1111 |
-
|
1112 |
-
var
|
1113 |
-
|
1114 |
-
|
1115 |
-
|
1116 |
-
|
1117 |
-
|
1118 |
-
|
1119 |
-
|
1120 |
-
|
1121 |
-
|
1122 |
-
cm.display.
|
1123 |
-
}
|
1124 |
-
|
1125 |
-
function
|
1126 |
-
|
1127 |
-
|
1128 |
-
|
1129 |
-
|
1130 |
-
|
1131 |
-
|
1132 |
-
|
1133 |
-
|
1134 |
-
|
1135 |
-
|
1136 |
-
|
1137 |
-
if (
|
1138 |
-
|
1139 |
-
|
1140 |
-
|
1141 |
-
|
1142 |
-
|
1143 |
-
|
1144 |
-
|
1145 |
-
|
1146 |
-
|
1147 |
-
|
1148 |
-
|
1149 |
-
|
1150 |
-
|
1151 |
-
|
1152 |
-
|
1153 |
-
|
1154 |
-
|
1155 |
-
|
1156 |
-
|
1157 |
-
|
1158 |
-
|
1159 |
-
|
1160 |
-
|
1161 |
-
|
1162 |
-
|
1163 |
-
|
1164 |
-
|
1165 |
-
|
1166 |
-
|
1167 |
-
|
1168 |
-
|
1169 |
-
|
1170 |
-
|
1171 |
-
|
1172 |
-
|
1173 |
-
|
1174 |
-
|
1175 |
-
|
1176 |
-
|
1177 |
-
|
1178 |
-
|
1179 |
-
|
1180 |
-
|
1181 |
-
|
1182 |
-
|
1183 |
-
|
1184 |
-
|
1185 |
-
|
1186 |
-
|
1187 |
-
|
1188 |
-
|
1189 |
-
|
1190 |
-
|
1191 |
-
|
1192 |
-
|
1193 |
-
|
1194 |
-
|
1195 |
-
|
1196 |
-
|
1197 |
-
|
1198 |
-
|
1199 |
-
|
1200 |
-
|
1201 |
-
|
1202 |
-
|
1203 |
-
|
1204 |
-
var
|
1205 |
-
|
1206 |
-
if (
|
1207 |
-
return
|
1208 |
-
}
|
1209 |
-
|
1210 |
-
|
1211 |
-
|
1212 |
-
|
1213 |
-
|
1214 |
-
|
1215 |
-
|
1216 |
-
|
1217 |
-
|
1218 |
-
|
1219 |
-
|
1220 |
-
|
1221 |
-
|
1222 |
-
|
1223 |
-
|
1224 |
-
|
1225 |
-
|
1226 |
-
|
1227 |
-
|
1228 |
-
|
1229 |
-
|
1230 |
-
|
1231 |
-
|
1232 |
-
|
1233 |
-
|
1234 |
-
|
1235 |
-
|
1236 |
-
|
1237 |
-
|
1238 |
-
|
1239 |
-
|
1240 |
-
|
1241 |
-
|
1242 |
-
|
1243 |
-
|
1244 |
-
|
1245 |
-
|
1246 |
-
|
1247 |
-
|
1248 |
-
|
1249 |
-
|
1250 |
-
|
1251 |
-
|
1252 |
-
|
1253 |
-
|
1254 |
-
|
1255 |
-
|
1256 |
-
|
1257 |
-
|
1258 |
-
|
1259 |
-
|
1260 |
-
|
1261 |
-
|
1262 |
-
|
1263 |
-
|
1264 |
-
|
1265 |
-
|
1266 |
-
|
1267 |
-
|
1268 |
-
|
1269 |
-
|
1270 |
-
|
1271 |
-
|
1272 |
-
|
1273 |
-
|
1274 |
-
|
1275 |
-
|
1276 |
-
|
1277 |
-
|
1278 |
-
|
1279 |
-
|
1280 |
-
|
1281 |
-
|
1282 |
-
|
1283 |
-
|
1284 |
-
measureText
|
1285 |
-
|
1286 |
-
|
1287 |
-
|
1288 |
-
|
1289 |
-
|
1290 |
-
|
1291 |
-
|
1292 |
-
|
1293 |
-
|
1294 |
-
|
1295 |
-
|
1296 |
-
|
1297 |
-
|
1298 |
-
|
1299 |
-
|
1300 |
-
|
1301 |
-
|
1302 |
-
|
1303 |
-
|
1304 |
-
|
1305 |
-
|
1306 |
-
|
1307 |
-
|
1308 |
-
|
1309 |
-
|
1310 |
-
|
1311 |
-
|
1312 |
-
|
1313 |
-
|
1314 |
-
|
1315 |
-
|
1316 |
-
|
1317 |
-
|
1318 |
-
|
1319 |
-
|
1320 |
-
|
1321 |
-
|
1322 |
-
|
1323 |
-
|
1324 |
-
|
1325 |
-
|
1326 |
-
|
1327 |
-
|
1328 |
-
|
1329 |
-
|
1330 |
-
|
1331 |
-
|
1332 |
-
|
1333 |
-
if (
|
1334 |
-
|
1335 |
-
|
1336 |
-
|
1337 |
-
|
1338 |
-
|
1339 |
-
|
1340 |
-
|
1341 |
-
|
1342 |
-
|
1343 |
-
|
1344 |
-
|
1345 |
-
|
1346 |
-
|
1347 |
-
|
1348 |
-
}
|
1349 |
-
|
1350 |
-
|
1351 |
-
|
1352 |
-
}
|
1353 |
-
|
1354 |
-
|
1355 |
-
|
1356 |
-
|
1357 |
-
|
1358 |
-
if (
|
1359 |
-
|
1360 |
-
|
1361 |
-
|
1362 |
-
|
1363 |
-
|
1364 |
-
|
1365 |
-
|
1366 |
-
|
1367 |
-
|
1368 |
-
|
1369 |
-
|
1370 |
-
|
1371 |
-
|
1372 |
-
|
1373 |
-
|
1374 |
-
|
1375 |
-
|
1376 |
-
|
1377 |
-
|
1378 |
-
|
1379 |
-
|
1380 |
-
|
1381 |
-
|
1382 |
-
if (
|
1383 |
-
|
1384 |
-
|
1385 |
-
|
1386 |
-
|
1387 |
-
|
1388 |
-
|
1389 |
-
|
1390 |
-
|
1391 |
-
|
1392 |
-
|
1393 |
-
|
1394 |
-
|
1395 |
-
|
1396 |
-
|
1397 |
-
var
|
1398 |
-
if (withOp)
|
1399 |
-
|
1400 |
-
|
1401 |
-
|
1402 |
-
|
1403 |
-
|
1404 |
-
|
1405 |
-
|
1406 |
-
|
1407 |
-
|
1408 |
-
|
1409 |
-
|
1410 |
-
}
|
1411 |
-
|
1412 |
-
|
1413 |
-
if (
|
1414 |
-
|
1415 |
-
|
1416 |
-
|
1417 |
-
|
1418 |
-
|
1419 |
-
|
1420 |
-
|
1421 |
-
if (cm.
|
1422 |
-
cm.
|
1423 |
-
|
1424 |
-
|
1425 |
-
|
1426 |
-
|
1427 |
-
|
1428 |
-
|
1429 |
-
|
1430 |
-
|
1431 |
-
|
1432 |
-
|
1433 |
-
|
1434 |
-
|
1435 |
-
|
1436 |
-
|
1437 |
-
|
1438 |
-
|
1439 |
-
|
1440 |
-
|
1441 |
-
|
1442 |
-
|
1443 |
-
|
1444 |
-
|
1445 |
-
|
1446 |
-
|
1447 |
-
|
1448 |
-
|
1449 |
-
|
1450 |
-
|
1451 |
-
|
1452 |
-
|
1453 |
-
|
1454 |
-
var
|
1455 |
-
if (
|
1456 |
-
|
1457 |
-
|
1458 |
-
|
1459 |
-
|
1460 |
-
|
1461 |
-
|
1462 |
-
|
1463 |
-
|
1464 |
-
|
1465 |
-
|
1466 |
-
var
|
1467 |
-
|
1468 |
-
|
1469 |
-
cm.
|
1470 |
-
|
1471 |
-
|
1472 |
-
|
1473 |
-
|
1474 |
-
|
1475 |
-
cm.
|
1476 |
-
|
1477 |
-
|
1478 |
-
|
1479 |
-
|
1480 |
-
|
1481 |
-
if (
|
1482 |
-
|
1483 |
-
|
1484 |
-
|
1485 |
-
|
1486 |
-
|
1487 |
-
|
1488 |
-
|
1489 |
-
|
1490 |
-
|
1491 |
-
|
1492 |
-
|
1493 |
-
|
1494 |
-
|
1495 |
-
|
1496 |
-
|
1497 |
-
|
1498 |
-
cm.display.
|
1499 |
-
|
1500 |
-
|
1501 |
-
|
1502 |
-
|
1503 |
-
|
1504 |
-
|
1505 |
-
|
1506 |
-
|
1507 |
-
|
1508 |
-
|
1509 |
-
|
1510 |
-
|
1511 |
-
|
1512 |
-
|
1513 |
-
|
1514 |
-
|
1515 |
-
|
1516 |
-
|
1517 |
-
|
1518 |
-
|
1519 |
-
|
1520 |
-
|
1521 |
-
|
1522 |
-
|
1523 |
-
|
1524 |
-
|
1525 |
-
|
1526 |
-
|
1527 |
-
|
1528 |
-
|
1529 |
-
|
1530 |
-
|
1531 |
-
|
1532 |
-
|
1533 |
-
|
1534 |
-
|
1535 |
-
|
1536 |
-
on(d.
|
1537 |
-
if (d.scroller.clientHeight)
|
1538 |
-
|
1539 |
-
|
1540 |
-
|
1541 |
-
|
1542 |
-
|
1543 |
-
on(d.
|
1544 |
-
|
1545 |
-
|
1546 |
-
|
1547 |
-
|
1548 |
-
|
1549 |
-
|
1550 |
-
on(d.
|
1551 |
-
|
1552 |
-
|
1553 |
-
function
|
1554 |
-
|
1555 |
-
|
1556 |
-
|
1557 |
-
|
1558 |
-
|
1559 |
-
|
1560 |
-
|
1561 |
-
|
1562 |
-
|
1563 |
-
|
1564 |
-
|
1565 |
-
|
1566 |
-
|
1567 |
-
|
1568 |
-
|
1569 |
-
|
1570 |
-
|
1571 |
-
|
1572 |
-
|
1573 |
-
|
1574 |
-
|
1575 |
-
if (
|
1576 |
-
|
1577 |
-
|
1578 |
-
|
1579 |
-
|
1580 |
-
on(d.input, "
|
1581 |
-
|
1582 |
-
|
1583 |
-
|
1584 |
-
|
1585 |
-
|
1586 |
-
|
1587 |
-
|
1588 |
-
|
1589 |
-
|
1590 |
-
|
1591 |
-
|
1592 |
-
|
1593 |
-
|
1594 |
-
|
1595 |
-
|
1596 |
-
|
1597 |
-
|
1598 |
-
|
1599 |
-
|
1600 |
-
|
1601 |
-
|
1602 |
-
|
1603 |
-
|
1604 |
-
|
1605 |
-
|
1606 |
-
|
1607 |
-
|
1608 |
-
|
1609 |
-
|
1610 |
-
|
1611 |
-
|
1612 |
-
|
1613 |
-
|
1614 |
-
|
1615 |
-
|
1616 |
-
|
1617 |
-
|
1618 |
-
|
1619 |
-
|
1620 |
-
|
1621 |
-
|
1622 |
-
|
1623 |
-
|
1624 |
-
|
1625 |
-
|
1626 |
-
|
1627 |
-
|
1628 |
-
|
1629 |
-
|
1630 |
-
|
1631 |
-
|
1632 |
-
|
1633 |
-
|
1634 |
-
|
1635 |
-
var
|
1636 |
-
|
1637 |
-
|
1638 |
-
|
1639 |
-
|
1640 |
-
|
1641 |
-
|
1642 |
-
|
1643 |
-
|
1644 |
-
|
1645 |
-
|
1646 |
-
|
1647 |
-
|
1648 |
-
|
1649 |
-
|
1650 |
-
|
1651 |
-
|
1652 |
-
|
1653 |
-
|
1654 |
-
if (
|
1655 |
-
|
1656 |
-
|
1657 |
-
|
1658 |
-
|
1659 |
-
|
1660 |
-
|
1661 |
-
|
1662 |
-
|
1663 |
-
|
1664 |
-
|
1665 |
-
|
1666 |
-
|
1667 |
-
|
1668 |
-
|
1669 |
-
|
1670 |
-
|
1671 |
-
|
1672 |
-
|
1673 |
-
|
1674 |
-
|
1675 |
-
|
1676 |
-
|
1677 |
-
|
1678 |
-
|
1679 |
-
|
1680 |
-
|
1681 |
-
|
1682 |
-
|
1683 |
-
|
1684 |
-
|
1685 |
-
|
1686 |
-
|
1687 |
-
|
1688 |
-
|
1689 |
-
|
1690 |
-
|
1691 |
-
var
|
1692 |
-
|
1693 |
-
|
1694 |
-
|
1695 |
-
|
1696 |
-
|
1697 |
-
|
1698 |
-
|
1699 |
-
|
1700 |
-
|
1701 |
-
|
1702 |
-
|
1703 |
-
|
1704 |
-
|
1705 |
-
|
1706 |
-
|
1707 |
-
|
1708 |
-
|
1709 |
-
|
1710 |
-
|
1711 |
-
|
1712 |
-
|
1713 |
-
|
1714 |
-
|
1715 |
-
|
1716 |
-
|
1717 |
-
|
1718 |
-
|
1719 |
-
|
1720 |
-
|
1721 |
-
|
1722 |
-
|
1723 |
-
|
1724 |
-
|
1725 |
-
|
1726 |
-
|
1727 |
-
if (type == "
|
1728 |
-
|
1729 |
-
|
1730 |
-
|
1731 |
-
|
1732 |
-
|
1733 |
-
|
1734 |
-
|
1735 |
-
|
1736 |
-
|
1737 |
-
|
1738 |
-
|
1739 |
-
|
1740 |
-
|
1741 |
-
|
1742 |
-
|
1743 |
-
|
1744 |
-
|
1745 |
-
|
1746 |
-
|
1747 |
-
|
1748 |
-
|
1749 |
-
|
1750 |
-
|
1751 |
-
|
1752 |
-
|
1753 |
-
|
1754 |
-
|
1755 |
-
|
1756 |
-
|
1757 |
-
|
1758 |
-
|
1759 |
-
|
1760 |
-
|
1761 |
-
|
1762 |
-
}
|
1763 |
-
|
1764 |
-
|
1765 |
-
|
1766 |
-
|
1767 |
-
|
1768 |
-
|
1769 |
-
|
1770 |
-
|
1771 |
-
|
1772 |
-
|
1773 |
-
|
1774 |
-
|
1775 |
-
|
1776 |
-
|
1777 |
-
|
1778 |
-
|
1779 |
-
|
1780 |
-
|
1781 |
-
|
1782 |
-
|
1783 |
-
|
1784 |
-
|
1785 |
-
|
1786 |
-
|
1787 |
-
|
1788 |
-
|
1789 |
-
|
1790 |
-
|
1791 |
-
var
|
1792 |
-
|
1793 |
-
|
1794 |
-
|
1795 |
-
|
1796 |
-
|
1797 |
-
|
1798 |
-
|
1799 |
-
|
1800 |
-
|
1801 |
-
|
1802 |
-
|
1803 |
-
|
1804 |
-
|
1805 |
-
|
1806 |
-
|
1807 |
-
|
1808 |
-
|
1809 |
-
|
1810 |
-
|
1811 |
-
|
1812 |
-
|
1813 |
-
|
1814 |
-
|
1815 |
-
|
1816 |
-
|
1817 |
-
|
1818 |
-
|
1819 |
-
|
1820 |
-
|
1821 |
-
|
1822 |
-
|
1823 |
-
|
1824 |
-
|
1825 |
-
|
1826 |
-
|
1827 |
-
|
1828 |
-
|
1829 |
-
|
1830 |
-
reader.
|
1831 |
-
|
1832 |
-
|
1833 |
-
|
1834 |
-
|
1835 |
-
|
1836 |
-
|
1837 |
-
|
1838 |
-
|
1839 |
-
|
1840 |
-
|
1841 |
-
|
1842 |
-
|
1843 |
-
|
1844 |
-
|
1845 |
-
|
1846 |
-
|
1847 |
-
|
1848 |
-
|
1849 |
-
|
1850 |
-
|
1851 |
-
|
1852 |
-
|
1853 |
-
|
1854 |
-
|
1855 |
-
|
1856 |
-
|
1857 |
-
|
1858 |
-
|
1859 |
-
|
1860 |
-
|
1861 |
-
|
1862 |
-
|
1863 |
-
|
1864 |
-
|
1865 |
-
if (e.
|
1866 |
-
|
1867 |
-
|
1868 |
-
|
1869 |
-
|
1870 |
-
|
1871 |
-
|
1872 |
-
|
1873 |
-
|
1874 |
-
if (opera)
|
1875 |
-
|
1876 |
-
|
1877 |
-
|
1878 |
-
|
1879 |
-
|
1880 |
-
|
1881 |
-
|
1882 |
-
|
1883 |
-
|
1884 |
-
|
1885 |
-
|
1886 |
-
|
1887 |
-
|
1888 |
-
if (
|
1889 |
-
|
1890 |
-
cm.
|
1891 |
-
|
1892 |
-
|
1893 |
-
|
1894 |
-
|
1895 |
-
|
1896 |
-
|
1897 |
-
|
1898 |
-
|
1899 |
-
|
1900 |
-
|
1901 |
-
|
1902 |
-
|
1903 |
-
//
|
1904 |
-
//
|
1905 |
-
//
|
1906 |
-
|
1907 |
-
|
1908 |
-
//
|
1909 |
-
//
|
1910 |
-
//
|
1911 |
-
//
|
1912 |
-
|
1913 |
-
|
1914 |
-
|
1915 |
-
|
1916 |
-
|
1917 |
-
|
1918 |
-
|
1919 |
-
|
1920 |
-
|
1921 |
-
|
1922 |
-
|
1923 |
-
|
1924 |
-
|
1925 |
-
|
1926 |
-
|
1927 |
-
|
1928 |
-
|
1929 |
-
|
1930 |
-
|
1931 |
-
//
|
1932 |
-
if (
|
1933 |
-
|
1934 |
-
|
1935 |
-
|
1936 |
-
|
1937 |
-
|
1938 |
-
|
1939 |
-
|
1940 |
-
|
1941 |
-
|
1942 |
-
|
1943 |
-
|
1944 |
-
|
1945 |
-
|
1946 |
-
|
1947 |
-
|
1948 |
-
|
1949 |
-
|
1950 |
-
|
1951 |
-
|
1952 |
-
|
1953 |
-
|
1954 |
-
|
1955 |
-
|
1956 |
-
|
1957 |
-
|
1958 |
-
|
1959 |
-
|
1960 |
-
|
1961 |
-
|
1962 |
-
|
1963 |
-
|
1964 |
-
|
1965 |
-
|
1966 |
-
|
1967 |
-
|
1968 |
-
|
1969 |
-
|
1970 |
-
|
1971 |
-
|
1972 |
-
|
1973 |
-
|
1974 |
-
|
1975 |
-
|
1976 |
-
|
1977 |
-
|
1978 |
-
|
1979 |
-
|
1980 |
-
|
1981 |
-
|
1982 |
-
|
1983 |
-
|
1984 |
-
|
1985 |
-
|
1986 |
-
|
1987 |
-
|
1988 |
-
|
1989 |
-
}
|
1990 |
-
|
1991 |
-
|
1992 |
-
|
1993 |
-
|
1994 |
-
|
1995 |
-
if (
|
1996 |
-
|
1997 |
-
|
1998 |
-
|
1999 |
-
|
2000 |
-
|
2001 |
-
|
2002 |
-
|
2003 |
-
|
2004 |
-
|
2005 |
-
|
2006 |
-
|
2007 |
-
|
2008 |
-
|
2009 |
-
return
|
2010 |
-
}
|
2011 |
-
|
2012 |
-
|
2013 |
-
|
2014 |
-
|
2015 |
-
|
2016 |
-
|
2017 |
-
|
2018 |
-
|
2019 |
-
|
2020 |
-
|
2021 |
-
|
2022 |
-
|
2023 |
-
|
2024 |
-
|
2025 |
-
|
2026 |
-
|
2027 |
-
|
2028 |
-
|
2029 |
-
|
2030 |
-
|
2031 |
-
|
2032 |
-
|
2033 |
-
|
2034 |
-
|
2035 |
-
|
2036 |
-
|
2037 |
-
|
2038 |
-
|
2039 |
-
|
2040 |
-
|
2041 |
-
|
2042 |
-
|
2043 |
-
|
2044 |
-
|
2045 |
-
|
2046 |
-
}
|
2047 |
-
|
2048 |
-
|
2049 |
-
|
2050 |
-
|
2051 |
-
|
2052 |
-
|
2053 |
-
|
2054 |
-
|
2055 |
-
|
2056 |
-
|
2057 |
-
|
2058 |
-
|
2059 |
-
|
2060 |
-
|
2061 |
-
|
2062 |
-
|
2063 |
-
|
2064 |
-
|
2065 |
-
|
2066 |
-
|
2067 |
-
|
2068 |
-
|
2069 |
-
|
2070 |
-
|
2071 |
-
|
2072 |
-
if (
|
2073 |
-
|
2074 |
-
|
2075 |
-
|
2076 |
-
|
2077 |
-
|
2078 |
-
|
2079 |
-
|
2080 |
-
|
2081 |
-
|
2082 |
-
|
2083 |
-
|
2084 |
-
|
2085 |
-
|
2086 |
-
|
2087 |
-
|
2088 |
-
|
2089 |
-
|
2090 |
-
|
2091 |
-
if (
|
2092 |
-
if (
|
2093 |
-
|
2094 |
-
|
2095 |
-
|
2096 |
-
|
2097 |
-
|
2098 |
-
if (
|
2099 |
-
|
2100 |
-
|
2101 |
-
|
2102 |
-
|
2103 |
-
|
2104 |
-
|
2105 |
-
|
2106 |
-
|
2107 |
-
|
2108 |
-
|
2109 |
-
|
2110 |
-
|
2111 |
-
|
2112 |
-
|
2113 |
-
|
2114 |
-
|
2115 |
-
|
2116 |
-
|
2117 |
-
|
2118 |
-
|
2119 |
-
|
2120 |
-
|
2121 |
-
|
2122 |
-
if (
|
2123 |
-
|
2124 |
-
|
2125 |
-
|
2126 |
-
|
2127 |
-
|
2128 |
-
|
2129 |
-
|
2130 |
-
|
2131 |
-
|
2132 |
-
|
2133 |
-
|
2134 |
-
|
2135 |
-
|
2136 |
-
|
2137 |
-
|
2138 |
-
|
2139 |
-
|
2140 |
-
|
2141 |
-
|
2142 |
-
|
2143 |
-
|
2144 |
-
|
2145 |
-
|
2146 |
-
function
|
2147 |
-
display.
|
2148 |
-
|
2149 |
-
|
2150 |
-
|
2151 |
-
|
2152 |
-
|
2153 |
-
|
2154 |
-
|
2155 |
-
|
2156 |
-
|
2157 |
-
|
2158 |
-
|
2159 |
-
|
2160 |
-
|
2161 |
-
|
2162 |
-
detectingSelectAll
|
2163 |
-
|
2164 |
-
|
2165 |
-
|
2166 |
-
|
2167 |
-
|
2168 |
-
|
2169 |
-
|
2170 |
-
|
2171 |
-
|
2172 |
-
|
2173 |
-
|
2174 |
-
|
2175 |
-
|
2176 |
-
|
2177 |
-
|
2178 |
-
|
2179 |
-
|
2180 |
-
|
2181 |
-
|
2182 |
-
|
2183 |
-
|
2184 |
-
|
2185 |
-
|
2186 |
-
|
2187 |
-
|
2188 |
-
function
|
2189 |
-
if (!
|
2190 |
-
|
2191 |
-
|
2192 |
-
|
2193 |
-
|
2194 |
-
|
2195 |
-
|
2196 |
-
if (
|
2197 |
-
|
2198 |
-
|
2199 |
-
|
2200 |
-
|
2201 |
-
|
2202 |
-
|
2203 |
-
|
2204 |
-
|
2205 |
-
|
2206 |
-
|
2207 |
-
|
2208 |
-
|
2209 |
-
|
2210 |
-
|
2211 |
-
|
2212 |
-
if (hint == "
|
2213 |
-
|
2214 |
-
|
2215 |
-
|
2216 |
-
|
2217 |
-
|
2218 |
-
|
2219 |
-
|
2220 |
-
|
2221 |
-
|
2222 |
-
|
2223 |
-
|
2224 |
-
|
2225 |
-
|
2226 |
-
|
2227 |
-
|
2228 |
-
|
2229 |
-
|
2230 |
-
|
2231 |
-
|
2232 |
-
|
2233 |
-
|
2234 |
-
|
2235 |
-
|
2236 |
-
|
2237 |
-
|
2238 |
-
|
2239 |
-
|
2240 |
-
|
2241 |
-
|
2242 |
-
|
2243 |
-
if (
|
2244 |
-
|
2245 |
-
|
2246 |
-
|
2247 |
-
|
2248 |
-
|
2249 |
-
|
2250 |
-
|
2251 |
-
|
2252 |
-
if (
|
2253 |
-
|
2254 |
-
|
2255 |
-
|
2256 |
-
|
2257 |
-
|
2258 |
-
|
2259 |
-
|
2260 |
-
|
2261 |
-
|
2262 |
-
|
2263 |
-
|
2264 |
-
|
2265 |
-
|
2266 |
-
|
2267 |
-
|
2268 |
-
|
2269 |
-
|
2270 |
-
|
2271 |
-
|
2272 |
-
|
2273 |
-
|
2274 |
-
|
2275 |
-
|
2276 |
-
|
2277 |
-
|
2278 |
-
|
2279 |
-
|
2280 |
-
|
2281 |
-
|
2282 |
-
|
2283 |
-
|
2284 |
-
|
2285 |
-
|
2286 |
-
|
2287 |
-
|
2288 |
-
|
2289 |
-
|
2290 |
-
|
2291 |
-
|
2292 |
-
|
2293 |
-
|
2294 |
-
|
2295 |
-
|
2296 |
-
|
2297 |
-
|
2298 |
-
|
2299 |
-
|
2300 |
-
|
2301 |
-
|
2302 |
-
|
2303 |
-
|
2304 |
-
|
2305 |
-
|
2306 |
-
|
2307 |
-
|
2308 |
-
|
2309 |
-
|
2310 |
-
|
2311 |
-
|
2312 |
-
|
2313 |
-
|
2314 |
-
|
2315 |
-
|
2316 |
-
|
2317 |
-
|
2318 |
-
|
2319 |
-
|
2320 |
-
|
2321 |
-
|
2322 |
-
|
2323 |
-
|
2324 |
-
|
2325 |
-
|
2326 |
-
|
2327 |
-
|
2328 |
-
|
2329 |
-
|
2330 |
-
|
2331 |
-
|
2332 |
-
|
2333 |
-
|
2334 |
-
|
2335 |
-
|
2336 |
-
|
2337 |
-
|
2338 |
-
|
2339 |
-
|
2340 |
-
|
2341 |
-
|
2342 |
-
|
2343 |
-
|
2344 |
-
|
2345 |
-
|
2346 |
-
|
2347 |
-
if (
|
2348 |
-
|
2349 |
-
|
2350 |
-
if (change.
|
2351 |
-
|
2352 |
-
|
2353 |
-
|
2354 |
-
|
2355 |
-
|
2356 |
-
|
2357 |
-
if (change.
|
2358 |
-
|
2359 |
-
|
2360 |
-
|
2361 |
-
|
2362 |
-
|
2363 |
-
|
2364 |
-
if (
|
2365 |
-
|
2366 |
-
|
2367 |
-
|
2368 |
-
|
2369 |
-
|
2370 |
-
|
2371 |
-
|
2372 |
-
|
2373 |
-
|
2374 |
-
|
2375 |
-
|
2376 |
-
|
2377 |
-
|
2378 |
-
|
2379 |
-
|
2380 |
-
|
2381 |
-
|
2382 |
-
|
2383 |
-
|
2384 |
-
|
2385 |
-
|
2386 |
-
|
2387 |
-
|
2388 |
-
|
2389 |
-
|
2390 |
-
|
2391 |
-
|
2392 |
-
|
2393 |
-
|
2394 |
-
|
2395 |
-
|
2396 |
-
|
2397 |
-
|
2398 |
-
|
2399 |
-
|
2400 |
-
|
2401 |
-
|
2402 |
-
|
2403 |
-
|
2404 |
-
|
2405 |
-
|
2406 |
-
|
2407 |
-
|
2408 |
-
|
2409 |
-
|
2410 |
-
|
2411 |
-
|
2412 |
-
|
2413 |
-
|
2414 |
-
|
2415 |
-
|
2416 |
-
|
2417 |
-
|
2418 |
-
|
2419 |
-
|
2420 |
-
|
2421 |
-
|
2422 |
-
|
2423 |
-
|
2424 |
-
|
2425 |
-
|
2426 |
-
}
|
2427 |
-
|
2428 |
-
|
2429 |
-
|
2430 |
-
|
2431 |
-
if (
|
2432 |
-
|
2433 |
-
}
|
2434 |
-
|
2435 |
-
|
2436 |
-
|
2437 |
-
function
|
2438 |
-
|
2439 |
-
|
2440 |
-
|
2441 |
-
|
2442 |
-
|
2443 |
-
function
|
2444 |
-
|
2445 |
-
|
2446 |
-
|
2447 |
-
|
2448 |
-
|
2449 |
-
function
|
2450 |
-
|
2451 |
-
if (
|
2452 |
-
|
2453 |
-
|
2454 |
-
|
2455 |
-
|
2456 |
-
|
2457 |
-
|
2458 |
-
|
2459 |
-
|
2460 |
-
|
2461 |
-
|
2462 |
-
|
2463 |
-
|
2464 |
-
|
2465 |
-
|
2466 |
-
|
2467 |
-
|
2468 |
-
|
2469 |
-
|
2470 |
-
|
2471 |
-
|
2472 |
-
|
2473 |
-
|
2474 |
-
|
2475 |
-
|
2476 |
-
|
2477 |
-
|
2478 |
-
|
2479 |
-
|
2480 |
-
|
2481 |
-
|
2482 |
-
|
2483 |
-
|
2484 |
-
|
2485 |
-
|
2486 |
-
|
2487 |
-
|
2488 |
-
|
2489 |
-
|
2490 |
-
|
2491 |
-
|
2492 |
-
|
2493 |
-
|
2494 |
-
|
2495 |
-
|
2496 |
-
|
2497 |
-
|
2498 |
-
|
2499 |
-
|
2500 |
-
anchor =
|
2501 |
-
|
2502 |
-
|
2503 |
-
|
2504 |
-
|
2505 |
-
|
2506 |
-
|
2507 |
-
|
2508 |
-
|
2509 |
-
|
2510 |
-
|
2511 |
-
if (
|
2512 |
-
|
2513 |
-
|
2514 |
-
|
2515 |
-
|
2516 |
-
|
2517 |
-
|
2518 |
-
|
2519 |
-
|
2520 |
-
|
2521 |
-
|
2522 |
-
|
2523 |
-
|
2524 |
-
|
2525 |
-
|
2526 |
-
|
2527 |
-
|
2528 |
-
|
2529 |
-
|
2530 |
-
|
2531 |
-
|
2532 |
-
|
2533 |
-
|
2534 |
-
|
2535 |
-
|
2536 |
-
|
2537 |
-
|
2538 |
-
|
2539 |
-
|
2540 |
-
if (
|
2541 |
-
|
2542 |
-
|
2543 |
-
|
2544 |
-
|
2545 |
-
|
2546 |
-
|
2547 |
-
|
2548 |
-
|
2549 |
-
|
2550 |
-
|
2551 |
-
if (
|
2552 |
-
if (
|
2553 |
-
|
2554 |
-
|
2555 |
-
|
2556 |
-
|
2557 |
-
|
2558 |
-
|
2559 |
-
|
2560 |
-
|
2561 |
-
|
2562 |
-
|
2563 |
-
|
2564 |
-
|
2565 |
-
|
2566 |
-
|
2567 |
-
|
2568 |
-
|
2569 |
-
|
2570 |
-
|
2571 |
-
|
2572 |
-
|
2573 |
-
|
2574 |
-
|
2575 |
-
|
2576 |
-
|
2577 |
-
|
2578 |
-
|
2579 |
-
|
2580 |
-
|
2581 |
-
|
2582 |
-
|
2583 |
-
|
2584 |
-
|
2585 |
-
|
2586 |
-
|
2587 |
-
|
2588 |
-
|
2589 |
-
|
2590 |
-
|
2591 |
-
|
2592 |
-
|
2593 |
-
|
2594 |
-
|
2595 |
-
|
2596 |
-
|
2597 |
-
|
2598 |
-
|
2599 |
-
|
2600 |
-
|
2601 |
-
|
2602 |
-
|
2603 |
-
|
2604 |
-
|
2605 |
-
|
2606 |
-
|
2607 |
-
|
2608 |
-
|
2609 |
-
|
2610 |
-
|
2611 |
-
|
2612 |
-
|
2613 |
-
|
2614 |
-
|
2615 |
-
|
2616 |
-
|
2617 |
-
|
2618 |
-
|
2619 |
-
|
2620 |
-
|
2621 |
-
|
2622 |
-
|
2623 |
-
|
2624 |
-
|
2625 |
-
|
2626 |
-
|
2627 |
-
|
2628 |
-
|
2629 |
-
|
2630 |
-
|
2631 |
-
|
2632 |
-
|
2633 |
-
|
2634 |
-
|
2635 |
-
|
2636 |
-
|
2637 |
-
|
2638 |
-
|
2639 |
-
|
2640 |
-
|
2641 |
-
|
2642 |
-
|
2643 |
-
|
2644 |
-
|
2645 |
-
|
2646 |
-
|
2647 |
-
|
2648 |
-
|
2649 |
-
|
2650 |
-
|
2651 |
-
|
2652 |
-
}
|
2653 |
-
|
2654 |
-
|
2655 |
-
|
2656 |
-
|
2657 |
-
|
2658 |
-
|
2659 |
-
|
2660 |
-
|
2661 |
-
|
2662 |
-
|
2663 |
-
|
2664 |
-
var
|
2665 |
-
|
2666 |
-
|
2667 |
-
|
2668 |
-
|
2669 |
-
|
2670 |
-
|
2671 |
-
|
2672 |
-
|
2673 |
-
|
2674 |
-
if (how == "
|
2675 |
-
|
2676 |
-
|
2677 |
-
|
2678 |
-
|
2679 |
-
|
2680 |
-
|
2681 |
-
|
2682 |
-
indentation =
|
2683 |
-
|
2684 |
-
|
2685 |
-
|
2686 |
-
|
2687 |
-
|
2688 |
-
|
2689 |
-
|
2690 |
-
|
2691 |
-
|
2692 |
-
|
2693 |
-
|
2694 |
-
|
2695 |
-
|
2696 |
-
|
2697 |
-
|
2698 |
-
if (
|
2699 |
-
|
2700 |
-
|
2701 |
-
|
2702 |
-
|
2703 |
-
|
2704 |
-
|
2705 |
-
|
2706 |
-
|
2707 |
-
|
2708 |
-
|
2709 |
-
|
2710 |
-
|
2711 |
-
|
2712 |
-
|
2713 |
-
|
2714 |
-
|
2715 |
-
|
2716 |
-
|
2717 |
-
|
2718 |
-
|
2719 |
-
|
2720 |
-
|
2721 |
-
|
2722 |
-
|
2723 |
-
|
2724 |
-
|
2725 |
-
|
2726 |
-
|
2727 |
-
|
2728 |
-
|
2729 |
-
|
2730 |
-
|
2731 |
-
|
2732 |
-
|
2733 |
-
|
2734 |
-
|
2735 |
-
|
2736 |
-
|
2737 |
-
|
2738 |
-
|
2739 |
-
|
2740 |
-
|
2741 |
-
|
2742 |
-
|
2743 |
-
|
2744 |
-
|
2745 |
-
|
2746 |
-
|
2747 |
-
|
2748 |
-
|
2749 |
-
|
2750 |
-
|
2751 |
-
|
2752 |
-
|
2753 |
-
|
2754 |
-
|
2755 |
-
|
2756 |
-
|
2757 |
-
|
2758 |
-
|
2759 |
-
|
2760 |
-
|
2761 |
-
|
2762 |
-
|
2763 |
-
|
2764 |
-
|
2765 |
-
|
2766 |
-
|
2767 |
-
|
2768 |
-
|
2769 |
-
|
2770 |
-
|
2771 |
-
|
2772 |
-
|
2773 |
-
|
2774 |
-
|
2775 |
-
|
2776 |
-
|
2777 |
-
|
2778 |
-
|
2779 |
-
|
2780 |
-
|
2781 |
-
|
2782 |
-
|
2783 |
-
|
2784 |
-
|
2785 |
-
|
2786 |
-
|
2787 |
-
|
2788 |
-
|
2789 |
-
|
2790 |
-
|
2791 |
-
|
2792 |
-
|
2793 |
-
|
2794 |
-
|
2795 |
-
|
2796 |
-
|
2797 |
-
|
2798 |
-
|
2799 |
-
|
2800 |
-
|
2801 |
-
|
2802 |
-
|
2803 |
-
|
2804 |
-
|
2805 |
-
|
2806 |
-
|
2807 |
-
|
2808 |
-
},
|
2809 |
-
|
2810 |
-
|
2811 |
-
|
2812 |
-
|
2813 |
-
|
2814 |
-
|
2815 |
-
|
2816 |
-
|
2817 |
-
|
2818 |
-
|
2819 |
-
|
2820 |
-
|
2821 |
-
|
2822 |
-
|
2823 |
-
|
2824 |
-
|
2825 |
-
|
2826 |
-
var
|
2827 |
-
|
2828 |
-
|
2829 |
-
|
2830 |
-
|
2831 |
-
|
2832 |
-
|
2833 |
-
|
2834 |
-
|
2835 |
-
|
2836 |
-
|
2837 |
-
|
2838 |
-
|
2839 |
-
|
2840 |
-
|
2841 |
-
|
2842 |
-
}
|
2843 |
-
|
2844 |
-
|
2845 |
-
|
2846 |
-
|
2847 |
-
|
2848 |
-
|
2849 |
-
|
2850 |
-
|
2851 |
-
|
2852 |
-
|
2853 |
-
|
2854 |
-
|
2855 |
-
var
|
2856 |
-
|
2857 |
-
|
2858 |
-
|
2859 |
-
|
2860 |
-
|
2861 |
-
|
2862 |
-
|
2863 |
-
|
2864 |
-
|
2865 |
-
|
2866 |
-
|
2867 |
-
|
2868 |
-
|
2869 |
-
|
2870 |
-
|
2871 |
-
|
2872 |
-
|
2873 |
-
|
2874 |
-
|
2875 |
-
|
2876 |
-
|
2877 |
-
|
2878 |
-
|
2879 |
-
|
2880 |
-
|
2881 |
-
|
2882 |
-
|
2883 |
-
|
2884 |
-
|
2885 |
-
|
2886 |
-
|
2887 |
-
|
2888 |
-
|
2889 |
-
|
2890 |
-
|
2891 |
-
|
2892 |
-
|
2893 |
-
var
|
2894 |
-
|
2895 |
-
|
2896 |
-
|
2897 |
-
|
2898 |
-
|
2899 |
-
|
2900 |
-
var
|
2901 |
-
|
2902 |
-
|
2903 |
-
|
2904 |
-
|
2905 |
-
|
2906 |
-
|
2907 |
-
|
2908 |
-
|
2909 |
-
|
2910 |
-
|
2911 |
-
|
2912 |
-
|
2913 |
-
|
2914 |
-
|
2915 |
-
|
2916 |
-
|
2917 |
-
|
2918 |
-
|
2919 |
-
|
2920 |
-
|
2921 |
-
|
2922 |
-
|
2923 |
-
|
2924 |
-
|
2925 |
-
|
2926 |
-
|
2927 |
-
|
2928 |
-
|
2929 |
-
|
2930 |
-
|
2931 |
-
return
|
2932 |
-
|
2933 |
-
|
2934 |
-
|
2935 |
-
|
2936 |
-
|
2937 |
-
|
2938 |
-
|
2939 |
-
|
2940 |
-
|
2941 |
-
|
2942 |
-
|
2943 |
-
|
2944 |
-
|
2945 |
-
|
2946 |
-
|
2947 |
-
|
2948 |
-
|
2949 |
-
|
2950 |
-
|
2951 |
-
|
2952 |
-
|
2953 |
-
|
2954 |
-
|
2955 |
-
|
2956 |
-
|
2957 |
-
|
2958 |
-
|
2959 |
-
|
2960 |
-
|
2961 |
-
|
2962 |
-
|
2963 |
-
|
2964 |
-
|
2965 |
-
|
2966 |
-
|
2967 |
-
|
2968 |
-
|
2969 |
-
|
2970 |
-
|
2971 |
-
|
2972 |
-
|
2973 |
-
|
2974 |
-
|
2975 |
-
|
2976 |
-
|
2977 |
-
|
2978 |
-
|
2979 |
-
|
2980 |
-
|
2981 |
-
|
2982 |
-
|
2983 |
-
|
2984 |
-
|
2985 |
-
|
2986 |
-
|
2987 |
-
|
2988 |
-
|
2989 |
-
|
2990 |
-
|
2991 |
-
|
2992 |
-
|
2993 |
-
|
2994 |
-
|
2995 |
-
|
2996 |
-
|
2997 |
-
|
2998 |
-
|
2999 |
-
|
3000 |
-
|
3001 |
-
|
3002 |
-
|
3003 |
-
|
3004 |
-
|
3005 |
-
|
3006 |
-
|
3007 |
-
|
3008 |
-
|
3009 |
-
|
3010 |
-
|
3011 |
-
|
3012 |
-
|
3013 |
-
|
3014 |
-
|
3015 |
-
|
3016 |
-
|
3017 |
-
|
3018 |
-
|
3019 |
-
|
3020 |
-
|
3021 |
-
|
3022 |
-
|
3023 |
-
|
3024 |
-
|
3025 |
-
|
3026 |
-
|
3027 |
-
|
3028 |
-
|
3029 |
-
|
3030 |
-
|
3031 |
-
node.
|
3032 |
-
|
3033 |
-
|
3034 |
-
|
3035 |
-
|
3036 |
-
|
3037 |
-
|
3038 |
-
|
3039 |
-
|
3040 |
-
|
3041 |
-
|
3042 |
-
|
3043 |
-
|
3044 |
-
|
3045 |
-
|
3046 |
-
|
3047 |
-
|
3048 |
-
|
3049 |
-
|
3050 |
-
|
3051 |
-
|
3052 |
-
|
3053 |
-
|
3054 |
-
|
3055 |
-
|
3056 |
-
|
3057 |
-
|
3058 |
-
|
3059 |
-
|
3060 |
-
|
3061 |
-
|
3062 |
-
|
3063 |
-
|
3064 |
-
|
3065 |
-
|
3066 |
-
|
3067 |
-
|
3068 |
-
this.
|
3069 |
-
}),
|
3070 |
-
|
3071 |
-
|
3072 |
-
var
|
3073 |
-
if (
|
3074 |
-
|
3075 |
-
|
3076 |
-
|
3077 |
-
|
3078 |
-
|
3079 |
-
|
3080 |
-
}
|
3081 |
-
|
3082 |
-
|
3083 |
-
|
3084 |
-
|
3085 |
-
|
3086 |
-
|
3087 |
-
|
3088 |
-
|
3089 |
-
|
3090 |
-
|
3091 |
-
|
3092 |
-
sel
|
3093 |
-
|
3094 |
-
|
3095 |
-
|
3096 |
-
|
3097 |
-
if (this
|
3098 |
-
|
3099 |
-
|
3100 |
-
|
3101 |
-
|
3102 |
-
|
3103 |
-
|
3104 |
-
|
3105 |
-
|
3106 |
-
|
3107 |
-
|
3108 |
-
|
3109 |
-
|
3110 |
-
|
3111 |
-
|
3112 |
-
|
3113 |
-
|
3114 |
-
|
3115 |
-
|
3116 |
-
|
3117 |
-
|
3118 |
-
|
3119 |
-
|
3120 |
-
|
3121 |
-
|
3122 |
-
|
3123 |
-
|
3124 |
-
var
|
3125 |
-
|
3126 |
-
|
3127 |
-
|
3128 |
-
|
3129 |
-
|
3130 |
-
|
3131 |
-
|
3132 |
-
|
3133 |
-
|
3134 |
-
|
3135 |
-
|
3136 |
-
|
3137 |
-
|
3138 |
-
|
3139 |
-
|
3140 |
-
|
3141 |
-
|
3142 |
-
|
3143 |
-
|
3144 |
-
|
3145 |
-
|
3146 |
-
|
3147 |
-
|
3148 |
-
|
3149 |
-
|
3150 |
-
|
3151 |
-
|
3152 |
-
|
3153 |
-
|
3154 |
-
|
3155 |
-
|
3156 |
-
|
3157 |
-
|
3158 |
-
|
3159 |
-
|
3160 |
-
|
3161 |
-
|
3162 |
-
|
3163 |
-
|
3164 |
-
|
3165 |
-
|
3166 |
-
|
3167 |
-
|
3168 |
-
|
3169 |
-
|
3170 |
-
|
3171 |
-
|
3172 |
-
|
3173 |
-
|
3174 |
-
|
3175 |
-
|
3176 |
-
|
3177 |
-
|
3178 |
-
|
3179 |
-
|
3180 |
-
|
3181 |
-
|
3182 |
-
|
3183 |
-
|
3184 |
-
|
3185 |
-
|
3186 |
-
|
3187 |
-
|
3188 |
-
|
3189 |
-
|
3190 |
-
|
3191 |
-
option("
|
3192 |
-
|
3193 |
-
loadMode(cm);
|
3194 |
-
|
3195 |
-
|
3196 |
-
|
3197 |
-
option("
|
3198 |
-
option("
|
3199 |
-
|
3200 |
-
|
3201 |
-
|
3202 |
-
|
3203 |
-
}, true);
|
3204 |
-
option("
|
3205 |
-
option("
|
3206 |
-
|
3207 |
-
option("
|
3208 |
-
|
3209 |
-
|
3210 |
-
|
3211 |
-
option("
|
3212 |
-
|
3213 |
-
|
3214 |
-
|
3215 |
-
option("
|
3216 |
-
|
3217 |
-
|
3218 |
-
|
3219 |
-
|
3220 |
-
|
3221 |
-
|
3222 |
-
|
3223 |
-
|
3224 |
-
|
3225 |
-
|
3226 |
-
option("
|
3227 |
-
|
3228 |
-
|
3229 |
-
|
3230 |
-
|
3231 |
-
|
3232 |
-
option("
|
3233 |
-
|
3234 |
-
|
3235 |
-
option("
|
3236 |
-
|
3237 |
-
|
3238 |
-
|
3239 |
-
option("
|
3240 |
-
|
3241 |
-
option("
|
3242 |
-
option("
|
3243 |
-
option("
|
3244 |
-
option("
|
3245 |
-
option("
|
3246 |
-
|
3247 |
-
|
3248 |
-
|
3249 |
-
option("
|
3250 |
-
|
3251 |
-
});
|
3252 |
-
option("
|
3253 |
-
|
3254 |
-
|
3255 |
-
|
3256 |
-
|
3257 |
-
|
3258 |
-
|
3259 |
-
|
3260 |
-
|
3261 |
-
|
3262 |
-
|
3263 |
-
|
3264 |
-
|
3265 |
-
|
3266 |
-
|
3267 |
-
|
3268 |
-
|
3269 |
-
|
3270 |
-
|
3271 |
-
|
3272 |
-
|
3273 |
-
|
3274 |
-
|
3275 |
-
|
3276 |
-
|
3277 |
-
|
3278 |
-
|
3279 |
-
|
3280 |
-
|
3281 |
-
|
3282 |
-
if (typeof spec == "string"
|
3283 |
-
|
3284 |
-
|
3285 |
-
|
3286 |
-
|
3287 |
-
|
3288 |
-
|
3289 |
-
if (
|
3290 |
-
|
3291 |
-
|
3292 |
-
|
3293 |
-
|
3294 |
-
|
3295 |
-
|
3296 |
-
|
3297 |
-
|
3298 |
-
|
3299 |
-
|
3300 |
-
|
3301 |
-
|
3302 |
-
|
3303 |
-
|
3304 |
-
|
3305 |
-
|
3306 |
-
|
3307 |
-
|
3308 |
-
|
3309 |
-
|
3310 |
-
|
3311 |
-
|
3312 |
-
|
3313 |
-
};
|
3314 |
-
|
3315 |
-
|
3316 |
-
|
3317 |
-
CodeMirror.
|
3318 |
-
|
3319 |
-
|
3320 |
-
|
3321 |
-
|
3322 |
-
|
3323 |
-
|
3324 |
-
|
3325 |
-
|
3326 |
-
|
3327 |
-
|
3328 |
-
|
3329 |
-
|
3330 |
-
|
3331 |
-
|
3332 |
-
|
3333 |
-
|
3334 |
-
|
3335 |
-
|
3336 |
-
CodeMirror.
|
3337 |
-
|
3338 |
-
|
3339 |
-
|
3340 |
-
|
3341 |
-
//
|
3342 |
-
|
3343 |
-
|
3344 |
-
|
3345 |
-
|
3346 |
-
|
3347 |
-
|
3348 |
-
|
3349 |
-
|
3350 |
-
|
3351 |
-
return
|
3352 |
-
|
3353 |
-
|
3354 |
-
|
3355 |
-
|
3356 |
-
|
3357 |
-
|
3358 |
-
|
3359 |
-
|
3360 |
-
CodeMirror.
|
3361 |
-
|
3362 |
-
|
3363 |
-
|
3364 |
-
|
3365 |
-
|
3366 |
-
|
3367 |
-
|
3368 |
-
|
3369 |
-
|
3370 |
-
|
3371 |
-
|
3372 |
-
|
3373 |
-
|
3374 |
-
|
3375 |
-
|
3376 |
-
|
3377 |
-
|
3378 |
-
|
3379 |
-
|
3380 |
-
|
3381 |
-
|
3382 |
-
cm.
|
3383 |
-
|
3384 |
-
|
3385 |
-
|
3386 |
-
|
3387 |
-
|
3388 |
-
|
3389 |
-
|
3390 |
-
|
3391 |
-
|
3392 |
-
|
3393 |
-
cm.
|
3394 |
-
},
|
3395 |
-
|
3396 |
-
|
3397 |
-
|
3398 |
-
|
3399 |
-
|
3400 |
-
|
3401 |
-
|
3402 |
-
|
3403 |
-
|
3404 |
-
|
3405 |
-
|
3406 |
-
|
3407 |
-
|
3408 |
-
|
3409 |
-
|
3410 |
-
cm.extendSelection(
|
3411 |
-
},
|
3412 |
-
|
3413 |
-
|
3414 |
-
|
3415 |
-
|
3416 |
-
|
3417 |
-
|
3418 |
-
|
3419 |
-
|
3420 |
-
|
3421 |
-
|
3422 |
-
|
3423 |
-
|
3424 |
-
|
3425 |
-
|
3426 |
-
|
3427 |
-
|
3428 |
-
|
3429 |
-
|
3430 |
-
|
3431 |
-
|
3432 |
-
|
3433 |
-
|
3434 |
-
|
3435 |
-
|
3436 |
-
|
3437 |
-
|
3438 |
-
|
3439 |
-
|
3440 |
-
|
3441 |
-
},
|
3442 |
-
|
3443 |
-
|
3444 |
-
|
3445 |
-
|
3446 |
-
|
3447 |
-
|
3448 |
-
|
3449 |
-
|
3450 |
-
|
3451 |
-
|
3452 |
-
|
3453 |
-
|
3454 |
-
|
3455 |
-
|
3456 |
-
|
3457 |
-
|
3458 |
-
|
3459 |
-
|
3460 |
-
|
3461 |
-
|
3462 |
-
|
3463 |
-
|
3464 |
-
|
3465 |
-
|
3466 |
-
|
3467 |
-
|
3468 |
-
|
3469 |
-
"
|
3470 |
-
"
|
3471 |
-
"
|
3472 |
-
|
3473 |
-
|
3474 |
-
|
3475 |
-
|
3476 |
-
|
3477 |
-
|
3478 |
-
"
|
3479 |
-
"
|
3480 |
-
"
|
3481 |
-
"Ctrl-
|
3482 |
-
|
3483 |
-
|
3484 |
-
|
3485 |
-
|
3486 |
-
|
3487 |
-
|
3488 |
-
"Ctrl-
|
3489 |
-
"
|
3490 |
-
"
|
3491 |
-
|
3492 |
-
};
|
3493 |
-
|
3494 |
-
|
3495 |
-
|
3496 |
-
|
3497 |
-
|
3498 |
-
|
3499 |
-
}
|
3500 |
-
|
3501 |
-
|
3502 |
-
|
3503 |
-
|
3504 |
-
|
3505 |
-
|
3506 |
-
|
3507 |
-
|
3508 |
-
|
3509 |
-
|
3510 |
-
|
3511 |
-
|
3512 |
-
|
3513 |
-
|
3514 |
-
|
3515 |
-
|
3516 |
-
|
3517 |
-
return false;
|
3518 |
-
|
3519 |
-
|
3520 |
-
|
3521 |
-
|
3522 |
-
|
3523 |
-
|
3524 |
-
|
3525 |
-
|
3526 |
-
|
3527 |
-
|
3528 |
-
|
3529 |
-
|
3530 |
-
|
3531 |
-
|
3532 |
-
|
3533 |
-
|
3534 |
-
|
3535 |
-
|
3536 |
-
|
3537 |
-
return
|
3538 |
-
|
3539 |
-
|
3540 |
-
|
3541 |
-
|
3542 |
-
|
3543 |
-
|
3544 |
-
|
3545 |
-
|
3546 |
-
|
3547 |
-
|
3548 |
-
|
3549 |
-
|
3550 |
-
|
3551 |
-
|
3552 |
-
|
3553 |
-
|
3554 |
-
|
3555 |
-
|
3556 |
-
|
3557 |
-
|
3558 |
-
options.
|
3559 |
-
|
3560 |
-
|
3561 |
-
|
3562 |
-
|
3563 |
-
|
3564 |
-
|
3565 |
-
|
3566 |
-
|
3567 |
-
|
3568 |
-
|
3569 |
-
|
3570 |
-
|
3571 |
-
|
3572 |
-
|
3573 |
-
|
3574 |
-
|
3575 |
-
|
3576 |
-
|
3577 |
-
|
3578 |
-
|
3579 |
-
|
3580 |
-
|
3581 |
-
|
3582 |
-
|
3583 |
-
|
3584 |
-
|
3585 |
-
|
3586 |
-
|
3587 |
-
|
3588 |
-
textarea.
|
3589 |
-
|
3590 |
-
|
3591 |
-
|
3592 |
-
|
3593 |
-
|
3594 |
-
|
3595 |
-
|
3596 |
-
|
3597 |
-
|
3598 |
-
|
3599 |
-
|
3600 |
-
|
3601 |
-
|
3602 |
-
|
3603 |
-
|
3604 |
-
|
3605 |
-
|
3606 |
-
|
3607 |
-
|
3608 |
-
|
3609 |
-
|
3610 |
-
|
3611 |
-
StringStream
|
3612 |
-
|
3613 |
-
|
3614 |
-
|
3615 |
-
|
3616 |
-
|
3617 |
-
|
3618 |
-
|
3619 |
-
|
3620 |
-
|
3621 |
-
|
3622 |
-
|
3623 |
-
if (
|
3624 |
-
|
3625 |
-
|
3626 |
-
|
3627 |
-
|
3628 |
-
|
3629 |
-
|
3630 |
-
|
3631 |
-
|
3632 |
-
|
3633 |
-
|
3634 |
-
|
3635 |
-
|
3636 |
-
|
3637 |
-
|
3638 |
-
|
3639 |
-
|
3640 |
-
|
3641 |
-
|
3642 |
-
|
3643 |
-
|
3644 |
-
|
3645 |
-
}
|
3646 |
-
|
3647 |
-
},
|
3648 |
-
|
3649 |
-
|
3650 |
-
|
3651 |
-
|
3652 |
-
|
3653 |
-
|
3654 |
-
|
3655 |
-
|
3656 |
-
|
3657 |
-
|
3658 |
-
var
|
3659 |
-
|
3660 |
-
if (
|
3661 |
-
|
3662 |
-
|
3663 |
-
|
3664 |
-
|
3665 |
-
|
3666 |
-
|
3667 |
-
|
3668 |
-
|
3669 |
-
|
3670 |
-
|
3671 |
-
this.
|
3672 |
-
|
3673 |
-
|
3674 |
-
|
3675 |
-
|
3676 |
-
|
3677 |
-
|
3678 |
-
|
3679 |
-
|
3680 |
-
|
3681 |
-
|
3682 |
-
|
3683 |
-
|
3684 |
-
|
3685 |
-
|
3686 |
-
|
3687 |
-
|
3688 |
-
|
3689 |
-
|
3690 |
-
|
3691 |
-
|
3692 |
-
|
3693 |
-
|
3694 |
-
|
3695 |
-
|
3696 |
-
|
3697 |
-
|
3698 |
-
|
3699 |
-
if (
|
3700 |
-
|
3701 |
-
|
3702 |
-
cm.display
|
3703 |
-
|
3704 |
-
|
3705 |
-
|
3706 |
-
|
3707 |
-
|
3708 |
-
|
3709 |
-
|
3710 |
-
|
3711 |
-
|
3712 |
-
|
3713 |
-
if (
|
3714 |
-
|
3715 |
-
|
3716 |
-
|
3717 |
-
|
3718 |
-
|
3719 |
-
|
3720 |
-
|
3721 |
-
|
3722 |
-
|
3723 |
-
|
3724 |
-
|
3725 |
-
|
3726 |
-
|
3727 |
-
|
3728 |
-
|
3729 |
-
|
3730 |
-
|
3731 |
-
|
3732 |
-
|
3733 |
-
|
3734 |
-
|
3735 |
-
|
3736 |
-
|
3737 |
-
|
3738 |
-
|
3739 |
-
|
3740 |
-
|
3741 |
-
|
3742 |
-
|
3743 |
-
|
3744 |
-
|
3745 |
-
|
3746 |
-
|
3747 |
-
|
3748 |
-
|
3749 |
-
|
3750 |
-
|
3751 |
-
|
3752 |
-
|
3753 |
-
|
3754 |
-
|
3755 |
-
|
3756 |
-
|
3757 |
-
|
3758 |
-
|
3759 |
-
|
3760 |
-
|
3761 |
-
};
|
3762 |
-
|
3763 |
-
|
3764 |
-
if (
|
3765 |
-
|
3766 |
-
|
3767 |
-
|
3768 |
-
|
3769 |
-
|
3770 |
-
|
3771 |
-
|
3772 |
-
|
3773 |
-
|
3774 |
-
|
3775 |
-
if (
|
3776 |
-
|
3777 |
-
if (marker.
|
3778 |
-
|
3779 |
-
|
3780 |
-
|
3781 |
-
|
3782 |
-
|
3783 |
-
|
3784 |
-
|
3785 |
-
|
3786 |
-
|
3787 |
-
|
3788 |
-
|
3789 |
-
|
3790 |
-
|
3791 |
-
|
3792 |
-
|
3793 |
-
|
3794 |
-
|
3795 |
-
|
3796 |
-
|
3797 |
-
|
3798 |
-
|
3799 |
-
|
3800 |
-
|
3801 |
-
|
3802 |
-
|
3803 |
-
|
3804 |
-
|
3805 |
-
if (doc
|
3806 |
-
|
3807 |
-
|
3808 |
-
if (marker.
|
3809 |
-
|
3810 |
-
|
3811 |
-
|
3812 |
-
|
3813 |
-
|
3814 |
-
|
3815 |
-
|
3816 |
-
if (
|
3817 |
-
|
3818 |
-
|
3819 |
-
|
3820 |
-
|
3821 |
-
|
3822 |
-
|
3823 |
-
|
3824 |
-
|
3825 |
-
|
3826 |
-
|
3827 |
-
|
3828 |
-
|
3829 |
-
|
3830 |
-
|
3831 |
-
|
3832 |
-
|
3833 |
-
|
3834 |
-
|
3835 |
-
|
3836 |
-
|
3837 |
-
|
3838 |
-
|
3839 |
-
|
3840 |
-
|
3841 |
-
|
3842 |
-
|
3843 |
-
SharedTextMarker.prototype.
|
3844 |
-
|
3845 |
-
|
3846 |
-
|
3847 |
-
|
3848 |
-
|
3849 |
-
|
3850 |
-
|
3851 |
-
|
3852 |
-
|
3853 |
-
|
3854 |
-
|
3855 |
-
|
3856 |
-
|
3857 |
-
|
3858 |
-
|
3859 |
-
|
3860 |
-
|
3861 |
-
|
3862 |
-
|
3863 |
-
|
3864 |
-
|
3865 |
-
|
3866 |
-
|
3867 |
-
|
3868 |
-
|
3869 |
-
|
3870 |
-
|
3871 |
-
|
3872 |
-
|
3873 |
-
|
3874 |
-
|
3875 |
-
|
3876 |
-
|
3877 |
-
|
3878 |
-
|
3879 |
-
|
3880 |
-
|
3881 |
-
|
3882 |
-
|
3883 |
-
|
3884 |
-
|
3885 |
-
|
3886 |
-
|
3887 |
-
|
3888 |
-
|
3889 |
-
|
3890 |
-
|
3891 |
-
|
3892 |
-
|
3893 |
-
|
3894 |
-
|
3895 |
-
|
3896 |
-
|
3897 |
-
|
3898 |
-
|
3899 |
-
|
3900 |
-
|
3901 |
-
|
3902 |
-
|
3903 |
-
|
3904 |
-
|
3905 |
-
|
3906 |
-
|
3907 |
-
|
3908 |
-
|
3909 |
-
|
3910 |
-
|
3911 |
-
|
3912 |
-
|
3913 |
-
|
3914 |
-
|
3915 |
-
|
3916 |
-
var
|
3917 |
-
|
3918 |
-
|
3919 |
-
|
3920 |
-
|
3921 |
-
|
3922 |
-
|
3923 |
-
|
3924 |
-
|
3925 |
-
|
3926 |
-
|
3927 |
-
|
3928 |
-
|
3929 |
-
|
3930 |
-
|
3931 |
-
|
3932 |
-
|
3933 |
-
|
3934 |
-
|
3935 |
-
|
3936 |
-
|
3937 |
-
|
3938 |
-
|
3939 |
-
|
3940 |
-
|
3941 |
-
|
3942 |
-
|
3943 |
-
|
3944 |
-
|
3945 |
-
|
3946 |
-
|
3947 |
-
|
3948 |
-
|
3949 |
-
|
3950 |
-
|
3951 |
-
|
3952 |
-
|
3953 |
-
|
3954 |
-
}
|
3955 |
-
|
3956 |
-
|
3957 |
-
|
3958 |
-
|
3959 |
-
|
3960 |
-
if (
|
3961 |
-
|
3962 |
-
|
3963 |
-
|
3964 |
-
|
3965 |
-
|
3966 |
-
|
3967 |
-
|
3968 |
-
|
3969 |
-
|
3970 |
-
|
3971 |
-
|
3972 |
-
|
3973 |
-
|
3974 |
-
|
3975 |
-
|
3976 |
-
|
3977 |
-
|
3978 |
-
|
3979 |
-
|
3980 |
-
|
3981 |
-
|
3982 |
-
|
3983 |
-
|
3984 |
-
|
3985 |
-
|
3986 |
-
|
3987 |
-
|
3988 |
-
|
3989 |
-
|
3990 |
-
|
3991 |
-
|
3992 |
-
|
3993 |
-
|
3994 |
-
|
3995 |
-
|
3996 |
-
|
3997 |
-
|
3998 |
-
|
3999 |
-
|
4000 |
-
|
4001 |
-
|
4002 |
-
|
4003 |
-
|
4004 |
-
|
4005 |
-
|
4006 |
-
|
4007 |
-
|
4008 |
-
|
4009 |
-
|
4010 |
-
|
4011 |
-
|
4012 |
-
|
4013 |
-
|
4014 |
-
parts
|
4015 |
-
|
4016 |
-
|
4017 |
-
|
4018 |
-
|
4019 |
-
|
4020 |
-
|
4021 |
-
|
4022 |
-
|
4023 |
-
|
4024 |
-
|
4025 |
-
|
4026 |
-
|
4027 |
-
|
4028 |
-
|
4029 |
-
|
4030 |
-
|
4031 |
-
|
4032 |
-
|
4033 |
-
|
4034 |
-
|
4035 |
-
|
4036 |
-
|
4037 |
-
|
4038 |
-
|
4039 |
-
|
4040 |
-
|
4041 |
-
}
|
4042 |
-
|
4043 |
-
function
|
4044 |
-
var
|
4045 |
-
|
4046 |
-
|
4047 |
-
|
4048 |
-
|
4049 |
-
|
4050 |
-
|
4051 |
-
|
4052 |
-
|
4053 |
-
|
4054 |
-
|
4055 |
-
|
4056 |
-
|
4057 |
-
|
4058 |
-
|
4059 |
-
|
4060 |
-
|
4061 |
-
|
4062 |
-
|
4063 |
-
|
4064 |
-
|
4065 |
-
|
4066 |
-
|
4067 |
-
|
4068 |
-
|
4069 |
-
|
4070 |
-
|
4071 |
-
|
4072 |
-
|
4073 |
-
|
4074 |
-
|
4075 |
-
|
4076 |
-
|
4077 |
-
|
4078 |
-
if (!spans) return;
|
4079 |
-
for (var i = 0; i < spans.length; ++i)
|
4080 |
-
spans[i].marker.
|
4081 |
-
line.markedSpans =
|
4082 |
-
}
|
4083 |
-
|
4084 |
-
|
4085 |
-
|
4086 |
-
|
4087 |
-
|
4088 |
-
|
4089 |
-
|
4090 |
-
|
4091 |
-
|
4092 |
-
|
4093 |
-
function
|
4094 |
-
|
4095 |
-
|
4096 |
-
|
4097 |
-
|
4098 |
-
|
4099 |
-
|
4100 |
-
|
4101 |
-
|
4102 |
-
|
4103 |
-
|
4104 |
-
|
4105 |
-
|
4106 |
-
|
4107 |
-
|
4108 |
-
|
4109 |
-
|
4110 |
-
|
4111 |
-
|
4112 |
-
|
4113 |
-
|
4114 |
-
this.
|
4115 |
-
|
4116 |
-
if (
|
4117 |
-
|
4118 |
-
|
4119 |
-
|
4120 |
-
|
4121 |
-
|
4122 |
-
|
4123 |
-
if (
|
4124 |
-
|
4125 |
-
|
4126 |
-
|
4127 |
-
}
|
4128 |
-
|
4129 |
-
function
|
4130 |
-
|
4131 |
-
if (widget.
|
4132 |
-
|
4133 |
-
|
4134 |
-
|
4135 |
-
|
4136 |
-
|
4137 |
-
|
4138 |
-
|
4139 |
-
|
4140 |
-
|
4141 |
-
|
4142 |
-
|
4143 |
-
|
4144 |
-
|
4145 |
-
|
4146 |
-
|
4147 |
-
|
4148 |
-
|
4149 |
-
|
4150 |
-
|
4151 |
-
|
4152 |
-
|
4153 |
-
|
4154 |
-
|
4155 |
-
|
4156 |
-
|
4157 |
-
|
4158 |
-
function
|
4159 |
-
|
4160 |
-
|
4161 |
-
|
4162 |
-
|
4163 |
-
|
4164 |
-
|
4165 |
-
|
4166 |
-
|
4167 |
-
|
4168 |
-
|
4169 |
-
|
4170 |
-
line
|
4171 |
-
|
4172 |
-
|
4173 |
-
|
4174 |
-
|
4175 |
-
|
4176 |
-
|
4177 |
-
|
4178 |
-
|
4179 |
-
|
4180 |
-
|
4181 |
-
|
4182 |
-
|
4183 |
-
|
4184 |
-
|
4185 |
-
|
4186 |
-
|
4187 |
-
|
4188 |
-
|
4189 |
-
|
4190 |
-
|
4191 |
-
|
4192 |
-
|
4193 |
-
|
4194 |
-
|
4195 |
-
|
4196 |
-
|
4197 |
-
|
4198 |
-
|
4199 |
-
|
4200 |
-
|
4201 |
-
|
4202 |
-
|
4203 |
-
|
4204 |
-
|
4205 |
-
|
4206 |
-
|
4207 |
-
|
4208 |
-
|
4209 |
-
|
4210 |
-
|
4211 |
-
|
4212 |
-
|
4213 |
-
|
4214 |
-
|
4215 |
-
|
4216 |
-
|
4217 |
-
|
4218 |
-
|
4219 |
-
|
4220 |
-
|
4221 |
-
|
4222 |
-
|
4223 |
-
|
4224 |
-
|
4225 |
-
|
4226 |
-
|
4227 |
-
|
4228 |
-
|
4229 |
-
|
4230 |
-
|
4231 |
-
|
4232 |
-
|
4233 |
-
|
4234 |
-
|
4235 |
-
|
4236 |
-
|
4237 |
-
|
4238 |
-
|
4239 |
-
|
4240 |
-
|
4241 |
-
|
4242 |
-
|
4243 |
-
|
4244 |
-
|
4245 |
-
|
4246 |
-
|
4247 |
-
|
4248 |
-
|
4249 |
-
|
4250 |
-
|
4251 |
-
|
4252 |
-
|
4253 |
-
|
4254 |
-
|
4255 |
-
|
4256 |
-
|
4257 |
-
|
4258 |
-
|
4259 |
-
|
4260 |
-
}
|
4261 |
-
|
4262 |
-
|
4263 |
-
|
4264 |
-
|
4265 |
-
|
4266 |
-
|
4267 |
-
|
4268 |
-
|
4269 |
-
|
4270 |
-
|
4271 |
-
|
4272 |
-
|
4273 |
-
|
4274 |
-
|
4275 |
-
|
4276 |
-
|
4277 |
-
|
4278 |
-
|
4279 |
-
|
4280 |
-
if (
|
4281 |
-
|
4282 |
-
|
4283 |
-
|
4284 |
-
if (
|
4285 |
-
|
4286 |
-
|
4287 |
-
|
4288 |
-
|
4289 |
-
|
4290 |
-
|
4291 |
-
|
4292 |
-
|
4293 |
-
|
4294 |
-
|
4295 |
-
|
4296 |
-
if (
|
4297 |
-
|
4298 |
-
|
4299 |
-
|
4300 |
-
|
4301 |
-
|
4302 |
-
|
4303 |
-
|
4304 |
-
|
4305 |
-
|
4306 |
-
|
4307 |
-
|
4308 |
-
|
4309 |
-
|
4310 |
-
|
4311 |
-
|
4312 |
-
|
4313 |
-
|
4314 |
-
|
4315 |
-
|
4316 |
-
|
4317 |
-
|
4318 |
-
|
4319 |
-
|
4320 |
-
|
4321 |
-
|
4322 |
-
|
4323 |
-
|
4324 |
-
|
4325 |
-
|
4326 |
-
|
4327 |
-
|
4328 |
-
|
4329 |
-
|
4330 |
-
|
4331 |
-
content.appendChild(
|
4332 |
-
builder.col +=
|
4333 |
-
}
|
4334 |
-
|
4335 |
-
|
4336 |
-
|
4337 |
-
builder.col
|
4338 |
-
|
4339 |
-
|
4340 |
-
|
4341 |
-
|
4342 |
-
|
4343 |
-
|
4344 |
-
|
4345 |
-
|
4346 |
-
|
4347 |
-
|
4348 |
-
|
4349 |
-
|
4350 |
-
|
4351 |
-
|
4352 |
-
|
4353 |
-
|
4354 |
-
|
4355 |
-
|
4356 |
-
|
4357 |
-
|
4358 |
-
|
4359 |
-
|
4360 |
-
|
4361 |
-
|
4362 |
-
var
|
4363 |
-
|
4364 |
-
|
4365 |
-
|
4366 |
-
if (
|
4367 |
-
|
4368 |
-
|
4369 |
-
|
4370 |
-
|
4371 |
-
|
4372 |
-
|
4373 |
-
|
4374 |
-
|
4375 |
-
|
4376 |
-
|
4377 |
-
|
4378 |
-
|
4379 |
-
|
4380 |
-
|
4381 |
-
|
4382 |
-
|
4383 |
-
|
4384 |
-
|
4385 |
-
|
4386 |
-
|
4387 |
-
|
4388 |
-
|
4389 |
-
|
4390 |
-
|
4391 |
-
|
4392 |
-
|
4393 |
-
|
4394 |
-
|
4395 |
-
|
4396 |
-
|
4397 |
-
|
4398 |
-
|
4399 |
-
|
4400 |
-
|
4401 |
-
|
4402 |
-
|
4403 |
-
|
4404 |
-
|
4405 |
-
|
4406 |
-
|
4407 |
-
|
4408 |
-
|
4409 |
-
|
4410 |
-
|
4411 |
-
|
4412 |
-
|
4413 |
-
|
4414 |
-
|
4415 |
-
|
4416 |
-
|
4417 |
-
|
4418 |
-
|
4419 |
-
|
4420 |
-
|
4421 |
-
var
|
4422 |
-
|
4423 |
-
|
4424 |
-
|
4425 |
-
|
4426 |
-
|
4427 |
-
|
4428 |
-
|
4429 |
-
|
4430 |
-
|
4431 |
-
|
4432 |
-
|
4433 |
-
|
4434 |
-
|
4435 |
-
|
4436 |
-
|
4437 |
-
|
4438 |
-
|
4439 |
-
|
4440 |
-
|
4441 |
-
|
4442 |
-
|
4443 |
-
|
4444 |
-
|
4445 |
-
|
4446 |
-
|
4447 |
-
|
4448 |
-
|
4449 |
-
|
4450 |
-
|
4451 |
-
|
4452 |
-
|
4453 |
-
|
4454 |
-
|
4455 |
-
|
4456 |
-
|
4457 |
-
|
4458 |
-
|
4459 |
-
|
4460 |
-
|
4461 |
-
|
4462 |
-
|
4463 |
-
|
4464 |
-
|
4465 |
-
|
4466 |
-
|
4467 |
-
|
4468 |
-
|
4469 |
-
|
4470 |
-
|
4471 |
-
|
4472 |
-
|
4473 |
-
|
4474 |
-
|
4475 |
-
|
4476 |
-
|
4477 |
-
|
4478 |
-
|
4479 |
-
|
4480 |
-
|
4481 |
-
|
4482 |
-
|
4483 |
-
|
4484 |
-
|
4485 |
-
|
4486 |
-
|
4487 |
-
|
4488 |
-
|
4489 |
-
|
4490 |
-
|
4491 |
-
|
4492 |
-
|
4493 |
-
|
4494 |
-
|
4495 |
-
|
4496 |
-
|
4497 |
-
|
4498 |
-
|
4499 |
-
|
4500 |
-
|
4501 |
-
|
4502 |
-
|
4503 |
-
|
4504 |
-
|
4505 |
-
|
4506 |
-
|
4507 |
-
|
4508 |
-
|
4509 |
-
|
4510 |
-
|
4511 |
-
|
4512 |
-
doc.
|
4513 |
-
}
|
4514 |
-
|
4515 |
-
|
4516 |
-
|
4517 |
-
|
4518 |
-
|
4519 |
-
|
4520 |
-
|
4521 |
-
|
4522 |
-
|
4523 |
-
|
4524 |
-
|
4525 |
-
|
4526 |
-
|
4527 |
-
|
4528 |
-
|
4529 |
-
|
4530 |
-
|
4531 |
-
|
4532 |
-
|
4533 |
-
|
4534 |
-
|
4535 |
-
|
4536 |
-
|
4537 |
-
|
4538 |
-
|
4539 |
-
|
4540 |
-
|
4541 |
-
|
4542 |
-
|
4543 |
-
|
4544 |
-
|
4545 |
-
this.lines
|
4546 |
-
|
4547 |
-
|
4548 |
-
|
4549 |
-
|
4550 |
-
|
4551 |
-
|
4552 |
-
|
4553 |
-
|
4554 |
-
|
4555 |
-
|
4556 |
-
|
4557 |
-
|
4558 |
-
|
4559 |
-
|
4560 |
-
|
4561 |
-
|
4562 |
-
this.
|
4563 |
-
|
4564 |
-
|
4565 |
-
|
4566 |
-
|
4567 |
-
|
4568 |
-
|
4569 |
-
|
4570 |
-
|
4571 |
-
|
4572 |
-
|
4573 |
-
|
4574 |
-
|
4575 |
-
|
4576 |
-
|
4577 |
-
|
4578 |
-
|
4579 |
-
|
4580 |
-
|
4581 |
-
|
4582 |
-
|
4583 |
-
|
4584 |
-
|
4585 |
-
|
4586 |
-
|
4587 |
-
|
4588 |
-
|
4589 |
-
|
4590 |
-
|
4591 |
-
|
4592 |
-
|
4593 |
-
|
4594 |
-
|
4595 |
-
|
4596 |
-
|
4597 |
-
|
4598 |
-
|
4599 |
-
|
4600 |
-
|
4601 |
-
|
4602 |
-
|
4603 |
-
|
4604 |
-
|
4605 |
-
|
4606 |
-
|
4607 |
-
|
4608 |
-
|
4609 |
-
|
4610 |
-
|
4611 |
-
|
4612 |
-
|
4613 |
-
|
4614 |
-
|
4615 |
-
|
4616 |
-
|
4617 |
-
|
4618 |
-
|
4619 |
-
|
4620 |
-
|
4621 |
-
|
4622 |
-
|
4623 |
-
|
4624 |
-
|
4625 |
-
|
4626 |
-
|
4627 |
-
|
4628 |
-
var
|
4629 |
-
|
4630 |
-
|
4631 |
-
|
4632 |
-
|
4633 |
-
|
4634 |
-
|
4635 |
-
|
4636 |
-
|
4637 |
-
|
4638 |
-
|
4639 |
-
|
4640 |
-
|
4641 |
-
|
4642 |
-
|
4643 |
-
|
4644 |
-
|
4645 |
-
|
4646 |
-
|
4647 |
-
|
4648 |
-
|
4649 |
-
|
4650 |
-
|
4651 |
-
|
4652 |
-
|
4653 |
-
|
4654 |
-
|
4655 |
-
|
4656 |
-
|
4657 |
-
this
|
4658 |
-
|
4659 |
-
|
4660 |
-
|
4661 |
-
this.
|
4662 |
-
this.
|
4663 |
-
this.
|
4664 |
-
|
4665 |
-
|
4666 |
-
|
4667 |
-
|
4668 |
-
|
4669 |
-
|
4670 |
-
|
4671 |
-
|
4672 |
-
|
4673 |
-
|
4674 |
-
|
4675 |
-
|
4676 |
-
|
4677 |
-
|
4678 |
-
|
4679 |
-
this.
|
4680 |
-
|
4681 |
-
|
4682 |
-
|
4683 |
-
|
4684 |
-
var
|
4685 |
-
|
4686 |
-
|
4687 |
-
},
|
4688 |
-
|
4689 |
-
|
4690 |
-
|
4691 |
-
|
4692 |
-
|
4693 |
-
|
4694 |
-
|
4695 |
-
|
4696 |
-
|
4697 |
-
|
4698 |
-
|
4699 |
-
|
4700 |
-
|
4701 |
-
|
4702 |
-
|
4703 |
-
|
4704 |
-
|
4705 |
-
|
4706 |
-
|
4707 |
-
|
4708 |
-
|
4709 |
-
|
4710 |
-
|
4711 |
-
|
4712 |
-
|
4713 |
-
|
4714 |
-
|
4715 |
-
|
4716 |
-
|
4717 |
-
|
4718 |
-
|
4719 |
-
|
4720 |
-
|
4721 |
-
|
4722 |
-
|
4723 |
-
|
4724 |
-
|
4725 |
-
|
4726 |
-
|
4727 |
-
|
4728 |
-
|
4729 |
-
|
4730 |
-
|
4731 |
-
|
4732 |
-
|
4733 |
-
|
4734 |
-
|
4735 |
-
|
4736 |
-
|
4737 |
-
|
4738 |
-
|
4739 |
-
|
4740 |
-
|
4741 |
-
|
4742 |
-
|
4743 |
-
}
|
4744 |
-
|
4745 |
-
|
4746 |
-
|
4747 |
-
|
4748 |
-
|
4749 |
-
|
4750 |
-
|
4751 |
-
|
4752 |
-
|
4753 |
-
|
4754 |
-
|
4755 |
-
|
4756 |
-
|
4757 |
-
|
4758 |
-
|
4759 |
-
|
4760 |
-
|
4761 |
-
|
4762 |
-
|
4763 |
-
},
|
4764 |
-
|
4765 |
-
|
4766 |
-
|
4767 |
-
|
4768 |
-
|
4769 |
-
|
4770 |
-
|
4771 |
-
|
4772 |
-
|
4773 |
-
|
4774 |
-
|
4775 |
-
},
|
4776 |
-
|
4777 |
-
|
4778 |
-
return
|
4779 |
-
|
4780 |
-
|
4781 |
-
|
4782 |
-
|
4783 |
-
|
4784 |
-
|
4785 |
-
|
4786 |
-
|
4787 |
-
|
4788 |
-
|
4789 |
-
|
4790 |
-
|
4791 |
-
|
4792 |
-
|
4793 |
-
|
4794 |
-
|
4795 |
-
|
4796 |
-
|
4797 |
-
|
4798 |
-
var
|
4799 |
-
|
4800 |
-
|
4801 |
-
|
4802 |
-
|
4803 |
-
|
4804 |
-
|
4805 |
-
|
4806 |
-
|
4807 |
-
|
4808 |
-
|
4809 |
-
|
4810 |
-
|
4811 |
-
|
4812 |
-
|
4813 |
-
|
4814 |
-
|
4815 |
-
|
4816 |
-
|
4817 |
-
|
4818 |
-
|
4819 |
-
|
4820 |
-
|
4821 |
-
|
4822 |
-
|
4823 |
-
|
4824 |
-
|
4825 |
-
|
4826 |
-
|
4827 |
-
|
4828 |
-
|
4829 |
-
|
4830 |
-
|
4831 |
-
|
4832 |
-
|
4833 |
-
|
4834 |
-
|
4835 |
-
|
4836 |
-
|
4837 |
-
|
4838 |
-
|
4839 |
-
|
4840 |
-
|
4841 |
-
|
4842 |
-
|
4843 |
-
|
4844 |
-
|
4845 |
-
|
4846 |
-
|
4847 |
-
|
4848 |
-
|
4849 |
-
|
4850 |
-
|
4851 |
-
|
4852 |
-
|
4853 |
-
|
4854 |
-
|
4855 |
-
|
4856 |
-
|
4857 |
-
|
4858 |
-
|
4859 |
-
|
4860 |
-
|
4861 |
-
|
4862 |
-
if (
|
4863 |
-
|
4864 |
-
|
4865 |
-
|
4866 |
-
|
4867 |
-
|
4868 |
-
|
4869 |
-
|
4870 |
-
|
4871 |
-
|
4872 |
-
|
4873 |
-
other.
|
4874 |
-
|
4875 |
-
|
4876 |
-
|
4877 |
-
|
4878 |
-
|
4879 |
-
|
4880 |
-
|
4881 |
-
|
4882 |
-
|
4883 |
-
|
4884 |
-
|
4885 |
-
|
4886 |
-
|
4887 |
-
|
4888 |
-
|
4889 |
-
|
4890 |
-
|
4891 |
-
|
4892 |
-
|
4893 |
-
|
4894 |
-
|
4895 |
-
|
4896 |
-
|
4897 |
-
|
4898 |
-
|
4899 |
-
|
4900 |
-
|
4901 |
-
|
4902 |
-
|
4903 |
-
|
4904 |
-
|
4905 |
-
|
4906 |
-
|
4907 |
-
|
4908 |
-
|
4909 |
-
|
4910 |
-
|
4911 |
-
|
4912 |
-
|
4913 |
-
|
4914 |
-
|
4915 |
-
|
4916 |
-
|
4917 |
-
|
4918 |
-
|
4919 |
-
|
4920 |
-
|
4921 |
-
|
4922 |
-
|
4923 |
-
|
4924 |
-
|
4925 |
-
|
4926 |
-
|
4927 |
-
|
4928 |
-
|
4929 |
-
|
4930 |
-
|
4931 |
-
|
4932 |
-
|
4933 |
-
|
4934 |
-
|
4935 |
-
|
4936 |
-
|
4937 |
-
|
4938 |
-
|
4939 |
-
|
4940 |
-
|
4941 |
-
|
4942 |
-
|
4943 |
-
|
4944 |
-
|
4945 |
-
|
4946 |
-
|
4947 |
-
|
4948 |
-
|
4949 |
-
|
4950 |
-
|
4951 |
-
|
4952 |
-
|
4953 |
-
|
4954 |
-
|
4955 |
-
|
4956 |
-
|
4957 |
-
|
4958 |
-
|
4959 |
-
|
4960 |
-
|
4961 |
-
|
4962 |
-
|
4963 |
-
|
4964 |
-
|
4965 |
-
|
4966 |
-
|
4967 |
-
|
4968 |
-
|
4969 |
-
|
4970 |
-
|
4971 |
-
|
4972 |
-
|
4973 |
-
|
4974 |
-
|
4975 |
-
|
4976 |
-
|
4977 |
-
|
4978 |
-
|
4979 |
-
|
4980 |
-
|
4981 |
-
|
4982 |
-
|
4983 |
-
|
4984 |
-
|
4985 |
-
|
4986 |
-
|
4987 |
-
|
4988 |
-
|
4989 |
-
|
4990 |
-
|
4991 |
-
|
4992 |
-
|
4993 |
-
|
4994 |
-
|
4995 |
-
|
4996 |
-
|
4997 |
-
|
4998 |
-
|
4999 |
-
|
5000 |
-
|
5001 |
-
|
5002 |
-
}
|
5003 |
-
|
5004 |
-
|
5005 |
-
|
5006 |
-
|
5007 |
-
|
5008 |
-
|
5009 |
-
|
5010 |
-
|
5011 |
-
|
5012 |
-
|
5013 |
-
|
5014 |
-
|
5015 |
-
|
5016 |
-
|
5017 |
-
|
5018 |
-
|
5019 |
-
|
5020 |
-
|
5021 |
-
|
5022 |
-
|
5023 |
-
//
|
5024 |
-
|
5025 |
-
|
5026 |
-
|
5027 |
-
|
5028 |
-
|
5029 |
-
|
5030 |
-
|
5031 |
-
|
5032 |
-
|
5033 |
-
|
5034 |
-
|
5035 |
-
|
5036 |
-
|
5037 |
-
|
5038 |
-
|
5039 |
-
|
5040 |
-
|
5041 |
-
|
5042 |
-
|
5043 |
-
|
5044 |
-
|
5045 |
-
|
5046 |
-
var
|
5047 |
-
|
5048 |
-
|
5049 |
-
|
5050 |
-
|
5051 |
-
|
5052 |
-
|
5053 |
-
|
5054 |
-
|
5055 |
-
|
5056 |
-
|
5057 |
-
|
5058 |
-
|
5059 |
-
|
5060 |
-
|
5061 |
-
|
5062 |
-
|
5063 |
-
|
5064 |
-
|
5065 |
-
|
5066 |
-
|
5067 |
-
|
5068 |
-
|
5069 |
-
|
5070 |
-
|
5071 |
-
|
5072 |
-
|
5073 |
-
|
5074 |
-
|
5075 |
-
|
5076 |
-
|
5077 |
-
|
5078 |
-
|
5079 |
-
|
5080 |
-
|
5081 |
-
|
5082 |
-
|
5083 |
-
|
5084 |
-
|
5085 |
-
|
5086 |
-
|
5087 |
-
|
5088 |
-
|
5089 |
-
|
5090 |
-
|
5091 |
-
|
5092 |
-
|
5093 |
-
|
5094 |
-
|
5095 |
-
|
5096 |
-
|
5097 |
-
|
5098 |
-
|
5099 |
-
|
5100 |
-
|
5101 |
-
|
5102 |
-
|
5103 |
-
|
5104 |
-
|
5105 |
-
|
5106 |
-
|
5107 |
-
|
5108 |
-
|
5109 |
-
|
5110 |
-
|
5111 |
-
|
5112 |
-
|
5113 |
-
|
5114 |
-
|
5115 |
-
|
5116 |
-
|
5117 |
-
|
5118 |
-
|
5119 |
-
|
5120 |
-
|
5121 |
-
|
5122 |
-
|
5123 |
-
|
5124 |
-
|
5125 |
-
|
5126 |
-
|
5127 |
-
|
5128 |
-
|
5129 |
-
|
5130 |
-
|
5131 |
-
|
5132 |
-
|
5133 |
-
|
5134 |
-
|
5135 |
-
|
5136 |
-
|
5137 |
-
|
5138 |
-
|
5139 |
-
|
5140 |
-
|
5141 |
-
|
5142 |
-
|
5143 |
-
|
5144 |
-
|
5145 |
-
|
5146 |
-
|
5147 |
-
|
5148 |
-
|
5149 |
-
|
5150 |
-
}
|
5151 |
-
|
5152 |
-
|
5153 |
-
|
5154 |
-
|
5155 |
-
|
5156 |
-
|
5157 |
-
|
5158 |
-
|
5159 |
-
|
5160 |
-
|
5161 |
-
|
5162 |
-
|
5163 |
-
}
|
5164 |
-
|
5165 |
-
|
5166 |
-
|
5167 |
-
|
5168 |
-
|
5169 |
-
|
5170 |
-
|
5171 |
-
|
5172 |
-
|
5173 |
-
|
5174 |
-
|
5175 |
-
|
5176 |
-
|
5177 |
-
|
5178 |
-
|
5179 |
-
|
5180 |
-
|
5181 |
-
|
5182 |
-
function
|
5183 |
-
|
5184 |
-
|
5185 |
-
|
5186 |
-
|
5187 |
-
|
5188 |
-
|
5189 |
-
|
5190 |
-
|
5191 |
-
|
5192 |
-
}
|
5193 |
-
function
|
5194 |
-
|
5195 |
-
|
5196 |
-
|
5197 |
-
|
5198 |
-
|
5199 |
-
|
5200 |
-
|
5201 |
-
|
5202 |
-
|
5203 |
-
|
5204 |
-
|
5205 |
-
|
5206 |
-
|
5207 |
-
|
5208 |
-
|
5209 |
-
|
5210 |
-
|
5211 |
-
|
5212 |
-
|
5213 |
-
if (
|
5214 |
-
|
5215 |
-
|
5216 |
-
|
5217 |
-
|
5218 |
-
|
5219 |
-
|
5220 |
-
|
5221 |
-
|
5222 |
-
|
5223 |
-
|
5224 |
-
|
5225 |
-
|
5226 |
-
|
5227 |
-
|
5228 |
-
|
5229 |
-
|
5230 |
-
|
5231 |
-
|
5232 |
-
|
5233 |
-
|
5234 |
-
|
5235 |
-
|
5236 |
-
|
5237 |
-
|
5238 |
-
|
5239 |
-
|
5240 |
-
|
5241 |
-
|
5242 |
-
}
|
5243 |
-
|
5244 |
-
|
5245 |
-
|
5246 |
-
|
5247 |
-
|
5248 |
-
var
|
5249 |
-
|
5250 |
-
|
5251 |
-
|
5252 |
-
|
5253 |
-
|
5254 |
-
|
5255 |
-
|
5256 |
-
|
5257 |
-
|
5258 |
-
|
5259 |
-
|
5260 |
-
|
5261 |
-
|
5262 |
-
|
5263 |
-
|
5264 |
-
|
5265 |
-
|
5266 |
-
|
5267 |
-
|
5268 |
-
|
5269 |
-
}
|
5270 |
-
|
5271 |
-
function
|
5272 |
-
|
5273 |
-
|
5274 |
-
|
5275 |
-
|
5276 |
-
|
5277 |
-
|
5278 |
-
function
|
5279 |
-
|
5280 |
-
|
5281 |
-
}
|
5282 |
-
|
5283 |
-
|
5284 |
-
|
5285 |
-
|
5286 |
-
|
5287 |
-
|
5288 |
-
|
5289 |
-
|
5290 |
-
|
5291 |
-
|
5292 |
-
|
5293 |
-
|
5294 |
-
|
5295 |
-
//
|
5296 |
-
//
|
5297 |
-
|
5298 |
-
|
5299 |
-
|
5300 |
-
|
5301 |
-
|
5302 |
-
|
5303 |
-
|
5304 |
-
|
5305 |
-
|
5306 |
-
|
5307 |
-
|
5308 |
-
|
5309 |
-
|
5310 |
-
|
5311 |
-
|
5312 |
-
|
5313 |
-
|
5314 |
-
|
5315 |
-
|
5316 |
-
|
5317 |
-
|
5318 |
-
|
5319 |
-
|
5320 |
-
|
5321 |
-
|
5322 |
-
|
5323 |
-
|
5324 |
-
|
5325 |
-
|
5326 |
-
|
5327 |
-
|
5328 |
-
|
5329 |
-
|
5330 |
-
|
5331 |
-
|
5332 |
-
|
5333 |
-
|
5334 |
-
|
5335 |
-
}
|
5336 |
-
|
5337 |
-
function
|
5338 |
-
|
5339 |
-
|
5340 |
-
|
5341 |
-
|
5342 |
-
|
5343 |
-
|
5344 |
-
|
5345 |
-
|
5346 |
-
|
5347 |
-
|
5348 |
-
|
5349 |
-
|
5350 |
-
|
5351 |
-
|
5352 |
-
|
5353 |
-
|
5354 |
-
|
5355 |
-
|
5356 |
-
|
5357 |
-
|
5358 |
-
|
5359 |
-
|
5360 |
-
|
5361 |
-
|
5362 |
-
|
5363 |
-
|
5364 |
-
|
5365 |
-
|
5366 |
-
|
5367 |
-
|
5368 |
-
|
5369 |
-
|
5370 |
-
|
5371 |
-
|
5372 |
-
|
5373 |
-
|
5374 |
-
|
5375 |
-
|
5376 |
-
|
5377 |
-
|
5378 |
-
|
5379 |
-
|
5380 |
-
|
5381 |
-
|
5382 |
-
|
5383 |
-
|
5384 |
-
|
5385 |
-
|
5386 |
-
|
5387 |
-
|
5388 |
-
|
5389 |
-
|
5390 |
-
|
5391 |
-
|
5392 |
-
|
5393 |
-
|
5394 |
-
|
5395 |
-
|
5396 |
-
|
5397 |
-
|
5398 |
-
|
5399 |
-
|
5400 |
-
}
|
5401 |
-
|
5402 |
-
function
|
5403 |
-
|
5404 |
-
|
5405 |
-
|
5406 |
-
|
5407 |
-
|
5408 |
-
|
5409 |
-
|
5410 |
-
|
5411 |
-
|
5412 |
-
|
5413 |
-
|
5414 |
-
|
5415 |
-
|
5416 |
-
|
5417 |
-
|
5418 |
-
|
5419 |
-
|
5420 |
-
|
5421 |
-
|
5422 |
-
|
5423 |
-
|
5424 |
-
|
5425 |
-
|
5426 |
-
|
5427 |
-
|
5428 |
-
|
5429 |
-
|
5430 |
-
|
5431 |
-
|
5432 |
-
|
5433 |
-
|
5434 |
-
|
5435 |
-
|
5436 |
-
|
5437 |
-
|
5438 |
-
|
5439 |
-
}
|
5440 |
-
|
5441 |
-
|
5442 |
-
|
5443 |
-
|
5444 |
-
|
5445 |
-
|
5446 |
-
|
5447 |
-
|
5448 |
-
|
5449 |
-
|
5450 |
-
|
5451 |
-
|
5452 |
-
|
5453 |
-
|
5454 |
-
|
5455 |
-
if (
|
5456 |
-
|
5457 |
-
|
5458 |
-
|
5459 |
-
|
5460 |
-
|
5461 |
-
|
5462 |
-
|
5463 |
-
|
5464 |
-
|
5465 |
-
|
5466 |
-
|
5467 |
-
|
5468 |
-
|
5469 |
-
|
5470 |
-
|
5471 |
-
|
5472 |
-
|
5473 |
-
|
5474 |
-
|
5475 |
-
|
5476 |
-
|
5477 |
-
|
5478 |
-
|
5479 |
-
|
5480 |
-
|
5481 |
-
|
5482 |
-
|
5483 |
-
|
5484 |
-
|
5485 |
-
|
5486 |
-
|
5487 |
-
|
5488 |
-
|
5489 |
-
|
5490 |
-
|
5491 |
-
|
5492 |
-
|
5493 |
-
|
5494 |
-
|
5495 |
-
|
5496 |
-
|
5497 |
-
var
|
5498 |
-
|
5499 |
-
|
5500 |
-
return
|
5501 |
-
}
|
5502 |
-
|
5503 |
-
|
5504 |
-
|
5505 |
-
|
5506 |
-
|
5507 |
-
|
5508 |
-
|
5509 |
-
|
5510 |
-
|
5511 |
-
|
5512 |
-
|
5513 |
-
|
5514 |
-
|
5515 |
-
|
5516 |
-
|
5517 |
-
|
5518 |
-
|
5519 |
-
|
5520 |
-
|
5521 |
-
|
5522 |
-
|
5523 |
-
|
5524 |
-
|
5525 |
-
|
5526 |
-
var
|
5527 |
-
|
5528 |
-
|
5529 |
-
|
5530 |
-
|
5531 |
-
|
5532 |
-
|
5533 |
-
|
5534 |
-
|
5535 |
-
|
5536 |
-
|
5537 |
-
|
5538 |
-
|
5539 |
-
|
5540 |
-
|
5541 |
-
|
5542 |
-
|
5543 |
-
|
5544 |
-
|
5545 |
-
}
|
5546 |
-
|
5547 |
-
function
|
5548 |
-
|
5549 |
-
var
|
5550 |
-
if (
|
5551 |
-
|
5552 |
-
|
5553 |
-
|
5554 |
-
|
5555 |
-
|
5556 |
-
var
|
5557 |
-
|
5558 |
-
|
5559 |
-
var
|
5560 |
-
|
5561 |
-
|
5562 |
-
|
5563 |
-
|
5564 |
-
|
5565 |
-
|
5566 |
-
|
5567 |
-
|
5568 |
-
return
|
5569 |
-
}
|
5570 |
-
|
5571 |
-
function
|
5572 |
-
|
5573 |
-
|
5574 |
-
|
5575 |
-
|
5576 |
-
|
5577 |
-
|
5578 |
-
|
5579 |
-
|
5580 |
-
|
5581 |
-
|
5582 |
-
|
5583 |
-
|
5584 |
-
|
5585 |
-
|
5586 |
-
|
5587 |
-
|
5588 |
-
|
5589 |
-
|
5590 |
-
|
5591 |
-
|
5592 |
-
|
5593 |
-
|
5594 |
-
|
5595 |
-
return
|
5596 |
-
}
|
5597 |
-
|
5598 |
-
|
5599 |
-
|
5600 |
-
|
5601 |
-
|
5602 |
-
|
5603 |
-
|
5604 |
-
|
5605 |
-
|
5606 |
-
|
5607 |
-
|
5608 |
-
|
5609 |
-
|
5610 |
-
|
5611 |
-
|
5612 |
-
|
5613 |
-
|
5614 |
-
|
5615 |
-
|
5616 |
-
|
5617 |
-
|
5618 |
-
|
5619 |
-
|
5620 |
-
|
5621 |
-
|
5622 |
-
|
5623 |
-
}
|
5624 |
-
|
5625 |
-
|
5626 |
-
|
5627 |
-
|
5628 |
-
|
5629 |
-
|
5630 |
-
|
5631 |
-
|
5632 |
-
|
5633 |
-
|
5634 |
-
|
5635 |
-
|
5636 |
-
|
5637 |
-
|
5638 |
-
|
5639 |
-
|
5640 |
-
//
|
5641 |
-
//
|
5642 |
-
//
|
5643 |
-
|
5644 |
-
//
|
5645 |
-
//
|
5646 |
-
//
|
5647 |
-
//
|
5648 |
-
//
|
5649 |
-
//
|
5650 |
-
//
|
5651 |
-
//
|
5652 |
-
|
5653 |
-
//
|
5654 |
-
// (
|
5655 |
-
//
|
5656 |
-
|
5657 |
-
|
5658 |
-
|
5659 |
-
|
5660 |
-
|
5661 |
-
|
5662 |
-
|
5663 |
-
|
5664 |
-
|
5665 |
-
|
5666 |
-
|
5667 |
-
|
5668 |
-
|
5669 |
-
|
5670 |
-
|
5671 |
-
|
5672 |
-
|
5673 |
-
|
5674 |
-
|
5675 |
-
|
5676 |
-
|
5677 |
-
|
5678 |
-
|
5679 |
-
|
5680 |
-
|
5681 |
-
|
5682 |
-
|
5683 |
-
|
5684 |
-
for (var i = 0,
|
5685 |
-
|
5686 |
-
|
5687 |
-
|
5688 |
-
|
5689 |
-
|
5690 |
-
//
|
5691 |
-
|
5692 |
-
|
5693 |
-
|
5694 |
-
|
5695 |
-
|
5696 |
-
|
5697 |
-
|
5698 |
-
|
5699 |
-
|
5700 |
-
|
5701 |
-
//
|
5702 |
-
|
5703 |
-
|
5704 |
-
|
5705 |
-
|
5706 |
-
|
5707 |
-
|
5708 |
-
|
5709 |
-
|
5710 |
-
|
5711 |
-
|
5712 |
-
|
5713 |
-
|
5714 |
-
|
5715 |
-
|
5716 |
-
|
5717 |
-
|
5718 |
-
|
5719 |
-
|
5720 |
-
|
5721 |
-
|
5722 |
-
|
5723 |
-
|
5724 |
-
|
5725 |
-
|
5726 |
-
|
5727 |
-
|
5728 |
-
|
5729 |
-
|
5730 |
-
|
5731 |
-
|
5732 |
-
|
5733 |
-
|
5734 |
-
|
5735 |
-
|
5736 |
-
//
|
5737 |
-
|
5738 |
-
|
5739 |
-
|
5740 |
-
|
5741 |
-
|
5742 |
-
|
5743 |
-
|
5744 |
-
|
5745 |
-
|
5746 |
-
|
5747 |
-
|
5748 |
-
|
5749 |
-
|
5750 |
-
|
5751 |
-
|
5752 |
-
|
5753 |
-
|
5754 |
-
|
5755 |
-
|
5756 |
-
|
5757 |
-
|
5758 |
-
|
5759 |
-
|
5760 |
-
|
5761 |
-
var start = i;
|
5762 |
-
for (++i; i < len && countsAsLeft.test(types[i]); ++i) {}
|
5763 |
-
order.push({from: start, to: i, level: 0});
|
5764 |
-
} else {
|
5765 |
-
var pos = i, at = order.length;
|
5766 |
-
for (++i; i < len && types[i] != "L"; ++i) {}
|
5767 |
-
for (var j = pos; j < i;) {
|
5768 |
-
if (countsAsNum.test(types[j])) {
|
5769 |
-
if (pos < j) order.splice(at, 0, {from: pos, to: j, level: 1});
|
5770 |
-
var nstart = j;
|
5771 |
-
for (++j; j < i && countsAsNum.test(types[j]); ++j) {}
|
5772 |
-
order.splice(at, 0, {from: nstart, to: j, level: 2});
|
5773 |
-
pos = j;
|
5774 |
-
} else ++j;
|
5775 |
-
}
|
5776 |
-
if (pos < i) order.splice(at, 0, {from: pos, to: i, level: 1});
|
5777 |
-
}
|
5778 |
-
}
|
5779 |
-
if (order[0].level == 1 && (m = str.match(/^\s+/))) {
|
5780 |
-
order[0].from = m[0].length;
|
5781 |
-
order.unshift({from: 0, to: m[0].length, level: 0});
|
5782 |
-
}
|
5783 |
-
if (lst(order).level == 1 && (m = str.match(/\s+$/))) {
|
5784 |
-
lst(order).to -= m[0].length;
|
5785 |
-
order.push({from: len - m[0].length, to: len, level: 0});
|
5786 |
-
}
|
5787 |
-
if (order[0].level != lst(order).level)
|
5788 |
-
order.push({from: len, to: len, level: order[0].level});
|
5789 |
-
|
5790 |
-
return order;
|
5791 |
-
};
|
5792 |
-
})();
|
5793 |
-
|
5794 |
-
// THE END
|
5795 |
-
|
5796 |
-
CodeMirror.version = "3.15.0";
|
5797 |
-
|
5798 |
-
return CodeMirror;
|
5799 |
-
})();
|
1 |
+
/*
|
2 |
+
* CodeMirror version 3.15
|
3 |
+
* https://codemirror.net/
|
4 |
+
* Copyright (C) 2017 by Marijn Haverbeke <marijnh@gmail.com> and others
|
5 |
+
*
|
6 |
+
* Released under the MIT license
|
7 |
+
* https://codemirror.net/LICENSE
|
8 |
+
*/
|
9 |
+
|
10 |
+
// CodeMirror is the only global var we claim
|
11 |
+
window.CodeMirror = (function() {
|
12 |
+
"use strict";
|
13 |
+
|
14 |
+
// BROWSER SNIFFING
|
15 |
+
|
16 |
+
// Crude, but necessary to handle a number of hard-to-feature-detect
|
17 |
+
// bugs and behavior differences.
|
18 |
+
var gecko = /gecko\/\d/i.test(navigator.userAgent);
|
19 |
+
var ie = /MSIE \d/.test(navigator.userAgent);
|
20 |
+
var ie_lt8 = ie && (document.documentMode == null || document.documentMode < 8);
|
21 |
+
var ie_lt9 = ie && (document.documentMode == null || document.documentMode < 9);
|
22 |
+
var webkit = /WebKit\//.test(navigator.userAgent);
|
23 |
+
var qtwebkit = webkit && /Qt\/\d+\.\d+/.test(navigator.userAgent);
|
24 |
+
var chrome = /Chrome\//.test(navigator.userAgent);
|
25 |
+
var opera = /Opera\//.test(navigator.userAgent);
|
26 |
+
var safari = /Apple Computer/.test(navigator.vendor);
|
27 |
+
var khtml = /KHTML\//.test(navigator.userAgent);
|
28 |
+
var mac_geLion = /Mac OS X 1\d\D([7-9]|\d\d)\D/.test(navigator.userAgent);
|
29 |
+
var mac_geMountainLion = /Mac OS X 1\d\D([8-9]|\d\d)\D/.test(navigator.userAgent);
|
30 |
+
var phantom = /PhantomJS/.test(navigator.userAgent);
|
31 |
+
|
32 |
+
var ios = /AppleWebKit/.test(navigator.userAgent) && /Mobile\/\w+/.test(navigator.userAgent);
|
33 |
+
// This is woefully incomplete. Suggestions for alternative methods welcome.
|
34 |
+
var mobile = ios || /Android|webOS|BlackBerry|Opera Mini|Opera Mobi|IEMobile/i.test(navigator.userAgent);
|
35 |
+
var mac = ios || /Mac/.test(navigator.platform);
|
36 |
+
var windows = /windows/i.test(navigator.platform);
|
37 |
+
|
38 |
+
var opera_version = opera && navigator.userAgent.match(/Version\/(\d*\.\d*)/);
|
39 |
+
if (opera_version) opera_version = Number(opera_version[1]);
|
40 |
+
if (opera_version && opera_version >= 15) { opera = false; webkit = true; }
|
41 |
+
// Some browsers use the wrong event properties to signal cmd/ctrl on OS X
|
42 |
+
var flipCtrlCmd = mac && (qtwebkit || opera && (opera_version == null || opera_version < 12.11));
|
43 |
+
var captureMiddleClick = gecko || (ie && !ie_lt9);
|
44 |
+
|
45 |
+
// Optimize some code when these features are not used
|
46 |
+
var sawReadOnlySpans = false, sawCollapsedSpans = false;
|
47 |
+
|
48 |
+
// CONSTRUCTOR
|
49 |
+
|
50 |
+
function CodeMirror(place, options) {
|
51 |
+
if (!(this instanceof CodeMirror)) return new CodeMirror(place, options);
|
52 |
+
|
53 |
+
this.options = options = options || {};
|
54 |
+
// Determine effective options based on given values and defaults.
|
55 |
+
for (var opt in defaults) if (!options.hasOwnProperty(opt) && defaults.hasOwnProperty(opt))
|
56 |
+
options[opt] = defaults[opt];
|
57 |
+
setGuttersForLineNumbers(options);
|
58 |
+
|
59 |
+
var docStart = typeof options.value == "string" ? 0 : options.value.first;
|
60 |
+
var display = this.display = makeDisplay(place, docStart);
|
61 |
+
display.wrapper.CodeMirror = this;
|
62 |
+
updateGutters(this);
|
63 |
+
if (options.autofocus && !mobile) focusInput(this);
|
64 |
+
|
65 |
+
this.state = {keyMaps: [],
|
66 |
+
overlays: [],
|
67 |
+
modeGen: 0,
|
68 |
+
overwrite: false, focused: false,
|
69 |
+
suppressEdits: false, pasteIncoming: false,
|
70 |
+
draggingText: false,
|
71 |
+
highlight: new Delayed()};
|
72 |
+
|
73 |
+
themeChanged(this);
|
74 |
+
if (options.lineWrapping)
|
75 |
+
this.display.wrapper.className += " CodeMirror-wrap";
|
76 |
+
|
77 |
+
var doc = options.value;
|
78 |
+
if (typeof doc == "string") doc = new Doc(options.value, options.mode);
|
79 |
+
operation(this, attachDoc)(this, doc);
|
80 |
+
|
81 |
+
// Override magic textarea content restore that IE sometimes does
|
82 |
+
// on our hidden textarea on reload
|
83 |
+
if (ie) setTimeout(bind(resetInput, this, true), 20);
|
84 |
+
|
85 |
+
registerEventHandlers(this);
|
86 |
+
// IE throws unspecified error in certain cases, when
|
87 |
+
// trying to access activeElement before onload
|
88 |
+
var hasFocus; try { hasFocus = (document.activeElement == display.input); } catch(e) { }
|
89 |
+
if (hasFocus || (options.autofocus && !mobile)) setTimeout(bind(onFocus, this), 20);
|
90 |
+
else onBlur(this);
|
91 |
+
|
92 |
+
operation(this, function() {
|
93 |
+
for (var opt in optionHandlers)
|
94 |
+
if (optionHandlers.propertyIsEnumerable(opt))
|
95 |
+
optionHandlers[opt](this, options[opt], Init);
|
96 |
+
for (var i = 0; i < initHooks.length; ++i) initHooks[i](this);
|
97 |
+
})();
|
98 |
+
}
|
99 |
+
|
100 |
+
// DISPLAY CONSTRUCTOR
|
101 |
+
|
102 |
+
function makeDisplay(place, docStart) {
|
103 |
+
var d = {};
|
104 |
+
|
105 |
+
var input = d.input = elt("textarea", null, null, "position: absolute; padding: 0; width: 1px; height: 1em; outline: none; font-size: 4px;");
|
106 |
+
if (webkit) input.style.width = "1000px";
|
107 |
+
else input.setAttribute("wrap", "off");
|
108 |
+
// if border: 0; -- iOS fails to open keyboard (issue #1287)
|
109 |
+
if (ios) input.style.border = "1px solid black";
|
110 |
+
input.setAttribute("autocorrect", "off"); input.setAttribute("autocapitalize", "off"); input.setAttribute("spellcheck", "false");
|
111 |
+
|
112 |
+
// Wraps and hides input textarea
|
113 |
+
d.inputDiv = elt("div", [input], null, "overflow: hidden; position: relative; width: 3px; height: 0px;");
|
114 |
+
// The actual fake scrollbars.
|
115 |
+
d.scrollbarH = elt("div", [elt("div", null, null, "height: 1px")], "CodeMirror-hscrollbar");
|
116 |
+
d.scrollbarV = elt("div", [elt("div", null, null, "width: 1px")], "CodeMirror-vscrollbar");
|
117 |
+
d.scrollbarFiller = elt("div", null, "CodeMirror-scrollbar-filler");
|
118 |
+
d.gutterFiller = elt("div", null, "CodeMirror-gutter-filler");
|
119 |
+
// DIVs containing the selection and the actual code
|
120 |
+
d.lineDiv = elt("div", null, "CodeMirror-code");
|
121 |
+
d.selectionDiv = elt("div", null, null, "position: relative; z-index: 1");
|
122 |
+
// Blinky cursor, and element used to ensure cursor fits at the end of a line
|
123 |
+
d.cursor = elt("div", "\u00a0", "CodeMirror-cursor");
|
124 |
+
// Secondary cursor, shown when on a 'jump' in bi-directional text
|
125 |
+
d.otherCursor = elt("div", "\u00a0", "CodeMirror-cursor CodeMirror-secondarycursor");
|
126 |
+
// Used to measure text size
|
127 |
+
d.measure = elt("div", null, "CodeMirror-measure");
|
128 |
+
// Wraps everything that needs to exist inside the vertically-padded coordinate system
|
129 |
+
d.lineSpace = elt("div", [d.measure, d.selectionDiv, d.lineDiv, d.cursor, d.otherCursor],
|
130 |
+
null, "position: relative; outline: none");
|
131 |
+
// Moved around its parent to cover visible view
|
132 |
+
d.mover = elt("div", [elt("div", [d.lineSpace], "CodeMirror-lines")], null, "position: relative");
|
133 |
+
// Set to the height of the text, causes scrolling
|
134 |
+
d.sizer = elt("div", [d.mover], "CodeMirror-sizer");
|
135 |
+
// D is needed because behavior of elts with overflow: auto and padding is inconsistent across browsers
|
136 |
+
d.heightForcer = elt("div", null, null, "position: absolute; height: " + scrollerCutOff + "px; width: 1px;");
|
137 |
+
// Will contain the gutters, if any
|
138 |
+
d.gutters = elt("div", null, "CodeMirror-gutters");
|
139 |
+
d.lineGutter = null;
|
140 |
+
// Provides scrolling
|
141 |
+
d.scroller = elt("div", [d.sizer, d.heightForcer, d.gutters], "CodeMirror-scroll");
|
142 |
+
d.scroller.setAttribute("tabIndex", "-1");
|
143 |
+
// The element in which the editor lives.
|
144 |
+
d.wrapper = elt("div", [d.inputDiv, d.scrollbarH, d.scrollbarV,
|
145 |
+
d.scrollbarFiller, d.gutterFiller, d.scroller], "CodeMirror");
|
146 |
+
// Work around IE7 z-index bug
|
147 |
+
if (ie_lt8) { d.gutters.style.zIndex = -1; d.scroller.style.paddingRight = 0; }
|
148 |
+
if (place.appendChild) place.appendChild(d.wrapper); else place(d.wrapper);
|
149 |
+
|
150 |
+
// Needed to hide big blue blinking cursor on Mobile Safari
|
151 |
+
if (ios) input.style.width = "0px";
|
152 |
+
if (!webkit) d.scroller.draggable = true;
|
153 |
+
// Needed to handle Tab key in KHTML
|
154 |
+
if (khtml) { d.inputDiv.style.height = "1px"; d.inputDiv.style.position = "absolute"; }
|
155 |
+
// Need to set a minimum width to see the scrollbar on IE7 (but must not set it on IE8).
|
156 |
+
else if (ie_lt8) d.scrollbarH.style.minWidth = d.scrollbarV.style.minWidth = "18px";
|
157 |
+
|
158 |
+
// Current visible range (may be bigger than the view window).
|
159 |
+
d.viewOffset = d.lastSizeC = 0;
|
160 |
+
d.showingFrom = d.showingTo = docStart;
|
161 |
+
|
162 |
+
// Used to only resize the line number gutter when necessary (when
|
163 |
+
// the amount of lines crosses a boundary that makes its width change)
|
164 |
+
d.lineNumWidth = d.lineNumInnerWidth = d.lineNumChars = null;
|
165 |
+
// See readInput and resetInput
|
166 |
+
d.prevInput = "";
|
167 |
+
// Set to true when a non-horizontal-scrolling widget is added. As
|
168 |
+
// an optimization, widget aligning is skipped when d is false.
|
169 |
+
d.alignWidgets = false;
|
170 |
+
// Flag that indicates whether we currently expect input to appear
|
171 |
+
// (after some event like 'keypress' or 'input') and are polling
|
172 |
+
// intensively.
|
173 |
+
d.pollingFast = false;
|
174 |
+
// Self-resetting timeout for the poller
|
175 |
+
d.poll = new Delayed();
|
176 |
+
|
177 |
+
d.cachedCharWidth = d.cachedTextHeight = null;
|
178 |
+
d.measureLineCache = [];
|
179 |
+
d.measureLineCachePos = 0;
|
180 |
+
|
181 |
+
// Tracks when resetInput has punted to just putting a short
|
182 |
+
// string instead of the (large) selection.
|
183 |
+
d.inaccurateSelection = false;
|
184 |
+
|
185 |
+
// Tracks the maximum line length so that the horizontal scrollbar
|
186 |
+
// can be kept static when scrolling.
|
187 |
+
d.maxLine = null;
|
188 |
+
d.maxLineLength = 0;
|
189 |
+
d.maxLineChanged = false;
|
190 |
+
|
191 |
+
// Used for measuring wheel scrolling granularity
|
192 |
+
d.wheelDX = d.wheelDY = d.wheelStartX = d.wheelStartY = null;
|
193 |
+
|
194 |
+
return d;
|
195 |
+
}
|
196 |
+
|
197 |
+
// STATE UPDATES
|
198 |
+
|
199 |
+
// Used to get the editor into a consistent state again when options change.
|
200 |
+
|
201 |
+
function loadMode(cm) {
|
202 |
+
cm.doc.mode = CodeMirror.getMode(cm.options, cm.doc.modeOption);
|
203 |
+
cm.doc.iter(function(line) {
|
204 |
+
if (line.stateAfter) line.stateAfter = null;
|
205 |
+
if (line.styles) line.styles = null;
|
206 |
+
});
|
207 |
+
cm.doc.frontier = cm.doc.first;
|
208 |
+
startWorker(cm, 100);
|
209 |
+
cm.state.modeGen++;
|
210 |
+
if (cm.curOp) regChange(cm);
|
211 |
+
}
|
212 |
+
|
213 |
+
function wrappingChanged(cm) {
|
214 |
+
if (cm.options.lineWrapping) {
|
215 |
+
cm.display.wrapper.className += " CodeMirror-wrap";
|
216 |
+
cm.display.sizer.style.minWidth = "";
|
217 |
+
} else {
|
218 |
+
cm.display.wrapper.className = cm.display.wrapper.className.replace(" CodeMirror-wrap", "");
|
219 |
+
computeMaxLength(cm);
|
220 |
+
}
|
221 |
+
estimateLineHeights(cm);
|
222 |
+
regChange(cm);
|
223 |
+
clearCaches(cm);
|
224 |
+
setTimeout(function(){updateScrollbars(cm);}, 100);
|
225 |
+
}
|
226 |
+
|
227 |
+
function estimateHeight(cm) {
|
228 |
+
var th = textHeight(cm.display), wrapping = cm.options.lineWrapping;
|
229 |
+
var perLine = wrapping && Math.max(5, cm.display.scroller.clientWidth / charWidth(cm.display) - 3);
|
230 |
+
return function(line) {
|
231 |
+
if (lineIsHidden(cm.doc, line))
|
232 |
+
return 0;
|
233 |
+
else if (wrapping)
|
234 |
+
return (Math.ceil(line.text.length / perLine) || 1) * th;
|
235 |
+
else
|
236 |
+
return th;
|
237 |
+
};
|
238 |
+
}
|
239 |
+
|
240 |
+
function estimateLineHeights(cm) {
|
241 |
+
var doc = cm.doc, est = estimateHeight(cm);
|
242 |
+
doc.iter(function(line) {
|
243 |
+
var estHeight = est(line);
|
244 |
+
if (estHeight != line.height) updateLineHeight(line, estHeight);
|
245 |
+
});
|
246 |
+
}
|
247 |
+
|
248 |
+
function keyMapChanged(cm) {
|
249 |
+
var map = keyMap[cm.options.keyMap], style = map.style;
|
250 |
+
cm.display.wrapper.className = cm.display.wrapper.className.replace(/\s*cm-keymap-\S+/g, "") +
|
251 |
+
(style ? " cm-keymap-" + style : "");
|
252 |
+
cm.state.disableInput = map.disableInput;
|
253 |
+
}
|
254 |
+
|
255 |
+
function themeChanged(cm) {
|
256 |
+
cm.display.wrapper.className = cm.display.wrapper.className.replace(/\s*cm-s-\S+/g, "") +
|
257 |
+
cm.options.theme.replace(/(^|\s)\s*/g, " cm-s-");
|
258 |
+
clearCaches(cm);
|
259 |
+
}
|
260 |
+
|
261 |
+
function guttersChanged(cm) {
|
262 |
+
updateGutters(cm);
|
263 |
+
regChange(cm);
|
264 |
+
setTimeout(function(){alignHorizontally(cm);}, 20);
|
265 |
+
}
|
266 |
+
|
267 |
+
function updateGutters(cm) {
|
268 |
+
var gutters = cm.display.gutters, specs = cm.options.gutters;
|
269 |
+
removeChildren(gutters);
|
270 |
+
for (var i = 0; i < specs.length; ++i) {
|
271 |
+
var gutterClass = specs[i];
|
272 |
+
var gElt = gutters.appendChild(elt("div", null, "CodeMirror-gutter " + gutterClass));
|
273 |
+
if (gutterClass == "CodeMirror-linenumbers") {
|
274 |
+
cm.display.lineGutter = gElt;
|
275 |
+
gElt.style.width = (cm.display.lineNumWidth || 1) + "px";
|
276 |
+
}
|
277 |
+
}
|
278 |
+
gutters.style.display = i ? "" : "none";
|
279 |
+
}
|
280 |
+
|
281 |
+
function lineLength(doc, line) {
|
282 |
+
if (line.height == 0) return 0;
|
283 |
+
var len = line.text.length, merged, cur = line;
|
284 |
+
while (merged = collapsedSpanAtStart(cur)) {
|
285 |
+
var found = merged.find();
|
286 |
+
cur = getLine(doc, found.from.line);
|
287 |
+
len += found.from.ch - found.to.ch;
|
288 |
+
}
|
289 |
+
cur = line;
|
290 |
+
while (merged = collapsedSpanAtEnd(cur)) {
|
291 |
+
var found = merged.find();
|
292 |
+
len -= cur.text.length - found.from.ch;
|
293 |
+
cur = getLine(doc, found.to.line);
|
294 |
+
len += cur.text.length - found.to.ch;
|
295 |
+
}
|
296 |
+
return len;
|
297 |
+
}
|
298 |
+
|
299 |
+
function computeMaxLength(cm) {
|
300 |
+
var d = cm.display, doc = cm.doc;
|
301 |
+
d.maxLine = getLine(doc, doc.first);
|
302 |
+
d.maxLineLength = lineLength(doc, d.maxLine);
|
303 |
+
d.maxLineChanged = true;
|
304 |
+
doc.iter(function(line) {
|
305 |
+
var len = lineLength(doc, line);
|
306 |
+
if (len > d.maxLineLength) {
|
307 |
+
d.maxLineLength = len;
|
308 |
+
d.maxLine = line;
|
309 |
+
}
|
310 |
+
});
|
311 |
+
}
|
312 |
+
|
313 |
+
// Make sure the gutters options contains the element
|
314 |
+
// "CodeMirror-linenumbers" when the lineNumbers option is true.
|
315 |
+
function setGuttersForLineNumbers(options) {
|
316 |
+
var found = false;
|
317 |
+
for (var i = 0; i < options.gutters.length; ++i) {
|
318 |
+
if (options.gutters[i] == "CodeMirror-linenumbers") {
|
319 |
+
if (options.lineNumbers) found = true;
|
320 |
+
else options.gutters.splice(i--, 1);
|
321 |
+
}
|
322 |
+
}
|
323 |
+
if (!found && options.lineNumbers)
|
324 |
+
options.gutters.push("CodeMirror-linenumbers");
|
325 |
+
}
|
326 |
+
|
327 |
+
// SCROLLBARS
|
328 |
+
|
329 |
+
// Re-synchronize the fake scrollbars with the actual size of the
|
330 |
+
// content. Optionally force a scrollTop.
|
331 |
+
function updateScrollbars(cm) {
|
332 |
+
var d = cm.display, docHeight = cm.doc.height;
|
333 |
+
var totalHeight = docHeight + paddingVert(d);
|
334 |
+
d.sizer.style.minHeight = d.heightForcer.style.top = totalHeight + "px";
|
335 |
+
d.gutters.style.height = Math.max(totalHeight, d.scroller.clientHeight - scrollerCutOff) + "px";
|
336 |
+
var scrollHeight = Math.max(totalHeight, d.scroller.scrollHeight);
|
337 |
+
var needsH = d.scroller.scrollWidth > (d.scroller.clientWidth + 1);
|
338 |
+
var needsV = scrollHeight > (d.scroller.clientHeight + 1);
|
339 |
+
if (needsV) {
|
340 |
+
d.scrollbarV.style.display = "block";
|
341 |
+
d.scrollbarV.style.bottom = needsH ? scrollbarWidth(d.measure) + "px" : "0";
|
342 |
+
d.scrollbarV.firstChild.style.height =
|
343 |
+
(scrollHeight - d.scroller.clientHeight + d.scrollbarV.clientHeight) + "px";
|
344 |
+
} else d.scrollbarV.style.display = "";
|
345 |
+
if (needsH) {
|
346 |
+
d.scrollbarH.style.display = "block";
|
347 |
+
d.scrollbarH.style.right = needsV ? scrollbarWidth(d.measure) + "px" : "0";
|
348 |
+
d.scrollbarH.firstChild.style.width =
|
349 |
+
(d.scroller.scrollWidth - d.scroller.clientWidth + d.scrollbarH.clientWidth) + "px";
|
350 |
+
} else d.scrollbarH.style.display = "";
|
351 |
+
if (needsH && needsV) {
|
352 |
+
d.scrollbarFiller.style.display = "block";
|
353 |
+
d.scrollbarFiller.style.height = d.scrollbarFiller.style.width = scrollbarWidth(d.measure) + "px";
|
354 |
+
} else d.scrollbarFiller.style.display = "";
|
355 |
+
if (needsH && cm.options.coverGutterNextToScrollbar && cm.options.fixedGutter) {
|
356 |
+
d.gutterFiller.style.display = "block";
|
357 |
+
d.gutterFiller.style.height = scrollbarWidth(d.measure) + "px";
|
358 |
+
d.gutterFiller.style.width = d.gutters.offsetWidth + "px";
|
359 |
+
} else d.gutterFiller.style.display = "";
|
360 |
+
|
361 |
+
if (mac_geLion && scrollbarWidth(d.measure) === 0)
|
362 |
+
d.scrollbarV.style.minWidth = d.scrollbarH.style.minHeight = mac_geMountainLion ? "18px" : "12px";
|
363 |
+
}
|
364 |
+
|
365 |
+
function visibleLines(display, doc, viewPort) {
|
366 |
+
var top = display.scroller.scrollTop, height = display.wrapper.clientHeight;
|
367 |
+
if (typeof viewPort == "number") top = viewPort;
|
368 |
+
else if (viewPort) {top = viewPort.top; height = viewPort.bottom - viewPort.top;}
|
369 |
+
top = Math.floor(top - paddingTop(display));
|
370 |
+
var bottom = Math.ceil(top + height);
|
371 |
+
return {from: lineAtHeight(doc, top), to: lineAtHeight(doc, bottom)};
|
372 |
+
}
|
373 |
+
|
374 |
+
// LINE NUMBERS
|
375 |
+
|
376 |
+
function alignHorizontally(cm) {
|
377 |
+
var display = cm.display;
|
378 |
+
if (!display.alignWidgets && (!display.gutters.firstChild || !cm.options.fixedGutter)) return;
|
379 |
+
var comp = compensateForHScroll(display) - display.scroller.scrollLeft + cm.doc.scrollLeft;
|
380 |
+
var gutterW = display.gutters.offsetWidth, l = comp + "px";
|
381 |
+
for (var n = display.lineDiv.firstChild; n; n = n.nextSibling) if (n.alignable) {
|
382 |
+
for (var i = 0, a = n.alignable; i < a.length; ++i) a[i].style.left = l;
|
383 |
+
}
|
384 |
+
if (cm.options.fixedGutter)
|
385 |
+
display.gutters.style.left = (comp + gutterW) + "px";
|
386 |
+
}
|
387 |
+
|
388 |
+
function maybeUpdateLineNumberWidth(cm) {
|
389 |
+
if (!cm.options.lineNumbers) return false;
|
390 |
+
var doc = cm.doc, last = lineNumberFor(cm.options, doc.first + doc.size - 1), display = cm.display;
|
391 |
+
if (last.length != display.lineNumChars) {
|
392 |
+
var test = display.measure.appendChild(elt("div", [elt("div", last)],
|
393 |
+
"CodeMirror-linenumber CodeMirror-gutter-elt"));
|
394 |
+
var innerW = test.firstChild.offsetWidth, padding = test.offsetWidth - innerW;
|
395 |
+
display.lineGutter.style.width = "";
|
396 |
+
display.lineNumInnerWidth = Math.max(innerW, display.lineGutter.offsetWidth - padding);
|
397 |
+
display.lineNumWidth = display.lineNumInnerWidth + padding;
|
398 |
+
display.lineNumChars = display.lineNumInnerWidth ? last.length : -1;
|
399 |
+
display.lineGutter.style.width = display.lineNumWidth + "px";
|
400 |
+
return true;
|
401 |
+
}
|
402 |
+
return false;
|
403 |
+
}
|
404 |
+
|
405 |
+
function lineNumberFor(options, i) {
|
406 |
+
return String(options.lineNumberFormatter(i + options.firstLineNumber));
|
407 |
+
}
|
408 |
+
function compensateForHScroll(display) {
|
409 |
+
return getRect(display.scroller).left - getRect(display.sizer).left;
|
410 |
+
}
|
411 |
+
|
412 |
+
// DISPLAY DRAWING
|
413 |
+
|
414 |
+
function updateDisplay(cm, changes, viewPort, forced) {
|
415 |
+
var oldFrom = cm.display.showingFrom, oldTo = cm.display.showingTo, updated;
|
416 |
+
var visible = visibleLines(cm.display, cm.doc, viewPort);
|
417 |
+
for (;;) {
|
418 |
+
if (!updateDisplayInner(cm, changes, visible, forced)) break;
|
419 |
+
forced = false;
|
420 |
+
updated = true;
|
421 |
+
updateSelection(cm);
|
422 |
+
updateScrollbars(cm);
|
423 |
+
|
424 |
+
// Clip forced viewport to actual scrollable area
|
425 |
+
if (viewPort)
|
426 |
+
viewPort = Math.min(cm.display.scroller.scrollHeight - cm.display.scroller.clientHeight,
|
427 |
+
typeof viewPort == "number" ? viewPort : viewPort.top);
|
428 |
+
visible = visibleLines(cm.display, cm.doc, viewPort);
|
429 |
+
if (visible.from >= cm.display.showingFrom && visible.to <= cm.display.showingTo)
|
430 |
+
break;
|
431 |
+
changes = [];
|
432 |
+
}
|
433 |
+
|
434 |
+
if (updated) {
|
435 |
+
signalLater(cm, "update", cm);
|
436 |
+
if (cm.display.showingFrom != oldFrom || cm.display.showingTo != oldTo)
|
437 |
+
signalLater(cm, "viewportChange", cm, cm.display.showingFrom, cm.display.showingTo);
|
438 |
+
}
|
439 |
+
return updated;
|
440 |
+
}
|
441 |
+
|
442 |
+
// Uses a set of changes plus the current scroll position to
|
443 |
+
// determine which DOM updates have to be made, and makes the
|
444 |
+
// updates.
|
445 |
+
function updateDisplayInner(cm, changes, visible, forced) {
|
446 |
+
var display = cm.display, doc = cm.doc;
|
447 |
+
if (!display.wrapper.clientWidth) {
|
448 |
+
display.showingFrom = display.showingTo = doc.first;
|
449 |
+
display.viewOffset = 0;
|
450 |
+
return;
|
451 |
+
}
|
452 |
+
|
453 |
+
// Bail out if the visible area is already rendered and nothing changed.
|
454 |
+
if (!forced && changes.length == 0 &&
|
455 |
+
visible.from > display.showingFrom && visible.to < display.showingTo)
|
456 |
+
return;
|
457 |
+
|
458 |
+
if (maybeUpdateLineNumberWidth(cm))
|
459 |
+
changes = [{from: doc.first, to: doc.first + doc.size}];
|
460 |
+
var gutterW = display.sizer.style.marginLeft = display.gutters.offsetWidth + "px";
|
461 |
+
display.scrollbarH.style.left = cm.options.fixedGutter ? gutterW : "0";
|
462 |
+
|
463 |
+
// Used to determine which lines need their line numbers updated
|
464 |
+
var positionsChangedFrom = Infinity;
|
465 |
+
if (cm.options.lineNumbers)
|
466 |
+
for (var i = 0; i < changes.length; ++i)
|
467 |
+
if (changes[i].diff) { positionsChangedFrom = changes[i].from; break; }
|
468 |
+
|
469 |
+
var end = doc.first + doc.size;
|
470 |
+
var from = Math.max(visible.from - cm.options.viewportMargin, doc.first);
|
471 |
+
var to = Math.min(end, visible.to + cm.options.viewportMargin);
|
472 |
+
if (display.showingFrom < from && from - display.showingFrom < 20) from = Math.max(doc.first, display.showingFrom);
|
473 |
+
if (display.showingTo > to && display.showingTo - to < 20) to = Math.min(end, display.showingTo);
|
474 |
+
if (sawCollapsedSpans) {
|
475 |
+
from = lineNo(visualLine(doc, getLine(doc, from)));
|
476 |
+
while (to < end && lineIsHidden(doc, getLine(doc, to))) ++to;
|
477 |
+
}
|
478 |
+
|
479 |
+
// Create a range of theoretically intact lines, and punch holes
|
480 |
+
// in that using the change info.
|
481 |
+
var intact = [{from: Math.max(display.showingFrom, doc.first),
|
482 |
+
to: Math.min(display.showingTo, end)}];
|
483 |
+
if (intact[0].from >= intact[0].to) intact = [];
|
484 |
+
else intact = computeIntact(intact, changes);
|
485 |
+
// When merged lines are present, we might have to reduce the
|
486 |
+
// intact ranges because changes in continued fragments of the
|
487 |
+
// intact lines do require the lines to be redrawn.
|
488 |
+
if (sawCollapsedSpans)
|
489 |
+
for (var i = 0; i < intact.length; ++i) {
|
490 |
+
var range = intact[i], merged;
|
491 |
+
while (merged = collapsedSpanAtEnd(getLine(doc, range.to - 1))) {
|
492 |
+
var newTo = merged.find().from.line;
|
493 |
+
if (newTo > range.from) range.to = newTo;
|
494 |
+
else { intact.splice(i--, 1); break; }
|
495 |
+
}
|
496 |
+
}
|
497 |
+
|
498 |
+
// Clip off the parts that won't be visible
|
499 |
+
var intactLines = 0;
|
500 |
+
for (var i = 0; i < intact.length; ++i) {
|
501 |
+
var range = intact[i];
|
502 |
+
if (range.from < from) range.from = from;
|
503 |
+
if (range.to > to) range.to = to;
|
504 |
+
if (range.from >= range.to) intact.splice(i--, 1);
|
505 |
+
else intactLines += range.to - range.from;
|
506 |
+
}
|
507 |
+
if (!forced && intactLines == to - from && from == display.showingFrom && to == display.showingTo) {
|
508 |
+
updateViewOffset(cm);
|
509 |
+
return;
|
510 |
+
}
|
511 |
+
intact.sort(function(a, b) {return a.from - b.from;});
|
512 |
+
|
513 |
+
// Avoid crashing on IE's "unspecified error" when in iframes
|
514 |
+
try {
|
515 |
+
var focused = document.activeElement;
|
516 |
+
} catch(e) {}
|
517 |
+
if (intactLines < (to - from) * .7) display.lineDiv.style.display = "none";
|
518 |
+
patchDisplay(cm, from, to, intact, positionsChangedFrom);
|
519 |
+
display.lineDiv.style.display = "";
|
520 |
+
if (focused && document.activeElement != focused && focused.offsetHeight) focused.focus();
|
521 |
+
|
522 |
+
var different = from != display.showingFrom || to != display.showingTo ||
|
523 |
+
display.lastSizeC != display.wrapper.clientHeight;
|
524 |
+
// This is just a bogus formula that detects when the editor is
|
525 |
+
// resized or the font size changes.
|
526 |
+
if (different) {
|
527 |
+
display.lastSizeC = display.wrapper.clientHeight;
|
528 |
+
startWorker(cm, 400);
|
529 |
+
}
|
530 |
+
display.showingFrom = from; display.showingTo = to;
|
531 |
+
|
532 |
+
updateHeightsInViewport(cm);
|
533 |
+
updateViewOffset(cm);
|
534 |
+
|
535 |
+
return true;
|
536 |
+
}
|
537 |
+
|
538 |
+
function updateHeightsInViewport(cm) {
|
539 |
+
var display = cm.display;
|
540 |
+
var prevBottom = display.lineDiv.offsetTop;
|
541 |
+
for (var node = display.lineDiv.firstChild, height; node; node = node.nextSibling) if (node.lineObj) {
|
542 |
+
if (ie_lt8) {
|
543 |
+
var bot = node.offsetTop + node.offsetHeight;
|
544 |
+
height = bot - prevBottom;
|
545 |
+
prevBottom = bot;
|
546 |
+
} else {
|
547 |
+
var box = getRect(node);
|
548 |
+
height = box.bottom - box.top;
|
549 |
+
}
|
550 |
+
var diff = node.lineObj.height - height;
|
551 |
+
if (height < 2) height = textHeight(display);
|
552 |
+
if (diff > .001 || diff < -.001) {
|
553 |
+
updateLineHeight(node.lineObj, height);
|
554 |
+
var widgets = node.lineObj.widgets;
|
555 |
+
if (widgets) for (var i = 0; i < widgets.length; ++i)
|
556 |
+
widgets[i].height = widgets[i].node.offsetHeight;
|
557 |
+
}
|
558 |
+
}
|
559 |
+
}
|
560 |
+
|
561 |
+
function updateViewOffset(cm) {
|
562 |
+
var off = cm.display.viewOffset = heightAtLine(cm, getLine(cm.doc, cm.display.showingFrom));
|
563 |
+
// Position the mover div to align with the current virtual scroll position
|
564 |
+
cm.display.mover.style.top = off + "px";
|
565 |
+
}
|
566 |
+
|
567 |
+
function computeIntact(intact, changes) {
|
568 |
+
for (var i = 0, l = changes.length || 0; i < l; ++i) {
|
569 |
+
var change = changes[i], intact2 = [], diff = change.diff || 0;
|
570 |
+
for (var j = 0, l2 = intact.length; j < l2; ++j) {
|
571 |
+
var range = intact[j];
|
572 |
+
if (change.to <= range.from && change.diff) {
|
573 |
+
intact2.push({from: range.from + diff, to: range.to + diff});
|
574 |
+
} else if (change.to <= range.from || change.from >= range.to) {
|
575 |
+
intact2.push(range);
|
576 |
+
} else {
|
577 |
+
if (change.from > range.from)
|
578 |
+
intact2.push({from: range.from, to: change.from});
|
579 |
+
if (change.to < range.to)
|
580 |
+
intact2.push({from: change.to + diff, to: range.to + diff});
|
581 |
+
}
|
582 |
+
}
|
583 |
+
intact = intact2;
|
584 |
+
}
|
585 |
+
return intact;
|
586 |
+
}
|
587 |
+
|
588 |
+
function getDimensions(cm) {
|
589 |
+
var d = cm.display, left = {}, width = {};
|
590 |
+
for (var n = d.gutters.firstChild, i = 0; n; n = n.nextSibling, ++i) {
|
591 |
+
left[cm.options.gutters[i]] = n.offsetLeft;
|
592 |
+
width[cm.options.gutters[i]] = n.offsetWidth;
|
593 |
+
}
|
594 |
+
return {fixedPos: compensateForHScroll(d),
|
595 |
+
gutterTotalWidth: d.gutters.offsetWidth,
|
596 |
+
gutterLeft: left,
|
597 |
+
gutterWidth: width,
|
598 |
+
wrapperWidth: d.wrapper.clientWidth};
|
599 |
+
}
|
600 |
+
|
601 |
+
function patchDisplay(cm, from, to, intact, updateNumbersFrom) {
|
602 |
+
var dims = getDimensions(cm);
|
603 |
+
var display = cm.display, lineNumbers = cm.options.lineNumbers;
|
604 |
+
if (!intact.length && (!webkit || !cm.display.currentWheelTarget))
|
605 |
+
removeChildren(display.lineDiv);
|
606 |
+
var container = display.lineDiv, cur = container.firstChild;
|
607 |
+
|
608 |
+
function rm(node) {
|
609 |
+
var next = node.nextSibling;
|
610 |
+
if (webkit && mac && cm.display.currentWheelTarget == node) {
|
611 |
+
node.style.display = "none";
|
612 |
+
node.lineObj = null;
|
613 |
+
} else {
|
614 |
+
node.parentNode.removeChild(node);
|
615 |
+
}
|
616 |
+
return next;
|
617 |
+
}
|
618 |
+
|
619 |
+
var nextIntact = intact.shift(), lineN = from;
|
620 |
+
cm.doc.iter(from, to, function(line) {
|
621 |
+
if (nextIntact && nextIntact.to == lineN) nextIntact = intact.shift();
|
622 |
+
if (lineIsHidden(cm.doc, line)) {
|
623 |
+
if (line.height != 0) updateLineHeight(line, 0);
|
624 |
+
if (line.widgets && cur.previousSibling) for (var i = 0; i < line.widgets.length; ++i) {
|
625 |
+
var w = line.widgets[i];
|
626 |
+
if (w.showIfHidden) {
|
627 |
+
var prev = cur.previousSibling;
|
628 |
+
if (/pre/i.test(prev.nodeName)) {
|
629 |
+
var wrap = elt("div", null, null, "position: relative");
|
630 |
+
prev.parentNode.replaceChild(wrap, prev);
|
631 |
+
wrap.appendChild(prev);
|
632 |
+
prev = wrap;
|
633 |
+
}
|
634 |
+
var wnode = prev.appendChild(elt("div", [w.node], "CodeMirror-linewidget"));
|
635 |
+
if (!w.handleMouseEvents) wnode.ignoreEvents = true;
|
636 |
+
positionLineWidget(w, wnode, prev, dims);
|
637 |
+
}
|
638 |
+
}
|
639 |
+
} else if (nextIntact && nextIntact.from <= lineN && nextIntact.to > lineN) {
|
640 |
+
// This line is intact. Skip to the actual node. Update its
|
641 |
+
// line number if needed.
|
642 |
+
while (cur.lineObj != line) cur = rm(cur);
|
643 |
+
if (lineNumbers && updateNumbersFrom <= lineN && cur.lineNumber)
|
644 |
+
setTextContent(cur.lineNumber, lineNumberFor(cm.options, lineN));
|
645 |
+
cur = cur.nextSibling;
|
646 |
+
} else {
|
647 |
+
// For lines with widgets, make an attempt to find and reuse
|
648 |
+
// the existing element, so that widgets aren't needlessly
|
649 |
+
// removed and re-inserted into the dom
|
650 |
+
if (line.widgets) for (var j = 0, search = cur, reuse; search && j < 20; ++j, search = search.nextSibling)
|
651 |
+
if (search.lineObj == line && /div/i.test(search.nodeName)) { reuse = search; break; }
|
652 |
+
// This line needs to be generated.
|
653 |
+
var lineNode = buildLineElement(cm, line, lineN, dims, reuse);
|
654 |
+
if (lineNode != reuse) {
|
655 |
+
container.insertBefore(lineNode, cur);
|
656 |
+
} else {
|
657 |
+
while (cur != reuse) cur = rm(cur);
|
658 |
+
cur = cur.nextSibling;
|
659 |
+
}
|
660 |
+
|
661 |
+
lineNode.lineObj = line;
|
662 |
+
}
|
663 |
+
++lineN;
|
664 |
+
});
|
665 |
+
while (cur) cur = rm(cur);
|
666 |
+
}
|
667 |
+
|
668 |
+
function buildLineElement(cm, line, lineNo, dims, reuse) {
|
669 |
+
var lineElement = lineContent(cm, line);
|
670 |
+
var markers = line.gutterMarkers, display = cm.display, wrap;
|
671 |
+
|
672 |
+
if (!cm.options.lineNumbers && !markers && !line.bgClass && !line.wrapClass && !line.widgets)
|
673 |
+
return lineElement;
|
674 |
+
|
675 |
+
// Lines with gutter elements, widgets or a background class need
|
676 |
+
// to be wrapped again, and have the extra elements added to the
|
677 |
+
// wrapper div
|
678 |
+
|
679 |
+
if (reuse) {
|
680 |
+
reuse.alignable = null;
|
681 |
+
var isOk = true, widgetsSeen = 0, insertBefore = null;
|
682 |
+
for (var n = reuse.firstChild, next; n; n = next) {
|
683 |
+
next = n.nextSibling;
|
684 |
+
if (!/\bCodeMirror-linewidget\b/.test(n.className)) {
|
685 |
+
reuse.removeChild(n);
|
686 |
+
} else {
|
687 |
+
for (var i = 0; i < line.widgets.length; ++i) {
|
688 |
+
var widget = line.widgets[i];
|
689 |
+
if (widget.node == n.firstChild) {
|
690 |
+
if (!widget.above && !insertBefore) insertBefore = n;
|
691 |
+
positionLineWidget(widget, n, reuse, dims);
|
692 |
+
++widgetsSeen;
|
693 |
+
break;
|
694 |
+
}
|
695 |
+
}
|
696 |
+
if (i == line.widgets.length) { isOk = false; break; }
|
697 |
+
}
|
698 |
+
}
|
699 |
+
reuse.insertBefore(lineElement, insertBefore);
|
700 |
+
if (isOk && widgetsSeen == line.widgets.length) {
|
701 |
+
wrap = reuse;
|
702 |
+
reuse.className = line.wrapClass || "";
|
703 |
+
}
|
704 |
+
}
|
705 |
+
if (!wrap) {
|
706 |
+
wrap = elt("div", null, line.wrapClass, "position: relative");
|
707 |
+
wrap.appendChild(lineElement);
|
708 |
+
}
|
709 |
+
// Kludge to make sure the styled element lies behind the selection (by z-index)
|
710 |
+
if (line.bgClass)
|
711 |
+
wrap.insertBefore(elt("div", null, line.bgClass + " CodeMirror-linebackground"), wrap.firstChild);
|
712 |
+
if (cm.options.lineNumbers || markers) {
|
713 |
+
var gutterWrap = wrap.insertBefore(elt("div", null, null, "position: absolute; left: " +
|
714 |
+
(cm.options.fixedGutter ? dims.fixedPos : -dims.gutterTotalWidth) + "px"),
|
715 |
+
wrap.firstChild);
|
716 |
+
if (cm.options.fixedGutter) (wrap.alignable || (wrap.alignable = [])).push(gutterWrap);
|
717 |
+
if (cm.options.lineNumbers && (!markers || !markers["CodeMirror-linenumbers"]))
|
718 |
+
wrap.lineNumber = gutterWrap.appendChild(
|
719 |
+
elt("div", lineNumberFor(cm.options, lineNo),
|
720 |
+
"CodeMirror-linenumber CodeMirror-gutter-elt",
|
721 |
+
"left: " + dims.gutterLeft["CodeMirror-linenumbers"] + "px; width: "
|
722 |
+
+ display.lineNumInnerWidth + "px"));
|
723 |
+
if (markers)
|
724 |
+
for (var k = 0; k < cm.options.gutters.length; ++k) {
|
725 |
+
var id = cm.options.gutters[k], found = markers.hasOwnProperty(id) && markers[id];
|
726 |
+
if (found)
|
727 |
+
gutterWrap.appendChild(elt("div", [found], "CodeMirror-gutter-elt", "left: " +
|
728 |
+
dims.gutterLeft[id] + "px; width: " + dims.gutterWidth[id] + "px"));
|
729 |
+
}
|
730 |
+
}
|
731 |
+
if (ie_lt8) wrap.style.zIndex = 2;
|
732 |
+
if (line.widgets && wrap != reuse) for (var i = 0, ws = line.widgets; i < ws.length; ++i) {
|
733 |
+
var widget = ws[i], node = elt("div", [widget.node], "CodeMirror-linewidget");
|
734 |
+
if (!widget.handleMouseEvents) node.ignoreEvents = true;
|
735 |
+
positionLineWidget(widget, node, wrap, dims);
|
736 |
+
if (widget.above)
|
737 |
+
wrap.insertBefore(node, cm.options.lineNumbers && line.height != 0 ? gutterWrap : lineElement);
|
738 |
+
else
|
739 |
+
wrap.appendChild(node);
|
740 |
+
signalLater(widget, "redraw");
|
741 |
+
}
|
742 |
+
return wrap;
|
743 |
+
}
|
744 |
+
|
745 |
+
function positionLineWidget(widget, node, wrap, dims) {
|
746 |
+
if (widget.noHScroll) {
|
747 |
+
(wrap.alignable || (wrap.alignable = [])).push(node);
|
748 |
+
var width = dims.wrapperWidth;
|
749 |
+
node.style.left = dims.fixedPos + "px";
|
750 |
+
if (!widget.coverGutter) {
|
751 |
+
width -= dims.gutterTotalWidth;
|
752 |
+
node.style.paddingLeft = dims.gutterTotalWidth + "px";
|
753 |
+
}
|
754 |
+
node.style.width = width + "px";
|
755 |
+
}
|
756 |
+
if (widget.coverGutter) {
|
757 |
+
node.style.zIndex = 5;
|
758 |
+
node.style.position = "relative";
|
759 |
+
if (!widget.noHScroll) node.style.marginLeft = -dims.gutterTotalWidth + "px";
|
760 |
+
}
|
761 |
+
}
|
762 |
+
|
763 |
+
// SELECTION / CURSOR
|
764 |
+
|
765 |
+
function updateSelection(cm) {
|
766 |
+
var display = cm.display;
|
767 |
+
var collapsed = posEq(cm.doc.sel.from, cm.doc.sel.to);
|
768 |
+
if (collapsed || cm.options.showCursorWhenSelecting)
|
769 |
+
updateSelectionCursor(cm);
|
770 |
+
else
|
771 |
+
display.cursor.style.display = display.otherCursor.style.display = "none";
|
772 |
+
if (!collapsed)
|
773 |
+
updateSelectionRange(cm);
|
774 |
+
else
|
775 |
+
display.selectionDiv.style.display = "none";
|
776 |
+
|
777 |
+
// Move the hidden textarea near the cursor to prevent scrolling artifacts
|
778 |
+
if (cm.options.moveInputWithCursor) {
|
779 |
+
var headPos = cursorCoords(cm, cm.doc.sel.head, "div");
|
780 |
+
var wrapOff = getRect(display.wrapper), lineOff = getRect(display.lineDiv);
|
781 |
+
display.inputDiv.style.top = Math.max(0, Math.min(display.wrapper.clientHeight - 10,
|
782 |
+
headPos.top + lineOff.top - wrapOff.top)) + "px";
|
783 |
+
display.inputDiv.style.left = Math.max(0, Math.min(display.wrapper.clientWidth - 10,
|
784 |
+
headPos.left + lineOff.left - wrapOff.left)) + "px";
|
785 |
+
}
|
786 |
+
}
|
787 |
+
|
788 |
+
// No selection, plain cursor
|
789 |
+
function updateSelectionCursor(cm) {
|
790 |
+
var display = cm.display, pos = cursorCoords(cm, cm.doc.sel.head, "div");
|
791 |
+
display.cursor.style.left = pos.left + "px";
|
792 |
+
display.cursor.style.top = pos.top + "px";
|
793 |
+
display.cursor.style.height = Math.max(0, pos.bottom - pos.top) * cm.options.cursorHeight + "px";
|
794 |
+
display.cursor.style.display = "";
|
795 |
+
|
796 |
+
if (pos.other) {
|
797 |
+
display.otherCursor.style.display = "";
|
798 |
+
display.otherCursor.style.left = pos.other.left + "px";
|
799 |
+
display.otherCursor.style.top = pos.other.top + "px";
|
800 |
+
display.otherCursor.style.height = (pos.other.bottom - pos.other.top) * .85 + "px";
|
801 |
+
} else { display.otherCursor.style.display = "none"; }
|
802 |
+
}
|
803 |
+
|
804 |
+
// Highlight selection
|
805 |
+
function updateSelectionRange(cm) {
|
806 |
+
var display = cm.display, doc = cm.doc, sel = cm.doc.sel;
|
807 |
+
var fragment = document.createDocumentFragment();
|
808 |
+
var clientWidth = display.lineSpace.offsetWidth, pl = paddingLeft(cm.display);
|
809 |
+
|
810 |
+
function add(left, top, width, bottom) {
|
811 |
+
if (top < 0) top = 0;
|
812 |
+
fragment.appendChild(elt("div", null, "CodeMirror-selected", "position: absolute; left: " + left +
|
813 |
+
"px; top: " + top + "px; width: " + (width == null ? clientWidth - left : width) +
|
814 |
+
"px; height: " + (bottom - top) + "px"));
|
815 |
+
}
|
816 |
+
|
817 |
+
function drawForLine(line, fromArg, toArg) {
|
818 |
+
var lineObj = getLine(doc, line);
|
819 |
+
var lineLen = lineObj.text.length;
|
820 |
+
var start, end;
|
821 |
+
function coords(ch, bias) {
|
822 |
+
return charCoords(cm, Pos(line, ch), "div", lineObj, bias);
|
823 |
+
}
|
824 |
+
|
825 |
+
iterateBidiSections(getOrder(lineObj), fromArg || 0, toArg == null ? lineLen : toArg, function(from, to, dir) {
|
826 |
+
var leftPos = coords(from, "left"), rightPos, left, right;
|
827 |
+
if (from == to) {
|
828 |
+
rightPos = leftPos;
|
829 |
+
left = right = leftPos.left;
|
830 |
+
} else {
|
831 |
+
rightPos = coords(to - 1, "right");
|
832 |
+
if (dir == "rtl") { var tmp = leftPos; leftPos = rightPos; rightPos = tmp; }
|
833 |
+
left = leftPos.left;
|
834 |
+
right = rightPos.right;
|
835 |
+
}
|
836 |
+
if (fromArg == null && from == 0) left = pl;
|
837 |
+
if (rightPos.top - leftPos.top > 3) { // Different lines, draw top part
|
838 |
+
add(left, leftPos.top, null, leftPos.bottom);
|
839 |
+
left = pl;
|
840 |
+
if (leftPos.bottom < rightPos.top) add(left, leftPos.bottom, null, rightPos.top);
|
841 |
+
}
|
842 |
+
if (toArg == null && to == lineLen) right = clientWidth;
|
843 |
+
if (!start || leftPos.top < start.top || leftPos.top == start.top && leftPos.left < start.left)
|
844 |
+
start = leftPos;
|
845 |
+
if (!end || rightPos.bottom > end.bottom || rightPos.bottom == end.bottom && rightPos.right > end.right)
|
846 |
+
end = rightPos;
|
847 |
+
if (left < pl + 1) left = pl;
|
848 |
+
add(left, rightPos.top, right - left, rightPos.bottom);
|
849 |
+
});
|
850 |
+
return {start: start, end: end};
|
851 |
+
}
|
852 |
+
|
853 |
+
if (sel.from.line == sel.to.line) {
|
854 |
+
drawForLine(sel.from.line, sel.from.ch, sel.to.ch);
|
855 |
+
} else {
|
856 |
+
var fromLine = getLine(doc, sel.from.line), toLine = getLine(doc, sel.to.line);
|
857 |
+
var singleVLine = visualLine(doc, fromLine) == visualLine(doc, toLine);
|
858 |
+
var leftEnd = drawForLine(sel.from.line, sel.from.ch, singleVLine ? fromLine.text.length : null).end;
|
859 |
+
var rightStart = drawForLine(sel.to.line, singleVLine ? 0 : null, sel.to.ch).start;
|
860 |
+
if (singleVLine) {
|
861 |
+
if (leftEnd.top < rightStart.top - 2) {
|
862 |
+
add(leftEnd.right, leftEnd.top, null, leftEnd.bottom);
|
863 |
+
add(pl, rightStart.top, rightStart.left, rightStart.bottom);
|
864 |
+
} else {
|
865 |
+
add(leftEnd.right, leftEnd.top, rightStart.left - leftEnd.right, leftEnd.bottom);
|
866 |
+
}
|
867 |
+
}
|
868 |
+
if (leftEnd.bottom < rightStart.top)
|
869 |
+
add(pl, leftEnd.bottom, null, rightStart.top);
|
870 |
+
}
|
871 |
+
|
872 |
+
removeChildrenAndAdd(display.selectionDiv, fragment);
|
873 |
+
display.selectionDiv.style.display = "";
|
874 |
+
}
|
875 |
+
|
876 |
+
// Cursor-blinking
|
877 |
+
function restartBlink(cm) {
|
878 |
+
if (!cm.state.focused) return;
|
879 |
+
var display = cm.display;
|
880 |
+
clearInterval(display.blinker);
|
881 |
+
var on = true;
|
882 |
+
display.cursor.style.visibility = display.otherCursor.style.visibility = "";
|
883 |
+
display.blinker = setInterval(function() {
|
884 |
+
display.cursor.style.visibility = display.otherCursor.style.visibility = (on = !on) ? "" : "hidden";
|
885 |
+
}, cm.options.cursorBlinkRate);
|
886 |
+
}
|
887 |
+
|
888 |
+
// HIGHLIGHT WORKER
|
889 |
+
|
890 |
+
function startWorker(cm, time) {
|
891 |
+
if (cm.doc.mode.startState && cm.doc.frontier < cm.display.showingTo)
|
892 |
+
cm.state.highlight.set(time, bind(highlightWorker, cm));
|
893 |
+
}
|
894 |
+
|
895 |
+
function highlightWorker(cm) {
|
896 |
+
var doc = cm.doc;
|
897 |
+
if (doc.frontier < doc.first) doc.frontier = doc.first;
|
898 |
+
if (doc.frontier >= cm.display.showingTo) return;
|
899 |
+
var end = +new Date + cm.options.workTime;
|
900 |
+
var state = copyState(doc.mode, getStateBefore(cm, doc.frontier));
|
901 |
+
var changed = [], prevChange;
|
902 |
+
doc.iter(doc.frontier, Math.min(doc.first + doc.size, cm.display.showingTo + 500), function(line) {
|
903 |
+
if (doc.frontier >= cm.display.showingFrom) { // Visible
|
904 |
+
var oldStyles = line.styles;
|
905 |
+
line.styles = highlightLine(cm, line, state);
|
906 |
+
var ischange = !oldStyles || oldStyles.length != line.styles.length;
|
907 |
+
for (var i = 0; !ischange && i < oldStyles.length; ++i) ischange = oldStyles[i] != line.styles[i];
|
908 |
+
if (ischange) {
|
909 |
+
if (prevChange && prevChange.end == doc.frontier) prevChange.end++;
|
910 |
+
else changed.push(prevChange = {start: doc.frontier, end: doc.frontier + 1});
|
911 |
+
}
|
912 |
+
line.stateAfter = copyState(doc.mode, state);
|
913 |
+
} else {
|
914 |
+
processLine(cm, line, state);
|
915 |
+
line.stateAfter = doc.frontier % 5 == 0 ? copyState(doc.mode, state) : null;
|
916 |
+
}
|
917 |
+
++doc.frontier;
|
918 |
+
if (+new Date > end) {
|
919 |
+
startWorker(cm, cm.options.workDelay);
|
920 |
+
return true;
|
921 |
+
}
|
922 |
+
});
|
923 |
+
if (changed.length)
|
924 |
+
operation(cm, function() {
|
925 |
+
for (var i = 0; i < changed.length; ++i)
|
926 |
+
regChange(this, changed[i].start, changed[i].end);
|
927 |
+
})();
|
928 |
+
}
|
929 |
+
|
930 |
+
// Finds the line to start with when starting a parse. Tries to
|
931 |
+
// find a line with a stateAfter, so that it can start with a
|
932 |
+
// valid state. If that fails, it returns the line with the
|
933 |
+
// smallest indentation, which tends to need the least context to
|
934 |
+
// parse correctly.
|
935 |
+
function findStartLine(cm, n, precise) {
|
936 |
+
var minindent, minline, doc = cm.doc;
|
937 |
+
for (var search = n, lim = n - 100; search > lim; --search) {
|
938 |
+
if (search <= doc.first) return doc.first;
|
939 |
+
var line = getLine(doc, search - 1);
|
940 |
+
if (line.stateAfter && (!precise || search <= doc.frontier)) return search;
|
941 |
+
var indented = countColumn(line.text, null, cm.options.tabSize);
|
942 |
+
if (minline == null || minindent > indented) {
|
943 |
+
minline = search - 1;
|
944 |
+
minindent = indented;
|
945 |
+
}
|
946 |
+
}
|
947 |
+
return minline;
|
948 |
+
}
|
949 |
+
|
950 |
+
function getStateBefore(cm, n, precise) {
|
951 |
+
var doc = cm.doc, display = cm.display;
|
952 |
+
if (!doc.mode.startState) return true;
|
953 |
+
var pos = findStartLine(cm, n, precise), state = pos > doc.first && getLine(doc, pos-1).stateAfter;
|
954 |
+
if (!state) state = startState(doc.mode);
|
955 |
+
else state = copyState(doc.mode, state);
|
956 |
+
doc.iter(pos, n, function(line) {
|
957 |
+
processLine(cm, line, state);
|
958 |
+
var save = pos == n - 1 || pos % 5 == 0 || pos >= display.showingFrom && pos < display.showingTo;
|
959 |
+
line.stateAfter = save ? copyState(doc.mode, state) : null;
|
960 |
+
++pos;
|
961 |
+
});
|
962 |
+
return state;
|
963 |
+
}
|
964 |
+
|
965 |
+
// POSITION MEASUREMENT
|
966 |
+
|
967 |
+
function paddingTop(display) {return display.lineSpace.offsetTop;}
|
968 |
+
function paddingVert(display) {return display.mover.offsetHeight - display.lineSpace.offsetHeight;}
|
969 |
+
function paddingLeft(display) {
|
970 |
+
var e = removeChildrenAndAdd(display.measure, elt("pre", null, null, "text-align: left")).appendChild(elt("span", "x"));
|
971 |
+
return e.offsetLeft;
|
972 |
+
}
|
973 |
+
|
974 |
+
function measureChar(cm, line, ch, data, bias) {
|
975 |
+
var dir = -1;
|
976 |
+
data = data || measureLine(cm, line);
|
977 |
+
|
978 |
+
for (var pos = ch;; pos += dir) {
|
979 |
+
var r = data[pos];
|
980 |
+
if (r) break;
|
981 |
+
if (dir < 0 && pos == 0) dir = 1;
|
982 |
+
}
|
983 |
+
bias = pos > ch ? "left" : pos < ch ? "right" : bias;
|
984 |
+
if (bias == "left" && r.leftSide) r = r.leftSide;
|
985 |
+
else if (bias == "right" && r.rightSide) r = r.rightSide;
|
986 |
+
return {left: pos < ch ? r.right : r.left,
|
987 |
+
right: pos > ch ? r.left : r.right,
|
988 |
+
top: r.top,
|
989 |
+
bottom: r.bottom};
|
990 |
+
}
|
991 |
+
|
992 |
+
function findCachedMeasurement(cm, line) {
|
993 |
+
var cache = cm.display.measureLineCache;
|
994 |
+
for (var i = 0; i < cache.length; ++i) {
|
995 |
+
var memo = cache[i];
|
996 |
+
if (memo.text == line.text && memo.markedSpans == line.markedSpans &&
|
997 |
+
cm.display.scroller.clientWidth == memo.width &&
|
998 |
+
memo.classes == line.textClass + "|" + line.bgClass + "|" + line.wrapClass)
|
999 |
+
return memo;
|
1000 |
+
}
|
1001 |
+
}
|
1002 |
+
|
1003 |
+
function clearCachedMeasurement(cm, line) {
|
1004 |
+
var exists = findCachedMeasurement(cm, line);
|
1005 |
+
if (exists) exists.text = exists.measure = exists.markedSpans = null;
|
1006 |
+
}
|
1007 |
+
|
1008 |
+
function measureLine(cm, line) {
|
1009 |
+
// First look in the cache
|
1010 |
+
var cached = findCachedMeasurement(cm, line);
|
1011 |
+
if (cached) return cached.measure;
|
1012 |
+
|
1013 |
+
// Failing that, recompute and store result in cache
|
1014 |
+
var measure = measureLineInner(cm, line);
|
1015 |
+
var cache = cm.display.measureLineCache;
|
1016 |
+
var memo = {text: line.text, width: cm.display.scroller.clientWidth,
|
1017 |
+
markedSpans: line.markedSpans, measure: measure,
|
1018 |
+
classes: line.textClass + "|" + line.bgClass + "|" + line.wrapClass};
|
1019 |
+
if (cache.length == 16) cache[++cm.display.measureLineCachePos % 16] = memo;
|
1020 |
+
else cache.push(memo);
|
1021 |
+
return measure;
|
1022 |
+
}
|
1023 |
+
|
1024 |
+
function measureLineInner(cm, line) {
|
1025 |
+
var display = cm.display, measure = emptyArray(line.text.length);
|
1026 |
+
var pre = lineContent(cm, line, measure, true);
|
1027 |
+
|
1028 |
+
// IE does not cache element positions of inline elements between
|
1029 |
+
// calls to getBoundingClientRect. This makes the loop below,
|
1030 |
+
// which gathers the positions of all the characters on the line,
|
1031 |
+
// do an amount of layout work quadratic to the number of
|
1032 |
+
// characters. When line wrapping is off, we try to improve things
|
1033 |
+
// by first subdividing the line into a bunch of inline blocks, so
|
1034 |
+
// that IE can reuse most of the layout information from caches
|
1035 |
+
// for those blocks. This does interfere with line wrapping, so it
|
1036 |
+
// doesn't work when wrapping is on, but in that case the
|
1037 |
+
// situation is slightly better, since IE does cache line-wrapping
|
1038 |
+
// information and only recomputes per-line.
|
1039 |
+
if (ie && !ie_lt8 && !cm.options.lineWrapping && pre.childNodes.length > 100) {
|
1040 |
+
var fragment = document.createDocumentFragment();
|
1041 |
+
var chunk = 10, n = pre.childNodes.length;
|
1042 |
+
for (var i = 0, chunks = Math.ceil(n / chunk); i < chunks; ++i) {
|
1043 |
+
var wrap = elt("div", null, null, "display: inline-block");
|
1044 |
+
for (var j = 0; j < chunk && n; ++j) {
|
1045 |
+
wrap.appendChild(pre.firstChild);
|
1046 |
+
--n;
|
1047 |
+
}
|
1048 |
+
fragment.appendChild(wrap);
|
1049 |
+
}
|
1050 |
+
pre.appendChild(fragment);
|
1051 |
+
}
|
1052 |
+
|
1053 |
+
removeChildrenAndAdd(display.measure, pre);
|
1054 |
+
|
1055 |
+
var outer = getRect(display.lineDiv);
|
1056 |
+
var vranges = [], data = emptyArray(line.text.length), maxBot = pre.offsetHeight;
|
1057 |
+
// Work around an IE7/8 bug where it will sometimes have randomly
|
1058 |
+
// replaced our pre with a clone at this point.
|
1059 |
+
if (ie_lt9 && display.measure.first != pre)
|
1060 |
+
removeChildrenAndAdd(display.measure, pre);
|
1061 |
+
|
1062 |
+
function measureRect(rect) {
|
1063 |
+
var top = rect.top - outer.top, bot = rect.bottom - outer.top;
|
1064 |
+
if (bot > maxBot) bot = maxBot;
|
1065 |
+
if (top < 0) top = 0;
|
1066 |
+
for (var i = vranges.length - 2; i >= 0; i -= 2) {
|
1067 |
+
var rtop = vranges[i], rbot = vranges[i+1];
|
1068 |
+
if (rtop > bot || rbot < top) continue;
|
1069 |
+
if (rtop <= top && rbot >= bot ||
|
1070 |
+
top <= rtop && bot >= rbot ||
|
1071 |
+
Math.min(bot, rbot) - Math.max(top, rtop) >= (bot - top) >> 1) {
|
1072 |
+
vranges[i] = Math.min(top, rtop);
|
1073 |
+
vranges[i+1] = Math.max(bot, rbot);
|
1074 |
+
break;
|
1075 |
+
}
|
1076 |
+
}
|
1077 |
+
if (i < 0) { i = vranges.length; vranges.push(top, bot); }
|
1078 |
+
return {left: rect.left - outer.left,
|
1079 |
+
right: rect.right - outer.left,
|
1080 |
+
top: i, bottom: null};
|
1081 |
+
}
|
1082 |
+
function finishRect(rect) {
|
1083 |
+
rect.bottom = vranges[rect.top+1];
|
1084 |
+
rect.top = vranges[rect.top];
|
1085 |
+
}
|
1086 |
+
|
1087 |
+
for (var i = 0, cur; i < measure.length; ++i) if (cur = measure[i]) {
|
1088 |
+
var node = cur, rect = null;
|
1089 |
+
// A widget might wrap, needs special care
|
1090 |
+
if (/\bCodeMirror-widget\b/.test(cur.className) && cur.getClientRects) {
|
1091 |
+
if (cur.firstChild.nodeType == 1) node = cur.firstChild;
|
1092 |
+
var rects = node.getClientRects();
|
1093 |
+
if (rects.length > 1) {
|
1094 |
+
rect = data[i] = measureRect(rects[0]);
|
1095 |
+
rect.rightSide = measureRect(rects[rects.length - 1]);
|
1096 |
+
}
|
1097 |
+
}
|
1098 |
+
if (!rect) rect = data[i] = measureRect(getRect(node));
|
1099 |
+
if (cur.measureRight) rect.right = getRect(cur.measureRight).left;
|
1100 |
+
if (cur.leftSide) rect.leftSide = measureRect(getRect(cur.leftSide));
|
1101 |
+
}
|
1102 |
+
for (var i = 0, cur; i < data.length; ++i) if (cur = data[i]) {
|
1103 |
+
finishRect(cur);
|
1104 |
+
if (cur.leftSide) finishRect(cur.leftSide);
|
1105 |
+
if (cur.rightSide) finishRect(cur.rightSide);
|
1106 |
+
}
|
1107 |
+
return data;
|
1108 |
+
}
|
1109 |
+
|
1110 |
+
function measureLineWidth(cm, line) {
|
1111 |
+
var hasBadSpan = false;
|
1112 |
+
if (line.markedSpans) for (var i = 0; i < line.markedSpans; ++i) {
|
1113 |
+
var sp = line.markedSpans[i];
|
1114 |
+
if (sp.collapsed && (sp.to == null || sp.to == line.text.length)) hasBadSpan = true;
|
1115 |
+
}
|
1116 |
+
var cached = !hasBadSpan && findCachedMeasurement(cm, line);
|
1117 |
+
if (cached) return measureChar(cm, line, line.text.length, cached.measure, "right").right;
|
1118 |
+
|
1119 |
+
var pre = lineContent(cm, line, null, true);
|
1120 |
+
var end = pre.appendChild(zeroWidthElement(cm.display.measure));
|
1121 |
+
removeChildrenAndAdd(cm.display.measure, pre);
|
1122 |
+
return getRect(end).right - getRect(cm.display.lineDiv).left;
|
1123 |
+
}
|
1124 |
+
|
1125 |
+
function clearCaches(cm) {
|
1126 |
+
cm.display.measureLineCache.length = cm.display.measureLineCachePos = 0;
|
1127 |
+
cm.display.cachedCharWidth = cm.display.cachedTextHeight = null;
|
1128 |
+
if (!cm.options.lineWrapping) cm.display.maxLineChanged = true;
|
1129 |
+
cm.display.lineNumChars = null;
|
1130 |
+
}
|
1131 |
+
|
1132 |
+
function pageScrollX() { return window.pageXOffset || (document.documentElement || document.body).scrollLeft; }
|
1133 |
+
function pageScrollY() { return window.pageYOffset || (document.documentElement || document.body).scrollTop; }
|
1134 |
+
|
1135 |
+
// Context is one of "line", "div" (display.lineDiv), "local"/null (editor), or "page"
|
1136 |
+
function intoCoordSystem(cm, lineObj, rect, context) {
|
1137 |
+
if (lineObj.widgets) for (var i = 0; i < lineObj.widgets.length; ++i) if (lineObj.widgets[i].above) {
|
1138 |
+
var size = widgetHeight(lineObj.widgets[i]);
|
1139 |
+
rect.top += size; rect.bottom += size;
|
1140 |
+
}
|
1141 |
+
if (context == "line") return rect;
|
1142 |
+
if (!context) context = "local";
|
1143 |
+
var yOff = heightAtLine(cm, lineObj);
|
1144 |
+
if (context == "local") yOff += paddingTop(cm.display);
|
1145 |
+
else yOff -= cm.display.viewOffset;
|
1146 |
+
if (context == "page" || context == "window") {
|
1147 |
+
var lOff = getRect(cm.display.lineSpace);
|
1148 |
+
yOff += lOff.top + (context == "window" ? 0 : pageScrollY());
|
1149 |
+
var xOff = lOff.left + (context == "window" ? 0 : pageScrollX());
|
1150 |
+
rect.left += xOff; rect.right += xOff;
|
1151 |
+
}
|
1152 |
+
rect.top += yOff; rect.bottom += yOff;
|
1153 |
+
return rect;
|
1154 |
+
}
|
1155 |
+
|
1156 |
+
// Context may be "window", "page", "div", or "local"/null
|
1157 |
+
// Result is in "div" coords
|
1158 |
+
function fromCoordSystem(cm, coords, context) {
|
1159 |
+
if (context == "div") return coords;
|
1160 |
+
var left = coords.left, top = coords.top;
|
1161 |
+
// First move into "page" coordinate system
|
1162 |
+
if (context == "page") {
|
1163 |
+
left -= pageScrollX();
|
1164 |
+
top -= pageScrollY();
|
1165 |
+
} else if (context == "local" || !context) {
|
1166 |
+
var localBox = getRect(cm.display.sizer);
|
1167 |
+
left += localBox.left;
|
1168 |
+
top += localBox.top;
|
1169 |
+
}
|
1170 |
+
|
1171 |
+
var lineSpaceBox = getRect(cm.display.lineSpace);
|
1172 |
+
return {left: left - lineSpaceBox.left, top: top - lineSpaceBox.top};
|
1173 |
+
}
|
1174 |
+
|
1175 |
+
function charCoords(cm, pos, context, lineObj, bias) {
|
1176 |
+
if (!lineObj) lineObj = getLine(cm.doc, pos.line);
|
1177 |
+
return intoCoordSystem(cm, lineObj, measureChar(cm, lineObj, pos.ch, null, bias), context);
|
1178 |
+
}
|
1179 |
+
|
1180 |
+
function cursorCoords(cm, pos, context, lineObj, measurement) {
|
1181 |
+
lineObj = lineObj || getLine(cm.doc, pos.line);
|
1182 |
+
if (!measurement) measurement = measureLine(cm, lineObj);
|
1183 |
+
function get(ch, right) {
|
1184 |
+
var m = measureChar(cm, lineObj, ch, measurement, right ? "right" : "left");
|
1185 |
+
if (right) m.left = m.right; else m.right = m.left;
|
1186 |
+
return intoCoordSystem(cm, lineObj, m, context);
|
1187 |
+
}
|
1188 |
+
function getBidi(ch, partPos) {
|
1189 |
+
var part = order[partPos], right = part.level % 2;
|
1190 |
+
if (ch == bidiLeft(part) && partPos && part.level < order[partPos - 1].level) {
|
1191 |
+
part = order[--partPos];
|
1192 |
+
ch = bidiRight(part) - (part.level % 2 ? 0 : 1);
|
1193 |
+
right = true;
|
1194 |
+
} else if (ch == bidiRight(part) && partPos < order.length - 1 && part.level < order[partPos + 1].level) {
|
1195 |
+
part = order[++partPos];
|
1196 |
+
ch = bidiLeft(part) - part.level % 2;
|
1197 |
+
right = false;
|
1198 |
+
}
|
1199 |
+
if (right && ch == part.to && ch > part.from) return get(ch - 1);
|
1200 |
+
return get(ch, right);
|
1201 |
+
}
|
1202 |
+
var order = getOrder(lineObj), ch = pos.ch;
|
1203 |
+
if (!order) return get(ch);
|
1204 |
+
var partPos = getBidiPartAt(order, ch);
|
1205 |
+
var val = getBidi(ch, partPos);
|
1206 |
+
if (bidiOther != null) val.other = getBidi(ch, bidiOther);
|
1207 |
+
return val;
|
1208 |
+
}
|
1209 |
+
|
1210 |
+
function PosWithInfo(line, ch, outside, xRel) {
|
1211 |
+
var pos = new Pos(line, ch);
|
1212 |
+
pos.xRel = xRel;
|
1213 |
+
if (outside) pos.outside = true;
|
1214 |
+
return pos;
|
1215 |
+
}
|
1216 |
+
|
1217 |
+
// Coords must be lineSpace-local
|
1218 |
+
function coordsChar(cm, x, y) {
|
1219 |
+
var doc = cm.doc;
|
1220 |
+
y += cm.display.viewOffset;
|
1221 |
+
if (y < 0) return PosWithInfo(doc.first, 0, true, -1);
|
1222 |
+
var lineNo = lineAtHeight(doc, y), last = doc.first + doc.size - 1;
|
1223 |
+
if (lineNo > last)
|
1224 |
+
return PosWithInfo(doc.first + doc.size - 1, getLine(doc, last).text.length, true, 1);
|
1225 |
+
if (x < 0) x = 0;
|
1226 |
+
|
1227 |
+
for (;;) {
|
1228 |
+
var lineObj = getLine(doc, lineNo);
|
1229 |
+
var found = coordsCharInner(cm, lineObj, lineNo, x, y);
|
1230 |
+
var merged = collapsedSpanAtEnd(lineObj);
|
1231 |
+
var mergedPos = merged && merged.find();
|
1232 |
+
if (merged && (found.ch > mergedPos.from.ch || found.ch == mergedPos.from.ch && found.xRel > 0))
|
1233 |
+
lineNo = mergedPos.to.line;
|
1234 |
+
else
|
1235 |
+
return found;
|
1236 |
+
}
|
1237 |
+
}
|
1238 |
+
|
1239 |
+
function coordsCharInner(cm, lineObj, lineNo, x, y) {
|
1240 |
+
var innerOff = y - heightAtLine(cm, lineObj);
|
1241 |
+
var wrongLine = false, adjust = 2 * cm.display.wrapper.clientWidth;
|
1242 |
+
var measurement = measureLine(cm, lineObj);
|
1243 |
+
|
1244 |
+
function getX(ch) {
|
1245 |
+
var sp = cursorCoords(cm, Pos(lineNo, ch), "line",
|
1246 |
+
lineObj, measurement);
|
1247 |
+
wrongLine = true;
|
1248 |
+
if (innerOff > sp.bottom) return sp.left - adjust;
|
1249 |
+
else if (innerOff < sp.top) return sp.left + adjust;
|
1250 |
+
else wrongLine = false;
|
1251 |
+
return sp.left;
|
1252 |
+
}
|
1253 |
+
|
1254 |
+
var bidi = getOrder(lineObj), dist = lineObj.text.length;
|
1255 |
+
var from = lineLeft(lineObj), to = lineRight(lineObj);
|
1256 |
+
var fromX = getX(from), fromOutside = wrongLine, toX = getX(to), toOutside = wrongLine;
|
1257 |
+
|
1258 |
+
if (x > toX) return PosWithInfo(lineNo, to, toOutside, 1);
|
1259 |
+
// Do a binary search between these bounds.
|
1260 |
+
for (;;) {
|
1261 |
+
if (bidi ? to == from || to == moveVisually(lineObj, from, 1) : to - from <= 1) {
|
1262 |
+
var ch = x < fromX || x - fromX <= toX - x ? from : to;
|
1263 |
+
var xDiff = x - (ch == from ? fromX : toX);
|
1264 |
+
while (isExtendingChar.test(lineObj.text.charAt(ch))) ++ch;
|
1265 |
+
var pos = PosWithInfo(lineNo, ch, ch == from ? fromOutside : toOutside,
|
1266 |
+
xDiff < 0 ? -1 : xDiff ? 1 : 0);
|
1267 |
+
return pos;
|
1268 |
+
}
|
1269 |
+
var step = Math.ceil(dist / 2), middle = from + step;
|
1270 |
+
if (bidi) {
|
1271 |
+
middle = from;
|
1272 |
+
for (var i = 0; i < step; ++i) middle = moveVisually(lineObj, middle, 1);
|
1273 |
+
}
|
1274 |
+
var middleX = getX(middle);
|
1275 |
+
if (middleX > x) {to = middle; toX = middleX; if (toOutside = wrongLine) toX += 1000; dist = step;}
|
1276 |
+
else {from = middle; fromX = middleX; fromOutside = wrongLine; dist -= step;}
|
1277 |
+
}
|
1278 |
+
}
|
1279 |
+
|
1280 |
+
var measureText;
|
1281 |
+
function textHeight(display) {
|
1282 |
+
if (display.cachedTextHeight != null) return display.cachedTextHeight;
|
1283 |
+
if (measureText == null) {
|
1284 |
+
measureText = elt("pre");
|
1285 |
+
// Measure a bunch of lines, for browsers that compute
|
1286 |
+
// fractional heights.
|
1287 |
+
for (var i = 0; i < 49; ++i) {
|
1288 |
+
measureText.appendChild(document.createTextNode("x"));
|
1289 |
+
measureText.appendChild(elt("br"));
|
1290 |
+
}
|
1291 |
+
measureText.appendChild(document.createTextNode("x"));
|
1292 |
+
}
|
1293 |
+
removeChildrenAndAdd(display.measure, measureText);
|
1294 |
+
var height = measureText.offsetHeight / 50;
|
1295 |
+
if (height > 3) display.cachedTextHeight = height;
|
1296 |
+
removeChildren(display.measure);
|
1297 |
+
return height || 1;
|
1298 |
+
}
|
1299 |
+
|
1300 |
+
function charWidth(display) {
|
1301 |
+
if (display.cachedCharWidth != null) return display.cachedCharWidth;
|
1302 |
+
var anchor = elt("span", "x");
|
1303 |
+
var pre = elt("pre", [anchor]);
|
1304 |
+
removeChildrenAndAdd(display.measure, pre);
|
1305 |
+
var width = anchor.offsetWidth;
|
1306 |
+
if (width > 2) display.cachedCharWidth = width;
|
1307 |
+
return width || 10;
|
1308 |
+
}
|
1309 |
+
|
1310 |
+
// OPERATIONS
|
1311 |
+
|
1312 |
+
// Operations are used to wrap changes in such a way that each
|
1313 |
+
// change won't have to update the cursor and display (which would
|
1314 |
+
// be awkward, slow, and error-prone), but instead updates are
|
1315 |
+
// batched and then all combined and executed at once.
|
1316 |
+
|
1317 |
+
var nextOpId = 0;
|
1318 |
+
function startOperation(cm) {
|
1319 |
+
cm.curOp = {
|
1320 |
+
// An array of ranges of lines that have to be updated. See
|
1321 |
+
// updateDisplay.
|
1322 |
+
changes: [],
|
1323 |
+
forceUpdate: false,
|
1324 |
+
updateInput: null,
|
1325 |
+
userSelChange: null,
|
1326 |
+
textChanged: null,
|
1327 |
+
selectionChanged: false,
|
1328 |
+
cursorActivity: false,
|
1329 |
+
updateMaxLine: false,
|
1330 |
+
updateScrollPos: false,
|
1331 |
+
id: ++nextOpId
|
1332 |
+
};
|
1333 |
+
if (!delayedCallbackDepth++) delayedCallbacks = [];
|
1334 |
+
}
|
1335 |
+
|
1336 |
+
function endOperation(cm) {
|
1337 |
+
var op = cm.curOp, doc = cm.doc, display = cm.display;
|
1338 |
+
cm.curOp = null;
|
1339 |
+
|
1340 |
+
if (op.updateMaxLine) computeMaxLength(cm);
|
1341 |
+
if (display.maxLineChanged && !cm.options.lineWrapping && display.maxLine) {
|
1342 |
+
var width = measureLineWidth(cm, display.maxLine);
|
1343 |
+
display.sizer.style.minWidth = Math.max(0, width + 3 + scrollerCutOff) + "px";
|
1344 |
+
display.maxLineChanged = false;
|
1345 |
+
var maxScrollLeft = Math.max(0, display.sizer.offsetLeft + display.sizer.offsetWidth - display.scroller.clientWidth);
|
1346 |
+
if (maxScrollLeft < doc.scrollLeft && !op.updateScrollPos)
|
1347 |
+
setScrollLeft(cm, Math.min(display.scroller.scrollLeft, maxScrollLeft), true);
|
1348 |
+
}
|
1349 |
+
var newScrollPos, updated;
|
1350 |
+
if (op.updateScrollPos) {
|
1351 |
+
newScrollPos = op.updateScrollPos;
|
1352 |
+
} else if (op.selectionChanged && display.scroller.clientHeight) { // don't rescroll if not visible
|
1353 |
+
var coords = cursorCoords(cm, doc.sel.head);
|
1354 |
+
newScrollPos = calculateScrollPos(cm, coords.left, coords.top, coords.left, coords.bottom);
|
1355 |
+
}
|
1356 |
+
if (op.changes.length || op.forceUpdate || newScrollPos && newScrollPos.scrollTop != null) {
|
1357 |
+
updated = updateDisplay(cm, op.changes, newScrollPos && newScrollPos.scrollTop, op.forceUpdate);
|
1358 |
+
if (cm.display.scroller.offsetHeight) cm.doc.scrollTop = cm.display.scroller.scrollTop;
|
1359 |
+
}
|
1360 |
+
if (!updated && op.selectionChanged) updateSelection(cm);
|
1361 |
+
if (op.updateScrollPos) {
|
1362 |
+
display.scroller.scrollTop = display.scrollbarV.scrollTop = doc.scrollTop = newScrollPos.scrollTop;
|
1363 |
+
display.scroller.scrollLeft = display.scrollbarH.scrollLeft = doc.scrollLeft = newScrollPos.scrollLeft;
|
1364 |
+
alignHorizontally(cm);
|
1365 |
+
if (op.scrollToPos)
|
1366 |
+
scrollPosIntoView(cm, clipPos(cm.doc, op.scrollToPos), op.scrollToPosMargin);
|
1367 |
+
} else if (newScrollPos) {
|
1368 |
+
scrollCursorIntoView(cm);
|
1369 |
+
}
|
1370 |
+
if (op.selectionChanged) restartBlink(cm);
|
1371 |
+
|
1372 |
+
if (cm.state.focused && op.updateInput)
|
1373 |
+
resetInput(cm, op.userSelChange);
|
1374 |
+
|
1375 |
+
var hidden = op.maybeHiddenMarkers, unhidden = op.maybeUnhiddenMarkers;
|
1376 |
+
if (hidden) for (var i = 0; i < hidden.length; ++i)
|
1377 |
+
if (!hidden[i].lines.length) signal(hidden[i], "hide");
|
1378 |
+
if (unhidden) for (var i = 0; i < unhidden.length; ++i)
|
1379 |
+
if (unhidden[i].lines.length) signal(unhidden[i], "unhide");
|
1380 |
+
|
1381 |
+
var delayed;
|
1382 |
+
if (!--delayedCallbackDepth) {
|
1383 |
+
delayed = delayedCallbacks;
|
1384 |
+
delayedCallbacks = null;
|
1385 |
+
}
|
1386 |
+
if (op.textChanged)
|
1387 |
+
signal(cm, "change", cm, op.textChanged);
|
1388 |
+
if (op.cursorActivity) signal(cm, "cursorActivity", cm);
|
1389 |
+
if (delayed) for (var i = 0; i < delayed.length; ++i) delayed[i]();
|
1390 |
+
}
|
1391 |
+
|
1392 |
+
// Wraps a function in an operation. Returns the wrapped function.
|
1393 |
+
function operation(cm1, f) {
|
1394 |
+
return function() {
|
1395 |
+
var cm = cm1 || this, withOp = !cm.curOp;
|
1396 |
+
if (withOp) startOperation(cm);
|
1397 |
+
try { var result = f.apply(cm, arguments); }
|
1398 |
+
finally { if (withOp) endOperation(cm); }
|
1399 |
+
return result;
|
1400 |
+
};
|
1401 |
+
}
|
1402 |
+
function docOperation(f) {
|
1403 |
+
return function() {
|
1404 |
+
var withOp = this.cm && !this.cm.curOp, result;
|
1405 |
+
if (withOp) startOperation(this.cm);
|
1406 |
+
try { result = f.apply(this, arguments); }
|
1407 |
+
finally { if (withOp) endOperation(this.cm); }
|
1408 |
+
return result;
|
1409 |
+
};
|
1410 |
+
}
|
1411 |
+
function runInOp(cm, f) {
|
1412 |
+
var withOp = !cm.curOp, result;
|
1413 |
+
if (withOp) startOperation(cm);
|
1414 |
+
try { result = f(); }
|
1415 |
+
finally { if (withOp) endOperation(cm); }
|
1416 |
+
return result;
|
1417 |
+
}
|
1418 |
+
|
1419 |
+
function regChange(cm, from, to, lendiff) {
|
1420 |
+
if (from == null) from = cm.doc.first;
|
1421 |
+
if (to == null) to = cm.doc.first + cm.doc.size;
|
1422 |
+
cm.curOp.changes.push({from: from, to: to, diff: lendiff});
|
1423 |
+
}
|
1424 |
+
|
1425 |
+
// INPUT HANDLING
|
1426 |
+
|
1427 |
+
function slowPoll(cm) {
|
1428 |
+
if (cm.display.pollingFast) return;
|
1429 |
+
cm.display.poll.set(cm.options.pollInterval, function() {
|
1430 |
+
readInput(cm);
|
1431 |
+
if (cm.state.focused) slowPoll(cm);
|
1432 |
+
});
|
1433 |
+
}
|
1434 |
+
|
1435 |
+
function fastPoll(cm) {
|
1436 |
+
var missed = false;
|
1437 |
+
cm.display.pollingFast = true;
|
1438 |
+
function p() {
|
1439 |
+
var changed = readInput(cm);
|
1440 |
+
if (!changed && !missed) {missed = true; cm.display.poll.set(60, p);}
|
1441 |
+
else {cm.display.pollingFast = false; slowPoll(cm);}
|
1442 |
+
}
|
1443 |
+
cm.display.poll.set(20, p);
|
1444 |
+
}
|
1445 |
+
|
1446 |
+
// prevInput is a hack to work with IME. If we reset the textarea
|
1447 |
+
// on every change, that breaks IME. So we look for changes
|
1448 |
+
// compared to the previous content instead. (Modern browsers have
|
1449 |
+
// events that indicate IME taking place, but these are not widely
|
1450 |
+
// supported or compatible enough yet to rely on.)
|
1451 |
+
function readInput(cm) {
|
1452 |
+
var input = cm.display.input, prevInput = cm.display.prevInput, doc = cm.doc, sel = doc.sel;
|
1453 |
+
if (!cm.state.focused || hasSelection(input) || isReadOnly(cm) || cm.state.disableInput) return false;
|
1454 |
+
var text = input.value;
|
1455 |
+
if (text == prevInput && posEq(sel.from, sel.to)) return false;
|
1456 |
+
if (ie && !ie_lt9 && cm.display.inputHasSelection === text) {
|
1457 |
+
resetInput(cm, true);
|
1458 |
+
return false;
|
1459 |
+
}
|
1460 |
+
|
1461 |
+
var withOp = !cm.curOp;
|
1462 |
+
if (withOp) startOperation(cm);
|
1463 |
+
sel.shift = false;
|
1464 |
+
var same = 0, l = Math.min(prevInput.length, text.length);
|
1465 |
+
while (same < l && prevInput.charCodeAt(same) == text.charCodeAt(same)) ++same;
|
1466 |
+
var from = sel.from, to = sel.to;
|
1467 |
+
if (same < prevInput.length)
|
1468 |
+
from = Pos(from.line, from.ch - (prevInput.length - same));
|
1469 |
+
else if (cm.state.overwrite && posEq(from, to) && !cm.state.pasteIncoming)
|
1470 |
+
to = Pos(to.line, Math.min(getLine(doc, to.line).text.length, to.ch + (text.length - same)));
|
1471 |
+
|
1472 |
+
var updateInput = cm.curOp.updateInput;
|
1473 |
+
var changeEvent = {from: from, to: to, text: splitLines(text.slice(same)),
|
1474 |
+
origin: cm.state.pasteIncoming ? "paste" : "+input"};
|
1475 |
+
makeChange(cm.doc, changeEvent, "end");
|
1476 |
+
cm.curOp.updateInput = updateInput;
|
1477 |
+
signalLater(cm, "inputRead", cm, changeEvent);
|
1478 |
+
|
1479 |
+
if (text.length > 1000 || text.indexOf("\n") > -1) input.value = cm.display.prevInput = "";
|
1480 |
+
else cm.display.prevInput = text;
|
1481 |
+
if (withOp) endOperation(cm);
|
1482 |
+
cm.state.pasteIncoming = false;
|
1483 |
+
return true;
|
1484 |
+
}
|
1485 |
+
|
1486 |
+
function resetInput(cm, user) {
|
1487 |
+
var minimal, selected, doc = cm.doc;
|
1488 |
+
if (!posEq(doc.sel.from, doc.sel.to)) {
|
1489 |
+
cm.display.prevInput = "";
|
1490 |
+
minimal = hasCopyEvent &&
|
1491 |
+
(doc.sel.to.line - doc.sel.from.line > 100 || (selected = cm.getSelection()).length > 1000);
|
1492 |
+
var content = minimal ? "-" : selected || cm.getSelection();
|
1493 |
+
cm.display.input.value = content;
|
1494 |
+
if (cm.state.focused) selectInput(cm.display.input);
|
1495 |
+
if (ie && !ie_lt9) cm.display.inputHasSelection = content;
|
1496 |
+
} else if (user) {
|
1497 |
+
cm.display.prevInput = cm.display.input.value = "";
|
1498 |
+
if (ie && !ie_lt9) cm.display.inputHasSelection = null;
|
1499 |
+
}
|
1500 |
+
cm.display.inaccurateSelection = minimal;
|
1501 |
+
}
|
1502 |
+
|
1503 |
+
function focusInput(cm) {
|
1504 |
+
if (cm.options.readOnly != "nocursor" && (!mobile || document.activeElement != cm.display.input))
|
1505 |
+
cm.display.input.focus();
|
1506 |
+
}
|
1507 |
+
|
1508 |
+
function isReadOnly(cm) {
|
1509 |
+
return cm.options.readOnly || cm.doc.cantEdit;
|
1510 |
+
}
|
1511 |
+
|
1512 |
+
// EVENT HANDLERS
|
1513 |
+
|
1514 |
+
function registerEventHandlers(cm) {
|
1515 |
+
var d = cm.display;
|
1516 |
+
on(d.scroller, "mousedown", operation(cm, onMouseDown));
|
1517 |
+
if (ie)
|
1518 |
+
on(d.scroller, "dblclick", operation(cm, function(e) {
|
1519 |
+
if (signalDOMEvent(cm, e)) return;
|
1520 |
+
var pos = posFromMouse(cm, e);
|
1521 |
+
if (!pos || clickInGutter(cm, e) || eventInWidget(cm.display, e)) return;
|
1522 |
+
e_preventDefault(e);
|
1523 |
+
var word = findWordAt(getLine(cm.doc, pos.line).text, pos);
|
1524 |
+
extendSelection(cm.doc, word.from, word.to);
|
1525 |
+
}));
|
1526 |
+
else
|
1527 |
+
on(d.scroller, "dblclick", function(e) { signalDOMEvent(cm, e) || e_preventDefault(e); });
|
1528 |
+
on(d.lineSpace, "selectstart", function(e) {
|
1529 |
+
if (!eventInWidget(d, e)) e_preventDefault(e);
|
1530 |
+
});
|
1531 |
+
// Gecko browsers fire contextmenu *after* opening the menu, at
|
1532 |
+
// which point we can't mess with it anymore. Context menu is
|
1533 |
+
// handled in onMouseDown for Gecko.
|
1534 |
+
if (!captureMiddleClick) on(d.scroller, "contextmenu", function(e) {onContextMenu(cm, e);});
|
1535 |
+
|
1536 |
+
on(d.scroller, "scroll", function() {
|
1537 |
+
if (d.scroller.clientHeight) {
|
1538 |
+
setScrollTop(cm, d.scroller.scrollTop);
|
1539 |
+
setScrollLeft(cm, d.scroller.scrollLeft, true);
|
1540 |
+
signal(cm, "scroll", cm);
|
1541 |
+
}
|
1542 |
+
});
|
1543 |
+
on(d.scrollbarV, "scroll", function() {
|
1544 |
+
if (d.scroller.clientHeight) setScrollTop(cm, d.scrollbarV.scrollTop);
|
1545 |
+
});
|
1546 |
+
on(d.scrollbarH, "scroll", function() {
|
1547 |
+
if (d.scroller.clientHeight) setScrollLeft(cm, d.scrollbarH.scrollLeft);
|
1548 |
+
});
|
1549 |
+
|
1550 |
+
on(d.scroller, "mousewheel", function(e){onScrollWheel(cm, e);});
|
1551 |
+
on(d.scroller, "DOMMouseScroll", function(e){onScrollWheel(cm, e);});
|
1552 |
+
|
1553 |
+
function reFocus() { if (cm.state.focused) setTimeout(bind(focusInput, cm), 0); }
|
1554 |
+
on(d.scrollbarH, "mousedown", reFocus);
|
1555 |
+
on(d.scrollbarV, "mousedown", reFocus);
|
1556 |
+
// Prevent wrapper from ever scrolling
|
1557 |
+
on(d.wrapper, "scroll", function() { d.wrapper.scrollTop = d.wrapper.scrollLeft = 0; });
|
1558 |
+
|
1559 |
+
var resizeTimer;
|
1560 |
+
function onResize() {
|
1561 |
+
if (resizeTimer == null) resizeTimer = setTimeout(function() {
|
1562 |
+
resizeTimer = null;
|
1563 |
+
// Might be a text scaling operation, clear size caches.
|
1564 |
+
d.cachedCharWidth = d.cachedTextHeight = knownScrollbarWidth = null;
|
1565 |
+
clearCaches(cm);
|
1566 |
+
runInOp(cm, bind(regChange, cm));
|
1567 |
+
}, 100);
|
1568 |
+
}
|
1569 |
+
on(window, "resize", onResize);
|
1570 |
+
// Above handler holds on to the editor and its data structures.
|
1571 |
+
// Here we poll to unregister it when the editor is no longer in
|
1572 |
+
// the document, so that it can be garbage-collected.
|
1573 |
+
function unregister() {
|
1574 |
+
for (var p = d.wrapper.parentNode; p && p != document.body; p = p.parentNode) {}
|
1575 |
+
if (p) setTimeout(unregister, 5000);
|
1576 |
+
else off(window, "resize", onResize);
|
1577 |
+
}
|
1578 |
+
setTimeout(unregister, 5000);
|
1579 |
+
|
1580 |
+
on(d.input, "keyup", operation(cm, function(e) {
|
1581 |
+
if (signalDOMEvent(cm, e) || cm.options.onKeyEvent && cm.options.onKeyEvent(cm, addStop(e))) return;
|
1582 |
+
if (e.keyCode == 16) cm.doc.sel.shift = false;
|
1583 |
+
}));
|
1584 |
+
on(d.input, "input", bind(fastPoll, cm));
|
1585 |
+
on(d.input, "keydown", operation(cm, onKeyDown));
|
1586 |
+
on(d.input, "keypress", operation(cm, onKeyPress));
|
1587 |
+
on(d.input, "focus", bind(onFocus, cm));
|
1588 |
+
on(d.input, "blur", bind(onBlur, cm));
|
1589 |
+
|
1590 |
+
function drag_(e) {
|
1591 |
+
if (signalDOMEvent(cm, e) || cm.options.onDragEvent && cm.options.onDragEvent(cm, addStop(e))) return;
|
1592 |
+
e_stop(e);
|
1593 |
+
}
|
1594 |
+
if (cm.options.dragDrop) {
|
1595 |
+
on(d.scroller, "dragstart", function(e){onDragStart(cm, e);});
|
1596 |
+
on(d.scroller, "dragenter", drag_);
|
1597 |
+
on(d.scroller, "dragover", drag_);
|
1598 |
+
on(d.scroller, "drop", operation(cm, onDrop));
|
1599 |
+
}
|
1600 |
+
on(d.scroller, "paste", function(e){
|
1601 |
+
if (eventInWidget(d, e)) return;
|
1602 |
+
focusInput(cm);
|
1603 |
+
fastPoll(cm);
|
1604 |
+
});
|
1605 |
+
on(d.input, "paste", function() {
|
1606 |
+
cm.state.pasteIncoming = true;
|
1607 |
+
fastPoll(cm);
|
1608 |
+
});
|
1609 |
+
|
1610 |
+
function prepareCopy() {
|
1611 |
+
if (d.inaccurateSelection) {
|
1612 |
+
d.prevInput = "";
|
1613 |
+
d.inaccurateSelection = false;
|
1614 |
+
d.input.value = cm.getSelection();
|
1615 |
+
selectInput(d.input);
|
1616 |
+
}
|
1617 |
+
}
|
1618 |
+
on(d.input, "cut", prepareCopy);
|
1619 |
+
on(d.input, "copy", prepareCopy);
|
1620 |
+
|
1621 |
+
// Needed to handle Tab key in KHTML
|
1622 |
+
if (khtml) on(d.sizer, "mouseup", function() {
|
1623 |
+
if (document.activeElement == d.input) d.input.blur();
|
1624 |
+
focusInput(cm);
|
1625 |
+
});
|
1626 |
+
}
|
1627 |
+
|
1628 |
+
function eventInWidget(display, e) {
|
1629 |
+
for (var n = e_target(e); n != display.wrapper; n = n.parentNode) {
|
1630 |
+
if (!n || n.ignoreEvents || n.parentNode == display.sizer && n != display.mover) return true;
|
1631 |
+
}
|
1632 |
+
}
|
1633 |
+
|
1634 |
+
function posFromMouse(cm, e, liberal) {
|
1635 |
+
var display = cm.display;
|
1636 |
+
if (!liberal) {
|
1637 |
+
var target = e_target(e);
|
1638 |
+
if (target == display.scrollbarH || target == display.scrollbarH.firstChild ||
|
1639 |
+
target == display.scrollbarV || target == display.scrollbarV.firstChild ||
|
1640 |
+
target == display.scrollbarFiller || target == display.gutterFiller) return null;
|
1641 |
+
}
|
1642 |
+
var x, y, space = getRect(display.lineSpace);
|
1643 |
+
// Fails unpredictably on IE[67] when mouse is dragged around quickly.
|
1644 |
+
try { x = e.clientX; y = e.clientY; } catch (e) { return null; }
|
1645 |
+
return coordsChar(cm, x - space.left, y - space.top);
|
1646 |
+
}
|
1647 |
+
|
1648 |
+
var lastClick, lastDoubleClick;
|
1649 |
+
function onMouseDown(e) {
|
1650 |
+
if (signalDOMEvent(this, e)) return;
|
1651 |
+
var cm = this, display = cm.display, doc = cm.doc, sel = doc.sel;
|
1652 |
+
sel.shift = e.shiftKey;
|
1653 |
+
|
1654 |
+
if (eventInWidget(display, e)) {
|
1655 |
+
if (!webkit) {
|
1656 |
+
display.scroller.draggable = false;
|
1657 |
+
setTimeout(function(){display.scroller.draggable = true;}, 100);
|
1658 |
+
}
|
1659 |
+
return;
|
1660 |
+
}
|
1661 |
+
if (clickInGutter(cm, e)) return;
|
1662 |
+
var start = posFromMouse(cm, e);
|
1663 |
+
|
1664 |
+
switch (e_button(e)) {
|
1665 |
+
case 3:
|
1666 |
+
if (captureMiddleClick) onContextMenu.call(cm, cm, e);
|
1667 |
+
return;
|
1668 |
+
case 2:
|
1669 |
+
if (start) extendSelection(cm.doc, start);
|
1670 |
+
setTimeout(bind(focusInput, cm), 20);
|
1671 |
+
e_preventDefault(e);
|
1672 |
+
return;
|
1673 |
+
}
|
1674 |
+
// For button 1, if it was clicked inside the editor
|
1675 |
+
// (posFromMouse returning non-null), we have to adjust the
|
1676 |
+
// selection.
|
1677 |
+
if (!start) {if (e_target(e) == display.scroller) e_preventDefault(e); return;}
|
1678 |
+
|
1679 |
+
if (!cm.state.focused) onFocus(cm);
|
1680 |
+
|
1681 |
+
var now = +new Date, type = "single";
|
1682 |
+
if (lastDoubleClick && lastDoubleClick.time > now - 400 && posEq(lastDoubleClick.pos, start)) {
|
1683 |
+
type = "triple";
|
1684 |
+
e_preventDefault(e);
|
1685 |
+
setTimeout(bind(focusInput, cm), 20);
|
1686 |
+
selectLine(cm, start.line);
|
1687 |
+
} else if (lastClick && lastClick.time > now - 400 && posEq(lastClick.pos, start)) {
|
1688 |
+
type = "double";
|
1689 |
+
lastDoubleClick = {time: now, pos: start};
|
1690 |
+
e_preventDefault(e);
|
1691 |
+
var word = findWordAt(getLine(doc, start.line).text, start);
|
1692 |
+
extendSelection(cm.doc, word.from, word.to);
|
1693 |
+
} else { lastClick = {time: now, pos: start}; }
|
1694 |
+
|
1695 |
+
var last = start;
|
1696 |
+
if (cm.options.dragDrop && dragAndDrop && !isReadOnly(cm) && !posEq(sel.from, sel.to) &&
|
1697 |
+
!posLess(start, sel.from) && !posLess(sel.to, start) && type == "single") {
|
1698 |
+
var dragEnd = operation(cm, function(e2) {
|
1699 |
+
if (webkit) display.scroller.draggable = false;
|
1700 |
+
cm.state.draggingText = false;
|
1701 |
+
off(document, "mouseup", dragEnd);
|
1702 |
+
off(display.scroller, "drop", dragEnd);
|
1703 |
+
if (Math.abs(e.clientX - e2.clientX) + Math.abs(e.clientY - e2.clientY) < 10) {
|
1704 |
+
e_preventDefault(e2);
|
1705 |
+
extendSelection(cm.doc, start);
|
1706 |
+
focusInput(cm);
|
1707 |
+
}
|
1708 |
+
});
|
1709 |
+
// Let the drag handler handle this.
|
1710 |
+
if (webkit) display.scroller.draggable = true;
|
1711 |
+
cm.state.draggingText = dragEnd;
|
1712 |
+
// IE's approach to draggable
|
1713 |
+
if (display.scroller.dragDrop) display.scroller.dragDrop();
|
1714 |
+
on(document, "mouseup", dragEnd);
|
1715 |
+
on(display.scroller, "drop", dragEnd);
|
1716 |
+
return;
|
1717 |
+
}
|
1718 |
+
e_preventDefault(e);
|
1719 |
+
if (type == "single") extendSelection(cm.doc, clipPos(doc, start));
|
1720 |
+
|
1721 |
+
var startstart = sel.from, startend = sel.to, lastPos = start;
|
1722 |
+
|
1723 |
+
function doSelect(cur) {
|
1724 |
+
if (posEq(lastPos, cur)) return;
|
1725 |
+
lastPos = cur;
|
1726 |
+
|
1727 |
+
if (type == "single") {
|
1728 |
+
extendSelection(cm.doc, clipPos(doc, start), cur);
|
1729 |
+
return;
|
1730 |
+
}
|
1731 |
+
|
1732 |
+
startstart = clipPos(doc, startstart);
|
1733 |
+
startend = clipPos(doc, startend);
|
1734 |
+
if (type == "double") {
|
1735 |
+
var word = findWordAt(getLine(doc, cur.line).text, cur);
|
1736 |
+
if (posLess(cur, startstart)) extendSelection(cm.doc, word.from, startend);
|
1737 |
+
else extendSelection(cm.doc, startstart, word.to);
|
1738 |
+
} else if (type == "triple") {
|
1739 |
+
if (posLess(cur, startstart)) extendSelection(cm.doc, startend, clipPos(doc, Pos(cur.line, 0)));
|
1740 |
+
else extendSelection(cm.doc, startstart, clipPos(doc, Pos(cur.line + 1, 0)));
|
1741 |
+
}
|
1742 |
+
}
|
1743 |
+
|
1744 |
+
var editorSize = getRect(display.wrapper);
|
1745 |
+
// Used to ensure timeout re-tries don't fire when another extend
|
1746 |
+
// happened in the meantime (clearTimeout isn't reliable -- at
|
1747 |
+
// least on Chrome, the timeouts still happen even when cleared,
|
1748 |
+
// if the clear happens after their scheduled firing time).
|
1749 |
+
var counter = 0;
|
1750 |
+
|
1751 |
+
function extend(e) {
|
1752 |
+
var curCount = ++counter;
|
1753 |
+
var cur = posFromMouse(cm, e, true);
|
1754 |
+
if (!cur) return;
|
1755 |
+
if (!posEq(cur, last)) {
|
1756 |
+
if (!cm.state.focused) onFocus(cm);
|
1757 |
+
last = cur;
|
1758 |
+
doSelect(cur);
|
1759 |
+
var visible = visibleLines(display, doc);
|
1760 |
+
if (cur.line >= visible.to || cur.line < visible.from)
|
1761 |
+
setTimeout(operation(cm, function(){if (counter == curCount) extend(e);}), 150);
|
1762 |
+
} else {
|
1763 |
+
var outside = e.clientY < editorSize.top ? -20 : e.clientY > editorSize.bottom ? 20 : 0;
|
1764 |
+
if (outside) setTimeout(operation(cm, function() {
|
1765 |
+
if (counter != curCount) return;
|
1766 |
+
display.scroller.scrollTop += outside;
|
1767 |
+
extend(e);
|
1768 |
+
}), 50);
|
1769 |
+
}
|
1770 |
+
}
|
1771 |
+
|
1772 |
+
function done(e) {
|
1773 |
+
counter = Infinity;
|
1774 |
+
e_preventDefault(e);
|
1775 |
+
focusInput(cm);
|
1776 |
+
off(document, "mousemove", move);
|
1777 |
+
off(document, "mouseup", up);
|
1778 |
+
}
|
1779 |
+
|
1780 |
+
var move = operation(cm, function(e) {
|
1781 |
+
if (!ie && !e_button(e)) done(e);
|
1782 |
+
else extend(e);
|
1783 |
+
});
|
1784 |
+
var up = operation(cm, done);
|
1785 |
+
on(document, "mousemove", move);
|
1786 |
+
on(document, "mouseup", up);
|
1787 |
+
}
|
1788 |
+
|
1789 |
+
function clickInGutter(cm, e) {
|
1790 |
+
var display = cm.display;
|
1791 |
+
try { var mX = e.clientX, mY = e.clientY; }
|
1792 |
+
catch(e) { return false; }
|
1793 |
+
|
1794 |
+
if (mX >= Math.floor(getRect(display.gutters).right)) return false;
|
1795 |
+
e_preventDefault(e);
|
1796 |
+
if (!hasHandler(cm, "gutterClick")) return true;
|
1797 |
+
|
1798 |
+
var lineBox = getRect(display.lineDiv);
|
1799 |
+
if (mY > lineBox.bottom) return true;
|
1800 |
+
mY -= lineBox.top - display.viewOffset;
|
1801 |
+
|
1802 |
+
for (var i = 0; i < cm.options.gutters.length; ++i) {
|
1803 |
+
var g = display.gutters.childNodes[i];
|
1804 |
+
if (g && getRect(g).right >= mX) {
|
1805 |
+
var line = lineAtHeight(cm.doc, mY);
|
1806 |
+
var gutter = cm.options.gutters[i];
|
1807 |
+
signalLater(cm, "gutterClick", cm, line, gutter, e);
|
1808 |
+
break;
|
1809 |
+
}
|
1810 |
+
}
|
1811 |
+
return true;
|
1812 |
+
}
|
1813 |
+
|
1814 |
+
// Kludge to work around strange IE behavior where it'll sometimes
|
1815 |
+
// re-fire a series of drag-related events right after the drop (#1551)
|
1816 |
+
var lastDrop = 0;
|
1817 |
+
|
1818 |
+
function onDrop(e) {
|
1819 |
+
var cm = this;
|
1820 |
+
if (signalDOMEvent(cm, e) || eventInWidget(cm.display, e) || (cm.options.onDragEvent && cm.options.onDragEvent(cm, addStop(e))))
|
1821 |
+
return;
|
1822 |
+
e_preventDefault(e);
|
1823 |
+
if (ie) lastDrop = +new Date;
|
1824 |
+
var pos = posFromMouse(cm, e, true), files = e.dataTransfer.files;
|
1825 |
+
if (!pos || isReadOnly(cm)) return;
|
1826 |
+
if (files && files.length && window.FileReader && window.File) {
|
1827 |
+
var n = files.length, text = Array(n), read = 0;
|
1828 |
+
var loadFile = function(file, i) {
|
1829 |
+
var reader = new FileReader;
|
1830 |
+
reader.onload = function() {
|
1831 |
+
text[i] = reader.result;
|
1832 |
+
if (++read == n) {
|
1833 |
+
pos = clipPos(cm.doc, pos);
|
1834 |
+
makeChange(cm.doc, {from: pos, to: pos, text: splitLines(text.join("\n")), origin: "paste"}, "around");
|
1835 |
+
}
|
1836 |
+
};
|
1837 |
+
reader.readAsText(file);
|
1838 |
+
};
|
1839 |
+
for (var i = 0; i < n; ++i) loadFile(files[i], i);
|
1840 |
+
} else {
|
1841 |
+
// Don't do a replace if the drop happened inside of the selected text.
|
1842 |
+
if (cm.state.draggingText && !(posLess(pos, cm.doc.sel.from) || posLess(cm.doc.sel.to, pos))) {
|
1843 |
+
cm.state.draggingText(e);
|
1844 |
+
// Ensure the editor is re-focused
|
1845 |
+
setTimeout(bind(focusInput, cm), 20);
|
1846 |
+
return;
|
1847 |
+
}
|
1848 |
+
try {
|
1849 |
+
var text = e.dataTransfer.getData("Text");
|
1850 |
+
if (text) {
|
1851 |
+
var curFrom = cm.doc.sel.from, curTo = cm.doc.sel.to;
|
1852 |
+
setSelection(cm.doc, pos, pos);
|
1853 |
+
if (cm.state.draggingText) replaceRange(cm.doc, "", curFrom, curTo, "paste");
|
1854 |
+
cm.replaceSelection(text, null, "paste");
|
1855 |
+
focusInput(cm);
|
1856 |
+
onFocus(cm);
|
1857 |
+
}
|
1858 |
+
}
|
1859 |
+
catch(e){}
|
1860 |
+
}
|
1861 |
+
}
|
1862 |
+
|
1863 |
+
function onDragStart(cm, e) {
|
1864 |
+
if (ie && (!cm.state.draggingText || +new Date - lastDrop < 100)) { e_stop(e); return; }
|
1865 |
+
if (signalDOMEvent(cm, e) || eventInWidget(cm.display, e)) return;
|
1866 |
+
|
1867 |
+
var txt = cm.getSelection();
|
1868 |
+
e.dataTransfer.setData("Text", txt);
|
1869 |
+
|
1870 |
+
// Use dummy image instead of default browsers image.
|
1871 |
+
// Recent Safari (~6.0.2) have a tendency to segfault when this happens, so we don't do it there.
|
1872 |
+
if (e.dataTransfer.setDragImage && !safari) {
|
1873 |
+
var img = elt("img", null, null, "position: fixed; left: 0; top: 0;");
|
1874 |
+
if (opera) {
|
1875 |
+
img.width = img.height = 1;
|
1876 |
+
cm.display.wrapper.appendChild(img);
|
1877 |
+
// Force a relayout, or Opera won't use our image for some obscure reason
|
1878 |
+
img._top = img.offsetTop;
|
1879 |
+
}
|
1880 |
+
e.dataTransfer.setDragImage(img, 0, 0);
|
1881 |
+
if (opera) img.parentNode.removeChild(img);
|
1882 |
+
}
|
1883 |
+
}
|
1884 |
+
|
1885 |
+
function setScrollTop(cm, val) {
|
1886 |
+
if (Math.abs(cm.doc.scrollTop - val) < 2) return;
|
1887 |
+
cm.doc.scrollTop = val;
|
1888 |
+
if (!gecko) updateDisplay(cm, [], val);
|
1889 |
+
if (cm.display.scroller.scrollTop != val) cm.display.scroller.scrollTop = val;
|
1890 |
+
if (cm.display.scrollbarV.scrollTop != val) cm.display.scrollbarV.scrollTop = val;
|
1891 |
+
if (gecko) updateDisplay(cm, []);
|
1892 |
+
startWorker(cm, 100);
|
1893 |
+
}
|
1894 |
+
function setScrollLeft(cm, val, isScroller) {
|
1895 |
+
if (isScroller ? val == cm.doc.scrollLeft : Math.abs(cm.doc.scrollLeft - val) < 2) return;
|
1896 |
+
val = Math.min(val, cm.display.scroller.scrollWidth - cm.display.scroller.clientWidth);
|
1897 |
+
cm.doc.scrollLeft = val;
|
1898 |
+
alignHorizontally(cm);
|
1899 |
+
if (cm.display.scroller.scrollLeft != val) cm.display.scroller.scrollLeft = val;
|
1900 |
+
if (cm.display.scrollbarH.scrollLeft != val) cm.display.scrollbarH.scrollLeft = val;
|
1901 |
+
}
|
1902 |
+
|
1903 |
+
// Since the delta values reported on mouse wheel events are
|
1904 |
+
// unstandardized between browsers and even browser versions, and
|
1905 |
+
// generally horribly unpredictable, this code starts by measuring
|
1906 |
+
// the scroll effect that the first few mouse wheel events have,
|
1907 |
+
// and, from that, detects the way it can convert deltas to pixel
|
1908 |
+
// offsets afterwards.
|
1909 |
+
//
|
1910 |
+
// The reason we want to know the amount a wheel event will scroll
|
1911 |
+
// is that it gives us a chance to update the display before the
|
1912 |
+
// actual scrolling happens, reducing flickering.
|
1913 |
+
|
1914 |
+
var wheelSamples = 0, wheelPixelsPerUnit = null;
|
1915 |
+
// Fill in a browser-detected starting value on browsers where we
|
1916 |
+
// know one. These don't have to be accurate -- the result of them
|
1917 |
+
// being wrong would just be a slight flicker on the first wheel
|
1918 |
+
// scroll (if it is large enough).
|
1919 |
+
if (ie) wheelPixelsPerUnit = -.53;
|
1920 |
+
else if (gecko) wheelPixelsPerUnit = 15;
|
1921 |
+
else if (chrome) wheelPixelsPerUnit = -.7;
|
1922 |
+
else if (safari) wheelPixelsPerUnit = -1/3;
|
1923 |
+
|
1924 |
+
function onScrollWheel(cm, e) {
|
1925 |
+
var dx = e.wheelDeltaX, dy = e.wheelDeltaY;
|
1926 |
+
if (dx == null && e.detail && e.axis == e.HORIZONTAL_AXIS) dx = e.detail;
|
1927 |
+
if (dy == null && e.detail && e.axis == e.VERTICAL_AXIS) dy = e.detail;
|
1928 |
+
else if (dy == null) dy = e.wheelDelta;
|
1929 |
+
|
1930 |
+
var display = cm.display, scroll = display.scroller;
|
1931 |
+
// Quit if there's nothing to scroll here
|
1932 |
+
if (!(dx && scroll.scrollWidth > scroll.clientWidth ||
|
1933 |
+
dy && scroll.scrollHeight > scroll.clientHeight)) return;
|
1934 |
+
|
1935 |
+
// Webkit browsers on OS X abort momentum scrolls when the target
|
1936 |
+
// of the scroll event is removed from the scrollable element.
|
1937 |
+
// This hack (see related code in patchDisplay) makes sure the
|
1938 |
+
// element is kept around.
|
1939 |
+
if (dy && mac && webkit) {
|
1940 |
+
for (var cur = e.target; cur != scroll; cur = cur.parentNode) {
|
1941 |
+
if (cur.lineObj) {
|
1942 |
+
cm.display.currentWheelTarget = cur;
|
1943 |
+
break;
|
1944 |
+
}
|
1945 |
+
}
|
1946 |
+
}
|
1947 |
+
|
1948 |
+
// On some browsers, horizontal scrolling will cause redraws to
|
1949 |
+
// happen before the gutter has been realigned, causing it to
|
1950 |
+
// wriggle around in a most unseemly way. When we have an
|
1951 |
+
// estimated pixels/delta value, we just handle horizontal
|
1952 |
+
// scrolling entirely here. It'll be slightly off from native, but
|
1953 |
+
// better than glitching out.
|
1954 |
+
if (dx && !gecko && !opera && wheelPixelsPerUnit != null) {
|
1955 |
+
if (dy)
|
1956 |
+
setScrollTop(cm, Math.max(0, Math.min(scroll.scrollTop + dy * wheelPixelsPerUnit, scroll.scrollHeight - scroll.clientHeight)));
|
1957 |
+
setScrollLeft(cm, Math.max(0, Math.min(scroll.scrollLeft + dx * wheelPixelsPerUnit, scroll.scrollWidth - scroll.clientWidth)));
|
1958 |
+
e_preventDefault(e);
|
1959 |
+
display.wheelStartX = null; // Abort measurement, if in progress
|
1960 |
+
return;
|
1961 |
+
}
|
1962 |
+
|
1963 |
+
if (dy && wheelPixelsPerUnit != null) {
|
1964 |
+
var pixels = dy * wheelPixelsPerUnit;
|
1965 |
+
var top = cm.doc.scrollTop, bot = top + display.wrapper.clientHeight;
|
1966 |
+
if (pixels < 0) top = Math.max(0, top + pixels - 50);
|
1967 |
+
else bot = Math.min(cm.doc.height, bot + pixels + 50);
|
1968 |
+
updateDisplay(cm, [], {top: top, bottom: bot});
|
1969 |
+
}
|
1970 |
+
|
1971 |
+
if (wheelSamples < 20) {
|
1972 |
+
if (display.wheelStartX == null) {
|
1973 |
+
display.wheelStartX = scroll.scrollLeft; display.wheelStartY = scroll.scrollTop;
|
1974 |
+
display.wheelDX = dx; display.wheelDY = dy;
|
1975 |
+
setTimeout(function() {
|
1976 |
+
if (display.wheelStartX == null) return;
|
1977 |
+
var movedX = scroll.scrollLeft - display.wheelStartX;
|
1978 |
+
var movedY = scroll.scrollTop - display.wheelStartY;
|
1979 |
+
var sample = (movedY && display.wheelDY && movedY / display.wheelDY) ||
|
1980 |
+
(movedX && display.wheelDX && movedX / display.wheelDX);
|
1981 |
+
display.wheelStartX = display.wheelStartY = null;
|
1982 |
+
if (!sample) return;
|
1983 |
+
wheelPixelsPerUnit = (wheelPixelsPerUnit * wheelSamples + sample) / (wheelSamples + 1);
|
1984 |
+
++wheelSamples;
|
1985 |
+
}, 200);
|
1986 |
+
} else {
|
1987 |
+
display.wheelDX += dx; display.wheelDY += dy;
|
1988 |
+
}
|
1989 |
+
}
|
1990 |
+
}
|
1991 |
+
|
1992 |
+
function doHandleBinding(cm, bound, dropShift) {
|
1993 |
+
if (typeof bound == "string") {
|
1994 |
+
bound = commands[bound];
|
1995 |
+
if (!bound) return false;
|
1996 |
+
}
|
1997 |
+
// Ensure previous input has been read, so that the handler sees a
|
1998 |
+
// consistent view of the document
|
1999 |
+
if (cm.display.pollingFast && readInput(cm)) cm.display.pollingFast = false;
|
2000 |
+
var doc = cm.doc, prevShift = doc.sel.shift, done = false;
|
2001 |
+
try {
|
2002 |
+
if (isReadOnly(cm)) cm.state.suppressEdits = true;
|
2003 |
+
if (dropShift) doc.sel.shift = false;
|
2004 |
+
done = bound(cm) != Pass;
|
2005 |
+
} finally {
|
2006 |
+
doc.sel.shift = prevShift;
|
2007 |
+
cm.state.suppressEdits = false;
|
2008 |
+
}
|
2009 |
+
return done;
|
2010 |
+
}
|
2011 |
+
|
2012 |
+
function allKeyMaps(cm) {
|
2013 |
+
var maps = cm.state.keyMaps.slice(0);
|
2014 |
+
if (cm.options.extraKeys) maps.push(cm.options.extraKeys);
|
2015 |
+
maps.push(cm.options.keyMap);
|
2016 |
+
return maps;
|
2017 |
+
}
|
2018 |
+
|
2019 |
+
var maybeTransition;
|
2020 |
+
function handleKeyBinding(cm, e) {
|
2021 |
+
// Handle auto keymap transitions
|
2022 |
+
var startMap = getKeyMap(cm.options.keyMap), next = startMap.auto;
|
2023 |
+
clearTimeout(maybeTransition);
|
2024 |
+
if (next && !isModifierKey(e)) maybeTransition = setTimeout(function() {
|
2025 |
+
if (getKeyMap(cm.options.keyMap) == startMap) {
|
2026 |
+
cm.options.keyMap = (next.call ? next.call(null, cm) : next);
|
2027 |
+
keyMapChanged(cm);
|
2028 |
+
}
|
2029 |
+
}, 50);
|
2030 |
+
|
2031 |
+
var name = keyName(e, true), handled = false;
|
2032 |
+
if (!name) return false;
|
2033 |
+
var keymaps = allKeyMaps(cm);
|
2034 |
+
|
2035 |
+
if (e.shiftKey) {
|
2036 |
+
// First try to resolve full name (including 'Shift-'). Failing
|
2037 |
+
// that, see if there is a cursor-motion command (starting with
|
2038 |
+
// 'go') bound to the keyname without 'Shift-'.
|
2039 |
+
handled = lookupKey("Shift-" + name, keymaps, function(b) {return doHandleBinding(cm, b, true);})
|
2040 |
+
|| lookupKey(name, keymaps, function(b) {
|
2041 |
+
if (typeof b == "string" ? /^go[A-Z]/.test(b) : b.motion)
|
2042 |
+
return doHandleBinding(cm, b);
|
2043 |
+
});
|
2044 |
+
} else {
|
2045 |
+
handled = lookupKey(name, keymaps, function(b) { return doHandleBinding(cm, b); });
|
2046 |
+
}
|
2047 |
+
|
2048 |
+
if (handled) {
|
2049 |
+
e_preventDefault(e);
|
2050 |
+
restartBlink(cm);
|
2051 |
+
if (ie_lt9) { e.oldKeyCode = e.keyCode; e.keyCode = 0; }
|
2052 |
+
signalLater(cm, "keyHandled", cm, name, e);
|
2053 |
+
}
|
2054 |
+
return handled;
|
2055 |
+
}
|
2056 |
+
|
2057 |
+
function handleCharBinding(cm, e, ch) {
|
2058 |
+
var handled = lookupKey("'" + ch + "'", allKeyMaps(cm),
|
2059 |
+
function(b) { return doHandleBinding(cm, b, true); });
|
2060 |
+
if (handled) {
|
2061 |
+
e_preventDefault(e);
|
2062 |
+
restartBlink(cm);
|
2063 |
+
signalLater(cm, "keyHandled", cm, "'" + ch + "'", e);
|
2064 |
+
}
|
2065 |
+
return handled;
|
2066 |
+
}
|
2067 |
+
|
2068 |
+
var lastStoppedKey = null;
|
2069 |
+
function onKeyDown(e) {
|
2070 |
+
var cm = this;
|
2071 |
+
if (!cm.state.focused) onFocus(cm);
|
2072 |
+
if (ie && e.keyCode == 27) { e.returnValue = false; }
|
2073 |
+
if (signalDOMEvent(cm, e) || cm.options.onKeyEvent && cm.options.onKeyEvent(cm, addStop(e))) return;
|
2074 |
+
var code = e.keyCode;
|
2075 |
+
// IE does strange things with escape.
|
2076 |
+
cm.doc.sel.shift = code == 16 || e.shiftKey;
|
2077 |
+
// First give onKeyEvent option a chance to handle this.
|
2078 |
+
var handled = handleKeyBinding(cm, e);
|
2079 |
+
if (opera) {
|
2080 |
+
lastStoppedKey = handled ? code : null;
|
2081 |
+
// Opera has no cut event... we try to at least catch the key combo
|
2082 |
+
if (!handled && code == 88 && !hasCopyEvent && (mac ? e.metaKey : e.ctrlKey))
|
2083 |
+
cm.replaceSelection("");
|
2084 |
+
}
|
2085 |
+
}
|
2086 |
+
|
2087 |
+
function onKeyPress(e) {
|
2088 |
+
var cm = this;
|
2089 |
+
if (signalDOMEvent(cm, e) || cm.options.onKeyEvent && cm.options.onKeyEvent(cm, addStop(e))) return;
|
2090 |
+
var keyCode = e.keyCode, charCode = e.charCode;
|
2091 |
+
if (opera && keyCode == lastStoppedKey) {lastStoppedKey = null; e_preventDefault(e); return;}
|
2092 |
+
if (((opera && (!e.which || e.which < 10)) || khtml) && handleKeyBinding(cm, e)) return;
|
2093 |
+
var ch = String.fromCharCode(charCode == null ? keyCode : charCode);
|
2094 |
+
if (this.options.electricChars && this.doc.mode.electricChars &&
|
2095 |
+
this.options.smartIndent && !isReadOnly(this) &&
|
2096 |
+
this.doc.mode.electricChars.indexOf(ch) > -1)
|
2097 |
+
setTimeout(operation(cm, function() {indentLine(cm, cm.doc.sel.to.line, "smart");}), 75);
|
2098 |
+
if (handleCharBinding(cm, e, ch)) return;
|
2099 |
+
if (ie && !ie_lt9) cm.display.inputHasSelection = null;
|
2100 |
+
fastPoll(cm);
|
2101 |
+
}
|
2102 |
+
|
2103 |
+
function onFocus(cm) {
|
2104 |
+
if (cm.options.readOnly == "nocursor") return;
|
2105 |
+
if (!cm.state.focused) {
|
2106 |
+
signal(cm, "focus", cm);
|
2107 |
+
cm.state.focused = true;
|
2108 |
+
if (cm.display.wrapper.className.search(/\bCodeMirror-focused\b/) == -1)
|
2109 |
+
cm.display.wrapper.className += " CodeMirror-focused";
|
2110 |
+
resetInput(cm, true);
|
2111 |
+
}
|
2112 |
+
slowPoll(cm);
|
2113 |
+
restartBlink(cm);
|
2114 |
+
}
|
2115 |
+
function onBlur(cm) {
|
2116 |
+
if (cm.state.focused) {
|
2117 |
+
signal(cm, "blur", cm);
|
2118 |
+
cm.state.focused = false;
|
2119 |
+
cm.display.wrapper.className = cm.display.wrapper.className.replace(" CodeMirror-focused", "");
|
2120 |
+
}
|
2121 |
+
clearInterval(cm.display.blinker);
|
2122 |
+
setTimeout(function() {if (!cm.state.focused) cm.doc.sel.shift = false;}, 150);
|
2123 |
+
}
|
2124 |
+
|
2125 |
+
var detectingSelectAll;
|
2126 |
+
function onContextMenu(cm, e) {
|
2127 |
+
if (signalDOMEvent(cm, e, "contextmenu")) return;
|
2128 |
+
var display = cm.display, sel = cm.doc.sel;
|
2129 |
+
if (eventInWidget(display, e)) return;
|
2130 |
+
|
2131 |
+
var pos = posFromMouse(cm, e), scrollPos = display.scroller.scrollTop;
|
2132 |
+
if (!pos || opera) return; // Opera is difficult.
|
2133 |
+
if (posEq(sel.from, sel.to) || posLess(pos, sel.from) || !posLess(pos, sel.to))
|
2134 |
+
operation(cm, setSelection)(cm.doc, pos, pos);
|
2135 |
+
|
2136 |
+
var oldCSS = display.input.style.cssText;
|
2137 |
+
display.inputDiv.style.position = "absolute";
|
2138 |
+
display.input.style.cssText = "position: fixed; width: 30px; height: 30px; top: " + (e.clientY - 5) +
|
2139 |
+
"px; left: " + (e.clientX - 5) + "px; z-index: 1000; background: white; outline: none;" +
|
2140 |
+
"border-width: 0; outline: none; overflow: hidden; opacity: .05; -ms-opacity: .05; filter: alpha(opacity=5);";
|
2141 |
+
focusInput(cm);
|
2142 |
+
resetInput(cm, true);
|
2143 |
+
// Adds "Select all" to context menu in FF
|
2144 |
+
if (posEq(sel.from, sel.to)) display.input.value = display.prevInput = " ";
|
2145 |
+
|
2146 |
+
function prepareSelectAllHack() {
|
2147 |
+
if (display.input.selectionStart != null) {
|
2148 |
+
var extval = display.input.value = " " + (posEq(sel.from, sel.to) ? "" : display.input.value);
|
2149 |
+
display.prevInput = " ";
|
2150 |
+
display.input.selectionStart = 1; display.input.selectionEnd = extval.length;
|
2151 |
+
}
|
2152 |
+
}
|
2153 |
+
function rehide() {
|
2154 |
+
display.inputDiv.style.position = "relative";
|
2155 |
+
display.input.style.cssText = oldCSS;
|
2156 |
+
if (ie_lt9) display.scrollbarV.scrollTop = display.scroller.scrollTop = scrollPos;
|
2157 |
+
slowPoll(cm);
|
2158 |
+
|
2159 |
+
// Try to detect the user choosing select-all
|
2160 |
+
if (display.input.selectionStart != null) {
|
2161 |
+
if (!ie || ie_lt9) prepareSelectAllHack();
|
2162 |
+
clearTimeout(detectingSelectAll);
|
2163 |
+
var i = 0, poll = function(){
|
2164 |
+
if (display.prevInput == " " && display.input.selectionStart == 0)
|
2165 |
+
operation(cm, commands.selectAll)(cm);
|
2166 |
+
else if (i++ < 10) detectingSelectAll = setTimeout(poll, 500);
|
2167 |
+
else resetInput(cm);
|
2168 |
+
};
|
2169 |
+
detectingSelectAll = setTimeout(poll, 200);
|
2170 |
+
}
|
2171 |
+
}
|
2172 |
+
|
2173 |
+
if (ie && !ie_lt9) prepareSelectAllHack();
|
2174 |
+
if (captureMiddleClick) {
|
2175 |
+
e_stop(e);
|
2176 |
+
var mouseup = function() {
|
2177 |
+
off(window, "mouseup", mouseup);
|
2178 |
+
setTimeout(rehide, 20);
|
2179 |
+
};
|
2180 |
+
on(window, "mouseup", mouseup);
|
2181 |
+
} else {
|
2182 |
+
setTimeout(rehide, 50);
|
2183 |
+
}
|
2184 |
+
}
|
2185 |
+
|
2186 |
+
// UPDATING
|
2187 |
+
|
2188 |
+
var changeEnd = CodeMirror.changeEnd = function(change) {
|
2189 |
+
if (!change.text) return change.to;
|
2190 |
+
return Pos(change.from.line + change.text.length - 1,
|
2191 |
+
lst(change.text).length + (change.text.length == 1 ? change.from.ch : 0));
|
2192 |
+
};
|
2193 |
+
|
2194 |
+
// Make sure a position will be valid after the given change.
|
2195 |
+
function clipPostChange(doc, change, pos) {
|
2196 |
+
if (!posLess(change.from, pos)) return clipPos(doc, pos);
|
2197 |
+
var diff = (change.text.length - 1) - (change.to.line - change.from.line);
|
2198 |
+
if (pos.line > change.to.line + diff) {
|
2199 |
+
var preLine = pos.line - diff, lastLine = doc.first + doc.size - 1;
|
2200 |
+
if (preLine > lastLine) return Pos(lastLine, getLine(doc, lastLine).text.length);
|
2201 |
+
return clipToLen(pos, getLine(doc, preLine).text.length);
|
2202 |
+
}
|
2203 |
+
if (pos.line == change.to.line + diff)
|
2204 |
+
return clipToLen(pos, lst(change.text).length + (change.text.length == 1 ? change.from.ch : 0) +
|
2205 |
+
getLine(doc, change.to.line).text.length - change.to.ch);
|
2206 |
+
var inside = pos.line - change.from.line;
|
2207 |
+
return clipToLen(pos, change.text[inside].length + (inside ? 0 : change.from.ch));
|
2208 |
+
}
|
2209 |
+
|
2210 |
+
// Hint can be null|"end"|"start"|"around"|{anchor,head}
|
2211 |
+
function computeSelAfterChange(doc, change, hint) {
|
2212 |
+
if (hint && typeof hint == "object") // Assumed to be {anchor, head} object
|
2213 |
+
return {anchor: clipPostChange(doc, change, hint.anchor),
|
2214 |
+
head: clipPostChange(doc, change, hint.head)};
|
2215 |
+
|
2216 |
+
if (hint == "start") return {anchor: change.from, head: change.from};
|
2217 |
+
|
2218 |
+
var end = changeEnd(change);
|
2219 |
+
if (hint == "around") return {anchor: change.from, head: end};
|
2220 |
+
if (hint == "end") return {anchor: end, head: end};
|
2221 |
+
|
2222 |
+
// hint is null, leave the selection alone as much as possible
|
2223 |
+
var adjustPos = function(pos) {
|
2224 |
+
if (posLess(pos, change.from)) return pos;
|
2225 |
+
if (!posLess(change.to, pos)) return end;
|
2226 |
+
|
2227 |
+
var line = pos.line + change.text.length - (change.to.line - change.from.line) - 1, ch = pos.ch;
|
2228 |
+
if (pos.line == change.to.line) ch += end.ch - change.to.ch;
|
2229 |
+
return Pos(line, ch);
|
2230 |
+
};
|
2231 |
+
return {anchor: adjustPos(doc.sel.anchor), head: adjustPos(doc.sel.head)};
|
2232 |
+
}
|
2233 |
+
|
2234 |
+
function filterChange(doc, change, update) {
|
2235 |
+
var obj = {
|
2236 |
+
canceled: false,
|
2237 |
+
from: change.from,
|
2238 |
+
to: change.to,
|
2239 |
+
text: change.text,
|
2240 |
+
origin: change.origin,
|
2241 |
+
cancel: function() { this.canceled = true; }
|
2242 |
+
};
|
2243 |
+
if (update) obj.update = function(from, to, text, origin) {
|
2244 |
+
if (from) this.from = clipPos(doc, from);
|
2245 |
+
if (to) this.to = clipPos(doc, to);
|
2246 |
+
if (text) this.text = text;
|
2247 |
+
if (origin !== undefined) this.origin = origin;
|
2248 |
+
};
|
2249 |
+
signal(doc, "beforeChange", doc, obj);
|
2250 |
+
if (doc.cm) signal(doc.cm, "beforeChange", doc.cm, obj);
|
2251 |
+
|
2252 |
+
if (obj.canceled) return null;
|
2253 |
+
return {from: obj.from, to: obj.to, text: obj.text, origin: obj.origin};
|
2254 |
+
}
|
2255 |
+
|
2256 |
+
// Replace the range from from to to by the strings in replacement.
|
2257 |
+
// change is a {from, to, text [, origin]} object
|
2258 |
+
function makeChange(doc, change, selUpdate, ignoreReadOnly) {
|
2259 |
+
if (doc.cm) {
|
2260 |
+
if (!doc.cm.curOp) return operation(doc.cm, makeChange)(doc, change, selUpdate, ignoreReadOnly);
|
2261 |
+
if (doc.cm.state.suppressEdits) return;
|
2262 |
+
}
|
2263 |
+
|
2264 |
+
if (hasHandler(doc, "beforeChange") || doc.cm && hasHandler(doc.cm, "beforeChange")) {
|
2265 |
+
change = filterChange(doc, change, true);
|
2266 |
+
if (!change) return;
|
2267 |
+
}
|
2268 |
+
|
2269 |
+
// Possibly split or suppress the update based on the presence
|
2270 |
+
// of read-only spans in its range.
|
2271 |
+
var split = sawReadOnlySpans && !ignoreReadOnly && removeReadOnlyRanges(doc, change.from, change.to);
|
2272 |
+
if (split) {
|
2273 |
+
for (var i = split.length - 1; i >= 1; --i)
|
2274 |
+
makeChangeNoReadonly(doc, {from: split[i].from, to: split[i].to, text: [""]});
|
2275 |
+
if (split.length)
|
2276 |
+
makeChangeNoReadonly(doc, {from: split[0].from, to: split[0].to, text: change.text}, selUpdate);
|
2277 |
+
} else {
|
2278 |
+
makeChangeNoReadonly(doc, change, selUpdate);
|
2279 |
+
}
|
2280 |
+
}
|
2281 |
+
|
2282 |
+
function makeChangeNoReadonly(doc, change, selUpdate) {
|
2283 |
+
var selAfter = computeSelAfterChange(doc, change, selUpdate);
|
2284 |
+
addToHistory(doc, change, selAfter, doc.cm ? doc.cm.curOp.id : NaN);
|
2285 |
+
|
2286 |
+
makeChangeSingleDoc(doc, change, selAfter, stretchSpansOverChange(doc, change));
|
2287 |
+
var rebased = [];
|
2288 |
+
|
2289 |
+
linkedDocs(doc, function(doc, sharedHist) {
|
2290 |
+
if (!sharedHist && indexOf(rebased, doc.history) == -1) {
|
2291 |
+
rebaseHist(doc.history, change);
|
2292 |
+
rebased.push(doc.history);
|
2293 |
+
}
|
2294 |
+
makeChangeSingleDoc(doc, change, null, stretchSpansOverChange(doc, change));
|
2295 |
+
});
|
2296 |
+
}
|
2297 |
+
|
2298 |
+
function makeChangeFromHistory(doc, type) {
|
2299 |
+
if (doc.cm && doc.cm.state.suppressEdits) return;
|
2300 |
+
|
2301 |
+
var hist = doc.history;
|
2302 |
+
var event = (type == "undo" ? hist.done : hist.undone).pop();
|
2303 |
+
if (!event) return;
|
2304 |
+
|
2305 |
+
var anti = {changes: [], anchorBefore: event.anchorAfter, headBefore: event.headAfter,
|
2306 |
+
anchorAfter: event.anchorBefore, headAfter: event.headBefore,
|
2307 |
+
generation: hist.generation};
|
2308 |
+
(type == "undo" ? hist.undone : hist.done).push(anti);
|
2309 |
+
hist.generation = event.generation || ++hist.maxGeneration;
|
2310 |
+
|
2311 |
+
var filter = hasHandler(doc, "beforeChange") || doc.cm && hasHandler(doc.cm, "beforeChange");
|
2312 |
+
|
2313 |
+
for (var i = event.changes.length - 1; i >= 0; --i) {
|
2314 |
+
var change = event.changes[i];
|
2315 |
+
change.origin = type;
|
2316 |
+
if (filter && !filterChange(doc, change, false)) {
|
2317 |
+
(type == "undo" ? hist.done : hist.undone).length = 0;
|
2318 |
+
return;
|
2319 |
+
}
|
2320 |
+
|
2321 |
+
anti.changes.push(historyChangeFromChange(doc, change));
|
2322 |
+
|
2323 |
+
var after = i ? computeSelAfterChange(doc, change, null)
|
2324 |
+
: {anchor: event.anchorBefore, head: event.headBefore};
|
2325 |
+
makeChangeSingleDoc(doc, change, after, mergeOldSpans(doc, change));
|
2326 |
+
var rebased = [];
|
2327 |
+
|
2328 |
+
linkedDocs(doc, function(doc, sharedHist) {
|
2329 |
+
if (!sharedHist && indexOf(rebased, doc.history) == -1) {
|
2330 |
+
rebaseHist(doc.history, change);
|
2331 |
+
rebased.push(doc.history);
|
2332 |
+
}
|
2333 |
+
makeChangeSingleDoc(doc, change, null, mergeOldSpans(doc, change));
|
2334 |
+
});
|
2335 |
+
}
|
2336 |
+
}
|
2337 |
+
|
2338 |
+
function shiftDoc(doc, distance) {
|
2339 |
+
function shiftPos(pos) {return Pos(pos.line + distance, pos.ch);}
|
2340 |
+
doc.first += distance;
|
2341 |
+
if (doc.cm) regChange(doc.cm, doc.first, doc.first, distance);
|
2342 |
+
doc.sel.head = shiftPos(doc.sel.head); doc.sel.anchor = shiftPos(doc.sel.anchor);
|
2343 |
+
doc.sel.from = shiftPos(doc.sel.from); doc.sel.to = shiftPos(doc.sel.to);
|
2344 |
+
}
|
2345 |
+
|
2346 |
+
function makeChangeSingleDoc(doc, change, selAfter, spans) {
|
2347 |
+
if (doc.cm && !doc.cm.curOp)
|
2348 |
+
return operation(doc.cm, makeChangeSingleDoc)(doc, change, selAfter, spans);
|
2349 |
+
|
2350 |
+
if (change.to.line < doc.first) {
|
2351 |
+
shiftDoc(doc, change.text.length - 1 - (change.to.line - change.from.line));
|
2352 |
+
return;
|
2353 |
+
}
|
2354 |
+
if (change.from.line > doc.lastLine()) return;
|
2355 |
+
|
2356 |
+
// Clip the change to the size of this doc
|
2357 |
+
if (change.from.line < doc.first) {
|
2358 |
+
var shift = change.text.length - 1 - (doc.first - change.from.line);
|
2359 |
+
shiftDoc(doc, shift);
|
2360 |
+
change = {from: Pos(doc.first, 0), to: Pos(change.to.line + shift, change.to.ch),
|
2361 |
+
text: [lst(change.text)], origin: change.origin};
|
2362 |
+
}
|
2363 |
+
var last = doc.lastLine();
|
2364 |
+
if (change.to.line > last) {
|
2365 |
+
change = {from: change.from, to: Pos(last, getLine(doc, last).text.length),
|
2366 |
+
text: [change.text[0]], origin: change.origin};
|
2367 |
+
}
|
2368 |
+
|
2369 |
+
change.removed = getBetween(doc, change.from, change.to);
|
2370 |
+
|
2371 |
+
if (!selAfter) selAfter = computeSelAfterChange(doc, change, null);
|
2372 |
+
if (doc.cm) makeChangeSingleDocInEditor(doc.cm, change, spans, selAfter);
|
2373 |
+
else updateDoc(doc, change, spans, selAfter);
|
2374 |
+
}
|
2375 |
+
|
2376 |
+
function makeChangeSingleDocInEditor(cm, change, spans, selAfter) {
|
2377 |
+
var doc = cm.doc, display = cm.display, from = change.from, to = change.to;
|
2378 |
+
|
2379 |
+
var recomputeMaxLength = false, checkWidthStart = from.line;
|
2380 |
+
if (!cm.options.lineWrapping) {
|
2381 |
+
checkWidthStart = lineNo(visualLine(doc, getLine(doc, from.line)));
|
2382 |
+
doc.iter(checkWidthStart, to.line + 1, function(line) {
|
2383 |
+
if (line == display.maxLine) {
|
2384 |
+
recomputeMaxLength = true;
|
2385 |
+
return true;
|
2386 |
+
}
|
2387 |
+
});
|
2388 |
+
}
|
2389 |
+
|
2390 |
+
if (!posLess(doc.sel.head, change.from) && !posLess(change.to, doc.sel.head))
|
2391 |
+
cm.curOp.cursorActivity = true;
|
2392 |
+
|
2393 |
+
updateDoc(doc, change, spans, selAfter, estimateHeight(cm));
|
2394 |
+
|
2395 |
+
if (!cm.options.lineWrapping) {
|
2396 |
+
doc.iter(checkWidthStart, from.line + change.text.length, function(line) {
|
2397 |
+
var len = lineLength(doc, line);
|
2398 |
+
if (len > display.maxLineLength) {
|
2399 |
+
display.maxLine = line;
|
2400 |
+
display.maxLineLength = len;
|
2401 |
+
display.maxLineChanged = true;
|
2402 |
+
recomputeMaxLength = false;
|
2403 |
+
}
|
2404 |
+
});
|
2405 |
+
if (recomputeMaxLength) cm.curOp.updateMaxLine = true;
|
2406 |
+
}
|
2407 |
+
|
2408 |
+
// Adjust frontier, schedule worker
|
2409 |
+
doc.frontier = Math.min(doc.frontier, from.line);
|
2410 |
+
startWorker(cm, 400);
|
2411 |
+
|
2412 |
+
var lendiff = change.text.length - (to.line - from.line) - 1;
|
2413 |
+
// Remember that these lines changed, for updating the display
|
2414 |
+
regChange(cm, from.line, to.line + 1, lendiff);
|
2415 |
+
|
2416 |
+
if (hasHandler(cm, "change")) {
|
2417 |
+
var changeObj = {from: from, to: to,
|
2418 |
+
text: change.text,
|
2419 |
+
removed: change.removed,
|
2420 |
+
origin: change.origin};
|
2421 |
+
if (cm.curOp.textChanged) {
|
2422 |
+
for (var cur = cm.curOp.textChanged; cur.next; cur = cur.next) {}
|
2423 |
+
cur.next = changeObj;
|
2424 |
+
} else cm.curOp.textChanged = changeObj;
|
2425 |
+
}
|
2426 |
+
}
|
2427 |
+
|
2428 |
+
function replaceRange(doc, code, from, to, origin) {
|
2429 |
+
if (!to) to = from;
|
2430 |
+
if (posLess(to, from)) { var tmp = to; to = from; from = tmp; }
|
2431 |
+
if (typeof code == "string") code = splitLines(code);
|
2432 |
+
makeChange(doc, {from: from, to: to, text: code, origin: origin}, null);
|
2433 |
+
}
|
2434 |
+
|
2435 |
+
// POSITION OBJECT
|
2436 |
+
|
2437 |
+
function Pos(line, ch) {
|
2438 |
+
if (!(this instanceof Pos)) return new Pos(line, ch);
|
2439 |
+
this.line = line; this.ch = ch;
|
2440 |
+
}
|
2441 |
+
CodeMirror.Pos = Pos;
|
2442 |
+
|
2443 |
+
function posEq(a, b) {return a.line == b.line && a.ch == b.ch;}
|
2444 |
+
function posLess(a, b) {return a.line < b.line || (a.line == b.line && a.ch < b.ch);}
|
2445 |
+
function copyPos(x) {return Pos(x.line, x.ch);}
|
2446 |
+
|
2447 |
+
// SELECTION
|
2448 |
+
|
2449 |
+
function clipLine(doc, n) {return Math.max(doc.first, Math.min(n, doc.first + doc.size - 1));}
|
2450 |
+
function clipPos(doc, pos) {
|
2451 |
+
if (pos.line < doc.first) return Pos(doc.first, 0);
|
2452 |
+
var last = doc.first + doc.size - 1;
|
2453 |
+
if (pos.line > last) return Pos(last, getLine(doc, last).text.length);
|
2454 |
+
return clipToLen(pos, getLine(doc, pos.line).text.length);
|
2455 |
+
}
|
2456 |
+
function clipToLen(pos, linelen) {
|
2457 |
+
var ch = pos.ch;
|
2458 |
+
if (ch == null || ch > linelen) return Pos(pos.line, linelen);
|
2459 |
+
else if (ch < 0) return Pos(pos.line, 0);
|
2460 |
+
else return pos;
|
2461 |
+
}
|
2462 |
+
function isLine(doc, l) {return l >= doc.first && l < doc.first + doc.size;}
|
2463 |
+
|
2464 |
+
// If shift is held, this will move the selection anchor. Otherwise,
|
2465 |
+
// it'll set the whole selection.
|
2466 |
+
function extendSelection(doc, pos, other, bias) {
|
2467 |
+
if (doc.sel.shift || doc.sel.extend) {
|
2468 |
+
var anchor = doc.sel.anchor;
|
2469 |
+
if (other) {
|
2470 |
+
var posBefore = posLess(pos, anchor);
|
2471 |
+
if (posBefore != posLess(other, anchor)) {
|
2472 |
+
anchor = pos;
|
2473 |
+
pos = other;
|
2474 |
+
} else if (posBefore != posLess(pos, other)) {
|
2475 |
+
pos = other;
|
2476 |
+
}
|
2477 |
+
}
|
2478 |
+
setSelection(doc, anchor, pos, bias);
|
2479 |
+
} else {
|
2480 |
+
setSelection(doc, pos, other || pos, bias);
|
2481 |
+
}
|
2482 |
+
if (doc.cm) doc.cm.curOp.userSelChange = true;
|
2483 |
+
}
|
2484 |
+
|
2485 |
+
function filterSelectionChange(doc, anchor, head) {
|
2486 |
+
var obj = {anchor: anchor, head: head};
|
2487 |
+
signal(doc, "beforeSelectionChange", doc, obj);
|
2488 |
+
if (doc.cm) signal(doc.cm, "beforeSelectionChange", doc.cm, obj);
|
2489 |
+
obj.anchor = clipPos(doc, obj.anchor); obj.head = clipPos(doc, obj.head);
|
2490 |
+
return obj;
|
2491 |
+
}
|
2492 |
+
|
2493 |
+
// Update the selection. Last two args are only used by
|
2494 |
+
// updateDoc, since they have to be expressed in the line
|
2495 |
+
// numbers before the update.
|
2496 |
+
function setSelection(doc, anchor, head, bias, checkAtomic) {
|
2497 |
+
if (!checkAtomic && hasHandler(doc, "beforeSelectionChange") || doc.cm && hasHandler(doc.cm, "beforeSelectionChange")) {
|
2498 |
+
var filtered = filterSelectionChange(doc, anchor, head);
|
2499 |
+
head = filtered.head;
|
2500 |
+
anchor = filtered.anchor;
|
2501 |
+
}
|
2502 |
+
|
2503 |
+
var sel = doc.sel;
|
2504 |
+
sel.goalColumn = null;
|
2505 |
+
// Skip over atomic spans.
|
2506 |
+
if (checkAtomic || !posEq(anchor, sel.anchor))
|
2507 |
+
anchor = skipAtomic(doc, anchor, bias, checkAtomic != "push");
|
2508 |
+
if (checkAtomic || !posEq(head, sel.head))
|
2509 |
+
head = skipAtomic(doc, head, bias, checkAtomic != "push");
|
2510 |
+
|
2511 |
+
if (posEq(sel.anchor, anchor) && posEq(sel.head, head)) return;
|
2512 |
+
|
2513 |
+
sel.anchor = anchor; sel.head = head;
|
2514 |
+
var inv = posLess(head, anchor);
|
2515 |
+
sel.from = inv ? head : anchor;
|
2516 |
+
sel.to = inv ? anchor : head;
|
2517 |
+
|
2518 |
+
if (doc.cm)
|
2519 |
+
doc.cm.curOp.updateInput = doc.cm.curOp.selectionChanged =
|
2520 |
+
doc.cm.curOp.cursorActivity = true;
|
2521 |
+
|
2522 |
+
signalLater(doc, "cursorActivity", doc);
|
2523 |
+
}
|
2524 |
+
|
2525 |
+
function reCheckSelection(cm) {
|
2526 |
+
setSelection(cm.doc, cm.doc.sel.from, cm.doc.sel.to, null, "push");
|
2527 |
+
}
|
2528 |
+
|
2529 |
+
function skipAtomic(doc, pos, bias, mayClear) {
|
2530 |
+
var flipped = false, curPos = pos;
|
2531 |
+
var dir = bias || 1;
|
2532 |
+
doc.cantEdit = false;
|
2533 |
+
search: for (;;) {
|
2534 |
+
var line = getLine(doc, curPos.line);
|
2535 |
+
if (line.markedSpans) {
|
2536 |
+
for (var i = 0; i < line.markedSpans.length; ++i) {
|
2537 |
+
var sp = line.markedSpans[i], m = sp.marker;
|
2538 |
+
if ((sp.from == null || (m.inclusiveLeft ? sp.from <= curPos.ch : sp.from < curPos.ch)) &&
|
2539 |
+
(sp.to == null || (m.inclusiveRight ? sp.to >= curPos.ch : sp.to > curPos.ch))) {
|
2540 |
+
if (mayClear) {
|
2541 |
+
signal(m, "beforeCursorEnter");
|
2542 |
+
if (m.explicitlyCleared) {
|
2543 |
+
if (!line.markedSpans) break;
|
2544 |
+
else {--i; continue;}
|
2545 |
+
}
|
2546 |
+
}
|
2547 |
+
if (!m.atomic) continue;
|
2548 |
+
var newPos = m.find()[dir < 0 ? "from" : "to"];
|
2549 |
+
if (posEq(newPos, curPos)) {
|
2550 |
+
newPos.ch += dir;
|
2551 |
+
if (newPos.ch < 0) {
|
2552 |
+
if (newPos.line > doc.first) newPos = clipPos(doc, Pos(newPos.line - 1));
|
2553 |
+
else newPos = null;
|
2554 |
+
} else if (newPos.ch > line.text.length) {
|
2555 |
+
if (newPos.line < doc.first + doc.size - 1) newPos = Pos(newPos.line + 1, 0);
|
2556 |
+
else newPos = null;
|
2557 |
+
}
|
2558 |
+
if (!newPos) {
|
2559 |
+
if (flipped) {
|
2560 |
+
// Driven in a corner -- no valid cursor position found at all
|
2561 |
+
// -- try again *with* clearing, if we didn't already
|
2562 |
+
if (!mayClear) return skipAtomic(doc, pos, bias, true);
|
2563 |
+
// Otherwise, turn off editing until further notice, and return the start of the doc
|
2564 |
+
doc.cantEdit = true;
|
2565 |
+
return Pos(doc.first, 0);
|
2566 |
+
}
|
2567 |
+
flipped = true; newPos = pos; dir = -dir;
|
2568 |
+
}
|
2569 |
+
}
|
2570 |
+
curPos = newPos;
|
2571 |
+
continue search;
|
2572 |
+
}
|
2573 |
+
}
|
2574 |
+
}
|
2575 |
+
return curPos;
|
2576 |
+
}
|
2577 |
+
}
|
2578 |
+
|
2579 |
+
// SCROLLING
|
2580 |
+
|
2581 |
+
function scrollCursorIntoView(cm) {
|
2582 |
+
var coords = scrollPosIntoView(cm, cm.doc.sel.head, cm.options.cursorScrollMargin);
|
2583 |
+
if (!cm.state.focused) return;
|
2584 |
+
var display = cm.display, box = getRect(display.sizer), doScroll = null;
|
2585 |
+
if (coords.top + box.top < 0) doScroll = true;
|
2586 |
+
else if (coords.bottom + box.top > (window.innerHeight || document.documentElement.clientHeight)) doScroll = false;
|
2587 |
+
if (doScroll != null && !phantom) {
|
2588 |
+
var hidden = display.cursor.style.display == "none";
|
2589 |
+
if (hidden) {
|
2590 |
+
display.cursor.style.display = "";
|
2591 |
+
display.cursor.style.left = coords.left + "px";
|
2592 |
+
display.cursor.style.top = (coords.top - display.viewOffset) + "px";
|
2593 |
+
}
|
2594 |
+
display.cursor.scrollIntoView(doScroll);
|
2595 |
+
if (hidden) display.cursor.style.display = "none";
|
2596 |
+
}
|
2597 |
+
}
|
2598 |
+
|
2599 |
+
function scrollPosIntoView(cm, pos, margin) {
|
2600 |
+
if (margin == null) margin = 0;
|
2601 |
+
for (;;) {
|
2602 |
+
var changed = false, coords = cursorCoords(cm, pos);
|
2603 |
+
var scrollPos = calculateScrollPos(cm, coords.left, coords.top - margin, coords.left, coords.bottom + margin);
|
2604 |
+
var startTop = cm.doc.scrollTop, startLeft = cm.doc.scrollLeft;
|
2605 |
+
if (scrollPos.scrollTop != null) {
|
2606 |
+
setScrollTop(cm, scrollPos.scrollTop);
|
2607 |
+
if (Math.abs(cm.doc.scrollTop - startTop) > 1) changed = true;
|
2608 |
+
}
|
2609 |
+
if (scrollPos.scrollLeft != null) {
|
2610 |
+
setScrollLeft(cm, scrollPos.scrollLeft);
|
2611 |
+
if (Math.abs(cm.doc.scrollLeft - startLeft) > 1) changed = true;
|
2612 |
+
}
|
2613 |
+
if (!changed) return coords;
|
2614 |
+
}
|
2615 |
+
}
|
2616 |
+
|
2617 |
+
function scrollIntoView(cm, x1, y1, x2, y2) {
|
2618 |
+
var scrollPos = calculateScrollPos(cm, x1, y1, x2, y2);
|
2619 |
+
if (scrollPos.scrollTop != null) setScrollTop(cm, scrollPos.scrollTop);
|
2620 |
+
if (scrollPos.scrollLeft != null) setScrollLeft(cm, scrollPos.scrollLeft);
|
2621 |
+
}
|
2622 |
+
|
2623 |
+
function calculateScrollPos(cm, x1, y1, x2, y2) {
|
2624 |
+
var display = cm.display, snapMargin = textHeight(cm.display);
|
2625 |
+
if (y1 < 0) y1 = 0;
|
2626 |
+
var screen = display.scroller.clientHeight - scrollerCutOff, screentop = display.scroller.scrollTop, result = {};
|
2627 |
+
var docBottom = cm.doc.height + paddingVert(display);
|
2628 |
+
var atTop = y1 < snapMargin, atBottom = y2 > docBottom - snapMargin;
|
2629 |
+
if (y1 < screentop) {
|
2630 |
+
result.scrollTop = atTop ? 0 : y1;
|
2631 |
+
} else if (y2 > screentop + screen) {
|
2632 |
+
var newTop = Math.min(y1, (atBottom ? docBottom : y2) - screen);
|
2633 |
+
if (newTop != screentop) result.scrollTop = newTop;
|
2634 |
+
}
|
2635 |
+
|
2636 |
+
var screenw = display.scroller.clientWidth - scrollerCutOff, screenleft = display.scroller.scrollLeft;
|
2637 |
+
x1 += display.gutters.offsetWidth; x2 += display.gutters.offsetWidth;
|
2638 |
+
var gutterw = display.gutters.offsetWidth;
|
2639 |
+
var atLeft = x1 < gutterw + 10;
|
2640 |
+
if (x1 < screenleft + gutterw || atLeft) {
|
2641 |
+
if (atLeft) x1 = 0;
|
2642 |
+
result.scrollLeft = Math.max(0, x1 - 10 - gutterw);
|
2643 |
+
} else if (x2 > screenw + screenleft - 3) {
|
2644 |
+
result.scrollLeft = x2 + 10 - screenw;
|
2645 |
+
}
|
2646 |
+
return result;
|
2647 |
+
}
|
2648 |
+
|
2649 |
+
function updateScrollPos(cm, left, top) {
|
2650 |
+
cm.curOp.updateScrollPos = {scrollLeft: left == null ? cm.doc.scrollLeft : left,
|
2651 |
+
scrollTop: top == null ? cm.doc.scrollTop : top};
|
2652 |
+
}
|
2653 |
+
|
2654 |
+
function addToScrollPos(cm, left, top) {
|
2655 |
+
var pos = cm.curOp.updateScrollPos || (cm.curOp.updateScrollPos = {scrollLeft: cm.doc.scrollLeft, scrollTop: cm.doc.scrollTop});
|
2656 |
+
var scroll = cm.display.scroller;
|
2657 |
+
pos.scrollTop = Math.max(0, Math.min(scroll.scrollHeight - scroll.clientHeight, pos.scrollTop + top));
|
2658 |
+
pos.scrollLeft = Math.max(0, Math.min(scroll.scrollWidth - scroll.clientWidth, pos.scrollLeft + left));
|
2659 |
+
}
|
2660 |
+
|
2661 |
+
// API UTILITIES
|
2662 |
+
|
2663 |
+
function indentLine(cm, n, how, aggressive) {
|
2664 |
+
var doc = cm.doc;
|
2665 |
+
if (how == null) how = "add";
|
2666 |
+
if (how == "smart") {
|
2667 |
+
if (!cm.doc.mode.indent) how = "prev";
|
2668 |
+
else var state = getStateBefore(cm, n);
|
2669 |
+
}
|
2670 |
+
|
2671 |
+
var tabSize = cm.options.tabSize;
|
2672 |
+
var line = getLine(doc, n), curSpace = countColumn(line.text, null, tabSize);
|
2673 |
+
var curSpaceString = line.text.match(/^\s*/)[0], indentation;
|
2674 |
+
if (how == "smart") {
|
2675 |
+
indentation = cm.doc.mode.indent(state, line.text.slice(curSpaceString.length), line.text);
|
2676 |
+
if (indentation == Pass) {
|
2677 |
+
if (!aggressive) return;
|
2678 |
+
how = "prev";
|
2679 |
+
}
|
2680 |
+
}
|
2681 |
+
if (how == "prev") {
|
2682 |
+
if (n > doc.first) indentation = countColumn(getLine(doc, n-1).text, null, tabSize);
|
2683 |
+
else indentation = 0;
|
2684 |
+
} else if (how == "add") {
|
2685 |
+
indentation = curSpace + cm.options.indentUnit;
|
2686 |
+
} else if (how == "subtract") {
|
2687 |
+
indentation = curSpace - cm.options.indentUnit;
|
2688 |
+
} else if (typeof how == "number") {
|
2689 |
+
indentation = curSpace + how;
|
2690 |
+
}
|
2691 |
+
indentation = Math.max(0, indentation);
|
2692 |
+
|
2693 |
+
var indentString = "", pos = 0;
|
2694 |
+
if (cm.options.indentWithTabs)
|
2695 |
+
for (var i = Math.floor(indentation / tabSize); i; --i) {pos += tabSize; indentString += "\t";}
|
2696 |
+
if (pos < indentation) indentString += spaceStr(indentation - pos);
|
2697 |
+
|
2698 |
+
if (indentString != curSpaceString)
|
2699 |
+
replaceRange(cm.doc, indentString, Pos(n, 0), Pos(n, curSpaceString.length), "+input");
|
2700 |
+
line.stateAfter = null;
|
2701 |
+
}
|
2702 |
+
|
2703 |
+
function changeLine(cm, handle, op) {
|
2704 |
+
var no = handle, line = handle, doc = cm.doc;
|
2705 |
+
if (typeof handle == "number") line = getLine(doc, clipLine(doc, handle));
|
2706 |
+
else no = lineNo(handle);
|
2707 |
+
if (no == null) return null;
|
2708 |
+
if (op(line, no)) regChange(cm, no, no + 1);
|
2709 |
+
else return null;
|
2710 |
+
return line;
|
2711 |
+
}
|
2712 |
+
|
2713 |
+
function findPosH(doc, pos, dir, unit, visually) {
|
2714 |
+
var line = pos.line, ch = pos.ch, origDir = dir;
|
2715 |
+
var lineObj = getLine(doc, line);
|
2716 |
+
var possible = true;
|
2717 |
+
function findNextLine() {
|
2718 |
+
var l = line + dir;
|
2719 |
+
if (l < doc.first || l >= doc.first + doc.size) return (possible = false);
|
2720 |
+
line = l;
|
2721 |
+
return lineObj = getLine(doc, l);
|
2722 |
+
}
|
2723 |
+
function moveOnce(boundToLine) {
|
2724 |
+
var next = (visually ? moveVisually : moveLogically)(lineObj, ch, dir, true);
|
2725 |
+
if (next == null) {
|
2726 |
+
if (!boundToLine && findNextLine()) {
|
2727 |
+
if (visually) ch = (dir < 0 ? lineRight : lineLeft)(lineObj);
|
2728 |
+
else ch = dir < 0 ? lineObj.text.length : 0;
|
2729 |
+
} else return (possible = false);
|
2730 |
+
} else ch = next;
|
2731 |
+
return true;
|
2732 |
+
}
|
2733 |
+
|
2734 |
+
if (unit == "char") moveOnce();
|
2735 |
+
else if (unit == "column") moveOnce(true);
|
2736 |
+
else if (unit == "word" || unit == "group") {
|
2737 |
+
var sawType = null, group = unit == "group";
|
2738 |
+
for (var first = true;; first = false) {
|
2739 |
+
if (dir < 0 && !moveOnce(!first)) break;
|
2740 |
+
var cur = lineObj.text.charAt(ch) || "\n";
|
2741 |
+
var type = isWordChar(cur) ? "w"
|
2742 |
+
: !group ? null
|
2743 |
+
: /\s/.test(cur) ? null
|
2744 |
+
: "p";
|
2745 |
+
if (sawType && sawType != type) {
|
2746 |
+
if (dir < 0) {dir = 1; moveOnce();}
|
2747 |
+
break;
|
2748 |
+
}
|
2749 |
+
if (type) sawType = type;
|
2750 |
+
if (dir > 0 && !moveOnce(!first)) break;
|
2751 |
+
}
|
2752 |
+
}
|
2753 |
+
var result = skipAtomic(doc, Pos(line, ch), origDir, true);
|
2754 |
+
if (!possible) result.hitSide = true;
|
2755 |
+
return result;
|
2756 |
+
}
|
2757 |
+
|
2758 |
+
function findPosV(cm, pos, dir, unit) {
|
2759 |
+
var doc = cm.doc, x = pos.left, y;
|
2760 |
+
if (unit == "page") {
|
2761 |
+
var pageSize = Math.min(cm.display.wrapper.clientHeight, window.innerHeight || document.documentElement.clientHeight);
|
2762 |
+
y = pos.top + dir * (pageSize - (dir < 0 ? 1.5 : .5) * textHeight(cm.display));
|
2763 |
+
} else if (unit == "line") {
|
2764 |
+
y = dir > 0 ? pos.bottom + 3 : pos.top - 3;
|
2765 |
+
}
|
2766 |
+
for (;;) {
|
2767 |
+
var target = coordsChar(cm, x, y);
|
2768 |
+
if (!target.outside) break;
|
2769 |
+
if (dir < 0 ? y <= 0 : y >= doc.height) { target.hitSide = true; break; }
|
2770 |
+
y += dir * 5;
|
2771 |
+
}
|
2772 |
+
return target;
|
2773 |
+
}
|
2774 |
+
|
2775 |
+
function findWordAt(line, pos) {
|
2776 |
+
var start = pos.ch, end = pos.ch;
|
2777 |
+
if (line) {
|
2778 |
+
if ((pos.xRel < 0 || end == line.length) && start) --start; else ++end;
|
2779 |
+
var startChar = line.charAt(start);
|
2780 |
+
var check = isWordChar(startChar) ? isWordChar
|
2781 |
+
: /\s/.test(startChar) ? function(ch) {return /\s/.test(ch);}
|
2782 |
+
: function(ch) {return !/\s/.test(ch) && !isWordChar(ch);};
|
2783 |
+
while (start > 0 && check(line.charAt(start - 1))) --start;
|
2784 |
+
while (end < line.length && check(line.charAt(end))) ++end;
|
2785 |
+
}
|
2786 |
+
return {from: Pos(pos.line, start), to: Pos(pos.line, end)};
|
2787 |
+
}
|
2788 |
+
|
2789 |
+
function selectLine(cm, line) {
|
2790 |
+
extendSelection(cm.doc, Pos(line, 0), clipPos(cm.doc, Pos(line + 1, 0)));
|
2791 |
+
}
|
2792 |
+
|
2793 |
+
// PROTOTYPE
|
2794 |
+
|
2795 |
+
// The publicly visible API. Note that operation(null, f) means
|
2796 |
+
// 'wrap f in an operation, performed on its `this` parameter'
|
2797 |
+
|
2798 |
+
CodeMirror.prototype = {
|
2799 |
+
constructor: CodeMirror,
|
2800 |
+
focus: function(){window.focus(); focusInput(this); onFocus(this); fastPoll(this);},
|
2801 |
+
|
2802 |
+
setOption: function(option, value) {
|
2803 |
+
var options = this.options, old = options[option];
|
2804 |
+
if (options[option] == value && option != "mode") return;
|
2805 |
+
options[option] = value;
|
2806 |
+
if (optionHandlers.hasOwnProperty(option))
|
2807 |
+
operation(this, optionHandlers[option])(this, value, old);
|
2808 |
+
},
|
2809 |
+
|
2810 |
+
getOption: function(option) {return this.options[option];},
|
2811 |
+
getDoc: function() {return this.doc;},
|
2812 |
+
|
2813 |
+
addKeyMap: function(map, bottom) {
|
2814 |
+
this.state.keyMaps[bottom ? "push" : "unshift"](map);
|
2815 |
+
},
|
2816 |
+
removeKeyMap: function(map) {
|
2817 |
+
var maps = this.state.keyMaps;
|
2818 |
+
for (var i = 0; i < maps.length; ++i)
|
2819 |
+
if (maps[i] == map || (typeof maps[i] != "string" && maps[i].name == map)) {
|
2820 |
+
maps.splice(i, 1);
|
2821 |
+
return true;
|
2822 |
+
}
|
2823 |
+
},
|
2824 |
+
|
2825 |
+
addOverlay: operation(null, function(spec, options) {
|
2826 |
+
var mode = spec.token ? spec : CodeMirror.getMode(this.options, spec);
|
2827 |
+
if (mode.startState) throw new Error("Overlays may not be stateful.");
|
2828 |
+
this.state.overlays.push({mode: mode, modeSpec: spec, opaque: options && options.opaque});
|
2829 |
+
this.state.modeGen++;
|
2830 |
+
regChange(this);
|
2831 |
+
}),
|
2832 |
+
removeOverlay: operation(null, function(spec) {
|
2833 |
+
var overlays = this.state.overlays;
|
2834 |
+
for (var i = 0; i < overlays.length; ++i) {
|
2835 |
+
var cur = overlays[i].modeSpec;
|
2836 |
+
if (cur == spec || typeof spec == "string" && cur.name == spec) {
|
2837 |
+
overlays.splice(i, 1);
|
2838 |
+
this.state.modeGen++;
|
2839 |
+
regChange(this);
|
2840 |
+
return;
|
2841 |
+
}
|
2842 |
+
}
|
2843 |
+
}),
|
2844 |
+
|
2845 |
+
indentLine: operation(null, function(n, dir, aggressive) {
|
2846 |
+
if (typeof dir != "string" && typeof dir != "number") {
|
2847 |
+
if (dir == null) dir = this.options.smartIndent ? "smart" : "prev";
|
2848 |
+
else dir = dir ? "add" : "subtract";
|
2849 |
+
}
|
2850 |
+
if (isLine(this.doc, n)) indentLine(this, n, dir, aggressive);
|
2851 |
+
}),
|
2852 |
+
indentSelection: operation(null, function(how) {
|
2853 |
+
var sel = this.doc.sel;
|
2854 |
+
if (posEq(sel.from, sel.to)) return indentLine(this, sel.from.line, how);
|
2855 |
+
var e = sel.to.line - (sel.to.ch ? 0 : 1);
|
2856 |
+
for (var i = sel.from.line; i <= e; ++i) indentLine(this, i, how);
|
2857 |
+
}),
|
2858 |
+
|
2859 |
+
// Fetch the parser token for a given character. Useful for hacks
|
2860 |
+
// that want to inspect the mode state (say, for completion).
|
2861 |
+
getTokenAt: function(pos, precise) {
|
2862 |
+
var doc = this.doc;
|
2863 |
+
pos = clipPos(doc, pos);
|
2864 |
+
var state = getStateBefore(this, pos.line, precise), mode = this.doc.mode;
|
2865 |
+
var line = getLine(doc, pos.line);
|
2866 |
+
var stream = new StringStream(line.text, this.options.tabSize);
|
2867 |
+
while (stream.pos < pos.ch && !stream.eol()) {
|
2868 |
+
stream.start = stream.pos;
|
2869 |
+
var style = mode.token(stream, state);
|
2870 |
+
}
|
2871 |
+
return {start: stream.start,
|
2872 |
+
end: stream.pos,
|
2873 |
+
string: stream.current(),
|
2874 |
+
className: style || null, // Deprecated, use 'type' instead
|
2875 |
+
type: style || null,
|
2876 |
+
state: state};
|
2877 |
+
},
|
2878 |
+
|
2879 |
+
getTokenTypeAt: function(pos) {
|
2880 |
+
pos = clipPos(this.doc, pos);
|
2881 |
+
var styles = getLineStyles(this, getLine(this.doc, pos.line));
|
2882 |
+
var before = 0, after = (styles.length - 1) / 2, ch = pos.ch;
|
2883 |
+
if (ch == 0) return styles[2];
|
2884 |
+
for (;;) {
|
2885 |
+
var mid = (before + after) >> 1;
|
2886 |
+
if ((mid ? styles[mid * 2 - 1] : 0) >= ch) after = mid;
|
2887 |
+
else if (styles[mid * 2 + 1] < ch) before = mid + 1;
|
2888 |
+
else return styles[mid * 2 + 2];
|
2889 |
+
}
|
2890 |
+
},
|
2891 |
+
|
2892 |
+
getModeAt: function(pos) {
|
2893 |
+
var mode = this.doc.mode;
|
2894 |
+
if (!mode.innerMode) return mode;
|
2895 |
+
return CodeMirror.innerMode(mode, this.getTokenAt(pos).state).mode;
|
2896 |
+
},
|
2897 |
+
|
2898 |
+
getHelper: function(pos, type) {
|
2899 |
+
if (!helpers.hasOwnProperty(type)) return;
|
2900 |
+
var help = helpers[type], mode = this.getModeAt(pos);
|
2901 |
+
return mode[type] && help[mode[type]] ||
|
2902 |
+
mode.helperType && help[mode.helperType] ||
|
2903 |
+
help[mode.name];
|
2904 |
+
},
|
2905 |
+
|
2906 |
+
getStateAfter: function(line, precise) {
|
2907 |
+
var doc = this.doc;
|
2908 |
+
line = clipLine(doc, line == null ? doc.first + doc.size - 1: line);
|
2909 |
+
return getStateBefore(this, line + 1, precise);
|
2910 |
+
},
|
2911 |
+
|
2912 |
+
cursorCoords: function(start, mode) {
|
2913 |
+
var pos, sel = this.doc.sel;
|
2914 |
+
if (start == null) pos = sel.head;
|
2915 |
+
else if (typeof start == "object") pos = clipPos(this.doc, start);
|
2916 |
+
else pos = start ? sel.from : sel.to;
|
2917 |
+
return cursorCoords(this, pos, mode || "page");
|
2918 |
+
},
|
2919 |
+
|
2920 |
+
charCoords: function(pos, mode) {
|
2921 |
+
return charCoords(this, clipPos(this.doc, pos), mode || "page");
|
2922 |
+
},
|
2923 |
+
|
2924 |
+
coordsChar: function(coords, mode) {
|
2925 |
+
coords = fromCoordSystem(this, coords, mode || "page");
|
2926 |
+
return coordsChar(this, coords.left, coords.top);
|
2927 |
+
},
|
2928 |
+
|
2929 |
+
lineAtHeight: function(height, mode) {
|
2930 |
+
height = fromCoordSystem(this, {top: height, left: 0}, mode || "page").top;
|
2931 |
+
return lineAtHeight(this.doc, height + this.display.viewOffset);
|
2932 |
+
},
|
2933 |
+
heightAtLine: function(line, mode) {
|
2934 |
+
var end = false, last = this.doc.first + this.doc.size - 1;
|
2935 |
+
if (line < this.doc.first) line = this.doc.first;
|
2936 |
+
else if (line > last) { line = last; end = true; }
|
2937 |
+
var lineObj = getLine(this.doc, line);
|
2938 |
+
return intoCoordSystem(this, getLine(this.doc, line), {top: 0, left: 0}, mode || "page").top +
|
2939 |
+
(end ? lineObj.height : 0);
|
2940 |
+
},
|
2941 |
+
|
2942 |
+
defaultTextHeight: function() { return textHeight(this.display); },
|
2943 |
+
defaultCharWidth: function() { return charWidth(this.display); },
|
2944 |
+
|
2945 |
+
setGutterMarker: operation(null, function(line, gutterID, value) {
|
2946 |
+
return changeLine(this, line, function(line) {
|
2947 |
+
var markers = line.gutterMarkers || (line.gutterMarkers = {});
|
2948 |
+
markers[gutterID] = value;
|
2949 |
+
if (!value && isEmpty(markers)) line.gutterMarkers = null;
|
2950 |
+
return true;
|
2951 |
+
});
|
2952 |
+
}),
|
2953 |
+
|
2954 |
+
clearGutter: operation(null, function(gutterID) {
|
2955 |
+
var cm = this, doc = cm.doc, i = doc.first;
|
2956 |
+
doc.iter(function(line) {
|
2957 |
+
if (line.gutterMarkers && line.gutterMarkers[gutterID]) {
|
2958 |
+
line.gutterMarkers[gutterID] = null;
|
2959 |
+
regChange(cm, i, i + 1);
|
2960 |
+
if (isEmpty(line.gutterMarkers)) line.gutterMarkers = null;
|
2961 |
+
}
|
2962 |
+
++i;
|
2963 |
+
});
|
2964 |
+
}),
|
2965 |
+
|
2966 |
+
addLineClass: operation(null, function(handle, where, cls) {
|
2967 |
+
return changeLine(this, handle, function(line) {
|
2968 |
+
var prop = where == "text" ? "textClass" : where == "background" ? "bgClass" : "wrapClass";
|
2969 |
+
if (!line[prop]) line[prop] = cls;
|
2970 |
+
else if (new RegExp("(?:^|\\s)" + cls + "(?:$|\\s)").test(line[prop])) return false;
|
2971 |
+
else line[prop] += " " + cls;
|
2972 |
+
return true;
|
2973 |
+
});
|
2974 |
+
}),
|
2975 |
+
|
2976 |
+
removeLineClass: operation(null, function(handle, where, cls) {
|
2977 |
+
return changeLine(this, handle, function(line) {
|
2978 |
+
var prop = where == "text" ? "textClass" : where == "background" ? "bgClass" : "wrapClass";
|
2979 |
+
var cur = line[prop];
|
2980 |
+
if (!cur) return false;
|
2981 |
+
else if (cls == null) line[prop] = null;
|
2982 |
+
else {
|
2983 |
+
var found = cur.match(new RegExp("(?:^|\\s+)" + cls + "(?:$|\\s+)"));
|
2984 |
+
if (!found) return false;
|
2985 |
+
var end = found.index + found[0].length;
|
2986 |
+
line[prop] = cur.slice(0, found.index) + (!found.index || end == cur.length ? "" : " ") + cur.slice(end) || null;
|
2987 |
+
}
|
2988 |
+
return true;
|
2989 |
+
});
|
2990 |
+
}),
|
2991 |
+
|
2992 |
+
addLineWidget: operation(null, function(handle, node, options) {
|
2993 |
+
return addLineWidget(this, handle, node, options);
|
2994 |
+
}),
|
2995 |
+
|
2996 |
+
removeLineWidget: function(widget) { widget.clear(); },
|
2997 |
+
|
2998 |
+
lineInfo: function(line) {
|
2999 |
+
if (typeof line == "number") {
|
3000 |
+
if (!isLine(this.doc, line)) return null;
|
3001 |
+
var n = line;
|
3002 |
+
line = getLine(this.doc, line);
|
3003 |
+
if (!line) return null;
|
3004 |
+
} else {
|
3005 |
+
var n = lineNo(line);
|
3006 |
+
if (n == null) return null;
|
3007 |
+
}
|
3008 |
+
return {line: n, handle: line, text: line.text, gutterMarkers: line.gutterMarkers,
|
3009 |
+
textClass: line.textClass, bgClass: line.bgClass, wrapClass: line.wrapClass,
|
3010 |
+
widgets: line.widgets};
|
3011 |
+
},
|
3012 |
+
|
3013 |
+
getViewport: function() { return {from: this.display.showingFrom, to: this.display.showingTo};},
|
3014 |
+
|
3015 |
+
addWidget: function(pos, node, scroll, vert, horiz) {
|
3016 |
+
var display = this.display;
|
3017 |
+
pos = cursorCoords(this, clipPos(this.doc, pos));
|
3018 |
+
var top = pos.bottom, left = pos.left;
|
3019 |
+
node.style.position = "absolute";
|
3020 |
+
display.sizer.appendChild(node);
|
3021 |
+
if (vert == "over") {
|
3022 |
+
top = pos.top;
|
3023 |
+
} else if (vert == "above" || vert == "near") {
|
3024 |
+
var vspace = Math.max(display.wrapper.clientHeight, this.doc.height),
|
3025 |
+
hspace = Math.max(display.sizer.clientWidth, display.lineSpace.clientWidth);
|
3026 |
+
// Default to positioning above (if specified and possible); otherwise default to positioning below
|
3027 |
+
if ((vert == 'above' || pos.bottom + node.offsetHeight > vspace) && pos.top > node.offsetHeight)
|
3028 |
+
top = pos.top - node.offsetHeight;
|
3029 |
+
else if (pos.bottom + node.offsetHeight <= vspace)
|
3030 |
+
top = pos.bottom;
|
3031 |
+
if (left + node.offsetWidth > hspace)
|
3032 |
+
left = hspace - node.offsetWidth;
|
3033 |
+
}
|
3034 |
+
node.style.top = top + "px";
|
3035 |
+
node.style.left = node.style.right = "";
|
3036 |
+
if (horiz == "right") {
|
3037 |
+
left = display.sizer.clientWidth - node.offsetWidth;
|
3038 |
+
node.style.right = "0px";
|
3039 |
+
} else {
|
3040 |
+
if (horiz == "left") left = 0;
|
3041 |
+
else if (horiz == "middle") left = (display.sizer.clientWidth - node.offsetWidth) / 2;
|
3042 |
+
node.style.left = left + "px";
|
3043 |
+
}
|
3044 |
+
if (scroll)
|
3045 |
+
scrollIntoView(this, left, top, left + node.offsetWidth, top + node.offsetHeight);
|
3046 |
+
},
|
3047 |
+
|
3048 |
+
triggerOnKeyDown: operation(null, onKeyDown),
|
3049 |
+
|
3050 |
+
execCommand: function(cmd) {return commands[cmd](this);},
|
3051 |
+
|
3052 |
+
findPosH: function(from, amount, unit, visually) {
|
3053 |
+
var dir = 1;
|
3054 |
+
if (amount < 0) { dir = -1; amount = -amount; }
|
3055 |
+
for (var i = 0, cur = clipPos(this.doc, from); i < amount; ++i) {
|
3056 |
+
cur = findPosH(this.doc, cur, dir, unit, visually);
|
3057 |
+
if (cur.hitSide) break;
|
3058 |
+
}
|
3059 |
+
return cur;
|
3060 |
+
},
|
3061 |
+
|
3062 |
+
moveH: operation(null, function(dir, unit) {
|
3063 |
+
var sel = this.doc.sel, pos;
|
3064 |
+
if (sel.shift || sel.extend || posEq(sel.from, sel.to))
|
3065 |
+
pos = findPosH(this.doc, sel.head, dir, unit, this.options.rtlMoveVisually);
|
3066 |
+
else
|
3067 |
+
pos = dir < 0 ? sel.from : sel.to;
|
3068 |
+
extendSelection(this.doc, pos, pos, dir);
|
3069 |
+
}),
|
3070 |
+
|
3071 |
+
deleteH: operation(null, function(dir, unit) {
|
3072 |
+
var sel = this.doc.sel;
|
3073 |
+
if (!posEq(sel.from, sel.to)) replaceRange(this.doc, "", sel.from, sel.to, "+delete");
|
3074 |
+
else replaceRange(this.doc, "", sel.from, findPosH(this.doc, sel.head, dir, unit, false), "+delete");
|
3075 |
+
this.curOp.userSelChange = true;
|
3076 |
+
}),
|
3077 |
+
|
3078 |
+
findPosV: function(from, amount, unit, goalColumn) {
|
3079 |
+
var dir = 1, x = goalColumn;
|
3080 |
+
if (amount < 0) { dir = -1; amount = -amount; }
|
3081 |
+
for (var i = 0, cur = clipPos(this.doc, from); i < amount; ++i) {
|
3082 |
+
var coords = cursorCoords(this, cur, "div");
|
3083 |
+
if (x == null) x = coords.left;
|
3084 |
+
else coords.left = x;
|
3085 |
+
cur = findPosV(this, coords, dir, unit);
|
3086 |
+
if (cur.hitSide) break;
|
3087 |
+
}
|
3088 |
+
return cur;
|
3089 |
+
},
|
3090 |
+
|
3091 |
+
moveV: operation(null, function(dir, unit) {
|
3092 |
+
var sel = this.doc.sel;
|
3093 |
+
var pos = cursorCoords(this, sel.head, "div");
|
3094 |
+
if (sel.goalColumn != null) pos.left = sel.goalColumn;
|
3095 |
+
var target = findPosV(this, pos, dir, unit);
|
3096 |
+
|
3097 |
+
if (unit == "page") addToScrollPos(this, 0, charCoords(this, target, "div").top - pos.top);
|
3098 |
+
extendSelection(this.doc, target, target, dir);
|
3099 |
+
sel.goalColumn = pos.left;
|
3100 |
+
}),
|
3101 |
+
|
3102 |
+
toggleOverwrite: function(value) {
|
3103 |
+
if (value != null && value == this.state.overwrite) return;
|
3104 |
+
if (this.state.overwrite = !this.state.overwrite)
|
3105 |
+
this.display.cursor.className += " CodeMirror-overwrite";
|
3106 |
+
else
|
3107 |
+
this.display.cursor.className = this.display.cursor.className.replace(" CodeMirror-overwrite", "");
|
3108 |
+
},
|
3109 |
+
hasFocus: function() { return this.state.focused; },
|
3110 |
+
|
3111 |
+
scrollTo: operation(null, function(x, y) {
|
3112 |
+
updateScrollPos(this, x, y);
|
3113 |
+
}),
|
3114 |
+
getScrollInfo: function() {
|
3115 |
+
var scroller = this.display.scroller, co = scrollerCutOff;
|
3116 |
+
return {left: scroller.scrollLeft, top: scroller.scrollTop,
|
3117 |
+
height: scroller.scrollHeight - co, width: scroller.scrollWidth - co,
|
3118 |
+
clientHeight: scroller.clientHeight - co, clientWidth: scroller.clientWidth - co};
|
3119 |
+
},
|
3120 |
+
|
3121 |
+
scrollIntoView: operation(null, function(pos, margin) {
|
3122 |
+
if (typeof pos == "number") pos = Pos(pos, 0);
|
3123 |
+
if (!margin) margin = 0;
|
3124 |
+
var coords = pos;
|
3125 |
+
|
3126 |
+
if (!pos || pos.line != null) {
|
3127 |
+
this.curOp.scrollToPos = pos ? clipPos(this.doc, pos) : this.doc.sel.head;
|
3128 |
+
this.curOp.scrollToPosMargin = margin;
|
3129 |
+
coords = cursorCoords(this, this.curOp.scrollToPos);
|
3130 |
+
}
|
3131 |
+
var sPos = calculateScrollPos(this, coords.left, coords.top - margin, coords.right, coords.bottom + margin);
|
3132 |
+
updateScrollPos(this, sPos.scrollLeft, sPos.scrollTop);
|
3133 |
+
}),
|
3134 |
+
|
3135 |
+
setSize: operation(null, function(width, height) {
|
3136 |
+
function interpret(val) {
|
3137 |
+
return typeof val == "number" || /^\d+$/.test(String(val)) ? val + "px" : val;
|
3138 |
+
}
|
3139 |
+
if (width != null) this.display.wrapper.style.width = interpret(width);
|
3140 |
+
if (height != null) this.display.wrapper.style.height = interpret(height);
|
3141 |
+
if (this.options.lineWrapping)
|
3142 |
+
this.display.measureLineCache.length = this.display.measureLineCachePos = 0;
|
3143 |
+
this.curOp.forceUpdate = true;
|
3144 |
+
}),
|
3145 |
+
|
3146 |
+
operation: function(f){return runInOp(this, f);},
|
3147 |
+
|
3148 |
+
refresh: operation(null, function() {
|
3149 |
+
clearCaches(this);
|
3150 |
+
updateScrollPos(this, this.doc.scrollLeft, this.doc.scrollTop);
|
3151 |
+
regChange(this);
|
3152 |
+
}),
|
3153 |
+
|
3154 |
+
swapDoc: operation(null, function(doc) {
|
3155 |
+
var old = this.doc;
|
3156 |
+
old.cm = null;
|
3157 |
+
attachDoc(this, doc);
|
3158 |
+
clearCaches(this);
|
3159 |
+
resetInput(this, true);
|
3160 |
+
updateScrollPos(this, doc.scrollLeft, doc.scrollTop);
|
3161 |
+
return old;
|
3162 |
+
}),
|
3163 |
+
|
3164 |
+
getInputField: function(){return this.display.input;},
|
3165 |
+
getWrapperElement: function(){return this.display.wrapper;},
|
3166 |
+
getScrollerElement: function(){return this.display.scroller;},
|
3167 |
+
getGutterElement: function(){return this.display.gutters;}
|
3168 |
+
};
|
3169 |
+
eventMixin(CodeMirror);
|
3170 |
+
|
3171 |
+
// OPTION DEFAULTS
|
3172 |
+
|
3173 |
+
var optionHandlers = CodeMirror.optionHandlers = {};
|
3174 |
+
|
3175 |
+
// The default configuration options.
|
3176 |
+
var defaults = CodeMirror.defaults = {};
|
3177 |
+
|
3178 |
+
function option(name, deflt, handle, notOnInit) {
|
3179 |
+
CodeMirror.defaults[name] = deflt;
|
3180 |
+
if (handle) optionHandlers[name] =
|
3181 |
+
notOnInit ? function(cm, val, old) {if (old != Init) handle(cm, val, old);} : handle;
|
3182 |
+
}
|
3183 |
+
|
3184 |
+
var Init = CodeMirror.Init = {toString: function(){return "CodeMirror.Init";}};
|
3185 |
+
|
3186 |
+
// These two are, on init, called from the constructor because they
|
3187 |
+
// have to be initialized before the editor can start at all.
|
3188 |
+
option("value", "", function(cm, val) {
|
3189 |
+
cm.setValue(val);
|
3190 |
+
}, true);
|
3191 |
+
option("mode", null, function(cm, val) {
|
3192 |
+
cm.doc.modeOption = val;
|
3193 |
+
loadMode(cm);
|
3194 |
+
}, true);
|
3195 |
+
|
3196 |
+
option("indentUnit", 2, loadMode, true);
|
3197 |
+
option("indentWithTabs", false);
|
3198 |
+
option("smartIndent", true);
|
3199 |
+
option("tabSize", 4, function(cm) {
|
3200 |
+
loadMode(cm);
|
3201 |
+
clearCaches(cm);
|
3202 |
+
regChange(cm);
|
3203 |
+
}, true);
|
3204 |
+
option("electricChars", true);
|
3205 |
+
option("rtlMoveVisually", !windows);
|
3206 |
+
|
3207 |
+
option("theme", "default", function(cm) {
|
3208 |
+
themeChanged(cm);
|
3209 |
+
guttersChanged(cm);
|
3210 |
+
}, true);
|
3211 |
+
option("keyMap", "default", keyMapChanged);
|
3212 |
+
option("extraKeys", null);
|
3213 |
+
|
3214 |
+
option("onKeyEvent", null);
|
3215 |
+
option("onDragEvent", null);
|
3216 |
+
|
3217 |
+
option("lineWrapping", false, wrappingChanged, true);
|
3218 |
+
option("gutters", [], function(cm) {
|
3219 |
+
setGuttersForLineNumbers(cm.options);
|
3220 |
+
guttersChanged(cm);
|
3221 |
+
}, true);
|
3222 |
+
option("fixedGutter", true, function(cm, val) {
|
3223 |
+
cm.display.gutters.style.left = val ? compensateForHScroll(cm.display) + "px" : "0";
|
3224 |
+
cm.refresh();
|
3225 |
+
}, true);
|
3226 |
+
option("coverGutterNextToScrollbar", false, updateScrollbars, true);
|
3227 |
+
option("lineNumbers", false, function(cm) {
|
3228 |
+
setGuttersForLineNumbers(cm.options);
|
3229 |
+
guttersChanged(cm);
|
3230 |
+
}, true);
|
3231 |
+
option("firstLineNumber", 1, guttersChanged, true);
|
3232 |
+
option("lineNumberFormatter", function(integer) {return integer;}, guttersChanged, true);
|
3233 |
+
option("showCursorWhenSelecting", false, updateSelection, true);
|
3234 |
+
|
3235 |
+
option("readOnly", false, function(cm, val) {
|
3236 |
+
if (val == "nocursor") {onBlur(cm); cm.display.input.blur();}
|
3237 |
+
else if (!val) resetInput(cm, true);
|
3238 |
+
});
|
3239 |
+
option("dragDrop", true);
|
3240 |
+
|
3241 |
+
option("cursorBlinkRate", 530);
|
3242 |
+
option("cursorScrollMargin", 0);
|
3243 |
+
option("cursorHeight", 1);
|
3244 |
+
option("workTime", 100);
|
3245 |
+
option("workDelay", 100);
|
3246 |
+
option("flattenSpans", true);
|
3247 |
+
option("pollInterval", 100);
|
3248 |
+
option("undoDepth", 40, function(cm, val){cm.doc.history.undoDepth = val;});
|
3249 |
+
option("historyEventDelay", 500);
|
3250 |
+
option("viewportMargin", 10, function(cm){cm.refresh();}, true);
|
3251 |
+
option("maxHighlightLength", 10000, function(cm){loadMode(cm); cm.refresh();}, true);
|
3252 |
+
option("moveInputWithCursor", true, function(cm, val) {
|
3253 |
+
if (!val) cm.display.inputDiv.style.top = cm.display.inputDiv.style.left = 0;
|
3254 |
+
});
|
3255 |
+
|
3256 |
+
option("tabindex", null, function(cm, val) {
|
3257 |
+
cm.display.input.tabIndex = val || "";
|
3258 |
+
});
|
3259 |
+
option("autofocus", null);
|
3260 |
+
|
3261 |
+
// MODE DEFINITION AND QUERYING
|
3262 |
+
|
3263 |
+
// Known modes, by name and by MIME
|
3264 |
+
var modes = CodeMirror.modes = {}, mimeModes = CodeMirror.mimeModes = {};
|
3265 |
+
|
3266 |
+
CodeMirror.defineMode = function(name, mode) {
|
3267 |
+
if (!CodeMirror.defaults.mode && name != "null") CodeMirror.defaults.mode = name;
|
3268 |
+
if (arguments.length > 2) {
|
3269 |
+
mode.dependencies = [];
|
3270 |
+
for (var i = 2; i < arguments.length; ++i) mode.dependencies.push(arguments[i]);
|
3271 |
+
}
|
3272 |
+
modes[name] = mode;
|
3273 |
+
};
|
3274 |
+
|
3275 |
+
CodeMirror.defineMIME = function(mime, spec) {
|
3276 |
+
mimeModes[mime] = spec;
|
3277 |
+
};
|
3278 |
+
|
3279 |
+
CodeMirror.resolveMode = function(spec) {
|
3280 |
+
if (typeof spec == "string" && mimeModes.hasOwnProperty(spec)) {
|
3281 |
+
spec = mimeModes[spec];
|
3282 |
+
} else if (spec && typeof spec.name == "string" && mimeModes.hasOwnProperty(spec.name)) {
|
3283 |
+
var found = mimeModes[spec.name];
|
3284 |
+
spec = createObj(found, spec);
|
3285 |
+
spec.name = found.name;
|
3286 |
+
} else if (typeof spec == "string" && /^[\w\-]+\/[\w\-]+\+xml$/.test(spec)) {
|
3287 |
+
return CodeMirror.resolveMode("application/xml");
|
3288 |
+
}
|
3289 |
+
if (typeof spec == "string") return {name: spec};
|
3290 |
+
else return spec || {name: "null"};
|
3291 |
+
};
|
3292 |
+
|
3293 |
+
CodeMirror.getMode = function(options, spec) {
|
3294 |
+
var spec = CodeMirror.resolveMode(spec);
|
3295 |
+
var mfactory = modes[spec.name];
|
3296 |
+
if (!mfactory) return CodeMirror.getMode(options, "text/plain");
|
3297 |
+
var modeObj = mfactory(options, spec);
|
3298 |
+
if (modeExtensions.hasOwnProperty(spec.name)) {
|
3299 |
+
var exts = modeExtensions[spec.name];
|
3300 |
+
for (var prop in exts) {
|
3301 |
+
if (!exts.hasOwnProperty(prop)) continue;
|
3302 |
+
if (modeObj.hasOwnProperty(prop)) modeObj["_" + prop] = modeObj[prop];
|
3303 |
+
modeObj[prop] = exts[prop];
|
3304 |
+
}
|
3305 |
+
}
|
3306 |
+
modeObj.name = spec.name;
|
3307 |
+
|
3308 |
+
return modeObj;
|
3309 |
+
};
|
3310 |
+
|
3311 |
+
CodeMirror.defineMode("null", function() {
|
3312 |
+
return {token: function(stream) {stream.skipToEnd();}};
|
3313 |
+
});
|
3314 |
+
CodeMirror.defineMIME("text/plain", "null");
|
3315 |
+
|
3316 |
+
var modeExtensions = CodeMirror.modeExtensions = {};
|
3317 |
+
CodeMirror.extendMode = function(mode, properties) {
|
3318 |
+
var exts = modeExtensions.hasOwnProperty(mode) ? modeExtensions[mode] : (modeExtensions[mode] = {});
|
3319 |
+
copyObj(properties, exts);
|
3320 |
+
};
|
3321 |
+
|
3322 |
+
// EXTENSIONS
|
3323 |
+
|
3324 |
+
CodeMirror.defineExtension = function(name, func) {
|
3325 |
+
CodeMirror.prototype[name] = func;
|
3326 |
+
};
|
3327 |
+
CodeMirror.defineDocExtension = function(name, func) {
|
3328 |
+
Doc.prototype[name] = func;
|
3329 |
+
};
|
3330 |
+
CodeMirror.defineOption = option;
|
3331 |
+
|
3332 |
+
var initHooks = [];
|
3333 |
+
CodeMirror.defineInitHook = function(f) {initHooks.push(f);};
|
3334 |
+
|
3335 |
+
var helpers = CodeMirror.helpers = {};
|
3336 |
+
CodeMirror.registerHelper = function(type, name, value) {
|
3337 |
+
if (!helpers.hasOwnProperty(type)) helpers[type] = CodeMirror[type] = {};
|
3338 |
+
helpers[type][name] = value;
|
3339 |
+
};
|
3340 |
+
|
3341 |
+
// UTILITIES
|
3342 |
+
|
3343 |
+
CodeMirror.isWordChar = isWordChar;
|
3344 |
+
|
3345 |
+
// MODE STATE HANDLING
|
3346 |
+
|
3347 |
+
// Utility functions for working with state. Exported because modes
|
3348 |
+
// sometimes need to do this.
|
3349 |
+
function copyState(mode, state) {
|
3350 |
+
if (state === true) return state;
|
3351 |
+
if (mode.copyState) return mode.copyState(state);
|
3352 |
+
var nstate = {};
|
3353 |
+
for (var n in state) {
|
3354 |
+
var val = state[n];
|
3355 |
+
if (val instanceof Array) val = val.concat([]);
|
3356 |
+
nstate[n] = val;
|
3357 |
+
}
|
3358 |
+
return nstate;
|
3359 |
+
}
|
3360 |
+
CodeMirror.copyState = copyState;
|
3361 |
+
|
3362 |
+
function startState(mode, a1, a2) {
|
3363 |
+
return mode.startState ? mode.startState(a1, a2) : true;
|
3364 |
+
}
|
3365 |
+
CodeMirror.startState = startState;
|
3366 |
+
|
3367 |
+
CodeMirror.innerMode = function(mode, state) {
|
3368 |
+
while (mode.innerMode) {
|
3369 |
+
var info = mode.innerMode(state);
|
3370 |
+
if (!info || info.mode == mode) break;
|
3371 |
+
state = info.state;
|
3372 |
+
mode = info.mode;
|
3373 |
+
}
|
3374 |
+
return info || {mode: mode, state: state};
|
3375 |
+
};
|
3376 |
+
|
3377 |
+
// STANDARD COMMANDS
|
3378 |
+
|
3379 |
+
var commands = CodeMirror.commands = {
|
3380 |
+
selectAll: function(cm) {cm.setSelection(Pos(cm.firstLine(), 0), Pos(cm.lastLine()));},
|
3381 |
+
killLine: function(cm) {
|
3382 |
+
var from = cm.getCursor(true), to = cm.getCursor(false), sel = !posEq(from, to);
|
3383 |
+
if (!sel && cm.getLine(from.line).length == from.ch)
|
3384 |
+
cm.replaceRange("", from, Pos(from.line + 1, 0), "+delete");
|
3385 |
+
else cm.replaceRange("", from, sel ? to : Pos(from.line), "+delete");
|
3386 |
+
},
|
3387 |
+
deleteLine: function(cm) {
|
3388 |
+
var l = cm.getCursor().line;
|
3389 |
+
cm.replaceRange("", Pos(l, 0), Pos(l), "+delete");
|
3390 |
+
},
|
3391 |
+
delLineLeft: function(cm) {
|
3392 |
+
var cur = cm.getCursor();
|
3393 |
+
cm.replaceRange("", Pos(cur.line, 0), cur, "+delete");
|
3394 |
+
},
|
3395 |
+
undo: function(cm) {cm.undo();},
|
3396 |
+
redo: function(cm) {cm.redo();},
|
3397 |
+
goDocStart: function(cm) {cm.extendSelection(Pos(cm.firstLine(), 0));},
|
3398 |
+
goDocEnd: function(cm) {cm.extendSelection(Pos(cm.lastLine()));},
|
3399 |
+
goLineStart: function(cm) {
|
3400 |
+
cm.extendSelection(lineStart(cm, cm.getCursor().line));
|
3401 |
+
},
|
3402 |
+
goLineStartSmart: function(cm) {
|
3403 |
+
var cur = cm.getCursor(), start = lineStart(cm, cur.line);
|
3404 |
+
var line = cm.getLineHandle(start.line);
|
3405 |
+
var order = getOrder(line);
|
3406 |
+
if (!order || order[0].level == 0) {
|
3407 |
+
var firstNonWS = Math.max(0, line.text.search(/\S/));
|
3408 |
+
var inWS = cur.line == start.line && cur.ch <= firstNonWS && cur.ch;
|
3409 |
+
cm.extendSelection(Pos(start.line, inWS ? 0 : firstNonWS));
|
3410 |
+
} else cm.extendSelection(start);
|
3411 |
+
},
|
3412 |
+
goLineEnd: function(cm) {
|
3413 |
+
cm.extendSelection(lineEnd(cm, cm.getCursor().line));
|
3414 |
+
},
|
3415 |
+
goLineRight: function(cm) {
|
3416 |
+
var top = cm.charCoords(cm.getCursor(), "div").top + 5;
|
3417 |
+
cm.extendSelection(cm.coordsChar({left: cm.display.lineDiv.offsetWidth + 100, top: top}, "div"));
|
3418 |
+
},
|
3419 |
+
goLineLeft: function(cm) {
|
3420 |
+
var top = cm.charCoords(cm.getCursor(), "div").top + 5;
|
3421 |
+
cm.extendSelection(cm.coordsChar({left: 0, top: top}, "div"));
|
3422 |
+
},
|
3423 |
+
goLineUp: function(cm) {cm.moveV(-1, "line");},
|
3424 |
+
goLineDown: function(cm) {cm.moveV(1, "line");},
|
3425 |
+
goPageUp: function(cm) {cm.moveV(-1, "page");},
|
3426 |
+
goPageDown: function(cm) {cm.moveV(1, "page");},
|
3427 |
+
goCharLeft: function(cm) {cm.moveH(-1, "char");},
|
3428 |
+
goCharRight: function(cm) {cm.moveH(1, "char");},
|
3429 |
+
goColumnLeft: function(cm) {cm.moveH(-1, "column");},
|
3430 |
+
goColumnRight: function(cm) {cm.moveH(1, "column");},
|
3431 |
+
goWordLeft: function(cm) {cm.moveH(-1, "word");},
|
3432 |
+
goGroupRight: function(cm) {cm.moveH(1, "group");},
|
3433 |
+
goGroupLeft: function(cm) {cm.moveH(-1, "group");},
|
3434 |
+
goWordRight: function(cm) {cm.moveH(1, "word");},
|
3435 |
+
delCharBefore: function(cm) {cm.deleteH(-1, "char");},
|
3436 |
+
delCharAfter: function(cm) {cm.deleteH(1, "char");},
|
3437 |
+
delWordBefore: function(cm) {cm.deleteH(-1, "word");},
|
3438 |
+
delWordAfter: function(cm) {cm.deleteH(1, "word");},
|
3439 |
+
delGroupBefore: function(cm) {cm.deleteH(-1, "group");},
|
3440 |
+
delGroupAfter: function(cm) {cm.deleteH(1, "group");},
|
3441 |
+
indentAuto: function(cm) {cm.indentSelection("smart");},
|
3442 |
+
indentMore: function(cm) {cm.indentSelection("add");},
|
3443 |
+
indentLess: function(cm) {cm.indentSelection("subtract");},
|
3444 |
+
insertTab: function(cm) {cm.replaceSelection("\t", "end", "+input");},
|
3445 |
+
defaultTab: function(cm) {
|
3446 |
+
if (cm.somethingSelected()) cm.indentSelection("add");
|
3447 |
+
else cm.replaceSelection("\t", "end", "+input");
|
3448 |
+
},
|
3449 |
+
transposeChars: function(cm) {
|
3450 |
+
var cur = cm.getCursor(), line = cm.getLine(cur.line);
|
3451 |
+
if (cur.ch > 0 && cur.ch < line.length - 1)
|
3452 |
+
cm.replaceRange(line.charAt(cur.ch) + line.charAt(cur.ch - 1),
|
3453 |
+
Pos(cur.line, cur.ch - 1), Pos(cur.line, cur.ch + 1));
|
3454 |
+
},
|
3455 |
+
newlineAndIndent: function(cm) {
|
3456 |
+
operation(cm, function() {
|
3457 |
+
cm.replaceSelection("\n", "end", "+input");
|
3458 |
+
cm.indentLine(cm.getCursor().line, null, true);
|
3459 |
+
})();
|
3460 |
+
},
|
3461 |
+
toggleOverwrite: function(cm) {cm.toggleOverwrite();}
|
3462 |
+
};
|
3463 |
+
|
3464 |
+
// STANDARD KEYMAPS
|
3465 |
+
|
3466 |
+
var keyMap = CodeMirror.keyMap = {};
|
3467 |
+
keyMap.basic = {
|
3468 |
+
"Left": "goCharLeft", "Right": "goCharRight", "Up": "goLineUp", "Down": "goLineDown",
|
3469 |
+
"End": "goLineEnd", "Home": "goLineStartSmart", "PageUp": "goPageUp", "PageDown": "goPageDown",
|
3470 |
+
"Delete": "delCharAfter", "Backspace": "delCharBefore", "Tab": "defaultTab", "Shift-Tab": "indentAuto",
|
3471 |
+
"Enter": "newlineAndIndent", "Insert": "toggleOverwrite"
|
3472 |
+
};
|
3473 |
+
// Note that the save and find-related commands aren't defined by
|
3474 |
+
// default. Unknown commands are simply ignored.
|
3475 |
+
keyMap.pcDefault = {
|
3476 |
+
"Ctrl-A": "selectAll", "Ctrl-D": "deleteLine", "Ctrl-Z": "undo", "Shift-Ctrl-Z": "redo", "Ctrl-Y": "redo",
|
3477 |
+
"Ctrl-Home": "goDocStart", "Alt-Up": "goDocStart", "Ctrl-End": "goDocEnd", "Ctrl-Down": "goDocEnd",
|
3478 |
+
"Ctrl-Left": "goGroupLeft", "Ctrl-Right": "goGroupRight", "Alt-Left": "goLineStart", "Alt-Right": "goLineEnd",
|
3479 |
+
"Ctrl-Backspace": "delGroupBefore", "Ctrl-Delete": "delGroupAfter", "Ctrl-S": "save", "Ctrl-F": "find",
|
3480 |
+
"Ctrl-G": "findNext", "Shift-Ctrl-G": "findPrev", "Shift-Ctrl-F": "replace", "Shift-Ctrl-R": "replaceAll",
|
3481 |
+
"Ctrl-[": "indentLess", "Ctrl-]": "indentMore",
|
3482 |
+
fallthrough: "basic"
|
3483 |
+
};
|
3484 |
+
keyMap.macDefault = {
|
3485 |
+
"Cmd-A": "selectAll", "Cmd-D": "deleteLine", "Cmd-Z": "undo", "Shift-Cmd-Z": "redo", "Cmd-Y": "redo",
|
3486 |
+
"Cmd-Up": "goDocStart", "Cmd-End": "goDocEnd", "Cmd-Down": "goDocEnd", "Alt-Left": "goGroupLeft",
|
3487 |
+
"Alt-Right": "goGroupRight", "Cmd-Left": "goLineStart", "Cmd-Right": "goLineEnd", "Alt-Backspace": "delGroupBefore",
|
3488 |
+
"Ctrl-Alt-Backspace": "delGroupAfter", "Alt-Delete": "delGroupAfter", "Cmd-S": "save", "Cmd-F": "find",
|
3489 |
+
"Cmd-G": "findNext", "Shift-Cmd-G": "findPrev", "Cmd-Alt-F": "replace", "Shift-Cmd-Alt-F": "replaceAll",
|
3490 |
+
"Cmd-[": "indentLess", "Cmd-]": "indentMore", "Cmd-Backspace": "delLineLeft",
|
3491 |
+
fallthrough: ["basic", "emacsy"]
|
3492 |
+
};
|
3493 |
+
keyMap["default"] = mac ? keyMap.macDefault : keyMap.pcDefault;
|
3494 |
+
keyMap.emacsy = {
|
3495 |
+
"Ctrl-F": "goCharRight", "Ctrl-B": "goCharLeft", "Ctrl-P": "goLineUp", "Ctrl-N": "goLineDown",
|
3496 |
+
"Alt-F": "goWordRight", "Alt-B": "goWordLeft", "Ctrl-A": "goLineStart", "Ctrl-E": "goLineEnd",
|
3497 |
+
"Ctrl-V": "goPageDown", "Shift-Ctrl-V": "goPageUp", "Ctrl-D": "delCharAfter", "Ctrl-H": "delCharBefore",
|
3498 |
+
"Alt-D": "delWordAfter", "Alt-Backspace": "delWordBefore", "Ctrl-K": "killLine", "Ctrl-T": "transposeChars"
|
3499 |
+
};
|
3500 |
+
|
3501 |
+
// KEYMAP DISPATCH
|
3502 |
+
|
3503 |
+
function getKeyMap(val) {
|
3504 |
+
if (typeof val == "string") return keyMap[val];
|
3505 |
+
else return val;
|
3506 |
+
}
|
3507 |
+
|
3508 |
+
function lookupKey(name, maps, handle) {
|
3509 |
+
function lookup(map) {
|
3510 |
+
map = getKeyMap(map);
|
3511 |
+
var found = map[name];
|
3512 |
+
if (found === false) return "stop";
|
3513 |
+
if (found != null && handle(found)) return true;
|
3514 |
+
if (map.nofallthrough) return "stop";
|
3515 |
+
|
3516 |
+
var fallthrough = map.fallthrough;
|
3517 |
+
if (fallthrough == null) return false;
|
3518 |
+
if (Object.prototype.toString.call(fallthrough) != "[object Array]")
|
3519 |
+
return lookup(fallthrough);
|
3520 |
+
for (var i = 0, e = fallthrough.length; i < e; ++i) {
|
3521 |
+
var done = lookup(fallthrough[i]);
|
3522 |
+
if (done) return done;
|
3523 |
+
}
|
3524 |
+
return false;
|
3525 |
+
}
|
3526 |
+
|
3527 |
+
for (var i = 0; i < maps.length; ++i) {
|
3528 |
+
var done = lookup(maps[i]);
|
3529 |
+
if (done) return done != "stop";
|
3530 |
+
}
|
3531 |
+
}
|
3532 |
+
function isModifierKey(event) {
|
3533 |
+
var name = keyNames[event.keyCode];
|
3534 |
+
return name == "Ctrl" || name == "Alt" || name == "Shift" || name == "Mod";
|
3535 |
+
}
|
3536 |
+
function keyName(event, noShift) {
|
3537 |
+
if (opera && event.keyCode == 34 && event["char"]) return false;
|
3538 |
+
var name = keyNames[event.keyCode];
|
3539 |
+
if (name == null || event.altGraphKey) return false;
|
3540 |
+
if (event.altKey) name = "Alt-" + name;
|
3541 |
+
if (flipCtrlCmd ? event.metaKey : event.ctrlKey) name = "Ctrl-" + name;
|
3542 |
+
if (flipCtrlCmd ? event.ctrlKey : event.metaKey) name = "Cmd-" + name;
|
3543 |
+
if (!noShift && event.shiftKey) name = "Shift-" + name;
|
3544 |
+
return name;
|
3545 |
+
}
|
3546 |
+
CodeMirror.lookupKey = lookupKey;
|
3547 |
+
CodeMirror.isModifierKey = isModifierKey;
|
3548 |
+
CodeMirror.keyName = keyName;
|
3549 |
+
|
3550 |
+
// FROMTEXTAREA
|
3551 |
+
|
3552 |
+
CodeMirror.fromTextArea = function(textarea, options) {
|
3553 |
+
if (!options) options = {};
|
3554 |
+
options.value = textarea.value;
|
3555 |
+
if (!options.tabindex && textarea.tabindex)
|
3556 |
+
options.tabindex = textarea.tabindex;
|
3557 |
+
if (!options.placeholder && textarea.placeholder)
|
3558 |
+
options.placeholder = textarea.placeholder;
|
3559 |
+
// Set autofocus to true if this textarea is focused, or if it has
|
3560 |
+
// autofocus and no other element is focused.
|
3561 |
+
if (options.autofocus == null) {
|
3562 |
+
var hasFocus = document.body;
|
3563 |
+
// doc.activeElement occasionally throws on IE
|
3564 |
+
try { hasFocus = document.activeElement; } catch(e) {}
|
3565 |
+
options.autofocus = hasFocus == textarea ||
|
3566 |
+
textarea.getAttribute("autofocus") != null && hasFocus == document.body;
|
3567 |
+
}
|
3568 |
+
|
3569 |
+
function save() {textarea.value = cm.getValue();}
|
3570 |
+
if (textarea.form) {
|
3571 |
+
on(textarea.form, "submit", save);
|
3572 |
+
// Deplorable hack to make the submit method do the right thing.
|
3573 |
+
if (!options.leaveSubmitMethodAlone) {
|
3574 |
+
var form = textarea.form, realSubmit = form.submit;
|
3575 |
+
try {
|
3576 |
+
var wrappedSubmit = form.submit = function() {
|
3577 |
+
save();
|
3578 |
+
form.submit = realSubmit;
|
3579 |
+
form.submit();
|
3580 |
+
form.submit = wrappedSubmit;
|
3581 |
+
};
|
3582 |
+
} catch(e) {}
|
3583 |
+
}
|
3584 |
+
}
|
3585 |
+
|
3586 |
+
textarea.style.display = "none";
|
3587 |
+
var cm = CodeMirror(function(node) {
|
3588 |
+
textarea.parentNode.insertBefore(node, textarea.nextSibling);
|
3589 |
+
}, options);
|
3590 |
+
cm.save = save;
|
3591 |
+
cm.getTextArea = function() { return textarea; };
|
3592 |
+
cm.toTextArea = function() {
|
3593 |
+
save();
|
3594 |
+
textarea.parentNode.removeChild(cm.getWrapperElement());
|
3595 |
+
textarea.style.display = "";
|
3596 |
+
if (textarea.form) {
|
3597 |
+
off(textarea.form, "submit", save);
|
3598 |
+
if (typeof textarea.form.submit == "function")
|
3599 |
+
textarea.form.submit = realSubmit;
|
3600 |
+
}
|
3601 |
+
};
|
3602 |
+
return cm;
|
3603 |
+
};
|
3604 |
+
|
3605 |
+
// STRING STREAM
|
3606 |
+
|
3607 |
+
// Fed to the mode parsers, provides helper functions to make
|
3608 |
+
// parsers more succinct.
|
3609 |
+
|
3610 |
+
// The character stream used by a mode's parser.
|
3611 |
+
function StringStream(string, tabSize) {
|
3612 |
+
this.pos = this.start = 0;
|
3613 |
+
this.string = string;
|
3614 |
+
this.tabSize = tabSize || 8;
|
3615 |
+
this.lastColumnPos = this.lastColumnValue = 0;
|
3616 |
+
}
|
3617 |
+
|
3618 |
+
StringStream.prototype = {
|
3619 |
+
eol: function() {return this.pos >= this.string.length;},
|
3620 |
+
sol: function() {return this.pos == 0;},
|
3621 |
+
peek: function() {return this.string.charAt(this.pos) || undefined;},
|
3622 |
+
next: function() {
|
3623 |
+
if (this.pos < this.string.length)
|
3624 |
+
return this.string.charAt(this.pos++);
|
3625 |
+
},
|
3626 |
+
eat: function(match) {
|
3627 |
+
var ch = this.string.charAt(this.pos);
|
3628 |
+
if (typeof match == "string") var ok = ch == match;
|
3629 |
+
else var ok = ch && (match.test ? match.test(ch) : match(ch));
|
3630 |
+
if (ok) {++this.pos; return ch;}
|
3631 |
+
},
|
3632 |
+
eatWhile: function(match) {
|
3633 |
+
var start = this.pos;
|
3634 |
+
while (this.eat(match)){}
|
3635 |
+
return this.pos > start;
|
3636 |
+
},
|
3637 |
+
eatSpace: function() {
|
3638 |
+
var start = this.pos;
|
3639 |
+
while (/[\s\u00a0]/.test(this.string.charAt(this.pos))) ++this.pos;
|
3640 |
+
return this.pos > start;
|
3641 |
+
},
|
3642 |
+
skipToEnd: function() {this.pos = this.string.length;},
|
3643 |
+
skipTo: function(ch) {
|
3644 |
+
var found = this.string.indexOf(ch, this.pos);
|
3645 |
+
if (found > -1) {this.pos = found; return true;}
|
3646 |
+
},
|
3647 |
+
backUp: function(n) {this.pos -= n;},
|
3648 |
+
column: function() {
|
3649 |
+
if (this.lastColumnPos < this.start) {
|
3650 |
+
this.lastColumnValue = countColumn(this.string, this.start, this.tabSize, this.lastColumnPos, this.lastColumnValue);
|
3651 |
+
this.lastColumnPos = this.start;
|
3652 |
+
}
|
3653 |
+
return this.lastColumnValue;
|
3654 |
+
},
|
3655 |
+
indentation: function() {return countColumn(this.string, null, this.tabSize);},
|
3656 |
+
match: function(pattern, consume, caseInsensitive) {
|
3657 |
+
if (typeof pattern == "string") {
|
3658 |
+
var cased = function(str) {return caseInsensitive ? str.toLowerCase() : str;};
|
3659 |
+
var substr = this.string.substr(this.pos, pattern.length);
|
3660 |
+
if (cased(substr) == cased(pattern)) {
|
3661 |
+
if (consume !== false) this.pos += pattern.length;
|
3662 |
+
return true;
|
3663 |
+
}
|
3664 |
+
} else {
|
3665 |
+
var match = this.string.slice(this.pos).match(pattern);
|
3666 |
+
if (match && match.index > 0) return null;
|
3667 |
+
if (match && consume !== false) this.pos += match[0].length;
|
3668 |
+
return match;
|
3669 |
+
}
|
3670 |
+
},
|
3671 |
+
current: function(){return this.string.slice(this.start, this.pos);}
|
3672 |
+
};
|
3673 |
+
CodeMirror.StringStream = StringStream;
|
3674 |
+
|
3675 |
+
// TEXTMARKERS
|
3676 |
+
|
3677 |
+
function TextMarker(doc, type) {
|
3678 |
+
this.lines = [];
|
3679 |
+
this.type = type;
|
3680 |
+
this.doc = doc;
|
3681 |
+
}
|
3682 |
+
CodeMirror.TextMarker = TextMarker;
|
3683 |
+
eventMixin(TextMarker);
|
3684 |
+
|
3685 |
+
TextMarker.prototype.clear = function() {
|
3686 |
+
if (this.explicitlyCleared) return;
|
3687 |
+
var cm = this.doc.cm, withOp = cm && !cm.curOp;
|
3688 |
+
if (withOp) startOperation(cm);
|
3689 |
+
if (hasHandler(this, "clear")) {
|
3690 |
+
var found = this.find();
|
3691 |
+
if (found) signalLater(this, "clear", found.from, found.to);
|
3692 |
+
}
|
3693 |
+
var min = null, max = null;
|
3694 |
+
for (var i = 0; i < this.lines.length; ++i) {
|
3695 |
+
var line = this.lines[i];
|
3696 |
+
var span = getMarkedSpanFor(line.markedSpans, this);
|
3697 |
+
if (span.to != null) max = lineNo(line);
|
3698 |
+
line.markedSpans = removeMarkedSpan(line.markedSpans, span);
|
3699 |
+
if (span.from != null)
|
3700 |
+
min = lineNo(line);
|
3701 |
+
else if (this.collapsed && !lineIsHidden(this.doc, line) && cm)
|
3702 |
+
updateLineHeight(line, textHeight(cm.display));
|
3703 |
+
}
|
3704 |
+
if (cm && this.collapsed && !cm.options.lineWrapping) for (var i = 0; i < this.lines.length; ++i) {
|
3705 |
+
var visual = visualLine(cm.doc, this.lines[i]), len = lineLength(cm.doc, visual);
|
3706 |
+
if (len > cm.display.maxLineLength) {
|
3707 |
+
cm.display.maxLine = visual;
|
3708 |
+
cm.display.maxLineLength = len;
|
3709 |
+
cm.display.maxLineChanged = true;
|
3710 |
+
}
|
3711 |
+
}
|
3712 |
+
|
3713 |
+
if (min != null && cm) regChange(cm, min, max + 1);
|
3714 |
+
this.lines.length = 0;
|
3715 |
+
this.explicitlyCleared = true;
|
3716 |
+
if (this.atomic && this.doc.cantEdit) {
|
3717 |
+
this.doc.cantEdit = false;
|
3718 |
+
if (cm) reCheckSelection(cm);
|
3719 |
+
}
|
3720 |
+
if (withOp) endOperation(cm);
|
3721 |
+
};
|
3722 |
+
|
3723 |
+
TextMarker.prototype.find = function() {
|
3724 |
+
var from, to;
|
3725 |
+
for (var i = 0; i < this.lines.length; ++i) {
|
3726 |
+
var line = this.lines[i];
|
3727 |
+
var span = getMarkedSpanFor(line.markedSpans, this);
|
3728 |
+
if (span.from != null || span.to != null) {
|
3729 |
+
var found = lineNo(line);
|
3730 |
+
if (span.from != null) from = Pos(found, span.from);
|
3731 |
+
if (span.to != null) to = Pos(found, span.to);
|
3732 |
+
}
|
3733 |
+
}
|
3734 |
+
if (this.type == "bookmark") return from;
|
3735 |
+
return from && {from: from, to: to};
|
3736 |
+
};
|
3737 |
+
|
3738 |
+
TextMarker.prototype.changed = function() {
|
3739 |
+
var pos = this.find(), cm = this.doc.cm;
|
3740 |
+
if (!pos || !cm) return;
|
3741 |
+
var line = getLine(this.doc, pos.from.line);
|
3742 |
+
clearCachedMeasurement(cm, line);
|
3743 |
+
if (pos.from.line >= cm.display.showingFrom && pos.from.line < cm.display.showingTo) {
|
3744 |
+
for (var node = cm.display.lineDiv.firstChild; node; node = node.nextSibling) if (node.lineObj == line) {
|
3745 |
+
if (node.offsetHeight != line.height) updateLineHeight(line, node.offsetHeight);
|
3746 |
+
break;
|
3747 |
+
}
|
3748 |
+
runInOp(cm, function() {
|
3749 |
+
cm.curOp.selectionChanged = cm.curOp.forceUpdate = cm.curOp.updateMaxLine = true;
|
3750 |
+
});
|
3751 |
+
}
|
3752 |
+
};
|
3753 |
+
|
3754 |
+
TextMarker.prototype.attachLine = function(line) {
|
3755 |
+
if (!this.lines.length && this.doc.cm) {
|
3756 |
+
var op = this.doc.cm.curOp;
|
3757 |
+
if (!op.maybeHiddenMarkers || indexOf(op.maybeHiddenMarkers, this) == -1)
|
3758 |
+
(op.maybeUnhiddenMarkers || (op.maybeUnhiddenMarkers = [])).push(this);
|
3759 |
+
}
|
3760 |
+
this.lines.push(line);
|
3761 |
+
};
|
3762 |
+
TextMarker.prototype.detachLine = function(line) {
|
3763 |
+
this.lines.splice(indexOf(this.lines, line), 1);
|
3764 |
+
if (!this.lines.length && this.doc.cm) {
|
3765 |
+
var op = this.doc.cm.curOp;
|
3766 |
+
(op.maybeHiddenMarkers || (op.maybeHiddenMarkers = [])).push(this);
|
3767 |
+
}
|
3768 |
+
};
|
3769 |
+
|
3770 |
+
function markText(doc, from, to, options, type) {
|
3771 |
+
if (options && options.shared) return markTextShared(doc, from, to, options, type);
|
3772 |
+
if (doc.cm && !doc.cm.curOp) return operation(doc.cm, markText)(doc, from, to, options, type);
|
3773 |
+
|
3774 |
+
var marker = new TextMarker(doc, type);
|
3775 |
+
if (type == "range" && !posLess(from, to)) return marker;
|
3776 |
+
if (options) copyObj(options, marker);
|
3777 |
+
if (marker.replacedWith) {
|
3778 |
+
marker.collapsed = true;
|
3779 |
+
marker.replacedWith = elt("span", [marker.replacedWith], "CodeMirror-widget");
|
3780 |
+
if (!options.handleMouseEvents) marker.replacedWith.ignoreEvents = true;
|
3781 |
+
}
|
3782 |
+
if (marker.collapsed) sawCollapsedSpans = true;
|
3783 |
+
|
3784 |
+
if (marker.addToHistory)
|
3785 |
+
addToHistory(doc, {from: from, to: to, origin: "markText"},
|
3786 |
+
{head: doc.sel.head, anchor: doc.sel.anchor}, NaN);
|
3787 |
+
|
3788 |
+
var curLine = from.line, size = 0, collapsedAtStart, collapsedAtEnd, cm = doc.cm, updateMaxLine;
|
3789 |
+
doc.iter(curLine, to.line + 1, function(line) {
|
3790 |
+
if (cm && marker.collapsed && !cm.options.lineWrapping && visualLine(doc, line) == cm.display.maxLine)
|
3791 |
+
updateMaxLine = true;
|
3792 |
+
var span = {from: null, to: null, marker: marker};
|
3793 |
+
size += line.text.length;
|
3794 |
+
if (curLine == from.line) {span.from = from.ch; size -= from.ch;}
|
3795 |
+
if (curLine == to.line) {span.to = to.ch; size -= line.text.length - to.ch;}
|
3796 |
+
if (marker.collapsed) {
|
3797 |
+
if (curLine == to.line) collapsedAtEnd = collapsedSpanAt(line, to.ch);
|
3798 |
+
if (curLine == from.line) collapsedAtStart = collapsedSpanAt(line, from.ch);
|
3799 |
+
else updateLineHeight(line, 0);
|
3800 |
+
}
|
3801 |
+
addMarkedSpan(line, span);
|
3802 |
+
++curLine;
|
3803 |
+
});
|
3804 |
+
if (marker.collapsed) doc.iter(from.line, to.line + 1, function(line) {
|
3805 |
+
if (lineIsHidden(doc, line)) updateLineHeight(line, 0);
|
3806 |
+
});
|
3807 |
+
|
3808 |
+
if (marker.clearOnEnter) on(marker, "beforeCursorEnter", function() { marker.clear(); });
|
3809 |
+
|
3810 |
+
if (marker.readOnly) {
|
3811 |
+
sawReadOnlySpans = true;
|
3812 |
+
if (doc.history.done.length || doc.history.undone.length)
|
3813 |
+
doc.clearHistory();
|
3814 |
+
}
|
3815 |
+
if (marker.collapsed) {
|
3816 |
+
if (collapsedAtStart != collapsedAtEnd)
|
3817 |
+
throw new Error("Inserting collapsed marker overlapping an existing one");
|
3818 |
+
marker.size = size;
|
3819 |
+
marker.atomic = true;
|
3820 |
+
}
|
3821 |
+
if (cm) {
|
3822 |
+
if (updateMaxLine) cm.curOp.updateMaxLine = true;
|
3823 |
+
if (marker.className || marker.title || marker.startStyle || marker.endStyle || marker.collapsed)
|
3824 |
+
regChange(cm, from.line, to.line + 1);
|
3825 |
+
if (marker.atomic) reCheckSelection(cm);
|
3826 |
+
}
|
3827 |
+
return marker;
|
3828 |
+
}
|
3829 |
+
|
3830 |
+
// SHARED TEXTMARKERS
|
3831 |
+
|
3832 |
+
function SharedTextMarker(markers, primary) {
|
3833 |
+
this.markers = markers;
|
3834 |
+
this.primary = primary;
|
3835 |
+
for (var i = 0, me = this; i < markers.length; ++i) {
|
3836 |
+
markers[i].parent = this;
|
3837 |
+
on(markers[i], "clear", function(){me.clear();});
|
3838 |
+
}
|
3839 |
+
}
|
3840 |
+
CodeMirror.SharedTextMarker = SharedTextMarker;
|
3841 |
+
eventMixin(SharedTextMarker);
|
3842 |
+
|
3843 |
+
SharedTextMarker.prototype.clear = function() {
|
3844 |
+
if (this.explicitlyCleared) return;
|
3845 |
+
this.explicitlyCleared = true;
|
3846 |
+
for (var i = 0; i < this.markers.length; ++i)
|
3847 |
+
this.markers[i].clear();
|
3848 |
+
signalLater(this, "clear");
|
3849 |
+
};
|
3850 |
+
SharedTextMarker.prototype.find = function() {
|
3851 |
+
return this.primary.find();
|
3852 |
+
};
|
3853 |
+
|
3854 |
+
function markTextShared(doc, from, to, options, type) {
|
3855 |
+
options = copyObj(options);
|
3856 |
+
options.shared = false;
|
3857 |
+
var markers = [markText(doc, from, to, options, type)], primary = markers[0];
|
3858 |
+
var widget = options.replacedWith;
|
3859 |
+
linkedDocs(doc, function(doc) {
|
3860 |
+
if (widget) options.replacedWith = widget.cloneNode(true);
|
3861 |
+
markers.push(markText(doc, clipPos(doc, from), clipPos(doc, to), options, type));
|
3862 |
+
for (var i = 0; i < doc.linked.length; ++i)
|
3863 |
+
if (doc.linked[i].isParent) return;
|
3864 |
+
primary = lst(markers);
|
3865 |
+
});
|
3866 |
+
return new SharedTextMarker(markers, primary);
|
3867 |
+
}
|
3868 |
+
|
3869 |
+
// TEXTMARKER SPANS
|
3870 |
+
|
3871 |
+
function getMarkedSpanFor(spans, marker) {
|
3872 |
+
if (spans) for (var i = 0; i < spans.length; ++i) {
|
3873 |
+
var span = spans[i];
|
3874 |
+
if (span.marker == marker) return span;
|
3875 |
+
}
|
3876 |
+
}
|
3877 |
+
function removeMarkedSpan(spans, span) {
|
3878 |
+
for (var r, i = 0; i < spans.length; ++i)
|
3879 |
+
if (spans[i] != span) (r || (r = [])).push(spans[i]);
|
3880 |
+
return r;
|
3881 |
+
}
|
3882 |
+
function addMarkedSpan(line, span) {
|
3883 |
+
line.markedSpans = line.markedSpans ? line.markedSpans.concat([span]) : [span];
|
3884 |
+
span.marker.attachLine(line);
|
3885 |
+
}
|
3886 |
+
|
3887 |
+
function markedSpansBefore(old, startCh, isInsert) {
|
3888 |
+
if (old) for (var i = 0, nw; i < old.length; ++i) {
|
3889 |
+
var span = old[i], marker = span.marker;
|
3890 |
+
var startsBefore = span.from == null || (marker.inclusiveLeft ? span.from <= startCh : span.from < startCh);
|
3891 |
+
if (startsBefore || marker.type == "bookmark" && span.from == startCh && (!isInsert || !span.marker.insertLeft)) {
|
3892 |
+
var endsAfter = span.to == null || (marker.inclusiveRight ? span.to >= startCh : span.to > startCh);
|
3893 |
+
(nw || (nw = [])).push({from: span.from,
|
3894 |
+
to: endsAfter ? null : span.to,
|
3895 |
+
marker: marker});
|
3896 |
+
}
|
3897 |
+
}
|
3898 |
+
return nw;
|
3899 |
+
}
|
3900 |
+
|
3901 |
+
function markedSpansAfter(old, endCh, isInsert) {
|
3902 |
+
if (old) for (var i = 0, nw; i < old.length; ++i) {
|
3903 |
+
var span = old[i], marker = span.marker;
|
3904 |
+
var endsAfter = span.to == null || (marker.inclusiveRight ? span.to >= endCh : span.to > endCh);
|
3905 |
+
if (endsAfter || marker.type == "bookmark" && span.from == endCh && (!isInsert || span.marker.insertLeft)) {
|
3906 |
+
var startsBefore = span.from == null || (marker.inclusiveLeft ? span.from <= endCh : span.from < endCh);
|
3907 |
+
(nw || (nw = [])).push({from: startsBefore ? null : span.from - endCh,
|
3908 |
+
to: span.to == null ? null : span.to - endCh,
|
3909 |
+
marker: marker});
|
3910 |
+
}
|
3911 |
+
}
|
3912 |
+
return nw;
|
3913 |
+
}
|
3914 |
+
|
3915 |
+
function stretchSpansOverChange(doc, change) {
|
3916 |
+
var oldFirst = isLine(doc, change.from.line) && getLine(doc, change.from.line).markedSpans;
|
3917 |
+
var oldLast = isLine(doc, change.to.line) && getLine(doc, change.to.line).markedSpans;
|
3918 |
+
if (!oldFirst && !oldLast) return null;
|
3919 |
+
|
3920 |
+
var startCh = change.from.ch, endCh = change.to.ch, isInsert = posEq(change.from, change.to);
|
3921 |
+
// Get the spans that 'stick out' on both sides
|
3922 |
+
var first = markedSpansBefore(oldFirst, startCh, isInsert);
|
3923 |
+
var last = markedSpansAfter(oldLast, endCh, isInsert);
|
3924 |
+
|
3925 |
+
// Next, merge those two ends
|
3926 |
+
var sameLine = change.text.length == 1, offset = lst(change.text).length + (sameLine ? startCh : 0);
|
3927 |
+
if (first) {
|
3928 |
+
// Fix up .to properties of first
|
3929 |
+
for (var i = 0; i < first.length; ++i) {
|
3930 |
+
var span = first[i];
|
3931 |
+
if (span.to == null) {
|
3932 |
+
var found = getMarkedSpanFor(last, span.marker);
|
3933 |
+
if (!found) span.to = startCh;
|
3934 |
+
else if (sameLine) span.to = found.to == null ? null : found.to + offset;
|
3935 |
+
}
|
3936 |
+
}
|
3937 |
+
}
|
3938 |
+
if (last) {
|
3939 |
+
// Fix up .from in last (or move them into first in case of sameLine)
|
3940 |
+
for (var i = 0; i < last.length; ++i) {
|
3941 |
+
var span = last[i];
|
3942 |
+
if (span.to != null) span.to += offset;
|
3943 |
+
if (span.from == null) {
|
3944 |
+
var found = getMarkedSpanFor(first, span.marker);
|
3945 |
+
if (!found) {
|
3946 |
+
span.from = offset;
|
3947 |
+
if (sameLine) (first || (first = [])).push(span);
|
3948 |
+
}
|
3949 |
+
} else {
|
3950 |
+
span.from += offset;
|
3951 |
+
if (sameLine) (first || (first = [])).push(span);
|
3952 |
+
}
|
3953 |
+
}
|
3954 |
+
}
|
3955 |
+
if (sameLine && first) {
|
3956 |
+
// Make sure we didn't create any zero-length spans
|
3957 |
+
for (var i = 0; i < first.length; ++i)
|
3958 |
+
if (first[i].from != null && first[i].from == first[i].to && first[i].marker.type != "bookmark")
|
3959 |
+
first.splice(i--, 1);
|
3960 |
+
if (!first.length) first = null;
|
3961 |
+
}
|
3962 |
+
|
3963 |
+
var newMarkers = [first];
|
3964 |
+
if (!sameLine) {
|
3965 |
+
// Fill gap with whole-line-spans
|
3966 |
+
var gap = change.text.length - 2, gapMarkers;
|
3967 |
+
if (gap > 0 && first)
|
3968 |
+
for (var i = 0; i < first.length; ++i)
|
3969 |
+
if (first[i].to == null)
|
3970 |
+
(gapMarkers || (gapMarkers = [])).push({from: null, to: null, marker: first[i].marker});
|
3971 |
+
for (var i = 0; i < gap; ++i)
|
3972 |
+
newMarkers.push(gapMarkers);
|
3973 |
+
newMarkers.push(last);
|
3974 |
+
}
|
3975 |
+
return newMarkers;
|
3976 |
+
}
|
3977 |
+
|
3978 |
+
function mergeOldSpans(doc, change) {
|
3979 |
+
var old = getOldSpans(doc, change);
|
3980 |
+
var stretched = stretchSpansOverChange(doc, change);
|
3981 |
+
if (!old) return stretched;
|
3982 |
+
if (!stretched) return old;
|
3983 |
+
|
3984 |
+
for (var i = 0; i < old.length; ++i) {
|
3985 |
+
var oldCur = old[i], stretchCur = stretched[i];
|
3986 |
+
if (oldCur && stretchCur) {
|
3987 |
+
spans: for (var j = 0; j < stretchCur.length; ++j) {
|
3988 |
+
var span = stretchCur[j];
|
3989 |
+
for (var k = 0; k < oldCur.length; ++k)
|
3990 |
+
if (oldCur[k].marker == span.marker) continue spans;
|
3991 |
+
oldCur.push(span);
|
3992 |
+
}
|
3993 |
+
} else if (stretchCur) {
|
3994 |
+
old[i] = stretchCur;
|
3995 |
+
}
|
3996 |
+
}
|
3997 |
+
return old;
|
3998 |
+
}
|
3999 |
+
|
4000 |
+
function removeReadOnlyRanges(doc, from, to) {
|
4001 |
+
var markers = null;
|
4002 |
+
doc.iter(from.line, to.line + 1, function(line) {
|
4003 |
+
if (line.markedSpans) for (var i = 0; i < line.markedSpans.length; ++i) {
|
4004 |
+
var mark = line.markedSpans[i].marker;
|
4005 |
+
if (mark.readOnly && (!markers || indexOf(markers, mark) == -1))
|
4006 |
+
(markers || (markers = [])).push(mark);
|
4007 |
+
}
|
4008 |
+
});
|
4009 |
+
if (!markers) return null;
|
4010 |
+
var parts = [{from: from, to: to}];
|
4011 |
+
for (var i = 0; i < markers.length; ++i) {
|
4012 |
+
var mk = markers[i], m = mk.find();
|
4013 |
+
for (var j = 0; j < parts.length; ++j) {
|
4014 |
+
var p = parts[j];
|
4015 |
+
if (posLess(p.to, m.from) || posLess(m.to, p.from)) continue;
|
4016 |
+
var newParts = [j, 1];
|
4017 |
+
if (posLess(p.from, m.from) || !mk.inclusiveLeft && posEq(p.from, m.from))
|
4018 |
+
newParts.push({from: p.from, to: m.from});
|
4019 |
+
if (posLess(m.to, p.to) || !mk.inclusiveRight && posEq(p.to, m.to))
|
4020 |
+
newParts.push({from: m.to, to: p.to});
|
4021 |
+
parts.splice.apply(parts, newParts);
|
4022 |
+
j += newParts.length - 1;
|
4023 |
+
}
|
4024 |
+
}
|
4025 |
+
return parts;
|
4026 |
+
}
|
4027 |
+
|
4028 |
+
function collapsedSpanAt(line, ch) {
|
4029 |
+
var sps = sawCollapsedSpans && line.markedSpans, found;
|
4030 |
+
if (sps) for (var sp, i = 0; i < sps.length; ++i) {
|
4031 |
+
sp = sps[i];
|
4032 |
+
if (!sp.marker.collapsed) continue;
|
4033 |
+
if ((sp.from == null || sp.from < ch) &&
|
4034 |
+
(sp.to == null || sp.to > ch) &&
|
4035 |
+
(!found || found.width < sp.marker.width))
|
4036 |
+
found = sp.marker;
|
4037 |
+
}
|
4038 |
+
return found;
|
4039 |
+
}
|
4040 |
+
function collapsedSpanAtStart(line) { return collapsedSpanAt(line, -1); }
|
4041 |
+
function collapsedSpanAtEnd(line) { return collapsedSpanAt(line, line.text.length + 1); }
|
4042 |
+
|
4043 |
+
function visualLine(doc, line) {
|
4044 |
+
var merged;
|
4045 |
+
while (merged = collapsedSpanAtStart(line))
|
4046 |
+
line = getLine(doc, merged.find().from.line);
|
4047 |
+
return line;
|
4048 |
+
}
|
4049 |
+
|
4050 |
+
function lineIsHidden(doc, line) {
|
4051 |
+
var sps = sawCollapsedSpans && line.markedSpans;
|
4052 |
+
if (sps) for (var sp, i = 0; i < sps.length; ++i) {
|
4053 |
+
sp = sps[i];
|
4054 |
+
if (!sp.marker.collapsed) continue;
|
4055 |
+
if (sp.from == null) return true;
|
4056 |
+
if (sp.marker.replacedWith) continue;
|
4057 |
+
if (sp.from == 0 && sp.marker.inclusiveLeft && lineIsHiddenInner(doc, line, sp))
|
4058 |
+
return true;
|
4059 |
+
}
|
4060 |
+
}
|
4061 |
+
function lineIsHiddenInner(doc, line, span) {
|
4062 |
+
if (span.to == null) {
|
4063 |
+
var end = span.marker.find().to, endLine = getLine(doc, end.line);
|
4064 |
+
return lineIsHiddenInner(doc, endLine, getMarkedSpanFor(endLine.markedSpans, span.marker));
|
4065 |
+
}
|
4066 |
+
if (span.marker.inclusiveRight && span.to == line.text.length)
|
4067 |
+
return true;
|
4068 |
+
for (var sp, i = 0; i < line.markedSpans.length; ++i) {
|
4069 |
+
sp = line.markedSpans[i];
|
4070 |
+
if (sp.marker.collapsed && !sp.marker.replacedWith && sp.from == span.to &&
|
4071 |
+
(sp.marker.inclusiveLeft || span.marker.inclusiveRight) &&
|
4072 |
+
lineIsHiddenInner(doc, line, sp)) return true;
|
4073 |
+
}
|
4074 |
+
}
|
4075 |
+
|
4076 |
+
function detachMarkedSpans(line) {
|
4077 |
+
var spans = line.markedSpans;
|
4078 |
+
if (!spans) return;
|
4079 |
+
for (var i = 0; i < spans.length; ++i)
|
4080 |
+
spans[i].marker.detachLine(line);
|
4081 |
+
line.markedSpans = null;
|
4082 |
+
}
|
4083 |
+
|
4084 |
+
function attachMarkedSpans(line, spans) {
|
4085 |
+
if (!spans) return;
|
4086 |
+
for (var i = 0; i < spans.length; ++i)
|
4087 |
+
spans[i].marker.attachLine(line);
|
4088 |
+
line.markedSpans = spans;
|
4089 |
+
}
|
4090 |
+
|
4091 |
+
// LINE WIDGETS
|
4092 |
+
|
4093 |
+
var LineWidget = CodeMirror.LineWidget = function(cm, node, options) {
|
4094 |
+
if (options) for (var opt in options) if (options.hasOwnProperty(opt))
|
4095 |
+
this[opt] = options[opt];
|
4096 |
+
this.cm = cm;
|
4097 |
+
this.node = node;
|
4098 |
+
};
|
4099 |
+
eventMixin(LineWidget);
|
4100 |
+
function widgetOperation(f) {
|
4101 |
+
return function() {
|
4102 |
+
var withOp = !this.cm.curOp;
|
4103 |
+
if (withOp) startOperation(this.cm);
|
4104 |
+
try {var result = f.apply(this, arguments);}
|
4105 |
+
finally {if (withOp) endOperation(this.cm);}
|
4106 |
+
return result;
|
4107 |
+
};
|
4108 |
+
}
|
4109 |
+
LineWidget.prototype.clear = widgetOperation(function() {
|
4110 |
+
var ws = this.line.widgets, no = lineNo(this.line);
|
4111 |
+
if (no == null || !ws) return;
|
4112 |
+
for (var i = 0; i < ws.length; ++i) if (ws[i] == this) ws.splice(i--, 1);
|
4113 |
+
if (!ws.length) this.line.widgets = null;
|
4114 |
+
var aboveVisible = heightAtLine(this.cm, this.line) < this.cm.doc.scrollTop;
|
4115 |
+
updateLineHeight(this.line, Math.max(0, this.line.height - widgetHeight(this)));
|
4116 |
+
if (aboveVisible) addToScrollPos(this.cm, 0, -this.height);
|
4117 |
+
regChange(this.cm, no, no + 1);
|
4118 |
+
});
|
4119 |
+
LineWidget.prototype.changed = widgetOperation(function() {
|
4120 |
+
var oldH = this.height;
|
4121 |
+
this.height = null;
|
4122 |
+
var diff = widgetHeight(this) - oldH;
|
4123 |
+
if (!diff) return;
|
4124 |
+
updateLineHeight(this.line, this.line.height + diff);
|
4125 |
+
var no = lineNo(this.line);
|
4126 |
+
regChange(this.cm, no, no + 1);
|
4127 |
+
});
|
4128 |
+
|
4129 |
+
function widgetHeight(widget) {
|
4130 |
+
if (widget.height != null) return widget.height;
|
4131 |
+
if (!widget.node.parentNode || widget.node.parentNode.nodeType != 1)
|
4132 |
+
removeChildrenAndAdd(widget.cm.display.measure, elt("div", [widget.node], null, "position: relative"));
|
4133 |
+
return widget.height = widget.node.offsetHeight;
|
4134 |
+
}
|
4135 |
+
|
4136 |
+
function addLineWidget(cm, handle, node, options) {
|
4137 |
+
var widget = new LineWidget(cm, node, options);
|
4138 |
+
if (widget.noHScroll) cm.display.alignWidgets = true;
|
4139 |
+
changeLine(cm, handle, function(line) {
|
4140 |
+
var widgets = line.widgets || (line.widgets = []);
|
4141 |
+
if (widget.insertAt == null) widgets.push(widget);
|
4142 |
+
else widgets.splice(Math.min(widgets.length - 1, Math.max(0, widget.insertAt)), 0, widget);
|
4143 |
+
widget.line = line;
|
4144 |
+
if (!lineIsHidden(cm.doc, line) || widget.showIfHidden) {
|
4145 |
+
var aboveVisible = heightAtLine(cm, line) < cm.doc.scrollTop;
|
4146 |
+
updateLineHeight(line, line.height + widgetHeight(widget));
|
4147 |
+
if (aboveVisible) addToScrollPos(cm, 0, widget.height);
|
4148 |
+
}
|
4149 |
+
return true;
|
4150 |
+
});
|
4151 |
+
return widget;
|
4152 |
+
}
|
4153 |
+
|
4154 |
+
// LINE DATA STRUCTURE
|
4155 |
+
|
4156 |
+
// Line objects. These hold state related to a line, including
|
4157 |
+
// highlighting info (the styles array).
|
4158 |
+
var Line = CodeMirror.Line = function(text, markedSpans, estimateHeight) {
|
4159 |
+
this.text = text;
|
4160 |
+
attachMarkedSpans(this, markedSpans);
|
4161 |
+
this.height = estimateHeight ? estimateHeight(this) : 1;
|
4162 |
+
};
|
4163 |
+
eventMixin(Line);
|
4164 |
+
|
4165 |
+
function updateLine(line, text, markedSpans, estimateHeight) {
|
4166 |
+
line.text = text;
|
4167 |
+
if (line.stateAfter) line.stateAfter = null;
|
4168 |
+
if (line.styles) line.styles = null;
|
4169 |
+
if (line.order != null) line.order = null;
|
4170 |
+
detachMarkedSpans(line);
|
4171 |
+
attachMarkedSpans(line, markedSpans);
|
4172 |
+
var estHeight = estimateHeight ? estimateHeight(line) : 1;
|
4173 |
+
if (estHeight != line.height) updateLineHeight(line, estHeight);
|
4174 |
+
}
|
4175 |
+
|
4176 |
+
function cleanUpLine(line) {
|
4177 |
+
line.parent = null;
|
4178 |
+
detachMarkedSpans(line);
|
4179 |
+
}
|
4180 |
+
|
4181 |
+
// Run the given mode's parser over a line, update the styles
|
4182 |
+
// array, which contains alternating fragments of text and CSS
|
4183 |
+
// classes.
|
4184 |
+
function runMode(cm, text, mode, state, f) {
|
4185 |
+
var flattenSpans = mode.flattenSpans;
|
4186 |
+
if (flattenSpans == null) flattenSpans = cm.options.flattenSpans;
|
4187 |
+
var curStart = 0, curStyle = null;
|
4188 |
+
var stream = new StringStream(text, cm.options.tabSize), style;
|
4189 |
+
if (text == "" && mode.blankLine) mode.blankLine(state);
|
4190 |
+
while (!stream.eol()) {
|
4191 |
+
if (stream.pos > cm.options.maxHighlightLength) {
|
4192 |
+
flattenSpans = false;
|
4193 |
+
// Webkit seems to refuse to render text nodes longer than 57444 characters
|
4194 |
+
stream.pos = Math.min(text.length, stream.start + 50000);
|
4195 |
+
style = null;
|
4196 |
+
} else {
|
4197 |
+
style = mode.token(stream, state);
|
4198 |
+
}
|
4199 |
+
if (!flattenSpans || curStyle != style) {
|
4200 |
+
if (curStart < stream.start) f(stream.start, curStyle);
|
4201 |
+
curStart = stream.start; curStyle = style;
|
4202 |
+
}
|
4203 |
+
stream.start = stream.pos;
|
4204 |
+
}
|
4205 |
+
if (curStart < stream.pos) f(stream.pos, curStyle);
|
4206 |
+
}
|
4207 |
+
|
4208 |
+
function highlightLine(cm, line, state) {
|
4209 |
+
// A styles array always starts with a number identifying the
|
4210 |
+
// mode/overlays that it is based on (for easy invalidation).
|
4211 |
+
var st = [cm.state.modeGen];
|
4212 |
+
// Compute the base array of styles
|
4213 |
+
runMode(cm, line.text, cm.doc.mode, state, function(end, style) {st.push(end, style);});
|
4214 |
+
|
4215 |
+
// Run overlays, adjust style array.
|
4216 |
+
for (var o = 0; o < cm.state.overlays.length; ++o) {
|
4217 |
+
var overlay = cm.state.overlays[o], i = 1, at = 0;
|
4218 |
+
runMode(cm, line.text, overlay.mode, true, function(end, style) {
|
4219 |
+
var start = i;
|
4220 |
+
// Ensure there's a token end at the current position, and that i points at it
|
4221 |
+
while (at < end) {
|
4222 |
+
var i_end = st[i];
|
4223 |
+
if (i_end > end)
|
4224 |
+
st.splice(i, 1, end, st[i+1], i_end);
|
4225 |
+
i += 2;
|
4226 |
+
at = Math.min(end, i_end);
|
4227 |
+
}
|
4228 |
+
if (!style) return;
|
4229 |
+
if (overlay.opaque) {
|
4230 |
+
st.splice(start, i - start, end, style);
|
4231 |
+
i = start + 2;
|
4232 |
+
} else {
|
4233 |
+
for (; start < i; start += 2) {
|
4234 |
+
var cur = st[start+1];
|
4235 |
+
st[start+1] = cur ? cur + " " + style : style;
|
4236 |
+
}
|
4237 |
+
}
|
4238 |
+
});
|
4239 |
+
}
|
4240 |
+
|
4241 |
+
return st;
|
4242 |
+
}
|
4243 |
+
|
4244 |
+
function getLineStyles(cm, line) {
|
4245 |
+
if (!line.styles || line.styles[0] != cm.state.modeGen)
|
4246 |
+
line.styles = highlightLine(cm, line, line.stateAfter = getStateBefore(cm, lineNo(line)));
|
4247 |
+
return line.styles;
|
4248 |
+
}
|
4249 |
+
|
4250 |
+
// Lightweight form of highlight -- proceed over this line and
|
4251 |
+
// update state, but don't save a style array.
|
4252 |
+
function processLine(cm, line, state) {
|
4253 |
+
var mode = cm.doc.mode;
|
4254 |
+
var stream = new StringStream(line.text, cm.options.tabSize);
|
4255 |
+
if (line.text == "" && mode.blankLine) mode.blankLine(state);
|
4256 |
+
while (!stream.eol() && stream.pos <= cm.options.maxHighlightLength) {
|
4257 |
+
mode.token(stream, state);
|
4258 |
+
stream.start = stream.pos;
|
4259 |
+
}
|
4260 |
+
}
|
4261 |
+
|
4262 |
+
var styleToClassCache = {};
|
4263 |
+
function styleToClass(style) {
|
4264 |
+
if (!style) return null;
|
4265 |
+
return styleToClassCache[style] ||
|
4266 |
+
(styleToClassCache[style] = "cm-" + style.replace(/ +/g, " cm-"));
|
4267 |
+
}
|
4268 |
+
|
4269 |
+
function lineContent(cm, realLine, measure, copyWidgets) {
|
4270 |
+
var merged, line = realLine, empty = true;
|
4271 |
+
while (merged = collapsedSpanAtStart(line))
|
4272 |
+
line = getLine(cm.doc, merged.find().from.line);
|
4273 |
+
|
4274 |
+
var builder = {pre: elt("pre"), col: 0, pos: 0,
|
4275 |
+
measure: null, measuredSomething: false, cm: cm,
|
4276 |
+
copyWidgets: copyWidgets};
|
4277 |
+
if (line.textClass) builder.pre.className = line.textClass;
|
4278 |
+
|
4279 |
+
do {
|
4280 |
+
if (line.text) empty = false;
|
4281 |
+
builder.measure = line == realLine && measure;
|
4282 |
+
builder.pos = 0;
|
4283 |
+
builder.addToken = builder.measure ? buildTokenMeasure : buildToken;
|
4284 |
+
if ((ie || webkit) && cm.getOption("lineWrapping"))
|
4285 |
+
builder.addToken = buildTokenSplitSpaces(builder.addToken);
|
4286 |
+
var next = insertLineContent(line, builder, getLineStyles(cm, line));
|
4287 |
+
if (measure && line == realLine && !builder.measuredSomething) {
|
4288 |
+
measure[0] = builder.pre.appendChild(zeroWidthElement(cm.display.measure));
|
4289 |
+
builder.measuredSomething = true;
|
4290 |
+
}
|
4291 |
+
if (next) line = getLine(cm.doc, next.to.line);
|
4292 |
+
} while (next);
|
4293 |
+
|
4294 |
+
if (measure && !builder.measuredSomething && !measure[0])
|
4295 |
+
measure[0] = builder.pre.appendChild(empty ? elt("span", "\u00a0") : zeroWidthElement(cm.display.measure));
|
4296 |
+
if (!builder.pre.firstChild && !lineIsHidden(cm.doc, realLine))
|
4297 |
+
builder.pre.appendChild(document.createTextNode("\u00a0"));
|
4298 |
+
|
4299 |
+
var order;
|
4300 |
+
// Work around problem with the reported dimensions of single-char
|
4301 |
+
// direction spans on IE (issue #1129). See also the comment in
|
4302 |
+
// cursorCoords.
|
4303 |
+
if (measure && ie && (order = getOrder(line))) {
|
4304 |
+
var l = order.length - 1;
|
4305 |
+
if (order[l].from == order[l].to) --l;
|
4306 |
+
var last = order[l], prev = order[l - 1];
|
4307 |
+
if (last.from + 1 == last.to && prev && last.level < prev.level) {
|
4308 |
+
var span = measure[builder.pos - 1];
|
4309 |
+
if (span) span.parentNode.insertBefore(span.measureRight = zeroWidthElement(cm.display.measure),
|
4310 |
+
span.nextSibling);
|
4311 |
+
}
|
4312 |
+
}
|
4313 |
+
|
4314 |
+
signal(cm, "renderLine", cm, realLine, builder.pre);
|
4315 |
+
return builder.pre;
|
4316 |
+
}
|
4317 |
+
|
4318 |
+
var tokenSpecialChars = /[\t\u0000-\u0019\u00ad\u200b\u2028\u2029\uFEFF]/g;
|
4319 |
+
function buildToken(builder, text, style, startStyle, endStyle, title) {
|
4320 |
+
if (!text) return;
|
4321 |
+
if (!tokenSpecialChars.test(text)) {
|
4322 |
+
builder.col += text.length;
|
4323 |
+
var content = document.createTextNode(text);
|
4324 |
+
} else {
|
4325 |
+
var content = document.createDocumentFragment(), pos = 0;
|
4326 |
+
while (true) {
|
4327 |
+
tokenSpecialChars.lastIndex = pos;
|
4328 |
+
var m = tokenSpecialChars.exec(text);
|
4329 |
+
var skipped = m ? m.index - pos : text.length - pos;
|
4330 |
+
if (skipped) {
|
4331 |
+
content.appendChild(document.createTextNode(text.slice(pos, pos + skipped)));
|
4332 |
+
builder.col += skipped;
|
4333 |
+
}
|
4334 |
+
if (!m) break;
|
4335 |
+
pos += skipped + 1;
|
4336 |
+
if (m[0] == "\t") {
|
4337 |
+
var tabSize = builder.cm.options.tabSize, tabWidth = tabSize - builder.col % tabSize;
|
4338 |
+
content.appendChild(elt("span", spaceStr(tabWidth), "cm-tab"));
|
4339 |
+
builder.col += tabWidth;
|
4340 |
+
} else {
|
4341 |
+
var token = elt("span", "\u2022", "cm-invalidchar");
|
4342 |
+
token.title = "\\u" + m[0].charCodeAt(0).toString(16);
|
4343 |
+
content.appendChild(token);
|
4344 |
+
builder.col += 1;
|
4345 |
+
}
|
4346 |
+
}
|
4347 |
+
}
|
4348 |
+
if (style || startStyle || endStyle || builder.measure) {
|
4349 |
+
var fullStyle = style || "";
|
4350 |
+
if (startStyle) fullStyle += startStyle;
|
4351 |
+
if (endStyle) fullStyle += endStyle;
|
4352 |
+
var token = elt("span", [content], fullStyle);
|
4353 |
+
if (title) token.title = title;
|
4354 |
+
return builder.pre.appendChild(token);
|
4355 |
+
}
|
4356 |
+
builder.pre.appendChild(content);
|
4357 |
+
}
|
4358 |
+
|
4359 |
+
function buildTokenMeasure(builder, text, style, startStyle, endStyle) {
|
4360 |
+
var wrapping = builder.cm.options.lineWrapping;
|
4361 |
+
for (var i = 0; i < text.length; ++i) {
|
4362 |
+
var ch = text.charAt(i), start = i == 0;
|
4363 |
+
if (ch >= "\ud800" && ch < "\udbff" && i < text.length - 1) {
|
4364 |
+
ch = text.slice(i, i + 2);
|
4365 |
+
++i;
|
4366 |
+
} else if (i && wrapping && spanAffectsWrapping(text, i)) {
|
4367 |
+
builder.pre.appendChild(elt("wbr"));
|
4368 |
+
}
|
4369 |
+
var old = builder.measure[builder.pos];
|
4370 |
+
var span = builder.measure[builder.pos] =
|
4371 |
+
buildToken(builder, ch, style,
|
4372 |
+
start && startStyle, i == text.length - 1 && endStyle);
|
4373 |
+
if (old) span.leftSide = old.leftSide || old;
|
4374 |
+
// In IE single-space nodes wrap differently than spaces
|
4375 |
+
// embedded in larger text nodes, except when set to
|
4376 |
+
// white-space: normal (issue #1268).
|
4377 |
+
if (ie && wrapping && ch == " " && i && !/\s/.test(text.charAt(i - 1)) &&
|
4378 |
+
i < text.length - 1 && !/\s/.test(text.charAt(i + 1)))
|
4379 |
+
span.style.whiteSpace = "normal";
|
4380 |
+
builder.pos += ch.length;
|
4381 |
+
}
|
4382 |
+
if (text.length) builder.measuredSomething = true;
|
4383 |
+
}
|
4384 |
+
|
4385 |
+
function buildTokenSplitSpaces(inner) {
|
4386 |
+
function split(old) {
|
4387 |
+
var out = " ";
|
4388 |
+
for (var i = 0; i < old.length - 2; ++i) out += i % 2 ? " " : "\u00a0";
|
4389 |
+
out += " ";
|
4390 |
+
return out;
|
4391 |
+
}
|
4392 |
+
return function(builder, text, style, startStyle, endStyle, title) {
|
4393 |
+
return inner(builder, text.replace(/ {3,}/, split), style, startStyle, endStyle, title);
|
4394 |
+
};
|
4395 |
+
}
|
4396 |
+
|
4397 |
+
function buildCollapsedSpan(builder, size, marker, ignoreWidget) {
|
4398 |
+
var widget = !ignoreWidget && marker.replacedWith;
|
4399 |
+
if (widget) {
|
4400 |
+
if (builder.copyWidgets) widget = widget.cloneNode(true);
|
4401 |
+
builder.pre.appendChild(widget);
|
4402 |
+
if (builder.measure) {
|
4403 |
+
if (size) {
|
4404 |
+
builder.measure[builder.pos] = widget;
|
4405 |
+
} else {
|
4406 |
+
var elt = builder.measure[builder.pos] = zeroWidthElement(builder.cm.display.measure);
|
4407 |
+
if (marker.type != "bookmark" || marker.insertLeft)
|
4408 |
+
builder.pre.insertBefore(elt, widget);
|
4409 |
+
else
|
4410 |
+
builder.pre.appendChild(elt);
|
4411 |
+
}
|
4412 |
+
builder.measuredSomething = true;
|
4413 |
+
}
|
4414 |
+
}
|
4415 |
+
builder.pos += size;
|
4416 |
+
}
|
4417 |
+
|
4418 |
+
// Outputs a number of spans to make up a line, taking highlighting
|
4419 |
+
// and marked text into account.
|
4420 |
+
function insertLineContent(line, builder, styles) {
|
4421 |
+
var spans = line.markedSpans, allText = line.text, at = 0;
|
4422 |
+
if (!spans) {
|
4423 |
+
for (var i = 1; i < styles.length; i+=2)
|
4424 |
+
builder.addToken(builder, allText.slice(at, at = styles[i]), styleToClass(styles[i+1]));
|
4425 |
+
return;
|
4426 |
+
}
|
4427 |
+
|
4428 |
+
var len = allText.length, pos = 0, i = 1, text = "", style;
|
4429 |
+
var nextChange = 0, spanStyle, spanEndStyle, spanStartStyle, title, collapsed;
|
4430 |
+
for (;;) {
|
4431 |
+
if (nextChange == pos) { // Update current marker set
|
4432 |
+
spanStyle = spanEndStyle = spanStartStyle = title = "";
|
4433 |
+
collapsed = null; nextChange = Infinity;
|
4434 |
+
var foundBookmark = null;
|
4435 |
+
for (var j = 0; j < spans.length; ++j) {
|
4436 |
+
var sp = spans[j], m = sp.marker;
|
4437 |
+
if (sp.from <= pos && (sp.to == null || sp.to > pos)) {
|
4438 |
+
if (sp.to != null && nextChange > sp.to) { nextChange = sp.to; spanEndStyle = ""; }
|
4439 |
+
if (m.className) spanStyle += " " + m.className;
|
4440 |
+
if (m.startStyle && sp.from == pos) spanStartStyle += " " + m.startStyle;
|
4441 |
+
if (m.endStyle && sp.to == nextChange) spanEndStyle += " " + m.endStyle;
|
4442 |
+
if (m.title && !title) title = m.title;
|
4443 |
+
if (m.collapsed && (!collapsed || collapsed.marker.size < m.size))
|
4444 |
+
collapsed = sp;
|
4445 |
+
} else if (sp.from > pos && nextChange > sp.from) {
|
4446 |
+
nextChange = sp.from;
|
4447 |
+
}
|
4448 |
+
if (m.type == "bookmark" && sp.from == pos && m.replacedWith) foundBookmark = m;
|
4449 |
+
}
|
4450 |
+
if (collapsed && (collapsed.from || 0) == pos) {
|
4451 |
+
buildCollapsedSpan(builder, (collapsed.to == null ? len : collapsed.to) - pos,
|
4452 |
+
collapsed.marker, collapsed.from == null);
|
4453 |
+
if (collapsed.to == null) return collapsed.marker.find();
|
4454 |
+
}
|
4455 |
+
if (foundBookmark && !collapsed) buildCollapsedSpan(builder, 0, foundBookmark);
|
4456 |
+
}
|
4457 |
+
if (pos >= len) break;
|
4458 |
+
|
4459 |
+
var upto = Math.min(len, nextChange);
|
4460 |
+
while (true) {
|
4461 |
+
if (text) {
|
4462 |
+
var end = pos + text.length;
|
4463 |
+
if (!collapsed) {
|
4464 |
+
var tokenText = end > upto ? text.slice(0, upto - pos) : text;
|
4465 |
+
builder.addToken(builder, tokenText, style ? style + spanStyle : spanStyle,
|
4466 |
+
spanStartStyle, pos + tokenText.length == nextChange ? spanEndStyle : "", title);
|
4467 |
+
}
|
4468 |
+
if (end >= upto) {text = text.slice(upto - pos); pos = upto; break;}
|
4469 |
+
pos = end;
|
4470 |
+
spanStartStyle = "";
|
4471 |
+
}
|
4472 |
+
text = allText.slice(at, at = styles[i++]);
|
4473 |
+
style = styleToClass(styles[i++]);
|
4474 |
+
}
|
4475 |
+
}
|
4476 |
+
}
|
4477 |
+
|
4478 |
+
// DOCUMENT DATA STRUCTURE
|
4479 |
+
|
4480 |
+
function updateDoc(doc, change, markedSpans, selAfter, estimateHeight) {
|
4481 |
+
function spansFor(n) {return markedSpans ? markedSpans[n] : null;}
|
4482 |
+
function update(line, text, spans) {
|
4483 |
+
updateLine(line, text, spans, estimateHeight);
|
4484 |
+
signalLater(line, "change", line, change);
|
4485 |
+
}
|
4486 |
+
|
4487 |
+
var from = change.from, to = change.to, text = change.text;
|
4488 |
+
var firstLine = getLine(doc, from.line), lastLine = getLine(doc, to.line);
|
4489 |
+
var lastText = lst(text), lastSpans = spansFor(text.length - 1), nlines = to.line - from.line;
|
4490 |
+
|
4491 |
+
// First adjust the line structure
|
4492 |
+
if (from.ch == 0 && to.ch == 0 && lastText == "") {
|
4493 |
+
// This is a whole-line replace. Treated specially to make
|
4494 |
+
// sure line objects move the way they are supposed to.
|
4495 |
+
for (var i = 0, e = text.length - 1, added = []; i < e; ++i)
|
4496 |
+
added.push(new Line(text[i], spansFor(i), estimateHeight));
|
4497 |
+
update(lastLine, lastLine.text, lastSpans);
|
4498 |
+
if (nlines) doc.remove(from.line, nlines);
|
4499 |
+
if (added.length) doc.insert(from.line, added);
|
4500 |
+
} else if (firstLine == lastLine) {
|
4501 |
+
if (text.length == 1) {
|
4502 |
+
update(firstLine, firstLine.text.slice(0, from.ch) + lastText + firstLine.text.slice(to.ch), lastSpans);
|
4503 |
+
} else {
|
4504 |
+
for (var added = [], i = 1, e = text.length - 1; i < e; ++i)
|
4505 |
+
added.push(new Line(text[i], spansFor(i), estimateHeight));
|
4506 |
+
added.push(new Line(lastText + firstLine.text.slice(to.ch), lastSpans, estimateHeight));
|
4507 |
+
update(firstLine, firstLine.text.slice(0, from.ch) + text[0], spansFor(0));
|
4508 |
+
doc.insert(from.line + 1, added);
|
4509 |
+
}
|
4510 |
+
} else if (text.length == 1) {
|
4511 |
+
update(firstLine, firstLine.text.slice(0, from.ch) + text[0] + lastLine.text.slice(to.ch), spansFor(0));
|
4512 |
+
doc.remove(from.line + 1, nlines);
|
4513 |
+
} else {
|
4514 |
+
update(firstLine, firstLine.text.slice(0, from.ch) + text[0], spansFor(0));
|
4515 |
+
update(lastLine, lastText + lastLine.text.slice(to.ch), lastSpans);
|
4516 |
+
for (var i = 1, e = text.length - 1, added = []; i < e; ++i)
|
4517 |
+
added.push(new Line(text[i], spansFor(i), estimateHeight));
|
4518 |
+
if (nlines > 1) doc.remove(from.line + 1, nlines - 1);
|
4519 |
+
doc.insert(from.line + 1, added);
|
4520 |
+
}
|
4521 |
+
|
4522 |
+
signalLater(doc, "change", doc, change);
|
4523 |
+
setSelection(doc, selAfter.anchor, selAfter.head, null, true);
|
4524 |
+
}
|
4525 |
+
|
4526 |
+
function LeafChunk(lines) {
|
4527 |
+
this.lines = lines;
|
4528 |
+
this.parent = null;
|
4529 |
+
for (var i = 0, e = lines.length, height = 0; i < e; ++i) {
|
4530 |
+
lines[i].parent = this;
|
4531 |
+
height += lines[i].height;
|
4532 |
+
}
|
4533 |
+
this.height = height;
|
4534 |
+
}
|
4535 |
+
|
4536 |
+
LeafChunk.prototype = {
|
4537 |
+
chunkSize: function() { return this.lines.length; },
|
4538 |
+
removeInner: function(at, n) {
|
4539 |
+
for (var i = at, e = at + n; i < e; ++i) {
|
4540 |
+
var line = this.lines[i];
|
4541 |
+
this.height -= line.height;
|
4542 |
+
cleanUpLine(line);
|
4543 |
+
signalLater(line, "delete");
|
4544 |
+
}
|
4545 |
+
this.lines.splice(at, n);
|
4546 |
+
},
|
4547 |
+
collapse: function(lines) {
|
4548 |
+
lines.splice.apply(lines, [lines.length, 0].concat(this.lines));
|
4549 |
+
},
|
4550 |
+
insertInner: function(at, lines, height) {
|
4551 |
+
this.height += height;
|
4552 |
+
this.lines = this.lines.slice(0, at).concat(lines).concat(this.lines.slice(at));
|
4553 |
+
for (var i = 0, e = lines.length; i < e; ++i) lines[i].parent = this;
|
4554 |
+
},
|
4555 |
+
iterN: function(at, n, op) {
|
4556 |
+
for (var e = at + n; at < e; ++at)
|
4557 |
+
if (op(this.lines[at])) return true;
|
4558 |
+
}
|
4559 |
+
};
|
4560 |
+
|
4561 |
+
function BranchChunk(children) {
|
4562 |
+
this.children = children;
|
4563 |
+
var size = 0, height = 0;
|
4564 |
+
for (var i = 0, e = children.length; i < e; ++i) {
|
4565 |
+
var ch = children[i];
|
4566 |
+
size += ch.chunkSize(); height += ch.height;
|
4567 |
+
ch.parent = this;
|
4568 |
+
}
|
4569 |
+
this.size = size;
|
4570 |
+
this.height = height;
|
4571 |
+
this.parent = null;
|
4572 |
+
}
|
4573 |
+
|
4574 |
+
BranchChunk.prototype = {
|
4575 |
+
chunkSize: function() { return this.size; },
|
4576 |
+
removeInner: function(at, n) {
|
4577 |
+
this.size -= n;
|
4578 |
+
for (var i = 0; i < this.children.length; ++i) {
|
4579 |
+
var child = this.children[i], sz = child.chunkSize();
|
4580 |
+
if (at < sz) {
|
4581 |
+
var rm = Math.min(n, sz - at), oldHeight = child.height;
|
4582 |
+
child.removeInner(at, rm);
|
4583 |
+
this.height -= oldHeight - child.height;
|
4584 |
+
if (sz == rm) { this.children.splice(i--, 1); child.parent = null; }
|
4585 |
+
if ((n -= rm) == 0) break;
|
4586 |
+
at = 0;
|
4587 |
+
} else at -= sz;
|
4588 |
+
}
|
4589 |
+
if (this.size - n < 25) {
|
4590 |
+
var lines = [];
|
4591 |
+
this.collapse(lines);
|
4592 |
+
this.children = [new LeafChunk(lines)];
|
4593 |
+
this.children[0].parent = this;
|
4594 |
+
}
|
4595 |
+
},
|
4596 |
+
collapse: function(lines) {
|
4597 |
+
for (var i = 0, e = this.children.length; i < e; ++i) this.children[i].collapse(lines);
|
4598 |
+
},
|
4599 |
+
insertInner: function(at, lines, height) {
|
4600 |
+
this.size += lines.length;
|
4601 |
+
this.height += height;
|
4602 |
+
for (var i = 0, e = this.children.length; i < e; ++i) {
|
4603 |
+
var child = this.children[i], sz = child.chunkSize();
|
4604 |
+
if (at <= sz) {
|
4605 |
+
child.insertInner(at, lines, height);
|
4606 |
+
if (child.lines && child.lines.length > 50) {
|
4607 |
+
while (child.lines.length > 50) {
|
4608 |
+
var spilled = child.lines.splice(child.lines.length - 25, 25);
|
4609 |
+
var newleaf = new LeafChunk(spilled);
|
4610 |
+
child.height -= newleaf.height;
|
4611 |
+
this.children.splice(i + 1, 0, newleaf);
|
4612 |
+
newleaf.parent = this;
|
4613 |
+
}
|
4614 |
+
this.maybeSpill();
|
4615 |
+
}
|
4616 |
+
break;
|
4617 |
+
}
|
4618 |
+
at -= sz;
|
4619 |
+
}
|
4620 |
+
},
|
4621 |
+
maybeSpill: function() {
|
4622 |
+
if (this.children.length <= 10) return;
|
4623 |
+
var me = this;
|
4624 |
+
do {
|
4625 |
+
var spilled = me.children.splice(me.children.length - 5, 5);
|
4626 |
+
var sibling = new BranchChunk(spilled);
|
4627 |
+
if (!me.parent) { // Become the parent node
|
4628 |
+
var copy = new BranchChunk(me.children);
|
4629 |
+
copy.parent = me;
|
4630 |
+
me.children = [copy, sibling];
|
4631 |
+
me = copy;
|
4632 |
+
} else {
|
4633 |
+
me.size -= sibling.size;
|
4634 |
+
me.height -= sibling.height;
|
4635 |
+
var myIndex = indexOf(me.parent.children, me);
|
4636 |
+
me.parent.children.splice(myIndex + 1, 0, sibling);
|
4637 |
+
}
|
4638 |
+
sibling.parent = me.parent;
|
4639 |
+
} while (me.children.length > 10);
|
4640 |
+
me.parent.maybeSpill();
|
4641 |
+
},
|
4642 |
+
iterN: function(at, n, op) {
|
4643 |
+
for (var i = 0, e = this.children.length; i < e; ++i) {
|
4644 |
+
var child = this.children[i], sz = child.chunkSize();
|
4645 |
+
if (at < sz) {
|
4646 |
+
var used = Math.min(n, sz - at);
|
4647 |
+
if (child.iterN(at, used, op)) return true;
|
4648 |
+
if ((n -= used) == 0) break;
|
4649 |
+
at = 0;
|
4650 |
+
} else at -= sz;
|
4651 |
+
}
|
4652 |
+
}
|
4653 |
+
};
|
4654 |
+
|
4655 |
+
var nextDocId = 0;
|
4656 |
+
var Doc = CodeMirror.Doc = function(text, mode, firstLine) {
|
4657 |
+
if (!(this instanceof Doc)) return new Doc(text, mode, firstLine);
|
4658 |
+
if (firstLine == null) firstLine = 0;
|
4659 |
+
|
4660 |
+
BranchChunk.call(this, [new LeafChunk([new Line("", null)])]);
|
4661 |
+
this.first = firstLine;
|
4662 |
+
this.scrollTop = this.scrollLeft = 0;
|
4663 |
+
this.cantEdit = false;
|
4664 |
+
this.history = makeHistory();
|
4665 |
+
this.cleanGeneration = 1;
|
4666 |
+
this.frontier = firstLine;
|
4667 |
+
var start = Pos(firstLine, 0);
|
4668 |
+
this.sel = {from: start, to: start, head: start, anchor: start, shift: false, extend: false, goalColumn: null};
|
4669 |
+
this.id = ++nextDocId;
|
4670 |
+
this.modeOption = mode;
|
4671 |
+
|
4672 |
+
if (typeof text == "string") text = splitLines(text);
|
4673 |
+
updateDoc(this, {from: start, to: start, text: text}, null, {head: start, anchor: start});
|
4674 |
+
};
|
4675 |
+
|
4676 |
+
Doc.prototype = createObj(BranchChunk.prototype, {
|
4677 |
+
constructor: Doc,
|
4678 |
+
iter: function(from, to, op) {
|
4679 |
+
if (op) this.iterN(from - this.first, to - from, op);
|
4680 |
+
else this.iterN(this.first, this.first + this.size, from);
|
4681 |
+
},
|
4682 |
+
|
4683 |
+
insert: function(at, lines) {
|
4684 |
+
var height = 0;
|
4685 |
+
for (var i = 0, e = lines.length; i < e; ++i) height += lines[i].height;
|
4686 |
+
this.insertInner(at - this.first, lines, height);
|
4687 |
+
},
|
4688 |
+
remove: function(at, n) { this.removeInner(at - this.first, n); },
|
4689 |
+
|
4690 |
+
getValue: function(lineSep) {
|
4691 |
+
var lines = getLines(this, this.first, this.first + this.size);
|
4692 |
+
if (lineSep === false) return lines;
|
4693 |
+
return lines.join(lineSep || "\n");
|
4694 |
+
},
|
4695 |
+
setValue: function(code) {
|
4696 |
+
var top = Pos(this.first, 0), last = this.first + this.size - 1;
|
4697 |
+
makeChange(this, {from: top, to: Pos(last, getLine(this, last).text.length),
|
4698 |
+
text: splitLines(code), origin: "setValue"},
|
4699 |
+
{head: top, anchor: top}, true);
|
4700 |
+
},
|
4701 |
+
replaceRange: function(code, from, to, origin) {
|
4702 |
+
from = clipPos(this, from);
|
4703 |
+
to = to ? clipPos(this, to) : from;
|
4704 |
+
replaceRange(this, code, from, to, origin);
|
4705 |
+
},
|
4706 |
+
getRange: function(from, to, lineSep) {
|
4707 |
+
var lines = getBetween(this, clipPos(this, from), clipPos(this, to));
|
4708 |
+
if (lineSep === false) return lines;
|
4709 |
+
return lines.join(lineSep || "\n");
|
4710 |
+
},
|
4711 |
+
|
4712 |
+
getLine: function(line) {var l = this.getLineHandle(line); return l && l.text;},
|
4713 |
+
setLine: function(line, text) {
|
4714 |
+
if (isLine(this, line))
|
4715 |
+
replaceRange(this, text, Pos(line, 0), clipPos(this, Pos(line)));
|
4716 |
+
},
|
4717 |
+
removeLine: function(line) {
|
4718 |
+
if (line) replaceRange(this, "", clipPos(this, Pos(line - 1)), clipPos(this, Pos(line)));
|
4719 |
+
else replaceRange(this, "", Pos(0, 0), clipPos(this, Pos(1, 0)));
|
4720 |
+
},
|
4721 |
+
|
4722 |
+
getLineHandle: function(line) {if (isLine(this, line)) return getLine(this, line);},
|
4723 |
+
getLineNumber: function(line) {return lineNo(line);},
|
4724 |
+
|
4725 |
+
getLineHandleVisualStart: function(line) {
|
4726 |
+
if (typeof line == "number") line = getLine(this, line);
|
4727 |
+
return visualLine(this, line);
|
4728 |
+
},
|
4729 |
+
|
4730 |
+
lineCount: function() {return this.size;},
|
4731 |
+
firstLine: function() {return this.first;},
|
4732 |
+
lastLine: function() {return this.first + this.size - 1;},
|
4733 |
+
|
4734 |
+
clipPos: function(pos) {return clipPos(this, pos);},
|
4735 |
+
|
4736 |
+
getCursor: function(start) {
|
4737 |
+
var sel = this.sel, pos;
|
4738 |
+
if (start == null || start == "head") pos = sel.head;
|
4739 |
+
else if (start == "anchor") pos = sel.anchor;
|
4740 |
+
else if (start == "end" || start === false) pos = sel.to;
|
4741 |
+
else pos = sel.from;
|
4742 |
+
return copyPos(pos);
|
4743 |
+
},
|
4744 |
+
somethingSelected: function() {return !posEq(this.sel.head, this.sel.anchor);},
|
4745 |
+
|
4746 |
+
setCursor: docOperation(function(line, ch, extend) {
|
4747 |
+
var pos = clipPos(this, typeof line == "number" ? Pos(line, ch || 0) : line);
|
4748 |
+
if (extend) extendSelection(this, pos);
|
4749 |
+
else setSelection(this, pos, pos);
|
4750 |
+
}),
|
4751 |
+
setSelection: docOperation(function(anchor, head) {
|
4752 |
+
setSelection(this, clipPos(this, anchor), clipPos(this, head || anchor));
|
4753 |
+
}),
|
4754 |
+
extendSelection: docOperation(function(from, to) {
|
4755 |
+
extendSelection(this, clipPos(this, from), to && clipPos(this, to));
|
4756 |
+
}),
|
4757 |
+
|
4758 |
+
getSelection: function(lineSep) {return this.getRange(this.sel.from, this.sel.to, lineSep);},
|
4759 |
+
replaceSelection: function(code, collapse, origin) {
|
4760 |
+
makeChange(this, {from: this.sel.from, to: this.sel.to, text: splitLines(code), origin: origin}, collapse || "around");
|
4761 |
+
},
|
4762 |
+
undo: docOperation(function() {makeChangeFromHistory(this, "undo");}),
|
4763 |
+
redo: docOperation(function() {makeChangeFromHistory(this, "redo");}),
|
4764 |
+
|
4765 |
+
setExtending: function(val) {this.sel.extend = val;},
|
4766 |
+
|
4767 |
+
historySize: function() {
|
4768 |
+
var hist = this.history;
|
4769 |
+
return {undo: hist.done.length, redo: hist.undone.length};
|
4770 |
+
},
|
4771 |
+
clearHistory: function() {this.history = makeHistory(this.history.maxGeneration);},
|
4772 |
+
|
4773 |
+
markClean: function() {
|
4774 |
+
this.cleanGeneration = this.changeGeneration();
|
4775 |
+
},
|
4776 |
+
changeGeneration: function() {
|
4777 |
+
this.history.lastOp = this.history.lastOrigin = null;
|
4778 |
+
return this.history.generation;
|
4779 |
+
},
|
4780 |
+
isClean: function (gen) {
|
4781 |
+
return this.history.generation == (gen || this.cleanGeneration);
|
4782 |
+
},
|
4783 |
+
|
4784 |
+
getHistory: function() {
|
4785 |
+
return {done: copyHistoryArray(this.history.done),
|
4786 |
+
undone: copyHistoryArray(this.history.undone)};
|
4787 |
+
},
|
4788 |
+
setHistory: function(histData) {
|
4789 |
+
var hist = this.history = makeHistory(this.history.maxGeneration);
|
4790 |
+
hist.done = histData.done.slice(0);
|
4791 |
+
hist.undone = histData.undone.slice(0);
|
4792 |
+
},
|
4793 |
+
|
4794 |
+
markText: function(from, to, options) {
|
4795 |
+
return markText(this, clipPos(this, from), clipPos(this, to), options, "range");
|
4796 |
+
},
|
4797 |
+
setBookmark: function(pos, options) {
|
4798 |
+
var realOpts = {replacedWith: options && (options.nodeType == null ? options.widget : options),
|
4799 |
+
insertLeft: options && options.insertLeft};
|
4800 |
+
pos = clipPos(this, pos);
|
4801 |
+
return markText(this, pos, pos, realOpts, "bookmark");
|
4802 |
+
},
|
4803 |
+
findMarksAt: function(pos) {
|
4804 |
+
pos = clipPos(this, pos);
|
4805 |
+
var markers = [], spans = getLine(this, pos.line).markedSpans;
|
4806 |
+
if (spans) for (var i = 0; i < spans.length; ++i) {
|
4807 |
+
var span = spans[i];
|
4808 |
+
if ((span.from == null || span.from <= pos.ch) &&
|
4809 |
+
(span.to == null || span.to >= pos.ch))
|
4810 |
+
markers.push(span.marker.parent || span.marker);
|
4811 |
+
}
|
4812 |
+
return markers;
|
4813 |
+
},
|
4814 |
+
getAllMarks: function() {
|
4815 |
+
var markers = [];
|
4816 |
+
this.iter(function(line) {
|
4817 |
+
var sps = line.markedSpans;
|
4818 |
+
if (sps) for (var i = 0; i < sps.length; ++i)
|
4819 |
+
if (sps[i].from != null) markers.push(sps[i].marker);
|
4820 |
+
});
|
4821 |
+
return markers;
|
4822 |
+
},
|
4823 |
+
|
4824 |
+
posFromIndex: function(off) {
|
4825 |
+
var ch, lineNo = this.first;
|
4826 |
+
this.iter(function(line) {
|
4827 |
+
var sz = line.text.length + 1;
|
4828 |
+
if (sz > off) { ch = off; return true; }
|
4829 |
+
off -= sz;
|
4830 |
+
++lineNo;
|
4831 |
+
});
|
4832 |
+
return clipPos(this, Pos(lineNo, ch));
|
4833 |
+
},
|
4834 |
+
indexFromPos: function (coords) {
|
4835 |
+
coords = clipPos(this, coords);
|
4836 |
+
var index = coords.ch;
|
4837 |
+
if (coords.line < this.first || coords.ch < 0) return 0;
|
4838 |
+
this.iter(this.first, coords.line, function (line) {
|
4839 |
+
index += line.text.length + 1;
|
4840 |
+
});
|
4841 |
+
return index;
|
4842 |
+
},
|
4843 |
+
|
4844 |
+
copy: function(copyHistory) {
|
4845 |
+
var doc = new Doc(getLines(this, this.first, this.first + this.size), this.modeOption, this.first);
|
4846 |
+
doc.scrollTop = this.scrollTop; doc.scrollLeft = this.scrollLeft;
|
4847 |
+
doc.sel = {from: this.sel.from, to: this.sel.to, head: this.sel.head, anchor: this.sel.anchor,
|
4848 |
+
shift: this.sel.shift, extend: false, goalColumn: this.sel.goalColumn};
|
4849 |
+
if (copyHistory) {
|
4850 |
+
doc.history.undoDepth = this.history.undoDepth;
|
4851 |
+
doc.setHistory(this.getHistory());
|
4852 |
+
}
|
4853 |
+
return doc;
|
4854 |
+
},
|
4855 |
+
|
4856 |
+
linkedDoc: function(options) {
|
4857 |
+
if (!options) options = {};
|
4858 |
+
var from = this.first, to = this.first + this.size;
|
4859 |
+
if (options.from != null && options.from > from) from = options.from;
|
4860 |
+
if (options.to != null && options.to < to) to = options.to;
|
4861 |
+
var copy = new Doc(getLines(this, from, to), options.mode || this.modeOption, from);
|
4862 |
+
if (options.sharedHist) copy.history = this.history;
|
4863 |
+
(this.linked || (this.linked = [])).push({doc: copy, sharedHist: options.sharedHist});
|
4864 |
+
copy.linked = [{doc: this, isParent: true, sharedHist: options.sharedHist}];
|
4865 |
+
return copy;
|
4866 |
+
},
|
4867 |
+
unlinkDoc: function(other) {
|
4868 |
+
if (other instanceof CodeMirror) other = other.doc;
|
4869 |
+
if (this.linked) for (var i = 0; i < this.linked.length; ++i) {
|
4870 |
+
var link = this.linked[i];
|
4871 |
+
if (link.doc != other) continue;
|
4872 |
+
this.linked.splice(i, 1);
|
4873 |
+
other.unlinkDoc(this);
|
4874 |
+
break;
|
4875 |
+
}
|
4876 |
+
// If the histories were shared, split them again
|
4877 |
+
if (other.history == this.history) {
|
4878 |
+
var splitIds = [other.id];
|
4879 |
+
linkedDocs(other, function(doc) {splitIds.push(doc.id);}, true);
|
4880 |
+
other.history = makeHistory();
|
4881 |
+
other.history.done = copyHistoryArray(this.history.done, splitIds);
|
4882 |
+
other.history.undone = copyHistoryArray(this.history.undone, splitIds);
|
4883 |
+
}
|
4884 |
+
},
|
4885 |
+
iterLinkedDocs: function(f) {linkedDocs(this, f);},
|
4886 |
+
|
4887 |
+
getMode: function() {return this.mode;},
|
4888 |
+
getEditor: function() {return this.cm;}
|
4889 |
+
});
|
4890 |
+
|
4891 |
+
Doc.prototype.eachLine = Doc.prototype.iter;
|
4892 |
+
|
4893 |
+
// The Doc methods that should be available on CodeMirror instances
|
4894 |
+
var dontDelegate = "iter insert remove copy getEditor".split(" ");
|
4895 |
+
for (var prop in Doc.prototype) if (Doc.prototype.hasOwnProperty(prop) && indexOf(dontDelegate, prop) < 0)
|
4896 |
+
CodeMirror.prototype[prop] = (function(method) {
|
4897 |
+
return function() {return method.apply(this.doc, arguments);};
|
4898 |
+
})(Doc.prototype[prop]);
|
4899 |
+
|
4900 |
+
eventMixin(Doc);
|
4901 |
+
|
4902 |
+
function linkedDocs(doc, f, sharedHistOnly) {
|
4903 |
+
function propagate(doc, skip, sharedHist) {
|
4904 |
+
if (doc.linked) for (var i = 0; i < doc.linked.length; ++i) {
|
4905 |
+
var rel = doc.linked[i];
|
4906 |
+
if (rel.doc == skip) continue;
|
4907 |
+
var shared = sharedHist && rel.sharedHist;
|
4908 |
+
if (sharedHistOnly && !shared) continue;
|
4909 |
+
f(rel.doc, shared);
|
4910 |
+
propagate(rel.doc, doc, shared);
|
4911 |
+
}
|
4912 |
+
}
|
4913 |
+
propagate(doc, null, true);
|
4914 |
+
}
|
4915 |
+
|
4916 |
+
function attachDoc(cm, doc) {
|
4917 |
+
if (doc.cm) throw new Error("This document is already in use.");
|
4918 |
+
cm.doc = doc;
|
4919 |
+
doc.cm = cm;
|
4920 |
+
estimateLineHeights(cm);
|
4921 |
+
loadMode(cm);
|
4922 |
+
if (!cm.options.lineWrapping) computeMaxLength(cm);
|
4923 |
+
cm.options.mode = doc.modeOption;
|
4924 |
+
regChange(cm);
|
4925 |
+
}
|
4926 |
+
|
4927 |
+
// LINE UTILITIES
|
4928 |
+
|
4929 |
+
function getLine(chunk, n) {
|
4930 |
+
n -= chunk.first;
|
4931 |
+
while (!chunk.lines) {
|
4932 |
+
for (var i = 0;; ++i) {
|
4933 |
+
var child = chunk.children[i], sz = child.chunkSize();
|
4934 |
+
if (n < sz) { chunk = child; break; }
|
4935 |
+
n -= sz;
|
4936 |
+
}
|
4937 |
+
}
|
4938 |
+
return chunk.lines[n];
|
4939 |
+
}
|
4940 |
+
|
4941 |
+
function getBetween(doc, start, end) {
|
4942 |
+
var out = [], n = start.line;
|
4943 |
+
doc.iter(start.line, end.line + 1, function(line) {
|
4944 |
+
var text = line.text;
|
4945 |
+
if (n == end.line) text = text.slice(0, end.ch);
|
4946 |
+
if (n == start.line) text = text.slice(start.ch);
|
4947 |
+
out.push(text);
|
4948 |
+
++n;
|
4949 |
+
});
|
4950 |
+
return out;
|
4951 |
+
}
|
4952 |
+
function getLines(doc, from, to) {
|
4953 |
+
var out = [];
|
4954 |
+
doc.iter(from, to, function(line) { out.push(line.text); });
|
4955 |
+
return out;
|
4956 |
+
}
|
4957 |
+
|
4958 |
+
function updateLineHeight(line, height) {
|
4959 |
+
var diff = height - line.height;
|
4960 |
+
for (var n = line; n; n = n.parent) n.height += diff;
|
4961 |
+
}
|
4962 |
+
|
4963 |
+
function lineNo(line) {
|
4964 |
+
if (line.parent == null) return null;
|
4965 |
+
var cur = line.parent, no = indexOf(cur.lines, line);
|
4966 |
+
for (var chunk = cur.parent; chunk; cur = chunk, chunk = chunk.parent) {
|
4967 |
+
for (var i = 0;; ++i) {
|
4968 |
+
if (chunk.children[i] == cur) break;
|
4969 |
+
no += chunk.children[i].chunkSize();
|
4970 |
+
}
|
4971 |
+
}
|
4972 |
+
return no + cur.first;
|
4973 |
+
}
|
4974 |
+
|
4975 |
+
function lineAtHeight(chunk, h) {
|
4976 |
+
var n = chunk.first;
|
4977 |
+
outer: do {
|
4978 |
+
for (var i = 0, e = chunk.children.length; i < e; ++i) {
|
4979 |
+
var child = chunk.children[i], ch = child.height;
|
4980 |
+
if (h < ch) { chunk = child; continue outer; }
|
4981 |
+
h -= ch;
|
4982 |
+
n += child.chunkSize();
|
4983 |
+
}
|
4984 |
+
return n;
|
4985 |
+
} while (!chunk.lines);
|
4986 |
+
for (var i = 0, e = chunk.lines.length; i < e; ++i) {
|
4987 |
+
var line = chunk.lines[i], lh = line.height;
|
4988 |
+
if (h < lh) break;
|
4989 |
+
h -= lh;
|
4990 |
+
}
|
4991 |
+
return n + i;
|
4992 |
+
}
|
4993 |
+
|
4994 |
+
function heightAtLine(cm, lineObj) {
|
4995 |
+
lineObj = visualLine(cm.doc, lineObj);
|
4996 |
+
|
4997 |
+
var h = 0, chunk = lineObj.parent;
|
4998 |
+
for (var i = 0; i < chunk.lines.length; ++i) {
|
4999 |
+
var line = chunk.lines[i];
|
5000 |
+
if (line == lineObj) break;
|
5001 |
+
else h += line.height;
|
5002 |
+
}
|
5003 |
+
for (var p = chunk.parent; p; chunk = p, p = chunk.parent) {
|
5004 |
+
for (var i = 0; i < p.children.length; ++i) {
|
5005 |
+
var cur = p.children[i];
|
5006 |
+
if (cur == chunk) break;
|
5007 |
+
else h += cur.height;
|
5008 |
+
}
|
5009 |
+
}
|
5010 |
+
return h;
|
5011 |
+
}
|
5012 |
+
|
5013 |
+
function getOrder(line) {
|
5014 |
+
var order = line.order;
|
5015 |
+
if (order == null) order = line.order = bidiOrdering(line.text);
|
5016 |
+
return order;
|
5017 |
+
}
|
5018 |
+
|
5019 |
+
// HISTORY
|
5020 |
+
|
5021 |
+
function makeHistory(startGen) {
|
5022 |
+
return {
|
5023 |
+
// Arrays of history events. Doing something adds an event to
|
5024 |
+
// done and clears undo. Undoing moves events from done to
|
5025 |
+
// undone, redoing moves them in the other direction.
|
5026 |
+
done: [], undone: [], undoDepth: Infinity,
|
5027 |
+
// Used to track when changes can be merged into a single undo
|
5028 |
+
// event
|
5029 |
+
lastTime: 0, lastOp: null, lastOrigin: null,
|
5030 |
+
// Used by the isClean() method
|
5031 |
+
generation: startGen || 1, maxGeneration: startGen || 1
|
5032 |
+
};
|
5033 |
+
}
|
5034 |
+
|
5035 |
+
function attachLocalSpans(doc, change, from, to) {
|
5036 |
+
var existing = change["spans_" + doc.id], n = 0;
|
5037 |
+
doc.iter(Math.max(doc.first, from), Math.min(doc.first + doc.size, to), function(line) {
|
5038 |
+
if (line.markedSpans)
|
5039 |
+
(existing || (existing = change["spans_" + doc.id] = {}))[n] = line.markedSpans;
|
5040 |
+
++n;
|
5041 |
+
});
|
5042 |
+
}
|
5043 |
+
|
5044 |
+
function historyChangeFromChange(doc, change) {
|
5045 |
+
var from = { line: change.from.line, ch: change.from.ch };
|
5046 |
+
var histChange = {from: from, to: changeEnd(change), text: getBetween(doc, change.from, change.to)};
|
5047 |
+
attachLocalSpans(doc, histChange, change.from.line, change.to.line + 1);
|
5048 |
+
linkedDocs(doc, function(doc) {attachLocalSpans(doc, histChange, change.from.line, change.to.line + 1);}, true);
|
5049 |
+
return histChange;
|
5050 |
+
}
|
5051 |
+
|
5052 |
+
function addToHistory(doc, change, selAfter, opId) {
|
5053 |
+
var hist = doc.history;
|
5054 |
+
hist.undone.length = 0;
|
5055 |
+
var time = +new Date, cur = lst(hist.done);
|
5056 |
+
|
5057 |
+
if (cur &&
|
5058 |
+
(hist.lastOp == opId ||
|
5059 |
+
hist.lastOrigin == change.origin && change.origin &&
|
5060 |
+
((change.origin.charAt(0) == "+" && doc.cm && hist.lastTime > time - doc.cm.options.historyEventDelay) ||
|
5061 |
+
change.origin.charAt(0) == "*"))) {
|
5062 |
+
// Merge this change into the last event
|
5063 |
+
var last = lst(cur.changes);
|
5064 |
+
if (posEq(change.from, change.to) && posEq(change.from, last.to)) {
|
5065 |
+
// Optimized case for simple insertion -- don't want to add
|
5066 |
+
// new changesets for every character typed
|
5067 |
+
last.to = changeEnd(change);
|
5068 |
+
} else {
|
5069 |
+
// Add new sub-event
|
5070 |
+
cur.changes.push(historyChangeFromChange(doc, change));
|
5071 |
+
}
|
5072 |
+
cur.anchorAfter = selAfter.anchor; cur.headAfter = selAfter.head;
|
5073 |
+
} else {
|
5074 |
+
// Can not be merged, start a new event.
|
5075 |
+
cur = {changes: [historyChangeFromChange(doc, change)],
|
5076 |
+
generation: hist.generation,
|
5077 |
+
anchorBefore: doc.sel.anchor, headBefore: doc.sel.head,
|
5078 |
+
anchorAfter: selAfter.anchor, headAfter: selAfter.head};
|
5079 |
+
hist.done.push(cur);
|
5080 |
+
hist.generation = ++hist.maxGeneration;
|
5081 |
+
while (hist.done.length > hist.undoDepth)
|
5082 |
+
hist.done.shift();
|
5083 |
+
}
|
5084 |
+
hist.lastTime = time;
|
5085 |
+
hist.lastOp = opId;
|
5086 |
+
hist.lastOrigin = change.origin;
|
5087 |
+
}
|
5088 |
+
|
5089 |
+
function removeClearedSpans(spans) {
|
5090 |
+
if (!spans) return null;
|
5091 |
+
for (var i = 0, out; i < spans.length; ++i) {
|
5092 |
+
if (spans[i].marker.explicitlyCleared) { if (!out) out = spans.slice(0, i); }
|
5093 |
+
else if (out) out.push(spans[i]);
|
5094 |
+
}
|
5095 |
+
return !out ? spans : out.length ? out : null;
|
5096 |
+
}
|
5097 |
+
|
5098 |
+
function getOldSpans(doc, change) {
|
5099 |
+
var found = change["spans_" + doc.id];
|
5100 |
+
if (!found) return null;
|
5101 |
+
for (var i = 0, nw = []; i < change.text.length; ++i)
|
5102 |
+
nw.push(removeClearedSpans(found[i]));
|
5103 |
+
return nw;
|
5104 |
+
}
|
5105 |
+
|
5106 |
+
// Used both to provide a JSON-safe object in .getHistory, and, when
|
5107 |
+
// detaching a document, to split the history in two
|
5108 |
+
function copyHistoryArray(events, newGroup) {
|
5109 |
+
for (var i = 0, copy = []; i < events.length; ++i) {
|
5110 |
+
var event = events[i], changes = event.changes, newChanges = [];
|
5111 |
+
copy.push({changes: newChanges, anchorBefore: event.anchorBefore, headBefore: event.headBefore,
|
5112 |
+
anchorAfter: event.anchorAfter, headAfter: event.headAfter});
|
5113 |
+
for (var j = 0; j < changes.length; ++j) {
|
5114 |
+
var change = changes[j], m;
|
5115 |
+
newChanges.push({from: change.from, to: change.to, text: change.text});
|
5116 |
+
if (newGroup) for (var prop in change) if (m = prop.match(/^spans_(\d+)$/)) {
|
5117 |
+
if (indexOf(newGroup, Number(m[1])) > -1) {
|
5118 |
+
lst(newChanges)[prop] = change[prop];
|
5119 |
+
delete change[prop];
|
5120 |
+
}
|
5121 |
+
}
|
5122 |
+
}
|
5123 |
+
}
|
5124 |
+
return copy;
|
5125 |
+
}
|
5126 |
+
|
5127 |
+
// Rebasing/resetting history to deal with externally-sourced changes
|
5128 |
+
|
5129 |
+
function rebaseHistSel(pos, from, to, diff) {
|
5130 |
+
if (to < pos.line) {
|
5131 |
+
pos.line += diff;
|
5132 |
+
} else if (from < pos.line) {
|
5133 |
+
pos.line = from;
|
5134 |
+
pos.ch = 0;
|
5135 |
+
}
|
5136 |
+
}
|
5137 |
+
|
5138 |
+
// Tries to rebase an array of history events given a change in the
|
5139 |
+
// document. If the change touches the same lines as the event, the
|
5140 |
+
// event, and everything 'behind' it, is discarded. If the change is
|
5141 |
+
// before the event, the event's positions are updated. Uses a
|
5142 |
+
// copy-on-write scheme for the positions, to avoid having to
|
5143 |
+
// reallocate them all on every rebase, but also avoid problems with
|
5144 |
+
// shared position objects being unsafely updated.
|
5145 |
+
function rebaseHistArray(array, from, to, diff) {
|
5146 |
+
for (var i = 0; i < array.length; ++i) {
|
5147 |
+
var sub = array[i], ok = true;
|
5148 |
+
for (var j = 0; j < sub.changes.length; ++j) {
|
5149 |
+
var cur = sub.changes[j];
|
5150 |
+
if (!sub.copied) { cur.from = copyPos(cur.from); cur.to = copyPos(cur.to); }
|
5151 |
+
if (to < cur.from.line) {
|
5152 |
+
cur.from.line += diff;
|
5153 |
+
cur.to.line += diff;
|
5154 |
+
} else if (from <= cur.to.line) {
|
5155 |
+
ok = false;
|
5156 |
+
break;
|
5157 |
+
}
|
5158 |
+
}
|
5159 |
+
if (!sub.copied) {
|
5160 |
+
sub.anchorBefore = copyPos(sub.anchorBefore); sub.headBefore = copyPos(sub.headBefore);
|
5161 |
+
sub.anchorAfter = copyPos(sub.anchorAfter); sub.readAfter = copyPos(sub.headAfter);
|
5162 |
+
sub.copied = true;
|
5163 |
+
}
|
5164 |
+
if (!ok) {
|
5165 |
+
array.splice(0, i + 1);
|
5166 |
+
i = 0;
|
5167 |
+
} else {
|
5168 |
+
rebaseHistSel(sub.anchorBefore); rebaseHistSel(sub.headBefore);
|
5169 |
+
rebaseHistSel(sub.anchorAfter); rebaseHistSel(sub.headAfter);
|
5170 |
+
}
|
5171 |
+
}
|
5172 |
+
}
|
5173 |
+
|
5174 |
+
function rebaseHist(hist, change) {
|
5175 |
+
var from = change.from.line, to = change.to.line, diff = change.text.length - (to - from) - 1;
|
5176 |
+
rebaseHistArray(hist.done, from, to, diff);
|
5177 |
+
rebaseHistArray(hist.undone, from, to, diff);
|
5178 |
+
}
|
5179 |
+
|
5180 |
+
// EVENT OPERATORS
|
5181 |
+
|
5182 |
+
function stopMethod() {e_stop(this);}
|
5183 |
+
// Ensure an event has a stop method.
|
5184 |
+
function addStop(event) {
|
5185 |
+
if (!event.stop) event.stop = stopMethod;
|
5186 |
+
return event;
|
5187 |
+
}
|
5188 |
+
|
5189 |
+
function e_preventDefault(e) {
|
5190 |
+
if (e.preventDefault) e.preventDefault();
|
5191 |
+
else e.returnValue = false;
|
5192 |
+
}
|
5193 |
+
function e_stopPropagation(e) {
|
5194 |
+
if (e.stopPropagation) e.stopPropagation();
|
5195 |
+
else e.cancelBubble = true;
|
5196 |
+
}
|
5197 |
+
function e_defaultPrevented(e) {
|
5198 |
+
return e.defaultPrevented != null ? e.defaultPrevented : e.returnValue == false;
|
5199 |
+
}
|
5200 |
+
function e_stop(e) {e_preventDefault(e); e_stopPropagation(e);}
|
5201 |
+
CodeMirror.e_stop = e_stop;
|
5202 |
+
CodeMirror.e_preventDefault = e_preventDefault;
|
5203 |
+
CodeMirror.e_stopPropagation = e_stopPropagation;
|
5204 |
+
|
5205 |
+
function e_target(e) {return e.target || e.srcElement;}
|
5206 |
+
function e_button(e) {
|
5207 |
+
var b = e.which;
|
5208 |
+
if (b == null) {
|
5209 |
+
if (e.button & 1) b = 1;
|
5210 |
+
else if (e.button & 2) b = 3;
|
5211 |
+
else if (e.button & 4) b = 2;
|
5212 |
+
}
|
5213 |
+
if (mac && e.ctrlKey && b == 1) b = 3;
|
5214 |
+
return b;
|
5215 |
+
}
|
5216 |
+
|
5217 |
+
// EVENT HANDLING
|
5218 |
+
|
5219 |
+
function on(emitter, type, f) {
|
5220 |
+
if (emitter.addEventListener)
|
5221 |
+
emitter.addEventListener(type, f, false);
|
5222 |
+
else if (emitter.attachEvent)
|
5223 |
+
emitter.attachEvent("on" + type, f);
|
5224 |
+
else {
|
5225 |
+
var map = emitter._handlers || (emitter._handlers = {});
|
5226 |
+
var arr = map[type] || (map[type] = []);
|
5227 |
+
arr.push(f);
|
5228 |
+
}
|
5229 |
+
}
|
5230 |
+
|
5231 |
+
function off(emitter, type, f) {
|
5232 |
+
if (emitter.removeEventListener)
|
5233 |
+
emitter.removeEventListener(type, f, false);
|
5234 |
+
else if (emitter.detachEvent)
|
5235 |
+
emitter.detachEvent("on" + type, f);
|
5236 |
+
else {
|
5237 |
+
var arr = emitter._handlers && emitter._handlers[type];
|
5238 |
+
if (!arr) return;
|
5239 |
+
for (var i = 0; i < arr.length; ++i)
|
5240 |
+
if (arr[i] == f) { arr.splice(i, 1); break; }
|
5241 |
+
}
|
5242 |
+
}
|
5243 |
+
|
5244 |
+
function signal(emitter, type /*, values...*/) {
|
5245 |
+
var arr = emitter._handlers && emitter._handlers[type];
|
5246 |
+
if (!arr) return;
|
5247 |
+
var args = Array.prototype.slice.call(arguments, 2);
|
5248 |
+
for (var i = 0; i < arr.length; ++i) arr[i].apply(null, args);
|
5249 |
+
}
|
5250 |
+
|
5251 |
+
var delayedCallbacks, delayedCallbackDepth = 0;
|
5252 |
+
function signalLater(emitter, type /*, values...*/) {
|
5253 |
+
var arr = emitter._handlers && emitter._handlers[type];
|
5254 |
+
if (!arr) return;
|
5255 |
+
var args = Array.prototype.slice.call(arguments, 2);
|
5256 |
+
if (!delayedCallbacks) {
|
5257 |
+
++delayedCallbackDepth;
|
5258 |
+
delayedCallbacks = [];
|
5259 |
+
setTimeout(fireDelayed, 0);
|
5260 |
+
}
|
5261 |
+
function bnd(f) {return function(){f.apply(null, args);};};
|
5262 |
+
for (var i = 0; i < arr.length; ++i)
|
5263 |
+
delayedCallbacks.push(bnd(arr[i]));
|
5264 |
+
}
|
5265 |
+
|
5266 |
+
function signalDOMEvent(cm, e, override) {
|
5267 |
+
signal(cm, override || e.type, cm, e);
|
5268 |
+
return e_defaultPrevented(e) || e.codemirrorIgnore;
|
5269 |
+
}
|
5270 |
+
|
5271 |
+
function fireDelayed() {
|
5272 |
+
--delayedCallbackDepth;
|
5273 |
+
var delayed = delayedCallbacks;
|
5274 |
+
delayedCallbacks = null;
|
5275 |
+
for (var i = 0; i < delayed.length; ++i) delayed[i]();
|
5276 |
+
}
|
5277 |
+
|
5278 |
+
function hasHandler(emitter, type) {
|
5279 |
+
var arr = emitter._handlers && emitter._handlers[type];
|
5280 |
+
return arr && arr.length > 0;
|
5281 |
+
}
|
5282 |
+
|
5283 |
+
CodeMirror.on = on; CodeMirror.off = off; CodeMirror.signal = signal;
|
5284 |
+
|
5285 |
+
function eventMixin(ctor) {
|
5286 |
+
ctor.prototype.on = function(type, f) {on(this, type, f);};
|
5287 |
+
ctor.prototype.off = function(type, f) {off(this, type, f);};
|
5288 |
+
}
|
5289 |
+
|
5290 |
+
// MISC UTILITIES
|
5291 |
+
|
5292 |
+
// Number of pixels added to scroller and sizer to hide scrollbar
|
5293 |
+
var scrollerCutOff = 30;
|
5294 |
+
|
5295 |
+
// Returned or thrown by various protocols to signal 'I'm not
|
5296 |
+
// handling this'.
|
5297 |
+
var Pass = CodeMirror.Pass = {toString: function(){return "CodeMirror.Pass";}};
|
5298 |
+
|
5299 |
+
function Delayed() {this.id = null;}
|
5300 |
+
Delayed.prototype = {set: function(ms, f) {clearTimeout(this.id); this.id = setTimeout(f, ms);}};
|
5301 |
+
|
5302 |
+
// Counts the column offset in a string, taking tabs into account.
|
5303 |
+
// Used mostly to find indentation.
|
5304 |
+
function countColumn(string, end, tabSize, startIndex, startValue) {
|
5305 |
+
if (end == null) {
|
5306 |
+
end = string.search(/[^\s\u00a0]/);
|
5307 |
+
if (end == -1) end = string.length;
|
5308 |
+
}
|
5309 |
+
for (var i = startIndex || 0, n = startValue || 0; i < end; ++i) {
|
5310 |
+
if (string.charAt(i) == "\t") n += tabSize - (n % tabSize);
|
5311 |
+
else ++n;
|
5312 |
+
}
|
5313 |
+
return n;
|
5314 |
+
}
|
5315 |
+
CodeMirror.countColumn = countColumn;
|
5316 |
+
|
5317 |
+
var spaceStrs = [""];
|
5318 |
+
function spaceStr(n) {
|
5319 |
+
while (spaceStrs.length <= n)
|
5320 |
+
spaceStrs.push(lst(spaceStrs) + " ");
|
5321 |
+
return spaceStrs[n];
|
5322 |
+
}
|
5323 |
+
|
5324 |
+
function lst(arr) { return arr[arr.length-1]; }
|
5325 |
+
|
5326 |
+
function selectInput(node) {
|
5327 |
+
if (ios) { // Mobile Safari apparently has a bug where select() is broken.
|
5328 |
+
node.selectionStart = 0;
|
5329 |
+
node.selectionEnd = node.value.length;
|
5330 |
+
} else {
|
5331 |
+
// Suppress mysterious IE10 errors
|
5332 |
+
try { node.select(); }
|
5333 |
+
catch(_e) {}
|
5334 |
+
}
|
5335 |
+
}
|
5336 |
+
|
5337 |
+
function indexOf(collection, elt) {
|
5338 |
+
if (collection.indexOf) return collection.indexOf(elt);
|
5339 |
+
for (var i = 0, e = collection.length; i < e; ++i)
|
5340 |
+
if (collection[i] == elt) return i;
|
5341 |
+
return -1;
|
5342 |
+
}
|
5343 |
+
|
5344 |
+
function createObj(base, props) {
|
5345 |
+
function Obj() {}
|
5346 |
+
Obj.prototype = base;
|
5347 |
+
var inst = new Obj();
|
5348 |
+
if (props) copyObj(props, inst);
|
5349 |
+
return inst;
|
5350 |
+
}
|
5351 |
+
|
5352 |
+
function copyObj(obj, target) {
|
5353 |
+
if (!target) target = {};
|
5354 |
+
for (var prop in obj) if (obj.hasOwnProperty(prop)) target[prop] = obj[prop];
|
5355 |
+
return target;
|
5356 |
+
}
|
5357 |
+
|
5358 |
+
function emptyArray(size) {
|
5359 |
+
for (var a = [], i = 0; i < size; ++i) a.push(undefined);
|
5360 |
+
return a;
|
5361 |
+
}
|
5362 |
+
|
5363 |
+
function bind(f) {
|
5364 |
+
var args = Array.prototype.slice.call(arguments, 1);
|
5365 |
+
return function(){return f.apply(null, args);};
|
5366 |
+
}
|
5367 |
+
|
5368 |
+
var nonASCIISingleCaseWordChar = /[\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/;
|
5369 |
+
function isWordChar(ch) {
|
5370 |
+
return /\w/.test(ch) || ch > "\x80" &&
|
5371 |
+
(ch.toUpperCase() != ch.toLowerCase() || nonASCIISingleCaseWordChar.test(ch));
|
5372 |
+
}
|
5373 |
+
|
5374 |
+
function isEmpty(obj) {
|
5375 |
+
for (var n in obj) if (obj.hasOwnProperty(n) && obj[n]) return false;
|
5376 |
+
return true;
|
5377 |
+
}
|
5378 |
+
|
5379 |
+
var isExtendingChar = /[\u0300-\u036F\u0483-\u0487\u0488-\u0489\u0591-\u05BD\u05BF\u05C1-\u05C2\u05C4-\u05C5\u05C7\u0610-\u061A\u064B-\u065F\u0670\u06D6-\u06DC\u06DF-\u06E4\u06E7-\u06E8\u06EA-\u06ED\uA66F\uA670-\uA672\uA674-\uA67D\uA69F\udc00-\udfff]/;
|
5380 |
+
|
5381 |
+
// DOM UTILITIES
|
5382 |
+
|
5383 |
+
function elt(tag, content, className, style) {
|
5384 |
+
var e = document.createElement(tag);
|
5385 |
+
if (className) e.className = className;
|
5386 |
+
if (style) e.style.cssText = style;
|
5387 |
+
if (typeof content == "string") setTextContent(e, content);
|
5388 |
+
else if (content) for (var i = 0; i < content.length; ++i) e.appendChild(content[i]);
|
5389 |
+
return e;
|
5390 |
+
}
|
5391 |
+
|
5392 |
+
function removeChildren(e) {
|
5393 |
+
for (var count = e.childNodes.length; count > 0; --count)
|
5394 |
+
e.removeChild(e.firstChild);
|
5395 |
+
return e;
|
5396 |
+
}
|
5397 |
+
|
5398 |
+
function removeChildrenAndAdd(parent, e) {
|
5399 |
+
return removeChildren(parent).appendChild(e);
|
5400 |
+
}
|
5401 |
+
|
5402 |
+
function setTextContent(e, str) {
|
5403 |
+
if (ie_lt9) {
|
5404 |
+
e.innerHTML = "";
|
5405 |
+
e.appendChild(document.createTextNode(str));
|
5406 |
+
} else e.textContent = str;
|
5407 |
+
}
|
5408 |
+
|
5409 |
+
function getRect(node) {
|
5410 |
+
return node.getBoundingClientRect();
|
5411 |
+
}
|
5412 |
+
CodeMirror.replaceGetRect = function(f) { getRect = f; };
|
5413 |
+
|
5414 |
+
// FEATURE DETECTION
|
5415 |
+
|
5416 |
+
// Detect drag-and-drop
|
5417 |
+
var dragAndDrop = function() {
|
5418 |
+
// There is *some* kind of drag-and-drop support in IE6-8, but I
|
5419 |
+
// couldn't get it to work yet.
|
5420 |
+
if (ie_lt9) return false;
|
5421 |
+
var div = elt('div');
|
5422 |
+
return "draggable" in div || "dragDrop" in div;
|
5423 |
+
}();
|
5424 |
+
|
5425 |
+
// For a reason I have yet to figure out, some browsers disallow
|
5426 |
+
// word wrapping between certain characters *only* if a new inline
|
5427 |
+
// element is started between them. This makes it hard to reliably
|
5428 |
+
// measure the position of things, since that requires inserting an
|
5429 |
+
// extra span. This terribly fragile set of tests matches the
|
5430 |
+
// character combinations that suffer from this phenomenon on the
|
5431 |
+
// various browsers.
|
5432 |
+
function spanAffectsWrapping() { return false; }
|
5433 |
+
if (gecko) // Only for "$'"
|
5434 |
+
spanAffectsWrapping = function(str, i) {
|
5435 |
+
return str.charCodeAt(i - 1) == 36 && str.charCodeAt(i) == 39;
|
5436 |
+
};
|
5437 |
+
else if (safari && !/Version\/([6-9]|\d\d)\b/.test(navigator.userAgent))
|
5438 |
+
spanAffectsWrapping = function(str, i) {
|
5439 |
+
return /\-[^ \-?]|\?[^ !\'\"\),.\-\/:;\?\]\}]/.test(str.slice(i - 1, i + 1));
|
5440 |
+
};
|
5441 |
+
else if (webkit && !/Chrome\/(?:29|[3-9]\d|\d\d\d)\./.test(navigator.userAgent))
|
5442 |
+
spanAffectsWrapping = function(str, i) {
|
5443 |
+
if (i > 1 && str.charCodeAt(i - 1) == 45) {
|
5444 |
+
if (/\w/.test(str.charAt(i - 2)) && /[^\-?\.]/.test(str.charAt(i))) return true;
|
5445 |
+
if (i > 2 && /[\d\.,]/.test(str.charAt(i - 2)) && /[\d\.,]/.test(str.charAt(i))) return false;
|
5446 |
+
}
|
5447 |
+
return /[~!#%&*)=+}\]|\"\.>,:;][({[<]|-[^\-?\.\u2010-\u201f\u2026]|\?[\w~`@#$%\^&*(_=+{[|><]|…[\w~`@#$%\^&*(_=+{[><]/.test(str.slice(i - 1, i + 1));
|
5448 |
+
};
|
5449 |
+
|
5450 |
+
var knownScrollbarWidth;
|
5451 |
+
function scrollbarWidth(measure) {
|
5452 |
+
if (knownScrollbarWidth != null) return knownScrollbarWidth;
|
5453 |
+
var test = elt("div", null, null, "width: 50px; height: 50px; overflow-x: scroll");
|
5454 |
+
removeChildrenAndAdd(measure, test);
|
5455 |
+
if (test.offsetWidth)
|
5456 |
+
knownScrollbarWidth = test.offsetHeight - test.clientHeight;
|
5457 |
+
return knownScrollbarWidth || 0;
|
5458 |
+
}
|
5459 |
+
|
5460 |
+
var zwspSupported;
|
5461 |
+
function zeroWidthElement(measure) {
|
5462 |
+
if (zwspSupported == null) {
|
5463 |
+
var test = elt("span", "\u200b");
|
5464 |
+
removeChildrenAndAdd(measure, elt("span", [test, document.createTextNode("x")]));
|
5465 |
+
if (measure.firstChild.offsetHeight != 0)
|
5466 |
+
zwspSupported = test.offsetWidth <= 1 && test.offsetHeight > 2 && !ie_lt8;
|
5467 |
+
}
|
5468 |
+
if (zwspSupported) return elt("span", "\u200b");
|
5469 |
+
else return elt("span", "\u00a0", null, "display: inline-block; width: 1px; margin-right: -1px");
|
5470 |
+
}
|
5471 |
+
|
5472 |
+
// See if "".split is the broken IE version, if so, provide an
|
5473 |
+
// alternative way to split lines.
|
5474 |
+
var splitLines = "\n\nb".split(/\n/).length != 3 ? function(string) {
|
5475 |
+
var pos = 0, result = [], l = string.length;
|
5476 |
+
while (pos <= l) {
|
5477 |
+
var nl = string.indexOf("\n", pos);
|
5478 |
+
if (nl == -1) nl = string.length;
|
5479 |
+
var line = string.slice(pos, string.charAt(nl - 1) == "\r" ? nl - 1 : nl);
|
5480 |
+
var rt = line.indexOf("\r");
|
5481 |
+
if (rt != -1) {
|
5482 |
+
result.push(line.slice(0, rt));
|
5483 |
+
pos += rt + 1;
|
5484 |
+
} else {
|
5485 |
+
result.push(line);
|
5486 |
+
pos = nl + 1;
|
5487 |
+
}
|
5488 |
+
}
|
5489 |
+
return result;
|
5490 |
+
} : function(string){return string.split(/\r\n?|\n/);};
|
5491 |
+
CodeMirror.splitLines = splitLines;
|
5492 |
+
|
5493 |
+
var hasSelection = window.getSelection ? function(te) {
|
5494 |
+
try { return te.selectionStart != te.selectionEnd; }
|
5495 |
+
catch(e) { return false; }
|
5496 |
+
} : function(te) {
|
5497 |
+
try {var range = te.ownerDocument.selection.createRange();}
|
5498 |
+
catch(e) {}
|
5499 |
+
if (!range || range.parentElement() != te) return false;
|
5500 |
+
return range.compareEndPoints("StartToEnd", range) != 0;
|
5501 |
+
};
|
5502 |
+
|
5503 |
+
var hasCopyEvent = (function() {
|
5504 |
+
var e = elt("div");
|
5505 |
+
if ("oncopy" in e) return true;
|
5506 |
+
e.setAttribute("oncopy", "return;");
|
5507 |
+
return typeof e.oncopy == 'function';
|
5508 |
+
})();
|
5509 |
+
|
5510 |
+
// KEY NAMING
|
5511 |
+
|
5512 |
+
var keyNames = {3: "Enter", 8: "Backspace", 9: "Tab", 13: "Enter", 16: "Shift", 17: "Ctrl", 18: "Alt",
|
5513 |
+
19: "Pause", 20: "CapsLock", 27: "Esc", 32: "Space", 33: "PageUp", 34: "PageDown", 35: "End",
|
5514 |
+
36: "Home", 37: "Left", 38: "Up", 39: "Right", 40: "Down", 44: "PrintScrn", 45: "Insert",
|
5515 |
+
46: "Delete", 59: ";", 91: "Mod", 92: "Mod", 93: "Mod", 109: "-", 107: "=", 127: "Delete",
|
5516 |
+
186: ";", 187: "=", 188: ",", 189: "-", 190: ".", 191: "/", 192: "`", 219: "[", 220: "\\",
|
5517 |
+
221: "]", 222: "'", 63276: "PageUp", 63277: "PageDown", 63275: "End", 63273: "Home",
|
5518 |
+
63234: "Left", 63232: "Up", 63235: "Right", 63233: "Down", 63302: "Insert", 63272: "Delete"};
|
5519 |
+
CodeMirror.keyNames = keyNames;
|
5520 |
+
(function() {
|
5521 |
+
// Number keys
|
5522 |
+
for (var i = 0; i < 10; i++) keyNames[i + 48] = String(i);
|
5523 |
+
// Alphabetic keys
|
5524 |
+
for (var i = 65; i <= 90; i++) keyNames[i] = String.fromCharCode(i);
|
5525 |
+
// Function keys
|
5526 |
+
for (var i = 1; i <= 12; i++) keyNames[i + 111] = keyNames[i + 63235] = "F" + i;
|
5527 |
+
})();
|
5528 |
+
|
5529 |
+
// BIDI HELPERS
|
5530 |
+
|
5531 |
+
function iterateBidiSections(order, from, to, f) {
|
5532 |
+
if (!order) return f(from, to, "ltr");
|
5533 |
+
var found = false;
|
5534 |
+
for (var i = 0; i < order.length; ++i) {
|
5535 |
+
var part = order[i];
|
5536 |
+
if (part.from < to && part.to > from || from == to && part.to == from) {
|
5537 |
+
f(Math.max(part.from, from), Math.min(part.to, to), part.level == 1 ? "rtl" : "ltr");
|
5538 |
+
found = true;
|
5539 |
+
}
|
5540 |
+
}
|
5541 |
+
if (!found) f(from, to, "ltr");
|
5542 |
+
}
|
5543 |
+
|
5544 |
+
function bidiLeft(part) { return part.level % 2 ? part.to : part.from; }
|
5545 |
+
function bidiRight(part) { return part.level % 2 ? part.from : part.to; }
|
5546 |
+
|
5547 |
+
function lineLeft(line) { var order = getOrder(line); return order ? bidiLeft(order[0]) : 0; }
|
5548 |
+
function lineRight(line) {
|
5549 |
+
var order = getOrder(line);
|
5550 |
+
if (!order) return line.text.length;
|
5551 |
+
return bidiRight(lst(order));
|
5552 |
+
}
|
5553 |
+
|
5554 |
+
function lineStart(cm, lineN) {
|
5555 |
+
var line = getLine(cm.doc, lineN);
|
5556 |
+
var visual = visualLine(cm.doc, line);
|
5557 |
+
if (visual != line) lineN = lineNo(visual);
|
5558 |
+
var order = getOrder(visual);
|
5559 |
+
var ch = !order ? 0 : order[0].level % 2 ? lineRight(visual) : lineLeft(visual);
|
5560 |
+
return Pos(lineN, ch);
|
5561 |
+
}
|
5562 |
+
function lineEnd(cm, lineN) {
|
5563 |
+
var merged, line;
|
5564 |
+
while (merged = collapsedSpanAtEnd(line = getLine(cm.doc, lineN)))
|
5565 |
+
lineN = merged.find().to.line;
|
5566 |
+
var order = getOrder(line);
|
5567 |
+
var ch = !order ? line.text.length : order[0].level % 2 ? lineLeft(line) : lineRight(line);
|
5568 |
+
return Pos(lineN, ch);
|
5569 |
+
}
|
5570 |
+
|
5571 |
+
function compareBidiLevel(order, a, b) {
|
5572 |
+
var linedir = order[0].level;
|
5573 |
+
if (a == linedir) return true;
|
5574 |
+
if (b == linedir) return false;
|
5575 |
+
return a < b;
|
5576 |
+
}
|
5577 |
+
var bidiOther;
|
5578 |
+
function getBidiPartAt(order, pos) {
|
5579 |
+
for (var i = 0, found; i < order.length; ++i) {
|
5580 |
+
var cur = order[i];
|
5581 |
+
if (cur.from < pos && cur.to > pos) { bidiOther = null; return i; }
|
5582 |
+
if (cur.from == pos || cur.to == pos) {
|
5583 |
+
if (found == null) {
|
5584 |
+
found = i;
|
5585 |
+
} else if (compareBidiLevel(order, cur.level, order[found].level)) {
|
5586 |
+
bidiOther = found;
|
5587 |
+
return i;
|
5588 |
+
} else {
|
5589 |
+
bidiOther = i;
|
5590 |
+
return found;
|
5591 |
+
}
|
5592 |
+
}
|
5593 |
+
}
|
5594 |
+
bidiOther = null;
|
5595 |
+
return found;
|
5596 |
+
}
|
5597 |
+
|
5598 |
+
function moveInLine(line, pos, dir, byUnit) {
|
5599 |
+
if (!byUnit) return pos + dir;
|
5600 |
+
do pos += dir;
|
5601 |
+
while (pos > 0 && isExtendingChar.test(line.text.charAt(pos)));
|
5602 |
+
return pos;
|
5603 |
+
}
|
5604 |
+
|
5605 |
+
// This is somewhat involved. It is needed in order to move
|
5606 |
+
// 'visually' through bi-directional text -- i.e., pressing left
|
5607 |
+
// should make the cursor go left, even when in RTL text. The
|
5608 |
+
// tricky part is the 'jumps', where RTL and LTR text touch each
|
5609 |
+
// other. This often requires the cursor offset to move more than
|
5610 |
+
// one unit, in order to visually move one unit.
|
5611 |
+
function moveVisually(line, start, dir, byUnit) {
|
5612 |
+
var bidi = getOrder(line);
|
5613 |
+
if (!bidi) return moveLogically(line, start, dir, byUnit);
|
5614 |
+
var pos = getBidiPartAt(bidi, start), part = bidi[pos];
|
5615 |
+
var target = moveInLine(line, start, part.level % 2 ? -dir : dir, byUnit);
|
5616 |
+
|
5617 |
+
for (;;) {
|
5618 |
+
if (target > part.from && target < part.to) return target;
|
5619 |
+
if (target == part.from || target == part.to) {
|
5620 |
+
if (getBidiPartAt(bidi, target) == pos) return target;
|
5621 |
+
part = bidi[pos += dir];
|
5622 |
+
return (dir > 0) == part.level % 2 ? part.to : part.from;
|
5623 |
+
} else {
|
5624 |
+
part = bidi[pos += dir];
|
5625 |
+
if (!part) return null;
|
5626 |
+
if ((dir > 0) == part.level % 2)
|
5627 |
+
target = moveInLine(line, part.to, -1, byUnit);
|
5628 |
+
else
|
5629 |
+
target = moveInLine(line, part.from, 1, byUnit);
|
5630 |
+
}
|
5631 |
+
}
|
5632 |
+
}
|
5633 |
+
|
5634 |
+
function moveLogically(line, start, dir, byUnit) {
|
5635 |
+
var target = start + dir;
|
5636 |
+
if (byUnit) while (target > 0 && isExtendingChar.test(line.text.charAt(target))) target += dir;
|
5637 |
+
return target < 0 || target > line.text.length ? null : target;
|
5638 |
+
}
|
5639 |
+
|
5640 |
+
// Bidirectional ordering algorithm
|
5641 |
+
// See http://unicode.org/reports/tr9/tr9-13.html for the algorithm
|
5642 |
+
// that this (partially) implements.
|
5643 |
+
|
5644 |
+
// One-char codes used for character types:
|
5645 |
+
// L (L): Left-to-Right
|
5646 |
+
// R (R): Right-to-Left
|
5647 |
+
// r (AL): Right-to-Left Arabic
|
5648 |
+
// 1 (EN): European Number
|
5649 |
+
// + (ES): European Number Separator
|
5650 |
+
// % (ET): European Number Terminator
|
5651 |
+
// n (AN): Arabic Number
|
5652 |
+
// , (CS): Common Number Separator
|
5653 |
+
// m (NSM): Non-Spacing Mark
|
5654 |
+
// b (BN): Boundary Neutral
|
5655 |
+
// s (B): Paragraph Separator
|
5656 |
+
// t (S): Segment Separator
|
5657 |
+
// w (WS): Whitespace
|
5658 |
+
// N (ON): Other Neutrals
|
5659 |
+
|
5660 |
+
// Returns null if characters are ordered as they appear
|
5661 |
+
// (left-to-right), or an array of sections ({from, to, level}
|
5662 |
+
// objects) in the order in which they occur visually.
|
5663 |
+
var bidiOrdering = (function() {
|
5664 |
+
// Character types for codepoints 0 to 0xff
|
5665 |
+
var lowTypes = "bbbbbbbbbtstwsbbbbbbbbbbbbbbssstwNN%%%NNNNNN,N,N1111111111NNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNNNLLLLLLLLLLLLLLLLLLLLLLLLLLNNNNbbbbbbsbbbbbbbbbbbbbbbbbbbbbbbbbb,N%%%%NNNNLNNNNN%%11NLNNN1LNNNNNLLLLLLLLLLLLLLLLLLLLLLLNLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLLNLLLLLLLL";
|
5666 |
+
// Character types for codepoints 0x600 to 0x6ff
|
5667 |
+
var arabicTypes = "rrrrrrrrrrrr,rNNmmmmmmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmmmmmmmmrrrrrrrnnnnnnnnnn%nnrrrmrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrmmmmmmmmmmmmmmmmmmmNmmmmrrrrrrrrrrrrrrrrrr";
|
5668 |
+
function charType(code) {
|
5669 |
+
if (code <= 0xff) return lowTypes.charAt(code);
|
5670 |
+
else if (0x590 <= code && code <= 0x5f4) return "R";
|
5671 |
+
else if (0x600 <= code && code <= 0x6ff) return arabicTypes.charAt(code - 0x600);
|
5672 |
+
else if (0x700 <= code && code <= 0x8ac) return "r";
|
5673 |
+
else return "L";
|
5674 |
+
}
|
5675 |
+
|
5676 |
+
var bidiRE = /[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac]/;
|
5677 |
+
var isNeutral = /[stwN]/, isStrong = /[LRr]/, countsAsLeft = /[Lb1n]/, countsAsNum = /[1n]/;
|
5678 |
+
// Browsers seem to always treat the boundaries of block elements as being L.
|
5679 |
+
var outerType = "L";
|
5680 |
+
|
5681 |
+
return function(str) {
|
5682 |
+
if (!bidiRE.test(str)) return false;
|
5683 |
+
var len = str.length, types = [];
|
5684 |
+
for (var i = 0, type; i < len; ++i)
|
5685 |
+
types.push(type = charType(str.charCodeAt(i)));
|
5686 |
+
|
5687 |
+
// W1. Examine each non-spacing mark (NSM) in the level run, and
|
5688 |
+
// change the type of the NSM to the type of the previous
|
5689 |
+
// character. If the NSM is at the start of the level run, it will
|
5690 |
+
// get the type of sor.
|
5691 |
+
for (var i = 0, prev = outerType; i < len; ++i) {
|
5692 |
+
var type = types[i];
|
5693 |
+
if (type == "m") types[i] = prev;
|
5694 |
+
else prev = type;
|
5695 |
+
}
|
5696 |
+
|
5697 |
+
// W2. Search backwards from each instance of a European number
|
5698 |
+
// until the first strong type (R, L, AL, or sor) is found. If an
|
5699 |
+
// AL is found, change the type of the European number to Arabic
|
5700 |
+
// number.
|
5701 |
+
// W3. Change all ALs to R.
|
5702 |
+
for (var i = 0, cur = outerType; i < len; ++i) {
|
5703 |
+
var type = types[i];
|
5704 |
+
if (type == "1" && cur == "r") types[i] = "n";
|
5705 |
+
else if (isStrong.test(type)) { cur = type; if (type == "r") types[i] = "R"; }
|
5706 |
+
}
|
5707 |
+
|
5708 |
+
// W4. A single European separator between two European numbers
|
5709 |
+
// changes to a European number. A single common separator between
|
5710 |
+
// two numbers of the same type changes to that type.
|
5711 |
+
for (var i = 1, prev = types[0]; i < len - 1; ++i) {
|
5712 |
+
var type = types[i];
|
5713 |
+
if (type == "+" && prev == "1" && types[i+1] == "1") types[i] = "1";
|
5714 |
+
else if (type == "," && prev == types[i+1] &&
|
5715 |
+
(prev == "1" || prev == "n")) types[i] = prev;
|
5716 |
+
prev = type;
|
5717 |
+
}
|
5718 |
+
|
5719 |
+
// W5. A sequence of European terminators adjacent to European
|
5720 |
+
// numbers changes to all European numbers.
|
5721 |
+
// W6. Otherwise, separators and terminators change to Other
|
5722 |
+
// Neutral.
|
5723 |
+
for (var i = 0; i < len; ++i) {
|
5724 |
+
var type = types[i];
|
5725 |
+
if (type == ",") types[i] = "N";
|
5726 |
+
else if (type == "%") {
|
5727 |
+
for (var end = i + 1; end < len && types[end] == "%"; ++end) {}
|
5728 |
+
var replace = (i && types[i-1] == "!") || (end < len - 1 && types[end] == "1") ? "1" : "N";
|
5729 |
+
for (var j = i; j < end; ++j) types[j] = replace;
|
5730 |
+
i = end - 1;
|
5731 |
+
}
|
5732 |
+
}
|
5733 |
+
|
5734 |
+
// W7. Search backwards from each instance of a European number
|
5735 |
+
// until the first strong type (R, L, or sor) is found. If an L is
|
5736 |
+
// found, then change the type of the European number to L.
|
5737 |
+
for (var i = 0, cur = outerType; i < len; ++i) {
|
5738 |
+
var type = types[i];
|
5739 |
+
if (cur == "L" && type == "1") types[i] = "L";
|
5740 |
+
else if (isStrong.test(type)) cur = type;
|
5741 |
+
}
|
5742 |
+
|
5743 |
+
// N1. A sequence of neutrals takes the direction of the
|
5744 |
+
// surrounding strong text if the text on both sides has the same
|
5745 |
+
// direction. European and Arabic numbers act as if they were R in
|
5746 |
+
// terms of their influence on neutrals. Start-of-level-run (sor)
|
5747 |
+
// and end-of-level-run (eor) are used at level run boundaries.
|
5748 |
+
// N2. Any remaining neutrals take the embedding direction.
|
5749 |
+
for (var i = 0; i < len; ++i) {
|
5750 |
+
if (isNeutral.test(types[i])) {
|
5751 |
+
for (var end = i + 1; end < len && isNeutral.test(types[end]); ++end) {}
|
5752 |
+
var before = (i ? types[i-1] : outerType) == "L";
|
5753 |
+
var after = (end < len - 1 ? types[end] : outerType) == "L";
|
5754 |
+
var replace = before || after ? "L" : "R";
|
5755 |
+
for (var j = i; j < end; ++j) types[j] = replace;
|
5756 |
+
i = end - 1;
|
5757 |
+
}
|
5758 |
+
}
|
5759 |
+
|
5760 |
+
// Here we depa
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|