firstly 0.0.16-next.2 → 0.1.0-next.3

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.
Files changed (105) hide show
  1. package/CHANGELOG.md +33 -0
  2. package/esm/FF_Entity.d.ts +1 -1
  3. package/esm/FF_Entity.js +9 -9
  4. package/esm/ROUTES.d.ts +1 -1
  5. package/esm/ROUTES.js +2 -2
  6. package/esm/SqlDatabase/FF_LogToConsole.d.ts +14 -0
  7. package/esm/SqlDatabase/FF_LogToConsole.js +24 -5
  8. package/esm/auth/Entities.d.ts +2 -1
  9. package/esm/auth/Entities.js +18 -14
  10. package/esm/auth/server/AuthController.server.js +86 -93
  11. package/esm/auth/server/handleAuth.d.ts +4 -2
  12. package/esm/auth/server/handleAuth.js +8 -4
  13. package/esm/auth/server/helperRole.d.ts +11 -4
  14. package/esm/auth/server/helperRole.js +29 -20
  15. package/esm/auth/server/index.d.ts +1 -0
  16. package/esm/auth/server/index.js +1 -0
  17. package/esm/auth/server/module.d.ts +27 -5
  18. package/esm/auth/server/module.js +24 -10
  19. package/esm/auth/server/providers/github.js +13 -2
  20. package/esm/auth/static/assets/Page-BHW08QWz.css +1 -0
  21. package/esm/auth/static/assets/{Page-BorYIfy9.d.ts → Page-CTZPxniP.d.ts} +2 -2
  22. package/esm/auth/static/assets/Page-CTZPxniP.js +1 -0
  23. package/esm/auth/static/assets/{Page-CqsLm8yQ.d.ts → Page-D0d9iZO-.d.ts} +2 -2
  24. package/esm/auth/static/assets/{Page-CqsLm8yQ.js → Page-D0d9iZO-.js} +1 -1
  25. package/esm/auth/static/assets/{Page-Cm4MsdIa.d.ts → Page-DXshwJi7.d.ts} +2 -2
  26. package/esm/auth/static/assets/Page-DXshwJi7.js +20 -0
  27. package/esm/auth/static/assets/{index-Borxa2ns.d.ts → index-LRDptjak.d.ts} +3 -20
  28. package/esm/auth/static/assets/{index-Borxa2ns.js → index-LRDptjak.js} +2 -2
  29. package/esm/auth/static/index.html +1 -1
  30. package/esm/auth/types.d.ts +1 -0
  31. package/esm/bin/cmd.js +16 -16
  32. package/esm/changeLog/changeLogEntities.d.ts +21 -0
  33. package/esm/changeLog/changeLogEntities.js +57 -0
  34. package/esm/changeLog/index.d.ts +3 -15
  35. package/esm/changeLog/index.js +3 -51
  36. package/esm/changeLog/server/index.d.ts +39 -28
  37. package/esm/changeLog/server/index.js +40 -29
  38. package/esm/cron/Cron.d.ts +11 -0
  39. package/esm/cron/Cron.js +43 -0
  40. package/esm/cron/Role_Cron.d.ts +3 -0
  41. package/esm/cron/Role_Cron.js +3 -0
  42. package/esm/cron/index.d.ts +3 -0
  43. package/esm/cron/index.js +3 -0
  44. package/esm/cron/server/index.d.ts +29 -11
  45. package/esm/cron/server/index.js +29 -13
  46. package/esm/feedback/FeedbackController.d.ts +3 -1
  47. package/esm/feedback/FeedbackController.js +23 -1
  48. package/esm/feedback/server/index.d.ts +2 -2
  49. package/esm/feedback/server/index.js +2 -2
  50. package/esm/feedback/types.d.ts +6 -0
  51. package/esm/feedback/ui/DialogIssue.svelte +8 -1
  52. package/esm/feedback/ui/DialogIssues.svelte +1 -1
  53. package/esm/formats/index.d.ts +1 -1
  54. package/esm/formats/index.js +1 -1
  55. package/esm/formats/strings.d.ts +2 -0
  56. package/esm/formats/strings.js +22 -0
  57. package/esm/index.d.ts +1 -2
  58. package/esm/index.js +0 -2
  59. package/esm/mail/Mail.d.ts +13 -0
  60. package/esm/mail/Mail.js +51 -0
  61. package/esm/mail/Role_Mail.d.ts +3 -0
  62. package/esm/mail/Role_Mail.js +3 -0
  63. package/esm/mail/index.d.ts +7 -2
  64. package/esm/mail/index.js +7 -2
  65. package/esm/mail/server/formatMailHelper.d.ts +16 -0
  66. package/esm/mail/server/formatMailHelper.js +113 -0
  67. package/esm/mail/server/index.d.ts +32 -19
  68. package/esm/mail/server/index.js +113 -38
  69. package/esm/server/index.d.ts +9 -6
  70. package/esm/server/index.js +28 -50
  71. package/esm/svelte/FF_Layout.svelte +2 -2
  72. package/esm/svelte/dialog/DialogManagement.svelte +2 -2
  73. package/esm/svelte/helpers.d.ts +1 -0
  74. package/esm/svelte/index.d.ts +1 -0
  75. package/esm/svelte/index.js +1 -0
  76. package/esm/svelte/initRemultSvelteReactivity.d.ts +1 -0
  77. package/esm/svelte/initRemultSvelteReactivity.js +29 -0
  78. package/esm/sveltekit/server/index.d.ts +2 -2
  79. package/esm/sveltekit/server/index.js +2 -2
  80. package/esm/ui/Button.svelte +1 -1
  81. package/esm/ui/Field.svelte +5 -3
  82. package/esm/ui/Field.svelte.d.ts +4 -1
  83. package/esm/ui/FieldGroup.svelte +2 -1
  84. package/esm/ui/FieldGroup.svelte.d.ts +4 -1
  85. package/esm/ui/GridPaginate.svelte +2 -2
  86. package/esm/ui/GridPaginate2.svelte +1 -1
  87. package/esm/ui/Loading.svelte +1 -1
  88. package/esm/ui/Tooltip.svelte +1 -1
  89. package/esm/ui/dialog/DialogForm.svelte +3 -3
  90. package/esm/ui/dialog/DialogManagement.svelte +2 -2
  91. package/esm/ui/dialog/DialogPrimitive.svelte +2 -2
  92. package/esm/ui/dialog/FormEditAction.svelte +2 -2
  93. package/esm/ui/internals/FieldContainer.svelte +2 -2
  94. package/esm/ui/internals/Textarea.svelte +2 -2
  95. package/esm/ui/internals/select/MultiSelectMelt.svelte +6 -6
  96. package/esm/ui/internals/select/SelectMelt.svelte +28 -14
  97. package/esm/ui/internals/select/SelectMelt.svelte.d.ts +4 -1
  98. package/esm/ui/link/LinkPlus.svelte +2 -2
  99. package/esm/vite/index.js +50 -52
  100. package/package.json +15 -12
  101. package/esm/auth/static/assets/Page-BorYIfy9.js +0 -1
  102. package/esm/auth/static/assets/Page-Cm4MsdIa.js +0 -20
  103. package/esm/auth/static/assets/Page-JfNiCSIG.css +0 -1
  104. package/esm/mail/templates/DefaultMail.svelte +0 -86
  105. package/esm/mail/templates/DefaultMail.svelte.d.ts +0 -30
