2016-09-20 19:09:50 +00:00
|
|
|
<div ng-controller="discoverW" class="app-container">
|
|
|
|
|
2016-12-21 18:30:24 +00:00
|
|
|
<kbn-top-nav name="discover-search" config="topNavMenu">
|
2016-12-13 19:52:22 +00:00
|
|
|
<!-- Transcluded elements. -->
|
|
|
|
|
|
|
|
<div data-transclude-slots>
|
|
|
|
<!-- Breadcrumbs. -->
|
|
|
|
<div data-transclude-slot="topLeftCorner" class="localBreadcrumbs">
|
|
|
|
<div class="localBreadcrumb">
|
|
|
|
<span ng-show="opts.savedSearch.id" class="localBreadcrumb__emphasis">
|
|
|
|
<span data-test-subj="discoverCurrentQuery" ng-bind="::opts.savedSearch.title"></span>
|
|
|
|
<i aria-label="Reload Saved Search" tooltip="Reload Saved Search" ng-click="resetQuery();" class="fa fa-undo small"></i>
|
|
|
|
</span>
|
|
|
|
<span data-test-subj="discoverQueryHits" class="localBreadcrumb__emphasis">{{(hits || 0) | number:0}}</span>
|
|
|
|
<ng-pluralize count="hits" when="{'1':'hit', 'other':'hits'}"></ng-pluralize>
|
|
|
|
</div>
|
|
|
|
</div>
|
2016-09-20 19:09:50 +00:00
|
|
|
</div>
|
|
|
|
</kbn-top-nav>
|
2016-12-13 19:52:22 +00:00
|
|
|
|
2016-09-20 19:09:50 +00:00
|
|
|
<navbar name="discover-search">
|
|
|
|
<form role="form" class="fill inline-form" ng-submit="fetch()" name="discoverSearch">
|
|
|
|
<div class="typeahead" kbn-typeahead="discover">
|
|
|
|
<div class="input-group"
|
|
|
|
ng-class="discoverSearch.$invalid ? 'has-error' : ''">
|
|
|
|
<input
|
|
|
|
parse-query
|
|
|
|
input-focus
|
|
|
|
kbn-typeahead-input
|
|
|
|
ng-model="stateQuery"
|
|
|
|
placeholder="Search..."
|
|
|
|
aria-label="Search input"
|
|
|
|
type="text"
|
|
|
|
class="form-control">
|
|
|
|
<button type="submit"
|
|
|
|
ng-disabled="discoverSearch.$invalid"
|
|
|
|
aria-label="Search">
|
|
|
|
<span aria-hidden="true" class="fa fa-search"></span></button>
|
|
|
|
</div>
|
|
|
|
<kbn-typeahead-items></kbn-typeahead-items>
|
|
|
|
</div>
|
|
|
|
</form>
|
|
|
|
<div class="button-group" role="toolbar"></div>
|
|
|
|
</navbar>
|
|
|
|
|
2016-12-13 19:52:22 +00:00
|
|
|
|
2016-09-20 19:09:50 +00:00
|
|
|
<div class="container-fluid" role="main">
|
|
|
|
<div class="row">
|
|
|
|
<filter-bar state="state"></filter-bar>
|
|
|
|
</div>
|
|
|
|
|
2016-12-13 19:52:22 +00:00
|
|
|
|
2016-09-20 19:09:50 +00:00
|
|
|
<div class="row">
|
2016-12-13 19:52:22 +00:00
|
|
|
|
2016-09-20 19:09:50 +00:00
|
|
|
<div class="col-md-2 sidebar-container collapsible-sidebar">
|
|
|
|
<disc-field-chooser
|
|
|
|
columns="state.columns"
|
|
|
|
refresh="refreshFieldList"
|
|
|
|
hits="rows"
|
|
|
|
field-counts="fieldCounts"
|
|
|
|
filter="filterQuery"
|
|
|
|
index-pattern="searchSource.get('index')"
|
|
|
|
index-pattern-list="opts.indexPatternList"
|
|
|
|
state="state">
|
|
|
|
</disc-field-chooser>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
<div class="discover-wrapper col-md-10">
|
|
|
|
<div class="discover-content">
|
|
|
|
<div ng-show="resultState === 'none'">
|
2016-09-23 08:03:25 +00:00
|
|
|
<div class="discover-overlay" style="position: relative !important; opacity: 1 !important;">
|
2016-09-20 19:09:50 +00:00
|
|
|
<h2 aria-hidden="true"><i aria-hidden="true" class="fa fa-meh-o"></i></h2>
|
|
|
|
<h4>No results found</h4>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<!-- loading -->
|
|
|
|
<div ng-show="resultState === 'loading'">
|
2016-09-23 08:03:25 +00:00
|
|
|
<div class="discover-overlay" style="position: relative !important; opacity: 1 !important;">
|
2016-09-20 19:09:50 +00:00
|
|
|
<h2>Searching</h2>
|
|
|
|
<div ng-show="fetchStatus">{{fetchStatus.complete}}/{{fetchStatus.total}}</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<!-- result -->
|
|
|
|
<div class="results" ng-show="resultState === 'ready'">
|
|
|
|
<div class="discover-timechart" ng-if="opts.timefield" ng-show="true">
|
|
|
|
<header>
|
|
|
|
<center class="small">
|
|
|
|
<span tooltip="To change the time, click the clock icon in the navigation bar">{{timeRange.from | moment}} - {{timeRange.to | moment}}</span> —
|
|
|
|
|
|
|
|
<span class="results-interval" ng-hide="showInterval">
|
|
|
|
<a
|
|
|
|
ng-click="toggleInterval()">
|
|
|
|
{{ intervalName }}
|
|
|
|
</a>
|
|
|
|
</span>
|
|
|
|
|
|
|
|
<span ng-show="showInterval" class="results-interval form-inline">
|
|
|
|
<select
|
|
|
|
class="form-control"
|
|
|
|
ng-model="state.interval"
|
|
|
|
ng-options="interval.val as interval.display for interval in intervalOptions | filter: intervalEnabled"
|
|
|
|
>
|
|
|
|
</select>
|
|
|
|
</span>
|
|
|
|
</center>
|
|
|
|
|
|
|
|
</header>
|
|
|
|
|
2017-02-07 16:05:53 +00:00
|
|
|
<visualize ng-if="vis && rows.length != 0 && state.sort" vis="vis" ui-state="uiState" es-resp="mergedEsResp" search-source="searchSource">
|
2016-09-20 19:09:50 +00:00
|
|
|
</visualize>
|
|
|
|
</div>
|
|
|
|
|
2017-02-07 16:05:53 +00:00
|
|
|
<div class="discover-table" fixed-scroll ng-style="{ 'height': tableHeight }" ng-if="state.sort && state.columns">
|
2016-09-20 19:09:50 +00:00
|
|
|
<doc-table hits="rows" index-pattern="indexPattern" sorting="state.sort" columns="state.columns" infinite-scroll="infiniteScroll"
|
|
|
|
filter="filterQuery">
|
|
|
|
</doc-table>
|
|
|
|
|
|
|
|
<div ng-if="rows.length == opts.sampleSize" class="discover-table-footer">
|
|
|
|
<center>
|
|
|
|
These are the first {{opts.sampleSize}} documents matching the search.
|
|
|
|
</center>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
</div>
|
2016-12-13 19:52:22 +00:00
|
|
|
</div>
|