diff --git a/docs/.vitepress/theme/components/icons/IconsOverview.vue b/docs/.vitepress/theme/components/icons/IconsOverview.vue index 18515d0d2..1b8df676d 100644 --- a/docs/.vitepress/theme/components/icons/IconsOverview.vue +++ b/docs/.vitepress/theme/components/icons/IconsOverview.vue @@ -14,7 +14,15 @@ import CarbonAdOverlay from './CarbonAdOverlay.vue'; const ICON_SIZE = 56; const ICON_GRID_GAP = 8; -const DEFAULT_GRID_ITEMS = 10 * 160; + +const initialGridItems = computed(() => { + if (containerWidth.value === 0) return 120; + + const itemsPerRow = columnSize.value || 10; + const visibleRows = Math.ceil(window.innerHeight / (ICON_SIZE + ICON_GRID_GAP)); + + return Math.min(itemsPerRow * (visibleRows + 2), 200); +}); const props = defineProps<{ icons: IconEntity[]; @@ -115,15 +123,14 @@ function handleCloseDrawer() { />