!function(e){function t(t){for(var n,r,o=t[0],i=t[1],s=0,l=[];s({name:o.a,type:"render",inputTypes:["datatable"],help:a.i18n.translate("expressionGauge.functions.gauge.help",{defaultMessage:"Gauge visualization"}),args:{shape:{types:["string"],options:[o.e.HORIZONTAL_BULLET,o.e.VERTICAL_BULLET,o.e.ARC,o.e.CIRCLE],help:a.i18n.translate("expressionGauge.functions.gauge.args.shape.help",{defaultMessage:"Type of gauge chart"}),required:!0,strict:!0},metric:{types:["string","vis_dimension"],help:a.i18n.translate("expressionGauge.functions.gauge.args.metric.help",{defaultMessage:"Current value"})},min:{types:["string","vis_dimension"],help:a.i18n.translate("expressionGauge.functions.gauge.args.min.help",{defaultMessage:"Minimum value"})},max:{types:["string","vis_dimension"],help:a.i18n.translate("expressionGauge.functions.gauge.args.max.help",{defaultMessage:"Maximum value"})},goal:{types:["string","vis_dimension"],help:a.i18n.translate("expressionGauge.functions.gauge.args.goal.help",{defaultMessage:"Goal Value"})},colorMode:{types:["string"],default:o.c.NONE,options:[o.c.NONE,o.c.PALETTE],help:a.i18n.translate("expressionGauge.functions.gauge.args.colorMode.help",{defaultMessage:"If set to palette, the palette colors will be applied to the bands"}),strict:!0},palette:{types:["palette"],help:a.i18n.translate("expressionGauge.functions.gauge.args.palette.help",{defaultMessage:"Provides colors for the values"})},ticksPosition:{types:["string"],default:o.f.AUTO,options:[o.f.HIDDEN,o.f.AUTO,o.f.BANDS],help:a.i18n.translate("expressionGauge.functions.gauge.args.ticksPosition.help",{defaultMessage:"Specifies the placement of ticks"}),strict:!0},labelMajor:{types:["string"],help:a.i18n.translate("expressionGauge.functions.gauge.args.labelMajor.help",{defaultMessage:"Specifies the labelMajor of the gauge chart displayed inside the chart."})},labelMajorMode:{types:["string"],options:[o.d.NONE,o.d.AUTO,o.d.CUSTOM],help:a.i18n.translate("expressionGauge.functions.gauge.args.labelMajorMode.help",{defaultMessage:"Specifies the mode of labelMajor"}),default:o.d.AUTO,strict:!0},labelMinor:{types:["string"],help:a.i18n.translate("expressionGauge.functions.gauge.args.labelMinor.help",{defaultMessage:"Specifies the labelMinor of the gauge chart"})},centralMajor:{types:["string"],help:a.i18n.translate("expressionGauge.functions.gauge.args.centralMajor.help",{defaultMessage:"Specifies the centralMajor of the gauge chart displayed inside the chart."})},centralMajorMode:{types:["string"],options:[o.d.NONE,o.d.AUTO,o.d.CUSTOM],help:a.i18n.translate("expressionGauge.functions.gauge.args.centralMajorMode.help",{defaultMessage:"Specifies the mode of centralMajor"}),strict:!0},percentageMode:{types:["boolean"],default:!1,help:a.i18n.translate("expressionGauge.functions.gauge.percentageMode.help",{defaultMessage:"Enables relative precentage mode"})},respectRanges:{types:["boolean"],default:!1,help:a.i18n.translate("expressionGauge.functions.gauge.respectRanges.help",{defaultMessage:"Respect max and min values from ranges"})},commonLabel:{types:["string"],help:a.i18n.translate("expressionGauge.functions.gauge.args.commonLabel.help",{defaultMessage:"Specifies the common label outside the chart"})},ariaLabel:{types:["string"],help:a.i18n.translate("expressionGauge.functions.gaugeChart.config.ariaLabel.help",{defaultMessage:"Specifies the aria label of the gauge chart"})}},fn(e,t,n){var s,u,l,c,p,g,d,f;Object(r.validateAccessor)(t.metric,e.columns),Object(r.validateAccessor)(t.min,e.columns),Object(r.validateAccessor)(t.max,e.columns),Object(r.validateAccessor)(t.goal,e.columns);const{centralMajor:h,centralMajorMode:b,...m}=t,{metric:_,min:v,max:M,goal:x}=m;if(!Object(i.b)(t.shape)&&(b||h))throw new Error((O=t.shape,a.i18n.translate("expressionGauge.functions.gauge.errors.centralMajorNotSupportedForShapeError",{defaultMessage:'Fields "centralMajor" and "centralMajorMode" are not supported by the shape "{shape}"',values:{shape:O}})));var O;if(null!=n&&null!==(s=n.inspectorAdapters)&&void 0!==s&&s.tables){n.inspectorAdapters.tables.reset(),n.inspectorAdapters.tables.allowCsvExport=!0;const t=Object(r.prepareLogTable)(e,[[_?[_]:void 0,a.i18n.translate("expressionGauge.logDatatable.metric",{defaultMessage:"Metric"})],[v?[v]:void 0,a.i18n.translate("expressionGauge.logDatatable.min",{defaultMessage:"Min"})],[M?[M]:void 0,a.i18n.translate("expressionGauge.logDatatable.max",{defaultMessage:"Max"})],[x?[x]:void 0,a.i18n.translate("expressionGauge.logDatatable.goal",{defaultMessage:"Goal"})]],!0);n.inspectorAdapters.tables.logDatatable("default",t)}const E=Object(i.b)(t.shape)?{centralMajorMode:b||o.b.AUTO,centralMajor:h}:{};return{type:"render",as:o.a,value:{data:e,args:{...m,...E,ariaLabel:null!==(u=null!==(l=t.ariaLabel)&&void 0!==l?l:null===(c=n.variables)||void 0===c?void 0:c.embeddableTitle)&&void 0!==u?u:null===(p=n.getExecutionContext)||void 0===p||null===(g=p.call(n))||void 0===g?void 0:g.description},canNavigateToLens:Boolean(null==n||null===(d=n.variables)||void 0===d?void 0:d.canNavigateToLens),overrides:null===(f=n.variables)||void 0===f?void 0:f.overrides}}}}),u="expressionGauge",l="expressionGauge"},function(e,t,n){n.r(t);var a=__kbnBundles__.get("plugin/visualizations/common/utils");Object.defineProperties(t,Object.getOwnPropertyDescriptors(a))},function(e,t,n){n.r(t);var a=__kbnBundles__.get("plugin/kibanaUtils/public");Object.defineProperties(t,Object.getOwnPropertyDescriptors(a))},function(e,t,n){"use strict";n.d(t,"h",(function(){return r})),n.d(t,"e",(function(){return i})),n.d(t,"f",(function(){return s})),n.d(t,"d",(function(){return u})),n.d(t,"b",(function(){return l})),n.d(t,"g",(function(){return p})),n.d(t,"c",(function(){return h})),n.d(t,"a",(function(){return b}));var a=n(3);const r=(e,t)=>{if(!t||!e)return;const n=e&&t[e];return null===n||Array.isArray(n)&&!n.length?void 0:"number"==typeof n?n:Array.isArray(n)&&"number"==typeof n[n.length-1]?n[n.length-1]:void 0};function o(e){const t=Math.floor(Math.log10(e)),n=e/Math.pow(10,t);let a=10;return n<=1?a=1:n<=2?a=2:n<=5&&(a=5),a*Math.pow(10,t)}const i=(e,t,n,a)=>{const i=null!=t&&t.max?r(t.max,e):void 0;if(null!=i)return i;if(a&&null!=n&&n.rangeMax){const a=null!=t&&t.metric?r(t.metric,e):void 0;return!a||a<(null==n?void 0:n.rangeMax)?n.rangeMax:a}if(e&&t){const{metric:r,goal:i}=t,u=r&&e[r],l=i&&e[i],c=s(e,t,n,a);if(null!=u){const e=[c,l,u].filter((e=>"number"==typeof e));return function(e,t){const n=t+1e-7,a=o(n-e),r=o(a/4);return{min:Math.floor(e/r)*r,max:Math.ceil(Math.ceil(n/r)*r)}}(c,Math.max(...e)).max}}return 100},s=(e,t,n,a)=>{const o=null!=t&&t.min?r(t.min,e):void 0;if(null!=o)return o;if(a&&null!=n&&n.rangeMin){const a=null!=t&&t.metric?r(t.metric,e):void 0;return!a||a>(null==n?void 0:n.rangeMin)?n.rangeMin:a}if(e&&t){const{metric:n,max:a}=t,r=[n&&e[n],a&&e[a]].filter((e=>"number"==typeof e));if(Math.min(...r)<=0)return Math.min(...r)-10}return 0},u=(e,t)=>{const n=null!=t&&t.goal?r(t.goal,e):void 0;if(null!=n)return n;const a=s(e,t),o=i(e,t);return Math.round(.75*(o-a)+a)},l=(e,t)=>{const{metric:n,min:r,max:o,goal:i}=e;if(n||r||o||i)return{min:r?Object(a.getAccessorByDimension)(r,t):void 0,max:o?Object(a.getAccessorByDimension)(o,t):void 0,goal:i?Object(a.getAccessorByDimension)(i,t):void 0,metric:n?Object(a.getAccessorByDimension)(n,t):void 0}};var c=n(2);const p=e=>({[c.GaugeShapes.HORIZONTAL_BULLET]:"horizontalBullet",[c.GaugeShapes.VERTICAL_BULLET]:"verticalBullet",[c.GaugeShapes.ARC]:"goal",[c.GaugeShapes.CIRCLE]:"goal"}[e]),g=()=>({angleStart:Math.PI/2,angleEnd:-(Math.PI+Math.PI/2)}),d=()=>({angleStart:Math.PI+(Math.PI-2*Math.PI/2.5)/2,angleEnd:-(Math.PI-2*Math.PI/2.5)/2}),f=()=>({}),h=e=>({[c.GaugeShapes.HORIZONTAL_BULLET]:f,[c.GaugeShapes.VERTICAL_BULLET]:f,[c.GaugeShapes.ARC]:d,[c.GaugeShapes.CIRCLE]:g}[e]()),b=(e,t)=>{const{rangeMin:n,rangeMax:a,range:r}=e.params,o=t[0],i=t[t.length-1];let s=n,u=a;if("percent"===r){const e={min:o,max:i};s=((e,{min:t,max:n})=>isFinite(e)?e*((n-t)/100):t)(s,e),u=((e,{min:t,max:n})=>isFinite(e)?e*((n-t)/100):n)(u,e)}return"number"===r&&(s=isFinite(s)?s:o,u=isFinite(u)?u:i),{min:s,max:u}}},function(e,t){e.exports=__kbnSharedDeps__.EmotionReact},function(e,t,n){"use strict";n.d(t,"a",(function(){return o})),n.d(t,"b",(function(){return r}));var a=n(0);const r=e=>[a.e.ARC,a.e.CIRCLE].includes(e),o=e=>[a.e.HORIZONTAL_BULLET,a.e.VERTICAL_BULLET].includes(e)},function(e,t,n){"use strict";n.d(t,"a",(function(){return a})),n.d(t,"b",(function(){return r})),n.d(t,"c",(function(){return o}));const a=e=>{if(e){var t;const n=e=>e.type?e:e.child?n(e.child):void 0;return null===(t=n(e))||void 0===t?void 0:t.type}},r=e=>{if(e){var t;const n=e=>e.child?n(e.child):e;return null===(t=n(e))||void 0===t?void 0:t.type}};function o(e,t){return e&&e[t]?Object.fromEntries(Object.entries(e[t]).map((([e,t])=>"ignore"===t?[e,void 0]:[e,t]))):{}}},function(e,t){e.exports=__kbnSharedDeps__.ReactDom},function(e,t,n){e.exports=n(16)(1466)},function(e,t,n){n.r(t);var a=__kbnBundles__.get("plugin/kibanaReact/public");Object.defineProperties(t,Object.getOwnPropertyDescriptors(a))},function(e,t){e.exports=__kbnSharedDeps__.KbnAnalytics},function(e,t){e.exports=__kbnSharedDeps__.React},function(e,t,n){n(15),__kbnBundles__.define("plugin/expressionGauge/public",n,17),__kbnBundles__.define("plugin/expressionGauge/common",n,2)},function(e,t,n){n.p=window.__kbnPublicPath__.expressionGauge},function(e,t){e.exports=__kbnSharedDeps_npm__},function(e,t,n){"use strict";n.r(t),n.d(t,"plugin",(function(){return _})),n.d(t,"getGoalValue",(function(){return m.d})),n.d(t,"getMaxValue",(function(){return m.e})),n.d(t,"getMinValue",(function(){return m.f})),n.d(t,"getValueFromAccessor",(function(){return m.h}));var a=n(4),r=n(2);const[o,i]=Object(a.createGetterSetter)("fieldFormats"),[s,u]=Object(a.createGetterSetter)("palette");var l=n(10),c=n.n(l),p=n(1),g=(n(13),n(9)),d=n(11),f=n(12),h=n(8),b=n(6);class plugin_ExpressionGaugePlugin{setup(e,{expressions:t,charts:i}){i.palettes.getPalettes().then((e=>{u(e)}));const l=Object(a.createStartServicesGetter)(e.getStartServices);t.registerFunction(r.gaugeFunction),t.registerRenderer((({getStartDeps:e})=>({name:r.EXPRESSION_GAUGE_NAME,displayName:p.i18n.translate("expressionGauge.renderer.visualizationName",{defaultMessage:"Gauge"}),reuseDomNode:!0,render:async(t,a,i)=>{const{core:u,plugins:l}=e();i.onDestroy((()=>{Object(g.unmountComponentAtNode)(t)}));const{GaugeComponent:p}=await n.e(1).then(n.bind(null,49));Object(g.render)(Object(b.jsx)(d.KibanaThemeProvider,{theme$:u.theme.theme$},Object(b.jsx)("div",{className:"gauge-container","data-test-subj":"gaugeChart"},Object(b.jsx)(p,c()({},a,{formatFactory:o().deserialize,chartsThemeService:l.charts.theme,paletteService:s(),renderComplete:()=>{let e;switch(a.args.shape){case r.GaugeShapes.HORIZONTAL_BULLET:e=`${r.EXPRESSION_GAUGE_NAME}_horizontal`;break;case r.GaugeShapes.VERTICAL_BULLET:e=`${r.EXPRESSION_GAUGE_NAME}_vertical`;break;default:e=r.EXPRESSION_GAUGE_NAME}const t=i.getExecutionContext(),n=Object(h.a)(t),o=Object(h.b)(t);if(n&&o){var s;const t=[`render_${o}_${e}`,a.canNavigateToLens?`render_${o}_${e}_convertable`:void 0].filter((e=>Boolean(e)));null===(s=l.usageCollection)||void 0===s||s.reportUiCounter(n,f.METRIC_TYPE.COUNT,t)}i.done()},uiState:i.uiState})))),t)}}))({getStartDeps:l}))}start(e,{fieldFormats:t}){i(t)}}var m=n(5);function _(){return new plugin_ExpressionGaugePlugin}},function(e,t){e.exports=__kbnSharedDeps__.EmotionCache},function(e,t){e.exports=__kbnSharedDeps__.ElasticCharts},function(e,t){e.exports=__kbnSharedDeps__.KbnI18nReact},function(e,t,n){n.r(t);var a=__kbnBundles__.get("plugin/charts/public");Object.defineProperties(t,Object.getOwnPropertyDescriptors(a))},function(e,t){e.exports=__kbnSharedDeps__.KbnUiTheme}]);