forked from mirrors/gecko-dev
MozReview-Commit-ID: Lm6Y8JdF9Ga --HG-- extra : rebase_source : ef8014dde11a53026e0b702dd375ac309b9db565
73 lines
1.8 KiB
JavaScript
73 lines
1.8 KiB
JavaScript
/* This Source Code Form is subject to the terms of the Mozilla Public
|
|
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
|
|
|
"use strict";
|
|
|
|
const {
|
|
createFactory,
|
|
DOM,
|
|
PropTypes,
|
|
} = require("devtools/client/shared/vendor/react");
|
|
const { connect } = require("devtools/client/shared/vendor/react-redux");
|
|
const Actions = require("../../actions/index");
|
|
const { getSelectedRequest } = require("../../selectors/index");
|
|
|
|
// Components
|
|
const CustomRequestPanel = createFactory(require("./custom-request-panel"));
|
|
const TabboxPanel = createFactory(require("./tabbox-panel"));
|
|
|
|
const { div } = DOM;
|
|
|
|
/*
|
|
* Network details panel component
|
|
*/
|
|
function NetworkDetailsPanel({
|
|
activeTabId,
|
|
cloneSelectedRequest,
|
|
request,
|
|
selectTab,
|
|
toolbox,
|
|
}) {
|
|
if (!request) {
|
|
return null;
|
|
}
|
|
|
|
return (
|
|
div({ className: "network-details-panel" },
|
|
!request.isCustom ?
|
|
TabboxPanel({
|
|
activeTabId,
|
|
request,
|
|
selectTab,
|
|
toolbox,
|
|
}) :
|
|
CustomRequestPanel({
|
|
cloneSelectedRequest,
|
|
request,
|
|
})
|
|
)
|
|
);
|
|
}
|
|
|
|
NetworkDetailsPanel.displayName = "NetworkDetailsPanel";
|
|
|
|
NetworkDetailsPanel.propTypes = {
|
|
activeTabId: PropTypes.string,
|
|
cloneSelectedRequest: PropTypes.func.isRequired,
|
|
open: PropTypes.bool,
|
|
request: PropTypes.object,
|
|
selectTab: PropTypes.func.isRequired,
|
|
toolbox: PropTypes.object.isRequired,
|
|
};
|
|
|
|
module.exports = connect(
|
|
(state) => ({
|
|
activeTabId: state.ui.detailsPanelSelectedTab,
|
|
request: getSelectedRequest(state),
|
|
}),
|
|
(dispatch) => ({
|
|
cloneSelectedRequest: () => dispatch(Actions.cloneSelectedRequest()),
|
|
selectTab: (tabId) => dispatch(Actions.selectDetailsPanelTab(tabId)),
|
|
}),
|
|
)(NetworkDetailsPanel);
|