@rat.md/laika 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/laika.cjs CHANGED
@@ -1,2 +1,2 @@
1
- "use strict";var e=require("vue");const t=e.reactive({color:"#DE3163",active:!1,percent:0,timestamp:0});let n=null;function r(){function e(e=!1){n&&(window.clearInterval(n),n=null),(t.active||e)&&(t.percent=100,window.setTimeout(()=>{t.active=!1,t.percent=0},150))}return{state:t,start:function(){t.active=!0,t.percent=10,t.timestamp=Date.now(),n&&window.clearInterval(n),n=window.setInterval(()=>{t.active&&t.percent<90&&(t.percent+=Math.max(1,Math.round(.08*(90-t.percent))))},200)},done:e,fail:function(){e(!0)}}}const a=e.defineComponent({name:"LaikaProgressBar",setup(t){const n=r();return()=>n.state.active?e.h("div",{class:"laika-progress-bar",style:{top:0,left:0,width:`${n.state.percent}%`,height:"0.2rem",position:"fixed",backgroundColor:`var(--laika-progress-bar, ${n.state.color})`,transition:"width 120ms linear",zIndex:99999}}):void 0}}),o=Symbol("laika:october"),i=Symbol("laika:router");let s=null,l=!1;function u(e,t,n){return e.dispatchEvent(new CustomEvent(t,{bubbles:!0,cancelable:!0,detail:n}))}function c(e){const t={};return new FormData(e).forEach((e,n)=>{const r=n.endsWith("[]"),a=r?n.slice(0,-2):n;t[a]=a in t?Array.isArray(t[a])?[...t[a],e]:[t[a],e]:r?[e]:e}),t}function d(e){if(!e?.trim())return{};try{return JSON.parse(e)}catch{const t={},n=/(?:['"]([^'"]+)['"]|([A-Za-z0-9_.-]+))\s*:\s*(?:['"]([^'"]*)['"]|([^,}\s]+))/g;let r;for(;null!==(r=n.exec(e));){const e=r[1]??r[2],n=r[3]??r[4]??"";e&&(t[e]="true"===n||"false"!==n&&n)}return t}}function p(e,t){e.toggleAttribute("data-request-loading",t),e.setAttribute("aria-busy",t?"true":"false"),(e instanceof HTMLButtonElement||e instanceof HTMLInputElement)&&(e.disabled=t)}async function f(e,t){const n=e.getAttribute("data-request")??t?.getAttribute("data-request");if(!n||!s||e.hasAttribute("data-request-loading"))return;const r=function(e){if(!e?.trim())return{};const t={},n=/(?:['"]([^'"]+)['"]|([A-Za-z0-9_./:-]+))\s*:\s*['"]([^'"]+)['"]/g;let r;for(;null!==(r=n.exec(e));){const e=r[1]??r[2],n=r[3];e&&n&&(t[e]=n)}return t}(e.getAttribute("data-request-update")??t?.getAttribute("data-request-update")??null),a={...t?c(t):{},...d(t?.getAttribute("data-request-data")??null),...d(e.getAttribute("data-request-data"))};if(u(e,"ajax:before",{handler:n,data:a})){p(e,!0);try{const o=await s(n,{data:a,flash:e.hasAttribute("data-request-flash")||Boolean(t?.hasAttribute("data-request-flash")),partials:Object.keys(r),preserveState:!0});!function(e,t){for(const[n,r]of Object.entries(t)){const t=e.partials[n];if(void 0!==t)for(const e of Array.from(document.querySelectorAll(r)))e.innerHTML=t}}(o,r),u(e,o.ok?"ajax:success":"ajax:error",o)}catch(t){u(e,"ajax:error",{handler:n,error:t})}finally{p(e,!1),u(e,"ajax:complete",{handler:n})}}}function m(e){const t=e.target instanceof HTMLFormElement?e.target:null;if(!t?.matches("[data-request]"))return;e.preventDefault();f(e.submitter instanceof HTMLElement?e.submitter:t,t)}function h(e){const t=e.target instanceof Element?e.target:null,n=t?.closest("[data-request]");!n||n instanceof HTMLFormElement||(n instanceof HTMLButtonElement||n instanceof HTMLInputElement)&&n.form?.matches("[data-request]")||(e.preventDefault(),f(n,n.closest("form")??void 0))}const g=new Set(["info","error","success","warning"]);function y(e){return"string"==typeof e&&g.has(e)?e:"info"}function v(e,t,n){if("string"!=typeof n||!n.trim())return;const r=e[t],a=Array.isArray(r)?r:r?[r]:[],o=n.trim();a.includes(o)||(e[t]=[...a,o])}function w(e,t){return t?/^(https?:)?\/\//.test(t)||t.startsWith("#")||t.startsWith("mailto:")||t.startsWith("tel:")||t.startsWith("sms:")?t:`${e.replace(/\/+$/,"")}/${t.replace(/^\/+/,"")}`:e}function b(e){const t=new URLSearchParams;for(const[n,r]of Object.entries(e))null!=r&&t.set(n,String(r));const n=t.toString();return n?`?${n}`:""}function k(e,t){return e.replace(/:([A-Za-z0-9_]+\*?)/g,(e,n)=>{const r=n.endsWith("*");n=n.endsWith("*")?n.slice(0,-1):n;const a=t[n];if(delete t[n],null==a)return"";const o=encodeURIComponent(String(a));return r?o.replace(/%2F/g,"/"):o})}function A(t,n,r){const a=e.reactive({});function o(){const e=t();if(!e)throw new Error("October Functions: runtime not ready");return e}function i(){const e=o(),t=e.payload?.october;if(!t)throw new Error("October Functions: missing october payload.");return t}function u(e){return w(i().baseUrl,e)}function c(e){const t=o(),n=t.payload?.site?.locale||"",r=t.payload?.october?.fallbackLocale||"",a=t.payload?.october?.strings?.[n]||{},i=t.payload?.october?.strings?.[r]||{};return e in a?a[e]:e in i?i[e]:null}function d(e,t){if(!t)return e;for(const[n,r]of Object.entries(t)){if(null==r)continue;const t=String(n),a=String(r);e=e.replaceAll(`:${t}`,a);const o=t.charAt(0).toUpperCase()+t.slice(1);e=(e=e.replaceAll(`:${o}`,a.charAt(0).toUpperCase()+a.slice(1))).replaceAll(`:${t.toUpperCase()}`,a.toUpperCase())}return e}function p(e,t,n){let r=c(e);if(null===r)return e;return d(function(e,t){const n=e.split("|").map(e=>e.trim()).filter(Boolean);for(const e of n){const n=e.match(/^\{(\d+)\}\s*(.*)$/);if(n){if(t===Number(n[1]))return n[2];continue}const r=e.match(/^\[(\d+|\-?\*),(\d+|\-?\*)\]\s*(.*)$/);if(r){const e=r[1],n=r[2],a=r[3],o="*"===e?-1/0:Number(e),i="*"===n?1/0:Number(n);if(t>=o&&t<=i)return a;continue}}return 1===n.length?n[0]:2===n.length?1===t?n[0]:n[1]:n[n.length-1]}(r,t),{count:t,...n})}async function f(e,t={}){if(!/^(?:\w+::)?on[A-Z][\w+]*$/.test(e))throw new Error(`October AJAX handler name is invalid: ${e}`);const a=t.only??["token","page.props","page.flash","components","shared"],o={"X-AJAX-HANDLER":e,"X-AJAX-FLASH":!1===t.flash?"0":"1"};t.partials?.length&&(o["X-AJAX-PARTIALS"]=t.partials.join("&"));const i=await n.raw(window.location.pathname+window.location.search,{method:"post",data:t.data??{},headers:o,only:a,preserveState:t.preserveState??!0}),s=await i.json(),l=s.__ajax??{},u=s.__laika;if(delete s.__ajax,delete s.__laika,u&&!1!==t.flash){const e=function(e){const t={};for(const n of e.ops??[])"flash"===n.op&&v(t,y(n.level??n.severity),n.text??n.message);const n=Object.values(e.invalid??{}).flatMap(e=>Array.isArray(e)?e:[e]);for(const e of n)v(t,"error",e);return 0===Object.keys(t).length&&"string"==typeof e.message&&v(t,y(e.severity),e.message),t}(l);Object.keys(e).length>0&&u.page&&(u.page.flash={...u.page.flash??{},...e})}u&&await r(u,a);const c={};for(const e of l.ops??[])"partial"===e.op&&"string"==typeof e.name?c[e.name]=String(e.html??""):"dispatch"===e.op&&"string"==typeof e.event?window.dispatchEvent(new CustomEvent(e.event,{detail:e.detail})):"redirect"===e.op&&e.url?window.location.assign(String(e.url)):"reload"===e.op&&window.location.reload();if(!i.ok&&!("ok"in l))throw new Error(`October AJAX request failed (${i.status}).`);return{ok:l.ok??i.ok,status:i.status,data:s,invalid:l.invalid??{},message:l.message??null,severity:l.severity??"info",partials:c}}async function g(e,t){const r=await n.raw(u("/x-laika/filter"),{method:"post",data:{filter:e,payload:t}});if(!r.ok)throw new Error(`October filter failed: ${e}. (${r.status})`);const a=await r.json();if("success"!==a.status)throw new Error(`October filter failed: ${e}. (${r.status}) - (${a.message||"An unknown error occurred."})`);return a.result.content}const A={app:u,theme:function(e){return Array.isArray(e)?e.map(e=>w(i().themeBaseUrl,e??"")):w(i().themeBaseUrl,e)},page:function(e=null,t={},n=!0){const r=i(),a=r.pages??{},s={...r.currentParams??{}};if("boolean"==typeof t&&(n=t,t={}),t&&"object"==typeof t&&!Array.isArray(t)||(t={}),!e){const e=o().payload?.page?.url??"/",n=b(t);return n?e+(e.includes("?")?`&${n.slice(1)}`:n):e}if("string"!=typeof e)return;const l=a[e=e.toLowerCase()];if(!l?.pattern)return;const c=n?{...s,...t}:{...t},d={...t},p=k(l.pattern,c);return k(l.pattern,d),u(p)+b(d)},link:function(e){if(e.startsWith("http"))return e;{const t=o();return u(`/x-laika/resolve?path=${btoa(e)}&theme=${t.payload?.page?.theme||"0"}`)}},media:function(e){const t=i(),n=("/"+String(e??"").replace(/\\/g,"/").replace(/^\/+/,"")).split("/").map(e=>encodeURIComponent(e)).join("/").replace(/%2F/g,"/");return w(t.mediaBaseUrl,n)},resize:function(e,t=null,n=null,r={}){const a=i(),o=a.resizer?.basePath??"/resize",s={src:e};null!=t&&(s.w=t),null!=n&&(s.h=n);for(const[e,t]of Object.entries(r??{}))s[`o_${e}`]=t;return u(o+b(s))},currency:function(e,t={}){const n="number"==typeof e?e:Number(String(e).replace(",","."));if(!Number.isFinite(n))return String(e);const{locale:r="de-AT",currency:a="EUR",style:o="currency",minimumFractionDigits:i,maximumFractionDigits:s}=t;return new Intl.NumberFormat(r,{style:o,currency:a,minimumFractionDigits:i,maximumFractionDigits:s}).format(n)},trans:function(e,t){let n=c(e);return null===n?e:d(n,t)},transChoice:p,placeholder:function(e,t=null){const n=o();return e in(n.payload?.page?.placeholders||{})?(n.payload?.page?.placeholders||{})[e]:e in a?a[e]:t},hasPlaceholder:function(e){const t=o();return e in(t.payload?.page?.placeholders||{})||e in a},setPlaceholder:function(e,t){a[e]=t},request:f,renderPartial:async function(e,t={}){const n=await f("onLaikaRenderPartial",{data:{name:e,parameters:t},only:["token"],preserveState:!0});if(!n.ok)throw new Error(n.message??`Unable to render partial: ${e}`);return n.data.html??""},content:async function(e,t={}){const n=await f("onLaikaRenderContent",{data:{name:e,parameters:t},only:["token"],preserveState:!0});if(!n.ok)throw new Error(n.message??`Unable to render content: ${e}`);return n.data.html??""},filter:function(e,t){return g(e,{content:t})},htmlLimit:function(e,t=100,n="..."){if(t<=0)return n;const r=document.createElement("template");r.innerHTML=e;const a=document.createElement("div");let o=t,i=!1;const s=e=>{if(i)return null;if(e.nodeType===Node.TEXT_NODE){const t=Array.from(e.textContent??"");return t.length<=o?(o-=t.length,document.createTextNode(t.join(""))):(i=!0,document.createTextNode(t.slice(0,o).join("")+n))}if(e.nodeType!==Node.ELEMENT_NODE)return e.cloneNode(!1);const t=e.cloneNode(!1);for(const n of Array.from(e.childNodes)){const e=s(n);if(e&&t.appendChild(e),i)break}return t};for(const e of Array.from(r.content.childNodes)){const t=s(e);if(t&&a.appendChild(t),i)break}return a.innerHTML},md:e=>g("md",{content:e}),mdSafe:e=>g("md_safe",{content:e}),mdClean:e=>g("md_clean",{content:e}),mdIndent:e=>g("md_indent",{content:e}),trans_choice:p,md_safe:e=>g("md_safe",{content:e}),md_clean:e=>g("md_clean",{content:e}),md_indent:e=>g("md_indent",{content:e})};return s=A.request,l||"undefined"==typeof document||(l=!0,document.addEventListener("submit",m),document.addEventListener("click",h)),A}function L(){const t=e.inject(o,null);if(!t)throw new Error("useOctober(): OctoberAPI not provided");return t}function S(e){return e?.default??e}function E(e,t){return t.split(".").reduce((e,t)=>null==e?void 0:e[t],e)}function P(e,t,n){const r=t.split(".");if(!r.length)return e;const a=Array.isArray(e)?e.slice():{...e??{}},o=r[r.length-1];let i=a,s=e??{};for(let e=0;e<r.length-1;e++){const t=r[e],n=s?.[t];let a;a=Array.isArray(n)?n.slice():n&&"object"==typeof n?{...n}:{},i[t]=a,i=a,s=n}return i[o]=n,a}function O(e,t){function n(t,n={}){const r=function(){const t=e();if(!t)throw new Error("Laika Router: runtime not ready");return t}(),a=(n.method??"GET").toUpperCase(),o=n.data??void 0,i=new Headers({Accept:"application/json","X-Requested-With":"XMLHttpRequest","X-Laika":"1",...n.headers??{}}),s=r.payload?.token;if(s){const[e,t]=s.split("|");i.set("X-CSRF-TOKEN",e),i.set("X-Laika-Token",t)}return n.force&&i.set("X-Laika-Force","1"),n.require?.length&&i.set("X-Laika-Require",n.require.join(",")),n.only?.length&&i.set("X-Laika-Only",n.only.join(",")),n.preserveState&&i.set("X-Laika-Preserve-State","1"),"GET"!==a&&i.set("Content-Type","application/json"),new Request(t,{method:a.toUpperCase(),headers:i,body:"GET"!==a?JSON.stringify(o??{}):null,credentials:"same-origin"})}async function r(e,r={}){const a=n(e,r);let o;try{await t.onBefore(a),o=await fetch(a),"GET"===a.method&&(r.replace?history.replaceState({},"",e):history.pushState({},"",e)),await t.onSuccess(a,o)}catch(e){throw await t.onFailure(e,a,o),e}}return{raw:async function(e,t={}){const r=n(e,t);try{return await fetch(r)}catch(e){throw e}},visit:r,get:(e,t)=>r(e,{...t??{},method:"GET"}),post:(e,t,n)=>r(e,{...n??{},method:"POST",data:t}),put:(e,t,n)=>r(e,{...n??{},method:"PUT",data:t}),patch:(e,t,n)=>r(e,{...n??{},method:"PATCH",data:t}),delete:(e,t,n)=>r(e,{...n??{},method:"DELETE",data:t})}}function x(){const t=e.inject(i,null);if(!t)throw new Error("useRouter(): Laika router not provided");return t}const C=e.shallowRef(),$=new Map;function j(t){const n=$.get(t);if(n)return n;const r=x(),a=L(),o=e.computed(()=>C.value?.components?.[t]??null);function i(e){const t=o.value;return!!t?.props&&Object.prototype.hasOwnProperty.call(t.props,e)}function s(e){const t=o.value;return!!t&&(!(!t.props||!(e in t.props))||(!(!Array.isArray(t.methods)||!t.methods.includes(e))||!(!Array.isArray(t.vars)||!t.vars.includes(e))))}function l(e,t){const n=o.value;return n?.props&&e in n.props?n.props[e]:t}async function u(n){const a=(Array.isArray(n)?n:[n]).filter(e=>!i(e));if(!a.length)return;const s=a.map(e=>`components.${t}.props.${e}`);return await r.get(window.location.pathname+window.location.search,{only:s,preserveState:!0,replace:!0}),await e.nextTick(),Array.isArray(n)?o.value?.props:o.value?.props[n]}async function c(){return void 0!==o.value?.html?o.value.html:(await r.get(window.location.pathname+window.location.search,{only:[`components.${t}.html`],preserveState:!0,replace:!0}),await e.nextTick(),o.value?.html??"")}const d=new Proxy({},{get(e,n){if("get"===n)return l;if("load"===n)return u;if("loadHtml"===n)return c;if("loaded"===n)return i;if("exists"===n)return s;if("request"===n)return(e,n)=>a.request(`${t}::${e}`,n);const r=o.value;return r?r[n]:void 0},has(e,t){if("get"===t||"load"===t||"loadHtml"===t||"loaded"===t||"exists"===t||"request"===t)return!0;{const e=o.value;return!!e&&t in e}}});return $.set(t,d),d}const q=e.shallowRef(),T=e.shallowRef(null),F=e.ref(void 0),R={get component(){return q.value},get payload(){return C.value},get layout(){return T.value},get key(){return F.value},title:e=>e,resolver:()=>{throw new Error("not implemented")},getLayout:()=>T.value,setLayout:e=>{T.value=e}};let H,M;const _=e.defineComponent({name:"Laika",props:{initialPayload:{type:Object,required:!0},initialComponent:{type:Object,required:!1},resolveComponent:{type:Function,required:!0},title:{type:Function,required:!1,default:e=>e}},setup:({initialPayload:t,initialComponent:n,resolveComponent:r,title:o})=>(C.value=t,F.value=void 0,q.value=n?e.markRaw(S(n)):void 0,q.value||Promise.resolve(r(t.page.component)).then(t=>{q.value=e.markRaw(S(t))}).catch(console.error),R.title=o??R.title,R.resolver=r,"page"in t&&"title"in t.page&&(document.title=(R.title??(e=>e))(t.page.title)||""),window.addEventListener("popstate",()=>window.location.reload()),()=>{if(!q.value||!C.value)return null;const t=C.value.page.props??{},n=e.h(q.value,{...t,key:F.value});let r;T.value&&(q.value.layout=T.value,T.value=null);const o=q.value.layout;if(o)if("function"==typeof o)r=o(e.h,n);else{r=(Array.isArray(o)?o:[o]).slice().reverse().reduce((n,r)=>e.h(r,{...t},()=>n),n)}else r=n;return e.h(e.Fragment,null,[e.h(a),r])})});const N={install(e){const t=this,n=()=>R,a=function(){const{components:e}=X();return new Proxy({},{get:(t,n)=>"has"===n?t=>!!e.value&&t in e.value:"get"===n?t=>e.value&&t in e.value?j(t):null:"string"==typeof n?e.value&&n in e.value?j(n):null:void 0})}(),s=r();H=O(n,{onBefore:async e=>{s.start(),await t.onRouterBefore(e)},onSuccess:async(e,n)=>{s.done(),await t.onRouterSuccess(e,n)},onFailure:async(e,n)=>{s.fail(),await t.onRouterFailure(e,n)}}),function(e,t){t.provide(i,e)}(H,e),M=A(n,H,async(e,t)=>this.swap(e,!0,t)),function(e,t){t.provide(o,e)}(M,e),Object.defineProperty(e.config.globalProperties,"$laika",{get:()=>R}),Object.defineProperty(e.config.globalProperties,"$router",{get:()=>H}),Object.defineProperty(e.config.globalProperties,"$payload",{get:()=>R.payload}),Object.defineProperty(e.config.globalProperties,"$site",{get:()=>R.payload?.site||{}}),Object.defineProperty(e.config.globalProperties,"$theme",{get:()=>R.payload?.theme||{}}),Object.defineProperty(e.config.globalProperties,"$page",{get:()=>R.payload?.page||{}}),Object.defineProperty(e.config.globalProperties,"$components",{get:()=>a}),Object.defineProperty(e.config.globalProperties,"$october",{get:()=>M}),Object.defineProperty(e.config.globalProperties,"$shared",{get:()=>R.payload?.shared||{}})},async onRouterBefore(e){},async onRouterSuccess(e,t){if(409===t.status){const e=t.headers.get("X-Laika-Location");throw e&&window.location.assign(e),new Error("Laika redirect")}if(!t.ok)throw window.location.assign(e.url),new Error("Navigation fallback");const n=(r=e.headers.get("X-Laika-Only")??t.headers.get("X-Laika-Only"))?r.split(",").map(e=>e.trim()).filter(Boolean):[];var r;const a=await t.json(),o="1"===e.headers.get("X-Laika-Preserve-State");await this.swap(a,o,n)},async onRouterFailure(e,t){},async swap(t,n,r){if("page"in t&&t.page?.component){const n=await R.resolver(t.page.component);q.value=e.markRaw(S(n))}if(r&&r.length&&C.value?C.value=this.patch(C.value,t,r):C.value=t,"page"in t&&t.page){const e=document.body.dataset.theme,n=(t.page.theme||"").trim().toLowerCase();e!==n&&""!==n&&(document.body.classList.remove(`theme-${e}`),document.body.classList.add(`theme-${n}`),document.body.dataset.theme=n);const r=document.body.dataset.layout,a=(t.page.layout||"").trim().toLowerCase();r!==a&&""!==a&&(document.body.classList.remove(`layout-${r}`),document.body.classList.add(`layout-${a}`),document.body.dataset.layout=a);const o=document.body.dataset.page,i=(t.page.id||"").trim().toLowerCase();o!==i&&""!==i&&(document.body.classList.remove(`page-${o}`),document.body.classList.add(`page-${i}`),document.body.dataset.page=i);const s={...t.page.head??{}},l=new Map,u=document.createElement("head");for(const[e,t]of Object.entries(s)){u.innerHTML=t.trim();const n=u.firstElementChild;n&&(n.setAttribute("data-laika-id",e),u.removeChild(n),l.set(e,n))}const c=new Set,d=document.head.querySelectorAll("[data-laika-id]");for(const e of t.page.head?Array.from(d):[]){const t=e.getAttribute("data-laika-id");if(!t)continue;const n=l.get(t);n?(c.add(t),e.outerHTML!==n.outerHTML&&document.head.replaceChild(n,e)):e.remove()}const p=document.head.querySelectorAll("[data-laika-id]"),f=p.length>0?p[p.length-1]?.nextElementSibling:null;for(const[e,n]of t.page.head?l:[])c.has(e)||(f?document.head.insertBefore(n,f):document.head.appendChild(n))}if("page"in t&&"title"in t.page){const e=C.value?.page?.title;e&&(document.title=(R.title??(e=>e))(e)||"Laika Unknown Title")}F.value=n?F.value:Date.now()},patch(e,t,n){let r={...e};for(const e of n){if(!e)continue;if(!e.includes(".")){e in t&&(r[e]=t[e]);continue}const n=E(t,e);void 0!==n&&(r=P(r,e,n))}return r}};function X(){return{version:e.computed(()=>C.value?.version),token:e.computed(()=>C.value?.token),site:e.computed(()=>C.value?.site),theme:e.computed(()=>C.value?.theme),page:e.computed(()=>C.value?.page),components:e.computed(()=>C.value?.components),october:e.computed(()=>C.value?.october),shared:e.computed(()=>C.value?.shared)}}const U=e.defineComponent({name:"LaikaFlash",props:{type:{type:String,required:!1}},slots:Object,setup(t,{slots:n}){const r=X();return()=>{const a=r.page.value.flash;if(null!=t.type&&!(t.type in a))return null;if(!n.default)return null;const o=[];for(const[e,r]of Object.entries(a)){if(null!=t.type&&t.type!==e)continue;const a=Array.isArray(r)?r:[r];for(const t of a)o.push(n.default({type:e,message:t}))}return o.length>0?e.h("div",{},o):null}}}),B=e.defineComponent({name:"LaikaHead",props:{watchKey:{type:[String,Number],required:!1}},slots:Object,setup(t,{slots:n}){const r=X(),a=e.ref(0),o=()=>t.watchKey??r.page.value.id??r.page.value.url??null;return e.watch(()=>o(),()=>{a.value++}),()=>{const t=n.default?.();return t?e.h(e.Teleport,{to:"head",key:`${String(o())}:${a.value}`},t):null}}});const D=e.defineComponent({name:"LaikaLink",inheritAttrs:!1,props:{page:{type:String,required:!1},params:{type:Object,default:{},required:!1},persistence:{type:Boolean,default:!0,required:!1},link:{type:String,required:!1},target:{type:String,required:!1}},slots:Object,setup(t,{slots:n,attrs:r}){const a=L(),o=x(),i=e.computed(()=>{if(t.page&&t.page.trim().length)return a.page(t.page.trim(),t.params,t.persistence);const e=(t.link??"").trim();return e?e.startsWith("http")?e:a.app(e.replace(/^\/+/,"")):"#"}),s=e.computed(()=>"_blank"===t.target||i.value.indexOf(`//${window.location.hostname}/`)<0);return()=>{const a={...r,href:i.value,target:t.target};s.value||(a.onClick=e=>{var t;e.preventDefault(),t=e,s.value||0===t.button&&(t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||o.visit(i.value))});const l=n.default?n.default(a,r):void 0;return e.h("a",a,l||void 0)}}}),I=e.defineComponent({name:"LaikaPageComponent",props:{name:{type:String,required:!0}},slots:Object,setup(t,{slots:n}){const r=X(),a=j(t.name),o=e.ref(!1);return e.watch(()=>r.components.value?.[t.name],async e=>{if(e&&void 0===e.html&&!o.value){o.value=!0;try{await a.loadHtml()}finally{o.value=!1}}},{immediate:!0}),()=>{if(!r.components.value||!(t.name in r.components.value))return null;const o=r.components.value[t.name]||void 0;if(!o)return null;const i=n.default?.(a);return i?e.h("div",{},i):o.html?e.h("div",{innerHTML:o.html}):null}}}),W=e.defineComponent({name:"LaikaPageContent",setup(t){const n=X();return()=>{const t=n.page.value.content??"";return e.h("div",{innerHTML:t})}}}),J=e.defineComponent({name:"LaikaServerPartial",props:{name:{type:String,required:!0},parameters:{type:Object,default:()=>({})},tag:{type:String,default:"div"}},setup(t){const n=L(),r=e.ref(""),a=e.ref(!1),o=e.ref(null);let i=0;return e.watch(()=>[t.name,t.parameters],async()=>{const e=++i;a.value=!0,o.value=null;try{const a=await n.renderPartial(t.name,t.parameters);e===i&&(r.value=a)}catch(t){e===i&&(o.value=t instanceof Error?t:new Error(String(t)))}finally{e===i&&(a.value=!1)}},{immediate:!0,deep:!0}),()=>e.h(t.tag,{innerHTML:r.value,"data-laika-partial":t.name,"data-loading":a.value?"true":void 0,"data-error":o.value?.message})}}),z=new Map,K=new Map;function G(t,n){const r=L(),a=e.ref(""),o=e.ref(!1),i=e.ref(null);let s=0;async function l(){const l=++s,u=e.toValue(t),c=e.toValue(n)??"",d=`${u}\0${c}`;o.value=!0,i.value=null;try{const e=z.get(d);let t;if(void 0!==e)t=e;else{const e=K.get(d),n=e??r.filter(u,c);void 0===e&&K.set(d,n),t=await n,K.delete(d),z.set(d,t)}l===s&&(a.value=t)}catch(e){K.delete(d),l===s&&(i.value=e instanceof Error?e:new Error(String(e)))}finally{l===s&&(o.value=!1)}}return e.watch(()=>[e.toValue(t),e.toValue(n)],l,{immediate:!0}),{value:e.readonly(a),pending:e.readonly(o),error:e.readonly(i),refresh:l}}const V=e.defineComponent({name:"LaikaOctoberFilter",props:{name:{type:String,required:!0},value:{type:String,default:""},tag:{type:String,default:"div"}},setup(t,{slots:n}){const r=G(()=>t.name,()=>t.value);return()=>n.default?n.default({value:r.value.value,pending:r.pending.value,error:r.error.value,refresh:r.refresh}):e.h(t.tag,{innerHTML:r.value.value,"data-loading":r.pending.value?"true":void 0,"data-error":r.error.value?.message})}});exports.Flash=U,exports.Head=B,exports.Link=D,exports.OctoberFilter=V,exports.PageComponent=I,exports.PageContent=W,exports.ProgressBar=a,exports.ServerPartial=J,exports.createLaikaApp=async function(e){const t=e.rootId?document.querySelector(e.rootId):document.querySelector(".app");if(!t)throw new Error(`Laika: root element not found (${e.rootId??".app"})`);const n=function(e='[data-laika="payload"]'){const t=document.head.querySelector(e);if(!t?.textContent?.trim())throw new Error("Laika: payload missing/empty");return JSON.parse(t.textContent)}(),r={initialPayload:n,initialComponent:S(await Promise.resolve(e.resolve(n.page.component))),resolveComponent:e.resolve,...e.title?{title:e.title}:{}};return e.setup({root:t,App:_,props:r,plugin:N,payload:n})},exports.getProgressBar=r,exports.laikaPlugin=N,exports.useComponent=j,exports.useLaika=function(){return R},exports.useOctober=L,exports.useOctoberFilter=G,exports.usePage=function(){return e.computed(()=>C.value?.page)},exports.usePayload=X,exports.useRouter=x,exports.useShared=function(){return e.computed(()=>C.value?.shared)},exports.useSite=function(){return e.computed(()=>C.value?.site)},exports.useTheme=function(){return e.computed(()=>C.value?.theme)};
1
+ "use strict";var e=require("vue");const t=e.reactive({color:"#DE3163",active:!1,percent:0,timestamp:0});let n=null;function r(){function e(e=!1){n&&(window.clearInterval(n),n=null),(t.active||e)&&(t.percent=100,window.setTimeout(()=>{t.active=!1,t.percent=0},150))}return{state:t,start:function(){t.active=!0,t.percent=10,t.timestamp=Date.now(),n&&window.clearInterval(n),n=window.setInterval(()=>{t.active&&t.percent<90&&(t.percent+=Math.max(1,Math.round(.08*(90-t.percent))))},200)},done:e,fail:function(){e(!0)}}}const a=e.defineComponent({name:"LaikaProgressBar",setup(t){const n=r();return()=>n.state.active?e.h("div",{class:"laika-progress-bar",style:{top:0,left:0,width:`${n.state.percent}%`,height:"0.2rem",position:"fixed",backgroundColor:`var(--laika-progress-bar, ${n.state.color})`,transition:"width 120ms linear",zIndex:99999}}):void 0}}),o=Symbol("laika:october"),i=Symbol("laika:router");let s=null,l=!1;function u(e,t,n){return e.dispatchEvent(new CustomEvent(t,{bubbles:!0,cancelable:!0,detail:n}))}function c(e){const t={};return new FormData(e).forEach((e,n)=>{const r=n.endsWith("[]"),a=r?n.slice(0,-2):n;t[a]=a in t?Array.isArray(t[a])?[...t[a],e]:[t[a],e]:r?[e]:e}),t}function d(e){if(!e?.trim())return{};try{return JSON.parse(e)}catch{const t={},n=/(?:['"]([^'"]+)['"]|([A-Za-z0-9_.-]+))\s*:\s*(?:['"]([^'"]*)['"]|([^,}\s]+))/g;let r;for(;null!==(r=n.exec(e));){const e=r[1]??r[2],n=r[3]??r[4]??"";e&&(t[e]="true"===n||"false"!==n&&n)}return t}}function p(e,t){e.toggleAttribute("data-request-loading",t),e.setAttribute("aria-busy",t?"true":"false"),(e instanceof HTMLButtonElement||e instanceof HTMLInputElement)&&(e.disabled=t)}async function f(e,t){const n=e.getAttribute("data-request")??t?.getAttribute("data-request");if(!n||!s||e.hasAttribute("data-request-loading"))return;const r=function(e){if(!e?.trim())return{};const t={},n=/(?:['"]([^'"]+)['"]|([A-Za-z0-9_./:-]+))\s*:\s*['"]([^'"]+)['"]/g;let r;for(;null!==(r=n.exec(e));){const e=r[1]??r[2],n=r[3];e&&n&&(t[e]=n)}return t}(e.getAttribute("data-request-update")??t?.getAttribute("data-request-update")??null),a={...t?c(t):{},...d(t?.getAttribute("data-request-data")??null),...d(e.getAttribute("data-request-data"))};if(u(e,"ajax:before",{handler:n,data:a})){p(e,!0);try{const o=await s(n,{data:a,flash:e.hasAttribute("data-request-flash")||Boolean(t?.hasAttribute("data-request-flash")),partials:Object.keys(r),preserveState:!0});!function(e,t){for(const[n,r]of Object.entries(t)){const t=e.partials[n];if(void 0!==t)for(const e of Array.from(document.querySelectorAll(r)))e.innerHTML=t}}(o,r),u(e,o.ok?"ajax:success":"ajax:error",o)}catch(t){u(e,"ajax:error",{handler:n,error:t})}finally{p(e,!1),u(e,"ajax:complete",{handler:n})}}}function m(e){const t=e.target instanceof HTMLFormElement?e.target:null;if(!t?.matches("[data-request]"))return;e.preventDefault();f(e.submitter instanceof HTMLElement?e.submitter:t,t)}function h(e){const t=e.target instanceof Element?e.target:null,n=t?.closest("[data-request]");!n||n instanceof HTMLFormElement||(n instanceof HTMLButtonElement||n instanceof HTMLInputElement)&&n.form?.matches("[data-request]")||(e.preventDefault(),f(n,n.closest("form")??void 0))}const g=new Set(["info","error","success","warning"]);function y(e){return"string"==typeof e&&g.has(e)?e:"info"}function v(e,t,n){if("string"!=typeof n||!n.trim())return;const r=e[t],a=Array.isArray(r)?r:r?[r]:[],o=n.trim();a.includes(o)||(e[t]=[...a,o])}function w(e,t){return t?/^(https?:)?\/\//.test(t)||t.startsWith("#")||t.startsWith("mailto:")||t.startsWith("tel:")||t.startsWith("sms:")?t:`${e.replace(/\/+$/,"")}/${t.replace(/^\/+/,"")}`:e}function b(e){const t=new URLSearchParams;for(const[n,r]of Object.entries(e))null!=r&&t.set(n,String(r));const n=t.toString();return n?`?${n}`:""}function k(e,t){return e.replace(/:([A-Za-z0-9_]+\*?)/g,(e,n)=>{const r=n.endsWith("*");n=n.endsWith("*")?n.slice(0,-1):n;const a=t[n];if(delete t[n],null==a)return"";const o=encodeURIComponent(String(a));return r?o.replace(/%2F/g,"/"):o})}function A(t,n,r){const a=e.reactive({});function o(){const e=t();if(!e)throw new Error("October Functions: runtime not ready");return e}function i(){const e=o(),t=e.payload?.october;if(!t)throw new Error("October Functions: missing october payload.");return t}function u(e){return w(i().baseUrl,e)}function c(e){const t=o(),n=t.payload?.site?.locale||"",r=t.payload?.october?.fallbackLocale||"",a=t.payload?.october?.strings?.[n]||{},i=t.payload?.october?.strings?.[r]||{};return e in a?a[e]:e in i?i[e]:null}function d(e,t){if(!t)return e;for(const[n,r]of Object.entries(t)){if(null==r)continue;const t=String(n),a=String(r);e=e.replaceAll(`:${t}`,a);const o=t.charAt(0).toUpperCase()+t.slice(1);e=(e=e.replaceAll(`:${o}`,a.charAt(0).toUpperCase()+a.slice(1))).replaceAll(`:${t.toUpperCase()}`,a.toUpperCase())}return e}function p(e,t,n){let r=c(e);if(null===r)return e;return d(function(e,t){const n=e.split("|").map(e=>e.trim()).filter(Boolean);for(const e of n){const n=e.match(/^\{(\d+)\}\s*(.*)$/);if(n){if(t===Number(n[1]))return n[2];continue}const r=e.match(/^\[(\d+|\-?\*),(\d+|\-?\*)\]\s*(.*)$/);if(r){const e=r[1],n=r[2],a=r[3],o="*"===e?-1/0:Number(e),i="*"===n?1/0:Number(n);if(t>=o&&t<=i)return a;continue}}return 1===n.length?n[0]:2===n.length?1===t?n[0]:n[1]:n[n.length-1]}(r,t),{count:t,...n})}async function f(e,t={}){if(!/^(?:\w+::)?on[A-Z][\w+]*$/.test(e))throw new Error(`October AJAX handler name is invalid: ${e}`);const a=t.only??["token","page.props","page.flash","components","shared"],o={"X-AJAX-HANDLER":e,"X-AJAX-FLASH":!1===t.flash?"0":"1"};t.partials?.length&&(o["X-AJAX-PARTIALS"]=t.partials.join("&"));const i=await n.raw(window.location.pathname+window.location.search,{method:"post",data:t.data??{},headers:o,only:a,preserveState:t.preserveState??!0}),s=await i.json(),l=s.__ajax??{},u=s.__laika;if(delete s.__ajax,delete s.__laika,u&&!1!==t.flash){const e=function(e){const t={};for(const n of e.ops??[])"flash"===n.op&&v(t,y(n.level??n.severity),n.text??n.message);const n=Object.values(e.invalid??{}).flatMap(e=>Array.isArray(e)?e:[e]);for(const e of n)v(t,"error",e);return 0===Object.keys(t).length&&"string"==typeof e.message&&v(t,y(e.severity),e.message),t}(l);Object.keys(e).length>0&&u.page&&(u.page.flash={...u.page.flash??{},...e})}u&&await r(u,a);const c={};for(const e of l.ops??[])"partial"===e.op&&"string"==typeof e.name?c[e.name]=String(e.html??""):"dispatch"===e.op&&"string"==typeof e.event?window.dispatchEvent(new CustomEvent(e.event,{detail:e.detail})):"redirect"===e.op&&e.url?window.location.assign(String(e.url)):"reload"===e.op&&window.location.reload();if(!i.ok&&!("ok"in l))throw new Error(`October AJAX request failed (${i.status}).`);return{ok:l.ok??i.ok,status:i.status,data:s,invalid:l.invalid??{},message:l.message??null,severity:l.severity??"info",partials:c}}async function g(e,t){const r=await n.raw(u("/x-laika/filter"),{method:"post",data:{filter:e,payload:t}});if(!r.ok)throw new Error(`October filter failed: ${e}. (${r.status})`);const a=await r.json();if("success"!==a.status)throw new Error(`October filter failed: ${e}. (${r.status}) - (${a.message||"An unknown error occurred."})`);return a.result.content}const A={app:u,theme:function(e){return Array.isArray(e)?e.map(e=>w(i().themeBaseUrl,e??"")):w(i().themeBaseUrl,e)},page:function(e=null,t={},n=!0){const r=i(),a=r.pages??{},s={...r.currentParams??{}};if("boolean"==typeof t&&(n=t,t={}),t&&"object"==typeof t&&!Array.isArray(t)||(t={}),!e){const e=o().payload?.page?.url??"/",n=b(t);return n?e+(e.includes("?")?`&${n.slice(1)}`:n):e}if("string"!=typeof e)return;const l=a[e=e.toLowerCase()];if(!l?.pattern)return;const c=n?{...s,...t}:{...t},d={...t},p=k(l.pattern,c);return k(l.pattern,d),u(p)+b(d)},link:function(e){if(e.startsWith("http"))return e;{const t=o();return u(`/x-laika/resolve?path=${btoa(e)}&theme=${t.payload?.page?.theme||"0"}`)}},media:function(e){const t=i(),n=("/"+String(e??"").replace(/\\/g,"/").replace(/^\/+/,"")).split("/").map(e=>encodeURIComponent(e)).join("/").replace(/%2F/g,"/");return w(t.mediaBaseUrl,n)},resize:function(e,t=null,n=null,r={}){const a=i(),o=a.resizer?.basePath??"/resize",s={src:e};null!=t&&(s.w=t),null!=n&&(s.h=n);for(const[e,t]of Object.entries(r??{}))s[`o_${e}`]=t;return u(o+b(s))},currency:function(e,t={}){const n="number"==typeof e?e:Number(String(e).replace(",","."));if(!Number.isFinite(n))return String(e);const{locale:r="de-AT",currency:a="EUR",style:o="currency",minimumFractionDigits:i,maximumFractionDigits:s}=t;return new Intl.NumberFormat(r,{style:o,currency:a,minimumFractionDigits:i,maximumFractionDigits:s}).format(n)},trans:function(e,t){let n=c(e);return null===n?e:d(n,t)},transChoice:p,placeholder:function(e,t=null){const n=o();return e in(n.payload?.page?.placeholders||{})?(n.payload?.page?.placeholders||{})[e]:e in a?a[e]:t},hasPlaceholder:function(e){const t=o();return e in(t.payload?.page?.placeholders||{})||e in a},setPlaceholder:function(e,t){a[e]=t},request:f,renderPartial:async function(e,t={}){const n=await f("onLaikaRenderPartial",{data:{name:e,parameters:t},only:["token"],preserveState:!0});if(!n.ok)throw new Error(n.message??`Unable to render partial: ${e}`);return n.data.html??""},content:async function(e,t={}){const n=await f("onLaikaRenderContent",{data:{name:e,parameters:t},only:["token"],preserveState:!0});if(!n.ok)throw new Error(n.message??`Unable to render content: ${e}`);return n.data.html??""},filter:function(e,t){return g(e,{content:t})},htmlLimit:function(e,t=100,n="..."){if(t<=0)return n;const r=document.createElement("template");r.innerHTML=e;const a=document.createElement("div");let o=t,i=!1;const s=e=>{if(i)return null;if(e.nodeType===Node.TEXT_NODE){const t=Array.from(e.textContent??"");return t.length<=o?(o-=t.length,document.createTextNode(t.join(""))):(i=!0,document.createTextNode(t.slice(0,o).join("")+n))}if(e.nodeType!==Node.ELEMENT_NODE)return e.cloneNode(!1);const t=e.cloneNode(!1);for(const n of Array.from(e.childNodes)){const e=s(n);if(e&&t.appendChild(e),i)break}return t};for(const e of Array.from(r.content.childNodes)){const t=s(e);if(t&&a.appendChild(t),i)break}return a.innerHTML},md:e=>g("md",{content:e}),mdSafe:e=>g("md_safe",{content:e}),mdClean:e=>g("md_clean",{content:e}),mdIndent:e=>g("md_indent",{content:e}),trans_choice:p,md_safe:e=>g("md_safe",{content:e}),md_clean:e=>g("md_clean",{content:e}),md_indent:e=>g("md_indent",{content:e})};return s=A.request,l||"undefined"==typeof document||(l=!0,document.addEventListener("submit",m),document.addEventListener("click",h)),A}function L(){const t=e.inject(o,null);if(!t)throw new Error("useOctober(): OctoberAPI not provided");return t}function S(e){return e?.default??e}function E(e,t){return t.split(".").reduce((e,t)=>null==e?void 0:e[t],e)}function O(e,t,n){const r=t.split(".");if(!r.length)return e;const a=Array.isArray(e)?e.slice():{...e??{}},o=r[r.length-1];let i=a,s=e??{};for(let e=0;e<r.length-1;e++){const t=r[e],n=s?.[t];let a;a=Array.isArray(n)?n.slice():n&&"object"==typeof n?{...n}:{},i[t]=a,i=a,s=n}return i[o]=n,a}function P(e,t){function n(t,n={}){const r=function(){const t=e();if(!t)throw new Error("Laika Router: runtime not ready");return t}(),a=(n.method??"GET").toUpperCase(),o=n.data??void 0,i=new Headers({Accept:"application/json","X-Requested-With":"XMLHttpRequest","X-Laika":"1",...n.headers??{}}),s=r.payload?.token;if(s){const[e,t]=s.split("|");i.set("X-CSRF-TOKEN",e),i.set("X-Laika-Token",t)}return n.force&&i.set("X-Laika-Force","1"),n.require?.length&&i.set("X-Laika-Require",n.require.join(",")),n.only?.length&&i.set("X-Laika-Only",n.only.join(",")),n.preserveState&&i.set("X-Laika-Preserve-State","1"),"GET"!==a&&i.set("Content-Type","application/json"),new Request(t,{method:a.toUpperCase(),headers:i,body:"GET"!==a?JSON.stringify(o??{}):null,credentials:"same-origin"})}async function r(e,r={}){const a=n(e,r);let o;try{await t.onBefore(a),o=await fetch(a),"GET"===a.method&&(r.replace?history.replaceState({},"",e):history.pushState({},"",e)),await t.onSuccess(a,o)}catch(e){throw await t.onFailure(e,a,o),e}}return{raw:async function(e,t={}){const r=n(e,t);try{return await fetch(r)}catch(e){throw e}},visit:r,get:(e,t)=>r(e,{...t??{},method:"GET"}),post:(e,t,n)=>r(e,{...n??{},method:"POST",data:t}),put:(e,t,n)=>r(e,{...n??{},method:"PUT",data:t}),patch:(e,t,n)=>r(e,{...n??{},method:"PATCH",data:t}),delete:(e,t,n)=>r(e,{...n??{},method:"DELETE",data:t})}}function C(){const t=e.inject(i,null);if(!t)throw new Error("useRouter(): Laika router not provided");return t}const $=e.shallowRef(),x=new Map;function j(t){const n=x.get(t);if(n)return n;const r=C(),a=L(),o=e.computed(()=>$.value?.components?.[t]??null);function i(e){const t=o.value;return!!t?.props&&Object.prototype.hasOwnProperty.call(t.props,e)}function s(e){const t=o.value;return!!t&&(!(!t.props||!(e in t.props))||(!(!Array.isArray(t.methods)||!t.methods.includes(e))||!(!Array.isArray(t.vars)||!t.vars.includes(e))))}function l(e,t){const n=o.value;return n?.props&&e in n.props?n.props[e]:t}async function u(n){const a=(Array.isArray(n)?n:[n]).filter(e=>!i(e));if(!a.length)return;const s=a.map(e=>`components.${t}.props.${e}`);return await r.get(window.location.pathname+window.location.search,{only:s,preserveState:!0,replace:!0}),await e.nextTick(),Array.isArray(n)?o.value?.props:o.value?.props[n]}async function c(){return void 0!==o.value?.html?o.value.html:(await r.get(window.location.pathname+window.location.search,{only:[`components.${t}.html`],preserveState:!0,replace:!0}),await e.nextTick(),o.value?.html??"")}const d=new Proxy({},{get(e,n){if("get"===n)return l;if("load"===n)return u;if("loadHtml"===n)return c;if("loaded"===n)return i;if("exists"===n)return s;if("request"===n)return(e,n)=>a.request(`${t}::${e}`,n);const r=o.value;return r?r[n]:void 0},has(e,t){if("get"===t||"load"===t||"loadHtml"===t||"loaded"===t||"exists"===t||"request"===t)return!0;{const e=o.value;return!!e&&t in e}}});return x.set(t,d),d}const q=e.shallowRef(),T=e.shallowRef(null),F=e.ref(void 0),R={get component(){return q.value},get payload(){return $.value},get layout(){return T.value},get key(){return F.value},title:e=>e,resolver:()=>{throw new Error("not implemented")},getLayout:()=>T.value,setLayout:e=>{T.value=e}};let H,M;const _=e.defineComponent({name:"Laika",props:{initialPayload:{type:Object,required:!0},initialComponent:{type:Object,required:!1},resolveComponent:{type:Function,required:!0},title:{type:Function,required:!1,default:e=>e}},setup:({initialPayload:t,initialComponent:n,resolveComponent:r,title:o})=>($.value=t,F.value=void 0,q.value=n?e.markRaw(S(n)):void 0,q.value||Promise.resolve(r(t.page.component)).then(t=>{q.value=e.markRaw(S(t))}).catch(console.error),R.title=o??R.title,R.resolver=r,"page"in t&&"title"in t.page&&(document.title=(R.title??(e=>e))(t.page.title)||""),window.addEventListener("popstate",()=>window.location.reload()),()=>{if(!q.value||!$.value)return null;const t=$.value.page.props??{},n=e.h(q.value,{...t,key:F.value});let r;T.value&&(q.value.layout=T.value,T.value=null);const o=q.value.layout;if(o)if("function"==typeof o)r=o(e.h,n);else{r=(Array.isArray(o)?o:[o]).slice().reverse().reduce((n,r)=>e.h(r,{...t},()=>n),n)}else r=n;return e.h(e.Fragment,null,[e.h(a),r])})});const N={install(e){const t=this,n=()=>R,a=function(){const{components:e}=X();return new Proxy({},{get:(t,n)=>"has"===n?t=>!!e.value&&t in e.value:"get"===n?t=>e.value&&t in e.value?j(t):null:"string"==typeof n?e.value&&n in e.value?j(n):null:void 0})}(),s=r();H=P(n,{onBefore:async e=>{s.start(),await t.onRouterBefore(e)},onSuccess:async(e,n)=>{s.done(),await t.onRouterSuccess(e,n)},onFailure:async(e,n)=>{s.fail(),await t.onRouterFailure(e,n)}}),function(e,t){t.provide(i,e)}(H,e),M=A(n,H,async(e,t)=>this.swap(e,!0,t)),function(e,t){t.provide(o,e)}(M,e),Object.defineProperty(e.config.globalProperties,"$laika",{get:()=>R}),Object.defineProperty(e.config.globalProperties,"$router",{get:()=>H}),Object.defineProperty(e.config.globalProperties,"$payload",{get:()=>R.payload}),Object.defineProperty(e.config.globalProperties,"$site",{get:()=>R.payload?.site||{}}),Object.defineProperty(e.config.globalProperties,"$theme",{get:()=>R.payload?.theme||{}}),Object.defineProperty(e.config.globalProperties,"$page",{get:()=>R.payload?.page||{}}),Object.defineProperty(e.config.globalProperties,"$components",{get:()=>a}),Object.defineProperty(e.config.globalProperties,"$october",{get:()=>M}),Object.defineProperty(e.config.globalProperties,"$shared",{get:()=>R.payload?.shared||{}})},async onRouterBefore(e){},async onRouterSuccess(e,t){if(409===t.status){const e=t.headers.get("X-Laika-Location");throw e&&window.location.assign(e),new Error("Laika redirect")}if(!t.ok)throw window.location.assign(e.url),new Error("Navigation fallback");const n=(r=e.headers.get("X-Laika-Only")??t.headers.get("X-Laika-Only"))?r.split(",").map(e=>e.trim()).filter(Boolean):[];var r;const a=await t.json(),o="1"===e.headers.get("X-Laika-Preserve-State");await this.swap(a,o,n)},async onRouterFailure(e,t){},async swap(t,n,r){if("page"in t&&t.page?.component){const n=await R.resolver(t.page.component);q.value=e.markRaw(S(n))}if(r&&r.length&&$.value?$.value=this.patch($.value,t,r):$.value=t,"page"in t&&t.page){const e=document.body.dataset.theme,n=(t.page.theme||"").trim().toLowerCase();e!==n&&""!==n&&(document.body.classList.remove(`theme-${e}`),document.body.classList.add(`theme-${n}`),document.body.dataset.theme=n);const r=document.body.dataset.layout,a=(t.page.layout||"").trim().toLowerCase();r!==a&&""!==a&&(document.body.classList.remove(`layout-${r}`),document.body.classList.add(`layout-${a}`),document.body.dataset.layout=a);const o=document.body.dataset.page,i=(t.page.id||"").trim().toLowerCase();o!==i&&""!==i&&(document.body.classList.remove(`page-${o}`),document.body.classList.add(`page-${i}`),document.body.dataset.page=i);const s={...t.page.head??{}},l=new Map,u=document.createElement("head");for(const[e,t]of Object.entries(s)){u.innerHTML=t.trim();const n=u.firstElementChild;n&&(n.setAttribute("data-laika-id",e),u.removeChild(n),l.set(e,n))}const c=new Set,d=document.head.querySelectorAll("[data-laika-id]");for(const e of t.page.head?Array.from(d):[]){const t=e.getAttribute("data-laika-id");if(!t)continue;const n=l.get(t);n?(c.add(t),e.outerHTML!==n.outerHTML&&document.head.replaceChild(n,e)):e.remove()}const p=document.head.querySelectorAll("[data-laika-id]"),f=p.length>0?p[p.length-1]?.nextElementSibling:null;for(const[e,n]of t.page.head?l:[])c.has(e)||(f?document.head.insertBefore(n,f):document.head.appendChild(n))}if("page"in t&&"title"in t.page){const e=$.value?.page?.title;e&&(document.title=(R.title??(e=>e))(e)||"Laika Unknown Title")}F.value=n?F.value:Date.now()},patch(e,t,n){let r={...e};for(const e of n){if(!e)continue;if(!e.includes(".")){e in t&&(r[e]=t[e]);continue}const n=E(t,e);void 0!==n&&(r=O(r,e,n))}return r}};function X(){return{version:e.computed(()=>$.value?.version),token:e.computed(()=>$.value?.token),site:e.computed(()=>$.value?.site),theme:e.computed(()=>$.value?.theme),page:e.computed(()=>$.value?.page),components:e.computed(()=>$.value?.components),october:e.computed(()=>$.value?.october),shared:e.computed(()=>$.value?.shared)}}const U=e.defineComponent({name:"LaikaFlash",props:{type:{type:String,required:!1}},slots:Object,setup(t,{slots:n}){const r=X();return()=>{const a=r.page.value.flash;if(null!=t.type&&!(t.type in a))return null;if(!n.default)return null;const o=[];for(const[e,r]of Object.entries(a)){if(null!=t.type&&t.type!==e)continue;const a=Array.isArray(r)?r:[r];for(const t of a)o.push(n.default({type:e,message:t}))}return o.length>0?e.h("div",{},o):null}}}),B=e.defineComponent({name:"LaikaHead",props:{watchKey:{type:[String,Number],required:!1}},slots:Object,setup(t,{slots:n}){const r=X(),a=e.ref(0),o=()=>t.watchKey??r.page.value.id??r.page.value.url??null;return e.watch(()=>o(),()=>{a.value++}),()=>{const t=n.default?.();return t?e.h(e.Teleport,{to:"head",key:`${String(o())}:${a.value}`},t):null}}});const D=e.defineComponent({name:"LaikaLink",inheritAttrs:!1,props:{page:{type:String,required:!1},params:{type:Object,default:{},required:!1},persistence:{type:Boolean,default:!0,required:!1},link:{type:String,required:!1},target:{type:String,required:!1}},slots:Object,setup(t,{slots:n,attrs:r}){const a=L(),o=C(),i=e.computed(()=>{if(t.page&&t.page.trim().length){const e=t.page.trim(),n=a.page(e,t.params,t.persistence);return n||(console.warn(`[LAIKA] Unable to resolve October page "${e}".`),"#")}const e=(t.link??"").trim();return e?e.startsWith("http")?e:a.app(e.replace(/^\/+/,"")):"#"}),s=e.computed(()=>Boolean(t.page?.trim())&&"#"===i.value),l=e.computed(()=>!s.value&&("_blank"===t.target||i.value.indexOf(`//${window.location.hostname}/`)<0));return()=>{const a={...r,href:i.value,target:t.target,"aria-disabled":s.value||void 0};s.value?a.onClick=e=>{e.preventDefault()}:l.value||(a.onClick=e=>{var t;e.preventDefault(),t=e,s.value?t.preventDefault():l.value||0===t.button&&(t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||o.visit(i.value))});const u=n.default?n.default(a,r):void 0;return e.h("a",a,u||void 0)}}}),I=e.defineComponent({name:"LaikaPageComponent",props:{name:{type:String,required:!0}},slots:Object,setup(t,{slots:n}){const r=X(),a=j(t.name),o=e.ref(!1);return e.watch(()=>r.components.value?.[t.name],async e=>{if(e&&void 0===e.html&&!o.value){o.value=!0;try{await a.loadHtml()}finally{o.value=!1}}},{immediate:!0}),()=>{if(!r.components.value||!(t.name in r.components.value))return null;const o=r.components.value[t.name]||void 0;if(!o)return null;const i=n.default?.(a);return i?e.h("div",{},i):o.html?e.h("div",{innerHTML:o.html}):null}}}),W=e.defineComponent({name:"LaikaPageContent",setup(t){const n=X();return()=>{const t=n.page.value.content??"";return e.h("div",{innerHTML:t})}}}),J=e.defineComponent({name:"LaikaServerPartial",props:{name:{type:String,required:!0},parameters:{type:Object,default:()=>({})},tag:{type:String,default:"div"}},setup(t){const n=L(),r=e.ref(""),a=e.ref(!1),o=e.ref(null);let i=0;return e.watch(()=>[t.name,t.parameters],async()=>{const e=++i;a.value=!0,o.value=null;try{const a=await n.renderPartial(t.name,t.parameters);e===i&&(r.value=a)}catch(t){e===i&&(o.value=t instanceof Error?t:new Error(String(t)))}finally{e===i&&(a.value=!1)}},{immediate:!0,deep:!0}),()=>e.h(t.tag,{innerHTML:r.value,"data-laika-partial":t.name,"data-loading":a.value?"true":void 0,"data-error":o.value?.message})}}),K=new Map,z=new Map;function G(t,n){const r=L(),a=e.ref(""),o=e.ref(!1),i=e.ref(null);let s=0;async function l(){const l=++s,u=e.toValue(t),c=e.toValue(n)??"",d=`${u}\0${c}`;o.value=!0,i.value=null;try{const e=K.get(d);let t;if(void 0!==e)t=e;else{const e=z.get(d),n=e??r.filter(u,c);void 0===e&&z.set(d,n),t=await n,z.delete(d),K.set(d,t)}l===s&&(a.value=t)}catch(e){z.delete(d),l===s&&(i.value=e instanceof Error?e:new Error(String(e)))}finally{l===s&&(o.value=!1)}}return e.watch(()=>[e.toValue(t),e.toValue(n)],l,{immediate:!0}),{value:e.readonly(a),pending:e.readonly(o),error:e.readonly(i),refresh:l}}const V=e.defineComponent({name:"LaikaOctoberFilter",props:{name:{type:String,required:!0},value:{type:String,default:""},tag:{type:String,default:"div"}},setup(t,{slots:n}){const r=G(()=>t.name,()=>t.value);return()=>n.default?n.default({value:r.value.value,pending:r.pending.value,error:r.error.value,refresh:r.refresh}):e.h(t.tag,{innerHTML:r.value.value,"data-loading":r.pending.value?"true":void 0,"data-error":r.error.value?.message})}});exports.Flash=U,exports.Head=B,exports.Link=D,exports.OctoberFilter=V,exports.PageComponent=I,exports.PageContent=W,exports.ProgressBar=a,exports.ServerPartial=J,exports.createLaikaApp=async function(e){const t=e.rootId?document.querySelector(e.rootId):document.querySelector(".app");if(!t)throw new Error(`Laika: root element not found (${e.rootId??".app"})`);const n=function(e='[data-laika="payload"]'){const t=document.head.querySelector(e);if(!t?.textContent?.trim())throw new Error("Laika: payload missing/empty");return JSON.parse(t.textContent)}(),r={initialPayload:n,initialComponent:S(await Promise.resolve(e.resolve(n.page.component))),resolveComponent:e.resolve,...e.title?{title:e.title}:{}};return e.setup({root:t,App:_,props:r,plugin:N,payload:n})},exports.getProgressBar=r,exports.laikaPlugin=N,exports.useComponent=j,exports.useLaika=function(){return R},exports.useOctober=L,exports.useOctoberFilter=G,exports.usePage=function(){return e.computed(()=>$.value?.page)},exports.usePayload=X,exports.useRouter=C,exports.useShared=function(){return e.computed(()=>$.value?.shared)},exports.useSite=function(){return e.computed(()=>$.value?.site)},exports.useTheme=function(){return e.computed(()=>$.value?.theme)};
2
2
  //# sourceMappingURL=laika.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"laika.cjs","sources":["../src/plugins/get-progress-bar.ts","../src/components/progress-bar.ts","../src/symbols.ts","../src/larajax.ts","../src/plugins/use-october.ts","../src/utils.ts","../src/plugins/use-router.ts","../src/state.ts","../src/plugins/use-component.ts","../src/app.ts","../src/components/flash.ts","../src/components/head.ts","../src/components/link.ts","../src/components/page-component.ts","../src/components/page-content.ts","../src/components/server-partial.ts","../src/plugins/use-october-filter.ts","../src/components/october-filter.ts","../src/laika.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["progress","reactive","color","active","percent","timestamp","progressTimer","getProgressBar","done","force","window","clearInterval","setTimeout","state","start","Date","now","setInterval","Math","max","round","fail","ProgressBar","defineComponent","name","setup","props","h","class","style","top","left","width","height","position","backgroundColor","transition","zIndex","LAIKA_OCTOBER_KEY","Symbol","LAIKA_ROUTER_KEY","requester","listenersInstalled","dispatch","element","detail","dispatchEvent","CustomEvent","bubbles","cancelable","collectFormData","form","data","FormData","forEach","value","rawName","isArray","endsWith","slice","Array","parseRequestData","trim","JSON","parse","result","expression","match","exec","key","raw","setLoading","loading","toggleAttribute","setAttribute","HTMLButtonElement","HTMLInputElement","disabled","async","runRequest","handler","getAttribute","hasAttribute","targets","partial","selector","parsePartialTargets","flash","Boolean","partials","Object","keys","preserveState","entries","html","undefined","target","from","document","querySelectorAll","innerHTML","updatePartialTargets","ok","error","handleSubmit","event","HTMLFormElement","matches","preventDefault","submitter","HTMLElement","handleClick","origin","Element","closest","FLASH_TYPES","Set","normalizeFlashType","severity","has","appendFlashMessage","type","message","current","messages","nextMessage","includes","joinUrl","base","path","test","startsWith","replace","encodeQuery","params","qs","URLSearchParams","k","v","set","String","str","toString","fillPattern","pattern","_","escapeSlash","val","encodedVal","encodeURIComponent","createOctober","getRuntime","router","applyPayload","placeholders","requireRuntime","runtime","Error","boot","october","payload","app","baseUrl","getLocalizationString","locale","site","fallbackLocale","localeStrings","strings","fallbackStrings","transformLocalizationString","string","replacements","rawKey","rawVal","replaceAll","uc","charAt","toUpperCase","transChoice","number","localeString","n","parts","split","map","s","filter","part","exact","Number","range","minRaw","maxRaw","text","min","Infinity","length","choosePluralForm","count","request","options","only","headers","join","response","location","pathname","search","method","json","ajax","__ajax","nextPayload","__laika","ajaxFlash","operation","ops","op","level","invalidMessages","values","invalid","flatMap","collectAjaxFlash","page","url","assign","reload","status","callFilter","content","api","theme","p","themeBaseUrl","persistence","oc","pages","currentParams","query","pageInfo","toLowerCase","routeParams","queryParams","link","btoa","media","file","encoded","mediaBaseUrl","resize","input","basePath","resizer","src","w","currency","num","isFinite","minimumFractionDigits","maximumFractionDigits","Intl","NumberFormat","format","trans","placeholder","defaultValue","hasPlaceholder","setPlaceholder","renderPartial","parameters","htmlLimit","maxLength","end","source","createElement","output","remaining","truncated","cloneNode","node","nodeType","Node","TEXT_NODE","characters","textContent","createTextNode","ELEMENT_NODE","clone","child","childNodes","childClone","appendChild","md","mdSafe","mdClean","mdIndent","trans_choice","md_safe","md_clean","md_indent","addEventListener","useOctober","inject","unwrapModule","mod","default","getByPath","obj","reduce","acc","setByPath","root","out","last","curOut","curIn","i","nextIn","nextOut","createRouter","hooks","prepare","Headers","Accept","token","csrfToken","laikaToken","require","Request","body","stringify","credentials","visit","onBefore","fetch","history","replaceState","pushState","onSuccess","err","onFailure","get","post","put","patch","delete","useRouter","shallowRef","cache","Map","useComponent","alias","existing","computed","components","loaded","cur","prototype","hasOwnProperty","call","exists","methods","vars","fallback","load","missing","nextTick","loadHtml","handle","Proxy","_t","prop","component","layout","ref","title","resolver","getLayout","setLayout","next","App","initialPayload","required","initialComponent","resolveComponent","Function","t","titleCallback","markRaw","Promise","resolve","then","catch","console","x","userComponent","childLayout","reverse","L","Fragment","plugin","install","self","this","componentsFacade","usePayload","createComponentsFacade","onRouterBefore","onRouterSuccess","onRouterFailure","provide","provideRouter","swap","provideOctober","defineProperty","config","globalProperties","shared","loc","header","currTheme","dataset","nextTheme","classList","remove","add","currLayout","nextLayout","currPage","nextPage","id","newTags","head","newNodes","temp","el","firstElementChild","removeChild","usedIds","oldTags","newEl","outerHTML","replaceChild","childs","nextElementSibling","insertBefore","version","Flash","slots","children","push","Head","watchKey","revision","getUniqueKey","watch","Teleport","to","Link","inheritAttrs","attrs","resolvedUrl","isExternal","indexOf","hostname","customProps","href","onClick","ev","button","metaKey","ctrlKey","shiftKey","altKey","PageComponent","loadingHtml","componentData","immediate","PageContent","ServerPartial","tag","pending","currentRevision","reason","deep","valueCache","requestCache","useOctoberFilter","refresh","filterName","toValue","cacheKey","cachedValue","cachedRequest","activeRequest","readonly","OctoberFilter","rootId","querySelector","readInitialPayload"],"mappings":"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"}
1
+ {"version":3,"file":"laika.cjs","sources":["../src/plugins/get-progress-bar.ts","../src/components/progress-bar.ts","../src/symbols.ts","../src/larajax.ts","../src/plugins/use-october.ts","../src/utils.ts","../src/plugins/use-router.ts","../src/state.ts","../src/plugins/use-component.ts","../src/app.ts","../src/components/flash.ts","../src/components/head.ts","../src/components/link.ts","../src/components/page-component.ts","../src/components/page-content.ts","../src/components/server-partial.ts","../src/plugins/use-october-filter.ts","../src/components/october-filter.ts","../src/laika.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["progress","reactive","color","active","percent","timestamp","progressTimer","getProgressBar","done","force","window","clearInterval","setTimeout","state","start","Date","now","setInterval","Math","max","round","fail","ProgressBar","defineComponent","name","setup","props","h","class","style","top","left","width","height","position","backgroundColor","transition","zIndex","LAIKA_OCTOBER_KEY","Symbol","LAIKA_ROUTER_KEY","requester","listenersInstalled","dispatch","element","detail","dispatchEvent","CustomEvent","bubbles","cancelable","collectFormData","form","data","FormData","forEach","value","rawName","isArray","endsWith","slice","Array","parseRequestData","trim","JSON","parse","result","expression","match","exec","key","raw","setLoading","loading","toggleAttribute","setAttribute","HTMLButtonElement","HTMLInputElement","disabled","async","runRequest","handler","getAttribute","hasAttribute","targets","partial","selector","parsePartialTargets","flash","Boolean","partials","Object","keys","preserveState","entries","html","undefined","target","from","document","querySelectorAll","innerHTML","updatePartialTargets","ok","error","handleSubmit","event","HTMLFormElement","matches","preventDefault","submitter","HTMLElement","handleClick","origin","Element","closest","FLASH_TYPES","Set","normalizeFlashType","severity","has","appendFlashMessage","type","message","current","messages","nextMessage","includes","joinUrl","base","path","test","startsWith","replace","encodeQuery","params","qs","URLSearchParams","k","v","set","String","str","toString","fillPattern","pattern","_","escapeSlash","val","encodedVal","encodeURIComponent","createOctober","getRuntime","router","applyPayload","placeholders","requireRuntime","runtime","Error","boot","october","payload","app","baseUrl","getLocalizationString","locale","site","fallbackLocale","localeStrings","strings","fallbackStrings","transformLocalizationString","string","replacements","rawKey","rawVal","replaceAll","uc","charAt","toUpperCase","transChoice","number","localeString","n","parts","split","map","s","filter","part","exact","Number","range","minRaw","maxRaw","text","min","Infinity","length","choosePluralForm","count","request","options","only","headers","join","response","location","pathname","search","method","json","ajax","__ajax","nextPayload","__laika","ajaxFlash","operation","ops","op","level","invalidMessages","values","invalid","flatMap","collectAjaxFlash","page","url","assign","reload","status","callFilter","content","api","theme","p","themeBaseUrl","persistence","oc","pages","currentParams","query","pageInfo","toLowerCase","routeParams","queryParams","link","btoa","media","file","encoded","mediaBaseUrl","resize","input","basePath","resizer","src","w","currency","num","isFinite","minimumFractionDigits","maximumFractionDigits","Intl","NumberFormat","format","trans","placeholder","defaultValue","hasPlaceholder","setPlaceholder","renderPartial","parameters","htmlLimit","maxLength","end","source","createElement","output","remaining","truncated","cloneNode","node","nodeType","Node","TEXT_NODE","characters","textContent","createTextNode","ELEMENT_NODE","clone","child","childNodes","childClone","appendChild","md","mdSafe","mdClean","mdIndent","trans_choice","md_safe","md_clean","md_indent","addEventListener","useOctober","inject","unwrapModule","mod","default","getByPath","obj","reduce","acc","setByPath","root","out","last","curOut","curIn","i","nextIn","nextOut","createRouter","hooks","prepare","Headers","Accept","token","csrfToken","laikaToken","require","Request","body","stringify","credentials","visit","onBefore","fetch","history","replaceState","pushState","onSuccess","err","onFailure","get","post","put","patch","delete","useRouter","shallowRef","cache","Map","useComponent","alias","existing","computed","components","loaded","cur","prototype","hasOwnProperty","call","exists","methods","vars","fallback","load","missing","nextTick","loadHtml","handle","Proxy","_t","prop","component","layout","ref","title","resolver","getLayout","setLayout","next","App","initialPayload","required","initialComponent","resolveComponent","Function","t","titleCallback","markRaw","Promise","resolve","then","catch","console","x","userComponent","childLayout","reverse","L","Fragment","plugin","install","self","this","componentsFacade","usePayload","createComponentsFacade","onRouterBefore","onRouterSuccess","onRouterFailure","provide","provideRouter","swap","provideOctober","defineProperty","config","globalProperties","shared","loc","header","currTheme","dataset","nextTheme","classList","remove","add","currLayout","nextLayout","currPage","nextPage","id","newTags","head","newNodes","temp","el","firstElementChild","removeChild","usedIds","oldTags","newEl","outerHTML","replaceChild","childs","nextElementSibling","insertBefore","version","Flash","slots","children","push","Head","watchKey","revision","getUniqueKey","watch","Teleport","to","Link","inheritAttrs","attrs","resolvedUrl","warn","isUnresolved","isExternal","indexOf","hostname","customProps","href","onClick","ev","button","metaKey","ctrlKey","shiftKey","altKey","PageComponent","loadingHtml","componentData","immediate","PageContent","ServerPartial","tag","pending","currentRevision","reason","deep","valueCache","requestCache","useOctoberFilter","refresh","filterName","toValue","cacheKey","cachedValue","cachedRequest","activeRequest","readonly","OctoberFilter","rootId","querySelector","readInitialPayload"],"mappings":"kCAEA,MAAMA,EAAWC,EAAAA,SAAS,CACtBC,MAAO,UACPC,QAAQ,EACRC,QAAS,EACTC,UAAW,IAEf,IAAIC,EAA+B,cAMnBC,IA0BZ,SAASC,EAAKC,GAAiB,GACvBH,IACAI,OAAOC,cAAcL,GACrBA,EAAgB,OAGfN,EAASG,QAAWM,KAIzBT,EAASI,QAAU,IAGnBM,OAAOE,WAAW,KACdZ,EAASG,QAAS,EAClBH,EAASI,QAAU,GACpB,KACP,CAWA,MAAO,CACHS,MAAOb,EACPc,MApDJ,WACId,EAASG,QAAS,EAClBH,EAASI,QAAU,GACnBJ,EAASK,UAAYU,KAAKC,MAEtBV,GACAI,OAAOC,cAAcL,GAIzBA,EAAgBI,OAAOO,YAAY,KAC1BjB,EAASG,QACVH,EAASI,QAAU,KACnBJ,EAASI,SAAWc,KAAKC,IAAI,EAAGD,KAAKE,MAAgC,KAAzB,GAAKpB,EAASI,aAE/D,IACP,EAqCII,OACAa,KATJ,WACIb,GAAK,EACT,EASJ,CCvEO,MAAMc,EAA+BC,EAAAA,gBAAgB,CAIxDC,KAAM,mBAON,KAAAC,CAAMC,GACF,MAAM1B,EAAWO,IACjB,MAAO,IACEP,EAASa,MAAMV,OAGTwB,EAAAA,EAAE,MAAO,CACZC,MAAO,qBACPC,MAAO,CACHC,IAAK,EACLC,KAAM,EACNC,MAAO,GAAGhC,EAASa,MAAMT,WACzB6B,OAAQ,SACRC,SAAU,QACVC,gBAAiB,6BAA6BnC,EAASa,MAAMX,SAC7DkC,WAAY,qBACZC,OAAQ,cAZhB,CAiBZ,IClCSC,EAAoBC,OAAO,iBAC3BC,EAAmBD,OAAO,gBCOvC,IAAIE,EAAqC,KACrCC,GAAqB,EA0BzB,SAASC,EAASC,EAAsBpB,EAAcqB,GAClD,OAAOD,EAAQE,cAAc,IAAIC,YAAYvB,EAAM,CAC/CwB,SAAS,EACTC,YAAY,EACZJ,WAER,CAOA,SAASK,EAAgBC,GACrB,MAAMC,EAAgC,CAAA,EAgBtC,OAdA,IAAIC,SAASF,GAAMG,QAAQ,CAACC,EAAOC,KAC/B,MAAMC,EAAUD,EAAQE,SAAS,MAC3BlC,EAAOiC,EAAUD,EAAQG,MAAM,GAAG,GAAMH,EAO9CJ,EAAK5B,GALCA,KAAQ4B,EAKDQ,MAAMH,QAAQL,EAAK5B,IAC1B,IAAI4B,EAAK5B,GAAoB+B,GAC7B,CAACH,EAAK5B,GAAO+B,GANFE,EAAU,CAACF,GAASA,IASlCH,CACX,CAOA,SAASS,EAAiBN,GACtB,IAAKA,GAAOO,OACR,MAAO,CAAA,EAGX,IACI,OAAOC,KAAKC,MAAMT,EACtB,CAAE,MACE,MAAMU,EAAkC,CAAA,EAClCC,EAAa,gFACnB,IAAIC,EAEJ,KAA4C,QAApCA,EAAQD,EAAWE,KAAKb,KAAkB,CAC9C,MAAMc,EAAMF,EAAM,IAAMA,EAAM,GACxBG,EAAMH,EAAM,IAAMA,EAAM,IAAM,GAC/BE,IAGLJ,EAAOI,GAAe,SAARC,GAAgC,UAARA,GAA0BA,EACpE,CAEA,OAAOL,CACX,CACJ,CAgCA,SAASM,EAAW3B,EAAsB4B,GACtC5B,EAAQ6B,gBAAgB,uBAAwBD,GAChD5B,EAAQ8B,aAAa,YAAaF,EAAU,OAAS,UAEjD5B,aAAmB+B,mBAAqB/B,aAAmBgC,oBAC3DhC,EAAQiC,SAAWL,EAE3B,CA0BAM,eAAeC,EAAWnC,EAAsBO,GAC5C,MAAM6B,EAAUpC,EAAQqC,aAAa,iBAAmB9B,GAAM8B,aAAa,gBAC3E,IAAKD,IAAYvC,GAAaG,EAAQsC,aAAa,wBAC/C,OAGJ,MAAMC,EAhEV,SAA6B5B,GACzB,IAAKA,GAAOO,OACR,MAAO,CAAA,EAGX,MAAMqB,EAA0B,CAAA,EAC1BjB,EAAa,mEACnB,IAAIC,EAEJ,KAA4C,QAApCA,EAAQD,EAAWE,KAAKb,KAAkB,CAC9C,MAAM6B,EAAUjB,EAAM,IAAMA,EAAM,GAC5BkB,EAAWlB,EAAM,GACnBiB,GAAWC,IACXF,EAAQC,GAAWC,EAE3B,CAEA,OAAOF,CACX,CA8CoBG,CACZ1C,EAAQqC,aAAa,wBAA0B9B,GAAM8B,aAAa,wBAA0B,MAE1F7B,EAAO,IACLD,EAAOD,EAAgBC,GAAQ,CAAA,KAChCU,EAAiBV,GAAM8B,aAAa,sBAAwB,SAC5DpB,EAAiBjB,EAAQqC,aAAa,uBAG7C,GAAKtC,EAASC,EAAS,cAAe,CAAEoC,UAAS5B,SAAjD,CAIAmB,EAAW3B,GAAS,GAEpB,IACI,MAAMqB,QAAexB,EAAUuC,EAAS,CACpC5B,OACAmC,MAAO3C,EAAQsC,aAAa,uBAAyBM,QAAQrC,GAAM+B,aAAa,uBAChFO,SAAUC,OAAOC,KAAKR,GACtBS,eAAe,KA7C3B,SAA8B3B,EAA8BkB,GACxD,IAAK,MAAOC,EAASC,KAAaK,OAAOG,QAAQV,GAAU,CACvD,MAAMW,EAAO7B,EAAOwB,SAASL,GAC7B,QAAaW,IAATD,EAIJ,IAAK,MAAME,KAAUpC,MAAMqC,KAAKC,SAASC,iBAA8Bd,IACnEW,EAAOI,UAAYN,CAE3B,CACJ,CAqCQO,CAAqBpC,EAAQkB,GAC7BxC,EAASC,EAASqB,EAAOqC,GAAK,eAAiB,aAAcrC,EACjE,CAAE,MAAOsC,GACL5D,EAASC,EAAS,aAAc,CAAEoC,UAASuB,SAC/C,SACIhC,EAAW3B,GAAS,GACpBD,EAASC,EAAS,gBAAiB,CAAEoC,WACzC,CAnBA,CAoBJ,CAOA,SAASwB,EAAaC,GAClB,MAAMtD,EAAOsD,EAAMT,kBAAkBU,gBAAkBD,EAAMT,OAAS,KACtE,IAAK7C,GAAMwD,QAAQ,kBACf,OAGJF,EAAMG,iBAED7B,EADa0B,EAAMI,qBAAqBC,YAAcL,EAAMI,UAAY1D,EAClDA,EAC/B,CAOA,SAAS4D,EAAYN,GACjB,MAAMO,EAASP,EAAMT,kBAAkBiB,QAAUR,EAAMT,OAAS,KAC1DpD,EAAUoE,GAAQE,QAAqB,mBACxCtE,GAAWA,aAAmB8D,kBAI9B9D,aAAmB+B,mBAAqB/B,aAAmBgC,mBACzDhC,EAAQO,MAAMwD,QAAQ,oBAI7BF,EAAMG,iBACD7B,EAAWnC,EAASA,EAAQsE,QAAQ,cAAWnB,GACxD,CC3NA,MAAMoB,EAAc,IAAIC,IAAgB,CAAC,OAAQ,QAAS,UAAW,YAOrE,SAASC,EAAmBC,GACxB,MAA2B,iBAAbA,GAAyBH,EAAYI,IAAID,GACjDA,EACA,MACV,CAQA,SAASE,EAAmBjC,EAAoBkC,EAAkBC,GAC9D,GAAuB,iBAAZA,IAAyBA,EAAQ5D,OACxC,OAGJ,MAAM6D,EAAUpC,EAAMkC,GAChBG,EAAWhE,MAAMH,QAAQkE,GAAWA,EAAUA,EAAU,CAACA,GAAW,GACpEE,EAAcH,EAAQ5D,OAEvB8D,EAASE,SAASD,KACnBtC,EAAMkC,GAAQ,IAAIG,EAAUC,GAEpC,CAwCA,SAASE,EAAQC,EAAcC,GAC3B,OAAKA,EAGD,kBAAkBC,KAAKD,IAGvBA,EAAKE,WAAW,MAAQF,EAAKE,WAAW,YAAcF,EAAKE,WAAW,SAAWF,EAAKE,WAAW,QAF1FF,EAKJ,GAAGD,EAAKI,QAAQ,OAAQ,OAAOH,EAAKG,QAAQ,OAAQ,MARhDJ,CASf,CAOA,SAASK,EAAYC,GACjB,MAAMC,EAAK,IAAIC,gBACf,IAAK,MAAOC,EAAGC,KAAMhD,OAAOG,QAAQyC,GAC5BI,SAGJH,EAAGI,IAAIF,EAAGG,OAAOF,IAErB,MAAMG,EAAMN,EAAGO,WACf,OAAOD,EAAM,IAAIA,IAAQ,EAC7B,CAQA,SAASE,EAAYC,EAAiBV,GAClC,OAAOU,EAAQZ,QAAQ,uBAAwB,CAACa,EAAG5E,KAC/C,MAAM6E,EAAc7E,EAAIX,SAAS,KACjCW,EAAMA,EAAIX,SAAS,KAAOW,EAAIV,MAAM,GAAG,GAAMU,EAE7C,MAAM8E,EAAMb,EAAOjE,GAGnB,UAFOiE,EAAOjE,GAEH,MAAP8E,EACA,MAAO,GAGX,MAAMC,EAAaC,mBAAmBT,OAAOO,IAC7C,OAAOD,EAAcE,EAAWhB,QAAQ,OAAQ,KAAOgB,GAE/D,UAWgBE,EACZC,EACAC,EACAC,GAEA,MAAMC,EAAezJ,EAAAA,SAAS,IAM9B,SAAS0J,IACL,MAAMC,EAAUL,IAChB,IAAKK,EACD,MAAM,IAAIC,MAAM,wCAEpB,OAAOD,CACX,CAMA,SAASE,IACL,MAAMF,EAA6CD,IAC7CI,EAAUH,EAAQI,SAASD,QACjC,IAAKA,EACD,MAAM,IAAIF,MAAM,+CAEpB,OAAOE,CACX,CAOA,SAASE,EAAIhC,GACT,OAAOF,EAAQ+B,IAAOI,QAASjC,EACnC,CA0JA,SAASkC,EAAsB9F,GAC3B,MAAMuF,EAAUD,IACVS,EAASR,EAAQI,SAASK,MAAMD,QAAU,GAC1CE,EAAiBV,EAAQI,SAASD,SAASO,gBAAkB,GAE7DC,EAAgBX,EAAQI,SAASD,SAASS,UAAUJ,IAAW,CAAA,EAC/DK,EAAkBb,EAAQI,SAASD,SAASS,UAAUF,IAAmB,CAAA,EAE/E,OAAIjG,KAAOkG,EACAA,EAAclG,GACdA,KAAOoG,EACPA,EAAgBpG,GAEhB,IAEf,CASA,SAASqG,EAA4BC,EAAgBC,GACjD,IAAKA,EACD,OAAOD,EAGX,IAAK,MAAOE,EAAQC,KAAWpF,OAAOG,QAAQ+E,GAAe,CACzD,GAAIE,QACA,SAGJ,MAAMzG,EAAMuE,OAAOiC,GACbtH,EAAQqF,OAAOkC,GAGrBH,EAASA,EAAOI,WAAW,IAAI1G,IAAOd,GAGtC,MAAMyH,EAAK3G,EAAI4G,OAAO,GAAGC,cAAgB7G,EAAIV,MAAM,GAInDgH,GAHAA,EAASA,EAAOI,WAAW,IAAIC,IAAMzH,EAAM0H,OAAO,GAAGC,cAAgB3H,EAAMI,MAAM,KAGjEoH,WAAW,IAAI1G,EAAI6G,gBAAiB3H,EAAM2H,cAC9D,CAEA,OAAOP,CACX,CA6EA,SAASQ,EAAY9G,EAAa+G,EAAgBR,GAC9C,IAAIS,EAAelB,EAAsB9F,GACzC,GAAqB,OAAjBgH,EACA,OAAOhH,EAIX,OAAOqG,EA3EX,SAA0BpG,EAAagH,GACnC,MAAMC,EAAQjH,EAAIkH,MAAM,KAAKC,IAAIC,GAAKA,EAAE5H,QAAQ6H,OAAOnG,SAEvD,IAAK,MAAMoG,KAAQL,EAAO,CAGtB,MAAMM,EAAQD,EAAKzH,MAAM,sBACzB,GAAI0H,EAAO,CAEP,GAAIP,IADQQ,OAAOD,EAAM,IAErB,OAAOA,EAAM,GAEjB,QACJ,CAGA,MAAME,EAAQH,EAAKzH,MAAM,wCACzB,GAAI4H,EAAO,CACP,MAAMC,EAASD,EAAM,GACfE,EAASF,EAAM,GACfG,EAAOH,EAAM,GAEbI,EAAiB,MAAXH,GAAiB,IAAYF,OAAOE,GAC1C7K,EAAiB,MAAX8K,EAAiBG,IAAWN,OAAOG,GAE/C,GAAIX,GAAKa,GAAOb,GAAKnK,EACjB,OAAO+K,EAEX,QACJ,CACJ,CAGA,OAAqB,IAAjBX,EAAMc,OACCd,EAAM,GAII,IAAjBA,EAAMc,OACQ,IAANf,EAAUC,EAAM,GAAKA,EAAM,GAIhCA,EAAMA,EAAMc,OAAS,EAChC,CA8BmBC,CAAiBjB,EAAcD,GACH,CAAEmB,MAAOnB,KAAWR,GACnE,CA6CA9F,eAAe0H,EACXxH,EACAyH,EAAiC,IAEjC,IAAK,4BAA4BvE,KAAKlD,GAClC,MAAM,IAAI6E,MAAM,yCAAyC7E,KAG7D,MAAM0H,EAAOD,EAAQC,MAAQ,CAAC,QAAS,aAAc,aAAc,aAAc,UAC3EC,EAAkC,CACpC,iBAAkB3H,EAClB,gBAAkC,IAAlByH,EAAQlH,MAAkB,IAAM,KAEhDkH,EAAQhH,UAAU4G,SAClBM,EAAQ,mBAAqBF,EAAQhH,SAASmH,KAAK,MAGvD,MAAMC,QAAiBrD,EAAOlF,IAAI5D,OAAOoM,SAASC,SAAWrM,OAAOoM,SAASE,OAAQ,CACjFC,OAAQ,OACR7J,KAAMqJ,EAAQrJ,MAAQ,CAAA,EACtBuJ,UACAD,OACA9G,cAAe6G,EAAQ7G,gBAAiB,IAEtCsH,QAAaL,EAASK,OACtBC,EAAQD,EAAKE,QAAU,GACvBC,EAAcH,EAAKI,QAKzB,UAHOJ,EAAKE,cACLF,EAAKI,QAERD,IAAiC,IAAlBZ,EAAQlH,MAAiB,CACxC,MAAMgI,EAnflB,SAA0BJ,GACtB,MAAM5H,EAAqB,CAAA,EAE3B,IAAK,MAAMiI,KAAcL,EAAKM,KAAO,GACZ,UAAjBD,EAAUE,IACVlG,EACIjC,EACA8B,EAAmBmG,EAAUG,OAASH,EAAUlG,UAChDkG,EAAUtB,MAAQsB,EAAU9F,SAKxC,MAAMkG,EAAkBlI,OAAOmI,OAAOV,EAAKW,SAAW,CAAA,GACjDC,QAASnG,GAAahE,MAAMH,QAAQmE,GAAYA,EAAW,CAACA,IAEjE,IAAK,MAAMF,KAAWkG,EAClBpG,EAAmBjC,EAAO,QAASmC,GAOvC,OAJkC,IAA9BhC,OAAOC,KAAKJ,GAAO8G,QAAwC,iBAAjBc,EAAKzF,SAC/CF,EAAmBjC,EAAO8B,EAAmB8F,EAAK7F,UAAW6F,EAAKzF,SAG/DnC,CACX,CA0d8ByI,CAAiBb,GAC/BzH,OAAOC,KAAK4H,GAAWlB,OAAS,GAAKgB,EAAYY,OACjDZ,EAAYY,KAAK1I,MAAQ,IACjB8H,EAAYY,KAAK1I,OAAS,MAC3BgI,GAGf,CAEIF,SACM5D,EAAa4D,EAAaX,GAGpC,MAAMjH,EAAmC,CAAA,EACzC,IAAK,MAAM+H,KAAcL,EAAKM,KAAO,GACZ,YAAjBD,EAAUE,IAA8C,iBAAnBF,EAAUhM,KAC/CiE,EAAS+H,EAAUhM,MAAQoH,OAAO4E,EAAU1H,MAAQ,IAC5B,aAAjB0H,EAAUE,IAAgD,iBAApBF,EAAU/G,MACvD/F,OAAOoC,cAAc,IAAIC,YAAYyK,EAAU/G,MAAO,CAAE5D,OAAQ2K,EAAU3K,UAClD,aAAjB2K,EAAUE,IAAqBF,EAAUU,IAChDxN,OAAOoM,SAASqB,OAAOvF,OAAO4E,EAAUU,MAChB,WAAjBV,EAAUE,IACjBhN,OAAOoM,SAASsB,SAIxB,IAAKvB,EAASvG,MAAQ,OAAQ6G,GAC1B,MAAM,IAAItD,MAAM,gCAAgCgD,EAASwB,YAG7D,MAAO,CACH/H,GAAI6G,EAAK7G,IAAMuG,EAASvG,GACxB+H,OAAQxB,EAASwB,OACjBjL,KAAM8J,EACNY,QAASX,EAAKW,SAAW,CAAA,EACzBpG,QAASyF,EAAKzF,SAAW,KACzBJ,SAAU6F,EAAK7F,UAAY,OAC3B7B,WAER,CA2GAX,eAAewJ,EAAW3C,EAAgB3B,GACtC,MAAM6C,QAAiBrD,EAAOlF,IAAI2F,EAAI,mBAAoB,CACtDgD,OAAQ,OACR7J,KAAM,CACFuI,SACA3B,aAGR,IAAK6C,EAASvG,GACV,MAAM,IAAIuD,MAAM,0BAA0B8B,OAAYkB,EAASwB,WAGnE,MAAMjL,QAAayJ,EAASK,OAC5B,GAAoB,YAAhB9J,EAAKiL,OACL,MAAM,IAAIxE,MAAM,0BAA0B8B,OAAYkB,EAASwB,cAAcjL,EAAKsE,SAAW,iCAGjG,OAAOtE,EAAKa,OAAOsK,OACvB,CAYA,MAAMC,EAAkB,CACpBvE,MACAwE,MAxhBJ,SAAsCxG,GAClC,OAAIrE,MAAMH,QAAQwE,GACPA,EAAKwD,IAAIiD,GAAK3G,EAAQ+B,IAAO6E,aAAcD,GAAK,KAEhD3G,EAAQ+B,IAAO6E,aAAc1G,EAE5C,EAmhBIgG,KA1gBJ,SAAczM,EAAsB,KAAM8G,EAAc,CAAA,EAAIsG,GAAuB,GAC/E,MAAMC,EAAK/E,IACLgF,EAAQD,EAAGC,OAAS,CAAA,EACpBC,EAAgB,IAAMF,EAAGE,eAAiB,CAAA,GAWhD,GATsB,kBAAXzG,IACPsG,EAActG,EACdA,EAAS,CAAA,GAERA,GAA4B,iBAAXA,IAAuB1E,MAAMH,QAAQ6E,KACvDA,EAAS,CAAA,IAIR9G,EAAM,CACP,MAAM0M,EAAMvE,IAAiBK,SAASiE,MAAMC,KAAO,IAC7Cc,EAAQ3G,EAAYC,GAC1B,OAAK0G,EAIEd,GAAOA,EAAIpG,SAAS,KAAO,IAAIkH,EAAMrL,MAAM,KAAOqL,GAH9Cd,CAIf,CAEA,GAAoB,iBAAT1M,EACP,OAIJ,MAAMyN,EAAWH,EADjBtN,EAAOA,EAAK0N,eAEZ,IAAKD,GAAUjG,QACX,OAGJ,MAAMmG,EAAcP,EAAc,IAAKG,KAAkBzG,GAAW,IAAKA,GACnE8G,EAAc,IAAK9G,GACnBL,EAAOc,EAAYkG,EAASjG,QAASmG,GAM3C,OAFApG,EAAYkG,EAASjG,QAASoG,GAEvBnF,EAAIhC,GAAQI,EAAY+G,EACnC,EAgeIC,KAzdJ,SAAcpH,GACV,GAAIA,EAAKE,WAAW,QAChB,OAAOF,EACJ,CACH,MAAM2B,EAAUD,IAChB,OAAOM,EAAI,yBAAyBqF,KAAKrH,YAAe2B,EAAQI,SAASiE,MAAMQ,OAAS,MAC5F,CACJ,EAmdIc,MA5cJ,SAAeC,GACX,MAAMX,EAAK/E,IAGL2F,GAFO,IAAM7G,OAAO4G,GAAQ,IAAIpH,QAAQ,MAAO,KAAKA,QAAQ,OAAQ,KACvDoD,MAAM,KAAKC,IAAKiD,GAAMrF,mBAAmBqF,IACtC9B,KAAK,KAAKxE,QAAQ,OAAQ,KAChD,OAAOL,EAAQ8G,EAAGa,aAAcD,EACpC,EAucIE,OA7bJ,SAAgBC,EAAe5N,EAAuB,KAAMC,EAAwB,KAAMwK,EAA+B,IACrH,MAAMoC,EAAK/E,IACL+F,EAAWhB,EAAGiB,SAASD,UAAY,UAEnCb,EAA6B,CAAEe,IAAKH,GAC7B,MAAT5N,IACAgN,EAAMgB,EAAIhO,GAEA,MAAVC,IACA+M,EAAMrN,EAAIM,GAEd,IAAK,MAAOoC,EAAK8E,KAAQzD,OAAOG,QAAQ4G,GAAW,CAAA,GAC/CuC,EAAM,KAAK3K,KAAS8E,EAGxB,OAAOc,EAAI4F,EAAWxH,EAAY2G,GACtC,EA8aIiB,SAtaJ,SAAkB1M,EAAwBkJ,EAA2B,IACjE,MAAMyD,EAAuB,iBAAV3M,EAAqBA,EAAQuI,OAAOlD,OAAOrF,GAAO6E,QAAQ,IAAK,MAClF,IAAK0D,OAAOqE,SAASD,GACjB,OAAOtH,OAAOrF,GAGlB,MAAM6G,OACFA,EAAS,QAAO6F,SAChBA,EAAW,MAAKpO,MAChBA,EAAQ,WAAUuO,sBAClBA,EAAqBC,sBACrBA,GACA5D,EAEJ,OAAO,IAAI6D,KAAKC,aAAanG,EAAQ,CACjCvI,QACAoO,WACAG,wBACAC,0BACDG,OAAON,EACd,EAmZIO,MA7RJ,SAAepM,EAAauG,GACxB,IAAIS,EAAelB,EAAsB9F,GACzC,OAAqB,OAAjBgH,EACOhH,EAGJqG,EAA4BW,EAAcT,EACrD,EAuRIO,cACAuF,YA/PJ,SAAqBlP,EAAcmP,EAAoB,MACnD,MAAM/G,EAAUD,IAChB,OAAInI,KAASoI,EAAQI,SAASiE,MAAMvE,cAAgB,CAAA,IACxCE,EAAQI,SAASiE,MAAMvE,cAAgB,CAAA,GAAIlI,GAC5CA,KAAQkI,EACRA,EAAalI,GAEbmP,CAEf,EAuPIC,eAhPJ,SAAwBpP,GACpB,MAAMoI,EAAUD,IAChB,OAAOnI,KAASoI,EAAQI,SAASiE,MAAMvE,cAAgB,CAAA,IAAOlI,KAAQkI,CAC1E,EA8OImH,eAtOJ,SAAwBrP,EAAc+B,GAClCmG,EAAalI,GAAQ+B,CACzB,EAqOIiJ,UACAsE,cA/IJhM,eAA6BtD,EAAcuP,EAAsC,IAC7E,MAAM9M,QAAeuI,EAA2B,uBAAwB,CACpEpJ,KAAM,CAAE5B,OAAMuP,cACdrE,KAAM,CAAC,SACP9G,eAAe,IAEnB,IAAK3B,EAAOqC,GACR,MAAM,IAAIuD,MAAM5F,EAAOyD,SAAW,6BAA6BlG,KAEnE,OAAOyC,EAAOb,KAAK0C,MAAQ,EAC/B,EAsIIyI,QA9HJzJ,eAAuBtD,EAAcuP,EAAsC,IACvE,MAAM9M,QAAeuI,EAA2B,uBAAwB,CACpEpJ,KAAM,CAAE5B,OAAMuP,cACdrE,KAAM,CAAC,SACP9G,eAAe,IAEnB,IAAK3B,EAAOqC,GACR,MAAM,IAAIuD,MAAM5F,EAAOyD,SAAW,6BAA6BlG,KAEnE,OAAOyC,EAAOb,KAAK0C,MAAQ,EAC/B,EAqHI6F,OArBJ,SAAgBnK,EAAmD+M,GAC/D,OAAOD,EAAW9M,EAAM,CAAE+M,WAC9B,EAoBIyC,UA7GJ,SAAmBlL,EAAcmL,EAAoB,IAAKC,EAAc,OACpE,GAAID,GAAa,EACb,OAAOC,EAGX,MAAMC,EAASjL,SAASkL,cAAc,YACtCD,EAAO/K,UAAYN,EACnB,MAAMuL,EAASnL,SAASkL,cAAc,OACtC,IAAIE,EAAYL,EACZM,GAAY,EAEhB,MAAMC,EAAaC,IACf,GAAIF,EACA,OAAO,KAEX,GAAIE,EAAKC,WAAaC,KAAKC,UAAW,CAClC,MAAMC,EAAajO,MAAMqC,KAAKwL,EAAKK,aAAe,IAClD,OAAID,EAAWxF,QAAUiF,GACrBA,GAAaO,EAAWxF,OACjBnG,SAAS6L,eAAeF,EAAWjF,KAAK,OAGnD2E,GAAY,EACLrL,SAAS6L,eAAeF,EAAWlO,MAAM,EAAG2N,GAAW1E,KAAK,IAAMsE,GAC7E,CACA,GAAIO,EAAKC,WAAaC,KAAKK,aACvB,OAAOP,EAAKD,WAAU,GAG1B,MAAMS,EAAQR,EAAKD,WAAU,GAC7B,IAAK,MAAMU,KAAStO,MAAMqC,KAAKwL,EAAKU,YAAa,CAC7C,MAAMC,EAAaZ,EAAUU,GAI7B,GAHIE,GACAH,EAAMI,YAAYD,GAElBb,EACA,KAER,CACA,OAAOU,GAGX,IAAK,MAAMC,KAAStO,MAAMqC,KAAKkL,EAAO5C,QAAQ4D,YAAa,CACvD,MAAMF,EAAQT,EAAUU,GAIxB,GAHID,GACAZ,EAAOgB,YAAYJ,GAEnBV,EACA,KAER,CAEA,OAAOF,EAAOjL,SAClB,EAyDIkM,GAAK/D,GAAYD,EAAW,KAAM,CAAEC,YACpCgE,OAAShE,GAAYD,EAAW,UAAW,CAAEC,YAC7CiE,QAAUjE,GAAYD,EAAW,WAAY,CAAEC,YAC/CkE,SAAWlE,GAAYD,EAAW,YAAa,CAAEC,YAGjDmE,aAAcvH,EACdwH,QAAUpE,GAAYD,EAAW,UAAW,CAAEC,YAC9CqE,SAAWrE,GAAYD,EAAW,WAAY,CAAEC,YAChDsE,UAAYtE,GAAYD,EAAW,YAAa,CAAEC,aAKtD,ODxuBA9L,ECsuBqB+L,EAAIhC,QDpuBrB9J,GAA0C,oBAAbwD,WAIjCxD,GAAqB,EACrBwD,SAAS4M,iBAAiB,SAAUtM,GACpCN,SAAS4M,iBAAiB,QAAS/L,ICguB5ByH,CACX,UAegBuE,IACZ,MAAMvJ,EAASwJ,EAAAA,OAAY1Q,EAAmB,MAC9C,IAAKkH,EACD,MAAM,IAAIK,MAAM,yCAIpB,OAAOL,CACX,CC7wBM,SAAUyJ,EAAgBC,GAC5B,OAAOA,GAAKC,SAAWD,CAC3B,CAqBM,SAAUE,EAAUC,EAAUpL,GAChC,OAAOA,EAAKuD,MAAM,KAAK8H,OAAO,CAACC,EAAKlP,IAAgB,MAAPkP,OAAcxN,EAAYwN,EAAIlP,GAAOgP,EACtF,UAQgBG,EAAUC,EAAWxL,EAAc1E,GAC/C,MAAMgI,EAAQtD,EAAKuD,MAAM,KACzB,IAAKD,EAAMc,OACP,OAAOoH,EAGX,MAAMC,EAAM9P,MAAMH,QAAQgQ,GAAQA,EAAK9P,QAAU,IAAM8P,GAAQ,CAAA,GACzDE,EAAOpI,EAAMA,EAAMc,OAAS,GAElC,IAAIuH,EAAcF,EACdG,EAAaJ,GAAQ,CAAA,EAEzB,IAAK,IAAIK,EAAI,EAAGA,EAAIvI,EAAMc,OAAS,EAAGyH,IAAK,CACvC,MAAMzP,EAAMkH,EAAMuI,GAEZC,EAASF,IAAQxP,GACvB,IAAI2P,EAGAA,EADApQ,MAAMH,QAAQsQ,GACJA,EAAOpQ,QACVoQ,GAA4B,iBAAXA,EACd,IAAKA,GAEL,CAAA,EAGdH,EAAOvP,GAAO2P,EACdJ,EAASI,EACTH,EAAQE,CACZ,CAGA,OADAH,EAAOD,GAAkBpQ,EAClBmQ,CACX,CC7DM,SAAUO,EAAa1K,EAA4C2K,GAmBrE,SAASC,EAAQjG,EAAazB,EAAe,IACzC,MAAM7C,EAfV,WACI,MAAMA,EAAUL,IAChB,IAAKK,EACD,MAAM,IAAIC,MAAM,mCAEpB,OAAOD,CACX,CASoBD,GACVsD,GAAUR,EAAQQ,QAAU,OAAO/B,cACnC9H,EAAOqJ,EAAQrJ,WAAQ2C,EAGvB4G,EAAmB,IAAIyH,QAAQ,CACjCC,OAAQ,mBACR,mBAAoB,iBACpB,UAAW,OACP5H,EAAQE,SAAW,KAGrB2H,EAAQ1K,EAAQI,SAASsK,MAC/B,GAAIA,EAAO,CACP,MAAOC,EAAWC,GAAcF,EAAM9I,MAAM,KAC5CmB,EAAQhE,IAAI,eAAgB4L,GAC5B5H,EAAQhE,IAAI,gBAAiB6L,EACjC,CAiBA,OAhBI/H,EAAQhM,OACRkM,EAAQhE,IAAI,gBAAiB,KAE7B8D,EAAQgI,SAASpI,QACjBM,EAAQhE,IAAI,kBAAmB8D,EAAQgI,QAAQ7H,KAAK,MAEpDH,EAAQC,MAAML,QACdM,EAAQhE,IAAI,eAAgB8D,EAAQC,KAAKE,KAAK,MAE9CH,EAAQ7G,eACR+G,EAAQhE,IAAI,yBAA0B,KAE3B,QAAXsE,GACAN,EAAQhE,IAAI,eAAgB,oBAGzB,IAAI+L,QAAQxG,EAAK,CACpBjB,OAAQA,EAAO/B,cACfyB,UACAgI,KAAiB,QAAX1H,EAAmBlJ,KAAK6Q,UAAUxR,GAAQ,CAAA,GAAM,KACtDyR,YAAa,eAErB,CAqBA/P,eAAegQ,EAAM5G,EAAazB,EAAe,IAC7C,MAAMD,EAAmB2H,EAAQjG,EAAKzB,GAGtC,IAAII,EACJ,UACUqH,EAAMa,SAASvI,GAGrBK,QAAiBmI,MAAMxI,GAGA,QAAnBA,EAAQS,SACJR,EAAQrE,QACR6M,QAAQC,aAAa,GAAI,GAAIhH,GAE7B+G,QAAQE,UAAU,GAAI,GAAIjH,UAK5BgG,EAAMkB,UAAU5I,EAASK,EACnC,CAAE,MAAOwI,GAEL,YADMnB,EAAMoB,UAAUD,EAAK7I,EAASK,GAC9BwI,CACV,CACJ,CAGA,MAAO,CACH/Q,IA5CJQ,eAAmBoJ,EAAazB,EAAe,IAC3C,MAAMD,EAAmB2H,EAAQjG,EAAKzB,GACtC,IACI,aAAauI,MAAMxI,EACvB,CAAE,MAAO6I,GACL,MAAMA,CACV,CACJ,EAsCIP,QACAS,IAAK,CAACrH,EAAazB,IAAkBqI,EAAM5G,EAAK,IAAMzB,GAAW,CAAA,EAAKQ,OAAQ,QAC9EuI,KAAM,CAACtH,EAAa9K,EAAYqJ,IAAkBqI,EAAM5G,EAAK,IAAMzB,GAAW,CAAA,EAAKQ,OAAQ,OAAQ7J,SACnGqS,IAAK,CAACvH,EAAa9K,EAAYqJ,IAAkBqI,EAAM5G,EAAK,IAAMzB,GAAW,CAAA,EAAKQ,OAAQ,MAAO7J,SACjGsS,MAAO,CAACxH,EAAa9K,EAAYqJ,IAAkBqI,EAAM5G,EAAK,IAAMzB,GAAW,CAAA,EAAKQ,OAAQ,QAAS7J,SACrGuS,OAAQ,CAACzH,EAAa9K,EAAYqJ,IAAkBqI,EAAM5G,EAAK,IAAMzB,GAAW,CAAA,EAAKQ,OAAQ,SAAU7J,SAE/G,UAegBwS,IACZ,MAAMpM,EAASwJ,EAAAA,OAAYxQ,EAAkB,MAC7C,IAAKgH,EACD,MAAM,IAAIK,MAAM,0CAIpB,OAAOL,CACX,CClJO,MAAMQ,EAAU6L,EAAAA,aCAjBC,EAAQ,IAAIC,IAEZ,SAAUC,EAAaC,GACzB,MAAMC,EAAWJ,EAAMP,IAAIU,GAC3B,GAAIC,EACA,OAAOA,EAIX,MAAM1M,EAASoM,IACT7L,EAAUgJ,IAGVpL,EAAUwO,EAAAA,SAAS,IAAMnM,EAAQzG,OAAO6S,aAAaH,IAAU,MAOrE,SAASI,EAAOhS,GACZ,MAAMiS,EAAW3O,EAAQpE,MACzB,QAAK+S,GAAK5U,OAGCgE,OAAO6Q,UAAUC,eAAeC,KAAKH,EAAI5U,MAAO2C,EAE/D,CAOA,SAASqS,EAAOrS,GACZ,MAAMiS,EAAW3O,EAAQpE,MACzB,QAAK+S,OAIDA,EAAI5U,SAAU2C,KAAOiS,EAAI5U,aAKzBkC,MAAMH,QAAQ6S,EAAIK,WAAYL,EAAIK,QAAQ7O,SAASzD,QAGnDT,MAAMH,QAAQ6S,EAAIM,QAASN,EAAIM,KAAK9O,SAASzD,KAIrD,CAQA,SAASkR,EAAalR,EAAawS,GAC/B,MAAMP,EAAW3O,EAAQpE,MACzB,OAAK+S,GAAK5U,OAGE2C,KAAOiS,EAAI5U,MAAU4U,EAAI5U,MAAM2C,GAFhCwS,CAIf,CAOA/R,eAAegS,EAAKnR,GAChB,MACMoR,GADOnT,MAAMH,QAAQkC,GAAQA,EAAO,CAACA,IACtBgG,OAAOtH,IAAQgS,EAAOhS,IAC3C,IAAK0S,EAAQ1K,OACT,OAGJ,MAAMK,EAAOqK,EAAQtL,IAAIpH,GAAO,cAAc4R,WAAe5R,KAQ7D,aAPMmF,EAAO+L,IAAI7U,OAAOoM,SAASC,SAAWrM,OAAOoM,SAASE,OAAQ,CAChEN,OACA9G,eAAe,EACfwC,SAAS,UAEP4O,aAEFpT,MAAMH,QAAQkC,GACPgC,EAAQpE,OAAO7B,MAEfiG,EAAQpE,OAAO7B,MAAMiE,EAEpC,CAKAb,eAAemS,IACX,YAA4BlR,IAAxB4B,EAAQpE,OAAOuC,KACR6B,EAAQpE,MAAMuC,YAGnB0D,EAAO+L,IAAI7U,OAAOoM,SAASC,SAAWrM,OAAOoM,SAASE,OAAQ,CAChEN,KAAM,CAAC,cAAcuJ,UACrBrQ,eAAe,EACfwC,SAAS,UAEP4O,aAECrP,EAAQpE,OAAOuC,MAAQ,GAClC,CAEA,MAAMoR,EAAS,IAAIC,MAAM,GAA8B,CACnD,GAAA5B,CAAI6B,EAAIC,GACJ,GAAa,QAATA,EACA,OAAO9B,EAEX,GAAa,SAAT8B,EACA,OAAOP,EAEX,GAAa,aAATO,EACA,OAAOJ,EAEX,GAAa,WAATI,EACA,OAAOhB,EAEX,GAAa,WAATgB,EACA,OAAOX,EAEX,GAAa,YAATW,EACA,MAAO,CAACrS,EAAiByH,IAAkB1C,EAAQyC,QAAQ,GAAGyJ,MAAUjR,IAAWyH,GAGvF,MAAM6J,EAAW3O,EAAQpE,MACzB,OAAO+S,EAAMA,EAAIe,QAAetR,CACpC,EACA,GAAAwB,CAAI6P,EAAIC,GACJ,GAAa,QAATA,GAA2B,SAATA,GAA4B,aAATA,GAAgC,WAATA,GAA8B,WAATA,GAA8B,YAATA,EACtG,OAAO,EACJ,CACH,MAAMf,EAAW3O,EAAQpE,MACzB,QAAS+S,GAAOe,KAAQf,CAC5B,CACJ,IAIJ,OADAR,EAAMnN,IAAIsN,EAAOiB,GACVA,CACX,CCvHA,MAAMI,EAAYzB,EAAAA,aACZ0B,EAAS1B,EAAAA,WAAgB,MACzBxR,EAAMmT,EAAAA,SAAwBzR,GAG9B6D,EAAwB,CAC1B,aAAI0N,GAAc,OAAOA,EAAU/T,KAAO,EAC1C,WAAIyG,GAAY,OAAOA,EAAQzG,KAAO,EACtC,UAAIgU,GAAW,OAAOA,EAAOhU,KAAO,EACpC,OAAIc,GAAQ,OAAOA,EAAId,KAAO,EAC9BkU,MAAQA,GAAkBA,EAC1BC,SAAU,KAAQ,MAAM,IAAI7N,MAAM,oBAClC8N,UAAW,IAAMJ,EAAOhU,MACxBqU,UAAYC,IAAgBN,EAAOhU,MAAQsU,IAI/C,IAAIrO,EACAO,EAGG,MAAM+N,EAAyBvW,EAAAA,gBAAgB,CAIlDC,KAAM,QAKNE,MAAO,CACHqW,eAAgB,CACZtQ,KAAM/B,OACNsS,UAAU,GAEdC,iBAAkB,CACdxQ,KAAM/B,OACNsS,UAAU,GAEdE,iBAAkB,CACdzQ,KAAM0Q,SACNH,UAAU,GAEdP,MAAO,CACHhQ,KAAM0Q,SACNH,UAAU,EACV7E,QAAUiF,GAAcA,IAShC3W,MAAK,EAACsW,eAAEA,EAAcE,iBAAEA,EAAgBC,iBAAEA,EAAkBT,MAAOY,MAC/DrO,EAAQzG,MAAQwU,EAChB1T,EAAId,WAAQ,EAGZ+T,EAAU/T,MAAQ0U,EAAmBK,EAAAA,QAAQrF,EAAgCgF,SAAqB,EAC7FX,EAAU/T,OACXgV,QACKC,QAAQN,EAAiBH,EAAe9J,KAAKqJ,YAC7CmB,KAAKvF,IAASoE,EAAU/T,MAAQ+U,EAAAA,QAAQrF,EAAgCC,MACxEwF,MAAMC,QAAQpS,OAEvBqD,EAAQ6N,MAAQY,GAAiBzO,EAAQ6N,MACzC7N,EAAQ8N,SAAWQ,EAGf,SAAUH,GAAkB,UAAWA,EAAe9J,OACtD/H,SAASuR,OAAS7N,EAAQ6N,OAAK,CAAMmB,GAAMA,IAAIb,EAAe9J,KAAKwJ,QAAU,IAIjF/W,OAAOoS,iBAAiB,WAAY,IAAMpS,OAAOoM,SAASsB,UAGnD,KACH,IAAKkJ,EAAU/T,QAAUyG,EAAQzG,MAC7B,OAAO,KAGX,MAAM7B,EAAQsI,EAAQzG,MAAM0K,KAAKvM,OAAS,CAAA,EACpCwQ,EAAQvQ,IAAE2V,EAAU/T,MAAO,IAAM7B,EAAe2C,IAAKA,EAAId,QAS/D,IAAIsV,EANAtB,EAAOhU,QACP+T,EAAU/T,MAAMgU,OAASA,EAAOhU,MAChCgU,EAAOhU,MAAQ,MAMnB,MAAMuV,EAAcxB,EAAU/T,MAAMgU,OACpC,GAAKuB,EAEE,GAA2B,mBAAhBA,EACdD,EAAgBC,EAAYnX,EAAAA,EAAGuQ,OAC5B,CAEH2G,GADiBjV,MAAMH,QAAQqV,GAAeA,EAAc,CAACA,IAExDnV,QACAoV,UACAzF,OAAc,CAACC,EAAKyF,IAAMrX,IAAEqX,EAAG,IAAMtX,GAAiB,IAAM6R,GAAMrB,EAC3E,MATI2G,EAAgB3G,EAYpB,OAAOvQ,EAAAA,EAAEsX,EAAAA,SAAU,KAAM,CACrBtX,EAAAA,EAAEL,GACFuX,QAwCT,MAAMK,EAAyB,CAKlC,OAAAC,CAAQlP,GACJ,MAAMmP,EAAOC,KACP9P,EAAa,IAAMK,EAGnB0P,aAvCV,MAAMlD,WAAEA,GAAemD,IAEvB,OAAO,IAAIpC,MAAM,GAAwB,CACrC5B,IAAG,CAAC6B,EAAIC,IACS,QAATA,EACQpB,KAAoBG,EAAW7S,OAAS0S,KAASG,EAAW7S,MAE3D,QAAT8T,EACQpB,GACCG,EAAW7S,OAAW0S,KAASG,EAAW7S,MAGpCyS,EAAaC,GAFb,KAOH,iBAAToB,EAGNjB,EAAW7S,OAAW8T,KAAQjB,EAAW7S,MACnCyS,EAAaqB,GADqC,UAH7D,GAOR,CAeiCmC,GACnBxZ,EAAWO,IAGjBiJ,EAASyK,EAAa1K,EAAY,CAC9BwL,SAAUjQ,MAAO0H,IACbxM,EAASc,cACHsY,EAAKK,eAAejN,IAE9B4I,UAAWtQ,MAAO0H,EAASK,KACvB7M,EAASQ,aACH4Y,EAAKM,gBAAgBlN,EAASK,IAExCyI,UAAWxQ,MAAO0H,EAASK,KACvB7M,EAASqB,aACH+X,EAAKO,gBAAgBnN,EAASK,MH9E9C,SAAwBrD,EAAaS,GACvCA,EAAI2P,QAAQpX,EAAkBgH,EAClC,CG+EQqQ,CAAcrQ,EAAQS,GAGtBF,EAAUT,EACNC,EACAC,EACA1E,MAAOuI,EAAaX,IAAS2M,KAAKS,KAAKzM,GAA6B,EAAMX,ILmiBhF,SAAyBlD,EAAaS,GACxCA,EAAI2P,QAAQtX,EAAmBkH,EACnC,CKniBQuQ,CAAehQ,EAASE,GAGxBvE,OAAOsU,eAAe/P,EAAIgQ,OAAOC,iBAAkB,SAAU,CACzD3E,IAAK,IAAM3L,IAEflE,OAAOsU,eAAe/P,EAAIgQ,OAAOC,iBAAkB,UAAW,CAC1D3E,IAAK,IAAM/L,IAEf9D,OAAOsU,eAAe/P,EAAIgQ,OAAOC,iBAAkB,WAAY,CAC3D3E,IAAK,IAAM3L,EAAQI,UAEvBtE,OAAOsU,eAAe/P,EAAIgQ,OAAOC,iBAAkB,QAAS,CACxD3E,IAAK,IAAM3L,EAAQI,SAASK,MAAQ,CAAA,IAExC3E,OAAOsU,eAAe/P,EAAIgQ,OAAOC,iBAAkB,SAAU,CACzD3E,IAAK,IAAM3L,EAAQI,SAASyE,OAAS,CAAA,IAEzC/I,OAAOsU,eAAe/P,EAAIgQ,OAAOC,iBAAkB,QAAS,CACxD3E,IAAK,IAAM3L,EAAQI,SAASiE,MAAQ,CAAA,IAExCvI,OAAOsU,eAAe/P,EAAIgQ,OAAOC,iBAAkB,cAAe,CAC9D3E,IAAK,IAAM+D,IAEf5T,OAAOsU,eAAe/P,EAAIgQ,OAAOC,iBAAkB,WAAY,CAC3D3E,IAAK,IAAMxL,IAEfrE,OAAOsU,eAAe/P,EAAIgQ,OAAOC,iBAAkB,UAAW,CAC1D3E,IAAK,IAAM3L,EAAQI,SAASmQ,QAAU,CAAA,GAE9C,EAMA,oBAAMV,CAAejN,GAErB,EAOA,qBAAMkN,CAAgBlN,EAASK,GAG3B,GAAwB,MAApBA,EAASwB,OAAgB,CACzB,MAAM+L,EAAMvN,EAASF,QAAQ4I,IAAI,oBAIjC,MAHI6E,GACA1Z,OAAOoM,SAASqB,OAAOiM,GAErB,IAAIvQ,MAAM,iBACpB,CAEA,IAAKgD,EAASvG,GAEV,MADA5F,OAAOoM,SAASqB,OAAO3B,EAAQ0B,KACzB,IAAIrE,MAAM,uBAGpB,MAAM6C,GJhRkB2N,EIiRpB7N,EAAQG,QAAQ4I,IAAI,iBAAmB1I,EAASF,QAAQ4I,IAAI,iBJ7QzD8E,EAAO7O,MAAM,KAAKC,IAAIC,GAAKA,EAAE5H,QAAQ6H,OAAOnG,SAF5C,GAFT,IAA0B6U,EImRxB,MAAMjX,QAAcyJ,EAASK,OACvBtH,EAAkE,MAAlD4G,EAAQG,QAAQ4I,IAAI,gCACpC8D,KAAKS,KAAK1W,EAAMwC,EAAe8G,EACzC,EAOA,qBAAMiN,CAAgBnN,EAASK,GAE/B,EAQA,UAAMiN,CAAKzM,EAA2BzH,EAAyB8G,GAC3D,GAAI,SAAUW,GAAeA,EAAYY,MAAMqJ,UAAW,CACtD,MAAMpE,QAAYtJ,EAAQ8N,SAASrK,EAAYY,KAAKqJ,WACpDA,EAAU/T,MAAQ+U,EAAAA,QAAQrF,EAAgCC,GAC9D,CAUA,GAPIxG,GAAQA,EAAKL,QAAUrC,EAAQzG,MAC/ByG,EAAQzG,MAAQ8V,KAAK3D,MAAM1L,EAAQzG,MAAO8J,EAAaX,GAEvD1C,EAAQzG,MAAQ8J,EAIhB,SAAUA,GAAeA,EAAYY,KAAM,CAC3C,MAAMqM,EAAYpU,SAASyO,KAAK4F,QAAQ9L,MAClC+L,GAAanN,EAAYY,KAAKQ,OAAS,IAAI3K,OAAOoL,cACpDoL,IAAcE,GAA2B,KAAdA,IAC3BtU,SAASyO,KAAK8F,UAAUC,OAAO,SAASJ,KACxCpU,SAASyO,KAAK8F,UAAUE,IAAI,SAASH,KACrCtU,SAASyO,KAAK4F,QAAQ9L,MAAQ+L,GAGlC,MAAMI,EAAa1U,SAASyO,KAAK4F,QAAQhD,OACnCsD,GAAcxN,EAAYY,KAAKsJ,QAAU,IAAIzT,OAAOoL,cACtD0L,IAAeC,GAA6B,KAAfA,IAC7B3U,SAASyO,KAAK8F,UAAUC,OAAO,UAAUE,KACzC1U,SAASyO,KAAK8F,UAAUE,IAAI,UAAUE,KACtC3U,SAASyO,KAAK4F,QAAQhD,OAASsD,GAGnC,MAAMC,EAAW5U,SAASyO,KAAK4F,QAAQtM,KACjC8M,GAAY1N,EAAYY,KAAK+M,IAAM,IAAIlX,OAAOoL,cAChD4L,IAAaC,GAAyB,KAAbA,IACzB7U,SAASyO,KAAK8F,UAAUC,OAAO,QAAQI,KACvC5U,SAASyO,KAAK8F,UAAUE,IAAI,QAAQI,KACpC7U,SAASyO,KAAK4F,QAAQtM,KAAO8M,GAIjC,MAAME,EAAU,IAAM5N,EAAYY,KAAKiN,MAAQ,CAAA,GACzCC,EAAW,IAAIpF,IAEfqF,EAAOlV,SAASkL,cAAc,QACpC,IAAK,MAAO4J,EAAIlV,KAASJ,OAAOG,QAAQoV,GAAU,CAC9CG,EAAKhV,UAAYN,EAAKhC,OACtB,MAAMuX,EAAKD,EAAKE,kBACXD,IAILA,EAAG3W,aAAa,gBAAiBsW,GACjCI,EAAKG,YAAYF,GAEjBF,EAASxS,IAAIqS,EAAIK,GACrB,CAGA,MAAMG,EAAU,IAAIpU,IACdqU,EAAUvV,SAASgV,KAAK/U,iBAA8B,mBAC5D,IAAK,MAAMkV,KAAMhO,EAAYY,KAAKiN,KAAOtX,MAAMqC,KAAKwV,GAAW,GAAI,CAC/D,MAAMT,EAAKK,EAAGpW,aAAa,iBAC3B,IAAK+V,EACD,SAGJ,MAAMU,EAAQP,EAAS5F,IAAIyF,GACtBU,GAKLF,EAAQb,IAAIK,GACRK,EAAGM,YAAcD,EAAMC,WAI3BzV,SAASgV,KAAKU,aAAaF,EAAOL,IAT9BA,EAAGX,QAUX,CAGA,MAAMmB,EAAS3V,SAASgV,KAAK/U,iBAA8B,mBACrDwN,EAAOkI,EAAOxP,OAAS,EAAIwP,EAAOA,EAAOxP,OAAO,IAAIyP,mBAAqB,KAC/E,IAAK,MAAOd,EAAIK,KAAOhO,EAAYY,KAAKiN,KAAOC,EAAW,GACjDK,EAAQjU,IAAIyT,KACTrH,EACAzN,SAASgV,KAAKa,aAAaV,EAAI1H,GAE/BzN,SAASgV,KAAK7I,YAAYgJ,GAI1C,CAGA,GAAI,SAAUhO,GAAe,UAAWA,EAAYY,KAAM,CACtD,MAAMwJ,EAAQzN,EAAQzG,OAAO0K,MAAMwJ,MAC/BA,IACAvR,SAASuR,OAAS7N,EAAQ6N,OAAK,CAAMmB,GAAMA,IAAInB,IAAU,sBAEjE,CAEApT,EAAId,MAAQqC,EAAgBvB,EAAId,MAAQxC,KAAKC,KACjD,EASA,KAAA0U,CAAM/N,EAAuBkQ,EAAoBnL,GAC7C,IAAIgH,EAAW,IAAM/L,GAErB,IAAK,MAAMM,KAAQyE,EAAM,CACrB,IAAKzE,EACD,SAIJ,IAAKA,EAAKH,SAAS,KAAM,CACjBG,KAAS4P,IACTnE,EAAIzL,GAAS4P,EAAa5P,IAE9B,QACJ,CAGA,MAAMkB,EAAMiK,EAAUyE,EAAa5P,QACvBlC,IAARoD,IACAuK,EAAMF,EAAUE,EAAYzL,EAAMkB,GAE1C,CAEA,OAAOuK,CACX,YAeY6F,IACZ,MAAO,CACHyC,QAAS7F,EAAAA,SAAS,IAAMnM,EAAQzG,OAAOyY,SACvC1H,MAAO6B,EAAAA,SAAS,IAAMnM,EAAQzG,OAAO+Q,OACrCjK,KAAM8L,EAAAA,SAAS,IAAMnM,EAAQzG,OAAO8G,MACpCoE,MAAO0H,EAAAA,SAAS,IAAMnM,EAAQzG,OAAOkL,OACrCR,KAAMkI,EAAAA,SAAS,IAAMnM,EAAQzG,OAAO0K,MACpCmI,WAAYD,EAAAA,SAAS,IAAMnM,EAAQzG,OAAO6S,YAC1CrM,QAASoM,EAAAA,SAAS,IAAMnM,EAAQzG,OAAOwG,SACvCoQ,OAAQhE,EAAAA,SAAS,IAAMnM,EAAQzG,OAAO4W,QAE9C,CCpcO,MAAM8B,EAIT1a,EAAAA,gBAAgB,CAIhBC,KAAM,aAKNE,MAAO,CACH+F,KAAM,CACFA,KAAMmB,OACNoP,UAAU,IAOlBkE,MAAOxW,OAUP,KAAAjE,CAAMC,GAAOwa,MAAEA,IACX,MAAMlS,EAAUuP,IAGhB,MAAO,KACH,MAAMhU,EAAQyE,EAAQiE,KAAK1K,MAAMgC,MACjC,GAAkB,MAAd7D,EAAM+F,QAAkB/F,EAAM+F,QAAQlC,GACtC,OAAO,KAEX,IAAK2W,EAAM/I,QACP,OAAO,KAGX,MAAMgJ,EAAyB,GAC/B,IAAK,MAAO1U,EAAMlE,KAAUmC,OAAOG,QAAQN,GAAQ,CAC/C,GAAkB,MAAd7D,EAAM+F,MAAgB/F,EAAM+F,OAASA,EACrC,SAGJ,MAAMG,EAAWhE,MAAMH,QAAQF,GAASA,EAAQ,CAACA,GACjD,IAAK,MAAMmE,KAAWE,EAClBuU,EAASC,KAAKF,EAAM/I,QAAQ,CAAE1L,KAAMA,EAAoBC,YAEhE,CAEA,OAAOyU,EAAS9P,OAAS,EAAI1K,EAAAA,EAAE,MAAO,CAAA,EAAKwa,GAAY,KAE/D,ICpDSE,EAIT9a,EAAAA,gBAAgB,CAIhBC,KAAM,YAKNE,MAAO,CACH4a,SAAU,CACN7U,KAAM,CAACmB,OAAQkD,QACfkM,UAAU,IAOlBkE,MAAOxW,OAUP,KAAAjE,CAAMC,GAAOwa,MAAEA,IACX,MAAMlS,EAAUuP,IACVgD,EAAW/E,EAAAA,IAAY,GACvBgF,EAAe,IACV9a,EAAM4a,UAAYtS,EAAQiE,KAAK1K,MAAMyX,IAAMhR,EAAQiE,KAAK1K,MAAM2K,KAAO,KAShF,OALAuO,QAAM,IAAMD,IAAgB,KACxBD,EAAShZ,UAIN,KACH,MAAM4Y,EAAWD,EAAM/I,YACvB,OAAKgJ,EAGMxa,EAAAA,EACH+a,EAAAA,SACA,CAAEC,GAAI,OAAQtY,IAAK,GAAGuE,OAAO4T,QAAmBD,EAAShZ,SACzD4Y,GALG,KASnB,IChCG,MAAMS,EAAOrb,EAAAA,gBAAgB,CAIhCC,KAAM,YAKNqb,cAAc,EAKdnb,MAAO,CACHuM,KAAM,CACFxG,KAAMmB,OACNoP,UAAU,GAEd1P,OAAQ,CACJb,KAAM/B,OACNyN,QAAS,CAAA,EACT6E,UAAU,GAEdpJ,YAAa,CACTnH,KAAMjC,QACN2N,SAAS,EACT6E,UAAU,GAEd3I,KAAM,CACF5H,KAAMmB,OACNoP,UAAU,GAEdhS,OAAQ,CACJyB,KAAMmB,OACNoP,UAAU,IAOlBkE,MAAOxW,OAUP,KAAAjE,CAAMC,GAAOwa,MAAEA,EAAKY,MAAEA,IAClB,MAAM/S,EAAUgJ,IACVvJ,EAASoM,IAGTmH,EAAc5G,EAAAA,SAAS,KACzB,GAAIzU,EAAMuM,MAAQvM,EAAMuM,KAAKnK,OAAOuI,OAAQ,CACxC,MAAM4B,EAAOvM,EAAMuM,KAAKnK,OAClBoK,EAAMnE,EAAQkE,KAAKA,EAAMvM,EAAM4G,OAAQ5G,EAAMkN,aAEnD,OAAKV,IACDyK,QAAQqE,KAAK,2CAA2C/O,OACjD,IAIf,CAEA,MAAM3J,GAAO5C,EAAM2N,MAAQ,IAAIvL,OAC/B,OAAKQ,EAIEA,EAAI6D,WAAW,QAAU7D,EAAMyF,EAAQE,IAAsB3F,EA9EhE8D,QAAQ,OAAQ,KA2ET,MAKT6U,EAAe9G,EAAAA,SAAS,IAAM3Q,QAAQ9D,EAAMuM,MAAMnK,SAAiC,MAAtBiZ,EAAYxZ,OACzE2Z,EAAa/G,EAAAA,SAAS,KACpB8G,EAAa1Z,QAII,WAAjB7B,EAAMsE,QAGC+W,EAAYxZ,MAAM4Z,QAAQ,KAAKzc,OAAOoM,SAASsQ,aAAe,IA4B7E,MAAO,KACH,MAAMC,EAAuC,IACtCP,EACHQ,KAAMP,EAAYxZ,MAClByC,OAAQtE,EAAMsE,OACd,gBAAiBiX,EAAa1Z,YAASwC,GAEvCkX,EAAa1Z,MACb8Z,EAAYE,QAAW9W,IACnBA,EAAMG,kBAEFsW,EAAW3Z,QACnB8Z,EAAYE,QAAW9W,IA/B/B,IAAiB+W,EAgCL/W,EAAMG,iBAhCD4W,EAiCG/W,EAhCZwW,EAAa1Z,MACbia,EAAG5W,iBAGHsW,EAAW3Z,OAGG,IAAdia,EAAGC,SAGHD,EAAGE,SAAWF,EAAGG,SAAWH,EAAGI,UAAYJ,EAAGK,QAIlDrU,EAAOsL,MAAMiI,EAAYxZ,UAsBzB,MAAM4Y,EAAWD,EAAM/I,QAAU+I,EAAM/I,QAAQkK,EAAaP,QAAS/W,EACrE,OAAOpE,EAAAA,EAAE,IAAK0b,EAAalB,QAAY,GAE/C,ICxKS2B,EAITvc,EAAAA,gBAAgB,CAIhBC,KAAM,qBAKNE,MAAO,CACHF,KAAM,CACFiG,KAAMmB,OACNoP,UAAU,IAOlBkE,MAAOxW,OASP,KAAAjE,CAAMC,GAAOwa,MAAEA,IACX,MAAMlS,EAAUuP,IACVjC,EAAYtB,EAAatU,EAAMF,MAC/Buc,EAAcvG,EAAAA,KAAI,GAoBxB,OAlBAiF,QACI,IAAMzS,EAAQoM,WAAW7S,QAAQ7B,EAAMF,MACvCsD,MAAOkZ,IACH,GAAKA,QAAwCjY,IAAvBiY,EAAclY,OAAsBiY,EAAYxa,MAAtE,CAIAwa,EAAYxa,OAAQ,EACpB,UACU+T,EAAUL,UACpB,SACI8G,EAAYxa,OAAQ,CACxB,CAPA,GASJ,CAAE0a,WAAW,IAIV,KACH,IAAMjU,EAAQoM,WAAW7S,SAAS7B,EAAMF,QAAQwI,EAAQoM,WAAW7S,OAC/D,OAAO,KAGX,MAAMya,EAAgBhU,EAAQoM,WAAW7S,MAAM7B,EAAMF,YAA6BuE,EAClF,IAAKiY,EACD,OAAO,KAGX,MAAM7B,EAAWD,EAAM/I,UAAUmE,GACjC,OAAI6E,EACOxa,IAAE,MAAO,CAAA,EAAKwa,GAGlB6B,EAAclY,KAAOnE,EAAAA,EAAE,MAAO,CAAEyE,UAAW4X,EAAclY,OAAU,KAElF,ICzFSoY,EAA+B3c,EAAAA,gBAAgB,CAIxDC,KAAM,mBAON,KAAAC,CAAMC,GACF,MAAMsI,EAAUuP,IAChB,MAAO,KACH,MAAMnT,EAAY4D,EAAQiE,KAAK1K,MAAMgL,SAAW,GAChD,OAAO5M,IAAE,MAAO,CAAEyE,cAE1B,ICjBS+X,EAAgB5c,EAAAA,gBAAgB,CAIzCC,KAAM,qBAKNE,MAAO,CACHF,KAAM,CACFiG,KAAMmB,OACNoP,UAAU,GAEdjH,WAAY,CACRtJ,KAAM/B,OACNyN,QAAS,KAAA,CAAS,IAEtBiL,IAAK,CACD3W,KAAMmB,OACNuK,QAAS,QASjB,KAAA1R,CAAMC,GACF,MAAMqI,EAAUgJ,IACVjN,EAAO0R,EAAAA,IAAI,IACX6G,EAAU7G,EAAAA,KAAI,GACdjR,EAAQiR,EAAAA,IAAkB,MAChC,IAAI+E,EAAW,EA0Bf,OAxBAE,EAAAA,MACI,IAAM,CAAC/a,EAAMF,KAAME,EAAMqP,YACzBjM,UACI,MAAMwZ,IAAoB/B,EAC1B8B,EAAQ9a,OAAQ,EAChBgD,EAAMhD,MAAQ,KACd,IACI,MAAMU,QAAe8F,EAAQ+G,cAAcpP,EAAMF,KAAME,EAAMqP,YACzDuN,IAAoB/B,IACpBzW,EAAKvC,MAAQU,EAErB,CAAE,MAAOsa,GACDD,IAAoB/B,IACpBhW,EAAMhD,MAAQgb,aAAkB1U,MAAQ0U,EAAS,IAAI1U,MAAMjB,OAAO2V,IAE1E,SACQD,IAAoB/B,IACpB8B,EAAQ9a,OAAQ,EAExB,GAEJ,CAAE0a,WAAW,EAAMO,MAAM,IAGtB,IAAM7c,EAAAA,EAAED,EAAM0c,IAAK,CACtBhY,UAAWN,EAAKvC,MAChB,qBAAsB7B,EAAMF,KAC5B,eAAgB6c,EAAQ9a,MAAQ,YAASwC,EACzC,aAAcQ,EAAMhD,OAAOmE,SAEnC,IChEE+W,EAAa,IAAI1I,IACjB2I,EAAe,IAAI3I,IAQnB,SAAU4I,EACZnd,EACA2P,GAEA,MAAMpH,EAAUgJ,IACVxP,EAAQiU,EAAAA,IAAI,IACZ6G,EAAU7G,EAAAA,KAAI,GACdjR,EAAQiR,EAAAA,IAAkB,MAChC,IAAI+E,EAAW,EAKfzX,eAAe8Z,IACX,MAAMN,IAAoB/B,EACpBsC,EAAaC,EAAAA,QAAQtd,GACrB+M,EAAUuQ,EAAAA,QAAQ3N,IAAW,GAC7B4N,EAAW,GAAGF,MAAmBtQ,IAEvC8P,EAAQ9a,OAAQ,EAChBgD,EAAMhD,MAAQ,KACd,IACI,MAAMyb,EAAcP,EAAWlJ,IAAIwJ,GACnC,IAAI9a,EAEJ,QAAoB8B,IAAhBiZ,EACA/a,EAAS+a,MACN,CACH,MAAMC,EAAgBP,EAAanJ,IAAIwJ,GACjCG,EAAgBD,GAAiBlV,EAAQ4B,OAAOkT,EAAYtQ,QAC5CxI,IAAlBkZ,GACAP,EAAa/V,IAAIoW,EAAUG,GAG/Bjb,QAAeib,EACfR,EAAa/I,OAAOoJ,GACpBN,EAAW9V,IAAIoW,EAAU9a,EAC7B,CAEIqa,IAAoB/B,IACpBhZ,EAAMA,MAAQU,EAEtB,CAAE,MAAOsa,GACLG,EAAa/I,OAAOoJ,GAChBT,IAAoB/B,IACpBhW,EAAMhD,MAAQgb,aAAkB1U,MAAQ0U,EAAS,IAAI1U,MAAMjB,OAAO2V,IAE1E,SACQD,IAAoB/B,IACpB8B,EAAQ9a,OAAQ,EAExB,CACJ,CASA,OAPAkZ,EAAAA,MACI,IAAM,CAACqC,UAAQtd,GAAOsd,EAAAA,QAAQ3N,IAC9ByN,EACA,CAAEX,WAAW,IAIV,CACH1a,MAAO4b,EAAAA,SAAS5b,GAChB8a,QAASc,EAAAA,SAASd,GAClB9X,MAAO4Y,EAAAA,SAAS5Y,GAChBqY,UAER,CC9EO,MAAMQ,EAAgB7d,EAAAA,gBAAgB,CAIzCC,KAAM,qBAKNE,MAAO,CACHF,KAAM,CACFiG,KAAMmB,OACNoP,UAAU,GAEdzU,MAAO,CACHkE,KAAMmB,OACNuK,QAAS,IAEbiL,IAAK,CACD3W,KAAMmB,OACNuK,QAAS,QAUjB,KAAA1R,CAAMC,GAAOwa,MAAEA,IACX,MAAMrb,EAAQ8d,EAAiB,IAAMjd,EAAMF,KAAM,IAAME,EAAM6B,OAE7D,MAAO,IACC2Y,EAAM/I,QACC+I,EAAM/I,QAAQ,CACjB5P,MAAO1C,EAAM0C,MAAMA,MACnB8a,QAASxd,EAAMwd,QAAQ9a,MACvBgD,MAAO1F,EAAM0F,MAAMhD,MACnBqb,QAAS/d,EAAM+d,UAIhBjd,EAAAA,EAAED,EAAM0c,IAAK,CAChBhY,UAAWvF,EAAM0C,MAAMA,MACvB,eAAgB1C,EAAMwd,QAAQ9a,MAAQ,YAASwC,EAC/C,aAAclF,EAAM0F,MAAMhD,OAAOmE,SAG7C,6LCzBG5C,eACH2H,GAEA,MAAMgH,EAAQhH,EAAQ4S,OAASnZ,SAASoZ,cAAc7S,EAAQ4S,QAAUnZ,SAASoZ,cAAc,QAC/F,IAAK7L,EACD,MAAM,IAAI5J,MAAM,kCAAkC4C,EAAQ4S,QAAU,WAGxE,MAAMrV,EAvBV,SACI3E,EAAW,0BAEX,MAAMzC,EAAUsD,SAASgV,KAAKoE,cAAcja,GAC5C,IAAKzC,GAASkP,aAAahO,OACvB,MAAM,IAAI+F,MAAM,gCAEpB,OAAO9F,KAAKC,MAAMpB,EAAQkP,YAC9B,CAeoByN,GAKV7d,EAAsE,CACxEqW,eAAgB/N,EAChBiO,iBALqBhF,QADFsF,QAAQC,QAAQ/L,EAAQ+L,QAAQxO,EAAQiE,KAAKqJ,aAOhEY,iBAAkBzL,EAAQ+L,WACtB/L,EAAQgL,MAAQ,CAAEA,MAAOhL,EAAQgL,OAAU,IAInD,OAAOhL,EAAQhL,MAAM,CACjBgS,OACAqE,MACApW,QACAwX,SACAlP,WAER,oGT8YI,OAAOJ,CACX,6EAgCI,OAAOuM,WAAS,IAAMnM,EAAQzG,OAAO0K,KACzC,wEAOI,OAAOkI,WAAS,IAAMnM,EAAQzG,OAAO4W,OACzC,6BAjBI,OAAOhE,WAAS,IAAMnM,EAAQzG,OAAO8G,KACzC,8BAuBI,OAAO8L,WAAS,IAAMnM,EAAQzG,OAAOkL,MACzC"}
package/dist/laika.js CHANGED
@@ -1,2 +1,2 @@
1
- !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("vue")):"function"==typeof define&&define.amd?define(["exports","vue"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).Laika={},e.Vue)}(this,function(e,t){"use strict";const n=t.reactive({color:"#DE3163",active:!1,percent:0,timestamp:0});let r=null;function a(){function e(e=!1){r&&(window.clearInterval(r),r=null),(n.active||e)&&(n.percent=100,window.setTimeout(()=>{n.active=!1,n.percent=0},150))}return{state:n,start:function(){n.active=!0,n.percent=10,n.timestamp=Date.now(),r&&window.clearInterval(r),r=window.setInterval(()=>{n.active&&n.percent<90&&(n.percent+=Math.max(1,Math.round(.08*(90-n.percent))))},200)},done:e,fail:function(){e(!0)}}}const o=t.defineComponent({name:"LaikaProgressBar",setup(e){const n=a();return()=>n.state.active?t.h("div",{class:"laika-progress-bar",style:{top:0,left:0,width:`${n.state.percent}%`,height:"0.2rem",position:"fixed",backgroundColor:`var(--laika-progress-bar, ${n.state.color})`,transition:"width 120ms linear",zIndex:99999}}):void 0}}),i=Symbol("laika:october"),s=Symbol("laika:router");let l=null,u=!1;function c(e,t,n){return e.dispatchEvent(new CustomEvent(t,{bubbles:!0,cancelable:!0,detail:n}))}function d(e){const t={};return new FormData(e).forEach((e,n)=>{const r=n.endsWith("[]"),a=r?n.slice(0,-2):n;t[a]=a in t?Array.isArray(t[a])?[...t[a],e]:[t[a],e]:r?[e]:e}),t}function p(e){if(!e?.trim())return{};try{return JSON.parse(e)}catch{const t={},n=/(?:['"]([^'"]+)['"]|([A-Za-z0-9_.-]+))\s*:\s*(?:['"]([^'"]*)['"]|([^,}\s]+))/g;let r;for(;null!==(r=n.exec(e));){const e=r[1]??r[2],n=r[3]??r[4]??"";e&&(t[e]="true"===n||"false"!==n&&n)}return t}}function f(e,t){e.toggleAttribute("data-request-loading",t),e.setAttribute("aria-busy",t?"true":"false"),(e instanceof HTMLButtonElement||e instanceof HTMLInputElement)&&(e.disabled=t)}async function m(e,t){const n=e.getAttribute("data-request")??t?.getAttribute("data-request");if(!n||!l||e.hasAttribute("data-request-loading"))return;const r=function(e){if(!e?.trim())return{};const t={},n=/(?:['"]([^'"]+)['"]|([A-Za-z0-9_./:-]+))\s*:\s*['"]([^'"]+)['"]/g;let r;for(;null!==(r=n.exec(e));){const e=r[1]??r[2],n=r[3];e&&n&&(t[e]=n)}return t}(e.getAttribute("data-request-update")??t?.getAttribute("data-request-update")??null),a={...t?d(t):{},...p(t?.getAttribute("data-request-data")??null),...p(e.getAttribute("data-request-data"))};if(c(e,"ajax:before",{handler:n,data:a})){f(e,!0);try{const o=await l(n,{data:a,flash:e.hasAttribute("data-request-flash")||Boolean(t?.hasAttribute("data-request-flash")),partials:Object.keys(r),preserveState:!0});!function(e,t){for(const[n,r]of Object.entries(t)){const t=e.partials[n];if(void 0!==t)for(const e of Array.from(document.querySelectorAll(r)))e.innerHTML=t}}(o,r),c(e,o.ok?"ajax:success":"ajax:error",o)}catch(t){c(e,"ajax:error",{handler:n,error:t})}finally{f(e,!1),c(e,"ajax:complete",{handler:n})}}}function h(e){const t=e.target instanceof HTMLFormElement?e.target:null;if(!t?.matches("[data-request]"))return;e.preventDefault();m(e.submitter instanceof HTMLElement?e.submitter:t,t)}function g(e){const t=e.target instanceof Element?e.target:null,n=t?.closest("[data-request]");!n||n instanceof HTMLFormElement||(n instanceof HTMLButtonElement||n instanceof HTMLInputElement)&&n.form?.matches("[data-request]")||(e.preventDefault(),m(n,n.closest("form")??void 0))}const y=new Set(["info","error","success","warning"]);function v(e){return"string"==typeof e&&y.has(e)?e:"info"}function w(e,t,n){if("string"!=typeof n||!n.trim())return;const r=e[t],a=Array.isArray(r)?r:r?[r]:[],o=n.trim();a.includes(o)||(e[t]=[...a,o])}function b(e,t){return t?/^(https?:)?\/\//.test(t)||t.startsWith("#")||t.startsWith("mailto:")||t.startsWith("tel:")||t.startsWith("sms:")?t:`${e.replace(/\/+$/,"")}/${t.replace(/^\/+/,"")}`:e}function k(e){const t=new URLSearchParams;for(const[n,r]of Object.entries(e))null!=r&&t.set(n,String(r));const n=t.toString();return n?`?${n}`:""}function A(e,t){return e.replace(/:([A-Za-z0-9_]+\*?)/g,(e,n)=>{const r=n.endsWith("*");n=n.endsWith("*")?n.slice(0,-1):n;const a=t[n];if(delete t[n],null==a)return"";const o=encodeURIComponent(String(a));return r?o.replace(/%2F/g,"/"):o})}function L(e,n,r){const a=t.reactive({});function o(){const t=e();if(!t)throw new Error("October Functions: runtime not ready");return t}function i(){const e=o(),t=e.payload?.october;if(!t)throw new Error("October Functions: missing october payload.");return t}function s(e){return b(i().baseUrl,e)}function c(e){const t=o(),n=t.payload?.site?.locale||"",r=t.payload?.october?.fallbackLocale||"",a=t.payload?.october?.strings?.[n]||{},i=t.payload?.october?.strings?.[r]||{};return e in a?a[e]:e in i?i[e]:null}function d(e,t){if(!t)return e;for(const[n,r]of Object.entries(t)){if(null==r)continue;const t=String(n),a=String(r);e=e.replaceAll(`:${t}`,a);const o=t.charAt(0).toUpperCase()+t.slice(1);e=(e=e.replaceAll(`:${o}`,a.charAt(0).toUpperCase()+a.slice(1))).replaceAll(`:${t.toUpperCase()}`,a.toUpperCase())}return e}function p(e,t,n){let r=c(e);if(null===r)return e;return d(function(e,t){const n=e.split("|").map(e=>e.trim()).filter(Boolean);for(const e of n){const n=e.match(/^\{(\d+)\}\s*(.*)$/);if(n){if(t===Number(n[1]))return n[2];continue}const r=e.match(/^\[(\d+|\-?\*),(\d+|\-?\*)\]\s*(.*)$/);if(r){const e=r[1],n=r[2],a=r[3],o="*"===e?-1/0:Number(e),i="*"===n?1/0:Number(n);if(t>=o&&t<=i)return a;continue}}return 1===n.length?n[0]:2===n.length?1===t?n[0]:n[1]:n[n.length-1]}(r,t),{count:t,...n})}async function f(e,t={}){if(!/^(?:\w+::)?on[A-Z][\w+]*$/.test(e))throw new Error(`October AJAX handler name is invalid: ${e}`);const a=t.only??["token","page.props","page.flash","components","shared"],o={"X-AJAX-HANDLER":e,"X-AJAX-FLASH":!1===t.flash?"0":"1"};t.partials?.length&&(o["X-AJAX-PARTIALS"]=t.partials.join("&"));const i=await n.raw(window.location.pathname+window.location.search,{method:"post",data:t.data??{},headers:o,only:a,preserveState:t.preserveState??!0}),s=await i.json(),l=s.__ajax??{},u=s.__laika;if(delete s.__ajax,delete s.__laika,u&&!1!==t.flash){const e=function(e){const t={};for(const n of e.ops??[])"flash"===n.op&&w(t,v(n.level??n.severity),n.text??n.message);const n=Object.values(e.invalid??{}).flatMap(e=>Array.isArray(e)?e:[e]);for(const e of n)w(t,"error",e);return 0===Object.keys(t).length&&"string"==typeof e.message&&w(t,v(e.severity),e.message),t}(l);Object.keys(e).length>0&&u.page&&(u.page.flash={...u.page.flash??{},...e})}u&&await r(u,a);const c={};for(const e of l.ops??[])"partial"===e.op&&"string"==typeof e.name?c[e.name]=String(e.html??""):"dispatch"===e.op&&"string"==typeof e.event?window.dispatchEvent(new CustomEvent(e.event,{detail:e.detail})):"redirect"===e.op&&e.url?window.location.assign(String(e.url)):"reload"===e.op&&window.location.reload();if(!i.ok&&!("ok"in l))throw new Error(`October AJAX request failed (${i.status}).`);return{ok:l.ok??i.ok,status:i.status,data:s,invalid:l.invalid??{},message:l.message??null,severity:l.severity??"info",partials:c}}async function m(e,t){const r=await n.raw(s("/x-laika/filter"),{method:"post",data:{filter:e,payload:t}});if(!r.ok)throw new Error(`October filter failed: ${e}. (${r.status})`);const a=await r.json();if("success"!==a.status)throw new Error(`October filter failed: ${e}. (${r.status}) - (${a.message||"An unknown error occurred."})`);return a.result.content}const y={app:s,theme:function(e){return Array.isArray(e)?e.map(e=>b(i().themeBaseUrl,e??"")):b(i().themeBaseUrl,e)},page:function(e=null,t={},n=!0){const r=i(),a=r.pages??{},l={...r.currentParams??{}};if("boolean"==typeof t&&(n=t,t={}),t&&"object"==typeof t&&!Array.isArray(t)||(t={}),!e){const e=o().payload?.page?.url??"/",n=k(t);return n?e+(e.includes("?")?`&${n.slice(1)}`:n):e}if("string"!=typeof e)return;const u=a[e=e.toLowerCase()];if(!u?.pattern)return;const c=n?{...l,...t}:{...t},d={...t},p=A(u.pattern,c);return A(u.pattern,d),s(p)+k(d)},link:function(e){if(e.startsWith("http"))return e;{const t=o();return s(`/x-laika/resolve?path=${btoa(e)}&theme=${t.payload?.page?.theme||"0"}`)}},media:function(e){const t=i(),n=("/"+String(e??"").replace(/\\/g,"/").replace(/^\/+/,"")).split("/").map(e=>encodeURIComponent(e)).join("/").replace(/%2F/g,"/");return b(t.mediaBaseUrl,n)},resize:function(e,t=null,n=null,r={}){const a=i(),o=a.resizer?.basePath??"/resize",l={src:e};null!=t&&(l.w=t),null!=n&&(l.h=n);for(const[e,t]of Object.entries(r??{}))l[`o_${e}`]=t;return s(o+k(l))},currency:function(e,t={}){const n="number"==typeof e?e:Number(String(e).replace(",","."));if(!Number.isFinite(n))return String(e);const{locale:r="de-AT",currency:a="EUR",style:o="currency",minimumFractionDigits:i,maximumFractionDigits:s}=t;return new Intl.NumberFormat(r,{style:o,currency:a,minimumFractionDigits:i,maximumFractionDigits:s}).format(n)},trans:function(e,t){let n=c(e);return null===n?e:d(n,t)},transChoice:p,placeholder:function(e,t=null){const n=o();return e in(n.payload?.page?.placeholders||{})?(n.payload?.page?.placeholders||{})[e]:e in a?a[e]:t},hasPlaceholder:function(e){const t=o();return e in(t.payload?.page?.placeholders||{})||e in a},setPlaceholder:function(e,t){a[e]=t},request:f,renderPartial:async function(e,t={}){const n=await f("onLaikaRenderPartial",{data:{name:e,parameters:t},only:["token"],preserveState:!0});if(!n.ok)throw new Error(n.message??`Unable to render partial: ${e}`);return n.data.html??""},content:async function(e,t={}){const n=await f("onLaikaRenderContent",{data:{name:e,parameters:t},only:["token"],preserveState:!0});if(!n.ok)throw new Error(n.message??`Unable to render content: ${e}`);return n.data.html??""},filter:function(e,t){return m(e,{content:t})},htmlLimit:function(e,t=100,n="..."){if(t<=0)return n;const r=document.createElement("template");r.innerHTML=e;const a=document.createElement("div");let o=t,i=!1;const s=e=>{if(i)return null;if(e.nodeType===Node.TEXT_NODE){const t=Array.from(e.textContent??"");return t.length<=o?(o-=t.length,document.createTextNode(t.join(""))):(i=!0,document.createTextNode(t.slice(0,o).join("")+n))}if(e.nodeType!==Node.ELEMENT_NODE)return e.cloneNode(!1);const t=e.cloneNode(!1);for(const n of Array.from(e.childNodes)){const e=s(n);if(e&&t.appendChild(e),i)break}return t};for(const e of Array.from(r.content.childNodes)){const t=s(e);if(t&&a.appendChild(t),i)break}return a.innerHTML},md:e=>m("md",{content:e}),mdSafe:e=>m("md_safe",{content:e}),mdClean:e=>m("md_clean",{content:e}),mdIndent:e=>m("md_indent",{content:e}),trans_choice:p,md_safe:e=>m("md_safe",{content:e}),md_clean:e=>m("md_clean",{content:e}),md_indent:e=>m("md_indent",{content:e})};return l=y.request,u||"undefined"==typeof document||(u=!0,document.addEventListener("submit",h),document.addEventListener("click",g)),y}function S(){const e=t.inject(i,null);if(!e)throw new Error("useOctober(): OctoberAPI not provided");return e}function E(e){return e?.default??e}function P(e,t){return t.split(".").reduce((e,t)=>null==e?void 0:e[t],e)}function O(e,t,n){const r=t.split(".");if(!r.length)return e;const a=Array.isArray(e)?e.slice():{...e??{}},o=r[r.length-1];let i=a,s=e??{};for(let e=0;e<r.length-1;e++){const t=r[e],n=s?.[t];let a;a=Array.isArray(n)?n.slice():n&&"object"==typeof n?{...n}:{},i[t]=a,i=a,s=n}return i[o]=n,a}function j(e,t){function n(t,n={}){const r=function(){const t=e();if(!t)throw new Error("Laika Router: runtime not ready");return t}(),a=(n.method??"GET").toUpperCase(),o=n.data??void 0,i=new Headers({Accept:"application/json","X-Requested-With":"XMLHttpRequest","X-Laika":"1",...n.headers??{}}),s=r.payload?.token;if(s){const[e,t]=s.split("|");i.set("X-CSRF-TOKEN",e),i.set("X-Laika-Token",t)}return n.force&&i.set("X-Laika-Force","1"),n.require?.length&&i.set("X-Laika-Require",n.require.join(",")),n.only?.length&&i.set("X-Laika-Only",n.only.join(",")),n.preserveState&&i.set("X-Laika-Preserve-State","1"),"GET"!==a&&i.set("Content-Type","application/json"),new Request(t,{method:a.toUpperCase(),headers:i,body:"GET"!==a?JSON.stringify(o??{}):null,credentials:"same-origin"})}async function r(e,r={}){const a=n(e,r);let o;try{await t.onBefore(a),o=await fetch(a),"GET"===a.method&&(r.replace?history.replaceState({},"",e):history.pushState({},"",e)),await t.onSuccess(a,o)}catch(e){throw await t.onFailure(e,a,o),e}}return{raw:async function(e,t={}){const r=n(e,t);try{return await fetch(r)}catch(e){throw e}},visit:r,get:(e,t)=>r(e,{...t??{},method:"GET"}),post:(e,t,n)=>r(e,{...n??{},method:"POST",data:t}),put:(e,t,n)=>r(e,{...n??{},method:"PUT",data:t}),patch:(e,t,n)=>r(e,{...n??{},method:"PATCH",data:t}),delete:(e,t,n)=>r(e,{...n??{},method:"DELETE",data:t})}}function C(){const e=t.inject(s,null);if(!e)throw new Error("useRouter(): Laika router not provided");return e}const $=t.shallowRef(),q=new Map;function T(e){const n=q.get(e);if(n)return n;const r=C(),a=S(),o=t.computed(()=>$.value?.components?.[e]??null);function i(e){const t=o.value;return!!t?.props&&Object.prototype.hasOwnProperty.call(t.props,e)}function s(e){const t=o.value;return!!t&&(!(!t.props||!(e in t.props))||(!(!Array.isArray(t.methods)||!t.methods.includes(e))||!(!Array.isArray(t.vars)||!t.vars.includes(e))))}function l(e,t){const n=o.value;return n?.props&&e in n.props?n.props[e]:t}async function u(n){const a=(Array.isArray(n)?n:[n]).filter(e=>!i(e));if(!a.length)return;const s=a.map(t=>`components.${e}.props.${t}`);return await r.get(window.location.pathname+window.location.search,{only:s,preserveState:!0,replace:!0}),await t.nextTick(),Array.isArray(n)?o.value?.props:o.value?.props[n]}async function c(){return void 0!==o.value?.html?o.value.html:(await r.get(window.location.pathname+window.location.search,{only:[`components.${e}.html`],preserveState:!0,replace:!0}),await t.nextTick(),o.value?.html??"")}const d=new Proxy({},{get(t,n){if("get"===n)return l;if("load"===n)return u;if("loadHtml"===n)return c;if("loaded"===n)return i;if("exists"===n)return s;if("request"===n)return(t,n)=>a.request(`${e}::${t}`,n);const r=o.value;return r?r[n]:void 0},has(e,t){if("get"===t||"load"===t||"loadHtml"===t||"loaded"===t||"exists"===t||"request"===t)return!0;{const e=o.value;return!!e&&t in e}}});return q.set(e,d),d}const x=t.shallowRef(),F=t.shallowRef(null),R=t.ref(void 0),H={get component(){return x.value},get payload(){return $.value},get layout(){return F.value},get key(){return R.value},title:e=>e,resolver:()=>{throw new Error("not implemented")},getLayout:()=>F.value,setLayout:e=>{F.value=e}};let M,_;const N=t.defineComponent({name:"Laika",props:{initialPayload:{type:Object,required:!0},initialComponent:{type:Object,required:!1},resolveComponent:{type:Function,required:!0},title:{type:Function,required:!1,default:e=>e}},setup:({initialPayload:e,initialComponent:n,resolveComponent:r,title:a})=>($.value=e,R.value=void 0,x.value=n?t.markRaw(E(n)):void 0,x.value||Promise.resolve(r(e.page.component)).then(e=>{x.value=t.markRaw(E(e))}).catch(console.error),H.title=a??H.title,H.resolver=r,"page"in e&&"title"in e.page&&(document.title=(H.title??(e=>e))(e.page.title)||""),window.addEventListener("popstate",()=>window.location.reload()),()=>{if(!x.value||!$.value)return null;const e=$.value.page.props??{},n=t.h(x.value,{...e,key:R.value});let r;F.value&&(x.value.layout=F.value,F.value=null);const a=x.value.layout;if(a)if("function"==typeof a)r=a(t.h,n);else{r=(Array.isArray(a)?a:[a]).slice().reverse().reduce((n,r)=>t.h(r,{...e},()=>n),n)}else r=n;return t.h(t.Fragment,null,[t.h(o),r])})});const X={install(e){const t=this,n=()=>H,r=function(){const{components:e}=U();return new Proxy({},{get:(t,n)=>"has"===n?t=>!!e.value&&t in e.value:"get"===n?t=>e.value&&t in e.value?T(t):null:"string"==typeof n?e.value&&n in e.value?T(n):null:void 0})}(),o=a();M=j(n,{onBefore:async e=>{o.start(),await t.onRouterBefore(e)},onSuccess:async(e,n)=>{o.done(),await t.onRouterSuccess(e,n)},onFailure:async(e,n)=>{o.fail(),await t.onRouterFailure(e,n)}}),function(e,t){t.provide(s,e)}(M,e),_=L(n,M,async(e,t)=>this.swap(e,!0,t)),function(e,t){t.provide(i,e)}(_,e),Object.defineProperty(e.config.globalProperties,"$laika",{get:()=>H}),Object.defineProperty(e.config.globalProperties,"$router",{get:()=>M}),Object.defineProperty(e.config.globalProperties,"$payload",{get:()=>H.payload}),Object.defineProperty(e.config.globalProperties,"$site",{get:()=>H.payload?.site||{}}),Object.defineProperty(e.config.globalProperties,"$theme",{get:()=>H.payload?.theme||{}}),Object.defineProperty(e.config.globalProperties,"$page",{get:()=>H.payload?.page||{}}),Object.defineProperty(e.config.globalProperties,"$components",{get:()=>r}),Object.defineProperty(e.config.globalProperties,"$october",{get:()=>_}),Object.defineProperty(e.config.globalProperties,"$shared",{get:()=>H.payload?.shared||{}})},async onRouterBefore(e){},async onRouterSuccess(e,t){if(409===t.status){const e=t.headers.get("X-Laika-Location");throw e&&window.location.assign(e),new Error("Laika redirect")}if(!t.ok)throw window.location.assign(e.url),new Error("Navigation fallback");const n=(r=e.headers.get("X-Laika-Only")??t.headers.get("X-Laika-Only"))?r.split(",").map(e=>e.trim()).filter(Boolean):[];var r;const a=await t.json(),o="1"===e.headers.get("X-Laika-Preserve-State");await this.swap(a,o,n)},async onRouterFailure(e,t){},async swap(e,n,r){if("page"in e&&e.page?.component){const n=await H.resolver(e.page.component);x.value=t.markRaw(E(n))}if(r&&r.length&&$.value?$.value=this.patch($.value,e,r):$.value=e,"page"in e&&e.page){const t=document.body.dataset.theme,n=(e.page.theme||"").trim().toLowerCase();t!==n&&""!==n&&(document.body.classList.remove(`theme-${t}`),document.body.classList.add(`theme-${n}`),document.body.dataset.theme=n);const r=document.body.dataset.layout,a=(e.page.layout||"").trim().toLowerCase();r!==a&&""!==a&&(document.body.classList.remove(`layout-${r}`),document.body.classList.add(`layout-${a}`),document.body.dataset.layout=a);const o=document.body.dataset.page,i=(e.page.id||"").trim().toLowerCase();o!==i&&""!==i&&(document.body.classList.remove(`page-${o}`),document.body.classList.add(`page-${i}`),document.body.dataset.page=i);const s={...e.page.head??{}},l=new Map,u=document.createElement("head");for(const[e,t]of Object.entries(s)){u.innerHTML=t.trim();const n=u.firstElementChild;n&&(n.setAttribute("data-laika-id",e),u.removeChild(n),l.set(e,n))}const c=new Set,d=document.head.querySelectorAll("[data-laika-id]");for(const t of e.page.head?Array.from(d):[]){const e=t.getAttribute("data-laika-id");if(!e)continue;const n=l.get(e);n?(c.add(e),t.outerHTML!==n.outerHTML&&document.head.replaceChild(n,t)):t.remove()}const p=document.head.querySelectorAll("[data-laika-id]"),f=p.length>0?p[p.length-1]?.nextElementSibling:null;for(const[t,n]of e.page.head?l:[])c.has(t)||(f?document.head.insertBefore(n,f):document.head.appendChild(n))}if("page"in e&&"title"in e.page){const e=$.value?.page?.title;e&&(document.title=(H.title??(e=>e))(e)||"Laika Unknown Title")}R.value=n?R.value:Date.now()},patch(e,t,n){let r={...e};for(const e of n){if(!e)continue;if(!e.includes(".")){e in t&&(r[e]=t[e]);continue}const n=P(t,e);void 0!==n&&(r=O(r,e,n))}return r}};function U(){return{version:t.computed(()=>$.value?.version),token:t.computed(()=>$.value?.token),site:t.computed(()=>$.value?.site),theme:t.computed(()=>$.value?.theme),page:t.computed(()=>$.value?.page),components:t.computed(()=>$.value?.components),october:t.computed(()=>$.value?.october),shared:t.computed(()=>$.value?.shared)}}const B=t.defineComponent({name:"LaikaFlash",props:{type:{type:String,required:!1}},slots:Object,setup(e,{slots:n}){const r=U();return()=>{const a=r.page.value.flash;if(null!=e.type&&!(e.type in a))return null;if(!n.default)return null;const o=[];for(const[t,r]of Object.entries(a)){if(null!=e.type&&e.type!==t)continue;const a=Array.isArray(r)?r:[r];for(const e of a)o.push(n.default({type:t,message:e}))}return o.length>0?t.h("div",{},o):null}}}),D=t.defineComponent({name:"LaikaHead",props:{watchKey:{type:[String,Number],required:!1}},slots:Object,setup(e,{slots:n}){const r=U(),a=t.ref(0),o=()=>e.watchKey??r.page.value.id??r.page.value.url??null;return t.watch(()=>o(),()=>{a.value++}),()=>{const e=n.default?.();return e?t.h(t.Teleport,{to:"head",key:`${String(o())}:${a.value}`},e):null}}});const I=t.defineComponent({name:"LaikaLink",inheritAttrs:!1,props:{page:{type:String,required:!1},params:{type:Object,default:{},required:!1},persistence:{type:Boolean,default:!0,required:!1},link:{type:String,required:!1},target:{type:String,required:!1}},slots:Object,setup(e,{slots:n,attrs:r}){const a=S(),o=C(),i=t.computed(()=>{if(e.page&&e.page.trim().length)return a.page(e.page.trim(),e.params,e.persistence);const t=(e.link??"").trim();return t?t.startsWith("http")?t:a.app(t.replace(/^\/+/,"")):"#"}),s=t.computed(()=>"_blank"===e.target||i.value.indexOf(`//${window.location.hostname}/`)<0);return()=>{const a={...r,href:i.value,target:e.target};s.value||(a.onClick=e=>{var t;e.preventDefault(),t=e,s.value||0===t.button&&(t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||o.visit(i.value))});const l=n.default?n.default(a,r):void 0;return t.h("a",a,l||void 0)}}}),W=t.defineComponent({name:"LaikaPageComponent",props:{name:{type:String,required:!0}},slots:Object,setup(e,{slots:n}){const r=U(),a=T(e.name),o=t.ref(!1);return t.watch(()=>r.components.value?.[e.name],async e=>{if(e&&void 0===e.html&&!o.value){o.value=!0;try{await a.loadHtml()}finally{o.value=!1}}},{immediate:!0}),()=>{if(!r.components.value||!(e.name in r.components.value))return null;const o=r.components.value[e.name]||void 0;if(!o)return null;const i=n.default?.(a);return i?t.h("div",{},i):o.html?t.h("div",{innerHTML:o.html}):null}}}),J=t.defineComponent({name:"LaikaPageContent",setup(e){const n=U();return()=>{const e=n.page.value.content??"";return t.h("div",{innerHTML:e})}}}),z=t.defineComponent({name:"LaikaServerPartial",props:{name:{type:String,required:!0},parameters:{type:Object,default:()=>({})},tag:{type:String,default:"div"}},setup(e){const n=S(),r=t.ref(""),a=t.ref(!1),o=t.ref(null);let i=0;return t.watch(()=>[e.name,e.parameters],async()=>{const t=++i;a.value=!0,o.value=null;try{const a=await n.renderPartial(e.name,e.parameters);t===i&&(r.value=a)}catch(e){t===i&&(o.value=e instanceof Error?e:new Error(String(e)))}finally{t===i&&(a.value=!1)}},{immediate:!0,deep:!0}),()=>t.h(e.tag,{innerHTML:r.value,"data-laika-partial":e.name,"data-loading":a.value?"true":void 0,"data-error":o.value?.message})}}),K=new Map,G=new Map;function V(e,n){const r=S(),a=t.ref(""),o=t.ref(!1),i=t.ref(null);let s=0;async function l(){const l=++s,u=t.toValue(e),c=t.toValue(n)??"",d=`${u}\0${c}`;o.value=!0,i.value=null;try{const e=K.get(d);let t;if(void 0!==e)t=e;else{const e=G.get(d),n=e??r.filter(u,c);void 0===e&&G.set(d,n),t=await n,G.delete(d),K.set(d,t)}l===s&&(a.value=t)}catch(e){G.delete(d),l===s&&(i.value=e instanceof Error?e:new Error(String(e)))}finally{l===s&&(o.value=!1)}}return t.watch(()=>[t.toValue(e),t.toValue(n)],l,{immediate:!0}),{value:t.readonly(a),pending:t.readonly(o),error:t.readonly(i),refresh:l}}const Z=t.defineComponent({name:"LaikaOctoberFilter",props:{name:{type:String,required:!0},value:{type:String,default:""},tag:{type:String,default:"div"}},setup(e,{slots:n}){const r=V(()=>e.name,()=>e.value);return()=>n.default?n.default({value:r.value.value,pending:r.pending.value,error:r.error.value,refresh:r.refresh}):t.h(e.tag,{innerHTML:r.value.value,"data-loading":r.pending.value?"true":void 0,"data-error":r.error.value?.message})}});e.Flash=B,e.Head=D,e.Link=I,e.OctoberFilter=Z,e.PageComponent=W,e.PageContent=J,e.ProgressBar=o,e.ServerPartial=z,e.createLaikaApp=async function(e){const t=e.rootId?document.querySelector(e.rootId):document.querySelector(".app");if(!t)throw new Error(`Laika: root element not found (${e.rootId??".app"})`);const n=function(e='[data-laika="payload"]'){const t=document.head.querySelector(e);if(!t?.textContent?.trim())throw new Error("Laika: payload missing/empty");return JSON.parse(t.textContent)}(),r={initialPayload:n,initialComponent:E(await Promise.resolve(e.resolve(n.page.component))),resolveComponent:e.resolve,...e.title?{title:e.title}:{}};return e.setup({root:t,App:N,props:r,plugin:X,payload:n})},e.getProgressBar=a,e.laikaPlugin=X,e.useComponent=T,e.useLaika=function(){return H},e.useOctober=S,e.useOctoberFilter=V,e.usePage=function(){return t.computed(()=>$.value?.page)},e.usePayload=U,e.useRouter=C,e.useShared=function(){return t.computed(()=>$.value?.shared)},e.useSite=function(){return t.computed(()=>$.value?.site)},e.useTheme=function(){return t.computed(()=>$.value?.theme)}});
1
+ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("vue")):"function"==typeof define&&define.amd?define(["exports","vue"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).Laika={},e.Vue)}(this,function(e,t){"use strict";const n=t.reactive({color:"#DE3163",active:!1,percent:0,timestamp:0});let r=null;function a(){function e(e=!1){r&&(window.clearInterval(r),r=null),(n.active||e)&&(n.percent=100,window.setTimeout(()=>{n.active=!1,n.percent=0},150))}return{state:n,start:function(){n.active=!0,n.percent=10,n.timestamp=Date.now(),r&&window.clearInterval(r),r=window.setInterval(()=>{n.active&&n.percent<90&&(n.percent+=Math.max(1,Math.round(.08*(90-n.percent))))},200)},done:e,fail:function(){e(!0)}}}const o=t.defineComponent({name:"LaikaProgressBar",setup(e){const n=a();return()=>n.state.active?t.h("div",{class:"laika-progress-bar",style:{top:0,left:0,width:`${n.state.percent}%`,height:"0.2rem",position:"fixed",backgroundColor:`var(--laika-progress-bar, ${n.state.color})`,transition:"width 120ms linear",zIndex:99999}}):void 0}}),i=Symbol("laika:october"),s=Symbol("laika:router");let l=null,u=!1;function c(e,t,n){return e.dispatchEvent(new CustomEvent(t,{bubbles:!0,cancelable:!0,detail:n}))}function d(e){const t={};return new FormData(e).forEach((e,n)=>{const r=n.endsWith("[]"),a=r?n.slice(0,-2):n;t[a]=a in t?Array.isArray(t[a])?[...t[a],e]:[t[a],e]:r?[e]:e}),t}function p(e){if(!e?.trim())return{};try{return JSON.parse(e)}catch{const t={},n=/(?:['"]([^'"]+)['"]|([A-Za-z0-9_.-]+))\s*:\s*(?:['"]([^'"]*)['"]|([^,}\s]+))/g;let r;for(;null!==(r=n.exec(e));){const e=r[1]??r[2],n=r[3]??r[4]??"";e&&(t[e]="true"===n||"false"!==n&&n)}return t}}function f(e,t){e.toggleAttribute("data-request-loading",t),e.setAttribute("aria-busy",t?"true":"false"),(e instanceof HTMLButtonElement||e instanceof HTMLInputElement)&&(e.disabled=t)}async function m(e,t){const n=e.getAttribute("data-request")??t?.getAttribute("data-request");if(!n||!l||e.hasAttribute("data-request-loading"))return;const r=function(e){if(!e?.trim())return{};const t={},n=/(?:['"]([^'"]+)['"]|([A-Za-z0-9_./:-]+))\s*:\s*['"]([^'"]+)['"]/g;let r;for(;null!==(r=n.exec(e));){const e=r[1]??r[2],n=r[3];e&&n&&(t[e]=n)}return t}(e.getAttribute("data-request-update")??t?.getAttribute("data-request-update")??null),a={...t?d(t):{},...p(t?.getAttribute("data-request-data")??null),...p(e.getAttribute("data-request-data"))};if(c(e,"ajax:before",{handler:n,data:a})){f(e,!0);try{const o=await l(n,{data:a,flash:e.hasAttribute("data-request-flash")||Boolean(t?.hasAttribute("data-request-flash")),partials:Object.keys(r),preserveState:!0});!function(e,t){for(const[n,r]of Object.entries(t)){const t=e.partials[n];if(void 0!==t)for(const e of Array.from(document.querySelectorAll(r)))e.innerHTML=t}}(o,r),c(e,o.ok?"ajax:success":"ajax:error",o)}catch(t){c(e,"ajax:error",{handler:n,error:t})}finally{f(e,!1),c(e,"ajax:complete",{handler:n})}}}function h(e){const t=e.target instanceof HTMLFormElement?e.target:null;if(!t?.matches("[data-request]"))return;e.preventDefault();m(e.submitter instanceof HTMLElement?e.submitter:t,t)}function g(e){const t=e.target instanceof Element?e.target:null,n=t?.closest("[data-request]");!n||n instanceof HTMLFormElement||(n instanceof HTMLButtonElement||n instanceof HTMLInputElement)&&n.form?.matches("[data-request]")||(e.preventDefault(),m(n,n.closest("form")??void 0))}const y=new Set(["info","error","success","warning"]);function v(e){return"string"==typeof e&&y.has(e)?e:"info"}function w(e,t,n){if("string"!=typeof n||!n.trim())return;const r=e[t],a=Array.isArray(r)?r:r?[r]:[],o=n.trim();a.includes(o)||(e[t]=[...a,o])}function b(e,t){return t?/^(https?:)?\/\//.test(t)||t.startsWith("#")||t.startsWith("mailto:")||t.startsWith("tel:")||t.startsWith("sms:")?t:`${e.replace(/\/+$/,"")}/${t.replace(/^\/+/,"")}`:e}function k(e){const t=new URLSearchParams;for(const[n,r]of Object.entries(e))null!=r&&t.set(n,String(r));const n=t.toString();return n?`?${n}`:""}function A(e,t){return e.replace(/:([A-Za-z0-9_]+\*?)/g,(e,n)=>{const r=n.endsWith("*");n=n.endsWith("*")?n.slice(0,-1):n;const a=t[n];if(delete t[n],null==a)return"";const o=encodeURIComponent(String(a));return r?o.replace(/%2F/g,"/"):o})}function L(e,n,r){const a=t.reactive({});function o(){const t=e();if(!t)throw new Error("October Functions: runtime not ready");return t}function i(){const e=o(),t=e.payload?.october;if(!t)throw new Error("October Functions: missing october payload.");return t}function s(e){return b(i().baseUrl,e)}function c(e){const t=o(),n=t.payload?.site?.locale||"",r=t.payload?.october?.fallbackLocale||"",a=t.payload?.october?.strings?.[n]||{},i=t.payload?.october?.strings?.[r]||{};return e in a?a[e]:e in i?i[e]:null}function d(e,t){if(!t)return e;for(const[n,r]of Object.entries(t)){if(null==r)continue;const t=String(n),a=String(r);e=e.replaceAll(`:${t}`,a);const o=t.charAt(0).toUpperCase()+t.slice(1);e=(e=e.replaceAll(`:${o}`,a.charAt(0).toUpperCase()+a.slice(1))).replaceAll(`:${t.toUpperCase()}`,a.toUpperCase())}return e}function p(e,t,n){let r=c(e);if(null===r)return e;return d(function(e,t){const n=e.split("|").map(e=>e.trim()).filter(Boolean);for(const e of n){const n=e.match(/^\{(\d+)\}\s*(.*)$/);if(n){if(t===Number(n[1]))return n[2];continue}const r=e.match(/^\[(\d+|\-?\*),(\d+|\-?\*)\]\s*(.*)$/);if(r){const e=r[1],n=r[2],a=r[3],o="*"===e?-1/0:Number(e),i="*"===n?1/0:Number(n);if(t>=o&&t<=i)return a;continue}}return 1===n.length?n[0]:2===n.length?1===t?n[0]:n[1]:n[n.length-1]}(r,t),{count:t,...n})}async function f(e,t={}){if(!/^(?:\w+::)?on[A-Z][\w+]*$/.test(e))throw new Error(`October AJAX handler name is invalid: ${e}`);const a=t.only??["token","page.props","page.flash","components","shared"],o={"X-AJAX-HANDLER":e,"X-AJAX-FLASH":!1===t.flash?"0":"1"};t.partials?.length&&(o["X-AJAX-PARTIALS"]=t.partials.join("&"));const i=await n.raw(window.location.pathname+window.location.search,{method:"post",data:t.data??{},headers:o,only:a,preserveState:t.preserveState??!0}),s=await i.json(),l=s.__ajax??{},u=s.__laika;if(delete s.__ajax,delete s.__laika,u&&!1!==t.flash){const e=function(e){const t={};for(const n of e.ops??[])"flash"===n.op&&w(t,v(n.level??n.severity),n.text??n.message);const n=Object.values(e.invalid??{}).flatMap(e=>Array.isArray(e)?e:[e]);for(const e of n)w(t,"error",e);return 0===Object.keys(t).length&&"string"==typeof e.message&&w(t,v(e.severity),e.message),t}(l);Object.keys(e).length>0&&u.page&&(u.page.flash={...u.page.flash??{},...e})}u&&await r(u,a);const c={};for(const e of l.ops??[])"partial"===e.op&&"string"==typeof e.name?c[e.name]=String(e.html??""):"dispatch"===e.op&&"string"==typeof e.event?window.dispatchEvent(new CustomEvent(e.event,{detail:e.detail})):"redirect"===e.op&&e.url?window.location.assign(String(e.url)):"reload"===e.op&&window.location.reload();if(!i.ok&&!("ok"in l))throw new Error(`October AJAX request failed (${i.status}).`);return{ok:l.ok??i.ok,status:i.status,data:s,invalid:l.invalid??{},message:l.message??null,severity:l.severity??"info",partials:c}}async function m(e,t){const r=await n.raw(s("/x-laika/filter"),{method:"post",data:{filter:e,payload:t}});if(!r.ok)throw new Error(`October filter failed: ${e}. (${r.status})`);const a=await r.json();if("success"!==a.status)throw new Error(`October filter failed: ${e}. (${r.status}) - (${a.message||"An unknown error occurred."})`);return a.result.content}const y={app:s,theme:function(e){return Array.isArray(e)?e.map(e=>b(i().themeBaseUrl,e??"")):b(i().themeBaseUrl,e)},page:function(e=null,t={},n=!0){const r=i(),a=r.pages??{},l={...r.currentParams??{}};if("boolean"==typeof t&&(n=t,t={}),t&&"object"==typeof t&&!Array.isArray(t)||(t={}),!e){const e=o().payload?.page?.url??"/",n=k(t);return n?e+(e.includes("?")?`&${n.slice(1)}`:n):e}if("string"!=typeof e)return;const u=a[e=e.toLowerCase()];if(!u?.pattern)return;const c=n?{...l,...t}:{...t},d={...t},p=A(u.pattern,c);return A(u.pattern,d),s(p)+k(d)},link:function(e){if(e.startsWith("http"))return e;{const t=o();return s(`/x-laika/resolve?path=${btoa(e)}&theme=${t.payload?.page?.theme||"0"}`)}},media:function(e){const t=i(),n=("/"+String(e??"").replace(/\\/g,"/").replace(/^\/+/,"")).split("/").map(e=>encodeURIComponent(e)).join("/").replace(/%2F/g,"/");return b(t.mediaBaseUrl,n)},resize:function(e,t=null,n=null,r={}){const a=i(),o=a.resizer?.basePath??"/resize",l={src:e};null!=t&&(l.w=t),null!=n&&(l.h=n);for(const[e,t]of Object.entries(r??{}))l[`o_${e}`]=t;return s(o+k(l))},currency:function(e,t={}){const n="number"==typeof e?e:Number(String(e).replace(",","."));if(!Number.isFinite(n))return String(e);const{locale:r="de-AT",currency:a="EUR",style:o="currency",minimumFractionDigits:i,maximumFractionDigits:s}=t;return new Intl.NumberFormat(r,{style:o,currency:a,minimumFractionDigits:i,maximumFractionDigits:s}).format(n)},trans:function(e,t){let n=c(e);return null===n?e:d(n,t)},transChoice:p,placeholder:function(e,t=null){const n=o();return e in(n.payload?.page?.placeholders||{})?(n.payload?.page?.placeholders||{})[e]:e in a?a[e]:t},hasPlaceholder:function(e){const t=o();return e in(t.payload?.page?.placeholders||{})||e in a},setPlaceholder:function(e,t){a[e]=t},request:f,renderPartial:async function(e,t={}){const n=await f("onLaikaRenderPartial",{data:{name:e,parameters:t},only:["token"],preserveState:!0});if(!n.ok)throw new Error(n.message??`Unable to render partial: ${e}`);return n.data.html??""},content:async function(e,t={}){const n=await f("onLaikaRenderContent",{data:{name:e,parameters:t},only:["token"],preserveState:!0});if(!n.ok)throw new Error(n.message??`Unable to render content: ${e}`);return n.data.html??""},filter:function(e,t){return m(e,{content:t})},htmlLimit:function(e,t=100,n="..."){if(t<=0)return n;const r=document.createElement("template");r.innerHTML=e;const a=document.createElement("div");let o=t,i=!1;const s=e=>{if(i)return null;if(e.nodeType===Node.TEXT_NODE){const t=Array.from(e.textContent??"");return t.length<=o?(o-=t.length,document.createTextNode(t.join(""))):(i=!0,document.createTextNode(t.slice(0,o).join("")+n))}if(e.nodeType!==Node.ELEMENT_NODE)return e.cloneNode(!1);const t=e.cloneNode(!1);for(const n of Array.from(e.childNodes)){const e=s(n);if(e&&t.appendChild(e),i)break}return t};for(const e of Array.from(r.content.childNodes)){const t=s(e);if(t&&a.appendChild(t),i)break}return a.innerHTML},md:e=>m("md",{content:e}),mdSafe:e=>m("md_safe",{content:e}),mdClean:e=>m("md_clean",{content:e}),mdIndent:e=>m("md_indent",{content:e}),trans_choice:p,md_safe:e=>m("md_safe",{content:e}),md_clean:e=>m("md_clean",{content:e}),md_indent:e=>m("md_indent",{content:e})};return l=y.request,u||"undefined"==typeof document||(u=!0,document.addEventListener("submit",h),document.addEventListener("click",g)),y}function S(){const e=t.inject(i,null);if(!e)throw new Error("useOctober(): OctoberAPI not provided");return e}function E(e){return e?.default??e}function O(e,t){return t.split(".").reduce((e,t)=>null==e?void 0:e[t],e)}function P(e,t,n){const r=t.split(".");if(!r.length)return e;const a=Array.isArray(e)?e.slice():{...e??{}},o=r[r.length-1];let i=a,s=e??{};for(let e=0;e<r.length-1;e++){const t=r[e],n=s?.[t];let a;a=Array.isArray(n)?n.slice():n&&"object"==typeof n?{...n}:{},i[t]=a,i=a,s=n}return i[o]=n,a}function C(e,t){function n(t,n={}){const r=function(){const t=e();if(!t)throw new Error("Laika Router: runtime not ready");return t}(),a=(n.method??"GET").toUpperCase(),o=n.data??void 0,i=new Headers({Accept:"application/json","X-Requested-With":"XMLHttpRequest","X-Laika":"1",...n.headers??{}}),s=r.payload?.token;if(s){const[e,t]=s.split("|");i.set("X-CSRF-TOKEN",e),i.set("X-Laika-Token",t)}return n.force&&i.set("X-Laika-Force","1"),n.require?.length&&i.set("X-Laika-Require",n.require.join(",")),n.only?.length&&i.set("X-Laika-Only",n.only.join(",")),n.preserveState&&i.set("X-Laika-Preserve-State","1"),"GET"!==a&&i.set("Content-Type","application/json"),new Request(t,{method:a.toUpperCase(),headers:i,body:"GET"!==a?JSON.stringify(o??{}):null,credentials:"same-origin"})}async function r(e,r={}){const a=n(e,r);let o;try{await t.onBefore(a),o=await fetch(a),"GET"===a.method&&(r.replace?history.replaceState({},"",e):history.pushState({},"",e)),await t.onSuccess(a,o)}catch(e){throw await t.onFailure(e,a,o),e}}return{raw:async function(e,t={}){const r=n(e,t);try{return await fetch(r)}catch(e){throw e}},visit:r,get:(e,t)=>r(e,{...t??{},method:"GET"}),post:(e,t,n)=>r(e,{...n??{},method:"POST",data:t}),put:(e,t,n)=>r(e,{...n??{},method:"PUT",data:t}),patch:(e,t,n)=>r(e,{...n??{},method:"PATCH",data:t}),delete:(e,t,n)=>r(e,{...n??{},method:"DELETE",data:t})}}function $(){const e=t.inject(s,null);if(!e)throw new Error("useRouter(): Laika router not provided");return e}const j=t.shallowRef(),q=new Map;function T(e){const n=q.get(e);if(n)return n;const r=$(),a=S(),o=t.computed(()=>j.value?.components?.[e]??null);function i(e){const t=o.value;return!!t?.props&&Object.prototype.hasOwnProperty.call(t.props,e)}function s(e){const t=o.value;return!!t&&(!(!t.props||!(e in t.props))||(!(!Array.isArray(t.methods)||!t.methods.includes(e))||!(!Array.isArray(t.vars)||!t.vars.includes(e))))}function l(e,t){const n=o.value;return n?.props&&e in n.props?n.props[e]:t}async function u(n){const a=(Array.isArray(n)?n:[n]).filter(e=>!i(e));if(!a.length)return;const s=a.map(t=>`components.${e}.props.${t}`);return await r.get(window.location.pathname+window.location.search,{only:s,preserveState:!0,replace:!0}),await t.nextTick(),Array.isArray(n)?o.value?.props:o.value?.props[n]}async function c(){return void 0!==o.value?.html?o.value.html:(await r.get(window.location.pathname+window.location.search,{only:[`components.${e}.html`],preserveState:!0,replace:!0}),await t.nextTick(),o.value?.html??"")}const d=new Proxy({},{get(t,n){if("get"===n)return l;if("load"===n)return u;if("loadHtml"===n)return c;if("loaded"===n)return i;if("exists"===n)return s;if("request"===n)return(t,n)=>a.request(`${e}::${t}`,n);const r=o.value;return r?r[n]:void 0},has(e,t){if("get"===t||"load"===t||"loadHtml"===t||"loaded"===t||"exists"===t||"request"===t)return!0;{const e=o.value;return!!e&&t in e}}});return q.set(e,d),d}const x=t.shallowRef(),F=t.shallowRef(null),R=t.ref(void 0),H={get component(){return x.value},get payload(){return j.value},get layout(){return F.value},get key(){return R.value},title:e=>e,resolver:()=>{throw new Error("not implemented")},getLayout:()=>F.value,setLayout:e=>{F.value=e}};let M,_;const N=t.defineComponent({name:"Laika",props:{initialPayload:{type:Object,required:!0},initialComponent:{type:Object,required:!1},resolveComponent:{type:Function,required:!0},title:{type:Function,required:!1,default:e=>e}},setup:({initialPayload:e,initialComponent:n,resolveComponent:r,title:a})=>(j.value=e,R.value=void 0,x.value=n?t.markRaw(E(n)):void 0,x.value||Promise.resolve(r(e.page.component)).then(e=>{x.value=t.markRaw(E(e))}).catch(console.error),H.title=a??H.title,H.resolver=r,"page"in e&&"title"in e.page&&(document.title=(H.title??(e=>e))(e.page.title)||""),window.addEventListener("popstate",()=>window.location.reload()),()=>{if(!x.value||!j.value)return null;const e=j.value.page.props??{},n=t.h(x.value,{...e,key:R.value});let r;F.value&&(x.value.layout=F.value,F.value=null);const a=x.value.layout;if(a)if("function"==typeof a)r=a(t.h,n);else{r=(Array.isArray(a)?a:[a]).slice().reverse().reduce((n,r)=>t.h(r,{...e},()=>n),n)}else r=n;return t.h(t.Fragment,null,[t.h(o),r])})});const X={install(e){const t=this,n=()=>H,r=function(){const{components:e}=U();return new Proxy({},{get:(t,n)=>"has"===n?t=>!!e.value&&t in e.value:"get"===n?t=>e.value&&t in e.value?T(t):null:"string"==typeof n?e.value&&n in e.value?T(n):null:void 0})}(),o=a();M=C(n,{onBefore:async e=>{o.start(),await t.onRouterBefore(e)},onSuccess:async(e,n)=>{o.done(),await t.onRouterSuccess(e,n)},onFailure:async(e,n)=>{o.fail(),await t.onRouterFailure(e,n)}}),function(e,t){t.provide(s,e)}(M,e),_=L(n,M,async(e,t)=>this.swap(e,!0,t)),function(e,t){t.provide(i,e)}(_,e),Object.defineProperty(e.config.globalProperties,"$laika",{get:()=>H}),Object.defineProperty(e.config.globalProperties,"$router",{get:()=>M}),Object.defineProperty(e.config.globalProperties,"$payload",{get:()=>H.payload}),Object.defineProperty(e.config.globalProperties,"$site",{get:()=>H.payload?.site||{}}),Object.defineProperty(e.config.globalProperties,"$theme",{get:()=>H.payload?.theme||{}}),Object.defineProperty(e.config.globalProperties,"$page",{get:()=>H.payload?.page||{}}),Object.defineProperty(e.config.globalProperties,"$components",{get:()=>r}),Object.defineProperty(e.config.globalProperties,"$october",{get:()=>_}),Object.defineProperty(e.config.globalProperties,"$shared",{get:()=>H.payload?.shared||{}})},async onRouterBefore(e){},async onRouterSuccess(e,t){if(409===t.status){const e=t.headers.get("X-Laika-Location");throw e&&window.location.assign(e),new Error("Laika redirect")}if(!t.ok)throw window.location.assign(e.url),new Error("Navigation fallback");const n=(r=e.headers.get("X-Laika-Only")??t.headers.get("X-Laika-Only"))?r.split(",").map(e=>e.trim()).filter(Boolean):[];var r;const a=await t.json(),o="1"===e.headers.get("X-Laika-Preserve-State");await this.swap(a,o,n)},async onRouterFailure(e,t){},async swap(e,n,r){if("page"in e&&e.page?.component){const n=await H.resolver(e.page.component);x.value=t.markRaw(E(n))}if(r&&r.length&&j.value?j.value=this.patch(j.value,e,r):j.value=e,"page"in e&&e.page){const t=document.body.dataset.theme,n=(e.page.theme||"").trim().toLowerCase();t!==n&&""!==n&&(document.body.classList.remove(`theme-${t}`),document.body.classList.add(`theme-${n}`),document.body.dataset.theme=n);const r=document.body.dataset.layout,a=(e.page.layout||"").trim().toLowerCase();r!==a&&""!==a&&(document.body.classList.remove(`layout-${r}`),document.body.classList.add(`layout-${a}`),document.body.dataset.layout=a);const o=document.body.dataset.page,i=(e.page.id||"").trim().toLowerCase();o!==i&&""!==i&&(document.body.classList.remove(`page-${o}`),document.body.classList.add(`page-${i}`),document.body.dataset.page=i);const s={...e.page.head??{}},l=new Map,u=document.createElement("head");for(const[e,t]of Object.entries(s)){u.innerHTML=t.trim();const n=u.firstElementChild;n&&(n.setAttribute("data-laika-id",e),u.removeChild(n),l.set(e,n))}const c=new Set,d=document.head.querySelectorAll("[data-laika-id]");for(const t of e.page.head?Array.from(d):[]){const e=t.getAttribute("data-laika-id");if(!e)continue;const n=l.get(e);n?(c.add(e),t.outerHTML!==n.outerHTML&&document.head.replaceChild(n,t)):t.remove()}const p=document.head.querySelectorAll("[data-laika-id]"),f=p.length>0?p[p.length-1]?.nextElementSibling:null;for(const[t,n]of e.page.head?l:[])c.has(t)||(f?document.head.insertBefore(n,f):document.head.appendChild(n))}if("page"in e&&"title"in e.page){const e=j.value?.page?.title;e&&(document.title=(H.title??(e=>e))(e)||"Laika Unknown Title")}R.value=n?R.value:Date.now()},patch(e,t,n){let r={...e};for(const e of n){if(!e)continue;if(!e.includes(".")){e in t&&(r[e]=t[e]);continue}const n=O(t,e);void 0!==n&&(r=P(r,e,n))}return r}};function U(){return{version:t.computed(()=>j.value?.version),token:t.computed(()=>j.value?.token),site:t.computed(()=>j.value?.site),theme:t.computed(()=>j.value?.theme),page:t.computed(()=>j.value?.page),components:t.computed(()=>j.value?.components),october:t.computed(()=>j.value?.october),shared:t.computed(()=>j.value?.shared)}}const B=t.defineComponent({name:"LaikaFlash",props:{type:{type:String,required:!1}},slots:Object,setup(e,{slots:n}){const r=U();return()=>{const a=r.page.value.flash;if(null!=e.type&&!(e.type in a))return null;if(!n.default)return null;const o=[];for(const[t,r]of Object.entries(a)){if(null!=e.type&&e.type!==t)continue;const a=Array.isArray(r)?r:[r];for(const e of a)o.push(n.default({type:t,message:e}))}return o.length>0?t.h("div",{},o):null}}}),D=t.defineComponent({name:"LaikaHead",props:{watchKey:{type:[String,Number],required:!1}},slots:Object,setup(e,{slots:n}){const r=U(),a=t.ref(0),o=()=>e.watchKey??r.page.value.id??r.page.value.url??null;return t.watch(()=>o(),()=>{a.value++}),()=>{const e=n.default?.();return e?t.h(t.Teleport,{to:"head",key:`${String(o())}:${a.value}`},e):null}}});const I=t.defineComponent({name:"LaikaLink",inheritAttrs:!1,props:{page:{type:String,required:!1},params:{type:Object,default:{},required:!1},persistence:{type:Boolean,default:!0,required:!1},link:{type:String,required:!1},target:{type:String,required:!1}},slots:Object,setup(e,{slots:n,attrs:r}){const a=S(),o=$(),i=t.computed(()=>{if(e.page&&e.page.trim().length){const t=e.page.trim(),n=a.page(t,e.params,e.persistence);return n||(console.warn(`[LAIKA] Unable to resolve October page "${t}".`),"#")}const t=(e.link??"").trim();return t?t.startsWith("http")?t:a.app(t.replace(/^\/+/,"")):"#"}),s=t.computed(()=>Boolean(e.page?.trim())&&"#"===i.value),l=t.computed(()=>!s.value&&("_blank"===e.target||i.value.indexOf(`//${window.location.hostname}/`)<0));return()=>{const a={...r,href:i.value,target:e.target,"aria-disabled":s.value||void 0};s.value?a.onClick=e=>{e.preventDefault()}:l.value||(a.onClick=e=>{var t;e.preventDefault(),t=e,s.value?t.preventDefault():l.value||0===t.button&&(t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||o.visit(i.value))});const u=n.default?n.default(a,r):void 0;return t.h("a",a,u||void 0)}}}),W=t.defineComponent({name:"LaikaPageComponent",props:{name:{type:String,required:!0}},slots:Object,setup(e,{slots:n}){const r=U(),a=T(e.name),o=t.ref(!1);return t.watch(()=>r.components.value?.[e.name],async e=>{if(e&&void 0===e.html&&!o.value){o.value=!0;try{await a.loadHtml()}finally{o.value=!1}}},{immediate:!0}),()=>{if(!r.components.value||!(e.name in r.components.value))return null;const o=r.components.value[e.name]||void 0;if(!o)return null;const i=n.default?.(a);return i?t.h("div",{},i):o.html?t.h("div",{innerHTML:o.html}):null}}}),J=t.defineComponent({name:"LaikaPageContent",setup(e){const n=U();return()=>{const e=n.page.value.content??"";return t.h("div",{innerHTML:e})}}}),K=t.defineComponent({name:"LaikaServerPartial",props:{name:{type:String,required:!0},parameters:{type:Object,default:()=>({})},tag:{type:String,default:"div"}},setup(e){const n=S(),r=t.ref(""),a=t.ref(!1),o=t.ref(null);let i=0;return t.watch(()=>[e.name,e.parameters],async()=>{const t=++i;a.value=!0,o.value=null;try{const a=await n.renderPartial(e.name,e.parameters);t===i&&(r.value=a)}catch(e){t===i&&(o.value=e instanceof Error?e:new Error(String(e)))}finally{t===i&&(a.value=!1)}},{immediate:!0,deep:!0}),()=>t.h(e.tag,{innerHTML:r.value,"data-laika-partial":e.name,"data-loading":a.value?"true":void 0,"data-error":o.value?.message})}}),z=new Map,G=new Map;function V(e,n){const r=S(),a=t.ref(""),o=t.ref(!1),i=t.ref(null);let s=0;async function l(){const l=++s,u=t.toValue(e),c=t.toValue(n)??"",d=`${u}\0${c}`;o.value=!0,i.value=null;try{const e=z.get(d);let t;if(void 0!==e)t=e;else{const e=G.get(d),n=e??r.filter(u,c);void 0===e&&G.set(d,n),t=await n,G.delete(d),z.set(d,t)}l===s&&(a.value=t)}catch(e){G.delete(d),l===s&&(i.value=e instanceof Error?e:new Error(String(e)))}finally{l===s&&(o.value=!1)}}return t.watch(()=>[t.toValue(e),t.toValue(n)],l,{immediate:!0}),{value:t.readonly(a),pending:t.readonly(o),error:t.readonly(i),refresh:l}}const Z=t.defineComponent({name:"LaikaOctoberFilter",props:{name:{type:String,required:!0},value:{type:String,default:""},tag:{type:String,default:"div"}},setup(e,{slots:n}){const r=V(()=>e.name,()=>e.value);return()=>n.default?n.default({value:r.value.value,pending:r.pending.value,error:r.error.value,refresh:r.refresh}):t.h(e.tag,{innerHTML:r.value.value,"data-loading":r.pending.value?"true":void 0,"data-error":r.error.value?.message})}});e.Flash=B,e.Head=D,e.Link=I,e.OctoberFilter=Z,e.PageComponent=W,e.PageContent=J,e.ProgressBar=o,e.ServerPartial=K,e.createLaikaApp=async function(e){const t=e.rootId?document.querySelector(e.rootId):document.querySelector(".app");if(!t)throw new Error(`Laika: root element not found (${e.rootId??".app"})`);const n=function(e='[data-laika="payload"]'){const t=document.head.querySelector(e);if(!t?.textContent?.trim())throw new Error("Laika: payload missing/empty");return JSON.parse(t.textContent)}(),r={initialPayload:n,initialComponent:E(await Promise.resolve(e.resolve(n.page.component))),resolveComponent:e.resolve,...e.title?{title:e.title}:{}};return e.setup({root:t,App:N,props:r,plugin:X,payload:n})},e.getProgressBar=a,e.laikaPlugin=X,e.useComponent=T,e.useLaika=function(){return H},e.useOctober=S,e.useOctoberFilter=V,e.usePage=function(){return t.computed(()=>j.value?.page)},e.usePayload=U,e.useRouter=$,e.useShared=function(){return t.computed(()=>j.value?.shared)},e.useSite=function(){return t.computed(()=>j.value?.site)},e.useTheme=function(){return t.computed(()=>j.value?.theme)}});
2
2
  //# sourceMappingURL=laika.js.map
package/dist/laika.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"laika.js","sources":["../src/plugins/get-progress-bar.ts","../src/components/progress-bar.ts","../src/symbols.ts","../src/larajax.ts","../src/plugins/use-october.ts","../src/utils.ts","../src/plugins/use-router.ts","../src/state.ts","../src/plugins/use-component.ts","../src/app.ts","../src/components/flash.ts","../src/components/head.ts","../src/components/link.ts","../src/components/page-component.ts","../src/components/page-content.ts","../src/components/server-partial.ts","../src/plugins/use-october-filter.ts","../src/components/october-filter.ts","../src/laika.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["progress","reactive","color","active","percent","timestamp","progressTimer","getProgressBar","done","force","window","clearInterval","setTimeout","state","start","Date","now","setInterval","Math","max","round","fail","ProgressBar","defineComponent","name","setup","props","h","class","style","top","left","width","height","position","backgroundColor","transition","zIndex","LAIKA_OCTOBER_KEY","Symbol","LAIKA_ROUTER_KEY","requester","listenersInstalled","dispatch","element","detail","dispatchEvent","CustomEvent","bubbles","cancelable","collectFormData","form","data","FormData","forEach","value","rawName","isArray","endsWith","slice","Array","parseRequestData","trim","JSON","parse","result","expression","match","exec","key","raw","setLoading","loading","toggleAttribute","setAttribute","HTMLButtonElement","HTMLInputElement","disabled","async","runRequest","handler","getAttribute","hasAttribute","targets","partial","selector","parsePartialTargets","flash","Boolean","partials","Object","keys","preserveState","entries","html","undefined","target","from","document","querySelectorAll","innerHTML","updatePartialTargets","ok","error","handleSubmit","event","HTMLFormElement","matches","preventDefault","submitter","HTMLElement","handleClick","origin","Element","closest","FLASH_TYPES","Set","normalizeFlashType","severity","has","appendFlashMessage","type","message","current","messages","nextMessage","includes","joinUrl","base","path","test","startsWith","replace","encodeQuery","params","qs","URLSearchParams","k","v","set","String","str","toString","fillPattern","pattern","_","escapeSlash","val","encodedVal","encodeURIComponent","createOctober","getRuntime","router","applyPayload","placeholders","requireRuntime","runtime","Error","boot","october","payload","app","baseUrl","getLocalizationString","locale","site","fallbackLocale","localeStrings","strings","fallbackStrings","transformLocalizationString","string","replacements","rawKey","rawVal","replaceAll","uc","charAt","toUpperCase","transChoice","number","localeString","n","parts","split","map","s","filter","part","exact","Number","range","minRaw","maxRaw","text","min","Infinity","length","choosePluralForm","count","request","options","only","headers","join","response","location","pathname","search","method","json","ajax","__ajax","nextPayload","__laika","ajaxFlash","operation","ops","op","level","invalidMessages","values","invalid","flatMap","collectAjaxFlash","page","url","assign","reload","status","callFilter","content","api","theme","p","themeBaseUrl","persistence","oc","pages","currentParams","query","pageInfo","toLowerCase","routeParams","queryParams","link","btoa","media","file","encoded","mediaBaseUrl","resize","input","basePath","resizer","src","w","currency","num","isFinite","minimumFractionDigits","maximumFractionDigits","Intl","NumberFormat","format","trans","placeholder","defaultValue","hasPlaceholder","setPlaceholder","renderPartial","parameters","htmlLimit","maxLength","end","source","createElement","output","remaining","truncated","cloneNode","node","nodeType","Node","TEXT_NODE","characters","textContent","createTextNode","ELEMENT_NODE","clone","child","childNodes","childClone","appendChild","md","mdSafe","mdClean","mdIndent","trans_choice","md_safe","md_clean","md_indent","addEventListener","useOctober","inject","unwrapModule","mod","default","getByPath","obj","reduce","acc","setByPath","root","out","last","curOut","curIn","i","nextIn","nextOut","createRouter","hooks","prepare","Headers","Accept","token","csrfToken","laikaToken","require","Request","body","stringify","credentials","visit","onBefore","fetch","history","replaceState","pushState","onSuccess","err","onFailure","get","post","put","patch","delete","useRouter","shallowRef","cache","Map","useComponent","alias","existing","computed","components","loaded","cur","prototype","hasOwnProperty","call","exists","methods","vars","fallback","load","missing","nextTick","loadHtml","handle","Proxy","_t","prop","component","layout","ref","title","resolver","getLayout","setLayout","next","App","initialPayload","required","initialComponent","resolveComponent","Function","t","titleCallback","markRaw","Promise","resolve","then","catch","console","x","userComponent","childLayout","reverse","L","Fragment","plugin","install","self","this","componentsFacade","usePayload","createComponentsFacade","onRouterBefore","onRouterSuccess","onRouterFailure","provide","provideRouter","swap","provideOctober","defineProperty","config","globalProperties","shared","loc","header","currTheme","dataset","nextTheme","classList","remove","add","currLayout","nextLayout","currPage","nextPage","id","newTags","head","newNodes","temp","el","firstElementChild","removeChild","usedIds","oldTags","newEl","outerHTML","replaceChild","childs","nextElementSibling","insertBefore","version","Flash","slots","children","push","Head","watchKey","revision","getUniqueKey","watch","Teleport","to","Link","inheritAttrs","attrs","resolvedUrl","isExternal","indexOf","hostname","customProps","href","onClick","ev","button","metaKey","ctrlKey","shiftKey","altKey","PageComponent","loadingHtml","componentData","immediate","PageContent","ServerPartial","tag","pending","currentRevision","reason","deep","valueCache","requestCache","useOctoberFilter","refresh","filterName","toValue","cacheKey","cachedValue","cachedRequest","activeRequest","readonly","OctoberFilter","rootId","querySelector","readInitialPayload"],"mappings":"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"}
1
+ {"version":3,"file":"laika.js","sources":["../src/plugins/get-progress-bar.ts","../src/components/progress-bar.ts","../src/symbols.ts","../src/larajax.ts","../src/plugins/use-october.ts","../src/utils.ts","../src/plugins/use-router.ts","../src/state.ts","../src/plugins/use-component.ts","../src/app.ts","../src/components/flash.ts","../src/components/head.ts","../src/components/link.ts","../src/components/page-component.ts","../src/components/page-content.ts","../src/components/server-partial.ts","../src/plugins/use-october-filter.ts","../src/components/october-filter.ts","../src/laika.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["progress","reactive","color","active","percent","timestamp","progressTimer","getProgressBar","done","force","window","clearInterval","setTimeout","state","start","Date","now","setInterval","Math","max","round","fail","ProgressBar","defineComponent","name","setup","props","h","class","style","top","left","width","height","position","backgroundColor","transition","zIndex","LAIKA_OCTOBER_KEY","Symbol","LAIKA_ROUTER_KEY","requester","listenersInstalled","dispatch","element","detail","dispatchEvent","CustomEvent","bubbles","cancelable","collectFormData","form","data","FormData","forEach","value","rawName","isArray","endsWith","slice","Array","parseRequestData","trim","JSON","parse","result","expression","match","exec","key","raw","setLoading","loading","toggleAttribute","setAttribute","HTMLButtonElement","HTMLInputElement","disabled","async","runRequest","handler","getAttribute","hasAttribute","targets","partial","selector","parsePartialTargets","flash","Boolean","partials","Object","keys","preserveState","entries","html","undefined","target","from","document","querySelectorAll","innerHTML","updatePartialTargets","ok","error","handleSubmit","event","HTMLFormElement","matches","preventDefault","submitter","HTMLElement","handleClick","origin","Element","closest","FLASH_TYPES","Set","normalizeFlashType","severity","has","appendFlashMessage","type","message","current","messages","nextMessage","includes","joinUrl","base","path","test","startsWith","replace","encodeQuery","params","qs","URLSearchParams","k","v","set","String","str","toString","fillPattern","pattern","_","escapeSlash","val","encodedVal","encodeURIComponent","createOctober","getRuntime","router","applyPayload","placeholders","requireRuntime","runtime","Error","boot","october","payload","app","baseUrl","getLocalizationString","locale","site","fallbackLocale","localeStrings","strings","fallbackStrings","transformLocalizationString","string","replacements","rawKey","rawVal","replaceAll","uc","charAt","toUpperCase","transChoice","number","localeString","n","parts","split","map","s","filter","part","exact","Number","range","minRaw","maxRaw","text","min","Infinity","length","choosePluralForm","count","request","options","only","headers","join","response","location","pathname","search","method","json","ajax","__ajax","nextPayload","__laika","ajaxFlash","operation","ops","op","level","invalidMessages","values","invalid","flatMap","collectAjaxFlash","page","url","assign","reload","status","callFilter","content","api","theme","p","themeBaseUrl","persistence","oc","pages","currentParams","query","pageInfo","toLowerCase","routeParams","queryParams","link","btoa","media","file","encoded","mediaBaseUrl","resize","input","basePath","resizer","src","w","currency","num","isFinite","minimumFractionDigits","maximumFractionDigits","Intl","NumberFormat","format","trans","placeholder","defaultValue","hasPlaceholder","setPlaceholder","renderPartial","parameters","htmlLimit","maxLength","end","source","createElement","output","remaining","truncated","cloneNode","node","nodeType","Node","TEXT_NODE","characters","textContent","createTextNode","ELEMENT_NODE","clone","child","childNodes","childClone","appendChild","md","mdSafe","mdClean","mdIndent","trans_choice","md_safe","md_clean","md_indent","addEventListener","useOctober","inject","unwrapModule","mod","default","getByPath","obj","reduce","acc","setByPath","root","out","last","curOut","curIn","i","nextIn","nextOut","createRouter","hooks","prepare","Headers","Accept","token","csrfToken","laikaToken","require","Request","body","stringify","credentials","visit","onBefore","fetch","history","replaceState","pushState","onSuccess","err","onFailure","get","post","put","patch","delete","useRouter","shallowRef","cache","Map","useComponent","alias","existing","computed","components","loaded","cur","prototype","hasOwnProperty","call","exists","methods","vars","fallback","load","missing","nextTick","loadHtml","handle","Proxy","_t","prop","component","layout","ref","title","resolver","getLayout","setLayout","next","App","initialPayload","required","initialComponent","resolveComponent","Function","t","titleCallback","markRaw","Promise","resolve","then","catch","console","x","userComponent","childLayout","reverse","L","Fragment","plugin","install","self","this","componentsFacade","usePayload","createComponentsFacade","onRouterBefore","onRouterSuccess","onRouterFailure","provide","provideRouter","swap","provideOctober","defineProperty","config","globalProperties","shared","loc","header","currTheme","dataset","nextTheme","classList","remove","add","currLayout","nextLayout","currPage","nextPage","id","newTags","head","newNodes","temp","el","firstElementChild","removeChild","usedIds","oldTags","newEl","outerHTML","replaceChild","childs","nextElementSibling","insertBefore","version","Flash","slots","children","push","Head","watchKey","revision","getUniqueKey","watch","Teleport","to","Link","inheritAttrs","attrs","resolvedUrl","warn","isUnresolved","isExternal","indexOf","hostname","customProps","href","onClick","ev","button","metaKey","ctrlKey","shiftKey","altKey","PageComponent","loadingHtml","componentData","immediate","PageContent","ServerPartial","tag","pending","currentRevision","reason","deep","valueCache","requestCache","useOctoberFilter","refresh","filterName","toValue","cacheKey","cachedValue","cachedRequest","activeRequest","readonly","OctoberFilter","rootId","querySelector","readInitialPayload"],"mappings":"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"}
package/dist/laika.mjs CHANGED
@@ -1,2 +1,2 @@
1
- import{reactive as e,defineComponent as t,h as n,inject as r,shallowRef as a,computed as o,nextTick as i,ref as s,markRaw as l,Fragment as c,watch as u,Teleport as d,toValue as p,readonly as f}from"vue";const m=e({color:"#DE3163",active:!1,percent:0,timestamp:0});let g=null;function y(){function e(e=!1){g&&(window.clearInterval(g),g=null),(m.active||e)&&(m.percent=100,window.setTimeout(()=>{m.active=!1,m.percent=0},150))}return{state:m,start:function(){m.active=!0,m.percent=10,m.timestamp=Date.now(),g&&window.clearInterval(g),g=window.setInterval(()=>{m.active&&m.percent<90&&(m.percent+=Math.max(1,Math.round(.08*(90-m.percent))))},200)},done:e,fail:function(){e(!0)}}}const h=t({name:"LaikaProgressBar",setup(e){const t=y();return()=>t.state.active?n("div",{class:"laika-progress-bar",style:{top:0,left:0,width:`${t.state.percent}%`,height:"0.2rem",position:"fixed",backgroundColor:`var(--laika-progress-bar, ${t.state.color})`,transition:"width 120ms linear",zIndex:99999}}):void 0}}),v=Symbol("laika:october"),w=Symbol("laika:router");let b=null,k=!1;function A(e,t,n){return e.dispatchEvent(new CustomEvent(t,{bubbles:!0,cancelable:!0,detail:n}))}function L(e){const t={};return new FormData(e).forEach((e,n)=>{const r=n.endsWith("[]"),a=r?n.slice(0,-2):n;t[a]=a in t?Array.isArray(t[a])?[...t[a],e]:[t[a],e]:r?[e]:e}),t}function S(e){if(!e?.trim())return{};try{return JSON.parse(e)}catch{const t={},n=/(?:['"]([^'"]+)['"]|([A-Za-z0-9_.-]+))\s*:\s*(?:['"]([^'"]*)['"]|([^,}\s]+))/g;let r;for(;null!==(r=n.exec(e));){const e=r[1]??r[2],n=r[3]??r[4]??"";e&&(t[e]="true"===n||"false"!==n&&n)}return t}}function E(e,t){e.toggleAttribute("data-request-loading",t),e.setAttribute("aria-busy",t?"true":"false"),(e instanceof HTMLButtonElement||e instanceof HTMLInputElement)&&(e.disabled=t)}async function $(e,t){const n=e.getAttribute("data-request")??t?.getAttribute("data-request");if(!n||!b||e.hasAttribute("data-request-loading"))return;const r=function(e){if(!e?.trim())return{};const t={},n=/(?:['"]([^'"]+)['"]|([A-Za-z0-9_./:-]+))\s*:\s*['"]([^'"]+)['"]/g;let r;for(;null!==(r=n.exec(e));){const e=r[1]??r[2],n=r[3];e&&n&&(t[e]=n)}return t}(e.getAttribute("data-request-update")??t?.getAttribute("data-request-update")??null),a={...t?L(t):{},...S(t?.getAttribute("data-request-data")??null),...S(e.getAttribute("data-request-data"))};if(A(e,"ajax:before",{handler:n,data:a})){E(e,!0);try{const o=await b(n,{data:a,flash:e.hasAttribute("data-request-flash")||Boolean(t?.hasAttribute("data-request-flash")),partials:Object.keys(r),preserveState:!0});!function(e,t){for(const[n,r]of Object.entries(t)){const t=e.partials[n];if(void 0!==t)for(const e of Array.from(document.querySelectorAll(r)))e.innerHTML=t}}(o,r),A(e,o.ok?"ajax:success":"ajax:error",o)}catch(t){A(e,"ajax:error",{handler:n,error:t})}finally{E(e,!1),A(e,"ajax:complete",{handler:n})}}}function O(e){const t=e.target instanceof HTMLFormElement?e.target:null;if(!t?.matches("[data-request]"))return;e.preventDefault();$(e.submitter instanceof HTMLElement?e.submitter:t,t)}function j(e){const t=e.target instanceof Element?e.target:null,n=t?.closest("[data-request]");!n||n instanceof HTMLFormElement||(n instanceof HTMLButtonElement||n instanceof HTMLInputElement)&&n.form?.matches("[data-request]")||(e.preventDefault(),$(n,n.closest("form")??void 0))}const P=new Set(["info","error","success","warning"]);function q(e){return"string"==typeof e&&P.has(e)?e:"info"}function T(e,t,n){if("string"!=typeof n||!n.trim())return;const r=e[t],a=Array.isArray(r)?r:r?[r]:[],o=n.trim();a.includes(o)||(e[t]=[...a,o])}function C(e,t){return t?/^(https?:)?\/\//.test(t)||t.startsWith("#")||t.startsWith("mailto:")||t.startsWith("tel:")||t.startsWith("sms:")?t:`${e.replace(/\/+$/,"")}/${t.replace(/^\/+/,"")}`:e}function x(e){const t=new URLSearchParams;for(const[n,r]of Object.entries(e))null!=r&&t.set(n,String(r));const n=t.toString();return n?`?${n}`:""}function H(e,t){return e.replace(/:([A-Za-z0-9_]+\*?)/g,(e,n)=>{const r=n.endsWith("*");n=n.endsWith("*")?n.slice(0,-1):n;const a=t[n];if(delete t[n],null==a)return"";const o=encodeURIComponent(String(a));return r?o.replace(/%2F/g,"/"):o})}function M(t,n,r){const a=e({});function o(){const e=t();if(!e)throw new Error("October Functions: runtime not ready");return e}function i(){const e=o(),t=e.payload?.october;if(!t)throw new Error("October Functions: missing october payload.");return t}function s(e){return C(i().baseUrl,e)}function l(e){const t=o(),n=t.payload?.site?.locale||"",r=t.payload?.october?.fallbackLocale||"",a=t.payload?.october?.strings?.[n]||{},i=t.payload?.october?.strings?.[r]||{};return e in a?a[e]:e in i?i[e]:null}function c(e,t){if(!t)return e;for(const[n,r]of Object.entries(t)){if(null==r)continue;const t=String(n),a=String(r);e=e.replaceAll(`:${t}`,a);const o=t.charAt(0).toUpperCase()+t.slice(1);e=(e=e.replaceAll(`:${o}`,a.charAt(0).toUpperCase()+a.slice(1))).replaceAll(`:${t.toUpperCase()}`,a.toUpperCase())}return e}function u(e,t,n){let r=l(e);if(null===r)return e;return c(function(e,t){const n=e.split("|").map(e=>e.trim()).filter(Boolean);for(const e of n){const n=e.match(/^\{(\d+)\}\s*(.*)$/);if(n){if(t===Number(n[1]))return n[2];continue}const r=e.match(/^\[(\d+|\-?\*),(\d+|\-?\*)\]\s*(.*)$/);if(r){const e=r[1],n=r[2],a=r[3],o="*"===e?-1/0:Number(e),i="*"===n?1/0:Number(n);if(t>=o&&t<=i)return a;continue}}return 1===n.length?n[0]:2===n.length?1===t?n[0]:n[1]:n[n.length-1]}(r,t),{count:t,...n})}async function d(e,t={}){if(!/^(?:\w+::)?on[A-Z][\w+]*$/.test(e))throw new Error(`October AJAX handler name is invalid: ${e}`);const a=t.only??["token","page.props","page.flash","components","shared"],o={"X-AJAX-HANDLER":e,"X-AJAX-FLASH":!1===t.flash?"0":"1"};t.partials?.length&&(o["X-AJAX-PARTIALS"]=t.partials.join("&"));const i=await n.raw(window.location.pathname+window.location.search,{method:"post",data:t.data??{},headers:o,only:a,preserveState:t.preserveState??!0}),s=await i.json(),l=s.__ajax??{},c=s.__laika;if(delete s.__ajax,delete s.__laika,c&&!1!==t.flash){const e=function(e){const t={};for(const n of e.ops??[])"flash"===n.op&&T(t,q(n.level??n.severity),n.text??n.message);const n=Object.values(e.invalid??{}).flatMap(e=>Array.isArray(e)?e:[e]);for(const e of n)T(t,"error",e);return 0===Object.keys(t).length&&"string"==typeof e.message&&T(t,q(e.severity),e.message),t}(l);Object.keys(e).length>0&&c.page&&(c.page.flash={...c.page.flash??{},...e})}c&&await r(c,a);const u={};for(const e of l.ops??[])"partial"===e.op&&"string"==typeof e.name?u[e.name]=String(e.html??""):"dispatch"===e.op&&"string"==typeof e.event?window.dispatchEvent(new CustomEvent(e.event,{detail:e.detail})):"redirect"===e.op&&e.url?window.location.assign(String(e.url)):"reload"===e.op&&window.location.reload();if(!i.ok&&!("ok"in l))throw new Error(`October AJAX request failed (${i.status}).`);return{ok:l.ok??i.ok,status:i.status,data:s,invalid:l.invalid??{},message:l.message??null,severity:l.severity??"info",partials:u}}async function p(e,t){const r=await n.raw(s("/x-laika/filter"),{method:"post",data:{filter:e,payload:t}});if(!r.ok)throw new Error(`October filter failed: ${e}. (${r.status})`);const a=await r.json();if("success"!==a.status)throw new Error(`October filter failed: ${e}. (${r.status}) - (${a.message||"An unknown error occurred."})`);return a.result.content}const f={app:s,theme:function(e){return Array.isArray(e)?e.map(e=>C(i().themeBaseUrl,e??"")):C(i().themeBaseUrl,e)},page:function(e=null,t={},n=!0){const r=i(),a=r.pages??{},l={...r.currentParams??{}};if("boolean"==typeof t&&(n=t,t={}),t&&"object"==typeof t&&!Array.isArray(t)||(t={}),!e){const e=o().payload?.page?.url??"/",n=x(t);return n?e+(e.includes("?")?`&${n.slice(1)}`:n):e}if("string"!=typeof e)return;const c=a[e=e.toLowerCase()];if(!c?.pattern)return;const u=n?{...l,...t}:{...t},d={...t},p=H(c.pattern,u);return H(c.pattern,d),s(p)+x(d)},link:function(e){if(e.startsWith("http"))return e;{const t=o();return s(`/x-laika/resolve?path=${btoa(e)}&theme=${t.payload?.page?.theme||"0"}`)}},media:function(e){const t=i(),n=("/"+String(e??"").replace(/\\/g,"/").replace(/^\/+/,"")).split("/").map(e=>encodeURIComponent(e)).join("/").replace(/%2F/g,"/");return C(t.mediaBaseUrl,n)},resize:function(e,t=null,n=null,r={}){const a=i(),o=a.resizer?.basePath??"/resize",l={src:e};null!=t&&(l.w=t),null!=n&&(l.h=n);for(const[e,t]of Object.entries(r??{}))l[`o_${e}`]=t;return s(o+x(l))},currency:function(e,t={}){const n="number"==typeof e?e:Number(String(e).replace(",","."));if(!Number.isFinite(n))return String(e);const{locale:r="de-AT",currency:a="EUR",style:o="currency",minimumFractionDigits:i,maximumFractionDigits:s}=t;return new Intl.NumberFormat(r,{style:o,currency:a,minimumFractionDigits:i,maximumFractionDigits:s}).format(n)},trans:function(e,t){let n=l(e);return null===n?e:c(n,t)},transChoice:u,placeholder:function(e,t=null){const n=o();return e in(n.payload?.page?.placeholders||{})?(n.payload?.page?.placeholders||{})[e]:e in a?a[e]:t},hasPlaceholder:function(e){const t=o();return e in(t.payload?.page?.placeholders||{})||e in a},setPlaceholder:function(e,t){a[e]=t},request:d,renderPartial:async function(e,t={}){const n=await d("onLaikaRenderPartial",{data:{name:e,parameters:t},only:["token"],preserveState:!0});if(!n.ok)throw new Error(n.message??`Unable to render partial: ${e}`);return n.data.html??""},content:async function(e,t={}){const n=await d("onLaikaRenderContent",{data:{name:e,parameters:t},only:["token"],preserveState:!0});if(!n.ok)throw new Error(n.message??`Unable to render content: ${e}`);return n.data.html??""},filter:function(e,t){return p(e,{content:t})},htmlLimit:function(e,t=100,n="..."){if(t<=0)return n;const r=document.createElement("template");r.innerHTML=e;const a=document.createElement("div");let o=t,i=!1;const s=e=>{if(i)return null;if(e.nodeType===Node.TEXT_NODE){const t=Array.from(e.textContent??"");return t.length<=o?(o-=t.length,document.createTextNode(t.join(""))):(i=!0,document.createTextNode(t.slice(0,o).join("")+n))}if(e.nodeType!==Node.ELEMENT_NODE)return e.cloneNode(!1);const t=e.cloneNode(!1);for(const n of Array.from(e.childNodes)){const e=s(n);if(e&&t.appendChild(e),i)break}return t};for(const e of Array.from(r.content.childNodes)){const t=s(e);if(t&&a.appendChild(t),i)break}return a.innerHTML},md:e=>p("md",{content:e}),mdSafe:e=>p("md_safe",{content:e}),mdClean:e=>p("md_clean",{content:e}),mdIndent:e=>p("md_indent",{content:e}),trans_choice:u,md_safe:e=>p("md_safe",{content:e}),md_clean:e=>p("md_clean",{content:e}),md_indent:e=>p("md_indent",{content:e})};return b=f.request,k||"undefined"==typeof document||(k=!0,document.addEventListener("submit",O),document.addEventListener("click",j)),f}function _(){const e=r(v,null);if(!e)throw new Error("useOctober(): OctoberAPI not provided");return e}function F(e){return e?.default??e}function N(e,t){return t.split(".").reduce((e,t)=>null==e?void 0:e[t],e)}function X(e,t,n){const r=t.split(".");if(!r.length)return e;const a=Array.isArray(e)?e.slice():{...e??{}},o=r[r.length-1];let i=a,s=e??{};for(let e=0;e<r.length-1;e++){const t=r[e],n=s?.[t];let a;a=Array.isArray(n)?n.slice():n&&"object"==typeof n?{...n}:{},i[t]=a,i=a,s=n}return i[o]=n,a}function R(e,t){function n(t,n={}){const r=function(){const t=e();if(!t)throw new Error("Laika Router: runtime not ready");return t}(),a=(n.method??"GET").toUpperCase(),o=n.data??void 0,i=new Headers({Accept:"application/json","X-Requested-With":"XMLHttpRequest","X-Laika":"1",...n.headers??{}}),s=r.payload?.token;if(s){const[e,t]=s.split("|");i.set("X-CSRF-TOKEN",e),i.set("X-Laika-Token",t)}return n.force&&i.set("X-Laika-Force","1"),n.require?.length&&i.set("X-Laika-Require",n.require.join(",")),n.only?.length&&i.set("X-Laika-Only",n.only.join(",")),n.preserveState&&i.set("X-Laika-Preserve-State","1"),"GET"!==a&&i.set("Content-Type","application/json"),new Request(t,{method:a.toUpperCase(),headers:i,body:"GET"!==a?JSON.stringify(o??{}):null,credentials:"same-origin"})}async function r(e,r={}){const a=n(e,r);let o;try{await t.onBefore(a),o=await fetch(a),"GET"===a.method&&(r.replace?history.replaceState({},"",e):history.pushState({},"",e)),await t.onSuccess(a,o)}catch(e){throw await t.onFailure(e,a,o),e}}return{raw:async function(e,t={}){const r=n(e,t);try{return await fetch(r)}catch(e){throw e}},visit:r,get:(e,t)=>r(e,{...t??{},method:"GET"}),post:(e,t,n)=>r(e,{...n??{},method:"POST",data:t}),put:(e,t,n)=>r(e,{...n??{},method:"PUT",data:t}),patch:(e,t,n)=>r(e,{...n??{},method:"PATCH",data:t}),delete:(e,t,n)=>r(e,{...n??{},method:"DELETE",data:t})}}function U(){const e=r(w,null);if(!e)throw new Error("useRouter(): Laika router not provided");return e}const B=a(),D=new Map;function I(e){const t=D.get(e);if(t)return t;const n=U(),r=_(),a=o(()=>B.value?.components?.[e]??null);function s(e){const t=a.value;return!!t?.props&&Object.prototype.hasOwnProperty.call(t.props,e)}function l(e){const t=a.value;return!!t&&(!(!t.props||!(e in t.props))||(!(!Array.isArray(t.methods)||!t.methods.includes(e))||!(!Array.isArray(t.vars)||!t.vars.includes(e))))}function c(e,t){const n=a.value;return n?.props&&e in n.props?n.props[e]:t}async function u(t){const r=(Array.isArray(t)?t:[t]).filter(e=>!s(e));if(!r.length)return;const o=r.map(t=>`components.${e}.props.${t}`);return await n.get(window.location.pathname+window.location.search,{only:o,preserveState:!0,replace:!0}),await i(),Array.isArray(t)?a.value?.props:a.value?.props[t]}async function d(){return void 0!==a.value?.html?a.value.html:(await n.get(window.location.pathname+window.location.search,{only:[`components.${e}.html`],preserveState:!0,replace:!0}),await i(),a.value?.html??"")}const p=new Proxy({},{get(t,n){if("get"===n)return c;if("load"===n)return u;if("loadHtml"===n)return d;if("loaded"===n)return s;if("exists"===n)return l;if("request"===n)return(t,n)=>r.request(`${e}::${t}`,n);const o=a.value;return o?o[n]:void 0},has(e,t){if("get"===t||"load"===t||"loadHtml"===t||"loaded"===t||"exists"===t||"request"===t)return!0;{const e=a.value;return!!e&&t in e}}});return D.set(e,p),p}const W=a(),J=a(null),z=s(void 0),K={get component(){return W.value},get payload(){return B.value},get layout(){return J.value},get key(){return z.value},title:e=>e,resolver:()=>{throw new Error("not implemented")},getLayout:()=>J.value,setLayout:e=>{J.value=e}};let G,Z;const Q=t({name:"Laika",props:{initialPayload:{type:Object,required:!0},initialComponent:{type:Object,required:!1},resolveComponent:{type:Function,required:!0},title:{type:Function,required:!1,default:e=>e}},setup:({initialPayload:e,initialComponent:t,resolveComponent:r,title:a})=>(B.value=e,z.value=void 0,W.value=t?l(F(t)):void 0,W.value||Promise.resolve(r(e.page.component)).then(e=>{W.value=l(F(e))}).catch(console.error),K.title=a??K.title,K.resolver=r,"page"in e&&"title"in e.page&&(document.title=(K.title??(e=>e))(e.page.title)||""),window.addEventListener("popstate",()=>window.location.reload()),()=>{if(!W.value||!B.value)return null;const e=B.value.page.props??{},t=n(W.value,{...e,key:z.value});let r;J.value&&(W.value.layout=J.value,J.value=null);const a=W.value.layout;if(a)if("function"==typeof a)r=a(n,t);else{r=(Array.isArray(a)?a:[a]).slice().reverse().reduce((t,r)=>n(r,{...e},()=>t),t)}else r=t;return n(c,null,[n(h),r])})});const V={install(e){const t=this,n=()=>K,r=function(){const{components:e}=ee();return new Proxy({},{get:(t,n)=>"has"===n?t=>!!e.value&&t in e.value:"get"===n?t=>e.value&&t in e.value?I(t):null:"string"==typeof n?e.value&&n in e.value?I(n):null:void 0})}(),a=y();G=R(n,{onBefore:async e=>{a.start(),await t.onRouterBefore(e)},onSuccess:async(e,n)=>{a.done(),await t.onRouterSuccess(e,n)},onFailure:async(e,n)=>{a.fail(),await t.onRouterFailure(e,n)}}),function(e,t){t.provide(w,e)}(G,e),Z=M(n,G,async(e,t)=>this.swap(e,!0,t)),function(e,t){t.provide(v,e)}(Z,e),Object.defineProperty(e.config.globalProperties,"$laika",{get:()=>K}),Object.defineProperty(e.config.globalProperties,"$router",{get:()=>G}),Object.defineProperty(e.config.globalProperties,"$payload",{get:()=>K.payload}),Object.defineProperty(e.config.globalProperties,"$site",{get:()=>K.payload?.site||{}}),Object.defineProperty(e.config.globalProperties,"$theme",{get:()=>K.payload?.theme||{}}),Object.defineProperty(e.config.globalProperties,"$page",{get:()=>K.payload?.page||{}}),Object.defineProperty(e.config.globalProperties,"$components",{get:()=>r}),Object.defineProperty(e.config.globalProperties,"$october",{get:()=>Z}),Object.defineProperty(e.config.globalProperties,"$shared",{get:()=>K.payload?.shared||{}})},async onRouterBefore(e){},async onRouterSuccess(e,t){if(409===t.status){const e=t.headers.get("X-Laika-Location");throw e&&window.location.assign(e),new Error("Laika redirect")}if(!t.ok)throw window.location.assign(e.url),new Error("Navigation fallback");const n=(r=e.headers.get("X-Laika-Only")??t.headers.get("X-Laika-Only"))?r.split(",").map(e=>e.trim()).filter(Boolean):[];var r;const a=await t.json(),o="1"===e.headers.get("X-Laika-Preserve-State");await this.swap(a,o,n)},async onRouterFailure(e,t){},async swap(e,t,n){if("page"in e&&e.page?.component){const t=await K.resolver(e.page.component);W.value=l(F(t))}if(n&&n.length&&B.value?B.value=this.patch(B.value,e,n):B.value=e,"page"in e&&e.page){const t=document.body.dataset.theme,n=(e.page.theme||"").trim().toLowerCase();t!==n&&""!==n&&(document.body.classList.remove(`theme-${t}`),document.body.classList.add(`theme-${n}`),document.body.dataset.theme=n);const r=document.body.dataset.layout,a=(e.page.layout||"").trim().toLowerCase();r!==a&&""!==a&&(document.body.classList.remove(`layout-${r}`),document.body.classList.add(`layout-${a}`),document.body.dataset.layout=a);const o=document.body.dataset.page,i=(e.page.id||"").trim().toLowerCase();o!==i&&""!==i&&(document.body.classList.remove(`page-${o}`),document.body.classList.add(`page-${i}`),document.body.dataset.page=i);const s={...e.page.head??{}},l=new Map,c=document.createElement("head");for(const[e,t]of Object.entries(s)){c.innerHTML=t.trim();const n=c.firstElementChild;n&&(n.setAttribute("data-laika-id",e),c.removeChild(n),l.set(e,n))}const u=new Set,d=document.head.querySelectorAll("[data-laika-id]");for(const t of e.page.head?Array.from(d):[]){const e=t.getAttribute("data-laika-id");if(!e)continue;const n=l.get(e);n?(u.add(e),t.outerHTML!==n.outerHTML&&document.head.replaceChild(n,t)):t.remove()}const p=document.head.querySelectorAll("[data-laika-id]"),f=p.length>0?p[p.length-1]?.nextElementSibling:null;for(const[t,n]of e.page.head?l:[])u.has(t)||(f?document.head.insertBefore(n,f):document.head.appendChild(n))}if("page"in e&&"title"in e.page){const e=B.value?.page?.title;e&&(document.title=(K.title??(e=>e))(e)||"Laika Unknown Title")}z.value=t?z.value:Date.now()},patch(e,t,n){let r={...e};for(const e of n){if(!e)continue;if(!e.includes(".")){e in t&&(r[e]=t[e]);continue}const n=N(t,e);void 0!==n&&(r=X(r,e,n))}return r}};function Y(){return K}function ee(){return{version:o(()=>B.value?.version),token:o(()=>B.value?.token),site:o(()=>B.value?.site),theme:o(()=>B.value?.theme),page:o(()=>B.value?.page),components:o(()=>B.value?.components),october:o(()=>B.value?.october),shared:o(()=>B.value?.shared)}}function te(){return o(()=>B.value?.site)}function ne(){return o(()=>B.value?.page)}function re(){return o(()=>B.value?.shared)}function ae(){return o(()=>B.value?.theme)}const oe=t({name:"LaikaFlash",props:{type:{type:String,required:!1}},slots:Object,setup(e,{slots:t}){const r=ee();return()=>{const a=r.page.value.flash;if(null!=e.type&&!(e.type in a))return null;if(!t.default)return null;const o=[];for(const[n,r]of Object.entries(a)){if(null!=e.type&&e.type!==n)continue;const a=Array.isArray(r)?r:[r];for(const e of a)o.push(t.default({type:n,message:e}))}return o.length>0?n("div",{},o):null}}}),ie=t({name:"LaikaHead",props:{watchKey:{type:[String,Number],required:!1}},slots:Object,setup(e,{slots:t}){const r=ee(),a=s(0),o=()=>e.watchKey??r.page.value.id??r.page.value.url??null;return u(()=>o(),()=>{a.value++}),()=>{const e=t.default?.();return e?n(d,{to:"head",key:`${String(o())}:${a.value}`},e):null}}});const se=t({name:"LaikaLink",inheritAttrs:!1,props:{page:{type:String,required:!1},params:{type:Object,default:{},required:!1},persistence:{type:Boolean,default:!0,required:!1},link:{type:String,required:!1},target:{type:String,required:!1}},slots:Object,setup(e,{slots:t,attrs:r}){const a=_(),i=U(),s=o(()=>{if(e.page&&e.page.trim().length)return a.page(e.page.trim(),e.params,e.persistence);const t=(e.link??"").trim();return t?t.startsWith("http")?t:a.app(t.replace(/^\/+/,"")):"#"}),l=o(()=>"_blank"===e.target||s.value.indexOf(`//${window.location.hostname}/`)<0);return()=>{const a={...r,href:s.value,target:e.target};l.value||(a.onClick=e=>{var t;e.preventDefault(),t=e,l.value||0===t.button&&(t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||i.visit(s.value))});const o=t.default?t.default(a,r):void 0;return n("a",a,o||void 0)}}}),le=t({name:"LaikaPageComponent",props:{name:{type:String,required:!0}},slots:Object,setup(e,{slots:t}){const r=ee(),a=I(e.name),o=s(!1);return u(()=>r.components.value?.[e.name],async e=>{if(e&&void 0===e.html&&!o.value){o.value=!0;try{await a.loadHtml()}finally{o.value=!1}}},{immediate:!0}),()=>{if(!r.components.value||!(e.name in r.components.value))return null;const o=r.components.value[e.name]||void 0;if(!o)return null;const i=t.default?.(a);return i?n("div",{},i):o.html?n("div",{innerHTML:o.html}):null}}}),ce=t({name:"LaikaPageContent",setup(e){const t=ee();return()=>{const e=t.page.value.content??"";return n("div",{innerHTML:e})}}}),ue=t({name:"LaikaServerPartial",props:{name:{type:String,required:!0},parameters:{type:Object,default:()=>({})},tag:{type:String,default:"div"}},setup(e){const t=_(),r=s(""),a=s(!1),o=s(null);let i=0;return u(()=>[e.name,e.parameters],async()=>{const n=++i;a.value=!0,o.value=null;try{const a=await t.renderPartial(e.name,e.parameters);n===i&&(r.value=a)}catch(e){n===i&&(o.value=e instanceof Error?e:new Error(String(e)))}finally{n===i&&(a.value=!1)}},{immediate:!0,deep:!0}),()=>n(e.tag,{innerHTML:r.value,"data-laika-partial":e.name,"data-loading":a.value?"true":void 0,"data-error":o.value?.message})}}),de=new Map,pe=new Map;function fe(e,t){const n=_(),r=s(""),a=s(!1),o=s(null);let i=0;async function l(){const s=++i,l=p(e),c=p(t)??"",u=`${l}\0${c}`;a.value=!0,o.value=null;try{const e=de.get(u);let t;if(void 0!==e)t=e;else{const e=pe.get(u),r=e??n.filter(l,c);void 0===e&&pe.set(u,r),t=await r,pe.delete(u),de.set(u,t)}s===i&&(r.value=t)}catch(e){pe.delete(u),s===i&&(o.value=e instanceof Error?e:new Error(String(e)))}finally{s===i&&(a.value=!1)}}return u(()=>[p(e),p(t)],l,{immediate:!0}),{value:f(r),pending:f(a),error:f(o),refresh:l}}const me=t({name:"LaikaOctoberFilter",props:{name:{type:String,required:!0},value:{type:String,default:""},tag:{type:String,default:"div"}},setup(e,{slots:t}){const r=fe(()=>e.name,()=>e.value);return()=>t.default?t.default({value:r.value.value,pending:r.pending.value,error:r.error.value,refresh:r.refresh}):n(e.tag,{innerHTML:r.value.value,"data-loading":r.pending.value?"true":void 0,"data-error":r.error.value?.message})}});async function ge(e){const t=e.rootId?document.querySelector(e.rootId):document.querySelector(".app");if(!t)throw new Error(`Laika: root element not found (${e.rootId??".app"})`);const n=function(e='[data-laika="payload"]'){const t=document.head.querySelector(e);if(!t?.textContent?.trim())throw new Error("Laika: payload missing/empty");return JSON.parse(t.textContent)}(),r={initialPayload:n,initialComponent:F(await Promise.resolve(e.resolve(n.page.component))),resolveComponent:e.resolve,...e.title?{title:e.title}:{}};return e.setup({root:t,App:Q,props:r,plugin:V,payload:n})}export{oe as Flash,ie as Head,se as Link,me as OctoberFilter,le as PageComponent,ce as PageContent,h as ProgressBar,ue as ServerPartial,ge as createLaikaApp,y as getProgressBar,V as laikaPlugin,I as useComponent,Y as useLaika,_ as useOctober,fe as useOctoberFilter,ne as usePage,ee as usePayload,U as useRouter,re as useShared,te as useSite,ae as useTheme};
1
+ import{reactive as e,defineComponent as t,h as n,inject as r,shallowRef as a,computed as o,nextTick as i,ref as s,markRaw as l,Fragment as u,watch as c,Teleport as d,toValue as p,readonly as f}from"vue";const m=e({color:"#DE3163",active:!1,percent:0,timestamp:0});let g=null;function y(){function e(e=!1){g&&(window.clearInterval(g),g=null),(m.active||e)&&(m.percent=100,window.setTimeout(()=>{m.active=!1,m.percent=0},150))}return{state:m,start:function(){m.active=!0,m.percent=10,m.timestamp=Date.now(),g&&window.clearInterval(g),g=window.setInterval(()=>{m.active&&m.percent<90&&(m.percent+=Math.max(1,Math.round(.08*(90-m.percent))))},200)},done:e,fail:function(){e(!0)}}}const v=t({name:"LaikaProgressBar",setup(e){const t=y();return()=>t.state.active?n("div",{class:"laika-progress-bar",style:{top:0,left:0,width:`${t.state.percent}%`,height:"0.2rem",position:"fixed",backgroundColor:`var(--laika-progress-bar, ${t.state.color})`,transition:"width 120ms linear",zIndex:99999}}):void 0}}),h=Symbol("laika:october"),w=Symbol("laika:router");let b=null,k=!1;function A(e,t,n){return e.dispatchEvent(new CustomEvent(t,{bubbles:!0,cancelable:!0,detail:n}))}function L(e){const t={};return new FormData(e).forEach((e,n)=>{const r=n.endsWith("[]"),a=r?n.slice(0,-2):n;t[a]=a in t?Array.isArray(t[a])?[...t[a],e]:[t[a],e]:r?[e]:e}),t}function S(e){if(!e?.trim())return{};try{return JSON.parse(e)}catch{const t={},n=/(?:['"]([^'"]+)['"]|([A-Za-z0-9_.-]+))\s*:\s*(?:['"]([^'"]*)['"]|([^,}\s]+))/g;let r;for(;null!==(r=n.exec(e));){const e=r[1]??r[2],n=r[3]??r[4]??"";e&&(t[e]="true"===n||"false"!==n&&n)}return t}}function E(e,t){e.toggleAttribute("data-request-loading",t),e.setAttribute("aria-busy",t?"true":"false"),(e instanceof HTMLButtonElement||e instanceof HTMLInputElement)&&(e.disabled=t)}async function $(e,t){const n=e.getAttribute("data-request")??t?.getAttribute("data-request");if(!n||!b||e.hasAttribute("data-request-loading"))return;const r=function(e){if(!e?.trim())return{};const t={},n=/(?:['"]([^'"]+)['"]|([A-Za-z0-9_./:-]+))\s*:\s*['"]([^'"]+)['"]/g;let r;for(;null!==(r=n.exec(e));){const e=r[1]??r[2],n=r[3];e&&n&&(t[e]=n)}return t}(e.getAttribute("data-request-update")??t?.getAttribute("data-request-update")??null),a={...t?L(t):{},...S(t?.getAttribute("data-request-data")??null),...S(e.getAttribute("data-request-data"))};if(A(e,"ajax:before",{handler:n,data:a})){E(e,!0);try{const o=await b(n,{data:a,flash:e.hasAttribute("data-request-flash")||Boolean(t?.hasAttribute("data-request-flash")),partials:Object.keys(r),preserveState:!0});!function(e,t){for(const[n,r]of Object.entries(t)){const t=e.partials[n];if(void 0!==t)for(const e of Array.from(document.querySelectorAll(r)))e.innerHTML=t}}(o,r),A(e,o.ok?"ajax:success":"ajax:error",o)}catch(t){A(e,"ajax:error",{handler:n,error:t})}finally{E(e,!1),A(e,"ajax:complete",{handler:n})}}}function O(e){const t=e.target instanceof HTMLFormElement?e.target:null;if(!t?.matches("[data-request]"))return;e.preventDefault();$(e.submitter instanceof HTMLElement?e.submitter:t,t)}function j(e){const t=e.target instanceof Element?e.target:null,n=t?.closest("[data-request]");!n||n instanceof HTMLFormElement||(n instanceof HTMLButtonElement||n instanceof HTMLInputElement)&&n.form?.matches("[data-request]")||(e.preventDefault(),$(n,n.closest("form")??void 0))}const P=new Set(["info","error","success","warning"]);function q(e){return"string"==typeof e&&P.has(e)?e:"info"}function C(e,t,n){if("string"!=typeof n||!n.trim())return;const r=e[t],a=Array.isArray(r)?r:r?[r]:[],o=n.trim();a.includes(o)||(e[t]=[...a,o])}function T(e,t){return t?/^(https?:)?\/\//.test(t)||t.startsWith("#")||t.startsWith("mailto:")||t.startsWith("tel:")||t.startsWith("sms:")?t:`${e.replace(/\/+$/,"")}/${t.replace(/^\/+/,"")}`:e}function x(e){const t=new URLSearchParams;for(const[n,r]of Object.entries(e))null!=r&&t.set(n,String(r));const n=t.toString();return n?`?${n}`:""}function H(e,t){return e.replace(/:([A-Za-z0-9_]+\*?)/g,(e,n)=>{const r=n.endsWith("*");n=n.endsWith("*")?n.slice(0,-1):n;const a=t[n];if(delete t[n],null==a)return"";const o=encodeURIComponent(String(a));return r?o.replace(/%2F/g,"/"):o})}function M(t,n,r){const a=e({});function o(){const e=t();if(!e)throw new Error("October Functions: runtime not ready");return e}function i(){const e=o(),t=e.payload?.october;if(!t)throw new Error("October Functions: missing october payload.");return t}function s(e){return T(i().baseUrl,e)}function l(e){const t=o(),n=t.payload?.site?.locale||"",r=t.payload?.october?.fallbackLocale||"",a=t.payload?.october?.strings?.[n]||{},i=t.payload?.october?.strings?.[r]||{};return e in a?a[e]:e in i?i[e]:null}function u(e,t){if(!t)return e;for(const[n,r]of Object.entries(t)){if(null==r)continue;const t=String(n),a=String(r);e=e.replaceAll(`:${t}`,a);const o=t.charAt(0).toUpperCase()+t.slice(1);e=(e=e.replaceAll(`:${o}`,a.charAt(0).toUpperCase()+a.slice(1))).replaceAll(`:${t.toUpperCase()}`,a.toUpperCase())}return e}function c(e,t,n){let r=l(e);if(null===r)return e;return u(function(e,t){const n=e.split("|").map(e=>e.trim()).filter(Boolean);for(const e of n){const n=e.match(/^\{(\d+)\}\s*(.*)$/);if(n){if(t===Number(n[1]))return n[2];continue}const r=e.match(/^\[(\d+|\-?\*),(\d+|\-?\*)\]\s*(.*)$/);if(r){const e=r[1],n=r[2],a=r[3],o="*"===e?-1/0:Number(e),i="*"===n?1/0:Number(n);if(t>=o&&t<=i)return a;continue}}return 1===n.length?n[0]:2===n.length?1===t?n[0]:n[1]:n[n.length-1]}(r,t),{count:t,...n})}async function d(e,t={}){if(!/^(?:\w+::)?on[A-Z][\w+]*$/.test(e))throw new Error(`October AJAX handler name is invalid: ${e}`);const a=t.only??["token","page.props","page.flash","components","shared"],o={"X-AJAX-HANDLER":e,"X-AJAX-FLASH":!1===t.flash?"0":"1"};t.partials?.length&&(o["X-AJAX-PARTIALS"]=t.partials.join("&"));const i=await n.raw(window.location.pathname+window.location.search,{method:"post",data:t.data??{},headers:o,only:a,preserveState:t.preserveState??!0}),s=await i.json(),l=s.__ajax??{},u=s.__laika;if(delete s.__ajax,delete s.__laika,u&&!1!==t.flash){const e=function(e){const t={};for(const n of e.ops??[])"flash"===n.op&&C(t,q(n.level??n.severity),n.text??n.message);const n=Object.values(e.invalid??{}).flatMap(e=>Array.isArray(e)?e:[e]);for(const e of n)C(t,"error",e);return 0===Object.keys(t).length&&"string"==typeof e.message&&C(t,q(e.severity),e.message),t}(l);Object.keys(e).length>0&&u.page&&(u.page.flash={...u.page.flash??{},...e})}u&&await r(u,a);const c={};for(const e of l.ops??[])"partial"===e.op&&"string"==typeof e.name?c[e.name]=String(e.html??""):"dispatch"===e.op&&"string"==typeof e.event?window.dispatchEvent(new CustomEvent(e.event,{detail:e.detail})):"redirect"===e.op&&e.url?window.location.assign(String(e.url)):"reload"===e.op&&window.location.reload();if(!i.ok&&!("ok"in l))throw new Error(`October AJAX request failed (${i.status}).`);return{ok:l.ok??i.ok,status:i.status,data:s,invalid:l.invalid??{},message:l.message??null,severity:l.severity??"info",partials:c}}async function p(e,t){const r=await n.raw(s("/x-laika/filter"),{method:"post",data:{filter:e,payload:t}});if(!r.ok)throw new Error(`October filter failed: ${e}. (${r.status})`);const a=await r.json();if("success"!==a.status)throw new Error(`October filter failed: ${e}. (${r.status}) - (${a.message||"An unknown error occurred."})`);return a.result.content}const f={app:s,theme:function(e){return Array.isArray(e)?e.map(e=>T(i().themeBaseUrl,e??"")):T(i().themeBaseUrl,e)},page:function(e=null,t={},n=!0){const r=i(),a=r.pages??{},l={...r.currentParams??{}};if("boolean"==typeof t&&(n=t,t={}),t&&"object"==typeof t&&!Array.isArray(t)||(t={}),!e){const e=o().payload?.page?.url??"/",n=x(t);return n?e+(e.includes("?")?`&${n.slice(1)}`:n):e}if("string"!=typeof e)return;const u=a[e=e.toLowerCase()];if(!u?.pattern)return;const c=n?{...l,...t}:{...t},d={...t},p=H(u.pattern,c);return H(u.pattern,d),s(p)+x(d)},link:function(e){if(e.startsWith("http"))return e;{const t=o();return s(`/x-laika/resolve?path=${btoa(e)}&theme=${t.payload?.page?.theme||"0"}`)}},media:function(e){const t=i(),n=("/"+String(e??"").replace(/\\/g,"/").replace(/^\/+/,"")).split("/").map(e=>encodeURIComponent(e)).join("/").replace(/%2F/g,"/");return T(t.mediaBaseUrl,n)},resize:function(e,t=null,n=null,r={}){const a=i(),o=a.resizer?.basePath??"/resize",l={src:e};null!=t&&(l.w=t),null!=n&&(l.h=n);for(const[e,t]of Object.entries(r??{}))l[`o_${e}`]=t;return s(o+x(l))},currency:function(e,t={}){const n="number"==typeof e?e:Number(String(e).replace(",","."));if(!Number.isFinite(n))return String(e);const{locale:r="de-AT",currency:a="EUR",style:o="currency",minimumFractionDigits:i,maximumFractionDigits:s}=t;return new Intl.NumberFormat(r,{style:o,currency:a,minimumFractionDigits:i,maximumFractionDigits:s}).format(n)},trans:function(e,t){let n=l(e);return null===n?e:u(n,t)},transChoice:c,placeholder:function(e,t=null){const n=o();return e in(n.payload?.page?.placeholders||{})?(n.payload?.page?.placeholders||{})[e]:e in a?a[e]:t},hasPlaceholder:function(e){const t=o();return e in(t.payload?.page?.placeholders||{})||e in a},setPlaceholder:function(e,t){a[e]=t},request:d,renderPartial:async function(e,t={}){const n=await d("onLaikaRenderPartial",{data:{name:e,parameters:t},only:["token"],preserveState:!0});if(!n.ok)throw new Error(n.message??`Unable to render partial: ${e}`);return n.data.html??""},content:async function(e,t={}){const n=await d("onLaikaRenderContent",{data:{name:e,parameters:t},only:["token"],preserveState:!0});if(!n.ok)throw new Error(n.message??`Unable to render content: ${e}`);return n.data.html??""},filter:function(e,t){return p(e,{content:t})},htmlLimit:function(e,t=100,n="..."){if(t<=0)return n;const r=document.createElement("template");r.innerHTML=e;const a=document.createElement("div");let o=t,i=!1;const s=e=>{if(i)return null;if(e.nodeType===Node.TEXT_NODE){const t=Array.from(e.textContent??"");return t.length<=o?(o-=t.length,document.createTextNode(t.join(""))):(i=!0,document.createTextNode(t.slice(0,o).join("")+n))}if(e.nodeType!==Node.ELEMENT_NODE)return e.cloneNode(!1);const t=e.cloneNode(!1);for(const n of Array.from(e.childNodes)){const e=s(n);if(e&&t.appendChild(e),i)break}return t};for(const e of Array.from(r.content.childNodes)){const t=s(e);if(t&&a.appendChild(t),i)break}return a.innerHTML},md:e=>p("md",{content:e}),mdSafe:e=>p("md_safe",{content:e}),mdClean:e=>p("md_clean",{content:e}),mdIndent:e=>p("md_indent",{content:e}),trans_choice:c,md_safe:e=>p("md_safe",{content:e}),md_clean:e=>p("md_clean",{content:e}),md_indent:e=>p("md_indent",{content:e})};return b=f.request,k||"undefined"==typeof document||(k=!0,document.addEventListener("submit",O),document.addEventListener("click",j)),f}function _(){const e=r(h,null);if(!e)throw new Error("useOctober(): OctoberAPI not provided");return e}function F(e){return e?.default??e}function N(e,t){return t.split(".").reduce((e,t)=>null==e?void 0:e[t],e)}function X(e,t,n){const r=t.split(".");if(!r.length)return e;const a=Array.isArray(e)?e.slice():{...e??{}},o=r[r.length-1];let i=a,s=e??{};for(let e=0;e<r.length-1;e++){const t=r[e],n=s?.[t];let a;a=Array.isArray(n)?n.slice():n&&"object"==typeof n?{...n}:{},i[t]=a,i=a,s=n}return i[o]=n,a}function R(e,t){function n(t,n={}){const r=function(){const t=e();if(!t)throw new Error("Laika Router: runtime not ready");return t}(),a=(n.method??"GET").toUpperCase(),o=n.data??void 0,i=new Headers({Accept:"application/json","X-Requested-With":"XMLHttpRequest","X-Laika":"1",...n.headers??{}}),s=r.payload?.token;if(s){const[e,t]=s.split("|");i.set("X-CSRF-TOKEN",e),i.set("X-Laika-Token",t)}return n.force&&i.set("X-Laika-Force","1"),n.require?.length&&i.set("X-Laika-Require",n.require.join(",")),n.only?.length&&i.set("X-Laika-Only",n.only.join(",")),n.preserveState&&i.set("X-Laika-Preserve-State","1"),"GET"!==a&&i.set("Content-Type","application/json"),new Request(t,{method:a.toUpperCase(),headers:i,body:"GET"!==a?JSON.stringify(o??{}):null,credentials:"same-origin"})}async function r(e,r={}){const a=n(e,r);let o;try{await t.onBefore(a),o=await fetch(a),"GET"===a.method&&(r.replace?history.replaceState({},"",e):history.pushState({},"",e)),await t.onSuccess(a,o)}catch(e){throw await t.onFailure(e,a,o),e}}return{raw:async function(e,t={}){const r=n(e,t);try{return await fetch(r)}catch(e){throw e}},visit:r,get:(e,t)=>r(e,{...t??{},method:"GET"}),post:(e,t,n)=>r(e,{...n??{},method:"POST",data:t}),put:(e,t,n)=>r(e,{...n??{},method:"PUT",data:t}),patch:(e,t,n)=>r(e,{...n??{},method:"PATCH",data:t}),delete:(e,t,n)=>r(e,{...n??{},method:"DELETE",data:t})}}function U(){const e=r(w,null);if(!e)throw new Error("useRouter(): Laika router not provided");return e}const D=a(),B=new Map;function I(e){const t=B.get(e);if(t)return t;const n=U(),r=_(),a=o(()=>D.value?.components?.[e]??null);function s(e){const t=a.value;return!!t?.props&&Object.prototype.hasOwnProperty.call(t.props,e)}function l(e){const t=a.value;return!!t&&(!(!t.props||!(e in t.props))||(!(!Array.isArray(t.methods)||!t.methods.includes(e))||!(!Array.isArray(t.vars)||!t.vars.includes(e))))}function u(e,t){const n=a.value;return n?.props&&e in n.props?n.props[e]:t}async function c(t){const r=(Array.isArray(t)?t:[t]).filter(e=>!s(e));if(!r.length)return;const o=r.map(t=>`components.${e}.props.${t}`);return await n.get(window.location.pathname+window.location.search,{only:o,preserveState:!0,replace:!0}),await i(),Array.isArray(t)?a.value?.props:a.value?.props[t]}async function d(){return void 0!==a.value?.html?a.value.html:(await n.get(window.location.pathname+window.location.search,{only:[`components.${e}.html`],preserveState:!0,replace:!0}),await i(),a.value?.html??"")}const p=new Proxy({},{get(t,n){if("get"===n)return u;if("load"===n)return c;if("loadHtml"===n)return d;if("loaded"===n)return s;if("exists"===n)return l;if("request"===n)return(t,n)=>r.request(`${e}::${t}`,n);const o=a.value;return o?o[n]:void 0},has(e,t){if("get"===t||"load"===t||"loadHtml"===t||"loaded"===t||"exists"===t||"request"===t)return!0;{const e=a.value;return!!e&&t in e}}});return B.set(e,p),p}const W=a(),J=a(null),K=s(void 0),z={get component(){return W.value},get payload(){return D.value},get layout(){return J.value},get key(){return K.value},title:e=>e,resolver:()=>{throw new Error("not implemented")},getLayout:()=>J.value,setLayout:e=>{J.value=e}};let G,Z;const Q=t({name:"Laika",props:{initialPayload:{type:Object,required:!0},initialComponent:{type:Object,required:!1},resolveComponent:{type:Function,required:!0},title:{type:Function,required:!1,default:e=>e}},setup:({initialPayload:e,initialComponent:t,resolveComponent:r,title:a})=>(D.value=e,K.value=void 0,W.value=t?l(F(t)):void 0,W.value||Promise.resolve(r(e.page.component)).then(e=>{W.value=l(F(e))}).catch(console.error),z.title=a??z.title,z.resolver=r,"page"in e&&"title"in e.page&&(document.title=(z.title??(e=>e))(e.page.title)||""),window.addEventListener("popstate",()=>window.location.reload()),()=>{if(!W.value||!D.value)return null;const e=D.value.page.props??{},t=n(W.value,{...e,key:K.value});let r;J.value&&(W.value.layout=J.value,J.value=null);const a=W.value.layout;if(a)if("function"==typeof a)r=a(n,t);else{r=(Array.isArray(a)?a:[a]).slice().reverse().reduce((t,r)=>n(r,{...e},()=>t),t)}else r=t;return n(u,null,[n(v),r])})});const V={install(e){const t=this,n=()=>z,r=function(){const{components:e}=ee();return new Proxy({},{get:(t,n)=>"has"===n?t=>!!e.value&&t in e.value:"get"===n?t=>e.value&&t in e.value?I(t):null:"string"==typeof n?e.value&&n in e.value?I(n):null:void 0})}(),a=y();G=R(n,{onBefore:async e=>{a.start(),await t.onRouterBefore(e)},onSuccess:async(e,n)=>{a.done(),await t.onRouterSuccess(e,n)},onFailure:async(e,n)=>{a.fail(),await t.onRouterFailure(e,n)}}),function(e,t){t.provide(w,e)}(G,e),Z=M(n,G,async(e,t)=>this.swap(e,!0,t)),function(e,t){t.provide(h,e)}(Z,e),Object.defineProperty(e.config.globalProperties,"$laika",{get:()=>z}),Object.defineProperty(e.config.globalProperties,"$router",{get:()=>G}),Object.defineProperty(e.config.globalProperties,"$payload",{get:()=>z.payload}),Object.defineProperty(e.config.globalProperties,"$site",{get:()=>z.payload?.site||{}}),Object.defineProperty(e.config.globalProperties,"$theme",{get:()=>z.payload?.theme||{}}),Object.defineProperty(e.config.globalProperties,"$page",{get:()=>z.payload?.page||{}}),Object.defineProperty(e.config.globalProperties,"$components",{get:()=>r}),Object.defineProperty(e.config.globalProperties,"$october",{get:()=>Z}),Object.defineProperty(e.config.globalProperties,"$shared",{get:()=>z.payload?.shared||{}})},async onRouterBefore(e){},async onRouterSuccess(e,t){if(409===t.status){const e=t.headers.get("X-Laika-Location");throw e&&window.location.assign(e),new Error("Laika redirect")}if(!t.ok)throw window.location.assign(e.url),new Error("Navigation fallback");const n=(r=e.headers.get("X-Laika-Only")??t.headers.get("X-Laika-Only"))?r.split(",").map(e=>e.trim()).filter(Boolean):[];var r;const a=await t.json(),o="1"===e.headers.get("X-Laika-Preserve-State");await this.swap(a,o,n)},async onRouterFailure(e,t){},async swap(e,t,n){if("page"in e&&e.page?.component){const t=await z.resolver(e.page.component);W.value=l(F(t))}if(n&&n.length&&D.value?D.value=this.patch(D.value,e,n):D.value=e,"page"in e&&e.page){const t=document.body.dataset.theme,n=(e.page.theme||"").trim().toLowerCase();t!==n&&""!==n&&(document.body.classList.remove(`theme-${t}`),document.body.classList.add(`theme-${n}`),document.body.dataset.theme=n);const r=document.body.dataset.layout,a=(e.page.layout||"").trim().toLowerCase();r!==a&&""!==a&&(document.body.classList.remove(`layout-${r}`),document.body.classList.add(`layout-${a}`),document.body.dataset.layout=a);const o=document.body.dataset.page,i=(e.page.id||"").trim().toLowerCase();o!==i&&""!==i&&(document.body.classList.remove(`page-${o}`),document.body.classList.add(`page-${i}`),document.body.dataset.page=i);const s={...e.page.head??{}},l=new Map,u=document.createElement("head");for(const[e,t]of Object.entries(s)){u.innerHTML=t.trim();const n=u.firstElementChild;n&&(n.setAttribute("data-laika-id",e),u.removeChild(n),l.set(e,n))}const c=new Set,d=document.head.querySelectorAll("[data-laika-id]");for(const t of e.page.head?Array.from(d):[]){const e=t.getAttribute("data-laika-id");if(!e)continue;const n=l.get(e);n?(c.add(e),t.outerHTML!==n.outerHTML&&document.head.replaceChild(n,t)):t.remove()}const p=document.head.querySelectorAll("[data-laika-id]"),f=p.length>0?p[p.length-1]?.nextElementSibling:null;for(const[t,n]of e.page.head?l:[])c.has(t)||(f?document.head.insertBefore(n,f):document.head.appendChild(n))}if("page"in e&&"title"in e.page){const e=D.value?.page?.title;e&&(document.title=(z.title??(e=>e))(e)||"Laika Unknown Title")}K.value=t?K.value:Date.now()},patch(e,t,n){let r={...e};for(const e of n){if(!e)continue;if(!e.includes(".")){e in t&&(r[e]=t[e]);continue}const n=N(t,e);void 0!==n&&(r=X(r,e,n))}return r}};function Y(){return z}function ee(){return{version:o(()=>D.value?.version),token:o(()=>D.value?.token),site:o(()=>D.value?.site),theme:o(()=>D.value?.theme),page:o(()=>D.value?.page),components:o(()=>D.value?.components),october:o(()=>D.value?.october),shared:o(()=>D.value?.shared)}}function te(){return o(()=>D.value?.site)}function ne(){return o(()=>D.value?.page)}function re(){return o(()=>D.value?.shared)}function ae(){return o(()=>D.value?.theme)}const oe=t({name:"LaikaFlash",props:{type:{type:String,required:!1}},slots:Object,setup(e,{slots:t}){const r=ee();return()=>{const a=r.page.value.flash;if(null!=e.type&&!(e.type in a))return null;if(!t.default)return null;const o=[];for(const[n,r]of Object.entries(a)){if(null!=e.type&&e.type!==n)continue;const a=Array.isArray(r)?r:[r];for(const e of a)o.push(t.default({type:n,message:e}))}return o.length>0?n("div",{},o):null}}}),ie=t({name:"LaikaHead",props:{watchKey:{type:[String,Number],required:!1}},slots:Object,setup(e,{slots:t}){const r=ee(),a=s(0),o=()=>e.watchKey??r.page.value.id??r.page.value.url??null;return c(()=>o(),()=>{a.value++}),()=>{const e=t.default?.();return e?n(d,{to:"head",key:`${String(o())}:${a.value}`},e):null}}});const se=t({name:"LaikaLink",inheritAttrs:!1,props:{page:{type:String,required:!1},params:{type:Object,default:{},required:!1},persistence:{type:Boolean,default:!0,required:!1},link:{type:String,required:!1},target:{type:String,required:!1}},slots:Object,setup(e,{slots:t,attrs:r}){const a=_(),i=U(),s=o(()=>{if(e.page&&e.page.trim().length){const t=e.page.trim(),n=a.page(t,e.params,e.persistence);return n||(console.warn(`[LAIKA] Unable to resolve October page "${t}".`),"#")}const t=(e.link??"").trim();return t?t.startsWith("http")?t:a.app(t.replace(/^\/+/,"")):"#"}),l=o(()=>Boolean(e.page?.trim())&&"#"===s.value),u=o(()=>!l.value&&("_blank"===e.target||s.value.indexOf(`//${window.location.hostname}/`)<0));return()=>{const a={...r,href:s.value,target:e.target,"aria-disabled":l.value||void 0};l.value?a.onClick=e=>{e.preventDefault()}:u.value||(a.onClick=e=>{var t;e.preventDefault(),t=e,l.value?t.preventDefault():u.value||0===t.button&&(t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||i.visit(s.value))});const o=t.default?t.default(a,r):void 0;return n("a",a,o||void 0)}}}),le=t({name:"LaikaPageComponent",props:{name:{type:String,required:!0}},slots:Object,setup(e,{slots:t}){const r=ee(),a=I(e.name),o=s(!1);return c(()=>r.components.value?.[e.name],async e=>{if(e&&void 0===e.html&&!o.value){o.value=!0;try{await a.loadHtml()}finally{o.value=!1}}},{immediate:!0}),()=>{if(!r.components.value||!(e.name in r.components.value))return null;const o=r.components.value[e.name]||void 0;if(!o)return null;const i=t.default?.(a);return i?n("div",{},i):o.html?n("div",{innerHTML:o.html}):null}}}),ue=t({name:"LaikaPageContent",setup(e){const t=ee();return()=>{const e=t.page.value.content??"";return n("div",{innerHTML:e})}}}),ce=t({name:"LaikaServerPartial",props:{name:{type:String,required:!0},parameters:{type:Object,default:()=>({})},tag:{type:String,default:"div"}},setup(e){const t=_(),r=s(""),a=s(!1),o=s(null);let i=0;return c(()=>[e.name,e.parameters],async()=>{const n=++i;a.value=!0,o.value=null;try{const a=await t.renderPartial(e.name,e.parameters);n===i&&(r.value=a)}catch(e){n===i&&(o.value=e instanceof Error?e:new Error(String(e)))}finally{n===i&&(a.value=!1)}},{immediate:!0,deep:!0}),()=>n(e.tag,{innerHTML:r.value,"data-laika-partial":e.name,"data-loading":a.value?"true":void 0,"data-error":o.value?.message})}}),de=new Map,pe=new Map;function fe(e,t){const n=_(),r=s(""),a=s(!1),o=s(null);let i=0;async function l(){const s=++i,l=p(e),u=p(t)??"",c=`${l}\0${u}`;a.value=!0,o.value=null;try{const e=de.get(c);let t;if(void 0!==e)t=e;else{const e=pe.get(c),r=e??n.filter(l,u);void 0===e&&pe.set(c,r),t=await r,pe.delete(c),de.set(c,t)}s===i&&(r.value=t)}catch(e){pe.delete(c),s===i&&(o.value=e instanceof Error?e:new Error(String(e)))}finally{s===i&&(a.value=!1)}}return c(()=>[p(e),p(t)],l,{immediate:!0}),{value:f(r),pending:f(a),error:f(o),refresh:l}}const me=t({name:"LaikaOctoberFilter",props:{name:{type:String,required:!0},value:{type:String,default:""},tag:{type:String,default:"div"}},setup(e,{slots:t}){const r=fe(()=>e.name,()=>e.value);return()=>t.default?t.default({value:r.value.value,pending:r.pending.value,error:r.error.value,refresh:r.refresh}):n(e.tag,{innerHTML:r.value.value,"data-loading":r.pending.value?"true":void 0,"data-error":r.error.value?.message})}});async function ge(e){const t=e.rootId?document.querySelector(e.rootId):document.querySelector(".app");if(!t)throw new Error(`Laika: root element not found (${e.rootId??".app"})`);const n=function(e='[data-laika="payload"]'){const t=document.head.querySelector(e);if(!t?.textContent?.trim())throw new Error("Laika: payload missing/empty");return JSON.parse(t.textContent)}(),r={initialPayload:n,initialComponent:F(await Promise.resolve(e.resolve(n.page.component))),resolveComponent:e.resolve,...e.title?{title:e.title}:{}};return e.setup({root:t,App:Q,props:r,plugin:V,payload:n})}export{oe as Flash,ie as Head,se as Link,me as OctoberFilter,le as PageComponent,ue as PageContent,v as ProgressBar,ce as ServerPartial,ge as createLaikaApp,y as getProgressBar,V as laikaPlugin,I as useComponent,Y as useLaika,_ as useOctober,fe as useOctoberFilter,ne as usePage,ee as usePayload,U as useRouter,re as useShared,te as useSite,ae as useTheme};
2
2
  //# sourceMappingURL=laika.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"laika.mjs","sources":["../src/plugins/get-progress-bar.ts","../src/components/progress-bar.ts","../src/symbols.ts","../src/larajax.ts","../src/plugins/use-october.ts","../src/utils.ts","../src/plugins/use-router.ts","../src/state.ts","../src/plugins/use-component.ts","../src/app.ts","../src/components/flash.ts","../src/components/head.ts","../src/components/link.ts","../src/components/page-component.ts","../src/components/page-content.ts","../src/components/server-partial.ts","../src/plugins/use-october-filter.ts","../src/components/october-filter.ts","../src/laika.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["progress","reactive","color","active","percent","timestamp","progressTimer","getProgressBar","done","force","window","clearInterval","setTimeout","state","start","Date","now","setInterval","Math","max","round","fail","ProgressBar","defineComponent","name","setup","props","h","class","style","top","left","width","height","position","backgroundColor","transition","zIndex","LAIKA_OCTOBER_KEY","Symbol","LAIKA_ROUTER_KEY","requester","listenersInstalled","dispatch","element","detail","dispatchEvent","CustomEvent","bubbles","cancelable","collectFormData","form","data","FormData","forEach","value","rawName","isArray","endsWith","slice","Array","parseRequestData","trim","JSON","parse","result","expression","match","exec","key","raw","setLoading","loading","toggleAttribute","setAttribute","HTMLButtonElement","HTMLInputElement","disabled","async","runRequest","handler","getAttribute","hasAttribute","targets","partial","selector","parsePartialTargets","flash","Boolean","partials","Object","keys","preserveState","entries","html","undefined","target","from","document","querySelectorAll","innerHTML","updatePartialTargets","ok","error","handleSubmit","event","HTMLFormElement","matches","preventDefault","submitter","HTMLElement","handleClick","origin","Element","closest","FLASH_TYPES","Set","normalizeFlashType","severity","has","appendFlashMessage","type","message","current","messages","nextMessage","includes","joinUrl","base","path","test","startsWith","replace","encodeQuery","params","qs","URLSearchParams","k","v","set","String","str","toString","fillPattern","pattern","_","escapeSlash","val","encodedVal","encodeURIComponent","createOctober","getRuntime","router","applyPayload","placeholders","requireRuntime","runtime","Error","boot","october","payload","app","baseUrl","getLocalizationString","locale","site","fallbackLocale","localeStrings","strings","fallbackStrings","transformLocalizationString","string","replacements","rawKey","rawVal","replaceAll","uc","charAt","toUpperCase","transChoice","number","localeString","n","parts","split","map","s","filter","part","exact","Number","range","minRaw","maxRaw","text","min","Infinity","length","choosePluralForm","count","request","options","only","headers","join","response","location","pathname","search","method","json","ajax","__ajax","nextPayload","__laika","ajaxFlash","operation","ops","op","level","invalidMessages","values","invalid","flatMap","collectAjaxFlash","page","url","assign","reload","status","callFilter","content","api","theme","p","themeBaseUrl","persistence","oc","pages","currentParams","query","pageInfo","toLowerCase","routeParams","queryParams","link","btoa","media","file","encoded","mediaBaseUrl","resize","input","basePath","resizer","src","w","currency","num","isFinite","minimumFractionDigits","maximumFractionDigits","Intl","NumberFormat","format","trans","placeholder","defaultValue","hasPlaceholder","setPlaceholder","renderPartial","parameters","htmlLimit","maxLength","end","source","createElement","output","remaining","truncated","cloneNode","node","nodeType","Node","TEXT_NODE","characters","textContent","createTextNode","ELEMENT_NODE","clone","child","childNodes","childClone","appendChild","md","mdSafe","mdClean","mdIndent","trans_choice","md_safe","md_clean","md_indent","addEventListener","useOctober","inject","unwrapModule","mod","default","getByPath","obj","reduce","acc","setByPath","root","out","last","curOut","curIn","i","nextIn","nextOut","createRouter","hooks","prepare","Headers","Accept","token","csrfToken","laikaToken","require","Request","body","stringify","credentials","visit","onBefore","fetch","history","replaceState","pushState","onSuccess","err","onFailure","get","post","put","patch","delete","useRouter","shallowRef","cache","Map","useComponent","alias","existing","computed","components","loaded","cur","prototype","hasOwnProperty","call","exists","methods","vars","fallback","load","missing","nextTick","loadHtml","handle","Proxy","_t","prop","component","layout","ref","title","resolver","getLayout","setLayout","next","App","initialPayload","required","initialComponent","resolveComponent","Function","t","titleCallback","markRaw","Promise","resolve","then","catch","console","x","userComponent","childLayout","reverse","L","Fragment","plugin","install","self","this","componentsFacade","usePayload","createComponentsFacade","onRouterBefore","onRouterSuccess","onRouterFailure","provide","provideRouter","swap","provideOctober","defineProperty","config","globalProperties","shared","loc","header","currTheme","dataset","nextTheme","classList","remove","add","currLayout","nextLayout","currPage","nextPage","id","newTags","head","newNodes","temp","el","firstElementChild","removeChild","usedIds","oldTags","newEl","outerHTML","replaceChild","childs","nextElementSibling","insertBefore","useLaika","version","useSite","usePage","useShared","useTheme","Flash","slots","children","push","Head","watchKey","revision","getUniqueKey","watch","Teleport","to","Link","inheritAttrs","attrs","resolvedUrl","isExternal","indexOf","hostname","customProps","href","onClick","ev","button","metaKey","ctrlKey","shiftKey","altKey","PageComponent","loadingHtml","componentData","immediate","PageContent","ServerPartial","tag","pending","currentRevision","reason","deep","valueCache","requestCache","useOctoberFilter","refresh","filterName","toValue","cacheKey","cachedValue","cachedRequest","activeRequest","readonly","OctoberFilter","createLaikaApp","rootId","querySelector","readInitialPayload"],"mappings":"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"}
1
+ {"version":3,"file":"laika.mjs","sources":["../src/plugins/get-progress-bar.ts","../src/components/progress-bar.ts","../src/symbols.ts","../src/larajax.ts","../src/plugins/use-october.ts","../src/utils.ts","../src/plugins/use-router.ts","../src/state.ts","../src/plugins/use-component.ts","../src/app.ts","../src/components/flash.ts","../src/components/head.ts","../src/components/link.ts","../src/components/page-component.ts","../src/components/page-content.ts","../src/components/server-partial.ts","../src/plugins/use-october-filter.ts","../src/components/october-filter.ts","../src/laika.ts"],"sourcesContent":[null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"names":["progress","reactive","color","active","percent","timestamp","progressTimer","getProgressBar","done","force","window","clearInterval","setTimeout","state","start","Date","now","setInterval","Math","max","round","fail","ProgressBar","defineComponent","name","setup","props","h","class","style","top","left","width","height","position","backgroundColor","transition","zIndex","LAIKA_OCTOBER_KEY","Symbol","LAIKA_ROUTER_KEY","requester","listenersInstalled","dispatch","element","detail","dispatchEvent","CustomEvent","bubbles","cancelable","collectFormData","form","data","FormData","forEach","value","rawName","isArray","endsWith","slice","Array","parseRequestData","trim","JSON","parse","result","expression","match","exec","key","raw","setLoading","loading","toggleAttribute","setAttribute","HTMLButtonElement","HTMLInputElement","disabled","async","runRequest","handler","getAttribute","hasAttribute","targets","partial","selector","parsePartialTargets","flash","Boolean","partials","Object","keys","preserveState","entries","html","undefined","target","from","document","querySelectorAll","innerHTML","updatePartialTargets","ok","error","handleSubmit","event","HTMLFormElement","matches","preventDefault","submitter","HTMLElement","handleClick","origin","Element","closest","FLASH_TYPES","Set","normalizeFlashType","severity","has","appendFlashMessage","type","message","current","messages","nextMessage","includes","joinUrl","base","path","test","startsWith","replace","encodeQuery","params","qs","URLSearchParams","k","v","set","String","str","toString","fillPattern","pattern","_","escapeSlash","val","encodedVal","encodeURIComponent","createOctober","getRuntime","router","applyPayload","placeholders","requireRuntime","runtime","Error","boot","october","payload","app","baseUrl","getLocalizationString","locale","site","fallbackLocale","localeStrings","strings","fallbackStrings","transformLocalizationString","string","replacements","rawKey","rawVal","replaceAll","uc","charAt","toUpperCase","transChoice","number","localeString","n","parts","split","map","s","filter","part","exact","Number","range","minRaw","maxRaw","text","min","Infinity","length","choosePluralForm","count","request","options","only","headers","join","response","location","pathname","search","method","json","ajax","__ajax","nextPayload","__laika","ajaxFlash","operation","ops","op","level","invalidMessages","values","invalid","flatMap","collectAjaxFlash","page","url","assign","reload","status","callFilter","content","api","theme","p","themeBaseUrl","persistence","oc","pages","currentParams","query","pageInfo","toLowerCase","routeParams","queryParams","link","btoa","media","file","encoded","mediaBaseUrl","resize","input","basePath","resizer","src","w","currency","num","isFinite","minimumFractionDigits","maximumFractionDigits","Intl","NumberFormat","format","trans","placeholder","defaultValue","hasPlaceholder","setPlaceholder","renderPartial","parameters","htmlLimit","maxLength","end","source","createElement","output","remaining","truncated","cloneNode","node","nodeType","Node","TEXT_NODE","characters","textContent","createTextNode","ELEMENT_NODE","clone","child","childNodes","childClone","appendChild","md","mdSafe","mdClean","mdIndent","trans_choice","md_safe","md_clean","md_indent","addEventListener","useOctober","inject","unwrapModule","mod","default","getByPath","obj","reduce","acc","setByPath","root","out","last","curOut","curIn","i","nextIn","nextOut","createRouter","hooks","prepare","Headers","Accept","token","csrfToken","laikaToken","require","Request","body","stringify","credentials","visit","onBefore","fetch","history","replaceState","pushState","onSuccess","err","onFailure","get","post","put","patch","delete","useRouter","shallowRef","cache","Map","useComponent","alias","existing","computed","components","loaded","cur","prototype","hasOwnProperty","call","exists","methods","vars","fallback","load","missing","nextTick","loadHtml","handle","Proxy","_t","prop","component","layout","ref","title","resolver","getLayout","setLayout","next","App","initialPayload","required","initialComponent","resolveComponent","Function","t","titleCallback","markRaw","Promise","resolve","then","catch","console","x","userComponent","childLayout","reverse","L","Fragment","plugin","install","self","this","componentsFacade","usePayload","createComponentsFacade","onRouterBefore","onRouterSuccess","onRouterFailure","provide","provideRouter","swap","provideOctober","defineProperty","config","globalProperties","shared","loc","header","currTheme","dataset","nextTheme","classList","remove","add","currLayout","nextLayout","currPage","nextPage","id","newTags","head","newNodes","temp","el","firstElementChild","removeChild","usedIds","oldTags","newEl","outerHTML","replaceChild","childs","nextElementSibling","insertBefore","useLaika","version","useSite","usePage","useShared","useTheme","Flash","slots","children","push","Head","watchKey","revision","getUniqueKey","watch","Teleport","to","Link","inheritAttrs","attrs","resolvedUrl","warn","isUnresolved","isExternal","indexOf","hostname","customProps","href","onClick","ev","button","metaKey","ctrlKey","shiftKey","altKey","PageComponent","loadingHtml","componentData","immediate","PageContent","ServerPartial","tag","pending","currentRevision","reason","deep","valueCache","requestCache","useOctoberFilter","refresh","filterName","toValue","cacheKey","cachedValue","cachedRequest","activeRequest","readonly","OctoberFilter","createLaikaApp","rootId","querySelector","readInitialPayload"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rat.md/laika",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "LAIKA is an Inertia-inspired Vue/Vite adapter which lets you build your entire OctoberCMS theme in Vue while still using everything October provides (This package provides the related Vue / Vite libraries).",
5
5
  "keywords": [
6
6
  "octobercms"
@@ -46,7 +46,7 @@
46
46
  "devDependencies": {
47
47
  "@rollup/plugin-commonjs": "^29.0.0",
48
48
  "@rollup/plugin-node-resolve": "^16.0.3",
49
- "@rollup/plugin-terser": "0.4.4",
49
+ "@rollup/plugin-terser": "^1.0.0",
50
50
  "@rollup/plugin-typescript": "^12.3.0",
51
51
  "@types/node": "^24.8.0",
52
52
  "@vue/runtime-core": "^3.5.27",
@@ -55,7 +55,7 @@
55
55
  "rollup-plugin-dts": "^6.2.3",
56
56
  "tslib": "^2.8.1",
57
57
  "typescript": "^5.9.3",
58
- "vite": "^7.3.1",
58
+ "vite": "^8.3.0",
59
59
  "vue": "^3.5.28"
60
60
  }
61
61
  }