From c7dd72a245ef774dc5f4a0876527baba007b32eb Mon Sep 17 00:00:00 2001 From: Vick Top Date: Tue, 20 Feb 2024 14:23:10 +0100 Subject: [PATCH] doc: create documentation for files --- lib/src/input_character.dart | 18 +++++++++++++++++- lib/src/single_character_input.dart | 12 ++++++++++++ 2 files changed, 29 insertions(+), 1 deletion(-) diff --git a/lib/src/input_character.dart b/lib/src/input_character.dart index db2c168..b7d66fc 100644 --- a/lib/src/input_character.dart +++ b/lib/src/input_character.dart @@ -4,7 +4,12 @@ import 'package:flutter/material.dart'; +/// Defines a character input configuration. class InputCharacter { + /// Creates an [InputCharacter] configuration. + /// + /// The [keyboardType] parameter is required. + /// The [readOnly], [hint], and [formatter] parameters are optional. const InputCharacter({ required this.keyboardType, this.readOnly = false, @@ -12,12 +17,23 @@ class InputCharacter { this.formatter, }); + /// The type of keyboard to display for the input. final TextInputType keyboardType; - final CharacterFormatter? formatter; + + /// A flag indicating whether the input is read-only. final bool readOnly; + + /// The optional hint text displayed inside the input field. final String hint; + /// The optional formatter function to format the input value. + final CharacterFormatter? formatter; + + /// Formats the input value using the provided formatter function. + /// + /// If no formatter is provided, the input value remains unchanged. String format(String value) => formatter?.call(value) ?? value; } +/// Defines a function signature for formatting input characters. typedef CharacterFormatter = String Function(String); diff --git a/lib/src/single_character_input.dart b/lib/src/single_character_input.dart index bf068bd..f3e5418 100644 --- a/lib/src/single_character_input.dart +++ b/lib/src/single_character_input.dart @@ -8,7 +8,9 @@ import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:flutter_single_character_input/src/input_character.dart'; +/// A StatefulWidget that represents a single character input. class SingleCharacterInput extends StatefulWidget { + /// Creates a SingleCharacterInput widget. const SingleCharacterInput({ required this.characters, required this.onChanged, @@ -22,6 +24,8 @@ class SingleCharacterInput extends StatefulWidget { super.key, }); + /// A function that builds a custom input widget using + /// the provided context and input widgets. final Widget Function(BuildContext context, List inputs)? buildCustomInput; @@ -33,14 +37,22 @@ class SingleCharacterInput extends StatefulWidget { // ignore: avoid_positional_boolean_parameters final void Function(String value, bool isComplete) onChanged; + /// The decoration to be applied to the input widget. final InputDecoration? inputDecoration; /// List of all character fields which are used to create inputs. final List characters; + /// The alignment of the input text. final TextAlign textAlign; + + /// The alignment of the cursor. final TextAlign cursorTextAlign; + + /// The spacing between input fields. final double spacing; + + /// The style of the input text. final TextStyle? textStyle; @override