textfieldBook method
WidgetbookUseCase
textfieldBook()
Implementation
WidgetbookUseCase textfieldBook() {
return WidgetbookUseCase(
name: "METextField",
builder: (context) => Container(
width: double.infinity,
height: double.infinity,
color: Colors.white,
child: Center(
child: Padding(
padding: const EdgeInsets.only(top: 20, left: 10),
child: SizedBox(
width: context.knobs.double.slider(
label: "width",
description: "Mengubah panjang textfield",
initialValue: 300,
max: 1000,
min: 50),
height: context.knobs.double.slider(
label: "height",
description: "Mengubah lebar textfield",
initialValue: 35,
max: 80,
min: 20),
child: TextFormField(
enabled: context.knobs
.boolean(label: "enabled", initialValue: true),
decoration: InputDecoration(
contentPadding: const EdgeInsets.symmetric(vertical: 5),
prefixIcon: Icon(
context.knobs.list(
label: "prefixIcon",
description: "Merubah icon pada prefix",
options: iconTheme),
size: context.knobs
.double.input(label: "preffixSizeIcon", initialValue: 12)
.toDouble(),
),
suffixIcon: context.knobs.boolean(
label: "suffixIcon",
description:
"Digunakan untuk membuat icon pada sisi kanan (non-param)")
? IconButton(
onPressed: () {},
icon: Icon(
context.knobs.list(
label: "label", options: iconTheme),
size: context.knobs
.double.input(
label: "suffixSizeIcon",
initialValue: 12)
.toDouble(),
))
: const SizedBox(),
hintText: context.knobs.string(
label: "hintText",
description:
"Untuk menentukan placeholder pada textfield",
initialValue: "Placeholder..."),
hintStyle: const TextStyle(fontSize: 12),
border: OutlineInputBorder(
borderRadius: BorderRadius.circular(context.knobs
.double.input(label: "borderRadius", initialValue: 6)
.toDouble()),
borderSide: BorderSide(
width: context.knobs
.double.input(initialValue: 80, label: "borderRadius")
.toDouble(),
// style: BorderStyle.none,
),
),
)),
),
),
),
));
}