Skip to content

Commit b98795d

Browse files
feat: move selected rule before
1 parent 1312220 commit b98795d

File tree

1 file changed

+14
-2
lines changed

1 file changed

+14
-2
lines changed

website/src/catalog/RuleItem.vue

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import { type PropType, computed } from 'vue'
44
import { type RuleMeta, type Filter, languages } from './data'
55
import Option from './Option.vue'
66
7-
const { meta } = defineProps({
7+
const { meta, filter } = defineProps({
88
meta: {
99
type: Object as PropType<RuleMeta>,
1010
required: true,
@@ -18,7 +18,19 @@ const displayRuleCount = computed(() => {
1818
const maxRule = meta.features.length > 0 ? 2 : 5
1919
return Math.min(meta.rules.length, maxRule)
2020
})
21-
const displayedRules = computed(() => meta.rules.slice(0, displayRuleCount.value))
21+
const displayedRules = computed(() => {
22+
// display selected rules first
23+
const result = []
24+
const notSelected = []
25+
for (const rule of meta.rules) {
26+
if (filter.selectedRuleFilters.includes(rule)) {
27+
result.push(rule)
28+
} else {
29+
notSelected.push(rule)
30+
}
31+
}
32+
return result.concat(notSelected).slice(0, displayRuleCount.value)
33+
})
2234
const moreRules = computed(() => meta.rules.length - displayRuleCount.value)
2335
const moreFeatures = computed(() => Math.max(meta.features.length - 2, 0))
2436
</script>

0 commit comments

Comments
 (0)