1(function(){'use strict';var HC=window.HCData||{};var countries=HC.countries||{};var ajaxUrl=HC.ajax_url||'';var strings=HC.strings||{};var defaultOut=HC.default_output_currency||'EUR';function nf(value,currency){try{return new Intl.NumberFormat(undefined,{style:'currency',currency:currency||'EUR'}).format(Number(value||0))}catch(e){return(Number(value||0)).toFixed(2)+' '+(currency||'')}} 2function safeEval(expr,scope){var helpers={roundUp:function(v,step){v=Number(v||0);step=Number(step||1);return Math.ceil(v/step)*step},limitMin:function(v,min){return Math.max(Number(v||0),Number(min||0))},limitMax:function(v,max){return Math.min(Number(v||0),Number(max||0))},eq:function(a,b){return Number(a)===Number(b)?1:0},ne:function(a,b){return Number(a)!==Number(b)?1:0},not:function(v){return(!v||v===0)?1:0}};var s=String(expr);Object.keys(scope).forEach(function(k){var re=new RegExp('\\b'+k+'\\b','g');s=s.replace(re,'('+Number(scope[k]||0)+')')});try{var fn=new Function('helpers','with(helpers){ return ('+s+'); }');return fn(helpers)}catch(e){console.warn('safeEval error',e,expr,s);return 0}} 3function fetchJson(url){return fetch(url,{credentials:'same-origin'}).then(function(r){if(!r.ok)throw new Error('Fetch failed');return r.json()})} 4function fetchRates(base,symbols){var params={action:'hc_get_rates',base:base||'EUR'};if(symbols)params.symbols=symbols;var query=Object.keys(params).map(function(k){return encodeURIComponent(k)+'='+encodeURIComponent(params[k])}).join('&');return fetch(ajaxUrl+'?'+query,{credentials:'same-origin'}).then(r=>r.json())} 5function convertLocalToOut(amountLocal,countryJson,outCurrency,ratesData){if(!countryJson)return Number(amountLocal||0);if(countryJson.exchange_rates&&countryJson.exchange_rates[outCurrency]) 6return Number(amountLocal)*Number(countryJson.exchange_rates[outCurrency]);var rates=ratesData&&ratesData.rates?ratesData.rates:(ratesData&&ratesData.data&&ratesData.data.rates?ratesData.data.rates:null);if(rates){var localCode=countryJson.currencyIsoCode||countryJson.currency||null;if(localCode&&rates[localCode]&&rates[outCurrency]) 7return Number(amountLocal)*(rates[outCurrency]/rates[localCode]);if(rates[outCurrency])return Number(amountLocal)*Number(rates[outCurrency])} 8return Number(amountLocal)} 9function buildResultsFromJson(json,salaryAnnual,bonusAnnual,ratesData,outCurrency){var countryName=(json.country||'').toLowerCase();var numberOfInstalments=json.numberOfInstalments||12;var isItalyOrSpain=countryName.includes('italy')||countryName.includes('spain')||numberOfInstalments===14;var grossMonthly=numberOfInstalments===14?Number(salaryAnnual||0)/14:Number(salaryAnnual||0)/12;var yearlyBonus=Number(bonusAnnual||0);var monthlyBonus=0;var halfYearlyBonus=0;var quarterlyBonus=0;
9var scope={gross:grossMonthly,monthlyBonus:monthlyBonus,yearlyBonus:yearlyBonus,halfYearlyBonus:halfYearlyBonus,quarterlyBonus:quarterlyBonus,invoiceCurrencyConversionRate:json.invoiceCurrencyConversionRate||1,isWorkGlobal:json.isWorkGlobal!==undefined?json.isWorkGlobal:1,isNewDepositLogic:json.isNewDepositLogic!==undefined?json.isNewDepositLogic:0,noticePeriodDays:json.noticePeriodDays||0,signOnBonus:Number(json.signOnBonus||0),customAllowances:0,monthlyRecurringCostByPercent:0,monthlyRecurringCostAbsolute:0};scope.monthlyPayment=scope.gross+scope.customAllowances+scope.monthlyRecurringCostByPercent+scope.monthlyRecurringCostAbsolute;var rows=[],totalAllRows=0;var seen={};function findOtherPaymentsGroupTitle(json){if(!json||!Array.isArray(json.items))return"OTHER PAYMENTS";var found=json.items.find(function(g){return(g.title||"").toLowerCase().includes("other")});return found?(found.title||found.id||"OTHER PAYMENTS"):"OTHER PAYMENTS"} 10if(Array.isArray(json.items)){json.items.forEach(function(group){var groupTitle=group.title||group.id||'';if(Array.isArray(group.items)){group.items.forEach(function(item){function traverse(obj,pathTitle){if(!obj)return;var displayTitle=obj.title||obj.id||'';var tLower=(displayTitle||'').toString().toLowerCase();var isLeaf=obj.amount!==undefined&&(!obj.items||obj.items.length===0);if(isLeaf&&/bonus/i.test(tLower)){return} 11if(obj.amount!==undefined){var expr=obj.amount;var val=0;if(typeof expr==='number'||(/^\s*\d+(\.\d+)?\s*$/.test(String(expr)))){val=Number(expr)}else{try{val=safeEval(expr,scope)}catch(e){val=0}} 12val=Number(val||0);var dedupeKey=(obj.id||'')+'|'+(displayTitle||'');var titleLC=(displayTitle||"").toLowerCase();var idLC=(obj.id||"").toLowerCase();var isDeposit=titleLC==="deposit"||idLC==="deposit"||idLC==="advancepayment"||idLC.includes("deposit");if(isDeposit)return;if(val!==0&&!seen[dedupeKey]){seen[dedupeKey]=!0;totalAllRows+=val;rows.push({group:pathTitle||groupTitle,title:displayTitle,id:obj.id||null,value:val})}} 13if(Array.isArray(obj.items)){obj.items.forEach(function(child){traverse(child,pathTitle||groupTitle)})}} 14traverse(item,groupTitle)})}})} 15var otherGroupTitle=findOtherPaymentsGroupTitle(json);var displayAnnualBonus=0;if(Number(yearlyBonus)>0){displayAnnualBonus=Number(yearlyBonus)} 16var groupTotals={};rows.forEach(function(r){var k=(r.group||'').toString().trim();if(!k)k='ungrouped';groupTotals[k]=(groupTotals[k]||0)+Number(r.value||0)});var monthlyGroupKey=Object.keys(groupTotals).find(k=>/monthly/i.test(k));var otherGroupKey=Object.keys(groupTotals).find(k=>/other/i.test(k));var monthlyTotalLocal=(typeof monthlyGroupKey!=='undefined')?groupTotals[monthlyGroupKey]:scope.monthlyPayment;var otherTotalLocal=(typeof otherGroupKey!=='undefined')?groupTotals[otherGroupKey]:0;if(displayAnnualBonus){var proratedMonthly=Number(displayAnnualBonus)/12;monthlyTotalLocal=Number(monthlyTotalLocal||0)+proratedMonthly} 17var monthlyTotalConverted=convertLocalToOut(monthlyTotalLocal,json,outCurrency,ratesData);return{rows:rows,groupTotals:groupTotals,monthlyTotalLocal:monthlyTotalLocal,otherTotalLocal:otherTotalLocal,totalAllRows:totalAllRows,monthlyTotalConverted:monthlyTotalConverted,currencyLocal:json.currencyIsoCode||json.currency||'--',json:json,ratesData:ratesData,displayAnnualBonus:displayAnnualBonus,displayAnnualBonusGroupTitle:otherGroupTitle}} 18function safeEval(expr,scope){var helpers={roundUp:function(v,step){v=Number(v||0);step=Number(step||1);return Math.ceil(v/step)*step},limitMin:function(v,min){return Math.max(Number(v||0),Number(min||0))},limitMax:function(v,max){return Math.min(Number(v||0),Number(max||0))},eq:function(a,b){return Number(a)===Number(b)?1:0},ne:function(a,b){return Number(a)!==Number(b)?1:0},not:function(v){return(!v||v===0)?1:0}};var s=String(expr);Object.keys(scope).forEach(function(k){var re=new RegExp('\\b'+k+'\\b','g');s=s.replace(re,'('+Number(scope[k]||0)+')')});try{var fn=new Function('helpers','with(helpers){ return ('+s+'); }');return fn(helpers)}catch(e){console.warn('safeEval error',e,expr,s);return 0}} 19function convertLocalToOut(amountLocal,countryJson,outCurrency,ratesData){if(!countryJson)return Number(amountLocal||0
19);if(countryJson.exchange_rates&&countryJson.exchange_rates[outCurrency]) 20return Number(amountLocal)*Number(countryJson.exchange_rates[outCurrency]);var rates=ratesData&&ratesData.rates?ratesData.rates:(ratesData&&ratesData.data&&ratesData.data.rates?ratesData.data.rates:null);if(rates){var localCode=countryJson.currencyIsoCode||countryJson.currency||null;if(localCode&&rates[localCode]&&rates[outCurrency]) 21return Number(amountLocal)*(rates[outCurrency]/rates[localCode]);if(rates[outCurrency])return Number(amountLocal)*Number(rates[outCurrency])} 22return Number(amountLocal)} 23function el(tag,cls){var e=document.createElement(tag||'div');if(cls)e.className=cls;return e} 24function slideDown(elem){if(!elem)return;elem.style.display='block';var height=elem.scrollHeight;elem.style.transition='max-height 300ms ease';elem.style.overflow='hidden';elem.style.maxHeight='0px';void elem.offsetWidth;elem.style.maxHeight=height+'px';window.setTimeout(function(){elem.style.maxHeight='';elem.style.overflow='';elem.style.transition=''},320)} 25function slideUp(elem){if(!elem)return;elem.style.transition='max-height 300ms ease';elem.style.overflow='hidden';elem.style.maxHeight=elem.scrollHeight+'px';void elem.offsetWidth;elem.style.maxHeight='0px';window.setTimeout(function(){elem.style.display='none';elem.style.maxHeight='';elem.style.overflow='';elem.style.transition=''},320)} 26function computeGroupTotal(nodeTitle,data){if(!nodeTitle)return 0;let key=Object.keys(data.groupTotals).find(k=>k.trim().toLowerCase()===nodeTitle.trim().toLowerCase());if(!key){key=Object.keys(data.groupTotals).find(k=>k.toLowerCase().includes(nodeTitle.toLowerCase()))} 27return key?Number(data.groupTotals[key]||0):0} 28function buildRowIndex(rows){var byId={},byTitle={};(rows||[]).forEach(function(r){if(r.id)byId[r.id]=r;if(r.title)byTitle[(r.title||'').toString().toLowerCase()]=r});return{byId:byId,byTitle:byTitle,rows:rows}} 29function findRowForNode(node,index){if(!node)return null;if(node.id&&index.byId[node.id])return index.byId[node.id];if(node.title&&index.byTitle[(node.title||'').toString().toLowerCase()])return index.byTitle[(node.title||'').toString().toLowerCase()];if(node.title){var t=(node.title||'').toString().toLowerCase();for(var i=0;i<index.rows.length;i++){var rr=index.rows[i];if((rr.title||'').toString().toLowerCase()===t)return rr} 30for(var j=0;j<index.rows.length;j++){var rr2=index.rows[j];if((rr2.title||'').toString().toLowerCase().indexOf(t)!==-1)return rr2}} 31return null} 32function renderResults(container,data,outCurrency){function computeNodeSubtotal(node,index,data){var total=0;(function walk(n){if(!n)return;if(n.amount!==undefined&&(!n.items||n.items.length===0)){var r=findRowForNode(n,index);if(r)total+=Number(r.value||0);return} 33if(Array.isArray(n.items)){n.items.forEach(walk)}})(node);return total} 34if(!container)return;container.style.display='block';container.innerHTML='';var header=el('div','hc-results-header');var titleEl=el('div','hc-results-title');titleEl.textContent=data.title||'';header.appendChild(titleEl);container.appendChild(header);var index=buildRowIndex(data.rows||[]);var renderedKeys={};function renderLeafRow(r,parentEl){if(!r)return;var key=((r.id||'')+'|'+(r.title||'')).toString().toLowerCase();if(renderedKeys[key])return;renderedKeys[key]=!0;var wrapper=el('div','hc-row hc-leaf-row');var left=el('div','hc-item hc-leaf-text');left.textContent=r.title||'(item)';var rightLocal=el('div','hc-col-right');rightLocal.textContent=nf(r.value,data.currencyLocal);var rightConv=el('div','hc-col-right');rightConv.textContent=nf(convertLocalToOut(r.value,data.json,outCurrency,data.ratesData),outCurrency);wrapper.appendChild(left);wrapper.appendChild(rightLocal);wrapper.appendChild(rightConv);parentEl.appendChild(wrapper)} 35function renderCategoryHeader(node,parentEl){var title=node.title||node.id||'';var totalAmount=computeNodeSubtotal(node,index,data);var headerRow=el('div','hc-category-header');var left=el('div','hc-category-title');left.textContent=title;var rightLocal=el('div','hc-col-right hc-category-total');rightLocal.textContent=totalAmount?nf(totalAmount,data.currencyLocal):'';var rightConv=el('div','hc-col-right hc-category-total-conv');rightConv.textContent=totalAmount?nf(convertLocalToOut(totalAmount,data.json,outCurrency,data.ratesData),outCurrency):'';headerRow.appendChild(left);headerRow.appendChild(rightLocal);headerRow.appendChild(rightConv);parentEl.appendChild(headerRow)} 36function renderExpandableSubcategory(node,parentEl){var collected=[];(function collect(n){if(!n)return;
36if(Array.isArray(n.items)&&n.items.length)n.items.forEach(collect);else{var rr=findRowForNode(n,index);if(rr)collected.push(rr)}})(node);if(collected.length===0)return;var row=el('div','hc-row hc-subcategory');var left=el('div','hc-item hc-subcategory-title');left.textContent=node.title||node.id||'';var rightLocal=el('div','hc-col-right hc-subcategory-total');var subTotal=computeNodeSubtotal(node,index,data);rightLocal.textContent=subTotal?nf(subTotal,data.currencyLocal):'';var rightConv=el('div','hc-col-right hc-subcategory-total-conv');rightConv.textContent=subTotal?nf(convertLocalToOut(subTotal,data.json,outCurrency,data.ratesData),outCurrency):'';var chevron=document.createElement("img");chevron.className="hc-chevron";chevron.src="https://workmotion.com/wp-content/uploads/2025/11/Chevron.svg";var titleWrap=el('div','hc-subcat-titlewrap');titleWrap.appendChild(left);titleWrap.appendChild(chevron);var totalsWrap=el('div','hc-subcat-totals');totalsWrap.appendChild(rightLocal);totalsWrap.appendChild(rightConv);row.appendChild(titleWrap);row.appendChild(totalsWrap);var content=el('div','hc-subcontent');content.style.display='none';(function renderLeaves(n){if(!n)return;if(Array.isArray(n.items)&&n.items.length){n.items.forEach(renderLeaves)}else{var rr=findRowForNode(n,index);if(rr)renderLeafRow(rr,content)}})(node);row.addEventListener('click',function(){var isOpen=row.classList.contains('open');if(isOpen){row.classList.remove('open');chevron.style.transform='';slideUp(content)}else{row.classList.add('open');chevron.style.transform='rotate(90deg)';slideDown(content)}});parentEl.appendChild(row);parentEl.appendChild(content)}
37function renderSection(sectionNode){var section=el('div','hc-section');var sectionTitle=el('div','hc-section-title');sectionTitle.textContent=(sectionNode.title||sectionNode.id||'').toString().toUpperCase();section.appendChild(sectionTitle);if(Array.isArray(sectionNode.items)&§ionNode.items.length){sectionNode.items.forEach(function(category){var collected=[];(function collect(n){if(!n)return;if(Array.isArray(n.items)&&n.items.length){n.items.forEach(collect);return} 38var rr=findRowForNode(n,index);if(rr)collected.push(rr)})(category);if(collected.length===0){return} 39renderCategoryHeader(category,section);category.items.forEach(function(child){if(Array.isArray(child.items)&&child.items.length){renderExpandableSubcategory(child,section);return} 40var rr=findRowForNode(child,index);if(rr&&rr.title.toLowerCase().includes("monthly bonus")){return} 41if(rr)renderLeafRow(rr,section)})});if((sectionNode.title||"").toLowerCase().includes("other")){if(data.displayAnnualBonus&&Number(data.displayAnnualBonus)>0){var infoRow={id:"annualBonus",title:"Annual Bonus",value:Number(data.displayAnnualBonus)};renderLeafRow(infoRow,section)}}} 42return section} 43var mainWrap=el('div','hc-accordion-wrap hc-results-newlayout');try{if(data.json&&Array.isArray(data.json.items)){var groups=data.json.items.slice();var monthlyIdx=groups.findIndex(g=>(g.title||'').toLowerCase().includes('monthly'));if(monthlyIdx>-1){var m=groups.splice(monthlyIdx,1)[0];groups.unshift(m)} 44groups.forEach(function(top){var sec=renderSection(top);if(sec.querySelectorAll('.hc-row, .hc-leaf-row, .hc-category-header, .hc-subcategory').length){mainWrap.appendChild(sec)}})}else{(data.rows||[]).forEach(function(r){renderLeafRow(r,mainWrap)})}}catch(e){console.warn('renderResults traversal failed',e);(data.rows||[]).forEach(function(r){renderLeafRow(r,mainWrap)})} 45container.appendChild(mainWrap);var totalsWrap=el('div','hc-totals-wrap');totalsWrap.style.marginTop='12px';var monthlyLocal=Number(data.monthlyTotalLocal||0);var monthlyConverted=convertLocalToOut(monthlyLocal,data.json,outCurrency,data.ratesData);var monthlyHtml='<div class="hc-row total monthly"><div class="hc-item"><strong>Total Monthly Payment</strong></div>'+'<div class="hc-col-right"><strong>'+nf(monthlyLocal,data.currencyLocal)+'</strong></div>'+'<div class="hc-col-right"><strong>'+nf(monthlyConverted,outCurrency)+'</strong></div></div>';totalsWrap.innerHTML+=monthlyHtml;var annualLocal=Number(monthlyLocal*12||0);var annualConverted=convertLocalToOut(annualLocal,data.json,outCurrency,data.ratesData);var annualHtml='<div class="hc-row total annual">'+'<div class="hc-item"><strong>Total Annual Payments</strong></div>'+'<div class="hc-col-right"><strong>'+nf(annualLocal,data.currencyLocal)+'</strong></div>'+'<div class="hc-col-right"><strong>'+nf(annualConverted,outCurrency)+'</strong></div>'+'</div>'+'<p class="hc-note-fees">'+'+ WorkMotion <a href="https://workmotion.com/pricing" target="_blank" style="color:#05AC92 !important; font-weight:600;">Service Fees</a><br>'+'+ Any applicable local taxes/VAT'+'</p>';totalsWrap.innerHTML+=annualHtml;container.appendChild(totalsWrap)} 46function getResultsContainer(sel){var container=document.getElementById('hc-results-shortcode');if(container)return container;try{var closest=sel.closest('.hc-calculator');if(closest){var inside=closest.querySelector('.hc-results');if(inside)return inside}}catch(e){} 47var byId=document.getElementById('hc-results');if(byId)return byId;var byClass=document.querySelector('.hc-results');if(byClass)return byClass;try{var wrapper=document.createElement('div');wrapper.className='hc-results';wrapper.id='hc-results';if(sel.parentNode&&sel.parentNode.parentNode)sel.parentNode.parentNode.insertBefore(wrapper,sel.parentNode.nextSibling);else if(sel.parentNode)sel.parentNode.appendChild(wrapper);else document.body.appendChild(wrapper);return wrapper}catch(e){return null}} 48document.addEventListener('DOMContentLoaded',function(){var sel=document.getElementById('hc-country');var salaryEl=document.getElementById('hc-salary');var bonusEl=document.getElementById('hc-bonus');var outSel=document.getElementById('hc-currency');var convEl=document.getElementById('hc-conversion');var convCode=document.getElementById('hc-conversion-code');var localCode=document.getElementById('hc-local-currency');var bonusCode=document.getElementById('hc-bonus-currency');if(!sel)return;function initCountrySelect2(){var $sel=jQuery('#hc-country');if(!$sel.length)return;$sel.empty();$sel.append(jQuery('<option>',{value:'',text:strings.select_country||'Select country'}));
48Object.keys(countries).forEach(function(code){var it=countries[code];$sel.append(jQuery('<option>',{value:code,text:it.label||code,'data-file':it.file_url||'','data-flag':it.flag||''}))});if($sel.data('select2')){try{$sel.select2('destroy')}catch(e){}} 49$sel.select2({templateResult:formatCountry,templateSelection:formatCountry,minimumResultsForSearch:1,dropdownParent:$sel.closest('.elementor-select-wrapper')});function formatCountry(option){if(!option.id)return option.text;var flag=jQuery(option.element).data('flag');if(!flag)return option.text;return jQuery('<span><img src="'+flag+'" style="width:14px;height:14px;border-radius:50%;margin-right:6px;vertical-align:middle;">'+option.text+'</span>')} 50$sel.on('change',function(){var code=this.value;var imgLink=document.getElementById("hc-country-img-link");if(!code){if(imgLink)imgLink.style.display="none"}else{var label=(this.selectedOptions?this.selectedOptions[0].textContent:jQuery(this).find(":selected").text()).trim();var slug=label.toLowerCase().replace(/[^a-z0-9\s-]/g,"").replace(/\s+/g,"-").replace(/-+/g,"-");var url="https://workmotion.com/countries/"+slug+"/";if(imgLink){imgLink.href=url;imgLink.style.display="block"}} 51var linkEl=document.getElementById("hc-country-link");if(linkEl){if(!code){linkEl.style.display="none"}else{var label=jQuery(this).find(":selected").text().trim();var slug=label.toLowerCase().replace(/[^a-z0-9\s-]/g,"").replace(/\s+/g,"-").replace(/-+/g,"-");var finalUrl="https://workmotion.com/countries/"+slug+"/";linkEl.href=finalUrl;linkEl.textContent="View Our "+label+" Country Guide";linkEl.style.display="block"}} 52if(!code){if(convEl)convEl.value='';if(convCode)convCode.textContent='--';if(localCode)localCode.textContent='--';if(bonusCode)bonusCode.textContent='--';var container=getResultsContainer(sel);if(container)container.style.display='none';latestJson=null;return} 53var fileUrl=jQuery(this).find(':selected').data('file');if(!fileUrl)return;fetchJson(fileUrl).then(function(json){latestJson=json;if(localCode)localCode.textContent=json.currencyIsoCode||json.currency||'--';if(bonusCode)bonusCode.textContent=json.currencyIsoCode||json.currency||'--';if(convCode)convCode.textContent=outSel.value||defaultOut;if(convEl)convEl.value='';return fetchRates('EUR')}).then(function(ratesResp){latestRates=(ratesResp&&ratesResp.success)?ratesResp.data:(ratesResp&&ratesResp.rates?ratesResp:null);recomputeAndRender()}).catch(function(e){console.warn('Load failed',e);recomputeAndRender()})})} 54function initCurrencySelect2(){var $sel=jQuery('#hc-currency');if(!$sel.length)return;if($sel.data('select2')){try{$sel.select2('destroy')}catch(e){}} 55$sel.select2({templateResult:formatCurrency,templateSelection:formatCurrency,minimumResultsForSearch:-1,dropdownParent:$sel.closest('.elementor-select-wrapper')});function formatCurrency(option){if(!option.id)return option.text;var flag=jQuery(option.element).data('flag');var code=option.text;if(!flag)return code;var $html=jQuery(`<span style="display:flex;align-items:center;gap:6px;"> 56 <img src="${flag}" style="width:16px;height:16px;border-radius:50%;"> 57 ${code} 58 </span>`);return $html}} 59initCountrySelect2();initCurrencySelect2();var latestJson=null,latestRates=null;function recomputeAndRender(){if(!latestJson)return;var salary=Number(salaryEl.value||0);var bonus=Number(bonusEl.value||0);var outCurrency=outSel.value||defaultOut;var summary=buildResultsFromJson(latestJson,salary,bonus,latestRates||null,outCurrency);var renderData={title:(latestJson.country||'')+'Estimated cost',rows:summary.rows,groupTotals:summary.groupTotals,monthlyTotalLocal:summary.monthlyTotalLocal,otherTotalLocal:summary.otherTotalLocal,totalLocal:summary.totalAllRows,monthlyTotalConverted:summary.monthlyTotalConverted,currencyLocal:summary.currencyLocal,json:summary.json,ratesData:summary.ratesData,displayAnnualBonus:summary.displayAnnualBonus,displayAnnualBonusGroupTitle:summary.displayAnnualBonusGroupTitle};var container=getResultsContainer(sel);if(container)renderResults(container,renderData,outCurrency);if(convEl)convEl.value=nf(convertLocalToOut(salary,latestJson,outCurrency,latestRates),outCurrency);if(convCode)convCode.textContent=outCurrency;
59if(localCode)localCode.textContent=latestJson.currencyIsoCode||latestJson.currency||'--';if(bonusCode)bonusCode.textContent=latestJson.currencyIsoCode||latestJson.currency||'--'} 60sel.addEventListener('change',function(){var code=this.value;var imgLink=document.getElementById("hc-country-img-link");if(!code){if(imgLink)imgLink.style.display="none"}else{var label=(this.selectedOptions?this.selectedOptions[0].textContent:jQuery(this).find(":selected").text()).trim();var slug=label.toLowerCase().replace(/[^a-z0-9\s-]/g,"").replace(/\s+/g,"-").replace(/-+/g,"-");var url="https://workmotion.com/countries/"+slug+"/";if(imgLink){imgLink.href=url;imgLink.style.display="block"}} 61var linkEl=document.getElementById("hc-country-link");if(linkEl){if(!code){linkEl.style.display="none"}else{var label=this.selectedOptions[0].textContent.trim();var slug=label.toLowerCase().replace(/[^a-z0-9\s-]/g,"").replace(/\s+/g,"-").replace(/-+/g,"-");var finalUrl="https://workmotion.com/countries/"+slug+"/";linkEl.href=finalUrl;linkEl.textContent="View Our "+label+" Country Guide";linkEl.style.display="block"}} 62if(!code){if(convEl)convEl.value='';if(convCode)convCode.textContent='--';if(localCode)localCode.textContent='--';if(bonusCode)bonusCode.textContent='--';var container=getResultsContainer(sel);if(container)container.style.display='none';latestJson=null;return} 63var fileUrl=this.selectedOptions[0].getAttribute('data-file');if(!fileUrl)return;fetchJson(fileUrl).then(function(json){latestJson=json;if(localCode)localCode.textContent=json.currencyIsoCode||json.currency||'--';if(bonusCode)bonusCode.textContent=json.currencyIsoCode||json.currency||'--';if(convCode)convCode.textContent=outSel.value||defaultOut;if(convEl)convEl.value='';return fetchRates('EUR')}).then(function(ratesResp){latestRates=(ratesResp&&ratesResp.success)?ratesResp.data:(ratesResp&&ratesResp.rates?ratesResp:null);recomputeAndRender()}).catch(function(e){console.warn('Load failed',e);recomputeAndRender()})});salaryEl&&salaryEl.addEventListener('input',recomputeAndRender);bonusEl&&bonusEl.addEventListener('input',recomputeAndRender);outSel&&outSel.addEventListener('change',recomputeAndRender);var calcBtn=document.getElementById('hc-calc');if(calcBtn){calcBtn.addEventListener('click',function(e){e.preventDefault();recomputeAndRender();var resultsSection=document.getElementById('hc-results-shortcode')||document.getElementById('hc-results');if(resultsSection){resultsSection.scrollIntoView({behavior:'smooth',block:'start'})}})} 64var resetBtn=document.getElementById('hc-reset');if(resetBtn)resetBtn.addEventListener('click',function(e){e.preventDefault();salaryEl.value='';bonusEl.value='';if(convEl)convEl.value='';if(convCode)convCode.textContent='--';if(localCode)localCode.textContent='--';if(bonusCode)bonusCode.textContent='--';var container=getResultsContainer(sel);if(container)container.style.display='none'})})})()
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.