This commit is contained in:
John Lyon-Smith
2018-05-14 21:41:33 -07:00
parent 5d67cb69b0
commit 609bb1c3d5
6 changed files with 22 additions and 92 deletions

View File

@@ -18,4 +18,6 @@
# org.gradle.parallel=true # org.gradle.parallel=true
android.useDeprecatedNdk=true android.useDeprecatedNdk=true
# android.enableAapt2=false
# See https://github.com/react-navigation/react-navigation/issues/3097
android.enableAapt2=false

View File

@@ -8,25 +8,25 @@ export const config = {
googleGeocodeAPIKey: "AIzaSyCs4JVT6gysnY5dAJ7KjVJYeykLv_xz1GI", googleGeocodeAPIKey: "AIzaSyCs4JVT6gysnY5dAJ7KjVJYeykLv_xz1GI",
googleGeocodeURL: "https://maps.googleapis.com/maps/api/geocode/json", googleGeocodeURL: "https://maps.googleapis.com/maps/api/geocode/json",
refererURL: "https://dar.kss.us.com", refererURL: "https://dar.kss.us.com",
//defaultUser: "john@lyon-smith.org", defaultUser: "john@lyon-smith.org",
defaultUser: "", //defaultUser: "",
//minGPSAccuracy: 50, //minGPSAccuracy: 50,
minGPSAccuracy: 20, minGPSAccuracy: 20,
minDistanceToItem: 10, minDistanceToItem: 10,
geocodeDelayMilliseconds: 500, geocodeDelayMilliseconds: 500,
// This region is downtown Toronto // This region is downtown Toronto
initialRegion: {
latitude: 43.653908,
longitude: -79.384293,
latitudeDelta: 0.0922,
longitudeDelta: 0.0421,
},
// This region is Bainbridge Island
// initialRegion: { // initialRegion: {
// latitude: 47.629536, // latitude: 43.653908,
// longitude: -122.524162, // longitude: -79.384293,
// latitudeDelta: 0.0922, // latitudeDelta: 0.0922,
// longitudeDelta: 0.0421, // longitudeDelta: 0.0421,
// }, // },
// This region is Bainbridge Island
initialRegion: {
latitude: 47.629536,
longitude: -122.524162,
latitudeDelta: 0.0922,
longitudeDelta: 0.0421,
},
// alwaysShowWorkItemInAR: true, // alwaysShowWorkItemInAR: true,
} }

View File

@@ -24,6 +24,7 @@ export class BoundInput extends React.Component {
const { name, binder } = this.props const { name, binder } = this.props
this.state = binder.getFieldState(name) this.state = binder.getFieldState(name)
this.handleChangeText = this.handleChangeText.bind(this)
} }
componentWillReceiveProps(nextProps) { componentWillReceiveProps(nextProps) {
@@ -32,12 +33,12 @@ export class BoundInput extends React.Component {
} }
} }
@autobind // @autobind : There seems to be a bug with using this here, so we just do it the old way
handleChangeText(newText) { handleChangeText(newText) {
if (this && this.props && this.props.binder) { const { binder, name } = this.props
this.setState(
this.props.binder.updateFieldValue(this.props.name, newText) if (binder) {
) this.setState(binder.updateFieldValue(name, newText))
} }
} }

View File

@@ -1,68 +0,0 @@
import React from "react"
import PropTypes from "prop-types"
import { View, Text, TouchableHighlight } from "react-native"
import autobind from "autobind-decorator"
export class BoundText extends React.Component {
static propTypes = {
name: PropTypes.string.isRequired,
label: PropTypes.string,
value: PropTypes.string,
binder: PropTypes.object.isRequired,
}
constructor(props) {
super(props)
const { name, binder } = this.props
binder.addListener(name, this.updateValue)
this.state = binder.getFieldState(name)
}
@autobind
updateValue(e) {
this.setState(e.state)
}
componentWillUnmount() {
this.props.binder.removeListener(this.props.name, this.updateValue)
}
componentWillReceiveProps(nextProps) {
if (nextProps.binder !== this.props.binder) {
this.props.binder.removeListener(this.props.name, this.updateValue)
nextProps.binder.addListener(nextProps.name, this.updateValue)
this.setState(nextProps.binder.getFieldState(nextProps.name))
}
}
render() {
const { name, label, value } = this.props
const { visible, disabled } = this.state
if (!visible) {
return null
}
return (
<View>
<Text style={{ color: "black", fontSize: 14, marginBottom: 5 }}>
{label}
</Text>
<Text
style={{
paddingLeft: 5,
paddingRight: 5,
borderColor: "gray",
borderWidth: 1,
fontSize: 16,
paddingTop: 7,
paddingBottom: 7,
}}>
{value}
</Text>
</View>
)
}
}

View File

@@ -9,14 +9,9 @@ import {
} from "../Modal" } from "../Modal"
import { Column, Row } from "ui" import { Column, Row } from "ui"
import { sizeInfo } from "ui/style" import { sizeInfo } from "ui/style"
import PropTypes from "prop-types"
import autobind from "autobind-decorator" import autobind from "autobind-decorator"
export class Profile extends Component { export class Profile extends Component {
static propTypes = {
changeTitle: PropTypes.func.isRequired,
}
constructor(props) { constructor(props) {
super(props) super(props)

View File

@@ -8,8 +8,8 @@ ReactDOM.render(
document.getElementById('root') document.getElementById('root')
) )
// HACK: See https://github.com/facebook/react/issues/5619 // HACK: Setting placeholder color. See https://github.com/facebook/react/issues/5619
let css = document.createElement('style') let css = document.createElement("style")
document.body.appendChild(css) document.body.appendChild(css)
css.innerHTML = `::-webkit-input-placeholder { color: ${colorInfo.textPlaceholder} }` css.innerHTML = `::-webkit-input-placeholder { color: ${colorInfo.textPlaceholder} }`