Skip to content

Commit 201e6cf

Browse files
committed
feat: add span prop to NqGrid for custom column widths
1 parent 6c04db6 commit 201e6cf

File tree

1 file changed

+14
-2
lines changed
  • packages/nimiq-vitepress-theme/src/components

1 file changed

+14
-2
lines changed

packages/nimiq-vitepress-theme/src/components/NqGrid.vue

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import type { NqCardProps } from './NqCard.vue'
33
import NqCard from './NqCard.vue'
44
import NqLargeCard from './NqLargeCard.vue'
55
6-
const { cards = [], largeCards = false } = defineProps<{ cards?: NqCardInGrid[], largeCards?: boolean }>()
6+
const { cards = [], largeCards = false, span } = defineProps<{ cards?: NqCardInGrid[], largeCards?: boolean, span?: CardSpan | '2' | '3' | '6' }>()
77
88
type CardSpan = 'full' | 'half' | 'default'
99
type NqCardInGrid = NqCardProps & { span?: CardSpan }
@@ -16,7 +16,7 @@ function getSpan({ span, bgColor }: NqCardInGrid): CardSpan | undefined {
1616
</script>
1717

1818
<template>
19-
<ul v-if="cards.length > 0 || $slots.default" grid="~ cols-2 md:cols-6 gap-8 md:gap-16" class="nq-grid nq-raw" f-my-md>
19+
<ul v-if="cards.length > 0 || $slots.default" grid="~ cols-2 md:cols-6 gap-8 md:gap-16" class="nq-grid nq-raw" f-my-md :data-span="span">
2020
<slot>
2121
<li v-for="(card, index) in cards" :key="index" :data-span="getSpan(card)">
2222
<component :is="largeCards ? NqLargeCard : NqCard" v-bind="card" />
@@ -42,6 +42,18 @@ ul.nq-grid {
4242
li {
4343
--uno: 'mt-0 flex';
4444
}
45+
46+
&[data-span='2'] li {
47+
--uno: 'col-span-2';
48+
}
49+
50+
&[data-span='3'] li {
51+
--uno: 'col-span-2 md:col-span-3';
52+
}
53+
54+
&[data-span='6'] li {
55+
--uno: 'col-span-2 md:col-span-6';
56+
}
4557
}
4658
4759
:global(ul.nq-grid li > *) {

0 commit comments

Comments
 (0)