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