KRET LANGUAGE ACADEMY · DOKUMENTACJA ZE ŹRÓDEŁ
KretStyle
Komponent KretUI (styling component of KretUI). KretUI opisuje strukturę i interakcje interfejsu (widoki, stan, bindingi, akcje do komend KretS). KretStyle opisuje wygląd (selektory, kaskada, stany, `media`), KTheme — motyw (tokeny, warianty `dark`/`highContrast`, kontrola kontrastu WCAG). Renderer SDK (Avalonia) działa we własnym procesie, logika w procesie pluginu. Interfejs nie nadaje uprawnień i nie przechowuje sekretów.
Stan języka nie nadaje uprawnień KCS ani prawa działania w Core Production.
- Format / wersja
- kretui "1.0" / kstyle "1.0" / ktheme "1.0"
- Kontrakt
- kstyle-1.0
- Rozszerzenia
- .kstyle
Ta technologia jest częścią KretUI.
Dokumentacja i referencja
24 rozdziałów
Architecture diagramLANGUAGEKretUI — API / CLILANGUAGEKretUI — architektura / architectureLANGUAGEKretUI — zgodność i wersje / compatibility and versionsLANGUAGEKretUI — kody diagnostyczne / diagnostic codesLANGUAGEKretUI — wprowadzenieINTRODUCTIONKretUI — specyfikacja (zakres kontraktu 1.0)LANGUAGEKretUI — runtimeLANGUAGEKretUI — bezpieczeństwo / securityLANGUAGEKretUI — referencja składniLANGUAGEKretUI — rozwiązywanie problemów / troubleshootingLANGUAGEKRETUI-A01-NotesStyleThemeDb — Notatki: KretUI + KretStyle + KTheme + KretS + KretDBEXAMPLEREQUIREMENTS — KRETUI-A01-NotesStyleThemeDbEXAMPLEKRETUI-B01-HelloView — Pierwszy widok KretUIEXAMPLEREQUIREMENTS — KRETUI-B01-HelloViewEXAMPLEKRETUI-I01-FormActionBinding — Formularz, binding i akcja do KretSEXAMPLEREQUIREMENTS — KRETUI-I01-FormActionBindingEXAMPLEKretUI ↔ Kret Engine / KretCoreLANGUAGEKretUI ↔ Kret PlaygroundLANGUAGEKretUI ↔ Kret SDKLANGUAGEKretUI ↔ KretStudioLANGUAGEKretUI — język interfejsu (+ komponenty KretStyle i KTheme)INTRODUCTIONKretUI — praktyczne zastosowaniaLANGUAGEKretUI — karta technologiiLANGUAGEPrzykłady tej technologii
Notatki: KretUI + KretStyle + KTheme + KretS + KretDB
Pełny przykład warstw interfejsu na podstawie szablonu SDK `multi-language`: struktura (`.kretui`), wygląd (`.kstyle` — selektory, stany, `media`), motyw (`.ktheme` — tokeny, warianty `dark`/`highContrast`, kontrola kontrastu WCAG), logika (KretS) i dane (KretDB). Render w wariancie wysokiego kontrastu i interakcja zapisująca do bazy. Folder `low-contrast/` pokazuje, że zbyt mały kontrast motywu jest błędem kompilacji.
RUNNABLE_LOCALKretUI · BASICPierwszy widok KretUI
Widok `view` z tytułem, stanem (`state`), tekstem z podstawieniem `{licznik}` i przyciskiem, który zmienia stan lokalnie (`set`). Bez logiki KretS — interfejs nie ma żadnych uprawnień. Renderer SDK rysuje prawdziwą klatkę PNG (`--self-test`).
RUNNABLE_LOCALKretUI · INTERMEDIATEFormularz, binding i akcja do KretS
Pole `input` z walidacją (`required`, `maxLength`), akcja `greet` wywołująca komendę KretS `greet.make(name: String) -> String`, wynik zapisywany w stanie (`result`), flaga `busy`, komunikat błędu (`error`) i warunek `enabled "form.valid and not busy"`. Kompilacja sprawdza sygnaturę handlera i blok `handlers` manifestu.
RUNNABLE_LOCAL