Dry Run
Preview only
@@ -137,7 +149,7 @@
label={option.label}
selected={schedule === option.value}
on:click={() => {
- schedule = option.value;
+ onScheduleChange?.(option.value);
scheduleOpen = false;
}}
/>
@@ -164,7 +176,7 @@
label={mode.label}
selected={filterMode === mode.id}
on:click={() => {
- filterMode = mode.id;
+ onFilterModeChange?.(mode.id);
modeOpen = false;
}}
/>
diff --git a/src/routes/arr/[id]/upgrades/components/FilterSettings.svelte b/src/routes/arr/[id]/upgrades/components/FilterSettings.svelte
index d54c50a..9beda27 100644
--- a/src/routes/arr/[id]/upgrades/components/FilterSettings.svelte
+++ b/src/routes/arr/[id]/upgrades/components/FilterSettings.svelte
@@ -29,6 +29,11 @@
const debouncedQuery = searchStore.debouncedQuery;
export let filters: FilterConfig[] = [];
+ export let onFiltersChange: ((filters: FilterConfig[]) => void) | undefined = undefined;
+
+ function notifyChange() {
+ onFiltersChange?.(filters);
+ }
let showInfoModal = false;
@@ -62,6 +67,7 @@
expandedIds.delete(filterToDelete.id);
expandedIds = expandedIds;
alertStore.add('success', `Deleted "${filterToDelete.name}"`);
+ notifyChange();
}
deleteModalOpen = false;
filterToDelete = null;
@@ -77,6 +83,7 @@
filters = [...filters, newFilter];
expandedIds.add(newFilter.id);
expandedIds = expandedIds;
+ notifyChange();
}
function startEditing(filter: FilterConfig) {
@@ -90,6 +97,7 @@
if (filter) {
filter.name = editingName;
filters = filters;
+ notifyChange();
}
}
editingId = null;
@@ -98,6 +106,7 @@
function handleChange() {
filters = filters;
+ notifyChange();
}
function toggleEnabled(id: string) {
@@ -105,6 +114,7 @@
if (filter) {
filter.enabled = !filter.enabled;
filters = filters;
+ notifyChange();
}
}
@@ -119,6 +129,7 @@
filters = [...filters, duplicate];
expandedIds.add(duplicate.id);
expandedIds = expandedIds;
+ notifyChange();
}
}
@@ -161,6 +172,7 @@
filter.enabled = imported.enabled ?? filter.enabled;
filters = filters;
+ notifyChange();
alertStore.add('success', `Pasted settings into "${filter.name}"`);
} catch {
alertStore.add('error', 'Failed to paste from clipboard');
diff --git a/src/routes/custom-formats/[databaseId]/[id]/conditions/components/ConditionCard.svelte b/src/routes/custom-formats/[databaseId]/[id]/conditions/components/ConditionCard.svelte
index 2992488..330c691 100644
--- a/src/routes/custom-formats/[databaseId]/[id]/conditions/components/ConditionCard.svelte
+++ b/src/routes/custom-formats/[databaseId]/[id]/conditions/components/ConditionCard.svelte
@@ -22,7 +22,6 @@
}>();
export let condition: ConditionData;
- export let arrType: ArrType = 'all';
export let invalid = false;
export let nameConflict = false;
diff --git a/src/routes/custom-formats/[databaseId]/[id]/conditions/components/DraftConditionCard.svelte b/src/routes/custom-formats/[databaseId]/[id]/conditions/components/DraftConditionCard.svelte
index b97541d..3db508b 100644
--- a/src/routes/custom-formats/[databaseId]/[id]/conditions/components/DraftConditionCard.svelte
+++ b/src/routes/custom-formats/[databaseId]/[id]/conditions/components/DraftConditionCard.svelte
@@ -23,7 +23,6 @@
}>();
export let condition: ConditionData;
- export let arrType: ArrType = 'all';
// Available patterns and languages from database (passed in)
export let availablePatterns: { id: number; name: string; pattern: string }[] = [];