Kiritiş · molecule

JSON maydoni

JSON matni uçun maydon (4.90): webhook tanasi, integratsiya sozlamasi, API sörovi. Çapda qator raqamlari, monoşrift; fokusdan çiqqanda (yoki Ctrl+Shift+F, «Formatlaş» tugmasi) tekşiradi va 2 böşliq bilan formatlaydi. Xato bölsa — xato qatori raqami «!» bilan belgilanadi, qator orqasi ajratiladi, pastda «4-qator, 1-ustun: xususiyat nomi qöştirnoqda bölişi kerak» kabi özbekça matn; textarea aria-invalid va setCustomValidity oladi (forma yuborilmaydi).

beta0.29.0 dan.fx-jsonfieldCSS + JS

Fokusdan çiqqanda formatlanadi · Ctrl+Shift+F

Variantlar

AtributQiymatlarStandart
data-required böş maydon — xato—
data-indent4 çekiniş böşliqlari soni2

Anatomiya

  1. root.fx-jsonfieldşart
  2. box.fx-jsonfield__boxşart
  3. gutter.fx-jsonfield__gutterixtiyoriy
  4. input.fx-jsonfield__inputşart
  5. error.fx-jsonfield__errorixtiyoriy
  6. hint.fx-jsonfield__hintixtiyoriy

Holatlar

focusinvaliddisabled

Klaviatura va kiriş

TugmaAmal
Ctrl+Shift+FTekşiradi va formatlaydi
TabKeyingi maydonga (tuzoq yöq)

Oddiy <textarea> (label bilan), qator raqamlari aria-hidden. Xato: aria-invalid="true", aria-describedby → .fx-jsonfield__error (aria-live) — qator, ustun va sabab söz bilan.

Kod

AI uçun: qaçon işlatiladi
Işlating
  • Admin panelda webhook, integratsiya yoki ruxsatlar sozlamasi (JSON).
  • API sinov sahifasida sörov tanasi.
Işlatmang
  • Köp qatorli oddiy matn → input
  • Faqat körsatiladigan kod → code
  • Formatlangan matn (qalin, röyxat) → markdown
  • Oddiy foydalanuvçiga JSON maydonini bermang — sozlamani forma maydonlariga ajrating; JSON — dasturçi va admin uçun.
  • Tab tugmasini tutib qolmang (fokus tuzoği) — çekiniş formatlaş bilan qöyiladi.
  • Xatoni faqat qizil çegara bilan körsatmang — qator raqami va matn şart.
npx foxui add jsonfield
<div class="fx-field">
  <label class="fx-label" for="js1">Webhook tanasi</label>
  <div class="fx-jsonfield" data-fx-jsonfield>
    <div class="fx-jsonfield__box"><ol class="fx-jsonfield__gutter" aria-hidden="true"></ol><textarea class="fx-jsonfield__input" id="js1" name="webhook" rows="8">{"hodisa":"bitim.yopildi","mijoz":{"ism":"Aziz Karimov","telefon":"+998901234567","shahar":"Toshkent"},"summa":12500000,"valyuta":"UZS","teglar":["vip","ulgurji"]}</textarea></div>
    <p class="fx-jsonfield__error" aria-live="polite"></p>
    <p class="fx-jsonfield__hint">Fokusdan çiqqanda formatlanadi · Ctrl+Shift+F</p>
  </div>
</div>
<div class="fx-field">
  <label class="fx-label" for="js2">Integratsiya sozlamasi</label>
  <div class="fx-jsonfield" data-fx-jsonfield data-required>
    <div class="fx-jsonfield__box"><ol class="fx-jsonfield__gutter" aria-hidden="true"></ol><textarea class="fx-jsonfield__input" id="js2" name="sozlama" rows="6">{
  "bot": "@savdo_bot",
  "kanal": -1001234567890,
  "jim_soat": ["22:00", "08:00"],
}</textarea></div>
    <p class="fx-jsonfield__error" aria-live="polite"></p>
    <button type="button" class="fx-btn" data-size="sm" data-variant="outline" data-json="format">Formatlaş</button>
  </div>
</div>

Tokenlar: --fx-bg-field --fx-bg-muted --fx-bg-subtle --fx-border-color-default --fx-border-color-error --fx-border-color-field --fx-border-color-focus --fx-border-color-strong --fx-border-width-default --fx-border-width-focus --fx-ease-standard --fx-fg-error --fx-font-adjust-mono --fx-font-family-mono --fx-font-size-sm --fx-font-size-xs --fx-font-weight-semibold --fx-motion-fast --fx-radius-field-multiline --fx-space-1 --fx-space-12 --fx-space-2 --fx-space-3 --fx-text-disabled --fx-text-error --fx-text-primary --fx-text-tertiary

Şu toifadan

Libosni sozlangButun sayt şu zahoti kiyinadi

Libos

Premium liboslar — obunada: bepul 3 ta ustiga yana 13 ta. Bu yerda hammasini sinab körasiz. Narxlar

Brendlar ilhomida · 11

Faqat uslub ilhomi; belgilar — Simple Icons (CC0) va logobank.uz (Uzum), savdo belgilari egalariga tegişli.

Rejim
Qölda sozlaş — dasturçilar uçun

Rang

Şakl va çegara

Şrift juftligi

Qölda tanlaş

Qulaylik

Harakat
Ziçlik
Material (tajriba)