const components = [];
const simulatorRoutes = [];
const mdData = import.meta.glob(__MD_MATCH__, { eager: true });
const demoData = import.meta.glob(__DEMO_MATCH__);
const componentsData = import.meta.glob(__COMP_MATCH__);
// const docsData = import.meta.glob(__DOCS_MATCH__, { eager: true })
const docsData = import.meta.glob(__DOCS_MATCH__, { eager: true });
const allDocs = [];
if (docsData) {
    for (const key in docsData) {
        if (Object.prototype.hasOwnProperty.call(docsData, key)) {
            const doc = docsData[key].default ?? docsData[key];
            const frontmatter = docsData[key].frontmatter ?? docsData[key];
            const [, name, _language] = key.match(/\/docs\/(.*?)\/index\.(.*?)\.md/);
            const language = _language.split('-')[0];
            allDocs.push({
                path: `/${language}/docs/${name}`,
                name: name,
                language: language,
                meta: {
                    title: name,
                    ...(frontmatter ?? {})
                },
                component: doc,
            });
        }
    }
}
for (const key in componentsData) {
    // @ts-ignore
    const mod = componentsData[key];
    const name = /src\/components\/(.*?)\//.exec(key)[1];
    const demos = {};
    for (const key in demoData) {
        if (key.includes(`/components/${name}/demo`)) {
            const demoName = /\/demo\/(.*?)\.vue$/.exec(key)[1];
            // @ts-ignore
            const demoModule = demoData[key];
            demos[demoName] = demoModule;
            simulatorRoutes.push({
                path: `/zh/${name}/${demoName}`,
                component: demoModule,
            });
            simulatorRoutes.push({
                path: `/en/${name}/${demoName}`,
                component: demoModule,
            });
        }
    }
    let zhMD;
    let enMD;
    for (const key in mdData) {
        if (Object.prototype.hasOwnProperty.call(mdData, key)) {
            const element = mdData[key];
            if (key.includes(`components/${name}/index.zh-CN.md`)) {
                zhMD = element.default;
            }
            if (key.includes(`components/${name}/index.en-US.md`)) {
                enMD = element.default;
            }
        }
    }
    components.push({
        name: name,
        component: mod,
        demos: demos,
        zh: zhMD,
        en: enMD,
    });
}
export { components, allDocs, simulatorRoutes };
