Laptop-Thing/web/node_modules/.vite/deps/chunk-XI64PIGS.js
2024-11-27 12:35:48 -05:00

3606 lines
100 KiB
JavaScript
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import {
append,
assign_nodes,
createClassComponent,
create_fragment_from_html,
hash,
is_capture_event,
is_delegated,
is_void,
normalize_attribute,
set_should_intro,
should_intro
} from "./chunk-FZEWDNFU.js";
import {
BLOCK_EFFECT,
BRANCH_EFFECT,
BROWSER,
DEV,
EACH_INDEX_REACTIVE,
EACH_IS_ANIMATED,
EACH_IS_CONTROLLED,
EACH_ITEM_IMMUTABLE,
EACH_ITEM_REACTIVE,
EFFECT_RAN,
EFFECT_TRANSPARENT,
FILENAME,
HMR,
HYDRATION_END,
HYDRATION_ERROR,
HYDRATION_START,
HYDRATION_START_ELSE,
INERT,
LEGACY_DERIVED_PROP,
LEGACY_PROPS,
LOADING_ATTR_SYMBOL,
NAMESPACE_SVG,
PROPS_IS_BINDABLE,
PROPS_IS_IMMUTABLE,
PROPS_IS_LAZY_INITIAL,
PROPS_IS_RUNES,
PROPS_IS_UPDATED,
ROOT_EFFECT,
STATE_SYMBOL,
TRANSITION_GLOBAL,
TRANSITION_IN,
TRANSITION_OUT,
UNINITIALIZED,
active_effect,
active_reaction,
add_form_reset_listener,
array_from,
autofocus,
bind_invalid_checkbox_value,
bind_invalid_export,
bind_not_bindable,
binding_property_non_reactive,
block,
branch,
captured_signals,
clear_text_content,
component_api_changed,
component_api_invalid_new,
component_context,
console_log_state,
create_event,
create_text,
deep_read_state,
define_property,
delegate,
derived,
derived_safe_equal,
destroy_effect,
dev_current_component_function,
each_key_duplicate,
effect,
effect_root,
flush_sync,
get,
get_component,
get_descriptor,
get_descriptors,
get_first_child,
get_next_sibling,
get_prototype_of,
hydrate_next,
hydrate_node,
hydrating,
hydration_attribute_changed,
hydration_html_changed,
hydration_mismatch,
inspect_effect,
internal_set,
invalid_raw_snippet_render,
invalid_snippet,
is,
is_array,
is_function,
is_promise,
is_runes,
lifecycle_legacy_only,
lifecycle_outside_component,
listen,
listen_to_event_and_reset_event,
mutable_source,
noop,
not_equal,
object_keys,
object_prototype,
pause_children,
pause_effect,
props_invalid_value,
props_rest_readonly,
proxy,
queue_idle_task,
queue_micro_task,
remove_nodes,
render_effect,
resume_effect,
run,
run_all,
run_out_transitions,
safe_equals,
safe_not_equal,
set,
set_active_effect,
set_active_reaction,
set_component_context,
set_dev_current_component_function,
set_hydrate_node,
set_hydrating,
source,
store_invalid_shape,
svelte_element_invalid_this_value,
teardown,
untrack,
update,
user_effect,
user_pre_effect,
validate_effect,
without_reactive_context
} from "./chunk-OTO7APUV.js";
import {
legacy_mode_flag
} from "./chunk-EXIRPMAV.js";
import {
__privateAdd,
__privateGet,
__privateMethod,
__privateSet,
__publicField
} from "./chunk-UGBVNEQM.js";
// node_modules/svelte/src/internal/client/dev/css.js
var all_styles = /* @__PURE__ */ new Map();
function register_style(hash2, style) {
var styles = all_styles.get(hash2);
if (!styles) {
styles = /* @__PURE__ */ new Set();
all_styles.set(hash2, styles);
}
styles.add(style);
}
function cleanup_styles(hash2) {
var styles = all_styles.get(hash2);
if (!styles) return;
for (const style of styles) {
style.remove();
}
all_styles.delete(hash2);
}
// node_modules/svelte/src/internal/client/dev/elements.js
function add_locations(fn, filename, locations) {
return (...args) => {
const dom = fn(...args);
var node = hydrating ? dom : dom.nodeType === 11 ? dom.firstChild : dom;
assign_locations(node, filename, locations);
return dom;
};
}
function assign_location(element2, filename, location) {
element2.__svelte_meta = {
loc: { file: filename, line: location[0], column: location[1] }
};
if (location[2]) {
assign_locations(element2.firstChild, filename, location[2]);
}
}
function assign_locations(node, filename, locations) {
var i = 0;
var depth = 0;
while (node && i < locations.length) {
if (hydrating && node.nodeType === 8) {
var comment2 = (
/** @type {Comment} */
node
);
if (comment2.data === HYDRATION_START || comment2.data === HYDRATION_START_ELSE) depth += 1;
else if (comment2.data[0] === HYDRATION_END) depth -= 1;
}
if (depth === 0 && node.nodeType === 1) {
assign_location(
/** @type {Element} */
node,
filename,
locations[i++]
);
}
node = node.nextSibling;
}
}
// node_modules/svelte/src/internal/client/dev/hmr.js
function hmr(original, get_source) {
function wrapper(anchor, props) {
let instance = {};
let effect2;
let ran = false;
block(() => {
const source2 = get_source();
const component2 = get(source2);
if (effect2) {
for (var k in instance) delete instance[k];
destroy_effect(effect2);
}
effect2 = branch(() => {
if (ran) set_should_intro(false);
Object.defineProperties(
instance,
Object.getOwnPropertyDescriptors(
// @ts-expect-error
new.target ? new component2(anchor, props) : component2(anchor, props)
)
);
if (ran) set_should_intro(true);
});
}, EFFECT_TRANSPARENT);
ran = true;
if (hydrating) {
anchor = hydrate_node;
}
return instance;
}
wrapper[FILENAME] = original[FILENAME];
wrapper[HMR] = {
// When we accept an update, we set the original source to the new component
original,
// The `get_source` parameter reads `wrapper[HMR].source`, but in the `accept`
// function we always replace it with `previous[HMR].source`, which in practice
// means we only ever update the original
source: source(original)
};
return wrapper;
}
// node_modules/svelte/src/internal/client/dev/legacy.js
function check_target(target) {
if (target) {
component_api_invalid_new(target[FILENAME] ?? "a component", target.name);
}
}
function legacy_api() {
var _a;
const component2 = (_a = component_context) == null ? void 0 : _a.function;
function error(method) {
var _a2;
const parent = ((_a2 = get_component()) == null ? void 0 : _a2[FILENAME]) ?? "Something";
component_api_changed(parent, method, component2[FILENAME]);
}
return {
$destroy: () => error("$destroy()"),
$on: () => error("$on(...)"),
$set: () => error("$set(...)")
};
}
// node_modules/svelte/src/internal/shared/warnings.js
var bold = "font-weight: bold";
var normal = "font-weight: normal";
function dynamic_void_element_content(tag) {
if (DEV) {
console.warn(`%c[svelte] dynamic_void_element_content
%c\`<svelte:element this="${tag}">\` is a void element — it cannot have content`, bold, normal);
} else {
console.warn("dynamic_void_element_content");
}
}
function state_snapshot_uncloneable(properties) {
if (DEV) {
console.warn(`%c[svelte] state_snapshot_uncloneable
%c${properties ? `The following properties cannot be cloned with \`$state.snapshot\` — the return value contains the originals:
${properties}` : "Value cannot be cloned with `$state.snapshot` — the original value was returned"}`, bold, normal);
} else {
console.warn("state_snapshot_uncloneable");
}
}
// node_modules/svelte/src/internal/shared/clone.js
var empty = [];
function snapshot(value, skip_warning = false) {
if (DEV && !skip_warning) {
const paths = [];
const copy = clone(value, /* @__PURE__ */ new Map(), "", paths);
if (paths.length === 1 && paths[0] === "") {
state_snapshot_uncloneable();
} else if (paths.length > 0) {
const slice = paths.length > 10 ? paths.slice(0, 7) : paths.slice(0, 10);
const excess = paths.length - slice.length;
let uncloned = slice.map((path) => `- <value>${path}`).join("\n");
if (excess > 0) uncloned += `
- ...and ${excess} more`;
state_snapshot_uncloneable(uncloned);
}
return copy;
}
return clone(value, /* @__PURE__ */ new Map(), "", empty);
}
function clone(value, cloned, path, paths, original = null) {
if (typeof value === "object" && value !== null) {
const unwrapped = cloned.get(value);
if (unwrapped !== void 0) return unwrapped;
if (value instanceof Map) return (
/** @type {Snapshot<T>} */
new Map(value)
);
if (value instanceof Set) return (
/** @type {Snapshot<T>} */
new Set(value)
);
if (is_array(value)) {
const copy = (
/** @type {Snapshot<any>} */
[]
);
cloned.set(value, copy);
if (original !== null) {
cloned.set(original, copy);
}
for (let i = 0; i < value.length; i += 1) {
copy.push(clone(value[i], cloned, DEV ? `${path}[${i}]` : path, paths));
}
return copy;
}
if (get_prototype_of(value) === object_prototype) {
const copy = {};
cloned.set(value, copy);
if (original !== null) {
cloned.set(original, copy);
}
for (var key in value) {
copy[key] = clone(value[key], cloned, DEV ? `${path}.${key}` : path, paths);
}
return copy;
}
if (value instanceof Date) {
return (
/** @type {Snapshot<T>} */
structuredClone(value)
);
}
if (typeof /** @type {T & { toJSON?: any } } */
value.toJSON === "function") {
return clone(
/** @type {T & { toJSON(): any } } */
value.toJSON(),
cloned,
DEV ? `${path}.toJSON()` : path,
paths,
// Associate the instance with the toJSON clone
value
);
}
}
if (value instanceof EventTarget) {
return (
/** @type {Snapshot<T>} */
value
);
}
try {
return (
/** @type {Snapshot<T>} */
structuredClone(value)
);
} catch (e) {
if (DEV) {
paths.push(path);
}
return (
/** @type {Snapshot<T>} */
value
);
}
}
// node_modules/svelte/src/internal/client/dev/inspect.js
function inspect(get_value, inspector = console.log) {
validate_effect("$inspect");
let initial = true;
inspect_effect(() => {
var value = UNINITIALIZED;
try {
value = get_value();
} catch (error) {
console.error(error);
}
if (value !== UNINITIALIZED) {
inspector(initial ? "init" : "update", ...snapshot(value, true));
}
initial = false;
});
}
// node_modules/svelte/src/internal/client/dom/blocks/await.js
var PENDING = 0;
var THEN = 1;
var CATCH = 2;
function await_block(node, get_input, pending_fn, then_fn, catch_fn) {
var _a;
if (hydrating) {
hydrate_next();
}
var anchor = node;
var runes = is_runes();
var active_component_context = component_context;
var component_function = DEV ? (_a = component_context) == null ? void 0 : _a.function : null;
var input = UNINITIALIZED;
var pending_effect;
var then_effect;
var catch_effect;
var input_source = (runes ? source : mutable_source)(
/** @type {V} */
void 0
);
var error_source = (runes ? source : mutable_source)(void 0);
var resolved = false;
function update2(state2, restore) {
resolved = true;
if (restore) {
set_active_effect(effect2);
set_active_reaction(effect2);
set_component_context(active_component_context);
if (DEV) set_dev_current_component_function(component_function);
}
try {
if (state2 === PENDING && pending_fn) {
if (pending_effect) resume_effect(pending_effect);
else pending_effect = branch(() => pending_fn(anchor));
}
if (state2 === THEN && then_fn) {
if (then_effect) resume_effect(then_effect);
else then_effect = branch(() => then_fn(anchor, input_source));
}
if (state2 === CATCH && catch_fn) {
if (catch_effect) resume_effect(catch_effect);
else catch_effect = branch(() => catch_fn(anchor, error_source));
}
if (state2 !== PENDING && pending_effect) {
pause_effect(pending_effect, () => pending_effect = null);
}
if (state2 !== THEN && then_effect) {
pause_effect(then_effect, () => then_effect = null);
}
if (state2 !== CATCH && catch_effect) {
pause_effect(catch_effect, () => catch_effect = null);
}
} finally {
if (restore) {
if (DEV) set_dev_current_component_function(null);
set_component_context(null);
set_active_reaction(null);
set_active_effect(null);
flush_sync();
}
}
}
var effect2 = block(() => {
if (input === (input = get_input())) return;
if (is_promise(input)) {
var promise = input;
resolved = false;
promise.then(
(value) => {
if (promise !== input) return;
internal_set(input_source, value);
update2(THEN, true);
},
(error) => {
if (promise !== input) return;
internal_set(error_source, error);
update2(CATCH, true);
if (!catch_fn) {
throw error_source.v;
}
}
);
if (hydrating) {
if (pending_fn) {
pending_effect = branch(() => pending_fn(anchor));
}
} else {
queue_micro_task(() => {
if (!resolved) update2(PENDING, true);
});
}
} else {
internal_set(input_source, input);
update2(THEN, false);
}
return () => input = UNINITIALIZED;
});
if (hydrating) {
anchor = hydrate_node;
}
}
// node_modules/svelte/src/internal/client/dom/blocks/if.js
function if_block(node, get_condition, consequent_fn, alternate_fn = null, elseif = false) {
if (hydrating) {
hydrate_next();
}
var anchor = node;
var consequent_effect = null;
var alternate_effect = null;
var condition = null;
var flags = elseif ? EFFECT_TRANSPARENT : 0;
block(() => {
if (condition === (condition = !!get_condition())) return;
let mismatch = false;
if (hydrating) {
const is_else = (
/** @type {Comment} */
anchor.data === HYDRATION_START_ELSE
);
if (condition === is_else) {
anchor = remove_nodes();
set_hydrate_node(anchor);
set_hydrating(false);
mismatch = true;
}
}
if (condition) {
if (consequent_effect) {
resume_effect(consequent_effect);
} else {
consequent_effect = branch(() => consequent_fn(anchor));
}
if (alternate_effect) {
pause_effect(alternate_effect, () => {
alternate_effect = null;
});
}
} else {
if (alternate_effect) {
resume_effect(alternate_effect);
} else if (alternate_fn) {
alternate_effect = branch(() => alternate_fn(anchor));
}
if (consequent_effect) {
pause_effect(consequent_effect, () => {
consequent_effect = null;
});
}
}
if (mismatch) {
set_hydrating(true);
}
}, flags);
if (hydrating) {
anchor = hydrate_node;
}
}
// node_modules/svelte/src/internal/client/dom/blocks/key.js
function key_block(node, get_key, render_fn) {
if (hydrating) {
hydrate_next();
}
var anchor = node;
var key = UNINITIALIZED;
var effect2;
var changed = is_runes() ? not_equal : safe_not_equal;
block(() => {
if (changed(key, key = get_key())) {
if (effect2) {
pause_effect(effect2);
}
effect2 = branch(() => render_fn(anchor));
}
});
if (hydrating) {
anchor = hydrate_node;
}
}
// node_modules/svelte/src/internal/client/dom/blocks/css-props.js
function css_props(element2, get_styles) {
if (hydrating) {
set_hydrate_node(
/** @type {TemplateNode} */
get_first_child(element2)
);
}
render_effect(() => {
var styles = get_styles();
for (var key in styles) {
var value = styles[key];
if (value) {
element2.style.setProperty(key, value);
} else {
element2.style.removeProperty(key);
}
}
});
teardown(() => {
element2.remove();
});
}
// node_modules/svelte/src/internal/client/dom/blocks/each.js
var current_each_item = null;
function set_current_each_item(item) {
current_each_item = item;
}
function index(_, i) {
return i;
}
function pause_effects(state2, items, controlled_anchor, items_map) {
var transitions = [];
var length = items.length;
for (var i = 0; i < length; i++) {
pause_children(items[i].e, transitions, true);
}
var is_controlled = length > 0 && transitions.length === 0 && controlled_anchor !== null;
if (is_controlled) {
var parent_node = (
/** @type {Element} */
/** @type {Element} */
controlled_anchor.parentNode
);
clear_text_content(parent_node);
parent_node.append(
/** @type {Element} */
controlled_anchor
);
items_map.clear();
link(state2, items[0].prev, items[length - 1].next);
}
run_out_transitions(transitions, () => {
for (var i2 = 0; i2 < length; i2++) {
var item = items[i2];
if (!is_controlled) {
items_map.delete(item.k);
link(state2, item.prev, item.next);
}
destroy_effect(item.e, !is_controlled);
}
});
}
function each(node, flags, get_collection, get_key, render_fn, fallback_fn = null) {
var anchor = node;
var state2 = { flags, items: /* @__PURE__ */ new Map(), first: null };
var is_controlled = (flags & EACH_IS_CONTROLLED) !== 0;
if (is_controlled) {
var parent_node = (
/** @type {Element} */
node
);
anchor = hydrating ? set_hydrate_node(
/** @type {Comment | Text} */
get_first_child(parent_node)
) : parent_node.appendChild(create_text());
}
if (hydrating) {
hydrate_next();
}
var fallback2 = null;
var was_empty = false;
block(() => {
var collection = get_collection();
var array = is_array(collection) ? collection : collection == null ? [] : array_from(collection);
var length = array.length;
if (was_empty && length === 0) {
return;
}
was_empty = length === 0;
let mismatch = false;
if (hydrating) {
var is_else = (
/** @type {Comment} */
anchor.data === HYDRATION_START_ELSE
);
if (is_else !== (length === 0)) {
anchor = remove_nodes();
set_hydrate_node(anchor);
set_hydrating(false);
mismatch = true;
}
}
if (hydrating) {
var prev = null;
var item;
for (var i = 0; i < length; i++) {
if (hydrate_node.nodeType === 8 && /** @type {Comment} */
hydrate_node.data === HYDRATION_END) {
anchor = /** @type {Comment} */
hydrate_node;
mismatch = true;
set_hydrating(false);
break;
}
var value = array[i];
var key = get_key(value, i);
item = create_item(hydrate_node, state2, prev, null, value, key, i, render_fn, flags);
state2.items.set(key, item);
prev = item;
}
if (length > 0) {
set_hydrate_node(remove_nodes());
}
}
if (!hydrating) {
var effect2 = (
/** @type {Effect} */
active_reaction
);
reconcile(array, state2, anchor, render_fn, flags, (effect2.f & INERT) !== 0, get_key);
}
if (fallback_fn !== null) {
if (length === 0) {
if (fallback2) {
resume_effect(fallback2);
} else {
fallback2 = branch(() => fallback_fn(anchor));
}
} else if (fallback2 !== null) {
pause_effect(fallback2, () => {
fallback2 = null;
});
}
}
if (mismatch) {
set_hydrating(true);
}
get_collection();
});
if (hydrating) {
anchor = hydrate_node;
}
}
function reconcile(array, state2, anchor, render_fn, flags, is_inert, get_key) {
var _a, _b, _c, _d;
var is_animated = (flags & EACH_IS_ANIMATED) !== 0;
var should_update = (flags & (EACH_ITEM_REACTIVE | EACH_INDEX_REACTIVE)) !== 0;
var length = array.length;
var items = state2.items;
var first = state2.first;
var current = first;
var seen;
var prev = null;
var to_animate;
var matched = [];
var stashed = [];
var value;
var key;
var item;
var i;
if (is_animated) {
for (i = 0; i < length; i += 1) {
value = array[i];
key = get_key(value, i);
item = items.get(key);
if (item !== void 0) {
(_a = item.a) == null ? void 0 : _a.measure();
(to_animate ?? (to_animate = /* @__PURE__ */ new Set())).add(item);
}
}
}
for (i = 0; i < length; i += 1) {
value = array[i];
key = get_key(value, i);
item = items.get(key);
if (item === void 0) {
var child_anchor = current ? (
/** @type {TemplateNode} */
current.e.nodes_start
) : anchor;
prev = create_item(
child_anchor,
state2,
prev,
prev === null ? state2.first : prev.next,
value,
key,
i,
render_fn,
flags
);
items.set(key, prev);
matched = [];
stashed = [];
current = prev.next;
continue;
}
if (should_update) {
update_item(item, value, i, flags);
}
if ((item.e.f & INERT) !== 0) {
resume_effect(item.e);
if (is_animated) {
(_b = item.a) == null ? void 0 : _b.unfix();
(to_animate ?? (to_animate = /* @__PURE__ */ new Set())).delete(item);
}
}
if (item !== current) {
if (seen !== void 0 && seen.has(item)) {
if (matched.length < stashed.length) {
var start = stashed[0];
var j;
prev = start.prev;
var a = matched[0];
var b = matched[matched.length - 1];
for (j = 0; j < matched.length; j += 1) {
move(matched[j], start, anchor);
}
for (j = 0; j < stashed.length; j += 1) {
seen.delete(stashed[j]);
}
link(state2, a.prev, b.next);
link(state2, prev, a);
link(state2, b, start);
current = start;
prev = b;
i -= 1;
matched = [];
stashed = [];
} else {
seen.delete(item);
move(item, current, anchor);
link(state2, item.prev, item.next);
link(state2, item, prev === null ? state2.first : prev.next);
link(state2, prev, item);
prev = item;
}
continue;
}
matched = [];
stashed = [];
while (current !== null && current.k !== key) {
if (is_inert || (current.e.f & INERT) === 0) {
(seen ?? (seen = /* @__PURE__ */ new Set())).add(current);
}
stashed.push(current);
current = current.next;
}
if (current === null) {
continue;
}
item = current;
}
matched.push(item);
prev = item;
current = item.next;
}
if (current !== null || seen !== void 0) {
var to_destroy = seen === void 0 ? [] : array_from(seen);
while (current !== null) {
if (is_inert || (current.e.f & INERT) === 0) {
to_destroy.push(current);
}
current = current.next;
}
var destroy_length = to_destroy.length;
if (destroy_length > 0) {
var controlled_anchor = (flags & EACH_IS_CONTROLLED) !== 0 && length === 0 ? anchor : null;
if (is_animated) {
for (i = 0; i < destroy_length; i += 1) {
(_c = to_destroy[i].a) == null ? void 0 : _c.measure();
}
for (i = 0; i < destroy_length; i += 1) {
(_d = to_destroy[i].a) == null ? void 0 : _d.fix();
}
}
pause_effects(state2, to_destroy, controlled_anchor, items);
}
}
if (is_animated) {
queue_micro_task(() => {
var _a2;
if (to_animate === void 0) return;
for (item of to_animate) {
(_a2 = item.a) == null ? void 0 : _a2.apply();
}
});
}
active_effect.first = state2.first && state2.first.e;
active_effect.last = prev && prev.e;
}
function update_item(item, value, index2, type) {
if ((type & EACH_ITEM_REACTIVE) !== 0) {
internal_set(item.v, value);
}
if ((type & EACH_INDEX_REACTIVE) !== 0) {
internal_set(
/** @type {Value<number>} */
item.i,
index2
);
} else {
item.i = index2;
}
}
function create_item(anchor, state2, prev, next2, value, key, index2, render_fn, flags) {
var previous_each_item = current_each_item;
var reactive = (flags & EACH_ITEM_REACTIVE) !== 0;
var mutable = (flags & EACH_ITEM_IMMUTABLE) === 0;
var v = reactive ? mutable ? mutable_source(value) : source(value) : value;
var i = (flags & EACH_INDEX_REACTIVE) === 0 ? index2 : source(index2);
var item = {
i,
v,
k: key,
a: null,
// @ts-expect-error
e: null,
prev,
next: next2
};
current_each_item = item;
try {
item.e = branch(() => render_fn(anchor, v, i), hydrating);
item.e.prev = prev && prev.e;
item.e.next = next2 && next2.e;
if (prev === null) {
state2.first = item;
} else {
prev.next = item;
prev.e.next = item.e;
}
if (next2 !== null) {
next2.prev = item;
next2.e.prev = item.e;
}
return item;
} finally {
current_each_item = previous_each_item;
}
}
function move(item, next2, anchor) {
var end = item.next ? (
/** @type {TemplateNode} */
item.next.e.nodes_start
) : anchor;
var dest = next2 ? (
/** @type {TemplateNode} */
next2.e.nodes_start
) : anchor;
var node = (
/** @type {TemplateNode} */
item.e.nodes_start
);
while (node !== end) {
var next_node = (
/** @type {TemplateNode} */
get_next_sibling(node)
);
dest.before(node);
node = next_node;
}
}
function link(state2, prev, next2) {
if (prev === null) {
state2.first = next2;
} else {
prev.next = next2;
prev.e.next = next2 && next2.e;
}
if (next2 !== null) {
next2.prev = prev;
next2.e.prev = prev && prev.e;
}
}
// node_modules/svelte/src/internal/client/dom/blocks/html.js
function check_hash(element2, server_hash, value) {
var _a, _b;
if (!server_hash || server_hash === hash(String(value ?? ""))) return;
let location;
const loc = (_a = element2.__svelte_meta) == null ? void 0 : _a.loc;
if (loc) {
location = `near ${loc.file}:${loc.line}:${loc.column}`;
} else if ((_b = dev_current_component_function) == null ? void 0 : _b[FILENAME]) {
location = `in ${dev_current_component_function[FILENAME]}`;
}
hydration_html_changed(
location == null ? void 0 : location.replace(/\//g, "/")
// prevent devtools trying to make it a clickable link by inserting a zero-width space
);
}
function html(node, get_value, svg, mathml, skip_warning) {
var anchor = node;
var value = "";
var effect2;
block(() => {
if (value === (value = get_value() ?? "")) {
if (hydrating) {
hydrate_next();
}
return;
}
if (effect2 !== void 0) {
destroy_effect(effect2);
effect2 = void 0;
}
if (value === "") return;
effect2 = branch(() => {
if (hydrating) {
var hash2 = (
/** @type {Comment} */
hydrate_node.data
);
var next2 = hydrate_next();
var last = next2;
while (next2 !== null && (next2.nodeType !== 8 || /** @type {Comment} */
next2.data !== "")) {
last = next2;
next2 = /** @type {TemplateNode} */
get_next_sibling(next2);
}
if (next2 === null) {
hydration_mismatch();
throw HYDRATION_ERROR;
}
if (DEV && !skip_warning) {
check_hash(
/** @type {Element} */
next2.parentNode,
hash2,
value
);
}
assign_nodes(hydrate_node, last);
anchor = set_hydrate_node(next2);
return;
}
var html2 = value + "";
if (svg) html2 = `<svg>${html2}</svg>`;
else if (mathml) html2 = `<math>${html2}</math>`;
var node2 = create_fragment_from_html(html2);
if (svg || mathml) {
node2 = /** @type {Element} */
get_first_child(node2);
}
assign_nodes(
/** @type {TemplateNode} */
get_first_child(node2),
/** @type {TemplateNode} */
node2.lastChild
);
if (svg || mathml) {
while (get_first_child(node2)) {
anchor.before(
/** @type {Node} */
get_first_child(node2)
);
}
} else {
anchor.before(node2);
}
});
});
}
// node_modules/svelte/src/internal/client/dom/blocks/slot.js
function slot(anchor, $$props, name, slot_props, fallback_fn) {
var _a;
if (hydrating) {
hydrate_next();
}
var slot_fn = (_a = $$props.$$slots) == null ? void 0 : _a[name];
var is_interop = false;
if (slot_fn === true) {
slot_fn = $$props[name === "default" ? "children" : name];
is_interop = true;
}
if (slot_fn === void 0) {
if (fallback_fn !== null) {
fallback_fn(anchor);
}
} else {
slot_fn(anchor, is_interop ? () => slot_props : slot_props);
}
}
function sanitize_slots(props) {
const sanitized = {};
if (props.children) sanitized.default = true;
for (const key in props.$$slots) {
sanitized[key] = true;
}
return sanitized;
}
// node_modules/svelte/src/internal/client/dom/blocks/snippet.js
function snippet(node, get_snippet, ...args) {
var anchor = node;
var snippet2 = noop;
var snippet_effect;
block(() => {
if (snippet2 === (snippet2 = get_snippet())) return;
if (snippet_effect) {
destroy_effect(snippet_effect);
snippet_effect = null;
}
if (DEV && snippet2 == null) {
invalid_snippet();
}
snippet_effect = branch(() => (
/** @type {SnippetFn} */
snippet2(anchor, ...args)
));
}, EFFECT_TRANSPARENT);
if (hydrating) {
anchor = hydrate_node;
}
}
function wrap_snippet(component2, fn) {
return (node, ...args) => {
var previous_component_function = dev_current_component_function;
set_dev_current_component_function(component2);
try {
return fn(node, ...args);
} finally {
set_dev_current_component_function(previous_component_function);
}
};
}
function createRawSnippet(fn) {
return (anchor, ...params) => {
var _a;
var snippet2 = fn(...params);
var element2;
if (hydrating) {
element2 = /** @type {Element} */
hydrate_node;
hydrate_next();
} else {
var html2 = snippet2.render().trim();
var fragment = create_fragment_from_html(html2);
element2 = /** @type {Element} */
get_first_child(fragment);
if (DEV && (get_next_sibling(element2) !== null || element2.nodeType !== 1)) {
invalid_raw_snippet_render();
}
anchor.before(element2);
}
const result = (_a = snippet2.setup) == null ? void 0 : _a.call(snippet2, element2);
assign_nodes(element2, element2);
if (typeof result === "function") {
teardown(result);
}
};
}
// node_modules/svelte/src/internal/client/dom/blocks/svelte-component.js
function component(node, get_component2, render_fn) {
if (hydrating) {
hydrate_next();
}
var anchor = node;
var component2;
var effect2;
block(() => {
if (component2 === (component2 = get_component2())) return;
if (effect2) {
pause_effect(effect2);
effect2 = null;
}
if (component2) {
effect2 = branch(() => render_fn(anchor, component2));
}
}, EFFECT_TRANSPARENT);
if (hydrating) {
anchor = hydrate_node;
}
}
// node_modules/svelte/src/internal/client/dom/blocks/svelte-element.js
function element(node, get_tag, is_svg, render_fn, get_namespace, location) {
var _a;
let was_hydrating = hydrating;
if (hydrating) {
hydrate_next();
}
var filename = DEV && location && ((_a = component_context) == null ? void 0 : _a.function[FILENAME]);
var tag;
var current_tag;
var element2 = null;
if (hydrating && hydrate_node.nodeType === 1) {
element2 = /** @type {Element} */
hydrate_node;
hydrate_next();
}
var anchor = (
/** @type {TemplateNode} */
hydrating ? hydrate_node : node
);
var effect2;
var each_item_block = current_each_item;
block(() => {
const next_tag = get_tag() || null;
var ns = get_namespace ? get_namespace() : is_svg || next_tag === "svg" ? NAMESPACE_SVG : null;
if (next_tag === tag) return;
var previous_each_item = current_each_item;
set_current_each_item(each_item_block);
if (effect2) {
if (next_tag === null) {
pause_effect(effect2, () => {
effect2 = null;
current_tag = null;
});
} else if (next_tag === current_tag) {
resume_effect(effect2);
} else {
destroy_effect(effect2);
set_should_intro(false);
}
}
if (next_tag && next_tag !== current_tag) {
effect2 = branch(() => {
element2 = hydrating ? (
/** @type {Element} */
element2
) : ns ? document.createElementNS(ns, next_tag) : document.createElement(next_tag);
if (DEV && location) {
element2.__svelte_meta = {
loc: {
file: filename,
line: location[0],
column: location[1]
}
};
}
assign_nodes(element2, element2);
if (render_fn) {
var child_anchor = (
/** @type {TemplateNode} */
hydrating ? get_first_child(element2) : element2.appendChild(create_text())
);
if (hydrating) {
if (child_anchor === null) {
set_hydrating(false);
} else {
set_hydrate_node(child_anchor);
}
}
render_fn(element2, child_anchor);
}
active_effect.nodes_end = element2;
anchor.before(element2);
});
}
tag = next_tag;
if (tag) current_tag = tag;
set_should_intro(true);
set_current_each_item(previous_each_item);
}, EFFECT_TRANSPARENT);
if (was_hydrating) {
set_hydrating(true);
set_hydrate_node(anchor);
}
}
// node_modules/svelte/src/internal/client/dom/css.js
function append_styles(anchor, css) {
queue_micro_task(() => {
var root = anchor.getRootNode();
var target = (
/** @type {ShadowRoot} */
root.host ? (
/** @type {ShadowRoot} */
root
) : (
/** @type {Document} */
root.head ?? /** @type {Document} */
root.ownerDocument.head
)
);
if (!target.querySelector("#" + css.hash)) {
const style = document.createElement("style");
style.id = css.hash;
style.textContent = css.code;
target.appendChild(style);
if (DEV) {
register_style(css.hash, style);
}
}
});
}
// node_modules/svelte/src/internal/client/dom/elements/actions.js
function action(dom, action2, get_value) {
effect(() => {
var payload = untrack(() => action2(dom, get_value == null ? void 0 : get_value()) || {});
if (get_value && (payload == null ? void 0 : payload.update)) {
var inited = false;
var prev = (
/** @type {any} */
{}
);
render_effect(() => {
var value = get_value();
deep_read_state(value);
if (inited && safe_not_equal(prev, value)) {
prev = value;
payload.update(value);
}
});
inited = true;
}
if (payload == null ? void 0 : payload.destroy) {
return () => (
/** @type {Function} */
payload.destroy()
);
}
});
}
// node_modules/svelte/src/internal/client/dom/elements/attributes.js
function remove_input_defaults(input) {
if (!hydrating) return;
var already_removed = false;
var remove_defaults = () => {
if (already_removed) return;
already_removed = true;
if (input.hasAttribute("value")) {
var value = input.value;
set_attribute(input, "value", null);
input.value = value;
}
if (input.hasAttribute("checked")) {
var checked = input.checked;
set_attribute(input, "checked", null);
input.checked = checked;
}
};
input.__on_r = remove_defaults;
queue_idle_task(remove_defaults);
add_form_reset_listener();
}
function set_value(element2, value) {
var attributes = element2.__attributes ?? (element2.__attributes = {});
if (attributes.value === (attributes.value = value) || // @ts-expect-error
// `progress` elements always need their value set when its `0`
element2.value === value && (value !== 0 || element2.nodeName !== "PROGRESS"))
return;
element2.value = value;
}
function set_checked(element2, checked) {
var attributes = element2.__attributes ?? (element2.__attributes = {});
if (attributes.checked === (attributes.checked = checked)) return;
element2.checked = checked;
}
function set_attribute(element2, attribute, value, skip_warning) {
var attributes = element2.__attributes ?? (element2.__attributes = {});
if (hydrating) {
attributes[attribute] = element2.getAttribute(attribute);
if (attribute === "src" || attribute === "srcset" || attribute === "href" && element2.nodeName === "LINK") {
if (!skip_warning) {
check_src_in_dev_hydration(element2, attribute, value ?? "");
}
return;
}
}
if (attributes[attribute] === (attributes[attribute] = value)) return;
if (attribute === "style" && "__styles" in element2) {
element2.__styles = {};
}
if (attribute === "loading") {
element2[LOADING_ATTR_SYMBOL] = value;
}
if (value == null) {
element2.removeAttribute(attribute);
} else if (typeof value !== "string" && get_setters(element2).includes(attribute)) {
element2[attribute] = value;
} else {
element2.setAttribute(attribute, value);
}
}
function set_xlink_attribute(dom, attribute, value) {
dom.setAttributeNS("http://www.w3.org/1999/xlink", attribute, value);
}
function set_custom_element_data(node, prop2, value) {
var previous_reaction = active_reaction;
var previous_effect = active_effect;
set_active_reaction(null);
set_active_effect(null);
try {
if (get_setters(node).includes(prop2)) {
node[prop2] = value;
} else {
set_attribute(node, prop2, value);
}
} finally {
set_active_reaction(previous_reaction);
set_active_effect(previous_effect);
}
}
function set_attributes(element2, prev, next2, css_hash, preserve_attribute_case = false, is_custom_element = false, skip_warning = false) {
var current = prev || {};
var is_option_element = element2.tagName === "OPTION";
for (var key in prev) {
if (!(key in next2)) {
next2[key] = null;
}
}
if (css_hash !== void 0) {
next2.class = next2.class ? next2.class + " " + css_hash : css_hash;
}
var setters = get_setters(element2);
var attributes = (
/** @type {Record<string, unknown>} **/
element2.__attributes ?? (element2.__attributes = {})
);
for (const key2 in next2) {
let value = next2[key2];
if (is_option_element && key2 === "value" && value == null) {
element2.value = element2.__value = "";
current[key2] = value;
continue;
}
var prev_value = current[key2];
if (value === prev_value) continue;
current[key2] = value;
var prefix = key2[0] + key2[1];
if (prefix === "$$") continue;
if (prefix === "on") {
const opts = {};
const event_handle_key = "$$" + key2;
let event_name = key2.slice(2);
var delegated = is_delegated(event_name);
if (is_capture_event(event_name)) {
event_name = event_name.slice(0, -7);
opts.capture = true;
}
if (!delegated && prev_value) {
if (value != null) continue;
element2.removeEventListener(event_name, current[event_handle_key], opts);
current[event_handle_key] = null;
}
if (value != null) {
if (!delegated) {
let handle = function(evt) {
current[key2].call(this, evt);
};
current[event_handle_key] = create_event(event_name, element2, handle, opts);
} else {
element2[`__${event_name}`] = value;
delegate([event_name]);
}
}
} else if (key2 === "style" && value != null) {
element2.style.cssText = value + "";
} else if (key2 === "autofocus") {
autofocus(
/** @type {HTMLElement} */
element2,
Boolean(value)
);
} else if (key2 === "__value" || key2 === "value" && value != null) {
element2.value = element2[key2] = element2.__value = value;
} else {
var name = key2;
if (!preserve_attribute_case) {
name = normalize_attribute(name);
}
if (value == null && !is_custom_element) {
attributes[key2] = null;
element2.removeAttribute(key2);
} else if (setters.includes(name) && (is_custom_element || typeof value !== "string")) {
element2[name] = value;
} else if (typeof value !== "function") {
if (hydrating && (name === "src" || name === "href" || name === "srcset")) {
if (!skip_warning) check_src_in_dev_hydration(element2, name, value ?? "");
} else {
set_attribute(element2, name, value);
}
}
}
if (key2 === "style" && "__styles" in element2) {
element2.__styles = {};
}
}
return current;
}
var setters_cache = /* @__PURE__ */ new Map();
function get_setters(element2) {
var setters = setters_cache.get(element2.nodeName);
if (setters) return setters;
setters_cache.set(element2.nodeName, setters = []);
var descriptors;
var proto = get_prototype_of(element2);
var element_proto = Element.prototype;
while (element_proto !== proto) {
descriptors = get_descriptors(proto);
for (var key in descriptors) {
if (descriptors[key].set) {
setters.push(key);
}
}
proto = get_prototype_of(proto);
}
return setters;
}
function check_src_in_dev_hydration(element2, attribute, value) {
if (!DEV) return;
if (attribute === "srcset" && srcset_url_equal(element2, value)) return;
if (src_url_equal(element2.getAttribute(attribute) ?? "", value)) return;
hydration_attribute_changed(
attribute,
element2.outerHTML.replace(element2.innerHTML, element2.innerHTML && "..."),
String(value)
);
}
function src_url_equal(element_src, url) {
if (element_src === url) return true;
return new URL(element_src, document.baseURI).href === new URL(url, document.baseURI).href;
}
function split_srcset(srcset) {
return srcset.split(",").map((src) => src.trim().split(" ").filter(Boolean));
}
function srcset_url_equal(element2, srcset) {
var element_urls = split_srcset(element2.srcset);
var urls = split_srcset(srcset);
return urls.length === element_urls.length && urls.every(
([url, width], i) => width === element_urls[i][1] && // We need to test both ways because Vite will create an a full URL with
// `new URL(asset, import.meta.url).href` for the client when `base: './'`, and the
// relative URLs inside srcset are not automatically resolved to absolute URLs by
// browsers (in contrast to img.src). This means both SSR and DOM code could
// contain relative or absolute URLs.
(src_url_equal(element_urls[i][0], url) || src_url_equal(url, element_urls[i][0]))
);
}
function handle_lazy_img(element2) {
if (!hydrating && element2.loading === "lazy") {
var src = element2.src;
element2[LOADING_ATTR_SYMBOL] = null;
element2.loading = "eager";
element2.removeAttribute("src");
requestAnimationFrame(() => {
if (element2[LOADING_ATTR_SYMBOL] !== "eager") {
element2.loading = "lazy";
}
element2.src = src;
});
}
}
// node_modules/svelte/src/internal/client/dom/elements/class.js
function set_svg_class(dom, value) {
var prev_class_name = dom.__className;
var next_class_name = to_class(value);
if (hydrating && dom.getAttribute("class") === next_class_name) {
dom.__className = next_class_name;
} else if (prev_class_name !== next_class_name || hydrating && dom.getAttribute("class") !== next_class_name) {
if (next_class_name === "") {
dom.removeAttribute("class");
} else {
dom.setAttribute("class", next_class_name);
}
dom.__className = next_class_name;
}
}
function set_mathml_class(dom, value) {
var prev_class_name = dom.__className;
var next_class_name = to_class(value);
if (hydrating && dom.getAttribute("class") === next_class_name) {
dom.__className = next_class_name;
} else if (prev_class_name !== next_class_name || hydrating && dom.getAttribute("class") !== next_class_name) {
if (next_class_name === "") {
dom.removeAttribute("class");
} else {
dom.setAttribute("class", next_class_name);
}
dom.__className = next_class_name;
}
}
function set_class(dom, value) {
var prev_class_name = dom.__className;
var next_class_name = to_class(value);
if (hydrating && dom.className === next_class_name) {
dom.__className = next_class_name;
} else if (prev_class_name !== next_class_name || hydrating && dom.className !== next_class_name) {
if (value == null) {
dom.removeAttribute("class");
} else {
dom.className = next_class_name;
}
dom.__className = next_class_name;
}
}
function to_class(value) {
return value == null ? "" : value;
}
function toggle_class(dom, class_name, value) {
if (value) {
if (dom.classList.contains(class_name)) return;
dom.classList.add(class_name);
} else {
if (!dom.classList.contains(class_name)) return;
dom.classList.remove(class_name);
}
}
// node_modules/svelte/src/internal/client/dom/elements/style.js
function set_style(dom, key, value, important) {
var styles = dom.__styles ?? (dom.__styles = {});
if (styles[key] === value) {
return;
}
styles[key] = value;
if (value == null) {
dom.style.removeProperty(key);
} else {
dom.style.setProperty(key, value, important ? "important" : "");
}
}
// node_modules/svelte/src/internal/client/timing.js
var now = BROWSER ? () => performance.now() : () => Date.now();
var raf = {
// don't access requestAnimationFrame eagerly outside method
// this allows basic testing of user code without JSDOM
// bunder will eval and remove ternary when the user's app is built
tick: (
/** @param {any} _ */
(_) => (BROWSER ? requestAnimationFrame : noop)(_)
),
now: () => now(),
tasks: /* @__PURE__ */ new Set()
};
// node_modules/svelte/src/internal/client/loop.js
function run_tasks(now2) {
raf.tasks.forEach((task) => {
if (!task.c(now2)) {
raf.tasks.delete(task);
task.f();
}
});
if (raf.tasks.size !== 0) {
raf.tick(run_tasks);
}
}
function loop(callback) {
let task;
if (raf.tasks.size === 0) {
raf.tick(run_tasks);
}
return {
promise: new Promise((fulfill) => {
raf.tasks.add(task = { c: callback, f: fulfill });
}),
abort() {
raf.tasks.delete(task);
}
};
}
// node_modules/svelte/src/internal/client/dom/elements/transitions.js
function dispatch_event(element2, type) {
element2.dispatchEvent(new CustomEvent(type));
}
function css_property_to_camelcase(style) {
if (style === "float") return "cssFloat";
if (style === "offset") return "cssOffset";
if (style.startsWith("--")) return style;
const parts = style.split("-");
if (parts.length === 1) return parts[0];
return parts[0] + parts.slice(1).map(
/** @param {any} word */
(word) => word[0].toUpperCase() + word.slice(1)
).join("");
}
function css_to_keyframe(css) {
const keyframe = {};
const parts = css.split(";");
for (const part of parts) {
const [property, value] = part.split(":");
if (!property || value === void 0) break;
const formatted_property = css_property_to_camelcase(property.trim());
keyframe[formatted_property] = value.trim();
}
return keyframe;
}
var linear = (t) => t;
function animation(element2, get_fn, get_params) {
var item = (
/** @type {EachItem} */
current_each_item
);
var from;
var to;
var animation2;
var original_styles = null;
item.a ?? (item.a = {
element: element2,
measure() {
from = this.element.getBoundingClientRect();
},
apply() {
animation2 == null ? void 0 : animation2.abort();
to = this.element.getBoundingClientRect();
if (from.left !== to.left || from.right !== to.right || from.top !== to.top || from.bottom !== to.bottom) {
const options = get_fn()(this.element, { from, to }, get_params == null ? void 0 : get_params());
animation2 = animate(this.element, options, void 0, 1, () => {
animation2 == null ? void 0 : animation2.abort();
animation2 = void 0;
});
}
},
fix() {
if (element2.getAnimations().length) return;
var { position, width, height } = getComputedStyle(element2);
if (position !== "absolute" && position !== "fixed") {
var style = (
/** @type {HTMLElement | SVGElement} */
element2.style
);
original_styles = {
position: style.position,
width: style.width,
height: style.height,
transform: style.transform
};
style.position = "absolute";
style.width = width;
style.height = height;
var to2 = element2.getBoundingClientRect();
if (from.left !== to2.left || from.top !== to2.top) {
var transform = `translate(${from.left - to2.left}px, ${from.top - to2.top}px)`;
style.transform = style.transform ? `${style.transform} ${transform}` : transform;
}
}
},
unfix() {
if (original_styles) {
var style = (
/** @type {HTMLElement | SVGElement} */
element2.style
);
style.position = original_styles.position;
style.width = original_styles.width;
style.height = original_styles.height;
style.transform = original_styles.transform;
}
}
});
item.a.element = element2;
}
function transition(flags, element2, get_fn, get_params) {
var is_intro = (flags & TRANSITION_IN) !== 0;
var is_outro = (flags & TRANSITION_OUT) !== 0;
var is_both = is_intro && is_outro;
var is_global = (flags & TRANSITION_GLOBAL) !== 0;
var direction = is_both ? "both" : is_intro ? "in" : "out";
var current_options;
var inert = element2.inert;
var intro;
var outro;
function get_options() {
var previous_reaction = active_reaction;
var previous_effect = active_effect;
set_active_reaction(null);
set_active_effect(null);
try {
return current_options ?? (current_options = get_fn()(element2, (get_params == null ? void 0 : get_params()) ?? /** @type {P} */
{}, {
direction
}));
} finally {
set_active_reaction(previous_reaction);
set_active_effect(previous_effect);
}
}
var transition2 = {
is_global,
in() {
var _a;
element2.inert = inert;
if (!is_intro) {
outro == null ? void 0 : outro.abort();
(_a = outro == null ? void 0 : outro.reset) == null ? void 0 : _a.call(outro);
return;
}
if (!is_outro) {
intro == null ? void 0 : intro.abort();
}
dispatch_event(element2, "introstart");
intro = animate(element2, get_options(), outro, 1, () => {
dispatch_event(element2, "introend");
intro == null ? void 0 : intro.abort();
intro = current_options = void 0;
});
},
out(fn) {
if (!is_outro) {
fn == null ? void 0 : fn();
current_options = void 0;
return;
}
element2.inert = true;
dispatch_event(element2, "outrostart");
outro = animate(element2, get_options(), intro, 0, () => {
dispatch_event(element2, "outroend");
fn == null ? void 0 : fn();
});
},
stop: () => {
intro == null ? void 0 : intro.abort();
outro == null ? void 0 : outro.abort();
}
};
var e = (
/** @type {Effect} */
active_effect
);
(e.transitions ?? (e.transitions = [])).push(transition2);
if (is_intro && should_intro) {
var run2 = is_global;
if (!run2) {
var block2 = (
/** @type {Effect | null} */
e.parent
);
while (block2 && (block2.f & EFFECT_TRANSPARENT) !== 0) {
while (block2 = block2.parent) {
if ((block2.f & BLOCK_EFFECT) !== 0) break;
}
}
run2 = !block2 || (block2.f & EFFECT_RAN) !== 0;
}
if (run2) {
effect(() => {
untrack(() => transition2.in());
});
}
}
}
function animate(element2, options, counterpart, t2, on_finish) {
var is_intro = t2 === 1;
if (is_function(options)) {
var a;
var aborted = false;
queue_micro_task(() => {
if (aborted) return;
var o = options({ direction: is_intro ? "in" : "out" });
a = animate(element2, o, counterpart, t2, on_finish);
});
return {
abort: () => {
aborted = true;
a == null ? void 0 : a.abort();
},
deactivate: () => a.deactivate(),
reset: () => a.reset(),
t: () => a.t()
};
}
counterpart == null ? void 0 : counterpart.deactivate();
if (!(options == null ? void 0 : options.duration)) {
on_finish();
return {
abort: noop,
deactivate: noop,
reset: noop,
t: () => t2
};
}
const { delay = 0, css, tick: tick2, easing = linear } = options;
var keyframes = [];
if (is_intro && counterpart === void 0) {
if (tick2) {
tick2(0, 1);
}
if (css) {
var styles = css_to_keyframe(css(0, 1));
keyframes.push(styles, styles);
}
}
var get_t = () => 1 - t2;
var animation2 = element2.animate(keyframes, { duration: delay });
animation2.onfinish = () => {
var t1 = (counterpart == null ? void 0 : counterpart.t()) ?? 1 - t2;
counterpart == null ? void 0 : counterpart.abort();
var delta = t2 - t1;
var duration = (
/** @type {number} */
options.duration * Math.abs(delta)
);
var keyframes2 = [];
if (duration > 0) {
if (css) {
var n = Math.ceil(duration / (1e3 / 60));
for (var i = 0; i <= n; i += 1) {
var t = t1 + delta * easing(i / n);
var styles2 = css(t, 1 - t);
keyframes2.push(css_to_keyframe(styles2));
}
}
get_t = () => {
var time = (
/** @type {number} */
/** @type {globalThis.Animation} */
animation2.currentTime
);
return t1 + delta * easing(time / duration);
};
if (tick2) {
loop(() => {
if (animation2.playState !== "running") return false;
var t3 = get_t();
tick2(t3, 1 - t3);
return true;
});
}
}
animation2 = element2.animate(keyframes2, { duration, fill: "forwards" });
animation2.onfinish = () => {
get_t = () => t2;
tick2 == null ? void 0 : tick2(t2, 1 - t2);
on_finish();
};
};
return {
abort: () => {
if (animation2) {
animation2.cancel();
animation2.effect = null;
animation2.onfinish = noop;
}
},
deactivate: () => {
on_finish = noop;
},
reset: () => {
if (t2 === 0) {
tick2 == null ? void 0 : tick2(1, 0);
}
},
t: () => get_t()
};
}
// node_modules/svelte/src/internal/client/dom/elements/bindings/document.js
function bind_active_element(update2) {
listen(document, ["focusin", "focusout"], (event2) => {
if (event2 && event2.type === "focusout" && /** @type {FocusEvent} */
event2.relatedTarget) {
return;
}
update2(document.activeElement);
});
}
// node_modules/svelte/src/internal/client/dom/elements/bindings/input.js
function bind_value(input, get2, set2 = get2) {
var runes = is_runes();
listen_to_event_and_reset_event(input, "input", () => {
if (DEV && input.type === "checkbox") {
bind_invalid_checkbox_value();
}
var value = is_numberlike_input(input) ? to_number(input.value) : input.value;
set2(value);
if (runes && value !== (value = get2())) {
input.value = value ?? "";
}
});
render_effect(() => {
if (DEV && input.type === "checkbox") {
bind_invalid_checkbox_value();
}
var value = get2();
if (hydrating && input.defaultValue !== input.value) {
set2(is_numberlike_input(input) ? to_number(input.value) : input.value);
return;
}
if (is_numberlike_input(input) && value === to_number(input.value)) {
return;
}
if (input.type === "date" && !value && !input.value) {
return;
}
if (value !== input.value) {
input.value = value ?? "";
}
});
}
var pending = /* @__PURE__ */ new Set();
function bind_group(inputs, group_index, input, get2, set2 = get2) {
var is_checkbox = input.getAttribute("type") === "checkbox";
var binding_group = inputs;
let hydration_mismatch2 = false;
if (group_index !== null) {
for (var index2 of group_index) {
binding_group = binding_group[index2] ?? (binding_group[index2] = []);
}
}
binding_group.push(input);
listen_to_event_and_reset_event(
input,
"change",
() => {
var value = input.__value;
if (is_checkbox) {
value = get_binding_group_value(binding_group, value, input.checked);
}
set2(value);
},
// TODO better default value handling
() => set2(is_checkbox ? [] : null)
);
render_effect(() => {
var value = get2();
if (hydrating && input.defaultChecked !== input.checked) {
hydration_mismatch2 = true;
return;
}
if (is_checkbox) {
value = value || [];
input.checked = value.includes(input.__value);
} else {
input.checked = is(input.__value, value);
}
});
teardown(() => {
var index3 = binding_group.indexOf(input);
if (index3 !== -1) {
binding_group.splice(index3, 1);
}
});
if (!pending.has(binding_group)) {
pending.add(binding_group);
queue_micro_task(() => {
binding_group.sort((a, b) => a.compareDocumentPosition(b) === 4 ? -1 : 1);
pending.delete(binding_group);
});
}
queue_micro_task(() => {
if (hydration_mismatch2) {
var value;
if (is_checkbox) {
value = get_binding_group_value(binding_group, value, input.checked);
} else {
var hydration_input = binding_group.find((input2) => input2.checked);
value = hydration_input == null ? void 0 : hydration_input.__value;
}
set2(value);
}
});
}
function bind_checked(input, get2, set2 = get2) {
listen_to_event_and_reset_event(input, "change", () => {
var value = input.checked;
set2(value);
});
if (get2() == void 0) {
set2(false);
}
render_effect(() => {
var value = get2();
input.checked = Boolean(value);
});
}
function get_binding_group_value(group, __value, checked) {
var value = /* @__PURE__ */ new Set();
for (var i = 0; i < group.length; i += 1) {
if (group[i].checked) {
value.add(group[i].__value);
}
}
if (!checked) {
value.delete(__value);
}
return Array.from(value);
}
function is_numberlike_input(input) {
var type = input.type;
return type === "number" || type === "range";
}
function to_number(value) {
return value === "" ? null : +value;
}
function bind_files(input, get2, set2 = get2) {
listen_to_event_and_reset_event(input, "change", () => {
set2(input.files);
});
render_effect(() => {
input.files = get2();
});
}
// node_modules/svelte/src/internal/client/dom/elements/bindings/media.js
function time_ranges_to_array(ranges) {
var array = [];
for (var i = 0; i < ranges.length; i += 1) {
array.push({ start: ranges.start(i), end: ranges.end(i) });
}
return array;
}
function bind_current_time(media, get2, set2 = get2) {
var raf_id;
var value;
var callback = () => {
cancelAnimationFrame(raf_id);
if (!media.paused) {
raf_id = requestAnimationFrame(callback);
}
var next_value = media.currentTime;
if (value !== next_value) {
set2(value = next_value);
}
};
raf_id = requestAnimationFrame(callback);
media.addEventListener("timeupdate", callback);
render_effect(() => {
var next_value = Number(get2());
if (value !== next_value && !isNaN(
/** @type {any} */
next_value
)) {
media.currentTime = value = next_value;
}
});
teardown(() => cancelAnimationFrame(raf_id));
}
function bind_buffered(media, set2) {
listen(media, ["loadedmetadata", "progress"], () => set2(time_ranges_to_array(media.buffered)));
}
function bind_seekable(media, set2) {
listen(media, ["loadedmetadata"], () => set2(time_ranges_to_array(media.seekable)));
}
function bind_played(media, set2) {
listen(media, ["timeupdate"], () => set2(time_ranges_to_array(media.played)));
}
function bind_seeking(media, set2) {
listen(media, ["seeking", "seeked"], () => set2(media.seeking));
}
function bind_ended(media, set2) {
listen(media, ["timeupdate", "ended"], () => set2(media.ended));
}
function bind_ready_state(media, set2) {
listen(
media,
["loadedmetadata", "loadeddata", "canplay", "canplaythrough", "playing", "waiting", "emptied"],
() => set2(media.readyState)
);
}
function bind_playback_rate(media, get2, set2 = get2) {
effect(() => {
var value = Number(get2());
if (value !== media.playbackRate && !isNaN(value)) {
media.playbackRate = value;
}
});
effect(() => {
listen(media, ["ratechange"], () => {
set2(media.playbackRate);
});
});
}
function bind_paused(media, get2, set2 = get2) {
var paused = get2();
var update2 = () => {
if (paused !== media.paused) {
set2(paused = media.paused);
}
};
listen(media, ["play", "pause", "canplay"], update2, paused == null);
effect(() => {
if ((paused = !!get2()) !== media.paused) {
if (paused) {
media.pause();
} else {
media.play().catch(() => {
set2(paused = true);
});
}
}
});
}
function bind_volume(media, get2, set2 = get2) {
var callback = () => {
set2(media.volume);
};
if (get2() == null) {
callback();
}
listen(media, ["volumechange"], callback, false);
render_effect(() => {
var value = Number(get2());
if (value !== media.volume && !isNaN(value)) {
media.volume = value;
}
});
}
function bind_muted(media, get2, set2 = get2) {
var callback = () => {
set2(media.muted);
};
if (get2() == null) {
callback();
}
listen(media, ["volumechange"], callback, false);
render_effect(() => {
var value = !!get2();
if (media.muted !== value) media.muted = value;
});
}
// node_modules/svelte/src/internal/client/dom/elements/bindings/navigator.js
function bind_online(update2) {
listen(window, ["online", "offline"], () => {
update2(navigator.onLine);
});
}
// node_modules/svelte/src/internal/client/dom/elements/bindings/props.js
function bind_prop(props, prop2, value) {
var desc = get_descriptor(props, prop2);
if (desc && desc.set) {
props[prop2] = value;
teardown(() => {
props[prop2] = null;
});
}
}
// node_modules/svelte/src/internal/client/dom/elements/bindings/select.js
function select_option(select, value, mounting) {
if (select.multiple) {
return select_options(select, value);
}
for (var option of select.options) {
var option_value = get_option_value(option);
if (is(option_value, value)) {
option.selected = true;
return;
}
}
if (!mounting || value !== void 0) {
select.selectedIndex = -1;
}
}
function init_select(select, get_value) {
let mounting = true;
effect(() => {
if (get_value) {
select_option(select, untrack(get_value), mounting);
}
mounting = false;
var observer = new MutationObserver(() => {
var value = select.__value;
select_option(select, value);
});
observer.observe(select, {
// Listen to option element changes
childList: true,
subtree: true,
// because of <optgroup>
// Listen to option element value attribute changes
// (doesn't get notified of select value changes,
// because that property is not reflected as an attribute)
attributes: true,
attributeFilter: ["value"]
});
return () => {
observer.disconnect();
};
});
}
function bind_select_value(select, get2, set2 = get2) {
var mounting = true;
listen_to_event_and_reset_event(select, "change", () => {
var value;
if (select.multiple) {
value = [].map.call(select.querySelectorAll(":checked"), get_option_value);
} else {
var selected_option = select.querySelector(":checked");
value = selected_option && get_option_value(selected_option);
}
set2(value);
});
effect(() => {
var value = get2();
select_option(select, value, mounting);
if (mounting && value === void 0) {
var selected_option = select.querySelector(":checked");
if (selected_option !== null) {
value = get_option_value(selected_option);
set2(value);
}
}
select.__value = value;
mounting = false;
});
init_select(select);
}
function select_options(select, value) {
for (var option of select.options) {
option.selected = ~value.indexOf(get_option_value(option));
}
}
function get_option_value(option) {
if ("__value" in option) {
return option.__value;
} else {
return option.value;
}
}
// node_modules/svelte/src/internal/client/dom/elements/bindings/size.js
var _listeners, _observer, _options, _ResizeObserverSingleton_instances, getObserver_fn;
var _ResizeObserverSingleton = class _ResizeObserverSingleton {
/** @param {ResizeObserverOptions} options */
constructor(options) {
__privateAdd(this, _ResizeObserverSingleton_instances);
/** */
__privateAdd(this, _listeners, /* @__PURE__ */ new WeakMap());
/** @type {ResizeObserver | undefined} */
__privateAdd(this, _observer);
/** @type {ResizeObserverOptions} */
__privateAdd(this, _options);
__privateSet(this, _options, options);
}
/**
* @param {Element} element
* @param {(entry: ResizeObserverEntry) => any} listener
*/
observe(element2, listener) {
var listeners = __privateGet(this, _listeners).get(element2) || /* @__PURE__ */ new Set();
listeners.add(listener);
__privateGet(this, _listeners).set(element2, listeners);
__privateMethod(this, _ResizeObserverSingleton_instances, getObserver_fn).call(this).observe(element2, __privateGet(this, _options));
return () => {
var listeners2 = __privateGet(this, _listeners).get(element2);
listeners2.delete(listener);
if (listeners2.size === 0) {
__privateGet(this, _listeners).delete(element2);
__privateGet(this, _observer).unobserve(element2);
}
};
}
};
_listeners = new WeakMap();
_observer = new WeakMap();
_options = new WeakMap();
_ResizeObserverSingleton_instances = new WeakSet();
getObserver_fn = function() {
return __privateGet(this, _observer) ?? __privateSet(this, _observer, new ResizeObserver(
/** @param {any} entries */
(entries) => {
for (var entry of entries) {
_ResizeObserverSingleton.entries.set(entry.target, entry);
for (var listener of __privateGet(this, _listeners).get(entry.target) || []) {
listener(entry);
}
}
}
));
};
/** @static */
__publicField(_ResizeObserverSingleton, "entries", /* @__PURE__ */ new WeakMap());
var ResizeObserverSingleton = _ResizeObserverSingleton;
var resize_observer_content_box = new ResizeObserverSingleton({
box: "content-box"
});
var resize_observer_border_box = new ResizeObserverSingleton({
box: "border-box"
});
var resize_observer_device_pixel_content_box = new ResizeObserverSingleton({
box: "device-pixel-content-box"
});
function bind_resize_observer(element2, type, set2) {
var observer = type === "contentRect" || type === "contentBoxSize" ? resize_observer_content_box : type === "borderBoxSize" ? resize_observer_border_box : resize_observer_device_pixel_content_box;
var unsub = observer.observe(
element2,
/** @param {any} entry */
(entry) => set2(entry[type])
);
teardown(unsub);
}
function bind_element_size(element2, type, set2) {
var unsub = resize_observer_border_box.observe(element2, () => set2(element2[type]));
effect(() => {
untrack(() => set2(element2[type]));
return unsub;
});
}
// node_modules/svelte/src/internal/client/dom/elements/bindings/this.js
function is_bound_this(bound_value, element_or_component) {
return bound_value === element_or_component || (bound_value == null ? void 0 : bound_value[STATE_SYMBOL]) === element_or_component;
}
function bind_this(element_or_component = {}, update2, get_value, get_parts) {
effect(() => {
var old_parts;
var parts;
render_effect(() => {
old_parts = parts;
parts = (get_parts == null ? void 0 : get_parts()) || [];
untrack(() => {
if (element_or_component !== get_value(...parts)) {
update2(element_or_component, ...parts);
if (old_parts && is_bound_this(get_value(...old_parts), element_or_component)) {
update2(null, ...old_parts);
}
}
});
});
return () => {
queue_micro_task(() => {
if (parts && is_bound_this(get_value(...parts), element_or_component)) {
update2(null, ...parts);
}
});
};
});
return element_or_component;
}
// node_modules/svelte/src/internal/client/dom/elements/bindings/universal.js
function bind_content_editable(property, element2, get2, set2 = get2) {
element2.addEventListener("input", () => {
set2(element2[property]);
});
render_effect(() => {
var value = get2();
if (element2[property] !== value) {
if (value == null) {
var non_null_value = element2[property];
set2(non_null_value);
} else {
element2[property] = value + "";
}
}
});
}
function bind_property(property, event_name, element2, set2, get2) {
var handler = () => {
set2(element2[property]);
};
element2.addEventListener(event_name, handler);
if (get2) {
render_effect(() => {
element2[property] = get2();
});
} else {
handler();
}
if (element2 === document.body || element2 === window || element2 === document) {
teardown(() => {
element2.removeEventListener(event_name, handler);
});
}
}
function bind_focused(element2, set2) {
listen(element2, ["focus", "blur"], () => {
set2(element2 === document.activeElement);
});
}
// node_modules/svelte/src/internal/client/dom/elements/bindings/window.js
function bind_window_scroll(type, get2, set2 = get2) {
var is_scrolling_x = type === "x";
var target_handler = () => without_reactive_context(() => {
scrolling = true;
clearTimeout(timeout);
timeout = setTimeout(clear, 100);
set2(window[is_scrolling_x ? "scrollX" : "scrollY"]);
});
addEventListener("scroll", target_handler, {
passive: true
});
var scrolling = false;
var timeout;
var clear = () => {
scrolling = false;
};
var first = true;
render_effect(() => {
var latest_value = get2();
if (first) {
first = false;
} else if (!scrolling && latest_value != null) {
scrolling = true;
clearTimeout(timeout);
if (is_scrolling_x) {
scrollTo(latest_value, window.scrollY);
} else {
scrollTo(window.scrollX, latest_value);
}
timeout = setTimeout(clear, 100);
}
});
effect(target_handler);
teardown(() => {
removeEventListener("scroll", target_handler);
});
}
function bind_window_size(type, set2) {
listen(window, ["resize"], () => without_reactive_context(() => set2(window[type])));
}
// node_modules/svelte/src/internal/client/dom/legacy/lifecycle.js
function init(immutable = false) {
const context = (
/** @type {ComponentContextLegacy} */
component_context
);
const callbacks = context.l.u;
if (!callbacks) return;
let props = () => deep_read_state(context.s);
if (immutable) {
let version = 0;
let prev = (
/** @type {Record<string, any>} */
{}
);
const d = derived(() => {
let changed = false;
const props2 = context.s;
for (const key in props2) {
if (props2[key] !== prev[key]) {
prev[key] = props2[key];
changed = true;
}
}
if (changed) version++;
return version;
});
props = () => get(d);
}
if (callbacks.b.length) {
user_pre_effect(() => {
observe_all(context, props);
run_all(callbacks.b);
});
}
user_effect(() => {
const fns = untrack(() => callbacks.m.map(run));
return () => {
for (const fn of fns) {
if (typeof fn === "function") {
fn();
}
}
};
});
if (callbacks.a.length) {
user_effect(() => {
observe_all(context, props);
run_all(callbacks.a);
});
}
}
function observe_all(context, props) {
if (context.l.s) {
for (const signal of context.l.s) get(signal);
}
props();
}
// node_modules/svelte/src/internal/client/dom/legacy/misc.js
function reactive_import(fn) {
var s = source(0);
return function() {
if (arguments.length === 1) {
set(s, get(s) + 1);
return arguments[0];
} else {
get(s);
return fn();
}
};
}
function bubble_event($$props, event2) {
var _a;
var events = (
/** @type {Record<string, Function[] | Function>} */
(_a = $$props.$$events) == null ? void 0 : _a[event2.type]
);
var callbacks = is_array(events) ? events.slice() : events == null ? [] : [events];
for (var fn of callbacks) {
fn.call(this, event2);
}
}
function add_legacy_event_listener($$props, event_name, event_callback) {
var _a;
$$props.$$events || ($$props.$$events = {});
(_a = $$props.$$events)[event_name] || (_a[event_name] = []);
$$props.$$events[event_name].push(event_callback);
}
function update_legacy_props($$new_props) {
for (var key in $$new_props) {
if (key in this) {
this[key] = $$new_props[key];
}
}
}
// node_modules/svelte/src/index-client.js
function onMount(fn) {
if (component_context === null) {
lifecycle_outside_component("onMount");
}
if (legacy_mode_flag && component_context.l !== null) {
init_update_callbacks(component_context).m.push(fn);
} else {
user_effect(() => {
const cleanup = untrack(fn);
if (typeof cleanup === "function") return (
/** @type {() => void} */
cleanup
);
});
}
}
function onDestroy(fn) {
if (component_context === null) {
lifecycle_outside_component("onDestroy");
}
onMount(() => () => untrack(fn));
}
function create_custom_event(type, detail, { bubbles = false, cancelable = false } = {}) {
return new CustomEvent(type, { detail, bubbles, cancelable });
}
function createEventDispatcher() {
const active_component_context = component_context;
if (active_component_context === null) {
lifecycle_outside_component("createEventDispatcher");
}
return (type, detail, options) => {
var _a;
const events = (
/** @type {Record<string, Function | Function[]>} */
(_a = active_component_context.s.$$events) == null ? void 0 : _a[
/** @type {any} */
type
]
);
if (events) {
const callbacks = is_array(events) ? events.slice() : [events];
const event2 = create_custom_event(
/** @type {string} */
type,
detail,
options
);
for (const fn of callbacks) {
fn.call(active_component_context.x, event2);
}
return !event2.defaultPrevented;
}
return true;
};
}
function beforeUpdate(fn) {
if (component_context === null) {
lifecycle_outside_component("beforeUpdate");
}
if (component_context.l === null) {
lifecycle_legacy_only("beforeUpdate");
}
init_update_callbacks(component_context).b.push(fn);
}
function afterUpdate(fn) {
if (component_context === null) {
lifecycle_outside_component("afterUpdate");
}
if (component_context.l === null) {
lifecycle_legacy_only("afterUpdate");
}
init_update_callbacks(component_context).a.push(fn);
}
function init_update_callbacks(context) {
var l = (
/** @type {ComponentContextLegacy} */
context.l
);
return l.u ?? (l.u = { a: [], b: [], m: [] });
}
function flushSync(fn) {
flush_sync(fn);
}
// node_modules/svelte/src/store/utils.js
function subscribe_to_store(store, run2, invalidate) {
if (store == null) {
run2(void 0);
if (invalidate) invalidate(void 0);
return noop;
}
const unsub = untrack(
() => store.subscribe(
run2,
// @ts-expect-error
invalidate
)
);
return unsub.unsubscribe ? () => unsub.unsubscribe() : unsub;
}
// node_modules/svelte/src/internal/client/reactivity/store.js
var is_store_binding = false;
function store_get(store, store_name, stores) {
const entry = stores[store_name] ?? (stores[store_name] = {
store: null,
source: mutable_source(void 0),
unsubscribe: noop
});
if (entry.store !== store) {
entry.unsubscribe();
entry.store = store ?? null;
if (store == null) {
entry.source.v = void 0;
entry.unsubscribe = noop;
} else {
var is_synchronous_callback = true;
entry.unsubscribe = subscribe_to_store(store, (v) => {
if (is_synchronous_callback) {
entry.source.v = v;
} else {
set(entry.source, v);
}
});
is_synchronous_callback = false;
}
}
return get(entry.source);
}
function store_unsub(store, store_name, stores) {
let entry = stores[store_name];
if (entry && entry.store !== store) {
entry.unsubscribe();
entry.unsubscribe = noop;
}
return store;
}
function store_set(store, value) {
store.set(value);
return value;
}
function invalidate_store(stores, store_name) {
var entry = stores[store_name];
if (entry.store !== null) {
store_set(entry.store, entry.source.v);
}
}
function setup_stores() {
const stores = {};
teardown(() => {
for (var store_name in stores) {
const ref = stores[store_name];
ref.unsubscribe();
}
});
return stores;
}
function store_mutate(store, expression, new_value) {
store.set(new_value);
return expression;
}
function update_store(store, store_value, d = 1) {
store.set(store_value + d);
return store_value;
}
function update_pre_store(store, store_value, d = 1) {
const value = store_value + d;
store.set(value);
return value;
}
function mark_store_binding() {
is_store_binding = true;
}
function capture_store_binding(fn) {
var previous_is_store_binding = is_store_binding;
try {
is_store_binding = false;
return [fn(), is_store_binding];
} finally {
is_store_binding = previous_is_store_binding;
}
}
// node_modules/svelte/src/internal/client/reactivity/props.js
function update_prop(fn, d = 1) {
const value = fn();
fn(value + d);
return value;
}
function update_pre_prop(fn, d = 1) {
const value = fn() + d;
fn(value);
return value;
}
var rest_props_handler = {
get(target, key) {
if (target.exclude.includes(key)) return;
return target.props[key];
},
set(target, key) {
if (DEV) {
props_rest_readonly(`${target.name}.${String(key)}`);
}
return false;
},
getOwnPropertyDescriptor(target, key) {
if (target.exclude.includes(key)) return;
if (key in target.props) {
return {
enumerable: true,
configurable: true,
value: target.props[key]
};
}
},
has(target, key) {
if (target.exclude.includes(key)) return false;
return key in target.props;
},
ownKeys(target) {
return Reflect.ownKeys(target.props).filter((key) => !target.exclude.includes(key));
}
};
function rest_props(props, exclude, name) {
return new Proxy(
DEV ? { props, exclude, name, other: {}, to_proxy: [] } : { props, exclude },
rest_props_handler
);
}
var legacy_rest_props_handler = {
get(target, key) {
if (target.exclude.includes(key)) return;
get(target.version);
return key in target.special ? target.special[key]() : target.props[key];
},
set(target, key, value) {
if (!(key in target.special)) {
target.special[key] = prop(
{
get [key]() {
return target.props[key];
}
},
/** @type {string} */
key,
PROPS_IS_UPDATED
);
}
target.special[key](value);
update(target.version);
return true;
},
getOwnPropertyDescriptor(target, key) {
if (target.exclude.includes(key)) return;
if (key in target.props) {
return {
enumerable: true,
configurable: true,
value: target.props[key]
};
}
},
deleteProperty(target, key) {
if (target.exclude.includes(key)) return true;
target.exclude.push(key);
update(target.version);
return true;
},
has(target, key) {
if (target.exclude.includes(key)) return false;
return key in target.props;
},
ownKeys(target) {
return Reflect.ownKeys(target.props).filter((key) => !target.exclude.includes(key));
}
};
function legacy_rest_props(props, exclude) {
return new Proxy({ props, exclude, special: {}, version: source(0) }, legacy_rest_props_handler);
}
var spread_props_handler = {
get(target, key) {
let i = target.props.length;
while (i--) {
let p = target.props[i];
if (is_function(p)) p = p();
if (typeof p === "object" && p !== null && key in p) return p[key];
}
},
set(target, key, value) {
let i = target.props.length;
while (i--) {
let p = target.props[i];
if (is_function(p)) p = p();
const desc = get_descriptor(p, key);
if (desc && desc.set) {
desc.set(value);
return true;
}
}
return false;
},
getOwnPropertyDescriptor(target, key) {
let i = target.props.length;
while (i--) {
let p = target.props[i];
if (is_function(p)) p = p();
if (typeof p === "object" && p !== null && key in p) {
const descriptor = get_descriptor(p, key);
if (descriptor && !descriptor.configurable) {
descriptor.configurable = true;
}
return descriptor;
}
}
},
has(target, key) {
if (key === STATE_SYMBOL || key === LEGACY_PROPS) return false;
for (let p of target.props) {
if (is_function(p)) p = p();
if (p != null && key in p) return true;
}
return false;
},
ownKeys(target) {
const keys = [];
for (let p of target.props) {
if (is_function(p)) p = p();
for (const key in p) {
if (!keys.includes(key)) keys.push(key);
}
}
return keys;
}
};
function spread_props(...props) {
return new Proxy({ props }, spread_props_handler);
}
function with_parent_branch(fn) {
var effect2 = active_effect;
var previous_effect = active_effect;
while (effect2 !== null && (effect2.f & (BRANCH_EFFECT | ROOT_EFFECT)) === 0) {
effect2 = effect2.parent;
}
try {
set_active_effect(effect2);
return fn();
} finally {
set_active_effect(previous_effect);
}
}
function prop(props, key, flags, fallback2) {
var _a;
var immutable = (flags & PROPS_IS_IMMUTABLE) !== 0;
var runes = !legacy_mode_flag || (flags & PROPS_IS_RUNES) !== 0;
var bindable = (flags & PROPS_IS_BINDABLE) !== 0;
var lazy = (flags & PROPS_IS_LAZY_INITIAL) !== 0;
var is_store_sub = false;
var prop_value;
if (bindable) {
[prop_value, is_store_sub] = capture_store_binding(() => (
/** @type {V} */
props[key]
));
} else {
prop_value = /** @type {V} */
props[key];
}
var is_entry_props = STATE_SYMBOL in props || LEGACY_PROPS in props;
var setter = ((_a = get_descriptor(props, key)) == null ? void 0 : _a.set) ?? (is_entry_props && bindable && key in props ? (v) => props[key] = v : void 0);
var fallback_value = (
/** @type {V} */
fallback2
);
var fallback_dirty = true;
var fallback_used = false;
var get_fallback = () => {
fallback_used = true;
if (fallback_dirty) {
fallback_dirty = false;
if (lazy) {
fallback_value = untrack(
/** @type {() => V} */
fallback2
);
} else {
fallback_value = /** @type {V} */
fallback2;
}
}
return fallback_value;
};
if (prop_value === void 0 && fallback2 !== void 0) {
if (setter && runes) {
props_invalid_value(key);
}
prop_value = get_fallback();
if (setter) setter(prop_value);
}
var getter;
if (runes) {
getter = () => {
var value = (
/** @type {V} */
props[key]
);
if (value === void 0) return get_fallback();
fallback_dirty = true;
fallback_used = false;
return value;
};
} else {
var derived_getter = with_parent_branch(
() => (immutable ? derived : derived_safe_equal)(() => (
/** @type {V} */
props[key]
))
);
derived_getter.f |= LEGACY_DERIVED_PROP;
getter = () => {
var value = get(derived_getter);
if (value !== void 0) fallback_value = /** @type {V} */
void 0;
return value === void 0 ? fallback_value : value;
};
}
if ((flags & PROPS_IS_UPDATED) === 0) {
return getter;
}
if (setter) {
var legacy_parent = props.$$legacy;
return function(value, mutation) {
if (arguments.length > 0) {
if (!runes || !mutation || legacy_parent || is_store_sub) {
setter(mutation ? getter() : value);
}
return value;
} else {
return getter();
}
};
}
var from_child = false;
var was_from_child = false;
var inner_current_value = mutable_source(prop_value);
var current_value = with_parent_branch(
() => derived(() => {
var parent_value = getter();
var child_value = get(inner_current_value);
if (from_child) {
from_child = false;
was_from_child = true;
return child_value;
}
was_from_child = false;
return inner_current_value.v = parent_value;
})
);
if (!immutable) current_value.equals = safe_equals;
return function(value, mutation) {
if (captured_signals !== null) {
from_child = was_from_child;
getter();
get(inner_current_value);
}
if (arguments.length > 0) {
const new_value = mutation ? get(current_value) : runes && bindable ? proxy(value) : value;
if (!current_value.equals(new_value)) {
from_child = true;
set(inner_current_value, new_value);
if (fallback_used && fallback_value !== void 0) {
fallback_value = new_value;
}
untrack(() => get(current_value));
}
return value;
}
return get(current_value);
};
}
// node_modules/svelte/src/internal/client/validate.js
function validate_each_keys(collection, key_fn) {
render_effect(() => {
const keys = /* @__PURE__ */ new Map();
const maybe_array = collection();
const array = is_array(maybe_array) ? maybe_array : maybe_array == null ? [] : Array.from(maybe_array);
const length = array.length;
for (let i = 0; i < length; i++) {
const key = key_fn(array[i], i);
if (keys.has(key)) {
const a = String(keys.get(key));
const b = String(i);
let k = String(key);
if (k.startsWith("[object ")) k = null;
each_key_duplicate(a, b, k);
}
keys.set(key, i);
}
});
}
function validate_prop_bindings($$props, bindable, exports, component2) {
var _a;
for (const key in $$props) {
var setter = (_a = get_descriptor($$props, key)) == null ? void 0 : _a.set;
var name = component2.name;
if (setter) {
if (exports.includes(key)) {
bind_invalid_export(component2[FILENAME], key, name);
}
if (!bindable.includes(key)) {
bind_not_bindable(key, component2[FILENAME], name);
}
}
}
}
function validate_binding(binding, get_object, get_property, line, column) {
var _a;
var warned = false;
var filename = (_a = dev_current_component_function) == null ? void 0 : _a[FILENAME];
render_effect(() => {
if (warned) return;
var [object, is_store_sub] = capture_store_binding(get_object);
if (is_store_sub) return;
var property = get_property();
var ran = false;
var effect2 = render_effect(() => {
if (ran) return;
object[property];
});
ran = true;
if (effect2.deps === null) {
var location = `${filename}:${line}:${column}`;
binding_property_non_reactive(binding, location);
warned = true;
}
});
}
// node_modules/svelte/src/internal/client/dom/elements/custom-element.js
var SvelteElement;
if (typeof HTMLElement === "function") {
SvelteElement = class extends HTMLElement {
/**
* @param {*} $$componentCtor
* @param {*} $$slots
* @param {*} use_shadow_dom
*/
constructor($$componentCtor, $$slots, use_shadow_dom) {
super();
/** The Svelte component constructor */
__publicField(this, "$$ctor");
/** Slots */
__publicField(this, "$$s");
/** @type {any} The Svelte component instance */
__publicField(this, "$$c");
/** Whether or not the custom element is connected */
__publicField(this, "$$cn", false);
/** @type {Record<string, any>} Component props data */
__publicField(this, "$$d", {});
/** `true` if currently in the process of reflecting component props back to attributes */
__publicField(this, "$$r", false);
/** @type {Record<string, CustomElementPropDefinition>} Props definition (name, reflected, type etc) */
__publicField(this, "$$p_d", {});
/** @type {Record<string, EventListenerOrEventListenerObject[]>} Event listeners */
__publicField(this, "$$l", {});
/** @type {Map<EventListenerOrEventListenerObject, Function>} Event listener unsubscribe functions */
__publicField(this, "$$l_u", /* @__PURE__ */ new Map());
/** @type {any} The managed render effect for reflecting attributes */
__publicField(this, "$$me");
this.$$ctor = $$componentCtor;
this.$$s = $$slots;
if (use_shadow_dom) {
this.attachShadow({ mode: "open" });
}
}
/**
* @param {string} type
* @param {EventListenerOrEventListenerObject} listener
* @param {boolean | AddEventListenerOptions} [options]
*/
addEventListener(type, listener, options) {
this.$$l[type] = this.$$l[type] || [];
this.$$l[type].push(listener);
if (this.$$c) {
const unsub = this.$$c.$on(type, listener);
this.$$l_u.set(listener, unsub);
}
super.addEventListener(type, listener, options);
}
/**
* @param {string} type
* @param {EventListenerOrEventListenerObject} listener
* @param {boolean | AddEventListenerOptions} [options]
*/
removeEventListener(type, listener, options) {
super.removeEventListener(type, listener, options);
if (this.$$c) {
const unsub = this.$$l_u.get(listener);
if (unsub) {
unsub();
this.$$l_u.delete(listener);
}
}
}
async connectedCallback() {
this.$$cn = true;
if (!this.$$c) {
let create_slot = function(name) {
return (anchor) => {
const slot2 = document.createElement("slot");
if (name !== "default") slot2.name = name;
append(anchor, slot2);
};
};
await Promise.resolve();
if (!this.$$cn || this.$$c) {
return;
}
const $$slots = {};
const existing_slots = get_custom_elements_slots(this);
for (const name of this.$$s) {
if (name in existing_slots) {
if (name === "default" && !this.$$d.children) {
this.$$d.children = create_slot(name);
$$slots.default = true;
} else {
$$slots[name] = create_slot(name);
}
}
}
for (const attribute of this.attributes) {
const name = this.$$g_p(attribute.name);
if (!(name in this.$$d)) {
this.$$d[name] = get_custom_element_value(name, attribute.value, this.$$p_d, "toProp");
}
}
for (const key in this.$$p_d) {
if (!(key in this.$$d) && this[key] !== void 0) {
this.$$d[key] = this[key];
delete this[key];
}
}
this.$$c = createClassComponent({
component: this.$$ctor,
target: this.shadowRoot || this,
props: {
...this.$$d,
$$slots,
$$host: this
}
});
this.$$me = effect_root(() => {
render_effect(() => {
var _a;
this.$$r = true;
for (const key of object_keys(this.$$c)) {
if (!((_a = this.$$p_d[key]) == null ? void 0 : _a.reflect)) continue;
this.$$d[key] = this.$$c[key];
const attribute_value = get_custom_element_value(
key,
this.$$d[key],
this.$$p_d,
"toAttribute"
);
if (attribute_value == null) {
this.removeAttribute(this.$$p_d[key].attribute || key);
} else {
this.setAttribute(this.$$p_d[key].attribute || key, attribute_value);
}
}
this.$$r = false;
});
});
for (const type in this.$$l) {
for (const listener of this.$$l[type]) {
const unsub = this.$$c.$on(type, listener);
this.$$l_u.set(listener, unsub);
}
}
this.$$l = {};
}
}
// We don't need this when working within Svelte code, but for compatibility of people using this outside of Svelte
// and setting attributes through setAttribute etc, this is helpful
/**
* @param {string} attr
* @param {string} _oldValue
* @param {string} newValue
*/
attributeChangedCallback(attr2, _oldValue, newValue) {
var _a;
if (this.$$r) return;
attr2 = this.$$g_p(attr2);
this.$$d[attr2] = get_custom_element_value(attr2, newValue, this.$$p_d, "toProp");
(_a = this.$$c) == null ? void 0 : _a.$set({ [attr2]: this.$$d[attr2] });
}
disconnectedCallback() {
this.$$cn = false;
Promise.resolve().then(() => {
if (!this.$$cn && this.$$c) {
this.$$c.$destroy();
this.$$me();
this.$$c = void 0;
}
});
}
/**
* @param {string} attribute_name
*/
$$g_p(attribute_name) {
return object_keys(this.$$p_d).find(
(key) => this.$$p_d[key].attribute === attribute_name || !this.$$p_d[key].attribute && key.toLowerCase() === attribute_name
) || attribute_name;
}
};
}
function get_custom_element_value(prop2, value, props_definition, transform) {
var _a;
const type = (_a = props_definition[prop2]) == null ? void 0 : _a.type;
value = type === "Boolean" && typeof value !== "boolean" ? value != null : value;
if (!transform || !props_definition[prop2]) {
return value;
} else if (transform === "toAttribute") {
switch (type) {
case "Object":
case "Array":
return value == null ? null : JSON.stringify(value);
case "Boolean":
return value ? "" : null;
case "Number":
return value == null ? null : value;
default:
return value;
}
} else {
switch (type) {
case "Object":
case "Array":
return value && JSON.parse(value);
case "Boolean":
return value;
// conversion already handled above
case "Number":
return value != null ? +value : value;
default:
return value;
}
}
}
function get_custom_elements_slots(element2) {
const result = {};
element2.childNodes.forEach((node) => {
result[
/** @type {Element} node */
node.slot || "default"
] = true;
});
return result;
}
function create_custom_element(Component, props_definition, slots, exports, use_shadow_dom, extend) {
let Class = class extends SvelteElement {
constructor() {
super(Component, slots, use_shadow_dom);
this.$$p_d = props_definition;
}
static get observedAttributes() {
return object_keys(props_definition).map(
(key) => (props_definition[key].attribute || key).toLowerCase()
);
}
};
object_keys(props_definition).forEach((prop2) => {
define_property(Class.prototype, prop2, {
get() {
return this.$$c && prop2 in this.$$c ? this.$$c[prop2] : this.$$d[prop2];
},
set(value) {
var _a;
value = get_custom_element_value(prop2, value, props_definition);
this.$$d[prop2] = value;
var component2 = this.$$c;
if (component2) {
var setter = (_a = get_descriptor(component2, prop2)) == null ? void 0 : _a.get;
if (setter) {
component2[prop2] = value;
} else {
component2.$set({ [prop2]: value });
}
}
}
});
});
exports.forEach((property) => {
define_property(Class.prototype, property, {
get() {
var _a;
return (_a = this.$$c) == null ? void 0 : _a[property];
}
});
});
if (extend) {
Class = extend(Class);
}
Component.element = /** @type {any} */
Class;
return Class;
}
// node_modules/svelte/src/escaping.js
var ATTR_REGEX = /[&"<]/g;
var CONTENT_REGEX = /[&<]/g;
function escape_html(value, is_attr) {
const str = String(value ?? "");
const pattern = is_attr ? ATTR_REGEX : CONTENT_REGEX;
pattern.lastIndex = 0;
let escaped = "";
let last = 0;
while (pattern.test(str)) {
const i = pattern.lastIndex - 1;
const ch = str[i];
escaped += str.substring(last, i) + (ch === "&" ? "&amp;" : ch === '"' ? "&quot;" : "&lt;");
last = i + 1;
}
return escaped + str.substring(last);
}
// node_modules/svelte/src/internal/shared/attributes.js
var replacements = {
translate: /* @__PURE__ */ new Map([
[true, "yes"],
[false, "no"]
])
};
function attr(name, value, is_boolean = false) {
if (value == null || !value && is_boolean || value === "" && name === "class") return "";
const normalized = name in replacements && replacements[name].get(value) || value;
const assignment = is_boolean ? "" : `="${escape_html(normalized, true)}"`;
return ` ${name}${assignment}`;
}
// node_modules/svelte/src/internal/shared/validate.js
function validate_void_dynamic_element(tag_fn) {
const tag = tag_fn();
if (tag && is_void(tag)) {
dynamic_void_element_content(tag);
}
}
function validate_dynamic_element_tag(tag_fn) {
const tag = tag_fn();
const is_string = typeof tag === "string";
if (tag && !is_string) {
svelte_element_invalid_this_value();
}
}
function validate_store(store, name) {
if (store != null && typeof store.subscribe !== "function") {
store_invalid_shape(name);
}
}
// node_modules/svelte/src/internal/client/dev/console-log.js
function log_if_contains_state(method, ...objects) {
untrack(() => {
try {
let has_state = false;
const transformed = [];
for (const obj of objects) {
if (obj && typeof obj === "object" && STATE_SYMBOL in obj) {
transformed.push(snapshot(obj, true));
has_state = true;
} else {
transformed.push(obj);
}
}
if (has_state) {
console_log_state(method);
console.log("%c[snapshot]", "color: grey", ...transformed);
}
} catch {
}
});
return objects;
}
export {
cleanup_styles,
add_locations,
hmr,
check_target,
legacy_api,
snapshot,
inspect,
await_block,
if_block,
key_block,
css_props,
index,
each,
html,
slot,
sanitize_slots,
snippet,
wrap_snippet,
createRawSnippet,
component,
element,
append_styles,
action,
remove_input_defaults,
set_value,
set_checked,
set_attribute,
set_xlink_attribute,
set_custom_element_data,
set_attributes,
handle_lazy_img,
set_svg_class,
set_mathml_class,
set_class,
toggle_class,
set_style,
raf,
loop,
animation,
transition,
bind_active_element,
bind_value,
bind_group,
bind_checked,
bind_files,
bind_current_time,
bind_buffered,
bind_seekable,
bind_played,
bind_seeking,
bind_ended,
bind_ready_state,
bind_playback_rate,
bind_paused,
bind_volume,
bind_muted,
bind_online,
bind_prop,
select_option,
init_select,
bind_select_value,
bind_resize_observer,
bind_element_size,
bind_this,
bind_content_editable,
bind_property,
bind_focused,
bind_window_scroll,
bind_window_size,
init,
reactive_import,
bubble_event,
add_legacy_event_listener,
update_legacy_props,
subscribe_to_store,
store_get,
store_unsub,
store_set,
invalidate_store,
setup_stores,
store_mutate,
update_store,
update_pre_store,
mark_store_binding,
update_prop,
update_pre_prop,
rest_props,
legacy_rest_props,
spread_props,
prop,
validate_each_keys,
validate_prop_bindings,
validate_binding,
create_custom_element,
attr,
validate_void_dynamic_element,
validate_dynamic_element_tag,
validate_store,
log_if_contains_state,
onMount,
onDestroy,
createEventDispatcher,
beforeUpdate,
afterUpdate,
flushSync
};
//# sourceMappingURL=chunk-XI64PIGS.js.map