@kong-ui-public/analytics-metric-provider 5.0.4 → 5.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/style.css CHANGED
@@ -1 +1 @@
1
- .metricscard-tooltip,.trafficcard.active .metricscard-tooltip{pointer-events:all}.metricscard[data-v-bf70de13]{display:flex;flex-direction:column;width:100%}@media (max-width: 767px){.metricscard[data-v-bf70de13]{max-width:none;width:auto}}@media (min-width: 768px){.metricscard[data-v-bf70de13]{height:100%;justify-content:space-evenly}}.metricscard[data-v-bf70de13]:hover{border:none;text-decoration:none}.metricscard-title[data-v-bf70de13]{align-items:center;color:#000933;color:var(--kong-ui-metric-card-title, #000933);display:flex;flex-direction:row;font-size:16px;font-weight:700;line-height:20px;margin:0}.metricscard-description[data-v-bf70de13]{color:#afb7c5;color:var(--kong-ui-metric-card-value, #afb7c5);font-size:12px;line-height:16px;margin-top:10px}.metricscard-icon[data-v-bf70de13]{margin-right:6px}.metricscard-value[data-v-bf70de13]{color:#000933;color:var(--kong-ui-metric-card-value, #000933);display:flex;flex-direction:row;font-weight:600;justify-content:space-between;line-height:32px}.metricscard-value.sm[data-v-bf70de13]{line-height:24px}.metricscard-valuetrend[data-v-bf70de13]{display:flex;flex-direction:column;row-gap:12px}.metricscard-valuetrend.is-compact[data-v-bf70de13]{align-items:center;flex-direction:row!important;justify-content:space-between;margin-top:0}.metricscard-trend[data-v-bf70de13]{align-items:center;column-gap:8px;display:flex}.metricscard-trend-change[data-v-bf70de13]{align-items:center;border-radius:4px;display:flex;flex-direction:row;font-size:12px;font-weight:600;padding:4px 8px}.metricscard-trend-change .kui-icon[data-v-bf70de13]{margin-right:4px}.metricscard-trend-change.positive[data-v-bf70de13]{background-color:#ecfffb;background-color:var(--kong-ui-metric-card-trend-bg-positive, #ecfffb);color:#007d60;color:var(--kong-ui-metric-card-trend-positive, #007d60)}.metricscard-trend-change.negative[data-v-bf70de13]{background-color:#ffe5e5;background-color:var(--kong-ui-metric-card-trend-bg-negative, #ffe5e5);color:#ad000e;color:var(--kong-ui-metric-card-trend-negative, #ad000e)}.metricscard-trend-change.neutral[data-v-bf70de13]{background-color:#e0e4ea;background-color:var(--kong-ui-metric-card-trend-bg-neutral, #e0e4ea);color:#52596e;color:var(--kong-ui-metric-card-trend-neutral, #52596e)}.metricscard-trend-range[data-v-bf70de13]{color:#000933;font-size:12px}.metricscard-tooltip[data-v-bf70de13]{display:inline-flex;margin:auto 0 auto 4px;vertical-align:middle}.metricscard-error[data-v-bf70de13]{align-items:center;color:#3a3f51;display:flex;flex-direction:row;font-size:12px;margin-top:8px}.metricscard-error .kong-icon-warning[data-v-bf70de13]{margin-right:12px}.metricscard.active .metricscard-tooltip[data-v-bf70de13]{pointer-events:all}.loading-tabs[data-v-f7eb9c40]{display:flex;flex-direction:column}.loading-tabs-large[data-v-f7eb9c40]{padding:4px;row-gap:12px;width:240px}.loading-tabs-small[data-v-f7eb9c40]{padding:2px;row-gap:8px;width:120px}.loading-tabs-small .box[data-v-f7eb9c40]{height:12px}@media (max-width: 767px){.loading-tabs[data-v-f7eb9c40]{width:auto}}.kong-ui-public-metric-card-container[data-v-081c6557]{background-color:transparent;background-color:var(--kong-ui-metric-card-background, transparent);display:flex;flex-direction:row;justify-content:space-between;width:100%;column-gap:24px;row-gap:16px}@media (max-width: 767px){.kong-ui-public-metric-card-container[data-v-081c6557]{column-gap:16px;row-gap:16px;flex-direction:column}}.kong-ui-public-metric-card-container.sm[data-v-081c6557]{column-gap:0;row-gap:0}.kong-ui-public-metric-card-container .error-display[data-v-081c6557]{align-items:center;display:flex;justify-content:center;margin:auto}.kong-ui-public-metric-card-container .error-display-icon[data-v-081c6557]{display:flex}.kong-ui-public-metric-card-container .error-display-message[data-v-081c6557]{color:#6c7489;font-size:14px;margin-left:12px}
1
+ .metricscard-tooltip,.trafficcard.active .metricscard-tooltip{pointer-events:all}.metricscard[data-v-b64f16bb]{display:flex;flex-direction:column;width:100%}@media (max-width: 767px){.metricscard[data-v-b64f16bb]{max-width:none;width:auto}}@media (min-width: 768px){.metricscard[data-v-b64f16bb]{height:100%;justify-content:space-evenly}}.metricscard[data-v-b64f16bb]:hover{border:none;text-decoration:none}.metricscard-title[data-v-b64f16bb]{align-items:center;color:#000933;color:var(--kong-ui-metric-card-title, #000933);display:flex;flex-direction:row;font-size:14px;font-weight:500;line-height:16px;margin:0}.metricscard-title.sm[data-v-b64f16bb]{font-size:12px}.metricscard-description[data-v-b64f16bb]{color:#afb7c5;color:var(--kong-ui-metric-card-value, #afb7c5);font-size:12px;line-height:16px;margin-top:10px}.metricscard-icon[data-v-b64f16bb]{margin-right:6px}.metricscard-value[data-v-b64f16bb]{color:#000933;color:var(--kong-ui-metric-card-value, #000933);display:flex;flex-direction:row;font-weight:600;justify-content:space-between;line-height:32px}.metricscard-value.sm[data-v-b64f16bb]{line-height:24px}.metricscard-valuetrend[data-v-b64f16bb]{display:flex;flex-direction:column;row-gap:12px}.metricscard-valuetrend.is-compact[data-v-b64f16bb]{align-items:center;flex-direction:row!important;justify-content:space-between;margin-top:0}.metricscard-trend[data-v-b64f16bb]{align-items:center;column-gap:8px;display:flex}.metricscard-trend-change[data-v-b64f16bb]{align-items:center;border-radius:4px;display:flex;flex-direction:row;font-size:12px;font-weight:600;padding:4px 8px}.metricscard-trend-change .kui-icon[data-v-b64f16bb]{margin-right:4px}.metricscard-trend-change.positive[data-v-b64f16bb]{background-color:#ecfffb;background-color:var(--kong-ui-metric-card-trend-bg-positive, #ecfffb);color:#007d60;color:var(--kong-ui-metric-card-trend-positive, #007d60)}.metricscard-trend-change.negative[data-v-b64f16bb]{background-color:#ffe5e5;background-color:var(--kong-ui-metric-card-trend-bg-negative, #ffe5e5);color:#ad000e;color:var(--kong-ui-metric-card-trend-negative, #ad000e)}.metricscard-trend-change.neutral[data-v-b64f16bb]{background-color:#e0e4ea;background-color:var(--kong-ui-metric-card-trend-bg-neutral, #e0e4ea);color:#52596e;color:var(--kong-ui-metric-card-trend-neutral, #52596e)}.metricscard-trend-range[data-v-b64f16bb]{color:#000933;font-size:12px}.metricscard-tooltip[data-v-b64f16bb]{display:inline-flex;margin:auto 0 auto 4px;vertical-align:middle}.metricscard-error[data-v-b64f16bb]{align-items:center;color:#3a3f51;display:flex;flex-direction:row;font-size:12px;margin-top:8px}.metricscard-error .kong-icon-warning[data-v-b64f16bb]{margin-right:12px}.metricscard.active .metricscard-tooltip[data-v-b64f16bb]{pointer-events:all}.loading-tabs[data-v-f7eb9c40]{display:flex;flex-direction:column}.loading-tabs-large[data-v-f7eb9c40]{padding:4px;row-gap:12px;width:240px}.loading-tabs-small[data-v-f7eb9c40]{padding:2px;row-gap:8px;width:120px}.loading-tabs-small .box[data-v-f7eb9c40]{height:12px}@media (max-width: 767px){.loading-tabs[data-v-f7eb9c40]{width:auto}}.kong-ui-public-metric-card-container[data-v-081c6557]{background-color:transparent;background-color:var(--kong-ui-metric-card-background, transparent);display:flex;flex-direction:row;justify-content:space-between;width:100%;column-gap:24px;row-gap:16px}@media (max-width: 767px){.kong-ui-public-metric-card-container[data-v-081c6557]{column-gap:16px;row-gap:16px;flex-direction:column}}.kong-ui-public-metric-card-container.sm[data-v-081c6557]{column-gap:0;row-gap:0}.kong-ui-public-metric-card-container .error-display[data-v-081c6557]{align-items:center;display:flex;justify-content:center;margin:auto}.kong-ui-public-metric-card-container .error-display-icon[data-v-081c6557]{display:flex}.kong-ui-public-metric-card-container .error-display-message[data-v-081c6557]{color:#6c7489;font-size:14px;margin-left:12px}
@@ -1935,7 +1935,7 @@ const Yt = { class: "metricscard" }, Xt = {
1935
1935
  for (const [a, n] of r)
1936
1936
  t[a] = n;
1937
1937
  return t;
1938
- }, ti = /* @__PURE__ */ me(ri, [["__scopeId", "data-v-bf70de13"]]), ii = {}, ni = { class: "loading-tabs" };
1938
+ }, ti = /* @__PURE__ */ me(ri, [["__scopeId", "data-v-b64f16bb"]]), ii = {}, ni = { class: "loading-tabs" };
1939
1939
  function ai(e, r) {
1940
1940
  const t = qe("KSkeletonBox");
1941
1941
  return p(), m("div", ni, [
@@ -1 +1 @@
1
- (function(w,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("@kong-ui-public/analytics-utilities"),require("@kong-ui-public/i18n"),require("@kong-ui-public/analytics-config-store")):typeof define=="function"&&define.amd?define(["exports","vue","@kong-ui-public/analytics-utilities","@kong-ui-public/i18n","@kong-ui-public/analytics-config-store"],t):(w=typeof globalThis<"u"?globalThis:w||self,t(w["kong-ui-public-vitals-metric-provider"]={},w.Vue,w["kong-ui-public-analytics-utilities"],w["kong-ui-public-i18n"],w["kong-ui-public-analytics-config-store"]))})(this,function(w,t,N,te,re){"use strict";const ke={general:{notAvailable:"N/A"},metricCard:{short:{traffic:"Requests",errorRate:"Error Rate",latency:"P99 Latency"},long:{traffic:"Number of Requests",errorRate:"Average Error Rate",latency:"P99 Latency"}},trendRange:{custom:"vs previous {numDays, plural, =1 {day} other {# days}}","15m":"vs previous 15 minutes","1h":"vs previous hour","6h":"vs previous 6 hours","12h":"vs previous 12 hours","24h":"vs previous 24 hours","7d":"vs previous 7 days","30d":"vs previous 30 days",current_week:"vs previous week",current_month:"vs previous month",current_quarter:"vs previous quarter",previous_week:"vs previous time period",previous_month:"vs previous time period",previous_quarter:"vs previous quarter"}};function we(){const e=te.createI18n("en-us",ke);return{i18n:e,i18nT:te.i18nTComponent(e)}}const Ee=2,L=["1XX","2XX","3XX","4XX","5XX"],ie=["4XX","5XX"],Ne="analytics-query-provider";var ne=(e=>(e.VALIDATING="VALIDATING",e.VALIDATING_HAS_DATA="VALIDATING_HAS_DATA",e.PENDING="PENDING",e.SUCCESS="SUCCESS",e.SUCCESS_HAS_DATA="SUCCESS_HAS_DATA",e.ERROR="ERROR",e.STALE_IF_ERROR="STALE_IF_ERROR",e))(ne||{});const _e=e=>{var r,i,o,a,n;return e?!!((r=Object.keys(e))!=null&&r.length||(i=e.data)!=null&&i.length||(a=(o=e.data)==null?void 0:o.data)!=null&&a.length||!((n=e.data)!=null&&n.data)&&typeof e.data=="object"&&Object.keys(e==null?void 0:e.data).length):!1};function Ie(e=t.ref({}),r,i,o=_e){const a=t.ref("PENDING");return t.watchEffect(()=>{const n=o(e.value);if(e.value&&n&&i.value){a.value="VALIDATING_HAS_DATA";return}if(e.value&&i.value){a.value="VALIDATING";return}if(e.value&&r.value){a.value="STALE_IF_ERROR";return}if(e.value===void 0&&!r.value){a.value="PENDING";return}if(e.value&&!r.value&&n){a.value="SUCCESS_HAS_DATA";return}if(e.value&&!r.value){a.value="SUCCESS";return}e.value===void 0&&r&&(a.value="ERROR")}),{state:a,swrvState:ne}}const x=Symbol("default"),P="status_code_grouped",ae=(e,r,i,o,a)=>{e[r][i]||(e[r][i]={}),e[r][i][o]=a};function Re(e,r){var p;const i=((p=e.meta.metric_names)==null?void 0:p[0])||"",o=e.meta.start_ms,a=Object.keys(e.meta.display||{}),n=!!a.find(f=>f===P),d=a.find(f=>f!==P);return a.length>2||a.length>1&&!n?(console.error("Don't know how to work with provided dimensions:",a),{previous:{[x]:{[x]:0}},current:{[x]:{[x]:0}}}):e.data.reduce((f,l)=>{const s=l.event[i],c=d?l.event[d]:x,u=n?l.event[P]:x;return new Date(l.timestamp).getTime()===o&&r?ae(f,"previous",c,u,s):ae(f,"current",c,u,s),f},{previous:{},current:{}})}function xe(e){e.queryReady===void 0&&(e.queryReady=t.computed(()=>!0));const{i18n:r}=B.useI18n(),i=t.computed(()=>{var c,u;return{metrics:e.metrics,dimensions:[...(c=e.dimensions)!=null&&c.length?[...e.dimensions]:[],...e.withTrend.value?["time"]:[]],granularity:e.withTrend.value?"trend":void 0,...(u=e.filter.value)!=null&&u.length?{filters:e.filter.value}:{},time_range:e.timeframe.value.v4Query(e.tz.value)}}),o=t.computed(()=>{var u,m,C,g;if(!((u=e.queryReady)!=null&&u.value)||e.featureFlags&&!e.featureFlags.every(y=>y))return null;const c=(m=e.filter)!=null&&m.value?JSON.stringify(e.filter.value):"";return`metric-fetcher-${e.timeframe.value.cacheKey()}-${(C=e.dimensions)==null?void 0:C.join("-")}-${(g=e.metrics)==null?void 0:g.join("-")}-${c}`}),{response:a,error:n,isValidating:d}=B.useRequest(()=>o.value,()=>e.queryFn(i.value,e.abortController??new AbortController),{refreshInterval:e.refreshInterval,revalidateOnFocus:!1,errorRetryCount:Ee}),{state:p,swrvState:f}=Ie(a,n,d),l=t.computed(()=>{var c,u,m,C,g,y,k;return!((u=(c=a.value)==null?void 0:c.data)!=null&&u.length)||!((C=(m=a.value)==null?void 0:m.meta)!=null&&C.display)||!((k=(y=(g=a.value)==null?void 0:g.meta)==null?void 0:y.metric_names)!=null&&k.length)?{current:{},previous:{}}:Re(a.value,e.withTrend.value)}),s=t.computed(()=>{var c,u,m;if(e.timeframe.value.key==="custom"){if(!((u=(c=a.value)==null?void 0:c.meta)!=null&&u.start_ms))return"";const{start_ms:C,end_ms:g}=a.value.meta;let y=(g-C)/(1e3*60*60*24);return e.withTrend.value&&(y/=2),r.t("trendRange.custom",{numDays:Math.round(y)})}else return e.withTrend.value?r.t(`trendRange.${e.timeframe.value.key}`):r.t(`trendRange.${(m=N.TimePeriods.get(N.TimeframeKeys.ONE_DAY))==null?void 0:m.key}`)});return{isLoading:t.computed(()=>f.PENDING===p.value),hasError:t.computed(()=>f.ERROR===p.value),raw:a,mapped:l,trendRange:s}}const q=(e,r,i=x,o)=>(o??[x]).reduce((n,d)=>{const p=e[r][i];return p?n+(p[d]||0):n},0);function Te(e){const{cardType:r,title:i,description:o,record:a,hasError:n,increaseIsBad:d,formatValueFn:p,trendRange:f}=e;return t.computed(()=>{let l=0,s=0;if(a!=null&&a.value)try{l=q(a.value,"current",e.lookupKey,e.sumGroupedValues),s=q(a.value,"previous",e.lookupKey,e.sumGroupedValues)}catch(c){console.error("Metric card data doesn't have the expected structure:",c)}return{cardType:r,hasError:n.value,currentValue:l,previousValue:s,title:i.value,description:o,increaseIsBad:!!d,formatValueFn:p,trendRange:f==null?void 0:f.value}})}var K=new WeakMap,oe=0;function Be(e){if(!e.length)return"";for(var r="arg",i=0;i<e.length;++i){var o=void 0;e[i]===null||typeof e[i]!="object"&&typeof e[i]!="function"?typeof e[i]=="string"?o='"'+e[i]+'"':o=String(e[i]):K.has(e[i])?o=K.get(e[i]):(o=oe,K.set(e[i],oe++)),r+="@"+o}return r}function Ve(e){if(typeof e=="function")try{e=e()}catch{e=""}return Array.isArray(e)?e=Be(e):e=String(e||""),e}var Z=function(){function e(r){r===void 0&&(r=0),this.items=new Map,this.ttl=r}return e.prototype.serializeKey=function(r){return Ve(r)},e.prototype.get=function(r){var i=this.serializeKey(r);return this.items.get(i)},e.prototype.set=function(r,i,o){var a=this.serializeKey(r),n=o||this.ttl,d=Date.now(),p={data:i,createdAt:d,expiresAt:n?d+n:1/0};this.dispatchExpire(n,p,a),this.items.set(a,p)},e.prototype.dispatchExpire=function(r,i,o){var a=this;r&&setTimeout(function(){var n=Date.now(),d=n>=i.expiresAt;d&&a.delete(o)},r)},e.prototype.delete=function(r){this.items.delete(r)},e}();function ze(){return typeof navigator.onLine<"u"?navigator.onLine:!0}function qe(){return typeof document<"u"&&typeof document.visibilityState<"u"?document.visibilityState!=="hidden":!0}var De=function(e){return fetch(e).then(function(r){return r.json()})};const j={isOnline:ze,isDocumentVisible:qe,fetcher:De};var I=function(){return I=Object.assign||function(e){for(var r,i=1,o=arguments.length;i<o;i++){r=arguments[i];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e},I.apply(this,arguments)},D=function(e,r,i,o){function a(n){return n instanceof i?n:new i(function(d){d(n)})}return new(i||(i=Promise))(function(n,d){function p(s){try{l(o.next(s))}catch(c){d(c)}}function f(s){try{l(o.throw(s))}catch(c){d(c)}}function l(s){s.done?n(s.value):a(s.value).then(p,f)}l((o=o.apply(e,r||[])).next())})},A=function(e,r){var i={label:0,sent:function(){if(n[0]&1)throw n[1];return n[1]},trys:[],ops:[]},o,a,n,d;return d={next:p(0),throw:p(1),return:p(2)},typeof Symbol=="function"&&(d[Symbol.iterator]=function(){return this}),d;function p(l){return function(s){return f([l,s])}}function f(l){if(o)throw new TypeError("Generator is already executing.");for(;i;)try{if(o=1,a&&(n=l[0]&2?a.return:l[0]?a.throw||((n=a.return)&&n.call(a),0):a.next)&&!(n=n.call(a,l[1])).done)return n;switch(a=0,n&&(l=[l[0]&2,n.value]),l[0]){case 0:case 1:n=l;break;case 4:return i.label++,{value:l[1],done:!1};case 5:i.label++,a=l[1],l=[0];continue;case 7:l=i.ops.pop(),i.trys.pop();continue;default:if(n=i.trys,!(n=n.length>0&&n[n.length-1])&&(l[0]===6||l[0]===2)){i=0;continue}if(l[0]===3&&(!n||l[1]>n[0]&&l[1]<n[3])){i.label=l[1];break}if(l[0]===6&&i.label<n[1]){i.label=n[1],n=l;break}if(n&&i.label<n[2]){i.label=n[2],i.ops.push(l);break}n[2]&&i.ops.pop(),i.trys.pop();continue}l=r.call(e,i)}catch(s){l=[6,s],a=0}finally{o=n=0}if(l[0]&5)throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}},Ae=function(e,r){var i=typeof Symbol=="function"&&e[Symbol.iterator];if(!i)return e;var o=i.call(e),a,n=[],d;try{for(;(r===void 0||r-- >0)&&!(a=o.next()).done;)n.push(a.value)}catch(p){d={error:p}}finally{try{a&&!a.done&&(i=o.return)&&i.call(o)}finally{if(d)throw d.error}}return n},Le=function(e,r,i){if(i||arguments.length===2)for(var o=0,a=r.length,n;o<a;o++)(n||!(o in r))&&(n||(n=Array.prototype.slice.call(r,0,o)),n[o]=r[o]);return e.concat(n||Array.prototype.slice.call(r))},le=new Z,O=new Z,G=new Z,se={cache:le,refreshInterval:0,ttl:0,serverTTL:1e3,dedupingInterval:2e3,revalidateOnFocus:!0,revalidateDebounce:0,shouldRetryOnError:!0,errorRetryInterval:5e3,errorRetryCount:5,fetcher:j.fetcher,isOnline:j.isOnline,isDocumentVisible:j.isDocumentVisible};function Me(e,r,i){var o=O.get(e);if(o)o.data.push(r);else{var a=5e3;O.set(e,[r],i>0?i+a:i)}}function Oe(e,r,i){if(i.isDocumentVisible()&&!(i.errorRetryCount!==void 0&&r>i.errorRetryCount)){var o=Math.min(r||0,i.errorRetryCount),a=o*i.errorRetryInterval;setTimeout(function(){e(null,{errorRetryCount:o+1,shouldRetryOnError:!0})},a)}}var de=function(e,r,i,o){return i===void 0&&(i=le),o===void 0&&(o=se.ttl),D(void 0,void 0,void 0,function(){var a,n,d,p,f,l,s;return A(this,function(c){switch(c.label){case 0:if(!He(r))return[3,5];c.label=1;case 1:return c.trys.push([1,3,,4]),[4,r];case 2:return a=c.sent(),[3,4];case 3:return p=c.sent(),n=p,[3,4];case 4:return[3,6];case 5:a=r,c.label=6;case 6:if(d=!1,f={data:a,error:n,isValidating:d},typeof a<"u")try{i.set(e,f,o)}catch(u){console.error("swrv(mutate): failed to set cache",u)}return l=O.get(e),l&&l.data.length&&(s=l.data.filter(function(u){return u.key===e}),s.forEach(function(u,m){typeof f.data<"u"&&(u.data=f.data),u.error=f.error,u.isValidating=f.isValidating;var C=m===s.length-1;C||delete s[m]}),s=s.filter(Boolean)),[2,f]}})})};function Fe(){for(var e=this,r=[],i=0;i<arguments.length;i++)r[i]=arguments[i];var o,a,n=I({},se),d=!1,p=!1,f=t.getCurrentInstance(),l=(f==null?void 0:f.proxy)||f;if(!l)return console.error("Could not get current instance, check to make sure that `useSwrv` is declared in the top level of the setup function."),null;var s=(l==null?void 0:l.$isServer)||!1;r.length>=1&&(o=r[0]),r.length>=2&&(a=r[1]),r.length>2&&(n=I(I({},n),r[2]));var c=s?n.serverTTL:n.ttl,u=typeof o=="function"?o:t.ref(o);typeof a>"u"&&(a=n.fetcher);var m=null;m||(m=t.reactive({data:void 0,error:void 0,isValidating:!0,key:null}));var C=function(v,h){return D(e,void 0,void 0,function(){var T,b,V,M,Q,Ce,W,ve=this;return A(this,function(J){switch(J.label){case 0:return T=m.data===void 0,b=u.value,b?(V=n.cache.get(b),M=V&&V.data,m.isValidating=!0,M&&(m.data=M.data,m.error=M.error),Q=v||a,!Q||!n.isDocumentVisible()&&!T||(h==null?void 0:h.forceRevalidate)!==void 0&&!(h!=null&&h.forceRevalidate)?(m.isValidating=!1,[2]):V&&(Ce=!!(Date.now()-V.createdAt>=n.dedupingInterval||h!=null&&h.forceRevalidate),!Ce)?(m.isValidating=!1,[2]):(W=function(){return D(ve,void 0,void 0,function(){var z,Se,ee,be;return A(this,function($){switch($.label){case 0:return z=G.get(b),z?[3,2]:(Se=Array.isArray(b)?b:[b],ee=Q.apply(void 0,Le([],Ae(Se),!1)),G.set(b,ee,n.dedupingInterval),[4,de(b,ee,n.cache,c)]);case 1:return $.sent(),[3,4];case 2:return[4,de(b,z.data,n.cache,c)];case 3:$.sent(),$.label=4;case 4:return m.isValidating=!1,G.delete(b),m.error!==void 0&&(be=!d&&n.shouldRetryOnError&&(h?h.shouldRetryOnError:!0),be&&Oe(C,h?h.errorRetryCount:1,n)),[2]}})})},M&&n.revalidateDebounce?(setTimeout(function(){return D(ve,void 0,void 0,function(){return A(this,function(z){switch(z.label){case 0:return d?[3,2]:[4,W()];case 1:z.sent(),z.label=2;case 2:return[2]}})})},n.revalidateDebounce),[3,3]):[3,1])):[2];case 1:return[4,W()];case 2:J.sent(),J.label=3;case 3:return[2]}})})},g=function(){return D(e,void 0,void 0,function(){return A(this,function(v){return[2,C(null,{shouldRetryOnError:!1})]})})},y=null;t.onMounted(function(){var v=function(){return D(e,void 0,void 0,function(){return A(this,function(h){switch(h.label){case 0:return!m.error&&n.isOnline()?[4,C()]:[3,2];case 1:return h.sent(),[3,3];case 2:y&&clearTimeout(y),h.label=3;case 3:return n.refreshInterval&&!d&&(y=setTimeout(v,n.refreshInterval)),[2]}})})};n.refreshInterval&&(y=setTimeout(v,n.refreshInterval)),n.revalidateOnFocus&&(document.addEventListener("visibilitychange",g,!1),window.addEventListener("focus",g,!1))}),t.onUnmounted(function(){d=!0,y&&clearTimeout(y),n.revalidateOnFocus&&(document.removeEventListener("visibilitychange",g,!1),window.removeEventListener("focus",g,!1));var v=O.get(u.value);v&&(v.data=v.data.filter(function(h){return h!==m}))});try{t.watch(u,function(v){t.isReadonly(u)||(u.value=v),m.key=v,m.isValidating=!!v,Me(u.value,m,c),!s&&!p&&u.value&&C(),p=!1},{immediate:!0})}catch{}var k=I(I({},t.toRefs(m)),{mutate:function(v,h){return C(v,I(I({},h),{forceRevalidate:!0}))}});return k}function He(e){return e!==null&&typeof e=="object"&&typeof e.then=="function"}function $e(e,r,i){const{data:o,error:a,isValidating:n,mutate:d}=Fe(e,r,{revalidateDebounce:500,revalidateOnFocus:!1,dedupingInterval:100,...i});return{data:t.computed(()=>o.value),response:o,error:a,isValidating:n,revalidate:d}}const B={useI18n:we,useMetricCardBuilder:Te,useMetricFetcher:xe,useRequest:$e},ce=Symbol("METRICS_PROVIDER_KEY"),Pe=e=>{const{dimension:r,dimensionFilterValue:i,additionalFilter:o,queryReady:a,timeframe:n,tz:d,hasTrendAccess:p,refreshInterval:f,abortController:l,queryFn:s}=e;if(i&&!r)throw new Error("Must provide a dimension if filtering by a value");const c=!!(r&&i),u=!!(r&&!i),m=t.computed(()=>{const v=[];return c&&v.push({dimension:r,type:"in",values:[i]}),o.value&&v.push(...o.value),v}),C={metrics:["request_count"],dimensions:[...r&&!c?[r]:[],"status_code_grouped"],filter:m,queryReady:a,timeframe:n,tz:d,withTrend:t.computed(()=>p.value&&!u),refreshInterval:f,queryFn:s,abortController:l},g={metrics:["response_latency_p99"],...r&&!c?{dimensions:[r]}:{},filter:m,queryReady:a,timeframe:n,tz:d,withTrend:t.computed(()=>p.value&&!u),refreshInterval:f,queryFn:s,abortController:l},y=B.useMetricFetcher(C),k=B.useMetricFetcher(g);return{trafficData:y,latencyData:k}},Ke=t.defineComponent({__name:"MetricsProviderInternal",props:{maxTimeframe:{default:N.TimeframeKeys.THIRTY_DAY},overrideTimeframe:{default:void 0},tz:{default:void 0},dimension:{default:void 0},filterValue:{default:void 0},additionalFilter:{default:void 0},queryReady:{type:Boolean,default:!0},refreshInterval:{},longCardTitles:{type:Boolean,default:!1},description:{default:void 0},abortController:{default:void 0}},setup(e){const r=e;if(r.dimension&&N.queryableExploreDimensions.findIndex(u=>u===r.dimension)===-1)throw new Error(`Attempted to use MetricsProvider with an invalid dimension: ${r.dimension}`);const i=t.inject(Ne);let o;i?o=i.queryFn:(console.warn("Analytics dashboards require a query bridge supplied via provide / inject."),console.warn("Please ensure your application has a query bridge provided under the key 'analytics-query-provider', as described in"),console.warn("https://github.com/Kong/public-ui-components/blob/main/packages/analytics/analytics-metric-provider/README.md#requirements"),o=()=>Promise.reject(new Error("Query bridge required")));const n=re.useAnalyticsConfigStore().getConfig(),d=t.computed(()=>n.value!==null&&r.queryReady),p=t.computed(()=>{var m,C;const u=(C=(m=n.value)==null?void 0:m.analytics)==null?void 0:C.retention_ms;return!!u&&u>re.SEVEN_DAYS_MS}),f=t.computed(()=>r.tz?r.tz:new Intl.DateTimeFormat().resolvedOptions().timeZone),l=t.computed(()=>{if(r.overrideTimeframe)return r.overrideTimeframe;const u=p.value?N.TimePeriods.get(r.maxTimeframe):N.TimePeriods.get(N.TimeframeKeys.ONE_DAY);if(!u)throw new Error("Metrics provider failed to resolve fallback timeframe.");return u}),{trafficData:s,latencyData:c}=Pe({dimension:r.dimension,dimensionFilterValue:r.filterValue,additionalFilter:t.toRef(r,"additionalFilter"),queryReady:d,timeframe:l,tz:f,hasTrendAccess:p,refreshInterval:r.refreshInterval,queryFn:o,abortController:r.abortController});return t.provide(ce,{data:{traffic:s,latency:c},description:r.description,hasTrendAccess:p,longCardTitles:r.longCardTitles}),(u,m)=>t.renderSlot(u.$slots,"default",{hasTrendAccess:p.value,timeframe:l.value})}});function Ze(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var ue={exports:{}};(function(e){(function(){function r(l,s){if(s.separator===!1||l<1e3)return l.toString();var c=typeof s.separator=="string"?s.separator:",",u=[],m=Math.round(l).toString().split("");return m.reverse().forEach(function(C,g){g&&g%3===0&&u.push(c),u.push(C)}),u.reverse().join("")}function i(l,s,c){var u=l/s,m=c.round?"round":"floor";return c.decimal===!1?(l=Math[m](u),l.toString()):(c.precision?l=u:l=u<10?Math[m](u*10)/10:Math[m](u),l=l.toString(),typeof c.decimal=="string"&&(l=l.replace(".",c.decimal)),l)}var o=1e3,a=1e4,n=1e6,d=1e9,p=1e12;function f(l,s){var c;s=s||{};var u=l<0;u&&(l=Math.abs(l)),s.precision&&(l=parseFloat(l.toPrecision(s.precision)));var m=s.min10k?a:o;return l<m||s.precision&&s.precision>Math.log10(l)?c=r(i(l,1,s),s):l<n?c=i(l,o,s)+"k":l<d?c=i(l,n,s)+"m":l<p?c=r(i(l,d,s),s)+"b":c=r(i(l,p,s),s)+"t",u&&(c="-"+c),s.capital&&(c=c.toUpperCase()),s.prefix&&(c=s.prefix+c),s.suffix&&(c=c+s.suffix),c}f.addCommas=r,e.exports=f})()})(ue);var je=ue.exports;const Ge=Ze(je);var E=(e=>(e.Small="sm",e.Medium="md",e.Large="lg",e.LargeCompact="lgc",e.ExtraLarge="xl",e))(E||{});const S="24px",_=(e,r)=>{const i=e.__vccOpts||e;for(const[o,a]of r)i[o]=a;return i},Ye=e=>(t.pushScopeId("data-v-115ec679"),e=e(),t.popScopeId(),e),Xe=["aria-hidden"],Ue={key:0,"data-testid":"kui-icon-svg-title"},Qe=Ye(()=>t.createElementVNode("path",{d:"M6.5 20C4.98333 20 3.6875 19.475 2.6125 18.425C1.5375 17.375 1 16.0917 1 14.575C1 13.275 1.39167 12.1167 2.175 11.1C2.95833 10.0833 3.98333 9.43333 5.25 9.15C5.66667 7.61667 6.5 6.375 7.75 5.425C9 4.475 10.4167 4 12 4C13.95 4 15.6042 4.67917 16.9625 6.0375C18.3208 7.39583 19 9.05 19 11C20.15 11.1333 21.1042 11.6292 21.8625 12.4875C22.6208 13.3458 23 14.35 23 15.5C23 16.75 22.5625 17.8125 21.6875 18.6875C20.8125 19.5625 19.75 20 18.5 20H13C12.45 20 11.9792 19.8042 11.5875 19.4125C11.1958 19.0208 11 18.55 11 18V12.85L9.4 14.4L8 13L12 9L16 13L14.6 14.4L13 12.85V18H18.5C19.2 18 19.7917 17.7583 20.275 17.275C20.7583 16.7917 21 16.2 21 15.5C21 14.8 20.7583 14.2083 20.275 13.725C19.7917 13.2417 19.2 13 18.5 13H17V11C17 9.61667 16.5125 8.4375 15.5375 7.4625C14.5625 6.4875 13.3833 6 12 6C10.6167 6 9.4375 6.4875 8.4625 7.4625C7.4875 8.4375 7 9.61667 7 11H6.5C5.53333 11 4.70833 11.3417 4.025 12.025C3.34167 12.7083 3 13.5333 3 14.5C3 15.4667 3.34167 16.2917 4.025 16.975C4.70833 17.6583 5.53333 18 6.5 18H9V20H6.5Z",fill:"currentColor"},null,-1)),We=t.defineComponent({__name:"CloudUploadIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:S,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const r=String(e).replace(/px/gi,""),i=Number(r);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const r=e,i=t.computed(()=>{if(typeof r.size=="number"&&r.size>0)return`${r.size}px`;if(typeof r.size=="string"){const a=String(r.size).replace(/px/gi,""),n=Number(a);if(n&&!isNaN(n)&&Number.isInteger(n)&&n>0)return`${n}px`}return S}),o=t.computed(()=>({boxSizing:"border-box",color:r.color,display:r.display,height:i.value,lineHeight:"0",width:i.value}));return(a,n)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon cloud-upload-icon","data-testid":"kui-icon-wrapper-cloud-upload-icon",style:t.normalizeStyle(o.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-cloud-upload-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",Ue,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),Qe],8,Xe))]),_:1},8,["aria-hidden","style"]))}}),Je=_(We,[["__scopeId","data-v-115ec679"]]),et=e=>(t.pushScopeId("data-v-6e3bced6"),e=e(),t.popScopeId(),e),tt=["aria-hidden"],rt={key:0,"data-testid":"kui-icon-svg-title"},it=et(()=>t.createElementVNode("path",{d:"M4 17V14H20V17H4ZM4 10V7H20V10H4Z",fill:"currentColor"},null,-1)),nt=t.defineComponent({__name:"EqualIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:S,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const r=String(e).replace(/px/gi,""),i=Number(r);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const r=e,i=t.computed(()=>{if(typeof r.size=="number"&&r.size>0)return`${r.size}px`;if(typeof r.size=="string"){const a=String(r.size).replace(/px/gi,""),n=Number(a);if(n&&!isNaN(n)&&Number.isInteger(n)&&n>0)return`${n}px`}return S}),o=t.computed(()=>({boxSizing:"border-box",color:r.color,display:r.display,height:i.value,lineHeight:"0",width:i.value}));return(a,n)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon equal-icon","data-testid":"kui-icon-wrapper-equal-icon",style:t.normalizeStyle(o.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-equal-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",rt,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),it],8,tt))]),_:1},8,["aria-hidden","style"]))}}),at=_(nt,[["__scopeId","data-v-6e3bced6"]]),ot=e=>(t.pushScopeId("data-v-1ae1a325"),e=e(),t.popScopeId(),e),lt=["aria-hidden"],st={key:0,"data-testid":"kui-icon-svg-title"},dt=ot(()=>t.createElementVNode("path",{d:"M5 11V9H15V11H5Z",fill:"currentColor"},null,-1)),ct=t.defineComponent({__name:"IndeterminateSmallIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:S,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const r=String(e).replace(/px/gi,""),i=Number(r);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const r=e,i=t.computed(()=>{if(typeof r.size=="number"&&r.size>0)return`${r.size}px`;if(typeof r.size=="string"){const a=String(r.size).replace(/px/gi,""),n=Number(a);if(n&&!isNaN(n)&&Number.isInteger(n)&&n>0)return`${n}px`}return S}),o=t.computed(()=>({boxSizing:"border-box",color:r.color,display:r.display,height:i.value,lineHeight:"0",width:i.value}));return(a,n)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon indeterminate-small-icon","data-testid":"kui-icon-wrapper-indeterminate-small-icon",style:t.normalizeStyle(o.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-indeterminate-small-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",st,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),dt],8,lt))]),_:1},8,["aria-hidden","style"]))}}),pe=_(ct,[["__scopeId","data-v-1ae1a325"]]),ut=e=>(t.pushScopeId("data-v-60c6b8be"),e=e(),t.popScopeId(),e),pt=["aria-hidden"],ft={key:0,"data-testid":"kui-icon-svg-title"},mt=ut(()=>t.createElementVNode("path",{d:"M11 17H13V11H11V17ZM12 9C12.2833 9 12.5208 8.90417 12.7125 8.7125C12.9042 8.52083 13 8.28333 13 8C13 7.71667 12.9042 7.47917 12.7125 7.2875C12.5208 7.09583 12.2833 7 12 7C11.7167 7 11.4792 7.09583 11.2875 7.2875C11.0958 7.47917 11 7.71667 11 8C11 8.28333 11.0958 8.52083 11.2875 8.7125C11.4792 8.90417 11.7167 9 12 9ZM12 22C10.6167 22 9.31667 21.7375 8.1 21.2125C6.88333 20.6875 5.825 19.975 4.925 19.075C4.025 18.175 3.3125 17.1167 2.7875 15.9C2.2625 14.6833 2 13.3833 2 12C2 10.6167 2.2625 9.31667 2.7875 8.1C3.3125 6.88333 4.025 5.825 4.925 4.925C5.825 4.025 6.88333 3.3125 8.1 2.7875C9.31667 2.2625 10.6167 2 12 2C13.3833 2 14.6833 2.2625 15.9 2.7875C17.1167 3.3125 18.175 4.025 19.075 4.925C19.975 5.825 20.6875 6.88333 21.2125 8.1C21.7375 9.31667 22 10.6167 22 12C22 13.3833 21.7375 14.6833 21.2125 15.9C20.6875 17.1167 19.975 18.175 19.075 19.075C18.175 19.975 17.1167 20.6875 15.9 21.2125C14.6833 21.7375 13.3833 22 12 22Z",fill:"currentColor"},null,-1)),gt=t.defineComponent({__name:"InfoIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:S,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const r=String(e).replace(/px/gi,""),i=Number(r);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const r=e,i=t.computed(()=>{if(typeof r.size=="number"&&r.size>0)return`${r.size}px`;if(typeof r.size=="string"){const a=String(r.size).replace(/px/gi,""),n=Number(a);if(n&&!isNaN(n)&&Number.isInteger(n)&&n>0)return`${n}px`}return S}),o=t.computed(()=>({boxSizing:"border-box",color:r.color,display:r.display,height:i.value,lineHeight:"0",width:i.value}));return(a,n)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon info-icon","data-testid":"kui-icon-wrapper-info-icon",style:t.normalizeStyle(o.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-info-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",ft,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),mt],8,pt))]),_:1},8,["aria-hidden","style"]))}}),yt=_(gt,[["__scopeId","data-v-60c6b8be"]]),ht=e=>(t.pushScopeId("data-v-9ad4bd00"),e=e(),t.popScopeId(),e),Ct=["aria-hidden"],vt={key:0,"data-testid":"kui-icon-svg-title"},St=ht(()=>t.createElementVNode("path",{d:"M15.25 5C14.9 5 14.6042 4.87917 14.3625 4.6375C14.1208 4.39583 14 4.1 14 3.75C14 3.4 14.1208 3.10417 14.3625 2.8625C14.6042 2.62083 14.9 2.5 15.25 2.5C15.6 2.5 15.8958 2.62083 16.1375 2.8625C16.3792 3.10417 16.5 3.4 16.5 3.75C16.5 4.1 16.3792 4.39583 16.1375 4.6375C15.8958 4.87917 15.6 5 15.25 5ZM15.25 21.5C14.9 21.5 14.6042 21.3792 14.3625 21.1375C14.1208 20.8958 14 20.6 14 20.25C14 19.9 14.1208 19.6042 14.3625 19.3625C14.6042 19.1208 14.9 19 15.25 19C15.6 19 15.8958 19.1208 16.1375 19.3625C16.3792 19.6042 16.5 19.9 16.5 20.25C16.5 20.6 16.3792 20.8958 16.1375 21.1375C15.8958 21.3792 15.6 21.5 15.25 21.5ZM19.25 8.5C18.9 8.5 18.6042 8.37917 18.3625 8.1375C18.1208 7.89583 18 7.6 18 7.25C18 6.9 18.1208 6.60417 18.3625 6.3625C18.6042 6.12083 18.9 6 19.25 6C19.6 6 19.8958 6.12083 20.1375 6.3625C20.3792 6.60417 20.5 6.9 20.5 7.25C20.5 7.6 20.3792 7.89583 20.1375 8.1375C19.8958 8.37917 19.6 8.5 19.25 8.5ZM19.25 18C18.9 18 18.6042 17.8792 18.3625 17.6375C18.1208 17.3958 18 17.1 18 16.75C18 16.4 18.1208 16.1042 18.3625 15.8625C18.6042 15.6208 18.9 15.5 19.25 15.5C19.6 15.5 19.8958 15.6208 20.1375 15.8625C20.3792 16.1042 20.5 16.4 20.5 16.75C20.5 17.1 20.3792 17.3958 20.1375 17.6375C19.8958 17.8792 19.6 18 19.25 18ZM20.75 13.25C20.4 13.25 20.1042 13.1292 19.8625 12.8875C19.6208 12.6458 19.5 12.35 19.5 12C19.5 11.65 19.6208 11.3542 19.8625 11.1125C20.1042 10.8708 20.4 10.75 20.75 10.75C21.1 10.75 21.3958 10.8708 21.6375 11.1125C21.8792 11.3542 22 11.65 22 12C22 12.35 21.8792 12.6458 21.6375 12.8875C21.3958 13.1292 21.1 13.25 20.75 13.25ZM12 22C10.6167 22 9.31667 21.7375 8.1 21.2125C6.88333 20.6875 5.825 19.975 4.925 19.075C4.025 18.175 3.3125 17.1167 2.7875 15.9C2.2625 14.6833 2 13.3833 2 12C2 10.6167 2.2625 9.31667 2.7875 8.1C3.3125 6.88333 4.025 5.825 4.925 4.925C5.825 4.025 6.88333 3.3125 8.1 2.7875C9.31667 2.2625 10.6167 2 12 2V4C9.76667 4 7.875 4.775 6.325 6.325C4.775 7.875 4 9.76667 4 12C4 14.2333 4.775 16.125 6.325 17.675C7.875 19.225 9.76667 20 12 20V22ZM12 14C11.45 14 10.9792 13.8042 10.5875 13.4125C10.1958 13.0208 10 12.55 10 12C10 11.9167 10.0042 11.8292 10.0125 11.7375C10.0208 11.6458 10.0417 11.5583 10.075 11.475L8 9.4L9.4 8L11.475 10.075C11.5417 10.0583 11.7167 10.0333 12 10C12.55 10 13.0208 10.1958 13.4125 10.5875C13.8042 10.9792 14 11.45 14 12C14 12.55 13.8042 13.0208 13.4125 13.4125C13.0208 13.8042 12.55 14 12 14Z",fill:"currentColor"},null,-1)),bt=t.defineComponent({__name:"ResponseIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:S,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const r=String(e).replace(/px/gi,""),i=Number(r);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const r=e,i=t.computed(()=>{if(typeof r.size=="number"&&r.size>0)return`${r.size}px`;if(typeof r.size=="string"){const a=String(r.size).replace(/px/gi,""),n=Number(a);if(n&&!isNaN(n)&&Number.isInteger(n)&&n>0)return`${n}px`}return S}),o=t.computed(()=>({boxSizing:"border-box",color:r.color,display:r.display,height:i.value,lineHeight:"0",width:i.value}));return(a,n)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon response-icon","data-testid":"kui-icon-wrapper-response-icon",style:t.normalizeStyle(o.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-response-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",vt,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),St],8,Ct))]),_:1},8,["aria-hidden","style"]))}}),kt=_(bt,[["__scopeId","data-v-9ad4bd00"]]),wt=e=>(t.pushScopeId("data-v-aa775b0e"),e=e(),t.popScopeId(),e),Et=["aria-hidden"],Nt={key:0,"data-testid":"kui-icon-svg-title"},_t=wt(()=>t.createElementVNode("path",{d:"M16 18V16H18.6L13.4 10.85L9.4 14.85L2 7.4L3.4 6L9.4 12L13.4 8L20 14.6V12H22V18H16Z",fill:"currentColor"},null,-1)),It=t.defineComponent({__name:"TrendDownIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:S,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const r=String(e).replace(/px/gi,""),i=Number(r);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const r=e,i=t.computed(()=>{if(typeof r.size=="number"&&r.size>0)return`${r.size}px`;if(typeof r.size=="string"){const a=String(r.size).replace(/px/gi,""),n=Number(a);if(n&&!isNaN(n)&&Number.isInteger(n)&&n>0)return`${n}px`}return S}),o=t.computed(()=>({boxSizing:"border-box",color:r.color,display:r.display,height:i.value,lineHeight:"0",width:i.value}));return(a,n)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon trend-down-icon","data-testid":"kui-icon-wrapper-trend-down-icon",style:t.normalizeStyle(o.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-trend-down-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",Nt,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),_t],8,Et))]),_:1},8,["aria-hidden","style"]))}}),Rt=_(It,[["__scopeId","data-v-aa775b0e"]]),xt=e=>(t.pushScopeId("data-v-cb010004"),e=e(),t.popScopeId(),e),Tt=["aria-hidden"],Bt={key:0,"data-testid":"kui-icon-svg-title"},Vt=xt(()=>t.createElementVNode("path",{d:"M3.4 18L2 16.6L9.4 9.15L13.4 13.15L18.6 8H16V6H22V12H20V9.4L13.4 16L9.4 12L3.4 18Z",fill:"currentColor"},null,-1)),zt=t.defineComponent({__name:"TrendUpIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:S,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const r=String(e).replace(/px/gi,""),i=Number(r);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const r=e,i=t.computed(()=>{if(typeof r.size=="number"&&r.size>0)return`${r.size}px`;if(typeof r.size=="string"){const a=String(r.size).replace(/px/gi,""),n=Number(a);if(n&&!isNaN(n)&&Number.isInteger(n)&&n>0)return`${n}px`}return S}),o=t.computed(()=>({boxSizing:"border-box",color:r.color,display:r.display,height:i.value,lineHeight:"0",width:i.value}));return(a,n)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon trend-up-icon","data-testid":"kui-icon-wrapper-trend-up-icon",style:t.normalizeStyle(o.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-trend-up-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",Bt,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),Vt],8,Tt))]),_:1},8,["aria-hidden","style"]))}}),qt=_(zt,[["__scopeId","data-v-cb010004"]]),Dt=e=>(t.pushScopeId("data-v-6d3b4073"),e=e(),t.popScopeId(),e),At=["aria-hidden"],Lt={key:0,"data-testid":"kui-icon-svg-title"},Mt=Dt(()=>t.createElementVNode("path",{d:"M9 20C8.68333 20 8.4 19.9083 8.15 19.725C7.9 19.5417 7.71667 19.3083 7.6 19.025L5.3 13H1V11H6.7L9 17.1L13.6 4.975C13.7167 4.69167 13.9 4.45833 14.15 4.275C14.4 4.09167 14.6833 4 15 4C15.3167 4 15.6 4.09167 15.85 4.275C16.1 4.45833 16.2833 4.69167 16.4 4.975L18.7 11H23V13H17.3L15 6.9L10.4 19.025C10.2833 19.3083 10.1 19.5417 9.85 19.725C9.6 19.9083 9.31667 20 9 20Z",fill:"currentColor"},null,-1)),Ot=t.defineComponent({__name:"VitalsIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:S,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const r=String(e).replace(/px/gi,""),i=Number(r);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const r=e,i=t.computed(()=>{if(typeof r.size=="number"&&r.size>0)return`${r.size}px`;if(typeof r.size=="string"){const a=String(r.size).replace(/px/gi,""),n=Number(a);if(n&&!isNaN(n)&&Number.isInteger(n)&&n>0)return`${n}px`}return S}),o=t.computed(()=>({boxSizing:"border-box",color:r.color,display:r.display,height:i.value,lineHeight:"0",width:i.value}));return(a,n)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon vitals-icon","data-testid":"kui-icon-wrapper-vitals-icon",style:t.normalizeStyle(o.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-vitals-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",Lt,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),Mt],8,At))]),_:1},8,["aria-hidden","style"]))}}),Ft=_(Ot,[["__scopeId","data-v-6d3b4073"]]),Ht=e=>(t.pushScopeId("data-v-0e9cc640"),e=e(),t.popScopeId(),e),$t=["aria-hidden"],Pt={key:0,"data-testid":"kui-icon-svg-title"},Kt=Ht(()=>t.createElementVNode("path",{d:"M12.0001 22.025C11.7334 22.025 11.4793 21.975 11.2376 21.875C10.9959 21.775 10.7751 21.6333 10.5751 21.45L2.5501 13.425C2.36676 13.225 2.2251 13.0041 2.1251 12.7625C2.0251 12.5208 1.9751 12.2666 1.9751 12C1.9751 11.7333 2.0251 11.475 2.1251 11.225C2.2251 10.975 2.36676 10.7583 2.5501 10.575L10.5751 2.54998C10.7751 2.34998 10.9959 2.20414 11.2376 2.11248C11.4793 2.02081 11.7334 1.97498 12.0001 1.97498C12.2668 1.97498 12.5251 2.02081 12.7751 2.11248C13.0251 2.20414 13.2418 2.34998 13.4251 2.54998L21.4501 10.575C21.6501 10.7583 21.7959 10.975 21.8876 11.225C21.9793 11.475 22.0251 11.7333 22.0251 12C22.0251 12.2666 21.9793 12.5208 21.8876 12.7625C21.7959 13.0041 21.6501 13.225 21.4501 13.425L13.4251 21.45C13.2418 21.6333 13.0251 21.775 12.7751 21.875C12.5251 21.975 12.2668 22.025 12.0001 22.025ZM12.0001 20.025L20.0251 12L12.0001 3.97498L3.9751 12L12.0001 20.025ZM11.0001 13H13.0001V6.99998H11.0001V13ZM12.0001 16C12.2834 16 12.5209 15.9041 12.7126 15.7125C12.9043 15.5208 13.0001 15.2833 13.0001 15C13.0001 14.7166 12.9043 14.4791 12.7126 14.2875C12.5209 14.0958 12.2834 14 12.0001 14C11.7168 14 11.4793 14.0958 11.2876 14.2875C11.0959 14.4791 11.0001 14.7166 11.0001 15C11.0001 15.2833 11.0959 15.5208 11.2876 15.7125C11.4793 15.9041 11.7168 16 12.0001 16Z",fill:"currentColor"},null,-1)),Zt=t.defineComponent({__name:"WarningOutlineIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:S,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const r=String(e).replace(/px/gi,""),i=Number(r);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const r=e,i=t.computed(()=>{if(typeof r.size=="number"&&r.size>0)return`${r.size}px`;if(typeof r.size=="string"){const a=String(r.size).replace(/px/gi,""),n=Number(a);if(n&&!isNaN(n)&&Number.isInteger(n)&&n>0)return`${n}px`}return S}),o=t.computed(()=>({boxSizing:"border-box",color:r.color,display:r.display,height:i.value,lineHeight:"0",width:i.value}));return(a,n)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon warning-outline-icon","data-testid":"kui-icon-wrapper-warning-outline-icon",style:t.normalizeStyle(o.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-warning-outline-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",Pt,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),Kt],8,$t))]),_:1},8,["aria-hidden","style"]))}}),jt=_(Zt,[["__scopeId","data-v-0e9cc640"]]),Gt=e=>(t.pushScopeId("data-v-d7b122fd"),e=e(),t.popScopeId(),e),Yt=["aria-hidden"],Xt={key:0,"data-testid":"kui-icon-svg-title"},Ut=Gt(()=>t.createElementVNode("path",{d:"M12.025 22.05C11.7583 22.05 11.5042 22 11.2625 21.9C11.0208 21.8 10.8 21.6583 10.6 21.475L2.575 13.45C2.39167 13.25 2.25 13.0292 2.15 12.7875C2.05 12.5458 2 12.2917 2 12.025C2 11.7583 2.05 11.5 2.15 11.25C2.25 11 2.39167 10.7833 2.575 10.6L10.6 2.575C10.8 2.375 11.0208 2.22917 11.2625 2.1375C11.5042 2.04583 11.7583 2 12.025 2C12.2917 2 12.55 2.04583 12.8 2.1375C13.05 2.22917 13.2667 2.375 13.45 2.575L21.475 10.6C21.675 10.7833 21.8208 11 21.9125 11.25C22.0042 11.5 22.05 11.7583 22.05 12.025C22.05 12.2917 22.0042 12.5458 21.9125 12.7875C21.8208 13.0292 21.675 13.25 21.475 13.45L13.45 21.475C13.2667 21.6583 13.05 21.8 12.8 21.9C12.55 22 12.2917 22.05 12.025 22.05ZM11.025 13.025H13.025V7.025H11.025V13.025ZM12.025 16.025C12.3083 16.025 12.5458 15.9292 12.7375 15.7375C12.9292 15.5458 13.025 15.3083 13.025 15.025C13.025 14.7417 12.9292 14.5042 12.7375 14.3125C12.5458 14.1208 12.3083 14.025 12.025 14.025C11.7417 14.025 11.5042 14.1208 11.3125 14.3125C11.1208 14.5042 11.025 14.7417 11.025 15.025C11.025 15.3083 11.1208 15.5458 11.3125 15.7375C11.5042 15.9292 11.7417 16.025 12.025 16.025Z",fill:"currentColor"},null,-1)),Qt=t.defineComponent({__name:"WarningIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:S,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const r=String(e).replace(/px/gi,""),i=Number(r);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const r=e,i=t.computed(()=>{if(typeof r.size=="number"&&r.size>0)return`${r.size}px`;if(typeof r.size=="string"){const a=String(r.size).replace(/px/gi,""),n=Number(a);if(n&&!isNaN(n)&&Number.isInteger(n)&&n>0)return`${n}px`}return S}),o=t.computed(()=>({boxSizing:"border-box",color:r.color,display:r.display,height:i.value,lineHeight:"0",width:i.value}));return(a,n)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon warning-icon","data-testid":"kui-icon-wrapper-warning-icon",style:t.normalizeStyle(o.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-warning-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",Xt,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),Ut],8,Yt))]),_:1},8,["aria-hidden","style"]))}}),fe=_(Qt,[["__scopeId","data-v-d7b122fd"]]),Y=2,me=Y+2,Wt=(e,r,i=!1)=>{let o=!r||Number(e.toFixed(me))===0?0:Number(e.toFixed(me))>0?1:-1;return i&&(o*=-1),o},Jt=(e,r,i)=>r?`${Math.abs(e*100).toFixed(Y)}%`:i,er=(e,r)=>r===0?0:e/r-1,tr=(e,r=!1)=>(r&&(e*=-1),e>0?qt:e<0?Rt:pe),rr="#ad000e",X="#6c7489",ge="#52596e",ir="#007d60",F="16px",nr="20px",ar="14px",or="24px",lr="48px";var R=(e=>(e.GENERIC_COUNT="GenericCount",e.TRAFFIC="Traffic",e.ERROR_RATE="ErrorRate",e.LATENCY="Latency",e))(R||{});const sr={class:"metricscard"},dr={key:0,class:"metricscard-description"},cr={key:0,class:"metricscard-error"},ur={key:2,class:"metricscard-trend"},pr={"data-testid":"metric-trend-change"},fr={key:0,class:"metricscard-trend-range"},mr=t.defineComponent({__name:"MetricsCard",props:{cardType:{type:String,required:!0,default:R.GENERIC_COUNT},title:{type:String,default:"0%",required:!0},description:{type:String,default:"",required:!1},tooltip:{type:String,required:!1,default:""},timeframe:{type:String,required:!1,default:""},metricValue:{type:String,default:""},metricChange:{type:String,required:!0},changePolarity:{type:Number,required:!0},trendIcon:{type:Object,default:pe},trendRange:{type:String,default:""},hasError:{type:Boolean,default:!1},errorMessage:{type:String,default:"Vitals data error"},cardSize:{type:String,required:!1,default:()=>"lg"},titleTag:{type:String,default:"span"}},setup(e){const r=new Map([[R.GENERIC_COUNT,Ft],[R.TRAFFIC,Je],[R.ERROR_RATE,jt],[R.LATENCY,kt]]),i=e,o=l=>{const s={red:`var(--kong-ui-metric-card-trend-negative, ${rr})`,green:`var(--kong-ui-metric-card-trend-positive, ${ir})`,grey:`var(--kong-ui-metric-card-trend-neutral, ${ge})`};return l>0?s.green:l<0?s.red:s.grey},a=l=>l>0?"positive":l<0?"negative":"neutral",n=[E.Medium,E.Large,E.LargeCompact].includes(i.cardSize),d=i.cardSize===E.ExtraLarge?lr:n?or:ar,p=t.computed(()=>i.cardSize===E.LargeCompact),f=[E.Small,E.LargeCompact].includes(i.cardSize);return(l,s)=>{const c=t.resolveComponent("KTooltip");return t.openBlock(),t.createElementBlock("div",sr,[t.createElementVNode("div",{class:t.normalizeClass(["metricscard-title",e.cardSize])},[t.unref(f)?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(r).get(e.cardType)),{key:0,class:"metricscard-icon",color:t.unref(X),size:t.unref(F)},null,8,["color","size"])),(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.titleTag),null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(e.title),1)]),_:1})),e.tooltip?(t.openBlock(),t.createBlock(c,{key:1,class:"metricscard-tooltip",placement:"right",text:e.tooltip},{default:t.withCtx(()=>[t.createVNode(t.unref(yt),{color:t.unref(X),size:t.unref(F)},null,8,["color","size"])]),_:1},8,["text"])):t.createCommentVNode("",!0)],2),e.description&&t.unref(n)&&!p.value?(t.openBlock(),t.createElementBlock("div",dr,[t.createElementVNode("span",null,t.toDisplayString(e.description),1)])):t.createCommentVNode("",!0),t.createElementVNode("div",{class:t.normalizeClass(["metricscard-valuetrend",{"is-compact":p.value}])},[e.hasError?(t.openBlock(),t.createElementBlock("div",cr,[t.createVNode(t.unref(fe),{color:t.unref(X),size:t.unref(nr)},null,8,["color","size"]),t.createElementVNode("div",null," "+t.toDisplayString(e.errorMessage),1)])):(t.openBlock(),t.createElementBlock("div",{key:1,class:t.normalizeClass(["metricscard-value",e.cardSize]),"data-testid":"metric-value",style:t.normalizeStyle(`font-size:${t.unref(d)}`)},t.toDisplayString(e.metricValue),7)),t.unref(n)?(t.openBlock(),t.createElementBlock("div",ur,[t.createElementVNode("div",{class:t.normalizeClass(["metricscard-trend-change",a(e.changePolarity)]),"data-testid":"metric-trend-parent"},[e.changePolarity!==0?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.trendIcon),{key:0,color:o(e.changePolarity),size:t.unref(F)},null,8,["color","size"])):(t.openBlock(),t.createBlock(t.unref(at),{key:1,color:t.unref(ge),size:t.unref(F)},null,8,["color","size"])),t.createElementVNode("div",pr,t.toDisplayString(e.metricChange),1)],2),e.trendRange&&e.cardSize!==t.unref(E).LargeCompact?(t.openBlock(),t.createElementBlock("div",fr,t.toDisplayString(e.trendRange),1)):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0)],2)])}}}),U=(e,r)=>{const i=e.__vccOpts||e;for(const[o,a]of r)i[o]=a;return i},gr=U(mr,[["__scopeId","data-v-bf70de13"]]),yr={},hr={class:"loading-tabs"};function Cr(e,r){const i=t.resolveComponent("KSkeletonBox");return t.openBlock(),t.createElementBlock("div",hr,[t.createVNode(i,{width:"100"}),t.createVNode(i,{width:"75"})])}const vr=U(yr,[["render",Cr],["__scopeId","data-v-f7eb9c40"]]),Sr={key:0,class:"error-display"},br={key:0,class:"error-display-message"},kr=t.defineComponent({__name:"MetricCardContainer",props:{fallbackDisplayText:{type:String,required:!0},cards:{type:Array,required:!0},errorMessage:{type:String,required:!1,default:""},loading:{type:Boolean,required:!1,default:!1},hasTrendAccess:{type:Boolean,required:!1,default:!0},cardSize:{type:String,required:!1,default:()=>E.Large}},setup(e){const r=e,i=t.computed(()=>r.cards.every(a=>(a==null?void 0:a.hasError)===!0)),o=a=>{const n=er(a.currentValue,a.previousValue)||0,d=Wt(n,r.hasTrendAccess,a.increaseIsBad);return{metricValue:a.formatValueFn?a.formatValueFn(a.currentValue):Ge(a.currentValue,{capital:!0,round:!0})||"0",metricChange:a.formatChangeFn?a.formatChangeFn(n):Jt(n,r.hasTrendAccess,r.fallbackDisplayText),changePolarity:d,trendIcon:tr(d,a.increaseIsBad),cardSize:r.cardSize}};return(a,n)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["kong-ui-public-metric-card-container",e.cardSize])},[i.value?(t.openBlock(),t.createElementBlock("div",Sr,[t.createVNode(t.unref(fe),{class:"error-display-icon"}),e.errorMessage?(t.openBlock(),t.createElementBlock("div",br,t.toDisplayString(e.errorMessage),1)):t.createCommentVNode("",!0)])):(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:1},t.renderList(e.cards,(d,p)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[e.loading?(t.openBlock(),t.createBlock(vr,{key:`skeleton-${p}`,class:t.normalizeClass(e.cardSize===t.unref(E).Small?"loading-tabs-small":"loading-tabs-large")},null,8,["class"])):(t.openBlock(),t.createBlock(gr,t.mergeProps({key:p},o(d),{"card-size":e.cardSize,"card-type":d.cardType,description:d.description,"error-message":e.errorMessage,"has-error":d.hasError,title:d.title,"title-tag":d.titleTag,tooltip:d.tooltip,"trend-range":d.trendRange}),null,16,["card-size","card-type","description","error-message","has-error","title","title-tag","tooltip","trend-range"]))],64))),256))],2))}}),wr=U(kr,[["__scopeId","data-v-081c6557"]]),Er=t.defineComponent({__name:"MetricsConsumer",props:{lookupKey:{default:void 0},cardSize:{default:E.Large},cardToDisplay:{default:void 0}},setup(e){const r=e,i=t.inject(ce);if(!i)throw new Error("MetricsConsumer must be nested inside a MetricsProvider instance.");const{traffic:o,latency:a}=i.data,{i18n:n}=B.useI18n(),d=B.useMetricCardBuilder({cardType:R.TRAFFIC,title:t.computed(()=>i.longCardTitles?n.t("metricCard.long.traffic"):n.t("metricCard.short.traffic")),description:i.description,record:o.mapped,hasError:o.hasError,lookupKey:r.lookupKey,sumGroupedValues:L,trendRange:o.trendRange}),p=g=>`${g.toFixed(Y)}%`,f=t.computed(()=>{const g=o.mapped.value,y=q(g,"current",r.lookupKey,ie),k=q(g,"current",r.lookupKey,L),v=y/k*100||0,h=q(g,"previous",r.lookupKey,ie),T=q(g,"previous",r.lookupKey,L),b=h/T*100||0;return{cardType:R.ERROR_RATE,hasError:o.hasError.value,currentValue:v,previousValue:b,formatValueFn:p,title:i.longCardTitles?n.t("metricCard.long.errorRate"):n.t("metricCard.short.errorRate"),description:i.description,increaseIsBad:!0,trendRange:o.trendRange.value}}),l=g=>`${g}ms`,s=B.useMetricCardBuilder({cardType:R.LATENCY,title:t.computed(()=>i.longCardTitles?n.t("metricCard.long.latency"):n.t("metricCard.short.latency")),description:i.description,hasError:a.hasError,record:a.mapped,lookupKey:r.lookupKey,increaseIsBad:!0,formatValueFn:l,trendRange:a.trendRange}),c=t.computed(()=>r.cardToDisplay==="TRAFFIC"?[d.value]:r.cardToDisplay==="ERROR_RATE"?[f.value]:r.cardToDisplay==="LATENCY"?[s.value]:[d.value,f.value,s.value]),u=t.computed(()=>r.cardToDisplay==="TRAFFIC"||r.cardToDisplay==="ERROR_RATE"?o.isLoading.value:r.cardToDisplay==="LATENCY"?a.isLoading.value:o.isLoading.value||a.isLoading.value),m=t.computed(()=>({cards:c.value,loading:u.value,hasTrendAccess:i.hasTrendAccess.value,fallbackDisplayText:n.t("general.notAvailable"),cardSize:r.cardSize,hideTitle:!0})),C=t.computed(()=>({loading:m.value.loading,trafficCard:d.value,errorRateCard:f.value,latencyCard:s.value,errorRateFormatted:p(f.value.currentValue),latencyFormatted:l(s.value.currentValue)}));return(g,y)=>t.renderSlot(g.$slots,"default",{cardValues:C.value},()=>[t.createVNode(t.unref(wr),t.normalizeProps(t.guardReactiveProps(m.value)),null,16)])}}),H=e=>new Date(e),Nr=(e,r)=>{const i=e.body;e.reply({statusCode:200,body:he(i,r)})},ye=e=>e.reduce((r,i)=>(r[i]={name:i},r),{}),he=(e,r)=>{var C,g;const i=N.TimePeriods.get(N.TimeframeKeys.ONE_DAY),o=e.granularity==="trend"?new N.DeltaQueryTime(i):new N.UnaryQueryTime(i),a=o.endMs(),n=o.startMs(),d=o.granularityMs(),p=e.granularity==="trend"?2:1;if((e.dimensions??[]).length>2)throw new Error(`Explore only supports 0-2 dimensions; got: ${JSON.stringify(e.dimensions)}`);const f=(e.dimensions??[]).find(y=>y!=="time"),l=(r==null?void 0:r.dimensionNames)??[],s=Math.max(l.length,1),c=e.metrics||[],u=[];for(let y=0;y<p;y++)for(let k=0;k<s;k++){const v=f?{[f]:l[k]}:{};(C=e.dimensions)!=null&&C.includes("status_code_grouped")?L.forEach(h=>{const T=c.reduce((b,V)=>(b[V]=(p-y)*1e3+100*k+1,b),{...v,status_code_grouped:h});u.push({version:"v1",timestamp:y===0?H(n).toISOString():H(n+d).toISOString(),event:T})}):u.push({version:"v1",timestamp:y===0?H(n).toISOString():H(n+d).toISOString(),event:c.reduce((h,T)=>(h[T]=(p-y)*1e3+100*k+1,h),{...v})})}const m={start_ms:n,end_ms:a,granularity_ms:d,display:f?{[f]:ye(l),...(g=e.dimensions)!=null&&g.includes("status_code_grouped")?{status_code_grouped:ye(L)}:{}}:{},metric_names:e.metrics,query_id:"test"};return{data:u,meta:m}};w.MetricsConsumer=Er,w.MetricsProviderInternal=Ke,w.mockExploreResponse=he,w.mockExploreResponseFromCypress=Nr,Object.defineProperty(w,Symbol.toStringTag,{value:"Module"})});
1
+ (function(w,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("@kong-ui-public/analytics-utilities"),require("@kong-ui-public/i18n"),require("@kong-ui-public/analytics-config-store")):typeof define=="function"&&define.amd?define(["exports","vue","@kong-ui-public/analytics-utilities","@kong-ui-public/i18n","@kong-ui-public/analytics-config-store"],t):(w=typeof globalThis<"u"?globalThis:w||self,t(w["kong-ui-public-vitals-metric-provider"]={},w.Vue,w["kong-ui-public-analytics-utilities"],w["kong-ui-public-i18n"],w["kong-ui-public-analytics-config-store"]))})(this,function(w,t,N,te,re){"use strict";const ke={general:{notAvailable:"N/A"},metricCard:{short:{traffic:"Requests",errorRate:"Error Rate",latency:"P99 Latency"},long:{traffic:"Number of Requests",errorRate:"Average Error Rate",latency:"P99 Latency"}},trendRange:{custom:"vs previous {numDays, plural, =1 {day} other {# days}}","15m":"vs previous 15 minutes","1h":"vs previous hour","6h":"vs previous 6 hours","12h":"vs previous 12 hours","24h":"vs previous 24 hours","7d":"vs previous 7 days","30d":"vs previous 30 days",current_week:"vs previous week",current_month:"vs previous month",current_quarter:"vs previous quarter",previous_week:"vs previous time period",previous_month:"vs previous time period",previous_quarter:"vs previous quarter"}};function we(){const e=te.createI18n("en-us",ke);return{i18n:e,i18nT:te.i18nTComponent(e)}}const Ee=2,L=["1XX","2XX","3XX","4XX","5XX"],ie=["4XX","5XX"],Ne="analytics-query-provider";var ne=(e=>(e.VALIDATING="VALIDATING",e.VALIDATING_HAS_DATA="VALIDATING_HAS_DATA",e.PENDING="PENDING",e.SUCCESS="SUCCESS",e.SUCCESS_HAS_DATA="SUCCESS_HAS_DATA",e.ERROR="ERROR",e.STALE_IF_ERROR="STALE_IF_ERROR",e))(ne||{});const _e=e=>{var r,i,o,a,n;return e?!!((r=Object.keys(e))!=null&&r.length||(i=e.data)!=null&&i.length||(a=(o=e.data)==null?void 0:o.data)!=null&&a.length||!((n=e.data)!=null&&n.data)&&typeof e.data=="object"&&Object.keys(e==null?void 0:e.data).length):!1};function Ie(e=t.ref({}),r,i,o=_e){const a=t.ref("PENDING");return t.watchEffect(()=>{const n=o(e.value);if(e.value&&n&&i.value){a.value="VALIDATING_HAS_DATA";return}if(e.value&&i.value){a.value="VALIDATING";return}if(e.value&&r.value){a.value="STALE_IF_ERROR";return}if(e.value===void 0&&!r.value){a.value="PENDING";return}if(e.value&&!r.value&&n){a.value="SUCCESS_HAS_DATA";return}if(e.value&&!r.value){a.value="SUCCESS";return}e.value===void 0&&r&&(a.value="ERROR")}),{state:a,swrvState:ne}}const x=Symbol("default"),P="status_code_grouped",ae=(e,r,i,o,a)=>{e[r][i]||(e[r][i]={}),e[r][i][o]=a};function Re(e,r){var p;const i=((p=e.meta.metric_names)==null?void 0:p[0])||"",o=e.meta.start_ms,a=Object.keys(e.meta.display||{}),n=!!a.find(f=>f===P),d=a.find(f=>f!==P);return a.length>2||a.length>1&&!n?(console.error("Don't know how to work with provided dimensions:",a),{previous:{[x]:{[x]:0}},current:{[x]:{[x]:0}}}):e.data.reduce((f,l)=>{const s=l.event[i],c=d?l.event[d]:x,u=n?l.event[P]:x;return new Date(l.timestamp).getTime()===o&&r?ae(f,"previous",c,u,s):ae(f,"current",c,u,s),f},{previous:{},current:{}})}function xe(e){e.queryReady===void 0&&(e.queryReady=t.computed(()=>!0));const{i18n:r}=B.useI18n(),i=t.computed(()=>{var c,u;return{metrics:e.metrics,dimensions:[...(c=e.dimensions)!=null&&c.length?[...e.dimensions]:[],...e.withTrend.value?["time"]:[]],granularity:e.withTrend.value?"trend":void 0,...(u=e.filter.value)!=null&&u.length?{filters:e.filter.value}:{},time_range:e.timeframe.value.v4Query(e.tz.value)}}),o=t.computed(()=>{var u,m,C,g;if(!((u=e.queryReady)!=null&&u.value)||e.featureFlags&&!e.featureFlags.every(y=>y))return null;const c=(m=e.filter)!=null&&m.value?JSON.stringify(e.filter.value):"";return`metric-fetcher-${e.timeframe.value.cacheKey()}-${(C=e.dimensions)==null?void 0:C.join("-")}-${(g=e.metrics)==null?void 0:g.join("-")}-${c}`}),{response:a,error:n,isValidating:d}=B.useRequest(()=>o.value,()=>e.queryFn(i.value,e.abortController??new AbortController),{refreshInterval:e.refreshInterval,revalidateOnFocus:!1,errorRetryCount:Ee}),{state:p,swrvState:f}=Ie(a,n,d),l=t.computed(()=>{var c,u,m,C,g,y,k;return!((u=(c=a.value)==null?void 0:c.data)!=null&&u.length)||!((C=(m=a.value)==null?void 0:m.meta)!=null&&C.display)||!((k=(y=(g=a.value)==null?void 0:g.meta)==null?void 0:y.metric_names)!=null&&k.length)?{current:{},previous:{}}:Re(a.value,e.withTrend.value)}),s=t.computed(()=>{var c,u,m;if(e.timeframe.value.key==="custom"){if(!((u=(c=a.value)==null?void 0:c.meta)!=null&&u.start_ms))return"";const{start_ms:C,end_ms:g}=a.value.meta;let y=(g-C)/(1e3*60*60*24);return e.withTrend.value&&(y/=2),r.t("trendRange.custom",{numDays:Math.round(y)})}else return e.withTrend.value?r.t(`trendRange.${e.timeframe.value.key}`):r.t(`trendRange.${(m=N.TimePeriods.get(N.TimeframeKeys.ONE_DAY))==null?void 0:m.key}`)});return{isLoading:t.computed(()=>f.PENDING===p.value),hasError:t.computed(()=>f.ERROR===p.value),raw:a,mapped:l,trendRange:s}}const q=(e,r,i=x,o)=>(o??[x]).reduce((n,d)=>{const p=e[r][i];return p?n+(p[d]||0):n},0);function Te(e){const{cardType:r,title:i,description:o,record:a,hasError:n,increaseIsBad:d,formatValueFn:p,trendRange:f}=e;return t.computed(()=>{let l=0,s=0;if(a!=null&&a.value)try{l=q(a.value,"current",e.lookupKey,e.sumGroupedValues),s=q(a.value,"previous",e.lookupKey,e.sumGroupedValues)}catch(c){console.error("Metric card data doesn't have the expected structure:",c)}return{cardType:r,hasError:n.value,currentValue:l,previousValue:s,title:i.value,description:o,increaseIsBad:!!d,formatValueFn:p,trendRange:f==null?void 0:f.value}})}var K=new WeakMap,oe=0;function Be(e){if(!e.length)return"";for(var r="arg",i=0;i<e.length;++i){var o=void 0;e[i]===null||typeof e[i]!="object"&&typeof e[i]!="function"?typeof e[i]=="string"?o='"'+e[i]+'"':o=String(e[i]):K.has(e[i])?o=K.get(e[i]):(o=oe,K.set(e[i],oe++)),r+="@"+o}return r}function Ve(e){if(typeof e=="function")try{e=e()}catch{e=""}return Array.isArray(e)?e=Be(e):e=String(e||""),e}var Z=function(){function e(r){r===void 0&&(r=0),this.items=new Map,this.ttl=r}return e.prototype.serializeKey=function(r){return Ve(r)},e.prototype.get=function(r){var i=this.serializeKey(r);return this.items.get(i)},e.prototype.set=function(r,i,o){var a=this.serializeKey(r),n=o||this.ttl,d=Date.now(),p={data:i,createdAt:d,expiresAt:n?d+n:1/0};this.dispatchExpire(n,p,a),this.items.set(a,p)},e.prototype.dispatchExpire=function(r,i,o){var a=this;r&&setTimeout(function(){var n=Date.now(),d=n>=i.expiresAt;d&&a.delete(o)},r)},e.prototype.delete=function(r){this.items.delete(r)},e}();function ze(){return typeof navigator.onLine<"u"?navigator.onLine:!0}function qe(){return typeof document<"u"&&typeof document.visibilityState<"u"?document.visibilityState!=="hidden":!0}var De=function(e){return fetch(e).then(function(r){return r.json()})};const j={isOnline:ze,isDocumentVisible:qe,fetcher:De};var I=function(){return I=Object.assign||function(e){for(var r,i=1,o=arguments.length;i<o;i++){r=arguments[i];for(var a in r)Object.prototype.hasOwnProperty.call(r,a)&&(e[a]=r[a])}return e},I.apply(this,arguments)},D=function(e,r,i,o){function a(n){return n instanceof i?n:new i(function(d){d(n)})}return new(i||(i=Promise))(function(n,d){function p(s){try{l(o.next(s))}catch(c){d(c)}}function f(s){try{l(o.throw(s))}catch(c){d(c)}}function l(s){s.done?n(s.value):a(s.value).then(p,f)}l((o=o.apply(e,r||[])).next())})},A=function(e,r){var i={label:0,sent:function(){if(n[0]&1)throw n[1];return n[1]},trys:[],ops:[]},o,a,n,d;return d={next:p(0),throw:p(1),return:p(2)},typeof Symbol=="function"&&(d[Symbol.iterator]=function(){return this}),d;function p(l){return function(s){return f([l,s])}}function f(l){if(o)throw new TypeError("Generator is already executing.");for(;i;)try{if(o=1,a&&(n=l[0]&2?a.return:l[0]?a.throw||((n=a.return)&&n.call(a),0):a.next)&&!(n=n.call(a,l[1])).done)return n;switch(a=0,n&&(l=[l[0]&2,n.value]),l[0]){case 0:case 1:n=l;break;case 4:return i.label++,{value:l[1],done:!1};case 5:i.label++,a=l[1],l=[0];continue;case 7:l=i.ops.pop(),i.trys.pop();continue;default:if(n=i.trys,!(n=n.length>0&&n[n.length-1])&&(l[0]===6||l[0]===2)){i=0;continue}if(l[0]===3&&(!n||l[1]>n[0]&&l[1]<n[3])){i.label=l[1];break}if(l[0]===6&&i.label<n[1]){i.label=n[1],n=l;break}if(n&&i.label<n[2]){i.label=n[2],i.ops.push(l);break}n[2]&&i.ops.pop(),i.trys.pop();continue}l=r.call(e,i)}catch(s){l=[6,s],a=0}finally{o=n=0}if(l[0]&5)throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}},Ae=function(e,r){var i=typeof Symbol=="function"&&e[Symbol.iterator];if(!i)return e;var o=i.call(e),a,n=[],d;try{for(;(r===void 0||r-- >0)&&!(a=o.next()).done;)n.push(a.value)}catch(p){d={error:p}}finally{try{a&&!a.done&&(i=o.return)&&i.call(o)}finally{if(d)throw d.error}}return n},Le=function(e,r,i){if(i||arguments.length===2)for(var o=0,a=r.length,n;o<a;o++)(n||!(o in r))&&(n||(n=Array.prototype.slice.call(r,0,o)),n[o]=r[o]);return e.concat(n||Array.prototype.slice.call(r))},le=new Z,O=new Z,G=new Z,se={cache:le,refreshInterval:0,ttl:0,serverTTL:1e3,dedupingInterval:2e3,revalidateOnFocus:!0,revalidateDebounce:0,shouldRetryOnError:!0,errorRetryInterval:5e3,errorRetryCount:5,fetcher:j.fetcher,isOnline:j.isOnline,isDocumentVisible:j.isDocumentVisible};function Me(e,r,i){var o=O.get(e);if(o)o.data.push(r);else{var a=5e3;O.set(e,[r],i>0?i+a:i)}}function Oe(e,r,i){if(i.isDocumentVisible()&&!(i.errorRetryCount!==void 0&&r>i.errorRetryCount)){var o=Math.min(r||0,i.errorRetryCount),a=o*i.errorRetryInterval;setTimeout(function(){e(null,{errorRetryCount:o+1,shouldRetryOnError:!0})},a)}}var de=function(e,r,i,o){return i===void 0&&(i=le),o===void 0&&(o=se.ttl),D(void 0,void 0,void 0,function(){var a,n,d,p,f,l,s;return A(this,function(c){switch(c.label){case 0:if(!He(r))return[3,5];c.label=1;case 1:return c.trys.push([1,3,,4]),[4,r];case 2:return a=c.sent(),[3,4];case 3:return p=c.sent(),n=p,[3,4];case 4:return[3,6];case 5:a=r,c.label=6;case 6:if(d=!1,f={data:a,error:n,isValidating:d},typeof a<"u")try{i.set(e,f,o)}catch(u){console.error("swrv(mutate): failed to set cache",u)}return l=O.get(e),l&&l.data.length&&(s=l.data.filter(function(u){return u.key===e}),s.forEach(function(u,m){typeof f.data<"u"&&(u.data=f.data),u.error=f.error,u.isValidating=f.isValidating;var C=m===s.length-1;C||delete s[m]}),s=s.filter(Boolean)),[2,f]}})})};function Fe(){for(var e=this,r=[],i=0;i<arguments.length;i++)r[i]=arguments[i];var o,a,n=I({},se),d=!1,p=!1,f=t.getCurrentInstance(),l=(f==null?void 0:f.proxy)||f;if(!l)return console.error("Could not get current instance, check to make sure that `useSwrv` is declared in the top level of the setup function."),null;var s=(l==null?void 0:l.$isServer)||!1;r.length>=1&&(o=r[0]),r.length>=2&&(a=r[1]),r.length>2&&(n=I(I({},n),r[2]));var c=s?n.serverTTL:n.ttl,u=typeof o=="function"?o:t.ref(o);typeof a>"u"&&(a=n.fetcher);var m=null;m||(m=t.reactive({data:void 0,error:void 0,isValidating:!0,key:null}));var C=function(v,h){return D(e,void 0,void 0,function(){var T,b,V,M,Q,Ce,W,ve=this;return A(this,function(J){switch(J.label){case 0:return T=m.data===void 0,b=u.value,b?(V=n.cache.get(b),M=V&&V.data,m.isValidating=!0,M&&(m.data=M.data,m.error=M.error),Q=v||a,!Q||!n.isDocumentVisible()&&!T||(h==null?void 0:h.forceRevalidate)!==void 0&&!(h!=null&&h.forceRevalidate)?(m.isValidating=!1,[2]):V&&(Ce=!!(Date.now()-V.createdAt>=n.dedupingInterval||h!=null&&h.forceRevalidate),!Ce)?(m.isValidating=!1,[2]):(W=function(){return D(ve,void 0,void 0,function(){var z,Se,ee,be;return A(this,function($){switch($.label){case 0:return z=G.get(b),z?[3,2]:(Se=Array.isArray(b)?b:[b],ee=Q.apply(void 0,Le([],Ae(Se),!1)),G.set(b,ee,n.dedupingInterval),[4,de(b,ee,n.cache,c)]);case 1:return $.sent(),[3,4];case 2:return[4,de(b,z.data,n.cache,c)];case 3:$.sent(),$.label=4;case 4:return m.isValidating=!1,G.delete(b),m.error!==void 0&&(be=!d&&n.shouldRetryOnError&&(h?h.shouldRetryOnError:!0),be&&Oe(C,h?h.errorRetryCount:1,n)),[2]}})})},M&&n.revalidateDebounce?(setTimeout(function(){return D(ve,void 0,void 0,function(){return A(this,function(z){switch(z.label){case 0:return d?[3,2]:[4,W()];case 1:z.sent(),z.label=2;case 2:return[2]}})})},n.revalidateDebounce),[3,3]):[3,1])):[2];case 1:return[4,W()];case 2:J.sent(),J.label=3;case 3:return[2]}})})},g=function(){return D(e,void 0,void 0,function(){return A(this,function(v){return[2,C(null,{shouldRetryOnError:!1})]})})},y=null;t.onMounted(function(){var v=function(){return D(e,void 0,void 0,function(){return A(this,function(h){switch(h.label){case 0:return!m.error&&n.isOnline()?[4,C()]:[3,2];case 1:return h.sent(),[3,3];case 2:y&&clearTimeout(y),h.label=3;case 3:return n.refreshInterval&&!d&&(y=setTimeout(v,n.refreshInterval)),[2]}})})};n.refreshInterval&&(y=setTimeout(v,n.refreshInterval)),n.revalidateOnFocus&&(document.addEventListener("visibilitychange",g,!1),window.addEventListener("focus",g,!1))}),t.onUnmounted(function(){d=!0,y&&clearTimeout(y),n.revalidateOnFocus&&(document.removeEventListener("visibilitychange",g,!1),window.removeEventListener("focus",g,!1));var v=O.get(u.value);v&&(v.data=v.data.filter(function(h){return h!==m}))});try{t.watch(u,function(v){t.isReadonly(u)||(u.value=v),m.key=v,m.isValidating=!!v,Me(u.value,m,c),!s&&!p&&u.value&&C(),p=!1},{immediate:!0})}catch{}var k=I(I({},t.toRefs(m)),{mutate:function(v,h){return C(v,I(I({},h),{forceRevalidate:!0}))}});return k}function He(e){return e!==null&&typeof e=="object"&&typeof e.then=="function"}function $e(e,r,i){const{data:o,error:a,isValidating:n,mutate:d}=Fe(e,r,{revalidateDebounce:500,revalidateOnFocus:!1,dedupingInterval:100,...i});return{data:t.computed(()=>o.value),response:o,error:a,isValidating:n,revalidate:d}}const B={useI18n:we,useMetricCardBuilder:Te,useMetricFetcher:xe,useRequest:$e},ce=Symbol("METRICS_PROVIDER_KEY"),Pe=e=>{const{dimension:r,dimensionFilterValue:i,additionalFilter:o,queryReady:a,timeframe:n,tz:d,hasTrendAccess:p,refreshInterval:f,abortController:l,queryFn:s}=e;if(i&&!r)throw new Error("Must provide a dimension if filtering by a value");const c=!!(r&&i),u=!!(r&&!i),m=t.computed(()=>{const v=[];return c&&v.push({dimension:r,type:"in",values:[i]}),o.value&&v.push(...o.value),v}),C={metrics:["request_count"],dimensions:[...r&&!c?[r]:[],"status_code_grouped"],filter:m,queryReady:a,timeframe:n,tz:d,withTrend:t.computed(()=>p.value&&!u),refreshInterval:f,queryFn:s,abortController:l},g={metrics:["response_latency_p99"],...r&&!c?{dimensions:[r]}:{},filter:m,queryReady:a,timeframe:n,tz:d,withTrend:t.computed(()=>p.value&&!u),refreshInterval:f,queryFn:s,abortController:l},y=B.useMetricFetcher(C),k=B.useMetricFetcher(g);return{trafficData:y,latencyData:k}},Ke=t.defineComponent({__name:"MetricsProviderInternal",props:{maxTimeframe:{default:N.TimeframeKeys.THIRTY_DAY},overrideTimeframe:{default:void 0},tz:{default:void 0},dimension:{default:void 0},filterValue:{default:void 0},additionalFilter:{default:void 0},queryReady:{type:Boolean,default:!0},refreshInterval:{},longCardTitles:{type:Boolean,default:!1},description:{default:void 0},abortController:{default:void 0}},setup(e){const r=e;if(r.dimension&&N.queryableExploreDimensions.findIndex(u=>u===r.dimension)===-1)throw new Error(`Attempted to use MetricsProvider with an invalid dimension: ${r.dimension}`);const i=t.inject(Ne);let o;i?o=i.queryFn:(console.warn("Analytics dashboards require a query bridge supplied via provide / inject."),console.warn("Please ensure your application has a query bridge provided under the key 'analytics-query-provider', as described in"),console.warn("https://github.com/Kong/public-ui-components/blob/main/packages/analytics/analytics-metric-provider/README.md#requirements"),o=()=>Promise.reject(new Error("Query bridge required")));const n=re.useAnalyticsConfigStore().getConfig(),d=t.computed(()=>n.value!==null&&r.queryReady),p=t.computed(()=>{var m,C;const u=(C=(m=n.value)==null?void 0:m.analytics)==null?void 0:C.retention_ms;return!!u&&u>re.SEVEN_DAYS_MS}),f=t.computed(()=>r.tz?r.tz:new Intl.DateTimeFormat().resolvedOptions().timeZone),l=t.computed(()=>{if(r.overrideTimeframe)return r.overrideTimeframe;const u=p.value?N.TimePeriods.get(r.maxTimeframe):N.TimePeriods.get(N.TimeframeKeys.ONE_DAY);if(!u)throw new Error("Metrics provider failed to resolve fallback timeframe.");return u}),{trafficData:s,latencyData:c}=Pe({dimension:r.dimension,dimensionFilterValue:r.filterValue,additionalFilter:t.toRef(r,"additionalFilter"),queryReady:d,timeframe:l,tz:f,hasTrendAccess:p,refreshInterval:r.refreshInterval,queryFn:o,abortController:r.abortController});return t.provide(ce,{data:{traffic:s,latency:c},description:r.description,hasTrendAccess:p,longCardTitles:r.longCardTitles}),(u,m)=>t.renderSlot(u.$slots,"default",{hasTrendAccess:p.value,timeframe:l.value})}});function Ze(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var ue={exports:{}};(function(e){(function(){function r(l,s){if(s.separator===!1||l<1e3)return l.toString();var c=typeof s.separator=="string"?s.separator:",",u=[],m=Math.round(l).toString().split("");return m.reverse().forEach(function(C,g){g&&g%3===0&&u.push(c),u.push(C)}),u.reverse().join("")}function i(l,s,c){var u=l/s,m=c.round?"round":"floor";return c.decimal===!1?(l=Math[m](u),l.toString()):(c.precision?l=u:l=u<10?Math[m](u*10)/10:Math[m](u),l=l.toString(),typeof c.decimal=="string"&&(l=l.replace(".",c.decimal)),l)}var o=1e3,a=1e4,n=1e6,d=1e9,p=1e12;function f(l,s){var c;s=s||{};var u=l<0;u&&(l=Math.abs(l)),s.precision&&(l=parseFloat(l.toPrecision(s.precision)));var m=s.min10k?a:o;return l<m||s.precision&&s.precision>Math.log10(l)?c=r(i(l,1,s),s):l<n?c=i(l,o,s)+"k":l<d?c=i(l,n,s)+"m":l<p?c=r(i(l,d,s),s)+"b":c=r(i(l,p,s),s)+"t",u&&(c="-"+c),s.capital&&(c=c.toUpperCase()),s.prefix&&(c=s.prefix+c),s.suffix&&(c=c+s.suffix),c}f.addCommas=r,e.exports=f})()})(ue);var je=ue.exports;const Ge=Ze(je);var E=(e=>(e.Small="sm",e.Medium="md",e.Large="lg",e.LargeCompact="lgc",e.ExtraLarge="xl",e))(E||{});const S="24px",_=(e,r)=>{const i=e.__vccOpts||e;for(const[o,a]of r)i[o]=a;return i},Ye=e=>(t.pushScopeId("data-v-115ec679"),e=e(),t.popScopeId(),e),Xe=["aria-hidden"],Ue={key:0,"data-testid":"kui-icon-svg-title"},Qe=Ye(()=>t.createElementVNode("path",{d:"M6.5 20C4.98333 20 3.6875 19.475 2.6125 18.425C1.5375 17.375 1 16.0917 1 14.575C1 13.275 1.39167 12.1167 2.175 11.1C2.95833 10.0833 3.98333 9.43333 5.25 9.15C5.66667 7.61667 6.5 6.375 7.75 5.425C9 4.475 10.4167 4 12 4C13.95 4 15.6042 4.67917 16.9625 6.0375C18.3208 7.39583 19 9.05 19 11C20.15 11.1333 21.1042 11.6292 21.8625 12.4875C22.6208 13.3458 23 14.35 23 15.5C23 16.75 22.5625 17.8125 21.6875 18.6875C20.8125 19.5625 19.75 20 18.5 20H13C12.45 20 11.9792 19.8042 11.5875 19.4125C11.1958 19.0208 11 18.55 11 18V12.85L9.4 14.4L8 13L12 9L16 13L14.6 14.4L13 12.85V18H18.5C19.2 18 19.7917 17.7583 20.275 17.275C20.7583 16.7917 21 16.2 21 15.5C21 14.8 20.7583 14.2083 20.275 13.725C19.7917 13.2417 19.2 13 18.5 13H17V11C17 9.61667 16.5125 8.4375 15.5375 7.4625C14.5625 6.4875 13.3833 6 12 6C10.6167 6 9.4375 6.4875 8.4625 7.4625C7.4875 8.4375 7 9.61667 7 11H6.5C5.53333 11 4.70833 11.3417 4.025 12.025C3.34167 12.7083 3 13.5333 3 14.5C3 15.4667 3.34167 16.2917 4.025 16.975C4.70833 17.6583 5.53333 18 6.5 18H9V20H6.5Z",fill:"currentColor"},null,-1)),We=t.defineComponent({__name:"CloudUploadIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:S,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const r=String(e).replace(/px/gi,""),i=Number(r);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const r=e,i=t.computed(()=>{if(typeof r.size=="number"&&r.size>0)return`${r.size}px`;if(typeof r.size=="string"){const a=String(r.size).replace(/px/gi,""),n=Number(a);if(n&&!isNaN(n)&&Number.isInteger(n)&&n>0)return`${n}px`}return S}),o=t.computed(()=>({boxSizing:"border-box",color:r.color,display:r.display,height:i.value,lineHeight:"0",width:i.value}));return(a,n)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon cloud-upload-icon","data-testid":"kui-icon-wrapper-cloud-upload-icon",style:t.normalizeStyle(o.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-cloud-upload-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",Ue,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),Qe],8,Xe))]),_:1},8,["aria-hidden","style"]))}}),Je=_(We,[["__scopeId","data-v-115ec679"]]),et=e=>(t.pushScopeId("data-v-6e3bced6"),e=e(),t.popScopeId(),e),tt=["aria-hidden"],rt={key:0,"data-testid":"kui-icon-svg-title"},it=et(()=>t.createElementVNode("path",{d:"M4 17V14H20V17H4ZM4 10V7H20V10H4Z",fill:"currentColor"},null,-1)),nt=t.defineComponent({__name:"EqualIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:S,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const r=String(e).replace(/px/gi,""),i=Number(r);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const r=e,i=t.computed(()=>{if(typeof r.size=="number"&&r.size>0)return`${r.size}px`;if(typeof r.size=="string"){const a=String(r.size).replace(/px/gi,""),n=Number(a);if(n&&!isNaN(n)&&Number.isInteger(n)&&n>0)return`${n}px`}return S}),o=t.computed(()=>({boxSizing:"border-box",color:r.color,display:r.display,height:i.value,lineHeight:"0",width:i.value}));return(a,n)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon equal-icon","data-testid":"kui-icon-wrapper-equal-icon",style:t.normalizeStyle(o.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-equal-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",rt,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),it],8,tt))]),_:1},8,["aria-hidden","style"]))}}),at=_(nt,[["__scopeId","data-v-6e3bced6"]]),ot=e=>(t.pushScopeId("data-v-1ae1a325"),e=e(),t.popScopeId(),e),lt=["aria-hidden"],st={key:0,"data-testid":"kui-icon-svg-title"},dt=ot(()=>t.createElementVNode("path",{d:"M5 11V9H15V11H5Z",fill:"currentColor"},null,-1)),ct=t.defineComponent({__name:"IndeterminateSmallIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:S,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const r=String(e).replace(/px/gi,""),i=Number(r);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const r=e,i=t.computed(()=>{if(typeof r.size=="number"&&r.size>0)return`${r.size}px`;if(typeof r.size=="string"){const a=String(r.size).replace(/px/gi,""),n=Number(a);if(n&&!isNaN(n)&&Number.isInteger(n)&&n>0)return`${n}px`}return S}),o=t.computed(()=>({boxSizing:"border-box",color:r.color,display:r.display,height:i.value,lineHeight:"0",width:i.value}));return(a,n)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon indeterminate-small-icon","data-testid":"kui-icon-wrapper-indeterminate-small-icon",style:t.normalizeStyle(o.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-indeterminate-small-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",st,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),dt],8,lt))]),_:1},8,["aria-hidden","style"]))}}),pe=_(ct,[["__scopeId","data-v-1ae1a325"]]),ut=e=>(t.pushScopeId("data-v-60c6b8be"),e=e(),t.popScopeId(),e),pt=["aria-hidden"],ft={key:0,"data-testid":"kui-icon-svg-title"},mt=ut(()=>t.createElementVNode("path",{d:"M11 17H13V11H11V17ZM12 9C12.2833 9 12.5208 8.90417 12.7125 8.7125C12.9042 8.52083 13 8.28333 13 8C13 7.71667 12.9042 7.47917 12.7125 7.2875C12.5208 7.09583 12.2833 7 12 7C11.7167 7 11.4792 7.09583 11.2875 7.2875C11.0958 7.47917 11 7.71667 11 8C11 8.28333 11.0958 8.52083 11.2875 8.7125C11.4792 8.90417 11.7167 9 12 9ZM12 22C10.6167 22 9.31667 21.7375 8.1 21.2125C6.88333 20.6875 5.825 19.975 4.925 19.075C4.025 18.175 3.3125 17.1167 2.7875 15.9C2.2625 14.6833 2 13.3833 2 12C2 10.6167 2.2625 9.31667 2.7875 8.1C3.3125 6.88333 4.025 5.825 4.925 4.925C5.825 4.025 6.88333 3.3125 8.1 2.7875C9.31667 2.2625 10.6167 2 12 2C13.3833 2 14.6833 2.2625 15.9 2.7875C17.1167 3.3125 18.175 4.025 19.075 4.925C19.975 5.825 20.6875 6.88333 21.2125 8.1C21.7375 9.31667 22 10.6167 22 12C22 13.3833 21.7375 14.6833 21.2125 15.9C20.6875 17.1167 19.975 18.175 19.075 19.075C18.175 19.975 17.1167 20.6875 15.9 21.2125C14.6833 21.7375 13.3833 22 12 22Z",fill:"currentColor"},null,-1)),gt=t.defineComponent({__name:"InfoIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:S,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const r=String(e).replace(/px/gi,""),i=Number(r);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const r=e,i=t.computed(()=>{if(typeof r.size=="number"&&r.size>0)return`${r.size}px`;if(typeof r.size=="string"){const a=String(r.size).replace(/px/gi,""),n=Number(a);if(n&&!isNaN(n)&&Number.isInteger(n)&&n>0)return`${n}px`}return S}),o=t.computed(()=>({boxSizing:"border-box",color:r.color,display:r.display,height:i.value,lineHeight:"0",width:i.value}));return(a,n)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon info-icon","data-testid":"kui-icon-wrapper-info-icon",style:t.normalizeStyle(o.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-info-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",ft,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),mt],8,pt))]),_:1},8,["aria-hidden","style"]))}}),yt=_(gt,[["__scopeId","data-v-60c6b8be"]]),ht=e=>(t.pushScopeId("data-v-9ad4bd00"),e=e(),t.popScopeId(),e),Ct=["aria-hidden"],vt={key:0,"data-testid":"kui-icon-svg-title"},St=ht(()=>t.createElementVNode("path",{d:"M15.25 5C14.9 5 14.6042 4.87917 14.3625 4.6375C14.1208 4.39583 14 4.1 14 3.75C14 3.4 14.1208 3.10417 14.3625 2.8625C14.6042 2.62083 14.9 2.5 15.25 2.5C15.6 2.5 15.8958 2.62083 16.1375 2.8625C16.3792 3.10417 16.5 3.4 16.5 3.75C16.5 4.1 16.3792 4.39583 16.1375 4.6375C15.8958 4.87917 15.6 5 15.25 5ZM15.25 21.5C14.9 21.5 14.6042 21.3792 14.3625 21.1375C14.1208 20.8958 14 20.6 14 20.25C14 19.9 14.1208 19.6042 14.3625 19.3625C14.6042 19.1208 14.9 19 15.25 19C15.6 19 15.8958 19.1208 16.1375 19.3625C16.3792 19.6042 16.5 19.9 16.5 20.25C16.5 20.6 16.3792 20.8958 16.1375 21.1375C15.8958 21.3792 15.6 21.5 15.25 21.5ZM19.25 8.5C18.9 8.5 18.6042 8.37917 18.3625 8.1375C18.1208 7.89583 18 7.6 18 7.25C18 6.9 18.1208 6.60417 18.3625 6.3625C18.6042 6.12083 18.9 6 19.25 6C19.6 6 19.8958 6.12083 20.1375 6.3625C20.3792 6.60417 20.5 6.9 20.5 7.25C20.5 7.6 20.3792 7.89583 20.1375 8.1375C19.8958 8.37917 19.6 8.5 19.25 8.5ZM19.25 18C18.9 18 18.6042 17.8792 18.3625 17.6375C18.1208 17.3958 18 17.1 18 16.75C18 16.4 18.1208 16.1042 18.3625 15.8625C18.6042 15.6208 18.9 15.5 19.25 15.5C19.6 15.5 19.8958 15.6208 20.1375 15.8625C20.3792 16.1042 20.5 16.4 20.5 16.75C20.5 17.1 20.3792 17.3958 20.1375 17.6375C19.8958 17.8792 19.6 18 19.25 18ZM20.75 13.25C20.4 13.25 20.1042 13.1292 19.8625 12.8875C19.6208 12.6458 19.5 12.35 19.5 12C19.5 11.65 19.6208 11.3542 19.8625 11.1125C20.1042 10.8708 20.4 10.75 20.75 10.75C21.1 10.75 21.3958 10.8708 21.6375 11.1125C21.8792 11.3542 22 11.65 22 12C22 12.35 21.8792 12.6458 21.6375 12.8875C21.3958 13.1292 21.1 13.25 20.75 13.25ZM12 22C10.6167 22 9.31667 21.7375 8.1 21.2125C6.88333 20.6875 5.825 19.975 4.925 19.075C4.025 18.175 3.3125 17.1167 2.7875 15.9C2.2625 14.6833 2 13.3833 2 12C2 10.6167 2.2625 9.31667 2.7875 8.1C3.3125 6.88333 4.025 5.825 4.925 4.925C5.825 4.025 6.88333 3.3125 8.1 2.7875C9.31667 2.2625 10.6167 2 12 2V4C9.76667 4 7.875 4.775 6.325 6.325C4.775 7.875 4 9.76667 4 12C4 14.2333 4.775 16.125 6.325 17.675C7.875 19.225 9.76667 20 12 20V22ZM12 14C11.45 14 10.9792 13.8042 10.5875 13.4125C10.1958 13.0208 10 12.55 10 12C10 11.9167 10.0042 11.8292 10.0125 11.7375C10.0208 11.6458 10.0417 11.5583 10.075 11.475L8 9.4L9.4 8L11.475 10.075C11.5417 10.0583 11.7167 10.0333 12 10C12.55 10 13.0208 10.1958 13.4125 10.5875C13.8042 10.9792 14 11.45 14 12C14 12.55 13.8042 13.0208 13.4125 13.4125C13.0208 13.8042 12.55 14 12 14Z",fill:"currentColor"},null,-1)),bt=t.defineComponent({__name:"ResponseIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:S,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const r=String(e).replace(/px/gi,""),i=Number(r);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const r=e,i=t.computed(()=>{if(typeof r.size=="number"&&r.size>0)return`${r.size}px`;if(typeof r.size=="string"){const a=String(r.size).replace(/px/gi,""),n=Number(a);if(n&&!isNaN(n)&&Number.isInteger(n)&&n>0)return`${n}px`}return S}),o=t.computed(()=>({boxSizing:"border-box",color:r.color,display:r.display,height:i.value,lineHeight:"0",width:i.value}));return(a,n)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon response-icon","data-testid":"kui-icon-wrapper-response-icon",style:t.normalizeStyle(o.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-response-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",vt,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),St],8,Ct))]),_:1},8,["aria-hidden","style"]))}}),kt=_(bt,[["__scopeId","data-v-9ad4bd00"]]),wt=e=>(t.pushScopeId("data-v-aa775b0e"),e=e(),t.popScopeId(),e),Et=["aria-hidden"],Nt={key:0,"data-testid":"kui-icon-svg-title"},_t=wt(()=>t.createElementVNode("path",{d:"M16 18V16H18.6L13.4 10.85L9.4 14.85L2 7.4L3.4 6L9.4 12L13.4 8L20 14.6V12H22V18H16Z",fill:"currentColor"},null,-1)),It=t.defineComponent({__name:"TrendDownIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:S,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const r=String(e).replace(/px/gi,""),i=Number(r);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const r=e,i=t.computed(()=>{if(typeof r.size=="number"&&r.size>0)return`${r.size}px`;if(typeof r.size=="string"){const a=String(r.size).replace(/px/gi,""),n=Number(a);if(n&&!isNaN(n)&&Number.isInteger(n)&&n>0)return`${n}px`}return S}),o=t.computed(()=>({boxSizing:"border-box",color:r.color,display:r.display,height:i.value,lineHeight:"0",width:i.value}));return(a,n)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon trend-down-icon","data-testid":"kui-icon-wrapper-trend-down-icon",style:t.normalizeStyle(o.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-trend-down-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",Nt,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),_t],8,Et))]),_:1},8,["aria-hidden","style"]))}}),Rt=_(It,[["__scopeId","data-v-aa775b0e"]]),xt=e=>(t.pushScopeId("data-v-cb010004"),e=e(),t.popScopeId(),e),Tt=["aria-hidden"],Bt={key:0,"data-testid":"kui-icon-svg-title"},Vt=xt(()=>t.createElementVNode("path",{d:"M3.4 18L2 16.6L9.4 9.15L13.4 13.15L18.6 8H16V6H22V12H20V9.4L13.4 16L9.4 12L3.4 18Z",fill:"currentColor"},null,-1)),zt=t.defineComponent({__name:"TrendUpIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:S,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const r=String(e).replace(/px/gi,""),i=Number(r);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const r=e,i=t.computed(()=>{if(typeof r.size=="number"&&r.size>0)return`${r.size}px`;if(typeof r.size=="string"){const a=String(r.size).replace(/px/gi,""),n=Number(a);if(n&&!isNaN(n)&&Number.isInteger(n)&&n>0)return`${n}px`}return S}),o=t.computed(()=>({boxSizing:"border-box",color:r.color,display:r.display,height:i.value,lineHeight:"0",width:i.value}));return(a,n)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon trend-up-icon","data-testid":"kui-icon-wrapper-trend-up-icon",style:t.normalizeStyle(o.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-trend-up-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",Bt,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),Vt],8,Tt))]),_:1},8,["aria-hidden","style"]))}}),qt=_(zt,[["__scopeId","data-v-cb010004"]]),Dt=e=>(t.pushScopeId("data-v-6d3b4073"),e=e(),t.popScopeId(),e),At=["aria-hidden"],Lt={key:0,"data-testid":"kui-icon-svg-title"},Mt=Dt(()=>t.createElementVNode("path",{d:"M9 20C8.68333 20 8.4 19.9083 8.15 19.725C7.9 19.5417 7.71667 19.3083 7.6 19.025L5.3 13H1V11H6.7L9 17.1L13.6 4.975C13.7167 4.69167 13.9 4.45833 14.15 4.275C14.4 4.09167 14.6833 4 15 4C15.3167 4 15.6 4.09167 15.85 4.275C16.1 4.45833 16.2833 4.69167 16.4 4.975L18.7 11H23V13H17.3L15 6.9L10.4 19.025C10.2833 19.3083 10.1 19.5417 9.85 19.725C9.6 19.9083 9.31667 20 9 20Z",fill:"currentColor"},null,-1)),Ot=t.defineComponent({__name:"VitalsIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:S,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const r=String(e).replace(/px/gi,""),i=Number(r);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const r=e,i=t.computed(()=>{if(typeof r.size=="number"&&r.size>0)return`${r.size}px`;if(typeof r.size=="string"){const a=String(r.size).replace(/px/gi,""),n=Number(a);if(n&&!isNaN(n)&&Number.isInteger(n)&&n>0)return`${n}px`}return S}),o=t.computed(()=>({boxSizing:"border-box",color:r.color,display:r.display,height:i.value,lineHeight:"0",width:i.value}));return(a,n)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon vitals-icon","data-testid":"kui-icon-wrapper-vitals-icon",style:t.normalizeStyle(o.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-vitals-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",Lt,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),Mt],8,At))]),_:1},8,["aria-hidden","style"]))}}),Ft=_(Ot,[["__scopeId","data-v-6d3b4073"]]),Ht=e=>(t.pushScopeId("data-v-0e9cc640"),e=e(),t.popScopeId(),e),$t=["aria-hidden"],Pt={key:0,"data-testid":"kui-icon-svg-title"},Kt=Ht(()=>t.createElementVNode("path",{d:"M12.0001 22.025C11.7334 22.025 11.4793 21.975 11.2376 21.875C10.9959 21.775 10.7751 21.6333 10.5751 21.45L2.5501 13.425C2.36676 13.225 2.2251 13.0041 2.1251 12.7625C2.0251 12.5208 1.9751 12.2666 1.9751 12C1.9751 11.7333 2.0251 11.475 2.1251 11.225C2.2251 10.975 2.36676 10.7583 2.5501 10.575L10.5751 2.54998C10.7751 2.34998 10.9959 2.20414 11.2376 2.11248C11.4793 2.02081 11.7334 1.97498 12.0001 1.97498C12.2668 1.97498 12.5251 2.02081 12.7751 2.11248C13.0251 2.20414 13.2418 2.34998 13.4251 2.54998L21.4501 10.575C21.6501 10.7583 21.7959 10.975 21.8876 11.225C21.9793 11.475 22.0251 11.7333 22.0251 12C22.0251 12.2666 21.9793 12.5208 21.8876 12.7625C21.7959 13.0041 21.6501 13.225 21.4501 13.425L13.4251 21.45C13.2418 21.6333 13.0251 21.775 12.7751 21.875C12.5251 21.975 12.2668 22.025 12.0001 22.025ZM12.0001 20.025L20.0251 12L12.0001 3.97498L3.9751 12L12.0001 20.025ZM11.0001 13H13.0001V6.99998H11.0001V13ZM12.0001 16C12.2834 16 12.5209 15.9041 12.7126 15.7125C12.9043 15.5208 13.0001 15.2833 13.0001 15C13.0001 14.7166 12.9043 14.4791 12.7126 14.2875C12.5209 14.0958 12.2834 14 12.0001 14C11.7168 14 11.4793 14.0958 11.2876 14.2875C11.0959 14.4791 11.0001 14.7166 11.0001 15C11.0001 15.2833 11.0959 15.5208 11.2876 15.7125C11.4793 15.9041 11.7168 16 12.0001 16Z",fill:"currentColor"},null,-1)),Zt=t.defineComponent({__name:"WarningOutlineIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:S,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const r=String(e).replace(/px/gi,""),i=Number(r);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const r=e,i=t.computed(()=>{if(typeof r.size=="number"&&r.size>0)return`${r.size}px`;if(typeof r.size=="string"){const a=String(r.size).replace(/px/gi,""),n=Number(a);if(n&&!isNaN(n)&&Number.isInteger(n)&&n>0)return`${n}px`}return S}),o=t.computed(()=>({boxSizing:"border-box",color:r.color,display:r.display,height:i.value,lineHeight:"0",width:i.value}));return(a,n)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon warning-outline-icon","data-testid":"kui-icon-wrapper-warning-outline-icon",style:t.normalizeStyle(o.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-warning-outline-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",Pt,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),Kt],8,$t))]),_:1},8,["aria-hidden","style"]))}}),jt=_(Zt,[["__scopeId","data-v-0e9cc640"]]),Gt=e=>(t.pushScopeId("data-v-d7b122fd"),e=e(),t.popScopeId(),e),Yt=["aria-hidden"],Xt={key:0,"data-testid":"kui-icon-svg-title"},Ut=Gt(()=>t.createElementVNode("path",{d:"M12.025 22.05C11.7583 22.05 11.5042 22 11.2625 21.9C11.0208 21.8 10.8 21.6583 10.6 21.475L2.575 13.45C2.39167 13.25 2.25 13.0292 2.15 12.7875C2.05 12.5458 2 12.2917 2 12.025C2 11.7583 2.05 11.5 2.15 11.25C2.25 11 2.39167 10.7833 2.575 10.6L10.6 2.575C10.8 2.375 11.0208 2.22917 11.2625 2.1375C11.5042 2.04583 11.7583 2 12.025 2C12.2917 2 12.55 2.04583 12.8 2.1375C13.05 2.22917 13.2667 2.375 13.45 2.575L21.475 10.6C21.675 10.7833 21.8208 11 21.9125 11.25C22.0042 11.5 22.05 11.7583 22.05 12.025C22.05 12.2917 22.0042 12.5458 21.9125 12.7875C21.8208 13.0292 21.675 13.25 21.475 13.45L13.45 21.475C13.2667 21.6583 13.05 21.8 12.8 21.9C12.55 22 12.2917 22.05 12.025 22.05ZM11.025 13.025H13.025V7.025H11.025V13.025ZM12.025 16.025C12.3083 16.025 12.5458 15.9292 12.7375 15.7375C12.9292 15.5458 13.025 15.3083 13.025 15.025C13.025 14.7417 12.9292 14.5042 12.7375 14.3125C12.5458 14.1208 12.3083 14.025 12.025 14.025C11.7417 14.025 11.5042 14.1208 11.3125 14.3125C11.1208 14.5042 11.025 14.7417 11.025 15.025C11.025 15.3083 11.1208 15.5458 11.3125 15.7375C11.5042 15.9292 11.7417 16.025 12.025 16.025Z",fill:"currentColor"},null,-1)),Qt=t.defineComponent({__name:"WarningIcon",props:{title:{type:String,required:!1,default:""},color:{type:String,required:!1,default:"currentColor"},display:{type:String,required:!1,default:"block"},decorative:{type:Boolean,required:!1,default:!1},size:{type:[Number,String],required:!1,default:S,validator:e=>{if(typeof e=="number"&&e>0)return!0;if(typeof e=="string"){const r=String(e).replace(/px/gi,""),i=Number(r);if(i&&!isNaN(i)&&Number.isInteger(i)&&i>0)return!0}return!1}},as:{type:String,required:!1,default:"span"}},setup(e){const r=e,i=t.computed(()=>{if(typeof r.size=="number"&&r.size>0)return`${r.size}px`;if(typeof r.size=="string"){const a=String(r.size).replace(/px/gi,""),n=Number(a);if(n&&!isNaN(n)&&Number.isInteger(n)&&n>0)return`${n}px`}return S}),o=t.computed(()=>({boxSizing:"border-box",color:r.color,display:r.display,height:i.value,lineHeight:"0",width:i.value}));return(a,n)=>(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.as),{"aria-hidden":e.decorative?"true":void 0,class:"kui-icon warning-icon","data-testid":"kui-icon-wrapper-warning-icon",style:t.normalizeStyle(o.value)},{default:t.withCtx(()=>[(t.openBlock(),t.createElementBlock("svg",{"aria-hidden":e.decorative?"true":void 0,"data-testid":"kui-icon-svg-warning-icon",fill:"none",height:"100%",role:"img",viewBox:"0 0 24 24",width:"100%",xmlns:"http://www.w3.org/2000/svg"},[e.title?(t.openBlock(),t.createElementBlock("title",Xt,t.toDisplayString(e.title),1)):t.createCommentVNode("",!0),Ut],8,Yt))]),_:1},8,["aria-hidden","style"]))}}),fe=_(Qt,[["__scopeId","data-v-d7b122fd"]]),Y=2,me=Y+2,Wt=(e,r,i=!1)=>{let o=!r||Number(e.toFixed(me))===0?0:Number(e.toFixed(me))>0?1:-1;return i&&(o*=-1),o},Jt=(e,r,i)=>r?`${Math.abs(e*100).toFixed(Y)}%`:i,er=(e,r)=>r===0?0:e/r-1,tr=(e,r=!1)=>(r&&(e*=-1),e>0?qt:e<0?Rt:pe),rr="#ad000e",X="#6c7489",ge="#52596e",ir="#007d60",F="16px",nr="20px",ar="14px",or="24px",lr="48px";var R=(e=>(e.GENERIC_COUNT="GenericCount",e.TRAFFIC="Traffic",e.ERROR_RATE="ErrorRate",e.LATENCY="Latency",e))(R||{});const sr={class:"metricscard"},dr={key:0,class:"metricscard-description"},cr={key:0,class:"metricscard-error"},ur={key:2,class:"metricscard-trend"},pr={"data-testid":"metric-trend-change"},fr={key:0,class:"metricscard-trend-range"},mr=t.defineComponent({__name:"MetricsCard",props:{cardType:{type:String,required:!0,default:R.GENERIC_COUNT},title:{type:String,default:"0%",required:!0},description:{type:String,default:"",required:!1},tooltip:{type:String,required:!1,default:""},timeframe:{type:String,required:!1,default:""},metricValue:{type:String,default:""},metricChange:{type:String,required:!0},changePolarity:{type:Number,required:!0},trendIcon:{type:Object,default:pe},trendRange:{type:String,default:""},hasError:{type:Boolean,default:!1},errorMessage:{type:String,default:"Vitals data error"},cardSize:{type:String,required:!1,default:()=>"lg"},titleTag:{type:String,default:"span"}},setup(e){const r=new Map([[R.GENERIC_COUNT,Ft],[R.TRAFFIC,Je],[R.ERROR_RATE,jt],[R.LATENCY,kt]]),i=e,o=l=>{const s={red:`var(--kong-ui-metric-card-trend-negative, ${rr})`,green:`var(--kong-ui-metric-card-trend-positive, ${ir})`,grey:`var(--kong-ui-metric-card-trend-neutral, ${ge})`};return l>0?s.green:l<0?s.red:s.grey},a=l=>l>0?"positive":l<0?"negative":"neutral",n=[E.Medium,E.Large,E.LargeCompact].includes(i.cardSize),d=i.cardSize===E.ExtraLarge?lr:n?or:ar,p=t.computed(()=>i.cardSize===E.LargeCompact),f=[E.Small,E.LargeCompact].includes(i.cardSize);return(l,s)=>{const c=t.resolveComponent("KTooltip");return t.openBlock(),t.createElementBlock("div",sr,[t.createElementVNode("div",{class:t.normalizeClass(["metricscard-title",e.cardSize])},[t.unref(f)?t.createCommentVNode("",!0):(t.openBlock(),t.createBlock(t.resolveDynamicComponent(t.unref(r).get(e.cardType)),{key:0,class:"metricscard-icon",color:t.unref(X),size:t.unref(F)},null,8,["color","size"])),(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.titleTag),null,{default:t.withCtx(()=>[t.createTextVNode(t.toDisplayString(e.title),1)]),_:1})),e.tooltip?(t.openBlock(),t.createBlock(c,{key:1,class:"metricscard-tooltip",placement:"right",text:e.tooltip},{default:t.withCtx(()=>[t.createVNode(t.unref(yt),{color:t.unref(X),size:t.unref(F)},null,8,["color","size"])]),_:1},8,["text"])):t.createCommentVNode("",!0)],2),e.description&&t.unref(n)&&!p.value?(t.openBlock(),t.createElementBlock("div",dr,[t.createElementVNode("span",null,t.toDisplayString(e.description),1)])):t.createCommentVNode("",!0),t.createElementVNode("div",{class:t.normalizeClass(["metricscard-valuetrend",{"is-compact":p.value}])},[e.hasError?(t.openBlock(),t.createElementBlock("div",cr,[t.createVNode(t.unref(fe),{color:t.unref(X),size:t.unref(nr)},null,8,["color","size"]),t.createElementVNode("div",null," "+t.toDisplayString(e.errorMessage),1)])):(t.openBlock(),t.createElementBlock("div",{key:1,class:t.normalizeClass(["metricscard-value",e.cardSize]),"data-testid":"metric-value",style:t.normalizeStyle(`font-size:${t.unref(d)}`)},t.toDisplayString(e.metricValue),7)),t.unref(n)?(t.openBlock(),t.createElementBlock("div",ur,[t.createElementVNode("div",{class:t.normalizeClass(["metricscard-trend-change",a(e.changePolarity)]),"data-testid":"metric-trend-parent"},[e.changePolarity!==0?(t.openBlock(),t.createBlock(t.resolveDynamicComponent(e.trendIcon),{key:0,color:o(e.changePolarity),size:t.unref(F)},null,8,["color","size"])):(t.openBlock(),t.createBlock(t.unref(at),{key:1,color:t.unref(ge),size:t.unref(F)},null,8,["color","size"])),t.createElementVNode("div",pr,t.toDisplayString(e.metricChange),1)],2),e.trendRange&&e.cardSize!==t.unref(E).LargeCompact?(t.openBlock(),t.createElementBlock("div",fr,t.toDisplayString(e.trendRange),1)):t.createCommentVNode("",!0)])):t.createCommentVNode("",!0)],2)])}}}),U=(e,r)=>{const i=e.__vccOpts||e;for(const[o,a]of r)i[o]=a;return i},gr=U(mr,[["__scopeId","data-v-b64f16bb"]]),yr={},hr={class:"loading-tabs"};function Cr(e,r){const i=t.resolveComponent("KSkeletonBox");return t.openBlock(),t.createElementBlock("div",hr,[t.createVNode(i,{width:"100"}),t.createVNode(i,{width:"75"})])}const vr=U(yr,[["render",Cr],["__scopeId","data-v-f7eb9c40"]]),Sr={key:0,class:"error-display"},br={key:0,class:"error-display-message"},kr=t.defineComponent({__name:"MetricCardContainer",props:{fallbackDisplayText:{type:String,required:!0},cards:{type:Array,required:!0},errorMessage:{type:String,required:!1,default:""},loading:{type:Boolean,required:!1,default:!1},hasTrendAccess:{type:Boolean,required:!1,default:!0},cardSize:{type:String,required:!1,default:()=>E.Large}},setup(e){const r=e,i=t.computed(()=>r.cards.every(a=>(a==null?void 0:a.hasError)===!0)),o=a=>{const n=er(a.currentValue,a.previousValue)||0,d=Wt(n,r.hasTrendAccess,a.increaseIsBad);return{metricValue:a.formatValueFn?a.formatValueFn(a.currentValue):Ge(a.currentValue,{capital:!0,round:!0})||"0",metricChange:a.formatChangeFn?a.formatChangeFn(n):Jt(n,r.hasTrendAccess,r.fallbackDisplayText),changePolarity:d,trendIcon:tr(d,a.increaseIsBad),cardSize:r.cardSize}};return(a,n)=>(t.openBlock(),t.createElementBlock("div",{class:t.normalizeClass(["kong-ui-public-metric-card-container",e.cardSize])},[i.value?(t.openBlock(),t.createElementBlock("div",Sr,[t.createVNode(t.unref(fe),{class:"error-display-icon"}),e.errorMessage?(t.openBlock(),t.createElementBlock("div",br,t.toDisplayString(e.errorMessage),1)):t.createCommentVNode("",!0)])):(t.openBlock(!0),t.createElementBlock(t.Fragment,{key:1},t.renderList(e.cards,(d,p)=>(t.openBlock(),t.createElementBlock(t.Fragment,null,[e.loading?(t.openBlock(),t.createBlock(vr,{key:`skeleton-${p}`,class:t.normalizeClass(e.cardSize===t.unref(E).Small?"loading-tabs-small":"loading-tabs-large")},null,8,["class"])):(t.openBlock(),t.createBlock(gr,t.mergeProps({key:p},o(d),{"card-size":e.cardSize,"card-type":d.cardType,description:d.description,"error-message":e.errorMessage,"has-error":d.hasError,title:d.title,"title-tag":d.titleTag,tooltip:d.tooltip,"trend-range":d.trendRange}),null,16,["card-size","card-type","description","error-message","has-error","title","title-tag","tooltip","trend-range"]))],64))),256))],2))}}),wr=U(kr,[["__scopeId","data-v-081c6557"]]),Er=t.defineComponent({__name:"MetricsConsumer",props:{lookupKey:{default:void 0},cardSize:{default:E.Large},cardToDisplay:{default:void 0}},setup(e){const r=e,i=t.inject(ce);if(!i)throw new Error("MetricsConsumer must be nested inside a MetricsProvider instance.");const{traffic:o,latency:a}=i.data,{i18n:n}=B.useI18n(),d=B.useMetricCardBuilder({cardType:R.TRAFFIC,title:t.computed(()=>i.longCardTitles?n.t("metricCard.long.traffic"):n.t("metricCard.short.traffic")),description:i.description,record:o.mapped,hasError:o.hasError,lookupKey:r.lookupKey,sumGroupedValues:L,trendRange:o.trendRange}),p=g=>`${g.toFixed(Y)}%`,f=t.computed(()=>{const g=o.mapped.value,y=q(g,"current",r.lookupKey,ie),k=q(g,"current",r.lookupKey,L),v=y/k*100||0,h=q(g,"previous",r.lookupKey,ie),T=q(g,"previous",r.lookupKey,L),b=h/T*100||0;return{cardType:R.ERROR_RATE,hasError:o.hasError.value,currentValue:v,previousValue:b,formatValueFn:p,title:i.longCardTitles?n.t("metricCard.long.errorRate"):n.t("metricCard.short.errorRate"),description:i.description,increaseIsBad:!0,trendRange:o.trendRange.value}}),l=g=>`${g}ms`,s=B.useMetricCardBuilder({cardType:R.LATENCY,title:t.computed(()=>i.longCardTitles?n.t("metricCard.long.latency"):n.t("metricCard.short.latency")),description:i.description,hasError:a.hasError,record:a.mapped,lookupKey:r.lookupKey,increaseIsBad:!0,formatValueFn:l,trendRange:a.trendRange}),c=t.computed(()=>r.cardToDisplay==="TRAFFIC"?[d.value]:r.cardToDisplay==="ERROR_RATE"?[f.value]:r.cardToDisplay==="LATENCY"?[s.value]:[d.value,f.value,s.value]),u=t.computed(()=>r.cardToDisplay==="TRAFFIC"||r.cardToDisplay==="ERROR_RATE"?o.isLoading.value:r.cardToDisplay==="LATENCY"?a.isLoading.value:o.isLoading.value||a.isLoading.value),m=t.computed(()=>({cards:c.value,loading:u.value,hasTrendAccess:i.hasTrendAccess.value,fallbackDisplayText:n.t("general.notAvailable"),cardSize:r.cardSize,hideTitle:!0})),C=t.computed(()=>({loading:m.value.loading,trafficCard:d.value,errorRateCard:f.value,latencyCard:s.value,errorRateFormatted:p(f.value.currentValue),latencyFormatted:l(s.value.currentValue)}));return(g,y)=>t.renderSlot(g.$slots,"default",{cardValues:C.value},()=>[t.createVNode(t.unref(wr),t.normalizeProps(t.guardReactiveProps(m.value)),null,16)])}}),H=e=>new Date(e),Nr=(e,r)=>{const i=e.body;e.reply({statusCode:200,body:he(i,r)})},ye=e=>e.reduce((r,i)=>(r[i]={name:i},r),{}),he=(e,r)=>{var C,g;const i=N.TimePeriods.get(N.TimeframeKeys.ONE_DAY),o=e.granularity==="trend"?new N.DeltaQueryTime(i):new N.UnaryQueryTime(i),a=o.endMs(),n=o.startMs(),d=o.granularityMs(),p=e.granularity==="trend"?2:1;if((e.dimensions??[]).length>2)throw new Error(`Explore only supports 0-2 dimensions; got: ${JSON.stringify(e.dimensions)}`);const f=(e.dimensions??[]).find(y=>y!=="time"),l=(r==null?void 0:r.dimensionNames)??[],s=Math.max(l.length,1),c=e.metrics||[],u=[];for(let y=0;y<p;y++)for(let k=0;k<s;k++){const v=f?{[f]:l[k]}:{};(C=e.dimensions)!=null&&C.includes("status_code_grouped")?L.forEach(h=>{const T=c.reduce((b,V)=>(b[V]=(p-y)*1e3+100*k+1,b),{...v,status_code_grouped:h});u.push({version:"v1",timestamp:y===0?H(n).toISOString():H(n+d).toISOString(),event:T})}):u.push({version:"v1",timestamp:y===0?H(n).toISOString():H(n+d).toISOString(),event:c.reduce((h,T)=>(h[T]=(p-y)*1e3+100*k+1,h),{...v})})}const m={start_ms:n,end_ms:a,granularity_ms:d,display:f?{[f]:ye(l),...(g=e.dimensions)!=null&&g.includes("status_code_grouped")?{status_code_grouped:ye(L)}:{}}:{},metric_names:e.metrics,query_id:"test"};return{data:u,meta:m}};w.MetricsConsumer=Er,w.MetricsProviderInternal=Ke,w.mockExploreResponse=he,w.mockExploreResponseFromCypress=Nr,Object.defineProperty(w,Symbol.toStringTag,{value:"Module"})});
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kong-ui-public/analytics-metric-provider",
3
- "version": "5.0.4",
3
+ "version": "5.0.5",
4
4
  "type": "module",
5
5
  "main": "./dist/vitals-metric-provider.umd.js",
6
6
  "module": "./dist/vitals-metric-provider.es.js",
@@ -35,20 +35,20 @@
35
35
  "@kong-ui-public/core": "1.1.0",
36
36
  "axios": "^1.6.7",
37
37
  "swrv": "^1.0.4",
38
- "@kong-ui-public/metric-cards": "^0.6.46"
38
+ "@kong-ui-public/metric-cards": "^0.6.47"
39
39
  },
40
40
  "peerDependencies": {
41
41
  "@kong/kongponents": "9.0.0-alpha.113",
42
- "@kong-ui-public/analytics-config-store": "^0.3.1",
43
42
  "@kong-ui-public/analytics-utilities": "^2.0.1",
44
- "@kong-ui-public/i18n": "^2.1.4"
43
+ "@kong-ui-public/i18n": "^2.1.4",
44
+ "@kong-ui-public/analytics-config-store": "^0.3.1"
45
45
  },
46
46
  "devDependencies": {
47
47
  "@kong/kongponents": "9.0.0-alpha.117",
48
48
  "pinia": ">= 2.1.7 < 3",
49
49
  "@kong-ui-public/analytics-config-store": "^0.3.1",
50
- "@kong-ui-public/i18n": "^2.1.4",
51
- "@kong-ui-public/analytics-utilities": "^2.0.1"
50
+ "@kong-ui-public/analytics-utilities": "^2.0.1",
51
+ "@kong-ui-public/i18n": "^2.1.4"
52
52
  },
53
53
  "scripts": {
54
54
  "dev": "cross-env USE_SANDBOX=true vite",