diff --git a/package.json b/package.json
index 3b39e71..4613e1d 100644
--- a/package.json
+++ b/package.json
@@ -70,5 +70,5 @@
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
- "version": "0.9.10"
+ "version": "1.0.0"
}
diff --git a/src/Form.js b/src/Form.js
index 5ad0090..81d0b7f 100644
--- a/src/Form.js
+++ b/src/Form.js
@@ -49,8 +49,8 @@ export class Form extends React.Component{
key: child.ref || child.type+i,
fieldRef : child.ref,
ref: child.ref,
- onFocus:this.handleFieldFocused.bind(this),
- onChange:this.handleFieldChange.bind(this, child.ref)
+ onFocus: this.handleFieldFocused.bind(this),
+ onChange: this.handleFieldChange.bind(this, child.ref)
}
));
}, this);
diff --git a/src/fields/CountDownField.ios.js b/src/fields/CountDownField.ios.js
index 7a1459f..2e4a83b 100644
--- a/src/fields/CountDownField.ios.js
+++ b/src/fields/CountDownField.ios.js
@@ -92,7 +92,7 @@ export class CountDownField extends React.Component{
paddingLeft: 10,
paddingRight: 10,
justifyContent: 'center',
- lineHeight: 32
+ lineHeight: 45
},
input:{
paddingLeft: 10,
diff --git a/src/fields/DatePickerField.android.js b/src/fields/DatePickerField.android.js
index d47ba69..1f19f45 100644
--- a/src/fields/DatePickerField.android.js
+++ b/src/fields/DatePickerField.android.js
@@ -90,7 +90,7 @@ export class DatePickerField extends React.Component{
paddingLeft: 10,
paddingRight: 10,
justifyContent: 'center',
- lineHeight: 32
+ lineHeight: 45
},
input:{
paddingLeft: 10,
diff --git a/src/fields/DatePickerField.ios.js b/src/fields/DatePickerField.ios.js
index 043e064..fae1101 100644
--- a/src/fields/DatePickerField.ios.js
+++ b/src/fields/DatePickerField.ios.js
@@ -88,7 +88,7 @@ export class DatePickerField extends React.Component{
paddingLeft: 10,
paddingRight: 10,
justifyContent: 'center',
- lineHeight: 32
+ lineHeight: 45
},
input:{
paddingLeft: 10,
diff --git a/src/fields/InputField.ios.js b/src/fields/InputField.ios.js
index f5d50a1..34f1c7a 100644
--- a/src/fields/InputField.ios.js
+++ b/src/fields/InputField.ios.js
@@ -32,9 +32,9 @@ export class InputField extends React.Component{
this.props.style
]}
containerStyle={[formStyles.fieldContainer,
- formStyles.horizontalContainer,
- this.props.containerStyle,
- ]}
+ formStyles.horizontalContainer,
+ this.props.containerStyle,
+ ]}
/>
)
}
@@ -65,7 +65,7 @@ let formStyles = StyleSheet.create({
textAlign: 'right'
},
multiline:{
- lineHeight: 32,
+ lineHeight: 45,
fontSize: 34/2,
paddingBottom:10
},
@@ -98,8 +98,7 @@ let formStyles = StyleSheet.create({
paddingLeft: 10,
paddingRight: 10,
justifyContent: 'center',
- lineHeight: 32,
-
+ lineHeight: 45,
},
input:{
paddingLeft: 10,
diff --git a/src/fields/LinkField.android.js b/src/fields/LinkField.android.js
index 36acb52..0f4c861 100644
--- a/src/fields/LinkField.android.js
+++ b/src/fields/LinkField.android.js
@@ -38,6 +38,6 @@ let formStyles = StyleSheet.create({
paddingLeft: 10,
paddingRight: 10,
justifyContent: 'center',
- lineHeight: 32
+ lineHeight: 45
},
});
diff --git a/src/fields/LinkField.ios.js b/src/fields/LinkField.ios.js
index 786801b..853f81a 100644
--- a/src/fields/LinkField.ios.js
+++ b/src/fields/LinkField.ios.js
@@ -39,7 +39,7 @@ let formStyles = StyleSheet.create({
paddingLeft: 10,
paddingRight: 10,
justifyContent: 'center',
- lineHeight: 32,
+ lineHeight: 45,
flex:2
},
});
diff --git a/src/fields/PickerField.android.js b/src/fields/PickerField.android.js
index e192537..070747b 100644
--- a/src/fields/PickerField.android.js
+++ b/src/fields/PickerField.android.js
@@ -91,7 +91,7 @@ export class PickerField extends React.Component{
paddingLeft: 10,
paddingRight: 10,
justifyContent: 'center',
- lineHeight: 32
+ lineHeight: 45
},
input:{
paddingLeft: 10,
diff --git a/src/fields/PickerField.ios.js b/src/fields/PickerField.ios.js
index cfa1aec..7fa09df 100644
--- a/src/fields/PickerField.ios.js
+++ b/src/fields/PickerField.ios.js
@@ -89,7 +89,7 @@ export class PickerField extends React.Component{
paddingLeft: 10,
paddingRight: 10,
justifyContent: 'center',
- lineHeight: 32
+ lineHeight: 45
},
input:{
paddingLeft: 10,
diff --git a/src/fields/SwitchField.ios.js b/src/fields/SwitchField.ios.js
index ac72a76..124b660 100644
--- a/src/fields/SwitchField.ios.js
+++ b/src/fields/SwitchField.ios.js
@@ -55,7 +55,7 @@ export class SwitchField extends React.Component{
paddingLeft: 10,
paddingRight: 10,
justifyContent: 'center',
- lineHeight: 32
+ lineHeight: 45
},
});
diff --git a/src/fields/TimePickerField.android.js b/src/fields/TimePickerField.android.js
index fe26bdc..79c2f7d 100644
--- a/src/fields/TimePickerField.android.js
+++ b/src/fields/TimePickerField.android.js
@@ -92,7 +92,7 @@ export class TimePickerField extends React.Component{
paddingLeft: 10,
paddingRight: 10,
justifyContent: 'center',
- lineHeight: 32
+ lineHeight: 45
},
input:{
paddingLeft: 10,
diff --git a/src/fields/TimePickerField.ios.js b/src/fields/TimePickerField.ios.js
index e26b5c4..252c4fc 100644
--- a/src/fields/TimePickerField.ios.js
+++ b/src/fields/TimePickerField.ios.js
@@ -92,7 +92,7 @@ export class TimePickerField extends React.Component{
paddingLeft: 10,
paddingRight: 10,
justifyContent: 'center',
- lineHeight: 32
+ lineHeight: 45
},
input:{
paddingLeft: 10,
diff --git a/src/lib/DatePickerComponent.android.js b/src/lib/DatePickerComponent.android.js
index 422bf80..cc3d398 100644
--- a/src/lib/DatePickerComponent.android.js
+++ b/src/lib/DatePickerComponent.android.js
@@ -10,6 +10,10 @@ import {Field} from './Field';
export class DatePickerComponent extends React.Component{
constructor(props){
super(props);
+ if (props.date) {
+ // Ensure initial value is retrieved in Form.getData()
+ if(this.props.onChange) this.props.onChange(props.date);
+ }
this.state = {
date: props.date? new Date(props.date) :'',
isPickerVisible: false
@@ -176,7 +180,7 @@ import {Field} from './Field';
paddingLeft: 10,
paddingRight: 10,
justifyContent: 'center',
- lineHeight: 32
+ lineHeight: 45
},
input:{
paddingLeft: 10,
diff --git a/src/lib/DatePickerComponent.ios.js b/src/lib/DatePickerComponent.ios.js
index 459c89d..059d3fd 100644
--- a/src/lib/DatePickerComponent.ios.js
+++ b/src/lib/DatePickerComponent.ios.js
@@ -10,6 +10,10 @@ import {Field} from './Field';
export class DatePickerComponent extends React.Component{
constructor(props){
super(props);
+ if (props.date) {
+ // Ensure initial value is retrieved in Form.getData()
+ if(this.props.onChange) this.props.onChange(props.date);
+ }
this.state = {
date: props.date? new Date(props.date) : '',
isPickerVisible: false
@@ -41,6 +45,9 @@ export class DatePickerComponent extends React.Component{
// this.refs.picker.measure(this.getPickerLayout.bind(this));
+ _isPickerVisible() {
+ return this.state.isPickerVisible
+ }
_togglePicker(event){
this.setState({isPickerVisible:!this.state.isPickerVisible});
@@ -107,7 +114,7 @@ export class DatePickerComponent extends React.Component{
- {(this.state.isPickerVisible)?
+ {(this.props.showing)?
pickerWrapper : null
}
@@ -204,7 +211,7 @@ let formStyles = StyleSheet.create({
paddingLeft: 10,
paddingRight: 10,
justifyContent: 'center',
- lineHeight: 32
+ lineHeight: 45
},
input:{
paddingLeft: 10,
diff --git a/src/lib/Field.js b/src/lib/Field.js
index 3171fa8..94def20 100644
--- a/src/lib/Field.js
+++ b/src/lib/Field.js
@@ -3,7 +3,7 @@
import React from 'react';
import PropTypes from 'prop-types';
import {HelpText} from './HelpText';
-let { View, StyleSheet, Text, TouchableHighlight} = require('react-native');
+let { View, StyleSheet, Text, TouchableHighlight, TouchableOpacity} = require('react-native');
export class Field extends React.Component{
render(){
@@ -14,14 +14,15 @@ export class Field extends React.Component{
: null);
if(this.props.onPress){
- return
+ return
{this.props.children}
{fieldHelpText}
-
+
}
- return
+ return
{this.props.children}
{fieldHelpText}
;
diff --git a/src/lib/InputComponent.js b/src/lib/InputComponent.js
index 4f65d8f..d9bf6d0 100644
--- a/src/lib/InputComponent.js
+++ b/src/lib/InputComponent.js
@@ -17,6 +17,11 @@ export class InputComponent extends React.Component{
constructor(props){
super(props);
+ if (props.value) {
+ // Ensure initial value is retrieved in Form.getData()
+ if(this.props.onChange) this.props.onChange(props.value, this.valid);
+ }
+
this.triggerValidation = this.triggerValidation.bind(this);
// this.validate = this.validate.bind(this)
this.validate(props.value);
diff --git a/src/lib/LinkComponent.js b/src/lib/LinkComponent.js
index c2c0d23..931c21e 100644
--- a/src/lib/LinkComponent.js
+++ b/src/lib/LinkComponent.js
@@ -8,6 +8,10 @@ import {Field} from './Field';
export class LinkComponent extends React.Component{
constructor(props){
super(props);
+ if (props.value) {
+ // Ensure initial value is retrieved in Form.getData()
+ if(this.props.onChange) this.props.onChange(props.value, this.valid);
+ }
this.state = {
}
}
diff --git a/src/lib/PickerComponent.android.js b/src/lib/PickerComponent.android.js
index e227ce7..1d1a5ad 100644
--- a/src/lib/PickerComponent.android.js
+++ b/src/lib/PickerComponent.android.js
@@ -10,6 +10,10 @@ var PickerItem = Picker.Item;
export class PickerComponent extends React.Component{
constructor(props){
super(props);
+ if (props.value) {
+ // Ensure initial value is retrieved in Form.getData()
+ if(this.props.onChange) this.props.onChange(props.value, this.valid);
+ }
this.state = {
value: props.value || props.label,
}
@@ -151,7 +155,7 @@ var PickerItem = Picker.Item;
paddingLeft: 10,
paddingRight: 10,
justifyContent: 'center',
- lineHeight: 32
+ lineHeight: 45
},
input:{
paddingLeft: 10,
diff --git a/src/lib/PickerComponent.ios.js b/src/lib/PickerComponent.ios.js
index fcbfd62..2eb4af0 100644
--- a/src/lib/PickerComponent.ios.js
+++ b/src/lib/PickerComponent.ios.js
@@ -11,6 +11,10 @@ var PickerItem = Picker.Item;
export class PickerComponent extends React.Component{
constructor(props){
super(props);
+ if (props.value) {
+ // Ensure initial value is retrieved in Form.getData()
+ if(this.props.onChange) this.props.onChange(props.value, this.valid);
+ }
this.state = {
value: props.value,
isPickerVisible: false
@@ -144,7 +148,7 @@ export class PickerComponent extends React.Component{
- {(this.state.isPickerVisible)?
+ {(this.props.showing)?
pickerWrapper : null
}
@@ -220,7 +224,7 @@ export class PickerComponent extends React.Component{
paddingLeft: 10,
paddingRight: 10,
justifyContent: 'center',
- lineHeight: 32
+ lineHeight: 45
},
input:{
paddingLeft: 10,
diff --git a/src/lib/SwitchComponent.js b/src/lib/SwitchComponent.js
index 80f978f..ac41780 100644
--- a/src/lib/SwitchComponent.js
+++ b/src/lib/SwitchComponent.js
@@ -8,6 +8,10 @@ import {Field} from './Field';
export class SwitchComponent extends React.Component{
constructor(props){
super(props);
+ if (props.value) {
+ // Ensure initial value is retrieved in Form.getData()
+ if(this.props.onChange) this.props.onChange(props.value, this.valid);
+ }
this.state = {
value: props.value,
}
@@ -40,6 +44,7 @@ export class SwitchComponent extends React.Component{
{this.props.label}
@@ -106,7 +111,7 @@ SwitchComponent.propTypes = {
paddingLeft: 10,
paddingRight: 10,
justifyContent: 'center',
- lineHeight: 32
+ lineHeight: 45
},
input:{
paddingLeft: 10,
diff --git a/src/lib/TimePickerComponent.android.js b/src/lib/TimePickerComponent.android.js
index 36e7559..8821be4 100644
--- a/src/lib/TimePickerComponent.android.js
+++ b/src/lib/TimePickerComponent.android.js
@@ -10,6 +10,10 @@ import {Field} from './Field';
export class TimePickerComponent extends React.Component{
constructor(props){
super(props);
+ if (props.value) {
+ // Ensure initial value is retrieved in Form.getData()
+ if(this.props.onChange) this.props.onChange(props.value, this.valid);
+ }
this.state = {
date: props.date? new Date(props.date) :'',
isPickerVisible: false
@@ -167,7 +171,7 @@ import {Field} from './Field';
paddingLeft: 10,
paddingRight: 10,
justifyContent: 'center',
- lineHeight: 32
+ lineHeight: 45
},
input:{
paddingLeft: 10,