Formatting with dartfm
This commit is contained in:
parent
14a4f9eff4
commit
4f27d54cc6
5 changed files with 40 additions and 27 deletions
|
@ -1,3 +1,10 @@
|
||||||
## 0.0.1
|
## 0.0.1
|
||||||
|
|
||||||
* Initial version
|
* Initial version
|
||||||
|
|
||||||
|
## 0.0.2
|
||||||
|
|
||||||
|
* Fixing README.md
|
||||||
|
* Updating package description
|
||||||
|
* Formatting with DartFM
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
# date_field
|
# date_field
|
||||||
|
|
||||||
Contains DateField and DateFormField!
|
Contains DateField and DateFormField which allows the user to pick a DateTime from an input field!
|
||||||
|
|
||||||
## Getting Started
|
## Getting Started
|
||||||
|
|
||||||
|
|
|
@ -8,18 +8,12 @@ void main() {
|
||||||
}
|
}
|
||||||
|
|
||||||
class ExampleApp extends StatelessWidget {
|
class ExampleApp extends StatelessWidget {
|
||||||
|
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
return MaterialApp(
|
return MaterialApp(title: 'Example app', home: HomeWidget());
|
||||||
title: 'Example app',
|
|
||||||
home: HomeWidget()
|
|
||||||
);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
class HomeWidget extends StatefulWidget {
|
class HomeWidget extends StatefulWidget {
|
||||||
@override
|
@override
|
||||||
_HomeWidgetState createState() => _HomeWidgetState();
|
_HomeWidgetState createState() => _HomeWidgetState();
|
||||||
|
|
|
@ -5,7 +5,6 @@ import 'package:flutter/material.dart';
|
||||||
import 'package:intl/intl.dart';
|
import 'package:intl/intl.dart';
|
||||||
|
|
||||||
class DateFormField extends StatelessWidget {
|
class DateFormField extends StatelessWidget {
|
||||||
|
|
||||||
/// An optional method to call with the final value when the form is saved via
|
/// An optional method to call with the final value when the form is saved via
|
||||||
/// [FormState.save].
|
/// [FormState.save].
|
||||||
final FormFieldSetter<DateTime> onSaved;
|
final FormFieldSetter<DateTime> onSaved;
|
||||||
|
@ -14,7 +13,6 @@ class DateFormField extends StatelessWidget {
|
||||||
/// display if the input is invalid, or null otherwise.
|
/// display if the input is invalid, or null otherwise.
|
||||||
final FormFieldValidator<DateTime> validator;
|
final FormFieldValidator<DateTime> validator;
|
||||||
|
|
||||||
|
|
||||||
/// An optional value to initialize the form field to, or null otherwise.
|
/// An optional value to initialize the form field to, or null otherwise.
|
||||||
final DateTime initialValue;
|
final DateTime initialValue;
|
||||||
|
|
||||||
|
@ -50,7 +48,18 @@ class DateFormField extends StatelessWidget {
|
||||||
final DatePickerMode initialDatePickerMode;
|
final DatePickerMode initialDatePickerMode;
|
||||||
|
|
||||||
const DateFormField(
|
const DateFormField(
|
||||||
{Key key, this.onSaved, this.validator, this.initialValue, this.autovalidate=false, this.enabled=true, this.firstDate, this.lastDate, this.label='Select date', this.dateFormat, this.decoration, this.initialDatePickerMode})
|
{Key key,
|
||||||
|
this.onSaved,
|
||||||
|
this.validator,
|
||||||
|
this.initialValue,
|
||||||
|
this.autovalidate = false,
|
||||||
|
this.enabled = true,
|
||||||
|
this.firstDate,
|
||||||
|
this.lastDate,
|
||||||
|
this.label = 'Select date',
|
||||||
|
this.dateFormat,
|
||||||
|
this.decoration,
|
||||||
|
this.initialDatePickerMode})
|
||||||
: super(key: key);
|
: super(key: key);
|
||||||
|
|
||||||
@override
|
@override
|
||||||
|
@ -75,8 +84,7 @@ class DateFormField extends StatelessWidget {
|
||||||
},
|
},
|
||||||
selectedDate: state.value,
|
selectedDate: state.value,
|
||||||
);
|
);
|
||||||
}
|
});
|
||||||
);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -136,7 +144,8 @@ class DateField extends StatelessWidget {
|
||||||
height: MediaQuery.of(context).size.height / 4,
|
height: MediaQuery.of(context).size.height / 4,
|
||||||
child: CupertinoDatePicker(
|
child: CupertinoDatePicker(
|
||||||
mode: CupertinoDatePickerMode.date,
|
mode: CupertinoDatePickerMode.date,
|
||||||
onDateTimeChanged:(DateTime dateTime) => onDateSelected(dateTime),
|
onDateTimeChanged: (DateTime dateTime) =>
|
||||||
|
onDateSelected(dateTime),
|
||||||
initialDateTime: selectedDate ?? lastDate ?? DateTime.now(),
|
initialDateTime: selectedDate ?? lastDate ?? DateTime.now(),
|
||||||
minimumDate: firstDate,
|
minimumDate: firstDate,
|
||||||
maximumDate: lastDate,
|
maximumDate: lastDate,
|
||||||
|
@ -144,8 +153,7 @@ class DateField extends StatelessWidget {
|
||||||
);
|
);
|
||||||
},
|
},
|
||||||
);
|
);
|
||||||
}
|
} else {
|
||||||
else {
|
|
||||||
DateTime _selectedDate = await showDatePicker(
|
DateTime _selectedDate = await showDatePicker(
|
||||||
context: context,
|
context: context,
|
||||||
initialDatePickerMode: initialDatePickerMode,
|
initialDatePickerMode: initialDatePickerMode,
|
||||||
|
@ -153,14 +161,12 @@ class DateField extends StatelessWidget {
|
||||||
firstDate: firstDate ?? DateTime(1900),
|
firstDate: firstDate ?? DateTime(1900),
|
||||||
lastDate: lastDate ?? DateTime(2100));
|
lastDate: lastDate ?? DateTime(2100));
|
||||||
|
|
||||||
|
|
||||||
if (_selectedDate != null) {
|
if (_selectedDate != null) {
|
||||||
onDateSelected(_selectedDate);
|
onDateSelected(_selectedDate);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@override
|
@override
|
||||||
Widget build(BuildContext context) {
|
Widget build(BuildContext context) {
|
||||||
String text;
|
String text;
|
||||||
|
@ -188,7 +194,13 @@ class DateField extends StatelessWidget {
|
||||||
/// user does click on it !
|
/// user does click on it !
|
||||||
class _InputDropdown extends StatelessWidget {
|
class _InputDropdown extends StatelessWidget {
|
||||||
const _InputDropdown(
|
const _InputDropdown(
|
||||||
{Key key, this.label, this.text, this.decoration, this.textStyle, this.onPressed, this.errorText})
|
{Key key,
|
||||||
|
this.label,
|
||||||
|
this.text,
|
||||||
|
this.decoration,
|
||||||
|
this.textStyle,
|
||||||
|
this.onPressed,
|
||||||
|
this.errorText})
|
||||||
: super(key: key);
|
: super(key: key);
|
||||||
|
|
||||||
/// The label to display for the field (default is 'Select date')
|
/// The label to display for the field (default is 'Select date')
|
||||||
|
@ -223,12 +235,12 @@ class _InputDropdown extends StatelessWidget {
|
||||||
borderRadius: inkwellBorderRadius,
|
borderRadius: inkwellBorderRadius,
|
||||||
onTap: onPressed,
|
onTap: onPressed,
|
||||||
child: InputDecorator(
|
child: InputDecorator(
|
||||||
decoration: decoration ?? InputDecoration(
|
decoration: decoration ??
|
||||||
labelText: label,
|
InputDecoration(
|
||||||
errorText: errorText,
|
labelText: label,
|
||||||
border: UnderlineInputBorder(borderSide: BorderSide()),
|
errorText: errorText,
|
||||||
contentPadding: EdgeInsets.only(bottom: 2.0)
|
border: UnderlineInputBorder(borderSide: BorderSide()),
|
||||||
),
|
contentPadding: EdgeInsets.only(bottom: 2.0)),
|
||||||
baseStyle: textStyle,
|
baseStyle: textStyle,
|
||||||
child: Row(
|
child: Row(
|
||||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
name: date_field
|
name: date_field
|
||||||
description: Contains DateField and DateFormField
|
description: Contains DateField and DateFormField which allows the user to pick a DateTime from an input field!
|
||||||
version: 0.0.1
|
version: 0.0.2
|
||||||
homepage: 'https://github.com/GaspardMerten/date_field'
|
homepage: 'https://github.com/GaspardMerten/date_field'
|
||||||
|
|
||||||
environment:
|
environment:
|
||||||
|
|
Loading…
Reference in a new issue