diff --git a/Server/app/layouts/main.jl.html b/Server/app/layouts/main.jl.html
index 8aff019..a928680 100644
--- a/Server/app/layouts/main.jl.html
+++ b/Server/app/layouts/main.jl.html
@@ -12,6 +12,10 @@
+
+
+
+
@@ -20,6 +24,8 @@
+
+
diff --git a/Server/app/resources/basic/BasicController.jl b/Server/app/resources/basic/BasicController.jl
index 0936a62..0e95ee2 100644
--- a/Server/app/resources/basic/BasicController.jl
+++ b/Server/app/resources/basic/BasicController.jl
@@ -7,7 +7,7 @@ using Server.DatabaseSupport, Server.TemplateEditor
controller = "basic"
dict_layouts = Dict(
- :landing => generate_layout_html("main",controller,"landing",css=["landing"],libraries=["Leaflet"]),
+ :landing => generate_layout_html("main",controller,"landing",css=["landing"],libraries=["Leaflet"],preload=[Dict("path"=>"/img/crowd.webp","type"=>"image")]),
:manifesto => generate_layout_html("main",controller,"manifesto"),
:join_us => generate_layout_html("main",controller,"join_us",libraries=["Leaflet"]),
:compass => generate_layout_html("main",controller,"compass"),
diff --git a/Server/app/svelte/public/css/common.css b/Server/app/svelte/public/css/common.css
index 2cbbc6c..23b129a 100644
--- a/Server/app/svelte/public/css/common.css
+++ b/Server/app/svelte/public/css/common.css
@@ -60,9 +60,11 @@ body {
font-style: normal;
font-display: swap;
src:
- url('/fonts/LoraSerif/Lora-Regular.ttf') format('ttf'),
- url('/fonts/LoraSerif/Lora-Regular.woff') format('woff'),
- url('/fonts/LoraSerif/Lora-Regular.woff2') format('woff');
+ url('/fonts/LoraSerif/Lora-Regular.woff2') format('woff'),
+ url('/fonts/LoraSerif/Lora-Regular.woff') format('woff'),
+ url('/fonts/LoraSerif/Lora-Regular.ttf') format('ttf');
+
+
}
.serif {
diff --git a/Server/app/svelte/src/footer/footer-component.svelte b/Server/app/svelte/src/footer/footer-component.svelte
index 5c13247..4498f16 100644
--- a/Server/app/svelte/src/footer/footer-component.svelte
+++ b/Server/app/svelte/src/footer/footer-component.svelte
@@ -53,7 +53,7 @@ footer {
position: relative;
bottom: 0;
width: 100%;
- height: auto;
+ height: 13.2875rem;
background: var(--gray);
border-top: var(--red) solid 0.5rem;
}
diff --git a/Server/config/libsoc.org.conf b/Server/config/libsoc.org.conf
index 67f9a3e..06b4f1e 100644
--- a/Server/config/libsoc.org.conf
+++ b/Server/config/libsoc.org.conf
@@ -7,7 +7,7 @@ server {
add_header alt-svc 'h3=":443"; ma=2592000, h3-23=":443"; ma=86400, h3-29=":443"; ma=2592000';
add_header Strict-Transport-Security "max-age=63072000; includeSubdomains; preload";
- location ~* \.(?:ico|gif|jpe?g|png|svg)$ {
+ location ~* \.(?:ico|gif|jpe?g|png|svg|webp)$ {
expires 1d;
add_header Pragma public;
add_header Cache-Control "public";
diff --git a/Server/lib/TemplateEditor.jl b/Server/lib/TemplateEditor.jl
index 9d1d195..a12246e 100644
--- a/Server/lib/TemplateEditor.jl
+++ b/Server/lib/TemplateEditor.jl
@@ -6,10 +6,10 @@ import Unicode.normalize
export generate_layout_html
dict_libraries = Dict(
- "ECharts" => "",
- "GSAP" => "",
+ "ECharts" => "",
+ "GSAP" => "",
"Leaflet" => "
- "
+ "
)
function register_components()
@@ -33,7 +33,12 @@ view_filename - a view file name
css - should be a vector of names of css files
libraries - should be a vector of names of library names from `dict_libraries`
"""
-function generate_layout_html(template_filename,controller,view_filename; css=nothing, libraries=nothing)
+template_filename,controller,view_filename = "main","basic","landing"
+css=["landing"]
+libraries=["Leaflet"]
+preload=[Dict("path"=>"/img/crowd.webp","type"=>"image")]
+
+function generate_layout_html(template_filename,controller,view_filename; css=nothing, libraries=nothing, preload=nothing)
template_filename = template_filename*".jl.html"
@@ -216,10 +221,27 @@ function generate_layout_html(template_filename,controller,view_filename; css=no
end
=#
ind_opening = findfirst("",html)[1] - 1
- ind_closing = findfirst("",html)[1] - 1
+ ind_closing = findfirst("",html)[1] - 1
components_to_add = "\n "
- for component_name in tags
- components_to_add = string(components_to_add,"\n ")
+
+ bools_navbar = contains.(tags,"navbar")
+ bools_footer = contains.(tags,"footer")
+ bools_main = contains.(tags,view_filename)
+ keep_bools = (!).(bools_navbar .| bools_footer .| bools_main)
+
+ navbar_tags = tags[bools_navbar]
+ footer_tags = tags[bools_footer]
+ main_tag = tags[bools_main]
+
+
+ tags = reduce(vcat,[tags[keep_bools],navbar_tags,main_tag,footer_tags])
+ for ind = 1:lastindex(keep_bools)
+ component_name = tags[ind]
+ if (component_name in navbar_tags) || (component_name in footer_tags) || (component_name in main_tag)
+ components_to_add = string(components_to_add,"\n ")
+ else
+ components_to_add = string(components_to_add,"\n ")
+ end
end
html = string(html[1:ind_opening],components_to_add,"\n",html[ind_closing+1:end])
@@ -227,7 +249,7 @@ function generate_layout_html(template_filename,controller,view_filename; css=no
ind_closing = findfirst("",html)[1] - 1
css_to_add = "\n "
for css_name in css_tags
- css_to_add = string(css_to_add,"\n ")
+ css_to_add = string(css_to_add,"\n ")
end
html = string(html[1:ind_opening],css_to_add,"\n",html[ind_closing+1:end])
@@ -254,6 +276,16 @@ function generate_layout_html(template_filename,controller,view_filename; css=no
end
html = string(html[1:ind_opening],libraries_to_add,"\n",html[ind_closing+1:end])
+ if !isnothing(preload)
+ ind_opening = findfirst("",html)[1] - 1
+ ind_closing = findfirst("",html)[1] - 1
+ preload_to_add = "\n "
+ for preload_data in preload
+ preload_to_add = string(preload_to_add,"\n ")
+ end
+ html = string(html[1:ind_opening],preload_to_add,"\n",html[ind_closing+1:end])
+ end
+
#=
path = joinpath(savepath,template_filename)
open(path, "w") do io
diff --git a/Server/public/js/components/affiliates-component.js b/Server/public/js/components/affiliates-component.js
deleted file mode 100644
index c0d9a50..0000000
--- a/Server/public/js/components/affiliates-component.js
+++ /dev/null
@@ -1,345 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-import { S as SvelteElement, i as init, a as attribute_to_object, b as insert_dev, s as safe_not_equal, v as validate_each_argument, d as dispatch_dev, c as validate_slots, o as onMount, e as element, f as space, n as noop, g as add_location, h as attr_dev, j as src_url_equal, k as append_dev, l as detach_dev, m as destroy_each, t as text } from './index-ab5c14c8.js';
-import '../../../../../../../../../js/components/map-component.js';
-
-/* src\affiliates-component.svelte generated by Svelte v3.52.0 */
-
-const file = "src\\affiliates-component.svelte";
-
-function get_each_context(ctx, list, i) {
- const child_ctx = ctx.slice();
- child_ctx[1] = list[i];
- return child_ctx;
-}
-
-// (36:8) {#each affiliates as affiliate}
-function create_each_block(ctx) {
- let div2;
- let div1;
- let picture;
- let source0;
- let t0;
- let source1;
- let t1;
- let img;
- let t2;
- let div0;
- let p0;
- let b0;
- let t4_value = /*affiliate*/ ctx[1].name + "";
- let t4;
- let t5;
- let p1;
- let b1;
- let t7_value = /*affiliate*/ ctx[1].type + "";
- let t7;
- let t8;
- let p2;
- let b2;
- let a;
- let t10_value = /*affiliate*/ ctx[1].link + "";
- let t10;
- let t11;
- let p3;
- let b3;
- let t13_value = /*affiliate*/ ctx[1].description + "";
- let t13;
- let t14;
-
- const block = {
- c: function create() {
- div2 = element("div");
- div1 = element("div");
- picture = element("picture");
- source0 = element("source");
- t0 = space();
- source1 = element("source");
- t1 = space();
- img = element("img");
- t2 = space();
- div0 = element("div");
- p0 = element("p");
- b0 = element("b");
- b0.textContent = "Name: ";
- t4 = text(t4_value);
- t5 = space();
- p1 = element("p");
- b1 = element("b");
- b1.textContent = "Type: ";
- t7 = text(t7_value);
- t8 = space();
- p2 = element("p");
- b2 = element("b");
- b2.textContent = "Link: ";
- a = element("a");
- t10 = text(t10_value);
- t11 = space();
- p3 = element("p");
- b3 = element("b");
- b3.textContent = "Description: ";
- t13 = text(t13_value);
- t14 = space();
- attr_dev(source0, "srcset", "/img/affiliates/" + /*affiliate*/ ctx[1].logo + ".webp");
- add_location(source0, file, 39, 24, 1619);
- attr_dev(source1, "srcset", "/img/affiliates/" + /*affiliate*/ ctx[1].logo + ".jpg");
- add_location(source1, file, 40, 24, 1704);
- attr_dev(img, "class", "affiliate-logo");
- attr_dev(img, "alt", "logo");
- add_location(img, file, 41, 24, 1788);
- add_location(picture, file, 38, 20, 1584);
- add_location(b0, file, 44, 27, 1915);
- add_location(p0, file, 44, 24, 1912);
- add_location(b1, file, 45, 27, 1977);
- add_location(p1, file, 45, 24, 1974);
- add_location(b2, file, 46, 27, 2039);
- attr_dev(a, "href", /*affiliate*/ ctx[1].link);
- attr_dev(a, "target", ";_blank;");
- attr_dev(a, "rel", "noreferrer");
- add_location(a, file, 46, 40, 2052);
- add_location(p2, file, 46, 24, 2036);
- add_location(div0, file, 43, 20, 1881);
- attr_dev(div1, "class", "img-general-info");
- add_location(div1, file, 37, 16, 1532);
- add_location(b3, file, 49, 19, 2205);
- add_location(p3, file, 49, 16, 2202);
- attr_dev(div2, "class", "location-info");
- add_location(div2, file, 36, 12, 1487);
- },
- m: function mount(target, anchor) {
- insert_dev(target, div2, anchor);
- append_dev(div2, div1);
- append_dev(div1, picture);
- append_dev(picture, source0);
- append_dev(picture, t0);
- append_dev(picture, source1);
- append_dev(picture, t1);
- append_dev(picture, img);
- append_dev(div1, t2);
- append_dev(div1, div0);
- append_dev(div0, p0);
- append_dev(p0, b0);
- append_dev(p0, t4);
- append_dev(div0, t5);
- append_dev(div0, p1);
- append_dev(p1, b1);
- append_dev(p1, t7);
- append_dev(div0, t8);
- append_dev(div0, p2);
- append_dev(p2, b2);
- append_dev(p2, a);
- append_dev(a, t10);
- append_dev(div2, t11);
- append_dev(div2, p3);
- append_dev(p3, b3);
- append_dev(p3, t13);
- append_dev(div2, t14);
- },
- p: noop,
- d: function destroy(detaching) {
- if (detaching) detach_dev(div2);
- }
- };
-
- dispatch_dev("SvelteRegisterBlock", {
- block,
- id: create_each_block.name,
- type: "each",
- source: "(36:8) {#each affiliates as affiliate}",
- ctx
- });
-
- return block;
-}
-
-function create_fragment(ctx) {
- let div1;
- let div0;
- let h1;
- let t1;
- let img;
- let img_src_value;
- let t2;
- let p;
- let t4;
- let h3;
- let t6;
- let h4;
- let t8;
- let each_value = /*affiliates*/ ctx[0];
- validate_each_argument(each_value);
- let each_blocks = [];
-
- for (let i = 0; i < each_value.length; i += 1) {
- each_blocks[i] = create_each_block(get_each_context(ctx, each_value, i));
- }
-
- const block = {
- c: function create() {
- div1 = element("div");
- div0 = element("div");
- h1 = element("h1");
- h1.textContent = "Affiliates";
- t1 = space();
- img = element("img");
- t2 = space();
- p = element("p");
- p.textContent = "We affiliate with organizations and initiatives that align with our mission. Together, we are a united force driven by a shared worldview where there is no place for authoritarian exploitative systems, but where systems promoting equity and democracy thrive.";
- t4 = space();
- h3 = element("h3");
- h3.textContent = "Our affiliates";
- t6 = space();
- h4 = element("h4");
- h4.textContent = "Online";
- t8 = space();
-
- for (let i = 0; i < each_blocks.length; i += 1) {
- each_blocks[i].c();
- }
-
- this.c = noop;
- add_location(h1, file, 30, 8, 1006);
- attr_dev(img, "id", "hands-img");
- if (!src_url_equal(img.src, img_src_value = "/img/common/handshake.svg")) attr_dev(img, "src", img_src_value);
- attr_dev(img, "alt", "hands");
- add_location(img, file, 31, 8, 1035);
- add_location(p, file, 32, 8, 1109);
- add_location(h3, file, 33, 8, 1384);
- add_location(h4, file, 34, 8, 1417);
- attr_dev(div0, "id", "text-container");
- add_location(div0, file, 29, 4, 971);
- attr_dev(div1, "id", "container");
- add_location(div1, file, 27, 0, 884);
- },
- l: function claim(nodes) {
- throw new Error("options.hydrate only works if the component was compiled with the `hydratable: true` option");
- },
- m: function mount(target, anchor) {
- insert_dev(target, div1, anchor);
- append_dev(div1, div0);
- append_dev(div0, h1);
- append_dev(div0, t1);
- append_dev(div0, img);
- append_dev(div0, t2);
- append_dev(div0, p);
- append_dev(div0, t4);
- append_dev(div0, h3);
- append_dev(div0, t6);
- append_dev(div0, h4);
- append_dev(div0, t8);
-
- for (let i = 0; i < each_blocks.length; i += 1) {
- each_blocks[i].m(div0, null);
- }
- },
- p: function update(ctx, [dirty]) {
- if (dirty & /*affiliates*/ 1) {
- each_value = /*affiliates*/ ctx[0];
- validate_each_argument(each_value);
- let i;
-
- for (i = 0; i < each_value.length; i += 1) {
- const child_ctx = get_each_context(ctx, each_value, i);
-
- if (each_blocks[i]) {
- each_blocks[i].p(child_ctx, dirty);
- } else {
- each_blocks[i] = create_each_block(child_ctx);
- each_blocks[i].c();
- each_blocks[i].m(div0, null);
- }
- }
-
- for (; i < each_blocks.length; i += 1) {
- each_blocks[i].d(1);
- }
-
- each_blocks.length = each_value.length;
- }
- },
- i: noop,
- o: noop,
- d: function destroy(detaching) {
- if (detaching) detach_dev(div1);
- destroy_each(each_blocks, detaching);
- }
- };
-
- dispatch_dev("SvelteRegisterBlock", {
- block,
- id: create_fragment.name,
- type: "component",
- source: "",
- ctx
- });
-
- return block;
-}
-
-function instance($$self, $$props, $$invalidate) {
- let { $$slots: slots = {}, $$scope } = $$props;
- validate_slots('affiliates-component', slots, []);
-
- let affiliates = [
- {
- name: "Gaia's Fall",
- type: "a place to discuss and organize",
- link: "https://discord.libsoc.org",
- description: "Gaia's Fall is a server that promotes Solarpunk ideals, environmentalism, anarchism, and anti-capitalism. We encourage civil debates, discussions of theories and possibilities, and the creation of communities focused on shaping a better world. It is our official Discord server where we organize and work together.",
- logo: "gaias_fall"
- }
- ];
-
- onMount(() => {
-
- });
-
- const writable_props = [];
-
- Object.keys($$props).forEach(key => {
- if (!~writable_props.indexOf(key) && key.slice(0, 2) !== '$$' && key !== 'slot') console.warn(` was created with unknown prop '${key}'`);
- });
-
- $$self.$capture_state = () => ({ onMount, affiliates });
-
- $$self.$inject_state = $$props => {
- if ('affiliates' in $$props) $$invalidate(0, affiliates = $$props.affiliates);
- };
-
- if ($$props && "$$inject" in $$props) {
- $$self.$inject_state($$props.$$inject);
- }
-
- return [affiliates];
-}
-
-class Affiliates_component extends SvelteElement {
- constructor(options) {
- super();
- this.shadowRoot.innerHTML = ``;
-
- init(
- this,
- {
- target: this.shadowRoot,
- props: attribute_to_object(this.attributes),
- customElement: true
- },
- instance,
- create_fragment,
- safe_not_equal,
- {},
- null
- );
-
- if (options) {
- if (options.target) {
- insert_dev(options.target, this, options.anchor);
- }
- }
- }
-}
-
-customElements.define("affiliates-component", Affiliates_component);
-
-export { Affiliates_component as default };
diff --git a/Server/public/js/components/communities-component.js b/Server/public/js/components/communities-component.js
deleted file mode 100644
index fb11cc7..0000000
--- a/Server/public/js/components/communities-component.js
+++ /dev/null
@@ -1 +0,0 @@
-import{S as t,i as o,a as n,b as e,s as i,e as a,n as m,d as s,c as r,o as c,f as l,t as p,g,h as u,j as h,k as d,l as f,m as b,p as x}from"./index-4348483d.js";import{w as j}from"./index-71440b21.js";import{communities as v,addMarkersCommunities as w}from"../../../../../../../../../js/communities.js";import{loadLocaleContent as k}from"../../../../../../../../../js/libraries/serverTools.js";import"../../../../../../../../../js/components/map-component.js";function y(t,o,n){const e=t.slice();return e[6]=o[n],e}function z(t){let o,n,i,a,m,r,c,j,w,k,z,E,O,R,T,A,C,H=t[0].heading+"",L=t[0].p1+"",M=t[0].subheading1+"",N=v,S=[];for(let o=0;on(0,e=t)));let m=k(a,"communities-component",i);function s(t,o){let n=t([22,0],2);w(n,o)}c((()=>{}));return[e,i,a,m,s,t=>s(t,e)]}class R extends t{constructor(t){super(),this.shadowRoot.innerHTML="",o(this,{target:this.shadowRoot,props:n(this.attributes),customElement:!0},O,E,i,{},null),t&&t.target&&e(t.target,this,t.anchor)}}customElements.define("communities-component",R);export{R as default};
diff --git a/Server/public/js/components/footer-component.js b/Server/public/js/components/footer-component.js
index 1e8d400..0900822 100644
--- a/Server/public/js/components/footer-component.js
+++ b/Server/public/js/components/footer-component.js
@@ -1 +1 @@
-import{S as t,i as e,a as r,b as o,s as a,e as i,n,d as s,c as m,h as c,t as d,j as f,k as l,z as g,l as h,m as p,y as u}from"./index-0d9f0c09.js";import{w as v}from"./index-1c123138.js";import{loadLocaleContent as w}from"../../../../../../../../../js/libraries/serverTools.js";function b(t){let e,r,a,i,n,m,v,w,b,y,k,x,L,j,z,U,_,T,C,H,M,R,B=t[1].contactUs+"",N=t[1].inviteLink+"",A=t[1].inviteLink+"";return{c(){e=c("footer"),r=c("div"),a=c("div"),i=c("div"),n=c("h2"),m=d(B),v=f(),w=c("p"),b=d("Discord: "),y=c("a"),k=d(N),x=f(),L=c("p"),j=d("WhatsApp: "),z=c("a"),U=d(A),_=f(),T=c("button"),T.innerHTML='',C=f(),H=c("p"),H.innerHTML='Licensed under a Creative Commons CC BY 4.0 license',l(y,"href","https://discord.gg/Qk8KUk787z"),l(y,"target","_blank"),l(y,"rel","noreferrer"),g(y,"margin-left","1.8rem"),l(z,"href","https://chat.whatsapp.com/BhnmUNljUxJ2AjeHUwyTKh"),l(z,"target","_blank"),l(z,"rel","noreferrer"),g(z,"margin-left","0.5rem"),l(i,"id","contact-us-container"),l(a,"id","footer-grid-content-container"),l(a,"class","logged"),l(T,"id","footer-up"),l(T,"aria-label","go up"),l(H,"id","footer-copyright"),l(r,"id","footer-content-container")},m(s,c){o(s,e,c),h(e,r),h(r,a),h(a,i),h(i,n),h(n,m),h(i,v),h(i,w),h(w,b),h(w,y),h(y,k),h(i,x),h(i,L),h(L,j),h(L,z),h(z,U),h(r,_),h(r,T),h(r,C),h(r,H),M||(R=p(T,"click",t[4]),M=!0)},p(t,e){2&e&&B!==(B=t[1].contactUs+"")&&u(m,B),2&e&&N!==(N=t[1].inviteLink+"")&&u(k,N),2&e&&A!==(A=t[1].inviteLink+"")&&u(U,A)},d(t){t&&s(e),M=!1,R()}}}function y(t){let e,r=2==t[0]&&b(t);return{c(){r&&r.c(),e=i()},m(t,a){r&&r.m(t,a),o(t,e,a)},p(t,o){2==t[0]?r?r.p(t,o):(r=b(t),r.c(),r.m(e.parentNode,e)):r&&(r.d(1),r=null)},d(t){r&&r.d(t),t&&s(e)}}}function k(t){let e,r=t[0],m=y(t);return{c(){m.c(),e=i(),this.c=n},m(t,r){m.m(t,r),o(t,e,r)},p(t,[o]){1&o&&a(r,r=t[0])?(m.d(1),m=y(t),m.c(),m.m(e.parentNode,e)):m.p(t,o)},i:n,o:n,d(t){t&&s(e),m.d(t)}}}function x(t,e,r){let o,a,i=v(0);m(t,i,(t=>r(0,o=t)));let n=v({});m(t,n,(t=>r(1,a=t))),w(n,"countries",i),w(n,"footer-component",i);return[o,a,i,n,()=>{location.href="#"}]}class L extends t{constructor(t){super(),this.shadowRoot.innerHTML="",e(this,{target:this.shadowRoot,props:r(this.attributes),customElement:!0},x,k,a,{},null),t&&t.target&&o(t.target,this,t.anchor)}}customElements.define("footer-component",L);export{L as default};
+import{S as t,i as e,a as r,b as o,s as a,e as i,n,d as s,c as m,h as c,t as d,j as f,k as l,z as g,l as h,m as p,y as u}from"./index-0d9f0c09.js";import{w as v}from"./index-1c123138.js";import{loadLocaleContent as w}from"../../../../../../../../../js/libraries/serverTools.js";function b(t){let e,r,a,i,n,m,v,w,b,y,k,x,L,j,z,U,_,T,C,H,M,R,B=t[1].contactUs+"",N=t[1].inviteLink+"",A=t[1].inviteLink+"";return{c(){e=c("footer"),r=c("div"),a=c("div"),i=c("div"),n=c("h2"),m=d(B),v=f(),w=c("p"),b=d("Discord: "),y=c("a"),k=d(N),x=f(),L=c("p"),j=d("WhatsApp: "),z=c("a"),U=d(A),_=f(),T=c("button"),T.innerHTML='',C=f(),H=c("p"),H.innerHTML='Licensed under a Creative Commons CC BY 4.0 license',l(y,"href","https://discord.gg/Qk8KUk787z"),l(y,"target","_blank"),l(y,"rel","noreferrer"),g(y,"margin-left","1.8rem"),l(z,"href","https://chat.whatsapp.com/BhnmUNljUxJ2AjeHUwyTKh"),l(z,"target","_blank"),l(z,"rel","noreferrer"),g(z,"margin-left","0.5rem"),l(i,"id","contact-us-container"),l(a,"id","footer-grid-content-container"),l(a,"class","logged"),l(T,"id","footer-up"),l(T,"aria-label","go up"),l(H,"id","footer-copyright"),l(r,"id","footer-content-container")},m(s,c){o(s,e,c),h(e,r),h(r,a),h(a,i),h(i,n),h(n,m),h(i,v),h(i,w),h(w,b),h(w,y),h(y,k),h(i,x),h(i,L),h(L,j),h(L,z),h(z,U),h(r,_),h(r,T),h(r,C),h(r,H),M||(R=p(T,"click",t[4]),M=!0)},p(t,e){2&e&&B!==(B=t[1].contactUs+"")&&u(m,B),2&e&&N!==(N=t[1].inviteLink+"")&&u(k,N),2&e&&A!==(A=t[1].inviteLink+"")&&u(U,A)},d(t){t&&s(e),M=!1,R()}}}function y(t){let e,r=2==t[0]&&b(t);return{c(){r&&r.c(),e=i()},m(t,a){r&&r.m(t,a),o(t,e,a)},p(t,o){2==t[0]?r?r.p(t,o):(r=b(t),r.c(),r.m(e.parentNode,e)):r&&(r.d(1),r=null)},d(t){r&&r.d(t),t&&s(e)}}}function k(t){let e,r=t[0],m=y(t);return{c(){m.c(),e=i(),this.c=n},m(t,r){m.m(t,r),o(t,e,r)},p(t,[o]){1&o&&a(r,r=t[0])?(m.d(1),m=y(t),m.c(),m.m(e.parentNode,e)):m.p(t,o)},i:n,o:n,d(t){t&&s(e),m.d(t)}}}function x(t,e,r){let o,a,i=v(0);m(t,i,(t=>r(0,o=t)));let n=v({});m(t,n,(t=>r(1,a=t))),w(n,"countries",i),w(n,"footer-component",i);return[o,a,i,n,()=>{location.href="#"}]}class L extends t{constructor(t){super(),this.shadowRoot.innerHTML="",e(this,{target:this.shadowRoot,props:r(this.attributes),customElement:!0},x,k,a,{},null),t&&t.target&&o(t.target,this,t.anchor)}}customElements.define("footer-component",L);export{L as default};
diff --git a/Server/public/js/components/index-01c5cbf1.js b/Server/public/js/components/index-01c5cbf1.js
deleted file mode 100644
index 42828c7..0000000
--- a/Server/public/js/components/index-01c5cbf1.js
+++ /dev/null
@@ -1 +0,0 @@
-function t(){}function n(t){return t()}function e(){return Object.create(null)}function o(t){t.forEach(n)}function s(t){return"function"==typeof t}function r(t,n){return t!=t?n==n:t!==n||t&&"object"==typeof t||"function"==typeof t}let i,c;function a(t,n){return i||(i=document.createElement("a")),i.href=n,t===i.href}function u(t,n){t.appendChild(n)}function f(t,n,e){t.insertBefore(n,e||null)}function l(t){t.parentNode.removeChild(t)}function h(t,n){for(let e=0;et.removeEventListener(n,e,o)}function _(t,n,e){null==e?t.removeAttribute(n):t.getAttribute(n)!==e&&t.setAttribute(n,e)}function y(t,n,e){n in t?t[n]="boolean"==typeof t[n]&&""===e||e:_(t,n,e)}function b(t,n){n=""+n,t.wholeText!==n&&(t.data=n)}function x(t,n,e,o){null===e?t.style.removeProperty(n):t.style.setProperty(n,e,o?"important":"")}class v{constructor(t=!1){this.is_svg=!1,this.is_svg=t,this.e=this.n=null}c(t){this.h(t)}m(t,n,e=null){var o;this.e||(this.is_svg?this.e=(o=n.nodeName,document.createElementNS("http://www.w3.org/2000/svg",o)):this.e=d(n.nodeName),this.t=n,this.c(t)),this.i(e)}h(t){this.e.innerHTML=t,this.n=Array.from(this.e.childNodes)}i(t){for(let n=0;n{const o=e.length?e[0]:n;return m.ctx&&f(m.ctx[t],m.ctx[t]=o)&&(!m.skip_bound&&m.bound[t]&&m.bound[t](o),g&&F(r,t)),n})):[],m.update(),g=!0,o(m.before_update),m.fragment=!!u&&u(m.ctx),i.target){if(i.hydrate){const t=function(t){return Array.from(t.childNodes)}(i.target);m.fragment&&m.fragment.l(t),t.forEach(l)}else m.fragment&&m.fragment.c();i.intro&&((_=r.$$.fragment)&&_.i&&(B.delete(_),_.i(y))),function(t,e,r,i){const{fragment:c,after_update:a}=t.$$;c&&c.m(e,r),i||M((()=>{const e=t.$$.on_mount.map(n).filter(s);t.$$.on_destroy?t.$$.on_destroy.push(...e):o(e),t.$$.on_mount=[]})),a.forEach(M)}(r,i.target,i.anchor,i.customElement),q()}var _,y;w(p)}let G;"function"==typeof HTMLElement&&(G=class extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"})}connectedCallback(){const{on_mount:t}=this.$$;this.$$.on_disconnect=t.map(n).filter(s);for(const t in this.$$.slotted)this.appendChild(this.$$.slotted[t])}attributeChangedCallback(t,n,e){this[t]=e}disconnectedCallback(){o(this.$$.on_disconnect)}$destroy(){!function(t,n){const e=t.$$;null!==e.fragment&&(o(e.on_destroy),e.fragment&&e.fragment.d(n),e.on_destroy=e.fragment=null,e.ctx=[])}(this,1),this.$destroy=t}$on(n,e){if(!s(e))return t;const o=this.$$.callbacks[n]||(this.$$.callbacks[n]=[]);return o.push(e),()=>{const t=o.indexOf(e);-1!==t&&o.splice(t,1)}}$set(t){var n;this.$$set&&(n=t,0!==Object.keys(n).length)&&(this.$$.skip_bound=!0,this.$$set(t),this.$$.skip_bound=!1)}});export{v as H,G as S,E as a,f as b,p as c,_ as d,d as e,a as f,y as g,u as h,D as i,l as j,h as k,q as l,x as m,t as n,C as o,g as p,b as q,L as r,r as s,$ as t,N as u,o as v,m as w,s as x};
diff --git a/Server/public/js/components/index-04d7984b.js b/Server/public/js/components/index-04d7984b.js
deleted file mode 100644
index 8aa6994..0000000
--- a/Server/public/js/components/index-04d7984b.js
+++ /dev/null
@@ -1 +0,0 @@
-function t(){}function n(t){return t()}function e(){return Object.create(null)}function o(t){t.forEach(n)}function s(t){return"function"==typeof t}function r(t,n){return t!=t?n==n:t!==n||t&&"object"==typeof t||"function"==typeof t}let i,c;function a(t,n){return i||(i=document.createElement("a")),i.href=n,t===i.href}function u(t,n){t.appendChild(n)}function f(t,n,e){t.insertBefore(n,e||null)}function l(t){t.parentNode.removeChild(t)}function h(t,n){for(let e=0;et.removeEventListener(n,e,o)}function _(t,n,e){null==e?t.removeAttribute(n):t.getAttribute(n)!==e&&t.setAttribute(n,e)}function y(t,n,e){n in t?t[n]="boolean"==typeof t[n]&&""===e||e:_(t,n,e)}function b(t,n){n=""+n,t.wholeText!==n&&(t.data=n)}function x(t,n,e,o){null===e?t.style.removeProperty(n):t.style.setProperty(n,e,o?"important":"")}class v{constructor(t=!1){this.is_svg=!1,this.is_svg=t,this.e=this.n=null}c(t){this.h(t)}m(t,n,e=null){var o;this.e||(this.is_svg?this.e=(o=n.nodeName,document.createElementNS("http://www.w3.org/2000/svg",o)):this.e=d(n.nodeName),this.t=n,this.c(t)),this.i(e)}h(t){this.e.innerHTML=t,this.n=Array.from(this.e.childNodes)}i(t){for(let n=0;n{const o=e.length?e[0]:n;return m.ctx&&f(m.ctx[t],m.ctx[t]=o)&&(!m.skip_bound&&m.bound[t]&&m.bound[t](o),g&&F(r,t)),n})):[],m.update(),g=!0,o(m.before_update),m.fragment=!!u&&u(m.ctx),i.target){if(i.hydrate){const t=function(t){return Array.from(t.childNodes)}(i.target);m.fragment&&m.fragment.l(t),t.forEach(l)}else m.fragment&&m.fragment.c();i.intro&&((_=r.$$.fragment)&&_.i&&(B.delete(_),_.i(y))),function(t,e,r,i){const{fragment:c,after_update:a}=t.$$;c&&c.m(e,r),i||M((()=>{const e=t.$$.on_mount.map(n).filter(s);t.$$.on_destroy?t.$$.on_destroy.push(...e):o(e),t.$$.on_mount=[]})),a.forEach(M)}(r,i.target,i.anchor,i.customElement),q()}var _,y;w(p)}let G;"function"==typeof HTMLElement&&(G=class extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"})}connectedCallback(){const{on_mount:t}=this.$$;this.$$.on_disconnect=t.map(n).filter(s);for(const t in this.$$.slotted)this.appendChild(this.$$.slotted[t])}attributeChangedCallback(t,n,e){this[t]=e}disconnectedCallback(){o(this.$$.on_disconnect)}$destroy(){!function(t,n){const e=t.$$;null!==e.fragment&&(o(e.on_destroy),e.fragment&&e.fragment.d(n),e.on_destroy=e.fragment=null,e.ctx=[])}(this,1),this.$destroy=t}$on(n,e){if(!s(e))return t;const o=this.$$.callbacks[n]||(this.$$.callbacks[n]=[]);return o.push(e),()=>{const t=o.indexOf(e);-1!==t&&o.splice(t,1)}}$set(t){var n;this.$$set&&(n=t,0!==Object.keys(n).length)&&(this.$$.skip_bound=!0,this.$$set(t),this.$$.skip_bound=!1)}});export{v as H,G as S,E as a,f as b,p as c,y as d,d as e,_ as f,u as g,l as h,D as i,h as j,q as k,x as l,g as m,t as n,C as o,b as p,L as q,N as r,r as s,$ as t,a as u,o as v,m as w};
diff --git a/Server/public/js/components/index-0f28c1ea.js b/Server/public/js/components/index-0f28c1ea.js
deleted file mode 100644
index 0200628..0000000
--- a/Server/public/js/components/index-0f28c1ea.js
+++ /dev/null
@@ -1,53 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-import { n as noop, s as safe_not_equal } from './index-e7d4b1a1.js';
-
-const subscriber_queue = [];
-/**
- * Create a `Writable` store that allows both updating and reading by subscription.
- * @param {*=}value initial value
- * @param {StartStopNotifier=}start start and stop notifications for subscriptions
- */
-function writable(value, start = noop) {
- let stop;
- const subscribers = new Set();
- function set(new_value) {
- if (safe_not_equal(value, new_value)) {
- value = new_value;
- if (stop) { // store is ready
- const run_queue = !subscriber_queue.length;
- for (const subscriber of subscribers) {
- subscriber[1]();
- subscriber_queue.push(subscriber, value);
- }
- if (run_queue) {
- for (let i = 0; i < subscriber_queue.length; i += 2) {
- subscriber_queue[i][0](subscriber_queue[i + 1]);
- }
- subscriber_queue.length = 0;
- }
- }
- }
- }
- function update(fn) {
- set(fn(value));
- }
- function subscribe(run, invalidate = noop) {
- const subscriber = [run, invalidate];
- subscribers.add(subscriber);
- if (subscribers.size === 1) {
- stop = start(set) || noop;
- }
- run(value);
- return () => {
- subscribers.delete(subscriber);
- if (subscribers.size === 0) {
- stop();
- stop = null;
- }
- };
- }
- return { set, update, subscribe };
-}
-
-export { writable as w };
diff --git a/Server/public/js/components/index-10273c92.js b/Server/public/js/components/index-10273c92.js
deleted file mode 100644
index bec18a6..0000000
--- a/Server/public/js/components/index-10273c92.js
+++ /dev/null
@@ -1,527 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-function noop() { }
-function add_location(element, file, line, column, char) {
- element.__svelte_meta = {
- loc: { file, line, column, char }
- };
-}
-function run(fn) {
- return fn();
-}
-function blank_object() {
- return Object.create(null);
-}
-function run_all(fns) {
- fns.forEach(run);
-}
-function is_function(thing) {
- return typeof thing === 'function';
-}
-function safe_not_equal(a, b) {
- return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');
-}
-let src_url_equal_anchor;
-function src_url_equal(element_src, url) {
- if (!src_url_equal_anchor) {
- src_url_equal_anchor = document.createElement('a');
- }
- src_url_equal_anchor.href = url;
- return element_src === src_url_equal_anchor.href;
-}
-function is_empty(obj) {
- return Object.keys(obj).length === 0;
-}
-function validate_store(store, name) {
- if (store != null && typeof store.subscribe !== 'function') {
- throw new Error(`'${name}' is not a store with a 'subscribe' method`);
- }
-}
-function subscribe(store, ...callbacks) {
- if (store == null) {
- return noop;
- }
- const unsub = store.subscribe(...callbacks);
- return unsub.unsubscribe ? () => unsub.unsubscribe() : unsub;
-}
-function component_subscribe(component, store, callback) {
- component.$$.on_destroy.push(subscribe(store, callback));
-}
-function append(target, node) {
- target.appendChild(node);
-}
-function insert(target, node, anchor) {
- target.insertBefore(node, anchor || null);
-}
-function detach(node) {
- node.parentNode.removeChild(node);
-}
-function destroy_each(iterations, detaching) {
- for (let i = 0; i < iterations.length; i += 1) {
- if (iterations[i])
- iterations[i].d(detaching);
- }
-}
-function element(name) {
- return document.createElement(name);
-}
-function svg_element(name) {
- return document.createElementNS('http://www.w3.org/2000/svg', name);
-}
-function text(data) {
- return document.createTextNode(data);
-}
-function space() {
- return text(' ');
-}
-function empty() {
- return text('');
-}
-function listen(node, event, handler, options) {
- node.addEventListener(event, handler, options);
- return () => node.removeEventListener(event, handler, options);
-}
-function attr(node, attribute, value) {
- if (value == null)
- node.removeAttribute(attribute);
- else if (node.getAttribute(attribute) !== value)
- node.setAttribute(attribute, value);
-}
-function set_custom_element_data(node, prop, value) {
- if (prop in node) {
- node[prop] = typeof node[prop] === 'boolean' && value === '' ? true : value;
- }
- else {
- attr(node, prop, value);
- }
-}
-function to_number(value) {
- return value === '' ? null : +value;
-}
-function children(element) {
- return Array.from(element.childNodes);
-}
-function set_input_value(input, value) {
- input.value = value == null ? '' : value;
-}
-function set_style(node, key, value, important) {
- if (value === null) {
- node.style.removeProperty(key);
- }
- else {
- node.style.setProperty(key, value, important ? 'important' : '');
- }
-}
-function custom_event(type, detail, { bubbles = false, cancelable = false } = {}) {
- const e = document.createEvent('CustomEvent');
- e.initCustomEvent(type, bubbles, cancelable, detail);
- return e;
-}
-class HtmlTag {
- constructor(is_svg = false) {
- this.is_svg = false;
- this.is_svg = is_svg;
- this.e = this.n = null;
- }
- c(html) {
- this.h(html);
- }
- m(html, target, anchor = null) {
- if (!this.e) {
- if (this.is_svg)
- this.e = svg_element(target.nodeName);
- else
- this.e = element(target.nodeName);
- this.t = target;
- this.c(html);
- }
- this.i(anchor);
- }
- h(html) {
- this.e.innerHTML = html;
- this.n = Array.from(this.e.childNodes);
- }
- i(anchor) {
- for (let i = 0; i < this.n.length; i += 1) {
- insert(this.t, this.n[i], anchor);
- }
- }
- p(html) {
- this.d();
- this.h(html);
- this.i(this.a);
- }
- d() {
- this.n.forEach(detach);
- }
-}
-function attribute_to_object(attributes) {
- const result = {};
- for (const attribute of attributes) {
- result[attribute.name] = attribute.value;
- }
- return result;
-}
-
-let current_component;
-function set_current_component(component) {
- current_component = component;
-}
-function get_current_component() {
- if (!current_component)
- throw new Error('Function called outside component initialization');
- return current_component;
-}
-/**
- * The `onMount` function schedules a callback to run as soon as the component has been mounted to the DOM.
- * It must be called during the component's initialisation (but doesn't need to live *inside* the component;
- * it can be called from an external module).
- *
- * `onMount` does not run inside a [server-side component](/docs#run-time-server-side-component-api).
- *
- * https://svelte.dev/docs#run-time-svelte-onmount
- */
-function onMount(fn) {
- get_current_component().$$.on_mount.push(fn);
-}
-/**
- * Schedules a callback to run immediately after the component has been updated.
- *
- * The first time the callback runs will be after the initial `onMount`
- */
-function afterUpdate(fn) {
- get_current_component().$$.after_update.push(fn);
-}
-/**
- * Associates an arbitrary `context` object with the current component and the specified `key`
- * and returns that object. The context is then available to children of the component
- * (including slotted content) with `getContext`.
- *
- * Like lifecycle functions, this must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-setcontext
- */
-function setContext(key, context) {
- get_current_component().$$.context.set(key, context);
- return context;
-}
-/**
- * Retrieves the context that belongs to the closest parent component with the specified `key`.
- * Must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-getcontext
- */
-function getContext(key) {
- return get_current_component().$$.context.get(key);
-}
-
-const dirty_components = [];
-const binding_callbacks = [];
-const render_callbacks = [];
-const flush_callbacks = [];
-const resolved_promise = Promise.resolve();
-let update_scheduled = false;
-function schedule_update() {
- if (!update_scheduled) {
- update_scheduled = true;
- resolved_promise.then(flush);
- }
-}
-function add_render_callback(fn) {
- render_callbacks.push(fn);
-}
-// flush() calls callbacks in this order:
-// 1. All beforeUpdate callbacks, in order: parents before children
-// 2. All bind:this callbacks, in reverse order: children before parents.
-// 3. All afterUpdate callbacks, in order: parents before children. EXCEPT
-// for afterUpdates called during the initial onMount, which are called in
-// reverse order: children before parents.
-// Since callbacks might update component values, which could trigger another
-// call to flush(), the following steps guard against this:
-// 1. During beforeUpdate, any updated components will be added to the
-// dirty_components array and will cause a reentrant call to flush(). Because
-// the flush index is kept outside the function, the reentrant call will pick
-// up where the earlier call left off and go through all dirty components. The
-// current_component value is saved and restored so that the reentrant call will
-// not interfere with the "parent" flush() call.
-// 2. bind:this callbacks cannot trigger new flush() calls.
-// 3. During afterUpdate, any updated components will NOT have their afterUpdate
-// callback called a second time; the seen_callbacks set, outside the flush()
-// function, guarantees this behavior.
-const seen_callbacks = new Set();
-let flushidx = 0; // Do *not* move this inside the flush() function
-function flush() {
- const saved_component = current_component;
- do {
- // first, call beforeUpdate functions
- // and update components
- while (flushidx < dirty_components.length) {
- const component = dirty_components[flushidx];
- flushidx++;
- set_current_component(component);
- update(component.$$);
- }
- set_current_component(null);
- dirty_components.length = 0;
- flushidx = 0;
- while (binding_callbacks.length)
- binding_callbacks.pop()();
- // then, once components are updated, call
- // afterUpdate functions. This may cause
- // subsequent updates...
- for (let i = 0; i < render_callbacks.length; i += 1) {
- const callback = render_callbacks[i];
- if (!seen_callbacks.has(callback)) {
- // ...so guard against infinite loops
- seen_callbacks.add(callback);
- callback();
- }
- }
- render_callbacks.length = 0;
- } while (dirty_components.length);
- while (flush_callbacks.length) {
- flush_callbacks.pop()();
- }
- update_scheduled = false;
- seen_callbacks.clear();
- set_current_component(saved_component);
-}
-function update($$) {
- if ($$.fragment !== null) {
- $$.update();
- run_all($$.before_update);
- const dirty = $$.dirty;
- $$.dirty = [-1];
- $$.fragment && $$.fragment.p($$.ctx, dirty);
- $$.after_update.forEach(add_render_callback);
- }
-}
-const outroing = new Set();
-function transition_in(block, local) {
- if (block && block.i) {
- outroing.delete(block);
- block.i(local);
- }
-}
-
-const globals = (typeof window !== 'undefined'
- ? window
- : typeof globalThis !== 'undefined'
- ? globalThis
- : global);
-function mount_component(component, target, anchor, customElement) {
- const { fragment, after_update } = component.$$;
- fragment && fragment.m(target, anchor);
- if (!customElement) {
- // onMount happens before the initial afterUpdate
- add_render_callback(() => {
- const new_on_destroy = component.$$.on_mount.map(run).filter(is_function);
- // if the component was destroyed immediately
- // it will update the `$$.on_destroy` reference to `null`.
- // the destructured on_destroy may still reference to the old array
- if (component.$$.on_destroy) {
- component.$$.on_destroy.push(...new_on_destroy);
- }
- else {
- // Edge case - component was destroyed immediately,
- // most likely as a result of a binding initialising
- run_all(new_on_destroy);
- }
- component.$$.on_mount = [];
- });
- }
- after_update.forEach(add_render_callback);
-}
-function destroy_component(component, detaching) {
- const $$ = component.$$;
- if ($$.fragment !== null) {
- run_all($$.on_destroy);
- $$.fragment && $$.fragment.d(detaching);
- // TODO null out other refs, including component.$$ (but need to
- // preserve final state?)
- $$.on_destroy = $$.fragment = null;
- $$.ctx = [];
- }
-}
-function make_dirty(component, i) {
- if (component.$$.dirty[0] === -1) {
- dirty_components.push(component);
- schedule_update();
- component.$$.dirty.fill(0);
- }
- component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31));
-}
-function init(component, options, instance, create_fragment, not_equal, props, append_styles, dirty = [-1]) {
- const parent_component = current_component;
- set_current_component(component);
- const $$ = component.$$ = {
- fragment: null,
- ctx: [],
- // state
- props,
- update: noop,
- not_equal,
- bound: blank_object(),
- // lifecycle
- on_mount: [],
- on_destroy: [],
- on_disconnect: [],
- before_update: [],
- after_update: [],
- context: new Map(options.context || (parent_component ? parent_component.$$.context : [])),
- // everything else
- callbacks: blank_object(),
- dirty,
- skip_bound: false,
- root: options.target || parent_component.$$.root
- };
- append_styles && append_styles($$.root);
- let ready = false;
- $$.ctx = instance
- ? instance(component, options.props || {}, (i, ret, ...rest) => {
- const value = rest.length ? rest[0] : ret;
- if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {
- if (!$$.skip_bound && $$.bound[i])
- $$.bound[i](value);
- if (ready)
- make_dirty(component, i);
- }
- return ret;
- })
- : [];
- $$.update();
- ready = true;
- run_all($$.before_update);
- // `false` as a special case of no DOM component
- $$.fragment = create_fragment ? create_fragment($$.ctx) : false;
- if (options.target) {
- if (options.hydrate) {
- const nodes = children(options.target);
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.l(nodes);
- nodes.forEach(detach);
- }
- else {
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.c();
- }
- if (options.intro)
- transition_in(component.$$.fragment);
- mount_component(component, options.target, options.anchor, options.customElement);
- flush();
- }
- set_current_component(parent_component);
-}
-let SvelteElement;
-if (typeof HTMLElement === 'function') {
- SvelteElement = class extends HTMLElement {
- constructor() {
- super();
- this.attachShadow({ mode: 'open' });
- }
- connectedCallback() {
- const { on_mount } = this.$$;
- this.$$.on_disconnect = on_mount.map(run).filter(is_function);
- // @ts-ignore todo: improve typings
- for (const key in this.$$.slotted) {
- // @ts-ignore todo: improve typings
- this.appendChild(this.$$.slotted[key]);
- }
- }
- attributeChangedCallback(attr, _oldValue, newValue) {
- this[attr] = newValue;
- }
- disconnectedCallback() {
- run_all(this.$$.on_disconnect);
- }
- $destroy() {
- destroy_component(this, 1);
- this.$destroy = noop;
- }
- $on(type, callback) {
- // TODO should this delegate to addEventListener?
- if (!is_function(callback)) {
- return noop;
- }
- const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));
- callbacks.push(callback);
- return () => {
- const index = callbacks.indexOf(callback);
- if (index !== -1)
- callbacks.splice(index, 1);
- };
- }
- $set($$props) {
- if (this.$$set && !is_empty($$props)) {
- this.$$.skip_bound = true;
- this.$$set($$props);
- this.$$.skip_bound = false;
- }
- }
- };
-}
-
-function dispatch_dev(type, detail) {
- document.dispatchEvent(custom_event(type, Object.assign({ version: '3.52.0' }, detail), { bubbles: true }));
-}
-function append_dev(target, node) {
- dispatch_dev('SvelteDOMInsert', { target, node });
- append(target, node);
-}
-function insert_dev(target, node, anchor) {
- dispatch_dev('SvelteDOMInsert', { target, node, anchor });
- insert(target, node, anchor);
-}
-function detach_dev(node) {
- dispatch_dev('SvelteDOMRemove', { node });
- detach(node);
-}
-function listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) {
- const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : [];
- if (has_prevent_default)
- modifiers.push('preventDefault');
- if (has_stop_propagation)
- modifiers.push('stopPropagation');
- dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers });
- const dispose = listen(node, event, handler, options);
- return () => {
- dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers });
- dispose();
- };
-}
-function attr_dev(node, attribute, value) {
- attr(node, attribute, value);
- if (value == null)
- dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute });
- else
- dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value });
-}
-function prop_dev(node, property, value) {
- node[property] = value;
- dispatch_dev('SvelteDOMSetProperty', { node, property, value });
-}
-function set_data_dev(text, data) {
- data = '' + data;
- if (text.wholeText === data)
- return;
- dispatch_dev('SvelteDOMSetData', { node: text, data });
- text.data = data;
-}
-function validate_each_argument(arg) {
- if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) {
- let msg = '{#each} only iterates over array-like objects.';
- if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) {
- msg += ' You can use a spread to convert this iterable into an array.';
- }
- throw new Error(msg);
- }
-}
-function validate_slots(name, slot, keys) {
- for (const slot_key of Object.keys(slot)) {
- if (!~keys.indexOf(slot_key)) {
- console.warn(`<${name}> received an unexpected slot "${slot_key}".`);
- }
- }
-}
-
-export { set_custom_element_data as A, validate_each_argument as B, text as C, set_data_dev as D, destroy_each as E, prop_dev as F, set_style as G, svg_element as H, HtmlTag as I, afterUpdate as J, to_number as K, set_input_value as L, SvelteElement as S, attribute_to_object as a, insert_dev as b, setContext as c, dispatch_dev as d, globals as e, element as f, getContext as g, space as h, init as i, add_location as j, attr_dev as k, append_dev as l, listen_dev as m, noop as n, onMount as o, detach_dev as p, binding_callbacks as q, run_all as r, safe_not_equal as s, flush as t, is_function as u, validate_slots as v, validate_store as w, component_subscribe as x, empty as y, src_url_equal as z };
diff --git a/Server/public/js/components/index-122ecbb4.js b/Server/public/js/components/index-122ecbb4.js
deleted file mode 100644
index 0e54edc..0000000
--- a/Server/public/js/components/index-122ecbb4.js
+++ /dev/null
@@ -1,513 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-function noop() { }
-function add_location(element, file, line, column, char) {
- element.__svelte_meta = {
- loc: { file, line, column, char }
- };
-}
-function run(fn) {
- return fn();
-}
-function blank_object() {
- return Object.create(null);
-}
-function run_all(fns) {
- fns.forEach(run);
-}
-function is_function(thing) {
- return typeof thing === 'function';
-}
-function safe_not_equal(a, b) {
- return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');
-}
-let src_url_equal_anchor;
-function src_url_equal(element_src, url) {
- if (!src_url_equal_anchor) {
- src_url_equal_anchor = document.createElement('a');
- }
- src_url_equal_anchor.href = url;
- return element_src === src_url_equal_anchor.href;
-}
-function is_empty(obj) {
- return Object.keys(obj).length === 0;
-}
-function validate_store(store, name) {
- if (store != null && typeof store.subscribe !== 'function') {
- throw new Error(`'${name}' is not a store with a 'subscribe' method`);
- }
-}
-function subscribe(store, ...callbacks) {
- if (store == null) {
- return noop;
- }
- const unsub = store.subscribe(...callbacks);
- return unsub.unsubscribe ? () => unsub.unsubscribe() : unsub;
-}
-function component_subscribe(component, store, callback) {
- component.$$.on_destroy.push(subscribe(store, callback));
-}
-function append(target, node) {
- target.appendChild(node);
-}
-function insert(target, node, anchor) {
- target.insertBefore(node, anchor || null);
-}
-function detach(node) {
- node.parentNode.removeChild(node);
-}
-function destroy_each(iterations, detaching) {
- for (let i = 0; i < iterations.length; i += 1) {
- if (iterations[i])
- iterations[i].d(detaching);
- }
-}
-function element(name) {
- return document.createElement(name);
-}
-function svg_element(name) {
- return document.createElementNS('http://www.w3.org/2000/svg', name);
-}
-function text(data) {
- return document.createTextNode(data);
-}
-function space() {
- return text(' ');
-}
-function empty() {
- return text('');
-}
-function listen(node, event, handler, options) {
- node.addEventListener(event, handler, options);
- return () => node.removeEventListener(event, handler, options);
-}
-function attr(node, attribute, value) {
- if (value == null)
- node.removeAttribute(attribute);
- else if (node.getAttribute(attribute) !== value)
- node.setAttribute(attribute, value);
-}
-function set_custom_element_data(node, prop, value) {
- if (prop in node) {
- node[prop] = typeof node[prop] === 'boolean' && value === '' ? true : value;
- }
- else {
- attr(node, prop, value);
- }
-}
-function children(element) {
- return Array.from(element.childNodes);
-}
-function set_style(node, key, value, important) {
- if (value === null) {
- node.style.removeProperty(key);
- }
- else {
- node.style.setProperty(key, value, important ? 'important' : '');
- }
-}
-function custom_event(type, detail, { bubbles = false, cancelable = false } = {}) {
- const e = document.createEvent('CustomEvent');
- e.initCustomEvent(type, bubbles, cancelable, detail);
- return e;
-}
-class HtmlTag {
- constructor(is_svg = false) {
- this.is_svg = false;
- this.is_svg = is_svg;
- this.e = this.n = null;
- }
- c(html) {
- this.h(html);
- }
- m(html, target, anchor = null) {
- if (!this.e) {
- if (this.is_svg)
- this.e = svg_element(target.nodeName);
- else
- this.e = element(target.nodeName);
- this.t = target;
- this.c(html);
- }
- this.i(anchor);
- }
- h(html) {
- this.e.innerHTML = html;
- this.n = Array.from(this.e.childNodes);
- }
- i(anchor) {
- for (let i = 0; i < this.n.length; i += 1) {
- insert(this.t, this.n[i], anchor);
- }
- }
- p(html) {
- this.d();
- this.h(html);
- this.i(this.a);
- }
- d() {
- this.n.forEach(detach);
- }
-}
-function attribute_to_object(attributes) {
- const result = {};
- for (const attribute of attributes) {
- result[attribute.name] = attribute.value;
- }
- return result;
-}
-
-let current_component;
-function set_current_component(component) {
- current_component = component;
-}
-function get_current_component() {
- if (!current_component)
- throw new Error('Function called outside component initialization');
- return current_component;
-}
-/**
- * The `onMount` function schedules a callback to run as soon as the component has been mounted to the DOM.
- * It must be called during the component's initialisation (but doesn't need to live *inside* the component;
- * it can be called from an external module).
- *
- * `onMount` does not run inside a [server-side component](/docs#run-time-server-side-component-api).
- *
- * https://svelte.dev/docs#run-time-svelte-onmount
- */
-function onMount(fn) {
- get_current_component().$$.on_mount.push(fn);
-}
-/**
- * Associates an arbitrary `context` object with the current component and the specified `key`
- * and returns that object. The context is then available to children of the component
- * (including slotted content) with `getContext`.
- *
- * Like lifecycle functions, this must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-setcontext
- */
-function setContext(key, context) {
- get_current_component().$$.context.set(key, context);
- return context;
-}
-/**
- * Retrieves the context that belongs to the closest parent component with the specified `key`.
- * Must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-getcontext
- */
-function getContext(key) {
- return get_current_component().$$.context.get(key);
-}
-
-const dirty_components = [];
-const binding_callbacks = [];
-const render_callbacks = [];
-const flush_callbacks = [];
-const resolved_promise = Promise.resolve();
-let update_scheduled = false;
-function schedule_update() {
- if (!update_scheduled) {
- update_scheduled = true;
- resolved_promise.then(flush);
- }
-}
-function add_render_callback(fn) {
- render_callbacks.push(fn);
-}
-// flush() calls callbacks in this order:
-// 1. All beforeUpdate callbacks, in order: parents before children
-// 2. All bind:this callbacks, in reverse order: children before parents.
-// 3. All afterUpdate callbacks, in order: parents before children. EXCEPT
-// for afterUpdates called during the initial onMount, which are called in
-// reverse order: children before parents.
-// Since callbacks might update component values, which could trigger another
-// call to flush(), the following steps guard against this:
-// 1. During beforeUpdate, any updated components will be added to the
-// dirty_components array and will cause a reentrant call to flush(). Because
-// the flush index is kept outside the function, the reentrant call will pick
-// up where the earlier call left off and go through all dirty components. The
-// current_component value is saved and restored so that the reentrant call will
-// not interfere with the "parent" flush() call.
-// 2. bind:this callbacks cannot trigger new flush() calls.
-// 3. During afterUpdate, any updated components will NOT have their afterUpdate
-// callback called a second time; the seen_callbacks set, outside the flush()
-// function, guarantees this behavior.
-const seen_callbacks = new Set();
-let flushidx = 0; // Do *not* move this inside the flush() function
-function flush() {
- const saved_component = current_component;
- do {
- // first, call beforeUpdate functions
- // and update components
- while (flushidx < dirty_components.length) {
- const component = dirty_components[flushidx];
- flushidx++;
- set_current_component(component);
- update(component.$$);
- }
- set_current_component(null);
- dirty_components.length = 0;
- flushidx = 0;
- while (binding_callbacks.length)
- binding_callbacks.pop()();
- // then, once components are updated, call
- // afterUpdate functions. This may cause
- // subsequent updates...
- for (let i = 0; i < render_callbacks.length; i += 1) {
- const callback = render_callbacks[i];
- if (!seen_callbacks.has(callback)) {
- // ...so guard against infinite loops
- seen_callbacks.add(callback);
- callback();
- }
- }
- render_callbacks.length = 0;
- } while (dirty_components.length);
- while (flush_callbacks.length) {
- flush_callbacks.pop()();
- }
- update_scheduled = false;
- seen_callbacks.clear();
- set_current_component(saved_component);
-}
-function update($$) {
- if ($$.fragment !== null) {
- $$.update();
- run_all($$.before_update);
- const dirty = $$.dirty;
- $$.dirty = [-1];
- $$.fragment && $$.fragment.p($$.ctx, dirty);
- $$.after_update.forEach(add_render_callback);
- }
-}
-const outroing = new Set();
-function transition_in(block, local) {
- if (block && block.i) {
- outroing.delete(block);
- block.i(local);
- }
-}
-
-const globals = (typeof window !== 'undefined'
- ? window
- : typeof globalThis !== 'undefined'
- ? globalThis
- : global);
-function mount_component(component, target, anchor, customElement) {
- const { fragment, after_update } = component.$$;
- fragment && fragment.m(target, anchor);
- if (!customElement) {
- // onMount happens before the initial afterUpdate
- add_render_callback(() => {
- const new_on_destroy = component.$$.on_mount.map(run).filter(is_function);
- // if the component was destroyed immediately
- // it will update the `$$.on_destroy` reference to `null`.
- // the destructured on_destroy may still reference to the old array
- if (component.$$.on_destroy) {
- component.$$.on_destroy.push(...new_on_destroy);
- }
- else {
- // Edge case - component was destroyed immediately,
- // most likely as a result of a binding initialising
- run_all(new_on_destroy);
- }
- component.$$.on_mount = [];
- });
- }
- after_update.forEach(add_render_callback);
-}
-function destroy_component(component, detaching) {
- const $$ = component.$$;
- if ($$.fragment !== null) {
- run_all($$.on_destroy);
- $$.fragment && $$.fragment.d(detaching);
- // TODO null out other refs, including component.$$ (but need to
- // preserve final state?)
- $$.on_destroy = $$.fragment = null;
- $$.ctx = [];
- }
-}
-function make_dirty(component, i) {
- if (component.$$.dirty[0] === -1) {
- dirty_components.push(component);
- schedule_update();
- component.$$.dirty.fill(0);
- }
- component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31));
-}
-function init(component, options, instance, create_fragment, not_equal, props, append_styles, dirty = [-1]) {
- const parent_component = current_component;
- set_current_component(component);
- const $$ = component.$$ = {
- fragment: null,
- ctx: [],
- // state
- props,
- update: noop,
- not_equal,
- bound: blank_object(),
- // lifecycle
- on_mount: [],
- on_destroy: [],
- on_disconnect: [],
- before_update: [],
- after_update: [],
- context: new Map(options.context || (parent_component ? parent_component.$$.context : [])),
- // everything else
- callbacks: blank_object(),
- dirty,
- skip_bound: false,
- root: options.target || parent_component.$$.root
- };
- append_styles && append_styles($$.root);
- let ready = false;
- $$.ctx = instance
- ? instance(component, options.props || {}, (i, ret, ...rest) => {
- const value = rest.length ? rest[0] : ret;
- if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {
- if (!$$.skip_bound && $$.bound[i])
- $$.bound[i](value);
- if (ready)
- make_dirty(component, i);
- }
- return ret;
- })
- : [];
- $$.update();
- ready = true;
- run_all($$.before_update);
- // `false` as a special case of no DOM component
- $$.fragment = create_fragment ? create_fragment($$.ctx) : false;
- if (options.target) {
- if (options.hydrate) {
- const nodes = children(options.target);
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.l(nodes);
- nodes.forEach(detach);
- }
- else {
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.c();
- }
- if (options.intro)
- transition_in(component.$$.fragment);
- mount_component(component, options.target, options.anchor, options.customElement);
- flush();
- }
- set_current_component(parent_component);
-}
-let SvelteElement;
-if (typeof HTMLElement === 'function') {
- SvelteElement = class extends HTMLElement {
- constructor() {
- super();
- this.attachShadow({ mode: 'open' });
- }
- connectedCallback() {
- const { on_mount } = this.$$;
- this.$$.on_disconnect = on_mount.map(run).filter(is_function);
- // @ts-ignore todo: improve typings
- for (const key in this.$$.slotted) {
- // @ts-ignore todo: improve typings
- this.appendChild(this.$$.slotted[key]);
- }
- }
- attributeChangedCallback(attr, _oldValue, newValue) {
- this[attr] = newValue;
- }
- disconnectedCallback() {
- run_all(this.$$.on_disconnect);
- }
- $destroy() {
- destroy_component(this, 1);
- this.$destroy = noop;
- }
- $on(type, callback) {
- // TODO should this delegate to addEventListener?
- if (!is_function(callback)) {
- return noop;
- }
- const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));
- callbacks.push(callback);
- return () => {
- const index = callbacks.indexOf(callback);
- if (index !== -1)
- callbacks.splice(index, 1);
- };
- }
- $set($$props) {
- if (this.$$set && !is_empty($$props)) {
- this.$$.skip_bound = true;
- this.$$set($$props);
- this.$$.skip_bound = false;
- }
- }
- };
-}
-
-function dispatch_dev(type, detail) {
- document.dispatchEvent(custom_event(type, Object.assign({ version: '3.52.0' }, detail), { bubbles: true }));
-}
-function append_dev(target, node) {
- dispatch_dev('SvelteDOMInsert', { target, node });
- append(target, node);
-}
-function insert_dev(target, node, anchor) {
- dispatch_dev('SvelteDOMInsert', { target, node, anchor });
- insert(target, node, anchor);
-}
-function detach_dev(node) {
- dispatch_dev('SvelteDOMRemove', { node });
- detach(node);
-}
-function listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) {
- const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : [];
- if (has_prevent_default)
- modifiers.push('preventDefault');
- if (has_stop_propagation)
- modifiers.push('stopPropagation');
- dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers });
- const dispose = listen(node, event, handler, options);
- return () => {
- dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers });
- dispose();
- };
-}
-function attr_dev(node, attribute, value) {
- attr(node, attribute, value);
- if (value == null)
- dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute });
- else
- dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value });
-}
-function prop_dev(node, property, value) {
- node[property] = value;
- dispatch_dev('SvelteDOMSetProperty', { node, property, value });
-}
-function set_data_dev(text, data) {
- data = '' + data;
- if (text.wholeText === data)
- return;
- dispatch_dev('SvelteDOMSetData', { node: text, data });
- text.data = data;
-}
-function validate_each_argument(arg) {
- if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) {
- let msg = '{#each} only iterates over array-like objects.';
- if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) {
- msg += ' You can use a spread to convert this iterable into an array.';
- }
- throw new Error(msg);
- }
-}
-function validate_slots(name, slot, keys) {
- for (const slot_key of Object.keys(slot)) {
- if (!~keys.indexOf(slot_key)) {
- console.warn(`<${name}> received an unexpected slot "${slot_key}".`);
- }
- }
-}
-
-export { validate_each_argument as A, text as B, set_data_dev as C, destroy_each as D, prop_dev as E, set_style as F, svg_element as G, is_function as H, HtmlTag as I, SvelteElement as S, attribute_to_object as a, insert_dev as b, setContext as c, dispatch_dev as d, globals as e, element as f, getContext as g, space as h, init as i, add_location as j, attr_dev as k, append_dev as l, listen_dev as m, noop as n, onMount as o, detach_dev as p, binding_callbacks as q, run_all as r, safe_not_equal as s, flush as t, src_url_equal as u, validate_slots as v, validate_store as w, component_subscribe as x, empty as y, set_custom_element_data as z };
diff --git a/Server/public/js/components/index-1b62632d.js b/Server/public/js/components/index-1b62632d.js
deleted file mode 100644
index ebcbf4c..0000000
--- a/Server/public/js/components/index-1b62632d.js
+++ /dev/null
@@ -1,53 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-import { n as noop, s as safe_not_equal } from './index-68a48afb.js';
-
-const subscriber_queue = [];
-/**
- * Create a `Writable` store that allows both updating and reading by subscription.
- * @param {*=}value initial value
- * @param {StartStopNotifier=}start start and stop notifications for subscriptions
- */
-function writable(value, start = noop) {
- let stop;
- const subscribers = new Set();
- function set(new_value) {
- if (safe_not_equal(value, new_value)) {
- value = new_value;
- if (stop) { // store is ready
- const run_queue = !subscriber_queue.length;
- for (const subscriber of subscribers) {
- subscriber[1]();
- subscriber_queue.push(subscriber, value);
- }
- if (run_queue) {
- for (let i = 0; i < subscriber_queue.length; i += 2) {
- subscriber_queue[i][0](subscriber_queue[i + 1]);
- }
- subscriber_queue.length = 0;
- }
- }
- }
- }
- function update(fn) {
- set(fn(value));
- }
- function subscribe(run, invalidate = noop) {
- const subscriber = [run, invalidate];
- subscribers.add(subscriber);
- if (subscribers.size === 1) {
- stop = start(set) || noop;
- }
- run(value);
- return () => {
- subscribers.delete(subscriber);
- if (subscribers.size === 0) {
- stop();
- stop = null;
- }
- };
- }
- return { set, update, subscribe };
-}
-
-export { writable as w };
diff --git a/Server/public/js/components/index-1f2eaab8.js b/Server/public/js/components/index-1f2eaab8.js
deleted file mode 100644
index e88d822..0000000
--- a/Server/public/js/components/index-1f2eaab8.js
+++ /dev/null
@@ -1,53 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-import { n as noop, s as safe_not_equal } from './index-8c3676b2.js';
-
-const subscriber_queue = [];
-/**
- * Create a `Writable` store that allows both updating and reading by subscription.
- * @param {*=}value initial value
- * @param {StartStopNotifier=}start start and stop notifications for subscriptions
- */
-function writable(value, start = noop) {
- let stop;
- const subscribers = new Set();
- function set(new_value) {
- if (safe_not_equal(value, new_value)) {
- value = new_value;
- if (stop) { // store is ready
- const run_queue = !subscriber_queue.length;
- for (const subscriber of subscribers) {
- subscriber[1]();
- subscriber_queue.push(subscriber, value);
- }
- if (run_queue) {
- for (let i = 0; i < subscriber_queue.length; i += 2) {
- subscriber_queue[i][0](subscriber_queue[i + 1]);
- }
- subscriber_queue.length = 0;
- }
- }
- }
- }
- function update(fn) {
- set(fn(value));
- }
- function subscribe(run, invalidate = noop) {
- const subscriber = [run, invalidate];
- subscribers.add(subscriber);
- if (subscribers.size === 1) {
- stop = start(set) || noop;
- }
- run(value);
- return () => {
- subscribers.delete(subscriber);
- if (subscribers.size === 0) {
- stop();
- stop = null;
- }
- };
- }
- return { set, update, subscribe };
-}
-
-export { writable as w };
diff --git a/Server/public/js/components/index-2155aefb.js b/Server/public/js/components/index-2155aefb.js
deleted file mode 100644
index 255f759..0000000
--- a/Server/public/js/components/index-2155aefb.js
+++ /dev/null
@@ -1,53 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-import { n as noop, s as safe_not_equal } from './index-a459c24b.js';
-
-const subscriber_queue = [];
-/**
- * Create a `Writable` store that allows both updating and reading by subscription.
- * @param {*=}value initial value
- * @param {StartStopNotifier=}start start and stop notifications for subscriptions
- */
-function writable(value, start = noop) {
- let stop;
- const subscribers = new Set();
- function set(new_value) {
- if (safe_not_equal(value, new_value)) {
- value = new_value;
- if (stop) { // store is ready
- const run_queue = !subscriber_queue.length;
- for (const subscriber of subscribers) {
- subscriber[1]();
- subscriber_queue.push(subscriber, value);
- }
- if (run_queue) {
- for (let i = 0; i < subscriber_queue.length; i += 2) {
- subscriber_queue[i][0](subscriber_queue[i + 1]);
- }
- subscriber_queue.length = 0;
- }
- }
- }
- }
- function update(fn) {
- set(fn(value));
- }
- function subscribe(run, invalidate = noop) {
- const subscriber = [run, invalidate];
- subscribers.add(subscriber);
- if (subscribers.size === 1) {
- stop = start(set) || noop;
- }
- run(value);
- return () => {
- subscribers.delete(subscriber);
- if (subscribers.size === 0) {
- stop();
- stop = null;
- }
- };
- }
- return { set, update, subscribe };
-}
-
-export { writable as w };
diff --git a/Server/public/js/components/index-2620635a.js b/Server/public/js/components/index-2620635a.js
deleted file mode 100644
index a5b20b0..0000000
--- a/Server/public/js/components/index-2620635a.js
+++ /dev/null
@@ -1,527 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-function noop() { }
-function add_location(element, file, line, column, char) {
- element.__svelte_meta = {
- loc: { file, line, column, char }
- };
-}
-function run(fn) {
- return fn();
-}
-function blank_object() {
- return Object.create(null);
-}
-function run_all(fns) {
- fns.forEach(run);
-}
-function is_function(thing) {
- return typeof thing === 'function';
-}
-function safe_not_equal(a, b) {
- return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');
-}
-let src_url_equal_anchor;
-function src_url_equal(element_src, url) {
- if (!src_url_equal_anchor) {
- src_url_equal_anchor = document.createElement('a');
- }
- src_url_equal_anchor.href = url;
- return element_src === src_url_equal_anchor.href;
-}
-function is_empty(obj) {
- return Object.keys(obj).length === 0;
-}
-function validate_store(store, name) {
- if (store != null && typeof store.subscribe !== 'function') {
- throw new Error(`'${name}' is not a store with a 'subscribe' method`);
- }
-}
-function subscribe(store, ...callbacks) {
- if (store == null) {
- return noop;
- }
- const unsub = store.subscribe(...callbacks);
- return unsub.unsubscribe ? () => unsub.unsubscribe() : unsub;
-}
-function component_subscribe(component, store, callback) {
- component.$$.on_destroy.push(subscribe(store, callback));
-}
-function append(target, node) {
- target.appendChild(node);
-}
-function insert(target, node, anchor) {
- target.insertBefore(node, anchor || null);
-}
-function detach(node) {
- node.parentNode.removeChild(node);
-}
-function destroy_each(iterations, detaching) {
- for (let i = 0; i < iterations.length; i += 1) {
- if (iterations[i])
- iterations[i].d(detaching);
- }
-}
-function element(name) {
- return document.createElement(name);
-}
-function svg_element(name) {
- return document.createElementNS('http://www.w3.org/2000/svg', name);
-}
-function text(data) {
- return document.createTextNode(data);
-}
-function space() {
- return text(' ');
-}
-function empty() {
- return text('');
-}
-function listen(node, event, handler, options) {
- node.addEventListener(event, handler, options);
- return () => node.removeEventListener(event, handler, options);
-}
-function attr(node, attribute, value) {
- if (value == null)
- node.removeAttribute(attribute);
- else if (node.getAttribute(attribute) !== value)
- node.setAttribute(attribute, value);
-}
-function set_custom_element_data(node, prop, value) {
- if (prop in node) {
- node[prop] = typeof node[prop] === 'boolean' && value === '' ? true : value;
- }
- else {
- attr(node, prop, value);
- }
-}
-function to_number(value) {
- return value === '' ? null : +value;
-}
-function children(element) {
- return Array.from(element.childNodes);
-}
-function set_input_value(input, value) {
- input.value = value == null ? '' : value;
-}
-function set_style(node, key, value, important) {
- if (value === null) {
- node.style.removeProperty(key);
- }
- else {
- node.style.setProperty(key, value, important ? 'important' : '');
- }
-}
-function custom_event(type, detail, { bubbles = false, cancelable = false } = {}) {
- const e = document.createEvent('CustomEvent');
- e.initCustomEvent(type, bubbles, cancelable, detail);
- return e;
-}
-class HtmlTag {
- constructor(is_svg = false) {
- this.is_svg = false;
- this.is_svg = is_svg;
- this.e = this.n = null;
- }
- c(html) {
- this.h(html);
- }
- m(html, target, anchor = null) {
- if (!this.e) {
- if (this.is_svg)
- this.e = svg_element(target.nodeName);
- else
- this.e = element(target.nodeName);
- this.t = target;
- this.c(html);
- }
- this.i(anchor);
- }
- h(html) {
- this.e.innerHTML = html;
- this.n = Array.from(this.e.childNodes);
- }
- i(anchor) {
- for (let i = 0; i < this.n.length; i += 1) {
- insert(this.t, this.n[i], anchor);
- }
- }
- p(html) {
- this.d();
- this.h(html);
- this.i(this.a);
- }
- d() {
- this.n.forEach(detach);
- }
-}
-function attribute_to_object(attributes) {
- const result = {};
- for (const attribute of attributes) {
- result[attribute.name] = attribute.value;
- }
- return result;
-}
-
-let current_component;
-function set_current_component(component) {
- current_component = component;
-}
-function get_current_component() {
- if (!current_component)
- throw new Error('Function called outside component initialization');
- return current_component;
-}
-/**
- * The `onMount` function schedules a callback to run as soon as the component has been mounted to the DOM.
- * It must be called during the component's initialisation (but doesn't need to live *inside* the component;
- * it can be called from an external module).
- *
- * `onMount` does not run inside a [server-side component](/docs#run-time-server-side-component-api).
- *
- * https://svelte.dev/docs#run-time-svelte-onmount
- */
-function onMount(fn) {
- get_current_component().$$.on_mount.push(fn);
-}
-/**
- * Schedules a callback to run immediately after the component has been updated.
- *
- * The first time the callback runs will be after the initial `onMount`
- */
-function afterUpdate(fn) {
- get_current_component().$$.after_update.push(fn);
-}
-/**
- * Associates an arbitrary `context` object with the current component and the specified `key`
- * and returns that object. The context is then available to children of the component
- * (including slotted content) with `getContext`.
- *
- * Like lifecycle functions, this must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-setcontext
- */
-function setContext(key, context) {
- get_current_component().$$.context.set(key, context);
- return context;
-}
-/**
- * Retrieves the context that belongs to the closest parent component with the specified `key`.
- * Must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-getcontext
- */
-function getContext(key) {
- return get_current_component().$$.context.get(key);
-}
-
-const dirty_components = [];
-const binding_callbacks = [];
-const render_callbacks = [];
-const flush_callbacks = [];
-const resolved_promise = Promise.resolve();
-let update_scheduled = false;
-function schedule_update() {
- if (!update_scheduled) {
- update_scheduled = true;
- resolved_promise.then(flush);
- }
-}
-function add_render_callback(fn) {
- render_callbacks.push(fn);
-}
-// flush() calls callbacks in this order:
-// 1. All beforeUpdate callbacks, in order: parents before children
-// 2. All bind:this callbacks, in reverse order: children before parents.
-// 3. All afterUpdate callbacks, in order: parents before children. EXCEPT
-// for afterUpdates called during the initial onMount, which are called in
-// reverse order: children before parents.
-// Since callbacks might update component values, which could trigger another
-// call to flush(), the following steps guard against this:
-// 1. During beforeUpdate, any updated components will be added to the
-// dirty_components array and will cause a reentrant call to flush(). Because
-// the flush index is kept outside the function, the reentrant call will pick
-// up where the earlier call left off and go through all dirty components. The
-// current_component value is saved and restored so that the reentrant call will
-// not interfere with the "parent" flush() call.
-// 2. bind:this callbacks cannot trigger new flush() calls.
-// 3. During afterUpdate, any updated components will NOT have their afterUpdate
-// callback called a second time; the seen_callbacks set, outside the flush()
-// function, guarantees this behavior.
-const seen_callbacks = new Set();
-let flushidx = 0; // Do *not* move this inside the flush() function
-function flush() {
- const saved_component = current_component;
- do {
- // first, call beforeUpdate functions
- // and update components
- while (flushidx < dirty_components.length) {
- const component = dirty_components[flushidx];
- flushidx++;
- set_current_component(component);
- update(component.$$);
- }
- set_current_component(null);
- dirty_components.length = 0;
- flushidx = 0;
- while (binding_callbacks.length)
- binding_callbacks.pop()();
- // then, once components are updated, call
- // afterUpdate functions. This may cause
- // subsequent updates...
- for (let i = 0; i < render_callbacks.length; i += 1) {
- const callback = render_callbacks[i];
- if (!seen_callbacks.has(callback)) {
- // ...so guard against infinite loops
- seen_callbacks.add(callback);
- callback();
- }
- }
- render_callbacks.length = 0;
- } while (dirty_components.length);
- while (flush_callbacks.length) {
- flush_callbacks.pop()();
- }
- update_scheduled = false;
- seen_callbacks.clear();
- set_current_component(saved_component);
-}
-function update($$) {
- if ($$.fragment !== null) {
- $$.update();
- run_all($$.before_update);
- const dirty = $$.dirty;
- $$.dirty = [-1];
- $$.fragment && $$.fragment.p($$.ctx, dirty);
- $$.after_update.forEach(add_render_callback);
- }
-}
-const outroing = new Set();
-function transition_in(block, local) {
- if (block && block.i) {
- outroing.delete(block);
- block.i(local);
- }
-}
-
-const globals = (typeof window !== 'undefined'
- ? window
- : typeof globalThis !== 'undefined'
- ? globalThis
- : global);
-function mount_component(component, target, anchor, customElement) {
- const { fragment, after_update } = component.$$;
- fragment && fragment.m(target, anchor);
- if (!customElement) {
- // onMount happens before the initial afterUpdate
- add_render_callback(() => {
- const new_on_destroy = component.$$.on_mount.map(run).filter(is_function);
- // if the component was destroyed immediately
- // it will update the `$$.on_destroy` reference to `null`.
- // the destructured on_destroy may still reference to the old array
- if (component.$$.on_destroy) {
- component.$$.on_destroy.push(...new_on_destroy);
- }
- else {
- // Edge case - component was destroyed immediately,
- // most likely as a result of a binding initialising
- run_all(new_on_destroy);
- }
- component.$$.on_mount = [];
- });
- }
- after_update.forEach(add_render_callback);
-}
-function destroy_component(component, detaching) {
- const $$ = component.$$;
- if ($$.fragment !== null) {
- run_all($$.on_destroy);
- $$.fragment && $$.fragment.d(detaching);
- // TODO null out other refs, including component.$$ (but need to
- // preserve final state?)
- $$.on_destroy = $$.fragment = null;
- $$.ctx = [];
- }
-}
-function make_dirty(component, i) {
- if (component.$$.dirty[0] === -1) {
- dirty_components.push(component);
- schedule_update();
- component.$$.dirty.fill(0);
- }
- component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31));
-}
-function init(component, options, instance, create_fragment, not_equal, props, append_styles, dirty = [-1]) {
- const parent_component = current_component;
- set_current_component(component);
- const $$ = component.$$ = {
- fragment: null,
- ctx: [],
- // state
- props,
- update: noop,
- not_equal,
- bound: blank_object(),
- // lifecycle
- on_mount: [],
- on_destroy: [],
- on_disconnect: [],
- before_update: [],
- after_update: [],
- context: new Map(options.context || (parent_component ? parent_component.$$.context : [])),
- // everything else
- callbacks: blank_object(),
- dirty,
- skip_bound: false,
- root: options.target || parent_component.$$.root
- };
- append_styles && append_styles($$.root);
- let ready = false;
- $$.ctx = instance
- ? instance(component, options.props || {}, (i, ret, ...rest) => {
- const value = rest.length ? rest[0] : ret;
- if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {
- if (!$$.skip_bound && $$.bound[i])
- $$.bound[i](value);
- if (ready)
- make_dirty(component, i);
- }
- return ret;
- })
- : [];
- $$.update();
- ready = true;
- run_all($$.before_update);
- // `false` as a special case of no DOM component
- $$.fragment = create_fragment ? create_fragment($$.ctx) : false;
- if (options.target) {
- if (options.hydrate) {
- const nodes = children(options.target);
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.l(nodes);
- nodes.forEach(detach);
- }
- else {
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.c();
- }
- if (options.intro)
- transition_in(component.$$.fragment);
- mount_component(component, options.target, options.anchor, options.customElement);
- flush();
- }
- set_current_component(parent_component);
-}
-let SvelteElement;
-if (typeof HTMLElement === 'function') {
- SvelteElement = class extends HTMLElement {
- constructor() {
- super();
- this.attachShadow({ mode: 'open' });
- }
- connectedCallback() {
- const { on_mount } = this.$$;
- this.$$.on_disconnect = on_mount.map(run).filter(is_function);
- // @ts-ignore todo: improve typings
- for (const key in this.$$.slotted) {
- // @ts-ignore todo: improve typings
- this.appendChild(this.$$.slotted[key]);
- }
- }
- attributeChangedCallback(attr, _oldValue, newValue) {
- this[attr] = newValue;
- }
- disconnectedCallback() {
- run_all(this.$$.on_disconnect);
- }
- $destroy() {
- destroy_component(this, 1);
- this.$destroy = noop;
- }
- $on(type, callback) {
- // TODO should this delegate to addEventListener?
- if (!is_function(callback)) {
- return noop;
- }
- const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));
- callbacks.push(callback);
- return () => {
- const index = callbacks.indexOf(callback);
- if (index !== -1)
- callbacks.splice(index, 1);
- };
- }
- $set($$props) {
- if (this.$$set && !is_empty($$props)) {
- this.$$.skip_bound = true;
- this.$$set($$props);
- this.$$.skip_bound = false;
- }
- }
- };
-}
-
-function dispatch_dev(type, detail) {
- document.dispatchEvent(custom_event(type, Object.assign({ version: '3.52.0' }, detail), { bubbles: true }));
-}
-function append_dev(target, node) {
- dispatch_dev('SvelteDOMInsert', { target, node });
- append(target, node);
-}
-function insert_dev(target, node, anchor) {
- dispatch_dev('SvelteDOMInsert', { target, node, anchor });
- insert(target, node, anchor);
-}
-function detach_dev(node) {
- dispatch_dev('SvelteDOMRemove', { node });
- detach(node);
-}
-function listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) {
- const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : [];
- if (has_prevent_default)
- modifiers.push('preventDefault');
- if (has_stop_propagation)
- modifiers.push('stopPropagation');
- dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers });
- const dispose = listen(node, event, handler, options);
- return () => {
- dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers });
- dispose();
- };
-}
-function attr_dev(node, attribute, value) {
- attr(node, attribute, value);
- if (value == null)
- dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute });
- else
- dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value });
-}
-function prop_dev(node, property, value) {
- node[property] = value;
- dispatch_dev('SvelteDOMSetProperty', { node, property, value });
-}
-function set_data_dev(text, data) {
- data = '' + data;
- if (text.wholeText === data)
- return;
- dispatch_dev('SvelteDOMSetData', { node: text, data });
- text.data = data;
-}
-function validate_each_argument(arg) {
- if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) {
- let msg = '{#each} only iterates over array-like objects.';
- if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) {
- msg += ' You can use a spread to convert this iterable into an array.';
- }
- throw new Error(msg);
- }
-}
-function validate_slots(name, slot, keys) {
- for (const slot_key of Object.keys(slot)) {
- if (!~keys.indexOf(slot_key)) {
- console.warn(`<${name}> received an unexpected slot "${slot_key}".`);
- }
- }
-}
-
-export { run_all as A, flush as B, is_function as C, src_url_equal as D, set_custom_element_data as E, prop_dev as F, set_style as G, svg_element as H, HtmlTag as I, afterUpdate as J, to_number as K, set_input_value as L, SvelteElement as S, attribute_to_object as a, insert_dev as b, validate_store as c, dispatch_dev as d, component_subscribe as e, globals as f, getContext as g, empty as h, init as i, detach_dev as j, binding_callbacks as k, validate_each_argument as l, space as m, noop as n, onMount as o, set_data_dev as p, element as q, add_location as r, safe_not_equal as s, text as t, attr_dev as u, validate_slots as v, append_dev as w, listen_dev as x, destroy_each as y, setContext as z };
diff --git a/Server/public/js/components/index-29ee6d60.js b/Server/public/js/components/index-29ee6d60.js
deleted file mode 100644
index 027517d..0000000
--- a/Server/public/js/components/index-29ee6d60.js
+++ /dev/null
@@ -1,53 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-import { n as noop, s as safe_not_equal } from './index-2e2aa7d2.js';
-
-const subscriber_queue = [];
-/**
- * Create a `Writable` store that allows both updating and reading by subscription.
- * @param {*=}value initial value
- * @param {StartStopNotifier=}start start and stop notifications for subscriptions
- */
-function writable(value, start = noop) {
- let stop;
- const subscribers = new Set();
- function set(new_value) {
- if (safe_not_equal(value, new_value)) {
- value = new_value;
- if (stop) { // store is ready
- const run_queue = !subscriber_queue.length;
- for (const subscriber of subscribers) {
- subscriber[1]();
- subscriber_queue.push(subscriber, value);
- }
- if (run_queue) {
- for (let i = 0; i < subscriber_queue.length; i += 2) {
- subscriber_queue[i][0](subscriber_queue[i + 1]);
- }
- subscriber_queue.length = 0;
- }
- }
- }
- }
- function update(fn) {
- set(fn(value));
- }
- function subscribe(run, invalidate = noop) {
- const subscriber = [run, invalidate];
- subscribers.add(subscriber);
- if (subscribers.size === 1) {
- stop = start(set) || noop;
- }
- run(value);
- return () => {
- subscribers.delete(subscriber);
- if (subscribers.size === 0) {
- stop();
- stop = null;
- }
- };
- }
- return { set, update, subscribe };
-}
-
-export { writable as w };
diff --git a/Server/public/js/components/index-2e2aa7d2.js b/Server/public/js/components/index-2e2aa7d2.js
deleted file mode 100644
index d6b7e94..0000000
--- a/Server/public/js/components/index-2e2aa7d2.js
+++ /dev/null
@@ -1,513 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-function noop() { }
-function add_location(element, file, line, column, char) {
- element.__svelte_meta = {
- loc: { file, line, column, char }
- };
-}
-function run(fn) {
- return fn();
-}
-function blank_object() {
- return Object.create(null);
-}
-function run_all(fns) {
- fns.forEach(run);
-}
-function is_function(thing) {
- return typeof thing === 'function';
-}
-function safe_not_equal(a, b) {
- return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');
-}
-let src_url_equal_anchor;
-function src_url_equal(element_src, url) {
- if (!src_url_equal_anchor) {
- src_url_equal_anchor = document.createElement('a');
- }
- src_url_equal_anchor.href = url;
- return element_src === src_url_equal_anchor.href;
-}
-function is_empty(obj) {
- return Object.keys(obj).length === 0;
-}
-function validate_store(store, name) {
- if (store != null && typeof store.subscribe !== 'function') {
- throw new Error(`'${name}' is not a store with a 'subscribe' method`);
- }
-}
-function subscribe(store, ...callbacks) {
- if (store == null) {
- return noop;
- }
- const unsub = store.subscribe(...callbacks);
- return unsub.unsubscribe ? () => unsub.unsubscribe() : unsub;
-}
-function component_subscribe(component, store, callback) {
- component.$$.on_destroy.push(subscribe(store, callback));
-}
-function append(target, node) {
- target.appendChild(node);
-}
-function insert(target, node, anchor) {
- target.insertBefore(node, anchor || null);
-}
-function detach(node) {
- node.parentNode.removeChild(node);
-}
-function destroy_each(iterations, detaching) {
- for (let i = 0; i < iterations.length; i += 1) {
- if (iterations[i])
- iterations[i].d(detaching);
- }
-}
-function element(name) {
- return document.createElement(name);
-}
-function svg_element(name) {
- return document.createElementNS('http://www.w3.org/2000/svg', name);
-}
-function text(data) {
- return document.createTextNode(data);
-}
-function space() {
- return text(' ');
-}
-function empty() {
- return text('');
-}
-function listen(node, event, handler, options) {
- node.addEventListener(event, handler, options);
- return () => node.removeEventListener(event, handler, options);
-}
-function attr(node, attribute, value) {
- if (value == null)
- node.removeAttribute(attribute);
- else if (node.getAttribute(attribute) !== value)
- node.setAttribute(attribute, value);
-}
-function set_custom_element_data(node, prop, value) {
- if (prop in node) {
- node[prop] = typeof node[prop] === 'boolean' && value === '' ? true : value;
- }
- else {
- attr(node, prop, value);
- }
-}
-function children(element) {
- return Array.from(element.childNodes);
-}
-function set_style(node, key, value, important) {
- if (value === null) {
- node.style.removeProperty(key);
- }
- else {
- node.style.setProperty(key, value, important ? 'important' : '');
- }
-}
-function custom_event(type, detail, { bubbles = false, cancelable = false } = {}) {
- const e = document.createEvent('CustomEvent');
- e.initCustomEvent(type, bubbles, cancelable, detail);
- return e;
-}
-class HtmlTag {
- constructor(is_svg = false) {
- this.is_svg = false;
- this.is_svg = is_svg;
- this.e = this.n = null;
- }
- c(html) {
- this.h(html);
- }
- m(html, target, anchor = null) {
- if (!this.e) {
- if (this.is_svg)
- this.e = svg_element(target.nodeName);
- else
- this.e = element(target.nodeName);
- this.t = target;
- this.c(html);
- }
- this.i(anchor);
- }
- h(html) {
- this.e.innerHTML = html;
- this.n = Array.from(this.e.childNodes);
- }
- i(anchor) {
- for (let i = 0; i < this.n.length; i += 1) {
- insert(this.t, this.n[i], anchor);
- }
- }
- p(html) {
- this.d();
- this.h(html);
- this.i(this.a);
- }
- d() {
- this.n.forEach(detach);
- }
-}
-function attribute_to_object(attributes) {
- const result = {};
- for (const attribute of attributes) {
- result[attribute.name] = attribute.value;
- }
- return result;
-}
-
-let current_component;
-function set_current_component(component) {
- current_component = component;
-}
-function get_current_component() {
- if (!current_component)
- throw new Error('Function called outside component initialization');
- return current_component;
-}
-/**
- * The `onMount` function schedules a callback to run as soon as the component has been mounted to the DOM.
- * It must be called during the component's initialisation (but doesn't need to live *inside* the component;
- * it can be called from an external module).
- *
- * `onMount` does not run inside a [server-side component](/docs#run-time-server-side-component-api).
- *
- * https://svelte.dev/docs#run-time-svelte-onmount
- */
-function onMount(fn) {
- get_current_component().$$.on_mount.push(fn);
-}
-/**
- * Associates an arbitrary `context` object with the current component and the specified `key`
- * and returns that object. The context is then available to children of the component
- * (including slotted content) with `getContext`.
- *
- * Like lifecycle functions, this must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-setcontext
- */
-function setContext(key, context) {
- get_current_component().$$.context.set(key, context);
- return context;
-}
-/**
- * Retrieves the context that belongs to the closest parent component with the specified `key`.
- * Must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-getcontext
- */
-function getContext(key) {
- return get_current_component().$$.context.get(key);
-}
-
-const dirty_components = [];
-const binding_callbacks = [];
-const render_callbacks = [];
-const flush_callbacks = [];
-const resolved_promise = Promise.resolve();
-let update_scheduled = false;
-function schedule_update() {
- if (!update_scheduled) {
- update_scheduled = true;
- resolved_promise.then(flush);
- }
-}
-function add_render_callback(fn) {
- render_callbacks.push(fn);
-}
-// flush() calls callbacks in this order:
-// 1. All beforeUpdate callbacks, in order: parents before children
-// 2. All bind:this callbacks, in reverse order: children before parents.
-// 3. All afterUpdate callbacks, in order: parents before children. EXCEPT
-// for afterUpdates called during the initial onMount, which are called in
-// reverse order: children before parents.
-// Since callbacks might update component values, which could trigger another
-// call to flush(), the following steps guard against this:
-// 1. During beforeUpdate, any updated components will be added to the
-// dirty_components array and will cause a reentrant call to flush(). Because
-// the flush index is kept outside the function, the reentrant call will pick
-// up where the earlier call left off and go through all dirty components. The
-// current_component value is saved and restored so that the reentrant call will
-// not interfere with the "parent" flush() call.
-// 2. bind:this callbacks cannot trigger new flush() calls.
-// 3. During afterUpdate, any updated components will NOT have their afterUpdate
-// callback called a second time; the seen_callbacks set, outside the flush()
-// function, guarantees this behavior.
-const seen_callbacks = new Set();
-let flushidx = 0; // Do *not* move this inside the flush() function
-function flush() {
- const saved_component = current_component;
- do {
- // first, call beforeUpdate functions
- // and update components
- while (flushidx < dirty_components.length) {
- const component = dirty_components[flushidx];
- flushidx++;
- set_current_component(component);
- update(component.$$);
- }
- set_current_component(null);
- dirty_components.length = 0;
- flushidx = 0;
- while (binding_callbacks.length)
- binding_callbacks.pop()();
- // then, once components are updated, call
- // afterUpdate functions. This may cause
- // subsequent updates...
- for (let i = 0; i < render_callbacks.length; i += 1) {
- const callback = render_callbacks[i];
- if (!seen_callbacks.has(callback)) {
- // ...so guard against infinite loops
- seen_callbacks.add(callback);
- callback();
- }
- }
- render_callbacks.length = 0;
- } while (dirty_components.length);
- while (flush_callbacks.length) {
- flush_callbacks.pop()();
- }
- update_scheduled = false;
- seen_callbacks.clear();
- set_current_component(saved_component);
-}
-function update($$) {
- if ($$.fragment !== null) {
- $$.update();
- run_all($$.before_update);
- const dirty = $$.dirty;
- $$.dirty = [-1];
- $$.fragment && $$.fragment.p($$.ctx, dirty);
- $$.after_update.forEach(add_render_callback);
- }
-}
-const outroing = new Set();
-function transition_in(block, local) {
- if (block && block.i) {
- outroing.delete(block);
- block.i(local);
- }
-}
-
-const globals = (typeof window !== 'undefined'
- ? window
- : typeof globalThis !== 'undefined'
- ? globalThis
- : global);
-function mount_component(component, target, anchor, customElement) {
- const { fragment, after_update } = component.$$;
- fragment && fragment.m(target, anchor);
- if (!customElement) {
- // onMount happens before the initial afterUpdate
- add_render_callback(() => {
- const new_on_destroy = component.$$.on_mount.map(run).filter(is_function);
- // if the component was destroyed immediately
- // it will update the `$$.on_destroy` reference to `null`.
- // the destructured on_destroy may still reference to the old array
- if (component.$$.on_destroy) {
- component.$$.on_destroy.push(...new_on_destroy);
- }
- else {
- // Edge case - component was destroyed immediately,
- // most likely as a result of a binding initialising
- run_all(new_on_destroy);
- }
- component.$$.on_mount = [];
- });
- }
- after_update.forEach(add_render_callback);
-}
-function destroy_component(component, detaching) {
- const $$ = component.$$;
- if ($$.fragment !== null) {
- run_all($$.on_destroy);
- $$.fragment && $$.fragment.d(detaching);
- // TODO null out other refs, including component.$$ (but need to
- // preserve final state?)
- $$.on_destroy = $$.fragment = null;
- $$.ctx = [];
- }
-}
-function make_dirty(component, i) {
- if (component.$$.dirty[0] === -1) {
- dirty_components.push(component);
- schedule_update();
- component.$$.dirty.fill(0);
- }
- component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31));
-}
-function init(component, options, instance, create_fragment, not_equal, props, append_styles, dirty = [-1]) {
- const parent_component = current_component;
- set_current_component(component);
- const $$ = component.$$ = {
- fragment: null,
- ctx: [],
- // state
- props,
- update: noop,
- not_equal,
- bound: blank_object(),
- // lifecycle
- on_mount: [],
- on_destroy: [],
- on_disconnect: [],
- before_update: [],
- after_update: [],
- context: new Map(options.context || (parent_component ? parent_component.$$.context : [])),
- // everything else
- callbacks: blank_object(),
- dirty,
- skip_bound: false,
- root: options.target || parent_component.$$.root
- };
- append_styles && append_styles($$.root);
- let ready = false;
- $$.ctx = instance
- ? instance(component, options.props || {}, (i, ret, ...rest) => {
- const value = rest.length ? rest[0] : ret;
- if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {
- if (!$$.skip_bound && $$.bound[i])
- $$.bound[i](value);
- if (ready)
- make_dirty(component, i);
- }
- return ret;
- })
- : [];
- $$.update();
- ready = true;
- run_all($$.before_update);
- // `false` as a special case of no DOM component
- $$.fragment = create_fragment ? create_fragment($$.ctx) : false;
- if (options.target) {
- if (options.hydrate) {
- const nodes = children(options.target);
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.l(nodes);
- nodes.forEach(detach);
- }
- else {
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.c();
- }
- if (options.intro)
- transition_in(component.$$.fragment);
- mount_component(component, options.target, options.anchor, options.customElement);
- flush();
- }
- set_current_component(parent_component);
-}
-let SvelteElement;
-if (typeof HTMLElement === 'function') {
- SvelteElement = class extends HTMLElement {
- constructor() {
- super();
- this.attachShadow({ mode: 'open' });
- }
- connectedCallback() {
- const { on_mount } = this.$$;
- this.$$.on_disconnect = on_mount.map(run).filter(is_function);
- // @ts-ignore todo: improve typings
- for (const key in this.$$.slotted) {
- // @ts-ignore todo: improve typings
- this.appendChild(this.$$.slotted[key]);
- }
- }
- attributeChangedCallback(attr, _oldValue, newValue) {
- this[attr] = newValue;
- }
- disconnectedCallback() {
- run_all(this.$$.on_disconnect);
- }
- $destroy() {
- destroy_component(this, 1);
- this.$destroy = noop;
- }
- $on(type, callback) {
- // TODO should this delegate to addEventListener?
- if (!is_function(callback)) {
- return noop;
- }
- const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));
- callbacks.push(callback);
- return () => {
- const index = callbacks.indexOf(callback);
- if (index !== -1)
- callbacks.splice(index, 1);
- };
- }
- $set($$props) {
- if (this.$$set && !is_empty($$props)) {
- this.$$.skip_bound = true;
- this.$$set($$props);
- this.$$.skip_bound = false;
- }
- }
- };
-}
-
-function dispatch_dev(type, detail) {
- document.dispatchEvent(custom_event(type, Object.assign({ version: '3.52.0' }, detail), { bubbles: true }));
-}
-function append_dev(target, node) {
- dispatch_dev('SvelteDOMInsert', { target, node });
- append(target, node);
-}
-function insert_dev(target, node, anchor) {
- dispatch_dev('SvelteDOMInsert', { target, node, anchor });
- insert(target, node, anchor);
-}
-function detach_dev(node) {
- dispatch_dev('SvelteDOMRemove', { node });
- detach(node);
-}
-function listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) {
- const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : [];
- if (has_prevent_default)
- modifiers.push('preventDefault');
- if (has_stop_propagation)
- modifiers.push('stopPropagation');
- dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers });
- const dispose = listen(node, event, handler, options);
- return () => {
- dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers });
- dispose();
- };
-}
-function attr_dev(node, attribute, value) {
- attr(node, attribute, value);
- if (value == null)
- dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute });
- else
- dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value });
-}
-function prop_dev(node, property, value) {
- node[property] = value;
- dispatch_dev('SvelteDOMSetProperty', { node, property, value });
-}
-function set_data_dev(text, data) {
- data = '' + data;
- if (text.wholeText === data)
- return;
- dispatch_dev('SvelteDOMSetData', { node: text, data });
- text.data = data;
-}
-function validate_each_argument(arg) {
- if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) {
- let msg = '{#each} only iterates over array-like objects.';
- if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) {
- msg += ' You can use a spread to convert this iterable into an array.';
- }
- throw new Error(msg);
- }
-}
-function validate_slots(name, slot, keys) {
- for (const slot_key of Object.keys(slot)) {
- if (!~keys.indexOf(slot_key)) {
- console.warn(`<${name}> received an unexpected slot "${slot_key}".`);
- }
- }
-}
-
-export { flush as A, globals as B, binding_callbacks as C, set_style as D, getContext as E, setContext as F, svg_element as G, is_function as H, HtmlTag as I, SvelteElement as S, attribute_to_object as a, insert_dev as b, validate_store as c, dispatch_dev as d, component_subscribe as e, empty as f, detach_dev as g, validate_each_argument as h, init as i, element as j, space as k, add_location as l, attr_dev as m, noop as n, onMount as o, src_url_equal as p, set_custom_element_data as q, append_dev as r, safe_not_equal as s, text as t, set_data_dev as u, validate_slots as v, destroy_each as w, listen_dev as x, run_all as y, prop_dev as z };
diff --git a/Server/public/js/components/index-32810706.js b/Server/public/js/components/index-32810706.js
deleted file mode 100644
index 089572d..0000000
--- a/Server/public/js/components/index-32810706.js
+++ /dev/null
@@ -1,53 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-import { n as noop, s as safe_not_equal } from './index-c56a6d4d.js';
-
-const subscriber_queue = [];
-/**
- * Create a `Writable` store that allows both updating and reading by subscription.
- * @param {*=}value initial value
- * @param {StartStopNotifier=}start start and stop notifications for subscriptions
- */
-function writable(value, start = noop) {
- let stop;
- const subscribers = new Set();
- function set(new_value) {
- if (safe_not_equal(value, new_value)) {
- value = new_value;
- if (stop) { // store is ready
- const run_queue = !subscriber_queue.length;
- for (const subscriber of subscribers) {
- subscriber[1]();
- subscriber_queue.push(subscriber, value);
- }
- if (run_queue) {
- for (let i = 0; i < subscriber_queue.length; i += 2) {
- subscriber_queue[i][0](subscriber_queue[i + 1]);
- }
- subscriber_queue.length = 0;
- }
- }
- }
- }
- function update(fn) {
- set(fn(value));
- }
- function subscribe(run, invalidate = noop) {
- const subscriber = [run, invalidate];
- subscribers.add(subscriber);
- if (subscribers.size === 1) {
- stop = start(set) || noop;
- }
- run(value);
- return () => {
- subscribers.delete(subscriber);
- if (subscribers.size === 0) {
- stop();
- stop = null;
- }
- };
- }
- return { set, update, subscribe };
-}
-
-export { writable as w };
diff --git a/Server/public/js/components/index-3b678a7c.js b/Server/public/js/components/index-3b678a7c.js
deleted file mode 100644
index 950606a..0000000
--- a/Server/public/js/components/index-3b678a7c.js
+++ /dev/null
@@ -1,494 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-function noop() { }
-function add_location(element, file, line, column, char) {
- element.__svelte_meta = {
- loc: { file, line, column, char }
- };
-}
-function run(fn) {
- return fn();
-}
-function blank_object() {
- return Object.create(null);
-}
-function run_all(fns) {
- fns.forEach(run);
-}
-function is_function(thing) {
- return typeof thing === 'function';
-}
-function safe_not_equal(a, b) {
- return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');
-}
-let src_url_equal_anchor;
-function src_url_equal(element_src, url) {
- if (!src_url_equal_anchor) {
- src_url_equal_anchor = document.createElement('a');
- }
- src_url_equal_anchor.href = url;
- return element_src === src_url_equal_anchor.href;
-}
-function is_empty(obj) {
- return Object.keys(obj).length === 0;
-}
-function append(target, node) {
- target.appendChild(node);
-}
-function insert(target, node, anchor) {
- target.insertBefore(node, anchor || null);
-}
-function detach(node) {
- node.parentNode.removeChild(node);
-}
-function destroy_each(iterations, detaching) {
- for (let i = 0; i < iterations.length; i += 1) {
- if (iterations[i])
- iterations[i].d(detaching);
- }
-}
-function element(name) {
- return document.createElement(name);
-}
-function svg_element(name) {
- return document.createElementNS('http://www.w3.org/2000/svg', name);
-}
-function text(data) {
- return document.createTextNode(data);
-}
-function space() {
- return text(' ');
-}
-function empty() {
- return text('');
-}
-function listen(node, event, handler, options) {
- node.addEventListener(event, handler, options);
- return () => node.removeEventListener(event, handler, options);
-}
-function attr(node, attribute, value) {
- if (value == null)
- node.removeAttribute(attribute);
- else if (node.getAttribute(attribute) !== value)
- node.setAttribute(attribute, value);
-}
-function set_custom_element_data(node, prop, value) {
- if (prop in node) {
- node[prop] = typeof node[prop] === 'boolean' && value === '' ? true : value;
- }
- else {
- attr(node, prop, value);
- }
-}
-function children(element) {
- return Array.from(element.childNodes);
-}
-function set_style(node, key, value, important) {
- if (value === null) {
- node.style.removeProperty(key);
- }
- else {
- node.style.setProperty(key, value, important ? 'important' : '');
- }
-}
-function custom_event(type, detail, { bubbles = false, cancelable = false } = {}) {
- const e = document.createEvent('CustomEvent');
- e.initCustomEvent(type, bubbles, cancelable, detail);
- return e;
-}
-class HtmlTag {
- constructor(is_svg = false) {
- this.is_svg = false;
- this.is_svg = is_svg;
- this.e = this.n = null;
- }
- c(html) {
- this.h(html);
- }
- m(html, target, anchor = null) {
- if (!this.e) {
- if (this.is_svg)
- this.e = svg_element(target.nodeName);
- else
- this.e = element(target.nodeName);
- this.t = target;
- this.c(html);
- }
- this.i(anchor);
- }
- h(html) {
- this.e.innerHTML = html;
- this.n = Array.from(this.e.childNodes);
- }
- i(anchor) {
- for (let i = 0; i < this.n.length; i += 1) {
- insert(this.t, this.n[i], anchor);
- }
- }
- p(html) {
- this.d();
- this.h(html);
- this.i(this.a);
- }
- d() {
- this.n.forEach(detach);
- }
-}
-function attribute_to_object(attributes) {
- const result = {};
- for (const attribute of attributes) {
- result[attribute.name] = attribute.value;
- }
- return result;
-}
-
-let current_component;
-function set_current_component(component) {
- current_component = component;
-}
-function get_current_component() {
- if (!current_component)
- throw new Error('Function called outside component initialization');
- return current_component;
-}
-/**
- * The `onMount` function schedules a callback to run as soon as the component has been mounted to the DOM.
- * It must be called during the component's initialisation (but doesn't need to live *inside* the component;
- * it can be called from an external module).
- *
- * `onMount` does not run inside a [server-side component](/docs#run-time-server-side-component-api).
- *
- * https://svelte.dev/docs#run-time-svelte-onmount
- */
-function onMount(fn) {
- get_current_component().$$.on_mount.push(fn);
-}
-/**
- * Associates an arbitrary `context` object with the current component and the specified `key`
- * and returns that object. The context is then available to children of the component
- * (including slotted content) with `getContext`.
- *
- * Like lifecycle functions, this must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-setcontext
- */
-function setContext(key, context) {
- get_current_component().$$.context.set(key, context);
- return context;
-}
-/**
- * Retrieves the context that belongs to the closest parent component with the specified `key`.
- * Must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-getcontext
- */
-function getContext(key) {
- return get_current_component().$$.context.get(key);
-}
-
-const dirty_components = [];
-const binding_callbacks = [];
-const render_callbacks = [];
-const flush_callbacks = [];
-const resolved_promise = Promise.resolve();
-let update_scheduled = false;
-function schedule_update() {
- if (!update_scheduled) {
- update_scheduled = true;
- resolved_promise.then(flush);
- }
-}
-function add_render_callback(fn) {
- render_callbacks.push(fn);
-}
-// flush() calls callbacks in this order:
-// 1. All beforeUpdate callbacks, in order: parents before children
-// 2. All bind:this callbacks, in reverse order: children before parents.
-// 3. All afterUpdate callbacks, in order: parents before children. EXCEPT
-// for afterUpdates called during the initial onMount, which are called in
-// reverse order: children before parents.
-// Since callbacks might update component values, which could trigger another
-// call to flush(), the following steps guard against this:
-// 1. During beforeUpdate, any updated components will be added to the
-// dirty_components array and will cause a reentrant call to flush(). Because
-// the flush index is kept outside the function, the reentrant call will pick
-// up where the earlier call left off and go through all dirty components. The
-// current_component value is saved and restored so that the reentrant call will
-// not interfere with the "parent" flush() call.
-// 2. bind:this callbacks cannot trigger new flush() calls.
-// 3. During afterUpdate, any updated components will NOT have their afterUpdate
-// callback called a second time; the seen_callbacks set, outside the flush()
-// function, guarantees this behavior.
-const seen_callbacks = new Set();
-let flushidx = 0; // Do *not* move this inside the flush() function
-function flush() {
- const saved_component = current_component;
- do {
- // first, call beforeUpdate functions
- // and update components
- while (flushidx < dirty_components.length) {
- const component = dirty_components[flushidx];
- flushidx++;
- set_current_component(component);
- update(component.$$);
- }
- set_current_component(null);
- dirty_components.length = 0;
- flushidx = 0;
- while (binding_callbacks.length)
- binding_callbacks.pop()();
- // then, once components are updated, call
- // afterUpdate functions. This may cause
- // subsequent updates...
- for (let i = 0; i < render_callbacks.length; i += 1) {
- const callback = render_callbacks[i];
- if (!seen_callbacks.has(callback)) {
- // ...so guard against infinite loops
- seen_callbacks.add(callback);
- callback();
- }
- }
- render_callbacks.length = 0;
- } while (dirty_components.length);
- while (flush_callbacks.length) {
- flush_callbacks.pop()();
- }
- update_scheduled = false;
- seen_callbacks.clear();
- set_current_component(saved_component);
-}
-function update($$) {
- if ($$.fragment !== null) {
- $$.update();
- run_all($$.before_update);
- const dirty = $$.dirty;
- $$.dirty = [-1];
- $$.fragment && $$.fragment.p($$.ctx, dirty);
- $$.after_update.forEach(add_render_callback);
- }
-}
-const outroing = new Set();
-function transition_in(block, local) {
- if (block && block.i) {
- outroing.delete(block);
- block.i(local);
- }
-}
-
-const globals = (typeof window !== 'undefined'
- ? window
- : typeof globalThis !== 'undefined'
- ? globalThis
- : global);
-function mount_component(component, target, anchor, customElement) {
- const { fragment, after_update } = component.$$;
- fragment && fragment.m(target, anchor);
- if (!customElement) {
- // onMount happens before the initial afterUpdate
- add_render_callback(() => {
- const new_on_destroy = component.$$.on_mount.map(run).filter(is_function);
- // if the component was destroyed immediately
- // it will update the `$$.on_destroy` reference to `null`.
- // the destructured on_destroy may still reference to the old array
- if (component.$$.on_destroy) {
- component.$$.on_destroy.push(...new_on_destroy);
- }
- else {
- // Edge case - component was destroyed immediately,
- // most likely as a result of a binding initialising
- run_all(new_on_destroy);
- }
- component.$$.on_mount = [];
- });
- }
- after_update.forEach(add_render_callback);
-}
-function destroy_component(component, detaching) {
- const $$ = component.$$;
- if ($$.fragment !== null) {
- run_all($$.on_destroy);
- $$.fragment && $$.fragment.d(detaching);
- // TODO null out other refs, including component.$$ (but need to
- // preserve final state?)
- $$.on_destroy = $$.fragment = null;
- $$.ctx = [];
- }
-}
-function make_dirty(component, i) {
- if (component.$$.dirty[0] === -1) {
- dirty_components.push(component);
- schedule_update();
- component.$$.dirty.fill(0);
- }
- component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31));
-}
-function init(component, options, instance, create_fragment, not_equal, props, append_styles, dirty = [-1]) {
- const parent_component = current_component;
- set_current_component(component);
- const $$ = component.$$ = {
- fragment: null,
- ctx: [],
- // state
- props,
- update: noop,
- not_equal,
- bound: blank_object(),
- // lifecycle
- on_mount: [],
- on_destroy: [],
- on_disconnect: [],
- before_update: [],
- after_update: [],
- context: new Map(options.context || (parent_component ? parent_component.$$.context : [])),
- // everything else
- callbacks: blank_object(),
- dirty,
- skip_bound: false,
- root: options.target || parent_component.$$.root
- };
- append_styles && append_styles($$.root);
- let ready = false;
- $$.ctx = instance
- ? instance(component, options.props || {}, (i, ret, ...rest) => {
- const value = rest.length ? rest[0] : ret;
- if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {
- if (!$$.skip_bound && $$.bound[i])
- $$.bound[i](value);
- if (ready)
- make_dirty(component, i);
- }
- return ret;
- })
- : [];
- $$.update();
- ready = true;
- run_all($$.before_update);
- // `false` as a special case of no DOM component
- $$.fragment = create_fragment ? create_fragment($$.ctx) : false;
- if (options.target) {
- if (options.hydrate) {
- const nodes = children(options.target);
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.l(nodes);
- nodes.forEach(detach);
- }
- else {
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.c();
- }
- if (options.intro)
- transition_in(component.$$.fragment);
- mount_component(component, options.target, options.anchor, options.customElement);
- flush();
- }
- set_current_component(parent_component);
-}
-let SvelteElement;
-if (typeof HTMLElement === 'function') {
- SvelteElement = class extends HTMLElement {
- constructor() {
- super();
- this.attachShadow({ mode: 'open' });
- }
- connectedCallback() {
- const { on_mount } = this.$$;
- this.$$.on_disconnect = on_mount.map(run).filter(is_function);
- // @ts-ignore todo: improve typings
- for (const key in this.$$.slotted) {
- // @ts-ignore todo: improve typings
- this.appendChild(this.$$.slotted[key]);
- }
- }
- attributeChangedCallback(attr, _oldValue, newValue) {
- this[attr] = newValue;
- }
- disconnectedCallback() {
- run_all(this.$$.on_disconnect);
- }
- $destroy() {
- destroy_component(this, 1);
- this.$destroy = noop;
- }
- $on(type, callback) {
- // TODO should this delegate to addEventListener?
- if (!is_function(callback)) {
- return noop;
- }
- const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));
- callbacks.push(callback);
- return () => {
- const index = callbacks.indexOf(callback);
- if (index !== -1)
- callbacks.splice(index, 1);
- };
- }
- $set($$props) {
- if (this.$$set && !is_empty($$props)) {
- this.$$.skip_bound = true;
- this.$$set($$props);
- this.$$.skip_bound = false;
- }
- }
- };
-}
-
-function dispatch_dev(type, detail) {
- document.dispatchEvent(custom_event(type, Object.assign({ version: '3.52.0' }, detail), { bubbles: true }));
-}
-function append_dev(target, node) {
- dispatch_dev('SvelteDOMInsert', { target, node });
- append(target, node);
-}
-function insert_dev(target, node, anchor) {
- dispatch_dev('SvelteDOMInsert', { target, node, anchor });
- insert(target, node, anchor);
-}
-function detach_dev(node) {
- dispatch_dev('SvelteDOMRemove', { node });
- detach(node);
-}
-function listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) {
- const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : [];
- if (has_prevent_default)
- modifiers.push('preventDefault');
- if (has_stop_propagation)
- modifiers.push('stopPropagation');
- dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers });
- const dispose = listen(node, event, handler, options);
- return () => {
- dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers });
- dispose();
- };
-}
-function attr_dev(node, attribute, value) {
- attr(node, attribute, value);
- if (value == null)
- dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute });
- else
- dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value });
-}
-function set_data_dev(text, data) {
- data = '' + data;
- if (text.wholeText === data)
- return;
- dispatch_dev('SvelteDOMSetData', { node: text, data });
- text.data = data;
-}
-function validate_each_argument(arg) {
- if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) {
- let msg = '{#each} only iterates over array-like objects.';
- if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) {
- msg += ' You can use a spread to convert this iterable into an array.';
- }
- throw new Error(msg);
- }
-}
-function validate_slots(name, slot, keys) {
- for (const slot_key of Object.keys(slot)) {
- if (!~keys.indexOf(slot_key)) {
- console.warn(`<${name}> received an unexpected slot "${slot_key}".`);
- }
- }
-}
-
-export { setContext as A, run_all as B, svg_element as C, empty as D, is_function as E, HtmlTag as H, SvelteElement as S, attribute_to_object as a, insert_dev as b, validate_slots as c, dispatch_dev as d, element as e, space as f, add_location as g, attr_dev as h, init as i, src_url_equal as j, append_dev as k, detach_dev as l, destroy_each as m, noop as n, onMount as o, set_custom_element_data as p, flush as q, globals as r, safe_not_equal as s, text as t, binding_callbacks as u, validate_each_argument as v, set_style as w, listen_dev as x, set_data_dev as y, getContext as z };
diff --git a/Server/public/js/components/index-3db98739.js b/Server/public/js/components/index-3db98739.js
deleted file mode 100644
index 8276c16..0000000
--- a/Server/public/js/components/index-3db98739.js
+++ /dev/null
@@ -1 +0,0 @@
-import{n,s as t}from"./index-6e99513e.js";const e=[];function s(s,o=n){let i;const c=new Set;function f(n){if(t(s,n)&&(s=n,i)){const n=!e.length;for(const n of c)n[1](),e.push(n,s);if(n){for(let n=0;n{c.delete(r),0===c.size&&(i(),i=null)}}}}export{s as w};
diff --git a/Server/public/js/components/index-3e97afc8.js b/Server/public/js/components/index-3e97afc8.js
deleted file mode 100644
index 3683804..0000000
--- a/Server/public/js/components/index-3e97afc8.js
+++ /dev/null
@@ -1,494 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-function noop() { }
-function add_location(element, file, line, column, char) {
- element.__svelte_meta = {
- loc: { file, line, column, char }
- };
-}
-function run(fn) {
- return fn();
-}
-function blank_object() {
- return Object.create(null);
-}
-function run_all(fns) {
- fns.forEach(run);
-}
-function is_function(thing) {
- return typeof thing === 'function';
-}
-function safe_not_equal(a, b) {
- return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');
-}
-let src_url_equal_anchor;
-function src_url_equal(element_src, url) {
- if (!src_url_equal_anchor) {
- src_url_equal_anchor = document.createElement('a');
- }
- src_url_equal_anchor.href = url;
- return element_src === src_url_equal_anchor.href;
-}
-function is_empty(obj) {
- return Object.keys(obj).length === 0;
-}
-function append(target, node) {
- target.appendChild(node);
-}
-function insert(target, node, anchor) {
- target.insertBefore(node, anchor || null);
-}
-function detach(node) {
- node.parentNode.removeChild(node);
-}
-function destroy_each(iterations, detaching) {
- for (let i = 0; i < iterations.length; i += 1) {
- if (iterations[i])
- iterations[i].d(detaching);
- }
-}
-function element(name) {
- return document.createElement(name);
-}
-function svg_element(name) {
- return document.createElementNS('http://www.w3.org/2000/svg', name);
-}
-function text(data) {
- return document.createTextNode(data);
-}
-function space() {
- return text(' ');
-}
-function empty() {
- return text('');
-}
-function listen(node, event, handler, options) {
- node.addEventListener(event, handler, options);
- return () => node.removeEventListener(event, handler, options);
-}
-function attr(node, attribute, value) {
- if (value == null)
- node.removeAttribute(attribute);
- else if (node.getAttribute(attribute) !== value)
- node.setAttribute(attribute, value);
-}
-function set_custom_element_data(node, prop, value) {
- if (prop in node) {
- node[prop] = typeof node[prop] === 'boolean' && value === '' ? true : value;
- }
- else {
- attr(node, prop, value);
- }
-}
-function children(element) {
- return Array.from(element.childNodes);
-}
-function set_style(node, key, value, important) {
- if (value === null) {
- node.style.removeProperty(key);
- }
- else {
- node.style.setProperty(key, value, important ? 'important' : '');
- }
-}
-function custom_event(type, detail, { bubbles = false, cancelable = false } = {}) {
- const e = document.createEvent('CustomEvent');
- e.initCustomEvent(type, bubbles, cancelable, detail);
- return e;
-}
-class HtmlTag {
- constructor(is_svg = false) {
- this.is_svg = false;
- this.is_svg = is_svg;
- this.e = this.n = null;
- }
- c(html) {
- this.h(html);
- }
- m(html, target, anchor = null) {
- if (!this.e) {
- if (this.is_svg)
- this.e = svg_element(target.nodeName);
- else
- this.e = element(target.nodeName);
- this.t = target;
- this.c(html);
- }
- this.i(anchor);
- }
- h(html) {
- this.e.innerHTML = html;
- this.n = Array.from(this.e.childNodes);
- }
- i(anchor) {
- for (let i = 0; i < this.n.length; i += 1) {
- insert(this.t, this.n[i], anchor);
- }
- }
- p(html) {
- this.d();
- this.h(html);
- this.i(this.a);
- }
- d() {
- this.n.forEach(detach);
- }
-}
-function attribute_to_object(attributes) {
- const result = {};
- for (const attribute of attributes) {
- result[attribute.name] = attribute.value;
- }
- return result;
-}
-
-let current_component;
-function set_current_component(component) {
- current_component = component;
-}
-function get_current_component() {
- if (!current_component)
- throw new Error('Function called outside component initialization');
- return current_component;
-}
-/**
- * The `onMount` function schedules a callback to run as soon as the component has been mounted to the DOM.
- * It must be called during the component's initialisation (but doesn't need to live *inside* the component;
- * it can be called from an external module).
- *
- * `onMount` does not run inside a [server-side component](/docs#run-time-server-side-component-api).
- *
- * https://svelte.dev/docs#run-time-svelte-onmount
- */
-function onMount(fn) {
- get_current_component().$$.on_mount.push(fn);
-}
-/**
- * Associates an arbitrary `context` object with the current component and the specified `key`
- * and returns that object. The context is then available to children of the component
- * (including slotted content) with `getContext`.
- *
- * Like lifecycle functions, this must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-setcontext
- */
-function setContext(key, context) {
- get_current_component().$$.context.set(key, context);
- return context;
-}
-/**
- * Retrieves the context that belongs to the closest parent component with the specified `key`.
- * Must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-getcontext
- */
-function getContext(key) {
- return get_current_component().$$.context.get(key);
-}
-
-const dirty_components = [];
-const binding_callbacks = [];
-const render_callbacks = [];
-const flush_callbacks = [];
-const resolved_promise = Promise.resolve();
-let update_scheduled = false;
-function schedule_update() {
- if (!update_scheduled) {
- update_scheduled = true;
- resolved_promise.then(flush);
- }
-}
-function add_render_callback(fn) {
- render_callbacks.push(fn);
-}
-// flush() calls callbacks in this order:
-// 1. All beforeUpdate callbacks, in order: parents before children
-// 2. All bind:this callbacks, in reverse order: children before parents.
-// 3. All afterUpdate callbacks, in order: parents before children. EXCEPT
-// for afterUpdates called during the initial onMount, which are called in
-// reverse order: children before parents.
-// Since callbacks might update component values, which could trigger another
-// call to flush(), the following steps guard against this:
-// 1. During beforeUpdate, any updated components will be added to the
-// dirty_components array and will cause a reentrant call to flush(). Because
-// the flush index is kept outside the function, the reentrant call will pick
-// up where the earlier call left off and go through all dirty components. The
-// current_component value is saved and restored so that the reentrant call will
-// not interfere with the "parent" flush() call.
-// 2. bind:this callbacks cannot trigger new flush() calls.
-// 3. During afterUpdate, any updated components will NOT have their afterUpdate
-// callback called a second time; the seen_callbacks set, outside the flush()
-// function, guarantees this behavior.
-const seen_callbacks = new Set();
-let flushidx = 0; // Do *not* move this inside the flush() function
-function flush() {
- const saved_component = current_component;
- do {
- // first, call beforeUpdate functions
- // and update components
- while (flushidx < dirty_components.length) {
- const component = dirty_components[flushidx];
- flushidx++;
- set_current_component(component);
- update(component.$$);
- }
- set_current_component(null);
- dirty_components.length = 0;
- flushidx = 0;
- while (binding_callbacks.length)
- binding_callbacks.pop()();
- // then, once components are updated, call
- // afterUpdate functions. This may cause
- // subsequent updates...
- for (let i = 0; i < render_callbacks.length; i += 1) {
- const callback = render_callbacks[i];
- if (!seen_callbacks.has(callback)) {
- // ...so guard against infinite loops
- seen_callbacks.add(callback);
- callback();
- }
- }
- render_callbacks.length = 0;
- } while (dirty_components.length);
- while (flush_callbacks.length) {
- flush_callbacks.pop()();
- }
- update_scheduled = false;
- seen_callbacks.clear();
- set_current_component(saved_component);
-}
-function update($$) {
- if ($$.fragment !== null) {
- $$.update();
- run_all($$.before_update);
- const dirty = $$.dirty;
- $$.dirty = [-1];
- $$.fragment && $$.fragment.p($$.ctx, dirty);
- $$.after_update.forEach(add_render_callback);
- }
-}
-const outroing = new Set();
-function transition_in(block, local) {
- if (block && block.i) {
- outroing.delete(block);
- block.i(local);
- }
-}
-
-const globals = (typeof window !== 'undefined'
- ? window
- : typeof globalThis !== 'undefined'
- ? globalThis
- : global);
-function mount_component(component, target, anchor, customElement) {
- const { fragment, after_update } = component.$$;
- fragment && fragment.m(target, anchor);
- if (!customElement) {
- // onMount happens before the initial afterUpdate
- add_render_callback(() => {
- const new_on_destroy = component.$$.on_mount.map(run).filter(is_function);
- // if the component was destroyed immediately
- // it will update the `$$.on_destroy` reference to `null`.
- // the destructured on_destroy may still reference to the old array
- if (component.$$.on_destroy) {
- component.$$.on_destroy.push(...new_on_destroy);
- }
- else {
- // Edge case - component was destroyed immediately,
- // most likely as a result of a binding initialising
- run_all(new_on_destroy);
- }
- component.$$.on_mount = [];
- });
- }
- after_update.forEach(add_render_callback);
-}
-function destroy_component(component, detaching) {
- const $$ = component.$$;
- if ($$.fragment !== null) {
- run_all($$.on_destroy);
- $$.fragment && $$.fragment.d(detaching);
- // TODO null out other refs, including component.$$ (but need to
- // preserve final state?)
- $$.on_destroy = $$.fragment = null;
- $$.ctx = [];
- }
-}
-function make_dirty(component, i) {
- if (component.$$.dirty[0] === -1) {
- dirty_components.push(component);
- schedule_update();
- component.$$.dirty.fill(0);
- }
- component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31));
-}
-function init(component, options, instance, create_fragment, not_equal, props, append_styles, dirty = [-1]) {
- const parent_component = current_component;
- set_current_component(component);
- const $$ = component.$$ = {
- fragment: null,
- ctx: [],
- // state
- props,
- update: noop,
- not_equal,
- bound: blank_object(),
- // lifecycle
- on_mount: [],
- on_destroy: [],
- on_disconnect: [],
- before_update: [],
- after_update: [],
- context: new Map(options.context || (parent_component ? parent_component.$$.context : [])),
- // everything else
- callbacks: blank_object(),
- dirty,
- skip_bound: false,
- root: options.target || parent_component.$$.root
- };
- append_styles && append_styles($$.root);
- let ready = false;
- $$.ctx = instance
- ? instance(component, options.props || {}, (i, ret, ...rest) => {
- const value = rest.length ? rest[0] : ret;
- if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {
- if (!$$.skip_bound && $$.bound[i])
- $$.bound[i](value);
- if (ready)
- make_dirty(component, i);
- }
- return ret;
- })
- : [];
- $$.update();
- ready = true;
- run_all($$.before_update);
- // `false` as a special case of no DOM component
- $$.fragment = create_fragment ? create_fragment($$.ctx) : false;
- if (options.target) {
- if (options.hydrate) {
- const nodes = children(options.target);
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.l(nodes);
- nodes.forEach(detach);
- }
- else {
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.c();
- }
- if (options.intro)
- transition_in(component.$$.fragment);
- mount_component(component, options.target, options.anchor, options.customElement);
- flush();
- }
- set_current_component(parent_component);
-}
-let SvelteElement;
-if (typeof HTMLElement === 'function') {
- SvelteElement = class extends HTMLElement {
- constructor() {
- super();
- this.attachShadow({ mode: 'open' });
- }
- connectedCallback() {
- const { on_mount } = this.$$;
- this.$$.on_disconnect = on_mount.map(run).filter(is_function);
- // @ts-ignore todo: improve typings
- for (const key in this.$$.slotted) {
- // @ts-ignore todo: improve typings
- this.appendChild(this.$$.slotted[key]);
- }
- }
- attributeChangedCallback(attr, _oldValue, newValue) {
- this[attr] = newValue;
- }
- disconnectedCallback() {
- run_all(this.$$.on_disconnect);
- }
- $destroy() {
- destroy_component(this, 1);
- this.$destroy = noop;
- }
- $on(type, callback) {
- // TODO should this delegate to addEventListener?
- if (!is_function(callback)) {
- return noop;
- }
- const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));
- callbacks.push(callback);
- return () => {
- const index = callbacks.indexOf(callback);
- if (index !== -1)
- callbacks.splice(index, 1);
- };
- }
- $set($$props) {
- if (this.$$set && !is_empty($$props)) {
- this.$$.skip_bound = true;
- this.$$set($$props);
- this.$$.skip_bound = false;
- }
- }
- };
-}
-
-function dispatch_dev(type, detail) {
- document.dispatchEvent(custom_event(type, Object.assign({ version: '3.52.0' }, detail), { bubbles: true }));
-}
-function append_dev(target, node) {
- dispatch_dev('SvelteDOMInsert', { target, node });
- append(target, node);
-}
-function insert_dev(target, node, anchor) {
- dispatch_dev('SvelteDOMInsert', { target, node, anchor });
- insert(target, node, anchor);
-}
-function detach_dev(node) {
- dispatch_dev('SvelteDOMRemove', { node });
- detach(node);
-}
-function listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) {
- const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : [];
- if (has_prevent_default)
- modifiers.push('preventDefault');
- if (has_stop_propagation)
- modifiers.push('stopPropagation');
- dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers });
- const dispose = listen(node, event, handler, options);
- return () => {
- dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers });
- dispose();
- };
-}
-function attr_dev(node, attribute, value) {
- attr(node, attribute, value);
- if (value == null)
- dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute });
- else
- dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value });
-}
-function set_data_dev(text, data) {
- data = '' + data;
- if (text.wholeText === data)
- return;
- dispatch_dev('SvelteDOMSetData', { node: text, data });
- text.data = data;
-}
-function validate_each_argument(arg) {
- if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) {
- let msg = '{#each} only iterates over array-like objects.';
- if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) {
- msg += ' You can use a spread to convert this iterable into an array.';
- }
- throw new Error(msg);
- }
-}
-function validate_slots(name, slot, keys) {
- for (const slot_key of Object.keys(slot)) {
- if (!~keys.indexOf(slot_key)) {
- console.warn(`<${name}> received an unexpected slot "${slot_key}".`);
- }
- }
-}
-
-export { src_url_equal as A, run_all as B, svg_element as C, empty as D, HtmlTag as H, SvelteElement as S, attribute_to_object as a, insert_dev as b, validate_slots as c, dispatch_dev as d, element as e, space as f, add_location as g, set_custom_element_data as h, init as i, attr_dev as j, append_dev as k, detach_dev as l, destroy_each as m, noop as n, onMount as o, flush as p, globals as q, binding_callbacks as r, safe_not_equal as s, text as t, set_style as u, validate_each_argument as v, listen_dev as w, set_data_dev as x, getContext as y, setContext as z };
diff --git a/Server/public/js/components/index-42a25c61.js b/Server/public/js/components/index-42a25c61.js
deleted file mode 100644
index 550d5ea..0000000
--- a/Server/public/js/components/index-42a25c61.js
+++ /dev/null
@@ -1,513 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-function noop() { }
-function add_location(element, file, line, column, char) {
- element.__svelte_meta = {
- loc: { file, line, column, char }
- };
-}
-function run(fn) {
- return fn();
-}
-function blank_object() {
- return Object.create(null);
-}
-function run_all(fns) {
- fns.forEach(run);
-}
-function is_function(thing) {
- return typeof thing === 'function';
-}
-function safe_not_equal(a, b) {
- return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');
-}
-let src_url_equal_anchor;
-function src_url_equal(element_src, url) {
- if (!src_url_equal_anchor) {
- src_url_equal_anchor = document.createElement('a');
- }
- src_url_equal_anchor.href = url;
- return element_src === src_url_equal_anchor.href;
-}
-function is_empty(obj) {
- return Object.keys(obj).length === 0;
-}
-function validate_store(store, name) {
- if (store != null && typeof store.subscribe !== 'function') {
- throw new Error(`'${name}' is not a store with a 'subscribe' method`);
- }
-}
-function subscribe(store, ...callbacks) {
- if (store == null) {
- return noop;
- }
- const unsub = store.subscribe(...callbacks);
- return unsub.unsubscribe ? () => unsub.unsubscribe() : unsub;
-}
-function component_subscribe(component, store, callback) {
- component.$$.on_destroy.push(subscribe(store, callback));
-}
-function append(target, node) {
- target.appendChild(node);
-}
-function insert(target, node, anchor) {
- target.insertBefore(node, anchor || null);
-}
-function detach(node) {
- node.parentNode.removeChild(node);
-}
-function destroy_each(iterations, detaching) {
- for (let i = 0; i < iterations.length; i += 1) {
- if (iterations[i])
- iterations[i].d(detaching);
- }
-}
-function element(name) {
- return document.createElement(name);
-}
-function svg_element(name) {
- return document.createElementNS('http://www.w3.org/2000/svg', name);
-}
-function text(data) {
- return document.createTextNode(data);
-}
-function space() {
- return text(' ');
-}
-function empty() {
- return text('');
-}
-function listen(node, event, handler, options) {
- node.addEventListener(event, handler, options);
- return () => node.removeEventListener(event, handler, options);
-}
-function attr(node, attribute, value) {
- if (value == null)
- node.removeAttribute(attribute);
- else if (node.getAttribute(attribute) !== value)
- node.setAttribute(attribute, value);
-}
-function set_custom_element_data(node, prop, value) {
- if (prop in node) {
- node[prop] = typeof node[prop] === 'boolean' && value === '' ? true : value;
- }
- else {
- attr(node, prop, value);
- }
-}
-function children(element) {
- return Array.from(element.childNodes);
-}
-function set_style(node, key, value, important) {
- if (value === null) {
- node.style.removeProperty(key);
- }
- else {
- node.style.setProperty(key, value, important ? 'important' : '');
- }
-}
-function custom_event(type, detail, { bubbles = false, cancelable = false } = {}) {
- const e = document.createEvent('CustomEvent');
- e.initCustomEvent(type, bubbles, cancelable, detail);
- return e;
-}
-class HtmlTag {
- constructor(is_svg = false) {
- this.is_svg = false;
- this.is_svg = is_svg;
- this.e = this.n = null;
- }
- c(html) {
- this.h(html);
- }
- m(html, target, anchor = null) {
- if (!this.e) {
- if (this.is_svg)
- this.e = svg_element(target.nodeName);
- else
- this.e = element(target.nodeName);
- this.t = target;
- this.c(html);
- }
- this.i(anchor);
- }
- h(html) {
- this.e.innerHTML = html;
- this.n = Array.from(this.e.childNodes);
- }
- i(anchor) {
- for (let i = 0; i < this.n.length; i += 1) {
- insert(this.t, this.n[i], anchor);
- }
- }
- p(html) {
- this.d();
- this.h(html);
- this.i(this.a);
- }
- d() {
- this.n.forEach(detach);
- }
-}
-function attribute_to_object(attributes) {
- const result = {};
- for (const attribute of attributes) {
- result[attribute.name] = attribute.value;
- }
- return result;
-}
-
-let current_component;
-function set_current_component(component) {
- current_component = component;
-}
-function get_current_component() {
- if (!current_component)
- throw new Error('Function called outside component initialization');
- return current_component;
-}
-/**
- * The `onMount` function schedules a callback to run as soon as the component has been mounted to the DOM.
- * It must be called during the component's initialisation (but doesn't need to live *inside* the component;
- * it can be called from an external module).
- *
- * `onMount` does not run inside a [server-side component](/docs#run-time-server-side-component-api).
- *
- * https://svelte.dev/docs#run-time-svelte-onmount
- */
-function onMount(fn) {
- get_current_component().$$.on_mount.push(fn);
-}
-/**
- * Associates an arbitrary `context` object with the current component and the specified `key`
- * and returns that object. The context is then available to children of the component
- * (including slotted content) with `getContext`.
- *
- * Like lifecycle functions, this must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-setcontext
- */
-function setContext(key, context) {
- get_current_component().$$.context.set(key, context);
- return context;
-}
-/**
- * Retrieves the context that belongs to the closest parent component with the specified `key`.
- * Must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-getcontext
- */
-function getContext(key) {
- return get_current_component().$$.context.get(key);
-}
-
-const dirty_components = [];
-const binding_callbacks = [];
-const render_callbacks = [];
-const flush_callbacks = [];
-const resolved_promise = Promise.resolve();
-let update_scheduled = false;
-function schedule_update() {
- if (!update_scheduled) {
- update_scheduled = true;
- resolved_promise.then(flush);
- }
-}
-function add_render_callback(fn) {
- render_callbacks.push(fn);
-}
-// flush() calls callbacks in this order:
-// 1. All beforeUpdate callbacks, in order: parents before children
-// 2. All bind:this callbacks, in reverse order: children before parents.
-// 3. All afterUpdate callbacks, in order: parents before children. EXCEPT
-// for afterUpdates called during the initial onMount, which are called in
-// reverse order: children before parents.
-// Since callbacks might update component values, which could trigger another
-// call to flush(), the following steps guard against this:
-// 1. During beforeUpdate, any updated components will be added to the
-// dirty_components array and will cause a reentrant call to flush(). Because
-// the flush index is kept outside the function, the reentrant call will pick
-// up where the earlier call left off and go through all dirty components. The
-// current_component value is saved and restored so that the reentrant call will
-// not interfere with the "parent" flush() call.
-// 2. bind:this callbacks cannot trigger new flush() calls.
-// 3. During afterUpdate, any updated components will NOT have their afterUpdate
-// callback called a second time; the seen_callbacks set, outside the flush()
-// function, guarantees this behavior.
-const seen_callbacks = new Set();
-let flushidx = 0; // Do *not* move this inside the flush() function
-function flush() {
- const saved_component = current_component;
- do {
- // first, call beforeUpdate functions
- // and update components
- while (flushidx < dirty_components.length) {
- const component = dirty_components[flushidx];
- flushidx++;
- set_current_component(component);
- update(component.$$);
- }
- set_current_component(null);
- dirty_components.length = 0;
- flushidx = 0;
- while (binding_callbacks.length)
- binding_callbacks.pop()();
- // then, once components are updated, call
- // afterUpdate functions. This may cause
- // subsequent updates...
- for (let i = 0; i < render_callbacks.length; i += 1) {
- const callback = render_callbacks[i];
- if (!seen_callbacks.has(callback)) {
- // ...so guard against infinite loops
- seen_callbacks.add(callback);
- callback();
- }
- }
- render_callbacks.length = 0;
- } while (dirty_components.length);
- while (flush_callbacks.length) {
- flush_callbacks.pop()();
- }
- update_scheduled = false;
- seen_callbacks.clear();
- set_current_component(saved_component);
-}
-function update($$) {
- if ($$.fragment !== null) {
- $$.update();
- run_all($$.before_update);
- const dirty = $$.dirty;
- $$.dirty = [-1];
- $$.fragment && $$.fragment.p($$.ctx, dirty);
- $$.after_update.forEach(add_render_callback);
- }
-}
-const outroing = new Set();
-function transition_in(block, local) {
- if (block && block.i) {
- outroing.delete(block);
- block.i(local);
- }
-}
-
-const globals = (typeof window !== 'undefined'
- ? window
- : typeof globalThis !== 'undefined'
- ? globalThis
- : global);
-function mount_component(component, target, anchor, customElement) {
- const { fragment, after_update } = component.$$;
- fragment && fragment.m(target, anchor);
- if (!customElement) {
- // onMount happens before the initial afterUpdate
- add_render_callback(() => {
- const new_on_destroy = component.$$.on_mount.map(run).filter(is_function);
- // if the component was destroyed immediately
- // it will update the `$$.on_destroy` reference to `null`.
- // the destructured on_destroy may still reference to the old array
- if (component.$$.on_destroy) {
- component.$$.on_destroy.push(...new_on_destroy);
- }
- else {
- // Edge case - component was destroyed immediately,
- // most likely as a result of a binding initialising
- run_all(new_on_destroy);
- }
- component.$$.on_mount = [];
- });
- }
- after_update.forEach(add_render_callback);
-}
-function destroy_component(component, detaching) {
- const $$ = component.$$;
- if ($$.fragment !== null) {
- run_all($$.on_destroy);
- $$.fragment && $$.fragment.d(detaching);
- // TODO null out other refs, including component.$$ (but need to
- // preserve final state?)
- $$.on_destroy = $$.fragment = null;
- $$.ctx = [];
- }
-}
-function make_dirty(component, i) {
- if (component.$$.dirty[0] === -1) {
- dirty_components.push(component);
- schedule_update();
- component.$$.dirty.fill(0);
- }
- component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31));
-}
-function init(component, options, instance, create_fragment, not_equal, props, append_styles, dirty = [-1]) {
- const parent_component = current_component;
- set_current_component(component);
- const $$ = component.$$ = {
- fragment: null,
- ctx: [],
- // state
- props,
- update: noop,
- not_equal,
- bound: blank_object(),
- // lifecycle
- on_mount: [],
- on_destroy: [],
- on_disconnect: [],
- before_update: [],
- after_update: [],
- context: new Map(options.context || (parent_component ? parent_component.$$.context : [])),
- // everything else
- callbacks: blank_object(),
- dirty,
- skip_bound: false,
- root: options.target || parent_component.$$.root
- };
- append_styles && append_styles($$.root);
- let ready = false;
- $$.ctx = instance
- ? instance(component, options.props || {}, (i, ret, ...rest) => {
- const value = rest.length ? rest[0] : ret;
- if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {
- if (!$$.skip_bound && $$.bound[i])
- $$.bound[i](value);
- if (ready)
- make_dirty(component, i);
- }
- return ret;
- })
- : [];
- $$.update();
- ready = true;
- run_all($$.before_update);
- // `false` as a special case of no DOM component
- $$.fragment = create_fragment ? create_fragment($$.ctx) : false;
- if (options.target) {
- if (options.hydrate) {
- const nodes = children(options.target);
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.l(nodes);
- nodes.forEach(detach);
- }
- else {
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.c();
- }
- if (options.intro)
- transition_in(component.$$.fragment);
- mount_component(component, options.target, options.anchor, options.customElement);
- flush();
- }
- set_current_component(parent_component);
-}
-let SvelteElement;
-if (typeof HTMLElement === 'function') {
- SvelteElement = class extends HTMLElement {
- constructor() {
- super();
- this.attachShadow({ mode: 'open' });
- }
- connectedCallback() {
- const { on_mount } = this.$$;
- this.$$.on_disconnect = on_mount.map(run).filter(is_function);
- // @ts-ignore todo: improve typings
- for (const key in this.$$.slotted) {
- // @ts-ignore todo: improve typings
- this.appendChild(this.$$.slotted[key]);
- }
- }
- attributeChangedCallback(attr, _oldValue, newValue) {
- this[attr] = newValue;
- }
- disconnectedCallback() {
- run_all(this.$$.on_disconnect);
- }
- $destroy() {
- destroy_component(this, 1);
- this.$destroy = noop;
- }
- $on(type, callback) {
- // TODO should this delegate to addEventListener?
- if (!is_function(callback)) {
- return noop;
- }
- const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));
- callbacks.push(callback);
- return () => {
- const index = callbacks.indexOf(callback);
- if (index !== -1)
- callbacks.splice(index, 1);
- };
- }
- $set($$props) {
- if (this.$$set && !is_empty($$props)) {
- this.$$.skip_bound = true;
- this.$$set($$props);
- this.$$.skip_bound = false;
- }
- }
- };
-}
-
-function dispatch_dev(type, detail) {
- document.dispatchEvent(custom_event(type, Object.assign({ version: '3.52.0' }, detail), { bubbles: true }));
-}
-function append_dev(target, node) {
- dispatch_dev('SvelteDOMInsert', { target, node });
- append(target, node);
-}
-function insert_dev(target, node, anchor) {
- dispatch_dev('SvelteDOMInsert', { target, node, anchor });
- insert(target, node, anchor);
-}
-function detach_dev(node) {
- dispatch_dev('SvelteDOMRemove', { node });
- detach(node);
-}
-function listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) {
- const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : [];
- if (has_prevent_default)
- modifiers.push('preventDefault');
- if (has_stop_propagation)
- modifiers.push('stopPropagation');
- dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers });
- const dispose = listen(node, event, handler, options);
- return () => {
- dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers });
- dispose();
- };
-}
-function attr_dev(node, attribute, value) {
- attr(node, attribute, value);
- if (value == null)
- dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute });
- else
- dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value });
-}
-function prop_dev(node, property, value) {
- node[property] = value;
- dispatch_dev('SvelteDOMSetProperty', { node, property, value });
-}
-function set_data_dev(text, data) {
- data = '' + data;
- if (text.wholeText === data)
- return;
- dispatch_dev('SvelteDOMSetData', { node: text, data });
- text.data = data;
-}
-function validate_each_argument(arg) {
- if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) {
- let msg = '{#each} only iterates over array-like objects.';
- if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) {
- msg += ' You can use a spread to convert this iterable into an array.';
- }
- throw new Error(msg);
- }
-}
-function validate_slots(name, slot, keys) {
- for (const slot_key of Object.keys(slot)) {
- if (!~keys.indexOf(slot_key)) {
- console.warn(`<${name}> received an unexpected slot "${slot_key}".`);
- }
- }
-}
-
-export { prop_dev as A, flush as B, binding_callbacks as C, set_style as D, getContext as E, setContext as F, svg_element as G, is_function as H, HtmlTag as I, SvelteElement as S, attribute_to_object as a, insert_dev as b, validate_store as c, dispatch_dev as d, component_subscribe as e, validate_each_argument as f, globals as g, empty as h, init as i, detach_dev as j, element as k, space as l, add_location as m, noop as n, onMount as o, attr_dev as p, src_url_equal as q, set_custom_element_data as r, safe_not_equal as s, text as t, append_dev as u, validate_slots as v, set_data_dev as w, destroy_each as x, listen_dev as y, run_all as z };
diff --git a/Server/public/js/components/index-4348483d.js b/Server/public/js/components/index-4348483d.js
deleted file mode 100644
index 4215bf2..0000000
--- a/Server/public/js/components/index-4348483d.js
+++ /dev/null
@@ -1 +0,0 @@
-function t(){}function n(t){return t()}function e(){return Object.create(null)}function o(t){t.forEach(n)}function s(t){return"function"==typeof t}function r(t,n){return t!=t?n==n:t!==n||t&&"object"==typeof t||"function"==typeof t}let i,c;function a(t,n){return i||(i=document.createElement("a")),i.href=n,t===i.href}function u(n,e,o){n.$$.on_destroy.push(function(n,...e){if(null==n)return t;const o=n.subscribe(...e);return o.unsubscribe?()=>o.unsubscribe():o}(e,o))}function f(t,n){t.appendChild(n)}function l(t,n,e){t.insertBefore(n,e||null)}function h(t){t.parentNode.removeChild(t)}function d(t,n){for(let e=0;et.removeEventListener(n,e,o)}function y(t,n,e){null==e?t.removeAttribute(n):t.getAttribute(n)!==e&&t.setAttribute(n,e)}function _(t,n,e){n in t?t[n]="boolean"==typeof t[n]&&""===e||e:y(t,n,e)}function x(t,n){n=""+n,t.wholeText!==n&&(t.data=n)}function v(t,n,e,o){null===e?t.style.removeProperty(n):t.style.setProperty(n,e,o?"important":"")}class E{constructor(t=!1){this.is_svg=!1,this.is_svg=t,this.e=this.n=null}c(t){this.h(t)}m(t,n,e=null){var o;this.e||(this.is_svg?this.e=(o=n.nodeName,document.createElementNS("http://www.w3.org/2000/svg",o)):this.e=$(n.nodeName),this.t=n,this.c(t)),this.i(e)}h(t){this.e.innerHTML=t,this.n=Array.from(this.e.childNodes)}i(t){for(let n=0;n{const o=e.length?e[0]:n;return m.ctx&&f(m.ctx[t],m.ctx[t]=o)&&(!m.skip_bound&&m.bound[t]&&m.bound[t](o),g&&D(r,t)),n})):[],m.update(),g=!0,o(m.before_update),m.fragment=!!u&&u(m.ctx),i.target){if(i.hydrate){const t=function(t){return Array.from(t.childNodes)}(i.target);m.fragment&&m.fragment.l(t),t.forEach(h)}else m.fragment&&m.fragment.c();i.intro&&((b=r.$$.fragment)&&b.i&&(F.delete(b),b.i(y))),function(t,e,r,i){const{fragment:c,after_update:a}=t.$$;c&&c.m(e,r),i||O((()=>{const e=t.$$.on_mount.map(n).filter(s);t.$$.on_destroy?t.$$.on_destroy.push(...e):o(e),t.$$.on_mount=[]})),a.forEach(O)}(r,i.target,i.anchor,i.customElement),z()}var b,y;k(p)}let I;"function"==typeof HTMLElement&&(I=class extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"})}connectedCallback(){const{on_mount:t}=this.$$;this.$$.on_disconnect=t.map(n).filter(s);for(const t in this.$$.slotted)this.appendChild(this.$$.slotted[t])}attributeChangedCallback(t,n,e){this[t]=e}disconnectedCallback(){o(this.$$.on_disconnect)}$destroy(){!function(t,n){const e=t.$$;null!==e.fragment&&(o(e.on_destroy),e.fragment&&e.fragment.d(n),e.on_destroy=e.fragment=null,e.ctx=[])}(this,1),this.$destroy=t}$on(n,e){if(!s(e))return t;const o=this.$$.callbacks[n]||(this.$$.callbacks[n]=[]);return o.push(e),()=>{const t=o.indexOf(e);-1!==t&&o.splice(t,1)}}$set(t){var n;this.$$set&&(n=t,0!==Object.keys(n).length)&&(this.$$.skip_bound=!0,this.$$set(t),this.$$.skip_bound=!1)}});export{E as H,I as S,w as a,l as b,u as c,h as d,g as e,$ as f,m as g,y as h,G as i,a as j,_ as k,f as l,x as m,t as n,N as o,d as p,b as q,o as r,r as s,p as t,z as u,v,S as w,A as x,s as y};
diff --git a/Server/public/js/components/index-4664ced0.js b/Server/public/js/components/index-4664ced0.js
deleted file mode 100644
index aec2140..0000000
--- a/Server/public/js/components/index-4664ced0.js
+++ /dev/null
@@ -1,53 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-import { n as noop, s as safe_not_equal } from './index-d19aafba.js';
-
-const subscriber_queue = [];
-/**
- * Create a `Writable` store that allows both updating and reading by subscription.
- * @param {*=}value initial value
- * @param {StartStopNotifier=}start start and stop notifications for subscriptions
- */
-function writable(value, start = noop) {
- let stop;
- const subscribers = new Set();
- function set(new_value) {
- if (safe_not_equal(value, new_value)) {
- value = new_value;
- if (stop) { // store is ready
- const run_queue = !subscriber_queue.length;
- for (const subscriber of subscribers) {
- subscriber[1]();
- subscriber_queue.push(subscriber, value);
- }
- if (run_queue) {
- for (let i = 0; i < subscriber_queue.length; i += 2) {
- subscriber_queue[i][0](subscriber_queue[i + 1]);
- }
- subscriber_queue.length = 0;
- }
- }
- }
- }
- function update(fn) {
- set(fn(value));
- }
- function subscribe(run, invalidate = noop) {
- const subscriber = [run, invalidate];
- subscribers.add(subscriber);
- if (subscribers.size === 1) {
- stop = start(set) || noop;
- }
- run(value);
- return () => {
- subscribers.delete(subscriber);
- if (subscribers.size === 0) {
- stop();
- stop = null;
- }
- };
- }
- return { set, update, subscribe };
-}
-
-export { writable as w };
diff --git a/Server/public/js/components/index-4da4d0ce.js b/Server/public/js/components/index-4da4d0ce.js
deleted file mode 100644
index 0d0f49d..0000000
--- a/Server/public/js/components/index-4da4d0ce.js
+++ /dev/null
@@ -1 +0,0 @@
-import{n,s as t}from"./index-6a7bc1e2.js";const e=[];function s(s,o=n){let c;const i=new Set;function f(n){if(t(s,n)&&(s=n,c)){const n=!e.length;for(const n of i)n[1](),e.push(n,s);if(n){for(let n=0;n{i.delete(r),0===i.size&&(c(),c=null)}}}}export{s as w};
diff --git a/Server/public/js/components/index-4df1625a.js b/Server/public/js/components/index-4df1625a.js
deleted file mode 100644
index ff77a73..0000000
--- a/Server/public/js/components/index-4df1625a.js
+++ /dev/null
@@ -1,494 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-function noop() { }
-function add_location(element, file, line, column, char) {
- element.__svelte_meta = {
- loc: { file, line, column, char }
- };
-}
-function run(fn) {
- return fn();
-}
-function blank_object() {
- return Object.create(null);
-}
-function run_all(fns) {
- fns.forEach(run);
-}
-function is_function(thing) {
- return typeof thing === 'function';
-}
-function safe_not_equal(a, b) {
- return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');
-}
-let src_url_equal_anchor;
-function src_url_equal(element_src, url) {
- if (!src_url_equal_anchor) {
- src_url_equal_anchor = document.createElement('a');
- }
- src_url_equal_anchor.href = url;
- return element_src === src_url_equal_anchor.href;
-}
-function is_empty(obj) {
- return Object.keys(obj).length === 0;
-}
-function append(target, node) {
- target.appendChild(node);
-}
-function insert(target, node, anchor) {
- target.insertBefore(node, anchor || null);
-}
-function detach(node) {
- node.parentNode.removeChild(node);
-}
-function destroy_each(iterations, detaching) {
- for (let i = 0; i < iterations.length; i += 1) {
- if (iterations[i])
- iterations[i].d(detaching);
- }
-}
-function element(name) {
- return document.createElement(name);
-}
-function svg_element(name) {
- return document.createElementNS('http://www.w3.org/2000/svg', name);
-}
-function text(data) {
- return document.createTextNode(data);
-}
-function space() {
- return text(' ');
-}
-function empty() {
- return text('');
-}
-function listen(node, event, handler, options) {
- node.addEventListener(event, handler, options);
- return () => node.removeEventListener(event, handler, options);
-}
-function attr(node, attribute, value) {
- if (value == null)
- node.removeAttribute(attribute);
- else if (node.getAttribute(attribute) !== value)
- node.setAttribute(attribute, value);
-}
-function set_custom_element_data(node, prop, value) {
- if (prop in node) {
- node[prop] = typeof node[prop] === 'boolean' && value === '' ? true : value;
- }
- else {
- attr(node, prop, value);
- }
-}
-function children(element) {
- return Array.from(element.childNodes);
-}
-function set_style(node, key, value, important) {
- if (value === null) {
- node.style.removeProperty(key);
- }
- else {
- node.style.setProperty(key, value, important ? 'important' : '');
- }
-}
-function custom_event(type, detail, { bubbles = false, cancelable = false } = {}) {
- const e = document.createEvent('CustomEvent');
- e.initCustomEvent(type, bubbles, cancelable, detail);
- return e;
-}
-class HtmlTag {
- constructor(is_svg = false) {
- this.is_svg = false;
- this.is_svg = is_svg;
- this.e = this.n = null;
- }
- c(html) {
- this.h(html);
- }
- m(html, target, anchor = null) {
- if (!this.e) {
- if (this.is_svg)
- this.e = svg_element(target.nodeName);
- else
- this.e = element(target.nodeName);
- this.t = target;
- this.c(html);
- }
- this.i(anchor);
- }
- h(html) {
- this.e.innerHTML = html;
- this.n = Array.from(this.e.childNodes);
- }
- i(anchor) {
- for (let i = 0; i < this.n.length; i += 1) {
- insert(this.t, this.n[i], anchor);
- }
- }
- p(html) {
- this.d();
- this.h(html);
- this.i(this.a);
- }
- d() {
- this.n.forEach(detach);
- }
-}
-function attribute_to_object(attributes) {
- const result = {};
- for (const attribute of attributes) {
- result[attribute.name] = attribute.value;
- }
- return result;
-}
-
-let current_component;
-function set_current_component(component) {
- current_component = component;
-}
-function get_current_component() {
- if (!current_component)
- throw new Error('Function called outside component initialization');
- return current_component;
-}
-/**
- * The `onMount` function schedules a callback to run as soon as the component has been mounted to the DOM.
- * It must be called during the component's initialisation (but doesn't need to live *inside* the component;
- * it can be called from an external module).
- *
- * `onMount` does not run inside a [server-side component](/docs#run-time-server-side-component-api).
- *
- * https://svelte.dev/docs#run-time-svelte-onmount
- */
-function onMount(fn) {
- get_current_component().$$.on_mount.push(fn);
-}
-/**
- * Associates an arbitrary `context` object with the current component and the specified `key`
- * and returns that object. The context is then available to children of the component
- * (including slotted content) with `getContext`.
- *
- * Like lifecycle functions, this must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-setcontext
- */
-function setContext(key, context) {
- get_current_component().$$.context.set(key, context);
- return context;
-}
-/**
- * Retrieves the context that belongs to the closest parent component with the specified `key`.
- * Must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-getcontext
- */
-function getContext(key) {
- return get_current_component().$$.context.get(key);
-}
-
-const dirty_components = [];
-const binding_callbacks = [];
-const render_callbacks = [];
-const flush_callbacks = [];
-const resolved_promise = Promise.resolve();
-let update_scheduled = false;
-function schedule_update() {
- if (!update_scheduled) {
- update_scheduled = true;
- resolved_promise.then(flush);
- }
-}
-function add_render_callback(fn) {
- render_callbacks.push(fn);
-}
-// flush() calls callbacks in this order:
-// 1. All beforeUpdate callbacks, in order: parents before children
-// 2. All bind:this callbacks, in reverse order: children before parents.
-// 3. All afterUpdate callbacks, in order: parents before children. EXCEPT
-// for afterUpdates called during the initial onMount, which are called in
-// reverse order: children before parents.
-// Since callbacks might update component values, which could trigger another
-// call to flush(), the following steps guard against this:
-// 1. During beforeUpdate, any updated components will be added to the
-// dirty_components array and will cause a reentrant call to flush(). Because
-// the flush index is kept outside the function, the reentrant call will pick
-// up where the earlier call left off and go through all dirty components. The
-// current_component value is saved and restored so that the reentrant call will
-// not interfere with the "parent" flush() call.
-// 2. bind:this callbacks cannot trigger new flush() calls.
-// 3. During afterUpdate, any updated components will NOT have their afterUpdate
-// callback called a second time; the seen_callbacks set, outside the flush()
-// function, guarantees this behavior.
-const seen_callbacks = new Set();
-let flushidx = 0; // Do *not* move this inside the flush() function
-function flush() {
- const saved_component = current_component;
- do {
- // first, call beforeUpdate functions
- // and update components
- while (flushidx < dirty_components.length) {
- const component = dirty_components[flushidx];
- flushidx++;
- set_current_component(component);
- update(component.$$);
- }
- set_current_component(null);
- dirty_components.length = 0;
- flushidx = 0;
- while (binding_callbacks.length)
- binding_callbacks.pop()();
- // then, once components are updated, call
- // afterUpdate functions. This may cause
- // subsequent updates...
- for (let i = 0; i < render_callbacks.length; i += 1) {
- const callback = render_callbacks[i];
- if (!seen_callbacks.has(callback)) {
- // ...so guard against infinite loops
- seen_callbacks.add(callback);
- callback();
- }
- }
- render_callbacks.length = 0;
- } while (dirty_components.length);
- while (flush_callbacks.length) {
- flush_callbacks.pop()();
- }
- update_scheduled = false;
- seen_callbacks.clear();
- set_current_component(saved_component);
-}
-function update($$) {
- if ($$.fragment !== null) {
- $$.update();
- run_all($$.before_update);
- const dirty = $$.dirty;
- $$.dirty = [-1];
- $$.fragment && $$.fragment.p($$.ctx, dirty);
- $$.after_update.forEach(add_render_callback);
- }
-}
-const outroing = new Set();
-function transition_in(block, local) {
- if (block && block.i) {
- outroing.delete(block);
- block.i(local);
- }
-}
-
-const globals = (typeof window !== 'undefined'
- ? window
- : typeof globalThis !== 'undefined'
- ? globalThis
- : global);
-function mount_component(component, target, anchor, customElement) {
- const { fragment, after_update } = component.$$;
- fragment && fragment.m(target, anchor);
- if (!customElement) {
- // onMount happens before the initial afterUpdate
- add_render_callback(() => {
- const new_on_destroy = component.$$.on_mount.map(run).filter(is_function);
- // if the component was destroyed immediately
- // it will update the `$$.on_destroy` reference to `null`.
- // the destructured on_destroy may still reference to the old array
- if (component.$$.on_destroy) {
- component.$$.on_destroy.push(...new_on_destroy);
- }
- else {
- // Edge case - component was destroyed immediately,
- // most likely as a result of a binding initialising
- run_all(new_on_destroy);
- }
- component.$$.on_mount = [];
- });
- }
- after_update.forEach(add_render_callback);
-}
-function destroy_component(component, detaching) {
- const $$ = component.$$;
- if ($$.fragment !== null) {
- run_all($$.on_destroy);
- $$.fragment && $$.fragment.d(detaching);
- // TODO null out other refs, including component.$$ (but need to
- // preserve final state?)
- $$.on_destroy = $$.fragment = null;
- $$.ctx = [];
- }
-}
-function make_dirty(component, i) {
- if (component.$$.dirty[0] === -1) {
- dirty_components.push(component);
- schedule_update();
- component.$$.dirty.fill(0);
- }
- component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31));
-}
-function init(component, options, instance, create_fragment, not_equal, props, append_styles, dirty = [-1]) {
- const parent_component = current_component;
- set_current_component(component);
- const $$ = component.$$ = {
- fragment: null,
- ctx: [],
- // state
- props,
- update: noop,
- not_equal,
- bound: blank_object(),
- // lifecycle
- on_mount: [],
- on_destroy: [],
- on_disconnect: [],
- before_update: [],
- after_update: [],
- context: new Map(options.context || (parent_component ? parent_component.$$.context : [])),
- // everything else
- callbacks: blank_object(),
- dirty,
- skip_bound: false,
- root: options.target || parent_component.$$.root
- };
- append_styles && append_styles($$.root);
- let ready = false;
- $$.ctx = instance
- ? instance(component, options.props || {}, (i, ret, ...rest) => {
- const value = rest.length ? rest[0] : ret;
- if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {
- if (!$$.skip_bound && $$.bound[i])
- $$.bound[i](value);
- if (ready)
- make_dirty(component, i);
- }
- return ret;
- })
- : [];
- $$.update();
- ready = true;
- run_all($$.before_update);
- // `false` as a special case of no DOM component
- $$.fragment = create_fragment ? create_fragment($$.ctx) : false;
- if (options.target) {
- if (options.hydrate) {
- const nodes = children(options.target);
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.l(nodes);
- nodes.forEach(detach);
- }
- else {
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.c();
- }
- if (options.intro)
- transition_in(component.$$.fragment);
- mount_component(component, options.target, options.anchor, options.customElement);
- flush();
- }
- set_current_component(parent_component);
-}
-let SvelteElement;
-if (typeof HTMLElement === 'function') {
- SvelteElement = class extends HTMLElement {
- constructor() {
- super();
- this.attachShadow({ mode: 'open' });
- }
- connectedCallback() {
- const { on_mount } = this.$$;
- this.$$.on_disconnect = on_mount.map(run).filter(is_function);
- // @ts-ignore todo: improve typings
- for (const key in this.$$.slotted) {
- // @ts-ignore todo: improve typings
- this.appendChild(this.$$.slotted[key]);
- }
- }
- attributeChangedCallback(attr, _oldValue, newValue) {
- this[attr] = newValue;
- }
- disconnectedCallback() {
- run_all(this.$$.on_disconnect);
- }
- $destroy() {
- destroy_component(this, 1);
- this.$destroy = noop;
- }
- $on(type, callback) {
- // TODO should this delegate to addEventListener?
- if (!is_function(callback)) {
- return noop;
- }
- const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));
- callbacks.push(callback);
- return () => {
- const index = callbacks.indexOf(callback);
- if (index !== -1)
- callbacks.splice(index, 1);
- };
- }
- $set($$props) {
- if (this.$$set && !is_empty($$props)) {
- this.$$.skip_bound = true;
- this.$$set($$props);
- this.$$.skip_bound = false;
- }
- }
- };
-}
-
-function dispatch_dev(type, detail) {
- document.dispatchEvent(custom_event(type, Object.assign({ version: '3.52.0' }, detail), { bubbles: true }));
-}
-function append_dev(target, node) {
- dispatch_dev('SvelteDOMInsert', { target, node });
- append(target, node);
-}
-function insert_dev(target, node, anchor) {
- dispatch_dev('SvelteDOMInsert', { target, node, anchor });
- insert(target, node, anchor);
-}
-function detach_dev(node) {
- dispatch_dev('SvelteDOMRemove', { node });
- detach(node);
-}
-function listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) {
- const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : [];
- if (has_prevent_default)
- modifiers.push('preventDefault');
- if (has_stop_propagation)
- modifiers.push('stopPropagation');
- dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers });
- const dispose = listen(node, event, handler, options);
- return () => {
- dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers });
- dispose();
- };
-}
-function attr_dev(node, attribute, value) {
- attr(node, attribute, value);
- if (value == null)
- dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute });
- else
- dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value });
-}
-function set_data_dev(text, data) {
- data = '' + data;
- if (text.wholeText === data)
- return;
- dispatch_dev('SvelteDOMSetData', { node: text, data });
- text.data = data;
-}
-function validate_each_argument(arg) {
- if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) {
- let msg = '{#each} only iterates over array-like objects.';
- if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) {
- msg += ' You can use a spread to convert this iterable into an array.';
- }
- throw new Error(msg);
- }
-}
-function validate_slots(name, slot, keys) {
- for (const slot_key of Object.keys(slot)) {
- if (!~keys.indexOf(slot_key)) {
- console.warn(`<${name}> received an unexpected slot "${slot_key}".`);
- }
- }
-}
-
-export { run_all as A, svg_element as B, set_custom_element_data as C, empty as D, HtmlTag as H, SvelteElement as S, attribute_to_object as a, insert_dev as b, space as c, dispatch_dev as d, element as e, add_location as f, attr_dev as g, append_dev as h, init as i, detach_dev as j, flush as k, validate_each_argument as l, globals as m, noop as n, onMount as o, destroy_each as p, binding_callbacks as q, set_style as r, safe_not_equal as s, text as t, listen_dev as u, validate_slots as v, set_data_dev as w, getContext as x, setContext as y, src_url_equal as z };
diff --git a/Server/public/js/components/index-51dcf822.js b/Server/public/js/components/index-51dcf822.js
deleted file mode 100644
index 4ab67e0..0000000
--- a/Server/public/js/components/index-51dcf822.js
+++ /dev/null
@@ -1,53 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-import { n as noop, s as safe_not_equal } from './index-5cb337ff.js';
-
-const subscriber_queue = [];
-/**
- * Create a `Writable` store that allows both updating and reading by subscription.
- * @param {*=}value initial value
- * @param {StartStopNotifier=}start start and stop notifications for subscriptions
- */
-function writable(value, start = noop) {
- let stop;
- const subscribers = new Set();
- function set(new_value) {
- if (safe_not_equal(value, new_value)) {
- value = new_value;
- if (stop) { // store is ready
- const run_queue = !subscriber_queue.length;
- for (const subscriber of subscribers) {
- subscriber[1]();
- subscriber_queue.push(subscriber, value);
- }
- if (run_queue) {
- for (let i = 0; i < subscriber_queue.length; i += 2) {
- subscriber_queue[i][0](subscriber_queue[i + 1]);
- }
- subscriber_queue.length = 0;
- }
- }
- }
- }
- function update(fn) {
- set(fn(value));
- }
- function subscribe(run, invalidate = noop) {
- const subscriber = [run, invalidate];
- subscribers.add(subscriber);
- if (subscribers.size === 1) {
- stop = start(set) || noop;
- }
- run(value);
- return () => {
- subscribers.delete(subscriber);
- if (subscribers.size === 0) {
- stop();
- stop = null;
- }
- };
- }
- return { set, update, subscribe };
-}
-
-export { writable as w };
diff --git a/Server/public/js/components/index-54dd49e1.js b/Server/public/js/components/index-54dd49e1.js
deleted file mode 100644
index 70a80e3..0000000
--- a/Server/public/js/components/index-54dd49e1.js
+++ /dev/null
@@ -1,513 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-function noop() { }
-function add_location(element, file, line, column, char) {
- element.__svelte_meta = {
- loc: { file, line, column, char }
- };
-}
-function run(fn) {
- return fn();
-}
-function blank_object() {
- return Object.create(null);
-}
-function run_all(fns) {
- fns.forEach(run);
-}
-function is_function(thing) {
- return typeof thing === 'function';
-}
-function safe_not_equal(a, b) {
- return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');
-}
-let src_url_equal_anchor;
-function src_url_equal(element_src, url) {
- if (!src_url_equal_anchor) {
- src_url_equal_anchor = document.createElement('a');
- }
- src_url_equal_anchor.href = url;
- return element_src === src_url_equal_anchor.href;
-}
-function is_empty(obj) {
- return Object.keys(obj).length === 0;
-}
-function validate_store(store, name) {
- if (store != null && typeof store.subscribe !== 'function') {
- throw new Error(`'${name}' is not a store with a 'subscribe' method`);
- }
-}
-function subscribe(store, ...callbacks) {
- if (store == null) {
- return noop;
- }
- const unsub = store.subscribe(...callbacks);
- return unsub.unsubscribe ? () => unsub.unsubscribe() : unsub;
-}
-function component_subscribe(component, store, callback) {
- component.$$.on_destroy.push(subscribe(store, callback));
-}
-function append(target, node) {
- target.appendChild(node);
-}
-function insert(target, node, anchor) {
- target.insertBefore(node, anchor || null);
-}
-function detach(node) {
- node.parentNode.removeChild(node);
-}
-function destroy_each(iterations, detaching) {
- for (let i = 0; i < iterations.length; i += 1) {
- if (iterations[i])
- iterations[i].d(detaching);
- }
-}
-function element(name) {
- return document.createElement(name);
-}
-function svg_element(name) {
- return document.createElementNS('http://www.w3.org/2000/svg', name);
-}
-function text(data) {
- return document.createTextNode(data);
-}
-function space() {
- return text(' ');
-}
-function empty() {
- return text('');
-}
-function listen(node, event, handler, options) {
- node.addEventListener(event, handler, options);
- return () => node.removeEventListener(event, handler, options);
-}
-function attr(node, attribute, value) {
- if (value == null)
- node.removeAttribute(attribute);
- else if (node.getAttribute(attribute) !== value)
- node.setAttribute(attribute, value);
-}
-function set_custom_element_data(node, prop, value) {
- if (prop in node) {
- node[prop] = typeof node[prop] === 'boolean' && value === '' ? true : value;
- }
- else {
- attr(node, prop, value);
- }
-}
-function children(element) {
- return Array.from(element.childNodes);
-}
-function set_style(node, key, value, important) {
- if (value === null) {
- node.style.removeProperty(key);
- }
- else {
- node.style.setProperty(key, value, important ? 'important' : '');
- }
-}
-function custom_event(type, detail, { bubbles = false, cancelable = false } = {}) {
- const e = document.createEvent('CustomEvent');
- e.initCustomEvent(type, bubbles, cancelable, detail);
- return e;
-}
-class HtmlTag {
- constructor(is_svg = false) {
- this.is_svg = false;
- this.is_svg = is_svg;
- this.e = this.n = null;
- }
- c(html) {
- this.h(html);
- }
- m(html, target, anchor = null) {
- if (!this.e) {
- if (this.is_svg)
- this.e = svg_element(target.nodeName);
- else
- this.e = element(target.nodeName);
- this.t = target;
- this.c(html);
- }
- this.i(anchor);
- }
- h(html) {
- this.e.innerHTML = html;
- this.n = Array.from(this.e.childNodes);
- }
- i(anchor) {
- for (let i = 0; i < this.n.length; i += 1) {
- insert(this.t, this.n[i], anchor);
- }
- }
- p(html) {
- this.d();
- this.h(html);
- this.i(this.a);
- }
- d() {
- this.n.forEach(detach);
- }
-}
-function attribute_to_object(attributes) {
- const result = {};
- for (const attribute of attributes) {
- result[attribute.name] = attribute.value;
- }
- return result;
-}
-
-let current_component;
-function set_current_component(component) {
- current_component = component;
-}
-function get_current_component() {
- if (!current_component)
- throw new Error('Function called outside component initialization');
- return current_component;
-}
-/**
- * The `onMount` function schedules a callback to run as soon as the component has been mounted to the DOM.
- * It must be called during the component's initialisation (but doesn't need to live *inside* the component;
- * it can be called from an external module).
- *
- * `onMount` does not run inside a [server-side component](/docs#run-time-server-side-component-api).
- *
- * https://svelte.dev/docs#run-time-svelte-onmount
- */
-function onMount(fn) {
- get_current_component().$$.on_mount.push(fn);
-}
-/**
- * Associates an arbitrary `context` object with the current component and the specified `key`
- * and returns that object. The context is then available to children of the component
- * (including slotted content) with `getContext`.
- *
- * Like lifecycle functions, this must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-setcontext
- */
-function setContext(key, context) {
- get_current_component().$$.context.set(key, context);
- return context;
-}
-/**
- * Retrieves the context that belongs to the closest parent component with the specified `key`.
- * Must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-getcontext
- */
-function getContext(key) {
- return get_current_component().$$.context.get(key);
-}
-
-const dirty_components = [];
-const binding_callbacks = [];
-const render_callbacks = [];
-const flush_callbacks = [];
-const resolved_promise = Promise.resolve();
-let update_scheduled = false;
-function schedule_update() {
- if (!update_scheduled) {
- update_scheduled = true;
- resolved_promise.then(flush);
- }
-}
-function add_render_callback(fn) {
- render_callbacks.push(fn);
-}
-// flush() calls callbacks in this order:
-// 1. All beforeUpdate callbacks, in order: parents before children
-// 2. All bind:this callbacks, in reverse order: children before parents.
-// 3. All afterUpdate callbacks, in order: parents before children. EXCEPT
-// for afterUpdates called during the initial onMount, which are called in
-// reverse order: children before parents.
-// Since callbacks might update component values, which could trigger another
-// call to flush(), the following steps guard against this:
-// 1. During beforeUpdate, any updated components will be added to the
-// dirty_components array and will cause a reentrant call to flush(). Because
-// the flush index is kept outside the function, the reentrant call will pick
-// up where the earlier call left off and go through all dirty components. The
-// current_component value is saved and restored so that the reentrant call will
-// not interfere with the "parent" flush() call.
-// 2. bind:this callbacks cannot trigger new flush() calls.
-// 3. During afterUpdate, any updated components will NOT have their afterUpdate
-// callback called a second time; the seen_callbacks set, outside the flush()
-// function, guarantees this behavior.
-const seen_callbacks = new Set();
-let flushidx = 0; // Do *not* move this inside the flush() function
-function flush() {
- const saved_component = current_component;
- do {
- // first, call beforeUpdate functions
- // and update components
- while (flushidx < dirty_components.length) {
- const component = dirty_components[flushidx];
- flushidx++;
- set_current_component(component);
- update(component.$$);
- }
- set_current_component(null);
- dirty_components.length = 0;
- flushidx = 0;
- while (binding_callbacks.length)
- binding_callbacks.pop()();
- // then, once components are updated, call
- // afterUpdate functions. This may cause
- // subsequent updates...
- for (let i = 0; i < render_callbacks.length; i += 1) {
- const callback = render_callbacks[i];
- if (!seen_callbacks.has(callback)) {
- // ...so guard against infinite loops
- seen_callbacks.add(callback);
- callback();
- }
- }
- render_callbacks.length = 0;
- } while (dirty_components.length);
- while (flush_callbacks.length) {
- flush_callbacks.pop()();
- }
- update_scheduled = false;
- seen_callbacks.clear();
- set_current_component(saved_component);
-}
-function update($$) {
- if ($$.fragment !== null) {
- $$.update();
- run_all($$.before_update);
- const dirty = $$.dirty;
- $$.dirty = [-1];
- $$.fragment && $$.fragment.p($$.ctx, dirty);
- $$.after_update.forEach(add_render_callback);
- }
-}
-const outroing = new Set();
-function transition_in(block, local) {
- if (block && block.i) {
- outroing.delete(block);
- block.i(local);
- }
-}
-
-const globals = (typeof window !== 'undefined'
- ? window
- : typeof globalThis !== 'undefined'
- ? globalThis
- : global);
-function mount_component(component, target, anchor, customElement) {
- const { fragment, after_update } = component.$$;
- fragment && fragment.m(target, anchor);
- if (!customElement) {
- // onMount happens before the initial afterUpdate
- add_render_callback(() => {
- const new_on_destroy = component.$$.on_mount.map(run).filter(is_function);
- // if the component was destroyed immediately
- // it will update the `$$.on_destroy` reference to `null`.
- // the destructured on_destroy may still reference to the old array
- if (component.$$.on_destroy) {
- component.$$.on_destroy.push(...new_on_destroy);
- }
- else {
- // Edge case - component was destroyed immediately,
- // most likely as a result of a binding initialising
- run_all(new_on_destroy);
- }
- component.$$.on_mount = [];
- });
- }
- after_update.forEach(add_render_callback);
-}
-function destroy_component(component, detaching) {
- const $$ = component.$$;
- if ($$.fragment !== null) {
- run_all($$.on_destroy);
- $$.fragment && $$.fragment.d(detaching);
- // TODO null out other refs, including component.$$ (but need to
- // preserve final state?)
- $$.on_destroy = $$.fragment = null;
- $$.ctx = [];
- }
-}
-function make_dirty(component, i) {
- if (component.$$.dirty[0] === -1) {
- dirty_components.push(component);
- schedule_update();
- component.$$.dirty.fill(0);
- }
- component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31));
-}
-function init(component, options, instance, create_fragment, not_equal, props, append_styles, dirty = [-1]) {
- const parent_component = current_component;
- set_current_component(component);
- const $$ = component.$$ = {
- fragment: null,
- ctx: [],
- // state
- props,
- update: noop,
- not_equal,
- bound: blank_object(),
- // lifecycle
- on_mount: [],
- on_destroy: [],
- on_disconnect: [],
- before_update: [],
- after_update: [],
- context: new Map(options.context || (parent_component ? parent_component.$$.context : [])),
- // everything else
- callbacks: blank_object(),
- dirty,
- skip_bound: false,
- root: options.target || parent_component.$$.root
- };
- append_styles && append_styles($$.root);
- let ready = false;
- $$.ctx = instance
- ? instance(component, options.props || {}, (i, ret, ...rest) => {
- const value = rest.length ? rest[0] : ret;
- if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {
- if (!$$.skip_bound && $$.bound[i])
- $$.bound[i](value);
- if (ready)
- make_dirty(component, i);
- }
- return ret;
- })
- : [];
- $$.update();
- ready = true;
- run_all($$.before_update);
- // `false` as a special case of no DOM component
- $$.fragment = create_fragment ? create_fragment($$.ctx) : false;
- if (options.target) {
- if (options.hydrate) {
- const nodes = children(options.target);
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.l(nodes);
- nodes.forEach(detach);
- }
- else {
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.c();
- }
- if (options.intro)
- transition_in(component.$$.fragment);
- mount_component(component, options.target, options.anchor, options.customElement);
- flush();
- }
- set_current_component(parent_component);
-}
-let SvelteElement;
-if (typeof HTMLElement === 'function') {
- SvelteElement = class extends HTMLElement {
- constructor() {
- super();
- this.attachShadow({ mode: 'open' });
- }
- connectedCallback() {
- const { on_mount } = this.$$;
- this.$$.on_disconnect = on_mount.map(run).filter(is_function);
- // @ts-ignore todo: improve typings
- for (const key in this.$$.slotted) {
- // @ts-ignore todo: improve typings
- this.appendChild(this.$$.slotted[key]);
- }
- }
- attributeChangedCallback(attr, _oldValue, newValue) {
- this[attr] = newValue;
- }
- disconnectedCallback() {
- run_all(this.$$.on_disconnect);
- }
- $destroy() {
- destroy_component(this, 1);
- this.$destroy = noop;
- }
- $on(type, callback) {
- // TODO should this delegate to addEventListener?
- if (!is_function(callback)) {
- return noop;
- }
- const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));
- callbacks.push(callback);
- return () => {
- const index = callbacks.indexOf(callback);
- if (index !== -1)
- callbacks.splice(index, 1);
- };
- }
- $set($$props) {
- if (this.$$set && !is_empty($$props)) {
- this.$$.skip_bound = true;
- this.$$set($$props);
- this.$$.skip_bound = false;
- }
- }
- };
-}
-
-function dispatch_dev(type, detail) {
- document.dispatchEvent(custom_event(type, Object.assign({ version: '3.52.0' }, detail), { bubbles: true }));
-}
-function append_dev(target, node) {
- dispatch_dev('SvelteDOMInsert', { target, node });
- append(target, node);
-}
-function insert_dev(target, node, anchor) {
- dispatch_dev('SvelteDOMInsert', { target, node, anchor });
- insert(target, node, anchor);
-}
-function detach_dev(node) {
- dispatch_dev('SvelteDOMRemove', { node });
- detach(node);
-}
-function listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) {
- const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : [];
- if (has_prevent_default)
- modifiers.push('preventDefault');
- if (has_stop_propagation)
- modifiers.push('stopPropagation');
- dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers });
- const dispose = listen(node, event, handler, options);
- return () => {
- dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers });
- dispose();
- };
-}
-function attr_dev(node, attribute, value) {
- attr(node, attribute, value);
- if (value == null)
- dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute });
- else
- dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value });
-}
-function prop_dev(node, property, value) {
- node[property] = value;
- dispatch_dev('SvelteDOMSetProperty', { node, property, value });
-}
-function set_data_dev(text, data) {
- data = '' + data;
- if (text.wholeText === data)
- return;
- dispatch_dev('SvelteDOMSetData', { node: text, data });
- text.data = data;
-}
-function validate_each_argument(arg) {
- if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) {
- let msg = '{#each} only iterates over array-like objects.';
- if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) {
- msg += ' You can use a spread to convert this iterable into an array.';
- }
- throw new Error(msg);
- }
-}
-function validate_slots(name, slot, keys) {
- for (const slot_key of Object.keys(slot)) {
- if (!~keys.indexOf(slot_key)) {
- console.warn(`<${name}> received an unexpected slot "${slot_key}".`);
- }
- }
-}
-
-export { destroy_each as A, prop_dev as B, flush as C, set_style as D, getContext as E, setContext as F, svg_element as G, is_function as H, HtmlTag as I, SvelteElement as S, attribute_to_object as a, insert_dev as b, validate_store as c, dispatch_dev as d, component_subscribe as e, empty as f, detach_dev as g, binding_callbacks as h, init as i, element as j, space as k, add_location as l, attr_dev as m, noop as n, onMount as o, src_url_equal as p, set_custom_element_data as q, append_dev as r, safe_not_equal as s, listen_dev as t, run_all as u, validate_slots as v, globals as w, validate_each_argument as x, text as y, set_data_dev as z };
diff --git a/Server/public/js/components/index-57a61f53.js b/Server/public/js/components/index-57a61f53.js
deleted file mode 100644
index eb9a263..0000000
--- a/Server/public/js/components/index-57a61f53.js
+++ /dev/null
@@ -1,513 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-function noop() { }
-function add_location(element, file, line, column, char) {
- element.__svelte_meta = {
- loc: { file, line, column, char }
- };
-}
-function run(fn) {
- return fn();
-}
-function blank_object() {
- return Object.create(null);
-}
-function run_all(fns) {
- fns.forEach(run);
-}
-function is_function(thing) {
- return typeof thing === 'function';
-}
-function safe_not_equal(a, b) {
- return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');
-}
-let src_url_equal_anchor;
-function src_url_equal(element_src, url) {
- if (!src_url_equal_anchor) {
- src_url_equal_anchor = document.createElement('a');
- }
- src_url_equal_anchor.href = url;
- return element_src === src_url_equal_anchor.href;
-}
-function is_empty(obj) {
- return Object.keys(obj).length === 0;
-}
-function validate_store(store, name) {
- if (store != null && typeof store.subscribe !== 'function') {
- throw new Error(`'${name}' is not a store with a 'subscribe' method`);
- }
-}
-function subscribe(store, ...callbacks) {
- if (store == null) {
- return noop;
- }
- const unsub = store.subscribe(...callbacks);
- return unsub.unsubscribe ? () => unsub.unsubscribe() : unsub;
-}
-function component_subscribe(component, store, callback) {
- component.$$.on_destroy.push(subscribe(store, callback));
-}
-function set_store_value(store, ret, value) {
- store.set(value);
- return ret;
-}
-function append(target, node) {
- target.appendChild(node);
-}
-function insert(target, node, anchor) {
- target.insertBefore(node, anchor || null);
-}
-function detach(node) {
- node.parentNode.removeChild(node);
-}
-function destroy_each(iterations, detaching) {
- for (let i = 0; i < iterations.length; i += 1) {
- if (iterations[i])
- iterations[i].d(detaching);
- }
-}
-function element(name) {
- return document.createElement(name);
-}
-function svg_element(name) {
- return document.createElementNS('http://www.w3.org/2000/svg', name);
-}
-function text(data) {
- return document.createTextNode(data);
-}
-function space() {
- return text(' ');
-}
-function empty() {
- return text('');
-}
-function listen(node, event, handler, options) {
- node.addEventListener(event, handler, options);
- return () => node.removeEventListener(event, handler, options);
-}
-function attr(node, attribute, value) {
- if (value == null)
- node.removeAttribute(attribute);
- else if (node.getAttribute(attribute) !== value)
- node.setAttribute(attribute, value);
-}
-function set_custom_element_data(node, prop, value) {
- if (prop in node) {
- node[prop] = typeof node[prop] === 'boolean' && value === '' ? true : value;
- }
- else {
- attr(node, prop, value);
- }
-}
-function children(element) {
- return Array.from(element.childNodes);
-}
-function set_style(node, key, value, important) {
- if (value === null) {
- node.style.removeProperty(key);
- }
- else {
- node.style.setProperty(key, value, important ? 'important' : '');
- }
-}
-function custom_event(type, detail, { bubbles = false, cancelable = false } = {}) {
- const e = document.createEvent('CustomEvent');
- e.initCustomEvent(type, bubbles, cancelable, detail);
- return e;
-}
-class HtmlTag {
- constructor(is_svg = false) {
- this.is_svg = false;
- this.is_svg = is_svg;
- this.e = this.n = null;
- }
- c(html) {
- this.h(html);
- }
- m(html, target, anchor = null) {
- if (!this.e) {
- if (this.is_svg)
- this.e = svg_element(target.nodeName);
- else
- this.e = element(target.nodeName);
- this.t = target;
- this.c(html);
- }
- this.i(anchor);
- }
- h(html) {
- this.e.innerHTML = html;
- this.n = Array.from(this.e.childNodes);
- }
- i(anchor) {
- for (let i = 0; i < this.n.length; i += 1) {
- insert(this.t, this.n[i], anchor);
- }
- }
- p(html) {
- this.d();
- this.h(html);
- this.i(this.a);
- }
- d() {
- this.n.forEach(detach);
- }
-}
-function attribute_to_object(attributes) {
- const result = {};
- for (const attribute of attributes) {
- result[attribute.name] = attribute.value;
- }
- return result;
-}
-
-let current_component;
-function set_current_component(component) {
- current_component = component;
-}
-function get_current_component() {
- if (!current_component)
- throw new Error('Function called outside component initialization');
- return current_component;
-}
-/**
- * The `onMount` function schedules a callback to run as soon as the component has been mounted to the DOM.
- * It must be called during the component's initialisation (but doesn't need to live *inside* the component;
- * it can be called from an external module).
- *
- * `onMount` does not run inside a [server-side component](/docs#run-time-server-side-component-api).
- *
- * https://svelte.dev/docs#run-time-svelte-onmount
- */
-function onMount(fn) {
- get_current_component().$$.on_mount.push(fn);
-}
-/**
- * Associates an arbitrary `context` object with the current component and the specified `key`
- * and returns that object. The context is then available to children of the component
- * (including slotted content) with `getContext`.
- *
- * Like lifecycle functions, this must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-setcontext
- */
-function setContext(key, context) {
- get_current_component().$$.context.set(key, context);
- return context;
-}
-/**
- * Retrieves the context that belongs to the closest parent component with the specified `key`.
- * Must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-getcontext
- */
-function getContext(key) {
- return get_current_component().$$.context.get(key);
-}
-
-const dirty_components = [];
-const binding_callbacks = [];
-const render_callbacks = [];
-const flush_callbacks = [];
-const resolved_promise = Promise.resolve();
-let update_scheduled = false;
-function schedule_update() {
- if (!update_scheduled) {
- update_scheduled = true;
- resolved_promise.then(flush);
- }
-}
-function add_render_callback(fn) {
- render_callbacks.push(fn);
-}
-// flush() calls callbacks in this order:
-// 1. All beforeUpdate callbacks, in order: parents before children
-// 2. All bind:this callbacks, in reverse order: children before parents.
-// 3. All afterUpdate callbacks, in order: parents before children. EXCEPT
-// for afterUpdates called during the initial onMount, which are called in
-// reverse order: children before parents.
-// Since callbacks might update component values, which could trigger another
-// call to flush(), the following steps guard against this:
-// 1. During beforeUpdate, any updated components will be added to the
-// dirty_components array and will cause a reentrant call to flush(). Because
-// the flush index is kept outside the function, the reentrant call will pick
-// up where the earlier call left off and go through all dirty components. The
-// current_component value is saved and restored so that the reentrant call will
-// not interfere with the "parent" flush() call.
-// 2. bind:this callbacks cannot trigger new flush() calls.
-// 3. During afterUpdate, any updated components will NOT have their afterUpdate
-// callback called a second time; the seen_callbacks set, outside the flush()
-// function, guarantees this behavior.
-const seen_callbacks = new Set();
-let flushidx = 0; // Do *not* move this inside the flush() function
-function flush() {
- const saved_component = current_component;
- do {
- // first, call beforeUpdate functions
- // and update components
- while (flushidx < dirty_components.length) {
- const component = dirty_components[flushidx];
- flushidx++;
- set_current_component(component);
- update(component.$$);
- }
- set_current_component(null);
- dirty_components.length = 0;
- flushidx = 0;
- while (binding_callbacks.length)
- binding_callbacks.pop()();
- // then, once components are updated, call
- // afterUpdate functions. This may cause
- // subsequent updates...
- for (let i = 0; i < render_callbacks.length; i += 1) {
- const callback = render_callbacks[i];
- if (!seen_callbacks.has(callback)) {
- // ...so guard against infinite loops
- seen_callbacks.add(callback);
- callback();
- }
- }
- render_callbacks.length = 0;
- } while (dirty_components.length);
- while (flush_callbacks.length) {
- flush_callbacks.pop()();
- }
- update_scheduled = false;
- seen_callbacks.clear();
- set_current_component(saved_component);
-}
-function update($$) {
- if ($$.fragment !== null) {
- $$.update();
- run_all($$.before_update);
- const dirty = $$.dirty;
- $$.dirty = [-1];
- $$.fragment && $$.fragment.p($$.ctx, dirty);
- $$.after_update.forEach(add_render_callback);
- }
-}
-const outroing = new Set();
-function transition_in(block, local) {
- if (block && block.i) {
- outroing.delete(block);
- block.i(local);
- }
-}
-
-const globals = (typeof window !== 'undefined'
- ? window
- : typeof globalThis !== 'undefined'
- ? globalThis
- : global);
-function mount_component(component, target, anchor, customElement) {
- const { fragment, after_update } = component.$$;
- fragment && fragment.m(target, anchor);
- if (!customElement) {
- // onMount happens before the initial afterUpdate
- add_render_callback(() => {
- const new_on_destroy = component.$$.on_mount.map(run).filter(is_function);
- // if the component was destroyed immediately
- // it will update the `$$.on_destroy` reference to `null`.
- // the destructured on_destroy may still reference to the old array
- if (component.$$.on_destroy) {
- component.$$.on_destroy.push(...new_on_destroy);
- }
- else {
- // Edge case - component was destroyed immediately,
- // most likely as a result of a binding initialising
- run_all(new_on_destroy);
- }
- component.$$.on_mount = [];
- });
- }
- after_update.forEach(add_render_callback);
-}
-function destroy_component(component, detaching) {
- const $$ = component.$$;
- if ($$.fragment !== null) {
- run_all($$.on_destroy);
- $$.fragment && $$.fragment.d(detaching);
- // TODO null out other refs, including component.$$ (but need to
- // preserve final state?)
- $$.on_destroy = $$.fragment = null;
- $$.ctx = [];
- }
-}
-function make_dirty(component, i) {
- if (component.$$.dirty[0] === -1) {
- dirty_components.push(component);
- schedule_update();
- component.$$.dirty.fill(0);
- }
- component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31));
-}
-function init(component, options, instance, create_fragment, not_equal, props, append_styles, dirty = [-1]) {
- const parent_component = current_component;
- set_current_component(component);
- const $$ = component.$$ = {
- fragment: null,
- ctx: [],
- // state
- props,
- update: noop,
- not_equal,
- bound: blank_object(),
- // lifecycle
- on_mount: [],
- on_destroy: [],
- on_disconnect: [],
- before_update: [],
- after_update: [],
- context: new Map(options.context || (parent_component ? parent_component.$$.context : [])),
- // everything else
- callbacks: blank_object(),
- dirty,
- skip_bound: false,
- root: options.target || parent_component.$$.root
- };
- append_styles && append_styles($$.root);
- let ready = false;
- $$.ctx = instance
- ? instance(component, options.props || {}, (i, ret, ...rest) => {
- const value = rest.length ? rest[0] : ret;
- if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {
- if (!$$.skip_bound && $$.bound[i])
- $$.bound[i](value);
- if (ready)
- make_dirty(component, i);
- }
- return ret;
- })
- : [];
- $$.update();
- ready = true;
- run_all($$.before_update);
- // `false` as a special case of no DOM component
- $$.fragment = create_fragment ? create_fragment($$.ctx) : false;
- if (options.target) {
- if (options.hydrate) {
- const nodes = children(options.target);
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.l(nodes);
- nodes.forEach(detach);
- }
- else {
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.c();
- }
- if (options.intro)
- transition_in(component.$$.fragment);
- mount_component(component, options.target, options.anchor, options.customElement);
- flush();
- }
- set_current_component(parent_component);
-}
-let SvelteElement;
-if (typeof HTMLElement === 'function') {
- SvelteElement = class extends HTMLElement {
- constructor() {
- super();
- this.attachShadow({ mode: 'open' });
- }
- connectedCallback() {
- const { on_mount } = this.$$;
- this.$$.on_disconnect = on_mount.map(run).filter(is_function);
- // @ts-ignore todo: improve typings
- for (const key in this.$$.slotted) {
- // @ts-ignore todo: improve typings
- this.appendChild(this.$$.slotted[key]);
- }
- }
- attributeChangedCallback(attr, _oldValue, newValue) {
- this[attr] = newValue;
- }
- disconnectedCallback() {
- run_all(this.$$.on_disconnect);
- }
- $destroy() {
- destroy_component(this, 1);
- this.$destroy = noop;
- }
- $on(type, callback) {
- // TODO should this delegate to addEventListener?
- if (!is_function(callback)) {
- return noop;
- }
- const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));
- callbacks.push(callback);
- return () => {
- const index = callbacks.indexOf(callback);
- if (index !== -1)
- callbacks.splice(index, 1);
- };
- }
- $set($$props) {
- if (this.$$set && !is_empty($$props)) {
- this.$$.skip_bound = true;
- this.$$set($$props);
- this.$$.skip_bound = false;
- }
- }
- };
-}
-
-function dispatch_dev(type, detail) {
- document.dispatchEvent(custom_event(type, Object.assign({ version: '3.52.0' }, detail), { bubbles: true }));
-}
-function append_dev(target, node) {
- dispatch_dev('SvelteDOMInsert', { target, node });
- append(target, node);
-}
-function insert_dev(target, node, anchor) {
- dispatch_dev('SvelteDOMInsert', { target, node, anchor });
- insert(target, node, anchor);
-}
-function detach_dev(node) {
- dispatch_dev('SvelteDOMRemove', { node });
- detach(node);
-}
-function listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) {
- const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : [];
- if (has_prevent_default)
- modifiers.push('preventDefault');
- if (has_stop_propagation)
- modifiers.push('stopPropagation');
- dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers });
- const dispose = listen(node, event, handler, options);
- return () => {
- dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers });
- dispose();
- };
-}
-function attr_dev(node, attribute, value) {
- attr(node, attribute, value);
- if (value == null)
- dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute });
- else
- dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value });
-}
-function set_data_dev(text, data) {
- data = '' + data;
- if (text.wholeText === data)
- return;
- dispatch_dev('SvelteDOMSetData', { node: text, data });
- text.data = data;
-}
-function validate_each_argument(arg) {
- if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) {
- let msg = '{#each} only iterates over array-like objects.';
- if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) {
- msg += ' You can use a spread to convert this iterable into an array.';
- }
- throw new Error(msg);
- }
-}
-function validate_slots(name, slot, keys) {
- for (const slot_key of Object.keys(slot)) {
- if (!~keys.indexOf(slot_key)) {
- console.warn(`<${name}> received an unexpected slot "${slot_key}".`);
- }
- }
-}
-
-export { setContext as A, run_all as B, svg_element as C, empty as D, is_function as E, validate_store as F, component_subscribe as G, HtmlTag as H, set_store_value as I, SvelteElement as S, attribute_to_object as a, insert_dev as b, validate_slots as c, dispatch_dev as d, element as e, space as f, add_location as g, attr_dev as h, init as i, src_url_equal as j, append_dev as k, detach_dev as l, destroy_each as m, noop as n, onMount as o, set_custom_element_data as p, flush as q, globals as r, safe_not_equal as s, text as t, binding_callbacks as u, validate_each_argument as v, set_style as w, listen_dev as x, set_data_dev as y, getContext as z };
diff --git a/Server/public/js/components/index-5b685137.js b/Server/public/js/components/index-5b685137.js
deleted file mode 100644
index 1b20c28..0000000
--- a/Server/public/js/components/index-5b685137.js
+++ /dev/null
@@ -1 +0,0 @@
-function t(){}function n(t){return t()}function e(){return Object.create(null)}function o(t){t.forEach(n)}function s(t){return"function"==typeof t}function r(t,n){return t!=t?n==n:t!==n||t&&"object"==typeof t||"function"==typeof t}let i,c;function u(t,n){return i||(i=document.createElement("a")),i.href=n,t===i.href}function a(n,e,o){n.$$.on_destroy.push(function(n,...e){if(null==n)return t;const o=n.subscribe(...e);return o.unsubscribe?()=>o.unsubscribe():o}(e,o))}function f(t,n){t.appendChild(n)}function l(t,n,e){t.insertBefore(n,e||null)}function h(t){t.parentNode.removeChild(t)}function d(t,n){for(let e=0;et.removeEventListener(n,e,o)}function y(t,n,e){null==e?t.removeAttribute(n):t.getAttribute(n)!==e&&t.setAttribute(n,e)}function _(t,n,e){n in t?t[n]="boolean"==typeof t[n]&&""===e||e:y(t,n,e)}function x(t,n){n=""+n,t.wholeText!==n&&(t.data=n)}function v(t,n){t.value=null==n?"":n}function E(t,n,e,o){null===e?t.style.removeProperty(n):t.style.setProperty(n,e,o?"important":"")}class w{constructor(t=!1){this.is_svg=!1,this.is_svg=t,this.e=this.n=null}c(t){this.h(t)}m(t,n,e=null){var o;this.e||(this.is_svg?this.e=(o=n.nodeName,document.createElementNS("http://www.w3.org/2000/svg",o)):this.e=$(n.nodeName),this.t=n,this.c(t)),this.i(e)}h(t){this.e.innerHTML=t,this.n=Array.from(this.e.childNodes)}i(t){for(let n=0;n{const o=e.length?e[0]:n;return m.ctx&&f(m.ctx[t],m.ctx[t]=o)&&(!m.skip_bound&&m.bound[t]&&m.bound[t](o),g&&I(r,t)),n})):[],m.update(),g=!0,o(m.before_update),m.fragment=!!a&&a(m.ctx),i.target){if(i.hydrate){const t=function(t){return Array.from(t.childNodes)}(i.target);m.fragment&&m.fragment.l(t),t.forEach(h)}else m.fragment&&m.fragment.c();i.intro&&((b=r.$$.fragment)&&b.i&&(G.delete(b),b.i(y))),function(t,e,r,i){const{fragment:c,after_update:u}=t.$$;c&&c.m(e,r),i||q((()=>{const e=t.$$.on_mount.map(n).filter(s);t.$$.on_destroy?t.$$.on_destroy.push(...e):o(e),t.$$.on_mount=[]})),u.forEach(q)}(r,i.target,i.anchor,i.customElement),F()}var b,y;C(p)}let K;"function"==typeof HTMLElement&&(K=class extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"})}connectedCallback(){const{on_mount:t}=this.$$;this.$$.on_disconnect=t.map(n).filter(s);for(const t in this.$$.slotted)this.appendChild(this.$$.slotted[t])}attributeChangedCallback(t,n,e){this[t]=e}disconnectedCallback(){o(this.$$.on_disconnect)}$destroy(){!function(t,n){const e=t.$$;null!==e.fragment&&(o(e.on_destroy),e.fragment&&e.fragment.d(n),e.on_destroy=e.fragment=null,e.ctx=[])}(this,1),this.$destroy=t}$on(n,e){if(!s(e))return t;const o=this.$$.callbacks[n]||(this.$$.callbacks[n]=[]);return o.push(e),()=>{const t=o.indexOf(e);-1!==t&&o.splice(t,1)}}$set(t){var n;this.$$set&&(n=t,0!==Object.keys(n).length)&&(this.$$.skip_bound=!0,this.$$set(t),this.$$.skip_bound=!1)}});export{v as A,w as H,K as S,k as a,l as b,m as c,y as d,$ as e,f,h as g,L as h,J as i,j,F as k,b as l,S as m,t as n,A as o,s as p,g as q,o as r,r as s,a as t,u,_ as v,p as w,x,d as y,E as z};
diff --git a/Server/public/js/components/index-5cb337ff.js b/Server/public/js/components/index-5cb337ff.js
deleted file mode 100644
index 3e9af3e..0000000
--- a/Server/public/js/components/index-5cb337ff.js
+++ /dev/null
@@ -1,509 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-function noop() { }
-function add_location(element, file, line, column, char) {
- element.__svelte_meta = {
- loc: { file, line, column, char }
- };
-}
-function run(fn) {
- return fn();
-}
-function blank_object() {
- return Object.create(null);
-}
-function run_all(fns) {
- fns.forEach(run);
-}
-function is_function(thing) {
- return typeof thing === 'function';
-}
-function safe_not_equal(a, b) {
- return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');
-}
-let src_url_equal_anchor;
-function src_url_equal(element_src, url) {
- if (!src_url_equal_anchor) {
- src_url_equal_anchor = document.createElement('a');
- }
- src_url_equal_anchor.href = url;
- return element_src === src_url_equal_anchor.href;
-}
-function is_empty(obj) {
- return Object.keys(obj).length === 0;
-}
-function validate_store(store, name) {
- if (store != null && typeof store.subscribe !== 'function') {
- throw new Error(`'${name}' is not a store with a 'subscribe' method`);
- }
-}
-function subscribe(store, ...callbacks) {
- if (store == null) {
- return noop;
- }
- const unsub = store.subscribe(...callbacks);
- return unsub.unsubscribe ? () => unsub.unsubscribe() : unsub;
-}
-function component_subscribe(component, store, callback) {
- component.$$.on_destroy.push(subscribe(store, callback));
-}
-function append(target, node) {
- target.appendChild(node);
-}
-function insert(target, node, anchor) {
- target.insertBefore(node, anchor || null);
-}
-function detach(node) {
- node.parentNode.removeChild(node);
-}
-function destroy_each(iterations, detaching) {
- for (let i = 0; i < iterations.length; i += 1) {
- if (iterations[i])
- iterations[i].d(detaching);
- }
-}
-function element(name) {
- return document.createElement(name);
-}
-function svg_element(name) {
- return document.createElementNS('http://www.w3.org/2000/svg', name);
-}
-function text(data) {
- return document.createTextNode(data);
-}
-function space() {
- return text(' ');
-}
-function empty() {
- return text('');
-}
-function listen(node, event, handler, options) {
- node.addEventListener(event, handler, options);
- return () => node.removeEventListener(event, handler, options);
-}
-function attr(node, attribute, value) {
- if (value == null)
- node.removeAttribute(attribute);
- else if (node.getAttribute(attribute) !== value)
- node.setAttribute(attribute, value);
-}
-function set_custom_element_data(node, prop, value) {
- if (prop in node) {
- node[prop] = typeof node[prop] === 'boolean' && value === '' ? true : value;
- }
- else {
- attr(node, prop, value);
- }
-}
-function children(element) {
- return Array.from(element.childNodes);
-}
-function set_style(node, key, value, important) {
- if (value === null) {
- node.style.removeProperty(key);
- }
- else {
- node.style.setProperty(key, value, important ? 'important' : '');
- }
-}
-function custom_event(type, detail, { bubbles = false, cancelable = false } = {}) {
- const e = document.createEvent('CustomEvent');
- e.initCustomEvent(type, bubbles, cancelable, detail);
- return e;
-}
-class HtmlTag {
- constructor(is_svg = false) {
- this.is_svg = false;
- this.is_svg = is_svg;
- this.e = this.n = null;
- }
- c(html) {
- this.h(html);
- }
- m(html, target, anchor = null) {
- if (!this.e) {
- if (this.is_svg)
- this.e = svg_element(target.nodeName);
- else
- this.e = element(target.nodeName);
- this.t = target;
- this.c(html);
- }
- this.i(anchor);
- }
- h(html) {
- this.e.innerHTML = html;
- this.n = Array.from(this.e.childNodes);
- }
- i(anchor) {
- for (let i = 0; i < this.n.length; i += 1) {
- insert(this.t, this.n[i], anchor);
- }
- }
- p(html) {
- this.d();
- this.h(html);
- this.i(this.a);
- }
- d() {
- this.n.forEach(detach);
- }
-}
-function attribute_to_object(attributes) {
- const result = {};
- for (const attribute of attributes) {
- result[attribute.name] = attribute.value;
- }
- return result;
-}
-
-let current_component;
-function set_current_component(component) {
- current_component = component;
-}
-function get_current_component() {
- if (!current_component)
- throw new Error('Function called outside component initialization');
- return current_component;
-}
-/**
- * The `onMount` function schedules a callback to run as soon as the component has been mounted to the DOM.
- * It must be called during the component's initialisation (but doesn't need to live *inside* the component;
- * it can be called from an external module).
- *
- * `onMount` does not run inside a [server-side component](/docs#run-time-server-side-component-api).
- *
- * https://svelte.dev/docs#run-time-svelte-onmount
- */
-function onMount(fn) {
- get_current_component().$$.on_mount.push(fn);
-}
-/**
- * Associates an arbitrary `context` object with the current component and the specified `key`
- * and returns that object. The context is then available to children of the component
- * (including slotted content) with `getContext`.
- *
- * Like lifecycle functions, this must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-setcontext
- */
-function setContext(key, context) {
- get_current_component().$$.context.set(key, context);
- return context;
-}
-/**
- * Retrieves the context that belongs to the closest parent component with the specified `key`.
- * Must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-getcontext
- */
-function getContext(key) {
- return get_current_component().$$.context.get(key);
-}
-
-const dirty_components = [];
-const binding_callbacks = [];
-const render_callbacks = [];
-const flush_callbacks = [];
-const resolved_promise = Promise.resolve();
-let update_scheduled = false;
-function schedule_update() {
- if (!update_scheduled) {
- update_scheduled = true;
- resolved_promise.then(flush);
- }
-}
-function add_render_callback(fn) {
- render_callbacks.push(fn);
-}
-// flush() calls callbacks in this order:
-// 1. All beforeUpdate callbacks, in order: parents before children
-// 2. All bind:this callbacks, in reverse order: children before parents.
-// 3. All afterUpdate callbacks, in order: parents before children. EXCEPT
-// for afterUpdates called during the initial onMount, which are called in
-// reverse order: children before parents.
-// Since callbacks might update component values, which could trigger another
-// call to flush(), the following steps guard against this:
-// 1. During beforeUpdate, any updated components will be added to the
-// dirty_components array and will cause a reentrant call to flush(). Because
-// the flush index is kept outside the function, the reentrant call will pick
-// up where the earlier call left off and go through all dirty components. The
-// current_component value is saved and restored so that the reentrant call will
-// not interfere with the "parent" flush() call.
-// 2. bind:this callbacks cannot trigger new flush() calls.
-// 3. During afterUpdate, any updated components will NOT have their afterUpdate
-// callback called a second time; the seen_callbacks set, outside the flush()
-// function, guarantees this behavior.
-const seen_callbacks = new Set();
-let flushidx = 0; // Do *not* move this inside the flush() function
-function flush() {
- const saved_component = current_component;
- do {
- // first, call beforeUpdate functions
- // and update components
- while (flushidx < dirty_components.length) {
- const component = dirty_components[flushidx];
- flushidx++;
- set_current_component(component);
- update(component.$$);
- }
- set_current_component(null);
- dirty_components.length = 0;
- flushidx = 0;
- while (binding_callbacks.length)
- binding_callbacks.pop()();
- // then, once components are updated, call
- // afterUpdate functions. This may cause
- // subsequent updates...
- for (let i = 0; i < render_callbacks.length; i += 1) {
- const callback = render_callbacks[i];
- if (!seen_callbacks.has(callback)) {
- // ...so guard against infinite loops
- seen_callbacks.add(callback);
- callback();
- }
- }
- render_callbacks.length = 0;
- } while (dirty_components.length);
- while (flush_callbacks.length) {
- flush_callbacks.pop()();
- }
- update_scheduled = false;
- seen_callbacks.clear();
- set_current_component(saved_component);
-}
-function update($$) {
- if ($$.fragment !== null) {
- $$.update();
- run_all($$.before_update);
- const dirty = $$.dirty;
- $$.dirty = [-1];
- $$.fragment && $$.fragment.p($$.ctx, dirty);
- $$.after_update.forEach(add_render_callback);
- }
-}
-const outroing = new Set();
-function transition_in(block, local) {
- if (block && block.i) {
- outroing.delete(block);
- block.i(local);
- }
-}
-
-const globals = (typeof window !== 'undefined'
- ? window
- : typeof globalThis !== 'undefined'
- ? globalThis
- : global);
-function mount_component(component, target, anchor, customElement) {
- const { fragment, after_update } = component.$$;
- fragment && fragment.m(target, anchor);
- if (!customElement) {
- // onMount happens before the initial afterUpdate
- add_render_callback(() => {
- const new_on_destroy = component.$$.on_mount.map(run).filter(is_function);
- // if the component was destroyed immediately
- // it will update the `$$.on_destroy` reference to `null`.
- // the destructured on_destroy may still reference to the old array
- if (component.$$.on_destroy) {
- component.$$.on_destroy.push(...new_on_destroy);
- }
- else {
- // Edge case - component was destroyed immediately,
- // most likely as a result of a binding initialising
- run_all(new_on_destroy);
- }
- component.$$.on_mount = [];
- });
- }
- after_update.forEach(add_render_callback);
-}
-function destroy_component(component, detaching) {
- const $$ = component.$$;
- if ($$.fragment !== null) {
- run_all($$.on_destroy);
- $$.fragment && $$.fragment.d(detaching);
- // TODO null out other refs, including component.$$ (but need to
- // preserve final state?)
- $$.on_destroy = $$.fragment = null;
- $$.ctx = [];
- }
-}
-function make_dirty(component, i) {
- if (component.$$.dirty[0] === -1) {
- dirty_components.push(component);
- schedule_update();
- component.$$.dirty.fill(0);
- }
- component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31));
-}
-function init(component, options, instance, create_fragment, not_equal, props, append_styles, dirty = [-1]) {
- const parent_component = current_component;
- set_current_component(component);
- const $$ = component.$$ = {
- fragment: null,
- ctx: [],
- // state
- props,
- update: noop,
- not_equal,
- bound: blank_object(),
- // lifecycle
- on_mount: [],
- on_destroy: [],
- on_disconnect: [],
- before_update: [],
- after_update: [],
- context: new Map(options.context || (parent_component ? parent_component.$$.context : [])),
- // everything else
- callbacks: blank_object(),
- dirty,
- skip_bound: false,
- root: options.target || parent_component.$$.root
- };
- append_styles && append_styles($$.root);
- let ready = false;
- $$.ctx = instance
- ? instance(component, options.props || {}, (i, ret, ...rest) => {
- const value = rest.length ? rest[0] : ret;
- if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {
- if (!$$.skip_bound && $$.bound[i])
- $$.bound[i](value);
- if (ready)
- make_dirty(component, i);
- }
- return ret;
- })
- : [];
- $$.update();
- ready = true;
- run_all($$.before_update);
- // `false` as a special case of no DOM component
- $$.fragment = create_fragment ? create_fragment($$.ctx) : false;
- if (options.target) {
- if (options.hydrate) {
- const nodes = children(options.target);
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.l(nodes);
- nodes.forEach(detach);
- }
- else {
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.c();
- }
- if (options.intro)
- transition_in(component.$$.fragment);
- mount_component(component, options.target, options.anchor, options.customElement);
- flush();
- }
- set_current_component(parent_component);
-}
-let SvelteElement;
-if (typeof HTMLElement === 'function') {
- SvelteElement = class extends HTMLElement {
- constructor() {
- super();
- this.attachShadow({ mode: 'open' });
- }
- connectedCallback() {
- const { on_mount } = this.$$;
- this.$$.on_disconnect = on_mount.map(run).filter(is_function);
- // @ts-ignore todo: improve typings
- for (const key in this.$$.slotted) {
- // @ts-ignore todo: improve typings
- this.appendChild(this.$$.slotted[key]);
- }
- }
- attributeChangedCallback(attr, _oldValue, newValue) {
- this[attr] = newValue;
- }
- disconnectedCallback() {
- run_all(this.$$.on_disconnect);
- }
- $destroy() {
- destroy_component(this, 1);
- this.$destroy = noop;
- }
- $on(type, callback) {
- // TODO should this delegate to addEventListener?
- if (!is_function(callback)) {
- return noop;
- }
- const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));
- callbacks.push(callback);
- return () => {
- const index = callbacks.indexOf(callback);
- if (index !== -1)
- callbacks.splice(index, 1);
- };
- }
- $set($$props) {
- if (this.$$set && !is_empty($$props)) {
- this.$$.skip_bound = true;
- this.$$set($$props);
- this.$$.skip_bound = false;
- }
- }
- };
-}
-
-function dispatch_dev(type, detail) {
- document.dispatchEvent(custom_event(type, Object.assign({ version: '3.52.0' }, detail), { bubbles: true }));
-}
-function append_dev(target, node) {
- dispatch_dev('SvelteDOMInsert', { target, node });
- append(target, node);
-}
-function insert_dev(target, node, anchor) {
- dispatch_dev('SvelteDOMInsert', { target, node, anchor });
- insert(target, node, anchor);
-}
-function detach_dev(node) {
- dispatch_dev('SvelteDOMRemove', { node });
- detach(node);
-}
-function listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) {
- const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : [];
- if (has_prevent_default)
- modifiers.push('preventDefault');
- if (has_stop_propagation)
- modifiers.push('stopPropagation');
- dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers });
- const dispose = listen(node, event, handler, options);
- return () => {
- dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers });
- dispose();
- };
-}
-function attr_dev(node, attribute, value) {
- attr(node, attribute, value);
- if (value == null)
- dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute });
- else
- dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value });
-}
-function set_data_dev(text, data) {
- data = '' + data;
- if (text.wholeText === data)
- return;
- dispatch_dev('SvelteDOMSetData', { node: text, data });
- text.data = data;
-}
-function validate_each_argument(arg) {
- if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) {
- let msg = '{#each} only iterates over array-like objects.';
- if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) {
- msg += ' You can use a spread to convert this iterable into an array.';
- }
- throw new Error(msg);
- }
-}
-function validate_slots(name, slot, keys) {
- for (const slot_key of Object.keys(slot)) {
- if (!~keys.indexOf(slot_key)) {
- console.warn(`<${name}> received an unexpected slot "${slot_key}".`);
- }
- }
-}
-
-export { setContext as A, run_all as B, svg_element as C, validate_store as D, component_subscribe as E, empty as F, is_function as G, HtmlTag as H, SvelteElement as S, attribute_to_object as a, insert_dev as b, validate_slots as c, dispatch_dev as d, element as e, space as f, add_location as g, attr_dev as h, init as i, src_url_equal as j, append_dev as k, detach_dev as l, destroy_each as m, noop as n, onMount as o, set_custom_element_data as p, flush as q, globals as r, safe_not_equal as s, text as t, binding_callbacks as u, validate_each_argument as v, set_style as w, listen_dev as x, set_data_dev as y, getContext as z };
diff --git a/Server/public/js/components/index-5e6510e7.js b/Server/public/js/components/index-5e6510e7.js
deleted file mode 100644
index bf5342e..0000000
--- a/Server/public/js/components/index-5e6510e7.js
+++ /dev/null
@@ -1,513 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-function noop() { }
-function add_location(element, file, line, column, char) {
- element.__svelte_meta = {
- loc: { file, line, column, char }
- };
-}
-function run(fn) {
- return fn();
-}
-function blank_object() {
- return Object.create(null);
-}
-function run_all(fns) {
- fns.forEach(run);
-}
-function is_function(thing) {
- return typeof thing === 'function';
-}
-function safe_not_equal(a, b) {
- return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');
-}
-let src_url_equal_anchor;
-function src_url_equal(element_src, url) {
- if (!src_url_equal_anchor) {
- src_url_equal_anchor = document.createElement('a');
- }
- src_url_equal_anchor.href = url;
- return element_src === src_url_equal_anchor.href;
-}
-function is_empty(obj) {
- return Object.keys(obj).length === 0;
-}
-function validate_store(store, name) {
- if (store != null && typeof store.subscribe !== 'function') {
- throw new Error(`'${name}' is not a store with a 'subscribe' method`);
- }
-}
-function subscribe(store, ...callbacks) {
- if (store == null) {
- return noop;
- }
- const unsub = store.subscribe(...callbacks);
- return unsub.unsubscribe ? () => unsub.unsubscribe() : unsub;
-}
-function component_subscribe(component, store, callback) {
- component.$$.on_destroy.push(subscribe(store, callback));
-}
-function append(target, node) {
- target.appendChild(node);
-}
-function insert(target, node, anchor) {
- target.insertBefore(node, anchor || null);
-}
-function detach(node) {
- node.parentNode.removeChild(node);
-}
-function destroy_each(iterations, detaching) {
- for (let i = 0; i < iterations.length; i += 1) {
- if (iterations[i])
- iterations[i].d(detaching);
- }
-}
-function element(name) {
- return document.createElement(name);
-}
-function svg_element(name) {
- return document.createElementNS('http://www.w3.org/2000/svg', name);
-}
-function text(data) {
- return document.createTextNode(data);
-}
-function space() {
- return text(' ');
-}
-function empty() {
- return text('');
-}
-function listen(node, event, handler, options) {
- node.addEventListener(event, handler, options);
- return () => node.removeEventListener(event, handler, options);
-}
-function attr(node, attribute, value) {
- if (value == null)
- node.removeAttribute(attribute);
- else if (node.getAttribute(attribute) !== value)
- node.setAttribute(attribute, value);
-}
-function set_custom_element_data(node, prop, value) {
- if (prop in node) {
- node[prop] = typeof node[prop] === 'boolean' && value === '' ? true : value;
- }
- else {
- attr(node, prop, value);
- }
-}
-function children(element) {
- return Array.from(element.childNodes);
-}
-function set_style(node, key, value, important) {
- if (value === null) {
- node.style.removeProperty(key);
- }
- else {
- node.style.setProperty(key, value, important ? 'important' : '');
- }
-}
-function custom_event(type, detail, { bubbles = false, cancelable = false } = {}) {
- const e = document.createEvent('CustomEvent');
- e.initCustomEvent(type, bubbles, cancelable, detail);
- return e;
-}
-class HtmlTag {
- constructor(is_svg = false) {
- this.is_svg = false;
- this.is_svg = is_svg;
- this.e = this.n = null;
- }
- c(html) {
- this.h(html);
- }
- m(html, target, anchor = null) {
- if (!this.e) {
- if (this.is_svg)
- this.e = svg_element(target.nodeName);
- else
- this.e = element(target.nodeName);
- this.t = target;
- this.c(html);
- }
- this.i(anchor);
- }
- h(html) {
- this.e.innerHTML = html;
- this.n = Array.from(this.e.childNodes);
- }
- i(anchor) {
- for (let i = 0; i < this.n.length; i += 1) {
- insert(this.t, this.n[i], anchor);
- }
- }
- p(html) {
- this.d();
- this.h(html);
- this.i(this.a);
- }
- d() {
- this.n.forEach(detach);
- }
-}
-function attribute_to_object(attributes) {
- const result = {};
- for (const attribute of attributes) {
- result[attribute.name] = attribute.value;
- }
- return result;
-}
-
-let current_component;
-function set_current_component(component) {
- current_component = component;
-}
-function get_current_component() {
- if (!current_component)
- throw new Error('Function called outside component initialization');
- return current_component;
-}
-/**
- * The `onMount` function schedules a callback to run as soon as the component has been mounted to the DOM.
- * It must be called during the component's initialisation (but doesn't need to live *inside* the component;
- * it can be called from an external module).
- *
- * `onMount` does not run inside a [server-side component](/docs#run-time-server-side-component-api).
- *
- * https://svelte.dev/docs#run-time-svelte-onmount
- */
-function onMount(fn) {
- get_current_component().$$.on_mount.push(fn);
-}
-/**
- * Associates an arbitrary `context` object with the current component and the specified `key`
- * and returns that object. The context is then available to children of the component
- * (including slotted content) with `getContext`.
- *
- * Like lifecycle functions, this must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-setcontext
- */
-function setContext(key, context) {
- get_current_component().$$.context.set(key, context);
- return context;
-}
-/**
- * Retrieves the context that belongs to the closest parent component with the specified `key`.
- * Must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-getcontext
- */
-function getContext(key) {
- return get_current_component().$$.context.get(key);
-}
-
-const dirty_components = [];
-const binding_callbacks = [];
-const render_callbacks = [];
-const flush_callbacks = [];
-const resolved_promise = Promise.resolve();
-let update_scheduled = false;
-function schedule_update() {
- if (!update_scheduled) {
- update_scheduled = true;
- resolved_promise.then(flush);
- }
-}
-function add_render_callback(fn) {
- render_callbacks.push(fn);
-}
-// flush() calls callbacks in this order:
-// 1. All beforeUpdate callbacks, in order: parents before children
-// 2. All bind:this callbacks, in reverse order: children before parents.
-// 3. All afterUpdate callbacks, in order: parents before children. EXCEPT
-// for afterUpdates called during the initial onMount, which are called in
-// reverse order: children before parents.
-// Since callbacks might update component values, which could trigger another
-// call to flush(), the following steps guard against this:
-// 1. During beforeUpdate, any updated components will be added to the
-// dirty_components array and will cause a reentrant call to flush(). Because
-// the flush index is kept outside the function, the reentrant call will pick
-// up where the earlier call left off and go through all dirty components. The
-// current_component value is saved and restored so that the reentrant call will
-// not interfere with the "parent" flush() call.
-// 2. bind:this callbacks cannot trigger new flush() calls.
-// 3. During afterUpdate, any updated components will NOT have their afterUpdate
-// callback called a second time; the seen_callbacks set, outside the flush()
-// function, guarantees this behavior.
-const seen_callbacks = new Set();
-let flushidx = 0; // Do *not* move this inside the flush() function
-function flush() {
- const saved_component = current_component;
- do {
- // first, call beforeUpdate functions
- // and update components
- while (flushidx < dirty_components.length) {
- const component = dirty_components[flushidx];
- flushidx++;
- set_current_component(component);
- update(component.$$);
- }
- set_current_component(null);
- dirty_components.length = 0;
- flushidx = 0;
- while (binding_callbacks.length)
- binding_callbacks.pop()();
- // then, once components are updated, call
- // afterUpdate functions. This may cause
- // subsequent updates...
- for (let i = 0; i < render_callbacks.length; i += 1) {
- const callback = render_callbacks[i];
- if (!seen_callbacks.has(callback)) {
- // ...so guard against infinite loops
- seen_callbacks.add(callback);
- callback();
- }
- }
- render_callbacks.length = 0;
- } while (dirty_components.length);
- while (flush_callbacks.length) {
- flush_callbacks.pop()();
- }
- update_scheduled = false;
- seen_callbacks.clear();
- set_current_component(saved_component);
-}
-function update($$) {
- if ($$.fragment !== null) {
- $$.update();
- run_all($$.before_update);
- const dirty = $$.dirty;
- $$.dirty = [-1];
- $$.fragment && $$.fragment.p($$.ctx, dirty);
- $$.after_update.forEach(add_render_callback);
- }
-}
-const outroing = new Set();
-function transition_in(block, local) {
- if (block && block.i) {
- outroing.delete(block);
- block.i(local);
- }
-}
-
-const globals = (typeof window !== 'undefined'
- ? window
- : typeof globalThis !== 'undefined'
- ? globalThis
- : global);
-function mount_component(component, target, anchor, customElement) {
- const { fragment, after_update } = component.$$;
- fragment && fragment.m(target, anchor);
- if (!customElement) {
- // onMount happens before the initial afterUpdate
- add_render_callback(() => {
- const new_on_destroy = component.$$.on_mount.map(run).filter(is_function);
- // if the component was destroyed immediately
- // it will update the `$$.on_destroy` reference to `null`.
- // the destructured on_destroy may still reference to the old array
- if (component.$$.on_destroy) {
- component.$$.on_destroy.push(...new_on_destroy);
- }
- else {
- // Edge case - component was destroyed immediately,
- // most likely as a result of a binding initialising
- run_all(new_on_destroy);
- }
- component.$$.on_mount = [];
- });
- }
- after_update.forEach(add_render_callback);
-}
-function destroy_component(component, detaching) {
- const $$ = component.$$;
- if ($$.fragment !== null) {
- run_all($$.on_destroy);
- $$.fragment && $$.fragment.d(detaching);
- // TODO null out other refs, including component.$$ (but need to
- // preserve final state?)
- $$.on_destroy = $$.fragment = null;
- $$.ctx = [];
- }
-}
-function make_dirty(component, i) {
- if (component.$$.dirty[0] === -1) {
- dirty_components.push(component);
- schedule_update();
- component.$$.dirty.fill(0);
- }
- component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31));
-}
-function init(component, options, instance, create_fragment, not_equal, props, append_styles, dirty = [-1]) {
- const parent_component = current_component;
- set_current_component(component);
- const $$ = component.$$ = {
- fragment: null,
- ctx: [],
- // state
- props,
- update: noop,
- not_equal,
- bound: blank_object(),
- // lifecycle
- on_mount: [],
- on_destroy: [],
- on_disconnect: [],
- before_update: [],
- after_update: [],
- context: new Map(options.context || (parent_component ? parent_component.$$.context : [])),
- // everything else
- callbacks: blank_object(),
- dirty,
- skip_bound: false,
- root: options.target || parent_component.$$.root
- };
- append_styles && append_styles($$.root);
- let ready = false;
- $$.ctx = instance
- ? instance(component, options.props || {}, (i, ret, ...rest) => {
- const value = rest.length ? rest[0] : ret;
- if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {
- if (!$$.skip_bound && $$.bound[i])
- $$.bound[i](value);
- if (ready)
- make_dirty(component, i);
- }
- return ret;
- })
- : [];
- $$.update();
- ready = true;
- run_all($$.before_update);
- // `false` as a special case of no DOM component
- $$.fragment = create_fragment ? create_fragment($$.ctx) : false;
- if (options.target) {
- if (options.hydrate) {
- const nodes = children(options.target);
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.l(nodes);
- nodes.forEach(detach);
- }
- else {
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.c();
- }
- if (options.intro)
- transition_in(component.$$.fragment);
- mount_component(component, options.target, options.anchor, options.customElement);
- flush();
- }
- set_current_component(parent_component);
-}
-let SvelteElement;
-if (typeof HTMLElement === 'function') {
- SvelteElement = class extends HTMLElement {
- constructor() {
- super();
- this.attachShadow({ mode: 'open' });
- }
- connectedCallback() {
- const { on_mount } = this.$$;
- this.$$.on_disconnect = on_mount.map(run).filter(is_function);
- // @ts-ignore todo: improve typings
- for (const key in this.$$.slotted) {
- // @ts-ignore todo: improve typings
- this.appendChild(this.$$.slotted[key]);
- }
- }
- attributeChangedCallback(attr, _oldValue, newValue) {
- this[attr] = newValue;
- }
- disconnectedCallback() {
- run_all(this.$$.on_disconnect);
- }
- $destroy() {
- destroy_component(this, 1);
- this.$destroy = noop;
- }
- $on(type, callback) {
- // TODO should this delegate to addEventListener?
- if (!is_function(callback)) {
- return noop;
- }
- const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));
- callbacks.push(callback);
- return () => {
- const index = callbacks.indexOf(callback);
- if (index !== -1)
- callbacks.splice(index, 1);
- };
- }
- $set($$props) {
- if (this.$$set && !is_empty($$props)) {
- this.$$.skip_bound = true;
- this.$$set($$props);
- this.$$.skip_bound = false;
- }
- }
- };
-}
-
-function dispatch_dev(type, detail) {
- document.dispatchEvent(custom_event(type, Object.assign({ version: '3.52.0' }, detail), { bubbles: true }));
-}
-function append_dev(target, node) {
- dispatch_dev('SvelteDOMInsert', { target, node });
- append(target, node);
-}
-function insert_dev(target, node, anchor) {
- dispatch_dev('SvelteDOMInsert', { target, node, anchor });
- insert(target, node, anchor);
-}
-function detach_dev(node) {
- dispatch_dev('SvelteDOMRemove', { node });
- detach(node);
-}
-function listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) {
- const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : [];
- if (has_prevent_default)
- modifiers.push('preventDefault');
- if (has_stop_propagation)
- modifiers.push('stopPropagation');
- dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers });
- const dispose = listen(node, event, handler, options);
- return () => {
- dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers });
- dispose();
- };
-}
-function attr_dev(node, attribute, value) {
- attr(node, attribute, value);
- if (value == null)
- dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute });
- else
- dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value });
-}
-function prop_dev(node, property, value) {
- node[property] = value;
- dispatch_dev('SvelteDOMSetProperty', { node, property, value });
-}
-function set_data_dev(text, data) {
- data = '' + data;
- if (text.wholeText === data)
- return;
- dispatch_dev('SvelteDOMSetData', { node: text, data });
- text.data = data;
-}
-function validate_each_argument(arg) {
- if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) {
- let msg = '{#each} only iterates over array-like objects.';
- if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) {
- msg += ' You can use a spread to convert this iterable into an array.';
- }
- throw new Error(msg);
- }
-}
-function validate_slots(name, slot, keys) {
- for (const slot_key of Object.keys(slot)) {
- if (!~keys.indexOf(slot_key)) {
- console.warn(`<${name}> received an unexpected slot "${slot_key}".`);
- }
- }
-}
-
-export { run_all as A, prop_dev as B, flush as C, set_style as D, getContext as E, setContext as F, svg_element as G, is_function as H, HtmlTag as I, SvelteElement as S, attribute_to_object as a, insert_dev as b, validate_store as c, dispatch_dev as d, component_subscribe as e, validate_each_argument as f, globals as g, empty as h, init as i, detach_dev as j, element as k, space as l, add_location as m, noop as n, onMount as o, attr_dev as p, src_url_equal as q, set_custom_element_data as r, safe_not_equal as s, text as t, append_dev as u, validate_slots as v, set_data_dev as w, destroy_each as x, binding_callbacks as y, listen_dev as z };
diff --git a/Server/public/js/components/index-68a48afb.js b/Server/public/js/components/index-68a48afb.js
deleted file mode 100644
index 582467c..0000000
--- a/Server/public/js/components/index-68a48afb.js
+++ /dev/null
@@ -1,513 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-function noop() { }
-function add_location(element, file, line, column, char) {
- element.__svelte_meta = {
- loc: { file, line, column, char }
- };
-}
-function run(fn) {
- return fn();
-}
-function blank_object() {
- return Object.create(null);
-}
-function run_all(fns) {
- fns.forEach(run);
-}
-function is_function(thing) {
- return typeof thing === 'function';
-}
-function safe_not_equal(a, b) {
- return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');
-}
-let src_url_equal_anchor;
-function src_url_equal(element_src, url) {
- if (!src_url_equal_anchor) {
- src_url_equal_anchor = document.createElement('a');
- }
- src_url_equal_anchor.href = url;
- return element_src === src_url_equal_anchor.href;
-}
-function is_empty(obj) {
- return Object.keys(obj).length === 0;
-}
-function validate_store(store, name) {
- if (store != null && typeof store.subscribe !== 'function') {
- throw new Error(`'${name}' is not a store with a 'subscribe' method`);
- }
-}
-function subscribe(store, ...callbacks) {
- if (store == null) {
- return noop;
- }
- const unsub = store.subscribe(...callbacks);
- return unsub.unsubscribe ? () => unsub.unsubscribe() : unsub;
-}
-function component_subscribe(component, store, callback) {
- component.$$.on_destroy.push(subscribe(store, callback));
-}
-function append(target, node) {
- target.appendChild(node);
-}
-function insert(target, node, anchor) {
- target.insertBefore(node, anchor || null);
-}
-function detach(node) {
- node.parentNode.removeChild(node);
-}
-function destroy_each(iterations, detaching) {
- for (let i = 0; i < iterations.length; i += 1) {
- if (iterations[i])
- iterations[i].d(detaching);
- }
-}
-function element(name) {
- return document.createElement(name);
-}
-function svg_element(name) {
- return document.createElementNS('http://www.w3.org/2000/svg', name);
-}
-function text(data) {
- return document.createTextNode(data);
-}
-function space() {
- return text(' ');
-}
-function empty() {
- return text('');
-}
-function listen(node, event, handler, options) {
- node.addEventListener(event, handler, options);
- return () => node.removeEventListener(event, handler, options);
-}
-function attr(node, attribute, value) {
- if (value == null)
- node.removeAttribute(attribute);
- else if (node.getAttribute(attribute) !== value)
- node.setAttribute(attribute, value);
-}
-function set_custom_element_data(node, prop, value) {
- if (prop in node) {
- node[prop] = typeof node[prop] === 'boolean' && value === '' ? true : value;
- }
- else {
- attr(node, prop, value);
- }
-}
-function children(element) {
- return Array.from(element.childNodes);
-}
-function set_style(node, key, value, important) {
- if (value === null) {
- node.style.removeProperty(key);
- }
- else {
- node.style.setProperty(key, value, important ? 'important' : '');
- }
-}
-function custom_event(type, detail, { bubbles = false, cancelable = false } = {}) {
- const e = document.createEvent('CustomEvent');
- e.initCustomEvent(type, bubbles, cancelable, detail);
- return e;
-}
-class HtmlTag {
- constructor(is_svg = false) {
- this.is_svg = false;
- this.is_svg = is_svg;
- this.e = this.n = null;
- }
- c(html) {
- this.h(html);
- }
- m(html, target, anchor = null) {
- if (!this.e) {
- if (this.is_svg)
- this.e = svg_element(target.nodeName);
- else
- this.e = element(target.nodeName);
- this.t = target;
- this.c(html);
- }
- this.i(anchor);
- }
- h(html) {
- this.e.innerHTML = html;
- this.n = Array.from(this.e.childNodes);
- }
- i(anchor) {
- for (let i = 0; i < this.n.length; i += 1) {
- insert(this.t, this.n[i], anchor);
- }
- }
- p(html) {
- this.d();
- this.h(html);
- this.i(this.a);
- }
- d() {
- this.n.forEach(detach);
- }
-}
-function attribute_to_object(attributes) {
- const result = {};
- for (const attribute of attributes) {
- result[attribute.name] = attribute.value;
- }
- return result;
-}
-
-let current_component;
-function set_current_component(component) {
- current_component = component;
-}
-function get_current_component() {
- if (!current_component)
- throw new Error('Function called outside component initialization');
- return current_component;
-}
-/**
- * The `onMount` function schedules a callback to run as soon as the component has been mounted to the DOM.
- * It must be called during the component's initialisation (but doesn't need to live *inside* the component;
- * it can be called from an external module).
- *
- * `onMount` does not run inside a [server-side component](/docs#run-time-server-side-component-api).
- *
- * https://svelte.dev/docs#run-time-svelte-onmount
- */
-function onMount(fn) {
- get_current_component().$$.on_mount.push(fn);
-}
-/**
- * Associates an arbitrary `context` object with the current component and the specified `key`
- * and returns that object. The context is then available to children of the component
- * (including slotted content) with `getContext`.
- *
- * Like lifecycle functions, this must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-setcontext
- */
-function setContext(key, context) {
- get_current_component().$$.context.set(key, context);
- return context;
-}
-/**
- * Retrieves the context that belongs to the closest parent component with the specified `key`.
- * Must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-getcontext
- */
-function getContext(key) {
- return get_current_component().$$.context.get(key);
-}
-
-const dirty_components = [];
-const binding_callbacks = [];
-const render_callbacks = [];
-const flush_callbacks = [];
-const resolved_promise = Promise.resolve();
-let update_scheduled = false;
-function schedule_update() {
- if (!update_scheduled) {
- update_scheduled = true;
- resolved_promise.then(flush);
- }
-}
-function add_render_callback(fn) {
- render_callbacks.push(fn);
-}
-// flush() calls callbacks in this order:
-// 1. All beforeUpdate callbacks, in order: parents before children
-// 2. All bind:this callbacks, in reverse order: children before parents.
-// 3. All afterUpdate callbacks, in order: parents before children. EXCEPT
-// for afterUpdates called during the initial onMount, which are called in
-// reverse order: children before parents.
-// Since callbacks might update component values, which could trigger another
-// call to flush(), the following steps guard against this:
-// 1. During beforeUpdate, any updated components will be added to the
-// dirty_components array and will cause a reentrant call to flush(). Because
-// the flush index is kept outside the function, the reentrant call will pick
-// up where the earlier call left off and go through all dirty components. The
-// current_component value is saved and restored so that the reentrant call will
-// not interfere with the "parent" flush() call.
-// 2. bind:this callbacks cannot trigger new flush() calls.
-// 3. During afterUpdate, any updated components will NOT have their afterUpdate
-// callback called a second time; the seen_callbacks set, outside the flush()
-// function, guarantees this behavior.
-const seen_callbacks = new Set();
-let flushidx = 0; // Do *not* move this inside the flush() function
-function flush() {
- const saved_component = current_component;
- do {
- // first, call beforeUpdate functions
- // and update components
- while (flushidx < dirty_components.length) {
- const component = dirty_components[flushidx];
- flushidx++;
- set_current_component(component);
- update(component.$$);
- }
- set_current_component(null);
- dirty_components.length = 0;
- flushidx = 0;
- while (binding_callbacks.length)
- binding_callbacks.pop()();
- // then, once components are updated, call
- // afterUpdate functions. This may cause
- // subsequent updates...
- for (let i = 0; i < render_callbacks.length; i += 1) {
- const callback = render_callbacks[i];
- if (!seen_callbacks.has(callback)) {
- // ...so guard against infinite loops
- seen_callbacks.add(callback);
- callback();
- }
- }
- render_callbacks.length = 0;
- } while (dirty_components.length);
- while (flush_callbacks.length) {
- flush_callbacks.pop()();
- }
- update_scheduled = false;
- seen_callbacks.clear();
- set_current_component(saved_component);
-}
-function update($$) {
- if ($$.fragment !== null) {
- $$.update();
- run_all($$.before_update);
- const dirty = $$.dirty;
- $$.dirty = [-1];
- $$.fragment && $$.fragment.p($$.ctx, dirty);
- $$.after_update.forEach(add_render_callback);
- }
-}
-const outroing = new Set();
-function transition_in(block, local) {
- if (block && block.i) {
- outroing.delete(block);
- block.i(local);
- }
-}
-
-const globals = (typeof window !== 'undefined'
- ? window
- : typeof globalThis !== 'undefined'
- ? globalThis
- : global);
-function mount_component(component, target, anchor, customElement) {
- const { fragment, after_update } = component.$$;
- fragment && fragment.m(target, anchor);
- if (!customElement) {
- // onMount happens before the initial afterUpdate
- add_render_callback(() => {
- const new_on_destroy = component.$$.on_mount.map(run).filter(is_function);
- // if the component was destroyed immediately
- // it will update the `$$.on_destroy` reference to `null`.
- // the destructured on_destroy may still reference to the old array
- if (component.$$.on_destroy) {
- component.$$.on_destroy.push(...new_on_destroy);
- }
- else {
- // Edge case - component was destroyed immediately,
- // most likely as a result of a binding initialising
- run_all(new_on_destroy);
- }
- component.$$.on_mount = [];
- });
- }
- after_update.forEach(add_render_callback);
-}
-function destroy_component(component, detaching) {
- const $$ = component.$$;
- if ($$.fragment !== null) {
- run_all($$.on_destroy);
- $$.fragment && $$.fragment.d(detaching);
- // TODO null out other refs, including component.$$ (but need to
- // preserve final state?)
- $$.on_destroy = $$.fragment = null;
- $$.ctx = [];
- }
-}
-function make_dirty(component, i) {
- if (component.$$.dirty[0] === -1) {
- dirty_components.push(component);
- schedule_update();
- component.$$.dirty.fill(0);
- }
- component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31));
-}
-function init(component, options, instance, create_fragment, not_equal, props, append_styles, dirty = [-1]) {
- const parent_component = current_component;
- set_current_component(component);
- const $$ = component.$$ = {
- fragment: null,
- ctx: [],
- // state
- props,
- update: noop,
- not_equal,
- bound: blank_object(),
- // lifecycle
- on_mount: [],
- on_destroy: [],
- on_disconnect: [],
- before_update: [],
- after_update: [],
- context: new Map(options.context || (parent_component ? parent_component.$$.context : [])),
- // everything else
- callbacks: blank_object(),
- dirty,
- skip_bound: false,
- root: options.target || parent_component.$$.root
- };
- append_styles && append_styles($$.root);
- let ready = false;
- $$.ctx = instance
- ? instance(component, options.props || {}, (i, ret, ...rest) => {
- const value = rest.length ? rest[0] : ret;
- if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {
- if (!$$.skip_bound && $$.bound[i])
- $$.bound[i](value);
- if (ready)
- make_dirty(component, i);
- }
- return ret;
- })
- : [];
- $$.update();
- ready = true;
- run_all($$.before_update);
- // `false` as a special case of no DOM component
- $$.fragment = create_fragment ? create_fragment($$.ctx) : false;
- if (options.target) {
- if (options.hydrate) {
- const nodes = children(options.target);
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.l(nodes);
- nodes.forEach(detach);
- }
- else {
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.c();
- }
- if (options.intro)
- transition_in(component.$$.fragment);
- mount_component(component, options.target, options.anchor, options.customElement);
- flush();
- }
- set_current_component(parent_component);
-}
-let SvelteElement;
-if (typeof HTMLElement === 'function') {
- SvelteElement = class extends HTMLElement {
- constructor() {
- super();
- this.attachShadow({ mode: 'open' });
- }
- connectedCallback() {
- const { on_mount } = this.$$;
- this.$$.on_disconnect = on_mount.map(run).filter(is_function);
- // @ts-ignore todo: improve typings
- for (const key in this.$$.slotted) {
- // @ts-ignore todo: improve typings
- this.appendChild(this.$$.slotted[key]);
- }
- }
- attributeChangedCallback(attr, _oldValue, newValue) {
- this[attr] = newValue;
- }
- disconnectedCallback() {
- run_all(this.$$.on_disconnect);
- }
- $destroy() {
- destroy_component(this, 1);
- this.$destroy = noop;
- }
- $on(type, callback) {
- // TODO should this delegate to addEventListener?
- if (!is_function(callback)) {
- return noop;
- }
- const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));
- callbacks.push(callback);
- return () => {
- const index = callbacks.indexOf(callback);
- if (index !== -1)
- callbacks.splice(index, 1);
- };
- }
- $set($$props) {
- if (this.$$set && !is_empty($$props)) {
- this.$$.skip_bound = true;
- this.$$set($$props);
- this.$$.skip_bound = false;
- }
- }
- };
-}
-
-function dispatch_dev(type, detail) {
- document.dispatchEvent(custom_event(type, Object.assign({ version: '3.52.0' }, detail), { bubbles: true }));
-}
-function append_dev(target, node) {
- dispatch_dev('SvelteDOMInsert', { target, node });
- append(target, node);
-}
-function insert_dev(target, node, anchor) {
- dispatch_dev('SvelteDOMInsert', { target, node, anchor });
- insert(target, node, anchor);
-}
-function detach_dev(node) {
- dispatch_dev('SvelteDOMRemove', { node });
- detach(node);
-}
-function listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) {
- const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : [];
- if (has_prevent_default)
- modifiers.push('preventDefault');
- if (has_stop_propagation)
- modifiers.push('stopPropagation');
- dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers });
- const dispose = listen(node, event, handler, options);
- return () => {
- dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers });
- dispose();
- };
-}
-function attr_dev(node, attribute, value) {
- attr(node, attribute, value);
- if (value == null)
- dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute });
- else
- dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value });
-}
-function prop_dev(node, property, value) {
- node[property] = value;
- dispatch_dev('SvelteDOMSetProperty', { node, property, value });
-}
-function set_data_dev(text, data) {
- data = '' + data;
- if (text.wholeText === data)
- return;
- dispatch_dev('SvelteDOMSetData', { node: text, data });
- text.data = data;
-}
-function validate_each_argument(arg) {
- if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) {
- let msg = '{#each} only iterates over array-like objects.';
- if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) {
- msg += ' You can use a spread to convert this iterable into an array.';
- }
- throw new Error(msg);
- }
-}
-function validate_slots(name, slot, keys) {
- for (const slot_key of Object.keys(slot)) {
- if (!~keys.indexOf(slot_key)) {
- console.warn(`<${name}> received an unexpected slot "${slot_key}".`);
- }
- }
-}
-
-export { binding_callbacks as A, set_style as B, listen_dev as C, getContext as D, setContext as E, run_all as F, svg_element as G, is_function as H, HtmlTag as I, SvelteElement as S, attribute_to_object as a, insert_dev as b, validate_store as c, dispatch_dev as d, component_subscribe as e, validate_each_argument as f, globals as g, empty as h, init as i, detach_dev as j, element as k, space as l, add_location as m, noop as n, onMount as o, attr_dev as p, src_url_equal as q, set_custom_element_data as r, safe_not_equal as s, text as t, append_dev as u, validate_slots as v, set_data_dev as w, destroy_each as x, prop_dev as y, flush as z };
diff --git a/Server/public/js/components/index-6955b43d.js b/Server/public/js/components/index-6955b43d.js
deleted file mode 100644
index a13d879..0000000
--- a/Server/public/js/components/index-6955b43d.js
+++ /dev/null
@@ -1,53 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-import { n as noop, s as safe_not_equal } from './index-54dd49e1.js';
-
-const subscriber_queue = [];
-/**
- * Create a `Writable` store that allows both updating and reading by subscription.
- * @param {*=}value initial value
- * @param {StartStopNotifier=}start start and stop notifications for subscriptions
- */
-function writable(value, start = noop) {
- let stop;
- const subscribers = new Set();
- function set(new_value) {
- if (safe_not_equal(value, new_value)) {
- value = new_value;
- if (stop) { // store is ready
- const run_queue = !subscriber_queue.length;
- for (const subscriber of subscribers) {
- subscriber[1]();
- subscriber_queue.push(subscriber, value);
- }
- if (run_queue) {
- for (let i = 0; i < subscriber_queue.length; i += 2) {
- subscriber_queue[i][0](subscriber_queue[i + 1]);
- }
- subscriber_queue.length = 0;
- }
- }
- }
- }
- function update(fn) {
- set(fn(value));
- }
- function subscribe(run, invalidate = noop) {
- const subscriber = [run, invalidate];
- subscribers.add(subscriber);
- if (subscribers.size === 1) {
- stop = start(set) || noop;
- }
- run(value);
- return () => {
- subscribers.delete(subscriber);
- if (subscribers.size === 0) {
- stop();
- stop = null;
- }
- };
- }
- return { set, update, subscribe };
-}
-
-export { writable as w };
diff --git a/Server/public/js/components/index-6a7bc1e2.js b/Server/public/js/components/index-6a7bc1e2.js
deleted file mode 100644
index c134458..0000000
--- a/Server/public/js/components/index-6a7bc1e2.js
+++ /dev/null
@@ -1 +0,0 @@
-function t(){}function n(t){return t()}function e(){return Object.create(null)}function o(t){t.forEach(n)}function s(t){return"function"==typeof t}function r(t,n){return t!=t?n==n:t!==n||t&&"object"==typeof t||"function"==typeof t}let i,c;function u(t,n){return i||(i=document.createElement("a")),i.href=n,t===i.href}function a(n,e,o){n.$$.on_destroy.push(function(n,...e){if(null==n)return t;const o=n.subscribe(...e);return o.unsubscribe?()=>o.unsubscribe():o}(e,o))}function f(t,n){t.appendChild(n)}function l(t,n,e){t.insertBefore(n,e||null)}function h(t){t.parentNode.removeChild(t)}function d(t,n){for(let e=0;et.removeEventListener(n,e,o)}function y(t,n,e){null==e?t.removeAttribute(n):t.getAttribute(n)!==e&&t.setAttribute(n,e)}function _(t,n,e){n in t?t[n]="boolean"==typeof t[n]&&""===e||e:y(t,n,e)}function x(t){return""===t?null:+t}function v(t,n){n=""+n,t.wholeText!==n&&(t.data=n)}function E(t,n){t.value=null==n?"":n}function w(t,n,e,o){null===e?t.style.removeProperty(n):t.style.setProperty(n,e,o?"important":"")}class k{constructor(t=!1){this.is_svg=!1,this.is_svg=t,this.e=this.n=null}c(t){this.h(t)}m(t,n,e=null){var o;this.e||(this.is_svg?this.e=(o=n.nodeName,document.createElementNS("http://www.w3.org/2000/svg",o)):this.e=$(n.nodeName),this.t=n,this.c(t)),this.i(e)}h(t){this.e.innerHTML=t,this.n=Array.from(this.e.childNodes)}i(t){for(let n=0;n{const o=e.length?e[0]:n;return m.ctx&&f(m.ctx[t],m.ctx[t]=o)&&(!m.skip_bound&&m.bound[t]&&m.bound[t](o),g&&J(r,t)),n})):[],m.update(),g=!0,o(m.before_update),m.fragment=!!a&&a(m.ctx),i.target){if(i.hydrate){const t=function(t){return Array.from(t.childNodes)}(i.target);m.fragment&&m.fragment.l(t),t.forEach(h)}else m.fragment&&m.fragment.c();i.intro&&((b=r.$$.fragment)&&b.i&&(I.delete(b),b.i(y))),function(t,e,r,i){const{fragment:c,after_update:u}=t.$$;c&&c.m(e,r),i||z((()=>{const e=t.$$.on_mount.map(n).filter(s);t.$$.on_destroy?t.$$.on_destroy.push(...e):o(e),t.$$.on_mount=[]})),u.forEach(z)}(r,i.target,i.anchor,i.customElement),D()}var b,y;N(p)}let Q;"function"==typeof HTMLElement&&(Q=class extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"})}connectedCallback(){const{on_mount:t}=this.$$;this.$$.on_disconnect=t.map(n).filter(s);for(const t in this.$$.slotted)this.appendChild(this.$$.slotted[t])}attributeChangedCallback(t,n,e){this[t]=e}disconnectedCallback(){o(this.$$.on_disconnect)}$destroy(){!function(t,n){const e=t.$$;null!==e.fragment&&(o(e.on_destroy),e.fragment&&e.fragment.d(n),e.on_destroy=e.fragment=null,e.ctx=[])}(this,1),this.$destroy=t}$on(n,e){if(!s(e))return t;const o=this.$$.callbacks[n]||(this.$$.callbacks[n]=[]);return o.push(e),()=>{const t=o.indexOf(e);-1!==t&&o.splice(t,1)}}$set(t){var n;this.$$set&&(n=t,0!==Object.keys(n).length)&&(this.$$.skip_bound=!0,this.$$set(t),this.$$.skip_bound=!1)}});export{x as A,E as B,k as H,Q as S,C as a,l as b,m as c,y as d,$ as e,f,h as g,S as h,K as i,H as j,D as k,b as l,T as m,t as n,L as o,s as p,g as q,o as r,r as s,p as t,a as u,u as v,_ as w,v as x,d as y,w as z};
diff --git a/Server/public/js/components/index-6b4fe380.js b/Server/public/js/components/index-6b4fe380.js
deleted file mode 100644
index fd89321..0000000
--- a/Server/public/js/components/index-6b4fe380.js
+++ /dev/null
@@ -1,521 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-function noop() { }
-function add_location(element, file, line, column, char) {
- element.__svelte_meta = {
- loc: { file, line, column, char }
- };
-}
-function run(fn) {
- return fn();
-}
-function blank_object() {
- return Object.create(null);
-}
-function run_all(fns) {
- fns.forEach(run);
-}
-function is_function(thing) {
- return typeof thing === 'function';
-}
-function safe_not_equal(a, b) {
- return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');
-}
-let src_url_equal_anchor;
-function src_url_equal(element_src, url) {
- if (!src_url_equal_anchor) {
- src_url_equal_anchor = document.createElement('a');
- }
- src_url_equal_anchor.href = url;
- return element_src === src_url_equal_anchor.href;
-}
-function is_empty(obj) {
- return Object.keys(obj).length === 0;
-}
-function validate_store(store, name) {
- if (store != null && typeof store.subscribe !== 'function') {
- throw new Error(`'${name}' is not a store with a 'subscribe' method`);
- }
-}
-function subscribe(store, ...callbacks) {
- if (store == null) {
- return noop;
- }
- const unsub = store.subscribe(...callbacks);
- return unsub.unsubscribe ? () => unsub.unsubscribe() : unsub;
-}
-function component_subscribe(component, store, callback) {
- component.$$.on_destroy.push(subscribe(store, callback));
-}
-function append(target, node) {
- target.appendChild(node);
-}
-function insert(target, node, anchor) {
- target.insertBefore(node, anchor || null);
-}
-function detach(node) {
- node.parentNode.removeChild(node);
-}
-function destroy_each(iterations, detaching) {
- for (let i = 0; i < iterations.length; i += 1) {
- if (iterations[i])
- iterations[i].d(detaching);
- }
-}
-function element(name) {
- return document.createElement(name);
-}
-function svg_element(name) {
- return document.createElementNS('http://www.w3.org/2000/svg', name);
-}
-function text(data) {
- return document.createTextNode(data);
-}
-function space() {
- return text(' ');
-}
-function empty() {
- return text('');
-}
-function listen(node, event, handler, options) {
- node.addEventListener(event, handler, options);
- return () => node.removeEventListener(event, handler, options);
-}
-function attr(node, attribute, value) {
- if (value == null)
- node.removeAttribute(attribute);
- else if (node.getAttribute(attribute) !== value)
- node.setAttribute(attribute, value);
-}
-function set_custom_element_data(node, prop, value) {
- if (prop in node) {
- node[prop] = typeof node[prop] === 'boolean' && value === '' ? true : value;
- }
- else {
- attr(node, prop, value);
- }
-}
-function children(element) {
- return Array.from(element.childNodes);
-}
-function set_style(node, key, value, important) {
- if (value === null) {
- node.style.removeProperty(key);
- }
- else {
- node.style.setProperty(key, value, important ? 'important' : '');
- }
-}
-function custom_event(type, detail, { bubbles = false, cancelable = false } = {}) {
- const e = document.createEvent('CustomEvent');
- e.initCustomEvent(type, bubbles, cancelable, detail);
- return e;
-}
-class HtmlTag {
- constructor(is_svg = false) {
- this.is_svg = false;
- this.is_svg = is_svg;
- this.e = this.n = null;
- }
- c(html) {
- this.h(html);
- }
- m(html, target, anchor = null) {
- if (!this.e) {
- if (this.is_svg)
- this.e = svg_element(target.nodeName);
- else
- this.e = element(target.nodeName);
- this.t = target;
- this.c(html);
- }
- this.i(anchor);
- }
- h(html) {
- this.e.innerHTML = html;
- this.n = Array.from(this.e.childNodes);
- }
- i(anchor) {
- for (let i = 0; i < this.n.length; i += 1) {
- insert(this.t, this.n[i], anchor);
- }
- }
- p(html) {
- this.d();
- this.h(html);
- this.i(this.a);
- }
- d() {
- this.n.forEach(detach);
- }
-}
-function attribute_to_object(attributes) {
- const result = {};
- for (const attribute of attributes) {
- result[attribute.name] = attribute.value;
- }
- return result;
-}
-
-let current_component;
-function set_current_component(component) {
- current_component = component;
-}
-function get_current_component() {
- if (!current_component)
- throw new Error('Function called outside component initialization');
- return current_component;
-}
-/**
- * The `onMount` function schedules a callback to run as soon as the component has been mounted to the DOM.
- * It must be called during the component's initialisation (but doesn't need to live *inside* the component;
- * it can be called from an external module).
- *
- * `onMount` does not run inside a [server-side component](/docs#run-time-server-side-component-api).
- *
- * https://svelte.dev/docs#run-time-svelte-onmount
- */
-function onMount(fn) {
- get_current_component().$$.on_mount.push(fn);
-}
-/**
- * Schedules a callback to run immediately after the component has been updated.
- *
- * The first time the callback runs will be after the initial `onMount`
- */
-function afterUpdate(fn) {
- get_current_component().$$.after_update.push(fn);
-}
-/**
- * Associates an arbitrary `context` object with the current component and the specified `key`
- * and returns that object. The context is then available to children of the component
- * (including slotted content) with `getContext`.
- *
- * Like lifecycle functions, this must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-setcontext
- */
-function setContext(key, context) {
- get_current_component().$$.context.set(key, context);
- return context;
-}
-/**
- * Retrieves the context that belongs to the closest parent component with the specified `key`.
- * Must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-getcontext
- */
-function getContext(key) {
- return get_current_component().$$.context.get(key);
-}
-
-const dirty_components = [];
-const binding_callbacks = [];
-const render_callbacks = [];
-const flush_callbacks = [];
-const resolved_promise = Promise.resolve();
-let update_scheduled = false;
-function schedule_update() {
- if (!update_scheduled) {
- update_scheduled = true;
- resolved_promise.then(flush);
- }
-}
-function add_render_callback(fn) {
- render_callbacks.push(fn);
-}
-// flush() calls callbacks in this order:
-// 1. All beforeUpdate callbacks, in order: parents before children
-// 2. All bind:this callbacks, in reverse order: children before parents.
-// 3. All afterUpdate callbacks, in order: parents before children. EXCEPT
-// for afterUpdates called during the initial onMount, which are called in
-// reverse order: children before parents.
-// Since callbacks might update component values, which could trigger another
-// call to flush(), the following steps guard against this:
-// 1. During beforeUpdate, any updated components will be added to the
-// dirty_components array and will cause a reentrant call to flush(). Because
-// the flush index is kept outside the function, the reentrant call will pick
-// up where the earlier call left off and go through all dirty components. The
-// current_component value is saved and restored so that the reentrant call will
-// not interfere with the "parent" flush() call.
-// 2. bind:this callbacks cannot trigger new flush() calls.
-// 3. During afterUpdate, any updated components will NOT have their afterUpdate
-// callback called a second time; the seen_callbacks set, outside the flush()
-// function, guarantees this behavior.
-const seen_callbacks = new Set();
-let flushidx = 0; // Do *not* move this inside the flush() function
-function flush() {
- const saved_component = current_component;
- do {
- // first, call beforeUpdate functions
- // and update components
- while (flushidx < dirty_components.length) {
- const component = dirty_components[flushidx];
- flushidx++;
- set_current_component(component);
- update(component.$$);
- }
- set_current_component(null);
- dirty_components.length = 0;
- flushidx = 0;
- while (binding_callbacks.length)
- binding_callbacks.pop()();
- // then, once components are updated, call
- // afterUpdate functions. This may cause
- // subsequent updates...
- for (let i = 0; i < render_callbacks.length; i += 1) {
- const callback = render_callbacks[i];
- if (!seen_callbacks.has(callback)) {
- // ...so guard against infinite loops
- seen_callbacks.add(callback);
- callback();
- }
- }
- render_callbacks.length = 0;
- } while (dirty_components.length);
- while (flush_callbacks.length) {
- flush_callbacks.pop()();
- }
- update_scheduled = false;
- seen_callbacks.clear();
- set_current_component(saved_component);
-}
-function update($$) {
- if ($$.fragment !== null) {
- $$.update();
- run_all($$.before_update);
- const dirty = $$.dirty;
- $$.dirty = [-1];
- $$.fragment && $$.fragment.p($$.ctx, dirty);
- $$.after_update.forEach(add_render_callback);
- }
-}
-const outroing = new Set();
-function transition_in(block, local) {
- if (block && block.i) {
- outroing.delete(block);
- block.i(local);
- }
-}
-
-const globals = (typeof window !== 'undefined'
- ? window
- : typeof globalThis !== 'undefined'
- ? globalThis
- : global);
-function mount_component(component, target, anchor, customElement) {
- const { fragment, after_update } = component.$$;
- fragment && fragment.m(target, anchor);
- if (!customElement) {
- // onMount happens before the initial afterUpdate
- add_render_callback(() => {
- const new_on_destroy = component.$$.on_mount.map(run).filter(is_function);
- // if the component was destroyed immediately
- // it will update the `$$.on_destroy` reference to `null`.
- // the destructured on_destroy may still reference to the old array
- if (component.$$.on_destroy) {
- component.$$.on_destroy.push(...new_on_destroy);
- }
- else {
- // Edge case - component was destroyed immediately,
- // most likely as a result of a binding initialising
- run_all(new_on_destroy);
- }
- component.$$.on_mount = [];
- });
- }
- after_update.forEach(add_render_callback);
-}
-function destroy_component(component, detaching) {
- const $$ = component.$$;
- if ($$.fragment !== null) {
- run_all($$.on_destroy);
- $$.fragment && $$.fragment.d(detaching);
- // TODO null out other refs, including component.$$ (but need to
- // preserve final state?)
- $$.on_destroy = $$.fragment = null;
- $$.ctx = [];
- }
-}
-function make_dirty(component, i) {
- if (component.$$.dirty[0] === -1) {
- dirty_components.push(component);
- schedule_update();
- component.$$.dirty.fill(0);
- }
- component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31));
-}
-function init(component, options, instance, create_fragment, not_equal, props, append_styles, dirty = [-1]) {
- const parent_component = current_component;
- set_current_component(component);
- const $$ = component.$$ = {
- fragment: null,
- ctx: [],
- // state
- props,
- update: noop,
- not_equal,
- bound: blank_object(),
- // lifecycle
- on_mount: [],
- on_destroy: [],
- on_disconnect: [],
- before_update: [],
- after_update: [],
- context: new Map(options.context || (parent_component ? parent_component.$$.context : [])),
- // everything else
- callbacks: blank_object(),
- dirty,
- skip_bound: false,
- root: options.target || parent_component.$$.root
- };
- append_styles && append_styles($$.root);
- let ready = false;
- $$.ctx = instance
- ? instance(component, options.props || {}, (i, ret, ...rest) => {
- const value = rest.length ? rest[0] : ret;
- if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {
- if (!$$.skip_bound && $$.bound[i])
- $$.bound[i](value);
- if (ready)
- make_dirty(component, i);
- }
- return ret;
- })
- : [];
- $$.update();
- ready = true;
- run_all($$.before_update);
- // `false` as a special case of no DOM component
- $$.fragment = create_fragment ? create_fragment($$.ctx) : false;
- if (options.target) {
- if (options.hydrate) {
- const nodes = children(options.target);
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.l(nodes);
- nodes.forEach(detach);
- }
- else {
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.c();
- }
- if (options.intro)
- transition_in(component.$$.fragment);
- mount_component(component, options.target, options.anchor, options.customElement);
- flush();
- }
- set_current_component(parent_component);
-}
-let SvelteElement;
-if (typeof HTMLElement === 'function') {
- SvelteElement = class extends HTMLElement {
- constructor() {
- super();
- this.attachShadow({ mode: 'open' });
- }
- connectedCallback() {
- const { on_mount } = this.$$;
- this.$$.on_disconnect = on_mount.map(run).filter(is_function);
- // @ts-ignore todo: improve typings
- for (const key in this.$$.slotted) {
- // @ts-ignore todo: improve typings
- this.appendChild(this.$$.slotted[key]);
- }
- }
- attributeChangedCallback(attr, _oldValue, newValue) {
- this[attr] = newValue;
- }
- disconnectedCallback() {
- run_all(this.$$.on_disconnect);
- }
- $destroy() {
- destroy_component(this, 1);
- this.$destroy = noop;
- }
- $on(type, callback) {
- // TODO should this delegate to addEventListener?
- if (!is_function(callback)) {
- return noop;
- }
- const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));
- callbacks.push(callback);
- return () => {
- const index = callbacks.indexOf(callback);
- if (index !== -1)
- callbacks.splice(index, 1);
- };
- }
- $set($$props) {
- if (this.$$set && !is_empty($$props)) {
- this.$$.skip_bound = true;
- this.$$set($$props);
- this.$$.skip_bound = false;
- }
- }
- };
-}
-
-function dispatch_dev(type, detail) {
- document.dispatchEvent(custom_event(type, Object.assign({ version: '3.52.0' }, detail), { bubbles: true }));
-}
-function append_dev(target, node) {
- dispatch_dev('SvelteDOMInsert', { target, node });
- append(target, node);
-}
-function insert_dev(target, node, anchor) {
- dispatch_dev('SvelteDOMInsert', { target, node, anchor });
- insert(target, node, anchor);
-}
-function detach_dev(node) {
- dispatch_dev('SvelteDOMRemove', { node });
- detach(node);
-}
-function listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) {
- const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : [];
- if (has_prevent_default)
- modifiers.push('preventDefault');
- if (has_stop_propagation)
- modifiers.push('stopPropagation');
- dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers });
- const dispose = listen(node, event, handler, options);
- return () => {
- dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers });
- dispose();
- };
-}
-function attr_dev(node, attribute, value) {
- attr(node, attribute, value);
- if (value == null)
- dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute });
- else
- dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value });
-}
-function prop_dev(node, property, value) {
- node[property] = value;
- dispatch_dev('SvelteDOMSetProperty', { node, property, value });
-}
-function set_data_dev(text, data) {
- data = '' + data;
- if (text.wholeText === data)
- return;
- dispatch_dev('SvelteDOMSetData', { node: text, data });
- text.data = data;
-}
-function validate_each_argument(arg) {
- if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) {
- let msg = '{#each} only iterates over array-like objects.';
- if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) {
- msg += ' You can use a spread to convert this iterable into an array.';
- }
- throw new Error(msg);
- }
-}
-function validate_slots(name, slot, keys) {
- for (const slot_key of Object.keys(slot)) {
- if (!~keys.indexOf(slot_key)) {
- console.warn(`<${name}> received an unexpected slot "${slot_key}".`);
- }
- }
-}
-
-export { validate_each_argument as A, text as B, set_data_dev as C, destroy_each as D, prop_dev as E, set_style as F, svg_element as G, is_function as H, HtmlTag as I, afterUpdate as J, SvelteElement as S, attribute_to_object as a, insert_dev as b, setContext as c, dispatch_dev as d, globals as e, element as f, getContext as g, space as h, init as i, add_location as j, attr_dev as k, append_dev as l, listen_dev as m, noop as n, onMount as o, detach_dev as p, binding_callbacks as q, run_all as r, safe_not_equal as s, flush as t, src_url_equal as u, validate_slots as v, validate_store as w, component_subscribe as x, empty as y, set_custom_element_data as z };
diff --git a/Server/public/js/components/index-6e99513e.js b/Server/public/js/components/index-6e99513e.js
deleted file mode 100644
index 1eaa1a0..0000000
--- a/Server/public/js/components/index-6e99513e.js
+++ /dev/null
@@ -1 +0,0 @@
-function t(){}function n(t){return t()}function e(){return Object.create(null)}function o(t){t.forEach(n)}function s(t){return"function"==typeof t}function r(t,n){return t!=t?n==n:t!==n||t&&"object"==typeof t||"function"==typeof t}let i,c;function u(t,n){return i||(i=document.createElement("a")),i.href=n,t===i.href}function a(n,e,o){n.$$.on_destroy.push(function(n,...e){if(null==n)return t;const o=n.subscribe(...e);return o.unsubscribe?()=>o.unsubscribe():o}(e,o))}function f(t,n){t.appendChild(n)}function l(t,n,e){t.insertBefore(n,e||null)}function h(t){t.parentNode.removeChild(t)}function d(t,n){for(let e=0;et.removeEventListener(n,e,o)}function y(t,n,e){null==e?t.removeAttribute(n):t.getAttribute(n)!==e&&t.setAttribute(n,e)}function _(t,n,e){n in t?t[n]="boolean"==typeof t[n]&&""===e||e:y(t,n,e)}function x(t){return""===t?null:+t}function v(t,n){n=""+n,t.wholeText!==n&&(t.data=n)}function E(t,n){t.value=null==n?"":n}function w(t,n,e,o){null===e?t.style.removeProperty(n):t.style.setProperty(n,e,o?"important":"")}class k{constructor(t=!1){this.is_svg=!1,this.is_svg=t,this.e=this.n=null}c(t){this.h(t)}m(t,n,e=null){var o;this.e||(this.is_svg?this.e=(o=n.nodeName,document.createElementNS("http://www.w3.org/2000/svg",o)):this.e=$(n.nodeName),this.t=n,this.c(t)),this.i(e)}h(t){this.e.innerHTML=t,this.n=Array.from(this.e.childNodes)}i(t){for(let n=0;n{const o=e.length?e[0]:n;return m.ctx&&f(m.ctx[t],m.ctx[t]=o)&&(!m.skip_bound&&m.bound[t]&&m.bound[t](o),g&&J(r,t)),n})):[],m.update(),g=!0,o(m.before_update),m.fragment=!!a&&a(m.ctx),i.target){if(i.hydrate){const t=function(t){return Array.from(t.childNodes)}(i.target);m.fragment&&m.fragment.l(t),t.forEach(h)}else m.fragment&&m.fragment.c();i.intro&&((b=r.$$.fragment)&&b.i&&(I.delete(b),b.i(y))),function(t,e,r,i){const{fragment:c,after_update:u}=t.$$;c&&c.m(e,r),i||z((()=>{const e=t.$$.on_mount.map(n).filter(s);t.$$.on_destroy?t.$$.on_destroy.push(...e):o(e),t.$$.on_mount=[]})),u.forEach(z)}(r,i.target,i.anchor,i.customElement),D()}var b,y;N(p)}let Q;"function"==typeof HTMLElement&&(Q=class extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"})}connectedCallback(){const{on_mount:t}=this.$$;this.$$.on_disconnect=t.map(n).filter(s);for(const t in this.$$.slotted)this.appendChild(this.$$.slotted[t])}attributeChangedCallback(t,n,e){this[t]=e}disconnectedCallback(){o(this.$$.on_disconnect)}$destroy(){!function(t,n){const e=t.$$;null!==e.fragment&&(o(e.on_destroy),e.fragment&&e.fragment.d(n),e.on_destroy=e.fragment=null,e.ctx=[])}(this,1),this.$destroy=t}$on(n,e){if(!s(e))return t;const o=this.$$.callbacks[n]||(this.$$.callbacks[n]=[]);return o.push(e),()=>{const t=o.indexOf(e);-1!==t&&o.splice(t,1)}}$set(t){var n;this.$$set&&(n=t,0!==Object.keys(n).length)&&(this.$$.skip_bound=!0,this.$$set(t),this.$$.skip_bound=!1)}});export{x as A,E as B,k as H,Q as S,C as a,l as b,m as c,y as d,$ as e,f,h as g,S as h,K as i,H as j,D as k,b as l,T as m,t as n,L as o,s as p,g as q,o as r,r as s,a as t,u,_ as v,p as w,v as x,d as y,w as z};
diff --git a/Server/public/js/components/index-71440b21.js b/Server/public/js/components/index-71440b21.js
deleted file mode 100644
index 417b6af..0000000
--- a/Server/public/js/components/index-71440b21.js
+++ /dev/null
@@ -1 +0,0 @@
-import{n,s as t}from"./index-4348483d.js";const e=[];function s(s,o=n){let i;const c=new Set;function f(n){if(t(s,n)&&(s=n,i)){const n=!e.length;for(const n of c)n[1](),e.push(n,s);if(n){for(let n=0;n{c.delete(r),0===c.size&&(i(),i=null)}}}}export{s as w};
diff --git a/Server/public/js/components/index-71f03132.js b/Server/public/js/components/index-71f03132.js
deleted file mode 100644
index 6c034e1..0000000
--- a/Server/public/js/components/index-71f03132.js
+++ /dev/null
@@ -1,445 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-function noop() { }
-function add_location(element, file, line, column, char) {
- element.__svelte_meta = {
- loc: { file, line, column, char }
- };
-}
-function run(fn) {
- return fn();
-}
-function blank_object() {
- return Object.create(null);
-}
-function run_all(fns) {
- fns.forEach(run);
-}
-function is_function(thing) {
- return typeof thing === 'function';
-}
-function safe_not_equal(a, b) {
- return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');
-}
-let src_url_equal_anchor;
-function src_url_equal(element_src, url) {
- if (!src_url_equal_anchor) {
- src_url_equal_anchor = document.createElement('a');
- }
- src_url_equal_anchor.href = url;
- return element_src === src_url_equal_anchor.href;
-}
-function is_empty(obj) {
- return Object.keys(obj).length === 0;
-}
-function append(target, node) {
- target.appendChild(node);
-}
-function insert(target, node, anchor) {
- target.insertBefore(node, anchor || null);
-}
-function detach(node) {
- node.parentNode.removeChild(node);
-}
-function destroy_each(iterations, detaching) {
- for (let i = 0; i < iterations.length; i += 1) {
- if (iterations[i])
- iterations[i].d(detaching);
- }
-}
-function element(name) {
- return document.createElement(name);
-}
-function svg_element(name) {
- return document.createElementNS('http://www.w3.org/2000/svg', name);
-}
-function text(data) {
- return document.createTextNode(data);
-}
-function space() {
- return text(' ');
-}
-function listen(node, event, handler, options) {
- node.addEventListener(event, handler, options);
- return () => node.removeEventListener(event, handler, options);
-}
-function attr(node, attribute, value) {
- if (value == null)
- node.removeAttribute(attribute);
- else if (node.getAttribute(attribute) !== value)
- node.setAttribute(attribute, value);
-}
-function children(element) {
- return Array.from(element.childNodes);
-}
-function set_style(node, key, value, important) {
- if (value === null) {
- node.style.removeProperty(key);
- }
- else {
- node.style.setProperty(key, value, important ? 'important' : '');
- }
-}
-function custom_event(type, detail, { bubbles = false, cancelable = false } = {}) {
- const e = document.createEvent('CustomEvent');
- e.initCustomEvent(type, bubbles, cancelable, detail);
- return e;
-}
-function attribute_to_object(attributes) {
- const result = {};
- for (const attribute of attributes) {
- result[attribute.name] = attribute.value;
- }
- return result;
-}
-
-let current_component;
-function set_current_component(component) {
- current_component = component;
-}
-function get_current_component() {
- if (!current_component)
- throw new Error('Function called outside component initialization');
- return current_component;
-}
-/**
- * The `onMount` function schedules a callback to run as soon as the component has been mounted to the DOM.
- * It must be called during the component's initialisation (but doesn't need to live *inside* the component;
- * it can be called from an external module).
- *
- * `onMount` does not run inside a [server-side component](/docs#run-time-server-side-component-api).
- *
- * https://svelte.dev/docs#run-time-svelte-onmount
- */
-function onMount(fn) {
- get_current_component().$$.on_mount.push(fn);
-}
-/**
- * Associates an arbitrary `context` object with the current component and the specified `key`
- * and returns that object. The context is then available to children of the component
- * (including slotted content) with `getContext`.
- *
- * Like lifecycle functions, this must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-setcontext
- */
-function setContext(key, context) {
- get_current_component().$$.context.set(key, context);
- return context;
-}
-/**
- * Retrieves the context that belongs to the closest parent component with the specified `key`.
- * Must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-getcontext
- */
-function getContext(key) {
- return get_current_component().$$.context.get(key);
-}
-
-const dirty_components = [];
-const binding_callbacks = [];
-const render_callbacks = [];
-const flush_callbacks = [];
-const resolved_promise = Promise.resolve();
-let update_scheduled = false;
-function schedule_update() {
- if (!update_scheduled) {
- update_scheduled = true;
- resolved_promise.then(flush);
- }
-}
-function add_render_callback(fn) {
- render_callbacks.push(fn);
-}
-// flush() calls callbacks in this order:
-// 1. All beforeUpdate callbacks, in order: parents before children
-// 2. All bind:this callbacks, in reverse order: children before parents.
-// 3. All afterUpdate callbacks, in order: parents before children. EXCEPT
-// for afterUpdates called during the initial onMount, which are called in
-// reverse order: children before parents.
-// Since callbacks might update component values, which could trigger another
-// call to flush(), the following steps guard against this:
-// 1. During beforeUpdate, any updated components will be added to the
-// dirty_components array and will cause a reentrant call to flush(). Because
-// the flush index is kept outside the function, the reentrant call will pick
-// up where the earlier call left off and go through all dirty components. The
-// current_component value is saved and restored so that the reentrant call will
-// not interfere with the "parent" flush() call.
-// 2. bind:this callbacks cannot trigger new flush() calls.
-// 3. During afterUpdate, any updated components will NOT have their afterUpdate
-// callback called a second time; the seen_callbacks set, outside the flush()
-// function, guarantees this behavior.
-const seen_callbacks = new Set();
-let flushidx = 0; // Do *not* move this inside the flush() function
-function flush() {
- const saved_component = current_component;
- do {
- // first, call beforeUpdate functions
- // and update components
- while (flushidx < dirty_components.length) {
- const component = dirty_components[flushidx];
- flushidx++;
- set_current_component(component);
- update(component.$$);
- }
- set_current_component(null);
- dirty_components.length = 0;
- flushidx = 0;
- while (binding_callbacks.length)
- binding_callbacks.pop()();
- // then, once components are updated, call
- // afterUpdate functions. This may cause
- // subsequent updates...
- for (let i = 0; i < render_callbacks.length; i += 1) {
- const callback = render_callbacks[i];
- if (!seen_callbacks.has(callback)) {
- // ...so guard against infinite loops
- seen_callbacks.add(callback);
- callback();
- }
- }
- render_callbacks.length = 0;
- } while (dirty_components.length);
- while (flush_callbacks.length) {
- flush_callbacks.pop()();
- }
- update_scheduled = false;
- seen_callbacks.clear();
- set_current_component(saved_component);
-}
-function update($$) {
- if ($$.fragment !== null) {
- $$.update();
- run_all($$.before_update);
- const dirty = $$.dirty;
- $$.dirty = [-1];
- $$.fragment && $$.fragment.p($$.ctx, dirty);
- $$.after_update.forEach(add_render_callback);
- }
-}
-const outroing = new Set();
-function transition_in(block, local) {
- if (block && block.i) {
- outroing.delete(block);
- block.i(local);
- }
-}
-
-const globals = (typeof window !== 'undefined'
- ? window
- : typeof globalThis !== 'undefined'
- ? globalThis
- : global);
-function mount_component(component, target, anchor, customElement) {
- const { fragment, after_update } = component.$$;
- fragment && fragment.m(target, anchor);
- if (!customElement) {
- // onMount happens before the initial afterUpdate
- add_render_callback(() => {
- const new_on_destroy = component.$$.on_mount.map(run).filter(is_function);
- // if the component was destroyed immediately
- // it will update the `$$.on_destroy` reference to `null`.
- // the destructured on_destroy may still reference to the old array
- if (component.$$.on_destroy) {
- component.$$.on_destroy.push(...new_on_destroy);
- }
- else {
- // Edge case - component was destroyed immediately,
- // most likely as a result of a binding initialising
- run_all(new_on_destroy);
- }
- component.$$.on_mount = [];
- });
- }
- after_update.forEach(add_render_callback);
-}
-function destroy_component(component, detaching) {
- const $$ = component.$$;
- if ($$.fragment !== null) {
- run_all($$.on_destroy);
- $$.fragment && $$.fragment.d(detaching);
- // TODO null out other refs, including component.$$ (but need to
- // preserve final state?)
- $$.on_destroy = $$.fragment = null;
- $$.ctx = [];
- }
-}
-function make_dirty(component, i) {
- if (component.$$.dirty[0] === -1) {
- dirty_components.push(component);
- schedule_update();
- component.$$.dirty.fill(0);
- }
- component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31));
-}
-function init(component, options, instance, create_fragment, not_equal, props, append_styles, dirty = [-1]) {
- const parent_component = current_component;
- set_current_component(component);
- const $$ = component.$$ = {
- fragment: null,
- ctx: [],
- // state
- props,
- update: noop,
- not_equal,
- bound: blank_object(),
- // lifecycle
- on_mount: [],
- on_destroy: [],
- on_disconnect: [],
- before_update: [],
- after_update: [],
- context: new Map(options.context || (parent_component ? parent_component.$$.context : [])),
- // everything else
- callbacks: blank_object(),
- dirty,
- skip_bound: false,
- root: options.target || parent_component.$$.root
- };
- append_styles && append_styles($$.root);
- let ready = false;
- $$.ctx = instance
- ? instance(component, options.props || {}, (i, ret, ...rest) => {
- const value = rest.length ? rest[0] : ret;
- if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {
- if (!$$.skip_bound && $$.bound[i])
- $$.bound[i](value);
- if (ready)
- make_dirty(component, i);
- }
- return ret;
- })
- : [];
- $$.update();
- ready = true;
- run_all($$.before_update);
- // `false` as a special case of no DOM component
- $$.fragment = create_fragment ? create_fragment($$.ctx) : false;
- if (options.target) {
- if (options.hydrate) {
- const nodes = children(options.target);
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.l(nodes);
- nodes.forEach(detach);
- }
- else {
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.c();
- }
- if (options.intro)
- transition_in(component.$$.fragment);
- mount_component(component, options.target, options.anchor, options.customElement);
- flush();
- }
- set_current_component(parent_component);
-}
-let SvelteElement;
-if (typeof HTMLElement === 'function') {
- SvelteElement = class extends HTMLElement {
- constructor() {
- super();
- this.attachShadow({ mode: 'open' });
- }
- connectedCallback() {
- const { on_mount } = this.$$;
- this.$$.on_disconnect = on_mount.map(run).filter(is_function);
- // @ts-ignore todo: improve typings
- for (const key in this.$$.slotted) {
- // @ts-ignore todo: improve typings
- this.appendChild(this.$$.slotted[key]);
- }
- }
- attributeChangedCallback(attr, _oldValue, newValue) {
- this[attr] = newValue;
- }
- disconnectedCallback() {
- run_all(this.$$.on_disconnect);
- }
- $destroy() {
- destroy_component(this, 1);
- this.$destroy = noop;
- }
- $on(type, callback) {
- // TODO should this delegate to addEventListener?
- if (!is_function(callback)) {
- return noop;
- }
- const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));
- callbacks.push(callback);
- return () => {
- const index = callbacks.indexOf(callback);
- if (index !== -1)
- callbacks.splice(index, 1);
- };
- }
- $set($$props) {
- if (this.$$set && !is_empty($$props)) {
- this.$$.skip_bound = true;
- this.$$set($$props);
- this.$$.skip_bound = false;
- }
- }
- };
-}
-
-function dispatch_dev(type, detail) {
- document.dispatchEvent(custom_event(type, Object.assign({ version: '3.52.0' }, detail), { bubbles: true }));
-}
-function append_dev(target, node) {
- dispatch_dev('SvelteDOMInsert', { target, node });
- append(target, node);
-}
-function insert_dev(target, node, anchor) {
- dispatch_dev('SvelteDOMInsert', { target, node, anchor });
- insert(target, node, anchor);
-}
-function detach_dev(node) {
- dispatch_dev('SvelteDOMRemove', { node });
- detach(node);
-}
-function listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) {
- const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : [];
- if (has_prevent_default)
- modifiers.push('preventDefault');
- if (has_stop_propagation)
- modifiers.push('stopPropagation');
- dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers });
- const dispose = listen(node, event, handler, options);
- return () => {
- dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers });
- dispose();
- };
-}
-function attr_dev(node, attribute, value) {
- attr(node, attribute, value);
- if (value == null)
- dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute });
- else
- dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value });
-}
-function set_data_dev(text, data) {
- data = '' + data;
- if (text.wholeText === data)
- return;
- dispatch_dev('SvelteDOMSetData', { node: text, data });
- text.data = data;
-}
-function validate_each_argument(arg) {
- if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) {
- let msg = '{#each} only iterates over array-like objects.';
- if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) {
- msg += ' You can use a spread to convert this iterable into an array.';
- }
- throw new Error(msg);
- }
-}
-function validate_slots(name, slot, keys) {
- for (const slot_key of Object.keys(slot)) {
- if (!~keys.indexOf(slot_key)) {
- console.warn(`<${name}> received an unexpected slot "${slot_key}".`);
- }
- }
-}
-
-export { run_all as A, svg_element as B, SvelteElement as S, attribute_to_object as a, insert_dev as b, add_location as c, dispatch_dev as d, element as e, detach_dev as f, attr_dev as g, append_dev as h, init as i, flush as j, validate_each_argument as k, globals as l, destroy_each as m, noop as n, onMount as o, binding_callbacks as p, space as q, set_style as r, safe_not_equal as s, text as t, listen_dev as u, validate_slots as v, set_data_dev as w, getContext as x, setContext as y, src_url_equal as z };
diff --git a/Server/public/js/components/index-720c0a59.js b/Server/public/js/components/index-720c0a59.js
deleted file mode 100644
index 66b4fe3..0000000
--- a/Server/public/js/components/index-720c0a59.js
+++ /dev/null
@@ -1 +0,0 @@
-import{n,s as t}from"./index-db20528a.js";const e=[];function s(s,o=n){let i;const c=new Set;function f(n){if(t(s,n)&&(s=n,i)){const n=!e.length;for(const n of c)n[1](),e.push(n,s);if(n){for(let n=0;n{c.delete(r),0===c.size&&(i(),i=null)}}}}export{s as w};
diff --git a/Server/public/js/components/index-77787e10.js b/Server/public/js/components/index-77787e10.js
deleted file mode 100644
index b14d61f..0000000
--- a/Server/public/js/components/index-77787e10.js
+++ /dev/null
@@ -1 +0,0 @@
-import{n,s as t}from"./index-8c09578c.js";const e=[];function s(s,o=n){let c;const i=new Set;function f(n){if(t(s,n)&&(s=n,c)){const n=!e.length;for(const n of i)n[1](),e.push(n,s);if(n){for(let n=0;n{i.delete(r),0===i.size&&(c(),c=null)}}}}export{s as w};
diff --git a/Server/public/js/components/index-785be8e8.js b/Server/public/js/components/index-785be8e8.js
deleted file mode 100644
index 0a6ce70..0000000
--- a/Server/public/js/components/index-785be8e8.js
+++ /dev/null
@@ -1,494 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-function noop() { }
-function add_location(element, file, line, column, char) {
- element.__svelte_meta = {
- loc: { file, line, column, char }
- };
-}
-function run(fn) {
- return fn();
-}
-function blank_object() {
- return Object.create(null);
-}
-function run_all(fns) {
- fns.forEach(run);
-}
-function is_function(thing) {
- return typeof thing === 'function';
-}
-function safe_not_equal(a, b) {
- return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');
-}
-let src_url_equal_anchor;
-function src_url_equal(element_src, url) {
- if (!src_url_equal_anchor) {
- src_url_equal_anchor = document.createElement('a');
- }
- src_url_equal_anchor.href = url;
- return element_src === src_url_equal_anchor.href;
-}
-function is_empty(obj) {
- return Object.keys(obj).length === 0;
-}
-function append(target, node) {
- target.appendChild(node);
-}
-function insert(target, node, anchor) {
- target.insertBefore(node, anchor || null);
-}
-function detach(node) {
- node.parentNode.removeChild(node);
-}
-function destroy_each(iterations, detaching) {
- for (let i = 0; i < iterations.length; i += 1) {
- if (iterations[i])
- iterations[i].d(detaching);
- }
-}
-function element(name) {
- return document.createElement(name);
-}
-function svg_element(name) {
- return document.createElementNS('http://www.w3.org/2000/svg', name);
-}
-function text(data) {
- return document.createTextNode(data);
-}
-function space() {
- return text(' ');
-}
-function empty() {
- return text('');
-}
-function listen(node, event, handler, options) {
- node.addEventListener(event, handler, options);
- return () => node.removeEventListener(event, handler, options);
-}
-function attr(node, attribute, value) {
- if (value == null)
- node.removeAttribute(attribute);
- else if (node.getAttribute(attribute) !== value)
- node.setAttribute(attribute, value);
-}
-function set_custom_element_data(node, prop, value) {
- if (prop in node) {
- node[prop] = typeof node[prop] === 'boolean' && value === '' ? true : value;
- }
- else {
- attr(node, prop, value);
- }
-}
-function children(element) {
- return Array.from(element.childNodes);
-}
-function set_style(node, key, value, important) {
- if (value === null) {
- node.style.removeProperty(key);
- }
- else {
- node.style.setProperty(key, value, important ? 'important' : '');
- }
-}
-function custom_event(type, detail, { bubbles = false, cancelable = false } = {}) {
- const e = document.createEvent('CustomEvent');
- e.initCustomEvent(type, bubbles, cancelable, detail);
- return e;
-}
-class HtmlTag {
- constructor(is_svg = false) {
- this.is_svg = false;
- this.is_svg = is_svg;
- this.e = this.n = null;
- }
- c(html) {
- this.h(html);
- }
- m(html, target, anchor = null) {
- if (!this.e) {
- if (this.is_svg)
- this.e = svg_element(target.nodeName);
- else
- this.e = element(target.nodeName);
- this.t = target;
- this.c(html);
- }
- this.i(anchor);
- }
- h(html) {
- this.e.innerHTML = html;
- this.n = Array.from(this.e.childNodes);
- }
- i(anchor) {
- for (let i = 0; i < this.n.length; i += 1) {
- insert(this.t, this.n[i], anchor);
- }
- }
- p(html) {
- this.d();
- this.h(html);
- this.i(this.a);
- }
- d() {
- this.n.forEach(detach);
- }
-}
-function attribute_to_object(attributes) {
- const result = {};
- for (const attribute of attributes) {
- result[attribute.name] = attribute.value;
- }
- return result;
-}
-
-let current_component;
-function set_current_component(component) {
- current_component = component;
-}
-function get_current_component() {
- if (!current_component)
- throw new Error('Function called outside component initialization');
- return current_component;
-}
-/**
- * The `onMount` function schedules a callback to run as soon as the component has been mounted to the DOM.
- * It must be called during the component's initialisation (but doesn't need to live *inside* the component;
- * it can be called from an external module).
- *
- * `onMount` does not run inside a [server-side component](/docs#run-time-server-side-component-api).
- *
- * https://svelte.dev/docs#run-time-svelte-onmount
- */
-function onMount(fn) {
- get_current_component().$$.on_mount.push(fn);
-}
-/**
- * Associates an arbitrary `context` object with the current component and the specified `key`
- * and returns that object. The context is then available to children of the component
- * (including slotted content) with `getContext`.
- *
- * Like lifecycle functions, this must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-setcontext
- */
-function setContext(key, context) {
- get_current_component().$$.context.set(key, context);
- return context;
-}
-/**
- * Retrieves the context that belongs to the closest parent component with the specified `key`.
- * Must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-getcontext
- */
-function getContext(key) {
- return get_current_component().$$.context.get(key);
-}
-
-const dirty_components = [];
-const binding_callbacks = [];
-const render_callbacks = [];
-const flush_callbacks = [];
-const resolved_promise = Promise.resolve();
-let update_scheduled = false;
-function schedule_update() {
- if (!update_scheduled) {
- update_scheduled = true;
- resolved_promise.then(flush);
- }
-}
-function add_render_callback(fn) {
- render_callbacks.push(fn);
-}
-// flush() calls callbacks in this order:
-// 1. All beforeUpdate callbacks, in order: parents before children
-// 2. All bind:this callbacks, in reverse order: children before parents.
-// 3. All afterUpdate callbacks, in order: parents before children. EXCEPT
-// for afterUpdates called during the initial onMount, which are called in
-// reverse order: children before parents.
-// Since callbacks might update component values, which could trigger another
-// call to flush(), the following steps guard against this:
-// 1. During beforeUpdate, any updated components will be added to the
-// dirty_components array and will cause a reentrant call to flush(). Because
-// the flush index is kept outside the function, the reentrant call will pick
-// up where the earlier call left off and go through all dirty components. The
-// current_component value is saved and restored so that the reentrant call will
-// not interfere with the "parent" flush() call.
-// 2. bind:this callbacks cannot trigger new flush() calls.
-// 3. During afterUpdate, any updated components will NOT have their afterUpdate
-// callback called a second time; the seen_callbacks set, outside the flush()
-// function, guarantees this behavior.
-const seen_callbacks = new Set();
-let flushidx = 0; // Do *not* move this inside the flush() function
-function flush() {
- const saved_component = current_component;
- do {
- // first, call beforeUpdate functions
- // and update components
- while (flushidx < dirty_components.length) {
- const component = dirty_components[flushidx];
- flushidx++;
- set_current_component(component);
- update(component.$$);
- }
- set_current_component(null);
- dirty_components.length = 0;
- flushidx = 0;
- while (binding_callbacks.length)
- binding_callbacks.pop()();
- // then, once components are updated, call
- // afterUpdate functions. This may cause
- // subsequent updates...
- for (let i = 0; i < render_callbacks.length; i += 1) {
- const callback = render_callbacks[i];
- if (!seen_callbacks.has(callback)) {
- // ...so guard against infinite loops
- seen_callbacks.add(callback);
- callback();
- }
- }
- render_callbacks.length = 0;
- } while (dirty_components.length);
- while (flush_callbacks.length) {
- flush_callbacks.pop()();
- }
- update_scheduled = false;
- seen_callbacks.clear();
- set_current_component(saved_component);
-}
-function update($$) {
- if ($$.fragment !== null) {
- $$.update();
- run_all($$.before_update);
- const dirty = $$.dirty;
- $$.dirty = [-1];
- $$.fragment && $$.fragment.p($$.ctx, dirty);
- $$.after_update.forEach(add_render_callback);
- }
-}
-const outroing = new Set();
-function transition_in(block, local) {
- if (block && block.i) {
- outroing.delete(block);
- block.i(local);
- }
-}
-
-const globals = (typeof window !== 'undefined'
- ? window
- : typeof globalThis !== 'undefined'
- ? globalThis
- : global);
-function mount_component(component, target, anchor, customElement) {
- const { fragment, after_update } = component.$$;
- fragment && fragment.m(target, anchor);
- if (!customElement) {
- // onMount happens before the initial afterUpdate
- add_render_callback(() => {
- const new_on_destroy = component.$$.on_mount.map(run).filter(is_function);
- // if the component was destroyed immediately
- // it will update the `$$.on_destroy` reference to `null`.
- // the destructured on_destroy may still reference to the old array
- if (component.$$.on_destroy) {
- component.$$.on_destroy.push(...new_on_destroy);
- }
- else {
- // Edge case - component was destroyed immediately,
- // most likely as a result of a binding initialising
- run_all(new_on_destroy);
- }
- component.$$.on_mount = [];
- });
- }
- after_update.forEach(add_render_callback);
-}
-function destroy_component(component, detaching) {
- const $$ = component.$$;
- if ($$.fragment !== null) {
- run_all($$.on_destroy);
- $$.fragment && $$.fragment.d(detaching);
- // TODO null out other refs, including component.$$ (but need to
- // preserve final state?)
- $$.on_destroy = $$.fragment = null;
- $$.ctx = [];
- }
-}
-function make_dirty(component, i) {
- if (component.$$.dirty[0] === -1) {
- dirty_components.push(component);
- schedule_update();
- component.$$.dirty.fill(0);
- }
- component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31));
-}
-function init(component, options, instance, create_fragment, not_equal, props, append_styles, dirty = [-1]) {
- const parent_component = current_component;
- set_current_component(component);
- const $$ = component.$$ = {
- fragment: null,
- ctx: [],
- // state
- props,
- update: noop,
- not_equal,
- bound: blank_object(),
- // lifecycle
- on_mount: [],
- on_destroy: [],
- on_disconnect: [],
- before_update: [],
- after_update: [],
- context: new Map(options.context || (parent_component ? parent_component.$$.context : [])),
- // everything else
- callbacks: blank_object(),
- dirty,
- skip_bound: false,
- root: options.target || parent_component.$$.root
- };
- append_styles && append_styles($$.root);
- let ready = false;
- $$.ctx = instance
- ? instance(component, options.props || {}, (i, ret, ...rest) => {
- const value = rest.length ? rest[0] : ret;
- if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {
- if (!$$.skip_bound && $$.bound[i])
- $$.bound[i](value);
- if (ready)
- make_dirty(component, i);
- }
- return ret;
- })
- : [];
- $$.update();
- ready = true;
- run_all($$.before_update);
- // `false` as a special case of no DOM component
- $$.fragment = create_fragment ? create_fragment($$.ctx) : false;
- if (options.target) {
- if (options.hydrate) {
- const nodes = children(options.target);
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.l(nodes);
- nodes.forEach(detach);
- }
- else {
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.c();
- }
- if (options.intro)
- transition_in(component.$$.fragment);
- mount_component(component, options.target, options.anchor, options.customElement);
- flush();
- }
- set_current_component(parent_component);
-}
-let SvelteElement;
-if (typeof HTMLElement === 'function') {
- SvelteElement = class extends HTMLElement {
- constructor() {
- super();
- this.attachShadow({ mode: 'open' });
- }
- connectedCallback() {
- const { on_mount } = this.$$;
- this.$$.on_disconnect = on_mount.map(run).filter(is_function);
- // @ts-ignore todo: improve typings
- for (const key in this.$$.slotted) {
- // @ts-ignore todo: improve typings
- this.appendChild(this.$$.slotted[key]);
- }
- }
- attributeChangedCallback(attr, _oldValue, newValue) {
- this[attr] = newValue;
- }
- disconnectedCallback() {
- run_all(this.$$.on_disconnect);
- }
- $destroy() {
- destroy_component(this, 1);
- this.$destroy = noop;
- }
- $on(type, callback) {
- // TODO should this delegate to addEventListener?
- if (!is_function(callback)) {
- return noop;
- }
- const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));
- callbacks.push(callback);
- return () => {
- const index = callbacks.indexOf(callback);
- if (index !== -1)
- callbacks.splice(index, 1);
- };
- }
- $set($$props) {
- if (this.$$set && !is_empty($$props)) {
- this.$$.skip_bound = true;
- this.$$set($$props);
- this.$$.skip_bound = false;
- }
- }
- };
-}
-
-function dispatch_dev(type, detail) {
- document.dispatchEvent(custom_event(type, Object.assign({ version: '3.52.0' }, detail), { bubbles: true }));
-}
-function append_dev(target, node) {
- dispatch_dev('SvelteDOMInsert', { target, node });
- append(target, node);
-}
-function insert_dev(target, node, anchor) {
- dispatch_dev('SvelteDOMInsert', { target, node, anchor });
- insert(target, node, anchor);
-}
-function detach_dev(node) {
- dispatch_dev('SvelteDOMRemove', { node });
- detach(node);
-}
-function listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) {
- const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : [];
- if (has_prevent_default)
- modifiers.push('preventDefault');
- if (has_stop_propagation)
- modifiers.push('stopPropagation');
- dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers });
- const dispose = listen(node, event, handler, options);
- return () => {
- dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers });
- dispose();
- };
-}
-function attr_dev(node, attribute, value) {
- attr(node, attribute, value);
- if (value == null)
- dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute });
- else
- dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value });
-}
-function set_data_dev(text, data) {
- data = '' + data;
- if (text.wholeText === data)
- return;
- dispatch_dev('SvelteDOMSetData', { node: text, data });
- text.data = data;
-}
-function validate_each_argument(arg) {
- if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) {
- let msg = '{#each} only iterates over array-like objects.';
- if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) {
- msg += ' You can use a spread to convert this iterable into an array.';
- }
- throw new Error(msg);
- }
-}
-function validate_slots(name, slot, keys) {
- for (const slot_key of Object.keys(slot)) {
- if (!~keys.indexOf(slot_key)) {
- console.warn(`<${name}> received an unexpected slot "${slot_key}".`);
- }
- }
-}
-
-export { setContext as A, run_all as B, svg_element as C, empty as D, HtmlTag as H, SvelteElement as S, attribute_to_object as a, insert_dev as b, validate_slots as c, dispatch_dev as d, element as e, space as f, add_location as g, attr_dev as h, init as i, src_url_equal as j, append_dev as k, detach_dev as l, destroy_each as m, noop as n, onMount as o, set_custom_element_data as p, flush as q, globals as r, safe_not_equal as s, text as t, binding_callbacks as u, validate_each_argument as v, set_style as w, listen_dev as x, set_data_dev as y, getContext as z };
diff --git a/Server/public/js/components/index-82196f8a.js b/Server/public/js/components/index-82196f8a.js
deleted file mode 100644
index 4f3898d..0000000
--- a/Server/public/js/components/index-82196f8a.js
+++ /dev/null
@@ -1,494 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-function noop() { }
-function add_location(element, file, line, column, char) {
- element.__svelte_meta = {
- loc: { file, line, column, char }
- };
-}
-function run(fn) {
- return fn();
-}
-function blank_object() {
- return Object.create(null);
-}
-function run_all(fns) {
- fns.forEach(run);
-}
-function is_function(thing) {
- return typeof thing === 'function';
-}
-function safe_not_equal(a, b) {
- return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');
-}
-let src_url_equal_anchor;
-function src_url_equal(element_src, url) {
- if (!src_url_equal_anchor) {
- src_url_equal_anchor = document.createElement('a');
- }
- src_url_equal_anchor.href = url;
- return element_src === src_url_equal_anchor.href;
-}
-function is_empty(obj) {
- return Object.keys(obj).length === 0;
-}
-function append(target, node) {
- target.appendChild(node);
-}
-function insert(target, node, anchor) {
- target.insertBefore(node, anchor || null);
-}
-function detach(node) {
- node.parentNode.removeChild(node);
-}
-function destroy_each(iterations, detaching) {
- for (let i = 0; i < iterations.length; i += 1) {
- if (iterations[i])
- iterations[i].d(detaching);
- }
-}
-function element(name) {
- return document.createElement(name);
-}
-function svg_element(name) {
- return document.createElementNS('http://www.w3.org/2000/svg', name);
-}
-function text(data) {
- return document.createTextNode(data);
-}
-function space() {
- return text(' ');
-}
-function empty() {
- return text('');
-}
-function listen(node, event, handler, options) {
- node.addEventListener(event, handler, options);
- return () => node.removeEventListener(event, handler, options);
-}
-function attr(node, attribute, value) {
- if (value == null)
- node.removeAttribute(attribute);
- else if (node.getAttribute(attribute) !== value)
- node.setAttribute(attribute, value);
-}
-function set_custom_element_data(node, prop, value) {
- if (prop in node) {
- node[prop] = typeof node[prop] === 'boolean' && value === '' ? true : value;
- }
- else {
- attr(node, prop, value);
- }
-}
-function children(element) {
- return Array.from(element.childNodes);
-}
-function set_style(node, key, value, important) {
- if (value === null) {
- node.style.removeProperty(key);
- }
- else {
- node.style.setProperty(key, value, important ? 'important' : '');
- }
-}
-function custom_event(type, detail, { bubbles = false, cancelable = false } = {}) {
- const e = document.createEvent('CustomEvent');
- e.initCustomEvent(type, bubbles, cancelable, detail);
- return e;
-}
-class HtmlTag {
- constructor(is_svg = false) {
- this.is_svg = false;
- this.is_svg = is_svg;
- this.e = this.n = null;
- }
- c(html) {
- this.h(html);
- }
- m(html, target, anchor = null) {
- if (!this.e) {
- if (this.is_svg)
- this.e = svg_element(target.nodeName);
- else
- this.e = element(target.nodeName);
- this.t = target;
- this.c(html);
- }
- this.i(anchor);
- }
- h(html) {
- this.e.innerHTML = html;
- this.n = Array.from(this.e.childNodes);
- }
- i(anchor) {
- for (let i = 0; i < this.n.length; i += 1) {
- insert(this.t, this.n[i], anchor);
- }
- }
- p(html) {
- this.d();
- this.h(html);
- this.i(this.a);
- }
- d() {
- this.n.forEach(detach);
- }
-}
-function attribute_to_object(attributes) {
- const result = {};
- for (const attribute of attributes) {
- result[attribute.name] = attribute.value;
- }
- return result;
-}
-
-let current_component;
-function set_current_component(component) {
- current_component = component;
-}
-function get_current_component() {
- if (!current_component)
- throw new Error('Function called outside component initialization');
- return current_component;
-}
-/**
- * The `onMount` function schedules a callback to run as soon as the component has been mounted to the DOM.
- * It must be called during the component's initialisation (but doesn't need to live *inside* the component;
- * it can be called from an external module).
- *
- * `onMount` does not run inside a [server-side component](/docs#run-time-server-side-component-api).
- *
- * https://svelte.dev/docs#run-time-svelte-onmount
- */
-function onMount(fn) {
- get_current_component().$$.on_mount.push(fn);
-}
-/**
- * Associates an arbitrary `context` object with the current component and the specified `key`
- * and returns that object. The context is then available to children of the component
- * (including slotted content) with `getContext`.
- *
- * Like lifecycle functions, this must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-setcontext
- */
-function setContext(key, context) {
- get_current_component().$$.context.set(key, context);
- return context;
-}
-/**
- * Retrieves the context that belongs to the closest parent component with the specified `key`.
- * Must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-getcontext
- */
-function getContext(key) {
- return get_current_component().$$.context.get(key);
-}
-
-const dirty_components = [];
-const binding_callbacks = [];
-const render_callbacks = [];
-const flush_callbacks = [];
-const resolved_promise = Promise.resolve();
-let update_scheduled = false;
-function schedule_update() {
- if (!update_scheduled) {
- update_scheduled = true;
- resolved_promise.then(flush);
- }
-}
-function add_render_callback(fn) {
- render_callbacks.push(fn);
-}
-// flush() calls callbacks in this order:
-// 1. All beforeUpdate callbacks, in order: parents before children
-// 2. All bind:this callbacks, in reverse order: children before parents.
-// 3. All afterUpdate callbacks, in order: parents before children. EXCEPT
-// for afterUpdates called during the initial onMount, which are called in
-// reverse order: children before parents.
-// Since callbacks might update component values, which could trigger another
-// call to flush(), the following steps guard against this:
-// 1. During beforeUpdate, any updated components will be added to the
-// dirty_components array and will cause a reentrant call to flush(). Because
-// the flush index is kept outside the function, the reentrant call will pick
-// up where the earlier call left off and go through all dirty components. The
-// current_component value is saved and restored so that the reentrant call will
-// not interfere with the "parent" flush() call.
-// 2. bind:this callbacks cannot trigger new flush() calls.
-// 3. During afterUpdate, any updated components will NOT have their afterUpdate
-// callback called a second time; the seen_callbacks set, outside the flush()
-// function, guarantees this behavior.
-const seen_callbacks = new Set();
-let flushidx = 0; // Do *not* move this inside the flush() function
-function flush() {
- const saved_component = current_component;
- do {
- // first, call beforeUpdate functions
- // and update components
- while (flushidx < dirty_components.length) {
- const component = dirty_components[flushidx];
- flushidx++;
- set_current_component(component);
- update(component.$$);
- }
- set_current_component(null);
- dirty_components.length = 0;
- flushidx = 0;
- while (binding_callbacks.length)
- binding_callbacks.pop()();
- // then, once components are updated, call
- // afterUpdate functions. This may cause
- // subsequent updates...
- for (let i = 0; i < render_callbacks.length; i += 1) {
- const callback = render_callbacks[i];
- if (!seen_callbacks.has(callback)) {
- // ...so guard against infinite loops
- seen_callbacks.add(callback);
- callback();
- }
- }
- render_callbacks.length = 0;
- } while (dirty_components.length);
- while (flush_callbacks.length) {
- flush_callbacks.pop()();
- }
- update_scheduled = false;
- seen_callbacks.clear();
- set_current_component(saved_component);
-}
-function update($$) {
- if ($$.fragment !== null) {
- $$.update();
- run_all($$.before_update);
- const dirty = $$.dirty;
- $$.dirty = [-1];
- $$.fragment && $$.fragment.p($$.ctx, dirty);
- $$.after_update.forEach(add_render_callback);
- }
-}
-const outroing = new Set();
-function transition_in(block, local) {
- if (block && block.i) {
- outroing.delete(block);
- block.i(local);
- }
-}
-
-const globals = (typeof window !== 'undefined'
- ? window
- : typeof globalThis !== 'undefined'
- ? globalThis
- : global);
-function mount_component(component, target, anchor, customElement) {
- const { fragment, after_update } = component.$$;
- fragment && fragment.m(target, anchor);
- if (!customElement) {
- // onMount happens before the initial afterUpdate
- add_render_callback(() => {
- const new_on_destroy = component.$$.on_mount.map(run).filter(is_function);
- // if the component was destroyed immediately
- // it will update the `$$.on_destroy` reference to `null`.
- // the destructured on_destroy may still reference to the old array
- if (component.$$.on_destroy) {
- component.$$.on_destroy.push(...new_on_destroy);
- }
- else {
- // Edge case - component was destroyed immediately,
- // most likely as a result of a binding initialising
- run_all(new_on_destroy);
- }
- component.$$.on_mount = [];
- });
- }
- after_update.forEach(add_render_callback);
-}
-function destroy_component(component, detaching) {
- const $$ = component.$$;
- if ($$.fragment !== null) {
- run_all($$.on_destroy);
- $$.fragment && $$.fragment.d(detaching);
- // TODO null out other refs, including component.$$ (but need to
- // preserve final state?)
- $$.on_destroy = $$.fragment = null;
- $$.ctx = [];
- }
-}
-function make_dirty(component, i) {
- if (component.$$.dirty[0] === -1) {
- dirty_components.push(component);
- schedule_update();
- component.$$.dirty.fill(0);
- }
- component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31));
-}
-function init(component, options, instance, create_fragment, not_equal, props, append_styles, dirty = [-1]) {
- const parent_component = current_component;
- set_current_component(component);
- const $$ = component.$$ = {
- fragment: null,
- ctx: [],
- // state
- props,
- update: noop,
- not_equal,
- bound: blank_object(),
- // lifecycle
- on_mount: [],
- on_destroy: [],
- on_disconnect: [],
- before_update: [],
- after_update: [],
- context: new Map(options.context || (parent_component ? parent_component.$$.context : [])),
- // everything else
- callbacks: blank_object(),
- dirty,
- skip_bound: false,
- root: options.target || parent_component.$$.root
- };
- append_styles && append_styles($$.root);
- let ready = false;
- $$.ctx = instance
- ? instance(component, options.props || {}, (i, ret, ...rest) => {
- const value = rest.length ? rest[0] : ret;
- if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {
- if (!$$.skip_bound && $$.bound[i])
- $$.bound[i](value);
- if (ready)
- make_dirty(component, i);
- }
- return ret;
- })
- : [];
- $$.update();
- ready = true;
- run_all($$.before_update);
- // `false` as a special case of no DOM component
- $$.fragment = create_fragment ? create_fragment($$.ctx) : false;
- if (options.target) {
- if (options.hydrate) {
- const nodes = children(options.target);
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.l(nodes);
- nodes.forEach(detach);
- }
- else {
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.c();
- }
- if (options.intro)
- transition_in(component.$$.fragment);
- mount_component(component, options.target, options.anchor, options.customElement);
- flush();
- }
- set_current_component(parent_component);
-}
-let SvelteElement;
-if (typeof HTMLElement === 'function') {
- SvelteElement = class extends HTMLElement {
- constructor() {
- super();
- this.attachShadow({ mode: 'open' });
- }
- connectedCallback() {
- const { on_mount } = this.$$;
- this.$$.on_disconnect = on_mount.map(run).filter(is_function);
- // @ts-ignore todo: improve typings
- for (const key in this.$$.slotted) {
- // @ts-ignore todo: improve typings
- this.appendChild(this.$$.slotted[key]);
- }
- }
- attributeChangedCallback(attr, _oldValue, newValue) {
- this[attr] = newValue;
- }
- disconnectedCallback() {
- run_all(this.$$.on_disconnect);
- }
- $destroy() {
- destroy_component(this, 1);
- this.$destroy = noop;
- }
- $on(type, callback) {
- // TODO should this delegate to addEventListener?
- if (!is_function(callback)) {
- return noop;
- }
- const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));
- callbacks.push(callback);
- return () => {
- const index = callbacks.indexOf(callback);
- if (index !== -1)
- callbacks.splice(index, 1);
- };
- }
- $set($$props) {
- if (this.$$set && !is_empty($$props)) {
- this.$$.skip_bound = true;
- this.$$set($$props);
- this.$$.skip_bound = false;
- }
- }
- };
-}
-
-function dispatch_dev(type, detail) {
- document.dispatchEvent(custom_event(type, Object.assign({ version: '3.52.0' }, detail), { bubbles: true }));
-}
-function append_dev(target, node) {
- dispatch_dev('SvelteDOMInsert', { target, node });
- append(target, node);
-}
-function insert_dev(target, node, anchor) {
- dispatch_dev('SvelteDOMInsert', { target, node, anchor });
- insert(target, node, anchor);
-}
-function detach_dev(node) {
- dispatch_dev('SvelteDOMRemove', { node });
- detach(node);
-}
-function listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) {
- const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : [];
- if (has_prevent_default)
- modifiers.push('preventDefault');
- if (has_stop_propagation)
- modifiers.push('stopPropagation');
- dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers });
- const dispose = listen(node, event, handler, options);
- return () => {
- dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers });
- dispose();
- };
-}
-function attr_dev(node, attribute, value) {
- attr(node, attribute, value);
- if (value == null)
- dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute });
- else
- dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value });
-}
-function set_data_dev(text, data) {
- data = '' + data;
- if (text.wholeText === data)
- return;
- dispatch_dev('SvelteDOMSetData', { node: text, data });
- text.data = data;
-}
-function validate_each_argument(arg) {
- if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) {
- let msg = '{#each} only iterates over array-like objects.';
- if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) {
- msg += ' You can use a spread to convert this iterable into an array.';
- }
- throw new Error(msg);
- }
-}
-function validate_slots(name, slot, keys) {
- for (const slot_key of Object.keys(slot)) {
- if (!~keys.indexOf(slot_key)) {
- console.warn(`<${name}> received an unexpected slot "${slot_key}".`);
- }
- }
-}
-
-export { setContext as A, run_all as B, svg_element as C, empty as D, HtmlTag as H, SvelteElement as S, attribute_to_object as a, insert_dev as b, validate_slots as c, dispatch_dev as d, element as e, space as f, add_location as g, attr_dev as h, init as i, src_url_equal as j, set_custom_element_data as k, append_dev as l, detach_dev as m, noop as n, onMount as o, destroy_each as p, flush as q, globals as r, safe_not_equal as s, text as t, binding_callbacks as u, validate_each_argument as v, set_style as w, listen_dev as x, set_data_dev as y, getContext as z };
diff --git a/Server/public/js/components/index-86921d75.js b/Server/public/js/components/index-86921d75.js
deleted file mode 100644
index 4c1aa7c..0000000
--- a/Server/public/js/components/index-86921d75.js
+++ /dev/null
@@ -1,53 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-import { n as noop, s as safe_not_equal } from './index-5e6510e7.js';
-
-const subscriber_queue = [];
-/**
- * Create a `Writable` store that allows both updating and reading by subscription.
- * @param {*=}value initial value
- * @param {StartStopNotifier=}start start and stop notifications for subscriptions
- */
-function writable(value, start = noop) {
- let stop;
- const subscribers = new Set();
- function set(new_value) {
- if (safe_not_equal(value, new_value)) {
- value = new_value;
- if (stop) { // store is ready
- const run_queue = !subscriber_queue.length;
- for (const subscriber of subscribers) {
- subscriber[1]();
- subscriber_queue.push(subscriber, value);
- }
- if (run_queue) {
- for (let i = 0; i < subscriber_queue.length; i += 2) {
- subscriber_queue[i][0](subscriber_queue[i + 1]);
- }
- subscriber_queue.length = 0;
- }
- }
- }
- }
- function update(fn) {
- set(fn(value));
- }
- function subscribe(run, invalidate = noop) {
- const subscriber = [run, invalidate];
- subscribers.add(subscriber);
- if (subscribers.size === 1) {
- stop = start(set) || noop;
- }
- run(value);
- return () => {
- subscribers.delete(subscriber);
- if (subscribers.size === 0) {
- stop();
- stop = null;
- }
- };
- }
- return { set, update, subscribe };
-}
-
-export { writable as w };
diff --git a/Server/public/js/components/index-8744cf8a.js b/Server/public/js/components/index-8744cf8a.js
deleted file mode 100644
index e6ec086..0000000
--- a/Server/public/js/components/index-8744cf8a.js
+++ /dev/null
@@ -1 +0,0 @@
-import{n,s as t}from"./index-5b685137.js";const e=[];function s(s,o=n){let i;const c=new Set;function f(n){if(t(s,n)&&(s=n,i)){const n=!e.length;for(const n of c)n[1](),e.push(n,s);if(n){for(let n=0;n{c.delete(r),0===c.size&&(i(),i=null)}}}}export{s as w};
diff --git a/Server/public/js/components/index-87e2062f.js b/Server/public/js/components/index-87e2062f.js
deleted file mode 100644
index 1760481..0000000
--- a/Server/public/js/components/index-87e2062f.js
+++ /dev/null
@@ -1,445 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-function noop() { }
-function add_location(element, file, line, column, char) {
- element.__svelte_meta = {
- loc: { file, line, column, char }
- };
-}
-function run(fn) {
- return fn();
-}
-function blank_object() {
- return Object.create(null);
-}
-function run_all(fns) {
- fns.forEach(run);
-}
-function is_function(thing) {
- return typeof thing === 'function';
-}
-function safe_not_equal(a, b) {
- return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');
-}
-let src_url_equal_anchor;
-function src_url_equal(element_src, url) {
- if (!src_url_equal_anchor) {
- src_url_equal_anchor = document.createElement('a');
- }
- src_url_equal_anchor.href = url;
- return element_src === src_url_equal_anchor.href;
-}
-function is_empty(obj) {
- return Object.keys(obj).length === 0;
-}
-function append(target, node) {
- target.appendChild(node);
-}
-function insert(target, node, anchor) {
- target.insertBefore(node, anchor || null);
-}
-function detach(node) {
- node.parentNode.removeChild(node);
-}
-function destroy_each(iterations, detaching) {
- for (let i = 0; i < iterations.length; i += 1) {
- if (iterations[i])
- iterations[i].d(detaching);
- }
-}
-function element(name) {
- return document.createElement(name);
-}
-function svg_element(name) {
- return document.createElementNS('http://www.w3.org/2000/svg', name);
-}
-function text(data) {
- return document.createTextNode(data);
-}
-function space() {
- return text(' ');
-}
-function listen(node, event, handler, options) {
- node.addEventListener(event, handler, options);
- return () => node.removeEventListener(event, handler, options);
-}
-function attr(node, attribute, value) {
- if (value == null)
- node.removeAttribute(attribute);
- else if (node.getAttribute(attribute) !== value)
- node.setAttribute(attribute, value);
-}
-function children(element) {
- return Array.from(element.childNodes);
-}
-function set_style(node, key, value, important) {
- if (value === null) {
- node.style.removeProperty(key);
- }
- else {
- node.style.setProperty(key, value, important ? 'important' : '');
- }
-}
-function custom_event(type, detail, { bubbles = false, cancelable = false } = {}) {
- const e = document.createEvent('CustomEvent');
- e.initCustomEvent(type, bubbles, cancelable, detail);
- return e;
-}
-function attribute_to_object(attributes) {
- const result = {};
- for (const attribute of attributes) {
- result[attribute.name] = attribute.value;
- }
- return result;
-}
-
-let current_component;
-function set_current_component(component) {
- current_component = component;
-}
-function get_current_component() {
- if (!current_component)
- throw new Error('Function called outside component initialization');
- return current_component;
-}
-/**
- * The `onMount` function schedules a callback to run as soon as the component has been mounted to the DOM.
- * It must be called during the component's initialisation (but doesn't need to live *inside* the component;
- * it can be called from an external module).
- *
- * `onMount` does not run inside a [server-side component](/docs#run-time-server-side-component-api).
- *
- * https://svelte.dev/docs#run-time-svelte-onmount
- */
-function onMount(fn) {
- get_current_component().$$.on_mount.push(fn);
-}
-/**
- * Associates an arbitrary `context` object with the current component and the specified `key`
- * and returns that object. The context is then available to children of the component
- * (including slotted content) with `getContext`.
- *
- * Like lifecycle functions, this must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-setcontext
- */
-function setContext(key, context) {
- get_current_component().$$.context.set(key, context);
- return context;
-}
-/**
- * Retrieves the context that belongs to the closest parent component with the specified `key`.
- * Must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-getcontext
- */
-function getContext(key) {
- return get_current_component().$$.context.get(key);
-}
-
-const dirty_components = [];
-const binding_callbacks = [];
-const render_callbacks = [];
-const flush_callbacks = [];
-const resolved_promise = Promise.resolve();
-let update_scheduled = false;
-function schedule_update() {
- if (!update_scheduled) {
- update_scheduled = true;
- resolved_promise.then(flush);
- }
-}
-function add_render_callback(fn) {
- render_callbacks.push(fn);
-}
-// flush() calls callbacks in this order:
-// 1. All beforeUpdate callbacks, in order: parents before children
-// 2. All bind:this callbacks, in reverse order: children before parents.
-// 3. All afterUpdate callbacks, in order: parents before children. EXCEPT
-// for afterUpdates called during the initial onMount, which are called in
-// reverse order: children before parents.
-// Since callbacks might update component values, which could trigger another
-// call to flush(), the following steps guard against this:
-// 1. During beforeUpdate, any updated components will be added to the
-// dirty_components array and will cause a reentrant call to flush(). Because
-// the flush index is kept outside the function, the reentrant call will pick
-// up where the earlier call left off and go through all dirty components. The
-// current_component value is saved and restored so that the reentrant call will
-// not interfere with the "parent" flush() call.
-// 2. bind:this callbacks cannot trigger new flush() calls.
-// 3. During afterUpdate, any updated components will NOT have their afterUpdate
-// callback called a second time; the seen_callbacks set, outside the flush()
-// function, guarantees this behavior.
-const seen_callbacks = new Set();
-let flushidx = 0; // Do *not* move this inside the flush() function
-function flush() {
- const saved_component = current_component;
- do {
- // first, call beforeUpdate functions
- // and update components
- while (flushidx < dirty_components.length) {
- const component = dirty_components[flushidx];
- flushidx++;
- set_current_component(component);
- update(component.$$);
- }
- set_current_component(null);
- dirty_components.length = 0;
- flushidx = 0;
- while (binding_callbacks.length)
- binding_callbacks.pop()();
- // then, once components are updated, call
- // afterUpdate functions. This may cause
- // subsequent updates...
- for (let i = 0; i < render_callbacks.length; i += 1) {
- const callback = render_callbacks[i];
- if (!seen_callbacks.has(callback)) {
- // ...so guard against infinite loops
- seen_callbacks.add(callback);
- callback();
- }
- }
- render_callbacks.length = 0;
- } while (dirty_components.length);
- while (flush_callbacks.length) {
- flush_callbacks.pop()();
- }
- update_scheduled = false;
- seen_callbacks.clear();
- set_current_component(saved_component);
-}
-function update($$) {
- if ($$.fragment !== null) {
- $$.update();
- run_all($$.before_update);
- const dirty = $$.dirty;
- $$.dirty = [-1];
- $$.fragment && $$.fragment.p($$.ctx, dirty);
- $$.after_update.forEach(add_render_callback);
- }
-}
-const outroing = new Set();
-function transition_in(block, local) {
- if (block && block.i) {
- outroing.delete(block);
- block.i(local);
- }
-}
-
-const globals = (typeof window !== 'undefined'
- ? window
- : typeof globalThis !== 'undefined'
- ? globalThis
- : global);
-function mount_component(component, target, anchor, customElement) {
- const { fragment, after_update } = component.$$;
- fragment && fragment.m(target, anchor);
- if (!customElement) {
- // onMount happens before the initial afterUpdate
- add_render_callback(() => {
- const new_on_destroy = component.$$.on_mount.map(run).filter(is_function);
- // if the component was destroyed immediately
- // it will update the `$$.on_destroy` reference to `null`.
- // the destructured on_destroy may still reference to the old array
- if (component.$$.on_destroy) {
- component.$$.on_destroy.push(...new_on_destroy);
- }
- else {
- // Edge case - component was destroyed immediately,
- // most likely as a result of a binding initialising
- run_all(new_on_destroy);
- }
- component.$$.on_mount = [];
- });
- }
- after_update.forEach(add_render_callback);
-}
-function destroy_component(component, detaching) {
- const $$ = component.$$;
- if ($$.fragment !== null) {
- run_all($$.on_destroy);
- $$.fragment && $$.fragment.d(detaching);
- // TODO null out other refs, including component.$$ (but need to
- // preserve final state?)
- $$.on_destroy = $$.fragment = null;
- $$.ctx = [];
- }
-}
-function make_dirty(component, i) {
- if (component.$$.dirty[0] === -1) {
- dirty_components.push(component);
- schedule_update();
- component.$$.dirty.fill(0);
- }
- component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31));
-}
-function init(component, options, instance, create_fragment, not_equal, props, append_styles, dirty = [-1]) {
- const parent_component = current_component;
- set_current_component(component);
- const $$ = component.$$ = {
- fragment: null,
- ctx: [],
- // state
- props,
- update: noop,
- not_equal,
- bound: blank_object(),
- // lifecycle
- on_mount: [],
- on_destroy: [],
- on_disconnect: [],
- before_update: [],
- after_update: [],
- context: new Map(options.context || (parent_component ? parent_component.$$.context : [])),
- // everything else
- callbacks: blank_object(),
- dirty,
- skip_bound: false,
- root: options.target || parent_component.$$.root
- };
- append_styles && append_styles($$.root);
- let ready = false;
- $$.ctx = instance
- ? instance(component, options.props || {}, (i, ret, ...rest) => {
- const value = rest.length ? rest[0] : ret;
- if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {
- if (!$$.skip_bound && $$.bound[i])
- $$.bound[i](value);
- if (ready)
- make_dirty(component, i);
- }
- return ret;
- })
- : [];
- $$.update();
- ready = true;
- run_all($$.before_update);
- // `false` as a special case of no DOM component
- $$.fragment = create_fragment ? create_fragment($$.ctx) : false;
- if (options.target) {
- if (options.hydrate) {
- const nodes = children(options.target);
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.l(nodes);
- nodes.forEach(detach);
- }
- else {
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.c();
- }
- if (options.intro)
- transition_in(component.$$.fragment);
- mount_component(component, options.target, options.anchor, options.customElement);
- flush();
- }
- set_current_component(parent_component);
-}
-let SvelteElement;
-if (typeof HTMLElement === 'function') {
- SvelteElement = class extends HTMLElement {
- constructor() {
- super();
- this.attachShadow({ mode: 'open' });
- }
- connectedCallback() {
- const { on_mount } = this.$$;
- this.$$.on_disconnect = on_mount.map(run).filter(is_function);
- // @ts-ignore todo: improve typings
- for (const key in this.$$.slotted) {
- // @ts-ignore todo: improve typings
- this.appendChild(this.$$.slotted[key]);
- }
- }
- attributeChangedCallback(attr, _oldValue, newValue) {
- this[attr] = newValue;
- }
- disconnectedCallback() {
- run_all(this.$$.on_disconnect);
- }
- $destroy() {
- destroy_component(this, 1);
- this.$destroy = noop;
- }
- $on(type, callback) {
- // TODO should this delegate to addEventListener?
- if (!is_function(callback)) {
- return noop;
- }
- const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));
- callbacks.push(callback);
- return () => {
- const index = callbacks.indexOf(callback);
- if (index !== -1)
- callbacks.splice(index, 1);
- };
- }
- $set($$props) {
- if (this.$$set && !is_empty($$props)) {
- this.$$.skip_bound = true;
- this.$$set($$props);
- this.$$.skip_bound = false;
- }
- }
- };
-}
-
-function dispatch_dev(type, detail) {
- document.dispatchEvent(custom_event(type, Object.assign({ version: '3.52.0' }, detail), { bubbles: true }));
-}
-function append_dev(target, node) {
- dispatch_dev('SvelteDOMInsert', { target, node });
- append(target, node);
-}
-function insert_dev(target, node, anchor) {
- dispatch_dev('SvelteDOMInsert', { target, node, anchor });
- insert(target, node, anchor);
-}
-function detach_dev(node) {
- dispatch_dev('SvelteDOMRemove', { node });
- detach(node);
-}
-function listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) {
- const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : [];
- if (has_prevent_default)
- modifiers.push('preventDefault');
- if (has_stop_propagation)
- modifiers.push('stopPropagation');
- dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers });
- const dispose = listen(node, event, handler, options);
- return () => {
- dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers });
- dispose();
- };
-}
-function attr_dev(node, attribute, value) {
- attr(node, attribute, value);
- if (value == null)
- dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute });
- else
- dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value });
-}
-function set_data_dev(text, data) {
- data = '' + data;
- if (text.wholeText === data)
- return;
- dispatch_dev('SvelteDOMSetData', { node: text, data });
- text.data = data;
-}
-function validate_each_argument(arg) {
- if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) {
- let msg = '{#each} only iterates over array-like objects.';
- if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) {
- msg += ' You can use a spread to convert this iterable into an array.';
- }
- throw new Error(msg);
- }
-}
-function validate_slots(name, slot, keys) {
- for (const slot_key of Object.keys(slot)) {
- if (!~keys.indexOf(slot_key)) {
- console.warn(`<${name}> received an unexpected slot "${slot_key}".`);
- }
- }
-}
-
-export { run_all as A, svg_element as B, SvelteElement as S, attribute_to_object as a, insert_dev as b, space as c, dispatch_dev as d, element as e, add_location as f, attr_dev as g, append_dev as h, init as i, detach_dev as j, flush as k, validate_each_argument as l, globals as m, noop as n, onMount as o, destroy_each as p, binding_callbacks as q, set_style as r, safe_not_equal as s, text as t, listen_dev as u, validate_slots as v, set_data_dev as w, getContext as x, setContext as y, src_url_equal as z };
diff --git a/Server/public/js/components/index-8c09578c.js b/Server/public/js/components/index-8c09578c.js
deleted file mode 100644
index de4894e..0000000
--- a/Server/public/js/components/index-8c09578c.js
+++ /dev/null
@@ -1 +0,0 @@
-function t(){}function n(t){return t()}function e(){return Object.create(null)}function o(t){t.forEach(n)}function s(t){return"function"==typeof t}function r(t,n){return t!=t?n==n:t!==n||t&&"object"==typeof t||"function"==typeof t}let i,c;function a(t,n){return i||(i=document.createElement("a")),i.href=n,t===i.href}function u(n,e,o){n.$$.on_destroy.push(function(n,...e){if(null==n)return t;const o=n.subscribe(...e);return o.unsubscribe?()=>o.unsubscribe():o}(e,o))}function f(t,n){t.appendChild(n)}function l(t,n,e){t.insertBefore(n,e||null)}function h(t){t.parentNode.removeChild(t)}function d(t,n){for(let e=0;et.removeEventListener(n,e,o)}function y(t,n,e){null==e?t.removeAttribute(n):t.getAttribute(n)!==e&&t.setAttribute(n,e)}function _(t,n,e){n in t?t[n]="boolean"==typeof t[n]&&""===e||e:y(t,n,e)}function x(t,n){n=""+n,t.wholeText!==n&&(t.data=n)}function v(t,n,e,o){null===e?t.style.removeProperty(n):t.style.setProperty(n,e,o?"important":"")}class E{constructor(t=!1){this.is_svg=!1,this.is_svg=t,this.e=this.n=null}c(t){this.h(t)}m(t,n,e=null){var o;this.e||(this.is_svg?this.e=(o=n.nodeName,document.createElementNS("http://www.w3.org/2000/svg",o)):this.e=$(n.nodeName),this.t=n,this.c(t)),this.i(e)}h(t){this.e.innerHTML=t,this.n=Array.from(this.e.childNodes)}i(t){for(let n=0;n{const o=e.length?e[0]:n;return m.ctx&&f(m.ctx[t],m.ctx[t]=o)&&(!m.skip_bound&&m.bound[t]&&m.bound[t](o),g&&D(r,t)),n})):[],m.update(),g=!0,o(m.before_update),m.fragment=!!u&&u(m.ctx),i.target){if(i.hydrate){const t=function(t){return Array.from(t.childNodes)}(i.target);m.fragment&&m.fragment.l(t),t.forEach(h)}else m.fragment&&m.fragment.c();i.intro&&((b=r.$$.fragment)&&b.i&&(F.delete(b),b.i(y))),function(t,e,r,i){const{fragment:c,after_update:a}=t.$$;c&&c.m(e,r),i||O((()=>{const e=t.$$.on_mount.map(n).filter(s);t.$$.on_destroy?t.$$.on_destroy.push(...e):o(e),t.$$.on_mount=[]})),a.forEach(O)}(r,i.target,i.anchor,i.customElement),z()}var b,y;k(p)}let I;"function"==typeof HTMLElement&&(I=class extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"})}connectedCallback(){const{on_mount:t}=this.$$;this.$$.on_disconnect=t.map(n).filter(s);for(const t in this.$$.slotted)this.appendChild(this.$$.slotted[t])}attributeChangedCallback(t,n,e){this[t]=e}disconnectedCallback(){o(this.$$.on_disconnect)}$destroy(){!function(t,n){const e=t.$$;null!==e.fragment&&(o(e.on_destroy),e.fragment&&e.fragment.d(n),e.on_destroy=e.fragment=null,e.ctx=[])}(this,1),this.$destroy=t}$on(n,e){if(!s(e))return t;const o=this.$$.callbacks[n]||(this.$$.callbacks[n]=[]);return o.push(e),()=>{const t=o.indexOf(e);-1!==t&&o.splice(t,1)}}$set(t){var n;this.$$set&&(n=t,0!==Object.keys(n).length)&&(this.$$.skip_bound=!0,this.$$set(t),this.$$.skip_bound=!1)}});export{E as H,I as S,w as a,l as b,u as c,h as d,g as e,S as f,$ as g,m as h,G as i,y as j,a as k,_ as l,f as m,t as n,N as o,b as p,x as q,o as r,r as s,p as t,d as u,z as v,v as w,A as x,s as y};
diff --git a/Server/public/js/components/index-8c3676b2.js b/Server/public/js/components/index-8c3676b2.js
deleted file mode 100644
index b259d92..0000000
--- a/Server/public/js/components/index-8c3676b2.js
+++ /dev/null
@@ -1,524 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-function noop() { }
-function add_location(element, file, line, column, char) {
- element.__svelte_meta = {
- loc: { file, line, column, char }
- };
-}
-function run(fn) {
- return fn();
-}
-function blank_object() {
- return Object.create(null);
-}
-function run_all(fns) {
- fns.forEach(run);
-}
-function is_function(thing) {
- return typeof thing === 'function';
-}
-function safe_not_equal(a, b) {
- return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');
-}
-let src_url_equal_anchor;
-function src_url_equal(element_src, url) {
- if (!src_url_equal_anchor) {
- src_url_equal_anchor = document.createElement('a');
- }
- src_url_equal_anchor.href = url;
- return element_src === src_url_equal_anchor.href;
-}
-function is_empty(obj) {
- return Object.keys(obj).length === 0;
-}
-function validate_store(store, name) {
- if (store != null && typeof store.subscribe !== 'function') {
- throw new Error(`'${name}' is not a store with a 'subscribe' method`);
- }
-}
-function subscribe(store, ...callbacks) {
- if (store == null) {
- return noop;
- }
- const unsub = store.subscribe(...callbacks);
- return unsub.unsubscribe ? () => unsub.unsubscribe() : unsub;
-}
-function component_subscribe(component, store, callback) {
- component.$$.on_destroy.push(subscribe(store, callback));
-}
-function append(target, node) {
- target.appendChild(node);
-}
-function insert(target, node, anchor) {
- target.insertBefore(node, anchor || null);
-}
-function detach(node) {
- node.parentNode.removeChild(node);
-}
-function destroy_each(iterations, detaching) {
- for (let i = 0; i < iterations.length; i += 1) {
- if (iterations[i])
- iterations[i].d(detaching);
- }
-}
-function element(name) {
- return document.createElement(name);
-}
-function svg_element(name) {
- return document.createElementNS('http://www.w3.org/2000/svg', name);
-}
-function text(data) {
- return document.createTextNode(data);
-}
-function space() {
- return text(' ');
-}
-function empty() {
- return text('');
-}
-function listen(node, event, handler, options) {
- node.addEventListener(event, handler, options);
- return () => node.removeEventListener(event, handler, options);
-}
-function attr(node, attribute, value) {
- if (value == null)
- node.removeAttribute(attribute);
- else if (node.getAttribute(attribute) !== value)
- node.setAttribute(attribute, value);
-}
-function set_custom_element_data(node, prop, value) {
- if (prop in node) {
- node[prop] = typeof node[prop] === 'boolean' && value === '' ? true : value;
- }
- else {
- attr(node, prop, value);
- }
-}
-function children(element) {
- return Array.from(element.childNodes);
-}
-function set_input_value(input, value) {
- input.value = value == null ? '' : value;
-}
-function set_style(node, key, value, important) {
- if (value === null) {
- node.style.removeProperty(key);
- }
- else {
- node.style.setProperty(key, value, important ? 'important' : '');
- }
-}
-function custom_event(type, detail, { bubbles = false, cancelable = false } = {}) {
- const e = document.createEvent('CustomEvent');
- e.initCustomEvent(type, bubbles, cancelable, detail);
- return e;
-}
-class HtmlTag {
- constructor(is_svg = false) {
- this.is_svg = false;
- this.is_svg = is_svg;
- this.e = this.n = null;
- }
- c(html) {
- this.h(html);
- }
- m(html, target, anchor = null) {
- if (!this.e) {
- if (this.is_svg)
- this.e = svg_element(target.nodeName);
- else
- this.e = element(target.nodeName);
- this.t = target;
- this.c(html);
- }
- this.i(anchor);
- }
- h(html) {
- this.e.innerHTML = html;
- this.n = Array.from(this.e.childNodes);
- }
- i(anchor) {
- for (let i = 0; i < this.n.length; i += 1) {
- insert(this.t, this.n[i], anchor);
- }
- }
- p(html) {
- this.d();
- this.h(html);
- this.i(this.a);
- }
- d() {
- this.n.forEach(detach);
- }
-}
-function attribute_to_object(attributes) {
- const result = {};
- for (const attribute of attributes) {
- result[attribute.name] = attribute.value;
- }
- return result;
-}
-
-let current_component;
-function set_current_component(component) {
- current_component = component;
-}
-function get_current_component() {
- if (!current_component)
- throw new Error('Function called outside component initialization');
- return current_component;
-}
-/**
- * The `onMount` function schedules a callback to run as soon as the component has been mounted to the DOM.
- * It must be called during the component's initialisation (but doesn't need to live *inside* the component;
- * it can be called from an external module).
- *
- * `onMount` does not run inside a [server-side component](/docs#run-time-server-side-component-api).
- *
- * https://svelte.dev/docs#run-time-svelte-onmount
- */
-function onMount(fn) {
- get_current_component().$$.on_mount.push(fn);
-}
-/**
- * Schedules a callback to run immediately after the component has been updated.
- *
- * The first time the callback runs will be after the initial `onMount`
- */
-function afterUpdate(fn) {
- get_current_component().$$.after_update.push(fn);
-}
-/**
- * Associates an arbitrary `context` object with the current component and the specified `key`
- * and returns that object. The context is then available to children of the component
- * (including slotted content) with `getContext`.
- *
- * Like lifecycle functions, this must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-setcontext
- */
-function setContext(key, context) {
- get_current_component().$$.context.set(key, context);
- return context;
-}
-/**
- * Retrieves the context that belongs to the closest parent component with the specified `key`.
- * Must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-getcontext
- */
-function getContext(key) {
- return get_current_component().$$.context.get(key);
-}
-
-const dirty_components = [];
-const binding_callbacks = [];
-const render_callbacks = [];
-const flush_callbacks = [];
-const resolved_promise = Promise.resolve();
-let update_scheduled = false;
-function schedule_update() {
- if (!update_scheduled) {
- update_scheduled = true;
- resolved_promise.then(flush);
- }
-}
-function add_render_callback(fn) {
- render_callbacks.push(fn);
-}
-// flush() calls callbacks in this order:
-// 1. All beforeUpdate callbacks, in order: parents before children
-// 2. All bind:this callbacks, in reverse order: children before parents.
-// 3. All afterUpdate callbacks, in order: parents before children. EXCEPT
-// for afterUpdates called during the initial onMount, which are called in
-// reverse order: children before parents.
-// Since callbacks might update component values, which could trigger another
-// call to flush(), the following steps guard against this:
-// 1. During beforeUpdate, any updated components will be added to the
-// dirty_components array and will cause a reentrant call to flush(). Because
-// the flush index is kept outside the function, the reentrant call will pick
-// up where the earlier call left off and go through all dirty components. The
-// current_component value is saved and restored so that the reentrant call will
-// not interfere with the "parent" flush() call.
-// 2. bind:this callbacks cannot trigger new flush() calls.
-// 3. During afterUpdate, any updated components will NOT have their afterUpdate
-// callback called a second time; the seen_callbacks set, outside the flush()
-// function, guarantees this behavior.
-const seen_callbacks = new Set();
-let flushidx = 0; // Do *not* move this inside the flush() function
-function flush() {
- const saved_component = current_component;
- do {
- // first, call beforeUpdate functions
- // and update components
- while (flushidx < dirty_components.length) {
- const component = dirty_components[flushidx];
- flushidx++;
- set_current_component(component);
- update(component.$$);
- }
- set_current_component(null);
- dirty_components.length = 0;
- flushidx = 0;
- while (binding_callbacks.length)
- binding_callbacks.pop()();
- // then, once components are updated, call
- // afterUpdate functions. This may cause
- // subsequent updates...
- for (let i = 0; i < render_callbacks.length; i += 1) {
- const callback = render_callbacks[i];
- if (!seen_callbacks.has(callback)) {
- // ...so guard against infinite loops
- seen_callbacks.add(callback);
- callback();
- }
- }
- render_callbacks.length = 0;
- } while (dirty_components.length);
- while (flush_callbacks.length) {
- flush_callbacks.pop()();
- }
- update_scheduled = false;
- seen_callbacks.clear();
- set_current_component(saved_component);
-}
-function update($$) {
- if ($$.fragment !== null) {
- $$.update();
- run_all($$.before_update);
- const dirty = $$.dirty;
- $$.dirty = [-1];
- $$.fragment && $$.fragment.p($$.ctx, dirty);
- $$.after_update.forEach(add_render_callback);
- }
-}
-const outroing = new Set();
-function transition_in(block, local) {
- if (block && block.i) {
- outroing.delete(block);
- block.i(local);
- }
-}
-
-const globals = (typeof window !== 'undefined'
- ? window
- : typeof globalThis !== 'undefined'
- ? globalThis
- : global);
-function mount_component(component, target, anchor, customElement) {
- const { fragment, after_update } = component.$$;
- fragment && fragment.m(target, anchor);
- if (!customElement) {
- // onMount happens before the initial afterUpdate
- add_render_callback(() => {
- const new_on_destroy = component.$$.on_mount.map(run).filter(is_function);
- // if the component was destroyed immediately
- // it will update the `$$.on_destroy` reference to `null`.
- // the destructured on_destroy may still reference to the old array
- if (component.$$.on_destroy) {
- component.$$.on_destroy.push(...new_on_destroy);
- }
- else {
- // Edge case - component was destroyed immediately,
- // most likely as a result of a binding initialising
- run_all(new_on_destroy);
- }
- component.$$.on_mount = [];
- });
- }
- after_update.forEach(add_render_callback);
-}
-function destroy_component(component, detaching) {
- const $$ = component.$$;
- if ($$.fragment !== null) {
- run_all($$.on_destroy);
- $$.fragment && $$.fragment.d(detaching);
- // TODO null out other refs, including component.$$ (but need to
- // preserve final state?)
- $$.on_destroy = $$.fragment = null;
- $$.ctx = [];
- }
-}
-function make_dirty(component, i) {
- if (component.$$.dirty[0] === -1) {
- dirty_components.push(component);
- schedule_update();
- component.$$.dirty.fill(0);
- }
- component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31));
-}
-function init(component, options, instance, create_fragment, not_equal, props, append_styles, dirty = [-1]) {
- const parent_component = current_component;
- set_current_component(component);
- const $$ = component.$$ = {
- fragment: null,
- ctx: [],
- // state
- props,
- update: noop,
- not_equal,
- bound: blank_object(),
- // lifecycle
- on_mount: [],
- on_destroy: [],
- on_disconnect: [],
- before_update: [],
- after_update: [],
- context: new Map(options.context || (parent_component ? parent_component.$$.context : [])),
- // everything else
- callbacks: blank_object(),
- dirty,
- skip_bound: false,
- root: options.target || parent_component.$$.root
- };
- append_styles && append_styles($$.root);
- let ready = false;
- $$.ctx = instance
- ? instance(component, options.props || {}, (i, ret, ...rest) => {
- const value = rest.length ? rest[0] : ret;
- if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {
- if (!$$.skip_bound && $$.bound[i])
- $$.bound[i](value);
- if (ready)
- make_dirty(component, i);
- }
- return ret;
- })
- : [];
- $$.update();
- ready = true;
- run_all($$.before_update);
- // `false` as a special case of no DOM component
- $$.fragment = create_fragment ? create_fragment($$.ctx) : false;
- if (options.target) {
- if (options.hydrate) {
- const nodes = children(options.target);
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.l(nodes);
- nodes.forEach(detach);
- }
- else {
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.c();
- }
- if (options.intro)
- transition_in(component.$$.fragment);
- mount_component(component, options.target, options.anchor, options.customElement);
- flush();
- }
- set_current_component(parent_component);
-}
-let SvelteElement;
-if (typeof HTMLElement === 'function') {
- SvelteElement = class extends HTMLElement {
- constructor() {
- super();
- this.attachShadow({ mode: 'open' });
- }
- connectedCallback() {
- const { on_mount } = this.$$;
- this.$$.on_disconnect = on_mount.map(run).filter(is_function);
- // @ts-ignore todo: improve typings
- for (const key in this.$$.slotted) {
- // @ts-ignore todo: improve typings
- this.appendChild(this.$$.slotted[key]);
- }
- }
- attributeChangedCallback(attr, _oldValue, newValue) {
- this[attr] = newValue;
- }
- disconnectedCallback() {
- run_all(this.$$.on_disconnect);
- }
- $destroy() {
- destroy_component(this, 1);
- this.$destroy = noop;
- }
- $on(type, callback) {
- // TODO should this delegate to addEventListener?
- if (!is_function(callback)) {
- return noop;
- }
- const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));
- callbacks.push(callback);
- return () => {
- const index = callbacks.indexOf(callback);
- if (index !== -1)
- callbacks.splice(index, 1);
- };
- }
- $set($$props) {
- if (this.$$set && !is_empty($$props)) {
- this.$$.skip_bound = true;
- this.$$set($$props);
- this.$$.skip_bound = false;
- }
- }
- };
-}
-
-function dispatch_dev(type, detail) {
- document.dispatchEvent(custom_event(type, Object.assign({ version: '3.52.0' }, detail), { bubbles: true }));
-}
-function append_dev(target, node) {
- dispatch_dev('SvelteDOMInsert', { target, node });
- append(target, node);
-}
-function insert_dev(target, node, anchor) {
- dispatch_dev('SvelteDOMInsert', { target, node, anchor });
- insert(target, node, anchor);
-}
-function detach_dev(node) {
- dispatch_dev('SvelteDOMRemove', { node });
- detach(node);
-}
-function listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) {
- const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : [];
- if (has_prevent_default)
- modifiers.push('preventDefault');
- if (has_stop_propagation)
- modifiers.push('stopPropagation');
- dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers });
- const dispose = listen(node, event, handler, options);
- return () => {
- dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers });
- dispose();
- };
-}
-function attr_dev(node, attribute, value) {
- attr(node, attribute, value);
- if (value == null)
- dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute });
- else
- dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value });
-}
-function prop_dev(node, property, value) {
- node[property] = value;
- dispatch_dev('SvelteDOMSetProperty', { node, property, value });
-}
-function set_data_dev(text, data) {
- data = '' + data;
- if (text.wholeText === data)
- return;
- dispatch_dev('SvelteDOMSetData', { node: text, data });
- text.data = data;
-}
-function validate_each_argument(arg) {
- if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) {
- let msg = '{#each} only iterates over array-like objects.';
- if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) {
- msg += ' You can use a spread to convert this iterable into an array.';
- }
- throw new Error(msg);
- }
-}
-function validate_slots(name, slot, keys) {
- for (const slot_key of Object.keys(slot)) {
- if (!~keys.indexOf(slot_key)) {
- console.warn(`<${name}> received an unexpected slot "${slot_key}".`);
- }
- }
-}
-
-export { set_custom_element_data as A, validate_each_argument as B, text as C, set_data_dev as D, destroy_each as E, prop_dev as F, set_style as G, svg_element as H, HtmlTag as I, afterUpdate as J, set_input_value as K, SvelteElement as S, attribute_to_object as a, insert_dev as b, setContext as c, dispatch_dev as d, globals as e, element as f, getContext as g, space as h, init as i, add_location as j, attr_dev as k, append_dev as l, listen_dev as m, noop as n, onMount as o, detach_dev as p, binding_callbacks as q, run_all as r, safe_not_equal as s, flush as t, is_function as u, validate_slots as v, validate_store as w, component_subscribe as x, empty as y, src_url_equal as z };
diff --git a/Server/public/js/components/index-95aedb1a.js b/Server/public/js/components/index-95aedb1a.js
deleted file mode 100644
index f4c2a18..0000000
--- a/Server/public/js/components/index-95aedb1a.js
+++ /dev/null
@@ -1 +0,0 @@
-function t(){}function n(t){return t()}function e(){return Object.create(null)}function o(t){t.forEach(n)}function s(t){return"function"==typeof t}function r(t,n){return t!=t?n==n:t!==n||t&&"object"==typeof t||"function"==typeof t}let i,c;function a(t,n){return i||(i=document.createElement("a")),i.href=n,t===i.href}function u(t,n){t.appendChild(n)}function f(t,n,e){t.insertBefore(n,e||null)}function l(t){t.parentNode.removeChild(t)}function h(t,n){for(let e=0;et.removeEventListener(n,e,o)}function _(t,n,e){null==e?t.removeAttribute(n):t.getAttribute(n)!==e&&t.setAttribute(n,e)}function y(t,n,e){n in t?t[n]="boolean"==typeof t[n]&&""===e||e:_(t,n,e)}function b(t,n){n=""+n,t.wholeText!==n&&(t.data=n)}function x(t,n,e,o){null===e?t.style.removeProperty(n):t.style.setProperty(n,e,o?"important":"")}class v{constructor(t=!1){this.is_svg=!1,this.is_svg=t,this.e=this.n=null}c(t){this.h(t)}m(t,n,e=null){var o;this.e||(this.is_svg?this.e=(o=n.nodeName,document.createElementNS("http://www.w3.org/2000/svg",o)):this.e=d(n.nodeName),this.t=n,this.c(t)),this.i(e)}h(t){this.e.innerHTML=t,this.n=Array.from(this.e.childNodes)}i(t){for(let n=0;n{const o=e.length?e[0]:n;return m.ctx&&f(m.ctx[t],m.ctx[t]=o)&&(!m.skip_bound&&m.bound[t]&&m.bound[t](o),g&&F(r,t)),n})):[],m.update(),g=!0,o(m.before_update),m.fragment=!!u&&u(m.ctx),i.target){if(i.hydrate){const t=function(t){return Array.from(t.childNodes)}(i.target);m.fragment&&m.fragment.l(t),t.forEach(l)}else m.fragment&&m.fragment.c();i.intro&&((_=r.$$.fragment)&&_.i&&(B.delete(_),_.i(y))),function(t,e,r,i){const{fragment:c,after_update:a}=t.$$;c&&c.m(e,r),i||M((()=>{const e=t.$$.on_mount.map(n).filter(s);t.$$.on_destroy?t.$$.on_destroy.push(...e):o(e),t.$$.on_mount=[]})),a.forEach(M)}(r,i.target,i.anchor,i.customElement),q()}var _,y;w(p)}let G;"function"==typeof HTMLElement&&(G=class extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"})}connectedCallback(){const{on_mount:t}=this.$$;this.$$.on_disconnect=t.map(n).filter(s);for(const t in this.$$.slotted)this.appendChild(this.$$.slotted[t])}attributeChangedCallback(t,n,e){this[t]=e}disconnectedCallback(){o(this.$$.on_disconnect)}$destroy(){!function(t,n){const e=t.$$;null!==e.fragment&&(o(e.on_destroy),e.fragment&&e.fragment.d(n),e.on_destroy=e.fragment=null,e.ctx=[])}(this,1),this.$destroy=t}$on(n,e){if(!s(e))return t;const o=this.$$.callbacks[n]||(this.$$.callbacks[n]=[]);return o.push(e),()=>{const t=o.indexOf(e);-1!==t&&o.splice(t,1)}}$set(t){var n;this.$$set&&(n=t,0!==Object.keys(n).length)&&(this.$$.skip_bound=!0,this.$$set(t),this.$$.skip_bound=!1)}});export{v as H,G as S,E as a,f as b,p as c,_ as d,d as e,a as f,u as g,l as h,D as i,h as j,y as k,q as l,x as m,t as n,C as o,g as p,b as q,L as r,r as s,$ as t,N as u,o as v,m as w,s as x};
diff --git a/Server/public/js/components/index-970976e6.js b/Server/public/js/components/index-970976e6.js
deleted file mode 100644
index 6b381e8..0000000
--- a/Server/public/js/components/index-970976e6.js
+++ /dev/null
@@ -1,509 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-function noop() { }
-function add_location(element, file, line, column, char) {
- element.__svelte_meta = {
- loc: { file, line, column, char }
- };
-}
-function run(fn) {
- return fn();
-}
-function blank_object() {
- return Object.create(null);
-}
-function run_all(fns) {
- fns.forEach(run);
-}
-function is_function(thing) {
- return typeof thing === 'function';
-}
-function safe_not_equal(a, b) {
- return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');
-}
-let src_url_equal_anchor;
-function src_url_equal(element_src, url) {
- if (!src_url_equal_anchor) {
- src_url_equal_anchor = document.createElement('a');
- }
- src_url_equal_anchor.href = url;
- return element_src === src_url_equal_anchor.href;
-}
-function is_empty(obj) {
- return Object.keys(obj).length === 0;
-}
-function validate_store(store, name) {
- if (store != null && typeof store.subscribe !== 'function') {
- throw new Error(`'${name}' is not a store with a 'subscribe' method`);
- }
-}
-function subscribe(store, ...callbacks) {
- if (store == null) {
- return noop;
- }
- const unsub = store.subscribe(...callbacks);
- return unsub.unsubscribe ? () => unsub.unsubscribe() : unsub;
-}
-function component_subscribe(component, store, callback) {
- component.$$.on_destroy.push(subscribe(store, callback));
-}
-function append(target, node) {
- target.appendChild(node);
-}
-function insert(target, node, anchor) {
- target.insertBefore(node, anchor || null);
-}
-function detach(node) {
- node.parentNode.removeChild(node);
-}
-function destroy_each(iterations, detaching) {
- for (let i = 0; i < iterations.length; i += 1) {
- if (iterations[i])
- iterations[i].d(detaching);
- }
-}
-function element(name) {
- return document.createElement(name);
-}
-function svg_element(name) {
- return document.createElementNS('http://www.w3.org/2000/svg', name);
-}
-function text(data) {
- return document.createTextNode(data);
-}
-function space() {
- return text(' ');
-}
-function empty() {
- return text('');
-}
-function listen(node, event, handler, options) {
- node.addEventListener(event, handler, options);
- return () => node.removeEventListener(event, handler, options);
-}
-function attr(node, attribute, value) {
- if (value == null)
- node.removeAttribute(attribute);
- else if (node.getAttribute(attribute) !== value)
- node.setAttribute(attribute, value);
-}
-function set_custom_element_data(node, prop, value) {
- if (prop in node) {
- node[prop] = typeof node[prop] === 'boolean' && value === '' ? true : value;
- }
- else {
- attr(node, prop, value);
- }
-}
-function children(element) {
- return Array.from(element.childNodes);
-}
-function set_style(node, key, value, important) {
- if (value === null) {
- node.style.removeProperty(key);
- }
- else {
- node.style.setProperty(key, value, important ? 'important' : '');
- }
-}
-function custom_event(type, detail, { bubbles = false, cancelable = false } = {}) {
- const e = document.createEvent('CustomEvent');
- e.initCustomEvent(type, bubbles, cancelable, detail);
- return e;
-}
-class HtmlTag {
- constructor(is_svg = false) {
- this.is_svg = false;
- this.is_svg = is_svg;
- this.e = this.n = null;
- }
- c(html) {
- this.h(html);
- }
- m(html, target, anchor = null) {
- if (!this.e) {
- if (this.is_svg)
- this.e = svg_element(target.nodeName);
- else
- this.e = element(target.nodeName);
- this.t = target;
- this.c(html);
- }
- this.i(anchor);
- }
- h(html) {
- this.e.innerHTML = html;
- this.n = Array.from(this.e.childNodes);
- }
- i(anchor) {
- for (let i = 0; i < this.n.length; i += 1) {
- insert(this.t, this.n[i], anchor);
- }
- }
- p(html) {
- this.d();
- this.h(html);
- this.i(this.a);
- }
- d() {
- this.n.forEach(detach);
- }
-}
-function attribute_to_object(attributes) {
- const result = {};
- for (const attribute of attributes) {
- result[attribute.name] = attribute.value;
- }
- return result;
-}
-
-let current_component;
-function set_current_component(component) {
- current_component = component;
-}
-function get_current_component() {
- if (!current_component)
- throw new Error('Function called outside component initialization');
- return current_component;
-}
-/**
- * The `onMount` function schedules a callback to run as soon as the component has been mounted to the DOM.
- * It must be called during the component's initialisation (but doesn't need to live *inside* the component;
- * it can be called from an external module).
- *
- * `onMount` does not run inside a [server-side component](/docs#run-time-server-side-component-api).
- *
- * https://svelte.dev/docs#run-time-svelte-onmount
- */
-function onMount(fn) {
- get_current_component().$$.on_mount.push(fn);
-}
-/**
- * Associates an arbitrary `context` object with the current component and the specified `key`
- * and returns that object. The context is then available to children of the component
- * (including slotted content) with `getContext`.
- *
- * Like lifecycle functions, this must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-setcontext
- */
-function setContext(key, context) {
- get_current_component().$$.context.set(key, context);
- return context;
-}
-/**
- * Retrieves the context that belongs to the closest parent component with the specified `key`.
- * Must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-getcontext
- */
-function getContext(key) {
- return get_current_component().$$.context.get(key);
-}
-
-const dirty_components = [];
-const binding_callbacks = [];
-const render_callbacks = [];
-const flush_callbacks = [];
-const resolved_promise = Promise.resolve();
-let update_scheduled = false;
-function schedule_update() {
- if (!update_scheduled) {
- update_scheduled = true;
- resolved_promise.then(flush);
- }
-}
-function add_render_callback(fn) {
- render_callbacks.push(fn);
-}
-// flush() calls callbacks in this order:
-// 1. All beforeUpdate callbacks, in order: parents before children
-// 2. All bind:this callbacks, in reverse order: children before parents.
-// 3. All afterUpdate callbacks, in order: parents before children. EXCEPT
-// for afterUpdates called during the initial onMount, which are called in
-// reverse order: children before parents.
-// Since callbacks might update component values, which could trigger another
-// call to flush(), the following steps guard against this:
-// 1. During beforeUpdate, any updated components will be added to the
-// dirty_components array and will cause a reentrant call to flush(). Because
-// the flush index is kept outside the function, the reentrant call will pick
-// up where the earlier call left off and go through all dirty components. The
-// current_component value is saved and restored so that the reentrant call will
-// not interfere with the "parent" flush() call.
-// 2. bind:this callbacks cannot trigger new flush() calls.
-// 3. During afterUpdate, any updated components will NOT have their afterUpdate
-// callback called a second time; the seen_callbacks set, outside the flush()
-// function, guarantees this behavior.
-const seen_callbacks = new Set();
-let flushidx = 0; // Do *not* move this inside the flush() function
-function flush() {
- const saved_component = current_component;
- do {
- // first, call beforeUpdate functions
- // and update components
- while (flushidx < dirty_components.length) {
- const component = dirty_components[flushidx];
- flushidx++;
- set_current_component(component);
- update(component.$$);
- }
- set_current_component(null);
- dirty_components.length = 0;
- flushidx = 0;
- while (binding_callbacks.length)
- binding_callbacks.pop()();
- // then, once components are updated, call
- // afterUpdate functions. This may cause
- // subsequent updates...
- for (let i = 0; i < render_callbacks.length; i += 1) {
- const callback = render_callbacks[i];
- if (!seen_callbacks.has(callback)) {
- // ...so guard against infinite loops
- seen_callbacks.add(callback);
- callback();
- }
- }
- render_callbacks.length = 0;
- } while (dirty_components.length);
- while (flush_callbacks.length) {
- flush_callbacks.pop()();
- }
- update_scheduled = false;
- seen_callbacks.clear();
- set_current_component(saved_component);
-}
-function update($$) {
- if ($$.fragment !== null) {
- $$.update();
- run_all($$.before_update);
- const dirty = $$.dirty;
- $$.dirty = [-1];
- $$.fragment && $$.fragment.p($$.ctx, dirty);
- $$.after_update.forEach(add_render_callback);
- }
-}
-const outroing = new Set();
-function transition_in(block, local) {
- if (block && block.i) {
- outroing.delete(block);
- block.i(local);
- }
-}
-
-const globals = (typeof window !== 'undefined'
- ? window
- : typeof globalThis !== 'undefined'
- ? globalThis
- : global);
-function mount_component(component, target, anchor, customElement) {
- const { fragment, after_update } = component.$$;
- fragment && fragment.m(target, anchor);
- if (!customElement) {
- // onMount happens before the initial afterUpdate
- add_render_callback(() => {
- const new_on_destroy = component.$$.on_mount.map(run).filter(is_function);
- // if the component was destroyed immediately
- // it will update the `$$.on_destroy` reference to `null`.
- // the destructured on_destroy may still reference to the old array
- if (component.$$.on_destroy) {
- component.$$.on_destroy.push(...new_on_destroy);
- }
- else {
- // Edge case - component was destroyed immediately,
- // most likely as a result of a binding initialising
- run_all(new_on_destroy);
- }
- component.$$.on_mount = [];
- });
- }
- after_update.forEach(add_render_callback);
-}
-function destroy_component(component, detaching) {
- const $$ = component.$$;
- if ($$.fragment !== null) {
- run_all($$.on_destroy);
- $$.fragment && $$.fragment.d(detaching);
- // TODO null out other refs, including component.$$ (but need to
- // preserve final state?)
- $$.on_destroy = $$.fragment = null;
- $$.ctx = [];
- }
-}
-function make_dirty(component, i) {
- if (component.$$.dirty[0] === -1) {
- dirty_components.push(component);
- schedule_update();
- component.$$.dirty.fill(0);
- }
- component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31));
-}
-function init(component, options, instance, create_fragment, not_equal, props, append_styles, dirty = [-1]) {
- const parent_component = current_component;
- set_current_component(component);
- const $$ = component.$$ = {
- fragment: null,
- ctx: [],
- // state
- props,
- update: noop,
- not_equal,
- bound: blank_object(),
- // lifecycle
- on_mount: [],
- on_destroy: [],
- on_disconnect: [],
- before_update: [],
- after_update: [],
- context: new Map(options.context || (parent_component ? parent_component.$$.context : [])),
- // everything else
- callbacks: blank_object(),
- dirty,
- skip_bound: false,
- root: options.target || parent_component.$$.root
- };
- append_styles && append_styles($$.root);
- let ready = false;
- $$.ctx = instance
- ? instance(component, options.props || {}, (i, ret, ...rest) => {
- const value = rest.length ? rest[0] : ret;
- if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {
- if (!$$.skip_bound && $$.bound[i])
- $$.bound[i](value);
- if (ready)
- make_dirty(component, i);
- }
- return ret;
- })
- : [];
- $$.update();
- ready = true;
- run_all($$.before_update);
- // `false` as a special case of no DOM component
- $$.fragment = create_fragment ? create_fragment($$.ctx) : false;
- if (options.target) {
- if (options.hydrate) {
- const nodes = children(options.target);
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.l(nodes);
- nodes.forEach(detach);
- }
- else {
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.c();
- }
- if (options.intro)
- transition_in(component.$$.fragment);
- mount_component(component, options.target, options.anchor, options.customElement);
- flush();
- }
- set_current_component(parent_component);
-}
-let SvelteElement;
-if (typeof HTMLElement === 'function') {
- SvelteElement = class extends HTMLElement {
- constructor() {
- super();
- this.attachShadow({ mode: 'open' });
- }
- connectedCallback() {
- const { on_mount } = this.$$;
- this.$$.on_disconnect = on_mount.map(run).filter(is_function);
- // @ts-ignore todo: improve typings
- for (const key in this.$$.slotted) {
- // @ts-ignore todo: improve typings
- this.appendChild(this.$$.slotted[key]);
- }
- }
- attributeChangedCallback(attr, _oldValue, newValue) {
- this[attr] = newValue;
- }
- disconnectedCallback() {
- run_all(this.$$.on_disconnect);
- }
- $destroy() {
- destroy_component(this, 1);
- this.$destroy = noop;
- }
- $on(type, callback) {
- // TODO should this delegate to addEventListener?
- if (!is_function(callback)) {
- return noop;
- }
- const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));
- callbacks.push(callback);
- return () => {
- const index = callbacks.indexOf(callback);
- if (index !== -1)
- callbacks.splice(index, 1);
- };
- }
- $set($$props) {
- if (this.$$set && !is_empty($$props)) {
- this.$$.skip_bound = true;
- this.$$set($$props);
- this.$$.skip_bound = false;
- }
- }
- };
-}
-
-function dispatch_dev(type, detail) {
- document.dispatchEvent(custom_event(type, Object.assign({ version: '3.52.0' }, detail), { bubbles: true }));
-}
-function append_dev(target, node) {
- dispatch_dev('SvelteDOMInsert', { target, node });
- append(target, node);
-}
-function insert_dev(target, node, anchor) {
- dispatch_dev('SvelteDOMInsert', { target, node, anchor });
- insert(target, node, anchor);
-}
-function detach_dev(node) {
- dispatch_dev('SvelteDOMRemove', { node });
- detach(node);
-}
-function listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) {
- const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : [];
- if (has_prevent_default)
- modifiers.push('preventDefault');
- if (has_stop_propagation)
- modifiers.push('stopPropagation');
- dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers });
- const dispose = listen(node, event, handler, options);
- return () => {
- dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers });
- dispose();
- };
-}
-function attr_dev(node, attribute, value) {
- attr(node, attribute, value);
- if (value == null)
- dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute });
- else
- dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value });
-}
-function set_data_dev(text, data) {
- data = '' + data;
- if (text.wholeText === data)
- return;
- dispatch_dev('SvelteDOMSetData', { node: text, data });
- text.data = data;
-}
-function validate_each_argument(arg) {
- if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) {
- let msg = '{#each} only iterates over array-like objects.';
- if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) {
- msg += ' You can use a spread to convert this iterable into an array.';
- }
- throw new Error(msg);
- }
-}
-function validate_slots(name, slot, keys) {
- for (const slot_key of Object.keys(slot)) {
- if (!~keys.indexOf(slot_key)) {
- console.warn(`<${name}> received an unexpected slot "${slot_key}".`);
- }
- }
-}
-
-export { setContext as A, run_all as B, svg_element as C, empty as D, is_function as E, validate_store as F, component_subscribe as G, HtmlTag as H, SvelteElement as S, attribute_to_object as a, insert_dev as b, validate_slots as c, dispatch_dev as d, element as e, space as f, add_location as g, attr_dev as h, init as i, src_url_equal as j, append_dev as k, detach_dev as l, destroy_each as m, noop as n, onMount as o, set_custom_element_data as p, flush as q, globals as r, safe_not_equal as s, text as t, binding_callbacks as u, validate_each_argument as v, set_style as w, listen_dev as x, set_data_dev as y, getContext as z };
diff --git a/Server/public/js/components/index-998178c7.js b/Server/public/js/components/index-998178c7.js
deleted file mode 100644
index 8490673..0000000
--- a/Server/public/js/components/index-998178c7.js
+++ /dev/null
@@ -1,524 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-function noop() { }
-function add_location(element, file, line, column, char) {
- element.__svelte_meta = {
- loc: { file, line, column, char }
- };
-}
-function run(fn) {
- return fn();
-}
-function blank_object() {
- return Object.create(null);
-}
-function run_all(fns) {
- fns.forEach(run);
-}
-function is_function(thing) {
- return typeof thing === 'function';
-}
-function safe_not_equal(a, b) {
- return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');
-}
-let src_url_equal_anchor;
-function src_url_equal(element_src, url) {
- if (!src_url_equal_anchor) {
- src_url_equal_anchor = document.createElement('a');
- }
- src_url_equal_anchor.href = url;
- return element_src === src_url_equal_anchor.href;
-}
-function is_empty(obj) {
- return Object.keys(obj).length === 0;
-}
-function validate_store(store, name) {
- if (store != null && typeof store.subscribe !== 'function') {
- throw new Error(`'${name}' is not a store with a 'subscribe' method`);
- }
-}
-function subscribe(store, ...callbacks) {
- if (store == null) {
- return noop;
- }
- const unsub = store.subscribe(...callbacks);
- return unsub.unsubscribe ? () => unsub.unsubscribe() : unsub;
-}
-function component_subscribe(component, store, callback) {
- component.$$.on_destroy.push(subscribe(store, callback));
-}
-function append(target, node) {
- target.appendChild(node);
-}
-function insert(target, node, anchor) {
- target.insertBefore(node, anchor || null);
-}
-function detach(node) {
- node.parentNode.removeChild(node);
-}
-function destroy_each(iterations, detaching) {
- for (let i = 0; i < iterations.length; i += 1) {
- if (iterations[i])
- iterations[i].d(detaching);
- }
-}
-function element(name) {
- return document.createElement(name);
-}
-function svg_element(name) {
- return document.createElementNS('http://www.w3.org/2000/svg', name);
-}
-function text(data) {
- return document.createTextNode(data);
-}
-function space() {
- return text(' ');
-}
-function empty() {
- return text('');
-}
-function listen(node, event, handler, options) {
- node.addEventListener(event, handler, options);
- return () => node.removeEventListener(event, handler, options);
-}
-function attr(node, attribute, value) {
- if (value == null)
- node.removeAttribute(attribute);
- else if (node.getAttribute(attribute) !== value)
- node.setAttribute(attribute, value);
-}
-function set_custom_element_data(node, prop, value) {
- if (prop in node) {
- node[prop] = typeof node[prop] === 'boolean' && value === '' ? true : value;
- }
- else {
- attr(node, prop, value);
- }
-}
-function children(element) {
- return Array.from(element.childNodes);
-}
-function set_input_value(input, value) {
- input.value = value == null ? '' : value;
-}
-function set_style(node, key, value, important) {
- if (value === null) {
- node.style.removeProperty(key);
- }
- else {
- node.style.setProperty(key, value, important ? 'important' : '');
- }
-}
-function custom_event(type, detail, { bubbles = false, cancelable = false } = {}) {
- const e = document.createEvent('CustomEvent');
- e.initCustomEvent(type, bubbles, cancelable, detail);
- return e;
-}
-class HtmlTag {
- constructor(is_svg = false) {
- this.is_svg = false;
- this.is_svg = is_svg;
- this.e = this.n = null;
- }
- c(html) {
- this.h(html);
- }
- m(html, target, anchor = null) {
- if (!this.e) {
- if (this.is_svg)
- this.e = svg_element(target.nodeName);
- else
- this.e = element(target.nodeName);
- this.t = target;
- this.c(html);
- }
- this.i(anchor);
- }
- h(html) {
- this.e.innerHTML = html;
- this.n = Array.from(this.e.childNodes);
- }
- i(anchor) {
- for (let i = 0; i < this.n.length; i += 1) {
- insert(this.t, this.n[i], anchor);
- }
- }
- p(html) {
- this.d();
- this.h(html);
- this.i(this.a);
- }
- d() {
- this.n.forEach(detach);
- }
-}
-function attribute_to_object(attributes) {
- const result = {};
- for (const attribute of attributes) {
- result[attribute.name] = attribute.value;
- }
- return result;
-}
-
-let current_component;
-function set_current_component(component) {
- current_component = component;
-}
-function get_current_component() {
- if (!current_component)
- throw new Error('Function called outside component initialization');
- return current_component;
-}
-/**
- * The `onMount` function schedules a callback to run as soon as the component has been mounted to the DOM.
- * It must be called during the component's initialisation (but doesn't need to live *inside* the component;
- * it can be called from an external module).
- *
- * `onMount` does not run inside a [server-side component](/docs#run-time-server-side-component-api).
- *
- * https://svelte.dev/docs#run-time-svelte-onmount
- */
-function onMount(fn) {
- get_current_component().$$.on_mount.push(fn);
-}
-/**
- * Schedules a callback to run immediately after the component has been updated.
- *
- * The first time the callback runs will be after the initial `onMount`
- */
-function afterUpdate(fn) {
- get_current_component().$$.after_update.push(fn);
-}
-/**
- * Associates an arbitrary `context` object with the current component and the specified `key`
- * and returns that object. The context is then available to children of the component
- * (including slotted content) with `getContext`.
- *
- * Like lifecycle functions, this must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-setcontext
- */
-function setContext(key, context) {
- get_current_component().$$.context.set(key, context);
- return context;
-}
-/**
- * Retrieves the context that belongs to the closest parent component with the specified `key`.
- * Must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-getcontext
- */
-function getContext(key) {
- return get_current_component().$$.context.get(key);
-}
-
-const dirty_components = [];
-const binding_callbacks = [];
-const render_callbacks = [];
-const flush_callbacks = [];
-const resolved_promise = Promise.resolve();
-let update_scheduled = false;
-function schedule_update() {
- if (!update_scheduled) {
- update_scheduled = true;
- resolved_promise.then(flush);
- }
-}
-function add_render_callback(fn) {
- render_callbacks.push(fn);
-}
-// flush() calls callbacks in this order:
-// 1. All beforeUpdate callbacks, in order: parents before children
-// 2. All bind:this callbacks, in reverse order: children before parents.
-// 3. All afterUpdate callbacks, in order: parents before children. EXCEPT
-// for afterUpdates called during the initial onMount, which are called in
-// reverse order: children before parents.
-// Since callbacks might update component values, which could trigger another
-// call to flush(), the following steps guard against this:
-// 1. During beforeUpdate, any updated components will be added to the
-// dirty_components array and will cause a reentrant call to flush(). Because
-// the flush index is kept outside the function, the reentrant call will pick
-// up where the earlier call left off and go through all dirty components. The
-// current_component value is saved and restored so that the reentrant call will
-// not interfere with the "parent" flush() call.
-// 2. bind:this callbacks cannot trigger new flush() calls.
-// 3. During afterUpdate, any updated components will NOT have their afterUpdate
-// callback called a second time; the seen_callbacks set, outside the flush()
-// function, guarantees this behavior.
-const seen_callbacks = new Set();
-let flushidx = 0; // Do *not* move this inside the flush() function
-function flush() {
- const saved_component = current_component;
- do {
- // first, call beforeUpdate functions
- // and update components
- while (flushidx < dirty_components.length) {
- const component = dirty_components[flushidx];
- flushidx++;
- set_current_component(component);
- update(component.$$);
- }
- set_current_component(null);
- dirty_components.length = 0;
- flushidx = 0;
- while (binding_callbacks.length)
- binding_callbacks.pop()();
- // then, once components are updated, call
- // afterUpdate functions. This may cause
- // subsequent updates...
- for (let i = 0; i < render_callbacks.length; i += 1) {
- const callback = render_callbacks[i];
- if (!seen_callbacks.has(callback)) {
- // ...so guard against infinite loops
- seen_callbacks.add(callback);
- callback();
- }
- }
- render_callbacks.length = 0;
- } while (dirty_components.length);
- while (flush_callbacks.length) {
- flush_callbacks.pop()();
- }
- update_scheduled = false;
- seen_callbacks.clear();
- set_current_component(saved_component);
-}
-function update($$) {
- if ($$.fragment !== null) {
- $$.update();
- run_all($$.before_update);
- const dirty = $$.dirty;
- $$.dirty = [-1];
- $$.fragment && $$.fragment.p($$.ctx, dirty);
- $$.after_update.forEach(add_render_callback);
- }
-}
-const outroing = new Set();
-function transition_in(block, local) {
- if (block && block.i) {
- outroing.delete(block);
- block.i(local);
- }
-}
-
-const globals = (typeof window !== 'undefined'
- ? window
- : typeof globalThis !== 'undefined'
- ? globalThis
- : global);
-function mount_component(component, target, anchor, customElement) {
- const { fragment, after_update } = component.$$;
- fragment && fragment.m(target, anchor);
- if (!customElement) {
- // onMount happens before the initial afterUpdate
- add_render_callback(() => {
- const new_on_destroy = component.$$.on_mount.map(run).filter(is_function);
- // if the component was destroyed immediately
- // it will update the `$$.on_destroy` reference to `null`.
- // the destructured on_destroy may still reference to the old array
- if (component.$$.on_destroy) {
- component.$$.on_destroy.push(...new_on_destroy);
- }
- else {
- // Edge case - component was destroyed immediately,
- // most likely as a result of a binding initialising
- run_all(new_on_destroy);
- }
- component.$$.on_mount = [];
- });
- }
- after_update.forEach(add_render_callback);
-}
-function destroy_component(component, detaching) {
- const $$ = component.$$;
- if ($$.fragment !== null) {
- run_all($$.on_destroy);
- $$.fragment && $$.fragment.d(detaching);
- // TODO null out other refs, including component.$$ (but need to
- // preserve final state?)
- $$.on_destroy = $$.fragment = null;
- $$.ctx = [];
- }
-}
-function make_dirty(component, i) {
- if (component.$$.dirty[0] === -1) {
- dirty_components.push(component);
- schedule_update();
- component.$$.dirty.fill(0);
- }
- component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31));
-}
-function init(component, options, instance, create_fragment, not_equal, props, append_styles, dirty = [-1]) {
- const parent_component = current_component;
- set_current_component(component);
- const $$ = component.$$ = {
- fragment: null,
- ctx: [],
- // state
- props,
- update: noop,
- not_equal,
- bound: blank_object(),
- // lifecycle
- on_mount: [],
- on_destroy: [],
- on_disconnect: [],
- before_update: [],
- after_update: [],
- context: new Map(options.context || (parent_component ? parent_component.$$.context : [])),
- // everything else
- callbacks: blank_object(),
- dirty,
- skip_bound: false,
- root: options.target || parent_component.$$.root
- };
- append_styles && append_styles($$.root);
- let ready = false;
- $$.ctx = instance
- ? instance(component, options.props || {}, (i, ret, ...rest) => {
- const value = rest.length ? rest[0] : ret;
- if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {
- if (!$$.skip_bound && $$.bound[i])
- $$.bound[i](value);
- if (ready)
- make_dirty(component, i);
- }
- return ret;
- })
- : [];
- $$.update();
- ready = true;
- run_all($$.before_update);
- // `false` as a special case of no DOM component
- $$.fragment = create_fragment ? create_fragment($$.ctx) : false;
- if (options.target) {
- if (options.hydrate) {
- const nodes = children(options.target);
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.l(nodes);
- nodes.forEach(detach);
- }
- else {
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.c();
- }
- if (options.intro)
- transition_in(component.$$.fragment);
- mount_component(component, options.target, options.anchor, options.customElement);
- flush();
- }
- set_current_component(parent_component);
-}
-let SvelteElement;
-if (typeof HTMLElement === 'function') {
- SvelteElement = class extends HTMLElement {
- constructor() {
- super();
- this.attachShadow({ mode: 'open' });
- }
- connectedCallback() {
- const { on_mount } = this.$$;
- this.$$.on_disconnect = on_mount.map(run).filter(is_function);
- // @ts-ignore todo: improve typings
- for (const key in this.$$.slotted) {
- // @ts-ignore todo: improve typings
- this.appendChild(this.$$.slotted[key]);
- }
- }
- attributeChangedCallback(attr, _oldValue, newValue) {
- this[attr] = newValue;
- }
- disconnectedCallback() {
- run_all(this.$$.on_disconnect);
- }
- $destroy() {
- destroy_component(this, 1);
- this.$destroy = noop;
- }
- $on(type, callback) {
- // TODO should this delegate to addEventListener?
- if (!is_function(callback)) {
- return noop;
- }
- const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));
- callbacks.push(callback);
- return () => {
- const index = callbacks.indexOf(callback);
- if (index !== -1)
- callbacks.splice(index, 1);
- };
- }
- $set($$props) {
- if (this.$$set && !is_empty($$props)) {
- this.$$.skip_bound = true;
- this.$$set($$props);
- this.$$.skip_bound = false;
- }
- }
- };
-}
-
-function dispatch_dev(type, detail) {
- document.dispatchEvent(custom_event(type, Object.assign({ version: '3.52.0' }, detail), { bubbles: true }));
-}
-function append_dev(target, node) {
- dispatch_dev('SvelteDOMInsert', { target, node });
- append(target, node);
-}
-function insert_dev(target, node, anchor) {
- dispatch_dev('SvelteDOMInsert', { target, node, anchor });
- insert(target, node, anchor);
-}
-function detach_dev(node) {
- dispatch_dev('SvelteDOMRemove', { node });
- detach(node);
-}
-function listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) {
- const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : [];
- if (has_prevent_default)
- modifiers.push('preventDefault');
- if (has_stop_propagation)
- modifiers.push('stopPropagation');
- dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers });
- const dispose = listen(node, event, handler, options);
- return () => {
- dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers });
- dispose();
- };
-}
-function attr_dev(node, attribute, value) {
- attr(node, attribute, value);
- if (value == null)
- dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute });
- else
- dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value });
-}
-function prop_dev(node, property, value) {
- node[property] = value;
- dispatch_dev('SvelteDOMSetProperty', { node, property, value });
-}
-function set_data_dev(text, data) {
- data = '' + data;
- if (text.wholeText === data)
- return;
- dispatch_dev('SvelteDOMSetData', { node: text, data });
- text.data = data;
-}
-function validate_each_argument(arg) {
- if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) {
- let msg = '{#each} only iterates over array-like objects.';
- if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) {
- msg += ' You can use a spread to convert this iterable into an array.';
- }
- throw new Error(msg);
- }
-}
-function validate_slots(name, slot, keys) {
- for (const slot_key of Object.keys(slot)) {
- if (!~keys.indexOf(slot_key)) {
- console.warn(`<${name}> received an unexpected slot "${slot_key}".`);
- }
- }
-}
-
-export { validate_each_argument as A, text as B, set_data_dev as C, destroy_each as D, prop_dev as E, set_style as F, svg_element as G, is_function as H, HtmlTag as I, afterUpdate as J, set_input_value as K, SvelteElement as S, attribute_to_object as a, insert_dev as b, setContext as c, dispatch_dev as d, globals as e, element as f, getContext as g, space as h, init as i, add_location as j, attr_dev as k, append_dev as l, listen_dev as m, noop as n, onMount as o, detach_dev as p, binding_callbacks as q, run_all as r, safe_not_equal as s, flush as t, src_url_equal as u, validate_slots as v, validate_store as w, component_subscribe as x, empty as y, set_custom_element_data as z };
diff --git a/Server/public/js/components/index-9e0a68c1.js b/Server/public/js/components/index-9e0a68c1.js
deleted file mode 100644
index bcac812..0000000
--- a/Server/public/js/components/index-9e0a68c1.js
+++ /dev/null
@@ -1 +0,0 @@
-function t(){}function n(t){return t()}function e(){return Object.create(null)}function o(t){t.forEach(n)}function s(t){return"function"==typeof t}function r(t,n){return t!=t?n==n:t!==n||t&&"object"==typeof t||"function"==typeof t}let i,c;function a(t,n){return i||(i=document.createElement("a")),i.href=n,t===i.href}function u(t,n){t.appendChild(n)}function f(t,n,e){t.insertBefore(n,e||null)}function l(t){t.parentNode.removeChild(t)}function h(t,n){for(let e=0;et.removeEventListener(n,e,o)}function _(t,n,e){null==e?t.removeAttribute(n):t.getAttribute(n)!==e&&t.setAttribute(n,e)}function y(t,n,e){n in t?t[n]="boolean"==typeof t[n]&&""===e||e:_(t,n,e)}function b(t,n){n=""+n,t.wholeText!==n&&(t.data=n)}function x(t,n,e,o){null===e?t.style.removeProperty(n):t.style.setProperty(n,e,o?"important":"")}class v{constructor(t=!1){this.is_svg=!1,this.is_svg=t,this.e=this.n=null}c(t){this.h(t)}m(t,n,e=null){var o;this.e||(this.is_svg?this.e=(o=n.nodeName,document.createElementNS("http://www.w3.org/2000/svg",o)):this.e=d(n.nodeName),this.t=n,this.c(t)),this.i(e)}h(t){this.e.innerHTML=t,this.n=Array.from(this.e.childNodes)}i(t){for(let n=0;n{const o=e.length?e[0]:n;return m.ctx&&f(m.ctx[t],m.ctx[t]=o)&&(!m.skip_bound&&m.bound[t]&&m.bound[t](o),g&&F(r,t)),n})):[],m.update(),g=!0,o(m.before_update),m.fragment=!!u&&u(m.ctx),i.target){if(i.hydrate){const t=function(t){return Array.from(t.childNodes)}(i.target);m.fragment&&m.fragment.l(t),t.forEach(l)}else m.fragment&&m.fragment.c();i.intro&&((_=r.$$.fragment)&&_.i&&(B.delete(_),_.i(y))),function(t,e,r,i){const{fragment:c,after_update:a}=t.$$;c&&c.m(e,r),i||M((()=>{const e=t.$$.on_mount.map(n).filter(s);t.$$.on_destroy?t.$$.on_destroy.push(...e):o(e),t.$$.on_mount=[]})),a.forEach(M)}(r,i.target,i.anchor,i.customElement),q()}var _,y;w(p)}let G;"function"==typeof HTMLElement&&(G=class extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"})}connectedCallback(){const{on_mount:t}=this.$$;this.$$.on_disconnect=t.map(n).filter(s);for(const t in this.$$.slotted)this.appendChild(this.$$.slotted[t])}attributeChangedCallback(t,n,e){this[t]=e}disconnectedCallback(){o(this.$$.on_disconnect)}$destroy(){!function(t,n){const e=t.$$;null!==e.fragment&&(o(e.on_destroy),e.fragment&&e.fragment.d(n),e.on_destroy=e.fragment=null,e.ctx=[])}(this,1),this.$destroy=t}$on(n,e){if(!s(e))return t;const o=this.$$.callbacks[n]||(this.$$.callbacks[n]=[]);return o.push(e),()=>{const t=o.indexOf(e);-1!==t&&o.splice(t,1)}}$set(t){var n;this.$$set&&(n=t,0!==Object.keys(n).length)&&(this.$$.skip_bound=!0,this.$$set(t),this.$$.skip_bound=!1)}});export{v as H,G as S,E as a,f as b,p as c,_ as d,d as e,a as f,y as g,u as h,D as i,l as j,h as k,q as l,x as m,t as n,C as o,g as p,b as q,L as r,r as s,$ as t,N as u,o as v,m as w};
diff --git a/Server/public/js/components/index-9ff7cb25.js b/Server/public/js/components/index-9ff7cb25.js
deleted file mode 100644
index eb10687..0000000
--- a/Server/public/js/components/index-9ff7cb25.js
+++ /dev/null
@@ -1,494 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-function noop() { }
-function add_location(element, file, line, column, char) {
- element.__svelte_meta = {
- loc: { file, line, column, char }
- };
-}
-function run(fn) {
- return fn();
-}
-function blank_object() {
- return Object.create(null);
-}
-function run_all(fns) {
- fns.forEach(run);
-}
-function is_function(thing) {
- return typeof thing === 'function';
-}
-function safe_not_equal(a, b) {
- return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');
-}
-let src_url_equal_anchor;
-function src_url_equal(element_src, url) {
- if (!src_url_equal_anchor) {
- src_url_equal_anchor = document.createElement('a');
- }
- src_url_equal_anchor.href = url;
- return element_src === src_url_equal_anchor.href;
-}
-function is_empty(obj) {
- return Object.keys(obj).length === 0;
-}
-function append(target, node) {
- target.appendChild(node);
-}
-function insert(target, node, anchor) {
- target.insertBefore(node, anchor || null);
-}
-function detach(node) {
- node.parentNode.removeChild(node);
-}
-function destroy_each(iterations, detaching) {
- for (let i = 0; i < iterations.length; i += 1) {
- if (iterations[i])
- iterations[i].d(detaching);
- }
-}
-function element(name) {
- return document.createElement(name);
-}
-function svg_element(name) {
- return document.createElementNS('http://www.w3.org/2000/svg', name);
-}
-function text(data) {
- return document.createTextNode(data);
-}
-function space() {
- return text(' ');
-}
-function empty() {
- return text('');
-}
-function listen(node, event, handler, options) {
- node.addEventListener(event, handler, options);
- return () => node.removeEventListener(event, handler, options);
-}
-function attr(node, attribute, value) {
- if (value == null)
- node.removeAttribute(attribute);
- else if (node.getAttribute(attribute) !== value)
- node.setAttribute(attribute, value);
-}
-function set_custom_element_data(node, prop, value) {
- if (prop in node) {
- node[prop] = typeof node[prop] === 'boolean' && value === '' ? true : value;
- }
- else {
- attr(node, prop, value);
- }
-}
-function children(element) {
- return Array.from(element.childNodes);
-}
-function set_style(node, key, value, important) {
- if (value === null) {
- node.style.removeProperty(key);
- }
- else {
- node.style.setProperty(key, value, important ? 'important' : '');
- }
-}
-function custom_event(type, detail, { bubbles = false, cancelable = false } = {}) {
- const e = document.createEvent('CustomEvent');
- e.initCustomEvent(type, bubbles, cancelable, detail);
- return e;
-}
-class HtmlTag {
- constructor(is_svg = false) {
- this.is_svg = false;
- this.is_svg = is_svg;
- this.e = this.n = null;
- }
- c(html) {
- this.h(html);
- }
- m(html, target, anchor = null) {
- if (!this.e) {
- if (this.is_svg)
- this.e = svg_element(target.nodeName);
- else
- this.e = element(target.nodeName);
- this.t = target;
- this.c(html);
- }
- this.i(anchor);
- }
- h(html) {
- this.e.innerHTML = html;
- this.n = Array.from(this.e.childNodes);
- }
- i(anchor) {
- for (let i = 0; i < this.n.length; i += 1) {
- insert(this.t, this.n[i], anchor);
- }
- }
- p(html) {
- this.d();
- this.h(html);
- this.i(this.a);
- }
- d() {
- this.n.forEach(detach);
- }
-}
-function attribute_to_object(attributes) {
- const result = {};
- for (const attribute of attributes) {
- result[attribute.name] = attribute.value;
- }
- return result;
-}
-
-let current_component;
-function set_current_component(component) {
- current_component = component;
-}
-function get_current_component() {
- if (!current_component)
- throw new Error('Function called outside component initialization');
- return current_component;
-}
-/**
- * The `onMount` function schedules a callback to run as soon as the component has been mounted to the DOM.
- * It must be called during the component's initialisation (but doesn't need to live *inside* the component;
- * it can be called from an external module).
- *
- * `onMount` does not run inside a [server-side component](/docs#run-time-server-side-component-api).
- *
- * https://svelte.dev/docs#run-time-svelte-onmount
- */
-function onMount(fn) {
- get_current_component().$$.on_mount.push(fn);
-}
-/**
- * Associates an arbitrary `context` object with the current component and the specified `key`
- * and returns that object. The context is then available to children of the component
- * (including slotted content) with `getContext`.
- *
- * Like lifecycle functions, this must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-setcontext
- */
-function setContext(key, context) {
- get_current_component().$$.context.set(key, context);
- return context;
-}
-/**
- * Retrieves the context that belongs to the closest parent component with the specified `key`.
- * Must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-getcontext
- */
-function getContext(key) {
- return get_current_component().$$.context.get(key);
-}
-
-const dirty_components = [];
-const binding_callbacks = [];
-const render_callbacks = [];
-const flush_callbacks = [];
-const resolved_promise = Promise.resolve();
-let update_scheduled = false;
-function schedule_update() {
- if (!update_scheduled) {
- update_scheduled = true;
- resolved_promise.then(flush);
- }
-}
-function add_render_callback(fn) {
- render_callbacks.push(fn);
-}
-// flush() calls callbacks in this order:
-// 1. All beforeUpdate callbacks, in order: parents before children
-// 2. All bind:this callbacks, in reverse order: children before parents.
-// 3. All afterUpdate callbacks, in order: parents before children. EXCEPT
-// for afterUpdates called during the initial onMount, which are called in
-// reverse order: children before parents.
-// Since callbacks might update component values, which could trigger another
-// call to flush(), the following steps guard against this:
-// 1. During beforeUpdate, any updated components will be added to the
-// dirty_components array and will cause a reentrant call to flush(). Because
-// the flush index is kept outside the function, the reentrant call will pick
-// up where the earlier call left off and go through all dirty components. The
-// current_component value is saved and restored so that the reentrant call will
-// not interfere with the "parent" flush() call.
-// 2. bind:this callbacks cannot trigger new flush() calls.
-// 3. During afterUpdate, any updated components will NOT have their afterUpdate
-// callback called a second time; the seen_callbacks set, outside the flush()
-// function, guarantees this behavior.
-const seen_callbacks = new Set();
-let flushidx = 0; // Do *not* move this inside the flush() function
-function flush() {
- const saved_component = current_component;
- do {
- // first, call beforeUpdate functions
- // and update components
- while (flushidx < dirty_components.length) {
- const component = dirty_components[flushidx];
- flushidx++;
- set_current_component(component);
- update(component.$$);
- }
- set_current_component(null);
- dirty_components.length = 0;
- flushidx = 0;
- while (binding_callbacks.length)
- binding_callbacks.pop()();
- // then, once components are updated, call
- // afterUpdate functions. This may cause
- // subsequent updates...
- for (let i = 0; i < render_callbacks.length; i += 1) {
- const callback = render_callbacks[i];
- if (!seen_callbacks.has(callback)) {
- // ...so guard against infinite loops
- seen_callbacks.add(callback);
- callback();
- }
- }
- render_callbacks.length = 0;
- } while (dirty_components.length);
- while (flush_callbacks.length) {
- flush_callbacks.pop()();
- }
- update_scheduled = false;
- seen_callbacks.clear();
- set_current_component(saved_component);
-}
-function update($$) {
- if ($$.fragment !== null) {
- $$.update();
- run_all($$.before_update);
- const dirty = $$.dirty;
- $$.dirty = [-1];
- $$.fragment && $$.fragment.p($$.ctx, dirty);
- $$.after_update.forEach(add_render_callback);
- }
-}
-const outroing = new Set();
-function transition_in(block, local) {
- if (block && block.i) {
- outroing.delete(block);
- block.i(local);
- }
-}
-
-const globals = (typeof window !== 'undefined'
- ? window
- : typeof globalThis !== 'undefined'
- ? globalThis
- : global);
-function mount_component(component, target, anchor, customElement) {
- const { fragment, after_update } = component.$$;
- fragment && fragment.m(target, anchor);
- if (!customElement) {
- // onMount happens before the initial afterUpdate
- add_render_callback(() => {
- const new_on_destroy = component.$$.on_mount.map(run).filter(is_function);
- // if the component was destroyed immediately
- // it will update the `$$.on_destroy` reference to `null`.
- // the destructured on_destroy may still reference to the old array
- if (component.$$.on_destroy) {
- component.$$.on_destroy.push(...new_on_destroy);
- }
- else {
- // Edge case - component was destroyed immediately,
- // most likely as a result of a binding initialising
- run_all(new_on_destroy);
- }
- component.$$.on_mount = [];
- });
- }
- after_update.forEach(add_render_callback);
-}
-function destroy_component(component, detaching) {
- const $$ = component.$$;
- if ($$.fragment !== null) {
- run_all($$.on_destroy);
- $$.fragment && $$.fragment.d(detaching);
- // TODO null out other refs, including component.$$ (but need to
- // preserve final state?)
- $$.on_destroy = $$.fragment = null;
- $$.ctx = [];
- }
-}
-function make_dirty(component, i) {
- if (component.$$.dirty[0] === -1) {
- dirty_components.push(component);
- schedule_update();
- component.$$.dirty.fill(0);
- }
- component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31));
-}
-function init(component, options, instance, create_fragment, not_equal, props, append_styles, dirty = [-1]) {
- const parent_component = current_component;
- set_current_component(component);
- const $$ = component.$$ = {
- fragment: null,
- ctx: [],
- // state
- props,
- update: noop,
- not_equal,
- bound: blank_object(),
- // lifecycle
- on_mount: [],
- on_destroy: [],
- on_disconnect: [],
- before_update: [],
- after_update: [],
- context: new Map(options.context || (parent_component ? parent_component.$$.context : [])),
- // everything else
- callbacks: blank_object(),
- dirty,
- skip_bound: false,
- root: options.target || parent_component.$$.root
- };
- append_styles && append_styles($$.root);
- let ready = false;
- $$.ctx = instance
- ? instance(component, options.props || {}, (i, ret, ...rest) => {
- const value = rest.length ? rest[0] : ret;
- if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {
- if (!$$.skip_bound && $$.bound[i])
- $$.bound[i](value);
- if (ready)
- make_dirty(component, i);
- }
- return ret;
- })
- : [];
- $$.update();
- ready = true;
- run_all($$.before_update);
- // `false` as a special case of no DOM component
- $$.fragment = create_fragment ? create_fragment($$.ctx) : false;
- if (options.target) {
- if (options.hydrate) {
- const nodes = children(options.target);
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.l(nodes);
- nodes.forEach(detach);
- }
- else {
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.c();
- }
- if (options.intro)
- transition_in(component.$$.fragment);
- mount_component(component, options.target, options.anchor, options.customElement);
- flush();
- }
- set_current_component(parent_component);
-}
-let SvelteElement;
-if (typeof HTMLElement === 'function') {
- SvelteElement = class extends HTMLElement {
- constructor() {
- super();
- this.attachShadow({ mode: 'open' });
- }
- connectedCallback() {
- const { on_mount } = this.$$;
- this.$$.on_disconnect = on_mount.map(run).filter(is_function);
- // @ts-ignore todo: improve typings
- for (const key in this.$$.slotted) {
- // @ts-ignore todo: improve typings
- this.appendChild(this.$$.slotted[key]);
- }
- }
- attributeChangedCallback(attr, _oldValue, newValue) {
- this[attr] = newValue;
- }
- disconnectedCallback() {
- run_all(this.$$.on_disconnect);
- }
- $destroy() {
- destroy_component(this, 1);
- this.$destroy = noop;
- }
- $on(type, callback) {
- // TODO should this delegate to addEventListener?
- if (!is_function(callback)) {
- return noop;
- }
- const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));
- callbacks.push(callback);
- return () => {
- const index = callbacks.indexOf(callback);
- if (index !== -1)
- callbacks.splice(index, 1);
- };
- }
- $set($$props) {
- if (this.$$set && !is_empty($$props)) {
- this.$$.skip_bound = true;
- this.$$set($$props);
- this.$$.skip_bound = false;
- }
- }
- };
-}
-
-function dispatch_dev(type, detail) {
- document.dispatchEvent(custom_event(type, Object.assign({ version: '3.52.0' }, detail), { bubbles: true }));
-}
-function append_dev(target, node) {
- dispatch_dev('SvelteDOMInsert', { target, node });
- append(target, node);
-}
-function insert_dev(target, node, anchor) {
- dispatch_dev('SvelteDOMInsert', { target, node, anchor });
- insert(target, node, anchor);
-}
-function detach_dev(node) {
- dispatch_dev('SvelteDOMRemove', { node });
- detach(node);
-}
-function listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) {
- const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : [];
- if (has_prevent_default)
- modifiers.push('preventDefault');
- if (has_stop_propagation)
- modifiers.push('stopPropagation');
- dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers });
- const dispose = listen(node, event, handler, options);
- return () => {
- dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers });
- dispose();
- };
-}
-function attr_dev(node, attribute, value) {
- attr(node, attribute, value);
- if (value == null)
- dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute });
- else
- dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value });
-}
-function set_data_dev(text, data) {
- data = '' + data;
- if (text.wholeText === data)
- return;
- dispatch_dev('SvelteDOMSetData', { node: text, data });
- text.data = data;
-}
-function validate_each_argument(arg) {
- if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) {
- let msg = '{#each} only iterates over array-like objects.';
- if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) {
- msg += ' You can use a spread to convert this iterable into an array.';
- }
- throw new Error(msg);
- }
-}
-function validate_slots(name, slot, keys) {
- for (const slot_key of Object.keys(slot)) {
- if (!~keys.indexOf(slot_key)) {
- console.warn(`<${name}> received an unexpected slot "${slot_key}".`);
- }
- }
-}
-
-export { setContext as A, run_all as B, svg_element as C, empty as D, is_function as E, HtmlTag as H, SvelteElement as S, attribute_to_object as a, insert_dev as b, validate_slots as c, dispatch_dev as d, element as e, space as f, add_location as g, attr_dev as h, init as i, src_url_equal as j, set_custom_element_data as k, append_dev as l, detach_dev as m, noop as n, onMount as o, destroy_each as p, flush as q, globals as r, safe_not_equal as s, text as t, binding_callbacks as u, validate_each_argument as v, set_style as w, listen_dev as x, set_data_dev as y, getContext as z };
diff --git a/Server/public/js/components/index-a1c185ea.js b/Server/public/js/components/index-a1c185ea.js
deleted file mode 100644
index 669661e..0000000
--- a/Server/public/js/components/index-a1c185ea.js
+++ /dev/null
@@ -1,53 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-import { n as noop, s as safe_not_equal } from './index-42a25c61.js';
-
-const subscriber_queue = [];
-/**
- * Create a `Writable` store that allows both updating and reading by subscription.
- * @param {*=}value initial value
- * @param {StartStopNotifier=}start start and stop notifications for subscriptions
- */
-function writable(value, start = noop) {
- let stop;
- const subscribers = new Set();
- function set(new_value) {
- if (safe_not_equal(value, new_value)) {
- value = new_value;
- if (stop) { // store is ready
- const run_queue = !subscriber_queue.length;
- for (const subscriber of subscribers) {
- subscriber[1]();
- subscriber_queue.push(subscriber, value);
- }
- if (run_queue) {
- for (let i = 0; i < subscriber_queue.length; i += 2) {
- subscriber_queue[i][0](subscriber_queue[i + 1]);
- }
- subscriber_queue.length = 0;
- }
- }
- }
- }
- function update(fn) {
- set(fn(value));
- }
- function subscribe(run, invalidate = noop) {
- const subscriber = [run, invalidate];
- subscribers.add(subscriber);
- if (subscribers.size === 1) {
- stop = start(set) || noop;
- }
- run(value);
- return () => {
- subscribers.delete(subscriber);
- if (subscribers.size === 0) {
- stop();
- stop = null;
- }
- };
- }
- return { set, update, subscribe };
-}
-
-export { writable as w };
diff --git a/Server/public/js/components/index-a1c8863e.js b/Server/public/js/components/index-a1c8863e.js
deleted file mode 100644
index 0b8e287..0000000
--- a/Server/public/js/components/index-a1c8863e.js
+++ /dev/null
@@ -1,53 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-import { n as noop, s as safe_not_equal } from './index-10273c92.js';
-
-const subscriber_queue = [];
-/**
- * Create a `Writable` store that allows both updating and reading by subscription.
- * @param {*=}value initial value
- * @param {StartStopNotifier=}start start and stop notifications for subscriptions
- */
-function writable(value, start = noop) {
- let stop;
- const subscribers = new Set();
- function set(new_value) {
- if (safe_not_equal(value, new_value)) {
- value = new_value;
- if (stop) { // store is ready
- const run_queue = !subscriber_queue.length;
- for (const subscriber of subscribers) {
- subscriber[1]();
- subscriber_queue.push(subscriber, value);
- }
- if (run_queue) {
- for (let i = 0; i < subscriber_queue.length; i += 2) {
- subscriber_queue[i][0](subscriber_queue[i + 1]);
- }
- subscriber_queue.length = 0;
- }
- }
- }
- }
- function update(fn) {
- set(fn(value));
- }
- function subscribe(run, invalidate = noop) {
- const subscriber = [run, invalidate];
- subscribers.add(subscriber);
- if (subscribers.size === 1) {
- stop = start(set) || noop;
- }
- run(value);
- return () => {
- subscribers.delete(subscriber);
- if (subscribers.size === 0) {
- stop();
- stop = null;
- }
- };
- }
- return { set, update, subscribe };
-}
-
-export { writable as w };
diff --git a/Server/public/js/components/index-a3443bd2.js b/Server/public/js/components/index-a3443bd2.js
deleted file mode 100644
index a812516..0000000
--- a/Server/public/js/components/index-a3443bd2.js
+++ /dev/null
@@ -1,486 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-function noop() { }
-function add_location(element, file, line, column, char) {
- element.__svelte_meta = {
- loc: { file, line, column, char }
- };
-}
-function run(fn) {
- return fn();
-}
-function blank_object() {
- return Object.create(null);
-}
-function run_all(fns) {
- fns.forEach(run);
-}
-function is_function(thing) {
- return typeof thing === 'function';
-}
-function safe_not_equal(a, b) {
- return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');
-}
-let src_url_equal_anchor;
-function src_url_equal(element_src, url) {
- if (!src_url_equal_anchor) {
- src_url_equal_anchor = document.createElement('a');
- }
- src_url_equal_anchor.href = url;
- return element_src === src_url_equal_anchor.href;
-}
-function is_empty(obj) {
- return Object.keys(obj).length === 0;
-}
-function append(target, node) {
- target.appendChild(node);
-}
-function insert(target, node, anchor) {
- target.insertBefore(node, anchor || null);
-}
-function detach(node) {
- node.parentNode.removeChild(node);
-}
-function destroy_each(iterations, detaching) {
- for (let i = 0; i < iterations.length; i += 1) {
- if (iterations[i])
- iterations[i].d(detaching);
- }
-}
-function element(name) {
- return document.createElement(name);
-}
-function svg_element(name) {
- return document.createElementNS('http://www.w3.org/2000/svg', name);
-}
-function text(data) {
- return document.createTextNode(data);
-}
-function space() {
- return text(' ');
-}
-function empty() {
- return text('');
-}
-function listen(node, event, handler, options) {
- node.addEventListener(event, handler, options);
- return () => node.removeEventListener(event, handler, options);
-}
-function attr(node, attribute, value) {
- if (value == null)
- node.removeAttribute(attribute);
- else if (node.getAttribute(attribute) !== value)
- node.setAttribute(attribute, value);
-}
-function children(element) {
- return Array.from(element.childNodes);
-}
-function set_style(node, key, value, important) {
- if (value === null) {
- node.style.removeProperty(key);
- }
- else {
- node.style.setProperty(key, value, important ? 'important' : '');
- }
-}
-function custom_event(type, detail, { bubbles = false, cancelable = false } = {}) {
- const e = document.createEvent('CustomEvent');
- e.initCustomEvent(type, bubbles, cancelable, detail);
- return e;
-}
-class HtmlTag {
- constructor(is_svg = false) {
- this.is_svg = false;
- this.is_svg = is_svg;
- this.e = this.n = null;
- }
- c(html) {
- this.h(html);
- }
- m(html, target, anchor = null) {
- if (!this.e) {
- if (this.is_svg)
- this.e = svg_element(target.nodeName);
- else
- this.e = element(target.nodeName);
- this.t = target;
- this.c(html);
- }
- this.i(anchor);
- }
- h(html) {
- this.e.innerHTML = html;
- this.n = Array.from(this.e.childNodes);
- }
- i(anchor) {
- for (let i = 0; i < this.n.length; i += 1) {
- insert(this.t, this.n[i], anchor);
- }
- }
- p(html) {
- this.d();
- this.h(html);
- this.i(this.a);
- }
- d() {
- this.n.forEach(detach);
- }
-}
-function attribute_to_object(attributes) {
- const result = {};
- for (const attribute of attributes) {
- result[attribute.name] = attribute.value;
- }
- return result;
-}
-
-let current_component;
-function set_current_component(component) {
- current_component = component;
-}
-function get_current_component() {
- if (!current_component)
- throw new Error('Function called outside component initialization');
- return current_component;
-}
-/**
- * The `onMount` function schedules a callback to run as soon as the component has been mounted to the DOM.
- * It must be called during the component's initialisation (but doesn't need to live *inside* the component;
- * it can be called from an external module).
- *
- * `onMount` does not run inside a [server-side component](/docs#run-time-server-side-component-api).
- *
- * https://svelte.dev/docs#run-time-svelte-onmount
- */
-function onMount(fn) {
- get_current_component().$$.on_mount.push(fn);
-}
-/**
- * Associates an arbitrary `context` object with the current component and the specified `key`
- * and returns that object. The context is then available to children of the component
- * (including slotted content) with `getContext`.
- *
- * Like lifecycle functions, this must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-setcontext
- */
-function setContext(key, context) {
- get_current_component().$$.context.set(key, context);
- return context;
-}
-/**
- * Retrieves the context that belongs to the closest parent component with the specified `key`.
- * Must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-getcontext
- */
-function getContext(key) {
- return get_current_component().$$.context.get(key);
-}
-
-const dirty_components = [];
-const binding_callbacks = [];
-const render_callbacks = [];
-const flush_callbacks = [];
-const resolved_promise = Promise.resolve();
-let update_scheduled = false;
-function schedule_update() {
- if (!update_scheduled) {
- update_scheduled = true;
- resolved_promise.then(flush);
- }
-}
-function add_render_callback(fn) {
- render_callbacks.push(fn);
-}
-// flush() calls callbacks in this order:
-// 1. All beforeUpdate callbacks, in order: parents before children
-// 2. All bind:this callbacks, in reverse order: children before parents.
-// 3. All afterUpdate callbacks, in order: parents before children. EXCEPT
-// for afterUpdates called during the initial onMount, which are called in
-// reverse order: children before parents.
-// Since callbacks might update component values, which could trigger another
-// call to flush(), the following steps guard against this:
-// 1. During beforeUpdate, any updated components will be added to the
-// dirty_components array and will cause a reentrant call to flush(). Because
-// the flush index is kept outside the function, the reentrant call will pick
-// up where the earlier call left off and go through all dirty components. The
-// current_component value is saved and restored so that the reentrant call will
-// not interfere with the "parent" flush() call.
-// 2. bind:this callbacks cannot trigger new flush() calls.
-// 3. During afterUpdate, any updated components will NOT have their afterUpdate
-// callback called a second time; the seen_callbacks set, outside the flush()
-// function, guarantees this behavior.
-const seen_callbacks = new Set();
-let flushidx = 0; // Do *not* move this inside the flush() function
-function flush() {
- const saved_component = current_component;
- do {
- // first, call beforeUpdate functions
- // and update components
- while (flushidx < dirty_components.length) {
- const component = dirty_components[flushidx];
- flushidx++;
- set_current_component(component);
- update(component.$$);
- }
- set_current_component(null);
- dirty_components.length = 0;
- flushidx = 0;
- while (binding_callbacks.length)
- binding_callbacks.pop()();
- // then, once components are updated, call
- // afterUpdate functions. This may cause
- // subsequent updates...
- for (let i = 0; i < render_callbacks.length; i += 1) {
- const callback = render_callbacks[i];
- if (!seen_callbacks.has(callback)) {
- // ...so guard against infinite loops
- seen_callbacks.add(callback);
- callback();
- }
- }
- render_callbacks.length = 0;
- } while (dirty_components.length);
- while (flush_callbacks.length) {
- flush_callbacks.pop()();
- }
- update_scheduled = false;
- seen_callbacks.clear();
- set_current_component(saved_component);
-}
-function update($$) {
- if ($$.fragment !== null) {
- $$.update();
- run_all($$.before_update);
- const dirty = $$.dirty;
- $$.dirty = [-1];
- $$.fragment && $$.fragment.p($$.ctx, dirty);
- $$.after_update.forEach(add_render_callback);
- }
-}
-const outroing = new Set();
-function transition_in(block, local) {
- if (block && block.i) {
- outroing.delete(block);
- block.i(local);
- }
-}
-
-const globals = (typeof window !== 'undefined'
- ? window
- : typeof globalThis !== 'undefined'
- ? globalThis
- : global);
-function mount_component(component, target, anchor, customElement) {
- const { fragment, after_update } = component.$$;
- fragment && fragment.m(target, anchor);
- if (!customElement) {
- // onMount happens before the initial afterUpdate
- add_render_callback(() => {
- const new_on_destroy = component.$$.on_mount.map(run).filter(is_function);
- // if the component was destroyed immediately
- // it will update the `$$.on_destroy` reference to `null`.
- // the destructured on_destroy may still reference to the old array
- if (component.$$.on_destroy) {
- component.$$.on_destroy.push(...new_on_destroy);
- }
- else {
- // Edge case - component was destroyed immediately,
- // most likely as a result of a binding initialising
- run_all(new_on_destroy);
- }
- component.$$.on_mount = [];
- });
- }
- after_update.forEach(add_render_callback);
-}
-function destroy_component(component, detaching) {
- const $$ = component.$$;
- if ($$.fragment !== null) {
- run_all($$.on_destroy);
- $$.fragment && $$.fragment.d(detaching);
- // TODO null out other refs, including component.$$ (but need to
- // preserve final state?)
- $$.on_destroy = $$.fragment = null;
- $$.ctx = [];
- }
-}
-function make_dirty(component, i) {
- if (component.$$.dirty[0] === -1) {
- dirty_components.push(component);
- schedule_update();
- component.$$.dirty.fill(0);
- }
- component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31));
-}
-function init(component, options, instance, create_fragment, not_equal, props, append_styles, dirty = [-1]) {
- const parent_component = current_component;
- set_current_component(component);
- const $$ = component.$$ = {
- fragment: null,
- ctx: [],
- // state
- props,
- update: noop,
- not_equal,
- bound: blank_object(),
- // lifecycle
- on_mount: [],
- on_destroy: [],
- on_disconnect: [],
- before_update: [],
- after_update: [],
- context: new Map(options.context || (parent_component ? parent_component.$$.context : [])),
- // everything else
- callbacks: blank_object(),
- dirty,
- skip_bound: false,
- root: options.target || parent_component.$$.root
- };
- append_styles && append_styles($$.root);
- let ready = false;
- $$.ctx = instance
- ? instance(component, options.props || {}, (i, ret, ...rest) => {
- const value = rest.length ? rest[0] : ret;
- if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {
- if (!$$.skip_bound && $$.bound[i])
- $$.bound[i](value);
- if (ready)
- make_dirty(component, i);
- }
- return ret;
- })
- : [];
- $$.update();
- ready = true;
- run_all($$.before_update);
- // `false` as a special case of no DOM component
- $$.fragment = create_fragment ? create_fragment($$.ctx) : false;
- if (options.target) {
- if (options.hydrate) {
- const nodes = children(options.target);
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.l(nodes);
- nodes.forEach(detach);
- }
- else {
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.c();
- }
- if (options.intro)
- transition_in(component.$$.fragment);
- mount_component(component, options.target, options.anchor, options.customElement);
- flush();
- }
- set_current_component(parent_component);
-}
-let SvelteElement;
-if (typeof HTMLElement === 'function') {
- SvelteElement = class extends HTMLElement {
- constructor() {
- super();
- this.attachShadow({ mode: 'open' });
- }
- connectedCallback() {
- const { on_mount } = this.$$;
- this.$$.on_disconnect = on_mount.map(run).filter(is_function);
- // @ts-ignore todo: improve typings
- for (const key in this.$$.slotted) {
- // @ts-ignore todo: improve typings
- this.appendChild(this.$$.slotted[key]);
- }
- }
- attributeChangedCallback(attr, _oldValue, newValue) {
- this[attr] = newValue;
- }
- disconnectedCallback() {
- run_all(this.$$.on_disconnect);
- }
- $destroy() {
- destroy_component(this, 1);
- this.$destroy = noop;
- }
- $on(type, callback) {
- // TODO should this delegate to addEventListener?
- if (!is_function(callback)) {
- return noop;
- }
- const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));
- callbacks.push(callback);
- return () => {
- const index = callbacks.indexOf(callback);
- if (index !== -1)
- callbacks.splice(index, 1);
- };
- }
- $set($$props) {
- if (this.$$set && !is_empty($$props)) {
- this.$$.skip_bound = true;
- this.$$set($$props);
- this.$$.skip_bound = false;
- }
- }
- };
-}
-
-function dispatch_dev(type, detail) {
- document.dispatchEvent(custom_event(type, Object.assign({ version: '3.52.0' }, detail), { bubbles: true }));
-}
-function append_dev(target, node) {
- dispatch_dev('SvelteDOMInsert', { target, node });
- append(target, node);
-}
-function insert_dev(target, node, anchor) {
- dispatch_dev('SvelteDOMInsert', { target, node, anchor });
- insert(target, node, anchor);
-}
-function detach_dev(node) {
- dispatch_dev('SvelteDOMRemove', { node });
- detach(node);
-}
-function listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) {
- const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : [];
- if (has_prevent_default)
- modifiers.push('preventDefault');
- if (has_stop_propagation)
- modifiers.push('stopPropagation');
- dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers });
- const dispose = listen(node, event, handler, options);
- return () => {
- dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers });
- dispose();
- };
-}
-function attr_dev(node, attribute, value) {
- attr(node, attribute, value);
- if (value == null)
- dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute });
- else
- dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value });
-}
-function set_data_dev(text, data) {
- data = '' + data;
- if (text.wholeText === data)
- return;
- dispatch_dev('SvelteDOMSetData', { node: text, data });
- text.data = data;
-}
-function validate_each_argument(arg) {
- if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) {
- let msg = '{#each} only iterates over array-like objects.';
- if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) {
- msg += ' You can use a spread to convert this iterable into an array.';
- }
- throw new Error(msg);
- }
-}
-function validate_slots(name, slot, keys) {
- for (const slot_key of Object.keys(slot)) {
- if (!~keys.indexOf(slot_key)) {
- console.warn(`<${name}> received an unexpected slot "${slot_key}".`);
- }
- }
-}
-
-export { run_all as A, svg_element as B, empty as C, HtmlTag as H, SvelteElement as S, attribute_to_object as a, insert_dev as b, space as c, dispatch_dev as d, element as e, add_location as f, attr_dev as g, append_dev as h, init as i, detach_dev as j, flush as k, validate_each_argument as l, globals as m, noop as n, onMount as o, destroy_each as p, binding_callbacks as q, set_style as r, safe_not_equal as s, text as t, listen_dev as u, validate_slots as v, set_data_dev as w, getContext as x, setContext as y, src_url_equal as z };
diff --git a/Server/public/js/components/index-a459c24b.js b/Server/public/js/components/index-a459c24b.js
deleted file mode 100644
index d20b155..0000000
--- a/Server/public/js/components/index-a459c24b.js
+++ /dev/null
@@ -1,509 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-function noop() { }
-function add_location(element, file, line, column, char) {
- element.__svelte_meta = {
- loc: { file, line, column, char }
- };
-}
-function run(fn) {
- return fn();
-}
-function blank_object() {
- return Object.create(null);
-}
-function run_all(fns) {
- fns.forEach(run);
-}
-function is_function(thing) {
- return typeof thing === 'function';
-}
-function safe_not_equal(a, b) {
- return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');
-}
-let src_url_equal_anchor;
-function src_url_equal(element_src, url) {
- if (!src_url_equal_anchor) {
- src_url_equal_anchor = document.createElement('a');
- }
- src_url_equal_anchor.href = url;
- return element_src === src_url_equal_anchor.href;
-}
-function is_empty(obj) {
- return Object.keys(obj).length === 0;
-}
-function validate_store(store, name) {
- if (store != null && typeof store.subscribe !== 'function') {
- throw new Error(`'${name}' is not a store with a 'subscribe' method`);
- }
-}
-function subscribe(store, ...callbacks) {
- if (store == null) {
- return noop;
- }
- const unsub = store.subscribe(...callbacks);
- return unsub.unsubscribe ? () => unsub.unsubscribe() : unsub;
-}
-function component_subscribe(component, store, callback) {
- component.$$.on_destroy.push(subscribe(store, callback));
-}
-function append(target, node) {
- target.appendChild(node);
-}
-function insert(target, node, anchor) {
- target.insertBefore(node, anchor || null);
-}
-function detach(node) {
- node.parentNode.removeChild(node);
-}
-function destroy_each(iterations, detaching) {
- for (let i = 0; i < iterations.length; i += 1) {
- if (iterations[i])
- iterations[i].d(detaching);
- }
-}
-function element(name) {
- return document.createElement(name);
-}
-function svg_element(name) {
- return document.createElementNS('http://www.w3.org/2000/svg', name);
-}
-function text(data) {
- return document.createTextNode(data);
-}
-function space() {
- return text(' ');
-}
-function empty() {
- return text('');
-}
-function listen(node, event, handler, options) {
- node.addEventListener(event, handler, options);
- return () => node.removeEventListener(event, handler, options);
-}
-function attr(node, attribute, value) {
- if (value == null)
- node.removeAttribute(attribute);
- else if (node.getAttribute(attribute) !== value)
- node.setAttribute(attribute, value);
-}
-function set_custom_element_data(node, prop, value) {
- if (prop in node) {
- node[prop] = typeof node[prop] === 'boolean' && value === '' ? true : value;
- }
- else {
- attr(node, prop, value);
- }
-}
-function children(element) {
- return Array.from(element.childNodes);
-}
-function set_style(node, key, value, important) {
- if (value === null) {
- node.style.removeProperty(key);
- }
- else {
- node.style.setProperty(key, value, important ? 'important' : '');
- }
-}
-function custom_event(type, detail, { bubbles = false, cancelable = false } = {}) {
- const e = document.createEvent('CustomEvent');
- e.initCustomEvent(type, bubbles, cancelable, detail);
- return e;
-}
-class HtmlTag {
- constructor(is_svg = false) {
- this.is_svg = false;
- this.is_svg = is_svg;
- this.e = this.n = null;
- }
- c(html) {
- this.h(html);
- }
- m(html, target, anchor = null) {
- if (!this.e) {
- if (this.is_svg)
- this.e = svg_element(target.nodeName);
- else
- this.e = element(target.nodeName);
- this.t = target;
- this.c(html);
- }
- this.i(anchor);
- }
- h(html) {
- this.e.innerHTML = html;
- this.n = Array.from(this.e.childNodes);
- }
- i(anchor) {
- for (let i = 0; i < this.n.length; i += 1) {
- insert(this.t, this.n[i], anchor);
- }
- }
- p(html) {
- this.d();
- this.h(html);
- this.i(this.a);
- }
- d() {
- this.n.forEach(detach);
- }
-}
-function attribute_to_object(attributes) {
- const result = {};
- for (const attribute of attributes) {
- result[attribute.name] = attribute.value;
- }
- return result;
-}
-
-let current_component;
-function set_current_component(component) {
- current_component = component;
-}
-function get_current_component() {
- if (!current_component)
- throw new Error('Function called outside component initialization');
- return current_component;
-}
-/**
- * The `onMount` function schedules a callback to run as soon as the component has been mounted to the DOM.
- * It must be called during the component's initialisation (but doesn't need to live *inside* the component;
- * it can be called from an external module).
- *
- * `onMount` does not run inside a [server-side component](/docs#run-time-server-side-component-api).
- *
- * https://svelte.dev/docs#run-time-svelte-onmount
- */
-function onMount(fn) {
- get_current_component().$$.on_mount.push(fn);
-}
-/**
- * Associates an arbitrary `context` object with the current component and the specified `key`
- * and returns that object. The context is then available to children of the component
- * (including slotted content) with `getContext`.
- *
- * Like lifecycle functions, this must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-setcontext
- */
-function setContext(key, context) {
- get_current_component().$$.context.set(key, context);
- return context;
-}
-/**
- * Retrieves the context that belongs to the closest parent component with the specified `key`.
- * Must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-getcontext
- */
-function getContext(key) {
- return get_current_component().$$.context.get(key);
-}
-
-const dirty_components = [];
-const binding_callbacks = [];
-const render_callbacks = [];
-const flush_callbacks = [];
-const resolved_promise = Promise.resolve();
-let update_scheduled = false;
-function schedule_update() {
- if (!update_scheduled) {
- update_scheduled = true;
- resolved_promise.then(flush);
- }
-}
-function add_render_callback(fn) {
- render_callbacks.push(fn);
-}
-// flush() calls callbacks in this order:
-// 1. All beforeUpdate callbacks, in order: parents before children
-// 2. All bind:this callbacks, in reverse order: children before parents.
-// 3. All afterUpdate callbacks, in order: parents before children. EXCEPT
-// for afterUpdates called during the initial onMount, which are called in
-// reverse order: children before parents.
-// Since callbacks might update component values, which could trigger another
-// call to flush(), the following steps guard against this:
-// 1. During beforeUpdate, any updated components will be added to the
-// dirty_components array and will cause a reentrant call to flush(). Because
-// the flush index is kept outside the function, the reentrant call will pick
-// up where the earlier call left off and go through all dirty components. The
-// current_component value is saved and restored so that the reentrant call will
-// not interfere with the "parent" flush() call.
-// 2. bind:this callbacks cannot trigger new flush() calls.
-// 3. During afterUpdate, any updated components will NOT have their afterUpdate
-// callback called a second time; the seen_callbacks set, outside the flush()
-// function, guarantees this behavior.
-const seen_callbacks = new Set();
-let flushidx = 0; // Do *not* move this inside the flush() function
-function flush() {
- const saved_component = current_component;
- do {
- // first, call beforeUpdate functions
- // and update components
- while (flushidx < dirty_components.length) {
- const component = dirty_components[flushidx];
- flushidx++;
- set_current_component(component);
- update(component.$$);
- }
- set_current_component(null);
- dirty_components.length = 0;
- flushidx = 0;
- while (binding_callbacks.length)
- binding_callbacks.pop()();
- // then, once components are updated, call
- // afterUpdate functions. This may cause
- // subsequent updates...
- for (let i = 0; i < render_callbacks.length; i += 1) {
- const callback = render_callbacks[i];
- if (!seen_callbacks.has(callback)) {
- // ...so guard against infinite loops
- seen_callbacks.add(callback);
- callback();
- }
- }
- render_callbacks.length = 0;
- } while (dirty_components.length);
- while (flush_callbacks.length) {
- flush_callbacks.pop()();
- }
- update_scheduled = false;
- seen_callbacks.clear();
- set_current_component(saved_component);
-}
-function update($$) {
- if ($$.fragment !== null) {
- $$.update();
- run_all($$.before_update);
- const dirty = $$.dirty;
- $$.dirty = [-1];
- $$.fragment && $$.fragment.p($$.ctx, dirty);
- $$.after_update.forEach(add_render_callback);
- }
-}
-const outroing = new Set();
-function transition_in(block, local) {
- if (block && block.i) {
- outroing.delete(block);
- block.i(local);
- }
-}
-
-const globals = (typeof window !== 'undefined'
- ? window
- : typeof globalThis !== 'undefined'
- ? globalThis
- : global);
-function mount_component(component, target, anchor, customElement) {
- const { fragment, after_update } = component.$$;
- fragment && fragment.m(target, anchor);
- if (!customElement) {
- // onMount happens before the initial afterUpdate
- add_render_callback(() => {
- const new_on_destroy = component.$$.on_mount.map(run).filter(is_function);
- // if the component was destroyed immediately
- // it will update the `$$.on_destroy` reference to `null`.
- // the destructured on_destroy may still reference to the old array
- if (component.$$.on_destroy) {
- component.$$.on_destroy.push(...new_on_destroy);
- }
- else {
- // Edge case - component was destroyed immediately,
- // most likely as a result of a binding initialising
- run_all(new_on_destroy);
- }
- component.$$.on_mount = [];
- });
- }
- after_update.forEach(add_render_callback);
-}
-function destroy_component(component, detaching) {
- const $$ = component.$$;
- if ($$.fragment !== null) {
- run_all($$.on_destroy);
- $$.fragment && $$.fragment.d(detaching);
- // TODO null out other refs, including component.$$ (but need to
- // preserve final state?)
- $$.on_destroy = $$.fragment = null;
- $$.ctx = [];
- }
-}
-function make_dirty(component, i) {
- if (component.$$.dirty[0] === -1) {
- dirty_components.push(component);
- schedule_update();
- component.$$.dirty.fill(0);
- }
- component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31));
-}
-function init(component, options, instance, create_fragment, not_equal, props, append_styles, dirty = [-1]) {
- const parent_component = current_component;
- set_current_component(component);
- const $$ = component.$$ = {
- fragment: null,
- ctx: [],
- // state
- props,
- update: noop,
- not_equal,
- bound: blank_object(),
- // lifecycle
- on_mount: [],
- on_destroy: [],
- on_disconnect: [],
- before_update: [],
- after_update: [],
- context: new Map(options.context || (parent_component ? parent_component.$$.context : [])),
- // everything else
- callbacks: blank_object(),
- dirty,
- skip_bound: false,
- root: options.target || parent_component.$$.root
- };
- append_styles && append_styles($$.root);
- let ready = false;
- $$.ctx = instance
- ? instance(component, options.props || {}, (i, ret, ...rest) => {
- const value = rest.length ? rest[0] : ret;
- if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {
- if (!$$.skip_bound && $$.bound[i])
- $$.bound[i](value);
- if (ready)
- make_dirty(component, i);
- }
- return ret;
- })
- : [];
- $$.update();
- ready = true;
- run_all($$.before_update);
- // `false` as a special case of no DOM component
- $$.fragment = create_fragment ? create_fragment($$.ctx) : false;
- if (options.target) {
- if (options.hydrate) {
- const nodes = children(options.target);
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.l(nodes);
- nodes.forEach(detach);
- }
- else {
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.c();
- }
- if (options.intro)
- transition_in(component.$$.fragment);
- mount_component(component, options.target, options.anchor, options.customElement);
- flush();
- }
- set_current_component(parent_component);
-}
-let SvelteElement;
-if (typeof HTMLElement === 'function') {
- SvelteElement = class extends HTMLElement {
- constructor() {
- super();
- this.attachShadow({ mode: 'open' });
- }
- connectedCallback() {
- const { on_mount } = this.$$;
- this.$$.on_disconnect = on_mount.map(run).filter(is_function);
- // @ts-ignore todo: improve typings
- for (const key in this.$$.slotted) {
- // @ts-ignore todo: improve typings
- this.appendChild(this.$$.slotted[key]);
- }
- }
- attributeChangedCallback(attr, _oldValue, newValue) {
- this[attr] = newValue;
- }
- disconnectedCallback() {
- run_all(this.$$.on_disconnect);
- }
- $destroy() {
- destroy_component(this, 1);
- this.$destroy = noop;
- }
- $on(type, callback) {
- // TODO should this delegate to addEventListener?
- if (!is_function(callback)) {
- return noop;
- }
- const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));
- callbacks.push(callback);
- return () => {
- const index = callbacks.indexOf(callback);
- if (index !== -1)
- callbacks.splice(index, 1);
- };
- }
- $set($$props) {
- if (this.$$set && !is_empty($$props)) {
- this.$$.skip_bound = true;
- this.$$set($$props);
- this.$$.skip_bound = false;
- }
- }
- };
-}
-
-function dispatch_dev(type, detail) {
- document.dispatchEvent(custom_event(type, Object.assign({ version: '3.52.0' }, detail), { bubbles: true }));
-}
-function append_dev(target, node) {
- dispatch_dev('SvelteDOMInsert', { target, node });
- append(target, node);
-}
-function insert_dev(target, node, anchor) {
- dispatch_dev('SvelteDOMInsert', { target, node, anchor });
- insert(target, node, anchor);
-}
-function detach_dev(node) {
- dispatch_dev('SvelteDOMRemove', { node });
- detach(node);
-}
-function listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) {
- const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : [];
- if (has_prevent_default)
- modifiers.push('preventDefault');
- if (has_stop_propagation)
- modifiers.push('stopPropagation');
- dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers });
- const dispose = listen(node, event, handler, options);
- return () => {
- dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers });
- dispose();
- };
-}
-function attr_dev(node, attribute, value) {
- attr(node, attribute, value);
- if (value == null)
- dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute });
- else
- dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value });
-}
-function set_data_dev(text, data) {
- data = '' + data;
- if (text.wholeText === data)
- return;
- dispatch_dev('SvelteDOMSetData', { node: text, data });
- text.data = data;
-}
-function validate_each_argument(arg) {
- if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) {
- let msg = '{#each} only iterates over array-like objects.';
- if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) {
- msg += ' You can use a spread to convert this iterable into an array.';
- }
- throw new Error(msg);
- }
-}
-function validate_slots(name, slot, keys) {
- for (const slot_key of Object.keys(slot)) {
- if (!~keys.indexOf(slot_key)) {
- console.warn(`<${name}> received an unexpected slot "${slot_key}".`);
- }
- }
-}
-
-export { set_style as A, listen_dev as B, getContext as C, setContext as D, run_all as E, svg_element as F, is_function as G, HtmlTag as H, SvelteElement as S, attribute_to_object as a, insert_dev as b, validate_store as c, dispatch_dev as d, component_subscribe as e, validate_each_argument as f, globals as g, empty as h, init as i, detach_dev as j, element as k, space as l, add_location as m, noop as n, onMount as o, attr_dev as p, src_url_equal as q, set_custom_element_data as r, safe_not_equal as s, text as t, append_dev as u, validate_slots as v, set_data_dev as w, destroy_each as x, flush as y, binding_callbacks as z };
diff --git a/Server/public/js/components/index-ab5c14c8.js b/Server/public/js/components/index-ab5c14c8.js
deleted file mode 100644
index aaf0a59..0000000
--- a/Server/public/js/components/index-ab5c14c8.js
+++ /dev/null
@@ -1,509 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-function noop() { }
-function add_location(element, file, line, column, char) {
- element.__svelte_meta = {
- loc: { file, line, column, char }
- };
-}
-function run(fn) {
- return fn();
-}
-function blank_object() {
- return Object.create(null);
-}
-function run_all(fns) {
- fns.forEach(run);
-}
-function is_function(thing) {
- return typeof thing === 'function';
-}
-function safe_not_equal(a, b) {
- return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');
-}
-let src_url_equal_anchor;
-function src_url_equal(element_src, url) {
- if (!src_url_equal_anchor) {
- src_url_equal_anchor = document.createElement('a');
- }
- src_url_equal_anchor.href = url;
- return element_src === src_url_equal_anchor.href;
-}
-function is_empty(obj) {
- return Object.keys(obj).length === 0;
-}
-function validate_store(store, name) {
- if (store != null && typeof store.subscribe !== 'function') {
- throw new Error(`'${name}' is not a store with a 'subscribe' method`);
- }
-}
-function subscribe(store, ...callbacks) {
- if (store == null) {
- return noop;
- }
- const unsub = store.subscribe(...callbacks);
- return unsub.unsubscribe ? () => unsub.unsubscribe() : unsub;
-}
-function component_subscribe(component, store, callback) {
- component.$$.on_destroy.push(subscribe(store, callback));
-}
-function append(target, node) {
- target.appendChild(node);
-}
-function insert(target, node, anchor) {
- target.insertBefore(node, anchor || null);
-}
-function detach(node) {
- node.parentNode.removeChild(node);
-}
-function destroy_each(iterations, detaching) {
- for (let i = 0; i < iterations.length; i += 1) {
- if (iterations[i])
- iterations[i].d(detaching);
- }
-}
-function element(name) {
- return document.createElement(name);
-}
-function svg_element(name) {
- return document.createElementNS('http://www.w3.org/2000/svg', name);
-}
-function text(data) {
- return document.createTextNode(data);
-}
-function space() {
- return text(' ');
-}
-function empty() {
- return text('');
-}
-function listen(node, event, handler, options) {
- node.addEventListener(event, handler, options);
- return () => node.removeEventListener(event, handler, options);
-}
-function attr(node, attribute, value) {
- if (value == null)
- node.removeAttribute(attribute);
- else if (node.getAttribute(attribute) !== value)
- node.setAttribute(attribute, value);
-}
-function set_custom_element_data(node, prop, value) {
- if (prop in node) {
- node[prop] = typeof node[prop] === 'boolean' && value === '' ? true : value;
- }
- else {
- attr(node, prop, value);
- }
-}
-function children(element) {
- return Array.from(element.childNodes);
-}
-function set_style(node, key, value, important) {
- if (value === null) {
- node.style.removeProperty(key);
- }
- else {
- node.style.setProperty(key, value, important ? 'important' : '');
- }
-}
-function custom_event(type, detail, { bubbles = false, cancelable = false } = {}) {
- const e = document.createEvent('CustomEvent');
- e.initCustomEvent(type, bubbles, cancelable, detail);
- return e;
-}
-class HtmlTag {
- constructor(is_svg = false) {
- this.is_svg = false;
- this.is_svg = is_svg;
- this.e = this.n = null;
- }
- c(html) {
- this.h(html);
- }
- m(html, target, anchor = null) {
- if (!this.e) {
- if (this.is_svg)
- this.e = svg_element(target.nodeName);
- else
- this.e = element(target.nodeName);
- this.t = target;
- this.c(html);
- }
- this.i(anchor);
- }
- h(html) {
- this.e.innerHTML = html;
- this.n = Array.from(this.e.childNodes);
- }
- i(anchor) {
- for (let i = 0; i < this.n.length; i += 1) {
- insert(this.t, this.n[i], anchor);
- }
- }
- p(html) {
- this.d();
- this.h(html);
- this.i(this.a);
- }
- d() {
- this.n.forEach(detach);
- }
-}
-function attribute_to_object(attributes) {
- const result = {};
- for (const attribute of attributes) {
- result[attribute.name] = attribute.value;
- }
- return result;
-}
-
-let current_component;
-function set_current_component(component) {
- current_component = component;
-}
-function get_current_component() {
- if (!current_component)
- throw new Error('Function called outside component initialization');
- return current_component;
-}
-/**
- * The `onMount` function schedules a callback to run as soon as the component has been mounted to the DOM.
- * It must be called during the component's initialisation (but doesn't need to live *inside* the component;
- * it can be called from an external module).
- *
- * `onMount` does not run inside a [server-side component](/docs#run-time-server-side-component-api).
- *
- * https://svelte.dev/docs#run-time-svelte-onmount
- */
-function onMount(fn) {
- get_current_component().$$.on_mount.push(fn);
-}
-/**
- * Associates an arbitrary `context` object with the current component and the specified `key`
- * and returns that object. The context is then available to children of the component
- * (including slotted content) with `getContext`.
- *
- * Like lifecycle functions, this must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-setcontext
- */
-function setContext(key, context) {
- get_current_component().$$.context.set(key, context);
- return context;
-}
-/**
- * Retrieves the context that belongs to the closest parent component with the specified `key`.
- * Must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-getcontext
- */
-function getContext(key) {
- return get_current_component().$$.context.get(key);
-}
-
-const dirty_components = [];
-const binding_callbacks = [];
-const render_callbacks = [];
-const flush_callbacks = [];
-const resolved_promise = Promise.resolve();
-let update_scheduled = false;
-function schedule_update() {
- if (!update_scheduled) {
- update_scheduled = true;
- resolved_promise.then(flush);
- }
-}
-function add_render_callback(fn) {
- render_callbacks.push(fn);
-}
-// flush() calls callbacks in this order:
-// 1. All beforeUpdate callbacks, in order: parents before children
-// 2. All bind:this callbacks, in reverse order: children before parents.
-// 3. All afterUpdate callbacks, in order: parents before children. EXCEPT
-// for afterUpdates called during the initial onMount, which are called in
-// reverse order: children before parents.
-// Since callbacks might update component values, which could trigger another
-// call to flush(), the following steps guard against this:
-// 1. During beforeUpdate, any updated components will be added to the
-// dirty_components array and will cause a reentrant call to flush(). Because
-// the flush index is kept outside the function, the reentrant call will pick
-// up where the earlier call left off and go through all dirty components. The
-// current_component value is saved and restored so that the reentrant call will
-// not interfere with the "parent" flush() call.
-// 2. bind:this callbacks cannot trigger new flush() calls.
-// 3. During afterUpdate, any updated components will NOT have their afterUpdate
-// callback called a second time; the seen_callbacks set, outside the flush()
-// function, guarantees this behavior.
-const seen_callbacks = new Set();
-let flushidx = 0; // Do *not* move this inside the flush() function
-function flush() {
- const saved_component = current_component;
- do {
- // first, call beforeUpdate functions
- // and update components
- while (flushidx < dirty_components.length) {
- const component = dirty_components[flushidx];
- flushidx++;
- set_current_component(component);
- update(component.$$);
- }
- set_current_component(null);
- dirty_components.length = 0;
- flushidx = 0;
- while (binding_callbacks.length)
- binding_callbacks.pop()();
- // then, once components are updated, call
- // afterUpdate functions. This may cause
- // subsequent updates...
- for (let i = 0; i < render_callbacks.length; i += 1) {
- const callback = render_callbacks[i];
- if (!seen_callbacks.has(callback)) {
- // ...so guard against infinite loops
- seen_callbacks.add(callback);
- callback();
- }
- }
- render_callbacks.length = 0;
- } while (dirty_components.length);
- while (flush_callbacks.length) {
- flush_callbacks.pop()();
- }
- update_scheduled = false;
- seen_callbacks.clear();
- set_current_component(saved_component);
-}
-function update($$) {
- if ($$.fragment !== null) {
- $$.update();
- run_all($$.before_update);
- const dirty = $$.dirty;
- $$.dirty = [-1];
- $$.fragment && $$.fragment.p($$.ctx, dirty);
- $$.after_update.forEach(add_render_callback);
- }
-}
-const outroing = new Set();
-function transition_in(block, local) {
- if (block && block.i) {
- outroing.delete(block);
- block.i(local);
- }
-}
-
-const globals = (typeof window !== 'undefined'
- ? window
- : typeof globalThis !== 'undefined'
- ? globalThis
- : global);
-function mount_component(component, target, anchor, customElement) {
- const { fragment, after_update } = component.$$;
- fragment && fragment.m(target, anchor);
- if (!customElement) {
- // onMount happens before the initial afterUpdate
- add_render_callback(() => {
- const new_on_destroy = component.$$.on_mount.map(run).filter(is_function);
- // if the component was destroyed immediately
- // it will update the `$$.on_destroy` reference to `null`.
- // the destructured on_destroy may still reference to the old array
- if (component.$$.on_destroy) {
- component.$$.on_destroy.push(...new_on_destroy);
- }
- else {
- // Edge case - component was destroyed immediately,
- // most likely as a result of a binding initialising
- run_all(new_on_destroy);
- }
- component.$$.on_mount = [];
- });
- }
- after_update.forEach(add_render_callback);
-}
-function destroy_component(component, detaching) {
- const $$ = component.$$;
- if ($$.fragment !== null) {
- run_all($$.on_destroy);
- $$.fragment && $$.fragment.d(detaching);
- // TODO null out other refs, including component.$$ (but need to
- // preserve final state?)
- $$.on_destroy = $$.fragment = null;
- $$.ctx = [];
- }
-}
-function make_dirty(component, i) {
- if (component.$$.dirty[0] === -1) {
- dirty_components.push(component);
- schedule_update();
- component.$$.dirty.fill(0);
- }
- component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31));
-}
-function init(component, options, instance, create_fragment, not_equal, props, append_styles, dirty = [-1]) {
- const parent_component = current_component;
- set_current_component(component);
- const $$ = component.$$ = {
- fragment: null,
- ctx: [],
- // state
- props,
- update: noop,
- not_equal,
- bound: blank_object(),
- // lifecycle
- on_mount: [],
- on_destroy: [],
- on_disconnect: [],
- before_update: [],
- after_update: [],
- context: new Map(options.context || (parent_component ? parent_component.$$.context : [])),
- // everything else
- callbacks: blank_object(),
- dirty,
- skip_bound: false,
- root: options.target || parent_component.$$.root
- };
- append_styles && append_styles($$.root);
- let ready = false;
- $$.ctx = instance
- ? instance(component, options.props || {}, (i, ret, ...rest) => {
- const value = rest.length ? rest[0] : ret;
- if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {
- if (!$$.skip_bound && $$.bound[i])
- $$.bound[i](value);
- if (ready)
- make_dirty(component, i);
- }
- return ret;
- })
- : [];
- $$.update();
- ready = true;
- run_all($$.before_update);
- // `false` as a special case of no DOM component
- $$.fragment = create_fragment ? create_fragment($$.ctx) : false;
- if (options.target) {
- if (options.hydrate) {
- const nodes = children(options.target);
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.l(nodes);
- nodes.forEach(detach);
- }
- else {
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.c();
- }
- if (options.intro)
- transition_in(component.$$.fragment);
- mount_component(component, options.target, options.anchor, options.customElement);
- flush();
- }
- set_current_component(parent_component);
-}
-let SvelteElement;
-if (typeof HTMLElement === 'function') {
- SvelteElement = class extends HTMLElement {
- constructor() {
- super();
- this.attachShadow({ mode: 'open' });
- }
- connectedCallback() {
- const { on_mount } = this.$$;
- this.$$.on_disconnect = on_mount.map(run).filter(is_function);
- // @ts-ignore todo: improve typings
- for (const key in this.$$.slotted) {
- // @ts-ignore todo: improve typings
- this.appendChild(this.$$.slotted[key]);
- }
- }
- attributeChangedCallback(attr, _oldValue, newValue) {
- this[attr] = newValue;
- }
- disconnectedCallback() {
- run_all(this.$$.on_disconnect);
- }
- $destroy() {
- destroy_component(this, 1);
- this.$destroy = noop;
- }
- $on(type, callback) {
- // TODO should this delegate to addEventListener?
- if (!is_function(callback)) {
- return noop;
- }
- const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));
- callbacks.push(callback);
- return () => {
- const index = callbacks.indexOf(callback);
- if (index !== -1)
- callbacks.splice(index, 1);
- };
- }
- $set($$props) {
- if (this.$$set && !is_empty($$props)) {
- this.$$.skip_bound = true;
- this.$$set($$props);
- this.$$.skip_bound = false;
- }
- }
- };
-}
-
-function dispatch_dev(type, detail) {
- document.dispatchEvent(custom_event(type, Object.assign({ version: '3.52.0' }, detail), { bubbles: true }));
-}
-function append_dev(target, node) {
- dispatch_dev('SvelteDOMInsert', { target, node });
- append(target, node);
-}
-function insert_dev(target, node, anchor) {
- dispatch_dev('SvelteDOMInsert', { target, node, anchor });
- insert(target, node, anchor);
-}
-function detach_dev(node) {
- dispatch_dev('SvelteDOMRemove', { node });
- detach(node);
-}
-function listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) {
- const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : [];
- if (has_prevent_default)
- modifiers.push('preventDefault');
- if (has_stop_propagation)
- modifiers.push('stopPropagation');
- dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers });
- const dispose = listen(node, event, handler, options);
- return () => {
- dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers });
- dispose();
- };
-}
-function attr_dev(node, attribute, value) {
- attr(node, attribute, value);
- if (value == null)
- dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute });
- else
- dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value });
-}
-function set_data_dev(text, data) {
- data = '' + data;
- if (text.wholeText === data)
- return;
- dispatch_dev('SvelteDOMSetData', { node: text, data });
- text.data = data;
-}
-function validate_each_argument(arg) {
- if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) {
- let msg = '{#each} only iterates over array-like objects.';
- if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) {
- msg += ' You can use a spread to convert this iterable into an array.';
- }
- throw new Error(msg);
- }
-}
-function validate_slots(name, slot, keys) {
- for (const slot_key of Object.keys(slot)) {
- if (!~keys.indexOf(slot_key)) {
- console.warn(`<${name}> received an unexpected slot "${slot_key}".`);
- }
- }
-}
-
-export { set_style as A, listen_dev as B, getContext as C, setContext as D, run_all as E, svg_element as F, is_function as G, HtmlTag as H, SvelteElement as S, attribute_to_object as a, insert_dev as b, validate_slots as c, dispatch_dev as d, element as e, space as f, add_location as g, attr_dev as h, init as i, src_url_equal as j, append_dev as k, detach_dev as l, destroy_each as m, noop as n, onMount as o, validate_store as p, component_subscribe as q, globals as r, safe_not_equal as s, text as t, empty as u, validate_each_argument as v, set_custom_element_data as w, set_data_dev as x, flush as y, binding_callbacks as z };
diff --git a/Server/public/js/components/index-ac368ab0.js b/Server/public/js/components/index-ac368ab0.js
deleted file mode 100644
index 551af6e..0000000
--- a/Server/public/js/components/index-ac368ab0.js
+++ /dev/null
@@ -1,53 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-import { n as noop, s as safe_not_equal } from './index-d77c7bdd.js';
-
-const subscriber_queue = [];
-/**
- * Create a `Writable` store that allows both updating and reading by subscription.
- * @param {*=}value initial value
- * @param {StartStopNotifier=}start start and stop notifications for subscriptions
- */
-function writable(value, start = noop) {
- let stop;
- const subscribers = new Set();
- function set(new_value) {
- if (safe_not_equal(value, new_value)) {
- value = new_value;
- if (stop) { // store is ready
- const run_queue = !subscriber_queue.length;
- for (const subscriber of subscribers) {
- subscriber[1]();
- subscriber_queue.push(subscriber, value);
- }
- if (run_queue) {
- for (let i = 0; i < subscriber_queue.length; i += 2) {
- subscriber_queue[i][0](subscriber_queue[i + 1]);
- }
- subscriber_queue.length = 0;
- }
- }
- }
- }
- function update(fn) {
- set(fn(value));
- }
- function subscribe(run, invalidate = noop) {
- const subscriber = [run, invalidate];
- subscribers.add(subscriber);
- if (subscribers.size === 1) {
- stop = start(set) || noop;
- }
- run(value);
- return () => {
- subscribers.delete(subscriber);
- if (subscribers.size === 0) {
- stop();
- stop = null;
- }
- };
- }
- return { set, update, subscribe };
-}
-
-export { writable as w };
diff --git a/Server/public/js/components/index-adbb0a76.js b/Server/public/js/components/index-adbb0a76.js
deleted file mode 100644
index 4b11eb1..0000000
--- a/Server/public/js/components/index-adbb0a76.js
+++ /dev/null
@@ -1,53 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-import { n as noop, s as safe_not_equal } from './index-2620635a.js';
-
-const subscriber_queue = [];
-/**
- * Create a `Writable` store that allows both updating and reading by subscription.
- * @param {*=}value initial value
- * @param {StartStopNotifier=}start start and stop notifications for subscriptions
- */
-function writable(value, start = noop) {
- let stop;
- const subscribers = new Set();
- function set(new_value) {
- if (safe_not_equal(value, new_value)) {
- value = new_value;
- if (stop) { // store is ready
- const run_queue = !subscriber_queue.length;
- for (const subscriber of subscribers) {
- subscriber[1]();
- subscriber_queue.push(subscriber, value);
- }
- if (run_queue) {
- for (let i = 0; i < subscriber_queue.length; i += 2) {
- subscriber_queue[i][0](subscriber_queue[i + 1]);
- }
- subscriber_queue.length = 0;
- }
- }
- }
- }
- function update(fn) {
- set(fn(value));
- }
- function subscribe(run, invalidate = noop) {
- const subscriber = [run, invalidate];
- subscribers.add(subscriber);
- if (subscribers.size === 1) {
- stop = start(set) || noop;
- }
- run(value);
- return () => {
- subscribers.delete(subscriber);
- if (subscribers.size === 0) {
- stop();
- stop = null;
- }
- };
- }
- return { set, update, subscribe };
-}
-
-export { writable as w };
diff --git a/Server/public/js/components/index-bc9d3868.js b/Server/public/js/components/index-bc9d3868.js
deleted file mode 100644
index 908eb41..0000000
--- a/Server/public/js/components/index-bc9d3868.js
+++ /dev/null
@@ -1,445 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-function noop() { }
-function add_location(element, file, line, column, char) {
- element.__svelte_meta = {
- loc: { file, line, column, char }
- };
-}
-function run(fn) {
- return fn();
-}
-function blank_object() {
- return Object.create(null);
-}
-function run_all(fns) {
- fns.forEach(run);
-}
-function is_function(thing) {
- return typeof thing === 'function';
-}
-function safe_not_equal(a, b) {
- return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');
-}
-let src_url_equal_anchor;
-function src_url_equal(element_src, url) {
- if (!src_url_equal_anchor) {
- src_url_equal_anchor = document.createElement('a');
- }
- src_url_equal_anchor.href = url;
- return element_src === src_url_equal_anchor.href;
-}
-function is_empty(obj) {
- return Object.keys(obj).length === 0;
-}
-function append(target, node) {
- target.appendChild(node);
-}
-function insert(target, node, anchor) {
- target.insertBefore(node, anchor || null);
-}
-function detach(node) {
- node.parentNode.removeChild(node);
-}
-function destroy_each(iterations, detaching) {
- for (let i = 0; i < iterations.length; i += 1) {
- if (iterations[i])
- iterations[i].d(detaching);
- }
-}
-function element(name) {
- return document.createElement(name);
-}
-function svg_element(name) {
- return document.createElementNS('http://www.w3.org/2000/svg', name);
-}
-function text(data) {
- return document.createTextNode(data);
-}
-function space() {
- return text(' ');
-}
-function listen(node, event, handler, options) {
- node.addEventListener(event, handler, options);
- return () => node.removeEventListener(event, handler, options);
-}
-function attr(node, attribute, value) {
- if (value == null)
- node.removeAttribute(attribute);
- else if (node.getAttribute(attribute) !== value)
- node.setAttribute(attribute, value);
-}
-function children(element) {
- return Array.from(element.childNodes);
-}
-function set_style(node, key, value, important) {
- if (value === null) {
- node.style.removeProperty(key);
- }
- else {
- node.style.setProperty(key, value, important ? 'important' : '');
- }
-}
-function custom_event(type, detail, { bubbles = false, cancelable = false } = {}) {
- const e = document.createEvent('CustomEvent');
- e.initCustomEvent(type, bubbles, cancelable, detail);
- return e;
-}
-function attribute_to_object(attributes) {
- const result = {};
- for (const attribute of attributes) {
- result[attribute.name] = attribute.value;
- }
- return result;
-}
-
-let current_component;
-function set_current_component(component) {
- current_component = component;
-}
-function get_current_component() {
- if (!current_component)
- throw new Error('Function called outside component initialization');
- return current_component;
-}
-/**
- * The `onMount` function schedules a callback to run as soon as the component has been mounted to the DOM.
- * It must be called during the component's initialisation (but doesn't need to live *inside* the component;
- * it can be called from an external module).
- *
- * `onMount` does not run inside a [server-side component](/docs#run-time-server-side-component-api).
- *
- * https://svelte.dev/docs#run-time-svelte-onmount
- */
-function onMount(fn) {
- get_current_component().$$.on_mount.push(fn);
-}
-/**
- * Associates an arbitrary `context` object with the current component and the specified `key`
- * and returns that object. The context is then available to children of the component
- * (including slotted content) with `getContext`.
- *
- * Like lifecycle functions, this must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-setcontext
- */
-function setContext(key, context) {
- get_current_component().$$.context.set(key, context);
- return context;
-}
-/**
- * Retrieves the context that belongs to the closest parent component with the specified `key`.
- * Must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-getcontext
- */
-function getContext(key) {
- return get_current_component().$$.context.get(key);
-}
-
-const dirty_components = [];
-const binding_callbacks = [];
-const render_callbacks = [];
-const flush_callbacks = [];
-const resolved_promise = Promise.resolve();
-let update_scheduled = false;
-function schedule_update() {
- if (!update_scheduled) {
- update_scheduled = true;
- resolved_promise.then(flush);
- }
-}
-function add_render_callback(fn) {
- render_callbacks.push(fn);
-}
-// flush() calls callbacks in this order:
-// 1. All beforeUpdate callbacks, in order: parents before children
-// 2. All bind:this callbacks, in reverse order: children before parents.
-// 3. All afterUpdate callbacks, in order: parents before children. EXCEPT
-// for afterUpdates called during the initial onMount, which are called in
-// reverse order: children before parents.
-// Since callbacks might update component values, which could trigger another
-// call to flush(), the following steps guard against this:
-// 1. During beforeUpdate, any updated components will be added to the
-// dirty_components array and will cause a reentrant call to flush(). Because
-// the flush index is kept outside the function, the reentrant call will pick
-// up where the earlier call left off and go through all dirty components. The
-// current_component value is saved and restored so that the reentrant call will
-// not interfere with the "parent" flush() call.
-// 2. bind:this callbacks cannot trigger new flush() calls.
-// 3. During afterUpdate, any updated components will NOT have their afterUpdate
-// callback called a second time; the seen_callbacks set, outside the flush()
-// function, guarantees this behavior.
-const seen_callbacks = new Set();
-let flushidx = 0; // Do *not* move this inside the flush() function
-function flush() {
- const saved_component = current_component;
- do {
- // first, call beforeUpdate functions
- // and update components
- while (flushidx < dirty_components.length) {
- const component = dirty_components[flushidx];
- flushidx++;
- set_current_component(component);
- update(component.$$);
- }
- set_current_component(null);
- dirty_components.length = 0;
- flushidx = 0;
- while (binding_callbacks.length)
- binding_callbacks.pop()();
- // then, once components are updated, call
- // afterUpdate functions. This may cause
- // subsequent updates...
- for (let i = 0; i < render_callbacks.length; i += 1) {
- const callback = render_callbacks[i];
- if (!seen_callbacks.has(callback)) {
- // ...so guard against infinite loops
- seen_callbacks.add(callback);
- callback();
- }
- }
- render_callbacks.length = 0;
- } while (dirty_components.length);
- while (flush_callbacks.length) {
- flush_callbacks.pop()();
- }
- update_scheduled = false;
- seen_callbacks.clear();
- set_current_component(saved_component);
-}
-function update($$) {
- if ($$.fragment !== null) {
- $$.update();
- run_all($$.before_update);
- const dirty = $$.dirty;
- $$.dirty = [-1];
- $$.fragment && $$.fragment.p($$.ctx, dirty);
- $$.after_update.forEach(add_render_callback);
- }
-}
-const outroing = new Set();
-function transition_in(block, local) {
- if (block && block.i) {
- outroing.delete(block);
- block.i(local);
- }
-}
-
-const globals = (typeof window !== 'undefined'
- ? window
- : typeof globalThis !== 'undefined'
- ? globalThis
- : global);
-function mount_component(component, target, anchor, customElement) {
- const { fragment, after_update } = component.$$;
- fragment && fragment.m(target, anchor);
- if (!customElement) {
- // onMount happens before the initial afterUpdate
- add_render_callback(() => {
- const new_on_destroy = component.$$.on_mount.map(run).filter(is_function);
- // if the component was destroyed immediately
- // it will update the `$$.on_destroy` reference to `null`.
- // the destructured on_destroy may still reference to the old array
- if (component.$$.on_destroy) {
- component.$$.on_destroy.push(...new_on_destroy);
- }
- else {
- // Edge case - component was destroyed immediately,
- // most likely as a result of a binding initialising
- run_all(new_on_destroy);
- }
- component.$$.on_mount = [];
- });
- }
- after_update.forEach(add_render_callback);
-}
-function destroy_component(component, detaching) {
- const $$ = component.$$;
- if ($$.fragment !== null) {
- run_all($$.on_destroy);
- $$.fragment && $$.fragment.d(detaching);
- // TODO null out other refs, including component.$$ (but need to
- // preserve final state?)
- $$.on_destroy = $$.fragment = null;
- $$.ctx = [];
- }
-}
-function make_dirty(component, i) {
- if (component.$$.dirty[0] === -1) {
- dirty_components.push(component);
- schedule_update();
- component.$$.dirty.fill(0);
- }
- component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31));
-}
-function init(component, options, instance, create_fragment, not_equal, props, append_styles, dirty = [-1]) {
- const parent_component = current_component;
- set_current_component(component);
- const $$ = component.$$ = {
- fragment: null,
- ctx: [],
- // state
- props,
- update: noop,
- not_equal,
- bound: blank_object(),
- // lifecycle
- on_mount: [],
- on_destroy: [],
- on_disconnect: [],
- before_update: [],
- after_update: [],
- context: new Map(options.context || (parent_component ? parent_component.$$.context : [])),
- // everything else
- callbacks: blank_object(),
- dirty,
- skip_bound: false,
- root: options.target || parent_component.$$.root
- };
- append_styles && append_styles($$.root);
- let ready = false;
- $$.ctx = instance
- ? instance(component, options.props || {}, (i, ret, ...rest) => {
- const value = rest.length ? rest[0] : ret;
- if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {
- if (!$$.skip_bound && $$.bound[i])
- $$.bound[i](value);
- if (ready)
- make_dirty(component, i);
- }
- return ret;
- })
- : [];
- $$.update();
- ready = true;
- run_all($$.before_update);
- // `false` as a special case of no DOM component
- $$.fragment = create_fragment ? create_fragment($$.ctx) : false;
- if (options.target) {
- if (options.hydrate) {
- const nodes = children(options.target);
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.l(nodes);
- nodes.forEach(detach);
- }
- else {
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.c();
- }
- if (options.intro)
- transition_in(component.$$.fragment);
- mount_component(component, options.target, options.anchor, options.customElement);
- flush();
- }
- set_current_component(parent_component);
-}
-let SvelteElement;
-if (typeof HTMLElement === 'function') {
- SvelteElement = class extends HTMLElement {
- constructor() {
- super();
- this.attachShadow({ mode: 'open' });
- }
- connectedCallback() {
- const { on_mount } = this.$$;
- this.$$.on_disconnect = on_mount.map(run).filter(is_function);
- // @ts-ignore todo: improve typings
- for (const key in this.$$.slotted) {
- // @ts-ignore todo: improve typings
- this.appendChild(this.$$.slotted[key]);
- }
- }
- attributeChangedCallback(attr, _oldValue, newValue) {
- this[attr] = newValue;
- }
- disconnectedCallback() {
- run_all(this.$$.on_disconnect);
- }
- $destroy() {
- destroy_component(this, 1);
- this.$destroy = noop;
- }
- $on(type, callback) {
- // TODO should this delegate to addEventListener?
- if (!is_function(callback)) {
- return noop;
- }
- const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));
- callbacks.push(callback);
- return () => {
- const index = callbacks.indexOf(callback);
- if (index !== -1)
- callbacks.splice(index, 1);
- };
- }
- $set($$props) {
- if (this.$$set && !is_empty($$props)) {
- this.$$.skip_bound = true;
- this.$$set($$props);
- this.$$.skip_bound = false;
- }
- }
- };
-}
-
-function dispatch_dev(type, detail) {
- document.dispatchEvent(custom_event(type, Object.assign({ version: '3.52.0' }, detail), { bubbles: true }));
-}
-function append_dev(target, node) {
- dispatch_dev('SvelteDOMInsert', { target, node });
- append(target, node);
-}
-function insert_dev(target, node, anchor) {
- dispatch_dev('SvelteDOMInsert', { target, node, anchor });
- insert(target, node, anchor);
-}
-function detach_dev(node) {
- dispatch_dev('SvelteDOMRemove', { node });
- detach(node);
-}
-function listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) {
- const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : [];
- if (has_prevent_default)
- modifiers.push('preventDefault');
- if (has_stop_propagation)
- modifiers.push('stopPropagation');
- dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers });
- const dispose = listen(node, event, handler, options);
- return () => {
- dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers });
- dispose();
- };
-}
-function attr_dev(node, attribute, value) {
- attr(node, attribute, value);
- if (value == null)
- dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute });
- else
- dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value });
-}
-function set_data_dev(text, data) {
- data = '' + data;
- if (text.wholeText === data)
- return;
- dispatch_dev('SvelteDOMSetData', { node: text, data });
- text.data = data;
-}
-function validate_each_argument(arg) {
- if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) {
- let msg = '{#each} only iterates over array-like objects.';
- if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) {
- msg += ' You can use a spread to convert this iterable into an array.';
- }
- throw new Error(msg);
- }
-}
-function validate_slots(name, slot, keys) {
- for (const slot_key of Object.keys(slot)) {
- if (!~keys.indexOf(slot_key)) {
- console.warn(`<${name}> received an unexpected slot "${slot_key}".`);
- }
- }
-}
-
-export { run_all as A, svg_element as B, SvelteElement as S, attribute_to_object as a, insert_dev as b, add_location as c, dispatch_dev as d, element as e, attr_dev as f, append_dev as g, detach_dev as h, init as i, flush as j, validate_each_argument as k, globals as l, destroy_each as m, noop as n, onMount as o, binding_callbacks as p, space as q, set_style as r, safe_not_equal as s, text as t, listen_dev as u, validate_slots as v, set_data_dev as w, getContext as x, setContext as y, src_url_equal as z };
diff --git a/Server/public/js/components/index-c3c26e2e.js b/Server/public/js/components/index-c3c26e2e.js
deleted file mode 100644
index 8c27403..0000000
--- a/Server/public/js/components/index-c3c26e2e.js
+++ /dev/null
@@ -1,456 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-function noop() { }
-function add_location(element, file, line, column, char) {
- element.__svelte_meta = {
- loc: { file, line, column, char }
- };
-}
-function run(fn) {
- return fn();
-}
-function blank_object() {
- return Object.create(null);
-}
-function run_all(fns) {
- fns.forEach(run);
-}
-function is_function(thing) {
- return typeof thing === 'function';
-}
-function safe_not_equal(a, b) {
- return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');
-}
-let src_url_equal_anchor;
-function src_url_equal(element_src, url) {
- if (!src_url_equal_anchor) {
- src_url_equal_anchor = document.createElement('a');
- }
- src_url_equal_anchor.href = url;
- return element_src === src_url_equal_anchor.href;
-}
-function is_empty(obj) {
- return Object.keys(obj).length === 0;
-}
-function append(target, node) {
- target.appendChild(node);
-}
-function insert(target, node, anchor) {
- target.insertBefore(node, anchor || null);
-}
-function detach(node) {
- node.parentNode.removeChild(node);
-}
-function destroy_each(iterations, detaching) {
- for (let i = 0; i < iterations.length; i += 1) {
- if (iterations[i])
- iterations[i].d(detaching);
- }
-}
-function element(name) {
- return document.createElement(name);
-}
-function svg_element(name) {
- return document.createElementNS('http://www.w3.org/2000/svg', name);
-}
-function text(data) {
- return document.createTextNode(data);
-}
-function space() {
- return text(' ');
-}
-function empty() {
- return text('');
-}
-function listen(node, event, handler, options) {
- node.addEventListener(event, handler, options);
- return () => node.removeEventListener(event, handler, options);
-}
-function attr(node, attribute, value) {
- if (value == null)
- node.removeAttribute(attribute);
- else if (node.getAttribute(attribute) !== value)
- node.setAttribute(attribute, value);
-}
-function set_custom_element_data(node, prop, value) {
- if (prop in node) {
- node[prop] = typeof node[prop] === 'boolean' && value === '' ? true : value;
- }
- else {
- attr(node, prop, value);
- }
-}
-function children(element) {
- return Array.from(element.childNodes);
-}
-function set_style(node, key, value, important) {
- if (value === null) {
- node.style.removeProperty(key);
- }
- else {
- node.style.setProperty(key, value, important ? 'important' : '');
- }
-}
-function custom_event(type, detail, { bubbles = false, cancelable = false } = {}) {
- const e = document.createEvent('CustomEvent');
- e.initCustomEvent(type, bubbles, cancelable, detail);
- return e;
-}
-function attribute_to_object(attributes) {
- const result = {};
- for (const attribute of attributes) {
- result[attribute.name] = attribute.value;
- }
- return result;
-}
-
-let current_component;
-function set_current_component(component) {
- current_component = component;
-}
-function get_current_component() {
- if (!current_component)
- throw new Error('Function called outside component initialization');
- return current_component;
-}
-/**
- * The `onMount` function schedules a callback to run as soon as the component has been mounted to the DOM.
- * It must be called during the component's initialisation (but doesn't need to live *inside* the component;
- * it can be called from an external module).
- *
- * `onMount` does not run inside a [server-side component](/docs#run-time-server-side-component-api).
- *
- * https://svelte.dev/docs#run-time-svelte-onmount
- */
-function onMount(fn) {
- get_current_component().$$.on_mount.push(fn);
-}
-/**
- * Associates an arbitrary `context` object with the current component and the specified `key`
- * and returns that object. The context is then available to children of the component
- * (including slotted content) with `getContext`.
- *
- * Like lifecycle functions, this must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-setcontext
- */
-function setContext(key, context) {
- get_current_component().$$.context.set(key, context);
- return context;
-}
-/**
- * Retrieves the context that belongs to the closest parent component with the specified `key`.
- * Must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-getcontext
- */
-function getContext(key) {
- return get_current_component().$$.context.get(key);
-}
-
-const dirty_components = [];
-const binding_callbacks = [];
-const render_callbacks = [];
-const flush_callbacks = [];
-const resolved_promise = Promise.resolve();
-let update_scheduled = false;
-function schedule_update() {
- if (!update_scheduled) {
- update_scheduled = true;
- resolved_promise.then(flush);
- }
-}
-function add_render_callback(fn) {
- render_callbacks.push(fn);
-}
-// flush() calls callbacks in this order:
-// 1. All beforeUpdate callbacks, in order: parents before children
-// 2. All bind:this callbacks, in reverse order: children before parents.
-// 3. All afterUpdate callbacks, in order: parents before children. EXCEPT
-// for afterUpdates called during the initial onMount, which are called in
-// reverse order: children before parents.
-// Since callbacks might update component values, which could trigger another
-// call to flush(), the following steps guard against this:
-// 1. During beforeUpdate, any updated components will be added to the
-// dirty_components array and will cause a reentrant call to flush(). Because
-// the flush index is kept outside the function, the reentrant call will pick
-// up where the earlier call left off and go through all dirty components. The
-// current_component value is saved and restored so that the reentrant call will
-// not interfere with the "parent" flush() call.
-// 2. bind:this callbacks cannot trigger new flush() calls.
-// 3. During afterUpdate, any updated components will NOT have their afterUpdate
-// callback called a second time; the seen_callbacks set, outside the flush()
-// function, guarantees this behavior.
-const seen_callbacks = new Set();
-let flushidx = 0; // Do *not* move this inside the flush() function
-function flush() {
- const saved_component = current_component;
- do {
- // first, call beforeUpdate functions
- // and update components
- while (flushidx < dirty_components.length) {
- const component = dirty_components[flushidx];
- flushidx++;
- set_current_component(component);
- update(component.$$);
- }
- set_current_component(null);
- dirty_components.length = 0;
- flushidx = 0;
- while (binding_callbacks.length)
- binding_callbacks.pop()();
- // then, once components are updated, call
- // afterUpdate functions. This may cause
- // subsequent updates...
- for (let i = 0; i < render_callbacks.length; i += 1) {
- const callback = render_callbacks[i];
- if (!seen_callbacks.has(callback)) {
- // ...so guard against infinite loops
- seen_callbacks.add(callback);
- callback();
- }
- }
- render_callbacks.length = 0;
- } while (dirty_components.length);
- while (flush_callbacks.length) {
- flush_callbacks.pop()();
- }
- update_scheduled = false;
- seen_callbacks.clear();
- set_current_component(saved_component);
-}
-function update($$) {
- if ($$.fragment !== null) {
- $$.update();
- run_all($$.before_update);
- const dirty = $$.dirty;
- $$.dirty = [-1];
- $$.fragment && $$.fragment.p($$.ctx, dirty);
- $$.after_update.forEach(add_render_callback);
- }
-}
-const outroing = new Set();
-function transition_in(block, local) {
- if (block && block.i) {
- outroing.delete(block);
- block.i(local);
- }
-}
-
-const globals = (typeof window !== 'undefined'
- ? window
- : typeof globalThis !== 'undefined'
- ? globalThis
- : global);
-function mount_component(component, target, anchor, customElement) {
- const { fragment, after_update } = component.$$;
- fragment && fragment.m(target, anchor);
- if (!customElement) {
- // onMount happens before the initial afterUpdate
- add_render_callback(() => {
- const new_on_destroy = component.$$.on_mount.map(run).filter(is_function);
- // if the component was destroyed immediately
- // it will update the `$$.on_destroy` reference to `null`.
- // the destructured on_destroy may still reference to the old array
- if (component.$$.on_destroy) {
- component.$$.on_destroy.push(...new_on_destroy);
- }
- else {
- // Edge case - component was destroyed immediately,
- // most likely as a result of a binding initialising
- run_all(new_on_destroy);
- }
- component.$$.on_mount = [];
- });
- }
- after_update.forEach(add_render_callback);
-}
-function destroy_component(component, detaching) {
- const $$ = component.$$;
- if ($$.fragment !== null) {
- run_all($$.on_destroy);
- $$.fragment && $$.fragment.d(detaching);
- // TODO null out other refs, including component.$$ (but need to
- // preserve final state?)
- $$.on_destroy = $$.fragment = null;
- $$.ctx = [];
- }
-}
-function make_dirty(component, i) {
- if (component.$$.dirty[0] === -1) {
- dirty_components.push(component);
- schedule_update();
- component.$$.dirty.fill(0);
- }
- component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31));
-}
-function init(component, options, instance, create_fragment, not_equal, props, append_styles, dirty = [-1]) {
- const parent_component = current_component;
- set_current_component(component);
- const $$ = component.$$ = {
- fragment: null,
- ctx: [],
- // state
- props,
- update: noop,
- not_equal,
- bound: blank_object(),
- // lifecycle
- on_mount: [],
- on_destroy: [],
- on_disconnect: [],
- before_update: [],
- after_update: [],
- context: new Map(options.context || (parent_component ? parent_component.$$.context : [])),
- // everything else
- callbacks: blank_object(),
- dirty,
- skip_bound: false,
- root: options.target || parent_component.$$.root
- };
- append_styles && append_styles($$.root);
- let ready = false;
- $$.ctx = instance
- ? instance(component, options.props || {}, (i, ret, ...rest) => {
- const value = rest.length ? rest[0] : ret;
- if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {
- if (!$$.skip_bound && $$.bound[i])
- $$.bound[i](value);
- if (ready)
- make_dirty(component, i);
- }
- return ret;
- })
- : [];
- $$.update();
- ready = true;
- run_all($$.before_update);
- // `false` as a special case of no DOM component
- $$.fragment = create_fragment ? create_fragment($$.ctx) : false;
- if (options.target) {
- if (options.hydrate) {
- const nodes = children(options.target);
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.l(nodes);
- nodes.forEach(detach);
- }
- else {
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.c();
- }
- if (options.intro)
- transition_in(component.$$.fragment);
- mount_component(component, options.target, options.anchor, options.customElement);
- flush();
- }
- set_current_component(parent_component);
-}
-let SvelteElement;
-if (typeof HTMLElement === 'function') {
- SvelteElement = class extends HTMLElement {
- constructor() {
- super();
- this.attachShadow({ mode: 'open' });
- }
- connectedCallback() {
- const { on_mount } = this.$$;
- this.$$.on_disconnect = on_mount.map(run).filter(is_function);
- // @ts-ignore todo: improve typings
- for (const key in this.$$.slotted) {
- // @ts-ignore todo: improve typings
- this.appendChild(this.$$.slotted[key]);
- }
- }
- attributeChangedCallback(attr, _oldValue, newValue) {
- this[attr] = newValue;
- }
- disconnectedCallback() {
- run_all(this.$$.on_disconnect);
- }
- $destroy() {
- destroy_component(this, 1);
- this.$destroy = noop;
- }
- $on(type, callback) {
- // TODO should this delegate to addEventListener?
- if (!is_function(callback)) {
- return noop;
- }
- const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));
- callbacks.push(callback);
- return () => {
- const index = callbacks.indexOf(callback);
- if (index !== -1)
- callbacks.splice(index, 1);
- };
- }
- $set($$props) {
- if (this.$$set && !is_empty($$props)) {
- this.$$.skip_bound = true;
- this.$$set($$props);
- this.$$.skip_bound = false;
- }
- }
- };
-}
-
-function dispatch_dev(type, detail) {
- document.dispatchEvent(custom_event(type, Object.assign({ version: '3.52.0' }, detail), { bubbles: true }));
-}
-function append_dev(target, node) {
- dispatch_dev('SvelteDOMInsert', { target, node });
- append(target, node);
-}
-function insert_dev(target, node, anchor) {
- dispatch_dev('SvelteDOMInsert', { target, node, anchor });
- insert(target, node, anchor);
-}
-function detach_dev(node) {
- dispatch_dev('SvelteDOMRemove', { node });
- detach(node);
-}
-function listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) {
- const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : [];
- if (has_prevent_default)
- modifiers.push('preventDefault');
- if (has_stop_propagation)
- modifiers.push('stopPropagation');
- dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers });
- const dispose = listen(node, event, handler, options);
- return () => {
- dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers });
- dispose();
- };
-}
-function attr_dev(node, attribute, value) {
- attr(node, attribute, value);
- if (value == null)
- dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute });
- else
- dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value });
-}
-function set_data_dev(text, data) {
- data = '' + data;
- if (text.wholeText === data)
- return;
- dispatch_dev('SvelteDOMSetData', { node: text, data });
- text.data = data;
-}
-function validate_each_argument(arg) {
- if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) {
- let msg = '{#each} only iterates over array-like objects.';
- if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) {
- msg += ' You can use a spread to convert this iterable into an array.';
- }
- throw new Error(msg);
- }
-}
-function validate_slots(name, slot, keys) {
- for (const slot_key of Object.keys(slot)) {
- if (!~keys.indexOf(slot_key)) {
- console.warn(`<${name}> received an unexpected slot "${slot_key}".`);
- }
- }
-}
-
-export { setContext as A, run_all as B, svg_element as C, empty as D, SvelteElement as S, attribute_to_object as a, insert_dev as b, validate_slots as c, dispatch_dev as d, element as e, space as f, add_location as g, attr_dev as h, init as i, src_url_equal as j, append_dev as k, detach_dev as l, destroy_each as m, noop as n, onMount as o, set_custom_element_data as p, flush as q, globals as r, safe_not_equal as s, text as t, binding_callbacks as u, validate_each_argument as v, set_style as w, listen_dev as x, set_data_dev as y, getContext as z };
diff --git a/Server/public/js/components/index-c56a6d4d.js b/Server/public/js/components/index-c56a6d4d.js
deleted file mode 100644
index 2b16b82..0000000
--- a/Server/public/js/components/index-c56a6d4d.js
+++ /dev/null
@@ -1,527 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-function noop() { }
-function add_location(element, file, line, column, char) {
- element.__svelte_meta = {
- loc: { file, line, column, char }
- };
-}
-function run(fn) {
- return fn();
-}
-function blank_object() {
- return Object.create(null);
-}
-function run_all(fns) {
- fns.forEach(run);
-}
-function is_function(thing) {
- return typeof thing === 'function';
-}
-function safe_not_equal(a, b) {
- return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');
-}
-let src_url_equal_anchor;
-function src_url_equal(element_src, url) {
- if (!src_url_equal_anchor) {
- src_url_equal_anchor = document.createElement('a');
- }
- src_url_equal_anchor.href = url;
- return element_src === src_url_equal_anchor.href;
-}
-function is_empty(obj) {
- return Object.keys(obj).length === 0;
-}
-function validate_store(store, name) {
- if (store != null && typeof store.subscribe !== 'function') {
- throw new Error(`'${name}' is not a store with a 'subscribe' method`);
- }
-}
-function subscribe(store, ...callbacks) {
- if (store == null) {
- return noop;
- }
- const unsub = store.subscribe(...callbacks);
- return unsub.unsubscribe ? () => unsub.unsubscribe() : unsub;
-}
-function component_subscribe(component, store, callback) {
- component.$$.on_destroy.push(subscribe(store, callback));
-}
-function append(target, node) {
- target.appendChild(node);
-}
-function insert(target, node, anchor) {
- target.insertBefore(node, anchor || null);
-}
-function detach(node) {
- node.parentNode.removeChild(node);
-}
-function destroy_each(iterations, detaching) {
- for (let i = 0; i < iterations.length; i += 1) {
- if (iterations[i])
- iterations[i].d(detaching);
- }
-}
-function element(name) {
- return document.createElement(name);
-}
-function svg_element(name) {
- return document.createElementNS('http://www.w3.org/2000/svg', name);
-}
-function text(data) {
- return document.createTextNode(data);
-}
-function space() {
- return text(' ');
-}
-function empty() {
- return text('');
-}
-function listen(node, event, handler, options) {
- node.addEventListener(event, handler, options);
- return () => node.removeEventListener(event, handler, options);
-}
-function attr(node, attribute, value) {
- if (value == null)
- node.removeAttribute(attribute);
- else if (node.getAttribute(attribute) !== value)
- node.setAttribute(attribute, value);
-}
-function set_custom_element_data(node, prop, value) {
- if (prop in node) {
- node[prop] = typeof node[prop] === 'boolean' && value === '' ? true : value;
- }
- else {
- attr(node, prop, value);
- }
-}
-function to_number(value) {
- return value === '' ? null : +value;
-}
-function children(element) {
- return Array.from(element.childNodes);
-}
-function set_input_value(input, value) {
- input.value = value == null ? '' : value;
-}
-function set_style(node, key, value, important) {
- if (value === null) {
- node.style.removeProperty(key);
- }
- else {
- node.style.setProperty(key, value, important ? 'important' : '');
- }
-}
-function custom_event(type, detail, { bubbles = false, cancelable = false } = {}) {
- const e = document.createEvent('CustomEvent');
- e.initCustomEvent(type, bubbles, cancelable, detail);
- return e;
-}
-class HtmlTag {
- constructor(is_svg = false) {
- this.is_svg = false;
- this.is_svg = is_svg;
- this.e = this.n = null;
- }
- c(html) {
- this.h(html);
- }
- m(html, target, anchor = null) {
- if (!this.e) {
- if (this.is_svg)
- this.e = svg_element(target.nodeName);
- else
- this.e = element(target.nodeName);
- this.t = target;
- this.c(html);
- }
- this.i(anchor);
- }
- h(html) {
- this.e.innerHTML = html;
- this.n = Array.from(this.e.childNodes);
- }
- i(anchor) {
- for (let i = 0; i < this.n.length; i += 1) {
- insert(this.t, this.n[i], anchor);
- }
- }
- p(html) {
- this.d();
- this.h(html);
- this.i(this.a);
- }
- d() {
- this.n.forEach(detach);
- }
-}
-function attribute_to_object(attributes) {
- const result = {};
- for (const attribute of attributes) {
- result[attribute.name] = attribute.value;
- }
- return result;
-}
-
-let current_component;
-function set_current_component(component) {
- current_component = component;
-}
-function get_current_component() {
- if (!current_component)
- throw new Error('Function called outside component initialization');
- return current_component;
-}
-/**
- * The `onMount` function schedules a callback to run as soon as the component has been mounted to the DOM.
- * It must be called during the component's initialisation (but doesn't need to live *inside* the component;
- * it can be called from an external module).
- *
- * `onMount` does not run inside a [server-side component](/docs#run-time-server-side-component-api).
- *
- * https://svelte.dev/docs#run-time-svelte-onmount
- */
-function onMount(fn) {
- get_current_component().$$.on_mount.push(fn);
-}
-/**
- * Schedules a callback to run immediately after the component has been updated.
- *
- * The first time the callback runs will be after the initial `onMount`
- */
-function afterUpdate(fn) {
- get_current_component().$$.after_update.push(fn);
-}
-/**
- * Associates an arbitrary `context` object with the current component and the specified `key`
- * and returns that object. The context is then available to children of the component
- * (including slotted content) with `getContext`.
- *
- * Like lifecycle functions, this must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-setcontext
- */
-function setContext(key, context) {
- get_current_component().$$.context.set(key, context);
- return context;
-}
-/**
- * Retrieves the context that belongs to the closest parent component with the specified `key`.
- * Must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-getcontext
- */
-function getContext(key) {
- return get_current_component().$$.context.get(key);
-}
-
-const dirty_components = [];
-const binding_callbacks = [];
-const render_callbacks = [];
-const flush_callbacks = [];
-const resolved_promise = Promise.resolve();
-let update_scheduled = false;
-function schedule_update() {
- if (!update_scheduled) {
- update_scheduled = true;
- resolved_promise.then(flush);
- }
-}
-function add_render_callback(fn) {
- render_callbacks.push(fn);
-}
-// flush() calls callbacks in this order:
-// 1. All beforeUpdate callbacks, in order: parents before children
-// 2. All bind:this callbacks, in reverse order: children before parents.
-// 3. All afterUpdate callbacks, in order: parents before children. EXCEPT
-// for afterUpdates called during the initial onMount, which are called in
-// reverse order: children before parents.
-// Since callbacks might update component values, which could trigger another
-// call to flush(), the following steps guard against this:
-// 1. During beforeUpdate, any updated components will be added to the
-// dirty_components array and will cause a reentrant call to flush(). Because
-// the flush index is kept outside the function, the reentrant call will pick
-// up where the earlier call left off and go through all dirty components. The
-// current_component value is saved and restored so that the reentrant call will
-// not interfere with the "parent" flush() call.
-// 2. bind:this callbacks cannot trigger new flush() calls.
-// 3. During afterUpdate, any updated components will NOT have their afterUpdate
-// callback called a second time; the seen_callbacks set, outside the flush()
-// function, guarantees this behavior.
-const seen_callbacks = new Set();
-let flushidx = 0; // Do *not* move this inside the flush() function
-function flush() {
- const saved_component = current_component;
- do {
- // first, call beforeUpdate functions
- // and update components
- while (flushidx < dirty_components.length) {
- const component = dirty_components[flushidx];
- flushidx++;
- set_current_component(component);
- update(component.$$);
- }
- set_current_component(null);
- dirty_components.length = 0;
- flushidx = 0;
- while (binding_callbacks.length)
- binding_callbacks.pop()();
- // then, once components are updated, call
- // afterUpdate functions. This may cause
- // subsequent updates...
- for (let i = 0; i < render_callbacks.length; i += 1) {
- const callback = render_callbacks[i];
- if (!seen_callbacks.has(callback)) {
- // ...so guard against infinite loops
- seen_callbacks.add(callback);
- callback();
- }
- }
- render_callbacks.length = 0;
- } while (dirty_components.length);
- while (flush_callbacks.length) {
- flush_callbacks.pop()();
- }
- update_scheduled = false;
- seen_callbacks.clear();
- set_current_component(saved_component);
-}
-function update($$) {
- if ($$.fragment !== null) {
- $$.update();
- run_all($$.before_update);
- const dirty = $$.dirty;
- $$.dirty = [-1];
- $$.fragment && $$.fragment.p($$.ctx, dirty);
- $$.after_update.forEach(add_render_callback);
- }
-}
-const outroing = new Set();
-function transition_in(block, local) {
- if (block && block.i) {
- outroing.delete(block);
- block.i(local);
- }
-}
-
-const globals = (typeof window !== 'undefined'
- ? window
- : typeof globalThis !== 'undefined'
- ? globalThis
- : global);
-function mount_component(component, target, anchor, customElement) {
- const { fragment, after_update } = component.$$;
- fragment && fragment.m(target, anchor);
- if (!customElement) {
- // onMount happens before the initial afterUpdate
- add_render_callback(() => {
- const new_on_destroy = component.$$.on_mount.map(run).filter(is_function);
- // if the component was destroyed immediately
- // it will update the `$$.on_destroy` reference to `null`.
- // the destructured on_destroy may still reference to the old array
- if (component.$$.on_destroy) {
- component.$$.on_destroy.push(...new_on_destroy);
- }
- else {
- // Edge case - component was destroyed immediately,
- // most likely as a result of a binding initialising
- run_all(new_on_destroy);
- }
- component.$$.on_mount = [];
- });
- }
- after_update.forEach(add_render_callback);
-}
-function destroy_component(component, detaching) {
- const $$ = component.$$;
- if ($$.fragment !== null) {
- run_all($$.on_destroy);
- $$.fragment && $$.fragment.d(detaching);
- // TODO null out other refs, including component.$$ (but need to
- // preserve final state?)
- $$.on_destroy = $$.fragment = null;
- $$.ctx = [];
- }
-}
-function make_dirty(component, i) {
- if (component.$$.dirty[0] === -1) {
- dirty_components.push(component);
- schedule_update();
- component.$$.dirty.fill(0);
- }
- component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31));
-}
-function init(component, options, instance, create_fragment, not_equal, props, append_styles, dirty = [-1]) {
- const parent_component = current_component;
- set_current_component(component);
- const $$ = component.$$ = {
- fragment: null,
- ctx: [],
- // state
- props,
- update: noop,
- not_equal,
- bound: blank_object(),
- // lifecycle
- on_mount: [],
- on_destroy: [],
- on_disconnect: [],
- before_update: [],
- after_update: [],
- context: new Map(options.context || (parent_component ? parent_component.$$.context : [])),
- // everything else
- callbacks: blank_object(),
- dirty,
- skip_bound: false,
- root: options.target || parent_component.$$.root
- };
- append_styles && append_styles($$.root);
- let ready = false;
- $$.ctx = instance
- ? instance(component, options.props || {}, (i, ret, ...rest) => {
- const value = rest.length ? rest[0] : ret;
- if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {
- if (!$$.skip_bound && $$.bound[i])
- $$.bound[i](value);
- if (ready)
- make_dirty(component, i);
- }
- return ret;
- })
- : [];
- $$.update();
- ready = true;
- run_all($$.before_update);
- // `false` as a special case of no DOM component
- $$.fragment = create_fragment ? create_fragment($$.ctx) : false;
- if (options.target) {
- if (options.hydrate) {
- const nodes = children(options.target);
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.l(nodes);
- nodes.forEach(detach);
- }
- else {
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.c();
- }
- if (options.intro)
- transition_in(component.$$.fragment);
- mount_component(component, options.target, options.anchor, options.customElement);
- flush();
- }
- set_current_component(parent_component);
-}
-let SvelteElement;
-if (typeof HTMLElement === 'function') {
- SvelteElement = class extends HTMLElement {
- constructor() {
- super();
- this.attachShadow({ mode: 'open' });
- }
- connectedCallback() {
- const { on_mount } = this.$$;
- this.$$.on_disconnect = on_mount.map(run).filter(is_function);
- // @ts-ignore todo: improve typings
- for (const key in this.$$.slotted) {
- // @ts-ignore todo: improve typings
- this.appendChild(this.$$.slotted[key]);
- }
- }
- attributeChangedCallback(attr, _oldValue, newValue) {
- this[attr] = newValue;
- }
- disconnectedCallback() {
- run_all(this.$$.on_disconnect);
- }
- $destroy() {
- destroy_component(this, 1);
- this.$destroy = noop;
- }
- $on(type, callback) {
- // TODO should this delegate to addEventListener?
- if (!is_function(callback)) {
- return noop;
- }
- const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));
- callbacks.push(callback);
- return () => {
- const index = callbacks.indexOf(callback);
- if (index !== -1)
- callbacks.splice(index, 1);
- };
- }
- $set($$props) {
- if (this.$$set && !is_empty($$props)) {
- this.$$.skip_bound = true;
- this.$$set($$props);
- this.$$.skip_bound = false;
- }
- }
- };
-}
-
-function dispatch_dev(type, detail) {
- document.dispatchEvent(custom_event(type, Object.assign({ version: '3.52.0' }, detail), { bubbles: true }));
-}
-function append_dev(target, node) {
- dispatch_dev('SvelteDOMInsert', { target, node });
- append(target, node);
-}
-function insert_dev(target, node, anchor) {
- dispatch_dev('SvelteDOMInsert', { target, node, anchor });
- insert(target, node, anchor);
-}
-function detach_dev(node) {
- dispatch_dev('SvelteDOMRemove', { node });
- detach(node);
-}
-function listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) {
- const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : [];
- if (has_prevent_default)
- modifiers.push('preventDefault');
- if (has_stop_propagation)
- modifiers.push('stopPropagation');
- dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers });
- const dispose = listen(node, event, handler, options);
- return () => {
- dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers });
- dispose();
- };
-}
-function attr_dev(node, attribute, value) {
- attr(node, attribute, value);
- if (value == null)
- dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute });
- else
- dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value });
-}
-function prop_dev(node, property, value) {
- node[property] = value;
- dispatch_dev('SvelteDOMSetProperty', { node, property, value });
-}
-function set_data_dev(text, data) {
- data = '' + data;
- if (text.wholeText === data)
- return;
- dispatch_dev('SvelteDOMSetData', { node: text, data });
- text.data = data;
-}
-function validate_each_argument(arg) {
- if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) {
- let msg = '{#each} only iterates over array-like objects.';
- if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) {
- msg += ' You can use a spread to convert this iterable into an array.';
- }
- throw new Error(msg);
- }
-}
-function validate_slots(name, slot, keys) {
- for (const slot_key of Object.keys(slot)) {
- if (!~keys.indexOf(slot_key)) {
- console.warn(`<${name}> received an unexpected slot "${slot_key}".`);
- }
- }
-}
-
-export { flush as A, is_function as B, src_url_equal as C, set_custom_element_data as D, set_data_dev as E, prop_dev as F, set_style as G, svg_element as H, HtmlTag as I, afterUpdate as J, to_number as K, set_input_value as L, SvelteElement as S, attribute_to_object as a, insert_dev as b, validate_store as c, dispatch_dev as d, component_subscribe as e, empty as f, getContext as g, detach_dev as h, init as i, binding_callbacks as j, validate_each_argument as k, element as l, space as m, noop as n, onMount as o, add_location as p, attr_dev as q, append_dev as r, safe_not_equal as s, listen_dev as t, destroy_each as u, validate_slots as v, text as w, setContext as x, globals as y, run_all as z };
diff --git a/Server/public/js/components/index-ccd08129.js b/Server/public/js/components/index-ccd08129.js
deleted file mode 100644
index 775f1b7..0000000
--- a/Server/public/js/components/index-ccd08129.js
+++ /dev/null
@@ -1,494 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-function noop() { }
-function add_location(element, file, line, column, char) {
- element.__svelte_meta = {
- loc: { file, line, column, char }
- };
-}
-function run(fn) {
- return fn();
-}
-function blank_object() {
- return Object.create(null);
-}
-function run_all(fns) {
- fns.forEach(run);
-}
-function is_function(thing) {
- return typeof thing === 'function';
-}
-function safe_not_equal(a, b) {
- return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');
-}
-let src_url_equal_anchor;
-function src_url_equal(element_src, url) {
- if (!src_url_equal_anchor) {
- src_url_equal_anchor = document.createElement('a');
- }
- src_url_equal_anchor.href = url;
- return element_src === src_url_equal_anchor.href;
-}
-function is_empty(obj) {
- return Object.keys(obj).length === 0;
-}
-function append(target, node) {
- target.appendChild(node);
-}
-function insert(target, node, anchor) {
- target.insertBefore(node, anchor || null);
-}
-function detach(node) {
- node.parentNode.removeChild(node);
-}
-function destroy_each(iterations, detaching) {
- for (let i = 0; i < iterations.length; i += 1) {
- if (iterations[i])
- iterations[i].d(detaching);
- }
-}
-function element(name) {
- return document.createElement(name);
-}
-function svg_element(name) {
- return document.createElementNS('http://www.w3.org/2000/svg', name);
-}
-function text(data) {
- return document.createTextNode(data);
-}
-function space() {
- return text(' ');
-}
-function empty() {
- return text('');
-}
-function listen(node, event, handler, options) {
- node.addEventListener(event, handler, options);
- return () => node.removeEventListener(event, handler, options);
-}
-function attr(node, attribute, value) {
- if (value == null)
- node.removeAttribute(attribute);
- else if (node.getAttribute(attribute) !== value)
- node.setAttribute(attribute, value);
-}
-function set_custom_element_data(node, prop, value) {
- if (prop in node) {
- node[prop] = typeof node[prop] === 'boolean' && value === '' ? true : value;
- }
- else {
- attr(node, prop, value);
- }
-}
-function children(element) {
- return Array.from(element.childNodes);
-}
-function set_style(node, key, value, important) {
- if (value === null) {
- node.style.removeProperty(key);
- }
- else {
- node.style.setProperty(key, value, important ? 'important' : '');
- }
-}
-function custom_event(type, detail, { bubbles = false, cancelable = false } = {}) {
- const e = document.createEvent('CustomEvent');
- e.initCustomEvent(type, bubbles, cancelable, detail);
- return e;
-}
-class HtmlTag {
- constructor(is_svg = false) {
- this.is_svg = false;
- this.is_svg = is_svg;
- this.e = this.n = null;
- }
- c(html) {
- this.h(html);
- }
- m(html, target, anchor = null) {
- if (!this.e) {
- if (this.is_svg)
- this.e = svg_element(target.nodeName);
- else
- this.e = element(target.nodeName);
- this.t = target;
- this.c(html);
- }
- this.i(anchor);
- }
- h(html) {
- this.e.innerHTML = html;
- this.n = Array.from(this.e.childNodes);
- }
- i(anchor) {
- for (let i = 0; i < this.n.length; i += 1) {
- insert(this.t, this.n[i], anchor);
- }
- }
- p(html) {
- this.d();
- this.h(html);
- this.i(this.a);
- }
- d() {
- this.n.forEach(detach);
- }
-}
-function attribute_to_object(attributes) {
- const result = {};
- for (const attribute of attributes) {
- result[attribute.name] = attribute.value;
- }
- return result;
-}
-
-let current_component;
-function set_current_component(component) {
- current_component = component;
-}
-function get_current_component() {
- if (!current_component)
- throw new Error('Function called outside component initialization');
- return current_component;
-}
-/**
- * The `onMount` function schedules a callback to run as soon as the component has been mounted to the DOM.
- * It must be called during the component's initialisation (but doesn't need to live *inside* the component;
- * it can be called from an external module).
- *
- * `onMount` does not run inside a [server-side component](/docs#run-time-server-side-component-api).
- *
- * https://svelte.dev/docs#run-time-svelte-onmount
- */
-function onMount(fn) {
- get_current_component().$$.on_mount.push(fn);
-}
-/**
- * Associates an arbitrary `context` object with the current component and the specified `key`
- * and returns that object. The context is then available to children of the component
- * (including slotted content) with `getContext`.
- *
- * Like lifecycle functions, this must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-setcontext
- */
-function setContext(key, context) {
- get_current_component().$$.context.set(key, context);
- return context;
-}
-/**
- * Retrieves the context that belongs to the closest parent component with the specified `key`.
- * Must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-getcontext
- */
-function getContext(key) {
- return get_current_component().$$.context.get(key);
-}
-
-const dirty_components = [];
-const binding_callbacks = [];
-const render_callbacks = [];
-const flush_callbacks = [];
-const resolved_promise = Promise.resolve();
-let update_scheduled = false;
-function schedule_update() {
- if (!update_scheduled) {
- update_scheduled = true;
- resolved_promise.then(flush);
- }
-}
-function add_render_callback(fn) {
- render_callbacks.push(fn);
-}
-// flush() calls callbacks in this order:
-// 1. All beforeUpdate callbacks, in order: parents before children
-// 2. All bind:this callbacks, in reverse order: children before parents.
-// 3. All afterUpdate callbacks, in order: parents before children. EXCEPT
-// for afterUpdates called during the initial onMount, which are called in
-// reverse order: children before parents.
-// Since callbacks might update component values, which could trigger another
-// call to flush(), the following steps guard against this:
-// 1. During beforeUpdate, any updated components will be added to the
-// dirty_components array and will cause a reentrant call to flush(). Because
-// the flush index is kept outside the function, the reentrant call will pick
-// up where the earlier call left off and go through all dirty components. The
-// current_component value is saved and restored so that the reentrant call will
-// not interfere with the "parent" flush() call.
-// 2. bind:this callbacks cannot trigger new flush() calls.
-// 3. During afterUpdate, any updated components will NOT have their afterUpdate
-// callback called a second time; the seen_callbacks set, outside the flush()
-// function, guarantees this behavior.
-const seen_callbacks = new Set();
-let flushidx = 0; // Do *not* move this inside the flush() function
-function flush() {
- const saved_component = current_component;
- do {
- // first, call beforeUpdate functions
- // and update components
- while (flushidx < dirty_components.length) {
- const component = dirty_components[flushidx];
- flushidx++;
- set_current_component(component);
- update(component.$$);
- }
- set_current_component(null);
- dirty_components.length = 0;
- flushidx = 0;
- while (binding_callbacks.length)
- binding_callbacks.pop()();
- // then, once components are updated, call
- // afterUpdate functions. This may cause
- // subsequent updates...
- for (let i = 0; i < render_callbacks.length; i += 1) {
- const callback = render_callbacks[i];
- if (!seen_callbacks.has(callback)) {
- // ...so guard against infinite loops
- seen_callbacks.add(callback);
- callback();
- }
- }
- render_callbacks.length = 0;
- } while (dirty_components.length);
- while (flush_callbacks.length) {
- flush_callbacks.pop()();
- }
- update_scheduled = false;
- seen_callbacks.clear();
- set_current_component(saved_component);
-}
-function update($$) {
- if ($$.fragment !== null) {
- $$.update();
- run_all($$.before_update);
- const dirty = $$.dirty;
- $$.dirty = [-1];
- $$.fragment && $$.fragment.p($$.ctx, dirty);
- $$.after_update.forEach(add_render_callback);
- }
-}
-const outroing = new Set();
-function transition_in(block, local) {
- if (block && block.i) {
- outroing.delete(block);
- block.i(local);
- }
-}
-
-const globals = (typeof window !== 'undefined'
- ? window
- : typeof globalThis !== 'undefined'
- ? globalThis
- : global);
-function mount_component(component, target, anchor, customElement) {
- const { fragment, after_update } = component.$$;
- fragment && fragment.m(target, anchor);
- if (!customElement) {
- // onMount happens before the initial afterUpdate
- add_render_callback(() => {
- const new_on_destroy = component.$$.on_mount.map(run).filter(is_function);
- // if the component was destroyed immediately
- // it will update the `$$.on_destroy` reference to `null`.
- // the destructured on_destroy may still reference to the old array
- if (component.$$.on_destroy) {
- component.$$.on_destroy.push(...new_on_destroy);
- }
- else {
- // Edge case - component was destroyed immediately,
- // most likely as a result of a binding initialising
- run_all(new_on_destroy);
- }
- component.$$.on_mount = [];
- });
- }
- after_update.forEach(add_render_callback);
-}
-function destroy_component(component, detaching) {
- const $$ = component.$$;
- if ($$.fragment !== null) {
- run_all($$.on_destroy);
- $$.fragment && $$.fragment.d(detaching);
- // TODO null out other refs, including component.$$ (but need to
- // preserve final state?)
- $$.on_destroy = $$.fragment = null;
- $$.ctx = [];
- }
-}
-function make_dirty(component, i) {
- if (component.$$.dirty[0] === -1) {
- dirty_components.push(component);
- schedule_update();
- component.$$.dirty.fill(0);
- }
- component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31));
-}
-function init(component, options, instance, create_fragment, not_equal, props, append_styles, dirty = [-1]) {
- const parent_component = current_component;
- set_current_component(component);
- const $$ = component.$$ = {
- fragment: null,
- ctx: [],
- // state
- props,
- update: noop,
- not_equal,
- bound: blank_object(),
- // lifecycle
- on_mount: [],
- on_destroy: [],
- on_disconnect: [],
- before_update: [],
- after_update: [],
- context: new Map(options.context || (parent_component ? parent_component.$$.context : [])),
- // everything else
- callbacks: blank_object(),
- dirty,
- skip_bound: false,
- root: options.target || parent_component.$$.root
- };
- append_styles && append_styles($$.root);
- let ready = false;
- $$.ctx = instance
- ? instance(component, options.props || {}, (i, ret, ...rest) => {
- const value = rest.length ? rest[0] : ret;
- if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {
- if (!$$.skip_bound && $$.bound[i])
- $$.bound[i](value);
- if (ready)
- make_dirty(component, i);
- }
- return ret;
- })
- : [];
- $$.update();
- ready = true;
- run_all($$.before_update);
- // `false` as a special case of no DOM component
- $$.fragment = create_fragment ? create_fragment($$.ctx) : false;
- if (options.target) {
- if (options.hydrate) {
- const nodes = children(options.target);
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.l(nodes);
- nodes.forEach(detach);
- }
- else {
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.c();
- }
- if (options.intro)
- transition_in(component.$$.fragment);
- mount_component(component, options.target, options.anchor, options.customElement);
- flush();
- }
- set_current_component(parent_component);
-}
-let SvelteElement;
-if (typeof HTMLElement === 'function') {
- SvelteElement = class extends HTMLElement {
- constructor() {
- super();
- this.attachShadow({ mode: 'open' });
- }
- connectedCallback() {
- const { on_mount } = this.$$;
- this.$$.on_disconnect = on_mount.map(run).filter(is_function);
- // @ts-ignore todo: improve typings
- for (const key in this.$$.slotted) {
- // @ts-ignore todo: improve typings
- this.appendChild(this.$$.slotted[key]);
- }
- }
- attributeChangedCallback(attr, _oldValue, newValue) {
- this[attr] = newValue;
- }
- disconnectedCallback() {
- run_all(this.$$.on_disconnect);
- }
- $destroy() {
- destroy_component(this, 1);
- this.$destroy = noop;
- }
- $on(type, callback) {
- // TODO should this delegate to addEventListener?
- if (!is_function(callback)) {
- return noop;
- }
- const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));
- callbacks.push(callback);
- return () => {
- const index = callbacks.indexOf(callback);
- if (index !== -1)
- callbacks.splice(index, 1);
- };
- }
- $set($$props) {
- if (this.$$set && !is_empty($$props)) {
- this.$$.skip_bound = true;
- this.$$set($$props);
- this.$$.skip_bound = false;
- }
- }
- };
-}
-
-function dispatch_dev(type, detail) {
- document.dispatchEvent(custom_event(type, Object.assign({ version: '3.52.0' }, detail), { bubbles: true }));
-}
-function append_dev(target, node) {
- dispatch_dev('SvelteDOMInsert', { target, node });
- append(target, node);
-}
-function insert_dev(target, node, anchor) {
- dispatch_dev('SvelteDOMInsert', { target, node, anchor });
- insert(target, node, anchor);
-}
-function detach_dev(node) {
- dispatch_dev('SvelteDOMRemove', { node });
- detach(node);
-}
-function listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) {
- const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : [];
- if (has_prevent_default)
- modifiers.push('preventDefault');
- if (has_stop_propagation)
- modifiers.push('stopPropagation');
- dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers });
- const dispose = listen(node, event, handler, options);
- return () => {
- dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers });
- dispose();
- };
-}
-function attr_dev(node, attribute, value) {
- attr(node, attribute, value);
- if (value == null)
- dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute });
- else
- dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value });
-}
-function set_data_dev(text, data) {
- data = '' + data;
- if (text.wholeText === data)
- return;
- dispatch_dev('SvelteDOMSetData', { node: text, data });
- text.data = data;
-}
-function validate_each_argument(arg) {
- if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) {
- let msg = '{#each} only iterates over array-like objects.';
- if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) {
- msg += ' You can use a spread to convert this iterable into an array.';
- }
- throw new Error(msg);
- }
-}
-function validate_slots(name, slot, keys) {
- for (const slot_key of Object.keys(slot)) {
- if (!~keys.indexOf(slot_key)) {
- console.warn(`<${name}> received an unexpected slot "${slot_key}".`);
- }
- }
-}
-
-export { setContext as A, run_all as B, svg_element as C, empty as D, is_function as E, HtmlTag as H, SvelteElement as S, attribute_to_object as a, insert_dev as b, space as c, dispatch_dev as d, element as e, add_location as f, attr_dev as g, src_url_equal as h, init as i, append_dev as j, detach_dev as k, validate_each_argument as l, set_custom_element_data as m, noop as n, onMount as o, destroy_each as p, flush as q, globals as r, safe_not_equal as s, text as t, binding_callbacks as u, validate_slots as v, set_style as w, listen_dev as x, set_data_dev as y, getContext as z };
diff --git a/Server/public/js/components/index-ce8c147b.js b/Server/public/js/components/index-ce8c147b.js
deleted file mode 100644
index e869406..0000000
--- a/Server/public/js/components/index-ce8c147b.js
+++ /dev/null
@@ -1 +0,0 @@
-function t(){}function n(t){return t()}function e(){return Object.create(null)}function o(t){t.forEach(n)}function s(t){return"function"==typeof t}function r(t,n){return t!=t?n==n:t!==n||t&&"object"==typeof t||"function"==typeof t}let i,c;function a(t,n){return i||(i=document.createElement("a")),i.href=n,t===i.href}function u(n,e,o){n.$$.on_destroy.push(function(n,...e){if(null==n)return t;const o=n.subscribe(...e);return o.unsubscribe?()=>o.unsubscribe():o}(e,o))}function f(t,n){t.appendChild(n)}function l(t,n,e){t.insertBefore(n,e||null)}function h(t){t.parentNode.removeChild(t)}function d(t,n){for(let e=0;et.removeEventListener(n,e,o)}function y(t,n,e){null==e?t.removeAttribute(n):t.getAttribute(n)!==e&&t.setAttribute(n,e)}function _(t,n,e){n in t?t[n]="boolean"==typeof t[n]&&""===e||e:y(t,n,e)}function x(t,n){n=""+n,t.wholeText!==n&&(t.data=n)}function v(t,n,e,o){null===e?t.style.removeProperty(n):t.style.setProperty(n,e,o?"important":"")}class E{constructor(t=!1){this.is_svg=!1,this.is_svg=t,this.e=this.n=null}c(t){this.h(t)}m(t,n,e=null){var o;this.e||(this.is_svg?this.e=(o=n.nodeName,document.createElementNS("http://www.w3.org/2000/svg",o)):this.e=$(n.nodeName),this.t=n,this.c(t)),this.i(e)}h(t){this.e.innerHTML=t,this.n=Array.from(this.e.childNodes)}i(t){for(let n=0;n{const o=e.length?e[0]:n;return m.ctx&&f(m.ctx[t],m.ctx[t]=o)&&(!m.skip_bound&&m.bound[t]&&m.bound[t](o),g&&D(r,t)),n})):[],m.update(),g=!0,o(m.before_update),m.fragment=!!u&&u(m.ctx),i.target){if(i.hydrate){const t=function(t){return Array.from(t.childNodes)}(i.target);m.fragment&&m.fragment.l(t),t.forEach(h)}else m.fragment&&m.fragment.c();i.intro&&((b=r.$$.fragment)&&b.i&&(F.delete(b),b.i(y))),function(t,e,r,i){const{fragment:c,after_update:a}=t.$$;c&&c.m(e,r),i||O((()=>{const e=t.$$.on_mount.map(n).filter(s);t.$$.on_destroy?t.$$.on_destroy.push(...e):o(e),t.$$.on_mount=[]})),a.forEach(O)}(r,i.target,i.anchor,i.customElement),z()}var b,y;k(p)}let I;"function"==typeof HTMLElement&&(I=class extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"})}connectedCallback(){const{on_mount:t}=this.$$;this.$$.on_disconnect=t.map(n).filter(s);for(const t in this.$$.slotted)this.appendChild(this.$$.slotted[t])}attributeChangedCallback(t,n,e){this[t]=e}disconnectedCallback(){o(this.$$.on_disconnect)}$destroy(){!function(t,n){const e=t.$$;null!==e.fragment&&(o(e.on_destroy),e.fragment&&e.fragment.d(n),e.on_destroy=e.fragment=null,e.ctx=[])}(this,1),this.$destroy=t}$on(n,e){if(!s(e))return t;const o=this.$$.callbacks[n]||(this.$$.callbacks[n]=[]);return o.push(e),()=>{const t=o.indexOf(e);-1!==t&&o.splice(t,1)}}$set(t){var n;this.$$set&&(n=t,0!==Object.keys(n).length)&&(this.$$.skip_bound=!0,this.$$set(t),this.$$.skip_bound=!1)}});export{E as H,I as S,w as a,l as b,u as c,h as d,g as e,$ as f,m as g,y as h,G as i,a as j,_ as k,f as l,x as m,t as n,N as o,d as p,z as q,v as r,r as s,p as t,b as u,S as v,A as w,o as x,s as y};
diff --git a/Server/public/js/components/index-d08fd9c0.js b/Server/public/js/components/index-d08fd9c0.js
deleted file mode 100644
index 85b6505..0000000
--- a/Server/public/js/components/index-d08fd9c0.js
+++ /dev/null
@@ -1,513 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-function noop() { }
-function add_location(element, file, line, column, char) {
- element.__svelte_meta = {
- loc: { file, line, column, char }
- };
-}
-function run(fn) {
- return fn();
-}
-function blank_object() {
- return Object.create(null);
-}
-function run_all(fns) {
- fns.forEach(run);
-}
-function is_function(thing) {
- return typeof thing === 'function';
-}
-function safe_not_equal(a, b) {
- return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');
-}
-let src_url_equal_anchor;
-function src_url_equal(element_src, url) {
- if (!src_url_equal_anchor) {
- src_url_equal_anchor = document.createElement('a');
- }
- src_url_equal_anchor.href = url;
- return element_src === src_url_equal_anchor.href;
-}
-function is_empty(obj) {
- return Object.keys(obj).length === 0;
-}
-function validate_store(store, name) {
- if (store != null && typeof store.subscribe !== 'function') {
- throw new Error(`'${name}' is not a store with a 'subscribe' method`);
- }
-}
-function subscribe(store, ...callbacks) {
- if (store == null) {
- return noop;
- }
- const unsub = store.subscribe(...callbacks);
- return unsub.unsubscribe ? () => unsub.unsubscribe() : unsub;
-}
-function component_subscribe(component, store, callback) {
- component.$$.on_destroy.push(subscribe(store, callback));
-}
-function append(target, node) {
- target.appendChild(node);
-}
-function insert(target, node, anchor) {
- target.insertBefore(node, anchor || null);
-}
-function detach(node) {
- node.parentNode.removeChild(node);
-}
-function destroy_each(iterations, detaching) {
- for (let i = 0; i < iterations.length; i += 1) {
- if (iterations[i])
- iterations[i].d(detaching);
- }
-}
-function element(name) {
- return document.createElement(name);
-}
-function svg_element(name) {
- return document.createElementNS('http://www.w3.org/2000/svg', name);
-}
-function text(data) {
- return document.createTextNode(data);
-}
-function space() {
- return text(' ');
-}
-function empty() {
- return text('');
-}
-function listen(node, event, handler, options) {
- node.addEventListener(event, handler, options);
- return () => node.removeEventListener(event, handler, options);
-}
-function attr(node, attribute, value) {
- if (value == null)
- node.removeAttribute(attribute);
- else if (node.getAttribute(attribute) !== value)
- node.setAttribute(attribute, value);
-}
-function set_custom_element_data(node, prop, value) {
- if (prop in node) {
- node[prop] = typeof node[prop] === 'boolean' && value === '' ? true : value;
- }
- else {
- attr(node, prop, value);
- }
-}
-function children(element) {
- return Array.from(element.childNodes);
-}
-function set_style(node, key, value, important) {
- if (value === null) {
- node.style.removeProperty(key);
- }
- else {
- node.style.setProperty(key, value, important ? 'important' : '');
- }
-}
-function custom_event(type, detail, { bubbles = false, cancelable = false } = {}) {
- const e = document.createEvent('CustomEvent');
- e.initCustomEvent(type, bubbles, cancelable, detail);
- return e;
-}
-class HtmlTag {
- constructor(is_svg = false) {
- this.is_svg = false;
- this.is_svg = is_svg;
- this.e = this.n = null;
- }
- c(html) {
- this.h(html);
- }
- m(html, target, anchor = null) {
- if (!this.e) {
- if (this.is_svg)
- this.e = svg_element(target.nodeName);
- else
- this.e = element(target.nodeName);
- this.t = target;
- this.c(html);
- }
- this.i(anchor);
- }
- h(html) {
- this.e.innerHTML = html;
- this.n = Array.from(this.e.childNodes);
- }
- i(anchor) {
- for (let i = 0; i < this.n.length; i += 1) {
- insert(this.t, this.n[i], anchor);
- }
- }
- p(html) {
- this.d();
- this.h(html);
- this.i(this.a);
- }
- d() {
- this.n.forEach(detach);
- }
-}
-function attribute_to_object(attributes) {
- const result = {};
- for (const attribute of attributes) {
- result[attribute.name] = attribute.value;
- }
- return result;
-}
-
-let current_component;
-function set_current_component(component) {
- current_component = component;
-}
-function get_current_component() {
- if (!current_component)
- throw new Error('Function called outside component initialization');
- return current_component;
-}
-/**
- * The `onMount` function schedules a callback to run as soon as the component has been mounted to the DOM.
- * It must be called during the component's initialisation (but doesn't need to live *inside* the component;
- * it can be called from an external module).
- *
- * `onMount` does not run inside a [server-side component](/docs#run-time-server-side-component-api).
- *
- * https://svelte.dev/docs#run-time-svelte-onmount
- */
-function onMount(fn) {
- get_current_component().$$.on_mount.push(fn);
-}
-/**
- * Associates an arbitrary `context` object with the current component and the specified `key`
- * and returns that object. The context is then available to children of the component
- * (including slotted content) with `getContext`.
- *
- * Like lifecycle functions, this must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-setcontext
- */
-function setContext(key, context) {
- get_current_component().$$.context.set(key, context);
- return context;
-}
-/**
- * Retrieves the context that belongs to the closest parent component with the specified `key`.
- * Must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-getcontext
- */
-function getContext(key) {
- return get_current_component().$$.context.get(key);
-}
-
-const dirty_components = [];
-const binding_callbacks = [];
-const render_callbacks = [];
-const flush_callbacks = [];
-const resolved_promise = Promise.resolve();
-let update_scheduled = false;
-function schedule_update() {
- if (!update_scheduled) {
- update_scheduled = true;
- resolved_promise.then(flush);
- }
-}
-function add_render_callback(fn) {
- render_callbacks.push(fn);
-}
-// flush() calls callbacks in this order:
-// 1. All beforeUpdate callbacks, in order: parents before children
-// 2. All bind:this callbacks, in reverse order: children before parents.
-// 3. All afterUpdate callbacks, in order: parents before children. EXCEPT
-// for afterUpdates called during the initial onMount, which are called in
-// reverse order: children before parents.
-// Since callbacks might update component values, which could trigger another
-// call to flush(), the following steps guard against this:
-// 1. During beforeUpdate, any updated components will be added to the
-// dirty_components array and will cause a reentrant call to flush(). Because
-// the flush index is kept outside the function, the reentrant call will pick
-// up where the earlier call left off and go through all dirty components. The
-// current_component value is saved and restored so that the reentrant call will
-// not interfere with the "parent" flush() call.
-// 2. bind:this callbacks cannot trigger new flush() calls.
-// 3. During afterUpdate, any updated components will NOT have their afterUpdate
-// callback called a second time; the seen_callbacks set, outside the flush()
-// function, guarantees this behavior.
-const seen_callbacks = new Set();
-let flushidx = 0; // Do *not* move this inside the flush() function
-function flush() {
- const saved_component = current_component;
- do {
- // first, call beforeUpdate functions
- // and update components
- while (flushidx < dirty_components.length) {
- const component = dirty_components[flushidx];
- flushidx++;
- set_current_component(component);
- update(component.$$);
- }
- set_current_component(null);
- dirty_components.length = 0;
- flushidx = 0;
- while (binding_callbacks.length)
- binding_callbacks.pop()();
- // then, once components are updated, call
- // afterUpdate functions. This may cause
- // subsequent updates...
- for (let i = 0; i < render_callbacks.length; i += 1) {
- const callback = render_callbacks[i];
- if (!seen_callbacks.has(callback)) {
- // ...so guard against infinite loops
- seen_callbacks.add(callback);
- callback();
- }
- }
- render_callbacks.length = 0;
- } while (dirty_components.length);
- while (flush_callbacks.length) {
- flush_callbacks.pop()();
- }
- update_scheduled = false;
- seen_callbacks.clear();
- set_current_component(saved_component);
-}
-function update($$) {
- if ($$.fragment !== null) {
- $$.update();
- run_all($$.before_update);
- const dirty = $$.dirty;
- $$.dirty = [-1];
- $$.fragment && $$.fragment.p($$.ctx, dirty);
- $$.after_update.forEach(add_render_callback);
- }
-}
-const outroing = new Set();
-function transition_in(block, local) {
- if (block && block.i) {
- outroing.delete(block);
- block.i(local);
- }
-}
-
-const globals = (typeof window !== 'undefined'
- ? window
- : typeof globalThis !== 'undefined'
- ? globalThis
- : global);
-function mount_component(component, target, anchor, customElement) {
- const { fragment, after_update } = component.$$;
- fragment && fragment.m(target, anchor);
- if (!customElement) {
- // onMount happens before the initial afterUpdate
- add_render_callback(() => {
- const new_on_destroy = component.$$.on_mount.map(run).filter(is_function);
- // if the component was destroyed immediately
- // it will update the `$$.on_destroy` reference to `null`.
- // the destructured on_destroy may still reference to the old array
- if (component.$$.on_destroy) {
- component.$$.on_destroy.push(...new_on_destroy);
- }
- else {
- // Edge case - component was destroyed immediately,
- // most likely as a result of a binding initialising
- run_all(new_on_destroy);
- }
- component.$$.on_mount = [];
- });
- }
- after_update.forEach(add_render_callback);
-}
-function destroy_component(component, detaching) {
- const $$ = component.$$;
- if ($$.fragment !== null) {
- run_all($$.on_destroy);
- $$.fragment && $$.fragment.d(detaching);
- // TODO null out other refs, including component.$$ (but need to
- // preserve final state?)
- $$.on_destroy = $$.fragment = null;
- $$.ctx = [];
- }
-}
-function make_dirty(component, i) {
- if (component.$$.dirty[0] === -1) {
- dirty_components.push(component);
- schedule_update();
- component.$$.dirty.fill(0);
- }
- component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31));
-}
-function init(component, options, instance, create_fragment, not_equal, props, append_styles, dirty = [-1]) {
- const parent_component = current_component;
- set_current_component(component);
- const $$ = component.$$ = {
- fragment: null,
- ctx: [],
- // state
- props,
- update: noop,
- not_equal,
- bound: blank_object(),
- // lifecycle
- on_mount: [],
- on_destroy: [],
- on_disconnect: [],
- before_update: [],
- after_update: [],
- context: new Map(options.context || (parent_component ? parent_component.$$.context : [])),
- // everything else
- callbacks: blank_object(),
- dirty,
- skip_bound: false,
- root: options.target || parent_component.$$.root
- };
- append_styles && append_styles($$.root);
- let ready = false;
- $$.ctx = instance
- ? instance(component, options.props || {}, (i, ret, ...rest) => {
- const value = rest.length ? rest[0] : ret;
- if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {
- if (!$$.skip_bound && $$.bound[i])
- $$.bound[i](value);
- if (ready)
- make_dirty(component, i);
- }
- return ret;
- })
- : [];
- $$.update();
- ready = true;
- run_all($$.before_update);
- // `false` as a special case of no DOM component
- $$.fragment = create_fragment ? create_fragment($$.ctx) : false;
- if (options.target) {
- if (options.hydrate) {
- const nodes = children(options.target);
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.l(nodes);
- nodes.forEach(detach);
- }
- else {
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.c();
- }
- if (options.intro)
- transition_in(component.$$.fragment);
- mount_component(component, options.target, options.anchor, options.customElement);
- flush();
- }
- set_current_component(parent_component);
-}
-let SvelteElement;
-if (typeof HTMLElement === 'function') {
- SvelteElement = class extends HTMLElement {
- constructor() {
- super();
- this.attachShadow({ mode: 'open' });
- }
- connectedCallback() {
- const { on_mount } = this.$$;
- this.$$.on_disconnect = on_mount.map(run).filter(is_function);
- // @ts-ignore todo: improve typings
- for (const key in this.$$.slotted) {
- // @ts-ignore todo: improve typings
- this.appendChild(this.$$.slotted[key]);
- }
- }
- attributeChangedCallback(attr, _oldValue, newValue) {
- this[attr] = newValue;
- }
- disconnectedCallback() {
- run_all(this.$$.on_disconnect);
- }
- $destroy() {
- destroy_component(this, 1);
- this.$destroy = noop;
- }
- $on(type, callback) {
- // TODO should this delegate to addEventListener?
- if (!is_function(callback)) {
- return noop;
- }
- const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));
- callbacks.push(callback);
- return () => {
- const index = callbacks.indexOf(callback);
- if (index !== -1)
- callbacks.splice(index, 1);
- };
- }
- $set($$props) {
- if (this.$$set && !is_empty($$props)) {
- this.$$.skip_bound = true;
- this.$$set($$props);
- this.$$.skip_bound = false;
- }
- }
- };
-}
-
-function dispatch_dev(type, detail) {
- document.dispatchEvent(custom_event(type, Object.assign({ version: '3.52.0' }, detail), { bubbles: true }));
-}
-function append_dev(target, node) {
- dispatch_dev('SvelteDOMInsert', { target, node });
- append(target, node);
-}
-function insert_dev(target, node, anchor) {
- dispatch_dev('SvelteDOMInsert', { target, node, anchor });
- insert(target, node, anchor);
-}
-function detach_dev(node) {
- dispatch_dev('SvelteDOMRemove', { node });
- detach(node);
-}
-function listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) {
- const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : [];
- if (has_prevent_default)
- modifiers.push('preventDefault');
- if (has_stop_propagation)
- modifiers.push('stopPropagation');
- dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers });
- const dispose = listen(node, event, handler, options);
- return () => {
- dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers });
- dispose();
- };
-}
-function attr_dev(node, attribute, value) {
- attr(node, attribute, value);
- if (value == null)
- dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute });
- else
- dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value });
-}
-function prop_dev(node, property, value) {
- node[property] = value;
- dispatch_dev('SvelteDOMSetProperty', { node, property, value });
-}
-function set_data_dev(text, data) {
- data = '' + data;
- if (text.wholeText === data)
- return;
- dispatch_dev('SvelteDOMSetData', { node: text, data });
- text.data = data;
-}
-function validate_each_argument(arg) {
- if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) {
- let msg = '{#each} only iterates over array-like objects.';
- if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) {
- msg += ' You can use a spread to convert this iterable into an array.';
- }
- throw new Error(msg);
- }
-}
-function validate_slots(name, slot, keys) {
- for (const slot_key of Object.keys(slot)) {
- if (!~keys.indexOf(slot_key)) {
- console.warn(`<${name}> received an unexpected slot "${slot_key}".`);
- }
- }
-}
-
-export { flush as A, binding_callbacks as B, set_style as C, getContext as D, setContext as E, run_all as F, svg_element as G, is_function as H, HtmlTag as I, SvelteElement as S, attribute_to_object as a, insert_dev as b, validate_store as c, dispatch_dev as d, component_subscribe as e, validate_each_argument as f, globals as g, empty as h, init as i, detach_dev as j, element as k, space as l, add_location as m, noop as n, onMount as o, attr_dev as p, src_url_equal as q, set_custom_element_data as r, safe_not_equal as s, text as t, append_dev as u, validate_slots as v, set_data_dev as w, destroy_each as x, listen_dev as y, prop_dev as z };
diff --git a/Server/public/js/components/index-d19aafba.js b/Server/public/js/components/index-d19aafba.js
deleted file mode 100644
index 91b0f25..0000000
--- a/Server/public/js/components/index-d19aafba.js
+++ /dev/null
@@ -1,513 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-function noop() { }
-function add_location(element, file, line, column, char) {
- element.__svelte_meta = {
- loc: { file, line, column, char }
- };
-}
-function run(fn) {
- return fn();
-}
-function blank_object() {
- return Object.create(null);
-}
-function run_all(fns) {
- fns.forEach(run);
-}
-function is_function(thing) {
- return typeof thing === 'function';
-}
-function safe_not_equal(a, b) {
- return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');
-}
-let src_url_equal_anchor;
-function src_url_equal(element_src, url) {
- if (!src_url_equal_anchor) {
- src_url_equal_anchor = document.createElement('a');
- }
- src_url_equal_anchor.href = url;
- return element_src === src_url_equal_anchor.href;
-}
-function is_empty(obj) {
- return Object.keys(obj).length === 0;
-}
-function validate_store(store, name) {
- if (store != null && typeof store.subscribe !== 'function') {
- throw new Error(`'${name}' is not a store with a 'subscribe' method`);
- }
-}
-function subscribe(store, ...callbacks) {
- if (store == null) {
- return noop;
- }
- const unsub = store.subscribe(...callbacks);
- return unsub.unsubscribe ? () => unsub.unsubscribe() : unsub;
-}
-function component_subscribe(component, store, callback) {
- component.$$.on_destroy.push(subscribe(store, callback));
-}
-function append(target, node) {
- target.appendChild(node);
-}
-function insert(target, node, anchor) {
- target.insertBefore(node, anchor || null);
-}
-function detach(node) {
- node.parentNode.removeChild(node);
-}
-function destroy_each(iterations, detaching) {
- for (let i = 0; i < iterations.length; i += 1) {
- if (iterations[i])
- iterations[i].d(detaching);
- }
-}
-function element(name) {
- return document.createElement(name);
-}
-function svg_element(name) {
- return document.createElementNS('http://www.w3.org/2000/svg', name);
-}
-function text(data) {
- return document.createTextNode(data);
-}
-function space() {
- return text(' ');
-}
-function empty() {
- return text('');
-}
-function listen(node, event, handler, options) {
- node.addEventListener(event, handler, options);
- return () => node.removeEventListener(event, handler, options);
-}
-function attr(node, attribute, value) {
- if (value == null)
- node.removeAttribute(attribute);
- else if (node.getAttribute(attribute) !== value)
- node.setAttribute(attribute, value);
-}
-function set_custom_element_data(node, prop, value) {
- if (prop in node) {
- node[prop] = typeof node[prop] === 'boolean' && value === '' ? true : value;
- }
- else {
- attr(node, prop, value);
- }
-}
-function children(element) {
- return Array.from(element.childNodes);
-}
-function set_style(node, key, value, important) {
- if (value === null) {
- node.style.removeProperty(key);
- }
- else {
- node.style.setProperty(key, value, important ? 'important' : '');
- }
-}
-function custom_event(type, detail, { bubbles = false, cancelable = false } = {}) {
- const e = document.createEvent('CustomEvent');
- e.initCustomEvent(type, bubbles, cancelable, detail);
- return e;
-}
-class HtmlTag {
- constructor(is_svg = false) {
- this.is_svg = false;
- this.is_svg = is_svg;
- this.e = this.n = null;
- }
- c(html) {
- this.h(html);
- }
- m(html, target, anchor = null) {
- if (!this.e) {
- if (this.is_svg)
- this.e = svg_element(target.nodeName);
- else
- this.e = element(target.nodeName);
- this.t = target;
- this.c(html);
- }
- this.i(anchor);
- }
- h(html) {
- this.e.innerHTML = html;
- this.n = Array.from(this.e.childNodes);
- }
- i(anchor) {
- for (let i = 0; i < this.n.length; i += 1) {
- insert(this.t, this.n[i], anchor);
- }
- }
- p(html) {
- this.d();
- this.h(html);
- this.i(this.a);
- }
- d() {
- this.n.forEach(detach);
- }
-}
-function attribute_to_object(attributes) {
- const result = {};
- for (const attribute of attributes) {
- result[attribute.name] = attribute.value;
- }
- return result;
-}
-
-let current_component;
-function set_current_component(component) {
- current_component = component;
-}
-function get_current_component() {
- if (!current_component)
- throw new Error('Function called outside component initialization');
- return current_component;
-}
-/**
- * The `onMount` function schedules a callback to run as soon as the component has been mounted to the DOM.
- * It must be called during the component's initialisation (but doesn't need to live *inside* the component;
- * it can be called from an external module).
- *
- * `onMount` does not run inside a [server-side component](/docs#run-time-server-side-component-api).
- *
- * https://svelte.dev/docs#run-time-svelte-onmount
- */
-function onMount(fn) {
- get_current_component().$$.on_mount.push(fn);
-}
-/**
- * Associates an arbitrary `context` object with the current component and the specified `key`
- * and returns that object. The context is then available to children of the component
- * (including slotted content) with `getContext`.
- *
- * Like lifecycle functions, this must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-setcontext
- */
-function setContext(key, context) {
- get_current_component().$$.context.set(key, context);
- return context;
-}
-/**
- * Retrieves the context that belongs to the closest parent component with the specified `key`.
- * Must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-getcontext
- */
-function getContext(key) {
- return get_current_component().$$.context.get(key);
-}
-
-const dirty_components = [];
-const binding_callbacks = [];
-const render_callbacks = [];
-const flush_callbacks = [];
-const resolved_promise = Promise.resolve();
-let update_scheduled = false;
-function schedule_update() {
- if (!update_scheduled) {
- update_scheduled = true;
- resolved_promise.then(flush);
- }
-}
-function add_render_callback(fn) {
- render_callbacks.push(fn);
-}
-// flush() calls callbacks in this order:
-// 1. All beforeUpdate callbacks, in order: parents before children
-// 2. All bind:this callbacks, in reverse order: children before parents.
-// 3. All afterUpdate callbacks, in order: parents before children. EXCEPT
-// for afterUpdates called during the initial onMount, which are called in
-// reverse order: children before parents.
-// Since callbacks might update component values, which could trigger another
-// call to flush(), the following steps guard against this:
-// 1. During beforeUpdate, any updated components will be added to the
-// dirty_components array and will cause a reentrant call to flush(). Because
-// the flush index is kept outside the function, the reentrant call will pick
-// up where the earlier call left off and go through all dirty components. The
-// current_component value is saved and restored so that the reentrant call will
-// not interfere with the "parent" flush() call.
-// 2. bind:this callbacks cannot trigger new flush() calls.
-// 3. During afterUpdate, any updated components will NOT have their afterUpdate
-// callback called a second time; the seen_callbacks set, outside the flush()
-// function, guarantees this behavior.
-const seen_callbacks = new Set();
-let flushidx = 0; // Do *not* move this inside the flush() function
-function flush() {
- const saved_component = current_component;
- do {
- // first, call beforeUpdate functions
- // and update components
- while (flushidx < dirty_components.length) {
- const component = dirty_components[flushidx];
- flushidx++;
- set_current_component(component);
- update(component.$$);
- }
- set_current_component(null);
- dirty_components.length = 0;
- flushidx = 0;
- while (binding_callbacks.length)
- binding_callbacks.pop()();
- // then, once components are updated, call
- // afterUpdate functions. This may cause
- // subsequent updates...
- for (let i = 0; i < render_callbacks.length; i += 1) {
- const callback = render_callbacks[i];
- if (!seen_callbacks.has(callback)) {
- // ...so guard against infinite loops
- seen_callbacks.add(callback);
- callback();
- }
- }
- render_callbacks.length = 0;
- } while (dirty_components.length);
- while (flush_callbacks.length) {
- flush_callbacks.pop()();
- }
- update_scheduled = false;
- seen_callbacks.clear();
- set_current_component(saved_component);
-}
-function update($$) {
- if ($$.fragment !== null) {
- $$.update();
- run_all($$.before_update);
- const dirty = $$.dirty;
- $$.dirty = [-1];
- $$.fragment && $$.fragment.p($$.ctx, dirty);
- $$.after_update.forEach(add_render_callback);
- }
-}
-const outroing = new Set();
-function transition_in(block, local) {
- if (block && block.i) {
- outroing.delete(block);
- block.i(local);
- }
-}
-
-const globals = (typeof window !== 'undefined'
- ? window
- : typeof globalThis !== 'undefined'
- ? globalThis
- : global);
-function mount_component(component, target, anchor, customElement) {
- const { fragment, after_update } = component.$$;
- fragment && fragment.m(target, anchor);
- if (!customElement) {
- // onMount happens before the initial afterUpdate
- add_render_callback(() => {
- const new_on_destroy = component.$$.on_mount.map(run).filter(is_function);
- // if the component was destroyed immediately
- // it will update the `$$.on_destroy` reference to `null`.
- // the destructured on_destroy may still reference to the old array
- if (component.$$.on_destroy) {
- component.$$.on_destroy.push(...new_on_destroy);
- }
- else {
- // Edge case - component was destroyed immediately,
- // most likely as a result of a binding initialising
- run_all(new_on_destroy);
- }
- component.$$.on_mount = [];
- });
- }
- after_update.forEach(add_render_callback);
-}
-function destroy_component(component, detaching) {
- const $$ = component.$$;
- if ($$.fragment !== null) {
- run_all($$.on_destroy);
- $$.fragment && $$.fragment.d(detaching);
- // TODO null out other refs, including component.$$ (but need to
- // preserve final state?)
- $$.on_destroy = $$.fragment = null;
- $$.ctx = [];
- }
-}
-function make_dirty(component, i) {
- if (component.$$.dirty[0] === -1) {
- dirty_components.push(component);
- schedule_update();
- component.$$.dirty.fill(0);
- }
- component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31));
-}
-function init(component, options, instance, create_fragment, not_equal, props, append_styles, dirty = [-1]) {
- const parent_component = current_component;
- set_current_component(component);
- const $$ = component.$$ = {
- fragment: null,
- ctx: [],
- // state
- props,
- update: noop,
- not_equal,
- bound: blank_object(),
- // lifecycle
- on_mount: [],
- on_destroy: [],
- on_disconnect: [],
- before_update: [],
- after_update: [],
- context: new Map(options.context || (parent_component ? parent_component.$$.context : [])),
- // everything else
- callbacks: blank_object(),
- dirty,
- skip_bound: false,
- root: options.target || parent_component.$$.root
- };
- append_styles && append_styles($$.root);
- let ready = false;
- $$.ctx = instance
- ? instance(component, options.props || {}, (i, ret, ...rest) => {
- const value = rest.length ? rest[0] : ret;
- if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {
- if (!$$.skip_bound && $$.bound[i])
- $$.bound[i](value);
- if (ready)
- make_dirty(component, i);
- }
- return ret;
- })
- : [];
- $$.update();
- ready = true;
- run_all($$.before_update);
- // `false` as a special case of no DOM component
- $$.fragment = create_fragment ? create_fragment($$.ctx) : false;
- if (options.target) {
- if (options.hydrate) {
- const nodes = children(options.target);
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.l(nodes);
- nodes.forEach(detach);
- }
- else {
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.c();
- }
- if (options.intro)
- transition_in(component.$$.fragment);
- mount_component(component, options.target, options.anchor, options.customElement);
- flush();
- }
- set_current_component(parent_component);
-}
-let SvelteElement;
-if (typeof HTMLElement === 'function') {
- SvelteElement = class extends HTMLElement {
- constructor() {
- super();
- this.attachShadow({ mode: 'open' });
- }
- connectedCallback() {
- const { on_mount } = this.$$;
- this.$$.on_disconnect = on_mount.map(run).filter(is_function);
- // @ts-ignore todo: improve typings
- for (const key in this.$$.slotted) {
- // @ts-ignore todo: improve typings
- this.appendChild(this.$$.slotted[key]);
- }
- }
- attributeChangedCallback(attr, _oldValue, newValue) {
- this[attr] = newValue;
- }
- disconnectedCallback() {
- run_all(this.$$.on_disconnect);
- }
- $destroy() {
- destroy_component(this, 1);
- this.$destroy = noop;
- }
- $on(type, callback) {
- // TODO should this delegate to addEventListener?
- if (!is_function(callback)) {
- return noop;
- }
- const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));
- callbacks.push(callback);
- return () => {
- const index = callbacks.indexOf(callback);
- if (index !== -1)
- callbacks.splice(index, 1);
- };
- }
- $set($$props) {
- if (this.$$set && !is_empty($$props)) {
- this.$$.skip_bound = true;
- this.$$set($$props);
- this.$$.skip_bound = false;
- }
- }
- };
-}
-
-function dispatch_dev(type, detail) {
- document.dispatchEvent(custom_event(type, Object.assign({ version: '3.52.0' }, detail), { bubbles: true }));
-}
-function append_dev(target, node) {
- dispatch_dev('SvelteDOMInsert', { target, node });
- append(target, node);
-}
-function insert_dev(target, node, anchor) {
- dispatch_dev('SvelteDOMInsert', { target, node, anchor });
- insert(target, node, anchor);
-}
-function detach_dev(node) {
- dispatch_dev('SvelteDOMRemove', { node });
- detach(node);
-}
-function listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) {
- const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : [];
- if (has_prevent_default)
- modifiers.push('preventDefault');
- if (has_stop_propagation)
- modifiers.push('stopPropagation');
- dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers });
- const dispose = listen(node, event, handler, options);
- return () => {
- dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers });
- dispose();
- };
-}
-function attr_dev(node, attribute, value) {
- attr(node, attribute, value);
- if (value == null)
- dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute });
- else
- dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value });
-}
-function prop_dev(node, property, value) {
- node[property] = value;
- dispatch_dev('SvelteDOMSetProperty', { node, property, value });
-}
-function set_data_dev(text, data) {
- data = '' + data;
- if (text.wholeText === data)
- return;
- dispatch_dev('SvelteDOMSetData', { node: text, data });
- text.data = data;
-}
-function validate_each_argument(arg) {
- if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) {
- let msg = '{#each} only iterates over array-like objects.';
- if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) {
- msg += ' You can use a spread to convert this iterable into an array.';
- }
- throw new Error(msg);
- }
-}
-function validate_slots(name, slot, keys) {
- for (const slot_key of Object.keys(slot)) {
- if (!~keys.indexOf(slot_key)) {
- console.warn(`<${name}> received an unexpected slot "${slot_key}".`);
- }
- }
-}
-
-export { prop_dev as A, flush as B, binding_callbacks as C, set_style as D, getContext as E, setContext as F, svg_element as G, is_function as H, HtmlTag as I, SvelteElement as S, attribute_to_object as a, insert_dev as b, validate_store as c, dispatch_dev as d, component_subscribe as e, empty as f, globals as g, detach_dev as h, init as i, validate_each_argument as j, element as k, space as l, add_location as m, noop as n, onMount as o, attr_dev as p, src_url_equal as q, set_custom_element_data as r, safe_not_equal as s, text as t, append_dev as u, validate_slots as v, set_data_dev as w, destroy_each as x, listen_dev as y, run_all as z };
diff --git a/Server/public/js/components/index-d69c198b.js b/Server/public/js/components/index-d69c198b.js
deleted file mode 100644
index 5e4a6ba..0000000
--- a/Server/public/js/components/index-d69c198b.js
+++ /dev/null
@@ -1,494 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-function noop() { }
-function add_location(element, file, line, column, char) {
- element.__svelte_meta = {
- loc: { file, line, column, char }
- };
-}
-function run(fn) {
- return fn();
-}
-function blank_object() {
- return Object.create(null);
-}
-function run_all(fns) {
- fns.forEach(run);
-}
-function is_function(thing) {
- return typeof thing === 'function';
-}
-function safe_not_equal(a, b) {
- return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');
-}
-let src_url_equal_anchor;
-function src_url_equal(element_src, url) {
- if (!src_url_equal_anchor) {
- src_url_equal_anchor = document.createElement('a');
- }
- src_url_equal_anchor.href = url;
- return element_src === src_url_equal_anchor.href;
-}
-function is_empty(obj) {
- return Object.keys(obj).length === 0;
-}
-function append(target, node) {
- target.appendChild(node);
-}
-function insert(target, node, anchor) {
- target.insertBefore(node, anchor || null);
-}
-function detach(node) {
- node.parentNode.removeChild(node);
-}
-function destroy_each(iterations, detaching) {
- for (let i = 0; i < iterations.length; i += 1) {
- if (iterations[i])
- iterations[i].d(detaching);
- }
-}
-function element(name) {
- return document.createElement(name);
-}
-function svg_element(name) {
- return document.createElementNS('http://www.w3.org/2000/svg', name);
-}
-function text(data) {
- return document.createTextNode(data);
-}
-function space() {
- return text(' ');
-}
-function empty() {
- return text('');
-}
-function listen(node, event, handler, options) {
- node.addEventListener(event, handler, options);
- return () => node.removeEventListener(event, handler, options);
-}
-function attr(node, attribute, value) {
- if (value == null)
- node.removeAttribute(attribute);
- else if (node.getAttribute(attribute) !== value)
- node.setAttribute(attribute, value);
-}
-function set_custom_element_data(node, prop, value) {
- if (prop in node) {
- node[prop] = typeof node[prop] === 'boolean' && value === '' ? true : value;
- }
- else {
- attr(node, prop, value);
- }
-}
-function children(element) {
- return Array.from(element.childNodes);
-}
-function set_style(node, key, value, important) {
- if (value === null) {
- node.style.removeProperty(key);
- }
- else {
- node.style.setProperty(key, value, important ? 'important' : '');
- }
-}
-function custom_event(type, detail, { bubbles = false, cancelable = false } = {}) {
- const e = document.createEvent('CustomEvent');
- e.initCustomEvent(type, bubbles, cancelable, detail);
- return e;
-}
-class HtmlTag {
- constructor(is_svg = false) {
- this.is_svg = false;
- this.is_svg = is_svg;
- this.e = this.n = null;
- }
- c(html) {
- this.h(html);
- }
- m(html, target, anchor = null) {
- if (!this.e) {
- if (this.is_svg)
- this.e = svg_element(target.nodeName);
- else
- this.e = element(target.nodeName);
- this.t = target;
- this.c(html);
- }
- this.i(anchor);
- }
- h(html) {
- this.e.innerHTML = html;
- this.n = Array.from(this.e.childNodes);
- }
- i(anchor) {
- for (let i = 0; i < this.n.length; i += 1) {
- insert(this.t, this.n[i], anchor);
- }
- }
- p(html) {
- this.d();
- this.h(html);
- this.i(this.a);
- }
- d() {
- this.n.forEach(detach);
- }
-}
-function attribute_to_object(attributes) {
- const result = {};
- for (const attribute of attributes) {
- result[attribute.name] = attribute.value;
- }
- return result;
-}
-
-let current_component;
-function set_current_component(component) {
- current_component = component;
-}
-function get_current_component() {
- if (!current_component)
- throw new Error('Function called outside component initialization');
- return current_component;
-}
-/**
- * The `onMount` function schedules a callback to run as soon as the component has been mounted to the DOM.
- * It must be called during the component's initialisation (but doesn't need to live *inside* the component;
- * it can be called from an external module).
- *
- * `onMount` does not run inside a [server-side component](/docs#run-time-server-side-component-api).
- *
- * https://svelte.dev/docs#run-time-svelte-onmount
- */
-function onMount(fn) {
- get_current_component().$$.on_mount.push(fn);
-}
-/**
- * Associates an arbitrary `context` object with the current component and the specified `key`
- * and returns that object. The context is then available to children of the component
- * (including slotted content) with `getContext`.
- *
- * Like lifecycle functions, this must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-setcontext
- */
-function setContext(key, context) {
- get_current_component().$$.context.set(key, context);
- return context;
-}
-/**
- * Retrieves the context that belongs to the closest parent component with the specified `key`.
- * Must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-getcontext
- */
-function getContext(key) {
- return get_current_component().$$.context.get(key);
-}
-
-const dirty_components = [];
-const binding_callbacks = [];
-const render_callbacks = [];
-const flush_callbacks = [];
-const resolved_promise = Promise.resolve();
-let update_scheduled = false;
-function schedule_update() {
- if (!update_scheduled) {
- update_scheduled = true;
- resolved_promise.then(flush);
- }
-}
-function add_render_callback(fn) {
- render_callbacks.push(fn);
-}
-// flush() calls callbacks in this order:
-// 1. All beforeUpdate callbacks, in order: parents before children
-// 2. All bind:this callbacks, in reverse order: children before parents.
-// 3. All afterUpdate callbacks, in order: parents before children. EXCEPT
-// for afterUpdates called during the initial onMount, which are called in
-// reverse order: children before parents.
-// Since callbacks might update component values, which could trigger another
-// call to flush(), the following steps guard against this:
-// 1. During beforeUpdate, any updated components will be added to the
-// dirty_components array and will cause a reentrant call to flush(). Because
-// the flush index is kept outside the function, the reentrant call will pick
-// up where the earlier call left off and go through all dirty components. The
-// current_component value is saved and restored so that the reentrant call will
-// not interfere with the "parent" flush() call.
-// 2. bind:this callbacks cannot trigger new flush() calls.
-// 3. During afterUpdate, any updated components will NOT have their afterUpdate
-// callback called a second time; the seen_callbacks set, outside the flush()
-// function, guarantees this behavior.
-const seen_callbacks = new Set();
-let flushidx = 0; // Do *not* move this inside the flush() function
-function flush() {
- const saved_component = current_component;
- do {
- // first, call beforeUpdate functions
- // and update components
- while (flushidx < dirty_components.length) {
- const component = dirty_components[flushidx];
- flushidx++;
- set_current_component(component);
- update(component.$$);
- }
- set_current_component(null);
- dirty_components.length = 0;
- flushidx = 0;
- while (binding_callbacks.length)
- binding_callbacks.pop()();
- // then, once components are updated, call
- // afterUpdate functions. This may cause
- // subsequent updates...
- for (let i = 0; i < render_callbacks.length; i += 1) {
- const callback = render_callbacks[i];
- if (!seen_callbacks.has(callback)) {
- // ...so guard against infinite loops
- seen_callbacks.add(callback);
- callback();
- }
- }
- render_callbacks.length = 0;
- } while (dirty_components.length);
- while (flush_callbacks.length) {
- flush_callbacks.pop()();
- }
- update_scheduled = false;
- seen_callbacks.clear();
- set_current_component(saved_component);
-}
-function update($$) {
- if ($$.fragment !== null) {
- $$.update();
- run_all($$.before_update);
- const dirty = $$.dirty;
- $$.dirty = [-1];
- $$.fragment && $$.fragment.p($$.ctx, dirty);
- $$.after_update.forEach(add_render_callback);
- }
-}
-const outroing = new Set();
-function transition_in(block, local) {
- if (block && block.i) {
- outroing.delete(block);
- block.i(local);
- }
-}
-
-const globals = (typeof window !== 'undefined'
- ? window
- : typeof globalThis !== 'undefined'
- ? globalThis
- : global);
-function mount_component(component, target, anchor, customElement) {
- const { fragment, after_update } = component.$$;
- fragment && fragment.m(target, anchor);
- if (!customElement) {
- // onMount happens before the initial afterUpdate
- add_render_callback(() => {
- const new_on_destroy = component.$$.on_mount.map(run).filter(is_function);
- // if the component was destroyed immediately
- // it will update the `$$.on_destroy` reference to `null`.
- // the destructured on_destroy may still reference to the old array
- if (component.$$.on_destroy) {
- component.$$.on_destroy.push(...new_on_destroy);
- }
- else {
- // Edge case - component was destroyed immediately,
- // most likely as a result of a binding initialising
- run_all(new_on_destroy);
- }
- component.$$.on_mount = [];
- });
- }
- after_update.forEach(add_render_callback);
-}
-function destroy_component(component, detaching) {
- const $$ = component.$$;
- if ($$.fragment !== null) {
- run_all($$.on_destroy);
- $$.fragment && $$.fragment.d(detaching);
- // TODO null out other refs, including component.$$ (but need to
- // preserve final state?)
- $$.on_destroy = $$.fragment = null;
- $$.ctx = [];
- }
-}
-function make_dirty(component, i) {
- if (component.$$.dirty[0] === -1) {
- dirty_components.push(component);
- schedule_update();
- component.$$.dirty.fill(0);
- }
- component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31));
-}
-function init(component, options, instance, create_fragment, not_equal, props, append_styles, dirty = [-1]) {
- const parent_component = current_component;
- set_current_component(component);
- const $$ = component.$$ = {
- fragment: null,
- ctx: [],
- // state
- props,
- update: noop,
- not_equal,
- bound: blank_object(),
- // lifecycle
- on_mount: [],
- on_destroy: [],
- on_disconnect: [],
- before_update: [],
- after_update: [],
- context: new Map(options.context || (parent_component ? parent_component.$$.context : [])),
- // everything else
- callbacks: blank_object(),
- dirty,
- skip_bound: false,
- root: options.target || parent_component.$$.root
- };
- append_styles && append_styles($$.root);
- let ready = false;
- $$.ctx = instance
- ? instance(component, options.props || {}, (i, ret, ...rest) => {
- const value = rest.length ? rest[0] : ret;
- if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {
- if (!$$.skip_bound && $$.bound[i])
- $$.bound[i](value);
- if (ready)
- make_dirty(component, i);
- }
- return ret;
- })
- : [];
- $$.update();
- ready = true;
- run_all($$.before_update);
- // `false` as a special case of no DOM component
- $$.fragment = create_fragment ? create_fragment($$.ctx) : false;
- if (options.target) {
- if (options.hydrate) {
- const nodes = children(options.target);
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.l(nodes);
- nodes.forEach(detach);
- }
- else {
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.c();
- }
- if (options.intro)
- transition_in(component.$$.fragment);
- mount_component(component, options.target, options.anchor, options.customElement);
- flush();
- }
- set_current_component(parent_component);
-}
-let SvelteElement;
-if (typeof HTMLElement === 'function') {
- SvelteElement = class extends HTMLElement {
- constructor() {
- super();
- this.attachShadow({ mode: 'open' });
- }
- connectedCallback() {
- const { on_mount } = this.$$;
- this.$$.on_disconnect = on_mount.map(run).filter(is_function);
- // @ts-ignore todo: improve typings
- for (const key in this.$$.slotted) {
- // @ts-ignore todo: improve typings
- this.appendChild(this.$$.slotted[key]);
- }
- }
- attributeChangedCallback(attr, _oldValue, newValue) {
- this[attr] = newValue;
- }
- disconnectedCallback() {
- run_all(this.$$.on_disconnect);
- }
- $destroy() {
- destroy_component(this, 1);
- this.$destroy = noop;
- }
- $on(type, callback) {
- // TODO should this delegate to addEventListener?
- if (!is_function(callback)) {
- return noop;
- }
- const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));
- callbacks.push(callback);
- return () => {
- const index = callbacks.indexOf(callback);
- if (index !== -1)
- callbacks.splice(index, 1);
- };
- }
- $set($$props) {
- if (this.$$set && !is_empty($$props)) {
- this.$$.skip_bound = true;
- this.$$set($$props);
- this.$$.skip_bound = false;
- }
- }
- };
-}
-
-function dispatch_dev(type, detail) {
- document.dispatchEvent(custom_event(type, Object.assign({ version: '3.52.0' }, detail), { bubbles: true }));
-}
-function append_dev(target, node) {
- dispatch_dev('SvelteDOMInsert', { target, node });
- append(target, node);
-}
-function insert_dev(target, node, anchor) {
- dispatch_dev('SvelteDOMInsert', { target, node, anchor });
- insert(target, node, anchor);
-}
-function detach_dev(node) {
- dispatch_dev('SvelteDOMRemove', { node });
- detach(node);
-}
-function listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) {
- const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : [];
- if (has_prevent_default)
- modifiers.push('preventDefault');
- if (has_stop_propagation)
- modifiers.push('stopPropagation');
- dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers });
- const dispose = listen(node, event, handler, options);
- return () => {
- dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers });
- dispose();
- };
-}
-function attr_dev(node, attribute, value) {
- attr(node, attribute, value);
- if (value == null)
- dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute });
- else
- dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value });
-}
-function set_data_dev(text, data) {
- data = '' + data;
- if (text.wholeText === data)
- return;
- dispatch_dev('SvelteDOMSetData', { node: text, data });
- text.data = data;
-}
-function validate_each_argument(arg) {
- if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) {
- let msg = '{#each} only iterates over array-like objects.';
- if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) {
- msg += ' You can use a spread to convert this iterable into an array.';
- }
- throw new Error(msg);
- }
-}
-function validate_slots(name, slot, keys) {
- for (const slot_key of Object.keys(slot)) {
- if (!~keys.indexOf(slot_key)) {
- console.warn(`<${name}> received an unexpected slot "${slot_key}".`);
- }
- }
-}
-
-export { src_url_equal as A, run_all as B, svg_element as C, empty as D, HtmlTag as H, SvelteElement as S, attribute_to_object as a, insert_dev as b, space as c, dispatch_dev as d, element as e, add_location as f, set_custom_element_data as g, attr_dev as h, init as i, append_dev as j, detach_dev as k, flush as l, validate_each_argument as m, noop as n, onMount as o, globals as p, destroy_each as q, binding_callbacks as r, safe_not_equal as s, text as t, set_style as u, validate_slots as v, listen_dev as w, set_data_dev as x, getContext as y, setContext as z };
diff --git a/Server/public/js/components/index-d77c7bdd.js b/Server/public/js/components/index-d77c7bdd.js
deleted file mode 100644
index 756ce7c..0000000
--- a/Server/public/js/components/index-d77c7bdd.js
+++ /dev/null
@@ -1,521 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-function noop() { }
-function add_location(element, file, line, column, char) {
- element.__svelte_meta = {
- loc: { file, line, column, char }
- };
-}
-function run(fn) {
- return fn();
-}
-function blank_object() {
- return Object.create(null);
-}
-function run_all(fns) {
- fns.forEach(run);
-}
-function is_function(thing) {
- return typeof thing === 'function';
-}
-function safe_not_equal(a, b) {
- return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');
-}
-let src_url_equal_anchor;
-function src_url_equal(element_src, url) {
- if (!src_url_equal_anchor) {
- src_url_equal_anchor = document.createElement('a');
- }
- src_url_equal_anchor.href = url;
- return element_src === src_url_equal_anchor.href;
-}
-function is_empty(obj) {
- return Object.keys(obj).length === 0;
-}
-function validate_store(store, name) {
- if (store != null && typeof store.subscribe !== 'function') {
- throw new Error(`'${name}' is not a store with a 'subscribe' method`);
- }
-}
-function subscribe(store, ...callbacks) {
- if (store == null) {
- return noop;
- }
- const unsub = store.subscribe(...callbacks);
- return unsub.unsubscribe ? () => unsub.unsubscribe() : unsub;
-}
-function component_subscribe(component, store, callback) {
- component.$$.on_destroy.push(subscribe(store, callback));
-}
-function append(target, node) {
- target.appendChild(node);
-}
-function insert(target, node, anchor) {
- target.insertBefore(node, anchor || null);
-}
-function detach(node) {
- node.parentNode.removeChild(node);
-}
-function destroy_each(iterations, detaching) {
- for (let i = 0; i < iterations.length; i += 1) {
- if (iterations[i])
- iterations[i].d(detaching);
- }
-}
-function element(name) {
- return document.createElement(name);
-}
-function svg_element(name) {
- return document.createElementNS('http://www.w3.org/2000/svg', name);
-}
-function text(data) {
- return document.createTextNode(data);
-}
-function space() {
- return text(' ');
-}
-function empty() {
- return text('');
-}
-function listen(node, event, handler, options) {
- node.addEventListener(event, handler, options);
- return () => node.removeEventListener(event, handler, options);
-}
-function attr(node, attribute, value) {
- if (value == null)
- node.removeAttribute(attribute);
- else if (node.getAttribute(attribute) !== value)
- node.setAttribute(attribute, value);
-}
-function set_custom_element_data(node, prop, value) {
- if (prop in node) {
- node[prop] = typeof node[prop] === 'boolean' && value === '' ? true : value;
- }
- else {
- attr(node, prop, value);
- }
-}
-function children(element) {
- return Array.from(element.childNodes);
-}
-function set_style(node, key, value, important) {
- if (value === null) {
- node.style.removeProperty(key);
- }
- else {
- node.style.setProperty(key, value, important ? 'important' : '');
- }
-}
-function custom_event(type, detail, { bubbles = false, cancelable = false } = {}) {
- const e = document.createEvent('CustomEvent');
- e.initCustomEvent(type, bubbles, cancelable, detail);
- return e;
-}
-class HtmlTag {
- constructor(is_svg = false) {
- this.is_svg = false;
- this.is_svg = is_svg;
- this.e = this.n = null;
- }
- c(html) {
- this.h(html);
- }
- m(html, target, anchor = null) {
- if (!this.e) {
- if (this.is_svg)
- this.e = svg_element(target.nodeName);
- else
- this.e = element(target.nodeName);
- this.t = target;
- this.c(html);
- }
- this.i(anchor);
- }
- h(html) {
- this.e.innerHTML = html;
- this.n = Array.from(this.e.childNodes);
- }
- i(anchor) {
- for (let i = 0; i < this.n.length; i += 1) {
- insert(this.t, this.n[i], anchor);
- }
- }
- p(html) {
- this.d();
- this.h(html);
- this.i(this.a);
- }
- d() {
- this.n.forEach(detach);
- }
-}
-function attribute_to_object(attributes) {
- const result = {};
- for (const attribute of attributes) {
- result[attribute.name] = attribute.value;
- }
- return result;
-}
-
-let current_component;
-function set_current_component(component) {
- current_component = component;
-}
-function get_current_component() {
- if (!current_component)
- throw new Error('Function called outside component initialization');
- return current_component;
-}
-/**
- * The `onMount` function schedules a callback to run as soon as the component has been mounted to the DOM.
- * It must be called during the component's initialisation (but doesn't need to live *inside* the component;
- * it can be called from an external module).
- *
- * `onMount` does not run inside a [server-side component](/docs#run-time-server-side-component-api).
- *
- * https://svelte.dev/docs#run-time-svelte-onmount
- */
-function onMount(fn) {
- get_current_component().$$.on_mount.push(fn);
-}
-/**
- * Associates an arbitrary `context` object with the current component and the specified `key`
- * and returns that object. The context is then available to children of the component
- * (including slotted content) with `getContext`.
- *
- * Like lifecycle functions, this must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-setcontext
- */
-function setContext(key, context) {
- get_current_component().$$.context.set(key, context);
- return context;
-}
-/**
- * Retrieves the context that belongs to the closest parent component with the specified `key`.
- * Must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-getcontext
- */
-function getContext(key) {
- return get_current_component().$$.context.get(key);
-}
-
-const dirty_components = [];
-const binding_callbacks = [];
-const render_callbacks = [];
-const flush_callbacks = [];
-const resolved_promise = Promise.resolve();
-let update_scheduled = false;
-function schedule_update() {
- if (!update_scheduled) {
- update_scheduled = true;
- resolved_promise.then(flush);
- }
-}
-function add_render_callback(fn) {
- render_callbacks.push(fn);
-}
-// flush() calls callbacks in this order:
-// 1. All beforeUpdate callbacks, in order: parents before children
-// 2. All bind:this callbacks, in reverse order: children before parents.
-// 3. All afterUpdate callbacks, in order: parents before children. EXCEPT
-// for afterUpdates called during the initial onMount, which are called in
-// reverse order: children before parents.
-// Since callbacks might update component values, which could trigger another
-// call to flush(), the following steps guard against this:
-// 1. During beforeUpdate, any updated components will be added to the
-// dirty_components array and will cause a reentrant call to flush(). Because
-// the flush index is kept outside the function, the reentrant call will pick
-// up where the earlier call left off and go through all dirty components. The
-// current_component value is saved and restored so that the reentrant call will
-// not interfere with the "parent" flush() call.
-// 2. bind:this callbacks cannot trigger new flush() calls.
-// 3. During afterUpdate, any updated components will NOT have their afterUpdate
-// callback called a second time; the seen_callbacks set, outside the flush()
-// function, guarantees this behavior.
-const seen_callbacks = new Set();
-let flushidx = 0; // Do *not* move this inside the flush() function
-function flush() {
- const saved_component = current_component;
- do {
- // first, call beforeUpdate functions
- // and update components
- while (flushidx < dirty_components.length) {
- const component = dirty_components[flushidx];
- flushidx++;
- set_current_component(component);
- update(component.$$);
- }
- set_current_component(null);
- dirty_components.length = 0;
- flushidx = 0;
- while (binding_callbacks.length)
- binding_callbacks.pop()();
- // then, once components are updated, call
- // afterUpdate functions. This may cause
- // subsequent updates...
- for (let i = 0; i < render_callbacks.length; i += 1) {
- const callback = render_callbacks[i];
- if (!seen_callbacks.has(callback)) {
- // ...so guard against infinite loops
- seen_callbacks.add(callback);
- callback();
- }
- }
- render_callbacks.length = 0;
- } while (dirty_components.length);
- while (flush_callbacks.length) {
- flush_callbacks.pop()();
- }
- update_scheduled = false;
- seen_callbacks.clear();
- set_current_component(saved_component);
-}
-function update($$) {
- if ($$.fragment !== null) {
- $$.update();
- run_all($$.before_update);
- const dirty = $$.dirty;
- $$.dirty = [-1];
- $$.fragment && $$.fragment.p($$.ctx, dirty);
- $$.after_update.forEach(add_render_callback);
- }
-}
-const outroing = new Set();
-function transition_in(block, local) {
- if (block && block.i) {
- outroing.delete(block);
- block.i(local);
- }
-}
-
-const globals = (typeof window !== 'undefined'
- ? window
- : typeof globalThis !== 'undefined'
- ? globalThis
- : global);
-function mount_component(component, target, anchor, customElement) {
- const { fragment, after_update } = component.$$;
- fragment && fragment.m(target, anchor);
- if (!customElement) {
- // onMount happens before the initial afterUpdate
- add_render_callback(() => {
- const new_on_destroy = component.$$.on_mount.map(run).filter(is_function);
- // if the component was destroyed immediately
- // it will update the `$$.on_destroy` reference to `null`.
- // the destructured on_destroy may still reference to the old array
- if (component.$$.on_destroy) {
- component.$$.on_destroy.push(...new_on_destroy);
- }
- else {
- // Edge case - component was destroyed immediately,
- // most likely as a result of a binding initialising
- run_all(new_on_destroy);
- }
- component.$$.on_mount = [];
- });
- }
- after_update.forEach(add_render_callback);
-}
-function destroy_component(component, detaching) {
- const $$ = component.$$;
- if ($$.fragment !== null) {
- run_all($$.on_destroy);
- $$.fragment && $$.fragment.d(detaching);
- // TODO null out other refs, including component.$$ (but need to
- // preserve final state?)
- $$.on_destroy = $$.fragment = null;
- $$.ctx = [];
- }
-}
-function make_dirty(component, i) {
- if (component.$$.dirty[0] === -1) {
- dirty_components.push(component);
- schedule_update();
- component.$$.dirty.fill(0);
- }
- component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31));
-}
-function init(component, options, instance, create_fragment, not_equal, props, append_styles, dirty = [-1]) {
- const parent_component = current_component;
- set_current_component(component);
- const $$ = component.$$ = {
- fragment: null,
- ctx: [],
- // state
- props,
- update: noop,
- not_equal,
- bound: blank_object(),
- // lifecycle
- on_mount: [],
- on_destroy: [],
- on_disconnect: [],
- before_update: [],
- after_update: [],
- context: new Map(options.context || (parent_component ? parent_component.$$.context : [])),
- // everything else
- callbacks: blank_object(),
- dirty,
- skip_bound: false,
- root: options.target || parent_component.$$.root
- };
- append_styles && append_styles($$.root);
- let ready = false;
- $$.ctx = instance
- ? instance(component, options.props || {}, (i, ret, ...rest) => {
- const value = rest.length ? rest[0] : ret;
- if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {
- if (!$$.skip_bound && $$.bound[i])
- $$.bound[i](value);
- if (ready)
- make_dirty(component, i);
- }
- return ret;
- })
- : [];
- $$.update();
- ready = true;
- run_all($$.before_update);
- // `false` as a special case of no DOM component
- $$.fragment = create_fragment ? create_fragment($$.ctx) : false;
- if (options.target) {
- if (options.hydrate) {
- const nodes = children(options.target);
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.l(nodes);
- nodes.forEach(detach);
- }
- else {
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.c();
- }
- if (options.intro)
- transition_in(component.$$.fragment);
- mount_component(component, options.target, options.anchor, options.customElement);
- flush();
- }
- set_current_component(parent_component);
-}
-let SvelteElement;
-if (typeof HTMLElement === 'function') {
- SvelteElement = class extends HTMLElement {
- constructor() {
- super();
- this.attachShadow({ mode: 'open' });
- }
- connectedCallback() {
- const { on_mount } = this.$$;
- this.$$.on_disconnect = on_mount.map(run).filter(is_function);
- // @ts-ignore todo: improve typings
- for (const key in this.$$.slotted) {
- // @ts-ignore todo: improve typings
- this.appendChild(this.$$.slotted[key]);
- }
- }
- attributeChangedCallback(attr, _oldValue, newValue) {
- this[attr] = newValue;
- }
- disconnectedCallback() {
- run_all(this.$$.on_disconnect);
- }
- $destroy() {
- destroy_component(this, 1);
- this.$destroy = noop;
- }
- $on(type, callback) {
- // TODO should this delegate to addEventListener?
- if (!is_function(callback)) {
- return noop;
- }
- const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));
- callbacks.push(callback);
- return () => {
- const index = callbacks.indexOf(callback);
- if (index !== -1)
- callbacks.splice(index, 1);
- };
- }
- $set($$props) {
- if (this.$$set && !is_empty($$props)) {
- this.$$.skip_bound = true;
- this.$$set($$props);
- this.$$.skip_bound = false;
- }
- }
- };
-}
-
-function dispatch_dev(type, detail) {
- document.dispatchEvent(custom_event(type, Object.assign({ version: '3.52.0' }, detail), { bubbles: true }));
-}
-function append_dev(target, node) {
- dispatch_dev('SvelteDOMInsert', { target, node });
- append(target, node);
-}
-function insert_dev(target, node, anchor) {
- dispatch_dev('SvelteDOMInsert', { target, node, anchor });
- insert(target, node, anchor);
-}
-function detach_dev(node) {
- dispatch_dev('SvelteDOMRemove', { node });
- detach(node);
-}
-function listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) {
- const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : [];
- if (has_prevent_default)
- modifiers.push('preventDefault');
- if (has_stop_propagation)
- modifiers.push('stopPropagation');
- dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers });
- const dispose = listen(node, event, handler, options);
- return () => {
- dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers });
- dispose();
- };
-}
-function attr_dev(node, attribute, value) {
- attr(node, attribute, value);
- if (value == null)
- dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute });
- else
- dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value });
-}
-function prop_dev(node, property, value) {
- node[property] = value;
- dispatch_dev('SvelteDOMSetProperty', { node, property, value });
-}
-function set_data_dev(text, data) {
- data = '' + data;
- if (text.wholeText === data)
- return;
- dispatch_dev('SvelteDOMSetData', { node: text, data });
- text.data = data;
-}
-function validate_each_argument(arg) {
- if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) {
- let msg = '{#each} only iterates over array-like objects.';
- if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) {
- msg += ' You can use a spread to convert this iterable into an array.';
- }
- throw new Error(msg);
- }
-}
-function validate_slots(name, slot, keys) {
- for (const slot_key of Object.keys(slot)) {
- if (!~keys.indexOf(slot_key)) {
- console.warn(`<${name}> received an unexpected slot "${slot_key}".`);
- }
- }
-}
-function loop_guard(timeout) {
- const start = Date.now();
- return () => {
- if (Date.now() - start > timeout) {
- throw new Error('Infinite loop detected');
- }
- };
-}
-
-export { set_data_dev as A, destroy_each as B, prop_dev as C, flush as D, set_style as E, getContext as F, setContext as G, svg_element as H, is_function as I, HtmlTag as J, SvelteElement as S, attribute_to_object as a, insert_dev as b, validate_store as c, dispatch_dev as d, component_subscribe as e, empty as f, detach_dev as g, binding_callbacks as h, init as i, element as j, space as k, add_location as l, attr_dev as m, noop as n, onMount as o, src_url_equal as p, set_custom_element_data as q, append_dev as r, safe_not_equal as s, listen_dev as t, run_all as u, validate_slots as v, loop_guard as w, globals as x, validate_each_argument as y, text as z };
diff --git a/Server/public/js/components/index-db20528a.js b/Server/public/js/components/index-db20528a.js
deleted file mode 100644
index 4baf1c9..0000000
--- a/Server/public/js/components/index-db20528a.js
+++ /dev/null
@@ -1 +0,0 @@
-function t(){}function n(t){return t()}function e(){return Object.create(null)}function o(t){t.forEach(n)}function s(t){return"function"==typeof t}function r(t,n){return t!=t?n==n:t!==n||t&&"object"==typeof t||"function"==typeof t}let i,c;function u(t,n){return i||(i=document.createElement("a")),i.href=n,t===i.href}function a(n,e,o){n.$$.on_destroy.push(function(n,...e){if(null==n)return t;const o=n.subscribe(...e);return o.unsubscribe?()=>o.unsubscribe():o}(e,o))}function f(t,n){t.appendChild(n)}function l(t,n,e){t.insertBefore(n,e||null)}function h(t){t.parentNode.removeChild(t)}function d(t,n){for(let e=0;et.removeEventListener(n,e,o)}function y(t,n,e){null==e?t.removeAttribute(n):t.getAttribute(n)!==e&&t.setAttribute(n,e)}function _(t,n,e){n in t?t[n]="boolean"==typeof t[n]&&""===e||e:y(t,n,e)}function x(t,n){n=""+n,t.wholeText!==n&&(t.data=n)}function v(t,n){t.value=null==n?"":n}function E(t,n,e,o){null===e?t.style.removeProperty(n):t.style.setProperty(n,e,o?"important":"")}class w{constructor(t=!1){this.is_svg=!1,this.is_svg=t,this.e=this.n=null}c(t){this.h(t)}m(t,n,e=null){var o;this.e||(this.is_svg?this.e=(o=n.nodeName,document.createElementNS("http://www.w3.org/2000/svg",o)):this.e=$(n.nodeName),this.t=n,this.c(t)),this.i(e)}h(t){this.e.innerHTML=t,this.n=Array.from(this.e.childNodes)}i(t){for(let n=0;n{const o=e.length?e[0]:n;return m.ctx&&f(m.ctx[t],m.ctx[t]=o)&&(!m.skip_bound&&m.bound[t]&&m.bound[t](o),g&&I(r,t)),n})):[],m.update(),g=!0,o(m.before_update),m.fragment=!!a&&a(m.ctx),i.target){if(i.hydrate){const t=function(t){return Array.from(t.childNodes)}(i.target);m.fragment&&m.fragment.l(t),t.forEach(h)}else m.fragment&&m.fragment.c();i.intro&&((b=r.$$.fragment)&&b.i&&(G.delete(b),b.i(y))),function(t,e,r,i){const{fragment:c,after_update:u}=t.$$;c&&c.m(e,r),i||q((()=>{const e=t.$$.on_mount.map(n).filter(s);t.$$.on_destroy?t.$$.on_destroy.push(...e):o(e),t.$$.on_mount=[]})),u.forEach(q)}(r,i.target,i.anchor,i.customElement),F()}var b,y;C(p)}let K;"function"==typeof HTMLElement&&(K=class extends HTMLElement{constructor(){super(),this.attachShadow({mode:"open"})}connectedCallback(){const{on_mount:t}=this.$$;this.$$.on_disconnect=t.map(n).filter(s);for(const t in this.$$.slotted)this.appendChild(this.$$.slotted[t])}attributeChangedCallback(t,n,e){this[t]=e}disconnectedCallback(){o(this.$$.on_disconnect)}$destroy(){!function(t,n){const e=t.$$;null!==e.fragment&&(o(e.on_destroy),e.fragment&&e.fragment.d(n),e.on_destroy=e.fragment=null,e.ctx=[])}(this,1),this.$destroy=t}$on(n,e){if(!s(e))return t;const o=this.$$.callbacks[n]||(this.$$.callbacks[n]=[]);return o.push(e),()=>{const t=o.indexOf(e);-1!==t&&o.splice(t,1)}}$set(t){var n;this.$$set&&(n=t,0!==Object.keys(n).length)&&(this.$$.skip_bound=!0,this.$$set(t),this.$$.skip_bound=!1)}});export{v as A,w as H,K as S,k as a,l as b,m as c,y as d,$ as e,f,h as g,L as h,J as i,j,F as k,b as l,S as m,t as n,A as o,g as p,a as q,o as r,r as s,u as t,_ as u,p as v,x as w,d as x,E as y,s as z};
diff --git a/Server/public/js/components/index-dfcd3ec9.js b/Server/public/js/components/index-dfcd3ec9.js
deleted file mode 100644
index e2b166c..0000000
--- a/Server/public/js/components/index-dfcd3ec9.js
+++ /dev/null
@@ -1,53 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-import { n as noop, s as safe_not_equal } from './index-d08fd9c0.js';
-
-const subscriber_queue = [];
-/**
- * Create a `Writable` store that allows both updating and reading by subscription.
- * @param {*=}value initial value
- * @param {StartStopNotifier=}start start and stop notifications for subscriptions
- */
-function writable(value, start = noop) {
- let stop;
- const subscribers = new Set();
- function set(new_value) {
- if (safe_not_equal(value, new_value)) {
- value = new_value;
- if (stop) { // store is ready
- const run_queue = !subscriber_queue.length;
- for (const subscriber of subscribers) {
- subscriber[1]();
- subscriber_queue.push(subscriber, value);
- }
- if (run_queue) {
- for (let i = 0; i < subscriber_queue.length; i += 2) {
- subscriber_queue[i][0](subscriber_queue[i + 1]);
- }
- subscriber_queue.length = 0;
- }
- }
- }
- }
- function update(fn) {
- set(fn(value));
- }
- function subscribe(run, invalidate = noop) {
- const subscriber = [run, invalidate];
- subscribers.add(subscriber);
- if (subscribers.size === 1) {
- stop = start(set) || noop;
- }
- run(value);
- return () => {
- subscribers.delete(subscriber);
- if (subscribers.size === 0) {
- stop();
- stop = null;
- }
- };
- }
- return { set, update, subscribe };
-}
-
-export { writable as w };
diff --git a/Server/public/js/components/index-e7d4b1a1.js b/Server/public/js/components/index-e7d4b1a1.js
deleted file mode 100644
index 040d96a..0000000
--- a/Server/public/js/components/index-e7d4b1a1.js
+++ /dev/null
@@ -1,524 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-function noop() { }
-function add_location(element, file, line, column, char) {
- element.__svelte_meta = {
- loc: { file, line, column, char }
- };
-}
-function run(fn) {
- return fn();
-}
-function blank_object() {
- return Object.create(null);
-}
-function run_all(fns) {
- fns.forEach(run);
-}
-function is_function(thing) {
- return typeof thing === 'function';
-}
-function safe_not_equal(a, b) {
- return a != a ? b == b : a !== b || ((a && typeof a === 'object') || typeof a === 'function');
-}
-let src_url_equal_anchor;
-function src_url_equal(element_src, url) {
- if (!src_url_equal_anchor) {
- src_url_equal_anchor = document.createElement('a');
- }
- src_url_equal_anchor.href = url;
- return element_src === src_url_equal_anchor.href;
-}
-function is_empty(obj) {
- return Object.keys(obj).length === 0;
-}
-function validate_store(store, name) {
- if (store != null && typeof store.subscribe !== 'function') {
- throw new Error(`'${name}' is not a store with a 'subscribe' method`);
- }
-}
-function subscribe(store, ...callbacks) {
- if (store == null) {
- return noop;
- }
- const unsub = store.subscribe(...callbacks);
- return unsub.unsubscribe ? () => unsub.unsubscribe() : unsub;
-}
-function component_subscribe(component, store, callback) {
- component.$$.on_destroy.push(subscribe(store, callback));
-}
-function append(target, node) {
- target.appendChild(node);
-}
-function insert(target, node, anchor) {
- target.insertBefore(node, anchor || null);
-}
-function detach(node) {
- node.parentNode.removeChild(node);
-}
-function destroy_each(iterations, detaching) {
- for (let i = 0; i < iterations.length; i += 1) {
- if (iterations[i])
- iterations[i].d(detaching);
- }
-}
-function element(name) {
- return document.createElement(name);
-}
-function svg_element(name) {
- return document.createElementNS('http://www.w3.org/2000/svg', name);
-}
-function text(data) {
- return document.createTextNode(data);
-}
-function space() {
- return text(' ');
-}
-function empty() {
- return text('');
-}
-function listen(node, event, handler, options) {
- node.addEventListener(event, handler, options);
- return () => node.removeEventListener(event, handler, options);
-}
-function attr(node, attribute, value) {
- if (value == null)
- node.removeAttribute(attribute);
- else if (node.getAttribute(attribute) !== value)
- node.setAttribute(attribute, value);
-}
-function set_custom_element_data(node, prop, value) {
- if (prop in node) {
- node[prop] = typeof node[prop] === 'boolean' && value === '' ? true : value;
- }
- else {
- attr(node, prop, value);
- }
-}
-function children(element) {
- return Array.from(element.childNodes);
-}
-function set_input_value(input, value) {
- input.value = value == null ? '' : value;
-}
-function set_style(node, key, value, important) {
- if (value === null) {
- node.style.removeProperty(key);
- }
- else {
- node.style.setProperty(key, value, important ? 'important' : '');
- }
-}
-function custom_event(type, detail, { bubbles = false, cancelable = false } = {}) {
- const e = document.createEvent('CustomEvent');
- e.initCustomEvent(type, bubbles, cancelable, detail);
- return e;
-}
-class HtmlTag {
- constructor(is_svg = false) {
- this.is_svg = false;
- this.is_svg = is_svg;
- this.e = this.n = null;
- }
- c(html) {
- this.h(html);
- }
- m(html, target, anchor = null) {
- if (!this.e) {
- if (this.is_svg)
- this.e = svg_element(target.nodeName);
- else
- this.e = element(target.nodeName);
- this.t = target;
- this.c(html);
- }
- this.i(anchor);
- }
- h(html) {
- this.e.innerHTML = html;
- this.n = Array.from(this.e.childNodes);
- }
- i(anchor) {
- for (let i = 0; i < this.n.length; i += 1) {
- insert(this.t, this.n[i], anchor);
- }
- }
- p(html) {
- this.d();
- this.h(html);
- this.i(this.a);
- }
- d() {
- this.n.forEach(detach);
- }
-}
-function attribute_to_object(attributes) {
- const result = {};
- for (const attribute of attributes) {
- result[attribute.name] = attribute.value;
- }
- return result;
-}
-
-let current_component;
-function set_current_component(component) {
- current_component = component;
-}
-function get_current_component() {
- if (!current_component)
- throw new Error('Function called outside component initialization');
- return current_component;
-}
-/**
- * The `onMount` function schedules a callback to run as soon as the component has been mounted to the DOM.
- * It must be called during the component's initialisation (but doesn't need to live *inside* the component;
- * it can be called from an external module).
- *
- * `onMount` does not run inside a [server-side component](/docs#run-time-server-side-component-api).
- *
- * https://svelte.dev/docs#run-time-svelte-onmount
- */
-function onMount(fn) {
- get_current_component().$$.on_mount.push(fn);
-}
-/**
- * Schedules a callback to run immediately after the component has been updated.
- *
- * The first time the callback runs will be after the initial `onMount`
- */
-function afterUpdate(fn) {
- get_current_component().$$.after_update.push(fn);
-}
-/**
- * Associates an arbitrary `context` object with the current component and the specified `key`
- * and returns that object. The context is then available to children of the component
- * (including slotted content) with `getContext`.
- *
- * Like lifecycle functions, this must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-setcontext
- */
-function setContext(key, context) {
- get_current_component().$$.context.set(key, context);
- return context;
-}
-/**
- * Retrieves the context that belongs to the closest parent component with the specified `key`.
- * Must be called during component initialisation.
- *
- * https://svelte.dev/docs#run-time-svelte-getcontext
- */
-function getContext(key) {
- return get_current_component().$$.context.get(key);
-}
-
-const dirty_components = [];
-const binding_callbacks = [];
-const render_callbacks = [];
-const flush_callbacks = [];
-const resolved_promise = Promise.resolve();
-let update_scheduled = false;
-function schedule_update() {
- if (!update_scheduled) {
- update_scheduled = true;
- resolved_promise.then(flush);
- }
-}
-function add_render_callback(fn) {
- render_callbacks.push(fn);
-}
-// flush() calls callbacks in this order:
-// 1. All beforeUpdate callbacks, in order: parents before children
-// 2. All bind:this callbacks, in reverse order: children before parents.
-// 3. All afterUpdate callbacks, in order: parents before children. EXCEPT
-// for afterUpdates called during the initial onMount, which are called in
-// reverse order: children before parents.
-// Since callbacks might update component values, which could trigger another
-// call to flush(), the following steps guard against this:
-// 1. During beforeUpdate, any updated components will be added to the
-// dirty_components array and will cause a reentrant call to flush(). Because
-// the flush index is kept outside the function, the reentrant call will pick
-// up where the earlier call left off and go through all dirty components. The
-// current_component value is saved and restored so that the reentrant call will
-// not interfere with the "parent" flush() call.
-// 2. bind:this callbacks cannot trigger new flush() calls.
-// 3. During afterUpdate, any updated components will NOT have their afterUpdate
-// callback called a second time; the seen_callbacks set, outside the flush()
-// function, guarantees this behavior.
-const seen_callbacks = new Set();
-let flushidx = 0; // Do *not* move this inside the flush() function
-function flush() {
- const saved_component = current_component;
- do {
- // first, call beforeUpdate functions
- // and update components
- while (flushidx < dirty_components.length) {
- const component = dirty_components[flushidx];
- flushidx++;
- set_current_component(component);
- update(component.$$);
- }
- set_current_component(null);
- dirty_components.length = 0;
- flushidx = 0;
- while (binding_callbacks.length)
- binding_callbacks.pop()();
- // then, once components are updated, call
- // afterUpdate functions. This may cause
- // subsequent updates...
- for (let i = 0; i < render_callbacks.length; i += 1) {
- const callback = render_callbacks[i];
- if (!seen_callbacks.has(callback)) {
- // ...so guard against infinite loops
- seen_callbacks.add(callback);
- callback();
- }
- }
- render_callbacks.length = 0;
- } while (dirty_components.length);
- while (flush_callbacks.length) {
- flush_callbacks.pop()();
- }
- update_scheduled = false;
- seen_callbacks.clear();
- set_current_component(saved_component);
-}
-function update($$) {
- if ($$.fragment !== null) {
- $$.update();
- run_all($$.before_update);
- const dirty = $$.dirty;
- $$.dirty = [-1];
- $$.fragment && $$.fragment.p($$.ctx, dirty);
- $$.after_update.forEach(add_render_callback);
- }
-}
-const outroing = new Set();
-function transition_in(block, local) {
- if (block && block.i) {
- outroing.delete(block);
- block.i(local);
- }
-}
-
-const globals = (typeof window !== 'undefined'
- ? window
- : typeof globalThis !== 'undefined'
- ? globalThis
- : global);
-function mount_component(component, target, anchor, customElement) {
- const { fragment, after_update } = component.$$;
- fragment && fragment.m(target, anchor);
- if (!customElement) {
- // onMount happens before the initial afterUpdate
- add_render_callback(() => {
- const new_on_destroy = component.$$.on_mount.map(run).filter(is_function);
- // if the component was destroyed immediately
- // it will update the `$$.on_destroy` reference to `null`.
- // the destructured on_destroy may still reference to the old array
- if (component.$$.on_destroy) {
- component.$$.on_destroy.push(...new_on_destroy);
- }
- else {
- // Edge case - component was destroyed immediately,
- // most likely as a result of a binding initialising
- run_all(new_on_destroy);
- }
- component.$$.on_mount = [];
- });
- }
- after_update.forEach(add_render_callback);
-}
-function destroy_component(component, detaching) {
- const $$ = component.$$;
- if ($$.fragment !== null) {
- run_all($$.on_destroy);
- $$.fragment && $$.fragment.d(detaching);
- // TODO null out other refs, including component.$$ (but need to
- // preserve final state?)
- $$.on_destroy = $$.fragment = null;
- $$.ctx = [];
- }
-}
-function make_dirty(component, i) {
- if (component.$$.dirty[0] === -1) {
- dirty_components.push(component);
- schedule_update();
- component.$$.dirty.fill(0);
- }
- component.$$.dirty[(i / 31) | 0] |= (1 << (i % 31));
-}
-function init(component, options, instance, create_fragment, not_equal, props, append_styles, dirty = [-1]) {
- const parent_component = current_component;
- set_current_component(component);
- const $$ = component.$$ = {
- fragment: null,
- ctx: [],
- // state
- props,
- update: noop,
- not_equal,
- bound: blank_object(),
- // lifecycle
- on_mount: [],
- on_destroy: [],
- on_disconnect: [],
- before_update: [],
- after_update: [],
- context: new Map(options.context || (parent_component ? parent_component.$$.context : [])),
- // everything else
- callbacks: blank_object(),
- dirty,
- skip_bound: false,
- root: options.target || parent_component.$$.root
- };
- append_styles && append_styles($$.root);
- let ready = false;
- $$.ctx = instance
- ? instance(component, options.props || {}, (i, ret, ...rest) => {
- const value = rest.length ? rest[0] : ret;
- if ($$.ctx && not_equal($$.ctx[i], $$.ctx[i] = value)) {
- if (!$$.skip_bound && $$.bound[i])
- $$.bound[i](value);
- if (ready)
- make_dirty(component, i);
- }
- return ret;
- })
- : [];
- $$.update();
- ready = true;
- run_all($$.before_update);
- // `false` as a special case of no DOM component
- $$.fragment = create_fragment ? create_fragment($$.ctx) : false;
- if (options.target) {
- if (options.hydrate) {
- const nodes = children(options.target);
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.l(nodes);
- nodes.forEach(detach);
- }
- else {
- // eslint-disable-next-line @typescript-eslint/no-non-null-assertion
- $$.fragment && $$.fragment.c();
- }
- if (options.intro)
- transition_in(component.$$.fragment);
- mount_component(component, options.target, options.anchor, options.customElement);
- flush();
- }
- set_current_component(parent_component);
-}
-let SvelteElement;
-if (typeof HTMLElement === 'function') {
- SvelteElement = class extends HTMLElement {
- constructor() {
- super();
- this.attachShadow({ mode: 'open' });
- }
- connectedCallback() {
- const { on_mount } = this.$$;
- this.$$.on_disconnect = on_mount.map(run).filter(is_function);
- // @ts-ignore todo: improve typings
- for (const key in this.$$.slotted) {
- // @ts-ignore todo: improve typings
- this.appendChild(this.$$.slotted[key]);
- }
- }
- attributeChangedCallback(attr, _oldValue, newValue) {
- this[attr] = newValue;
- }
- disconnectedCallback() {
- run_all(this.$$.on_disconnect);
- }
- $destroy() {
- destroy_component(this, 1);
- this.$destroy = noop;
- }
- $on(type, callback) {
- // TODO should this delegate to addEventListener?
- if (!is_function(callback)) {
- return noop;
- }
- const callbacks = (this.$$.callbacks[type] || (this.$$.callbacks[type] = []));
- callbacks.push(callback);
- return () => {
- const index = callbacks.indexOf(callback);
- if (index !== -1)
- callbacks.splice(index, 1);
- };
- }
- $set($$props) {
- if (this.$$set && !is_empty($$props)) {
- this.$$.skip_bound = true;
- this.$$set($$props);
- this.$$.skip_bound = false;
- }
- }
- };
-}
-
-function dispatch_dev(type, detail) {
- document.dispatchEvent(custom_event(type, Object.assign({ version: '3.52.0' }, detail), { bubbles: true }));
-}
-function append_dev(target, node) {
- dispatch_dev('SvelteDOMInsert', { target, node });
- append(target, node);
-}
-function insert_dev(target, node, anchor) {
- dispatch_dev('SvelteDOMInsert', { target, node, anchor });
- insert(target, node, anchor);
-}
-function detach_dev(node) {
- dispatch_dev('SvelteDOMRemove', { node });
- detach(node);
-}
-function listen_dev(node, event, handler, options, has_prevent_default, has_stop_propagation) {
- const modifiers = options === true ? ['capture'] : options ? Array.from(Object.keys(options)) : [];
- if (has_prevent_default)
- modifiers.push('preventDefault');
- if (has_stop_propagation)
- modifiers.push('stopPropagation');
- dispatch_dev('SvelteDOMAddEventListener', { node, event, handler, modifiers });
- const dispose = listen(node, event, handler, options);
- return () => {
- dispatch_dev('SvelteDOMRemoveEventListener', { node, event, handler, modifiers });
- dispose();
- };
-}
-function attr_dev(node, attribute, value) {
- attr(node, attribute, value);
- if (value == null)
- dispatch_dev('SvelteDOMRemoveAttribute', { node, attribute });
- else
- dispatch_dev('SvelteDOMSetAttribute', { node, attribute, value });
-}
-function prop_dev(node, property, value) {
- node[property] = value;
- dispatch_dev('SvelteDOMSetProperty', { node, property, value });
-}
-function set_data_dev(text, data) {
- data = '' + data;
- if (text.wholeText === data)
- return;
- dispatch_dev('SvelteDOMSetData', { node: text, data });
- text.data = data;
-}
-function validate_each_argument(arg) {
- if (typeof arg !== 'string' && !(arg && typeof arg === 'object' && 'length' in arg)) {
- let msg = '{#each} only iterates over array-like objects.';
- if (typeof Symbol === 'function' && arg && Symbol.iterator in arg) {
- msg += ' You can use a spread to convert this iterable into an array.';
- }
- throw new Error(msg);
- }
-}
-function validate_slots(name, slot, keys) {
- for (const slot_key of Object.keys(slot)) {
- if (!~keys.indexOf(slot_key)) {
- console.warn(`<${name}> received an unexpected slot "${slot_key}".`);
- }
- }
-}
-
-export { validate_each_argument as A, text as B, set_data_dev as C, destroy_each as D, prop_dev as E, set_style as F, svg_element as G, is_function as H, HtmlTag as I, afterUpdate as J, set_input_value as K, SvelteElement as S, attribute_to_object as a, insert_dev as b, setContext as c, dispatch_dev as d, globals as e, element as f, getContext as g, space as h, init as i, add_location as j, attr_dev as k, append_dev as l, listen_dev as m, noop as n, onMount as o, detach_dev as p, binding_callbacks as q, run_all as r, safe_not_equal as s, flush as t, validate_store as u, validate_slots as v, component_subscribe as w, empty as x, src_url_equal as y, set_custom_element_data as z };
diff --git a/Server/public/js/components/index-ed9e9a4d.js b/Server/public/js/components/index-ed9e9a4d.js
deleted file mode 100644
index 34d6959..0000000
--- a/Server/public/js/components/index-ed9e9a4d.js
+++ /dev/null
@@ -1,53 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-import { n as noop, s as safe_not_equal } from './index-ab5c14c8.js';
-
-const subscriber_queue = [];
-/**
- * Create a `Writable` store that allows both updating and reading by subscription.
- * @param {*=}value initial value
- * @param {StartStopNotifier=}start start and stop notifications for subscriptions
- */
-function writable(value, start = noop) {
- let stop;
- const subscribers = new Set();
- function set(new_value) {
- if (safe_not_equal(value, new_value)) {
- value = new_value;
- if (stop) { // store is ready
- const run_queue = !subscriber_queue.length;
- for (const subscriber of subscribers) {
- subscriber[1]();
- subscriber_queue.push(subscriber, value);
- }
- if (run_queue) {
- for (let i = 0; i < subscriber_queue.length; i += 2) {
- subscriber_queue[i][0](subscriber_queue[i + 1]);
- }
- subscriber_queue.length = 0;
- }
- }
- }
- }
- function update(fn) {
- set(fn(value));
- }
- function subscribe(run, invalidate = noop) {
- const subscriber = [run, invalidate];
- subscribers.add(subscriber);
- if (subscribers.size === 1) {
- stop = start(set) || noop;
- }
- run(value);
- return () => {
- subscribers.delete(subscriber);
- if (subscribers.size === 0) {
- stop();
- stop = null;
- }
- };
- }
- return { set, update, subscribe };
-}
-
-export { writable as w };
diff --git a/Server/public/js/components/index-ee911aff.js b/Server/public/js/components/index-ee911aff.js
deleted file mode 100644
index 8877f4a..0000000
--- a/Server/public/js/components/index-ee911aff.js
+++ /dev/null
@@ -1,53 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-import { n as noop, s as safe_not_equal } from './index-6b4fe380.js';
-
-const subscriber_queue = [];
-/**
- * Create a `Writable` store that allows both updating and reading by subscription.
- * @param {*=}value initial value
- * @param {StartStopNotifier=}start start and stop notifications for subscriptions
- */
-function writable(value, start = noop) {
- let stop;
- const subscribers = new Set();
- function set(new_value) {
- if (safe_not_equal(value, new_value)) {
- value = new_value;
- if (stop) { // store is ready
- const run_queue = !subscriber_queue.length;
- for (const subscriber of subscribers) {
- subscriber[1]();
- subscriber_queue.push(subscriber, value);
- }
- if (run_queue) {
- for (let i = 0; i < subscriber_queue.length; i += 2) {
- subscriber_queue[i][0](subscriber_queue[i + 1]);
- }
- subscriber_queue.length = 0;
- }
- }
- }
- }
- function update(fn) {
- set(fn(value));
- }
- function subscribe(run, invalidate = noop) {
- const subscriber = [run, invalidate];
- subscribers.add(subscriber);
- if (subscribers.size === 1) {
- stop = start(set) || noop;
- }
- run(value);
- return () => {
- subscribers.delete(subscriber);
- if (subscribers.size === 0) {
- stop();
- stop = null;
- }
- };
- }
- return { set, update, subscribe };
-}
-
-export { writable as w };
diff --git a/Server/public/js/components/index-f2dbf8ff.js b/Server/public/js/components/index-f2dbf8ff.js
deleted file mode 100644
index 2cce352..0000000
--- a/Server/public/js/components/index-f2dbf8ff.js
+++ /dev/null
@@ -1 +0,0 @@
-import{n,s as t}from"./index-ce8c147b.js";const e=[];function s(s,o=n){let c;const i=new Set;function f(n){if(t(s,n)&&(s=n,c)){const n=!e.length;for(const n of i)n[1](),e.push(n,s);if(n){for(let n=0;n{i.delete(r),0===i.size&&(c(),c=null)}}}}export{s as w};
diff --git a/Server/public/js/components/index-f9998ce7.js b/Server/public/js/components/index-f9998ce7.js
deleted file mode 100644
index c119166..0000000
--- a/Server/public/js/components/index-f9998ce7.js
+++ /dev/null
@@ -1,53 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-import { n as noop, s as safe_not_equal } from './index-998178c7.js';
-
-const subscriber_queue = [];
-/**
- * Create a `Writable` store that allows both updating and reading by subscription.
- * @param {*=}value initial value
- * @param {StartStopNotifier=}start start and stop notifications for subscriptions
- */
-function writable(value, start = noop) {
- let stop;
- const subscribers = new Set();
- function set(new_value) {
- if (safe_not_equal(value, new_value)) {
- value = new_value;
- if (stop) { // store is ready
- const run_queue = !subscriber_queue.length;
- for (const subscriber of subscribers) {
- subscriber[1]();
- subscriber_queue.push(subscriber, value);
- }
- if (run_queue) {
- for (let i = 0; i < subscriber_queue.length; i += 2) {
- subscriber_queue[i][0](subscriber_queue[i + 1]);
- }
- subscriber_queue.length = 0;
- }
- }
- }
- }
- function update(fn) {
- set(fn(value));
- }
- function subscribe(run, invalidate = noop) {
- const subscriber = [run, invalidate];
- subscribers.add(subscriber);
- if (subscribers.size === 1) {
- stop = start(set) || noop;
- }
- run(value);
- return () => {
- subscribers.delete(subscriber);
- if (subscribers.size === 0) {
- stop();
- stop = null;
- }
- };
- }
- return { set, update, subscribe };
-}
-
-export { writable as w };
diff --git a/Server/public/js/components/index-fb9750f3.js b/Server/public/js/components/index-fb9750f3.js
deleted file mode 100644
index 1e6178e..0000000
--- a/Server/public/js/components/index-fb9750f3.js
+++ /dev/null
@@ -1,53 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-import { n as noop, s as safe_not_equal } from './index-122ecbb4.js';
-
-const subscriber_queue = [];
-/**
- * Create a `Writable` store that allows both updating and reading by subscription.
- * @param {*=}value initial value
- * @param {StartStopNotifier=}start start and stop notifications for subscriptions
- */
-function writable(value, start = noop) {
- let stop;
- const subscribers = new Set();
- function set(new_value) {
- if (safe_not_equal(value, new_value)) {
- value = new_value;
- if (stop) { // store is ready
- const run_queue = !subscriber_queue.length;
- for (const subscriber of subscribers) {
- subscriber[1]();
- subscriber_queue.push(subscriber, value);
- }
- if (run_queue) {
- for (let i = 0; i < subscriber_queue.length; i += 2) {
- subscriber_queue[i][0](subscriber_queue[i + 1]);
- }
- subscriber_queue.length = 0;
- }
- }
- }
- }
- function update(fn) {
- set(fn(value));
- }
- function subscribe(run, invalidate = noop) {
- const subscriber = [run, invalidate];
- subscribers.add(subscriber);
- if (subscribers.size === 1) {
- stop = start(set) || noop;
- }
- run(value);
- return () => {
- subscribers.delete(subscriber);
- if (subscribers.size === 0) {
- stop();
- stop = null;
- }
- };
- }
- return { set, update, subscribe };
-}
-
-export { writable as w };
diff --git a/Server/public/js/components/index-fc577514.js b/Server/public/js/components/index-fc577514.js
deleted file mode 100644
index f122998..0000000
--- a/Server/public/js/components/index-fc577514.js
+++ /dev/null
@@ -1,53 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-import { n as noop, s as safe_not_equal } from './index-970976e6.js';
-
-const subscriber_queue = [];
-/**
- * Create a `Writable` store that allows both updating and reading by subscription.
- * @param {*=}value initial value
- * @param {StartStopNotifier=}start start and stop notifications for subscriptions
- */
-function writable(value, start = noop) {
- let stop;
- const subscribers = new Set();
- function set(new_value) {
- if (safe_not_equal(value, new_value)) {
- value = new_value;
- if (stop) { // store is ready
- const run_queue = !subscriber_queue.length;
- for (const subscriber of subscribers) {
- subscriber[1]();
- subscriber_queue.push(subscriber, value);
- }
- if (run_queue) {
- for (let i = 0; i < subscriber_queue.length; i += 2) {
- subscriber_queue[i][0](subscriber_queue[i + 1]);
- }
- subscriber_queue.length = 0;
- }
- }
- }
- }
- function update(fn) {
- set(fn(value));
- }
- function subscribe(run, invalidate = noop) {
- const subscriber = [run, invalidate];
- subscribers.add(subscriber);
- if (subscribers.size === 1) {
- stop = start(set) || noop;
- }
- run(value);
- return () => {
- subscribers.delete(subscriber);
- if (subscribers.size === 0) {
- stop();
- stop = null;
- }
- };
- }
- return { set, update, subscribe };
-}
-
-export { writable as w };
diff --git a/Server/public/js/components/navbar-component.js b/Server/public/js/components/navbar-component.js
deleted file mode 100644
index 206589b..0000000
--- a/Server/public/js/components/navbar-component.js
+++ /dev/null
@@ -1,670 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-import { S as SvelteElement, i as init, a as attribute_to_object, b as insert_dev, s as safe_not_equal, d as dispatch_dev, v as validate_slots, w as validate_store, x as component_subscribe, o as onMount, g as getContext, e as globals, A as validate_each_argument, y as empty, n as noop, p as detach_dev, q as binding_callbacks, f as element, h as space, B as text, k as attr_dev, j as add_location, u as src_url_equal, l as append_dev, m as listen_dev, C as set_data_dev, D as destroy_each, r as run_all } from './index-122ecbb4.js';
-import { w as writable } from './index-fb9750f3.js';
-import { loadLocaleContent, locales } from '../../../../../../../../../js/libraries/serverTools.js';
-
-/* src\navbar\navbar-component.svelte generated by Svelte v3.52.0 */
-
-const { Object: Object_1 } = globals;
-const file = "src\\navbar\\navbar-component.svelte";
-
-function get_each_context(ctx, list, i) {
- const child_ctx = ctx.slice();
- child_ctx[23] = list[i][0];
- child_ctx[24] = list[i][1];
- return child_ctx;
-}
-
-// (97:4) {#if Object.keys($content).length!=0}
-function create_if_block(ctx) {
- let header;
- let input;
- let t0;
- let label;
- let span0;
- let t1;
- let a0;
- let img0;
- let img0_src_value;
- let t2;
- let span1;
- let raw_value = /*$content*/ ctx[5].orgName + "";
- let t3;
- let nav;
- let ul;
- let li0;
- let a1;
- let t4_value = /*$content*/ ctx[5].joinUs + "";
- let t4;
- let t5;
- let li1;
- let a2;
- let t6_value = /*$content*/ ctx[5].manifesto + "";
- let t6;
- let t7;
- let li2;
- let button0;
- let t8_value = /*$content*/ ctx[5].initiatives + "";
- let t8;
- let t9;
- let div0;
- let a3;
- let t10_value = /*$content*/ ctx[5].groups + "";
- let t10;
- let t11;
- let a4;
- let t12_value = /*$content*/ ctx[5].communes + "";
- let t12;
- let t13;
- let a5;
- let t14_value = /*$content*/ ctx[5].cooperatives + "";
- let t14;
- let t15;
- let a6;
- let t16_value = /*$content*/ ctx[5].parties + "";
- let t16;
- let t17;
- let a7;
- let t18_value = /*$content*/ ctx[5].partners + "";
- let t18;
- let t19;
- let li3;
- let button1;
- let picture;
- let source0;
- let t20;
- let source1;
- let t21;
- let img1;
- let t22;
- let div1;
- let mounted;
- let dispose;
- let each_value = Object.entries(locales);
- validate_each_argument(each_value);
- let each_blocks = [];
-
- for (let i = 0; i < each_value.length; i += 1) {
- each_blocks[i] = create_each_block(get_each_context(ctx, each_value, i));
- }
-
- const block = {
- c: function create() {
- header = element("header");
- input = element("input");
- t0 = space();
- label = element("label");
- span0 = element("span");
- t1 = space();
- a0 = element("a");
- img0 = element("img");
- t2 = space();
- span1 = element("span");
- t3 = space();
- nav = element("nav");
- ul = element("ul");
- li0 = element("li");
- a1 = element("a");
- t4 = text(t4_value);
- t5 = space();
- li1 = element("li");
- a2 = element("a");
- t6 = text(t6_value);
- t7 = space();
- li2 = element("li");
- button0 = element("button");
- t8 = text(t8_value);
- t9 = space();
- div0 = element("div");
- a3 = element("a");
- t10 = text(t10_value);
- t11 = space();
- a4 = element("a");
- t12 = text(t12_value);
- t13 = space();
- a5 = element("a");
- t14 = text(t14_value);
- t15 = space();
- a6 = element("a");
- t16 = text(t16_value);
- t17 = space();
- a7 = element("a");
- t18 = text(t18_value);
- t19 = space();
- li3 = element("li");
- button1 = element("button");
- picture = element("picture");
- source0 = element("source");
- t20 = space();
- source1 = element("source");
- t21 = space();
- img1 = element("img");
- t22 = space();
- div1 = element("div");
-
- for (let i = 0; i < each_blocks.length; i += 1) {
- each_blocks[i].c();
- }
-
- attr_dev(input, "type", "checkbox");
- attr_dev(input, "id", "side-menu");
- add_location(input, file, 99, 12, 3170);
- attr_dev(span0, "id", "hamb-line");
- add_location(span0, file, 100, 45, 3301);
- attr_dev(label, "id", "hamb");
- attr_dev(label, "for", "side-menu");
- add_location(label, file, 100, 12, 3268);
- if (!src_url_equal(img0.src, img0_src_value = "/img/common/flag.png")) attr_dev(img0, "src", img0_src_value);
- attr_dev(img0, "id", "navbar-logo");
- attr_dev(img0, "alt", "logo");
- add_location(img0, file, 103, 16, 3443);
- attr_dev(span1, "id", "navbar-logo-text");
- add_location(span1, file, 104, 16, 3521);
- attr_dev(a0, "id", "logo-container");
- attr_dev(a0, "href", "/" + /*locale*/ ctx[8] + "/");
- add_location(a0, file, 102, 12, 3378);
- attr_dev(a1, "href", "/" + /*locale*/ ctx[8] + "/join-us");
- add_location(a1, file, 109, 24, 3733);
- add_location(li0, file, 109, 20, 3729);
- attr_dev(a2, "href", "/" + /*locale*/ ctx[8] + "/manifesto");
- add_location(a2, file, 110, 24, 3817);
- add_location(li1, file, 110, 20, 3813);
- attr_dev(button0, "class", "options-button");
- add_location(button0, file, 114, 24, 4129);
- attr_dev(a3, "href", "/" + /*locale*/ ctx[8] + "/groups");
- add_location(a3, file, 116, 28, 4406);
- attr_dev(a4, "href", "/" + /*locale*/ ctx[8] + "/communes");
- add_location(a4, file, 117, 28, 4488);
- attr_dev(a5, "href", "/" + /*locale*/ ctx[8] + "/cooperatives");
- add_location(a5, file, 118, 28, 4574);
- attr_dev(a6, "href", "/" + /*locale*/ ctx[8] + "/parties");
- add_location(a6, file, 119, 28, 4668);
- attr_dev(a7, "href", "/" + /*locale*/ ctx[8] + "/partners");
- add_location(a7, file, 120, 28, 4752);
- attr_dev(div0, "class", "options-dropdown");
- add_location(div0, file, 115, 24, 4314);
- attr_dev(li2, "id", "options-container");
- add_location(li2, file, 113, 20, 4076);
- attr_dev(source0, "srcset", "/img/common/globe.webp");
- add_location(source0, file, 126, 32, 5102);
- attr_dev(source1, "srcset", "/img/common/globe.png");
- add_location(source1, file, 127, 32, 5176);
- attr_dev(img1, "id", "locales-img");
- attr_dev(img1, "alt", "globe");
- add_location(img1, file, 128, 32, 5249);
- add_location(picture, file, 125, 28, 5059);
- add_location(button1, file, 124, 24, 4932);
- attr_dev(li3, "id", "locales");
- add_location(li3, file, 123, 20, 4889);
- attr_dev(div1, "class", "options-dropdown");
- add_location(div1, file, 132, 20, 5407);
- attr_dev(ul, "id", "menu");
- add_location(ul, file, 108, 16, 3693);
- attr_dev(nav, "id", "nav");
- add_location(nav, file, 107, 12, 3661);
- attr_dev(header, "id", "navbar");
- add_location(header, file, 97, 8, 3080);
- },
- m: function mount(target, anchor) {
- insert_dev(target, header, anchor);
- append_dev(header, input);
- /*input_binding*/ ctx[12](input);
- append_dev(header, t0);
- append_dev(header, label);
- append_dev(label, span0);
- append_dev(header, t1);
- append_dev(header, a0);
- append_dev(a0, img0);
- append_dev(a0, t2);
- append_dev(a0, span1);
- span1.innerHTML = raw_value;
- /*span1_binding*/ ctx[13](span1);
- append_dev(header, t3);
- append_dev(header, nav);
- append_dev(nav, ul);
- append_dev(ul, li0);
- append_dev(li0, a1);
- append_dev(a1, t4);
- append_dev(ul, t5);
- append_dev(ul, li1);
- append_dev(li1, a2);
- append_dev(a2, t6);
- append_dev(ul, t7);
- append_dev(ul, li2);
- append_dev(li2, button0);
- append_dev(button0, t8);
- append_dev(li2, t9);
- append_dev(li2, div0);
- append_dev(div0, a3);
- append_dev(a3, t10);
- append_dev(div0, t11);
- append_dev(div0, a4);
- append_dev(a4, t12);
- append_dev(div0, t13);
- append_dev(div0, a5);
- append_dev(a5, t14);
- append_dev(div0, t15);
- append_dev(div0, a6);
- append_dev(a6, t16);
- append_dev(div0, t17);
- append_dev(div0, a7);
- append_dev(a7, t18);
- /*div0_binding*/ ctx[16](div0);
- append_dev(ul, t19);
- append_dev(ul, li3);
- append_dev(li3, button1);
- append_dev(button1, picture);
- append_dev(picture, source0);
- append_dev(picture, t20);
- append_dev(picture, source1);
- append_dev(picture, t21);
- append_dev(picture, img1);
- append_dev(ul, t22);
- append_dev(ul, div1);
-
- for (let i = 0; i < each_blocks.length; i += 1) {
- each_blocks[i].m(div1, null);
- }
-
- /*div1_binding*/ ctx[20](div1);
- /*header_binding*/ ctx[21](header);
-
- if (!mounted) {
- dispose = [
- listen_dev(input, "click", /*changeNavbar*/ ctx[9], false, false, false),
- listen_dev(button0, "click", /*click_handler*/ ctx[14], false, false, false),
- listen_dev(button0, "focusout", /*focusout_handler*/ ctx[15], false, false, false),
- listen_dev(button1, "click", /*click_handler_1*/ ctx[17], false, false, false),
- listen_dev(button1, "focusout", /*focusout_handler_1*/ ctx[18], false, false, false)
- ];
-
- mounted = true;
- }
- },
- p: function update(ctx, dirty) {
- if (dirty & /*$content*/ 32 && raw_value !== (raw_value = /*$content*/ ctx[5].orgName + "")) span1.innerHTML = raw_value; if (dirty & /*$content*/ 32 && t4_value !== (t4_value = /*$content*/ ctx[5].joinUs + "")) set_data_dev(t4, t4_value);
- if (dirty & /*$content*/ 32 && t6_value !== (t6_value = /*$content*/ ctx[5].manifesto + "")) set_data_dev(t6, t6_value);
- if (dirty & /*$content*/ 32 && t8_value !== (t8_value = /*$content*/ ctx[5].initiatives + "")) set_data_dev(t8, t8_value);
- if (dirty & /*$content*/ 32 && t10_value !== (t10_value = /*$content*/ ctx[5].groups + "")) set_data_dev(t10, t10_value);
- if (dirty & /*$content*/ 32 && t12_value !== (t12_value = /*$content*/ ctx[5].communes + "")) set_data_dev(t12, t12_value);
- if (dirty & /*$content*/ 32 && t14_value !== (t14_value = /*$content*/ ctx[5].cooperatives + "")) set_data_dev(t14, t14_value);
- if (dirty & /*$content*/ 32 && t16_value !== (t16_value = /*$content*/ ctx[5].parties + "")) set_data_dev(t16, t16_value);
- if (dirty & /*$content*/ 32 && t18_value !== (t18_value = /*$content*/ ctx[5].partners + "")) set_data_dev(t18, t18_value);
-
- if (dirty & /*changeLocale, Object, locales*/ 2048) {
- each_value = Object.entries(locales);
- validate_each_argument(each_value);
- let i;
-
- for (i = 0; i < each_value.length; i += 1) {
- const child_ctx = get_each_context(ctx, each_value, i);
-
- if (each_blocks[i]) {
- each_blocks[i].p(child_ctx, dirty);
- } else {
- each_blocks[i] = create_each_block(child_ctx);
- each_blocks[i].c();
- each_blocks[i].m(div1, null);
- }
- }
-
- for (; i < each_blocks.length; i += 1) {
- each_blocks[i].d(1);
- }
-
- each_blocks.length = each_value.length;
- }
- },
- d: function destroy(detaching) {
- if (detaching) detach_dev(header);
- /*input_binding*/ ctx[12](null);
- /*span1_binding*/ ctx[13](null);
- /*div0_binding*/ ctx[16](null);
- destroy_each(each_blocks, detaching);
- /*div1_binding*/ ctx[20](null);
- /*header_binding*/ ctx[21](null);
- mounted = false;
- run_all(dispose);
- }
- };
-
- dispatch_dev("SvelteRegisterBlock", {
- block,
- id: create_if_block.name,
- type: "if",
- source: "(97:4) {#if Object.keys($content).length!=0}",
- ctx
- });
-
- return block;
-}
-
-// (134:24) {#each Object.entries(locales) as [loc,name]}
-function create_each_block(ctx) {
- let button;
- let t_value = /*name*/ ctx[24] + "";
- let t;
- let mounted;
- let dispose;
-
- function click_handler_2() {
- return /*click_handler_2*/ ctx[19](/*loc*/ ctx[23]);
- }
-
- const block = {
- c: function create() {
- button = element("button");
- t = text(t_value);
- add_location(button, file, 134, 28, 5566);
- },
- m: function mount(target, anchor) {
- insert_dev(target, button, anchor);
- append_dev(button, t);
-
- if (!mounted) {
- dispose = listen_dev(button, "click", click_handler_2, false, false, false);
- mounted = true;
- }
- },
- p: function update(new_ctx, dirty) {
- ctx = new_ctx;
- },
- d: function destroy(detaching) {
- if (detaching) detach_dev(button);
- mounted = false;
- dispose();
- }
- };
-
- dispatch_dev("SvelteRegisterBlock", {
- block,
- id: create_each_block.name,
- type: "each",
- source: "(134:24) {#each Object.entries(locales) as [loc,name]}",
- ctx
- });
-
- return block;
-}
-
-function create_fragment(ctx) {
- let show_if = Object.keys(/*$content*/ ctx[5]).length != 0;
- let if_block_anchor;
- let if_block = show_if && create_if_block(ctx);
-
- const block = {
- c: function create() {
- if (if_block) if_block.c();
- if_block_anchor = empty();
- this.c = noop;
- },
- l: function claim(nodes) {
- throw new Error("options.hydrate only works if the component was compiled with the `hydratable: true` option");
- },
- m: function mount(target, anchor) {
- if (if_block) if_block.m(target, anchor);
- insert_dev(target, if_block_anchor, anchor);
- },
- p: function update(ctx, [dirty]) {
- if (dirty & /*$content*/ 32) show_if = Object.keys(/*$content*/ ctx[5]).length != 0;
-
- if (show_if) {
- if (if_block) {
- if_block.p(ctx, dirty);
- } else {
- if_block = create_if_block(ctx);
- if_block.c();
- if_block.m(if_block_anchor.parentNode, if_block_anchor);
- }
- } else if (if_block) {
- if_block.d(1);
- if_block = null;
- }
- },
- i: noop,
- o: noop,
- d: function destroy(detaching) {
- if (if_block) if_block.d(detaching);
- if (detaching) detach_dev(if_block_anchor);
- }
- };
-
- dispatch_dev("SvelteRegisterBlock", {
- block,
- id: create_fragment.name,
- type: "component",
- source: "",
- ctx
- });
-
- return block;
-}
-
-function hide(dropdown) {
- let callback = () => {
- dropdown.style.display = "none";
- };
-
- setTimeout(callback, 100);
-}
-
-function instance($$self, $$props, $$invalidate) {
- let $content;
- let { $$slots: slots = {}, $$scope } = $$props;
- validate_slots('navbar-component', slots, []);
- let hambInput;
- let navbar;
- let localesDropdown;
- let initiativesDropdown;
- let loaded = writable(0);
- let content = writable({});
- validate_store(content, 'content');
- component_subscribe($$self, content, value => $$invalidate(5, $content = value));
- let logoText;
- let locale = loadLocaleContent(content, "navbar-component", loaded);
-
- function changeNavbar() {
- if (hambInput.checked) {
- $$invalidate(1, navbar.style.background = "white", navbar);
- } else {
- setTimeout(
- () => {
- $$invalidate(1, navbar.style.position = "relative", navbar);
- $$invalidate(1, navbar.style.background = "", navbar);
- $$invalidate(1, navbar.style.boxShadow = "", navbar);
- },
- 510
- );
- }
- }
-
- function showDropdown(dropdown) {
- let state = dropdown.style.display;
- $$invalidate(3, initiativesDropdown.style.display = "none", initiativesDropdown);
- $$invalidate(2, localesDropdown.style.display = "none", localesDropdown);
-
- if (state == "block") {
- dropdown.style.display = "none";
- } else {
- dropdown.style.display = "block";
- }
- }
-
- function changeLocale(lang) {
- localStorage.setItem("locale", lang);
- let locSplit = location.href.split("/");
- let localesSymbols = Object.keys(locales);
- locSplit = locSplit.filter(x => !localesSymbols.includes(x));
- let loc = locSplit.slice(0, locSplit.length - 1).join("/") + "/" + lang + "/" + locSplit[locSplit.length - 1];
- location.href = loc;
- }
-
- function fixHeading() {
- if (locale == "ru") {
- let func = () => {
- if (logoText == undefined) {
- setTimeout(func, 100);
- } else {
- if ((window.innerWidth < 1700 && window.innerWidth > 1400 || window.innerWidth < 400) && logoText.style.lineHeight != "100%") {
- $$invalidate(4, logoText.style.lineHeight = "120%", logoText);
- $$invalidate(4, logoText.style.top = "1rem", logoText);
- $$invalidate(4, logoText.style.width = "16rem", logoText);
- } else if ((window.innerWidth > 1700 || window.innerWidth > 400 && window.innerWidth < 1400) && logoText.style.lineHeight != "400%") {
- $$invalidate(4, logoText.style.lineHeight = "400%", logoText);
- $$invalidate(4, logoText.style.top = "0rem", logoText);
- $$invalidate(4, logoText.style.width = "auto", logoText);
- }
- }
- };
-
- func();
- addEventListener("resize", func);
- }
- }
-
- onMount(() => {
- fixHeading();
- });
-
- const writable_props = [];
-
- Object_1.keys($$props).forEach(key => {
- if (!~writable_props.indexOf(key) && key.slice(0, 2) !== '$$' && key !== 'slot') console.warn(` was created with unknown prop '${key}'`);
- });
-
- function input_binding($$value) {
- binding_callbacks[$$value ? 'unshift' : 'push'](() => {
- hambInput = $$value;
- $$invalidate(0, hambInput);
- });
- }
-
- function span1_binding($$value) {
- binding_callbacks[$$value ? 'unshift' : 'push'](() => {
- logoText = $$value;
- $$invalidate(4, logoText);
- });
- }
-
- const click_handler = () => showDropdown(initiativesDropdown);
- const focusout_handler = () => hide(initiativesDropdown);
-
- function div0_binding($$value) {
- binding_callbacks[$$value ? 'unshift' : 'push'](() => {
- initiativesDropdown = $$value;
- $$invalidate(3, initiativesDropdown);
- });
- }
-
- const click_handler_1 = () => showDropdown(localesDropdown);
- const focusout_handler_1 = () => hide(localesDropdown);
- const click_handler_2 = loc => changeLocale(loc);
-
- function div1_binding($$value) {
- binding_callbacks[$$value ? 'unshift' : 'push'](() => {
- localesDropdown = $$value;
- $$invalidate(2, localesDropdown);
- });
- }
-
- function header_binding($$value) {
- binding_callbacks[$$value ? 'unshift' : 'push'](() => {
- navbar = $$value;
- $$invalidate(1, navbar);
- });
- }
-
- $$self.$capture_state = () => ({
- onMount,
- getContext,
- writable,
- loadLocaleContent,
- locales,
- hambInput,
- navbar,
- localesDropdown,
- initiativesDropdown,
- loaded,
- content,
- logoText,
- locale,
- changeNavbar,
- showDropdown,
- changeLocale,
- fixHeading,
- hide,
- $content
- });
-
- $$self.$inject_state = $$props => {
- if ('hambInput' in $$props) $$invalidate(0, hambInput = $$props.hambInput);
- if ('navbar' in $$props) $$invalidate(1, navbar = $$props.navbar);
- if ('localesDropdown' in $$props) $$invalidate(2, localesDropdown = $$props.localesDropdown);
- if ('initiativesDropdown' in $$props) $$invalidate(3, initiativesDropdown = $$props.initiativesDropdown);
- if ('loaded' in $$props) $$invalidate(6, loaded = $$props.loaded);
- if ('content' in $$props) $$invalidate(7, content = $$props.content);
- if ('logoText' in $$props) $$invalidate(4, logoText = $$props.logoText);
- if ('locale' in $$props) $$invalidate(8, locale = $$props.locale);
- };
-
- if ($$props && "$$inject" in $$props) {
- $$self.$inject_state($$props.$$inject);
- }
-
- return [
- hambInput,
- navbar,
- localesDropdown,
- initiativesDropdown,
- logoText,
- $content,
- loaded,
- content,
- locale,
- changeNavbar,
- showDropdown,
- changeLocale,
- input_binding,
- span1_binding,
- click_handler,
- focusout_handler,
- div0_binding,
- click_handler_1,
- focusout_handler_1,
- click_handler_2,
- div1_binding,
- header_binding
- ];
-}
-
-class Navbar_component extends SvelteElement {
- constructor(options) {
- super();
- this.shadowRoot.innerHTML = ``;
-
- init(
- this,
- {
- target: this.shadowRoot,
- props: attribute_to_object(this.attributes),
- customElement: true
- },
- instance,
- create_fragment,
- safe_not_equal,
- {},
- null
- );
-
- if (options) {
- if (options.target) {
- insert_dev(options.target, this, options.anchor);
- }
- }
- }
-}
-
-customElements.define("navbar-component", Navbar_component);
-
-export { Navbar_component as default };
diff --git a/Server/public/js/components/profile-group.js b/Server/public/js/components/profile-group.js
deleted file mode 100644
index 4a7689e..0000000
--- a/Server/public/js/components/profile-group.js
+++ /dev/null
@@ -1,80 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-import { S as SvelteElement, i as init, a as attribute_to_object, b as insert_dev, s as safe_not_equal, d as dispatch_dev, v as validate_slots, o as onMount, n as noop } from './index-6b4fe380.js';
-import * as AuthTools from '../../../../../../../../../js/libraries/authTools.js';
-
-/* src\profile\profile-group.svelte generated by Svelte v3.52.0 */
-
-function create_fragment(ctx) {
- const block = {
- c: function create() {
- this.c = noop;
- },
- l: function claim(nodes) {
- throw new Error("options.hydrate only works if the component was compiled with the `hydratable: true` option");
- },
- m: noop,
- p: noop,
- i: noop,
- o: noop,
- d: noop
- };
-
- dispatch_dev("SvelteRegisterBlock", {
- block,
- id: create_fragment.name,
- type: "component",
- source: "",
- ctx
- });
-
- return block;
-}
-
-function instance($$self, $$props, $$invalidate) {
- let { $$slots: slots = {}, $$scope } = $$props;
- validate_slots('profile-group', slots, []);
-
- onMount(() => {
-
- });
-
- const writable_props = [];
-
- Object.keys($$props).forEach(key => {
- if (!~writable_props.indexOf(key) && key.slice(0, 2) !== '$$' && key !== 'slot') console.warn(` was created with unknown prop '${key}'`);
- });
-
- $$self.$capture_state = () => ({ onMount, AuthTools });
- return [];
-}
-
-class Profile_group extends SvelteElement {
- constructor(options) {
- super();
-
- init(
- this,
- {
- target: this.shadowRoot,
- props: attribute_to_object(this.attributes),
- customElement: true
- },
- instance,
- create_fragment,
- safe_not_equal,
- {},
- null
- );
-
- if (options) {
- if (options.target) {
- insert_dev(options.target, this, options.anchor);
- }
- }
- }
-}
-
-customElements.define("profile-group", Profile_group);
-
-export { Profile_group as default };
diff --git a/Server/public/js/components/profile-my-details.js b/Server/public/js/components/profile-my-details.js
deleted file mode 100644
index a0a81ae..0000000
--- a/Server/public/js/components/profile-my-details.js
+++ /dev/null
@@ -1,80 +0,0 @@
-
-(function(l, r) { if (!l || l.getElementById('livereloadscript')) return; r = l.createElement('script'); r.async = 1; r.src = '//' + (self.location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; r.id = 'livereloadscript'; l.getElementsByTagName('head')[0].appendChild(r) })(self.document);
-import { S as SvelteElement, i as init, a as attribute_to_object, b as insert_dev, s as safe_not_equal, d as dispatch_dev, v as validate_slots, o as onMount, n as noop } from './index-6b4fe380.js';
-import * as AuthTools from '../../../../../../../../../js/libraries/authTools.js';
-
-/* src\profile\profile-my-details.svelte generated by Svelte v3.52.0 */
-
-function create_fragment(ctx) {
- const block = {
- c: function create() {
- this.c = noop;
- },
- l: function claim(nodes) {
- throw new Error("options.hydrate only works if the component was compiled with the `hydratable: true` option");
- },
- m: noop,
- p: noop,
- i: noop,
- o: noop,
- d: noop
- };
-
- dispatch_dev("SvelteRegisterBlock", {
- block,
- id: create_fragment.name,
- type: "component",
- source: "",
- ctx
- });
-
- return block;
-}
-
-function instance($$self, $$props, $$invalidate) {
- let { $$slots: slots = {}, $$scope } = $$props;
- validate_slots('profile-my-details', slots, []);
-
- onMount(() => {
-
- });
-
- const writable_props = [];
-
- Object.keys($$props).forEach(key => {
- if (!~writable_props.indexOf(key) && key.slice(0, 2) !== '$$' && key !== 'slot') console.warn(` was created with unknown prop '${key}'`);
- });
-
- $$self.$capture_state = () => ({ onMount, AuthTools });
- return [];
-}
-
-class Profile_my_details extends SvelteElement {
- constructor(options) {
- super();
-
- init(
- this,
- {
- target: this.shadowRoot,
- props: attribute_to_object(this.attributes),
- customElement: true
- },
- instance,
- create_fragment,
- safe_not_equal,
- {},
- null
- );
-
- if (options) {
- if (options.target) {
- insert_dev(options.target, this, options.anchor);
- }
- }
- }
-}
-
-customElements.define("profile-my-details", Profile_my_details);
-
-export { Profile_my_details as default };