// @ts-check
import starlight from "@astrojs/starlight";
import { defineConfig } from "astro/config";
import starlightSidebarTopics from "starlight-sidebar-topics";

export default defineConfig({
    integrations: [
        starlight({
            title: "Develter Documentation",
            plugins: [
                starlightSidebarTopics([
                    {
                        label: "Squirrel",
                        link: "/squirrel/overview",
                        icon: "seti:json",
                        items: [
                            "squirrel/overview",
                            { label: 'UI', items: ['squirrel/ui/component'] },
                        ],
                    },
                    {
                        label: "Blender",
                        link: "/blender/getting-started/installation",
                        icon: "seti:puppet",
                        items: [
                            {
                                label: 'Prise en main',
                                items: [
                                    { label: 'Installation', slug: 'blender/getting-started/installation' },
                                    { label: 'Configuration', slug: 'blender/getting-started/configuration' },
                                    { label: 'Premier import', slug: 'blender/getting-started/premier-import' },
                                ],
                            },
                            {
                                label: 'Interface',
                                items: [
                                    { label: 'Onglet GS Scene', slug: 'blender/interface/export-tab' },
                                    { label: 'Onglet GS Object', slug: 'blender/interface/gsedit-tab' },
                                    { label: 'Onglet GS Animation', slug: 'blender/interface/squirrel-tab' },
                                    { label: 'Onglet GS Material', slug: 'blender/interface/shader-panel' },
                                ],
                            },
                            {
                                label: 'Import',
                                items: [
                                    { label: 'Import NMG (Géométrie)', slug: 'blender/import/nmg' },
                                    { label: 'Import NMM (Matériau)', slug: 'blender/import/nmm' },
                                    { label: 'Import NMS Unpacked', slug: 'blender/import/nms-unpacked' },
                                ],
                            },
                            {
                                label: 'Tutoriels',
                                items: [
                                    { label: 'Système de nommage', slug: 'blender/tutoriels/nommage' },
                                    { label: 'Gestion de la physique', slug: 'blender/tutoriels/physique' },
                                    { label: 'Gestion des tracks', slug: 'blender/tutoriels/tracks' },
                                    { label: 'Matériaux et shaders', slug: 'blender/tutoriels/materiaux' },
                                    { label: 'Export composite', slug: 'blender/tutoriels/export' },
                                    { label: 'Animations Squirrel', slug: 'blender/tutoriels/animations' },
                                    { label: 'Import d\'objects depuis la librairie d\'asset', slug: 'blender/tutoriels/asset-library' },
                                ],
                            },
                            {
                                label: 'Exemples concrets',
                                items: [
                                    { label: 'Exporter road_highway (composite)', slug: 'blender/exemples/export-road-highway' },
                                    { label: 'Exporter les props de road_highway', slug: 'blender/exemples/export-props-road-highway' },
                                ],
                            },
                            {
                                label: 'Intégration',
                                items: [
                                    { label: 'Workflow d\'Export', slug: 'blender/integration/export-workflow' },
                                ],
                            },
                            {
                                label: 'Référence',
                                items: [
                                    { label: 'Propriétés custom', slug: 'blender/reference/proprietes-custom' },
                                    { label: 'Types et constantes', slug: 'blender/reference/types-objets' },
                                ],
                            },
                        ],
                    },
                ]),
            ],
        }),
    ],
});
