diff --git a/app/components/Sidebar.js b/app/components/Sidebar.js
index 797476a242..2387b199a1 100644
--- a/app/components/Sidebar.js
+++ b/app/components/Sidebar.js
@@ -98,13 +98,13 @@ class Sidebar extends Component {
{this._renderChildren(children)}
- {/**/}
+
)
}
@@ -119,7 +119,6 @@ Sidebar.propTypes = {
// Other
children: PropTypes.array.isRequired,
- workspaceId: PropTypes.string.isRequired,
// Optional
filter: PropTypes.string,
diff --git a/app/components/SidebarRequestGroupRow.js b/app/components/SidebarRequestGroupRow.js
index 26d5522781..d3b86055da 100644
--- a/app/components/SidebarRequestGroupRow.js
+++ b/app/components/SidebarRequestGroupRow.js
@@ -13,7 +13,7 @@ const SidebarRequestGroupRow = ({
addRequestToRequestGroup,
}) => {
let folderIconClass = 'fa-folder';
- let expanded = !requestGroup.collapsed;
+ let expanded = !requestGroup.meta.collapsed;
folderIconClass += !expanded ? '' : '-open';
folderIconClass += isActive ? '' : '-o';
diff --git a/app/containers/App.js b/app/containers/App.js
index 7ec5f289da..94293ca4d5 100644
--- a/app/containers/App.js
+++ b/app/containers/App.js
@@ -1,5 +1,6 @@
import React, {Component, PropTypes} from 'react';
-import ReactDOM from 'react-dom'
+import ReactDOM from 'react-dom';
+import classnames from 'classnames';
import {connect} from 'react-redux'
import {bindActionCreators} from 'redux';
import Mousetrap from '../lib/mousetrap';
@@ -37,8 +38,8 @@ class App extends Component {
activeRequest: null,
draggingSidebar: false,
draggingPane: false,
- sidebarWidth: workspace.sidebarWidth || DEFAULT_SIDEBAR_WIDTH, // rem
- paneWidth: workspace.paneWidth || DEFAULT_PANE_WIDTH // % (fr)
+ sidebarWidth: workspace.meta.sidebarWidth || DEFAULT_SIDEBAR_WIDTH, // rem
+ paneWidth: workspace.meta.paneWidth || DEFAULT_PANE_WIDTH // % (fr)
};
this.globalKeyMap = {
@@ -168,12 +169,12 @@ class App extends Component {
_savePaneWidth () {
const {paneWidth} = this.state;
- db.workspaceUpdate(this._getActiveWorkspace(), {paneWidth});
+ db.workspaceUpdateMeta(this._getActiveWorkspace(), {paneWidth});
}
_saveSidebarWidth () {
const {sidebarWidth} = this.state;
- db.workspaceUpdate(this._getActiveWorkspace(), {sidebarWidth});
+ db.workspaceUpdateMeta(this._getActiveWorkspace(), {sidebarWidth});
}
_getActiveWorkspace (props) {
@@ -191,7 +192,7 @@ class App extends Component {
_getActiveRequest (props) {
props = props || this.props;
const {entities} = props;
- let activeRequestId = this._getActiveWorkspace(props).activeRequestId;
+ let activeRequestId = this._getActiveWorkspace(props).meta.activeRequestId;
return activeRequestId ? entities.requests[activeRequestId] : null;
}
@@ -254,7 +255,7 @@ class App extends Component {
}
componentWillReceiveProps (nextProps) {
- const sidebarWidth = this._getActiveWorkspace(nextProps).sidebarWidth;
+ const sidebarWidth = this._getActiveWorkspace(nextProps).meta.sidebarWidth;
this.setState({sidebarWidth});
}
@@ -287,7 +288,7 @@ class App extends Component {
const workspace = this._getActiveWorkspace();
- const activeRequest = this._getActiveRequest()
+ const activeRequest = this._getActiveRequest();
const activeRequestId = activeRequest ? activeRequest._id : null;
const responses = Object.keys(entities.responses).map(id => entities.responses[id]);
@@ -306,15 +307,15 @@ class App extends Component {
const {sidebarWidth, paneWidth} = this.state;
const gridTemplateColumns = `${sidebarWidth}rem 0 ${paneWidth}fr 0 ${1 - paneWidth}fr`;
+ const classes = classnames('wrapper', {'wrapper--sidebar-hidden': !workspace.meta.sidebarVisible});
return (
-
+
db.workspaceUpdate(workspace, {activeRequestId: r._id})}
+ activateRequest={r => db.workspaceUpdateMeta(workspace, {activeRequestId: r._id})}
changeFilter={filter => db.workspaceUpdate(workspace, {filter})}
addRequestToRequestGroup={requestGroup => db.requestCreate({parentId: requestGroup._id})}
- toggleRequestGroup={requestGroup => db.requestGroupUpdate(requestGroup, {collapsed: !requestGroup.collapsed})}
+ toggleRequestGroup={requestGroup => db.requestGroupUpdateMeta(requestGroup, {collapsed: !requestGroup.meta.collapsed})}
activeRequestId={activeRequest ? activeRequest._id : null}
filter={workspace.filter || ''}
children={children}
@@ -348,8 +349,8 @@ class App extends Component {
ref="responsePane"
response={activeResponse}
request={activeRequest}
- previewMode={activeRequest ? activeRequest.previewMode : PREVIEW_MODE_FRIENDLY}
- updatePreviewMode={previewMode => db.requestUpdate(activeRequest, {previewMode})}
+ previewMode={activeRequest ? activeRequest.meta.previewMode : PREVIEW_MODE_FRIENDLY}
+ updatePreviewMode={previewMode => db.requestUpdateMeta(activeRequest, {previewMode})}
loadingRequests={requests.loadingRequests}
/>
diff --git a/app/containers/WorkspaceDropdown.js b/app/containers/WorkspaceDropdown.js
index 356ff8dc97..1f22422051 100644
--- a/app/containers/WorkspaceDropdown.js
+++ b/app/containers/WorkspaceDropdown.js
@@ -101,6 +101,11 @@ class WorkspaceDropdown extends Component {
+
+
+