Skip to content

Commit 3cc8fd6

Browse files
feat: add reset button
1 parent eee691d commit 3cc8fd6

File tree

3 files changed

+18
-2
lines changed

3 files changed

+18
-2
lines changed

website/src/catalog/RuleFilter.vue

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,10 @@ const filter = ref<Filter>({
2121
watchEffect(() => {
2222
model.value = filter.value
2323
})
24+
// :( cyclic assign, for reset event
25+
watchEffect(() => {
26+
filter.value = model.value
27+
})
2428
2529
</script>
2630
<template>

website/src/catalog/RuleList.vue

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,9 @@ const props = defineProps({
1010
required: true,
1111
}
1212
})
13+
const emit = defineEmits<{
14+
reset: []
15+
}>()
1316
1417
const ruleMetaData = computed(() => getRuleMetaData(props.filter))
1518
</script>
@@ -38,7 +41,7 @@ const ruleMetaData = computed(() => getRuleMetaData(props.filter))
3841
<p class="title">No Matching Rule</p>
3942
<hr class="divider"/>
4043
<div class="actions">
41-
Try resetting the filter to discover all rules.<br/>
44+
You can <a href="" @click="emit('reset')">reset the filter</a> to discover all rules.<br/>
4245
Contributing a new rule is also warmly welcomed. 🎉
4346
<ol>
4447
<li>

website/src/catalog/index.vue

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,12 +10,21 @@ const filter = ref<Filter>({
1010
selectedFeatures: [],
1111
selectedTypes: [],
1212
})
13+
14+
function reset() {
15+
filter.value = {
16+
selectedLanguages: [],
17+
selectedRules: [],
18+
selectedFeatures: [],
19+
selectedTypes: [],
20+
}
21+
}
1322
</script>
1423

1524
<template>
1625
<div class="catalog-filter">
1726
<RuleFilter v-model="filter" />
18-
<RuleList :filter="filter"/>
27+
<RuleList :filter="filter" @reset="reset"/>
1928
</div>
2029
</template>
2130

0 commit comments

Comments
 (0)