@joystick.js/ui-canary 0.0.0-canary.9 → 0.0.0-canary.91
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/_package.json +1 -1
- package/dist/api/get.js +1 -1
- package/dist/api/index.js +1 -1
- package/dist/api/set.js +1 -1
- package/dist/attachJoystickToWindow.js +1 -1
- package/dist/component/class/data/compile.js +1 -1
- package/dist/component/class/data/loadDataFromWindow.js +1 -1
- package/dist/component/class/events/registerListeners.js +1 -1
- package/dist/component/class/index.js +10 -10
- package/dist/component/class/methods/compile.js +1 -1
- package/dist/component/class/options/allowedComponentOptions.js +1 -1
- package/dist/component/class/options/registerOptions.js +11 -11
- package/dist/component/class/options/validateOptions.js +1 -1
- package/dist/component/class/options/validators/index.js +1 -1
- package/dist/component/class/options/validators/test.js +1 -0
- package/dist/component/class/render/forMount.js +1 -1
- package/dist/component/class/render/getUpdatedDOM.js +1 -1
- package/dist/component/class/render/toHTML.js +1 -1
- package/dist/component/class/render/wrapHTML.js +1 -1
- package/dist/component/class/renderMethods/compile.js +1 -1
- package/dist/component/class/renderMethods/component.js +1 -1
- package/dist/component/class/renderMethods/i18n.js +1 -1
- package/dist/component/class/renderMethods/index.js +1 -1
- package/dist/component/index.js +10 -10
- package/dist/forms/validate.js +1 -1
- package/dist/forms/validators/custom.js +1 -0
- package/dist/forms/validators/index.js +1 -1
- package/dist/forms/validators/regex.js +1 -0
- package/dist/getExternal.js +1 -0
- package/dist/index.js +10 -10
- package/dist/lib/generateCookieHeader.js +1 -0
- package/dist/mount/index.js +1 -1
- package/dist/test/createFile.js +1 -0
- package/dist/test/index.js +1 -0
- package/dist/test/trackFunctionCall.js +1 -0
- package/dist/trackExternal.js +1 -0
- package/dist/upload/index.js +1 -1
- package/dist/websockets/client.js +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1,21 +1,21 @@
|
|
|
1
|
-
var Er=Object.create;var de=Object.defineProperty;var Fr=Object.getOwnPropertyDescriptor;var kr=Object.getOwnPropertyNames;var Mr=Object.getPrototypeOf,Sr=Object.prototype.hasOwnProperty;var Tr=t=>de(t,"__esModule",{value:!0});var Or=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var vr=(t,e,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of kr(e))!Sr.call(t,o)&&o!=="default"&&de(t,o,{get:()=>e[o],enumerable:!(r=Fr(e,o))||r.enumerable});return t},Cr=t=>vr(Tr(de(t!=null?Er(Mr(t)):{},"default",t&&t.__esModule&&"default"in t?{get:()=>t.default,enumerable:!0}:{value:t,enumerable:!0})),t);var _t=Or(oe=>{(function(t,e){if(typeof define=="function"&&define.amd)define(["exports"],e);else if(typeof oe!="undefined")e(oe);else{var r={exports:{}};e(r.exports),t.index=r.exports}})(oe,function(t){"use strict";function e(p){return e=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(d){return typeof d}:function(d){return d&&typeof Symbol=="function"&&d.constructor===Symbol&&d!==Symbol.prototype?"symbol":typeof d},e(p)}function r(p,d){return d&&(e(d)==="object"||typeof d=="function")?d:o(p)}function o(p){if(p===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return p}function n(p){return n=Object.setPrototypeOf?Object.getPrototypeOf:function(d){return d.__proto__||Object.getPrototypeOf(d)},n(p)}function s(p,d){if(typeof d!="function"&&d!==null)throw new TypeError("Super expression must either be null or a function");p.prototype=Object.create(d&&d.prototype,{constructor:{value:p,writable:!0,configurable:!0}}),d&&c(p,d)}function c(p,d){return c=Object.setPrototypeOf||function(b,v){return b.__proto__=v,b},c(p,d)}function a(p,d){if(!(p instanceof d))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0}),t.diff=void 0;var l=function p(d,b){a(this,p),this.type=d,this.path=b?b.toString():""},x=function(p){function d(b,v,h){var j;return a(this,d),j=r(this,n(d).call(this,"E",b)),j.lhs=v,j.rhs=h,j}return s(d,p),d}(l),y=function(p){function d(b,v,h,j){var $;return a(this,d),$=r(this,n(d).call(this,"M",b)),$.item=v,$.lhsIndex=h,$.rhsIndex=j,$}return s(d,p),d}(l),w=function(p){function d(b,v){var h;return a(this,d),h=r(this,n(d).call(this,"D",b)),h.lhs=v,h}return s(d,p),d}(l),R=function(p){function d(b,v){var h;return a(this,d),h=r(this,n(d).call(this,"A",b)),h.rhs=v,h}return s(d,p),d}(l),f=function(p,d){return p?"".concat(p,".").concat(d):d};t.diff=function(d,b){var v=2<arguments.length&&arguments[2]!==void 0?arguments[2]:{},h=[],j=v.matchKey,$=v.types||["E","A","D","M"],$r=function(E,g,k,P){E.forEach(function(D,M){var C=g.findIndex(function(S){return S[P]===D[P]});-1<C?(-1<$.indexOf("M")&&M!==C&&h.push(new y(k,D,M,C)),K(D,g[C],f(k,C))):-1<$.indexOf("D")&&h.push(new w(k,D))}),g.forEach(function(D,M){var C=E.findIndex(function(S){return D[P]===S[P]});-1<$.indexOf("A")&&C===-1&&h.push(new R(f(k,M),D))})},K=function(E,g,k){var P=Object.prototype.toString.call(E),D=Object.prototype.toString.call(g);if(-1<$.indexOf("E")&&P!==D)return h.push(new x(k,E,g)),!1;if(P==="[object Object]")Object.getOwnPropertyNames(E).forEach(function(S){Object.prototype.hasOwnProperty.call(g,S)?K(E[S],g[S],f(k,S)):-1<$.indexOf("D")&&h.push(new w(f(k,S),E[S]))}),Object.getOwnPropertyNames(g).forEach(function(S){-1<$.indexOf("A")&&!Object.prototype.hasOwnProperty.call(E,S)&&h.push(new R(f(k,S),g[S]))});else if(P!=="[object Array]")-1<$.indexOf("E")&&E!==g&&h.push(new x(k,E,g));else if(j)$r(E,g,k,j);else{var M=E.length-1,C=g.length-1;if(-1<$.indexOf("D"))for(;M>C;)h.push(new w(f(k,M),E[M--]));if(-1<$.indexOf("A"))for(;C>M;)h.push(new R(f(k,C),g[C--]));for(;0<=M;--M)K(E[M],g[M],f(k,M))}};return K(d,b),h}})});var V=(t="{}")=>{try{return JSON.parse(t)}catch{return t}};var i=(t="",e={})=>{throw new Error(`[joystick${t?`.${t}`:""}] ${e.message||e.reason||e}`)};var A=(t="",e=[])=>{try{console.error(`${t} failed with the following errors:`),e.forEach(r=>{console.log(r.message),r.stack&&console.log(r.stack)})}catch(r){i(t,r)}};var Rr=async(t={})=>{try{let e=await t.text();return V(e)}catch(e){i("accounts.request.handleParseResponse",e)}},Ar=(t="GET",e={})=>{try{return["POST"].includes(t)?JSON.stringify({...e,origin:window?.location?.origin}):null}catch(r){i("accounts.request.getBody",r)}},Lr=(t=null)=>{try{switch(t){case"authenticated":case"user":return"GET";default:return"POST"}}catch(e){i("accounts.request.getHTTPMethod",e)}},T=(t="",e={})=>{try{if(typeof window.fetch!="undefined")return new Promise((r,o)=>{let n=`${window.location.origin}/api/_accounts/${t}`,s=Lr(t),c=Ar(s,e);return fetch(n,{method:s,mode:"cors",headers:{"Content-Type":"application/json"},body:c,credentials:"include"}).then(async a=>{let l=await Rr(a);return l?.errors?(A(`accounts.${t}`,l.errors),o(l)):r(l)}).catch(a=>(A(`accounts.${t}`,[a]),o({errors:[a]})))})}catch(r){i(`accounts.request.${t}`,r)}};var ge=async(t={})=>{try{let e=await T("authenticated",t);return e?.status===200&&e?.authenticated}catch(e){i("accounts.authenticated",e)}};var xe=(t={})=>{try{return T("login",t)}catch(e){i("accounts.login",e)}};var be=()=>{try{return T("logout")}catch(t){i("accounts.logout",t)}};var $e=(t={})=>{try{return T("recover-password",t)}catch(e){i("accounts.recoverPassword",e)}};var Ee=(t={})=>{try{return T("reset-password",t)}catch(e){i("accounts.resetPassword",e)}};var Fe=(t={})=>{try{return T("signup",t)}catch(e){i("accounts.signup",e)}};var ke=async(t={})=>{try{let e=await T("user",t);return e?.status===200&&e?.user}catch(e){i("accounts.user",e)}};var Me={authenticated:ge,login:xe,logout:be,recoverPassword:$e,resetPassword:Ee,signup:Fe,user:ke};var Se=t=>{try{return typeof t=="undefined"}catch(e){i("types.isUndefined",e)}},Te=t=>{try{return t===null}catch(e){i("types.isNull",e)}},Oe=t=>{try{return!0}catch(e){i("types.isDOM",e)}},I=t=>{try{return!!Array.isArray(t)}catch(e){i("types.isArray",e)}};var m=t=>{try{return typeof t=="function"}catch(e){i("types.isFunction",e)}};var u=t=>{try{return!!(t&&typeof t=="object"&&!Array.isArray(t))}catch(e){i("types.isObject",e)}};var O=t=>{try{return typeof t=="string"}catch(e){i("types.isString",e)}};var ve=class{constructor(e="",r={}){this.name=e,this.value=r||{},this.listeners={change:[],set:[],unset:[]}}_getValueAtPath(e=""){return e?.split(".").reduce((r=null,o="")=>(r[o]&&(r=r[o]),r),this.value)}get(e=""){return e?.trim()===""?{...this.value||{}}:this._getValueAtPath(e)}set(e=null,r=""){if(!e||!m(e))throw new Error("First argument passed to set() must be a function.");let o=e(this.value);if(!u(o))throw new Error("Value to set must be an object representing the current cache state.");this.value=o,this._handleEvent(r,"set"),this._handleEvent(r,"change")}unset(e="",r=""){e?.trim()===""&&(this.value={});let o=e?.split("."),n=o?.length-1;o.reduce((s,c,a)=>(a===n&&delete s[c],s[c]),this.value),this._handleEvent(r,"unset"),this._handleEvent(r,"change")}on(e="",r=null){if(!["change","set","unset"].includes(e))throw new Error(`Event to listen for must be change, set, or unset. ${e} is not supported.`);if(!r||!m(r))throw new Error("Second argument passed to on("<e>") must be a function.");this.listeners={[e]:[...this.listeners[e]||[],r]}}_handleEvent(e="",r=""){let o=this.listeners[r]||[];for(let n=0;n<o?.length;n+=1){let s=o[n];m(s)&&s(this.value,e,r)}}},Ce=ve;var Re=(t="",e={})=>{try{if(!t||t&&!O(t))throw new Error("Must pass a cache name as a string.");if(e&&!u(e))throw new Error("Default value for cache must be an object.");return new Ce(t,e)}catch(r){i("cache",r)}};var Ae=(t="")=>t;var F=()=>typeof window=="undefined";var Le=(t={},e={})=>{let r=t({props:e}),o=r.renderToHTML();return F()||r.appendCSSToHead(),o?.wrapped};var je="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ01234567890".split(""),_=(t=16)=>{let e="",r=0;for(;r<t;)e+=je[Math.floor(Math.random()*(je.length-1))],r+=1;return e};var U=null,J=0,De=(t={},e=null)=>{try{let r=t?.url;t?.query&&(r=`${r}?${new URLSearchParams(t.query).toString()}`);let o=new WebSocket(r);U&&(clearInterval(U),U=null);let n={client:o,send:(s={})=>o.send(JSON.stringify(s))};return o.addEventListener("open",()=>{t?.options?.logging&&console.log(`[joystick.websockets] Connected to ${t?.url}`),t?.events?.onOpen&&t.events.onOpen(n),J=0}),o.addEventListener("message",s=>{s?.data&&t?.events?.onMessage&&t.events.onMessage(JSON.parse(s.data||{}),n)}),o.addEventListener("close",s=>{t?.options?.logging&&console.log(`[joystick.websockets] Disconnected from ${t?.url}`),t?.events?.onClose&&t.events.onClose(s?.code,s?.reason,n),o=null;let c=[1e3,1001].includes(s?.code);t?.options?.autoReconnect&&!U&&!c&&(U=setInterval(()=>{o=null,J<(t?.options?.reconnectAttempts||12)?(De(t,e),t?.options?.logging&&console.log(`[joystick.websockets] Attempting to reconnect (${J+1}/12)...`),J+=1):clearInterval(U)},t?.options?.reconnectDelayInSeconds*1e3||5e3))}),e&&e(n),n}catch(r){i("websockets.client",r)}},Q=De;var _e=(t="",e={})=>{try{return new Promise((r,o)=>{let n=_(),s=0;Q({url:`${window?.process?.env.NODE_ENV==="development"?"ws":"wss"}://${location.host}/api/_websockets/uploaders`,options:{logging:!1,autoReconnect:!0,reconnectAttempts:12,reconnectDelayInSeconds:5},query:{id:n},events:{onMessage:(c={})=>{c?.type==="PROGRESS"&&e?.onProgress&&s<100&&s!==c?.progress&&(s=c?.progress,e.onProgress(c?.progress,c?.provider))}}},()=>{let c;e?.files?.length>0&&(c=new FormData,Array.from(e?.files).forEach(a=>{c.append("files",a,a.name)})),fetch(`${window.location.origin}/api/_uploaders/${t}`,{method:"POST",headers:{"x-joystick-upload-id":n,"x-joystick-upload-input":JSON.stringify(e?.input||{})},body:c}).then(async a=>{let l=await a.json();console.log(l),l&&l.errors?(A("upload",l.errors),o({errors:l.errors})):r(l?.uploads)})})})}catch(r){i("upload",r)}};var Pe=(t={})=>{try{typeof window!="undefined"&&(window.joystick={...window.joystick||{},settings:window.__joystick_settings__,...t})}catch(e){i("attachJoystickToWindow",e)}};var jr=async(t={})=>{try{let e=await t.text();return V(e)}catch(e){i("api.get.handleParseResponse",e)}},Ie=(t="",e={})=>{try{return typeof window.fetch!="undefined"&&!e?.skip?new Promise((r,o)=>{let n=e.input?JSON.stringify(e.input):null,s=e.output?JSON.stringify(e.output):null,c=`${window.location.origin}/api/_getters/${t}?input=${n}&output=${s}`,a=document.querySelector('[name="csrf"]')?.getAttribute("content");return fetch(c,{method:"GET",mode:"cors",headers:{...e?.headers||{},"x-joystick-csrf":a},credentials:"include"}).then(async l=>{let x=await jr(l);return x?.errors?(A("get request",x.errors),o(x)):r(x)}).catch(l=>(A("get request",[l]),o({errors:[l]})))}):Promise.resolve()}catch(r){i("get request",r)}};var Dr=async(t={})=>{try{let e=await t.text();return V(e)}catch(e){i("api.set.handleParseResponse",e)}},_r=(t={})=>{try{return JSON.stringify(t)}catch(e){i("api.set.getBody",e)}},qe=(t="",e={})=>{try{return typeof window.fetch!="undefined"?new Promise((r,o)=>{let n=`${window.location.origin}/api/_setters/${t}`,s=_r(e),c=document.querySelector('[name="csrf"]')?.getAttribute("content");return fetch(n,{method:"POST",mode:"cors",headers:{...e?.headers||{},"Content-Type":"application/json","x-joystick-csrf":c},body:s,credentials:"include"}).then(async a=>{let l=await Dr(a);return l?.errors?(A("set request",l.errors),o(l)):r(l)}).catch(a=>(A("set request",[a]),o({errors:[a]})))}):Promise.resolve()}catch(r){i("set request",r)}};var Z={get:Ie,set:qe};var Ne=["render"];var Ve=(t={})=>{try{return Ne.every(e=>Object.keys(t).includes(e))}catch(e){i("component.hasAllRequiredOptions",e)}};var Ue=["_componentId","_ssrId","api","dataFromSSR","existingProps","existingState","instanceId","parent","req","css","data","defaultProps","events","id","lifecycle","methods","name","props","render","state","translations","url","websockets","wrapper"];var He=(t=null)=>{try{!O(t)&&!m(t)&&!u(t)&&i("component.optionValidators.css","options.css must be a string, function returning a string, or an object returning breakpoints.")}catch(e){i("component.optionValidators.css",e)}};var ze=["readystatechange","pointerlockchange","pointerlockerror","beforecopy","beforecut","beforepaste","freeze","resume","search","securitypolicyviolation","visibilitychange","fullscreenchange","fullscreenerror","webkitfullscreenchange","webkitfullscreenerror","beforexrselect","abort","blur","cancel","canplay","canplaythrough","change","click","close","contextmenu","cuechange","dblclick","drag","dragend","dragenter","dragleave","dragover","dragstart","drop","durationchange","emptied","ended","error","focus","formdata","input","invalid","keydown","keypress","keyup","load","loadeddata","loadedmetadata","loadstart","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","mousewheel","pause","play","playing","progress","ratechange","reset","resize","scroll","seeked","seeking","select","stalled","submit","suspend","timeupdate","toggle","volumechange","waiting","webkitanimationend","webkitanimationiteration","webkitanimationstart","webkittransitionend","wheel","auxclick","gotpointercapture","lostpointercapture","pointerdown","pointermove","pointerup","pointercancel","pointerover","pointerout","pointerenter","pointerleave","selectstart","selectionchange","animationend","animationiteration","animationstart","transitionrun","transitionstart","transitionend","transitioncancel","copy","cut","paste","pointerrawupdate"];var Be=(t=null)=>{try{u(t)||i("component.optionValidators.events","options.events must be an object.");for(let e of Object.keys(t)){let[r]=e.split(" ");ze.includes(r)||i("component.optionValidators.events",`${r} is not a supported JavaScript event type.`)}for(let[e,r]of Object.entries(t))m(r)||i("component.optionValidators.events",`options.events.${e} must be assigned a function.`)}catch(e){i("component.optionValidators.events",e)}};var Ze=["onBeforeMount","onMount","onUpdateProps","onBeforeUnmount","onRefetchData"];var Ge=(t=null)=>{try{u(t)||i("component.optionValidators.lifecycle","options.lifecycle must be an object.");for(let[e,r]of Object.entries(t))Ze.includes(e)||i("component.optionValidators.lifecycle",`options.lifecycle.${e} is not supported.`),m(r)||i("component.optionValidators.lifecycle",`options.lifecycle.${e} must be assigned a function.`)}catch(e){i("component.optionValidators.lifecycle",e)}};var We=(t=null)=>{try{u(t)||i("component.optionValidators.methods","options.methods must be an object.");for(let[e,r]of Object.entries(t))m(r)||i("component.optionValidators.methods",`options.methods.${e} must be assigned a function.`)}catch(e){i("component.optionValidators.methods",e)}};var Ke=(t=null)=>{typeof t!="string"&&i("component.optionValidators.name","options.name must be a string.")};var Je=(t=null)=>{try{m(t)||i("component.optionValidators.render","options.render must be a function returning a string.")}catch(e){i("component.optionValidators.render",e)}};var Qe=(t=null)=>{try{m(t)||i("component.optionValidators.websockets","options.websockets must be a function returning an object.")}catch(e){i("component.optionValidators.websockets",e)}};var Ye=(t=null)=>{try{u(t)||i("component.optionValidators.wrapper","options.wrapper must be an object.");for(let[e,r]of Object.entries(t))e==="id"&&!O(r)&&i("component.optionValidators.wrapper",`options.wrapper.${e} must be assigned a string.`),e==="classList"&&!I(r)&&i("component.optionValidators.wrapper",`options.wrapper.${e} must be assigned an array of strings.`)}catch(e){i("component.optionValidators.wrapper",e)}};var Xe={css:He,events:Be,lifecycle:Ge,methods:We,name:Ke,render:Je,websockets:Qe,wrapper:Ye};var et=(t={})=>{try{Ve(t)||i("component.validateOptions",`component options must include ${required.options.join(",")}.`);for(let[e,r]of Object.entries(t)){Ue.includes(e)||i("component.validateOptions",`${e} is not supported by joystick.component.`);let o=Xe[e];o&&m(o)&&o(r)}}catch(e){i("component.validateOptions",e)}};var Y=(t=[],e="")=>{try{return(I(t)&&t.find(o=>o?.componentId===e))?.data||{}}catch(r){i("findComponentDataFromSSR",r)}};var tt=(()=>{let t=0;return(e,r)=>{clearTimeout(t),t=setTimeout(e,r)}})();var H=t=>!!(t&&typeof t=="object"&&!Array.isArray(t));var rt=t=>typeof t=="string";var ot=/^(?:4[0-9]{12}(?:[0-9]{3,6})?|5[1-5][0-9]{14}|(222[1-9]|22[3-9][0-9]|2[3-6][0-9]{2}|27[01][0-9]|2720)[0-9]{12}|6(?:011|5[0-9][0-9])[0-9]{12,15}|3[47][0-9]{13}|3(?:0[0-5]|[68][0-9])[0-9]{11}|(?:2131|1800|35\d{3})\d{11}|6[27][0-9]{14}|^(81[0-9]{14,17}))$/,nt=(t,e="")=>{if(!e)return!0;if(e&&!rt(e))return!1;let r=e?e.replace(/[- ]+/g,""):"";return t===!0?r.match(new RegExp(ot)):!r.match(new RegExp(ot))};var it=/^((?:[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*|"(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21\x23-\x5b\x5d-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])*")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21-\x5a\x53-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])+)\]))$/,st=(t,e="")=>t===!0?!!e.match(it):!e.match(it);var at=(t,e="")=>t===e;var ct=(t,e="")=>t===e;var dt=(t,e="")=>e.length<=t;var lt=(t,e="")=>e.length>=t;var mt=/^[\+]?[(]?[0-9]{3}[)]?[-\s\.]?[0-9]{3}[-\s\.]?[0-9]{4,6}$/,ut=(t,e="")=>t===!0?!!e.match(mt):!e.match(mt);var pt={AF:/^\d{4}$/,AX:/^\d{5}$/,AL:/^\d{4}$/,DZ:/^\d{5}$/,AS:/^\d{5}(-{1}\d{4,6})$/,AD:/^[Aa][Dd]\d{3}$/,AI:/^[Aa][I][-][2][6][4][0]$/,AR:/^\d{4}|[A-Za-z]\d{4}[a-zA-Z]{3}$/,AM:/^\d{4}$/,AC:/^[Aa][Ss][Cc][Nn]\s{0,1}[1][Zz][Zz]$/,AU:/^\d{4}$/,AT:/^\d{4}$/,AZ:/^[Aa][Zz]\d{4}$/,BH:/^\d{3,4}$/,BD:/^\d{4}$/,BB:/^[Aa][Zz]\d{5}$/,BY:/^\d{6}$/,BE:/^\d{4}$/,BM:/^[A-Za-z]{2}\s([A-Za-z]{2}|\d{2})$/,BT:/^\d{5}$/,BO:/^\d{4}$/,BA:/^\d{5}$/,BR:/^\d{5}-\d{3}$/,"":/^[Bb][Ii][Qq]{2}\s{0,1}[1][Zz]{2}$/,IO:/^[Bb]{2}[Nn][Dd]\s{0,1}[1][Zz]{2}$/,VG:/^[Vv][Gg]\d{4}$/,BN:/^[A-Za-z]{2}\d{4}$/,BG:/^\d{4}$/,KH:/^\d{5}$/,CA:/^(?=[^DdFfIiOoQqUu\d\s])[A-Za-z]\d(?=[^DdFfIiOoQqUu\d\s])[A-Za-z]\s{0,1}\d(?=[^DdFfIiOoQqUu\d\s])[A-Za-z]\d$/,CV:/^\d{4}$/,KY:/^[Kk][Yy]\d[-\s]{0,1}\d{4}$/,TD:/^\d{5}$/,CL:/^\d{7}\s\(\d{3}-\d{4}\)$/,CN:/^\d{6}$/,CX:/^\d{4}$/,CC:/^\d{4}$/,CO:/^\d{6}$/,CD:/^[Cc][Dd]$/,CR:/^\d{4,5}$/,HR:/^\d{5}$/,CU:/^\d{5}$/,CY:/^\d{4}$/,CZ:/^\d{5}\s\(\d{3}\s\d{2}\)$/,DK:/^\d{4}$/,DO:/^\d{5}$/,EC:/^\d{6}$/,SV:/^1101$/,EG:/^\d{5}$/,EE:/^\d{5}$/,ET:/^\d{4}$/,FK:/^[Ff][Ii][Qq]{2}\s{0,1}[1][Zz]{2}$/,FO:/^\d{3}$/,FI:/^\d{5}$/,FR:/^\d{5}$/,GF:/^973\d{2}$/,PF:/^987\d{2}$/,GA:/^\d{2}\s[a-zA-Z-_ ]\s\d{2}$/,GE:/^\d{4}$/,DE:/^\d{2}$/,GI:/^[Gg][Xx][1]{2}\s{0,1}[1][Aa]{2}$/,GR:/^\d{3}\s{0,1}\d{2}$/,GL:/^\d{4}$/,GP:/^971\d{2}$/,GU:/^\d{5}$/,GT:/^\d{5}$/,GG:/^[A-Za-z]{2}\d\s{0,1}\d[A-Za-z]{2}$/,GW:/^\d{4}$/,HT:/^\d{4}$/,HM:/^\d{4}$/,HN:/^\d{5}$/,HU:/^\d{4}$/,IS:/^\d{3}$/,IN:/^\d{6}$/,ID:/^\d{5}$/,IR:/^\d{5}-\d{5}$/,IQ:/^\d{5}$/,IM:/^[Ii[Mm]\d{1,2}\s\d\[A-Z]{2}$/,IL:/^\b\d{5}(\d{2})?$/,IT:/^\d{5}$/,JM:/^\d{2}$/,JP:/^\d{7}\s\(\d{3}-\d{4}\)$/,JE:/^[Jj][Ee]\d\s{0,1}\d[A-Za-z]{2}$/,JO:/^\d{5}$/,KZ:/^\d{6}$/,KE:/^\d{5}$/,KR:/^\d{6}\s\(\d{3}-\d{3}\)$/,XK:/^\d{5}$/,KW:/^\d{5}$/,KG:/^\d{6}$/,LV:/^[Ll][Vv][- ]{0,1}\d{4}$/,LA:/^\d{5}$/,LB:/^\d{4}\s{0,1}\d{4}$/,LS:/^\d{3}$/,LR:/^\d{4}$/,LY:/^\d{5}$/,LI:/^\d{4}$/,LT:/^[Ll][Tt][- ]{0,1}\d{5}$/,LU:/^\d{4}$/,MK:/^\d{4}$/,MG:/^\d{3}$/,MV:/^\d{4,5}$/,MY:/^\d{5}$/,MT:/^[A-Za-z]{3}\s{0,1}\d{4}$/,MH:/^\d{5}$/,MQ:/^972\d{2}$/,YT:/^976\d{2}$/,FM:/^\d{5}(-{1}\d{4})$/,MX:/^\d{5}$/,MD:/^[Mm][Dd][- ]{0,1}\d{4}$/,MC:/^980\d{2}$/,MN:/^\d{5}$/,ME:/^\d{5}$/,MS:/^[Mm][Ss][Rr]\s{0,1}\d{4}$/,MA:/^\d{5}$/,MZ:/^\d{4}$/,MM:/^\d{5}$/,NA:/^\d{5}$/,NP:/^\d{5}$/,NL:/^\d{4}\s{0,1}[A-Za-z]{2}$/,NC:/^988\d{2}$/,NZ:/^\d{4}$/,NI:/^\d{5}$/,NE:/^\d{4}$/,NG:/^\d{6}$/,NF:/^\d{4}$/,MP:/^\d{5}$/,NO:/^\d{4}$/,OM:/^\d{3}$/,PK:/^\d{5}$/,PW:/^\d{5}$/,PA:/^\d{6}$/,PG:/^\d{3}$/,PY:/^\d{4}$/,PE:/^\d{5}$/,PH:/^\d{4}$/,PN:/^[Pp][Cc][Rr][Nn]\s{0,1}[1][Zz]{2}$/,PL:/^\d{2}[- ]{0,1}\d{3}$/,PT:/^\d{4}$/,PR:/^\d{5}$/,RE:/^974\d{2}$/,RO:/^\d{6}$/,RU:/^\d{6}$/,BL:/^97133$/,SH:/^[Ss][Tt][Hh][Ll]\s{0,1}[1][Zz]{2}$/,MF:/^97150$/,PM:/^97500$/,VC:/^[Vv][Cc]\d{4}$/,SM:/^4789\d$/,SA:/^\d{5}(-{1}\d{4})?$/,SN:/^\d{5}$/,RS:/^\d{5}$/,SG:/^\d{2}$/,SK:/^\d{5}\s\(\d{3}\s\d{2}\)$/,SI:/^([Ss][Ii][- ]{0,1}){0,1}\d{4}$/,ZA:/^\d{4}$/,GS:/^[Ss][Ii][Qq]{2}\s{0,1}[1][Zz]{2}$/,ES:/^\d{5}$/,LK:/^\d{5}$/,SD:/^\d{5}$/,SZ:/^[A-Za-z]\d{3}$/,SE:/^\d{3}\s*\d{2}$/,CH:/^\d{4}$/,SJ:/^\d{4}$/,TW:/^\d{5}$/,TJ:/^\d{6}$/,TH:/^\d{5}$/,TT:/^\d{6}$/,TN:/^\d{4}$/,TR:/^\d{5}$/,TM:/^\d{6}$/,TC:/^[Tt][Kk][Cc][Aa]\s{0,1}[1][Zz]{2}$/,UA:/^\d{5}$/,GB:/^[A-Z]{1,2}[0-9R][0-9A-Z]?\s*[0-9][A-Z-[CIKMOV]]{2}/,US:/^\b\d{5}\b(?:[- ]{1}\d{4})?$/,UY:/^\d{5}$/,VI:/^\d{5}$/,UZ:/^\d{3} \d{3}$/,VA:/^120$/,VE:/^\d{4}(\s[a-zA-Z]{1})?$/,VN:/^\d{6}$/,WF:/^986\d{2}$/,ZM:/^\d{5}$/},ft=(t,e="")=>{let r=H(t)&&t.iso?pt[t.iso||"US"]:pt.US;return H(t)?t.rule===!0?!!e.match(r):!e.match(r):t===!0?!!e.match(r):!e.match(r)};var ht=(t,e="",r={isChecked:!1})=>{if(!r.isChecked)return t===!0?e&&e.trim()!=="":e&&e.trim()==="";if(r.isChecked)return t===!0?e:!e};var wt=/^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/,yt=(t,e="")=>t===!0?!!e.match(wt):!e.match(wt);var gt=/^[a-z0-9]+(?:-[a-z0-9]+)*$/,xt=(t,e="")=>t===!0?!!e.match(gt):!e.match(gt);var bt=/^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[#?!@$ %^&*-]).{8,}$/,$t=(t,e="")=>t===!0?!!e.match(bt):!e.match(bt);var Et=/https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()!@:%_\+.~#?&\/\/=]*)/,Ft=(t,e="")=>t===!0?!!e.match(Et):!e.match(Et);var kt={AT:/^(AT)(U\d{8}$)/i,BE:/^(BE)(\d{10}$)/i,BG:/^(BG)(\d{9,10}$)/i,CY:/^(CY)([0-5|9]\d{7}[A-Z]$)/i,CZ:/^(CZ)(\d{8,10})?$/i,DE:/^(DE)([1-9]\d{8}$)/i,DK:/^(DK)(\d{8}$)/i,EE:/^(EE)(10\d{7}$)/i,EL:/^(EL)(\d{9}$)/i,ES:/^(ES)([0-9A-Z][0-9]{7}[0-9A-Z]$)/i,EU:/^(EU)(\d{9}$)/i,FI:/^(FI)(\d{8}$)/i,FR:/^(FR)([0-9A-Z]{2}[0-9]{9}$)/i,GB:/^(GB)((?:[0-9]{12}|[0-9]{9}|(?:GD|HA)[0-9]{3})$)/i,GR:/^(GR)(\d{8,9}$)/i,HR:/^(HR)(\d{11}$)/i,HU:/^(HU)(\d{8}$)/i,IE:/^(IE)([0-9A-Z\*\+]{7}[A-Z]{1,2}$)/i,IT:/^(IT)(\d{11}$)/i,LV:/^(LV)(\d{11}$)/i,LT:/^(LT)(\d{9}$|\d{12}$)/i,LU:/^(LU)(\d{8}$)/i,MT:/^(MT)([1-9]\d{7}$)/i,NL:/^(NL)(\d{9}B\d{2}$)/i,NO:/^(NO)(\d{9}$)/i,PL:/^(PL)(\d{10}$)/i,PT:/^(PT)(\d{9}$)/i,RO:/^(RO)([1-9]\d{1,9}$)/i,RU:/^(RU)(\d{10}$|\d{12}$)/i,RS:/^(RS)(\d{9}$)/i,SI:/^(SI)([1-9]\d{7}$)/i,SK:/^(SK)([1-9]\d[(2-4)|(6-9)]\d{7}$)/i,SE:/^(SE)(\d{10}01$)/i},Mt=(t,e="")=>{let r=H(t)&&t.iso?kt[t.iso||"EU"]:kt.EU;return H(t)?t.rule===!0?!!e.match(r):!e.match(r):t===!0?!!e.match(r):!e.match(r)};var St={creditCard:nt,email:st,equals:at,matches:ct,maxLength:dt,minLength:lt,phone:ut,postalCode:ft,required:ht,semVer:yt,slug:xt,strongPassword:$t,url:Ft,vat:Mt};var Tt=class{constructor(e,r={}){this.fieldsToListenToForChanges=["checkbox","color","date","datetime-local","email","file","hidden","month","number","password","radio","range","search","tel","text","time","url","week"],this.defaultValidationErrors={required:()=>"This field is required.",email:()=>"Must be a valid email.",creditCard:()=>"Must be a valid credit card number.",equals:o=>`Value must equal ${o}.`,matches:o=>`Field must match ${o}.`,maxLength:o=>`Field value can be no greater than ${o}.`,minLength:o=>`Field value can be no less than ${o}.`,phone:()=>"Field value must be a valid telephone number.",postalCode:()=>"Field value must be a valid postal code.",semVer:()=>"Field value must be a valid semantic version.",slug:()=>"Field value must be a valid URL slug.",strongPassword:()=>"Field value must be a valid password.",url:()=>"Field value must be a valid URL.",vat:()=>"Field value must be a valid VAT code."},e||console.warn("[validateForm] Must pass an HTML <form></form> element to validate."),this.form=e,this.setOptions(r),this.attachEventListeners()}setOptions(e={}){this.rules=e.rules||{},this.messages=e.messages||{},this.onSubmit=e.onSubmit,this.fields=this.serialize()}updateOptions(e={}){this.setOptions(e)}serialize(){if(this.form)return Object.keys(this.rules).map(r=>{let o=this.form.querySelector(`[name="${r}"]`),n=o?.type;return{listenForChanges:this.fieldsToListenToForChanges.includes(n),type:n,name:r,element:o,validations:Object.entries(this.rules[r]).map(([c,a])=>({name:c,rule:a,valid:!1})).sort((c,a)=>c.name>a.name?1:-1),errorMessages:this.messages[r]?Object.keys(this.messages[r]):{}}})}attachEventListeners(){if(this.form){let e=r=>{r.stopPropagation(),r.preventDefault(),this.validate()&&this.onSubmit&&this.onSubmit()};if(this.form.listeners?.length>0)for(let r=0;r<this.form.listeners.length;r+=1){let o=this.form.listeners[r];this.form.removeEventListener("submit",o)}this.form.addEventListener("submit",e),this.form.listeners=[...this.form.listeners||[],e]}this.fields.forEach(e=>{if(e?.element&&e?.listenForChanges){let r=()=>{tt(()=>{this.validate(e.name)},100)};e.element.removeEventListener("input",r),e.element.addEventListener("input",r),e.element.removeEventListener("change",r),e.element.addEventListener("change",r)}})}validate(e=null){if(e){this.clearExistingErrors();let r=this.fields.find(o=>o.name===e);return this.validateField(r),this.checkIfValid()}else return this.clearExistingErrors(),this.fields.forEach(r=>{this.validateField(r)}),this.checkIfValid()}checkIfValid(){return!this.fields.map(r=>r.validations.some(o=>!o.valid)).includes(!0)}validateField(e){let r=this.form.querySelector(`[name="${e.name}"]`),o=["checkbox","radio"].includes(e.type),n=o?null:e?.element?.value?.trim(),s=o?e?.element?.checked:null;e.validations.forEach(a=>{if(this.isValidValue(o,o?s:n,a))this.markValidationAsValid(e,a.name);else{let l=this.messages[e.name]&&this.messages[e.name][a.name];this.markValidationAsInvalid(e,a.name),this.renderError(e.element,l||this.defaultValidationErrors[a.name](a.rule,n))}});let c=e.validations.some(a=>!a.valid);return c&&(r.classList.add("error"),r.focus()),c||(r.classList.remove("error"),this.clearExistingError(e.name)),!c}markValidationAsInvalid(e,r){let n=[...e.validations].find(s=>s.name===r);n.valid=!1}markValidationAsValid(e,r){let n=[...e.validations].find(s=>s.name===r);n.valid=!0}isValidValue(e,r,o){let n=St[o.name];return n?n(o.rule,r,{isChecked:e}):!0}clearExistingErrors(){this.form&&this.form.querySelectorAll(".input-hint.error").forEach(e=>e.remove())}clearExistingError(e=""){let r=document.getElementById(`error-${e}`);r&&r.remove()}renderError(e,r=""){if(e){this.clearExistingError(e.name);let o=document.createElement("p");o.classList.add("input-hint"),o.classList.add("error"),o.setAttribute("id",`error-${e.name}`),o.innerText=r,e.after(o)}}},Pr=(t,e)=>new Promise((r,o)=>{try{new Tt(t,e).validate()?r():o()}catch(n){console.warn(n)}}),Ot=Pr;var vt=(t={},e={})=>{try{return[...Object.keys(e),...Object.keys(t)].filter((o,n,s)=>s.indexOf(o)===n).reduce((o,n)=>{let s=e[n],c=t[n]||null,a=!Se(s)&&!Te(s);return o[n]=a?s:c,o},{})}catch(r){i("component.props.compile",r)}};var X=(t="",e={})=>{try{let r="";if(t&&O(t))return r=t,r;if(t&&m(t))return r=t(e),r;if(t&&u(t)){let o=t?.print&&(O(t?.print)||m(t?.print)),n=t?.min&&u(t?.min),s=t?.min?.width&&u(t?.min?.width),c=t?.min?.height&&u(t?.min?.height),a=t?.max&&u(t?.max),l=t?.max?.width&&u(t?.max?.width),x=t?.max?.height&&u(t?.max?.height);if(o&&(r+=`
|
|
1
|
+
var Rr=Object.create;var le=Object.defineProperty;var Ar=Object.getOwnPropertyDescriptor;var Dr=Object.getOwnPropertyNames;var Lr=Object.getPrototypeOf,Pr=Object.prototype.hasOwnProperty;var Ir=t=>le(t,"__esModule",{value:!0});var qr=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports);var Vr=(t,e,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Dr(e))!Pr.call(t,o)&&o!=="default"&&le(t,o,{get:()=>e[o],enumerable:!(r=Ar(e,o))||r.enumerable});return t},Nr=t=>Vr(Ir(le(t!=null?Rr(Lr(t)):{},"default",t&&t.__esModule&&"default"in t?{get:()=>t.default,enumerable:!0}:{value:t,enumerable:!0})),t);var Zt=qr(ne=>{(function(t,e){if(typeof define=="function"&&define.amd)define(["exports"],e);else if(typeof ne!="undefined")e(ne);else{var r={exports:{}};e(r.exports),t.index=r.exports}})(ne,function(t){"use strict";function e(p){return e=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(d){return typeof d}:function(d){return d&&typeof Symbol=="function"&&d.constructor===Symbol&&d!==Symbol.prototype?"symbol":typeof d},e(p)}function r(p,d){return d&&(e(d)==="object"||typeof d=="function")?d:o(p)}function o(p){if(p===void 0)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return p}function n(p){return n=Object.setPrototypeOf?Object.getPrototypeOf:function(d){return d.__proto__||Object.getPrototypeOf(d)},n(p)}function s(p,d){if(typeof d!="function"&&d!==null)throw new TypeError("Super expression must either be null or a function");p.prototype=Object.create(d&&d.prototype,{constructor:{value:p,writable:!0,configurable:!0}}),d&&c(p,d)}function c(p,d){return c=Object.setPrototypeOf||function(k,O){return k.__proto__=O,k},c(p,d)}function a(p,d){if(!(p instanceof d))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(t,"__esModule",{value:!0}),t.diff=void 0;var l=function p(d,k){a(this,p),this.type=d,this.path=k?k.toString():""},x=function(p){function d(k,O,w){var L;return a(this,d),L=r(this,n(d).call(this,"E",k)),L.lhs=O,L.rhs=w,L}return s(d,p),d}(l),g=function(p){function d(k,O,w,L){var E;return a(this,d),E=r(this,n(d).call(this,"M",k)),E.item=O,E.lhsIndex=w,E.rhsIndex=L,E}return s(d,p),d}(l),b=function(p){function d(k,O){var w;return a(this,d),w=r(this,n(d).call(this,"D",k)),w.lhs=O,w}return s(d,p),d}(l),R=function(p){function d(k,O){var w;return a(this,d),w=r(this,n(d).call(this,"A",k)),w.rhs=O,w}return s(d,p),d}(l),h=function(p,d){return p?"".concat(p,".").concat(d):d};t.diff=function(d,k){var O=2<arguments.length&&arguments[2]!==void 0?arguments[2]:{},w=[],L=O.matchKey,E=O.types||["E","A","D","M"],jr=function(F,$,T,I){F.forEach(function(P,_){var j=$.findIndex(function(C){return C[I]===P[I]});-1<j?(-1<E.indexOf("M")&&_!==j&&w.push(new g(T,P,_,j)),J(P,$[j],h(T,j))):-1<E.indexOf("D")&&w.push(new b(T,P))}),$.forEach(function(P,_){var j=F.findIndex(function(C){return P[I]===C[I]});-1<E.indexOf("A")&&j===-1&&w.push(new R(h(T,_),P))})},J=function(F,$,T){var I=Object.prototype.toString.call(F),P=Object.prototype.toString.call($);if(-1<E.indexOf("E")&&I!==P)return w.push(new x(T,F,$)),!1;if(I==="[object Object]")Object.getOwnPropertyNames(F).forEach(function(C){Object.prototype.hasOwnProperty.call($,C)?J(F[C],$[C],h(T,C)):-1<E.indexOf("D")&&w.push(new b(h(T,C),F[C]))}),Object.getOwnPropertyNames($).forEach(function(C){-1<E.indexOf("A")&&!Object.prototype.hasOwnProperty.call(F,C)&&w.push(new R(h(T,C),$[C]))});else if(I!=="[object Array]")-1<E.indexOf("E")&&F!==$&&w.push(new x(T,F,$));else if(L)jr(F,$,T,L);else{var _=F.length-1,j=$.length-1;if(-1<E.indexOf("D"))for(;_>j;)w.push(new b(h(T,_),F[_--]));if(-1<E.indexOf("A"))for(;j>_;)w.push(new R(h(T,j),$[j--]));for(;0<=_;--_)J(F[_],$[_],h(T,_))}};return J(d,k),w}})});var H=(t="{}")=>{try{return JSON.parse(t)}catch{return t}};var i=(t="",e={})=>{throw new Error(`[joystick${t?`.${t}`:""}] ${e.message||e.reason||e}`)};var A=(t="",e=[])=>{try{console.error(`${t} failed with the following errors:`),e.forEach(r=>{console.log(r.message),r.stack&&console.log(r.stack)})}catch(r){i(t,r)}};var Hr=async(t={})=>{try{let e=await t.text();return H(e)}catch(e){i("accounts.request.handleParseResponse",e)}},Ur=(t="GET",e={})=>{try{return["POST"].includes(t)?JSON.stringify({...e,origin:window?.location?.origin}):null}catch(r){i("accounts.request.getBody",r)}},zr=(t=null)=>{try{switch(t){case"authenticated":case"user":return"GET";default:return"POST"}}catch(e){i("accounts.request.getHTTPMethod",e)}},v=(t="",e={})=>{try{if(typeof window.fetch!="undefined")return new Promise((r,o)=>{let n=`${window.location.origin}/api/_accounts/${t}`,s=zr(t),c=Ur(s,e);return fetch(n,{method:s,mode:"cors",headers:{"Content-Type":"application/json"},body:c,credentials:"include"}).then(async a=>{let l=await Hr(a);return l?.errors?(A(`accounts.${t}`,l.errors),o(l)):r(l)}).catch(a=>(A(`accounts.${t}`,[a]),o({errors:[a]})))})}catch(r){i(`accounts.request.${t}`,r)}};var $e=async(t={})=>{try{let e=await v("authenticated",t);return e?.status===200&&e?.authenticated}catch(e){i("accounts.authenticated",e)}};var ke=(t={})=>{try{return v("login",t)}catch(e){i("accounts.login",e)}};var Ee=()=>{try{return v("logout")}catch(t){i("accounts.logout",t)}};var Fe=(t={})=>{try{return v("recover-password",t)}catch(e){i("accounts.recoverPassword",e)}};var Me=(t={})=>{try{return v("reset-password",t)}catch(e){i("accounts.resetPassword",e)}};var Se=(t={})=>{try{return v("signup",t)}catch(e){i("accounts.signup",e)}};var Te=async(t={})=>{try{let e=await v("user",t);return e?.status===200&&e?.user}catch(e){i("accounts.user",e)}};var _e={authenticated:$e,login:ke,logout:Ee,recoverPassword:Fe,resetPassword:Me,signup:Se,user:Te};var Ce=t=>{try{return typeof t=="undefined"}catch(e){i("types.isUndefined",e)}},ve=t=>{try{return t===null}catch(e){i("types.isNull",e)}},Oe=t=>{try{return!0}catch(e){i("types.isDOM",e)}},q=t=>{try{return!!Array.isArray(t)}catch(e){i("types.isArray",e)}};var u=t=>{try{return typeof t=="function"}catch(e){i("types.isFunction",e)}};var m=t=>{try{return!!(t&&typeof t=="object"&&!Array.isArray(t))}catch(e){i("types.isObject",e)}};var M=t=>{try{return typeof t=="string"}catch(e){i("types.isString",e)}};var je=class{constructor(e="",r={}){this.name=e,this.value=r||{},this.listeners={change:[],set:[],unset:[]}}_getValueAtPath(e=""){return e?.split(".").reduce((r=null,o="")=>(r[o]&&(r=r[o]),r),this.value)}get(e=""){return e?.trim()===""?{...this.value||{}}:this._getValueAtPath(e)}set(e=null,r=""){if(!e||!u(e))throw new Error("First argument passed to set() must be a function.");let o=e(this.value);if(!m(o))throw new Error("Value to set must be an object representing the current cache state.");this.value=o,this._handleEvent(r,"set"),this._handleEvent(r,"change")}unset(e="",r=""){e?.trim()===""&&(this.value={});let o=e?.split("."),n=o?.length-1;o.reduce((s,c,a)=>(a===n&&delete s[c],s[c]),this.value),this._handleEvent(r,"unset"),this._handleEvent(r,"change")}on(e="",r=null){if(!["change","set","unset"].includes(e))throw new Error(`Event to listen for must be change, set, or unset. ${e} is not supported.`);if(!r||!u(r))throw new Error("Second argument passed to on("<e>") must be a function.");this.listeners={[e]:[...this.listeners[e]||[],r]}}_handleEvent(e="",r=""){let o=this.listeners[r]||[];for(let n=0;n<o?.length;n+=1){let s=o[n];u(s)&&s(this.value,e,r)}}},Re=je;var Ae=(t="",e={})=>{try{if(!t||t&&!M(t))throw new Error("Must pass a cache name as a string.");if(e&&!m(e))throw new Error("Default value for cache must be an object.");return new Re(t,e)}catch(r){i("cache",r)}};var De=(t="")=>joystick._external[t]?joystick._external[t]:null;var Le=(t="")=>t;var S=()=>typeof window=="undefined";var Pe=(t={},e={})=>{let r=t({props:e}),o=r.renderToHTML();return S()||r.appendCSSToHead(),o?.wrapped};var Ie=(t=128,e="test.txt",r="text/plain")=>{let o=t instanceof Blob;return new File(o?t:new Blob(new Uint8Array(t||128),{type:r}),e,{type:r})};var y=(t="",e=[])=>{typeof window!="undefined"&&!!window.__joystick_test__&&(window.test={...window.test||{},functionCalls:{...window?.test?.functionCalls||{},[t]:[...window?.test?.functionCalls&&window?.test?.functionCalls[t]||[],{calledAt:new Date().toISOString(),args:e}]}})};var qe={utils:{createFile:Ie,trackFunctionCall:y}};var ue=(t="",e={})=>{typeof window!="undefined"&&(joystick._external[t]={...joystick._external[t]||{},...e})};var Ve="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ01234567890".split(""),f=(t=16)=>{let e="",r=0;for(;r<t;)e+=Ve[Math.floor(Math.random()*(Ve.length-1))],r+=1;return e};var U=null,Q=0,Ne=(t={},e=null)=>{try{if(window?.__joystick_test__)return e();let r=t?.url;t?.query&&(r=`${r}?${new URLSearchParams(t.query).toString()}`);let o=new WebSocket(r);U&&(clearInterval(U),U=null);let n={client:o,send:(s={})=>(y(`ui.websockets.${t?.test?.name||f()}.send`,[s]),o.send(JSON.stringify(s)))};return o.addEventListener("open",()=>{t?.options?.logging&&console.log(`[joystick.websockets] Connected to ${t?.url}`),t?.events?.onOpen&&(t.events.onOpen(n),y(`ui.websockets.${t?.test?.name||f()}.onOpen`,[n])),Q=0}),o.addEventListener("message",s=>{s?.data&&t?.events?.onMessage&&(t.events.onMessage(JSON.parse(s.data||{}),n),y(`ui.websockets.${t?.test?.name||f()}.onMessage`,[s.data||{},n]))}),o.addEventListener("close",s=>{t?.options?.logging&&console.log(`[joystick.websockets] Disconnected from ${t?.url}`),t?.events?.onClose&&(t.events.onClose(s?.code,s?.reason,n),y(`ui.websockets.${t?.test?.name||f()}.onClose`,[s.data||{},n])),o=null;let c=[1e3,1001].includes(s?.code);t?.options?.autoReconnect&&!U&&!c&&(U=setInterval(()=>{o=null,Q<(t?.options?.reconnectAttempts||12)?(Ne(t,e),t?.options?.logging&&console.log(`[joystick.websockets] Attempting to reconnect (${Q+1}/12)...`),Q+=1):clearInterval(U)},t?.options?.reconnectDelayInSeconds*1e3||5e3))}),e&&e(n),n}catch(r){i("websockets.client",r)}},Y=Ne;var He=(t="",e={})=>{try{if(window?.__joystick_test__){y(`ui.upload.${t}`,[t,e]);return}return new Promise((r,o)=>{let n=f(),s=0;Y({url:`${window?.process?.env.NODE_ENV==="development"?"ws":"wss"}://${location.host}/api/_websockets/uploaders`,options:{logging:!1,autoReconnect:!0,reconnectAttempts:12,reconnectDelayInSeconds:5},query:{id:n},events:{onMessage:(c={})=>{c?.type==="PROGRESS"&&e?.onProgress&&s<100&&s!==c?.progress&&(s=c?.progress,e.onProgress(c?.progress,c?.provider))}}},()=>{let c;e?.files?.length>0&&(c=new FormData,Array.from(e?.files).forEach(a=>{c.append("files",a,a.name)})),fetch(`${window.location.origin}/api/_uploaders/${t}`,{method:"POST",headers:{"x-joystick-upload-id":n,"x-joystick-upload-input":JSON.stringify(e?.input||{})},body:c}).then(async a=>{let l=await a.json();console.log(l),l&&l.errors?(A("upload",l.errors),o({errors:l.errors})):r(l?.uploads)})})})}catch(r){i("upload",r)}};var Ue=(t={})=>{try{let e=null;typeof window!="undefined"&&(e=window),typeof global!="undefined"&&(e=global),e&&(e.joystick={...e?.joystick||{},settings:e?.__joystick_settings__,...t})}catch(e){i("attachJoystickToWindow",e)}};var ze=(t={})=>Object.entries(t).map(([e,r])=>`${e}=${r}`)?.join("; ");var Br=async(t={})=>{try{let e=await t.text();return H(e)}catch(e){i("api.get.handleParseResponse",e)}},Be=(t="",e={})=>{try{return typeof window.fetch!="undefined"&&!e?.skip?new Promise((r,o)=>{let n=e.input?JSON.stringify(e.input):null,s=e.output?JSON.stringify(e.output):null,c=`${window.location.origin}/api/_getters/${t}?input=${n}&output=${s}`,a=document.querySelector('[name="csrf"]')?.getAttribute("content"),l={...e?.headers||{},"x-joystick-csrf":a};return window?.__joystick_test__&&(l.Cookie=ze({joystickLoginToken:window.__joystick_test_login_token__,joystickLoginTokenExpiresAt:window.__joystick_test_login_token_expires_at__})),e?.loader?.instance&&e?.loader?.instance?.setState({[e?.loader?.state||`${t}_loading`]:!0}),fetch(c,{method:"GET",mode:"cors",headers:l,credentials:"include"}).then(async x=>{let g=await Br(x);return e?.loader?.instance&&e?.loader?.instance?.setState({[e?.loader?.state||`${t}_loading`]:!1}),g?.errors?(A("get request",g.errors),o(g)):r(g)}).catch(x=>(A("get request",[x]),e?.loader?.instance&&e?.loader?.instance?.setState({[e?.loader?.state||`${t}_loading`]:!1}),o({errors:[x]})))}):Promise.resolve()}catch(r){i("get request",r)}};var Zr=async(t={})=>{try{let e=await t.text();return H(e)}catch(e){i("api.set.handleParseResponse",e)}},Gr=(t={})=>{try{let e={...t};return e?.loader&&delete e.loader,JSON.stringify(e)}catch(e){i("api.set.getBody",e)}},Ze=(t="",e={})=>{try{return typeof window.fetch!="undefined"?new Promise((r,o)=>{let n=`${window.location.origin}/api/_setters/${t}`,s=Gr(e),c=document.querySelector('[name="csrf"]')?.getAttribute("content"),a={...e?.headers||{},"Content-Type":"application/json","x-joystick-csrf":c};return window?.__joystick_test__&&(a.Cookie=generateCookieHeader({joystickLoginToken:window?.__joystick_test_login_token__,joystickLoginTokenExpiresAt:window.__joystick_test_login_token_expirs_at__})),e?.loader?.instance&&e?.loader?.instance?.setState({[e?.loader?.state||`${t}_loading`]:!0}),fetch(n,{method:"POST",mode:"cors",headers:a,body:s,credentials:"include"}).then(async l=>{let x=await Zr(l);return e?.loader?.instance&&e?.loader?.instance?.setState({[e?.loader?.state||`${t}_loading`]:!1}),x?.errors?(A("set request",x.errors),o(x)):r(x)}).catch(l=>(A("set request",[l]),e?.loader?.instance&&e?.loader?.instance?.setState({[e?.loader?.state||`${t}_loading`]:!1}),o({errors:[l]})))}):Promise.resolve()}catch(r){i("set request",r)}};var G={get:Be,set:Ze};var Ge=["render"];var We=(t={})=>{try{return Ge.every(e=>Object.keys(t).includes(e))}catch(e){i("component.hasAllRequiredOptions",e)}};var Ke=["_componentId","_ssrId","api","dataFromSSR","existingProps","existingState","instanceId","parent","req","css","data","defaultProps","events","id","lifecycle","methods","name","props","render","state","test","translations","url","websockets","wrapper"];var Je=(t=null)=>{try{!M(t)&&!u(t)&&!m(t)&&i("component.optionValidators.css","options.css must be a string, function returning a string, or an object returning breakpoints.")}catch(e){i("component.optionValidators.css",e)}};var Qe=["readystatechange","pointerlockchange","pointerlockerror","beforecopy","beforecut","beforepaste","freeze","resume","search","securitypolicyviolation","visibilitychange","fullscreenchange","fullscreenerror","webkitfullscreenchange","webkitfullscreenerror","beforexrselect","abort","blur","cancel","canplay","canplaythrough","change","click","close","contextmenu","cuechange","dblclick","drag","dragend","dragenter","dragleave","dragover","dragstart","drop","durationchange","emptied","ended","error","focus","formdata","input","invalid","keydown","keypress","keyup","load","loadeddata","loadedmetadata","loadstart","mousedown","mouseenter","mouseleave","mousemove","mouseout","mouseover","mouseup","mousewheel","pause","play","playing","progress","ratechange","reset","resize","scroll","seeked","seeking","select","stalled","submit","suspend","timeupdate","toggle","volumechange","waiting","webkitanimationend","webkitanimationiteration","webkitanimationstart","webkittransitionend","wheel","auxclick","gotpointercapture","lostpointercapture","pointerdown","pointermove","pointerup","pointercancel","pointerover","pointerout","pointerenter","pointerleave","selectstart","selectionchange","animationend","animationiteration","animationstart","transitionrun","transitionstart","transitionend","transitioncancel","copy","cut","paste","pointerrawupdate"];var Ye=(t=null)=>{try{m(t)||i("component.optionValidators.events","options.events must be an object.");for(let e of Object.keys(t)){let[r]=e.split(" ");Qe.includes(r)||i("component.optionValidators.events",`${r} is not a supported JavaScript event type.`)}for(let[e,r]of Object.entries(t))u(r)||i("component.optionValidators.events",`options.events.${e} must be assigned a function.`)}catch(e){i("component.optionValidators.events",e)}};var Xe=["onBeforeMount","onMount","onUpdateProps","onBeforeUnmount","onRefetchData"];var et=(t=null)=>{try{m(t)||i("component.optionValidators.lifecycle","options.lifecycle must be an object.");for(let[e,r]of Object.entries(t))Xe.includes(e)||i("component.optionValidators.lifecycle",`options.lifecycle.${e} is not supported.`),u(r)||i("component.optionValidators.lifecycle",`options.lifecycle.${e} must be assigned a function.`)}catch(e){i("component.optionValidators.lifecycle",e)}};var tt=(t=null)=>{try{m(t)||i("component.optionValidators.methods","options.methods must be an object.");for(let[e,r]of Object.entries(t))u(r)||i("component.optionValidators.methods",`options.methods.${e} must be assigned a function.`)}catch(e){i("component.optionValidators.methods",e)}};var rt=(t=null)=>{typeof t!="string"&&i("component.optionValidators.name","options.name must be a string.")};var ot=(t=null)=>{try{u(t)||i("component.optionValidators.render","options.render must be a function returning a string.")}catch(e){i("component.optionValidators.render",e)}};var nt=(t=null)=>{try{m(t)||i("component.optionValidators.test","options.test must be an object."),t?.name&&!M(t.name)&&i("component.optionValidators.test","options.test.name must be assigned a string.")}catch(e){i("component.optionValidators.test",e)}};var it=(t=null)=>{try{u(t)||i("component.optionValidators.websockets","options.websockets must be a function returning an object.")}catch(e){i("component.optionValidators.websockets",e)}};var st=(t=null)=>{try{m(t)||i("component.optionValidators.wrapper","options.wrapper must be an object.");for(let[e,r]of Object.entries(t))e==="id"&&!M(r)&&i("component.optionValidators.wrapper",`options.wrapper.${e} must be assigned a string.`),e==="classList"&&!q(r)&&i("component.optionValidators.wrapper",`options.wrapper.${e} must be assigned an array of strings.`)}catch(e){i("component.optionValidators.wrapper",e)}};var at={css:Je,events:Ye,lifecycle:et,methods:tt,name:rt,render:ot,test:nt,websockets:it,wrapper:st};var ct=(t={})=>{try{We(t)||i("component.validateOptions",`component options must include ${required.options.join(",")}.`);for(let[e,r]of Object.entries(t)){Ke.includes(e)||i("component.validateOptions",`${e} is not supported by joystick.component.`);let o=at[e];o&&u(o)&&o(r)}}catch(e){i("component.validateOptions",e)}};var X=(t=[],e="")=>{try{return(q(t)&&t.find(o=>o?.componentId===e))?.data||{}}catch(r){i("findComponentDataFromSSR",r)}};var dt=(()=>{let t=0;return(e,r)=>{clearTimeout(t),t=setTimeout(e,r)}})();var z=t=>!!(t&&typeof t=="object"&&!Array.isArray(t));var lt=t=>typeof t=="string";var ut=/^(?:4[0-9]{12}(?:[0-9]{3,6})?|5[1-5][0-9]{14}|(222[1-9]|22[3-9][0-9]|2[3-6][0-9]{2}|27[01][0-9]|2720)[0-9]{12}|6(?:011|5[0-9][0-9])[0-9]{12,15}|3[47][0-9]{13}|3(?:0[0-5]|[68][0-9])[0-9]{11}|(?:2131|1800|35\d{3})\d{11}|6[27][0-9]{14}|^(81[0-9]{14,17}))$/,mt=(t,e="")=>{if(!e)return!0;if(e&&!lt(e))return!1;let r=e?e.replace(/[- ]+/g,""):"";return t===!0?r.match(new RegExp(ut)):!r.match(new RegExp(ut))};var pt=(t="",e="")=>t(e);var ft=/^((?:[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*|"(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21\x23-\x5b\x5d-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])*")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\x01-\x08\x0b\x0c\x0e-\x1f\x21-\x5a\x53-\x7f]|\\[\x01-\x09\x0b\x0c\x0e-\x7f])+)\]))$/,ht=(t,e="")=>t===!0?!!e.match(ft):!e.match(ft);var wt=(t,e="")=>t===e;var yt=(t,e="")=>t===e;var gt=(t,e="")=>e.length<=t;var xt=(t,e="")=>e.length>=t;var bt=/^[\+]?[(]?[0-9]{3}[)]?[-\s\.]?[0-9]{3}[-\s\.]?[0-9]{4,6}$/,$t=(t,e="")=>t===!0?!!e.match(bt):!e.match(bt);var kt={AF:/^\d{4}$/,AX:/^\d{5}$/,AL:/^\d{4}$/,DZ:/^\d{5}$/,AS:/^\d{5}(-{1}\d{4,6})$/,AD:/^[Aa][Dd]\d{3}$/,AI:/^[Aa][I][-][2][6][4][0]$/,AR:/^\d{4}|[A-Za-z]\d{4}[a-zA-Z]{3}$/,AM:/^\d{4}$/,AC:/^[Aa][Ss][Cc][Nn]\s{0,1}[1][Zz][Zz]$/,AU:/^\d{4}$/,AT:/^\d{4}$/,AZ:/^[Aa][Zz]\d{4}$/,BH:/^\d{3,4}$/,BD:/^\d{4}$/,BB:/^[Aa][Zz]\d{5}$/,BY:/^\d{6}$/,BE:/^\d{4}$/,BM:/^[A-Za-z]{2}\s([A-Za-z]{2}|\d{2})$/,BT:/^\d{5}$/,BO:/^\d{4}$/,BA:/^\d{5}$/,BR:/^\d{5}-\d{3}$/,"":/^[Bb][Ii][Qq]{2}\s{0,1}[1][Zz]{2}$/,IO:/^[Bb]{2}[Nn][Dd]\s{0,1}[1][Zz]{2}$/,VG:/^[Vv][Gg]\d{4}$/,BN:/^[A-Za-z]{2}\d{4}$/,BG:/^\d{4}$/,KH:/^\d{5}$/,CA:/^(?=[^DdFfIiOoQqUu\d\s])[A-Za-z]\d(?=[^DdFfIiOoQqUu\d\s])[A-Za-z]\s{0,1}\d(?=[^DdFfIiOoQqUu\d\s])[A-Za-z]\d$/,CV:/^\d{4}$/,KY:/^[Kk][Yy]\d[-\s]{0,1}\d{4}$/,TD:/^\d{5}$/,CL:/^\d{7}\s\(\d{3}-\d{4}\)$/,CN:/^\d{6}$/,CX:/^\d{4}$/,CC:/^\d{4}$/,CO:/^\d{6}$/,CD:/^[Cc][Dd]$/,CR:/^\d{4,5}$/,HR:/^\d{5}$/,CU:/^\d{5}$/,CY:/^\d{4}$/,CZ:/^\d{5}\s\(\d{3}\s\d{2}\)$/,DK:/^\d{4}$/,DO:/^\d{5}$/,EC:/^\d{6}$/,SV:/^1101$/,EG:/^\d{5}$/,EE:/^\d{5}$/,ET:/^\d{4}$/,FK:/^[Ff][Ii][Qq]{2}\s{0,1}[1][Zz]{2}$/,FO:/^\d{3}$/,FI:/^\d{5}$/,FR:/^\d{5}$/,GF:/^973\d{2}$/,PF:/^987\d{2}$/,GA:/^\d{2}\s[a-zA-Z-_ ]\s\d{2}$/,GE:/^\d{4}$/,DE:/^\d{2}$/,GI:/^[Gg][Xx][1]{2}\s{0,1}[1][Aa]{2}$/,GR:/^\d{3}\s{0,1}\d{2}$/,GL:/^\d{4}$/,GP:/^971\d{2}$/,GU:/^\d{5}$/,GT:/^\d{5}$/,GG:/^[A-Za-z]{2}\d\s{0,1}\d[A-Za-z]{2}$/,GW:/^\d{4}$/,HT:/^\d{4}$/,HM:/^\d{4}$/,HN:/^\d{5}$/,HU:/^\d{4}$/,IS:/^\d{3}$/,IN:/^\d{6}$/,ID:/^\d{5}$/,IR:/^\d{5}-\d{5}$/,IQ:/^\d{5}$/,IM:/^[Ii[Mm]\d{1,2}\s\d\[A-Z]{2}$/,IL:/^\b\d{5}(\d{2})?$/,IT:/^\d{5}$/,JM:/^\d{2}$/,JP:/^\d{7}\s\(\d{3}-\d{4}\)$/,JE:/^[Jj][Ee]\d\s{0,1}\d[A-Za-z]{2}$/,JO:/^\d{5}$/,KZ:/^\d{6}$/,KE:/^\d{5}$/,KR:/^\d{6}\s\(\d{3}-\d{3}\)$/,XK:/^\d{5}$/,KW:/^\d{5}$/,KG:/^\d{6}$/,LV:/^[Ll][Vv][- ]{0,1}\d{4}$/,LA:/^\d{5}$/,LB:/^\d{4}\s{0,1}\d{4}$/,LS:/^\d{3}$/,LR:/^\d{4}$/,LY:/^\d{5}$/,LI:/^\d{4}$/,LT:/^[Ll][Tt][- ]{0,1}\d{5}$/,LU:/^\d{4}$/,MK:/^\d{4}$/,MG:/^\d{3}$/,MV:/^\d{4,5}$/,MY:/^\d{5}$/,MT:/^[A-Za-z]{3}\s{0,1}\d{4}$/,MH:/^\d{5}$/,MQ:/^972\d{2}$/,YT:/^976\d{2}$/,FM:/^\d{5}(-{1}\d{4})$/,MX:/^\d{5}$/,MD:/^[Mm][Dd][- ]{0,1}\d{4}$/,MC:/^980\d{2}$/,MN:/^\d{5}$/,ME:/^\d{5}$/,MS:/^[Mm][Ss][Rr]\s{0,1}\d{4}$/,MA:/^\d{5}$/,MZ:/^\d{4}$/,MM:/^\d{5}$/,NA:/^\d{5}$/,NP:/^\d{5}$/,NL:/^\d{4}\s{0,1}[A-Za-z]{2}$/,NC:/^988\d{2}$/,NZ:/^\d{4}$/,NI:/^\d{5}$/,NE:/^\d{4}$/,NG:/^\d{6}$/,NF:/^\d{4}$/,MP:/^\d{5}$/,NO:/^\d{4}$/,OM:/^\d{3}$/,PK:/^\d{5}$/,PW:/^\d{5}$/,PA:/^\d{6}$/,PG:/^\d{3}$/,PY:/^\d{4}$/,PE:/^\d{5}$/,PH:/^\d{4}$/,PN:/^[Pp][Cc][Rr][Nn]\s{0,1}[1][Zz]{2}$/,PL:/^\d{2}[- ]{0,1}\d{3}$/,PT:/^\d{4}$/,PR:/^\d{5}$/,RE:/^974\d{2}$/,RO:/^\d{6}$/,RU:/^\d{6}$/,BL:/^97133$/,SH:/^[Ss][Tt][Hh][Ll]\s{0,1}[1][Zz]{2}$/,MF:/^97150$/,PM:/^97500$/,VC:/^[Vv][Cc]\d{4}$/,SM:/^4789\d$/,SA:/^\d{5}(-{1}\d{4})?$/,SN:/^\d{5}$/,RS:/^\d{5}$/,SG:/^\d{2}$/,SK:/^\d{5}\s\(\d{3}\s\d{2}\)$/,SI:/^([Ss][Ii][- ]{0,1}){0,1}\d{4}$/,ZA:/^\d{4}$/,GS:/^[Ss][Ii][Qq]{2}\s{0,1}[1][Zz]{2}$/,ES:/^\d{5}$/,LK:/^\d{5}$/,SD:/^\d{5}$/,SZ:/^[A-Za-z]\d{3}$/,SE:/^\d{3}\s*\d{2}$/,CH:/^\d{4}$/,SJ:/^\d{4}$/,TW:/^\d{5}$/,TJ:/^\d{6}$/,TH:/^\d{5}$/,TT:/^\d{6}$/,TN:/^\d{4}$/,TR:/^\d{5}$/,TM:/^\d{6}$/,TC:/^[Tt][Kk][Cc][Aa]\s{0,1}[1][Zz]{2}$/,UA:/^\d{5}$/,GB:/^[A-Z]{1,2}[0-9R][0-9A-Z]?\s*[0-9][A-Z-[CIKMOV]]{2}/,US:/^\b\d{5}\b(?:[- ]{1}\d{4})?$/,UY:/^\d{5}$/,VI:/^\d{5}$/,UZ:/^\d{3} \d{3}$/,VA:/^120$/,VE:/^\d{4}(\s[a-zA-Z]{1})?$/,VN:/^\d{6}$/,WF:/^986\d{2}$/,ZM:/^\d{5}$/},Et=(t,e="")=>{let r=z(t)&&t.iso?kt[t.iso||"US"]:kt.US;return z(t)?t.rule===!0?!!e.match(r):!e.match(r):t===!0?!!e.match(r):!e.match(r)};var Ft=(t="",e="")=>(e?.match(t)||[])?.length>0;var Mt=(t,e="",r={isChecked:!1})=>{if(!r.isChecked)return t===!0?e&&e.trim()!=="":e&&e.trim()==="";if(r.isChecked)return t===!0?e:!e};var St=/^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/,Tt=(t,e="")=>t===!0?!!e.match(St):!e.match(St);var _t=/^[a-z0-9]+(?:-[a-z0-9]+)*$/,Ct=(t,e="")=>t===!0?!!e.match(_t):!e.match(_t);var vt=/^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[#?!@$ %^&*-]).{8,}$/,Ot=(t,e="")=>t===!0?!!e.match(vt):!e.match(vt);var jt=/https?:\/\/(www\.)?[-a-zA-Z0-9@:%._\+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()!@:%_\+.~#?&\/\/=]*)/,Rt=(t,e="")=>t===!0?!!e.match(jt):!e.match(jt);var At={AT:/^(AT)(U\d{8}$)/i,BE:/^(BE)(\d{10}$)/i,BG:/^(BG)(\d{9,10}$)/i,CY:/^(CY)([0-5|9]\d{7}[A-Z]$)/i,CZ:/^(CZ)(\d{8,10})?$/i,DE:/^(DE)([1-9]\d{8}$)/i,DK:/^(DK)(\d{8}$)/i,EE:/^(EE)(10\d{7}$)/i,EL:/^(EL)(\d{9}$)/i,ES:/^(ES)([0-9A-Z][0-9]{7}[0-9A-Z]$)/i,EU:/^(EU)(\d{9}$)/i,FI:/^(FI)(\d{8}$)/i,FR:/^(FR)([0-9A-Z]{2}[0-9]{9}$)/i,GB:/^(GB)((?:[0-9]{12}|[0-9]{9}|(?:GD|HA)[0-9]{3})$)/i,GR:/^(GR)(\d{8,9}$)/i,HR:/^(HR)(\d{11}$)/i,HU:/^(HU)(\d{8}$)/i,IE:/^(IE)([0-9A-Z\*\+]{7}[A-Z]{1,2}$)/i,IT:/^(IT)(\d{11}$)/i,LV:/^(LV)(\d{11}$)/i,LT:/^(LT)(\d{9}$|\d{12}$)/i,LU:/^(LU)(\d{8}$)/i,MT:/^(MT)([1-9]\d{7}$)/i,NL:/^(NL)(\d{9}B\d{2}$)/i,NO:/^(NO)(\d{9}$)/i,PL:/^(PL)(\d{10}$)/i,PT:/^(PT)(\d{9}$)/i,RO:/^(RO)([1-9]\d{1,9}$)/i,RU:/^(RU)(\d{10}$|\d{12}$)/i,RS:/^(RS)(\d{9}$)/i,SI:/^(SI)([1-9]\d{7}$)/i,SK:/^(SK)([1-9]\d[(2-4)|(6-9)]\d{7}$)/i,SE:/^(SE)(\d{10}01$)/i},Dt=(t,e="")=>{let r=z(t)&&t.iso?At[t.iso||"EU"]:At.EU;return z(t)?t.rule===!0?!!e.match(r):!e.match(r):t===!0?!!e.match(r):!e.match(r)};var Lt={creditCard:mt,custom:pt,email:ht,equals:wt,matches:yt,maxLength:gt,minLength:xt,phone:$t,postalCode:Et,regex:Ft,required:Mt,semVer:Tt,slug:Ct,strongPassword:Ot,url:Rt,vat:Dt};var Pt=class{constructor(e,r={}){this.fieldsToListenToForChanges=["checkbox","color","date","datetime-local","email","file","hidden","month","number","password","radio","range","search","tel","text","time","url","week"],this.defaultValidationErrors={creditCard:()=>"Must be a valid credit card number.",custom:()=>"Must return true.",email:()=>"Must be a valid email.",equals:o=>`Value must equal ${o}.`,matches:o=>`Field must match ${o}.`,maxLength:o=>`Field value can be no greater than ${o}.`,minLength:o=>`Field value can be no less than ${o}.`,phone:()=>"Field value must be a valid telephone number.",postalCode:()=>"Field value must be a valid postal code.",regex:()=>"Must match regex.",required:()=>"This field is required.",semVer:()=>"Field value must be a valid semantic version.",slug:()=>"Field value must be a valid URL slug.",strongPassword:()=>"Field value must be a valid password.",url:()=>"Field value must be a valid URL.",vat:()=>"Field value must be a valid VAT code."},e||console.warn("[validateForm] Must pass an HTML <form></form> element to validate."),this.form=e,this.setOptions(r),this.attachEventListeners()}setOptions(e={}){this.rules=e.rules||{},this.messages=e.messages||{},this.onSubmit=e.onSubmit,this.onRenderError=e.onRenderError,this.fields=this.serialize()}updateOptions(e={}){this.setOptions(e)}serialize(){if(this.form)return Object.keys(this.rules).map(r=>{let o=this.form.querySelector(`[name="${r}"]`),n=o?.type;return{listenForChanges:this.fieldsToListenToForChanges.includes(n),type:n,name:r,element:o,validations:Object.entries(this.rules[r]).map(([c,a])=>({name:c,rule:a,valid:!1})).sort((c,a)=>c.name>a.name?1:-1),errorMessages:this.messages[r]?Object.keys(this.messages[r]):{}}})}attachEventListeners(){if(this.form){let e=r=>{r.stopPropagation(),r.preventDefault(),this.validate()&&this.onSubmit&&this.onSubmit()};if(this.form.listeners?.length>0)for(let r=0;r<this.form.listeners.length;r+=1){let o=this.form.listeners[r];this.form.removeEventListener("submit",o)}this.form.addEventListener("submit",e),this.form.listeners=[...this.form.listeners||[],e]}this.fields.forEach(e=>{if(e?.element&&e?.listenForChanges){let r=()=>{dt(()=>{this.validate(e.name)},100)};e.element.removeEventListener("input",r),e.element.addEventListener("input",r),e.element.removeEventListener("change",r),e.element.addEventListener("change",r)}})}validate(e=null){if(e){let r=this.fields.find(o=>o.name===e);return this.clearExistingError(e),this.validateField(r),this.checkIfValid()}else return this.clearExistingErrors(),this.fields.forEach(r=>{this.validateField(r)}),this.checkIfValid()}checkIfValid(){return!this.fields.map(r=>r.validations.some(o=>!o.valid)).includes(!0)}validateField(e){let r=this.form.querySelector(`[name="${e.name}"]`);if(!r)return!0;let o=["checkbox","radio"].includes(e.type),n=o?null:e?.element?.value?.trim(),s=o?e?.element?.checked:null;e.validations.forEach(a=>{if(this.isValidValue(o,o?s:n,a))this.markValidationAsValid(e,a.name);else{let l=this.messages[e.name]&&this.messages[e.name][a.name];this.markValidationAsInvalid(e,a.name),this.renderError(e.element,l||this.defaultValidationErrors[a.name](a.rule,n))}});let c=e.validations.some(a=>!a.valid);return c&&(r.classList.add("error"),r.focus()),c||(r.classList.remove("error"),this.clearExistingError(e.name)),!c}markValidationAsInvalid(e,r){let n=[...e.validations].find(s=>s.name===r);n.valid=!1}markValidationAsValid(e,r){let n=[...e.validations].find(s=>s.name===r);n.valid=!0}isValidValue(e,r,o){let n=Lt[o.name];return n?n(o.rule,r,{isChecked:e}):!0}clearExistingErrors(){this.form&&this.form.querySelectorAll(".input-hint.error").forEach(e=>e.parentNode.removeChild(e))}clearExistingError(e=""){let r=document.getElementById(`error-${e}`);r&&r.parentNode.removeChild(r)}renderError(e,r=""){if(e){if(this.clearExistingError(e.name),typeof this.onRenderError=="function")return this.onRenderError(e,r);let o=document.createElement("p");o.classList.add("input-hint"),o.classList.add("error"),o.setAttribute("id",`error-${e.name}`),o.innerText=r,e.after(o)}}},Wr=(t,e)=>new Promise((r,o)=>{try{new Pt(t,e).validate()?r():o()}catch(n){console.warn(n)}}),It=Wr;var qt=(t={},e={})=>{try{return[...Object.keys(e),...Object.keys(t)].filter((o,n,s)=>s.indexOf(o)===n).reduce((o,n)=>{let s=e[n],c=t[n]||null,a=!Ce(s)&&!ve(s);return o[n]=a?s:c,o},{})}catch(r){i("component.props.compile",r)}};var ee=(t="",e={})=>{try{let r="";if(t&&M(t))return r=t,r;if(t&&u(t))return r=t(e),r;if(t&&m(t)){let o=t?.print&&(M(t?.print)||u(t?.print)),n=t?.min&&m(t?.min),s=t?.min?.width&&m(t?.min?.width),c=t?.min?.height&&m(t?.min?.height),a=t?.max&&m(t?.max),l=t?.max?.width&&m(t?.max?.width),x=t?.max?.height&&m(t?.max?.height);if(o&&(r+=`
|
|
2
2
|
@media print {
|
|
3
3
|
${typeof t?.print=="function"?t?.print(e):t.print}
|
|
4
4
|
}
|
|
5
|
-
`),n&&s){let
|
|
5
|
+
`),n&&s){let g=Object.entries(t?.min?.width);for(let b=0;b<g.length;b+=1){let[R,h]=g[b];r+=`
|
|
6
6
|
@media screen and (min-width: ${R}px) {
|
|
7
|
-
${typeof
|
|
7
|
+
${typeof h=="function"?h(e):h}
|
|
8
8
|
}
|
|
9
|
-
`}}if(n&&c){let
|
|
9
|
+
`}}if(n&&c){let g=Object.entries(t?.min?.height);for(let b=0;b<g.length;b+=1){let[R,h]=g[b];r+=`
|
|
10
10
|
@media screen and (min-height: ${R}px) {
|
|
11
|
-
${typeof
|
|
11
|
+
${typeof h=="function"?h(e):h}
|
|
12
12
|
}
|
|
13
|
-
`}}if(a&&l){let
|
|
13
|
+
`}}if(a&&l){let g=Object.entries(t?.max?.width);for(let b=0;b<g.length;b+=1){let[R,h]=g[b];r+=`
|
|
14
14
|
@media screen and (max-width: ${R}px) {
|
|
15
|
-
${typeof
|
|
15
|
+
${typeof h=="function"?h(e):h}
|
|
16
16
|
}
|
|
17
|
-
`}}if(a&&x){let
|
|
17
|
+
`}}if(a&&x){let g=Object.entries(t?.max?.height);for(let b=0;b<g.length;b+=1){let[R,h]=g[b];r+=`
|
|
18
18
|
@media screen and (max-height: ${R}px) {
|
|
19
|
-
${typeof
|
|
19
|
+
${typeof h=="function"?h(e):h}
|
|
20
20
|
}
|
|
21
|
-
`}}return r}return""}catch(r){i("component.css.compileCSS",r)}};var Ir=(t={},e=null)=>{try{let r=e(t);return r&&u(r)&&!I(r)?Object.assign({},r):{}}catch(r){i("component.state.compile.compileState",r)}},ee=(t={},e={})=>{try{return m(e)?Ir(t,e):Object.assign({},e)}catch(r){i("component.state.compile",r)}};var le={onBeforeMount:()=>null,onMount:()=>null,onBeforeUnmount:()=>null,onUpdateProps:()=>null,onRefetchData:()=>null};var Ct=(t={},e={})=>{try{return e?Object.entries({...le,...e||{}}).reduce((r={},[o,n])=>(r[o]=()=>n({...t,setState:t.setState.bind(t),...t.renderMethods||{}}),r),{}):le}catch(r){i("component.lifecycle.compile",r)}};var te=(t={},e={})=>{try{return Object.entries(e).reduce((r={},[o,n])=>(r[o]=(...s)=>n(...s,{...t,setState:t.setState.bind(t),...t.renderMethods||{}}),r),{})}catch{i("component.methods.compile")}};var me=(t={})=>{try{return{...t,query:{...t?.query||{},set:(e="",r="")=>{if(typeof window!="undefined"){let o=new URL(window.location);o.searchParams.append(e,r),window.history.pushState({},"",o)}},unset:(e="")=>{if(typeof window!="undefined"){let r=new URL(window.location);r.searchParams.delete(e),window.history.pushState({},"",r)}}},isActive:(e="")=>O(e)&&t?.route!=="*"?e===(typeof location!="undefined"?location.pathname:t.path):!1}}catch(e){i("component.url.compile",e)}};var qr=(t={},e=null)=>{try{let r=e(t);return r&&u(r)&&!I(r)?Object.assign({},r):{}}catch(r){i("component.props.compileDefaultProps.compile",r)}},Rt=(t={},e={})=>{try{return m(e)?qr(t,e):Object.assign({},e)}catch(r){i("component.props.compileDefaultProps",r)}};var At=(t={},e={})=>{try{t.options=e||{},t.id=e?._componentId||null,t.instanceId=_(8),t.ssrId=e?._ssrId||null,t.css=X(),t.data=Y(e?.dataFromSSR,e?._componentId),t.defaultProps=Rt(t,e?.defaultProps),t.props=vt(t?.defaultProps,e?.props),t.state=ee(t,e?.state),t.events=e?.events||{},t.lifecycle=Ct(t,e?.lifecycle),t.methods=te(t,e?.methods),t.wrapper=e?.wrapper||{},t.translations=e?.translations||{},t.validateForm=Ot,t.DOMNode=null,t.dom={},t.dom.virtual={},t.dom.actual={};let r=!F();if(r||(t.url=me(e?.url)),r&&window.__joystick_url__&&(t.url=me(window.__joystick_url__)),r&&e?.websockets&&m(e?.websockets)){let o=e.websockets(t),n=u(o)&&Object.entries(o);for(let s=0;s<n?.length;s+=1){let[c,a]=n[s];Q({url:`${window?.process?.env.NODE_ENV==="development"?"ws":"wss"}://${location.host}/api/_websockets/${c}`,options:a?.options||{},query:a?.query||{},events:a?.events||{}},(l={})=>{t.websockets={...t.websockets||{},[c]:l}})}}}catch(r){i("component.registerOptions",r)}};var Nr=(t="")=>{try{let[e,r]=t?.split(".");return r?window?.joystick?._internal?.queues[e][r]:window?.joystick?._internal?.queues[e]}catch(e){i("addToQueue.getQueue",e)}},G=(t="",e=null)=>{try{F()||(Nr(t)||{}).array.push({callback:e})}catch(r){i("addToQueue",r)}};var re=async(t={},e={},r={},o={})=>{try{if(o?.options?.data&&m(o.options.data)){let n=await o.options.data(t,e,r,o);return Promise.resolve(n)}return Promise.resolve()}catch(n){i("component.data.fetch",n)}};var Lt=(t={},e={},r={})=>{try{return{...t,refetch:async(o={})=>{let n=await re(Z,e,o,r);return r.data=Lt(n,e,r),window.__joystick_data__[r?.id]=n,r.render({afterRefetchDataRender:()=>{r?.lifecycle?.onRefetchData&&r?.lifecycle?.onRefetchData(r)}}),n}}}catch(o){i("component.data.compile",o)}},jt=Lt;var Dt=(t={})=>{try{if(!F()&&window.__joystick_data__&&window.__joystick_data__[t?.id]){let e=window.__joystick_data__[t?.id]||{},r=window.__joystick_req__||{};return jt(e,r,t)}return t?.data||{}}catch(e){i("component.loadDataFromWindow",e)}};var qt=Cr(_t());var Pt=(t={},e="",r="id")=>{try{let o=t&&t.id;if(u(t)&&o){let n=Object.keys(t);for(let s=0;s<n.length;s+=1){let c=n[s],a=t[c];if(c===r&&a===e)return t;if(c==="children"&&Array.isArray(a))for(let l=0;l<a.length;l+=1){let x=a[l],y=Pt(x,e,r);if(y!==null)return y}}}return null}catch(o){i("component.findComponentInTreeByField",o)}},L=Pt;var It=(t="",e={},r=null)=>{let o=L(r||window.joystick._internal.tree,t,"instanceId");o&&(o.children=[...o.children||[],e])};var Vr=(t={},e={},r=null)=>{try{let o=z(t,{includeActual:!0,existingChildren:r});return t.dom=o,t.setDOMNodeOnInstance(),e.renderedComponent=t,o.html.wrapped}catch(o){i("component.renderMethods.component.renderForClient",o)}},Ur=(t={})=>{try{return t.renderToHTML({ssrTree:t.parent.ssrTree,translations:t.parent.translations,walkingTreeForSSR:t?.parent?.walkingTreeForSSR,dataFromSSR:t.parent?.dataFromSSR}).wrapped}catch(e){i("component.renderMethods.component.renderToHTMLForSSR",e)}},Hr=(t={})=>{try{return t.parent.ssrTree.dataFunctions.push(async()=>{try{let e=await t.options.data(t.parent.options.api,t.parent.options.req);return t.data=e||{},{componentId:t.id,ssrId:t.ssrId,data:e}}catch(e){return{componentId:t.id,ssrId:t.ssrId,data:null,error:e}}}),t.renderToHTML({ssrTree:t?.parent?.ssrTree,translations:t?.parent?.translations,walkingTreeForSSR:t?.parent?.walkingTreeForSSR,dataFromSSR:t?.parent?.dataFromSSR})}catch(e){i("component.renderMethods.component.collectDataFunctionsForSSR",e)}},zr=(t={})=>{try{let e={id:t.id,instanceId:t.instanceId,instance:t,children:[]};It(t.parent.instanceId,e,t.parent&&t.parent.ssrTree||null)}catch(e){i("component.renderMethods.component.handleAddComponentToParent",e)}},Br=(t={},e={})=>{try{!t.renderedComponent&&e.options&&e.options.lifecycle&&(e.options.lifecycle.onBeforeMount&&G("lifecycle.onBeforeMount",()=>{e.options.lifecycle.onBeforeMount(e)}),!t.renderedComponent&&e.options.lifecycle.onMount&&G("lifecycle.onMount",()=>{e.options.lifecycle.onMount(e)}))}catch(r){i("component.renderMethods.component.handleLifecycle",r)}},Zr=(t={},e={},r={})=>{try{!e.walkingTreeForSSR&&t?.options?.lifecycle?.onUpdateProps&&(0,qt.diff)(e?.existingPropsMap,r)?.length>0&&G("lifecycle.onUpdateProps",()=>{let n=e?.existingPropsMap&&e?.existingPropsMap[t.id];t.options.lifecycle.onUpdateProps(n||{},r,t)})}catch(o){i("component.renderMethods.component.handleOnChangeProps",o)}},Gr=function(){return function(e=null,r={},o={}){let n=e({props:r,url:o.url,translations:o.translations,api:o.options.api,req:o.options.req,dataFromSSR:o?.dataFromSSR,parent:o}),s=o?.existingStateMap[n.id]||{},c=o.children[n.id]||[],a=s[c?.length];return n.state=a?.state||n.state,o.children[n.id]=[...o.children[n.id]||[],n],n.parent=o,Zr(n,o,r),G("lifecycle.onMount",()=>{n.setDOMNodeOnInstance()}),Br(this,n),n.parent&&zr(n),n.options.data&&n.parent.walkingTreeForSSR&&n.parent.ssrTree.dataFunctions?Hr(n):n.parent&&n.parent.ssrTree?Ur(n):Vr(n,this,a?.children)}},Wr=function(e,r){try{let o=this;return new Gr().bind({})(e,r,o)}catch(o){i("component.renderMethods.component",o)}},ue=Wr;var Kr=function(e=[],r=null){try{return m(r)&&e&&Array.isArray(e)?e.map((o,n)=>r(o,n)).join(""):""}catch(o){i("component.renderMethods.each",o)}},pe=Kr;var Jr=function(e="",r={}){try{let o=F()?this.translations:window.__joystick_i18n__;if(!o||!o[e])return"";let n=Object.entries(r);return n.length>0?n.reduce((s,[c,a])=>s.replace(`{{${c}}}`,a),o[e]):o[e]}catch(o){i("component.renderMethods.i18n",o)}},fe=Jr;var Qr=function(e=!1,r=""){try{return this?.renderingHTMLWithDataForSSR||e?`<when>${r.trim()}</when>`:"<when> </when>"}catch(o){i("component.renderMethods.when",o)}},he=Qr;var Nt={c:ue,component:ue,e:pe,each:pe,i:fe,i18n:fe,w:he,when:he};var Vt=(t={},e={})=>{try{return Object.entries(Nt).reduce((r,[o,n])=>(r[o]=n.bind({...t,...e}),r),{})}catch(r){i("component.renderMethods.compile",r)}};var Ut=(t={})=>{try{return Object.entries(t)?.reduce((e={},[r,o]={})=>(e[r]=o?.map((n={})=>({state:n?.state,children:Ut(n?.children)})),e),{})}catch(e){i("component.render.getExistingStateMap.buildMapForChildren",e)}},Ht=(t={})=>{try{return Ut(t)}catch(e){i("component.render.getExistingStateMap",e)}};var zt=new RegExp(/\<\!\-\-(?:.|\n|\r)*?-->/g),Yr=new RegExp(/\n/g);var Xr=(t="")=>{try{return(t.match(zt)||[]).forEach(r=>{t=t.replace(r,"")}),t}catch(e){i("component.render.sanitizeHTML.removeCommentedCode",e)}},Bt=(t="")=>{try{let e=`${t}`;return e=Xr(e),e}catch(e){i("component.render.sanitizeHTML",e)}};var Zt=(t={},e="")=>{try{let{wrapper:r=null,ssrId:o=null,id:n=null,instanceId:s=null}=t;return`<div ${r?.id?`id="${r.id}" `:""}${r?.classList?`class="${r.classList?.join(" ")}" `:""}js-ssrId="${o}" js-c="${n}" js-i="${s}">${e}</div>`}catch(r){i("component.render.wrapHTML",r)}};var Gt=(t={},e=[])=>{try{let r=[...e],o=Object.entries(t);for(let n=0;n<o?.length;n+=1){let[s,c]=o[n];for(let a=0;a<c?.length;a+=1){let l=c[a];Object.entries(l?.timers)?.length>0&&r.push(...Object.values(l?.timers)),Object.entries(l?.children)?.length>0&&Gt(l?.children,r)}}if(r?.length>0)for(let n=0;n<r?.length;n+=1)clearTimeout(r[n])}catch(r){i("component.render.clearTimersOnChildren",r)}},Wt=Gt;var ne=(t={},e={})=>{try{e?.dataFromSSR&&(t.data=Y(e.dataFromSSR,t.id)||{}),Wt(t?.children);let r=Ht(e?.existingChildren||t?.children)||{};t.children={},t.renderMethods=Vt({...t,existingStateMap:r,translations:e?.translations||t.translations||{},ssrTree:e?.ssrTree,walkingTreeForSSR:e?.walkingTreeForSSR,renderingHTMLWithDataForSSR:e?.renderingHTMLWithDataForSSR,dataFromSSR:e?.dataFromSSR}),t.methods=te(t,t.options.methods);let o=t.options.render({...t||{},setState:t.setState.bind(t),...t.renderMethods||{}}),n=Bt(o),s=Zt(t,n);return{unwrapped:n,wrapped:s}}catch(r){i("component.render.toHTML",r)}};var eo=(t={})=>{try{return Object.values(t).reduce((e={},r)=>(e[r.name]=r.value,e),{})}catch(e){i("component.virtualDOM.build.parseAttributeMap",e)}},Kt=(t={})=>{try{return t.tagName==="WHEN"?[].flatMap.call(t?.childNodes,e=>e?.tagName==="WHEN"?Kt(e):we(e)):we(t)}catch(e){i("component.virtualDOM.build.flattenWhenTags",e)}},we=(t={})=>{try{let e=t&&t.tagName&&t.tagName.toLowerCase()||"text",r={tagName:e,attributes:eo(t.attributes),children:[].flatMap.call(t.childNodes,o=>Kt(o))};return e==="text"&&(r=t.textContent),r}catch(e){i("component.virtualDOM.build",e)}},W=we;var to=(t="")=>{try{let e=document.createElement("div");return e.innerHTML=t,e?.childNodes[0]}catch(e){i("component.virtualDOM.build.convertHTMLToDOM",e)}},Jt=(t="")=>{try{let e=to(t);return W(e)}catch(e){i("component.virtualDOM.build",e)}};var Qt=(t="")=>{try{return document.createElement("div").setAttribute(t,"Test"),!0}catch{return!1}};var ro=(t={})=>{try{let e=document.createElement(t.tagName),r=Object.entries(t.attributes);for(let o=0;o<r.length;o+=1){let[n,s]=r[o];Qt(n)&&e.setAttribute(n,s)}for(let o=0;o<t?.children?.length;o+=1){let n=t?.children[o];if(n){let s=Yt(n);e.appendChild(s)}}return e}catch(e){i("component.virtualDOM.renderTreeToDOM.renderElement",e)}},Yt=(t=null)=>{try{return O(t)?document.createTextNode(t):ro(t)}catch(e){i("component.virtualDOM.renderTreeToDOM",e)}},B=Yt;var z=(t={},e={})=>{try{let r=ne(t,{existingChildren:e?.existingChildren}),o=Jt(r.wrapped,t),n=e.includeActual&&o?B(o):null;return{html:r,virtual:o,actual:n}}catch(r){i("component.render.getUpdatedDOM",r)}};var Xt=(t={},e={})=>{try{let r=z(t,{includeActual:!0,existingChildren:e?.existingChildren});return t.dom=r,r.actual}catch(r){i("component.render.forMount",r)}};var oo=(t={},e={})=>{let r=[];for(let[o,n]of Object.entries(e))r.push(s=>(s&&s.setAttribute&&s.setAttribute(o,n),s));for(let o in t)o in e||r.push(n=>(n&&n.removeAttribute&&n.removeAttribute(o),n));return o=>{for(let n of r)n&&typeof n=="function"&&n(o)}},ie=oo;var no=(t=[],e=[])=>{let r=[],o=Math.max(t.length,e.length);for(let n=0;n<o;n+=1){let s=t[n],c=e[n];r.push([s,c])}return r},er=no;var io=(t=[],e)=>{t.forEach(r=>{r&&typeof r=="function"&&r(e)})},so=(t=[])=>{t.forEach(([e,r])=>{e&&typeof e=="function"&&e(r)})},ao=(t=[],e=[])=>{let r=[];return e.slice(t.length).forEach(n=>{let s=c=>{let a=B(n);return c.appendChild(a),c};r.push(s)}),r},co=(t=[],e=[])=>{let r=[];return t.forEach((o,n)=>{let s=ae(o,e[n]);r.push(s)}),r},lo=(t=[],e=[])=>{let r=co(t,e),o=ao(t,e);return n=>{if(n){let s=er(r,n.childNodes);so(s),io(o,n)}return n}},se=lo;var tr={select:(t,e)=>r=>{let o=r.value;r.replaceChildren(),ie(t.attributes,e.attributes)(r),se([],e.children)(r);let n=r.querySelector(`option[value="${o}"]`);if(n&&(r.value=o),!n){let s=r.querySelector("option");r.value=s?.value||""}return r}};var ye=(t,e)=>r=>{let o=t?B(t):null;return r&&r.replaceWith(o),o},mo=()=>t=>{t&&t.remove()},uo=(t=void 0,e=void 0)=>t===void 0||e===void 0?mo():typeof t=="string"||typeof e=="string"?ye(e,t):t.tagName!==e.tagName?ye(e):e.tagName==="select"?tr.select(t,e):["pre","code"].includes(e.tagName)?ye(e,t):n=>(ie(t.attributes,e.attributes)(n),se(t.children,e.children)(n),n),ae=uo;var po=(t="")=>{try{let[e,r]=t?.split(".");return r?window?.joystick?._internal?.queues[e][r]:window?.joystick?._internal?.queues[e]}catch(e){i("processQueue.getQueue",e)}},q=(t="",e=null)=>{try{F()||(po(t)||{}).process(e)}catch(r){i("processQueue",r)}};var rr=(t="",e=null)=>{let r=L(e||window.joystick._internal.tree,t,"instanceId");r&&(r.children=[])};var or=(t="",e={},r=null)=>{let o=L(r||window.joystick._internal.tree,t,"instanceId");o&&(o.instanceId=e?.instanceId,o.instance=e)};var nr=(t={},e="",r={})=>{for(let o=0;o<t?.children?.length;o+=1){let n=t?.children[o];if(u(n)&&n.attributes&&n.attributes["js-i"]&&n.attributes["js-i"]===e){t.children[o]=r;break}u(n)&&nr(n,e,r)}},ir=nr;var sr=(t={})=>{try{return Object.entries(t).map(([e,r])=>{let[o,...n]=e.split(" ");return{type:o.toLowerCase(),selector:n.join(" "),handler:r}})}catch(e){i("component.events.serialize",e)}};var ar=(t={},e={},r=[])=>{try{let o=Object.keys(t?.events||{})?.length>0?sr(t?.events):[];for(let n=0;n<o?.length;n+=1){let s=o[n];r.push({...s,instance:t,elements:document.querySelectorAll(`body [js-i="${t.instanceId}"] ${s?.selector}`),handler:function(a){a?.target?.target&&(a.target=a?.target?.target),Object.defineProperty(a,"target",{value:a.composedPath()[0]}),s.handler(a,{...t||{},setState:t?.setState.bind(t),...e||{}})}})}if(t?.children){let n=Object.entries(t?.children)?.flatMap(([s,c])=>c);for(let s=0;s<n?.length;s+=1){let c=n[s];ar(c,e,r)}}return r}catch(o){i("component.events.registerListenersFix.getListeners",o)}},fo=(t={},e={})=>{try{let r=ar(t,e,[]);console.log("GETTING CALLED",r);let o=r?.flatMap((n={})=>[].flatMap.call(n?.elements||[],s=>{let{elements:c=[],...a}=n||{};return{...a,element:s}}));for(let n=0;n<o?.length;n+=1){let{instance:s,element:c,elementSelector:a,type:l,handler:x}=o[n];console.log({element:c,type:l,handler:x}),c.addEventListener(l,x),s._eventListeners=[...s?._eventListeners||[],{instance:s,element:c,elementSelector:a,type:l,handler:x}]}}catch(r){i("component.events.registerListenersFix",r)}},ce=fo;var cr=(t={})=>{try{let e=t?._eventListeners||[];if(t?.children){let o=(Object.values(t?.children||{})?.reduce((n=[],s=[])=>[...n,...s],[])).flatMap((n={})=>cr(n));e=[...e,...o]}return e}catch(e){i("component.events.unregisterListenersFix.getListeners",e)}},ho=(t={})=>{try{let e=cr(t);for(let r=0;r<e?.length;r+=1){let{instance:o,element:n,type:s,handler:c}=e[r];n.removeEventListener(s,c),o._eventListeners=o._eventListeners?.splice(r,1)}}catch(e){i("component.events.unregisterListenersFix",e)}},dr=ho;var lr=class{constructor(e={}){this.parent=e?.parent||null,this.onUpdateChildComponent=this.handleUpdateChildComponentInVDOM,this.updateVirtualDOM=this.handleUpdateVirtualDOM,this.timers={},this.children={},et(e),At(this,e),this.data=Dt(this)}setDOMNodeOnInstance(){this.DOMNode=document.querySelector(`body [js-i="${this.instanceId}"]`)}async handleFetchData(e={},r={},o={},n=this){let s=await re(e,r,o,n);return this.data=s,s}handleGetInstance(){return this}handleUpdateVirtualDOM(){if(this.DOMNode){let r=W(this.DOMNode);this.dom.virtual=r}let e=this.parent?L(window.joystick._internal.tree,this.parent?.instanceId,"instanceId"):null;e?.instance&&e.instance.updateVirtualDOM()}onBeforeRender(){if(!F())return{instanceId:this.instanceId}}render(e={}){if(e?.mounting)return Xt(this,e);let r=this.onBeforeRender();dr(this),rr(this.instanceId);let o=z(this,{}),n=ae(this.dom.virtual,o.virtual);n&&m(n)&&q("lifecycle.onBeforeMount",()=>{let s=n(this.DOMNode);this.dom.actual=s,this.dom.virtual=o.virtual,ce(this,this.renderMethods),this.setDOMNodeOnInstance(),q("domNodes",()=>{q("lifecycle.onMount",()=>{this.onAfterRender(r,e)})})})}renderToHTML(e={}){return ne(this,e)}onAfterRender(e={},r={}){F()||(or(e.instanceId,this),window.joystick._internal.css.update(),q("lifecycle.onUpdateProps"),r?.afterSetStateRender&&m(r.afterSetStateRender)&&r.afterSetStateRender(),r?.afterRefetchDataRender&&m(r.afterRefetchDataRender)&&r.afterRefetchDataRender(),this.parent&&this.parent.onUpdateChildComponent(this.id,this.instanceId))}setState(e={},r=null){this.state=ee(this,{...this.state||{},...e}),this.render({afterSetStateRender:()=>{r&&m(r)&&r()}})}setTimeout(e=null,r=0){e&&(this.timers[_()]=window.setTimeout(e,r))}setInterval(e=null,r=0){e&&(this.timers[_()]=window.setInterval(e,r))}handleUpdateChildComponentInVDOM(e="",r=""){let o=L(window.joystick._internal.tree,this.instanceId,"instanceId"),n=L(window.joystick._internal.tree,r,"instanceId");if(n?.instance?.DOMNode){let s=W(n?.instance?.DOMNode);ir(o?.instance?.dom?.virtual,n?.instanceId,s)}}},mr=lr;var ur=(t={})=>{try{return(e={})=>new mr({...t,props:e?.props,url:e?.url,translations:e?.translations,api:e?.api,req:e?.req,parent:e?.parent})}catch(e){i("component",e)}};var pr=(t={})=>{try{window.joystick._internal.tree={id:t?.id||null,instanceId:t?.instanceId||null,instance:t,children:[]}}catch(e){i("mount.initializeJoystickComponentTree",e)}};var fr=(t={},e=null)=>{try{return t.innerHTML="",t.appendChild(e),e}catch(r){i("mount.appendToDOM",r)}};var hr=(t=null,e={},r=null)=>{try{m(t)||i("mount","Component to mount must be a function."),u(e)||i("mount","props must be an object."),Oe(r)||i("mount","target must be a DOM node.");let o=t({props:e});pr(o);let n=o.render({mounting:!0,existingChildren:window.__joystick_childrenBeforeHMRUpdate__||null});n&&(n.setAttribute("js-ssrId",o.ssrId),n.setAttribute("js-c",o.id),n.setAttribute("js-i",o.instanceId)),o.lifecycle.onBeforeMount(),q("lifecycle.onBeforeMount"),fr(r,n),o.setDOMNodeOnInstance(),window.joystick._internal.css.update(),ce(o,o.renderMethods),o.lifecycle.onMount(),q("lifecycle.onMount")}catch(o){i("mount",o)}};var wr=class{constructor(e=[]){this.array=[...e],this.array.push=function(){Array.prototype.push.apply(this,arguments)}}async process(e=null){if(this.array.length>0){let r=this.array.shift();r&&r.callback&&(await r.callback(),this.process(e))}else e&&e()}},N=wr;var wo=new RegExp(/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g),yo=new RegExp(/([^\r\n,{}]+)(,(?=[^}]*{)|\s*{)/g),go=(t,e)=>(e||"").replace(wo,()=>"").replace(yo,r=>["@",": "].some(o=>r?.includes(o))?r:`[js-c="${t}"] ${r.trim()}`)?.trim(),yr=(t={},e=[])=>{if(t.instance&&t.instance.options&&t.instance.options.css){let r=t.instance.id,o=t.instance.options.css,n=X(o,t.instance),s=go(r,n);e.push(s)}if(t.children&&t.children.length>0){let r=t?.children?.length||0;for(;r--;)yr(t.children[r],e)}return e},gr=yr;var xr=()=>{try{let t=document.head.querySelector("style[js-styles]"),r=gr(window.joystick?._internal?.tree).reverse().join("").trim();if(t?.innerText===r)return;if(t&&(t.innerHTML=r),!t){let o=document.createElement("style");o.setAttribute("js-styles",""),o.innerHTML=r,document.head.appendChild(o)}}catch(t){i("css.update",t)}};var xo=Me,bo=Re,$o=Z.get,Eo=Ae,Fo=Le,ko=Z.set,Mo=_e,br={_external:{},_internal:{css:{update:xr},queues:{domNodes:new N([]),eventListeners:new N([]),lifecycle:{onBeforeMount:new N([]),onMount:new N([]),onUpdateProps:new N([])},render:new N([])},tree:{},eventListeners:[]},accounts:xo,cache:bo,component:ur,get:$o,html:Eo,id:_,mount:hr,renderComponentToHTML:Fo,set:ko,upload:Mo,timers:{}};Pe(br);var ml=br;export{xo as accounts,bo as cache,ml as default,$o as get,Eo as html,Fo as renderComponentToHTML,ko as set,Mo as upload};
|
|
21
|
+
`}}return r}return""}catch(r){i("component.css.compileCSS",r)}};var Kr=(t={},e=null)=>{try{let r=e(t);return r&&m(r)&&!q(r)?Object.assign({},r):{}}catch(r){i("component.state.compile.compileState",r)}},te=(t={},e={})=>{try{return u(e)?Kr(t,e):Object.assign({},e)}catch(r){i("component.state.compile",r)}};var me={onBeforeMount:()=>null,onMount:()=>null,onBeforeUnmount:()=>null,onUpdateProps:()=>null,onRefetchData:()=>null};var Vt=(t={},e={})=>{try{return e?Object.entries({...me,...e||{}}).reduce((r={},[o,n])=>(r[o]=()=>n({...t,setState:t.setState.bind(t),...t.renderMethods||{}}),r),{}):me}catch(r){i("component.lifecycle.compile",r)}};var re=(t={},e={})=>{try{return Object.entries(e).reduce((r={},[o,n])=>(r[o]=(...s)=>(y(`ui.${t?.options?.test?.name||f()}.methods.${o}`,[...s,{...t,setState:t.setState.bind(t),...t.renderMethods||{}}]),n(...s,{...t,setState:t.setState.bind(t),...t.renderMethods||{}})),r),{})}catch{i("component.methods.compile")}};var pe=(t={})=>{try{return{...t,query:{...t?.query||{},set:(e="",r="")=>{if(typeof window!="undefined"){let o=new URL(window.location);o.searchParams.append(e,r),window.history.pushState({},"",o)}},unset:(e="")=>{if(typeof window!="undefined"){let r=new URL(window.location);r.searchParams.delete(e),window.history.pushState({},"",r)}}},isActive:(e="")=>M(e)&&t?.route!=="*"?e===(typeof location!="undefined"?location.pathname:t.path):!1}}catch(e){i("component.url.compile",e)}};var Jr=(t={},e=null)=>{try{let r=e(t);return r&&m(r)&&!q(r)?Object.assign({},r):{}}catch(r){i("component.props.compileDefaultProps.compile",r)}},Nt=(t={},e={})=>{try{return u(e)?Jr(t,e):Object.assign({},e)}catch(r){i("component.props.compileDefaultProps",r)}};var Ht=(t={},e={})=>{try{t.options=e||{},t.id=e?._componentId||null,t.instanceId=f(8),t.ssrId=e?._ssrId||null,t.css=ee(),t.data=X(e?.dataFromSSR,e?._componentId),t.defaultProps=Nt(t,e?.defaultProps),t.props=qt(t?.defaultProps,e?.props),t.state=te(t,e?.state),t.events=e?.events||{},t.lifecycle=Vt(t,e?.lifecycle),t.methods=re(t,e?.methods),t.wrapper=e?.wrapper||{},t.translations=e?.translations||{},t.validateForm=It,t.DOMNode=null,t.dom={},t.dom.virtual={},t.dom.actual={};let r=!S();if(r||(t.url=pe(e?.url)),r&&window.__joystick_url__&&(t.url=pe(window.__joystick_url__)),r&&window.__joystick_user__&&(t.user=window.__joystick_user__),r&&e?.websockets&&u(e?.websockets)){let o=e.websockets(t),n=m(o)&&Object.entries(o);for(let s=0;s<n?.length;s+=1){let[c,a]=n[s];Y({test:t?.test,url:`${window?.process?.env.NODE_ENV==="development"?"ws":"wss"}://${location.host}/api/_websockets/${c}`,options:a?.options||{},query:a?.query||{},events:a?.events||{}},(l={})=>{t.websockets={...t.websockets||{},[c]:l}})}}}catch(r){i("component.registerOptions",r)}};var Qr=(t="")=>{try{let[e,r]=t?.split(".");return r?window?.joystick?._internal?.queues[e][r]:window?.joystick?._internal?.queues[e]}catch(e){i("addToQueue.getQueue",e)}},W=(t="",e=null)=>{try{S()||(Qr(t)||{}).array.push({callback:e})}catch(r){i("addToQueue",r)}};var oe=async(t={},e={},r={},o={})=>{try{if(o?.options?.data&&u(o.options.data)){let n=await o.options.data(t,e,r,o);return Promise.resolve(n)}return Promise.resolve()}catch(n){i("component.data.fetch",n)}};var Ut=(t={},e={},r={})=>{try{return{...t,refetch:async(o={})=>{y(`ui.${r?.options?.test?.name||f()}.data.refetch`,[o]);let n=await oe(G,e,o,r);return r.data=Ut(n,e,r),window.__joystick_data__[r?.id]&&(window.__joystick_data__[r?.id]=n),window?.__joystick_test__||r.render({afterRefetchDataRender:()=>{r?.lifecycle?.onRefetchData&&r?.lifecycle?.onRefetchData(r)}}),r.data}}}catch(o){i("component.data.compile",o)}},zt=Ut;var Bt=(t={})=>{try{if(!S()){let e=window.__joystick_data__&&window.__joystick_data__[t?.id]||{},r=window.__joystick_req__||{};return zt(e,r,t)}return t?.data||{}}catch(e){i("component.loadDataFromWindow",e)}};var Kt=Nr(Zt());var Gt=(t={},e="",r="id")=>{try{let o=t&&t.id;if(m(t)&&o){let n=Object.keys(t);for(let s=0;s<n.length;s+=1){let c=n[s],a=t[c];if(c===r&&a===e)return t;if(c==="children"&&Array.isArray(a))for(let l=0;l<a.length;l+=1){let x=a[l],g=Gt(x,e,r);if(g!==null)return g}}}return null}catch(o){i("component.findComponentInTreeByField",o)}},D=Gt;var Wt=(t="",e={},r=null)=>{let o=D(r||window.joystick._internal.tree,t,"instanceId");o&&(o.children=[...o.children||[],e])};var Yr=(t={},e={},r=null)=>{try{let o=B(t,{includeActual:!0,existingChildren:r});return t.dom=o,t.setDOMNodeOnInstance(),e.renderedComponent=t,o.html.wrapped}catch(o){i("component.renderMethods.component.renderForClient",o)}},Xr=(t={})=>{try{return t.renderToHTML({ssrTree:t.parent.ssrTree,translations:t.parent.translations,walkingTreeForSSR:t?.parent?.walkingTreeForSSR,dataFromSSR:t.parent?.dataFromSSR}).wrapped}catch(e){i("component.renderMethods.component.renderToHTMLForSSR",e)}},eo=(t={})=>{try{return t.parent.ssrTree.dataFunctions.push(async()=>{try{let e=await t.options.data(t.parent.options.api,t.parent.options.req);return t.data=e||{},{componentId:t.id,ssrId:t.ssrId,data:e}}catch(e){return{componentId:t.id,ssrId:t.ssrId,data:null,error:e}}}),t.renderToHTML({ssrTree:t?.parent?.ssrTree,translations:t?.parent?.translations,walkingTreeForSSR:t?.parent?.walkingTreeForSSR,dataFromSSR:t?.parent?.dataFromSSR})}catch(e){i("component.renderMethods.component.collectDataFunctionsForSSR",e)}},to=(t={})=>{try{let e={id:t.id,instanceId:t.instanceId,instance:t,children:[]};Wt(t.parent.instanceId,e,t.parent&&t.parent.ssrTree||null)}catch(e){i("component.renderMethods.component.handleAddComponentToParent",e)}},ro=(t={},e={})=>{try{!t.renderedComponent&&e.options&&e.options.lifecycle&&(e.options.lifecycle.onBeforeMount&&W("lifecycle.onBeforeMount",()=>{e.options.lifecycle.onBeforeMount(e),y(`ui.${e?.options?.test?.name||f()}.lifecycle.onBeforeMount`,[e])}),!t.renderedComponent&&e.options.lifecycle.onMount&&W("lifecycle.onMount",()=>{e.options.lifecycle.onMount(e),y(`ui.${e?.options?.test?.name||f()}.lifecycle.onMount`,[e])}))}catch(r){i("component.renderMethods.component.handleLifecycle",r)}},oo=(t={},e={},r={})=>{try{!e.walkingTreeForSSR&&t?.options?.lifecycle?.onUpdateProps&&(0,Kt.diff)(e?.existingPropsMap,r)?.length>0&&W("lifecycle.onUpdateProps",()=>{let n=e?.existingPropsMap&&e?.existingPropsMap[t.id];t.options.lifecycle.onUpdateProps(n||{},r,t),y(`ui.${t?.options?.test?.name||f()}.lifecycle.onBeforeMount`,[n||{},r,t])})}catch(o){i("component.renderMethods.component.handleOnChangeProps",o)}},no=function(){return function(e=null,r={},o={}){let n=e({props:r,url:o.url,translations:o.translations,api:o.options.api,req:o.options.req,dataFromSSR:o?.dataFromSSR,parent:o}),s=o?.existingStateMap[n.id]||{},c=o.children[n.id]||[],a=s[c?.length];return n.state=a?.state||n.state,o.children[n.id]=[...o.children[n.id]||[],n],n.parent=o,oo(n,o,r),W("lifecycle.onMount",()=>{n.setDOMNodeOnInstance()}),ro(this,n),n.parent&&to(n),n.options.data&&n.parent.walkingTreeForSSR&&n.parent.ssrTree.dataFunctions?eo(n):n.parent&&n.parent.ssrTree?Xr(n):Yr(n,this,a?.children)}},io=function(e,r){try{let o=this;return new no().bind({})(e,r,o)}catch(o){i("component.renderMethods.component",o)}},fe=io;var so=function(e=[],r=null){try{return u(r)&&e&&Array.isArray(e)?e.map((o,n)=>r(o,n)).join(""):""}catch(o){i("component.renderMethods.each",o)}},he=so;var ao=(t="",e=[])=>{try{return e.reduce((r,[o,n])=>r.replace(`{{${o}}}`,n),t)}catch(r){i("component.renderMethods.i18n.replacePlaceholdersInString",r)}},we=(t="",e=[])=>{try{let r=typeof t=="string",o=Array.isArray(t),n=typeof t=="object"&&!o;if(r)return ao(t,e);if(o)return t?.map(s=>we(s,e));if(n)return Object.entries(t)?.reduce((s={},[c,a])=>(s[c]=we(a,e),s),{})}catch(r){i("component.renderMethods.i18n.handleTranslationReplacement",r)}},co=(t="",e={})=>{try{return t?.split(".").reduce((r,o)=>r[o],e)}catch(r){i("component.renderMethods.i18n.getTranslationAtPath",r)}},lo=function(t="",e={}){try{let r=S()?this.translations:window.__joystick_i18n__,n=t?.includes(".")?co(t,r):r[t];if(!r||!n)return"";let s=Object.entries(e);return we(n,s)}catch(r){i("component.renderMethods.i18n",r)}},ye=lo;var uo=function(e=!1,r=""){try{return this?.renderingHTMLWithDataForSSR||e?`<when>${r.trim()}</when>`:"<when> </when>"}catch(o){i("component.renderMethods.when",o)}},ge=uo;var Jt={c:fe,component:fe,e:he,each:he,i:ye,i18n:ye,w:ge,when:ge};var Qt=(t={},e={})=>{try{return Object.entries(Jt).reduce((r,[o,n])=>(r[o]=n.bind({...t,...e}),r),{})}catch(r){i("component.renderMethods.compile",r)}};var Yt=(t={})=>{try{return Object.entries(t)?.reduce((e={},[r,o]={})=>(e[r]=o?.map((n={})=>({state:n?.state,children:Yt(n?.children)})),e),{})}catch(e){i("component.render.getExistingStateMap.buildMapForChildren",e)}},Xt=(t={})=>{try{return Yt(t)}catch(e){i("component.render.getExistingStateMap",e)}};var er=new RegExp(/\<\!\-\-(?:.|\n|\r)*?-->/g),mo=new RegExp(/\n/g);var po=(t="")=>{try{return(t.match(er)||[]).forEach(r=>{t=t.replace(r,"")}),t}catch(e){i("component.render.sanitizeHTML.removeCommentedCode",e)}},tr=(t="")=>{try{let e=`${t}`;return e=po(e),e}catch(e){i("component.render.sanitizeHTML",e)}};var rr=(t={},e="")=>{try{let{wrapper:r=null,id:o=null,instanceId:n=null}=t;return`<div ${r?.id?`id="${r.id}" `:""}${r?.classList?`class="${r.classList?.join(" ")}" `:""} js-c="${o}" js-i="${n}">${e}</div>`}catch(r){i("component.render.wrapHTML",r)}};var or=(t={},e=[])=>{try{let r=[...e],o=Object.entries(t);for(let n=0;n<o?.length;n+=1){let[s,c]=o[n];for(let a=0;a<c?.length;a+=1){let l=c[a];Object.entries(l?.timers)?.length>0&&r.push(...Object.values(l?.timers)),Object.entries(l?.children)?.length>0&&or(l?.children,r)}}if(r?.length>0)for(let n=0;n<r?.length;n+=1)clearTimeout(r[n])}catch(r){i("component.render.clearTimersOnChildren",r)}},nr=or;var ie=(t={},e={})=>{try{e?.dataFromSSR&&(t.data=X(e.dataFromSSR,t.id)||{}),nr(t?.children);let r=Xt(e?.existingChildren||t?.children)||{};t.children={},t.renderMethods=Qt({...t,existingStateMap:r,translations:e?.translations||t.translations||{},ssrTree:e?.ssrTree,walkingTreeForSSR:e?.walkingTreeForSSR,renderingHTMLWithDataForSSR:e?.renderingHTMLWithDataForSSR,dataFromSSR:e?.dataFromSSR}),t.methods=re(t,t.options.methods);let o=t.options.render({...t||{},setState:t.setState.bind(t),...t.renderMethods||{}}),n=tr(o),s=rr(t,n);return{unwrapped:n,wrapped:s}}catch(r){i("component.render.toHTML",r)}};var fo=(t={})=>{try{return Object.values(t).reduce((e={},r)=>(e[r.name]=r.value,e),{})}catch(e){i("component.virtualDOM.build.parseAttributeMap",e)}},ir=(t={})=>{try{return t.tagName==="WHEN"?[].flatMap.call(t?.childNodes,e=>e?.tagName==="WHEN"?ir(e):xe(e)):xe(t)}catch(e){i("component.virtualDOM.build.flattenWhenTags",e)}},xe=(t={})=>{try{let e=t&&t.tagName&&t.tagName.toLowerCase()||"text",r={tagName:e,attributes:fo(t.attributes),children:[].flatMap.call(t.childNodes,o=>ir(o))};return e==="text"&&(r=t.textContent),r}catch(e){i("component.virtualDOM.build",e)}},K=xe;var ho=(t="")=>{try{let e=document.createElement("div");return e.innerHTML=t,e?.childNodes[0]}catch(e){i("component.virtualDOM.build.convertHTMLToDOM",e)}},sr=(t="")=>{try{let e=ho(t);return K(e)}catch(e){i("component.virtualDOM.build",e)}};var ar=(t="")=>{try{return document.createElement("div").setAttribute(t,"Test"),!0}catch{return!1}};var wo=(t={})=>{try{let e=document.createElement(t.tagName),r=Object.entries(t.attributes);for(let o=0;o<r.length;o+=1){let[n,s]=r[o];ar(n)&&e.setAttribute(n,s)}for(let o=0;o<t?.children?.length;o+=1){let n=t?.children[o];if(n){let s=cr(n);e.appendChild(s)}}return e}catch(e){i("component.virtualDOM.renderTreeToDOM.renderElement",e)}},cr=(t=null)=>{try{return M(t)?document.createTextNode(t):wo(t)}catch(e){i("component.virtualDOM.renderTreeToDOM",e)}},Z=cr;var B=(t={},e={})=>{try{let r=ie(t,{existingChildren:e?.existingChildren}),o=sr(r.wrapped,t),n=e.includeActual&&o?Z(o):null;return{html:r,virtual:o,actual:n}}catch(r){i("component.render.getUpdatedDOM",r)}};var dr=(t={},e={})=>{try{let r=B(t,{includeActual:!0,existingChildren:e?.existingChildren});return t.dom=r,r.actual}catch(r){i("component.render.forMount",r)}};var yo=(t={},e={})=>{let r=[];for(let[o,n]of Object.entries(e))r.push(s=>(s&&s.setAttribute&&s.setAttribute(o,n),s));for(let o in t)o in e||r.push(n=>(n&&n.removeAttribute&&n.removeAttribute(o),n));return o=>{for(let n of r)n&&typeof n=="function"&&n(o)}},se=yo;var go=(t=[],e=[])=>{let r=[],o=Math.max(t.length,e.length);for(let n=0;n<o;n+=1){let s=t[n],c=e[n];r.push([s,c])}return r},lr=go;var xo=(t=[],e)=>{t.forEach(r=>{r&&typeof r=="function"&&r(e)})},bo=(t=[])=>{t.forEach(([e,r])=>{e&&typeof e=="function"&&e(r)})},$o=(t=[],e=[])=>{let r=[];return e.slice(t.length).forEach(n=>{let s=c=>{let a=Z(n);return c.appendChild(a),c};r.push(s)}),r},ko=(t=[],e=[])=>{let r=[];return t.forEach((o,n)=>{let s=ce(o,e[n]);r.push(s)}),r},Eo=(t=[],e=[])=>{let r=ko(t,e),o=$o(t,e);return n=>{if(n){let s=lr(r,n.childNodes);bo(s),xo(o,n)}return n}},ae=Eo;var ur={select:(t,e)=>r=>{let o=r.value;r.replaceChildren(),se(t.attributes,e.attributes)(r),ae([],e.children)(r);let n=r.querySelector(`option[value="${o}"]`);if(n&&(r.value=o),!n){let s=r.querySelector("option");r.value=s?.value||""}return r}};var be=(t,e)=>r=>{let o=t?Z(t):null;return r&&r.replaceWith(o),o},Fo=()=>t=>{t&&t.remove()},Mo=(t=void 0,e=void 0)=>t===void 0||e===void 0?Fo():typeof t=="string"||typeof e=="string"?be(e,t):t.tagName!==e.tagName?be(e):e.tagName==="select"?ur.select(t,e):["pre","code"].includes(e.tagName)?be(e,t):n=>(se(t.attributes,e.attributes)(n),ae(t.children,e.children)(n),n),ce=Mo;var So=(t="")=>{try{let[e,r]=t?.split(".");return r?window?.joystick?._internal?.queues[e][r]:window?.joystick?._internal?.queues[e]}catch(e){i("processQueue.getQueue",e)}},V=(t="",e=null)=>{try{S()||(So(t)||{}).process(e)}catch(r){i("processQueue",r)}};var mr=(t="",e=null)=>{let r=D(e||window.joystick._internal.tree,t,"instanceId");r&&(r.children=[])};var pr=(t="",e={},r=null)=>{let o=D(r||window.joystick._internal.tree,t,"instanceId");o&&(o.instanceId=e?.instanceId,o.instance=e)};var fr=(t={},e="",r={})=>{for(let o=0;o<t?.children?.length;o+=1){let n=t?.children[o];if(m(n)&&n.attributes&&n.attributes["js-i"]&&n.attributes["js-i"]===e){t.children[o]=r;break}m(n)&&fr(n,e,r)}},hr=fr;var wr=(t={})=>{try{return Object.entries(t).map(([e,r])=>{let[o,...n]=e.split(" ");return{type:o.toLowerCase(),selector:n.join(" "),handler:r}})}catch(e){i("component.events.serialize",e)}};var yr=(t={},e={},r=[])=>{try{let o=Object.keys(t?.events||{})?.length>0?wr(t?.events):[];for(let n=0;n<o?.length;n+=1){let s=o[n];r.push({...s,instance:t,elements:document.querySelectorAll(`body [js-i="${t.instanceId}"] ${s?.selector}`),handler:function(a){s.handler(a,{...t||{},setState:t?.setState.bind(t),...e||{}}),y(`ui.${t?.options?.test?.name||f()}.events.${s.type}.selector_${s?.selector}`,[a,{...t||{},setState:t?.setState.bind(t),...e||{}}])}})}if(t?.children){let n=Object.entries(t?.children)?.flatMap(([s,c])=>c);for(let s=0;s<n?.length;s+=1){let c=n[s];yr(c,e,r)}}return r}catch(o){i("component.eve!nts.registerListenersFix.getListeners",o)}},To=(t={},e={})=>{try{let o=yr(t,e,[])?.flatMap((n={})=>[].flatMap.call(n?.elements||[],s=>{let{elements:c=[],...a}=n||{};return{...a,element:s}}));for(let n=0;n<o?.length;n+=1){let{instance:s,element:c,elementSelector:a,type:l,handler:x}=o[n];c.addEventListener(l,x),s._eventListeners=[...s?._eventListeners||[],{instance:s,element:c,elementSelector:a,type:l,handler:x}]}}catch(r){i("component.events.registerListenersFix",r)}},de=To;var gr=(t={})=>{try{let e=t?._eventListeners||[];if(t?.children){let o=(Object.values(t?.children||{})?.reduce((n=[],s=[])=>[...n,...s],[])).flatMap((n={})=>gr(n));e=[...e,...o]}return e}catch(e){i("component.events.unregisterListenersFix.getListeners",e)}},_o=(t={})=>{try{let e=gr(t);for(let r=0;r<e?.length;r+=1){let{instance:o,element:n,type:s,handler:c}=e[r];n.removeEventListener(s,c),o._eventListeners=o._eventListeners?.splice(r,1)}}catch(e){i("component.events.unregisterListenersFix",e)}},xr=_o;var br=class{constructor(e={}){this.parent=e?.parent||null,this.onUpdateChildComponent=this.handleUpdateChildComponentInVDOM,this.updateVirtualDOM=this.handleUpdateVirtualDOM,this.timers={},this.children={},ct(e),Ht(this,e),this.data=Bt(this)}setDOMNodeOnInstance(){this.DOMNode=document.querySelector(`body [js-i="${this.instanceId}"]`)}async handleFetchData(e={},r={},o={},n=this){let s=await oe(e,r,o,n);return this.data=s,s}handleGetInstance(){return this}handleUpdateVirtualDOM(){if(this.DOMNode){let r=K(this.DOMNode);this.dom.virtual=r}let e=this.parent?D(window.joystick._internal.tree,this.parent?.instanceId,"instanceId"):null;e?.instance&&e.instance.updateVirtualDOM()}onBeforeRender(){if(!S())return{instanceId:this.instanceId}}render(e={}){if(y(`ui.${this?.options?.test?.name||f()}.render`,[e]),e?.mounting)return dr(this,e);let r=this.onBeforeRender();xr(this),mr(this.instanceId);let o=B(this,{}),n=ce(this.dom.virtual,o.virtual);n&&u(n)&&V("lifecycle.onBeforeMount",()=>{let s=n(this.DOMNode);this.dom.actual=s,this.dom.virtual=o.virtual,de(this,this.renderMethods),this.setDOMNodeOnInstance(),V("domNodes",()=>{V("lifecycle.onMount",()=>{this.onAfterRender(r,e)})})})}renderToHTML(e={}){return ie(this,e)}onAfterRender(e={},r={}){S()||(pr(e.instanceId,this),window.joystick._internal.css.update(),V("lifecycle.onUpdateProps"),r?.afterSetStateRender&&u(r.afterSetStateRender)&&r.afterSetStateRender(),r?.afterRefetchDataRender&&u(r.afterRefetchDataRender)&&r.afterRefetchDataRender(),this.parent&&this.parent.onUpdateChildComponent(this.id,this.instanceId))}setState(e={},r=null){y(`ui.${this?.options?.test?.name||f()}.setState`,[e,r]),this.state=te(this,{...this.state||{},...e}),this.render({afterSetStateRender:()=>{r&&u(r)&&r()}})}setTimeout(e=null,r=0){e&&(this.timers[f()]=window.setTimeout(e,r))}setInterval(e=null,r=0){e&&(this.timers[f()]=window.setInterval(e,r))}handleUpdateChildComponentInVDOM(e="",r=""){let o=D(window.joystick._internal.tree,this.instanceId,"instanceId"),n=D(window.joystick._internal.tree,r,"instanceId");if(n?.instance?.DOMNode){let s=K(n?.instance?.DOMNode);hr(o?.instance?.dom?.virtual,n?.instanceId,s)}}},$r=br;var kr=(t={})=>{try{return(e={})=>new $r({...t,props:e?.props,url:e?.url,translations:e?.translations,api:e?.api,req:e?.req,parent:e?.parent})}catch(e){i("component",e)}};var Er=(t={})=>{try{window.joystick._internal.tree={id:t?.id||null,instanceId:t?.instanceId||null,instance:t,children:[]}}catch(e){i("mount.initializeJoystickComponentTree",e)}};var Fr=(t={},e=null)=>{try{return t.innerHTML="",t.appendChild(e),e}catch(r){i("mount.appendToDOM",r)}};var Mr=(t=null,e={},r=null)=>{try{u(t)||i("mount","Component to mount must be a function."),m(e)||i("mount","props must be an object."),Oe(r)||i("mount","target must be a DOM node.");let o=t({props:e});Er(o);let n=o.render({mounting:!0,existingChildren:window.__joystick_childrenBeforeHMRUpdate__||null});return n&&(n.setAttribute("js-c",o.id),n.setAttribute("js-i",o.instanceId)),o.lifecycle.onBeforeMount(),V("lifecycle.onBeforeMount"),Fr(r,n),o.setDOMNodeOnInstance(),window.joystick._internal.css.update(),de(o,o.renderMethods),o.lifecycle.onMount(),V("lifecycle.onMount"),o}catch(o){i("mount",o)}};var Sr=class{constructor(e=[]){this.array=[...e],this.array.push=function(){Array.prototype.push.apply(this,arguments)}}async process(e=null){if(this.array.length>0){let r=this.array.shift();r&&r.callback&&(await r.callback(),this.process(e))}else e&&e()}},N=Sr;var Co=new RegExp(/\/\*[^*]*\*+([^/*][^*]*\*+)*\//g),vo=new RegExp(/([^\r\n,{}]+)(,(?=[^}]*{)|\s*{)/g),Oo=(t,e)=>(e||"").replace(Co,()=>"").replace(vo,r=>["@",": "].some(o=>r?.includes(o))?r:`[js-c="${t}"] ${r.trim()}`)?.trim(),Tr=(t={},e=[])=>{if(t.instance&&t.instance.options&&t.instance.options.css){let r=t.instance.id,o=t.instance.options.css,n=ee(o,t.instance),s=Oo(r,n);e.push(s)}if(t.children&&t.children.length>0){let r=t?.children?.length||0;for(;r--;)Tr(t.children[r],e)}return e},_r=Tr;var Cr=()=>{try{let t=document.head.querySelector("style[js-styles]"),r=_r(window.joystick?._internal?.tree).reverse().join("").trim();if(t?.innerText===r)return;if(t&&(t.innerHTML=r),!t){let o=document.createElement("style");o.setAttribute("js-styles",""),o.innerHTML=r,document.head.appendChild(o)}}catch(t){i("css.update",t)}};var jo=_e,Ro=Ae,Ao=G.get,Do={get:De,track:ue},Lo=Le,Po=Pe,Io=G.set,ou=qe,nu=ue,qo=He,vr=()=>typeof window!="undefined"?window.__joystick_env__:typeof process!="undefined"?"production":null,Or={_external:{},_internal:{css:{update:Cr},queues:{domNodes:new N([]),eventListeners:new N([]),lifecycle:{onBeforeMount:new N([]),onMount:new N([]),onUpdateProps:new N([])},render:new N([])},tree:{},eventListeners:[]},accounts:jo,cache:Ro,component:kr,env:{development:vr()==="development",test:vr()==="test"},external:Do,get:Ao,html:Lo,id:f,mount:Mr,renderComponentToHTML:Po,set:Io,upload:qo,timers:{}};Ue(Or);var iu=Or;export{jo as accounts,Ro as cache,iu as default,Do as external,Ao as get,Lo as html,Po as renderComponentToHTML,Io as set,ou as test,nu as trackExternal,qo as upload};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var n=(e={})=>Object.entries(e).map(([r,t])=>`${r}=${t}`)?.join("; ");export{n as default};
|
package/dist/mount/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var
|
|
1
|
+
var n=(e="",t={})=>{throw new Error(`[joystick${e?`.${e}`:""}] ${t.message||t.reason||t}`)};var m=e=>{try{return!0}catch(t){n("types.isDOM",t)}};var d=e=>{try{return typeof e=="function"}catch(t){n("types.isFunction",t)}};var f=e=>{try{return!!(e&&typeof e=="object"&&!Array.isArray(e))}catch(t){n("types.isObject",t)}};var y=(e={})=>{try{window.joystick._internal.tree={id:e?.id||null,instanceId:e?.instanceId||null,instance:e,children:[]}}catch(t){n("mount.initializeJoystickComponentTree",t)}};var w=()=>typeof window=="undefined";var I=(e="")=>{try{let[t,o]=e?.split(".");return o?window?.joystick?._internal?.queues[t][o]:window?.joystick?._internal?.queues[t]}catch(t){n("processQueue.getQueue",t)}},p=(e="",t=null)=>{try{w()||(I(e)||{}).process(t)}catch(o){n("processQueue",o)}};var h=(e={},t=null)=>{try{return e.innerHTML="",e.appendChild(t),t}catch(o){n("mount.appendToDOM",o)}};var x=(e={})=>{try{return Object.entries(e).map(([t,o])=>{let[r,...i]=t.split(" ");return{type:r.toLowerCase(),selector:i.join(" "),handler:o}})}catch(t){n("component.events.serialize",t)}};var b="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ01234567890".split(""),g=(e=16)=>{let t="",o=0;for(;o<e;)t+=b[Math.floor(Math.random()*(b.length-1))],o+=1;return t};var k=(e="",t=[])=>{typeof window!="undefined"&&!!window.__joystick_test__&&(window.test={...window.test||{},functionCalls:{...window?.test?.functionCalls||{},[e]:[...window?.test?.functionCalls&&window?.test?.functionCalls[e]||[],{calledAt:new Date().toISOString(),args:t}]}})};var F=(e={},t={},o=[])=>{try{let r=Object.keys(e?.events||{})?.length>0?x(e?.events):[];for(let i=0;i<r?.length;i+=1){let s=r[i];o.push({...s,instance:e,elements:document.querySelectorAll(`body [js-i="${e.instanceId}"] ${s?.selector}`),handler:function(l){s.handler(l,{...e||{},setState:e?.setState.bind(e),...t||{}}),k(`ui.${e?.options?.test?.name||g()}.events.${s.type}.selector_${s?.selector}`,[l,{...e||{},setState:e?.setState.bind(e),...t||{}}])}})}if(e?.children){let i=Object.entries(e?.children)?.flatMap(([s,c])=>c);for(let s=0;s<i?.length;s+=1){let c=i[s];F(c,t,o)}}return o}catch(r){n("component.eve!nts.registerListenersFix.getListeners",r)}},_=(e={},t={})=>{try{let r=F(e,t,[])?.flatMap((i={})=>[].flatMap.call(i?.elements||[],s=>{let{elements:c=[],...l}=i||{};return{...l,element:s}}));for(let i=0;i<r?.length;i+=1){let{instance:s,element:c,elementSelector:l,type:u,handler:a}=r[i];c.addEventListener(u,a),s._eventListeners=[...s?._eventListeners||[],{instance:s,element:c,elementSelector:l,type:u,handler:a}]}}catch(o){n("component.events.registerListenersFix",o)}},j=_;var Y=(e=null,t={},o=null)=>{try{d(e)||n("mount","Component to mount must be a function."),f(t)||n("mount","props must be an object."),m(o)||n("mount","target must be a DOM node.");let r=e({props:t});y(r);let i=r.render({mounting:!0,existingChildren:window.__joystick_childrenBeforeHMRUpdate__||null});return i&&(i.setAttribute("js-c",r.id),i.setAttribute("js-i",r.instanceId)),r.lifecycle.onBeforeMount(),p("lifecycle.onBeforeMount"),h(o,i),r.setDOMNodeOnInstance(),window.joystick._internal.css.update(),j(r,r.renderMethods),r.lifecycle.onMount(),p("lifecycle.onMount"),r}catch(r){n("mount",r)}};export{Y as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var o=(t=128,n="test.txt",e="text/plain")=>{let l=t instanceof Blob;return new File(l?t:new Blob(new Uint8Array(t||128),{type:e}),n,{type:e})};export{o as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var o=(t=128,e="test.txt",n="text/plain")=>{let l=t instanceof Blob;return new File(l?t:new Blob(new Uint8Array(t||128),{type:n}),e,{type:n})};var i=(t="",e=[])=>{typeof window!="undefined"&&!!window.__joystick_test__&&(window.test={...window.test||{},functionCalls:{...window?.test?.functionCalls||{},[t]:[...window?.test?.functionCalls&&window?.test?.functionCalls[t]||[],{calledAt:new Date().toISOString(),args:e}]}})};var c={utils:{createFile:o,trackFunctionCall:i}};export{c as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var i=(t="",n=[])=>{typeof window!="undefined"&&!!window.__joystick_test__&&(window.test={...window.test||{},functionCalls:{...window?.test?.functionCalls||{},[t]:[...window?.test?.functionCalls&&window?.test?.functionCalls[t]||[],{calledAt:new Date().toISOString(),args:n}]}})};export{i as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var o=(e="",t={})=>{typeof window!="undefined"&&(joystick._external[e]={...joystick._external[e]||{},...t})};export{o as default};
|
package/dist/upload/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
var g="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ01234567890".split(""),
|
|
1
|
+
var g="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ01234567890".split(""),c=(e=16)=>{let t="",r=0;for(;r<e;)t+=g[Math.floor(Math.random()*(g.length-1))],r+=1;return t};var w=(e="",t={})=>{throw new Error(`[joystick${e?`.${e}`:""}] ${t.message||t.reason||t}`)};var m=(e="",t=[])=>{try{console.error(`${e} failed with the following errors:`),t.forEach(r=>{console.log(r.message),r.stack&&console.log(r.stack)})}catch(r){w(e,r)}};var i=(e="",t=[])=>{typeof window!="undefined"&&!!window.__joystick_test__&&(window.test={...window.test||{},functionCalls:{...window?.test?.functionCalls||{},[e]:[...window?.test?.functionCalls&&window?.test?.functionCalls[e]||[],{calledAt:new Date().toISOString(),args:t}]}})};var d=null,u=0,k=(e={},t=null)=>{try{if(window?.__joystick_test__)return t();let r=e?.url;e?.query&&(r=`${r}?${new URLSearchParams(e.query).toString()}`);let l=new WebSocket(r);d&&(clearInterval(d),d=null);let n={client:l,send:(o={})=>(i(`ui.websockets.${e?.test?.name||c()}.send`,[o]),l.send(JSON.stringify(o)))};return l.addEventListener("open",()=>{e?.options?.logging&&console.log(`[joystick.websockets] Connected to ${e?.url}`),e?.events?.onOpen&&(e.events.onOpen(n),i(`ui.websockets.${e?.test?.name||c()}.onOpen`,[n])),u=0}),l.addEventListener("message",o=>{o?.data&&e?.events?.onMessage&&(e.events.onMessage(JSON.parse(o.data||{}),n),i(`ui.websockets.${e?.test?.name||c()}.onMessage`,[o.data||{},n]))}),l.addEventListener("close",o=>{e?.options?.logging&&console.log(`[joystick.websockets] Disconnected from ${e?.url}`),e?.events?.onClose&&(e.events.onClose(o?.code,o?.reason,n),i(`ui.websockets.${e?.test?.name||c()}.onClose`,[o.data||{},n])),l=null;let s=[1e3,1001].includes(o?.code);e?.options?.autoReconnect&&!d&&!s&&(d=setInterval(()=>{l=null,u<(e?.options?.reconnectAttempts||12)?(k(e,t),e?.options?.logging&&console.log(`[joystick.websockets] Attempting to reconnect (${u+1}/12)...`),u+=1):clearInterval(d)},e?.options?.reconnectDelayInSeconds*1e3||5e3))}),t&&t(n),n}catch(r){w("websockets.client",r)}},h=k;var P=(e="",t={})=>{try{if(window?.__joystick_test__){i(`ui.upload.${e}`,[e,t]);return}return new Promise((r,l)=>{let n=c(),o=0;h({url:`${window?.process?.env.NODE_ENV==="development"?"ws":"wss"}://${location.host}/api/_websockets/uploaders`,options:{logging:!1,autoReconnect:!0,reconnectAttempts:12,reconnectDelayInSeconds:5},query:{id:n},events:{onMessage:(s={})=>{s?.type==="PROGRESS"&&t?.onProgress&&o<100&&o!==s?.progress&&(o=s?.progress,t.onProgress(s?.progress,s?.provider))}}},()=>{let s;t?.files?.length>0&&(s=new FormData,Array.from(t?.files).forEach(f=>{s.append("files",f,f.name)})),fetch(`${window.location.origin}/api/_uploaders/${e}`,{method:"POST",headers:{"x-joystick-upload-id":n,"x-joystick-upload-input":JSON.stringify(t?.input||{})},body:s}).then(async f=>{let a=await f.json();console.log(a),a&&a.errors?(m("upload",a.errors),l({errors:a.errors})):r(a?.uploads)})})})}catch(r){w("upload",r)}};export{P as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
var
|
|
1
|
+
var d=(e="",t={})=>{throw new Error(`[joystick${e?`.${e}`:""}] ${t.message||t.reason||t}`)};var c=(e="",t=[])=>{typeof window!="undefined"&&!!window.__joystick_test__&&(window.test={...window.test||{},functionCalls:{...window?.test?.functionCalls||{},[e]:[...window?.test?.functionCalls&&window?.test?.functionCalls[e]||[],{calledAt:new Date().toISOString(),args:t}]}})};var w="abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ01234567890".split(""),a=(e=16)=>{let t="",s=0;for(;s<e;)t+=w[Math.floor(Math.random()*(w.length-1))],s+=1;return t};var o=null,i=0,u=(e={},t=null)=>{try{if(window?.__joystick_test__)return t();let s=e?.url;e?.query&&(s=`${s}?${new URLSearchParams(e.query).toString()}`);let l=new WebSocket(s);o&&(clearInterval(o),o=null);let r={client:l,send:(n={})=>(c(`ui.websockets.${e?.test?.name||a()}.send`,[n]),l.send(JSON.stringify(n)))};return l.addEventListener("open",()=>{e?.options?.logging&&console.log(`[joystick.websockets] Connected to ${e?.url}`),e?.events?.onOpen&&(e.events.onOpen(r),c(`ui.websockets.${e?.test?.name||a()}.onOpen`,[r])),i=0}),l.addEventListener("message",n=>{n?.data&&e?.events?.onMessage&&(e.events.onMessage(JSON.parse(n.data||{}),r),c(`ui.websockets.${e?.test?.name||a()}.onMessage`,[n.data||{},r]))}),l.addEventListener("close",n=>{e?.options?.logging&&console.log(`[joystick.websockets] Disconnected from ${e?.url}`),e?.events?.onClose&&(e.events.onClose(n?.code,n?.reason,r),c(`ui.websockets.${e?.test?.name||a()}.onClose`,[n.data||{},r])),l=null;let f=[1e3,1001].includes(n?.code);e?.options?.autoReconnect&&!o&&!f&&(o=setInterval(()=>{l=null,i<(e?.options?.reconnectAttempts||12)?(u(e,t),e?.options?.logging&&console.log(`[joystick.websockets] Attempting to reconnect (${i+1}/12)...`),i+=1):clearInterval(o)},e?.options?.reconnectDelayInSeconds*1e3||5e3))}),t&&t(r),r}catch(s){d("websockets.client",s)}},C=u;export{C as default};
|
package/package.json
CHANGED