(window.controls_bundle_jsonpfunction=window.controls_bundle_jsonpfunction||[]).push([[3],{109:function(e,t,i){var a=i(50),n=i(110);"string"==typeof(n=n.__esModule?n.default:n)&&(n=[[e.i,n,""]]);a(n,{insert:"head",singleton:!1}),e.exports=n.locals||{}},110:function(e,t,i){(t=i(51)(!1)).push([e.i,".rangeSlider__popoverOverride{height:100%;max-width:100%;width:100%}@media only screen and (min-width:768px) and (max-width:991px){.rangeSlider__panelOverride{min-width:480px}}@media only screen and (min-width:992px) and (max-width:1199px){.rangeSlider__panelOverride{min-width:480px}}@media only screen and (min-width:1200px){.rangeSlider__panelOverride{min-width:480px}}.rangeSlider__anchorOverride>div{height:100%}.rangeSliderAnchor__button{background-color:#16171c;height:100%;padding:0;width:100%}.rangeSliderAnchor__button .euiFormControlLayout__childrenWrapper{border-radius:0 6px 6px 0!important}.rangeSliderAnchor__button .euiToolTipAnchor{width:100%}.rangeSliderAnchor__button .rangeSliderAnchor__fieldNumber{background-color:unset;box-shadow:none;font-weight:700;text-align:center}.rangeSliderAnchor__button .rangeSliderAnchor__fieldNumber:invalid{background-image:none;color:#7a7f89;font-weight:400;text-decoration:line-through}.rangeSliderAnchor__button .rangeSliderAnchor__fieldNumber::placeholder{color:#535966;font-weight:400;text-decoration:none}",""]),e.exports=t},111:function(e,t,i){var a=i(50),n=i(112);"string"==typeof(n=n.__esModule?n.default:n)&&(n=[[e.i,n,""]]);a(n,{insert:"head",singleton:!1}),e.exports=n.locals||{}},112:function(e,t,i){(t=i(51)(!1)).push([e.i,".rangeSlider__popoverOverride{height:100%;max-width:100%;width:100%}@media only screen and (min-width:768px) and (max-width:991px){.rangeSlider__panelOverride{min-width:480px}}@media only screen and (min-width:992px) and (max-width:1199px){.rangeSlider__panelOverride{min-width:480px}}@media only screen and (min-width:1200px){.rangeSlider__panelOverride{min-width:480px}}.rangeSlider__anchorOverride>div{height:100%}.rangeSliderAnchor__button{background-color:#fbfcfd;height:100%;padding:0;width:100%}.rangeSliderAnchor__button .euiFormControlLayout__childrenWrapper{border-radius:0 6px 6px 0!important}.rangeSliderAnchor__button .euiToolTipAnchor{width:100%}.rangeSliderAnchor__button .rangeSliderAnchor__fieldNumber{background-color:unset;box-shadow:none;font-weight:700;text-align:center}.rangeSliderAnchor__button .rangeSliderAnchor__fieldNumber:invalid{background-image:none;color:#69707d;font-weight:400;text-decoration:line-through}.rangeSliderAnchor__button .rangeSliderAnchor__fieldNumber::placeholder{color:#98a2b3;font-weight:400;text-decoration:none}",""]),e.exports=t},121:function(e,t,i){"use strict";i.r(t),i.d(t,"RangeSliderControlContext",(function(){return R})),i.d(t,"useRangeSlider",(function(){return V})),i.d(t,"RangeSliderEmbeddable",(function(){return range_slider_embeddable_RangeSliderEmbeddable}));var a=i(1),n=i.n(a),r=i(5),s=i(41),o=i.n(s),l=i(2),d=i(53),c=i(6),u=i.n(c),h=i(28),p=i(42),g=i(21),m=i(0),b=i(20),v=i(40),S=i(35),f=i(17),_=i(8),w=i(60),x=i.n(w);const O=()=>m.i18n.translate("controls.rangeSlider.popover.noDataHelpText",{defaultMessage:"Selected range resulted in no data. No filter was applied."}),j=()=>m.i18n.translate("controls.rangeSlider.popover.noAvailableDataHelpText",{defaultMessage:"There is no data to display. Adjust the time range and filters."});var y=i(4);const F=({onChange:e,value:t,rangeRef:i})=>{const[a,n]=Object(r.useState)((()=>e=>e)),{dataViews:{get:s}}=f.a.getServices(),o=V(),l=o.select((e=>e.output.dataViewId)),d=o.select((e=>e.explicitInput.id)),c=o.select((e=>e.explicitInput.title)),u=o.select((e=>e.componentState.min)),h=o.select((e=>e.componentState.max)),p=o.select((e=>e.componentState.field)),g=o.select((e=>e.componentState.isInvalid)),[m,b]=Object(r.useState)(u),[v,S]=Object(r.useState)(h);x()((()=>{const[e,i]=[parseFloat(t[0]),parseFloat(t[1])];b(Math.min(u,isNaN(e)?1/0:e,isNaN(i)?1/0:i)),S(Math.max(h,isNaN(e)?-1/0:e,isNaN(i)?-1/0:i))})),Object(r.useEffect)((()=>{(async()=>{if(!l||!p)return;const e=await s(l);n((()=>{var t;return null!==(t=null==e?void 0:e.getFormatterForField(p).getConverterFor("text"))&&void 0!==t?t:e=>e}))})()}),[p,l,s]);const w=Object(r.useMemo)((()=>[{value:u,label:a(String(u))},{value:h,label:a(String(h))}]),[u,h,a]),F=Object(r.useMemo)((()=>[{min:u,max:h,color:"success"}]),[u,h]);return Object(y.jsx)("div",{"data-test-subj":"rangeSlider__popover"},Object(y.jsx)(_.EuiPopoverTitle,{paddingSize:"s"},c),u!==-1/0&&h!==1/0?Object(y.jsx)(_.EuiDualRange,{id:d,min:m,max:v,onChange:([t,i])=>{e([String(t),String(i)])},value:t,ticks:w,levels:F,showTicks:!0,fullWidth:!0,ref:i,"data-test-subj":"rangeSlider__slider"}):g?Object(y.jsx)(_.EuiText,{size:"s","data-test-subj":"rangeSlider__helpText"},O()):Object(y.jsx)(_.EuiText,{size:"s","data-test-subj":"rangeSlider__helpText"},j()))};var I=i(59);i(76);const C=({value:e,onChange:t,isPopoverOpen:i,setIsPopoverOpen:a})=>{const n=V(),s=n.select((e=>e.componentState.min)),o=n.select((e=>e.componentState.max)),l=n.select((e=>e.componentState.isInvalid)),d=n.select((e=>e.explicitInput.id)),c=n.select((e=>e.output.loading)),u=Object(r.useCallback)((e=>{i&&e.target instanceof HTMLInputElement||a(!0)}),[i,a]);return Object(y.jsx)(_.EuiFormControlLayoutDelimited,{fullWidth:!0,onClick:u,isLoading:c,className:"rangeSliderAnchor__button","data-test-subj":`range-slider-control-${d}`,startControl:Object(y.jsx)(_.EuiFieldNumber,{controlOnly:!0,fullWidth:!0,value:e[0]===String(s)?"":e[0],onChange:i=>{t([i.target.value,e[1]])},placeholder:String(s),isInvalid:l,className:"rangeSliderAnchor__fieldNumber","data-test-subj":"rangeSlider__lowerBoundFieldNumber"}),endControl:Object(y.jsx)(_.EuiFieldNumber,{controlOnly:!0,fullWidth:!0,value:e[1]===String(o)?"":e[1],onChange:i=>{t([e[0],i.target.value])},placeholder:String(o),isInvalid:l,className:"rangeSliderAnchor__fieldNumber","data-test-subj":"rangeSlider__upperBoundFieldNumber"})})},N=()=>{const e=Object(r.useRef)(null),[t,i]=Object(r.useState)(!1),a=V(),n=a.select((e=>e.componentState.error)),s=a.select((e=>e.explicitInput.value)),[o,d]=Object(r.useState)(null!=s?s:["",""]),c=Object(r.useMemo)((()=>Object(l.debounce)((e=>{a.dispatch.setSelectedRange(e)}),750)),[a.dispatch]);Object(r.useEffect)((()=>{c(o)}),[c,o]),Object(r.useEffect)((()=>{d(null!=s?s:["",""])}),[s]);const u=Object(y.jsx)(C,{value:o,onChange:d,isPopoverOpen:t,setIsPopoverOpen:i});return n?Object(y.jsx)(I.a,{error:n}):Object(y.jsx)(_.EuiInputPopover,{input:u,isOpen:t,display:"block",panelPaddingSize:"s",className:"rangeSlider__popoverOverride",anchorClassName:"rangeSlider__anchorOverride",panelClassName:"rangeSlider__panelOverride",closePopover:()=>{i(!1)},anchorPosition:"downCenter",attachToAnchor:!1,disableFocusTrap:!0,onPanelResize:t=>{var i;null===(i=e.current)||void 0===i||i.onResize(t)}},Object(y.jsx)(F,{rangeRef:e,value:o,onChange:d}))},A={setSelectedRange:(e,t)=>{e.explicitInput.value=t.payload},setField:(e,t)=>{e.componentState.field=t.payload},setDataViewId:(e,t)=>{e.output.dataViewId=t.payload},setErrorMessage:(e,t)=>{e.componentState.error=t.payload},setLoading:(e,t)=>{e.output.loading=t.payload},setMinMax:(e,t)=>{e.componentState.min=Math.floor(parseFloat(t.payload.min)),e.componentState.max=Math.ceil(parseFloat(t.payload.max))},publishFilters:(e,t)=>{e.output.filters=t.payload},setIsInvalid:(e,t)=>{e.componentState.isInvalid=t.payload}},E=(e,t)=>{if(!e||!t)return!1;const{filters:i,...a}=e,{filters:n,...r}=t;return!!u()(a,r)&&!!Object(g.compareFilters)(null!=n?n:[],null!=i?i:[],g.COMPARE_ALL_OPTIONS)},R=Object(r.createContext)(null),V=()=>{const e=Object(r.useContext)(R);if(null==e)throw new Error("useRangeSlider must be used inside RangeSliderControlContext.");return e};class range_slider_embeddable_RangeSliderEmbeddable extends b.Embeddable{constructor(e,t,i,a){super(t,i,a),n()(this,"type",S.RANGE_SLIDER_CONTROL),n()(this,"deferEmbeddableLoad",!0),n()(this,"subscriptions",new h.Subscription),n()(this,"node",void 0),n()(this,"dataService",void 0),n()(this,"dataViewsService",void 0),n()(this,"dataView",void 0),n()(this,"field",void 0),n()(this,"filters",[]),n()(this,"select",void 0),n()(this,"getState",void 0),n()(this,"dispatch",void 0),n()(this,"onStateChange",void 0),n()(this,"cleanupStateTools",void 0),n()(this,"initialize",(async()=>{const e=this.getInput().value;e||this.setInitializationFinished();try{await this.runRangeSliderQuery(),await this.buildFilter()}catch(e){this.onLoadingError(e.message)}e&&this.setInitializationFinished(),this.setupSubscriptions()})),n()(this,"setupSubscriptions",(()=>{const e=this.getInput$().pipe(Object(p.map)((e=>{var t;return{validate:!Boolean(null===(t=e.ignoreParentSettings)||void 0===t?void 0:t.ignoreValidations),lastReloadRequestTime:e.lastReloadRequestTime,dataViewId:e.dataViewId,fieldName:e.fieldName,timeRange:e.timeRange,timeslice:e.timeslice,filters:e.filters,query:e.query}})),Object(p.distinctUntilChanged)(E),Object(p.skip)(1));this.subscriptions.add(e.subscribe((async e=>{try{await this.runRangeSliderQuery(),await this.buildFilter()}catch(e){this.onLoadingError(e.message)}}))),this.subscriptions.add(this.getInput$().pipe(Object(p.distinctUntilChanged)(((e,t)=>{var i,a;return Object(l.isEqual)(null!==(i=e.value)&&void 0!==i?i:["",""],null!==(a=t.value)&&void 0!==a?a:["",""])})),Object(p.skip)(1)).subscribe(this.buildFilter))})),n()(this,"getCurrentDataViewAndField",(async()=>{const{explicitInput:{dataViewId:e,fieldName:t}}=this.getState();if(!this.dataView||this.dataView.id!==e)try{this.dataView=await this.dataViewsService.get(e),this.dispatch.setDataViewId(this.dataView.id)}catch(e){this.onLoadingError(e.message)}var i;return!this.dataView||this.field&&this.field.name===t||(this.field=this.dataView.getFieldByName(t),this.field?this.dispatch.setField(null===(i=this.field)||void 0===i?void 0:i.toSpec()):this.onLoadingError(m.i18n.translate("controls.rangeSlider.errors.fieldNotFound",{defaultMessage:"Could not locate field: {fieldName}",values:{fieldName:t}}))),{dataView:this.dataView,field:this.field}})),n()(this,"runRangeSliderQuery",(async()=>{this.dispatch.setLoading(!0);const{dataView:e,field:t}=await this.getCurrentDataViewAndField();if(!e||!t)return;const i=this.getInput(),{ignoreParentSettings:a,timeRange:n,timeslice:r}=i;let{filters:s=[]}=i;const o=void 0!==r?{from:new Date(r[0]).toISOString(),to:new Date(r[1]).toISOString(),mode:"absolute"}:n;if((null==a||!a.ignoreTimerange)&&o){const t=this.dataService.timefilter.createFilter(e,o);t&&(s=s.concat(t))}this.filters=s;const{min:l,max:d}=await this.fetchMinMax({dataView:e,field:t});this.dispatch.setMinMax({min:`${null!=l?l:"-Infinity"}`,max:`${null!=d?d:"Infinity"}`})})),n()(this,"fetchMinMax",(async({dataView:e,field:t})=>{const i=await this.dataService.searchSource.create();i.setField("size",0),i.setField("index",e);const{ignoreParentSettings:a,query:n}=this.getInput();null!=a&&a.ignoreFilters||i.setField("filter",this.filters),n&&i.setField("query",n);const r={};t&&(t.scripted?r.script={source:t.script,lang:t.lang}:r.field=t.name);const s={maxAgg:{max:r},minAgg:{min:r}};i.setField("aggs",s);const o=await Object(h.lastValueFrom)(i.fetch$());return{min:Object(l.get)(o,"rawResponse.aggregations.minAgg.value"),max:Object(l.get)(o,"rawResponse.aggregations.maxAgg.value")}})),n()(this,"buildFilter",(async()=>{const{componentState:{min:e,max:t},explicitInput:{value:i}}=this.getState(),{ignoreParentSettings:a,query:n}=this.getInput(),[r,s]=null!=i?i:["",""],o=void 0!==e&&void 0!==t,c=!Object(l.isEmpty)(r),u=!Object(l.isEmpty)(s),p=c||u,{dataView:m,field:b}=await this.getCurrentDataViewAndField();if(!m||!b)return;if(!o||!p)return void Object(d.batch)((()=>{this.dispatch.setLoading(!1),this.dispatch.setIsInvalid(!(null!=a&&a.ignoreValidations)&&p),this.dispatch.setDataViewId(m.id),this.dispatch.publishFilters([]),this.dispatch.setErrorMessage(void 0)}));const v={};r&&(v.gte=Math.max(parseFloat(r),e)),s&&(v.lte=Math.min(parseFloat(s),t));const S=Object(g.buildRangeFilter)(b,v,m);if(S.meta.key=null==b?void 0:b.name,S.meta.type="range",S.meta.params=v,null==a||!a.ignoreValidations){var f,_;const e=await this.dataService.searchSource.create(),t=[...this.filters,S];e.setField("size",0),e.setField("index",m),e.setField("filter",t),n&&e.setField("query",n);const i=await Object(h.lastValueFrom)(e.fetch$()),a=null==i||null===(f=i.rawResponse)||void 0===f||null===(_=f.hits)||void 0===_?void 0:_.total;if(!("number"==typeof a?a:null==a?void 0:a.value))return void Object(d.batch)((()=>{this.dispatch.setLoading(!1),this.dispatch.setIsInvalid(!0),this.dispatch.setDataViewId(m.id),this.dispatch.publishFilters([]),this.dispatch.setErrorMessage(void 0)}))}Object(d.batch)((()=>{this.dispatch.setLoading(!1),this.dispatch.setIsInvalid(!1),this.dispatch.setDataViewId(m.id),this.dispatch.publishFilters([S]),this.dispatch.setErrorMessage(void 0)}))})),n()(this,"reload",(async()=>{try{await this.runRangeSliderQuery(),await this.buildFilter()}catch(e){this.onLoadingError(e.message)}})),n()(this,"destroy",(()=>{super.destroy(),this.cleanupStateTools(),this.subscriptions.unsubscribe()})),n()(this,"render",(e=>{this.node&&o.a.unmountComponentAtNode(this.node),this.node=e;const t=f.a.getContextProvider();o.a.render(Object(y.jsx)(v.KibanaThemeProvider,{theme$:f.a.getServices().theme.theme$},Object(y.jsx)(t,null,Object(y.jsx)(R.Provider,{value:this},Object(y.jsx)(N,null)))),e)})),({data:this.dataService,dataViews:this.dataViewsService}=f.a.getServices());const r=e.createReduxEmbeddableTools({embeddable:this,reducers:A,initialComponentState:{isInvalid:!1,min:-1/0,max:1/0}});this.select=r.select,this.getState=r.getState,this.dispatch=r.dispatch,this.onStateChange=r.onStateChange,this.cleanupStateTools=r.cleanup,this.initialize()}onLoadingError(e){Object(d.batch)((()=>{this.dispatch.setLoading(!1),this.dispatch.publishFilters([]),this.dispatch.setErrorMessage(e)}))}clearSelections(){this.dispatch.setSelectedRange(["",""])}isChained(){return!0}}},60:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var a=i(29).__importDefault(i(61));t.default=function(e){a.default((function(){e()}))}},61:function(e,t,i){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var a=i(5);t.default=function(e){a.useEffect(e,[])}},76:function(e,t,i){switch(window.__kbnThemeTag__){case"v8dark":return i(109);case"v8light":return i(111)}}}]);