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

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 (156) hide show
  1. package/CHANGELOG.md +42 -0
  2. package/esm/SqlDatabase/FF_LogToConsole.d.ts +14 -0
  3. package/esm/SqlDatabase/FF_LogToConsole.js +24 -5
  4. package/esm/auth/Entities.d.ts +4 -3
  5. package/esm/auth/Entities.js +19 -15
  6. package/esm/auth/server/AuthController.server.js +86 -93
  7. package/esm/auth/server/handleAuth.d.ts +4 -2
  8. package/esm/auth/server/handleAuth.js +8 -4
  9. package/esm/auth/server/helperRole.d.ts +11 -4
  10. package/esm/auth/server/helperRole.js +29 -20
  11. package/esm/auth/server/index.d.ts +1 -0
  12. package/esm/auth/server/index.js +1 -0
  13. package/esm/auth/server/module.d.ts +27 -5
  14. package/esm/auth/server/module.js +24 -10
  15. package/esm/auth/server/providers/github.js +13 -2
  16. package/esm/auth/static/assets/Page-5iUUg7GN.d.ts +2 -0
  17. package/esm/auth/static/assets/Page-5iUUg7GN.js +1 -0
  18. package/esm/auth/static/assets/Page-BHW08QWz.css +1 -0
  19. package/esm/auth/static/assets/Page-BcSzu3xq.d.ts +2 -0
  20. package/esm/auth/static/assets/Page-BcSzu3xq.js +20 -0
  21. package/esm/auth/static/assets/Page-sEK21EQB.d.ts +2 -0
  22. package/esm/auth/static/assets/Page-sEK21EQB.js +1 -0
  23. package/esm/auth/static/assets/index-RpcgeXPm.d.ts +232 -0
  24. package/esm/auth/static/assets/index-RpcgeXPm.js +2 -0
  25. package/esm/auth/static/index.html +1 -1
  26. package/esm/auth/types.d.ts +1 -0
  27. package/esm/bin/cmd.js +16 -16
  28. package/esm/changeLog/changeLogEntities.d.ts +21 -0
  29. package/esm/changeLog/changeLogEntities.js +57 -0
  30. package/esm/changeLog/index.d.ts +3 -15
  31. package/esm/changeLog/index.js +3 -51
  32. package/esm/changeLog/server/index.d.ts +39 -28
  33. package/esm/changeLog/server/index.js +40 -29
  34. package/esm/cron/Cron.d.ts +11 -0
  35. package/esm/cron/Cron.js +43 -0
  36. package/esm/cron/Role_Cron.d.ts +3 -0
  37. package/esm/cron/Role_Cron.js +3 -0
  38. package/esm/cron/index.d.ts +3 -0
  39. package/esm/cron/index.js +3 -0
  40. package/esm/cron/server/index.d.ts +29 -11
  41. package/esm/cron/server/index.js +29 -13
  42. package/esm/feedback/FeedbackController.d.ts +3 -1
  43. package/esm/feedback/FeedbackController.js +23 -1
  44. package/esm/feedback/server/index.d.ts +2 -2
  45. package/esm/feedback/server/index.js +2 -2
  46. package/esm/feedback/types.d.ts +6 -0
  47. package/esm/feedback/ui/DialogIssue.svelte +16 -2
  48. package/esm/feedback/ui/DialogIssues.svelte +2 -2
  49. package/esm/feedback/ui/DialogMilestones.svelte +2 -3
  50. package/esm/feedback/ui/Feedback.svelte +1 -1
  51. package/esm/formats/dates.js +1 -1
  52. package/esm/formats/index.d.ts +1 -1
  53. package/esm/formats/index.js +1 -1
  54. package/esm/formats/strings.d.ts +2 -0
  55. package/esm/formats/strings.js +22 -0
  56. package/esm/index.d.ts +3 -84
  57. package/esm/index.js +3 -47
  58. package/esm/internals/FF_Entity.d.ts +2 -0
  59. package/esm/{FF_Entity.js → internals/FF_Entity.js} +10 -10
  60. package/esm/{FF_Fields.js → internals/FF_Fields.js} +1 -1
  61. package/esm/{cellsBuildor.d.ts → internals/cellsBuildor.d.ts} +1 -1
  62. package/esm/{common.d.ts → internals/common.d.ts} +0 -2
  63. package/esm/internals/common.js +3 -0
  64. package/esm/{helper.js → internals/helper.js} +1 -1
  65. package/esm/internals/index.d.ts +83 -0
  66. package/esm/internals/index.js +45 -0
  67. package/esm/{storeItem.js → internals/storeItem.js} +2 -2
  68. package/esm/mail/Mail.d.ts +13 -0
  69. package/esm/mail/Mail.js +51 -0
  70. package/esm/mail/Role_Mail.d.ts +3 -0
  71. package/esm/mail/Role_Mail.js +3 -0
  72. package/esm/mail/index.d.ts +7 -2
  73. package/esm/mail/index.js +7 -2
  74. package/esm/mail/server/formatMailHelper.d.ts +16 -0
  75. package/esm/mail/server/formatMailHelper.js +113 -0
  76. package/esm/mail/server/index.d.ts +32 -19
  77. package/esm/mail/server/index.js +113 -38
  78. package/esm/server/index.d.ts +9 -6
  79. package/esm/server/index.js +28 -50
  80. package/esm/svelte/FF_Layout.svelte +2 -2
  81. package/esm/svelte/dialog/DialogManagement.svelte +2 -2
  82. package/esm/svelte/dialog/DialogPrimitive.svelte +1 -1
  83. package/esm/svelte/dialog/DialogPrimitive.svelte.d.ts +1 -1
  84. package/esm/svelte/dialog/dialog.d.ts +1 -1
  85. package/esm/svelte/dialog/dialog.js +1 -1
  86. package/esm/svelte/helpers.d.ts +1 -0
  87. package/esm/svelte/index.d.ts +1 -0
  88. package/esm/svelte/index.js +1 -0
  89. package/esm/svelte/initRemultSvelteReactivity.d.ts +1 -0
  90. package/esm/svelte/initRemultSvelteReactivity.js +29 -0
  91. package/esm/sveltekit/server/index.d.ts +2 -2
  92. package/esm/sveltekit/server/index.js +2 -2
  93. package/esm/ui/Button.svelte +2 -2
  94. package/esm/ui/Button.svelte.d.ts +1 -1
  95. package/esm/ui/Field.svelte +7 -5
  96. package/esm/ui/Field.svelte.d.ts +5 -2
  97. package/esm/ui/FieldGroup.svelte +4 -3
  98. package/esm/ui/FieldGroup.svelte.d.ts +7 -4
  99. package/esm/ui/Grid.svelte +3 -3
  100. package/esm/ui/Grid.svelte.d.ts +2 -2
  101. package/esm/ui/Grid2.svelte +3 -3
  102. package/esm/ui/Grid2.svelte.d.ts +1 -1
  103. package/esm/ui/GridPaginate.svelte +2 -2
  104. package/esm/ui/GridPaginate2.svelte +1 -1
  105. package/esm/ui/Loading.svelte +1 -1
  106. package/esm/ui/Tooltip.svelte +1 -1
  107. package/esm/ui/dialog/DialogForm.svelte +5 -5
  108. package/esm/ui/dialog/DialogManagement.svelte +2 -2
  109. package/esm/ui/dialog/DialogPrimitive.svelte +3 -3
  110. package/esm/ui/dialog/DialogPrimitive.svelte.d.ts +1 -1
  111. package/esm/ui/dialog/FormEditAction.svelte +3 -3
  112. package/esm/ui/dialog/FormEditAction.svelte.d.ts +1 -1
  113. package/esm/ui/dialog/dialog.d.ts +1 -1
  114. package/esm/ui/dialog/dialog.js +1 -1
  115. package/esm/ui/index.d.ts +1 -1
  116. package/esm/ui/internals/FieldContainer.svelte +2 -2
  117. package/esm/ui/internals/Textarea.svelte +3 -3
  118. package/esm/ui/internals/select/MultiSelectMelt.svelte +7 -7
  119. package/esm/ui/internals/select/MultiSelectMelt.svelte.d.ts +1 -1
  120. package/esm/ui/internals/select/SelectMelt.svelte +29 -15
  121. package/esm/ui/internals/select/SelectMelt.svelte.d.ts +5 -2
  122. package/esm/ui/internals/select/SelectRadio.svelte +1 -1
  123. package/esm/ui/internals/select/SelectRadio.svelte.d.ts +1 -1
  124. package/esm/ui/link/LinkPlus.svelte +3 -3
  125. package/esm/ui/link/LinkPlus.svelte.d.ts +1 -1
  126. package/esm/virtual/Customer.js +1 -1
  127. package/esm/virtual/StateDemoEnum.d.ts +2 -2
  128. package/esm/virtual/StateDemoEnum.js +1 -1
  129. package/esm/virtual/UIEntity.js +1 -1
  130. package/esm/vite/index.js +50 -52
  131. package/package.json +19 -12
  132. package/esm/FF_Entity.d.ts +0 -2
  133. package/esm/ROUTES.d.ts +0 -102
  134. package/esm/ROUTES.js +0 -106
  135. package/esm/auth/static/assets/Page-BorYIfy9.d.ts +0 -6
  136. package/esm/auth/static/assets/Page-BorYIfy9.js +0 -1
  137. package/esm/auth/static/assets/Page-Cm4MsdIa.d.ts +0 -6
  138. package/esm/auth/static/assets/Page-Cm4MsdIa.js +0 -20
  139. package/esm/auth/static/assets/Page-CqsLm8yQ.d.ts +0 -6
  140. package/esm/auth/static/assets/Page-CqsLm8yQ.js +0 -1
  141. package/esm/auth/static/assets/Page-JfNiCSIG.css +0 -1
  142. package/esm/auth/static/assets/index-Borxa2ns.d.ts +0 -234
  143. package/esm/auth/static/assets/index-Borxa2ns.js +0 -44
  144. package/esm/common.js +0 -8
  145. package/esm/mail/templates/DefaultMail.svelte +0 -86
  146. package/esm/mail/templates/DefaultMail.svelte.d.ts +0 -30
  147. /package/esm/{BaseEnum.d.ts → internals/BaseEnum.d.ts} +0 -0
  148. /package/esm/{BaseEnum.js → internals/BaseEnum.js} +0 -0
  149. /package/esm/{FF_Fields.d.ts → internals/FF_Fields.d.ts} +0 -0
  150. /package/esm/{cellsBuildor.js → internals/cellsBuildor.js} +0 -0
  151. /package/esm/{helper.d.ts → internals/helper.d.ts} +0 -0
  152. /package/esm/{storeItem.d.ts → internals/storeItem.d.ts} +0 -0
  153. /package/esm/{storeList.d.ts → internals/storeList.d.ts} +0 -0
  154. /package/esm/{storeList.js → internals/storeList.js} +0 -0
  155. /package/esm/{theme.d.ts → internals/theme.d.ts} +0 -0
  156. /package/esm/{theme.js → internals/theme.js} +0 -0
