@salla.sa/twilight-components 2.12.24 → 2.12.25
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/{app-globals-5d5a2ba9.js → app-globals-7e58a3aa.js} +2 -2
- package/dist/cjs/app-globals-7e58a3aa.js.map +1 -0
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/twilight.cjs.js +1 -1
- package/dist/components/index.js +1 -1
- package/dist/components/index.js.map +1 -1
- package/dist/esm/{app-globals-e12d5824.js → app-globals-eca190e6.js} +2 -2
- package/dist/esm/app-globals-eca190e6.js.map +1 -0
- package/dist/esm/loader.js +1 -1
- package/dist/esm/twilight.js +1 -1
- package/dist/esm-es5/{app-globals-e12d5824.js → app-globals-eca190e6.js} +2 -2
- package/dist/esm-es5/{app-globals-e12d5824.js.map → app-globals-eca190e6.js.map} +1 -1
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/twilight.js +1 -1
- package/dist/twilight/{p-0bf750e0.system.js → p-66d3f9cc.system.js} +2 -2
- package/dist/twilight/{p-0bf750e0.system.js.map → p-66d3f9cc.system.js.map} +1 -1
- package/dist/twilight/{p-d656ec30.system.js → p-6c1a9797.system.js} +2 -2
- package/dist/twilight/{p-f5998aa9.js → p-6fc88c16.js} +2 -2
- package/dist/twilight/{p-f5998aa9.js.map → p-6fc88c16.js.map} +1 -1
- package/dist/twilight/twilight.esm.js +1 -1
- package/dist/twilight/twilight.js +1 -1
- package/package.json +5 -5
- package/dist/cjs/app-globals-5d5a2ba9.js.map +0 -1
- package/dist/esm/app-globals-e12d5824.js.map +0 -1
- /package/dist/twilight/{p-d656ec30.system.js.map → p-6c1a9797.system.js.map} +0 -0
|
@@ -21,5 +21,5 @@ import{c as t,a as e}from"./p-f84bae34.js";var n=Array.isArray;var i=n;var r=typ
|
|
|
21
21
|
* @site https://github.com/rmariuzzo/Lang.js
|
|
22
22
|
* @author Rubens Mariuzzo <rubens@mariuzzo.com>
|
|
23
23
|
*/
|
|
24
|
-
(function(t,n){{e.exports=n()}})(t,(function(){function t(){if(typeof document!=="undefined"&&document.documentElement){return document.documentElement.lang}}function e(t){if(t==="-Inf"){return-Infinity}else if(t==="+Inf"||t==="Inf"||t==="*"){return Infinity}return parseInt(t,10)}var n=/^({\s*(\-?\d+(\.\d+)?[\s*,\s*\-?\d+(\.\d+)?]*)\s*})|([\[\]])\s*(-Inf|\*|\-?\d+(\.\d+)?)\s*,\s*(\+?Inf|\*|\-?\d+(\.\d+)?)\s*([\[\]])$/;var i=/({\s*(\-?\d+(\.\d+)?[\s*,\s*\-?\d+(\.\d+)?]*)\s*})|([\[\]])\s*(-Inf|\*|\-?\d+(\.\d+)?)\s*,\s*(\+?Inf|\*|\-?\d+(\.\d+)?)\s*([\[\]])/;var r={locale:"en"};var a=function(e){e=e||{};this.locale=e.locale||t()||r.locale;this.fallback=e.fallback;this.messages=e.messages};a.prototype.setMessages=function(t){this.messages=t};a.prototype.getLocale=function(){return this.locale||this.fallback};a.prototype.setLocale=function(t){this.locale=t};a.prototype.getFallback=function(){return this.fallback};a.prototype.setFallback=function(t){this.fallback=t};a.prototype.has=function(t,e){if(typeof t!=="string"||!this.messages){return false}return this._getMessage(t,e)!==null};a.prototype.get=function(t,e,n){if(!this.has(t,n)){return t}var i=this._getMessage(t,n);if(i===null){return t}if(e){i=this._applyReplacements(i,e)}return i};a.prototype.trans=function(t,e){return this.get(t,e)};a.prototype.choice=function(t,e,n,r){n=typeof n!=="undefined"?n:{};n.count=e;var a=this.get(t,n,r);if(a===null||a===undefined){return a}var s=a.split("|");var o=[];for(var l=0;l<s.length;l++){s[l]=s[l].trim();if(i.test(s[l])){var u=s[l].split(/\s/);o.push(u.shift());s[l]=u.join(" ")}}if(s.length===1){return a}for(var c=0;c<o.length;c++){if(this._testInterval(e,o[c])){return s[c]}}r=r||this._getLocale(t);var f=this._getPluralForm(e,r);return s[f]};a.prototype.transChoice=function(t,e,n){return this.choice(t,e,n)};a.prototype._parseKey=function(t,e){if(typeof t!=="string"||typeof e!=="string"){return null}var n=t.split(".");var i=n[0].replace(/\//g,".");return{source:e+"."+i,sourceFallback:this.getFallback()+"."+i,entries:n.slice(1)}};a.prototype._getMessage=function(t,e){e=e||this.getLocale();t=this._parseKey(t,e);if(this.messages[t.source]===undefined&&this.messages[t.sourceFallback]===undefined){return null}var n=this.messages[t.source];var i=t.entries.slice();var r=i.join(".");n=n!==undefined?this._getValueInKey(n,r):undefined;if(typeof n!=="string"&&this.messages[t.sourceFallback]){n=this.messages[t.sourceFallback];i=t.entries.slice();r="";while(i.length&&n!==undefined){var r=!r?i.shift():r.concat(".",i.shift());if(n[r]){n=n[r];r=""}}}if(typeof n!=="string"){return null}return n};a.prototype._getValueInKey=function(t,e){if(typeof t[e]==="string"){return t[e]}e=e.replace(/\[(\w+)\]/g,".$1");e=e.replace(/^\./,"");var n=e.split(".");for(var i=0,r=n.length;i<r;++i){var a=n.slice(0,i+1).join(".");var s=n.slice(i+1,n.length).join(".");if(t[a]){return this._getValueInKey(t[a],s)}}return t};a.prototype._getLocale=function(t){t=this._parseKey(t,this.locale);if(this.messages[t.source]){return this.locale}if(this.messages[t.sourceFallback]){return this.fallback}return null};a.prototype._findMessageInTree=function(t,e){while(t.length&&e!==undefined){var n=t.join(".");if(e[n]){e=e[n];break}e=e[t.shift()]}return e};a.prototype._sortReplacementKeys=function(t,e){return e.length-t.length};a.prototype._applyReplacements=function(t,e){var n=Object.keys(e).sort(this._sortReplacementKeys);n.forEach((function(n){t=t.replace(new RegExp(":"+n,"gi"),(function(t){var i=e[n];var r=t===t.toUpperCase();if(r){return i.toUpperCase()}var a=t===t.replace(/\w/i,(function(t){return t.toUpperCase()}));if(a){return i.charAt(0).toUpperCase()+i.slice(1)}return i}))}));return t};a.prototype._testInterval=function(t,i){if(typeof i!=="string"){throw"Invalid interval: should be a string."}i=i.trim();var r=i.match(n);if(!r){throw"Invalid interval: "+i}if(r[2]){var a=r[2].split(",");for(var s=0;s<a.length;s++){if(parseInt(a[s],10)===t){return true}}}else{r=r.filter((function(t){return!!t}));var o=r[1];var l=e(r[2]);if(l===Infinity){l=-Infinity}var u=e(r[3]);var c=r[4];return(o==="["?t>=l:t>l)&&(c==="]"?t<=u:t<u)}return false};a.prototype._getPluralForm=function(t,e){switch(e){case"az":case"bo":case"dz":case"id":case"ja":case"jv":case"ka":case"km":case"kn":case"ko":case"ms":case"th":case"tr":case"vi":case"zh":return 0;case"af":case"bn":case"bg":case"ca":case"da":case"de":case"el":case"en":case"eo":case"es":case"et":case"eu":case"fa":case"fi":case"fo":case"fur":case"fy":case"gl":case"gu":case"ha":case"he":case"hu":case"is":case"it":case"ku":case"lb":case"ml":case"mn":case"mr":case"nah":case"nb":case"ne":case"nl":case"nn":case"no":case"om":case"or":case"pa":case"pap":case"ps":case"pt":case"so":case"sq":case"sv":case"sw":case"ta":case"te":case"tk":case"ur":case"zu":return t==1?0:1;case"am":case"bh":case"fil":case"fr":case"gun":case"hi":case"hy":case"ln":case"mg":case"nso":case"xbr":case"ti":case"wa":return t===0||t===1?0:1;case"be":case"bs":case"hr":case"ru":case"sr":case"uk":return t%10==1&&t%100!=11?0:t%10>=2&&t%10<=4&&(t%100<10||t%100>=20)?1:2;case"cs":case"sk":return t==1?0:t>=2&&t<=4?1:2;case"ga":return t==1?0:t==2?1:2;case"lt":return t%10==1&&t%100!=11?0:t%10>=2&&(t%100<10||t%100>=20)?1:2;case"sl":return t%100==1?0:t%100==2?1:t%100==3||t%100==4?2:3;case"mk":return t%10==1?0:1;case"mt":return t==1?0:t===0||t%100>1&&t%100<11?1:t%100>10&&t%100<20?2:3;case"lv":return t===0?0:t%10==1&&t%100!=11?1:2;case"pl":return t==1?0:t%10>=2&&t%10<=4&&(t%100<12||t%100>14)?1:2;case"cy":return t==1?0:t==2?1:t==8||t==11?2:3;case"ro":return t==1?0:t===0||t%100>0&&t%100<20?1:2;case"ar":return t===0?0:t==1?1:t==2?2:t%100>=3&&t%100<=10?3:t%100>=11&&t%100<=99?4:5;default:return 0}};return a}))}));var Ii=function t(e,n){return function t(){var i=new Array(arguments.length);for(var r=0;r<i.length;r++){i[r]=arguments[r]}return e.apply(n,i)}};var Ri=Object.prototype.toString;var Ci=function(t){return function(e){var n=Ri.call(e);return t[n]||(t[n]=n.slice(8,-1).toLowerCase())}}(Object.create(null));function Pi(t){t=t.toLowerCase();return function e(n){return Ci(n)===t}}function Li(t){return Array.isArray(t)}function Di(t){return typeof t==="undefined"}function Ni(t){return t!==null&&!Di(t)&&t.constructor!==null&&!Di(t.constructor)&&typeof t.constructor.isBuffer==="function"&&t.constructor.isBuffer(t)}var $i=Pi("ArrayBuffer");function qi(t){var e;if(typeof ArrayBuffer!=="undefined"&&ArrayBuffer.isView){e=ArrayBuffer.isView(t)}else{e=t&&t.buffer&&$i(t.buffer)}return e}function Ui(t){return typeof t==="string"}function zi(t){return typeof t==="number"}function Mi(t){return t!==null&&typeof t==="object"}function Bi(t){if(Ci(t)!=="object"){return false}var e=Object.getPrototypeOf(t);return e===null||e===Object.prototype}var Ji=Pi("Date");var Gi=Pi("File");var Hi=Pi("Blob");var Vi=Pi("FileList");function Qi(t){return Ri.call(t)==="[object Function]"}function Wi(t){return Mi(t)&&Qi(t.pipe)}function Xi(t){var e="[object FormData]";return t&&(typeof FormData==="function"&&t instanceof FormData||Ri.call(t)===e||Qi(t.toString)&&t.toString()===e)}var Zi=Pi("URLSearchParams");function Ki(t){return t.trim?t.trim():t.replace(/^\s+|\s+$/g,"")}function Yi(){if(typeof navigator!=="undefined"&&(navigator.product==="ReactNative"||navigator.product==="NativeScript"||navigator.product==="NS")){return false}return typeof window!=="undefined"&&typeof document!=="undefined"}function tr(t,e){if(t===null||typeof t==="undefined"){return}if(typeof t!=="object"){t=[t]}if(Li(t)){for(var n=0,i=t.length;n<i;n++){e.call(null,t[n],n,t)}}else{for(var r in t){if(Object.prototype.hasOwnProperty.call(t,r)){e.call(null,t[r],r,t)}}}}function er(){var t={};function e(e,n){if(Bi(t[n])&&Bi(e)){t[n]=er(t[n],e)}else if(Bi(e)){t[n]=er({},e)}else if(Li(e)){t[n]=e.slice()}else{t[n]=e}}for(var n=0,i=arguments.length;n<i;n++){tr(arguments[n],e)}return t}function nr(t,e,n){tr(e,(function e(i,r){if(n&&typeof i==="function"){t[r]=Ii(i,n)}else{t[r]=i}}));return t}function ir(t){if(t.charCodeAt(0)===65279){t=t.slice(1)}return t}function rr(t,e,n,i){t.prototype=Object.create(e.prototype,i);t.prototype.constructor=t;n&&Object.assign(t.prototype,n)}function ar(t,e,n){var i;var r;var a;var s={};e=e||{};do{i=Object.getOwnPropertyNames(t);r=i.length;while(r-- >0){a=i[r];if(!s[a]){e[a]=t[a];s[a]=true}}t=Object.getPrototypeOf(t)}while(t&&(!n||n(t,e))&&t!==Object.prototype);return e}function sr(t,e,n){t=String(t);if(n===undefined||n>t.length){n=t.length}n-=e.length;var i=t.indexOf(e,n);return i!==-1&&i===n}function or(t){if(!t)return null;var e=t.length;if(Di(e))return null;var n=new Array(e);while(e-- >0){n[e]=t[e]}return n}var lr=function(t){return function(e){return t&&e instanceof t}}(typeof Uint8Array!=="undefined"&&Object.getPrototypeOf(Uint8Array));var ur={isArray:Li,isArrayBuffer:$i,isBuffer:Ni,isFormData:Xi,isArrayBufferView:qi,isString:Ui,isNumber:zi,isObject:Mi,isPlainObject:Bi,isUndefined:Di,isDate:Ji,isFile:Gi,isBlob:Hi,isFunction:Qi,isStream:Wi,isURLSearchParams:Zi,isStandardBrowserEnv:Yi,forEach:tr,merge:er,extend:nr,trim:Ki,stripBOM:ir,inherits:rr,toFlatObject:ar,kindOf:Ci,kindOfTest:Pi,endsWith:sr,toArray:or,isTypedArray:lr,isFileList:Vi};function cr(t){return encodeURIComponent(t).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}var fr=function t(e,n,i){if(!n){return e}var r;if(i){r=i(n)}else if(ur.isURLSearchParams(n)){r=n.toString()}else{var a=[];ur.forEach(n,(function t(e,n){if(e===null||typeof e==="undefined"){return}if(ur.isArray(e)){n=n+"[]"}else{e=[e]}ur.forEach(e,(function t(e){if(ur.isDate(e)){e=e.toISOString()}else if(ur.isObject(e)){e=JSON.stringify(e)}a.push(cr(n)+"="+cr(e))}))}));r=a.join("&")}if(r){var s=e.indexOf("#");if(s!==-1){e=e.slice(0,s)}e+=(e.indexOf("?")===-1?"?":"&")+r}return e};function hr(){this.handlers=[]}hr.prototype.use=function t(e,n,i){this.handlers.push({fulfilled:e,rejected:n,synchronous:i?i.synchronous:false,runWhen:i?i.runWhen:null});return this.handlers.length-1};hr.prototype.eject=function t(e){if(this.handlers[e]){this.handlers[e]=null}};hr.prototype.forEach=function t(e){ur.forEach(this.handlers,(function t(n){if(n!==null){e(n)}}))};var dr=hr;var vr=function t(e,n){ur.forEach(e,(function t(i,r){if(r!==n&&r.toUpperCase()===n.toUpperCase()){e[n]=i;delete e[r]}}))};function pr(t,e,n,i,r){Error.call(this);this.message=t;this.name="AxiosError";e&&(this.code=e);n&&(this.config=n);i&&(this.request=i);r&&(this.response=r)}ur.inherits(pr,Error,{toJSON:function t(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:this.config,code:this.code,status:this.response&&this.response.status?this.response.status:null}}});var gr=pr.prototype;var mr={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED"].forEach((function(t){mr[t]={value:t}}));Object.defineProperties(pr,mr);Object.defineProperty(gr,"isAxiosError",{value:true});pr.from=function(t,e,n,i,r,a){var s=Object.create(gr);ur.toFlatObject(t,s,(function t(e){return e!==Error.prototype}));pr.call(s,t.message,e,n,i,r);s.name=t.name;a&&Object.assign(s,a);return s};var wr=pr;var yr={silentJSONParsing:true,forcedJSONParsing:true,clarifyTimeoutError:false};function br(t,e){e=e||new FormData;var n=[];function i(t){if(t===null)return"";if(ur.isDate(t)){return t.toISOString()}if(ur.isArrayBuffer(t)||ur.isTypedArray(t)){return typeof Blob==="function"?new Blob([t]):Buffer.from(t)}return t}function r(t,a){if(ur.isPlainObject(t)||ur.isArray(t)){if(n.indexOf(t)!==-1){throw Error("Circular reference detected in "+a)}n.push(t);ur.forEach(t,(function t(n,s){if(ur.isUndefined(n))return;var o=a?a+"."+s:s;var l;if(n&&!a&&typeof n==="object"){if(ur.endsWith(s,"{}")){n=JSON.stringify(n)}else if(ur.endsWith(s,"[]")&&(l=ur.toArray(n))){l.forEach((function(t){!ur.isUndefined(t)&&e.append(o,i(t))}));return}}r(n,o)}));n.pop()}else{e.append(a,i(t))}}r(t);return e}var Sr=br;var _r=function t(e,n,i){var r=i.config.validateStatus;if(!i.status||!r||r(i.status)){e(i)}else{n(new wr("Request failed with status code "+i.status,[wr.ERR_BAD_REQUEST,wr.ERR_BAD_RESPONSE][Math.floor(i.status/100)-4],i.config,i.request,i))}};var jr=ur.isStandardBrowserEnv()?function t(){return{write:function t(e,n,i,r,a,s){var o=[];o.push(e+"="+encodeURIComponent(n));if(ur.isNumber(i)){o.push("expires="+new Date(i).toGMTString())}if(ur.isString(r)){o.push("path="+r)}if(ur.isString(a)){o.push("domain="+a)}if(s===true){o.push("secure")}document.cookie=o.join("; ")},read:function t(e){var n=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return n?decodeURIComponent(n[3]):null},remove:function t(e){this.write(e,"",Date.now()-864e5)}}}():function t(){return{write:function t(){},read:function t(){return null},remove:function t(){}}}();var Er=function t(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)};var Or=function t(e,n){return n?e.replace(/\/+$/,"")+"/"+n.replace(/^\/+/,""):e};var xr=function t(e,n){if(e&&!Er(n)){return Or(e,n)}return n};var kr=["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"];var Fr=function t(e){var n={};var i;var r;var a;if(!e){return n}ur.forEach(e.split("\n"),(function t(e){a=e.indexOf(":");i=ur.trim(e.substr(0,a)).toLowerCase();r=ur.trim(e.substr(a+1));if(i){if(n[i]&&kr.indexOf(i)>=0){return}if(i==="set-cookie"){n[i]=(n[i]?n[i]:[]).concat([r])}else{n[i]=n[i]?n[i]+", "+r:r}}}));return n};var Ar=ur.isStandardBrowserEnv()?function t(){var e=/(msie|trident)/i.test(navigator.userAgent);var n=document.createElement("a");var i;function r(t){var i=t;if(e){n.setAttribute("href",i);i=n.href}n.setAttribute("href",i);return{href:n.href,protocol:n.protocol?n.protocol.replace(/:$/,""):"",host:n.host,search:n.search?n.search.replace(/^\?/,""):"",hash:n.hash?n.hash.replace(/^#/,""):"",hostname:n.hostname,port:n.port,pathname:n.pathname.charAt(0)==="/"?n.pathname:"/"+n.pathname}}i=r(window.location.href);return function t(e){var n=ur.isString(e)?r(e):e;return n.protocol===i.protocol&&n.host===i.host}}():function t(){return function t(){return true}}();function Tr(t){wr.call(this,t==null?"canceled":t,wr.ERR_CANCELED);this.name="CanceledError"}ur.inherits(Tr,wr,{__CANCEL__:true});var Ir=Tr;var Rr=function t(e){var n=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return n&&n[1]||""};var Cr=function t(e){return new Promise((function t(n,i){var r=e.data;var a=e.headers;var s=e.responseType;var o;function l(){if(e.cancelToken){e.cancelToken.unsubscribe(o)}if(e.signal){e.signal.removeEventListener("abort",o)}}if(ur.isFormData(r)&&ur.isStandardBrowserEnv()){delete a["Content-Type"]}var u=new XMLHttpRequest;if(e.auth){var c=e.auth.username||"";var f=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";a.Authorization="Basic "+btoa(c+":"+f)}var h=xr(e.baseURL,e.url);u.open(e.method.toUpperCase(),fr(h,e.params,e.paramsSerializer),true);u.timeout=e.timeout;function d(){if(!u){return}var t="getAllResponseHeaders"in u?Fr(u.getAllResponseHeaders()):null;var r=!s||s==="text"||s==="json"?u.responseText:u.response;var a={data:r,status:u.status,statusText:u.statusText,headers:t,config:e,request:u};_r((function t(e){n(e);l()}),(function t(e){i(e);l()}),a);u=null}if("onloadend"in u){u.onloadend=d}else{u.onreadystatechange=function t(){if(!u||u.readyState!==4){return}if(u.status===0&&!(u.responseURL&&u.responseURL.indexOf("file:")===0)){return}setTimeout(d)}}u.onabort=function t(){if(!u){return}i(new wr("Request aborted",wr.ECONNABORTED,e,u));u=null};u.onerror=function t(){i(new wr("Network Error",wr.ERR_NETWORK,e,u,u));u=null};u.ontimeout=function t(){var n=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded";var r=e.transitional||yr;if(e.timeoutErrorMessage){n=e.timeoutErrorMessage}i(new wr(n,r.clarifyTimeoutError?wr.ETIMEDOUT:wr.ECONNABORTED,e,u));u=null};if(ur.isStandardBrowserEnv()){var v=(e.withCredentials||Ar(h))&&e.xsrfCookieName?jr.read(e.xsrfCookieName):undefined;if(v){a[e.xsrfHeaderName]=v}}if("setRequestHeader"in u){ur.forEach(a,(function t(e,n){if(typeof r==="undefined"&&n.toLowerCase()==="content-type"){delete a[n]}else{u.setRequestHeader(n,e)}}))}if(!ur.isUndefined(e.withCredentials)){u.withCredentials=!!e.withCredentials}if(s&&s!=="json"){u.responseType=e.responseType}if(typeof e.onDownloadProgress==="function"){u.addEventListener("progress",e.onDownloadProgress)}if(typeof e.onUploadProgress==="function"&&u.upload){u.upload.addEventListener("progress",e.onUploadProgress)}if(e.cancelToken||e.signal){o=function(t){if(!u){return}i(!t||t&&t.type?new Ir:t);u.abort();u=null};e.cancelToken&&e.cancelToken.subscribe(o);if(e.signal){e.signal.aborted?o():e.signal.addEventListener("abort",o)}}if(!r){r=null}var p=Rr(h);if(p&&["http","https","file"].indexOf(p)===-1){i(new wr("Unsupported protocol "+p+":",wr.ERR_BAD_REQUEST,e));return}u.send(r)}))};var Pr=null;var Lr={"Content-Type":"application/x-www-form-urlencoded"};function Dr(t,e){if(!ur.isUndefined(t)&&ur.isUndefined(t["Content-Type"])){t["Content-Type"]=e}}function Nr(){var t;if(typeof XMLHttpRequest!=="undefined"){t=Cr}else if(typeof process!=="undefined"&&Object.prototype.toString.call(process)==="[object process]"){t=Cr}return t}function $r(t,e,n){if(ur.isString(t)){try{(e||JSON.parse)(t);return ur.trim(t)}catch(t){if(t.name!=="SyntaxError"){throw t}}}return(n||JSON.stringify)(t)}var qr={transitional:yr,adapter:Nr(),transformRequest:[function t(e,n){vr(n,"Accept");vr(n,"Content-Type");if(ur.isFormData(e)||ur.isArrayBuffer(e)||ur.isBuffer(e)||ur.isStream(e)||ur.isFile(e)||ur.isBlob(e)){return e}if(ur.isArrayBufferView(e)){return e.buffer}if(ur.isURLSearchParams(e)){Dr(n,"application/x-www-form-urlencoded;charset=utf-8");return e.toString()}var i=ur.isObject(e);var r=n&&n["Content-Type"];var a;if((a=ur.isFileList(e))||i&&r==="multipart/form-data"){var s=this.env&&this.env.FormData;return Sr(a?{"files[]":e}:e,s&&new s)}else if(i||r==="application/json"){Dr(n,"application/json");return $r(e)}return e}],transformResponse:[function t(e){var n=this.transitional||qr.transitional;var i=n&&n.silentJSONParsing;var r=n&&n.forcedJSONParsing;var a=!i&&this.responseType==="json";if(a||r&&ur.isString(e)&&e.length){try{return JSON.parse(e)}catch(t){if(a){if(t.name==="SyntaxError"){throw wr.from(t,wr.ERR_BAD_RESPONSE,this,null,this.response)}throw t}}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:Pr},validateStatus:function t(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};ur.forEach(["delete","get","head"],(function t(e){qr.headers[e]={}}));ur.forEach(["post","put","patch"],(function t(e){qr.headers[e]=ur.merge(Lr)}));var Ur=qr;var zr=function t(e,n,i){var r=this||Ur;ur.forEach(i,(function t(i){e=i.call(r,e,n)}));return e};var Mr=function t(e){return!!(e&&e.__CANCEL__)};function Br(t){if(t.cancelToken){t.cancelToken.throwIfRequested()}if(t.signal&&t.signal.aborted){throw new Ir}}var Jr=function t(e){Br(e);e.headers=e.headers||{};e.data=zr.call(e,e.data,e.headers,e.transformRequest);e.headers=ur.merge(e.headers.common||{},e.headers[e.method]||{},e.headers);ur.forEach(["delete","get","head","post","put","patch","common"],(function t(n){delete e.headers[n]}));var n=e.adapter||Ur.adapter;return n(e).then((function t(n){Br(e);n.data=zr.call(e,n.data,n.headers,e.transformResponse);return n}),(function t(n){if(!Mr(n)){Br(e);if(n&&n.response){n.response.data=zr.call(e,n.response.data,n.response.headers,e.transformResponse)}}return Promise.reject(n)}))};var Gr=function t(e,n){n=n||{};var i={};function r(t,e){if(ur.isPlainObject(t)&&ur.isPlainObject(e)){return ur.merge(t,e)}else if(ur.isPlainObject(e)){return ur.merge({},e)}else if(ur.isArray(e)){return e.slice()}return e}function a(t){if(!ur.isUndefined(n[t])){return r(e[t],n[t])}else if(!ur.isUndefined(e[t])){return r(undefined,e[t])}}function s(t){if(!ur.isUndefined(n[t])){return r(undefined,n[t])}}function o(t){if(!ur.isUndefined(n[t])){return r(undefined,n[t])}else if(!ur.isUndefined(e[t])){return r(undefined,e[t])}}function l(t){if(t in n){return r(e[t],n[t])}else if(t in e){return r(undefined,e[t])}}var u={url:s,method:s,data:s,baseURL:o,transformRequest:o,transformResponse:o,paramsSerializer:o,timeout:o,timeoutMessage:o,withCredentials:o,adapter:o,responseType:o,xsrfCookieName:o,xsrfHeaderName:o,onUploadProgress:o,onDownloadProgress:o,decompress:o,maxContentLength:o,maxBodyLength:o,beforeRedirect:o,transport:o,httpAgent:o,httpsAgent:o,cancelToken:o,socketPath:o,responseEncoding:o,validateStatus:l};ur.forEach(Object.keys(e).concat(Object.keys(n)),(function t(e){var n=u[e]||a;var r=n(e);ur.isUndefined(r)&&n!==l||(i[e]=r)}));return i};var Hr={version:"0.27.2"};var Vr=Hr.version;var Qr={};["object","boolean","number","function","string","symbol"].forEach((function(t,e){Qr[t]=function n(i){return typeof i===t||"a"+(e<1?"n ":" ")+t}}));var Wr={};Qr.transitional=function t(e,n,i){function r(t,e){return"[Axios v"+Vr+"] Transitional option '"+t+"'"+e+(i?". "+i:"")}return function(t,i,a){if(e===false){throw new wr(r(i," has been removed"+(n?" in "+n:"")),wr.ERR_DEPRECATED)}if(n&&!Wr[i]){Wr[i]=true;console.warn(r(i," has been deprecated since v"+n+" and will be removed in the near future"))}return e?e(t,i,a):true}};function Xr(t,e,n){if(typeof t!=="object"){throw new wr("options must be an object",wr.ERR_BAD_OPTION_VALUE)}var i=Object.keys(t);var r=i.length;while(r-- >0){var a=i[r];var s=e[a];if(s){var o=t[a];var l=o===undefined||s(o,a,t);if(l!==true){throw new wr("option "+a+" must be "+l,wr.ERR_BAD_OPTION_VALUE)}continue}if(n!==true){throw new wr("Unknown option "+a,wr.ERR_BAD_OPTION)}}}var Zr={assertOptions:Xr,validators:Qr};var Kr=Zr.validators;function Yr(t){this.defaults=t;this.interceptors={request:new dr,response:new dr}}Yr.prototype.request=function t(e,n){if(typeof e==="string"){n=n||{};n.url=e}else{n=e||{}}n=Gr(this.defaults,n);if(n.method){n.method=n.method.toLowerCase()}else if(this.defaults.method){n.method=this.defaults.method.toLowerCase()}else{n.method="get"}var i=n.transitional;if(i!==undefined){Zr.assertOptions(i,{silentJSONParsing:Kr.transitional(Kr.boolean),forcedJSONParsing:Kr.transitional(Kr.boolean),clarifyTimeoutError:Kr.transitional(Kr.boolean)},false)}var r=[];var a=true;this.interceptors.request.forEach((function t(e){if(typeof e.runWhen==="function"&&e.runWhen(n)===false){return}a=a&&e.synchronous;r.unshift(e.fulfilled,e.rejected)}));var s=[];this.interceptors.response.forEach((function t(e){s.push(e.fulfilled,e.rejected)}));var o;if(!a){var l=[Jr,undefined];Array.prototype.unshift.apply(l,r);l=l.concat(s);o=Promise.resolve(n);while(l.length){o=o.then(l.shift(),l.shift())}return o}var u=n;while(r.length){var c=r.shift();var f=r.shift();try{u=c(u)}catch(t){f(t);break}}try{o=Jr(u)}catch(t){return Promise.reject(t)}while(s.length){o=o.then(s.shift(),s.shift())}return o};Yr.prototype.getUri=function t(e){e=Gr(this.defaults,e);var n=xr(e.baseURL,e.url);return fr(n,e.params,e.paramsSerializer)};ur.forEach(["delete","get","head","options"],(function t(e){Yr.prototype[e]=function(t,n){return this.request(Gr(n||{},{method:e,url:t,data:(n||{}).data}))}}));ur.forEach(["post","put","patch"],(function t(e){function n(t){return function n(i,r,a){return this.request(Gr(a||{},{method:e,headers:t?{"Content-Type":"multipart/form-data"}:{},url:i,data:r}))}}Yr.prototype[e]=n();Yr.prototype[e+"Form"]=n(true)}));var ta=Yr;function ea(t){if(typeof t!=="function"){throw new TypeError("executor must be a function.")}var e;this.promise=new Promise((function t(n){e=n}));var n=this;this.promise.then((function(t){if(!n._listeners)return;var e;var i=n._listeners.length;for(e=0;e<i;e++){n._listeners[e](t)}n._listeners=null}));this.promise.then=function(t){var e;var i=new Promise((function(t){n.subscribe(t);e=t})).then(t);i.cancel=function t(){n.unsubscribe(e)};return i};t((function t(i){if(n.reason){return}n.reason=new Ir(i);e(n.reason)}))}ea.prototype.throwIfRequested=function t(){if(this.reason){throw this.reason}};ea.prototype.subscribe=function t(e){if(this.reason){e(this.reason);return}if(this._listeners){this._listeners.push(e)}else{this._listeners=[e]}};ea.prototype.unsubscribe=function t(e){if(!this._listeners){return}var n=this._listeners.indexOf(e);if(n!==-1){this._listeners.splice(n,1)}};ea.source=function t(){var e;var n=new ea((function t(n){e=n}));return{token:n,cancel:e}};var na=ea;var ia=function t(e){return function t(n){return e.apply(null,n)}};var ra=function t(e){return ur.isObject(e)&&e.isAxiosError===true};function aa(t){var e=new ta(t);var n=Ii(ta.prototype.request,e);ur.extend(n,ta.prototype,e);ur.extend(n,e);n.create=function e(n){return aa(Gr(t,n))};return n}var sa=aa(Ur);sa.Axios=ta;sa.CanceledError=Ir;sa.CancelToken=na;sa.isCancel=Mr;sa.VERSION=Hr.version;sa.toFormData=Sr;sa.AxiosError=wr;sa.Cancel=sa.CanceledError;sa.all=function t(e){return Promise.all(e)};sa.spread=ia;sa.isAxiosError=ra;var oa=sa;var la=sa;oa.default=la;var ua=oa;function ca(t){this.message=t}ca.prototype=new Error,ca.prototype.name="InvalidCharacterError";var fa="undefined"!=typeof window&&window.atob&&window.atob.bind(window)||function(t){var e=String(t).replace(/=+$/,"");if(e.length%4==1)throw new ca("'atob' failed: The string to be decoded is not correctly encoded.");for(var n,i,r=0,a=0,s="";i=e.charAt(a++);~i&&(n=r%4?64*n+i:i,r++%4)?s+=String.fromCharCode(255&n>>(-2*r&6)):0)i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(i);return s};function ha(t){var e=t.replace(/-/g,"+").replace(/_/g,"/");switch(e.length%4){case 0:break;case 2:e+="==";break;case 3:e+="=";break;default:throw"Illegal base64url string!"}try{return function(t){return decodeURIComponent(fa(t).replace(/(.)/g,(function(t,e){var n=e.charCodeAt(0).toString(16).toUpperCase();return n.length<2&&(n="0"+n),"%"+n})))}(e)}catch(t){return fa(e)}}function da(t){this.message=t}function va(t,e){if("string"!=typeof t)throw new da("Invalid token specified");var n=!0===(e=e||{}).header?0:1;try{return JSON.parse(ha(t.split(".")[n]))}catch(t){throw new da("Invalid token specified: "+t.message)}}da.prototype=new Error,da.prototype.name="InvalidTokenError";let pa=function(t,e,n){return alert(t)},ga=function(t,e){return pa(t,ma.error,e)},ma={error:"error",success:"success",info:"info"};var wa={fire:function(t,e,n){return pa(t,e,n)},setNotifier:function(t){pa=t,salla.event.emit("twilight::notifier.changed")},error:ga,success:function(t,e){return pa(t,ma.success,e)},info:function(t,e){return pa(t,ma.info,e)},sallaInitiated:function(){let t=window.location.href.match(/([\?\&]danger=)[^&]+/g);t&&(window.history.replaceState(null,document.title,window.location.pathname),salla.event.once("twilight::notifier.changed",(()=>{t.forEach((t=>{ga(decodeURI(t.replace("?danger=","").replace("&danger=","")))}))})))},types:ma};class ya{constructor(t,e){return this.api=t,this.event=e,new Proxy(this,{get:function(n,i){return"event"===i?e:"api"===i?t:t&&t[i]||n[i]}})}}Element.prototype.matches||(Element.prototype.matches=Element.prototype.msMatchesSelector),Element.prototype.closest||(Element.prototype.closest=function(t){for(var e=this;e;){if(e.matches(t))return e;e=e.parentElement}}),Element.prototype.getElementSallaData=function(t,...e){if(!this.getAttribute)return;if(this.hasAttribute("data-json"))try{return JSON.parse(this.getAttribute("data-json"))}catch(t){}let n=this.getAttribute("data-function");if(n&&window[n])return"function"==typeof window[n]?this.getFilteredData(window[n].call(this,...e)):this.getFilteredData(window[n]);let i=this.hasAttribute("data-form-selector")?document.querySelector(this.dataset.formSelector):void 0;if(i="FORM"===this.tagName?this:i||this.closest("form")||this.closest("[salla-form-data]")||this,i&&"FORM"===i.tagName)return this.getFilteredData(new FormData(i),null,i);let r=i.querySelectorAll("[name]");if(!r.length)return this.getFilteredData();let a=Object.assign({},this.dataset);return r.forEach((t=>{if(!["checkbox","radio"].includes(t.type)||t.checked)try{let e=Salla.helpers.inputData(t.name,t.value,a);a[e.name]=e.value}catch(e){Salla.log(t.name+" can't be send")}})),this.getFilteredData(a)},Element.prototype.canEventFireHook=function(t){return!!this.hasAttribute&&this.hasAttribute(Salla.api.hooksPrefix+t.type)},Element.prototype.hasAttributeStartsWith=function(t,e){t=t.toLowerCase();for(var n=0;n<this.attributes.length;n++){let i=this.attributes[n].name.toLowerCase();if(0===i.indexOf(t))return!e||i}return!1},HTMLFormElement.prototype.getAjaxFormData=function(t){var e=this.querySelectorAll('input[type="file"]');e.forEach((t=>{t.files.length||t.setAttribute("disabled","")}));var n=new FormData(this);return e.forEach((t=>{t.files.length||t.removeAttribute("disabled")})),{formData:this.getFilteredData(n,t),url:this.getAttribute("action"),method:this.getAttribute("method")||"post",events:{success:this.dataset.onSuccess,fail:this.dataset.onFail}}},Element.prototype.getFilteredData=function(t=null,e=null,n=null){return t=t||n?.dataset||this.dataset,n&&this.name&&void 0!==this.value&&(t=function(t,e,n){t instanceof FormData?t.append(e,n):t[e]=n;return t}(t,this.name,this.value)),["filterBeforeSubmit","filterBeforeSend"].forEach((i=>{let r=n?.dataset[i]||this.dataset[i];if(r){var a=window[r];if("function"==typeof a){if(!a(t,n||this,e)&&t)throw`Data failed to be pass verify function window.${r}(formData, element, event)!`;return a(t,n||this,e)}Salla.log("window."+r+"() not found!")}})),t},HTMLAnchorElement.prototype.getAjaxFormData=function(t){return{formData:this.getFilteredData(null,t),url:this.getAttribute("href"),method:this.dataset.type||"get",events:{success:this.dataset.onSuccess,fail:this.dataset.onFail}}};class ba{constructor(){this.events={},this.namespace="";let t=/function (.{1,})\(/.exec(this.constructor.toString());this.className=(t&&t.length>1?t[1]:"").toLowerCase()}after_init(){this.createDynamicFunctions()}createDynamicFunctions(){Object.keys(this.events).forEach((t=>{this.createDynamicEventFuns(t),this.createDynamicListenerFuns(t)}))}createDynamicEventFuns(t){if(this[t])return;let e=this;this[t]=function(...n){return e.dispatch(t,...n)}}createDynamicListenerFuns(t){let e="on"+t.charAt(0).toUpperCase()+t.slice(1);if(this[e])return;let n=this;this[e]=function(e){return n.on(t,(async(...t)=>e(...t)))}}getEventName(t){return t=this.events[t]||t,!this.namespace||t.includes("::")?t:this.namespace+Salla.event.delimiter+t}dispatch(t,...e){return Salla.event.emitAsync(this.getEventName(t),...e)}on(t,e,n={}){return Salla.event.addListener(this.getEventName(t),e,n)}once(t,e){return Salla.event.once(this.getEventName(t),e)}}function Sa(t){t&&t.sallaInitiated&&!t.initiated&&(t.sallaInitiated(),t.initiated=!0)}Salla.event.auth=new class extends ba{constructor(){super(),this.namespace="auth",this.events={login:"login",logout:"logout",codeSent:"code.sent",codeNotSent:"code.not-sent",verified:"verified",verificationFailed:"verification.failed",loggedIn:"logged.in",registered:"registered",registrationFailed:"registration.failed",loggedOut:"logged.out",failedLogout:"failed.logout",refreshFailed:"refresh.failed",tokenFetched:"token.fetched",tokenInvalid:"token.invalid"},this.after_init()}login(t){return t?(t.type&&this.setTypeActionOnVerified(t.type),this.next_event=t.next_event||null,this.dispatch("login",...arguments)):(this.next_event=null,this.dispatch("login",...arguments))}loggedIn(t){return Salla.profile.info().finally((()=>this.dispatch("loggedIn",t)))}setTypeActionOnVerified(t){this.type_action_on_verified=t}getTypeActionOnVerified(){return this.type_action_on_verified||"redirect"}},Salla.event.cart=new class extends ba{constructor(){super(),this.namespace="cart",this.events={latestFetched:"latest.fetched",latestFailed:"latest.failed",updated:"updated",itemUpdated:"item.updated",itemUpdatedFailed:"item.updated.failed",itemAdded:"item.added",itemAddedFailed:"item.added.failed",itemDeleted:"item.deleted",itemDeletedFailed:"item.deleted.failed",submitted:"submitted",submitFailed:"submit.failed",imageDeleted:"image.deleted",imageNotDeleted:"image.not.deleted",detailsFetched:"details.fetched",detailsNotFetched:"details.not.fetched",successReset:"success.reset",priceQuoteSucceeded:"price-quote.succeeded",priceQuoteFailed:"price-quote.failed",couponAdded:"coupon.added",couponDeleted:"coupon.deleted",couponAdditionFailed:"coupon.addition.failed",couponDeletionFailed:"coupon.deletion.failed",quickOrderSettingFetched:"quick-order.fetched",quickOrderSettingFailed:"quick-order.failed",quickOrderSucceeded:"quick-order.succeeded",quickOrderFailed:"quick-order.failed"},this.after_init()}updated(t){return Salla.cookie.set("fresh_summary",1),t&&"object"==typeof t?(t.offer&&salla.product.event.offerExisted(t.offer),t.redirect&&(salla.log("The current cart is purchased!"),salla.cart.api.reset()),t.cart?(salla.storage.set("cart.summary",{total:t.cart.total,sub_total:t.cart.sub_total,discount:t.cart.discount,real_shipping_cost:t.cart.real_shipping_cost,count:t.cart.count,shipping_cost:t.cart.free_shipping_bar?.has_free_shipping?0:t.cart.real_shipping_cost}),this.dispatch("updated",t.cart)):void salla.log("Failed to get the cart summary!")):(Salla.logger.info("Cart summary not an object!",t),this.dispatch("updated"))}latestFetched(t){return this.updated(t.data),this.dispatch("latestFetched",t)}itemAdded(t,e){return this.updated(t.data),this.dispatch("itemAdded",t,e)}itemDeleted(t,e){return this.updated(t.data),this.dispatch("itemDeleted",t,e)}itemUpdated(t,e){return this.updated(t.data),this.dispatch("itemUpdated",t,e)}couponAdded(t,e){return this.updated(t.data),this.dispatch("couponAdded",t,e)}couponDeleted(t,e){return this.updated(t.data),this.dispatch("couponDeleted",t,e)}},Salla.event.order=new class extends ba{constructor(){super(),this.namespace="order",this.events={canceled:"canceled",notCanceled:"not.canceled",orderCreated:"order.created",orderCreationFailed:"order.creation.failed",invoiceSent:"invoice.sent",invoiceNotSent:"invoice.not.sent"},this.after_init()}},Salla.event.scope=new class extends ba{constructor(){super(),this.namespace="scope",this.events={fetched:"fetched",notFetched:"not.fetched",productAvailabilityFetched:"product-availability.fetched",productAvailabilityNotFetched:"product-availability.not.fetched",changeSucceeded:"changed",changeFailed:"not.changed"},this.after_init()}},Salla.event.rating=new class extends ba{constructor(){super(),this.namespace="rating",this.events={orderNotFetched:"order.not.fetched",orderFetched:"order.fetched",storeRated:"store.rated",storeFailed:"store.failed",productsRated:"products.rated",productsFailed:"products.failed",shippingRated:"shipping.rated",shippingFailed:"shipping.failed"},this.after_init()}},Salla.event.booking=new class extends ba{constructor(){super(),this.namespace="booking",this.events={added:"added",additionFailed:"addition.failed"},this.after_init()}},Salla.event.comment=new class extends ba{constructor(){super(),this.namespace="comment",this.events={added:"added",additionFailed:"addition.failed",fetched:"fetched",fetchFailed:"fetch.failed"},this.after_init()}},Salla.event.landing=new class extends ba{constructor(){super(),this.namespace="landing",this.events={detailsFetched:"order.fetched",getDetailsFailed:"get.details.failed",orderCreated:"order.created",orderCreationFailed:"order.creation.failed"},this.after_init()}},Salla.event.loyalty=new class extends ba{constructor(){super(),this.namespace="loyalty",this.events={exchangeSucceeded:"exchange.succeeded",exchangeFailed:"exchange.failed",programFetched:"program.fetched",programNotFetched:"program.not.fetched",resetSucceeded:"exchange-reset.succeeded",resetFailed:"exchange-reset.failed"},this.after_init()}exchangeSucceeded(t,e){return salla.cart.event.updated(t.data),this.dispatch("exchangeSucceeded",t,e)}resetSucceeded(t){return salla.cart.event.updated(t.data),this.dispatch("resetSucceeded",t)}},Salla.event.product=new class extends ba{constructor(){super(),this.namespace="product",this.events={priceUpdated:"price.updated",priceUpdateFailed:"price.updated.failed",availabilitySubscribed:"availability.subscribed",availabilitySubscribeFailed:"availability.subscribe.failed",categoriesFetched:"categories.fetched",categoriesFailed:"categories.failed",searchFailed:"search.failed",searchResults:"search.results",offerExisted:"offer.existed",fetchOffersFailed:"fetch.offers.failed",offersFetched:"offers.fetched",sizeGuideFetched:"size-guide.fetched",sizeGuideFetchFailed:"size-guide.failed",giftFetched:"gift.fetched",giftFetchFailed:"gift.failed",detailFetched:"detail.fetched",detailFetchFailed:"detail.failed",addGiftToCartSucceeded:"gift.add-to-cart.succeeded",addGiftToCartFailed:"gift.add-to-cart.failed",giftImageUploadSucceeded:"gift.image-upload.succeeded",giftImageUploadFailed:"gift.image-upload.failed",productListFetchSucceeded:"fetch.succeeded",productListFetchFailed:"fetch.failed"},this.after_init()}},Salla.event.profile=new class extends ba{constructor(){super(),this.namespace="profile",this.events={updated:"updated",updateFailed:"update.failed",verificationCodeSent:"verification.code.sent",updateContactsFailed:"update.contacts.failed",verified:"verified",unverified:"unverified",infoFetched:"info.fetched",infoNotFetched:"info.not.fetched",settingsUpdated:"settings.updated",updateSettingsFailed:"update.settings.failed",deleted:"deleted",notDeleted:"not.deleted"},this.after_init()}},Salla.event.currency=new class extends ba{constructor(){super(),this.namespace="currency",this.events={changed:"changed",failed:"failed",fetched:"fetched",failedToFetch:"failed.to.fetch"},this.after_init()}},Salla.event.document=new class extends ba{constructor(){super(),this.namespace="document",this.events={click:"click",change:"change",submit:"submit",keyup:"keyup",leaving:"leaving",request:"request",requestFailed:"request.failed"},this.after_init()}onClick(t,e){this.fireCallableFuns("click",t,e)}onChange(t,e){this.fireCallableFuns("change",t,e)}onSubmit(t,e){this.fireCallableFuns("submit",t,e)}onKeyup(t,e){this.fireCallableFuns("keyup",t,e)}fireCallableFuns(t,e,n){this.on(t,(t=>{"function"!=typeof e?"function"==typeof n&&t.target.matches(e)&&n(t):e(t)}))}fireEvent(t,e,...n){return this.fireEventForElements(t,e,!1,...n)}fireEventForAll(t,e,...n){return this.fireEventForElements(t,e,!0,...n)}fireEventForElements(t,e,n,...i){if("string"==typeof t){if(n)return document.querySelectorAll(t).forEach((t=>this.fireEventForElements(t,e,!1,...i)));t=document.querySelector(t)}if(!t)return void salla.log("Failed To get element to fire event: "+e);const r=new CustomEvent(e,...i);return t.dispatchEvent(r)}},Salla.event.wishlist=new class extends ba{constructor(){super(),this.namespace="wishlist",this.events={added:"added",removed:"removed",additionFailed:"addition.failed",removingFailed:"removing.failed"},this.after_init()}},Salla.event.infiniteScroll=new class extends ba{constructor(){super(),this.namespace="infiniteScroll",this.events={scrollThreshold:"scroll.threshold",request:"request",load:"load",append:"append",error:"error",last:"last",history:"history"},this.after_init()}},Salla.event.on("twilight::initiated",(()=>{Object.keys(Salla).forEach((t=>{"object"==typeof(t=Salla[t])&&(Sa(t),Object.keys(t).forEach((e=>{Sa(t[e])})))}))})),Salla.config.default_properties={debug:"undefined"!=typeof process&&"development"==="production",token:null,fastRequests:!0,canLeave:!0,store:{api:"https://api.salla.dev/store/v1/"},currencies:{SAR:{code:"SAR",name:"ريال سعودي",symbol:"ر.س",amount:1,country_code:"sa"}}},Salla.config.merge(Salla.config.default_properties),Salla.config.triedToGetCurrencies_=!1,Salla.config.triedToGetLanguages_=!1,Salla.config.isUser=()=>"user"===Salla.config.get("user.type"),Salla.config.isGuest=()=>!Salla.config.isUser(),Salla.config.languages=async()=>{if(Salla.config.triedToGetLanguages_)return Salla.config.get("languages");Salla.config.triedToGetLanguages_=!0;let t=!0,e=[];return(await salla.document.api.request("languages",null,"get"))?.data?.map((n=>{t&&(e=[],t=!1),n.code=n.code||n.iso_code,n.url=salla.url.get(n.code),n.is_rtl=n.is_rtl||n.rtl,e.push(n)})),Salla.config.set("languages",e),e},Salla.config.currencies=async()=>{if(Salla.config.triedToGetCurrencies_)return Salla.config.get("currencies");Salla.config.triedToGetCurrencies_=!0;let t=!0,e={};return(await salla.currency.api.list())?.data?.map((n=>{t&&(e={},t=!1),n.country_code=n.code.substr(0,2).toLowerCase(),e[n.code]=n})),Salla.config.set("currencies",e),e};class _a{constructor(){this.endpoints={},this.webEndpoints=[],this.namespace="BaseApi",this.endpointsMethods={},this.endpointsHeaders={};let t=/function (.{1,})\(/.exec(this.constructor.toString());this.className=(t&&t.length>1?t[1]:"").toLowerCase(),this.debounce={request:void 0,time:300,enabled:!0,exclude:[]}}after_init(){}normalRequest(t,e=void 0,n=null){let i=Array.isArray(t),r=i?this.getUrl(...t):this.getUrl(t);t=i?t[0]:t,n=n||this.endpointsMethods[t]||"post";let a=this.endpointsHeaders[t];if("get"===n&&e instanceof FormData){let t={};Array.from(e.entries()).forEach((function(e){t[e[0]]=e[1]})),e={params:t}}return a&&"get"===n&&(e=e?Object.assign(e,a):a),this.webEndpoints.includes(t)?r=salla.url.get(r):"http"!==r.substring(0,4)&&(r=salla.url.api(r)),Salla.api.request(r,e,n,{headers:a})}request(t,e=void 0,n=null){return!salla.api.isFastRequestsAllowed()&&this.debounce.enabled?(this.debounce.request||(this.debounce.request=salla.helpers.debounce(this.normalRequest.bind(this),this.debounce.time)),this.debounce.request(t,e,n)):this.normalRequest(t,e,n)}getUrl(t){let e=this.endpoints[t]||t;const n=/{[^{}]+}/i;for(let t=1;t<arguments.length;t++)e=e.replace(n,arguments[t]);return e}event(){return salla.event[this.className]}}class ja extends _a{constructor(){super(),this.namespace="cart",this.endpoints={latest:"cart/latest",details:"cart/{cart}",quickAdd:"cart/{cart}/item/{product}/quick-add",addItem:"cart/{cart}/item/{product}/add",deleteItem:"cart/{cart}/item/{item}",updateItem:"cart/{cart}/item/{item}",deleteImage:"cart/{cart}/image/{image}",uploadImage:"cart/{cart}/image",status:"cart/{cart}/status",addCoupon:"cart/{id}/coupon",deleteCoupon:"cart/{id}/coupon",getQuickOrderSettings:"checkout/quick-order",createQuickOrder:"checkout/quick-order",priceQuote:"cart/{cartId}/price-quote"},this.endpointsMethods={latest:"get",details:"get",status:"get",updateItem:"post",deleteItem:"delete",deleteImage:"delete",deleteCoupon:"put",getQuickOrderSettings:"get"},this.webEndpoints=["latest"],this.latestCart=null,this.after_init(),salla.event.on("api::initiated",(()=>this.getCurrentCartId())),salla.event.on("auth::token.fetched",(()=>this._checkCurrentCart)),salla.event.on("auth::token.invalid",(()=>this._checkCurrentCart)),salla.event.on("auth::verified",(()=>this.getCurrentCartId(!0)),{async:!0}),salla.event.on("profile::info.fetched",(()=>this._checkCurrentCart))}_checkCurrentCart(){let t=salla.storage.get("cart"),e=salla.config.get("user")?.id;t&&t.id&&(t.user_id!==e||t.store_id!==config.store?.id)&&(salla.log("cart",{user_id:t.user_id,store_id:t.store_id}),salla.log("current",{user_id:e,store_id:config.store?.id}),salla.log("Api:: case2 => The cart is not belong to current "+(t.user_id!==e?"user":"store")+"!"),salla.cart.api.reset())}async getCurrentCartId(t=!1){if(!t){if(salla.cart.api.latestCart)return salla.cart.api.latestCart.cart.id;let t=salla.storage.get("cart.id");if(t)return t}let e=await this.latest();return salla.cart.api.latestCart=e.data,salla.cart.api.latestCart.cart.id}getUploadImageEndpoint(t){return salla.url.api(this.getUrl("uploadImage",t||salla.storage.get("cart.id")))}latest(){return this.request("latest",{params:{source:""}}).then((t=>(salla.storage.set("cart",t.data.cart),salla.event.cart.latestFetched(t),t))).catch((t=>{throw salla.storage.set("cart",""),salla.event.cart.latestFailed(t),t}))}async details(t,e=[]){return t=t||await this.getCurrentCartId(),this.request(["details",t],{params:{with:e}}).then((function(t){return salla.cart.event.detailsFetched(t),t})).catch((function(t){throw salla.cart.event.detailsNotFetched(t),t}))}async quickAdd(t,e){return this.addItem({id:t,quantity:e,endpoint:"quickAdd"})}async addItem(t){let e=this.getCartPayload(t);if(!e.id){let t='There is no product "id"!';return salla.cart.event.itemAddedFailed(t),salla.api.errorPromise(t)}let n=salla.form.getPossibleValue(e.payload,["endpoint"]);n&&["addItem","quickAdd"].includes(n)||(n=salla.form.getPossibleValue(e.payload,["quantity","donating_amount"])?"addItem":"quickAdd");let i=await this.getCurrentCartId();return this.request([n,i,e.id],e.payload).then((function(t){return salla.cart.event.itemAdded(t,e.id),t})).catch((function(t){throw salla.cart.event.itemAddedFailed(t,e.id),t}))}async deleteItem(t){let e=this.getCartPayload(t);if(!e.id){let t='There is no "id"!';return salla.cart.event.itemDeletedFailed(t),salla.api.errorPromise(t)}let n=await this.getCurrentCartId();return this.request(["deleteItem",n,e.id]).then((function(t){return salla.cart.event.itemDeleted(t,e.id),t})).catch((function(t){throw salla.cart.event.itemDeletedFailed(t,e.id),t}))}async updateItem(t){let e=this.getCartPayload(t);if(!e.id){let t='There is no "id"!';return salla.cart.event.itemUpdatedFailed(t),salla.api.errorPromise(t)}let n=await this.getCurrentCartId();return"Object"===e.payload.constructor?.name?e.payload._method="PUT":e.payload.append("_method","PUT"),this.request(["updateItem",n,e.id],e.payload).then((function(t){return salla.cart.event.itemUpdated(t,e.id),t})).catch((function(t){throw salla.cart.event.itemUpdatedFailed(t,e.id),t}))}async deleteImage(t){if(!(t=salla.form.getPossibleValue(t,["id","image_id","photo_id"]))){let t='There is no "id"!';return salla.cart.event.imageNotDeleted(t),salla.api.errorPromise(t)}let e=await this.getCurrentCartId();return this.request(["deleteImage",e,t]).then((function(e){return salla.cart.event.imageDeleted(e,t),e})).catch((function(e){throw salla.cart.event.imageNotDeleted(e,t),e}))}async status(t){return this.request(["status",t||await this.getCurrentCartId()],{params:{has_apple_pay:!!window.ApplePaySession}})}async submit(){this.status(await this.getCurrentCartId()).then((t=>{let e=t.data.next_step.to;if(!["checkout","refresh","login"].includes(e)){let t="Can't find next_step );";throw salla.cart.event.submitFailed(t),t}if(salla.cart.event.submitted(t),"login"===e)return salla.auth.setCanRedirect(!1),salla.event.dispatch("login::open"),void salla.auth.event.onLoggedIn((t=>{salla.event.dispatch("login::close"),this.submit()}));"checkout"===e?window.location.href=t.data.next_step.url+(window.ApplePaySession?"?has_apple_pay=true":""):window.location.reload()})).catch((function(t){throw salla.cart.event.submitFailed(t),t}))}getCartPayload(t){let e=t?.data||("object"==typeof t?t:void 0);return t=e?salla.form.getPossibleValue(e,["prod_id","product_id","item_id","id"]):t,e="object"==typeof e?e:void 0,{id:t,payload:e}}normalRequest(t,e=void 0,n=null){return super.normalRequest(t,e,n).catch((t=>{throw 403===t?.response?.status&&(salla.cart.api.reset(),salla.error(salla.lang.get("pages.checkout.try_again"))),t}))}reset(){salla.api.cart.latestCart=null,salla.storage.remove("cart"),salla.cart.event.successReset()}async addCoupon(t){if(t=t.data||t,!(t=salla.form.getPossibleValue(t,["coupon"]))){let t=new Error('There is no "Coupon Code"!');return t.name="EmptyCoupon",salla.event.cart.couponAdditionFailed(t),salla.api.errorPromise(t)}let e=await salla.cart.api.getCurrentCartId();return this.request(["addCoupon",e],{coupon:t}).then((function(t){return salla.event.cart.couponAdded(t,e),t})).catch((function(t){throw salla.event.cart.couponAdditionFailed(t,e),t}))}async deleteCoupon(){let t=await salla.cart.api.getCurrentCartId();return this.request(["deleteCoupon",t],{}).then((function(e){return salla.event.cart.couponDeleted(e,t),e})).catch((function(e){throw salla.event.cart.couponDeletionFailed(e,t),e}))}getQuickOrderSettings(){return this.request("getQuickOrderSettings").then((t=>(salla.event.cart.quickOrderSettingFetched(t),t))).catch((t=>{throw salla.event.cart.quickOrderSettingFailed(t),t}))}createQuickOrder(t){return this.request("createQuickOrder",t).then((t=>(salla.event.cart.quickOrderSucceeded(t),t))).catch((t=>{throw salla.event.cart.quickOrderFailed(t),t}))}async priceQuote(t){return salla.config.isGuest()?(salla.auth.api.setAfterLoginEvent("cart::priceQuote",t),void salla.event.dispatch("login::open")):this.request(["priceQuote",t||await this.getCurrentCartId()]).then((t=>(salla.cart.api.reset(),salla.event.cart.priceQuoteSucceeded(t).then((()=>(setTimeout((()=>window.location.href=salla.url.get("/")),1e3),t)))))).catch((t=>salla.event.cart.priceQuoteFailed(t).then((()=>{throw 404===t.error?.code&&window.location.reload(),t}))))}}class Ea extends _a{constructor(){super(),this.namespace="loyalty",this.endpoints={getProgram:"loyalty",exchange:"loyalty/exchange",reset:"loyalty/exchange"},this.endpointsMethods={getProgram:"get",reset:"put"},this.after_init()}getProgram(){return this.request("getProgram").then((t=>(salla.loyalty.event.programFetched(t),t))).catch((t=>{throw salla.loyalty.event.programNotFetched(t),t}))}async exchange(t,e=null){if(!(t=salla.form.getPossibleValue(t,["id","loyalty_prize_id","prize_id"]))){let t="Unable to find cart id. Please provide one.";return salla.loyalty.event.exchangeFailed(t),salla.api.errorPromise(t)}if(!(e=e||await salla.cart.getCurrentCartId())){let t="Unable to find cart id. Please provide one.";return salla.loyalty.event.exchangeFailed(t),salla.api.errorPromise(t)}return this.request("exchange",{loyalty_prize_id:t,cart_id:e}).then((function(e){return salla.loyalty.event.exchangeSucceeded(e,t),e})).catch((function(e){throw salla.loyalty.event.exchangeFailed(e,t),e}))}async reset(t=null){if(!(t=t||await salla.cart.getCurrentCartId())){let t="Unable to find cart id. Please provide one.";return salla.loyalty.event.resetFailed(t),salla.api.errorPromise(t)}return this.request("reset",{cart_id:t}).then((t=>(salla.loyalty.event.resetSucceeded(t),t))).catch((t=>{throw salla.loyalty.event.resetFailed(t),t}))}}class Oa extends _a{constructor(){super(),this.namespace="auth",this.canRedirect_=!0,this.afterLoginEvent={event:null,payload:null},this.endpoints={login:"auth/{type}/send_verification",resend:"auth/resend_verification",verify:"auth/{type}/verify",register:"auth/register",logout:"logout",refresh:"auth/refresh"},this.webEndpoints=["logout","auth/jwt","refresh"],this.endpointsMethods={logout:"get"},this.after_init()}setAfterLoginEvent(t,e){salla.api.auth.afterLoginEvent={event:t,payload:e}}setCanRedirect(t){salla.api.auth.canRedirect_=t}canRedirect(){return salla.api.auth.canRedirect_&&!salla.api.auth.afterLoginEvent.event}login(t){t?.data&&(t=t.data);let e=salla.form.getPossibleValue(t,["type"]);if(!["email","mobile"].includes(e)){let t="Login type should be in: [email, mobile]";return salla.auth.event.codeNotSent(t),salla.api.errorPromise(t)}return this.request(["login",e],t).then((function(t){return salla.auth.event.codeSent(t,e),t})).catch((function(t){throw salla.auth.event.codeNotSent(t,e),t}))}async verify(t,e=!0){let n=salla.form.getPossibleValue(t,["type"]);if(!n){let t="Failed to know what's login type!";return salla.auth.event.verificationFailed(t),salla.api.errorPromise(t)}e=!1!==salla.form.getPossibleValue(t,["supportWebAuth"])&&e,salla.auth.event.next_event&&(t.next_event=salla.auth.event.next_event);let i=await salla.auth.api.request(["verify",n],t);if(200!==i?.status)return salla.auth.event.verificationFailed(i,n),salla.api.errorPromise(i);let r="authenticated"===i.data?.case;return r&&salla.auth.event.tokenFetched(i.data.token),e&&await salla.auth.api.request("auth/jwt"),r&&salla.auth.event.loggedIn(i).then((()=>salla.auth.api.afterUserLogin())),await salla.auth.event.verified(i,n),salla.api.successPromise(i)}resend(t){let e;return(t=t.data||t).type=t.type||"mobile","mobile"!==t.type||t.phone&&t.country_code?"email"!==t.type||t.email?this.request("resend",t).then((function(e){return salla.auth.event.codeSent(e,t),e})).catch((function(e){throw salla.auth.event.codeNotSent(e,t),e})):(salla.auth.event.codeNotSent(e="There is no email!",t),salla.api.errorPromise(e)):(salla.auth.event.codeNotSent(e="There is no phone or country_code!",t),salla.api.errorPromise(e))}register(t){let e;return t.data&&(e=t.element,t=t.data),salla.auth.event.next_event&&(t.next_event=salla.auth.event.next_event),this.request("register",t).then((async function(t){return salla.auth.event.registered.call(e,t),"authenticated"===t.data?.case&&(salla.auth.event.tokenFetched(t.data.token),await salla.auth.request("auth/jwt"),salla.auth.event.loggedIn(t),salla.auth.api.afterUserLogin()),t})).catch((function(t){throw salla.auth.event.registrationFailed.call(e,t),t}))}logout(t="twilight"){return salla.storage.clearAll(),salla.cookie.clearAll(),t=encodeURI(t),salla.auth.event.loggedOut().then((()=>{let e=salla.url.get(`logout?from=${t}`);console.log(`Going to ${e}, to do any thing before this action use: salla.auth.even.onLoggedOut(()=>{...})`);try{location.href=e}catch(t){salla.log(t)}}))}refresh(){return this.request("refresh").then((function(t){return salla.auth.event.tokenFetched(t.data.token),t})).catch((function(t){throw salla.auth.event.refreshFailed(t),t}))}afterUserLogin(){this.afterLoginEvent.event&&salla.event.emit(this.afterLoginEvent.event,this.afterLoginEvent.payload)}}class xa extends _a{constructor(){super(),this.namespace="order",this.endpoints={cancel:"orders/cancel/{id}",createCartFromOrder:"reorder/{id}",sendInvoice:"orders/send/{id}"},this.endpointsMethods={createCartFromOrder:"get"},this.after_init()}show(t){let e=salla.form.getPossibleValue(t?.data||t,["id","order_id"]);salla.event.dispatch("mobile::order.placed",{order_id:e}),location.href=salla.form.getPossibleValue(t?.data||t,["url"])}cancel(t){return t=t||Salla.config.get("page.id"),this.request(["cancel",t],{params:{has_apple_pay:!!window.ApplePaySession}}).then((function(e){return salla.event.order.canceled(e,t),e})).catch((function(e){throw salla.event.order.notCanceled(e,t),e}))}createCartFromOrder(t){return t=t||salla.config.get("page.id"),this.request(["createCartFromOrder",t]).then((function(e){return salla.cart.reset(),salla.event.order.orderCreated(e,t),window.location.href=e.data.url,e})).catch((function(e){throw salla.event.order.orderCreationFailed(e,t),e}))}sendInvoice(t){let e=salla.form.getPossibleValue(t,["id"])||salla.config.get("page.id");if(!e||isNaN(e)){let t="There is no id!";return salla.order.event.invoiceNotSent(t),salla.api.errorPromise(t)}return this.request(["sendInvoice",e],t).then((t=>(salla.event.order.invoiceSent(t,e),t))).catch((t=>{throw salla.event.order.invoiceNotSent(t,e),t}))}}class ka extends _a{constructor(){super(),this.namespace="product",this.previousQuery="",this.endpoints={getPrice:"products/{id}/price",availabilitySubscribe:"products/{id}/availability-notify",search:"products/search",details:"products/{product_id}/details",categories:"products/categories/{?id}",offers:"products/{product_id}/specialoffer",getSizeGuides:"products/{prod_id}/size-guides",giftDetail:"products/{product_id}/buy-as-gift",giftToCart:"products/{product_id}/buy-as-gift",giftImage:"products/buy-as-gift/image",buyNow:"products/{product_id}/buy-now",fetch:"products"},this.endpointsMethods={details:"get",giftDetail:"get",fetch:"get"},this.after_init()}getPrice(t){let e=t.data||t,n=salla.form.getPossibleValue(e,["id","prod_id","product_id"]);return this.request(["getPrice",n],"object"==typeof e?e:void 0).then((function(t){return salla.product.event.priceUpdated(t,n),t})).catch((function(t){throw salla.product.event.priceUpdateFailed(t,n),t}))}categories(t){return this.request(["categories",t||""],null,"get").then((function(t){return salla.product.event.categoriesFetched(t),t})).catch((function(t){throw salla.product.event.categoriesFailed(t),t}))}availabilitySubscribe(t){let e=t.data||t;return t=salla.form.getPossibleValue(e,["id","prod_id"]),this.request(["availabilitySubscribe",t],"object"==typeof e?e:void 0).then((function(e){return salla.product.event.availabilitySubscribed(e,t),e})).catch((function(e){throw salla.product.event.availabilitySubscribeFailed(e,t),e}))}search(t){let e=t.data;if(e||(e={params:"string"==typeof t?{query:t}:t}),!(t=e instanceof FormData?e.get("query"):e.query||e.params?.query)){let t='There is no "query"!';return salla.product.event.searchFailed(t),salla.api.errorPromise(t)}if(t===salla.api.product.previousQuery){let t="Query is same as previous one!";return salla.product.event.searchFailed(t),salla.api.product.previousQuery=null,salla.api.errorPromise(t)}return salla.api.product.previousQuery=t,this.request("search",e,"get").then((function(e){return salla.product.event.searchResults(e,t),e})).catch((function(e){throw salla.product.event.searchFailed(e,t),e}))}offers(t){if(!(t=salla.form.getPossibleValue(t?.data|t,["product_id","id"]))){let t='There is no "product_id"!';return salla.product.event.fetchOffersFailed(t),salla.api.errorPromise(t)}return this.request(["offers",t]).then((function(e){return salla.product.event.offersFetched(e,t),e})).catch((function(e){throw salla.product.event.fetchOffersFailed(e,t),e}))}getSizeGuides(t){return this.request(`products/${t}/size-guides`,null,"get").then((e=>(salla.product.event.sizeGuideFetched(e,t),e))).catch((e=>{throw salla.product.event.sizeGuideFetchFailed(e,t),e}))}getGiftDetails(t){return this.request(["giftDetail",t]).then((e=>(salla.product.event.giftFetched(e,t),e))).catch((e=>{throw salla.product.event.giftFetchFailed(e,t),e}))}getDetails(t,e=[]){if(!Array.isArray(e)){let t="withItems should be array.";return salla.product.event.detailFetchFailed(t),salla.api.errorPromise(t)}if(!t){let t="productId is not passed.";return salla.product.event.detailFetchFailed(t),salla.api.errorPromise(t)}return this.request(["details",t],{params:{with:e}}).then((function(e){return salla.product.event.detailFetched(e,t),e})).catch((function(e){throw salla.product.event.availabilitySubscribeFailed(e,t),e}))}addGiftToCart(t,e,n=!1){return this.request(["giftToCart",t],e).then((e=>(salla.product.event.addGiftToCartSucceeded(e,t),n&&(window.location.href=e.redirect),e))).catch((e=>{throw salla.product.event.addGiftToCartFailed(e,t),e}))}uploadGiftImage(t){return this.request("giftImage",t).then((t=>(salla.product.event.giftImageUploadSucceeded(t),t))).catch((t=>{throw salla.product.event.giftImageUploadFailed(t),t}))}fetch(t){if(!t.source){const t="Source cannot be empty. Please provide one.";return salla.product.event.productListFetchFailed(t),salla.api.errorPromise(t)}const e=!t.source_value,n="string"==typeof t.source_value&&"[]"===t.source_value,i=Array.isArray(t.source_value)&&!t.source_value.length;if((e||n||i)&&!["offers","latest","sales"].includes(t.source)){const t="Source value cannot be empty. Please provide one.";return salla.product.event.productListFetchFailed(t),salla.api.errorPromise(t)}if(["categories","brands","tags","selected"].includes(t.source)&&!Array.isArray(t.source_value)){const t="SourceValue type error. Expected an array.";return salla.product.event.productListFetchFailed(t),salla.api.errorPromise(t)}if("search"===t.source&&"string"!=typeof t.source_value){const t="SourceValue type error. Expected a string.";return salla.product.event.productListFetchFailed(t),salla.api.errorPromise(t)}if("related"===t.source&&isNaN(t.source_value)){const t="SourceValue type error. Expected a number.";return salla.product.event.productListFetchFailed(t),salla.api.errorPromise(t)}return this.request(this.endpoints.fetch,{params:t},"get").then((t=>(salla.product.event.productListFetchSucceeded(t),t))).catch((t=>{throw salla.product.event.productListFetchFailed(t),t}))}}class Fa extends _a{constructor(){super(),this.namespace="profile",this.endpoints={info:"auth/user",update:"profile/update",updateContacts:"profile/contacts/update",updateSettings:"profile/settings",verify:"profile/verify",delete:"profile"},this.endpointsMethods={delete:"delete"},this.after_init()}info(){return this.request("info",null,"get").then((t=>{let e={id:t.data.id,type:"user",email:t.data.email,mobile:t.data.phone.code+t.data.phone.number,country_code:t.data.phone.country,language_code:t.data.language,currency_code:t.data.currency,notifications:t.data.notifications,pending_orders:t.data.pending_orders,avatar:t.data.avatar,first_name:t.data.first_name,last_name:t.data.last_name,fetched_at:Date.now()};return salla.config.set("user",e),salla.storage.set("user",e),salla.profile.event.infoFetched(t),t})).catch((t=>{throw salla.profile.event.infoNotFetched(t),t}))}update(t){return this.request("update",t).then((t=>(salla.profile.event.updated(t),t))).catch((t=>{throw salla.event.profile.updateFailed(t),t}))}updateContacts(t){return this.request("updateContacts",t).then((t=>(salla.profile.event.verificationCodeSent(t),t))).catch((t=>{throw salla.event.profile.updateContactsFailed(t),t}))}verify(t){return this.request("verify",t).then((t=>(salla.profile.event.verified(t),t))).catch((t=>{throw salla.event.profile.unverified(t),t}))}updateSettings(t){return this.request("updateSettings",t).then((t=>(salla.event.profile.settingsUpdated(t),t))).catch((t=>{throw salla.event.profile.updateSettingsFailed(t),t}))}delete(){return this.request("delete").then((t=>(salla.storage.clearAll(),salla.cookie.clearAll(),salla.event.profile.deleted(t),window.location.href=salla.url.get("logout"),t))).catch((t=>{throw salla.event.profile.notDeleted(t),t}))}}class Aa extends _a{constructor(){super(),this.namespace="comment",this.endpoints={comments:"{type}/{id}/comments"},this.after_init()}add(t){if(t?.data&&(t=t.data),"string"==typeof(t=this.getCommentPayload(t,!0)))return salla.event.comment.additionFailed(t),salla.api.errorPromise(t);if(!t.comment){let t="can't find comment content!";return salla.event.comment.additionFailed(t),salla.api.errorPromise(t)}return this.request(["comments",t.type,t.id],{comment:t.comment}).then((function(e){return salla.event.comment.added(e,t.id),e})).catch((function(e){throw salla.event.comment.additionFailed(e,t.id),e}))}getCommentPayload(t){let e={};return["id","type","comment","per_page","page"].forEach((n=>{let i=salla.form.getPossibleValue(t,[n]);i&&(e[n]=i)})),e.id?e.type&&["products","pages","product","page"].includes(e.type)?(e.type+=["product","page"].includes(e.type)?"s":"",e):"Failed to get type one of:(products, product, page, pages)!":"Failed to get id!"}fetch(t){return"string"==typeof(t=this.getCommentPayload(t))?(salla.event.comment.fetchFailed(t),salla.api.errorPromise(t)):this.request(["comments",t.type,t.id],{params:t},"get").then((function(e){return salla.event.comment.fetched(e,t),e})).catch((function(e){throw salla.event.comment.fetchFailed(e,t),e}))}getPageComments(t,e=1,n=10){return this.fetch({id:t,type:"pages",page:e,per_page:n})}getProductComments(t,e=1,n=10){return this.fetch({id:t,type:"products",page:e,per_page:n})}}class Ta extends _a{constructor(){super(),this.namespace="currency",this.endpoints={change:"/",list:"currencies"},this.endpointsMethods={change:"get",list:"get"},this.webEndpoints=["change"],this.after_init()}change(t){if(!(t=salla.form.getPossibleValue(t.data||t,["currency","code"]))){let t="Can't find currency code!";return salla.currency.event.failed(t),salla.api.errorPromise(t)}return this.request("change",{params:{change_currency:"",currency:t}}).then((function(e){return salla.cookie.set("fresh_summary",1),salla.storage.set("cart",""),salla.currency.event.changed(e,t),e})).catch((function(e){throw salla.currency.event.failed(e,t),e}))}list(){return this.request("list").then((function(t){return salla.currency.event.fetched(t),t})).catch((function(t){throw salla.currency.event.failedToFetch(t),t}))}}class Ia extends _a{constructor(){super(),this.namespace="document"}}class Ra extends _a{constructor(){super(),this.namespace="rating",this.endpoints={store:"rating/store",products:"rating/products",shipping:"rating/shipping",order:"rating/{order_id}"},this.endpointsMethods={order:"get"},this.after_init()}order(t){let e="object"==typeof t?t:{},n=salla.form.getPossibleValue(t?.data||t,["order_id","id"]);if(!n){let t='There is no "order_id"!';return salla.event.rating.orderNotFetched(t),salla.api.errorPromise(t)}return this.request(["order",n],e).then((function(t){return salla.event.rating.orderFetched(t,n),t})).catch((function(t){throw salla.event.rating.orderNotFetched(t,n),t}))}store(t){if(!(t=t?.data||t)){let t='There is no "data"!';return salla.event.rating.storeFailed(t),salla.api.errorPromise(t)}return this.request("store",t).then((function(e){return salla.event.rating.storeRated(e,t),e})).catch((function(e){throw salla.event.rating.storeFailed(e,t),e}))}products(t){if(!(t=t?.data||t)){let t='There is no "data"!';return salla.event.rating.productsFailed(t),salla.api.errorPromise(t)}return this.request("products",t).then((function(e){return salla.event.rating.productsRated(e,t),e})).catch((function(e){throw salla.event.rating.productsFailed(e,t),e}))}shipping(t){if(!(t=t?.data||t)){let t='There is no "data"!';return salla.event.rating.shippingFailed(t),salla.api.errorPromise(t)}return this.request("shipping",t).then((function(e){return salla.event.rating.shippingRated(e,t),e})).catch((function(e){throw salla.event.rating.shippingFailed(e,t),e}))}}class Ca extends _a{constructor(){super(),this.namespace="wishlist",this.endpoints={add:"products/favorites/{id}",remove:"products/favorites/{id}"},this.endpointsMethods={remove:"delete"},this.after_init()}toggle(t){return salla.storage.get("salla::wishlist",[]).includes(t)?this.remove(t):this.add(t)}add(t){let e;return salla.config.isGuest()?(salla.wishlist.event.additionFailed(e=salla.lang.get("common.messages.must_login")),salla.error(e),salla.api.errorPromise(e)):(t=salla.form.getPossibleValue(t?.data||t,["product_id","id"]))?this.request(["add",t]).then((e=>(this.updateWishlistStorage(t),salla.wishlist.event.added(e,t),e))).catch((function(e){throw salla.wishlist.event.additionFailed(e,t),e})):(salla.wishlist.event.additionFailed(e="Failed to get product id!"),salla.api.errorPromise(e))}remove(t){let e;return salla.config.isGuest()?(salla.wishlist.event.additionFailed(e=salla.lang.get("common.messages.must_login")),salla.error(e),salla.api.errorPromise(e)):(t=salla.form.getPossibleValue(t?.data||t,["product_id","id"]))?this.request(["remove",t]).then((e=>(this.updateWishlistStorage(t,!1),salla.wishlist.event.removed(e,t),e))).catch((function(e){throw salla.wishlist.event.removingFailed(e,t),e})):(salla.wishlist.event.removingFailed(e="Failed to get id!"),salla.api.errorPromise(e))}updateWishlistStorage(t,e=!0){let n=salla.storage.get("salla::wishlist",[]);e?n.push(t):n.splice(n.indexOf(t),1),salla.storage.set("salla::wishlist",n)}}class Pa extends _a{constructor(){super(),this.namespace="scopes",this.endpoints={get:"scopes",change:"scopes",getProductAvailability:"scopes/availability?product_id={id}"},this.after_init()}get(){return this.request("scopes",null,"get").then((t=>(salla.scope.event.fetched(t),t))).catch((t=>{throw salla.scope.event.notFetched(t),t}))}change(t){return this.request("scopes",t).then((t=>(salla.scope.event.changeSucceeded(t),t))).catch((t=>{throw salla.scope.event.changeFailed(t),t}))}getProductAvailability(t=null){return this.request(`scopes/availability?product_id=${t}`,null,"get").then((e=>(salla.scope.event.productAvailabilityFetched(e,t),e))).catch((t=>{throw salla.scope.event.productAvailabilityNotFetched(t),t}))}}class La extends _a{constructor(){super(),this.namespace="booking",this.endpoints={add:"cart/booking/product/{id}"},this.endpointsMethods={add:"get"}}async add(t,e=!0){if(!t){let t="Please provide product id.";return salla.booking.event.additionFailed(t),salla.api.errorPromise(t)}return this.request(["add",t]).then((function(t){return salla.booking.event.added(t),e&&"booking"===t.data.redirect.to&&(window.location.href=t.data.redirect.url),t})).catch((function(t){throw salla.booking.event.additionFailed(t),t}))}}class Da extends _a{constructor(){super(),this.namespace="landing",this.endpoints={getDetails:"landing/{landing_page_id}",createCartFromPage:"landing/{landing_page_id}"},this.endpointsMethods={getDetails:"get"},this.after_init()}getDetails(t){if(!t){let t="page landing id not passed";return salla.event.landing.getDetailsFailed(t),salla.api.errorPromise(t)}return this.request(["getDetails",t]).then((function(e){return salla.event.landing.detailsFetched(e,t),e})).catch((function(e){throw salla.event.landing.getDetailsFailed(e,t),e}))}createCartFromPage(t){if(!t){let t="page landing id not passed";return salla.event.landing.orderCreationFailed(t),salla.api.errorPromise(t)}return salla.config.isGuest()?(salla.auth.api.setAfterLoginEvent("landing::createCartFromPage",t),salla.event.dispatch("login::open"),salla.api.successPromise("")):this.request(["createCartFromPage",t]).then((function(e){return salla.event.landing.orderCreated(e,t).then((()=>location.href=e.data.url)),e})).catch((function(e){throw salla.event.landing.orderCreationFailed(e,t),e}))}}class Na{constructor(){salla.event.on("twilight::before.ready",(t=>this.initiateRequest(t))),salla.event.on("profile::info.fetched",(t=>this.setCurrencyAndLanguage(t))),salla.event.on("auth::token.fetched",(t=>{salla.storage.set("token",t),this.setToken(t)})),salla.event.on("auth::token.invalid",(()=>{salla.storage.remove("user"),salla.storage.remove("token")})),this.notifier_handler_disabled=!1,this.axios=ua.create({headers:{common:{"X-Requested-With":"XMLHttpRequest","S-SOURCE":"twilight","S-APP-VERSION":"v2.0.0","S-APP-OS":"browser","cache-control":"no-cache",pragma:"no-cache"}}})}getHeaders(){return this.axios.defaults.headers.common}setHeaders(t){return Object.entries(t).forEach((t=>this.setHeader(t[0],t[1]))),this}setHeader(t,e){return salla.infiniteScroll.fetchOptions.headers[t]=this.axios.defaults.headers.common[t]=e,this}async withoutNotifier(t){return this.notifier_handler_disabled=!0,await t().finally((()=>{this.notifier_handler_disabled=!1}))}async initiateRequest(t){this.axios.defaults.baseURL=Salla.config.get("store.api",Salla.config.get("store.url")),this.setHeaders({"Store-Identifier":Salla.config.get("store.id"),currency:t.user?.currency_code||"SAR","accept-language":salla.lang.getLocale(),"s-user-id":t.user?.id});let e=salla.storage.get("scope");e&&this.setHeaders({"s-scope-type":e.type,"s-scope-id":e.id}),await this.injectTokenToTheRequests(t),salla.storage.get("affiliate_code")&&this.setHeader("s-affiliate-code",salla.storage.get("affiliate_code"))}async injectTokenToTheRequests(t){let e=salla.storage.get("token"),n="guest"===t.user.type,i=t.user?.id,r=salla.storage.get("user.id"),a=t=>{this.setToken(t),salla.event.emit("api::initiated")},s=async()=>{!n&&i?(salla.log("Api:: case 1 => current is is guest & web session available"),await salla.auth.api.refresh().then((async()=>{await salla.profile.info()})).catch((()=>salla.auth.event.tokenInvalid()))):salla.auth.event.tokenInvalid()};if(!e)return salla.log("Api:: case 1 => current is is guest"),void await s();let o=va(e);return console.log(o),Date.now()/1e3>o.exp?(salla.log("Api:: case 2 => current user is logged-in and there is a token, but it's expired"),void await s()):o.sub===i&&r===i&&r&&i?(salla.log("Api:: case 4 => current user is logged-in and there is a token, and it's not expired"),void a(e)):(salla.log("Api:: case 3 => there is a token and user in session/local missing or mismatch"),this.setHeader("Authorization","Bearer "+e),void await salla.profile.info().then((async t=>{await salla.auth.api.request("auth/jwt"),a(e)})).catch((()=>{salla.log("Api:: case 3 => failed get fresh profile"),this.setHeader("Authorization",null),salla.auth.event.tokenInvalid()})))}setToken(t){return this.setHeader("Authorization","Bearer "+t),salla.event.emit("api::token.injected",t),this.token=t,this}setCurrencyAndLanguage(t){return this.setHeaders({currency:t.data.currency,"accept-language":t.data.language})}request(t,e=void 0,n="get",i={}){let r={endPoint:t,payload:e,method:n,options:i},a="undefined"!=typeof event?event.currentTarget:null,s=!1;return"SALLA-BUTTON"===a?.tagName&&(s=!0),s&&a?.load(),this.axios[r.method](r.endPoint,r.payload,r.options).then((t=>(s&&a?.stop(),t.data&&t.request&&(t=t.data),this.handleAfterResponseActions(t),t))).catch((t=>{throw s&&a?.stop(),salla.event.document.requestFailed(r,t),this.handleErrorResponse(t),t}))}handleAfterResponseActions(t){if(!t)return;let{data:e,googleTags:n=null}=t,i=e&&e.googleTags?e.googleTags:n;try{dataLayer&&i&&dataLayer.push(i)}catch(t){salla.logger.error(t.message)}this.fireEventsForResponse(t),this.showAlert(t)}fireEventsForResponse(t){let e=t?.events||t.data?.events||t.error?.events;"string"==typeof e&&(e=JSON.parse(e)),e&&Object.keys(e).forEach((t=>salla.event.dispatch(t,e[t])))}handleErrorResponse(t){if(t.response&&t.response.data)return t.response.data.error&&t.response.data.error.fields&&!this.notifier_handler_disabled?this.handleInvalidFields(t):this.handleAfterResponseActions(t.response.data)}showAlert(t){if(t&&!this.notifier_handler_disabled)return t.case&&t.msg?salla.notify.fire(t.msg,t.case,t):t.hasOwnProperty("success")&&t.data?.message?salla.notify.fire(t.data?.message,t.success?salla.notify.types.success:salla.notify.types.error,t):t.error&&t.error.message&&"FORBIDDEN"!==t.error.message?salla.error(t.error.message,t):void 0}handleInvalidFields(t){let e=t.response.data.error.fields,n=[];Object.keys(e).forEach((t=>{let i=e[t];Array.isArray(i)?i.forEach((t=>n.push(t))):n.push(i)}));let i=(n.length>1?"* ":"")+n.join("\n* ");salla.error(i,t)}isFastRequestsAllowed(){return Salla.config.get("fastRequests")}promise(t,e=!0){return new Promise(((n,i)=>e?n(t):i(t)))}errorPromise(t){return this.promise(t,!1)}successPromise(t){return this.promise(t,!0)}}class $a{constructor(t){"ready"!==bi.status?t?(bi.config.merge(t),t?.events&&bi.event.dispatchEvents(t?.events),t._token&&salla.api.setHeader("X-CSRF-TOKEN",t._token),this.injectMaintenanceAlert(),this.injectTemplateStoreAlert(),this.injectThemePreviewAlert(),this.injectEditAlert(),t?.user?.language_code&&salla.lang.setLocale(t?.user?.language_code),salla.lang.loadStoreTranslations(),this.setSallaReady(t)):this.setSallaReady(t):salla.log("Trying to re-initiate Salla, while its status === 'ready'!")}injectMaintenanceAlert(){salla.config.get("maintenance")&&(document.body.classList.add("has-maintenance-bar"),document.querySelector("salla-maintenance-alert")?salla.logger.warn("salla-maintenance-alert element Existed before!"):salla.lang.onLoaded((()=>document.body.prepend(document.createElement("salla-maintenance-alert")))))}injectTemplateStoreAlert(){salla.config.get("store.is_template")&&(document.body.classList.add("has-bottom-alert"),document.querySelector("salla-bottom-alert")?salla.logger.warn("salla-bottom-alert element Existed before!"):salla.lang.onLoaded((()=>document.body.append(document.createElement("salla-bottom-alert")))))}injectThemePreviewAlert(){"preview"===salla.config.get("theme.mode")&&(document.body.classList.add("has-preview-bar"),document.querySelector("#s-theme_preview_bar")?salla.logger.warn("#s-theme_preview_bar element Existed before!"):salla.lang.onLoaded((()=>{let t=document.createElement("div");t.id="s-theme_preview_bar",t.setAttribute("style","display: flex; justify-content: space-between; text-align: center; background-color: #232323; color: #fff; padding: 10px; font-size: 0.875rem; line-height: 1.25rem; position: relative;"),t.innerHTML=`\n <div style="display:flex; align-items:center;">\n <img width="32" src="https://cdn.salla.network/images/logo/logo-light.svg">\n <span style="margin:0 10px;">${salla.lang.get("blocks.header.preview_mode")}: <span style="background:rgba(255,255,255,0.25);border-radius:15px; padding:2px 15px 4px">${salla.config.get("theme.name")}</span></span>\n </div>\n <a href="${salla.url.get("preview_theme/cancel/preview")}" style="line-height:32px; width:32px;"><i class="sicon-cancel"></i></a>\n `,document.body.prepend(t)})))}injectEditAlert(){let t=salla.config.get("edit");t&&(document.querySelector("#s-edit-alert")?salla.logger.warn("#s-edit-alert element Existed before!"):salla.lang.onLoaded((()=>{let e=document.createElement("div");e.id="s-edit-alert",e.innerHTML=`\n <a href="${t}" style="display:block; background-color:${salla.config.get("theme.color.primary","#5cd5c4")}; color:${salla.config.get("theme.color.reverse","#fff")}; padding: 10px; text-align:center; font-size: 0.875rem; line-height: 1.25rem;">\n <i class="sicon-edit"></i> \n ${salla.lang.get("pages.products.quick_edit")}\n </a>\n `,document.body.prepend(e)})))}handleElementAjaxRequest(t,e){if(!(e instanceof HTMLFormElement||e instanceof HTMLAnchorElement))return salla.logger.warn("trying to call ajax from non Element!!"),!1;t.preventDefault();let n=e.getAjaxFormData(t),i=n.method?n.method.toLowerCase():void 0;salla.api.request(n.url,n.formData,i).then((t=>(t.data&&t.request&&(t=t.data),salla.api.handleAfterResponseActions(t),this.callAjaxEvent(n.events.success,t,n.formData),t))).catch((t=>{throw salla.api.handleErrorResponse(t),this.callAjaxEvent(n.events.fail,t,n.formData),t}))}callAjaxEvent(t,e,n){if(t){if(n instanceof FormData){const t={};Array.from(n.entries()).forEach((function(e){t[e[0]]=e[1]})),n=t}window[t]?window[t](e,n):salla.event.dispatch(t,e,n)}}setSallaReady(t){bi.event.dispatch("twilight::before.ready",t),bi.status="ready",bi.event.dispatch("twilight::initiated",t),window.dispatchEvent(new CustomEvent("twilight::initiated",{detail:t}))}}bi.status="loading",bi.notify=wa,bi.lang=new class extends Ti{constructor(t){(t=t||{}).messages=t.messages||window.translations,t.locale=t.locale||(window.locale||navigator.language||navigator.userLanguage||"ar").split("-")[0],t.fallback=t.fallback||t.locale,super(t),this.translationsLoaded=!1}onLoaded(t){if(this.translationsLoaded)return t();Salla.event.once("languages::translations.loaded",t)}loadStoreTranslations(){if(this.hash=salla.config.get("theme.translations_hash",salla.config.get("store.id","twilight")),this.message||(salla.log("try to load translations from localstorage"),this.messages=salla.storage.get(`s_translations.${this.hash}`),this.messages&&(this.translationsLoaded=!0)&&super.setMessages(this.messages)),this.messages)return salla.event.dispatch("languages::translations.loaded"),void salla.logger.info("The messages of transactions is already loaded");salla.url.get("")?this.loadScript(salla.url.get(`languages/assets/${this.hash}.js`)):this.loadScript("https://cdn.salla.network/js/translations.js",!1)}setMessages(t){super.setMessages(t),salla.event.dispatch("languages::translations.loaded"),this.translationsLoaded=!0}loadScript(t,e=!0){let n=document.createElement("script");n.src=t,n.onload=()=>{if(window.translations)return salla.storage.remove("s_translations"),salla.storage.set("s_translations",{[this.hash]:window.translations}),this.setMessages(window.translations);n.onerror()},n.onerror=()=>{if(e)return salla.logger.warn("Failed to load Translations for store, lets try load it from CDN"),this.loadScript("https://cdn.salla.network/js/translations.js",!1);salla.logger.error("Failed to load Translations, check your network logs for more details\nor: salla.lang.setMessages({....}), see https://docs.salla.dev for more information's.")},document.head.appendChild(n)}getWithDefault(t,e,n,i){let r=this.get(t,n,i);return r!==t?r:e}get(t,e,n){let i=t;(window.translations||this.translationsLoaded)&&(i="trans."+t);let r=super.get(i,e,n);return r!==i?r:super.get(i,e,"en").replace(i,t)}set(t,e){return salla.helpers.setNested(this.messages[this.getLocale()+".trans"],t,e),this}},bi.form=new class{async submit(t,e=null){let n=e;if("SubmitEvent"===e?.constructor?.name||"submit"===e?.type){if(e.preventDefault(),"FORM"!==e.target?.tagName)return Salla.logger.warn("Failed find the target element for submit action. make sure you submit a form element"),new Promise((()=>{throw"Failed find the target element for submit action. make sure you submit a form element"}));"SALLA-BUTTON"===e?.submitter?.parentElement?.tagName&&e.submitter.parentElement.load(),n=e.target.getElementSallaData(),salla.log("Data from element",n)}if(/^https?:\/\/(?:www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_\+.~#?&//=]*)$/gm.test(t))return salla.api.request(t,n,"post").finally((()=>{loaderSupported&&e?.submitter?.parentElement.stop()}));let i=t.split("."),r=i.splice(-1);return await salla.call(i.join("."))[r](n).finally((()=>e?.submitter?.parentElement?.stop())).catch((t=>{throw salla.logger.warn(t),t}))}onSubmit(t,e){return salla.form.submit(t,e),!1}onChange(t,e){return e?.currentTarget?"FORM"!==e?.currentTarget?.tagName||e.currentTarget.checkValidity()?(salla.form.submit(t,e.currentTarget.getElementSallaData()),!0):(salla.logger.warn(`Trying to trigger '${t}' without filling required fields!`),!1):(salla.logger.warn(`Trying to trigger '${t}' without event!`),!1)}getPossibleValue(t,e,n=!1){if(!t)return;if("object"!=typeof t)return t;let i;for(let n=0;n<e.length&&!(i=t[e[n]])&&!("undefined"!=typeof FormData&&t instanceof FormData&&(i=t.get(e[n])));n++);return i=i||t,"object"!=typeof i||n?i:void 0}},bi.infiniteScroll=new class extends ya{constructor(t,e){super(t,e),this.options={path:".infinite-scroll-btn",history:"push",status:".infinite-scroll-status",append:".list-block"},this.fetchOptions={headers:{"S-INFINITE-SCROLL":!0}},this.instances=[]}initiate(t,e,n,i=!1){i?((n=n||{}).fetchOptions={...this.fetchOptions,...n.fetchOptions||{}},n.responseBody="json"):n=this.getCustomOptions(e,n);let r="string"!=typeof t?t:document.querySelector(t),a=n.path;if(!r||!a||"string"==typeof a&&!document.querySelector(a))return void Salla.logger.warn(r?"Path Option (a link that has next page link) Not Existed!":"Container For InfiniteScroll not Existed!");let s=new Ai(r,n);return s.on("scrollThreshold",Salla.infiniteScroll.event.scrollThreshold),s.on("request",Salla.infiniteScroll.event.request),s.on("load",Salla.infiniteScroll.event.load),s.on("append",Salla.infiniteScroll.event.append),s.on("error",Salla.infiniteScroll.event.error),s.on("last",Salla.infiniteScroll.event.last),s.on("history",Salla.infiniteScroll.event.history),this.instances.push(s),s}getCustomOptions(t,e){return(e="object"==typeof t&&t||e||this.options).fetchOptions=this.fetchOptions,e.path=e.path||this.options.path,e.button=e.button||e.path,e.status=e.status||this.options.status,e.hasOwnProperty("history")||(e.history=this.options.history),e.nextPage=e.nextPage||e.next_page,e.append="string"==typeof t&&t||e.append||this.options.append,e}loadNextPage(t){("string"!=typeof t?t:document.querySelector(t)).loadNextPage()}destroy(t){("string"!=typeof t?t:document.querySelector(t)).destroy()}}(void 0,salla.event.infiniteScroll),bi.api=new class extends Na{constructor(){super(),this.auth=new Oa,this.cart=new ja,this.loyalty=new Ea,this.order=new xa,this.rating=new Ra,this.product=new ka,this.profile=new Fa,this.comment=new Aa,this.currency=new Ta,this.document=new Ia,this.wishlist=new Ca,this.scope=new Pa,this.booking=new La,this.landing=new Da}},["cart","auth","order","scope","rating","comment","loyalty","product","profile","currency","document","wishlist","booking","landing"].forEach((t=>bi[t]=new ya(bi.api[t],bi.event[t]))),bi.call=t=>{let e=bi,n=t.split(".");for(;n.length&&(e=e[n.shift()]););return e},bi.init=t=>new $a(t),salla.event.once("twilight::init",salla.init),salla.event.once("twilight::api",(t=>{let e=t?.events;e&&salla.event.dispatchEvents(e)})),bi.success=bi.notify.success,bi.error=bi.notify.error,bi.versions.twilight="[VI]{version}[/VI]",bi.onInitiated=t=>salla.event.once("twilight::initiated",t),bi.onReady=bi.onReady||function(t){"ready"!==salla.status?bi.onInitiated(t):t(salla.config.all())},window.dispatchEvent(new CustomEvent("salla::created"));var qa=e((function(e,n){!function(t,n){e.exports=n()}(t,(function(){function t(){return t=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(t[i]=n[i])}return t},t.apply(this,arguments)}var e="undefined"!=typeof window,n=e&&!("onscroll"in window)||"undefined"!=typeof navigator&&/(gle|ing|ro)bot|crawl|spider/i.test(navigator.userAgent),i=e&&"IntersectionObserver"in window,r=e&&"classList"in document.createElement("p"),a=e&&window.devicePixelRatio>1,s={elements_selector:".lazy",container:n||e?document:null,threshold:300,thresholds:null,data_src:"src",data_srcset:"srcset",data_sizes:"sizes",data_bg:"bg",data_bg_hidpi:"bg-hidpi",data_bg_multi:"bg-multi",data_bg_multi_hidpi:"bg-multi-hidpi",data_bg_set:"bg-set",data_poster:"poster",class_applied:"applied",class_loading:"loading",class_loaded:"loaded",class_error:"error",class_entered:"entered",class_exited:"exited",unobserve_completed:!0,unobserve_entered:!1,cancel_on_exit:!0,callback_enter:null,callback_exit:null,callback_applied:null,callback_loading:null,callback_loaded:null,callback_error:null,callback_finish:null,callback_cancel:null,use_native:!1,restore_on_error:!1},o=function(e){return t({},s,e)},l=function(t,e){var n,i="LazyLoad::Initialized",r=new t(e);try{n=new CustomEvent(i,{detail:{instance:r}})}catch(t){(n=document.createEvent("CustomEvent")).initCustomEvent(i,!1,!1,{instance:r})}window.dispatchEvent(n)},u="src",c="srcset",f="sizes",h="poster",d="llOriginalAttrs",v="data",p="loading",g="loaded",m="applied",w="error",y="native",b="data-",S="ll-status",_=function(t,e){return t.getAttribute(b+e)},j=function(t){return _(t,S)},E=function(t,e){return function(t,e,n){var i="data-ll-status";null!==n?t.setAttribute(i,n):t.removeAttribute(i)}(t,0,e)},O=function(t){return E(t,null)},x=function(t){return null===j(t)},k=function(t){return j(t)===y},F=[p,g,m,w],A=function(t,e,n,i){t&&(void 0===i?void 0===n?t(e):t(e,n):t(e,n,i))},T=function(t,e){r?t.classList.add(e):t.className+=(t.className?" ":"")+e},I=function(t,e){r?t.classList.remove(e):t.className=t.className.replace(new RegExp("(^|\\s+)"+e+"(\\s+|$)")," ").replace(/^\s+/,"").replace(/\s+$/,"")},R=function(t){return t.llTempImage},C=function(t,e){if(e){var n=e._observer;n&&n.unobserve(t)}},P=function(t,e){t&&(t.loadingCount+=e)},L=function(t,e){t&&(t.toLoadCount=e)},D=function(t){for(var e,n=[],i=0;e=t.children[i];i+=1)"SOURCE"===e.tagName&&n.push(e);return n},N=function(t,e){var n=t.parentNode;n&&"PICTURE"===n.tagName&&D(n).forEach(e)},$=function(t,e){D(t).forEach(e)},q=[u],U=[u,h],z=[u,c,f],M=[v],B=function(t){return!!t[d]},J=function(t){return t[d]},G=function(t){return delete t[d]},H=function(t,e){if(!B(t)){var n={};e.forEach((function(e){n[e]=t.getAttribute(e)})),t[d]=n}},V=function(t,e){if(B(t)){var n=J(t);e.forEach((function(e){!function(t,e,n){n?t.setAttribute(e,n):t.removeAttribute(e)}(t,e,n[e])}))}},Q=function(t,e,n){T(t,e.class_applied),E(t,m),n&&(e.unobserve_completed&&C(t,e),A(e.callback_applied,t,n))},W=function(t,e,n){T(t,e.class_loading),E(t,p),n&&(P(n,1),A(e.callback_loading,t,n))},X=function(t,e,n){n&&t.setAttribute(e,n)},Z=function(t,e){X(t,f,_(t,e.data_sizes)),X(t,c,_(t,e.data_srcset)),X(t,u,_(t,e.data_src))},K={IMG:function(t,e){N(t,(function(t){H(t,z),Z(t,e)})),H(t,z),Z(t,e)},IFRAME:function(t,e){H(t,q),X(t,u,_(t,e.data_src))},VIDEO:function(t,e){$(t,(function(t){H(t,q),X(t,u,_(t,e.data_src))})),H(t,U),X(t,h,_(t,e.data_poster)),X(t,u,_(t,e.data_src)),t.load()},OBJECT:function(t,e){H(t,M),X(t,v,_(t,e.data_src))}},Y=["IMG","IFRAME","VIDEO","OBJECT"],tt=function(t,e){!e||function(t){return t.loadingCount>0}(e)||function(t){return t.toLoadCount>0}(e)||A(t.callback_finish,e)},et=function(t,e,n){t.addEventListener(e,n),t.llEvLisnrs[e]=n},nt=function(t,e,n){t.removeEventListener(e,n)},it=function(t){return!!t.llEvLisnrs},rt=function(t){if(it(t)){var e=t.llEvLisnrs;for(var n in e){var i=e[n];nt(t,n,i)}delete t.llEvLisnrs}},at=function(t,e,n){!function(t){delete t.llTempImage}(t),P(n,-1),function(t){t&&(t.toLoadCount-=1)}(n),I(t,e.class_loading),e.unobserve_completed&&C(t,n)},st=function(t,e,n){var i=R(t)||t;it(i)||function(t,e,n){it(t)||(t.llEvLisnrs={});var i="VIDEO"===t.tagName?"loadeddata":"load";et(t,i,e),et(t,"error",n)}(i,(function(r){!function(t,e,n,i){var r=k(e);at(e,n,i),T(e,n.class_loaded),E(e,g),A(n.callback_loaded,e,i),r||tt(n,i)}(0,t,e,n),rt(i)}),(function(r){!function(t,e,n,i){var r=k(e);at(e,n,i),T(e,n.class_error),E(e,w),A(n.callback_error,e,i),n.restore_on_error&&V(e,z),r||tt(n,i)}(0,t,e,n),rt(i)}))},ot=function(t,e,n){!function(t){return Y.indexOf(t.tagName)>-1}(t)?function(t,e,n){!function(t){t.llTempImage=document.createElement("IMG")}(t),st(t,e,n),function(t){B(t)||(t[d]={backgroundImage:t.style.backgroundImage})}(t),function(t,e,n){var i=_(t,e.data_bg),r=_(t,e.data_bg_hidpi),s=a&&r?r:i;s&&(t.style.backgroundImage='url("'.concat(s,'")'),R(t).setAttribute(u,s),W(t,e,n))}(t,e,n),function(t,e,n){var i=_(t,e.data_bg_multi),r=_(t,e.data_bg_multi_hidpi),s=a&&r?r:i;s&&(t.style.backgroundImage=s,Q(t,e,n))}(t,e,n),function(t,e,n){var i=_(t,e.data_bg_set);if(i){var r=i.split("|"),a=r.map((function(t){return"image-set(".concat(t,")")}));t.style.backgroundImage=a.join(),""===t.style.backgroundImage&&(a=r.map((function(t){return"-webkit-image-set(".concat(t,")")})),t.style.backgroundImage=a.join()),Q(t,e,n)}}(t,e,n)}(t,e,n):function(t,e,n){st(t,e,n),function(t,e,n){var i=K[t.tagName];i&&(i(t,e),W(t,e,n))}(t,e,n)}(t,e,n)},lt=function(t){t.removeAttribute(u),t.removeAttribute(c),t.removeAttribute(f)},ut=function(t){N(t,(function(t){V(t,z)})),V(t,z)},ct={IMG:ut,IFRAME:function(t){V(t,q)},VIDEO:function(t){$(t,(function(t){V(t,q)})),V(t,U),t.load()},OBJECT:function(t){V(t,M)}},ft=function(t,e){(function(t){var e=ct[t.tagName];e?e(t):function(t){if(B(t)){var e=J(t);t.style.backgroundImage=e.backgroundImage}}(t)})(t),function(t,e){x(t)||k(t)||(I(t,e.class_entered),I(t,e.class_exited),I(t,e.class_applied),I(t,e.class_loading),I(t,e.class_loaded),I(t,e.class_error))}(t,e),O(t),G(t)},ht=["IMG","IFRAME","VIDEO"],dt=function(t){return t.use_native&&"loading"in HTMLImageElement.prototype},vt=function(t,e,n){t.forEach((function(t){return function(t){return t.isIntersecting||t.intersectionRatio>0}(t)?function(t,e,n,i){var r=function(t){return F.indexOf(j(t))>=0}(t);E(t,"entered"),T(t,n.class_entered),I(t,n.class_exited),function(t,e,n){e.unobserve_entered&&C(t,n)}(t,n,i),A(n.callback_enter,t,e,i),r||ot(t,n,i)}(t.target,t,e,n):function(t,e,n,i){x(t)||(T(t,n.class_exited),function(t,e,n,i){n.cancel_on_exit&&function(t){return j(t)===p}(t)&&"IMG"===t.tagName&&(rt(t),function(t){N(t,(function(t){lt(t)})),lt(t)}(t),ut(t),I(t,n.class_loading),P(i,-1),O(t),A(n.callback_cancel,t,e,i))}(t,e,n,i),A(n.callback_exit,t,e,i))}(t.target,t,e,n)}))},pt=function(t){return Array.prototype.slice.call(t)},gt=function(t){return t.container.querySelectorAll(t.elements_selector)},mt=function(t){return function(t){return j(t)===w}(t)},wt=function(t,e){return function(t){return pt(t).filter(x)}(t||gt(e))},yt=function(t,n){var r=o(t);this._settings=r,this.loadingCount=0,function(t,e){i&&!dt(t)&&(e._observer=new IntersectionObserver((function(n){vt(n,t,e)}),function(t){return{root:t.container===document?null:t.container,rootMargin:t.thresholds||t.threshold+"px"}}(t)))}(r,this),function(t,n){e&&(n._onlineHandler=function(){!function(t,e){var n;(n=gt(t),pt(n).filter(mt)).forEach((function(e){I(e,t.class_error),O(e)})),e.update()}(t,n)},window.addEventListener("online",n._onlineHandler))}(r,this),this.update(n)};return yt.prototype={update:function(t){var e,r,a=this._settings,s=wt(t,a);L(this,s.length),!n&&i?dt(a)?function(t,e,n){t.forEach((function(t){-1!==ht.indexOf(t.tagName)&&function(t,e,n){t.setAttribute("loading","lazy"),st(t,e,n),function(t,e){var n=K[t.tagName];n&&n(t,e)}(t,e),E(t,y)}(t,e,n)})),L(n,0)}(s,a,this):(r=s,function(t){t.disconnect()}(e=this._observer),function(t,e){e.forEach((function(e){t.observe(e)}))}(e,r)):this.loadAll(s)},destroy:function(){this._observer&&this._observer.disconnect(),e&&window.removeEventListener("online",this._onlineHandler),gt(this._settings).forEach((function(t){G(t)})),delete this._observer,delete this._settings,delete this._onlineHandler,delete this.loadingCount,delete this.toLoadCount},loadAll:function(t){var e=this,n=this._settings;wt(t,n).forEach((function(t){C(t,e),ot(t,n,e)}))},restoreAll:function(){var t=this._settings;gt(t).forEach((function(e){ft(e,t)}))}},yt.load=function(t,e){var n=o(e);ot(t,n)},yt.resetStatus=function(t){O(t)},e&&function(t,e){if(e)if(e.length)for(var n,i=0;n=e[i];i+=1)l(t,n);else l(t,e)}(yt,window.lazyLoadOptions),yt}))}));function Ua(){if(!document.lazyLoadInstance){document.lazyLoadInstance=new qa({use_native:true});document.lazyLoadBackgrounds=new qa({elements_selector:".lazy[data-bg]:not(.loaded)"})}if(document.readyState!=="complete"){document.addEventListener("DOMContentLoaded",(()=>document.lazyLoadInstance.update()));document.addEventListener("DOMContentLoaded",(()=>document.lazyLoadBackgrounds.update()))}salla.infiniteScroll.event.onAppend((()=>{document.lazyLoadInstance.update();document.lazyLoadBackgrounds.update()}))}const za=Ua;export{za as g};
|
|
25
|
-
//# sourceMappingURL=p-
|
|
24
|
+
(function(t,n){{e.exports=n()}})(t,(function(){function t(){if(typeof document!=="undefined"&&document.documentElement){return document.documentElement.lang}}function e(t){if(t==="-Inf"){return-Infinity}else if(t==="+Inf"||t==="Inf"||t==="*"){return Infinity}return parseInt(t,10)}var n=/^({\s*(\-?\d+(\.\d+)?[\s*,\s*\-?\d+(\.\d+)?]*)\s*})|([\[\]])\s*(-Inf|\*|\-?\d+(\.\d+)?)\s*,\s*(\+?Inf|\*|\-?\d+(\.\d+)?)\s*([\[\]])$/;var i=/({\s*(\-?\d+(\.\d+)?[\s*,\s*\-?\d+(\.\d+)?]*)\s*})|([\[\]])\s*(-Inf|\*|\-?\d+(\.\d+)?)\s*,\s*(\+?Inf|\*|\-?\d+(\.\d+)?)\s*([\[\]])/;var r={locale:"en"};var a=function(e){e=e||{};this.locale=e.locale||t()||r.locale;this.fallback=e.fallback;this.messages=e.messages};a.prototype.setMessages=function(t){this.messages=t};a.prototype.getLocale=function(){return this.locale||this.fallback};a.prototype.setLocale=function(t){this.locale=t};a.prototype.getFallback=function(){return this.fallback};a.prototype.setFallback=function(t){this.fallback=t};a.prototype.has=function(t,e){if(typeof t!=="string"||!this.messages){return false}return this._getMessage(t,e)!==null};a.prototype.get=function(t,e,n){if(!this.has(t,n)){return t}var i=this._getMessage(t,n);if(i===null){return t}if(e){i=this._applyReplacements(i,e)}return i};a.prototype.trans=function(t,e){return this.get(t,e)};a.prototype.choice=function(t,e,n,r){n=typeof n!=="undefined"?n:{};n.count=e;var a=this.get(t,n,r);if(a===null||a===undefined){return a}var s=a.split("|");var o=[];for(var l=0;l<s.length;l++){s[l]=s[l].trim();if(i.test(s[l])){var u=s[l].split(/\s/);o.push(u.shift());s[l]=u.join(" ")}}if(s.length===1){return a}for(var c=0;c<o.length;c++){if(this._testInterval(e,o[c])){return s[c]}}r=r||this._getLocale(t);var f=this._getPluralForm(e,r);return s[f]};a.prototype.transChoice=function(t,e,n){return this.choice(t,e,n)};a.prototype._parseKey=function(t,e){if(typeof t!=="string"||typeof e!=="string"){return null}var n=t.split(".");var i=n[0].replace(/\//g,".");return{source:e+"."+i,sourceFallback:this.getFallback()+"."+i,entries:n.slice(1)}};a.prototype._getMessage=function(t,e){e=e||this.getLocale();t=this._parseKey(t,e);if(this.messages[t.source]===undefined&&this.messages[t.sourceFallback]===undefined){return null}var n=this.messages[t.source];var i=t.entries.slice();var r=i.join(".");n=n!==undefined?this._getValueInKey(n,r):undefined;if(typeof n!=="string"&&this.messages[t.sourceFallback]){n=this.messages[t.sourceFallback];i=t.entries.slice();r="";while(i.length&&n!==undefined){var r=!r?i.shift():r.concat(".",i.shift());if(n[r]){n=n[r];r=""}}}if(typeof n!=="string"){return null}return n};a.prototype._getValueInKey=function(t,e){if(typeof t[e]==="string"){return t[e]}e=e.replace(/\[(\w+)\]/g,".$1");e=e.replace(/^\./,"");var n=e.split(".");for(var i=0,r=n.length;i<r;++i){var a=n.slice(0,i+1).join(".");var s=n.slice(i+1,n.length).join(".");if(t[a]){return this._getValueInKey(t[a],s)}}return t};a.prototype._getLocale=function(t){t=this._parseKey(t,this.locale);if(this.messages[t.source]){return this.locale}if(this.messages[t.sourceFallback]){return this.fallback}return null};a.prototype._findMessageInTree=function(t,e){while(t.length&&e!==undefined){var n=t.join(".");if(e[n]){e=e[n];break}e=e[t.shift()]}return e};a.prototype._sortReplacementKeys=function(t,e){return e.length-t.length};a.prototype._applyReplacements=function(t,e){var n=Object.keys(e).sort(this._sortReplacementKeys);n.forEach((function(n){t=t.replace(new RegExp(":"+n,"gi"),(function(t){var i=e[n];var r=t===t.toUpperCase();if(r){return i.toUpperCase()}var a=t===t.replace(/\w/i,(function(t){return t.toUpperCase()}));if(a){return i.charAt(0).toUpperCase()+i.slice(1)}return i}))}));return t};a.prototype._testInterval=function(t,i){if(typeof i!=="string"){throw"Invalid interval: should be a string."}i=i.trim();var r=i.match(n);if(!r){throw"Invalid interval: "+i}if(r[2]){var a=r[2].split(",");for(var s=0;s<a.length;s++){if(parseInt(a[s],10)===t){return true}}}else{r=r.filter((function(t){return!!t}));var o=r[1];var l=e(r[2]);if(l===Infinity){l=-Infinity}var u=e(r[3]);var c=r[4];return(o==="["?t>=l:t>l)&&(c==="]"?t<=u:t<u)}return false};a.prototype._getPluralForm=function(t,e){switch(e){case"az":case"bo":case"dz":case"id":case"ja":case"jv":case"ka":case"km":case"kn":case"ko":case"ms":case"th":case"tr":case"vi":case"zh":return 0;case"af":case"bn":case"bg":case"ca":case"da":case"de":case"el":case"en":case"eo":case"es":case"et":case"eu":case"fa":case"fi":case"fo":case"fur":case"fy":case"gl":case"gu":case"ha":case"he":case"hu":case"is":case"it":case"ku":case"lb":case"ml":case"mn":case"mr":case"nah":case"nb":case"ne":case"nl":case"nn":case"no":case"om":case"or":case"pa":case"pap":case"ps":case"pt":case"so":case"sq":case"sv":case"sw":case"ta":case"te":case"tk":case"ur":case"zu":return t==1?0:1;case"am":case"bh":case"fil":case"fr":case"gun":case"hi":case"hy":case"ln":case"mg":case"nso":case"xbr":case"ti":case"wa":return t===0||t===1?0:1;case"be":case"bs":case"hr":case"ru":case"sr":case"uk":return t%10==1&&t%100!=11?0:t%10>=2&&t%10<=4&&(t%100<10||t%100>=20)?1:2;case"cs":case"sk":return t==1?0:t>=2&&t<=4?1:2;case"ga":return t==1?0:t==2?1:2;case"lt":return t%10==1&&t%100!=11?0:t%10>=2&&(t%100<10||t%100>=20)?1:2;case"sl":return t%100==1?0:t%100==2?1:t%100==3||t%100==4?2:3;case"mk":return t%10==1?0:1;case"mt":return t==1?0:t===0||t%100>1&&t%100<11?1:t%100>10&&t%100<20?2:3;case"lv":return t===0?0:t%10==1&&t%100!=11?1:2;case"pl":return t==1?0:t%10>=2&&t%10<=4&&(t%100<12||t%100>14)?1:2;case"cy":return t==1?0:t==2?1:t==8||t==11?2:3;case"ro":return t==1?0:t===0||t%100>0&&t%100<20?1:2;case"ar":return t===0?0:t==1?1:t==2?2:t%100>=3&&t%100<=10?3:t%100>=11&&t%100<=99?4:5;default:return 0}};return a}))}));var Ii=function t(e,n){return function t(){var i=new Array(arguments.length);for(var r=0;r<i.length;r++){i[r]=arguments[r]}return e.apply(n,i)}};var Ri=Object.prototype.toString;var Ci=function(t){return function(e){var n=Ri.call(e);return t[n]||(t[n]=n.slice(8,-1).toLowerCase())}}(Object.create(null));function Pi(t){t=t.toLowerCase();return function e(n){return Ci(n)===t}}function Li(t){return Array.isArray(t)}function Di(t){return typeof t==="undefined"}function Ni(t){return t!==null&&!Di(t)&&t.constructor!==null&&!Di(t.constructor)&&typeof t.constructor.isBuffer==="function"&&t.constructor.isBuffer(t)}var $i=Pi("ArrayBuffer");function qi(t){var e;if(typeof ArrayBuffer!=="undefined"&&ArrayBuffer.isView){e=ArrayBuffer.isView(t)}else{e=t&&t.buffer&&$i(t.buffer)}return e}function Ui(t){return typeof t==="string"}function zi(t){return typeof t==="number"}function Mi(t){return t!==null&&typeof t==="object"}function Bi(t){if(Ci(t)!=="object"){return false}var e=Object.getPrototypeOf(t);return e===null||e===Object.prototype}var Ji=Pi("Date");var Gi=Pi("File");var Hi=Pi("Blob");var Vi=Pi("FileList");function Qi(t){return Ri.call(t)==="[object Function]"}function Wi(t){return Mi(t)&&Qi(t.pipe)}function Xi(t){var e="[object FormData]";return t&&(typeof FormData==="function"&&t instanceof FormData||Ri.call(t)===e||Qi(t.toString)&&t.toString()===e)}var Zi=Pi("URLSearchParams");function Ki(t){return t.trim?t.trim():t.replace(/^\s+|\s+$/g,"")}function Yi(){if(typeof navigator!=="undefined"&&(navigator.product==="ReactNative"||navigator.product==="NativeScript"||navigator.product==="NS")){return false}return typeof window!=="undefined"&&typeof document!=="undefined"}function tr(t,e){if(t===null||typeof t==="undefined"){return}if(typeof t!=="object"){t=[t]}if(Li(t)){for(var n=0,i=t.length;n<i;n++){e.call(null,t[n],n,t)}}else{for(var r in t){if(Object.prototype.hasOwnProperty.call(t,r)){e.call(null,t[r],r,t)}}}}function er(){var t={};function e(e,n){if(Bi(t[n])&&Bi(e)){t[n]=er(t[n],e)}else if(Bi(e)){t[n]=er({},e)}else if(Li(e)){t[n]=e.slice()}else{t[n]=e}}for(var n=0,i=arguments.length;n<i;n++){tr(arguments[n],e)}return t}function nr(t,e,n){tr(e,(function e(i,r){if(n&&typeof i==="function"){t[r]=Ii(i,n)}else{t[r]=i}}));return t}function ir(t){if(t.charCodeAt(0)===65279){t=t.slice(1)}return t}function rr(t,e,n,i){t.prototype=Object.create(e.prototype,i);t.prototype.constructor=t;n&&Object.assign(t.prototype,n)}function ar(t,e,n){var i;var r;var a;var s={};e=e||{};do{i=Object.getOwnPropertyNames(t);r=i.length;while(r-- >0){a=i[r];if(!s[a]){e[a]=t[a];s[a]=true}}t=Object.getPrototypeOf(t)}while(t&&(!n||n(t,e))&&t!==Object.prototype);return e}function sr(t,e,n){t=String(t);if(n===undefined||n>t.length){n=t.length}n-=e.length;var i=t.indexOf(e,n);return i!==-1&&i===n}function or(t){if(!t)return null;var e=t.length;if(Di(e))return null;var n=new Array(e);while(e-- >0){n[e]=t[e]}return n}var lr=function(t){return function(e){return t&&e instanceof t}}(typeof Uint8Array!=="undefined"&&Object.getPrototypeOf(Uint8Array));var ur={isArray:Li,isArrayBuffer:$i,isBuffer:Ni,isFormData:Xi,isArrayBufferView:qi,isString:Ui,isNumber:zi,isObject:Mi,isPlainObject:Bi,isUndefined:Di,isDate:Ji,isFile:Gi,isBlob:Hi,isFunction:Qi,isStream:Wi,isURLSearchParams:Zi,isStandardBrowserEnv:Yi,forEach:tr,merge:er,extend:nr,trim:Ki,stripBOM:ir,inherits:rr,toFlatObject:ar,kindOf:Ci,kindOfTest:Pi,endsWith:sr,toArray:or,isTypedArray:lr,isFileList:Vi};function cr(t){return encodeURIComponent(t).replace(/%3A/gi,":").replace(/%24/g,"$").replace(/%2C/gi,",").replace(/%20/g,"+").replace(/%5B/gi,"[").replace(/%5D/gi,"]")}var fr=function t(e,n,i){if(!n){return e}var r;if(i){r=i(n)}else if(ur.isURLSearchParams(n)){r=n.toString()}else{var a=[];ur.forEach(n,(function t(e,n){if(e===null||typeof e==="undefined"){return}if(ur.isArray(e)){n=n+"[]"}else{e=[e]}ur.forEach(e,(function t(e){if(ur.isDate(e)){e=e.toISOString()}else if(ur.isObject(e)){e=JSON.stringify(e)}a.push(cr(n)+"="+cr(e))}))}));r=a.join("&")}if(r){var s=e.indexOf("#");if(s!==-1){e=e.slice(0,s)}e+=(e.indexOf("?")===-1?"?":"&")+r}return e};function hr(){this.handlers=[]}hr.prototype.use=function t(e,n,i){this.handlers.push({fulfilled:e,rejected:n,synchronous:i?i.synchronous:false,runWhen:i?i.runWhen:null});return this.handlers.length-1};hr.prototype.eject=function t(e){if(this.handlers[e]){this.handlers[e]=null}};hr.prototype.forEach=function t(e){ur.forEach(this.handlers,(function t(n){if(n!==null){e(n)}}))};var dr=hr;var vr=function t(e,n){ur.forEach(e,(function t(i,r){if(r!==n&&r.toUpperCase()===n.toUpperCase()){e[n]=i;delete e[r]}}))};function pr(t,e,n,i,r){Error.call(this);this.message=t;this.name="AxiosError";e&&(this.code=e);n&&(this.config=n);i&&(this.request=i);r&&(this.response=r)}ur.inherits(pr,Error,{toJSON:function t(){return{message:this.message,name:this.name,description:this.description,number:this.number,fileName:this.fileName,lineNumber:this.lineNumber,columnNumber:this.columnNumber,stack:this.stack,config:this.config,code:this.code,status:this.response&&this.response.status?this.response.status:null}}});var gr=pr.prototype;var mr={};["ERR_BAD_OPTION_VALUE","ERR_BAD_OPTION","ECONNABORTED","ETIMEDOUT","ERR_NETWORK","ERR_FR_TOO_MANY_REDIRECTS","ERR_DEPRECATED","ERR_BAD_RESPONSE","ERR_BAD_REQUEST","ERR_CANCELED"].forEach((function(t){mr[t]={value:t}}));Object.defineProperties(pr,mr);Object.defineProperty(gr,"isAxiosError",{value:true});pr.from=function(t,e,n,i,r,a){var s=Object.create(gr);ur.toFlatObject(t,s,(function t(e){return e!==Error.prototype}));pr.call(s,t.message,e,n,i,r);s.name=t.name;a&&Object.assign(s,a);return s};var wr=pr;var yr={silentJSONParsing:true,forcedJSONParsing:true,clarifyTimeoutError:false};function br(t,e){e=e||new FormData;var n=[];function i(t){if(t===null)return"";if(ur.isDate(t)){return t.toISOString()}if(ur.isArrayBuffer(t)||ur.isTypedArray(t)){return typeof Blob==="function"?new Blob([t]):Buffer.from(t)}return t}function r(t,a){if(ur.isPlainObject(t)||ur.isArray(t)){if(n.indexOf(t)!==-1){throw Error("Circular reference detected in "+a)}n.push(t);ur.forEach(t,(function t(n,s){if(ur.isUndefined(n))return;var o=a?a+"."+s:s;var l;if(n&&!a&&typeof n==="object"){if(ur.endsWith(s,"{}")){n=JSON.stringify(n)}else if(ur.endsWith(s,"[]")&&(l=ur.toArray(n))){l.forEach((function(t){!ur.isUndefined(t)&&e.append(o,i(t))}));return}}r(n,o)}));n.pop()}else{e.append(a,i(t))}}r(t);return e}var Sr=br;var _r=function t(e,n,i){var r=i.config.validateStatus;if(!i.status||!r||r(i.status)){e(i)}else{n(new wr("Request failed with status code "+i.status,[wr.ERR_BAD_REQUEST,wr.ERR_BAD_RESPONSE][Math.floor(i.status/100)-4],i.config,i.request,i))}};var jr=ur.isStandardBrowserEnv()?function t(){return{write:function t(e,n,i,r,a,s){var o=[];o.push(e+"="+encodeURIComponent(n));if(ur.isNumber(i)){o.push("expires="+new Date(i).toGMTString())}if(ur.isString(r)){o.push("path="+r)}if(ur.isString(a)){o.push("domain="+a)}if(s===true){o.push("secure")}document.cookie=o.join("; ")},read:function t(e){var n=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return n?decodeURIComponent(n[3]):null},remove:function t(e){this.write(e,"",Date.now()-864e5)}}}():function t(){return{write:function t(){},read:function t(){return null},remove:function t(){}}}();var Er=function t(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)};var Or=function t(e,n){return n?e.replace(/\/+$/,"")+"/"+n.replace(/^\/+/,""):e};var xr=function t(e,n){if(e&&!Er(n)){return Or(e,n)}return n};var kr=["age","authorization","content-length","content-type","etag","expires","from","host","if-modified-since","if-unmodified-since","last-modified","location","max-forwards","proxy-authorization","referer","retry-after","user-agent"];var Fr=function t(e){var n={};var i;var r;var a;if(!e){return n}ur.forEach(e.split("\n"),(function t(e){a=e.indexOf(":");i=ur.trim(e.substr(0,a)).toLowerCase();r=ur.trim(e.substr(a+1));if(i){if(n[i]&&kr.indexOf(i)>=0){return}if(i==="set-cookie"){n[i]=(n[i]?n[i]:[]).concat([r])}else{n[i]=n[i]?n[i]+", "+r:r}}}));return n};var Ar=ur.isStandardBrowserEnv()?function t(){var e=/(msie|trident)/i.test(navigator.userAgent);var n=document.createElement("a");var i;function r(t){var i=t;if(e){n.setAttribute("href",i);i=n.href}n.setAttribute("href",i);return{href:n.href,protocol:n.protocol?n.protocol.replace(/:$/,""):"",host:n.host,search:n.search?n.search.replace(/^\?/,""):"",hash:n.hash?n.hash.replace(/^#/,""):"",hostname:n.hostname,port:n.port,pathname:n.pathname.charAt(0)==="/"?n.pathname:"/"+n.pathname}}i=r(window.location.href);return function t(e){var n=ur.isString(e)?r(e):e;return n.protocol===i.protocol&&n.host===i.host}}():function t(){return function t(){return true}}();function Tr(t){wr.call(this,t==null?"canceled":t,wr.ERR_CANCELED);this.name="CanceledError"}ur.inherits(Tr,wr,{__CANCEL__:true});var Ir=Tr;var Rr=function t(e){var n=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return n&&n[1]||""};var Cr=function t(e){return new Promise((function t(n,i){var r=e.data;var a=e.headers;var s=e.responseType;var o;function l(){if(e.cancelToken){e.cancelToken.unsubscribe(o)}if(e.signal){e.signal.removeEventListener("abort",o)}}if(ur.isFormData(r)&&ur.isStandardBrowserEnv()){delete a["Content-Type"]}var u=new XMLHttpRequest;if(e.auth){var c=e.auth.username||"";var f=e.auth.password?unescape(encodeURIComponent(e.auth.password)):"";a.Authorization="Basic "+btoa(c+":"+f)}var h=xr(e.baseURL,e.url);u.open(e.method.toUpperCase(),fr(h,e.params,e.paramsSerializer),true);u.timeout=e.timeout;function d(){if(!u){return}var t="getAllResponseHeaders"in u?Fr(u.getAllResponseHeaders()):null;var r=!s||s==="text"||s==="json"?u.responseText:u.response;var a={data:r,status:u.status,statusText:u.statusText,headers:t,config:e,request:u};_r((function t(e){n(e);l()}),(function t(e){i(e);l()}),a);u=null}if("onloadend"in u){u.onloadend=d}else{u.onreadystatechange=function t(){if(!u||u.readyState!==4){return}if(u.status===0&&!(u.responseURL&&u.responseURL.indexOf("file:")===0)){return}setTimeout(d)}}u.onabort=function t(){if(!u){return}i(new wr("Request aborted",wr.ECONNABORTED,e,u));u=null};u.onerror=function t(){i(new wr("Network Error",wr.ERR_NETWORK,e,u,u));u=null};u.ontimeout=function t(){var n=e.timeout?"timeout of "+e.timeout+"ms exceeded":"timeout exceeded";var r=e.transitional||yr;if(e.timeoutErrorMessage){n=e.timeoutErrorMessage}i(new wr(n,r.clarifyTimeoutError?wr.ETIMEDOUT:wr.ECONNABORTED,e,u));u=null};if(ur.isStandardBrowserEnv()){var v=(e.withCredentials||Ar(h))&&e.xsrfCookieName?jr.read(e.xsrfCookieName):undefined;if(v){a[e.xsrfHeaderName]=v}}if("setRequestHeader"in u){ur.forEach(a,(function t(e,n){if(typeof r==="undefined"&&n.toLowerCase()==="content-type"){delete a[n]}else{u.setRequestHeader(n,e)}}))}if(!ur.isUndefined(e.withCredentials)){u.withCredentials=!!e.withCredentials}if(s&&s!=="json"){u.responseType=e.responseType}if(typeof e.onDownloadProgress==="function"){u.addEventListener("progress",e.onDownloadProgress)}if(typeof e.onUploadProgress==="function"&&u.upload){u.upload.addEventListener("progress",e.onUploadProgress)}if(e.cancelToken||e.signal){o=function(t){if(!u){return}i(!t||t&&t.type?new Ir:t);u.abort();u=null};e.cancelToken&&e.cancelToken.subscribe(o);if(e.signal){e.signal.aborted?o():e.signal.addEventListener("abort",o)}}if(!r){r=null}var p=Rr(h);if(p&&["http","https","file"].indexOf(p)===-1){i(new wr("Unsupported protocol "+p+":",wr.ERR_BAD_REQUEST,e));return}u.send(r)}))};var Pr=null;var Lr={"Content-Type":"application/x-www-form-urlencoded"};function Dr(t,e){if(!ur.isUndefined(t)&&ur.isUndefined(t["Content-Type"])){t["Content-Type"]=e}}function Nr(){var t;if(typeof XMLHttpRequest!=="undefined"){t=Cr}else if(typeof process!=="undefined"&&Object.prototype.toString.call(process)==="[object process]"){t=Cr}return t}function $r(t,e,n){if(ur.isString(t)){try{(e||JSON.parse)(t);return ur.trim(t)}catch(t){if(t.name!=="SyntaxError"){throw t}}}return(n||JSON.stringify)(t)}var qr={transitional:yr,adapter:Nr(),transformRequest:[function t(e,n){vr(n,"Accept");vr(n,"Content-Type");if(ur.isFormData(e)||ur.isArrayBuffer(e)||ur.isBuffer(e)||ur.isStream(e)||ur.isFile(e)||ur.isBlob(e)){return e}if(ur.isArrayBufferView(e)){return e.buffer}if(ur.isURLSearchParams(e)){Dr(n,"application/x-www-form-urlencoded;charset=utf-8");return e.toString()}var i=ur.isObject(e);var r=n&&n["Content-Type"];var a;if((a=ur.isFileList(e))||i&&r==="multipart/form-data"){var s=this.env&&this.env.FormData;return Sr(a?{"files[]":e}:e,s&&new s)}else if(i||r==="application/json"){Dr(n,"application/json");return $r(e)}return e}],transformResponse:[function t(e){var n=this.transitional||qr.transitional;var i=n&&n.silentJSONParsing;var r=n&&n.forcedJSONParsing;var a=!i&&this.responseType==="json";if(a||r&&ur.isString(e)&&e.length){try{return JSON.parse(e)}catch(t){if(a){if(t.name==="SyntaxError"){throw wr.from(t,wr.ERR_BAD_RESPONSE,this,null,this.response)}throw t}}}return e}],timeout:0,xsrfCookieName:"XSRF-TOKEN",xsrfHeaderName:"X-XSRF-TOKEN",maxContentLength:-1,maxBodyLength:-1,env:{FormData:Pr},validateStatus:function t(e){return e>=200&&e<300},headers:{common:{Accept:"application/json, text/plain, */*"}}};ur.forEach(["delete","get","head"],(function t(e){qr.headers[e]={}}));ur.forEach(["post","put","patch"],(function t(e){qr.headers[e]=ur.merge(Lr)}));var Ur=qr;var zr=function t(e,n,i){var r=this||Ur;ur.forEach(i,(function t(i){e=i.call(r,e,n)}));return e};var Mr=function t(e){return!!(e&&e.__CANCEL__)};function Br(t){if(t.cancelToken){t.cancelToken.throwIfRequested()}if(t.signal&&t.signal.aborted){throw new Ir}}var Jr=function t(e){Br(e);e.headers=e.headers||{};e.data=zr.call(e,e.data,e.headers,e.transformRequest);e.headers=ur.merge(e.headers.common||{},e.headers[e.method]||{},e.headers);ur.forEach(["delete","get","head","post","put","patch","common"],(function t(n){delete e.headers[n]}));var n=e.adapter||Ur.adapter;return n(e).then((function t(n){Br(e);n.data=zr.call(e,n.data,n.headers,e.transformResponse);return n}),(function t(n){if(!Mr(n)){Br(e);if(n&&n.response){n.response.data=zr.call(e,n.response.data,n.response.headers,e.transformResponse)}}return Promise.reject(n)}))};var Gr=function t(e,n){n=n||{};var i={};function r(t,e){if(ur.isPlainObject(t)&&ur.isPlainObject(e)){return ur.merge(t,e)}else if(ur.isPlainObject(e)){return ur.merge({},e)}else if(ur.isArray(e)){return e.slice()}return e}function a(t){if(!ur.isUndefined(n[t])){return r(e[t],n[t])}else if(!ur.isUndefined(e[t])){return r(undefined,e[t])}}function s(t){if(!ur.isUndefined(n[t])){return r(undefined,n[t])}}function o(t){if(!ur.isUndefined(n[t])){return r(undefined,n[t])}else if(!ur.isUndefined(e[t])){return r(undefined,e[t])}}function l(t){if(t in n){return r(e[t],n[t])}else if(t in e){return r(undefined,e[t])}}var u={url:s,method:s,data:s,baseURL:o,transformRequest:o,transformResponse:o,paramsSerializer:o,timeout:o,timeoutMessage:o,withCredentials:o,adapter:o,responseType:o,xsrfCookieName:o,xsrfHeaderName:o,onUploadProgress:o,onDownloadProgress:o,decompress:o,maxContentLength:o,maxBodyLength:o,beforeRedirect:o,transport:o,httpAgent:o,httpsAgent:o,cancelToken:o,socketPath:o,responseEncoding:o,validateStatus:l};ur.forEach(Object.keys(e).concat(Object.keys(n)),(function t(e){var n=u[e]||a;var r=n(e);ur.isUndefined(r)&&n!==l||(i[e]=r)}));return i};var Hr={version:"0.27.2"};var Vr=Hr.version;var Qr={};["object","boolean","number","function","string","symbol"].forEach((function(t,e){Qr[t]=function n(i){return typeof i===t||"a"+(e<1?"n ":" ")+t}}));var Wr={};Qr.transitional=function t(e,n,i){function r(t,e){return"[Axios v"+Vr+"] Transitional option '"+t+"'"+e+(i?". "+i:"")}return function(t,i,a){if(e===false){throw new wr(r(i," has been removed"+(n?" in "+n:"")),wr.ERR_DEPRECATED)}if(n&&!Wr[i]){Wr[i]=true;console.warn(r(i," has been deprecated since v"+n+" and will be removed in the near future"))}return e?e(t,i,a):true}};function Xr(t,e,n){if(typeof t!=="object"){throw new wr("options must be an object",wr.ERR_BAD_OPTION_VALUE)}var i=Object.keys(t);var r=i.length;while(r-- >0){var a=i[r];var s=e[a];if(s){var o=t[a];var l=o===undefined||s(o,a,t);if(l!==true){throw new wr("option "+a+" must be "+l,wr.ERR_BAD_OPTION_VALUE)}continue}if(n!==true){throw new wr("Unknown option "+a,wr.ERR_BAD_OPTION)}}}var Zr={assertOptions:Xr,validators:Qr};var Kr=Zr.validators;function Yr(t){this.defaults=t;this.interceptors={request:new dr,response:new dr}}Yr.prototype.request=function t(e,n){if(typeof e==="string"){n=n||{};n.url=e}else{n=e||{}}n=Gr(this.defaults,n);if(n.method){n.method=n.method.toLowerCase()}else if(this.defaults.method){n.method=this.defaults.method.toLowerCase()}else{n.method="get"}var i=n.transitional;if(i!==undefined){Zr.assertOptions(i,{silentJSONParsing:Kr.transitional(Kr.boolean),forcedJSONParsing:Kr.transitional(Kr.boolean),clarifyTimeoutError:Kr.transitional(Kr.boolean)},false)}var r=[];var a=true;this.interceptors.request.forEach((function t(e){if(typeof e.runWhen==="function"&&e.runWhen(n)===false){return}a=a&&e.synchronous;r.unshift(e.fulfilled,e.rejected)}));var s=[];this.interceptors.response.forEach((function t(e){s.push(e.fulfilled,e.rejected)}));var o;if(!a){var l=[Jr,undefined];Array.prototype.unshift.apply(l,r);l=l.concat(s);o=Promise.resolve(n);while(l.length){o=o.then(l.shift(),l.shift())}return o}var u=n;while(r.length){var c=r.shift();var f=r.shift();try{u=c(u)}catch(t){f(t);break}}try{o=Jr(u)}catch(t){return Promise.reject(t)}while(s.length){o=o.then(s.shift(),s.shift())}return o};Yr.prototype.getUri=function t(e){e=Gr(this.defaults,e);var n=xr(e.baseURL,e.url);return fr(n,e.params,e.paramsSerializer)};ur.forEach(["delete","get","head","options"],(function t(e){Yr.prototype[e]=function(t,n){return this.request(Gr(n||{},{method:e,url:t,data:(n||{}).data}))}}));ur.forEach(["post","put","patch"],(function t(e){function n(t){return function n(i,r,a){return this.request(Gr(a||{},{method:e,headers:t?{"Content-Type":"multipart/form-data"}:{},url:i,data:r}))}}Yr.prototype[e]=n();Yr.prototype[e+"Form"]=n(true)}));var ta=Yr;function ea(t){if(typeof t!=="function"){throw new TypeError("executor must be a function.")}var e;this.promise=new Promise((function t(n){e=n}));var n=this;this.promise.then((function(t){if(!n._listeners)return;var e;var i=n._listeners.length;for(e=0;e<i;e++){n._listeners[e](t)}n._listeners=null}));this.promise.then=function(t){var e;var i=new Promise((function(t){n.subscribe(t);e=t})).then(t);i.cancel=function t(){n.unsubscribe(e)};return i};t((function t(i){if(n.reason){return}n.reason=new Ir(i);e(n.reason)}))}ea.prototype.throwIfRequested=function t(){if(this.reason){throw this.reason}};ea.prototype.subscribe=function t(e){if(this.reason){e(this.reason);return}if(this._listeners){this._listeners.push(e)}else{this._listeners=[e]}};ea.prototype.unsubscribe=function t(e){if(!this._listeners){return}var n=this._listeners.indexOf(e);if(n!==-1){this._listeners.splice(n,1)}};ea.source=function t(){var e;var n=new ea((function t(n){e=n}));return{token:n,cancel:e}};var na=ea;var ia=function t(e){return function t(n){return e.apply(null,n)}};var ra=function t(e){return ur.isObject(e)&&e.isAxiosError===true};function aa(t){var e=new ta(t);var n=Ii(ta.prototype.request,e);ur.extend(n,ta.prototype,e);ur.extend(n,e);n.create=function e(n){return aa(Gr(t,n))};return n}var sa=aa(Ur);sa.Axios=ta;sa.CanceledError=Ir;sa.CancelToken=na;sa.isCancel=Mr;sa.VERSION=Hr.version;sa.toFormData=Sr;sa.AxiosError=wr;sa.Cancel=sa.CanceledError;sa.all=function t(e){return Promise.all(e)};sa.spread=ia;sa.isAxiosError=ra;var oa=sa;var la=sa;oa.default=la;var ua=oa;function ca(t){this.message=t}ca.prototype=new Error,ca.prototype.name="InvalidCharacterError";var fa="undefined"!=typeof window&&window.atob&&window.atob.bind(window)||function(t){var e=String(t).replace(/=+$/,"");if(e.length%4==1)throw new ca("'atob' failed: The string to be decoded is not correctly encoded.");for(var n,i,r=0,a=0,s="";i=e.charAt(a++);~i&&(n=r%4?64*n+i:i,r++%4)?s+=String.fromCharCode(255&n>>(-2*r&6)):0)i="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(i);return s};function ha(t){var e=t.replace(/-/g,"+").replace(/_/g,"/");switch(e.length%4){case 0:break;case 2:e+="==";break;case 3:e+="=";break;default:throw"Illegal base64url string!"}try{return function(t){return decodeURIComponent(fa(t).replace(/(.)/g,(function(t,e){var n=e.charCodeAt(0).toString(16).toUpperCase();return n.length<2&&(n="0"+n),"%"+n})))}(e)}catch(t){return fa(e)}}function da(t){this.message=t}function va(t,e){if("string"!=typeof t)throw new da("Invalid token specified");var n=!0===(e=e||{}).header?0:1;try{return JSON.parse(ha(t.split(".")[n]))}catch(t){throw new da("Invalid token specified: "+t.message)}}da.prototype=new Error,da.prototype.name="InvalidTokenError";let pa=function(t,e,n){return alert(t)},ga=function(t,e){return pa(t,ma.error,e)},ma={error:"error",success:"success",info:"info"};var wa={fire:function(t,e,n){return pa(t,e,n)},setNotifier:function(t){pa=t,salla.event.emit("twilight::notifier.changed")},error:ga,success:function(t,e){return pa(t,ma.success,e)},info:function(t,e){return pa(t,ma.info,e)},sallaInitiated:function(){let t=window.location.href.match(/([\?\&]danger=)[^&]+/g);t&&(window.history.replaceState(null,document.title,window.location.pathname),salla.event.once("twilight::notifier.changed",(()=>{t.forEach((t=>{ga(decodeURI(t.replace("?danger=","").replace("&danger=","")))}))})))},types:ma};class ya{constructor(t,e){return this.api=t,this.event=e,new Proxy(this,{get:function(n,i){return"event"===i?e:"api"===i?t:t&&t[i]||n[i]}})}}Element.prototype.matches||(Element.prototype.matches=Element.prototype.msMatchesSelector),Element.prototype.closest||(Element.prototype.closest=function(t){for(var e=this;e;){if(e.matches(t))return e;e=e.parentElement}}),Element.prototype.getElementSallaData=function(t,...e){if(!this.getAttribute)return;if(this.hasAttribute("data-json"))try{return JSON.parse(this.getAttribute("data-json"))}catch(t){}let n=this.getAttribute("data-function");if(n&&window[n])return"function"==typeof window[n]?this.getFilteredData(window[n].call(this,...e)):this.getFilteredData(window[n]);let i=this.hasAttribute("data-form-selector")?document.querySelector(this.dataset.formSelector):void 0;if(i="FORM"===this.tagName?this:i||this.closest("form")||this.closest("[salla-form-data]")||this,i&&"FORM"===i.tagName)return this.getFilteredData(new FormData(i),null,i);let r=i.querySelectorAll("[name]");if(!r.length)return this.getFilteredData();let a=Object.assign({},this.dataset);return r.forEach((t=>{if(!["checkbox","radio"].includes(t.type)||t.checked)try{let e=Salla.helpers.inputData(t.name,t.value,a);a[e.name]=e.value}catch(e){Salla.log(t.name+" can't be send")}})),this.getFilteredData(a)},Element.prototype.canEventFireHook=function(t){return!!this.hasAttribute&&this.hasAttribute(Salla.api.hooksPrefix+t.type)},Element.prototype.hasAttributeStartsWith=function(t,e){t=t.toLowerCase();for(var n=0;n<this.attributes.length;n++){let i=this.attributes[n].name.toLowerCase();if(0===i.indexOf(t))return!e||i}return!1},HTMLFormElement.prototype.getAjaxFormData=function(t){var e=this.querySelectorAll('input[type="file"]');e.forEach((t=>{t.files.length||t.setAttribute("disabled","")}));var n=new FormData(this);return e.forEach((t=>{t.files.length||t.removeAttribute("disabled")})),{formData:this.getFilteredData(n,t),url:this.getAttribute("action"),method:this.getAttribute("method")||"post",events:{success:this.dataset.onSuccess,fail:this.dataset.onFail}}},Element.prototype.getFilteredData=function(t=null,e=null,n=null){return t=t||n?.dataset||this.dataset,n&&this.name&&void 0!==this.value&&(t=function(t,e,n){t instanceof FormData?t.append(e,n):t[e]=n;return t}(t,this.name,this.value)),["filterBeforeSubmit","filterBeforeSend"].forEach((i=>{let r=n?.dataset[i]||this.dataset[i];if(r){var a=window[r];if("function"==typeof a){if(!a(t,n||this,e)&&t)throw`Data failed to be pass verify function window.${r}(formData, element, event)!`;return a(t,n||this,e)}Salla.log("window."+r+"() not found!")}})),t},HTMLAnchorElement.prototype.getAjaxFormData=function(t){return{formData:this.getFilteredData(null,t),url:this.getAttribute("href"),method:this.dataset.type||"get",events:{success:this.dataset.onSuccess,fail:this.dataset.onFail}}};class ba{constructor(){this.events={},this.namespace="";let t=/function (.{1,})\(/.exec(this.constructor.toString());this.className=(t&&t.length>1?t[1]:"").toLowerCase()}after_init(){this.createDynamicFunctions()}createDynamicFunctions(){Object.keys(this.events).forEach((t=>{this.createDynamicEventFuns(t),this.createDynamicListenerFuns(t)}))}createDynamicEventFuns(t){if(this[t])return;let e=this;this[t]=function(...n){return e.dispatch(t,...n)}}createDynamicListenerFuns(t){let e="on"+t.charAt(0).toUpperCase()+t.slice(1);if(this[e])return;let n=this;this[e]=function(e){return n.on(t,(async(...t)=>e(...t)))}}getEventName(t){return t=this.events[t]||t,!this.namespace||t.includes("::")?t:this.namespace+Salla.event.delimiter+t}dispatch(t,...e){return Salla.event.emitAsync(this.getEventName(t),...e)}on(t,e,n={}){return Salla.event.addListener(this.getEventName(t),e,n)}once(t,e){return Salla.event.once(this.getEventName(t),e)}}function Sa(t){t&&t.sallaInitiated&&!t.initiated&&(t.sallaInitiated(),t.initiated=!0)}Salla.event.auth=new class extends ba{constructor(){super(),this.namespace="auth",this.events={login:"login",logout:"logout",codeSent:"code.sent",codeNotSent:"code.not-sent",verified:"verified",verificationFailed:"verification.failed",loggedIn:"logged.in",registered:"registered",registrationFailed:"registration.failed",loggedOut:"logged.out",failedLogout:"failed.logout",refreshFailed:"refresh.failed",tokenFetched:"token.fetched",tokenInvalid:"token.invalid"},this.after_init()}login(t){return t?(t.type&&this.setTypeActionOnVerified(t.type),this.next_event=t.next_event||null,this.dispatch("login",...arguments)):(this.next_event=null,this.dispatch("login",...arguments))}loggedIn(t){return Salla.profile.info().finally((()=>this.dispatch("loggedIn",t)))}setTypeActionOnVerified(t){this.type_action_on_verified=t}getTypeActionOnVerified(){return this.type_action_on_verified||"redirect"}},Salla.event.cart=new class extends ba{constructor(){super(),this.namespace="cart",this.events={latestFetched:"latest.fetched",latestFailed:"latest.failed",updated:"updated",itemUpdated:"item.updated",itemUpdatedFailed:"item.updated.failed",itemAdded:"item.added",itemAddedFailed:"item.added.failed",itemDeleted:"item.deleted",itemDeletedFailed:"item.deleted.failed",submitted:"submitted",submitFailed:"submit.failed",imageDeleted:"image.deleted",imageNotDeleted:"image.not.deleted",detailsFetched:"details.fetched",detailsNotFetched:"details.not.fetched",successReset:"success.reset",priceQuoteSucceeded:"price-quote.succeeded",priceQuoteFailed:"price-quote.failed",couponAdded:"coupon.added",couponDeleted:"coupon.deleted",couponAdditionFailed:"coupon.addition.failed",couponDeletionFailed:"coupon.deletion.failed",quickOrderSettingFetched:"quick-order.fetched",quickOrderSettingFailed:"quick-order.failed",quickOrderSucceeded:"quick-order.succeeded",quickOrderFailed:"quick-order.failed"},this.after_init()}updated(t){return Salla.cookie.set("fresh_summary",1),t&&"object"==typeof t?(t.offer&&salla.product.event.offerExisted(t.offer),t.redirect&&(salla.log("The current cart is purchased!"),salla.cart.api.reset()),t.cart?(salla.storage.set("cart.summary",{total:t.cart.total,sub_total:t.cart.sub_total,discount:t.cart.discount,real_shipping_cost:t.cart.real_shipping_cost,count:t.cart.count,shipping_cost:t.cart.free_shipping_bar?.has_free_shipping?0:t.cart.real_shipping_cost}),this.dispatch("updated",t.cart)):void salla.log("Failed to get the cart summary!")):(Salla.logger.info("Cart summary not an object!",t),this.dispatch("updated"))}latestFetched(t){return this.updated(t.data),this.dispatch("latestFetched",t)}itemAdded(t,e){return this.updated(t.data),this.dispatch("itemAdded",t,e)}itemDeleted(t,e){return this.updated(t.data),this.dispatch("itemDeleted",t,e)}itemUpdated(t,e){return this.updated(t.data),this.dispatch("itemUpdated",t,e)}couponAdded(t,e){return this.updated(t.data),this.dispatch("couponAdded",t,e)}couponDeleted(t,e){return this.updated(t.data),this.dispatch("couponDeleted",t,e)}},Salla.event.order=new class extends ba{constructor(){super(),this.namespace="order",this.events={canceled:"canceled",notCanceled:"not.canceled",orderCreated:"order.created",orderCreationFailed:"order.creation.failed",invoiceSent:"invoice.sent",invoiceNotSent:"invoice.not.sent"},this.after_init()}},Salla.event.scope=new class extends ba{constructor(){super(),this.namespace="scope",this.events={fetched:"fetched",notFetched:"not.fetched",productAvailabilityFetched:"product-availability.fetched",productAvailabilityNotFetched:"product-availability.not.fetched",changeSucceeded:"changed",changeFailed:"not.changed"},this.after_init()}},Salla.event.rating=new class extends ba{constructor(){super(),this.namespace="rating",this.events={orderNotFetched:"order.not.fetched",orderFetched:"order.fetched",storeRated:"store.rated",storeFailed:"store.failed",productsRated:"products.rated",productsFailed:"products.failed",shippingRated:"shipping.rated",shippingFailed:"shipping.failed"},this.after_init()}},Salla.event.booking=new class extends ba{constructor(){super(),this.namespace="booking",this.events={added:"added",additionFailed:"addition.failed"},this.after_init()}},Salla.event.comment=new class extends ba{constructor(){super(),this.namespace="comment",this.events={added:"added",additionFailed:"addition.failed",fetched:"fetched",fetchFailed:"fetch.failed"},this.after_init()}},Salla.event.landing=new class extends ba{constructor(){super(),this.namespace="landing",this.events={detailsFetched:"order.fetched",getDetailsFailed:"get.details.failed",orderCreated:"order.created",orderCreationFailed:"order.creation.failed"},this.after_init()}},Salla.event.loyalty=new class extends ba{constructor(){super(),this.namespace="loyalty",this.events={exchangeSucceeded:"exchange.succeeded",exchangeFailed:"exchange.failed",programFetched:"program.fetched",programNotFetched:"program.not.fetched",resetSucceeded:"exchange-reset.succeeded",resetFailed:"exchange-reset.failed"},this.after_init()}exchangeSucceeded(t,e){return salla.cart.event.updated(t.data),this.dispatch("exchangeSucceeded",t,e)}resetSucceeded(t){return salla.cart.event.updated(t.data),this.dispatch("resetSucceeded",t)}},Salla.event.product=new class extends ba{constructor(){super(),this.namespace="product",this.events={priceUpdated:"price.updated",priceUpdateFailed:"price.updated.failed",availabilitySubscribed:"availability.subscribed",availabilitySubscribeFailed:"availability.subscribe.failed",categoriesFetched:"categories.fetched",categoriesFailed:"categories.failed",searchFailed:"search.failed",searchResults:"search.results",offerExisted:"offer.existed",fetchOffersFailed:"fetch.offers.failed",offersFetched:"offers.fetched",sizeGuideFetched:"size-guide.fetched",sizeGuideFetchFailed:"size-guide.failed",giftFetched:"gift.fetched",giftFetchFailed:"gift.failed",detailFetched:"detail.fetched",detailFetchFailed:"detail.failed",addGiftToCartSucceeded:"gift.add-to-cart.succeeded",addGiftToCartFailed:"gift.add-to-cart.failed",giftImageUploadSucceeded:"gift.image-upload.succeeded",giftImageUploadFailed:"gift.image-upload.failed",productListFetchSucceeded:"fetch.succeeded",productListFetchFailed:"fetch.failed"},this.after_init()}},Salla.event.profile=new class extends ba{constructor(){super(),this.namespace="profile",this.events={updated:"updated",updateFailed:"update.failed",verificationCodeSent:"verification.code.sent",updateContactsFailed:"update.contacts.failed",verified:"verified",unverified:"unverified",infoFetched:"info.fetched",infoNotFetched:"info.not.fetched",settingsUpdated:"settings.updated",updateSettingsFailed:"update.settings.failed",deleted:"deleted",notDeleted:"not.deleted"},this.after_init()}},Salla.event.currency=new class extends ba{constructor(){super(),this.namespace="currency",this.events={changed:"changed",failed:"failed",fetched:"fetched",failedToFetch:"failed.to.fetch"},this.after_init()}},Salla.event.document=new class extends ba{constructor(){super(),this.namespace="document",this.events={click:"click",change:"change",submit:"submit",keyup:"keyup",leaving:"leaving",request:"request",requestFailed:"request.failed"},this.after_init()}onClick(t,e){this.fireCallableFuns("click",t,e)}onChange(t,e){this.fireCallableFuns("change",t,e)}onSubmit(t,e){this.fireCallableFuns("submit",t,e)}onKeyup(t,e){this.fireCallableFuns("keyup",t,e)}fireCallableFuns(t,e,n){this.on(t,(t=>{"function"!=typeof e?"function"==typeof n&&t.target.matches(e)&&n(t):e(t)}))}fireEvent(t,e,...n){return this.fireEventForElements(t,e,!1,...n)}fireEventForAll(t,e,...n){return this.fireEventForElements(t,e,!0,...n)}fireEventForElements(t,e,n,...i){if("string"==typeof t){if(n)return document.querySelectorAll(t).forEach((t=>this.fireEventForElements(t,e,!1,...i)));t=document.querySelector(t)}if(!t)return void salla.log("Failed To get element to fire event: "+e);const r=new CustomEvent(e,...i);return t.dispatchEvent(r)}},Salla.event.wishlist=new class extends ba{constructor(){super(),this.namespace="wishlist",this.events={added:"added",removed:"removed",additionFailed:"addition.failed",removingFailed:"removing.failed"},this.after_init()}},Salla.event.infiniteScroll=new class extends ba{constructor(){super(),this.namespace="infiniteScroll",this.events={scrollThreshold:"scroll.threshold",request:"request",load:"load",append:"append",error:"error",last:"last",history:"history"},this.after_init()}},Salla.event.on("twilight::initiated",(()=>{Object.keys(Salla).forEach((t=>{"object"==typeof(t=Salla[t])&&(Sa(t),Object.keys(t).forEach((e=>{Sa(t[e])})))}))})),Salla.config.default_properties={debug:"undefined"!=typeof process&&"development"==="production",token:null,fastRequests:!0,canLeave:!0,store:{api:"https://api.salla.dev/store/v1/"},currencies:{SAR:{code:"SAR",name:"ريال سعودي",symbol:"ر.س",amount:1,country_code:"sa"}}},Salla.config.merge(Salla.config.default_properties),Salla.config.triedToGetCurrencies_=!1,Salla.config.triedToGetLanguages_=!1,Salla.config.isUser=()=>"user"===Salla.config.get("user.type"),Salla.config.isGuest=()=>!Salla.config.isUser(),Salla.config.languages=async()=>{if(Salla.config.triedToGetLanguages_)return Salla.config.get("languages");Salla.config.triedToGetLanguages_=!0;let t=!0,e=[];return(await salla.document.api.request("languages",null,"get"))?.data?.map((n=>{t&&(e=[],t=!1),n.code=n.code||n.iso_code,n.url=salla.url.get(n.code),n.is_rtl=n.is_rtl||n.rtl,e.push(n)})),Salla.config.set("languages",e),e},Salla.config.currencies=async()=>{if(Salla.config.triedToGetCurrencies_)return Salla.config.get("currencies");Salla.config.triedToGetCurrencies_=!0;let t=!0,e={};return(await salla.currency.api.list())?.data?.map((n=>{t&&(e={},t=!1),n.country_code=n.code.substr(0,2).toLowerCase(),e[n.code]=n})),Salla.config.set("currencies",e),e};class _a{constructor(){this.endpoints={},this.webEndpoints=[],this.namespace="BaseApi",this.endpointsMethods={},this.endpointsHeaders={};let t=/function (.{1,})\(/.exec(this.constructor.toString());this.className=(t&&t.length>1?t[1]:"").toLowerCase(),this.debounce={request:void 0,time:300,enabled:!0,exclude:[]}}after_init(){}normalRequest(t,e=void 0,n=null){let i=Array.isArray(t),r=i?this.getUrl(...t):this.getUrl(t);t=i?t[0]:t,n=n||this.endpointsMethods[t]||"post";let a=this.endpointsHeaders[t];if("get"===n&&e instanceof FormData){let t={};Array.from(e.entries()).forEach((function(e){t[e[0]]=e[1]})),e={params:t}}return a&&"get"===n&&(e=e?Object.assign(e,a):a),this.webEndpoints.includes(t)?r=salla.url.get(r):"http"!==r.substring(0,4)&&(r=salla.url.api(r)),Salla.api.request(r,e,n,{headers:a})}request(t,e=void 0,n=null){return!salla.api.isFastRequestsAllowed()&&this.debounce.enabled?(this.debounce.request||(this.debounce.request=salla.helpers.debounce(this.normalRequest.bind(this),this.debounce.time)),this.debounce.request(t,e,n)):this.normalRequest(t,e,n)}getUrl(t){let e=this.endpoints[t]||t;const n=/{[^{}]+}/i;for(let t=1;t<arguments.length;t++)e=e.replace(n,arguments[t]);return e}event(){return salla.event[this.className]}}class ja extends _a{constructor(){super(),this.namespace="cart",this.endpoints={latest:"cart/latest",details:"cart/{cart}",quickAdd:"cart/{cart}/item/{product}/quick-add",addItem:"cart/{cart}/item/{product}/add",deleteItem:"cart/{cart}/item/{item}",updateItem:"cart/{cart}/item/{item}",deleteImage:"cart/{cart}/image/{image}",uploadImage:"cart/{cart}/image",status:"cart/{cart}/status",addCoupon:"cart/{id}/coupon",deleteCoupon:"cart/{id}/coupon",getQuickOrderSettings:"checkout/quick-order",createQuickOrder:"checkout/quick-order",priceQuote:"cart/{cartId}/price-quote"},this.endpointsMethods={latest:"get",details:"get",status:"get",updateItem:"post",deleteItem:"delete",deleteImage:"delete",deleteCoupon:"put",getQuickOrderSettings:"get"},this.webEndpoints=["latest"],this.latestCart=null,this.after_init(),salla.event.on("api::initiated",this.getCurrentCartId),salla.event.on("auth::token.fetched",this._checkCurrentCart),salla.event.on("auth::token.invalid",this._checkCurrentCart),salla.event.on("auth::verified",(()=>this.getCurrentCartId(!0)),{async:!0}),salla.event.on("profile::info.fetched",this._checkCurrentCart)}_checkCurrentCart(){let t=salla.storage.get("cart"),e=salla.config.get("user")?.id;t&&t.id&&(t.user_id!==e||t.store_id!==config.store?.id)&&(salla.log("cart",{user_id:t.user_id,store_id:t.store_id}),salla.log("current",{user_id:e,store_id:config.store?.id}),salla.log("Api:: case2 => The cart is not belong to current "+(t.user_id!==e?"user":"store")+"!"),salla.cart.api.reset())}async getCurrentCartId(t=!1){if(!t){if(salla.cart.api.latestCart)return salla.cart.api.latestCart.cart.id;let t=salla.storage.get("cart.id");if(t)return t}let e=await this.latest();return salla.cart.api.latestCart=e.data,salla.cart.api.latestCart.cart.id}getUploadImageEndpoint(t){return salla.url.api(this.getUrl("uploadImage",t||salla.storage.get("cart.id")))}latest(){return this.request("latest",{params:{source:""}}).then((t=>(salla.storage.set("cart",t.data.cart),salla.event.cart.latestFetched(t),t))).catch((t=>{throw salla.storage.set("cart",""),salla.event.cart.latestFailed(t),t}))}async details(t,e=[]){return t=t||await this.getCurrentCartId(),this.request(["details",t],{params:{with:e}}).then((function(t){return salla.cart.event.detailsFetched(t),t})).catch((function(t){throw salla.cart.event.detailsNotFetched(t),t}))}async quickAdd(t,e){return this.addItem({id:t,quantity:e,endpoint:"quickAdd"})}async addItem(t){let e=this.getCartPayload(t);if(!e.id){let t='There is no product "id"!';return salla.cart.event.itemAddedFailed(t),salla.api.errorPromise(t)}let n=salla.form.getPossibleValue(e.payload,["endpoint"]);n&&["addItem","quickAdd"].includes(n)||(n=salla.form.getPossibleValue(e.payload,["quantity","donating_amount"])?"addItem":"quickAdd");let i=await this.getCurrentCartId();return this.request([n,i,e.id],e.payload).then((function(t){return salla.cart.event.itemAdded(t,e.id),t})).catch((function(t){throw salla.cart.event.itemAddedFailed(t,e.id),t}))}async deleteItem(t){let e=this.getCartPayload(t);if(!e.id){let t='There is no "id"!';return salla.cart.event.itemDeletedFailed(t),salla.api.errorPromise(t)}let n=await this.getCurrentCartId();return this.request(["deleteItem",n,e.id]).then((function(t){return salla.cart.event.itemDeleted(t,e.id),t})).catch((function(t){throw salla.cart.event.itemDeletedFailed(t,e.id),t}))}async updateItem(t){let e=this.getCartPayload(t);if(!e.id){let t='There is no "id"!';return salla.cart.event.itemUpdatedFailed(t),salla.api.errorPromise(t)}let n=await this.getCurrentCartId();return"Object"===e.payload.constructor?.name?e.payload._method="PUT":e.payload.append("_method","PUT"),this.request(["updateItem",n,e.id],e.payload).then((function(t){return salla.cart.event.itemUpdated(t,e.id),t})).catch((function(t){throw salla.cart.event.itemUpdatedFailed(t,e.id),t}))}async deleteImage(t){if(!(t=salla.form.getPossibleValue(t,["id","image_id","photo_id"]))){let t='There is no "id"!';return salla.cart.event.imageNotDeleted(t),salla.api.errorPromise(t)}let e=await this.getCurrentCartId();return this.request(["deleteImage",e,t]).then((function(e){return salla.cart.event.imageDeleted(e,t),e})).catch((function(e){throw salla.cart.event.imageNotDeleted(e,t),e}))}async status(t){return this.request(["status",t||await this.getCurrentCartId()],{params:{has_apple_pay:!!window.ApplePaySession}})}async submit(){this.status(await this.getCurrentCartId()).then((t=>{let e=t.data.next_step.to;if(!["checkout","refresh","login"].includes(e)){let t="Can't find next_step );";throw salla.cart.event.submitFailed(t),t}if(salla.cart.event.submitted(t),"login"===e)return salla.auth.setCanRedirect(!1),salla.event.dispatch("login::open"),void salla.auth.event.onLoggedIn((t=>{salla.event.dispatch("login::close"),this.submit()}));"checkout"===e?window.location.href=t.data.next_step.url+(window.ApplePaySession?"?has_apple_pay=true":""):window.location.reload()})).catch((function(t){throw salla.cart.event.submitFailed(t),t}))}getCartPayload(t){let e=t?.data||("object"==typeof t?t:void 0);return t=e?salla.form.getPossibleValue(e,["prod_id","product_id","item_id","id"]):t,e="object"==typeof e?e:void 0,{id:t,payload:e}}normalRequest(t,e=void 0,n=null){return super.normalRequest(t,e,n).catch((async t=>{throw 403===t?.response?.status&&(this.reset(),salla.error(salla.lang.get("pages.checkout.try_again"))),t}))}reset(){salla.api.cart.latestCart=null,salla.storage.remove("cart"),salla.cart.event.successReset()}async addCoupon(t){if(t=t.data||t,!(t=salla.form.getPossibleValue(t,["coupon"]))){let t=new Error('There is no "Coupon Code"!');return t.name="EmptyCoupon",salla.event.cart.couponAdditionFailed(t),salla.api.errorPromise(t)}let e=await salla.cart.api.getCurrentCartId();return this.request(["addCoupon",e],{coupon:t}).then((function(t){return salla.event.cart.couponAdded(t,e),t})).catch((function(t){throw salla.event.cart.couponAdditionFailed(t,e),t}))}async deleteCoupon(){let t=await salla.cart.api.getCurrentCartId();return this.request(["deleteCoupon",t],{}).then((function(e){return salla.event.cart.couponDeleted(e,t),e})).catch((function(e){throw salla.event.cart.couponDeletionFailed(e,t),e}))}getQuickOrderSettings(){return this.request("getQuickOrderSettings").then((t=>(salla.event.cart.quickOrderSettingFetched(t),t))).catch((t=>{throw salla.event.cart.quickOrderSettingFailed(t),t}))}createQuickOrder(t){return this.request("createQuickOrder",t).then((t=>(salla.event.cart.quickOrderSucceeded(t),t))).catch((t=>{throw salla.event.cart.quickOrderFailed(t),t}))}async priceQuote(t){return salla.config.isGuest()?(salla.auth.api.setAfterLoginEvent("cart::priceQuote",t),void salla.event.dispatch("login::open")):this.request(["priceQuote",t||await this.getCurrentCartId()]).then((t=>(salla.cart.api.reset(),salla.event.cart.priceQuoteSucceeded(t).then((()=>(setTimeout((()=>window.location.href=salla.url.get("/")),1e3),t)))))).catch((t=>salla.event.cart.priceQuoteFailed(t).then((()=>{throw 404===t.error?.code&&window.location.reload(),t}))))}}class Ea extends _a{constructor(){super(),this.namespace="loyalty",this.endpoints={getProgram:"loyalty",exchange:"loyalty/exchange",reset:"loyalty/exchange"},this.endpointsMethods={getProgram:"get",reset:"put"},this.after_init()}getProgram(){return this.request("getProgram").then((t=>(salla.loyalty.event.programFetched(t),t))).catch((t=>{throw salla.loyalty.event.programNotFetched(t),t}))}async exchange(t,e=null){if(!(t=salla.form.getPossibleValue(t,["id","loyalty_prize_id","prize_id"]))){let t="Unable to find cart id. Please provide one.";return salla.loyalty.event.exchangeFailed(t),salla.api.errorPromise(t)}if(!(e=e||await salla.cart.getCurrentCartId())){let t="Unable to find cart id. Please provide one.";return salla.loyalty.event.exchangeFailed(t),salla.api.errorPromise(t)}return this.request("exchange",{loyalty_prize_id:t,cart_id:e}).then((function(e){return salla.loyalty.event.exchangeSucceeded(e,t),e})).catch((function(e){throw salla.loyalty.event.exchangeFailed(e,t),e}))}async reset(t=null){if(!(t=t||await salla.cart.getCurrentCartId())){let t="Unable to find cart id. Please provide one.";return salla.loyalty.event.resetFailed(t),salla.api.errorPromise(t)}return this.request("reset",{cart_id:t}).then((t=>(salla.loyalty.event.resetSucceeded(t),t))).catch((t=>{throw salla.loyalty.event.resetFailed(t),t}))}}class Oa extends _a{constructor(){super(),this.namespace="auth",this.canRedirect_=!0,this.afterLoginEvent={event:null,payload:null},this.endpoints={login:"auth/{type}/send_verification",resend:"auth/resend_verification",verify:"auth/{type}/verify",register:"auth/register",logout:"logout",refresh:"auth/refresh"},this.webEndpoints=["logout","auth/jwt","refresh"],this.endpointsMethods={logout:"get"},this.after_init()}setAfterLoginEvent(t,e){salla.api.auth.afterLoginEvent={event:t,payload:e}}setCanRedirect(t){salla.api.auth.canRedirect_=t}canRedirect(){return salla.api.auth.canRedirect_&&!salla.api.auth.afterLoginEvent.event}login(t){t?.data&&(t=t.data);let e=salla.form.getPossibleValue(t,["type"]);if(!["email","mobile"].includes(e)){let t="Login type should be in: [email, mobile]";return salla.auth.event.codeNotSent(t),salla.api.errorPromise(t)}return this.request(["login",e],t).then((function(t){return salla.auth.event.codeSent(t,e),t})).catch((function(t){throw salla.auth.event.codeNotSent(t,e),t}))}async verify(t,e=!0){let n=salla.form.getPossibleValue(t,["type"]);if(!n){let t="Failed to know what's login type!";return salla.auth.event.verificationFailed(t),salla.api.errorPromise(t)}e=!1!==salla.form.getPossibleValue(t,["supportWebAuth"])&&e,salla.auth.event.next_event&&(t.next_event=salla.auth.event.next_event);let i=await salla.auth.api.request(["verify",n],t);if(200!==i?.status)return salla.auth.event.verificationFailed(i,n),salla.api.errorPromise(i);let r="authenticated"===i.data?.case;return r&&salla.auth.event.tokenFetched(i.data.token),e&&await salla.auth.api.request("auth/jwt"),r&&salla.auth.event.loggedIn(i).then((()=>salla.auth.api.afterUserLogin())),await salla.auth.event.verified(i,n),salla.api.successPromise(i)}resend(t){let e;return(t=t.data||t).type=t.type||"mobile","mobile"!==t.type||t.phone&&t.country_code?"email"!==t.type||t.email?this.request("resend",t).then((function(e){return salla.auth.event.codeSent(e,t),e})).catch((function(e){throw salla.auth.event.codeNotSent(e,t),e})):(salla.auth.event.codeNotSent(e="There is no email!",t),salla.api.errorPromise(e)):(salla.auth.event.codeNotSent(e="There is no phone or country_code!",t),salla.api.errorPromise(e))}register(t){let e;return t.data&&(e=t.element,t=t.data),salla.auth.event.next_event&&(t.next_event=salla.auth.event.next_event),this.request("register",t).then((async function(t){return salla.auth.event.registered.call(e,t),"authenticated"===t.data?.case&&(salla.auth.event.tokenFetched(t.data.token),await salla.auth.request("auth/jwt"),salla.auth.event.loggedIn(t),salla.auth.api.afterUserLogin()),t})).catch((function(t){throw salla.auth.event.registrationFailed.call(e,t),t}))}logout(t="twilight"){return salla.storage.clearAll(),salla.cookie.clearAll(),t=encodeURI(t),salla.auth.event.loggedOut().then((()=>{let e=salla.url.get(`logout?from=${t}`);console.log(`Going to ${e}, to do any thing before this action use: salla.auth.even.onLoggedOut(()=>{...})`);try{location.href=e}catch(t){salla.log(t)}}))}refresh(){return this.request("refresh").then((function(t){return salla.auth.event.tokenFetched(t.data.token),t})).catch((function(t){throw salla.auth.event.refreshFailed(t),t}))}afterUserLogin(){this.afterLoginEvent.event&&salla.event.emit(this.afterLoginEvent.event,this.afterLoginEvent.payload)}}class xa extends _a{constructor(){super(),this.namespace="order",this.endpoints={cancel:"orders/cancel/{id}",createCartFromOrder:"reorder/{id}",sendInvoice:"orders/send/{id}"},this.endpointsMethods={createCartFromOrder:"get"},this.after_init()}show(t){let e=salla.form.getPossibleValue(t?.data||t,["id","order_id"]);salla.event.dispatch("mobile::order.placed",{order_id:e}),location.href=salla.form.getPossibleValue(t?.data||t,["url"])}cancel(t){return t=t||Salla.config.get("page.id"),this.request(["cancel",t],{params:{has_apple_pay:!!window.ApplePaySession}}).then((function(e){return salla.event.order.canceled(e,t),e})).catch((function(e){throw salla.event.order.notCanceled(e,t),e}))}createCartFromOrder(t){return t=t||salla.config.get("page.id"),this.request(["createCartFromOrder",t]).then((function(e){return salla.cart.reset(),salla.event.order.orderCreated(e,t),window.location.href=e.data.url,e})).catch((function(e){throw salla.event.order.orderCreationFailed(e,t),e}))}sendInvoice(t){let e=salla.form.getPossibleValue(t,["id"])||salla.config.get("page.id");if(!e||isNaN(e)){let t="There is no id!";return salla.order.event.invoiceNotSent(t),salla.api.errorPromise(t)}return this.request(["sendInvoice",e],t).then((t=>(salla.event.order.invoiceSent(t,e),t))).catch((t=>{throw salla.event.order.invoiceNotSent(t,e),t}))}}class ka extends _a{constructor(){super(),this.namespace="product",this.previousQuery="",this.endpoints={getPrice:"products/{id}/price",availabilitySubscribe:"products/{id}/availability-notify",search:"products/search",details:"products/{product_id}/details",categories:"products/categories/{?id}",offers:"products/{product_id}/specialoffer",getSizeGuides:"products/{prod_id}/size-guides",giftDetail:"products/{product_id}/buy-as-gift",giftToCart:"products/{product_id}/buy-as-gift",giftImage:"products/buy-as-gift/image",buyNow:"products/{product_id}/buy-now",fetch:"products"},this.endpointsMethods={details:"get",giftDetail:"get",fetch:"get"},this.after_init()}getPrice(t){let e=t.data||t,n=salla.form.getPossibleValue(e,["id","prod_id","product_id"]);return this.request(["getPrice",n],"object"==typeof e?e:void 0).then((function(t){return salla.product.event.priceUpdated(t,n),t})).catch((function(t){throw salla.product.event.priceUpdateFailed(t,n),t}))}categories(t){return this.request(["categories",t||""],null,"get").then((function(t){return salla.product.event.categoriesFetched(t),t})).catch((function(t){throw salla.product.event.categoriesFailed(t),t}))}availabilitySubscribe(t){let e=t.data||t;return t=salla.form.getPossibleValue(e,["id","prod_id"]),this.request(["availabilitySubscribe",t],"object"==typeof e?e:void 0).then((function(e){return salla.product.event.availabilitySubscribed(e,t),e})).catch((function(e){throw salla.product.event.availabilitySubscribeFailed(e,t),e}))}search(t){let e=t.data;if(e||(e={params:"string"==typeof t?{query:t}:t}),!(t=e instanceof FormData?e.get("query"):e.query||e.params?.query)){let t='There is no "query"!';return salla.product.event.searchFailed(t),salla.api.errorPromise(t)}if(t===salla.api.product.previousQuery){let t="Query is same as previous one!";return salla.product.event.searchFailed(t),salla.api.product.previousQuery=null,salla.api.errorPromise(t)}return salla.api.product.previousQuery=t,this.request("search",e,"get").then((function(e){return salla.product.event.searchResults(e,t),e})).catch((function(e){throw salla.product.event.searchFailed(e,t),e}))}offers(t){if(!(t=salla.form.getPossibleValue(t?.data|t,["product_id","id"]))){let t='There is no "product_id"!';return salla.product.event.fetchOffersFailed(t),salla.api.errorPromise(t)}return this.request(["offers",t]).then((function(e){return salla.product.event.offersFetched(e,t),e})).catch((function(e){throw salla.product.event.fetchOffersFailed(e,t),e}))}getSizeGuides(t){return this.request(`products/${t}/size-guides`,null,"get").then((e=>(salla.product.event.sizeGuideFetched(e,t),e))).catch((e=>{throw salla.product.event.sizeGuideFetchFailed(e,t),e}))}getGiftDetails(t){return this.request(["giftDetail",t]).then((e=>(salla.product.event.giftFetched(e,t),e))).catch((e=>{throw salla.product.event.giftFetchFailed(e,t),e}))}getDetails(t,e=[]){if(!Array.isArray(e)){let t="withItems should be array.";return salla.product.event.detailFetchFailed(t),salla.api.errorPromise(t)}if(!t){let t="productId is not passed.";return salla.product.event.detailFetchFailed(t),salla.api.errorPromise(t)}return this.request(["details",t],{params:{with:e}}).then((function(e){return salla.product.event.detailFetched(e,t),e})).catch((function(e){throw salla.product.event.availabilitySubscribeFailed(e,t),e}))}addGiftToCart(t,e,n=!1){return this.request(["giftToCart",t],e).then((e=>(salla.product.event.addGiftToCartSucceeded(e,t),n&&(window.location.href=e.redirect),e))).catch((e=>{throw salla.product.event.addGiftToCartFailed(e,t),e}))}uploadGiftImage(t){return this.request("giftImage",t).then((t=>(salla.product.event.giftImageUploadSucceeded(t),t))).catch((t=>{throw salla.product.event.giftImageUploadFailed(t),t}))}fetch(t){if(!t.source){const t="Source cannot be empty. Please provide one.";return salla.product.event.productListFetchFailed(t),salla.api.errorPromise(t)}const e=!t.source_value,n="string"==typeof t.source_value&&"[]"===t.source_value,i=Array.isArray(t.source_value)&&!t.source_value.length;if((e||n||i)&&!["offers","latest","sales"].includes(t.source)){const t="Source value cannot be empty. Please provide one.";return salla.product.event.productListFetchFailed(t),salla.api.errorPromise(t)}if(["categories","brands","tags","selected"].includes(t.source)&&!Array.isArray(t.source_value)){const t="SourceValue type error. Expected an array.";return salla.product.event.productListFetchFailed(t),salla.api.errorPromise(t)}if("search"===t.source&&"string"!=typeof t.source_value){const t="SourceValue type error. Expected a string.";return salla.product.event.productListFetchFailed(t),salla.api.errorPromise(t)}if("related"===t.source&&isNaN(t.source_value)){const t="SourceValue type error. Expected a number.";return salla.product.event.productListFetchFailed(t),salla.api.errorPromise(t)}return this.request(this.endpoints.fetch,{params:t},"get").then((t=>(salla.product.event.productListFetchSucceeded(t),t))).catch((t=>{throw salla.product.event.productListFetchFailed(t),t}))}}class Fa extends _a{constructor(){super(),this.namespace="profile",this.endpoints={info:"auth/user",update:"profile/update",updateContacts:"profile/contacts/update",updateSettings:"profile/settings",verify:"profile/verify",delete:"profile"},this.endpointsMethods={delete:"delete"},this.after_init()}info(){return this.request("info",null,"get").then((t=>{let e={id:t.data.id,type:"user",email:t.data.email,mobile:t.data.phone.code+t.data.phone.number,country_code:t.data.phone.country,language_code:t.data.language,currency_code:t.data.currency,notifications:t.data.notifications,pending_orders:t.data.pending_orders,avatar:t.data.avatar,first_name:t.data.first_name,last_name:t.data.last_name,fetched_at:Date.now()};return salla.config.set("user",e),salla.storage.set("user",e),salla.profile.event.infoFetched(t),t})).catch((t=>{throw salla.profile.event.infoNotFetched(t),t}))}update(t){return this.request("update",t).then((t=>(salla.profile.event.updated(t),t))).catch((t=>{throw salla.event.profile.updateFailed(t),t}))}updateContacts(t){return this.request("updateContacts",t).then((t=>(salla.profile.event.verificationCodeSent(t),t))).catch((t=>{throw salla.event.profile.updateContactsFailed(t),t}))}verify(t){return this.request("verify",t).then((t=>(salla.profile.event.verified(t),t))).catch((t=>{throw salla.event.profile.unverified(t),t}))}updateSettings(t){return this.request("updateSettings",t).then((t=>(salla.event.profile.settingsUpdated(t),t))).catch((t=>{throw salla.event.profile.updateSettingsFailed(t),t}))}delete(){return this.request("delete").then((t=>(salla.storage.clearAll(),salla.cookie.clearAll(),salla.event.profile.deleted(t),window.location.href=salla.url.get("logout"),t))).catch((t=>{throw salla.event.profile.notDeleted(t),t}))}}class Aa extends _a{constructor(){super(),this.namespace="comment",this.endpoints={comments:"{type}/{id}/comments"},this.after_init()}add(t){if(t?.data&&(t=t.data),"string"==typeof(t=this.getCommentPayload(t,!0)))return salla.event.comment.additionFailed(t),salla.api.errorPromise(t);if(!t.comment){let t="can't find comment content!";return salla.event.comment.additionFailed(t),salla.api.errorPromise(t)}return this.request(["comments",t.type,t.id],{comment:t.comment}).then((function(e){return salla.event.comment.added(e,t.id),e})).catch((function(e){throw salla.event.comment.additionFailed(e,t.id),e}))}getCommentPayload(t){let e={};return["id","type","comment","per_page","page"].forEach((n=>{let i=salla.form.getPossibleValue(t,[n]);i&&(e[n]=i)})),e.id?e.type&&["products","pages","product","page"].includes(e.type)?(e.type+=["product","page"].includes(e.type)?"s":"",e):"Failed to get type one of:(products, product, page, pages)!":"Failed to get id!"}fetch(t){return"string"==typeof(t=this.getCommentPayload(t))?(salla.event.comment.fetchFailed(t),salla.api.errorPromise(t)):this.request(["comments",t.type,t.id],{params:t},"get").then((function(e){return salla.event.comment.fetched(e,t),e})).catch((function(e){throw salla.event.comment.fetchFailed(e,t),e}))}getPageComments(t,e=1,n=10){return this.fetch({id:t,type:"pages",page:e,per_page:n})}getProductComments(t,e=1,n=10){return this.fetch({id:t,type:"products",page:e,per_page:n})}}class Ta extends _a{constructor(){super(),this.namespace="currency",this.endpoints={change:"/",list:"currencies"},this.endpointsMethods={change:"get",list:"get"},this.webEndpoints=["change"],this.after_init()}change(t){if(!(t=salla.form.getPossibleValue(t.data||t,["currency","code"]))){let t="Can't find currency code!";return salla.currency.event.failed(t),salla.api.errorPromise(t)}return this.request("change",{params:{change_currency:"",currency:t}}).then((function(e){return salla.cookie.set("fresh_summary",1),salla.storage.set("cart",""),salla.currency.event.changed(e,t),e})).catch((function(e){throw salla.currency.event.failed(e,t),e}))}list(){return this.request("list").then((function(t){return salla.currency.event.fetched(t),t})).catch((function(t){throw salla.currency.event.failedToFetch(t),t}))}}class Ia extends _a{constructor(){super(),this.namespace="document"}}class Ra extends _a{constructor(){super(),this.namespace="rating",this.endpoints={store:"rating/store",products:"rating/products",shipping:"rating/shipping",order:"rating/{order_id}"},this.endpointsMethods={order:"get"},this.after_init()}order(t){let e="object"==typeof t?t:{},n=salla.form.getPossibleValue(t?.data||t,["order_id","id"]);if(!n){let t='There is no "order_id"!';return salla.event.rating.orderNotFetched(t),salla.api.errorPromise(t)}return this.request(["order",n],e).then((function(t){return salla.event.rating.orderFetched(t,n),t})).catch((function(t){throw salla.event.rating.orderNotFetched(t,n),t}))}store(t){if(!(t=t?.data||t)){let t='There is no "data"!';return salla.event.rating.storeFailed(t),salla.api.errorPromise(t)}return this.request("store",t).then((function(e){return salla.event.rating.storeRated(e,t),e})).catch((function(e){throw salla.event.rating.storeFailed(e,t),e}))}products(t){if(!(t=t?.data||t)){let t='There is no "data"!';return salla.event.rating.productsFailed(t),salla.api.errorPromise(t)}return this.request("products",t).then((function(e){return salla.event.rating.productsRated(e,t),e})).catch((function(e){throw salla.event.rating.productsFailed(e,t),e}))}shipping(t){if(!(t=t?.data||t)){let t='There is no "data"!';return salla.event.rating.shippingFailed(t),salla.api.errorPromise(t)}return this.request("shipping",t).then((function(e){return salla.event.rating.shippingRated(e,t),e})).catch((function(e){throw salla.event.rating.shippingFailed(e,t),e}))}}class Ca extends _a{constructor(){super(),this.namespace="wishlist",this.endpoints={add:"products/favorites/{id}",remove:"products/favorites/{id}"},this.endpointsMethods={remove:"delete"},this.after_init()}toggle(t){return salla.storage.get("salla::wishlist",[]).includes(t)?this.remove(t):this.add(t)}add(t){let e;return salla.config.isGuest()?(salla.wishlist.event.additionFailed(e=salla.lang.get("common.messages.must_login")),salla.error(e),salla.api.errorPromise(e)):(t=salla.form.getPossibleValue(t?.data||t,["product_id","id"]))?this.request(["add",t]).then((e=>(this.updateWishlistStorage(t),salla.wishlist.event.added(e,t),e))).catch((function(e){throw salla.wishlist.event.additionFailed(e,t),e})):(salla.wishlist.event.additionFailed(e="Failed to get product id!"),salla.api.errorPromise(e))}remove(t){let e;return salla.config.isGuest()?(salla.wishlist.event.additionFailed(e=salla.lang.get("common.messages.must_login")),salla.error(e),salla.api.errorPromise(e)):(t=salla.form.getPossibleValue(t?.data||t,["product_id","id"]))?this.request(["remove",t]).then((e=>(this.updateWishlistStorage(t,!1),salla.wishlist.event.removed(e,t),e))).catch((function(e){throw salla.wishlist.event.removingFailed(e,t),e})):(salla.wishlist.event.removingFailed(e="Failed to get id!"),salla.api.errorPromise(e))}updateWishlistStorage(t,e=!0){let n=salla.storage.get("salla::wishlist",[]);e?n.push(t):n.splice(n.indexOf(t),1),salla.storage.set("salla::wishlist",n)}}class Pa extends _a{constructor(){super(),this.namespace="scopes",this.endpoints={get:"scopes",change:"scopes",getProductAvailability:"scopes/availability?product_id={id}"},this.after_init()}get(){return this.request("scopes",null,"get").then((t=>(salla.scope.event.fetched(t),t))).catch((t=>{throw salla.scope.event.notFetched(t),t}))}change(t){return this.request("scopes",t).then((t=>(salla.scope.event.changeSucceeded(t),t))).catch((t=>{throw salla.scope.event.changeFailed(t),t}))}getProductAvailability(t=null){return this.request(`scopes/availability?product_id=${t}`,null,"get").then((e=>(salla.scope.event.productAvailabilityFetched(e,t),e))).catch((t=>{throw salla.scope.event.productAvailabilityNotFetched(t),t}))}}class La extends _a{constructor(){super(),this.namespace="booking",this.endpoints={add:"cart/booking/product/{id}"},this.endpointsMethods={add:"get"}}async add(t,e=!0){if(!t){let t="Please provide product id.";return salla.booking.event.additionFailed(t),salla.api.errorPromise(t)}return this.request(["add",t]).then((function(t){return salla.booking.event.added(t),e&&"booking"===t.data.redirect.to&&(window.location.href=t.data.redirect.url),t})).catch((function(t){throw salla.booking.event.additionFailed(t),t}))}}class Da extends _a{constructor(){super(),this.namespace="landing",this.endpoints={getDetails:"landing/{landing_page_id}",createCartFromPage:"landing/{landing_page_id}"},this.endpointsMethods={getDetails:"get"},this.after_init()}getDetails(t){if(!t){let t="page landing id not passed";return salla.event.landing.getDetailsFailed(t),salla.api.errorPromise(t)}return this.request(["getDetails",t]).then((function(e){return salla.event.landing.detailsFetched(e,t),e})).catch((function(e){throw salla.event.landing.getDetailsFailed(e,t),e}))}createCartFromPage(t){if(!t){let t="page landing id not passed";return salla.event.landing.orderCreationFailed(t),salla.api.errorPromise(t)}return salla.config.isGuest()?(salla.auth.api.setAfterLoginEvent("landing::createCartFromPage",t),salla.event.dispatch("login::open"),salla.api.successPromise("")):this.request(["createCartFromPage",t]).then((function(e){return salla.event.landing.orderCreated(e,t).then((()=>location.href=e.data.url)),e})).catch((function(e){throw salla.event.landing.orderCreationFailed(e,t),e}))}}class Na{constructor(){salla.event.on("twilight::before.ready",(t=>this.initiateRequest(t))),salla.event.on("profile::info.fetched",(t=>this.setCurrencyAndLanguage(t))),salla.event.on("auth::token.fetched",(t=>{salla.storage.set("token",t),this.setToken(t)})),salla.event.on("auth::token.invalid",(()=>{salla.storage.remove("user"),salla.storage.remove("token")})),this.notifier_handler_disabled=!1,this.axios=ua.create({headers:{common:{"X-Requested-With":"XMLHttpRequest","S-SOURCE":"twilight","S-APP-VERSION":"v2.0.0","S-APP-OS":"browser","cache-control":"no-cache",pragma:"no-cache"}}})}getHeaders(){return this.axios.defaults.headers.common}setHeaders(t){return Object.entries(t).forEach((t=>this.setHeader(t[0],t[1]))),this}setHeader(t,e){return salla.infiniteScroll.fetchOptions.headers[t]=this.axios.defaults.headers.common[t]=e,this}async withoutNotifier(t){return this.notifier_handler_disabled=!0,await t().finally((()=>{this.notifier_handler_disabled=!1}))}async initiateRequest(t){this.axios.defaults.baseURL=Salla.config.get("store.api",Salla.config.get("store.url")),this.setHeaders({"Store-Identifier":Salla.config.get("store.id"),currency:t.user?.currency_code||"SAR","accept-language":salla.lang.getLocale(),"s-user-id":t.user?.id});let e=salla.storage.get("scope");e&&this.setHeaders({"s-scope-type":e.type,"s-scope-id":e.id}),await this.injectTokenToTheRequests(t),salla.storage.get("affiliate_code")&&this.setHeader("s-affiliate-code",salla.storage.get("affiliate_code"))}async injectTokenToTheRequests(t){let e=salla.storage.get("token"),n="guest"===t.user.type,i=t.user?.id,r=salla.storage.get("user.id"),a=t=>{this.setToken(t),salla.event.emit("api::initiated")},s=async()=>{!n&&i?(salla.log("Api:: case 1 => current is is guest & web session available"),await salla.auth.api.refresh().then((async()=>{await salla.profile.info()})).catch((()=>salla.auth.event.tokenInvalid()))):salla.auth.event.tokenInvalid()};if(!e)return salla.log("Api:: case 1 => current is is guest"),void await s();let o=va(e);return console.log(o),Date.now()/1e3>o.exp?(salla.log("Api:: case 2 => current user is logged-in and there is a token, but it's expired"),void await s()):o.sub===i&&r===i&&r&&i?(salla.log("Api:: case 4 => current user is logged-in and there is a token, and it's not expired"),void a(e)):(salla.log("Api:: case 3 => there is a token and user in session/local missing or mismatch"),this.setHeader("Authorization","Bearer "+e),void await salla.profile.info().then((async t=>{await salla.auth.api.request("auth/jwt"),a(e)})).catch((()=>{salla.log("Api:: case 3 => failed get fresh profile"),this.setHeader("Authorization",null),salla.auth.event.tokenInvalid()})))}setToken(t){return this.setHeader("Authorization","Bearer "+t),salla.event.emit("api::token.injected",t),this.token=t,this}setCurrencyAndLanguage(t){return this.setHeaders({currency:t.data.currency,"accept-language":t.data.language})}request(t,e=void 0,n="get",i={}){let r={endPoint:t,payload:e,method:n,options:i},a="undefined"!=typeof event?event.currentTarget:null,s=!1;return"SALLA-BUTTON"===a?.tagName&&(s=!0),s&&a?.load(),this.axios[r.method](r.endPoint,r.payload,r.options).then((t=>(s&&a?.stop(),t.data&&t.request&&(t=t.data),this.handleAfterResponseActions(t),t))).catch((t=>{throw s&&a?.stop(),salla.event.document.requestFailed(r,t),this.handleErrorResponse(t),t}))}handleAfterResponseActions(t){if(!t)return;let{data:e,googleTags:n=null}=t,i=e&&e.googleTags?e.googleTags:n;try{dataLayer&&i&&dataLayer.push(i)}catch(t){salla.logger.error(t.message)}this.fireEventsForResponse(t),this.showAlert(t)}fireEventsForResponse(t){let e=t?.events||t.data?.events||t.error?.events;"string"==typeof e&&(e=JSON.parse(e)),e&&Object.keys(e).forEach((t=>salla.event.dispatch(t,e[t])))}handleErrorResponse(t){if(t.response&&t.response.data)return t.response.data.error&&t.response.data.error.fields&&!this.notifier_handler_disabled?this.handleInvalidFields(t):this.handleAfterResponseActions(t.response.data)}showAlert(t){if(t&&!this.notifier_handler_disabled)return t.case&&t.msg?salla.notify.fire(t.msg,t.case,t):t.hasOwnProperty("success")&&t.data?.message?salla.notify.fire(t.data?.message,t.success?salla.notify.types.success:salla.notify.types.error,t):t.error&&t.error.message&&"FORBIDDEN"!==t.error.message?salla.error(t.error.message,t):void 0}handleInvalidFields(t){let e=t.response.data.error.fields,n=[];Object.keys(e).forEach((t=>{let i=e[t];Array.isArray(i)?i.forEach((t=>n.push(t))):n.push(i)}));let i=(n.length>1?"* ":"")+n.join("\n* ");salla.error(i,t)}isFastRequestsAllowed(){return Salla.config.get("fastRequests")}promise(t,e=!0){return new Promise(((n,i)=>e?n(t):i(t)))}errorPromise(t){return this.promise(t,!1)}successPromise(t){return this.promise(t,!0)}}class $a{constructor(t){"ready"!==bi.status?t?(bi.config.merge(t),t?.events&&bi.event.dispatchEvents(t?.events),t._token&&salla.api.setHeader("X-CSRF-TOKEN",t._token),this.injectMaintenanceAlert(),this.injectTemplateStoreAlert(),this.injectThemePreviewAlert(),this.injectEditAlert(),t?.user?.language_code&&salla.lang.setLocale(t?.user?.language_code),salla.lang.loadStoreTranslations(),this.setSallaReady(t)):this.setSallaReady(t):salla.log("Trying to re-initiate Salla, while its status === 'ready'!")}injectMaintenanceAlert(){salla.config.get("maintenance")&&(document.body.classList.add("has-maintenance-bar"),document.querySelector("salla-maintenance-alert")?salla.logger.warn("salla-maintenance-alert element Existed before!"):salla.lang.onLoaded((()=>document.body.prepend(document.createElement("salla-maintenance-alert")))))}injectTemplateStoreAlert(){salla.config.get("store.is_template")&&(document.body.classList.add("has-bottom-alert"),document.querySelector("salla-bottom-alert")?salla.logger.warn("salla-bottom-alert element Existed before!"):salla.lang.onLoaded((()=>document.body.append(document.createElement("salla-bottom-alert")))))}injectThemePreviewAlert(){"preview"===salla.config.get("theme.mode")&&(document.body.classList.add("has-preview-bar"),document.querySelector("#s-theme_preview_bar")?salla.logger.warn("#s-theme_preview_bar element Existed before!"):salla.lang.onLoaded((()=>{let t=document.createElement("div");t.id="s-theme_preview_bar",t.setAttribute("style","display: flex; justify-content: space-between; text-align: center; background-color: #232323; color: #fff; padding: 10px; font-size: 0.875rem; line-height: 1.25rem; position: relative;"),t.innerHTML=`\n <div style="display:flex; align-items:center;">\n <img width="32" src="https://cdn.salla.network/images/logo/logo-light.svg">\n <span style="margin:0 10px;">${salla.lang.get("blocks.header.preview_mode")}: <span style="background:rgba(255,255,255,0.25);border-radius:15px; padding:2px 15px 4px">${salla.config.get("theme.name")}</span></span>\n </div>\n <a href="${salla.url.get("preview_theme/cancel/preview")}" style="line-height:32px; width:32px;"><i class="sicon-cancel"></i></a>\n `,document.body.prepend(t)})))}injectEditAlert(){let t=salla.config.get("edit");t&&(document.querySelector("#s-edit-alert")?salla.logger.warn("#s-edit-alert element Existed before!"):salla.lang.onLoaded((()=>{let e=document.createElement("div");e.id="s-edit-alert",e.innerHTML=`\n <a href="${t}" style="display:block; background-color:${salla.config.get("theme.color.primary","#5cd5c4")}; color:${salla.config.get("theme.color.reverse","#fff")}; padding: 10px; text-align:center; font-size: 0.875rem; line-height: 1.25rem;">\n <i class="sicon-edit"></i> \n ${salla.lang.get("pages.products.quick_edit")}\n </a>\n `,document.body.prepend(e)})))}handleElementAjaxRequest(t,e){if(!(e instanceof HTMLFormElement||e instanceof HTMLAnchorElement))return salla.logger.warn("trying to call ajax from non Element!!"),!1;t.preventDefault();let n=e.getAjaxFormData(t),i=n.method?n.method.toLowerCase():void 0;salla.api.request(n.url,n.formData,i).then((t=>(t.data&&t.request&&(t=t.data),salla.api.handleAfterResponseActions(t),this.callAjaxEvent(n.events.success,t,n.formData),t))).catch((t=>{throw salla.api.handleErrorResponse(t),this.callAjaxEvent(n.events.fail,t,n.formData),t}))}callAjaxEvent(t,e,n){if(t){if(n instanceof FormData){const t={};Array.from(n.entries()).forEach((function(e){t[e[0]]=e[1]})),n=t}window[t]?window[t](e,n):salla.event.dispatch(t,e,n)}}setSallaReady(t){bi.event.dispatch("twilight::before.ready",t),bi.status="ready",bi.event.dispatch("twilight::initiated",t),window.dispatchEvent(new CustomEvent("twilight::initiated",{detail:t}))}}bi.status="loading",bi.notify=wa,bi.lang=new class extends Ti{constructor(t){(t=t||{}).messages=t.messages||window.translations,t.locale=t.locale||(window.locale||navigator.language||navigator.userLanguage||"ar").split("-")[0],t.fallback=t.fallback||t.locale,super(t),this.translationsLoaded=!1}onLoaded(t){if(this.translationsLoaded)return t();Salla.event.once("languages::translations.loaded",t)}loadStoreTranslations(){if(this.hash=salla.config.get("theme.translations_hash",salla.config.get("store.id","twilight")),this.message||(salla.log("try to load translations from localstorage"),this.messages=salla.storage.get(`s_translations.${this.hash}`),this.messages&&(this.translationsLoaded=!0)&&super.setMessages(this.messages)),this.messages)return salla.event.dispatch("languages::translations.loaded"),void salla.logger.info("The messages of transactions is already loaded");salla.url.get("")?this.loadScript(salla.url.get(`languages/assets/${this.hash}.js`)):this.loadScript("https://cdn.salla.network/js/translations.js",!1)}setMessages(t){super.setMessages(t),salla.event.dispatch("languages::translations.loaded"),this.translationsLoaded=!0}loadScript(t,e=!0){let n=document.createElement("script");n.src=t,n.onload=()=>{if(window.translations)return salla.storage.remove("s_translations"),salla.storage.set("s_translations",{[this.hash]:window.translations}),this.setMessages(window.translations);n.onerror()},n.onerror=()=>{if(e)return salla.logger.warn("Failed to load Translations for store, lets try load it from CDN"),this.loadScript("https://cdn.salla.network/js/translations.js",!1);salla.logger.error("Failed to load Translations, check your network logs for more details\nor: salla.lang.setMessages({....}), see https://docs.salla.dev for more information's.")},document.head.appendChild(n)}getWithDefault(t,e,n,i){let r=this.get(t,n,i);return r!==t?r:e}get(t,e,n){let i=t;(window.translations||this.translationsLoaded)&&(i="trans."+t);let r=super.get(i,e,n);return r!==i?r:super.get(i,e,"en").replace(i,t)}set(t,e){return salla.helpers.setNested(this.messages[this.getLocale()+".trans"],t,e),this}},bi.form=new class{async submit(t,e=null){let n=e;if("SubmitEvent"===e?.constructor?.name||"submit"===e?.type){if(e.preventDefault(),"FORM"!==e.target?.tagName)return Salla.logger.warn("Failed find the target element for submit action. make sure you submit a form element"),new Promise((()=>{throw"Failed find the target element for submit action. make sure you submit a form element"}));"SALLA-BUTTON"===e?.submitter?.parentElement?.tagName&&e.submitter.parentElement.load(),n=e.target.getElementSallaData(),salla.log("Data from element",n)}if(/^https?:\/\/(?:www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_\+.~#?&//=]*)$/gm.test(t))return salla.api.request(t,n,"post").finally((()=>{loaderSupported&&e?.submitter?.parentElement.stop()}));let i=t.split("."),r=i.splice(-1);return await salla.call(i.join("."))[r](n).finally((()=>e?.submitter?.parentElement?.stop())).catch((t=>{throw salla.logger.warn(t),t}))}onSubmit(t,e){return salla.form.submit(t,e),!1}onChange(t,e){return e?.currentTarget?"FORM"!==e?.currentTarget?.tagName||e.currentTarget.checkValidity()?(salla.form.submit(t,e.currentTarget.getElementSallaData()),!0):(salla.logger.warn(`Trying to trigger '${t}' without filling required fields!`),!1):(salla.logger.warn(`Trying to trigger '${t}' without event!`),!1)}getPossibleValue(t,e,n=!1){if(!t)return;if("object"!=typeof t)return t;let i;for(let n=0;n<e.length&&!(i=t[e[n]])&&!("undefined"!=typeof FormData&&t instanceof FormData&&(i=t.get(e[n])));n++);return i=i||t,"object"!=typeof i||n?i:void 0}},bi.infiniteScroll=new class extends ya{constructor(t,e){super(t,e),this.options={path:".infinite-scroll-btn",history:"push",status:".infinite-scroll-status",append:".list-block"},this.fetchOptions={headers:{"S-INFINITE-SCROLL":!0}},this.instances=[]}initiate(t,e,n,i=!1){i?((n=n||{}).fetchOptions={...this.fetchOptions,...n.fetchOptions||{}},n.responseBody="json"):n=this.getCustomOptions(e,n);let r="string"!=typeof t?t:document.querySelector(t),a=n.path;if(!r||!a||"string"==typeof a&&!document.querySelector(a))return void Salla.logger.warn(r?"Path Option (a link that has next page link) Not Existed!":"Container For InfiniteScroll not Existed!");let s=new Ai(r,n);return s.on("scrollThreshold",Salla.infiniteScroll.event.scrollThreshold),s.on("request",Salla.infiniteScroll.event.request),s.on("load",Salla.infiniteScroll.event.load),s.on("append",Salla.infiniteScroll.event.append),s.on("error",Salla.infiniteScroll.event.error),s.on("last",Salla.infiniteScroll.event.last),s.on("history",Salla.infiniteScroll.event.history),this.instances.push(s),s}getCustomOptions(t,e){return(e="object"==typeof t&&t||e||this.options).fetchOptions=this.fetchOptions,e.path=e.path||this.options.path,e.button=e.button||e.path,e.status=e.status||this.options.status,e.hasOwnProperty("history")||(e.history=this.options.history),e.nextPage=e.nextPage||e.next_page,e.append="string"==typeof t&&t||e.append||this.options.append,e}loadNextPage(t){("string"!=typeof t?t:document.querySelector(t)).loadNextPage()}destroy(t){("string"!=typeof t?t:document.querySelector(t)).destroy()}}(void 0,salla.event.infiniteScroll),bi.api=new class extends Na{constructor(){super(),this.auth=new Oa,this.cart=new ja,this.loyalty=new Ea,this.order=new xa,this.rating=new Ra,this.product=new ka,this.profile=new Fa,this.comment=new Aa,this.currency=new Ta,this.document=new Ia,this.wishlist=new Ca,this.scope=new Pa,this.booking=new La,this.landing=new Da}},["cart","auth","order","scope","rating","comment","loyalty","product","profile","currency","document","wishlist","booking","landing"].forEach((t=>bi[t]=new ya(bi.api[t],bi.event[t]))),bi.call=t=>{let e=bi,n=t.split(".");for(;n.length&&(e=e[n.shift()]););return e},bi.init=t=>new $a(t),salla.event.once("twilight::init",salla.init),salla.event.once("twilight::api",(t=>{let e=t?.events;e&&salla.event.dispatchEvents(e)})),bi.success=bi.notify.success,bi.error=bi.notify.error,bi.versions.twilight="[VI]{version}[/VI]",bi.onInitiated=t=>salla.event.once("twilight::initiated",t),bi.onReady=bi.onReady||function(t){"ready"!==salla.status?bi.onInitiated(t):t(salla.config.all())},window.dispatchEvent(new CustomEvent("salla::created"));var qa=e((function(e,n){!function(t,n){e.exports=n()}(t,(function(){function t(){return t=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(t[i]=n[i])}return t},t.apply(this,arguments)}var e="undefined"!=typeof window,n=e&&!("onscroll"in window)||"undefined"!=typeof navigator&&/(gle|ing|ro)bot|crawl|spider/i.test(navigator.userAgent),i=e&&"IntersectionObserver"in window,r=e&&"classList"in document.createElement("p"),a=e&&window.devicePixelRatio>1,s={elements_selector:".lazy",container:n||e?document:null,threshold:300,thresholds:null,data_src:"src",data_srcset:"srcset",data_sizes:"sizes",data_bg:"bg",data_bg_hidpi:"bg-hidpi",data_bg_multi:"bg-multi",data_bg_multi_hidpi:"bg-multi-hidpi",data_bg_set:"bg-set",data_poster:"poster",class_applied:"applied",class_loading:"loading",class_loaded:"loaded",class_error:"error",class_entered:"entered",class_exited:"exited",unobserve_completed:!0,unobserve_entered:!1,cancel_on_exit:!0,callback_enter:null,callback_exit:null,callback_applied:null,callback_loading:null,callback_loaded:null,callback_error:null,callback_finish:null,callback_cancel:null,use_native:!1,restore_on_error:!1},o=function(e){return t({},s,e)},l=function(t,e){var n,i="LazyLoad::Initialized",r=new t(e);try{n=new CustomEvent(i,{detail:{instance:r}})}catch(t){(n=document.createEvent("CustomEvent")).initCustomEvent(i,!1,!1,{instance:r})}window.dispatchEvent(n)},u="src",c="srcset",f="sizes",h="poster",d="llOriginalAttrs",v="data",p="loading",g="loaded",m="applied",w="error",y="native",b="data-",S="ll-status",_=function(t,e){return t.getAttribute(b+e)},j=function(t){return _(t,S)},E=function(t,e){return function(t,e,n){var i="data-ll-status";null!==n?t.setAttribute(i,n):t.removeAttribute(i)}(t,0,e)},O=function(t){return E(t,null)},x=function(t){return null===j(t)},k=function(t){return j(t)===y},F=[p,g,m,w],A=function(t,e,n,i){t&&(void 0===i?void 0===n?t(e):t(e,n):t(e,n,i))},T=function(t,e){r?t.classList.add(e):t.className+=(t.className?" ":"")+e},I=function(t,e){r?t.classList.remove(e):t.className=t.className.replace(new RegExp("(^|\\s+)"+e+"(\\s+|$)")," ").replace(/^\s+/,"").replace(/\s+$/,"")},R=function(t){return t.llTempImage},C=function(t,e){if(e){var n=e._observer;n&&n.unobserve(t)}},P=function(t,e){t&&(t.loadingCount+=e)},L=function(t,e){t&&(t.toLoadCount=e)},D=function(t){for(var e,n=[],i=0;e=t.children[i];i+=1)"SOURCE"===e.tagName&&n.push(e);return n},N=function(t,e){var n=t.parentNode;n&&"PICTURE"===n.tagName&&D(n).forEach(e)},$=function(t,e){D(t).forEach(e)},q=[u],U=[u,h],z=[u,c,f],M=[v],B=function(t){return!!t[d]},J=function(t){return t[d]},G=function(t){return delete t[d]},H=function(t,e){if(!B(t)){var n={};e.forEach((function(e){n[e]=t.getAttribute(e)})),t[d]=n}},V=function(t,e){if(B(t)){var n=J(t);e.forEach((function(e){!function(t,e,n){n?t.setAttribute(e,n):t.removeAttribute(e)}(t,e,n[e])}))}},Q=function(t,e,n){T(t,e.class_applied),E(t,m),n&&(e.unobserve_completed&&C(t,e),A(e.callback_applied,t,n))},W=function(t,e,n){T(t,e.class_loading),E(t,p),n&&(P(n,1),A(e.callback_loading,t,n))},X=function(t,e,n){n&&t.setAttribute(e,n)},Z=function(t,e){X(t,f,_(t,e.data_sizes)),X(t,c,_(t,e.data_srcset)),X(t,u,_(t,e.data_src))},K={IMG:function(t,e){N(t,(function(t){H(t,z),Z(t,e)})),H(t,z),Z(t,e)},IFRAME:function(t,e){H(t,q),X(t,u,_(t,e.data_src))},VIDEO:function(t,e){$(t,(function(t){H(t,q),X(t,u,_(t,e.data_src))})),H(t,U),X(t,h,_(t,e.data_poster)),X(t,u,_(t,e.data_src)),t.load()},OBJECT:function(t,e){H(t,M),X(t,v,_(t,e.data_src))}},Y=["IMG","IFRAME","VIDEO","OBJECT"],tt=function(t,e){!e||function(t){return t.loadingCount>0}(e)||function(t){return t.toLoadCount>0}(e)||A(t.callback_finish,e)},et=function(t,e,n){t.addEventListener(e,n),t.llEvLisnrs[e]=n},nt=function(t,e,n){t.removeEventListener(e,n)},it=function(t){return!!t.llEvLisnrs},rt=function(t){if(it(t)){var e=t.llEvLisnrs;for(var n in e){var i=e[n];nt(t,n,i)}delete t.llEvLisnrs}},at=function(t,e,n){!function(t){delete t.llTempImage}(t),P(n,-1),function(t){t&&(t.toLoadCount-=1)}(n),I(t,e.class_loading),e.unobserve_completed&&C(t,n)},st=function(t,e,n){var i=R(t)||t;it(i)||function(t,e,n){it(t)||(t.llEvLisnrs={});var i="VIDEO"===t.tagName?"loadeddata":"load";et(t,i,e),et(t,"error",n)}(i,(function(r){!function(t,e,n,i){var r=k(e);at(e,n,i),T(e,n.class_loaded),E(e,g),A(n.callback_loaded,e,i),r||tt(n,i)}(0,t,e,n),rt(i)}),(function(r){!function(t,e,n,i){var r=k(e);at(e,n,i),T(e,n.class_error),E(e,w),A(n.callback_error,e,i),n.restore_on_error&&V(e,z),r||tt(n,i)}(0,t,e,n),rt(i)}))},ot=function(t,e,n){!function(t){return Y.indexOf(t.tagName)>-1}(t)?function(t,e,n){!function(t){t.llTempImage=document.createElement("IMG")}(t),st(t,e,n),function(t){B(t)||(t[d]={backgroundImage:t.style.backgroundImage})}(t),function(t,e,n){var i=_(t,e.data_bg),r=_(t,e.data_bg_hidpi),s=a&&r?r:i;s&&(t.style.backgroundImage='url("'.concat(s,'")'),R(t).setAttribute(u,s),W(t,e,n))}(t,e,n),function(t,e,n){var i=_(t,e.data_bg_multi),r=_(t,e.data_bg_multi_hidpi),s=a&&r?r:i;s&&(t.style.backgroundImage=s,Q(t,e,n))}(t,e,n),function(t,e,n){var i=_(t,e.data_bg_set);if(i){var r=i.split("|"),a=r.map((function(t){return"image-set(".concat(t,")")}));t.style.backgroundImage=a.join(),""===t.style.backgroundImage&&(a=r.map((function(t){return"-webkit-image-set(".concat(t,")")})),t.style.backgroundImage=a.join()),Q(t,e,n)}}(t,e,n)}(t,e,n):function(t,e,n){st(t,e,n),function(t,e,n){var i=K[t.tagName];i&&(i(t,e),W(t,e,n))}(t,e,n)}(t,e,n)},lt=function(t){t.removeAttribute(u),t.removeAttribute(c),t.removeAttribute(f)},ut=function(t){N(t,(function(t){V(t,z)})),V(t,z)},ct={IMG:ut,IFRAME:function(t){V(t,q)},VIDEO:function(t){$(t,(function(t){V(t,q)})),V(t,U),t.load()},OBJECT:function(t){V(t,M)}},ft=function(t,e){(function(t){var e=ct[t.tagName];e?e(t):function(t){if(B(t)){var e=J(t);t.style.backgroundImage=e.backgroundImage}}(t)})(t),function(t,e){x(t)||k(t)||(I(t,e.class_entered),I(t,e.class_exited),I(t,e.class_applied),I(t,e.class_loading),I(t,e.class_loaded),I(t,e.class_error))}(t,e),O(t),G(t)},ht=["IMG","IFRAME","VIDEO"],dt=function(t){return t.use_native&&"loading"in HTMLImageElement.prototype},vt=function(t,e,n){t.forEach((function(t){return function(t){return t.isIntersecting||t.intersectionRatio>0}(t)?function(t,e,n,i){var r=function(t){return F.indexOf(j(t))>=0}(t);E(t,"entered"),T(t,n.class_entered),I(t,n.class_exited),function(t,e,n){e.unobserve_entered&&C(t,n)}(t,n,i),A(n.callback_enter,t,e,i),r||ot(t,n,i)}(t.target,t,e,n):function(t,e,n,i){x(t)||(T(t,n.class_exited),function(t,e,n,i){n.cancel_on_exit&&function(t){return j(t)===p}(t)&&"IMG"===t.tagName&&(rt(t),function(t){N(t,(function(t){lt(t)})),lt(t)}(t),ut(t),I(t,n.class_loading),P(i,-1),O(t),A(n.callback_cancel,t,e,i))}(t,e,n,i),A(n.callback_exit,t,e,i))}(t.target,t,e,n)}))},pt=function(t){return Array.prototype.slice.call(t)},gt=function(t){return t.container.querySelectorAll(t.elements_selector)},mt=function(t){return function(t){return j(t)===w}(t)},wt=function(t,e){return function(t){return pt(t).filter(x)}(t||gt(e))},yt=function(t,n){var r=o(t);this._settings=r,this.loadingCount=0,function(t,e){i&&!dt(t)&&(e._observer=new IntersectionObserver((function(n){vt(n,t,e)}),function(t){return{root:t.container===document?null:t.container,rootMargin:t.thresholds||t.threshold+"px"}}(t)))}(r,this),function(t,n){e&&(n._onlineHandler=function(){!function(t,e){var n;(n=gt(t),pt(n).filter(mt)).forEach((function(e){I(e,t.class_error),O(e)})),e.update()}(t,n)},window.addEventListener("online",n._onlineHandler))}(r,this),this.update(n)};return yt.prototype={update:function(t){var e,r,a=this._settings,s=wt(t,a);L(this,s.length),!n&&i?dt(a)?function(t,e,n){t.forEach((function(t){-1!==ht.indexOf(t.tagName)&&function(t,e,n){t.setAttribute("loading","lazy"),st(t,e,n),function(t,e){var n=K[t.tagName];n&&n(t,e)}(t,e),E(t,y)}(t,e,n)})),L(n,0)}(s,a,this):(r=s,function(t){t.disconnect()}(e=this._observer),function(t,e){e.forEach((function(e){t.observe(e)}))}(e,r)):this.loadAll(s)},destroy:function(){this._observer&&this._observer.disconnect(),e&&window.removeEventListener("online",this._onlineHandler),gt(this._settings).forEach((function(t){G(t)})),delete this._observer,delete this._settings,delete this._onlineHandler,delete this.loadingCount,delete this.toLoadCount},loadAll:function(t){var e=this,n=this._settings;wt(t,n).forEach((function(t){C(t,e),ot(t,n,e)}))},restoreAll:function(){var t=this._settings;gt(t).forEach((function(e){ft(e,t)}))}},yt.load=function(t,e){var n=o(e);ot(t,n)},yt.resetStatus=function(t){O(t)},e&&function(t,e){if(e)if(e.length)for(var n,i=0;n=e[i];i+=1)l(t,n);else l(t,e)}(yt,window.lazyLoadOptions),yt}))}));function Ua(){if(!document.lazyLoadInstance){document.lazyLoadInstance=new qa({use_native:true});document.lazyLoadBackgrounds=new qa({elements_selector:".lazy[data-bg]:not(.loaded)"})}if(document.readyState!=="complete"){document.addEventListener("DOMContentLoaded",(()=>document.lazyLoadInstance.update()));document.addEventListener("DOMContentLoaded",(()=>document.lazyLoadBackgrounds.update()))}salla.infiniteScroll.event.onAppend((()=>{document.lazyLoadInstance.update();document.lazyLoadBackgrounds.update()}))}const za=Ua;export{za as g};
|
|
25
|
+
//# sourceMappingURL=p-6fc88c16.js.map
|