From caa89fc234c198ce6f67ee7d0fa396a5531684bd Mon Sep 17 00:00:00 2001 From: Shawn Axsom Date: Mon, 19 Mar 2018 20:09:18 -0400 Subject: [PATCH] minor refactorings --- .../modals/request-switcher-modal.js | 21 ++++++++++++------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/packages/insomnia-app/app/ui/components/modals/request-switcher-modal.js b/packages/insomnia-app/app/ui/components/modals/request-switcher-modal.js index e5c4741b06d..591077bd398 100644 --- a/packages/insomnia-app/app/ui/components/modals/request-switcher-modal.js +++ b/packages/insomnia-app/app/ui/components/modals/request-switcher-modal.js @@ -2,6 +2,7 @@ import React, {PureComponent} from 'react'; import PropTypes from 'prop-types'; import autobind from 'autobind-decorator'; import classnames from 'classnames'; +import {buildQueryStringFromParams, joinUrlAndQueryString} from 'insomnia-url'; import Button from '../base/button'; import Modal from '../base/modal'; import ModalHeader from '../base/modal-header'; @@ -126,11 +127,11 @@ class RequestSwitcherModal extends PureComponent { * Appends path of ancestor groups, delimited by forward slashes * E.g. Folder1/Folder2/Folder3 */ - _groupOf (request) { + _groupOf (requestOrRequestGroup) { const {workspaceChildren} = this.props; const requestGroups = workspaceChildren.filter(d => d.type === models.requestGroup.type); - const matchedGroups = requestGroups.filter(g => g._id === request.parentId); - const currentGroupName = request.type === models.requestGroup.type && request.name ? `${request.name}` : ''; + const matchedGroups = requestGroups.filter(g => g._id === requestOrRequestGroup.parentId); + const currentGroupName = requestOrRequestGroup.type === models.requestGroup.type && requestOrRequestGroup.name ? `${requestOrRequestGroup.name}` : ''; if (matchedGroups.length === 0) { return currentGroupName; @@ -145,16 +146,20 @@ class RequestSwitcherModal extends PureComponent { _isMatch (searchStrings) { return (request) => { + let finalUrl = request.url; + if (request.parameters) { + finalUrl = joinUrlAndQueryString( + finalUrl, + buildQueryStringFromParams(request.parameters)); + } + // Match request attributes const matchesAttributes = fuzzyMatchAll(searchStrings, [ request.name, - request.url, + finalUrl, request.method, - this._groupOf(request), - ...(request.parameters - ? request.parameters.map(p => `${p.name}=${p.value}`) - : []) + this._groupOf(request) ]); // Match exact Id