@@ -0,0 +1,232 @@
1
+ declare function N(e: any, t: any, n?: boolean): any;
2
+ declare const li: "@attach";
3
+ declare function vt(e: any): {
4
+ ctx: any;
5
+ deps: null;
6
+ nodes_start: null;
7
+ nodes_end: null;
8
+ f: number;
9
+ first: null;
10
+ fn: any;
11
+ last: null;
12
+ next: null;
13
+ parent: any;
14
+ b: any;
15
+ prev: null;
16
+ teardown: null;
17
+ transitions: null;
18
+ wv: number;
19
+ ac: null;
20
+ };
21
+ declare function Hr(e: any, t?: () => void): {
22
+ set: (f: any) => void;
23
+ update: (f: any) => void;
24
+ subscribe: (f: any, o?: () => void) => () => void;
25
+ };
26
+ declare function $r(e: any): undefined;
27
+ declare function jr(e: any, t: any): {
28
+ subscribe: (f: any, o?: () => void) => () => void;
29
+ };
30
+ declare function Ei(e: any, t: any, n: any): {
31
+ subscribe: (f: any, o?: () => void) => () => void;
32
+ };
33
+ declare function Xt(e: any, t: boolean | undefined, n: any): void;
34
+ declare function oi(e: any): any;
35
+ declare function Tn(e: any, t: any, n: any, r: any): (p: any, x: any, ...args: any[]) => any;
36
+ declare function fi(e: any): any;
37
+ declare function Si(e: any): void;
38
+ declare const ri: unique symbol;
39
+ declare function si(e: any, t: any): any;
40
+ declare const ui: "http://www.w3.org/1999/xhtml";
41
+ declare function vi(e: any, t: any): void;
42
+ declare function _i(): void;
43
+ declare function Vr(e?: boolean): void;
44
+ declare function Nr(): DocumentFragment;
45
+ declare function $e(e: any, t: any): any;
46
+ declare function Mt(e: any, t: any, [n, r]?: [number, number]): void;
47
+ declare function Ae(e: any, t: any): void;
48
+ declare function Jt(e: any): {};
49
+ declare function Ti(): {}[];
50
+ declare function yi(e: any, t: any, n: any): any;
51
+ declare function Xe(e: any): void;
52
+ declare function xi(e: any, t: any): any;
53
+ declare function Ai(e: any, t: any): any;
54
+ declare let y: null;
55
+ declare function he(e: any, t?: boolean, n?: boolean): {
56
+ f: number;
57
+ v: any;
58
+ reactions: null;
59
+ equals: typeof Kt;
60
+ rv: number;
61
+ wv: number;
62
+ };
63
+ declare function pt(e: any, t: any): () => any;
64
+ declare function Ct(e: any, t: any): any;
65
+ declare function Or(e: any, t: any, n: any, r: any, i: any): void;
66
+ declare function Nt(e: any, t?: number, n?: boolean): any;
67
+ declare function ve(e: any): {
68
+ ctx: any;
69
+ deps: null;
70
+ effects: null;
71
+ equals: typeof Kt;
72
+ f: number;
73
+ fn: any;
74
+ reactions: null;
75
+ rv: number;
76
+ v: null;
77
+ wv: number;
78
+ parent: any;
79
+ ac: null;
80
+ };
81
+ declare function Lt(e: any, t: any): void;
82
+ declare function Fr(e: any, t: any, n: any, r: any, i: any, u?: null): void;
83
+ declare function ci(e: any): {
84
+ ctx: any;
85
+ deps: null;
86
+ effects: null;
87
+ equals: typeof Kt;
88
+ f: number;
89
+ fn: any;
90
+ reactions: null;
91
+ rv: number;
92
+ v: null;
93
+ wv: number;
94
+ parent: any;
95
+ ac: null;
96
+ };
97
+ declare function $(e: any, t: any): {
98
+ f: number;
99
+ v: any;
100
+ reactions: null;
101
+ equals: typeof Kt;
102
+ rv: number;
103
+ wv: number;
104
+ };
105
+ declare function wi(e?: string): Text;
106
+ declare function Re(e: any, t: any): void;
107
+ declare function Cr(e: any): DocumentFragment;
108
+ declare function Fe(e: any, t?: number): {
109
+ ctx: any;
110
+ deps: null;
111
+ nodes_start: null;
112
+ nodes_end: null;
113
+ f: number;
114
+ first: null;
115
+ fn: any;
116
+ last: null;
117
+ next: null;
118
+ parent: any;
119
+ b: any;
120
+ prev: null;
121
+ teardown: null;
122
+ transitions: null;
123
+ wv: number;
124
+ ac: null;
125
+ };
126
+ declare function sn(e: any): {
127
+ ctx: any;
128
+ deps: null;
129
+ nodes_start: null;
130
+ nodes_end: null;
131
+ f: number;
132
+ first: null;
133
+ fn: any;
134
+ last: null;
135
+ next: null;
136
+ parent: any;
137
+ b: any;
138
+ prev: null;
139
+ teardown: null;
140
+ transitions: null;
141
+ wv: number;
142
+ ac: null;
143
+ };
144
+ declare function Z(e: any, t?: boolean): void;
145
+ declare function Ne(e: any): any;
146
+ declare function ue(e: any, t?: boolean): {
147
+ ctx: any;
148
+ deps: null;
149
+ nodes_start: null;
150
+ nodes_end: null;
151
+ f: number;
152
+ first: null;
153
+ fn: any;
154
+ last: null;
155
+ next: null;
156
+ parent: any;
157
+ b: any;
158
+ prev: null;
159
+ teardown: null;
160
+ transitions: null;
161
+ wv: number;
162
+ ac: null;
163
+ };
164
+ declare var tt: (arg: any) => arg is any[];
165
+ declare function ai(e: any, t: any): boolean;
166
+ declare function ct(e: any): {
167
+ ctx: any;
168
+ deps: null;
169
+ nodes_start: null;
170
+ nodes_end: null;
171
+ f: number;
172
+ first: null;
173
+ fn: any;
174
+ last: null;
175
+ next: null;
176
+ parent: any;
177
+ b: any;
178
+ prev: null;
179
+ teardown: null;
180
+ transitions: null;
181
+ wv: number;
182
+ ac: null;
183
+ };
184
+ declare function ye(e: any): {
185
+ ctx: any;
186
+ deps: null;
187
+ effects: null;
188
+ equals: typeof Kt;
189
+ f: number;
190
+ fn: any;
191
+ reactions: null;
192
+ rv: number;
193
+ v: null;
194
+ wv: number;
195
+ parent: any;
196
+ ac: null;
197
+ };
198
+ declare function T(e: any): any;
199
+ declare function di(e: any): any;
200
+ declare function Pr(e: any, t: any, n: any, r?: {}): (u: any) => any;
201
+ declare function bi(e: any): void;
202
+ declare function mi(e: any, t: any): void;
203
+ declare function cr(e: any, t: any): void;
204
+ declare function hi(e: any): any;
205
+ declare function It(e: any, t?: any[], n?: typeof ye): {
206
+ ctx: any;
207
+ deps: null;
208
+ nodes_start: null;
209
+ nodes_end: null;
210
+ f: number;
211
+ first: null;
212
+ fn: any;
213
+ last: null;
214
+ next: null;
215
+ parent: any;
216
+ b: any;
217
+ prev: null;
218
+ teardown: null;
219
+ transitions: null;
220
+ wv: number;
221
+ ac: null;
222
+ };
223
+ declare function U(e: any): any;
224
+ declare var Vt: (o: any) => any;
225
+ declare function pi(e: any): boolean;
226
+ declare var In: <T>(o: T) => { [P in keyof T]: TypedPropertyDescriptor<T[P]>; } & {
227
+ [x: string]: PropertyDescriptor;
228
+ };
229
+ declare function Ee(): boolean;
230
+ declare function gi(e: any, t: any, n: any, r?: any): void;
231
+ declare function Kt(e: any): boolean;
232
+ export { N as $, li as A, vt as B, Hr as C, $r as D, jr as E, Ei as F, Xt as G, oi as H, Tn as I, fi as J, Si as K, ri as L, si as M, ui as N, vi as O, _i as P, Vr as Q, Nr as R, $e as S, Mt as T, Ae as U, Jt as V, Ti as W, yi as X, Xe as Y, xi as Z, Ai as _, y as a, he as a0, pt as a1, Ct as a2, Or as a3, Nt as a4, ve as a5, Lt as a6, Fr as a7, ci as a8, $ as a9, wi as aa, Re as b, Cr as c, Fe as d, sn as e, Z as f, Ne as g, ue as h, tt as i, ai as j, ct as k, ye as l, T as m, di as n, Pr as o, bi as p, mi as q, cr as r, hi as s, It as t, U as u, Vt as v, pi as w, In as x, Ee as y, gi as z };
@@ -0,0 +1,2 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/Page-BcSzu3xq.js","assets/Page-BHW08QWz.css"])))=>i.map(i=>d[i]);
2
+ var On=Object.defineProperty;var Cn=(e,t,n)=>t in e?On(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var je=(e,t,n)=>Cn(e,typeof t!="symbol"?t+"":t,n);(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))r(i);new MutationObserver(i=>{for(const u of i)if(u.type==="childList")for(const a of u.addedNodes)a.tagName==="LINK"&&a.rel==="modulepreload"&&r(a)}).observe(document,{childList:!0,subtree:!0});function n(i){const u={};return i.integrity&&(u.integrity=i.integrity),i.referrerPolicy&&(u.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?u.credentials="include":i.crossOrigin==="anonymous"?u.credentials="omit":u.credentials="same-origin",u}function r(i){if(i.ep)return;i.ep=!0;const u=n(i);fetch(i.href,u)}})();const xt=!1;var tt=Array.isArray,Nn=Array.prototype.indexOf,nt=Array.from,Ut=Object.defineProperty,re=Object.getOwnPropertyDescriptor,In=Object.getOwnPropertyDescriptors,Dn=Object.prototype,Rn=Array.prototype,Vt=Object.getPrototypeOf,Tt=Object.isExtensible;const W=()=>{};function Ln(e){return typeof(e==null?void 0:e.then)=="function"}function Mn(e){return e()}function de(e){for(var t=0;t<e.length;t++)e[t]()}const L=2,jt=4,Le=8,rt=16,j=32,le=64,it=128,I=256,Oe=512,D=1024,V=2048,X=4096,B=8192,ut=16384,Ht=32768,lt=65536,At=1<<17,kn=1<<18,$t=1<<19,Ge=1<<20,G=Symbol("$state"),Fn=Symbol("legacy props"),ri=Symbol(""),Yt=new class extends Error{constructor(){super(...arguments);je(this,"name","StaleReactionError");je(this,"message","The reaction that called `getAbortSignal()` was re-run or destroyed")}};function Kt(e){return e===this.v}function Wt(e,t){return e!=e?t==t:e!==t||e!==null&&typeof e=="object"||typeof e=="function"}function Gt(e){return!Wt(e,this.v)}function qn(e){throw new Error("https://svelte.dev/e/effect_in_teardown")}function Bn(){throw new Error("https://svelte.dev/e/effect_in_unowned_derived")}function Un(e){throw new Error("https://svelte.dev/e/effect_orphan")}function Vn(){throw new Error("https://svelte.dev/e/effect_update_depth_exceeded")}function jn(e){throw new Error("https://svelte.dev/e/props_invalid_value")}function Hn(){throw new Error("https://svelte.dev/e/state_descriptors_fixed")}function $n(){throw new Error("https://svelte.dev/e/state_prototype_fixed")}function Yn(){throw new Error("https://svelte.dev/e/state_unsafe_mutation")}let fe=!1,Kn=!1;function Wn(){fe=!0}const ft=1,st=2,zt=4,Gn=8,zn=16,Zn=1,Xn=2,Zt=4,Jn=8,Qn=16,er=1,tr=2,P=Symbol(),ui="http://www.w3.org/1999/xhtml",li="@attach";function ot(e){throw new Error("https://svelte.dev/e/lifecycle_outside_component")}let E=null;function Ce(e){E=e}function fi(e){return at().get(e)}function si(e,t){return at().set(e,t),t}function oi(e){return at().has(e)}function Xt(e,t=!1,n){var r=E={p:E,c:null,d:!1,e:null,m:!1,s:e,x:null,l:null};fe&&!t&&(E.l={s:null,u:null,r1:[],r2:z(!1)}),ct(()=>{r.d=!0})}function Jt(e){const t=E;if(t!==null){const a=t.e;if(a!==null){var n=y,r=w;t.e=null;try{for(var i=0;i<a.length;i++){var u=a[i];q(u.effect),M(u.reaction),sn(u.fn)}}finally{q(n),M(r)}}E=t.p,t.m=!0}return{}}function Ee(){return!fe||E!==null&&E.l===null}function at(e){return E===null&&ot(),E.c??(E.c=new Map(nr(E)||void 0))}function nr(e){let t=e.p;for(;t!==null;){const n=t.c;if(n!==null)return n;t=t.p}return null}function ne(e){if(typeof e!="object"||e===null||G in e)return e;const t=Vt(e);if(t!==Dn&&t!==Rn)return e;var n=new Map,r=tt(e),i=$(0),u=w,a=f=>{var o=w;M(u);var l=f();return M(o),l};return r&&n.set("length",$(e.length)),new Proxy(e,{defineProperty(f,o,l){(!("value"in l)||l.configurable===!1||l.enumerable===!1||l.writable===!1)&&Hn();var c=n.get(o);return c===void 0?c=a(()=>{var v=$(l.value);return n.set(o,v),v}):N(c,l.value,!0),!0},deleteProperty(f,o){var l=n.get(o);if(l===void 0){if(o in f){const s=a(()=>$(P));n.set(o,s),He(i)}}else{if(r&&typeof o=="string"){var c=n.get("length"),v=Number(o);Number.isInteger(v)&&v<c.v&&N(c,v)}N(l,P),He(i)}return!0},get(f,o,l){var d;if(o===G)return e;var c=n.get(o),v=o in f;if(c===void 0&&(!v||(d=re(f,o))!=null&&d.writable)&&(c=a(()=>{var _=ne(v?f[o]:P),b=$(_);return b}),n.set(o,c)),c!==void 0){var s=T(c);return s===P?void 0:s}return Reflect.get(f,o,l)},getOwnPropertyDescriptor(f,o){var l=Reflect.getOwnPropertyDescriptor(f,o);if(l&&"value"in l){var c=n.get(o);c&&(l.value=T(c))}else if(l===void 0){var v=n.get(o),s=v==null?void 0:v.v;if(v!==void 0&&s!==P)return{enumerable:!0,configurable:!0,value:s,writable:!0}}return l},has(f,o){var s;if(o===G)return!0;var l=n.get(o),c=l!==void 0&&l.v!==P||Reflect.has(f,o);if(l!==void 0||y!==null&&(!c||(s=re(f,o))!=null&&s.writable)){l===void 0&&(l=a(()=>{var d=c?ne(f[o]):P,_=$(d);return _}),n.set(o,l));var v=T(l);if(v===P)return!1}return c},set(f,o,l,c){var x;var v=n.get(o),s=o in f;if(r&&o==="length")for(var d=l;d<v.v;d+=1){var _=n.get(d+"");_!==void 0?N(_,P):d in f&&(_=a(()=>$(P)),n.set(d+"",_))}if(v===void 0)(!s||(x=re(f,o))!=null&&x.writable)&&(v=a(()=>$(void 0)),N(v,ne(l)),n.set(o,v));else{s=v.v!==P;var b=a(()=>ne(l));N(v,b)}var h=Reflect.getOwnPropertyDescriptor(f,o);if(h!=null&&h.set&&h.set.call(c,l),!s){if(r&&typeof o=="string"){var m=n.get("length"),p=Number(o);Number.isInteger(p)&&p>=m.v&&N(m,p+1)}He(i)}return!0},ownKeys(f){T(i);var o=Reflect.ownKeys(f).filter(v=>{var s=n.get(v);return s===void 0||s.v!==P});for(var[l,c]of n)c.v!==P&&!(l in f)&&o.push(l);return o},setPrototypeOf(){$n()}})}function He(e,t=1){N(e,e.v+t)}function St(e){try{if(e!==null&&typeof e=="object"&&G in e)return e[G]}catch{}return e}function ai(e,t){return Object.is(St(e),St(t))}function ye(e){var t=L|V,n=w!==null&&(w.f&L)!==0?w:null;return y===null||n!==null&&(n.f&I)!==0?t|=I:y.f|=$t,{ctx:E,deps:null,effects:null,equals:Kt,f:t,fn:e,reactions:null,rv:0,v:null,wv:0,parent:n??y,ac:null}}function ci(e){const t=ye(e);return hn(t),t}function ve(e){const t=ye(e);return t.equals=Gt,t}function Qt(e){var t=e.effects;if(t!==null){e.effects=null;for(var n=0;n<t.length;n+=1)Z(t[n])}}function rr(e){for(var t=e.parent;t!==null;){if((t.f&L)===0)return t;t=t.parent}return null}function en(e){var t,n=y;q(rr(e));try{Qt(e),t=wn(e)}finally{q(n)}return t}function tn(e){var t=en(e);if(e.equals(t)||(e.v=t,e.wv=gn()),!oe){var n=(K||(e.f&I)!==0)&&e.deps!==null?X:D;k(e,n)}}const pe=new Map;function z(e,t){var n={f:0,v:e,reactions:null,equals:Kt,rv:0,wv:0};return n}function $(e,t){const n=z(e);return hn(n),n}function he(e,t=!1,n=!0){var i;const r=z(e);return t||(r.equals=Gt),fe&&n&&E!==null&&E.l!==null&&((i=E.l).s??(i.s=[])).push(r),r}function N(e,t,n=!1){w!==null&&(!F||(w.f&At)!==0)&&Ee()&&(w.f&(L|rt|At))!==0&&!(S!=null&&S[1].includes(e)&&S[0]===w)&&Yn();let r=n?ne(t):t;return ie(e,r)}function ie(e,t){if(!e.equals(t)){var n=e.v;oe?pe.set(e,t):pe.set(e,n),e.v=t,(e.f&L)!==0&&((e.f&V)!==0&&en(e),k(e,(e.f&I)===0?D:X)),e.wv=gn(),nn(e,V),Ee()&&y!==null&&(y.f&D)!==0&&(y.f&(j|le))===0&&(R===null?pr([e]):R.push(e))}return t}function Pt(e,t=1){var n=T(e),r=t===1?n++:n--;return N(e,n),r}function nn(e,t){var n=e.reactions;if(n!==null)for(var r=Ee(),i=n.length,u=0;u<i;u++){var a=n[u],f=a.f;(f&V)===0&&(!r&&a===y||(k(a,t),(f&(D|I))!==0&&((f&L)!==0?nn(a,X):dt(a))))}}let ir=!1;var Ot,rn,un,ln;function ur(){if(Ot===void 0){Ot=window,rn=/Firefox/.test(navigator.userAgent);var e=Element.prototype,t=Node.prototype,n=Text.prototype;un=re(t,"firstChild").get,ln=re(t,"nextSibling").get,Tt(e)&&(e.__click=void 0,e.__className=void 0,e.__attributes=null,e.__style=void 0,e.__e=void 0),Tt(n)&&(n.__t=void 0)}}function Me(e=""){return document.createTextNode(e)}function Ne(e){return un.call(e)}function ke(e){return ln.call(e)}function Ct(e,t){return Ne(e)}function $e(e,t){{var n=Ne(e);return n instanceof Comment&&n.data===""?ke(n):n}}function Nt(e,t=1,n=!1){let r=e;for(;t--;)r=ke(r);return r}function lr(e){e.textContent=""}function fn(e){y===null&&w===null&&Un(),w!==null&&(w.f&I)!==0&&y===null&&Bn(),oe&&qn()}function fr(e,t){var n=t.last;n===null?t.last=t.first=e:(n.next=e,e.prev=n,t.last=e)}function se(e,t,n,r=!0){var i=y,u={ctx:E,deps:null,nodes_start:null,nodes_end:null,f:e|V,first:null,fn:t,last:null,next:null,parent:i,b:i&&i.b,prev:null,teardown:null,transitions:null,wv:0,ac:null};if(n)try{Be(u),u.f|=Ht}catch(o){throw Z(u),o}else t!==null&&dt(u);var a=n&&u.deps===null&&u.first===null&&u.nodes_start===null&&u.teardown===null&&(u.f&($t|it))===0;if(!a&&r&&(i!==null&&fr(u,i),w!==null&&(w.f&L)!==0)){var f=w;(f.effects??(f.effects=[])).push(u)}return u}function ct(e){const t=se(Le,null,!1);return k(t,D),t.teardown=e,t}function ze(e){fn();var t=y!==null&&(y.f&j)!==0&&E!==null&&!E.m;if(t){var n=E;(n.e??(n.e=[])).push({fn:e,effect:y,reaction:w})}else{var r=sn(e);return r}}function sr(e){return fn(),vt(e)}function or(e){const t=se(le,e,!0);return(n={})=>new Promise(r=>{n.outro?J(t,()=>{Z(t),r(void 0)}):(Z(t),r(void 0))})}function sn(e){return se(jt,e,!1)}function vi(e,t){var n=E,r={effect:null,ran:!1};n.l.r1.push(r),r.effect=vt(()=>{e(),!r.ran&&(r.ran=!0,N(n.l.r2,!0),U(t))})}function _i(){var e=E;vt(()=>{if(T(e.l.r2)){for(var t of e.l.r1){var n=t.effect;(n.f&D)!==0&&k(n,X),xe(n)&&Be(n),t.ran=!1}e.l.r2.v=!1}})}function vt(e){return se(Le,e,!0)}function It(e,t=[],n=ye){const r=t.map(n);return Fe(()=>e(...r.map(T)))}function Fe(e,t=0){var n=se(Le|rt|t,e,!0);return n}function ue(e,t=!0){return se(Le|j,e,!0,t)}function on(e){var t=e.teardown;if(t!==null){const n=oe,r=w;Dt(!0),M(null);try{t.call(null)}finally{Dt(n),M(r)}}}function an(e,t=!1){var i;var n=e.first;for(e.first=e.last=null;n!==null;){(i=n.ac)==null||i.abort(Yt);var r=n.next;(n.f&le)!==0?n.parent=null:Z(n,t),n=r}}function ar(e){for(var t=e.first;t!==null;){var n=t.next;(t.f&j)===0&&Z(t),t=n}}function Z(e,t=!0){var n=!1;(t||(e.f&kn)!==0)&&e.nodes_start!==null&&e.nodes_end!==null&&(cr(e.nodes_start,e.nodes_end),n=!0),an(e,t&&!n),De(e,0),k(e,ut);var r=e.transitions;if(r!==null)for(const u of r)u.stop();on(e);var i=e.parent;i!==null&&i.first!==null&&cn(e),e.next=e.prev=e.teardown=e.ctx=e.deps=e.fn=e.nodes_start=e.nodes_end=e.ac=null}function cr(e,t){for(;e!==null;){var n=e===t?null:ke(e);e.remove(),e=n}}function cn(e){var t=e.parent,n=e.prev,r=e.next;n!==null&&(n.next=r),r!==null&&(r.prev=n),t!==null&&(t.first===e&&(t.first=r),t.last===e&&(t.last=n))}function J(e,t){var n=[];_t(e,n,!0),vn(n,()=>{Z(e),t&&t()})}function vn(e,t){var n=e.length;if(n>0){var r=()=>--n||t();for(var i of e)i.out(r)}else t()}function _t(e,t,n){if((e.f&B)===0){if(e.f^=B,e.transitions!==null)for(const a of e.transitions)(a.is_global||n)&&t.push(a);for(var r=e.first;r!==null;){var i=r.next,u=(r.f&lt)!==0||(r.f&j)!==0;_t(r,t,u?n:!1),r=i}}}function me(e){_n(e,!0)}function _n(e,t){if((e.f&B)!==0){e.f^=B;for(var n=e.first;n!==null;){var r=n.next,i=(n.f&lt)!==0||(n.f&j)!==0;_n(n,i?t:!1),n=r}if(e.transitions!==null)for(const u of e.transitions)(u.is_global||t)&&u.in()}}let ge=[],Ze=[];function dn(){var e=ge;ge=[],de(e)}function vr(){var e=Ze;Ze=[],de(e)}function qe(e){ge.length===0&&queueMicrotask(dn),ge.push(e)}function _r(){ge.length>0&&dn(),Ze.length>0&&vr()}function dr(e){var t=y;if((t.f&Ht)===0){if((t.f&it)===0)throw e;t.fn(e)}else pn(e,t)}function pn(e,t){for(;t!==null;){if((t.f&it)!==0)try{t.b.error(e);return}catch{}t=t.parent}throw e}let be=!1,we=null,Q=!1,oe=!1;function Dt(e){oe=e}let _e=[];let w=null,F=!1;function M(e){w=e}let y=null;function q(e){y=e}let S=null;function hn(e){w!==null&&w.f&Ge&&(S===null?S=[w,[e]]:S[1].push(e))}let O=null,C=0,R=null;function pr(e){R=e}let mn=1,Ie=0,K=!1;function gn(){return++mn}function xe(e){var v;var t=e.f;if((t&V)!==0)return!0;if((t&X)!==0){var n=e.deps,r=(t&I)!==0;if(n!==null){var i,u,a=(t&Oe)!==0,f=r&&y!==null&&!K,o=n.length;if(a||f){var l=e,c=l.parent;for(i=0;i<o;i++)u=n[i],(a||!((v=u==null?void 0:u.reactions)!=null&&v.includes(l)))&&(u.reactions??(u.reactions=[])).push(l);a&&(l.f^=Oe),f&&c!==null&&(c.f&I)===0&&(l.f^=I)}for(i=0;i<o;i++)if(u=n[i],xe(u)&&tn(u),u.wv>e.wv)return!0}(!r||y!==null&&!K)&&k(e,D)}return!1}function bn(e,t,n=!0){var r=e.reactions;if(r!==null)for(var i=0;i<r.length;i++){var u=r[i];S!=null&&S[1].includes(e)&&S[0]===w||((u.f&L)!==0?bn(u,t,!1):t===u&&(n?k(u,V):(u.f&D)!==0&&k(u,X),dt(u)))}}function wn(e){var d;var t=O,n=C,r=R,i=w,u=K,a=S,f=E,o=F,l=e.f;O=null,C=0,R=null,K=(l&I)!==0&&(F||!Q||w===null),w=(l&(j|le))===0?e:null,S=null,Ce(e.ctx),F=!1,Ie++,e.f|=Ge,e.ac!==null&&(e.ac.abort(Yt),e.ac=null);try{var c=(0,e.fn)(),v=e.deps;if(O!==null){var s;if(De(e,C),v!==null&&C>0)for(v.length=C+O.length,s=0;s<O.length;s++)v[C+s]=O[s];else e.deps=v=O;if(!K||(l&L)!==0&&e.reactions!==null)for(s=C;s<v.length;s++)((d=v[s]).reactions??(d.reactions=[])).push(e)}else v!==null&&C<v.length&&(De(e,C),v.length=C);if(Ee()&&R!==null&&!F&&v!==null&&(e.f&(L|X|V))===0)for(s=0;s<R.length;s++)bn(R[s],e);return i!==null&&i!==e&&(Ie++,R!==null&&(r===null?r=R:r.push(...R))),c}catch(_){dr(_)}finally{O=t,C=n,R=r,w=i,K=u,S=a,Ce(f),F=o,e.f^=Ge}}function hr(e,t){let n=t.reactions;if(n!==null){var r=Nn.call(n,e);if(r!==-1){var i=n.length-1;i===0?n=t.reactions=null:(n[r]=n[i],n.pop())}}n===null&&(t.f&L)!==0&&(O===null||!O.includes(t))&&(k(t,X),(t.f&(I|Oe))===0&&(t.f^=Oe),Qt(t),De(t,0))}function De(e,t){var n=e.deps;if(n!==null)for(var r=t;r<n.length;r++)hr(e,n[r])}function Be(e){var t=e.f;if((t&ut)===0){k(e,D);var n=y,r=Q;y=e,Q=!0;try{(t&rt)!==0?ar(e):an(e),on(e);var i=wn(e);e.teardown=typeof i=="function"?i:null,e.wv=mn;var u;xt&&Kn&&(e.f&V)!==0&&e.deps}finally{Q=r,y=n}}}function mr(){try{Vn()}catch(e){if(we!==null)pn(e,we);else throw e}}function En(){var e=Q;try{var t=0;for(Q=!0;_e.length>0;){t++>1e3&&mr();var n=_e,r=n.length;_e=[];for(var i=0;i<r;i++){var u=br(n[i]);gr(u)}pe.clear()}}finally{be=!1,Q=e,we=null}}function gr(e){var t=e.length;if(t!==0)for(var n=0;n<t;n++){var r=e[n];(r.f&(ut|B))===0&&xe(r)&&(Be(r),r.deps===null&&r.first===null&&r.nodes_start===null&&(r.teardown===null?cn(r):r.fn=null))}}function dt(e){be||(be=!0,queueMicrotask(En));for(var t=we=e;t.parent!==null;){t=t.parent;var n=t.f;if((n&(le|j))!==0){if((n&D)===0)return;t.f^=D}}_e.push(t)}function br(e){for(var t=[],n=e;n!==null;){var r=n.f,i=(r&(j|le))!==0,u=i&&(r&D)!==0;if(!u&&(r&B)===0){(r&jt)!==0?t.push(n):i?n.f^=D:xe(n)&&Be(n);var a=n.first;if(a!==null){n=a;continue}}var f=n.parent;for(n=n.next;n===null&&f!==null;)n=f.next,f=f.parent}return t}function wr(e){for(var t;;){if(_r(),_e.length===0)return be=!1,we=null,t;be=!0,En()}}function T(e){var t=e.f,n=(t&L)!==0;if(w!==null&&!F){if(!(S!=null&&S[1].includes(e))||S[0]!==w){var r=w.deps;e.rv<Ie&&(e.rv=Ie,O===null&&r!==null&&r[C]===e?C++:O===null?O=[e]:(!K||!O.includes(e))&&O.push(e))}}else if(n&&e.deps===null&&e.effects===null){var i=e,u=i.parent;u!==null&&(u.f&I)===0&&(i.f^=I)}return n&&(i=e,xe(i)&&tn(i)),oe&&pe.has(e)?pe.get(e):e.v}function U(e){var t=F;try{return F=!0,e()}finally{F=t}}const Er=-7169;function k(e,t){e.f=e.f&Er|t}function Xe(e){if(!(typeof e!="object"||!e||e instanceof EventTarget)){if(G in e)Je(e);else if(!Array.isArray(e))for(let t in e){const n=e[t];typeof n=="object"&&n&&G in n&&Je(n)}}}function Je(e,t=new Set){if(typeof e=="object"&&e!==null&&!(e instanceof EventTarget)&&!t.has(e)){t.add(e),e instanceof Date&&e.getTime();for(let r in e)try{Je(e[r],t)}catch{}const n=Vt(e);if(n!==Object.prototype&&n!==Array.prototype&&n!==Map.prototype&&n!==Set.prototype&&n!==Date.prototype){const r=In(n);for(let i in r){const u=r[i].get;if(u)try{u.call(e)}catch{}}}}}function di(e){return e.endsWith("capture")&&e!=="gotpointercapture"&&e!=="lostpointercapture"}const yr=["beforeinput","click","change","dblclick","contextmenu","focusin","focusout","input","keydown","keyup","mousedown","mousemove","mouseout","mouseover","mouseup","pointerdown","pointermove","pointerout","pointerover","pointerup","touchend","touchmove","touchstart"];function pi(e){return yr.includes(e)}const xr={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 hi(e){return e=e.toLowerCase(),xr[e]??e}const Tr=["touchstart","touchmove"];function Ar(e){return Tr.includes(e)}function mi(e,t){if(t){const n=document.body;e.autofocus=!0,qe(()=>{document.activeElement===n&&e.focus()})}}let Rt=!1;function Sr(){Rt||(Rt=!0,document.addEventListener("reset",e=>{Promise.resolve().then(()=>{var t;if(!e.defaultPrevented)for(const n of e.target.elements)(t=n.__on_r)==null||t.call(n)})},{capture:!0}))}function yn(e){var t=w,n=y;M(null),q(null);try{return e()}finally{M(t),q(n)}}function gi(e,t,n,r=n){e.addEventListener(t,()=>yn(n));const i=e.__on_r;i?e.__on_r=()=>{i(),r(!0)}:e.__on_r=()=>r(!0),Sr()}const xn=new Set,Qe=new Set;function Pr(e,t,n,r={}){function i(u){if(r.capture||ce.call(t,u),!u.cancelBubble)return yn(()=>n==null?void 0:n.call(this,u))}return e.startsWith("pointer")||e.startsWith("touch")||e==="wheel"?qe(()=>{t.addEventListener(e,i,r)}):t.addEventListener(e,i,r),i}function Or(e,t,n,r,i){var u={capture:r,passive:i},a=Pr(e,t,n,u);(t===document.body||t===window||t===document||t instanceof HTMLMediaElement)&&ct(()=>{t.removeEventListener(e,a,u)})}function bi(e){for(var t=0;t<e.length;t++)xn.add(e[t]);for(var n of Qe)n(e)}function ce(e){var p;var t=this,n=t.ownerDocument,r=e.type,i=((p=e.composedPath)==null?void 0:p.call(e))||[],u=i[0]||e.target,a=0,f=e.__root;if(f){var o=i.indexOf(f);if(o!==-1&&(t===document||t===window)){e.__root=t;return}var l=i.indexOf(t);if(l===-1)return;o<=l&&(a=o)}if(u=i[a]||e.target,u!==t){Ut(e,"currentTarget",{configurable:!0,get(){return u||n}});var c=w,v=y;M(null),q(null);try{for(var s,d=[];u!==null;){var _=u.assignedSlot||u.parentNode||u.host||null;try{var b=u["__"+r];if(b!=null&&(!u.disabled||e.target===u))if(tt(b)){var[h,...m]=b;h.apply(u,[e,...m])}else b.call(u,e)}catch(x){s?d.push(x):s=x}if(e.cancelBubble||_===t||_===null)break;u=_}if(s){for(let x of d)queueMicrotask(()=>{throw x});throw s}}finally{e.__root=t,delete e.currentTarget,M(c),q(v)}}}function Cr(e){var t=document.createElement("template");return t.innerHTML=e.replaceAll("<!>","<!---->"),t.content}function Re(e,t){var n=y;n.nodes_start===null&&(n.nodes_start=e,n.nodes_end=t)}function pt(e,t){var n=(t&er)!==0,r=(t&tr)!==0,i,u=!e.startsWith("<!>");return()=>{i===void 0&&(i=Cr(u?e:"<!>"+e),n||(i=Ne(i)));var a=r||rn?document.importNode(i,!0):i.cloneNode(!0);if(n){var f=Ne(a),o=a.lastChild;Re(f,o)}else Re(a,a);return a}}function wi(e=""){{var t=Me(e+"");return Re(t,t),t}}function Nr(){var e=document.createDocumentFragment(),t=document.createComment(""),n=Me();return e.append(t,n),Re(t,n),e}function Ae(e,t){e!==null&&e.before(t)}function Lt(e,t){var n=t==null?"":typeof t=="object"?t+"":t;n!==(e.__t??(e.__t=e.nodeValue))&&(e.__t=n,e.nodeValue=n+"")}function Ir(e,t){return Dr(e,t)}const ee=new Map;function Dr(e,{target:t,anchor:n,props:r={},events:i,context:u,intro:a=!0}){ur();var f=new Set,o=v=>{for(var s=0;s<v.length;s++){var d=v[s];if(!f.has(d)){f.add(d);var _=Ar(d);t.addEventListener(d,ce,{passive:_});var b=ee.get(d);b===void 0?(document.addEventListener(d,ce,{passive:_}),ee.set(d,1)):ee.set(d,b+1)}}};o(nt(xn)),Qe.add(o);var l=void 0,c=or(()=>{var v=n??t.appendChild(Me());return ue(()=>{if(u){Xt({});var s=E;s.c=u}i&&(r.$$events=i),l=e(v,r)||{},u&&Jt()}),()=>{var _;for(var s of f){t.removeEventListener(s,ce);var d=ee.get(s);--d===0?(document.removeEventListener(s,ce),ee.delete(s)):ee.set(s,d)}Qe.delete(o),v!==n&&((_=v.parentNode)==null||_.removeChild(v))}});return Rr.set(l,c),l}let Rr=new WeakMap;const Ye=0,Se=1,Ke=2;function Lr(e,t,n,r,i){var u=e,a=Ee(),f=E,o=P,l,c,v,s=a?z(void 0):he(void 0,!1,!1),d=a?z(void 0):he(void 0,!1,!1),_=!1;function b(m,p){_=!0,p&&(q(h),M(h),Ce(f));try{m===Se&&r&&(c?me(c):c=ue(()=>r(u,s))),m!==Ye&&l&&J(l,()=>l=null),m!==Se&&c&&J(c,()=>c=null),m!==Ke&&v&&J(v,()=>v=null)}finally{p&&(Ce(null),M(null),q(null),wr())}}var h=Fe(()=>{if(o!==(o=t())){if(Ln(o)){var m=o;_=!1,m.then(p=>{m===o&&(ie(s,p),b(Se,!0))},p=>{if(m===o)throw ie(d,p),b(Ke,!0),d.v}),qe(()=>{_||b(Ye,!0)})}else ie(s,o),b(Se,!1);return()=>o=P}})}function Mt(e,t,[n,r]=[0,0]){var i=e,u=null,a=null,f=P,o=n>0?lt:0,l=!1;const c=(s,d=!0)=>{l=!0,v(d,s)},v=(s,d)=>{f!==(f=s)&&(f?(u?me(u):d&&(u=ue(()=>d(i))),a&&J(a,()=>{a=null})):(a?me(a):d&&(a=ue(()=>d(i,[n+1,r]))),u&&J(u,()=>{u=null})))};Fe(()=>{l=!1,t(c),l||v(null,null)},o)}function Mr(e,t){return t}function kr(e,t,n,r){for(var i=[],u=t.length,a=0;a<u;a++)_t(t[a].e,i,!0);var f=u>0&&i.length===0&&n!==null;if(f){var o=n.parentNode;lr(o),o.append(n),r.clear(),Y(e,t[0].prev,t[u-1].next)}vn(i,()=>{for(var l=0;l<u;l++){var c=t[l];f||(r.delete(c.k),Y(e,c.prev,c.next)),Z(c.e,!f)}})}function Fr(e,t,n,r,i,u=null){var a=e,f={flags:t,items:new Map,first:null},o=(t&zt)!==0;if(o){var l=e;a=l.appendChild(Me())}var c=null,v=!1,s=ve(()=>{var d=n();return tt(d)?d:d==null?[]:nt(d)});Fe(()=>{var d=T(s),_=d.length;v&&_===0||(v=_===0,qr(d,f,a,i,t,r,n),u!==null&&(_===0?c?me(c):c=ue(()=>u(a)):c!==null&&J(c,()=>{c=null})),T(s))})}function qr(e,t,n,r,i,u,a){var gt,bt,wt,Et;var f=(i&Gn)!==0,o=(i&(ft|st))!==0,l=e.length,c=t.items,v=t.first,s=v,d,_=null,b,h=[],m=[],p,x,g,A;if(f)for(A=0;A<l;A+=1)p=e[A],x=u(p,A),g=c.get(x),g!==void 0&&((gt=g.a)==null||gt.measure(),(b??(b=new Set)).add(g));for(A=0;A<l;A+=1){if(p=e[A],x=u(p,A),g=c.get(x),g===void 0){var Sn=s?s.e.nodes_start:n;_=Ur(Sn,t,_,_===null?t.first:_.next,p,x,A,r,i,a),c.set(x,_),h=[],m=[],s=_.next;continue}if(o&&Br(g,p,A,i),(g.e.f&B)!==0&&(me(g.e),f&&((bt=g.a)==null||bt.unfix(),(b??(b=new Set)).delete(g))),g!==s){if(d!==void 0&&d.has(g)){if(h.length<m.length){var Te=m[0],H;_=Te.prev;var mt=h[0],Ue=h[h.length-1];for(H=0;H<h.length;H+=1)kt(h[H],Te,n);for(H=0;H<m.length;H+=1)d.delete(m[H]);Y(t,mt.prev,Ue.next),Y(t,_,mt),Y(t,Ue,Te),s=Te,_=Ue,A-=1,h=[],m=[]}else d.delete(g),kt(g,s,n),Y(t,g.prev,g.next),Y(t,g,_===null?t.first:_.next),Y(t,_,g),_=g;continue}for(h=[],m=[];s!==null&&s.k!==x;)(s.e.f&B)===0&&(d??(d=new Set)).add(s),m.push(s),s=s.next;if(s===null)continue;g=s}h.push(g),_=g,s=g.next}if(s!==null||d!==void 0){for(var ae=d===void 0?[]:nt(d);s!==null;)(s.e.f&B)===0&&ae.push(s),s=s.next;var Ve=ae.length;if(Ve>0){var Pn=(i&zt)!==0&&l===0?n:null;if(f){for(A=0;A<Ve;A+=1)(wt=ae[A].a)==null||wt.measure();for(A=0;A<Ve;A+=1)(Et=ae[A].a)==null||Et.fix()}kr(t,ae,Pn,c)}}f&&qe(()=>{var yt;if(b!==void 0)for(g of b)(yt=g.a)==null||yt.apply()}),y.first=t.first&&t.first.e,y.last=_&&_.e}function Br(e,t,n,r){(r&ft)!==0&&ie(e.v,t),(r&st)!==0?ie(e.i,n):e.i=n}function Ur(e,t,n,r,i,u,a,f,o,l){var c=(o&ft)!==0,v=(o&zn)===0,s=c?v?he(i,!1,!1):z(i):i,d=(o&st)===0?a:z(a),_={i:d,v:s,k:u,a:null,e:null,prev:n,next:r};try{return _.e=ue(()=>f(e,s,d,l),ir),_.e.prev=n&&n.e,_.e.next=r&&r.e,n===null?t.first=_:(n.next=_,n.e.next=_.e),r!==null&&(r.prev=_,r.e.prev=_.e),_}finally{}}function kt(e,t,n){for(var r=e.next?e.next.e.nodes_start:n,i=t?t.e.nodes_start:n,u=e.e.nodes_start;u!==r;){var a=ke(u);i.before(u),u=a}}function Y(e,t,n){t===null?e.first=n:(t.next=n,t.e.next=n&&n.e),n!==null&&(n.prev=t,n.e.prev=t&&t.e)}function Vr(e=!1){const t=E,n=t.l.u;if(!n)return;let r=()=>Xe(t.s);if(e){let i=0,u={};const a=ye(()=>{let f=!1;const o=t.s;for(const l in o)o[l]!==u[l]&&(u[l]=o[l],f=!0);return f&&i++,i});r=()=>T(a)}n.b.length&&sr(()=>{Ft(t,r),de(n.b)}),ze(()=>{const i=U(()=>n.m.map(Mn));return()=>{for(const u of i)typeof u=="function"&&u()}}),n.a.length&&ze(()=>{Ft(t,r),de(n.a)})}function Ft(e,t){if(e.l.s)for(const n of e.l.s)T(n);t()}function ht(e,t,n){if(e==null)return t(void 0),n&&n(void 0),W;const r=U(()=>e.subscribe(t,n));return r.unsubscribe?()=>r.unsubscribe():r}const te=[];function jr(e,t){return{subscribe:Hr(e,t).subscribe}}function Hr(e,t=W){let n=null;const r=new Set;function i(f){if(Wt(e,f)&&(e=f,n)){const o=!te.length;for(const l of r)l[1](),te.push(l,e);if(o){for(let l=0;l<te.length;l+=2)te[l][0](te[l+1]);te.length=0}}}function u(f){i(f(e))}function a(f,o=W){const l=[f,o];return r.add(l),r.size===1&&(n=t(i,u)||W),f(e),()=>{r.delete(l),r.size===0&&n&&(n(),n=null)}}return{set:i,update:u,subscribe:a}}function Ei(e,t,n){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 u=t.length<2;return jr(n,(a,f)=>{let o=!1;const l=[];let c=0,v=W;const s=()=>{if(c)return;v();const _=t(r?l[0]:l,a,f);u?a(_):v=typeof _=="function"?_:W},d=i.map((_,b)=>ht(_,h=>{l[b]=h,c&=~(1<<b),o&&s()},()=>{c|=1<<b}));return o=!0,s(),function(){de(d),v(),o=!1}})}function $r(e){let t;return ht(e,n=>t=n)(),t}let Pe=!1,et=Symbol();function yi(e,t,n){const r=n[t]??(n[t]={store:null,source:he(void 0),unsubscribe:W});if(r.store!==e&&!(et in n))if(r.unsubscribe(),r.store=e??null,e==null)r.source.v=void 0,r.unsubscribe=W;else{var i=!0;r.unsubscribe=ht(e,u=>{i?r.source.v=u:N(r.source,u)}),i=!1}return e&&et in n?$r(e):T(r.source)}function xi(e,t){return e.set(t),t}function Ti(){const e={};function t(){ct(()=>{for(var n in e)e[n].unsubscribe();Ut(e,et,{enumerable:!1,value:!0})})}return[e,t]}function Yr(e){var t=Pe;try{return Pe=!1,[e(),Pe]}finally{Pe=t}}const Kr={get(e,t){if(!e.exclude.includes(t))return T(e.version),t in e.special?e.special[t]():e.props[t]},set(e,t,n){return t in e.special||(e.special[t]=Tn({get[t](){return e.props[t]}},t,Zt)),e.special[t](n),Pt(e.version),!0},getOwnPropertyDescriptor(e,t){if(!e.exclude.includes(t)&&t in e.props)return{enumerable:!0,configurable:!0,value:e.props[t]}},deleteProperty(e,t){return e.exclude.includes(t)||(e.exclude.push(t),Pt(e.version)),!0},has(e,t){return e.exclude.includes(t)?!1:t in e.props},ownKeys(e){return Reflect.ownKeys(e.props).filter(t=>!e.exclude.includes(t))}};function Ai(e,t){return new Proxy({props:e,exclude:t,special:{},version:z(0)},Kr)}function Wr(e){var t;return((t=e.ctx)==null?void 0:t.d)??!1}function Tn(e,t,n,r){var m;var i=!fe||(n&Xn)!==0,u=(n&Jn)!==0,a=(n&Qn)!==0,f=r,o=!0,l=()=>(o&&(o=!1,f=a?U(r):r),f),c;if(u){var v=G in e||Fn in e;c=((m=re(e,t))==null?void 0:m.set)??(v&&t in e?p=>e[t]=p:void 0)}var s,d=!1;u?[s,d]=Yr(()=>e[t]):s=e[t],s===void 0&&r!==void 0&&(s=l(),c&&(i&&jn(),c(s)));var _;if(i?_=()=>{var p=e[t];return p===void 0?l():(o=!0,p)}:_=()=>{var p=e[t];return p!==void 0&&(f=void 0),p===void 0?f:p},i&&(n&Zt)===0)return _;if(c){var b=e.$$legacy;return function(p,x){return arguments.length>0?((!i||!x||b||d)&&c(x?_():p),p):_()}}var h=((n&Zn)!==0?ye:ve)(_);return u&&T(h),function(p,x){if(arguments.length>0){const g=x?T(h):i&&u?ne(p):p;return N(h,g),f!==void 0&&(f=g),p}return Wr(h)?h.v:T(h)}}function An(e){E===null&&ot(),fe&&E.l!==null?Gr(E).m.push(e):ze(()=>{const t=U(e);if(typeof t=="function")return t})}function Si(e){E===null&&ot(),An(()=>()=>U(e))}function Gr(e){var t=e.l;return t.u??(t.u={a:[],b:[],m:[]})}const zr="modulepreload",Zr=function(e){return"/api/static/"+e},qt={},We=function(t,n,r){let i=Promise.resolve();if(n&&n.length>0){let a=function(l){return Promise.all(l.map(c=>Promise.resolve(c).then(v=>({status:"fulfilled",value:v}),v=>({status:"rejected",reason:v}))))};document.getElementsByTagName("link");const f=document.querySelector("meta[property=csp-nonce]"),o=(f==null?void 0:f.nonce)||(f==null?void 0:f.getAttribute("nonce"));i=a(n.map(l=>{if(l=Zr(l),l in qt)return;qt[l]=!0;const c=l.endsWith(".css"),v=c?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${l}"]${v}`))return;const s=document.createElement("link");if(s.rel=c?"stylesheet":zr,c||(s.as="script"),s.crossOrigin="",s.href=l,o&&s.setAttribute("nonce",o),document.head.appendChild(s),c)return new Promise((d,_)=>{s.addEventListener("load",d),s.addEventListener("error",()=>_(new Error(`Unable to preload CSS for ${l}`)))})}))}function u(a){const f=new Event("vite:preloadError",{cancelable:!0});if(f.payload=a,window.dispatchEvent(f),!f.defaultPrevented)throw a}return i.then(a=>{for(const f of a||[])f.status==="rejected"&&u(f.reason);return t().catch(u)})},Xr="5";var Bt;typeof window<"u"&&((Bt=window.__svelte??(window.__svelte={})).v??(Bt.v=new Set)).add(Xr);Wn();var Jr=pt('<button class="svelte-1vqrvep"> </button>'),Qr=pt(' <div class="debug svelte-1vqrvep"></div>',1),ei=pt("<main><!></main> <!>",1);function ti(e,t){Xt(t,!1);let n=Tn(t,"firstlyData",8);const r={auth:We(()=>import("./Page-BcSzu3xq.js"),__vite__mapDeps([0,1])),admin:We(()=>import("./Page-sEK21EQB.js"),[]),storage:We(()=>import("./Page-5iUUg7GN.js"),[])};let i=he();function u(d){N(i,r[d])}const a=()=>Object.keys(r);An(()=>{u(n().module)}),Vr();var f=ei(),o=$e(f),l=Ct(o);{var c=d=>{var _=Nr(),b=$e(_);Lr(b,()=>T(i),null,(h,m)=>{var p=ve(()=>{var{default:g}=T(m);return{ModuleComponent:g}}),x=ve(()=>T(p).ModuleComponent);T(x)(h,{get firstlyData(){return n()}})}),Ae(d,_)};Mt(l,d=>{T(i)&&d(c)})}var v=Nt(o,2);{var s=d=>{var _=Qr(),b=$e(_),h=Nt(b);Fr(h,5,()=>U(a),Mr,(m,p)=>{var x=Jr(),g=Ct(x);It(()=>Lt(g,`Load ${T(p)??""}`)),Or("click",x,()=>u(T(p))),Ae(m,x)}),It(m=>Lt(b,`${m??""} `),[()=>(Xe(n()),U(()=>console.info(n())))],ve),Ae(d,_)};Mt(v,d=>{Xe(n()),U(()=>n().debug)&&d(s)})}Ae(e,f),Jt()}Ir(ti,{target:document.getElementById("app"),props:{firstlyData}});export{N as $,li as A,vt as B,Hr as C,$r as D,jr as E,Ei as F,Xt as G,oi as H,Tn as I,fi as J,Si as K,ri as L,si as M,ui as N,vi as O,_i as P,Vr as Q,Nr as R,$e as S,Mt as T,Ae as U,Jt as V,Ti as W,yi as X,Xe as Y,xi as Z,Ai as _,y as a,he as a0,pt as a1,Ct as a2,Or as a3,Nt as a4,ve as a5,Lt as a6,Fr as a7,ci as a8,$ as a9,wi as aa,Re as b,Cr as c,Fe as d,sn as e,Z as f,Ne as g,ue as h,tt as i,ai as j,ct as k,ye as l,T as m,di as n,Pr as o,bi as p,mi as q,cr as r,hi as s,It as t,U as u,Vt as v,pi as w,In as x,Ee as y,gi 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-RpcgeXPm.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 '../internals'
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 '../internals'
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 '../internals'
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 '../internals'
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 '../internals'
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>;