import type { ClusterModel, ModpackArchive } from '@/bindings.gen'; import { Bundle, useModCardContext } from '@/components'; import { useSettings } from '@/hooks/useSettings'; import { Button, Tab, TabContent, TabList, TabPanel, Tabs } from '@onelauncher/common/components'; function getBundleName(name: string): string { return (name.match(/\[(.*?)\]/)?.[1]) ?? 'Loading...'; } interface ModListProps { bundles: Array; cluster: ClusterModel; selectedTab?: string; onTabChange?: (value: string) => void; } export function ModList({ bundles, cluster, selectedTab, onTabChange }: ModListProps) { const { useVerticalGridLayout } = useModCardContext(); const { createSetting } = useSettings(); const [useGridLayout, setUseGrid] = createSetting('mod_list_use_grid'); return (
{bundles.map(bundle => {getBundleName(bundle.manifest.name)})}
{!useVerticalGridLayout && ( )}
{bundles.map(bundleData => ( ))}
); }