Sha256: 78198b6539bb2415819619e930182d8e6418d9af6cd380f3bcf989fe026c0295

Contents?: true

Size: 1.45 KB

Versions: 2

Compression:

Stored size: 1.45 KB

Contents

class InvalidTag extends Lanes.React.BaseComponent

    mixins: [
        Lanes.React.Mixins.ReadEditingState
        Lanes.React.Mixins.FieldErrors
        Lanes.React.Mixins.Viewport
    ]

    render: ->
        return null unless (invalidMsg = @fieldInvalidValueMessage())
        tooltip =
            <BS.Tooltip id="error-tooltip">{invalidMsg}</BS.Tooltip>
        <BS.OverlayTrigger
            delayShow={300} delayHide={150} container={@context.viewport.lanes}
            placement="top" overlay={tooltip}
        >
            <span ref='target'>
                <LC.Icon ref='target' type='exclamation-triangle' className='error' />
            </span>
        </BS.OverlayTrigger>

class Lanes.Components.ControlLabel extends Lanes.React.Component

    mixins: [
        Lanes.React.Mixins.ReadEditingState
        Lanes.React.Mixins.FieldErrors
    ]

    propTypes:
        model: Lanes.PropTypes.State
        invalidMsg: React.PropTypes.string
    focusInput: (ev) ->
        _.dom(ev.target).closest('.form-group')
            .qs('input', raise: false).focusAndSelect()
    render: ->
        if @props.titleOnly
            <span className="label-title-only">
                {@props.label}
                <InvalidTag {...@props} />
            </span>
        else
            <label className="control-label" onClick={@focusInput}>
                <span className="label-title">{@props.label}</span>
                <InvalidTag {...@props} />
            </label>

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
lanes-0.4.0 client/lanes/components/shared/ControlLabel.cjsx
lanes-0.3.0 client/lanes/components/shared/ControlLabel.cjsx