FACEIT BANNER / DOCS
System ustawień
Każda opcja generatora jest jednym wpisem w jednym pliku. Ten wpis opisuje typ, wartość domyślną, parametr w adresie i dozwolone wartości.
Definicja ustawienia
Wszystkie ustawienia są w src/settings/definition.ts jako obiekt SETTINGS_DEFINITIONS. Typ Settings i klucz SettingKey wynikają z niego automatycznie.
bannerRadius: {
type: 'number',
defaultValue: 14,
min: 0,
max: 48,
query: ['banner_radius'],
},| Pole | Znaczenie |
|---|---|
type | string, string_undefined, number, boolean, statistic_type, language, ranking_state |
defaultValue | wartość w generatorze; do linku trafiają tylko wartości inne niż domyślne |
defaultWidgetValue | opcjonalna inna wartość domyślna dla samego widżetu (starsze linki) |
query | nazwy parametrów w adresie; pierwsza jest główna, reszta to aliasy |
options / min / max / regex | walidacja wartości przy wczytywaniu |
requirements | ustawienie obowiązuje tylko, gdy inne ustawienia mają dane wartości |
Przepływ danych
- Generator trzyma ustawienia w stanie Reacta i zapisuje je w localStorage pod kluczem fcw_generator_settings.
- Przycisk „Generuj link OBS" zamienia ustawienia na parametry adresu widżetu.
- Widżet czyta parametry z adresu przez useSettings(true) i nie czyta localStorage generatora.
- Wartości spoza dozwolonego zakresu są odrzucane i zastępowane domyślnymi.
Jak dodać ustawienie
- Dodaj wpis do SETTINGS_DEFINITIONS z typem, wartością domyślną i parametrem query.
- Użyj go w widżecie przez SETTINGS.get('nazwa') i w generatorze przez settings.get / settings.set.
- Dla przełącznika użyj komponentu Checkbox z właściwością setting.
- Dodaj teksty do trzech plików tłumaczeń.
- Uruchom pnpm docs: tabela parametrów w dokumentacji uzupełni się sama.
Zaktualizowano: