@batijs/elements 0.0.1 → 0.0.2
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/elements/full.js +2044 -1
- package/package.json +20 -20
package/dist/elements/full.js
CHANGED
|
@@ -1 +1,2044 @@
|
|
|
1
|
-
function n(n){return Object.keys(n).reduce(((e,t)=>{const a=n[t];var o;return e[t]=Object.assign({},a),r(a.value)&&(o=a.value,"[object Function]"!==Object.prototype.toString.call(o))&&!Array.isArray(a.value)&&(e[t].value=Object.assign({},a.value)),Array.isArray(a.value)&&(e[t].value=a.value.slice(0)),e}),{})}function e(n){if(n)try{return JSON.parse(n)}catch(e){return n}}function t(n,e,t){if(null==t||!1===t)return n.removeAttribute(e);let r=JSON.stringify(t);n.__updating[e]=!0,"true"===r&&(r=""),n.setAttribute(e,r),Promise.resolve().then((()=>delete n.__updating[e]))}function r(n){return null!=n&&("object"==typeof n||"function"==typeof n)}let a;function o(r,o){const s=Object.keys(o);return class extends r{static get observedAttributes(){return s.map((n=>o[n].attribute))}constructor(){super(),this.__initialized=!1,this.__released=!1,this.__releaseCallbacks=[],this.__propertyChangedCallbacks=[],this.__updating={},this.props={}}connectedCallback(){if(this.__initialized)return;this.__releaseCallbacks=[],this.__propertyChangedCallbacks=[],this.__updating={},this.props=function(r,a){const o=n(a);return Object.keys(a).forEach((n=>{const a=o[n],s=r.getAttribute(a.attribute),c=r[n];s&&(a.value=a.parse?e(s):s),null!=c&&(a.value=Array.isArray(c)?c.slice(0):c),a.reflect&&t(r,a.attribute,a.value),Object.defineProperty(r,n,{get:()=>a.value,set(e){const r=a.value;a.value=e,a.reflect&&t(this,a.attribute,a.value);for(let t=0,a=this.__propertyChangedCallbacks.length;t<a;t++)this.__propertyChangedCallbacks[t](n,e,r)},enumerable:!0,configurable:!0})})),o}(this,o);const r=function(n){return Object.keys(n).reduce(((e,t)=>(e[t]=n[t].value,e)),{})}(this.props),s=this.Component,c=a;try{a=this,this.__initialized=!0,"function"==typeof(i=s)&&0===i.toString().indexOf("class")?new s(r,{element:this}):s(r,{element:this})}finally{a=c}var i}async disconnectedCallback(){if(await Promise.resolve(),this.isConnected)return;this.__propertyChangedCallbacks.length=0;let n=null;for(;n=this.__releaseCallbacks.pop();)n(this);delete this.__initialized,this.__released=!0}attributeChangedCallback(n,t,r){if(this.__initialized&&!this.__updating[n]&&(n=this.lookupProp(n))in o){if(null==r&&!this[n])return;this[n]=o[n].parse?e(r):r}}lookupProp(n){if(o)return s.find((e=>n===e||n===o[e].attribute))}get renderRoot(){return this.shadowRoot||this.attachShadow({mode:"open"})}addReleaseCallback(n){this.__releaseCallbacks.push(n)}addPropertyChangedCallback(n){this.__propertyChangedCallbacks.push(n)}}}function s(n,e={},t={}){const{BaseElement:a=HTMLElement,extension:s}=t;return t=>{if(!n)throw new Error("tag is required to register a Component");let c=customElements.get(n);return c?(c.prototype.Component=t,c):(c=o(a,function(n){return n?Object.keys(n).reduce(((e,t)=>{const a=n[t];return e[t]=r(a)&&"value"in a?a:{value:a},e[t].attribute||(e[t].attribute=t.replace(/\.?([A-Z]+)/g,((n,e)=>"-"+e.toLowerCase())).replace("_","-").replace(/^-/,"")),e[t].parse="parse"in e[t]?e[t].parse:"string"!=typeof e[t].value,e}),{}):{}}(e)),c.prototype.Component=t,c.prototype.registeredTag=n,customElements.define(n,c,s),c)}}const c={context:void 0,registry:void 0},i=Symbol("solid-proxy"),l=Symbol("solid-track"),d={equals:(n,e)=>n===e};let u=P;const b=1,p=2,f={owned:null,cleanups:null,context:null,owner:null};var m=null;let Q=null,h=null,g=null,w=null,v=0;function x(n,e){const t=h,r=m,a=0===n.length,o=a?f:{owned:null,cleanups:null,context:null,owner:void 0===e?r:e},s=a?n:()=>n((()=>M((()=>z(o)))));m=o,h=null;try{return $(s,!0)}finally{h=t,m=r}}function y(n,e){const t={value:n,observers:null,observerSlots:null,comparator:(e=e?Object.assign({},d,e):d).equals||void 0};return[A.bind(t),n=>("function"==typeof n&&(n=n(t.value)),_(t,n))]}function k(n,e,t){L(j(n,e,!1,b))}function C(n,e,t){t=t?Object.assign({},d,t):d;const r=j(n,e,!0,0);return r.observers=null,r.observerSlots=null,r.comparator=t.equals||void 0,L(r),A.bind(r)}function M(n){if(null===h)return n();const e=h;h=null;try{return n()}finally{h=e}}function S(){return h}function A(){if(this.sources&&this.state)if(this.state===b)L(this);else{const n=g;g=null,$((()=>N(this)),!1),g=n}if(h){const n=this.observers?this.observers.length:0;h.sources?(h.sources.push(this),h.sourceSlots.push(n)):(h.sources=[this],h.sourceSlots=[n]),this.observers?(this.observers.push(h),this.observerSlots.push(h.sources.length-1)):(this.observers=[h],this.observerSlots=[h.sources.length-1])}return this.value}function _(n,e,t){let r=n.value;return n.comparator&&n.comparator(r,e)||(n.value=e,n.observers&&n.observers.length&&$((()=>{for(let e=0;e<n.observers.length;e+=1){const t=n.observers[e],r=Q&&Q.running;r&&Q.disposed.has(t),(r?t.tState:t.state)||(t.pure?g.push(t):w.push(t),t.observers&&E(t)),r||(t.state=b)}if(g.length>1e6)throw g=[],new Error}),!1)),e}function L(n){if(!n.fn)return;z(n);const e=m,t=h,r=v;h=m=n,function(n,e,t){let r;try{r=n.fn(e)}catch(e){return n.pure&&(n.state=b,n.owned&&n.owned.forEach(z),n.owned=null),n.updatedAt=t+1,T(e)}(!n.updatedAt||n.updatedAt<=t)&&(null!=n.updatedAt&&"observers"in n?_(n,r):n.value=r,n.updatedAt=t)}(n,n.value,r),h=t,m=e}function j(n,e,t,r=b,a){const o={fn:n,state:r,updatedAt:null,owned:null,sources:null,sourceSlots:null,cleanups:null,value:e,owner:m,context:null,pure:t};return null===m||m!==f&&(m.owned?m.owned.push(o):m.owned=[o]),o}function O(n){if(0===n.state)return;if(n.state===p)return N(n);if(n.suspense&&M(n.suspense.inFallback))return n.suspense.effects.push(n);const e=[n];for(;(n=n.owner)&&(!n.updatedAt||n.updatedAt<v);)n.state&&e.push(n);for(let t=e.length-1;t>=0;t--)if((n=e[t]).state===b)L(n);else if(n.state===p){const t=g;g=null,$((()=>N(n,e[0])),!1),g=t}}function $(n,e){if(g)return n();let t=!1;e||(g=[]),w?t=!0:w=[],v++;try{const e=n();return function(n){g&&(P(g),g=null);if(n)return;const e=w;w=null,e.length&&$((()=>u(e)),!1)}(t),e}catch(n){t||(w=null),g=null,T(n)}}function P(n){for(let e=0;e<n.length;e++)O(n[e])}function N(n,e){n.state=0;for(let t=0;t<n.sources.length;t+=1){const r=n.sources[t];if(r.sources){const n=r.state;n===b?r!==e&&(!r.updatedAt||r.updatedAt<v)&&O(r):n===p&&N(r,e)}}}function E(n){for(let e=0;e<n.observers.length;e+=1){const t=n.observers[e];t.state||(t.state=p,t.pure?g.push(t):w.push(t),t.observers&&E(t))}}function z(n){let e;if(n.sources)for(;n.sources.length;){const e=n.sources.pop(),t=n.sourceSlots.pop(),r=e.observers;if(r&&r.length){const n=r.pop(),a=e.observerSlots.pop();t<r.length&&(n.sourceSlots[a]=t,r[t]=n,e.observerSlots[t]=a)}}if(n.owned){for(e=n.owned.length-1;e>=0;e--)z(n.owned[e]);n.owned=null}if(n.cleanups){for(e=n.cleanups.length-1;e>=0;e--)n.cleanups[e]();n.cleanups=null}n.state=0,n.context=null}function T(n){throw n}const Z=Symbol("fallback");function B(n){for(let e=0;e<n.length;e++)n[e]()}function D(n,e,t={}){let r=[],a=[],o=[],s=0,c=e.length>1?[]:null;var i;return i=()=>B(o),null===m||(null===m.cleanups?m.cleanups=[i]:m.cleanups.push(i)),()=>{let i,d,u=n()||[];return u[l],M((()=>{let n,e,l,p,f,m,Q,h,g,w=u.length;if(0===w)0!==s&&(B(o),o=[],r=[],a=[],s=0,c&&(c=[])),t.fallback&&(r=[Z],a[0]=x((n=>(o[0]=n,t.fallback()))),s=1);else if(0===s){for(a=new Array(w),d=0;d<w;d++)r[d]=u[d],a[d]=x(b);s=w}else{for(l=new Array(w),p=new Array(w),c&&(f=new Array(w)),m=0,Q=Math.min(s,w);m<Q&&r[m]===u[m];m++);for(Q=s-1,h=w-1;Q>=m&&h>=m&&r[Q]===u[h];Q--,h--)l[h]=a[Q],p[h]=o[Q],c&&(f[h]=c[Q]);for(n=new Map,e=new Array(h+1),d=h;d>=m;d--)g=u[d],i=n.get(g),e[d]=void 0===i?-1:i,n.set(g,d);for(i=m;i<=Q;i++)g=r[i],d=n.get(g),void 0!==d&&-1!==d?(l[d]=a[i],p[d]=o[i],c&&(f[d]=c[i]),d=e[d],n.set(g,d)):o[i]();for(d=m;d<w;d++)d in l?(a[d]=l[d],o[d]=p[d],c&&(c[d]=f[d],c[d](d))):a[d]=x(b);a=a.slice(0,s=w),r=u.slice(0)}return a}));function b(n){if(o[d]=n,c){const[n,t]=y(d);return c[d]=t,e(u[d],n)}return e(u[d])}}}function F(n,e){return M((()=>n(e||{})))}function R(){return!0}const U={get:(n,e,t)=>e===i?t:n.get(e),has:(n,e)=>e===i||n.has(e),set:R,deleteProperty:R,getOwnPropertyDescriptor:(n,e)=>({configurable:!0,enumerable:!0,get:()=>n.get(e),set:R,deleteProperty:R}),ownKeys:n=>n.keys()};function I(n){const e="fallback"in n&&{fallback:()=>n.fallback};return C(D((()=>n.each),n.children,e||void 0))}const q=new Set(["className","value","readOnly","formNoValidate","isMap","noModule","playsInline","allowfullscreen","async","autofocus","autoplay","checked","controls","default","disabled","formnovalidate","hidden","indeterminate","ismap","loop","multiple","muted","nomodule","novalidate","open","playsinline","readonly","required","reversed","seamless","selected"]),H=new Set(["innerHTML","textContent","innerText","children"]),G=Object.assign(Object.create(null),{className:"class",htmlFor:"for"}),V=Object.assign(Object.create(null),{class:"className",formnovalidate:{$:"formNoValidate",BUTTON:1,INPUT:1},ismap:{$:"isMap",IMG:1},nomodule:{$:"noModule",SCRIPT:1},playsinline:{$:"playsInline",VIDEO:1},readonly:{$:"readOnly",INPUT:1,TEXTAREA:1}});const J=new Set(["beforeinput","click","dblclick","contextmenu","focusin","focusout","input","keydown","keyup","mousedown","mousemove","mouseout","mouseover","mouseup","pointerdown","pointermove","pointerout","pointerover","pointerup","touchend","touchmove","touchstart"]),K={xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace"};const X="_$DX_DELEGATE";function Y(n,e,t){let r;const a=()=>{const e=document.createElement("template");return e.innerHTML=n,t?e.content.firstChild.firstChild:e.content.firstChild},o=e?()=>(r||(r=a())).cloneNode(!0):()=>M((()=>document.importNode(r||(r=a()),!0)));return o.cloneNode=o,o}function W(n,e,t){null==t?n.removeAttribute(e):n.setAttribute(e,t)}function nn(n,e={},t,r){const a={};return r||k((()=>a.children=cn(n,e.children,a.children))),k((()=>e.ref&&e.ref(n))),k((()=>function(n,e,t,r,a={},o=!1){e||(e={});for(const r in a)if(!(r in e)){if("children"===r)continue;a[r]=on(n,r,null,a[r],t,o)}for(const s in e){if("children"===s){r||cn(n,e.children);continue}const c=e[s];a[s]=on(n,s,c,a[s],t,o)}}(n,e,t,!0,a,!0))),a}function en(n,e,t,r){if(void 0===t||r||(r=[]),"function"!=typeof e)return cn(n,e,r,t);k((r=>cn(n,e(),r,t)),r)}function tn(n){if(!n)throw new Error("Unrecoverable Hydration Mismatch. No template for key: "+undefined);return n()}function rn(n){return[n,[]]}function an(n,e,t){const r=e.trim().split(/\s+/);for(let e=0,a=r.length;e<a;e++)n.classList.toggle(r[e],t)}function on(n,e,t,r,a,o){let s,c,i,l,d;if("style"===e)return function(n,e,t){if(!e)return t?W(n,"style"):e;const r=n.style;if("string"==typeof e)return r.cssText=e;let a,o;for(o in"string"==typeof t&&(r.cssText=t=void 0),t||(t={}),e||(e={}),t)null==e[o]&&r.removeProperty(o),delete t[o];for(o in e)a=e[o],a!==t[o]&&(r.setProperty(o,a),t[o]=a);return t}(n,t,r);if("classList"===e)return function(n,e,t={}){const r=Object.keys(e||{}),a=Object.keys(t);let o,s;for(o=0,s=a.length;o<s;o++){const r=a[o];r&&"undefined"!==r&&!e[r]&&(an(n,r,!1),delete t[r])}for(o=0,s=r.length;o<s;o++){const a=r[o],s=!!e[a];a&&"undefined"!==a&&t[a]!==s&&s&&(an(n,a,!0),t[a]=s)}return t}(n,t,r);if(t===r)return r;if("ref"===e)o||t(n);else if("on:"===e.slice(0,3)){const a=e.slice(3);r&&n.removeEventListener(a,r),t&&n.addEventListener(a,t)}else if("oncapture:"===e.slice(0,10)){const a=e.slice(10);r&&n.removeEventListener(a,r,!0),t&&n.addEventListener(a,t,!0)}else if("on"===e.slice(0,2)){const a=e.slice(2).toLowerCase(),o=J.has(a);if(!o&&r){const e=Array.isArray(r)?r[0]:r;n.removeEventListener(a,e)}(o||t)&&(function(n,e,t,r){if(r)Array.isArray(t)?(n[`$$${e}`]=t[0],n[`$$${e}Data`]=t[1]):n[`$$${e}`]=t;else if(Array.isArray(t)){const r=t[0];n.addEventListener(e,t[0]=e=>r.call(n,t[1],e))}else n.addEventListener(e,t)}(n,a,t,o),o&&function(n,e=window.document){const t=e[X]||(e[X]=new Set);for(let r=0,a=n.length;r<a;r++){const a=n[r];t.has(a)||(t.add(a),e.addEventListener(a,sn))}}([a]))}else if("attr:"===e.slice(0,5))W(n,e.slice(5),t);else if((d="prop:"===e.slice(0,5))||(i=H.has(e))||!a&&((l=function(n,e){const t=V[n];return"object"==typeof t?t[e]?t.$:void 0:t}(e,n.tagName))||(c=q.has(e)))||(s=n.nodeName.includes("-")))d&&(e=e.slice(5),c=!0),"class"===e||"className"===e?function(n,e){null==e?n.removeAttribute("class"):n.className=e}(n,t):!s||c||i?n[l||e]=t:n[(u=e,u.toLowerCase().replace(/-([a-z])/g,((n,e)=>e.toUpperCase())))]=t;else{const r=a&&e.indexOf(":")>-1&&K[e.split(":")[0]];r?function(n,e,t,r){null==r?n.removeAttributeNS(e,t):n.setAttributeNS(e,t,r)}(n,r,e,t):W(n,G[e]||e,t)}var u;return t}function sn(n){const e=`$$${n.type}`;let t=n.composedPath&&n.composedPath()[0]||n.target;for(n.target!==t&&Object.defineProperty(n,"target",{configurable:!0,value:t}),Object.defineProperty(n,"currentTarget",{configurable:!0,get:()=>t||document});t;){const r=t[e];if(r&&!t.disabled){const a=t[`${e}Data`];if(void 0!==a?r.call(t,a,n):r.call(t,n),n.cancelBubble)return}t=t._$host||t.parentNode||t.host}}function cn(n,e,t,r,a){for(;"function"==typeof t;)t=t();if(e===t)return t;const o=typeof e,s=void 0!==r;if(n=s&&t[0]&&t[0].parentNode||n,"string"===o||"number"===o)if("number"===o&&(e=e.toString()),s){let a=t[0];a&&3===a.nodeType?a.data=e:a=document.createTextNode(e),t=un(n,t,r,a)}else t=""!==t&&"string"==typeof t?n.firstChild.data=e:n.textContent=e;else if(null==e||"boolean"===o)t=un(n,t,r);else{if("function"===o)return k((()=>{let a=e();for(;"function"==typeof a;)a=a();t=cn(n,a,t,r)})),()=>t;if(Array.isArray(e)){const o=[],c=t&&Array.isArray(t);if(ln(o,e,t,a))return k((()=>t=cn(n,o,t,r,!0))),()=>t;if(0===o.length){if(t=un(n,t,r),s)return t}else c?0===t.length?dn(n,o,r):function(n,e,t){let r=t.length,a=e.length,o=r,s=0,c=0,i=e[a-1].nextSibling,l=null;for(;s<a||c<o;)if(e[s]!==t[c]){for(;e[a-1]===t[o-1];)a--,o--;if(a===s){const e=o<r?c?t[c-1].nextSibling:t[o-c]:i;for(;c<o;)n.insertBefore(t[c++],e)}else if(o===c)for(;s<a;)l&&l.has(e[s])||e[s].remove(),s++;else if(e[s]===t[o-1]&&t[c]===e[a-1]){const r=e[--a].nextSibling;n.insertBefore(t[c++],e[s++].nextSibling),n.insertBefore(t[--o],r),e[a]=t[o]}else{if(!l){l=new Map;let n=c;for(;n<o;)l.set(t[n],n++)}const r=l.get(e[s]);if(null!=r)if(c<r&&r<o){let i,d=s,u=1;for(;++d<a&&d<o&&null!=(i=l.get(e[d]))&&i===r+u;)u++;if(u>r-c){const a=e[s];for(;c<r;)n.insertBefore(t[c++],a)}else n.replaceChild(t[c++],e[s++])}else s++;else e[s++].remove()}}else s++,c++}(n,t,o):(t&&un(n),dn(n,o));t=o}else if(e.nodeType){if(Array.isArray(t)){if(s)return t=un(n,t,r,e);un(n,t,null,e)}else null!=t&&""!==t&&n.firstChild?n.replaceChild(e,n.firstChild):n.appendChild(e);t=e}else console.warn("Unrecognized value. Skipped inserting",e)}return t}function ln(n,e,t,r){let a=!1;for(let o=0,s=e.length;o<s;o++){let s,c=e[o],i=t&&t[o];if(null==c||!0===c||!1===c);else if("object"==(s=typeof c)&&c.nodeType)n.push(c);else if(Array.isArray(c))a=ln(n,c,i)||a;else if("function"===s)if(r){for(;"function"==typeof c;)c=c();a=ln(n,Array.isArray(c)?c:[c],Array.isArray(i)?i:[i])||a}else n.push(c),a=!0;else{const e=String(c);i&&3===i.nodeType&&i.data===e?n.push(i):n.push(document.createTextNode(e))}}return a}function dn(n,e,t=null){for(let r=0,a=e.length;r<a;r++)n.insertBefore(e[r],t)}function un(n,e,t,r){if(void 0===t)return n.textContent="";const a=r||document.createTextNode("");if(e.length){let r=!1;for(let o=e.length-1;o>=0;o--){const s=e[o];if(a!==s){const e=s.parentNode===n;r||o?e&&s.remove():e?n.replaceChild(a,s):n.insertBefore(a,t)}else r=!0}}else n.insertBefore(a,t);return[a]}function bn(n){return(e,t)=>{const{element:r}=t;return x((a=>{const o=function(n){const e=Object.keys(n),t={};for(let r=0;r<e.length;r++){const[a,o]=y(n[e[r]]);Object.defineProperty(t,e[r],{get:a,set(n){o((()=>n))}})}return t}(e);r.addPropertyChangedCallback(((n,e)=>o[n]=e)),r.addReleaseCallback((()=>{r.renderRoot.textContent="",a()}));const s=n(o,t);return en(r.renderRoot,s)}),function(n){if(n.assignedSlot&&n.assignedSlot._$owner)return n.assignedSlot._$owner;let e=n.parentNode;for(;e&&!e._$owner&&(!e.assignedSlot||!e.assignedSlot._$owner);)e=e.parentNode;return e&&e.assignedSlot?e.assignedSlot._$owner:n._$owner}(r))}}var pn=':root,\n[data-theme] {\n background-color: hsla(var(--b1) / var(--tw-bg-opacity, 1));\n color: hsla(var(--bc) / var(--tw-text-opacity, 1))\n}\nhtml {\n -webkit-tap-highlight-color: transparent\n}\n:root {\n color-scheme: light;\n --pf: 258.89 94.378% 40.941%;\n --sf: 314 100% 37.647%;\n --af: 174 60% 40.784%;\n --nf: 219 14.085% 22.275%;\n --in: 198 93% 60%;\n --su: 158 64% 52%;\n --wa: 43 96% 56%;\n --er: 0 91% 71%;\n --inc: 198 100% 12%;\n --suc: 158 100% 10%;\n --wac: 43 100% 11%;\n --erc: 0 100% 14%;\n --rounded-box: 1rem;\n --rounded-btn: 0.5rem;\n --rounded-badge: 1.9rem;\n --animation-btn: 0.25s;\n --animation-input: .2s;\n --btn-text-case: uppercase;\n --btn-focus-scale: 0.95;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: 0.5rem;\n --p: 258.89 94.378% 51.176%;\n --pc: 0 0% 100%;\n --s: 314 100% 47.059%;\n --sc: 0 0% 100%;\n --a: 174 60% 50.98%;\n --ac: 174.71 43.59% 15.294%;\n --n: 219 14.085% 27.843%;\n --nc: 0 0% 100%;\n --b1: 0 0% 100%;\n --b2: 0 0% 94.902%;\n --b3: 180 1.9608% 90%;\n --bc: 215 27.907% 16.863%\n}\n@media (prefers-color-scheme: dark) {\n :root {\n color-scheme: dark;\n --pf: 262.35 80.315% 40.157%;\n --sf: 315.75 70.196% 40%;\n --af: 174.69 70.335% 32.784%;\n --in: 198 93% 60%;\n --su: 158 64% 52%;\n --wa: 43 96% 56%;\n --er: 0 91% 71%;\n --inc: 198 100% 12%;\n --suc: 158 100% 10%;\n --wac: 43 100% 11%;\n --erc: 0 100% 14%;\n --rounded-box: 1rem;\n --rounded-btn: 0.5rem;\n --rounded-badge: 1.9rem;\n --animation-btn: 0.25s;\n --animation-input: .2s;\n --btn-text-case: uppercase;\n --btn-focus-scale: 0.95;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: 0.5rem;\n --p: 262.35 80.315% 50.196%;\n --pc: 0 0% 100%;\n --s: 315.75 70.196% 50%;\n --sc: 0 0% 100%;\n --a: 174.69 70.335% 40.98%;\n --ac: 0 0% 100%;\n --n: 218.18 18.033% 11.961%;\n --nf: 222.86 17.073% 8.0392%;\n --nc: 220 13.376% 69.216%;\n --b1: 220 17.647% 20%;\n --b2: 220 17.241% 17.059%;\n --b3: 218.57 17.949% 15.294%;\n --bc: 220 13.376% 69.216%\n }\n}\n[data-theme=light] {\n color-scheme: light;\n --pf: 258.89 94.378% 40.941%;\n --sf: 314 100% 37.647%;\n --af: 174 60% 40.784%;\n --nf: 219 14.085% 22.275%;\n --in: 198 93% 60%;\n --su: 158 64% 52%;\n --wa: 43 96% 56%;\n --er: 0 91% 71%;\n --inc: 198 100% 12%;\n --suc: 158 100% 10%;\n --wac: 43 100% 11%;\n --erc: 0 100% 14%;\n --rounded-box: 1rem;\n --rounded-btn: 0.5rem;\n --rounded-badge: 1.9rem;\n --animation-btn: 0.25s;\n --animation-input: .2s;\n --btn-text-case: uppercase;\n --btn-focus-scale: 0.95;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: 0.5rem;\n --p: 258.89 94.378% 51.176%;\n --pc: 0 0% 100%;\n --s: 314 100% 47.059%;\n --sc: 0 0% 100%;\n --a: 174 60% 50.98%;\n --ac: 174.71 43.59% 15.294%;\n --n: 219 14.085% 27.843%;\n --nc: 0 0% 100%;\n --b1: 0 0% 100%;\n --b2: 0 0% 94.902%;\n --b3: 180 1.9608% 90%;\n --bc: 215 27.907% 16.863%\n}\n[data-theme=dark] {\n color-scheme: dark;\n --pf: 262.35 80.315% 40.157%;\n --sf: 315.75 70.196% 40%;\n --af: 174.69 70.335% 32.784%;\n --in: 198 93% 60%;\n --su: 158 64% 52%;\n --wa: 43 96% 56%;\n --er: 0 91% 71%;\n --inc: 198 100% 12%;\n --suc: 158 100% 10%;\n --wac: 43 100% 11%;\n --erc: 0 100% 14%;\n --rounded-box: 1rem;\n --rounded-btn: 0.5rem;\n --rounded-badge: 1.9rem;\n --animation-btn: 0.25s;\n --animation-input: .2s;\n --btn-text-case: uppercase;\n --btn-focus-scale: 0.95;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: 0.5rem;\n --p: 262.35 80.315% 50.196%;\n --pc: 0 0% 100%;\n --s: 315.75 70.196% 50%;\n --sc: 0 0% 100%;\n --a: 174.69 70.335% 40.98%;\n --ac: 0 0% 100%;\n --n: 218.18 18.033% 11.961%;\n --nf: 222.86 17.073% 8.0392%;\n --nc: 220 13.376% 69.216%;\n --b1: 220 17.647% 20%;\n --b2: 220 17.241% 17.059%;\n --b3: 218.57 17.949% 15.294%;\n --bc: 220 13.376% 69.216%\n}\n[data-theme=cupcake] {\n color-scheme: light;\n --pf: 183.03 47.368% 47.216%;\n --sf: 338.25 71.429% 62.431%;\n --af: 39 84.112% 46.431%;\n --nf: 280 46.479% 11.137%;\n --in: 198 93% 60%;\n --su: 158 64% 52%;\n --wa: 43 96% 56%;\n --er: 0 91% 71%;\n --pc: 183.03 100% 11.804%;\n --sc: 338.25 100% 15.608%;\n --ac: 39 100% 11.608%;\n --nc: 280 82.688% 82.784%;\n --inc: 198 100% 12%;\n --suc: 158 100% 10%;\n --wac: 43 100% 11%;\n --erc: 0 100% 14%;\n --rounded-box: 1rem;\n --rounded-badge: 1.9rem;\n --animation-btn: 0.25s;\n --animation-input: .2s;\n --btn-text-case: uppercase;\n --btn-focus-scale: 0.95;\n --border-btn: 1px;\n --p: 183.03 47.368% 59.02%;\n --s: 338.25 71.429% 78.039%;\n --a: 39 84.112% 58.039%;\n --n: 280 46.479% 13.922%;\n --b1: 24 33.333% 97.059%;\n --b2: 26.667 21.951% 91.961%;\n --b3: 22.5 14.286% 89.02%;\n --bc: 280 46.479% 13.922%;\n --rounded-btn: 1.9rem;\n --tab-border: 2px;\n --tab-radius: .5rem\n}\n[data-theme=bumblebee] {\n color-scheme: light;\n --pf: 41.124 74.167% 42.353%;\n --sf: 49.901 94.393% 46.431%;\n --af: 240 33.333% 11.294%;\n --nf: 240 33.333% 11.294%;\n --b2: 0 0% 90%;\n --b3: 0 0% 81%;\n --in: 198 93% 60%;\n --su: 158 64% 52%;\n --wa: 43 96% 56%;\n --er: 0 91% 71%;\n --bc: 0 0% 20%;\n --ac: 240 60.274% 82.824%;\n --nc: 240 60.274% 82.824%;\n --inc: 198 100% 12%;\n --suc: 158 100% 10%;\n --wac: 43 100% 11%;\n --erc: 0 100% 14%;\n --rounded-box: 1rem;\n --rounded-btn: 0.5rem;\n --rounded-badge: 1.9rem;\n --animation-btn: 0.25s;\n --animation-input: .2s;\n --btn-text-case: uppercase;\n --btn-focus-scale: 0.95;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: 0.5rem;\n --p: 41.124 74.167% 52.941%;\n --pc: 240 33.333% 14.118%;\n --s: 49.901 94.393% 58.039%;\n --sc: 240 33.333% 14.118%;\n --a: 240 33.333% 14.118%;\n --n: 240 33.333% 14.118%;\n --b1: 0 0% 100%\n}\n[data-theme=emerald] {\n color-scheme: light;\n --pf: 141.18 50% 48%;\n --sf: 218.88 96.078% 48%;\n --af: 9.8901 81.25% 44.863%;\n --nf: 219.23 20.312% 20.078%;\n --b2: 0 0% 90%;\n --b3: 0 0% 81%;\n --in: 198 93% 60%;\n --su: 158 64% 52%;\n --wa: 43 96% 56%;\n --er: 0 91% 71%;\n --inc: 198 100% 12%;\n --suc: 158 100% 10%;\n --wac: 43 100% 11%;\n --erc: 0 100% 14%;\n --rounded-box: 1rem;\n --rounded-btn: 0.5rem;\n --rounded-badge: 1.9rem;\n --btn-text-case: uppercase;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: 0.5rem;\n --p: 141.18 50% 60%;\n --pc: 151.11 28.421% 18.627%;\n --s: 218.88 96.078% 60%;\n --sc: 210 20% 98.039%;\n --a: 9.8901 81.25% 56.078%;\n --ac: 210 20% 98.039%;\n --n: 219.23 20.312% 25.098%;\n --nc: 210 20% 98.039%;\n --b1: 0 0% 100%;\n --bc: 219.23 20.312% 25.098%;\n --animation-btn: 0;\n --animation-input: 0;\n --btn-focus-scale: 1\n}\n[data-theme=corporate] {\n color-scheme: light;\n --pf: 229.09 95.652% 51.137%;\n --sf: 214.91 26.316% 47.216%;\n --af: 154.2 49.02% 48%;\n --nf: 233.33 27.273% 10.353%;\n --b2: 0 0% 90%;\n --b3: 0 0% 81%;\n --in: 198 93% 60%;\n --su: 158 64% 52%;\n --wa: 43 96% 56%;\n --er: 0 91% 71%;\n --pc: 229.09 100% 92.784%;\n --sc: 214.91 100% 11.804%;\n --ac: 154.2 100% 12%;\n --inc: 198 100% 12%;\n --suc: 158 100% 10%;\n --wac: 43 100% 11%;\n --erc: 0 100% 14%;\n --btn-text-case: uppercase;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: 0.5rem;\n --p: 229.09 95.652% 63.922%;\n --s: 214.91 26.316% 59.02%;\n --a: 154.2 49.02% 60%;\n --n: 233.33 27.273% 12.941%;\n --nc: 210 38.462% 94.902%;\n --b1: 0 0% 100%;\n --bc: 233.33 27.273% 12.941%;\n --rounded-box: 0.25rem;\n --rounded-btn: .125rem;\n --rounded-badge: .125rem;\n --animation-btn: 0;\n --animation-input: 0;\n --btn-focus-scale: 1\n}\n[data-theme=synthwave] {\n color-scheme: dark;\n --pf: 320.73 69.62% 55.216%;\n --sf: 197.03 86.592% 51.922%;\n --af: 48 89.041% 45.647%;\n --nf: 253.22 60.825% 15.216%;\n --b2: 253.85 59.091% 23.294%;\n --b3: 253.85 59.091% 20.965%;\n --pc: 320.73 100% 13.804%;\n --sc: 197.03 100% 12.98%;\n --ac: 48 100% 11.412%;\n --rounded-box: 1rem;\n --rounded-btn: 0.5rem;\n --rounded-badge: 1.9rem;\n --animation-btn: 0.25s;\n --animation-input: .2s;\n --btn-text-case: uppercase;\n --btn-focus-scale: 0.95;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: 0.5rem;\n --p: 320.73 69.62% 69.02%;\n --s: 197.03 86.592% 64.902%;\n --a: 48 89.041% 57.059%;\n --n: 253.22 60.825% 19.02%;\n --nc: 260 60% 98.039%;\n --b1: 253.85 59.091% 25.882%;\n --bc: 260 60% 98.039%;\n --in: 199.13 86.957% 63.922%;\n --inc: 257.45 63.218% 17.059%;\n --su: 168.1 74.233% 68.039%;\n --suc: 257.45 63.218% 17.059%;\n --wa: 48 89.041% 57.059%;\n --wac: 257.45 63.218% 17.059%;\n --er: 351.85 73.636% 56.863%;\n --erc: 260 60% 98.039%\n}\n[data-theme=retro] {\n color-scheme: light;\n --pf: 2.6667 73.77% 60.863%;\n --sf: 144.62 27.273% 57.569%;\n --af: 49.024 67.213% 60.863%;\n --nf: 41.667 16.822% 33.569%;\n --inc: 221.21 100% 90.667%;\n --suc: 142.13 100% 87.255%;\n --wac: 32.133 100% 8.7451%;\n --erc: 0 100% 90.118%;\n --animation-btn: 0.25s;\n --animation-input: .2s;\n --btn-text-case: uppercase;\n --btn-focus-scale: 0.95;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: 0.5rem;\n --p: 2.6667 73.77% 76.078%;\n --pc: 345 5.2632% 14.902%;\n --s: 144.62 27.273% 71.961%;\n --sc: 345 5.2632% 14.902%;\n --a: 49.024 67.213% 76.078%;\n --ac: 345 5.2632% 14.902%;\n --n: 41.667 16.822% 41.961%;\n --nc: 45 47.059% 80%;\n --b1: 45 47.059% 80%;\n --b2: 45.283 37.063% 71.961%;\n --b3: 42.188 35.955% 65.098%;\n --bc: 345 5.2632% 14.902%;\n --in: 221.21 83.193% 53.333%;\n --su: 142.13 76.216% 36.275%;\n --wa: 32.133 94.619% 43.725%;\n --er: 0 72.222% 50.588%;\n --rounded-box: 0.4rem;\n --rounded-btn: 0.4rem;\n --rounded-badge: 0.4rem\n}\n[data-theme=cyberpunk] {\n color-scheme: light;\n --pf: 344.78 100% 58.353%;\n --sf: 195.12 80.392% 56%;\n --af: 276 74.324% 56.784%;\n --nf: 57.273 100% 10.353%;\n --b2: 56 100% 45%;\n --b3: 56 100% 40.5%;\n --in: 198 93% 60%;\n --su: 158 64% 52%;\n --wa: 43 96% 56%;\n --er: 0 91% 71%;\n --bc: 56 100% 10%;\n --pc: 344.78 100% 14.588%;\n --sc: 195.12 100% 14%;\n --ac: 276 100% 14.196%;\n --inc: 198 100% 12%;\n --suc: 158 100% 10%;\n --wac: 43 100% 11%;\n --erc: 0 100% 14%;\n --animation-btn: 0.25s;\n --animation-input: .2s;\n --btn-text-case: uppercase;\n --btn-focus-scale: 0.95;\n --border-btn: 1px;\n --tab-border: 1px;\n font-family: ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;\n --p: 344.78 100% 72.941%;\n --s: 195.12 80.392% 70%;\n --a: 276 74.324% 70.98%;\n --n: 57.273 100% 12.941%;\n --nc: 56 100% 50%;\n --b1: 56 100% 50%;\n --rounded-box: 0;\n --rounded-btn: 0;\n --rounded-badge: 0;\n --tab-radius: 0\n}\n[data-theme=valentine] {\n color-scheme: light;\n --pf: 353.23 73.81% 53.647%;\n --sf: 254.12 86.441% 61.49%;\n --af: 181.41 55.556% 56%;\n --nf: 336 42.857% 38.431%;\n --b2: 318.46 46.429% 80.118%;\n --b3: 318.46 46.429% 72.106%;\n --pc: 353.23 100% 13.412%;\n --sc: 254.12 100% 15.373%;\n --ac: 181.41 100% 14%;\n --inc: 221.21 100% 90.667%;\n --suc: 142.13 100% 87.255%;\n --wac: 32.133 100% 8.7451%;\n --erc: 0 100% 90.118%;\n --rounded-box: 1rem;\n --rounded-badge: 1.9rem;\n --animation-btn: 0.25s;\n --animation-input: .2s;\n --btn-text-case: uppercase;\n --btn-focus-scale: 0.95;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: 0.5rem;\n --p: 353.23 73.81% 67.059%;\n --s: 254.12 86.441% 76.863%;\n --a: 181.41 55.556% 70%;\n --n: 336 42.857% 48.039%;\n --nc: 318.46 46.429% 89.02%;\n --b1: 318.46 46.429% 89.02%;\n --bc: 343.64 38.462% 28.039%;\n --in: 221.21 83.193% 53.333%;\n --su: 142.13 76.216% 36.275%;\n --wa: 32.133 94.619% 43.725%;\n --er: 0 72.222% 50.588%;\n --rounded-btn: 1.9rem\n}\n[data-theme=halloween] {\n color-scheme: dark;\n --pf: 31.927 89.344% 41.725%;\n --sf: 271.22 45.794% 33.569%;\n --af: 91.071 100% 26.353%;\n --nf: 180 3.5714% 8.7843%;\n --b2: 0 0% 11.647%;\n --b3: 0 0% 10.482%;\n --bc: 0 0% 82.588%;\n --sc: 271.22 100% 88.392%;\n --ac: 91.071 100% 6.5882%;\n --nc: 180 4.8458% 82.196%;\n --inc: 221.21 100% 90.667%;\n --suc: 142.13 100% 87.255%;\n --wac: 32.133 100% 8.7451%;\n --erc: 0 100% 90.118%;\n --rounded-box: 1rem;\n --rounded-btn: 0.5rem;\n --rounded-badge: 1.9rem;\n --animation-btn: 0.25s;\n --animation-input: .2s;\n --btn-text-case: uppercase;\n --btn-focus-scale: 0.95;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: 0.5rem;\n --p: 31.927 89.344% 52.157%;\n --pc: 180 7.3171% 8.0392%;\n --s: 271.22 45.794% 41.961%;\n --a: 91.071 100% 32.941%;\n --n: 180 3.5714% 10.98%;\n --b1: 0 0% 12.941%;\n --in: 221.21 83.193% 53.333%;\n --su: 142.13 76.216% 36.275%;\n --wa: 32.133 94.619% 43.725%;\n --er: 0 72.222% 50.588%\n}\n[data-theme=garden] {\n color-scheme: light;\n --pf: 138.86 15.982% 34.353%;\n --sf: 96.923 37.143% 74.51%;\n --af: 0 67.742% 75.137%;\n --nf: 0 3.9106% 28.078%;\n --b2: 0 4.3478% 81.882%;\n --b3: 0 4.3478% 73.694%;\n --in: 198 93% 60%;\n --su: 158 64% 52%;\n --wa: 43 96% 56%;\n --er: 0 91% 71%;\n --pc: 138.86 100% 88.588%;\n --inc: 198 100% 12%;\n --suc: 158 100% 10%;\n --wac: 43 100% 11%;\n --erc: 0 100% 14%;\n --rounded-box: 1rem;\n --rounded-btn: 0.5rem;\n --rounded-badge: 1.9rem;\n --animation-btn: 0.25s;\n --animation-input: .2s;\n --btn-text-case: uppercase;\n --btn-focus-scale: 0.95;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: 0.5rem;\n --p: 138.86 15.982% 42.941%;\n --s: 96.923 37.143% 93.137%;\n --sc: 96 32.468% 15.098%;\n --a: 0 67.742% 93.922%;\n --ac: 0 21.951% 16.078%;\n --n: 0 3.9106% 35.098%;\n --nc: 0 4.3478% 90.98%;\n --b1: 0 4.3478% 90.98%;\n --bc: 0 3.2258% 6.0784%\n}\n[data-theme=forest] {\n color-scheme: dark;\n --pf: 141.04 71.963% 33.569%;\n --sf: 140.98 74.694% 38.431%;\n --af: 35.148 68.98% 41.569%;\n --nf: 0 9.6774% 4.8627%;\n --b2: 0 12.195% 7.2353%;\n --b3: 0 12.195% 6.5118%;\n --in: 198 93% 60%;\n --su: 158 64% 52%;\n --wa: 43 96% 56%;\n --er: 0 91% 71%;\n --bc: 0 11.727% 81.608%;\n --sc: 140.98 100% 9.6078%;\n --ac: 35.148 100% 10.392%;\n --nc: 0 6.8894% 81.216%;\n --inc: 198 100% 12%;\n --suc: 158 100% 10%;\n --wac: 43 100% 11%;\n --erc: 0 100% 14%;\n --rounded-box: 1rem;\n --rounded-badge: 1.9rem;\n --animation-btn: 0.25s;\n --animation-input: .2s;\n --btn-text-case: uppercase;\n --btn-focus-scale: 0.95;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: 0.5rem;\n --p: 141.04 71.963% 41.961%;\n --pc: 140.66 100% 88.039%;\n --s: 140.98 74.694% 48.039%;\n --a: 35.148 68.98% 51.961%;\n --n: 0 9.6774% 6.0784%;\n --b1: 0 12.195% 8.0392%;\n --rounded-btn: 1.9rem\n}\n[data-theme=aqua] {\n color-scheme: dark;\n --pf: 181.79 92.857% 39.529%;\n --sf: 274.41 30.909% 45.49%;\n --af: 47.059 100% 64%;\n --nf: 205.4 53.725% 40%;\n --b2: 218.61 52.511% 38.647%;\n --b3: 218.61 52.511% 34.782%;\n --bc: 218.61 100% 88.588%;\n --sc: 274.41 100% 91.373%;\n --ac: 47.059 100% 16%;\n --nc: 205.4 100% 90%;\n --inc: 221.21 100% 90.667%;\n --suc: 142.13 100% 87.255%;\n --wac: 32.133 100% 8.7451%;\n --erc: 0 100% 90.118%;\n --rounded-box: 1rem;\n --rounded-btn: 0.5rem;\n --rounded-badge: 1.9rem;\n --animation-btn: 0.25s;\n --animation-input: .2s;\n --btn-text-case: uppercase;\n --btn-focus-scale: 0.95;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: 0.5rem;\n --p: 181.79 92.857% 49.412%;\n --pc: 181.41 100% 16.667%;\n --s: 274.41 30.909% 56.863%;\n --a: 47.059 100% 80%;\n --n: 205.4 53.725% 50%;\n --b1: 218.61 52.511% 42.941%;\n --in: 221.21 83.193% 53.333%;\n --su: 142.13 76.216% 36.275%;\n --wa: 32.133 94.619% 43.725%;\n --er: 0 72.222% 50.588%\n}\n[data-theme=lofi] {\n color-scheme: light;\n --pf: 0 0% 4.0784%;\n --sf: 0 1.9608% 8%;\n --af: 0 0% 11.922%;\n --nf: 0 0% 0%;\n --btn-text-case: uppercase;\n --border-btn: 1px;\n --tab-border: 1px;\n --p: 0 0% 5.098%;\n --pc: 0 0% 100%;\n --s: 0 1.9608% 10%;\n --sc: 0 0% 100%;\n --a: 0 0% 14.902%;\n --ac: 0 0% 100%;\n --n: 0 0% 0%;\n --nc: 0 0% 100%;\n --b1: 0 0% 100%;\n --b2: 0 0% 94.902%;\n --b3: 0 1.9608% 90%;\n --bc: 0 0% 0%;\n --in: 212.35 100% 47.647%;\n --inc: 0 0% 100%;\n --su: 136.84 72.152% 46.471%;\n --suc: 0 0% 100%;\n --wa: 4.5614 100% 66.471%;\n --wac: 0 0% 100%;\n --er: 325.05 77.6% 49.02%;\n --erc: 0 0% 100%;\n --rounded-box: 0.25rem;\n --rounded-btn: 0.125rem;\n --rounded-badge: 0.125rem;\n --animation-btn: 0;\n --animation-input: 0;\n --btn-focus-scale: 1;\n --tab-radius: 0\n}\n[data-theme=pastel] {\n color-scheme: light;\n --pf: 283.64 21.569% 64%;\n --sf: 351.63 70.492% 70.431%;\n --af: 158.49 54.639% 64.784%;\n --nf: 198.62 43.719% 48.784%;\n --in: 198 93% 60%;\n --su: 158 64% 52%;\n --wa: 43 96% 56%;\n --er: 0 91% 71%;\n --bc: 0 0% 20%;\n --pc: 283.64 59.314% 16%;\n --sc: 351.63 100% 17.608%;\n --ac: 158.49 100% 16.196%;\n --nc: 198.62 100% 12.196%;\n --inc: 198 100% 12%;\n --suc: 158 100% 10%;\n --wac: 43 100% 11%;\n --erc: 0 100% 14%;\n --rounded-box: 1rem;\n --rounded-badge: 1.9rem;\n --animation-btn: 0.25s;\n --animation-input: .2s;\n --btn-text-case: uppercase;\n --btn-focus-scale: 0.95;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: 0.5rem;\n --p: 283.64 21.569% 80%;\n --s: 351.63 70.492% 88.039%;\n --a: 158.49 54.639% 80.98%;\n --n: 198.62 43.719% 60.98%;\n --b1: 0 0% 100%;\n --b2: 210 20% 98.039%;\n --b3: 216 12.195% 83.922%;\n --rounded-btn: 1.9rem\n}\n[data-theme=fantasy] {\n color-scheme: light;\n --pf: 296.04 82.813% 20.078%;\n --sf: 200 100% 29.647%;\n --af: 30.894 94.378% 40.941%;\n --nf: 215 27.907% 13.49%;\n --b2: 0 0% 90%;\n --b3: 0 0% 81%;\n --in: 198 93% 60%;\n --su: 158 64% 52%;\n --wa: 43 96% 56%;\n --er: 0 91% 71%;\n --pc: 296.04 100% 85.02%;\n --sc: 200 100% 87.412%;\n --ac: 30.894 100% 10.235%;\n --nc: 215 62.264% 83.373%;\n --inc: 198 100% 12%;\n --suc: 158 100% 10%;\n --wac: 43 100% 11%;\n --erc: 0 100% 14%;\n --rounded-box: 1rem;\n --rounded-btn: 0.5rem;\n --rounded-badge: 1.9rem;\n --animation-btn: 0.25s;\n --animation-input: .2s;\n --btn-text-case: uppercase;\n --btn-focus-scale: 0.95;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: 0.5rem;\n --p: 296.04 82.813% 25.098%;\n --s: 200 100% 37.059%;\n --a: 30.894 94.378% 51.176%;\n --n: 215 27.907% 16.863%;\n --b1: 0 0% 100%;\n --bc: 215 27.907% 16.863%\n}\n[data-theme=wireframe] {\n color-scheme: light;\n --pf: 0 0% 57.725%;\n --sf: 0 0% 57.725%;\n --af: 0 0% 57.725%;\n --nf: 0 0% 73.725%;\n --bc: 0 0% 20%;\n --pc: 0 0% 14.431%;\n --sc: 0 0% 14.431%;\n --ac: 0 0% 14.431%;\n --nc: 0 0% 18.431%;\n --inc: 240 100% 90%;\n --suc: 120 100% 85.02%;\n --wac: 60 100% 10%;\n --erc: 0 100% 90%;\n --animation-btn: 0.25s;\n --animation-input: .2s;\n --btn-text-case: uppercase;\n --btn-focus-scale: 0.95;\n --border-btn: 1px;\n --tab-border: 1px;\n font-family: Chalkboard,comic sans ms,"sanssecondaryerif";\n --p: 0 0% 72.157%;\n --s: 0 0% 72.157%;\n --a: 0 0% 72.157%;\n --n: 0 0% 92.157%;\n --b1: 0 0% 100%;\n --b2: 0 0% 93.333%;\n --b3: 0 0% 86.667%;\n --in: 240 100% 50%;\n --su: 120 100% 25.098%;\n --wa: 60 30.196% 50%;\n --er: 0 100% 50%;\n --rounded-box: 0.2rem;\n --rounded-btn: 0.2rem;\n --rounded-badge: 0.2rem;\n --tab-radius: 0.2rem\n}\n[data-theme=black] {\n color-scheme: dark;\n --pf: 0 1.9608% 16%;\n --sf: 0 1.9608% 16%;\n --af: 0 1.9608% 16%;\n --bc: 0 0% 80%;\n --pc: 0 5.3922% 84%;\n --sc: 0 5.3922% 84%;\n --ac: 0 5.3922% 84%;\n --nc: 0 2.5404% 83.02%;\n --inc: 240 100% 90%;\n --suc: 120 100% 85.02%;\n --wac: 60 100% 10%;\n --erc: 0 100% 90%;\n --border-btn: 1px;\n --tab-border: 1px;\n --p: 0 1.9608% 20%;\n --s: 0 1.9608% 20%;\n --a: 0 1.9608% 20%;\n --b1: 0 0% 0%;\n --b2: 0 0% 5.098%;\n --b3: 0 1.9608% 10%;\n --n: 0 1.2987% 15.098%;\n --nf: 0 1.9608% 20%;\n --in: 240 100% 50%;\n --su: 120 100% 25.098%;\n --wa: 60 100% 50%;\n --er: 0 100% 50%;\n --rounded-box: 0;\n --rounded-btn: 0;\n --rounded-badge: 0;\n --animation-btn: 0;\n --animation-input: 0;\n --btn-text-case: lowercase;\n --btn-focus-scale: 1;\n --tab-radius: 0\n}\n[data-theme=luxury] {\n color-scheme: dark;\n --pf: 0 0% 80%;\n --sf: 218.4 54.348% 14.431%;\n --af: 318.62 21.805% 20.863%;\n --nf: 270 4.3478% 7.2157%;\n --pc: 0 0% 20%;\n --sc: 218.4 100% 83.608%;\n --ac: 318.62 84.615% 85.216%;\n --inc: 202.35 100% 14%;\n --suc: 89.007 100% 10.392%;\n --wac: 53.906 100% 12.706%;\n --erc: 0 100% 14.353%;\n --rounded-box: 1rem;\n --rounded-btn: 0.5rem;\n --rounded-badge: 1.9rem;\n --animation-btn: 0.25s;\n --animation-input: .2s;\n --btn-text-case: uppercase;\n --btn-focus-scale: 0.95;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: 0.5rem;\n --p: 0 0% 100%;\n --s: 218.4 54.348% 18.039%;\n --a: 318.62 21.805% 26.078%;\n --n: 270 4.3478% 9.0196%;\n --nc: 37.083 67.29% 58.039%;\n --b1: 240 10% 3.9216%;\n --b2: 270 4.3478% 9.0196%;\n --b3: 270 2.1739% 18.039%;\n --bc: 37.083 67.29% 58.039%;\n --in: 202.35 100% 70%;\n --su: 89.007 61.633% 51.961%;\n --wa: 53.906 68.817% 63.529%;\n --er: 0 100% 71.765%\n}\n[data-theme=dracula] {\n color-scheme: dark;\n --pf: 325.52 100% 58.98%;\n --sf: 264.71 89.474% 62.118%;\n --af: 31.02 100% 56.941%;\n --nf: 229.57 15.033% 24%;\n --b2: 231.43 14.894% 16.588%;\n --b3: 231.43 14.894% 14.929%;\n --pc: 325.52 100% 14.745%;\n --sc: 264.71 100% 15.529%;\n --ac: 31.02 100% 14.235%;\n --nc: 229.57 70.868% 86%;\n --inc: 190.53 100% 15.373%;\n --suc: 135.18 100% 12.941%;\n --wac: 64.909 100% 15.294%;\n --erc: 0 100% 93.333%;\n --rounded-box: 1rem;\n --rounded-btn: 0.5rem;\n --rounded-badge: 1.9rem;\n --animation-btn: 0.25s;\n --animation-input: .2s;\n --btn-text-case: uppercase;\n --btn-focus-scale: 0.95;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: 0.5rem;\n --p: 325.52 100% 73.725%;\n --s: 264.71 89.474% 77.647%;\n --a: 31.02 100% 71.176%;\n --n: 229.57 15.033% 30%;\n --b1: 231.43 14.894% 18.431%;\n --bc: 60 30% 96.078%;\n --in: 190.53 96.61% 76.863%;\n --su: 135.18 94.444% 64.706%;\n --wa: 64.909 91.667% 76.471%;\n --er: 0 100% 66.667%\n}\n[data-theme=cmyk] {\n color-scheme: light;\n --pf: 202.72 83.251% 48.157%;\n --sf: 335.25 77.67% 47.686%;\n --af: 56.195 100% 47.843%;\n --nf: 0 0% 8.1569%;\n --b2: 0 0% 90%;\n --b3: 0 0% 81%;\n --bc: 0 0% 20%;\n --pc: 202.72 100% 12.039%;\n --sc: 335.25 100% 91.922%;\n --ac: 56.195 100% 11.961%;\n --nc: 0 0% 82.039%;\n --inc: 192.2 100% 10.431%;\n --suc: 291.06 100% 87.608%;\n --wac: 25.027 100% 11.333%;\n --erc: 3.956 100% 91.137%;\n --rounded-box: 1rem;\n --rounded-btn: 0.5rem;\n --rounded-badge: 1.9rem;\n --animation-btn: 0.25s;\n --animation-input: .2s;\n --btn-text-case: uppercase;\n --btn-focus-scale: 0.95;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: 0.5rem;\n --p: 202.72 83.251% 60.196%;\n --s: 335.25 77.67% 59.608%;\n --a: 56.195 100% 59.804%;\n --n: 0 0% 10.196%;\n --b1: 0 0% 100%;\n --in: 192.2 48.361% 52.157%;\n --su: 291.06 48.454% 38.039%;\n --wa: 25.027 84.615% 56.667%;\n --er: 3.956 80.531% 55.686%\n}\n[data-theme=autumn] {\n color-scheme: light;\n --pf: 344.23 95.804% 22.431%;\n --sf: 0.44444 63.38% 46.588%;\n --af: 27.477 56.021% 50.039%;\n --nf: 22.105 17.117% 34.824%;\n --b2: 0 0% 85.059%;\n --b3: 0 0% 76.553%;\n --bc: 0 0% 18.902%;\n --pc: 344.23 100% 85.608%;\n --sc: 0.44444 100% 91.647%;\n --ac: 27.477 100% 12.51%;\n --nc: 22.105 100% 88.706%;\n --inc: 186.94 100% 9.9216%;\n --suc: 164.59 100% 8.6275%;\n --wac: 30.141 100% 9.9216%;\n --erc: 353.6 100% 89.765%;\n --rounded-box: 1rem;\n --rounded-btn: 0.5rem;\n --rounded-badge: 1.9rem;\n --animation-btn: 0.25s;\n --animation-input: .2s;\n --btn-text-case: uppercase;\n --btn-focus-scale: 0.95;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: 0.5rem;\n --p: 344.23 95.804% 28.039%;\n --s: 0.44444 63.38% 58.235%;\n --a: 27.477 56.021% 62.549%;\n --n: 22.105 17.117% 43.529%;\n --b1: 0 0% 94.51%;\n --in: 186.94 47.826% 49.608%;\n --su: 164.59 33.636% 43.137%;\n --wa: 30.141 84.19% 49.608%;\n --er: 353.6 79.116% 48.824%\n}\n[data-theme=business] {\n color-scheme: dark;\n --pf: 210 64.103% 24.471%;\n --sf: 200 12.931% 43.608%;\n --af: 12.515 79.512% 47.843%;\n --nf: 212.73 13.58% 12.706%;\n --b2: 0 0% 11.294%;\n --b3: 0 0% 10.165%;\n --bc: 0 0% 82.51%;\n --pc: 210 100% 86.118%;\n --sc: 200 100% 10.902%;\n --ac: 12.515 100% 11.961%;\n --nc: 212.73 28.205% 83.176%;\n --inc: 199.15 100% 88.353%;\n --suc: 144 100% 11.137%;\n --wac: 39.231 100% 12.078%;\n --erc: 6.3415 100% 88.667%;\n --animation-btn: 0.25s;\n --animation-input: .2s;\n --btn-text-case: uppercase;\n --btn-focus-scale: 0.95;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: 0.5rem;\n --p: 210 64.103% 30.588%;\n --s: 200 12.931% 54.51%;\n --a: 12.515 79.512% 59.804%;\n --n: 212.73 13.58% 15.882%;\n --b1: 0 0% 12.549%;\n --in: 199.15 100% 41.765%;\n --su: 144 30.973% 55.686%;\n --wa: 39.231 64.356% 60.392%;\n --er: 6.3415 55.656% 43.333%;\n --rounded-box: 0.25rem;\n --rounded-btn: .125rem;\n --rounded-badge: .125rem\n}\n[data-theme=acid] {\n color-scheme: light;\n --pf: 302.59 100% 40%;\n --sf: 27.294 100% 40%;\n --af: 72 98.425% 40.157%;\n --nf: 238.42 43.182% 13.804%;\n --b2: 0 0% 88.235%;\n --b3: 0 0% 79.412%;\n --bc: 0 0% 19.608%;\n --pc: 302.59 100% 90%;\n --sc: 27.294 100% 10%;\n --ac: 72 100% 10.039%;\n --nc: 238.42 99.052% 83.451%;\n --inc: 209.85 100% 11.569%;\n --suc: 148.87 100% 11.608%;\n --wac: 52.574 100% 11.451%;\n --erc: 0.78261 100% 89.02%;\n --animation-btn: 0.25s;\n --animation-input: .2s;\n --btn-text-case: uppercase;\n --btn-focus-scale: 0.95;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: 0.5rem;\n --p: 302.59 100% 50%;\n --s: 27.294 100% 50%;\n --a: 72 98.425% 50.196%;\n --n: 238.42 43.182% 17.255%;\n --b1: 0 0% 98.039%;\n --in: 209.85 91.628% 57.843%;\n --su: 148.87 49.533% 58.039%;\n --wa: 52.574 92.661% 57.255%;\n --er: 0.78261 100% 45.098%;\n --rounded-box: 1.25rem;\n --rounded-btn: 1rem;\n --rounded-badge: 1rem\n}\n[data-theme=lemonade] {\n color-scheme: light;\n --pf: 88.8 96.154% 24.471%;\n --sf: 60 80.952% 43.765%;\n --af: 62.553 79.661% 70.745%;\n --nf: 238.42 43.182% 13.804%;\n --b2: 0 0% 90%;\n --b3: 0 0% 81%;\n --bc: 0 0% 20%;\n --pc: 88.8 100% 86.118%;\n --sc: 60 100% 10.941%;\n --ac: 62.553 100% 17.686%;\n --nc: 238.42 99.052% 83.451%;\n --inc: 191.61 79.118% 16.902%;\n --suc: 74.458 100% 15.725%;\n --wac: 50.182 100% 15.059%;\n --erc: 0.98361 100% 16.588%;\n --rounded-box: 1rem;\n --rounded-btn: 0.5rem;\n --rounded-badge: 1.9rem;\n --animation-btn: 0.25s;\n --animation-input: .2s;\n --btn-text-case: uppercase;\n --btn-focus-scale: 0.95;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: 0.5rem;\n --p: 88.8 96.154% 30.588%;\n --s: 60 80.952% 54.706%;\n --a: 62.553 79.661% 88.431%;\n --n: 238.42 43.182% 17.255%;\n --b1: 0 0% 100%;\n --in: 191.61 39.241% 84.51%;\n --su: 74.458 76.147% 78.627%;\n --wa: 50.182 87.302% 75.294%;\n --er: 0.98361 70.115% 82.941%\n}\n[data-theme=night] {\n color-scheme: dark;\n --pf: 198.44 93.204% 47.686%;\n --sf: 234.45 89.474% 59.137%;\n --af: 328.85 85.621% 56%;\n --b2: 222.22 47.368% 10.059%;\n --b3: 222.22 47.368% 9.0529%;\n --bc: 222.22 65.563% 82.235%;\n --pc: 198.44 100% 11.922%;\n --sc: 234.45 100% 14.784%;\n --ac: 328.85 100% 14%;\n --nc: 217.24 75.772% 83.49%;\n --inc: 198.46 100% 9.6078%;\n --suc: 172.46 100% 10.078%;\n --wac: 40.61 100% 12.706%;\n --erc: 350.94 100% 14.235%;\n --rounded-box: 1rem;\n --rounded-btn: 0.5rem;\n --rounded-badge: 1.9rem;\n --animation-btn: 0.25s;\n --animation-input: .2s;\n --btn-text-case: uppercase;\n --btn-focus-scale: 0.95;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: 0.5rem;\n --p: 198.44 93.204% 59.608%;\n --s: 234.45 89.474% 73.922%;\n --a: 328.85 85.621% 70%;\n --n: 217.24 32.584% 17.451%;\n --nf: 217.06 30.357% 21.961%;\n --b1: 222.22 47.368% 11.176%;\n --in: 198.46 90.204% 48.039%;\n --su: 172.46 66.008% 50.392%;\n --wa: 40.61 88.172% 63.529%;\n --er: 350.94 94.558% 71.176%\n}\n[data-theme=coffee] {\n color-scheme: dark;\n --pf: 29.583 66.667% 46.118%;\n --sf: 182.4 24.752% 15.843%;\n --af: 194.19 74.4% 19.608%;\n --nf: 300 20% 4.7059%;\n --b2: 306 18.519% 9.5294%;\n --b3: 306 18.519% 8.5765%;\n --pc: 29.583 100% 11.529%;\n --sc: 182.4 67.237% 83.961%;\n --ac: 194.19 100% 84.902%;\n --nc: 300 13.75% 81.176%;\n --inc: 171.15 100% 13.451%;\n --suc: 92.5 100% 12.471%;\n --wac: 43.125 100% 13.725%;\n --erc: 9.7561 100% 14.941%;\n --rounded-box: 1rem;\n --rounded-btn: 0.5rem;\n --rounded-badge: 1.9rem;\n --animation-btn: 0.25s;\n --animation-input: .2s;\n --btn-text-case: uppercase;\n --btn-focus-scale: 0.95;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: 0.5rem;\n --p: 29.583 66.667% 57.647%;\n --s: 182.4 24.752% 19.804%;\n --a: 194.19 74.4% 24.51%;\n --n: 300 20% 5.8824%;\n --b1: 306 18.519% 10.588%;\n --bc: 36.667 8.3333% 42.353%;\n --in: 171.15 36.527% 67.255%;\n --su: 92.5 25% 62.353%;\n --wa: 43.125 100% 68.627%;\n --er: 9.7561 95.349% 74.706%\n}\n[data-theme=winter] {\n color-scheme: light;\n --pf: 211.79 100% 40.627%;\n --sf: 246.92 47.273% 34.51%;\n --af: 310.41 49.388% 41.569%;\n --nf: 217.02 92.157% 8%;\n --pc: 211.79 100% 90.157%;\n --sc: 246.92 100% 88.627%;\n --ac: 310.41 100% 90.392%;\n --nc: 217.02 100% 82%;\n --inc: 191.54 100% 15.608%;\n --suc: 181.5 100% 13.255%;\n --wac: 32.308 100% 16.706%;\n --erc: 0 100% 14.431%;\n --rounded-box: 1rem;\n --rounded-btn: 0.5rem;\n --rounded-badge: 1.9rem;\n --animation-btn: 0.25s;\n --animation-input: .2s;\n --btn-text-case: uppercase;\n --btn-focus-scale: 0.95;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: 0.5rem;\n --p: 211.79 100% 50.784%;\n --s: 246.92 47.273% 43.137%;\n --a: 310.41 49.388% 51.961%;\n --n: 217.02 92.157% 10%;\n --b1: 0 0% 100%;\n --b2: 216.92 100% 97.451%;\n --b3: 218.82 43.59% 92.353%;\n --bc: 214.29 30.061% 31.961%;\n --in: 191.54 92.857% 78.039%;\n --su: 181.5 46.512% 66.275%;\n --wa: 32.308 61.905% 83.529%;\n --er: 0 63.38% 72.157%\n}\n*, ::before, ::after {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: \n}\n::backdrop {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: \n}\n.container {\n width: 100%\n}\n@media (min-width: 640px) {\n .container {\n max-width: 640px\n }\n}\n@media (min-width: 768px) {\n .container {\n max-width: 768px\n }\n}\n@media (min-width: 1024px) {\n .container {\n max-width: 1024px\n }\n}\n@media (min-width: 1280px) {\n .container {\n max-width: 1280px\n }\n}\n@media (min-width: 1536px) {\n .container {\n max-width: 1536px\n }\n}\n@keyframes spin {\n from {\n transform: rotate(0deg)\n }\n to {\n transform: rotate(360deg)\n }\n}\n.divider {\n display: flex;\n flex-direction: row;\n align-items: center;\n align-self: stretch;\n margin-top: 1rem;\n margin-bottom: 1rem;\n height: 1rem;\n white-space: nowrap\n}\n.divider:before,\n .divider:after {\n content: "";\n flex-grow: 1;\n height: 0.125rem;\n width: 100%\n}\n.form-control {\n display: flex;\n flex-direction: column\n}\n.label {\n display: flex;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n align-items: center;\n justify-content: space-between;\n padding-left: 0.25rem;\n padding-right: 0.25rem;\n padding-top: 0.5rem;\n padding-bottom: 0.5rem\n}\n.input-group > *,\n .input-group > .input,\n .input-group > .textarea,\n .input-group > .select {\n border-radius: 0px\n}\n.kbd {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n border-width: 1px;\n border-color: hsl(var(--bc) / var(--tw-border-opacity));\n --tw-border-opacity: 0.2;\n --tw-bg-opacity: 1;\n background-color: hsl(var(--b2, var(--b1)) / var(--tw-bg-opacity));\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n border-radius: var(--rounded-btn, 0.5rem);\n border-bottom-width: 2px;\n min-height: 2.2em;\n min-width: 2.2em\n}\n.menu > :where(li.disabled > *:not(ul):focus) {\n cursor: auto\n}\n.select {\n display: inline-flex;\n flex-shrink: 0;\n cursor: pointer;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n height: 3rem;\n padding-left: 1rem;\n padding-right: 2.5rem;\n font-size: 0.875rem;\n line-height: 1.25rem;\n line-height: 2;\n min-height: 3rem;\n border-width: 1px;\n border-color: hsl(var(--bc) / var(--tw-border-opacity));\n --tw-border-opacity: 0;\n --tw-bg-opacity: 1;\n background-color: hsl(var(--b1) / var(--tw-bg-opacity));\n font-weight: 600;\n border-radius: var(--rounded-btn, 0.5rem);\n background-image: linear-gradient(45deg, transparent 50%, currentColor 50%), linear-gradient(135deg, currentColor 50%, transparent 50%);\n background-position: calc(100% - 20px) calc(1px + 50%), calc(100% - 16px) calc(1px + 50%);\n background-size: 4px 4px, 4px 4px;\n background-repeat: no-repeat\n}\n.select[multiple] {\n height: auto\n}\n.btm-nav>*.disabled,\n .btm-nav>*.disabled:hover,\n .btm-nav>*[disabled],\n .btm-nav>*[disabled]:hover {\n pointer-events: none;\n --tw-border-opacity: 0;\n background-color: hsl(var(--n) / var(--tw-bg-opacity));\n --tw-bg-opacity: 0.1;\n color: hsl(var(--bc) / var(--tw-text-opacity));\n --tw-text-opacity: 0.2\n}\n.btm-nav>* .label {\n font-size: 1rem;\n line-height: 1.5rem\n}\n@keyframes button-pop {\n 0% {\n transform: scale(var(--btn-focus-scale, 0.95))\n }\n 40% {\n transform: scale(1.02)\n }\n 100% {\n transform: scale(1)\n }\n}\n@keyframes checkmark {\n 0% {\n background-position-y: 5px\n }\n 50% {\n background-position-y: -2px\n }\n 100% {\n background-position-y: 0\n }\n}\n.divider:before {\n background-color: hsl(var(--bc) / var(--tw-bg-opacity));\n --tw-bg-opacity: 0.1\n}\n.divider:after {\n background-color: hsl(var(--bc) / var(--tw-bg-opacity));\n --tw-bg-opacity: 0.1\n}\n.divider:not(:empty) {\n gap: 1rem\n}\n.label-text {\n font-size: 0.875rem;\n line-height: 1.25rem;\n --tw-text-opacity: 1;\n color: hsl(var(--bc) / var(--tw-text-opacity))\n}\n.label a:hover {\n --tw-text-opacity: 1;\n color: hsl(var(--bc) / var(--tw-text-opacity))\n}\n.menu li.disabled > * {\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n color: hsl(var(--bc) / var(--tw-text-opacity));\n --tw-text-opacity: 0.2\n}\n.menu li.disabled > *:hover {\n background-color: transparent\n}\n@keyframes progress-loading {\n 50% {\n left: 107%\n }\n}\n@keyframes radiomark {\n 0% {\n box-shadow: 0 0 0 12px hsl(var(--b1)) inset, 0 0 0 12px hsl(var(--b1)) inset\n }\n 50% {\n box-shadow: 0 0 0 3px hsl(var(--b1)) inset, 0 0 0 3px hsl(var(--b1)) inset\n }\n 100% {\n box-shadow: 0 0 0 4px hsl(var(--b1)) inset, 0 0 0 4px hsl(var(--b1)) inset\n }\n}\n@keyframes rating-pop {\n 0% {\n transform: translateY(-0.125em)\n }\n 40% {\n transform: translateY(-0.125em)\n }\n 100% {\n transform: translateY(0)\n }\n}\n.select:focus {\n outline: 2px solid hsla(var(--bc) / 0.2);\n outline-offset: 2px\n}\n.select-disabled,\n .select[disabled] {\n cursor: not-allowed;\n --tw-border-opacity: 1;\n border-color: hsl(var(--b2, var(--b1)) / var(--tw-border-opacity));\n --tw-bg-opacity: 1;\n background-color: hsl(var(--b2, var(--b1)) / var(--tw-bg-opacity));\n --tw-text-opacity: 0.2\n}\n.select-disabled::-moz-placeholder, .select[disabled]::-moz-placeholder {\n color: hsl(var(--bc) / var(--tw-placeholder-opacity));\n --tw-placeholder-opacity: 0.2\n}\n.select-disabled::placeholder,\n .select[disabled]::placeholder {\n color: hsl(var(--bc) / var(--tw-placeholder-opacity));\n --tw-placeholder-opacity: 0.2\n}\n.select-multiple,\n .select[multiple],\n .select[size].select:not([size="1"]) {\n background-image: none;\n padding-right: 1rem\n}\n[dir="rtl"] .select {\n background-position: calc(0% + 12px) calc(1px + 50%), calc(0% + 16px) calc(1px + 50%)\n}\n@keyframes toast-pop {\n 0% {\n transform: scale(0.9);\n opacity: 0\n }\n 100% {\n transform: scale(1);\n opacity: 1\n }\n}\n.kbd-lg {\n padding-left: 1rem;\n padding-right: 1rem;\n font-size: 1.125rem;\n line-height: 1.75rem;\n min-height: 2.5em;\n min-width: 2.5em\n}\n.mx-auto {\n margin-left: auto;\n margin-right: auto\n}\n.mb-2 {\n margin-bottom: 0.5rem\n}\n.mt-6 {\n margin-top: 1.5rem\n}\n.mt-8 {\n margin-top: 2rem\n}\n.inline-block {\n display: inline-block\n}\n.flex {\n display: flex\n}\n.grid {\n display: grid\n}\n.min-h-screen {\n min-height: 100vh\n}\n.w-4\\/5 {\n width: 80%\n}\n.w-full {\n width: 100%\n}\n.max-w-6xl {\n max-width: 72rem\n}\n.max-w-xs {\n max-width: 20rem\n}\n.select-all {\n -webkit-user-select: all;\n -moz-user-select: all;\n user-select: all\n}\n.grid-cols-2 {\n grid-template-columns: repeat(2, minmax(0, 1fr))\n}\n.flex-col {\n flex-direction: column\n}\n.place-items-center {\n place-items: center\n}\n.items-center {\n align-items: center\n}\n.justify-center {\n justify-content: center\n}\n.gap-4 {\n gap: 1rem\n}\n.gap-8 {\n gap: 2rem\n}\n.rounded-xl {\n border-radius: 0.75rem\n}\n.bg-base-300 {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--b3, var(--b2)) / var(--tw-bg-opacity))\n}\n.bg-warning {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--wa) / var(--tw-bg-opacity))\n}\n.p-5 {\n padding: 1.25rem\n}\n.px-4 {\n padding-left: 1rem;\n padding-right: 1rem\n}\n.py-4 {\n padding-top: 1rem;\n padding-bottom: 1rem\n}\n.py-8 {\n padding-top: 2rem;\n padding-bottom: 2rem\n}\n.pb-4 {\n padding-bottom: 1rem\n}\n.font-sans {\n font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"\n}\n.text-4xl {\n font-size: 2.25rem;\n line-height: 2.5rem\n}\n.text-8xl {\n font-size: 6rem;\n line-height: 1\n}\n.font-bold {\n font-weight: 700\n}\n.text-warning-content {\n --tw-text-opacity: 1;\n color: hsl(var(--wac, var(--nc)) / var(--tw-text-opacity))\n}\n.shadow-2xl {\n --tw-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);\n --tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)\n}\n.filter {\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)\n}';!function(n,e){void 0===e&&(e={});var t=e.insertAt;if(n&&"undefined"!=typeof document){var r=document.head||document.getElementsByTagName("head")[0],a=document.createElement("style");a.type="text/css","top"===t&&r.firstChild?r.insertBefore(a,r.firstChild):r.appendChild(a),a.styleSheet?a.styleSheet.cssText=n:a.appendChild(document.createTextNode(n))}}(pn);var fn="data:image/svg+xml,%3c%3fxml version='1.0' encoding='utf-8'%3f%3e%3csvg viewBox='0 0 512 512' width='512' height='512' xmlns='http://www.w3.org/2000/svg'%3e %3cdefs%3e %3clinearGradient id='paint1_linear' x1='194.651' y1='8.81818' x2='236.076' y2='292.989' gradientUnits='userSpaceOnUse' gradientTransform='matrix(1.217517%2c 0%2c 0%2c 1.217517%2c -20.691875%2c 43.730177)'%3e %3cstop stop-color='%23FFEA83'/%3e %3cstop offset='0.0833' stop-color='%23FFDD35'/%3e %3cstop offset='1' stop-color='%23FFA800'/%3e %3c/linearGradient%3e %3c/defs%3e %3cg stroke-width='2.00' fill='none' stroke-linecap='butt'%3e %3cpath stroke='%23e46a54' vector-effect='non-scaling-stroke' d=' M 60.56 0.00 Q 59.95 0.60 57.56 2.31 Q 54.85 4.26 54.63 8.01 Q 54.17 16.00 54.14 24.00 Q 54.00 61.00 54.02 98.00 Q 54.02 106.05 61.25 109.21'/%3e %3cpath stroke='%23d65848' vector-effect='non-scaling-stroke' d=' M 61.25 109.21 L 54.25 109.79'/%3e %3cpath stroke='%23cf5144' vector-effect='non-scaling-stroke' d=' M 54.25 109.79 Q 43.89 109.55 10.25 109.50 Q 2.47 109.49 0.00 101.94'/%3e %3cpath stroke='%23dd604d' vector-effect='non-scaling-stroke' d=' M 101.78 0.04 Q 105.60 2.73 106.69 4.81 Q 108.48 8.25 108.35 13.47 Q 108.26 16.98 108.26 17.02 Q 108.42 57.16 108.03 97.30 Q 107.99 102.00 106.94 104.01 Q 105.22 107.31 101.18 108.52 Q 98.78 109.24 94.00 109.25 Q 77.63 109.28 61.25 109.21'/%3e %3cpath stroke='%23d65848' vector-effect='non-scaling-stroke' d=' M 140.56 0.00 Q 135.96 3.08 135.07 7.95 Q 135.00 8.36 135.00 17.06 Q 135.00 55.52 135.00 93.99 Q 135.00 100.69 135.13 101.49 Q 135.87 105.99 139.60 108.04 Q 142.25 109.49 149.15 109.47 Q 163.70 109.43 178.25 109.82 Q 187.27 110.06 196.25 109.21'/%3e %3cpath stroke='%23dd604d' vector-effect='non-scaling-stroke' d=' M 196.25 109.21 Q 277.75 109.28 359.25 109.25 Q 367.45 109.25 368.72 109.02 Q 374.83 107.91 376.45 102.33 Q 377.00 100.45 377.00 90.12 Q 377.01 52.31 377.18 14.50 Q 377.21 9.14 376.00 5.75 Q 374.58 1.76 369.80 0.03'/%3e %3cpath stroke='%23d65848' vector-effect='non-scaling-stroke' d=' M 410.58 0.02 Q 406.22 2.08 404.81 5.06 Q 403.63 7.58 403.70 11.94 Q 403.75 14.46 403.74 14.55 Q 403.58 56.88 403.97 99.21 Q 404.01 102.95 405.30 104.99 Q 408.04 109.31 413.75 109.50 Q 423.27 109.82 448.92 109.59 Q 448.96 109.59 455.96 109.73 Q 460.61 109.83 465.25 109.21'/%3e %3cpath stroke='%23dd604d' vector-effect='non-scaling-stroke' d=' M 465.25 109.21 Q 481.25 109.28 497.25 109.46 Q 501.39 109.50 504.75 108.75 Q 511.18 107.31 511.25 100.63 A 0.37 0.23 -3.7 0 1 511.59 100.39 Q 511.80 100.37 512.00 100.06'/%3e %3cpath stroke='%23dd604d' vector-effect='non-scaling-stroke' d=' M 512.00 142.31 Q 510.68 136.45 504.88 135.05 Q 501.54 134.25 494.75 134.25 Q 412.62 134.25 330.51 134.25'/%3e %3cpath stroke='%23d65848' vector-effect='non-scaling-stroke' d=' M 330.51 134.25 Q 308.59 133.86 286.67 133.97 Q 279.01 134.01 277.85 134.22 Q 272.21 135.25 270.61 140.34 Q 270.00 142.29 270.00 151.71 Q 270.00 192.98 270.00 234.25 Q 270.00 239.75 274.06 241.94 Q 277.88 243.99 282.25 244.04 Q 306.26 244.31 330.25 243.58'/%3e %3cpath stroke='%23dd604d' vector-effect='non-scaling-stroke' d=' M 330.25 243.58 Q 414.08 243.49 497.91 243.44 Q 504.10 243.44 506.34 242.46 Q 510.74 240.53 511.95 235.05'/%3e %3cpath stroke='%23dd604d' vector-effect='non-scaling-stroke' d=' M 512.00 276.31 Q 509.40 268.37 500.75 268.50 Q 487.54 268.70 464.56 268.34'/%3e %3cpath stroke='%23d65848' vector-effect='non-scaling-stroke' d=' M 464.56 268.34 Q 428.47 267.48 415.00 268.00 Q 406.04 268.35 404.18 275.30 Q 403.76 276.87 403.73 286.73 Q 403.60 326.73 403.97 366.72 Q 404.01 371.27 405.39 373.50 Q 408.10 377.89 414.25 377.94 Q 439.10 378.16 464.05 377.79'/%3e %3cpath stroke='%23dd604d' vector-effect='non-scaling-stroke' d=' M 464.05 377.79 Q 480.59 377.72 497.25 377.95 Q 501.72 378.01 504.75 377.25 Q 510.84 375.72 511.96 369.05'/%3e %3cpath stroke='%23dd604d' vector-effect='non-scaling-stroke' d=' M 512.00 409.81 Q 509.47 404.41 504.43 403.11 Q 503.00 402.75 495.04 402.75 Q 413.14 402.79 331.26 402.69'/%3e %3cpath stroke='%23d65848' vector-effect='non-scaling-stroke' d=' M 331.26 402.69 Q 300.85 402.28 280.00 402.50 Q 275.03 402.55 272.23 405.92 Q 270.42 408.09 270.18 412.06 Q 270.02 414.76 270.00 418.75 Q 269.82 460.54 270.22 502.33 Q 270.25 505.32 271.40 507.39 Q 272.76 509.85 274.73 511.97'/%3e %3cpath stroke='%23dd604d' vector-effect='non-scaling-stroke' d=' M 235.19 512.00 Q 239.41 509.52 240.44 507.69 Q 242.26 504.42 242.12 499.00 Q 242.01 495.06 242.01 495.00 Q 242.17 454.17 241.78 413.34 Q 241.74 410.03 240.92 408.30 Q 239.73 405.79 237.36 404.33 Q 235.56 403.24 232.80 402.96 Q 230.72 402.74 228.00 402.75 Q 196.04 402.83 61.25 402.71'/%3e %3cpath stroke='%23d65848' vector-effect='non-scaling-stroke' d=' M 61.25 402.71 L 54.00 402.21'/%3e %3cpath stroke='%23c8473e' vector-effect='non-scaling-stroke' d=' M 54.00 402.21 L 54.29 378.25'/%3e %3cpath stroke='%23d65848' vector-effect='non-scaling-stroke' d=' M 54.29 378.25 L 60.06 377.67'/%3e %3cpath stroke='%23dd604d' vector-effect='non-scaling-stroke' d=' M 60.06 377.67 Q 90.57 377.89 97.75 377.75 Q 103.86 377.63 106.47 373.31 Q 107.98 370.83 108.06 364.89 Q 108.56 323.80 108.06 282.71 Q 107.98 275.94 106.74 273.48 Q 104.27 268.60 97.50 268.50 Q 89.29 268.38 60.86 268.57'/%3e %3cpath stroke='%23d65848' vector-effect='non-scaling-stroke' d=' M 60.86 268.57 Q 57.40 267.66 54.00 267.96'/%3e %3cpath stroke='%23c8473e' vector-effect='non-scaling-stroke' d=' M 54.00 267.96 L 54.25 244.04'/%3e %3cpath stroke='%23d65848' vector-effect='non-scaling-stroke' d=' M 54.25 244.04 Q 57.30 244.32 60.27 243.49'/%3e %3cpath stroke='%23dd604d' vector-effect='non-scaling-stroke' d=' M 60.27 243.49 Q 143.60 243.51 226.98 243.50 Q 227.04 243.50 229.52 243.56 Q 232.96 243.64 235.56 242.81 Q 239.90 241.43 241.27 236.68 Q 242.00 234.18 242.00 229.25 Q 242.00 189.91 242.00 150.56 Q 242.00 142.47 241.00 140.06 Q 238.60 134.26 230.50 134.25 Q 126.36 134.18 61.00 134.46'/%3e %3cpath stroke='%23d65848' vector-effect='non-scaling-stroke' d=' M 61.00 134.46 L 54.25 133.95'/%3e %3cpath stroke='%23c8473e' vector-effect='non-scaling-stroke' d=' M 54.25 133.95 Q 53.63 121.63 54.25 109.79'/%3e %3cpath stroke='%23dd604d' vector-effect='non-scaling-stroke' d=' M 195.75 377.71 Q 280.88 377.78 366.00 377.69 Q 373.11 377.68 375.68 372.68 Q 377.00 370.12 377.00 363.11 Q 377.00 321.06 377.00 279.00 Q 377.00 272.10 371.36 269.56 Q 369.47 268.71 366.50 268.58 Q 364.40 268.49 361.50 268.50 Q 311.73 268.60 195.52 268.43'/%3e %3cpath stroke='%23d65848' vector-effect='non-scaling-stroke' d=' M 195.52 268.43 Q 172.50 267.68 149.50 267.82 Q 146.21 267.84 143.01 268.56 Q 136.66 269.99 135.30 275.20 Q 135.00 276.36 135.00 284.35 Q 135.00 322.83 135.00 361.31 Q 135.00 369.91 135.51 371.63 Q 137.35 377.81 145.50 378.00 Q 162.06 378.39 195.75 377.71'/%3e %3cpath stroke='%23e46a54' vector-effect='non-scaling-stroke' d=' M 195.52 268.43 Q 189.13 272.10 189.06 278.81 Q 188.92 291.75 188.88 360.75 Q 188.87 369.24 189.56 370.94 Q 191.40 375.45 195.75 377.71'/%3e %3cpath stroke='%23e46a54' vector-effect='non-scaling-stroke' d=' M 196.58 0.04 Q 189.47 2.59 189.31 9.56 Q 188.52 45.65 189.20 97.09 Q 189.26 101.96 190.47 104.19 Q 192.29 107.58 196.25 109.21'/%3e %3cpath stroke='%23e46a54' vector-effect='non-scaling-stroke' d=' M 464.56 0.00 Q 463.12 1.08 461.64 2.12 Q 458.71 4.16 458.37 7.74 Q 458.00 11.62 458.00 14.00 Q 458.00 52.97 458.00 91.94 Q 458.00 100.48 458.24 101.53 Q 459.47 106.81 465.25 109.21'/%3e %3cpath stroke='%23cf5144' vector-effect='non-scaling-stroke' d=' M 54.25 133.95 Q 31.43 133.86 8.50 134.34 Q 3.42 134.45 1.14 139.18 Q 0.09 141.34 0.33 138.95 Q 0.44 137.81 0.00 135.94'/%3e %3cpath stroke='%23e46a54' vector-effect='non-scaling-stroke' d=' M 61.00 134.46 Q 54.00 137.39 54.00 144.50 Q 54.00 188.50 54.00 232.50 Q 54.00 239.54 60.27 243.49'/%3e %3cpath stroke='%23cf5144' vector-effect='non-scaling-stroke' d=' M 54.25 244.04 Q 32.63 243.58 11.00 243.81 Q 2.43 243.89 -0.03 235.96'/%3e %3cpath stroke='%23e46a54' vector-effect='non-scaling-stroke' d=' M 330.51 134.25 Q 327.13 136.25 325.47 139.27 Q 324.26 141.47 324.22 145.95 Q 323.81 189.22 323.83 232.50 Q 323.83 238.65 328.06 241.69 Q 329.94 243.03 330.25 243.58'/%3e %3cpath stroke='%23cf5144' vector-effect='non-scaling-stroke' d=' M 54.00 267.96 Q 44.88 267.92 11.00 268.25 Q 3.04 268.33 0.00 275.19'/%3e %3cpath stroke='%23e46a54' vector-effect='non-scaling-stroke' d=' M 60.86 268.57 Q 55.24 271.24 54.50 276.00 Q 54.01 279.16 54.00 284.00 Q 53.93 334.80 54.22 366.15 Q 54.26 370.34 55.47 372.61 Q 57.07 375.60 60.06 377.67'/%3e %3cpath stroke='%23cf5144' vector-effect='non-scaling-stroke' d=' M 54.29 378.25 Q 38.15 377.81 22.00 378.08 Q 14.49 378.20 9.00 377.75 Q 2.39 377.21 0.00 370.94'/%3e %3cpath stroke='%23e46a54' vector-effect='non-scaling-stroke' d=' M 464.56 268.34 Q 459.07 271.68 458.05 277.15 Q 458.01 277.35 457.98 287.37 Q 457.84 327.07 458.22 366.77 Q 458.26 370.80 459.49 372.98 Q 461.08 375.79 464.05 377.79'/%3e %3cpath stroke='%23cf5144' vector-effect='non-scaling-stroke' d=' M 54.00 402.21 Q 34.13 402.72 14.25 402.49 Q 11.27 402.45 7.25 403.00 Q 4.01 403.44 2.18 405.80 Q 1.86 406.21 1.60 406.89 Q 0.25 410.40 0.00 405.94'/%3e %3cpath stroke='%23e46a54' vector-effect='non-scaling-stroke' d=' M 61.25 402.71 Q 55.61 405.34 54.32 410.63 Q 54.00 411.93 54.00 420.41 Q 53.99 458.83 53.83 497.25 Q 53.82 500.79 54.38 504.27 Q 54.94 507.72 57.44 509.56 Q 58.79 510.56 58.94 512.00'/%3e %3cpath stroke='%23e46a54' vector-effect='non-scaling-stroke' d=' M 331.26 402.69 Q 325.51 405.42 324.26 410.80 Q 324.00 411.92 324.00 420.73 Q 323.99 455.62 323.87 490.50 Q 323.85 497.39 324.53 504.25 Q 324.88 507.83 327.76 509.79 Q 328.14 510.05 328.41 510.51 Q 329.21 511.92 330.94 512.00'/%3e %3c/g%3e %3cpath fill='%23dd624e' d=' M 7.81 0.00 L 60.56 0.00 Q 59.95 0.60 57.56 2.31 Q 54.85 4.26 54.63 8.01 Q 54.17 16.00 54.14 24.00 Q 54.00 61.00 54.02 98.00 Q 54.02 106.05 61.25 109.21 L 54.25 109.79 Q 43.89 109.55 10.25 109.50 Q 2.47 109.49 0.00 101.94 L 0.00 7.94 Q 1.52 1.66 7.81 0.00 Z'/%3e %3cpath fill='%23eb7259' d=' M 60.56 0.00 L 101.78 0.04 Q 105.60 2.73 106.69 4.81 Q 108.48 8.25 108.35 13.47 Q 108.26 16.98 108.26 17.02 Q 108.42 57.16 108.03 97.30 Q 107.99 102.00 106.94 104.01 Q 105.22 107.31 101.18 108.52 Q 98.78 109.24 94.00 109.25 Q 77.63 109.28 61.25 109.21 Q 54.02 106.05 54.02 98.00 Q 54.00 61.00 54.14 24.00 Q 54.17 16.00 54.63 8.01 Q 54.85 4.26 57.56 2.31 Q 59.95 0.60 60.56 0.00 Z'/%3e %3cpath fill='%23ce4e41' d=' M 101.78 0.04 L 140.56 0.00 Q 135.96 3.08 135.07 7.95 Q 135.00 8.36 135.00 17.06 Q 135.00 55.52 135.00 93.99 Q 135.00 100.69 135.13 101.49 Q 135.87 105.99 139.60 108.04 Q 142.25 109.49 149.15 109.47 Q 163.70 109.43 178.25 109.82 Q 187.27 110.06 196.25 109.21 Q 277.75 109.28 359.25 109.25 Q 367.45 109.25 368.72 109.02 Q 374.83 107.91 376.45 102.33 Q 377.00 100.45 377.00 90.12 Q 377.01 52.31 377.18 14.50 Q 377.21 9.14 376.00 5.75 Q 374.58 1.76 369.80 0.03 L 410.58 0.02 Q 406.22 2.08 404.81 5.06 Q 403.63 7.58 403.70 11.94 Q 403.75 14.46 403.74 14.55 Q 403.58 56.88 403.97 99.21 Q 404.01 102.95 405.30 104.99 Q 408.04 109.31 413.75 109.50 Q 423.27 109.82 448.92 109.59 Q 448.96 109.59 455.96 109.73 Q 460.61 109.83 465.25 109.21 Q 481.25 109.28 497.25 109.46 Q 501.39 109.50 504.75 108.75 Q 511.18 107.31 511.25 100.63 A 0.37 0.23 -3.7 0 1 511.59 100.39 Q 511.80 100.37 512.00 100.06 L 512.00 142.31 Q 510.68 136.45 504.88 135.05 Q 501.54 134.25 494.75 134.25 Q 412.62 134.25 330.51 134.25 Q 308.59 133.86 286.67 133.97 Q 279.01 134.01 277.85 134.22 Q 272.21 135.25 270.61 140.34 Q 270.00 142.29 270.00 151.71 Q 270.00 192.98 270.00 234.25 Q 270.00 239.75 274.06 241.94 Q 277.88 243.99 282.25 244.04 Q 306.26 244.31 330.25 243.58 Q 414.08 243.49 497.91 243.44 Q 504.10 243.44 506.34 242.46 Q 510.74 240.53 511.95 235.05 L 512.00 276.31 Q 509.40 268.37 500.75 268.50 Q 487.54 268.70 464.56 268.34 Q 428.47 267.48 415.00 268.00 Q 406.04 268.35 404.18 275.30 Q 403.76 276.87 403.73 286.73 Q 403.60 326.73 403.97 366.72 Q 404.01 371.27 405.39 373.50 Q 408.10 377.89 414.25 377.94 Q 439.10 378.16 464.05 377.79 Q 480.59 377.72 497.25 377.95 Q 501.72 378.01 504.75 377.25 Q 510.84 375.72 511.96 369.05 L 512.00 409.81 Q 509.47 404.41 504.43 403.11 Q 503.00 402.75 495.04 402.75 Q 413.14 402.79 331.26 402.69 Q 300.85 402.28 280.00 402.50 Q 275.03 402.55 272.23 405.92 Q 270.42 408.09 270.18 412.06 Q 270.02 414.76 270.00 418.75 Q 269.82 460.54 270.22 502.33 Q 270.25 505.32 271.40 507.39 Q 272.76 509.85 274.73 511.97 L 235.19 512.00 Q 239.41 509.52 240.44 507.69 Q 242.26 504.42 242.12 499.00 Q 242.01 495.06 242.01 495.00 Q 242.17 454.17 241.78 413.34 Q 241.74 410.03 240.92 408.30 Q 239.73 405.79 237.36 404.33 Q 235.56 403.24 232.80 402.96 Q 230.72 402.74 228.00 402.75 Q 196.04 402.83 61.25 402.71 L 54.00 402.21 L 54.29 378.25 L 60.06 377.67 Q 90.57 377.89 97.75 377.75 Q 103.86 377.63 106.47 373.31 Q 107.98 370.83 108.06 364.89 Q 108.56 323.80 108.06 282.71 Q 107.98 275.94 106.74 273.48 Q 104.27 268.60 97.50 268.50 Q 89.29 268.38 60.86 268.57 Q 57.40 267.66 54.00 267.96 L 54.25 244.04 Q 57.30 244.32 60.27 243.49 Q 143.60 243.51 226.98 243.50 Q 227.04 243.50 229.52 243.56 Q 232.96 243.64 235.56 242.81 Q 239.90 241.43 241.27 236.68 Q 242.00 234.18 242.00 229.25 Q 242.00 189.91 242.00 150.56 Q 242.00 142.47 241.00 140.06 Q 238.60 134.26 230.50 134.25 Q 126.36 134.18 61.00 134.46 L 54.25 133.95 Q 53.63 121.63 54.25 109.79 L 61.25 109.21 Q 77.63 109.28 94.00 109.25 Q 98.78 109.24 101.18 108.52 Q 105.22 107.31 106.94 104.01 Q 107.99 102.00 108.03 97.30 Q 108.42 57.16 108.26 17.02 Q 108.26 16.98 108.35 13.47 Q 108.48 8.25 106.69 4.81 Q 105.60 2.73 101.78 0.04 Z M 195.75 377.71 Q 280.88 377.78 366.00 377.69 Q 373.11 377.68 375.68 372.68 Q 377.00 370.12 377.00 363.11 Q 377.00 321.06 377.00 279.00 Q 377.00 272.10 371.36 269.56 Q 369.47 268.71 366.50 268.58 Q 364.40 268.49 361.50 268.50 Q 311.73 268.60 195.52 268.43 Q 172.50 267.68 149.50 267.82 Q 146.21 267.84 143.01 268.56 Q 136.66 269.99 135.30 275.20 Q 135.00 276.36 135.00 284.35 Q 135.00 322.83 135.00 361.31 Q 135.00 369.91 135.51 371.63 Q 137.35 377.81 145.50 378.00 Q 162.06 378.39 195.75 377.71 Z'/%3e %3cpath fill='%23dd624e' d=' M 140.56 0.00 L 196.58 0.04 Q 189.47 2.59 189.31 9.56 Q 188.52 45.65 189.20 97.09 Q 189.26 101.96 190.47 104.19 Q 192.29 107.58 196.25 109.21 Q 187.27 110.06 178.25 109.82 Q 163.70 109.43 149.15 109.47 Q 142.25 109.49 139.60 108.04 Q 135.87 105.99 135.13 101.49 Q 135.00 100.69 135.00 93.99 Q 135.00 55.52 135.00 17.06 Q 135.00 8.36 135.07 7.95 Q 135.96 3.08 140.56 0.00 Z'/%3e %3cpath fill='%23eb7259' d=' M 196.58 0.04 L 369.80 0.03 Q 374.58 1.76 376.00 5.75 Q 377.21 9.14 377.18 14.50 Q 377.01 52.31 377.00 90.12 Q 377.00 100.45 376.45 102.33 Q 374.83 107.91 368.72 109.02 Q 367.45 109.25 359.25 109.25 Q 277.75 109.28 196.25 109.21 Q 192.29 107.58 190.47 104.19 Q 189.26 101.96 189.20 97.09 Q 188.52 45.65 189.31 9.56 Q 189.47 2.59 196.58 0.04 Z'/%3e %3cpath fill='%23dd624e' d=' M 410.58 0.02 L 464.56 0.00 Q 463.12 1.08 461.64 2.12 Q 458.71 4.16 458.37 7.74 Q 458.00 11.62 458.00 14.00 Q 458.00 52.97 458.00 91.94 Q 458.00 100.48 458.24 101.53 Q 459.47 106.81 465.25 109.21 Q 460.61 109.83 455.96 109.73 Q 448.96 109.59 448.92 109.59 Q 423.27 109.82 413.75 109.50 Q 408.04 109.31 405.30 104.99 Q 404.01 102.95 403.97 99.21 Q 403.58 56.88 403.74 14.55 Q 403.75 14.46 403.70 11.94 Q 403.63 7.58 404.81 5.06 Q 406.22 2.08 410.58 0.02 Z'/%3e %3cpath fill='%23eb7259' d=' M 464.56 0.00 L 503.06 0.00 Q 510.81 1.27 512.00 9.06 L 512.00 100.06 Q 511.80 100.37 511.59 100.39 A 0.37 0.23 -3.7 0 0 511.25 100.63 Q 511.18 107.31 504.75 108.75 Q 501.39 109.50 497.25 109.46 Q 481.25 109.28 465.25 109.21 Q 459.47 106.81 458.24 101.53 Q 458.00 100.48 458.00 91.94 Q 458.00 52.97 458.00 14.00 Q 458.00 11.62 458.37 7.74 Q 458.71 4.16 461.64 2.12 Q 463.12 1.08 464.56 0.00 Z'/%3e %3cpath fill='%23c1403a' d=' M 0.00 101.94 Q 2.47 109.49 10.25 109.50 Q 43.89 109.55 54.25 109.79 Q 53.63 121.63 54.25 133.95 Q 31.43 133.86 8.50 134.34 Q 3.42 134.45 1.14 139.18 Q 0.09 141.34 0.33 138.95 Q 0.44 137.81 0.00 135.94 L 0.00 101.94 Z'/%3e %3cpath fill='%23dd624e' d=' M 54.25 133.95 L 61.00 134.46 Q 54.00 137.39 54.00 144.50 Q 54.00 188.50 54.00 232.50 Q 54.00 239.54 60.27 243.49 Q 57.30 244.32 54.25 244.04 Q 32.63 243.58 11.00 243.81 Q 2.43 243.89 -0.03 235.96 L 0.00 135.94 Q 0.44 137.81 0.33 138.95 Q 0.09 141.34 1.14 139.18 Q 3.42 134.45 8.50 134.34 Q 31.43 133.86 54.25 133.95 Z'/%3e %3cpath fill='%23dd624e' d=' M 330.51 134.25 Q 327.13 136.25 325.47 139.27 Q 324.26 141.47 324.22 145.95 Q 323.81 189.22 323.83 232.50 Q 323.83 238.65 328.06 241.69 Q 329.94 243.03 330.25 243.58 Q 306.26 244.31 282.25 244.04 Q 277.88 243.99 274.06 241.94 Q 270.00 239.75 270.00 234.25 Q 270.00 192.98 270.00 151.71 Q 270.00 142.29 270.61 140.34 Q 272.21 135.25 277.85 134.22 Q 279.01 134.01 286.67 133.97 Q 308.59 133.86 330.51 134.25 Z'/%3e %3cpath fill='%23eb7259' d=' M 60.27 243.49 Q 54.00 239.54 54.00 232.50 Q 54.00 188.50 54.00 144.50 Q 54.00 137.39 61.00 134.46 Q 126.36 134.18 230.50 134.25 Q 238.60 134.26 241.00 140.06 Q 242.00 142.47 242.00 150.56 Q 242.00 189.91 242.00 229.25 Q 242.00 234.18 241.27 236.68 Q 239.90 241.43 235.56 242.81 Q 232.96 243.64 229.52 243.56 Q 227.04 243.50 226.98 243.50 Q 143.60 243.51 60.27 243.49 Z'/%3e %3cpath fill='%23eb7259' d=' M 512.00 142.31 L 511.95 235.05 Q 510.74 240.53 506.34 242.46 Q 504.10 243.44 497.91 243.44 Q 414.08 243.49 330.25 243.58 Q 329.94 243.03 328.06 241.69 Q 323.83 238.65 323.83 232.50 Q 323.81 189.22 324.22 145.95 Q 324.26 141.47 325.47 139.27 Q 327.13 136.25 330.51 134.25 Q 412.62 134.25 494.75 134.25 Q 501.54 134.25 504.88 135.05 Q 510.68 136.45 512.00 142.31 Z'/%3e %3cpath fill='%23c1403a' d=' M -0.03 235.96 Q 2.43 243.89 11.00 243.81 Q 32.63 243.58 54.25 244.04 L 54.00 267.96 Q 44.88 267.92 11.00 268.25 Q 3.04 268.33 0.00 275.19 L -0.03 235.96 Z'/%3e %3cpath fill='%23dd624e' d=' M 60.86 268.57 Q 55.24 271.24 54.50 276.00 Q 54.01 279.16 54.00 284.00 Q 53.93 334.80 54.22 366.15 Q 54.26 370.34 55.47 372.61 Q 57.07 375.60 60.06 377.67 L 54.29 378.25 Q 38.15 377.81 22.00 378.08 Q 14.49 378.20 9.00 377.75 Q 2.39 377.21 0.00 370.94 L 0.00 275.19 Q 3.04 268.33 11.00 268.25 Q 44.88 267.92 54.00 267.96 Q 57.40 267.66 60.86 268.57 Z'/%3e %3cpath fill='%23dd624e' d=' M 195.52 268.43 Q 189.13 272.10 189.06 278.81 Q 188.92 291.75 188.88 360.75 Q 188.87 369.24 189.56 370.94 Q 191.40 375.45 195.75 377.71 Q 162.06 378.39 145.50 378.00 Q 137.35 377.81 135.51 371.63 Q 135.00 369.91 135.00 361.31 Q 135.00 322.83 135.00 284.35 Q 135.00 276.36 135.30 275.20 Q 136.66 269.99 143.01 268.56 Q 146.21 267.84 149.50 267.82 Q 172.50 267.68 195.52 268.43 Z'/%3e %3cpath fill='%23dd624e' d=' M 464.56 268.34 Q 459.07 271.68 458.05 277.15 Q 458.01 277.35 457.98 287.37 Q 457.84 327.07 458.22 366.77 Q 458.26 370.80 459.49 372.98 Q 461.08 375.79 464.05 377.79 Q 439.10 378.16 414.25 377.94 Q 408.10 377.89 405.39 373.50 Q 404.01 371.27 403.97 366.72 Q 403.60 326.73 403.73 286.73 Q 403.76 276.87 404.18 275.30 Q 406.04 268.35 415.00 268.00 Q 428.47 267.48 464.56 268.34 Z'/%3e %3cpath fill='%23eb7259' d=' M 60.86 268.57 Q 89.29 268.38 97.50 268.50 Q 104.27 268.60 106.74 273.48 Q 107.98 275.94 108.06 282.71 Q 108.56 323.80 108.06 364.89 Q 107.98 370.83 106.47 373.31 Q 103.86 377.63 97.75 377.75 Q 90.57 377.89 60.06 377.67 Q 57.07 375.60 55.47 372.61 Q 54.26 370.34 54.22 366.15 Q 53.93 334.80 54.00 284.00 Q 54.01 279.16 54.50 276.00 Q 55.24 271.24 60.86 268.57 Z'/%3e %3cpath fill='%23eb7259' d=' M 195.52 268.43 Q 311.73 268.60 361.50 268.50 Q 364.40 268.49 366.50 268.58 Q 369.47 268.71 371.36 269.56 Q 377.00 272.10 377.00 279.00 Q 377.00 321.06 377.00 363.11 Q 377.00 370.12 375.68 372.68 Q 373.11 377.68 366.00 377.69 Q 280.88 377.78 195.75 377.71 Q 191.40 375.45 189.56 370.94 Q 188.87 369.24 188.88 360.75 Q 188.92 291.75 189.06 278.81 Q 189.13 272.10 195.52 268.43 Z'/%3e %3cpath fill='%23eb7259' d=' M 464.56 268.34 Q 487.54 268.70 500.75 268.50 Q 509.40 268.37 512.00 276.31 L 511.96 369.05 Q 510.84 375.72 504.75 377.25 Q 501.72 378.01 497.25 377.95 Q 480.59 377.72 464.05 377.79 Q 461.08 375.79 459.49 372.98 Q 458.26 370.80 458.22 366.77 Q 457.84 327.07 457.98 287.37 Q 458.01 277.35 458.05 277.15 Q 459.07 271.68 464.56 268.34 Z'/%3e %3cpath fill='%23c1403a' d=' M 0.00 370.94 Q 2.39 377.21 9.00 377.75 Q 14.49 378.20 22.00 378.08 Q 38.15 377.81 54.29 378.25 L 54.00 402.21 Q 34.13 402.72 14.25 402.49 Q 11.27 402.45 7.25 403.00 Q 4.01 403.44 2.18 405.80 Q 1.86 406.21 1.60 406.89 Q 0.25 410.40 0.00 405.94 L 0.00 370.94 Z'/%3e %3cpath fill='%23dd624e' d=' M 54.00 402.21 L 61.25 402.71 Q 55.61 405.34 54.32 410.63 Q 54.00 411.93 54.00 420.41 Q 53.99 458.83 53.83 497.25 Q 53.82 500.79 54.38 504.27 Q 54.94 507.72 57.44 509.56 Q 58.79 510.56 58.94 512.00 L 7.94 512.00 Q 1.62 510.46 0.00 504.19 L 0.00 405.94 Q 0.25 410.40 1.60 406.89 Q 1.86 406.21 2.18 405.80 Q 4.01 403.44 7.25 403.00 Q 11.27 402.45 14.25 402.49 Q 34.13 402.72 54.00 402.21 Z'/%3e %3cpath fill='%23dd624e' d=' M 331.26 402.69 Q 325.51 405.42 324.26 410.80 Q 324.00 411.92 324.00 420.73 Q 323.99 455.62 323.87 490.50 Q 323.85 497.39 324.53 504.25 Q 324.88 507.83 327.76 509.79 Q 328.14 510.05 328.41 510.51 Q 329.21 511.92 330.94 512.00 L 274.73 511.97 Q 272.76 509.85 271.40 507.39 Q 270.25 505.32 270.22 502.33 Q 269.82 460.54 270.00 418.75 Q 270.02 414.76 270.18 412.06 Q 270.42 408.09 272.23 405.92 Q 275.03 402.55 280.00 402.50 Q 300.85 402.28 331.26 402.69 Z'/%3e %3cpath fill='%23eb7259' d=' M 61.25 402.71 Q 196.04 402.83 228.00 402.75 Q 230.72 402.74 232.80 402.96 Q 235.56 403.24 237.36 404.33 Q 239.73 405.79 240.92 408.30 Q 241.74 410.03 241.78 413.34 Q 242.17 454.17 242.01 495.00 Q 242.01 495.06 242.12 499.00 Q 242.26 504.42 240.44 507.69 Q 239.41 509.52 235.19 512.00 L 58.94 512.00 Q 58.79 510.56 57.44 509.56 Q 54.94 507.72 54.38 504.27 Q 53.82 500.79 53.83 497.25 Q 53.99 458.83 54.00 420.41 Q 54.00 411.93 54.32 410.63 Q 55.61 405.34 61.25 402.71 Z'/%3e %3cpath fill='%23eb7259' d=' M 331.26 402.69 Q 413.14 402.79 495.04 402.75 Q 503.00 402.75 504.43 403.11 Q 509.47 404.41 512.00 409.81 L 512.00 503.06 Q 510.73 510.82 502.94 512.00 L 330.94 512.00 Q 329.21 511.92 328.41 510.51 Q 328.14 510.05 327.76 509.79 Q 324.88 507.83 324.53 504.25 Q 323.85 497.39 323.87 490.50 Q 323.99 455.62 324.00 420.73 Q 324.00 411.92 324.26 410.80 Q 325.51 405.42 331.26 402.69 Z'/%3e %3cpath d='M 335.997 45.647 L 170.215 78.132 C 167.491 78.665 165.473 80.974 165.309 83.746 L 155.111 255.98 C 154.871 260.037 158.597 263.186 162.556 262.272 L 208.712 251.62 C 213.031 250.625 216.933 254.428 216.045 258.771 L 202.332 325.921 C 201.409 330.44 205.653 334.304 210.066 332.964 L 238.574 324.303 C 242.994 322.961 247.24 326.836 246.305 331.359 L 224.513 436.836 C 223.149 443.434 231.925 447.032 235.585 441.375 L 238.03 437.597 L 373.118 168.005 C 375.38 163.49 371.48 158.344 366.522 159.301 L 319.012 168.47 C 314.547 169.331 310.749 165.173 312.009 160.805 L 343.018 53.309 C 344.279 48.933 340.467 44.772 335.997 45.647 Z' fill='url(%23paint1_linear)' style='opacity: 0.8%3b'/%3e%3c/svg%3e";const mn=Y('<div class="flex flex-col mx-auto"><header class="w-full flex justify-center py-4 bg-warning"><span class="text-4xl text-warning-content">⚠ Under construction</span></header><!#><!/>'),Qn=Y("<style>"),hn=Y('<div class="container max-w-6xl mx-auto mt-6 min-h-screen">');function gn(n){return[(()=>{const n=tn(Qn);return en(n,pn),n})(),(()=>{const e=tn(mn),t=e.firstChild.nextSibling,[r,a]=rn(t.nextSibling);return en(e,F(wn,{get children(){return n.children}}),r,a),e})()]}function wn(n){return(()=>{const e=tn(hn);return en(e,(()=>n.children)),e})()}const vn=Y('<img alt="Bâti logo">');function xn(n){return(()=>{const e=tn(vn);return W(e,"src",fn),k((t=>{const r=n.size,a=n.size;return r!==t._v$&&W(e,"height",t._v$=r),a!==t._v$2&&W(e,"width",t._v$2=a),t}),{_v$:void 0,_v$2:void 0}),e})()}const yn=Y('<select class="select w-full max-w-xs">'),kn=Y("<option>");function Cn(n){const[e,t]=function(n,...e){const t=new Set(e.length>1?e.flat():e[0]);if(i in n){const r=e.map((e=>new Proxy({get:t=>e.includes(t)?n[t]:void 0,has:t=>e.includes(t)&&t in n,keys:()=>e.filter((e=>e in n))},U)));return r.push(new Proxy({get:e=>t.has(e)?void 0:n[e],has:e=>!t.has(e)&&e in n,keys:()=>Object.keys(n).filter((n=>!t.has(n)))},U)),r}const r=Object.getOwnPropertyDescriptors(n);return e.push(Object.keys(r).filter((n=>!t.has(n)))),e.map((e=>{const t={};for(let a=0;a<e.length;a++){const o=e[a];o in n&&Object.defineProperty(t,o,r[o]?r[o]:{get:()=>n[o],set:()=>!0,enumerable:!0})}return t}))}(n,["options"]);return(()=>{const n=tn(yn);return nn(n,t,!1,!0),en(n,F(I,{get each(){return e.options},children:n=>(()=>{const e=tn(kn);return en(e,(()=>n.label)),k((t=>{const r=n.disabled,a=n.selected;return r!==t._v$&&(e.disabled=t._v$=r),a!==t._v$2&&(e.selected=t._v$2=a),t}),{_v$:void 0,_v$2:void 0}),k((()=>e.value=n.value)),e})()})),c.events&&!c.events.queued&&(queueMicrotask((()=>{const{completed:n,events:e}=c;for(e.queued=!1;e.length;){const[t,r]=e[0];if(!n.has(t))return;sn(r),e.shift()}})),c.events.queued=!0),n})()}const Mn=Y('<div class="form-control w-full max-w-xs"><label class="label"><span class="label-text"></span></label><!#><!/>');function Sn(n){return(()=>{const e=tn(Mn),t=e.firstChild,r=t.firstChild,a=t.nextSibling,[o,s]=rn(a.nextSibling);return en(r,(()=>n.label)),en(e,(()=>n.children),o,s),e})()}var An={framework:{label:"Framework",features:[{label:"SolidJS",value:"solid",selected:!0},{label:"React - Coming Soon",value:"react",disabled:!0},{label:"Vue - Coming Soon",value:"vue",disabled:!0}]},auth:{label:"Auth",features:[{label:"none"},{label:"AuthJS",value:"authjs",selected:!0},{label:"Auth0 - Coming Soon",value:"auth0",disabled:!0},{label:"Firebase - Coming Soon",value:"firebase",disabled:!0}]},rpc:{label:"RPC",features:[{label:"none"},{label:"Telefunc",value:"telefunc",selected:!0},{label:"tRPC - Coming Soon",value:"trpc",disabled:!0}]},server:{label:"Server",features:[{label:"none"},{label:"Hattip",value:"hattip",selected:!0},{label:"Express",value:"express"}]},uikit:{label:"UI",features:[{label:"none"},{label:"TailwindCSS",value:"tailwindcss",selected:!0},{label:"UnoCSS - Coming Soon",value:"unocss",disabled:!0},{label:"MUI - Coming Soon",value:"mui",disabled:!0}]},db:{label:"Database",features:[{label:"none",selected:!0},{label:"Prisma",value:"prisma"},{label:"EdgeDB - Coming Soon",value:"edgedb",disabled:!0}]},hosting:{disabled:!0,label:"Hosting",features:[{label:"Coming Soon",selected:!0},{label:"Vercel - Coming Soon",value:"vercel",disabled:!0},{label:"Netlify - Coming Soon",value:"netlify",disabled:!0}]},analytics:{disabled:!0,label:"Analytics",features:[{label:"Coming Soon",selected:!0},{label:"Plausible.io - Coming Soon",value:"plausible-io",disabled:!0},{label:"Google Analytics - Coming Soon",value:"google-analytics",disabled:!0},{label:"Segment - Coming Soon",value:"segment",disabled:!0}]},error:{disabled:!0,label:"Error tracking",features:[{label:"Coming Soon",selected:!0},{label:"Sentry - Coming Soon",value:"sentry",disabled:!0},{label:"Logrocket - Coming Soon",value:"logrocket",disabled:!0}]}};const _n=Symbol("store-raw"),Ln=Symbol("store-node");function jn(n){let e=n[i];if(!e&&(Object.defineProperty(n,i,{value:e=new Proxy(n,Tn)}),!Array.isArray(n))){const t=Object.keys(n),r=Object.getOwnPropertyDescriptors(n);for(let a=0,o=t.length;a<o;a++){const o=t[a];r[o].get&&Object.defineProperty(n,o,{enumerable:r[o].enumerable,get:r[o].get.bind(e)})}}return e}function On(n){let e;return null!=n&&"object"==typeof n&&(n[i]||!(e=Object.getPrototypeOf(n))||e===Object.prototype||Array.isArray(n))}function $n(n,e=new Set){let t,r,a,o;if(t=null!=n&&n[_n])return t;if(!On(n)||e.has(n))return n;if(Array.isArray(n)){Object.isFrozen(n)?n=n.slice(0):e.add(n);for(let t=0,o=n.length;t<o;t++)a=n[t],(r=$n(a,e))!==a&&(n[t]=r)}else{Object.isFrozen(n)?n=Object.assign({},n):e.add(n);const t=Object.keys(n),s=Object.getOwnPropertyDescriptors(n);for(let c=0,i=t.length;c<i;c++)o=t[c],s[o].get||(a=n[o],(r=$n(a,e))!==a&&(n[o]=r))}return n}function Pn(n){let e=n[Ln];return e||Object.defineProperty(n,Ln,{value:e=Object.create(null)}),e}function Nn(n,e,t){return n[e]||(n[e]=zn(t))}function En(n){if(S()){const e=Pn(n);(e._||(e._=zn()))()}}function zn(n){const[e,t]=y(n,{equals:!1,internal:!0});return e.$=t,e}const Tn={get(n,e,t){if(e===_n)return n;if(e===i)return t;if(e===l)return En(n),t;const r=Pn(n),a=r[e];let o=a?a():n[e];if(e===Ln||"__proto__"===e)return o;if(!a){const t=Object.getOwnPropertyDescriptor(n,e);!S()||"function"==typeof o&&!n.hasOwnProperty(e)||t&&t.get||(o=Nn(r,e,o)())}return On(o)?jn(o):o},has(n,e){return e===_n||e===i||e===l||e===Ln||"__proto__"===e||(this.get(n,e,n),e in n)},set:()=>!0,deleteProperty:()=>!0,ownKeys:function(n){return En(n),Reflect.ownKeys(n)},getOwnPropertyDescriptor:function(n,e){const t=Reflect.getOwnPropertyDescriptor(n,e);return t&&!t.get&&t.configurable&&e!==i&&e!==Ln?(delete t.value,delete t.writable,t.get=()=>n[i][e],t):t}};function Zn(n,e,t,r=!1){if(!r&&n[e]===t)return;const a=n[e],o=n.length;void 0===t?delete n[e]:n[e]=t;let s,c=Pn(n);if((s=Nn(c,e,a))&&s.$((()=>t)),Array.isArray(n)&&n.length!==o){for(let e=n.length;e<o;e++)(s=c[e])&&s.$();(s=Nn(c,"length",o))&&s.$(n.length)}(s=c._)&&s.$()}function Bn(n,e){const t=Object.keys(e);for(let r=0;r<t.length;r+=1){const a=t[r];Zn(n,a,e[a])}}function Dn(n,e,t=[]){let r,a=n;if(e.length>1){r=e.shift();const o=typeof r,s=Array.isArray(n);if(Array.isArray(r)){for(let a=0;a<r.length;a++)Dn(n,[r[a]].concat(e),t);return}if(s&&"function"===o){for(let a=0;a<n.length;a++)r(n[a],a)&&Dn(n,[a].concat(e),t);return}if(s&&"object"===o){const{from:a=0,to:o=n.length-1,by:s=1}=r;for(let r=a;r<=o;r+=s)Dn(n,[r].concat(e),t);return}if(e.length>1)return void Dn(n[r],e,[r].concat(t));a=n[r],t=[r].concat(t)}let o=e[0];"function"==typeof o&&(o=o(a,t),o===a)||void 0===r&&null==o||(o=$n(o),void 0===r||On(a)&&On(o)&&!Array.isArray(o)?Bn(a,o):Zn(n,r,o))}function Fn(...[n,e]){const t=$n(n||{}),r=Array.isArray(t);return[jn(t),function(...n){$((()=>{r&&1===n.length?function(n,e){if("function"==typeof e&&(e=e(n)),e=$n(e),Array.isArray(e)){if(n===e)return;let t=0,r=e.length;for(;t<r;t++){const r=e[t];n[t]!==r&&Zn(n,t,r)}Zn(n,"length",r)}else Bn(n,e)}(t,n[0]):Dn(t,n)}),!1)}]}new WeakMap;const Rn=Y('<div class="w-full items-center flex justify-center gap-8"><a class="inline-block" href="/"></a><h1 class="font-sans font-bold text-8xl pb-4">Bâti'),Un=Y('<div class="w-full items-center flex justify-center mt-8"><div class="w-4/5 flex flex-col bg-base-300 px-4 py-8 gap-4 rounded-xl shadow-2xl"><div class="grid place-items-center grid-cols-2"></div><div class="divider"></div><div class="px-4"><kbd class="kbd kbd-lg select-all">');function In(){const n=Object.keys(An),[e,t]=Fn(Object.assign({},...Object.entries(An).map((([n,e])=>({[n]:e.features.find((n=>n.selected))?.value})))));const r=C((()=>["pnpm","create","@batijs/app",...n.filter((n=>e[n])).map((n=>`--${e[n]}`)),"my-app"]));return[(()=>{const n=tn(Rn);return en(n.firstChild,F(xn,{size:96})),n})(),(()=>{const n=tn(Un),e=n.firstChild.firstChild,a=e.nextSibling.nextSibling.firstChild;return en(e,F(I,{get each(){return Object.entries(An)},children:([n,e])=>F(Sn,{get label(){return e.label},get children(){return F(Cn,{get disabled(){return e.disabled},onChange:e=>t(n,e.target.value||void 0),get options(){return e.features}})}})})),en(a,(()=>r().join(" "))),n})()]}!function(n,e,t){2===arguments.length&&(t=e,e={}),s(n,e)(bn(t))}("bati-web",(function(){return F(gn,{get children(){return F(In,{})}})}));
|
|
1
|
+
function cloneProps(props) {
|
|
2
|
+
const propKeys = Object.keys(props);
|
|
3
|
+
return propKeys.reduce((memo, k) => {
|
|
4
|
+
const prop = props[k];
|
|
5
|
+
memo[k] = Object.assign({}, prop);
|
|
6
|
+
if (isObject(prop.value) && !isFunction(prop.value) && !Array.isArray(prop.value)) memo[k].value = Object.assign({}, prop.value);
|
|
7
|
+
if (Array.isArray(prop.value)) memo[k].value = prop.value.slice(0);
|
|
8
|
+
return memo;
|
|
9
|
+
}, {});
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
function normalizePropDefs(props) {
|
|
13
|
+
if (!props) return {};
|
|
14
|
+
const propKeys = Object.keys(props);
|
|
15
|
+
return propKeys.reduce((memo, k) => {
|
|
16
|
+
const v = props[k];
|
|
17
|
+
memo[k] = !(isObject(v) && "value" in v) ? {
|
|
18
|
+
value: v
|
|
19
|
+
} : v;
|
|
20
|
+
memo[k].attribute || (memo[k].attribute = toAttribute(k));
|
|
21
|
+
memo[k].parse = "parse" in memo[k] ? memo[k].parse : typeof memo[k].value !== "string";
|
|
22
|
+
return memo;
|
|
23
|
+
}, {});
|
|
24
|
+
}
|
|
25
|
+
function propValues(props) {
|
|
26
|
+
const propKeys = Object.keys(props);
|
|
27
|
+
return propKeys.reduce((memo, k) => {
|
|
28
|
+
memo[k] = props[k].value;
|
|
29
|
+
return memo;
|
|
30
|
+
}, {});
|
|
31
|
+
}
|
|
32
|
+
function initializeProps(element, propDefinition) {
|
|
33
|
+
const props = cloneProps(propDefinition),
|
|
34
|
+
propKeys = Object.keys(propDefinition);
|
|
35
|
+
propKeys.forEach(key => {
|
|
36
|
+
const prop = props[key],
|
|
37
|
+
attr = element.getAttribute(prop.attribute),
|
|
38
|
+
value = element[key];
|
|
39
|
+
if (attr) prop.value = prop.parse ? parseAttributeValue(attr) : attr;
|
|
40
|
+
if (value != null) prop.value = Array.isArray(value) ? value.slice(0) : value;
|
|
41
|
+
prop.reflect && reflect(element, prop.attribute, prop.value);
|
|
42
|
+
Object.defineProperty(element, key, {
|
|
43
|
+
get() {
|
|
44
|
+
return prop.value;
|
|
45
|
+
},
|
|
46
|
+
|
|
47
|
+
set(val) {
|
|
48
|
+
const oldValue = prop.value;
|
|
49
|
+
prop.value = val;
|
|
50
|
+
prop.reflect && reflect(this, prop.attribute, prop.value);
|
|
51
|
+
|
|
52
|
+
for (let i = 0, l = this.__propertyChangedCallbacks.length; i < l; i++) {
|
|
53
|
+
this.__propertyChangedCallbacks[i](key, val, oldValue);
|
|
54
|
+
}
|
|
55
|
+
},
|
|
56
|
+
|
|
57
|
+
enumerable: true,
|
|
58
|
+
configurable: true
|
|
59
|
+
});
|
|
60
|
+
});
|
|
61
|
+
return props;
|
|
62
|
+
}
|
|
63
|
+
function parseAttributeValue(value) {
|
|
64
|
+
if (!value) return;
|
|
65
|
+
|
|
66
|
+
try {
|
|
67
|
+
return JSON.parse(value);
|
|
68
|
+
} catch (err) {
|
|
69
|
+
return value;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
function reflect(node, attribute, value) {
|
|
73
|
+
if (value == null || value === false) return node.removeAttribute(attribute);
|
|
74
|
+
let reflect = JSON.stringify(value);
|
|
75
|
+
node.__updating[attribute] = true;
|
|
76
|
+
if (reflect === "true") reflect = "";
|
|
77
|
+
node.setAttribute(attribute, reflect);
|
|
78
|
+
Promise.resolve().then(() => delete node.__updating[attribute]);
|
|
79
|
+
}
|
|
80
|
+
function toAttribute(propName) {
|
|
81
|
+
return propName.replace(/\.?([A-Z]+)/g, (x, y) => "-" + y.toLowerCase()).replace("_", "-").replace(/^-/, "");
|
|
82
|
+
}
|
|
83
|
+
function isObject(obj) {
|
|
84
|
+
return obj != null && (typeof obj === "object" || typeof obj === "function");
|
|
85
|
+
}
|
|
86
|
+
function isFunction(val) {
|
|
87
|
+
return Object.prototype.toString.call(val) === "[object Function]";
|
|
88
|
+
}
|
|
89
|
+
function isConstructor(f) {
|
|
90
|
+
return typeof f === "function" && f.toString().indexOf("class") === 0;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
let currentElement;
|
|
94
|
+
function createElementType(BaseElement, propDefinition) {
|
|
95
|
+
const propKeys = Object.keys(propDefinition);
|
|
96
|
+
return class CustomElement extends BaseElement {
|
|
97
|
+
static get observedAttributes() {
|
|
98
|
+
return propKeys.map(k => propDefinition[k].attribute);
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
constructor() {
|
|
102
|
+
super();
|
|
103
|
+
this.__initialized = false;
|
|
104
|
+
this.__released = false;
|
|
105
|
+
this.__releaseCallbacks = [];
|
|
106
|
+
this.__propertyChangedCallbacks = [];
|
|
107
|
+
this.__updating = {};
|
|
108
|
+
this.props = {};
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
connectedCallback() {
|
|
112
|
+
if (this.__initialized) return;
|
|
113
|
+
this.__releaseCallbacks = [];
|
|
114
|
+
this.__propertyChangedCallbacks = [];
|
|
115
|
+
this.__updating = {};
|
|
116
|
+
this.props = initializeProps(this, propDefinition);
|
|
117
|
+
const props = propValues(this.props),
|
|
118
|
+
ComponentType = this.Component,
|
|
119
|
+
outerElement = currentElement;
|
|
120
|
+
|
|
121
|
+
try {
|
|
122
|
+
currentElement = this;
|
|
123
|
+
this.__initialized = true;
|
|
124
|
+
if (isConstructor(ComponentType)) new ComponentType(props, {
|
|
125
|
+
element: this
|
|
126
|
+
});else ComponentType(props, {
|
|
127
|
+
element: this
|
|
128
|
+
});
|
|
129
|
+
} finally {
|
|
130
|
+
currentElement = outerElement;
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
async disconnectedCallback() {
|
|
135
|
+
// prevent premature releasing when element is only temporarely removed from DOM
|
|
136
|
+
await Promise.resolve();
|
|
137
|
+
if (this.isConnected) return;
|
|
138
|
+
this.__propertyChangedCallbacks.length = 0;
|
|
139
|
+
let callback = null;
|
|
140
|
+
|
|
141
|
+
while (callback = this.__releaseCallbacks.pop()) callback(this);
|
|
142
|
+
|
|
143
|
+
delete this.__initialized;
|
|
144
|
+
this.__released = true;
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
attributeChangedCallback(name, oldVal, newVal) {
|
|
148
|
+
if (!this.__initialized) return;
|
|
149
|
+
if (this.__updating[name]) return;
|
|
150
|
+
name = this.lookupProp(name);
|
|
151
|
+
|
|
152
|
+
if (name in propDefinition) {
|
|
153
|
+
if (newVal == null && !this[name]) return;
|
|
154
|
+
this[name] = propDefinition[name].parse ? parseAttributeValue(newVal) : newVal;
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
|
|
158
|
+
lookupProp(attrName) {
|
|
159
|
+
if (!propDefinition) return;
|
|
160
|
+
return propKeys.find(k => attrName === k || attrName === propDefinition[k].attribute);
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
get renderRoot() {
|
|
164
|
+
return this.shadowRoot || this.attachShadow({
|
|
165
|
+
mode: "open"
|
|
166
|
+
});
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
addReleaseCallback(fn) {
|
|
170
|
+
this.__releaseCallbacks.push(fn);
|
|
171
|
+
}
|
|
172
|
+
|
|
173
|
+
addPropertyChangedCallback(fn) {
|
|
174
|
+
this.__propertyChangedCallbacks.push(fn);
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
};
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
function register(tag, props = {}, options = {}) {
|
|
181
|
+
const {
|
|
182
|
+
BaseElement = HTMLElement,
|
|
183
|
+
extension
|
|
184
|
+
} = options;
|
|
185
|
+
return ComponentType => {
|
|
186
|
+
if (!tag) throw new Error("tag is required to register a Component");
|
|
187
|
+
let ElementType = customElements.get(tag);
|
|
188
|
+
|
|
189
|
+
if (ElementType) {
|
|
190
|
+
// Consider disabling this in a production mode
|
|
191
|
+
ElementType.prototype.Component = ComponentType;
|
|
192
|
+
return ElementType;
|
|
193
|
+
}
|
|
194
|
+
|
|
195
|
+
ElementType = createElementType(BaseElement, normalizePropDefs(props));
|
|
196
|
+
ElementType.prototype.Component = ComponentType;
|
|
197
|
+
ElementType.prototype.registeredTag = tag;
|
|
198
|
+
customElements.define(tag, ElementType, extension);
|
|
199
|
+
return ElementType;
|
|
200
|
+
};
|
|
201
|
+
}
|
|
202
|
+
|
|
203
|
+
const sharedConfig = {
|
|
204
|
+
context: undefined,
|
|
205
|
+
registry: undefined
|
|
206
|
+
};
|
|
207
|
+
|
|
208
|
+
const equalFn = (a, b) => a === b;
|
|
209
|
+
const $PROXY = Symbol("solid-proxy");
|
|
210
|
+
const $TRACK = Symbol("solid-track");
|
|
211
|
+
const signalOptions = {
|
|
212
|
+
equals: equalFn
|
|
213
|
+
};
|
|
214
|
+
let runEffects = runQueue;
|
|
215
|
+
const STALE = 1;
|
|
216
|
+
const PENDING = 2;
|
|
217
|
+
const UNOWNED = {
|
|
218
|
+
owned: null,
|
|
219
|
+
cleanups: null,
|
|
220
|
+
context: null,
|
|
221
|
+
owner: null
|
|
222
|
+
};
|
|
223
|
+
var Owner = null;
|
|
224
|
+
let Transition = null;
|
|
225
|
+
let Listener = null;
|
|
226
|
+
let Updates = null;
|
|
227
|
+
let Effects = null;
|
|
228
|
+
let ExecCount = 0;
|
|
229
|
+
function createRoot(fn, detachedOwner) {
|
|
230
|
+
const listener = Listener,
|
|
231
|
+
owner = Owner,
|
|
232
|
+
unowned = fn.length === 0,
|
|
233
|
+
root = unowned ? UNOWNED : {
|
|
234
|
+
owned: null,
|
|
235
|
+
cleanups: null,
|
|
236
|
+
context: null,
|
|
237
|
+
owner: detachedOwner === undefined ? owner : detachedOwner
|
|
238
|
+
},
|
|
239
|
+
updateFn = unowned ? fn : () => fn(() => untrack(() => cleanNode(root)));
|
|
240
|
+
Owner = root;
|
|
241
|
+
Listener = null;
|
|
242
|
+
try {
|
|
243
|
+
return runUpdates(updateFn, true);
|
|
244
|
+
} finally {
|
|
245
|
+
Listener = listener;
|
|
246
|
+
Owner = owner;
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
function createSignal(value, options) {
|
|
250
|
+
options = options ? Object.assign({}, signalOptions, options) : signalOptions;
|
|
251
|
+
const s = {
|
|
252
|
+
value,
|
|
253
|
+
observers: null,
|
|
254
|
+
observerSlots: null,
|
|
255
|
+
comparator: options.equals || undefined
|
|
256
|
+
};
|
|
257
|
+
const setter = value => {
|
|
258
|
+
if (typeof value === "function") {
|
|
259
|
+
value = value(s.value);
|
|
260
|
+
}
|
|
261
|
+
return writeSignal(s, value);
|
|
262
|
+
};
|
|
263
|
+
return [readSignal.bind(s), setter];
|
|
264
|
+
}
|
|
265
|
+
function createRenderEffect(fn, value, options) {
|
|
266
|
+
const c = createComputation(fn, value, false, STALE);
|
|
267
|
+
updateComputation(c);
|
|
268
|
+
}
|
|
269
|
+
function createMemo(fn, value, options) {
|
|
270
|
+
options = options ? Object.assign({}, signalOptions, options) : signalOptions;
|
|
271
|
+
const c = createComputation(fn, value, true, 0);
|
|
272
|
+
c.observers = null;
|
|
273
|
+
c.observerSlots = null;
|
|
274
|
+
c.comparator = options.equals || undefined;
|
|
275
|
+
updateComputation(c);
|
|
276
|
+
return readSignal.bind(c);
|
|
277
|
+
}
|
|
278
|
+
function batch(fn) {
|
|
279
|
+
return runUpdates(fn, false);
|
|
280
|
+
}
|
|
281
|
+
function untrack(fn) {
|
|
282
|
+
if (Listener === null) return fn();
|
|
283
|
+
const listener = Listener;
|
|
284
|
+
Listener = null;
|
|
285
|
+
try {
|
|
286
|
+
return fn();
|
|
287
|
+
} finally {
|
|
288
|
+
Listener = listener;
|
|
289
|
+
}
|
|
290
|
+
}
|
|
291
|
+
function onCleanup(fn) {
|
|
292
|
+
if (Owner === null) ;else if (Owner.cleanups === null) Owner.cleanups = [fn];else Owner.cleanups.push(fn);
|
|
293
|
+
return fn;
|
|
294
|
+
}
|
|
295
|
+
function getListener() {
|
|
296
|
+
return Listener;
|
|
297
|
+
}
|
|
298
|
+
function createContext(defaultValue, options) {
|
|
299
|
+
const id = Symbol("context");
|
|
300
|
+
return {
|
|
301
|
+
id,
|
|
302
|
+
Provider: createProvider(id),
|
|
303
|
+
defaultValue
|
|
304
|
+
};
|
|
305
|
+
}
|
|
306
|
+
function useContext(context) {
|
|
307
|
+
let ctx;
|
|
308
|
+
return (ctx = lookup(Owner, context.id)) !== undefined ? ctx : context.defaultValue;
|
|
309
|
+
}
|
|
310
|
+
function children(fn) {
|
|
311
|
+
const children = createMemo(fn);
|
|
312
|
+
const memo = createMemo(() => resolveChildren(children()));
|
|
313
|
+
memo.toArray = () => {
|
|
314
|
+
const c = memo();
|
|
315
|
+
return Array.isArray(c) ? c : c != null ? [c] : [];
|
|
316
|
+
};
|
|
317
|
+
return memo;
|
|
318
|
+
}
|
|
319
|
+
function readSignal() {
|
|
320
|
+
if (this.sources && (this.state)) {
|
|
321
|
+
if ((this.state) === STALE) updateComputation(this);else {
|
|
322
|
+
const updates = Updates;
|
|
323
|
+
Updates = null;
|
|
324
|
+
runUpdates(() => lookUpstream(this), false);
|
|
325
|
+
Updates = updates;
|
|
326
|
+
}
|
|
327
|
+
}
|
|
328
|
+
if (Listener) {
|
|
329
|
+
const sSlot = this.observers ? this.observers.length : 0;
|
|
330
|
+
if (!Listener.sources) {
|
|
331
|
+
Listener.sources = [this];
|
|
332
|
+
Listener.sourceSlots = [sSlot];
|
|
333
|
+
} else {
|
|
334
|
+
Listener.sources.push(this);
|
|
335
|
+
Listener.sourceSlots.push(sSlot);
|
|
336
|
+
}
|
|
337
|
+
if (!this.observers) {
|
|
338
|
+
this.observers = [Listener];
|
|
339
|
+
this.observerSlots = [Listener.sources.length - 1];
|
|
340
|
+
} else {
|
|
341
|
+
this.observers.push(Listener);
|
|
342
|
+
this.observerSlots.push(Listener.sources.length - 1);
|
|
343
|
+
}
|
|
344
|
+
}
|
|
345
|
+
return this.value;
|
|
346
|
+
}
|
|
347
|
+
function writeSignal(node, value, isComp) {
|
|
348
|
+
let current = node.value;
|
|
349
|
+
if (!node.comparator || !node.comparator(current, value)) {
|
|
350
|
+
node.value = value;
|
|
351
|
+
if (node.observers && node.observers.length) {
|
|
352
|
+
runUpdates(() => {
|
|
353
|
+
for (let i = 0; i < node.observers.length; i += 1) {
|
|
354
|
+
const o = node.observers[i];
|
|
355
|
+
const TransitionRunning = Transition && Transition.running;
|
|
356
|
+
if (TransitionRunning && Transition.disposed.has(o)) ;
|
|
357
|
+
if (TransitionRunning ? !o.tState : !o.state) {
|
|
358
|
+
if (o.pure) Updates.push(o);else Effects.push(o);
|
|
359
|
+
if (o.observers) markDownstream(o);
|
|
360
|
+
}
|
|
361
|
+
if (!TransitionRunning) o.state = STALE;
|
|
362
|
+
}
|
|
363
|
+
if (Updates.length > 10e5) {
|
|
364
|
+
Updates = [];
|
|
365
|
+
if (false) ;
|
|
366
|
+
throw new Error();
|
|
367
|
+
}
|
|
368
|
+
}, false);
|
|
369
|
+
}
|
|
370
|
+
}
|
|
371
|
+
return value;
|
|
372
|
+
}
|
|
373
|
+
function updateComputation(node) {
|
|
374
|
+
if (!node.fn) return;
|
|
375
|
+
cleanNode(node);
|
|
376
|
+
const owner = Owner,
|
|
377
|
+
listener = Listener,
|
|
378
|
+
time = ExecCount;
|
|
379
|
+
Listener = Owner = node;
|
|
380
|
+
runComputation(node, node.value, time);
|
|
381
|
+
Listener = listener;
|
|
382
|
+
Owner = owner;
|
|
383
|
+
}
|
|
384
|
+
function runComputation(node, value, time) {
|
|
385
|
+
let nextValue;
|
|
386
|
+
try {
|
|
387
|
+
nextValue = node.fn(value);
|
|
388
|
+
} catch (err) {
|
|
389
|
+
if (node.pure) {
|
|
390
|
+
{
|
|
391
|
+
node.state = STALE;
|
|
392
|
+
node.owned && node.owned.forEach(cleanNode);
|
|
393
|
+
node.owned = null;
|
|
394
|
+
}
|
|
395
|
+
}
|
|
396
|
+
node.updatedAt = time + 1;
|
|
397
|
+
return handleError(err);
|
|
398
|
+
}
|
|
399
|
+
if (!node.updatedAt || node.updatedAt <= time) {
|
|
400
|
+
if (node.updatedAt != null && "observers" in node) {
|
|
401
|
+
writeSignal(node, nextValue);
|
|
402
|
+
} else node.value = nextValue;
|
|
403
|
+
node.updatedAt = time;
|
|
404
|
+
}
|
|
405
|
+
}
|
|
406
|
+
function createComputation(fn, init, pure, state = STALE, options) {
|
|
407
|
+
const c = {
|
|
408
|
+
fn,
|
|
409
|
+
state: state,
|
|
410
|
+
updatedAt: null,
|
|
411
|
+
owned: null,
|
|
412
|
+
sources: null,
|
|
413
|
+
sourceSlots: null,
|
|
414
|
+
cleanups: null,
|
|
415
|
+
value: init,
|
|
416
|
+
owner: Owner,
|
|
417
|
+
context: null,
|
|
418
|
+
pure
|
|
419
|
+
};
|
|
420
|
+
if (Owner === null) ;else if (Owner !== UNOWNED) {
|
|
421
|
+
{
|
|
422
|
+
if (!Owner.owned) Owner.owned = [c];else Owner.owned.push(c);
|
|
423
|
+
}
|
|
424
|
+
}
|
|
425
|
+
return c;
|
|
426
|
+
}
|
|
427
|
+
function runTop(node) {
|
|
428
|
+
if ((node.state) === 0) return;
|
|
429
|
+
if ((node.state) === PENDING) return lookUpstream(node);
|
|
430
|
+
if (node.suspense && untrack(node.suspense.inFallback)) return node.suspense.effects.push(node);
|
|
431
|
+
const ancestors = [node];
|
|
432
|
+
while ((node = node.owner) && (!node.updatedAt || node.updatedAt < ExecCount)) {
|
|
433
|
+
if (node.state) ancestors.push(node);
|
|
434
|
+
}
|
|
435
|
+
for (let i = ancestors.length - 1; i >= 0; i--) {
|
|
436
|
+
node = ancestors[i];
|
|
437
|
+
if ((node.state) === STALE) {
|
|
438
|
+
updateComputation(node);
|
|
439
|
+
} else if ((node.state) === PENDING) {
|
|
440
|
+
const updates = Updates;
|
|
441
|
+
Updates = null;
|
|
442
|
+
runUpdates(() => lookUpstream(node, ancestors[0]), false);
|
|
443
|
+
Updates = updates;
|
|
444
|
+
}
|
|
445
|
+
}
|
|
446
|
+
}
|
|
447
|
+
function runUpdates(fn, init) {
|
|
448
|
+
if (Updates) return fn();
|
|
449
|
+
let wait = false;
|
|
450
|
+
if (!init) Updates = [];
|
|
451
|
+
if (Effects) wait = true;else Effects = [];
|
|
452
|
+
ExecCount++;
|
|
453
|
+
try {
|
|
454
|
+
const res = fn();
|
|
455
|
+
completeUpdates(wait);
|
|
456
|
+
return res;
|
|
457
|
+
} catch (err) {
|
|
458
|
+
if (!wait) Effects = null;
|
|
459
|
+
Updates = null;
|
|
460
|
+
handleError(err);
|
|
461
|
+
}
|
|
462
|
+
}
|
|
463
|
+
function completeUpdates(wait) {
|
|
464
|
+
if (Updates) {
|
|
465
|
+
runQueue(Updates);
|
|
466
|
+
Updates = null;
|
|
467
|
+
}
|
|
468
|
+
if (wait) return;
|
|
469
|
+
const e = Effects;
|
|
470
|
+
Effects = null;
|
|
471
|
+
if (e.length) runUpdates(() => runEffects(e), false);
|
|
472
|
+
}
|
|
473
|
+
function runQueue(queue) {
|
|
474
|
+
for (let i = 0; i < queue.length; i++) runTop(queue[i]);
|
|
475
|
+
}
|
|
476
|
+
function lookUpstream(node, ignore) {
|
|
477
|
+
node.state = 0;
|
|
478
|
+
for (let i = 0; i < node.sources.length; i += 1) {
|
|
479
|
+
const source = node.sources[i];
|
|
480
|
+
if (source.sources) {
|
|
481
|
+
const state = source.state;
|
|
482
|
+
if (state === STALE) {
|
|
483
|
+
if (source !== ignore && (!source.updatedAt || source.updatedAt < ExecCount)) runTop(source);
|
|
484
|
+
} else if (state === PENDING) lookUpstream(source, ignore);
|
|
485
|
+
}
|
|
486
|
+
}
|
|
487
|
+
}
|
|
488
|
+
function markDownstream(node) {
|
|
489
|
+
for (let i = 0; i < node.observers.length; i += 1) {
|
|
490
|
+
const o = node.observers[i];
|
|
491
|
+
if (!o.state) {
|
|
492
|
+
o.state = PENDING;
|
|
493
|
+
if (o.pure) Updates.push(o);else Effects.push(o);
|
|
494
|
+
o.observers && markDownstream(o);
|
|
495
|
+
}
|
|
496
|
+
}
|
|
497
|
+
}
|
|
498
|
+
function cleanNode(node) {
|
|
499
|
+
let i;
|
|
500
|
+
if (node.sources) {
|
|
501
|
+
while (node.sources.length) {
|
|
502
|
+
const source = node.sources.pop(),
|
|
503
|
+
index = node.sourceSlots.pop(),
|
|
504
|
+
obs = source.observers;
|
|
505
|
+
if (obs && obs.length) {
|
|
506
|
+
const n = obs.pop(),
|
|
507
|
+
s = source.observerSlots.pop();
|
|
508
|
+
if (index < obs.length) {
|
|
509
|
+
n.sourceSlots[s] = index;
|
|
510
|
+
obs[index] = n;
|
|
511
|
+
source.observerSlots[index] = s;
|
|
512
|
+
}
|
|
513
|
+
}
|
|
514
|
+
}
|
|
515
|
+
}
|
|
516
|
+
if (node.owned) {
|
|
517
|
+
for (i = node.owned.length - 1; i >= 0; i--) cleanNode(node.owned[i]);
|
|
518
|
+
node.owned = null;
|
|
519
|
+
}
|
|
520
|
+
if (node.cleanups) {
|
|
521
|
+
for (i = node.cleanups.length - 1; i >= 0; i--) node.cleanups[i]();
|
|
522
|
+
node.cleanups = null;
|
|
523
|
+
}
|
|
524
|
+
node.state = 0;
|
|
525
|
+
node.context = null;
|
|
526
|
+
}
|
|
527
|
+
function handleError(err) {
|
|
528
|
+
throw err;
|
|
529
|
+
}
|
|
530
|
+
function lookup(owner, key) {
|
|
531
|
+
return owner ? owner.context && owner.context[key] !== undefined ? owner.context[key] : lookup(owner.owner, key) : undefined;
|
|
532
|
+
}
|
|
533
|
+
function resolveChildren(children) {
|
|
534
|
+
if (typeof children === "function" && !children.length) return resolveChildren(children());
|
|
535
|
+
if (Array.isArray(children)) {
|
|
536
|
+
const results = [];
|
|
537
|
+
for (let i = 0; i < children.length; i++) {
|
|
538
|
+
const result = resolveChildren(children[i]);
|
|
539
|
+
Array.isArray(result) ? results.push.apply(results, result) : results.push(result);
|
|
540
|
+
}
|
|
541
|
+
return results;
|
|
542
|
+
}
|
|
543
|
+
return children;
|
|
544
|
+
}
|
|
545
|
+
function createProvider(id, options) {
|
|
546
|
+
return function provider(props) {
|
|
547
|
+
let res;
|
|
548
|
+
createRenderEffect(() => res = untrack(() => {
|
|
549
|
+
Owner.context = {
|
|
550
|
+
[id]: props.value
|
|
551
|
+
};
|
|
552
|
+
return children(() => props.children);
|
|
553
|
+
}), undefined);
|
|
554
|
+
return res;
|
|
555
|
+
};
|
|
556
|
+
}
|
|
557
|
+
|
|
558
|
+
const FALLBACK = Symbol("fallback");
|
|
559
|
+
function dispose(d) {
|
|
560
|
+
for (let i = 0; i < d.length; i++) d[i]();
|
|
561
|
+
}
|
|
562
|
+
function mapArray(list, mapFn, options = {}) {
|
|
563
|
+
let items = [],
|
|
564
|
+
mapped = [],
|
|
565
|
+
disposers = [],
|
|
566
|
+
len = 0,
|
|
567
|
+
indexes = mapFn.length > 1 ? [] : null;
|
|
568
|
+
onCleanup(() => dispose(disposers));
|
|
569
|
+
return () => {
|
|
570
|
+
let newItems = list() || [],
|
|
571
|
+
i,
|
|
572
|
+
j;
|
|
573
|
+
newItems[$TRACK];
|
|
574
|
+
return untrack(() => {
|
|
575
|
+
let newLen = newItems.length,
|
|
576
|
+
newIndices,
|
|
577
|
+
newIndicesNext,
|
|
578
|
+
temp,
|
|
579
|
+
tempdisposers,
|
|
580
|
+
tempIndexes,
|
|
581
|
+
start,
|
|
582
|
+
end,
|
|
583
|
+
newEnd,
|
|
584
|
+
item;
|
|
585
|
+
if (newLen === 0) {
|
|
586
|
+
if (len !== 0) {
|
|
587
|
+
dispose(disposers);
|
|
588
|
+
disposers = [];
|
|
589
|
+
items = [];
|
|
590
|
+
mapped = [];
|
|
591
|
+
len = 0;
|
|
592
|
+
indexes && (indexes = []);
|
|
593
|
+
}
|
|
594
|
+
if (options.fallback) {
|
|
595
|
+
items = [FALLBACK];
|
|
596
|
+
mapped[0] = createRoot(disposer => {
|
|
597
|
+
disposers[0] = disposer;
|
|
598
|
+
return options.fallback();
|
|
599
|
+
});
|
|
600
|
+
len = 1;
|
|
601
|
+
}
|
|
602
|
+
}
|
|
603
|
+
else if (len === 0) {
|
|
604
|
+
mapped = new Array(newLen);
|
|
605
|
+
for (j = 0; j < newLen; j++) {
|
|
606
|
+
items[j] = newItems[j];
|
|
607
|
+
mapped[j] = createRoot(mapper);
|
|
608
|
+
}
|
|
609
|
+
len = newLen;
|
|
610
|
+
} else {
|
|
611
|
+
temp = new Array(newLen);
|
|
612
|
+
tempdisposers = new Array(newLen);
|
|
613
|
+
indexes && (tempIndexes = new Array(newLen));
|
|
614
|
+
for (start = 0, end = Math.min(len, newLen); start < end && items[start] === newItems[start]; start++);
|
|
615
|
+
for (end = len - 1, newEnd = newLen - 1; end >= start && newEnd >= start && items[end] === newItems[newEnd]; end--, newEnd--) {
|
|
616
|
+
temp[newEnd] = mapped[end];
|
|
617
|
+
tempdisposers[newEnd] = disposers[end];
|
|
618
|
+
indexes && (tempIndexes[newEnd] = indexes[end]);
|
|
619
|
+
}
|
|
620
|
+
newIndices = new Map();
|
|
621
|
+
newIndicesNext = new Array(newEnd + 1);
|
|
622
|
+
for (j = newEnd; j >= start; j--) {
|
|
623
|
+
item = newItems[j];
|
|
624
|
+
i = newIndices.get(item);
|
|
625
|
+
newIndicesNext[j] = i === undefined ? -1 : i;
|
|
626
|
+
newIndices.set(item, j);
|
|
627
|
+
}
|
|
628
|
+
for (i = start; i <= end; i++) {
|
|
629
|
+
item = items[i];
|
|
630
|
+
j = newIndices.get(item);
|
|
631
|
+
if (j !== undefined && j !== -1) {
|
|
632
|
+
temp[j] = mapped[i];
|
|
633
|
+
tempdisposers[j] = disposers[i];
|
|
634
|
+
indexes && (tempIndexes[j] = indexes[i]);
|
|
635
|
+
j = newIndicesNext[j];
|
|
636
|
+
newIndices.set(item, j);
|
|
637
|
+
} else disposers[i]();
|
|
638
|
+
}
|
|
639
|
+
for (j = start; j < newLen; j++) {
|
|
640
|
+
if (j in temp) {
|
|
641
|
+
mapped[j] = temp[j];
|
|
642
|
+
disposers[j] = tempdisposers[j];
|
|
643
|
+
if (indexes) {
|
|
644
|
+
indexes[j] = tempIndexes[j];
|
|
645
|
+
indexes[j](j);
|
|
646
|
+
}
|
|
647
|
+
} else mapped[j] = createRoot(mapper);
|
|
648
|
+
}
|
|
649
|
+
mapped = mapped.slice(0, len = newLen);
|
|
650
|
+
items = newItems.slice(0);
|
|
651
|
+
}
|
|
652
|
+
return mapped;
|
|
653
|
+
});
|
|
654
|
+
function mapper(disposer) {
|
|
655
|
+
disposers[j] = disposer;
|
|
656
|
+
if (indexes) {
|
|
657
|
+
const [s, set] = createSignal(j);
|
|
658
|
+
indexes[j] = set;
|
|
659
|
+
return mapFn(newItems[j], s);
|
|
660
|
+
}
|
|
661
|
+
return mapFn(newItems[j]);
|
|
662
|
+
}
|
|
663
|
+
};
|
|
664
|
+
}
|
|
665
|
+
function createComponent(Comp, props) {
|
|
666
|
+
return untrack(() => Comp(props || {}));
|
|
667
|
+
}
|
|
668
|
+
function trueFn() {
|
|
669
|
+
return true;
|
|
670
|
+
}
|
|
671
|
+
const propTraps = {
|
|
672
|
+
get(_, property, receiver) {
|
|
673
|
+
if (property === $PROXY) return receiver;
|
|
674
|
+
return _.get(property);
|
|
675
|
+
},
|
|
676
|
+
has(_, property) {
|
|
677
|
+
if (property === $PROXY) return true;
|
|
678
|
+
return _.has(property);
|
|
679
|
+
},
|
|
680
|
+
set: trueFn,
|
|
681
|
+
deleteProperty: trueFn,
|
|
682
|
+
getOwnPropertyDescriptor(_, property) {
|
|
683
|
+
return {
|
|
684
|
+
configurable: true,
|
|
685
|
+
enumerable: true,
|
|
686
|
+
get() {
|
|
687
|
+
return _.get(property);
|
|
688
|
+
},
|
|
689
|
+
set: trueFn,
|
|
690
|
+
deleteProperty: trueFn
|
|
691
|
+
};
|
|
692
|
+
},
|
|
693
|
+
ownKeys(_) {
|
|
694
|
+
return _.keys();
|
|
695
|
+
}
|
|
696
|
+
};
|
|
697
|
+
function resolveSource(s) {
|
|
698
|
+
return !(s = typeof s === "function" ? s() : s) ? {} : s;
|
|
699
|
+
}
|
|
700
|
+
function resolveSources() {
|
|
701
|
+
for (let i = 0, length = this.length; i < length; ++i) {
|
|
702
|
+
const v = this[i]();
|
|
703
|
+
if (v !== undefined) return v;
|
|
704
|
+
}
|
|
705
|
+
}
|
|
706
|
+
function mergeProps(...sources) {
|
|
707
|
+
let proxy = false;
|
|
708
|
+
for (let i = 0; i < sources.length; i++) {
|
|
709
|
+
const s = sources[i];
|
|
710
|
+
proxy = proxy || !!s && $PROXY in s;
|
|
711
|
+
sources[i] = typeof s === "function" ? (proxy = true, createMemo(s)) : s;
|
|
712
|
+
}
|
|
713
|
+
if (proxy) {
|
|
714
|
+
return new Proxy({
|
|
715
|
+
get(property) {
|
|
716
|
+
for (let i = sources.length - 1; i >= 0; i--) {
|
|
717
|
+
const v = resolveSource(sources[i])[property];
|
|
718
|
+
if (v !== undefined) return v;
|
|
719
|
+
}
|
|
720
|
+
},
|
|
721
|
+
has(property) {
|
|
722
|
+
for (let i = sources.length - 1; i >= 0; i--) {
|
|
723
|
+
if (property in resolveSource(sources[i])) return true;
|
|
724
|
+
}
|
|
725
|
+
return false;
|
|
726
|
+
},
|
|
727
|
+
keys() {
|
|
728
|
+
const keys = [];
|
|
729
|
+
for (let i = 0; i < sources.length; i++) keys.push(...Object.keys(resolveSource(sources[i])));
|
|
730
|
+
return [...new Set(keys)];
|
|
731
|
+
}
|
|
732
|
+
}, propTraps);
|
|
733
|
+
}
|
|
734
|
+
const target = {};
|
|
735
|
+
const sourcesMap = {};
|
|
736
|
+
let someNonTargetKey = false;
|
|
737
|
+
for (let i = sources.length - 1; i >= 0; i--) {
|
|
738
|
+
const source = sources[i];
|
|
739
|
+
if (!source) continue;
|
|
740
|
+
const sourceKeys = Object.getOwnPropertyNames(source);
|
|
741
|
+
someNonTargetKey = someNonTargetKey || i !== 0 && !!sourceKeys.length;
|
|
742
|
+
for (let i = 0, length = sourceKeys.length; i < length; i++) {
|
|
743
|
+
const key = sourceKeys[i];
|
|
744
|
+
if (key === "__proto__" || key === "constructor") {
|
|
745
|
+
continue;
|
|
746
|
+
} else if (!(key in target)) {
|
|
747
|
+
const desc = Object.getOwnPropertyDescriptor(source, key);
|
|
748
|
+
if (desc.get) {
|
|
749
|
+
Object.defineProperty(target, key, {
|
|
750
|
+
enumerable: true,
|
|
751
|
+
configurable: true,
|
|
752
|
+
get: resolveSources.bind(sourcesMap[key] = [desc.get.bind(source)])
|
|
753
|
+
});
|
|
754
|
+
} else target[key] = desc.value;
|
|
755
|
+
} else {
|
|
756
|
+
const sources = sourcesMap[key];
|
|
757
|
+
const desc = Object.getOwnPropertyDescriptor(source, key);
|
|
758
|
+
if (sources) {
|
|
759
|
+
if (desc.get) {
|
|
760
|
+
sources.push(desc.get.bind(source));
|
|
761
|
+
} else if (desc.value !== undefined) {
|
|
762
|
+
sources.push(() => desc.value);
|
|
763
|
+
}
|
|
764
|
+
} else if (target[key] === undefined) target[key] = desc.value;
|
|
765
|
+
}
|
|
766
|
+
}
|
|
767
|
+
}
|
|
768
|
+
return target;
|
|
769
|
+
}
|
|
770
|
+
function splitProps(props, ...keys) {
|
|
771
|
+
if ($PROXY in props) {
|
|
772
|
+
const blocked = new Set(keys.length > 1 ? keys.flat() : keys[0]);
|
|
773
|
+
const res = keys.map(k => {
|
|
774
|
+
return new Proxy({
|
|
775
|
+
get(property) {
|
|
776
|
+
return k.includes(property) ? props[property] : undefined;
|
|
777
|
+
},
|
|
778
|
+
has(property) {
|
|
779
|
+
return k.includes(property) && property in props;
|
|
780
|
+
},
|
|
781
|
+
keys() {
|
|
782
|
+
return k.filter(property => property in props);
|
|
783
|
+
}
|
|
784
|
+
}, propTraps);
|
|
785
|
+
});
|
|
786
|
+
res.push(new Proxy({
|
|
787
|
+
get(property) {
|
|
788
|
+
return blocked.has(property) ? undefined : props[property];
|
|
789
|
+
},
|
|
790
|
+
has(property) {
|
|
791
|
+
return blocked.has(property) ? false : property in props;
|
|
792
|
+
},
|
|
793
|
+
keys() {
|
|
794
|
+
return Object.keys(props).filter(k => !blocked.has(k));
|
|
795
|
+
}
|
|
796
|
+
}, propTraps));
|
|
797
|
+
return res;
|
|
798
|
+
}
|
|
799
|
+
const otherObject = {};
|
|
800
|
+
const objects = keys.map(() => ({}));
|
|
801
|
+
for (const propName of Object.getOwnPropertyNames(props)) {
|
|
802
|
+
const desc = Object.getOwnPropertyDescriptor(props, propName);
|
|
803
|
+
const isDefaultDesc = !desc.get && !desc.set && desc.enumerable && desc.writable && desc.configurable;
|
|
804
|
+
let blocked = false;
|
|
805
|
+
let objectIndex = 0;
|
|
806
|
+
for (const k of keys) {
|
|
807
|
+
if (k.includes(propName)) {
|
|
808
|
+
blocked = true;
|
|
809
|
+
isDefaultDesc ? objects[objectIndex][propName] = desc.value : Object.defineProperty(objects[objectIndex], propName, desc);
|
|
810
|
+
}
|
|
811
|
+
++objectIndex;
|
|
812
|
+
}
|
|
813
|
+
if (!blocked) {
|
|
814
|
+
isDefaultDesc ? otherObject[propName] = desc.value : Object.defineProperty(otherObject, propName, desc);
|
|
815
|
+
}
|
|
816
|
+
}
|
|
817
|
+
return [...objects, otherObject];
|
|
818
|
+
}
|
|
819
|
+
|
|
820
|
+
const narrowedError = name => `Stale read from <${name}>.`;
|
|
821
|
+
function For(props) {
|
|
822
|
+
const fallback = "fallback" in props && {
|
|
823
|
+
fallback: () => props.fallback
|
|
824
|
+
};
|
|
825
|
+
return createMemo(mapArray(() => props.each, props.children, fallback || undefined));
|
|
826
|
+
}
|
|
827
|
+
function Show(props) {
|
|
828
|
+
const keyed = props.keyed;
|
|
829
|
+
const condition = createMemo(() => props.when, undefined, {
|
|
830
|
+
equals: (a, b) => keyed ? a === b : !a === !b
|
|
831
|
+
});
|
|
832
|
+
return createMemo(() => {
|
|
833
|
+
const c = condition();
|
|
834
|
+
if (c) {
|
|
835
|
+
const child = props.children;
|
|
836
|
+
const fn = typeof child === "function" && child.length > 0;
|
|
837
|
+
return fn ? untrack(() => child(keyed ? c : () => {
|
|
838
|
+
if (!untrack(condition)) throw narrowedError("Show");
|
|
839
|
+
return props.when;
|
|
840
|
+
})) : child;
|
|
841
|
+
}
|
|
842
|
+
return props.fallback;
|
|
843
|
+
}, undefined, undefined);
|
|
844
|
+
}
|
|
845
|
+
|
|
846
|
+
const booleans = ["allowfullscreen", "async", "autofocus", "autoplay", "checked", "controls", "default", "disabled", "formnovalidate", "hidden", "indeterminate", "ismap", "loop", "multiple", "muted", "nomodule", "novalidate", "open", "playsinline", "readonly", "required", "reversed", "seamless", "selected"];
|
|
847
|
+
const Properties = /*#__PURE__*/new Set(["className", "value", "readOnly", "formNoValidate", "isMap", "noModule", "playsInline", ...booleans]);
|
|
848
|
+
const ChildProperties = /*#__PURE__*/new Set(["innerHTML", "textContent", "innerText", "children"]);
|
|
849
|
+
const Aliases = /*#__PURE__*/Object.assign(Object.create(null), {
|
|
850
|
+
className: "class",
|
|
851
|
+
htmlFor: "for"
|
|
852
|
+
});
|
|
853
|
+
const PropAliases = /*#__PURE__*/Object.assign(Object.create(null), {
|
|
854
|
+
class: "className",
|
|
855
|
+
formnovalidate: {
|
|
856
|
+
$: "formNoValidate",
|
|
857
|
+
BUTTON: 1,
|
|
858
|
+
INPUT: 1
|
|
859
|
+
},
|
|
860
|
+
ismap: {
|
|
861
|
+
$: "isMap",
|
|
862
|
+
IMG: 1
|
|
863
|
+
},
|
|
864
|
+
nomodule: {
|
|
865
|
+
$: "noModule",
|
|
866
|
+
SCRIPT: 1
|
|
867
|
+
},
|
|
868
|
+
playsinline: {
|
|
869
|
+
$: "playsInline",
|
|
870
|
+
VIDEO: 1
|
|
871
|
+
},
|
|
872
|
+
readonly: {
|
|
873
|
+
$: "readOnly",
|
|
874
|
+
INPUT: 1,
|
|
875
|
+
TEXTAREA: 1
|
|
876
|
+
}
|
|
877
|
+
});
|
|
878
|
+
function getPropAlias(prop, tagName) {
|
|
879
|
+
const a = PropAliases[prop];
|
|
880
|
+
return typeof a === "object" ? a[tagName] ? a["$"] : undefined : a;
|
|
881
|
+
}
|
|
882
|
+
const DelegatedEvents = /*#__PURE__*/new Set(["beforeinput", "click", "dblclick", "contextmenu", "focusin", "focusout", "input", "keydown", "keyup", "mousedown", "mousemove", "mouseout", "mouseover", "mouseup", "pointerdown", "pointermove", "pointerout", "pointerover", "pointerup", "touchend", "touchmove", "touchstart"]);
|
|
883
|
+
const SVGNamespace = {
|
|
884
|
+
xlink: "http://www.w3.org/1999/xlink",
|
|
885
|
+
xml: "http://www.w3.org/XML/1998/namespace"
|
|
886
|
+
};
|
|
887
|
+
|
|
888
|
+
function reconcileArrays(parentNode, a, b) {
|
|
889
|
+
let bLength = b.length,
|
|
890
|
+
aEnd = a.length,
|
|
891
|
+
bEnd = bLength,
|
|
892
|
+
aStart = 0,
|
|
893
|
+
bStart = 0,
|
|
894
|
+
after = a[aEnd - 1].nextSibling,
|
|
895
|
+
map = null;
|
|
896
|
+
while (aStart < aEnd || bStart < bEnd) {
|
|
897
|
+
if (a[aStart] === b[bStart]) {
|
|
898
|
+
aStart++;
|
|
899
|
+
bStart++;
|
|
900
|
+
continue;
|
|
901
|
+
}
|
|
902
|
+
while (a[aEnd - 1] === b[bEnd - 1]) {
|
|
903
|
+
aEnd--;
|
|
904
|
+
bEnd--;
|
|
905
|
+
}
|
|
906
|
+
if (aEnd === aStart) {
|
|
907
|
+
const node = bEnd < bLength ? bStart ? b[bStart - 1].nextSibling : b[bEnd - bStart] : after;
|
|
908
|
+
while (bStart < bEnd) parentNode.insertBefore(b[bStart++], node);
|
|
909
|
+
} else if (bEnd === bStart) {
|
|
910
|
+
while (aStart < aEnd) {
|
|
911
|
+
if (!map || !map.has(a[aStart])) a[aStart].remove();
|
|
912
|
+
aStart++;
|
|
913
|
+
}
|
|
914
|
+
} else if (a[aStart] === b[bEnd - 1] && b[bStart] === a[aEnd - 1]) {
|
|
915
|
+
const node = a[--aEnd].nextSibling;
|
|
916
|
+
parentNode.insertBefore(b[bStart++], a[aStart++].nextSibling);
|
|
917
|
+
parentNode.insertBefore(b[--bEnd], node);
|
|
918
|
+
a[aEnd] = b[bEnd];
|
|
919
|
+
} else {
|
|
920
|
+
if (!map) {
|
|
921
|
+
map = new Map();
|
|
922
|
+
let i = bStart;
|
|
923
|
+
while (i < bEnd) map.set(b[i], i++);
|
|
924
|
+
}
|
|
925
|
+
const index = map.get(a[aStart]);
|
|
926
|
+
if (index != null) {
|
|
927
|
+
if (bStart < index && index < bEnd) {
|
|
928
|
+
let i = aStart,
|
|
929
|
+
sequence = 1,
|
|
930
|
+
t;
|
|
931
|
+
while (++i < aEnd && i < bEnd) {
|
|
932
|
+
if ((t = map.get(a[i])) == null || t !== index + sequence) break;
|
|
933
|
+
sequence++;
|
|
934
|
+
}
|
|
935
|
+
if (sequence > index - bStart) {
|
|
936
|
+
const node = a[aStart];
|
|
937
|
+
while (bStart < index) parentNode.insertBefore(b[bStart++], node);
|
|
938
|
+
} else parentNode.replaceChild(b[bStart++], a[aStart++]);
|
|
939
|
+
} else aStart++;
|
|
940
|
+
} else a[aStart++].remove();
|
|
941
|
+
}
|
|
942
|
+
}
|
|
943
|
+
}
|
|
944
|
+
|
|
945
|
+
const $$EVENTS = "_$DX_DELEGATE";
|
|
946
|
+
function template(html, isCE, isSVG) {
|
|
947
|
+
let node;
|
|
948
|
+
const create = () => {
|
|
949
|
+
const t = document.createElement("template");
|
|
950
|
+
t.innerHTML = html;
|
|
951
|
+
return isSVG ? t.content.firstChild.firstChild : t.content.firstChild;
|
|
952
|
+
};
|
|
953
|
+
const fn = isCE ? () => untrack(() => document.importNode(node || (node = create()), true)) : () => (node || (node = create())).cloneNode(true);
|
|
954
|
+
fn.cloneNode = fn;
|
|
955
|
+
return fn;
|
|
956
|
+
}
|
|
957
|
+
function delegateEvents(eventNames, document = window.document) {
|
|
958
|
+
const e = document[$$EVENTS] || (document[$$EVENTS] = new Set());
|
|
959
|
+
for (let i = 0, l = eventNames.length; i < l; i++) {
|
|
960
|
+
const name = eventNames[i];
|
|
961
|
+
if (!e.has(name)) {
|
|
962
|
+
e.add(name);
|
|
963
|
+
document.addEventListener(name, eventHandler);
|
|
964
|
+
}
|
|
965
|
+
}
|
|
966
|
+
}
|
|
967
|
+
function setAttribute(node, name, value) {
|
|
968
|
+
if (value == null) node.removeAttribute(name);else node.setAttribute(name, value);
|
|
969
|
+
}
|
|
970
|
+
function setAttributeNS(node, namespace, name, value) {
|
|
971
|
+
if (value == null) node.removeAttributeNS(namespace, name);else node.setAttributeNS(namespace, name, value);
|
|
972
|
+
}
|
|
973
|
+
function className(node, value) {
|
|
974
|
+
if (value == null) node.removeAttribute("class");else node.className = value;
|
|
975
|
+
}
|
|
976
|
+
function addEventListener(node, name, handler, delegate) {
|
|
977
|
+
if (delegate) {
|
|
978
|
+
if (Array.isArray(handler)) {
|
|
979
|
+
node[`$$${name}`] = handler[0];
|
|
980
|
+
node[`$$${name}Data`] = handler[1];
|
|
981
|
+
} else node[`$$${name}`] = handler;
|
|
982
|
+
} else if (Array.isArray(handler)) {
|
|
983
|
+
const handlerFn = handler[0];
|
|
984
|
+
node.addEventListener(name, handler[0] = e => handlerFn.call(node, handler[1], e));
|
|
985
|
+
} else node.addEventListener(name, handler);
|
|
986
|
+
}
|
|
987
|
+
function classList(node, value, prev = {}) {
|
|
988
|
+
const classKeys = Object.keys(value || {}),
|
|
989
|
+
prevKeys = Object.keys(prev);
|
|
990
|
+
let i, len;
|
|
991
|
+
for (i = 0, len = prevKeys.length; i < len; i++) {
|
|
992
|
+
const key = prevKeys[i];
|
|
993
|
+
if (!key || key === "undefined" || value[key]) continue;
|
|
994
|
+
toggleClassKey(node, key, false);
|
|
995
|
+
delete prev[key];
|
|
996
|
+
}
|
|
997
|
+
for (i = 0, len = classKeys.length; i < len; i++) {
|
|
998
|
+
const key = classKeys[i],
|
|
999
|
+
classValue = !!value[key];
|
|
1000
|
+
if (!key || key === "undefined" || prev[key] === classValue || !classValue) continue;
|
|
1001
|
+
toggleClassKey(node, key, true);
|
|
1002
|
+
prev[key] = classValue;
|
|
1003
|
+
}
|
|
1004
|
+
return prev;
|
|
1005
|
+
}
|
|
1006
|
+
function style(node, value, prev) {
|
|
1007
|
+
if (!value) return prev ? setAttribute(node, "style") : value;
|
|
1008
|
+
const nodeStyle = node.style;
|
|
1009
|
+
if (typeof value === "string") return nodeStyle.cssText = value;
|
|
1010
|
+
typeof prev === "string" && (nodeStyle.cssText = prev = undefined);
|
|
1011
|
+
prev || (prev = {});
|
|
1012
|
+
value || (value = {});
|
|
1013
|
+
let v, s;
|
|
1014
|
+
for (s in prev) {
|
|
1015
|
+
value[s] == null && nodeStyle.removeProperty(s);
|
|
1016
|
+
delete prev[s];
|
|
1017
|
+
}
|
|
1018
|
+
for (s in value) {
|
|
1019
|
+
v = value[s];
|
|
1020
|
+
if (v !== prev[s]) {
|
|
1021
|
+
nodeStyle.setProperty(s, v);
|
|
1022
|
+
prev[s] = v;
|
|
1023
|
+
}
|
|
1024
|
+
}
|
|
1025
|
+
return prev;
|
|
1026
|
+
}
|
|
1027
|
+
function spread(node, props = {}, isSVG, skipChildren) {
|
|
1028
|
+
const prevProps = {};
|
|
1029
|
+
if (!skipChildren) {
|
|
1030
|
+
createRenderEffect(() => prevProps.children = insertExpression(node, props.children, prevProps.children));
|
|
1031
|
+
}
|
|
1032
|
+
createRenderEffect(() => props.ref && props.ref(node));
|
|
1033
|
+
createRenderEffect(() => assign(node, props, isSVG, true, prevProps, true));
|
|
1034
|
+
return prevProps;
|
|
1035
|
+
}
|
|
1036
|
+
function use(fn, element, arg) {
|
|
1037
|
+
return untrack(() => fn(element, arg));
|
|
1038
|
+
}
|
|
1039
|
+
function insert(parent, accessor, marker, initial) {
|
|
1040
|
+
if (marker !== undefined && !initial) initial = [];
|
|
1041
|
+
if (typeof accessor !== "function") return insertExpression(parent, accessor, initial, marker);
|
|
1042
|
+
createRenderEffect(current => insertExpression(parent, accessor(), current, marker), initial);
|
|
1043
|
+
}
|
|
1044
|
+
function assign(node, props, isSVG, skipChildren, prevProps = {}, skipRef = false) {
|
|
1045
|
+
props || (props = {});
|
|
1046
|
+
for (const prop in prevProps) {
|
|
1047
|
+
if (!(prop in props)) {
|
|
1048
|
+
if (prop === "children") continue;
|
|
1049
|
+
prevProps[prop] = assignProp(node, prop, null, prevProps[prop], isSVG, skipRef);
|
|
1050
|
+
}
|
|
1051
|
+
}
|
|
1052
|
+
for (const prop in props) {
|
|
1053
|
+
if (prop === "children") {
|
|
1054
|
+
if (!skipChildren) insertExpression(node, props.children);
|
|
1055
|
+
continue;
|
|
1056
|
+
}
|
|
1057
|
+
const value = props[prop];
|
|
1058
|
+
prevProps[prop] = assignProp(node, prop, value, prevProps[prop], isSVG, skipRef);
|
|
1059
|
+
}
|
|
1060
|
+
}
|
|
1061
|
+
function getNextElement(template) {
|
|
1062
|
+
let key;
|
|
1063
|
+
{
|
|
1064
|
+
if (!template) throw new Error("Unrecoverable Hydration Mismatch. No template for key: " + key);
|
|
1065
|
+
return template();
|
|
1066
|
+
}
|
|
1067
|
+
}
|
|
1068
|
+
function getNextMarker(start) {
|
|
1069
|
+
let end = start,
|
|
1070
|
+
current = [];
|
|
1071
|
+
return [end, current];
|
|
1072
|
+
}
|
|
1073
|
+
function runHydrationEvents() {
|
|
1074
|
+
if (sharedConfig.events && !sharedConfig.events.queued) {
|
|
1075
|
+
queueMicrotask(() => {
|
|
1076
|
+
const {
|
|
1077
|
+
completed,
|
|
1078
|
+
events
|
|
1079
|
+
} = sharedConfig;
|
|
1080
|
+
events.queued = false;
|
|
1081
|
+
while (events.length) {
|
|
1082
|
+
const [el, e] = events[0];
|
|
1083
|
+
if (!completed.has(el)) return;
|
|
1084
|
+
eventHandler(e);
|
|
1085
|
+
events.shift();
|
|
1086
|
+
}
|
|
1087
|
+
});
|
|
1088
|
+
sharedConfig.events.queued = true;
|
|
1089
|
+
}
|
|
1090
|
+
}
|
|
1091
|
+
function toPropertyName(name) {
|
|
1092
|
+
return name.toLowerCase().replace(/-([a-z])/g, (_, w) => w.toUpperCase());
|
|
1093
|
+
}
|
|
1094
|
+
function toggleClassKey(node, key, value) {
|
|
1095
|
+
const classNames = key.trim().split(/\s+/);
|
|
1096
|
+
for (let i = 0, nameLen = classNames.length; i < nameLen; i++) node.classList.toggle(classNames[i], value);
|
|
1097
|
+
}
|
|
1098
|
+
function assignProp(node, prop, value, prev, isSVG, skipRef) {
|
|
1099
|
+
let isCE, isProp, isChildProp, propAlias, forceProp;
|
|
1100
|
+
if (prop === "style") return style(node, value, prev);
|
|
1101
|
+
if (prop === "classList") return classList(node, value, prev);
|
|
1102
|
+
if (value === prev) return prev;
|
|
1103
|
+
if (prop === "ref") {
|
|
1104
|
+
if (!skipRef) value(node);
|
|
1105
|
+
} else if (prop.slice(0, 3) === "on:") {
|
|
1106
|
+
const e = prop.slice(3);
|
|
1107
|
+
prev && node.removeEventListener(e, prev);
|
|
1108
|
+
value && node.addEventListener(e, value);
|
|
1109
|
+
} else if (prop.slice(0, 10) === "oncapture:") {
|
|
1110
|
+
const e = prop.slice(10);
|
|
1111
|
+
prev && node.removeEventListener(e, prev, true);
|
|
1112
|
+
value && node.addEventListener(e, value, true);
|
|
1113
|
+
} else if (prop.slice(0, 2) === "on") {
|
|
1114
|
+
const name = prop.slice(2).toLowerCase();
|
|
1115
|
+
const delegate = DelegatedEvents.has(name);
|
|
1116
|
+
if (!delegate && prev) {
|
|
1117
|
+
const h = Array.isArray(prev) ? prev[0] : prev;
|
|
1118
|
+
node.removeEventListener(name, h);
|
|
1119
|
+
}
|
|
1120
|
+
if (delegate || value) {
|
|
1121
|
+
addEventListener(node, name, value, delegate);
|
|
1122
|
+
delegate && delegateEvents([name]);
|
|
1123
|
+
}
|
|
1124
|
+
} else if (prop.slice(0, 5) === "attr:") {
|
|
1125
|
+
setAttribute(node, prop.slice(5), value);
|
|
1126
|
+
} else if ((forceProp = prop.slice(0, 5) === "prop:") || (isChildProp = ChildProperties.has(prop)) || !isSVG && ((propAlias = getPropAlias(prop, node.tagName)) || (isProp = Properties.has(prop))) || (isCE = node.nodeName.includes("-"))) {
|
|
1127
|
+
if (forceProp) {
|
|
1128
|
+
prop = prop.slice(5);
|
|
1129
|
+
isProp = true;
|
|
1130
|
+
}
|
|
1131
|
+
if (prop === "class" || prop === "className") className(node, value);else if (isCE && !isProp && !isChildProp) node[toPropertyName(prop)] = value;else node[propAlias || prop] = value;
|
|
1132
|
+
} else {
|
|
1133
|
+
const ns = isSVG && prop.indexOf(":") > -1 && SVGNamespace[prop.split(":")[0]];
|
|
1134
|
+
if (ns) setAttributeNS(node, ns, prop, value);else setAttribute(node, Aliases[prop] || prop, value);
|
|
1135
|
+
}
|
|
1136
|
+
return value;
|
|
1137
|
+
}
|
|
1138
|
+
function eventHandler(e) {
|
|
1139
|
+
const key = `$$${e.type}`;
|
|
1140
|
+
let node = e.composedPath && e.composedPath()[0] || e.target;
|
|
1141
|
+
if (e.target !== node) {
|
|
1142
|
+
Object.defineProperty(e, "target", {
|
|
1143
|
+
configurable: true,
|
|
1144
|
+
value: node
|
|
1145
|
+
});
|
|
1146
|
+
}
|
|
1147
|
+
Object.defineProperty(e, "currentTarget", {
|
|
1148
|
+
configurable: true,
|
|
1149
|
+
get() {
|
|
1150
|
+
return node || document;
|
|
1151
|
+
}
|
|
1152
|
+
});
|
|
1153
|
+
while (node) {
|
|
1154
|
+
const handler = node[key];
|
|
1155
|
+
if (handler && !node.disabled) {
|
|
1156
|
+
const data = node[`${key}Data`];
|
|
1157
|
+
data !== undefined ? handler.call(node, data, e) : handler.call(node, e);
|
|
1158
|
+
if (e.cancelBubble) return;
|
|
1159
|
+
}
|
|
1160
|
+
node = node._$host || node.parentNode || node.host;
|
|
1161
|
+
}
|
|
1162
|
+
}
|
|
1163
|
+
function insertExpression(parent, value, current, marker, unwrapArray) {
|
|
1164
|
+
while (typeof current === "function") current = current();
|
|
1165
|
+
if (value === current) return current;
|
|
1166
|
+
const t = typeof value,
|
|
1167
|
+
multi = marker !== undefined;
|
|
1168
|
+
parent = multi && current[0] && current[0].parentNode || parent;
|
|
1169
|
+
if (t === "string" || t === "number") {
|
|
1170
|
+
if (t === "number") value = value.toString();
|
|
1171
|
+
if (multi) {
|
|
1172
|
+
let node = current[0];
|
|
1173
|
+
if (node && node.nodeType === 3) {
|
|
1174
|
+
node.data = value;
|
|
1175
|
+
} else node = document.createTextNode(value);
|
|
1176
|
+
current = cleanChildren(parent, current, marker, node);
|
|
1177
|
+
} else {
|
|
1178
|
+
if (current !== "" && typeof current === "string") {
|
|
1179
|
+
current = parent.firstChild.data = value;
|
|
1180
|
+
} else current = parent.textContent = value;
|
|
1181
|
+
}
|
|
1182
|
+
} else if (value == null || t === "boolean") {
|
|
1183
|
+
current = cleanChildren(parent, current, marker);
|
|
1184
|
+
} else if (t === "function") {
|
|
1185
|
+
createRenderEffect(() => {
|
|
1186
|
+
let v = value();
|
|
1187
|
+
while (typeof v === "function") v = v();
|
|
1188
|
+
current = insertExpression(parent, v, current, marker);
|
|
1189
|
+
});
|
|
1190
|
+
return () => current;
|
|
1191
|
+
} else if (Array.isArray(value)) {
|
|
1192
|
+
const array = [];
|
|
1193
|
+
const currentArray = current && Array.isArray(current);
|
|
1194
|
+
if (normalizeIncomingArray(array, value, current, unwrapArray)) {
|
|
1195
|
+
createRenderEffect(() => current = insertExpression(parent, array, current, marker, true));
|
|
1196
|
+
return () => current;
|
|
1197
|
+
}
|
|
1198
|
+
if (array.length === 0) {
|
|
1199
|
+
current = cleanChildren(parent, current, marker);
|
|
1200
|
+
if (multi) return current;
|
|
1201
|
+
} else if (currentArray) {
|
|
1202
|
+
if (current.length === 0) {
|
|
1203
|
+
appendNodes(parent, array, marker);
|
|
1204
|
+
} else reconcileArrays(parent, current, array);
|
|
1205
|
+
} else {
|
|
1206
|
+
current && cleanChildren(parent);
|
|
1207
|
+
appendNodes(parent, array);
|
|
1208
|
+
}
|
|
1209
|
+
current = array;
|
|
1210
|
+
} else if (value.nodeType) {
|
|
1211
|
+
if (Array.isArray(current)) {
|
|
1212
|
+
if (multi) return current = cleanChildren(parent, current, marker, value);
|
|
1213
|
+
cleanChildren(parent, current, null, value);
|
|
1214
|
+
} else if (current == null || current === "" || !parent.firstChild) {
|
|
1215
|
+
parent.appendChild(value);
|
|
1216
|
+
} else parent.replaceChild(value, parent.firstChild);
|
|
1217
|
+
current = value;
|
|
1218
|
+
} else console.warn(`Unrecognized value. Skipped inserting`, value);
|
|
1219
|
+
return current;
|
|
1220
|
+
}
|
|
1221
|
+
function normalizeIncomingArray(normalized, array, current, unwrap) {
|
|
1222
|
+
let dynamic = false;
|
|
1223
|
+
for (let i = 0, len = array.length; i < len; i++) {
|
|
1224
|
+
let item = array[i],
|
|
1225
|
+
prev = current && current[i],
|
|
1226
|
+
t;
|
|
1227
|
+
if (item == null || item === true || item === false) ; else if ((t = typeof item) === "object" && item.nodeType) {
|
|
1228
|
+
normalized.push(item);
|
|
1229
|
+
} else if (Array.isArray(item)) {
|
|
1230
|
+
dynamic = normalizeIncomingArray(normalized, item, prev) || dynamic;
|
|
1231
|
+
} else if (t === "function") {
|
|
1232
|
+
if (unwrap) {
|
|
1233
|
+
while (typeof item === "function") item = item();
|
|
1234
|
+
dynamic = normalizeIncomingArray(normalized, Array.isArray(item) ? item : [item], Array.isArray(prev) ? prev : [prev]) || dynamic;
|
|
1235
|
+
} else {
|
|
1236
|
+
normalized.push(item);
|
|
1237
|
+
dynamic = true;
|
|
1238
|
+
}
|
|
1239
|
+
} else {
|
|
1240
|
+
const value = String(item);
|
|
1241
|
+
if (prev && prev.nodeType === 3 && prev.data === value) normalized.push(prev);else normalized.push(document.createTextNode(value));
|
|
1242
|
+
}
|
|
1243
|
+
}
|
|
1244
|
+
return dynamic;
|
|
1245
|
+
}
|
|
1246
|
+
function appendNodes(parent, array, marker = null) {
|
|
1247
|
+
for (let i = 0, len = array.length; i < len; i++) parent.insertBefore(array[i], marker);
|
|
1248
|
+
}
|
|
1249
|
+
function cleanChildren(parent, current, marker, replacement) {
|
|
1250
|
+
if (marker === undefined) return parent.textContent = "";
|
|
1251
|
+
const node = replacement || document.createTextNode("");
|
|
1252
|
+
if (current.length) {
|
|
1253
|
+
let inserted = false;
|
|
1254
|
+
for (let i = current.length - 1; i >= 0; i--) {
|
|
1255
|
+
const el = current[i];
|
|
1256
|
+
if (node !== el) {
|
|
1257
|
+
const isParent = el.parentNode === parent;
|
|
1258
|
+
if (!inserted && !i) isParent ? parent.replaceChild(node, el) : parent.insertBefore(node, marker);else isParent && el.remove();
|
|
1259
|
+
} else inserted = true;
|
|
1260
|
+
}
|
|
1261
|
+
} else parent.insertBefore(node, marker);
|
|
1262
|
+
return [node];
|
|
1263
|
+
}
|
|
1264
|
+
|
|
1265
|
+
function createProps(raw) {
|
|
1266
|
+
const keys = Object.keys(raw);
|
|
1267
|
+
const props = {};
|
|
1268
|
+
for (let i = 0; i < keys.length; i++) {
|
|
1269
|
+
const [get, set] = createSignal(raw[keys[i]]);
|
|
1270
|
+
Object.defineProperty(props, keys[i], {
|
|
1271
|
+
get,
|
|
1272
|
+
set(v) {
|
|
1273
|
+
set(() => v);
|
|
1274
|
+
}
|
|
1275
|
+
});
|
|
1276
|
+
}
|
|
1277
|
+
return props;
|
|
1278
|
+
}
|
|
1279
|
+
function lookupContext(el) {
|
|
1280
|
+
if (el.assignedSlot && el.assignedSlot._$owner)
|
|
1281
|
+
return el.assignedSlot._$owner;
|
|
1282
|
+
let next = el.parentNode;
|
|
1283
|
+
while (next &&
|
|
1284
|
+
!next._$owner &&
|
|
1285
|
+
!(next.assignedSlot && next.assignedSlot._$owner))
|
|
1286
|
+
next = next.parentNode;
|
|
1287
|
+
return next && next.assignedSlot
|
|
1288
|
+
? next.assignedSlot._$owner
|
|
1289
|
+
: el._$owner;
|
|
1290
|
+
}
|
|
1291
|
+
function withSolid(ComponentType) {
|
|
1292
|
+
return (rawProps, options) => {
|
|
1293
|
+
const { element } = options;
|
|
1294
|
+
return createRoot((dispose) => {
|
|
1295
|
+
const props = createProps(rawProps);
|
|
1296
|
+
element.addPropertyChangedCallback((key, val) => (props[key] = val));
|
|
1297
|
+
element.addReleaseCallback(() => {
|
|
1298
|
+
element.renderRoot.textContent = "";
|
|
1299
|
+
dispose();
|
|
1300
|
+
});
|
|
1301
|
+
const comp = ComponentType(props, options);
|
|
1302
|
+
return insert(element.renderRoot, comp);
|
|
1303
|
+
}, lookupContext(element));
|
|
1304
|
+
};
|
|
1305
|
+
}
|
|
1306
|
+
function customElement(tag, props, ComponentType) {
|
|
1307
|
+
if (arguments.length === 2) {
|
|
1308
|
+
ComponentType = props;
|
|
1309
|
+
props = {};
|
|
1310
|
+
}
|
|
1311
|
+
return register(tag, props)(withSolid(ComponentType));
|
|
1312
|
+
}
|
|
1313
|
+
|
|
1314
|
+
function styleInject(css, ref) {
|
|
1315
|
+
if ( ref === void 0 ) ref = {};
|
|
1316
|
+
var insertAt = ref.insertAt;
|
|
1317
|
+
|
|
1318
|
+
if (!css || typeof document === 'undefined') { return; }
|
|
1319
|
+
|
|
1320
|
+
var head = document.head || document.getElementsByTagName('head')[0];
|
|
1321
|
+
var style = document.createElement('style');
|
|
1322
|
+
style.type = 'text/css';
|
|
1323
|
+
|
|
1324
|
+
if (insertAt === 'top') {
|
|
1325
|
+
if (head.firstChild) {
|
|
1326
|
+
head.insertBefore(style, head.firstChild);
|
|
1327
|
+
} else {
|
|
1328
|
+
head.appendChild(style);
|
|
1329
|
+
}
|
|
1330
|
+
} else {
|
|
1331
|
+
head.appendChild(style);
|
|
1332
|
+
}
|
|
1333
|
+
|
|
1334
|
+
if (style.styleSheet) {
|
|
1335
|
+
style.styleSheet.cssText = css;
|
|
1336
|
+
} else {
|
|
1337
|
+
style.appendChild(document.createTextNode(css));
|
|
1338
|
+
}
|
|
1339
|
+
}
|
|
1340
|
+
|
|
1341
|
+
var css_248z = ":root,\n[data-theme] {\n background-color: hsl(var(--b1) / var(--tw-bg-opacity, 1));\n color: hsl(var(--bc) / var(--tw-text-opacity, 1))\n}\nhtml {\n -webkit-tap-highlight-color: transparent\n}\n:root {\n color-scheme: light;\n --pf: 259 94% 44%;\n --sf: 314 100% 40%;\n --af: 174 75% 39%;\n --nf: 214 20% 14%;\n --in: 198 93% 60%;\n --su: 158 64% 52%;\n --wa: 43 96% 56%;\n --er: 0 91% 71%;\n --inc: 198 100% 12%;\n --suc: 158 100% 10%;\n --wac: 43 100% 11%;\n --erc: 0 100% 14%;\n --rounded-box: 1rem;\n --rounded-btn: 0.5rem;\n --rounded-badge: 1.9rem;\n --animation-btn: 0.25s;\n --animation-input: .2s;\n --btn-text-case: uppercase;\n --btn-focus-scale: 0.95;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: 0.5rem;\n --p: 259 94% 51%;\n --pc: 259 96% 91%;\n --s: 314 100% 47%;\n --sc: 314 100% 91%;\n --a: 174 75% 46%;\n --ac: 174 75% 11%;\n --n: 214 20% 21%;\n --nc: 212 19% 87%;\n --b1: 0 0% 100%;\n --b2: 0 0% 95%;\n --b3: 180 2% 90%;\n --bc: 215 28% 17%\n}\n@media (prefers-color-scheme: dark) {\n :root {\n color-scheme: dark;\n --pf: 262 80% 43%;\n --sf: 316 70% 43%;\n --af: 175 70% 34%;\n --in: 198 93% 60%;\n --su: 158 64% 52%;\n --wa: 43 96% 56%;\n --er: 0 91% 71%;\n --inc: 198 100% 12%;\n --suc: 158 100% 10%;\n --wac: 43 100% 11%;\n --erc: 0 100% 14%;\n --rounded-box: 1rem;\n --rounded-btn: 0.5rem;\n --rounded-badge: 1.9rem;\n --animation-btn: 0.25s;\n --animation-input: .2s;\n --btn-text-case: uppercase;\n --btn-focus-scale: 0.95;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: 0.5rem;\n --p: 262 80% 50%;\n --pc: 0 0% 100%;\n --s: 316 70% 50%;\n --sc: 0 0% 100%;\n --a: 175 70% 41%;\n --ac: 0 0% 100%;\n --n: 213 18% 20%;\n --nf: 212 17% 17%;\n --nc: 220 13% 69%;\n --b1: 212 18% 14%;\n --b2: 213 18% 12%;\n --b3: 213 18% 10%;\n --bc: 220 13% 69%\n }\n}\n[data-theme=light] {\n color-scheme: light;\n --pf: 259 94% 44%;\n --sf: 314 100% 40%;\n --af: 174 75% 39%;\n --nf: 214 20% 14%;\n --in: 198 93% 60%;\n --su: 158 64% 52%;\n --wa: 43 96% 56%;\n --er: 0 91% 71%;\n --inc: 198 100% 12%;\n --suc: 158 100% 10%;\n --wac: 43 100% 11%;\n --erc: 0 100% 14%;\n --rounded-box: 1rem;\n --rounded-btn: 0.5rem;\n --rounded-badge: 1.9rem;\n --animation-btn: 0.25s;\n --animation-input: .2s;\n --btn-text-case: uppercase;\n --btn-focus-scale: 0.95;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: 0.5rem;\n --p: 259 94% 51%;\n --pc: 259 96% 91%;\n --s: 314 100% 47%;\n --sc: 314 100% 91%;\n --a: 174 75% 46%;\n --ac: 174 75% 11%;\n --n: 214 20% 21%;\n --nc: 212 19% 87%;\n --b1: 0 0% 100%;\n --b2: 0 0% 95%;\n --b3: 180 2% 90%;\n --bc: 215 28% 17%\n}\n[data-theme=dark] {\n color-scheme: dark;\n --pf: 262 80% 43%;\n --sf: 316 70% 43%;\n --af: 175 70% 34%;\n --in: 198 93% 60%;\n --su: 158 64% 52%;\n --wa: 43 96% 56%;\n --er: 0 91% 71%;\n --inc: 198 100% 12%;\n --suc: 158 100% 10%;\n --wac: 43 100% 11%;\n --erc: 0 100% 14%;\n --rounded-box: 1rem;\n --rounded-btn: 0.5rem;\n --rounded-badge: 1.9rem;\n --animation-btn: 0.25s;\n --animation-input: .2s;\n --btn-text-case: uppercase;\n --btn-focus-scale: 0.95;\n --border-btn: 1px;\n --tab-border: 1px;\n --tab-radius: 0.5rem;\n --p: 262 80% 50%;\n --pc: 0 0% 100%;\n --s: 316 70% 50%;\n --sc: 0 0% 100%;\n --a: 175 70% 41%;\n --ac: 0 0% 100%;\n --n: 213 18% 20%;\n --nf: 212 17% 17%;\n --nc: 220 13% 69%;\n --b1: 212 18% 14%;\n --b2: 213 18% 12%;\n --b3: 213 18% 10%;\n --bc: 220 13% 69%\n}\n*, ::before, ::after {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: \n}\n::backdrop {\n --tw-border-spacing-x: 0;\n --tw-border-spacing-y: 0;\n --tw-translate-x: 0;\n --tw-translate-y: 0;\n --tw-rotate: 0;\n --tw-skew-x: 0;\n --tw-skew-y: 0;\n --tw-scale-x: 1;\n --tw-scale-y: 1;\n --tw-pan-x: ;\n --tw-pan-y: ;\n --tw-pinch-zoom: ;\n --tw-scroll-snap-strictness: proximity;\n --tw-gradient-from-position: ;\n --tw-gradient-via-position: ;\n --tw-gradient-to-position: ;\n --tw-ordinal: ;\n --tw-slashed-zero: ;\n --tw-numeric-figure: ;\n --tw-numeric-spacing: ;\n --tw-numeric-fraction: ;\n --tw-ring-inset: ;\n --tw-ring-offset-width: 0px;\n --tw-ring-offset-color: #fff;\n --tw-ring-color: rgb(59 130 246 / 0.5);\n --tw-ring-offset-shadow: 0 0 #0000;\n --tw-ring-shadow: 0 0 #0000;\n --tw-shadow: 0 0 #0000;\n --tw-shadow-colored: 0 0 #0000;\n --tw-blur: ;\n --tw-brightness: ;\n --tw-contrast: ;\n --tw-grayscale: ;\n --tw-hue-rotate: ;\n --tw-invert: ;\n --tw-saturate: ;\n --tw-sepia: ;\n --tw-drop-shadow: ;\n --tw-backdrop-blur: ;\n --tw-backdrop-brightness: ;\n --tw-backdrop-contrast: ;\n --tw-backdrop-grayscale: ;\n --tw-backdrop-hue-rotate: ;\n --tw-backdrop-invert: ;\n --tw-backdrop-opacity: ;\n --tw-backdrop-saturate: ;\n --tw-backdrop-sepia: \n}\n.container {\n width: 100%\n}\n@media (min-width: 640px) {\n .container {\n max-width: 640px\n }\n}\n@media (min-width: 768px) {\n .container {\n max-width: 768px\n }\n}\n@media (min-width: 1024px) {\n .container {\n max-width: 1024px\n }\n}\n@media (min-width: 1280px) {\n .container {\n max-width: 1280px\n }\n}\n@media (min-width: 1536px) {\n .container {\n max-width: 1536px\n }\n}\n@media (hover:hover) {\n .checkbox-success:hover {\n --tw-border-opacity: 1;\n border-color: hsl(var(--su) / var(--tw-border-opacity))\n }\n .label a:hover {\n --tw-text-opacity: 1;\n color: hsl(var(--bc) / var(--tw-text-opacity))\n }\n .menu :where(li:not(.menu-title):not(.disabled) > *:not(ul):not(details):not(.menu-title)):where(.active), .menu :where(li:not(.menu-title):not(.disabled) > details > summary:not(.menu-title)):where(.active) {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--n) / var(--tw-bg-opacity));\n --tw-text-opacity: 1;\n color: hsl(var(--nc) / var(--tw-text-opacity))\n }\n}\n.checkbox {\n flex-shrink: 0;\n --chkbg: var(--bc);\n --chkfg: var(--b1);\n height: 1.5rem;\n width: 1.5rem;\n cursor: pointer;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n border-width: 1px;\n border-color: hsl(var(--bc) / var(--tw-border-opacity));\n --tw-border-opacity: 0.2;\n border-radius: var(--rounded-btn, 0.5rem)\n}\n.divider {\n display: flex;\n flex-direction: row;\n align-items: center;\n align-self: stretch;\n margin-top: 1rem;\n margin-bottom: 1rem;\n height: 1rem;\n white-space: nowrap\n}\n.divider:before,\n .divider:after {\n content: \"\";\n flex-grow: 1;\n height: 0.125rem;\n width: 100%\n}\n.drawer {\n position: relative;\n display: grid;\n grid-auto-columns: max-content auto;\n width: 100%\n}\n@media (hover: hover) {\n .btm-nav > *.disabled:hover,\n .btm-nav > *[disabled]:hover {\n pointer-events: none;\n --tw-border-opacity: 0;\n background-color: hsl(var(--n) / var(--tw-bg-opacity));\n --tw-bg-opacity: 0.1;\n color: hsl(var(--bc) / var(--tw-text-opacity));\n --tw-text-opacity: 0.2\n }\n .menu :where(li:not(.menu-title):not(.disabled) > *:not(ul):not(details):not(.menu-title)):not(.active):hover, .menu :where(li:not(.menu-title):not(.disabled) > details > summary:not(.menu-title)):not(.active):hover {\n cursor: pointer;\n background-color: hsl(var(--bc) / 0.1);\n --tw-text-opacity: 1;\n color: hsl(var(--bc) / var(--tw-text-opacity));\n outline: 2px solid transparent;\n outline-offset: 2px\n }\n}\n.form-control {\n display: flex;\n flex-direction: column\n}\n.label {\n display: flex;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n align-items: center;\n justify-content: space-between;\n padding-left: 0.25rem;\n padding-right: 0.25rem;\n padding-top: 0.5rem;\n padding-bottom: 0.5rem\n}\n.input {\n flex-shrink: 1;\n height: 3rem;\n padding-left: 1rem;\n padding-right: 1rem;\n font-size: 1rem;\n line-height: 2;\n line-height: 1.5rem;\n border-width: 1px;\n border-color: hsl(var(--bc) / var(--tw-border-opacity));\n --tw-border-opacity: 0;\n --tw-bg-opacity: 1;\n background-color: hsl(var(--b1) / var(--tw-bg-opacity));\n border-radius: var(--rounded-btn, 0.5rem)\n}\n.input-group > .input {\n isolation: isolate\n}\n.input-group > *,\n .input-group > .input,\n .input-group > .textarea,\n .input-group > .select {\n border-radius: 0px\n}\n.join {\n display: inline-flex;\n align-items: stretch;\n border-radius: var(--rounded-btn, 0.5rem)\n}\n.join :where(.join-item) {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n border-top-left-radius: 0\n}\n.join .join-item:not(:first-child):not(:last-child),\n .join *:not(:first-child):not(:last-child) .join-item {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0;\n border-bottom-left-radius: 0;\n border-top-left-radius: 0\n}\n.join .join-item:first-child:not(:last-child),\n .join *:first-child:not(:last-child) .join-item {\n border-top-right-radius: 0;\n border-bottom-right-radius: 0\n}\n.join :where(.join-item:first-child:not(:last-child)),\n .join :where(*:first-child:not(:last-child) .join-item) {\n border-bottom-left-radius: inherit;\n border-top-left-radius: inherit\n}\n.join .join-item:last-child:not(:first-child),\n .join *:last-child:not(:first-child) .join-item {\n border-bottom-left-radius: 0;\n border-top-left-radius: 0\n}\n.join :where(.join-item:last-child:not(:first-child)),\n .join :where(*:last-child:not(:first-child) .join-item) {\n border-top-right-radius: inherit;\n border-bottom-right-radius: inherit\n}\n:where(.join *) {\n border-radius: inherit\n}\n.kbd {\n display: inline-flex;\n align-items: center;\n justify-content: center;\n border-width: 1px;\n border-color: hsl(var(--bc) / var(--tw-border-opacity));\n --tw-border-opacity: 0.2;\n --tw-bg-opacity: 1;\n background-color: hsl(var(--b2) / var(--tw-bg-opacity));\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n border-radius: var(--rounded-btn, 0.5rem);\n border-bottom-width: 2px;\n min-height: 2.2em;\n min-width: 2.2em\n}\n.link {\n cursor: pointer;\n text-decoration-line: underline\n}\n.menu li.disabled {\n cursor: not-allowed;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n color: hsl(var(--bc) / 0.3)\n}\n.select {\n display: inline-flex;\n flex-shrink: 0;\n cursor: pointer;\n -webkit-user-select: none;\n -moz-user-select: none;\n user-select: none;\n -webkit-appearance: none;\n -moz-appearance: none;\n appearance: none;\n height: 3rem;\n padding-left: 1rem;\n padding-right: 2.5rem;\n font-size: 0.875rem;\n line-height: 1.25rem;\n line-height: 2;\n min-height: 3rem;\n border-width: 1px;\n border-color: hsl(var(--bc) / var(--tw-border-opacity));\n --tw-border-opacity: 0;\n --tw-bg-opacity: 1;\n background-color: hsl(var(--b1) / var(--tw-bg-opacity));\n font-weight: 600;\n border-radius: var(--rounded-btn, 0.5rem);\n background-image: linear-gradient(45deg, transparent 50%, currentColor 50%),\n linear-gradient(135deg, currentColor 50%, transparent 50%);\n background-position: calc(100% - 20px) calc(1px + 50%), calc(100% - 16px) calc(1px + 50%);\n background-size: 4px 4px, 4px 4px;\n background-repeat: no-repeat\n}\n.select[multiple] {\n height: auto\n}\n.btm-nav > *.disabled,\n .btm-nav > *[disabled] {\n pointer-events: none;\n --tw-border-opacity: 0;\n background-color: hsl(var(--n) / var(--tw-bg-opacity));\n --tw-bg-opacity: 0.1;\n color: hsl(var(--bc) / var(--tw-text-opacity));\n --tw-text-opacity: 0.2\n}\n.btm-nav > * .label {\n font-size: 1rem;\n line-height: 1.5rem\n}\n@keyframes button-pop {\n 0% {\n transform: scale(var(--btn-focus-scale, 0.98))\n }\n 40% {\n transform: scale(1.02)\n }\n 100% {\n transform: scale(1)\n }\n}\n.checkbox:focus-visible {\n outline-style: solid;\n outline-width: 2px;\n outline-offset: 2px;\n outline-color: hsl(var(--bc) / 1)\n}\n.checkbox:checked,\n .checkbox[checked=\"true\"],\n .checkbox[aria-checked=\"true\"] {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--bc) / var(--tw-bg-opacity));\n background-repeat: no-repeat;\n animation: checkmark var(--animation-input, 0.2s) ease-in-out;\n background-image: linear-gradient(-45deg, transparent 65%, hsl(var(--chkbg)) 65.99%),\n linear-gradient(45deg, transparent 75%, hsl(var(--chkbg)) 75.99%),\n linear-gradient(-45deg, hsl(var(--chkbg)) 40%, transparent 40.99%),\n linear-gradient(\n 45deg,\n hsl(var(--chkbg)) 30%,\n hsl(var(--chkfg)) 30.99%,\n hsl(var(--chkfg)) 40%,\n transparent 40.99%\n ),\n linear-gradient(-45deg, hsl(var(--chkfg)) 50%, hsl(var(--chkbg)) 50.99%)\n}\n.checkbox:indeterminate {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--bc) / var(--tw-bg-opacity));\n background-repeat: no-repeat;\n animation: checkmark var(--animation-input, 0.2s) ease-in-out;\n background-image: linear-gradient(90deg, transparent 80%, hsl(var(--chkbg)) 80%),\n linear-gradient(-90deg, transparent 80%, hsl(var(--chkbg)) 80%),\n linear-gradient(\n 0deg,\n hsl(var(--chkbg)) 43%,\n hsl(var(--chkfg)) 43%,\n hsl(var(--chkfg)) 57%,\n hsl(var(--chkbg)) 57%\n )\n}\n.checkbox-success {\n --chkbg: var(--su);\n --chkfg: var(--suc);\n --tw-border-opacity: 1;\n border-color: hsl(var(--su) / var(--tw-border-opacity))\n}\n.checkbox-success:focus-visible {\n outline-color: hsl(var(--su) / 1)\n}\n.checkbox-success:checked,\n .checkbox-success[checked=\"true\"],\n .checkbox-success[aria-checked=\"true\"] {\n --tw-border-opacity: 1;\n border-color: hsl(var(--su) / var(--tw-border-opacity));\n --tw-bg-opacity: 1;\n background-color: hsl(var(--su) / var(--tw-bg-opacity));\n --tw-text-opacity: 1;\n color: hsl(var(--suc) / var(--tw-text-opacity))\n}\n.checkbox:disabled {\n cursor: not-allowed;\n border-color: transparent;\n --tw-bg-opacity: 1;\n background-color: hsl(var(--bc) / var(--tw-bg-opacity));\n opacity: 0.2\n}\n@keyframes checkmark {\n 0% {\n background-position-y: 5px\n }\n 50% {\n background-position-y: -2px\n }\n 100% {\n background-position-y: 0\n }\n}\n[dir=\"rtl\"] .checkbox:checked,\n [dir=\"rtl\"] .checkbox[checked=\"true\"],\n [dir=\"rtl\"] .checkbox[aria-checked=\"true\"] {\n background-image: linear-gradient(45deg, transparent 65%, hsl(var(--chkbg)) 65.99%),\n linear-gradient(-45deg, transparent 75%, hsl(var(--chkbg)) 75.99%),\n linear-gradient(45deg, hsl(var(--chkbg)) 40%, transparent 40.99%),\n linear-gradient(\n -45deg,\n hsl(var(--chkbg)) 30%,\n hsl(var(--chkfg)) 30.99%,\n hsl(var(--chkfg)) 40%,\n transparent 40.99%\n ),\n linear-gradient(45deg, hsl(var(--chkfg)) 50%, hsl(var(--chkbg)) 50.99%)\n}\n.divider:before {\n background-color: hsl(var(--bc) / var(--tw-bg-opacity));\n --tw-bg-opacity: 0.1\n}\n.divider:after {\n background-color: hsl(var(--bc) / var(--tw-bg-opacity));\n --tw-bg-opacity: 0.1\n}\n.divider:not(:empty) {\n gap: 1rem\n}\n.label-text {\n font-size: 0.875rem;\n line-height: 1.25rem;\n --tw-text-opacity: 1;\n color: hsl(var(--bc) / var(--tw-text-opacity))\n}\n.input[list]::-webkit-calendar-picker-indicator {\n line-height: 1em\n}\n.input:focus {\n outline-style: solid;\n outline-width: 2px;\n outline-offset: 2px;\n outline-color: hsl(var(--bc) / 0.2)\n}\n.input-disabled,\n .input:disabled,\n .input[disabled] {\n cursor: not-allowed;\n --tw-border-opacity: 1;\n border-color: hsl(var(--b2) / var(--tw-border-opacity));\n --tw-bg-opacity: 1;\n background-color: hsl(var(--b2) / var(--tw-bg-opacity));\n --tw-text-opacity: 0.2\n}\n.input-disabled::-moz-placeholder, .input:disabled::-moz-placeholder, .input[disabled]::-moz-placeholder {\n color: hsl(var(--bc) / var(--tw-placeholder-opacity));\n --tw-placeholder-opacity: 0.2\n}\n.input-disabled::placeholder,\n .input:disabled::placeholder,\n .input[disabled]::placeholder {\n color: hsl(var(--bc) / var(--tw-placeholder-opacity));\n --tw-placeholder-opacity: 0.2\n}\n.join > :where(*:not(:first-child)) {\n margin-top: 0px;\n margin-bottom: 0px;\n margin-left: -1px\n}\n.join-item:focus {\n isolation: isolate\n}\n.link:focus {\n outline: 2px solid transparent;\n outline-offset: 2px\n}\n.link:focus-visible {\n outline: 2px solid currentColor;\n outline-offset: 2px\n}\n@keyframes modal-pop {\n 0% {\n opacity: 0\n }\n}\n@keyframes progress-loading {\n 50% {\n background-position-x: -115%\n }\n}\n@keyframes radiomark {\n 0% {\n box-shadow: 0 0 0 12px hsl(var(--b1)) inset, 0 0 0 12px hsl(var(--b1)) inset\n }\n 50% {\n box-shadow: 0 0 0 3px hsl(var(--b1)) inset, 0 0 0 3px hsl(var(--b1)) inset\n }\n 100% {\n box-shadow: 0 0 0 4px hsl(var(--b1)) inset, 0 0 0 4px hsl(var(--b1)) inset\n }\n}\n@keyframes rating-pop {\n 0% {\n transform: translateY(-0.125em)\n }\n 40% {\n transform: translateY(-0.125em)\n }\n 100% {\n transform: translateY(0)\n }\n}\n.select:focus {\n outline-style: solid;\n outline-width: 2px;\n outline-offset: 2px;\n outline-color: hsl(var(--bc) / 0.2)\n}\n.select-primary {\n --tw-border-opacity: 1;\n border-color: hsl(var(--p) / var(--tw-border-opacity))\n}\n.select-primary:focus {\n outline-color: hsl(var(--p) / 1)\n}\n.select-success {\n --tw-border-opacity: 1;\n border-color: hsl(var(--su) / var(--tw-border-opacity))\n}\n.select-success:focus {\n outline-color: hsl(var(--su) / 1)\n}\n.select-disabled,\n .select:disabled,\n .select[disabled] {\n cursor: not-allowed;\n --tw-border-opacity: 1;\n border-color: hsl(var(--b2) / var(--tw-border-opacity));\n --tw-bg-opacity: 1;\n background-color: hsl(var(--b2) / var(--tw-bg-opacity));\n --tw-text-opacity: 0.2\n}\n.select-disabled::-moz-placeholder, .select:disabled::-moz-placeholder, .select[disabled]::-moz-placeholder {\n color: hsl(var(--bc) / var(--tw-placeholder-opacity));\n --tw-placeholder-opacity: 0.2\n}\n.select-disabled::placeholder,\n .select:disabled::placeholder,\n .select[disabled]::placeholder {\n color: hsl(var(--bc) / var(--tw-placeholder-opacity));\n --tw-placeholder-opacity: 0.2\n}\n.select-multiple,\n .select[multiple],\n .select[size].select:not([size=\"1\"]) {\n background-image: none;\n padding-right: 1rem\n}\n[dir=\"rtl\"] .select {\n background-position: calc(0% + 12px) calc(1px + 50%), calc(0% + 16px) calc(1px + 50%)\n}\n@keyframes toast-pop {\n 0% {\n transform: scale(0.9);\n opacity: 0\n }\n 100% {\n transform: scale(1);\n opacity: 1\n }\n}\n.tooltip.tooltip-primary {\n --tooltip-color: hsl(var(--p));\n --tooltip-text-color: hsl(var(--pc))\n}\n.tooltip.tooltip-secondary {\n --tooltip-color: hsl(var(--s));\n --tooltip-text-color: hsl(var(--sc))\n}\n.tooltip.tooltip-accent {\n --tooltip-color: hsl(var(--a));\n --tooltip-text-color: hsl(var(--ac))\n}\n.tooltip.tooltip-info {\n --tooltip-color: hsl(var(--in));\n --tooltip-text-color: hsl(var(--inc))\n}\n.tooltip.tooltip-success {\n --tooltip-color: hsl(var(--su));\n --tooltip-text-color: hsl(var(--suc))\n}\n.tooltip.tooltip-warning {\n --tooltip-color: hsl(var(--wa));\n --tooltip-text-color: hsl(var(--wac))\n}\n.tooltip.tooltip-error {\n --tooltip-color: hsl(var(--er));\n --tooltip-text-color: hsl(var(--erc))\n}\n.join.join-vertical {\n flex-direction: column\n}\n.join.join-vertical .join-item:first-child:not(:last-child),\n .join.join-vertical *:first-child:not(:last-child) .join-item {\n border-bottom-left-radius: 0;\n border-bottom-right-radius: 0;\n border-top-left-radius: inherit;\n border-top-right-radius: inherit\n}\n.join.join-vertical .join-item:last-child:not(:first-child),\n .join.join-vertical *:last-child:not(:first-child) .join-item {\n border-top-left-radius: 0;\n border-top-right-radius: 0;\n border-bottom-left-radius: inherit;\n border-bottom-right-radius: inherit\n}\n.join.join-horizontal {\n flex-direction: row\n}\n.join.join-horizontal .join-item:first-child:not(:last-child),\n .join.join-horizontal *:first-child:not(:last-child) .join-item {\n border-bottom-right-radius: 0;\n border-top-right-radius: 0;\n border-bottom-left-radius: inherit;\n border-top-left-radius: inherit\n}\n.join.join-horizontal .join-item:last-child:not(:first-child),\n .join.join-horizontal *:last-child:not(:first-child) .join-item {\n border-bottom-left-radius: 0;\n border-top-left-radius: 0;\n border-bottom-right-radius: inherit;\n border-top-right-radius: inherit\n}\n.kbd-lg {\n padding-left: 1rem;\n padding-right: 1rem;\n font-size: 1.125rem;\n line-height: 1.75rem;\n min-height: 2.5em;\n min-width: 2.5em\n}\n.tooltip {\n position: relative;\n display: inline-block;\n --tooltip-offset: calc(100% + 1px + var(--tooltip-tail, 0px))\n}\n.tooltip:before {\n position: absolute;\n pointer-events: none;\n z-index: 1;\n content: var(--tw-content);\n --tw-content: attr(data-tip)\n}\n.tooltip:before, .tooltip-top:before {\n transform: translateX(-50%);\n top: auto;\n left: 50%;\n right: auto;\n bottom: var(--tooltip-offset)\n}\n.tooltip-bottom:before {\n transform: translateX(-50%);\n top: var(--tooltip-offset);\n left: 50%;\n right: auto;\n bottom: auto\n}\n.join.join-vertical > :where(*:not(:first-child)) {\n margin-left: 0px;\n margin-right: 0px;\n margin-top: -1px\n}\n.join.join-horizontal > :where(*:not(:first-child)) {\n margin-top: 0px;\n margin-bottom: 0px;\n margin-left: -1px\n}\n.tooltip {\n position: relative;\n display: inline-block;\n text-align: center;\n --tooltip-tail: 0.1875rem;\n --tooltip-color: hsl(var(--n));\n --tooltip-text-color: hsl(var(--nc));\n --tooltip-tail-offset: calc(100% + 0.0625rem - var(--tooltip-tail))\n}\n.tooltip:before,\n.tooltip:after {\n opacity: 0;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, -webkit-backdrop-filter;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;\n transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter, -webkit-backdrop-filter;\n transition-delay: 100ms;\n transition-duration: 200ms;\n transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1)\n}\n.tooltip:after {\n position: absolute;\n content: \"\";\n border-style: solid;\n border-width: var(--tooltip-tail, 0);\n width: 0;\n height: 0;\n display: block\n}\n.tooltip:before {\n max-width: 20rem;\n border-radius: 0.25rem;\n padding-left: 0.5rem;\n padding-right: 0.5rem;\n padding-top: 0.25rem;\n padding-bottom: 0.25rem;\n font-size: 0.875rem;\n line-height: 1.25rem;\n background-color: var(--tooltip-color);\n color: var(--tooltip-text-color);\n width: -moz-max-content;\n width: max-content\n}\n.tooltip.tooltip-open:before,\n.tooltip.tooltip-open:after,\n.tooltip:hover:before,\n.tooltip:hover:after {\n opacity: 1;\n transition-delay: 75ms\n}\n.tooltip:has(:focus-visible):after,\n.tooltip:has(:focus-visible):before {\n opacity: 1;\n transition-delay: 75ms\n}\n.tooltip:not([data-tip]):hover:before,\n.tooltip:not([data-tip]):hover:after {\n visibility: hidden;\n opacity: 0\n}\n.tooltip:after, .tooltip-top:after {\n transform: translateX(-50%);\n border-color: var(--tooltip-color) transparent transparent transparent;\n top: auto;\n left: 50%;\n right: auto;\n bottom: var(--tooltip-tail-offset)\n}\n.tooltip-bottom:after {\n transform: translateX(-50%);\n border-color: transparent transparent var(--tooltip-color) transparent;\n top: var(--tooltip-tail-offset);\n left: 50%;\n right: auto;\n bottom: auto\n}\n.absolute {\n position: absolute\n}\n.relative {\n position: relative\n}\n.bottom-2 {\n bottom: 0.5rem\n}\n.left-2 {\n left: 0.5rem\n}\n.left-2\\.5 {\n left: 0.625rem\n}\n.right-2 {\n right: 0.5rem\n}\n.top-2 {\n top: 0.5rem\n}\n.top-2\\.5 {\n top: 0.625rem\n}\n.mx-auto {\n margin-left: auto;\n margin-right: auto\n}\n.mb-2 {\n margin-bottom: 0.5rem\n}\n.mt-8 {\n margin-top: 2rem\n}\n.inline-block {\n display: inline-block\n}\n.flex {\n display: flex\n}\n.inline-flex {\n display: inline-flex\n}\n.hidden {\n display: none\n}\n.w-4\\/5 {\n width: 80%\n}\n.w-full {\n width: 100%\n}\n.max-w-xs {\n max-width: 20rem\n}\n.flex-1 {\n flex: 1 1 0%\n}\n.select-all {\n -webkit-user-select: all;\n -moz-user-select: all;\n user-select: all\n}\n.flex-row {\n flex-direction: row\n}\n.flex-col {\n flex-direction: column\n}\n.flex-wrap {\n flex-wrap: wrap\n}\n.items-end {\n align-items: flex-end\n}\n.items-center {\n align-items: center\n}\n.justify-start {\n justify-content: flex-start\n}\n.justify-center {\n justify-content: center\n}\n.gap-2 {\n gap: 0.5rem\n}\n.gap-2\\.5 {\n gap: 0.625rem\n}\n.gap-4 {\n gap: 1rem\n}\n.gap-8 {\n gap: 2rem\n}\n.overflow-hidden {\n overflow: hidden\n}\n.whitespace-nowrap {\n white-space: nowrap\n}\n.rounded {\n border-radius: 0.25rem\n}\n.rounded-md {\n border-radius: 0.375rem\n}\n.rounded-sm {\n border-radius: 0.125rem\n}\n.rounded-xl {\n border-radius: 0.75rem\n}\n.border {\n border-width: 1px\n}\n.border-l-0 {\n border-left-width: 0px\n}\n.border-l-8 {\n border-left-width: 8px\n}\n.border-solid {\n border-style: solid\n}\n.border-base-200 {\n --tw-border-opacity: 1;\n border-color: hsl(var(--b2) / var(--tw-border-opacity))\n}\n.border-primary {\n --tw-border-opacity: 1;\n border-color: hsl(var(--p) / var(--tw-border-opacity))\n}\n.border-success {\n --tw-border-opacity: 1;\n border-color: hsl(var(--su) / var(--tw-border-opacity))\n}\n.border-l-\\[\\#de624e\\] {\n --tw-border-opacity: 1;\n border-left-color: rgb(222 98 78 / var(--tw-border-opacity))\n}\n.bg-\\[\\#ec7259\\] {\n --tw-bg-opacity: 1;\n background-color: rgb(236 114 89 / var(--tw-bg-opacity))\n}\n.bg-base-100 {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--b1) / var(--tw-bg-opacity))\n}\n.bg-base-200 {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--b2) / var(--tw-bg-opacity))\n}\n.bg-base-300 {\n --tw-bg-opacity: 1;\n background-color: hsl(var(--b3) / var(--tw-bg-opacity))\n}\n.p-1 {\n padding: 0.25rem\n}\n.p-1\\.5 {\n padding: 0.375rem\n}\n.p-5 {\n padding: 1.25rem\n}\n.px-2 {\n padding-left: 0.5rem;\n padding-right: 0.5rem\n}\n.px-4 {\n padding-left: 1rem;\n padding-right: 1rem\n}\n.py-8 {\n padding-top: 2rem;\n padding-bottom: 2rem\n}\n.pb-4 {\n padding-bottom: 1rem\n}\n.pl-1 {\n padding-left: 0.25rem\n}\n.pl-10 {\n padding-left: 2.5rem\n}\n.font-sans {\n font-family: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Helvetica Neue\", Arial, \"Noto Sans\", sans-serif, \"Apple Color Emoji\", \"Segoe UI Emoji\", \"Segoe UI Symbol\", \"Noto Color Emoji\"\n}\n.text-8xl {\n font-size: 6rem;\n line-height: 1\n}\n.text-sm {\n font-size: 0.875rem;\n line-height: 1.25rem\n}\n.text-xs {\n font-size: 0.75rem;\n line-height: 1rem\n}\n.font-bold {\n font-weight: 700\n}\n.leading-10 {\n line-height: 2.5rem\n}\n.text-white {\n --tw-text-opacity: 1;\n color: rgb(255 255 255 / var(--tw-text-opacity))\n}\n.opacity-50 {\n opacity: 0.5\n}\n.opacity-60 {\n opacity: 0.6\n}\n.opacity-70 {\n opacity: 0.7\n}\n.shadow {\n --tw-shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);\n --tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)\n}\n.shadow-2xl {\n --tw-shadow: 0 25px 50px -12px rgb(0 0 0 / 0.25);\n --tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);\n box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)\n}\n.filter {\n filter: var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)\n}\n.group:hover .group-hover\\:inline {\n display: inline\n}\n";
|
|
1342
|
+
styleInject(css_248z);
|
|
1343
|
+
|
|
1344
|
+
const $RAW = Symbol("store-raw"),
|
|
1345
|
+
$NODE = Symbol("store-node");
|
|
1346
|
+
function wrap$1(value) {
|
|
1347
|
+
let p = value[$PROXY];
|
|
1348
|
+
if (!p) {
|
|
1349
|
+
Object.defineProperty(value, $PROXY, {
|
|
1350
|
+
value: p = new Proxy(value, proxyTraps$1)
|
|
1351
|
+
});
|
|
1352
|
+
if (!Array.isArray(value)) {
|
|
1353
|
+
const keys = Object.keys(value),
|
|
1354
|
+
desc = Object.getOwnPropertyDescriptors(value);
|
|
1355
|
+
for (let i = 0, l = keys.length; i < l; i++) {
|
|
1356
|
+
const prop = keys[i];
|
|
1357
|
+
if (desc[prop].get) {
|
|
1358
|
+
Object.defineProperty(value, prop, {
|
|
1359
|
+
enumerable: desc[prop].enumerable,
|
|
1360
|
+
get: desc[prop].get.bind(p)
|
|
1361
|
+
});
|
|
1362
|
+
}
|
|
1363
|
+
}
|
|
1364
|
+
}
|
|
1365
|
+
}
|
|
1366
|
+
return p;
|
|
1367
|
+
}
|
|
1368
|
+
function isWrappable(obj) {
|
|
1369
|
+
let proto;
|
|
1370
|
+
return obj != null && typeof obj === "object" && (obj[$PROXY] || !(proto = Object.getPrototypeOf(obj)) || proto === Object.prototype || Array.isArray(obj));
|
|
1371
|
+
}
|
|
1372
|
+
function unwrap(item, set = new Set()) {
|
|
1373
|
+
let result, unwrapped, v, prop;
|
|
1374
|
+
if (result = item != null && item[$RAW]) return result;
|
|
1375
|
+
if (!isWrappable(item) || set.has(item)) return item;
|
|
1376
|
+
if (Array.isArray(item)) {
|
|
1377
|
+
if (Object.isFrozen(item)) item = item.slice(0);else set.add(item);
|
|
1378
|
+
for (let i = 0, l = item.length; i < l; i++) {
|
|
1379
|
+
v = item[i];
|
|
1380
|
+
if ((unwrapped = unwrap(v, set)) !== v) item[i] = unwrapped;
|
|
1381
|
+
}
|
|
1382
|
+
} else {
|
|
1383
|
+
if (Object.isFrozen(item)) item = Object.assign({}, item);else set.add(item);
|
|
1384
|
+
const keys = Object.keys(item),
|
|
1385
|
+
desc = Object.getOwnPropertyDescriptors(item);
|
|
1386
|
+
for (let i = 0, l = keys.length; i < l; i++) {
|
|
1387
|
+
prop = keys[i];
|
|
1388
|
+
if (desc[prop].get) continue;
|
|
1389
|
+
v = item[prop];
|
|
1390
|
+
if ((unwrapped = unwrap(v, set)) !== v) item[prop] = unwrapped;
|
|
1391
|
+
}
|
|
1392
|
+
}
|
|
1393
|
+
return item;
|
|
1394
|
+
}
|
|
1395
|
+
function getDataNodes(target) {
|
|
1396
|
+
let nodes = target[$NODE];
|
|
1397
|
+
if (!nodes) Object.defineProperty(target, $NODE, {
|
|
1398
|
+
value: nodes = Object.create(null)
|
|
1399
|
+
});
|
|
1400
|
+
return nodes;
|
|
1401
|
+
}
|
|
1402
|
+
function getDataNode(nodes, property, value) {
|
|
1403
|
+
return nodes[property] || (nodes[property] = createDataNode(value));
|
|
1404
|
+
}
|
|
1405
|
+
function proxyDescriptor$1(target, property) {
|
|
1406
|
+
const desc = Reflect.getOwnPropertyDescriptor(target, property);
|
|
1407
|
+
if (!desc || desc.get || !desc.configurable || property === $PROXY || property === $NODE) return desc;
|
|
1408
|
+
delete desc.value;
|
|
1409
|
+
delete desc.writable;
|
|
1410
|
+
desc.get = () => target[$PROXY][property];
|
|
1411
|
+
return desc;
|
|
1412
|
+
}
|
|
1413
|
+
function trackSelf(target) {
|
|
1414
|
+
if (getListener()) {
|
|
1415
|
+
const nodes = getDataNodes(target);
|
|
1416
|
+
(nodes._ || (nodes._ = createDataNode()))();
|
|
1417
|
+
}
|
|
1418
|
+
}
|
|
1419
|
+
function ownKeys(target) {
|
|
1420
|
+
trackSelf(target);
|
|
1421
|
+
return Reflect.ownKeys(target);
|
|
1422
|
+
}
|
|
1423
|
+
function createDataNode(value) {
|
|
1424
|
+
const [s, set] = createSignal(value, {
|
|
1425
|
+
equals: false,
|
|
1426
|
+
internal: true
|
|
1427
|
+
});
|
|
1428
|
+
s.$ = set;
|
|
1429
|
+
return s;
|
|
1430
|
+
}
|
|
1431
|
+
const proxyTraps$1 = {
|
|
1432
|
+
get(target, property, receiver) {
|
|
1433
|
+
if (property === $RAW) return target;
|
|
1434
|
+
if (property === $PROXY) return receiver;
|
|
1435
|
+
if (property === $TRACK) {
|
|
1436
|
+
trackSelf(target);
|
|
1437
|
+
return receiver;
|
|
1438
|
+
}
|
|
1439
|
+
const nodes = getDataNodes(target);
|
|
1440
|
+
const tracked = nodes[property];
|
|
1441
|
+
let value = tracked ? tracked() : target[property];
|
|
1442
|
+
if (property === $NODE || property === "__proto__") return value;
|
|
1443
|
+
if (!tracked) {
|
|
1444
|
+
const desc = Object.getOwnPropertyDescriptor(target, property);
|
|
1445
|
+
if (getListener() && (typeof value !== "function" || target.hasOwnProperty(property)) && !(desc && desc.get)) value = getDataNode(nodes, property, value)();
|
|
1446
|
+
}
|
|
1447
|
+
return isWrappable(value) ? wrap$1(value) : value;
|
|
1448
|
+
},
|
|
1449
|
+
has(target, property) {
|
|
1450
|
+
if (property === $RAW || property === $PROXY || property === $TRACK || property === $NODE || property === "__proto__") return true;
|
|
1451
|
+
this.get(target, property, target);
|
|
1452
|
+
return property in target;
|
|
1453
|
+
},
|
|
1454
|
+
set() {
|
|
1455
|
+
return true;
|
|
1456
|
+
},
|
|
1457
|
+
deleteProperty() {
|
|
1458
|
+
return true;
|
|
1459
|
+
},
|
|
1460
|
+
ownKeys: ownKeys,
|
|
1461
|
+
getOwnPropertyDescriptor: proxyDescriptor$1
|
|
1462
|
+
};
|
|
1463
|
+
function setProperty(state, property, value, deleting = false) {
|
|
1464
|
+
if (!deleting && state[property] === value) return;
|
|
1465
|
+
const prev = state[property],
|
|
1466
|
+
len = state.length;
|
|
1467
|
+
if (value === undefined) delete state[property];else state[property] = value;
|
|
1468
|
+
let nodes = getDataNodes(state),
|
|
1469
|
+
node;
|
|
1470
|
+
if (node = getDataNode(nodes, property, prev)) node.$(() => value);
|
|
1471
|
+
if (Array.isArray(state) && state.length !== len) {
|
|
1472
|
+
for (let i = state.length; i < len; i++) (node = nodes[i]) && node.$();
|
|
1473
|
+
(node = getDataNode(nodes, "length", len)) && node.$(state.length);
|
|
1474
|
+
}
|
|
1475
|
+
(node = nodes._) && node.$();
|
|
1476
|
+
}
|
|
1477
|
+
function mergeStoreNode(state, value) {
|
|
1478
|
+
const keys = Object.keys(value);
|
|
1479
|
+
for (let i = 0; i < keys.length; i += 1) {
|
|
1480
|
+
const key = keys[i];
|
|
1481
|
+
setProperty(state, key, value[key]);
|
|
1482
|
+
}
|
|
1483
|
+
}
|
|
1484
|
+
function updateArray(current, next) {
|
|
1485
|
+
if (typeof next === "function") next = next(current);
|
|
1486
|
+
next = unwrap(next);
|
|
1487
|
+
if (Array.isArray(next)) {
|
|
1488
|
+
if (current === next) return;
|
|
1489
|
+
let i = 0,
|
|
1490
|
+
len = next.length;
|
|
1491
|
+
for (; i < len; i++) {
|
|
1492
|
+
const value = next[i];
|
|
1493
|
+
if (current[i] !== value) setProperty(current, i, value);
|
|
1494
|
+
}
|
|
1495
|
+
setProperty(current, "length", len);
|
|
1496
|
+
} else mergeStoreNode(current, next);
|
|
1497
|
+
}
|
|
1498
|
+
function updatePath(current, path, traversed = []) {
|
|
1499
|
+
let part,
|
|
1500
|
+
prev = current;
|
|
1501
|
+
if (path.length > 1) {
|
|
1502
|
+
part = path.shift();
|
|
1503
|
+
const partType = typeof part,
|
|
1504
|
+
isArray = Array.isArray(current);
|
|
1505
|
+
if (Array.isArray(part)) {
|
|
1506
|
+
for (let i = 0; i < part.length; i++) {
|
|
1507
|
+
updatePath(current, [part[i]].concat(path), traversed);
|
|
1508
|
+
}
|
|
1509
|
+
return;
|
|
1510
|
+
} else if (isArray && partType === "function") {
|
|
1511
|
+
for (let i = 0; i < current.length; i++) {
|
|
1512
|
+
if (part(current[i], i)) updatePath(current, [i].concat(path), traversed);
|
|
1513
|
+
}
|
|
1514
|
+
return;
|
|
1515
|
+
} else if (isArray && partType === "object") {
|
|
1516
|
+
const {
|
|
1517
|
+
from = 0,
|
|
1518
|
+
to = current.length - 1,
|
|
1519
|
+
by = 1
|
|
1520
|
+
} = part;
|
|
1521
|
+
for (let i = from; i <= to; i += by) {
|
|
1522
|
+
updatePath(current, [i].concat(path), traversed);
|
|
1523
|
+
}
|
|
1524
|
+
return;
|
|
1525
|
+
} else if (path.length > 1) {
|
|
1526
|
+
updatePath(current[part], path, [part].concat(traversed));
|
|
1527
|
+
return;
|
|
1528
|
+
}
|
|
1529
|
+
prev = current[part];
|
|
1530
|
+
traversed = [part].concat(traversed);
|
|
1531
|
+
}
|
|
1532
|
+
let value = path[0];
|
|
1533
|
+
if (typeof value === "function") {
|
|
1534
|
+
value = value(prev, traversed);
|
|
1535
|
+
if (value === prev) return;
|
|
1536
|
+
}
|
|
1537
|
+
if (part === undefined && value == undefined) return;
|
|
1538
|
+
value = unwrap(value);
|
|
1539
|
+
if (part === undefined || isWrappable(prev) && isWrappable(value) && !Array.isArray(value)) {
|
|
1540
|
+
mergeStoreNode(prev, value);
|
|
1541
|
+
} else setProperty(current, part, value);
|
|
1542
|
+
}
|
|
1543
|
+
function createStore(...[store, options]) {
|
|
1544
|
+
const unwrappedStore = unwrap(store || {});
|
|
1545
|
+
const isArray = Array.isArray(unwrappedStore);
|
|
1546
|
+
const wrappedStore = wrap$1(unwrappedStore);
|
|
1547
|
+
function setStore(...args) {
|
|
1548
|
+
batch(() => {
|
|
1549
|
+
isArray && args.length === 1 ? updateArray(unwrappedStore, args[0]) : updatePath(unwrappedStore, args);
|
|
1550
|
+
});
|
|
1551
|
+
}
|
|
1552
|
+
return [wrappedStore, setStore];
|
|
1553
|
+
}
|
|
1554
|
+
|
|
1555
|
+
var framework = {
|
|
1556
|
+
label: "Framework",
|
|
1557
|
+
inview: true,
|
|
1558
|
+
features: [
|
|
1559
|
+
{
|
|
1560
|
+
label: "SolidJS ★",
|
|
1561
|
+
value: "solid",
|
|
1562
|
+
selected: true
|
|
1563
|
+
},
|
|
1564
|
+
{
|
|
1565
|
+
label: "React - Coming Soon",
|
|
1566
|
+
value: "react",
|
|
1567
|
+
disabled: true
|
|
1568
|
+
},
|
|
1569
|
+
{
|
|
1570
|
+
label: "Vue - Coming Soon",
|
|
1571
|
+
value: "vue",
|
|
1572
|
+
disabled: true
|
|
1573
|
+
}
|
|
1574
|
+
]
|
|
1575
|
+
};
|
|
1576
|
+
var auth = {
|
|
1577
|
+
label: "Auth",
|
|
1578
|
+
features: [
|
|
1579
|
+
{
|
|
1580
|
+
label: "AuthJS ★",
|
|
1581
|
+
value: "authjs",
|
|
1582
|
+
selected: true
|
|
1583
|
+
},
|
|
1584
|
+
{
|
|
1585
|
+
label: "Auth0 - Coming Soon",
|
|
1586
|
+
value: "auth0",
|
|
1587
|
+
disabled: true
|
|
1588
|
+
},
|
|
1589
|
+
{
|
|
1590
|
+
label: "Firebase - Coming Soon",
|
|
1591
|
+
value: "firebase",
|
|
1592
|
+
disabled: true
|
|
1593
|
+
}
|
|
1594
|
+
]
|
|
1595
|
+
};
|
|
1596
|
+
var rpc = {
|
|
1597
|
+
label: "RPC",
|
|
1598
|
+
features: [
|
|
1599
|
+
{
|
|
1600
|
+
label: "Telefunc ★",
|
|
1601
|
+
value: "telefunc",
|
|
1602
|
+
selected: true
|
|
1603
|
+
},
|
|
1604
|
+
{
|
|
1605
|
+
label: "tRPC - Coming Soon",
|
|
1606
|
+
value: "trpc",
|
|
1607
|
+
disabled: true
|
|
1608
|
+
}
|
|
1609
|
+
]
|
|
1610
|
+
};
|
|
1611
|
+
var server = {
|
|
1612
|
+
label: "Server",
|
|
1613
|
+
features: [
|
|
1614
|
+
{
|
|
1615
|
+
label: "Hattip ★",
|
|
1616
|
+
value: "hattip",
|
|
1617
|
+
selected: true
|
|
1618
|
+
},
|
|
1619
|
+
{
|
|
1620
|
+
label: "Express",
|
|
1621
|
+
value: "express"
|
|
1622
|
+
}
|
|
1623
|
+
]
|
|
1624
|
+
};
|
|
1625
|
+
var uikit = {
|
|
1626
|
+
label: "CSS",
|
|
1627
|
+
features: [
|
|
1628
|
+
{
|
|
1629
|
+
label: "TailwindCSS",
|
|
1630
|
+
value: "tailwindcss",
|
|
1631
|
+
selected: true
|
|
1632
|
+
},
|
|
1633
|
+
{
|
|
1634
|
+
label: "UnoCSS - Coming Soon",
|
|
1635
|
+
value: "unocss",
|
|
1636
|
+
disabled: true
|
|
1637
|
+
},
|
|
1638
|
+
{
|
|
1639
|
+
label: "MUI - Coming Soon",
|
|
1640
|
+
value: "mui",
|
|
1641
|
+
disabled: true
|
|
1642
|
+
}
|
|
1643
|
+
]
|
|
1644
|
+
};
|
|
1645
|
+
var db = {
|
|
1646
|
+
label: "Database",
|
|
1647
|
+
features: [
|
|
1648
|
+
{
|
|
1649
|
+
label: "Prisma",
|
|
1650
|
+
value: "prisma",
|
|
1651
|
+
selected: true
|
|
1652
|
+
},
|
|
1653
|
+
{
|
|
1654
|
+
label: "EdgeDB",
|
|
1655
|
+
value: "edgedb"
|
|
1656
|
+
}
|
|
1657
|
+
]
|
|
1658
|
+
};
|
|
1659
|
+
var hosting = {
|
|
1660
|
+
disabled: true,
|
|
1661
|
+
label: "Hosting",
|
|
1662
|
+
features: [
|
|
1663
|
+
{
|
|
1664
|
+
label: "Coming Soon",
|
|
1665
|
+
selected: true
|
|
1666
|
+
},
|
|
1667
|
+
{
|
|
1668
|
+
label: "Vercel - Coming Soon",
|
|
1669
|
+
value: "vercel",
|
|
1670
|
+
disabled: true
|
|
1671
|
+
},
|
|
1672
|
+
{
|
|
1673
|
+
label: "Netlify - Coming Soon",
|
|
1674
|
+
value: "netlify",
|
|
1675
|
+
disabled: true
|
|
1676
|
+
}
|
|
1677
|
+
]
|
|
1678
|
+
};
|
|
1679
|
+
var analytics = {
|
|
1680
|
+
label: "Analytics",
|
|
1681
|
+
features: [
|
|
1682
|
+
{
|
|
1683
|
+
label: "Plausible.io",
|
|
1684
|
+
value: "plausible.io",
|
|
1685
|
+
selected: true
|
|
1686
|
+
},
|
|
1687
|
+
{
|
|
1688
|
+
label: "Google Analytics - Coming Soon",
|
|
1689
|
+
value: "google-analytics",
|
|
1690
|
+
disabled: true
|
|
1691
|
+
},
|
|
1692
|
+
{
|
|
1693
|
+
label: "Segment - Coming Soon",
|
|
1694
|
+
value: "segment",
|
|
1695
|
+
disabled: true
|
|
1696
|
+
}
|
|
1697
|
+
]
|
|
1698
|
+
};
|
|
1699
|
+
var error = {
|
|
1700
|
+
disabled: true,
|
|
1701
|
+
label: "Error tracking",
|
|
1702
|
+
features: [
|
|
1703
|
+
{
|
|
1704
|
+
label: "Coming Soon",
|
|
1705
|
+
selected: true
|
|
1706
|
+
},
|
|
1707
|
+
{
|
|
1708
|
+
label: "Sentry - Coming Soon",
|
|
1709
|
+
value: "sentry",
|
|
1710
|
+
disabled: true
|
|
1711
|
+
},
|
|
1712
|
+
{
|
|
1713
|
+
label: "Logrocket - Coming Soon",
|
|
1714
|
+
value: "logrocket",
|
|
1715
|
+
disabled: true
|
|
1716
|
+
}
|
|
1717
|
+
]
|
|
1718
|
+
};
|
|
1719
|
+
var features = {
|
|
1720
|
+
framework: framework,
|
|
1721
|
+
auth: auth,
|
|
1722
|
+
rpc: rpc,
|
|
1723
|
+
server: server,
|
|
1724
|
+
uikit: uikit,
|
|
1725
|
+
db: db,
|
|
1726
|
+
hosting: hosting,
|
|
1727
|
+
analytics: analytics,
|
|
1728
|
+
error: error
|
|
1729
|
+
};
|
|
1730
|
+
|
|
1731
|
+
function filteredObject(obj, filter) {
|
|
1732
|
+
return Object.keys(obj).reduce(function (r, e) {
|
|
1733
|
+
if (filter(obj, e)) r[e] = obj[e];
|
|
1734
|
+
return r;
|
|
1735
|
+
}, {});
|
|
1736
|
+
}
|
|
1737
|
+
function initStore() {
|
|
1738
|
+
const [currentFeatures, setCurrentFeatures] = createStore(features);
|
|
1739
|
+
const inViewFeatures = createMemo(() => filteredObject(currentFeatures, (o, k) => Boolean(o[k].inview)));
|
|
1740
|
+
const drawerFeatures = createMemo(() => filteredObject(currentFeatures, (o, k) => !o[k].inview));
|
|
1741
|
+
function moveFeature(k) {
|
|
1742
|
+
setCurrentFeatures(k, "inview", val => !val);
|
|
1743
|
+
}
|
|
1744
|
+
function selectFeature(k, value) {
|
|
1745
|
+
setCurrentFeatures(k, "features", fs => {
|
|
1746
|
+
return fs.map(f => ({
|
|
1747
|
+
...f,
|
|
1748
|
+
selected: value ? value === f.value : features[k].features.find(f2 => f2.value === f.value)?.selected
|
|
1749
|
+
}));
|
|
1750
|
+
});
|
|
1751
|
+
}
|
|
1752
|
+
const featuresValues = createMemo(() => Object.assign({}, ...Object.entries(inViewFeatures()).map(([ns, fs]) => ({
|
|
1753
|
+
[ns]: fs.features.find(f => f.selected)?.value
|
|
1754
|
+
}))));
|
|
1755
|
+
return {
|
|
1756
|
+
inViewFeatures,
|
|
1757
|
+
drawerFeatures,
|
|
1758
|
+
moveFeature,
|
|
1759
|
+
selectFeature,
|
|
1760
|
+
featuresValues,
|
|
1761
|
+
currentFeatures
|
|
1762
|
+
};
|
|
1763
|
+
}
|
|
1764
|
+
const StoreContext = createContext(void 0);
|
|
1765
|
+
function StoreProvider(props) {
|
|
1766
|
+
const store = initStore();
|
|
1767
|
+
return createComponent(StoreContext.Provider, {
|
|
1768
|
+
value: store,
|
|
1769
|
+
get children() {
|
|
1770
|
+
return props.children;
|
|
1771
|
+
}
|
|
1772
|
+
});
|
|
1773
|
+
}
|
|
1774
|
+
|
|
1775
|
+
var img = "data:image/svg+xml,%3c%3fxml version='1.0' encoding='utf-8'%3f%3e%3csvg viewBox='0 0 512 512' width='512' height='512' xmlns='http://www.w3.org/2000/svg'%3e %3cdefs%3e %3clinearGradient id='paint1_linear' x1='194.651' y1='8.81818' x2='236.076' y2='292.989' gradientUnits='userSpaceOnUse' gradientTransform='matrix(1.217517%2c 0%2c 0%2c 1.217517%2c -20.691875%2c 43.730177)'%3e %3cstop stop-color='%23FFEA83'/%3e %3cstop offset='0.0833' stop-color='%23FFDD35'/%3e %3cstop offset='1' stop-color='%23FFA800'/%3e %3c/linearGradient%3e %3c/defs%3e %3cg stroke-width='2.00' fill='none' stroke-linecap='butt'%3e %3cpath stroke='%23e46a54' vector-effect='non-scaling-stroke' d=' M 60.56 0.00 Q 59.95 0.60 57.56 2.31 Q 54.85 4.26 54.63 8.01 Q 54.17 16.00 54.14 24.00 Q 54.00 61.00 54.02 98.00 Q 54.02 106.05 61.25 109.21'/%3e %3cpath stroke='%23d65848' vector-effect='non-scaling-stroke' d=' M 61.25 109.21 L 54.25 109.79'/%3e %3cpath stroke='%23cf5144' vector-effect='non-scaling-stroke' d=' M 54.25 109.79 Q 43.89 109.55 10.25 109.50 Q 2.47 109.49 0.00 101.94'/%3e %3cpath stroke='%23dd604d' vector-effect='non-scaling-stroke' d=' M 101.78 0.04 Q 105.60 2.73 106.69 4.81 Q 108.48 8.25 108.35 13.47 Q 108.26 16.98 108.26 17.02 Q 108.42 57.16 108.03 97.30 Q 107.99 102.00 106.94 104.01 Q 105.22 107.31 101.18 108.52 Q 98.78 109.24 94.00 109.25 Q 77.63 109.28 61.25 109.21'/%3e %3cpath stroke='%23d65848' vector-effect='non-scaling-stroke' d=' M 140.56 0.00 Q 135.96 3.08 135.07 7.95 Q 135.00 8.36 135.00 17.06 Q 135.00 55.52 135.00 93.99 Q 135.00 100.69 135.13 101.49 Q 135.87 105.99 139.60 108.04 Q 142.25 109.49 149.15 109.47 Q 163.70 109.43 178.25 109.82 Q 187.27 110.06 196.25 109.21'/%3e %3cpath stroke='%23dd604d' vector-effect='non-scaling-stroke' d=' M 196.25 109.21 Q 277.75 109.28 359.25 109.25 Q 367.45 109.25 368.72 109.02 Q 374.83 107.91 376.45 102.33 Q 377.00 100.45 377.00 90.12 Q 377.01 52.31 377.18 14.50 Q 377.21 9.14 376.00 5.75 Q 374.58 1.76 369.80 0.03'/%3e %3cpath stroke='%23d65848' vector-effect='non-scaling-stroke' d=' M 410.58 0.02 Q 406.22 2.08 404.81 5.06 Q 403.63 7.58 403.70 11.94 Q 403.75 14.46 403.74 14.55 Q 403.58 56.88 403.97 99.21 Q 404.01 102.95 405.30 104.99 Q 408.04 109.31 413.75 109.50 Q 423.27 109.82 448.92 109.59 Q 448.96 109.59 455.96 109.73 Q 460.61 109.83 465.25 109.21'/%3e %3cpath stroke='%23dd604d' vector-effect='non-scaling-stroke' d=' M 465.25 109.21 Q 481.25 109.28 497.25 109.46 Q 501.39 109.50 504.75 108.75 Q 511.18 107.31 511.25 100.63 A 0.37 0.23 -3.7 0 1 511.59 100.39 Q 511.80 100.37 512.00 100.06'/%3e %3cpath stroke='%23dd604d' vector-effect='non-scaling-stroke' d=' M 512.00 142.31 Q 510.68 136.45 504.88 135.05 Q 501.54 134.25 494.75 134.25 Q 412.62 134.25 330.51 134.25'/%3e %3cpath stroke='%23d65848' vector-effect='non-scaling-stroke' d=' M 330.51 134.25 Q 308.59 133.86 286.67 133.97 Q 279.01 134.01 277.85 134.22 Q 272.21 135.25 270.61 140.34 Q 270.00 142.29 270.00 151.71 Q 270.00 192.98 270.00 234.25 Q 270.00 239.75 274.06 241.94 Q 277.88 243.99 282.25 244.04 Q 306.26 244.31 330.25 243.58'/%3e %3cpath stroke='%23dd604d' vector-effect='non-scaling-stroke' d=' M 330.25 243.58 Q 414.08 243.49 497.91 243.44 Q 504.10 243.44 506.34 242.46 Q 510.74 240.53 511.95 235.05'/%3e %3cpath stroke='%23dd604d' vector-effect='non-scaling-stroke' d=' M 512.00 276.31 Q 509.40 268.37 500.75 268.50 Q 487.54 268.70 464.56 268.34'/%3e %3cpath stroke='%23d65848' vector-effect='non-scaling-stroke' d=' M 464.56 268.34 Q 428.47 267.48 415.00 268.00 Q 406.04 268.35 404.18 275.30 Q 403.76 276.87 403.73 286.73 Q 403.60 326.73 403.97 366.72 Q 404.01 371.27 405.39 373.50 Q 408.10 377.89 414.25 377.94 Q 439.10 378.16 464.05 377.79'/%3e %3cpath stroke='%23dd604d' vector-effect='non-scaling-stroke' d=' M 464.05 377.79 Q 480.59 377.72 497.25 377.95 Q 501.72 378.01 504.75 377.25 Q 510.84 375.72 511.96 369.05'/%3e %3cpath stroke='%23dd604d' vector-effect='non-scaling-stroke' d=' M 512.00 409.81 Q 509.47 404.41 504.43 403.11 Q 503.00 402.75 495.04 402.75 Q 413.14 402.79 331.26 402.69'/%3e %3cpath stroke='%23d65848' vector-effect='non-scaling-stroke' d=' M 331.26 402.69 Q 300.85 402.28 280.00 402.50 Q 275.03 402.55 272.23 405.92 Q 270.42 408.09 270.18 412.06 Q 270.02 414.76 270.00 418.75 Q 269.82 460.54 270.22 502.33 Q 270.25 505.32 271.40 507.39 Q 272.76 509.85 274.73 511.97'/%3e %3cpath stroke='%23dd604d' vector-effect='non-scaling-stroke' d=' M 235.19 512.00 Q 239.41 509.52 240.44 507.69 Q 242.26 504.42 242.12 499.00 Q 242.01 495.06 242.01 495.00 Q 242.17 454.17 241.78 413.34 Q 241.74 410.03 240.92 408.30 Q 239.73 405.79 237.36 404.33 Q 235.56 403.24 232.80 402.96 Q 230.72 402.74 228.00 402.75 Q 196.04 402.83 61.25 402.71'/%3e %3cpath stroke='%23d65848' vector-effect='non-scaling-stroke' d=' M 61.25 402.71 L 54.00 402.21'/%3e %3cpath stroke='%23c8473e' vector-effect='non-scaling-stroke' d=' M 54.00 402.21 L 54.29 378.25'/%3e %3cpath stroke='%23d65848' vector-effect='non-scaling-stroke' d=' M 54.29 378.25 L 60.06 377.67'/%3e %3cpath stroke='%23dd604d' vector-effect='non-scaling-stroke' d=' M 60.06 377.67 Q 90.57 377.89 97.75 377.75 Q 103.86 377.63 106.47 373.31 Q 107.98 370.83 108.06 364.89 Q 108.56 323.80 108.06 282.71 Q 107.98 275.94 106.74 273.48 Q 104.27 268.60 97.50 268.50 Q 89.29 268.38 60.86 268.57'/%3e %3cpath stroke='%23d65848' vector-effect='non-scaling-stroke' d=' M 60.86 268.57 Q 57.40 267.66 54.00 267.96'/%3e %3cpath stroke='%23c8473e' vector-effect='non-scaling-stroke' d=' M 54.00 267.96 L 54.25 244.04'/%3e %3cpath stroke='%23d65848' vector-effect='non-scaling-stroke' d=' M 54.25 244.04 Q 57.30 244.32 60.27 243.49'/%3e %3cpath stroke='%23dd604d' vector-effect='non-scaling-stroke' d=' M 60.27 243.49 Q 143.60 243.51 226.98 243.50 Q 227.04 243.50 229.52 243.56 Q 232.96 243.64 235.56 242.81 Q 239.90 241.43 241.27 236.68 Q 242.00 234.18 242.00 229.25 Q 242.00 189.91 242.00 150.56 Q 242.00 142.47 241.00 140.06 Q 238.60 134.26 230.50 134.25 Q 126.36 134.18 61.00 134.46'/%3e %3cpath stroke='%23d65848' vector-effect='non-scaling-stroke' d=' M 61.00 134.46 L 54.25 133.95'/%3e %3cpath stroke='%23c8473e' vector-effect='non-scaling-stroke' d=' M 54.25 133.95 Q 53.63 121.63 54.25 109.79'/%3e %3cpath stroke='%23dd604d' vector-effect='non-scaling-stroke' d=' M 195.75 377.71 Q 280.88 377.78 366.00 377.69 Q 373.11 377.68 375.68 372.68 Q 377.00 370.12 377.00 363.11 Q 377.00 321.06 377.00 279.00 Q 377.00 272.10 371.36 269.56 Q 369.47 268.71 366.50 268.58 Q 364.40 268.49 361.50 268.50 Q 311.73 268.60 195.52 268.43'/%3e %3cpath stroke='%23d65848' vector-effect='non-scaling-stroke' d=' M 195.52 268.43 Q 172.50 267.68 149.50 267.82 Q 146.21 267.84 143.01 268.56 Q 136.66 269.99 135.30 275.20 Q 135.00 276.36 135.00 284.35 Q 135.00 322.83 135.00 361.31 Q 135.00 369.91 135.51 371.63 Q 137.35 377.81 145.50 378.00 Q 162.06 378.39 195.75 377.71'/%3e %3cpath stroke='%23e46a54' vector-effect='non-scaling-stroke' d=' M 195.52 268.43 Q 189.13 272.10 189.06 278.81 Q 188.92 291.75 188.88 360.75 Q 188.87 369.24 189.56 370.94 Q 191.40 375.45 195.75 377.71'/%3e %3cpath stroke='%23e46a54' vector-effect='non-scaling-stroke' d=' M 196.58 0.04 Q 189.47 2.59 189.31 9.56 Q 188.52 45.65 189.20 97.09 Q 189.26 101.96 190.47 104.19 Q 192.29 107.58 196.25 109.21'/%3e %3cpath stroke='%23e46a54' vector-effect='non-scaling-stroke' d=' M 464.56 0.00 Q 463.12 1.08 461.64 2.12 Q 458.71 4.16 458.37 7.74 Q 458.00 11.62 458.00 14.00 Q 458.00 52.97 458.00 91.94 Q 458.00 100.48 458.24 101.53 Q 459.47 106.81 465.25 109.21'/%3e %3cpath stroke='%23cf5144' vector-effect='non-scaling-stroke' d=' M 54.25 133.95 Q 31.43 133.86 8.50 134.34 Q 3.42 134.45 1.14 139.18 Q 0.09 141.34 0.33 138.95 Q 0.44 137.81 0.00 135.94'/%3e %3cpath stroke='%23e46a54' vector-effect='non-scaling-stroke' d=' M 61.00 134.46 Q 54.00 137.39 54.00 144.50 Q 54.00 188.50 54.00 232.50 Q 54.00 239.54 60.27 243.49'/%3e %3cpath stroke='%23cf5144' vector-effect='non-scaling-stroke' d=' M 54.25 244.04 Q 32.63 243.58 11.00 243.81 Q 2.43 243.89 -0.03 235.96'/%3e %3cpath stroke='%23e46a54' vector-effect='non-scaling-stroke' d=' M 330.51 134.25 Q 327.13 136.25 325.47 139.27 Q 324.26 141.47 324.22 145.95 Q 323.81 189.22 323.83 232.50 Q 323.83 238.65 328.06 241.69 Q 329.94 243.03 330.25 243.58'/%3e %3cpath stroke='%23cf5144' vector-effect='non-scaling-stroke' d=' M 54.00 267.96 Q 44.88 267.92 11.00 268.25 Q 3.04 268.33 0.00 275.19'/%3e %3cpath stroke='%23e46a54' vector-effect='non-scaling-stroke' d=' M 60.86 268.57 Q 55.24 271.24 54.50 276.00 Q 54.01 279.16 54.00 284.00 Q 53.93 334.80 54.22 366.15 Q 54.26 370.34 55.47 372.61 Q 57.07 375.60 60.06 377.67'/%3e %3cpath stroke='%23cf5144' vector-effect='non-scaling-stroke' d=' M 54.29 378.25 Q 38.15 377.81 22.00 378.08 Q 14.49 378.20 9.00 377.75 Q 2.39 377.21 0.00 370.94'/%3e %3cpath stroke='%23e46a54' vector-effect='non-scaling-stroke' d=' M 464.56 268.34 Q 459.07 271.68 458.05 277.15 Q 458.01 277.35 457.98 287.37 Q 457.84 327.07 458.22 366.77 Q 458.26 370.80 459.49 372.98 Q 461.08 375.79 464.05 377.79'/%3e %3cpath stroke='%23cf5144' vector-effect='non-scaling-stroke' d=' M 54.00 402.21 Q 34.13 402.72 14.25 402.49 Q 11.27 402.45 7.25 403.00 Q 4.01 403.44 2.18 405.80 Q 1.86 406.21 1.60 406.89 Q 0.25 410.40 0.00 405.94'/%3e %3cpath stroke='%23e46a54' vector-effect='non-scaling-stroke' d=' M 61.25 402.71 Q 55.61 405.34 54.32 410.63 Q 54.00 411.93 54.00 420.41 Q 53.99 458.83 53.83 497.25 Q 53.82 500.79 54.38 504.27 Q 54.94 507.72 57.44 509.56 Q 58.79 510.56 58.94 512.00'/%3e %3cpath stroke='%23e46a54' vector-effect='non-scaling-stroke' d=' M 331.26 402.69 Q 325.51 405.42 324.26 410.80 Q 324.00 411.92 324.00 420.73 Q 323.99 455.62 323.87 490.50 Q 323.85 497.39 324.53 504.25 Q 324.88 507.83 327.76 509.79 Q 328.14 510.05 328.41 510.51 Q 329.21 511.92 330.94 512.00'/%3e %3c/g%3e %3cpath fill='%23dd624e' d=' M 7.81 0.00 L 60.56 0.00 Q 59.95 0.60 57.56 2.31 Q 54.85 4.26 54.63 8.01 Q 54.17 16.00 54.14 24.00 Q 54.00 61.00 54.02 98.00 Q 54.02 106.05 61.25 109.21 L 54.25 109.79 Q 43.89 109.55 10.25 109.50 Q 2.47 109.49 0.00 101.94 L 0.00 7.94 Q 1.52 1.66 7.81 0.00 Z'/%3e %3cpath fill='%23eb7259' d=' M 60.56 0.00 L 101.78 0.04 Q 105.60 2.73 106.69 4.81 Q 108.48 8.25 108.35 13.47 Q 108.26 16.98 108.26 17.02 Q 108.42 57.16 108.03 97.30 Q 107.99 102.00 106.94 104.01 Q 105.22 107.31 101.18 108.52 Q 98.78 109.24 94.00 109.25 Q 77.63 109.28 61.25 109.21 Q 54.02 106.05 54.02 98.00 Q 54.00 61.00 54.14 24.00 Q 54.17 16.00 54.63 8.01 Q 54.85 4.26 57.56 2.31 Q 59.95 0.60 60.56 0.00 Z'/%3e %3cpath fill='%23ce4e41' d=' M 101.78 0.04 L 140.56 0.00 Q 135.96 3.08 135.07 7.95 Q 135.00 8.36 135.00 17.06 Q 135.00 55.52 135.00 93.99 Q 135.00 100.69 135.13 101.49 Q 135.87 105.99 139.60 108.04 Q 142.25 109.49 149.15 109.47 Q 163.70 109.43 178.25 109.82 Q 187.27 110.06 196.25 109.21 Q 277.75 109.28 359.25 109.25 Q 367.45 109.25 368.72 109.02 Q 374.83 107.91 376.45 102.33 Q 377.00 100.45 377.00 90.12 Q 377.01 52.31 377.18 14.50 Q 377.21 9.14 376.00 5.75 Q 374.58 1.76 369.80 0.03 L 410.58 0.02 Q 406.22 2.08 404.81 5.06 Q 403.63 7.58 403.70 11.94 Q 403.75 14.46 403.74 14.55 Q 403.58 56.88 403.97 99.21 Q 404.01 102.95 405.30 104.99 Q 408.04 109.31 413.75 109.50 Q 423.27 109.82 448.92 109.59 Q 448.96 109.59 455.96 109.73 Q 460.61 109.83 465.25 109.21 Q 481.25 109.28 497.25 109.46 Q 501.39 109.50 504.75 108.75 Q 511.18 107.31 511.25 100.63 A 0.37 0.23 -3.7 0 1 511.59 100.39 Q 511.80 100.37 512.00 100.06 L 512.00 142.31 Q 510.68 136.45 504.88 135.05 Q 501.54 134.25 494.75 134.25 Q 412.62 134.25 330.51 134.25 Q 308.59 133.86 286.67 133.97 Q 279.01 134.01 277.85 134.22 Q 272.21 135.25 270.61 140.34 Q 270.00 142.29 270.00 151.71 Q 270.00 192.98 270.00 234.25 Q 270.00 239.75 274.06 241.94 Q 277.88 243.99 282.25 244.04 Q 306.26 244.31 330.25 243.58 Q 414.08 243.49 497.91 243.44 Q 504.10 243.44 506.34 242.46 Q 510.74 240.53 511.95 235.05 L 512.00 276.31 Q 509.40 268.37 500.75 268.50 Q 487.54 268.70 464.56 268.34 Q 428.47 267.48 415.00 268.00 Q 406.04 268.35 404.18 275.30 Q 403.76 276.87 403.73 286.73 Q 403.60 326.73 403.97 366.72 Q 404.01 371.27 405.39 373.50 Q 408.10 377.89 414.25 377.94 Q 439.10 378.16 464.05 377.79 Q 480.59 377.72 497.25 377.95 Q 501.72 378.01 504.75 377.25 Q 510.84 375.72 511.96 369.05 L 512.00 409.81 Q 509.47 404.41 504.43 403.11 Q 503.00 402.75 495.04 402.75 Q 413.14 402.79 331.26 402.69 Q 300.85 402.28 280.00 402.50 Q 275.03 402.55 272.23 405.92 Q 270.42 408.09 270.18 412.06 Q 270.02 414.76 270.00 418.75 Q 269.82 460.54 270.22 502.33 Q 270.25 505.32 271.40 507.39 Q 272.76 509.85 274.73 511.97 L 235.19 512.00 Q 239.41 509.52 240.44 507.69 Q 242.26 504.42 242.12 499.00 Q 242.01 495.06 242.01 495.00 Q 242.17 454.17 241.78 413.34 Q 241.74 410.03 240.92 408.30 Q 239.73 405.79 237.36 404.33 Q 235.56 403.24 232.80 402.96 Q 230.72 402.74 228.00 402.75 Q 196.04 402.83 61.25 402.71 L 54.00 402.21 L 54.29 378.25 L 60.06 377.67 Q 90.57 377.89 97.75 377.75 Q 103.86 377.63 106.47 373.31 Q 107.98 370.83 108.06 364.89 Q 108.56 323.80 108.06 282.71 Q 107.98 275.94 106.74 273.48 Q 104.27 268.60 97.50 268.50 Q 89.29 268.38 60.86 268.57 Q 57.40 267.66 54.00 267.96 L 54.25 244.04 Q 57.30 244.32 60.27 243.49 Q 143.60 243.51 226.98 243.50 Q 227.04 243.50 229.52 243.56 Q 232.96 243.64 235.56 242.81 Q 239.90 241.43 241.27 236.68 Q 242.00 234.18 242.00 229.25 Q 242.00 189.91 242.00 150.56 Q 242.00 142.47 241.00 140.06 Q 238.60 134.26 230.50 134.25 Q 126.36 134.18 61.00 134.46 L 54.25 133.95 Q 53.63 121.63 54.25 109.79 L 61.25 109.21 Q 77.63 109.28 94.00 109.25 Q 98.78 109.24 101.18 108.52 Q 105.22 107.31 106.94 104.01 Q 107.99 102.00 108.03 97.30 Q 108.42 57.16 108.26 17.02 Q 108.26 16.98 108.35 13.47 Q 108.48 8.25 106.69 4.81 Q 105.60 2.73 101.78 0.04 Z M 195.75 377.71 Q 280.88 377.78 366.00 377.69 Q 373.11 377.68 375.68 372.68 Q 377.00 370.12 377.00 363.11 Q 377.00 321.06 377.00 279.00 Q 377.00 272.10 371.36 269.56 Q 369.47 268.71 366.50 268.58 Q 364.40 268.49 361.50 268.50 Q 311.73 268.60 195.52 268.43 Q 172.50 267.68 149.50 267.82 Q 146.21 267.84 143.01 268.56 Q 136.66 269.99 135.30 275.20 Q 135.00 276.36 135.00 284.35 Q 135.00 322.83 135.00 361.31 Q 135.00 369.91 135.51 371.63 Q 137.35 377.81 145.50 378.00 Q 162.06 378.39 195.75 377.71 Z'/%3e %3cpath fill='%23dd624e' d=' M 140.56 0.00 L 196.58 0.04 Q 189.47 2.59 189.31 9.56 Q 188.52 45.65 189.20 97.09 Q 189.26 101.96 190.47 104.19 Q 192.29 107.58 196.25 109.21 Q 187.27 110.06 178.25 109.82 Q 163.70 109.43 149.15 109.47 Q 142.25 109.49 139.60 108.04 Q 135.87 105.99 135.13 101.49 Q 135.00 100.69 135.00 93.99 Q 135.00 55.52 135.00 17.06 Q 135.00 8.36 135.07 7.95 Q 135.96 3.08 140.56 0.00 Z'/%3e %3cpath fill='%23eb7259' d=' M 196.58 0.04 L 369.80 0.03 Q 374.58 1.76 376.00 5.75 Q 377.21 9.14 377.18 14.50 Q 377.01 52.31 377.00 90.12 Q 377.00 100.45 376.45 102.33 Q 374.83 107.91 368.72 109.02 Q 367.45 109.25 359.25 109.25 Q 277.75 109.28 196.25 109.21 Q 192.29 107.58 190.47 104.19 Q 189.26 101.96 189.20 97.09 Q 188.52 45.65 189.31 9.56 Q 189.47 2.59 196.58 0.04 Z'/%3e %3cpath fill='%23dd624e' d=' M 410.58 0.02 L 464.56 0.00 Q 463.12 1.08 461.64 2.12 Q 458.71 4.16 458.37 7.74 Q 458.00 11.62 458.00 14.00 Q 458.00 52.97 458.00 91.94 Q 458.00 100.48 458.24 101.53 Q 459.47 106.81 465.25 109.21 Q 460.61 109.83 455.96 109.73 Q 448.96 109.59 448.92 109.59 Q 423.27 109.82 413.75 109.50 Q 408.04 109.31 405.30 104.99 Q 404.01 102.95 403.97 99.21 Q 403.58 56.88 403.74 14.55 Q 403.75 14.46 403.70 11.94 Q 403.63 7.58 404.81 5.06 Q 406.22 2.08 410.58 0.02 Z'/%3e %3cpath fill='%23eb7259' d=' M 464.56 0.00 L 503.06 0.00 Q 510.81 1.27 512.00 9.06 L 512.00 100.06 Q 511.80 100.37 511.59 100.39 A 0.37 0.23 -3.7 0 0 511.25 100.63 Q 511.18 107.31 504.75 108.75 Q 501.39 109.50 497.25 109.46 Q 481.25 109.28 465.25 109.21 Q 459.47 106.81 458.24 101.53 Q 458.00 100.48 458.00 91.94 Q 458.00 52.97 458.00 14.00 Q 458.00 11.62 458.37 7.74 Q 458.71 4.16 461.64 2.12 Q 463.12 1.08 464.56 0.00 Z'/%3e %3cpath fill='%23c1403a' d=' M 0.00 101.94 Q 2.47 109.49 10.25 109.50 Q 43.89 109.55 54.25 109.79 Q 53.63 121.63 54.25 133.95 Q 31.43 133.86 8.50 134.34 Q 3.42 134.45 1.14 139.18 Q 0.09 141.34 0.33 138.95 Q 0.44 137.81 0.00 135.94 L 0.00 101.94 Z'/%3e %3cpath fill='%23dd624e' d=' M 54.25 133.95 L 61.00 134.46 Q 54.00 137.39 54.00 144.50 Q 54.00 188.50 54.00 232.50 Q 54.00 239.54 60.27 243.49 Q 57.30 244.32 54.25 244.04 Q 32.63 243.58 11.00 243.81 Q 2.43 243.89 -0.03 235.96 L 0.00 135.94 Q 0.44 137.81 0.33 138.95 Q 0.09 141.34 1.14 139.18 Q 3.42 134.45 8.50 134.34 Q 31.43 133.86 54.25 133.95 Z'/%3e %3cpath fill='%23dd624e' d=' M 330.51 134.25 Q 327.13 136.25 325.47 139.27 Q 324.26 141.47 324.22 145.95 Q 323.81 189.22 323.83 232.50 Q 323.83 238.65 328.06 241.69 Q 329.94 243.03 330.25 243.58 Q 306.26 244.31 282.25 244.04 Q 277.88 243.99 274.06 241.94 Q 270.00 239.75 270.00 234.25 Q 270.00 192.98 270.00 151.71 Q 270.00 142.29 270.61 140.34 Q 272.21 135.25 277.85 134.22 Q 279.01 134.01 286.67 133.97 Q 308.59 133.86 330.51 134.25 Z'/%3e %3cpath fill='%23eb7259' d=' M 60.27 243.49 Q 54.00 239.54 54.00 232.50 Q 54.00 188.50 54.00 144.50 Q 54.00 137.39 61.00 134.46 Q 126.36 134.18 230.50 134.25 Q 238.60 134.26 241.00 140.06 Q 242.00 142.47 242.00 150.56 Q 242.00 189.91 242.00 229.25 Q 242.00 234.18 241.27 236.68 Q 239.90 241.43 235.56 242.81 Q 232.96 243.64 229.52 243.56 Q 227.04 243.50 226.98 243.50 Q 143.60 243.51 60.27 243.49 Z'/%3e %3cpath fill='%23eb7259' d=' M 512.00 142.31 L 511.95 235.05 Q 510.74 240.53 506.34 242.46 Q 504.10 243.44 497.91 243.44 Q 414.08 243.49 330.25 243.58 Q 329.94 243.03 328.06 241.69 Q 323.83 238.65 323.83 232.50 Q 323.81 189.22 324.22 145.95 Q 324.26 141.47 325.47 139.27 Q 327.13 136.25 330.51 134.25 Q 412.62 134.25 494.75 134.25 Q 501.54 134.25 504.88 135.05 Q 510.68 136.45 512.00 142.31 Z'/%3e %3cpath fill='%23c1403a' d=' M -0.03 235.96 Q 2.43 243.89 11.00 243.81 Q 32.63 243.58 54.25 244.04 L 54.00 267.96 Q 44.88 267.92 11.00 268.25 Q 3.04 268.33 0.00 275.19 L -0.03 235.96 Z'/%3e %3cpath fill='%23dd624e' d=' M 60.86 268.57 Q 55.24 271.24 54.50 276.00 Q 54.01 279.16 54.00 284.00 Q 53.93 334.80 54.22 366.15 Q 54.26 370.34 55.47 372.61 Q 57.07 375.60 60.06 377.67 L 54.29 378.25 Q 38.15 377.81 22.00 378.08 Q 14.49 378.20 9.00 377.75 Q 2.39 377.21 0.00 370.94 L 0.00 275.19 Q 3.04 268.33 11.00 268.25 Q 44.88 267.92 54.00 267.96 Q 57.40 267.66 60.86 268.57 Z'/%3e %3cpath fill='%23dd624e' d=' M 195.52 268.43 Q 189.13 272.10 189.06 278.81 Q 188.92 291.75 188.88 360.75 Q 188.87 369.24 189.56 370.94 Q 191.40 375.45 195.75 377.71 Q 162.06 378.39 145.50 378.00 Q 137.35 377.81 135.51 371.63 Q 135.00 369.91 135.00 361.31 Q 135.00 322.83 135.00 284.35 Q 135.00 276.36 135.30 275.20 Q 136.66 269.99 143.01 268.56 Q 146.21 267.84 149.50 267.82 Q 172.50 267.68 195.52 268.43 Z'/%3e %3cpath fill='%23dd624e' d=' M 464.56 268.34 Q 459.07 271.68 458.05 277.15 Q 458.01 277.35 457.98 287.37 Q 457.84 327.07 458.22 366.77 Q 458.26 370.80 459.49 372.98 Q 461.08 375.79 464.05 377.79 Q 439.10 378.16 414.25 377.94 Q 408.10 377.89 405.39 373.50 Q 404.01 371.27 403.97 366.72 Q 403.60 326.73 403.73 286.73 Q 403.76 276.87 404.18 275.30 Q 406.04 268.35 415.00 268.00 Q 428.47 267.48 464.56 268.34 Z'/%3e %3cpath fill='%23eb7259' d=' M 60.86 268.57 Q 89.29 268.38 97.50 268.50 Q 104.27 268.60 106.74 273.48 Q 107.98 275.94 108.06 282.71 Q 108.56 323.80 108.06 364.89 Q 107.98 370.83 106.47 373.31 Q 103.86 377.63 97.75 377.75 Q 90.57 377.89 60.06 377.67 Q 57.07 375.60 55.47 372.61 Q 54.26 370.34 54.22 366.15 Q 53.93 334.80 54.00 284.00 Q 54.01 279.16 54.50 276.00 Q 55.24 271.24 60.86 268.57 Z'/%3e %3cpath fill='%23eb7259' d=' M 195.52 268.43 Q 311.73 268.60 361.50 268.50 Q 364.40 268.49 366.50 268.58 Q 369.47 268.71 371.36 269.56 Q 377.00 272.10 377.00 279.00 Q 377.00 321.06 377.00 363.11 Q 377.00 370.12 375.68 372.68 Q 373.11 377.68 366.00 377.69 Q 280.88 377.78 195.75 377.71 Q 191.40 375.45 189.56 370.94 Q 188.87 369.24 188.88 360.75 Q 188.92 291.75 189.06 278.81 Q 189.13 272.10 195.52 268.43 Z'/%3e %3cpath fill='%23eb7259' d=' M 464.56 268.34 Q 487.54 268.70 500.75 268.50 Q 509.40 268.37 512.00 276.31 L 511.96 369.05 Q 510.84 375.72 504.75 377.25 Q 501.72 378.01 497.25 377.95 Q 480.59 377.72 464.05 377.79 Q 461.08 375.79 459.49 372.98 Q 458.26 370.80 458.22 366.77 Q 457.84 327.07 457.98 287.37 Q 458.01 277.35 458.05 277.15 Q 459.07 271.68 464.56 268.34 Z'/%3e %3cpath fill='%23c1403a' d=' M 0.00 370.94 Q 2.39 377.21 9.00 377.75 Q 14.49 378.20 22.00 378.08 Q 38.15 377.81 54.29 378.25 L 54.00 402.21 Q 34.13 402.72 14.25 402.49 Q 11.27 402.45 7.25 403.00 Q 4.01 403.44 2.18 405.80 Q 1.86 406.21 1.60 406.89 Q 0.25 410.40 0.00 405.94 L 0.00 370.94 Z'/%3e %3cpath fill='%23dd624e' d=' M 54.00 402.21 L 61.25 402.71 Q 55.61 405.34 54.32 410.63 Q 54.00 411.93 54.00 420.41 Q 53.99 458.83 53.83 497.25 Q 53.82 500.79 54.38 504.27 Q 54.94 507.72 57.44 509.56 Q 58.79 510.56 58.94 512.00 L 7.94 512.00 Q 1.62 510.46 0.00 504.19 L 0.00 405.94 Q 0.25 410.40 1.60 406.89 Q 1.86 406.21 2.18 405.80 Q 4.01 403.44 7.25 403.00 Q 11.27 402.45 14.25 402.49 Q 34.13 402.72 54.00 402.21 Z'/%3e %3cpath fill='%23dd624e' d=' M 331.26 402.69 Q 325.51 405.42 324.26 410.80 Q 324.00 411.92 324.00 420.73 Q 323.99 455.62 323.87 490.50 Q 323.85 497.39 324.53 504.25 Q 324.88 507.83 327.76 509.79 Q 328.14 510.05 328.41 510.51 Q 329.21 511.92 330.94 512.00 L 274.73 511.97 Q 272.76 509.85 271.40 507.39 Q 270.25 505.32 270.22 502.33 Q 269.82 460.54 270.00 418.75 Q 270.02 414.76 270.18 412.06 Q 270.42 408.09 272.23 405.92 Q 275.03 402.55 280.00 402.50 Q 300.85 402.28 331.26 402.69 Z'/%3e %3cpath fill='%23eb7259' d=' M 61.25 402.71 Q 196.04 402.83 228.00 402.75 Q 230.72 402.74 232.80 402.96 Q 235.56 403.24 237.36 404.33 Q 239.73 405.79 240.92 408.30 Q 241.74 410.03 241.78 413.34 Q 242.17 454.17 242.01 495.00 Q 242.01 495.06 242.12 499.00 Q 242.26 504.42 240.44 507.69 Q 239.41 509.52 235.19 512.00 L 58.94 512.00 Q 58.79 510.56 57.44 509.56 Q 54.94 507.72 54.38 504.27 Q 53.82 500.79 53.83 497.25 Q 53.99 458.83 54.00 420.41 Q 54.00 411.93 54.32 410.63 Q 55.61 405.34 61.25 402.71 Z'/%3e %3cpath fill='%23eb7259' d=' M 331.26 402.69 Q 413.14 402.79 495.04 402.75 Q 503.00 402.75 504.43 403.11 Q 509.47 404.41 512.00 409.81 L 512.00 503.06 Q 510.73 510.82 502.94 512.00 L 330.94 512.00 Q 329.21 511.92 328.41 510.51 Q 328.14 510.05 327.76 509.79 Q 324.88 507.83 324.53 504.25 Q 323.85 497.39 323.87 490.50 Q 323.99 455.62 324.00 420.73 Q 324.00 411.92 324.26 410.80 Q 325.51 405.42 331.26 402.69 Z'/%3e %3cpath d='M 335.997 45.647 L 170.215 78.132 C 167.491 78.665 165.473 80.974 165.309 83.746 L 155.111 255.98 C 154.871 260.037 158.597 263.186 162.556 262.272 L 208.712 251.62 C 213.031 250.625 216.933 254.428 216.045 258.771 L 202.332 325.921 C 201.409 330.44 205.653 334.304 210.066 332.964 L 238.574 324.303 C 242.994 322.961 247.24 326.836 246.305 331.359 L 224.513 436.836 C 223.149 443.434 231.925 447.032 235.585 441.375 L 238.03 437.597 L 373.118 168.005 C 375.38 163.49 371.48 158.344 366.522 159.301 L 319.012 168.47 C 314.547 169.331 310.749 165.173 312.009 160.805 L 343.018 53.309 C 344.279 48.933 340.467 44.772 335.997 45.647 Z' fill='url(%23paint1_linear)' style='opacity: 0.8%3b'/%3e%3c/svg%3e";
|
|
1776
|
+
|
|
1777
|
+
const _tmpl$$5 = /*#__PURE__*/template(`<img alt="Bâti logo">`);
|
|
1778
|
+
function Logo(props) {
|
|
1779
|
+
return (() => {
|
|
1780
|
+
const _el$ = getNextElement(_tmpl$$5);
|
|
1781
|
+
setAttribute(_el$, "src", img);
|
|
1782
|
+
createRenderEffect(_p$ => {
|
|
1783
|
+
const _v$ = props.size,
|
|
1784
|
+
_v$2 = props.size,
|
|
1785
|
+
_v$3 = props.class;
|
|
1786
|
+
_v$ !== _p$._v$ && setAttribute(_el$, "height", _p$._v$ = _v$);
|
|
1787
|
+
_v$2 !== _p$._v$2 && setAttribute(_el$, "width", _p$._v$2 = _v$2);
|
|
1788
|
+
_v$3 !== _p$._v$3 && className(_el$, _p$._v$3 = _v$3);
|
|
1789
|
+
return _p$;
|
|
1790
|
+
}, {
|
|
1791
|
+
_v$: undefined,
|
|
1792
|
+
_v$2: undefined,
|
|
1793
|
+
_v$3: undefined
|
|
1794
|
+
});
|
|
1795
|
+
return _el$;
|
|
1796
|
+
})();
|
|
1797
|
+
}
|
|
1798
|
+
|
|
1799
|
+
function flip(el, accessor) {
|
|
1800
|
+
const name = accessor();
|
|
1801
|
+
if (!name) return;
|
|
1802
|
+
el.setAttribute("data-flip-name", name);
|
|
1803
|
+
el.style.viewTransitionName = name;
|
|
1804
|
+
}
|
|
1805
|
+
|
|
1806
|
+
const _tmpl$$4 = /*#__PURE__*/template(`<div><label class="label"><span class="label-text"></span></label><!#><!/>`);
|
|
1807
|
+
function FormControl(props) {
|
|
1808
|
+
return (() => {
|
|
1809
|
+
const _el$ = getNextElement(_tmpl$$4),
|
|
1810
|
+
_el$2 = _el$.firstChild,
|
|
1811
|
+
_el$3 = _el$2.firstChild,
|
|
1812
|
+
_el$4 = _el$2.nextSibling,
|
|
1813
|
+
[_el$5, _co$] = getNextMarker(_el$4.nextSibling);
|
|
1814
|
+
use(flip, _el$, () => props.flipLabel);
|
|
1815
|
+
insert(_el$3, () => props.label);
|
|
1816
|
+
insert(_el$, () => props.children, _el$5, _co$);
|
|
1817
|
+
createRenderEffect(() => className(_el$, "form-control max-w-xs " + (props.class ?? "")));
|
|
1818
|
+
return _el$;
|
|
1819
|
+
})();
|
|
1820
|
+
}
|
|
1821
|
+
|
|
1822
|
+
const _tmpl$$3 = /*#__PURE__*/template(`<select>`),
|
|
1823
|
+
_tmpl$2$3 = /*#__PURE__*/template(`<option>`);
|
|
1824
|
+
function Select(props) {
|
|
1825
|
+
const [local, others] = splitProps(props, ["options", "class"]);
|
|
1826
|
+
return (() => {
|
|
1827
|
+
const _el$ = getNextElement(_tmpl$$3);
|
|
1828
|
+
spread(_el$, mergeProps(others, {
|
|
1829
|
+
get ["class"]() {
|
|
1830
|
+
return "select max-w-xs " + (local.class ?? "");
|
|
1831
|
+
}
|
|
1832
|
+
}), false, true);
|
|
1833
|
+
insert(_el$, createComponent(For, {
|
|
1834
|
+
get each() {
|
|
1835
|
+
return local.options;
|
|
1836
|
+
},
|
|
1837
|
+
children: option => (() => {
|
|
1838
|
+
const _el$2 = getNextElement(_tmpl$2$3);
|
|
1839
|
+
insert(_el$2, () => option.label);
|
|
1840
|
+
createRenderEffect(_p$ => {
|
|
1841
|
+
const _v$ = option.disabled,
|
|
1842
|
+
_v$2 = option.selected;
|
|
1843
|
+
_v$ !== _p$._v$ && (_el$2.disabled = _p$._v$ = _v$);
|
|
1844
|
+
_v$2 !== _p$._v$2 && (_el$2.selected = _p$._v$2 = _v$2);
|
|
1845
|
+
return _p$;
|
|
1846
|
+
}, {
|
|
1847
|
+
_v$: undefined,
|
|
1848
|
+
_v$2: undefined
|
|
1849
|
+
});
|
|
1850
|
+
createRenderEffect(() => _el$2.value = option.value ?? "");
|
|
1851
|
+
return _el$2;
|
|
1852
|
+
})()
|
|
1853
|
+
}));
|
|
1854
|
+
runHydrationEvents();
|
|
1855
|
+
return _el$;
|
|
1856
|
+
})();
|
|
1857
|
+
}
|
|
1858
|
+
|
|
1859
|
+
const _tmpl$$2 = /*#__PURE__*/template(`<ul class="flex flex-wrap gap-4 px-4 w-full">`),
|
|
1860
|
+
_tmpl$2$2 = /*#__PURE__*/template(`<div class="join group"><div class="join-item flex justify-center items-center px-2 border border-solid bg-base-100"><input type="checkbox" class="checkbox rounded bg-base-100"></div><!#><!/>`);
|
|
1861
|
+
function Features() {
|
|
1862
|
+
const {
|
|
1863
|
+
currentFeatures,
|
|
1864
|
+
selectFeature,
|
|
1865
|
+
moveFeature
|
|
1866
|
+
} = useContext(StoreContext);
|
|
1867
|
+
return (() => {
|
|
1868
|
+
const _el$ = getNextElement(_tmpl$$2);
|
|
1869
|
+
insert(_el$, createComponent(For, {
|
|
1870
|
+
get each() {
|
|
1871
|
+
return Object.keys(currentFeatures);
|
|
1872
|
+
},
|
|
1873
|
+
children: ns => {
|
|
1874
|
+
const f = currentFeatures[ns];
|
|
1875
|
+
return createComponent(FormControl, {
|
|
1876
|
+
get label() {
|
|
1877
|
+
return f.label;
|
|
1878
|
+
},
|
|
1879
|
+
flipLabel: ns,
|
|
1880
|
+
get children() {
|
|
1881
|
+
const _el$2 = getNextElement(_tmpl$2$2),
|
|
1882
|
+
_el$3 = _el$2.firstChild,
|
|
1883
|
+
_el$4 = _el$3.firstChild,
|
|
1884
|
+
_el$5 = _el$3.nextSibling,
|
|
1885
|
+
[_el$6, _co$] = getNextMarker(_el$5.nextSibling);
|
|
1886
|
+
_el$4.addEventListener("change", () => moveFeature(ns));
|
|
1887
|
+
insert(_el$2, createComponent(Select, {
|
|
1888
|
+
"class": "text-xs join-item border-l-0 pl-1",
|
|
1889
|
+
get classList() {
|
|
1890
|
+
return {
|
|
1891
|
+
"select-primary": !f.inview,
|
|
1892
|
+
"select-success": Boolean(f.inview)
|
|
1893
|
+
};
|
|
1894
|
+
},
|
|
1895
|
+
get disabled() {
|
|
1896
|
+
return f.disabled;
|
|
1897
|
+
},
|
|
1898
|
+
onChange: e => {
|
|
1899
|
+
selectFeature(ns, e.target.value || void 0);
|
|
1900
|
+
},
|
|
1901
|
+
get options() {
|
|
1902
|
+
return f.features;
|
|
1903
|
+
}
|
|
1904
|
+
}), _el$6, _co$);
|
|
1905
|
+
createRenderEffect(_p$ => {
|
|
1906
|
+
const _v$ = {
|
|
1907
|
+
"border-success": Boolean(f.inview),
|
|
1908
|
+
"border-base-200 bg-base-200 opacity-70": Boolean(f.disabled),
|
|
1909
|
+
"border-primary": !f.inview && !f.disabled
|
|
1910
|
+
},
|
|
1911
|
+
_v$2 = !!Boolean(f.inview),
|
|
1912
|
+
_v$3 = !f.disabled,
|
|
1913
|
+
_v$4 = f.disabled;
|
|
1914
|
+
_p$._v$ = classList(_el$3, _v$, _p$._v$);
|
|
1915
|
+
_v$2 !== _p$._v$2 && _el$4.classList.toggle("checkbox-success", _p$._v$2 = _v$2);
|
|
1916
|
+
_v$3 !== _p$._v$3 && _el$4.classList.toggle("border-solid", _p$._v$3 = _v$3);
|
|
1917
|
+
_v$4 !== _p$._v$4 && (_el$4.disabled = _p$._v$4 = _v$4);
|
|
1918
|
+
return _p$;
|
|
1919
|
+
}, {
|
|
1920
|
+
_v$: undefined,
|
|
1921
|
+
_v$2: undefined,
|
|
1922
|
+
_v$3: undefined,
|
|
1923
|
+
_v$4: undefined
|
|
1924
|
+
});
|
|
1925
|
+
createRenderEffect(() => _el$4.checked = f.inview);
|
|
1926
|
+
return _el$2;
|
|
1927
|
+
}
|
|
1928
|
+
});
|
|
1929
|
+
}
|
|
1930
|
+
}));
|
|
1931
|
+
return _el$;
|
|
1932
|
+
})();
|
|
1933
|
+
}
|
|
1934
|
+
|
|
1935
|
+
function copy(el) {
|
|
1936
|
+
let clear;
|
|
1937
|
+
async function writeSelectionClipboard() {
|
|
1938
|
+
clearTimeout(clear);
|
|
1939
|
+
const selObj = window.getSelection();
|
|
1940
|
+
if (selObj) {
|
|
1941
|
+
const toCopy = selObj.toString().replaceAll("\n", " ");
|
|
1942
|
+
await navigator.clipboard.writeText(toCopy);
|
|
1943
|
+
el.classList.add("tooltip", "tooltip-open");
|
|
1944
|
+
clear = setTimeout(() => {
|
|
1945
|
+
el.classList.remove("tooltip", "tooltip-open");
|
|
1946
|
+
}, 3e3);
|
|
1947
|
+
}
|
|
1948
|
+
}
|
|
1949
|
+
el.addEventListener("click", writeSelectionClipboard);
|
|
1950
|
+
onCleanup(() => el.removeEventListener("click", writeSelectionClipboard));
|
|
1951
|
+
}
|
|
1952
|
+
|
|
1953
|
+
const _tmpl$$1 = /*#__PURE__*/template(`<div class="w-full items-center flex justify-center gap-8"><a class="inline-block" href="/"></a><h1 class="font-sans font-bold text-8xl pb-4">Bâti`),
|
|
1954
|
+
_tmpl$2$1 = /*#__PURE__*/template(`<div class="container mt-8"><!#><!/><div class="w-full items-center flex justify-center mt-8"><div class="w-4/5 flex flex-col bg-base-300 px-4 py-8 rounded-xl shadow-2xl relative"><div class="px-4 flex"><kbd class="group relative flex-1 justify-start pl-10 tooltip-primary inline-flex tooltip-bottom kbd kbd-lg select-all flex-wrap leading-10 gap-2.5" data-tip="Copied to clipboard!"><svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-chevron-right absolute top-2.5 left-2.5 opacity-50"><polyline points="9 18 15 12 9 6"></polyline></svg><!#><!/></kbd></div><div class="divider"></div><div class="flex flex-row flex-wrap flex-1 justify-center gap-4">`),
|
|
1955
|
+
_tmpl$3 = /*#__PURE__*/template(`<span class="relative whitespace-nowrap">`);
|
|
1956
|
+
function word(w, ns) {
|
|
1957
|
+
return {
|
|
1958
|
+
word: w,
|
|
1959
|
+
ns
|
|
1960
|
+
};
|
|
1961
|
+
}
|
|
1962
|
+
function App(props) {
|
|
1963
|
+
const {
|
|
1964
|
+
featuresValues
|
|
1965
|
+
} = useContext(StoreContext);
|
|
1966
|
+
const keys = Object.keys(features);
|
|
1967
|
+
function getFlags() {
|
|
1968
|
+
return keys.filter(ns => featuresValues()[ns]).map(ns => word(`--${featuresValues()[ns]}`, ns));
|
|
1969
|
+
}
|
|
1970
|
+
const words = createMemo(() => [word("pnpm"), word("create"), word("@batijs/app"), ...getFlags(), word("my-app")]);
|
|
1971
|
+
return (// <Drawer drawer={<DrawerContent />}>
|
|
1972
|
+
(() => {
|
|
1973
|
+
const _el$ = getNextElement(_tmpl$2$1),
|
|
1974
|
+
_el$13 = _el$.firstChild,
|
|
1975
|
+
[_el$14, _co$2] = getNextMarker(_el$13.nextSibling),
|
|
1976
|
+
_el$4 = _el$14.nextSibling,
|
|
1977
|
+
_el$5 = _el$4.firstChild,
|
|
1978
|
+
_el$6 = _el$5.firstChild,
|
|
1979
|
+
_el$7 = _el$6.firstChild,
|
|
1980
|
+
_el$8 = _el$7.firstChild,
|
|
1981
|
+
_el$9 = _el$8.nextSibling,
|
|
1982
|
+
[_el$10, _co$] = getNextMarker(_el$9.nextSibling),
|
|
1983
|
+
_el$11 = _el$6.nextSibling,
|
|
1984
|
+
_el$12 = _el$11.nextSibling;
|
|
1985
|
+
insert(_el$, createComponent(Show, {
|
|
1986
|
+
get when() {
|
|
1987
|
+
return !props.widget;
|
|
1988
|
+
},
|
|
1989
|
+
get children() {
|
|
1990
|
+
const _el$2 = getNextElement(_tmpl$$1),
|
|
1991
|
+
_el$3 = _el$2.firstChild;
|
|
1992
|
+
insert(_el$3, createComponent(Logo, {
|
|
1993
|
+
size: 96
|
|
1994
|
+
}));
|
|
1995
|
+
return _el$2;
|
|
1996
|
+
}
|
|
1997
|
+
}), _el$14, _co$2);
|
|
1998
|
+
use(copy, _el$7, () => true);
|
|
1999
|
+
insert(_el$7, createComponent(For, {
|
|
2000
|
+
get each() {
|
|
2001
|
+
return words();
|
|
2002
|
+
},
|
|
2003
|
+
children: ({
|
|
2004
|
+
word: word2
|
|
2005
|
+
}) => (() => {
|
|
2006
|
+
const _el$15 = getNextElement(_tmpl$3);
|
|
2007
|
+
insert(_el$15, word2);
|
|
2008
|
+
return _el$15;
|
|
2009
|
+
})()
|
|
2010
|
+
}), _el$10, _co$);
|
|
2011
|
+
insert(_el$12, createComponent(Features, {}));
|
|
2012
|
+
return _el$;
|
|
2013
|
+
})()
|
|
2014
|
+
);
|
|
2015
|
+
}
|
|
2016
|
+
|
|
2017
|
+
const _tmpl$ = /*#__PURE__*/template(`<style>`),
|
|
2018
|
+
_tmpl$2 = /*#__PURE__*/template(`<div class="flex flex-col mx-auto">`);
|
|
2019
|
+
function LayoutDefault(props) {
|
|
2020
|
+
return createComponent(StoreProvider, {
|
|
2021
|
+
get children() {
|
|
2022
|
+
return [(() => {
|
|
2023
|
+
const _el$ = getNextElement(_tmpl$);
|
|
2024
|
+
insert(_el$, css_248z);
|
|
2025
|
+
return _el$;
|
|
2026
|
+
})(), (() => {
|
|
2027
|
+
const _el$2 = getNextElement(_tmpl$2);
|
|
2028
|
+
insert(_el$2, () => props.children);
|
|
2029
|
+
return _el$2;
|
|
2030
|
+
})()];
|
|
2031
|
+
}
|
|
2032
|
+
});
|
|
2033
|
+
}
|
|
2034
|
+
function AppWidget(props) {
|
|
2035
|
+
return createComponent(LayoutDefault, {
|
|
2036
|
+
get children() {
|
|
2037
|
+
return createComponent(App, props);
|
|
2038
|
+
}
|
|
2039
|
+
});
|
|
2040
|
+
}
|
|
2041
|
+
|
|
2042
|
+
customElement("bati-widget", {
|
|
2043
|
+
widget: true
|
|
2044
|
+
}, AppWidget);
|