Навигация
Part 1

API анықтамалығы (Reference)

AstroGlass компоненттері мен утилиталарына арналған техникалық API анықтамалығы.

AstroGlass-те қолданылатын негізгі функцияларға, типтерге және конфигурация объектілеріне арналған егжей-тегжейлі анықтамалық.

useTranslations(locale)

Көрсетілген локаль үшін аударманы алу функциясын қайтарады.

Модуль: src/utils/i18n.ts

Қолтаңбасы (Signature):

function useTranslations(locale: Locale): (key: string) => string;

Параметрлер:

ПараметрТипСипаттама
localeLocale ('en' | 'ru')Аудармаларды жүктеуге арналған тіл коды.

Қайтарады: Аударылған мәнге нүкте арқылы жазылған (dot-notation) кілтті шешетін t(key: string): string функциясын қайтарады. Егер кілт табылмаса, ол кілттің өзін қайтарады және әзірлеу (development) режимінде ескертуді тіркейді (logs a warning).

Қолданылуы:

---
import { useTranslations } from '../utils/i18n';
import { getLocaleFromUrl } from '../utils/locale-utils';
const locale = getLocaleFromUrl(Astro.url);
const t = useTranslations(locale);
---
<h1>{t('hero.title')}</h1>
<p>{t('hero.subtitle')}</p>

Негізгі әрекет (Key Behavior):

  • common.json файлынан алынған кілттер түбірлік деңгейде орналасады (мысалы, t('title'))
  • Барлық басқа файлдар файл атауы бойынша кеңістікке бөлінеді (мысалы, t('hero.title'), t('pricing.plans.pro.name'))
  • Табылмаған кілттер өндіріс (production) режимінде кілт жолын (string) қайтарады, ал әзірлеу режимінде ескерту тіркейді

getLocaleFromUrl(url)

Ағымдағы URL мекенжайынан локаль кодын шығарады.

Модуль: src/utils/locale-utils.ts

Қолтаңбасы:

function getLocaleFromUrl(url: URL): Locale;

URL жолынан локаль префиксін қайтарады, ештеңе табылмаса, әдепкі бойынша 'en' мәнін қайтарады.


buildNavLinks(locale, section)

Құжаттаманың бүйірлік тақтасына (sidebar) арналған навигациялық сілтемелерді жасайды.

Модуль: src/utils/docs-nav.ts

Қолтаңбасы:

function buildNavLinks(locale: string, section?: string): NavLink[];

Құжаттаманың бүйірлік тақтасы компоненті пайдаланатын навигациялық сілтеме объектілерінің массивін қайтарады.


getEnabledThemes()

Барлық іске қосылған тақырып (theme) анықтамаларын қайтарады.

Модуль: src/config/themes.ts

Қолтаңбасы:

function getEnabledThemes(): ThemeDefinition[];

getThemeById(id)

Өзінің идентификаторы (ID) бойынша белгілі бір тақырыпты (theme) қайтарады.

Модуль: src/config/themes.ts

Қолтаңбасы:

function getThemeById(id: string): ThemeDefinition | undefined;

Тип (Type): ThemeDefinition

interface ThemeDefinition {
id: string; // URL slug (мысалы, 'liquid', 'aurora')
name: string; // Көрсетілетін атау
color: string; // Tailwind градиент кластары
icon: string; // Эмодзи белгішесі (icon)
sections: string[]; // Іске қосылған бөлімдер
enabled: boolean; // Тақырып белсенді ме
premium: boolean; // Премиум жалаушасы (flag)
description: string; // Бір жолдық сипаттама
}

Тип (Type): LocaleConfig

interface LocaleConfig {
code: string; // ISO тіл коды
name: string; // Ағылшынша атауы
nativeName: string; // Ана тіліндегі атауы
flag: string; // Жалау эмодзиі
direction: 'ltr' | 'rtl';
enabled: boolean;
}

Қолжетімді тақырыптар

IDАтауыБелгішесі
liquidLiquid💧
glassGlass🪟
neoNeo
luxuryLuxury👑
minimalMinimal
auroraAurora🌌