Sha256: 56747c7e5216ff656c4a15284ff0fc1a654d42b92a1901368c8397bd436458c1

Contents?: true

Size: 1.16 KB

Versions: 1

Compression:

Stored size: 1.16 KB

Contents

class Lanes.Components.DateTime extends Lanes.React.Component

    mixins: [
        Lanes.Components.Form.FieldMixin
    ]
    fieldClassName: 'date-time'

    getDefaultProps: ->
        format: 'ddd, MMM Do YYYY, h:mm a'

    propTypes:
        unlabled: React.PropTypes.bool
        format:   React.PropTypes.string


    handleKeyDown: (ev) ->
        @props.onEnter() if ev.key is 'Enter'

    renderDisplay: (props) ->
        clean = LC.Form.FieldMixin.statics.cleanSizeProps(props)
        <BS.FormControl.Static {...clean}>
            {@getDateValue().format(this.props.format)}
        </BS.FormControl.Static>

    getDateValue: ->
        _.moment.utc(@fieldMixinGetValue())

    handleDateTimeChange: (val) ->
        @fieldMixinSetValue({target: {value: Lanes.u.utcToLocalDate(val)}})

    renderEdit: (props) ->
        props = _.extend({
            ref:       'control'
            value:     Lanes.u.dateToUTC(@getDateValue().toDate())
            onChange:  @handleDateTimeChange
        }, @props)
        props = _.omit(LC.Form.FieldMixin.statics.cleanSizeProps(props), 'writable')
        <Lanes.Vendor.ReactWidgets.DateTimePicker
            {...props}
        />

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
lanes-0.7.0 client/lanes/components/shared/DateTime.cjsx