Sha256: 990e31a68f65415b9a535d50036461345c998c2b94c93c3d8bfb70ce314518c4

Contents?: true

Size: 1.24 KB

Versions: 5

Compression:

Stored size: 1.24 KB

Contents

class Lanes.Workspace.Layout extends Lanes.React.Component

    dataObjects:
        uistate:  -> Lanes.Workspace.Extension.uistate
        viewport: -> @context.viewport

    childContextTypes:
        uistate:  Lanes.PropTypes.State

    getChildContext: ->
        uistate: @uistate

    pageClasses: ->
        _.classnames( 'page-container', @uistate.screen_menu_size,
            {"popover_menu": @uistate.popover_menu}
        )

    componentWillMount: ->
        @uistate.set(@props)
        useBasename = Lanes.Vendor.BrowserHistory.useBasename
        history = useBasename(Lanes.Vendor.BrowserHistory.createHistory)({
            basename: Lanes.config.root_path
        })
        @historyStopListening = history.listen (location) ->
            Lanes.Screens.Definitions.setBrowserLocation(location)
        @setState({history})

    componentWillUnmount: -> @historyStopListening()

    render: ->
        <div className="layout">
            <LC.Modal {...@context.viewport.modalProps} />
            <Lanes.Workspace.Navbar history={@state.history} />
            <div className={@pageClasses()}>
                <Lanes.Workspace.ScreensMenu history={@state.history} />
                <Lanes.Workspace.ScreenView />
            </div>
        </div>

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
lanes-0.5.6 client/lanes/workspace/Layout.cjsx
lanes-0.5.5 client/lanes/workspace/Layout.cjsx
lanes-0.5.0 client/lanes/workspace/Layout.cjsx
lanes-0.4.0 client/lanes/workspace/Layout.cjsx
lanes-0.3.0 client/lanes/workspace/Layout.cjsx