Komponentlar: forma maydonlari
Form, Input, Textarea, Select, Checkbox, RadioGroup, DatePicker va Slider — chatda ma’lumot yig‘ish.
🧾 Komponentlar: forma maydonlari
Forma maydonlari mehmondan ma’lumot yig‘adi. Har bir maydonning name xossasi bor — kiritilgan qiymat o‘sha kalit ostida vidjet ma’lumotiga yoziladi va {{name}} orqali o‘qiladi.
🔧 Barcha maydonlarda umumiy
name— majburiy. Ma’lumotdagi kalit.required— bo‘sh qoldirib bo‘lmaydi.disabled— o‘chirilgan holat.onChangeAction— qiymat o‘zgarganda funksiya chaqiradi.
📋 Form
Maydonlarni bitta yuborishga birlashtiradi. Quti xossalari (gap, padding …) ham ishlaydi.
onSubmitAction— yuborilganda ishga tushadigan funksiya.
<Form gap={3} onSubmitAction={{ functionName: 'send_lead', loadingBehavior: 'container' }}>
<Label value="Ism" fieldName="name" />
<Input name="name" placeholder="Ismingiz" required />
<Label value="Email" fieldName="email" />
<Input name="email" inputType="email" required />
<Button label="Yuborish" submit block />
</Form>⌨️ Input
inputType—text|email|password|number|tel|urlplaceholder,defaultValue,pattern,autoFocus
📝 Textarea
Ko‘p qatorli matn. Qo‘shimcha: rows, placeholder, defaultValue.
🔽 Select
options—[{ label, value, disabled }]ro‘yxati.placeholder,defaultValue,block(to‘liq kenglik).
<Select
name="plan"
options={[
{ label: "Pro", value: "pro" },
{ label: "Business", value: "business" }
]}
placeholder="Tarifni tanlang"
block
/>☑️ Checkbox
label, defaultChecked. Qiymat true/false bo‘lib yoziladi.
🔘 RadioGroup
options, defaultValue, direction (row | col).
📅 DatePicker
placeholder, defaultValue, min, max. Sana YYYY-MM-DD ko‘rinishida saqlanadi.
🎚 Slider
min, max, step, defaultValue, label, showValue, minLabel, maxLabel.
🔐 Kiritilgan ma’lumot serverga qanday boradi
Mehmon yozgan qiymatlar faqat brauzerda turadi. Ular API ga borishi uchun funksiyaning qo‘shimcha kiritmalari (additional inputs) ro‘yxatida shu nomlar sanab o‘tilishi shart — server faqat e’lon qilingan nomlarni qabul qiladi, qolganini tashlab yuboradi.
funksiya: send_lead (call_api)
qo‘shimcha kiritmalar: name, email
inputs: { "name": "{{name}}", "email": "{{email}}" }Agar maydon nomi e’lon qilinmasa, server tomonida u bo‘sh keladi.