@@ -1,4 +1,4 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/Page-Cm4MsdIa.js","assets/Page-JfNiCSIG.css"])))=>i.map(i=>d[i]);
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/Page-DXshwJi7.js","assets/Page-BHW08QWz.css"])))=>i.map(i=>d[i]);
2
2
  (function(){const n=document.createElement("link").relList;if(n&&n.supports&&n.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))r(i);new MutationObserver(i=>{for(const s of i)if(s.type==="childList")for(const l of s.addedNodes)l.tagName==="LINK"&&l.rel==="modulepreload"&&r(l)}).observe(document,{childList:!0,subtree:!0});function t(i){const s={};return i.integrity&&(s.integrity=i.integrity),i.referrerPolicy&&(s.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?s.credentials="include":i.crossOrigin==="anonymous"?s.credentials="omit":s.credentials="same-origin",s}function r(i){if(i.ep)return;i.ep=!0;const s=t(i);fetch(i.href,s)}})();const zn=!0;var en=Array.isArray,sr=Array.prototype.indexOf,An=Array.from,V=Object.defineProperty,_e=Object.getOwnPropertyDescriptor,lr=Object.getOwnPropertyDescriptors,bt=Object.prototype,or=Array.prototype,nn=Object.getPrototypeOf,Jn=Object.isExtensible;const X=()=>{};function ur(e){return typeof(e==null?void 0:e.then)=="function"}function ar(e){return e()}function Ce(e){for(var n=0;n<e.length;n++)e[n]()}const B=2,Et=4,tn=8,kn=16,K=32,ge=64,He=128,L=256,Ye=512,I=1024,G=2048,ne=4096,H=8192,rn=16384,fr=32768,On=65536,cr=1<<17,xt=1<<18,_r=1<<19,St=1<<20,bn=1<<21,Y=Symbol("$state"),te=Symbol("$state metadata"),dr=Symbol("legacy props"),zi=Symbol("");function $t(e){return e===this.v}function Tt(e,n){return e!=e?n==n:e!==n||e!==null&&typeof e=="object"||typeof e=="function"}function Cn(e){return!Tt(e,this.v)}function Ji(){{const e=new Error("bind_invalid_checkbox_value\nUsing `bind:value` together with a checkbox input is not allowed. Use `bind:checked` instead\nhttps://svelte.dev/e/bind_invalid_checkbox_value");throw e.name="Svelte error",e}}function vr(e,n,t){{const r=new Error(`component_api_changed
3
3
  ${e} called \`${n}\` on an instance of ${t}, which is no longer valid in Svelte 5
4
4
  https://svelte.dev/e/component_api_changed`);throw r.name="Svelte error",r}}function pr(e,n){{const t=new Error(`component_api_invalid_new
@@ -41,4 +41,4 @@ ${i.map(o=>`
41
41
  ${f}in ${o}`).join("")}
42
42
  `}),V(e,"component_stack",{value:i});const d=e.stack;if(d){const o=d.split(`
43
43
  `),a=[];for(let _=0;_<o.length;_++){const v=o[_];v.includes("svelte/src/internal")||a.push(v)}V(e,"stack",{value:a.join(`
44
- `)})}if(ft(e,n),ct(n))throw e}function Jt(e,n,t=!0){var r=e.reactions;if(r!==null)for(var i=0;i<r.length;i++){var s=r[i];P!=null&&P.includes(e)||((s.f&B)!==0?Jt(s,n,!1):n===s&&(t?q(s,G):(s.f&I)!==0&&q(s,ne),_n(s)))}}function Zt(e){var a;var n=C,t=D,r=R,i=x,s=Z,l=P,u=w,f=F,d=e.f;C=null,D=0,R=null,Z=(d&L)!==0&&(F||!le||x===null),x=(d&(K|ge))===0?e:null,P=null,We(e.ctx),F=!1,Ze++,e.f|=bn;try{var p=(0,e.fn)(),c=e.deps;if(C!==null){var o;if(Xe(e,D),c!==null&&D>0)for(c.length=D+C.length,o=0;o<C.length;o++)c[D+o]=C[o];else e.deps=c=C;if(!Z)for(o=D;o<c.length;o++)((a=c[o]).reactions??(a.reactions=[])).push(e)}else c!==null&&D<c.length&&(Xe(e,D),c.length=D);if(Re()&&R!==null&&!F&&c!==null&&(e.f&(B|ne|G))===0)for(o=0;o<R.length;o++)Jt(R[o],e);return i!==null&&(Ze++,R!==null&&(r===null?r=R:r.push(...R))),p}finally{C=n,D=t,R=r,x=i,Z=s,P=l,We(u),F=f,e.f^=bn}}function li(e,n){let t=n.reactions;if(t!==null){var r=sr.call(t,e);if(r!==-1){var i=t.length-1;i===0?t=n.reactions=null:(t[r]=t[i],t.pop())}}t===null&&(n.f&B)!==0&&(C===null||!C.includes(n))&&(q(n,ne),(n.f&(L|Ye))===0&&(n.f^=Ye),Lt(n),Xe(n,0))}function Xe(e,n){var t=e.deps;if(t!==null)for(var r=n;r<t.length;r++)li(e,t[r])}function Me(e){var n=e.f;if((n&rn)===0){q(e,I);var t=S,r=w,i=le;S=e,le=!0;{var s=ye;Ke(e.component_function)}try{(n&kn)!==0?ti(e):Vt(e),Ut(e);var l=Zt(e);e.teardown=typeof l=="function"?l:null,e.wv=jt;var u=e.deps,f;zn&&Tr&&e.f&G,zn&&Je.push(e)}catch(d){cn(d,e,t,r||e.ctx)}finally{le=i,S=t,Ke(s)}}}function _t(){console.error("Last ten effects were: ",Je.slice(-10).map(e=>e.fn)),Je=[]}function oi(){try{yr()}catch(e){if(V(e,"stack",{value:""}),ze!==null)try{cn(e,ze,null,null)}catch(n){throw _t(),n}else throw _t(),e}}function Xt(){var e=le;try{var n=0;for(le=!0;Oe.length>0;){n++>1e3&&oi();var t=Oe,r=t.length;Oe=[];for(var i=0;i<r;i++){var s=ai(t[i]);ui(s)}}}finally{je=!1,le=e,ze=null,Je=[],Pe.clear()}}function ui(e){var n=e.length;if(n!==0)for(var t=0;t<n;t++){var r=e[t];if((r.f&(rn|H))===0)try{oe(r)&&(Me(r),r.deps===null&&r.first===null&&r.nodes_start===null&&(r.teardown===null?Ht(r):r.fn=null))}catch(i){cn(i,r,null,r.ctx)}}}function _n(e){je||(je=!0,queueMicrotask(Xt));for(var n=ze=e;n.parent!==null;){n=n.parent;var t=n.f;if((t&(ge|K))!==0){if((t&I)===0)return;n.f^=I}}Oe.push(n)}function ai(e){for(var n=[],t=e;t!==null;){var r=t.f,i=(r&(K|ge))!==0,s=i&&(r&I)!==0;if(!s&&(r&H)===0){if((r&Et)!==0)n.push(t);else if(i)t.f^=I;else{var l=x;try{x=t,oe(t)&&Me(t)}catch(d){cn(d,t,null,t.ctx)}finally{x=l}}var u=t.first;if(u!==null){t=u;continue}}var f=t.parent;for(t=t.next;t===null&&f!==null;)t=f.next,f=f.parent}return n}function fi(e){var n;for(ot();Oe.length>0;)je=!0,Xt(),ot();return n}function T(e){var n=e.f,t=(n&B)!==0;if(x!==null&&!F){if(!(P!=null&&P.includes(e))){var r=x.deps;e.rv<Ze&&(e.rv=Ze,C===null&&r!==null&&r[D]===e?D++:C===null?C=[e]:(!Z||!C.includes(e))&&C.push(e))}}else if(t&&e.deps===null&&e.effects===null){var i=e,s=i.parent;s!==null&&(s.f&L)===0&&(i.f^=L)}return t&&(i=e,oe(i)&&Mt(i)),Le&&Pe.has(e)?Pe.get(e):e.v}function W(e){var n=F;try{return F=!0,e()}finally{F=n}}const ci=-7169;function q(e,n){e.f=e.f&ci|n}function _i(e){if(!(typeof e!="object"||!e||e instanceof EventTarget)){if(Y in e)Sn(e);else if(!Array.isArray(e))for(let n in e){const t=e[n];typeof t=="object"&&t&&Y in t&&Sn(t)}}}function Sn(e,n=new Set){if(typeof e=="object"&&e!==null&&!(e instanceof EventTarget)&&!n.has(e)){n.add(e),e instanceof Date&&e.getTime();for(let r in e)try{Sn(e[r],n)}catch{}const t=nn(e);if(t!==Object.prototype&&t!==Array.prototype&&t!==Map.prototype&&t!==Set.prototype&&t!==Date.prototype){const r=lr(t);for(let i in r){const s=r[i].get;if(s)try{s.call(e)}catch{}}}}}function cs(e){return e.endsWith("capture")&&e!=="gotpointercapture"&&e!=="lostpointercapture"}const di=["beforeinput","click","change","dblclick","contextmenu","focusin","focusout","input","keydown","keyup","mousedown","mousemove","mouseout","mouseover","mouseup","pointerdown","pointermove","pointerout","pointerover","pointerup","touchend","touchmove","touchstart"];function _s(e){return di.includes(e)}const vi={formnovalidate:"formNoValidate",ismap:"isMap",nomodule:"noModule",playsinline:"playsInline",readonly:"readOnly",defaultvalue:"defaultValue",defaultchecked:"defaultChecked",srcobject:"srcObject",novalidate:"noValidate",allowfullscreen:"allowFullscreen",disablepictureinpicture:"disablePictureInPicture",disableremoteplayback:"disableRemotePlayback"};function ds(e){return e=e.toLowerCase(),vi[e]??e}const pi=["touchstart","touchmove"];function hi(e){return pi.includes(e)}function Un(e,n,t){return(...r)=>{const i=e(...r);var s=i.nodeType===11?i.firstChild:i;return Qt(s,n,t),i}}function wi(e,n,t){e.__svelte_meta={loc:{file:n,line:t[0],column:t[1]}},t[2]&&Qt(e.firstChild,n,t[2])}function Qt(e,n,t){for(var r=0;e&&r<t.length;)e.nodeType===1&&wi(e,n,t[r++]),e=e.nextSibling}function vs(e,n){if(n){const t=document.body;e.autofocus=!0,fn(()=>{document.activeElement===t&&e.focus()})}}let dt=!1;function gi(){dt||(dt=!0,document.addEventListener("reset",e=>{Promise.resolve().then(()=>{var n;if(!e.defaultPrevented)for(const t of e.target.elements)(n=t.__on_r)==null||n.call(t)})},{capture:!0}))}function er(e){var n=x,t=S;M(null),U(null);try{return e()}finally{M(n),U(t)}}function ps(e,n,t,r=t){e.addEventListener(n,()=>er(t));const i=e.__on_r;i?e.__on_r=()=>{i(),r(!0)}:e.__on_r=()=>r(!0),gi()}const nr=new Set,$n=new Set;function mi(e,n,t,r={}){function i(s){if(r.capture||Se.call(n,s),!s.cancelBubble)return er(()=>t==null?void 0:t.call(this,s))}return e.startsWith("pointer")||e.startsWith("touch")||e==="wheel"?fn(()=>{n.addEventListener(e,i,r)}):n.addEventListener(e,i,r),i}function yi(e,n,t,r,i){var s={capture:r,passive:i},l=mi(e,n,t,s);(n===document.body||n===window||n===document)&&Fn(()=>{n.removeEventListener(e,l,s)})}function hs(e){for(var n=0;n<e.length;n++)nr.add(e[n]);for(var t of $n)t(e)}function Se(e){var m;var n=this,t=n.ownerDocument,r=e.type,i=((m=e.composedPath)==null?void 0:m.call(e))||[],s=i[0]||e.target,l=0,u=e.__root;if(u){var f=i.indexOf(u);if(f!==-1&&(n===document||n===window)){e.__root=n;return}var d=i.indexOf(n);if(d===-1)return;f<=d&&(l=f)}if(s=i[l]||e.target,s!==n){V(e,"currentTarget",{configurable:!0,get(){return s||t}});var p=x,c=S;M(null),U(null);try{for(var o,a=[];s!==null;){var _=s.assignedSlot||s.parentNode||s.host||null;try{var v=s["__"+r];if(v!=null&&(!s.disabled||e.target===s))if(en(v)){var[h,...b]=v;h.apply(s,[e,...b])}else v.call(s,e)}catch(y){o?a.push(y):o=y}if(e.cancelBubble||_===n||_===null)break;s=_}if(o){for(let y of a)queueMicrotask(()=>{throw y});throw o}}finally{e.__root=n,delete e.currentTarget,M(p),U(c)}}}function bi(e){var n=document.createElement("template");return n.innerHTML=e,n.content}function Qe(e,n){var t=S;t.nodes_start===null&&(t.nodes_start=e,t.nodes_end=n)}function Vn(e,n){var t=(n&Nr)!==0,r=(n&Rr)!==0,i,s=!e.startsWith("<!>");return()=>{i===void 0&&(i=bi(s?e:"<!>"+e),t||(i=Ge(i)));var l=r||qn?document.importNode(i,!0):i.cloneNode(!0);if(t){var u=Ge(l),f=l.lastChild;Qe(u,f)}else Qe(l,l);return l}}function ws(e=""){{var n=on(e+"");return Qe(n,n),n}}function Ei(){var e=document.createDocumentFragment(),n=document.createComment(""),t=on();return e.append(n,t),Qe(n,t),e}function qe(e,n){e!==null&&e.before(n)}function vt(e,n){var t=n==null?"":typeof n=="object"?n+"":n;t!==(e.__t??(e.__t=e.nodeValue))&&(e.__t=t,e.nodeValue=t+"")}function xi(e,n){return Si(e,n)}const fe=new Map;function Si(e,{target:n,anchor:t,props:r={},events:i,context:s,intro:l=!0}){Jr();var u=new Set,f=c=>{for(var o=0;o<c.length;o++){var a=c[o];if(!u.has(a)){u.add(a);var _=hi(a);n.addEventListener(a,Se,{passive:_});var v=fe.get(a);v===void 0?(document.addEventListener(a,Se,{passive:_}),fe.set(a,1)):fe.set(a,v+1)}}};f(An(nr)),$n.add(f);var d=void 0,p=ni(()=>{var c=t??n.appendChild(on());return we(()=>{if(s){Pt({});var o=w;o.c=s}i&&(r.$$events=i),d=e(c,r)||{},s&&It()}),()=>{var _;for(var o of u){n.removeEventListener(o,Se);var a=fe.get(o);--a===0?(document.removeEventListener(o,Se),fe.delete(o)):fe.set(o,a)}$n.delete(f),c!==t&&((_=c.parentNode)==null||_.removeChild(c))}});return $i.set(d,p),d}let $i=new WeakMap;function Ti(e){e&&pr(e[A]??"a component",e.name)}function Ai(){const e=w==null?void 0:w.function;function n(t){var i;const r=((i=Ot())==null?void 0:i[A])??"Something";vr(r,t,e[A])}return{$destroy:()=>n("$destroy()"),$on:()=>n("$on(...)"),$set:()=>n("$set(...)")}}const gn=0,Fe=1,mn=2;function ki(e,n,t,r,i){var s=e,l=Re(),u=w,f=w==null?void 0:w.function,d=k,p,c,o,a=(l?Q:pe)(void 0),_=(l?Q:pe)(void 0),v=!1;function h(m,y){v=!0,y&&(U(b),M(b),We(u),Ke(f));try{m===Fe&&r&&(c?De(c):c=we(()=>r(s,a))),m!==gn&&p&&se(p,()=>p=null),m!==Fe&&c&&se(c,()=>c=null),m!==mn&&o&&se(o,()=>o=null)}finally{y&&(Ke(null),We(null),M(null),U(null),fi())}}var b=an(()=>{if(d!==(d=n())){if(ur(d)){var m=d;v=!1,m.then(y=>{m===d&&(ve(a,y),h(Fe,!0))},y=>{if(m===d)throw ve(_,y),h(mn,!0),_.v}),fn(()=>{v||h(gn,!0)})}else ve(a,d),h(Fe,!1);return()=>d=k}})}function pt(e,n,[t,r]=[0,0]){var i=e,s=null,l=null,u=k,f=t>0?On:0,d=!1;const p=(o,a=!0)=>{d=!0,c(a,o)},c=(o,a)=>{u!==(u=o)&&(u?(s?De(s):a&&(s=we(()=>a(i))),l&&se(l,()=>{l=null})):(l?De(l):a&&(l=we(()=>a(i,[t+1,r]))),s&&se(s,()=>{s=null})))};an(()=>{d=!1,n(p),d||c(null,null)},f)}function Oi(e,n){return n}function Ci(e,n,t,r){for(var i=[],s=n.length,l=0;l<s;l++)Bn(n[l].e,i,!0);var u=s>0&&i.length===0&&t!==null;if(u){var f=t.parentNode;Zr(f),f.append(t),r.clear(),J(e,n[0].prev,n[s-1].next)}Yt(i,()=>{for(var d=0;d<s;d++){var p=n[d];u||(r.delete(p.k),J(e,p.prev,p.next)),ee(p.e,!u)}})}function Pi(e,n,t,r,i,s=null){var l=e,u={flags:n,items:new Map,first:null},f=(n&At)!==0;if(f){var d=e;l=d.appendChild(on())}var p=null,c=!1,o=ke(()=>{var a=t();return en(a)?a:a==null?[]:An(a)});an(()=>{var a=T(o),_=a.length;c&&_===0||(c=_===0,Ii(a,u,l,i,n,r,t),s!==null&&(_===0?p?De(p):p=we(()=>s(l)):p!==null&&se(p,()=>{p=null})),T(o))})}function Ii(e,n,t,r,i,s,l){var Yn,Wn,Kn,Gn;var u=(i&kr)!==0,f=(i&(Pn|In))!==0,d=e.length,p=n.items,c=n.first,o=c,a,_=null,v,h=[],b=[],m,y,g,E;if(u)for(E=0;E<d;E+=1)m=e[E],y=s(m,E),g=p.get(y),g!==void 0&&((Yn=g.a)==null||Yn.measure(),(v??(v=new Set)).add(g));for(E=0;E<d;E+=1){if(m=e[E],y=s(m,E),g=p.get(y),g===void 0){var j=o?o.e.nodes_start:t;_=Ni(j,n,_,_===null?n.first:_.next,m,y,E,r,i,l),p.set(y,_),h=[],b=[],o=_.next;continue}if(f&&Di(g,m,E,i),(g.e.f&H)!==0&&(De(g.e),u&&((Wn=g.a)==null||Wn.unfix(),(v??(v=new Set)).delete(g))),g!==o){if(a!==void 0&&a.has(g)){if(h.length<b.length){var $=b[0],O;_=$.prev;var ae=h[0],dn=h[h.length-1];for(O=0;O<h.length;O+=1)ht(h[O],$,t);for(O=0;O<b.length;O+=1)a.delete(b[O]);J(n,ae.prev,dn.next),J(n,_,ae),J(n,dn,$),o=$,_=dn,E-=1,h=[],b=[]}else a.delete(g),ht(g,o,t),J(n,g.prev,g.next),J(n,g,_===null?n.first:_.next),J(n,_,g),_=g;continue}for(h=[],b=[];o!==null&&o.k!==y;)(o.e.f&H)===0&&(a??(a=new Set)).add(o),b.push(o),o=o.next;if(o===null)continue;g=o}h.push(g),_=g,o=g.next}if(o!==null||a!==void 0){for(var Ee=a===void 0?[]:An(a);o!==null;)(o.e.f&H)===0&&Ee.push(o),o=o.next;var vn=Ee.length;if(vn>0){var ir=(i&At)!==0&&d===0?t:null;if(u){for(E=0;E<vn;E+=1)(Kn=Ee[E].a)==null||Kn.measure();for(E=0;E<vn;E+=1)(Gn=Ee[E].a)==null||Gn.fix()}Ci(n,Ee,ir,p)}}u&&fn(()=>{var jn;if(v!==void 0)for(g of v)(jn=g.a)==null||jn.apply()}),S.first=n.first&&n.first.e,S.last=_&&_.e}function Di(e,n,t,r){(r&Pn)!==0&&ve(e.v,n),(r&In)!==0?ve(e.i,t):e.i=t}function Ni(e,n,t,r,i,s,l,u,f,d){var p=(f&Pn)!==0,c=(f&Or)===0,o=p?c?pe(i):Q(i):i,a=(f&In)===0?l:Q(l);p&&(o.debug=()=>{var v=typeof a=="number"?l:a.v;d()[v]});var _={i:a,v:o,k:s,a:null,e:null,prev:t,next:r};try{return _.e=we(()=>u(e,o,a,d),jr),_.e.prev=t&&t.e,_.e.next=r&&r.e,t===null?n.first=_:(t.next=_,t.e.next=_.e),r!==null&&(r.prev=_,r.e.prev=_.e),_}finally{}}function ht(e,n,t){for(var r=e.next?e.next.e.nodes_start:t,i=n?n.e.nodes_start:t,s=e.e.nodes_start;s!==r;){var l=un(s);i.before(s),s=l}}function J(e,n,t){n===null?e.first=t:(n.next=t,n.e.next=t&&t.e),t!==null&&(t.prev=n,t.e.prev=n&&n.e)}function Ri(e=!1){const n=w,t=n.l.u;if(!t)return;let r=()=>_i(n.s);if(e){let i=0,s={};const l=he(()=>{let u=!1;const f=n.s;for(const d in f)f[d]!==s[d]&&(s[d]=f[d],u=!0);return u&&i++,i});r=()=>T(l)}t.b.length&&Ft(()=>{wt(n,r),Ce(t.b)}),En(()=>{const i=W(()=>t.m.map(ar));return()=>{for(const s of i)typeof s=="function"&&s()}}),t.a.length&&En(()=>{wt(n,r),Ce(t.a)})}function wt(e,n){if(e.l.s)for(const t of e.l.s)T(t);n()}function Hn(e,n,t){if(e==null)return n(void 0),t&&t(void 0),X;const r=W(()=>e.subscribe(n,t));return r.unsubscribe?()=>r.unsubscribe():r}const ce=[];function Li(e,n){return{subscribe:Mi(e,n).subscribe}}function Mi(e,n=X){let t=null;const r=new Set;function i(u){if(Tt(e,u)&&(e=u,t)){const f=!ce.length;for(const d of r)d[1](),ce.push(d,e);if(f){for(let d=0;d<ce.length;d+=2)ce[d][0](ce[d+1]);ce.length=0}}}function s(u){i(u(e))}function l(u,f=X){const d=[u,f];return r.add(d),r.size===1&&(t=n(i,s)||X),u(e),()=>{r.delete(d),r.size===0&&t&&(t(),t=null)}}return{set:i,update:s,subscribe:l}}function gs(e,n,t){const r=!Array.isArray(e),i=r?[e]:e;if(!i.every(Boolean))throw new Error("derived() expects stores as input, got a falsy value");const s=n.length<2;return Li(t,(l,u)=>{let f=!1;const d=[];let p=0,c=X;const o=()=>{if(p)return;c();const _=n(r?d[0]:d,l,u);s?l(_):c=typeof _=="function"?_:X},a=i.map((_,v)=>Hn(_,h=>{d[v]=h,p&=~(1<<v),f&&o()},()=>{p|=1<<v}));return f=!0,o(),function(){Ce(a),c(),f=!1}})}function qi(e){let n;return Hn(e,t=>n=t)(),n}let Be=!1,Tn=Symbol();function ms(e,n,t){const r=t[n]??(t[n]={store:null,source:pe(void 0),unsubscribe:X});if(r.store!==e&&!(Tn in t))if(r.unsubscribe(),r.store=e??null,e==null)r.source.v=void 0,r.unsubscribe=X;else{var i=!0;r.unsubscribe=Hn(e,s=>{i?r.source.v=s:N(r.source,s)}),i=!1}return e&&Tn in t?qi(e):T(r.source)}function ys(e,n){return e.set(n),n}function bs(){const e={};function n(){Fn(()=>{for(var t in e)e[t].unsubscribe();V(e,Tn,{enumerable:!1,value:!0})})}return[e,n]}function Fi(e){var n=Be;try{return Be=!1,[e(),Be]}finally{Be=n}}const Bi={get(e,n){if(!e.exclude.includes(n))return T(e.version),n in e.special?e.special[n]():e.props[n]},set(e,n,t){return n in e.special||(e.special[n]=tr({get[n](){return e.props[n]}},n,kt)),e.special[n](t),tt(e.version),!0},getOwnPropertyDescriptor(e,n){if(!e.exclude.includes(n)&&n in e.props)return{enumerable:!0,configurable:!0,value:e.props[n]}},deleteProperty(e,n){return e.exclude.includes(n)||(e.exclude.push(n),tt(e.version)),!0},has(e,n){return e.exclude.includes(n)?!1:n in e.props},ownKeys(e){return Reflect.ownKeys(e.props).filter(n=>!e.exclude.includes(n))}};function Es(e,n){return new Proxy({props:e,exclude:n,special:{},version:Q(0)},Bi)}function gt(e){var n;return((n=e.ctx)==null?void 0:n.d)??!1}function tr(e,n,t,r){var j;var i=(t&Cr)!==0,s=!me||(t&Pr)!==0,l=(t&Ir)!==0,u=(t&Dr)!==0,f=!1,d;l?[d,f]=Fi(()=>e[n]):d=e[n];var p=Y in e||dr in e,c=l&&(((j=_e(e,n))==null?void 0:j.set)??(p&&n in e&&($=>e[n]=$)))||void 0,o=r,a=!0,_=!1,v=()=>(_=!0,a&&(a=!1,u?o=W(r):o=r),o);d===void 0&&r!==void 0&&(c&&s&&br(n),d=v(),c&&c(d));var h;if(s)h=()=>{var $=e[n];return $===void 0?v():(a=!0,_=!1,$)};else{var b=(i?he:ke)(()=>e[n]);b.f|=cr,h=()=>{var $=T(b);return $!==void 0&&(o=void 0),$===void 0?o:$}}if((t&kt)===0)return h;if(c){var m=e.$$legacy;return function($,O){return arguments.length>0?((!s||!O||m||f)&&c(O?h():$),$):h()}}var y=!1,g=pe(d),E=he(()=>{var $=h(),O=T(g);return y?(y=!1,O):g.v=$});return l&&T(E),i||(E.equals=Cn),function($,O){if(arguments.length>0){const ae=O?T(E):s&&l?re($):$;if(!E.equals(ae)){if(y=!0,N(g,ae),_&&o!==void 0&&(o=ae),gt(E))return $;W(()=>T(E))}return $}return gt(E)?E.v:T(E)}}function Ui(e,...n){return W(()=>{try{let t=!1;const r=[];for(const i of n)i&&typeof i=="object"&&Y in i?(r.push(Fr(i,!0)),t=!0):r.push(i);t&&(Br(e),console.log("%c[snapshot]","color: grey",...r))}catch{}}),n}{let e=function(n){if(!(n in globalThis)){let t;Object.defineProperty(globalThis,n,{configurable:!0,get:()=>{if(t!==void 0)return t;Er(n)},set:r=>{t=r}})}};e("$state"),e("$effect"),e("$derived"),e("$inspect"),e("$props"),e("$bindable")}function rr(e){w===null&&Ln("onMount"),me&&w.l!==null?Vi(w).m.push(e):En(()=>{const n=W(e);if(typeof n=="function")return n})}function xs(e){w===null&&Ln("onDestroy"),rr(()=>()=>W(e))}function Vi(e){var n=e.l;return n.u??(n.u={a:[],b:[],m:[]})}const Hi="modulepreload",Yi=function(e){return"/api/static/"+e},mt={},yn=function(n,t,r){let i=Promise.resolve();if(t&&t.length>0){document.getElementsByTagName("link");const l=document.querySelector("meta[property=csp-nonce]"),u=(l==null?void 0:l.nonce)||(l==null?void 0:l.getAttribute("nonce"));i=Promise.allSettled(t.map(f=>{if(f=Yi(f),f in mt)return;mt[f]=!0;const d=f.endsWith(".css"),p=d?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${f}"]${p}`))return;const c=document.createElement("link");if(c.rel=d?"stylesheet":Hi,d||(c.as="script"),c.crossOrigin="",c.href=f,u&&c.setAttribute("nonce",u),document.head.appendChild(c),d)return new Promise((o,a)=>{c.addEventListener("load",o),c.addEventListener("error",()=>a(new Error(`Unable to preload CSS for ${f}`)))})}))}function s(l){const u=new Event("vite:preloadError",{cancelable:!0});if(u.payload=l,window.dispatchEvent(u),!u.defaultPrevented)throw l}return i.then(l=>{for(const u of l||[])u.status==="rejected"&&s(u.reason);return n().catch(s)})},Wi="5";var yt;typeof window<"u"&&((yt=window.__svelte??(window.__svelte={})).v??(yt.v=new Set)).add(Wi);Ar();Yr();ue[A]="src/App.svelte";var Ki=Un(Vn('<button class="svelte-1vqrvep"> </button>'),ue[A],[[41,3]]),Gi=Un(Vn(' <div class="debug svelte-1vqrvep"></div>',1),ue[A],[[39,1]]),ji=Un(Vn("<main><!></main> <!>",1),ue[A],[[29,0]]);function ue(e,n){Ti(new.target),Pt(n,!1,ue);let t=tr(n,"firstlyData",8);const r={auth:yn(()=>import("./Page-Cm4MsdIa.js"),__vite__mapDeps([0,1])),admin:yn(()=>import("./Page-BorYIfy9.js"),[]),storage:yn(()=>import("./Page-CqsLm8yQ.js"),[])};let i=pe();function s(a){N(i,r[a])}const l=()=>Object.keys(r);rr(()=>{s(t().module)}),Ri();var u=ji(),f=hn(u),d=it(f);{var p=a=>{var _=Ei(),v=hn(_);ki(v,()=>T(i),null,(h,b)=>{var m=ke(()=>{var{default:g}=T(b);return{ModuleComponent:g}}),y=ke(()=>T(m).ModuleComponent);T(y)(h,{get firstlyData(){return t()}})}),qe(a,_)};pt(d,a=>{T(i)&&a(p)})}var c=st(f,2);{var o=a=>{var _=Gi(),v=hn(_),h=st(v);Pi(h,5,l,Oi,(b,m)=>{var y=Ki(),g=it(y);lt(()=>vt(g,`Load ${T(m)??""}`)),yi("click",y,()=>s(T(m))),qe(b,y)}),lt(b=>vt(v,`${b??""} `),[()=>console.info(...Ui("info",t()))],ke),qe(a,_)};pt(c,a=>{t().debug&&a(o)})}return qe(e,u),It({...Ai()})}Wr(ue);xi(ue,{target:document.getElementById("app"),props:{firstlyData}});export{ys as $,qi as A,Li as B,gs as C,Ti as D,Pt as E,rs as F,tr as G,ns as H,xs as I,ts as J,as as K,zi as L,fs as M,Xi as N,Ri as O,Ei as P,hn as Q,pt as R,qe as S,It as T,Ai as U,Yr as V,A as W,bs as X,Wr as Y,ms as Z,ls as _,we as a,_i as a0,Un as a1,Vn as a2,Es as a3,lt as a4,yi as a5,N as a6,it as a7,pe as a8,T as a9,ke as aa,vt as ab,st as ac,z as ad,re as ae,En as af,Pi as ag,os as ah,us as ai,is as aj,ss as ak,Qi as al,ws as am,an as b,bi as c,Qe as d,ee as e,ye as f,Ge as g,Bt as h,nn as i,lr as j,cs as k,mi as l,hs as m,vs as n,ds as o,_s as p,Re as q,ps as r,Ke as s,Ie as t,W as u,Ji as v,en as w,Zi as x,es as y,Mi as z};
44
+ `)})}if(ft(e,n),ct(n))throw e}function Jt(e,n,t=!0){var r=e.reactions;if(r!==null)for(var i=0;i<r.length;i++){var s=r[i];P!=null&&P.includes(e)||((s.f&B)!==0?Jt(s,n,!1):n===s&&(t?q(s,G):(s.f&I)!==0&&q(s,ne),_n(s)))}}function Zt(e){var a;var n=C,t=D,r=R,i=x,s=Z,l=P,u=w,f=F,d=e.f;C=null,D=0,R=null,Z=(d&L)!==0&&(F||!le||x===null),x=(d&(K|ge))===0?e:null,P=null,We(e.ctx),F=!1,Ze++,e.f|=bn;try{var p=(0,e.fn)(),c=e.deps;if(C!==null){var o;if(Xe(e,D),c!==null&&D>0)for(c.length=D+C.length,o=0;o<C.length;o++)c[D+o]=C[o];else e.deps=c=C;if(!Z)for(o=D;o<c.length;o++)((a=c[o]).reactions??(a.reactions=[])).push(e)}else c!==null&&D<c.length&&(Xe(e,D),c.length=D);if(Re()&&R!==null&&!F&&c!==null&&(e.f&(B|ne|G))===0)for(o=0;o<R.length;o++)Jt(R[o],e);return i!==null&&(Ze++,R!==null&&(r===null?r=R:r.push(...R))),p}finally{C=n,D=t,R=r,x=i,Z=s,P=l,We(u),F=f,e.f^=bn}}function li(e,n){let t=n.reactions;if(t!==null){var r=sr.call(t,e);if(r!==-1){var i=t.length-1;i===0?t=n.reactions=null:(t[r]=t[i],t.pop())}}t===null&&(n.f&B)!==0&&(C===null||!C.includes(n))&&(q(n,ne),(n.f&(L|Ye))===0&&(n.f^=Ye),Lt(n),Xe(n,0))}function Xe(e,n){var t=e.deps;if(t!==null)for(var r=n;r<t.length;r++)li(e,t[r])}function Me(e){var n=e.f;if((n&rn)===0){q(e,I);var t=S,r=w,i=le;S=e,le=!0;{var s=ye;Ke(e.component_function)}try{(n&kn)!==0?ti(e):Vt(e),Ut(e);var l=Zt(e);e.teardown=typeof l=="function"?l:null,e.wv=jt;var u=e.deps,f;zn&&Tr&&e.f&G,zn&&Je.push(e)}catch(d){cn(d,e,t,r||e.ctx)}finally{le=i,S=t,Ke(s)}}}function _t(){console.error("Last ten effects were: ",Je.slice(-10).map(e=>e.fn)),Je=[]}function oi(){try{yr()}catch(e){if(V(e,"stack",{value:""}),ze!==null)try{cn(e,ze,null,null)}catch(n){throw _t(),n}else throw _t(),e}}function Xt(){var e=le;try{var n=0;for(le=!0;Oe.length>0;){n++>1e3&&oi();var t=Oe,r=t.length;Oe=[];for(var i=0;i<r;i++){var s=ai(t[i]);ui(s)}}}finally{je=!1,le=e,ze=null,Je=[],Pe.clear()}}function ui(e){var n=e.length;if(n!==0)for(var t=0;t<n;t++){var r=e[t];if((r.f&(rn|H))===0)try{oe(r)&&(Me(r),r.deps===null&&r.first===null&&r.nodes_start===null&&(r.teardown===null?Ht(r):r.fn=null))}catch(i){cn(i,r,null,r.ctx)}}}function _n(e){je||(je=!0,queueMicrotask(Xt));for(var n=ze=e;n.parent!==null;){n=n.parent;var t=n.f;if((t&(ge|K))!==0){if((t&I)===0)return;n.f^=I}}Oe.push(n)}function ai(e){for(var n=[],t=e;t!==null;){var r=t.f,i=(r&(K|ge))!==0,s=i&&(r&I)!==0;if(!s&&(r&H)===0){if((r&Et)!==0)n.push(t);else if(i)t.f^=I;else{var l=x;try{x=t,oe(t)&&Me(t)}catch(d){cn(d,t,null,t.ctx)}finally{x=l}}var u=t.first;if(u!==null){t=u;continue}}var f=t.parent;for(t=t.next;t===null&&f!==null;)t=f.next,f=f.parent}return n}function fi(e){var n;for(ot();Oe.length>0;)je=!0,Xt(),ot();return n}function T(e){var n=e.f,t=(n&B)!==0;if(x!==null&&!F){if(!(P!=null&&P.includes(e))){var r=x.deps;e.rv<Ze&&(e.rv=Ze,C===null&&r!==null&&r[D]===e?D++:C===null?C=[e]:(!Z||!C.includes(e))&&C.push(e))}}else if(t&&e.deps===null&&e.effects===null){var i=e,s=i.parent;s!==null&&(s.f&L)===0&&(i.f^=L)}return t&&(i=e,oe(i)&&Mt(i)),Le&&Pe.has(e)?Pe.get(e):e.v}function W(e){var n=F;try{return F=!0,e()}finally{F=n}}const ci=-7169;function q(e,n){e.f=e.f&ci|n}function _i(e){if(!(typeof e!="object"||!e||e instanceof EventTarget)){if(Y in e)Sn(e);else if(!Array.isArray(e))for(let n in e){const t=e[n];typeof t=="object"&&t&&Y in t&&Sn(t)}}}function Sn(e,n=new Set){if(typeof e=="object"&&e!==null&&!(e instanceof EventTarget)&&!n.has(e)){n.add(e),e instanceof Date&&e.getTime();for(let r in e)try{Sn(e[r],n)}catch{}const t=nn(e);if(t!==Object.prototype&&t!==Array.prototype&&t!==Map.prototype&&t!==Set.prototype&&t!==Date.prototype){const r=lr(t);for(let i in r){const s=r[i].get;if(s)try{s.call(e)}catch{}}}}}function cs(e){return e.endsWith("capture")&&e!=="gotpointercapture"&&e!=="lostpointercapture"}const di=["beforeinput","click","change","dblclick","contextmenu","focusin","focusout","input","keydown","keyup","mousedown","mousemove","mouseout","mouseover","mouseup","pointerdown","pointermove","pointerout","pointerover","pointerup","touchend","touchmove","touchstart"];function _s(e){return di.includes(e)}const vi={formnovalidate:"formNoValidate",ismap:"isMap",nomodule:"noModule",playsinline:"playsInline",readonly:"readOnly",defaultvalue:"defaultValue",defaultchecked:"defaultChecked",srcobject:"srcObject",novalidate:"noValidate",allowfullscreen:"allowFullscreen",disablepictureinpicture:"disablePictureInPicture",disableremoteplayback:"disableRemotePlayback"};function ds(e){return e=e.toLowerCase(),vi[e]??e}const pi=["touchstart","touchmove"];function hi(e){return pi.includes(e)}function Un(e,n,t){return(...r)=>{const i=e(...r);var s=i.nodeType===11?i.firstChild:i;return Qt(s,n,t),i}}function wi(e,n,t){e.__svelte_meta={loc:{file:n,line:t[0],column:t[1]}},t[2]&&Qt(e.firstChild,n,t[2])}function Qt(e,n,t){for(var r=0;e&&r<t.length;)e.nodeType===1&&wi(e,n,t[r++]),e=e.nextSibling}function vs(e,n){if(n){const t=document.body;e.autofocus=!0,fn(()=>{document.activeElement===t&&e.focus()})}}let dt=!1;function gi(){dt||(dt=!0,document.addEventListener("reset",e=>{Promise.resolve().then(()=>{var n;if(!e.defaultPrevented)for(const t of e.target.elements)(n=t.__on_r)==null||n.call(t)})},{capture:!0}))}function er(e){var n=x,t=S;M(null),U(null);try{return e()}finally{M(n),U(t)}}function ps(e,n,t,r=t){e.addEventListener(n,()=>er(t));const i=e.__on_r;i?e.__on_r=()=>{i(),r(!0)}:e.__on_r=()=>r(!0),gi()}const nr=new Set,$n=new Set;function mi(e,n,t,r={}){function i(s){if(r.capture||Se.call(n,s),!s.cancelBubble)return er(()=>t==null?void 0:t.call(this,s))}return e.startsWith("pointer")||e.startsWith("touch")||e==="wheel"?fn(()=>{n.addEventListener(e,i,r)}):n.addEventListener(e,i,r),i}function yi(e,n,t,r,i){var s={capture:r,passive:i},l=mi(e,n,t,s);(n===document.body||n===window||n===document)&&Fn(()=>{n.removeEventListener(e,l,s)})}function hs(e){for(var n=0;n<e.length;n++)nr.add(e[n]);for(var t of $n)t(e)}function Se(e){var m;var n=this,t=n.ownerDocument,r=e.type,i=((m=e.composedPath)==null?void 0:m.call(e))||[],s=i[0]||e.target,l=0,u=e.__root;if(u){var f=i.indexOf(u);if(f!==-1&&(n===document||n===window)){e.__root=n;return}var d=i.indexOf(n);if(d===-1)return;f<=d&&(l=f)}if(s=i[l]||e.target,s!==n){V(e,"currentTarget",{configurable:!0,get(){return s||t}});var p=x,c=S;M(null),U(null);try{for(var o,a=[];s!==null;){var _=s.assignedSlot||s.parentNode||s.host||null;try{var v=s["__"+r];if(v!=null&&(!s.disabled||e.target===s))if(en(v)){var[h,...b]=v;h.apply(s,[e,...b])}else v.call(s,e)}catch(y){o?a.push(y):o=y}if(e.cancelBubble||_===n||_===null)break;s=_}if(o){for(let y of a)queueMicrotask(()=>{throw y});throw o}}finally{e.__root=n,delete e.currentTarget,M(p),U(c)}}}function bi(e){var n=document.createElement("template");return n.innerHTML=e,n.content}function Qe(e,n){var t=S;t.nodes_start===null&&(t.nodes_start=e,t.nodes_end=n)}function Vn(e,n){var t=(n&Nr)!==0,r=(n&Rr)!==0,i,s=!e.startsWith("<!>");return()=>{i===void 0&&(i=bi(s?e:"<!>"+e),t||(i=Ge(i)));var l=r||qn?document.importNode(i,!0):i.cloneNode(!0);if(t){var u=Ge(l),f=l.lastChild;Qe(u,f)}else Qe(l,l);return l}}function ws(e=""){{var n=on(e+"");return Qe(n,n),n}}function Ei(){var e=document.createDocumentFragment(),n=document.createComment(""),t=on();return e.append(n,t),Qe(n,t),e}function qe(e,n){e!==null&&e.before(n)}function vt(e,n){var t=n==null?"":typeof n=="object"?n+"":n;t!==(e.__t??(e.__t=e.nodeValue))&&(e.__t=t,e.nodeValue=t+"")}function xi(e,n){return Si(e,n)}const fe=new Map;function Si(e,{target:n,anchor:t,props:r={},events:i,context:s,intro:l=!0}){Jr();var u=new Set,f=c=>{for(var o=0;o<c.length;o++){var a=c[o];if(!u.has(a)){u.add(a);var _=hi(a);n.addEventListener(a,Se,{passive:_});var v=fe.get(a);v===void 0?(document.addEventListener(a,Se,{passive:_}),fe.set(a,1)):fe.set(a,v+1)}}};f(An(nr)),$n.add(f);var d=void 0,p=ni(()=>{var c=t??n.appendChild(on());return we(()=>{if(s){Pt({});var o=w;o.c=s}i&&(r.$$events=i),d=e(c,r)||{},s&&It()}),()=>{var _;for(var o of u){n.removeEventListener(o,Se);var a=fe.get(o);--a===0?(document.removeEventListener(o,Se),fe.delete(o)):fe.set(o,a)}$n.delete(f),c!==t&&((_=c.parentNode)==null||_.removeChild(c))}});return $i.set(d,p),d}let $i=new WeakMap;function Ti(e){e&&pr(e[A]??"a component",e.name)}function Ai(){const e=w==null?void 0:w.function;function n(t){var i;const r=((i=Ot())==null?void 0:i[A])??"Something";vr(r,t,e[A])}return{$destroy:()=>n("$destroy()"),$on:()=>n("$on(...)"),$set:()=>n("$set(...)")}}const gn=0,Fe=1,mn=2;function ki(e,n,t,r,i){var s=e,l=Re(),u=w,f=w==null?void 0:w.function,d=k,p,c,o,a=(l?Q:pe)(void 0),_=(l?Q:pe)(void 0),v=!1;function h(m,y){v=!0,y&&(U(b),M(b),We(u),Ke(f));try{m===Fe&&r&&(c?De(c):c=we(()=>r(s,a))),m!==gn&&p&&se(p,()=>p=null),m!==Fe&&c&&se(c,()=>c=null),m!==mn&&o&&se(o,()=>o=null)}finally{y&&(Ke(null),We(null),M(null),U(null),fi())}}var b=an(()=>{if(d!==(d=n())){if(ur(d)){var m=d;v=!1,m.then(y=>{m===d&&(ve(a,y),h(Fe,!0))},y=>{if(m===d)throw ve(_,y),h(mn,!0),_.v}),fn(()=>{v||h(gn,!0)})}else ve(a,d),h(Fe,!1);return()=>d=k}})}function pt(e,n,[t,r]=[0,0]){var i=e,s=null,l=null,u=k,f=t>0?On:0,d=!1;const p=(o,a=!0)=>{d=!0,c(a,o)},c=(o,a)=>{u!==(u=o)&&(u?(s?De(s):a&&(s=we(()=>a(i))),l&&se(l,()=>{l=null})):(l?De(l):a&&(l=we(()=>a(i,[t+1,r]))),s&&se(s,()=>{s=null})))};an(()=>{d=!1,n(p),d||c(null,null)},f)}function Oi(e,n){return n}function Ci(e,n,t,r){for(var i=[],s=n.length,l=0;l<s;l++)Bn(n[l].e,i,!0);var u=s>0&&i.length===0&&t!==null;if(u){var f=t.parentNode;Zr(f),f.append(t),r.clear(),J(e,n[0].prev,n[s-1].next)}Yt(i,()=>{for(var d=0;d<s;d++){var p=n[d];u||(r.delete(p.k),J(e,p.prev,p.next)),ee(p.e,!u)}})}function Pi(e,n,t,r,i,s=null){var l=e,u={flags:n,items:new Map,first:null},f=(n&At)!==0;if(f){var d=e;l=d.appendChild(on())}var p=null,c=!1,o=ke(()=>{var a=t();return en(a)?a:a==null?[]:An(a)});an(()=>{var a=T(o),_=a.length;c&&_===0||(c=_===0,Ii(a,u,l,i,n,r,t),s!==null&&(_===0?p?De(p):p=we(()=>s(l)):p!==null&&se(p,()=>{p=null})),T(o))})}function Ii(e,n,t,r,i,s,l){var Yn,Wn,Kn,Gn;var u=(i&kr)!==0,f=(i&(Pn|In))!==0,d=e.length,p=n.items,c=n.first,o=c,a,_=null,v,h=[],b=[],m,y,g,E;if(u)for(E=0;E<d;E+=1)m=e[E],y=s(m,E),g=p.get(y),g!==void 0&&((Yn=g.a)==null||Yn.measure(),(v??(v=new Set)).add(g));for(E=0;E<d;E+=1){if(m=e[E],y=s(m,E),g=p.get(y),g===void 0){var j=o?o.e.nodes_start:t;_=Ni(j,n,_,_===null?n.first:_.next,m,y,E,r,i,l),p.set(y,_),h=[],b=[],o=_.next;continue}if(f&&Di(g,m,E,i),(g.e.f&H)!==0&&(De(g.e),u&&((Wn=g.a)==null||Wn.unfix(),(v??(v=new Set)).delete(g))),g!==o){if(a!==void 0&&a.has(g)){if(h.length<b.length){var $=b[0],O;_=$.prev;var ae=h[0],dn=h[h.length-1];for(O=0;O<h.length;O+=1)ht(h[O],$,t);for(O=0;O<b.length;O+=1)a.delete(b[O]);J(n,ae.prev,dn.next),J(n,_,ae),J(n,dn,$),o=$,_=dn,E-=1,h=[],b=[]}else a.delete(g),ht(g,o,t),J(n,g.prev,g.next),J(n,g,_===null?n.first:_.next),J(n,_,g),_=g;continue}for(h=[],b=[];o!==null&&o.k!==y;)(o.e.f&H)===0&&(a??(a=new Set)).add(o),b.push(o),o=o.next;if(o===null)continue;g=o}h.push(g),_=g,o=g.next}if(o!==null||a!==void 0){for(var Ee=a===void 0?[]:An(a);o!==null;)(o.e.f&H)===0&&Ee.push(o),o=o.next;var vn=Ee.length;if(vn>0){var ir=(i&At)!==0&&d===0?t:null;if(u){for(E=0;E<vn;E+=1)(Kn=Ee[E].a)==null||Kn.measure();for(E=0;E<vn;E+=1)(Gn=Ee[E].a)==null||Gn.fix()}Ci(n,Ee,ir,p)}}u&&fn(()=>{var jn;if(v!==void 0)for(g of v)(jn=g.a)==null||jn.apply()}),S.first=n.first&&n.first.e,S.last=_&&_.e}function Di(e,n,t,r){(r&Pn)!==0&&ve(e.v,n),(r&In)!==0?ve(e.i,t):e.i=t}function Ni(e,n,t,r,i,s,l,u,f,d){var p=(f&Pn)!==0,c=(f&Or)===0,o=p?c?pe(i):Q(i):i,a=(f&In)===0?l:Q(l);p&&(o.debug=()=>{var v=typeof a=="number"?l:a.v;d()[v]});var _={i:a,v:o,k:s,a:null,e:null,prev:t,next:r};try{return _.e=we(()=>u(e,o,a,d),jr),_.e.prev=t&&t.e,_.e.next=r&&r.e,t===null?n.first=_:(t.next=_,t.e.next=_.e),r!==null&&(r.prev=_,r.e.prev=_.e),_}finally{}}function ht(e,n,t){for(var r=e.next?e.next.e.nodes_start:t,i=n?n.e.nodes_start:t,s=e.e.nodes_start;s!==r;){var l=un(s);i.before(s),s=l}}function J(e,n,t){n===null?e.first=t:(n.next=t,n.e.next=t&&t.e),t!==null&&(t.prev=n,t.e.prev=n&&n.e)}function Ri(e=!1){const n=w,t=n.l.u;if(!t)return;let r=()=>_i(n.s);if(e){let i=0,s={};const l=he(()=>{let u=!1;const f=n.s;for(const d in f)f[d]!==s[d]&&(s[d]=f[d],u=!0);return u&&i++,i});r=()=>T(l)}t.b.length&&Ft(()=>{wt(n,r),Ce(t.b)}),En(()=>{const i=W(()=>t.m.map(ar));return()=>{for(const s of i)typeof s=="function"&&s()}}),t.a.length&&En(()=>{wt(n,r),Ce(t.a)})}function wt(e,n){if(e.l.s)for(const t of e.l.s)T(t);n()}function Hn(e,n,t){if(e==null)return n(void 0),t&&t(void 0),X;const r=W(()=>e.subscribe(n,t));return r.unsubscribe?()=>r.unsubscribe():r}const ce=[];function Li(e,n){return{subscribe:Mi(e,n).subscribe}}function Mi(e,n=X){let t=null;const r=new Set;function i(u){if(Tt(e,u)&&(e=u,t)){const f=!ce.length;for(const d of r)d[1](),ce.push(d,e);if(f){for(let d=0;d<ce.length;d+=2)ce[d][0](ce[d+1]);ce.length=0}}}function s(u){i(u(e))}function l(u,f=X){const d=[u,f];return r.add(d),r.size===1&&(t=n(i,s)||X),u(e),()=>{r.delete(d),r.size===0&&t&&(t(),t=null)}}return{set:i,update:s,subscribe:l}}function gs(e,n,t){const r=!Array.isArray(e),i=r?[e]:e;if(!i.every(Boolean))throw new Error("derived() expects stores as input, got a falsy value");const s=n.length<2;return Li(t,(l,u)=>{let f=!1;const d=[];let p=0,c=X;const o=()=>{if(p)return;c();const _=n(r?d[0]:d,l,u);s?l(_):c=typeof _=="function"?_:X},a=i.map((_,v)=>Hn(_,h=>{d[v]=h,p&=~(1<<v),f&&o()},()=>{p|=1<<v}));return f=!0,o(),function(){Ce(a),c(),f=!1}})}function qi(e){let n;return Hn(e,t=>n=t)(),n}let Be=!1,Tn=Symbol();function ms(e,n,t){const r=t[n]??(t[n]={store:null,source:pe(void 0),unsubscribe:X});if(r.store!==e&&!(Tn in t))if(r.unsubscribe(),r.store=e??null,e==null)r.source.v=void 0,r.unsubscribe=X;else{var i=!0;r.unsubscribe=Hn(e,s=>{i?r.source.v=s:N(r.source,s)}),i=!1}return e&&Tn in t?qi(e):T(r.source)}function ys(e,n){return e.set(n),n}function bs(){const e={};function n(){Fn(()=>{for(var t in e)e[t].unsubscribe();V(e,Tn,{enumerable:!1,value:!0})})}return[e,n]}function Fi(e){var n=Be;try{return Be=!1,[e(),Be]}finally{Be=n}}const Bi={get(e,n){if(!e.exclude.includes(n))return T(e.version),n in e.special?e.special[n]():e.props[n]},set(e,n,t){return n in e.special||(e.special[n]=tr({get[n](){return e.props[n]}},n,kt)),e.special[n](t),tt(e.version),!0},getOwnPropertyDescriptor(e,n){if(!e.exclude.includes(n)&&n in e.props)return{enumerable:!0,configurable:!0,value:e.props[n]}},deleteProperty(e,n){return e.exclude.includes(n)||(e.exclude.push(n),tt(e.version)),!0},has(e,n){return e.exclude.includes(n)?!1:n in e.props},ownKeys(e){return Reflect.ownKeys(e.props).filter(n=>!e.exclude.includes(n))}};function Es(e,n){return new Proxy({props:e,exclude:n,special:{},version:Q(0)},Bi)}function gt(e){var n;return((n=e.ctx)==null?void 0:n.d)??!1}function tr(e,n,t,r){var j;var i=(t&Cr)!==0,s=!me||(t&Pr)!==0,l=(t&Ir)!==0,u=(t&Dr)!==0,f=!1,d;l?[d,f]=Fi(()=>e[n]):d=e[n];var p=Y in e||dr in e,c=l&&(((j=_e(e,n))==null?void 0:j.set)??(p&&n in e&&($=>e[n]=$)))||void 0,o=r,a=!0,_=!1,v=()=>(_=!0,a&&(a=!1,u?o=W(r):o=r),o);d===void 0&&r!==void 0&&(c&&s&&br(n),d=v(),c&&c(d));var h;if(s)h=()=>{var $=e[n];return $===void 0?v():(a=!0,_=!1,$)};else{var b=(i?he:ke)(()=>e[n]);b.f|=cr,h=()=>{var $=T(b);return $!==void 0&&(o=void 0),$===void 0?o:$}}if((t&kt)===0)return h;if(c){var m=e.$$legacy;return function($,O){return arguments.length>0?((!s||!O||m||f)&&c(O?h():$),$):h()}}var y=!1,g=pe(d),E=he(()=>{var $=h(),O=T(g);return y?(y=!1,O):g.v=$});return l&&T(E),i||(E.equals=Cn),function($,O){if(arguments.length>0){const ae=O?T(E):s&&l?re($):$;if(!E.equals(ae)){if(y=!0,N(g,ae),_&&o!==void 0&&(o=ae),gt(E))return $;W(()=>T(E))}return $}return gt(E)?E.v:T(E)}}function Ui(e,...n){return W(()=>{try{let t=!1;const r=[];for(const i of n)i&&typeof i=="object"&&Y in i?(r.push(Fr(i,!0)),t=!0):r.push(i);t&&(Br(e),console.log("%c[snapshot]","color: grey",...r))}catch{}}),n}{let e=function(n){if(!(n in globalThis)){let t;Object.defineProperty(globalThis,n,{configurable:!0,get:()=>{if(t!==void 0)return t;Er(n)},set:r=>{t=r}})}};e("$state"),e("$effect"),e("$derived"),e("$inspect"),e("$props"),e("$bindable")}function rr(e){w===null&&Ln("onMount"),me&&w.l!==null?Vi(w).m.push(e):En(()=>{const n=W(e);if(typeof n=="function")return n})}function xs(e){w===null&&Ln("onDestroy"),rr(()=>()=>W(e))}function Vi(e){var n=e.l;return n.u??(n.u={a:[],b:[],m:[]})}const Hi="modulepreload",Yi=function(e){return"/api/static/"+e},mt={},yn=function(n,t,r){let i=Promise.resolve();if(t&&t.length>0){document.getElementsByTagName("link");const l=document.querySelector("meta[property=csp-nonce]"),u=(l==null?void 0:l.nonce)||(l==null?void 0:l.getAttribute("nonce"));i=Promise.allSettled(t.map(f=>{if(f=Yi(f),f in mt)return;mt[f]=!0;const d=f.endsWith(".css"),p=d?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${f}"]${p}`))return;const c=document.createElement("link");if(c.rel=d?"stylesheet":Hi,d||(c.as="script"),c.crossOrigin="",c.href=f,u&&c.setAttribute("nonce",u),document.head.appendChild(c),d)return new Promise((o,a)=>{c.addEventListener("load",o),c.addEventListener("error",()=>a(new Error(`Unable to preload CSS for ${f}`)))})}))}function s(l){const u=new Event("vite:preloadError",{cancelable:!0});if(u.payload=l,window.dispatchEvent(u),!u.defaultPrevented)throw l}return i.then(l=>{for(const u of l||[])u.status==="rejected"&&s(u.reason);return n().catch(s)})},Wi="5";var yt;typeof window<"u"&&((yt=window.__svelte??(window.__svelte={})).v??(yt.v=new Set)).add(Wi);Ar();Yr();ue[A]="src/App.svelte";var Ki=Un(Vn('<button class="svelte-1vqrvep"> </button>'),ue[A],[[41,3]]),Gi=Un(Vn(' <div class="debug svelte-1vqrvep"></div>',1),ue[A],[[39,1]]),ji=Un(Vn("<main><!></main> <!>",1),ue[A],[[29,0]]);function ue(e,n){Ti(new.target),Pt(n,!1,ue);let t=tr(n,"firstlyData",8);const r={auth:yn(()=>import("./Page-DXshwJi7.js"),__vite__mapDeps([0,1])),admin:yn(()=>import("./Page-CTZPxniP.js"),[]),storage:yn(()=>import("./Page-D0d9iZO-.js"),[])};let i=pe();function s(a){N(i,r[a])}const l=()=>Object.keys(r);rr(()=>{s(t().module)}),Ri();var u=ji(),f=hn(u),d=it(f);{var p=a=>{var _=Ei(),v=hn(_);ki(v,()=>T(i),null,(h,b)=>{var m=ke(()=>{var{default:g}=T(b);return{ModuleComponent:g}}),y=ke(()=>T(m).ModuleComponent);T(y)(h,{get firstlyData(){return t()}})}),qe(a,_)};pt(d,a=>{T(i)&&a(p)})}var c=st(f,2);{var o=a=>{var _=Gi(),v=hn(_),h=st(v);Pi(h,5,l,Oi,(b,m)=>{var y=Ki(),g=it(y);lt(()=>vt(g,`Load ${T(m)??""}`)),yi("click",y,()=>s(T(m))),qe(b,y)}),lt(b=>vt(v,`${b??""} `),[()=>console.info(...Ui("info",t()))],ke),qe(a,_)};pt(c,a=>{t().debug&&a(o)})}return qe(e,u),It({...Ai()})}Wr(ue);xi(ue,{target:document.getElementById("app"),props:{firstlyData}});export{ys as $,qi as A,Li as B,gs as C,Ti as D,Pt as E,rs as F,tr as G,ns as H,xs as I,ts as J,as as K,zi as L,fs as M,Xi as N,Ri as O,Ei as P,hn as Q,pt as R,qe as S,It as T,Ai as U,Yr as V,A as W,bs as X,Wr as Y,ms as Z,ls as _,we as a,_i as a0,Un as a1,Vn as a2,Es as a3,lt as a4,yi as a5,N as a6,it as a7,pe as a8,T as a9,ke as aa,vt as ab,st as ac,Pi as ad,os as ae,z as af,us as ag,is as ah,ss as ai,Qi as aj,ws as ak,an as b,bi as c,Qe as d,ee as e,ye as f,Ge as g,Bt as h,nn as i,lr as j,cs as k,mi as l,hs as m,vs as n,ds as o,_s as p,Re as q,ps as r,Ke as s,Ie as t,W as u,Ji as v,en as w,Zi as x,es as y,Mi as z};
@@ -4,7 +4,7 @@
4
4
  <meta charset="UTF-8" />
