// source --> https://boathowto.com/wp-content/plugins/verge3d/js/woo_product.js?ver=6.9.4 
(function() {

var v3d_woo_product_info_cb = null;

function v3d_woo_form_get_quantity(formData) {
    var qtyElems = document.body.querySelectorAll('input.qty');

    if (qtyElems.length == 0) {
        formData.append('quantity', 1);
    } else {
        for (var i = 0; i < qtyElems.length; i++) {
            var qtyElem = qtyElems[i];
            formData.append(qtyElem.name, qtyElem.value);
        }
    }
}

function v3d_woo_form_get_product_id(formData) {
    var varIdElem = document.body.querySelector('input[name=add-to-cart]') || document.body.querySelector('button[name=add-to-cart]');
    if (!varIdElem)
        console.error('Verge3D: Product ID not found!');
    formData.append('product_id', varIdElem ? varIdElem.value : -1);
}

function v3d_woo_form_get_variation_id(formData) {
    var varIdElem = document.body.querySelector('input[name=variation_id]');
    formData.append('variation_id', varIdElem ? varIdElem.value : -1);
}

function v3d_woo_form_get_attributes(formData) {
    var attElems = document.body.querySelectorAll('table.variations select');
    for (var i = 0; i < attElems.length; i++) {
        var attElem = attElems[i];
        formData.append(attElem.name, attElem.value);
    }
}

/**
 * Get components of the composite product
 */
function v3d_woo_form_get_components(formData) {
    if (window.v3d_woo_composite) {
        const components = window.v3d_woo_composite.api.get_composite_configuration();
        for (const id in components) {
            const component = components[id];
            for (const key in component) {
                if (key == 'selection_meta')
                    for (let i = 0; i < component[key].length; i++) {
                        const meta_key = component[key][i].meta_key.toLowerCase();
                        const meta_value = component[key][i].meta_value;
                        formData.append(`components[${id}][attributes][${meta_key}]`, meta_value);
                    }
                else
                    formData.append(`components[${id}][${key}]`, component[key]);
            }
        }
    }
}

function v3d_woo_get_product_info(callback) {
    v3d_woo_product_info_cb = callback;
    v3d_woo_request_product_info();
}
window.v3d_woo_get_product_info = v3d_woo_get_product_info;


function v3d_woo_request_product_info() {
    var formData = new FormData();
    formData.append('action', 'v3d_woo_get_product_info');
    v3d_woo_form_get_quantity(formData);
    v3d_woo_form_get_product_id(formData);
    v3d_woo_form_get_variation_id(formData);
    v3d_woo_form_get_attributes(formData);
    v3d_woo_form_get_components(formData);

    var req = new XMLHttpRequest();
    // registered in php via v3d_load_woo_scripts
    req.open('POST', v3d_ajax_object.ajax_url);
    req.send(formData);
    req.addEventListener('load', function() {
        var response = JSON.parse(req.response);

        if (v3d_woo_product_info_cb)
            v3d_woo_product_info_cb(response);
    });
}

function v3d_on_product_update() {
    if (v3d_ajax_object.switch_on_update) {
        const cover_div = document.querySelector('div[data-thumb-v3d-app-cover-src]');
        if (cover_div) {
            const cover_src = cover_div.dataset.thumbV3dAppCoverSrc;
            if (cover_src) {
                const thumb = document.querySelector(`li img[src="${cover_src}"]`);
                // HACK: switch twice
                if (thumb) {
                    thumb.click();
                    setTimeout(e => thumb.click(), 30);
                }
            }
        }
    }
    v3d_woo_request_product_info();
}
window.v3d_on_product_update = v3d_on_product_update;

window.addEventListener('load', function() {

    var qtyElems = document.body.querySelectorAll('input.qty');
    for (var i = 0; i < qtyElems.length; i++)
        qtyElems[i].onchange = v3d_on_product_update;

    var varFormElem = document.body.querySelector('.variations_form');
    if (varFormElem)
        varFormElem.woocommerce_variation_has_changed = v3d_on_product_update;

});


})();
// source --> https://boathowto.com/wp-content/plugins/thrive-visual-editor/editor/js/dist/modules/post-list.min.js?v=10.8.10&amp;ver=10.8.10 
void 0===TCB_Front.js_modules["post-list"]&&TCB_Front.setModuleLoadedStatus("post-list",!1),(t=>{if(!TCB_Front.isModuleLoaded("post-list")){t(window).on("tcb_after_dom_ready",()=>{t(".tcb-post-list").each((i,s)=>{new e(t(s)).renderPagination()})});class e{constructor(e){this.$element=e,this.content="",this.listArgs={};let i=this.getAttr("data-css");const s=t.Event("tcb_post_list_identifier.tcb");if(this.$element.trigger(s),s.identifier&&(i=s.identifier),this.identifier=i,this.listIdentifier="article",tve_frontend_options.is_editor_page?this.editorInit():this.frontendInit(),this.isCarousel()){this.isEditor=tve_frontend_options.is_editor_page;const t=this.$element.find(".tcb-carousel-container");t.attr("data-carousel-settings",decodeURI(t.attr("data-carousel-settings"))),this.carousel=new TCB_Front.Carousel(this),this.carousel.initCarousel()}}getPaginationInstance(){if(this.listArgs&&this.listArgs.attr){const t=this.listArgs.attr["pagination-type"];if(t.length&&"none"!==t&&void 0!==TCB_Front.Pagination)return TCB_Front.Pagination.factory(t,this)}}renderPagination(){this.pagination=this.getPaginationInstance(),this.pagination&&(tve_frontend_options.is_editor_page||this.pagination.addLoadListeners(),this.pagination.render())}editorInit(){this.listArgs={attr:{"pagination-type":this.getAttr("data-pagination-type"),total_post_count:this.getAttr("data-total_post_count")?this.getAttr("data-total_post_count"):100,pages_near_current:this.getAttr("data-pages_near_current")?this.getAttr("data-pages_near_current"):2},query:{posts_per_page:this.getAttr("data-posts_per_page")?this.getAttr("data-posts_per_page"):6,paged:1}}}frontendInit(){"undefined"==typeof tcb_post_lists?console.warn("Error initializing the post list parameters"):(this.listArgs=tcb_post_lists.find(t=>this.$element.is(t.identifier)),this.listArgs&&(this.listArgs.query&&void 0!==this.listArgs.query.offset&&delete this.listArgs.query.offset,this.listArgs.attr.queried_object=0,this.listArgs.query.queried_object=tve_frontend_options.queried_object,this.content=t('.tcb-post-list-template[data-identifier="'+this.listArgs.template+'"]').html()))}getAttr(t){return this.$element.attr(t)}getItems(t,e=this.listArgs){TCB_Front.Utils.restAjax({route:tve_frontend_options.routes.posts+"/html",data:{content:this.content,args:e}}).done(e=>{"function"==typeof t&&t(e),this.initItems(),TCB_Front.event_triggers(this.$element)}).fail(()=>{console.warn("There was an error and the content could not be loaded.")})}insertItems(e,i=!1){if(e.count&&e.posts){const s=this.$element.clone().empty();for(const t in e.posts)e.posts.hasOwnProperty(t)&&s.append(e.posts[t]);i?(this.$element.replaceWith(s),this.identifier.includes("tve-u-")?this.$element=t(`.tcb-post-list[data-css=${this.identifier}]`):this.$element=t(this.identifier),t(window).trigger("tcb_post_list_after_item_insert")):this.isCarousel()&&this.carousel?(this.$element.find(".slick-track").append(s.html()),this.carousel.initCarousel(!0)):(this.$element.append(s.html()),this.masonryRedo()),e.total_post_count&&(this.listArgs.attr.total_post_count=e.total_post_count)}}isLoading(){return this.$element.data("loading")}enableLoading(t=""){this.$element.addClass("tve-loading"+(t.length?" "+t:"")),this.$element.data("loading",!0)}disableLoading(){setTimeout(()=>this.$element.removeClass("tve-loading load-bot"),100),this.$element.data("loading",!1)}masonryRedo(t=this.$element){if(t.length&&t.data("masonry")){const e=t.find(`${this.listIdentifier}:not(.masonry-brick)`);t.masonry("appended",e),t.masonry("layout")}}initItems(){(this.$element.find(".tcb-custom-field-source.thrv-rating").length||this.$element.find("[data-shortcode-id*='acf_']").length)&&TCB_Front.dynamicElements.init()}isCarousel(){return"carousel"===this.$element.attr("data-type")}}window.TCB_Front.PostList=e,TCB_Front.setModuleLoadedStatus("post-list",!0)}})(ThriveGlobal.$j);