PluginProbe ʕ •ᴥ•ʔ
ElementsKit Elementor Addons – Advanced Widgets & Templates Addons for Elementor / 3.9.9
ElementsKit Elementor Addons – Advanced Widgets & Templates Addons for Elementor v3.9.9
3.10.02 3.10.01 3.9.10 3.9.9 3.9.8 3.9.7 3.9.5 3.9.6 3.9.3 2.1.0 2.1.1 2.1.2 2.1.3 2.1.4 2.1.5 2.1.6 2.1.7 2.2.0 2.2.1 2.2.2 2.2.3 2.2.4 2.3.0 2.3.1 2.3.1.1 2.3.2 2.3.3 2.3.4 2.3.5 2.3.6 2.3.7 2.4.0 2.5.0 2.5.1 2.5.10 2.5.2 2.5.3 2.5.4 2.5.5 2.5.6 2.5.7 2.5.8 2.5.9 2.6.0 2.6.1 2.6.2 2.6.3 2.7.0 2.7.2 2.7.3 2.7.4 2.7.5 2.8.0 2.8.1 2.8.5 2.8.6 2.8.7 2.8.8 2.9.0 2.9.1 2.9.2 3.0.0 3.0.1 3.0.2 3.0.3 3.0.4 3.0.5 3.0.6 3.0.7 3.1.0 3.1.1 3.1.2 3.1.3 3.1.4 3.2.0 3.2.1 3.2.2 3.2.3 3.2.4 3.2.5 3.2.6 3.2.7 3.2.8 3.2.9 3.3.0 3.3.1 3.3.2 3.3.3 3.3.4 3.3.5 3.3.6 3.3.7 3.3.8 3.3.9 3.4.0 3.4.1 3.4.2 3.4.3 3.4.4 3.4.5 3.4.6 3.4.7 3.4.8 3.4.9 3.5.0 3.5.1 3.5.2 3.5.3 3.5.4 3.5.5 3.5.6 3.6.0 3.6.1 3.7.0 3.7.1 3.7.2 3.7.3 3.7.4 3.7.5 3.7.6 3.7.7 3.7.8 3.7.9 3.8.0 3.8.1 3.8.2 3.9.0 3.9.1 3.9.2 trunk 1.2.6 1.2.7 1.2.9 1.3.1 1.3.2 1.3.3 1.3.4 1.3.5 1.3.8 1.3.9 1.4.0 1.4.1 1.4.2 1.4.3 1.4.4 1.4.5 1.4.7 1.4.8 1.4.9 1.5.0 1.5.1 1.5.10 1.5.11 1.5.12 1.5.2 1.5.4 1.5.5 1.5.6 1.5.7 1.5.8 1.5.9 2.0.0 2.0.1 2.0.10 2.0.11 2.0.12 2.0.13 2.0.2 2.0.3 2.0.4 2.0.5 2.0.6 2.0.7 2.0.8 2.0.9 2.0.9.1 2.0.9.2 2.0.9.3
elementskit-lite / widgets / tab / tab.php
elementskit-lite / widgets / tab Last commit date
assets 3 years ago tab-handler.php 3 years ago tab.php 4 weeks ago
tab.php
2182 lines
1 <?php
2 namespace Elementor;
3
4 use \Elementor\ElementsKit_Widget_Tab_Handler as Handler;
5 use \ElementsKit_Lite\Modules\Controls\Controls_Manager as ElementsKit_Controls_Manager;
6
7 if (! defined( 'ABSPATH' ) ) exit;
8
9 class ElementsKit_Widget_Tab extends Widget_Base {
10 use \ElementsKit_Lite\Widgets\Widget_Notice;
11
12 public $base;
13
14 public function get_script_depends() {
15 return ['ekit-tab'];
16 }
17
18 public function get_name() {
19 return Handler::get_name();
20 }
21
22 public function get_title() {
23 return Handler::get_title();
24 }
25
26 public function get_icon() {
27 return Handler::get_icon();
28 }
29
30 public function get_categories() {
31 return Handler::get_categories();
32 }
33
34 public function get_keywords() {
35 return Handler::get_keywords();
36 }
37
38 public function get_help_url() {
39 return 'https://wpmet.com/doc/tab/';
40 }
41 protected function is_dynamic_content(): bool {
42 return false;
43 }
44 protected function register_controls() {
45 $this->start_controls_section(
46 'section_tab', [
47 'label' =>esc_html__( 'Tab', 'elementskit-lite' ),
48 ]
49 );
50 $this->add_control(
51 'ekit_tab_style',
52 [
53 'label' =>esc_html__( 'Style', 'elementskit-lite' ),
54 'type' => Controls_Manager::SELECT,
55 'default' => 'horizontal',
56 'options' => [
57 'horizontal' =>esc_html__( 'Horizontal', 'elementskit-lite' ),
58 'vertical' =>esc_html__( 'Vertical', 'elementskit-lite' ),
59 ],
60 ]
61 );
62
63 $this->add_responsive_control(
64 'ekit_tab_nav_width',
65 [
66 'label' => esc_html__( 'Vertical Nav Width', 'elementskit-lite' ),
67 'type' => Controls_Manager::SLIDER,
68 'size_units' => [ '%', '' ],
69 'default' => [
70 'size' => 30,
71 'unit' => '%',
72 ],
73 'range' => [
74 '%' => [
75 'min' => 0,
76 'max' => 100,
77 ],
78 ],
79 'selectors' => [
80 '{{WRAPPER}} .elementkit-tab-wraper.vertical .elementkit-tab-nav' => 'flex-basis: {{SIZE}}{{UNIT}};',
81 ],
82 'condition' => [
83 'ekit_tab_style' => 'vertical',
84 ],
85 ]
86 );
87
88 $this->add_control(
89 'ekit_tab_caret_style_choose',
90 [
91 'label' => esc_html__( 'Show Caret', 'elementskit-lite' ),
92 'type' => Controls_Manager::SWITCHER,
93 'label_on' => esc_html__( 'Show', 'elementskit-lite' ),
94 'label_off' => esc_html__( 'Hide', 'elementskit-lite' ),
95 'return_value' => 'yes',
96 'default' => 'no',
97 ]
98 );
99
100 $this->add_control(
101 'ekit_tab_caret_style',
102 [
103 'label' => esc_html__('Choose Style', 'elementskit-lite'),
104 'type' => ElementsKit_Controls_Manager::IMAGECHOOSE,
105 'default' => 'elementskit_tab_border_bottm',
106 'options' => [
107 'elementskit_tab_border_bottm' => [
108 'title' => esc_html__( 'image style 1', 'elementskit-lite' ),
109 'imagelarge' => Handler::get_url() . 'assets/imagechoose/tab-01.png',
110 'imagesmall' => Handler::get_url() . 'assets/imagechoose/tab-01.png',
111 'width' => '33.333333333333333%',
112 ],
113 'elementskit_tooltip_style' => [
114 'title' => esc_html__( 'image style 2', 'elementskit-lite' ),
115 'imagelarge' => Handler::get_url() . 'assets/imagechoose/tab-02.png',
116 'imagesmall' => Handler::get_url() . 'assets/imagechoose/tab-02.png',
117 'width' => '33.333333333333333%',
118 ],
119 'elementskit_heartbit_style' => [
120 'title' => esc_html__( 'image style 3', 'elementskit-lite' ),
121 'imagelarge' => Handler::get_url() . 'assets/imagechoose/tab-03.png',
122 'imagesmall' => Handler::get_url() . 'assets/imagechoose/tab-03.png',
123 'width' => '33.333333333333333%',
124 ],
125 'elementskit_pregress_style' => [
126 'title' => esc_html__( 'image style 4', 'elementskit-lite' ),
127 'imagelarge' => Handler::get_url() . 'assets/imagechoose/tab-04.png',
128 'imagesmall' => Handler::get_url() . 'assets/imagechoose/tab-04.png',
129 'width' => '33.333333333333333%',
130 ],
131 'elementskit_ribbon_style' => [
132 'title' => esc_html__( 'image style 5', 'elementskit-lite' ),
133 'imagelarge' => Handler::get_url() . 'assets/imagechoose/tab-05.png',
134 'imagesmall' => Handler::get_url() . 'assets/imagechoose/tab-05.png',
135 'width' => '33.333333333333333%',
136 ],
137 ],
138 'condition' => [
139 'ekit_tab_caret_style_choose' => 'yes'
140 ]
141 ]
142 );
143
144 $this->add_control(
145 'ekit_tab_fill_full_width',
146 [
147 'label' => esc_html__( 'Full Width Nav', 'elementskit-lite' ),
148 'type' => Controls_Manager::SWITCHER,
149 'label_on' => esc_html__( 'Show', 'elementskit-lite' ),
150 'label_off' => esc_html__( 'Hide', 'elementskit-lite' ),
151 'return_value' => 'yes',
152 'default' => 'no',
153 'condition' => [
154 'ekit_tab_style' => 'horizontal'
155 ]
156 ]
157 );
158
159 $this->add_control(
160 'ekit_tab_header_icon_pos_style',
161 [
162 'label' => esc_html__( 'Nav Icon Position', 'elementskit-lite' ),
163 'type' => Controls_Manager::SELECT,
164 'default' => 'left-pos',
165 'options' => [
166 'right-pos' => esc_html__( 'Right', 'elementskit-lite' ),
167 'left-pos' => esc_html__( 'Left', 'elementskit-lite' ),
168 'top-pos' => esc_html__( 'Top', 'elementskit-lite' ),
169 'bottom-pos' => esc_html__( 'Bottom', 'elementskit-lite' ),
170 ],
171 ]
172 );
173 $this->add_responsive_control(
174 'ekit_tab_icon_margin_left',
175 [
176 'label' => esc_html__( 'Icon Spacing', 'elementskit-lite' ),
177 'type' => Controls_Manager::SLIDER,
178 'size_units' => ['px', '%'],
179 'default' => [
180 'size' => 10,
181 'unit' => 'px',
182 ],
183 'range' => [
184 '%' => [
185 'min' => 0,
186 'max' => 100,
187 ],
188 ],
189 'selectors' => [
190 '{{WRAPPER}} .elementkit-tab-wraper .elementkit-nav-link.right-pos .elementskit-tab-icon' => 'margin-left: {{SIZE}}{{UNIT}};',
191 '{{WRAPPER}} .elementkit-tab-wraper .elementkit-nav-link.right-pos .ekit-icon-image' => 'margin-left: {{SIZE}}{{UNIT}};',
192 ],
193 'condition' => [
194 'ekit_tab_header_icon_pos_style' => 'right-pos',
195 ],
196 ]
197 );
198 $this->add_responsive_control(
199 'ekit_tab_icon_margin_right',
200 [
201 'label' => esc_html__( 'Icon Spacing', 'elementskit-lite' ),
202 'type' => Controls_Manager::SLIDER,
203 'size_units' => ['px', '%'],
204 'default' => [
205 'size' => 10,
206 'unit' => 'px',
207 ],
208 'range' => [
209 '%' => [
210 'min' => 0,
211 'max' => 100,
212 ],
213 ],
214 'selectors' => [
215 '{{WRAPPER}} .elementkit-tab-wraper .elementkit-nav-link.left-pos .elementskit-tab-icon' => 'margin-right: {{SIZE}}{{UNIT}};',
216 '{{WRAPPER}} .elementkit-tab-wraper .elementkit-nav-link.left-pos .ekit-icon-image' => 'margin-right: {{SIZE}}{{UNIT}};',
217 ],
218 'condition' => [
219 'ekit_tab_header_icon_pos_style' => 'left-pos',
220 ],
221 ]
222 );
223 $this->add_responsive_control(
224 'ekit_tab_icon_margin_top',
225 [
226 'label' => esc_html__( 'Icon Spacing', 'elementskit-lite' ),
227 'type' => Controls_Manager::SLIDER,
228 'size_units' => ['px', '%'],
229 'default' => [
230 'size' => 0,
231 'unit' => '%',
232 ],
233 'range' => [
234 '%' => [
235 'min' => 0,
236 'max' => 100,
237 ],
238 ],
239 'selectors' => [
240 '{{WRAPPER}} .elementkit-tab-wraper .elementkit-nav-link.bottom-pos .elementskit-tab-icon' => 'margin-top: {{SIZE}}{{UNIT}};',
241 '{{WRAPPER}} .elementkit-tab-wraper .elementkit-nav-link.bottom-pos .ekit-icon-image' => 'margin-top: {{SIZE}}{{UNIT}};',
242 ],
243 'condition' => [
244 'ekit_tab_header_icon_pos_style' => 'bottom-pos',
245 ],
246 ]
247 );
248 $this->add_responsive_control(
249 'ekit_tab_icon_margin_bottom',
250 [
251 'label' => esc_html__( 'Icon Spacing', 'elementskit-lite' ),
252 'type' => Controls_Manager::SLIDER,
253 'size_units' => ['px', '%'],
254 'default' => [
255 'size' => 0,
256 'unit' => '%',
257 ],
258 'range' => [
259 '%' => [
260 'min' => 0,
261 'max' => 100,
262 ],
263 ],
264 'selectors' => [
265 '{{WRAPPER}} .elementkit-tab-wraper .elementkit-nav-link.top-pos .elementskit-tab-icon' => 'margin-bottom: {{SIZE}}{{UNIT}};',
266 '{{WRAPPER}} .elementkit-tab-wraper .elementkit-nav-link.top-pos .ekit-icon-image' => 'margin-bottom: {{SIZE}}{{UNIT}};',
267 ],
268 'condition' => [
269 'ekit_tab_header_icon_pos_style' => 'top-pos',
270 ],
271 ]
272 );
273
274 $this->add_responsive_control(
275 'ekit_tab_header_wraper_position',
276 [
277 'label' =>esc_html__( 'Nav Alignment', 'elementskit-lite' ),
278 'type' => Controls_Manager::CHOOSE,
279 'options' => [
280 'left' => [
281 'title' =>esc_html__( 'Left', 'elementskit-lite' ),
282 'icon' => 'eicon-text-align-left',
283 ],
284 'center' => [
285 'title' =>esc_html__( 'Center', 'elementskit-lite' ),
286 'icon' => 'eicon-text-align-center',
287 ],
288 'right' => [
289 'title' =>esc_html__( 'Right', 'elementskit-lite' ),
290 'icon' => 'eicon-text-align-right',
291 ],
292 ],
293 'selectors' => [
294 '{{WRAPPER}} .elementkit-tab-wraper.elementskit-fitcontent-tab:not(.vertical)' => 'text-align: {{VALUE}};'
295 ],
296 'default' => 'left',
297 'condition' => [
298 'ekit_tab_style' => 'horizontal',
299 'ekit_tab_fill_full_width!' => 'yes'
300 ]
301 ]
302 );
303
304 $this->add_responsive_control(
305 'ekit_tab_header_content_position',
306 [
307 'label' =>esc_html__( 'Nav Item Alignment', 'elementskit-lite' ),
308 'type' => Controls_Manager::CHOOSE,
309 'options' => [
310 'flex-start' => [
311 'title' =>esc_html__( 'Left', 'elementskit-lite' ),
312 'icon' => 'eicon-text-align-left',
313 ],
314 'center' => [
315 'title' =>esc_html__( 'Center', 'elementskit-lite' ),
316 'icon' => 'eicon-text-align-center',
317 ],
318 'flex-end' => [
319 'title' =>esc_html__( 'Right', 'elementskit-lite' ),
320 'icon' => 'eicon-text-align-right',
321 ],
322 ],
323 'selectors' => [
324 '{{WRAPPER}} .elementkit-tab-wraper .elementkit-nav-link' => 'justify-content: {{VALUE}};'
325 ],
326 'default' => 'center',
327 ]
328 );
329
330 $this->add_control(
331 'ekit_hash_change',
332 [
333 'label' => esc_html__( 'Enable URL Hash', 'elementskit-lite' ),
334 'type' => Controls_Manager::SWITCHER,
335 'return_value' => '1',
336 'frontend_available' => true,
337 ]
338 );
339
340 $this->add_control(
341 'ekit_tab_trigger_type',
342 [
343 'label' => esc_html__( 'Toggle Type', 'elementskit-lite' ),
344 'type' => Controls_Manager::SELECT,
345 'default' => 'click',
346 'options' => [
347 'click' => esc_html__( 'Click', 'elementskit-lite' ),
348 'mouseenter' => esc_html__( 'Hover', 'elementskit-lite' ),
349 ],
350
351 ]
352 );
353
354 $repeater = new Repeater();
355 $repeater->add_control(
356 'ekit_tab_title', [
357 'label' => esc_html__('Title', 'elementskit-lite'),
358 'type' => Controls_Manager::TEXT,
359 'dynamic' => [
360 'active' => true,
361 ],
362 'label_block' => true,
363 ]
364 );
365
366 $repeater->add_control(
367 'ekit_tab_title_is_active',
368 [
369 'label' => esc_html__('Keep this tab open? ', 'elementskit-lite'),
370 'type' => Controls_Manager::SWITCHER,
371 'default' => 'no',
372 'label_on' =>esc_html__( 'Yes', 'elementskit-lite' ),
373 'label_off' =>esc_html__( 'No', 'elementskit-lite' ),
374 ]
375 );
376
377 $repeater->add_control(
378 'ekit_tab_title_icon_type', [
379 'label' => esc_html__( 'Icon Type', 'elementskit-lite' ),
380 'type' => Controls_Manager::CHOOSE,
381 'label_block' => false,
382 'options' => [
383 'none' => [
384 'title' => esc_html__( 'None', 'elementskit-lite' ),
385 'icon' => 'fa fa-ban',
386 ],
387 'icon' => [
388 'title' => esc_html__( 'Icon', 'elementskit-lite' ),
389 'icon' => 'fa fa-paint-brush',
390 ],
391 'image' => [
392 'title' => esc_html__( 'Image', 'elementskit-lite' ),
393 'icon' => 'fa fa-image',
394 ],
395 ],
396 'default' => 'icon',
397 ]
398 );
399 $repeater->add_control(
400 'ekit_tab_title_icons', [
401 'label' => esc_html__('Title Icon', 'elementskit-lite'),
402 'type' => Controls_Manager::ICONS,
403 'label_block' => true,
404 'fa4compatibility' => 'ekit_tab_title_icon',
405 'default' => [
406 'value' => 'icon icon-earth',
407 'library' => 'ekiticons',
408 ],
409 'condition' => [
410 'ekit_tab_title_icon_type' => 'icon'
411 ]
412 ]
413 );
414
415 $repeater->add_control(
416 'ekit_tab_title_image',
417 [
418 'label' => esc_html__( 'Choose Image', 'elementskit-lite' ),
419 'type' => Controls_Manager::MEDIA,
420 'dynamic' => [
421 'active' => true,
422 ],
423 'default' => [
424 'url' => Utils::get_placeholder_image_src(),
425 'id' => -1
426 ],
427 'condition' => [
428 'ekit_tab_title_icon_type' => 'image'
429 ],
430 ]
431 );
432 $repeater->add_control(
433 'ekit_tab_content', [
434 'label' => esc_html__('Content', 'elementskit-lite'),
435 'type' => Controls_Manager::WYSIWYG,
436 'dynamic' => [
437 'active' => true,
438 ],
439 'label_block' => true,
440 ]
441 );
442 $repeater->add_control(
443 'ekit_tab_hr1',
444 [
445 'type' => Controls_Manager::DIVIDER,
446 'style' => 'thick',
447 ]
448 );
449 $repeater->add_responsive_control(
450 'ekit_tab_title_border_radius_group',
451 [
452 'label' => esc_html__( 'Title Border Radius', 'elementskit-lite' ),
453 'type' => Controls_Manager::DIMENSIONS,
454 'size_units' => [ 'px', '%' ],
455 'selectors' => [
456 '{{WRAPPER}} .elementkit-tab-nav {{CURRENT_ITEM}} .elementkit-nav-link' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
457 ],
458 ]
459 );
460 $this->add_control(
461 'ekit_tab_items',
462 [
463 'label' => esc_html__('Tab content', 'elementskit-lite'),
464 'type' => Controls_Manager::REPEATER,
465 'separator' => 'before',
466 'title_field' => '{{ ekit_tab_title }}',
467 'default' => [
468 [
469 'ekit_tab_title' => ' WordPress',
470 'ekit_tab_content' => 'Far far away, behind the word mountains, far from the countries Vokalia and Consonantia, there live the blind texts. Separated they live in Bookmarksgrove right at the coast',
471 ],
472 [
473 'ekit_tab_title' => ' Prestashop',
474 'ekit_tab_content' => 'Far far away, behind the word mountains, far from the countries Vokalia and Consonantia, there live the blind texts. Separated they live in Bookmarksgrove right at the coast',
475 ],
476 [
477 'ekit_tab_title' => ' Joomla!',
478 'ekit_tab_content' => 'Far far away, behind the word mountains, far from the countries Vokalia and Consonantia, there live the blind texts. Separated they live in Bookmarksgrove right at the coast',
479 ],
480 ],
481 'fields' => $repeater->get_controls(),
482 ]
483 );
484 //tab schema
485 $this->add_control(
486 'ekit_tab_schema',
487 [
488 'label' => esc_html__( 'TAB Schema', 'elementskit-lite' ),
489 'type' => Controls_Manager::SWITCHER,
490 'separator' => 'before',
491 ]
492 );
493 $this->end_controls_section();
494
495 // Wrapper Control
496
497 $this->start_controls_section(
498 'ekit_tab_section_wrapper_style', [
499 'label' =>esc_html__( 'Wrapper', 'elementskit-lite' ),
500 'tab' => Controls_Manager::TAB_STYLE,
501 ]
502 );
503 $this->add_responsive_control(
504 'ekit_tab_wrapper_padding',
505 [
506 'label' => esc_html__( 'Padding', 'elementskit-lite' ),
507 'type' => Controls_Manager::DIMENSIONS,
508 'size_units' => [ 'px', '%' ],
509 'selectors' => [
510 '{{WRAPPER}} .elementkit-tab-wraper' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
511 ],
512 ]
513 );
514 $this->add_group_control(
515 Group_Control_Background::get_type(),
516 array(
517 'name' => 'ekit_tab_wrapper_bg_group',
518 'selector' => '{{WRAPPER}} .elementkit-tab-wraper',
519 )
520 );
521 $this->add_group_control(
522 Group_Control_Border::get_type(),
523 [
524 'name' => 'ekit_tab_wrapper_border_group',
525 'label' => esc_html__( 'Border', 'elementskit-lite' ),
526 'selector' => '{{WRAPPER}} .elementkit-tab-wraper',
527 ]
528 );
529 $this->add_responsive_control(
530 'ekit_tab_wrapper_border_radius',
531 [
532 'label' => esc_html__( 'Border Radius', 'elementskit-lite' ),
533 'type' => Controls_Manager::DIMENSIONS,
534 'size_units' => [ 'px', '%' ],
535 'selectors' => [
536 '{{WRAPPER}} .elementkit-tab-wraper' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
537 ],
538 ]
539 );
540 $this->add_group_control(
541 Group_Control_Box_Shadow::get_type(),
542 [
543 'name' => 'ekit_tab_wrapper_box_shadow_group',
544 'label' => esc_html__( 'Box Shadow', 'elementskit-lite' ),
545 'selector' => '{{WRAPPER}} .elementkit-tab-wraper',
546 ]
547 );
548
549 $this->end_controls_section();
550
551 // Header setting
552 $this->start_controls_section(
553 'ekit_tab_header_section_setting', [
554 'label' =>esc_html__( 'Nav Wrapper ', 'elementskit-lite' ),
555 'tab' => Controls_Manager::TAB_STYLE,
556 ]
557 );
558
559 $this->add_control(
560 'ekit_tab_nav_wrapper_width',
561 [
562 'label' => esc_html__( 'Make Fluid', 'elementskit-lite' ),
563 'type' => Controls_Manager::SWITCHER,
564 'label_on' => esc_html__( 'Yes', 'elementskit-lite' ),
565 'label_off' => esc_html__( 'No', 'elementskit-lite' ),
566 'return_value' => 'yes',
567 'default' => '',
568 ]
569 );
570
571
572 $this->add_group_control(
573 Group_Control_Background::get_type(),
574 [
575 'name' => 'ekit_tab_nav_background_group',
576 'label' => esc_html__( 'Background', 'elementskit-lite' ),
577 'types' => [ 'classic', 'gradient' ],
578 'selector' => '{{WRAPPER}} .elementkit-tab-nav',
579 ]
580 );
581 $this->add_responsive_control(
582 'ekit_tab_nav_header_padding',
583 [
584 'label' => esc_html__( 'Padding', 'elementskit-lite' ),
585 'type' => Controls_Manager::DIMENSIONS,
586 'size_units' => [ 'px', '%' ],
587 'default' => [
588 'top' => '0',
589 'right' => '0',
590 'bottom' => '0',
591 'left' => '0',
592 'unit' => 'px',
593 'isLinked' => '',
594 ],
595 'selectors' => [
596 '{{WRAPPER}} .elementkit-tab-nav' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
597 ],
598 ]
599 );
600 $this->add_responsive_control(
601 'ekit_tab_nav_header_margin',
602 [
603 'label' => esc_html__( 'Margin', 'elementskit-lite' ),
604 'type' => Controls_Manager::DIMENSIONS,
605 'size_units' => [ 'px', '%' ],
606 'default' => [
607 'top' => '0',
608 'right' => '0',
609 'bottom' => '0',
610 'left' => '0',
611 'unit' => 'px',
612 'isLinked' => '',
613 ],
614 'selectors' => [
615 '{{WRAPPER}} .elementkit-tab-nav' => 'margin: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
616 ],
617 ]
618 );
619 $this->add_group_control(
620 Group_Control_Border::get_type(),
621 [
622 'name' => 'ekit_tab_nav_border_group',
623 'label' => esc_html__( 'Border', 'elementskit-lite' ),
624 'selector' => '{{WRAPPER}} .elementkit-tab-nav',
625
626 ]
627 );
628 $this->add_responsive_control(
629 'ekit_tab_nav_border_radius_group',
630 [
631 'label' => esc_html__( 'Border Radius', 'elementskit-lite' ),
632 'type' => Controls_Manager::DIMENSIONS,
633 'size_units' => [ 'px', '%' ],
634 'selectors' => [
635 '{{WRAPPER}} .elementkit-tab-nav' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
636 ],
637 ]
638 );
639 $this->add_group_control(
640 Group_Control_Box_Shadow::get_type(),
641 [
642 'name' => 'ekit_tab_nav_header_box_shadow_group',
643 'label' => esc_html__( 'Box Shadow', 'elementskit-lite' ),
644 'selector' => '{{WRAPPER}} .elementkit-tab-nav',
645 ]
646 );
647 $this->end_controls_section();
648
649 // Header Items
650 $this->start_controls_section(
651 'ekit_tab_nav_items_section_setting', [
652 'label' =>esc_html__( 'Nav Items ', 'elementskit-lite' ),
653 'tab' => Controls_Manager::TAB_STYLE,
654 ]
655 );
656 $this->add_group_control(
657 Group_Control_Typography::get_type(),
658 [
659 'name' => 'ekit_tab_header_title_typography_group',
660 'label' =>esc_html__( 'Typography', 'elementskit-lite' ),
661 'selector' => '{{WRAPPER}} .elementkit-tab-nav .elementkit-nav-item .elementkit-nav-link',
662 ]
663 );
664
665 $this->add_responsive_control(
666 'ekit_simple_tab_title_icon_size',
667 [
668 'label' => esc_html__( 'Icon Size', 'elementskit-lite' ),
669 'type' => Controls_Manager::SLIDER,
670 'size_units' => [ 'px', '%' ],
671 'range' => [
672 'px' => [
673 'min' => 1,
674 'max' => 100,
675 'step' => 5,
676 ],
677 '%' => [
678 'min' => 1,
679 'max' => 100,
680 ],
681 ],
682 'selectors' => [
683 '{{WRAPPER}} .elementkit-tab-wraper .elementkit-nav-link .elementskit-tab-icon' => 'font-size: {{SIZE}}{{UNIT}};',
684 '{{WRAPPER}} .elementkit-tab-wraper .elementkit-nav-link .elementskit-tab-icon svg' => 'max-width: {{SIZE}}{{UNIT}};',
685 ],
686 'separator' => 'before',
687 ]
688 );
689
690 $this->add_responsive_control(
691 'ekit_tab_header_spacing_right',
692 [
693 'label' => esc_html__( 'Margin Right', 'elementskit-lite' ),
694 'type' => Controls_Manager::SLIDER,
695 'default' => [
696 'size' => 10,
697 'unit' => 'px',
698 ],
699 'range' => [
700 'px' => [
701 'min' => 0,
702 'max' => 100,
703 ],
704 ],
705 'selectors' => [
706 '{{WRAPPER}} .elementkit-tab-wraper:not(.vertical) .elementkit-nav-item:not(:last-child)' => 'margin-right: {{SIZE}}{{UNIT}};',
707 '.rtl {{WRAPPER}} .elementkit-tab-wraper:not(.vertical) .elementkit-nav-item:not(:last-child)' => 'margin-left: {{SIZE}}{{UNIT}}; margin-right: 0;',
708 '{{WRAPPER}} .elementkit-tab-wraper.vertical .elementkit-tab-nav' => 'margin-right: {{SIZE}}{{UNIT}};',
709 ],
710 ]
711 );
712 $this->add_responsive_control(
713 'ekit_tab_header_spacing_bottom',
714 [
715 'label' => esc_html__( 'Margin Bottom', 'elementskit-lite' ),
716 'type' => Controls_Manager::SLIDER,
717 'default' => [
718 'size' => 10,
719 'unit' => 'px',
720 ],
721 'range' => [
722 'px' => [
723 'min' => 0,
724 'max' => 100,
725 ],
726 ],
727 'selectors' => [
728 '{{WRAPPER}} .elementkit-tab-wraper.vertical .elementkit-nav-item:not(:last-child)' => 'margin-bottom: {{SIZE}}{{UNIT}};',
729 '{{WRAPPER}} .elementkit-tab-wraper:not(.vertical) .elementkit-tab-nav' => 'margin-bottom: {{SIZE}}{{UNIT}};',
730 ],
731 ]
732 );
733 $this->add_responsive_control(
734 'ekit_tab_nav_padding',
735 [
736 'label' => esc_html__( 'Padding', 'elementskit-lite' ),
737 'type' => Controls_Manager::DIMENSIONS,
738 'size_units' => [ 'px', '%' ],
739 'default' => [
740 'top' => '14',
741 'right' => '35',
742 'bottom' => '14',
743 'left' => '35',
744 'unit' => 'px',
745 'isLinked' => '',
746 ],
747 'selectors' => [
748 '{{WRAPPER}} .elementkit-tab-nav .elementkit-nav-link' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
749 ],
750 ]
751 );
752 $this->start_controls_tabs(
753 'ekit_tab_header_style_tabs_normal'
754 );
755
756 $this->start_controls_tab(
757 'style_normal_tab',
758 [
759 'label' => esc_html__( 'Normal', 'elementskit-lite' ),
760 ]
761 );
762 $this->add_control(
763 'ekit_tab_title_color',
764 [
765 'label' =>esc_html__( 'Title Color', 'elementskit-lite' ),
766 'type' => Controls_Manager::COLOR,
767 'default' => '#2575fc',
768 'selectors' => [
769 '{{WRAPPER}} .elementkit-tab-nav .elementkit-nav-link' => 'color: {{VALUE}};',
770 '{{WRAPPER}} .elementskit-tab-icon :is(svg, i)' => 'fill: {{VALUE}}; color: {{VALUE}};',
771 ],
772 ]
773 );
774
775 $this->add_control(
776 'ekit_tab_icon_color',
777 [
778 'label' =>esc_html__( 'Icon Color', 'elementskit-lite' ),
779 'type' => Controls_Manager::COLOR,
780 'selectors' => [
781 '{{WRAPPER}} .elementkit-tab-nav .elementkit-nav-link span.elementskit-tab-icon' => 'color: {{VALUE}};',
782 '{{WRAPPER}} .elementkit-tab-nav .elementkit-nav-link .elementskit-tab-icon :is(i, svg)' => 'color: {{VALUE}}; fill: {{VALUE}};',
783 ],
784 ]
785 );
786
787 $this->add_group_control(
788 Group_Control_Background::get_type(),
789 [
790 'name' => 'ekit_tab_title_background_group',
791 'label' => esc_html__( 'Background', 'elementskit-lite' ),
792 'types' => [ 'classic', 'gradient' ],
793 'selector' => '{{WRAPPER}} .elementkit-tab-nav .elementkit-nav-link',
794 ]
795 );
796 $this->add_group_control(
797 Group_Control_Border::get_type(),
798 [
799 'name' => 'ekit_tab_title_border_group',
800 'label' => esc_html__( 'Border', 'elementskit-lite' ),
801 'selector' => '{{WRAPPER}} .elementkit-tab-nav .elementkit-nav-link',
802 'fields_options' => [
803 'border' => [
804 'default' => 'solid',
805 ],
806 'width' => [
807 'default' => [
808 'top' => '1',
809 'right' => '1',
810 'bottom' => '1',
811 'left' => '1',
812 'isLinked' => false,
813 ],
814 ],
815 'color' => [
816 'default' => '#2575fc',
817 ],
818 ],
819 ]
820 );
821 $this->add_group_control(
822 Group_Control_Box_Shadow::get_type(),
823 [
824 'name' => 'ekit_tab_tab_title_box_shadow_group',
825 'label' => esc_html__( 'Box Shadow', 'elementskit-lite' ),
826 'selector' => '{{WRAPPER}} .elementkit-tab-nav .elementkit-nav-item .elementkit-nav-link',
827 ]
828 );
829 $this->end_controls_tab();
830
831 $this->start_controls_tab(
832 'ekit_tab_header_style_tabs_active',
833 [
834 'label' => esc_html__( 'Active', 'elementskit-lite' ),
835 ]
836 );
837 $this->add_control(
838 'ekit_tab_active_title_color',
839 [
840 'label' =>esc_html__( 'Title Color', 'elementskit-lite' ),
841 'type' => Controls_Manager::COLOR,
842 'default' => '#000',
843 'selectors' => [
844 '{{WRAPPER}} .elementkit-tab-nav .elementkit-nav-link.active' => 'color: {{VALUE}};',
845 '{{WRAPPER}} .elementkit-nav-link.active .elementskit-tab-icon :is(svg, i)' => 'fill: {{VALUE}}; color: {{VALUE}};',
846 ],
847 ]
848 );
849 $this->add_control(
850 'ekit_tab_icon_color_active',
851 [
852 'label' =>esc_html__( 'Icon Color', 'elementskit-lite' ),
853 'type' => Controls_Manager::COLOR,
854 'selectors' => [
855 '{{WRAPPER}} .elementkit-tab-nav .elementkit-nav-link.active .elementskit-tab-icon :is(i, svg)' => 'color: {{VALUE}} !important; fill: {{VALUE}};',
856 ],
857 ]
858 );
859 $this->add_group_control(
860 Group_Control_Background::get_type(),
861 [
862 'name' => 'ekit_tab_title_active_background_group',
863 'label' => esc_html__( 'Background', 'elementskit-lite' ),
864 'types' => [ 'classic', 'gradient' ],
865 'selector' => '{{WRAPPER}} .elementkit-tab-nav .elementkit-nav-link.active',
866 ]
867 );
868 $this->add_group_control(
869 Group_Control_Border::get_type(),
870 [
871 'name' => 'ekit_tab_title_border_active_group',
872 'label' => esc_html__( 'Border', 'elementskit-lite' ),
873 'selector' => '{{WRAPPER}} .elementkit-tab-nav .elementkit-nav-link.active',
874 ]
875 );
876 $this->add_group_control(
877 Group_Control_Box_Shadow::get_type(),
878 [
879 'name' => 'ekit_tab_tab_title_box_shadow_active_group',
880 'label' => esc_html__( 'Box Shadow', 'elementskit-lite' ),
881 'selector' => '{{WRAPPER}} .elementkit-tab-nav .elementkit-nav-link.active',
882 ]
883 );
884 $this->end_controls_tab();
885 $this->end_controls_tabs();
886
887 $this->add_responsive_control(
888 'ekit_tab_nav_item_border_radious',
889 [
890 'label' => esc_html__( 'Border Radius', 'elementskit-lite' ),
891 'type' => Controls_Manager::DIMENSIONS,
892 'size_units' => [ 'px', '%' ],
893 'selectors' => [
894 '{{WRAPPER}} .elementkit-tab-nav .elementkit-nav-item a.elementkit-nav-link' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
895 ],
896 ]
897 );
898
899 // First Child design
900
901 $this->add_responsive_control(
902 'ekit_nav_item_first_child',
903 [
904 'label' => esc_html__( 'First and Last Child Border Radius', 'elementskit-lite' ),
905 'type' => Controls_Manager::HEADING,
906 'separator' => 'before',
907 ]
908 );
909
910 $this->add_responsive_control(
911 'ekit_tab_nav_item_first_child_border_radious',
912 [
913 'label' => esc_html__( 'First Child Border Radius', 'elementskit-lite' ),
914 'type' => Controls_Manager::DIMENSIONS,
915 'size_units' => [ 'px', '%' ],
916 'selectors' => [
917 '{{WRAPPER}} .elementkit-tab-nav .elementkit-nav-item:first-child a.elementkit-nav-link' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
918 ],
919 ]
920 );
921
922 $this->add_responsive_control(
923 'ekit_tab_nav_item_first_child_border',
924 [
925 'label' => esc_html__( 'First Child Border Width', 'elementskit-lite' ),
926 'type' => Controls_Manager::DIMENSIONS,
927 'size_units' => [ 'px'],
928 'selectors' => [
929 '{{WRAPPER}} .elementkit-tab-nav .elementkit-nav-item:first-child a.elementkit-nav-link' => 'border-width: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}} !important;',
930 ],
931 ]
932 );
933
934 $this->add_responsive_control(
935 'ekit_tab_nav_item_last_child_border_radious',
936 [
937 'label' => esc_html__( 'Last Child Border Radius', 'elementskit-lite' ),
938 'type' => Controls_Manager::DIMENSIONS,
939 'size_units' => [ 'px', '%' ],
940 'selectors' => [
941 '{{WRAPPER}} .elementkit-tab-nav .elementkit-nav-item:last-child a.elementkit-nav-link' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
942 ],
943 ]
944 );
945
946 $this->add_responsive_control(
947 'ekit_tab_nav_item_last_child_border',
948 [
949 'label' => esc_html__( 'Last Child Border Width', 'elementskit-lite' ),
950 'type' => Controls_Manager::DIMENSIONS,
951 'size_units' => [ 'px'],
952 'selectors' => [
953 '{{WRAPPER}} .elementkit-tab-nav .elementkit-nav-item:last-child a.elementkit-nav-link' => 'border-width: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}} !important;',
954 ],
955 ]
956 );
957
958
959 $this->end_controls_section();
960
961
962 // Caret setting
963 $this->start_controls_section(
964 'ekit_tab_header_caret_section_setting', [
965 'label' =>esc_html__( 'Caret ', 'elementskit-lite' ),
966 'tab' => Controls_Manager::TAB_STYLE,
967 'condition' => [
968 'ekit_tab_caret_style_choose' => 'yes'
969 ]
970 ]
971 );
972
973 // elementskit_tab_border_bottm
974 $this->add_responsive_control(
975 'ekit_tab_header_caret_tab_border_bottm_width',
976 [
977 'label' => esc_html__( 'Width', 'elementskit-lite' ),
978 'type' => Controls_Manager::SLIDER,
979 'size_units' => [ 'px', '%' ],
980 'range' => [
981 'px' => [
982 'min' => 0,
983 'max' => 1000,
984 'step' => 1,
985 ],
986 '%' => [
987 'min' => 0,
988 'max' => 100,
989 ],
990 ],
991 'default' => [
992 'unit' => '%',
993 'size' => 100,
994 ],
995 'selectors' => [
996 '{{WRAPPER}} .elementkit-tab-nav.elementskit_tab_border_bottm .elementkit-nav-item .elementkit-nav-link::before' => 'width: {{SIZE}}{{UNIT}};',
997 ],
998 'condition' => [
999 'ekit_tab_caret_style' => ['elementskit_tab_border_bottm',]
1000 ]
1001 ]
1002 );
1003
1004 $this->add_responsive_control(
1005 'ekit_tab_header_caret_tab_border_bottm_height',
1006 [
1007 'label' => esc_html__( 'Height', 'elementskit-lite' ),
1008 'type' => Controls_Manager::SLIDER,
1009 'size_units' => [ 'px', '%' ],
1010 'range' => [
1011 'px' => [
1012 'min' => 0,
1013 'max' => 1000,
1014 'step' => 1,
1015 ],
1016 '%' => [
1017 'min' => 0,
1018 'max' => 100,
1019 ],
1020 ],
1021 'default' => [
1022 'unit' => '%',
1023 'size' => 3,
1024 ],
1025 'selectors' => [
1026 '{{WRAPPER}} .elementkit-tab-nav.elementskit_tab_border_bottm .elementkit-nav-item .elementkit-nav-link::before' => 'height: {{SIZE}}{{UNIT}};',
1027 ],
1028 'condition' => [
1029 'ekit_tab_caret_style' => ['elementskit_tab_border_bottm']
1030 ]
1031 ]
1032 );
1033
1034 $this->add_group_control(
1035 Group_Control_Background::get_type(),
1036 [
1037 'name' => 'ekit_tab_header_caret_tab_border_bottm_background',
1038 'label' => esc_html__( 'Background', 'elementskit-lite' ),
1039 'types' => [ 'classic', 'gradient', 'video' ],
1040 'selector' => '{{WRAPPER}} .elementkit-tab-nav.elementskit_tab_border_bottm .elementkit-nav-item .elementkit-nav-link::before',
1041 'condition' => [
1042 'ekit_tab_caret_style' => ['elementskit_tab_border_bottm']
1043 ]
1044 ]
1045 );
1046
1047 $this->add_responsive_control(
1048 'ekit_tab_header_caret_tab_border_bottm_bottom',
1049 [
1050 'label' => esc_html__( 'Bottom Icon Position', 'elementskit-lite' ),
1051 'type' => Controls_Manager::SLIDER,
1052 'size_units' => [ 'px', '%' ],
1053 'range' => [
1054 'px' => [
1055 'min' => -100,
1056 'max' => 100,
1057 'step' => 1,
1058 ],
1059 '%' => [
1060 'min' => -100,
1061 'max' => 100,
1062 ],
1063 ],
1064 'default' => [
1065 'unit' => 'px',
1066 'size' => 0,
1067 ],
1068 'selectors' => [
1069 '{{WRAPPER}} .elementskit_tab_border_bottm.elementkit-tab-nav .elementkit-nav-item .elementkit-nav-link::before' => 'bottom: {{SIZE}}{{UNIT}};',
1070 ],
1071 'condition' => [
1072 'ekit_tab_caret_style' => ['elementskit_tab_border_bottm']
1073 ]
1074 ]
1075 );
1076
1077 $this->add_responsive_control(
1078 'ekit_tab_header_caret_tab_border_bottm_left',
1079 [
1080 'label' => esc_html__( 'Left', 'elementskit-lite' ),
1081 'type' => Controls_Manager::SLIDER,
1082 'size_units' => [ '%' ],
1083 'range' => [
1084 '%' => [
1085 'min' => -100,
1086 'max' => 100,
1087 ],
1088 ],
1089 'default' => [
1090 'unit' => '%',
1091 'size' => 0,
1092 ],
1093 'selectors' => [
1094 '{{WRAPPER}} .elementkit-tab-nav.elementskit_tab_border_bottm .elementkit-nav-item .elementkit-nav-link::before' => 'left: {{SIZE}}{{UNIT}};',
1095 ],
1096 'condition' => [
1097 'ekit_tab_caret_style' => ['elementskit_tab_border_bottm']
1098 ]
1099 ]
1100 );
1101
1102 // elementskit_tooltip_style
1103 $this->add_responsive_control(
1104 'ekit_tab_header_caret_tooltip_style_width',
1105 [
1106 'label' => esc_html__( 'Width', 'elementskit-lite' ),
1107 'type' => Controls_Manager::SLIDER,
1108 'size_units' => [ 'px' ],
1109 'range' => [
1110 'px' => [
1111 'min' => 0,
1112 'max' => 200,
1113 'step' => 1,
1114 ],
1115 ],
1116 'default' => [
1117 'unit' => 'px',
1118 'size' => 24,
1119 ],
1120 'selectors' => [
1121 '{{WRAPPER}} .elementskit_tooltip_style.elementkit-tab-nav .elementkit-nav-item .elementkit-nav-link::before' => 'width: {{SIZE}}{{UNIT}};',
1122 ],
1123 'condition' => [
1124 'ekit_tab_caret_style' => ['elementskit_tooltip_style',]
1125 ]
1126 ]
1127 );
1128
1129 $this->add_responsive_control(
1130 'ekit_tab_header_caret_tooltip_style_height',
1131 [
1132 'label' => esc_html__( 'Height', 'elementskit-lite' ),
1133 'type' => Controls_Manager::SLIDER,
1134 'size_units' => [ 'px' ],
1135 'range' => [
1136 'px' => [
1137 'min' => 0,
1138 'max' => 200,
1139 'step' => 1,
1140 ],
1141 ],
1142 'default' => [
1143 'unit' => 'px',
1144 'size' => 24,
1145 ],
1146 'selectors' => [
1147 '{{WRAPPER}} .elementskit_tooltip_style.elementkit-tab-nav .elementkit-nav-item .elementkit-nav-link::before' => 'height: {{SIZE}}{{UNIT}};',
1148 ],
1149 'condition' => [
1150 'ekit_tab_caret_style' => ['elementskit_tooltip_style']
1151 ]
1152 ]
1153 );
1154
1155 $this->add_group_control(
1156 Group_Control_Background::get_type(),
1157 [
1158 'name' => 'ekit_tab_header_caret_tooltip_style_background',
1159 'label' => esc_html__( 'Background', 'elementskit-lite' ),
1160 'types' => [ 'classic', 'gradient' ],
1161 'selector' => '{{WRAPPER}} .elementskit_tooltip_style.elementkit-tab-nav .elementkit-nav-item .elementkit-nav-link::before',
1162 'condition' => [
1163 'ekit_tab_caret_style' => ['elementskit_tooltip_style']
1164 ]
1165 ]
1166 );
1167
1168 $this->add_responsive_control(
1169 'ekit_tab_header_caret_tooltip_style_bottom',
1170 [
1171 'label' => esc_html__( 'Bottom', 'elementskit-lite' ),
1172 'type' => Controls_Manager::SLIDER,
1173 'size_units' => [ 'px', '%' ],
1174 'range' => [
1175 'px' => [
1176 'min' => -100,
1177 'max' => 100,
1178 'step' => 1,
1179 ],
1180 '%' => [
1181 'min' => -100,
1182 'max' => 100,
1183 ],
1184 ],
1185 'default' => [
1186 'unit' => 'px',
1187 'size' => -12,
1188 ],
1189 'selectors' => [
1190 '{{WRAPPER}} .elementskit_tooltip_style.elementkit-tab-nav .elementkit-nav-item .elementkit-nav-link::before' => 'bottom: {{SIZE}}{{UNIT}};',
1191 ],
1192 'condition' => [
1193 'ekit_tab_caret_style' => ['elementskit_tooltip_style']
1194 ]
1195 ]
1196 );
1197
1198 $this->add_responsive_control(
1199 'ekit_tab_header_caret_tooltip_style_left',
1200 [
1201 'label' => esc_html__( 'Left', 'elementskit-lite' ),
1202 'type' => Controls_Manager::SLIDER,
1203 'size_units' => [ '%' ],
1204 'range' => [
1205 '%' => [
1206 'min' => -100,
1207 'max' => 100,
1208 ],
1209 ],
1210 'default' => [
1211 'unit' => '%',
1212 'size' => 50,
1213 ],
1214 'selectors' => [
1215 '{{WRAPPER}} .elementkit-tab-nav.elementskit_tooltip_style .elementkit-nav-item .elementkit-nav-link::before' => 'left: {{SIZE}}{{UNIT}};',
1216 ],
1217 'condition' => [
1218 'ekit_tab_caret_style' => ['elementskit_tooltip_style']
1219 ]
1220 ]
1221 );
1222
1223 // elementskit_heartbit_style
1224 $this->add_responsive_control(
1225 'ekit_tab_header_caret_heartbit_style_width',
1226 [
1227 'label' => esc_html__( 'Width', 'elementskit-lite' ),
1228 'type' => Controls_Manager::SLIDER,
1229 'size_units' => [ 'px', '%' ],
1230 'range' => [
1231 'px' => [
1232 'min' => 0,
1233 'max' => 500,
1234 'step' => 1,
1235 ],
1236 '%' => [
1237 'min' => 0,
1238 'max' => 100,
1239 ],
1240 ],
1241 'default' => [
1242 'unit' => 'px',
1243 'size' => 70,
1244 ],
1245 'selectors' => [
1246 '{{WRAPPER}} .elementkit-tab-nav.elementskit_heartbit_style .elementkit-nav-item .elementkit-nav-link::before' => 'width: {{SIZE}}{{UNIT}};',
1247 ],
1248 'condition' => [
1249 'ekit_tab_caret_style' => ['elementskit_heartbit_style']
1250 ]
1251 ]
1252 );
1253
1254 $this->add_responsive_control(
1255 'ekit_tab_header_caret_heartbit_style_height',
1256 [
1257 'label' => esc_html__( 'Height', 'elementskit-lite' ),
1258 'type' => Controls_Manager::SLIDER,
1259 'size_units' => [ 'px', '%' ],
1260 'range' => [
1261 'px' => [
1262 'min' => 0,
1263 'max' => 200,
1264 'step' => 1,
1265 ],
1266 '%' => [
1267 'min' => 0,
1268 'max' => 100,
1269 ],
1270 ],
1271 'default' => [
1272 'unit' => 'px',
1273 'size' => 1,
1274 ],
1275 'selectors' => [
1276 '{{WRAPPER}} .elementkit-tab-nav.elementskit_heartbit_style .elementkit-nav-item .elementkit-nav-link::before' => 'height: {{SIZE}}{{UNIT}};',
1277 ],
1278 'condition' => [
1279 'ekit_tab_caret_style' => ['elementskit_heartbit_style']
1280 ]
1281 ]
1282 );
1283
1284 $this->add_responsive_control(
1285 'ekit_tab_header_caret_bottom_heartbit_style_line',
1286 [
1287 'label' => esc_html__( 'Bottom Line', 'elementskit-lite' ),
1288 'type' => Controls_Manager::SLIDER,
1289 'size_units' => [ 'px', '%' ],
1290 'range' => [
1291 '%' => [
1292 'min' => -100,
1293 'max' => 100,
1294 'step' => 1
1295 ],
1296 'px' => [
1297 'min' => -100,
1298 'max' => 100,
1299 'step' => 1
1300 ],
1301 ],
1302 'default' => [
1303 'unit' => 'px',
1304 'size' => -1,
1305 ],
1306 'selectors' => [
1307 '{{WRAPPER}} .elementkit-tab-nav.elementskit_heartbit_style .elementkit-nav-item .elementkit-nav-link::before' => 'bottom: {{SIZE}}{{UNIT}};',
1308 ],
1309 'condition' => [
1310 'ekit_tab_caret_style' => ['elementskit_heartbit_style']
1311 ]
1312 ]
1313 );
1314
1315 $this->add_group_control(
1316 Group_Control_Background::get_type(),
1317 [
1318 'name' => 'ekit_tab_header_caret_heartbit_style_background',
1319 'label' => esc_html__( 'Background', 'elementskit-lite' ),
1320 'types' => [ 'classic', 'gradient' ],
1321 'selector' => '{{WRAPPER}} .elementkit-tab-nav.elementskit_heartbit_style .elementkit-nav-item .elementkit-nav-link::before',
1322 'condition' => [
1323 'ekit_tab_caret_style' => ['elementskit_heartbit_style']
1324 ]
1325 ]
1326 );
1327
1328 $this->add_control(
1329 'ekit_tab_header_caret_heartbit_style_hr',
1330 [
1331 'type' => Controls_Manager::DIVIDER,
1332 'style' => 'thick',
1333 'condition' => [
1334 'ekit_tab_caret_style' => ['elementskit_heartbit_style']
1335 ]
1336 ]
1337 );
1338
1339 $this->add_group_control(
1340 Group_Control_Background::get_type(),
1341 [
1342 'name' => 'ekit_tab_header_caret_background_heartbit_style_heart_symbol',
1343 'label' => esc_html__( 'Hear Symbol Background', 'elementskit-lite' ),
1344 'types' => [ 'classic', 'gradient' ],
1345 'selector' => '{{WRAPPER}} .elementkit-tab-nav.elementskit_heartbit_style .elementkit-nav-item .elementkit-nav-link::after',
1346 'condition' => [
1347 'ekit_tab_caret_style' => ['elementskit_heartbit_style',]
1348 ]
1349 ]
1350 );
1351
1352 $this->add_group_control(
1353 Group_Control_Border::get_type(),
1354 [
1355 'name' => 'ekit_tab_header_caret_heartbit_style_border_heart_symbol',
1356 'label' => esc_html__( 'Border', 'elementskit-lite' ),
1357 'selector' => '{{WRAPPER}} .elementkit-tab-nav.elementskit_heartbit_style .elementkit-nav-item .elementkit-nav-link::after',
1358 'condition' => [
1359 'ekit_tab_caret_style' => ['elementskit_heartbit_style']
1360 ]
1361 ]
1362 );
1363
1364 $this->add_responsive_control(
1365 'ekit_tab_header_caret_heartbit_style_heartbeat_width',
1366 [
1367 'label' => esc_html__( 'Caret Width', 'elementskit-lite' ),
1368 'type' => Controls_Manager::SLIDER,
1369 'size_units' => [ 'px' ],
1370 'range' => [
1371 'px' => [
1372 'min' => 0,
1373 'max' => 200,
1374 'step' => 1,
1375 ],
1376 ],
1377 'default' => [
1378 'unit' => 'px',
1379 'size' => 10,
1380 ],
1381 'selectors' => [
1382 '{{WRAPPER}} .elementkit-tab-nav.elementskit_heartbit_style .elementkit-nav-item .elementkit-nav-link::after' => 'width: {{SIZE}}{{UNIT}};',
1383 ],
1384 'condition' => [
1385 'ekit_tab_caret_style' => ['elementskit_heartbit_style',]
1386 ]
1387 ]
1388 );
1389
1390 $this->add_responsive_control(
1391 'ekit_tab_header_caret_heartbit_style_heartbeat_height',
1392 [
1393 'label' => esc_html__( 'Caret Height', 'elementskit-lite' ),
1394 'type' => Controls_Manager::SLIDER,
1395 'size_units' => [ 'px' ],
1396 'range' => [
1397 'px' => [
1398 'min' => 0,
1399 'max' => 200,
1400 'step' => 1,
1401 ],
1402 ],
1403 'default' => [
1404 'unit' => 'px',
1405 'size' => 10,
1406 ],
1407 'selectors' => [
1408 '{{WRAPPER}} .elementkit-tab-nav.elementskit_heartbit_style .elementkit-nav-item .elementkit-nav-link::after' => 'height: {{SIZE}}{{UNIT}};',
1409 ],
1410 'condition' => [
1411 'ekit_tab_caret_style' => ['elementskit_heartbit_style',]
1412 ]
1413 ]
1414 );
1415
1416 $this->add_responsive_control(
1417 'ekit_tab_header_caret_heartbit_style_bottom',
1418 [
1419 'label' => esc_html__( 'Bottom Position', 'elementskit-lite' ),
1420 'type' => Controls_Manager::SLIDER,
1421 'size_units' => [ 'px', '%' ],
1422 'range' => [
1423 'px' => [
1424 'min' => -100,
1425 'max' => 100,
1426 'step' => 1,
1427 ],
1428 '%' => [
1429 'min' => -100,
1430 'max' => 100,
1431 ],
1432 ],
1433 'default' => [
1434 'unit' => 'px',
1435 'size' => -5,
1436 ],
1437 'selectors' => [
1438 '{{WRAPPER}} .elementkit-tab-nav.elementskit_heartbit_style .elementkit-nav-item .elementkit-nav-link::after' => 'bottom: {{SIZE}}{{UNIT}};',
1439 ],
1440 'condition' => [
1441 'ekit_tab_caret_style' => ['elementskit_heartbit_style',]
1442 ]
1443 ]
1444 );
1445
1446 $this->add_responsive_control(
1447 'ekit_tab_header_caret_heartbit_style_left',
1448 [
1449 'label' => esc_html__( 'Left Position', 'elementskit-lite' ),
1450 'type' => Controls_Manager::SLIDER,
1451 'size_units' => [ 'px', '%' ],
1452 'range' => [
1453 'px' => [
1454 'min' => -100,
1455 'max' => 100,
1456 'step' => 1,
1457 ],
1458 '%' => [
1459 'min' => -100,
1460 'max' => 100,
1461 ],
1462 ],
1463 'default' => [
1464 'unit' => '%',
1465 'size' => 50,
1466 ],
1467 'selectors' => [
1468 '{{WRAPPER}} .elementkit-tab-nav.elementskit_heartbit_style .elementkit-nav-item .elementkit-nav-link::after' => 'left: {{SIZE}}{{UNIT}};',
1469 ],
1470 'condition' => [
1471 'ekit_tab_caret_style' => ['elementskit_heartbit_style',]
1472 ]
1473 ]
1474 );
1475
1476 // elementskit_pregress_style
1477 $this->add_responsive_control(
1478 'ekit_tab_header_caret_pregress_style_line_width',
1479 [
1480 'label' => esc_html__( 'Width', 'elementskit-lite' ),
1481 'type' => Controls_Manager::SLIDER,
1482 'size_units' => [ 'px', '%' ],
1483 'range' => [
1484 'px' => [
1485 'min' => 0,
1486 'max' => 500,
1487 'step' => 1,
1488 ],
1489 '%' => [
1490 'min' => 0,
1491 'max' => 100,
1492 ],
1493 ],
1494 'default' => [
1495 'unit' => '%',
1496 'size' => 100,
1497 ],
1498 'selectors' => [
1499 '{{WRAPPER}} .elementkit-tab-nav.elementskit_pregress_style .elementkit-nav-item .elementkit-nav-link::before' => 'width: {{SIZE}}{{UNIT}};',
1500 ],
1501 'condition' => [
1502 'ekit_tab_caret_style' => ['elementskit_pregress_style']
1503 ]
1504 ]
1505 );
1506
1507 $this->add_responsive_control(
1508 'ekit_tab_header_caret_pregress_style_line_height',
1509 [
1510 'label' => esc_html__( 'Height', 'elementskit-lite' ),
1511 'type' => Controls_Manager::SLIDER,
1512 'size_units' => [ 'px', '%' ],
1513 'range' => [
1514 'px' => [
1515 'min' => 0,
1516 'max' => 500,
1517 'step' => 1,
1518 ],
1519 '%' => [
1520 'min' => 0,
1521 'max' => 100,
1522 ],
1523 ],
1524 'default' => [
1525 'unit' => 'px',
1526 'size' => 3,
1527 ],
1528 'selectors' => [
1529 '{{WRAPPER}} .elementskit_pregress_style.elementkit-tab-nav .elementkit-nav-item .elementkit-nav-link::before' => 'height: {{SIZE}}{{UNIT}};',
1530 ],
1531 'condition' => [
1532 'ekit_tab_caret_style' => ['elementskit_pregress_style']
1533 ]
1534 ]
1535 );
1536
1537 $this->add_responsive_control(
1538 'ekit_tab_header_caret_pregress_style_bottom_line',
1539 [
1540 'label' => esc_html__( 'Bottom', 'elementskit-lite' ),
1541 'type' => Controls_Manager::SLIDER,
1542 'size_units' => [ 'px', '%' ],
1543 'range' => [
1544 '%' => [
1545 'min' => -100,
1546 'max' => 100,
1547 'step' => 1
1548 ],
1549 'px' => [
1550 'min' => -100,
1551 'max' => 100,
1552 'step' => 1
1553 ],
1554 ],
1555 'default' => [
1556 'unit' => 'px',
1557 'size' => -3,
1558 ],
1559 'selectors' => [
1560 '{{WRAPPER}} .elementkit-tab-nav.elementskit_pregress_style .elementkit-nav-item .elementkit-nav-link::before' => 'bottom: {{SIZE}}{{UNIT}};',
1561 ],
1562 'condition' => [
1563 'ekit_tab_caret_style' => ['elementskit_pregress_style']
1564 ]
1565 ]
1566 );
1567
1568 $this->add_responsive_control(
1569 'ekit_tab_header_caret_pregress_style_left_line',
1570 [
1571 'label' => esc_html__( 'Left', 'elementskit-lite' ),
1572 'type' => Controls_Manager::SLIDER,
1573 'size_units' => [ 'px', '%' ],
1574 'range' => [
1575 '%' => [
1576 'min' => -100,
1577 'max' => 100,
1578 'step' => 1
1579 ],
1580 'px' => [
1581 'min' => -100,
1582 'max' => 100,
1583 'step' => 1
1584 ],
1585 ],
1586 'default' => [
1587 'unit' => '%',
1588 'size' => 0,
1589 ],
1590 'selectors' => [
1591 '{{WRAPPER}} .elementkit-tab-nav.elementskit_pregress_style .elementkit-nav-item .elementkit-nav-link::before' => 'left: {{SIZE}}{{UNIT}};',
1592 ],
1593 'condition' => [
1594 'ekit_tab_caret_style' => ['elementskit_pregress_style']
1595 ]
1596 ]
1597 );
1598
1599 $this->add_group_control(
1600 Group_Control_Background::get_type(),
1601 [
1602 'name' => 'ekit_tab_header_caret_pregress_style_background',
1603 'label' => esc_html__( 'Background', 'elementskit-lite' ),
1604 'types' => [ 'classic', 'gradient' ],
1605 'selector' => '{{WRAPPER}} .elementkit-tab-nav.elementskit_pregress_style .elementkit-nav-item .elementkit-nav-link::before',
1606 'condition' => [
1607 'ekit_tab_caret_style' => ['elementskit_pregress_style']
1608 ]
1609 ]
1610 );
1611
1612 $this->add_control(
1613 'ekit_tab_header_caret_background_heart_pregress_style_heading',
1614 [
1615 'type' => Controls_Manager::DIVIDER,
1616 'style' => 'thick',
1617 'condition' => [
1618 'ekit_tab_caret_style' => ['elementskit_pregress_style']
1619 ]
1620 ]
1621 );
1622
1623 $this->add_group_control(
1624 Group_Control_Background::get_type(),
1625 [
1626 'name' => 'ekit_tab_header_caret_background_pregress_style_symbol',
1627 'label' => esc_html__( 'Background', 'elementskit-lite' ),
1628 'types' => [ 'classic', 'gradient' ],
1629 'default' => '#ffffff',
1630 'selector' => '{{WRAPPER}} .elementkit-tab-nav.elementskit_pregress_style .elementkit-nav-item .elementkit-nav-link::after',
1631 'condition' => [
1632 'ekit_tab_caret_style' => ['elementskit_pregress_style']
1633 ]
1634 ]
1635 );
1636
1637 $this->add_group_control(
1638 Group_Control_Border::get_type(),
1639 [
1640 'name' => 'ekit_tab_header_caret_border_pregress_style_symbol',
1641 'label' => esc_html__( 'Border', 'elementskit-lite' ),
1642 'selector' => '.elementkit-tab-nav.elementskit_pregress_style .elementkit-nav-item .elementkit-nav-link::after',
1643 'condition' => [
1644 'ekit_tab_caret_style' => ['elementskit_pregress_style']
1645 ]
1646 ]
1647 );
1648
1649 $this->add_responsive_control(
1650 'ekit_tab_header_caret_pregress_style_width',
1651 [
1652 'label' => esc_html__( 'Caret Width', 'elementskit-lite' ),
1653 'type' => Controls_Manager::SLIDER,
1654 'size_units' => [ 'px' ],
1655 'range' => [
1656 'px' => [
1657 'min' => 0,
1658 'max' => 200,
1659 'step' => 1,
1660 ],
1661 ],
1662 'default' => [
1663 'unit' => 'px',
1664 'size' => 20,
1665 ],
1666 'selectors' => [
1667 '{{WRAPPER}} .elementkit-tab-nav.elementskit_pregress_style .elementkit-nav-item .elementkit-nav-link::after' => 'width: {{SIZE}}{{UNIT}};',
1668 ],
1669 'condition' => [
1670 'ekit_tab_caret_style' => ['elementskit_pregress_style']
1671 ]
1672 ]
1673 );
1674
1675 $this->add_responsive_control(
1676 'ekit_tab_header_caret_pregress_style_height',
1677 [
1678 'label' => esc_html__( 'Caret Height', 'elementskit-lite' ),
1679 'type' => Controls_Manager::SLIDER,
1680 'size_units' => [ 'px' ],
1681 'range' => [
1682 'px' => [
1683 'min' => 0,
1684 'max' => 200,
1685 'step' => 1,
1686 ],
1687 ],
1688 'default' => [
1689 'unit' => 'px',
1690 'size' => 20,
1691 ],
1692 'selectors' => [
1693 '{{WRAPPER}} .elementkit-tab-nav.elementskit_pregress_style .elementkit-nav-item .elementkit-nav-link::after' => 'height: {{SIZE}}{{UNIT}};',
1694 ],
1695 'condition' => [
1696 'ekit_tab_caret_style' => ['elementskit_pregress_style']
1697 ]
1698 ]
1699 );
1700
1701 $this->add_responsive_control(
1702 'ekit_tab_header_caret_pregress_style_bottom',
1703 [
1704 'label' => esc_html__( 'Bottom Icon Position', 'elementskit-lite' ),
1705 'type' => Controls_Manager::SLIDER,
1706 'size_units' => [ 'px', '%' ],
1707 'range' => [
1708 'px' => [
1709 'min' => -100,
1710 'max' => 100,
1711 'step' => 1,
1712 ],
1713 '%' => [
1714 'min' => -100,
1715 'max' => 100,
1716 ],
1717 ],
1718 'default' => [
1719 'unit' => 'px',
1720 'size' => -10,
1721 ],
1722 'selectors' => [
1723 '{{WRAPPER}} .elementkit-tab-nav.elementskit_pregress_style .elementkit-nav-item .elementkit-nav-link::after' => 'bottom: {{SIZE}}{{UNIT}};',
1724 ],
1725 'condition' => [
1726 'ekit_tab_caret_style' => ['elementskit_pregress_style']
1727 ]
1728 ]
1729 );
1730
1731 $this->add_responsive_control(
1732 'ekit_tab_header_caret_pregress_style_left',
1733 [
1734 'label' => esc_html__( 'Left Position', 'elementskit-lite' ),
1735 'type' => Controls_Manager::SLIDER,
1736 'size_units' => [ 'px', '%' ],
1737 'range' => [
1738 'px' => [
1739 'min' => -100,
1740 'max' => 100,
1741 'step' => 1,
1742 ],
1743 '%' => [
1744 'min' => -100,
1745 'max' => 100,
1746 ],
1747 ],
1748 'default' => [
1749 'unit' => '%',
1750 'size' => 50,
1751 ],
1752 'selectors' => [
1753 '{{WRAPPER}} .elementkit-tab-nav.elementskit_pregress_style .elementkit-nav-item .elementkit-nav-link::after' => 'left: {{SIZE}}{{UNIT}};',
1754 ],
1755 'condition' => [
1756 'ekit_tab_caret_style' => ['elementskit_pregress_style']
1757 ]
1758 ]
1759 );
1760
1761 $this->add_responsive_control(
1762 'ekit_tab_header_caret_border_pregress_style_radius',
1763 [
1764 'label' => esc_html__( 'Border Radius', 'elementskit-lite' ),
1765 'type' => Controls_Manager::SLIDER,
1766 'size_units' => [ '%' ],
1767 'range' => [
1768 '%' => [
1769 'min' => 0,
1770 'max' => 100,
1771 ],
1772 ],
1773 'default' => [
1774 'unit' => '%',
1775 'size' => 50,
1776 ],
1777 'selectors' => [
1778 '{{WRAPPER}} .elementkit-tab-nav.elementskit_pregress_style .elementkit-nav-item .elementkit-nav-link::after' => 'border-radius: {{SIZE}}{{UNIT}};',
1779 ],
1780 'condition' => [
1781 'ekit_tab_caret_style' => ['elementskit_pregress_style']
1782 ]
1783 ]
1784 );
1785
1786 // elementskit_ribbon_style
1787 $this->add_responsive_control(
1788 'ekit_tab_header_caret_ribbon_width',
1789 [
1790 'label' => esc_html__( 'Width', 'elementskit-lite' ),
1791 'type' => Controls_Manager::SLIDER,
1792 'size_units' => [ '%' ],
1793 'range' => [
1794 '%' => [
1795 'min' => 0,
1796 'max' => 200,
1797 'step' => 1,
1798 ],
1799 ],
1800 'default' => [
1801 'unit' => '%',
1802 'size' => 100,
1803 ],
1804 'selectors' => [
1805 '{{WRAPPER}} .elementkit-tab-nav.elementskit_ribbon_style .elementkit-nav-item .elementkit-nav-link::before' => 'width: {{SIZE}}{{UNIT}};',
1806 ],
1807 'condition' => [
1808 'ekit_tab_caret_style' => ['elementskit_ribbon_style',]
1809 ]
1810 ]
1811 );
1812
1813 $this->add_responsive_control(
1814 'ekit_tab_header_caret_ribbon_height',
1815 [
1816 'label' => esc_html__( 'Height', 'elementskit-lite' ),
1817 'type' => Controls_Manager::SLIDER,
1818 'size_units' => [ '%' ],
1819 'range' => [
1820 '%' => [
1821 'min' => 0,
1822 'max' => 100,
1823 'step' => 1,
1824 ],
1825 ],
1826 'default' => [
1827 'unit' => '%',
1828 'size' => 100,
1829 ],
1830 'selectors' => [
1831 '{{WRAPPER}} .elementkit-tab-nav.elementskit_ribbon_style .elementkit-nav-item .elementkit-nav-link::before' => 'height: {{SIZE}}{{UNIT}};',
1832 ],
1833 'condition' => [
1834 'ekit_tab_caret_style' => ['elementskit_ribbon_style']
1835 ]
1836 ]
1837 );
1838
1839 $this->add_group_control(
1840 Group_Control_Background::get_type(),
1841 [
1842 'name' => 'ekit_tab_header_caret_ribbon_style_background',
1843 'label' => esc_html__( 'Background', 'elementskit-lite' ),
1844 'types' => [ 'classic', 'gradient' ],
1845 'selector' => '{{WRAPPER}} .elementkit-tab-nav.elementskit_ribbon_style .elementkit-nav-item .elementkit-nav-link::before',
1846 'condition' => [
1847 'ekit_tab_caret_style' => ['elementskit_ribbon_style']
1848 ]
1849 ]
1850 );
1851
1852 $this->add_control(
1853 'ekit_tab_header_caret_background_ribbon_style_heading',
1854 [
1855 'type' => Controls_Manager::DIVIDER,
1856 'style' => 'thick',
1857 'condition' => [
1858 'ekit_tab_caret_style' => ['elementskit_ribbon_style']
1859 ]
1860 ]
1861 );
1862
1863 $this->add_group_control(
1864 Group_Control_Background::get_type(),
1865 [
1866 'name' => 'ekit_tab_header_caret_background_heart_symbol',
1867 'label' => esc_html__( 'Background', 'elementskit-lite' ),
1868 'types' => [ 'classic', 'gradient' ],
1869 'selector' => '{{WRAPPER}} .elementkit-tab-nav.elementskit_ribbon_style .elementkit-nav-item .elementkit-nav-link::after',
1870 'condition' => [
1871 'ekit_tab_caret_style' => ['elementskit_ribbon_style']
1872 ]
1873 ]
1874 );
1875
1876 $this->add_responsive_control(
1877 'ekit_tab_header_caret_ribbon_style_width',
1878 [
1879 'label' => esc_html__( 'Caret Width', 'elementskit-lite' ),
1880 'type' => Controls_Manager::SLIDER,
1881 'size_units' => [ 'px' ],
1882 'range' => [
1883 'px' => [
1884 'min' => 0,
1885 'max' => 200,
1886 'step' => 1,
1887 ],
1888 ],
1889 'default' => [
1890 'unit' => 'px',
1891 'size' => 20,
1892 ],
1893 'selectors' => [
1894 '{{WRAPPER}} .elementkit-tab-nav.elementskit_ribbon_style .elementkit-nav-item .elementkit-nav-link::after' => 'width: {{SIZE}}{{UNIT}};',
1895 ],
1896 'condition' => [
1897 'ekit_tab_caret_style' => ['elementskit_ribbon_style']
1898 ]
1899 ]
1900 );
1901
1902 $this->add_responsive_control(
1903 'ekit_tab_header_caret_ribbon_style_height',
1904 [
1905 'label' => esc_html__( 'Caret Height', 'elementskit-lite' ),
1906 'type' => Controls_Manager::SLIDER,
1907 'size_units' => [ 'px' ],
1908 'range' => [
1909 'px' => [
1910 'min' => 0,
1911 'max' => 200,
1912 'step' => 1,
1913 ],
1914 ],
1915 'default' => [
1916 'unit' => 'px',
1917 'size' => 20,
1918 ],
1919 'selectors' => [
1920 '{{WRAPPER}} .elementkit-tab-nav.elementskit_ribbon_style .elementkit-nav-item .elementkit-nav-link::after' => 'height: {{SIZE}}{{UNIT}};',
1921 ],
1922 'condition' => [
1923 'ekit_tab_caret_style' => ['elementskit_ribbon_style']
1924 ]
1925 ]
1926 );
1927
1928 $this->add_responsive_control(
1929 'ekit_tab_header_caret_ribbon_style_bottom',
1930 [
1931 'label' => esc_html__( 'Bottom Position', 'elementskit-lite' ),
1932 'type' => Controls_Manager::SLIDER,
1933 'size_units' => [ 'px', '%' ],
1934 'range' => [
1935 'px' => [
1936 'min' => -100,
1937 'max' => 100,
1938 'step' => 1,
1939 ],
1940 '%' => [
1941 'min' => -100,
1942 'max' => 100,
1943 ],
1944 ],
1945 'default' => [
1946 'unit' => 'px',
1947 'size' => -20,
1948 ],
1949 'selectors' => [
1950 '{{WRAPPER}} .elementkit-tab-nav.elementskit_ribbon_style .elementkit-nav-item .elementkit-nav-link::after' => 'bottom: {{SIZE}}{{UNIT}};',
1951 ],
1952 'condition' => [
1953 'ekit_tab_caret_style' => ['elementskit_ribbon_style']
1954 ]
1955 ]
1956 );
1957
1958 $this->add_responsive_control(
1959 'ekit_tab_header_caret_ribbon_style_left',
1960 [
1961 'label' => esc_html__( 'Left Position', 'elementskit-lite' ),
1962 'type' => Controls_Manager::SLIDER,
1963 'size_units' => [ 'px', '%' ],
1964 'range' => [
1965 'px' => [
1966 'min' => -100,
1967 'max' => 100,
1968 'step' => 1,
1969 ],
1970 '%' => [
1971 'min' => -100,
1972 'max' => 100,
1973 ],
1974 ],
1975 'default' => [
1976 'unit' => '%',
1977 'size' => 100,
1978 ],
1979 'selectors' => [
1980 '{{WRAPPER}} .elementkit-tab-nav.elementskit_ribbon_style .elementkit-nav-item .elementkit-nav-link::after' => 'transform:translateX(-100%);left: {{SIZE}}{{UNIT}};',
1981 ],
1982 'condition' => [
1983 'ekit_tab_caret_style' => ['elementskit_ribbon_style']
1984 ]
1985 ]
1986 );
1987
1988 $this->end_controls_section();
1989
1990 //Body Style Section
1991
1992 $this->start_controls_section(
1993 'ekit_tab_section_body_style', [
1994 'label' =>esc_html__( 'Body', 'elementskit-lite' ),
1995 'tab' => Controls_Manager::TAB_STYLE,
1996 ]
1997 );
1998 $this->add_control(
1999 'ekit_tab_body_color',
2000 [
2001 'label' => esc_html__( 'Body Color', 'elementskit-lite' ),
2002 'type' => Controls_Manager::COLOR,
2003 'default' => '#656565',
2004 'selectors' => [
2005 '{{WRAPPER}} .tab-content .tab-pane' => 'color: {{VALUE}}',
2006 ],
2007 ]
2008 );
2009 $this->add_responsive_control(
2010 'ekit_tab_body_padding',
2011 [
2012 'label' => esc_html__( 'Padding', 'elementskit-lite' ),
2013 'type' => Controls_Manager::DIMENSIONS,
2014 'size_units' => [ 'px', '%' ],
2015 'default' => [
2016 'top' => '20',
2017 'right' => '0',
2018 'bottom' => '20',
2019 'left' => '0',
2020 'unit' => 'px',
2021 'isLinked' => '',
2022 ],
2023 'selectors' => [
2024 '{{WRAPPER}} .tab-content .tab-pane' => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
2025 ],
2026 ]
2027 );
2028 $this->add_group_control(
2029 Group_Control_Background::get_type(),
2030 array(
2031 'name' => 'ekit_tab_body_bg_group',
2032 'selector' => '{{WRAPPER}} .tab-content .tab-pane',
2033 )
2034 );
2035 $this->add_group_control(
2036 Group_Control_Border::get_type(),
2037 [
2038 'name' => 'ekit_tab_body_content_border_group',
2039 'label' => esc_html__( 'Border', 'elementskit-lite' ),
2040 'selector' => '{{WRAPPER}} .tab-content .tab-pane',
2041 ]
2042 );
2043 $this->add_responsive_control(
2044 'ekit_tab_body_border_radius',
2045 [
2046 'label' => esc_html__( 'Border Radius', 'elementskit-lite' ),
2047 'type' => Controls_Manager::DIMENSIONS,
2048 'size_units' => [ 'px', '%' ],
2049 'selectors' => [
2050 '{{WRAPPER}} .tab-content .tab-pane' => 'border-radius: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}};',
2051 ],
2052 ]
2053 );
2054 $this->add_group_control(
2055 Group_Control_Box_Shadow::get_type(),
2056 [
2057 'name' => 'ekit_tab_body_box_shadow_group',
2058 'label' => esc_html__( 'Box Shadow', 'elementskit-lite' ),
2059 'selector' => '{{WRAPPER}} .tab-content .tab-pane',
2060 ]
2061 );
2062
2063 $this->end_controls_section();
2064
2065 $this->insert_pro_message();
2066 }
2067
2068 protected function render( ) {
2069 echo '<div class="ekit-wid-con" >';
2070 $this->render_raw();
2071 echo '</div>';
2072 }
2073
2074 protected function render_raw( ) {
2075
2076 $settings = $this->get_settings_for_display();
2077
2078 extract($settings);
2079
2080 $nav_wrapper_class = 'nav nav-tabs elementkit-tab-nav ';
2081
2082 if($ekit_tab_caret_style_choose == 'yes'){
2083 $nav_wrapper_class .= ' '.$ekit_tab_caret_style;
2084 }
2085
2086 if($ekit_tab_caret_style_choose == 'yes'){
2087 $nav_wrapper_class .= ' '.$ekit_tab_caret_style;
2088 }
2089
2090 if($ekit_tab_fill_full_width == 'yes') {
2091 $nav_wrapper_class .= ' elementskit-fullwidth-tab';
2092 }
2093
2094 if($ekit_tab_nav_wrapper_width == 'yes') {
2095 $nav_wrapper_class .= ' tab-nav-fluid';
2096 }
2097
2098 $tab_id = uniqid();
2099
2100 $has_user_defined_active_tab = false;
2101 foreach($ekit_tab_items as $tab){
2102 if($tab['ekit_tab_title_is_active'] == 'yes'){
2103 $has_user_defined_active_tab = true;
2104 }
2105 }
2106
2107
2108 ?>
2109 <div class="elementkit-tab-wraper <?php echo esc_attr($ekit_tab_style == 'vertical' ? 'vertical' : ''); ?> <?php if ($ekit_tab_fill_full_width != 'yes') : ?> elementskit-fitcontent-tab <?php endif; ?>">
2110 <ul class="<?php echo esc_attr($nav_wrapper_class); ?>">
2111 <?php foreach ($ekit_tab_items as $i=>$tab) :
2112 $is_active = ($tab['ekit_tab_title_is_active'] == 'yes') ? ' active show' : '';
2113 $is_active = ($has_user_defined_active_tab == false && $i == 0) ? ' active show' : $is_active;
2114
2115 if(isset($tab['ekit_tab_title_icon_type']) && $tab['ekit_tab_title_icon_type'] == 'icon' && $tab['ekit_tab_title_icons'] != '') {
2116 $icon_html = '<span class="elementskit-tab-icon">' . Icons_Manager::try_get_icon_html( $tab['ekit_tab_title_icons'], [ 'aria-hidden' => 'true' ] ) . '</span>';
2117 } else {
2118 $icon_html = '';
2119 }
2120
2121 $img_html = isset($tab['ekit_tab_title_icon_type']) && ($tab['ekit_tab_title_icon_type'] == 'image' && ! empty( $tab['ekit_tab_title_image']['url'] )) ?
2122 '<div class="ekit-icon-image elementskit-tab-icon">'. \Elementskit_Lite\Utils::get_attachment_image_html($tab, 'ekit_tab_title_image', 'full', [
2123 'draggable' => 'false'
2124 ]) .'</div>' : '';
2125
2126 // URL Hash id
2127 $handler_id = (($tab['ekit_tab_title']) != '' ? strtolower(preg_replace("![^a-z0-9]+!i", "-", $tab['ekit_tab_title'])) : ('tab-'.$tab['_id']));
2128 ?>
2129 <li class="elementkit-nav-item elementor-repeater-item-<?php echo esc_attr( $tab[ '_id' ] ); ?>">
2130 <a class="elementkit-nav-link <?php echo esc_attr($is_active);?> <?php echo esc_attr($ekit_tab_header_icon_pos_style); ?>" id="content-<?php echo esc_attr($tab['_id'].$tab_id); ?>-tab" data-ekit-handler-id="<?php echo esc_html( $handler_id ); ?>" data-ekit-toggle="tab" data-target="#content-<?php echo esc_attr($tab['_id'].$tab_id); ?>" href="#Content-<?php echo esc_attr($tab['_id'].$tab_id); ?>"
2131 data-ekit-toggle-trigger="<?php echo esc_attr( $ekit_tab_trigger_type ); ?>"
2132 aria-describedby="Content-<?php echo esc_attr($tab['_id'].$tab_id); ?>">
2133 <?php echo wp_kses($icon_html.$img_html, \ElementsKit_Lite\Utils::get_kses_array()); ?>
2134 <span class="elementskit-tab-title"><?php echo \ElementsKit_Lite\Utils::kses( $tab['ekit_tab_title'] ); ?></span>
2135 </a>
2136 </li>
2137 <?php endforeach; ?>
2138 </ul>
2139
2140 <div class="tab-content elementkit-tab-content">
2141 <?php foreach ($ekit_tab_items as $i=>$tab) :
2142 $is_active = ($tab['ekit_tab_title_is_active'] == 'yes') ? ' active show' : '';
2143 $is_active = ($has_user_defined_active_tab == false && $i == 0) ? ' active show' : $is_active;
2144 ?>
2145 <div class="tab-pane elementkit-tab-pane elementor-repeater-item-<?php echo esc_attr( $tab[ '_id' ] ); ?> <?php echo esc_attr($is_active);?>" id="content-<?php echo esc_attr($tab['_id'].$tab_id); ?>" role="tabpanel"
2146 aria-labelledby="content-<?php echo esc_attr($tab['_id'].$tab_id); ?>-tab">
2147 <div class="animated fadeIn">
2148 <?php $this->print_text_editor( $tab['ekit_tab_content'] ); ?>
2149 </div>
2150 </div>
2151 <?php endforeach; ?>
2152
2153 </div>
2154 <?php
2155 if ( isset( $settings['ekit_tab_schema'] ) && 'yes' === $settings['ekit_tab_schema'] ) {
2156 $json = [
2157 '@context' => 'https://schema.org',
2158 '@type' => 'FAQPage',
2159 'mainEntity' => [],
2160 ];
2161
2162 foreach ( $settings['ekit_tab_items'] as $index => $item ) {
2163 $faq_tab_text = !empty( $item['ekit_tab_content'] ) ? $item['ekit_tab_content'] : '';
2164 $json['mainEntity'][] = [
2165 '@type' => 'Question',
2166 'name' => esc_html($item['ekit_tab_title']),
2167 'acceptedAnswer' => [
2168 '@type' => 'Answer',
2169 'text' => \ElementsKit_Lite\Utils::kses( $faq_tab_text ),
2170 ],
2171 ];
2172 }
2173 ?>
2174 <script type="application/ld+json"><?php echo wp_json_encode( $json, JSON_UNESCAPED_SLASHES | JSON_UNESCAPED_UNICODE ); ?></script>
2175 <?php
2176 }
2177 ?>
2178 </div>
2179 <?php
2180 }
2181 }
2182