reduce the buttons for parameters to just search

a new button appears saying Add 'xxx' if that's an option
diff --git a/ui-modules/blueprint-composer/app/components/spec-editor/spec-editor.less b/ui-modules/blueprint-composer/app/components/spec-editor/spec-editor.less
index d0eb7c1..6a3ad1f 100644
--- a/ui-modules/blueprint-composer/app/components/spec-editor/spec-editor.less
+++ b/ui-modules/blueprint-composer/app/components/spec-editor/spec-editor.less
@@ -241,11 +241,14 @@
       padding-top: 10px;
       border-top: 1px solid @gray-lighter;
 
-      &:first-child {
+      &:first-child, &.spec-add-button, &.config-add-button {
         margin-top: 0;
         padding-top: 0;
         border: none;
       }
+      &.spec-add-button, &.config-add-button {
+        text-align: right;
+      }
     }
 
     .form-group {
@@ -799,14 +802,15 @@
     }
   }
   
+  .spec-parameter-filters,
   .spec-configuration-filters,
   .spec-configuration-add {
     background: @gray-lighter;
     border: 1px solid @gray-light;
     transition: 0.15s ease all;
     padding: 0.5em;
-    margin-top: -12px;
-    margin-bottom: 24px;
+    margin-top: -4px;
+    margin-bottom: 16px;
     .dropdown-menu li a {
         // quite a lot of padding in normal dropdown, in the ul and in the a
         padding: 0;
@@ -847,7 +851,7 @@
       color: @gray;
     }
   }
-  .spec-configuration-filters .form-group {
+  .spec-configuration-filters .form-group, .spec-parameter-filters .form-group {
     margin-bottom: 5px;
     &:last-child {
       margin-bottom: 0;  // get padding from parent
diff --git a/ui-modules/blueprint-composer/app/components/spec-editor/spec-editor.template.html b/ui-modules/blueprint-composer/app/components/spec-editor/spec-editor.template.html
index 2224ed0..70f164e 100644
--- a/ui-modules/blueprint-composer/app/components/spec-editor/spec-editor.template.html
+++ b/ui-modules/blueprint-composer/app/components/spec-editor/spec-editor.template.html
@@ -58,50 +58,25 @@
         Parameters
         <span ng-if="specEditor.getParameterIssues().length> 0" class="badge" ng-class="getBadgeClass(specEditor.getParameterIssues())">{{specEditor.getParameterIssues().length}}</span>
         <span class="pull-right" ng-show="$parent.stateWrapped.state">
-            <span class="spec-toolbar-action" ng-class="{'active': state.parameters.filter.open}"><i class="fa fa-filter collapsible-action" title="Filter parameters" ng-click="$event.stopPropagation(); $event.preventDefault(); state.parameters.filter.open = !state.parameters.filter.open" ng-class="{'text-info': state.parameters.search.length > 0}"></i></span>
-            <span class="spec-toolbar-action"><i class="fa fa-plus collapsible-action" title="Add parameter" ng-click="$event.stopPropagation(); $event.preventDefault(); state.parameters.add.open = !state.parameters.add.open"></i></span>
+            <span class="spec-toolbar-action" ng-class="{'active': state.parameters.filter.open}"><i class="fa fa-search-plus collapsible-action" title="Search or add a parameter" ng-click="$event.stopPropagation(); $event.preventDefault(); state.parameters.filter.open = !state.parameters.filter.open" ng-class="{'text-info': state.parameters.search.length > 0}"></i></span>
         </span>
     </heading>
 
-    <fieldset uib-collapse="!state.parameters.filter.open" class="spec-configuration-filters">
+    <fieldset uib-collapse="!state.parameters.filter.open" class="spec-parameter-filters">
         <div class="form-group">
-            <input ng-model="state.parameters.search" type="text" class="form-control" placeholder="Search for parameter by name" auto-focus="state.parameters.filter.open" blur-on-enter />
-        </div>
-    </fieldset>
-
-    <fieldset uib-collapse="!state.parameters.add.open" class="spec-configuration-add">
-        <input auto-focus="state.parameters.add.open"
-               type="text"
-               autocomplete="off"
-               ng-model="state.parameters.add.value"
-               placeholder="Add a new parameter or open existing"
-               class="form-control"
-               uib-typeahead="parameter.name for parameter in state.parameters.add.list | filter:{name:$viewValue}"
-               typeahead-template-url="blueprint-composer/component/spec-editor/parameter-item.html"
-               typeahead-editable="true"
-               typeahead-show-hint="true"
-               typeahead-min-length="0"
-               typeahead-select-on-blur="true"
-               typeahead-on-select="onFocusOnParameter($item, $model, $label, $event)"
-               typeahead-no-results="noResults"
-               blur-on-enter />
-
-        <div ng-if="state.parameters.add.value.length > 0 && noResults" uib-dropdown uib-dropdown-toggle auto-close="disabled" is-open="true">
-            <ul class="dropdown-menu">
-                <!-- mimic real dropdown if nothing found -->
-                <li class="uib-typeahead-match"><a ng-click="specEditor.addParameter(state.parameters.add.value)">
-                    <div class="dropdown-item" ng-init="item = match.model">
-                        <div class="dropdown-row">
-                            <span ng-bind-html="state.parameters.add.value | uibTypeaheadHighlight:query" class="config-name"></span>
-                            <i class="fa fa-fw fa-plus-square-o"></i>
-                        </div>
-                    </div>
-                </a></li>
-            </ul>
+            <input auto-focus="state.parameters.filter.open" 
+                type="text"
+                autocomplete="off" 
+                ng-model="state.parameters.search" 
+                placeholder="Search or add a parameter" 
+                class="form-control"
+                blur-on-enter 
+                />
         </div>
     </fieldset>
 
     <div class="spec-configuration parameters">
+
         <div class="spec-empty-state" ng-if="filteredParams.length === 0">
             <div ng-if="parameters.length === 0">
                 <h4>No parameters</h4>
@@ -121,7 +96,7 @@
                 </p>
             </div>
         </div>
-
+    
         <form name="formSpecParameter" novalidate class="lightweight">
             <div ng-repeat="item in (filteredParams = (model.parameters | filter:{name:state.parameters.search})) track by item.name">
                 <div class="form-group"
@@ -231,6 +206,15 @@
                 </div>
             </div>
         </form>
+        
+        <div class="spec-add-button" ng-if="filteredParams.length > 0 && state.parameters.search && !specEditor.getParameter(state.parameters.search)">
+                <p class="buttons">
+                    <button class="btn btn-sm btn-success" ng-click="specEditor.addParameter(state.parameters.search)">
+                        <i class="fa fa-plus"></i> Add '{{state.parameters.search}}'
+                    </button>
+                </p>
+        </div>
+        
     </div>
 </br-collapsible>