File: /var/www/html/ielts-store/wp-content/plugins/automatewoo/assets/js/automatewoo-presubmit.min.js.map
{"version":3,"sources":["assets/js/automatewoo-presubmit.js"],"names":["jQuery","$","automatewoo_presubmit_params","capture_email_xhr","params","guest_id","parseInt","email","$checkout_form","email_fields","email_capture_selectors","checkout_fields","checkout_capture_selectors","checkout_fields_data","language","captureCheckoutField","field_name","this","attr","field_value","val","indexOf","post","ajax_url","toString","replace","getCheckoutFieldValues","fields","each","i","document","on","join","data","abort","response","success"],"mappings":"AAAAA,QAAO,SAASC,GAEZ,GAA6C,oBAAjCC,6BACR,OAAO,EAGX,IASIC,EATAC,EAASF,6BAETG,EAAWC,SAAUF,EAAOC,UAC5BE,EAAQ,GACRC,EAAiBP,EAAG,iBACpBQ,EAAeL,EAAOM,wBACtBC,EAAkBP,EAAOQ,2BACzBC,EAAuB,GACvBC,EAAWV,EAAOU,SA+BtB,SAASC,IACL,IAAIC,EAAaf,EAAEgB,MAAMC,KAAM,QAC3BC,EAAclB,EAAEgB,MAAMG,MAEnBJ,IAAyD,IAA3CL,EAAgBU,QAASL,IAKvCG,GAAeN,EAAqBG,KAAgBG,IAI3DN,EAAqBG,GAAcG,EAE9Bd,GACDJ,EAAEqB,KAAMlB,EAAOmB,SAASC,WAAWC,QAAS,eAAgB,0BAA4B,CACpFpB,SAAUA,EACVW,WAAYA,EACZG,YAAaA,KAUzB,SAASO,IACL,IAAIC,EAAS,GAMb,OAJA1B,EAAE2B,KAAMjB,GAAiB,SAAUkB,EAAGb,GAClCW,EAAOX,GAAcf,EAAE,oCAAoCe,EAAW,MAAMI,SAGzEO,EAhEX1B,EAAE2B,KAAMjB,GAAiB,SAAUkB,EAAGb,GAClCH,EAAqBG,GAAc,MAmEvCf,EAAE6B,UAAUC,GAAI,cAAetB,EAAauB,KAAK,OAhEjD,WACI,GAAO/B,EAAEgB,MAAMG,OAASb,IAAUN,EAAEgB,MAAMG,MAA1C,CAMA,IAAIa,EAAO,CACP1B,MAHJA,EAAQN,EAAEgB,MAAMG,MAIZN,SAAUA,EACVH,gBAAiBe,KAGhBvB,GACDA,EAAkB+B,QAGtB/B,EAAoBF,EAAEqB,KAAMlB,EAAOmB,SAASC,WAAWC,QAAS,eAAgB,iBAAmBQ,GAAM,SAAUE,GAC1GA,GAAYA,EAASC,UACtB/B,EAAW8B,EAASF,KAAK5B,iBA8CrCG,EAAeuB,GAAI,SAAU,SAAUhB,GACvCP,EAAeuB,GAAI,cAAe,cAAehB","file":"automatewoo-presubmit.min.js","sourcesContent":["jQuery(function($) {\n\n    if ( typeof automatewoo_presubmit_params === 'undefined' ) {\n        return false;\n    }\n\n    var params = automatewoo_presubmit_params;\n\n    var guest_id = parseInt( params.guest_id );\n    var email = '';\n    var $checkout_form = $( 'form.checkout' );\n    var email_fields = params.email_capture_selectors;\n    var checkout_fields = params.checkout_capture_selectors;\n    var checkout_fields_data = {};\n    var language = params.language;\n    var capture_email_xhr;\n\n    $.each( checkout_fields, function( i, field_name ) {\n        checkout_fields_data[field_name] = '';\n    });\n\n    function captureEmail() {\n        if ( ! $(this).val() || email === $(this).val() ) {\n            return;\n        }\n\n        email = $(this).val();\n\n        var data = {\n            email: email,\n            language: language,\n            checkout_fields: getCheckoutFieldValues()\n        };\n\n        if ( capture_email_xhr ) {\n            capture_email_xhr.abort();\n        }\n\n        capture_email_xhr = $.post( params.ajax_url.toString().replace( '%%endpoint%%', 'capture_email' ), data, function( response ) {\n            if ( response && response.success ) {\n                guest_id = response.data.guest_id;\n            }\n        });\n    }\n\n    function captureCheckoutField() {\n        var field_name = $(this).attr( 'name' );\n        var field_value = $(this).val();\n\n        if ( ! field_name || checkout_fields.indexOf( field_name ) === -1  ) {\n            return;\n        }\n\n        // Don't capture if the field is empty or hasn't changed\n        if ( ! field_value || checkout_fields_data[field_name] === field_value ) {\n            return;\n        }\n\n        checkout_fields_data[field_name] = field_value;\n\n        if ( guest_id ) {\n            $.post( params.ajax_url.toString().replace( '%%endpoint%%', 'capture_checkout_field' ), {\n                guest_id: guest_id,\n                field_name: field_name,\n                field_value: field_value\n            });\n        }\n    }\n\n    /**\n     * Get the current values for checkout fields.\n     *\n     * @return object\n     */\n    function getCheckoutFieldValues() {\n        var fields = {};\n\n        $.each( checkout_fields, function( i, field_name ) {\n            fields[field_name] = $('form.woocommerce-checkout [name=\"'+field_name+'\"]').val();\n        });\n\n        return fields;\n    }\n\n\n    $(document).on( 'blur change', email_fields.join(', '), captureEmail );\n    $checkout_form.on( 'change', 'select', captureCheckoutField );\n    $checkout_form.on( 'blur change', '.input-text', captureCheckoutField );\n\n});\n"]}