{"html":"<div class=\"uc_bold_tabs padding {{remote_parent.class}} {{uc_filtering_addclass}}\" id=\"{{uc_id}}\" {{uc_filtering_attributes|raw}} data-debug=\"{{debug_hidden_elements}}\" data-editor=\"{{uc_inside_editor}}\" {{remote_parent.attributes|raw}} data-collapsible=\"{{accordion_breakpoint}}\" data-hash=\"{{set_url_hash}}\" data-hash-scroll=\"{{scroll_to_head_after_hash_page_load}}\" data-scroll-to-selected-tab-offset=\"{{scroll_to_head_after_tab_selected_offset}}\" data-scroll-after-selected=\"{{scroll_to_tab_after_tab_select}}\">\n  <ul class=\"tabs uc_tab_nav uc-items-wrapper\">\n    {{put_items()}}\n  <\/ul>\n  <div class=\"panel-container uc-items-wrapper2\">\n\t{{put_items2()}}\n  <\/div>\n  \n  <div class=\"uc-accordion-contents-template\" style=\"display:none\">\n    <div class=\"uc-accordion-icon\">\n      <span class=\"uc-accordion-icon-expand\">{{accordion_expand_icon_html|raw}}<\/span>\n      <span class=\"uc-accordion-icon-collapse\">{{accordion_collapse_icon_html|raw}}<\/span>\n    <\/div>\n  <\/div>\n  \n<\/div>","html_item":"{# twig vars #}{##}\n{% set tabid = \"ue-tab\" ~ item.item_index %}\n{% if item.tab_id is not empty %}\n  {% set tabid = item.tab_id %}\n{% endif %}\n{# twig vars #}{##}\n\n<li class=\"{{item.item_repeater_class}}\">  \t\n  <a href=\"javascript:void(0);\" data-content-id=\"{{item.item_id}}\" {% if set_url_hash == \"true\" %} id=\"{{tabid}}\"{% endif %} data-hash-id=\"#{{tabid}}\" class=\"ue-tab-btn\">\n    {% if item.graphic_element == \"icon\" %}<div class=\"ue-graphic-element\"><span class=\"ue-ge-icon\">{{item.icon_html|raw}}<\/span><\/div>{% endif %}\n    {% if item.graphic_element == \"image\" %}<div class=\"ue-graphic-element\"><span class=\"ue-ge-icon\"><img src=\"{{item.image_ge}}\"><\/span><\/div>{% endif %}\n    {% if item.graphic_element == \"text\" %}<div class=\"ue-graphic-element\"><span class=\"ue-ge-text\">{{item.graphic_element_text|raw}}<\/span><\/div>{% endif %}\t   \n    <{{text_tag_wrapper}}>{{item.title|raw}}<\/{{text_tag_wrapper}}>\n  <\/a>      \n<\/li>","html_item2":"<div id=\"{{item.item_id}}\" class=\"tab-container panes\">\n  <div>\n    {% if item.content_type == \"template\" %}{{putElementorTemplate(item.template_templateid)}} {% endif %}\n    {% if item.content_type == \"content\" %}\n      <div class=\"ue-item-content-layout\"> \n        {% if show_image == \"true\" %}<div class=\"ue-item-image-wrapper\"><div class=\"ue-item-image\"><img src=\"{{item.image}}\" {{item.image_attributes|raw}}><\/div><\/div>{% endif %}\n        <div class=\"ue-item-content-wrapper\">\n          {% if show_title == \"true\" %}<div class=\"ue-content-title\">{{item.title|raw}}<\/div>{% endif %}\n          {% if show_text == \"true\" %}<div class=\"ue-content-text\">{{item.tab_content|raw}}<\/div>{% endif %}\n          {% if show_button == \"true\" %}<div class=\"ue-btn-wrapper\"><a href=\"{{item.link|raw}}\" class=\"uc_btn uc_more_btn\" {{item.link_html_attributes|raw}}>{{button_text|raw}}<\/a><\/div>{% endif %}\n        <\/div>  \n      <\/div>\n    {% endif %}\n     \n    {% if item.content_type == \"id\" %}\n      <div class=\"ue-element\" data-id=\"{{item.element_id|e('html_attr')}}\"><\/div>\n    {% endif %}\n  <\/div>\n<\/div>","css":"#{{uc_id}} * {\n    box-sizing: border-box;\n}\n\n#{{uc_id}} { \n  text-align: {{alignment}}; \n  position: relative;\n  overflow:hidden;\n  display:flex;\n  flex-direction:{{layout}};\n}\n\n#{{uc_id}} .ue-graphic-element{\n  display:inline-flex;\n  align-items:center;\n  justify-content:center;\n  line-height:1em;\n  overflow:hidden;\n}\n\n#{{uc_id}} .ue-graphic-element svg{\n  height:1em;\n  width:1em;\n}\n\n#{{uc_id}} .ue-graphic-element img{\n  display:block;\n}\n\n#{{uc_id}} .ue-item-image img{\n  width:100%;\n  display:block;\n}\n\n#{{uc_id}} .uc_container .uc_btn {\n    text-align: center;\n    display: inline-block;\n    text-decoration: none;\n    transition: ease-in-out all 0.25s;\n}\n\n{% if layout == \"row\" %}\n  #{{uc_id}} .uc_tab_nav{\n      flex-direction:column;\n      flex-grow:0;\n      flex-shrink:0;\n  }  \n{% endif %}\t\n\n#{{uc_id}} .ue-tab-btn{\n  transition: 0.5s;\n} \n\n#{{uc_id}} > ul.tabs{\n   margin:0px;\n   list-style:none;\n   display:flex;\n}\n\n{% if scrollable_tabs == \"true\" %}\n  #{{uc_id}} > ul.tabs{\n     justify-content:unset;\n     flex-wrap: nowrap;\n     overflow-x: scroll; \n  }\n\n  #{{uc_id}} > ul.tabs::-webkit-scrollbar{\n     display: none;\n  }\n{% else %}\n  #{{uc_id}} > ul.tabs{\n      justify-content:{{tab_bar_alignment}};\n      flex-wrap: wrap;\n  }\n{% endif %}\n\n#{{uc_id}} > ul.tabs > li{\n\tpadding:0px; \n\tmargin:0px;\n    {% if make_tabs_equal == \"true\" %}\n       flex:1;\n       text-align:center;\n    {% endif %}\t\n}\n\t\n#{{uc_id}} > ul.tabs > li > a {\t\n\tdisplay:flex;\n\ttext-decoration:none;\n    transition:0.5s;\n    flex-wrap: wrap;    \n}\n\n#{{uc_id}} .tab-container {\n\tclear:both;\n\toverflow:hidden;\n}\n\n#{{uc_id}} .ue_post_image img{\n  display:block;\n  width:100%;\n  object-fit: cover;\n}\n\n#{{uc_id}} .ue_post_link{\n  display:{{button_style}};\n  text-decoration:none;\n}\n\n#{{uc_id}} .panes{ \n  display:none;\n}\n\n#{{uc_id}}.r-tabs .r-tabs-tab {\n    display: block;\n    margin: 0;\n    list-style: none;\n}\n\n#{{uc_id}}.r-tabs .r-tabs-panel {\n    display: none;\n}\n\n#{{uc_id}}.r-tabs .r-tabs-accordion-title {\n    display: none;\n}\n\n#{{uc_id}}.r-tabs .r-tabs-panel.r-tabs-state-active {\n    display: flex;\n}\n\n#{{uc_id}} .panel-container{\n   width:100%;\n}\n\n{% if show_image == \"true\" %}\n  #{{uc_id}} .ue-item-content-layout{\n    display:flex;\n  }\n\n  #{{uc_id}} .ue-item-image-wrapper{\n    flex-grow:0;\n    flex-shrink:0;\n  }\n\n  #{{uc_id}} .ue-item-content-wrapper{\n    display:flex;\n    flex-grow:1;\n  }\n{% endif %}\n\n{% if accordion_breakpoint == \"true\" %}\n\n@media only screen and (max-width: {{responsive_breakpoint}}px){\n\n   #{{uc_id}} > ul.tabs {display:none;}\n   #{{uc_id}}.r-tabs .r-tabs-nav { display: none;}\n\n   #{{uc_id}}.r-tabs .r-tabs-accordion-title { display: block;}\n   #{{uc_id}} .r-tabs-accordion-title .r-tabs-anchor{ \n        display:flex;\n        align-items:center;\n        overflow:hidden; \n   }\n\n   #{{uc_id}} .uc-tabs-accordion-title{\n       flex-grow:1;\n   }\n\n   #{{uc_id}} .r-tabs-accordion-title .uc-accordion-icon-collapse{\n      display:none;    \n   }\n\n   #{{uc_id}} .r-tabs-accordion-title.r-tabs-state-active .uc-accordion-icon-collapse{\n      display:block;\n   }\n\n   #{{uc_id}} .r-tabs-accordion-title.r-tabs-state-active .uc-accordion-icon-expand{\n      display:none;\n   }\n\n   #{{uc_id}} .ue-item-content-layout{\n      display:flex;\n      flex-direction:column;\n   }\n\n   #{{uc_id}} .ue-item-image-wrapper{\n      width:100%;\n   }\n\n   #{{uc_id}} .uc-tabs-accordion-title{\n      display:flex;\n      align-items:center;\n   }\n\n   #{{uc_id}} .panel-container{\n     width:100%;\n     {% if disable_content_bg_color_accordion == \"true\" %}\n       background-color: unset;\n     {% endif %}\n   } \n\n    #{{uc_id}} .tab-container{\n      background-color: {{accordion_content_background_color}};\n    }\n\n  }\n\n{% endif %}","css_item":"{% if item.content_type == \"id\" and item.item_index > 1 %}\n\t{{ucfunc(\"put_hide_ids_css\", item.element_id)}}\n{% endif %}","js":"jQuery(document).ready(function(){\n function {{uc_id}}_start() {\t\n\t\t\n  var jQuerytabs = jQuery('#{{uc_id}}');\n  var htmlAccordion = jQuerytabs.find(\".uc-accordion-contents-template\").html();  \n  var objTabs = jQuerytabs.find(\".ue-tab-btn\");  \n  var g_dataScrollToHashedTab = jQuerytabs.data(\"hash-scroll\");\n  var g_scrollOffset = jQuerytabs.data(\"scroll-to-selected-tab-offset\");\n  var objElementorTabs = jQuery(\".e-n-tabs .e-n-tab-title\");  \n  var tabsOptions = {    \n      startCollapsed: '{{start_hidden}}',\n      {% if accordion_breakpoint == \"true\" %}\n        collapsible: 'accordion',\n       closeCurrent: true,\n      {% else %}\n        collapsible: 'tabs',\n        closeCurrent: {{close_active_tab_on_click}},  \n      {% endif %}      \n      setHash: {{set_url_hash}},\n      accordionAnchorHTML:htmlAccordion ,\n      breakpoint: {{responsive_breakpoint}},       \n  }\n  \n  \/\/tabs must ne inited before remote script\n  jQuerytabs.responsiveContentTabs('init', tabsOptions);\n   \n  \/**\n  * before - after widget template tab fix\n  *\/  \n  jQuerytabs.on(\"click\", function(){  \n  \tvar objBeforeAfterWidgets = jQuerytabs.find(\".cocoen\");\n  \n    if(!objBeforeAfterWidgets.length){    \t\n      var objConnectedElements = jQuerytabs.find(\".ue-element\");\n      \n      if(objConnectedElements){\n        objConnectedElements.each(function(){      \n          var objElement = jQuery(this);\n          var dataId = objElement.data(\"id\");\n          var objConnectedBeforeAfterWidget = jQuery(\"#\"+dataId).find(\".cocoen\");\n\n          if(!objConnectedBeforeAfterWidget)\n          return(true);  \n\n          objConnectedBeforeAfterWidget.trigger(\"delayed_start\");\n        });\n      }          \n    }else\n   \tobjBeforeAfterWidgets.trigger(\"delayed_start\");    \n  });\n  \n  \/**\n  * scrolls the page\n  *\/  \n  function scrollToTop(elementOffsetTop, offset){\n     jQuery('html, body').animate({       \n       scrollTop: elementOffsetTop + offset                                  \n     }, 400);    \n  }\n\n  \/**\n  * scrolls to head in responsive mode\n  *\/  \n  function initScrollOption(){\n    {% if scroll_to_head == \"true\" %}\n      var objTab = jQuerytabs.find('.r-tabs-anchor');\n      var isMobileViewport = window.matchMedia(\"(max-width: \" + {{responsive_breakpoint}} + \"px)\");\n\n      objTab.click(function(){        \n          var jQuerytabsOffsetTop = jQuerytabs.offset().top;\n          var tabsItemOffsetTop = jQuery(this).offset().top;\n\n          if(isMobileViewport.matches == true)\n              scrollToTop(tabsItemOffsetTop, {{scroll_to_head_offset}});        \n      });\n    {% endif %}  \n  }\n     \n  \/**\n  * returns jQuery object of the hashed tab\n  *\/     \n  function getHashedTab(){  \n  \tif (!window.location.hash) \n    return false;\n\n    var hash = window.location.hash.replace(\"#\", \"\");    \n    var objHash = jQuery(\"[data-hash-id=\"+hash+\"]\");\n  \n    return(objHash);  \n  }   \n     \n  \/**\n  * scrolls to tab with different g_dataScrollToHashedTab values\n  *\/     \n  function scrollToTab(objTab){  \n    var objTabTop = objTab.offset().top;\n    \n    if (g_dataScrollToHashedTab == \"desktop\" && window.matchMedia(\"(min-width: 1024px)\").matches)\n      scrollToTop(objTabTop, g_scrollOffset);\n    \n    if (g_dataScrollToHashedTab == \"mobile\" && window.matchMedia(\"(max-width: 1024px)\").matches)\n\t  scrollToTop(objTabTop, g_scrollOffset);\n    \n    if (g_dataScrollToHashedTab == \"desktop+mobile\")\n      scrollToTop(objTabTop, g_scrollOffset);  \n  }   \n     \n  \/**\n  * scrolls to hashed tab after page load\n  *\/  \n  function scrollToHashedTab(){  \n  \tvar dataHash = jQuerytabs.data(\"hash\");\n    \n    if(dataHash == false)\n    return(false);\n        \n    if(g_dataScrollToHashedTab == \"off\")\n    return(false); \n    \n    var objHash = getHashedTab();\n    \n    if(!objHash || !objHash.length || objHash == false)\n    return(false); \n      \n    var objHashTop = objHash.offset().top;\n    \n    scrollToTab(objHash);      \t\n  } \n     \n  \/**\n  * check if element is in viewport\n  *\/\n  function isElementInViewport(element) {    \n    var elementTop = element.offset().top;\n    var elementBottom = elementTop + element.outerHeight();\n    \n    var viewportTop = jQuery(window).scrollTop();\n    var viewportBottom = viewportTop + jQuery(window).height();\n    \n    var isInViwport = elementBottom > viewportTop && elementTop < viewportBottom;\n    \n    return(isInViwport);\n  } \n    \n  \/**\n  * scrolls to selected tab\n  *\/   \n  function scrollToSelectedTab(objTab){    \t            \n    scrollToTab(objTab);  \n  }      \n     \n  \/**\n  * check if tab is in viewport and scroll\n  *\/    \n  function onTabsClick(){  \n    var dataScrollAfterSelected = jQuerytabs.data(\"scroll-after-selected\");\n    \n    {% if fire_resize_event_on_tab_click == \"true\" %}\n      window.dispatchEvent(new Event('resize'));\n    {% endif %}\n    \n    if(dataScrollAfterSelected == false){\n      var objTab = jQuery(this);\n\n      \/\/if in viewport - do nothing\n      if(isElementInViewport(objTab) == true)\n      return(true);  \n\n      scrollToSelectedTab(objTab);\n    }\n  }\n     \n  \/**\n  * suppooert of elementor tabs\n  *\/\n  function onElementorTabClick(){\n    var objButton = jQuery(this);\n    var dataContentId = objButton.attr(\"aria-controls\");\n    \n    if(!dataContentId)\n    return(true);\n    \n    var objContent = jQuery(\"#\"+dataContentId);\n    \n    if(!objContent)\n    return(true);  \n      \n    var objUETabs = objContent.find(\".uc_bold_tabs\");\n    \n    if(!objUETabs)\n    return(true); \n    \n    setTimeout(function(){\n      jQuerytabs.responsiveContentTabs(\"init\", \"destroy\");\n      objUETabs.responsiveContentTabs(\"reinit\", tabsOptions);\n    },300)\n  }   \n  \n  \/\/set timeout in case other script scrolls the page so this one was last   \n  setTimeout(scrollToHashedTab, 400);\n     \n  \/\/scroll to tab after remote widget triggered click   \n  objTabs.on(\"click\", onTabsClick);\n     \n  \/\/scrolls to head in responsive mode   \n  initScrollOption(); \n    \n  \/\/reinit tabs after ajax (filters) refresh   \n  jQuerytabs.on(\"uc_ajax_refreshed\", function(){\n    \n    jQuerytabs.responsiveContentTabs(\"init\", \"destroy\");\n    jQuerytabs.responsiveContentTabs(\"reinit\", tabsOptions);\n    initScrollOption();\n  \n  });\n     \n {% if scrollable_tabs == \"true\" %}\n   const tabs = document.querySelector('#{{uc_id}} .uc_tab_nav');\n  \n    let isDown = false;\n    let startX;\n    let scrollLeft;\n\n    tabs.addEventListener('mousedown', (e) => {\n      isDown = true;\n      tabs.classList.add('active');\n      startX = e.pageX - tabs.offsetLeft;\n      scrollLeft = tabs.scrollLeft;\n      e.preventDefault();\n    });\n  \n    tabs.addEventListener('mouseleave', () => {\n      isDown = false;\n      tabs.classList.remove('active');\n    });\n  \n    tabs.addEventListener('mouseup', () => {\n      isDown = false;\n      tabs.classList.remove('active');\n    });\n  \n    tabs.addEventListener('mousemove', (e) => {\n      if(!isDown) return;\n      e.preventDefault();\n      const x = e.pageX - tabs.offsetLeft;\n      const walk = (x - startX) * 1; \/\/scroll-fast\n      tabs.scrollLeft = scrollLeft - walk;\n        e.preventDefault();\n    });\n {% endif %}\n     \n  \/\/elemtnor tab click\n  objElementorTabs.on(\"click\", onElementorTabClick); \n     \n  var objRemoteOptions = {\n    \tclass_items:\"r-tabs-tab\",\n    \tclass_active:\"r-tabs-state-active\",\n    \tselector_item_trigger:\".r-tabs-anchor\"\n  };\n      \n  {{ucfunc(\"put_remote_parent_js\",\"jQuerytabs\",\"objRemoteOptions\")}}  \n    \t\n }    \t\n if (jQuery(\"#{{uc_id}}\").length && !jQuery(\"#{{uc_id}}\").parents('[data-elementor-type=\"popup\"]').length || jQuery(\"#{{uc_id}}\").length && \"{{uc_inside_editor}}\" == \"yes\") {{uc_id}}_start();\n jQuery(document).on(\"elementor\/popup\/show\", (event, id, objPopup) => {\n    if (objPopup.$element.has(jQuery(\"#{{uc_id}}\")).length) {{uc_id}}_start();\n });\n});"}