फ़ोल्डर मेटा
अपने पेजों के साथ एक meta.ts फ़ाइल रखकर साइडबार समूह कॉन्फ़िगर करें — समूह का शीर्षक, आइकन, क्रम, और उसमें नेस्टेड पेजों का क्रम सेट करें।
आपके कंटेंट ट्री का हर फ़ोल्डर एक साइडबार समूह बन जाता है। उस समूह की दिखावट और उसके चिल्ड्रन के क्रम को नियंत्रित करने के लिए उसके पेजों के साथ एक meta.ts रखें। यह पूरी तरह वैकल्पिक है: इसके बिना, समूह का लेबल फ़ोल्डर का ह्यूमनाइज़्ड नाम होता है और उसके पेज index, न्यूमेरिक प्रीफ़िक्स, फिर वर्णानुक्रम के अनुसार क्रमबद्ध होते हैं।
मेटा परिभाषित करना
पूरी तरह टाइप किए गए कॉन्फ़िग के लिए एक defineMeta ऑब्जेक्ट एक्सपोर्ट करें। फ़ाइल को उस फ़ोल्डर की जड़ में रखें जिसे वह कॉन्फ़िगर करती है — guides/meta.ts Guides समूह को कॉन्फ़िगर करती है:
import { defineMeta } from "blume";
export default defineMeta({
title: "Guides",
icon: "book-open",
order: 2,
collapsed: false,
pages: ["configuration", "theming", "deployment"],
});
हर फ़ील्ड वैकल्पिक है — केवल वही सेट करें जिसे आप ओवरराइड करना चाहते हैं।
फ़ील्ड
| फ़ील्ड | प्रकार | विवरण |
|---|---|---|
title |
string |
समूह का लेबल। डिफ़ॉल्ट रूप से फ़ोल्डर का ह्यूमनाइज़्ड नाम। |
icon |
string |
लेबल के बगल में दिखाया जाने वाला आइकन। |
order |
number |
सहोदर समूहों और पेजों के बीच स्थिति। छोटी संख्याएँ पहले क्रमबद्ध होती हैं। |
collapsed |
boolean |
group डिस्प्ले मोड के तहत, क्या समूह संकुचित अवस्था में शुरू होता है। |
pages |
string[] |
समूह के चिल्ड्रन का स्पष्ट क्रम, स्लग के अनुसार। |
pages सरणी चिल्ड्रन को स्लग के अनुसार सूचीबद्ध करती है — फ़ोल्डर या फ़ाइल का नाम, जिसमें से न्यूमेरिक प्रीफ़िक्स और कोई भी कोष्ठक हटा दिए गए हों (इसलिए 01-quickstart.mdx का स्लग "quickstart" है)। जिन चिल्ड्रन को आप छोड़ देते हैं, वे फिर भी दिखते हैं — सूचीबद्ध वालों के बाद।
समूह कैसे रेंडर होते हैं — फ़्लैट हेडर, संकुचित होने वाले डिस्क्लोज़र, या ड्रिल-इन पैनल — यह पूरे साइडबार की सेटिंग है, प्रति फ़ोल्डर नहीं: देखें डिस्प्ले मोड।
कंप्यूटेड मेटा
चूँकि meta.ts एक वास्तविक मॉड्यूल है, आप मेटा की गणना कर सकते हैं — स्कैन के समय इसे बनाने के लिए ऑब्जेक्ट के बजाय एक फ़ंक्शन (सिंक या async) पास करें। किसी बाहरी स्रोत से पेजों को क्रमबद्ध करने के लिए उपयोगी:
import { defineMeta } from "blume";
export default defineMeta(async () => ({
title: "Guides",
pages: await orderFromCms(),
}));
समूह के भीतर क्रम
pages सरणी किसी समूह के चिल्ड्रन का क्रम तय करती है। जो कुछ भी यह छोड़ देती है, वह प्रत्येक पेज के फ्रंटमैटर sidebar.order पर वापस चला जाता है, फिर फ़ाइल सिस्टम पर (पहले एक index पेज, फिर न्यूमेरिक प्रीफ़िक्स, फिर वर्णानुक्रम)। पूर्ण साइडबार प्राथमिकता क्रम के लिए — जिसमें स्पष्ट कॉन्फ़िग साइडबार भी शामिल है — देखें नेविगेशन › क्रम।
URL सेगमेंट जोड़े बिना पेजों को समूहबद्ध करने के लिए, आपको meta.ts की ज़रूरत ही नहीं है: कोष्ठक वाले फ़ोल्डर नाम का उपयोग करें — देखें पेज › समूह फ़ोल्डर।
अंतर्राष्ट्रीयकरण
i18n के तहत, फ़ोल्डर मेटा प्रति लोकेल रिज़ॉल्व होता है: फ़्रेंच समूह को स्वतंत्र रूप से क्रमबद्ध करने के लिए fr/guides/ के अंतर्गत एक meta.ts रखें।
ऐसे फ़ोल्डर मेटा के लिए जो हर भाषा में समान है, एक $ मार्कर जोड़ें ताकि एक ही फ़ाइल बिना डुप्लिकेशन के सभी लोकेल्स के लिए काम करे:
docs/guides/meta.$.ts (folder meta applied to every locale)
किसी विशिष्ट लोकेल का meta.ts उस भाषा के लिए साझा meta.$.ts को फिर भी ओवरराइड करता है।