GetAvailableThemes
in package
Use case for getting available themes.
Scans the filesystem for available theme directories.
Tags
Table of Contents
Methods
- execute() : array<int, array{path: string, name: string, description: string, mode: string, counterpart: string, highlighting: string, wordBreaking: string}>
- Execute the use case.
- loadThemeMetadata() : array{name: string, description: string, mode: string, counterpart: string, highlighting: string, wordBreaking: string}
- Load theme metadata from theme.json file.
Methods
execute()
Execute the use case.
public
execute() : array<int, array{path: string, name: string, description: string, mode: string, counterpart: string, highlighting: string, wordBreaking: string}>
Scans the assets/themes/ directory for theme directories. The Default theme is discovered via glob like all others (it has a theme.json but no styles.css — the base CSS handles it).
Return values
array<int, array{path: string, name: string, description: string, mode: string, counterpart: string, highlighting: string, wordBreaking: string}> —Array of theme data with metadata
loadThemeMetadata()
Load theme metadata from theme.json file.
private
loadThemeMetadata(string $themePath) : array{name: string, description: string, mode: string, counterpart: string, highlighting: string, wordBreaking: string}
Parameters
- $themePath : string
-
Path to the theme directory
Return values
array{name: string, description: string, mode: string, counterpart: string, highlighting: string, wordBreaking: string} —Theme metadata