5
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
6
6
  <!--PLACE_HERE_HEAD-->
7
- <script type="module" crossorigin src="/api/static/assets/index-Borxa2ns.js"></script>
7
+ <script type="module" crossorigin src="/api/static/assets/index-LRDptjak.js"></script>
8
8
  <link rel="stylesheet" crossorigin href="/api/static/assets/index-DKWpA6v7.css">
9
9
  </head>
10
10
  <body>
@@ -69,4 +69,5 @@ export type OAuth2UserInfo = {
69
69
  providerUserId: string;
70
70
  /** Will take the first option available */
71
71
  nameOptions: string[];
72
+ emailOptions: string[];
72
73
  };
package/esm/bin/cmd.js CHANGED
@@ -175,7 +175,7 @@ export default {
175
175
  `import { sveltekit } from '@sveltejs/kit/vite'
176
176
  import { defineConfig } from 'vite'
177
177
 
178
- import { firstly } from 'firstly/vite'
178
+ import { firstly } from '../vite'
179
179
 
180
180
  import type { KIT_ROUTES } from '${libAlias}/ROUTES'
181
181
 
@@ -249,11 +249,11 @@ export { }
249
249
  `,
250
250
  ],
251
251
  './src/server/index.ts': [
252
- `import { FF_Role } from 'firstly'
253
- import { firstly, Module } from 'firstly/server'
254
- import { auth } from 'firstly/auth/server'
255
- import { mail } from 'firstly/mail/server'
256
- import { changeLog } from 'firstly/changeLog/server'
252
+ `import { FF_Role } from '..'
253
+ import { firstly, Module } from '../server'
254
+ import { auth } from '../auth/server'
255
+ import { mail } from '../mail/server'
256
+ import { changeLog } from '../changeLog/server'
257
257
 
258
258
  import { log, Role } from '${libAlias}'
259
259
  import { task } from '${modulesAlias}/task/server'
@@ -290,7 +290,7 @@ export const api = firstly({
290
290
  // To enable OAuth via Github
291
291
  // Instructions by hovering the method \`github\`
292
292
  // NEEDS ON TOP OF THE FILE:
293
- // import { github } from 'firstly/auth/server'
293
+ // import { github } from '../auth/server'
294
294
  //----------------------------------------
295
295
  // github(),
296
296
  ],
@@ -333,7 +333,7 @@ export const api = firstly({
333
333
  `import { sequence } from '@sveltejs/kit/hooks'
334
334
  import { redirect } from '@sveltejs/kit'
335
335
 
336
- import { handleAuth, handleGuard } from 'firstly/auth/server'
336
+ import { handleAuth, handleGuard } from '../auth/server'
337
337
  import { route } from '${libAlias}/ROUTES'
338
338
  import { api as handleRemult } from '${serverAlias}'
339
339
 
@@ -522,8 +522,8 @@ export const load = (async (event) => {
522
522
  ],
523
523
  // Lib files
524
524
  './src/lib/index.ts': [
525
- `import { FF_Role } from 'firstly'
526
- import { FF_Role_Auth } from 'firstly/auth'
525
+ `import { FF_Role } from '..'
526
+ import { FF_Role_Auth } from '../auth'
527
527
  import { Log } from '@kitql/helpers'
528
528
 
529
529
  /**
@@ -543,8 +543,8 @@ export const Role = {
543
543
  ],
544
544
  './src/lib/ui/SignIn.svelte': [
545
545
  `<script lang="ts">
546
- import { isError } from 'firstly'
547
- import { AuthController } from 'firstly/auth'
546
+ import { isError } from '..'
547
+ import { AuthController } from '../auth'
548
548
 
549
549
  import { goto, invalidateAll } from '$app/navigation'
550
550
 
@@ -593,8 +593,8 @@ export const Role = {
593
593
  ],
594
594
  './src/lib/ui/SignOut.svelte': [
595
595
  `<script lang="ts">
596
- import { isError } from 'firstly'
597
- import { AuthController } from 'firstly/auth'
596
+ import { isError } from '..'
597
+ import { AuthController } from '../auth'
598
598
 
599
599
  import { invalidateAll } from '$app/navigation'
600
600
 
@@ -620,7 +620,7 @@ export const Role = {
620
620
  export const log = new Log("Custom Task Log")`,
621
621
  ],
622
622
  './src/modules/task/server/index.ts': [
623
- `import { Module } from 'firstly/server'
623
+ `import { Module } from '../server'
624
624
 
625
625
  import { Task } from '../Task'
626
626
  import { TaskController } from '../TaskController'
@@ -641,7 +641,7 @@ export const task: (o: { specialInfo: string }) => Module = ({ specialInfo }) =>
641
641
  ],
642
642
  './src/modules/task/Task.ts': [
643
643
  `import { Allow, Entity, Field, Fields, ValueListFieldType } from 'remult'
644
- import { BaseEnum, LibIcon_Add, LibIcon_Delete, type BaseEnumOptions } from 'firstly'
644
+ import { BaseEnum, LibIcon_Add, LibIcon_Delete, type BaseEnumOptions } from '..'
645
645
 
646
646
  @Entity('task', {
647
647
  allowApiCrud: Allow.authenticated,
@@ -0,0 +1,21 @@
1
+ export declare const Role_ChangeLog: {
2
+ ChangeLog__Admin: string;
3
+ };
4
+ export interface change {
5
+ key: string;
6
+ oldValue: string;
7
+ newValue: string;
8
+ }
9
+ export declare class ChangeLog {
10
+ id: string;
11
+ entity: string;
12
+ entityId: string;
13
+ changeDate: Date;
14
+ userId: string;
15
+ changes: change[];
16
+ newRow: boolean;
17
+ deleted: boolean;
18
+ }
19
+ export declare const changeLogEntities: {
20
+ ChangeLog: typeof ChangeLog;
21
+ };
@@ -0,0 +1,57 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { Entity, Fields } from 'remult';
8
+ export const Role_ChangeLog = {
9
+ ChangeLog__Admin: 'changeLog__admin',
10
+ };
11
+ let ChangeLog = class ChangeLog {
12
+ id = '';
13
+ entity = '';
14
+ entityId = '';
15
+ changeDate = new Date();
16
+ userId = '';
17
+ changes = [];
18
+ newRow = false;
19
+ deleted = false;
20
+ };
21
+ __decorate([
22
+ Fields.cuid()
23
+ ], ChangeLog.prototype, "id", void 0);
24
+ __decorate([
25
+ Fields.string()
26
+ ], ChangeLog.prototype, "entity", void 0);
27
+ __decorate([
28
+ Fields.string()
29
+ ], ChangeLog.prototype, "entityId", void 0);
30
+ __decorate([
31
+ Fields.date()
32
+ ], ChangeLog.prototype, "changeDate", void 0);
33
+ __decorate([
34
+ Fields.string()
35
+ ], ChangeLog.prototype, "userId", void 0);
36
+ __decorate([
37
+ Fields.json({ dbName: 'changesJson' })
38
+ ], ChangeLog.prototype, "changes", void 0);
39
+ __decorate([
40
+ Fields.boolean()
41
+ ], ChangeLog.prototype, "newRow", void 0);
42
+ __decorate([
43
+ Fields.boolean()
44
+ ], ChangeLog.prototype, "deleted", void 0);
45
+ ChangeLog = __decorate([
46
+ Entity('_ff_change_logs', {
47
+ caption: 'FF Change Logs',
48
+ allowApiCrud: Role_ChangeLog.ChangeLog__Admin,
49
+ defaultOrderBy: {
50
+ changeDate: 'desc',
51
+ },
52
+ })
53
+ ], ChangeLog);
54
+ export { ChangeLog };
55
+ export const changeLogEntities = {
56
+ ChangeLog,
57
+ };
@@ -1,24 +1,12 @@
1
1
  import { type FieldRef, type FieldsRef, type LifecycleEvent } from 'remult';
2
- export declare class ChangeLog {
3
- id: string;
4
- entity: string;
5
- entityId: string;
6
- changeDate: Date;
7
- userId: string;
8
- changes: change[];
9
- newRow: boolean;
10
- deleted: boolean;
11
- }
2
+ import { Role_ChangeLog, type change } from './changeLogEntities';
3
+ export { Role_ChangeLog };
4
+ export type { change };
12
5
  export interface changeEvent {
13
6
  date: Date;
14
7
  userId: string;
15
8
  changes: change[];
16
9
  }
17
- export interface change {
18
- key: string;
19
- oldValue: string;
20
- newValue: string;
21
- }
22
10
  export declare function recordSaved<entityType>(entity: entityType, e: LifecycleEvent<entityType>, options?: ColumnDeciderArgs<entityType>): Promise<void>;
23
11
  export declare function recordDeleted<entityType>(entity: entityType, e: LifecycleEvent<entityType>, options?: ColumnDeciderArgs<entityType>): Promise<void>;
24
12
  export interface ColumnDeciderArgs<entityType> {
@@ -1,54 +1,6 @@
1
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
- return c > 3 && r && Object.defineProperty(target, key, r), r;
6
- };
7
- import { Entity, Fields, getEntityRef, IdEntity, isBackend, remult, repo, } from 'remult';
8
- let ChangeLog = class ChangeLog {
9
- id = '';
10
- entity = '';
11
- entityId = '';
12
- changeDate = new Date();
13
- userId = '';
14
- changes = [];
15
- newRow = false;
16
- deleted = false;
17
- };
18
- __decorate([
19
- Fields.cuid()
20
- ], ChangeLog.prototype, "id", void 0);
21
- __decorate([
22
- Fields.string()
23
- ], ChangeLog.prototype, "entity", void 0);
24
- __decorate([
25
- Fields.string()
26
- ], ChangeLog.prototype, "entityId", void 0);
27
- __decorate([
28
- Fields.date()
29
- ], ChangeLog.prototype, "changeDate", void 0);
30
- __decorate([
31
- Fields.string()
32
- ], ChangeLog.prototype, "userId", void 0);
33
- __decorate([
34
- Fields.json({ dbName: 'changesJson' })
35
- ], ChangeLog.prototype, "changes", void 0);
36
- __decorate([
37
- Fields.boolean()
38
- ], ChangeLog.prototype, "newRow", void 0);
39
- __decorate([
40
- Fields.boolean()
41
- ], ChangeLog.prototype, "deleted", void 0);
42
- ChangeLog = __decorate([
43
- Entity('_ff_change_logs', {
44
- caption: 'FF Change Logs',
45
- allowApiCrud: false,
46
- defaultOrderBy: {
47
- changeDate: 'desc',
48
- },
49
- })
50
- ], ChangeLog);
51
- export { ChangeLog };
1
+ import { getEntityRef, IdEntity, isBackend, remult, repo, } from 'remult';
2
+ import { ChangeLog, Role_ChangeLog } from './changeLogEntities';
3
+ export { Role_ChangeLog };
52
4
  export async function recordSaved(entity, e, options) {
53
5
  if (isBackend()) {
54
6
  const changes = [];
@@ -1,36 +1,47 @@
1
- import { Module } from '../../server';
1
+ import { Module } from 'remult/server';
2
2
  /**
3
- * ## Default way
4
- * The easiest is to switch from `@Entity` to `@FF_Entity` to the entities where you want to log changes.
3
+ * We suggest you to create your own `@APP_Entity` decorator and use it instead of `@Entity`.
4
+ * Like this you opt-in to the change log feature Entity by Entity.
5
5
  *
6
+ * @example
6
7
  * ```ts
7
- * \@FF_Entity<User>('users', {
8
+ * // APP_Entity.ts example
9
+ * import { Entity, isBackend, type EntityOptions } from 'remult'
8
10
  *
9
- * // Optional => To disable change logs
10
- * // changeLog: false,
11
+ * import { recordDeleted, recordSaved } from '..'
11
12
  *
12
- * // Optional => To disable some columns from being logged
13
- * // changeLog: {
14
- * // excludeColumns: (e) => {
15
- * // return [e.password]
16
- * // },
17
- * // },
18
- * })
19
- * export class User {}
20
- * ```
13
+ * export function APP_Entity<entityType>(
14
+ * key: string,
15
+ * options?: EntityOptions<
16
+ * entityType extends new (...args: any) => any ? InstanceType<entityType> : entityType
17
+ * >,
18
+ * ) {
19
+ * return Entity(key, {
20
+ * ...options,
21
21
  *
22
- * ## Manual way
23
- * If you want to go more manual, you can import these functions and call them in your entity's lifecycle events.
24
- * ```ts
25
- * \@Entity<User>('users', {
26
- * saved: async (entity, e) => {
27
- * await recordSaved(entity, e)
28
- * },
29
- * deleted: async (entity, e) => {
30
- * await recordDeleted(entity, e)
31
- * },
32
- * })
33
- * export class User {}
22
+ * // changesLogs
23
+ * saved: async (entity, e) => {
24
+ * await options?.saved?.(entity, e)
25
+ * if (options?.changeLog === false) {
26
+ * // Don't log changes
27
+ * } else {
28
+ * if (isBackend()) {
29
+ * await recordSaved(entity, e, options?.changeLog)
30
+ * }
31
+ * }
32
+ * },
33
+ * deleted: async (entity, e) => {
34
+ * await options?.deleted?.(entity, e)
35
+ * if (options?.changeLog === false) {
36
+ * // Don't log changes
37
+ * } else {
38
+ * if (isBackend()) {
39
+ * await recordDeleted(entity, e, options?.changeLog)
40
+ * }
41
+ * }
42
+ * },
43
+ * })
44
+ * }
34
45
  * ```
35
46
  */
36
- export declare const changeLog: () => Module;
47
+ export declare const changeLog: () => Module<unknown>;
@@ -1,42 +1,53 @@
1
- import { Module } from '../../server';
2
- import { ChangeLog } from '../index';
1
+ import { Module } from 'remult/server';
2
+ import { ChangeLog } from '../changeLogEntities';
3
3
  /**
4
- * ## Default way
5
- * The easiest is to switch from `@Entity` to `@FF_Entity` to the entities where you want to log changes.
4
+ * We suggest you to create your own `@APP_Entity` decorator and use it instead of `@Entity`.
5
+ * Like this you opt-in to the change log feature Entity by Entity.
6
6
  *
7
+ * @example
7
8
  * ```ts
8
- * \@FF_Entity<User>('users', {
9
+ * // APP_Entity.ts example
10
+ * import { Entity, isBackend, type EntityOptions } from 'remult'
9
11
  *
10
- * // Optional => To disable change logs
11
- * // changeLog: false,
12
+ * import { recordDeleted, recordSaved } from '..'
12
13
  *
13
- * // Optional => To disable some columns from being logged
14
- * // changeLog: {
15
- * // excludeColumns: (e) => {
16
- * // return [e.password]
17
- * // },
18
- * // },
19
- * })
20
- * export class User {}
21
- * ```
14
+ * export function APP_Entity<entityType>(
15
+ * key: string,
16
+ * options?: EntityOptions<
17
+ * entityType extends new (...args: any) => any ? InstanceType<entityType> : entityType
18
+ * >,
19
+ * ) {
20
+ * return Entity(key, {
21
+ * ...options,
22
22
  *
23
- * ## Manual way
24
- * If you want to go more manual, you can import these functions and call them in your entity's lifecycle events.
25
- * ```ts
26
- * \@Entity<User>('users', {
27
- * saved: async (entity, e) => {
28
- * await recordSaved(entity, e)
29
- * },
30
- * deleted: async (entity, e) => {
31
- * await recordDeleted(entity, e)
32
- * },
33
- * })
34
- * export class User {}
23
+ * // changesLogs
24
+ * saved: async (entity, e) => {
25
+ * await options?.saved?.(entity, e)
26
+ * if (options?.changeLog === false) {
27
+ * // Don't log changes
28
+ * } else {
29
+ * if (isBackend()) {
30
+ * await recordSaved(entity, e, options?.changeLog)
31
+ * }
32
+ * }
33
+ * },
34
+ * deleted: async (entity, e) => {
35
+ * await options?.deleted?.(entity, e)
36
+ * if (options?.changeLog === false) {
37
+ * // Don't log changes
38
+ * } else {
39
+ * if (isBackend()) {
40
+ * await recordDeleted(entity, e, options?.changeLog)
41
+ * }
42
+ * }
43
+ * },
44
+ * })
45
+ * }
35
46
  * ```
36
47
  */
37
48
  export const changeLog = () => {
38
49
  return new Module({
39
- name: 'changeLog',
50
+ key: 'changeLog',
40
51
  entities: [ChangeLog],
41
52
  });
42
53
  };
@@ -0,0 +1,11 @@
1
+ declare const statuses: readonly ["starting", "ended", "skipped"];
2
+ type StatusType = (typeof statuses)[number];
3
+ export declare class Cron {
4
+ id?: string;
5
+ topic: string;
6
+ startingAt: Date;
7
+ endedAt: Date | null;
8
+ result: Record<string, any>;
9
+ status: StatusType;
10
+ }
11
+ export {};
@@ -0,0 +1,43 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ import { Entity, Fields } from 'remult';
8
+ import { Role_Cron } from './Role_Cron';
9
+ const statuses = ['starting', 'ended', 'skipped'];
10
+ let Cron = class Cron {
11
+ id;
12
+ topic;
13
+ startingAt = new Date();
14
+ endedAt = null;
15
+ result = {};
16
+ status = 'starting';
17
+ };
18
+ __decorate([
19
+ Fields.cuid()
20
+ ], Cron.prototype, "id", void 0);
21
+ __decorate([
22
+ Fields.string({ required: true })
23
+ ], Cron.prototype, "topic", void 0);
24
+ __decorate([
25
+ Fields.date()
26
+ ], Cron.prototype, "startingAt", void 0);
27
+ __decorate([
28
+ Fields.date({ allowNull: true })
29
+ ], Cron.prototype, "endedAt", void 0);
30
+ __decorate([
31
+ Fields.json()
32
+ ], Cron.prototype, "result", void 0);
33
+ __decorate([
34
+ Fields.literal(() => statuses)
35
+ ], Cron.prototype, "status", void 0);
36
+ Cron = __decorate([
37
+ Entity('_ff_crons', {
38
+ caption: 'Crons',
39
+ allowApiCrud: Role_Cron.Cron_Admin,
40
+ defaultOrderBy: { startingAt: 'desc' },
41
+ })
42
+ ], Cron);
43
+ export { Cron };
@@ -0,0 +1,3 @@
1
+ export declare const Role_Cron: {
2
+ readonly Cron_Admin: "cron.admin";
3
+ };
@@ -0,0 +1,3 @@
1
+ export const Role_Cron = {
2
+ Cron_Admin: 'cron.admin',
3
+ };
@@ -0,0 +1,3 @@
1
+ import { Log } from '@kitql/helpers';
2
+ export declare const key = "cron";
3
+ export declare const log: Log;
@@ -0,0 +1,3 @@
1
+ import { Log } from '@kitql/helpers';
2
+ export const key = 'cron';
3
+ export const log = new Log(key);