waveform-analysis 0.1.73 → 0.1.75
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/README.md +256 -46
- package/dist/assets/workerRuntime-BJiRmIZD.js +2446 -0
- package/dist/index.cjs +1 -2
- package/dist/index.js +1 -7115
- package/dist/style.css +1 -1
- package/dist/types/animation/WaveformAnimationController.d.ts +30 -0
- package/dist/types/animation/core/Animation.d.ts +13 -0
- package/dist/types/animation/core/Animator.d.ts +23 -0
- package/dist/types/animation/core/easing.d.ts +3 -0
- package/dist/types/animation/core/errors.d.ts +4 -0
- package/dist/types/animation/core/handle.d.ts +7 -0
- package/dist/types/animation/core/owner.d.ts +3 -0
- package/dist/types/animation/core/propertyGroups.d.ts +17 -0
- package/dist/types/animation/core/task.d.ts +29 -0
- package/dist/types/animation/core/types.d.ts +74 -0
- package/dist/types/animation/core/validation.d.ts +30 -0
- package/dist/types/animation/core/values.d.ts +8 -0
- package/dist/types/animation/presets/annotation.d.ts +4 -0
- package/dist/types/animation/presets/lineDrawing.d.ts +7 -0
- package/dist/types/animation/presets/shared.d.ts +14 -0
- package/dist/types/animation/presets/transitions.d.ts +4 -0
- package/dist/types/animation/types.d.ts +84 -0
- package/dist/types/components/WaveformChart.vue.d.ts +3 -2
- package/dist/types/components/animation/annotationPresentation.d.ts +17 -0
- package/dist/types/components/animation/chartExportVersion.d.ts +2 -0
- package/dist/types/components/animation/config.d.ts +31 -0
- package/dist/types/components/animation/context.d.ts +20 -0
- package/dist/types/components/animation/geometry.d.ts +10 -0
- package/dist/types/components/animation/paginationPresentation.d.ts +13 -0
- package/dist/types/components/animation/pathBuffer.d.ts +4 -0
- package/dist/types/components/animation/trackPresentation.d.ts +35 -0
- package/dist/types/components/animation/useWaveformAnimations.d.ts +27 -0
- package/dist/types/components/annotation/WaveformAnnotationContextMenu.vue.d.ts +2 -2
- package/dist/types/components/annotation/types.d.ts +7 -0
- package/dist/types/components/controls/useChartImageExport.d.ts +2 -0
- package/dist/types/components/core/layout.d.ts +2 -1
- package/dist/types/components/core/types.d.ts +8 -0
- package/dist/types/components/core/useWaveformChartController.d.ts +25 -0
- package/dist/types/components/core/useWaveformRenderSampling.d.ts +2 -0
- package/dist/types/components/core/waveformChartTypes.d.ts +2 -1
- package/dist/types/components/core/yAxisTitleLayout.d.ts +1 -1
- package/dist/types/components/interaction/useExtremaTickViewport.d.ts +1 -1
- package/dist/types/components/rendering/WaveformSeriesLayer.vue.d.ts +1 -0
- package/dist/types/components/rendering/WaveformTrack.vue.d.ts +4 -3
- package/dist/types/components/rendering/updateAxis.d.ts +5 -0
- package/dist/types/components/rendering/updateGrid.d.ts +3 -0
- package/dist/types/components/rendering/yAxisTickVisibility.d.ts +2 -0
- package/dist/types/components/utils/assignElement.d.ts +2 -0
- package/dist/types/demo/types.d.ts +2 -1
- package/dist/types/index.d.ts +9 -0
- package/dist/types/types/chart.d.ts +4 -2
- package/dist/types/views/AnimationDemo.vue.d.ts +3 -0
- package/package.json +5 -2
- package/src/App.vue +6 -3
- package/src/DemoRouterApp.vue +1 -0
- package/src/animation/WaveformAnimationController.ts +328 -0
- package/src/animation/core/Animation.ts +37 -0
- package/src/animation/core/Animator.ts +200 -0
- package/src/animation/core/easing.ts +74 -0
- package/src/animation/core/errors.ts +24 -0
- package/src/animation/core/handle.ts +34 -0
- package/src/animation/core/owner.ts +9 -0
- package/src/animation/core/propertyGroups.ts +143 -0
- package/src/animation/core/task.ts +153 -0
- package/src/animation/core/types.ts +81 -0
- package/src/animation/core/validation.ts +173 -0
- package/src/animation/core/values.ts +38 -0
- package/src/animation/presets/annotation.ts +66 -0
- package/src/animation/presets/lineDrawing.ts +51 -0
- package/src/animation/presets/shared.ts +58 -0
- package/src/animation/presets/transitions.ts +77 -0
- package/src/animation/types.ts +81 -0
- package/src/components/WaveformChart.vue +1 -0
- package/src/components/WaveformChartView.vue +13 -4
- package/src/components/animation/annotationPresentation.ts +145 -0
- package/src/components/animation/chartExportVersion.ts +5 -0
- package/src/components/animation/config.ts +87 -0
- package/src/components/animation/context.ts +56 -0
- package/src/components/animation/geometry.ts +148 -0
- package/src/components/animation/paginationPresentation.ts +114 -0
- package/src/components/animation/pathBuffer.ts +61 -0
- package/src/components/animation/trackPresentation.ts +172 -0
- package/src/components/animation/useWaveformAnimations.ts +420 -0
- package/src/components/annotation/WaveformAnnotationLayer.vue +43 -30
- package/src/components/annotation/types.ts +3 -0
- package/src/components/controls/useChartImageExport.ts +4 -0
- package/src/components/core/layout.ts +36 -22
- package/src/components/core/trackLayoutBuilder.ts +17 -23
- package/src/components/core/types.ts +4 -0
- package/src/components/core/useWaveformChartController.ts +24 -20
- package/src/components/core/useWaveformLayout.ts +3 -1
- package/src/components/core/useWaveformRenderSampling.ts +23 -1
- package/src/components/core/waveformChartTypes.ts +2 -1
- package/src/components/core/yAxisLayoutMetrics.ts +24 -16
- package/src/components/core/yAxisPadding.ts +10 -5
- package/src/components/core/yAxisTitleLayout.ts +9 -48
- package/src/components/interaction/useExtremaTickViewport.ts +1 -1
- package/src/components/rendering/WaveformSeriesLayer.vue +13 -1
- package/src/components/rendering/WaveformTrack.vue +6 -1
- package/src/components/rendering/WaveformTrackAxes.vue +64 -51
- package/src/components/rendering/WaveformTrackBackdrop.vue +35 -49
- package/src/components/rendering/updateAxis.ts +57 -0
- package/src/components/rendering/updateGrid.ts +42 -0
- package/src/components/rendering/yAxisTickVisibility.ts +45 -18
- package/src/components/utils/assignElement.ts +7 -0
- package/src/demo/DemoYAxisPaddingControls.vue +11 -3
- package/src/demo/types.ts +2 -1
- package/src/index.ts +53 -1
- package/src/router.ts +1 -0
- package/src/types/chart.ts +4 -2
- package/src/views/AnimationDemo.vue +129 -0
- package/dist/assets/workerRuntime-5p-EI-GL.js +0 -1
package/dist/index.cjs
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
|
-
Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});let e=require("vue"),t=require("d3"),n=require("ant-design-vue");function r(e){return Object.fromEntries([`annotations`,`annotationsVisible`,`title`,`axes`,`frameStyle`,`frameNumber`,`frameNumbers`,`legend`,`cleanView`,`rendering`,`displayMode`,`overlayMode`,`initialXDomain`,`initialXDomains`,`yDomain`,`yDomains`,`grid`,`plotMargin`,`xLabel`,`yLabel`,`timeUnit`,`zeroLine`,`layoutPreset`,`unitDisplayMode`].map(t=>[t,e[t]]))}function i(e,t){if(e===!1)return 0;let n=t??(e===!0?.1:0);return Number.isFinite(n)&&n>0?n:0}function a(e,t,n){let r=typeof n==`number`?{upperPaddingRatio:n}:n;if(e.fixed)return o(e,r?.extremaTicksVisible);let a=i(r?.upperPaddingEnabled,r?.upperPaddingRatio),s=i(r?.lowerPaddingEnabled,r?.lowerPaddingRatio),[c,l]=e.domain,u=l-c,d=s>0?c-u*s:c,f=a>0?l+u*a:l;return o({...e,domain:t??[Number.isFinite(d)?d:c,Number.isFinite(f)?f:l]},r?.extremaTicksVisible)}function o(e,t=!0){let n=e.seriesList.flatMap(e=>Number.isFinite(e.rawYMaximum)?[e.rawYMaximum]:[]),r=e.seriesList.flatMap(e=>Number.isFinite(e.rawYMinimum)?[e.rawYMinimum]:[]);return{...e,maximumTick:t&&n.length?Math.max(...n):void 0,minimumTick:t&&r.length?Math.min(...r):void 0}}function s(e,t,n){return n!==void 0&&Number.isFinite(n)&&(e=[...e.filter(e=>!c(e,n)),n].sort((e,t)=>e-t)),t===void 0||!Number.isFinite(t)?e:[...e.filter(e=>!c(e,t)),t].sort((e,t)=>e-t)}function c(e,t){return Math.abs(e-t)<=2**-52*8*Math.max(Math.abs(e),Math.abs(t),Number.MIN_VALUE)}function l(e){if(e.length===0)return[0,1];let[n=0,r=1]=(0,t.extent)(e);if(n!==r)return[n,r];let i=Math.abs(n)*.05||.5;return[n-i,r+i]}function u(e,t=5,n){let r=e;if(n&&e.length>=2){let t=e[0],n=e[1],i=e[e.length-1],a=e[e.length-2];r=[t-(n-t),...e,i+(i-a)]}let i=r.flatMap((e,n)=>{let i=r[n+1];if(i===void 0)return[];let a=(i-e)/t;return Array.from({length:t-1},(t,n)=>e+a*(n+1))});if(!n)return i;let a=Math.min(...n),o=Math.max(...n);return i.filter(e=>e>a&&e<o)}var d=.001,f=1e3,p=new Intl.NumberFormat(`zh-CN`,{maximumFractionDigits:4}),m=new Intl.NumberFormat(`zh-CN`,{maximumFractionDigits:4});function h(e,t){let n=e.toFixed(Math.max(0,t));return/^-0(?:\.0+)?$/.test(n)?n.slice(1):n}function g(e){let t=Math.abs(e);return Number.isFinite(t)&&(t>=f||t>0&&t<=d)}function _(e,t){if(typeof e!=`number`||typeof t!=`number`)return null;let n=Math.max(Math.abs(e),Math.abs(t));return g(n)?Math.floor(Math.log10(n)):null}function v(e){return`E${e>=0?`+`:`-`}${Math.abs(e).toString().padStart(2,`0`)}`}function y(e){if(Object.is(e,-0))return`0`;let t=e===0?0:Number(e.toPrecision(5)),n=p.format(t);return n===`-0`?`0`:n}function b(e,t={}){if(!Number.isFinite(e))return String(e);let n=_(t.axisMin,t.axisMax),r=y(n===null?e:e/10**n);if(e!==(t.topTickValue??t.axisMax))return r;let i=t.unit?.trim(),a=n===null&&i?`(${i}) `:``;return`${n===null?``:`${v(n)} `}${a}${r}`}function x(e,t){let n=_(e,t);return n===null?null:v(n)}function S(e){return Number.isFinite(e)?Object.is(e,-0)?`0`:m.format(e):String(e)}function C(e){if(!Number.isFinite(e))return String(e);if(Object.is(e,-0))return`0`;let[t,n]=e.toExponential().split(`e`),r=Number(n),i=t.startsWith(`-`),a=t.replace(`-`,``).replace(`.`,``),o=r+1,s;return s=o<=0?`0.${`0`.repeat(Math.abs(o))}${a}`:o>=a.length?`${a}${`0`.repeat(o-a.length)}`:`${a.slice(0,o)}.${a.slice(o)}`,`${i?`-`:``}${s}`}function w(e,t){return t===`ms`?e*1e3:e}function T(e,t,n,r,i){let a=w(e,n);return i?i(a,{kind:r,rawValue:e,timeUnit:n,domain:[t[0],t[1]],displayDomain:[w(t[0],n),w(t[1],n)]}):C(a)}function E(e,t,n){return T(e,t,n,`end`)}function D(e,t,n){return T(e,n??[e,e],t,`tick`)}function O(e,t){return S(w(e,t))}function k(e,t){return Number.isFinite(e)?h(w(e,t),3):String(e)}function A(e,t,n){if(e<=0)return{gap:0,axisBand:0,height:0};let r=t===`compact`?0:t===`separated`?16:14,i=t===`independent`?30:0,a=(e-1)*(r+i),o=n*.45,s=a>o?o/a:1,c=r*s,l=i*s;return{gap:c,axisBand:l,height:Math.max(1,(n-(e-1)*(c+l))/e)}}function j(e,t,n){return Math.min(Math.max(e,t),n)}var M={top:18,right:24,bottom:52,left:48},N={DEFAULT_MAX_SCALE:40,MIN_SCALE:1},P=.62,F=1.2,I=`#0960bd.#ff7f0e.#2ca02c.#d62728.#9467bd.#8c564b.#e377c2.#7f7f7f.#bcbd22.#17becf.#005f73.#0a9396.#ae2012.#bb3e03.#ca6702.#ee9b00.#9b2226.#3a0ca3.#4361ee.#4895ef.#560bad.#7209b7.#b5179e.#f72585.#006d77.#2f3e46.#354f52.#52796f.#800f2f.#31572c`.split(`.`),L={WIDTH:1.5,CAP_WIDTH:8},R={COLOR:`#ff0000`,WIDTH:1,DASH:`6 4`,OPACITY:.5,BOUNDARY_THRESHOLD:.02};function z(e){if(!(!e||!Number.isFinite(e[0])||!Number.isFinite(e[1])||e[0]===e[1]))return e[0]<e[1]?[e[0],e[1]]:[e[1],e[0]]}function B(e,t){return z(t?.[e.id])}function V(e,t,n){return z(n?.[e.id])??z(t)}function ee(e,t,n){return!!(B(e,n)||e.visibleSeries.some(e=>V(e,t,n)))}function H(e){return[Math.min(...e.map(e=>e[0])),Math.max(...e.map(e=>e[1]))]}function U(e,t){if(e===0)return 0;let n=Math.floor(Math.log10(Math.abs(e))),r=Math.abs(e)/10**n,i;return i=t?r<1.5?1:r<3?2:r<7?5:10:r<=1?1:r<=2?2:r<=5?5:10,i*10**n*Math.sign(e)}function te(e,t,n=5){if(!Number.isFinite(e)||!Number.isFinite(t))return{niceMin:0,niceMax:1,tickSpacing:1,ticks:[0,1]};if(e===t){if(e===0)return{niceMin:-1,niceMax:1,tickSpacing:.5,ticks:[-1,-.5,0,.5,1]};let t=e,n=Math.abs(t)*.2;return{niceMin:t-n,niceMax:t+n,tickSpacing:n,ticks:[t-n,t,t+n]}}e>t&&([e,t]=[t,e]);let r=U((t-e)/Math.max(1,n-1),!0),i=Math.floor(e/r)*r,a=Math.ceil(t/r)*r,o=[],s=Math.round((a-i)/r)+1;if(s>100){let r=Math.min(n+2,10),i=(t-e)/(r-1);for(let t=0;t<r;t++)o.push(e+i*t);return{niceMin:e,niceMax:t,tickSpacing:i,ticks:o}}for(let e=0;e<s;e++){let t=i+r*e,n=Math.max(0,-Math.floor(Math.log10(Math.abs(r)))+1),a=Number(t.toFixed(n));o.push(a)}return{niceMin:Math.min(e,o[0]??i),niceMax:Math.max(t,o.at(-1)??a),tickSpacing:r,ticks:o}}function ne(e,t=5){let n=te(e[0],e[1],t);return{domain:[n.niceMin,n.niceMax],values:n.ticks}}function W(e){let t=e?.fontSize;return typeof t==`number`&&Number.isFinite(t)&&t>0?t:12}function G(e){return W(e)+8}function re(e,t,n,r){let i=0,a=e;for(;i<a;){let e=i+Math.floor((a-i)/2);(r?t(e)<=n:t(e)<n)?i=e+1:a=e}return i}function ie(e,t,n,r){let i=e=>n+(r?.[e]??e)/t,a=t=>t<0||t>=e.length?void 0:{x:i(t),y:e[t]};return{isCompact:!0,length:e.length,pointAt:a,pointsInRange(t=0,n=e.length){let r=Math.max(0,Math.min(e.length,Math.floor(t))),i=Math.max(r,Math.min(e.length,Math.ceil(n)));return Array.from({length:i-r},(e,t)=>a(r+t)).filter(e=>e!==void 0)},visibleRange(t){let n=Math.min(t[0],t[1]),r=Math.max(t[0],t[1]);return{start:re(e.length,i,n,!1),end:re(e.length,i,r,!0)}},nearestPoint(t){if(!Number.isFinite(t)||!e.length)return;if(t<=i(0))return a(0);if(t>=i(e.length-1))return a(e.length-1);let n=re(e.length,i,t,!1),r=Math.max(0,n-1);return Math.abs(t-i(r))<Math.abs(i(n)-t)?a(r):a(n)},metrics(){let t=1/0,n=-1/0;for(let r of e)t=Math.min(t,r),n=Math.max(n,r);return{xMinimum:e.length?i(0):1/0,xMaximum:e.length?i(e.length-1):-1/0,yMinimum:t,yMaximum:n,hasErrorPoints:!1}},toWorkerDataset(){return{kind:`samples`,values:e.slice(),sampleRate:t,startTime:n,...r?{sourceIndexes:r.slice()}:{}}}}}function K(e){return typeof e==`number`&&Number.isFinite(e)&&e>=0?e:void 0}function ae(e,t,n){let r=Math.max(0,Math.min(n,Math.floor(e)));return{start:r,end:Math.max(r,Math.min(n,Math.floor(t)))}}function oe(e,t,n){let r=0,i=e;for(;r<i;){let e=r+Math.floor((i-r)/2);t(e)<n?r=e+1:i=e}return r}function se(e,t,n){let r=0,i=e;for(;r<i;){let e=r+Math.floor((i-r)/2);t(e)<=n?r=e+1:i=e}return r}function ce(e,t,n){let r=1/0,i=-1/0,a=1/0,o=-1/0,s=!1;for(let c=0;c<e;c+=1){let e=t(c);if(!e||(r=Math.min(r,e.x),i=Math.max(i,e.x),a=Math.min(a,e.y),o=Math.max(o,e.y),!n))continue;let l=K(e.lowerError)??K(e.error)??0,u=K(e.upperError)??K(e.error)??0;s||=l!==0||u!==0,a=Math.min(a,e.y-l),o=Math.max(o,e.y+u)}return{xMinimum:r,xMaximum:i,yMinimum:a,yMaximum:o,hasErrorPoints:s}}var le=class{sourcePoints;isCompact=!1;constructor(e){this.sourcePoints=e}get length(){return this.sourcePoints.length}pointAt(e){return this.sourcePoints[e]}pointsInRange(e=0,t=this.length){let n=ae(e,t,this.length);return this.sourcePoints.slice(n.start,n.end)}visibleRange(e){let t=Math.min(e[0],e[1]),n=Math.max(e[0],e[1]);return{start:oe(this.length,e=>this.sourcePoints[e].x,t),end:se(this.length,e=>this.sourcePoints[e].x,n)}}nearestPoint(e){if(!Number.isFinite(e)||!this.length)return;let t=this.sourcePoints[0],n=this.sourcePoints[this.length-1];if(e<=t.x)return t;if(e>=n.x)return n;let r=oe(this.length,e=>this.sourcePoints[e].x,e),i=this.sourcePoints[Math.min(r,this.length-1)],a=this.sourcePoints[Math.max(0,r-1)];return Math.abs(e-a.x)<Math.abs(i.x-e)?a:i}metrics(e=!1){return ce(this.length,e=>this.sourcePoints[e],e)}toWorkerDataset(){return{kind:`points`,points:this.sourcePoints}}},ue=class{x;y;error;lowerError;upperError;isCompact=!0;constructor(e,t,n,r,i){this.x=e,this.y=t,this.error=n,this.lowerError=r,this.upperError=i}get length(){return this.x.length}pointAt(e){if(e<0||e>=this.length)return;let t=K(this.error?.[e]),n=K(this.lowerError?.[e]),r=K(this.upperError?.[e]);return{x:this.x[e],y:this.y[e],...t===void 0?{}:{error:t},...n===void 0?{}:{lowerError:n},...r===void 0?{}:{upperError:r}}}pointsInRange(e=0,t=this.length){let n=ae(e,t,this.length),r=[];for(let e=n.start;e<n.end;e+=1)r.push(this.pointAt(e));return r}visibleRange(e){let t=Math.min(e[0],e[1]),n=Math.max(e[0],e[1]);return{start:oe(this.length,e=>this.x[e],t),end:se(this.length,e=>this.x[e],n)}}nearestPoint(e){if(!Number.isFinite(e)||!this.length)return;if(e<=this.x[0])return this.pointAt(0);if(e>=this.x[this.length-1])return this.pointAt(this.length-1);let t=oe(this.length,e=>this.x[e],e),n=Math.min(t,this.length-1),r=Math.max(0,t-1);return Math.abs(e-this.x[r])<Math.abs(this.x[n]-e)?this.pointAt(r):this.pointAt(n)}metrics(e=!1){let t=1/0,n=-1/0,r=1/0,i=-1/0,a=!1;for(let o=0;o<this.length;o+=1){let s=this.x[o],c=this.y[o];if(t=Math.min(t,s),n=Math.max(n,s),r=Math.min(r,c),i=Math.max(i,c),!e)continue;let l=K(this.lowerError?.[o])??K(this.error?.[o])??0,u=K(this.upperError?.[o])??K(this.error?.[o])??0;a||=l!==0||u!==0,r=Math.min(r,c-l),i=Math.max(i,c+u)}return{xMinimum:t,xMaximum:n,yMinimum:r,yMaximum:i,hasErrorPoints:a}}toWorkerDataset(){return{kind:`typed`,x:this.x.slice(),y:this.y.slice()}}};function de(e){return e instanceof Float32Array||e instanceof Float64Array}function fe(e){let t=[e.y,e.error,e.lowerError,e.upperError];return e.x instanceof Float64Array&&t.every(t=>t===void 0||de(t)&&t.length===e.x.length)}function pe(e){if(!de(e.values)||!Number.isFinite(e.sampleRate)||e.sampleRate<=0||e.startTime!==void 0&&!Number.isFinite(e.startTime))return ie(new Float64Array,1,0);let t=e.startTime??0,n=0;for(let t=0;t<e.values.length;t+=1)n+=+!!Number.isFinite(e.values[t]);let r=e.values instanceof Float32Array?new Float32Array(n):new Float64Array(n),i=n===e.values.length?void 0:new Uint32Array(n);for(let t=0,n=0;t<e.values.length;t+=1){let a=e.values[t];Number.isFinite(a)&&(r[n]=a,i&&(i[n]=t),n+=1)}return ie(r,e.sampleRate,t,i)}function me(e){if(!fe(e))return new ue(new Float64Array,new Float64Array);let t=!0;for(let n=0;n<e.x.length;n+=1)if(!Number.isFinite(e.x[n])||!Number.isFinite(e.y[n])||n>0&&e.x[n]<e.x[n-1]){t=!1;break}if(t)return new ue(e.x.slice(),e.y.slice(),e.error?.slice(),e.lowerError?.slice(),e.upperError?.slice());let n=[],r=!0,i=-1/0;for(let t=0;t<e.x.length;t+=1){let a=e.x[t],o=e.y[t];!Number.isFinite(a)||!Number.isFinite(o)||(a<i&&(r=!1),i=a,n.push(t))}r||n.sort((t,n)=>e.x[t]-e.x[n]);let a=new Float64Array(n.length),o=e.y instanceof Float32Array?new Float32Array(n.length):new Float64Array(n.length),s=e=>e?e instanceof Float32Array?new Float32Array(n.length):new Float64Array(n.length):void 0,c=s(e.error),l=s(e.lowerError),u=s(e.upperError);return n.forEach((t,n)=>{a[n]=e.x[t],o[n]=e.y[t],c&&(c[n]=e.error[t]),l&&(l[n]=e.lowerError[t]),u&&(u[n]=e.upperError[t])}),new ue(a,o,c,l,u)}function he(e,t){return e.kind===`typed-samples`?pe(e):e.kind===`typed-points`?me(e):new le(t(e))}function q(e){return new le(e)}function ge(e){if(!e.isCompact)return e.pointsInRange();let t=new Map,n=n=>{let r=t.get(n);if(r)return r;let i=e.pointAt(n);return i&&(t.set(n,i),t.size>128&&t.delete(t.keys().next().value)),i};return new Proxy([],{get(t,r,i){return typeof r==`string`&&/^(0|[1-9]\d*)$/.test(r)?n(Number(r)):r===`length`?e.length:Reflect.get(t,r,i)},has(t,n){if(typeof n==`string`&&/^(0|[1-9]\d*)$/.test(n)){let t=Number(n);return t>=0&&t<e.length}return Reflect.has(t,n)},ownKeys(t){return[...Array.from({length:e.length},(e,t)=>String(t)),...Reflect.ownKeys(t).filter(e=>e===`length`||typeof e==`symbol`)]},getOwnPropertyDescriptor(t,r){if(typeof r==`string`&&/^(0|[1-9]\d*)$/.test(r)){let t=Number(r);if(t>=0&&t<e.length)return{configurable:!0,enumerable:!0,writable:!0,value:n(t)}}return Reflect.getOwnPropertyDescriptor(t,r)}})}function _e(e){return typeof e==`object`&&!!e&&`pointAt`in e&&`visibleRange`in e}function ve(e,t){return!t||e.start===e.end&&(e.start===0||e.end===t)?[]:[e.start>0?e.start-1:-1,e.end<t?e.end:-1].filter(e=>e>=0)}function ye(e,t,n,r){let i=ve(t,n);return[...i.filter(e=>e<t.start).map(r),...e,...i.filter(e=>e>=t.end).map(r)]}var be=L.WIDTH,xe=L.CAP_WIDTH;function Se(e){return e===`dashed`||e===`dash-dot`?e:`solid`}function Ce(e){return typeof e==`number`&&Number.isFinite(e)&&e>=0?e:void 0}function J(e){let t=Ce(e.error),n=Ce(e.lowerError),r=Ce(e.upperError);return{x:e.x,y:e.y,...t===void 0?{}:{error:t},...n===void 0?{}:{lowerError:n},...r===void 0?{}:{upperError:r}}}function we(e){return e instanceof Float32Array||e instanceof Float64Array}function Te(e,t,n){if(!Number.isFinite(t)||t<=0)return[];let r=Number.isFinite(n)?n??0:0,i=[];for(let n=0;n<e.length;n+=1){let a=e[n];Number.isFinite(a)&&i.push({x:r+n/t,y:a})}return i}function Ee(e){return!we(e.values)||!Number.isFinite(e.sampleRate)||e.sampleRate<=0||e.startTime!==void 0&&!Number.isFinite(e.startTime)?[]:Te(e.values,e.sampleRate,e.startTime)}function De(e){if(!(e.x instanceof Float64Array)||!we(e.y))return!1;let t=e.x.length;return[e.error,e.lowerError,e.upperError].every(e=>e===void 0||we(e)&&e.length===t)&&e.y.length===t}function Oe(e){let t=[],n=-1/0,r=!0;for(let i=0;i<e.x.length;i+=1){let a=e.x[i],o=e.y[i];if(!Number.isFinite(a)||!Number.isFinite(o))continue;let s=J({x:a,y:o,error:e.error?.[i],lowerError:e.lowerError?.[i],upperError:e.upperError?.[i]});s.x<n&&(r=!1),n=s.x,t.push(s)}return r||t.sort((e,t)=>e.x-t.x),t}function ke(e){let t=Ce(e.error)??0;return{lower:Ce(e.lowerError)??t,upper:Ce(e.upperError)??t}}function Ae(e){if(e.kind===`samples`)return Te(e.values,e.sampleRate,e.startTime);if(e.kind===`typed-samples`)return Ee(e);if(e.kind===`typed-points`)return De(e)?Oe(e):[];let t=[],n=-1/0,r=!0;for(let i of e.points){if(!Number.isFinite(i.x)||!Number.isFinite(i.y))continue;let e=J(i);e.x<n&&(r=!1),n=e.x,t.push(e)}return r||t.sort((e,t)=>e.x-t.x),t}function je(e,t){let n=t.lineType??`linear`,r=Se(t.lineStyle),i=t.pointType??`none`,a=t.errorBar?.visible===!0,o=n===`none`&&i===`none`&&!a?`linear`:n,s=Number(t.errorBar?.width),c=Number(t.errorBar?.capWidth);return{id:e,shotNo:t.shotNo?.trim()||void 0,trackId:t.trackId?.trim()||void 0,name:t.name,unit:t.unit,color:t.color,lineType:o,lineStyle:r,pointType:i,errorBar:{visible:a,color:t.errorBar?.color,width:Number.isFinite(s)&&s>0?s:be,capWidth:Number.isFinite(c)&&c>0?c:xe}}}function Me(e){if(e.kind!==`series`){let t=he(e,Ae);return t.length?[{...je(`series-0`,{name:``}),source:t}]:[]}let t=new Set;return e.series.flatMap((e,n)=>{let r=e.id?.trim()||`series-${n}`,i=r,a=1;for(;t.has(i);)i=`${r}-${a}`,a+=1;t.add(i);let o=he(e.data,Ae);return o.length?[{...je(i,e),source:o}]:[]})}function Ne(e){return Me(e).map(({source:e,...t})=>({...t,points:e.pointsInRange()}))}function Pe(e,t){return{start:Math.max(0,e.start-1),end:Math.min(t,e.end+1)}}var Fe=e=>{let t=e.source??q(e.points),{start:n,end:r}=Pe(e.range,t.length);return t.pointsInRange(n,r)},Ie=e=>{let{range:t,domain:n,width:r,options:i}=e,a=e.source??q(e.points),{start:o,end:s}=Pe(t,a.length);if(s-o<=0)return[];let c=Math.min(n[0],n[1]),l=Math.max(n[0],n[1]),u=Math.max(4,i.sampling.maxPointCount??Math.floor(r*i.maxPointsPerPixel)),d=Math.max(1,Math.floor(u/4)),f=[],p=-1,m=e=>{e<0||e>=a.length||e===p||(f.push(a.pointAt(e)),p=e)},h=l-c||1,g=Array.from({length:4},()=>-1),_=-1,v=-1,y=-1,b=-1,x=-1,S=(e,t)=>{if(e<0)return t;for(let n=0;n<t;n+=1)if(g[n]===e)return t;return g[t]=e,t+1},C=()=>{if(v<0)return;let e=0;e=S(v,e),e=S(b,e),e=S(x,e),e=S(y,e);for(let t=1;t<e;t+=1){let e=g[t],n=t-1;for(;n>=0&&g[n]>e;)g[n+1]=g[n],--n;g[n+1]=e}for(let t=0;t<e;t+=1)m(g[t])};m(o);for(let e=t.start;e<t.end;e+=1){let t=a.pointAt(e),n=Math.min(d-1,Math.max(0,Math.floor((t.x-c)/h*d)));if(n!==_){C(),_=n,v=e,y=e,b=e,x=e;continue}y=e,t.y<a.pointAt(b).y&&(b=e),t.y>a.pointAt(x).y&&(x=e)}return C(),m(s-1),f};function Le(e){let t=Math.max(4,e.options.sampling.maxPointCount??Math.floor(e.width*e.options.maxPointsPerPixel));return!e.options.downsample||e.visibleCount<=e.options.downsampleThreshold||e.visibleCount<=t?Fe:Ie}var Y={downsample:!0,downsampleThreshold:2e3,maxPointsPerPixel:4,pointMinSpacing:10,errorBarMinSpacing:12,sampling:{mode:`auto`,autoThreshold:1e3,autoHysteresis:0,strategy:`peak`,maxPointsPerPixel:4,maxPointCount:void 0,rawPointLimit:1e5,wasmFailureFallback:`error`}},Re=[`auto`,`wasm`,`raw`],ze=[`auto`,`none`,`peak`,`lttb`,`average`,`min`,`max`,`minmax`,`sum`];function Be(e){return typeof e==`string`&&Re.includes(e)}function Ve(e){return typeof e==`string`&&ze.includes(e)}function He(e,t,n){return typeof e==`number`&&Number.isFinite(e)&&e>=t?Math.floor(e):n}function Ue(e,t){return typeof e==`number`&&Number.isFinite(e)&&e>0?e:t}function We(e,t){return typeof e==`number`&&Number.isFinite(e)&&e>=t?Math.floor(e):void 0}function Ge(e,t){return Number.isFinite(e)&&e>=0?e:t}function Ke(e,t,n){let r=Be(e?.mode)?e.mode:t===!1?`raw`:Y.sampling.mode,i=Ue(e?.maxPointsPerPixel,n);return{mode:r,autoThreshold:He(e?.autoThreshold,1,Y.sampling.autoThreshold),autoHysteresis:He(e?.autoHysteresis,0,Y.sampling.autoHysteresis),strategy:Ve(e?.strategy)?e.strategy:Y.sampling.strategy,maxPointsPerPixel:i,maxPointCount:We(e?.maxPointCount,1),rawPointLimit:He(e?.rawPointLimit,1,Y.sampling.rawPointLimit),wasmFailureFallback:e?.wasmFailureFallback===`javascript`||e?.wasmFailureFallback===`error`?e.wasmFailureFallback:Y.sampling.wasmFailureFallback}}function qe(e){let t=Number(e?.downsampleThreshold),n=Number(e?.maxPointsPerPixel),r=Number(e?.pointMinSpacing),i=Number(e?.errorBarMinSpacing),a=Number.isFinite(n)&&n>0?n:Y.maxPointsPerPixel,o=Ke(e?.sampling,typeof e?.downsample==`boolean`?e.downsample:void 0,a);return{downsample:o.mode!==`raw`,downsampleThreshold:Number.isFinite(t)&&t>=2?Math.floor(t):Y.downsampleThreshold,maxPointsPerPixel:o.maxPointsPerPixel,pointMinSpacing:Ge(r,Y.pointMinSpacing),errorBarMinSpacing:Ge(i,Y.errorBarMinSpacing),sampling:o}}var Je=(0,t.bisector)(e=>e.x),X=()=>!0;function Ye(e,t){let n=Math.min(t[0],t[1]),r=Math.max(t[0],t[1]);return{start:Je.left(e,n),end:Je.right(e,r)}}function Xe(e,t,n){if(!Number.isFinite(n)||n<=0)return!0;let r=Math.ceil(n),i=new Set;for(let n of e){let e=n.source??q(n.points),a=e.visibleRange(t);for(let t=a.start;t<a.end;t+=1)if(i.add(e.pointAt(t).x),i.size>=r)return!0}return!1}function Ze(e,t,n,r,i){if(t.start===t.end&&(t.start===0||t.end===e.length))return[];let a=Math.max(0,t.start-1),o=Math.min(e.length,t.end+1)-a;return o<=0?[]:Le({visibleCount:o,width:r,options:i})({points:[],source:e,range:t,domain:n,width:r,options:i})}function Qe(e,t){return t.sampling.mode===`wasm`||t.sampling.mode===`auto`&&e>t.sampling.autoThreshold}function $e(e,t,n,r){let{start:i,end:a}=t,o=a-i,s=r.sampling.maxPointCount??Math.max(1,Math.floor(n*r.sampling.maxPointsPerPixel));return ye(o<=s||r.sampling.strategy===`none`?e.pointsInRange(i,a):Array.from({length:s},(t,n)=>e.pointAt(i+(s===1?0:Math.round(n*(o-1)/(s-1))))),t,e.length,t=>e.pointAt(t))}function et(e,t,n,r){return!e.length||n<=0?[]:Ze(q(e),Ye(e,t),t,n,r)}function tt(e,t,n,r,i,a,o,s){if(!a||i===0){if(o===X)return e.pointsInRange(t.start,t.end);let n=[];for(let r=t.start;r<t.end;r+=1)o(e.pointAt(r))&&n.push(e.pointAt(r));return n}let c=Math.min(n[0],n[1]),l=Math.max(n[0],n[1])-c;if(l<=0){for(let n=t.start;n<t.end;n+=1)if(o(e.pointAt(n)))return[e.pointAt(n)];return[]}let u=Math.max(1,Math.ceil(r/i)),d=r/u,f,p,m,h,g=[],_=!0,v,y,b=-1/0,x=0,S=(e,t)=>{if(!f||!p||!m||!h)return;let n=Math.min(u-1,Math.floor(t/d)),r=(n+.5)*d,i=Math.abs(t-r);i<p[n]&&(f[n]=e,p[n]=i),s?.(e)&&i<h[n]&&(m[n]=e,h[n]=i)},C=()=>{f=Array.from({length:u}),p=Array.from({length:u},()=>1/0),m=Array.from({length:u}),h=Array.from({length:u},()=>1/0);for(let e of g){let t=Math.max(0,Math.min(r,(e.x-c)/l*r));S(e,t)}};for(let n=t.start;n<t.end;n+=1){let t=e.pointAt(n);if(!o(t))continue;v??=t,y=t,x+=1;let a=Math.max(0,Math.min(r,(t.x-c)/l*r));_&&(a-b<i?(_=!1,C(),g.length=0):(g.push(t),b=a)),_||S(t,a)}if(x<=2)return v?y&&y!==v?[v,y]:[v]:[];if(_)return g;let w=(f??[]).map((e,t)=>m?.[t]??e).filter(e=>e!==void 0);return v&&w[0]!==v&&w.unshift(v),y&&w.at(-1)!==y&&w.push(y),w}function nt(e){let{lower:t,upper:n}=ke(e);return t!==0||n!==0}function rt(e,t,n,r,i){if(!e.length||n<=0)return{linePoints:[],pointRenderPoints:[],errorBarRenderPoints:[]};let a=e.visibleRange(t),o=i.lineVisible?i.linePointOverride??(Qe(a.end-a.start,r)?$e(e,a,n,r):Ze(e,a,t,n,r)):[],s=i.errorBarVisible&&i.hasErrorPoints;if(i.pointVisible&&s){let i=tt(e,a,t,n,Math.max(r.pointMinSpacing,r.errorBarMinSpacing),r.downsample,X,nt);return{linePoints:o,pointRenderPoints:i,errorBarRenderPoints:i.filter(nt)}}return{linePoints:o,pointRenderPoints:i.pointVisible?tt(e,a,t,n,r.pointMinSpacing,r.downsample,X):[],errorBarRenderPoints:s?tt(e,a,t,n,r.errorBarMinSpacing,r.downsample,nt):[]}}var it=(e,t)=>{let n=typeof e==`number`?e:Number(e);return Number.isFinite(n)?Math.min(10,Math.max(1,Math.floor(n))):t},at=e=>{if(!Array.isArray(e))return[];let t=e.filter(e=>typeof e==`string`).map(e=>e.trim()).filter(Boolean);return Array.from(new Set(t))};function ot(e){let t=Object.fromEntries(Object.entries(e?.trackLines??{}).map(([e,t])=>[e,{horizontal:typeof t?.horizontal!=`boolean`||t.horizontal,vertical:typeof t?.vertical!=`boolean`||t.vertical,horizontalColor:typeof t?.horizontalColor==`string`&&t.horizontalColor.trim()?t.horizontalColor:void 0,verticalColor:typeof t?.verticalColor==`string`&&t.verticalColor.trim()?t.verticalColor:void 0}]));return{rowCount:it(e?.rowCount,2),columnCount:it(e?.columnCount,1),showPagination:e?.showPagination??!0,fillIncompleteLastRow:e?.fillIncompleteLastRow??!1,trackOrder:at(e?.trackOrder),hideEmptyTracks:e?.hideEmptyTracks??!1,trackLines:t}}function st(e){return e.rowCount*e.columnCount}function ct(e,t){return Math.max(1,Math.ceil(Math.max(0,e)/st(t)))}function lt(e,t,n){let r=ct(e.length,n),i=(Math.min(r,Math.max(1,Math.floor(t)))-1)*st(n);return e.slice(i,i+st(n))}function ut(e){return e===`compact`?0:e===`separated`?16:14}function dt(e,t,n,r,i=[],a,o=!0,s=!1){let c=st(n),l=i.filter(Boolean).length,u=n.fillIncompleteLastRow&&l>0&&l<c,d=u?Math.ceil(l/n.columnCount):n.rowCount,f=ut(r),p=Number.isFinite(a)?Math.max(0,a):f,m=new Set;if(o){if(r===`independent`)for(let e=0;e<d;e+=1)m.add(e);else if(r===`compact`)m.add(d-1);else for(let e=0;e<n.columnCount;e+=1)for(let t=st(n)-1;t>=0;--t)if(t%n.columnCount===e&&i[t]){m.add(Math.floor(t/n.columnCount));break}}let h=Math.max(0,d-1)*f,g=s&&m.has(d-1)?30:0,_=m.size*30-g,v=Math.max(1,(t-h-_)/d);return Array.from({length:u?l:c},(t,r)=>{let i=Math.floor(r/n.columnCount),a=r%n.columnCount,o=u&&i===d-1?l-i*n.columnCount:n.columnCount,s=Math.max(0,o-1)*p,c=Math.max(1,(e-s)/o),h=m.has(i)?30:0,g=v+h,_=Array.from({length:i},(e,t)=>{let n=m.has(t)?30:0;return v+n+f}).reduce((e,t)=>e+t,0);return{slotIndex:r,row:i,column:a,left:a*(c+p),top:_,width:c,height:v,plotHeight:v,cellHeight:g,xAxisBand:h,isLastRow:i===d-1}})}function ft(e,t){let n=new Set;for(let r=0;r<t;r+=1)for(let t=e.length-1;t>=0;--t){let i=e[t];if(i.column===r&&i.hasSeries){n.add(i.slotIndex);break}}return n}var pt=10,mt=1e3,ht=100;function gt(e){return!Number.isFinite(e)||(e??0)<1?pt:Math.max(1,Math.trunc(e))}function _t(e,n,r=!1){if(r&&!n.includeExplicit)return[...e];if(n.type===`integer-ms`){let n=e[0]*mt,r=e[1]*mt;if(!Number.isSafeInteger(Math.ceil(Math.abs(n)))||!Number.isSafeInteger(Math.ceil(Math.abs(r)))||r-n<1)return[...e];let i=r-n>=ht?Math.max(10,(0,t.tickStep)(n,r,pt)/10):1;return[Math.floor(n/i)*i/mt,Math.ceil(r/i)*i/mt]}if(n.type!==`nice`)return[...e];let i=(0,t.scaleLinear)().domain(e).nice(gt(n.tickCount)).domain();return n.bounds===`end`?[e[0],i[1]]:i}var vt=11,yt=2;function bt(e,t){return Array.from(e).reduce((e,n)=>e+(/[\u2e80-\u9fff\uf900-\ufaff\uff01-\uff60]/u.test(n)?1:/[MW@%]/u.test(n)?.95:/[ilI1., :;|'!]/u.test(n)?.4:.65)*t,0)}function xt(e,t,n,r){let i=t.seriesList[0],a=bt(i?.name.trim()||n||``,W(r.labelTextStyle))/2,o=e.height/2-a-yt,s=e.height/2+a+yt,c=Math.min(...t.tickValues),l=Math.max(...t.tickValues),u=t.tickValues.flatMap(e=>{let n=t.scale(e)+.5,a=r.compact&&e===l,u=n-(e===c?vt:a?0:vt/2);if((e===c?n:n+(a?vt:vt/2))<o||u>s)return[];let d=Vt(e,t.scale.domain(),t.tickValues,r.showUnits===!1?void 0:i?.unit);return[r.measureTextWidth?.(d)??d.length*7]});return Math.max(7,...u)+7+G(r.labelTextStyle)/2}function St(e,t,n={}){let r=new Map;for(let i of e){let e=0;for(let a of i.yAxes){if(a.side!==`left`)continue;let o=`${i.column}:${e++}`,s=xt(i,a,t,n),c=n.compact?Math.min(a.x-a.labelX,s):s;r.set(o,Math.max(r.get(o)??0,c))}}for(let t of e){let e=0;for(let n of t.yAxes)n.side===`left`&&(n.labelX=n.x-r.get(`${t.column}:${e++}`))}}var Ct=`700 11px sans-serif`,wt;function Tt(e){wt===void 0&&(wt=typeof document<`u`&&typeof CanvasRenderingContext2D<`u`?document.createElement(`canvas`).getContext(`2d`):null,wt&&(wt.font=Ct));let t=wt?wt.measureText(e).width:[...e].reduce((e,t)=>e+(/[0-9]/.test(t)?6.2:t===`.`?3.1:7),0);return Math.ceil(t)}function Et(e,n,r){if(!r.integerZoom)return(0,t.scaleLinear)().domain(e).ticks(n);let i=r.timeUnit===`s`?1:1e3;return(0,t.scaleLinear)().domain(e.map(e=>e*i)).ticks(n).filter(Number.isInteger).map(e=>e/i)}function Dt(e){return String(Math.round(e))}function Ot(e){let t=Math.round(e);return Math.abs(e-t)<=2**-52*Math.max(1,Math.abs(e))*16?t:e}function kt(e,t){if(!t.integerZoom)return e;let n=t.timeUnit===`s`?1:1e3,r=Ot(Math.min(e[0],e[1])*n),i=Ot(Math.max(e[0],e[1])*n);if(!Number.isSafeInteger(Math.floor(r))||!Number.isSafeInteger(Math.ceil(i)))return e;let a=Math.floor(r);return[a/n,Math.max(a+1,Math.ceil(i))/n]}function At(e,t){return kt(e,t)}function jt(e,t){if(!t.integerZoom)return e;let n=t.timeUnit===`s`?1:1e3;return[Math.round(e[0]*n)/n,Math.round(e[1]*n)/n]}function Mt(e,t,n){if(n.effectiveXDomains?.[e.id])return n.effectiveXDomains[e.id];let r=n.xDomainStrategy??{type:`data`},i=n.initialXDomains?.[e.id]??n.initialXDomains?.[t]??n.initialXDomain;return kt(i?_t(i,r,!0):_t(e.xDomain,r),n)}function Nt(e){let n=e.cells.map(t=>({...t,hasSeries:e.useNonEmptyBottomTracks?!!t.series?.series.length:!!t.series})),r=ft(n,e.grid.columnCount),i=n.flatMap((n,i)=>{let a=!n.series||n.series.series.length===0;if(!n.series&&!e.showEmptyTracks)return[];let o=n.series??{id:`empty-grid-slot-${n.slotIndex}`,series:[],visibleSeries:[],xDomain:e.initialXDomain??e.sharedZoomDomain,yDomain:[0,1]},c=!a&&o.visibleSeries.length>0,l=o.visibleSeries[0]??o.series[0]??null,d=e.displayMode===`independent`?(0,t.scaleLinear)(Mt(o,l?.id??o.id,e),[0,n.width]):(0,t.scaleLinear)(e.sharedZoomDomain,[0,n.width]),f=(e.displayMode===`independent`?e.independentTransforms[i]??t.zoomIdentity:t.zoomIdentity).rescaleX(d);f.domain(At(f.domain(),e));let p=Kt(o,e.overlayMode,e.fixedYDomain,e.fixedYDomains,e.yDomains,e.yAxisPadding??e.yAxisUpperPaddingRatio),m={left:0,right:0},h={left:0,right:0},g=p.map(r=>{let i=m[r.side]++,a=Rt(n.plotHeight,e.yAxisSplitNumber),o=zt(r.domain,a,e.yAxisNice!==!1),c=(0,t.scaleLinear)(o.domain,[n.plotHeight,0]),l=o.values,d=r.maximumTick!==void 0&&r.maximumTick>=o.domain[0]&&r.maximumTick<=o.domain[1]?r.maximumTick:void 0,f=r.minimumTick!==void 0&&r.minimumTick>=o.domain[0]&&r.minimumTick<=o.domain[1]?r.minimumTick:void 0,p=s(l,d,f),{tickTextWidth:g}=qt(c.domain(),!1,p,e.showAxisUnits===!1?void 0:r.seriesList[0]?.unit,a),_=g+7+0+G(e.yAxisPadding?.labelTextStyle)+4,v=e.yAxisSlots?.find(e=>e.side===r.side&&e.sideIndex===i),y=v?(r.side===`left`?0:n.width)+v.axisOffset:r.side===`left`?-h.left:n.width+h.right,b=g+7+0+G(e.yAxisPadding?.labelTextStyle)/2,x=(v?(r.side===`left`?0:n.width)+v.labelOffset:y+(r.side===`left`?-b:b))-(r.side===`right`&&!e.compactYAxisLayout?10:0);return v||(h[r.side]+=_),{index:r.index,side:r.side,x:y,labelX:x,scale:c,maximumTick:d,minimumTick:f,majorTicks:l,minorTicks:u(l,2),tickValues:p,seriesList:r.seriesList}}),_=(0,t.scaleLinear)(o.yDomain,[n.plotHeight,0]);e.yAxisNice!==!1&&_.nice();let v=g[0]?.scale??_,y=Et(f.domain(),Math.max(2,Math.floor(n.width/100)),e),b=e.xAxisLabelFormatter??(e.integerZoom?Dt:void 0),x=g[0]?.majorTicks??(a?_.ticks(Rt(n.plotHeight,e.yAxisSplitNumber)):[]),S=g[0]?.tickValues??[],C=f.domain(),w={start:T(C[0],C,e.timeUnit,`start`,b),end:T(C[1],C,e.timeUnit,`end`,b)},E=w.start.length*7+10,D=w.end.length*7+10,O=y.filter(e=>{let t=f(e);return t>E&&t<n.width-D}),k=o.visibleSeries.map(r=>{let i=g.find(e=>e.seriesList.some(e=>e.id===r.id)),o=i?.scale??v,s=rt(r.source??q(r.points),C,n.width,e.rendering,{lineVisible:!a&&r.lineType!==`none`,linePointOverride:e.linePointOverrides?.[r.id],pointVisible:r.pointType!==`none`,errorBarVisible:r.errorBar.visible,hasErrorPoints:r.hasErrorPoints}),c=(0,t.line)().x(e=>f(e.x)).y(e=>o(e.y));return r.lineType===`step-start`&&c.curve(t.curveStepBefore),r.lineType===`step-middle`&&c.curve(t.curveStep),(r.lineType===`step-end`||r.lineType===`step-after`)&&c.curve(t.curveStepAfter),{series:r,path:s.linePoints.length?c(s.linePoints):null,pointRenderPoints:s.pointRenderPoints,errorBarRenderPoints:s.errorBarRenderPoints,yScale:o,yAxisIndex:i?.index??0}});return{id:o.id,index:i,series:l,seriesList:o.visibleSeries,legendSeries:o.series,isEmpty:a,hasVisibleSeries:c,column:n.column,showYAxisLabel:!e.hideSecondaryLabels||n.column===0,yAxisLabelX:e.yAxisLabelX,left:n.left,top:n.top,width:n.width,height:n.plotHeight,xScale:f,yScale:v,yAxes:g,xMajorTicks:y,xAxisLabelFormatter:b,xMinorTicks:u(y,3,C),yMajorTicks:x,yMinorTicks:g[0]?.minorTicks??(a?u(x,2):[]),yAxisTickValues:S,xAxisTickValues:O,endpointLabels:w,path:k[0]?.path??null,seriesPaths:k,gridLines:e.grid.trackLines[o.id]??{horizontal:!0,vertical:!0},showXAxis:e.displayMode===`independent`||(e.displayMode===`compact`?n.isLastRow??n.row===e.grid.rowCount-1:r.has(n.slotIndex))}});return St(i,e.yLabel,{labelTextStyle:e.yAxisPadding?.labelTextStyle,showUnits:e.showAxisUnits,compact:e.compactYAxisLayout,measureTextWidth:e.compactYAxisLayout?Tt:void 0}),i}var Pt=7,Ft=7,It=4,Lt=0;function Rt(e,t){return typeof t==`number`&&Number.isFinite(t)?Math.max(2,Math.floor(t)):5}function zt(e,t=5,n=!0){if(!n){let n=typeof t==`number`&&Number.isFinite(t)?Math.max(2,Math.floor(t)):5,[r,i]=e;return{domain:e,values:Array.from({length:n},(e,t)=>r+(i-r)*t/(n-1))}}return ne(e,t)}function Bt(e,t,n,r,i=`left`){let a=Math.max(...n),o=i===`right`&&e===a,s=b(e,{axisMin:t[0],axisMax:t[1],topTickValue:o?NaN:a,unit:o?void 0:r});if(o){let e=r?.trim(),n=x(...t);return[s,n,!n&&e?`(${e})`:null].filter(Boolean).join(` `)}return s}function Vt(e,t,n,r){let i=Bt(e,t,n,r),a=x(t[0],t[1]);return a&&i.startsWith(`${a} `)?i.slice(a.length+1):i}function Ht(e){return e>=4?[`left`,`left`,`right`,`right`]:e===3?[`left`,`right`,`right`]:e===2?[`left`,`right`]:[`left`]}var Ut=new WeakMap;function Wt(e,t){let n=Ut.get(e);n||(n=new Map,Ut.set(e,n));let r=n.get(t);if(r)return r;let i=t===`multi-axis`?Math.min(e.visibleSeries.length,4):Math.min(e.visibleSeries.length,1),a=Ht(i),o=Array.from({length:i},(e,t)=>({index:t,side:a[t],seriesList:[],domain:[0,1],fixed:!1}));return e.visibleSeries.forEach((e,t)=>{o[Math.min(t,i-1)]?.seriesList.push(e)}),o.forEach(n=>{if(t===`single-axis`)n.domain=e.yDomain;else{let t=n.seriesList.flatMap(e=>e.yDomain);n.domain=t.length>0?l(t):e.yDomain}}),n.set(t,o),o}function Gt(e,t,n,r){let i=B(e,r);return Wt(e,t).map(e=>{if(i)return{...e,domain:i,fixed:!0};let t=e.seriesList.map(e=>V(e,n,r)??e.yDomain),a=e.seriesList.some(e=>V(e,n,r));return a?{...e,domain:H(t),fixed:a}:e})}function Kt(e,t,n,r,i,o){let s=i?.[e.id];return Gt(e.visibleSeries.length||!e.series.length?e:{...e,visibleSeries:e.series},t,n,r).map(t=>{let n=a(t,s,o);return e.visibleSeries.length?n:{...n,maximumTick:void 0,minimumTick:void 0}})}function qt(e,t=!0,n,r,i=5,a=!1,o,c,l){let u=n?{domain:e,values:n}:zt(e,i,t),d=e=>e!==void 0&&e>=u.domain[0]&&e<=u.domain[1]?e:void 0,f=[s(u.values,d(c),d(l))];return a&&u.values.length>1&&f.push(u.values.slice(0,-1)),{tickTextWidth:Math.max(Pt,...f.flatMap(e=>e.map(t=>{let n=Vt(t,u.domain,e,r);return o?o(n):n.length*Pt})))}}function Jt(e,t,n,r,i,a=!0,o=!1,s,c,l=!0,u){let d=G(typeof c==`object`?c.labelTextStyle:void 0),f=new Map;e.forEach(e=>{let d={left:0,right:0};Kt(e,t,n,r,s,c).forEach(e=>{let t=d[e.side]++,n=`${e.side}:${t}`,r=qt(e.domain,a,void 0,l?e.seriesList[0]?.unit:void 0,i,o,u,e.maximumTick,e.minimumTick).tickTextWidth;f.set(n,Math.max(f.get(n)??Pt,r))})});let p=[],m={left:0,right:0};return[`left`,`right`].forEach(e=>{Array.from(f.keys()).filter(t=>t.startsWith(`${e}:`)).map(t=>Number(t.slice(e.length+1))).sort((e,t)=>e-t).forEach(t=>{let n=f.get(`${e}:${t}`)??Pt,r=e===`left`&&m.left>0?-m.left:m[e],i=r+(n+Ft+Lt+d/2)*(e===`left`?-1:1),a=n+Ft+Lt+d+It;p.push({side:e,sideIndex:t,axisOffset:r,labelOffset:i,clearance:a}),m[e]+=a})}),{slots:p,clearance:m}}function Yt(e,t,n){let r=e=>{let r=t<e.left?e.left-t:t>e.left+e.width?t-e.left-e.width:0;return n<e.top?e.top-n:n>e.top+e.height?n-(e.top+e.height):r},i=e[0];if(!i)return;let a=r(i);for(let t=1;t<e.length;t+=1){let o=e[t],s=r(o);if(s<a){i=o,a=s;continue}s===a&&Math.abs(n-(o.top+o.height/2))<Math.abs(n-(i.top+i.height/2))&&(i=o)}return i}function Xt(e){let t=e.getBoundingClientRect();if(t.width&&t.height)return t;let n=Number.parseFloat(getComputedStyle(e).fontSize)||11,r=(e.textContent?.length??0)*n*.65,i=Number(e.getAttribute(`x`))||0,a=Number(e.getAttribute(`y`))||0;for(let t=e.parentElement;t;t=t.parentElement){let e=t.getAttribute(`transform`)?.match(/translate\(([-\d.e+]+)[ ,]+([-\d.e+]+)\)/);e&&(i+=Number(e[1]),a+=Number(e[2]))}let o=e.getAttribute(`text-anchor`)===`start`;return{left:o?i:i-r,right:o?i+r:i,top:a-n/2,bottom:a+n/2}}function Zt(e,t){return e.left<t.right&&t.left<e.right&&e.top<t.bottom+4&&t.top<e.bottom+4}function Qt(e,t,n=1,r=1){return Math.abs(e-t)<(n+r)/2+1}function $t(e){e.setAttribute(`display`,`none`),e.setAttribute(`data-maximum-hidden`,`true`)}function en(e){return Number.parseFloat(getComputedStyle(e).strokeWidth)||1}function tn(e){e.querySelectorAll(`text[data-axis-maximum-label]`).forEach(e=>{let t=e.parentElement.parentElement,n=[...t.querySelectorAll(`.tick text`)],r=e=>Number(e.parentElement.getAttribute(`data-tick-value`)),i=n.filter(e=>e.getAttribute(`display`)!==`none`).map(r),a=[Number(t.getAttribute(`data-label-domain-min`)),Number(t.getAttribute(`data-label-domain-max`))];n.forEach(e=>{e.textContent=Bt(r(e),a,i,t.getAttribute(`data-label-unit`)??void 0,t.getAttribute(`data-y-axis-side`)===`right`?`right`:`left`)})})}function nn(e){e.querySelectorAll(`[data-maximum-hidden]`).forEach(e=>{e.removeAttribute(`display`),e.removeAttribute(`data-maximum-hidden`)}),e.querySelectorAll(`.waveform-track__axis--y .tick text`).forEach(e=>{e.removeAttribute(`display`)}),tn(e);let t=[...e.querySelectorAll(`text[data-axis-minimum-label]`)];e.querySelectorAll(`text[data-axis-maximum-label]`).forEach(e=>{let n=Xt(e);t.some(e=>Zt(n,Xt(e)))&&$t(e)}),e.querySelectorAll(`.waveform-track__axis--y .tick`).forEach(e=>{let t=Number(e.getAttribute(`data-tick-y`)),n=Number(e.closest(`.waveform-track`)?.getAttribute(`data-track-height`)),r=e.querySelector(`line`);c(t,0)||c(t,n)?r?.setAttribute(`display`,`none`):r?.removeAttribute(`display`)});let n=[...e.querySelectorAll(`.tick[data-minimum-tick]`)],r=[...e.querySelectorAll(`.tick[data-maximum-tick]`)],i=[...e.querySelectorAll(`.waveform-track__axis--y .tick text`)];n.forEach(e=>{let t=e.querySelector(`text`);t&&r.forEach(e=>{let n=e.querySelector(`text`);n&&n!==t&&Zt(Xt(t),Xt(n))&&$t(n)})}),[...new Set([...n,...r])].forEach(e=>{let t=e.querySelector(`text`),n=e.querySelector(`line`);if(!t||!n)return;let r=Xt(t);i.forEach(n=>{t.getAttribute(`display`)!==`none`&&n.getAttribute(`display`)!==`none`&&(n.parentElement?.matches(`[data-minimum-tick], [data-maximum-tick]`)||!e.hasAttribute(`data-minimum-tick`)&&n.hasAttribute(`data-axis-minimum-label`)||Zt(r,Xt(n))&&$t(n))});let a=e.parentElement,o=Number(e.getAttribute(`data-tick-value`)),s=Number(e.getAttribute(`data-tick-y`));a.querySelectorAll(`.tick:not([data-maximum-tick]):not([data-minimum-tick])`).forEach(e=>{let t=e.querySelector(`line`);t&&Qt(s,Number(e.getAttribute(`data-tick-y`)),en(n),en(t))&&$t(t)}),a.getAttribute(`data-y-axis-index`)===`0`&&(a.closest(`.waveform-track`).querySelectorAll(`[data-grid-direction="horizontal"]`).forEach(e=>{let t=Number(e.getAttribute(`y1`));Qt(s,t,en(n),en(e))&&$t(e)}),e.hasAttribute(`data-maximum-tick`)&&e.setAttribute(`data-maximum-value`,String(o)),e.hasAttribute(`data-minimum-tick`)&&e.setAttribute(`data-minimum-value`,String(o)))}),tn(e)}var rn=`http://www.w3.org/2000/svg`;function an(e,t,n){let r=e.querySelector(`.waveform-chart__title-text`);if(!r)return;let i=getComputedStyle(r),a=r.getBoundingClientRect(),o=e.getBoundingClientRect(),s=o.width?n/o.width:1,c=document.createElementNS(rn,`g`),l=typeof DOMMatrix<`u`&&i.transform!==`none`&&i.transform?new DOMMatrix(i.transform):void 0,u=l?Math.atan2(l.b,l.a)*180/Math.PI:0,d=l?Math.hypot(l.a,l.b):1;c.setAttribute(`transform`,`translate(${(a.left-o.left+a.width/2)*s},${t/2}) rotate(${u}) scale(${d})`);let f=document.createElementNS(rn,`text`);f.setAttribute(`fill`,i.color);for(let e of[`font-family`,`font-size`,`font-weight`,`font-style`,`text-decoration`,`letter-spacing`])f.style.setProperty(e,i.getPropertyValue(e));let p=parseFloat(i.fontSize)||14,m=parseFloat(i.lineHeight)||p*1.4,h=r.clientWidth||parseFloat(i.width)||a.width||n,g=document.createElement(`canvas`),_=g.getContext(`2d`);_&&(_.font=`${i.fontStyle} ${i.fontWeight} ${p}px ${i.fontFamily}`);let v=[],y=``;for(let e of r.textContent??``){if(e===`
|
|
2
|
-
`){v.push(y),y=``;continue}let t=_?.measureText(y+e).width??(y.length+1)*p;i.whiteSpace!==`nowrap`&&y&&t>h?(v.push(y),y=e):y+=e}v.push(y);let b=i.textAlign;return f.setAttribute(`text-anchor`,b===`left`?`start`:b===`right`?`end`:`middle`),v.forEach((e,t)=>{let n=document.createElementNS(rn,`tspan`);n.setAttribute(`x`,String(b===`left`?-h/2:b===`right`?h/2:0)),n.setAttribute(`y`,String((t-(v.length-1)/2)*m)),n.setAttribute(`dominant-baseline`,`middle`),n.textContent=e,f.appendChild(n)}),g.width=0,g.height=0,c.appendChild(f),c}var on=`http://www.w3.org/2000/svg`;function sn(e,t={}){let n=document.createElementNS(on,e);return Object.entries(t).forEach(([e,t])=>n.setAttribute(e,String(t))),n}var cn=[`fill`,`fill-opacity`,`stroke`,`stroke-width`,`stroke-opacity`,`stroke-dasharray`,`stroke-linecap`,`stroke-linejoin`,`opacity`,`font-family`,`font-size`,`font-weight`,`font-style`,`text-decoration`,`letter-spacing`,`text-anchor`,`dominant-baseline`,`visibility`,`display`];function ln(e,t){let n=[e,...e.querySelectorAll(`*`)],r=[t,...t.querySelectorAll(`*`)];n.forEach((e,t)=>{let n=r[t],i=getComputedStyle(e);cn.forEach(e=>{let t=i.getPropertyValue(e);t&&n.style.setProperty(e,t)});for(let e of[`clip-path`,`mask`,`filter`]){let t=n.getAttribute(e);t?.includes(`#`)&&n.setAttribute(e,`url(#${t.split(`#`)[1].replace(/[)'"].*$/,``)})`)}})}function un(e,t){let n=e.querySelectorAll(`foreignObject`);t.querySelectorAll(`foreignObject`).forEach((e,t)=>{let r=n[t],i=r.getBoundingClientRect(),a=sn(`g`,{class:`waveform-export-legend`}),o=Number(r.getAttribute(`width`))||i.width,s=i.width>0?o/i.width:1,c=r.querySelector(`.waveform-legend__panel`);if(c){let e=c.getBoundingClientRect();a.appendChild(sn(`rect`,{x:(e.left-i.left)*s,y:(e.top-i.top)*s,width:e.width*s,height:e.height*s,rx:4,fill:getComputedStyle(c).backgroundColor,stroke:`#d0d5dd`}))}r.querySelectorAll(`.waveform-legend__item`).forEach(e=>{let t=e.getBoundingClientRect(),n=sn(`g`,{transform:`translate(${(t.left-i.left)*s},${(t.top-i.top)*s})`,opacity:getComputedStyle(e).opacity}),r=e.querySelector(`svg`);if(r){let e=r.cloneNode(!0);ln(r,e),e.setAttribute(`width`,`26`),e.setAttribute(`height`,`16`),n.appendChild(e)}let o=e.querySelector(`.waveform-legend__label`);if(o){let e=sn(`text`,{x:32,y:12,fill:getComputedStyle(o).color,"font-size":12,"font-family":`sans-serif`,"text-decoration":getComputedStyle(o).textDecorationLine});e.textContent=o.textContent,n.appendChild(e)}a.appendChild(n)}),e.replaceWith(a)})}function dn(e,t,n,r,i,a){let o=sn(`svg`,{width:n,height:r,viewBox:`0 0 ${n} ${r}`}),s=a??getComputedStyle(e).backgroundColor;o.appendChild(sn(`rect`,{width:n,height:r,fill:s||`#fff`}));let c=t.cloneNode(!0);ln(t,c),un(t,c),c.querySelectorAll(`.waveform-chart__overlay, .waveform-chart__hover-layer, .waveform-chart__zoom-selection`).forEach(e=>e.remove()),c.setAttribute(`y`,String(i)),c.removeAttribute(`role`),c.removeAttribute(`aria-label`),o.appendChild(c);let l=an(e,i,n);return l&&o.appendChild(l),new XMLSerializer().serializeToString(o)}function Z(e){return Object.assign(Error({"export-invalid-options":`图片导出参数无效`,"export-unavailable":`图表尚未具备有效尺寸`,"export-busy":`已有导出正在执行`,"export-cancelled":`图表已卸载,导出取消`,"export-render-failed":`图片编码失败`,"export-stale":`图表已变化,请重新导出`,"export-timeout":`等待图表稳定超时,请重试`}[e]),{code:e})}function fn(t){let n=!1,r=!1,i=0,a;(0,e.watch)(t.version,()=>{i++,a?.(Z(`export-stale`))},{flush:`sync`}),(0,e.onBeforeUnmount)(()=>{r=!0,a?.(Z(`export-cancelled`))});async function o(o={}){let s=o.format??`png`,c=o.scale??1;if(![`png`,`svg`].includes(s)||!Number.isFinite(c)||c<=0||c>4||s===`svg`&&c!==1||o.backgroundColor!==void 0&&(typeof o.backgroundColor!=`string`||!CSS.supports(`color`,o.backgroundColor)))throw Z(`export-invalid-options`);if(r)throw Z(`export-cancelled`);if(n)throw Z(`export-busy`);let l=t.container(),u=t.svg(),d=t.size();if(!l||!u||d.width<=0||d.height<=0)throw Z(`export-unavailable`);n=!0;let f=i,p,m,h,g,_,v=!1,y=()=>{if(r)throw Z(`export-cancelled`);if(f!==i)throw Z(`export-stale`);if(v)throw Z(`export-timeout`)},b=new Promise((e,t)=>{a=t,p=setTimeout(()=>t(Z(`export-timeout`)),5e3)}),x=async()=>{await(0,e.nextTick)(),y(),await new Promise(e=>{let n=()=>{v||(t.ready()?e():m=setTimeout(n,16))};n()}),await document.fonts?.ready,await(0,e.nextTick)(),y(),nn(u);let n=dn(l,u,d.width,d.height,d.titleHeight,o.backgroundColor),r=new Blob([n],{type:`image/svg+xml`});if(s===`svg`)return r;h=URL.createObjectURL(r),g=new Image,await new Promise((e,t)=>{g.onload=()=>e(),g.onerror=()=>t(Z(`export-render-failed`)),g.src=h}),y(),_=document.createElement(`canvas`),_.width=Math.round(d.width*c),_.height=Math.round(d.height*c);let i=_.getContext(`2d`);if(!i)throw Z(`export-render-failed`);i.drawImage(g,0,0,_.width,_.height);let a=await new Promise((e,t)=>_.toBlob(n=>n?e(n):t(Z(`export-render-failed`)),`image/png`));return y(),a};try{return await Promise.race([b,x()])}catch(e){throw e instanceof Error&&`code`in e?e:Z(`export-render-failed`)}finally{v=!0,clearTimeout(p),clearTimeout(m),g&&(g.onload=null,g.onerror=null,g.src=``),h&&URL.revokeObjectURL(h),_&&(_.width=0,_.height=0),a=void 0,n=!1}}return{exportImage:o}}function pn(t,n){let r=(0,e.ref)(`zoom`),i=(0,e.computed)(()=>t.interactionMode??r.value),a=e=>!t.presentationMode&&(e===`none`||e===`zoom`&&t.zoomable||e===`pan`&&t.pannable||e===`annotation`&&t.annotationsVisible);function o(e){let o;return a(e)?i.value===e?o=`unchanged`:t.interactionMode===void 0?(r.value=e,o=`applied`):(n(`update:interactionMode`,e),o=`requested`):o=`disabled`,{kind:`mode`,status:o,targets:[]}}return(0,e.watch)(i,e=>n(`interaction-mode-change`,e)),{mode:i,canSetMode:a,setInteractionMode:o}}var mn=new WeakMap;function hn(e){return e[0]<=e[1]?[...e]:[e[1],e[0]]}function gn(e){return Number.isFinite(e)&&(e??0)>0?Math.ceil(e):0}function _n(e,t){let n=`${t[0]}\u0000${t[1]}`,r=mn.get(e)?.get(n);if(r)return r;let i=new Set;for(let n of e){let e=n.source??q(n.points);for(let n=0;n<e.length;n+=1){let r=e.pointAt(n);r.x>=t[0]&&r.x<=t[1]&&i.add(r.x)}}let a=Array.from(i).sort((e,t)=>e-t),o=mn.get(e)??new Map;return o.set(n,a),mn.set(e,o),a}function vn(e,t,n){if(n<=1)return 0;let r=0;for(let i of e){let e=_n(i,t);if(e.length<n)return t[1]-t[0];let a=1/0;for(let t=0;t+n<=e.length;t+=1)a=Math.min(a,e[t+n-1]-e[t]);let o=2**-52*Math.max(1,Math.abs(t[0]),Math.abs(t[1]))*16;r=Math.max(r,a+o)}return r}function yn(e,t,n){let r=kt(hn(e),n),i=r[1]-r[0];if(!Number.isFinite(i)||i<=0)return 0;let a=Number.isFinite(n.minZoomSpan)&&(n.minZoomSpan??0)>0?Math.min(i,n.minZoomSpan):0,o=gn(n.minVisiblePoints),s=vn(t,r,o),c=Number(n.maxZoomScale),l=Number.isFinite(c)&&c>=N.MIN_SCALE?i/c:n.maxZoomScale!==null&&a===0&&o===0?i/N.DEFAULT_MAX_SCALE:0,u=n.integerZoom?n.timeUnit===`s`?1:.001:0;return Math.max(a,s,l,u)}function bn(e,t,n,r){if(r<=0)return e;let i=2**-52*Math.max(1,Math.abs(t[0]),Math.abs(t[1]))*16,a=e;for(let e of n){let n=_n(e,t);if(n.length<r)return[...t];if(n.filter(e=>e>=a[0]&&e<=a[1]).length>=r)continue;let o,s=1/0,c=1/0,l=(a[0]+a[1])/2;for(let e=0;e+r<=n.length;e+=1){let u=[Math.max(t[0],Math.min(a[0],n[e]-i)),Math.min(t[1],Math.max(a[1],n[e+r-1]+i))],d=u[1]-u[0],f=Math.abs((u[0]+u[1])/2-l);(d<s||d===s&&f<c)&&(o=u,s=d,c=f)}a=o??[...t]}return a}function xn(e,t,n,r){let i=kt(hn(t),r),a=i[1]-i[0];if(!Number.isFinite(a)||a<=0||Math.abs(e[1]-e[0])>=a*.999999999999)return i;let o=bn([Math.max(i[0],Math.min(e[0],e[1])),Math.min(i[1],Math.max(e[0],e[1]))],i,n,gn(r.minVisiblePoints)),s=yn(i,n,r),c=Math.max(s,Math.min(a,o[1]-o[0])),l=(o[0]+o[1])/2,u=Math.max(i[0],Math.min(l-c/2,i[1]-c));return kt([u,u+c],r)}function Sn(e,n,r){let i=n[1]-n[0],a=e[1]-e[0];if(!Number.isFinite(i)||!Number.isFinite(a)||i<=0||a<=0)return t.zoomIdentity;let o=i/a,s=(0,t.scaleLinear)(n,[0,r]);return t.zoomIdentity.translate(-o*s(e[0]),0).scale(o)}function Cn(e,t){let n=e[1]-e[0];return n>=t[1]-t[0]?[...t]:e[0]<t[0]?[t[0],t[0]+n]:e[1]>t[1]?[t[1]-n,t[1]]:e}function wn(e){let t=e.panXDomain;return t&&t.every(Number.isFinite)&&t[0]<t[1]?t:void 0}function Tn(e,t,n,r){let i=wn(r);return i?Cn(e,i):xn(e,t,n,r)}function En(e,t,n,r){let i=wn(r);return i?xn(e,i,[],{...r,minVisiblePoints:0,maxZoomScale:null,minZoomSpan:yn(t,n,r)}):xn(e,t,n,r)}var Dn=(e,t)=>e.every((e,n)=>Math.abs(e-t[n])<1e-12);function On(t){let n=0,r=(0,e.computed)(()=>t.props.displayMode===`independent`),i=()=>r.value?t.layout.trackLayouts.value.map(e=>({id:e.id,tracks:[e]})):[{id:`shared`,tracks:t.layout.trackLayouts.value}],a=e=>({xDomain:[...r.value?e[0].xScale.domain():t.layout.sharedZoomDomain.value],yDomains:Object.fromEntries(e.flatMap(e=>e.seriesPaths.map(e=>[e.series.id,e.yScale.domain()])))}),o=(e,n=!1)=>r.value?(n?t.layout.resolveOriginalTrackDomain:t.layout.resolveInitialTrackDomain)(e[0]):(n?t.layout.originalXDomain:t.layout.initialXDomain).value,s=e=>{if(!r.value||e===void 0)t.boundaries.value={};else{let n=t.layout.trackLayouts.value.find(t=>t.index===e)?.id,r={...t.boundaries.value};n&&delete r[n],t.boundaries.value=r}};function c(){if(!Object.keys(t.boundaries.value).length)return;let e=i().filter(e=>e.tracks.length).map(e=>({index:r.value?e.tracks[0].index:void 0,domain:a(e.tracks).xDomain}));s(),e.forEach(e=>t.legacySet(e.domain,e.index))}function u(e,n={},s){let c=i();return n.trackId!==void 0&&(!r.value||!c.some(e=>e.id===n.trackId))?{error:`invalid-target`,entries:[]}:e===`set-domain`&&(!s||!s.every(Number.isFinite)||s[0]===s[1])?{error:`invalid-domain`,entries:[]}:{entries:(n.trackId===void 0?c:c.filter(e=>e.id===n.trackId)).map(({id:n,tracks:i})=>{let c=i.some(e=>e.seriesList.some(e=>(e.source?.length??e.points.length)>0)),u=i.length?a(i):void 0,d=i.length?o(i,e===`reset`):[0,1];e===`fit`&&(d=_t(l(i.flatMap(e=>e.seriesList.flatMap(e=>e.xDomain))),t.props.xDomainStrategy));let f=s??d;if(u&&(e===`zoom-in`||e===`zoom-out`)){let[t,n]=u.xDomain,r=(n-t)*(e===`zoom-in`?.25:1);f=[(t+n)/2-r,(t+n)/2+r]}let p=En(At(f,t.props),d,i.filter(e=>e.hasVisibleSeries).map(e=>e.seriesList),t.props),m=e===`reset`||e===`fit`,h=m&&(r.value?i.some(e=>t.independentYDomains.value[e.index]):Object.keys(t.sharedYDomains.value).length>0),g=i.length&&!Dn(d,o(i)),_=c?t.props.presentationMode||!t.props.zoomable?`disabled`:u&&Dn(u.xDomain,p)&&!h&&!g?`unchanged`:`applied`:`empty-data`;return{id:n,tracks:i,before:u,bounds:d,xDomain:p,status:_,resetsY:m}})}}function d(o,s={},c,l=`api`){let d=u(o,s,c);if(d.error)return{kind:`viewport`,status:d.error,targets:[]};let{entries:f}=d,p=r.value,m={commandId:`command-${++n}`,source:l,action:o},h=f.map(e=>({trackIndex:p?e.tracks[0]?.index:void 0,seriesIds:e.tracks.flatMap(e=>e.seriesList.map(e=>e.id))}));f.some(e=>e.status===`applied`||o===`reset`&&e.status===`unchanged`)&&t.cancel();let g=[...t.independentTransforms.value],_={...t.boundaries.value},v={...t.independentYDomains.value};for(let e of f)if(e.status===`applied`)if(o===`fit`&&(_[e.id]=e.bounds),o===`reset`&&delete _[e.id],p){let t=e.tracks[0];g[t.index]=Sn(e.xDomain,e.bounds,t.width),e.resetsY&&delete v[t.index]}else t.sharedTransform.value=Sn(e.xDomain,e.bounds,t.layout.innerWidth.value),e.resetsY&&(t.sharedYDomains.value={});f.some(e=>e.status===`applied`)&&(t.boundaries.value=_,t.independentTransforms.value=g,t.independentYDomains.value=v);let y=i(),b=f.map(e=>({trackId:e.id,status:e.status,before:e.before,after:y.find(t=>t.id===e.id)?.tracks.length?a(y.find(t=>t.id===e.id).tracks):void 0})),x=f.map(e=>{let t=y.find(t=>t.id===e.id)?.tracks??[],n=Object.fromEntries(t.map(e=>[e.series?.trackId??e.series?.id??e.id,e.yScale.domain()])),r=Object.values(n)[0];return p||t.length===1?{yStart:r?.[0],yEnd:r?.[1]}:{yRanges:n}});return b.forEach((e,n)=>{if(o===`reset`&&(e.status===`applied`||e.status===`unchanged`))t.emit(`zoom-reset`,{...m,...h[n]});else if(e.status===`applied`&&e.after){let[r,i]=e.after.xDomain,a={...m,...h[n],start:r,end:i,gesture:`command`,...x[n]};o!==`fit`&&t.emit(`zoom-intent`,a),t.emit(`zoom-change`,[r,i]),t.emit(`zoom-end`,a)}}),b.some(e=>e.status===`applied`)&&(0,e.nextTick)(t.configure),{kind:`viewport`,status:[`applied`,`unchanged`,`disabled`,`empty-data`].find(e=>b.some(t=>t.status===e))??`empty-data`,targets:b}}function f(e){if(typeof e==`object`)return d(`reset`,e);t.legacyReset(e)}function p(e,n){if(typeof n==`object`)return d(`set-domain`,n,e);e.every(Number.isFinite)&&e[0]!==e[1]&&s(n),t.legacySet(e,n)}let m=(0,e.computed)(()=>{let e=[`zoom-in`,`zoom-out`,`reset`,`fit`,`set-domain`],n=i().filter(e=>e.tracks.length).map(t=>({trackId:t.id,label:r.value?t.tracks[0].series?.name||t.id:`共享范围`,viewport:a(t.tracks),available:Object.fromEntries(e.map(e=>{let n=u(e,r.value?{trackId:t.id}:{},a(t.tracks).xDomain).entries[0];return[e,n?.status===`applied`||(e===`reset`||e===`set-domain`)&&n?.status===`unchanged`]}))}));return{mode:t.mode.mode.value,independent:r.value,targets:n,available:{"zoom-box":t.mode.canSetMode(`zoom`),pan:t.mode.canSetMode(`pan`),annotate:t.mode.canSetMode(`annotation`),export:!0,"zoom-in":n.some(e=>e.available[`zoom-in`]),"zoom-out":n.some(e=>e.available[`zoom-out`]),reset:n.some(e=>e.available.reset),fit:n.some(e=>e.available.fit)}}}),h=()=>JSON.parse(JSON.stringify(m.value));return(0,e.watch)(()=>JSON.stringify(m.value),()=>t.emit(`control-state-change`,h())),{controlState:m,getControlState:h,execute:d,clearBoundaries:s,restoreInitialBoundaries:c,resetViewport:f,setViewportDomain:p,zoomIn:e=>d(`zoom-in`,e),zoomOut:e=>d(`zoom-out`,e),fitToData:e=>d(`fit`,e),setInteractionMode:t.mode.setInteractionMode}}var kn=0;function An(t=`waveform`){let n=(0,e.getCurrentInstance)();return`${t}-${n?`v${n.uid}`:`f${++kn}`}`}function jn(e,t){return e>=Math.min(t[0],t[1])&&e<=Math.max(t[0],t[1])}function Mn(e,t,n){let r=Math.max(0,Math.min(e.x,Math.max(0,t-e.width))),i=Math.max(0,Math.min(e.y,Math.max(0,n-e.height)));return{...e,x:r,y:i,lineEndX:Math.max(r,Math.min(e.lineEndX,r+e.width)),lineEndY:Math.max(i,Math.min(e.lineEndY,i+e.height))}}function Nn(e,t,n,r,i,a,o){let s=In(e,t,n,r,i);return s.x>=0&&s.y>=0&&s.x+n<=a&&s.y+r<=o}function Pn(e,t,n,r,i,a){for(let o of[`top`,`bottom`,`right`,`left`,`top-right`,`top-left`,`bottom-right`,`bottom-left`])if(Nn(e,t,n,r,o,i,a))return o;return`top`}function Fn(e,t,n){let r=e.x+e.width/2,i=e.y+e.height/2,a=t-r,o=n-i;if(Math.abs(a)*e.height>Math.abs(o)*e.width){let t=a>=0?e.x+e.width:e.x,n=a===0?0:(t-r)/a;return{x:t,y:Math.max(e.y,Math.min(e.y+e.height,i+o*n))}}let s=o>=0?e.y+e.height:e.y,c=o===0?0:(s-i)/o;return{x:Math.max(e.x,Math.min(e.x+e.width,r+a*c)),y:s}}function In(e,t,n,r,i){let a=e-n/2,o=t-r/2,s=e+32,c=e-n-32,l=t-r-32,u=t+32;switch(i){case`top`:return{x:a,y:l};case`bottom`:return{x:a,y:u};case`right`:return{x:s,y:o};case`left`:return{x:c,y:o};case`top-right`:return{x:s,y:l};case`top-left`:return{x:c,y:l};case`bottom-right`:return{x:s,y:u};case`bottom-left`:return{x:c,y:u}}}function Ln(e,t,n){return{width:Math.min(t,Math.max(16,Math.min(240,Math.ceil(Math.max(...e.map(Yn),0))+16))),height:Math.min(n,Math.max(26,(e.length-1)*16+14+16))}}function Rn(e,t,n,r,i,a,o=0,s=0){let{width:c,height:l}=Ln(n,r,i),u=In(e,t,c,l,a),d=Mn({x:u.x+o,y:u.y+s,width:c,height:l,lineEndX:e,lineEndY:t},r,i),f=Fn(d,e,t);return{...d,lineEndX:f.x,lineEndY:f.y}}function zn(e,t,n,r){let i=[];return e.forEach(e=>{if(!Zn(e))return;let a=t.find(t=>t.series.id===e.seriesId);if(!a)return;let o=a.xScale.domain(),s=a.yScale.domain();if(!jn(e.x,o)||!jn(e.y,s))return;let c=Qn(e.text),l=a.left??0,u=a.width??n,d=a.xScale(e.x),f=l+d,p=a.yScale(e.y)+a.top,m=Math.min(a.height,Math.max(0,r-a.top)),h=p-a.top,g=Number.isFinite(e.labelOffsetX)&&e.labelOffsetX!==0||Number.isFinite(e.labelOffsetY)&&e.labelOffsetY!==0,{width:_,height:v}=Ln(c,u,m),y=g?`top`:Pn(d,h,_,v,u,m),b=Rn(d,h,c,u,m,y,Number.isFinite(e.labelOffsetX)?e.labelOffsetX:0,Number.isFinite(e.labelOffsetY)?e.labelOffsetY:0),x={...b,x:b.x+l,y:b.y+a.top,lineEndX:b.lineEndX+l,lineEndY:b.lineEndY+a.top};i.push({annotation:e,trackIndex:a.index,anchorX:f,anchorY:p,placement:y,lines:c,box:{...x},style:Xn(e.style)})}),i}var Bn={borderColor:`#1677ff`,textColor:`#333333`,backgroundColor:`rgba(255, 255, 255, 0.92)`},Vn=`12px Arial, sans-serif`;function Hn(e){return _e(e)?e:q(e)}function Un(e,t,n){let r=null,i=e.series.source??q(e.series.points);for(let a=0;a<i.length;a+=1){let o=i.pointAt(a);if(!Number.isFinite(o.x)||!Number.isFinite(o.y))continue;let s=e.xScale(o.x),c=e.top+e.yScale(o.y),l=Math.hypot(s-t,c-n);(!r||l<r.distance)&&(r={point:o,screenX:s,screenY:c,distance:l})}return r}function Wn(e,t){let n=Hn(e);if(!n.length||!Number.isFinite(t))return null;let r=n.visibleRange([t,t]).start,i=n.pointAt(Math.min(r,n.length-1)),a=n.pointAt(Math.max(0,r-1));return Math.abs(t-a.x)<Math.abs(i.x-t)?a:i}function Gn(e,t,n=`linear`){let r=Hn(e);if(!r.length||!Number.isFinite(t))return null;let i=r.pointAt(0),a=r.pointAt(r.length-1);if(t<i.x||t>a.x)return null;if(r.length===1)return t===i.x?{...i}:null;let o=r.visibleRange([t,t]).start,s=r.pointAt(Math.min(o,r.length-1));if(s.x===t||o===0)return{x:t,y:s.y};if(n===`none`)return null;let c=r.pointAt(o-1);if(n===`step-start`)return{x:t,y:s.y};if(n===`step-middle`)return{x:t,y:t<(c.x+s.x)/2?c.y:s.y};if(n===`step-end`||n===`step-after`)return{x:t,y:c.y};let l=s.x-c.x;if(l===0)return{x:t,y:s.y};let u=(t-c.x)/l;return{x:t,y:c.y+(s.y-c.y)*u}}function Kn(e,t,n,r){return e.flatMap(e=>{if(e.series.lineType===`none`){let t=Un(e,n,r);return t?[{trackIndex:e.index,seriesId:e.series.id,name:e.series.name?.trim()||e.series.id,color:e.series.color||Bn.borderColor,unit:e.series.unit,...t}]:[]}let i=Gn(e.series.source??q(e.series.points),t,e.series.lineType);if(!i)return[];let a=Wn(e.series.source??q(e.series.points),t);if(!a)return[];let o=e.xScale(i.x),s=e.top+e.yScale(i.y),c=e.xScale(a.x),l=e.top+e.yScale(a.y);return[{trackIndex:e.index,seriesId:e.series.id,name:e.series.name?.trim()||e.series.id,color:e.series.color||Bn.borderColor,unit:e.series.unit,point:a,screenX:c,screenY:l,distance:Math.hypot(o-n,s-r)}]}).sort((e,t)=>e.distance-t.distance||e.trackIndex-t.trackIndex)}var qn;function Jn(e){return Array.from(e).reduce((e,t)=>e+(t.codePointAt(0)>255?12:6.7),0)}function Yn(e){return qn===void 0&&(qn=null,typeof document<`u`&&typeof CanvasRenderingContext2D<`u`&&(qn=document.createElement(`canvas`).getContext(`2d`),qn&&(qn.font=Vn))),qn?.measureText(e).width??Jn(e)}function Xn(e){return{borderColor:e?.borderColor||Bn.borderColor,textColor:e?.textColor||Bn.textColor,backgroundColor:e?.backgroundColor||Bn.backgroundColor}}function Zn(e){return!!(e.id&&e.seriesId)&&Number.isFinite(e.x)&&Number.isFinite(e.y)&&typeof e.text==`string`&&e.text.trim().length>0}function Qn(e,t=10){let n=[];return e.split(/\r?\n/).forEach(e=>{let r=Array.from(e);if(r.length===0){n.push(``);return}for(let e=0;e<r.length;e+=t)n.push(r.slice(e,e+t).join(``))}),n.length?n:[``]}var $n=[`data-annotation-id`,`data-placement`,`onPointerdown`,`onContextmenu`],er=[`id`],tr=[`fill`],nr=[`x1`,`y1`,`x2`,`y2`,`stroke`,`marker-end`],rr=[`x`,`y`,`width`,`height`,`fill`,`stroke`],ir=[`x`,`y`,`fill`],ar=[`x`,`dy`],or=(0,e.defineComponent)({__name:`WaveformAnnotationLayer`,props:{annotations:{},visible:{type:Boolean},interactive:{type:Boolean,default:!0},cancelKey:{},dataVersion:{}},emits:[`contextmenu`,`drag-start`,`move`,`drag-end`],setup(t,{emit:n}){let r=t,i=n,a=(0,e.ref)(new Map),o=(0,e.ref)(null),s=null,c=null,l=0,u=(0,e.computed)(()=>{let e=new Map;return r.annotations.forEach(t=>{let n=a.value.get(t.annotation.id);n?e.set(t.annotation.id,{...t.box,x:t.box.x+n.x,y:t.box.y+n.y,lineEndX:t.box.lineEndX+n.x,lineEndY:t.box.lineEndY+n.y}):e.set(t.annotation.id,t.box)}),e});function d(e){return u.value.get(e.annotation.id)??e.box}function f(){c=null,s&&(a.value=new Map(a.value).set(s.annotationId,{x:s.deltaX,y:s.deltaY}))}function p(){c===null&&(c=requestAnimationFrame(f))}function m(e,t){if(!r.interactive||t.button!==0||s)return;t.preventDefault(),t.stopPropagation();let n=t.currentTarget;if(!n||typeof n.setPointerCapture!=`function`)return;n.setPointerCapture(t.pointerId),i(`drag-start`);let o=a.value.get(e.annotation.id),c=(Number.isFinite(e.annotation.labelOffsetX)?e.annotation.labelOffsetX:0)+(o?.x??0),l=(Number.isFinite(e.annotation.labelOffsetY)?e.annotation.labelOffsetY:0)+(o?.y??0);s={annotationId:e.annotation.id,pointerId:t.pointerId,startX:t.clientX,startY:t.clientY,deltaX:0,deltaY:0,initialOffsetX:c,initialOffsetY:l,moved:!1,target:n}}function h(e){if(!r.interactive||(e.stopPropagation(),!s||e.pointerId!==s.pointerId))return;let t=e.clientX-s.startX,n=e.clientY-s.startY;s.deltaX=t,s.deltaY=n,s.moved=s.moved||Math.hypot(t,n)>=2,s.moved&&p()}function g(e){if(!r.interactive||(e.preventDefault(),e.stopPropagation(),!s||e.pointerId!==s.pointerId))return;let t=s,n=e.clientX-t.startX,u=e.clientY-t.startY;if(t.deltaX=n,t.deltaY=u,t.moved=Math.hypot(n,u)>=2,t.moved=t.moved||Math.hypot(n,u)>=2,c!==null&&(cancelAnimationFrame(c),c=null),t.moved){a.value=new Map(a.value).set(t.annotationId,{x:t.deltaX,y:t.deltaY});let n=t.initialOffsetX+t.deltaX,r=t.initialOffsetY+t.deltaY;o.value={annotationId:t.annotationId,x:n,y:r},s=null,l=e.timeStamp,i(`move`,t.annotationId,n,r)}else s=null;t.target.hasPointerCapture(t.pointerId)&&t.target.releasePointerCapture(t.pointerId),i(`drag-end`,!1)}(0,e.watch)(()=>r.annotations,e=>{let t=o.value;if(!t)return;let n=e.find(e=>e.annotation.id===t.annotationId);if(!n)return;let r=Number.isFinite(n.annotation.labelOffsetX)?n.annotation.labelOffsetX:0,i=Number.isFinite(n.annotation.labelOffsetY)?n.annotation.labelOffsetY:0;r===t.x&&i===t.y&&(a.value=new Map(a.value).set(t.annotationId,{x:0,y:0}),o.value=null)});function _(e){e.preventDefault(),e.stopPropagation(),!(!s||e.pointerId!==s.pointerId)&&v()}function v(){if(!s)return;let e=s;s=null,a.value=new Map(a.value).set(e.annotationId,{x:0,y:0}),c!==null&&(cancelAnimationFrame(c),c=null),e.target.hasPointerCapture(e.pointerId)&&e.target.releasePointerCapture(e.pointerId),i(`drag-end`,!0)}(0,e.watch)(()=>r.interactive,e=>{e||v()}),(0,e.watch)([()=>r.cancelKey,()=>r.dataVersion,()=>r.visible],v),(0,e.onBeforeUnmount)(v);function y(e,t){r.interactive&&(t.preventDefault(),t.stopPropagation(),!(t.timeStamp-l<100)&&i(`contextmenu`,e,t))}function b(e){return`waveform-annotation-arrow-${e.replace(/[^a-zA-Z0-9_-]/g,`-`)}`}return(t,n)=>r.visible?((0,e.openBlock)(),(0,e.createElementBlock)(`g`,{key:0,class:(0,e.normalizeClass)([`waveform-annotation-layer`,{"waveform-annotation-layer--interactive":r.interactive}])},[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(r.annotations,t=>((0,e.openBlock)(),(0,e.createElementBlock)(`g`,{key:t.annotation.id,class:`waveform-annotation`,"data-annotation-id":t.annotation.id,"data-placement":t.placement,onPointerdown:e=>m(t,e),onPointermove:h,onPointerup:g,onPointercancel:_,onContextmenu:e=>y(t.annotation.id,e)},[(0,e.createElementVNode)(`defs`,null,[(0,e.createElementVNode)(`marker`,{id:b(t.annotation.id),markerWidth:`8`,markerHeight:`8`,refX:`8`,refY:`4`,orient:`auto`,markerUnits:`userSpaceOnUse`},[(0,e.createElementVNode)(`path`,{d:`M0,0 L8,4 L0,8 Z`,fill:t.style.borderColor},null,8,tr)],8,er)]),(0,e.createElementVNode)(`line`,{class:`waveform-annotation__arrow`,x1:d(t).lineEndX,y1:d(t).lineEndY,x2:t.anchorX,y2:t.anchorY,stroke:t.style.borderColor,"marker-end":`url(#${b(t.annotation.id)})`},null,8,nr),(0,e.createElementVNode)(`rect`,{class:`waveform-annotation__box`,x:d(t).x,y:d(t).y,width:d(t).width,height:d(t).height,fill:t.style.backgroundColor,stroke:t.style.borderColor},null,8,rr),(0,e.createElementVNode)(`text`,{class:`waveform-annotation__text`,x:d(t).x+d(t).width/2,y:d(t).y+d(t).height/2-(t.lines.length-1)*(0,e.unref)(16)/2,fill:t.style.textColor,style:(0,e.normalizeStyle)({font:(0,e.unref)(Vn)}),"text-anchor":`middle`,"dominant-baseline":`central`},[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(t.lines,(n,r)=>((0,e.openBlock)(),(0,e.createElementBlock)(`tspan`,{key:`${t.annotation.id}-${r}`,x:d(t).x+d(t).width/2,dy:r===0?0:(0,e.unref)(16)},(0,e.toDisplayString)(n),9,ar))),128))],12,ir)],40,$n))),128))],2)):(0,e.createCommentVNode)(``,!0)}}),sr=(e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n},cr=sr(or,[[`__scopeId`,`data-v-18b3ad3a`]]),lr=sr((0,e.defineComponent)({__name:`WaveformAnnotationContextMenu`,props:{visible:{type:Boolean},x:{},y:{},canEdit:{type:Boolean}},emits:[`edit`,`delete`,`close`],setup(t,{emit:n}){let r=t,i=n;return(t,n)=>r.visible&&r.canEdit?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:0,class:`waveform-annotation-context-menu`,style:(0,e.normalizeStyle)({left:`${r.x}px`,top:`${r.y}px`}),role:`menu`,onContextmenu:n[3]||=(0,e.withModifiers)(()=>{},[`prevent`])},[(0,e.createElementVNode)(`button`,{type:`button`,role:`menuitem`,onClick:n[0]||=e=>i(`edit`)},`编辑标注`),(0,e.createElementVNode)(`button`,{type:`button`,role:`menuitem`,onClick:n[1]||=e=>i(`delete`)},`删除标注`),(0,e.createElementVNode)(`button`,{type:`button`,role:`menuitem`,onClick:n[2]||=e=>i(`close`)},`取消`)],36)):(0,e.createCommentVNode)(``,!0)}}),[[`__scopeId`,`data-v-c70c98a1`]]),ur=1;function Q(e){throw TypeError(`Invalid waveform annotation file: ${e}`)}function dr(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function fr(e,t,n){let r=e[t];return(typeof r!=`string`||r.trim().length===0)&&Q(`${n}.${t} must be a non-empty string`),r}function pr(e,t,n){let r=e[t];if(r!==void 0)return typeof r!=`string`&&Q(`${n}.${t} must be a string`),r}function mr(e,t,n){let r=e[t];return(typeof r!=`number`||!Number.isFinite(r))&&Q(`${n}.${t} must be a finite number`),r}function hr(e,t,n){let r=e[t];if(r!==void 0)return(typeof r!=`number`||!Number.isFinite(r))&&Q(`${n}.${t} must be a finite number`),r}function gr(e,t){if(e===void 0)return;dr(e)||Q(`${t} must be an object`);let n=pr(e,`borderColor`,t),r=pr(e,`textColor`,t),i=pr(e,`backgroundColor`,t);return{...n!==void 0&&{borderColor:n},...r!==void 0&&{textColor:r},...i!==void 0&&{backgroundColor:i}}}function _r(e,t){let n=`annotations[${t}]`;dr(e)||Q(`${n} must be an object`);let r=fr(e,`text`,n);r.length>40&&Q(`${n}.text must not exceed 40 characters`);let i=hr(e,`labelOffsetX`,n),a=hr(e,`labelOffsetY`,n),o=pr(e,`createdAt`,n),s=gr(e.style,`${n}.style`);return{id:fr(e,`id`,n),seriesId:fr(e,`seriesId`,n),x:mr(e,`x`,n),y:mr(e,`y`,n),text:r,...i!==void 0&&{labelOffsetX:i},...a!==void 0&&{labelOffsetY:a},...s!==void 0&&{style:s},...o!==void 0&&{createdAt:o}}}function vr(e){let t=e.map(_r),n=new Set;return t.forEach((e,t)=>{n.has(e.id)&&Q(`annotations[${t}].id must be unique`),n.add(e.id)}),t}function yr(e){return JSON.stringify({version:ur,annotations:vr(e)},null,2)}function br(e){typeof e!=`string`&&Q(`input must be a JSON string`);let t;try{t=JSON.parse(e)}catch{Q(`input is not valid JSON`)}return dr(t)||Q(`root must be an object`),t.version!==ur&&Q(`version must be ${ur}`),Array.isArray(t.annotations)||Q(`annotations must be an array`),vr(t.annotations)}function xr(){let t=(0,e.ref)(null),n=(0,e.ref)(null);return{editorDraft:t,contextMenu:n,openCreate:(e,r,i)=>{t.value={mode:`add`,annotation:{id:r(),seriesId:e.seriesId,x:e.xValue??e.point.x,y:e.point.y,text:``,createdAt:new Date().toISOString()},anchor:i},n.value=null},openEdit:(e,r)=>{t.value={mode:`edit`,annotation:{...e},previous:{...e},anchor:r},n.value=null},openContextMenu:e=>{n.value=e},closeEditor:()=>{t.value=null},closeContextMenu:()=>{n.value=null}}}var Sr=0;function Cr(){return Sr+=1,typeof crypto<`u`&&typeof crypto.randomUUID==`function`?crypto.randomUUID():`annotation-${Date.now()}-${Sr}`}function wr(n){let{props:r,emit:i,container:a,chartSeries:o,hiddenSeriesIdSet:s,internalHiddenSeriesIds:c,annotationInteraction:l,editorSeriesOptions:u,trackLayouts:d,annotationLayoutsForTrack:f,resolveSeriesYScale:p,chartWidth:m,chartHeight:h,innerWidth:g,resolvedChartLeftMargin:_,titleAreaHeight:v,chartTopMargin:y,activeInteractionMode:b,isPresentationMode:x}=n,S=(0,e.ref)(``);function C(e){if(!o.value.some(t=>t.id===e))return;let t=new Set(s.value),n=t.has(e);n?t.delete(e):t.add(e);let a=Array.from(t);r.hiddenSeriesIds===void 0&&(c.value=t),i(`update:hidden-series-ids`,a),i(`series-visibility-change`,{seriesId:e,visible:n,hiddenSeriesIds:a})}function w(e,n){let r=e.currentTarget;if(!r)return{x:m.value/2,y:h.value/2};let[i,a]=(0,t.pointer)(e,r),o=n===void 0?void 0:d.value[n];return{x:_.value+(o?o.left+i:i),y:v.value+y.value+(o?o.top+a:a)}}function T(e){let t=d.value.find(t=>t.seriesList.some(t=>t.id===e.seriesId));return{x:t?_.value+t.left+t.xScale(e.x):m.value/2,y:t?v.value+y.value+t.top+p(t,e.seriesId)(e.y):h.value/2}}function E(e,t,n){S.value=``,l.openCreate(e,Cr,t),u.value=n;let r=l.editorDraft.value,i=d.value.find(t=>t.index===e.trackIndex)?.seriesList.find(t=>t.id===e.seriesId);r?.mode===`add`&&(r.annotation.style={borderColor:i?.color||`#1677ff`,textColor:`#333333`,backgroundColor:`rgba(255, 255, 255, 0.92)`})}function D(e){if(x.value)return;let t=l.editorDraft.value,n=u.value.find(t=>t.seriesId===e),r=d.value.find(t=>t.seriesList.some(t=>t.id===e)),i=r?.seriesList.find(t=>t.id===e)?.source,a=i?.pointAt(0),o=i?.pointAt((i?.length??0)-1),s=t?i?.nearestPoint(t.annotation.x):void 0;if(!t||!n||!r||!a||!o||!s){S.value=`当前波形没有有效数据`;return}if(t.annotation.x<a.x||t.annotation.x>o.x){S.value=`时间超出当前波形范围`;return}S.value=``,t.annotation={...t.annotation,seriesId:e,y:s.y,style:{...t.annotation.style,borderColor:n.color}}}function O(e){if(x.value)return;let t=l.editorDraft.value,n=Number(e);if(!t||!Number.isFinite(n)){S.value=`请输入有效的时间`;return}let i=r.timeUnit===`ms`?n/1e3:n,a=d.value.find(e=>e.seriesList.some(e=>e.id===t.annotation.seriesId))?.seriesList.find(e=>e.id===t.annotation.seriesId)?.source,o=a?.pointAt(0),s=a?.pointAt((a?.length??0)-1);if(!a||!o||!s){S.value=`当前波形没有有效数据`;return}if(i<o.x||i>s.x){S.value=`时间超出当前波形范围`;return}let c=a.nearestPoint(i);S.value=``,t.annotation={...t.annotation,x:c.x,y:c.y}}function k(){S.value=``,l.closeEditor(),u.value=[]}function A(e,t,n){if(n!==void 0){let e=d.value[n];return e?.hasVisibleSeries?e:void 0}return Yt(d.value.filter(e=>e.hasVisibleSeries),e,t)}function j(e,n){let r=e.currentTarget;if(!r||!d.value.length)return null;let[i,a]=(0,t.pointer)(e,r),o=n===void 0?a:a+(d.value[n]?.top??0),s=A(i,o,n);if(!s)return null;let c=Math.max(0,Math.min(g.value,i)),l=Math.max(0,Math.min(s.width,c-s.left)),u=s.xScale.invert(l);return{candidates:Kn(f(s),u,l,o),editorAnchor:w(e,n)}}function M(e){let t=e[0];return!t||t.distance>12?[]:e.filter(e=>e.distance<=12&&e.distance-t.distance<5)}function N(e,t){if(x.value||!r.annotationsVisible||e.button!==0||b.value!==`annotation`)return;let n=j(e,t);if(!n||!n.candidates.length)return;let i=M(n.candidates);e.preventDefault(),e.stopPropagation(),E(i[0]??n.candidates[0],n.editorAnchor,n.candidates)}function P(e){let t=e.target;t instanceof Element&&t.closest(`input, textarea, [contenteditable]:not([contenteditable="false"])`)||e.preventDefault()}function F(e,t){if(x.value||!r.annotationsVisible||!a.value||(u.value=[],!r.annotations.find(t=>t.id===e)))return;let n=a.value.getBoundingClientRect(),i={x:Math.max(0,Math.min(t.clientX-n.left,m.value)),y:Math.max(0,Math.min(t.clientY-n.top,h.value))};l.openContextMenu({annotationId:e,x:Math.max(4,Math.min(t.clientX-n.left,m.value-120)),y:Math.max(4,Math.min(t.clientY-n.top,h.value-110)),editorAnchor:i})}function I(e,t,n){x.value||!r.annotations.find(t=>t.id===e)||!Number.isFinite(t)||!Number.isFinite(n)||i(`update:annotations`,r.annotations.map(r=>r.id===e?{...r,labelOffsetX:t,labelOffsetY:n}:r))}function L(){if(x.value)return;S.value=``;let e=l.contextMenu.value,t=r.annotations.find(t=>t.id===e?.annotationId);if(!t)return;let n=d.value.find(e=>e.seriesList.some(e=>e.id===t.seriesId));u.value=n?Kn(f(n),t.x,n.xScale(t.x),n.top+p(n,t.seriesId)(t.y)):[],l.openEdit(t,e?.editorAnchor??T(t))}function R(){if(x.value)return;let e=l.contextMenu.value?.annotationId,t=r.annotations.find(t=>t.id===e);t&&(i(`update:annotations`,r.annotations.filter(e=>e.id!==t.id)),i(`annotation-delete`,t),l.closeContextMenu())}function z(e){if(x.value)return;let t=l.editorDraft.value;!t||S.value||(t.mode===`add`?(i(`update:annotations`,[...r.annotations,e]),i(`annotation-create`,e)):(i(`update:annotations`,r.annotations.map(t=>t.id===e.id?e:t)),i(`annotation-update`,e,t.previous)),k())}return{toggleSeriesVisibility:C,changeDraftSeries:D,changeDraftTime:O,timeError:S,cancelAnnotation:k,resolveTrackAtPointer:A,handleAnnotationClick:N,handleNativeContextMenu:P,handleExistingAnnotationContextMenu:F,handleAnnotationMove:I,editContextAnnotation:L,deleteContextAnnotation:R,confirmAnnotation:z}}function Tr(e){let{emit:n,hoverState:r,suppressHoverUntilMove:i,hoverThrottle:a,selection:o,trackLayouts:s,innerWidth:c,resolvedChartLeftMargin:l,titleAreaHeight:u,chartTopMargin:d,sharedOverlayElement:f,isPresentationMode:p,updateViewportDrag:m,resolveTrackAtPointer:h}=e,g=()=>a.cancel(),_=e=>a.schedule(e),v=e=>r.points.length===e.length&&e.every((e,t)=>{let n=r.points[t];return n?.id===e.id&&n.trackIndex===e.trackIndex&&n.point===e.point}),y=(e,t,i,a,o)=>{p.value||(v(e)||(r.points=e),r.trackIndex=t,r.queryX=i,r.crosshairXByTrack=a,r.position=o,n(`point-hover`,r.points.find(e=>e.point)?.point??null))},b=()=>{g(),r.points=[],r.trackIndex=null,r.queryX=null,r.crosshairXByTrack={},n(`point-hover`,null)},x=()=>{p.value||b()},S=(e,t,n)=>({id:e.id,shotNo:e.shotNo,name:e.name,color:e.color,unit:e.unit,trackIndex:t,point:n}),C=()=>{i.value=!0,b()},w=(e=!1)=>{i.value=!e,b()},T=()=>i.value?(i.value=!1,b(),!0):!1,E=(e,t)=>{let n=e.source??q(e.points),r=n.pointAt(0),i=n.pointAt(n.length-1);if(!(!r||!i))return t<=r.x?r:t>=i.x?i:n.nearestPoint(t)},D=(e,t)=>{let n,r=-1/0;if(e.seriesList.forEach(e=>{let t=e.source??q(e.points),i=t.pointAt(0),a=t.pointAt(t.length-1);if(!i||!a)return;let o=a.x-i.x;o>r&&(r=o,n=[i.x,a.x])}),n)return Math.max(n[0],Math.min(n[1],t))};return{cancelPendingHover:g,clearHover:b,handlePointerLeave:x,beginAnnotationDrag:C,endAnnotationDrag:w,handleIndependentPointerMove:(e,n)=>{if(p.value)return;if(o.value?.trackIndex===n&&o.value.independent){m(e);return}if(T())return;let r=e.currentTarget;if(!r)return;let[i,a]=(0,t.pointer)(e,r),f=s.value[n];!f||!f.hasVisibleSeries||_(()=>{let e=s.value[n];if(!e||!e.hasVisibleSeries||e!==f)return;let t=f.xScale.invert(Math.max(0,Math.min(c.value,i))),r=f.seriesList.map(e=>S(e,n,E(e,t)??null)),o=D(f,t);y(r,n,t,o===void 0?{}:{[n]:o},{x:l.value+f.left+i,y:u.value+d.value+f.top+a})})},handleSharedPointerMove:e=>{if(p.value)return;if(o.value&&!o.value.independent){m(e);return}if(T()||!f.value||!s.value.length)return;let[n,r]=(0,t.pointer)(e,f.value);_(()=>{let e=h(n,r),t=(e?.hasVisibleSeries?e:void 0)??s.value.find(e=>e.hasVisibleSeries);if(!t)return;let i=Math.max(0,Math.min(t.width,n-t.left)),a=t.xScale.invert(i),o=s.value.flatMap(e=>e.seriesList.map(t=>S(t,e.index,E(t,a)??null))),c=Object.fromEntries(s.value.flatMap(e=>{let t=D(e,a);return t===void 0?[]:[[e.index,t]]}));y(o,null,a,c,{x:l.value+n,y:u.value+d.value+r})})}}}function Er(e,t){try{e?.releasePointerCapture?.(t)}catch{}}function Dr(e){return{...e,currentX:e.startX,currentY:e.startY,xDomain:[...e.xDomain],yDomains:Object.fromEntries(Object.entries(e.yDomains).map(([e,t])=>[e,[...t]]))}}function Or(e,t){return{...e,...t}}function kr(e){return{state:e,accepted:!1,completed:null}}function Ar(e,t){switch(t.type){case`begin`:return e?kr(e):{state:Dr(t.gesture),accepted:!0,completed:null};case`move`:return!e||e.pointerId!==t.pointerId?kr(e):{state:Or(e,t.position),accepted:!0,completed:null};case`finish`:return!e||e.pointerId!==t.pointerId?kr(e):{state:null,accepted:!0,completed:Or(e,t.position)};case`cancel`:return!e||t.pointerId!==void 0&&e.pointerId!==t.pointerId?kr(e):{state:null,accepted:!0,completed:null};case`reset`:return{state:null,accepted:!0,completed:null}}}function jr(t){return(n,r)=>{if(!(!Number.isFinite(n[0])||!Number.isFinite(n[1])||n[0]===n[1])){if(t.cancelPendingZoom(),t.cancelViewportDrag(),t.props.displayMode===`independent`){let e=r===void 0?t.trackLayouts.value.map(e=>e.index):[r],i=[...t.independentTransforms.value];e.forEach(e=>{let r=t.trackLayouts.value.find(t=>t.index===e);if(!r)return;let a=t.resolveInitialTrackDomain(r),o=En(n,a,[r.seriesList],t.props);i[e]=Sn(o,a,r.width)}),t.independentTransforms.value=i}else{let e=t.initialXDomain.value,r=En(n,e,t.trackLayouts.value.filter(e=>e.hasVisibleSeries).map(e=>e.seriesList),t.props);t.sharedTransform.value=Sn(r,e,t.innerWidth.value)}t.clearHover(),t.editorSeriesOptions.value=[],(0,e.nextTick)(t.configureZoom)}}}function Mr(e){let{props:t,emit:n,resolveInitialTrackDomain:r,initialXDomain:i,independentTransforms:a,sharedTransform:o,innerWidth:s,trackLayouts:c,chartTracks:l,independentYDomains:u,sharedYDomains:d}=e;return(e,f)=>{let p=f.width||1,m=f.height||1,h=e.currentX-e.startX,g=e.currentY-e.startY,_=e.xDomain[1]-e.xDomain[0],v=e.independent?r(f):i.value,y=wn(t)??v,b=Cn(jt(Cn([e.xDomain[0]-h/p*_,e.xDomain[1]-h/p*_],y),t),y);if(e.independent){let e=[...a.value];e[f.index]=Sn(b,v,p),a.value=e}else o.value=Sn(b,v,s.value);if(wn(t))return n(`zoom-change`,b),b;let x=e.independent?[f]:c.value.filter(e=>e.hasVisibleSeries),S={...u.value},C={...d.value};return x.forEach(n=>{let r=l.value.find(e=>e.id===n.id);if(r&&ee(r,t.yDomain,t.yDomains))return;let i=n.series?.trackId??n.series?.id??n.id,a=e.yDomains[i]??n.yScale.domain(),o=r?.yDomain??a,s=a[1]-a[0],c=Cn([a[0]+g/m*s,a[1]+g/m*s],o);e.independent?S[n.index]=c:C[i]=c}),e.independent?u.value=S:d.value=C,n(`zoom-change`,b),b}}function Nr(e){return[...e].sort().join(`\0`)}function Pr(e,t){let n=Nr(t);return e.find(e=>Nr(e.seriesList.map(e=>e.id))===n)}function Fr(e,t,n,r){e(`zoom-intent`,r?{start:t[0],end:t[1],trackIndex:n.index,seriesIds:n.seriesList.map(e=>e.id),gesture:`box`}:{start:t[0],end:t[1],gesture:`box`})}function Ir(e,t,n){for(let r of n){let n=Pr(t,r);if(!n)continue;let i=n.xScale.domain(),a=n.yScale.domain();e(`zoom-end`,{start:i[0],end:i[1],yStart:a[0],yEnd:a[1],trackIndex:n.index,seriesIds:[...r],gesture:`wheel`})}}function Lr(e,t,n){let r=n.filter(e=>e.hasVisibleSeries);if(r.length===1){let n=r[0]?.yScale.domain();e(`zoom-end`,{start:t[0],end:t[1],yStart:n?.[0],yEnd:n?.[1],gesture:`wheel`});return}e(`zoom-end`,{start:t[0],end:t[1],yRanges:Object.fromEntries(r.map(e=>[e.series?.trackId??e.series?.id??e.id,e.yScale.domain()])),gesture:`wheel`})}function Rr(n){let{props:r,emit:i,selection:a,spacePressed:o,trackLayouts:s,chartTracks:c,initialXDomain:l,innerWidth:u,innerHeight:d,sharedOverlayElement:f,sharedTransform:p,independentTransforms:m,sharedYDomains:h,independentYDomains:g,isZoomMode:_,isPresentationMode:v,editorSeriesOptions:y,resolveInitialTrackDomain:b,canZoomTrack:x,canZoomSharedTracks:S,configureZoom:C,cancelPendingZoom:w,clearHover:T,resolveTrackAtPointer:E}=n,D=(0,e.shallowRef)(),O=(e,t)=>{let n=D.value,r=t?.currentTarget;Er(n,e),r&&r!==n&&Er(r,e)},k=(e,t)=>{let n=a.value;!n||n.pointerId!==e||(O(e,t),a.value=Ar(a.value,{type:`cancel`,pointerId:e}).state,D.value=void 0)},A=(0,e.computed)(()=>{let e=a.value;if(!e)return null;let t=s.value.find(t=>t.index===e.trackIndex);return{x:Math.min(e.startX,e.currentX)+(e.independent?t?.left??0:0),y:Math.min(e.startY,e.currentY)+(e.independent?t?.top??0:0),width:Math.abs(e.currentX-e.startX),height:Math.abs(e.currentY-e.startY)}}),j=()=>Object.fromEntries(s.value.filter(e=>e.hasVisibleSeries).map(e=>[e.series?.trackId??e.series?.id??e.id,e.yScale.domain()])),M=(e,n,i)=>{if(v.value)return;let c=r.pannable&&(r.interactionMode===`pan`||_.value&&o.value);if(!r.zoomable&&!c||!_.value&&!c||e.button!==0)return;let l=e.currentTarget,f=s.value.find(e=>e.index===n);if(!f)return;let[p,m]=(0,t.pointer)(e,l),h=Math.max(0,Math.min(i?f.width:u.value,p)),g=Math.max(0,Math.min(i?f.height:d.value,m)),y=Ar(a.value,{type:`begin`,gesture:{trackIndex:n,independent:i,startX:h,startY:g,pointerId:e.pointerId,kind:c?`pan`:`box`,xDomain:f.xScale.domain(),yDomains:j()}});y.accepted&&(a.value=y.state,D.value=l,l.setPointerCapture?.(e.pointerId),T(),e.preventDefault())},N=e=>{if(!f.value)return;let[n,r]=(0,t.pointer)(e,f.value),i=E(n,r),a=(i?.hasVisibleSeries?i:void 0)??s.value.find(e=>e.hasVisibleSeries);a&&M(e,a.index,!1)},P=Mr(n),F=e=>{if(v.value)return;let n=a.value,r=D.value;if(!n||!r||e.pointerId!==n.pointerId)return;let i=s.value.find(e=>e.index===n.trackIndex);if(!i)return;let[o,c]=(0,t.pointer)(e,r),l=Math.max(0,Math.min(n.independent?i.width:u.value,o)),f=Math.max(0,Math.min(n.independent?i.height:d.value,c)),p=Ar(a.value,{type:`move`,pointerId:e.pointerId,position:{currentX:l,currentY:f}});if(!p.accepted||!p.state)return;let m=p.state;a.value=m,m.kind===`pan`&&P(m,i),e.preventDefault()},I=e=>{let t=a.value;!t||e&&e.pointerId!==t.pointerId||k(t.pointerId,e)},L=t=>{let n=s.value.find(e=>e.index===t.trackIndex);if(!n||(t.independent?!x(n):!S()))return;let a=t.independent?0:n.left,o=Math.max(0,Math.min(n.width,Math.min(t.startX,t.currentX)-a)),c=Math.max(0,Math.min(n.width,Math.max(t.startX,t.currentX)-a));if(c-o<6)return;let d=t.independent?b(n):l.value,f=t.independent?[n.seriesList]:s.value.filter(e=>e.hasVisibleSeries).map(e=>e.seriesList),h=En([n.xScale.invert(o),n.xScale.invert(c)],d,f,r);if(t.independent){let e=[...m.value];e[n.index]=Sn(h,d,n.width),m.value=e}else p.value=Sn(h,d,u.value);Fr(i,h,n,t.independent);let g=t.independent?[n]:s.value.filter(e=>e.hasVisibleSeries),_=Object.fromEntries(g.map(e=>[e.series?.trackId??e.series?.id??e.id,e.yScale.domain()]));if(i(`zoom-change`,h),t.independent){let e=_[n.series?.trackId??n.series?.id??n.id];i(`zoom-end`,{start:h[0],end:h[1],trackIndex:n.index,seriesIds:n.seriesList.map(e=>e.id),yStart:e?.[0],yEnd:e?.[1],gesture:`box`})}else if(g.length===1){let e=Object.values(_)[0];i(`zoom-end`,{start:h[0],end:h[1],yStart:e?.[0],yEnd:e?.[1],gesture:`box`})}else i(`zoom-end`,{start:h[0],end:h[1],yRanges:_,gesture:`box`});(0,e.nextTick)(C)},R=n=>{if(v.value){I();return}let r=a.value;if(!r||n.pointerId!==r.pointerId)return;let o=s.value.find(e=>e.index===r.trackIndex),c=D.value;if(!o||!c||!c.parentNode){k(r.pointerId,n);return}let[l,f]=(0,t.pointer)(n,c),p=Math.max(0,Math.min(r.independent?o.width:u.value,l)),m=Math.max(0,Math.min(r.independent?o.height:d.value,f)),h=Ar(a.value,{type:`finish`,pointerId:n.pointerId,position:{currentX:p,currentY:m}}).completed;if(h){if(a.value=null,O(h.pointerId,n),D.value=void 0,n.preventDefault(),h.kind===`pan`){let t=P(h,o);t.some((e,t)=>Math.abs(e-h.xDomain[t])>1e-12)&&i(`pan-end`,{start:t[0],end:t[1],...h.independent?{trackIndex:o.index,seriesIds:o.seriesList.map(e=>e.id)}:{}}),(0,e.nextTick)(C);return}Math.abs(h.currentX-h.startX)>=6&&L(h)}},z=i=>{if(n.clearBoundaries?.(i),w(),I(),r.displayMode===`independent`&&i!==void 0){let e=[...m.value];e[i]=t.zoomIdentity,m.value=e;let n={...g.value};delete n[i],g.value=n}else p.value=t.zoomIdentity,m.value=c.value.map(()=>t.zoomIdentity),h.value={},g.value={};T(),y.value=[],(0,e.nextTick)(C)};return{selectionBox:A,beginViewportDrag:M,beginSharedViewportDrag:N,updateViewportDrag:F,finishViewportDrag:R,cancelViewportDrag:I,resetViewport:z,setViewportDomain:jr({props:r,trackLayouts:s,initialXDomain:l,resolveInitialTrackDomain:b,innerWidth:u,sharedTransform:p,independentTransforms:m,cancelPendingZoom:w,cancelViewportDrag:I,clearHover:T,editorSeriesOptions:y,configureZoom:C}),requestViewportReset:e=>{if(!(v.value||!r.zoomable||!_.value)){if(r.displayMode===`independent`){let t=(e.target instanceof Element?e.target:null)?.closest(`[data-independent-overlay-index]`),n=Number(t?.getAttribute(`data-independent-overlay-index`)),r=s.value.find(e=>e.index===n);if(!r)return;e.preventDefault(),z(n),i(`zoom-reset`,{trackIndex:n,seriesIds:r.legendSeries.map(e=>e.id)});return}e.preventDefault(),z(),i(`zoom-reset`,{})}}}}function zr(){let e=null,t=null;function n(n){t=n,e===null&&(e=requestAnimationFrame(()=>{e=null;let n=t;t=null,n?.()}))}function r(){t=null,e!==null&&(cancelAnimationFrame(e),e=null)}function i(){e!==null&&(cancelAnimationFrame(e),e=null);let n=t;t=null,n?.()}function a(){return e!==null}return{schedule:n,cancel:r,flush:i,isPending:a}}function Br(e){let{props:n,emit:r,svgElement:i,sharedOverlayElement:a,sharedTransform:o,independentTransforms:s,trackLayouts:c,initialXDomain:l,sharedZoomDomain:u,innerWidth:d,innerHeight:f,hasChartArea:p,isZoomMode:m,isPresentationMode:h,resolveInitialTrackDomain:g,cancelPendingHover:_}=e,v=new Map,y=zr(),b=!1,x=null,S=null,C=null,w=new Map,T=new Map,E=new Map,D,O=!1,k=0,A=()=>y.schedule(P),j=e=>{if(b||h.value)return;_(),x=e.transform,S=`wheel`,R();let[i,a]=At(e.transform.rescaleX((0,t.scaleLinear)(l.value,[0,d.value])).domain(),n);r(`zoom-intent`,{start:i,end:a,gesture:`wheel`}),A()},M=(e,i)=>{if(b||h.value)return;_(),w.set(i,e.transform),T.set(i,`wheel`),R();let a=c.value.find(e=>e.index===i);if(a){let o=e.transform.rescaleX((0,t.scaleLinear)(g(a),[0,a.width])).domain();r(`zoom-intent`,{start:At(o,n)[0],end:At(o,n)[1],trackIndex:i,seriesIds:a.seriesList.map(e=>e.id),gesture:`wheel`})}A()};function P(){if(h.value){B();return}if(x){let e=x;x=null,C=S,S=null,o.value=e;let i=e.rescaleX((0,t.scaleLinear)(l.value,[0,d.value])).domain();r(`zoom-change`,At([i[0],i[1]],n))}if(!w.size)return;let e=[...s.value],i=Array.from(w.keys()),a=new Map(T);w.forEach((t,n)=>{e[n]=t}),w.clear(),T.clear(),s.value=e;let u=new Map(c.value.map(e=>[e.index,e]));i.forEach(e=>{let t=u.get(e);if(!t)return;if(a.get(e)===`wheel`){let e=t.seriesList.map(e=>e.id);E.set(Nr(e),e)}let n=t.xScale.domain();r(`zoom-change`,[n[0],n[1]])})}let F=()=>{if(n.displayMode===`independent`){Ir(r,c.value,E.values()),E.clear();return}if(C!==`wheel`){C=null;return}Lr(r,u.value,c.value),C=null},I=()=>{y.flush(),P(),!(C===`wheel`||E.size)&&F()},L=e=>{e===k&&I()};function R(){D!==void 0&&clearTimeout(D),D=setTimeout(()=>{D=void 0,y.flush(),P(),F(),O=!1},200)}let z=()=>{D!==void 0&&(y.flush(),P(),O=!0)},B=()=>{x=null,S=null,C=null,w.clear(),T.clear(),E.clear(),y.cancel(),O=!1,D!==void 0&&(clearTimeout(D),D=void 0)},V=(e=!1)=>{k+=1,e||B(),i.value?.querySelectorAll(`.waveform-chart__overlay`).forEach(e=>(0,t.select)(e).on(`.zoom`,null)),v.clear()},ee=(e,t)=>{let r=Math.abs(e[1]-e[0]);if(!Number.isFinite(r)||r<=0)return N.MIN_SCALE;let i=yn(e,t,n);return Math.max(N.MIN_SCALE,i>0?r/i:1/0)},H=(e,r,i,a)=>Sn(En(e.rescaleX((0,t.scaleLinear)(r,[0,i])).domain(),r,a,n),r,i),U=e=>{let t=Number(n.minVisiblePoints);return Xe(e.seriesList,e.xScale.domain(),Number.isFinite(t)&&t>0?Math.ceil(t)+1:t)},te=()=>{let e=c.value.filter(e=>e.hasVisibleSeries);return e.length>0&&e.every(U)},ne=e=>{let t=wn(n);return t?Math.min(1,(e[1]-e[0])/(t[1]-t[0])):N.MIN_SCALE},W=(e,n,r)=>{if(e.type!==`wheel`)return!1;let i=e.deltaY,a=(0,t.zoomTransform)(e.currentTarget).k;return i<0?n:i>0&&a>r*1.000001};return{cancelPendingZoom:B,clearZoomBindings:V,canZoomTrack:U,canZoomSharedTracks:te,configureZoom:()=>{V(O);let e=k;if(h.value||!n.zoomable||!m.value||!p.value||!c.value.length)return;if(n.displayMode===`independent`){c.value.forEach(n=>{let r=i.value?.querySelector(`[data-independent-overlay-index="${n.index}"]`);if(!r)return;let a=g(n),o=[n.seriesList],l=ne(a),u=(0,t.zoom)().filter(e=>{let t=c.value.find(e=>e.index===n.index)??n;return W(e,U(t),l)}).scaleExtent([l,ee(a,o)]).constrain(e=>H(e,a,n.width,o)).extent([[0,0],[n.width,n.height]]).translateExtent([[0,0],[n.width,n.height]]).on(`zoom`,e=>M(e,n.index)).on(`end`,()=>L(e));v.set(n.index,u),b=!0;try{(0,t.select)(r).call(u).on(`dblclick.zoom`,null).call(u.transform,s.value[n.index]??t.zoomIdentity)}finally{b=!1}});return}let r=a.value;if(!r)return;let u=c.value.filter(e=>e.hasVisibleSeries).map(e=>e.seriesList),_=ne(l.value),y=(0,t.zoom)().filter(e=>W(e,te(),_)).scaleExtent([_,ee(l.value,u)]).constrain(e=>H(e,l.value,d.value,u)).extent([[0,0],[d.value,f.value]]).translateExtent([[0,0],[d.value,f.value]]).on(`zoom`,j).on(`end`,()=>L(e));v.set(`shared`,y),b=!0;try{(0,t.select)(r).call(y).on(`dblclick.zoom`,null).call(y.transform,o.value)}finally{b=!1}},prepareForDataChange:z}}function Vr(e){return e?16:0}function Hr(t){let{container:n,titleMeasureElement:r,resizeObserver:i,observedWidth:a,observedHeight:o,measuredTitleWidth:s,measuredTitleHeight:c,resolvedTitleText:l,titleAreaReserved:u,titleMeasureStyle:d}=t;function f(){if(!u.value||!r.value){s.value=0,c.value=0;return}let e=r.value.getBoundingClientRect();s.value=r.value.scrollWidth||e.width,c.value=r.value.scrollHeight||e.height}(0,e.watch)([l,u,d],async()=>{s.value=0,c.value=0,await(0,e.nextTick)(),f()},{immediate:!0}),(0,e.onMounted)(()=>{n.value&&(i.value=new ResizeObserver(([t])=>{a.value=Math.max(0,t?.contentRect.width??0),o.value=Math.max(0,t?.contentRect.height??0),(0,e.nextTick)(f)}),i.value.observe(n.value))}),(0,e.onBeforeUnmount)(()=>i.value?.disconnect())}function Ur(n){let{props:r,trackLayouts:i,resolveInitialTrackDomain:a,sharedZoomDomain:o,initialXDomain:s,independentTransforms:c,chartTracks:l,clearHover:u,editorSeriesOptions:d,sharedTransform:f,innerWidth:p,configureZoom:m}=n,h,g;function _(){if(r.displayMode===`independent`){h=void 0,g=new Map(i.value.flatMap(e=>{let t=e.xScale.domain(),i=a(e);return n.preserveFullViewport?.()||wn(r)||t[1]-t[0]<i[1]-i[0]-1e-12?[[Nr(e.seriesList.map(e=>e.id)),t]]:[]}));return}g=void 0;let e=o.value,t=s.value;h=n.preserveFullViewport?.()||wn(r)||e[1]-e[0]<t[1]-t[0]-1e-12?[...e]:void 0}function v(){if(r.displayMode===`independent`){let e=c.value;c.value=l.value.map((n,r)=>e[r]??t.zoomIdentity)}u(),d.value=[],(0,e.nextTick)(()=>{if(r.displayMode===`independent`&&g){let e=l.value.map(()=>t.zoomIdentity);i.value.forEach(t=>{let n=g?.get(Nr(t.seriesList.map(e=>e.id)));if(!n)return;let i=a(t),o=Tn(n,i,[t.seriesList],r);e[t.index]=Sn(o,i,t.width)}),c.value=e,g=void 0}else if(r.displayMode!==`independent`&&h){let e=s.value,t=i.value.filter(e=>e.hasVisibleSeries).map(e=>e.seriesList),n=Tn(h,e,t,r);f.value=Sn(n,e,p.value),h=void 0}m()})}return{handleBeforeDataReferenceChange:_,handleDataReferenceChange:v}}function Wr(e){return e instanceof Element&&!!e.closest(`button, input, select, textarea, [contenteditable]:not([contenteditable="false"])`)}function Gr(n){Hr(n);let{props:r,emit:i,spacePressed:a,pointerInsideChart:o,currentPage:s,pageCount:c,pagedTracks:l,gridOptions:u,chartSeries:d,chartTracks:f,innerWidth:p,innerHeight:m,activeInteractionMode:h,hiddenSeriesIdSet:g,internalHiddenSeriesIds:_,independentTransforms:v,independentYDomains:y,annotationInteraction:b,editorSeriesOptions:x,isPresentationMode:S,clearHover:C,cancelAnnotation:w,configureZoom:T,resetViewport:E,cancelViewportDrag:D,cancelPendingHover:O,clearZoomBindings:k}=n;function A(e){e.key===`Escape`&&(D(),w()),!(S.value||e.code!==`Space`||!r.pannable||!o.value)&&(Wr(e.target)||(a.value=!0,e.preventDefault()))}function j(e){e.code===`Space`&&(a.value=!1)}function M(n){let a=Math.min(c.value,Math.max(1,Math.floor(n)));a!==s.value&&(s.value=a,C(),b.closeContextMenu(),w(),r.displayMode===`independent`&&(v.value=l.value.map(()=>t.zoomIdentity),y.value={}),(0,e.nextTick)(T),i(`page-change`,a,c.value))}let{handleBeforeDataReferenceChange:N,handleDataReferenceChange:P}=Ur(n);return(0,e.watch)([p,m,()=>r.zoomable,S,()=>r.minZoomSpan,()=>r.minVisiblePoints,()=>r.maxZoomScale,()=>r.initialXDomain,()=>r.initialXDomains,()=>r.xDomainStrategy,()=>r.displayMode,()=>f.value.length,s,()=>u.value.rowCount,()=>u.value.columnCount,()=>u.value.fillIncompleteLastRow,h],async()=>{await(0,e.nextTick)(),T()},{immediate:!0}),(0,e.watch)(()=>[r.displayMode,r.integerZoom,r.integerZoom?r.timeUnit:void 0],()=>{let e=s.value;s.value=1,E(),e!==1&&i(`page-change`,1,c.value)}),(0,e.watch)([c,()=>r.grid?.rowCount,()=>r.grid?.columnCount,()=>r.grid?.fillIncompleteLastRow],()=>{let t=s.value;s.value=s.value>c.value?c.value:s.value===1?s.value:1,t!==s.value&&i(`page-change`,s.value,c.value),C(),(0,e.nextTick)(T)}),(0,e.watch)(h,()=>{x.value=[]}),(0,e.watch)(S,e=>{a.value=!1,e&&(D(),k(),C(),b.closeContextMenu(),w())}),(0,e.watch)(()=>d.value.map(e=>e.id).join(`\0`),()=>{if(r.hiddenSeriesIds!==void 0)return;let e=new Set(d.value.map(e=>e.id)),t=new Set(Array.from(_.value).filter(t=>e.has(t)));(t.size!==_.value.size||Array.from(_.value).some(e=>!t.has(e)))&&(_.value=t)},{immediate:!0}),(0,e.watch)(()=>f.value.flatMap(e=>e.visibleSeries.map(e=>e.id)).join(`\0`),()=>{C(),x.value=[];let t=b.editorDraft.value?.annotation.seriesId;t&&(!d.value.some(e=>e.id===t)||g.value.has(t))&&b.closeEditor();let n=b.contextMenu.value?.annotationId,i=r.annotations.find(e=>e.id===n);i&&g.value.has(i.seriesId)&&b.closeContextMenu(),(0,e.nextTick)(T)}),(0,e.watch)(()=>r.annotationsVisible,e=>{e||(b.closeContextMenu(),w())}),(0,e.watch)(()=>r.annotations,e=>{let t=b.contextMenu.value?.annotationId;t&&!e.some(e=>e.id===t)&&b.closeContextMenu();let n=b.editorDraft.value;n?.mode===`edit`&&!e.some(e=>e.id===n.annotation.id)&&b.closeEditor()},{deep:!0}),(0,e.onMounted)(()=>{window.addEventListener(`keydown`,A),window.addEventListener(`keyup`,j)}),(0,e.onBeforeUnmount)(()=>{window.removeEventListener(`keydown`,A),window.removeEventListener(`keyup`,j),O(),k(),x.value=[]}),{goToPage:M,handleBeforeDataReferenceChange:N,handleDataReferenceChange:P}}function Kr(e){return Me(e).map(({source:e,...t})=>{let n=e.metrics(t.errorBar.visible);return{...t,source:e,points:ge(e),xDomain:l(Number.isFinite(n.xMinimum)?[n.xMinimum,n.xMaximum]:[]),yDomain:l(Number.isFinite(n.yMinimum)?[n.yMinimum,n.yMaximum]:[]),rawYMaximum:Number.isFinite(n.yMaximum)?n.yMaximum:void 0,rawYMinimum:Number.isFinite(n.yMinimum)?n.yMinimum:void 0,hasErrorPoints:n.hasErrorPoints}})}function qr(t,n,r){let i=(0,e.shallowRef)(Kr(t()));return(0,e.watch)(t,e=>{n(),i.value=Kr(e),r()}),i}function Jr(e,t){let n=ci(e,$.__wbindgen_malloc),r=mi,i=ci(t,$.__wbindgen_malloc),a=mi,o=$.calculate_range(n,r,i,a);if(o[3])throw li(o[2]);var s=$r(o[0],o[1]).slice();return $.__wbindgen_free(o[0],o[1]*8,8),s}function Yr(e,t,n,r){let i=ci(e,$.__wbindgen_malloc),a=mi,o=ci(t,$.__wbindgen_malloc),s=mi,c=$.find_visible_range(i,a,o,s,n,r);if(c[3])throw li(c[2]);var l=ei(c[0],c[1]).slice();return $.__wbindgen_free(c[0],c[1]*4,4),l}function Xr(e,t,n,r){let i=ci(e,$.__wbindgen_malloc),a=mi,o=ci(t,$.__wbindgen_malloc),s=mi,c=$.sample_aggregates(i,a,o,s,n,r);if(c[3])throw li(c[2]);var l=$r(c[0],c[1]).slice();return $.__wbindgen_free(c[0],c[1]*8,8),l}function Zr(e,t,n,r){let i=ci(e,$.__wbindgen_malloc),a=mi,o=ci(t,$.__wbindgen_malloc),s=mi,c=$.sample_indexes(i,a,o,s,n,r);if(c[3])throw li(c[2]);var l=ei(c[0],c[1]).slice();return $.__wbindgen_free(c[0],c[1]*4,4),l}function Qr(){return{__proto__:null,"./waveform_sampling_wasm_bg.js":{__proto__:null,__wbindgen_cast_0000000000000001:function(e,t){return ri(e,t)},__wbindgen_init_externref_table:function(){let e=$.__wbindgen_externrefs,t=e.grow(4);e.set(0,void 0),e.set(t+0,void 0),e.set(t+1,null),e.set(t+2,!0),e.set(t+3,!1)}}}}function $r(e,t){return e>>>=0,ni().subarray(e/8,e/8+t)}function ei(e,t){return e>>>=0,ai().subarray(e/4,e/4+t)}var ti=null;function ni(){return(ti===null||ti.byteLength===0)&&(ti=new Float64Array($.memory.buffer)),ti}function ri(e,t){return e>>>=0,pi(e,t)}var ii=null;function ai(){return(ii===null||ii.byteLength===0)&&(ii=new Uint32Array($.memory.buffer)),ii}var oi=null;function si(){return(oi===null||oi.byteLength===0)&&(oi=new Uint8Array($.memory.buffer)),oi}function ci(e,t){let n=t(e.length*8,8)>>>0;return ni().set(e,n/8),mi=e.length,n}function li(e){let t=$.__wbindgen_externrefs.get(e);return $.__externref_table_dealloc(e),t}var ui=new TextDecoder(`utf-8`,{ignoreBOM:!0,fatal:!0});ui.decode();var di=2146435072,fi=0;function pi(e,t){return fi+=t,fi>=di&&(ui=new TextDecoder(`utf-8`,{ignoreBOM:!0,fatal:!0}),ui.decode(),fi=t),ui.decode(si().subarray(e,e+t))}var mi=0,$;function hi(e,t){return $=e.exports,ti=null,ii=null,oi=null,$.__wbindgen_start(),$}async function gi(e,t){if(typeof Response==`function`&&e instanceof Response){if(typeof WebAssembly.instantiateStreaming==`function`)try{return await WebAssembly.instantiateStreaming(e,t)}catch(t){if(e.ok&&n(e.type)&&e.headers.get(`Content-Type`)!==`application/wasm`)console.warn("`WebAssembly.instantiateStreaming` failed because your server does not serve Wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\n",t);else throw t}let r=await e.arrayBuffer();return await WebAssembly.instantiate(r,t)}else{let n=await WebAssembly.instantiate(e,t);return n instanceof WebAssembly.Instance?{instance:n,module:e}:n}function n(e){switch(e){case`basic`:case`cors`:case`default`:return!0}return!1}}async function _i(e){if($!==void 0)return $;e!==void 0&&(Object.getPrototypeOf(e)===Object.prototype?{module_or_path:e}=e:console.warn(`using deprecated parameters for the initialization function; pass a single object instead`)),e===void 0&&(e=new URL(`data:application/wasm;base64,AGFzbQEAAAAB0AEZYAAAYAABf2ABfwBgAX8Bf2ACf38AYAJ/fwF/YAJ/fwFvYAN/f38AYAN/f38Bf2AEf39/fwBgBH9/f38Bf2AEf39/fwR/f39/YAV/f39/fwBgBX9/f39/AX9gBX9/f39/A39/f2AFf39/f38Ef39/f2AGf39/f39/AGAGf39/f39/AX9gBn9/f39/fwR/f39/YAd/f39/f39/AGAHf39/f398fABgCH9/f39/fHx/AGAGf39/f3x8BH9/f39gB39/f398fH8Df39/YAJ8fAF8AoQBAh4uL3dhdmVmb3JtX3NhbXBsaW5nX3dhc21fYmcuanMfX193YmluZGdlbl9pbml0X2V4dGVybnJlZl90YWJsZQAAHi4vd2F2ZWZvcm1fc2FtcGxpbmdfd2FzbV9iZy5qcyBfX3diaW5kZ2VuX2Nhc3RfMDAwMDAwMDAwMDAwMDAwMQAGA4wBigEDEAwQEBMMBQoMAhEQFQgMCgwEBxQEAgQFBAQTAQQECQkFBRAQFBMMBw0HBwQTBAwMBxAQEAwDCRUQBAIAAgICAgMHAwcIBAcFAwIEBwUFDRIWEg8XDwQLBQMOAgICAgkEAwICBAIFGBgEBwUHBAQICgIEBQcECAACAgAFBQQEBAUFAgIEBAUDAAAECQJwARcXbwCACAUDAQARBgkBfwFBgIDAAAsH5AIRBm1lbW9yeQIAD2NhbGN1bGF0ZV9yYW5nZQBZD2Rpc3Bvc2VfZGF0YXNldAA4EmZpbmRfdmlzaWJsZV9yYW5nZQBTEHJlZ2lzdGVyX2RhdGFzZXQAXBdyZWdpc3Rlcl9zYW1wbGVfZGF0YXNldABWEXNhbXBsZV9hZ2dyZWdhdGVzAFIZc2FtcGxlX2RhdGFzZXRfYWdncmVnYXRlcwBXFnNhbXBsZV9kYXRhc2V0X2luZGV4ZXMAVQ5zYW1wbGVfaW5kZXhlcwBUFGRpc3Bvc2VfYWxsX2RhdGFzZXRzAD4TZGF0YXNldF9pbmRleF9ieXRlcwBFFV9fd2JpbmRnZW5fZXh0ZXJucmVmcwEBEV9fd2JpbmRnZW5fbWFsbG9jAE8ZX19leHRlcm5yZWZfdGFibGVfZGVhbGxvYwA/D19fd2JpbmRnZW5fZnJlZQBuEF9fd2JpbmRnZW5fc3RhcnQAAAkiAQBBAQsWiQEBhgFaZ0ck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AggiDqdBgICA/3lxQbCAgIACcjYCCEEBIQ0gACgCACIKIAAoAgQiCyAMIAIgAxBRDQNBACEHIAEgCWtB//8DcSECA0AgB0H//wNxIAJPDQJBASENIAdBAWohByAKQTAgCygCEBEFAEUNAAwECwtBASENIAogCyAMIAIgAxBRDQIgCiAEIAUgCygCDBEIAA0CQQAhByAIIAFrQf//A3EhAANAIAdB//8DcSICIABJIQ0gAiAATw0DIAdBAWohByAKIAkgCygCEBEFAEUNAAwDCwtBASENIAogBCAFIAsoAgwRCAANASAAIA43AghBAA8LQQEhDSAAKAIAIgcgACgCBCIKIAwgAiADEFENACAHIAQgBSAKKAIMEQgAIQ0LIA0L/QUDBX8CfgN8IwBB8ABrIgYkAAJAAkACQAJAIAIgBEYNAEHXi8AAQSEQba0hC0GAgICAeCEHIAZBGGohBAwBC0EAIQcCQAJAIAINAEIAIQtBgICAgHghCEQAAAAAAAAAACENQQghCUEAIQEMAQsgAkEDdCEKQQAhCCABIQQgAyEJAkACQAJAAkADQCAEKQMAQv///////////wCDQv/////////3/wBVDQEgCSkDAEL///////////8Ag0L/////////9/8AVQ0BIARBCGohBCAJQQhqIQkgAiAIQQFqIghGDQIMAAsLIAggAkkNAQtEAAAAAAAAAAAhDSACQQFGDQEgASACQX9qIgRBA3RqKwMAIAErAwChIAS4oyENDAELQaSLwABBMxBtrSELQYCAgIB4IQcgBkEYaiEEDAILQQAhBEEAIQkCQANAAkAgCiAERw0AQYCAgIB4IQgMAgsgASAEaiEIIAm4IQ4gBEEIaiEEIAlBAWohCSAIKwMAIg8gDSAOoiABKwMAoCIOoZkgD5kgDpkQaUQAAAAAAADwPxBpRAAAAAAAACA9omUNAAsQigEgCkEIEH0iBEUNAwJAIApFDQAgBCABIAr8CgAACyACrUIghiAErYQhDCACIQgLEIoBIApBCBB9IglFDQMCQCAKRQ0AIAkgAyAK/AoAAAsgASkDACELIAIhAQsgBkEANgIYIAZBEGohBAsgBCAHNgIAAkACQCAGKAIYIgRBgICAgHhHDQAgC6chBEEBIQkMAQsgBiAGKAIQNgJoIAZBBDYCZCAGIAQ2AmAgBkEANgJcIAZC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Cw8AQZqUwABB8wAgABBOAAsSAEHTlMAAQZkBQaCVwAAQTgALCQAgACABEGgPCwkAIAAgARBKDwsJACABIAAQYgALDAAgACABKQIANwMACwkAIAEgABB/AAsNACABQdCVwABBGBAQCw0AIAFBsJXAAEEgEBALBwAgABBlAAsHACAAED0ACwsAQQBBAToA+JlACwkAIABBADYCAAsGABCLAQALBwBB6JXAAAsDAA8LAwAACwuiFgIAQYCAwAAL6BUWc2xpY2UgaW5kZXggc3RhcnRzIGF0IMANIGJ1dCBlbmRzIGF0IMAAIGluZGV4IG91dCBvZiBib3VuZHM6IHRoZSBsZW4gaXMgwBIgYnV0IHRoZSBpbmRleCBpcyDAABJyYW5nZSBzdGFydCBpbmRleCDAIiBvdXQgb2YgcmFuZ2UgZm9yIHNsaWNlIG9mIGxlbmd0aCDAABByYW5nZSBlbmQgaW5kZXggwCIgb3V0IG9mIHJhbmdlIGZvciBzbGljZSBvZiBsZW5ndGggwABIY2Fubm90IGFjY2VzcyBhIFRocmVhZCBMb2NhbCBTdG9yYWdlIHZhbHVlIGR1cmluZyBvciBhZnRlciBkZXN0cnVjdGlvbjogwAAvcnVzdGMvNTk4MDc2MTZlMWZhMjU0MDcyNGJmYmFjMTRkNzk3NmQ3ZTRhMzg2MC9saWJyYXJ5L2NvcmUvc3JjL3NsaWNlL3NvcnQvc2hhcmVkL3NtYWxsc29ydC5ycwAvcnVzdGMvNTk4MDc2MTZlMWZhMjU0MDcyNGJmYmFjMTRkNzk3NmQ3ZTRhMzg2MC9saWJyYXJ5L2NvcmUvc3JjL3NsaWNlL3NvcnQvc3RhYmxlL3F1aWNrc29ydC5ycwAvcnVzdGMvNTk4MDc2MTZlMWZhMjU0MDcyNGJmYmFjMTRkNzk3NmQ3ZTRhMzg2MC9saWJyYXJ5L3N0ZC9zcmMvdGhyZWFkL2xvY2FsLnJzAC9ob21lL3J1bm5lci8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3dhc20tYmluZGdlbi0wLjIuMTE4L3NyYy9leHRlcm5yZWYucnMAL3J1c3RjLzU5ODA3NjE2ZTFmYTI1NDA3MjRiZmJhYzE0ZDc5NzZkN2U0YTM4NjAvbGlicmFyeS9hbGxvYy9zcmMvcmF3X3ZlYy9tb2QucnMAL3J1c3QvZGVwcy9kbG1hbGxvYy0wLjIuMTEvc3JjL2RsbWFsbG9jLnJzAHNyYy9saWIucnMAAAAADgMQAAoAAADSAAAAGQAAAA4DEAAKAAAA2gAAABoAAAAOAxAACgAAANoAAAA9AAAADgMQAAoAAADJAAAAHQAAAA4DEAAKAAAAqgAAABAAAAAOAxAACgAAAKoAAAAiAAAADgMQAAoAAACtAAAAIgAAAA4DEAAKAAAAFwIAABwAAAAOAxAACgAAAAsCAAAmAAAADgMQAAoAAADyAQAAKgAAAA4DEAAKAAAA+AEAACoAAAAOAxAACgAAAP4BAAAyAAAADgMQAAoAAACSAQAADwAAAA4DEAAKAAAAkgEAACwAAAAOAxAACgAAAI0BAAAPAAAADgMQAAoAAACNAQAALAAAAHNvdXJjZSBpbmRleGVzIG11c3QgYmUgZW1wdHkgb3Igbm9uZGVjcmVhc2luZ3NhbXBsZSB2YWx1ZXMgbXVzdCBiZSBmaW5pdGUgYW5kIGFkZHJlc3NhYmxlc2FtcGxlIG1ldGFkYXRhIG11c3QgYmUgZmluaXRlIGFuZCBzYW1wbGVSYXRlIHBvc2l0aXZlAA4DEAAKAAAAFgEAACQAAAAOAxAACgAAAC4CAAAwAAAADgMQAAoAAAAvAgAAHwAAAA4DEAAKAAAALwIAADUAAAAOAxAACgAAANYBAAAgAAAADgMQAAoAAACxAQAALQAAAA4DEAAKAAAAsgEAAC0AAABpbnRlcm5hbCBlcnJvcjogZW50ZXJlZCB1bnJlYWNoYWJsZSBjb2RlDgMQAAoAAACaAgAAFgAAAHN0cmF0ZWd5IGRvZXMgbm90IHJldHVybiBzb3VyY2UgaW5kZXhlc3N0cmF0ZWd5IGRvZXMgbm90IHJldHVybiBhZ2dyZWdhdGUgdmFsdWVzcmVnaXN0ZXJlZCBkYXRhc2V0cyBtdXN0IGNvbnRhaW4gZmluaXRlIGNvb3JkaW5hdGVzeCBhbmQgeSBtdXN0IGhhdmUgdGhlIHNhbWUgbGVuZ3RoDgMQAAoAAAB2AQAAEgAAAA4DEAAKAAAAcwEAADwAAAAOAxAACgAAAEwCAAAcAAAADgMQAAoAAABPAgAALAAAAA4DEAAKAAAAUAIAAB0AAAAOAxAACgAAAFECAAAdAAAADgMQAAoAAABSAgAAJQAAAAEAAAAOAxAACgAAAJQAAAASAAAADgMQAAoAAACCAAAAEAAAAA4DEAAKAAAAggAAACIAAAAOAxAACgAAAIUAAAAiAAAADgMQAAoAAAABAQAAHQAAAA4DEAAKAAAAHAMAACUAAAAOAxAACgAAAEkAAABDAAAADgMQAAoAAAAtAwAADgAAAA4DEAAKAAAAJgMAACcAAABkYXRhc2V0IGhhbmRsZSB3YXMgbm90IGZvdW5kDgMQAAoAAAA/AwAAJQAAAA4DEAAKAAAACgMAACUAAAAOAxAACgAAAFEDAAAlAAAA2gEQAE8AAADfAQAAGQAAAG1pZCA+IGxlbgAAAHoBEABfAAAATQAAAB8AAAB6ARAAXwAAAEcAAAAXAAAADgMQAAoAAAB/AQAAGgAAAA4DEAAKAAAA8wAAABYAAAAOAxAACgAAAEkAAABDAAAADgMQAAoAAABJAAAAQwAAACoCEABnAAAAfAAAABEAAAAqAhAAZwAAAIkAAAARAAAABQAAAAwAAAAEAAAABgAAAAcAAAAIAAAAAAAAAAgAAAAEAAAACQAAAAoAAAALAAAADAAAAA0AAAAQAAAABAAAAA4AAAAPAAAAEAAAABEAAABtXcvWLFDrY3hBpldxG4u5FaJcVTRVB9RTeK2BUfCj92Fzc2VydGlvbiBmYWlsZWQ6IHBzaXplID49IHNpemUgKyBtaW5fb3ZlcmhlYWQAAOMCEAAqAAAAsQQAAAkAAABhc3NlcnRpb24gZmFpbGVkOiBwc2l6ZSA8PSBzaXplICsgbWF4X292ZXJoZWFkAADjAhAAKgAAALcEAAANAAAAAAAAAAgAAAAEAAAAEgAAAEFjY2Vzc0Vycm9yAAUAAAAMAAAABAAAABMAAABjYXBhY2l0eSBvdmVyZmxvdwAAAJICEABQAAAAHAAAAAUAAAB9IH1jYWxsZWQgYE9wdGlvbjo6dW53cmFwKClgIG9uIGEgYE5vbmVgIHZhbHVlMDAwMTAyMDMwNDA1MDYwNzA4MDkxMDExMTIxMzE0MTUxNjE3MTgxOTIwMjEyMjIzMjQyNTI2MjcyODI5MzAzMTMyMzMzNDM1MzYzNzM4Mzk0MDQxNDI0MzQ0NDU0NjQ3NDg0OTUwNTE1MjUzNTQ1NTU2NTc1ODU5NjA2MTYyNjM2NDY1NjY2NzY4Njk3MDcxNzI3Mzc0NzU3Njc3Nzg3OTgwODE4MjgzODQ4NTg2ODc4ODg5OTA5MTkyOTM5NDk1OTY5Nzk4OTlhdHRlbXB0IHRvIGNhbGN1bGF0ZSB0aGUgcmVtYWluZGVyIHdpdGggYSBkaXZpc29yIG9mIHplcm91c2VyLXByb3ZpZGVkIGNvbXBhcmlzb24gZnVuY3Rpb24gZG9lcyBub3QgY29ycmVjdGx5IGltcGxlbWVudCBhIHRvdGFsIG9yZGVyABoBEABfAAAAXAMAAAUAAABSZWZDZWxsIGFscmVhZHkgbXV0YWJseSBib3Jyb3dlZFJlZkNlbGwgYWxyZWFkeSBib3Jyb3dlZABB6JXAAAsoAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAADURARuYW1lABwbd2F2ZWZvcm1fc2FtcGxpbmdfd2FzbS53YXNtAe1DiwEBGFJlZihTdHJpbmcpIC0+IEV4dGVybnJlZgJhPGRsbWFsbG9jW2UyNGEyNzcwMDYzNGQ2MDldOjpkbG1hbGxvYzo6RGxtYWxsb2M8ZGxtYWxsb2NbZTI0YTI3NzAwNjM0ZDYwOV06OnN5czo6U3lzdGVtPj46Om1hbGxvYwNId2F2ZWZvcm1fc2FtcGxpbmdfd2FzbTo6U3RvcmVkRGF0YXNldDo6c2FtcGxlX2luZGV4ZXM6Omg2MWUzZjgxMTcwZDM3MDY3BDl3YXZlZm9ybV9zYW1wbGluZ193YXNtOjpzb3VyY2VfaW5kZXhlczo6aDQ2ZjNjMTMyODIyNWU2NzIFS3dhdmVmb3JtX3NhbXBsaW5nX3dhc206OlN0b3JlZERhdGFzZXQ6OnNhbXBsZV9hZ2dyZWdhdGVzOjpoOThiYzBkMGNkZWQ4MmY2ZQY5Y29yZTo6c2xpY2U6OnNvcnQ6OnN0YWJsZTo6ZHJpZnQ6OnNvcnQ6OmhiMGYzYWUzMDFkNTZkNDVhB0Jjb3JlOjpzbGljZTo6c29ydDo6c3RhYmxlOjpxdWlja3NvcnQ6OnF1aWNrc29ydDo6aDQyMGFkOTE2NGI2NDVlM2IIWGNvcmU6OnNsaWNlOjpzb3J0OjpzaGFyZWQ6OnNtYWxsc29ydDo6c21hbGxfc29ydF9nZW5lcmFsX3dpdGhfc2NyYXRjaDo6aGNmYzk3ZmQzMzIxNzQ2MWYJMmNvcmVbYzU5MzBjODVhMTJkZTgyMl06OnN0cjo6Y291bnQ6OmRvX2NvdW50X2NoYXJzCihfX3J1c3RjW2I3OTc0ZTg2OTA0MzBkZDldOjpfX3JkbF9yZWFsbG9jCzR3YXZlZm9ybV9zYW1wbGluZ193YXNtOjphZ2dyZWdhdGU6OmhkY2UwYWY2ODJjNjRkZjNhDF88ZGxtYWxsb2NbZTI0YTI3NzAwNjM0ZDYwOV06OmRsbWFsbG9jOjpEbG1hbGxvYzxkbG1hbGxvY1tlMjRhMjc3MDA2MzRkNjA5XTo6c3lzOjpTeXN0ZW0+Pjo6ZnJlZQ02PGNvcmVbYzU5MzBjODVhMTJkZTgyMl06OmZtdDo6Rm9ybWF0dGVyPjo6cGFkX2ludGVncmFsDjt3YXZlZm9ybV9zYW1wbGluZ193YXNtOjpyZWdpc3Rlcl9kYXRhc2V0OjpoM2YzMzNhZDk0ZDVkYTI0MA9Cd2F2ZWZvcm1fc2FtcGxpbmdfd2FzbTo6cmVnaXN0ZXJfc2FtcGxlX2RhdGFzZXQ6OmhhYzNjYTBmNWUyMzNlNzhiEC08Y29yZVtjNTkzMGM4NWExMmRlODIyXTo6Zm10OjpGb3JtYXR0ZXI+OjpwYWQROndhdmVmb3JtX3NhbXBsaW5nX3dhc206OmNhbGN1bGF0ZV9yYW5nZTo6aGI4ZjY0N2JhZGEyYWYwOWMSImNvcmVbYzU5MzBjODVhMTJkZTgyMl06OmZtdDo6d3JpdGUTO3dhdmVmb3JtX3NhbXBsaW5nX3dhc206OnZhbGlkYXRlZF9wb2ludHM6Omg5YTcxMGE2MTYxZjE1NjY3FGg8ZGxtYWxsb2NbZTI0YTI3NzAwNjM0ZDYwOV06OmRsbWFsbG9jOjpEbG1hbGxvYzxkbG1hbGxvY1tlMjRhMjc3MDA2MzRkNjA5XTo6c3lzOjpTeXN0ZW0+Pjo6ZGlzcG9zZV9jaHVuaxU7d2F2ZWZvcm1fc2FtcGxpbmdfd2FzbTo6ZW5kcG9pbnRzX29yX2FsbDo6aGZmNmE2YTc2YjM0YmZiYTQWPXdhdmVmb3JtX3NhbXBsaW5nX3dhc206OmZpbmRfdmlzaWJsZV9yYW5nZTo6aDVhYzhjM2I0MTU5NDIxNzIXRWNvcmU6OnNsaWNlOjpzb3J0OjpzaGFyZWQ6OnNtYWxsc29ydDo6c29ydDRfc3RhYmxlOjpoZTAzMTE1NjhkZDE5NTM4OBhSY29yZTo6cHRyOjpkcm9wX2luX3BsYWNlPHdhdmVmb3JtX3NhbXBsaW5nX3dhc206OlN0b3JlZERhdGFzZXQ+OjpoNzUwMjgxMjc0Y2ExNmZjNhk0YWxsb2M6OnZlYzo6VmVjPFQsQT46OnJlc2l6ZV93aXRoOjpoNTY4NjEzOTQ2NGQyNzM2ZhpjPGRsbWFsbG9jW2UyNGEyNzcwMDYzNGQ2MDldOjpkbG1hbGxvYzo6RGxtYWxsb2M8ZGxtYWxsb2NbZTI0YTI3NzAwNjM0ZDYwOV06OnN5czo6U3lzdGVtPj46Om1lbWFsaWduGzRhbGxvYzo6dmVjOjpWZWM8VCxBPjo6cmVzaXplX3dpdGg6Omg0Yzc1ODgxZTExZWY5YzI0HGc8ZGxtYWxsb2NbZTI0YTI3NzAwNjM0ZDYwOV06OmRsbWFsbG9jOjpEbG1hbGxvYzxkbG1hbGxvY1tlMjRhMjc3MDA2MzRkNjA5XTo6c3lzOjpTeXN0ZW0+Pjo6dW5saW5rX2NodW5rHQ5zYW1wbGVfaW5kZXhlcx4XX19leHRlcm5yZWZfdGFibGVfYWxsb2MfbTxkbG1hbGxvY1tlMjRhMjc3MDA2MzRkNjA5XTo6ZGxtYWxsb2M6OkRsbWFsbG9jPGRsbWFsbG9jW2UyNGEyNzcwMDYzNGQ2MDldOjpzeXM6OlN5c3RlbT4+OjppbnNlcnRfbGFyZ2VfY2h1bmsgaDxjb3JlOjppdGVyOjphZGFwdGVyczo6bWFwOjpNYXA8SSxGPiBhcyBjb3JlOjppdGVyOjp0cmFpdHM6Oml0ZXJhdG9yOjpJdGVyYXRvcj46OmZvbGQ6OmgyYTk3YjkwYmNjNDI0NGMyIVJjb3JlOjpzbGljZTo6c29ydDo6c2hhcmVkOjpzbWFsbHNvcnQ6Omluc2VydGlvbl9zb3J0X3NoaWZ0X2xlZnQ6OmhlOGU1ODA1Y2UxZGZmNjY1IjZjb3JlW2M1OTMwYzg1YTEyZGU4MjJdOjpzbGljZTo6aW5kZXg6OnNsaWNlX2luZGV4X2ZhaWwjMjx1MzIgYXMgY29yZVtjNTkzMGM4NWExMmRlODIyXTo6Zm10OjpEaXNwbGF5Pjo6Zm10JFs8YWxsb2NbM2NhNTAxZWRmZjNmMGM3Y106OnN0cmluZzo6U3RyaW5nIGFzIGNvcmVbYzU5MzBjODVhMTJkZTgyMl06OmZtdDo6V3JpdGU+Ojp3cml0ZV9jaGFyJRlzYW1wbGVfZGF0YXNldF9hZ2dyZWdhdGVzJhZzYW1wbGVfZGF0YXNldF9pbmRleGVzJxJmaW5kX3Zpc2libGVfcmFuZ2UoEXNhbXBsZV9hZ2dyZWdhdGVzKQ9jYWxjdWxhdGVfcmFuZ2UqOHN0ZDo6dGhyZWFkOjpsb2NhbDo6TG9jYWxLZXk8VD46OndpdGg6OmhlOTVjZWY1NTk3NjZjZTAwK0Bjb3JlOjpzbGljZTo6c29ydDo6c2hhcmVkOjpwaXZvdDo6bWVkaWFuM19yZWM6OmhlMDkzZWQ3OTU3Mjg1MmE2LDhzdGQ6OnRocmVhZDo6bG9jYWw6OkxvY2FsS2V5PFQ+Ojp3aXRoOjpoNzlkNTExMzk4ZjU0Y2Y4OS04c3RkOjp0aHJlYWQ6OmxvY2FsOjpMb2NhbEtleTxUPjo6d2l0aDo6aDk4YzlkZTAxMDhhMzhlZGEufzxzdGRbYTU0Mzk5NmU2ZTdkYmYxZV06OnBhbmlja2luZzo6cGFuaWNfaGFuZGxlcjo6Rm9ybWF0U3RyaW5nUGF5bG9hZCBhcyBjb3JlW2M1OTMwYzg1YTEyZGU4MjJdOjpwYW5pYzo6UGFuaWNQYXlsb2FkPjo6dGFrZV9ib3gvPHdhdmVmb3JtX3NhbXBsaW5nX3dhc206OnNhbXBsZV9hZ2dyZWdhdGVzOjpoMzljYTc4ODA2NWVhZjVkNDBwPGFsbG9jOjp2ZWM6OlZlYzxUPiBhcyBhbGxvYzo6dmVjOjpzcGVjX2Zyb21faXRlcl9uZXN0ZWQ6OlNwZWNGcm9tSXRlck5lc3RlZDxULEk+Pjo6ZnJvbV9pdGVyOjpoMGU0M2ZjZmRkNGE3OWFhZTFRYWxsb2M6OnJhd192ZWM6OlJhd1ZlY0lubmVyPEE+OjpyZXNlcnZlOjpkb19yZXNlcnZlX2FuZF9oYW5kbGU6OmhlMjEyNzkzYmI0NzAxOGYyMjFzdGRbYTU0Mzk5NmU2ZTdkYmYxZV06OnBhbmlja2luZzo6cGFuaWNfd2l0aF9ob29rMzxjb3JlOjpzbGljZTo6c29ydDo6c3RhYmxlOjpkcmlmdHNvcnRfbWFpbjo6aDQ1ZDRhMWQxNmJmNTAwY2I0PmFsbG9jOjpyYXdfdmVjOjpSYXdWZWNJbm5lcjxBPjo6ZmluaXNoX2dyb3c6Omg5YzE4MjU2ODMzNmY0ZjQ4NT5hbGxvYzo6cmF3X3ZlYzo6UmF3VmVjSW5uZXI8QT46OmZpbmlzaF9ncm93OjpoNGFlNGZmNmI4ODM1YjQzOTY8PGFsbG9jWzNjYTUwMWVkZmYzZjBjN2NdOjpyYXdfdmVjOjpSYXdWZWNJbm5lcj46OmZpbmlzaF9ncm93N3w8YWxsb2NbM2NhNTAxZWRmZjNmMGM3Y106OnJhd192ZWM6OlJhd1ZlY0lubmVyPF8+Pjo6cmVzZXJ2ZTo6ZG9fcmVzZXJ2ZV9hbmRfaGFuZGxlOjo8YWxsb2NbM2NhNTAxZWRmZjNmMGM3Y106OmFsbG9jOjpHbG9iYWw+OA9kaXNwb3NlX2RhdGFzZXQ5QWFsbG9jOjpyYXdfdmVjOjpSYXdWZWNJbm5lcjxBPjo6Z3Jvd19hbW9ydGl6ZWQ6OmhjMWFmNGJmN2VkNTQ0ZmYzOhdyZWdpc3Rlcl9zYW1wbGVfZGF0YXNldDsQcmVnaXN0ZXJfZGF0YXNldDx6PHN0ZFthNTQzOTk2ZTZlN2RiZjFlXTo6cGFuaWNraW5nOjpwYW5pY19oYW5kbGVyOjpGb3JtYXRTdHJpbmdQYXlsb2FkIGFzIGNvcmVbYzU5MzBjODVhMTJkZTgyMl06OnBhbmljOjpQYW5pY1BheWxvYWQ+OjpnZXQ9PHN0ZFthNTQzOTk2ZTZlN2RiZjFlXTo6cGFuaWNraW5nOjpwYW5pY19oYW5kbGVyOjp7Y2xvc3VyZSMwfT4/d2F2ZWZvcm1fc2FtcGxpbmdfd2FzbTo6ZGlzcG9zZV9hbGxfZGF0YXNldHM6OmgyNjcyMWYwZTFmNDY2Yjc0PxlfX2V4dGVybnJlZl90YWJsZV9kZWFsbG9jQDhhbGxvYzo6cmF3X3ZlYzo6UmF3VmVjPFQsQT46Omdyb3dfb25lOjpoMjM5YThkZWQ5ZDQ4OWIwMUE4YWxsb2M6OnJhd192ZWM6OlJhd1ZlYzxULEE+Ojpncm93X29uZTo6aDdmODZlZjE3MDY2NWUwMmZCOGFsbG9jOjpyYXdfdmVjOjpSYXdWZWM8VCxBPjo6Z3Jvd19vbmU6Omg4ZDcwOTIyOTI4ZWJhYTUzQzw8Y29yZVtjNTkzMGM4NWExMmRlODIyXTo6Zm10OjpidWlsZGVyczo6RGVidWdTdHJ1Y3Q+OjpmaW5pc2hEWTxkbG1hbGxvY1tlMjRhMjc3MDA2MzRkNjA5XTo6c3lzOjpTeXN0ZW0gYXMgZGxtYWxsb2NbZTI0YTI3NzAwNjM0ZDYwOV06OkFsbG9jYXRvcj46OmFsbG9jRT53YXZlZm9ybV9zYW1wbGluZ193YXNtOjpkYXRhc2V0X2luZGV4X2J5dGVzOjpoMTIxODQzZmRiMDg2ODQyNkYoX19ydXN0Y1tiNzk3NGU4NjkwNDMwZGQ5XTo6X19yZGxfZGVhbGxvY0daPGFsbG9jWzNjYTUwMWVkZmYzZjBjN2NdOjpzdHJpbmc6OlN0cmluZyBhcyBjb3JlW2M1OTMwYzg1YTEyZGU4MjJdOjpmbXQ6OldyaXRlPjo6d3JpdGVfc3RySDZ3YXZlZm9ybV9zYW1wbGluZ193YXNtOjpwdXNoX3VuaXF1ZTo6aDc0NTI5MTExNmFiMzA0MjNJNWNvcmVbYzU5MzBjODVhMTJkZTgyMl06OnBhbmlja2luZzo6cGFuaWNfYm91bmRzX2NoZWNrSi1fX3J1c3RjW2I3OTc0ZTg2OTA0MzBkZDldOjpfX3JkbF9hbGxvY196ZXJvZWRLN3N0ZFthNTQzOTk2ZTZlN2RiZjFlXTo6cGFuaWNraW5nOjpwYW5pY19jb3VudDo6aW5jcmVhc2VMOGFsbG9jOjpyYXdfdmVjOjpSYXdWZWM8VCxBPjo6Z3Jvd19vbmU6OmhjODgyMzc4NDk0ZDRhYmJlTXw8c3RkW2E1NDM5OTZlNmU3ZGJmMWVdOjpwYW5pY2tpbmc6OnBhbmljX2hhbmRsZXI6OlN0YXRpY1N0clBheWxvYWQgYXMgY29yZVtjNTkzMGM4NWExMmRlODIyXTo6cGFuaWM6OlBhbmljUGF5bG9hZD46OnRha2VfYm94Tixjb3JlW2M1OTMwYzg1YTEyZGU4MjJdOjpwYW5pY2tpbmc6OnBhbmljX2ZtdE8RX193YmluZGdlbl9tYWxsb2NQczxzdGRbYTU0Mzk5NmU2ZTdkYmYxZV06OnBhbmlja2luZzo6cGFuaWNfaGFuZGxlcjo6Rm9ybWF0U3RyaW5nUGF5bG9hZCBhcyBjb3JlW2M1OTMwYzg1YTEyZGU4MjJdOjpmbXQ6OkRpc3BsYXk+OjpmbXRRRDxjb3JlW2M1OTMwYzg1YTEyZGU4MjJdOjpmbXQ6OkZvcm1hdHRlcj46OnBhZF9pbnRlZ3JhbDo6d3JpdGVfcHJlZml4UiFzYW1wbGVfYWdncmVnYXRlcyBtdWx0aXZhbHVlIHNoaW1TImZpbmRfdmlzaWJsZV9yYW5nZSBtdWx0aXZhbHVlIHNoaW1UHnNhbXBsZV9pbmRleGVzIG11bHRpdmFsdWUgc2hpbVUmc2FtcGxlX2RhdGFzZXRfaW5kZXhlcyBtdWx0aXZhbHVlIHNoaW1WJ3JlZ2lzdGVyX3NhbXBsZV9kYXRhc2V0IG11bHRpdmFsdWUgc2hpbVcpc2FtcGxlX2RhdGFzZXRfYWdncmVnYXRlcyBtdWx0aXZhbHVlIHNoaW1YGl9fd2JpbmRnZW5fZGVzdHJveV9jbG9zdXJlWR9jYWxjdWxhdGVfcmFuZ2UgbXVsdGl2YWx1ZSBzaGltWl48c3RkW2E1NDM5OTZlNmU3ZGJmMWVdOjp0aHJlYWQ6OmxvY2FsOjpBY2Nlc3NFcnJvciBhcyBjb3JlW2M1OTMwYzg1YTEyZGU4MjJdOjpmbXQ6OkRlYnVnPjo6Zm10Wz9jb3JlW2M1OTMwYzg1YTEyZGU4MjJdOjpzbGljZTo6c29ydDo6c3RhYmxlOjpkcmlmdDo6c3FydF9hcHByb3hcIHJlZ2lzdGVyX2RhdGFzZXQgbXVsdGl2YWx1ZSBzaGltXThzdGRbYTU0Mzk5NmU2ZTdkYmYxZV06OnRocmVhZDo6bG9jYWw6OnBhbmljX2FjY2Vzc19lcnJvcl40Y29yZVtjNTkzMGM4NWExMmRlODIyXTo6Y2VsbDo6cGFuaWNfYWxyZWFkeV9ib3Jyb3dlZF88Y29yZVtjNTkzMGM4NWExMmRlODIyXTo6Y2VsbDo6cGFuaWNfYWxyZWFkeV9tdXRhYmx5X2JvcnJvd2VkYCxfX3J1c3RjW2I3OTc0ZTg2OTA0MzBkZDldOjpydXN0X2JlZ2luX3Vud2luZGE2PGNvcmVbYzU5MzBjODVhMTJkZTgyMl06OmZtdDo6Rm9ybWF0dGVyPjo6ZGVidWdfc3RydWN0YiZzdGRbYTU0Mzk5NmU2ZTdkYmYxZV06OmFsbG9jOjpydXN0X29vbWMuYWxsb2NbM2NhNTAxZWRmZjNmMGM3Y106OmJveGVkOjpib3hfbmV3X3VuaW5pdGRyY29yZVtjNTkzMGM4NWExMmRlODIyXTo6cHRyOjpkcm9wX2luX3BsYWNlOjo8c3RkW2E1NDM5OTZlNmU3ZGJmMWVdOjpwYW5pY2tpbmc6OnBhbmljX2hhbmRsZXI6OkZvcm1hdFN0cmluZ1BheWxvYWQ+ZTNzdGRbYTU0Mzk5NmU2ZTdkYmYxZV06OmFsbG9jOjpydXN0X29vbTo6e2Nsb3N1cmUjMH1me2NvcmVbYzU5MzBjODVhMTJkZTgyMl06OnB0cjo6ZHJvcF9pbl9wbGFjZTo6PGNvcmVbYzU5MzBjODVhMTJkZTgyMl06Om9wdGlvbjo6T3B0aW9uPGFsbG9jWzNjYTUwMWVkZmYzZjBjN2NdOjp2ZWM6OlZlYzx1OD4+PmdVY29yZVtjNTkzMGM4NWExMmRlODIyXTo6cHRyOjpkcm9wX2luX3BsYWNlOjo8YWxsb2NbM2NhNTAxZWRmZjNmMGM3Y106OnN0cmluZzo6U3RyaW5nPmgmX19ydXN0Y1tiNzk3NGU4NjkwNDMwZGQ5XTo6X19yZGxfYWxsb2NpBGZtYXhqBGZtaW5rLmFsbG9jWzNjYTUwMWVkZmYzZjBjN2NdOjpyYXdfdmVjOjpoYW5kbGVfZXJyb3JsKGNvcmVbYzU5MzBjODVhMTJkZTgyMl06OnBhbmlja2luZzo6cGFuaWNtJ1JlZihTdHJpbmcpIC0+IEV4dGVybnJlZiBleHRlcm5yZWYgc2hpbW4PX193YmluZGdlbl9mcmVlb1Y8YWxsb2NbM2NhNTAxZWRmZjNmMGM3Y106OnN0cmluZzo6U3RyaW5nIGFzIGNvcmVbYzU5MzBjODVhMTJkZTgyMl06OmFueTo6QW55Pjo6dHlwZV9pZHAzPCZzdHIgYXMgY29yZVtjNTkzMGM4NWExMmRlODIyXTo6YW55OjpBbnk+Ojp0eXBlX2lkcTM8Y29yZVtjNTkzMGM4NWExMmRlODIyXTo6Zm10OjpGb3JtYXR0ZXI+Ojp3cml0ZV9zdHJyKV9fcnVzdGNbYjc5NzRlODY5MDQzMGRkOV06Ol9fcnVzdF9yZWFsbG9jcxRfX3diaW5kZ2VuX2V4bl9zdG9yZXR3PHN0ZFthNTQzOTk2ZTZlN2RiZjFlXTo6cGFuaWNraW5nOjpwYW5pY19oYW5kbGVyOjpTdGF0aWNTdHJQYXlsb2FkIGFzIGNvcmVbYzU5MzBjODVhMTJkZTgyMl06OnBhbmljOjpQYW5pY1BheWxvYWQ+OjpnZXR1cDxzdGRbYTU0Mzk5NmU2ZTdkYmYxZV06OnBhbmlja2luZzo6cGFuaWNfaGFuZGxlcjo6U3RhdGljU3RyUGF5bG9hZCBhcyBjb3JlW2M1OTMwYzg1YTEyZGU4MjJdOjpmbXQ6OkRpc3BsYXk+OjpmbXR2KV9fcnVzdGNbYjc5NzRlODY5MDQzMGRkOV06Ol9fcnVzdF9kZWFsbG9jdyVfX3J1c3RjW2I3OTc0ZTg2OTA0MzBkZDldOjpydXN0X3BhbmljeFo8YWxsb2NbM2NhNTAxZWRmZjNmMGM3Y106OnN0cmluZzo6U3RyaW5nIGFzIGNvcmVbYzU5MzBjODVhMTJkZTgyMl06OmZtdDo6V3JpdGU+Ojp3cml0ZV9mbXR5M2FsbG9jWzNjYTUwMWVkZmYzZjBjN2NdOjpyYXdfdmVjOjpjYXBhY2l0eV9vdmVyZmxvd3otY29yZVtjNTkzMGM4NWExMmRlODIyXTo6b3B0aW9uOjp1bndyYXBfZmFpbGVke0djb3JlW2M1OTMwYzg1YTEyZGU4MjJdOjpwYW5pY2tpbmc6OnBhbmljX2NvbnN0OjpwYW5pY19jb25zdF9yZW1fYnlfemVyb3xOY29yZVtjNTkzMGM4NWExMmRlODIyXTo6c2xpY2U6OnNvcnQ6OnNoYXJlZDo6c21hbGxzb3J0OjpwYW5pY19vbl9vcmRfdmlvbGF0aW9ufSdfX3J1c3RjW2I3OTc0ZTg2OTA0MzBkZDldOjpfX3J1c3RfYWxsb2N+Ll9fcnVzdGNbYjc5NzRlODY5MDQzMGRkOV06Ol9fcnVzdF9hbGxvY196ZXJvZWR/NV9fcnVzdGNbYjc5NzRlODY5MDQzMGRkOV06Ol9fcnVzdF9hbGxvY19lcnJvcl9oYW5kbGVygAF6PHN0ZFthNTQzOTk2ZTZlN2RiZjFlXTo6cGFuaWNraW5nOjpwYW5pY19oYW5kbGVyOjpTdGF0aWNTdHJQYXlsb2FkIGFzIGNvcmVbYzU5MzBjODVhMTJkZTgyMl06OnBhbmljOjpQYW5pY1BheWxvYWQ+Ojphc19zdHKBATJhbGxvY1szY2E1MDFlZGZmM2YwYzdjXTo6YWxsb2M6OmhhbmRsZV9hbGxvY19lcnJvcoIBWzxjb3JlW2M1OTMwYzg1YTEyZGU4MjJdOjpjZWxsOjpCb3Jyb3dNdXRFcnJvciBhcyBjb3JlW2M1OTMwYzg1YTEyZGU4MjJdOjpmbXQ6OkRpc3BsYXk+OjpmbXSDAVg8Y29yZVtjNTkzMGM4NWExMmRlODIyXTo6Y2VsbDo6Qm9ycm93RXJyb3IgYXMgY29yZVtjNTkzMGM4NWExMmRlODIyXTo6Zm10OjpEaXNwbGF5Pjo6Zm10hAF7c3RkW2E1NDM5OTZlNmU3ZGJmMWVdOjpzeXM6OmJhY2t0cmFjZTo6X19ydXN0X2VuZF9zaG9ydF9iYWNrdHJhY2U6OjxzdGRbYTU0Mzk5NmU2ZTdkYmYxZV06OmFsbG9jOjpydXN0X29vbTo6e2Nsb3N1cmUjMH0sICE+hQGEAXN0ZFthNTQzOTk2ZTZlN2RiZjFlXTo6c3lzOjpiYWNrdHJhY2U6Ol9fcnVzdF9lbmRfc2hvcnRfYmFja3RyYWNlOjo8c3RkW2E1NDM5OTZlNmU3ZGJmMWVdOjpwYW5pY2tpbmc6OnBhbmljX2hhbmRsZXI6OntjbG9zdXJlIzB9LCAhPoYBNnN0ZFthNTQzOTk2ZTZlN2RiZjFlXTo6YWxsb2M6OmRlZmF1bHRfYWxsb2NfZXJyb3JfaG9va4cBdTxzdGRbYTU0Mzk5NmU2ZTdkYmYxZV06OnBhbmlja2luZzo6YmVnaW5fcGFuaWM6OlBheWxvYWQ8JnN0cj4gYXMgY29yZVtjNTkzMGM4NWExMmRlODIyXTo6cGFuaWM6OlBhbmljUGF5bG9hZD46OmFzX3N0cogBLV9fcnVzdGNbYjc5NzRlODY5MDQzMGRkOV06Ol9fcnVzdF9zdGFydF9wYW5pY4kBOWNvcmU6Om9wczo6ZnVuY3Rpb246OkZuT25jZTo6Y2FsbF9vbmNlOjpoNzhhOGY4NDc3NzM3N2ZmMIoBPl9fcnVzdGNbYjc5NzRlODY5MDQzMGRkOV06Ol9fcnVzdF9ub19hbGxvY19zaGltX2lzX3Vuc3RhYmxlX3YyiwEnX19ydXN0Y1tiNzk3NGU4NjkwNDMwZGQ5XTo6X19ydXN0X2Fib3J0BRgBARVfX3diaW5kZ2VuX2V4dGVybnJlZnMHEgEAD19fc3RhY2tfcG9pbnRlcgkRAgAHLnJvZGF0YQEFLmRhdGEAfAlwcm9kdWNlcnMCCGxhbmd1YWdlAQRSdXN0AAxwcm9jZXNzZWQtYnkDBXJ1c3RjHTEuOTUuMCAoNTk4MDc2MTZlIDIwMjYtMDQtMTQpBndhbHJ1cwYwLjI2LjEMd2FzbS1iaW5kZ2VuEzAuMi4xMTggKDc1M2JiN2ZmNCkAlAEPdGFyZ2V0X2ZlYXR1cmVzCCsLYnVsay1tZW1vcnkrD2J1bGstbWVtb3J5LW9wdCsWY2FsbC1pbmRpcmVjdC1vdmVybG9uZysKbXVsdGl2YWx1ZSsPbXV0YWJsZS1nbG9iYWxzKxNub250cmFwcGluZy1mcHRvaW50Kw9yZWZlcmVuY2UtdHlwZXMrCHNpZ24tZXh0`,``+{}.url));let t=Qr();(typeof e==`string`||typeof Request==`function`&&e instanceof Request||typeof URL==`function`&&e instanceof URL)&&(e=fetch(e));let{instance:n,module:r}=await gi(await e,t);return hi(n,r)}var vi={none:0,peak:1,lttb:2,average:3,min:4,max:5,minmax:6,sum:7},yi;function bi(e,t){return t===0?0:Number.isFinite(e)?Math.min(t,Math.max(1,Math.floor(e))):t}function xi(e){if(e.x.length!==e.y.length)throw Error(`x and y must have the same length`)}function Si(e){return yi??=Promise.resolve(_i(e)).then(()=>void 0),yi}async function Ci(e){xi(e),await Si();let t=bi(e.targetPointCount,e.x.length),n=vi[e.strategy];if(e.strategy!==`average`&&e.strategy!==`sum`)return{kind:`source-indexes`,sourceIndexes:Zr(e.x,e.y,n,t)};let r=Xr(e.x,e.y,n,t),i=new Float64Array(r.length/2),a=new Float64Array(r.length/2);for(let e=0;e<i.length;e+=1)i[e]=r[e*2],a[e]=r[e*2+1];return{kind:`aggregates`,x:i,y:a}}async function wi(e,t){if(e.length!==t.length)throw Error(`x and y must have the same length`);await Si();let n=Jr(e,t);return n.length===4?{x:[n[0],n[1]],y:[n[2],n[3]]}:void 0}async function Ti(e,t,n){if(e.length!==t.length)throw Error(`x and y must have the same length`);await Si();let r=Yr(e,t,n[0],n[1]);return[r[0],r[1]]}var Ei=(e,t)=>t?e.filter(e=>e.series.length>0):e,Di=(e,t,n,r,i)=>{let a=t?.[i];if(a!==void 0)return a;if(e!==void 0)return n===1?e:typeof e==`number`?e+r:`${e}-${r+1}`},Oi=(e,t,n)=>(r,i=0)=>{let a=n(),o=a.findIndex(e=>e.id===r);return Di(e(),t(),Math.max(a.length,i+1),o>=0?o:i,r)};function ki(e,t,n,r){return e===`independent`?Object.fromEntries(t.flatMap((e,t)=>{let n=r[t];return n?[[e.id,n]]:[]})):n}function Ai(e,t,n,r,i,a,o,s,c,l=!0,u){let d=G(typeof c==`object`?c.labelTextStyle:void 0),f=e.filter(e=>e.series.length>0).flatMap(e=>Kt(e,t,n,r,i,c)).map(e=>qt(e.domain,a,void 0,l?e.seriesList[0]?.unit:void 0,o,s,u,e.maximumTick,e.minimumTick).tickTextWidth),p=Math.max(7,...f),m=p+7+4,h=-(7+p+0+d/2);return{tickClearance:m,fullClearance:p+7+0+d+4,labelCenterX:h}}function ji(t,n,r,i,a){let o=(e,t,n)=>t>0&&n>0?e.translate((n/t-1)*e.x/e.k,0):e;(0,e.watch)(()=>({visible:t(),width:n.value,tracks:r.value.map(e=>({id:e.id,index:e.index,width:e.width}))}),(e,t)=>{if(e.visible===t.visible)return;i.value=o(i.value,t.width,e.width);let n=[...a.value];e.tracks.forEach(e=>{let r=t.tracks.find(t=>t.id===e.id),i=n[e.index];r&&i&&(n[e.index]=o(i,r.width,e.width))}),a.value=n})}function Mi(t){let{props:n,chartTracks:r,layoutTracks:i,chartWidth:a,gridOptions:o,viewportYDomains:s,yAxisTickCount:c}=t,l=(0,e.computed)(()=>n.layoutPreset===`edge-compact`),u=(0,e.computed)(()=>n.unitDisplayMode!==`channel-label`&&n.unitDisplayMode!==`channel-label-or-legend`&&(!l.value||n.unitDisplayMode===`axis`)),d=(0,e.computed)(()=>Ai(r.value,n.overlayMode,n.yDomain,n.yDomains,s.value,n.axes?.y?.nice!==!1,c.value,n.displayMode===`compact`,n.axes?.y,u.value,l.value?Tt:void 0)),f=(0,e.computed)(()=>r.value.some(e=>{let t=e.visibleSeries.length?e.visibleSeries:e.series;return t.length===1&&!!(t[0]?.name.trim()||n.yLabel)})),p=(0,e.computed)(()=>r.value.some(e=>e.visibleSeries.length>0)),m=(0,e.computed)(()=>r.value.some(e=>e.series.length>0)),h=(0,e.computed)(()=>Math.max(M.left,f.value?d.value.fullClearance:m.value?d.value.tickClearance:0)),g=(0,e.computed)(()=>Jt(i.value.filter(e=>e.series.length>0),n.overlayMode,n.yDomain,n.yDomains,c.value,n.axes?.y?.nice!==!1,n.displayMode===`compact`,s.value,n.axes?.y,u.value,l.value?Tt:void 0)),_=(0,e.computed)(()=>l.value?M.right/4+Math.max(0,v.value-4):n.overlayMode===`multi-axis`?Math.max(h.value,g.value.clearance.left):h.value),v=(0,e.computed)(()=>m.value?n.overlayMode===`multi-axis`||f.value?g.value.clearance.left:d.value.tickClearance:0),y=(0,e.computed)(()=>n.overlayMode===`multi-axis`?Math.max(M.right,g.value.clearance.right):M.right),b=(0,e.computed)(()=>Math.max(0,a.value-_.value-y.value));return{yAxisMetrics:d,yAxisSlots:g,resolvedChartLeftMargin:_,innerWidth:b,yAxisLayout:(0,e.computed)(()=>{let e=ut(n.displayMode),t=o.value.columnCount,r=t>1,i=Math.max(e,l.value?g.value.clearance.left:d.value.fullClearance),a=Math.max(e,d.value.tickClearance),s=(b.value-i*Math.max(0,t-1))/t>=120;return{horizontalGap:n.overlayMode===`multi-axis`&&r&&m.value?Math.max(e,g.value.clearance.left+g.value.clearance.right):r&&m.value?f.value&&s?i:a:e,hideSecondaryLabels:n.overlayMode!==`multi-axis`&&r&&f.value&&!s}}),hasVisibleWaveformData:p}}function Ni(n){let{props:r,preparedSeries:i,currentPage:a,hiddenSeriesIdSet:o,chartWidth:s,innerHeight:c,isCleanView:u,sharedTransform:d,independentTransforms:f,sharedYDomains:p,independentYDomains:m,annotationInteraction:h,linePointOverrides:g}=n,_=(0,e.computed)(()=>i.value.map((e,t)=>({...e,color:e.color??(t===0?r.lineColor:I[t%I.length])}))),v=(0,e.computed)(()=>ot(r.grid)),y=(0,e.computed)(()=>{let e=new Map;_.value.forEach(t=>{let n=t.trackId||t.id,r=e.get(n);r?r.push(t):e.set(n,[t])});let t=v.value.trackOrder??[];return[...t,...Array.from(e.keys()).filter(e=>!t.includes(e))].map(t=>{let n=e.get(t)??[],r=n.filter(e=>!o.value.has(e.id)),i=[],a=[];return(r.length?r:n).forEach(e=>{i.push(e.xDomain[0],e.xDomain[1]),a.push(e.yDomain[0],e.yDomain[1])}),{id:t,series:n,visibleSeries:r,xDomain:i.length?l(i):[0,1],yDomain:a.length?l(a):[0,1]}})}),b=(0,e.computed)(()=>r.unitDisplayMode===`channel-label-or-legend`||r.unitDisplayMode===`legend-single-series`&&!y.value.some(e=>e.series.length>1)),x=(0,e.computed)(()=>qe(r.rendering)),S=(0,e.computed)(()=>Ei(y.value,v.value.hideEmptyTracks)),C=(0,e.computed)(()=>ct(S.value.length,v.value)),w=(0,e.computed)(()=>lt(S.value,a.value,v.value)),T=(0,e.computed)(()=>r.unitDisplayMode===`channel-label-or-legend`&&w.value.some(e=>e.series.length>1)),E=(0,e.computed)(()=>{let e=w.value.filter(e=>e.series.length>0);return v.value.fillIncompleteLastRow&&e.length>0?e:w.value}),D=(0,e.computed)(()=>Rt(c.value,r.axes?.y?.splitNumber)),O=(0,e.computed)(()=>ki(r.displayMode,y.value,p.value,m.value)),{yAxisMetrics:k,yAxisSlots:A,resolvedChartLeftMargin:j,innerWidth:M,yAxisLayout:N,hasVisibleWaveformData:P}=Mi({props:r,chartTracks:y,layoutTracks:E,chartWidth:s,gridOptions:v,viewportYDomains:O,yAxisTickCount:D}),F=(0,e.computed)(()=>_.value.length>0),L=(0,e.computed)(()=>M.value>0&&c.value>0),R=(0,e.computed)(()=>r.xLabel??`时间(${r.timeUnit})`),z=(0,e.computed)(()=>r.interactionMode),B=(0,e.computed)(()=>z.value===`zoom`),V=(0,e.computed)(()=>{let e=[];return(y.value.some(e=>e.visibleSeries.length)?y.value.filter(e=>e.visibleSeries.length):y.value.filter(e=>e.series.length)).forEach(t=>{e.push(t.xDomain[0],t.xDomain[1])}),l(e)}),ee=(0,e.computed)(()=>{let e=r.initialXDomain;return e&&Number.isFinite(e[0])&&Number.isFinite(e[1])&&e[0]!==e[1]?kt(_t(e[0]<e[1]?e:[e[1],e[0]],r.xDomainStrategy,!0),r):kt(_t(V.value,r.xDomainStrategy),r)}),H=e=>{let t=r.initialXDomains?.[e.series?.trackId??e.series?.id??e.id]??(e.series?r.initialXDomains?.[e.series.id]:void 0)??r.initialXDomain;return t&&Number.isFinite(t[0])&&Number.isFinite(t[1])&&t[0]!==t[1]?kt(_t(t[0]<t[1]?t:[t[1],t[0]],r.xDomainStrategy,!0),r):kt(_t(l(e.seriesList.flatMap(e=>e.xDomain)),r.xDomainStrategy),r)},U=(0,e.computed)(()=>(r.displayMode===`independent`?void 0:n.boundaries?.value.shared)??ee.value),te=e=>n.boundaries?.value[e.id]??H(e),ne=(0,e.computed)(()=>At(d.value.rescaleX((0,t.scaleLinear)(U.value,[0,M.value])).domain(),r)),W=(0,e.computed)(()=>dt(M.value,c.value,v.value,r.displayMode,E.value.map(e=>r.layoutPreset===`edge-compact`?e.series.length>0:!!e),N.value.horizontalGap,!0,r.layoutPreset===`edge-compact`&&!u.value).map((e,t)=>({...e,series:E.value[t]}))),G=(0,e.computed)(()=>Nt({cells:W.value,grid:v.value,useNonEmptyBottomTracks:r.layoutPreset===`edge-compact`,compactYAxisLayout:r.layoutPreset===`edge-compact`,showAxisUnits:r.unitDisplayMode!==`channel-label`&&r.unitDisplayMode!==`channel-label-or-legend`&&(r.layoutPreset!==`edge-compact`||r.unitDisplayMode===`axis`),displayMode:r.displayMode,overlayMode:r.overlayMode,independentTransforms:f.value,sharedZoomDomain:ne.value,initialXDomain:r.initialXDomain?U.value:void 0,initialXDomains:r.initialXDomains,effectiveXDomains:n.boundaries?.value,xDomainStrategy:r.xDomainStrategy,integerZoom:r.integerZoom,fixedYDomain:r.yDomain,fixedYDomains:r.yDomains,yDomains:O.value,timeUnit:r.timeUnit,xAxisLabelFormatter:r.axes?.x?.labelFormatter,yAxisSplitNumber:r.axes?.y?.splitNumber,yAxisNice:r.axes?.y?.nice,yAxisPadding:r.axes?.y,rendering:x.value,linePointOverrides:g?.value,hideSecondaryLabels:u.value||N.value.hideSecondaryLabels,yLabel:r.yLabel,yAxisLabelX:A.value.slots.find(e=>e.side===`left`&&e.sideIndex===0)?.labelOffset??k.value.labelCenterX,yAxisSlots:A.value.slots,showEmptyTracks:F.value}));ji(()=>r.axes?.y?.extremaTicksVisible!==!1,M,G,d,f);let re=e=>e.seriesList.map(t=>({...e,series:t,yScale:e.seriesPaths.find(e=>e.series.id===t.id)?.yScale??e.yScale})),ie=(e,t)=>e.seriesPaths.find(e=>e.series.id===t)?.yScale??e.yScale,K=(0,e.computed)(()=>G.value.flatMap(re));return{chartSeries:_,chartTracks:y,showLegendUnits:b,hideYAxisTitles:T,pageableTracks:S,renderingOptions:x,gridOptions:v,pageCount:C,pagedTracks:w,resolvedChartLeftMargin:j,innerWidth:M,hasVisibleWaveformData:P,hasWaveformData:F,hasChartArea:L,resolvedXLabel:R,activeInteractionMode:z,isZoomMode:B,initialXDomain:U,originalXDomain:ee,resolveOriginalTrackDomain:H,sharedZoomDomain:ne,resolveInitialTrackDomain:te,gridCells:W,trackLayouts:G,annotationLayoutsForTrack:re,resolveSeriesYScale:ie,annotationTrackLayouts:K,renderedAnnotations:(0,e.computed)(()=>r.annotationsVisible?zn(r.annotations,K.value,M.value,c.value):[]),editorSeries:(0,e.computed)(()=>{let e=h.editorDraft.value?.annotation.seriesId,t=_.value.find(t=>t.id===e);return t?{id:t.id,name:t.name.trim()||t.id,color:t.color,unit:t.unit}:void 0}),resolveFrameNumber:Oi(()=>r.frameNumber,()=>r.frameNumbers,()=>y.value)}}var Pi=1e-6;function Fi(e){return Number.isFinite(e)?Math.max(1,e):1}function Ii({naturalWidth:e,naturalHeight:t,availableWidth:n,rotation:r,edgeCompact:i=!1}){let a=i?8:18,o=i?0:44,s=Fi(e),c=Fi(t),l=Fi(n),u=Number.isFinite(r)?r:0,d=u*Math.PI/180,f=Math.abs(Math.cos(d)),p=Math.abs(Math.sin(d)),m=(u%360+360)%360;if(!(m>Pi&&Math.abs(m-360)>Pi)){let e=Math.max(1,Math.ceil(s/l)),t=l,n=c*e;return{textWidth:t,textHeight:n,visualWidth:t,visualHeight:n,areaHeight:Math.max(o,n+a),scale:1,wrapped:e>1}}let h=160-a,g=s*f+c*p,_=s*p+c*f,v=Math.min(1,l/g,h/_),y=g*v,b=_*v;return{textWidth:s,textHeight:c,visualWidth:y,visualHeight:b,areaHeight:Math.min(160,Math.max(o,b+a)),scale:v,wrapped:!1}}function Li(t){let{props:n,observedWidth:r,observedHeight:i,measuredTitleWidth:a,measuredTitleHeight:o,internalHiddenSeriesIds:s,paginationBandHeight:c}=t,l=(0,e.computed)(()=>Number.isFinite(n.width)?Math.max(0,n.width??0):void 0),u=(0,e.computed)(()=>Number.isFinite(n.height)?Math.max(180,n.height??0):void 0),d=(0,e.computed)(()=>r.value>0?r.value:l.value??0),f=(0,e.computed)(()=>i.value>0?i.value:u.value??180),p=(0,e.computed)(()=>({width:l.value===void 0?`100%`:`${l.value}px`,height:u.value===void 0?`100%`:`${u.value}px`})),m=(0,e.computed)(()=>n.cleanView===!0),h=(0,e.computed)(()=>n.presentationMode===!0),g=(0,e.computed)(()=>{let e=n.zeroLine.width,t=n.zeroLine.opacity,r=n.zeroLine.boundaryThreshold;return{visible:n.zeroLine.visible!==!1,color:n.zeroLine.color||R.COLOR,width:typeof e==`number`&&Number.isFinite(e)&&e>0?e:R.WIDTH,dash:n.zeroLine.dash??R.DASH,opacity:typeof t==`number`&&Number.isFinite(t)&&t>=0&&t<=1?t:R.OPACITY,boundaryThreshold:typeof r==`number`&&Number.isFinite(r)&&r>=0?r:R.BOUNDARY_THRESHOLD}}),_=(0,e.computed)(()=>n.legend.backgroundColor||`transparent`),v=(0,e.computed)(()=>n.legend.interactive===!0),y=(0,e.computed)(()=>n.hiddenSeriesIds===void 0?s.value:new Set(n.hiddenSeriesIds)),b=(0,e.computed)(()=>Array.from(y.value)),x=e=>n.legend.trackPositions?.[e]??n.legend.position??`top-right`,S=e=>{let t=n.legend.orientation??`auto`;return t===`auto`?e===`top`||e===`bottom`?`horizontal`:`vertical`:t},C=(0,e.computed)(()=>n.layoutPreset===`edge-compact`),w=(0,e.computed)(()=>n.title?.text.trim()??``),T=(0,e.computed)(()=>!!n.title&&n.title?.visible!==!1&&w.value.length>0),E=(0,e.computed)(()=>T.value&&!m.value),D=(0,e.computed)(()=>{let e=n.title?.textStyle?.fontSize;return Number.isFinite(e)&&(e??0)>0?e:14}),O=(0,e.computed)(()=>{let e=n.title?.textStyle?.rotation;return Number.isFinite(e)?e:0}),k=(0,e.computed)(()=>{let e=(O.value%360+360)%360;return e>1e-6&&Math.abs(e-360)>1e-6}),A=(0,e.computed)(()=>({color:n.title?.textStyle?.color??`#1f2937`,fontSize:`${D.value}px`,fontFamily:n.title?.textStyle?.fontFamily||`"Microsoft YaHei", "微软雅黑", sans-serif`,fontWeight:C.value&&D.value===18&&n.title?.textStyle?.fontWeight===700?600:n.title?.textStyle?.fontWeight??400,fontStyle:n.title?.textStyle?.fontStyle??`normal`,textDecoration:n.title?.textStyle?.textDecoration??`none`,letterSpacing:n.title?.textStyle?.letterSpacing??`normal`,lineHeight:String(F)})),j=(0,e.computed)(()=>{let e=Number.parseFloat(n.title?.textStyle?.letterSpacing??``),t=Number.isFinite(e)?Math.max(0,w.value.length-1)*e:0;return Math.max(1,w.value.length*D.value*P+t)}),N=(0,e.computed)(()=>{let e=d.value-48;return e>0?e:j.value}),I=(0,e.computed)(()=>({...A.value,width:`max-content`,maxWidth:k.value?`none`:`${N.value}px`,whiteSpace:k.value?`nowrap`:`normal`,overflowWrap:k.value?`normal`:`anywhere`})),L=(0,e.computed)(()=>Ii({naturalWidth:C.value&&!k.value&&o.value>0?Math.min(a.value||N.value,N.value):a.value||j.value,naturalHeight:o.value||D.value*1.2,availableWidth:N.value,rotation:O.value,edgeCompact:C.value})),z=(0,e.computed)(()=>T.value?L.value.areaHeight:0),B=(e,t)=>typeof e==`number`&&Number.isFinite(e)&&e>=0?e:t,V=(0,e.computed)(()=>({top:B(n.plotMargin.top,M.top),bottom:Math.max(C.value?44:0,B(n.plotMargin.bottom,M.bottom))})),ee=(0,e.computed)(()=>V.value.top),H=(0,e.computed)(()=>Math.max(0,f.value-z.value-c.value));return{fixedWidth:l,fixedHeight:u,chartWidth:d,chartHeight:f,containerStyle:p,isCleanView:m,isEdgeCompact:C,isPresentationMode:h,resolvedZeroLine:g,legendBackgroundColor:_,legendInteractive:v,hiddenSeriesIdSet:y,resolvedHiddenSeriesIds:b,resolveLegendPosition:x,resolveLegendOrientation:S,resolvedTitleText:w,titleAreaReserved:T,titleVisible:E,titleMeasureStyle:I,titleLayout:L,titleAreaHeight:z,resolvedPlotMargin:V,chartTopMargin:ee,drawingHeight:H,xAxisTitleY:(0,e.computed)(()=>Math.max(0,H.value-12+(C.value?3:0))),innerHeight:(0,e.computed)(()=>Math.max(0,H.value-V.value.top-V.value.bottom)),titleAreaStyle:(0,e.computed)(()=>({height:`${z.value}px`,justifyContent:n.title?.align===`left`?`flex-start`:n.title?.align===`right`?`flex-end`:`center`})),titleVisualStyle:(0,e.computed)(()=>({width:`${L.value.visualWidth}px`,height:`${L.value.visualHeight}px`})),titleTextStyle:(0,e.computed)(()=>({...A.value,width:`${L.value.textWidth}px`,minHeight:`${L.value.textHeight}px`,textAlign:n.title?.align??`center`,whiteSpace:k.value?`nowrap`:`normal`,overflowWrap:k.value?`normal`:`anywhere`,transform:`translate(-50%, -50%) rotate(${O.value}deg) scale(${L.value.scale})`}))}}function Ri(t,n,r,i){return{plotCenterX:(0,e.computed)(()=>n.value+r.value/2),plotTitleAreaStyle:(0,e.computed)(()=>!t.title?.align||t.title.align===`center`||t.title.align===`left`?{...i.value,boxSizing:`border-box`,marginLeft:`${n.value}px`,width:`${r.value}px`,...t.title?.align===`left`?{paddingLeft:`0px`,paddingRight:`0px`}:{}}:i.value)}}function zi(e,t,n,r){return r?r===`raw`?e<=t+n?`raw`:`sampled`:e<=Math.max(0,t-n)?`raw`:`sampled`:e<=t?`raw`:`sampled`}function Bi(e=()=>void 0){let t=0,n=!1,r,i=!1,a={scheduled:0,coalesced:0,maxPending:0},o=async()=>{if(!(n||i)){n=!0;try{for(;r&&!i;){let n=r;r=void 0;try{await n.run(n.generation)}catch(r){if(!i&&n.generation===t)try{e(r,n.generation)}catch{}}}}finally{n=!1}}};return{schedule(e){return i?0:(t+=1,a.scheduled+=1,r&&(a.coalesced+=1),r={generation:t,run:e},a.maxPending=Math.max(a.maxPending,1),o(),t)},isCurrent(e){return!i&&e===t},cancelPending(){t+=1,r=void 0},dispose(){i=!0,t+=1,r=void 0},metrics:a}}function Vi(e,t){return t===0?0:Number.isFinite(e)?Math.min(t,Math.max(1,Math.floor(e))):t}function Hi(e,t,n,r){let i=r-n;return{start:n+Math.floor(e*i/t),end:n+Math.floor((e+1)*i/t)}}function Ui(e,t){e[e.length-1]!==t&&e.push(t)}function Wi(e,t,n){if(e<=t)return Array.from({length:e},(e,t)=>t);if(t===1)return[0];if(t===2)return[0,e-1];let r=[0];return n().forEach(e=>Ui(r,e)),Ui(r,e-1),r}function Gi(e,t,n){let r=n===`minmax`?Math.floor((t-2)/2):Math.max(0,t-2);return Wi(e.length,t,()=>{if(!r)return[];let t=[];for(let i=0;i<r;i+=1){let a=Hi(i,r,1,e.length-1),o=a.start,s=a.start;for(let t=a.start+1;t<a.end;t+=1)e[t]<e[o]&&(o=t),e[t]>e[s]&&(s=t);n===`min`?Ui(t,o):n===`max`?Ui(t,s):o<=s?(Ui(t,o),Ui(t,s)):(Ui(t,s),Ui(t,o))}return t})}function Ki(e,t){let n=Math.floor((t-2)/4);return Wi(e.length,t,()=>{if(!n)return[];let t=[];for(let r=0;r<n;r+=1){let i=Hi(r,n,1,e.length-1),a=i.start,o=i.start;for(let t=i.start+1;t<i.end;t+=1)e[t]<e[a]&&(a=t),e[t]>e[o]&&(o=t);[i.start,a,o,i.end-1].sort((e,t)=>e-t).forEach(e=>Ui(t,e))}return t})}function qi(e,t,n){return Wi(e.length,n,()=>{let r=(e.length-2)/(n-2),i=[],a=0;for(let o=0;o<n-2;o+=1){let s=Math.min(e.length,Math.floor((o+1)*r)+1),c=Math.min(e.length,Math.floor((o+2)*r)+1),l=0,u=0;for(let n=s;n<c;n+=1)l+=e[n],u+=t[n];let d=c-s;d?(l/=d,u/=d):(l=e[e.length-1],u=t[t.length-1]);let f=Hi(o,n-2,1,e.length-1),p=f.start,m=-1;for(let n=f.start;n<f.end;n+=1){let r=Math.abs((e[a]-l)*(t[n]-t[a])-(e[a]-e[n])*(u-t[a]));r>m&&(m=r,p=n)}i.push(p),a=p}return i})}function Ji(e,t,n,r){let i=Vi(n,e.length),a=new Float64Array(i),o=new Float64Array(i);for(let n=0;n<i;n+=1){let s=Hi(n,i,0,e.length);for(let r=s.start;r<s.end;r+=1)a[n]+=e[r],o[n]+=t[r];let c=s.end-s.start;a[n]/=c,r===`average`&&(o[n]/=c)}return{kind:`aggregates`,x:a,y:o}}function Yi(e,t,n,r){if(e.length!==t.length)throw Error(`x and y must have the same length`);if(n===`average`||n===`sum`)return Ji(e,t,r,n);let i=Vi(r,e.length),a=n===`none`||e.length<=i?Array.from({length:e.length},(e,t)=>t):n===`peak`?Ki(t,i):n===`lttb`?qi(e,t,i):Gi(t,i,n);return{kind:`source-indexes`,sourceIndexes:Uint32Array.from(a)}}var Xi={kind:`javascript`,sample(e){return Yi(e.x,e.y,e.strategy,e.targetPointCount)}},Zi=8*1024*1024;function Qi(e,t){return t===0?0:Number.isFinite(e)?Math.min(t,Math.max(1,Math.floor(e))):t}function $i(e,t,n,r){let i=r-n;return{start:n+Math.floor(e*i/t),end:n+Math.floor((e+1)*i/t)}}function ea(e,t){e[e.length-1]!==t&&e.push(t)}function ta(e){return`minimumIndexes`in e?e.minimumIndexes.byteLength+e.maximumIndexes.byteLength:e.x.byteLength+e.y.byteLength+e.count.byteLength}function na(e,t){let n=1;for(;n*2<=t&&e%(n*2)==0;)n*=2;return n}var ra=class{points;extremaLayers=[];sumLayers=[];indexBytes=0;maxBytes;constructor(e,t={}){this.points=e,this.maxBytes=Number.isFinite(t.maxBytes)?Math.max(0,Math.floor(t.maxBytes??0)):Zi}get byteLength(){return this.indexBytes}dispose(){this.extremaLayers.length=0,this.sumLayers.length=0,this.indexBytes=0}sample(e,t,n,r){let i=Math.max(0,Math.min(this.points.length,Math.floor(e))),a=Math.max(i,Math.min(this.points.length,Math.floor(t))),o=a-i,s=Qi(r,o);if(n!==`lttb`)return n===`average`||n===`sum`?this.aggregate(i,a,s,n):n===`none`||o<=s?this.allIndexes(i,a):s===1?this.indexes([i]):s===2?this.indexes([i,a-1]):this.extrema(i,a,s,n)}allIndexes(e,t){return{kind:`source-indexes`,sourceIndexes:Uint32Array.from({length:t-e},(t,n)=>e+n)}}indexes(e){return{kind:`source-indexes`,sourceIndexes:Uint32Array.from(e)}}extrema(e,t,n,r){let i=r===`peak`?Math.floor((n-2)/4):r===`minmax`?Math.floor((n-2)/2):Math.max(0,n-2);if(i===0)return this.indexes([e,t-1]);let a=[e];for(let n=0;n<i;n+=1){let o=$i(n,i,e+1,t-1),s=this.queryExtrema(o.start,o.end);if(!s)return;if(r===`min`)ea(a,s.minimum);else if(r===`max`)ea(a,s.maximum);else if(r===`minmax`)s.minimum<=s.maximum?(ea(a,s.minimum),ea(a,s.maximum)):(ea(a,s.maximum),ea(a,s.minimum));else for(let e of[o.start,s.minimum,s.maximum,o.end-1].sort((e,t)=>e-t))ea(a,e)}return ea(a,t-1),this.indexes(a)}aggregate(e,t,n,r){let i=new Float64Array(n),a=new Float64Array(n);for(let o=0;o<n;o+=1){let s=$i(o,n,e,t),c=this.querySum(s.start,s.end);if(!c||c.count===0)return;i[o]=c.x/c.count,a[o]=r===`average`?c.y/c.count:c.y}return{kind:`aggregates`,x:i,y:a}}queryExtrema(e,t){let n=Math.floor(Math.log2(Math.max(1,t-e)));if(!this.ensureExtrema(n))return;let r=e,i=e;for(let n=e;n<t;){let e=na(n,t-n),a=Math.floor(Math.log2(e)),o=n/e,s=this.extremaLayers[a],c=s?s.minimumIndexes[o]:n,l=s?s.maximumIndexes[o]:n;this.isMinimum(c,r)&&(r=c),this.isMaximum(l,i)&&(i=l),n+=e}return{minimum:r,maximum:i}}querySum(e,t){let n=Math.floor(Math.log2(Math.max(1,t-e)));if(!this.ensureSum(n))return;let r=0,i=0,a=0;for(let n=e;n<t;){let e=na(n,t-n),o=Math.floor(Math.log2(e)),s=n/e,c=this.sumLayers[o];if(c)r+=c.x[s],i+=c.y[s],a+=c.count[s];else{let e=this.points[n];r+=e.x,i+=e.y,a+=1}n+=e}return{x:r,y:i,count:a}}ensureExtrema(e){for(let t=1;t<=e;t+=1){if(this.extremaLayers[t])continue;let e=Math.ceil(this.points.length/2**t),n={minimumIndexes:new Uint32Array(e),maximumIndexes:new Uint32Array(e)};if(!this.reserve(ta(n)))return!1;let r=this.extremaLayers[t-1];for(let t=0;t<e;t+=1){let e=t*2,i=e+1,a=r?r.minimumIndexes[e]:e,o=r?r.maximumIndexes[e]:e,s=r?i<r.minimumIndexes.length:i<this.points.length,c=r&&s?r.minimumIndexes[i]:i,l=r&&s?r.maximumIndexes[i]:i;n.minimumIndexes[t]=s&&this.isMinimum(c,a)?c:a,n.maximumIndexes[t]=s&&this.isMaximum(l,o)?l:o}this.extremaLayers[t]=n}return!0}ensureSum(e){for(let t=1;t<=e;t+=1){if(this.sumLayers[t])continue;let e=Math.ceil(this.points.length/2**t),n={x:new Float64Array(e),y:new Float64Array(e),count:new Uint32Array(e)};if(!this.reserve(ta(n)))return!1;let r=this.sumLayers[t-1];for(let t=0;t<e;t+=1){let e=t*2,i=e+1;if(r)n.x[t]=r.x[e]+(i<r.x.length?r.x[i]:0),n.y[t]=r.y[e]+(i<r.y.length?r.y[i]:0),n.count[t]=r.count[e]+(i<r.count.length?r.count[i]:0);else{let r=this.points[e],a=this.points[i];n.x[t]=r.x+(a?.x??0),n.y[t]=r.y+(a?.y??0),n.count[t]=a?2:1}}this.sumLayers[t]=n}return!0}reserve(e){return this.indexBytes+e>this.maxBytes?!1:(this.indexBytes+=e,!0)}isMinimum(e,t){let n=this.points[e],r=this.points[t];return n.y<r.y||n.y===r.y&&e<t}isMaximum(e,t){let n=this.points[e],r=this.points[t];return n.y>r.y||n.y===r.y&&e<t}},ia=1e3,aa=(0,t.bisector)(e=>e.x);function oa(e){let t=[],n=!0,r=-1/0;for(let i of e)!Number.isFinite(i.x)||!Number.isFinite(i.y)||(i.x<r&&(n=!1),r=i.x,t.push({x:i.x,y:i.y,...Number.isFinite(i.error)?{error:i.error}:{},...Number.isFinite(i.lowerError)?{lowerError:i.lowerError}:{},...Number.isFinite(i.upperError)?{upperError:i.upperError}:{}}));return n||t.sort((e,t)=>e.x-t.x),t}function sa(e,t){let n=1/0,r=-1/0,i=1/0,a=-1/0;for(let t of e)n=Math.min(n,t.x),r=Math.max(r,t.x),i=Math.min(i,t.y),a=Math.max(a,t.y);return{inputPointCount:t,validPointCount:e.length,xDomain:e.length?[n,r]:null,yDomain:e.length?[i,a]:null}}function ca(e,t,n=e.length){let r=1/0,i=-1/0,a=1/0,o=-1/0;for(let n=0;n<e.length;n+=1)r=Math.min(r,e[n]),i=Math.max(i,e[n]),a=Math.min(a,t[n]),o=Math.max(o,t[n]);return{inputPointCount:n,validPointCount:e.length,xDomain:e.length?[r,i]:null,yDomain:e.length?[a,o]:null}}function la(e,t){return e?e.revision===t?`ok`:`stale-revision`:`not-found`}function ua(e){return e===`auto`?`peak`:e}function da(e){if(Number.isFinite(e.maxPointCount)&&(e.maxPointCount??0)>=1)return Math.floor(e.maxPointCount);let t=Number.isFinite(e.plotWidth)?Math.max(0,e.plotWidth):0,n=Number.isFinite(e.maxPointsPerPixel)?Math.max(0,e.maxPointsPerPixel??0):4;return Math.max(1,Math.floor(t*n))}function fa(e,t){if(e.mode===`raw`)return!0;if(e.mode!==`auto`)return!1;let n=Number.isFinite(e.autoThreshold)?Math.max(1,Math.floor(e.autoThreshold??0)):ia;if(!e.previousSelectedMode)return t<=n;let r=Number.isFinite(e.autoHysteresis)?Math.max(0,Math.floor(e.autoHysteresis??0)):0;return e.previousSelectedMode===`raw`?t<=n+r:t<=Math.max(0,n-r)}function pa(e,t){let n=e[0],r=e.at(-1);return Number.isFinite(t)&&n&&r&&t>=n.x&&t<=r.x?e[aa.center(e,t)]:void 0}function ma(e){return e?e.kind===`source-indexes`?e.sourceIndexes.length:e.x.length:0}function ha(e,t){return e.kind===`aggregates`?e:{kind:`source-indexes`,sourceIndexes:Uint32Array.from(e.sourceIndexes,e=>e+t)}}function ga(e,t,n,r,i){return[e.datasetId,e.revision,t.start,t.end,e.plotWidth,r,e.maxPointsPerPixel,e.maxPointCount,e.mode,i,n,e.lineType??`linear`,e.pointType??`none`,+(e.errorBarVisible===!0),e.pointMinSpacing??0,e.errorBarMinSpacing??0].join(`\0`)}function _a(e,t,n,r,i,a,o,s){return{seriesId:e.seriesId,datasetId:e.datasetId,mode:e.mode,selectedMode:i,backend:r,strategy:ua(e.strategy),sourcePointCount:t,visiblePointCount:n,renderedPointCount:o,durationMs:a,cacheHit:s,requestId:0,revision:e.revision,rawPointLimitExceeded:i===`raw`&&Number.isFinite(e.rawPointLimit)&&n>(e.rawPointLimit??1/0),scheduledRequestCount:0,coalescedRequestCount:0,maxPendingRequestCount:0}}function va(e){return e?.y.length??0}function ya(e,t){return e.x?e.x[t]:e.sampleStartTime+(e.sampleSourceIndexes?.[t]??t)/e.sampleRate}function ba(e,t){let n=(t,n)=>{let r=0,i=va(e);for(;r<i;){let a=r+Math.floor((i-r)/2);(n?ya(e,a)<=t:ya(e,a)<t)?r=a+1:i=a}return r},r=Math.min(t[0],t[1]),i=Math.max(t[0],t[1]);return{start:n(r,!1),end:n(i,!0)}}function xa(e,t,n){return e.x?e.x.subarray(t,n):Float64Array.from({length:n-t},(n,r)=>ya(e,t+r))}function Sa(e){return e?.kind===`wasm`&&`registerDataset`in e&&`disposeDataset`in e&&`disposeAllDatasets`in e&&`datasetIndexBytes`in e&&`registerSamples`in e&&`sampleDataset`in e}function Ca(e,t){let n=Math.min(e.length,t.length),r=e.length===t.length;for(let i=0;i<n&&r;i+=1)r=Number.isFinite(e[i])&&Number.isFinite(t[i])&&(i===0||e[i]>=e[i-1]);if(r)return{x:e.slice(),y:Float64Array.from(t)};let i=[];for(let r=0;r<n;r+=1)Number.isFinite(e[r])&&Number.isFinite(t[r])&&i.push(r);return i.sort((t,n)=>e[t]-e[n]||t-n),{x:Float64Array.from(i,t=>e[t]),y:Float64Array.from(i,e=>t[e])}}function wa(e,t,n,r){if(t?.kind===`typed`){let e=Ca(t.x,t.y);return{x:e.x,y:e.y,revision:n,metrics:ca(e.x,e.y,Math.max(t.x.length,t.y.length))}}if(t?.kind===`samples`){if(!(Number.isFinite(t.sampleRate)&&t.sampleRate>0&&Number.isFinite(t.startTime)&&(!t.sourceIndexes||t.sourceIndexes.length===t.values.length)))return{y:new Float64Array,sampleStartTime:0,sampleRate:1,revision:n,metrics:{inputPointCount:t.values.length,validPointCount:0,xDomain:null,yDomain:null}};if(!t.sourceIndexes&&t.values.every(Number.isFinite)){let e=Float64Array.from(t.values),r=1/0,i=-1/0;for(let t of e)r=Math.min(r,t),i=Math.max(i,t);return{y:e,sampleStartTime:t.startTime,sampleRate:t.sampleRate,revision:n,metrics:{inputPointCount:e.length,validPointCount:e.length,xDomain:e.length?[t.startTime,t.startTime+(e.length-1)/t.sampleRate]:null,yDomain:e.length?[r,i]:null}}}let e=Array.from({length:t.values.length},(e,t)=>t).filter(e=>Number.isFinite(t.values[e])),r=e=>t.sourceIndexes?.[e]??e;e.sort((e,t)=>r(e)-r(t)||e-t);let i=Float64Array.from(e,e=>t.values[e]),a=Uint32Array.from(e,r),o=e=>t.startTime+a[e]/t.sampleRate,s=1/0,c=-1/0;for(let e of i)s=Math.min(s,e),c=Math.max(c,e);return{y:i,sampleStartTime:t.startTime,sampleRate:t.sampleRate,sampleSourceIndexes:a.length===t.values.length&&a.every((e,t)=>e===t)?void 0:a,revision:n,metrics:{inputPointCount:t.values.length,validPointCount:i.length,xDomain:i.length?[o(0),o(i.length-1)]:null,yDomain:i.length?[s,c]:null}}}let i=oa(e??t?.points??[]);return{x:Float64Array.from(i,e=>e.x),y:Float64Array.from(i,e=>e.y),points:i,revision:n,metrics:sa(i,e?.length??t?.points.length??0),index:new ra(i,{maxBytes:r})}}function Ta(e,t,n){!Sa(e)||t.wasmDatasetHandle!==void 0||(t.wasmDatasetHandle=t.x?e.registerDataset(t.x,t.y,n):e.registerSamples(t.y,t.sampleSourceIndexes,t.sampleStartTime,t.sampleRate,n),t.wasmIndexBytes=e.datasetIndexBytes(t.wasmDatasetHandle))}function Ea(e,t){t.index?.dispose(),t.wasmDatasetHandle!==void 0&&Sa(e)&&e.disposeDataset(t.wasmDatasetHandle)}function Da(e,t,n){let r=va(n);if(t.start===t.end&&(t.start===0||t.end===r))return e;let i=t.start>0?[t.start-1]:[],a=t.end<r?[t.end]:[];if(e.kind===`source-indexes`){let t=Array.from(e.sourceIndexes);return{kind:`source-indexes`,sourceIndexes:Uint32Array.from([...i,...t,...a])}}let o=Array.from(e.x),s=Array.from(e.y);return i.length&&(o.unshift(ya(n,i[0])),s.unshift(n.y[i[0]])),a.length&&(o.push(ya(n,a[0])),s.push(n.y[a[0]])),{kind:`aggregates`,x:Float64Array.from(o),y:Float64Array.from(s)}}var Oa=96,ka=16*1024*1024;function Aa(e){return e.kind===`source-indexes`?e.sourceIndexes.byteLength:e.x.byteLength+e.y.byteLength}var ja=class{entries=new Map;bytes=0;maxEntries;maxBytes;constructor(e={}){this.maxEntries=Number.isFinite(e.maxEntries)?Math.max(0,Math.floor(e.maxEntries??0)):Oa,this.maxBytes=Number.isFinite(e.maxBytes)?Math.max(0,Math.floor(e.maxBytes??0)):ka}get metrics(){return{entries:this.entries.size,bytes:this.bytes,maxEntries:this.maxEntries,maxBytes:this.maxBytes}}get(e){let t=this.entries.get(e);if(t)return this.entries.delete(e),this.entries.set(e,t),t.output}set(e,t){let n=Aa(t);if(n>this.maxBytes||this.maxEntries===0)return;let r=this.entries.get(e);for(r&&(this.bytes-=r.bytes,this.entries.delete(e)),this.entries.set(e,{output:t,bytes:n}),this.bytes+=n;this.entries.size>this.maxEntries||this.bytes>this.maxBytes;){let e=this.entries.entries().next().value;if(!e)break;let[t,n]=e;this.entries.delete(t),this.bytes-=n.bytes}}deleteDataset(e){let t=`${e}\u0000`;for(let[e,n]of this.entries)e.startsWith(t)&&(this.entries.delete(e),this.bytes-=n.bytes)}clear(){this.entries.clear(),this.bytes=0}},Ma=class{datasets=new Map;javascriptBackend;cache;indexMaxBytes;wasmBackend;constructor(e={}){this.javascriptBackend=e.javascriptBackend??Xi,this.wasmBackend=e.wasmBackend,this.indexMaxBytes=e.indexMaxBytes,this.cache=new ja({maxEntries:e.cacheMaxEntries,maxBytes:e.cacheMaxBytes})}get resourceMetrics(){return{datasetCount:this.datasets.size,indexBytes:[...this.datasets.values()].reduce((e,t)=>e+(t.wasmIndexBytes??t.index?.byteLength??0),0),cache:this.cache.metrics}}setWasmBackend(e){this.wasmBackend&&this.wasmBackend!==e&&Sa(this.wasmBackend)&&(this.wasmBackend.disposeAllDatasets(),this.datasets.forEach(e=>{e.wasmDatasetHandle=void 0,e.wasmIndexBytes=void 0})),this.wasmBackend=e,Sa(e)&&this.datasets.forEach(t=>Ta(e,t,this.indexMaxBytes))}handle(e){switch(e.type){case`register-dataset`:return this.register(e.datasetId,e.requestId,e.points,e.dataset);case`replace-dataset`:return this.replace(e.datasetId,e.requestId,e.revision,e.points,e.dataset);case`sample-viewport`:return this.sample(e);case`find-nearest-point`:return this.findNearest(e.datasetId,e.requestId,e.revision,e.x);case`get-dataset-metrics`:return this.metrics(e.datasetId,e.requestId,e.revision);case`dispose-dataset`:return this.dispose(e.datasetId,e.requestId,e.revision);case`dispose-all`:return this.disposeAll(e.requestId)}}register(e,t,n,r){let i=this.datasets.get(e);if(i)return this.datasetResponse(t,e,i,`stale-revision`);let a=wa(n,r,1,this.indexMaxBytes);return Ta(this.wasmBackend,a,this.indexMaxBytes),this.datasets.set(e,a),this.datasetResponse(t,e,a,`ok`)}replace(e,t,n,r,i){let a=this.datasets.get(e),o=la(a,n);if(o!==`ok`||!a)return this.datasetResponse(t,e,a,o);Ea(this.wasmBackend,a),this.cache.deleteDataset(e);let s=wa(r,i,a.revision+1,this.indexMaxBytes);return Ta(this.wasmBackend,s,this.indexMaxBytes),this.datasets.set(e,s),this.datasetResponse(t,e,s,`ok`)}sample(e){return{type:`sample-viewport-response`,requestId:e.requestId,results:e.series.map(t=>this.sampleSeries(e.requestId,t))}}sampleSeries(e,t){let n=performance.now(),r=this.datasets.get(t.datasetId),i=la(r,t.revision);if(i!==`ok`||!r)return this.sampleResponse(e,t,i,void 0,`unavailable`,`sampled`,0,n,!1);let a=ba(r,t.xDomain),o=a.end-a.start;if(fa(t,o))return this.sampleResponse(e,t,`ok`,Da({kind:`source-indexes`,sourceIndexes:Uint32Array.from({length:o},(e,t)=>a.start+t)},a,r),`raw`,`raw`,o,n,!1);let s=t.mode===`wasm`||t.mode===`auto`&&this.wasmBackend?this.wasmBackend:this.javascriptBackend,c=!s&&t.wasmFailureFallback===`javascript`,l=s??(c?this.javascriptBackend:void 0);if(!l)return this.sampleResponse(e,t,`wasm-unavailable`,void 0,`unavailable`,`sampled`,o,n,!1);let u=ua(t.strategy),d=da(t),f=ga(t,a,u,d,l.kind),p=this.cache.get(f);if(p)return this.sampleResponse(e,t,c?`wasm-unavailable`:`ok`,p,l.kind,`sampled`,o,n,!0);let m=Da((l.kind===`wasm`?r.wasmDatasetHandle!==void 0&&Sa(l)?l.sampleDataset(r.wasmDatasetHandle,a.start,a.end,u,d):void 0:r.index?.sample(a.start,a.end,u,d))??ha(l.sample({x:xa(r,a.start,a.end),y:r.y.subarray(a.start,a.end),points:r.points?.slice(a.start,a.end)??[],strategy:u,targetPointCount:d}),a.start),a,r);return this.cache.set(f,m),r.wasmDatasetHandle!==void 0&&Sa(l)&&(r.wasmIndexBytes=l.datasetIndexBytes(r.wasmDatasetHandle)),this.sampleResponse(e,t,c?`wasm-unavailable`:`ok`,m,l.kind,`sampled`,o,n,!1)}sampleResponse(e,t,n,r,i,a,o,s,c){let l=_a(t,va(this.datasets.get(t.datasetId)),o,i,a,performance.now()-s,ma(r),c);return l.requestId=e,{seriesId:t.seriesId,datasetId:t.datasetId,revision:t.revision,status:n,output:r,diagnostics:l}}findNearest(e,t,n,r){let i=this.datasets.get(e),a=la(i,n);return a!==`ok`||!i?{type:`find-nearest-point-response`,requestId:t,datasetId:e,revision:n,status:a}:{type:`find-nearest-point-response`,requestId:t,datasetId:e,revision:n,status:a,point:i.points?pa(i.points,r):(()=>{let e=ba(i,[r,r]);if(!va(i)||r<ya(i,0)||r>ya(i,va(i)-1))return;let t=Math.min(va(i)-1,e.start),n=Math.max(0,t-1),a=Math.abs(r-ya(i,n))<Math.abs(ya(i,t)-r)?n:t;return Number.isFinite(r)&&va(i)?{x:ya(i,a),y:i.y[a]}:void 0})()}}metrics(e,t,n){let r=this.datasets.get(e);return this.datasetResponse(t,e,r,la(r,n))}dispose(e,t,n){let r=this.datasets.get(e),i=la(r,n);return i===`ok`&&r&&(Ea(this.wasmBackend,r),this.cache.deleteDataset(e),this.datasets.delete(e)),this.datasetResponse(t,e,r,i)}disposeAll(e){let t=[...this.datasets.keys()];return this.datasets.forEach(e=>Ea(this.wasmBackend,e)),Sa(this.wasmBackend)&&this.wasmBackend.disposeAllDatasets(),this.datasets.clear(),this.cache.clear(),{type:`dispose-all-response`,requestId:e,disposedDatasetIds:t}}datasetResponse(e,t,n,r){return{type:`dataset-response`,requestId:e,datasetId:t,revision:n?.revision??0,status:r,metrics:n?{...n.metrics,indexBytes:n.wasmIndexBytes??n.index?.byteLength??0}:void 0}}};function Na(e){return e?.message||`Web Worker is unavailable; JavaScript sampling is being used.`}function Pa(){let e=!1,t,n,r,i=new Map,a=new Map,o=()=>{if(n)return n;n=new Ma;for(let[e,t]of a){n.handle({type:`register-dataset`,requestId:0,datasetId:e,revision:0,points:t.points,dataset:t.dataset});for(let r=1;r<t.revision;r+=1)n.handle({type:`replace-dataset`,requestId:0,datasetId:e,revision:r,points:t.points,dataset:t.dataset})}return n},s=e=>{e.type===`register-dataset`&&a.set(e.datasetId,{points:e.points,dataset:e.dataset,revision:1}),e.type===`replace-dataset`&&a.set(e.datasetId,{points:e.points,dataset:e.dataset,revision:e.revision+1}),e.type===`dispose-dataset`&&a.delete(e.datasetId),e.type===`dispose-all`&&a.clear()},c=()=>{let e=[...i.values()];i.clear();let t;try{t=o()}catch(t){e.forEach(({reject:e})=>e(t instanceof Error?t:Error(String(t))));return}e.forEach(({request:e,resolve:n,reject:r})=>{try{n(t.handle(e))}catch(e){r(e instanceof Error?e:Error(String(e)))}})},l=i=>{e||n||(r=Na(i),t?.terminate(),t=void 0,c())};try{typeof Worker>`u`?l():(t=new Worker(new URL(`/assets/workerRuntime-5p-EI-GL.js`,``+{}.url),{type:`module`}),t.onmessage=e=>{let t=i.get(e.data.requestId);if(t){if(e.data.type===`request-error`){l({message:e.data.message});return}i.delete(e.data.requestId),t.resolve(e.data)}},t.onerror=e=>l(e),t.onmessageerror=()=>l())}catch{l()}return{get workerFailureReason(){return r},send(r){return e?Promise.reject(Error(`Sampling client was disposed.`)):(s(r),n?Promise.resolve().then(()=>n.handle(r)):new Promise((e,n)=>{i.set(r.requestId,{request:r,resolve:e,reject:n});try{t?.postMessage(r)}catch{i.delete(r.requestId),l(),e(o().handle(r))}}))},dispose(){e=!0,t&&(t.onmessage=null,t.onerror=null,t.onmessageerror=null),n?.handle({type:`dispose-all`,requestId:0}),t?.terminate(),t=void 0,i.forEach(({reject:e})=>e(Error(`Sampling client was disposed.`))),i.clear(),a.clear(),n=void 0}}}function Fa(e){return e.type===`dataset-response`}function Ia(){let e=Bi(),t=new Map,n=new Map,r=new Map,i=new Set,a=new Map,o={scheduler:e,revisions:t,backendBySeries:n,selectedModeBySeries:r,emittedErrors:i,pendingDiagnostics:a,client:void 0,requestId:0,diagnosticsTimer:void 0,autoModeSettleTimer:void 0,hasInitialSamplingRun:!1,getClient(){return o.client??=Pa()},invalidate(){e.cancelPending(),clearTimeout(o.diagnosticsTimer),clearTimeout(o.autoModeSettleTimer),o.diagnosticsTimer=void 0,o.autoModeSettleTimer=void 0,o.hasInitialSamplingRun=!1,a.clear(),t.clear(),n.clear(),r.clear(),i.clear(),o.client?.dispose(),o.client=void 0},dispose(){o.invalidate(),e.dispose()}};return o}var La=120;function Ra(e,t){let n=e.output;if(n)return n.kind===`aggregates`?Array.from(n.x,(e,t)=>({x:e,y:n.y[t]})):Array.from(n.sourceIndexes,e=>t.pointAt(e)).filter(e=>e!==void 0)}function za(e,t){let n=e.request,r=e.visibleRange.end-e.visibleRange.start;return{seriesId:n.seriesId,datasetId:n.datasetId,mode:n.mode,selectedMode:`raw`,backend:`raw`,strategy:n.strategy===`auto`?`peak`:n.strategy,sourcePointCount:e.source.length,visiblePointCount:r,renderedPointCount:r+ve(e.visibleRange,e.source.length).length,durationMs:0,cacheHit:!1,requestId:t,revision:n.revision,rawPointLimitExceeded:r>e.request.rawPointLimit&&e.request.mode===`raw`,scheduledRequestCount:0,coalescedRequestCount:0,maxPendingRequestCount:0}}function Ba(e){let{source:t}=e,{start:n,end:r}=e.visibleRange,i=r-n,a=Number.isFinite(e.request.maxPointCount)&&(e.request.maxPointCount??0)>=1?Math.floor(e.request.maxPointCount):Math.max(1,Math.floor(e.request.plotWidth*e.request.maxPointsPerPixel));if(i<=a)return t.pointsInRange(n,r);if(a===1)return t.pointAt(n)?[t.pointAt(n)]:[];let o=[];for(let e=0;e<a;e+=1){let r=Math.round(e*(i-1)/(a-1)),s=t.pointAt(n+r);s&&o.push(s)}return o}function Va(e,t,n,r){return{message:e,mode:t,fallback:n,seriesIds:r}}function Ha(t){let n=(0,e.shallowRef)(),r=(0,e.shallowRef)(0),i=Ia(),{revisions:a,backendBySeries:o,selectedModeBySeries:s,emittedErrors:c,pendingDiagnostics:l,scheduler:u}=i,d=(0,e.computed)(()=>{let e=t.renderingOptions.value.sampling;return t.sourceTrackLayouts.value.flatMap(n=>{let r=n.xScale.domain();return n.seriesList.flatMap(i=>{if(i.lineType===`none`||n.width<=0)return[];let o=i.source??q(i.points),s=o.visibleRange(r),c=`${t.instanceId}:${i.id}`;return[{series:i,source:o,visibleRange:s,request:{seriesId:i.id,datasetId:c,revision:a.get(c)??1,xDomain:r,visibleStartIndex:s.start,visibleEndIndex:s.end,plotWidth:n.width,mode:e.mode,autoThreshold:e.autoThreshold,autoHysteresis:e.autoHysteresis,strategy:e.strategy,maxPointsPerPixel:e.maxPointsPerPixel,maxPointCount:e.maxPointCount,rawPointLimit:e.rawPointLimit,wasmFailureFallback:e.wasmFailureFallback,lineType:i.lineType,pointType:i.pointType,errorBarVisible:i.errorBar.visible,pointMinSpacing:t.renderingOptions.value.pointMinSpacing,errorBarMinSpacing:t.renderingOptions.value.errorBarMinSpacing}}]})})}),f=(0,e.computed)(()=>`${r.value}:${d.value.map(e=>`${e.request.datasetId}:${e.request.xDomain.join(`,`)}:${e.request.plotWidth}:${e.visibleRange.start}:${e.visibleRange.end}:${e.request.mode}:${e.request.autoThreshold}:${e.request.autoHysteresis}:${e.request.strategy}:${e.request.maxPointsPerPixel}:${e.request.maxPointCount}:${e.request.rawPointLimit}:${e.request.wasmFailureFallback}:${e.request.lineType}:${e.request.pointType}:${e.request.errorBarVisible}:${e.request.pointMinSpacing}:${e.request.errorBarMinSpacing}`).join(`|`)}`),p=()=>{i.diagnosticsTimer=void 0,l.forEach(e=>{let n=o.get(e.seriesId);n&&n!==e.backend&&t.emit(`sampling-backend-change`,{seriesId:e.seriesId,previous:n,current:e.backend}),o.set(e.seriesId,e.backend),t.emit(`sampling-complete`,e)}),l.clear()},m=e=>{e.forEach(e=>l.set(e.seriesId,{...e,scheduledRequestCount:u.metrics.scheduled,coalescedRequestCount:u.metrics.coalesced,maxPendingRequestCount:u.metrics.maxPending})),i.diagnosticsTimer||=setTimeout(p,100)},h=e=>{let n=`${e.mode}:${e.fallback}:${e.message}:${e.seriesIds.join(`,`)}`;c.has(n)||(c.add(n),t.emit(`sampling-error`,e))},g=async(e,t,n)=>{await Promise.all(t.map(async t=>{if(a.has(t.request.datasetId))return;let r=await e.send({type:`register-dataset`,requestId:++i.requestId,datasetId:t.request.datasetId,revision:0,dataset:t.source.toWorkerDataset()});!u.isCurrent(n)||!Fa(r)||r.status!==`ok`&&r.status!==`stale-revision`||a.set(t.request.datasetId,r.revision)}))},_=async(e,n=!1)=>{let r=d.value,o={...t.linePointOverrides.value},c=[],l=[];if(r.forEach(t=>{let r=t.visibleRange.end-t.visibleRange.start,i=n?s.get(t.series.id):void 0,a=t.request.mode===`auto`&&zi(r,t.request.autoThreshold,t.request.autoHysteresis??0,i)===`raw`;t.request.mode===`raw`||a?(o[t.series.id]=ye(t.source.pointsInRange(t.visibleRange.start,t.visibleRange.end),t.visibleRange,t.source.length,e=>t.source.pointAt(e)),s.set(t.series.id,`raw`),l.push(za(t,e))):(o[t.series.id]?.length||(o[t.series.id]=ye(Ba(t),t.visibleRange,t.source.length,e=>t.source.pointAt(e))),c.push({...t,request:{...t.request,previousSelectedMode:i}}))}),!c.length){if(!u.isCurrent(e))return;t.linePointOverrides.value=o,m(l);return}t.linePointOverrides.value=o;let f=i.getClient(),p;try{if(await g(f,c,e),!u.isCurrent(e))return;let t=c.map(e=>({...e.request,revision:a.get(e.request.datasetId)??1})),n=await f.send({type:`sample-viewport`,requestId:++i.requestId,series:t});if(n.type!==`sample-viewport-response`)return;p=n}catch(n){if(!u.isCurrent(e))return;h(Va(n instanceof Error?n.message:String(n),t.renderingOptions.value.sampling.mode,t.renderingOptions.value.sampling.mode===`wasm`&&t.renderingOptions.value.sampling.wasmFailureFallback===`error`?`none`:`javascript`,c.map(e=>e.series.id)));return}if(!u.isCurrent(e))return;let _=new Map(c.map(e=>[e.series.id,e.source]));p.results.forEach(e=>{let t=_.get(e.seriesId),n=t?Ra(e,t):void 0;n&&(e.status===`ok`||e.status===`wasm-unavailable`)&&(o[e.seriesId]=n),l.push(e.diagnostics),s.set(e.seriesId,e.diagnostics.selectedMode),e.status===`wasm-unavailable`&&h(Va(p.workerError??`WASM sampling is unavailable.`,e.diagnostics.mode,e.diagnostics.backend===`javascript`?`javascript`:`none`,[e.seriesId]))}),p.workerError&&p.results.every(e=>e.status!==`wasm-unavailable`)&&h(Va(p.workerError,t.renderingOptions.value.sampling.mode,t.renderingOptions.value.sampling.mode===`wasm`&&t.renderingOptions.value.sampling.wasmFailureFallback===`error`?`none`:`javascript`,c.map(e=>e.series.id))),f.workerFailureReason&&p.results.every(e=>e.status!==`wasm-unavailable`)&&h(Va(f.workerFailureReason,t.renderingOptions.value.sampling.mode,t.renderingOptions.value.sampling.mode===`wasm`&&t.renderingOptions.value.sampling.wasmFailureFallback===`error`?`none`:`javascript`,c.map(e=>e.series.id))),t.linePointOverrides.value={...o},m(l)},v=e=>{n.value=void 0;let t=f.value;u.schedule(async r=>{try{await _(r,e)}finally{u.isCurrent(r)&&(n.value=t)}})};return(0,e.watch)(f,()=>{i.autoModeSettleTimer&&clearTimeout(i.autoModeSettleTimer);let e=i.hasInitialSamplingRun;i.hasInitialSamplingRun=!0,v(e),e&&t.renderingOptions.value.sampling.mode===`auto`&&t.renderingOptions.value.sampling.autoHysteresis>0&&(i.autoModeSettleTimer=setTimeout(()=>{i.autoModeSettleTimer=void 0,v(!1)},La))},{immediate:!0}),(0,e.watch)(t.preparedSeries,()=>{i.invalidate(),r.value+=1,t.linePointOverrides.value={}},{flush:`sync`}),(0,e.onScopeDispose)(()=>i.dispose()),{linePointOverrides:t.linePointOverrides,ready:()=>n.value===f.value&&!i.autoModeSettleTimer}}function Ua(e,t){e.value=t instanceof Element?t:void 0}function Wa(n,i){let a=pn(n,i),o=(0,e.reactive)({...(0,e.toRefs)(n),interactionMode:a.mode}),s=(0,e.shallowRef)({}),c=(0,e.ref)(),l=(0,e.ref)(),u=(0,e.ref)(),d=(0,e.ref)(),f=(0,e.ref)(0),p=(0,e.ref)(0),m=(0,e.ref)(0),h=(0,e.ref)(0),g=(0,e.ref)(0),_=(0,e.shallowRef)(t.zoomIdentity),v=(0,e.shallowRef)([]),y=(0,e.ref)({}),b=(0,e.ref)({}),x=(0,e.shallowReactive)({points:[],trackIndex:null,queryX:null,crosshairXByTrack:{},position:{x:0,y:0}}),S=(0,e.ref)(!1),C=(0,e.ref)(1),w=(0,e.shallowRef)(),T=An(`waveform-clip`),E=(0,e.ref)(new Set(o.defaultHiddenSeriesIds)),D=xr(),O=(0,e.shallowRef)({}),k=(0,e.ref)([]),A=zr();(0,e.watch)([()=>o.yDomain,()=>o.yDomains],()=>{y.value={},b.value={}},{deep:!0});let j=(0,e.shallowRef)(null),N=(0,e.ref)(!1),P=(0,e.ref)(!1),F=()=>void 0,I=()=>void 0,L=()=>void 0,R=qr(()=>o.data,()=>{L(),F()},()=>I()),z=Li({props:o,observedWidth:f,observedHeight:p,measuredTitleWidth:m,measuredTitleHeight:h,internalHiddenSeriesIds:E,paginationBandHeight:g}),{chartWidth:B,chartHeight:V,isCleanView:ee,isPresentationMode:H,hiddenSeriesIdSet:U,resolvedTitleText:te,titleAreaReserved:ne,titleMeasureStyle:W,titleAreaHeight:G,chartTopMargin:re,innerHeight:ie}=z,K=Ni({props:o,preparedSeries:R,currentPage:C,hiddenSeriesIdSet:U,chartWidth:B,innerHeight:ie,isCleanView:ee,sharedTransform:_,independentTransforms:v,sharedYDomains:y,independentYDomains:b,annotationInteraction:(0,e.markRaw)(D),linePointOverrides:O,boundaries:s}),{chartSeries:ae,chartTracks:oe,renderingOptions:se,trackLayouts:ce,gridOptions:le,pageCount:ue,pagedTracks:de,resolvedChartLeftMargin:fe,innerWidth:pe,hasChartArea:me,activeInteractionMode:he,isZoomMode:q,initialXDomain:ge,sharedZoomDomain:_e,resolveInitialTrackDomain:ve,annotationLayoutsForTrack:ye,resolveSeriesYScale:be}=K,xe=Ri(o,K.resolvedChartLeftMargin,K.innerWidth,z.titleAreaStyle),Se=Ha({props:o,emit:i,instanceId:T,preparedSeries:R,sourceTrackLayouts:ce,renderingOptions:se,linePointOverrides:O}),Ce=(0,e.computed)(()=>le.value.showPagination&&ue.value>1&&!ee.value);(0,e.watchEffect)(()=>{g.value=o.layoutPreset===`edge-compact`?Vr(Ce.value):le.value.showPagination&&ue.value>1&&B.value<=520?40:0});let J=Br({props:o,emit:i,svgElement:l,sharedOverlayElement:d,sharedTransform:_,independentTransforms:v,trackLayouts:ce,initialXDomain:ge,sharedZoomDomain:_e,innerWidth:pe,innerHeight:ie,hasChartArea:me,isZoomMode:q,isPresentationMode:H,resolveInitialTrackDomain:ve,cancelPendingHover:()=>Ee.cancelPendingHover()});L=J.prepareForDataChange;let we=wr({props:o,emit:i,container:c,chartSeries:ae,hiddenSeriesIdSet:U,internalHiddenSeriesIds:E,annotationInteraction:D,editorSeriesOptions:k,trackLayouts:ce,annotationLayoutsForTrack:ye,resolveSeriesYScale:be,chartWidth:B,chartHeight:V,innerWidth:pe,resolvedChartLeftMargin:fe,titleAreaHeight:G,chartTopMargin:re,activeInteractionMode:he,isPresentationMode:H}),Te=Rr({clearBoundaries:e=>Oe.clearBoundaries(e),props:o,emit:i,selection:j,spacePressed:N,trackLayouts:ce,chartTracks:oe,initialXDomain:ge,innerWidth:pe,innerHeight:ie,sharedOverlayElement:d,sharedTransform:_,independentTransforms:v,sharedYDomains:y,independentYDomains:b,isZoomMode:q,isPresentationMode:H,editorSeriesOptions:k,resolveInitialTrackDomain:ve,canZoomTrack:J.canZoomTrack,canZoomSharedTracks:J.canZoomSharedTracks,configureZoom:J.configureZoom,cancelPendingZoom:J.cancelPendingZoom,clearHover:()=>Ee.clearHover(),resolveTrackAtPointer:we.resolveTrackAtPointer}),Ee=Tr({emit:i,hoverState:x,suppressHoverUntilMove:S,hoverThrottle:A,selection:j,trackLayouts:ce,innerWidth:pe,resolvedChartLeftMargin:fe,titleAreaHeight:G,chartTopMargin:re,sharedOverlayElement:d,isPresentationMode:H,updateViewportDrag:Te.updateViewportDrag,resolveTrackAtPointer:we.resolveTrackAtPointer}),De=()=>{Te.cancelViewportDrag(),J.cancelPendingZoom(),Ee.clearHover(),we.cancelAnnotation()},Oe=On({props:o,emit:i,layout:K,mode:a,boundaries:s,independentTransforms:v,sharedTransform:_,independentYDomains:b,sharedYDomains:y,cancel:De,configure:J.configureZoom,legacyReset:Te.resetViewport,legacySet:Te.setViewportDomain});(0,e.watch)([a.mode,()=>o.zoomable,()=>o.pannable,()=>o.annotationsVisible],De,{flush:`sync`}),(0,e.watch)([C,()=>o.displayMode],()=>{s.value={},De()}),(0,e.watch)([()=>o.initialXDomain,()=>o.initialXDomains,U,()=>o.xDomainStrategy],Oe.restoreInitialBoundaries,{deep:!0}),(0,e.onBeforeUnmount)(De);let ke=Gr({preserveFullViewport:()=>Object.keys(s.value).length>0,props:o,emit:i,container:c,titleMeasureElement:u,resizeObserver:w,observedWidth:f,observedHeight:p,measuredTitleWidth:m,measuredTitleHeight:h,resolvedTitleText:te,titleAreaReserved:ne,titleMeasureStyle:W,spacePressed:N,pointerInsideChart:P,currentPage:C,pageCount:ue,pagedTracks:de,gridOptions:le,chartSeries:ae,chartTracks:oe,trackLayouts:ce,innerWidth:pe,innerHeight:ie,sharedZoomDomain:_e,initialXDomain:ge,sharedTransform:_,activeInteractionMode:he,hiddenSeriesIdSet:U,internalHiddenSeriesIds:E,independentTransforms:v,independentYDomains:b,resolveInitialTrackDomain:ve,annotationInteraction:D,editorSeriesOptions:k,isPresentationMode:H,clearHover:Ee.clearHover,cancelAnnotation:we.cancelAnnotation,configureZoom:J.configureZoom,resetViewport:Te.resetViewport,cancelViewportDrag:Te.cancelViewportDrag,cancelPendingHover:Ee.cancelPendingHover,clearZoomBindings:J.clearZoomBindings});F=ke.handleBeforeDataReferenceChange,I=()=>{s.value={},Te.cancelViewportDrag(),ke.handleDataReferenceChange(),(0,e.nextTick)(J.configureZoom)};let Ae=fn({container:()=>c.value,svg:()=>l.value,size:()=>({width:B.value,height:V.value,titleHeight:G.value}),version:()=>[o.data,JSON.stringify({...r(o),hidden:[...U.value],width:B.value,height:V.value,titleHeight:G.value,page:C.value,shared:_.value,independent:v.value,sharedY:y.value,independentY:b.value,boundaries:s.value})],ready:Se.ready});return(0,e.reactive)({...(0,e.toRefs)(o),...z,plotCenterX:xe.plotCenterX,titleAreaStyle:xe.plotTitleAreaStyle,paginationVisible:Ce,...K,...we,...Te,...Ee,...Oe,...Ae,margin:M,getPageSize:st,currentPage:C,selection:j,pointerInsideChart:P,hoverState:x,annotationInteraction:D,editorDraft:D.editorDraft,contextMenu:D.contextMenu,editorSeriesOptions:k,clipPathId:T,goToPage:ke.goToPage,setContainer:e=>Ua(c,e),setSvgElement:e=>Ua(l,e),setTitleMeasureElement:e=>Ua(u,e),setSharedOverlayElement:e=>Ua(d,e)})}var Ga={"zoom-box":`M3 3h6M3 3v6M21 3h-6M21 3v6M3 21h6M3 21v-6M21 21h-6M21 21v-6`,pan:`M12 2v20M2 12h20M8 6l4-4 4 4M8 18l4 4 4-4M6 8l-4 4 4 4M18 8l4 4-4 4`,annotate:`M4 4h16v12H9l-5 4V4M8 8h8M8 12h5`,"zoom-in":`M12 5v14M5 12h14`,"zoom-out":`M5 12h14`,reset:`M4 11a8 8 0 1 1 1 6M4 4v7h7`,fit:`M8 3H3v5M16 3h5v5M3 16v5h5M21 16v5h-5M8 8h8v8H8z`,export:`M12 3v12M7 10l5 5 5-5M4 15v6h16v-6`},Ka={"zoom-box":`zoom`,pan:`pan`,annotate:`annotation`},qa={"zoom-box":`框选缩放`,pan:`平移`,annotate:`注解`,"zoom-in":`放大`,"zoom-out":`缩小`,reset:`重置`,fit:`显示全部`,export:`导出图片`},Ja=[`zoom-box`,`pan`,`annotate`,`zoom-in`,`zoom-out`,`reset`,`fit`,`export`],Ya=Object.fromEntries(Ja.map(e=>{let t=Ka[e],n=e===`zoom-in`||e===`zoom-out`||e===`reset`||e===`fit`?e:void 0;return[e,{id:e,label:qa[e],icon:Ga[e],group:t?`mode`:n?`viewport`:`export`,active:e=>!!t&&e.mode===t,enabled:(t,r)=>n&&r?!!t.targets.find(e=>e.trackId===r)?.available[n]:t.available[e],run:(e,r)=>{t?e.setInteractionMode(t):n&&e.execute(n,r?{trackId:r}:{},void 0,`toolbar`)}}]}));function Xa(e){let t=typeof e==`object`?e:{},n=[...new Set(t.items??Ja)].filter(e=>Ya[e]),r=[];return n.forEach(e=>{let t=Ya[e];r.at(-1)?.[0]?.group===t.group?r.at(-1).push(t):r.push([t])}),{visible:!!e&&t.visible!==!1&&n.length>0,display:t.display??`hover`,position:t.position??`top-right`,groups:r}}var Za=[`onKeydown`],Qa=[`aria-expanded`],$a=[`value`],eo={key:2,class:`waveform-toolbar__scope`},to=[`data-group`],no=[`data-command`,`title`,`aria-label`,`aria-pressed`,`aria-expanded`,`disabled`,`onClick`],ro={viewBox:`0 0 24 24`,"aria-hidden":`true`},io=[`d`],ao={key:3,class:`waveform-toolbar__menu`,role:`group`,"aria-label":`图片格式`},oo={key:4,class:`waveform-toolbar__feedback`,role:`status`},so=sr((0,e.defineComponent)({__name:`WaveformToolbar`,props:{controller:{}},setup(t){let n=t,r=(0,e.computed)(()=>Xa(n.controller.toolbar)),i=(0,e.computed)(()=>n.controller.chartWidth<440),a=(0,e.ref)(!1),o=(0,e.ref)(``),s=(0,e.ref)(!1),c=(0,e.ref)(!1),l=(0,e.ref)(``),u=!1;(0,e.onBeforeUnmount)(()=>{u=!0}),(0,e.watch)(()=>n.controller.controlState,e=>{(!e.independent||!e.targets.some(e=>e.trackId===o.value))&&(o.value=``)}),(0,e.watch)(()=>r.value.visible,()=>{s.value=!1});async function d(e){s.value=!1,c.value=!0,l.value=``;try{let t=await n.controller.exportImage({format:e});if(u)return;let r=URL.createObjectURL(t),i=document.createElement(`a`);try{i.href=r,i.download=`waveform.${e}`,document.body.appendChild(i),i.click()}finally{i.remove(),URL.revokeObjectURL(r)}}catch(e){u||(l.value=e instanceof Error?e.message:`导出失败,请重试`)}finally{c.value=!1}}function f(){a.value=!a.value,s.value=!1}function p(){s.value=!1,a.value=!1,n.controller.cancelViewportDrag()}return(n,u)=>r.value.visible?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:0,class:(0,e.normalizeClass)([`waveform-toolbar`,[`waveform-toolbar--${r.value.display}`,`waveform-toolbar--${r.value.position}`,{"waveform-toolbar--collapsed":i.value&&!a.value}]]),style:(0,e.normalizeStyle)({top:`${t.controller.titleAreaHeight+2}px`}),role:`toolbar`,"aria-label":`波形工具栏`,onPointerdown:u[3]||=(0,e.withModifiers)(()=>{},[`stop`]),onClick:u[4]||=(0,e.withModifiers)(()=>{},[`stop`]),onDblclick:u[5]||=(0,e.withModifiers)(()=>{},[`stop`]),onWheel:u[6]||=(0,e.withModifiers)(()=>{},[`stop`]),onContextmenu:u[7]||=(0,e.withModifiers)(()=>{},[`stop`]),onKeydown:(0,e.withKeys)((0,e.withModifiers)(p,[`stop`]),[`esc`])},[i.value?((0,e.openBlock)(),(0,e.createElementBlock)(`button`,{key:0,type:`button`,class:`waveform-toolbar__toggle`,"aria-label":`图表工具`,"aria-expanded":a.value,onClick:f},` 工具 `,8,Qa)):(0,e.createCommentVNode)(``,!0),t.controller.controlState.independent?(0,e.withDirectives)(((0,e.openBlock)(),(0,e.createElementBlock)(`select`,{key:1,"onUpdate:modelValue":u[0]||=e=>o.value=e,"aria-label":`操作图框`},[u[8]||=(0,e.createElementVNode)(`option`,{value:``},`当前页全部`,-1),((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(t.controller.controlState.targets,t=>((0,e.openBlock)(),(0,e.createElementBlock)(`option`,{key:t.trackId,value:t.trackId},(0,e.toDisplayString)(t.label),9,$a))),128))],512)),[[e.vModelSelect,o.value]]):((0,e.openBlock)(),(0,e.createElementBlock)(`span`,eo,`共享范围`)),((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(r.value.groups,(n,r)=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:r,class:`waveform-toolbar__group`,"data-group":n[0]?.group},[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(n,n=>((0,e.openBlock)(),(0,e.createElementBlock)(`button`,{key:n.id,type:`button`,"data-command":n.id,title:n.label,"aria-label":n.label,"aria-pressed":n.group===`mode`?n.active(t.controller.controlState):void 0,"aria-expanded":n.id===`export`?s.value:void 0,disabled:!n.enabled(t.controller.controlState,o.value||void 0)||n.id===`export`&&c.value,onClick:e=>n.id===`export`?s.value=!s.value:n.run(t.controller,o.value||void 0)},[((0,e.openBlock)(),(0,e.createElementBlock)(`svg`,ro,[(0,e.createElementVNode)(`path`,{d:n.icon},null,8,io)]))],8,no))),128))],8,to))),128)),s.value?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,ao,[(0,e.createElementVNode)(`button`,{type:`button`,onClick:u[1]||=e=>d(`png`)},`下载 PNG`),(0,e.createElementVNode)(`button`,{type:`button`,onClick:u[2]||=e=>d(`svg`)},`下载 SVG`)])):(0,e.createCommentVNode)(``,!0),c.value||l.value?((0,e.openBlock)(),(0,e.createElementBlock)(`span`,oo,(0,e.toDisplayString)(c.value?`正在导出…`:l.value),1)):(0,e.createCommentVNode)(``,!0)],46,Za)):(0,e.createCommentVNode)(``,!0)}}),[[`__scopeId`,`data-v-253fa741`]]),co=[`id`],lo={class:`waveform-annotation-editor__content`},uo={class:`waveform-annotation-editor__coordinates`,"aria-label":`标注坐标`},fo=[`aria-invalid`],po={class:`waveform-annotation-editor__coordinate-value`,"aria-hidden":`true`},mo=[`id`],ho={key:0,class:`waveform-annotation-editor__series`,"aria-label":`标注所属波形`},go={class:`waveform-annotation-editor__series-label`},_o=[`value`],vo=[`value`],yo={key:1},bo={class:`waveform-annotation-editor__field`},xo={class:`waveform-annotation-editor__label-row`},So=[`maxlength`],Co={class:`waveform-annotation-editor__colors`},wo={class:`waveform-annotation-editor__color-field`,title:`调整标注边框色和透明度`},To={class:`waveform-annotation-editor__color-field`,title:`调整标注文字色和透明度`},Eo={class:`waveform-annotation-editor__color-field`,title:`调整标注背景色和透明度`},Do=sr((0,e.defineComponent)({__name:`WaveformAnnotationEditor`,props:{annotation:{},mode:{},series:{},seriesOptions:{},timeUnit:{default:`ms`},timeError:{default:``}},emits:[`confirm`,`cancel`,`series-change`,`time-change`],setup(t,{emit:r}){let i=(0,e.defineAsyncComponent)(async()=>typeof window>`u`?{name:`WaveformColorPickerSsrFallback`,render:()=>null}:(await import(`vue3-colorpicker`)).ColorPicker),a=t,o=r,s=(0,e.ref)(),c=An(`waveform-annotation-editor-title`),l=(0,e.ref)(``),u=(0,e.ref)(``),d=(0,e.ref)(!1),f=(0,e.ref)(``),p=(0,e.ref)(``),m=(0,e.ref)(``),h=(0,e.computed)(()=>d.value&&(!u.value.trim()||!Number.isFinite(Number(u.value)))?`请输入有效的时间`:``),g=(0,e.computed)(()=>d.value&&(h.value||a.timeError)||``),_=(0,e.computed)(()=>l.value.trim().length>0&&u.value.trim().length>0&&Number.isFinite(Number(u.value))&&!g.value),v=(0,e.computed)(()=>l.value.length),y=(0,e.computed)(()=>{let e=a.seriesOptions?.find(e=>e.seriesId===a.annotation.seriesId);return e?{id:e.seriesId,name:e.name,color:e.color,unit:e.unit}:a.series});function b(){let t=Xn(a.annotation.style);l.value=a.annotation.text,u.value=k(a.annotation.x,a.timeUnit),d.value=!1,f.value=t.borderColor,p.value=t.textColor,m.value=t.backgroundColor,(0,e.nextTick)(()=>s.value?.focus())}(0,e.watch)(()=>a.annotation.id,b,{immediate:!0});function x(e){u.value=e==null?``:String(e),d.value=!1}function S(){d.value=!0,o(`time-change`,u.value)}async function w(){S(),await(0,e.nextTick)(),_.value&&o(`confirm`,{...a.annotation,text:l.value.trim(),style:{borderColor:f.value,textColor:p.value,backgroundColor:m.value.trim()||`rgba(255, 255, 255, 0.92)`}})}function T(e){e.key===`Escape`&&o(`cancel`),e.key===`Enter`&&(e.ctrlKey||e.metaKey)&&(e.preventDefault(),w())}function E(e){let t=e.target;t.value&&o(`series-change`,t.value)}return(t,r)=>((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(n.Modal),{visible:!0,width:440,"mask-closable":!0,keyboard:!0,"cancel-text":`取消`,"ok-text":`保存标注`,"ok-button-props":{disabled:!_.value},"root-class-name":`waveform-annotation-editor-root`,"wrap-class-name":`waveform-annotation-editor`,onCancel:r[4]||=e=>o(`cancel`),onOk:w},{title:(0,e.withCtx)(()=>[(0,e.createElementVNode)(`span`,{id:(0,e.unref)(c)},(0,e.toDisplayString)(a.mode===`add`?`添加标注`:`编辑标注`),9,co)]),default:(0,e.withCtx)(()=>[(0,e.createElementVNode)(`div`,lo,[(0,e.createElementVNode)(`div`,uo,[(0,e.createElementVNode)(`label`,{class:`waveform-annotation-editor__coordinate-input`,"aria-invalid":!!g.value},[r[5]||=(0,e.createElementVNode)(`b`,null,`X`,-1),(0,e.createVNode)((0,e.unref)(n.InputNumber),{value:u.value===``?void 0:Number(u.value),controls:!0,step:.001,keyboard:!0,status:g.value?`error`:void 0,"aria-label":`标注横轴时间`,"aria-invalid":!!g.value,"aria-describedby":g.value?`${(0,e.unref)(c)}-time-error`:void 0,onBlur:S,"onUpdate:value":x},null,8,[`value`,`status`,`aria-invalid`,`aria-describedby`]),(0,e.createElementVNode)(`code`,po,(0,e.toDisplayString)(u.value),1)],8,fo),g.value?((0,e.openBlock)(),(0,e.createElementBlock)(`p`,{key:0,id:`${(0,e.unref)(c)}-time-error`,class:`waveform-annotation-editor__coordinate-error`,role:`alert`},(0,e.toDisplayString)(g.value),9,mo)):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`span`,null,[r[6]||=(0,e.createElementVNode)(`b`,null,`Y`,-1),(0,e.createElementVNode)(`code`,null,(0,e.toDisplayString)((0,e.unref)(C)(a.annotation.y)),1)])]),r[13]||=(0,e.createElementVNode)(`p`,{class:`waveform-annotation-editor__coordinate-hint`,role:`note`},` 修改 X 轴后失焦时会自动吸附最近的采样点 `,-1),y.value?((0,e.openBlock)(),(0,e.createElementBlock)(`label`,ho,[(0,e.createElementVNode)(`i`,{style:(0,e.normalizeStyle)({backgroundColor:y.value.color}),"aria-hidden":`true`},null,4),(0,e.createElementVNode)(`span`,go,[r[7]||=(0,e.createElementVNode)(`small`,null,`标注波形`,-1),(0,e.createElementVNode)(`b`,null,(0,e.toDisplayString)(y.value.name),1)]),a.seriesOptions?.length?((0,e.openBlock)(),(0,e.createElementBlock)(`select`,{key:0,value:a.annotation.seriesId,"aria-label":`选择标注波形`,onChange:E},[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(a.seriesOptions,t=>((0,e.openBlock)(),(0,e.createElementBlock)(`option`,{key:t.seriesId,value:t.seriesId},(0,e.toDisplayString)(t.name)+(0,e.toDisplayString)(t.unit?` (${t.unit})`:``),9,vo))),128))],40,_o)):y.value.unit?((0,e.openBlock)(),(0,e.createElementBlock)(`code`,yo,(0,e.toDisplayString)(y.value.unit),1)):(0,e.createCommentVNode)(``,!0)])):(0,e.createCommentVNode)(``,!0),(0,e.createElementVNode)(`label`,bo,[(0,e.createElementVNode)(`span`,xo,[r[8]||=(0,e.createElementVNode)(`b`,null,`标注文本`,-1),(0,e.createElementVNode)(`small`,null,(0,e.toDisplayString)(v.value)+`/`+(0,e.toDisplayString)((0,e.unref)(40)),1)]),(0,e.withDirectives)((0,e.createElementVNode)(`textarea`,{ref_key:`textarea`,ref:s,"onUpdate:modelValue":r[0]||=e=>l.value=e,rows:`4`,maxlength:(0,e.unref)(40),"aria-label":`标注文本`,placeholder:`输入这处波形的说明`,onKeydown:T},null,40,So),[[e.vModelText,l.value]])]),(0,e.createElementVNode)(`fieldset`,Co,[r[12]||=(0,e.createElementVNode)(`legend`,null,`颜色与透明度`,-1),(0,e.createElementVNode)(`label`,wo,[r[9]||=(0,e.createElementVNode)(`span`,null,`边框色`,-1),(0,e.createVNode)((0,e.unref)(i),{"pure-color":f.value,"onUpdate:pureColor":r[1]||=e=>f.value=e,"aria-label":`标注边框色`,"use-type":`pure`,"picker-type":`chrome`,format:`rgb`,"disable-alpha":!1,"blur-close":!0},null,8,[`pure-color`])]),(0,e.createElementVNode)(`label`,To,[r[10]||=(0,e.createElementVNode)(`span`,null,`文字色`,-1),(0,e.createVNode)((0,e.unref)(i),{"pure-color":p.value,"onUpdate:pureColor":r[2]||=e=>p.value=e,"aria-label":`标注文字色`,"use-type":`pure`,"picker-type":`chrome`,format:`rgb`,"disable-alpha":!1,"blur-close":!0},null,8,[`pure-color`])]),(0,e.createElementVNode)(`label`,Eo,[r[11]||=(0,e.createElementVNode)(`span`,null,`背景色`,-1),(0,e.createVNode)((0,e.unref)(i),{"pure-color":m.value,"onUpdate:pureColor":r[3]||=e=>m.value=e,"aria-label":`标注背景色`,"use-type":`pure`,"picker-type":`chrome`,format:`rgb`,"disable-alpha":!1,"blur-close":!0},null,8,[`pure-color`])])])])]),_:1},8,[`ok-button-props`]))}}),[[`__scopeId`,`data-v-01ecd3a4`]]),Oo={class:`waveform-tooltip__series-content`},ko={class:`waveform-tooltip__series-label`},Ao={key:0,class:`waveform-tooltip__value`},jo={key:1,class:`waveform-tooltip__value waveform-tooltip__value--missing`},Mo=12,No=8,Po=560,Fo=sr((0,e.defineComponent)({__name:`WaveformTooltip`,props:{visible:{type:Boolean},position:{},timeUnit:{},hoveredPoint:{},seriesPoints:{},containerWidth:{},containerHeight:{}},setup(t){let n=t,r=(0,e.ref)(null),i=(0,e.ref)({width:0,height:0});function a(){let e=r.value?.getBoundingClientRect(),t=e?.width??0,n=e?.height??0;(t!==i.value.width||n!==i.value.height)&&(i.value={width:t,height:n})}(0,e.watch)(r,(e,t,n)=>{if(a(),!e)return;let r=new ResizeObserver(a);r.observe(e),n(()=>r.disconnect())},{flush:`post`}),(0,e.onUpdated)(a);let o=(0,e.computed)(()=>{if(!n.visible||!n.hoveredPoint)return{display:`none`};let e=n.position.x+Mo,t=n.position.x-Mo-i.value.width,r=Math.max(1,Math.min(Po,n.containerWidth-No*2));return{...e+i.value.width<=n.containerWidth-No?{left:`${e}px`}:t>=No?{right:`${n.containerWidth-n.position.x+Mo}px`}:{left:`${No}px`},maxWidth:`${r}px`,visibility:i.value.width>0?`visible`:`hidden`,top:`${Math.max(No,Math.min(n.position.y-18,n.containerHeight-i.value.height-No))}px`}});return(n,i)=>t.visible&&t.hoveredPoint?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:0,ref_key:`tooltipElement`,ref:r,class:`waveform-tooltip waveform-chart__tooltip`,style:(0,e.normalizeStyle)(o.value)},[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(t.seriesPoints,n=>((0,e.openBlock)(),(0,e.createElementBlock)(`span`,{key:`${n.trackIndex}-${n.name}`,class:`waveform-tooltip__series waveform-chart__tooltip-series`},[(0,e.createElementVNode)(`i`,{style:(0,e.normalizeStyle)({backgroundColor:n.color})},null,4),(0,e.createElementVNode)(`span`,Oo,[(0,e.createElementVNode)(`span`,ko,[(0,e.createTextVNode)((0,e.toDisplayString)(n.shotNo?.trim()||`未配置炮号`)+`: `+(0,e.toDisplayString)(n.name),1),n.unit?((0,e.openBlock)(),(0,e.createElementBlock)(e.Fragment,{key:0},[(0,e.createTextVNode)(`(`+(0,e.toDisplayString)(n.unit)+`)`,1)],64)):(0,e.createCommentVNode)(``,!0)]),n.point?((0,e.openBlock)(),(0,e.createElementBlock)(`span`,Ao,`(x:`+(0,e.toDisplayString)((0,e.unref)(O)(n.point.x,t.timeUnit))+` y:`+(0,e.toDisplayString)((0,e.unref)(S)(n.point.y))+`)`,1)):((0,e.openBlock)(),(0,e.createElementBlock)(`span`,jo,`无数据`))])]))),128))],4)):(0,e.createCommentVNode)(``,!0)}}),[[`__scopeId`,`data-v-88c44eda`]]),Io=(0,e.defineComponent)({__name:`WaveformHoverHost`,props:{state:{},visible:{type:Boolean},timeUnit:{},containerWidth:{},containerHeight:{}},setup(t){let n=t,r=(0,e.computed)(()=>n.state.points.find(e=>e.point)?.point??null);return(n,i)=>((0,e.openBlock)(),(0,e.createBlock)(Fo,{visible:t.visible&&r.value!==null,position:t.state.position,"time-unit":t.timeUnit,"hovered-point":r.value,"series-points":t.state.points,"container-width":t.containerWidth,"container-height":t.containerHeight},null,8,[`visible`,`position`,`time-unit`,`hovered-point`,`series-points`,`container-width`,`container-height`]))}}),Lo=13,Ro=2,zo=14,Bo=8,Vo=24,Ho={circle:t.symbolCircle,square:t.symbolSquare,triangle:t.symbolTriangle,diamond:t.symbolDiamond};function Uo(e,n=48){return e===`none`?null:(0,t.symbol)().type(Ho[e]).size(n)()??null}function Wo(e,t,n=48){if(e===`none`||t.length===0)return null;if(e===`circle`){let e=Math.sqrt(n/Math.PI);return t.map(({x:t,y:n})=>`M${t+e},${n}A${e},${e},0,1,1,${t-e},${n}A${e},${e},0,1,1,${t+e},${n}`).join(``)}if(e===`square`){let e=Math.sqrt(n),r=e/2;return t.map(({x:t,y:n})=>`M${t-r},${n-r}h${e}v${e}h${-e}Z`).join(``)}if(e===`triangle`){let e=Math.sqrt(n/(Math.sqrt(3)*3/4)),r=e*Math.sqrt(3)/2,i=e/2;return t.map(({x:t,y:n})=>`M${t},${n-e}L${t+r},${n+i}L${t-r},${n+i}Z`).join(``)}let r=Math.sqrt(n/(2*Math.tan(Math.PI/6))),i=r*Math.tan(Math.PI/6);return t.map(({x:e,y:t})=>`M${e},${t-r}L${e+i},${t}L${e},${t+r}L${e-i},${t}Z`).join(``)}function Go(e){return e===`none`?null:`M1 8H25`}function Ko(e){if(e===`dashed`)return`8 5`;if(e===`dash-dot`)return`8 5 1.5 5`}function qo(e){let t=(Number.isFinite(e)&&e>0?Math.min(e,Vo):Bo)/2,n=Lo-t,r=Lo+t;return[`M${n} ${Ro}H${r}`,`M${Lo} ${Ro}V${zo}`,`M${n} ${zo}H${r}`].join(``)}var Jo=[`clip-path`],Yo=[`data-series-id`,`data-series-name`],Xo=[`data-series-id`,`data-series-name`,`data-y-axis-index`,`data-line-type`,`data-line-style`,`d`,`stroke`,`stroke-dasharray`],Zo=[`data-series-id`],Qo=[`d`,`stroke`,`stroke-width`],$o=[`data-series-id`,`data-point-type`],es=[`d`,`fill`],ts=sr((0,e.defineComponent)({__name:`WaveformSeriesLayer`,props:{track:{},clipPathId:{}},setup(t){let n=t,r=(0,e.computed)(()=>n.track.seriesPaths.map(e=>{let t=Wo(e.series.pointType,e.pointRenderPoints.map(t=>({x:n.track.xScale(t.x),y:e.yScale(t.y)}))),r=e.series.errorBar.capWidth/2,i=e.errorBarRenderPoints.map(t=>{let{lower:i,upper:a}=ke(t),o=n.track.xScale(t.x),s=e.yScale(t.y-i),c=e.yScale(t.y+a);return[`M${o-r},${s}H${o+r}`,`M${o},${s}V${c}`,`M${o-r},${c}H${o+r}`].join(``)}).join(``);return{...e,pointPath:t,errorBarPath:i||null}}));return(n,i)=>!t.track.isEmpty&&t.track.hasVisibleSeries?((0,e.openBlock)(),(0,e.createElementBlock)(`g`,{key:0,class:`waveform-track__series`,"clip-path":`url(#${t.clipPathId}-${t.track.index})`},[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(r.value,t=>((0,e.openBlock)(),(0,e.createElementBlock)(`g`,{key:t.series.id,class:`waveform-track__series-item waveform-chart__series`,"data-series-id":t.series.id,"data-series-name":t.series.name||void 0},[t.path?((0,e.openBlock)(),(0,e.createElementBlock)(`path`,{key:0,class:`waveform-track__line waveform-chart__line`,"data-series-id":t.series.id,"data-series-name":t.series.name||void 0,"data-y-axis-index":t.yAxisIndex,"data-line-type":t.series.lineType,"data-line-style":t.series.lineStyle,d:t.path,stroke:t.series.color,"stroke-dasharray":(0,e.unref)(Ko)(t.series.lineStyle)},null,8,Xo)):(0,e.createCommentVNode)(``,!0),t.series.errorBar.visible?((0,e.openBlock)(),(0,e.createElementBlock)(`g`,{key:1,class:`waveform-track__error-bars waveform-chart__error-bars`,"data-series-id":t.series.id},[t.errorBarPath?((0,e.openBlock)(),(0,e.createElementBlock)(`path`,{key:0,class:`waveform-track__error-bar waveform-chart__error-bar`,d:t.errorBarPath,stroke:t.series.errorBar.color||t.series.color,"stroke-width":t.series.errorBar.width},null,8,Qo)):(0,e.createCommentVNode)(``,!0)],8,Zo)):(0,e.createCommentVNode)(``,!0),t.series.pointType===`none`?(0,e.createCommentVNode)(``,!0):((0,e.openBlock)(),(0,e.createElementBlock)(`g`,{key:2,class:`waveform-track__points waveform-chart__points`,"data-series-id":t.series.id,"data-point-type":t.series.pointType},[t.pointPath?((0,e.openBlock)(),(0,e.createElementBlock)(`path`,{key:0,class:`waveform-track__point waveform-chart__point`,d:t.pointPath,fill:t.series.color},null,8,es)):(0,e.createCommentVNode)(``,!0)],8,$o))],8,Yo))),128))],8,Jo)):(0,e.createCommentVNode)(``,!0)}}),[[`__scopeId`,`data-v-628502df`]]),ns=[`clip-path`],rs=[`data-y-axis-index`,`x2`,`y1`,`y2`,`stroke`,`stroke-opacity`,`stroke-width`,`stroke-dasharray`],is=(0,e.defineComponent)({__name:`WaveformZeroLines`,props:{track:{},clipPathId:{},innerWidth:{},cleanView:{type:Boolean},zeroLine:{}},setup(t){let n=t;function r(e){let[t,r]=e.scale.domain(),i=Math.abs(e.tickValues[1]-e.tickValues[0])*n.zeroLine.boundaryThreshold;return!n.zeroLine.visible||t>=0||r<=0||-t<i||r<i?null:e.scale(0)}return(n,i)=>!t.track.isEmpty&&t.track.hasVisibleSeries&&t.zeroLine.visible&&!t.cleanView?((0,e.openBlock)(),(0,e.createElementBlock)(`g`,{key:0,class:`waveform-track__zero-lines waveform-chart__zero-lines`,"clip-path":`url(#${t.clipPathId}-${t.track.index})`,"aria-hidden":`true`,"pointer-events":`none`},[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(t.track.yAxes,n=>((0,e.openBlock)(),(0,e.createElementBlock)(e.Fragment,{key:`zero-line-${t.track.index}-${n.index}`},[r(n)===null?(0,e.createCommentVNode)(``,!0):((0,e.openBlock)(),(0,e.createElementBlock)(`line`,{key:0,class:`waveform-track__zero-line waveform-chart__zero-line`,"data-y-axis-index":n.index,x1:`0`,x2:t.track.width??t.innerWidth,y1:r(n)??0,y2:r(n)??0,stroke:t.zeroLine.color,"stroke-opacity":t.zeroLine.opacity,"stroke-width":t.zeroLine.width,"stroke-dasharray":t.zeroLine.dash||void 0},null,8,rs))],64))),128))],8,ns)):(0,e.createCommentVNode)(``,!0)}});function as(e,t,n=``){let r=t?.trim();return r&&r!==`--`?`${e}${n}(${r})`:e}var os=[`transform`],ss=[`transform`],cs={class:`waveform-track__axis-endpoint waveform-track__axis-endpoint--start waveform-chart__axis-endpoint waveform-chart__axis-endpoint--start`,x:`0`,y:`7`,dy:`0.71em`,"text-anchor":`start`},ls=[`x`],us=[`data-y-axis-index`,`data-y-axis-side`,`transform`],ds={key:2},fs=[`x`,`y`,`width`],ps=[`fill`,`transform`],ms=[`data-y-axis-title-index`],hs=[`x`,`y`,`width`],gs=[`fill`,`transform`],_s=(0,e.defineComponent)({__name:`WaveformTrackAxes`,props:{track:{},innerWidth:{},cleanView:{type:Boolean},axes:{},timeUnit:{},yLabel:{},showUnits:{type:Boolean,default:!0},showLabelUnits:{type:Boolean},hideYAxisTitles:{type:Boolean},hideOverlappingMaximumLabel:{type:Boolean}},setup(n){let r=n,i=(0,e.computed)(()=>G(r.axes?.y?.labelTextStyle)),a=(0,e.computed)(()=>{let e=r.axes?.y?.labelTextStyle;return{fontSize:`${W(e)}px`,fontWeight:e?.fontWeight??600,fontFamily:e?.fontFamily,fontStyle:e?.fontStyle??`normal`}}),o=(0,e.ref)(),s=(0,e.ref)([]);function l(e){let t=e.name.trim()||r.yLabel||``;return r.showLabelUnits?as(t,e.unit):t}function u(e){let t=e.seriesList[0];return!!(t&&l(t))}function d(e,t){e&&(s.value[t]=e)}function f(){if(r.track.yAxes.forEach((e,n)=>{let i=s.value[n];if(!i)return;let a=r.showUnits?e.seriesList[0]?.unit:void 0,o=Math.max(...e.tickValues),l=(e.side===`left`?(0,t.axisLeft)(e.scale):(0,t.axisRight)(e.scale)).tickFormat(t=>Bt(Number(t),e.scale.domain(),e.tickValues,a,e.side)).tickSize(-4).tickPadding(7).tickSizeOuter(0).tickValues(e.tickValues),u=(0,t.select)(i);u.call(l),u.selectAll(`.tick text`).attr(`y`,null).attr(`dy`,`0`).attr(`dominant-baseline`,`central`).attr(`data-axis-maximum-label`,e=>r.hideOverlappingMaximumLabel&&c(e,o)?`true`:null).attr(`data-axis-minimum-label`,t=>r.hideOverlappingMaximumLabel&&c(t,Math.min(...e.tickValues))?`true`:null),u.attr(`data-label-domain-min`,e.scale.domain()[0]).attr(`data-label-domain-max`,e.scale.domain()[1]).attr(`data-label-unit`,a??null),u.selectAll(`.tick`).attr(`data-maximum-tick`,t=>e.maximumTick!==void 0&&c(t,e.maximumTick)?`true`:null).attr(`data-minimum-tick`,t=>e.minimumTick!==void 0&&c(t,e.minimumTick)?`true`:null).attr(`data-tick-value`,e=>e).attr(`data-tick-y`,t=>e.scale(t)),u.selectAll(`path.domain`).attr(`display`,r.axes?.y?.lineVisible===!1?`none`:null)}),m(),!o.value)return;let e=(0,t.select)(o.value);e.call((0,t.axisBottom)(r.track.xScale).tickValues(r.track.xAxisTickValues).tickFormat(e=>T(Number(e),r.track.xScale.domain(),r.timeUnit,`tick`,r.axes?.x?.labelFormatter??r.track.xAxisLabelFormatter)).tickSize(-4).tickPadding(7).tickSizeOuter(0)),e.selectAll(`path.domain`).attr(`display`,r.axes?.x?.lineVisible===!1?`none`:null)}let p=!1;function m(){p||(()=>{let e=s.value[0]?.ownerSVGElement;e&&nn(e)})()}return(0,e.onBeforeUnmount)(()=>{p=!0,document.fonts?.removeEventListener?.(`loadingdone`,m)}),(0,e.onMounted)(async()=>{document.fonts?.addEventListener?.(`loadingdone`,m),document.fonts?.ready.then(()=>{p||m()}),await(0,e.nextTick)(),f()}),(0,e.watch)([()=>r.track.xScale,()=>r.track.yAxes,()=>r.track.xAxisTickValues,()=>r.track.yAxisTickValues,()=>r.timeUnit,()=>r.showUnits,()=>r.axes?.x?.labelFormatter,()=>r.axes?.x?.lineVisible,()=>r.axes?.y?.lineVisible,()=>r.hideOverlappingMaximumLabel],async()=>{await(0,e.nextTick)(),f()},{flush:`post`}),(t,r)=>((0,e.openBlock)(),(0,e.createElementBlock)(e.Fragment,null,[n.track.showXAxis?((0,e.openBlock)(),(0,e.createElementBlock)(`g`,{key:0,ref_key:`xAxisElement`,ref:o,class:(0,e.normalizeClass)([`waveform-track__axis waveform-track__axis--x waveform-chart__axis waveform-chart__axis--x`,{"waveform-track__axis--line-hidden":n.axes?.x?.lineVisible===!1}]),transform:`translate(0, ${n.track.height})`},null,10,os)):(0,e.createCommentVNode)(``,!0),n.track.showXAxis?((0,e.openBlock)(),(0,e.createElementBlock)(`g`,{key:1,class:`waveform-track__axis-endpoints waveform-chart__axis-endpoints`,transform:`translate(0, ${n.track.height})`,"font-family":`sans-serif`,"font-size":`10`,"aria-hidden":`true`},[(0,e.createElementVNode)(`text`,cs,(0,e.toDisplayString)(n.track.endpointLabels.start),1),(0,e.createElementVNode)(`text`,{class:`waveform-track__axis-endpoint waveform-track__axis-endpoint--end waveform-chart__axis-endpoint waveform-chart__axis-endpoint--end`,x:n.track.width??n.innerWidth,y:`7`,dy:`0.71em`,"text-anchor":`end`},(0,e.toDisplayString)(n.track.endpointLabels.end),9,ls)],8,ss)):(0,e.createCommentVNode)(``,!0),((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(n.track.isEmpty?[]:n.track.yAxes,t=>((0,e.openBlock)(),(0,e.createElementBlock)(`g`,{key:`y-axis-${n.track.index}-${t.index}`,ref_for:!0,ref:e=>d(e,t.index),class:(0,e.normalizeClass)([`waveform-track__axis waveform-track__axis--y waveform-chart__axis waveform-chart__axis--y`,[`waveform-track__axis--${t.side}`,{"waveform-track__axis--line-hidden":n.axes?.y?.lineVisible===!1}]]),"data-y-axis-index":t.index,"data-y-axis-side":t.side,transform:`translate(${t.x}, 0)`},null,10,us))),128)),!n.cleanView&&!n.hideYAxisTitles&&!n.track.isEmpty&&n.track.hasVisibleSeries&&n.track.seriesList.length===1&&n.track.showYAxisLabel&&n.track.series&&l(n.track.series)?((0,e.openBlock)(),(0,e.createElementBlock)(`g`,ds,[(0,e.createElementVNode)(`rect`,{class:`waveform-track__y-axis-label-bg waveform-chart__y-axis-label-bg`,x:n.track.yAxes[0].labelX-i.value/2,y:n.track.height/2-40,width:i.value,height:`80`,rx:`2`},null,8,fs),(0,e.createElementVNode)(`text`,{class:`waveform-track__y-axis-label waveform-chart__y-axis-label`,fill:n.axes?.y?.labelTextStyle?.color||n.track.series?.color,style:(0,e.normalizeStyle)(a.value),transform:`translate(${n.track.yAxes[0].labelX}, ${n.track.height/2}) rotate(-90)`,"text-anchor":`middle`,"dominant-baseline":`central`},(0,e.toDisplayString)(n.track.series?l(n.track.series):``),13,ps)])):(0,e.createCommentVNode)(``,!0),((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(!n.cleanView&&!n.hideYAxisTitles&&n.track.yAxes.length>1?n.track.yAxes.filter(u):[],t=>((0,e.openBlock)(),(0,e.createElementBlock)(`g`,{key:`y-axis-title-${n.track.index}-${t.index}`,class:`waveform-track__multi-axis-title`,"data-y-axis-title-index":t.index},[(0,e.createElementVNode)(`rect`,{class:`waveform-track__y-axis-label-bg waveform-chart__y-axis-label-bg`,x:t.labelX-i.value/2,y:n.track.height/2-40,width:i.value,height:`80`,rx:`2`},null,8,hs),(0,e.createElementVNode)(`text`,{class:`waveform-track__y-axis-label waveform-chart__y-axis-label`,fill:n.axes?.y?.labelTextStyle?.color||t.seriesList[0].color,style:(0,e.normalizeStyle)(a.value),transform:`translate(${t.labelX}, ${n.track.height/2}) rotate(-90)`,"text-anchor":`middle`,"dominant-baseline":`central`},(0,e.toDisplayString)(l(t.seriesList[0])),13,gs)],8,ms))),128))],64))}}),vs=[`width`,`height`,`fill`],ys=[`clip-path`],bs={class:`waveform-track__grid waveform-track__grid--minor waveform-chart__grid waveform-chart__grid--minor`},xs=[`stroke`,`x1`,`x2`,`y2`],Ss=[`stroke`,`x2`,`y1`,`y2`],Cs={class:`waveform-track__grid waveform-track__grid--major waveform-chart__grid waveform-chart__grid--major`},ws=[`stroke`,`x1`,`x2`,`y2`],Ts=[`stroke`,`x2`,`y1`,`y2`],Es=[`x`,`y`],Ds=(0,e.defineComponent)({__name:`WaveformTrackBackdrop`,props:{track:{},clipPathId:{},innerWidth:{},cleanView:{type:Boolean},showEmptyFrame:{type:Boolean},frameNumber:{},frameStyle:{}},setup(t){return(n,r)=>((0,e.openBlock)(),(0,e.createElementBlock)(e.Fragment,null,[(!t.track.isEmpty||t.showEmptyFrame)&&!t.cleanView?((0,e.openBlock)(),(0,e.createElementBlock)(`rect`,{key:0,class:`waveform-track__plot-background waveform-chart__plot-background`,width:t.track.width??t.innerWidth,height:t.track.height,fill:t.frameStyle.backgroundColor,"aria-hidden":`true`},null,8,vs)):(0,e.createCommentVNode)(``,!0),(!t.track.isEmpty||t.showEmptyFrame)&&!t.cleanView?((0,e.openBlock)(),(0,e.createElementBlock)(`g`,{key:1,"clip-path":`url(#${t.clipPathId}-${t.track.index})`,"aria-hidden":`true`},[(0,e.createElementVNode)(`g`,bs,[t.track.gridLines.vertical?((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,{key:0},(0,e.renderList)(t.track.xMinorTicks,n=>((0,e.openBlock)(),(0,e.createElementBlock)(`line`,{key:`x-minor-${t.track.index}-${n}`,"data-grid-direction":`vertical`,stroke:t.track.gridLines.verticalColor,x1:t.track.xScale(n),x2:t.track.xScale(n),y1:`0`,y2:t.track.height},null,8,xs))),128)):(0,e.createCommentVNode)(``,!0),t.track.gridLines.horizontal?((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,{key:1},(0,e.renderList)(t.track.yMinorTicks,n=>((0,e.openBlock)(),(0,e.createElementBlock)(`line`,{key:`y-minor-${t.track.index}-${n}`,"data-grid-direction":`horizontal`,stroke:t.track.gridLines.horizontalColor,x1:`0`,x2:t.track.width??t.innerWidth,y1:t.track.yScale(n),y2:t.track.yScale(n)},null,8,Ss))),128)):(0,e.createCommentVNode)(``,!0)]),(0,e.createElementVNode)(`g`,Cs,[t.track.gridLines.vertical?((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,{key:0},(0,e.renderList)(t.track.xMajorTicks,n=>((0,e.openBlock)(),(0,e.createElementBlock)(`line`,{key:`x-major-${t.track.index}-${n}`,"data-grid-direction":`vertical`,stroke:t.track.gridLines.verticalColor,x1:t.track.xScale(n),x2:t.track.xScale(n),y1:`0`,y2:t.track.height},null,8,ws))),128)):(0,e.createCommentVNode)(``,!0),t.track.gridLines.horizontal?((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,{key:1},(0,e.renderList)(t.track.yMajorTicks,n=>((0,e.openBlock)(),(0,e.createElementBlock)(`line`,{key:`y-major-${t.track.index}-${n}`,"data-grid-direction":`horizontal`,stroke:t.track.gridLines.horizontalColor,x1:`0`,x2:t.track.width??t.innerWidth,y1:t.track.yScale(n),y2:t.track.yScale(n)},null,8,Ts))),128)):(0,e.createCommentVNode)(``,!0)])],8,ys)):(0,e.createCommentVNode)(``,!0),(t.track.hasVisibleSeries||t.track.isEmpty&&t.showEmptyFrame)&&t.frameNumber!==void 0&&!t.cleanView?((0,e.openBlock)(),(0,e.createElementBlock)(`text`,{key:2,class:`waveform-track__watermark waveform-chart__watermark`,x:(t.track.width??t.innerWidth)/2,y:t.track.height/2,style:(0,e.normalizeStyle)({fontSize:`${Math.min(120,t.track.height*.65)}px`}),"text-anchor":`middle`,"dominant-baseline":`central`,"aria-hidden":`true`},(0,e.toDisplayString)(t.frameNumber),13,Es)):(0,e.createCommentVNode)(``,!0)],64))}}),Os=[`data-track-index`,`data-track-id`,`data-track-empty`,`data-track-left`,`data-track-width`,`data-y-axis-label-x`,`data-track-top`,`data-track-height`,`transform`],ks=[`data-interactive`,`data-independent-overlay-index`,`width`,`height`],As=[`x`,`y`],js=(0,e.defineComponent)({__name:`WaveformTrack`,props:{track:{},clipPathId:{},innerWidth:{},zoomable:{type:Boolean},interactive:{type:Boolean,default:!0},displayMode:{},interactionMode:{default:`zoom`},frameNumber:{},frameStyle:{},framePath:{},axes:{},timeUnit:{},yLabel:{},showAxisUnits:{type:Boolean,default:!0},showLabelUnits:{type:Boolean},hideYAxisTitles:{type:Boolean},containFrameStroke:{type:Boolean},cleanView:{type:Boolean,default:!1},zeroLine:{default:()=>({visible:!0,color:R.COLOR,width:R.WIDTH,dash:R.DASH,opacity:R.OPACITY,boundaryThreshold:R.BOUNDARY_THRESHOLD})}},emits:[`pointer-move`,`pointer-down`,`pointer-up`,`pointer-cancel`,`pointer-leave`,`click`,`contextmenu`],setup(t,{emit:n}){let r=t,i=n,a=(0,e.computed)(()=>{let e=r.frameStyle?.borderWidth;return{borderColor:r.frameStyle?.borderColor||`#1f2937`,borderWidth:typeof e==`number`&&Number.isFinite(e)&&e>=0?e:1,borderStyle:r.frameStyle?.borderStyle===`dashed`||r.frameStyle?.borderStyle===`dotted`?r.frameStyle.borderStyle:`solid`,backgroundColor:r.frameStyle?.backgroundColor||`transparent`}}),o=(0,e.computed)(()=>r.containFrameStroke?a.value.borderWidth/2:0);return(n,r)=>((0,e.openBlock)(),(0,e.createElementBlock)(`g`,{class:(0,e.normalizeClass)([`waveform-track waveform-chart__track`,{"waveform-track--empty waveform-chart__track--empty":t.track.isEmpty}]),"data-track-index":t.track.index,"data-track-id":t.track.id,"data-track-empty":t.track.isEmpty||void 0,"data-track-left":t.track.left,"data-track-width":t.track.width,"data-y-axis-label-x":t.track.yAxisLabelX,"data-track-top":t.track.top,"data-track-height":t.track.height,transform:`translate(${t.track.left??0}, ${t.track.top})`},[(0,e.createVNode)(Ds,{track:t.track,"clip-path-id":t.clipPathId,"inner-width":t.innerWidth,"clean-view":t.cleanView,"frame-number":t.frameNumber,"frame-style":a.value,"show-empty-frame":``},null,8,[`track`,`clip-path-id`,`inner-width`,`clean-view`,`frame-number`,`frame-style`]),(0,e.createVNode)(_s,{track:t.track,"inner-width":t.innerWidth,"clean-view":t.cleanView,axes:t.axes,"time-unit":t.timeUnit,"y-label":t.yLabel,"show-units":t.showAxisUnits,"show-label-units":t.showLabelUnits,"hide-y-axis-titles":t.hideYAxisTitles,"hide-overlapping-maximum-label":t.displayMode===`compact`},null,8,[`track`,`inner-width`,`clean-view`,`axes`,`time-unit`,`y-label`,`show-units`,`show-label-units`,`hide-y-axis-titles`,`hide-overlapping-maximum-label`]),((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)(t.framePath?`path`:`rect`),{class:`waveform-track__plot-frame waveform-chart__plot-frame`,d:t.framePath,x:t.containFrameStroke?o.value:void 0,y:t.containFrameStroke?o.value:void 0,width:Math.max(0,(t.track.width??t.innerWidth)-o.value*2),height:Math.max(0,t.track.height-o.value*2),fill:`none`,stroke:a.value.borderColor,"stroke-width":a.value.borderWidth,"stroke-dasharray":a.value.borderStyle===`dashed`?`6 4`:a.value.borderStyle===`dotted`?`1 3`:void 0,"stroke-linecap":a.value.borderStyle===`dotted`?`round`:void 0,"aria-hidden":`true`},null,8,[`d`,`x`,`y`,`width`,`height`,`stroke`,`stroke-width`,`stroke-dasharray`,`stroke-linecap`])),(0,e.createVNode)(ts,{track:t.track,"clip-path-id":t.clipPathId},null,8,[`track`,`clip-path-id`]),(0,e.createVNode)(is,{track:t.track,"clip-path-id":t.clipPathId,"inner-width":t.innerWidth,"clean-view":t.cleanView,"zero-line":t.zeroLine},null,8,[`track`,`clip-path-id`,`inner-width`,`clean-view`,`zero-line`]),!t.track.isEmpty&&t.track.hasVisibleSeries&&t.displayMode===`independent`?((0,e.openBlock)(),(0,e.createElementBlock)(`rect`,{key:0,class:(0,e.normalizeClass)([`waveform-track__overlay waveform-track__overlay--independent waveform-chart__overlay waveform-chart__overlay--independent`,{"is-zoomable":t.interactive&&t.zoomable&&t.interactionMode===`zoom`,"is-annotating":t.interactive&&t.interactionMode===`annotation`,"is-presentation":!t.interactive}]),"data-interactive":t.interactive,"data-independent-overlay-index":t.track.index,width:t.track.width??t.innerWidth,height:t.track.height,onPointermove:r[0]||=e=>i(`pointer-move`,e),onPointerdown:r[1]||=e=>i(`pointer-down`,e),onPointerup:r[2]||=e=>i(`pointer-up`,e),onPointercancel:r[3]||=e=>i(`pointer-cancel`,e),onPointerleave:r[4]||=e=>i(`pointer-leave`),onClick:r[5]||=e=>i(`click`,e),onContextmenu:r[6]||=e=>i(`contextmenu`,e)},null,42,ks)):(0,e.createCommentVNode)(``,!0),!t.track.isEmpty&&!t.track.hasVisibleSeries&&!t.cleanView?((0,e.openBlock)(),(0,e.createElementBlock)(`text`,{key:1,class:`waveform-track__no-visible-series`,x:(t.track.width??t.innerWidth)/2,y:t.track.height/2,"text-anchor":`middle`,"dominant-baseline":`central`},` 暂无可见曲线 `,8,As)):(0,e.createCommentVNode)(``,!0)],10,Os))}}),Ms=[`width`,`height`,`data-position`,`data-orientation`],Ns=[`disabled`,`aria-pressed`,`aria-label`,`onClick`],Ps=[`data-line-type`,`data-line-style`,`data-point-type`,`data-error-bar-visible`],Fs=[`d`,`stroke`,`stroke-dasharray`],Is=[`d`,`stroke`,`stroke-width`],Ls=[`d`,`fill`],Rs=[`title`],zs=sr((0,e.defineComponent)({__name:`WaveformLegend`,props:{series:{},position:{},orientation:{},backgroundColor:{},width:{},height:{},interactive:{type:Boolean,default:!1},showUnits:{type:Boolean,default:!1},hiddenSeriesIds:{default:()=>[]}},emits:[`toggle`],setup(t,{emit:n}){let r=t,i=n,a=(0,e.computed)(()=>new Set(r.hiddenSeriesIds));function o(e){return r.showUnits?as(e.name,e.unit,` `):e.name}function s(e){return a.value.has(e)}function c(e){r.interactive&&i(`toggle`,e)}return(n,r)=>((0,e.openBlock)(),(0,e.createElementBlock)(`foreignObject`,{class:`waveform-legend waveform-chart__legend`,x:`0`,y:`0`,width:t.width,height:t.height,"data-position":t.position,"data-orientation":t.orientation,"aria-label":`曲线图例`},[(0,e.createElementVNode)(`div`,{xmlns:`http://www.w3.org/1999/xhtml`,class:(0,e.normalizeClass)([`waveform-legend__viewport`,`waveform-legend__viewport--${t.position}`])},[(0,e.createElementVNode)(`div`,{class:(0,e.normalizeClass)([`waveform-legend__panel`,[`waveform-legend__panel--${t.orientation}`,{"waveform-legend__panel--interactive":t.interactive}]]),style:(0,e.normalizeStyle)({backgroundColor:t.backgroundColor}),role:`list`},[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(t.series,n=>((0,e.openBlock)(),(0,e.createElementBlock)(`button`,{key:n.id,class:(0,e.normalizeClass)([`waveform-legend__item waveform-chart__legend-item`,{"is-hidden":s(n.id)}]),type:`button`,role:`listitem`,disabled:!t.interactive,"aria-pressed":t.interactive?!s(n.id):void 0,"aria-label":t.interactive?`${s(n.id)?`显示`:`隐藏`}曲线 ${n.name}`:void 0,onClick:(0,e.withModifiers)(e=>c(n.id),[`stop`])},[((0,e.openBlock)(),(0,e.createElementBlock)(`svg`,{class:`waveform-legend__swatch`,viewBox:`0 0 26 16`,"aria-hidden":`true`,"data-line-type":n.lineType,"data-line-style":n.lineStyle,"data-point-type":n.pointType,"data-error-bar-visible":n.errorBar.visible||void 0},[(0,e.unref)(Go)(n.lineType)?((0,e.openBlock)(),(0,e.createElementBlock)(`path`,{key:0,class:`waveform-legend__line`,d:(0,e.unref)(Go)(n.lineType)??void 0,stroke:n.color,"stroke-dasharray":(0,e.unref)(Ko)(n.lineStyle),"stroke-width":`1`,fill:`none`},null,8,Fs)):(0,e.createCommentVNode)(``,!0),n.errorBar.visible?((0,e.openBlock)(),(0,e.createElementBlock)(`path`,{key:1,class:`waveform-legend__error-bar`,d:(0,e.unref)(qo)(n.errorBar.capWidth),stroke:n.errorBar.color||n.color,"stroke-width":n.errorBar.width,"stroke-linecap":`butt`,fill:`none`},null,8,Is)):(0,e.createCommentVNode)(``,!0),n.pointType===`none`?(0,e.createCommentVNode)(``,!0):((0,e.openBlock)(),(0,e.createElementBlock)(`path`,{key:2,class:`waveform-legend__point`,d:(0,e.unref)(Uo)(n.pointType,30)??void 0,fill:n.color,transform:`translate(13 8)`},null,8,Ls))],8,Ps)),(0,e.createElementVNode)(`span`,{class:`waveform-legend__label`,title:o(n)},(0,e.toDisplayString)(o(n)),9,Rs)],10,Ns))),128))],6)],2)],8,Ms))}}),[[`__scopeId`,`data-v-24214c74`]]),Bs={class:`waveform-chart__hover-layer`,"pointer-events":`none`,"aria-hidden":`true`},Vs=[`clip-path`,`transform`],Hs=[`x1`,`x2`,`y2`],Us=sr((0,e.defineComponent)({__name:`WaveformHoverLayer`,props:{state:{},tracks:{},clipPathId:{},visible:{type:Boolean}},setup(t){let n=t,r=(0,e.computed)(()=>!n.visible||n.state.queryX===null?[]:n.tracks.flatMap(e=>{let t=n.state.trackIndex===null||n.state.trackIndex===e.index,r=n.state.crosshairXByTrack[e.index];return t&&!e.isEmpty&&e.hasVisibleSeries&&r!==void 0?[{track:e,x:e.xScale(r)}]:[]}));return(n,i)=>((0,e.openBlock)(),(0,e.createElementBlock)(`g`,Bs,[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(r.value,n=>((0,e.openBlock)(),(0,e.createElementBlock)(`g`,{key:n.track.index,class:`waveform-track__crosshair waveform-chart__crosshair`,"clip-path":`url(#${t.clipPathId}-${n.track.index})`,transform:`translate(${n.track.left??0}, ${n.track.top})`},[(0,e.createElementVNode)(`line`,{x1:n.x,x2:n.x,y1:`0`,y2:n.track.height},null,8,Hs)],8,Vs))),128))]))}}),[[`__scopeId`,`data-v-54a5a37d`]]);function Ws(e,t,n=0){let r=[[0,e.width]];for(let n of t){if(n===e||Math.abs(e.top+e.height-n.top)>1e-6)continue;let t=Math.max(0,n.left-e.left),i=Math.min(e.width,n.left+n.width-e.left);i<=t||(r=r.flatMap(([e,n])=>{if(i<=e||t>=n)return[[e,n]];let r=[];return e<t&&r.push([e,t]),n>i&&r.push([i,n]),r}))}if(r.length===1&&r[0][0]===0&&r[0][1]===e.width)return;n=Number.isFinite(n)?Math.max(0,n):0;let i=Math.max(n,e.width-n),a=Math.max(n,e.height-n),o=r.map(([e,t])=>`M${Math.max(n,e)},${a}H${Math.min(i,t)}`).join(``);return`M${n},${a}V${n}H${i}V${a}${o}`}var Gs=[`data-display-mode`,`data-interaction-mode`,`data-presentation-mode`,`data-overlay-mode`,`data-chart-left-margin`,`data-plot-margin-top`,`data-plot-margin-bottom`,`data-title-area-height`],Ks=[`role`,`aria-level`,`aria-hidden`],qs=[`data-title-scale`,`data-title-wrapped`],Js=[`width`,`height`,`aria-label`],Ys=[`id`],Xs=[`width`,`height`],Zs=[`transform`],Qs={key:0,class:`waveform-chart__grid-slots`,"aria-hidden":`true`},$s=[`transform`],ec=[`width`,`height`],tc=[`width`,`height`],nc=[`x`,`y`,`width`,`height`],rc={key:4,class:`waveform-chart__legend-layer`},ic=[`data-legend-track-index`,`data-legend-track-id`,`transform`],ac=[`x`,`y`],oc=[`x`,`y`],sc=(0,e.defineComponent)({__name:`WaveformChartView`,props:{controller:{}},setup(t){let r=t,i=(0,e.computed)(()=>{let e=r.controller.frameStyle?.borderWidth;return r.controller.isEdgeCompact?(typeof e==`number`&&Number.isFinite(e)&&e>=0?e:1)/2:0}),{displayMode:a,activeInteractionMode:o,isCleanView:s,isEdgeCompact:c,paginationVisible:l,isPresentationMode:u,selection:d,containerStyle:f,overlayMode:p,unitDisplayMode:m,showLegendUnits:h,hideYAxisTitles:g,resolvedChartLeftMargin:_,titleAreaHeight:v,resolvedPlotMargin:y,pointerInsideChart:b,handleNativeContextMenu:x,titleAreaReserved:S,titleAreaStyle:C,titleVisible:w,titleMeasureStyle:T,resolvedTitleText:E,titleVisualStyle:D,titleTextStyle:O,titleLayout:k,chartWidth:A,drawingHeight:j,hasWaveformData:M,requestViewportReset:N,trackLayouts:P,clipPathId:F,chartTopMargin:I,gridCells:L,hasVisibleWaveformData:R,zoomable:z,isZoomMode:B,innerWidth:V,innerHeight:ee,handleSharedPointerMove:H,beginSharedViewportDrag:U,finishViewportDrag:te,cancelViewportDrag:ne,handlePointerLeave:W,handleAnnotationClick:G,resolveFrameNumber:re,frameStyle:ie,axes:K,resolvedZeroLine:ae,timeUnit:oe,yLabel:se,handleIndependentPointerMove:ce,beginViewportDrag:le,hoverState:ue,showTooltip:de,selectionBox:fe,renderedAnnotations:pe,annotationsVisible:me,handleExistingAnnotationContextMenu:he,beginAnnotationDrag:q,handleAnnotationMove:ge,endAnnotationDrag:_e,resolveLegendPosition:ve,resolveLegendOrientation:ye,legendBackgroundColor:be,legendInteractive:xe,resolvedHiddenSeriesIds:Se,toggleSeriesVisibility:Ce,resolvedXLabel:J,xAxisTitleY:we,plotCenterX:Te,hasChartArea:Ee,gridOptions:De,currentPage:Oe,getPageSize:ke,pageableTracks:Ae,goToPage:je,annotationInteraction:Me,editorDraft:Ne,contextMenu:Pe,editorSeries:Fe,editorSeriesOptions:Ie,timeError:Le,confirmAnnotation:Y,cancelAnnotation:Re,changeDraftSeries:ze,changeDraftTime:Be,editContextAnnotation:Ve,deleteContextAnnotation:He,chartHeight:Ue,setContainer:We,setSvgElement:Ge,setTitleMeasureElement:Ke,setSharedOverlayElement:qe}=(0,e.toRefs)(r.controller);function Je(){b.value=!1,W.value()}return(r,X)=>((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{ref:(0,e.unref)(We),class:(0,e.normalizeClass)([`waveform-chart`,[`waveform-chart--${(0,e.unref)(a)}`,`waveform-chart--interaction-${(0,e.unref)(o)}`,{"waveform-chart--clean":(0,e.unref)(s),"waveform-chart--edge-compact":(0,e.unref)(c),"waveform-chart--presentation":(0,e.unref)(u),"waveform-chart--panning":(0,e.unref)(d)?.kind===`pan`}]]),style:(0,e.normalizeStyle)((0,e.unref)(f)),"data-display-mode":(0,e.unref)(a),"data-interaction-mode":(0,e.unref)(o),"data-presentation-mode":(0,e.unref)(u),"data-overlay-mode":(0,e.unref)(p),"data-chart-left-margin":(0,e.unref)(_),"data-plot-margin-top":(0,e.unref)(y).top,"data-plot-margin-bottom":(0,e.unref)(y).bottom,"data-title-area-height":(0,e.unref)(v),onPointerenter:X[7]||=e=>b.value=!0,onPointerleave:Je,onContextmenuCapture:X[8]||=(...t)=>(0,e.unref)(x)&&(0,e.unref)(x)(...t)},[(0,e.unref)(S)?((0,e.openBlock)(),(0,e.createElementBlock)(`div`,{key:0,class:`waveform-chart__title-area`,style:(0,e.normalizeStyle)((0,e.unref)(C)),role:(0,e.unref)(w)?`heading`:void 0,"aria-level":(0,e.unref)(w)?2:void 0,"aria-hidden":(0,e.unref)(s)||void 0},[(0,e.createElementVNode)(`span`,{ref:(0,e.unref)(Ke),class:`waveform-chart__title-measure`,style:(0,e.normalizeStyle)((0,e.unref)(T)),"aria-hidden":`true`},(0,e.toDisplayString)((0,e.unref)(E)),5),(0,e.unref)(w)?((0,e.openBlock)(),(0,e.createElementBlock)(`span`,{key:0,class:`waveform-chart__title-visual`,style:(0,e.normalizeStyle)((0,e.unref)(D))},[(0,e.createElementVNode)(`span`,{class:`waveform-chart__title-text`,style:(0,e.normalizeStyle)((0,e.unref)(O)),"data-title-scale":(0,e.unref)(k).scale,"data-title-wrapped":(0,e.unref)(k).wrapped||void 0},(0,e.toDisplayString)((0,e.unref)(E)),13,qs)],4)):(0,e.createCommentVNode)(``,!0)],12,Ks)):(0,e.createCommentVNode)(``,!0),((0,e.openBlock)(),(0,e.createElementBlock)(`svg`,{ref:(0,e.unref)(Ge),class:`waveform-chart__svg`,width:(0,e.unref)(A),height:(0,e.unref)(j),role:`img`,"aria-label":(0,e.unref)(M)?`波形折线图`:`暂无波形数据`,onDblclick:X[6]||=(...t)=>(0,e.unref)(N)&&(0,e.unref)(N)(...t)},[(0,e.createElementVNode)(`defs`,null,[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)((0,e.unref)(P),t=>((0,e.openBlock)(),(0,e.createElementBlock)(`clipPath`,{id:`${(0,e.unref)(F)}-${t.index}`,key:`${(0,e.unref)(F)}-${t.index}`,clipPathUnits:`userSpaceOnUse`},[(0,e.createElementVNode)(`rect`,{width:t.width,height:t.height},null,8,Xs)],8,Ys))),128))]),(0,e.createElementVNode)(`g`,{transform:`translate(${(0,e.unref)(_)}, ${(0,e.unref)(I)})`},[(0,e.unref)(a)!==`compact`&&!(0,e.unref)(M)&&!(0,e.unref)(s)?((0,e.openBlock)(),(0,e.createElementBlock)(`g`,Qs,[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)((0,e.unref)(L),t=>((0,e.openBlock)(),(0,e.createElementBlock)(`g`,{key:`grid-slot-${t.slotIndex}`,transform:`translate(${t.left}, ${t.top})`},[t.series?(0,e.createCommentVNode)(``,!0):((0,e.openBlock)(),(0,e.createElementBlock)(`rect`,{key:0,class:`waveform-chart__grid-slot-placeholder`,width:t.width,height:t.cellHeight},null,8,ec))],8,$s))),128))])):(0,e.createCommentVNode)(``,!0),(0,e.unref)(a)!==`independent`&&(0,e.unref)(P).length&&(0,e.unref)(R)?((0,e.openBlock)(),(0,e.createElementBlock)(`rect`,{key:1,ref:(0,e.unref)(qe),class:(0,e.normalizeClass)([`waveform-chart__overlay waveform-chart__overlay--shared`,{"is-zoomable":!(0,e.unref)(u)&&(0,e.unref)(z)&&(0,e.unref)(B),"is-annotating":!(0,e.unref)(u)&&(0,e.unref)(o)===`annotation`}]),width:(0,e.unref)(V),height:(0,e.unref)(ee),onPointermove:X[0]||=(...t)=>(0,e.unref)(H)&&(0,e.unref)(H)(...t),onPointerdown:X[1]||=(...t)=>(0,e.unref)(U)&&(0,e.unref)(U)(...t),onPointerup:X[2]||=(...t)=>(0,e.unref)(te)&&(0,e.unref)(te)(...t),onPointercancel:X[3]||=(...t)=>(0,e.unref)(ne)&&(0,e.unref)(ne)(...t),onPointerleave:X[4]||=(...t)=>(0,e.unref)(W)&&(0,e.unref)(W)(...t),onClick:X[5]||=(...t)=>(0,e.unref)(G)&&(0,e.unref)(G)(...t)},null,42,tc)):(0,e.createCommentVNode)(``,!0),((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)((0,e.unref)(P),t=>((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(js),{key:`${t.index}-${t.id}`,track:t,"frame-path":(0,e.unref)(a)===`compact`?(0,e.unref)(Ws)(t,(0,e.unref)(P),i.value):void 0,"clip-path-id":(0,e.unref)(F),"inner-width":(0,e.unref)(V),zoomable:(0,e.unref)(z),interactive:!(0,e.unref)(u),"display-mode":(0,e.unref)(a),"interaction-mode":(0,e.unref)(o),"frame-number":(0,e.unref)(re)(t.id,((0,e.unref)(Oe)-1)*(0,e.unref)(ke)((0,e.unref)(De))+t.index),"frame-style":(0,e.unref)(ie),axes:(0,e.unref)(K),"show-axis-units":(0,e.unref)(m)===`axis`,"show-label-units":(0,e.unref)(m)===`channel-label-or-legend`||(0,e.unref)(m)===`channel-label`,"hide-y-axis-titles":(0,e.unref)(g),"contain-frame-stroke":(0,e.unref)(c),"clean-view":(0,e.unref)(s),"zero-line":(0,e.unref)(ae),"time-unit":(0,e.unref)(oe),"y-label":(0,e.unref)(se),onPointerMove:n=>(0,e.unref)(ce)(n,t.index),onPointerDown:n=>(0,e.unref)(le)(n,t.index,!0),onPointerUp:(0,e.unref)(te),onPointerCancel:(0,e.unref)(ne),onPointerLeave:(0,e.unref)(W),onClick:n=>(0,e.unref)(G)(n,t.index)},null,8,[`track`,`frame-path`,`clip-path-id`,`inner-width`,`zoomable`,`interactive`,`display-mode`,`interaction-mode`,`frame-number`,`frame-style`,`axes`,`show-axis-units`,`show-label-units`,`hide-y-axis-titles`,`contain-frame-stroke`,`clean-view`,`zero-line`,`time-unit`,`y-label`,`onPointerMove`,`onPointerDown`,`onPointerUp`,`onPointerCancel`,`onPointerLeave`,`onClick`]))),128)),(0,e.createVNode)((0,e.unref)(Us),{state:(0,e.unref)(ue),tracks:(0,e.unref)(P),"clip-path-id":(0,e.unref)(F),visible:(0,e.unref)(de)&&!(0,e.unref)(u)},null,8,[`state`,`tracks`,`clip-path-id`,`visible`]),(0,e.unref)(fe)&&(0,e.unref)(d)?.kind===`box`?((0,e.openBlock)(),(0,e.createElementBlock)(`rect`,{key:2,class:`waveform-chart__zoom-selection`,x:(0,e.unref)(fe).x,y:(0,e.unref)(fe).y,width:(0,e.unref)(fe).width,height:(0,e.unref)(fe).height,"aria-hidden":`true`},null,8,nc)):(0,e.createCommentVNode)(``,!0),(0,e.unref)(s)?(0,e.createCommentVNode)(``,!0):((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(cr),{key:3,"cancel-key":(0,e.unref)(o),"data-version":t.controller.data,annotations:(0,e.unref)(pe),visible:(0,e.unref)(me),interactive:!(0,e.unref)(u)&&(0,e.unref)(o)!==`none`,onContextmenu:(0,e.unref)(he),onDragStart:(0,e.unref)(q),onMove:(0,e.unref)(ge),onDragEnd:(0,e.unref)(_e)},null,8,[`cancel-key`,`data-version`,`annotations`,`visible`,`interactive`,`onContextmenu`,`onDragStart`,`onMove`,`onDragEnd`])),(0,e.unref)(s)?(0,e.createCommentVNode)(``,!0):((0,e.openBlock)(),(0,e.createElementBlock)(`g`,rc,[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)((0,e.unref)(P),t=>((0,e.openBlock)(),(0,e.createElementBlock)(`g`,{key:`legend-${t.index}-${t.id}`,class:`waveform-chart__legend-track`,"data-legend-track-index":t.index,"data-legend-track-id":t.id,transform:`translate(${t.left}, ${t.top})`},[!t.isEmpty&&(t.legendSeries.length>1||(0,e.unref)(g))?((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(zs),{key:0,series:t.legendSeries,"show-units":(0,e.unref)(h),position:(0,e.unref)(ve)(t.id),orientation:(0,e.unref)(ye)((0,e.unref)(ve)(t.id)),"background-color":(0,e.unref)(be),interactive:(0,e.unref)(xe),"hidden-series-ids":(0,e.unref)(Se),width:t.width??(0,e.unref)(V),height:t.height,onToggle:(0,e.unref)(Ce)},null,8,[`series`,`show-units`,`position`,`orientation`,`background-color`,`interactive`,`hidden-series-ids`,`width`,`height`,`onToggle`])):(0,e.createCommentVNode)(``,!0)],8,ic))),128))]))],8,Zs),(0,e.unref)(J)&&!(0,e.unref)(s)?((0,e.openBlock)(),(0,e.createElementBlock)(`text`,{key:0,class:`waveform-chart__label waveform-chart__x-label`,style:(0,e.normalizeStyle)((0,e.unref)(c)?{fontSize:(0,e.unref)(O).fontSize}:void 0),x:(0,e.unref)(Te),y:(0,e.unref)(we),"text-anchor":`middle`},(0,e.toDisplayString)((0,e.unref)(J)),13,ac)):(0,e.createCommentVNode)(``,!0),(0,e.unref)(Ee)&&!(0,e.unref)(M)?((0,e.openBlock)(),(0,e.createElementBlock)(`text`,{key:1,class:`waveform-chart__empty`,x:(0,e.unref)(A)/2,y:(0,e.unref)(j)/2,"text-anchor":`middle`},` 暂无有效波形数据 `,8,oc)):(0,e.createCommentVNode)(``,!0)],40,Js)),(0,e.createVNode)(so,{controller:t.controller},null,8,[`controller`]),(0,e.unref)(l)?((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(n.Pagination),{key:1,class:`waveform-chart__pagination`,"aria-label":`波形分页`,current:(0,e.unref)(Oe),"page-size":(0,e.unref)(ke)((0,e.unref)(De)),total:(0,e.unref)(Ae).length,"show-size-changer":!1,"show-quick-jumper":!1,onChange:(0,e.unref)(je)},null,8,[`current`,`page-size`,`total`,`onChange`])):(0,e.createCommentVNode)(``,!0),(0,e.unref)(Ne)&&!(0,e.unref)(s)&&!(0,e.unref)(u)?((0,e.openBlock)(),(0,e.createBlock)(Do,{key:2,annotation:(0,e.unref)(Ne).annotation,mode:(0,e.unref)(Ne).mode,series:(0,e.unref)(Fe),"series-options":(0,e.unref)(Ie),"time-unit":(0,e.unref)(oe),"time-error":(0,e.unref)(Le),onConfirm:(0,e.unref)(Y),onCancel:(0,e.unref)(Re),onSeriesChange:(0,e.unref)(ze),onTimeChange:(0,e.unref)(Be)},null,8,[`annotation`,`mode`,`series`,`series-options`,`time-unit`,`time-error`,`onConfirm`,`onCancel`,`onSeriesChange`,`onTimeChange`])):(0,e.createCommentVNode)(``,!0),!(0,e.unref)(s)&&!(0,e.unref)(u)?((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(lr),{key:3,visible:(0,e.unref)(Pe)!==null,x:(0,e.unref)(Pe)?.x||0,y:(0,e.unref)(Pe)?.y||0,"can-edit":!!(0,e.unref)(Pe)?.annotationId,onEdit:(0,e.unref)(Ve),onDelete:(0,e.unref)(He),onClose:(0,e.unref)(Me).closeContextMenu},null,8,[`visible`,`x`,`y`,`can-edit`,`onEdit`,`onDelete`,`onClose`])):(0,e.createCommentVNode)(``,!0),(0,e.createVNode)((0,e.unref)(Io),{state:(0,e.unref)(ue),visible:(0,e.unref)(de)&&!(0,e.unref)(u),"time-unit":(0,e.unref)(oe),"container-width":(0,e.unref)(A),"container-height":(0,e.unref)(Ue)},null,8,[`state`,`visible`,`time-unit`,`container-width`,`container-height`])],46,Gs))}}),cc=(0,e.defineComponent)({__name:`WaveformChart`,props:{toolbar:{type:[Boolean,Object]},data:{},displayMode:{default:`independent`},overlayMode:{default:`single-axis`},unitDisplayMode:{default:`axis`},layoutPreset:{default:`default`},width:{},height:{},xLabel:{},yLabel:{default:`幅值`},lineColor:{default:`#0960bd`},showTooltip:{type:Boolean,default:!0},zoomable:{type:Boolean,default:!0},integerZoom:{type:Boolean,default:!1},pannable:{type:Boolean,default:!1},panXDomain:{},minZoomSpan:{},minVisiblePoints:{default:0},maxZoomScale:{},initialXDomain:{},initialXDomains:{},xDomainStrategy:{default:()=>({type:`integer-ms`})},yDomain:{},yDomains:{},timeUnit:{default:`ms`},frameNumber:{default:void 0},frameNumbers:{},frameStyle:{},axes:{},annotations:{default:()=>[]},annotationsVisible:{type:Boolean,default:!0},interactionMode:{default:void 0},grid:{default:()=>({rowCount:2,columnCount:1,showPagination:!0})},rendering:{default:()=>({})},plotMargin:{default:()=>({})},title:{},legend:{default:()=>({position:`top-right`,orientation:`auto`})},hiddenSeriesIds:{},defaultHiddenSeriesIds:{default:()=>[]},cleanView:{type:Boolean,default:!1},presentationMode:{type:Boolean,default:!1},zeroLine:{default:()=>({visible:!0})}},emits:[`update:interactionMode`,`interaction-mode-change`,`control-state-change`,`point-hover`,`zoom-intent`,`zoom-change`,`zoom-end`,`pan-end`,`zoom-reset`,`update:annotations`,`update:hidden-series-ids`,`series-visibility-change`,`annotation-create`,`annotation-update`,`annotation-delete`,`page-change`,`sampling-complete`,`sampling-backend-change`,`sampling-error`],setup(t,{expose:n,emit:r}){let i=Wa(t,r);return n({exportImage:i.exportImage,zoomIn:i.zoomIn,zoomOut:i.zoomOut,fitToData:i.fitToData,setInteractionMode:i.setInteractionMode,getControlState:i.getControlState,resetViewport:i.resetViewport,setViewportDomain:i.setViewportDomain}),(t,n)=>((0,e.openBlock)(),(0,e.createBlock)(sc,{controller:(0,e.unref)(i)},null,8,[`controller`]))}});exports.DEFAULT_WAVEFORM_RENDERING_OPTIONS=Y,exports.WaveformChart=cc,exports.buildMinorTicks=u,exports.calculateWasmRange=wi,exports.clamp=j,exports.displayTime=w,exports.findWasmVisibleRange=Ti,exports.formatAxisTime=D,exports.formatEndpointTime=E,exports.formatTooltipTime=O,exports.initializeWasmSampling=Si,exports.normalizeWaveformData=Ae,exports.normalizeWaveformSeries=Ne,exports.paddedDomain=l,exports.parseWaveformAnnotations=br,exports.resolveTrackGeometry=A,exports.resolveWaveformRenderingOptions=qe,exports.sampleWaveformWasm=Ci,exports.selectRenderablePoints=et,exports.serializeWaveformAnnotations=yr;
|
|
1
|
+
Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});let e=require("vue"),t=require("d3"),A=require("ant-design-vue");function n(e,t){e.value=t instanceof Element?t:void 0}function i(e){return Object.fromEntries(["annotations","annotationsVisible","title","axes","frameStyle","frameNumber","frameNumbers","legend","cleanView","rendering","displayMode","overlayMode","initialXDomain","initialXDomains","yDomain","yDomains","grid","plotMargin","xLabel","yLabel","timeUnit","zeroLine","layoutPreset","unitDisplayMode"].map(t=>[t,e[t]]))}var a={linear:t.easeLinear,quadIn:t.easeQuadIn,quadOut:t.easeQuadOut,quadInOut:t.easeQuadInOut,cubicIn:t.easeCubicIn,cubicOut:t.easeCubicOut,cubicInOut:t.easeCubicInOut,quartIn:t.easePolyIn.exponent(4),quartOut:t.easePolyOut.exponent(4),quartInOut:t.easePolyInOut.exponent(4),quintIn:t.easePolyIn.exponent(5),quintOut:t.easePolyOut.exponent(5),quintInOut:t.easePolyInOut.exponent(5),sineIn:t.easeSinIn,sineOut:t.easeSinOut,sineInOut:t.easeSinInOut,expoIn:t.easeExpIn,expoOut:t.easeExpOut,expoInOut:t.easeExpInOut,circIn:t.easeCircleIn,circOut:t.easeCircleOut,circInOut:t.easeCircleInOut,backIn:t.easeBackIn,backOut:t.easeBackOut,backInOut:t.easeBackInOut,elasticIn:t.easeElasticIn,elasticOut:t.easeElasticOut,elasticInOut:t.easeElasticInOut,bounceIn:t.easeBounceIn,bounceOut:t.easeBounceOut,bounceInOut:t.easeBounceInOut};function o(e){if("function"==typeof e)return e;if("string"!=typeof e||!Object.hasOwn(a,e))throw new TypeError(`Unknown animation easing: ${String(e)}`);return a[e]}function r(e,t){return s(e,e,t)}function s(e,t,A){return"number"==typeof e?A(e,t):e.map((e,n)=>"number"==typeof e?A(e,t[n]):e.map((e,i)=>A(e,t[n][i])))}var l=(e,t)=>s(e,t,(e,t)=>e+t),g=(e,t)=>s(e,t,(e,t)=>e-t),c=(e,t,A)=>s(e,t,(e,t)=>0===A?e:1===A?t:(1-A)*e+A*t);function d(e,t){return"number"==typeof e||"number"==typeof t?e===t:e.length===t.length&&e.every((e,A)=>d(e,t[A]))}function I(e,t,A){return"reverse"===A||"alternate"===A&&t%2==1||"alternate-reverse"===A&&t%2==0?1-e:e}function u(e,t){if(null===e||"object"!=typeof e||Array.isArray(e))throw new TypeError(`${t} must be an object`)}function m(e,t){if("number"!=typeof e)throw new TypeError(`${t} must be a number`);if(!Number.isFinite(e)||e<0)throw new RangeError(`${t} must be finite and nonnegative`)}function h(e){if(!0===e)return 1/0;if(!1===e)return 1;if("number"!=typeof e)throw new TypeError("loop must be a number or boolean");if(!Number.isFinite(e)||!Number.isInteger(e)||e<=0)throw new RangeError("loop must be a finite positive integer");return e}function C(e,t="value"){const A=e=>{if("number"!=typeof e)throw new TypeError(`${t} must contain numbers`);if(!Number.isFinite(e))throw new RangeError(`${t} must contain finite numbers`);return e};if("number"==typeof e)return A(e);if(!Array.isArray(e))throw new TypeError(`${t} must be numeric`);return e.length>0&&Array.isArray(e[0])?Array.from(e,e=>{if(!Array.isArray(e))throw new TypeError(`${t} has mixed dimensions`);return Array.from(e,A)}):Array.from(e,A)}function Q(e,t){return"number"==typeof e||"number"==typeof t?"number"==typeof e&&"number"==typeof t:e.length===t.length&&e.every((e,A)=>Q(e,t[A]))}function B(e,t){u(e,"config");const A=void 0===e.duration?1e3:e.duration,n=void 0===e.delay?0:e.delay;m(A,"duration"),m(n,"delay");const i=h(void 0===e.loop?1:e.loop);if(0===A&&i===1/0)throw new RangeError("Zero duration cannot loop infinitely");const a=void 0===e.direction?"normal":e.direction;if(!["normal","reverse","alternate","alternate-reverse"].includes(a))throw new TypeError("Unknown animation direction");for(const o of["force","additive"])if(void 0!==e[o]&&"boolean"!=typeof e[o])throw new TypeError(`${o} must be boolean`);for(const o of["initialize","during","done","aborted","onError"])if(void 0!==e[o]&&"function"!=typeof e[o])throw new TypeError(`${o} must be a function`);const r=o(void 0===e.easing?"linear":e.easing),s=void 0!==e.additive&&e.additive;if(s&&1!==i)throw new RangeError("Additive tracks cannot loop");if(void 0!==e.tracks&&!Array.isArray(e.tracks))throw new TypeError("tracks must be an array");const l=new Map,g=[];for(const o of e.tracks??[]){if(u(o,"track"),u(o.target,"track.target"),"string"!=typeof o.property)throw new TypeError("property must be a string");const e=l.get(o.target)??new Set;if(e.has(o.property))throw new TypeError("Duplicate target/property");e.add(o.property),l.set(o.target,e);const A=C(o.target[o.property],"target value"),n=C(o.to,"to"),i=void 0===o.from?void 0:C(o.from,"from");if(!Q(A,n)||void 0!==i&&!Q(i,n))throw new TypeError("Track values must have identical shapes");const a=s?t?.(o):void 0;if(a){if(1!==h(a.baseLoop))throw new RangeError("Additive base cannot loop");const e=C(a.additiveFrom,"additiveFrom");if(!Q(e,n)||void 0!==i&&!d(i,e))throw new TypeError("Additive from must match the derived start")}else if(s&&void 0!==i&&!d(i,A))throw new TypeError("Additive from must match the fixed base");g.push({target:o.target,property:o.property,from:i,to:n})}return{...e,tracks:g,duration:A,delay:n,loop:i,direction:a,easing:r,additive:s,force:void 0!==e.force&&e.force}}var E=class{#e=new Map;#t=new Map;#A(e){return this.#e.get(e.target)?.get(e.property)}#n(e){const{direction:t,loop:A}=e.task.config;return 1===I(1,A===1/0?0:A-1,t)?e.to:e.from}context=e=>{const t=this.#A(e);if(!t)return;let A=l(t.ordinary?this.#n(t.ordinary):t.base,t.offset);for(const n of t.additive)A=l(A,g(this.#n(n),n.from));return{additiveFrom:A,baseLoop:t.ordinary?.task.config.loop??1}};conflicts(e){const t=new Set;if(!e.additive)for(const A of e.tracks){const e=this.#A(A);e?.ordinary&&t.add(e.ordinary.task),e?.additive.forEach(e=>t.add(e.task))}return t}capture(e){return e.tracks.map(t=>({...t,from:C(e.additive?this.context(t)?.additiveFrom??t.target[t.property]:this.#A(t)?t.target[t.property]:t.from??t.target[t.property])}))}bind(e){const t=[];for(const A of e.config.tracks){let n=this.#A(A);if(!n){const e=C(A.target[A.property]);n={target:A.target,property:A.property,base:e,offset:r(e,()=>0),additive:new Set};const t=this.#e.get(A.target)??new Map;t.set(A.property,n),this.#e.set(A.target,t)}const i=C(A.from),a={task:e,from:i,to:A.to,value:e.config.additive?r(i,()=>0):i,committed:e.config.additive?r(i,()=>0):n.base};e.config.additive?n.additive.add(a):n.ordinary=a,t.push([n,a])}this.#t.set(e,t)}setProgress(e,t){for(const[,A]of this.#t.get(e)??[]){const n=c(A.from,A.to,t);A.value=C(e.config.additive?g(n,A.from):n)}}flush(){for(const t of this.#e.values())for(const A of t.values())try{let e=l(A.ordinary?.value??A.base,A.offset);for(const t of A.additive)e=l(e,t.value);A.target[A.property]=C(e),A.ordinary&&(A.ordinary.committed=A.ordinary.value);for(const t of A.additive)t.committed=t.value}catch(e){const t=new Set([...A.ordinary?[A.ordinary.task]:[],...[...A.additive].map(e=>e.task)]);for(const A of t)A.fail(e)}}detach(e){for(const[t,A]of this.#t.get(e)??[])t.ordinary===A&&(t.base=A.committed,t.ordinary=void 0),t.additive.delete(A)&&(t.offset=l(t.offset,A.committed)),t.ordinary||t.additive.size||(this.#e.get(t.target)?.delete(t.property),this.#e.get(t.target)?.size||this.#e.delete(t.target));this.#t.delete(e)}};function p(e){return Object.assign(new Error(e),{code:e})}function f(e,t){try{e.onError?e.onError(t):console.error(t)}catch(A){try{console.error(A)}catch{}}}function y(e,t){try{t?.()}catch(A){f(e,A)}}var v=class{config;groups;state="PENDING";#i=!1;#a=0;#o=0;#r=0;#s=new Set;#l="PENDING";#g=0;#c;constructor(e,t){this.config=e,this.groups=t}get ended(){return"FINISHED"===this.state||"ABORTED"===this.state}get unchanged(){return!this.config.force&&this.config.tracks.every(e=>d(e.from,e.to))}setTermination(e){this.#c=e}start(e,t=!1){if(this.#i||this.ended)throw new Error("Animation can only start once");if(this.#i=!0,this.#a=e,this.#s.size&&(this.#o=e),t||0===this.config.duration||this.unchanged)this.finish();else try{this.config.initialize?.()}catch(A){this.fail(A)}}deadline(e){return this.ended||this.#s.size?1/0:Math.max(e,this.#a+this.config.delay+this.#r)}prepare(e){if(!this.#i||this.ended||this.#s.size)return;const t=e-this.#a-this.config.delay-this.#r;if(t<0)return;this.state="RUNNING";const{duration:A,loop:n,direction:i}=this.config,a=t>=A*n;this.#g=a?n-1:Math.floor(t/A);const o=a?1:t%A/A,r=I(o,this.#g,i),s={rawProgress:o,directedProgress:r,iteration:this.#g,terminal:a};try{const e=a?r:this.config.easing(r);if(!Number.isFinite(e))throw new RangeError("Easing returned a nonfinite value");return this.groups.setProgress(this,e),{progress:e,frame:s}}catch(l){this.fail(l)}}deliver(e,t){if(!this.ended){try{this.config.during?.(e,t)}catch(A){return void this.fail(A)}t.terminal&&!this.ended&&this.#d("FINISHED")}}tick(e){const t=this.prepare(e);return t&&(this.groups.flush(),this.deliver(t.progress,t.frame)),this.ended}pause(e,t="manual"){this.ended||this.#s.has(t)||(this.#s.size||(this.#l=this.state,this.#o=e,this.state="PAUSED"),this.#s.add(t))}resume(e,t="manual"){this.ended||!this.#s.delete(t)||this.#s.size||(this.#r+=e-this.#o,this.state=this.#l)}finish(e){if(this.ended)return;const{loop:t,direction:A}=this.config;if(t===1/0&&void 0!==e&&this.#i){const t=Math.max(0,(this.#s.size?this.#o:e)-this.#a-this.config.delay-this.#r);this.#g=Math.floor(t/this.config.duration)}const n=t===1/0?this.#g:t-1,i=I(1,n,A);try{this.groups.setProgress(this,i),this.groups.flush()}catch(a){return void this.fail(a)}this.deliver(i,{rawProgress:1,directedProgress:i,iteration:n,terminal:!0})}abort(){this.ended||this.#d("ABORTED")}settle(e,t=!0){if(this.ended)return()=>{};this.state=e,this.groups.detach(this),this.#c?.();const A=()=>y(this.config,"FINISHED"===e?this.config.done:this.config.aborted);return t&&A(),A}#d(e){this.settle(e)}fail(e){this.abort(),f(this.config,e)}};function w(e,t,A){let n={read:t,command:A},i="PENDING";const a=e=>n?.command(e);return{handle:{id:e,get state(){return n?.read()??i},pause:()=>a("pause"),resume:()=>a("resume"),abort:()=>a("abort"),finish:()=>a("finish")},release:()=>{n&&(i=n.read(),n=void 0)}}}var k=class{#I;#u;#m=new Map;#e=new E;#s=new Set;#h;#C;#Q=!1;#B=0;#E=!1;#p=!1;constructor(e){e&&function(e){u(e,"scheduler");for(const A of["now","setTimer","clearTimer"])if("function"!=typeof e[A])throw new TypeError(`${A} must be a function`);const t=void 0!==e.requestFrame;if(t!==(void 0!==e.cancelFrame)||t&&("function"!=typeof e.requestFrame||"function"!=typeof e.cancelFrame))throw new TypeError("requestFrame and cancelFrame must be supplied together as functions")}(e),this.#I=e,this.#u=!!e}#f(){return this.#I??=function(){const e="function"==typeof globalThis.requestAnimationFrame&&"function"==typeof globalThis.cancelAnimationFrame;return{now:()=>globalThis.performance?.now()??Date.now(),requestFrame:e?e=>globalThis.requestAnimationFrame(e):void 0,cancelFrame:e?e=>globalThis.cancelAnimationFrame(e):void 0,setTimer:(e,t)=>setTimeout(e,t),clearTimer:e=>clearTimeout(e)}}()}validate(e){B(e,this.#e.context)}animate(e,t){return this.animatePaused(e,t,[])}animatePaused(e,t,A){if(this.#E)throw p("animation-terminating");if(void 0!==t&&"string"!=typeof t)throw new TypeError("Animation id must be string");const n=B(e,this.#e.context),i=this.#e.conflicts(n);void 0!==t&&this.#m.has(t)&&i.add(this.#m.get(t)),n.tracks=this.#e.capture(n);const a=new v(n,this.#e);let o=t;if(void 0===o)do{o="animation-"+ ++this.#B}while(this.#m.has(o));const r=[...i].map(e=>e.settle("ABORTED",!1));this.#m.set(o,a),this.#e.bind(a);const s=this.#f(),{handle:l,release:g}=w(o,()=>a.state,e=>{a[e](s.now()),this.#y()});a.setTermination(()=>{this.#m.get(o)===a&&this.#m.delete(o),g(),this.#y()});for(const c of new Set([...this.#s,...A]))a.pause(s.now(),c);return r.forEach(e=>e()),a.ended||a.start(s.now(),!s.requestFrame),this.#y(),l}remove(e){this.#m.get(e)?.abort(),this.#y()}pause(e){this.#m.get(e)?.pause(this.#f().now()),this.#y()}resume(e){this.#m.get(e)?.resume(this.#f().now()),this.#y()}pauseAll(){this.setPauseReason("manual-all",!0)}resumeAll(){this.setPauseReason("manual-all",!1)}setPauseReason(e,t,A){A||(t?this.#s.add(e):this.#s.delete(e));const n=A?A.map(e=>this.#m.get(e)).filter(e=>!!e):[...this.#m.values()],i=this.#f().now();for(const a of n)t?a.pause(i,e):a.resume(i,e);this.#y()}finishAll(){this.#v("finish")}clear(){this.#v("abort")}destroy(){this.#E||(this.#v("abort"),this.#s.clear(),this.#e=new E,this.#u||(this.#I=void 0))}getAnimationCount(){return this.#m.size}#v(e){if(!this.#E){this.#E=!0;try{for(const t of[...this.#m.values()])"finish"===e?t.finish(this.#f().now()):t.abort()}finally{this.#E=!1,this.#y()}}}#w(){void 0!==this.#h&&this.#I?.cancelFrame?.(this.#h),this.#Q&&this.#I?.clearTimer(this.#C),this.#h=void 0,this.#C=void 0,this.#Q=!1}#y(){if(this.#p||this.#E)return;if(this.#w(),!this.#m.size)return;const e=this.#f();if(!e.requestFrame)return;const t=e.now(),A=Math.min(...[...this.#m.values()].map(e=>e.deadline(t)));A!==1/0&&(A>t?(this.#Q=!0,this.#C=e.setTimer(()=>{this.#Q=!1,this.#y()},A-t)):this.#h=e.requestFrame(()=>this.#k()))}#k(){this.#h=void 0,this.#p=!0;const e=this.#f().now();try{const t=[...this.#m].map(([t,A])=>({id:t,task:A,next:A.prepare(e)}));this.#e.flush();for(const{id:e,task:A,next:n}of t)n&&this.#m.get(e)===A&&A.deliver(n.progress,n.frame)}finally{this.#p=!1,this.#y()}}},x=new k,b=0,M={"fade-in":"cubicOut",scale:"backOut","slide-in":"cubicOut",bounce:"bounceOut"};function N(e){return"string"==typeof e&&Object.hasOwn(M,e)}var D=e=>Math.max(0,Math.min(1,e));function S(e){if(!e||"function"!=typeof e.read||"function"!=typeof e.write)throw new TypeError("Animation binding requires read and write functions")}function F(e,t){const A={duration:e.duration??300,easing:e.easing??"cubicInOut",done:e.onComplete,aborted:e.onAbort,force:!0,...t};return B(A),A}function G(e){return Array.isArray(e)&&(e.forEach(e=>{Array.isArray(e)&&Object.freeze(e)}),Object.freeze(e)),e}function Y(e){if(!e||"object"!=typeof e||Array.isArray(e))throw new TypeError("Invalid geometry");return Object.freeze(Object.fromEntries(Object.entries(e).map(([e,t])=>[e,G(C(t))])))}function J(e){return 2===e.length&&e.every(Number.isFinite)&&e[0]<e[1]}function R(e,t,A={}){if(S(e),!Number.isFinite(t)||t<0)throw new RangeError("Width must be finite and nonnegative");const n=A.direction??"left-to-right";if(!["left-to-right","right-to-left","center-out"].includes(n))throw new TypeError("Invalid drawing direction");const i=e=>({x:"right-to-left"===n?t*(1-e):"center-out"===n?t*(1-e)/2:0,width:t*e});return F({...A,duration:A.duration??1e3},{delay:A.delay??0,initialize:()=>e.write(i(0)),during:(t,A)=>e.write(i(A.terminal?1:D(t)))})}function T(e,t={}){const A=t.staggerDelay??100;if(!Number.isFinite(A)||A<0)throw new RangeError("Invalid stagger delay");return e.map((e,n)=>R(e.binding,e.width,{...t,delay:(t.delay??0)+n*A}))}function Z(e,t,A={}){const n=e.compatible;if("function"!=typeof t||"boolean"!=typeof n)throw new TypeError("Invalid geometry transition");const i=Y(e.from),a=Y(e.to),o=Object.keys(a);if(n){if(o.length!==Object.keys(i).length||o.some(e=>!Object.hasOwn(i,e)))throw new TypeError("Compatible geometry requires identical channels");if(o.some(e=>!Q(i[e],a[e])))throw new TypeError("Track values must have identical shapes")}return F(A,{duration:n&&o.every(e=>d(i[e],a[e]))?0:A.duration??300,during:(e,A)=>{if(A.terminal)t({kind:"settled",values:a});else if(n)t({kind:"interpolate",progress:e,values:Object.fromEntries(o.map(t=>[t,c(i[t],a[t],e)]))});else{const A=D(e);t({kind:"crossfade",from:i,to:a,fromOpacity:1-A,toOpacity:A})}}})}function U(e,t,A={}){S(e);const n=[...t];if(!J(n))throw new RangeError("Target domain must be finite and strictly increasing");let i;return F(A,{initialize:()=>{if(i=[...e.read()],!J(i))throw new RangeError("Initial domain must be finite and strictly increasing")},during:(t,A)=>{if(A.terminal)return void e.write([...n]);const a=D(t),o=c(i??n,n,a);e.write(J(o)?o:[...n])}})}function L(e,t,A){S(e);const n=t.type??"scale";if(!N(n))throw new TypeError("Unknown annotation effect");const i=t.easing??M[n],a={opacity:A?1:0,scale:A||"scale"!==n&&"bounce"!==n?1:0,offsetY:A||"slide-in"!==n?0:8};let o;return F({...t,easing:i},{initialize:()=>{if(o={...e.read()},!Object.values(o).every(Number.isFinite))throw new RangeError("Invalid annotation state")},during:(t,A)=>{if(A.terminal)return void e.write({...a});const n=o??a,i=e=>(1-t)*n[e]+t*a[e];e.write({opacity:D(i("opacity")),scale:Math.max(0,i("scale")),offsetY:i("offsetY")})}})}function V(e,t={}){return L(e,t,!0)}function O(e,t={}){return L(e,t,!1)}var j=class{options;#x=new Map;#b=function(){const e=++b;return t=>JSON.stringify([e,t.kind,t.id,t.scope])}();#M;#N;#E=!1;#D=!1;#S=new Set;constructor(e){if(this.options=e,!e||"function"!=typeof e.commitFinalState)throw new TypeError("commitFinalState is required");this.#M=e.enabled??!0,this.#N=e.animator??x}#F(){if(this.#E)throw p("animation-terminating");if(this.#D)throw p("animation-disposed")}animate(e,t){if(this.#F(),!e||!["series","annotation","axis","custom"].includes(e.kind)||"string"!=typeof e.id||!["enter","update","leave","domain"].includes(e.scope))throw new TypeError("Invalid animation object key");this.#N instanceof k?this.#N.validate(t):B(t);const A={...t,tracks:t.tracks?.map(e=>({...e,from:void 0===e.from?void 0:C(e.from,"from"),to:C(e.to,"to")}))},n=this.#b(e),i=[...this.#x.values()].filter(t=>{return A=t.key,n=e,!(A.kind!==n.kind||A.id!==n.id||!("annotation"===A.kind&&["enter","leave"].includes(A.scope)&&["enter","leave"].includes(n.scope)||"series"===A.kind&&["enter","update"].includes(A.scope)&&["enter","update"].includes(n.scope)||A.scope===n.scope));var A,n}),a={key:{...e},config:A,id:n,manualPaused:!1},{handle:o,release:r}=w(n,()=>a.state??a.raw?.state??"PENDING",e=>{"pause"===e?(a.manualPaused=!0,a.raw?.pause()):"resume"===e?(a.manualPaused=!1,(this.#N instanceof k||!this.#S.size)&&a.raw?.resume()):"abort"===e?a.raw?a.raw.abort():this.#G(a,"ABORTED"):a.raw?.finish()});a.handle=o,a.release=r,this.#x.set(n,a);for(const g of i){if("series"===e.kind&&"update"===e.scope&&"enter"===g.key.scope)try{g.config.during?.(1,{rawProgress:1,directedProgress:1,iteration:0,terminal:!0})}catch(l){f(g.config,l)}g.handle.abort()}if(a.state)return a.handle;const s={...A,initialize:this.#N instanceof k?A.initialize:()=>{A.initialize?.(),this.#S.size&&this.#N.pause(n)},duration:this.#M?A.duration:0,loop:this.#M?A.loop:1,done:()=>{this.#E||this.#G(a,"FINISHED")},aborted:()=>{this.#E||this.#G(a,"ABORTED")},onError:e=>{f(A,e),this.#E||this.#D||this.finishAll()}};try{a.raw=this.#N instanceof k?this.#N.animatePaused(s,n,[...this.#S].map(e=>this.#Y(e))):this.#N.animate(s,n)}catch(l){throw this.#G(a,"ABORTED"),l}if(this.#N instanceof k)for(const g of this.#S)this.#N.setPauseReason(this.#Y(g),!0,[n]);else this.#S.size&&a.raw.pause();return a.handle}#G(e,t){"FINISHED"!==e.state&&"ABORTED"!==e.state&&(e.state=t,this.#x.get(e.id)===e&&this.#x.delete(e.id),e.release(),y(e.config,"FINISHED"===t?e.config.done:e.config.aborted))}animateSeriesEnter(e,t,A,n){return this.#F(),this.animate({kind:"series",id:e,scope:"enter"},R(t,A,n))}animateMultiSeriesEnter(e,t){return this.#F(),T(e,t).map((t,A)=>this.animate({kind:"series",id:e[A].id,scope:"enter"},t))}animateDataUpdate(e,t,A,n){return this.#F(),this.animate({kind:"series",id:e,scope:"update"},Z(t,A,n))}animateYAxisScale(e,t,A,n){return this.#F(),this.animate({kind:"axis",id:e,scope:"domain"},U(t,A,n))}animateAnnotationAppear(e,t,A){return this.#F(),this.animate({kind:"annotation",id:e,scope:"enter"},V(t,A))}animateAnnotationDisappear(e,t,A){return this.#F(),this.animate({kind:"annotation",id:e,scope:"leave"},O(t,A))}cancel(e){this.#x.get(this.#b(e))?.handle.abort()}cancelAll(){this.#v(!1,!1)}finishAll(){this.#v(!0,!0)}finishWhere(e,t){this.#v(!0,!0,e,t)}#v(e,t,A=()=>!0,n=this.options.commitFinalState){if(this.#E||this.#D)return;this.#E=!0;const i=[...this.#x.values()].filter(e=>A(e.key));try{for(const e of i)this.#x.get(e.id)===e&&this.#x.delete(e.id),e.raw?.abort();try{t&&n()}catch(a){for(const e of i)this.#G(e,"ABORTED"),f(e.config,a);throw a}for(const t of i)this.#G(t,e?"FINISHED":"ABORTED")}finally{this.#E=!1}}pauseAll(){this.setPauseReason("manual-all",!0)}resumeAll(){this.setPauseReason("manual-all",!1)}#Y(e){return`${this.#b({kind:"custom",id:"pause",scope:"domain"})}:${e}`}setPauseReason(e,t){this.#D||(t?this.#S.add(e):this.#S.delete(e),this.#N instanceof k?this.#N.setPauseReason(this.#Y(e),t,[...this.#x.keys()]):t?this.#x.forEach(e=>e.raw?.pause()):this.#S.size||this.#x.forEach(e=>{e.manualPaused||e.raw?.resume()}))}setEnabled(e){this.#D||this.#M===e||(this.#M=e,e||this.finishAll())}getActiveAnimationCount(){return this.#x.size}destroy(){this.#D||this.#E||(this.#v(!1,!1),this.#D=!0,this.#S.clear())}},W={top:18,right:24,bottom:52,left:48},X=["#0960bd","#ff7f0e","#2ca02c","#d62728","#9467bd","#8c564b","#e377c2","#7f7f7f","#bcbd22","#17becf","#005f73","#0a9396","#ae2012","#bb3e03","#ca6702","#ee9b00","#9b2226","#3a0ca3","#4361ee","#4895ef","#560bad","#7209b7","#b5179e","#f72585","#006d77","#2f3e46","#354f52","#52796f","#800f2f","#31572c"],H="#ff0000";function z(e,t,A,n){let i=0,a=e;for(;i<a;){const e=i+Math.floor((a-i)/2);(n?t(e)<=A:t(e)<A)?i=e+1:a=e}return i}function P(e,t,A,n){const i=e=>A+(n?.[e]??e)/t,a=t=>t<0||t>=e.length?void 0:{x:i(t),y:e[t]};return{isCompact:!0,length:e.length,pointAt:a,pointsInRange(t=0,A=e.length){const n=Math.max(0,Math.min(e.length,Math.floor(t))),i=Math.max(n,Math.min(e.length,Math.ceil(A)));return Array.from({length:i-n},(e,t)=>a(n+t)).filter(e=>void 0!==e)},visibleRange(t){const A=Math.min(t[0],t[1]),n=Math.max(t[0],t[1]);return{start:z(e.length,i,A,!1),end:z(e.length,i,n,!0)}},nearestPoint(t){if(!Number.isFinite(t)||!e.length)return;if(t<=i(0))return a(0);if(t>=i(e.length-1))return a(e.length-1);const A=z(e.length,i,t,!1),n=Math.max(0,A-1);return Math.abs(t-i(n))<Math.abs(i(A)-t)?a(n):a(A)},metrics(){let t=Number.POSITIVE_INFINITY,A=Number.NEGATIVE_INFINITY;for(const n of e)t=Math.min(t,n),A=Math.max(A,n);return{xMinimum:e.length?i(0):Number.POSITIVE_INFINITY,xMaximum:e.length?i(e.length-1):Number.NEGATIVE_INFINITY,yMinimum:t,yMaximum:A,hasErrorPoints:!1}},toWorkerDataset:()=>({kind:"samples",values:e.slice(),sampleRate:t,startTime:A,...n?{sourceIndexes:n.slice()}:{}})}}function q(e){return"number"==typeof e&&Number.isFinite(e)&&e>=0?e:void 0}function K(e,t,A){const n=Math.max(0,Math.min(A,Math.floor(e)));return{start:n,end:Math.max(n,Math.min(A,Math.floor(t)))}}function _(e,t,A){let n=0,i=e;for(;n<i;){const e=n+Math.floor((i-n)/2);t(e)<A?n=e+1:i=e}return n}function $(e,t,A){let n=0,i=e;for(;n<i;){const e=n+Math.floor((i-n)/2);t(e)<=A?n=e+1:i=e}return n}var ee=class{sourcePoints;isCompact=!1;constructor(e){this.sourcePoints=e}get length(){return this.sourcePoints.length}pointAt(e){return this.sourcePoints[e]}pointsInRange(e=0,t=this.length){const A=K(e,t,this.length);return this.sourcePoints.slice(A.start,A.end)}visibleRange(e){const t=Math.min(e[0],e[1]),A=Math.max(e[0],e[1]);return{start:_(this.length,e=>this.sourcePoints[e].x,t),end:$(this.length,e=>this.sourcePoints[e].x,A)}}nearestPoint(e){if(!Number.isFinite(e)||!this.length)return;const t=this.sourcePoints[0],A=this.sourcePoints[this.length-1];if(e<=t.x)return t;if(e>=A.x)return A;const n=_(this.length,e=>this.sourcePoints[e].x,e),i=this.sourcePoints[Math.min(n,this.length-1)],a=this.sourcePoints[Math.max(0,n-1)];return Math.abs(e-a.x)<Math.abs(i.x-e)?a:i}metrics(e=!1){return function(e,t,A){let n=Number.POSITIVE_INFINITY,i=Number.NEGATIVE_INFINITY,a=Number.POSITIVE_INFINITY,o=Number.NEGATIVE_INFINITY,r=!1;for(let s=0;s<e;s+=1){const e=t(s);if(!e)continue;if(n=Math.min(n,e.x),i=Math.max(i,e.x),a=Math.min(a,e.y),o=Math.max(o,e.y),!A)continue;const l=q(e.lowerError)??q(e.error)??0,g=q(e.upperError)??q(e.error)??0;r||=0!==l||0!==g,a=Math.min(a,e.y-l),o=Math.max(o,e.y+g)}return{xMinimum:n,xMaximum:i,yMinimum:a,yMaximum:o,hasErrorPoints:r}}(this.length,e=>this.sourcePoints[e],e)}toWorkerDataset(){return{kind:"points",points:this.sourcePoints}}},te=class{x;y;error;lowerError;upperError;isCompact=!0;constructor(e,t,A,n,i){this.x=e,this.y=t,this.error=A,this.lowerError=n,this.upperError=i}get length(){return this.x.length}pointAt(e){if(e<0||e>=this.length)return;const t=q(this.error?.[e]),A=q(this.lowerError?.[e]),n=q(this.upperError?.[e]);return{x:this.x[e],y:this.y[e],...void 0===t?{}:{error:t},...void 0===A?{}:{lowerError:A},...void 0===n?{}:{upperError:n}}}pointsInRange(e=0,t=this.length){const A=K(e,t,this.length),n=[];for(let i=A.start;i<A.end;i+=1)n.push(this.pointAt(i));return n}visibleRange(e){const t=Math.min(e[0],e[1]),A=Math.max(e[0],e[1]);return{start:_(this.length,e=>this.x[e],t),end:$(this.length,e=>this.x[e],A)}}nearestPoint(e){if(!Number.isFinite(e)||!this.length)return;if(e<=this.x[0])return this.pointAt(0);if(e>=this.x[this.length-1])return this.pointAt(this.length-1);const t=_(this.length,e=>this.x[e],e),A=Math.min(t,this.length-1),n=Math.max(0,t-1);return Math.abs(e-this.x[n])<Math.abs(this.x[A]-e)?this.pointAt(n):this.pointAt(A)}metrics(e=!1){let t=Number.POSITIVE_INFINITY,A=Number.NEGATIVE_INFINITY,n=Number.POSITIVE_INFINITY,i=Number.NEGATIVE_INFINITY,a=!1;for(let o=0;o<this.length;o+=1){const r=this.x[o],s=this.y[o];if(t=Math.min(t,r),A=Math.max(A,r),n=Math.min(n,s),i=Math.max(i,s),!e)continue;const l=q(this.lowerError?.[o])??q(this.error?.[o])??0,g=q(this.upperError?.[o])??q(this.error?.[o])??0;a||=0!==l||0!==g,n=Math.min(n,s-l),i=Math.max(i,s+g)}return{xMinimum:t,xMaximum:A,yMinimum:n,yMaximum:i,hasErrorPoints:a}}toWorkerDataset(){return{kind:"typed",x:this.x.slice(),y:this.y.slice()}}};function Ae(e){return e instanceof Float32Array||e instanceof Float64Array}function ne(e,t){return"typed-samples"===e.kind?function(e){if(!Ae(e.values)||!Number.isFinite(e.sampleRate)||e.sampleRate<=0||void 0!==e.startTime&&!Number.isFinite(e.startTime))return P(new Float64Array,1,0);const t=e.startTime??0;let A=0;for(let a=0;a<e.values.length;a+=1)A+=Number.isFinite(e.values[a])?1:0;const n=e.values instanceof Float32Array?new Float32Array(A):new Float64Array(A),i=A===e.values.length?void 0:new Uint32Array(A);for(let a=0,o=0;a<e.values.length;a+=1){const t=e.values[a];Number.isFinite(t)&&(n[o]=t,i&&(i[o]=a),o+=1)}return P(n,e.sampleRate,t,i)}(e):"typed-points"===e.kind?function(e){if(!function(e){const t=[e.y,e.error,e.lowerError,e.upperError];return e.x instanceof Float64Array&&t.every(t=>void 0===t||Ae(t)&&t.length===e.x.length)}(e))return new te(new Float64Array,new Float64Array);let t=!0;for(let c=0;c<e.x.length;c+=1)if(!Number.isFinite(e.x[c])||!Number.isFinite(e.y[c])||c>0&&e.x[c]<e.x[c-1]){t=!1;break}if(t)return new te(e.x.slice(),e.y.slice(),e.error?.slice(),e.lowerError?.slice(),e.upperError?.slice());const A=[];let n=!0,i=Number.NEGATIVE_INFINITY;for(let c=0;c<e.x.length;c+=1){const t=e.x[c],a=e.y[c];Number.isFinite(t)&&Number.isFinite(a)&&(t<i&&(n=!1),i=t,A.push(c))}n||A.sort((t,A)=>e.x[t]-e.x[A]);const a=new Float64Array(A.length),o=e.y instanceof Float32Array?new Float32Array(A.length):new Float64Array(A.length),r=e=>e?e instanceof Float32Array?new Float32Array(A.length):new Float64Array(A.length):void 0,s=r(e.error),l=r(e.lowerError),g=r(e.upperError);return A.forEach((t,A)=>{a[A]=e.x[t],o[A]=e.y[t],s&&(s[A]=e.error[t]),l&&(l[A]=e.lowerError[t]),g&&(g[A]=e.upperError[t])}),new te(a,o,s,l,g)}(e):new ee(t(e))}function ie(e){return new ee(e)}function ae(e){if(!e.isCompact)return e.pointsInRange();const t=new Map,A=A=>{const n=t.get(A);if(n)return n;const i=e.pointAt(A);return i&&(t.set(A,i),t.size>128&&t.delete(t.keys().next().value)),i};return new Proxy([],{get:(t,n,i)=>"string"==typeof n&&/^(0|[1-9]\d*)$/.test(n)?A(Number(n)):"length"===n?e.length:Reflect.get(t,n,i),has(t,A){if("string"==typeof A&&/^(0|[1-9]\d*)$/.test(A)){const t=Number(A);return t>=0&&t<e.length}return Reflect.has(t,A)},ownKeys:t=>[...Array.from({length:e.length},(e,t)=>String(t)),...Reflect.ownKeys(t).filter(e=>"length"===e||"symbol"==typeof e)],getOwnPropertyDescriptor(t,n){if("string"==typeof n&&/^(0|[1-9]\d*)$/.test(n)){const t=Number(n);if(t>=0&&t<e.length)return{configurable:!0,enumerable:!0,writable:!0,value:A(t)}}return Reflect.getOwnPropertyDescriptor(t,n)}})}function oe(e){return"number"==typeof e&&Number.isFinite(e)&&e>=0?e:void 0}function re(e){const t=oe(e.error),A=oe(e.lowerError),n=oe(e.upperError);return{x:e.x,y:e.y,...void 0===t?{}:{error:t},...void 0===A?{}:{lowerError:A},...void 0===n?{}:{upperError:n}}}function se(e){return e instanceof Float32Array||e instanceof Float64Array}function le(e,t,A){if(!Number.isFinite(t)||t<=0)return[];const n=Number.isFinite(A)?A??0:0,i=[];for(let a=0;a<e.length;a+=1){const A=e[a];Number.isFinite(A)&&i.push({x:n+a/t,y:A})}return i}function ge(e){const t=oe(e.error)??0;return{lower:oe(e.lowerError)??t,upper:oe(e.upperError)??t}}function ce(e){if("samples"===e.kind)return le(e.values,e.sampleRate,e.startTime);if("typed-samples"===e.kind)return function(e){return!se(e.values)||!Number.isFinite(e.sampleRate)||e.sampleRate<=0||void 0!==e.startTime&&!Number.isFinite(e.startTime)?[]:le(e.values,e.sampleRate,e.startTime)}(e);if("typed-points"===e.kind)return function(e){if(!(e.x instanceof Float64Array&&se(e.y)))return!1;const t=e.x.length;return[e.error,e.lowerError,e.upperError].every(e=>void 0===e||se(e)&&e.length===t)&&e.y.length===t}(e)?function(e){const t=[];let A=Number.NEGATIVE_INFINITY,n=!0;for(let i=0;i<e.x.length;i+=1){const a=e.x[i],o=e.y[i];if(!Number.isFinite(a)||!Number.isFinite(o))continue;const r=re({x:a,y:o,error:e.error?.[i],lowerError:e.lowerError?.[i],upperError:e.upperError?.[i]});r.x<A&&(n=!1),A=r.x,t.push(r)}return n||t.sort((e,t)=>e.x-t.x),t}(e):[];const t=[];let A=Number.NEGATIVE_INFINITY,n=!0;for(const i of e.points){if(!Number.isFinite(i.x)||!Number.isFinite(i.y))continue;const e=re(i);e.x<A&&(n=!1),A=e.x,t.push(e)}return n||t.sort((e,t)=>e.x-t.x),t}function de(e,t){const A=t.lineType??"linear",n="dashed"===(i=t.lineStyle)||"dash-dot"===i?i:"solid";var i;const a=t.pointType??"none",o=!0===t.errorBar?.visible,r="none"!==A||"none"!==a||o?A:"linear",s=Number(t.errorBar?.width),l=Number(t.errorBar?.capWidth);return{id:e,shotNo:t.shotNo?.trim()||void 0,trackId:t.trackId?.trim()||void 0,name:t.name,unit:t.unit,color:t.color,lineType:r,lineStyle:n,pointType:a,errorBar:{visible:o,color:t.errorBar?.color,width:Number.isFinite(s)&&s>0?s:1.5,capWidth:Number.isFinite(l)&&l>0?l:8}}}function Ie(e){if("series"!==e.kind){const t=ne(e,ce);return t.length?[{...de("series-0",{name:""}),source:t}]:[]}const t=new Set;return e.series.flatMap((e,A)=>{const n=e.id?.trim()||`series-${A}`;let i=n,a=1;for(;t.has(i);)i=`${n}-${a}`,a+=1;t.add(i);const o=ne(e.data,ce);return o.length?[{...de(i,e),source:o}]:[]})}function ue(e,t){return t&&(e.start!==e.end||0!==e.start&&e.end!==t)?[e.start>0?e.start-1:-1,e.end<t?e.end:-1].filter(e=>e>=0):[]}function me(e,t,A,n){const i=ue(t,A);return[...i.filter(e=>e<t.start).map(n),...e,...i.filter(e=>e>=t.end).map(n)]}function he(e,t){return{start:Math.max(0,e.start-1),end:Math.min(t,e.end+1)}}var Ce=e=>{const t=e.source??ie(e.points),{start:A,end:n}=he(e.range,t.length);return t.pointsInRange(A,n)},Qe=e=>{const{range:t,domain:A,width:n,options:i}=e,a=e.source??ie(e.points),{start:o,end:r}=he(t,a.length);if(r-o<=0)return[];const s=Math.min(A[0],A[1]),l=Math.max(A[0],A[1]),g=Math.max(4,i.sampling.maxPointCount??Math.floor(n*i.maxPointsPerPixel)),c=Math.max(1,Math.floor(g/4)),d=[];let I=-1;const u=e=>{e<0||e>=a.length||e===I||(d.push(a.pointAt(e)),I=e)},m=l-s||1,h=Array.from({length:4},()=>-1);let C=-1,Q=-1,B=-1,E=-1,p=-1;const f=(e,t)=>{if(e<0)return t;for(let A=0;A<t;A+=1)if(h[A]===e)return t;return h[t]=e,t+1},y=()=>{if(Q<0)return;let e=0;e=f(Q,e),e=f(E,e),e=f(p,e),e=f(B,e);for(let t=1;t<e;t+=1){const e=h[t];let A=t-1;for(;A>=0&&h[A]>e;)h[A+1]=h[A],A-=1;h[A+1]=e}for(let t=0;t<e;t+=1)u(h[t])};u(o);for(let v=t.start;v<t.end;v+=1){const e=a.pointAt(v),t=Math.min(c-1,Math.max(0,Math.floor((e.x-s)/m*c)));t===C?(B=v,e.y<a.pointAt(E).y&&(E=v),e.y>a.pointAt(p).y&&(p=v)):(y(),C=t,Q=v,B=v,E=v,p=v)}return y(),u(r-1),d},Be={downsample:!0,downsampleThreshold:2e3,maxPointsPerPixel:4,pointMinSpacing:10,errorBarMinSpacing:12,sampling:{mode:"auto",autoThreshold:1e3,autoHysteresis:0,strategy:"peak",maxPointsPerPixel:4,maxPointCount:void 0,rawPointLimit:1e5,wasmFailureFallback:"error"}},Ee=["auto","wasm","raw"],pe=["auto","none","peak","lttb","average","min","max","minmax","sum"];function fe(e){return"string"==typeof e&&pe.includes(e)}function ye(e,t,A){return"number"==typeof e&&Number.isFinite(e)&&e>=t?Math.floor(e):A}function ve(e,t){return"number"==typeof e&&Number.isFinite(e)&&e>=t?Math.floor(e):void 0}function we(e,t){return Number.isFinite(e)&&e>=0?e:t}function ke(e){const t=Number(e?.downsampleThreshold),A=Number(e?.maxPointsPerPixel),n=Number(e?.pointMinSpacing),i=Number(e?.errorBarMinSpacing),a=Number.isFinite(A)&&A>0?A:Be.maxPointsPerPixel,o=function(e,t,A){const n=(i=e?.mode,"string"==typeof i&&Ee.includes(i)?e.mode:!1===t?"raw":Be.sampling.mode);var i;const a=function(e,t){return"number"==typeof e&&Number.isFinite(e)&&e>0?e:t}(e?.maxPointsPerPixel,A);return{mode:n,autoThreshold:ye(e?.autoThreshold,1,Be.sampling.autoThreshold),autoHysteresis:ye(e?.autoHysteresis,0,Be.sampling.autoHysteresis),strategy:fe(e?.strategy)?e.strategy:Be.sampling.strategy,maxPointsPerPixel:a,maxPointCount:ve(e?.maxPointCount,1),rawPointLimit:ye(e?.rawPointLimit,1,Be.sampling.rawPointLimit),wasmFailureFallback:"javascript"===e?.wasmFailureFallback||"error"===e?.wasmFailureFallback?e.wasmFailureFallback:Be.sampling.wasmFailureFallback}}(e?.sampling,"boolean"==typeof e?.downsample?e.downsample:void 0,a);return{downsample:"raw"!==o.mode,downsampleThreshold:Number.isFinite(t)&&t>=2?Math.floor(t):Be.downsampleThreshold,maxPointsPerPixel:o.maxPointsPerPixel,pointMinSpacing:we(n,Be.pointMinSpacing),errorBarMinSpacing:we(i,Be.errorBarMinSpacing),sampling:o}}var xe=(0,t.bisector)(e=>e.x),be=()=>!0;function Me(e,t,A,n,i){if(t.start===t.end&&(0===t.start||t.end===e.length))return[];const a=Math.max(0,t.start-1),o=Math.min(e.length,t.end+1)-a;return o<=0?[]:function(e){const t=Math.max(4,e.options.sampling.maxPointCount??Math.floor(e.width*e.options.maxPointsPerPixel));return!e.options.downsample||e.visibleCount<=e.options.downsampleThreshold||e.visibleCount<=t?Ce:Qe}({visibleCount:o,width:n,options:i})({points:[],source:e,range:t,domain:A,width:n,options:i})}function Ne(e,t,A,n,i,a,o,r){if(!a||0===i){if(o===be)return e.pointsInRange(t.start,t.end);const A=[];for(let n=t.start;n<t.end;n+=1)o(e.pointAt(n))&&A.push(e.pointAt(n));return A}const s=Math.min(A[0],A[1]),l=Math.max(A[0],A[1])-s;if(l<=0){for(let A=t.start;A<t.end;A+=1)if(o(e.pointAt(A)))return[e.pointAt(A)];return[]}const g=Math.max(1,Math.ceil(n/i)),c=n/g;let d,I,u,m;const h=[];let C,Q,B=!0,E=Number.NEGATIVE_INFINITY,p=0;const f=(e,t)=>{if(!(d&&I&&u&&m))return;const A=Math.min(g-1,Math.floor(t/c)),n=(A+.5)*c,i=Math.abs(t-n);i<I[A]&&(d[A]=e,I[A]=i),r?.(e)&&i<m[A]&&(u[A]=e,m[A]=i)},y=()=>{d=Array.from({length:g}),I=Array.from({length:g},()=>Number.POSITIVE_INFINITY),u=Array.from({length:g}),m=Array.from({length:g},()=>Number.POSITIVE_INFINITY);for(const e of h){const t=Math.max(0,Math.min(n,(e.x-s)/l*n));f(e,t)}};for(let w=t.start;w<t.end;w+=1){const t=e.pointAt(w);if(!o(t))continue;C??=t,Q=t,p+=1;const A=Math.max(0,Math.min(n,(t.x-s)/l*n));B&&(A-E<i?(B=!1,y(),h.length=0):(h.push(t),E=A)),B||f(t,A)}if(p<=2)return C?Q&&Q!==C?[C,Q]:[C]:[];if(B)return h;const v=(d??[]).map((e,t)=>u?.[t]??e).filter(e=>void 0!==e);return C&&v[0]!==C&&v.unshift(C),Q&&v.at(-1)!==Q&&v.push(Q),v}function De(e){const{lower:t,upper:A}=ge(e);return 0!==t||0!==A}function Se(e,t,A,n){const i=Ze(e,Ve.__wbindgen_malloc),a=je,o=Ze(t,Ve.__wbindgen_malloc),r=je,s=Ve.sample_indexes(i,a,o,r,A,n);if(s[3])throw Ue(s[2]);var l=Ge(s[0],s[1]).slice();return Ve.__wbindgen_free(s[0],4*s[1],4),l}function Fe(e,t){return e>>>=0,Je().subarray(e/8,e/8+t)}function Ge(e,t){return e>>>=0,(null!==Re&&0!==Re.byteLength||(Re=new Uint32Array(Ve.memory.buffer)),Re).subarray(e/4,e/4+t)}var Ye=null;function Je(){return null!==Ye&&0!==Ye.byteLength||(Ye=new Float64Array(Ve.memory.buffer)),Ye}var Re=null,Te=null;function Ze(e,t){const A=t(8*e.length,8)>>>0;return Je().set(e,A/8),je=e.length,A}function Ue(e){const t=Ve.__wbindgen_externrefs.get(e);return Ve.__externref_table_dealloc(e),t}var Le=new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0});Le.decode();var Ve,Oe=0,je=0;var We,Xe,He={none:0,peak:1,lttb:2,average:3,min:4,max:5,minmax:6,sum:7};function ze(e){return We??=Promise.resolve(async function(e){if(void 0!==Ve)return Ve;void 0!==e&&(Object.getPrototypeOf(e)===Object.prototype?({module_or_path:e}=e):console.warn("using deprecated parameters for the initialization function; pass a single object instead")),void 0===e&&(e=new URL("data:application/wasm;base64,AGFzbQEAAAAB0AEZYAAAYAABf2ABfwBgAX8Bf2ACf38AYAJ/fwF/YAJ/fwFvYAN/f38AYAN/f38Bf2AEf39/fwBgBH9/f38Bf2AEf39/fwR/f39/YAV/f39/fwBgBX9/f39/AX9gBX9/f39/A39/f2AFf39/f38Ef39/f2AGf39/f39/AGAGf39/f39/AX9gBn9/f39/fwR/f39/YAd/f39/f39/AGAHf39/f398fABgCH9/f39/fHx/AGAGf39/f3x8BH9/f39gB39/f398fH8Df39/YAJ8fAF8AoQBAh4uL3dhdmVmb3JtX3NhbXBsaW5nX3dhc21fYmcuanMfX193YmluZGdlbl9pbml0X2V4dGVybnJlZl90YWJsZQAAHi4vd2F2ZWZvcm1fc2FtcGxpbmdfd2FzbV9iZy5qcyBfX3diaW5kZ2VuX2Nhc3RfMDAwMDAwMDAwMDAwMDAwMQAGA4wBigEDEAwQEBMMBQoMAhEQFQgMCgwEBxQEAgQFBAQTAQQECQkFBRAQFBMMBw0HBwQTBAwMBxAQEAwDCRUQBAIAAgICAgMHAwcIBAcFAwIEBwUFDRIWEg8XDwQLBQMOAgICAgkEAwICBAIFGBgEBwUHBAQICgIEBQcECAACAgAFBQQEBAUFAgIEBAUDAAAECQJwARcXbwCACAUDAQARBgkBfwFBgIDAAAsH5AIRBm1lbW9yeQIAD2NhbGN1bGF0ZV9yYW5nZQBZD2Rpc3Bvc2VfZGF0YXNldAA4EmZpbmRfdmlzaWJsZV9yYW5nZQBTEHJlZ2lzdGVyX2RhdGFzZXQAXBdyZWdpc3Rlcl9zYW1wbGVfZGF0YXNldABWEXNhbXBsZV9hZ2dyZWdhdGVzAFIZc2FtcGxlX2RhdGFzZXRfYWdncmVnYXRlcwBXFnNhbXBsZV9kYXRhc2V0X2luZGV4ZXMAVQ5zYW1wbGVfaW5kZXhlcwBUFGRpc3Bvc2VfYWxsX2RhdGFzZXRzAD4TZGF0YXNldF9pbmRleF9ieXRlcwBFFV9fd2JpbmRnZW5fZXh0ZXJucmVmcwEBEV9fd2JpbmRnZW5fbWFsbG9jAE8ZX19leHRlcm5yZWZfdGFibGVfZGVhbGxvYwA/D19fd2JpbmRnZW5fZnJlZQBuEF9fd2JpbmRnZW5fc3RhcnQAAAkiAQBBAQsWiQEBhgFaZ0ck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AggiDqdBgICA/3lxQbCAgIACcjYCCEEBIQ0gACgCACIKIAAoAgQiCyAMIAIgAxBRDQNBACEHIAEgCWtB//8DcSECA0AgB0H//wNxIAJPDQJBASENIAdBAWohByAKQTAgCygCEBEFAEUNAAwECwtBASENIAogCyAMIAIgAxBRDQIgCiAEIAUgCygCDBEIAA0CQQAhByAIIAFrQf//A3EhAANAIAdB//8DcSICIABJIQ0gAiAATw0DIAdBAWohByAKIAkgCygCEBEFAEUNAAwDCwtBASENIAogBCAFIAsoAgwRCAANASAAIA43AghBAA8LQQEhDSAAKAIAIgcgACgCBCIKIAwgAiADEFENACAHIAQgBSAKKAIMEQgAIQ0LIA0L/QUDBX8CfgN8IwBB8ABrIgYkAAJAAkACQAJAIAIgBEYNAEHXi8AAQSEQba0hC0GAgICAeCEHIAZBGGohBAwBC0EAIQcCQAJAIAINAEIAIQtBgICAgHghCEQAAAAAAAAAACENQQghCUEAIQEMAQsgAkEDdCEKQQAhCCABIQQgAyEJAkACQAJAAkADQCAEKQMAQv///////////wCDQv/////////3/wBVDQEgCSkDAEL///////////8Ag0L/////////9/8AVQ0BIARBCGohBCAJQQhqIQkgAiAIQQFqIghGDQIMAAsLIAggAkkNAQtEAAAAAAAAAAAhDSACQQFGDQEgASACQX9qIgRBA3RqKwMAIAErAwChIAS4oyENDAELQaSLwABBMxBtrSELQYCAgIB4IQcgBkEYaiEEDAILQQAhBEEAIQkCQANAAkAgCiAERw0AQYCAgIB4IQgMAgsgASAEaiEIIAm4IQ4gBEEIaiEEIAlBAWohCSAIKwMAIg8gDSAOoiABKwMAoCIOoZkgD5kgDpkQaUQAAAAAAADwPxBpRAAAAAAAACA9omUNAAsQigEgCkEIEH0iBEUNAwJAIApFDQAgBCABIAr8CgAACyACrUIghiAErYQhDCACIQgLEIoBIApBCBB9IglFDQMCQCAKRQ0AIAkgAyAK/AoAAAsgASkDACELIAIhAQsgBkEANgIYIAZBEGohBAsgBCAHNgIAAkACQCAGKAIYIgRBgICAgHhHDQAgC6chBEEBIQkMAQsgBiAGKAIQNgJoIAZBBDYCZCAGIAQ2AmAgBkEANgJcIAZC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Cw8AQZqUwABB8wAgABBOAAsSAEHTlMAAQZkBQaCVwAAQTgALCQAgACABEGgPCwkAIAAgARBKDwsJACABIAAQYgALDAAgACABKQIANwMACwkAIAEgABB/AAsNACABQdCVwABBGBAQCw0AIAFBsJXAAEEgEBALBwAgABBlAAsHACAAED0ACwsAQQBBAToA+JlACwkAIABBADYCAAsGABCLAQALBwBB6JXAAAsDAA8LAwAACwuiFgIAQYCAwAAL6BUWc2xpY2UgaW5kZXggc3RhcnRzIGF0IMANIGJ1dCBlbmRzIGF0IMAAIGluZGV4IG91dCBvZiBib3VuZHM6IHRoZSBsZW4gaXMgwBIgYnV0IHRoZSBpbmRleCBpcyDAABJyYW5nZSBzdGFydCBpbmRleCDAIiBvdXQgb2YgcmFuZ2UgZm9yIHNsaWNlIG9mIGxlbmd0aCDAABByYW5nZSBlbmQgaW5kZXggwCIgb3V0IG9mIHJhbmdlIGZvciBzbGljZSBvZiBsZW5ndGggwABIY2Fubm90IGFjY2VzcyBhIFRocmVhZCBMb2NhbCBTdG9yYWdlIHZhbHVlIGR1cmluZyBvciBhZnRlciBkZXN0cnVjdGlvbjogwAAvcnVzdGMvNTk4MDc2MTZlMWZhMjU0MDcyNGJmYmFjMTRkNzk3NmQ3ZTRhMzg2MC9saWJyYXJ5L2NvcmUvc3JjL3NsaWNlL3NvcnQvc2hhcmVkL3NtYWxsc29ydC5ycwAvcnVzdGMvNTk4MDc2MTZlMWZhMjU0MDcyNGJmYmFjMTRkNzk3NmQ3ZTRhMzg2MC9saWJyYXJ5L2NvcmUvc3JjL3NsaWNlL3NvcnQvc3RhYmxlL3F1aWNrc29ydC5ycwAvcnVzdGMvNTk4MDc2MTZlMWZhMjU0MDcyNGJmYmFjMTRkNzk3NmQ3ZTRhMzg2MC9saWJyYXJ5L3N0ZC9zcmMvdGhyZWFkL2xvY2FsLnJzAC9ob21lL3J1bm5lci8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3dhc20tYmluZGdlbi0wLjIuMTE4L3NyYy9leHRlcm5yZWYucnMAL3J1c3RjLzU5ODA3NjE2ZTFmYTI1NDA3MjRiZmJhYzE0ZDc5NzZkN2U0YTM4NjAvbGli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MTYyNjM2NDY1NjY2NzY4Njk3MDcxNzI3Mzc0NzU3Njc3Nzg3OTgwODE4MjgzODQ4NTg2ODc4ODg5OTA5MTkyOTM5NDk1OTY5Nzk4OTlhdHRlbXB0IHRvIGNhbGN1bGF0ZSB0aGUgcmVtYWluZGVyIHdpdGggYSBkaXZpc29yIG9mIHplcm91c2VyLXByb3ZpZGVkIGNvbXBhcmlzb24gZnVuY3Rpb24gZG9lcyBub3QgY29ycmVjdGx5IGltcGxlbWVudCBhIHRvdGFsIG9yZGVyABoBEABfAAAAXAMAAAUAAABSZWZDZWxsIGFscmVhZHkgbXV0YWJseSBib3Jyb3dlZFJlZkNlbGwgYWxyZWFkeSBib3Jyb3dlZABB6JXAAAsoAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAAAAAAAADURARuYW1lABwbd2F2ZWZvcm1fc2FtcGxpbmdfd2FzbS53YXNtAe1DiwEBGFJlZihTdHJpbmcpIC0+IEV4dGVybnJlZgJhPGRsbWFsbG9jW2UyNGEyNzcwMDYzNGQ2MDldOjpkbG1hbGxvYzo6RGxtYWxsb2M8ZGxtYWxsb2NbZTI0YTI3NzAwNjM0ZDYwOV06OnN5czo6U3lzdGVtPj46Om1hbGxvYwNId2F2ZWZvcm1fc2FtcGxpbmdfd2FzbTo6U3RvcmVkRGF0YXNldDo6c2FtcGxlX2luZGV4ZXM6Omg2MWUzZjgxMTcwZDM3MDY3BDl3YXZlZm9ybV9zYW1wbGluZ193YXNtOjpzb3VyY2VfaW5kZXhlczo6aDQ2ZjNjMTMyODIyNWU2NzIFS3dhdmVmb3JtX3NhbXBsaW5nX3dhc206OlN0b3JlZERhdGFzZXQ6OnNhbXBsZV9hZ2dyZWdhdGVzOjpoOThiYzBkMGNkZWQ4MmY2ZQY5Y29yZTo6c2xpY2U6OnNvcnQ6OnN0YWJsZTo6ZHJpZnQ6OnNvcnQ6OmhiMGYzYWUzMDFkNTZkNDVhB0Jjb3JlOjpzbGljZTo6c29ydDo6c3RhYmxlOjpxdWlja3NvcnQ6OnF1aWNrc29ydDo6aDQyMGFkOTE2NGI2NDVlM2IIWGNvcmU6OnNsaWNlOjpzb3J0OjpzaGFyZWQ6OnNtYWxsc29ydDo6c21hbGxfc29ydF9nZW5lcmFsX3dpdGhfc2NyYXRjaDo6aGNmYzk3ZmQzMzIxNzQ2MWYJMmNvcmVbYzU5MzBjODVhMTJkZTgyMl06OnN0cjo6Y291bnQ6OmRvX2NvdW50X2NoYXJzCihfX3J1c3RjW2I3OTc0ZTg2OTA0MzBkZDldOjpfX3JkbF9yZWFsbG9jCzR3YXZlZm9ybV9zYW1wbGluZ193YXNtOjphZ2dyZWdhdGU6OmhkY2UwYWY2ODJjNjRkZjNhDF88ZGxtYWxsb2NbZTI0YTI3NzAwNjM0ZDYwOV06OmRsbWFsbG9jOjpEbG1hbGxvYzxkbG1hbGxvY1tlMjRhMjc3MDA2MzRkNjA5XTo6c3lzOjpTeXN0ZW0+Pjo6ZnJlZQ02PGNvcmVbYzU5MzBjODVhMTJkZTgyMl06OmZtdDo6Rm9ybWF0dGVyPjo6cGFkX2ludGVncmFsDjt3YXZlZm9ybV9zYW1wbGluZ193YXNtOjpyZWdpc3Rlcl9kYXRhc2V0OjpoM2YzMzNhZDk0ZDVkYTI0MA9Cd2F2ZWZvcm1fc2FtcGxpbmdfd2FzbTo6cmVnaXN0ZXJfc2FtcGxlX2RhdGFzZXQ6OmhhYzNjYTBmNWUyMzNlNzhiEC08Y29yZVtjNTkzMGM4NWExMmRlODIyXTo6Zm10OjpGb3JtYXR0ZXI+OjpwYWQROndhdmVmb3JtX3NhbXBsaW5nX3dhc206OmNhbGN1bGF0ZV9yYW5nZTo6aGI4ZjY0N2JhZGEyYWYwOWMSImNvcmVbYzU5MzBjODVhMTJkZTgyMl06OmZtdDo6d3JpdGUTO3dhdmVmb3JtX3NhbXBsaW5nX3dhc206OnZhbGlkYXRlZF9wb2ludHM6Omg5YTcxMGE2MTYxZjE1NjY3FGg8ZGxtYWxsb2NbZTI0YTI3NzAwNjM0ZDYwOV06OmRsbWFsbG9jOjpEbG1hbGxvYzxkbG1hbGxvY1tlMjRhMjc3MDA2MzRkNjA5XTo6c3lzOjpTeXN0ZW0+Pjo6ZGlzcG9zZV9jaHVuaxU7d2F2ZWZvcm1fc2FtcGxpbmdfd2FzbTo6ZW5kcG9pbnRzX29yX2FsbDo6aGZmNmE2YTc2YjM0YmZiYTQWPXdhdmVmb3JtX3NhbXBsaW5nX3dhc206OmZpbmRfdmlzaWJsZV9yYW5nZTo6aDVhYzhjM2I0MTU5NDIxNzIXRWNvcmU6OnNsaWNlOjpzb3J0OjpzaGFyZWQ6OnNtYWxsc29ydDo6c29ydDRfc3RhYmxlOjpoZTAzMTE1NjhkZDE5NTM4OBhSY29yZTo6cHRyOjpkcm9wX2luX3BsYWNlPHdhdmVmb3JtX3NhbXBsaW5nX3dhc206OlN0b3JlZERhdGFzZXQ+OjpoNzUwMjgxMjc0Y2ExNmZjNhk0YWxsb2M6OnZlYzo6VmVjPFQsQT46OnJlc2l6ZV93aXRoOjpoNTY4NjEzOTQ2NGQyNzM2ZhpjPGRsbWFsbG9jW2UyNGEyNzcwMDYzNGQ2MDldOjpkbG1hbGxvYzo6RGxtYWxsb2M8ZGxtYWxsb2NbZTI0YTI3NzAwNjM0ZDYwOV06OnN5czo6U3lzdGVtPj46Om1lbWFsaWduGzRhbGxvYzo6dmVjOjpWZWM8VCxBPjo6cmVzaXplX3dpdGg6Omg0Yzc1ODgxZTExZWY5YzI0HGc8ZGxtYWxsb2NbZTI0YTI3NzAwNjM0ZDYwOV06OmRsbWFsbG9jOjpEbG1hbGxvYzxkbG1hbGxvY1tlMjRhMjc3MDA2MzRkNjA5XTo6c3lzOjpTeXN0ZW0+Pjo6dW5saW5rX2NodW5rHQ5zYW1wbGVfaW5kZXhlcx4XX19leHRlcm5yZWZfdGFibGVfYWxsb2MfbTxkbG1hbGxvY1tlMjRhMjc3MDA2MzRkNjA5XTo6ZGxtYWxsb2M6OkRsbWFsbG9jPGRsbWFsbG9jW2UyNGEyNzcwMDYzNGQ2MDldOjpzeXM6OlN5c3RlbT4+OjppbnNlcnRfbGFyZ2VfY2h1bmsgaDxjb3JlOjppdGVyOjphZGFwdGVyczo6bWFwOjpNYXA8SSxGPiBhcyBjb3JlOjppdGVyOjp0cmFpdHM6Oml0ZXJhdG9yOjpJdGVyYXRvcj46OmZvbGQ6OmgyYTk3YjkwYmNjNDI0NGMyIVJjb3JlOjpzbGljZTo6c29ydDo6c2hhcmVkOjpzbWFsbHNvcnQ6Omluc2VydGlvbl9zb3J0X3NoaWZ0X2xlZnQ6OmhlOGU1ODA1Y2UxZGZmNjY1IjZjb3JlW2M1OTMwYzg1YTEyZGU4MjJdOjpzbGljZTo6aW5kZXg6OnNsaWNlX2luZGV4X2ZhaWwjMjx1MzIgYXMgY29yZVtjNTkzMGM4NWExMmRlODIyXTo6Zm10OjpEaXNwbGF5Pjo6Zm10JFs8YWxsb2NbM2NhNTAxZWRmZjNmMGM3Y106OnN0cmluZzo6U3RyaW5nIGFzIGNvcmVbYzU5MzBjODVhMTJkZTgyMl06OmZtdDo6V3JpdGU+Ojp3cml0ZV9jaGFyJRlzYW1wbGVfZGF0YXNldF9hZ2dyZWdhdGVzJhZzYW1wbGVfZGF0YXNldF9pbmRleGVzJxJmaW5kX3Zpc2libGVfcmFuZ2UoEXNhbXBsZV9hZ2dyZWdhdGVzKQ9jYWxjdWxhdGVfcmFuZ2UqOHN0ZDo6dGhyZWFkOjpsb2NhbDo6TG9jYWxLZXk8VD46OndpdGg6OmhlOTVjZWY1NTk3NjZjZTAwK0Bjb3JlOjpzbGljZTo6c29ydDo6c2hhcmVkOjpwaXZvdDo6bWVkaWFuM19yZWM6OmhlMDkzZWQ3OTU3Mjg1MmE2LDhzdGQ6OnRocmVhZDo6bG9jYWw6OkxvY2FsS2V5PFQ+Ojp3aXRoOjpoNzlkNTExMzk4ZjU0Y2Y4OS04c3RkOjp0aHJlYWQ6OmxvY2FsOjpMb2NhbEtleTxUPjo6d2l0aDo6aDk4YzlkZTAxMDhhMzhlZGEufzxzdGRbYTU0Mzk5NmU2ZTdkYmYxZV06OnBhbmlja2luZzo6cGFuaWNfaGFuZGxlcjo6Rm9ybWF0U3RyaW5nUGF5bG9hZCBhcyBjb3JlW2M1OTMwYzg1YTEyZGU4MjJdOjpwYW5pYzo6UGFuaWNQYXlsb2FkPjo6dGFrZV9ib3gvPHdhdmVmb3JtX3NhbXBsaW5nX3dhc206OnNhbXBsZV9hZ2dyZWdhdGVzOjpoMzljYTc4ODA2NWVhZjVkNDBwPGFsbG9jOjp2ZWM6OlZlYzxUPiBhcyBhbGxvYzo6dmVjOjpzcGVjX2Zyb21faXRlcl9uZXN0ZWQ6OlNwZWNGcm9tSXRlck5lc3RlZDxULEk+Pjo6ZnJvbV9pdGVyOjpoMGU0M2ZjZmRkNGE3OWFhZTFRYWxsb2M6OnJhd192ZWM6OlJhd1ZlY0lubmVyPEE+OjpyZXNlcnZlOjpkb19yZXNlcnZlX2FuZF9oYW5kbGU6OmhlMjEyNzkzYmI0NzAxOGYyMjFzdGRbYTU0Mzk5NmU2ZTdkYmYxZV06OnBhbmlja2luZzo6cGFuaWNfd2l0aF9ob29rMzxjb3JlOjpzbGljZTo6c29ydDo6c3RhYmxlOjpkcmlmdHNvcnRfbWFpbjo6aDQ1ZDRhMWQxNmJmNTAwY2I0PmFsbG9jOjpyYXdfdmVjOjpSYXdWZWNJbm5lcjxBPjo6ZmluaXNoX2dyb3c6Omg5YzE4MjU2ODMzNmY0ZjQ4NT5hbGxvYzo6cmF3X3ZlYzo6UmF3VmVjSW5uZXI8QT46OmZpbmlzaF9ncm93OjpoNGFlNGZmNmI4ODM1YjQzOTY8PGFsbG9jWzNjYTUwMWVkZmYzZjBjN2NdOjpyYXdfdmVjOjpSYXdWZWNJbm5lcj46OmZpbmlzaF9ncm93N3w8YWxsb2NbM2NhNTAxZWRmZjNmMGM3Y106OnJhd192ZWM6OlJhd1ZlY0lubmVyPF8+Pjo6cmVzZXJ2ZTo6ZG9fcmVzZXJ2ZV9hbmRfaGFuZGxlOjo8YWxsb2NbM2NhNTAxZWRmZjNmMGM3Y106OmFsbG9jOjpHbG9iYWw+OA9kaXNwb3NlX2RhdGFzZXQ5QWFsbG9jOjpyYXdfdmVjOjpSYXdWZWNJbm5lcjxBPjo6Z3Jvd19hbW9ydGl6ZWQ6OmhjMWFmNGJmN2VkNTQ0ZmYzOhdyZWdpc3Rlcl9zYW1wbGVfZGF0YXNldDsQcmVnaXN0ZXJfZGF0YXNldDx6PHN0ZFthNTQzOTk2ZTZlN2RiZjFlXTo6cGFuaWNraW5nOjpwYW5pY19oYW5kbGVyOjpGb3JtYXRTdHJpbmdQYXlsb2FkIGFzIGNvcmVbYzU5MzBjODVhMTJkZTgyMl06OnBhbmljOjpQYW5pY1BheWxvYWQ+OjpnZXQ9PHN0ZFthNTQzOTk2ZTZlN2RiZjFlXTo6cGFuaWNraW5nOjpwYW5pY19oYW5kbGVyOjp7Y2xvc3VyZSMwfT4/d2F2ZWZvcm1fc2FtcGxpbmdfd2FzbTo6ZGlzcG9zZV9hbGxfZGF0YXNldHM6OmgyNjcyMWYwZTFmNDY2Yjc0PxlfX2V4dGVybnJlZl90YWJsZV9kZWFsbG9jQDhhbGxvYzo6cmF3X3ZlYzo6UmF3VmVjPFQsQT46Omdyb3dfb25lOjpoMjM5YThkZWQ5ZDQ4OWIwMUE4YWxsb2M6OnJhd192ZWM6OlJhd1ZlYzxULEE+Ojpncm93X29uZTo6aDdmODZlZjE3MDY2NWUwMmZCOGFsbG9jOjpyYXdfdmVjOjpSYXdWZWM8VCxBPjo6Z3Jvd19vbmU6Omg4ZDcwOTIyOTI4ZWJhYTUzQzw8Y29yZVtjNTkzMGM4NWExMmRlODIyXTo6Zm10OjpidWlsZGVyczo6RGVidWdTdHJ1Y3Q+OjpmaW5pc2hEWTxkbG1hbGxvY1tlMjRhMjc3MDA2MzRkNjA5XTo6c3lzOjpTeXN0ZW0gYXMgZGxtYWxsb2NbZTI0YTI3NzAwNjM0ZDYwOV06OkFsbG9jYXRvcj46OmFsbG9jRT53YXZlZm9ybV9zYW1wbGluZ193YXNtOjpkYXRhc2V0X2luZGV4X2J5dGVzOjpoMTIxODQzZmRiMDg2ODQyNkYoX19ydXN0Y1tiNzk3NGU4NjkwNDMwZGQ5XTo6X19yZGxfZGVhbGxvY0daPGFsbG9jWzNjYTUwMWVkZmYzZjBjN2NdOjpzdHJpbmc6OlN0cmluZyBhcyBjb3JlW2M1OTMwYzg1YTEyZGU4MjJdOjpmbXQ6OldyaXRlPjo6d3JpdGVfc3RySDZ3YXZlZm9ybV9zYW1wbGluZ193YXNtOjpwdXNoX3VuaXF1ZTo6aDc0NTI5MTExNmFiMzA0MjNJNWNvcmVbYzU5MzBjODVhMTJkZTgyMl06OnBhbmlja2luZzo6cGFuaWNfYm91bmRzX2NoZWNrSi1fX3J1c3RjW2I3OTc0ZTg2OTA0MzBkZDldOjpfX3JkbF9hbGxvY196ZXJvZWRLN3N0ZFthNTQzOTk2ZTZlN2RiZjFlXTo6cGFuaWNraW5nOjpwYW5pY19jb3VudDo6aW5jcmVhc2VMOGFsbG9jOjpyYXdfdmVjOjpSYXdWZWM8VCxBPjo6Z3Jvd19vbmU6OmhjODgyMzc4NDk0ZDRhYmJlTXw8c3RkW2E1NDM5OTZlNmU3ZGJmMWVdOjpwYW5pY2tpbmc6OnBhbmljX2hhbmRsZXI6OlN0YXRpY1N0clBheWxvYWQgYXMgY29yZVtjNTkzMGM4NWExMmRlODIyXTo6cGFuaWM6OlBhbmljUGF5bG9hZD46OnRha2VfYm94Tixjb3JlW2M1OTMwYzg1YTEyZGU4MjJdOjpwYW5pY2tpbmc6OnBhbmljX2ZtdE8RX193YmluZGdlbl9tYWxsb2NQczxzdGRbYTU0Mzk5NmU2ZTdkYmYxZV06OnBhbmlja2luZzo6cGFuaWNfaGFuZGxlcjo6Rm9ybWF0U3RyaW5nUGF5bG9hZCBhcyBjb3JlW2M1OTMwYzg1YTEyZGU4MjJdOjpmbXQ6OkRpc3BsYXk+OjpmbXRRRDxjb3JlW2M1OTMwYzg1YTEyZGU4MjJdOjpmbXQ6OkZvcm1hdHRlcj46OnBhZF9pbnRlZ3JhbDo6d3JpdGVfcHJlZml4UiFzYW1wbGVfYWdncmVnYXRlcyBtdWx0aXZhbHVlIHNoaW1TImZpbmRfdmlzaWJsZV9yYW5nZSBtdWx0aXZhbHVlIHNoaW1UHnNhbXBsZV9pbmRleGVzIG11bHRpdmFsdWUgc2hpbVUmc2FtcGxlX2RhdGFzZXRfaW5kZXhlcyBtdWx0aXZhbHVlIHNoaW1WJ3JlZ2lzdGVyX3NhbXBsZV9kYXRhc2V0IG11bHRpdmFsdWUgc2hpbVcpc2FtcGxlX2RhdGFzZXRfYWdncmVnYXRlcyBtdWx0aXZhbHVlIHNoaW1YGl9fd2JpbmRnZW5fZGVzdHJveV9jbG9zdXJlWR9jYWxjdWxhdGVfcmFuZ2UgbXVsdGl2YWx1ZSBzaGltWl48c3RkW2E1NDM5OTZlNmU3ZGJmMWVdOjp0aHJlYWQ6OmxvY2FsOjpBY2Nlc3NFcnJvciBhcyBjb3JlW2M1OTMwYzg1YTEyZGU4MjJdOjpmbXQ6OkRlYnVnPjo6Zm10Wz9jb3JlW2M1OTMwYzg1YTEyZGU4MjJdOjpzbGljZTo6c29ydDo6c3RhYmxlOjpkcmlmdDo6c3FydF9hcHByb3hcIHJlZ2lzdGVyX2RhdGFzZXQgbXVsdGl2YWx1ZSBzaGltXThzdGRbYTU0Mzk5NmU2ZTdkYmYxZV06OnRocmVhZDo6bG9jYWw6OnBhbmljX2FjY2Vzc19lcnJvcl40Y29yZVtjNTkzMGM4NWExMmRlODIyXTo6Y2VsbDo6cGFuaWNfYWxyZWFkeV9ib3Jyb3dlZF88Y29yZVtjNTkzMGM4NWExMmRlODIyXTo6Y2VsbDo6cGFuaWNfYWxyZWFkeV9tdXRhYmx5X2JvcnJvd2VkYCxfX3J1c3RjW2I3OTc0ZTg2OTA0MzBkZDldOjpydXN0X2JlZ2luX3Vud2luZGE2PGNvcmVbYzU5MzBjODVhMTJkZTgyMl06OmZtdDo6Rm9ybWF0dGVyPjo6ZGVidWdfc3RydWN0YiZzdGRbYTU0Mzk5NmU2ZTdkYmYxZV06OmFsbG9jOjpydXN0X29vbWMuYWxsb2NbM2NhNTAxZWRmZjNmMGM3Y106OmJveGVkOjpib3hfbmV3X3VuaW5pdGRyY29yZVtjNTkzMGM4NWExMmRlODIyXTo6cHRyOjpkcm9wX2luX3BsYWNlOjo8c3RkW2E1NDM5OTZlNmU3ZGJmMWVdOjpwYW5pY2tpbmc6OnBhbmljX2hhbmRsZXI6OkZvcm1hdFN0cmluZ1BheWxvYWQ+ZTNzdGRbYTU0Mzk5NmU2ZTdkYmYxZV06OmFsbG9jOjpydXN0X29vbTo6e2Nsb3N1cmUjMH1me2NvcmVbYzU5MzBjODVhMTJkZTgyMl06OnB0cjo6ZHJvcF9pbl9wbGFjZTo6PGNvcmVbYzU5MzBjODVhMTJkZTgyMl06Om9wdGlvbjo6T3B0aW9uPGFsbG9jWzNjYTUwMWVkZmYzZjBjN2NdOjp2ZWM6OlZlYzx1OD4+PmdVY29yZVtjNTkzMGM4NWExMmRlODIyXTo6cHRyOjpkcm9wX2luX3BsYWNlOjo8YWxsb2NbM2NhNTAxZWRmZjNmMGM3Y106OnN0cmluZzo6U3RyaW5nPmgmX19ydXN0Y1tiNzk3NGU4NjkwNDMwZGQ5XTo6X19yZGxfYWxsb2NpBGZtYXhqBGZtaW5rLmFsbG9jWzNjYTUwMWVkZmYzZjBjN2NdOjpyYXdfdmVjOjpoYW5kbGVfZXJyb3JsKGNvcmVbYzU5MzBjODVhMTJkZTgyMl06OnBhbmlja2luZzo6cGFuaWNtJ1JlZihTdHJpbmcpIC0+IEV4dGVybnJlZiBleHRlcm5yZWYgc2hpbW4PX193YmluZGdlbl9mcmVlb1Y8YWxsb2NbM2NhNTAxZWRmZjNmMGM3Y106OnN0cmluZzo6U3RyaW5nIGFzIGNvcmVbYzU5MzBjODVhMTJkZTgyMl06OmFueTo6QW55Pjo6dHlwZV9pZHAzPCZzdHIgYXMgY29yZVtjNTkzMGM4NWExMmRlODIyXTo6YW55OjpBbnk+Ojp0eXBlX2lkcTM8Y29yZVtjNTkzMGM4NWExMmRlODIyXTo6Zm10OjpGb3JtYXR0ZXI+Ojp3cml0ZV9zdHJyKV9fcnVzdGNbYjc5NzRlODY5MDQzMGRkOV06Ol9fcnVzdF9yZWFsbG9jcxRfX3diaW5kZ2VuX2V4bl9zdG9yZXR3PHN0ZFthNTQzOTk2ZTZlN2RiZjFlXTo6cGFuaWNraW5nOjpwYW5pY19oYW5kbGVyOjpTdGF0aWNTdHJQYXlsb2FkIGFzIGNvcmVbYzU5MzBjODVhMTJkZTgyMl06OnBhbmljOjpQYW5pY1BheWxvYWQ+OjpnZXR1cDxzdGRbYTU0Mzk5NmU2ZTdkYmYxZV06OnBhbmlja2luZzo6cGFuaWNfaGFuZGxlcjo6U3RhdGljU3RyUGF5bG9hZCBhcyBjb3JlW2M1OTMwYzg1YTEyZGU4MjJdOjpmbXQ6OkRpc3BsYXk+OjpmbXR2KV9fcnVzdGNbYjc5NzRlODY5MDQzMGRkOV06Ol9fcnVzdF9kZWFsbG9jdyVfX3J1c3RjW2I3OTc0ZTg2OTA0MzBkZDldOjpydXN0X3BhbmljeFo8YWxsb2NbM2NhNTAxZWRmZjNmMGM3Y106OnN0cmluZzo6U3RyaW5nIGFzIGNvcmVbYzU5MzBjODVhMTJkZTgyMl06OmZtdDo6V3JpdGU+Ojp3cml0ZV9mbXR5M2FsbG9jWzNjYTUwMWVkZmYzZjBjN2NdOjpyYXdfdmVjOjpjYXBhY2l0eV9vdmVyZmxvd3otY29yZVtjNTkzMGM4NWExMmRlODIyXTo6b3B0aW9uOjp1bndyYXBfZmFpbGVke0djb3JlW2M1OTMwYzg1YTEyZGU4MjJdOjpwYW5pY2tpbmc6OnBhbmljX2NvbnN0OjpwYW5pY19jb25zdF9yZW1fYnlfemVyb3xOY29yZVtjNTkzMGM4NWExMmRlODIyXTo6c2xpY2U6OnNvcnQ6OnNoYXJlZDo6c21hbGxzb3J0OjpwYW5pY19vbl9vcmRfdmlvbGF0aW9ufSdfX3J1c3RjW2I3OTc0ZTg2OTA0MzBkZDldOjpfX3J1c3RfYWxsb2N+Ll9fcnVzdGNbYjc5NzRlODY5MDQzMGRkOV06Ol9fcnVzdF9hbGxvY196ZXJvZWR/NV9fcnVzdGNbYjc5NzRlODY5MDQzMGRkOV06Ol9fcnVzdF9hbGxvY19lcnJvcl9oYW5kbGVygAF6PHN0ZFthNTQzOTk2ZTZlN2RiZjFlXTo6cGFuaWNraW5nOjpwYW5pY19oYW5kbGVyOjpTdGF0aWNTdHJQYXlsb2FkIGFzIGNvcmVbYzU5MzBjODVhMTJkZTgyMl06OnBhbmljOjpQYW5pY1BheWxvYWQ+Ojphc19zdHKBATJhbGxvY1szY2E1MDFlZGZmM2YwYzdjXTo6YWxsb2M6OmhhbmRsZV9hbGxvY19lcnJvcoIBWzxjb3JlW2M1OTMwYzg1YTEyZGU4MjJdOjpjZWxsOjpCb3Jyb3dNdXRFcnJvciBhcyBjb3JlW2M1OTMwYzg1YTEyZGU4MjJdOjpmbXQ6OkRpc3BsYXk+OjpmbXSDAVg8Y29yZVtjNTkzMGM4NWExMmRlODIyXTo6Y2VsbDo6Qm9ycm93RXJyb3IgYXMgY29yZVtjNTkzMGM4NWExMmRlODIyXTo6Zm10OjpEaXNwbGF5Pjo6Zm10hAF7c3RkW2E1NDM5OTZlNmU3ZGJmMWVdOjpzeXM6OmJhY2t0cmFjZTo6X19ydXN0X2VuZF9zaG9ydF9iYWNrdHJhY2U6OjxzdGRbYTU0Mzk5NmU2ZTdkYmYxZV06OmFsbG9jOjpydXN0X29vbTo6e2Nsb3N1cmUjMH0sICE+hQGEAXN0ZFthNTQzOTk2ZTZlN2RiZjFlXTo6c3lzOjpiYWNrdHJhY2U6Ol9fcnVzdF9lbmRfc2hvcnRfYmFja3RyYWNlOjo8c3RkW2E1NDM5OTZlNmU3ZGJmMWVdOjpwYW5pY2tpbmc6OnBhbmljX2hhbmRsZXI6OntjbG9zdXJlIzB9LCAhPoYBNnN0ZFthNTQzOTk2ZTZlN2RiZjFlXTo6YWxsb2M6OmRlZmF1bHRfYWxsb2NfZXJyb3JfaG9va4cBdTxzdGRbYTU0Mzk5NmU2ZTdkYmYxZV06OnBhbmlja2luZzo6YmVnaW5fcGFuaWM6OlBheWxvYWQ8JnN0cj4gYXMgY29yZVtjNTkzMGM4NWExMmRlODIyXTo6cGFuaWM6OlBhbmljUGF5bG9hZD46OmFzX3N0cogBLV9fcnVzdGNbYjc5NzRlODY5MDQzMGRkOV06Ol9fcnVzdF9zdGFydF9wYW5pY4kBOWNvcmU6Om9wczo6ZnVuY3Rpb246OkZuT25jZTo6Y2FsbF9vbmNlOjpoNzhhOGY4NDc3NzM3N2ZmMIoBPl9fcnVzdGNbYjc5NzRlODY5MDQzMGRkOV06Ol9fcnVzdF9ub19hbGxvY19zaGltX2lzX3Vuc3RhYmxlX3YyiwEnX19ydXN0Y1tiNzk3NGU4NjkwNDMwZGQ5XTo6X19ydXN0X2Fib3J0BRgBARVfX3diaW5kZ2VuX2V4dGVybnJlZnMHEgEAD19fc3RhY2tfcG9pbnRlcgkRAgAHLnJvZGF0YQEFLmRhdGEAfAlwcm9kdWNlcnMCCGxhbmd1YWdlAQRSdXN0AAxwcm9jZXNzZWQtYnkDBXJ1c3RjHTEuOTUuMCAoNTk4MDc2MTZlIDIwMjYtMDQtMTQpBndhbHJ1cwYwLjI2LjEMd2FzbS1iaW5kZ2VuEzAuMi4xMTggKDc1M2JiN2ZmNCkAlAEPdGFyZ2V0X2ZlYXR1cmVzCCsLYnVsay1tZW1vcnkrD2J1bGstbWVtb3J5LW9wdCsWY2FsbC1pbmRpcmVjdC1vdmVybG9uZysKbXVsdGl2YWx1ZSsPbXV0YWJsZS1nbG9iYWxzKxNub250cmFwcGluZy1mcHRvaW50Kw9yZWZlcmVuY2UtdHlwZXMrCHNpZ24tZXh0",""+{}.url));const t={__proto__:null,"./waveform_sampling_wasm_bg.js":{__proto__:null,__wbindgen_cast_0000000000000001:function(e,t){return A=e,function(e,t){return(Oe+=t)>=2146435072&&((Le=new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0})).decode(),Oe=t),Le.decode((null!==Te&&0!==Te.byteLength||(Te=new Uint8Array(Ve.memory.buffer)),Te).subarray(e,e+t))}(A>>>=0,t);var A},__wbindgen_init_externref_table:function(){const e=Ve.__wbindgen_externrefs,t=e.grow(4);e.set(0,void 0),e.set(t+0,void 0),e.set(t+1,null),e.set(t+2,!0),e.set(t+3,!1)}}};("string"==typeof e||"function"==typeof Request&&e instanceof Request||"function"==typeof URL&&e instanceof URL)&&(e=fetch(e));const{instance:A,module:n}=await async function(e,t){if("function"==typeof Response&&e instanceof Response){if("function"==typeof WebAssembly.instantiateStreaming)try{return await WebAssembly.instantiateStreaming(e,t)}catch(A){if(!e.ok||!function(e){switch(e){case"basic":case"cors":case"default":return!0}return!1}(e.type)||"application/wasm"===e.headers.get("Content-Type"))throw A;console.warn("`WebAssembly.instantiateStreaming` failed because your server does not serve Wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\n",A)}const n=await e.arrayBuffer();return await WebAssembly.instantiate(n,t)}{const A=await WebAssembly.instantiate(e,t);return A instanceof WebAssembly.Instance?{instance:A,module:e}:A}}(await e,t);return function(e){return Ve=e.exports,Ye=null,Re=null,Te=null,Ve.__wbindgen_start(),Ve}(A)}(e)).then(()=>{}),We}var Pe=new WeakMap,qe=new WeakSet,Ke=new WeakMap,_e=new WeakMap,$e=new WeakMap;function et(e,t,A){let n=Ke.get(e);n||Ke.set(e,n=new WeakMap);let i=n.get(t);i||(i=Object.fromEntries(Object.entries(t).map(([e,t])=>[e,t.map(e=>new Array(e.length))])),n.set(t,i));for(const a of Object.keys(t)){const n=e[a],o=t[a],r=i[a];for(let e=0;e<o.length;e++)for(let t=0;t<o[e].length;t++){const i=0===A?n[e][t]:1===A?o[e][t]:(1-A)*n[e][t]+A*o[e][t];if(!Number.isFinite(i))throw new RangeError("Nonfinite presentation geometry");r[e][t]=i}}return qe.add(i),i}function tt(e,A,n,i){if(!e.length||"none"===A)return null;let a=$e.get(e);return a||$e.set(e,a=function(e,A){let n,i=e,a=A,o=new Uint8Array(1024),r=0;const s=e=>{if(r+e.length>o.length){const t=new Uint8Array(Math.max(2*o.length,r+e.length));t.set(o),o=t}for(let t=0;t<e.length;t++)o[r++]=e.charCodeAt(t)},l=e=>s(String(Math.round(1e3*e)/1e3)),g=(e,t,A)=>{s(e),l(t),s(","),l(A)},c=(0,t.line)().x(e=>i(e.x)).y(e=>a(e.y)).context({moveTo:(e,t)=>g("M",e,t),lineTo:(e,t)=>g("L",e,t),closePath:()=>s("Z")});return(e,A,s,l)=>(i=s,a=l,n!==A&&(c.curve("step-start"===A?t.curveStepBefore:"step-middle"===A?t.curveStep:"step-end"===A||"step-after"===A?t.curveStepAfter:t.curveLinear),n=A),r=0,c(e),(Xe??=new TextDecoder).decode(o.subarray(0,r)))}(n,i)),a(e,A,n,i)}function At(e){return e.map(e=>{const t=ge(e);return[e.x,e.y,t.lower,t.upper]})}function nt(e,t){let A=_e.get(e);if(!A){let t,n,i;A={get line(){return t??=At(e.lineRenderPoints??[])},get points(){return n??=At(e.pointRenderPoints)},get errors(){return i??=At(e.errorBarRenderPoints)}},_e.set(e,A)}return Pe.set(A,{path:e,x:t,y:e.yScale,result:e}),A}function it(e,t=[]){for(let A=0;A<e.length;A++){const n=t[A]??(t[A]={x:NaN,y:NaN,lowerError:NaN,upperError:NaN}),i=e[A];n.x=i[0],n.y=i[1],n.lowerError=i[2],n.upperError=i[3]}return t.length=e.length,t}function at(e,t,A,n){const i=Pe.get(t);if(!qe.has(t)&&i?.path===e&&i.x===A&&i.y===n)return i.result;const a=i?.path===e&&i.result!==e?i.result:void 0,o=it(t.line,a?.lineRenderPoints),r={...e,lineRenderPoints:o,path:tt(o,e.series.lineType,A,n),pointRenderPoints:it(t.points,a?.pointRenderPoints),errorBarRenderPoints:it(t.errors,a?.errorBarRenderPoints),yScale:n};return Pe.set(t,{path:e,x:A,y:n,result:r}),qe.delete(t),r}function ot(e,t,A,n){return e.series.lineType===t.series.lineType&&e.series.pointType===t.series.pointType&&e.series.errorBar.visible===t.series.errorBar.visible&&["line","points","errors"].every(e=>{const t=A[e],i=n[e];return t.length===i.length&&t.every((e,t)=>e[0]===i[t][0])})}function rt(e,t){const A=e.domain();return A[0]===t[0]&&A[1]===t[1]?e:e.copy().domain(t)}function st(e,t,A,n=!1){const i=new Map;for(const a of t){const t=e.seriesList.find(e=>e.id===a.seriesId);if(!t||0===(t.source?.length??t.points.length))continue;const o=A?.anchors.get(a.id),r=n?t.source?.nearestPoint(a.x):void 0;n&&!r||i.set(a.id,{seriesId:t.id,annotationY:a.y,x:a.x,y:r?.y??(o?.x===a.x&&o.annotationY===a.y?o.y:a.y)})}return{target:e,series:new Map(e.seriesPaths.map(t=>[t.series.id,{path:t,values:nt(t,e.xScale),opacity:1}])),xDomain:e.xScale.domain(),yDomains:e.yAxes.map(e=>e.scale.domain()),anchors:i,clips:new Map}}function lt(e,t,A){if(!J(t))return e;const n=c(e,t,D(A));return J(n)?n:t}function gt(e){return[...e.series.values()].some(e=>!!e.old)}function ct(e,t,A,n){if(n)return t;const i=new Map;for(const[o,r]of t.series){const t=e.series.get(o);if(!t){i.set(o,r);continue}const n=ot(t.path,r.path,t.values,r.values);i.set(o,n?{...r,values:et(t.values,r.values,A)}:{...r,old:{path:t.path,values:t.values},opacity:D(A)})}const a=new Map;for(const[o,r]of t.anchors){const t=e.anchors.get(o);a.set(o,t&&!i.get(r.seriesId)?.old?{seriesId:r.seriesId,annotationY:r.annotationY,x:(1-A)*t.x+A*r.x,y:(1-A)*t.y+A*r.y}:r)}return{...t,series:i,anchors:a,xDomain:lt(e.xDomain,t.xDomain,A),yDomains:t.yDomains.map((t,n)=>lt(e.yDomains[n]??t,t,A)),clips:t.clips}}var dt,It="#1677ff",ut="12px Arial, sans-serif";function mt(e){return"object"==typeof(t=e)&&null!==t&&"pointAt"in t&&"visibleRange"in t?e:ie(e);var t}function ht(e,t,A,n){return e.flatMap(e=>{if("none"===e.series.lineType){const t=function(e,t,A){let n=null;const i=e.series.source??ie(e.series.points);for(let a=0;a<i.length;a+=1){const o=i.pointAt(a);if(!Number.isFinite(o.x)||!Number.isFinite(o.y))continue;const r=e.xScale(o.x),s=e.top+e.yScale(o.y),l=Math.hypot(r-t,s-A);(!n||l<n.distance)&&(n={point:o,screenX:r,screenY:s,distance:l})}return n}(e,A,n);return t?[{trackIndex:e.index,seriesId:e.series.id,name:e.series.name?.trim()||e.series.id,color:e.series.color||It,unit:e.series.unit,...t}]:[]}const i=function(e,t,A="linear"){const n=mt(e);if(!n.length||!Number.isFinite(t))return null;const i=n.pointAt(0),a=n.pointAt(n.length-1);if(t<i.x||t>a.x)return null;if(1===n.length)return t===i.x?{...i}:null;const o=n.visibleRange([t,t]).start,r=n.pointAt(Math.min(o,n.length-1));if(r.x===t||0===o)return{x:t,y:r.y};if("none"===A)return null;const s=n.pointAt(o-1);if("step-start"===A)return{x:t,y:r.y};if("step-middle"===A)return{x:t,y:t<(s.x+r.x)/2?s.y:r.y};if("step-end"===A||"step-after"===A)return{x:t,y:s.y};const l=r.x-s.x;if(0===l)return{x:t,y:r.y};const g=(t-s.x)/l;return{x:t,y:s.y+(r.y-s.y)*g}}(e.series.source??ie(e.series.points),t,e.series.lineType);if(!i)return[];const a=function(e,t){const A=mt(e);if(!A.length||!Number.isFinite(t))return null;const n=A.visibleRange([t,t]).start,i=A.pointAt(Math.min(n,A.length-1)),a=A.pointAt(Math.max(0,n-1));return Math.abs(t-a.x)<Math.abs(i.x-t)?a:i}(e.series.source??ie(e.series.points),t);if(!a)return[];const o=e.xScale(i.x),r=e.top+e.yScale(i.y),s=e.xScale(a.x),l=e.top+e.yScale(a.y);return[{trackIndex:e.index,seriesId:e.series.id,name:e.series.name?.trim()||e.series.id,color:e.series.color||It,unit:e.series.unit,point:a,screenX:s,screenY:l,distance:Math.hypot(o-A,r-n)}]}).sort((e,t)=>e.distance-t.distance||e.trackIndex-t.trackIndex)}function Ct(e){return void 0===dt&&(dt=null,"undefined"!=typeof document&&"undefined"!=typeof CanvasRenderingContext2D&&(dt=document.createElement("canvas").getContext("2d"))&&(dt.font=ut)),dt?.measureText(e).width??function(e){return Array.from(e).reduce((e,t)=>e+(t.codePointAt(0)>255?12:6.7),0)}(e)}function Qt(e){return{borderColor:e?.borderColor||It,textColor:e?.textColor||"#333333",backgroundColor:e?.backgroundColor||"rgba(255, 255, 255, 0.92)"}}function Bt(e,t){return e>=Math.min(t[0],t[1])&&e<=Math.max(t[0],t[1])}function Et(e,t,A,n,i,a,o){const r=pt(e,t,A,n,i);return r.x>=0&&r.y>=0&&r.x+A<=a&&r.y+n<=o}function pt(e,t,A,n,i){const a=e-A/2,o=t-n/2,r=e+32,s=e-A-32,l=t-n-32,g=t+32;switch(i){case"top":return{x:a,y:l};case"bottom":return{x:a,y:g};case"right":return{x:r,y:o};case"left":return{x:s,y:o};case"top-right":return{x:r,y:l};case"top-left":return{x:s,y:l};case"bottom-right":return{x:r,y:g};case"bottom-left":return{x:s,y:g}}}function ft(e,t,A){return{width:Math.min(t,Math.max(16,Math.min(240,Math.ceil(Math.max(...e.map(Ct),0))+16))),height:Math.min(A,Math.max(26,16*(e.length-1)+14+16))}}function yt(e,t,A,n){const i=[];return e.forEach(e=>{if(!function(e){return Boolean(e.id&&e.seriesId)&&Number.isFinite(e.x)&&Number.isFinite(e.y)&&"string"==typeof e.text&&e.text.trim().length>0}(e))return;const a=t.find(t=>t.series.id===e.seriesId);if(!a)return;const o=a.xScale.domain(),r=a.yScale.domain();if(!Bt(e.x,o)||!Bt(e.y,r))return;const s=function(e,t=10){const A=[];return e.split(/\r?\n/).forEach(e=>{const n=Array.from(e);if(0!==n.length)for(let i=0;i<n.length;i+=t)A.push(n.slice(i,i+t).join(""));else A.push("")}),A.length?A:[""]}(e.text),l=a.left??0,g=a.width??A,c=a.xScale(e.x),d=l+c,I=a.yScale(e.y)+a.top,u=Math.min(a.height,Math.max(0,n-a.top)),m=I-a.top,h=Number.isFinite(e.labelOffsetX)&&0!==e.labelOffsetX||Number.isFinite(e.labelOffsetY)&&0!==e.labelOffsetY,{width:C,height:Q}=ft(s,g,u),B=h?"top":function(e,t,A,n,i,a){for(const o of["top","bottom","right","left","top-right","top-left","bottom-right","bottom-left"])if(Et(e,t,A,n,o,i,a))return o;return"top"}(c,m,C,Q,g,u),E=function(e,t,A,n,i,a,o=0,r=0){const{width:s,height:l}=ft(A,n,i),g=pt(e,t,s,l,a),c=function(e,t,A){const n=Math.max(0,Math.min(e.x,Math.max(0,t-e.width))),i=Math.max(0,Math.min(e.y,Math.max(0,A-e.height)));return{...e,x:n,y:i,lineEndX:Math.max(n,Math.min(e.lineEndX,n+e.width)),lineEndY:Math.max(i,Math.min(e.lineEndY,i+e.height))}}({x:g.x+o,y:g.y+r,width:s,height:l,lineEndX:e,lineEndY:t},n,i),d=function(e,t,A){const n=e.x+e.width/2,i=e.y+e.height/2,a=t-n,o=A-i;if(Math.abs(a)*e.height>Math.abs(o)*e.width){const t=a>=0?e.x+e.width:e.x,A=0===a?0:(t-n)/a;return{x:t,y:Math.max(e.y,Math.min(e.y+e.height,i+o*A))}}const r=o>=0?e.y+e.height:e.y,s=0===o?0:(r-i)/o;return{x:Math.max(e.x,Math.min(e.x+e.width,n+a*s)),y:r}}(c,e,t);return{...c,lineEndX:d.x,lineEndY:d.y}}(c,m,s,g,u,B,Number.isFinite(e.labelOffsetX)?e.labelOffsetX:0,Number.isFinite(e.labelOffsetY)?e.labelOffsetY:0),p={...E,x:E.x+l,y:E.y+a.top,lineEndX:E.lineEndX+l,lineEndY:E.lineEndY+a.top};i.push({annotation:e,trackIndex:a.index,anchorX:d,anchorY:I,placement:B,lines:s,box:{...p},style:Qt(e.style)})}),i}var vt=0;function wt(t="waveform"){const A=(0,e.getCurrentInstance)();return`${t}-${A?`v${A.uid}`:"f"+ ++vt}`}function kt(e,t){if(!1===e)return 0;const A=t??(!0===e?.1:0);return Number.isFinite(A)&&A>0?A:0}function xt(e,t){const A=e.seriesList.flatMap(e=>Number.isFinite(e.rawYMaximum)?[e.rawYMaximum]:[]),n=e.seriesList.flatMap(e=>Number.isFinite(e.rawYMinimum)?[e.rawYMinimum]:[]);return{...e,maximumTick:!1!==t?.maximumTickVisible&&A.length?Math.max(...A):void 0,minimumTick:!1!==t?.minimumTickVisible&&n.length?Math.min(...n):void 0}}function bt(e,t,A){return void 0!==A&&Number.isFinite(A)&&(e=[...e.filter(e=>!Mt(e,A)),A].sort((e,t)=>e-t)),void 0!==t&&Number.isFinite(t)?[...e.filter(e=>!Mt(e,t)),t].sort((e,t)=>e-t):e}function Mt(e,t){return Math.abs(e-t)<=8*Number.EPSILON*Math.max(Math.abs(e),Math.abs(t),Number.MIN_VALUE)}function Nt(e){if(0===e.length)return[0,1];const[A=0,n=1]=(0,t.extent)(e);if(A!==n)return[A,n];const i=.05*Math.abs(A)||.5;return[A-i,n+i]}function Dt(e,t=5,A){let n=e;if(A&&e.length>=2){const t=e[0],A=e[1],i=e[e.length-1],a=e[e.length-2];n=[t-(A-t),...e,i+(i-a)]}const i=n.flatMap((e,A)=>{const i=n[A+1];if(void 0===i)return[];const a=(i-e)/t;return Array.from({length:t-1},(t,A)=>e+a*(A+1))});if(!A)return i;const a=Math.min(...A),o=Math.max(...A);return i.filter(e=>e>a&&e<o)}var St=new Intl.NumberFormat("zh-CN",{maximumFractionDigits:4}),Ft=new Intl.NumberFormat("zh-CN",{maximumFractionDigits:4});function Gt(e,t){if("number"!=typeof e||"number"!=typeof t)return null;const A=Math.max(Math.abs(e),Math.abs(t));return function(e){const t=Math.abs(e);return Number.isFinite(t)&&(t>=1e3||t>0&&t<=.001)}(A)?Math.floor(Math.log10(A)):null}function Yt(e){return`E${e>=0?"+":"-"}${Math.abs(e).toString().padStart(2,"0")}`}function Jt(e,t){const A=Gt(e,t);return null===A?null:Yt(A)}function Rt(e){return Number.isFinite(e)?Object.is(e,-0)?"0":Ft.format(e):String(e)}function Tt(e){if(!Number.isFinite(e))return String(e);if(Object.is(e,-0))return"0";const[t,A]=e.toExponential().split("e"),n=Number(A),i=t.startsWith("-"),a=t.replace("-","").replace(".",""),o=n+1;let r;return r=o<=0?`0.${"0".repeat(Math.abs(o))}${a}`:o>=a.length?`${a}${"0".repeat(o-a.length)}`:`${a.slice(0,o)}.${a.slice(o)}`,`${i?"-":""}${r}`}function Zt(e,t){return"ms"===t?1e3*e:e}function Ut(e,t,A,n,i){const a=Zt(e,A);return i?i(a,{kind:n,rawValue:e,timeUnit:A,domain:[t[0],t[1]],displayDomain:[Zt(t[0],A),Zt(t[1],A)]}):Tt(a)}function Lt(e,t){return Rt(Zt(e,t))}function Vt(e){if(e&&Number.isFinite(e[0])&&Number.isFinite(e[1])&&e[0]!==e[1])return e[0]<e[1]?[e[0],e[1]]:[e[1],e[0]]}function Ot(e,t){return Vt(t?.[e.id])}function jt(e,t,A){return Vt(A?.[e.id])??Vt(t)}function Wt(e){const t=e?.fontSize;return"number"==typeof t&&Number.isFinite(t)&&t>0?t:12}function Xt(e){return Wt(e)+8}var Ht=(e,t)=>{const A="number"==typeof e?e:Number(e);return Number.isFinite(A)?Math.min(10,Math.max(1,Math.floor(A))):t},zt=e=>{if(!Array.isArray(e))return[];const t=e.filter(e=>"string"==typeof e).map(e=>e.trim()).filter(Boolean);return Array.from(new Set(t))};function Pt(e){return e.rowCount*e.columnCount}function qt(e,t){return Math.max(1,Math.ceil(Math.max(0,e)/Pt(t)))}function Kt(e){return"compact"===e?0:"separated"===e?16:14}var _t,$t=1e3;function eA(e,A,n=!1){if(n&&!A.includeExplicit)return[...e];if("integer-ms"===A.type){const A=e[0]*$t,n=e[1]*$t;if(!Number.isSafeInteger(Math.ceil(Math.abs(A)))||!Number.isSafeInteger(Math.ceil(Math.abs(n)))||n-A<1)return[...e];const i=n-A>=100?Math.max(10,(0,t.tickStep)(A,n,10)/10):1;return[Math.floor(A/i)*i/$t,Math.ceil(n/i)*i/$t]}if("nice"!==A.type)return[...e];const i=(0,t.scaleLinear)().domain(e).nice((a=A.tickCount,!Number.isFinite(a)||(a??0)<1?10:Math.max(1,Math.trunc(a)))).domain();var a;return"end"===A.bounds?[e[0],i[1]]:i}function tA(e,t){const A=e.seriesList[0],n=e.tickValues.map(n=>{const i=cA(n,e.scale.domain(),e.tickValues,!1===t.showUnits?void 0:A?.unit);return t.measureTextWidth?.(i)??7*i.length});return Math.max(7,...n)+7+Xt(t.labelTextStyle)/2}function AA(e){void 0===_t&&(_t="undefined"!=typeof document&&"undefined"!=typeof CanvasRenderingContext2D?document.createElement("canvas").getContext("2d"):null)&&(_t.font="700 11px sans-serif");const t=_t?_t.measureText(e).width:[...e].reduce((e,t)=>e+(/[0-9]/.test(t)?6.2:"."===t?3.1:7),0);return Math.ceil(t)}function nA(e){return String(Math.round(e))}function iA(e){const t=Math.round(e);return Math.abs(e-t)<=Number.EPSILON*Math.max(1,Math.abs(e))*16?t:e}function aA(e,t){if(!t.integerZoom)return e;const A="s"===t.timeUnit?1:1e3,n=iA(Math.min(e[0],e[1])*A),i=iA(Math.max(e[0],e[1])*A);if(!Number.isSafeInteger(Math.floor(n))||!Number.isSafeInteger(Math.ceil(i)))return e;const a=Math.floor(n);return[a/A,Math.max(a+1,Math.ceil(i))/A]}function oA(e,t){return aA(e,t)}var rA=7;function sA(e,t){return"number"==typeof t&&Number.isFinite(t)?Math.max(2,Math.floor(t)):5}function lA(e,t=5,A=!0){if(!A){const A="number"==typeof t&&Number.isFinite(t)?Math.max(2,Math.floor(t)):5,[n,i]=e;return{domain:e,values:Array.from({length:A},(e,t)=>n+(i-n)*t/(A-1))}}return function(e,t=5){const A=function(e,t,A=5){if(!Number.isFinite(e)||!Number.isFinite(t))return{niceMin:0,niceMax:1,tickSpacing:1,ticks:[0,1]};if(e===t){if(0===e)return{niceMin:-1,niceMax:1,tickSpacing:.5,ticks:[-1,-.5,0,.5,1]};const t=e,A=.2*Math.abs(t);return{niceMin:t-A,niceMax:t+A,tickSpacing:A,ticks:[t-A,t,t+A]}}e>t&&([e,t]=[t,e]);const n=function(e){if(0===e)return 0;const t=Math.floor(Math.log10(Math.abs(e))),A=Math.abs(e)/Math.pow(10,t);let n;return n=A<1.5?1:A<3?2:A<7?5:10,n*Math.pow(10,t)*Math.sign(e)}((t-e)/Math.max(1,A-1)),i=Math.floor(e/n)*n,a=Math.ceil(t/n)*n,o=[],r=Math.round((a-i)/n)+1;if(r>100){const n=Math.min(A+2,10),i=(t-e)/(n-1);for(let t=0;t<n;t++)o.push(e+i*t);return{niceMin:e,niceMax:t,tickSpacing:i,ticks:o}}for(let s=0;s<r;s++){const e=i+n*s,t=Math.max(0,1-Math.floor(Math.log10(Math.abs(n)))),A=Number(e.toFixed(t));o.push(A)}return{niceMin:Math.min(e,o[0]??i),niceMax:Math.max(t,o.at(-1)??a),tickSpacing:n,ticks:o}}(e[0],e[1],t);return{domain:[A.niceMin,A.niceMax],values:A.ticks}}(e,t)}function gA(e,t,A,n,i="left"){const a=Math.max(...A),o="right"===i&&e===a,r=function(e,t={}){if(!Number.isFinite(e))return String(e);const A=Gt(t.axisMin,t.axisMax),n=function(e){if(Object.is(e,-0))return"0";const t=0===e?0:Number(e.toPrecision(5)),A=St.format(t);return"-0"===A?"0":A}(null===A?e:e/10**A);if(e!==(t.topTickValue??t.axisMax))return n;const i=t.unit?.trim(),a=null===A&&i?`(${i}) `:"";return`${null===A?"":`${Yt(A)} `}${a}${n}`}(e,{axisMin:t[0],axisMax:t[1],topTickValue:o?NaN:a,unit:o?void 0:n});if(o){const e=n?.trim(),A=Jt(...t);return[r,A,!A&&e?`(${e})`:null].filter(Boolean).join(" ")}return r}function cA(e,t,A,n){const i=gA(e,t,A,n),a=Jt(t[0],t[1]);return a&&i.startsWith(`${a} `)?i.slice(a.length+1):i}var dA=new WeakMap;function IA(e,t,A,n,i,a){const o=i?.[e.id];return function(e,t,A,n){const i=Ot(e,n);return function(e,t){let A=dA.get(e);A||(A=new Map,dA.set(e,A));const n=A.get(t);if(n)return n;const i="multi-axis"===t?Math.min(e.visibleSeries.length,4):Math.min(e.visibleSeries.length,1),a=function(e){return e>=4?["left","left","right","right"]:3===e?["left","right","right"]:2===e?["left","right"]:["left"]}(i),o=Array.from({length:i},(e,t)=>({index:t,side:a[t],seriesList:[],domain:[0,1],fixed:!1}));return e.visibleSeries.forEach((e,t)=>{o[Math.min(t,i-1)]?.seriesList.push(e)}),o.forEach(A=>{if("single-axis"===t)A.domain=e.yDomain;else{const t=A.seriesList.flatMap(e=>e.yDomain);A.domain=t.length>0?Nt(t):e.yDomain}}),A.set(t,o),o}(e,t).map(e=>{if(i)return{...e,domain:i,fixed:!0};const t=e.seriesList.map(e=>jt(e,A,n)??e.yDomain),a=e.seriesList.some(e=>jt(e,A,n));return a?{...e,domain:(o=t,[Math.min(...o.map(e=>e[0])),Math.max(...o.map(e=>e[1]))]),fixed:a}:e;var o})}(e.visibleSeries.length||!e.series.length?e:{...e,visibleSeries:e.series},t,A,n).map(t=>{const A=function(e,t,A){const n="number"==typeof A?{upperPaddingRatio:A}:A;if(e.fixed)return xt(e,n);const i=kt(n?.upperPaddingEnabled,n?.upperPaddingRatio),a=kt(n?.lowerPaddingEnabled,n?.lowerPaddingRatio),[o,r]=e.domain,s=r-o,l=a>0?o-s*a:o,g=i>0?r+s*i:r;return xt({...e,domain:t??[Number.isFinite(l)?l:o,Number.isFinite(g)?g:r]},n)}(t,o,a);return e.visibleSeries.length?A:{...A,maximumTick:void 0,minimumTick:void 0}})}function uA(e,t=!0,A,n,i=5,a=!1,o,r,s){const l=A?{domain:e,values:A}:lA(e,i,t),g=e=>void 0!==e&&e>=l.domain[0]&&e<=l.domain[1]?e:void 0,c=[bt(l.values,g(r),g(s))];a&&l.values.length>1&&c.push(l.values.slice(0,-1));const d=e=>o?o(e):e.length*rA,I=c.flatMap(e=>e.map(t=>({full:d(gA(t,l.domain,e,n)),title:d(cA(t,l.domain,e,n))})));return a&&c[0].forEach(e=>{I.push({full:d(gA(e,l.domain,[e],n)),title:d(cA(e,l.domain,[e],n))})}),{tickTextWidth:Math.max(rA,...I.map(e=>e.full)),titleTextWidth:Math.max(rA,...I.map(e=>e.title))}}var mA=new WeakMap;function hA(e,t,A){const n=null===A?null:String(A);e.getAttribute(t)!==n&&(null===n?e.removeAttribute(t):e.setAttribute(t,n))}function CA(e,A,n,i,a,o){const r=n.range(),s=mA.get(e),l=(0,t.select)(e);if(!s||s.ticks!==i||s.orientation!==a||r.some((e,t)=>e!==s.range[t]))l.call(A),mA.set(e,{ticks:i,range:r,orientation:a});else{const e="bottom"===a,t=A.offset();l.selectAll(".tick").each(function(A){hA(this,"transform",e?`translate(${n(A)+t},0)`:`translate(0,${n(A)+t})`)}).select("text").each(function(e){const t=o(e);this.textContent!==t&&(this.textContent=t)})}}function QA(e,t){return e.left<t.right&&t.left<e.right&&e.top<t.bottom+4&&t.top<e.bottom+4}function BA(e,t,A=1,n=1){return Math.abs(e-t)<(A+n)/2+1}function EA(e){hA(e,"display","none"),hA(e,"data-maximum-hidden","true")}var pA=new WeakSet;function fA(e){e.querySelectorAll("text[data-axis-maximum-label]").forEach(e=>{const t=e.parentElement.parentElement,A=[...t.querySelectorAll(".tick text")],n=e=>Number(e.parentElement.getAttribute("data-tick-value")),i=A.filter(e=>"none"!==e.getAttribute("display")).map(n),a=[Number(t.getAttribute("data-label-domain-min")),Number(t.getAttribute("data-label-domain-max"))];A.forEach(e=>{const A=gA(n(e),a,i,t.getAttribute("data-label-unit")??void 0,"right"===t.getAttribute("data-y-axis-side")?"right":"left");e.textContent!==A&&(e.textContent=A)})})}function yA(e){e.querySelectorAll("[data-maximum-hidden]").forEach(e=>{hA(e,"display",null),hA(e,"data-maximum-hidden",null)}),e.querySelectorAll(".waveform-track__axis--y .tick text").forEach(e=>{hA(e,"display",null)}),fA(e);const t=new Map,A=new Map,n=e=>(t.has(e)||t.set(e,function(e){const t=e.getBoundingClientRect();if(t.width&&t.height)return t;const A=Number.parseFloat(getComputedStyle(e).fontSize)||11,n=(e.textContent?.length??0)*A*.65;let i=Number(e.getAttribute("x"))||0,a=Number(e.getAttribute("y"))||0;for(let r=e.parentElement;r;r=r.parentElement){const e=r.getAttribute("transform")?.match(/translate\(([-\d.e+]+)[ ,]+([-\d.e+]+)\)/);e&&(i+=Number(e[1]),a+=Number(e[2]))}const o="start"===e.getAttribute("text-anchor");return{left:o?i:i-n,right:o?i+n:i,top:a-A/2,bottom:a+A/2}}(e)),t.get(e)),i=e=>(A.has(e)||A.set(e,function(e){return Number.parseFloat(getComputedStyle(e).strokeWidth)||1}(e)),A.get(e)),a=[...e.querySelectorAll("text[data-axis-minimum-label]")];e.querySelectorAll("text[data-axis-maximum-label]").forEach(e=>{const t=n(e);a.some(e=>QA(t,n(e)))&&EA(e)}),e.querySelectorAll(".waveform-track__axis--y .tick").forEach(e=>{const t=Number(e.getAttribute("data-tick-y")),A=Number(e.closest(".waveform-track")?.getAttribute("data-track-height")),n=e.querySelector("line");n&&hA(n,"display",Mt(t,0)||Mt(t,A)?"none":null)});const o=[...e.querySelectorAll(".tick[data-minimum-tick]")],r=[...e.querySelectorAll(".tick[data-maximum-tick]")],s=[...e.querySelectorAll(".waveform-track__axis--y .tick text")];o.forEach(e=>{const t=e.querySelector("text");t&&r.forEach(e=>{const A=e.querySelector("text");A&&A!==t&&QA(n(t),n(A))&&EA(A)})}),[...new Set([...o,...r])].forEach(e=>{const t=e.querySelector("text"),A=e.querySelector("line");if(!t||!A)return;const a=n(t);s.forEach(A=>{"none"!==t.getAttribute("display")&&"none"!==A.getAttribute("display")&&(A.parentElement?.matches("[data-minimum-tick], [data-maximum-tick]")||!e.hasAttribute("data-minimum-tick")&&A.hasAttribute("data-axis-minimum-label")||QA(a,n(A))&&EA(A))});const o=e.parentElement,r=Number(e.getAttribute("data-tick-value")),l=Number(e.getAttribute("data-tick-y"));o.querySelectorAll(".tick:not([data-maximum-tick]):not([data-minimum-tick])").forEach(e=>{const t=e.querySelector("line");t&&BA(l,Number(e.getAttribute("data-tick-y")),i(A),i(t))&&EA(t)}),"0"===o.getAttribute("data-y-axis-index")&&(o.closest(".waveform-track").querySelectorAll('[data-grid-direction="horizontal"]').forEach(e=>{const t=Number(e.getAttribute("y1"));BA(l,t,i(A),i(e))&&EA(e)}),e.hasAttribute("data-maximum-tick")&&hA(e,"data-maximum-value",r),e.hasAttribute("data-minimum-tick")&&hA(e,"data-minimum-value",r))}),fA(e)}var vA="http://www.w3.org/2000/svg";function wA(e,t={}){const A=document.createElementNS("http://www.w3.org/2000/svg",e);return Object.entries(t).forEach(([e,t])=>A.setAttribute(e,String(t))),A}var kA=["fill","fill-opacity","stroke","stroke-width","stroke-opacity","stroke-dasharray","stroke-linecap","stroke-linejoin","opacity","font-family","font-size","font-weight","font-style","text-decoration","letter-spacing","text-anchor","dominant-baseline","visibility","display"];function xA(e,t){const A=[e,...e.querySelectorAll("*")],n=[t,...t.querySelectorAll("*")];A.forEach((e,t)=>{const A=n[t],i=getComputedStyle(e);kA.forEach(e=>{const t=i.getPropertyValue(e);t&&A.style.setProperty(e,t)});for(const n of["clip-path","mask","filter"]){const e=A.getAttribute(n);e?.includes("#")&&A.setAttribute(n,`url(#${e.split("#")[1].replace(/[)'"].*$/,"")})`)}})}function bA(e){return Object.assign(new Error({"export-invalid-options":"图片导出参数无效","export-unavailable":"图表尚未具备有效尺寸","export-busy":"已有导出正在执行","export-cancelled":"图表已卸载,导出取消","export-render-failed":"图片编码失败","export-stale":"图表已变化,请重新导出","export-timeout":"等待图表稳定超时,请重试"}[e]),{code:e})}var MA=new WeakMap;function NA(e){return e[0]<=e[1]?[...e]:[e[1],e[0]]}function DA(e){return Number.isFinite(e)&&(e??0)>0?Math.ceil(e):0}function SA(e,t){const A=`${t[0]}\0${t[1]}`,n=MA.get(e)?.get(A);if(n)return n;const i=new Set;for(const r of e){const e=r.source??ie(r.points);for(let A=0;A<e.length;A+=1){const n=e.pointAt(A);n.x>=t[0]&&n.x<=t[1]&&i.add(n.x)}}const a=Array.from(i).sort((e,t)=>e-t),o=MA.get(e)??new Map;return o.set(A,a),MA.set(e,o),a}function FA(e,t,A){const n=aA(NA(e),A),i=n[1]-n[0];if(!Number.isFinite(i)||i<=0)return 0;const a=Number.isFinite(A.minZoomSpan)&&(A.minZoomSpan??0)>0?Math.min(i,A.minZoomSpan):0,o=DA(A.minVisiblePoints),r=function(e,t,A){if(A<=1)return 0;let n=0;for(const i of e){const e=SA(i,t);if(e.length<A)return t[1]-t[0];let a=Number.POSITIVE_INFINITY;for(let t=0;t+A<=e.length;t+=1)a=Math.min(a,e[t+A-1]-e[t]);const o=Number.EPSILON*Math.max(1,Math.abs(t[0]),Math.abs(t[1]))*16;n=Math.max(n,a+o)}return n}(t,n,o),s=Number(A.maxZoomScale),l=Number.isFinite(s)&&s>=1?i/s:null!==A.maxZoomScale&&0===a&&0===o?i/40:0,g=A.integerZoom?"s"===A.timeUnit?1:.001:0;return Math.max(a,r,l,g)}function GA(e,t,A,n){const i=aA(NA(t),n),a=i[1]-i[0];if(!Number.isFinite(a)||a<=0)return i;if(Math.abs(e[1]-e[0])>=.999999999999*a)return i;const o=function(e,t,A,n){if(n<=0)return e;const i=Number.EPSILON*Math.max(1,Math.abs(t[0]),Math.abs(t[1]))*16;let a=e;for(const o of A){const e=SA(o,t);if(e.length<n)return[...t];if(e.filter(e=>e>=a[0]&&e<=a[1]).length>=n)continue;let A,r=Number.POSITIVE_INFINITY,s=Number.POSITIVE_INFINITY;const l=(a[0]+a[1])/2;for(let o=0;o+n<=e.length;o+=1){const g=[Math.max(t[0],Math.min(a[0],e[o]-i)),Math.min(t[1],Math.max(a[1],e[o+n-1]+i))],c=g[1]-g[0],d=Math.abs((g[0]+g[1])/2-l);(c<r||c===r&&d<s)&&(A=g,r=c,s=d)}a=A??[...t]}return a}([Math.max(i[0],Math.min(e[0],e[1])),Math.min(i[1],Math.max(e[0],e[1]))],i,A,DA(n.minVisiblePoints)),r=FA(i,A,n),s=Math.max(r,Math.min(a,o[1]-o[0])),l=(o[0]+o[1])/2,g=Math.max(i[0],Math.min(l-s/2,i[1]-s));return aA([g,g+s],n)}function YA(e,A,n){const i=A[1]-A[0],a=e[1]-e[0];if(!Number.isFinite(i)||!Number.isFinite(a)||i<=0||a<=0)return t.zoomIdentity;const o=i/a,r=(0,t.scaleLinear)(A,[0,n]);return t.zoomIdentity.translate(-o*r(e[0]),0).scale(o)}function JA(e,t){const A=e[1]-e[0];return A>=t[1]-t[0]?[...t]:e[0]<t[0]?[t[0],t[0]+A]:e[1]>t[1]?[t[1]-A,t[1]]:e}function RA(e){const t=e.panXDomain;return t&&t.every(Number.isFinite)&&t[0]<t[1]?t:void 0}function TA(e,t,A,n){const i=RA(n);return i?JA(e,i):GA(e,t,A,n)}function ZA(e,t,A,n){const i=RA(n);return i?GA(e,i,[],{...n,minVisiblePoints:0,maxZoomScale:null,minZoomSpan:FA(t,A,n)}):GA(e,t,A,n)}var UA=(e,t)=>e.every((e,A)=>Math.abs(e-t[A])<1e-12),LA=["data-annotation-id","data-placement","data-leaving","opacity","onPointerdown","onContextmenu"],VA=["id"],OA=["fill"],jA=["x1","y1","x2","y2","stroke","marker-end"],WA=["transform"],XA=["x","y","width","height","fill","stroke"],HA=["x","y","fill"],zA=["x","dy"],PA=(0,e.defineComponent)({__name:"WaveformAnnotationLayer",props:{annotations:{},visible:{type:Boolean},interactive:{type:Boolean,default:!0},cancelKey:{},dataVersion:{}},emits:["contextmenu","drag-start","move","drag-end"],setup(t,{emit:A}){const n=t,i=A,a=(0,e.ref)(new Map),o=(0,e.ref)(null);let r=null,s=null,l=0;const g=(0,e.computed)(()=>{const e=new Map;return n.annotations.forEach(t=>{const A=a.value.get(t.annotation.id);A?e.set(t.annotation.id,{...t.box,x:t.box.x+A.x,y:t.box.y+A.y,lineEndX:t.box.lineEndX+A.x,lineEndY:t.box.lineEndY+A.y}):e.set(t.annotation.id,t.box)}),e});function c(e){return g.value.get(e.annotation.id)??e.box}function d(){s=null,r&&(a.value=new Map(a.value).set(r.annotationId,{x:r.deltaX,y:r.deltaY}))}function I(e){if(!n.interactive)return;if(e.stopPropagation(),!r||e.pointerId!==r.pointerId)return;const t=e.clientX-r.startX,A=e.clientY-r.startY;r.deltaX=t,r.deltaY=A,r.moved=r.moved||Math.hypot(t,A)>=2,r.moved&&null===s&&(s=requestAnimationFrame(d))}function u(e){if(!n.interactive)return;if(e.preventDefault(),e.stopPropagation(),!r||e.pointerId!==r.pointerId)return;const t=r,A=e.clientX-t.startX,g=e.clientY-t.startY;if(t.deltaX=A,t.deltaY=g,t.moved=Math.hypot(A,g)>=2,t.moved=t.moved||Math.hypot(A,g)>=2,null!==s&&(cancelAnimationFrame(s),s=null),t.moved){a.value=new Map(a.value).set(t.annotationId,{x:t.deltaX,y:t.deltaY});const A=t.initialOffsetX+t.deltaX,n=t.initialOffsetY+t.deltaY;o.value={annotationId:t.annotationId,x:A,y:n},r=null,l=e.timeStamp,i("move",t.annotationId,A,n)}else r=null;t.target.hasPointerCapture(t.pointerId)&&t.target.releasePointerCapture(t.pointerId),i("drag-end",!1)}function m(e){e.preventDefault(),e.stopPropagation(),r&&e.pointerId===r.pointerId&&h()}function h(){if(!r)return;const e=r;r=null,a.value=new Map(a.value).set(e.annotationId,{x:0,y:0}),null!==s&&(cancelAnimationFrame(s),s=null),e.target.hasPointerCapture(e.pointerId)&&e.target.releasePointerCapture(e.pointerId),i("drag-end",!0)}function C(e){const t=e.animationStyle;if(!t)return;const A=c(e),n=A.x+A.width/2,i=A.y+A.height/2;return`translate(${n},${i+t.offsetY}) scale(${t.scale}) translate(${-n},${-i})`}function Q(e){return`waveform-annotation-arrow-${e.replace(/[^a-zA-Z0-9_-]/g,"-")}`}return(0,e.watch)(()=>n.annotations,e=>{const t=o.value;if(!t)return;const A=e.find(e=>e.annotation.id===t.annotationId);if(!A)return;const n=Number.isFinite(A.annotation.labelOffsetX)?A.annotation.labelOffsetX:0,i=Number.isFinite(A.annotation.labelOffsetY)?A.annotation.labelOffsetY:0;n===t.x&&i===t.y&&(a.value=new Map(a.value).set(t.annotationId,{x:0,y:0}),o.value=null)}),(0,e.watch)(()=>n.interactive,e=>{e||h()}),(0,e.watch)([()=>n.cancelKey,()=>n.dataVersion,()=>n.visible],h),(0,e.onBeforeUnmount)(h),(t,A)=>n.visible?((0,e.openBlock)(),(0,e.createElementBlock)("g",{key:0,class:(0,e.normalizeClass)(["waveform-annotation-layer",{"waveform-annotation-layer--interactive":n.interactive}])},[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(n.annotations,t=>((0,e.openBlock)(),(0,e.createElementBlock)("g",{key:t.annotation.id,class:"waveform-annotation","data-annotation-id":t.annotation.id,"data-placement":t.placement,"data-leaving":t.leaving||void 0,style:(0,e.normalizeStyle)(t.leaving?{pointerEvents:"none"}:void 0),opacity:(t.animationStyle?.opacity??1)*(t.seriesOpacity??1),onPointerdown:e=>function(e,t){if(e.leaving||!n.interactive||0!==t.button||r)return;t.preventDefault(),t.stopPropagation();const A=t.currentTarget;if(!A||"function"!=typeof A.setPointerCapture)return;A.setPointerCapture(t.pointerId),i("drag-start");const o=a.value.get(e.annotation.id),s=(Number.isFinite(e.annotation.labelOffsetX)?e.annotation.labelOffsetX:0)+(o?.x??0),l=(Number.isFinite(e.annotation.labelOffsetY)?e.annotation.labelOffsetY:0)+(o?.y??0);r={annotationId:e.annotation.id,pointerId:t.pointerId,startX:t.clientX,startY:t.clientY,deltaX:0,deltaY:0,initialOffsetX:s,initialOffsetY:l,moved:!1,target:A}}(t,e),onPointermove:I,onPointerup:u,onPointercancel:m,onContextmenu:e=>{return A=t.annotation.id,a=e,void(n.interactive&&(a.preventDefault(),a.stopPropagation(),a.timeStamp-l<100||i("contextmenu",A,a)));var A,a}},[(0,e.createElementVNode)("defs",null,[(0,e.createElementVNode)("marker",{id:Q(t.annotation.id),markerWidth:"8",markerHeight:"8",refX:"8",refY:"4",orient:"auto",markerUnits:"userSpaceOnUse"},[(0,e.createElementVNode)("path",{d:"M0,0 L8,4 L0,8 Z",fill:t.style.borderColor},null,8,OA)],8,VA)]),(0,e.createElementVNode)("line",{class:"waveform-annotation__arrow",x1:c(t).lineEndX,y1:c(t).lineEndY,x2:t.anchorX,y2:t.anchorY,stroke:t.style.borderColor,"marker-end":`url(#${Q(t.annotation.id)})`},null,8,jA),(0,e.createElementVNode)("g",{transform:C(t)},[(0,e.createElementVNode)("rect",{class:"waveform-annotation__box",x:c(t).x,y:c(t).y,width:c(t).width,height:c(t).height,fill:t.style.backgroundColor,stroke:t.style.borderColor},null,8,XA),(0,e.createElementVNode)("text",{class:"waveform-annotation__text",x:c(t).x+c(t).width/2,y:c(t).y+c(t).height/2-(t.lines.length-1)*(0,e.unref)(16)/2,fill:t.style.textColor,style:(0,e.normalizeStyle)({font:(0,e.unref)(ut)}),"text-anchor":"middle","dominant-baseline":"central"},[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(t.lines,(A,n)=>((0,e.openBlock)(),(0,e.createElementBlock)("tspan",{key:`${t.annotation.id}-${n}`,x:c(t).x+c(t).width/2,dy:0===n?0:(0,e.unref)(16)},(0,e.toDisplayString)(A),9,zA))),128))],12,HA)],8,WA)],44,LA))),128))],2)):(0,e.createCommentVNode)("",!0)}}),qA=(e,t)=>{const A=e.__vccOpts||e;for(const[n,i]of t)A[n]=i;return A},KA=qA(PA,[["__scopeId","data-v-9a192dab"]]),_A=qA((0,e.defineComponent)({__name:"WaveformAnnotationContextMenu",props:{visible:{type:Boolean},x:{},y:{},canEdit:{type:Boolean}},emits:["edit","delete","close"],setup(t,{emit:A}){const n=t,i=A;return(t,A)=>n.visible&&n.canEdit?((0,e.openBlock)(),(0,e.createElementBlock)("div",{key:0,class:"waveform-annotation-context-menu",style:(0,e.normalizeStyle)({left:`${n.x}px`,top:`${n.y}px`}),role:"menu",onContextmenu:A[3]||(A[3]=(0,e.withModifiers)(()=>{},["prevent"]))},[(0,e.createElementVNode)("button",{type:"button",role:"menuitem",onClick:A[0]||(A[0]=e=>i("edit"))},"编辑标注"),(0,e.createElementVNode)("button",{type:"button",role:"menuitem",onClick:A[1]||(A[1]=e=>i("delete"))},"删除标注"),(0,e.createElementVNode)("button",{type:"button",role:"menuitem",onClick:A[2]||(A[2]=e=>i("close"))},"取消")],36)):(0,e.createCommentVNode)("",!0)}}),[["__scopeId","data-v-c70c98a1"]]);function $A(e){throw new TypeError(`Invalid waveform annotation file: ${e}`)}function en(e){return"object"==typeof e&&null!==e&&!Array.isArray(e)}function tn(e,t,A){const n=e[t];return"string"==typeof n&&0!==n.trim().length||$A(`${A}.${t} must be a non-empty string`),n}function An(e,t,A){const n=e[t];if(void 0!==n)return"string"!=typeof n&&$A(`${A}.${t} must be a string`),n}function nn(e,t,A){const n=e[t];return"number"==typeof n&&Number.isFinite(n)||$A(`${A}.${t} must be a finite number`),n}function an(e,t,A){const n=e[t];if(void 0!==n)return"number"==typeof n&&Number.isFinite(n)||$A(`${A}.${t} must be a finite number`),n}function on(e,t){const A=`annotations[${t}]`;en(e)||$A(`${A} must be an object`);const n=tn(e,"text",A);n.length>40&&$A(`${A}.text must not exceed 40 characters`);const i=an(e,"labelOffsetX",A),a=an(e,"labelOffsetY",A),o=An(e,"createdAt",A),r=function(e,t){if(void 0===e)return;en(e)||$A(`${t} must be an object`);const A=An(e,"borderColor",t),n=An(e,"textColor",t),i=An(e,"backgroundColor",t);return{...void 0!==A&&{borderColor:A},...void 0!==n&&{textColor:n},...void 0!==i&&{backgroundColor:i}}}(e.style,`${A}.style`);return{id:tn(e,"id",A),seriesId:tn(e,"seriesId",A),x:nn(e,"x",A),y:nn(e,"y",A),text:n,...void 0!==i&&{labelOffsetX:i},...void 0!==a&&{labelOffsetY:a},...void 0!==r&&{style:r},...void 0!==o&&{createdAt:o}}}function rn(e){const t=e.map(on),A=new Set;return t.forEach((e,t)=>{A.has(e.id)&&$A(`annotations[${t}].id must be unique`),A.add(e.id)}),t}var sn=0;function ln(){return sn+=1,"undefined"!=typeof crypto&&"function"==typeof crypto.randomUUID?crypto.randomUUID():`annotation-${Date.now()}-${sn}`}function gn(e,t){try{e?.releasePointerCapture?.(t)}catch{}}function cn(e,t){return{...e,...t}}function dn(e){return{state:e,accepted:!1,completed:null}}function In(e,t){switch(t.type){case"begin":return e?dn(e):{state:(A=t.gesture,{...A,currentX:A.startX,currentY:A.startY,xDomain:[...A.xDomain],yDomains:Object.fromEntries(Object.entries(A.yDomains).map(([e,t])=>[e,[...t]]))}),accepted:!0,completed:null};case"move":return e&&e.pointerId===t.pointerId?{state:cn(e,t.position),accepted:!0,completed:null}:dn(e);case"finish":return e&&e.pointerId===t.pointerId?{state:null,accepted:!0,completed:cn(e,t.position)}:dn(e);case"cancel":return!e||void 0!==t.pointerId&&e.pointerId!==t.pointerId?dn(e):{state:null,accepted:!0,completed:null};case"reset":return{state:null,accepted:!0,completed:null}}var A}function un(e){return[...e].sort().join("\0")}function mn(e,t){const A=un(t);return e.find(e=>un(e.seriesList.map(e=>e.id))===A)}function hn(){let e=null,t=null;return{schedule:function(A){t=A,null===e&&(e=requestAnimationFrame(()=>{e=null;const A=t;t=null,A?.()}))},cancel:function(){t=null,null!==e&&(cancelAnimationFrame(e),e=null)},flush:function(){null!==e&&(cancelAnimationFrame(e),e=null);const A=t;t=null,A?.()},isPending:function(){return null!==e}}}function Cn(e){return Ie(e).map(({source:e,...t})=>{const A=e.metrics(t.errorBar.visible);return{...t,source:e,points:ae(e),xDomain:Nt(Number.isFinite(A.xMinimum)?[A.xMinimum,A.xMaximum]:[]),yDomain:Nt(Number.isFinite(A.yMinimum)?[A.yMinimum,A.yMaximum]:[]),rawYMaximum:Number.isFinite(A.yMaximum)?A.yMaximum:void 0,rawYMinimum:Number.isFinite(A.yMinimum)?A.yMinimum:void 0,hasErrorPoints:A.hasErrorPoints}})}function Qn(A){const{props:n,preparedSeries:i,currentPage:a,hiddenSeriesIdSet:o,chartWidth:r,innerHeight:s,isCleanView:l,sharedTransform:g,independentTransforms:c,sharedYDomains:d,independentYDomains:I,annotationInteraction:u,linePointOverrides:m}=A,h=(0,e.computed)(()=>i.value.map((e,t)=>({...e,color:e.color??(0===t?n.lineColor:X[t%X.length])}))),C=(0,e.computed)(()=>function(e){const t=Object.fromEntries(Object.entries(e?.trackLines??{}).map(([e,t])=>[e,{horizontal:"boolean"!=typeof t?.horizontal||t.horizontal,vertical:"boolean"!=typeof t?.vertical||t.vertical,horizontalColor:"string"==typeof t?.horizontalColor&&t.horizontalColor.trim()?t.horizontalColor:void 0,verticalColor:"string"==typeof t?.verticalColor&&t.verticalColor.trim()?t.verticalColor:void 0}]));return{rowCount:Ht(e?.rowCount,2),columnCount:Ht(e?.columnCount,1),showPagination:e?.showPagination??!0,fillIncompleteLastRow:e?.fillIncompleteLastRow??!1,trackOrder:zt(e?.trackOrder),hideEmptyTracks:e?.hideEmptyTracks??!1,trackLines:t}}(n.grid)),Q=(0,e.computed)(()=>{const e=new Map;h.value.forEach(t=>{const A=t.trackId||t.id,n=e.get(A);n?n.push(t):e.set(A,[t])});const t=C.value.trackOrder??[];return[...t,...Array.from(e.keys()).filter(e=>!t.includes(e))].map(t=>{const A=e.get(t)??[],n=A.filter(e=>!o.value.has(e.id)),i=[],a=[];return(n.length?n:A).forEach(e=>{i.push(e.xDomain[0],e.xDomain[1]),a.push(e.yDomain[0],e.yDomain[1])}),{id:t,series:A,visibleSeries:n,xDomain:i.length?Nt(i):[0,1],yDomain:a.length?Nt(a):[0,1]}})}),B=(0,e.computed)(()=>"channel-label-or-legend"===n.unitDisplayMode||"legend-single-series"===n.unitDisplayMode&&!Q.value.some(e=>e.series.length>1)),E=(0,e.computed)(()=>ke(n.rendering)),p=(0,e.computed)(()=>{return e=Q.value,C.value.hideEmptyTracks?e.filter(e=>e.series.length>0):e;var e}),f=(0,e.computed)(()=>qt(p.value.length,C.value)),y=(0,e.computed)(()=>function(e,t,A){const n=qt(e.length,A),i=(Math.min(n,Math.max(1,Math.floor(t)))-1)*Pt(A);return e.slice(i,i+Pt(A))}(p.value,a.value,C.value)),v=(0,e.computed)(()=>"channel-label-or-legend"===n.unitDisplayMode&&y.value.some(e=>e.series.length>1)),w=(0,e.computed)(()=>{const e=y.value.filter(e=>e.series.length>0);return C.value.fillIncompleteLastRow&&e.length>0?e:y.value}),k=(0,e.computed)(()=>sA(s.value,n.axes?.y?.splitNumber)),x=(0,e.computed)(()=>function(e,t,A,n){return"independent"!==e?A:Object.fromEntries(t.flatMap((e,t)=>{const A=n[t];return A?[[e.id,A]]:[]}))}(n.displayMode,Q.value,d.value,I.value)),{yAxisMetrics:b,yAxisSlots:M,resolvedChartLeftMargin:N,innerWidth:D,yAxisLayout:S,hasVisibleWaveformData:F}=function(t){const{props:A,chartTracks:n,layoutTracks:i,chartWidth:a,gridOptions:o,viewportYDomains:r,yAxisTickCount:s}=t,l=(0,e.computed)(()=>"edge-compact"===A.layoutPreset),g=(0,e.computed)(()=>"channel-label"!==A.unitDisplayMode&&"channel-label-or-legend"!==A.unitDisplayMode&&(!l.value||"axis"===A.unitDisplayMode)),c=(0,e.computed)(()=>function(e,t,A,n,i,a,o,r,s,l=!0,g){const c=Xt("object"==typeof s?s.labelTextStyle:void 0),d=e.filter(e=>e.series.length>0).flatMap(e=>IA(e,t,A,n,i,s)).map(e=>uA(e.domain,a,void 0,l?e.seriesList[0]?.unit:void 0,o,r,g,e.maximumTick,e.minimumTick)),I=Math.max(7,...d.map(e=>e.tickTextWidth)),u=Math.max(7,...d.map(e=>e.titleTextWidth)),m=-(7+u+0+c/2);return{tickClearance:I+7+4,fullClearance:Math.max(I,u+0+c)+7+4,labelCenterX:m}}(n.value,A.overlayMode,A.yDomain,A.yDomains,r.value,!1!==A.axes?.y?.nice,s.value,"compact"===A.displayMode,A.axes?.y,g.value,l.value?AA:void 0)),d=(0,e.computed)(()=>n.value.some(e=>{const t=e.visibleSeries.length?e.visibleSeries:e.series;return 1===t.length&&Boolean(t[0]?.name.trim()||A.yLabel)})),I=(0,e.computed)(()=>n.value.some(e=>e.visibleSeries.length>0)),u=(0,e.computed)(()=>n.value.some(e=>e.series.length>0)),m=(0,e.computed)(()=>Math.max(W.left,d.value?c.value.fullClearance:u.value?c.value.tickClearance:0)),h=(0,e.computed)(()=>function(e,t,A,n,i,a=!0,o=!1,r,s,l=!0,g){const c=Xt("object"==typeof s?s.labelTextStyle:void 0),d=new Map,I=new Map;e.forEach(e=>{const c={left:0,right:0};IA(e,t,A,n,r,s).forEach(e=>{const t=c[e.side]++,A=`${e.side}:${t}`,{tickTextWidth:n,titleTextWidth:r}=uA(e.domain,a,void 0,l?e.seriesList[0]?.unit:void 0,i,o,g,e.maximumTick,e.minimumTick);d.set(A,Math.max(d.get(A)??rA,n)),I.set(A,Math.max(I.get(A)??rA,r))})});const u=[],m={left:0,right:0};return["left","right"].forEach(e=>{Array.from(d.keys()).filter(t=>t.startsWith(`${e}:`)).map(t=>Number(t.slice(e.length+1))).sort((e,t)=>e-t).forEach(t=>{const A=d.get(`${e}:${t}`)??rA,n=I.get(`${e}:${t}`)??rA,i="left"===e&&m.left>0?-m.left:m[e],a=i+(n+7+0+c/2)*("left"===e?-1:1),o=Math.max(A,n+0+c)+7+4;u.push({side:e,sideIndex:t,axisOffset:i,labelOffset:a,clearance:o}),m[e]+=o})}),{slots:u,clearance:m}}(i.value.filter(e=>e.series.length>0),A.overlayMode,A.yDomain,A.yDomains,s.value,!1!==A.axes?.y?.nice,"compact"===A.displayMode,r.value,A.axes?.y,g.value,l.value?AA:void 0)),C=(0,e.computed)(()=>l.value?W.right/4+Math.max(0,Q.value-4):"multi-axis"===A.overlayMode?Math.max(m.value,h.value.clearance.left):m.value),Q=(0,e.computed)(()=>u.value?"multi-axis"===A.overlayMode||d.value?h.value.clearance.left:c.value.tickClearance:0),B=(0,e.computed)(()=>"multi-axis"===A.overlayMode?Math.max(W.right,h.value.clearance.right):W.right),E=(0,e.computed)(()=>Math.max(0,a.value-C.value-B.value));return{yAxisMetrics:c,yAxisSlots:h,resolvedChartLeftMargin:C,innerWidth:E,yAxisLayout:(0,e.computed)(()=>{const e=Kt(A.displayMode),t=o.value.columnCount,n=t>1,i=Math.max(e,l.value?h.value.clearance.left:c.value.fullClearance),a=Math.max(e,c.value.tickClearance),r=(E.value-i*Math.max(0,t-1))/t>=120;return{horizontalGap:"multi-axis"===A.overlayMode&&n&&u.value?Math.max(e,h.value.clearance.left+h.value.clearance.right):n&&u.value?d.value&&r?i:a:e,hideSecondaryLabels:"multi-axis"!==A.overlayMode&&n&&d.value&&!r}}),hasVisibleWaveformData:I}}({props:n,chartTracks:Q,layoutTracks:w,chartWidth:r,gridOptions:C,viewportYDomains:x,yAxisTickCount:k}),G=(0,e.computed)(()=>h.value.length>0),Y=(0,e.computed)(()=>D.value>0&&s.value>0),J=(0,e.computed)(()=>n.xLabel??`时间(${n.timeUnit})`),R=(0,e.computed)(()=>n.interactionMode),T=(0,e.computed)(()=>"zoom"===R.value),Z=(0,e.computed)(()=>{const e=[];return(Q.value.some(e=>e.visibleSeries.length)?Q.value.filter(e=>e.visibleSeries.length):Q.value.filter(e=>e.series.length)).forEach(t=>{e.push(t.xDomain[0],t.xDomain[1])}),Nt(e)}),U=(0,e.computed)(()=>{const e=n.initialXDomain;return e&&Number.isFinite(e[0])&&Number.isFinite(e[1])&&e[0]!==e[1]?aA(eA(e[0]<e[1]?e:[e[1],e[0]],n.xDomainStrategy,!0),n):aA(eA(Z.value,n.xDomainStrategy),n)}),L=e=>{const t=n.initialXDomains?.[e.series?.trackId??e.series?.id??e.id]??(e.series?n.initialXDomains?.[e.series.id]:void 0)??n.initialXDomain;return t&&Number.isFinite(t[0])&&Number.isFinite(t[1])&&t[0]!==t[1]?aA(eA(t[0]<t[1]?t:[t[1],t[0]],n.xDomainStrategy,!0),n):aA(eA(Nt(e.seriesList.flatMap(e=>e.xDomain)),n.xDomainStrategy),n)},V=(0,e.computed)(()=>("independent"!==n.displayMode?A.boundaries?.value.shared:void 0)??U.value),O=(0,e.computed)(()=>oA(g.value.rescaleX((0,t.scaleLinear)(V.value,[0,D.value])).domain(),n)),j=(0,e.computed)(()=>function(e,t,A,n,i=[],a,o=!0,r=!1){const s=Pt(A),l=i.filter(Boolean).length,g=A.fillIncompleteLastRow&&l>0&&l<s,c=g?Math.ceil(l/A.columnCount):A.rowCount,d=Kt(n),I=Number.isFinite(a)?Math.max(0,a):d,u=new Set;if(o)if("independent"===n)for(let B=0;B<c;B+=1)u.add(B);else if("compact"===n)u.add(c-1);else for(let B=0;B<A.columnCount;B+=1)for(let e=Pt(A)-1;e>=0;e-=1)if(e%A.columnCount===B&&i[e]){u.add(Math.floor(e/A.columnCount));break}const m=Math.max(0,c-1)*d,h=r&&u.has(c-1)?30:0,C=30*u.size-h,Q=Math.max(1,(t-m-C)/c);return Array.from({length:g?l:s},(t,n)=>{const i=Math.floor(n/A.columnCount),a=n%A.columnCount,o=g&&i===c-1?l-i*A.columnCount:A.columnCount,r=Math.max(0,o-1)*I,s=Math.max(1,(e-r)/o),m=u.has(i)?30:0,h=Q+m,C=Array.from({length:i},(e,t)=>{const A=u.has(t)?30:0;return Q+A+d}).reduce((e,t)=>e+t,0);return{slotIndex:n,row:i,column:a,left:a*(s+I),top:C,width:s,height:Q,plotHeight:Q,cellHeight:h,xAxisBand:m,isLastRow:i===c-1}})}(D.value,s.value,C.value,n.displayMode,w.value.map(e=>"edge-compact"===n.layoutPreset?e.series.length>0:Boolean(e)),S.value.horizontalGap,!0,"edge-compact"===n.layoutPreset&&!l.value).map((e,t)=>({...e,series:w.value[t]}))),H=(0,e.computed)(()=>function(e){const A=e.cells.map(t=>({...t,hasSeries:e.useNonEmptyBottomTracks?Boolean(t.series?.series.length):Boolean(t.series)})),n=function(e,t){const A=new Set;for(let n=0;n<t;n+=1)for(let t=e.length-1;t>=0;t-=1){const i=e[t];if(i.column===n&&i.hasSeries){A.add(i.slotIndex);break}}return A}(A,e.grid.columnCount),i=A.flatMap((A,i)=>{const a=!A.series||0===A.series.series.length;if(!A.series&&!e.showEmptyTracks)return[];const o=A.series??{id:`empty-grid-slot-${A.slotIndex}`,series:[],visibleSeries:[],xDomain:e.initialXDomain??e.sharedZoomDomain,yDomain:[0,1]},r=!a&&o.visibleSeries.length>0,s=o.visibleSeries[0]??o.series[0]??null,l="independent"===e.displayMode?(0,t.scaleLinear)(function(e,t,A){if(A.effectiveXDomains?.[e.id])return A.effectiveXDomains[e.id];const n=A.xDomainStrategy??{type:"data"},i=A.initialXDomains?.[e.id]??A.initialXDomains?.[t]??A.initialXDomain;return aA(i?eA(i,n,!0):eA(e.xDomain,n),A)}(o,s?.id??o.id,e),[0,A.width]):(0,t.scaleLinear)(e.sharedZoomDomain,[0,A.width]),g=("independent"===e.displayMode?e.independentTransforms[i]??t.zoomIdentity:t.zoomIdentity).rescaleX(l);g.domain(oA(g.domain(),e));const c=IA(o,e.overlayMode,e.fixedYDomain,e.fixedYDomains,e.yDomains,e.yAxisPadding??e.yAxisUpperPaddingRatio),d={left:0,right:0},I={left:0,right:0},u=c.map(n=>{const i=d[n.side]++,a=sA(A.plotHeight,e.yAxisSplitNumber),o=lA(n.domain,a,!1!==e.yAxisNice),r=(0,t.scaleLinear)(o.domain,[A.plotHeight,0]),s=o.values,l=void 0!==n.maximumTick&&n.maximumTick>=o.domain[0]&&n.maximumTick<=o.domain[1]?n.maximumTick:void 0,g=void 0!==n.minimumTick&&n.minimumTick>=o.domain[0]&&n.minimumTick<=o.domain[1]?n.minimumTick:void 0,c=bt(s,l,g),{tickTextWidth:u,titleTextWidth:m}=uA(r.domain(),!1,c,!1!==e.showAxisUnits?n.seriesList[0]?.unit:void 0,a),h=Math.max(u,m+0+Xt(e.yAxisPadding?.labelTextStyle))+7+4,C=e.yAxisSlots?.find(e=>e.side===n.side&&e.sideIndex===i),Q=C?("left"===n.side?0:A.width)+C.axisOffset:"left"===n.side?-I.left:A.width+I.right,B=m+7+0+Xt(e.yAxisPadding?.labelTextStyle)/2,E=(C?("left"===n.side?0:A.width)+C.labelOffset:Q+("left"===n.side?-B:B))-("right"!==n.side||e.compactYAxisLayout?0:10);return C||(I[n.side]+=h),{index:n.index,side:n.side,x:Q,labelX:E,scale:r,maximumTick:l,minimumTick:g,majorTicks:s,minorTicks:Dt(s,2),tickValues:c,seriesList:n.seriesList}}),m=(0,t.scaleLinear)(o.yDomain,[A.plotHeight,0]);!1!==e.yAxisNice&&m.nice();const h=u[0]?.scale??m,C=function(e,A,n){if(!n.integerZoom)return(0,t.scaleLinear)().domain(e).ticks(A);const i="s"===n.timeUnit?1:1e3;return(0,t.scaleLinear)().domain(e.map(e=>e*i)).ticks(A).filter(Number.isInteger).map(e=>e/i)}(g.domain(),Math.max(2,Math.floor(A.width/100)),e),Q=e.xAxisLabelFormatter??(e.integerZoom?nA:void 0),B=u[0]?.majorTicks??(a?m.ticks(sA(A.plotHeight,e.yAxisSplitNumber)):[]),E=u[0]?.tickValues??[],p=g.domain(),f={start:Ut(p[0],p,e.timeUnit,"start",Q),end:Ut(p[1],p,e.timeUnit,"end",Q)},y=7*f.start.length+10,v=7*f.end.length+10,w=C.filter(e=>{const t=g(e);return t>y&&t<A.width-v}),k=o.visibleSeries.map(t=>{const n=u.find(e=>e.seriesList.some(e=>e.id===t.id)),i=n?.scale??h,o=function(e,t,A,n,i){if(!e.length||A<=0)return{linePoints:[],pointRenderPoints:[],errorBarRenderPoints:[]};const a=e.visibleRange(t),o=i.lineVisible?i.linePointOverride??(r=a.end-a.start,"wasm"===(s=n).sampling.mode||"auto"===s.sampling.mode&&r>s.sampling.autoThreshold?function(e,t,A,n){const{start:i,end:a}=t,o=a-i,r=n.sampling.maxPointCount??Math.max(1,Math.floor(A*n.sampling.maxPointsPerPixel));return me(o<=r||"none"===n.sampling.strategy?e.pointsInRange(i,a):Array.from({length:r},(t,A)=>e.pointAt(i+(1===r?0:Math.round(A*(o-1)/(r-1))))),t,e.length,t=>e.pointAt(t))}(e,a,A,n):Me(e,a,t,A,n)):[];var r,s;const l=i.errorBarVisible&&i.hasErrorPoints;if(i.pointVisible&&l){const i=Ne(e,a,t,A,Math.max(n.pointMinSpacing,n.errorBarMinSpacing),n.downsample,be,De);return{linePoints:o,pointRenderPoints:i,errorBarRenderPoints:i.filter(De)}}return{linePoints:o,pointRenderPoints:i.pointVisible?Ne(e,a,t,A,n.pointMinSpacing,n.downsample,be):[],errorBarRenderPoints:l?Ne(e,a,t,A,n.errorBarMinSpacing,n.downsample,De):[]}}(t.source??ie(t.points),p,A.width,e.rendering,{lineVisible:!a&&"none"!==t.lineType,linePointOverride:e.linePointOverrides?.[t.id],pointVisible:"none"!==t.pointType,errorBarVisible:t.errorBar.visible,hasErrorPoints:t.hasErrorPoints});return{series:t,path:tt(o.linePoints,t.lineType,g,i),lineRenderPoints:o.linePoints,pointRenderPoints:o.pointRenderPoints,errorBarRenderPoints:o.errorBarRenderPoints,yScale:i,yAxisIndex:n?.index??0}});return{id:o.id,index:i,series:s,seriesList:o.visibleSeries,legendSeries:o.series,isEmpty:a,hasVisibleSeries:r,column:A.column,showYAxisLabel:!e.hideSecondaryLabels||0===A.column,yAxisLabelX:e.yAxisLabelX,left:A.left,top:A.top,width:A.width,height:A.plotHeight,xScale:g,yScale:h,yAxes:u,xMajorTicks:C,xAxisLabelFormatter:Q,xMinorTicks:Dt(C,3,p),yMajorTicks:B,yMinorTicks:u[0]?.minorTicks??(a?Dt(B,2):[]),yAxisTickValues:E,xAxisTickValues:w,endpointLabels:f,path:k[0]?.path??null,seriesPaths:k,gridLines:e.grid.trackLines[o.id]??{horizontal:!0,vertical:!0},showXAxis:"independent"===e.displayMode||("compact"===e.displayMode?A.isLastRow??A.row===e.grid.rowCount-1:n.has(A.slotIndex))}});return function(e,t,A={}){const n=new Map;for(const i of e){let e=0;for(const t of i.yAxes){if("left"!==t.side)continue;const a=`${i.column}:${e++}`,o=tA(t,A);n.set(a,Math.max(n.get(a)??0,o))}}for(const i of e){let e=0;for(const t of i.yAxes)"left"===t.side&&(t.labelX=t.x-n.get(`${i.column}:${e++}`))}}(i,e.yLabel,{labelTextStyle:e.yAxisPadding?.labelTextStyle,showUnits:e.showAxisUnits,compact:e.compactYAxisLayout,measureTextWidth:e.compactYAxisLayout?AA:void 0}),i}({cells:j.value,grid:C.value,useNonEmptyBottomTracks:"edge-compact"===n.layoutPreset,compactYAxisLayout:"edge-compact"===n.layoutPreset,showAxisUnits:"channel-label"!==n.unitDisplayMode&&"channel-label-or-legend"!==n.unitDisplayMode&&("edge-compact"!==n.layoutPreset||"axis"===n.unitDisplayMode),displayMode:n.displayMode,overlayMode:n.overlayMode,independentTransforms:c.value,sharedZoomDomain:O.value,initialXDomain:n.initialXDomain?V.value:void 0,initialXDomains:n.initialXDomains,effectiveXDomains:A.boundaries?.value,xDomainStrategy:n.xDomainStrategy,integerZoom:n.integerZoom,fixedYDomain:n.yDomain,fixedYDomains:n.yDomains,yDomains:x.value,timeUnit:n.timeUnit,xAxisLabelFormatter:n.axes?.x?.labelFormatter,yAxisSplitNumber:n.axes?.y?.splitNumber,yAxisNice:n.axes?.y?.nice,yAxisPadding:n.axes?.y,rendering:E.value,linePointOverrides:m?.value,hideSecondaryLabels:l.value||S.value.hideSecondaryLabels,yLabel:n.yLabel,yAxisLabelX:M.value.slots.find(e=>"left"===e.side&&0===e.sideIndex)?.labelOffset??b.value.labelCenterX,yAxisSlots:M.value.slots,showEmptyTracks:G.value}));!function(t,A,i,a,o){const r=(e,t,A)=>t>0&&A>0?e.translate((A/t-1)*e.x/e.k,0):e;(0,e.watch)(()=>({visible:2*Number(!1!==n.axes?.y?.maximumTickVisible)+Number(!1!==n.axes?.y?.minimumTickVisible),width:A.value,tracks:i.value.map(e=>({id:e.id,index:e.index,width:e.width}))}),(e,t)=>{if(e.visible===t.visible)return;a.value=r(a.value,t.width,e.width);const A=[...o.value];e.tracks.forEach(e=>{const n=t.tracks.find(t=>t.id===e.id),i=A[e.index];n&&i&&(A[e.index]=r(i,n.width,e.width))}),o.value=A})}(0,D,H,g,c);const z=e=>e.seriesList.map(t=>({...e,series:t,yScale:e.seriesPaths.find(e=>e.series.id===t.id)?.yScale??e.yScale})),P=(0,e.computed)(()=>H.value.flatMap(z));return{chartSeries:h,chartTracks:Q,showLegendUnits:B,hideYAxisTitles:v,pageableTracks:p,renderingOptions:E,gridOptions:C,pageCount:f,pagedTracks:y,resolvedChartLeftMargin:N,innerWidth:D,hasVisibleWaveformData:F,hasWaveformData:G,hasChartArea:Y,resolvedXLabel:J,activeInteractionMode:R,isZoomMode:T,initialXDomain:V,originalXDomain:U,resolveOriginalTrackDomain:L,sharedZoomDomain:O,resolveInitialTrackDomain:e=>A.boundaries?.value[e.id]??L(e),gridCells:j,trackLayouts:H,annotationLayoutsForTrack:z,resolveSeriesYScale:(e,t)=>e.seriesPaths.find(e=>e.series.id===t)?.yScale??e.yScale,annotationTrackLayouts:P,renderedAnnotations:(0,e.computed)(()=>n.annotationsVisible?yt(n.annotations,P.value,D.value,s.value):[]),editorSeries:(0,e.computed)(()=>{const e=u.editorDraft.value?.annotation.seriesId,t=h.value.find(t=>t.id===e);return t?{id:t.id,name:t.name.trim()||t.id,color:t.color,unit:t.unit}:void 0}),resolveFrameNumber:(q=()=>n.frameNumber,K=()=>n.frameNumbers,_=()=>Q.value,(e,t=0)=>{const A=_(),n=A.findIndex(t=>t.id===e);return((e,t,A,n,i)=>{const a=t?.[i];return void 0!==a?a:void 0!==e?1===A?e:"number"==typeof e?e+n:`${e}-${n+1}`:void 0})(q(),K(),Math.max(A.length,t+1),n>=0?n:t,e)})};var q,K,_}var Bn=1e-6;function En(e){return Number.isFinite(e)?Math.max(1,e):1}function pn(e,t){return 0===t?0:Number.isFinite(e)?Math.min(t,Math.max(1,Math.floor(e))):t}function fn(e,t,A,n){const i=n-A;return{start:A+Math.floor(e*i/t),end:A+Math.floor((e+1)*i/t)}}function yn(e,t){e[e.length-1]!==t&&e.push(t)}function vn(e,t,A){if(e<=t)return Array.from({length:e},(e,t)=>t);if(1===t)return[0];if(2===t)return[0,e-1];const n=[0];return A().forEach(e=>yn(n,e)),yn(n,e-1),n}var wn={kind:"javascript",sample:e=>function(e,t,A,n){if(e.length!==t.length)throw new Error("x and y must have the same length");if("average"===A||"sum"===A)return function(e,t,A,n){const i=pn(A,e.length),a=new Float64Array(i),o=new Float64Array(i);for(let r=0;r<i;r+=1){const A=fn(r,i,0,e.length);for(let n=A.start;n<A.end;n+=1)a[r]+=e[n],o[r]+=t[n];const s=A.end-A.start;a[r]/=s,"average"===n&&(o[r]/=s)}return{kind:"aggregates",x:a,y:o}}(e,t,n,A);const i=pn(n,e.length),a="none"===A||e.length<=i?Array.from({length:e.length},(e,t)=>t):"peak"===A?function(e,t){const A=Math.floor((t-2)/4);return vn(e.length,t,()=>{if(!A)return[];const t=[];for(let n=0;n<A;n+=1){const i=fn(n,A,1,e.length-1);let a=i.start,o=i.start;for(let t=i.start+1;t<i.end;t+=1)e[t]<e[a]&&(a=t),e[t]>e[o]&&(o=t);[i.start,a,o,i.end-1].sort((e,t)=>e-t).forEach(e=>yn(t,e))}return t})}(t,i):"lttb"===A?function(e,t,A){return vn(e.length,A,()=>{const n=(e.length-2)/(A-2),i=[];let a=0;for(let o=0;o<A-2;o+=1){const r=Math.min(e.length,Math.floor((o+1)*n)+1),s=Math.min(e.length,Math.floor((o+2)*n)+1);let l=0,g=0;for(let A=r;A<s;A+=1)l+=e[A],g+=t[A];const c=s-r;c?(l/=c,g/=c):(l=e[e.length-1],g=t[t.length-1]);const d=fn(o,A-2,1,e.length-1);let I=d.start,u=-1;for(let A=d.start;A<d.end;A+=1){const n=Math.abs((e[a]-l)*(t[A]-t[a])-(e[a]-e[A])*(g-t[a]));n>u&&(u=n,I=A)}i.push(I),a=I}return i})}(e,t,i):function(e,t,A){const n="minmax"===A?Math.floor((t-2)/2):Math.max(0,t-2);return vn(e.length,t,()=>{if(!n)return[];const t=[];for(let i=0;i<n;i+=1){const a=fn(i,n,1,e.length-1);let o=a.start,r=a.start;for(let t=a.start+1;t<a.end;t+=1)e[t]<e[o]&&(o=t),e[t]>e[r]&&(r=t);"min"===A?yn(t,o):"max"===A?yn(t,r):o<=r?(yn(t,o),yn(t,r)):(yn(t,r),yn(t,o))}return t})}(t,i,A);return{kind:"source-indexes",sourceIndexes:Uint32Array.from(a)}}(e.x,e.y,e.strategy,e.targetPointCount)};function kn(e,t,A,n){const i=n-A;return{start:A+Math.floor(e*i/t),end:A+Math.floor((e+1)*i/t)}}function xn(e,t){e[e.length-1]!==t&&e.push(t)}function bn(e){return"minimumIndexes"in e?e.minimumIndexes.byteLength+e.maximumIndexes.byteLength:e.x.byteLength+e.y.byteLength+e.count.byteLength}function Mn(e,t){let A=1;for(;2*A<=t&&e%(2*A)==0;)A*=2;return A}var Nn=class{points;extremaLayers=[];sumLayers=[];indexBytes=0;maxBytes;constructor(e,t={}){this.points=e,this.maxBytes=Number.isFinite(t.maxBytes)?Math.max(0,Math.floor(t.maxBytes??0)):8388608}get byteLength(){return this.indexBytes}dispose(){this.extremaLayers.length=0,this.sumLayers.length=0,this.indexBytes=0}sample(e,t,A,n){const i=Math.max(0,Math.min(this.points.length,Math.floor(e))),a=Math.max(i,Math.min(this.points.length,Math.floor(t))),o=a-i,r=(s=n,0===(l=o)?0:Number.isFinite(s)?Math.min(l,Math.max(1,Math.floor(s))):l);var s,l;if("lttb"!==A)return"average"===A||"sum"===A?this.aggregate(i,a,r,A):"none"===A||o<=r?this.allIndexes(i,a):1===r?this.indexes([i]):2===r?this.indexes([i,a-1]):this.extrema(i,a,r,A)}allIndexes(e,t){return{kind:"source-indexes",sourceIndexes:Uint32Array.from({length:t-e},(t,A)=>e+A)}}indexes(e){return{kind:"source-indexes",sourceIndexes:Uint32Array.from(e)}}extrema(e,t,A,n){const i="peak"===n?Math.floor((A-2)/4):"minmax"===n?Math.floor((A-2)/2):Math.max(0,A-2);if(0===i)return this.indexes([e,t-1]);const a=[e];for(let o=0;o<i;o+=1){const A=kn(o,i,e+1,t-1),r=this.queryExtrema(A.start,A.end);if(!r)return;if("min"===n)xn(a,r.minimum);else if("max"===n)xn(a,r.maximum);else if("minmax"===n)r.minimum<=r.maximum?(xn(a,r.minimum),xn(a,r.maximum)):(xn(a,r.maximum),xn(a,r.minimum));else for(const e of[A.start,r.minimum,r.maximum,A.end-1].sort((e,t)=>e-t))xn(a,e)}return xn(a,t-1),this.indexes(a)}aggregate(e,t,A,n){const i=new Float64Array(A),a=new Float64Array(A);for(let o=0;o<A;o+=1){const r=kn(o,A,e,t),s=this.querySum(r.start,r.end);if(!s||0===s.count)return;i[o]=s.x/s.count,a[o]="average"===n?s.y/s.count:s.y}return{kind:"aggregates",x:i,y:a}}queryExtrema(e,t){const A=Math.floor(Math.log2(Math.max(1,t-e)));if(!this.ensureExtrema(A))return;let n=e,i=e;for(let a=e;a<t;){const e=Mn(a,t-a),A=Math.floor(Math.log2(e)),o=a/e,r=this.extremaLayers[A],s=r?r.minimumIndexes[o]:a,l=r?r.maximumIndexes[o]:a;this.isMinimum(s,n)&&(n=s),this.isMaximum(l,i)&&(i=l),a+=e}return{minimum:n,maximum:i}}querySum(e,t){const A=Math.floor(Math.log2(Math.max(1,t-e)));if(!this.ensureSum(A))return;let n=0,i=0,a=0;for(let o=e;o<t;){const e=Mn(o,t-o),A=Math.floor(Math.log2(e)),r=o/e,s=this.sumLayers[A];if(s)n+=s.x[r],i+=s.y[r],a+=s.count[r];else{const e=this.points[o];n+=e.x,i+=e.y,a+=1}o+=e}return{x:n,y:i,count:a}}ensureExtrema(e){for(let t=1;t<=e;t+=1){if(this.extremaLayers[t])continue;const e=Math.ceil(this.points.length/2**t),A={minimumIndexes:new Uint32Array(e),maximumIndexes:new Uint32Array(e)};if(!this.reserve(bn(A)))return!1;const n=this.extremaLayers[t-1];for(let t=0;t<e;t+=1){const e=2*t,i=e+1,a=n?n.minimumIndexes[e]:e,o=n?n.maximumIndexes[e]:e,r=n?i<n.minimumIndexes.length:i<this.points.length,s=n&&r?n.minimumIndexes[i]:i,l=n&&r?n.maximumIndexes[i]:i;A.minimumIndexes[t]=r&&this.isMinimum(s,a)?s:a,A.maximumIndexes[t]=r&&this.isMaximum(l,o)?l:o}this.extremaLayers[t]=A}return!0}ensureSum(e){for(let t=1;t<=e;t+=1){if(this.sumLayers[t])continue;const e=Math.ceil(this.points.length/2**t),A={x:new Float64Array(e),y:new Float64Array(e),count:new Uint32Array(e)};if(!this.reserve(bn(A)))return!1;const n=this.sumLayers[t-1];for(let t=0;t<e;t+=1){const e=2*t,i=e+1;if(n)A.x[t]=n.x[e]+(i<n.x.length?n.x[i]:0),A.y[t]=n.y[e]+(i<n.y.length?n.y[i]:0),A.count[t]=n.count[e]+(i<n.count.length?n.count[i]:0);else{const n=this.points[e],a=this.points[i];A.x[t]=n.x+(a?.x??0),A.y[t]=n.y+(a?.y??0),A.count[t]=a?2:1}}this.sumLayers[t]=A}return!0}reserve(e){return!(this.indexBytes+e>this.maxBytes||(this.indexBytes+=e,0))}isMinimum(e,t){const A=this.points[e],n=this.points[t];return A.y<n.y||A.y===n.y&&e<t}isMaximum(e,t){const A=this.points[e],n=this.points[t];return A.y>n.y||A.y===n.y&&e<t}},Dn=(0,t.bisector)(e=>e.x);function Sn(e,t){let A=Number.POSITIVE_INFINITY,n=Number.NEGATIVE_INFINITY,i=Number.POSITIVE_INFINITY,a=Number.NEGATIVE_INFINITY;for(const o of e)A=Math.min(A,o.x),n=Math.max(n,o.x),i=Math.min(i,o.y),a=Math.max(a,o.y);return{inputPointCount:t,validPointCount:e.length,xDomain:e.length?[A,n]:null,yDomain:e.length?[i,a]:null}}function Fn(e,t,A=e.length){let n=Number.POSITIVE_INFINITY,i=Number.NEGATIVE_INFINITY,a=Number.POSITIVE_INFINITY,o=Number.NEGATIVE_INFINITY;for(let r=0;r<e.length;r+=1)n=Math.min(n,e[r]),i=Math.max(i,e[r]),a=Math.min(a,t[r]),o=Math.max(o,t[r]);return{inputPointCount:A,validPointCount:e.length,xDomain:e.length?[n,i]:null,yDomain:e.length?[a,o]:null}}function Gn(e,t){return e?e.revision===t?"ok":"stale-revision":"not-found"}function Yn(e){return"auto"===e?"peak":e}function Jn(e,t){const A=e[0],n=e.at(-1);return Number.isFinite(t)&&A&&n&&t>=A.x&&t<=n.x?e[Dn.center(e,t)]:void 0}function Rn(e){return e?.y.length??0}function Tn(e,t){return e.x?e.x[t]:e.sampleStartTime+(e.sampleSourceIndexes?.[t]??t)/e.sampleRate}function Zn(e,t){const A=(t,A)=>{let n=0,i=Rn(e);for(;n<i;){const a=n+Math.floor((i-n)/2);(A?Tn(e,a)<=t:Tn(e,a)<t)?n=a+1:i=a}return n},n=Math.min(t[0],t[1]),i=Math.max(t[0],t[1]);return{start:A(n,!1),end:A(i,!0)}}function Un(e,t,A){return e.x?e.x.subarray(t,A):Float64Array.from({length:A-t},(A,n)=>Tn(e,t+n))}function Ln(e){return"wasm"===e?.kind&&"registerDataset"in e&&"disposeDataset"in e&&"disposeAllDatasets"in e&&"datasetIndexBytes"in e&&"registerSamples"in e&&"sampleDataset"in e}function Vn(e,t,A,n){if("typed"===t?.kind){const e=function(e,t){const A=Math.min(e.length,t.length);let n=e.length===t.length;for(let a=0;a<A&&n;a+=1)n=Number.isFinite(e[a])&&Number.isFinite(t[a])&&(0===a||e[a]>=e[a-1]);if(n)return{x:e.slice(),y:Float64Array.from(t)};const i=[];for(let a=0;a<A;a+=1)Number.isFinite(e[a])&&Number.isFinite(t[a])&&i.push(a);return i.sort((t,A)=>e[t]-e[A]||t-A),{x:Float64Array.from(i,t=>e[t]),y:Float64Array.from(i,e=>t[e])}}(t.x,t.y);return{x:e.x,y:e.y,revision:A,metrics:Fn(e.x,e.y,Math.max(t.x.length,t.y.length))}}if("samples"===t?.kind){if(!(Number.isFinite(t.sampleRate)&&t.sampleRate>0&&Number.isFinite(t.startTime))||t.sourceIndexes&&t.sourceIndexes.length!==t.values.length)return{y:new Float64Array,sampleStartTime:0,sampleRate:1,revision:A,metrics:{inputPointCount:t.values.length,validPointCount:0,xDomain:null,yDomain:null}};if(!t.sourceIndexes&&t.values.every(Number.isFinite)){const e=Float64Array.from(t.values);let n=1/0,i=-1/0;for(const t of e)n=Math.min(n,t),i=Math.max(i,t);return{y:e,sampleStartTime:t.startTime,sampleRate:t.sampleRate,revision:A,metrics:{inputPointCount:e.length,validPointCount:e.length,xDomain:e.length?[t.startTime,t.startTime+(e.length-1)/t.sampleRate]:null,yDomain:e.length?[n,i]:null}}}const e=Array.from({length:t.values.length},(e,t)=>t).filter(e=>Number.isFinite(t.values[e])),n=e=>t.sourceIndexes?.[e]??e;e.sort((e,t)=>n(e)-n(t)||e-t);const i=Float64Array.from(e,e=>t.values[e]),a=Uint32Array.from(e,n),o=e=>t.startTime+a[e]/t.sampleRate;let r=Number.POSITIVE_INFINITY,s=Number.NEGATIVE_INFINITY;for(const t of i)r=Math.min(r,t),s=Math.max(s,t);return{y:i,sampleStartTime:t.startTime,sampleRate:t.sampleRate,sampleSourceIndexes:a.length===t.values.length&&a.every((e,t)=>e===t)?void 0:a,revision:A,metrics:{inputPointCount:t.values.length,validPointCount:i.length,xDomain:i.length?[o(0),o(i.length-1)]:null,yDomain:i.length?[r,s]:null}}}const i=function(e){const t=[];let A=!0,n=Number.NEGATIVE_INFINITY;for(const i of e)Number.isFinite(i.x)&&Number.isFinite(i.y)&&(i.x<n&&(A=!1),n=i.x,t.push({x:i.x,y:i.y,...Number.isFinite(i.error)?{error:i.error}:{},...Number.isFinite(i.lowerError)?{lowerError:i.lowerError}:{},...Number.isFinite(i.upperError)?{upperError:i.upperError}:{}}));return A||t.sort((e,t)=>e.x-t.x),t}(e??t?.points??[]);return{x:Float64Array.from(i,e=>e.x),y:Float64Array.from(i,e=>e.y),points:i,revision:A,metrics:Sn(i,e?.length??t?.points.length??0),index:new Nn(i,{maxBytes:n})}}function On(e,t,A){Ln(e)&&void 0===t.wasmDatasetHandle&&(t.wasmDatasetHandle=t.x?e.registerDataset(t.x,t.y,A):e.registerSamples(t.y,t.sampleSourceIndexes,t.sampleStartTime,t.sampleRate,A),t.wasmIndexBytes=e.datasetIndexBytes(t.wasmDatasetHandle))}function jn(e,t){t.index?.dispose(),void 0!==t.wasmDatasetHandle&&Ln(e)&&e.disposeDataset(t.wasmDatasetHandle)}function Wn(e,t,A){const n=Rn(A);if(t.start===t.end&&(0===t.start||t.end===n))return e;const i=t.start>0?[t.start-1]:[],a=t.end<n?[t.end]:[];if("source-indexes"===e.kind){const t=Array.from(e.sourceIndexes);return{kind:"source-indexes",sourceIndexes:Uint32Array.from([...i,...t,...a])}}const o=Array.from(e.x),r=Array.from(e.y);return i.length&&(o.unshift(Tn(A,i[0])),r.unshift(A.y[i[0]])),a.length&&(o.push(Tn(A,a[0])),r.push(A.y[a[0]])),{kind:"aggregates",x:Float64Array.from(o),y:Float64Array.from(r)}}var Xn=class{entries=new Map;bytes=0;maxEntries;maxBytes;constructor(e={}){this.maxEntries=Number.isFinite(e.maxEntries)?Math.max(0,Math.floor(e.maxEntries??0)):96,this.maxBytes=Number.isFinite(e.maxBytes)?Math.max(0,Math.floor(e.maxBytes??0)):16777216}get metrics(){return{entries:this.entries.size,bytes:this.bytes,maxEntries:this.maxEntries,maxBytes:this.maxBytes}}get(e){const t=this.entries.get(e);if(t)return this.entries.delete(e),this.entries.set(e,t),t.output}set(e,t){const A=function(e){return"source-indexes"===e.kind?e.sourceIndexes.byteLength:e.x.byteLength+e.y.byteLength}(t);if(A>this.maxBytes||0===this.maxEntries)return;const n=this.entries.get(e);for(n&&(this.bytes-=n.bytes,this.entries.delete(e)),this.entries.set(e,{output:t,bytes:A}),this.bytes+=A;this.entries.size>this.maxEntries||this.bytes>this.maxBytes;){const e=this.entries.entries().next().value;if(!e)break;const[t,A]=e;this.entries.delete(t),this.bytes-=A.bytes}}deleteDataset(e){const t=`${e}\0`;for(const[A,n]of this.entries)A.startsWith(t)&&(this.entries.delete(A),this.bytes-=n.bytes)}clear(){this.entries.clear(),this.bytes=0}},Hn=class{datasets=new Map;javascriptBackend;cache;indexMaxBytes;wasmBackend;constructor(e={}){this.javascriptBackend=e.javascriptBackend??wn,this.wasmBackend=e.wasmBackend,this.indexMaxBytes=e.indexMaxBytes,this.cache=new Xn({maxEntries:e.cacheMaxEntries,maxBytes:e.cacheMaxBytes})}get resourceMetrics(){return{datasetCount:this.datasets.size,indexBytes:[...this.datasets.values()].reduce((e,t)=>e+(t.wasmIndexBytes??t.index?.byteLength??0),0),cache:this.cache.metrics}}setWasmBackend(e){this.wasmBackend&&this.wasmBackend!==e&&Ln(this.wasmBackend)&&(this.wasmBackend.disposeAllDatasets(),this.datasets.forEach(e=>{e.wasmDatasetHandle=void 0,e.wasmIndexBytes=void 0})),this.wasmBackend=e,Ln(e)&&this.datasets.forEach(t=>On(e,t,this.indexMaxBytes))}handle(e){switch(e.type){case"register-dataset":return this.register(e.datasetId,e.requestId,e.points,e.dataset);case"replace-dataset":return this.replace(e.datasetId,e.requestId,e.revision,e.points,e.dataset);case"sample-viewport":return this.sample(e);case"find-nearest-point":return this.findNearest(e.datasetId,e.requestId,e.revision,e.x);case"get-dataset-metrics":return this.metrics(e.datasetId,e.requestId,e.revision);case"dispose-dataset":return this.dispose(e.datasetId,e.requestId,e.revision);case"dispose-all":return this.disposeAll(e.requestId)}}register(e,t,A,n){const i=this.datasets.get(e);if(i)return this.datasetResponse(t,e,i,"stale-revision");const a=Vn(A,n,1,this.indexMaxBytes);return On(this.wasmBackend,a,this.indexMaxBytes),this.datasets.set(e,a),this.datasetResponse(t,e,a,"ok")}replace(e,t,A,n,i){const a=this.datasets.get(e),o=Gn(a,A);if("ok"!==o||!a)return this.datasetResponse(t,e,a,o);jn(this.wasmBackend,a),this.cache.deleteDataset(e);const r=Vn(n,i,a.revision+1,this.indexMaxBytes);return On(this.wasmBackend,r,this.indexMaxBytes),this.datasets.set(e,r),this.datasetResponse(t,e,r,"ok")}sample(e){return{type:"sample-viewport-response",requestId:e.requestId,results:e.series.map(t=>this.sampleSeries(e.requestId,t))}}sampleSeries(e,t){const A=performance.now(),n=this.datasets.get(t.datasetId),i=Gn(n,t.revision);if("ok"!==i||!n)return this.sampleResponse(e,t,i,void 0,"unavailable","sampled",0,A,!1);const a=Zn(n,t.xDomain),o=a.end-a.start;if(function(e,t){if("raw"===e.mode)return!0;if("auto"!==e.mode)return!1;const A=Number.isFinite(e.autoThreshold)?Math.max(1,Math.floor(e.autoThreshold??0)):1e3;if(!e.previousSelectedMode)return t<=A;const n=Number.isFinite(e.autoHysteresis)?Math.max(0,Math.floor(e.autoHysteresis??0)):0;return"raw"===e.previousSelectedMode?t<=A+n:t<=Math.max(0,A-n)}(t,o))return this.sampleResponse(e,t,"ok",Wn({kind:"source-indexes",sourceIndexes:Uint32Array.from({length:o},(e,t)=>a.start+t)},a,n),"raw","raw",o,A,!1);const r="wasm"===t.mode||"auto"===t.mode&&this.wasmBackend?this.wasmBackend:this.javascriptBackend,s=!r&&"javascript"===t.wasmFailureFallback,l=r??(s?this.javascriptBackend:void 0);if(!l)return this.sampleResponse(e,t,"wasm-unavailable",void 0,"unavailable","sampled",o,A,!1);const g=Yn(t.strategy),c=function(e){if(Number.isFinite(e.maxPointCount)&&(e.maxPointCount??0)>=1)return Math.floor(e.maxPointCount);const t=Number.isFinite(e.plotWidth)?Math.max(0,e.plotWidth):0,A=Number.isFinite(e.maxPointsPerPixel)?Math.max(0,e.maxPointsPerPixel??0):4;return Math.max(1,Math.floor(t*A))}(t),d=function(e,t,A,n,i){return[e.datasetId,e.revision,t.start,t.end,e.plotWidth,n,e.maxPointsPerPixel,e.maxPointCount,e.mode,i,A,e.lineType??"linear",e.pointType??"none",!0===e.errorBarVisible?1:0,e.pointMinSpacing??0,e.errorBarMinSpacing??0].join("\0")}(t,a,g,c,l.kind),I=this.cache.get(d);if(I)return this.sampleResponse(e,t,s?"wasm-unavailable":"ok",I,l.kind,"sampled",o,A,!0);const u=Wn(("wasm"===l.kind?void 0!==n.wasmDatasetHandle&&Ln(l)?l.sampleDataset(n.wasmDatasetHandle,a.start,a.end,g,c):void 0:n.index?.sample(a.start,a.end,g,c))??function(e,t){return"aggregates"===e.kind?e:{kind:"source-indexes",sourceIndexes:Uint32Array.from(e.sourceIndexes,e=>e+t)}}(l.sample({x:Un(n,a.start,a.end),y:n.y.subarray(a.start,a.end),points:n.points?.slice(a.start,a.end)??[],strategy:g,targetPointCount:c}),a.start),a,n);return this.cache.set(d,u),void 0!==n.wasmDatasetHandle&&Ln(l)&&(n.wasmIndexBytes=l.datasetIndexBytes(n.wasmDatasetHandle)),this.sampleResponse(e,t,s?"wasm-unavailable":"ok",u,l.kind,"sampled",o,A,!1)}sampleResponse(e,t,A,n,i,a,o,r,s){const l=function(e,t,A,n,i,a,o,r){return{seriesId:e.seriesId,datasetId:e.datasetId,mode:e.mode,selectedMode:i,backend:n,strategy:Yn(e.strategy),sourcePointCount:t,visiblePointCount:A,renderedPointCount:o,durationMs:a,cacheHit:r,requestId:0,revision:e.revision,rawPointLimitExceeded:"raw"===i&&Number.isFinite(e.rawPointLimit)&&A>(e.rawPointLimit??Number.POSITIVE_INFINITY),scheduledRequestCount:0,coalescedRequestCount:0,maxPendingRequestCount:0}}(t,Rn(this.datasets.get(t.datasetId)),o,i,a,performance.now()-r,function(e){return e?"source-indexes"===e.kind?e.sourceIndexes.length:e.x.length:0}(n),s);return l.requestId=e,{seriesId:t.seriesId,datasetId:t.datasetId,revision:t.revision,status:A,output:n,diagnostics:l}}findNearest(e,t,A,n){const i=this.datasets.get(e),a=Gn(i,A);return"ok"===a&&i?{type:"find-nearest-point-response",requestId:t,datasetId:e,revision:A,status:a,point:i.points?Jn(i.points,n):(()=>{const e=Zn(i,[n,n]);if(!Rn(i)||n<Tn(i,0)||n>Tn(i,Rn(i)-1))return;const t=Math.min(Rn(i)-1,e.start),A=Math.max(0,t-1),a=Math.abs(n-Tn(i,A))<Math.abs(Tn(i,t)-n)?A:t;return Number.isFinite(n)&&Rn(i)?{x:Tn(i,a),y:i.y[a]}:void 0})()}:{type:"find-nearest-point-response",requestId:t,datasetId:e,revision:A,status:a}}metrics(e,t,A){const n=this.datasets.get(e);return this.datasetResponse(t,e,n,Gn(n,A))}dispose(e,t,A){const n=this.datasets.get(e),i=Gn(n,A);return"ok"===i&&n&&(jn(this.wasmBackend,n),this.cache.deleteDataset(e),this.datasets.delete(e)),this.datasetResponse(t,e,n,i)}disposeAll(e){const t=[...this.datasets.keys()];return this.datasets.forEach(e=>jn(this.wasmBackend,e)),Ln(this.wasmBackend)&&this.wasmBackend.disposeAllDatasets(),this.datasets.clear(),this.cache.clear(),{type:"dispose-all-response",requestId:e,disposedDatasetIds:t}}datasetResponse(e,t,A,n){return{type:"dataset-response",requestId:e,datasetId:t,revision:A?.revision??0,status:n,metrics:A?{...A.metrics,indexBytes:A.wasmIndexBytes??A.index?.byteLength??0}:void 0}}};function zn(e,t,A,n){return{message:e,mode:t,fallback:A,seriesIds:n}}function Pn(A,a){const r=function(t,A){const n=(0,e.ref)("zoom"),i=(0,e.computed)(()=>t.interactionMode??n.value),a=e=>!t.presentationMode&&("none"===e||"zoom"===e&&t.zoomable||"pan"===e&&t.pannable||"annotation"===e&&t.annotationsVisible);return(0,e.watch)(i,e=>A("interaction-mode-change",e)),{mode:i,canSetMode:a,setInteractionMode:function(e){let o;return a(e)?i.value===e?o="unchanged":void 0!==t.interactionMode?(A("update:interactionMode",e),o="requested"):(n.value=e,o="applied"):o="disabled",{kind:"mode",status:o,targets:[]}}}}(A,a),s=(0,e.reactive)({...(0,e.toRefs)(A),interactionMode:r.mode}),l=(0,e.shallowRef)({}),g=(0,e.ref)(),c=(0,e.ref)(),d=(0,e.ref)(),I=(0,e.ref)(),u=(0,e.ref)(0),m=(0,e.ref)(0),h=(0,e.ref)(0),C=(0,e.ref)(0),Q=(0,e.ref)(0),B=(0,e.shallowRef)(t.zoomIdentity),E=(0,e.shallowRef)([]),p=(0,e.ref)({}),f=(0,e.ref)({}),y=(0,e.shallowReactive)({points:[],trackIndex:null,queryX:null,crosshairXByTrack:{},position:{x:0,y:0}}),v=(0,e.ref)(!1),w=(0,e.ref)(1),k=(0,e.shallowRef)(),x=wt("waveform-clip"),b=(0,e.ref)(new Set(s.defaultHiddenSeriesIds)),S=function(){const t=(0,e.ref)(null),A=(0,e.ref)(null);return{editorDraft:t,contextMenu:A,openCreate:(e,n,i)=>{t.value={mode:"add",annotation:{id:n(),seriesId:e.seriesId,x:e.xValue??e.point.x,y:e.point.y,text:"",createdAt:(new Date).toISOString()},anchor:i},A.value=null},openEdit:(e,n)=>{t.value={mode:"edit",annotation:{...e},previous:{...e},anchor:n},A.value=null},openContextMenu:e=>{A.value=e},closeEditor:()=>{t.value=null},closeContextMenu:()=>{A.value=null}}}(),F=(0,e.shallowRef)({}),G=(0,e.ref)([]),Y=hn();(0,e.watch)([()=>s.yDomain,()=>s.yDomains],()=>{p.value={},f.value={}},{deep:!0});const J=(0,e.shallowRef)(null),R=(0,e.ref)(!1),T=(0,e.ref)(!1);let Z=()=>{},U=()=>{},L=()=>{};const V=function(t){const A=(0,e.shallowRef)(Cn(t()));return(0,e.watch)(t,e=>{L(),Z(),A.value=Cn(e),U()}),A}(()=>s.data),O=function(t){const{props:A,observedWidth:n,observedHeight:i,measuredTitleWidth:a,measuredTitleHeight:o,internalHiddenSeriesIds:r,paginationBandHeight:s}=t,l=(0,e.computed)(()=>Number.isFinite(A.width)?Math.max(0,A.width??0):void 0),g=(0,e.computed)(()=>Number.isFinite(A.height)?Math.max(180,A.height??0):void 0),c=(0,e.computed)(()=>n.value>0?n.value:l.value??0),d=(0,e.computed)(()=>i.value>0?i.value:g.value??180),I=(0,e.computed)(()=>({width:void 0===l.value?"100%":`${l.value}px`,height:void 0===g.value?"100%":`${g.value}px`})),u=(0,e.computed)(()=>!0===A.cleanView),m=(0,e.computed)(()=>!0===A.presentationMode),h=(0,e.computed)(()=>{const e=A.zeroLine.width,t=A.zeroLine.opacity,n=A.zeroLine.boundaryThreshold;return{visible:!1!==A.zeroLine.visible,color:A.zeroLine.color||H,width:"number"==typeof e&&Number.isFinite(e)&&e>0?e:1,dash:A.zeroLine.dash??"6 4",opacity:"number"==typeof t&&Number.isFinite(t)&&t>=0&&t<=1?t:.5,boundaryThreshold:"number"==typeof n&&Number.isFinite(n)&&n>=0?n:.02}}),C=(0,e.computed)(()=>A.legend.backgroundColor||"transparent"),Q=(0,e.computed)(()=>!0===A.legend.interactive),B=(0,e.computed)(()=>void 0===A.hiddenSeriesIds?r.value:new Set(A.hiddenSeriesIds)),E=(0,e.computed)(()=>Array.from(B.value)),p=(0,e.computed)(()=>"edge-compact"===A.layoutPreset),f=(0,e.computed)(()=>A.title?.text.trim()??""),y=(0,e.computed)(()=>Boolean(A.title)&&!1!==A.title?.visible&&f.value.length>0),v=(0,e.computed)(()=>y.value&&!u.value),w=(0,e.computed)(()=>{const e=A.title?.textStyle?.fontSize;return Number.isFinite(e)&&(e??0)>0?e:14}),k=(0,e.computed)(()=>{const e=A.title?.textStyle?.rotation;return Number.isFinite(e)?e:0}),x=(0,e.computed)(()=>{const e=(k.value%360+360)%360;return e>1e-6&&Math.abs(e-360)>1e-6}),b=(0,e.computed)(()=>({color:A.title?.textStyle?.color??"#1f2937",fontSize:`${w.value}px`,fontFamily:A.title?.textStyle?.fontFamily||'"Microsoft YaHei", "微软雅黑", sans-serif',fontWeight:p.value&&18===w.value&&700===A.title?.textStyle?.fontWeight?600:A.title?.textStyle?.fontWeight??400,fontStyle:A.title?.textStyle?.fontStyle??"normal",textDecoration:A.title?.textStyle?.textDecoration??"none",letterSpacing:A.title?.textStyle?.letterSpacing??"normal",lineHeight:String(1.2)})),M=(0,e.computed)(()=>{const e=Number.parseFloat(A.title?.textStyle?.letterSpacing??""),t=Number.isFinite(e)?Math.max(0,f.value.length-1)*e:0;return Math.max(1,f.value.length*w.value*.62+t)}),N=(0,e.computed)(()=>{const e=c.value-48;return e>0?e:M.value}),D=(0,e.computed)(()=>({...b.value,width:"max-content",maxWidth:x.value?"none":`${N.value}px`,whiteSpace:x.value?"nowrap":"normal",overflowWrap:x.value?"normal":"anywhere"})),S=(0,e.computed)(()=>function({naturalWidth:e,naturalHeight:t,availableWidth:A,rotation:n,edgeCompact:i=!1}){const a=i?8:18,o=i?0:44,r=En(e),s=En(t),l=En(A),g=Number.isFinite(n)?n:0,c=g*Math.PI/180,d=Math.abs(Math.cos(c)),I=Math.abs(Math.sin(c)),u=(g%360+360)%360;if(!(u>Bn&&Math.abs(u-360)>Bn)){const e=Math.max(1,Math.ceil(r/l)),t=s*e;return{textWidth:l,textHeight:t,visualWidth:l,visualHeight:t,areaHeight:Math.max(o,t+a),scale:1,wrapped:e>1}}const m=160-a,h=r*d+s*I,C=r*I+s*d,Q=Math.min(1,l/h,m/C),B=C*Q;return{textWidth:r,textHeight:s,visualWidth:h*Q,visualHeight:B,areaHeight:Math.min(160,Math.max(o,B+a)),scale:Q,wrapped:!1}}({naturalWidth:p.value&&!x.value&&o.value>0?Math.min(a.value||N.value,N.value):a.value||M.value,naturalHeight:o.value||1.2*w.value,availableWidth:N.value,rotation:k.value,edgeCompact:p.value})),F=(0,e.computed)(()=>y.value?S.value.areaHeight:0),G=(e,t)=>"number"==typeof e&&Number.isFinite(e)&&e>=0?e:t,Y=(0,e.computed)(()=>({top:G(A.plotMargin.top,W.top),bottom:Math.max(p.value?44:0,G(A.plotMargin.bottom,W.bottom))})),J=(0,e.computed)(()=>Y.value.top),R=(0,e.computed)(()=>Math.max(0,d.value-F.value-s.value));return{fixedWidth:l,fixedHeight:g,chartWidth:c,chartHeight:d,containerStyle:I,isCleanView:u,isEdgeCompact:p,isPresentationMode:m,resolvedZeroLine:h,legendBackgroundColor:C,legendInteractive:Q,hiddenSeriesIdSet:B,resolvedHiddenSeriesIds:E,resolveLegendPosition:e=>A.legend.trackPositions?.[e]??A.legend.position??"top-right",resolveLegendOrientation:e=>{const t=A.legend.orientation??"auto";return"auto"!==t?t:"top"===e||"bottom"===e?"horizontal":"vertical"},resolvedTitleText:f,titleAreaReserved:y,titleVisible:v,titleMeasureStyle:D,titleLayout:S,titleAreaHeight:F,resolvedPlotMargin:Y,chartTopMargin:J,drawingHeight:R,xAxisTitleY:(0,e.computed)(()=>Math.max(0,R.value-12+(p.value?3:0))),innerHeight:(0,e.computed)(()=>Math.max(0,R.value-Y.value.top-Y.value.bottom)),titleAreaStyle:(0,e.computed)(()=>({height:`${F.value}px`,justifyContent:"left"===A.title?.align?"flex-start":"right"===A.title?.align?"flex-end":"center"})),titleVisualStyle:(0,e.computed)(()=>({width:`${S.value.visualWidth}px`,height:`${S.value.visualHeight}px`})),titleTextStyle:(0,e.computed)(()=>({...b.value,width:`${S.value.textWidth}px`,minHeight:`${S.value.textHeight}px`,textAlign:A.title?.align??"center",whiteSpace:x.value?"nowrap":"normal",overflowWrap:x.value?"normal":"anywhere",transform:`translate(-50%, -50%) rotate(${k.value}deg) scale(${S.value.scale})`}))}}({props:s,observedWidth:u,observedHeight:m,measuredTitleWidth:h,measuredTitleHeight:C,internalHiddenSeriesIds:b,paginationBandHeight:Q}),{chartWidth:X,chartHeight:z,isCleanView:P,isPresentationMode:q,hiddenSeriesIdSet:K,resolvedTitleText:_,titleAreaReserved:$,titleMeasureStyle:ee,titleAreaHeight:te,chartTopMargin:Ae,innerHeight:ne}=O,ae=Qn({props:s,preparedSeries:V,currentPage:w,hiddenSeriesIdSet:K,chartWidth:X,innerHeight:ne,isCleanView:P,sharedTransform:B,independentTransforms:E,sharedYDomains:p,independentYDomains:f,annotationInteraction:(0,e.markRaw)(S),linePointOverrides:F,boundaries:l}),{chartSeries:oe,chartTracks:re,renderingOptions:se,trackLayouts:le,gridOptions:ge,pageCount:ce,pagedTracks:de,resolvedChartLeftMargin:Ie,innerWidth:he,hasChartArea:Ce,activeInteractionMode:Qe,isZoomMode:Be,initialXDomain:Ee,sharedZoomDomain:pe,resolveInitialTrackDomain:fe,annotationLayoutsForTrack:ye,resolveSeriesYScale:ve}=ae,we=function(t,A,n,i){return{plotCenterX:(0,e.computed)(()=>A.value+n.value/2),plotTitleAreaStyle:(0,e.computed)(()=>t.title?.align&&"center"!==t.title.align&&"left"!==t.title.align?i.value:{...i.value,boxSizing:"border-box",marginLeft:`${A.value}px`,width:`${n.value}px`,..."left"===t.title?.align?{paddingLeft:"0px",paddingRight:"0px"}:{}})}}(s,ae.resolvedChartLeftMargin,ae.innerWidth,O.titleAreaStyle),ke=function(t){const A=(0,e.shallowRef)("success"),n=(0,e.shallowRef)(),i=(0,e.shallowRef)(0),a=function(){const e=function(e=()=>{}){let t,A=0,n=!1,i=!1;const a={scheduled:0,coalesced:0,maxPending:0};return{schedule:o=>i?0:(A+=1,a.scheduled+=1,t&&(a.coalesced+=1),t={generation:A,run:o},a.maxPending=Math.max(a.maxPending,1),(async()=>{if(!n&&!i){n=!0;try{for(;t&&!i;){const n=t;t=void 0;try{await n.run(n.generation)}catch(a){if(!i&&n.generation===A)try{e(a,n.generation)}catch{}}}}finally{n=!1}}})(),A),isCurrent:e=>!i&&e===A,cancelPending(){A+=1,t=void 0},dispose(){i=!0,A+=1,t=void 0},metrics:a}}(),t=new Map,A=new Map,n=new Map,i=new Set,a=new Map,o={scheduler:e,revisions:t,backendBySeries:A,selectedModeBySeries:n,emittedErrors:i,pendingDiagnostics:a,client:void 0,requestId:0,diagnosticsTimer:void 0,autoModeSettleTimer:void 0,hasInitialSamplingRun:!1,getClient:()=>o.client??=function(){let e,t,A,n=!1;const i=new Map,a=new Map,o=()=>{if(t)return t;t=new Hn;for(const[e,A]of a){t.handle({type:"register-dataset",requestId:0,datasetId:e,revision:0,points:A.points,dataset:A.dataset});for(let n=1;n<A.revision;n+=1)t.handle({type:"replace-dataset",requestId:0,datasetId:e,revision:n,points:A.points,dataset:A.dataset})}return t},r=a=>{n||t||(A=function(e){return e?.message||"Web Worker is unavailable; JavaScript sampling is being used."}(a),e?.terminate(),e=void 0,(()=>{const e=[...i.values()];let t;i.clear();try{t=o()}catch(A){return void e.forEach(({reject:e})=>e(A instanceof Error?A:new Error(String(A))))}e.forEach(({request:e,resolve:n,reject:i})=>{try{n(t.handle(e))}catch(A){i(A instanceof Error?A:new Error(String(A)))}})})())};try{"undefined"==typeof Worker?r():(e=new Worker(new URL("/assets/workerRuntime-BJiRmIZD.js",""+{}.url),{type:"module"}),e.onmessage=e=>{const t=i.get(e.data.requestId);t&&("request-error"!==e.data.type?(i.delete(e.data.requestId),t.resolve(e.data)):r({message:e.data.message}))},e.onerror=e=>r(e),e.onmessageerror=()=>r())}catch{r()}return{get workerFailureReason(){return A},send:A=>n?Promise.reject(new Error("Sampling client was disposed.")):((e=>{"register-dataset"===e.type&&a.set(e.datasetId,{points:e.points,dataset:e.dataset,revision:1}),"replace-dataset"===e.type&&a.set(e.datasetId,{points:e.points,dataset:e.dataset,revision:e.revision+1}),"dispose-dataset"===e.type&&a.delete(e.datasetId),"dispose-all"===e.type&&a.clear()})(A),t?Promise.resolve().then(()=>t.handle(A)):new Promise((t,n)=>{i.set(A.requestId,{request:A,resolve:t,reject:n});try{e?.postMessage(A)}catch{i.delete(A.requestId),r(),t(o().handle(A))}})),dispose(){n=!0,e&&(e.onmessage=null,e.onerror=null,e.onmessageerror=null),t?.handle({type:"dispose-all",requestId:0}),e?.terminate(),e=void 0,i.forEach(({reject:e})=>e(new Error("Sampling client was disposed."))),i.clear(),a.clear(),t=void 0}}}(),invalidate(){e.cancelPending(),clearTimeout(o.diagnosticsTimer),clearTimeout(o.autoModeSettleTimer),o.diagnosticsTimer=void 0,o.autoModeSettleTimer=void 0,o.hasInitialSamplingRun=!1,a.clear(),t.clear(),A.clear(),n.clear(),i.clear(),o.client?.dispose(),o.client=void 0},dispose(){o.invalidate(),e.dispose()}};return o}(),{revisions:o,backendBySeries:r,selectedModeBySeries:s,emittedErrors:l,pendingDiagnostics:g,scheduler:c}=a,d=(0,e.computed)(()=>{const e=t.renderingOptions.value.sampling;return t.sourceTrackLayouts.value.flatMap(A=>{const n=A.xScale.domain();return A.seriesList.flatMap(i=>{if("none"===i.lineType||A.width<=0)return[];const a=i.source??ie(i.points),r=a.visibleRange(n),s=`${t.instanceId}:${i.id}`;return[{series:i,source:a,visibleRange:r,request:{seriesId:i.id,datasetId:s,revision:o.get(s)??1,xDomain:n,visibleStartIndex:r.start,visibleEndIndex:r.end,plotWidth:A.width,mode:e.mode,autoThreshold:e.autoThreshold,autoHysteresis:e.autoHysteresis,strategy:e.strategy,maxPointsPerPixel:e.maxPointsPerPixel,maxPointCount:e.maxPointCount,rawPointLimit:e.rawPointLimit,wasmFailureFallback:e.wasmFailureFallback,lineType:i.lineType,pointType:i.pointType,errorBarVisible:i.errorBar.visible,pointMinSpacing:t.renderingOptions.value.pointMinSpacing,errorBarMinSpacing:t.renderingOptions.value.errorBarMinSpacing}}]})})}),I=(0,e.computed)(()=>`${i.value}:${d.value.map(e=>`${e.request.datasetId}:${e.request.xDomain.join(",")}:${e.request.plotWidth}:${e.visibleRange.start}:${e.visibleRange.end}:${e.request.mode}:${e.request.autoThreshold}:${e.request.autoHysteresis}:${e.request.strategy}:${e.request.maxPointsPerPixel}:${e.request.maxPointCount}:${e.request.rawPointLimit}:${e.request.wasmFailureFallback}:${e.request.lineType}:${e.request.pointType}:${e.request.errorBarVisible}:${e.request.pointMinSpacing}:${e.request.errorBarMinSpacing}`).join("|")}`),u=()=>{a.diagnosticsTimer=void 0,g.forEach(e=>{const A=r.get(e.seriesId);A&&A!==e.backend&&t.emit("sampling-backend-change",{seriesId:e.seriesId,previous:A,current:e.backend}),r.set(e.seriesId,e.backend),t.emit("sampling-complete",e)}),g.clear()},m=e=>{e.forEach(e=>g.set(e.seriesId,{...e,scheduledRequestCount:c.metrics.scheduled,coalescedRequestCount:c.metrics.coalesced,maxPendingRequestCount:c.metrics.maxPending})),a.diagnosticsTimer||(a.diagnosticsTimer=setTimeout(u,100))},h=e=>{const A=`${e.mode}:${e.fallback}:${e.message}:${e.seriesIds.join(",")}`;l.has(A)||(l.add(A),t.emit("sampling-error",e))},C=e=>{n.value=void 0;const i=I.value;A.value="success",c.schedule(async r=>{try{await(async(e,n=!1)=>{const i=d.value,r={...t.linePointOverrides.value},l=[],g=[];if(i.forEach(t=>{const A=t.visibleRange.end-t.visibleRange.start,i=n?s.get(t.series.id):void 0,a="auto"===t.request.mode&&"raw"===function(e,t,A,n){return n?"raw"===n?e<=t+A?"raw":"sampled":e<=Math.max(0,t-A)?"raw":"sampled":e<=t?"raw":"sampled"}(A,t.request.autoThreshold,t.request.autoHysteresis??0,i);"raw"===t.request.mode||a?(r[t.series.id]=me(t.source.pointsInRange(t.visibleRange.start,t.visibleRange.end),t.visibleRange,t.source.length,e=>t.source.pointAt(e)),s.set(t.series.id,"raw"),g.push(function(e,t){const A=e.request,n=e.visibleRange.end-e.visibleRange.start;return{seriesId:A.seriesId,datasetId:A.datasetId,mode:A.mode,selectedMode:"raw",backend:"raw",strategy:"auto"===A.strategy?"peak":A.strategy,sourcePointCount:e.source.length,visiblePointCount:n,renderedPointCount:n+ue(e.visibleRange,e.source.length).length,durationMs:0,cacheHit:!1,requestId:t,revision:A.revision,rawPointLimitExceeded:n>e.request.rawPointLimit&&"raw"===e.request.mode,scheduledRequestCount:0,coalescedRequestCount:0,maxPendingRequestCount:0}}(t,e))):(r[t.series.id]?.length||(r[t.series.id]=me(function(e){const{source:t}=e,{start:A,end:n}=e.visibleRange,i=n-A,a=Number.isFinite(e.request.maxPointCount)&&(e.request.maxPointCount??0)>=1?Math.floor(e.request.maxPointCount):Math.max(1,Math.floor(e.request.plotWidth*e.request.maxPointsPerPixel));if(i<=a)return t.pointsInRange(A,n);if(1===a)return t.pointAt(A)?[t.pointAt(A)]:[];const o=[];for(let r=0;r<a;r+=1){const e=Math.round(r*(i-1)/(a-1)),n=t.pointAt(A+e);n&&o.push(n)}return o}(t),t.visibleRange,t.source.length,e=>t.source.pointAt(e))),l.push({...t,request:{...t.request,previousSelectedMode:i}}))}),!l.length){if(!c.isCurrent(e))return;return t.linePointOverrides.value=r,void m(g)}t.linePointOverrides.value=r;const I=a.getClient();let u;try{if(await(async(e,t,A)=>{await Promise.all(t.map(async t=>{if(o.has(t.request.datasetId))return;const n=await e.send({type:"register-dataset",requestId:++a.requestId,datasetId:t.request.datasetId,revision:0,dataset:t.source.toWorkerDataset()});c.isCurrent(A)&&function(e){return"dataset-response"===e.type}(n)&&("ok"===n.status||"stale-revision"===n.status)&&o.set(t.request.datasetId,n.revision)}))})(I,l,e),!c.isCurrent(e))return;const t=l.map(e=>({...e.request,revision:o.get(e.request.datasetId)??1})),n=await I.send({type:"sample-viewport",requestId:++a.requestId,series:t});if("sample-viewport-response"!==n.type)return void(c.isCurrent(e)&&(A.value="error"));u=n}catch(Q){if(!c.isCurrent(e))return;return A.value="error",void h(zn(Q instanceof Error?Q.message:String(Q),t.renderingOptions.value.sampling.mode,"wasm"===t.renderingOptions.value.sampling.mode&&"error"===t.renderingOptions.value.sampling.wasmFailureFallback?"none":"javascript",l.map(e=>e.series.id)))}if(!c.isCurrent(e))return;(u.workerError||I.workerFailureReason)&&(A.value="fallback");const C=new Map(l.map(e=>[e.series.id,e.source]));l.some(e=>!u.results.some(t=>t.seriesId===e.series.id&&t.output))&&(A.value="error"),u.results.forEach(e=>{"ok"!==e.status&&"error"!==A.value&&(A.value=e.output?"fallback":"error");const t=C.get(e.seriesId),n=t?function(e,t){const A=e.output;if(A)return"aggregates"===A.kind?Array.from(A.x,(e,t)=>({x:e,y:A.y[t]})):Array.from(A.sourceIndexes,e=>t.pointAt(e)).filter(e=>void 0!==e)}(e,t):void 0;!n||"ok"!==e.status&&"wasm-unavailable"!==e.status||(r[e.seriesId]=n),g.push(e.diagnostics),s.set(e.seriesId,e.diagnostics.selectedMode),"wasm-unavailable"===e.status&&h(zn(u.workerError??"WASM sampling is unavailable.",e.diagnostics.mode,"javascript"===e.diagnostics.backend?"javascript":"none",[e.seriesId]))}),u.workerError&&u.results.every(e=>"wasm-unavailable"!==e.status)&&h(zn(u.workerError,t.renderingOptions.value.sampling.mode,"wasm"===t.renderingOptions.value.sampling.mode&&"error"===t.renderingOptions.value.sampling.wasmFailureFallback?"none":"javascript",l.map(e=>e.series.id))),I.workerFailureReason&&u.results.every(e=>"wasm-unavailable"!==e.status)&&h(zn(I.workerFailureReason,t.renderingOptions.value.sampling.mode,"wasm"===t.renderingOptions.value.sampling.mode&&"error"===t.renderingOptions.value.sampling.wasmFailureFallback?"none":"javascript",l.map(e=>e.series.id))),t.linePointOverrides.value={...r},m(g)})(r,e)}finally{c.isCurrent(r)&&(n.value=i)}})};return(0,e.watch)(I,()=>{a.autoModeSettleTimer&&clearTimeout(a.autoModeSettleTimer);const e=a.hasInitialSamplingRun;a.hasInitialSamplingRun=!0,C(e),e&&"auto"===t.renderingOptions.value.sampling.mode&&t.renderingOptions.value.sampling.autoHysteresis>0&&(a.autoModeSettleTimer=setTimeout(()=>{a.autoModeSettleTimer=void 0,C(!1)},120))},{immediate:!0}),(0,e.watch)(t.preparedSeries,()=>{a.invalidate(),i.value+=1,t.linePointOverrides.value={}},{flush:"sync"}),(0,e.onScopeDispose)(()=>a.dispose()),{requestSignature:I,state:(0,e.computed)(()=>n.value!==I.value||a.autoModeSettleTimer?"pending":A.value),linePointOverrides:t.linePointOverrides,ready:()=>n.value===I.value&&!a.autoModeSettleTimer}}({props:s,emit:a,instanceId:x,preparedSeries:V,sourceTrackLayouts:le,renderingOptions:se,linePointOverrides:F}),xe=function(t){const{props:A,tracks:n,preparedSeries:a,sampling:r}=t,s=(0,e.computed)(()=>function(e){function t(e,t,A,n){return void 0===e?t:A(e)?e:t}const A=e=>"number"==typeof e&&Number.isFinite(e)&&e>=0,n=e=>"boolean"==typeof e,i=e=>{try{return o(e),!0}catch{return!1}},a=e=>"function"==typeof e;function r(e,o,r){return{enabled:t(e?.enabled,!0,n),duration:t(e?.duration,o,A),easing:t(e?.easing,r,i),onComplete:void 0===e?.onComplete?void 0:t(e.onComplete,()=>{},a),onAbort:void 0===e?.onAbort?void 0:t(e.onAbort,()=>{},a)}}const s=t(e.animationAnnotation?.type,"scale",N);return{animationEnabled:t(e.animationEnabled,!0,n),animationThreshold:t(e.animationThreshold,5e4,e=>A(e)&&Number.isInteger(e)),animation:{...r(e.animation,1e3,"cubicInOut"),delay:t(e.animation?.delay,0,A),staggerDelay:t(e.animation?.staggerDelay,100,A),direction:t(e.animation?.direction,"left-to-right",e=>["left-to-right","right-to-left","center-out"].includes(e))},animationUpdate:r(e.animationUpdate,300,"cubicInOut"),animationAnnotation:{...r(e.animationAnnotation,300,M[s]),type:s}}}(A)),l=(0,e.shallowRef)(0),g=()=>l.value++,c=new Map,d=new Set,I=new Set,u=wt("waveform-animation");let m,h,C=0,Q=A.annotations,B=A.data,E="",p="",f=n.value,y=r.state.value;const v=(0,e.shallowRef)(!1);let w=!1;const k="function"==typeof globalThis.matchMedia?globalThis.matchMedia("(prefers-reduced-motion: reduce)"):void 0,x=(0,e.shallowRef)(k?.matches??!1),b=(0,e.computed)(()=>a.value.reduce((e,t)=>e+t.source.length,0)),S=(0,e.computed)(()=>s.value.animationEnabled&&!x.value&&!v.value&&"function"==typeof globalThis.requestAnimationFrame&&"function"==typeof globalThis.cancelAnimationFrame&&b.value<s.value.animationThreshold),F=()=>A.annotationsVisible&&!A.cleanView?A.annotations:[],G=new j({commitFinalState:()=>U()}),Y=function(e,t){const A=new Map,n=()=>({opacity:1,scale:1,offsetY:0});let i;const a=(e,n)=>({read:()=>n.style,write:i=>{n.style=i,n.leaving&&0===i.opacity&&A.get(e)===n&&A.delete(e),t()}});function o(t,A){A.waiting=!1,e.animateAnnotationAppear(t,a(t,A),i)}return{reconcile(r,s,l,g,c){i=l;const d=new Set(r.map(e=>e.annotation.id)),I=new Set(s.map(e=>e.id));for(const[t,n]of A)d.has(t)||n.leaving&&g||(!I.has(t)&&g?(n.rendered=Object.freeze({...n.rendered,annotation:Object.freeze({...n.rendered.annotation,style:n.rendered.annotation.style?Object.freeze({...n.rendered.annotation.style}):void 0}),lines:Object.freeze([...n.rendered.lines]),box:Object.freeze({...n.rendered.box}),style:Object.freeze({...n.rendered.style})}),n.leaving=!0,n.waiting=!1,e.animateAnnotationDisappear(t,a(t,n),i)):(A.delete(t),e.cancel({kind:"annotation",id:t,scope:"enter"}),e.cancel({kind:"annotation",id:t,scope:"leave"})));for(const t of r){const a=t.annotation.id;let r=A.get(a);!r||r.leaving?(r?(r.leaving=!1,e.cancel({kind:"annotation",id:a,scope:"leave"}),r.rendered=t):(r={rendered:t,leaving:!1,waiting:!1,style:g?{opacity:0,scale:"scale"===i.type||"bounce"===i.type?0:1,offsetY:"slide-in"===i.type?8:0}:n()},A.set(a,r)),g?(r.waiting=c.has(t.annotation.seriesId),r.waiting||o(a,r)):r.style=n()):r.rendered=t}t()},release(e){for(const[t,n]of A)!n.waiting||e&&n.rendered.annotation.seriesId!==e||o(t,n);t()},finish(e){A.clear();for(const t of e)A.set(t.annotation.id,{rendered:t,style:n(),leaving:!1,waiting:!1});t()},project(e,t){const n=new Map(e.map(e=>[e.annotation.id,e]));return[...A.values()].filter(e=>e.leaving||n.has(e.rendered.annotation.id)).map(e=>(e.leaving||(e.rendered=n.get(e.rendered.annotation.id)??e.rendered),{...e.rendered,animationStyle:e.style,leaving:e.leaving,seriesOpacity:t.get(e.rendered.annotation.seriesId)??1}))},clear(){A.clear(),t()}}}(G,g),J=(0,e.computed)(()=>(l.value,n.value.map(e=>c.has(e.id)?function(e){const t=e.target,A=rt(t.xScale,e.xDomain),n=t.yAxes.map((t,A)=>{const n=rt(t.scale,e.yDomains[A]);return n===t.scale?t:{...t,scale:n}}),i=n.every((e,A)=>e===t.yAxes[A])?t.yAxes:n,a=[];for(const[o,r]of e.series){const n=i[r.path.yAxisIndex]?.scale??t.yScale;r.old&&a.push({...at(r.old.path,r.old.values,A,n),presentationKey:`${o}:old`,opacity:1-r.opacity}),a.push({...at(r.path,r.values,A,n),presentationKey:o,opacity:r.opacity,animationClip:e.clips.get(o)})}return{...t,xScale:A,yScale:i[0]?.scale??t.yScale,yAxes:i,seriesPaths:a,path:a[0]?.path??null}}(c.get(e.id)):e))),R=function(t,A,n,a,o){const r=(0,e.shallowRef)(1),s={kind:"custom",id:"pagination",scope:"update"};let l,g=0;const c=()=>JSON.stringify({options:Object.fromEntries(Object.entries(i(t.props)).filter(([e])=>!["annotations","annotationsVisible"].includes(e))),size:t.containerSize.value,hidden:t.props.hiddenSeriesIds,presentation:t.props.presentationMode});function d(){l=void 0,r.value=1}function I(){A.cancel(s),d()}return{opacity:r,reset:d,cancel:I,reconcile:function(e){const i=l;if(!i)return!1;if(e||i.page!==t.currentPage.value||i.environment!==c()||!a.value||!n.value.animationUpdate.enabled)return A.finishAll(),d(),!0;if(i.started||0!==n.value.animationUpdate.duration||(r.value=1),o(),"pending"===t.sampling.state.value||!t.layoutReady.value)return!0;if("success"!==t.sampling.state.value)return A.finishAll(),d(),!0;if(i.started)return!0;const g=t.tracks.value.flatMap(e=>e.width>0&&e.height>0?e.seriesList.filter(e=>(e.source?.length??e.points.length)>0).map(e=>e.id):[]);if(!g.length)return d(),!0;i.started=!0;const I=n.value.animationUpdate,u=e=>g.forEach(()=>e?.());return A.animate(s,{duration:I.duration,easing:I.easing,force:!0,initialize:()=>{r.value=I.duration>0?0:1},during:(e,t)=>{l?.version===i.version&&(r.value=t.terminal?1:D(e))},done:()=>{l?.version===i.version&&d(),u(I.onComplete)},aborted:()=>{l?.version===i.version&&d(),u(I.onAbort)}}),!0},wrapPagination:function(e,i){return o=>{const s=Math.min(i.value,Math.max(1,Math.floor(o)));s!==t.currentPage.value&&(function(e){I(),A.finishAll(),a.value&&n.value.animationUpdate.enabled&&(l={page:e,version:++g,environment:c(),started:!1},n.value.animationUpdate.duration>0&&(r.value=0))}(s),e(o))}},active:()=>!!l}}(t,G,s,S,()=>U(!0)),T=(0,e.computed)(()=>{const e=new Map([...c.values()].flatMap(e=>[...e.anchors]));return yt(F().flatMap(t=>{const A=e.get(t.id),n=[...c.values()].find(e=>e.series.has(t.seriesId))?.target.xScale.domain();return A&&n&&t.x>=n[0]&&t.x<=n[1]?[{...t,x:A.x,y:A.y}]:[]}),J.value.flatMap(e=>e.seriesList.map(t=>({...e,series:t,yScale:e.seriesPaths.find(e=>e.series.id===t.id&&e.presentationKey!==`${t.id}:old`)?.yScale??e.yScale}))),t.innerWidth.value,t.innerHeight.value)}),Z=(0,e.computed)(()=>{l.value;const e=new Map([...c.values()].flatMap(e=>[...e.series].map(([e,t])=>[e,t.opacity])));return Y.project(T.value,e).map(e=>({...e,seriesOpacity:(e.seriesOpacity??1)*R.opacity.value}))});function U(e=!1){e||R.reset();const t=new Map(c);c.clear();for(const A of n.value)c.set(A.id,st(A,F(),t.get(A.id),!!m));for(const A of n.value)if(A.width>0&&A.height>0)for(const e of A.seriesList)(e.source?.length??e.points.length)>0&&I.add(e.id);d.clear(),m=void 0,h=r.requestSignature.value,g(),Y.finish(T.value)}const L=(0,e.computed)(()=>function(e){const{props:t,tracks:A}=e;return JSON.stringify({tracks:A.value.map(e=>[e.id,e.left,e.top,e.width,e.height,e.seriesList.map(e=>e.id),e.yAxes.map(e=>e.seriesList.map(e=>e.id))]),width:e.innerWidth.value,height:e.innerHeight.value,mode:t.displayMode,overlay:t.overlayMode,hidden:t.hiddenSeriesIds,clean:t.cleanView,presentation:t.presentationMode,page:A.value.map(e=>e.id)})}(t));(0,e.watch)([n,()=>A.data,()=>A.annotations,()=>A.annotationsVisible,s,L,r.state,t.layoutReady,t.currentPage,S],function(){if(w)return;const e=s.value,o=A.data!==B;if(o){m=new Map(c),B=A.data;for(const t of c.keys())G.cancel({kind:"custom",id:`track:${t}`,scope:"update"});const e=[...d];for(const t of e)G.cancel({kind:"series",id:t,scope:"enter"});queueMicrotask(()=>{w||e.forEach(e=>Y.release(e))}),d.clear()}const l=JSON.stringify(Object.fromEntries(Object.entries(i(A)).filter(([e])=>!["annotations","annotationsVisible"].includes(e)))),v=""!==p&&p!==l||I.size>0&&!o&&(""!==E&&E!==L.value||!m&&"success"===y&&n.value!==f);if(p=l,E=L.value,f=n.value,y=r.state.value,G.setEnabled(S.value),R.reconcile(o))return;if(!S.value||v)return G.finishAll(),void U();const k="pending"!==r.state.value&&t.layoutReady.value;if(m&&!k)return;const x=m&&"success"===r.state.value&&h!==r.requestSignature.value&&e.animationUpdate.enabled,b=new Set(a.value.filter(e=>e.source.length>0).map(e=>e.id));for(const t of I)b.has(t)||I.delete(t);const M=n.value.flatMap(e=>e.seriesList.map(e=>e.id)),N=m??new Map(c),D=new Set(n.value.map(e=>e.id));for(const t of c.keys())D.has(t)||c.delete(t);for(const t of n.value){if(t.width<=0||t.height<=0){c.set(t.id,st(t,F()));continue}const A=N.get(t.id),n=st(t,F(),A,!!m);m?(c.set(t.id,n),x&&A&&!gt(A)&&(c.set(t.id,ct(A,n,0,!1)),G.animate({kind:"custom",id:`track:${t.id}`,scope:"update"},{duration:e.animationUpdate.duration,easing:e.animationUpdate.easing,force:!0,during:(e,i)=>{c.set(t.id,ct(A,n,e,i.terminal)),g()},done:()=>t.seriesPaths.forEach(()=>e.animationUpdate.onComplete?.()),aborted:()=>t.seriesPaths.forEach(()=>e.animationUpdate.onAbort?.())}))):c.has(t.id)&&G.getActiveAnimationCount()||c.set(t.id,n);for(const i of t.seriesPaths){const A=i.series.id;if(!((i.series.source?.length??i.series.points.length)>0)){I.delete(A);continue}if(!k){if(!I.has(A)&&e.animation.enabled&&h!==r.requestSignature.value){const e=c.get(t.id);e.clips.has(A)||e.clips.set(A,{id:`${u}-${++C}`,x:0,width:0})}continue}if(I.has(A))continue;if(I.add(A),!e.animation.enabled||"success"!==r.state.value||h===r.requestSignature.value)continue;const n=c.get(t.id),a={id:`${u}-${++C}`,x:0,width:t.width};n.clips.set(A,a),d.add(A),G.animateSeriesEnter(A,{read:()=>a,write:e=>{Object.assign(a,e),g()}},t.width,{...e.animation,delay:e.animation.delay+M.indexOf(A)*e.animation.staggerDelay,onComplete:()=>{n.clips.delete(A),d.delete(A),g(),queueMicrotask(()=>{w||Y.release(A)}),e.animation.onComplete?.()},onAbort:()=>{e.animation.onAbort?.()}})}}if(A.annotations!==Q){for(const e of n.value){const t=c.get(e.id);t&&(t.anchors=st(e,F(),t).anchors)}Q=A.annotations}m=void 0,g(),k&&Y.reconcile(T.value,A.annotations,e.animationAnnotation,e.animationAnnotation.enabled&&S.value&&A.annotationsVisible&&!A.cleanView,d)},{immediate:!0}),(0,e.watch)(()=>A.annotationsVisible,e=>{e||G.finishWhere(e=>"annotation"===e.kind&&["enter","leave"].includes(e.scope),()=>Y.finish([]))}),(0,e.watch)(()=>s.value.animation.enabled,e=>{e||G.finishWhere(e=>"series"===e.kind&&"enter"===e.scope,()=>{for(const e of c.values())e.clips.clear();d.clear(),g()}),e||Y.release()}),(0,e.watch)(()=>s.value.animationUpdate.enabled,e=>{e||G.finishWhere(e=>"update"===e.scope||"domain"===e.scope,()=>{R.reset();for(const e of n.value){const t=c.get(e.id),A=st(e,F(),t,!0);t&&(A.clips=t.clips),c.set(e.id,A)}g()})}),(0,e.watch)(()=>s.value.animationAnnotation.enabled,e=>{e||G.finishWhere(e=>"annotation"===e.kind&&["enter","leave"].includes(e.scope),()=>Y.finish(T.value))});const V=e=>{x.value=e.matches,e.matches&&G.finishAll()},O=()=>G.setPauseReason("document-hidden",document.hidden);function W(e){R.active()&&e?.target instanceof Element&&e.target.closest(".waveform-chart__pagination")||("pending"===r.state.value&&(h=r.requestSignature.value),(G.getActiveAnimationCount()||m||R.active()||"pending"===r.state.value)&&G.finishAll())}return k?.addEventListener?.("change",V),"undefined"!=typeof document&&(document.addEventListener("visibilitychange",O),O()),(0,e.onScopeDispose)(()=>{w=!0,R.reset(),c.clear(),d.clear(),Y.clear(),k?.removeEventListener?.("change",V),"undefined"!=typeof document&&document.removeEventListener("visibilitychange",O),G.destroy()}),{presentationTracks:J,presentationAnnotations:Z,paginationOpacity:R.opacity,stabilizeAnimations:W,wrap:e=>function(e,t){return Object.fromEntries(Object.entries(e).map(([e,A])=>[e,"function"==typeof A&&"getControlState"!==e?(...e)=>(t(),A(...e)):A]))}(e,W),wrapPagination:R.wrapPagination,prepareExport:()=>{v.value=!0,W()},releaseExport:()=>{v.value=!1}}}({props:s,currentPage:w,containerSize:(0,e.computed)(()=>[u.value,m.value]),layoutReady:(0,e.computed)(()=>u.value>0&&m.value>0),tracks:le,preparedSeries:V,innerWidth:he,innerHeight:O.innerHeight,sampling:ke}),be=(0,e.computed)(()=>ge.value.showPagination&&ce.value>1&&!P.value);(0,e.watchEffect)(()=>{Q.value="edge-compact"===s.layoutPreset?be.value?16:0:ge.value.showPagination&&ce.value>1&&X.value<=520?40:0});const Me=function(e){const{props:A,emit:n,svgElement:i,sharedOverlayElement:a,sharedTransform:o,independentTransforms:r,trackLayouts:s,initialXDomain:l,sharedZoomDomain:g,innerWidth:c,innerHeight:d,hasChartArea:I,isZoomMode:u,isPresentationMode:m,resolveInitialTrackDomain:h,cancelPendingHover:C}=e,Q=new Map,B=hn();let E=!1,p=null,f=null,y=null;const v=new Map,w=new Map,k=new Map;let x,b=!1,M=0;const N=()=>B.schedule(S),D=e=>{if(E||m.value)return;C(),p=e.transform,f="wheel",Y();const[i,a]=oA(e.transform.rescaleX((0,t.scaleLinear)(l.value,[0,c.value])).domain(),A);n("zoom-intent",{start:i,end:a,gesture:"wheel"}),N()};function S(){if(m.value)return void J();if(p){const e=p;p=null,y=f,f=null,o.value=e;const i=e.rescaleX((0,t.scaleLinear)(l.value,[0,c.value])).domain();n("zoom-change",oA([i[0],i[1]],A))}if(!v.size)return;const e=[...r.value],i=Array.from(v.keys()),a=new Map(w);v.forEach((t,A)=>{e[A]=t}),v.clear(),w.clear(),r.value=e;const g=new Map(s.value.map(e=>[e.index,e]));i.forEach(e=>{const t=g.get(e);if(!t)return;if("wheel"===a.get(e)){const e=t.seriesList.map(e=>e.id);k.set(un(e),e)}const A=t.xScale.domain();n("zoom-change",[A[0],A[1]])})}const F=()=>{if("independent"===A.displayMode)return function(e,t,A){for(const n of A){const A=mn(t,n);if(!A)continue;const i=A.xScale.domain(),a=A.yScale.domain();e("zoom-end",{start:i[0],end:i[1],yStart:a[0],yEnd:a[1],trackIndex:A.index,seriesIds:[...n],gesture:"wheel"})}}(n,s.value,k.values()),void k.clear();"wheel"===y?(function(e,t,A){const n=A.filter(e=>e.hasVisibleSeries);if(1===n.length){const A=n[0]?.yScale.domain();return void e("zoom-end",{start:t[0],end:t[1],yStart:A?.[0],yEnd:A?.[1],gesture:"wheel"})}e("zoom-end",{start:t[0],end:t[1],yRanges:Object.fromEntries(n.map(e=>[e.series?.trackId??e.series?.id??e.id,e.yScale.domain()])),gesture:"wheel"})}(n,g.value,s.value),y=null):y=null},G=e=>{e===M&&(B.flush(),S(),"wheel"===y||k.size||F())};function Y(){void 0!==x&&clearTimeout(x),x=setTimeout(()=>{x=void 0,B.flush(),S(),F(),b=!1},200)}const J=()=>{p=null,f=null,y=null,v.clear(),w.clear(),k.clear(),B.cancel(),b=!1,void 0!==x&&(clearTimeout(x),x=void 0)},R=(e=!1)=>{M+=1,e||J(),i.value?.querySelectorAll(".waveform-chart__overlay").forEach(e=>(0,t.select)(e).on(".zoom",null)),Q.clear()},T=(e,t)=>{const n=Math.abs(e[1]-e[0]);if(!Number.isFinite(n)||n<=0)return 1;const i=FA(e,t,A);return Math.max(1,i>0?n/i:Number.POSITIVE_INFINITY)},Z=(e,n,i,a)=>YA(ZA(e.rescaleX((0,t.scaleLinear)(n,[0,i])).domain(),n,a,A),n,i),U=e=>{const t=Number(A.minVisiblePoints);return function(e,t,A){if(!Number.isFinite(A)||A<=0)return!0;const n=Math.ceil(A),i=new Set;for(const a of e){const e=a.source??ie(a.points),A=e.visibleRange(t);for(let t=A.start;t<A.end;t+=1)if(i.add(e.pointAt(t).x),i.size>=n)return!0}return!1}(e.seriesList,e.xScale.domain(),Number.isFinite(t)&&t>0?Math.ceil(t)+1:t)},L=()=>{const e=s.value.filter(e=>e.hasVisibleSeries);return e.length>0&&e.every(U)},V=e=>{const t=RA(A);return t?Math.min(1,(e[1]-e[0])/(t[1]-t[0])):1},O=(e,A,n)=>{if("wheel"!==e.type)return!1;const i=e.deltaY,a=(0,t.zoomTransform)(e.currentTarget).k;return i<0?A:i>0&&a>1.000001*n};return{cancelPendingZoom:J,clearZoomBindings:R,canZoomTrack:U,canZoomSharedTracks:L,configureZoom:()=>{R(b);const e=M;if(m.value||!A.zoomable||!u.value||!I.value||!s.value.length)return;if("independent"===A.displayMode)return void s.value.forEach(a=>{const o=i.value?.querySelector(`[data-independent-overlay-index="${a.index}"]`);if(!o)return;const l=h(a),g=[a.seriesList],c=V(l),d=(0,t.zoom)().filter(e=>{const t=s.value.find(e=>e.index===a.index)??a;return O(e,U(t),c)}).scaleExtent([c,T(l,g)]).constrain(e=>Z(e,l,a.width,g)).extent([[0,0],[a.width,a.height]]).translateExtent([[0,0],[a.width,a.height]]).on("zoom",e=>((e,i)=>{if(E||m.value)return;C(),v.set(i,e.transform),w.set(i,"wheel"),Y();const a=s.value.find(e=>e.index===i);if(a){const o=e.transform.rescaleX((0,t.scaleLinear)(h(a),[0,a.width])).domain();n("zoom-intent",{start:oA(o,A)[0],end:oA(o,A)[1],trackIndex:i,seriesIds:a.seriesList.map(e=>e.id),gesture:"wheel"})}N()})(e,a.index)).on("end",()=>G(e));Q.set(a.index,d),E=!0;try{(0,t.select)(o).call(d).on("dblclick.zoom",null).call(d.transform,r.value[a.index]??t.zoomIdentity)}finally{E=!1}});const g=a.value;if(!g)return;const B=s.value.filter(e=>e.hasVisibleSeries).map(e=>e.seriesList),p=V(l.value),f=(0,t.zoom)().filter(e=>O(e,L(),p)).scaleExtent([p,T(l.value,B)]).constrain(e=>Z(e,l.value,c.value,B)).extent([[0,0],[c.value,d.value]]).translateExtent([[0,0],[c.value,d.value]]).on("zoom",D).on("end",()=>G(e));Q.set("shared",f),E=!0;try{(0,t.select)(g).call(f).on("dblclick.zoom",null).call(f.transform,o.value)}finally{E=!1}},prepareForDataChange:()=>{void 0!==x&&(B.flush(),S(),b=!0)}}}({props:s,emit:a,svgElement:c,sharedOverlayElement:I,sharedTransform:B,independentTransforms:E,trackLayouts:le,initialXDomain:Ee,sharedZoomDomain:pe,innerWidth:he,innerHeight:ne,hasChartArea:Ce,isZoomMode:Be,isPresentationMode:q,resolveInitialTrackDomain:fe,cancelPendingHover:()=>Se.cancelPendingHover()});L=Me.prepareForDataChange;const Ne=function(A){const{props:n,emit:i,container:a,chartSeries:o,hiddenSeriesIdSet:r,internalHiddenSeriesIds:s,annotationInteraction:l,editorSeriesOptions:g,trackLayouts:c,annotationLayoutsForTrack:d,resolveSeriesYScale:I,chartWidth:u,chartHeight:m,innerWidth:h,resolvedChartLeftMargin:C,titleAreaHeight:Q,chartTopMargin:B,activeInteractionMode:E,isPresentationMode:p}=A,f=(0,e.ref)("");function y(e,A){const n=e.currentTarget;if(!n)return{x:u.value/2,y:m.value/2};const[i,a]=(0,t.pointer)(e,n),o=void 0===A?void 0:c.value[A];return{x:C.value+(o?o.left+i:i),y:Q.value+B.value+(o?o.top+a:a)}}function v(){f.value="",l.closeEditor(),g.value=[]}function w(e,t,A){if(void 0!==A){const e=c.value[A];return e?.hasVisibleSeries?e:void 0}return function(e,t,A){const n=e=>{const n=t<e.left?e.left-t:t>e.left+e.width?t-e.left-e.width:0;return A<e.top?e.top-A:A>e.top+e.height?A-(e.top+e.height):n};let i=e[0];if(!i)return;let a=n(i);for(let o=1;o<e.length;o+=1){const t=e[o],r=n(t);r<a?(i=t,a=r):r===a&&Math.abs(A-(t.top+t.height/2))<Math.abs(A-(i.top+i.height/2))&&(i=t)}return i}(c.value.filter(e=>e.hasVisibleSeries),e,t)}return{toggleSeriesVisibility:function(e){if(!o.value.some(t=>t.id===e))return;const t=new Set(r.value),A=t.has(e);A?t.delete(e):t.add(e);const a=Array.from(t);void 0===n.hiddenSeriesIds&&(s.value=t),i("update:hidden-series-ids",a),i("series-visibility-change",{seriesId:e,visible:A,hiddenSeriesIds:a})},changeDraftSeries:function(e){if(p.value)return;const t=l.editorDraft.value,A=g.value.find(t=>t.seriesId===e),n=c.value.find(t=>t.seriesList.some(t=>t.id===e)),i=(n?.seriesList.find(t=>t.id===e))?.source,a=i?.pointAt(0),o=i?.pointAt((i?.length??0)-1),r=t?i?.nearestPoint(t.annotation.x):void 0;t&&A&&n&&a&&o&&r?t.annotation.x<a.x||t.annotation.x>o.x?f.value="时间超出当前波形范围":(f.value="",t.annotation={...t.annotation,seriesId:e,y:r.y,style:{...t.annotation.style,borderColor:A.color}}):f.value="当前波形没有有效数据"},changeDraftTime:function(e){if(p.value)return;const t=l.editorDraft.value,A=Number(e);if(!t||!Number.isFinite(A))return void(f.value="请输入有效的时间");const i="ms"===n.timeUnit?A/1e3:A,a=(c.value.find(e=>e.seriesList.some(e=>e.id===t.annotation.seriesId))?.seriesList.find(e=>e.id===t.annotation.seriesId))?.source,o=a?.pointAt(0),r=a?.pointAt((a?.length??0)-1);if(!a||!o||!r)return void(f.value="当前波形没有有效数据");if(i<o.x||i>r.x)return void(f.value="时间超出当前波形范围");const s=a.nearestPoint(i);f.value="",t.annotation={...t.annotation,x:s.x,y:s.y}},timeError:f,cancelAnnotation:v,resolveTrackAtPointer:w,handleAnnotationClick:function(e,A){if(p.value||!n.annotationsVisible||0!==e.button||"annotation"!==E.value)return;const i=function(e,A){const n=e.currentTarget;if(!n||!c.value.length)return null;const[i,a]=(0,t.pointer)(e,n),o=void 0===A?a:a+(c.value[A]?.top??0),r=w(i,o,A);if(!r)return null;const s=Math.max(0,Math.min(h.value,i)),l=Math.max(0,Math.min(r.width,s-r.left)),g=r.xScale.invert(l);return{candidates:ht(d(r),g,l,o),editorAnchor:y(e,A)}}(e,A);if(!i||!i.candidates.length)return;const a=function(e){const t=e[0];return!t||t.distance>12?[]:e.filter(e=>e.distance<=12&&e.distance-t.distance<5)}(i.candidates);e.preventDefault(),e.stopPropagation(),function(e,t,A){f.value="",l.openCreate(e,ln,t),g.value=A;const n=l.editorDraft.value,i=c.value.find(t=>t.index===e.trackIndex)?.seriesList.find(t=>t.id===e.seriesId);"add"===n?.mode&&(n.annotation.style={borderColor:i?.color||"#1677ff",textColor:"#333333",backgroundColor:"rgba(255, 255, 255, 0.92)"})}(a[0]??i.candidates[0],i.editorAnchor,i.candidates)},handleNativeContextMenu:function(e){const t=e.target;t instanceof Element&&t.closest('input, textarea, [contenteditable]:not([contenteditable="false"])')||e.preventDefault()},handleExistingAnnotationContextMenu:function(e,t){if(p.value||!n.annotationsVisible||!a.value)return;if(g.value=[],!n.annotations.find(t=>t.id===e))return;const A=a.value.getBoundingClientRect(),i={x:Math.max(0,Math.min(t.clientX-A.left,u.value)),y:Math.max(0,Math.min(t.clientY-A.top,m.value))};l.openContextMenu({annotationId:e,x:Math.max(4,Math.min(t.clientX-A.left,u.value-120)),y:Math.max(4,Math.min(t.clientY-A.top,m.value-110)),editorAnchor:i})},handleAnnotationMove:function(e,t,A){p.value||n.annotations.find(t=>t.id===e)&&Number.isFinite(t)&&Number.isFinite(A)&&i("update:annotations",n.annotations.map(n=>n.id===e?{...n,labelOffsetX:t,labelOffsetY:A}:n))},editContextAnnotation:function(){if(p.value)return;f.value="";const e=l.contextMenu.value,t=n.annotations.find(t=>t.id===e?.annotationId);if(!t)return;const A=c.value.find(e=>e.seriesList.some(e=>e.id===t.seriesId));g.value=A?ht(d(A),t.x,A.xScale(t.x),A.top+I(A,t.seriesId)(t.y)):[],l.openEdit(t,e?.editorAnchor??function(e){const t=c.value.find(t=>t.seriesList.some(t=>t.id===e.seriesId));return{x:t?C.value+t.left+t.xScale(e.x):u.value/2,y:t?Q.value+B.value+t.top+I(t,e.seriesId)(e.y):m.value/2}}(t))},deleteContextAnnotation:function(){if(p.value)return;const e=l.contextMenu.value?.annotationId,t=n.annotations.find(t=>t.id===e);t&&(i("update:annotations",n.annotations.filter(e=>e.id!==t.id)),i("annotation-delete",t),l.closeContextMenu())},confirmAnnotation:function(e){if(p.value)return;const t=l.editorDraft.value;t&&!f.value&&("add"===t.mode?(i("update:annotations",[...n.annotations,e]),i("annotation-create",e)):(i("update:annotations",n.annotations.map(t=>t.id===e.id?e:t)),i("annotation-update",e,t.previous)),v())}}}({props:s,emit:a,container:g,chartSeries:oe,hiddenSeriesIdSet:K,internalHiddenSeriesIds:b,annotationInteraction:S,editorSeriesOptions:G,trackLayouts:le,annotationLayoutsForTrack:ye,resolveSeriesYScale:ve,chartWidth:X,chartHeight:z,innerWidth:he,resolvedChartLeftMargin:Ie,titleAreaHeight:te,chartTopMargin:Ae,activeInteractionMode:Qe,isPresentationMode:q}),De=function(A){const{props:n,emit:i,selection:a,spacePressed:o,trackLayouts:r,chartTracks:s,initialXDomain:l,innerWidth:g,innerHeight:c,sharedOverlayElement:d,sharedTransform:I,independentTransforms:u,sharedYDomains:m,independentYDomains:h,isZoomMode:C,isPresentationMode:Q,editorSeriesOptions:B,resolveInitialTrackDomain:E,canZoomTrack:p,canZoomSharedTracks:f,configureZoom:y,cancelPendingZoom:v,clearHover:w,resolveTrackAtPointer:k}=A,x=(0,e.shallowRef)(),b=(e,t)=>{const A=x.value,n=t?.currentTarget;gn(A,e),n&&n!==A&&gn(n,e)},M=(e,t)=>{const A=a.value;A&&A.pointerId===e&&(b(e,t),a.value=In(a.value,{type:"cancel",pointerId:e}).state,x.value=void 0)},N=(0,e.computed)(()=>{const e=a.value;if(!e)return null;const t=r.value.find(t=>t.index===e.trackIndex);return{x:Math.min(e.startX,e.currentX)+(e.independent?t?.left??0:0),y:Math.min(e.startY,e.currentY)+(e.independent?t?.top??0:0),width:Math.abs(e.currentX-e.startX),height:Math.abs(e.currentY-e.startY)}}),D=(e,A,i)=>{if(Q.value)return;const s=n.pannable&&("pan"===n.interactionMode||C.value&&o.value);if(!n.zoomable&&!s||!C.value&&!s||0!==e.button)return;const l=e.currentTarget,d=r.value.find(e=>e.index===A);if(!d)return;const[I,u]=(0,t.pointer)(e,l),m=Math.max(0,Math.min(i?d.width:g.value,I)),h=Math.max(0,Math.min(i?d.height:c.value,u)),B=In(a.value,{type:"begin",gesture:{trackIndex:A,independent:i,startX:m,startY:h,pointerId:e.pointerId,kind:s?"pan":"box",xDomain:d.xScale.domain(),yDomains:Object.fromEntries(r.value.filter(e=>e.hasVisibleSeries).map(e=>[e.series?.trackId??e.series?.id??e.id,e.yScale.domain()]))}});B.accepted&&(a.value=B.state,x.value=l,l.setPointerCapture?.(e.pointerId),w(),e.preventDefault())},S=function(e){const{props:t,emit:A,resolveInitialTrackDomain:n,initialXDomain:i,independentTransforms:a,sharedTransform:o,innerWidth:r,trackLayouts:s,chartTracks:l,independentYDomains:g,sharedYDomains:c}=e;return(e,d)=>{const I=d.width||1,u=d.height||1,m=e.currentX-e.startX,h=e.currentY-e.startY,C=e.xDomain[1]-e.xDomain[0],Q=e.independent?n(d):i.value,B=RA(t)??Q,E=JA(function(e,t){if(!t.integerZoom)return e;const A="s"===t.timeUnit?1:1e3;return[Math.round(e[0]*A)/A,Math.round(e[1]*A)/A]}(JA([e.xDomain[0]-m/I*C,e.xDomain[1]-m/I*C],B),t),B);if(e.independent){const e=[...a.value];e[d.index]=YA(E,Q,I),a.value=e}else o.value=YA(E,Q,r.value);if(RA(t))return A("zoom-change",E),E;const p=e.independent?[d]:s.value.filter(e=>e.hasVisibleSeries),f={...g.value},y={...c.value};return p.forEach(A=>{const n=l.value.find(e=>e.id===A.id);if(n&&function(e,t,A){return Boolean(Ot(e,A)||e.visibleSeries.some(e=>jt(e,t,A)))}(n,t.yDomain,t.yDomains))return;const i=A.series?.trackId??A.series?.id??A.id,a=e.yDomains[i]??A.yScale.domain(),o=n?.yDomain??a,r=a[1]-a[0],s=JA([a[0]+h/u*r,a[1]+h/u*r],o);e.independent?f[A.index]=s:y[i]=s}),e.independent?g.value=f:c.value=y,A("zoom-change",E),E}}(A),F=e=>{const t=a.value;!t||e&&e.pointerId!==t.pointerId||M(t.pointerId,e)},G=i=>{if(A.clearBoundaries?.(i),v(),F(),"independent"===n.displayMode&&void 0!==i){const e=[...u.value];e[i]=t.zoomIdentity,u.value=e;const A={...h.value};delete A[i],h.value=A}else I.value=t.zoomIdentity,u.value=s.value.map(()=>t.zoomIdentity),m.value={},h.value={};w(),B.value=[],(0,e.nextTick)(y)},Y=function(t){return(A,n)=>{if(Number.isFinite(A[0])&&Number.isFinite(A[1])&&A[0]!==A[1]){if(t.cancelPendingZoom(),t.cancelViewportDrag(),"independent"===t.props.displayMode){const e=void 0===n?t.trackLayouts.value.map(e=>e.index):[n],i=[...t.independentTransforms.value];e.forEach(e=>{const n=t.trackLayouts.value.find(t=>t.index===e);if(!n)return;const a=t.resolveInitialTrackDomain(n),o=ZA(A,a,[n.seriesList],t.props);i[e]=YA(o,a,n.width)}),t.independentTransforms.value=i}else{const e=t.initialXDomain.value,n=ZA(A,e,t.trackLayouts.value.filter(e=>e.hasVisibleSeries).map(e=>e.seriesList),t.props);t.sharedTransform.value=YA(n,e,t.innerWidth.value)}t.clearHover(),t.editorSeriesOptions.value=[],(0,e.nextTick)(t.configureZoom)}}}({props:n,trackLayouts:r,initialXDomain:l,resolveInitialTrackDomain:E,innerWidth:g,sharedTransform:I,independentTransforms:u,cancelPendingZoom:v,cancelViewportDrag:F,clearHover:w,editorSeriesOptions:B,configureZoom:y});return{selectionBox:N,beginViewportDrag:D,beginSharedViewportDrag:e=>{if(!d.value)return;const[A,n]=(0,t.pointer)(e,d.value),i=k(A,n),a=(i?.hasVisibleSeries?i:void 0)??r.value.find(e=>e.hasVisibleSeries);a&&D(e,a.index,!1)},updateViewportDrag:e=>{if(Q.value)return;const A=a.value,n=x.value;if(!A||!n||e.pointerId!==A.pointerId)return;const i=r.value.find(e=>e.index===A.trackIndex);if(!i)return;const[o,s]=(0,t.pointer)(e,n),l=Math.max(0,Math.min(A.independent?i.width:g.value,o)),d=Math.max(0,Math.min(A.independent?i.height:c.value,s)),I=In(a.value,{type:"move",pointerId:e.pointerId,position:{currentX:l,currentY:d}});if(!I.accepted||!I.state)return;const u=I.state;a.value=u,"pan"===u.kind&&S(u,i),e.preventDefault()},finishViewportDrag:A=>{if(Q.value)return void F();const o=a.value;if(!o||A.pointerId!==o.pointerId)return;const s=r.value.find(e=>e.index===o.trackIndex),d=x.value;if(!s||!d||!d.parentNode)return void M(o.pointerId,A);const[m,h]=(0,t.pointer)(A,d),C=Math.max(0,Math.min(o.independent?s.width:g.value,m)),B=Math.max(0,Math.min(o.independent?s.height:c.value,h)),v=In(a.value,{type:"finish",pointerId:A.pointerId,position:{currentX:C,currentY:B}}).completed;if(v){if(a.value=null,b(v.pointerId,A),x.value=void 0,A.preventDefault(),"pan"===v.kind){const t=S(v,s);return t.some((e,t)=>Math.abs(e-v.xDomain[t])>1e-12)&&i("pan-end",{start:t[0],end:t[1],...v.independent?{trackIndex:s.index,seriesIds:s.seriesList.map(e=>e.id)}:{}}),void(0,e.nextTick)(y)}Math.abs(v.currentX-v.startX)>=6&&(t=>{const A=r.value.find(e=>e.index===t.trackIndex);if(!A||(t.independent?!p(A):!f()))return;const a=t.independent?0:A.left,o=Math.max(0,Math.min(A.width,Math.min(t.startX,t.currentX)-a)),s=Math.max(0,Math.min(A.width,Math.max(t.startX,t.currentX)-a));if(s-o<6)return;const c=t.independent?E(A):l.value,d=t.independent?[A.seriesList]:r.value.filter(e=>e.hasVisibleSeries).map(e=>e.seriesList),m=ZA([A.xScale.invert(o),A.xScale.invert(s)],c,d,n);if(t.independent){const e=[...u.value];e[A.index]=YA(m,c,A.width),u.value=e}else I.value=YA(m,c,g.value);!function(e,t,A,n){e("zoom-intent",n?{start:t[0],end:t[1],trackIndex:A.index,seriesIds:A.seriesList.map(e=>e.id),gesture:"box"}:{start:t[0],end:t[1],gesture:"box"})}(i,m,A,t.independent);const h=t.independent?[A]:r.value.filter(e=>e.hasVisibleSeries),C=Object.fromEntries(h.map(e=>[e.series?.trackId??e.series?.id??e.id,e.yScale.domain()]));if(i("zoom-change",m),t.independent){const e=C[A.series?.trackId??A.series?.id??A.id];i("zoom-end",{start:m[0],end:m[1],trackIndex:A.index,seriesIds:A.seriesList.map(e=>e.id),yStart:e?.[0],yEnd:e?.[1],gesture:"box"})}else if(1===h.length){const e=Object.values(C)[0];i("zoom-end",{start:m[0],end:m[1],yStart:e?.[0],yEnd:e?.[1],gesture:"box"})}else i("zoom-end",{start:m[0],end:m[1],yRanges:C,gesture:"box"});(0,e.nextTick)(y)})(v)}},cancelViewportDrag:F,resetViewport:G,setViewportDomain:Y,requestViewportReset:e=>{if(!Q.value&&n.zoomable&&C.value){if("independent"===n.displayMode){const t=(e.target instanceof Element?e.target:null)?.closest("[data-independent-overlay-index]"),A=Number(t?.getAttribute("data-independent-overlay-index")),n=r.value.find(e=>e.index===A);if(!n)return;return e.preventDefault(),G(A),void i("zoom-reset",{trackIndex:A,seriesIds:n.legendSeries.map(e=>e.id)})}e.preventDefault(),G(),i("zoom-reset",{})}}}}({clearBoundaries:e=>Ge.clearBoundaries(e),props:s,emit:a,selection:J,spacePressed:R,trackLayouts:le,chartTracks:re,initialXDomain:Ee,innerWidth:he,innerHeight:ne,sharedOverlayElement:I,sharedTransform:B,independentTransforms:E,sharedYDomains:p,independentYDomains:f,isZoomMode:Be,isPresentationMode:q,editorSeriesOptions:G,resolveInitialTrackDomain:fe,canZoomTrack:Me.canZoomTrack,canZoomSharedTracks:Me.canZoomSharedTracks,configureZoom:Me.configureZoom,cancelPendingZoom:Me.cancelPendingZoom,clearHover:()=>Se.clearHover(),resolveTrackAtPointer:Ne.resolveTrackAtPointer}),Se=function(e){const{emit:A,hoverState:n,suppressHoverUntilMove:i,hoverThrottle:a,selection:o,trackLayouts:r,innerWidth:s,resolvedChartLeftMargin:l,titleAreaHeight:g,chartTopMargin:c,sharedOverlayElement:d,isPresentationMode:I,updateViewportDrag:u,resolveTrackAtPointer:m}=e,h=()=>a.cancel(),C=e=>a.schedule(e),Q=(e,t,i,a,o)=>{I.value||((e=>n.points.length===e.length&&e.every((e,t)=>{const A=n.points[t];return A?.id===e.id&&A.trackIndex===e.trackIndex&&A.point===e.point}))(e)||(n.points=e),n.trackIndex=t,n.queryX=i,n.crosshairXByTrack=a,n.position=o,A("point-hover",n.points.find(e=>e.point)?.point??null))},B=()=>{h(),n.points=[],n.trackIndex=null,n.queryX=null,n.crosshairXByTrack={},A("point-hover",null)},E=(e,t,A)=>({id:e.id,shotNo:e.shotNo,name:e.name,color:e.color,unit:e.unit,trackIndex:t,point:A}),p=()=>!!i.value&&(i.value=!1,B(),!0),f=(e,t)=>{const A=e.source??ie(e.points),n=A.pointAt(0),i=A.pointAt(A.length-1);if(n&&i)return t<=n.x?n:t>=i.x?i:A.nearestPoint(t)},y=(e,t)=>{let A,n=-1/0;if(e.seriesList.forEach(e=>{const t=e.source??ie(e.points),i=t.pointAt(0),a=t.pointAt(t.length-1);if(!i||!a)return;const o=a.x-i.x;o>n&&(n=o,A=[i.x,a.x])}),A)return Math.max(A[0],Math.min(A[1],t))};return{cancelPendingHover:h,clearHover:B,handlePointerLeave:()=>{I.value||B()},beginAnnotationDrag:()=>{i.value=!0,B()},endAnnotationDrag:(e=!1)=>{i.value=!e,B()},handleIndependentPointerMove:(e,A)=>{if(I.value)return;if(o.value?.trackIndex===A&&o.value.independent)return void u(e);if(p())return;const n=e.currentTarget;if(!n)return;const[i,a]=(0,t.pointer)(e,n),d=r.value[A];d&&d.hasVisibleSeries&&C(()=>{const e=r.value[A];if(!e||!e.hasVisibleSeries||e!==d)return;const t=d.xScale.invert(Math.max(0,Math.min(s.value,i))),n=d.seriesList.map(e=>E(e,A,f(e,t)??null)),o=y(d,t);Q(n,A,t,void 0===o?{}:{[A]:o},{x:l.value+d.left+i,y:g.value+c.value+d.top+a})})},handleSharedPointerMove:e=>{if(I.value)return;if(o.value&&!o.value.independent)return void u(e);if(p())return;if(!d.value||!r.value.length)return;const[A,n]=(0,t.pointer)(e,d.value);C(()=>{const e=m(A,n),t=(e?.hasVisibleSeries?e:void 0)??r.value.find(e=>e.hasVisibleSeries);if(!t)return;const i=Math.max(0,Math.min(t.width,A-t.left)),a=t.xScale.invert(i),o=r.value.flatMap(e=>e.seriesList.map(t=>E(t,e.index,f(t,a)??null))),s=Object.fromEntries(r.value.flatMap(e=>{const t=y(e,a);return void 0===t?[]:[[e.index,t]]}));Q(o,null,a,s,{x:l.value+A,y:g.value+c.value+n})})}}}({emit:a,hoverState:y,suppressHoverUntilMove:v,hoverThrottle:Y,selection:J,trackLayouts:le,innerWidth:he,resolvedChartLeftMargin:Ie,titleAreaHeight:te,chartTopMargin:Ae,sharedOverlayElement:I,isPresentationMode:q,updateViewportDrag:De.updateViewportDrag,resolveTrackAtPointer:Ne.resolveTrackAtPointer}),Fe=()=>{De.cancelViewportDrag(),Me.cancelPendingZoom(),Se.clearHover(),Ne.cancelAnnotation()},Ge=function(t){let A=0;const n=(0,e.computed)(()=>"independent"===t.props.displayMode),i=()=>n.value?t.layout.trackLayouts.value.map(e=>({id:e.id,tracks:[e]})):[{id:"shared",tracks:t.layout.trackLayouts.value}],a=e=>({xDomain:[...n.value?e[0].xScale.domain():t.layout.sharedZoomDomain.value],yDomains:Object.fromEntries(e.flatMap(e=>e.seriesPaths.map(e=>[e.series.id,e.yScale.domain()])))}),o=(e,A=!1)=>n.value?(A?t.layout.resolveOriginalTrackDomain:t.layout.resolveInitialTrackDomain)(e[0]):(A?t.layout.originalXDomain:t.layout.initialXDomain).value,r=e=>{if(n.value&&void 0!==e){const A=t.layout.trackLayouts.value.find(t=>t.index===e)?.id,n={...t.boundaries.value};A&&delete n[A],t.boundaries.value=n}else t.boundaries.value={}};function s(e,A={},r){const s=i();return void 0===A.trackId||n.value&&s.some(e=>e.id===A.trackId)?"set-domain"!==e||r&&r.every(Number.isFinite)&&r[0]!==r[1]?{entries:(void 0===A.trackId?s:s.filter(e=>e.id===A.trackId)).map(({id:A,tracks:i})=>{const s=i.some(e=>e.seriesList.some(e=>(e.source?.length??e.points.length)>0)),l=i.length?a(i):void 0;let g=i.length?o(i,"reset"===e):[0,1];"fit"===e&&(g=eA(Nt(i.flatMap(e=>e.seriesList.flatMap(e=>e.xDomain))),t.props.xDomainStrategy));let c=r??g;if(l&&("zoom-in"===e||"zoom-out"===e)){const[t,A]=l.xDomain,n=(A-t)*("zoom-in"===e?.25:1);c=[(t+A)/2-n,(t+A)/2+n]}const d=ZA(oA(c,t.props),g,i.filter(e=>e.hasVisibleSeries).map(e=>e.seriesList),t.props),I="reset"===e||"fit"===e,u=I&&(n.value?i.some(e=>t.independentYDomains.value[e.index]):Object.keys(t.sharedYDomains.value).length>0),m=i.length&&!UA(g,o(i));return{id:A,tracks:i,before:l,bounds:g,xDomain:d,status:s?t.props.presentationMode||!t.props.zoomable?"disabled":l&&UA(l.xDomain,d)&&!u&&!m?"unchanged":"applied":"empty-data",resetsY:I}})}:{error:"invalid-domain",entries:[]}:{error:"invalid-target",entries:[]}}function l(o,r={},l,g="api"){const c=s(o,r,l);if(c.error)return{kind:"viewport",status:c.error,targets:[]};const{entries:d}=c,I=n.value,u={commandId:"command-"+ ++A,source:g,action:o},m=d.map(e=>({trackIndex:I?e.tracks[0]?.index:void 0,seriesIds:e.tracks.flatMap(e=>e.seriesList.map(e=>e.id))}));d.some(e=>"applied"===e.status||"reset"===o&&"unchanged"===e.status)&&t.cancel();const h=[...t.independentTransforms.value],C={...t.boundaries.value},Q={...t.independentYDomains.value};for(const e of d)if("applied"===e.status)if("fit"===o&&(C[e.id]=e.bounds),"reset"===o&&delete C[e.id],I){const t=e.tracks[0];h[t.index]=YA(e.xDomain,e.bounds,t.width),e.resetsY&&delete Q[t.index]}else t.sharedTransform.value=YA(e.xDomain,e.bounds,t.layout.innerWidth.value),e.resetsY&&(t.sharedYDomains.value={});d.some(e=>"applied"===e.status)&&(t.boundaries.value=C,t.independentTransforms.value=h,t.independentYDomains.value=Q);const B=i(),E=d.map(e=>({trackId:e.id,status:e.status,before:e.before,after:B.find(t=>t.id===e.id)?.tracks.length?a(B.find(t=>t.id===e.id).tracks):void 0})),p=d.map(e=>{const t=B.find(t=>t.id===e.id)?.tracks??[],A=Object.fromEntries(t.map(e=>[e.series?.trackId??e.series?.id??e.id,e.yScale.domain()])),n=Object.values(A)[0];return I||1===t.length?{yStart:n?.[0],yEnd:n?.[1]}:{yRanges:A}});return E.forEach((e,A)=>{if("reset"!==o||"applied"!==e.status&&"unchanged"!==e.status){if("applied"===e.status&&e.after){const[n,i]=e.after.xDomain,a={...u,...m[A],start:n,end:i,gesture:"command",...p[A]};"fit"!==o&&t.emit("zoom-intent",a),t.emit("zoom-change",[n,i]),t.emit("zoom-end",a)}}else t.emit("zoom-reset",{...u,...m[A]})}),E.some(e=>"applied"===e.status)&&(0,e.nextTick)(t.configure),{kind:"viewport",status:["applied","unchanged","disabled","empty-data"].find(e=>E.some(t=>t.status===e))??"empty-data",targets:E}}const g=(0,e.computed)(()=>{const e=["zoom-in","zoom-out","reset","fit","set-domain"],A=i().filter(e=>e.tracks.length).map(t=>({trackId:t.id,label:n.value?t.tracks[0].series?.name||t.id:"共享范围",viewport:a(t.tracks),available:Object.fromEntries(e.map(e=>{const A=s(e,n.value?{trackId:t.id}:{},a(t.tracks).xDomain).entries[0];return[e,"applied"===A?.status||("reset"===e||"set-domain"===e)&&"unchanged"===A?.status]}))}));return{mode:t.mode.mode.value,independent:n.value,targets:A,available:{"zoom-box":t.mode.canSetMode("zoom"),pan:t.mode.canSetMode("pan"),annotate:t.mode.canSetMode("annotation"),export:!0,"zoom-in":A.some(e=>e.available["zoom-in"]),"zoom-out":A.some(e=>e.available["zoom-out"]),reset:A.some(e=>e.available.reset),fit:A.some(e=>e.available.fit)}}}),c=()=>JSON.parse(JSON.stringify(g.value));return(0,e.watch)(()=>JSON.stringify(g.value),()=>t.emit("control-state-change",c())),{controlState:g,getControlState:c,execute:l,clearBoundaries:r,restoreInitialBoundaries:function(){if(!Object.keys(t.boundaries.value).length)return;const e=i().filter(e=>e.tracks.length).map(e=>({index:n.value?e.tracks[0].index:void 0,domain:a(e.tracks).xDomain}));r(),e.forEach(e=>t.legacySet(e.domain,e.index))},resetViewport:function(e){if("object"==typeof e)return l("reset",e);t.legacyReset(e)},setViewportDomain:function(e,A){if("object"==typeof A)return l("set-domain",A,e);e.every(Number.isFinite)&&e[0]!==e[1]&&r(A),t.legacySet(e,A)},zoomIn:e=>l("zoom-in",e),zoomOut:e=>l("zoom-out",e),fitToData:e=>l("fit",e),setInteractionMode:t.mode.setInteractionMode}}({props:s,emit:a,layout:ae,mode:r,boundaries:l,independentTransforms:E,sharedTransform:B,independentYDomains:f,sharedYDomains:p,cancel:Fe,configure:Me.configureZoom,legacyReset:De.resetViewport,legacySet:De.setViewportDomain});(0,e.watch)([r.mode,()=>s.zoomable,()=>s.pannable,()=>s.annotationsVisible],Fe,{flush:"sync"}),(0,e.watch)([w,()=>s.displayMode],()=>{l.value={},Fe()}),(0,e.watch)([()=>s.initialXDomain,()=>s.initialXDomains,K,()=>s.xDomainStrategy],Ge.restoreInitialBoundaries,{deep:!0}),(0,e.onBeforeUnmount)(Fe);const Ye=function(A){!function(t){const{container:A,titleMeasureElement:n,resizeObserver:i,observedWidth:a,observedHeight:o,measuredTitleWidth:r,measuredTitleHeight:s,resolvedTitleText:l,titleAreaReserved:g,titleMeasureStyle:c}=t;function d(){if(!g.value||!n.value)return r.value=0,void(s.value=0);const e=n.value.getBoundingClientRect();r.value=n.value.scrollWidth||e.width,s.value=n.value.scrollHeight||e.height}(0,e.watch)([l,g,c],async()=>{r.value=0,s.value=0,await(0,e.nextTick)(),d()},{immediate:!0}),(0,e.onMounted)(()=>{A.value&&(i.value=new ResizeObserver(([t])=>{a.value=Math.max(0,t?.contentRect.width??0),o.value=Math.max(0,t?.contentRect.height??0),(0,e.nextTick)(d)}),i.value.observe(A.value))}),(0,e.onBeforeUnmount)(()=>i.value?.disconnect())}(A);const{props:n,emit:i,spacePressed:a,pointerInsideChart:o,currentPage:r,pageCount:s,pagedTracks:l,gridOptions:g,chartSeries:c,chartTracks:d,innerWidth:I,innerHeight:u,activeInteractionMode:m,hiddenSeriesIdSet:h,internalHiddenSeriesIds:C,independentTransforms:Q,independentYDomains:B,annotationInteraction:E,editorSeriesOptions:p,isPresentationMode:f,clearHover:y,cancelAnnotation:v,configureZoom:w,resetViewport:k,cancelViewportDrag:x,cancelPendingHover:b,clearZoomBindings:M}=A;function N(e){var t;"Escape"===e.key&&(x(),v()),!f.value&&"Space"===e.code&&n.pannable&&o.value&&((t=e.target)instanceof Element&&Boolean(t.closest('button, input, select, textarea, [contenteditable]:not([contenteditable="false"])'))||(a.value=!0,e.preventDefault()))}function D(e){"Space"===e.code&&(a.value=!1)}const{handleBeforeDataReferenceChange:S,handleDataReferenceChange:F}=function(A){const{props:n,trackLayouts:i,resolveInitialTrackDomain:a,sharedZoomDomain:o,initialXDomain:r,independentTransforms:s,chartTracks:l,clearHover:g,editorSeriesOptions:c,sharedTransform:d,innerWidth:I,configureZoom:u}=A;let m,h;return{handleBeforeDataReferenceChange:function(){if("independent"===n.displayMode)return m=void 0,void(h=new Map(i.value.flatMap(e=>{const t=e.xScale.domain(),i=a(e);return A.preserveFullViewport?.()||RA(n)||t[1]-t[0]<i[1]-i[0]-1e-12?[[un(e.seriesList.map(e=>e.id)),t]]:[]})));h=void 0;const e=o.value,t=r.value;m=A.preserveFullViewport?.()||RA(n)||e[1]-e[0]<t[1]-t[0]-1e-12?[...e]:void 0},handleDataReferenceChange:function(){if("independent"===n.displayMode){const e=s.value;s.value=l.value.map((A,n)=>e[n]??t.zoomIdentity)}g(),c.value=[],(0,e.nextTick)(()=>{if("independent"===n.displayMode&&h){const e=l.value.map(()=>t.zoomIdentity);i.value.forEach(t=>{const A=h?.get(un(t.seriesList.map(e=>e.id)));if(!A)return;const i=a(t),o=TA(A,i,[t.seriesList],n);e[t.index]=YA(o,i,t.width)}),s.value=e,h=void 0}else if("independent"!==n.displayMode&&m){const e=r.value,t=i.value.filter(e=>e.hasVisibleSeries).map(e=>e.seriesList),A=TA(m,e,t,n);d.value=YA(A,e,I.value),m=void 0}u()})}}}(A);return(0,e.watch)([I,u,()=>n.zoomable,f,()=>n.minZoomSpan,()=>n.minVisiblePoints,()=>n.maxZoomScale,()=>n.initialXDomain,()=>n.initialXDomains,()=>n.xDomainStrategy,()=>n.displayMode,()=>d.value.length,r,()=>g.value.rowCount,()=>g.value.columnCount,()=>g.value.fillIncompleteLastRow,m],async()=>{await(0,e.nextTick)(),w()},{immediate:!0}),(0,e.watch)(()=>[n.displayMode,n.integerZoom,n.integerZoom?n.timeUnit:void 0],()=>{const e=r.value;r.value=1,k(),1!==e&&i("page-change",1,s.value)}),(0,e.watch)([s,()=>n.grid?.rowCount,()=>n.grid?.columnCount,()=>n.grid?.fillIncompleteLastRow],()=>{const t=r.value;r.value=r.value>s.value?s.value:1!==r.value?1:r.value,t!==r.value&&i("page-change",r.value,s.value),y(),(0,e.nextTick)(w)}),(0,e.watch)(m,()=>{p.value=[]}),(0,e.watch)(f,e=>{a.value=!1,e&&(x(),M(),y(),E.closeContextMenu(),v())}),(0,e.watch)(()=>c.value.map(e=>e.id).join("\0"),()=>{if(void 0!==n.hiddenSeriesIds)return;const e=new Set(c.value.map(e=>e.id)),t=new Set(Array.from(C.value).filter(t=>e.has(t)));(t.size!==C.value.size||Array.from(C.value).some(e=>!t.has(e)))&&(C.value=t)},{immediate:!0}),(0,e.watch)(()=>d.value.flatMap(e=>e.visibleSeries.map(e=>e.id)).join("\0"),()=>{y(),p.value=[];const t=E.editorDraft.value?.annotation.seriesId;!t||c.value.some(e=>e.id===t)&&!h.value.has(t)||E.closeEditor();const A=E.contextMenu.value?.annotationId,i=n.annotations.find(e=>e.id===A);i&&h.value.has(i.seriesId)&&E.closeContextMenu(),(0,e.nextTick)(w)}),(0,e.watch)(()=>n.annotationsVisible,e=>{e||(E.closeContextMenu(),v())}),(0,e.watch)(()=>n.annotations,e=>{const t=E.contextMenu.value?.annotationId;t&&!e.some(e=>e.id===t)&&E.closeContextMenu();const A=E.editorDraft.value;"edit"!==A?.mode||e.some(e=>e.id===A.annotation.id)||E.closeEditor()},{deep:!0}),(0,e.onMounted)(()=>{window.addEventListener("keydown",N),window.addEventListener("keyup",D)}),(0,e.onBeforeUnmount)(()=>{window.removeEventListener("keydown",N),window.removeEventListener("keyup",D),b(),M(),p.value=[]}),{goToPage:function(A){const a=Math.min(s.value,Math.max(1,Math.floor(A)));a!==r.value&&(r.value=a,y(),E.closeContextMenu(),v(),"independent"===n.displayMode&&(Q.value=l.value.map(()=>t.zoomIdentity),B.value={}),(0,e.nextTick)(w),i("page-change",a,s.value))},handleBeforeDataReferenceChange:S,handleDataReferenceChange:F}}({preserveFullViewport:()=>Object.keys(l.value).length>0,props:s,emit:a,container:g,titleMeasureElement:d,resizeObserver:k,observedWidth:u,observedHeight:m,measuredTitleWidth:h,measuredTitleHeight:C,resolvedTitleText:_,titleAreaReserved:$,titleMeasureStyle:ee,spacePressed:R,pointerInsideChart:T,currentPage:w,pageCount:ce,pagedTracks:de,gridOptions:ge,chartSeries:oe,chartTracks:re,trackLayouts:le,innerWidth:he,innerHeight:ne,sharedZoomDomain:pe,initialXDomain:Ee,sharedTransform:B,activeInteractionMode:Qe,hiddenSeriesIdSet:K,internalHiddenSeriesIds:b,independentTransforms:E,independentYDomains:f,resolveInitialTrackDomain:fe,annotationInteraction:S,editorSeriesOptions:G,isPresentationMode:q,clearHover:Se.clearHover,cancelAnnotation:Ne.cancelAnnotation,configureZoom:Me.configureZoom,resetViewport:De.resetViewport,cancelViewportDrag:De.cancelViewportDrag,cancelPendingHover:Se.cancelPendingHover,clearZoomBindings:Me.clearZoomBindings});Z=Ye.handleBeforeDataReferenceChange,U=()=>{l.value={},De.cancelViewportDrag(),Ye.handleDataReferenceChange(),(0,e.nextTick)(Me.configureZoom)};const Je=function(t){let A,n=!1,i=!1,a=0;return(0,e.watch)(t.version,()=>{a++,A?.(bA("export-stale"))},{flush:"sync"}),(0,e.onBeforeUnmount)(()=>{i=!0,A?.(bA("export-cancelled"))}),{exportImage:async function(o={}){const r=o.format??"png",s=o.scale??1;if(!["png","svg"].includes(r)||!Number.isFinite(s)||s<=0||s>4||"svg"===r&&1!==s||void 0!==o.backgroundColor&&("string"!=typeof o.backgroundColor||!CSS.supports("color",o.backgroundColor)))throw bA("export-invalid-options");if(i)throw bA("export-cancelled");if(n)throw bA("export-busy");const l=t.container(),g=t.svg(),c=t.size();if(!l||!g||c.width<=0||c.height<=0)throw bA("export-unavailable");n=!0;const d=a;let I,u,m,h,C,Q=!1;const B=()=>{if(i)throw bA("export-cancelled");if(d!==a)throw bA("export-stale");if(Q)throw bA("export-timeout")},E=new Promise((e,t)=>{A=t,I=setTimeout(()=>t(bA("export-timeout")),5e3)}),p=async()=>{await(0,e.nextTick)(),B(),await new Promise(e=>{const A=()=>{Q||(t.ready()?e():u=setTimeout(A,16))};A()}),await(document.fonts?.ready),await(0,e.nextTick)(),B(),yA(g);const A=function(e,t,A,n,i,a){const o=wA("svg",{width:A,height:n,viewBox:`0 0 ${A} ${n}`}),r=a??getComputedStyle(e).backgroundColor;o.appendChild(wA("rect",{width:A,height:n,fill:r||"#fff"}));const s=t.cloneNode(!0);xA(t,s),function(e,t){const A=e.querySelectorAll("foreignObject");t.querySelectorAll("foreignObject").forEach((e,t)=>{const n=A[t],i=n.getBoundingClientRect(),a=wA("g",{class:"waveform-export-legend"}),o=Number(n.getAttribute("width"))||i.width,r=i.width>0?o/i.width:1,s=n.querySelector(".waveform-legend__panel");if(s){const e=s.getBoundingClientRect();a.appendChild(wA("rect",{x:(e.left-i.left)*r,y:(e.top-i.top)*r,width:e.width*r,height:e.height*r,rx:4,fill:getComputedStyle(s).backgroundColor,stroke:"#d0d5dd"}))}n.querySelectorAll(".waveform-legend__item").forEach(e=>{const t=e.getBoundingClientRect(),A=wA("g",{transform:`translate(${(t.left-i.left)*r},${(t.top-i.top)*r})`,opacity:getComputedStyle(e).opacity}),n=e.querySelector("svg");if(n){const e=n.cloneNode(!0);xA(n,e),e.setAttribute("width","26"),e.setAttribute("height","16"),A.appendChild(e)}const o=e.querySelector(".waveform-legend__label");if(o){const e=wA("text",{x:32,y:12,fill:getComputedStyle(o).color,"font-size":12,"font-family":"sans-serif","text-decoration":getComputedStyle(o).textDecorationLine});e.textContent=o.textContent,A.appendChild(e)}a.appendChild(A)}),e.replaceWith(a)})}(t,s),s.querySelectorAll(".waveform-chart__overlay, .waveform-chart__hover-layer, .waveform-chart__zoom-selection").forEach(e=>e.remove()),s.setAttribute("y",String(i)),s.removeAttribute("role"),s.removeAttribute("aria-label"),o.appendChild(s);const l=function(e,t,A){const n=e.querySelector(".waveform-chart__title-text");if(!n)return;const i=getComputedStyle(n),a=n.getBoundingClientRect(),o=e.getBoundingClientRect(),r=o.width?A/o.width:1,s=document.createElementNS(vA,"g"),l="undefined"!=typeof DOMMatrix&&"none"!==i.transform&&i.transform?new DOMMatrix(i.transform):void 0,g=l?180*Math.atan2(l.b,l.a)/Math.PI:0,c=l?Math.hypot(l.a,l.b):1;s.setAttribute("transform",`translate(${(a.left-o.left+a.width/2)*r},${t/2}) rotate(${g}) scale(${c})`);const d=document.createElementNS(vA,"text");d.setAttribute("fill",i.color);for(const p of["font-family","font-size","font-weight","font-style","text-decoration","letter-spacing"])d.style.setProperty(p,i.getPropertyValue(p));const I=parseFloat(i.fontSize)||14,u=parseFloat(i.lineHeight)||1.4*I,m=n.clientWidth||parseFloat(i.width)||a.width||A,h=document.createElement("canvas"),C=h.getContext("2d");C&&(C.font=`${i.fontStyle} ${i.fontWeight} ${I}px ${i.fontFamily}`);const Q=[];let B="";for(const p of n.textContent??""){if("\n"===p){Q.push(B),B="";continue}const e=C?.measureText(B+p).width??(B.length+1)*I;"nowrap"!==i.whiteSpace&&B&&e>m?(Q.push(B),B=p):B+=p}Q.push(B);const E=i.textAlign;return d.setAttribute("text-anchor","left"===E?"start":"right"===E?"end":"middle"),Q.forEach((e,t)=>{const A=document.createElementNS(vA,"tspan");A.setAttribute("x",String("left"===E?-m/2:"right"===E?m/2:0)),A.setAttribute("y",String((t-(Q.length-1)/2)*u)),A.setAttribute("dominant-baseline","middle"),A.textContent=e,d.appendChild(A)}),h.width=0,h.height=0,s.appendChild(d),s}(e,i,A);return l&&o.appendChild(l),(new XMLSerializer).serializeToString(o)}(l,g,c.width,c.height,c.titleHeight,o.backgroundColor),n=new Blob([A],{type:"image/svg+xml"});if("svg"===r)return n;m=URL.createObjectURL(n),h=new Image,await new Promise((e,t)=>{h.onload=()=>e(),h.onerror=()=>t(bA("export-render-failed")),h.src=m}),B(),C=document.createElement("canvas"),C.width=Math.round(c.width*s),C.height=Math.round(c.height*s);const i=C.getContext("2d");if(!i)throw bA("export-render-failed");i.drawImage(h,0,0,C.width,C.height);const a=await new Promise((e,t)=>C.toBlob(A=>A?e(A):t(bA("export-render-failed")),"image/png"));return B(),a};try{return t.prepare?.(),await Promise.race([E,p()])}catch(f){if(f instanceof Error&&"code"in f)throw f;throw bA("export-render-failed")}finally{Q=!0,clearTimeout(I),clearTimeout(u),h&&(h.onload=null,h.onerror=null,h.src=""),m&&URL.revokeObjectURL(m),C&&(C.width=0,C.height=0),A=void 0,n=!1,t.release?.()}}}}({container:()=>g.value,svg:()=>c.value,size:()=>({width:X.value,height:z.value,titleHeight:te.value}),version:()=>function(e,t){return[e.data,JSON.stringify({...i(e),...t})]}(s,{hidden:[...K.value],width:X.value,height:z.value,titleHeight:te.value,page:w.value,shared:B.value,independent:E.value,sharedY:p.value,independentY:f.value,boundaries:l.value}),prepare:xe.prepareExport,release:xe.releaseExport,ready:ke.ready});return(0,e.reactive)({...(0,e.toRefs)(s),...O,plotCenterX:we.plotCenterX,titleAreaStyle:we.plotTitleAreaStyle,paginationVisible:be,...ae,...Ne,...De,...Se,...xe.wrap(Ge),presentationTracks:xe.presentationTracks,presentationAnnotations:xe.presentationAnnotations,paginationOpacity:xe.paginationOpacity,stabilizeAnimations:xe.stabilizeAnimations,...Je,margin:W,getPageSize:Pt,currentPage:w,selection:J,pointerInsideChart:T,hoverState:y,annotationInteraction:S,editorDraft:S.editorDraft,contextMenu:S.contextMenu,editorSeriesOptions:G,clipPathId:x,goToPage:xe.wrapPagination(Ye.goToPage,ce),setContainer:e=>n(g,e),setSvgElement:e=>n(c,e),setTitleMeasureElement:e=>n(d,e),setSharedOverlayElement:e=>n(I,e)})}var qn={"zoom-box":"M3 3h6M3 3v6M21 3h-6M21 3v6M3 21h6M3 21v-6M21 21h-6M21 21v-6",pan:"M12 2v20M2 12h20M8 6l4-4 4 4M8 18l4 4 4-4M6 8l-4 4 4 4M18 8l4 4-4 4",annotate:"M4 4h16v12H9l-5 4V4M8 8h8M8 12h5","zoom-in":"M12 5v14M5 12h14","zoom-out":"M5 12h14",reset:"M4 11a8 8 0 1 1 1 6M4 4v7h7",fit:"M8 3H3v5M16 3h5v5M3 16v5h5M21 16v5h-5M8 8h8v8H8z",export:"M12 3v12M7 10l5 5 5-5M4 15v6h16v-6"},Kn={"zoom-box":"zoom",pan:"pan",annotate:"annotation"},_n={"zoom-box":"框选缩放",pan:"平移",annotate:"注解","zoom-in":"放大","zoom-out":"缩小",reset:"重置",fit:"显示全部",export:"导出图片"},$n=["zoom-box","pan","annotate","zoom-in","zoom-out","reset","fit","export"],ei=Object.fromEntries($n.map(e=>{const t=Kn[e],A="zoom-in"===e||"zoom-out"===e||"reset"===e||"fit"===e?e:void 0;return[e,{id:e,label:_n[e],icon:qn[e],group:t?"mode":A?"viewport":"export",active:e=>!!t&&e.mode===t,enabled:(t,n)=>A&&n?!!t.targets.find(e=>e.trackId===n)?.available[A]:t.available[e],run:(e,n)=>{t?e.setInteractionMode(t):A&&e.execute(A,n?{trackId:n}:{},void 0,"toolbar")}}]})),ti=["onKeydown"],Ai=["aria-expanded"],ni=["value"],ii={key:2,class:"waveform-toolbar__scope"},ai=["data-group"],oi=["data-command","title","aria-label","aria-pressed","aria-expanded","disabled","onClick"],ri={viewBox:"0 0 24 24","aria-hidden":"true"},si=["d"],li={key:3,class:"waveform-toolbar__menu",role:"group","aria-label":"图片格式"},gi={key:4,class:"waveform-toolbar__feedback",role:"status"},ci=qA((0,e.defineComponent)({__name:"WaveformToolbar",props:{controller:{}},setup(t){const A=t,n=(0,e.computed)(()=>function(e){const t="object"==typeof e?e:{},A=[...new Set(t.items??$n)].filter(e=>ei[e]),n=[];return A.forEach(e=>{const t=ei[e];n.at(-1)?.[0]?.group===t.group?n.at(-1).push(t):n.push([t])}),{visible:!!e&&!1!==t.visible&&A.length>0,display:t.display??"hover",position:t.position??"top-right",groups:n}}(A.controller.toolbar)),i=(0,e.computed)(()=>A.controller.chartWidth<440),a=(0,e.ref)(!1),o=(0,e.ref)(""),r=(0,e.ref)(!1),s=(0,e.ref)(!1),l=(0,e.ref)("");let g=!1;async function c(e){r.value=!1,s.value=!0,l.value="";try{const t=await A.controller.exportImage({format:e});if(g)return;const n=URL.createObjectURL(t),i=document.createElement("a");try{i.href=n,i.download=`waveform.${e}`,document.body.appendChild(i),i.click()}finally{i.remove(),URL.revokeObjectURL(n)}}catch(t){g||(l.value=t instanceof Error?t.message:"导出失败,请重试")}finally{s.value=!1}}function d(){a.value=!a.value,r.value=!1}function I(){r.value=!1,a.value=!1,A.controller.cancelViewportDrag()}return(0,e.onBeforeUnmount)(()=>{g=!0}),(0,e.watch)(()=>A.controller.controlState,e=>{e.independent&&e.targets.some(e=>e.trackId===o.value)||(o.value="")}),(0,e.watch)(()=>n.value.visible,()=>{r.value=!1}),(A,g)=>n.value.visible?((0,e.openBlock)(),(0,e.createElementBlock)("div",{key:0,class:(0,e.normalizeClass)(["waveform-toolbar",[`waveform-toolbar--${n.value.display}`,`waveform-toolbar--${n.value.position}`,{"waveform-toolbar--collapsed":i.value&&!a.value}]]),style:(0,e.normalizeStyle)({top:`${t.controller.titleAreaHeight+2}px`}),role:"toolbar","aria-label":"波形工具栏",onPointerdown:g[3]||(g[3]=(0,e.withModifiers)(()=>{},["stop"])),onClick:g[4]||(g[4]=(0,e.withModifiers)(()=>{},["stop"])),onDblclick:g[5]||(g[5]=(0,e.withModifiers)(()=>{},["stop"])),onWheel:g[6]||(g[6]=(0,e.withModifiers)(()=>{},["stop"])),onContextmenu:g[7]||(g[7]=(0,e.withModifiers)(()=>{},["stop"])),onKeydown:(0,e.withKeys)((0,e.withModifiers)(I,["stop"]),["esc"])},[i.value?((0,e.openBlock)(),(0,e.createElementBlock)("button",{key:0,type:"button",class:"waveform-toolbar__toggle","aria-label":"图表工具","aria-expanded":a.value,onClick:d}," 工具 ",8,Ai)):(0,e.createCommentVNode)("",!0),t.controller.controlState.independent?(0,e.withDirectives)(((0,e.openBlock)(),(0,e.createElementBlock)("select",{key:1,"onUpdate:modelValue":g[0]||(g[0]=e=>o.value=e),"aria-label":"操作图框"},[g[8]||(g[8]=(0,e.createElementVNode)("option",{value:""},"当前页全部",-1)),((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(t.controller.controlState.targets,t=>((0,e.openBlock)(),(0,e.createElementBlock)("option",{key:t.trackId,value:t.trackId},(0,e.toDisplayString)(t.label),9,ni))),128))],512)),[[e.vModelSelect,o.value]]):((0,e.openBlock)(),(0,e.createElementBlock)("span",ii,"共享范围")),((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(n.value.groups,(A,n)=>((0,e.openBlock)(),(0,e.createElementBlock)("div",{key:n,class:"waveform-toolbar__group","data-group":A[0]?.group},[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(A,A=>((0,e.openBlock)(),(0,e.createElementBlock)("button",{key:A.id,type:"button","data-command":A.id,title:A.label,"aria-label":A.label,"aria-pressed":"mode"===A.group?A.active(t.controller.controlState):void 0,"aria-expanded":"export"===A.id?r.value:void 0,disabled:!A.enabled(t.controller.controlState,o.value||void 0)||"export"===A.id&&s.value,onClick:e=>"export"===A.id?r.value=!r.value:A.run(t.controller,o.value||void 0)},[((0,e.openBlock)(),(0,e.createElementBlock)("svg",ri,[(0,e.createElementVNode)("path",{d:A.icon},null,8,si)]))],8,oi))),128))],8,ai))),128)),r.value?((0,e.openBlock)(),(0,e.createElementBlock)("div",li,[(0,e.createElementVNode)("button",{type:"button",onClick:g[1]||(g[1]=e=>c("png"))},"下载 PNG"),(0,e.createElementVNode)("button",{type:"button",onClick:g[2]||(g[2]=e=>c("svg"))},"下载 SVG")])):(0,e.createCommentVNode)("",!0),s.value||l.value?((0,e.openBlock)(),(0,e.createElementBlock)("span",gi,(0,e.toDisplayString)(s.value?"正在导出…":l.value),1)):(0,e.createCommentVNode)("",!0)],46,ti)):(0,e.createCommentVNode)("",!0)}}),[["__scopeId","data-v-253fa741"]]),di=["id"],Ii={class:"waveform-annotation-editor__content"},ui={class:"waveform-annotation-editor__coordinates","aria-label":"标注坐标"},mi=["aria-invalid"],hi={class:"waveform-annotation-editor__coordinate-value","aria-hidden":"true"},Ci=["id"],Qi={key:0,class:"waveform-annotation-editor__series","aria-label":"标注所属波形"},Bi={class:"waveform-annotation-editor__series-label"},Ei=["value"],pi=["value"],fi={key:1},yi={class:"waveform-annotation-editor__field"},vi={class:"waveform-annotation-editor__label-row"},wi=["maxlength"],ki={class:"waveform-annotation-editor__colors"},xi={class:"waveform-annotation-editor__color-field",title:"调整标注边框色和透明度"},bi={class:"waveform-annotation-editor__color-field",title:"调整标注文字色和透明度"},Mi={class:"waveform-annotation-editor__color-field",title:"调整标注背景色和透明度"},Ni=qA((0,e.defineComponent)({__name:"WaveformAnnotationEditor",props:{annotation:{},mode:{},series:{},seriesOptions:{},timeUnit:{default:"ms"},timeError:{default:""}},emits:["confirm","cancel","series-change","time-change"],setup(t,{emit:n}){const i=(0,e.defineAsyncComponent)(async()=>"undefined"==typeof window?{name:"WaveformColorPickerSsrFallback",render:()=>null}:(await(import("vue3-colorpicker"))).ColorPicker),a=t,o=n,r=(0,e.ref)(),s=wt("waveform-annotation-editor-title"),l=(0,e.ref)(""),g=(0,e.ref)(""),c=(0,e.ref)(!1),d=(0,e.ref)(""),I=(0,e.ref)(""),u=(0,e.ref)(""),m=(0,e.computed)(()=>c.value?g.value.trim()&&Number.isFinite(Number(g.value))?"":"请输入有效的时间":""),h=(0,e.computed)(()=>c.value&&(m.value||a.timeError)||""),C=(0,e.computed)(()=>l.value.trim().length>0&&g.value.trim().length>0&&Number.isFinite(Number(g.value))&&!h.value),Q=(0,e.computed)(()=>l.value.length),B=(0,e.computed)(()=>{const e=a.seriesOptions?.find(e=>e.seriesId===a.annotation.seriesId);return e?{id:e.seriesId,name:e.name,color:e.color,unit:e.unit}:a.series});function E(e){g.value=null==e?"":String(e),c.value=!1}function p(){c.value=!0,o("time-change",g.value)}async function f(){p(),await(0,e.nextTick)(),C.value&&o("confirm",{...a.annotation,text:l.value.trim(),style:{borderColor:d.value,textColor:I.value,backgroundColor:u.value.trim()||"rgba(255, 255, 255, 0.92)"}})}function y(e){"Escape"===e.key&&o("cancel"),"Enter"===e.key&&(e.ctrlKey||e.metaKey)&&(e.preventDefault(),f())}function v(e){const t=e.target;t.value&&o("series-change",t.value)}return(0,e.watch)(()=>a.annotation.id,function(){const t=Qt(a.annotation.style);var A,n;l.value=a.annotation.text,g.value=(A=a.annotation.x,n=a.timeUnit,Number.isFinite(A)?function(e){const t=e.toFixed(Math.max(0,3));return/^-0(?:\.0+)?$/.test(t)?t.slice(1):t}(Zt(A,n)):String(A)),c.value=!1,d.value=t.borderColor,I.value=t.textColor,u.value=t.backgroundColor,(0,e.nextTick)(()=>r.value?.focus())},{immediate:!0}),(t,n)=>((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(A.Modal),{visible:!0,width:440,"mask-closable":!0,keyboard:!0,"cancel-text":"取消","ok-text":"保存标注","ok-button-props":{disabled:!C.value},"root-class-name":"waveform-annotation-editor-root","wrap-class-name":"waveform-annotation-editor",onCancel:n[4]||(n[4]=e=>o("cancel")),onOk:f},{title:(0,e.withCtx)(()=>[(0,e.createElementVNode)("span",{id:(0,e.unref)(s)},(0,e.toDisplayString)("add"===a.mode?"添加标注":"编辑标注"),9,di)]),default:(0,e.withCtx)(()=>[(0,e.createElementVNode)("div",Ii,[(0,e.createElementVNode)("div",ui,[(0,e.createElementVNode)("label",{class:"waveform-annotation-editor__coordinate-input","aria-invalid":Boolean(h.value)},[n[5]||(n[5]=(0,e.createElementVNode)("b",null,"X",-1)),(0,e.createVNode)((0,e.unref)(A.InputNumber),{value:""===g.value?void 0:Number(g.value),controls:!0,step:.001,keyboard:!0,status:h.value?"error":void 0,"aria-label":"标注横轴时间","aria-invalid":Boolean(h.value),"aria-describedby":h.value?`${(0,e.unref)(s)}-time-error`:void 0,onBlur:p,"onUpdate:value":E},null,8,["value","status","aria-invalid","aria-describedby"]),(0,e.createElementVNode)("code",hi,(0,e.toDisplayString)(g.value),1)],8,mi),h.value?((0,e.openBlock)(),(0,e.createElementBlock)("p",{key:0,id:`${(0,e.unref)(s)}-time-error`,class:"waveform-annotation-editor__coordinate-error",role:"alert"},(0,e.toDisplayString)(h.value),9,Ci)):(0,e.createCommentVNode)("",!0),(0,e.createElementVNode)("span",null,[n[6]||(n[6]=(0,e.createElementVNode)("b",null,"Y",-1)),(0,e.createElementVNode)("code",null,(0,e.toDisplayString)((0,e.unref)(Tt)(a.annotation.y)),1)])]),n[13]||(n[13]=(0,e.createElementVNode)("p",{class:"waveform-annotation-editor__coordinate-hint",role:"note"}," 修改 X 轴后失焦时会自动吸附最近的采样点 ",-1)),B.value?((0,e.openBlock)(),(0,e.createElementBlock)("label",Qi,[(0,e.createElementVNode)("i",{style:(0,e.normalizeStyle)({backgroundColor:B.value.color}),"aria-hidden":"true"},null,4),(0,e.createElementVNode)("span",Bi,[n[7]||(n[7]=(0,e.createElementVNode)("small",null,"标注波形",-1)),(0,e.createElementVNode)("b",null,(0,e.toDisplayString)(B.value.name),1)]),a.seriesOptions?.length?((0,e.openBlock)(),(0,e.createElementBlock)("select",{key:0,value:a.annotation.seriesId,"aria-label":"选择标注波形",onChange:v},[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(a.seriesOptions,t=>((0,e.openBlock)(),(0,e.createElementBlock)("option",{key:t.seriesId,value:t.seriesId},(0,e.toDisplayString)(t.name)+(0,e.toDisplayString)(t.unit?` (${t.unit})`:""),9,pi))),128))],40,Ei)):B.value.unit?((0,e.openBlock)(),(0,e.createElementBlock)("code",fi,(0,e.toDisplayString)(B.value.unit),1)):(0,e.createCommentVNode)("",!0)])):(0,e.createCommentVNode)("",!0),(0,e.createElementVNode)("label",yi,[(0,e.createElementVNode)("span",vi,[n[8]||(n[8]=(0,e.createElementVNode)("b",null,"标注文本",-1)),(0,e.createElementVNode)("small",null,(0,e.toDisplayString)(Q.value)+"/"+(0,e.toDisplayString)((0,e.unref)(40)),1)]),(0,e.withDirectives)((0,e.createElementVNode)("textarea",{ref_key:"textarea",ref:r,"onUpdate:modelValue":n[0]||(n[0]=e=>l.value=e),rows:"4",maxlength:(0,e.unref)(40),"aria-label":"标注文本",placeholder:"输入这处波形的说明",onKeydown:y},null,40,wi),[[e.vModelText,l.value]])]),(0,e.createElementVNode)("fieldset",ki,[n[12]||(n[12]=(0,e.createElementVNode)("legend",null,"颜色与透明度",-1)),(0,e.createElementVNode)("label",xi,[n[9]||(n[9]=(0,e.createElementVNode)("span",null,"边框色",-1)),(0,e.createVNode)((0,e.unref)(i),{"pure-color":d.value,"onUpdate:pureColor":n[1]||(n[1]=e=>d.value=e),"aria-label":"标注边框色","use-type":"pure","picker-type":"chrome",format:"rgb","disable-alpha":!1,"blur-close":!0},null,8,["pure-color"])]),(0,e.createElementVNode)("label",bi,[n[10]||(n[10]=(0,e.createElementVNode)("span",null,"文字色",-1)),(0,e.createVNode)((0,e.unref)(i),{"pure-color":I.value,"onUpdate:pureColor":n[2]||(n[2]=e=>I.value=e),"aria-label":"标注文字色","use-type":"pure","picker-type":"chrome",format:"rgb","disable-alpha":!1,"blur-close":!0},null,8,["pure-color"])]),(0,e.createElementVNode)("label",Mi,[n[11]||(n[11]=(0,e.createElementVNode)("span",null,"背景色",-1)),(0,e.createVNode)((0,e.unref)(i),{"pure-color":u.value,"onUpdate:pureColor":n[3]||(n[3]=e=>u.value=e),"aria-label":"标注背景色","use-type":"pure","picker-type":"chrome",format:"rgb","disable-alpha":!1,"blur-close":!0},null,8,["pure-color"])])])])]),_:1},8,["ok-button-props"]))}}),[["__scopeId","data-v-01ecd3a4"]]),Di={class:"waveform-tooltip__series-content"},Si={class:"waveform-tooltip__series-label"},Fi={key:0,class:"waveform-tooltip__value"},Gi={key:1,class:"waveform-tooltip__value waveform-tooltip__value--missing"},Yi=qA((0,e.defineComponent)({__name:"WaveformTooltip",props:{visible:{type:Boolean},position:{},timeUnit:{},hoveredPoint:{},seriesPoints:{},containerWidth:{},containerHeight:{}},setup(t){const A=t,n=(0,e.ref)(null),i=(0,e.ref)({width:0,height:0});function a(){const e=n.value?.getBoundingClientRect(),t=e?.width??0,A=e?.height??0;t===i.value.width&&A===i.value.height||(i.value={width:t,height:A})}(0,e.watch)(n,(e,t,A)=>{if(a(),!e)return;const n=new ResizeObserver(a);n.observe(e),A(()=>n.disconnect())},{flush:"post"}),(0,e.onUpdated)(a);const o=(0,e.computed)(()=>{if(!A.visible||!A.hoveredPoint)return{display:"none"};const e=A.position.x+12,t=A.position.x-12-i.value.width,n=Math.max(1,Math.min(560,A.containerWidth-16));return{...e+i.value.width<=A.containerWidth-8?{left:`${e}px`}:t>=8?{right:A.containerWidth-A.position.x+12+"px"}:{left:"8px"},maxWidth:`${n}px`,visibility:i.value.width>0?"visible":"hidden",top:`${Math.max(8,Math.min(A.position.y-18,A.containerHeight-i.value.height-8))}px`}});return(A,i)=>t.visible&&t.hoveredPoint?((0,e.openBlock)(),(0,e.createElementBlock)("div",{key:0,ref_key:"tooltipElement",ref:n,class:"waveform-tooltip waveform-chart__tooltip",style:(0,e.normalizeStyle)(o.value)},[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(t.seriesPoints,A=>((0,e.openBlock)(),(0,e.createElementBlock)("span",{key:`${A.trackIndex}-${A.name}`,class:"waveform-tooltip__series waveform-chart__tooltip-series"},[(0,e.createElementVNode)("i",{style:(0,e.normalizeStyle)({backgroundColor:A.color})},null,4),(0,e.createElementVNode)("span",Di,[(0,e.createElementVNode)("span",Si,[(0,e.createTextVNode)((0,e.toDisplayString)(A.shotNo?.trim()||"未配置炮号")+": "+(0,e.toDisplayString)(A.name),1),A.unit?((0,e.openBlock)(),(0,e.createElementBlock)(e.Fragment,{key:0},[(0,e.createTextVNode)("("+(0,e.toDisplayString)(A.unit)+")",1)],64)):(0,e.createCommentVNode)("",!0)]),A.point?((0,e.openBlock)(),(0,e.createElementBlock)("span",Fi,"(x:"+(0,e.toDisplayString)((0,e.unref)(Lt)(A.point.x,t.timeUnit))+" y:"+(0,e.toDisplayString)((0,e.unref)(Rt)(A.point.y))+")",1)):((0,e.openBlock)(),(0,e.createElementBlock)("span",Gi,"无数据"))])]))),128))],4)):(0,e.createCommentVNode)("",!0)}}),[["__scopeId","data-v-88c44eda"]]),Ji=(0,e.defineComponent)({__name:"WaveformHoverHost",props:{state:{},visible:{type:Boolean},timeUnit:{},containerWidth:{},containerHeight:{}},setup(t){const A=t,n=(0,e.computed)(()=>A.state.points.find(e=>e.point)?.point??null);return(A,i)=>((0,e.openBlock)(),(0,e.createBlock)(Yi,{visible:t.visible&&null!==n.value,position:t.state.position,"time-unit":t.timeUnit,"hovered-point":n.value,"series-points":t.state.points,"container-width":t.containerWidth,"container-height":t.containerHeight},null,8,["visible","position","time-unit","hovered-point","series-points","container-width","container-height"]))}}),Ri={circle:t.symbolCircle,square:t.symbolSquare,triangle:t.symbolTriangle,diamond:t.symbolDiamond};function Ti(e,A=48){return"none"===e?null:(0,t.symbol)().type(Ri[e]).size(A)()??null}function Zi(e){return"none"===e?null:"M1 8H25"}function Ui(e){return"dashed"===e?"8 5":"dash-dot"===e?"8 5 1.5 5":void 0}function Li(e){const t=(Number.isFinite(e)&&e>0?Math.min(e,24):8)/2,A=13-t,n=13+t;return[`M${A} 2H${n}`,"M13 2V14",`M${A} 14H${n}`].join("")}var Vi=["clip-path"],Oi=["opacity","clip-path","data-series-id","data-series-name"],ji={key:0},Wi=["id"],Xi=["x","width","height"],Hi=["data-series-id","data-series-name","data-y-axis-index","data-line-type","data-line-style","d","stroke","stroke-dasharray"],zi=["data-series-id"],Pi=["d","stroke","stroke-width"],qi=["data-series-id","data-point-type"],Ki=["d","fill"],_i=(0,e.defineComponent)({__name:"WaveformSeriesLayer",props:{track:{},paginationOpacity:{},clipPathId:{}},setup(t){const A=t,n=(0,e.computed)(()=>A.track.seriesPaths.map(e=>{const t=function(e,t,A=48){if("none"===e||0===t.length)return null;if("circle"===e){const e=Math.sqrt(A/Math.PI);return t.map(({x:t,y:A})=>`M${t+e},${A}A${e},${e},0,1,1,${t-e},${A}A${e},${e},0,1,1,${t+e},${A}`).join("")}if("square"===e){const e=Math.sqrt(A),n=e/2;return t.map(({x:t,y:A})=>`M${t-n},${A-n}h${e}v${e}h${-e}Z`).join("")}if("triangle"===e){const e=Math.sqrt(A/(3*Math.sqrt(3)/4)),n=e*Math.sqrt(3)/2,i=e/2;return t.map(({x:t,y:A})=>`M${t},${A-e}L${t+n},${A+i}L${t-n},${A+i}Z`).join("")}const n=Math.sqrt(A/(2*Math.tan(Math.PI/6))),i=n*Math.tan(Math.PI/6);return t.map(({x:e,y:t})=>`M${e},${t-n}L${e+i},${t}L${e},${t+n}L${e-i},${t}Z`).join("")}(e.series.pointType,e.pointRenderPoints.map(t=>({x:A.track.xScale(t.x),y:e.yScale(t.y)}))),n=e.series.errorBar.capWidth/2,i=e.errorBarRenderPoints.map(t=>{const{lower:i,upper:a}=ge(t),o=A.track.xScale(t.x),r=e.yScale(t.y-i),s=e.yScale(t.y+a);return[`M${o-n},${r}H${o+n}`,`M${o},${r}V${s}`,`M${o-n},${s}H${o+n}`].join("")}).join("");return{...e,pointPath:t,errorBarPath:i||null}}));return(A,i)=>!t.track.isEmpty&&t.track.hasVisibleSeries?((0,e.openBlock)(),(0,e.createElementBlock)("g",{key:0,class:"waveform-track__series","clip-path":`url(#${t.clipPathId}-${t.track.index})`},[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(n.value,A=>((0,e.openBlock)(),(0,e.createElementBlock)("g",{key:A.presentationKey??A.series.id,opacity:(A.opacity??1)*(t.paginationOpacity??1),"clip-path":A.animationClip?`url(#${A.animationClip.id})`:void 0,class:"waveform-track__series-item waveform-chart__series","data-series-id":A.series.id,"data-series-name":A.series.name||void 0},[A.animationClip?((0,e.openBlock)(),(0,e.createElementBlock)("defs",ji,[(0,e.createElementVNode)("clipPath",{id:A.animationClip.id,clipPathUnits:"userSpaceOnUse"},[(0,e.createElementVNode)("rect",{x:A.animationClip.x,width:A.animationClip.width,height:t.track.height},null,8,Xi)],8,Wi)])):(0,e.createCommentVNode)("",!0),A.path?((0,e.openBlock)(),(0,e.createElementBlock)("path",{key:1,class:"waveform-track__line waveform-chart__line","data-series-id":A.series.id,"data-series-name":A.series.name||void 0,"data-y-axis-index":A.yAxisIndex,"data-line-type":A.series.lineType,"data-line-style":A.series.lineStyle,d:A.path,stroke:A.series.color,"stroke-dasharray":(0,e.unref)(Ui)(A.series.lineStyle)},null,8,Hi)):(0,e.createCommentVNode)("",!0),A.series.errorBar.visible?((0,e.openBlock)(),(0,e.createElementBlock)("g",{key:2,class:"waveform-track__error-bars waveform-chart__error-bars","data-series-id":A.series.id},[A.errorBarPath?((0,e.openBlock)(),(0,e.createElementBlock)("path",{key:0,class:"waveform-track__error-bar waveform-chart__error-bar",d:A.errorBarPath,stroke:A.series.errorBar.color||A.series.color,"stroke-width":A.series.errorBar.width},null,8,Pi)):(0,e.createCommentVNode)("",!0)],8,zi)):(0,e.createCommentVNode)("",!0),"none"!==A.series.pointType?((0,e.openBlock)(),(0,e.createElementBlock)("g",{key:3,class:"waveform-track__points waveform-chart__points","data-series-id":A.series.id,"data-point-type":A.series.pointType},[A.pointPath?((0,e.openBlock)(),(0,e.createElementBlock)("path",{key:0,class:"waveform-track__point waveform-chart__point",d:A.pointPath,fill:A.series.color},null,8,Ki)):(0,e.createCommentVNode)("",!0)],8,qi)):(0,e.createCommentVNode)("",!0)],8,Oi))),128))],8,Vi)):(0,e.createCommentVNode)("",!0)}}),$i=qA(_i,[["__scopeId","data-v-a074ee35"]]),ea=["clip-path"],ta=["data-y-axis-index","x2","y1","y2","stroke","stroke-opacity","stroke-width","stroke-dasharray"],Aa=(0,e.defineComponent)({__name:"WaveformZeroLines",props:{track:{},clipPathId:{},innerWidth:{},cleanView:{type:Boolean},zeroLine:{}},setup(t){const A=t;function n(e){const[t,n]=e.scale.domain(),i=Math.abs(e.tickValues[1]-e.tickValues[0])*A.zeroLine.boundaryThreshold;return!A.zeroLine.visible||t>=0||n<=0||-t<i||n<i?null:e.scale(0)}return(A,i)=>!t.track.isEmpty&&t.track.hasVisibleSeries&&t.zeroLine.visible&&!t.cleanView?((0,e.openBlock)(),(0,e.createElementBlock)("g",{key:0,class:"waveform-track__zero-lines waveform-chart__zero-lines","clip-path":`url(#${t.clipPathId}-${t.track.index})`,"aria-hidden":"true","pointer-events":"none"},[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(t.track.yAxes,A=>((0,e.openBlock)(),(0,e.createElementBlock)(e.Fragment,{key:`zero-line-${t.track.index}-${A.index}`},[null!==n(A)?((0,e.openBlock)(),(0,e.createElementBlock)("line",{key:0,class:"waveform-track__zero-line waveform-chart__zero-line","data-y-axis-index":A.index,x1:"0",x2:t.track.width??t.innerWidth,y1:n(A)??0,y2:n(A)??0,stroke:t.zeroLine.color,"stroke-opacity":t.zeroLine.opacity,"stroke-width":t.zeroLine.width,"stroke-dasharray":t.zeroLine.dash||void 0},null,8,ta)):(0,e.createCommentVNode)("",!0)],64))),128))],8,ea)):(0,e.createCommentVNode)("",!0)}}),na=Aa;function ia(e,t,A=""){const n=t?.trim();return n&&"--"!==n?`${e}${A}(${n})`:e}var aa=["transform"],oa=["transform"],ra={class:"waveform-track__axis-endpoint waveform-track__axis-endpoint--start waveform-chart__axis-endpoint waveform-chart__axis-endpoint--start",x:"0",y:"7",dy:"0.71em","text-anchor":"start"},sa=["x"],la=["data-y-axis-index","data-y-axis-side","transform"],ga={key:2},ca=["x","y","width"],da=["fill","transform"],Ia=["data-y-axis-title-index"],ua=["x","y","width"],ma=["fill","transform"],ha=(0,e.defineComponent)({__name:"WaveformTrackAxes",props:{track:{},innerWidth:{},cleanView:{type:Boolean},axes:{},timeUnit:{},yLabel:{},showUnits:{type:Boolean,default:!0},showLabelUnits:{type:Boolean},hideYAxisTitles:{type:Boolean},hideOverlappingMaximumLabel:{type:Boolean}},setup(A){const n=A,i=(0,e.computed)(()=>Xt(n.axes?.y?.labelTextStyle)),a=(0,e.computed)(()=>{const e=n.axes?.y?.labelTextStyle;return{fontSize:`${Wt(e)}px`,fontWeight:e?.fontWeight??600,fontFamily:e?.fontFamily,fontStyle:e?.fontStyle??"normal"}}),o=(0,e.ref)(),r=(0,e.ref)([]);function s(e){const t=e.name.trim()||n.yLabel||"";return n.showLabelUnits?ia(t,e.unit):t}function l(e){const t=e.seriesList[0];return Boolean(t&&s(t))}function g(){if(n.track.yAxes.forEach((e,A)=>{const i=r.value[A];if(!i)return;const a=n.showUnits?e.seriesList[0]?.unit:void 0,o=Math.max(...e.tickValues),s=Math.min(...e.tickValues),l=t=>gA(t,e.scale.domain(),e.tickValues,a,e.side),g=("left"===e.side?(0,t.axisLeft)(e.scale):(0,t.axisRight)(e.scale)).tickFormat(e=>l(Number(e))).tickSize(-4).tickPadding(7).tickSizeOuter(0).tickValues(e.tickValues),c=(0,t.select)(i);CA(i,g,e.scale,e.tickValues,e.side,l),hA(i,"data-label-domain-min",e.scale.domain()[0]),hA(i,"data-label-domain-max",e.scale.domain()[1]),hA(i,"data-label-unit",a??null),c.selectAll(".tick").each(function(t){const A=this.querySelector("text");A&&(hA(A,"y",null),hA(A,"dy","0"),hA(A,"dominant-baseline","central"),hA(A,"data-axis-maximum-label",n.hideOverlappingMaximumLabel&&Mt(t,o)?"true":null),hA(A,"data-axis-minimum-label",n.hideOverlappingMaximumLabel&&Mt(t,s)?"true":null)),hA(this,"data-maximum-tick",void 0!==e.maximumTick&&Mt(t,e.maximumTick)?"true":null),hA(this,"data-minimum-tick",void 0!==e.minimumTick&&Mt(t,e.minimumTick)?"true":null),hA(this,"data-tick-value",t),hA(this,"data-tick-y",e.scale(t))}),c.selectAll("path.domain").each(function(){hA(this,"display",!1===n.axes?.y?.lineVisible?"none":null)})}),d(),!o.value)return;const e=(0,t.select)(o.value),A=e=>Ut(e,n.track.xScale.domain(),n.timeUnit,"tick",n.axes?.x?.labelFormatter??n.track.xAxisLabelFormatter);CA(o.value,(0,t.axisBottom)(n.track.xScale).tickValues(n.track.xAxisTickValues).tickFormat(e=>A(Number(e))).tickSize(-4).tickPadding(7).tickSizeOuter(0),n.track.xScale,n.track.xAxisTickValues,"bottom",A),e.selectAll("path.domain").each(function(){hA(this,"display",!1===n.axes?.x?.lineVisible?"none":null)})}let c=!1;function d(){c||(()=>{const e=r.value[0]?.ownerSVGElement;e&&function(e){pA.has(e)||(pA.add(e),queueMicrotask(()=>{pA.delete(e),yA(e)}))}(e)})()}return(0,e.onBeforeUnmount)(()=>{c=!0,document.fonts?.removeEventListener?.("loadingdone",d)}),(0,e.onMounted)(async()=>{document.fonts?.addEventListener?.("loadingdone",d),document.fonts?.ready.then(()=>{c||d()}),await(0,e.nextTick)(),g()}),(0,e.watch)([()=>n.track.xScale,()=>n.track.yAxes,()=>n.track.xAxisTickValues,()=>n.track.yAxisTickValues,()=>n.timeUnit,()=>n.showUnits,()=>n.axes?.x?.labelFormatter,()=>n.axes?.x?.lineVisible,()=>n.axes?.y?.lineVisible,()=>n.hideOverlappingMaximumLabel],async()=>{await(0,e.nextTick)(),g()},{flush:"post"}),(t,n)=>((0,e.openBlock)(),(0,e.createElementBlock)(e.Fragment,null,[A.track.showXAxis?((0,e.openBlock)(),(0,e.createElementBlock)("g",{key:0,ref_key:"xAxisElement",ref:o,class:(0,e.normalizeClass)(["waveform-track__axis waveform-track__axis--x waveform-chart__axis waveform-chart__axis--x",{"waveform-track__axis--line-hidden":!1===A.axes?.x?.lineVisible}]),transform:`translate(0, ${A.track.height})`},null,10,aa)):(0,e.createCommentVNode)("",!0),A.track.showXAxis?((0,e.openBlock)(),(0,e.createElementBlock)("g",{key:1,class:"waveform-track__axis-endpoints waveform-chart__axis-endpoints",transform:`translate(0, ${A.track.height})`,"font-family":"sans-serif","font-size":"10","aria-hidden":"true"},[(0,e.createElementVNode)("text",ra,(0,e.toDisplayString)(A.track.endpointLabels.start),1),(0,e.createElementVNode)("text",{class:"waveform-track__axis-endpoint waveform-track__axis-endpoint--end waveform-chart__axis-endpoint waveform-chart__axis-endpoint--end",x:A.track.width??A.innerWidth,y:"7",dy:"0.71em","text-anchor":"end"},(0,e.toDisplayString)(A.track.endpointLabels.end),9,sa)],8,oa)):(0,e.createCommentVNode)("",!0),((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(A.track.isEmpty?[]:A.track.yAxes,t=>((0,e.openBlock)(),(0,e.createElementBlock)("g",{key:`y-axis-${A.track.index}-${t.index}`,ref_for:!0,ref:e=>function(e,t){e&&(r.value[t]=e)}(e,t.index),class:(0,e.normalizeClass)(["waveform-track__axis waveform-track__axis--y waveform-chart__axis waveform-chart__axis--y",[`waveform-track__axis--${t.side}`,{"waveform-track__axis--line-hidden":!1===A.axes?.y?.lineVisible}]]),"data-y-axis-index":t.index,"data-y-axis-side":t.side,transform:`translate(${t.x}, 0)`},null,10,la))),128)),!A.cleanView&&!A.hideYAxisTitles&&!A.track.isEmpty&&A.track.hasVisibleSeries&&1===A.track.seriesList.length&&A.track.showYAxisLabel&&A.track.series&&s(A.track.series)?((0,e.openBlock)(),(0,e.createElementBlock)("g",ga,[(0,e.createElementVNode)("rect",{class:"waveform-track__y-axis-label-bg waveform-chart__y-axis-label-bg",x:A.track.yAxes[0].labelX-i.value/2,y:A.track.height/2-40,width:i.value,height:"80",rx:"2"},null,8,ca),(0,e.createElementVNode)("text",{class:"waveform-track__y-axis-label waveform-chart__y-axis-label",fill:A.axes?.y?.labelTextStyle?.color||A.track.series?.color,style:(0,e.normalizeStyle)(a.value),transform:`translate(${A.track.yAxes[0].labelX}, ${A.track.height/2}) rotate(-90)`,"text-anchor":"middle","dominant-baseline":"central"},(0,e.toDisplayString)(A.track.series?s(A.track.series):""),13,da)])):(0,e.createCommentVNode)("",!0),((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(!A.cleanView&&!A.hideYAxisTitles&&A.track.yAxes.length>1?A.track.yAxes.filter(l):[],t=>((0,e.openBlock)(),(0,e.createElementBlock)("g",{key:`y-axis-title-${A.track.index}-${t.index}`,class:"waveform-track__multi-axis-title","data-y-axis-title-index":t.index},[(0,e.createElementVNode)("rect",{class:"waveform-track__y-axis-label-bg waveform-chart__y-axis-label-bg",x:t.labelX-i.value/2,y:A.track.height/2-40,width:i.value,height:"80",rx:"2"},null,8,ua),(0,e.createElementVNode)("text",{class:"waveform-track__y-axis-label waveform-chart__y-axis-label",fill:A.axes?.y?.labelTextStyle?.color||t.seriesList[0].color,style:(0,e.normalizeStyle)(a.value),transform:`translate(${t.labelX}, ${A.track.height/2}) rotate(-90)`,"text-anchor":"middle","dominant-baseline":"central"},(0,e.toDisplayString)(s(t.seriesList[0])),13,ma)],8,Ia))),128))],64))}}),Ca=new WeakMap;function Qa(e,t,A,n,i,a){let o=Ca.get(e);o||Ca.set(e,o=new Map);const r=new Set(t);for(const[l,g]of o)r.has(l)||(g.remove(),o.delete(l));let s;for(const l of t){let t=o.get(l);t||(t=document.createElementNS("http://www.w3.org/2000/svg","line"),t.setAttribute("data-grid-direction",n),o.set(l,t));const r=s?s.nextSibling:e.firstChild;r!==t&&e.insertBefore(t,r);const g=A(l);hA(t,"stroke",a??null),hA(t,"x1","vertical"===n?g:0),hA(t,"x2","vertical"===n?g:i),hA(t,"y1","horizontal"===n?g:0),hA(t,"y2","horizontal"===n?g:i),s=t}}var Ba=["width","height","fill"],Ea=["clip-path"],pa={class:"waveform-track__grid waveform-track__grid--minor waveform-chart__grid waveform-chart__grid--minor"},fa={class:"waveform-track__grid waveform-track__grid--major waveform-chart__grid waveform-chart__grid--major"},ya=["x","y"],va=(0,e.defineComponent)({__name:"WaveformTrackBackdrop",props:{track:{},clipPathId:{},innerWidth:{},cleanView:{type:Boolean},showEmptyFrame:{type:Boolean},frameNumber:{},frameStyle:{}},setup(t){const A=t,n=(0,e.ref)(),i=(0,e.ref)(),a=(0,e.ref)(),o=(0,e.ref)();return(0,e.watchEffect)(()=>{const e=A.track;for(const[t,r,s]of[[n.value,"vertical",e.xMinorTicks],[i.value,"horizontal",e.yMinorTicks],[a.value,"vertical",e.xMajorTicks],[o.value,"horizontal",e.yMajorTicks]])t&&Qa(t,e.gridLines[r]?s:[],"vertical"===r?e.xScale:e.yScale,r,"vertical"===r?e.height:e.width??A.innerWidth,"vertical"===r?e.gridLines.verticalColor:e.gridLines.horizontalColor)},{flush:"post"}),(A,r)=>((0,e.openBlock)(),(0,e.createElementBlock)(e.Fragment,null,[t.track.isEmpty&&!t.showEmptyFrame||t.cleanView?(0,e.createCommentVNode)("",!0):((0,e.openBlock)(),(0,e.createElementBlock)("rect",{key:0,class:"waveform-track__plot-background waveform-chart__plot-background",width:t.track.width??t.innerWidth,height:t.track.height,fill:t.frameStyle.backgroundColor,"aria-hidden":"true"},null,8,Ba)),t.track.isEmpty&&!t.showEmptyFrame||t.cleanView?(0,e.createCommentVNode)("",!0):((0,e.openBlock)(),(0,e.createElementBlock)("g",{key:1,"clip-path":`url(#${t.clipPathId}-${t.track.index})`,"aria-hidden":"true"},[(0,e.createElementVNode)("g",pa,[(0,e.createElementVNode)("g",{ref_key:"minorVertical",ref:n},null,512),(0,e.createElementVNode)("g",{ref_key:"minorHorizontal",ref:i},null,512)]),(0,e.createElementVNode)("g",fa,[(0,e.createElementVNode)("g",{ref_key:"majorVertical",ref:a},null,512),(0,e.createElementVNode)("g",{ref_key:"majorHorizontal",ref:o},null,512)])],8,Ea)),(t.track.hasVisibleSeries||t.track.isEmpty&&t.showEmptyFrame)&&void 0!==t.frameNumber&&!t.cleanView?((0,e.openBlock)(),(0,e.createElementBlock)("text",{key:2,class:"waveform-track__watermark waveform-chart__watermark",x:(t.track.width??t.innerWidth)/2,y:t.track.height/2,style:(0,e.normalizeStyle)({fontSize:`${Math.min(120,.65*t.track.height)}px`}),"text-anchor":"middle","dominant-baseline":"central","aria-hidden":"true"},(0,e.toDisplayString)(t.frameNumber),13,ya)):(0,e.createCommentVNode)("",!0)],64))}}),wa=["data-track-index","data-track-id","data-track-empty","data-track-left","data-track-width","data-y-axis-label-x","data-track-top","data-track-height","transform"],ka=["data-interactive","data-independent-overlay-index","width","height"],xa=["x","y"],ba=(0,e.defineComponent)({__name:"WaveformTrack",props:{track:{},paginationOpacity:{},clipPathId:{},innerWidth:{},zoomable:{type:Boolean},interactive:{type:Boolean,default:!0},displayMode:{},interactionMode:{default:"zoom"},frameNumber:{},frameStyle:{},framePath:{},axes:{},timeUnit:{},yLabel:{},showAxisUnits:{type:Boolean,default:!0},showLabelUnits:{type:Boolean},hideYAxisTitles:{type:Boolean},containFrameStroke:{type:Boolean},cleanView:{type:Boolean,default:!1},zeroLine:{default:()=>({visible:!0,color:H,width:1,dash:"6 4",opacity:.5,boundaryThreshold:.02})}},emits:["pointer-move","pointer-down","pointer-up","pointer-cancel","pointer-leave","click","contextmenu"],setup(t,{emit:A}){const n=t,i=A,a=(0,e.computed)(()=>{const e=n.frameStyle?.borderWidth;return{borderColor:n.frameStyle?.borderColor||"#1f2937",borderWidth:"number"==typeof e&&Number.isFinite(e)&&e>=0?e:1,borderStyle:"dashed"===n.frameStyle?.borderStyle||"dotted"===n.frameStyle?.borderStyle?n.frameStyle.borderStyle:"solid",backgroundColor:n.frameStyle?.backgroundColor||"transparent"}}),o=(0,e.computed)(()=>n.containFrameStroke?a.value.borderWidth/2:0);return(A,n)=>((0,e.openBlock)(),(0,e.createElementBlock)("g",{class:(0,e.normalizeClass)(["waveform-track waveform-chart__track",{"waveform-track--empty waveform-chart__track--empty":t.track.isEmpty}]),"data-track-index":t.track.index,"data-track-id":t.track.id,"data-track-empty":t.track.isEmpty||void 0,"data-track-left":t.track.left,"data-track-width":t.track.width,"data-y-axis-label-x":t.track.yAxisLabelX,"data-track-top":t.track.top,"data-track-height":t.track.height,transform:`translate(${t.track.left??0}, ${t.track.top})`},[(0,e.createVNode)(va,{track:t.track,"clip-path-id":t.clipPathId,"inner-width":t.innerWidth,"clean-view":t.cleanView,"frame-number":t.frameNumber,"frame-style":a.value,"show-empty-frame":""},null,8,["track","clip-path-id","inner-width","clean-view","frame-number","frame-style"]),(0,e.createVNode)(ha,{track:t.track,"inner-width":t.innerWidth,"clean-view":t.cleanView,axes:t.axes,"time-unit":t.timeUnit,"y-label":t.yLabel,"show-units":t.showAxisUnits,"show-label-units":t.showLabelUnits,"hide-y-axis-titles":t.hideYAxisTitles,"hide-overlapping-maximum-label":"compact"===t.displayMode},null,8,["track","inner-width","clean-view","axes","time-unit","y-label","show-units","show-label-units","hide-y-axis-titles","hide-overlapping-maximum-label"]),((0,e.openBlock)(),(0,e.createBlock)((0,e.resolveDynamicComponent)(t.framePath?"path":"rect"),{class:"waveform-track__plot-frame waveform-chart__plot-frame",d:t.framePath,x:t.containFrameStroke?o.value:void 0,y:t.containFrameStroke?o.value:void 0,width:Math.max(0,(t.track.width??t.innerWidth)-2*o.value),height:Math.max(0,t.track.height-2*o.value),fill:"none",stroke:a.value.borderColor,"stroke-width":a.value.borderWidth,"stroke-dasharray":"dashed"===a.value.borderStyle?"6 4":"dotted"===a.value.borderStyle?"1 3":void 0,"stroke-linecap":"dotted"===a.value.borderStyle?"round":void 0,"aria-hidden":"true"},null,8,["d","x","y","width","height","stroke","stroke-width","stroke-dasharray","stroke-linecap"])),(0,e.createVNode)($i,{track:t.track,"clip-path-id":t.clipPathId,"pagination-opacity":t.paginationOpacity},null,8,["track","clip-path-id","pagination-opacity"]),(0,e.createVNode)(na,{track:t.track,"clip-path-id":t.clipPathId,"inner-width":t.innerWidth,"clean-view":t.cleanView,"zero-line":t.zeroLine},null,8,["track","clip-path-id","inner-width","clean-view","zero-line"]),!t.track.isEmpty&&t.track.hasVisibleSeries&&"independent"===t.displayMode?((0,e.openBlock)(),(0,e.createElementBlock)("rect",{key:0,class:(0,e.normalizeClass)(["waveform-track__overlay waveform-track__overlay--independent waveform-chart__overlay waveform-chart__overlay--independent",{"is-zoomable":t.interactive&&t.zoomable&&"zoom"===t.interactionMode,"is-annotating":t.interactive&&"annotation"===t.interactionMode,"is-presentation":!t.interactive}]),"data-interactive":t.interactive,"data-independent-overlay-index":t.track.index,width:t.track.width??t.innerWidth,height:t.track.height,onPointermove:n[0]||(n[0]=e=>i("pointer-move",e)),onPointerdown:n[1]||(n[1]=e=>i("pointer-down",e)),onPointerup:n[2]||(n[2]=e=>i("pointer-up",e)),onPointercancel:n[3]||(n[3]=e=>i("pointer-cancel",e)),onPointerleave:n[4]||(n[4]=e=>i("pointer-leave")),onClick:n[5]||(n[5]=e=>i("click",e)),onContextmenu:n[6]||(n[6]=e=>i("contextmenu",e))},null,42,ka)):(0,e.createCommentVNode)("",!0),t.track.isEmpty||t.track.hasVisibleSeries||t.cleanView?(0,e.createCommentVNode)("",!0):((0,e.openBlock)(),(0,e.createElementBlock)("text",{key:1,class:"waveform-track__no-visible-series",x:(t.track.width??t.innerWidth)/2,y:t.track.height/2,"text-anchor":"middle","dominant-baseline":"central"}," 暂无可见曲线 ",8,xa))],10,wa))}}),Ma=["width","height","data-position","data-orientation"],Na=["disabled","aria-pressed","aria-label","onClick"],Da=["data-line-type","data-line-style","data-point-type","data-error-bar-visible"],Sa=["d","stroke","stroke-dasharray"],Fa=["d","stroke","stroke-width"],Ga=["d","fill"],Ya=["title"],Ja=qA((0,e.defineComponent)({__name:"WaveformLegend",props:{series:{},position:{},orientation:{},backgroundColor:{},width:{},height:{},interactive:{type:Boolean,default:!1},showUnits:{type:Boolean,default:!1},hiddenSeriesIds:{default:()=>[]}},emits:["toggle"],setup(t,{emit:A}){const n=t,i=A,a=(0,e.computed)(()=>new Set(n.hiddenSeriesIds));function o(e){return n.showUnits?ia(e.name,e.unit," "):e.name}function r(e){return a.value.has(e)}return(A,a)=>((0,e.openBlock)(),(0,e.createElementBlock)("foreignObject",{class:"waveform-legend waveform-chart__legend",x:"0",y:"0",width:t.width,height:t.height,"data-position":t.position,"data-orientation":t.orientation,"aria-label":"曲线图例"},[(0,e.createElementVNode)("div",{xmlns:"http://www.w3.org/1999/xhtml",class:(0,e.normalizeClass)(["waveform-legend__viewport",`waveform-legend__viewport--${t.position}`])},[(0,e.createElementVNode)("div",{class:(0,e.normalizeClass)(["waveform-legend__panel",[`waveform-legend__panel--${t.orientation}`,{"waveform-legend__panel--interactive":t.interactive}]]),style:(0,e.normalizeStyle)({backgroundColor:t.backgroundColor}),role:"list"},[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(t.series,A=>((0,e.openBlock)(),(0,e.createElementBlock)("button",{key:A.id,class:(0,e.normalizeClass)(["waveform-legend__item waveform-chart__legend-item",{"is-hidden":r(A.id)}]),type:"button",role:"listitem",disabled:!t.interactive,"aria-pressed":t.interactive?!r(A.id):void 0,"aria-label":t.interactive?`${r(A.id)?"显示":"隐藏"}曲线 ${A.name}`:void 0,onClick:(0,e.withModifiers)(e=>{return t=A.id,void(n.interactive&&i("toggle",t));var t},["stop"])},[((0,e.openBlock)(),(0,e.createElementBlock)("svg",{class:"waveform-legend__swatch",viewBox:"0 0 26 16","aria-hidden":"true","data-line-type":A.lineType,"data-line-style":A.lineStyle,"data-point-type":A.pointType,"data-error-bar-visible":A.errorBar.visible||void 0},[(0,e.unref)(Zi)(A.lineType)?((0,e.openBlock)(),(0,e.createElementBlock)("path",{key:0,class:"waveform-legend__line",d:(0,e.unref)(Zi)(A.lineType)??void 0,stroke:A.color,"stroke-dasharray":(0,e.unref)(Ui)(A.lineStyle),"stroke-width":"1",fill:"none"},null,8,Sa)):(0,e.createCommentVNode)("",!0),A.errorBar.visible?((0,e.openBlock)(),(0,e.createElementBlock)("path",{key:1,class:"waveform-legend__error-bar",d:(0,e.unref)(Li)(A.errorBar.capWidth),stroke:A.errorBar.color||A.color,"stroke-width":A.errorBar.width,"stroke-linecap":"butt",fill:"none"},null,8,Fa)):(0,e.createCommentVNode)("",!0),"none"!==A.pointType?((0,e.openBlock)(),(0,e.createElementBlock)("path",{key:2,class:"waveform-legend__point",d:(0,e.unref)(Ti)(A.pointType,30)??void 0,fill:A.color,transform:"translate(13 8)"},null,8,Ga)):(0,e.createCommentVNode)("",!0)],8,Da)),(0,e.createElementVNode)("span",{class:"waveform-legend__label",title:o(A)},(0,e.toDisplayString)(o(A)),9,Ya)],10,Na))),128))],6)],2)],8,Ma))}}),[["__scopeId","data-v-24214c74"]]),Ra={class:"waveform-chart__hover-layer","pointer-events":"none","aria-hidden":"true"},Ta=["clip-path","transform"],Za=["x1","x2","y2"],Ua=qA((0,e.defineComponent)({__name:"WaveformHoverLayer",props:{state:{},tracks:{},clipPathId:{},visible:{type:Boolean}},setup(t){const A=t,n=(0,e.computed)(()=>A.visible&&null!==A.state.queryX?A.tracks.flatMap(e=>{const t=null===A.state.trackIndex||A.state.trackIndex===e.index,n=A.state.crosshairXByTrack[e.index];return t&&!e.isEmpty&&e.hasVisibleSeries&&void 0!==n?[{track:e,x:e.xScale(n)}]:[]}):[]);return(A,i)=>((0,e.openBlock)(),(0,e.createElementBlock)("g",Ra,[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)(n.value,A=>((0,e.openBlock)(),(0,e.createElementBlock)("g",{key:A.track.index,class:"waveform-track__crosshair waveform-chart__crosshair","clip-path":`url(#${t.clipPathId}-${A.track.index})`,transform:`translate(${A.track.left??0}, ${A.track.top})`},[(0,e.createElementVNode)("line",{x1:A.x,x2:A.x,y1:"0",y2:A.track.height},null,8,Za)],8,Ta))),128))]))}}),[["__scopeId","data-v-54a5a37d"]]);function La(e,t,A=0){let n=[[0,e.width]];for(const r of t){if(r===e)continue;if(Math.abs(e.top+e.height-r.top)>1e-6)continue;const t=Math.max(0,r.left-e.left),A=Math.min(e.width,r.left+r.width-e.left);A<=t||(n=n.flatMap(([e,n])=>{if(A<=e||t>=n)return[[e,n]];const i=[];return e<t&&i.push([e,t]),n>A&&i.push([A,n]),i}))}if(1===n.length&&0===n[0][0]&&n[0][1]===e.width)return;A=Number.isFinite(A)?Math.max(0,A):0;const i=Math.max(A,e.width-A),a=Math.max(A,e.height-A),o=n.map(([e,t])=>`M${Math.max(A,e)},${a}H${Math.min(i,t)}`).join("");return`M${A},${a}V${A}H${i}V${a}${o}`}var Va=["data-display-mode","data-interaction-mode","data-presentation-mode","data-overlay-mode","data-chart-left-margin","data-plot-margin-top","data-plot-margin-bottom","data-title-area-height"],Oa=["role","aria-level","aria-hidden"],ja=["data-title-scale","data-title-wrapped"],Wa=["width","height","aria-label"],Xa=["id"],Ha=["width","height"],za=["transform"],Pa={key:0,class:"waveform-chart__grid-slots","aria-hidden":"true"},qa=["transform"],Ka=["width","height"],_a=["width","height"],$a=["x","y","width","height"],eo={key:4,class:"waveform-chart__legend-layer"},to=["data-legend-track-index","data-legend-track-id","transform"],Ao=["x","y"],no=["x","y"],io=(0,e.defineComponent)({__name:"WaveformChartView",props:{controller:{}},setup(t){const n=t,i=(0,e.computed)(()=>{const e=n.controller.frameStyle?.borderWidth;return n.controller.isEdgeCompact?("number"==typeof e&&Number.isFinite(e)&&e>=0?e:1)/2:0}),{displayMode:a,activeInteractionMode:o,isCleanView:r,isEdgeCompact:s,paginationVisible:l,isPresentationMode:g,selection:c,containerStyle:d,overlayMode:I,unitDisplayMode:u,showLegendUnits:m,hideYAxisTitles:h,resolvedChartLeftMargin:C,titleAreaHeight:Q,resolvedPlotMargin:B,pointerInsideChart:E,handleNativeContextMenu:p,titleAreaReserved:f,titleAreaStyle:y,titleVisible:v,titleMeasureStyle:w,resolvedTitleText:k,titleVisualStyle:x,titleTextStyle:b,titleLayout:M,chartWidth:N,drawingHeight:D,hasWaveformData:S,requestViewportReset:F,trackLayouts:G,presentationTracks:Y,presentationAnnotations:J,paginationOpacity:R,stabilizeAnimations:T,clipPathId:Z,chartTopMargin:U,gridCells:L,hasVisibleWaveformData:V,zoomable:O,isZoomMode:j,innerWidth:W,innerHeight:X,handleSharedPointerMove:H,beginSharedViewportDrag:z,finishViewportDrag:P,cancelViewportDrag:q,handlePointerLeave:K,handleAnnotationClick:_,resolveFrameNumber:$,frameStyle:ee,axes:te,resolvedZeroLine:Ae,timeUnit:ne,yLabel:ie,handleIndependentPointerMove:ae,beginViewportDrag:oe,hoverState:re,showTooltip:se,selectionBox:le,annotationsVisible:ge,handleExistingAnnotationContextMenu:ce,beginAnnotationDrag:de,handleAnnotationMove:Ie,endAnnotationDrag:ue,resolveLegendPosition:me,resolveLegendOrientation:he,legendBackgroundColor:Ce,legendInteractive:Qe,resolvedHiddenSeriesIds:Be,toggleSeriesVisibility:Ee,resolvedXLabel:pe,xAxisTitleY:fe,plotCenterX:ye,hasChartArea:ve,gridOptions:we,currentPage:ke,getPageSize:xe,pageableTracks:be,goToPage:Me,annotationInteraction:Ne,editorDraft:De,contextMenu:Se,editorSeries:Fe,editorSeriesOptions:Ge,timeError:Ye,confirmAnnotation:Je,cancelAnnotation:Re,changeDraftSeries:Te,changeDraftTime:Ze,editContextAnnotation:Ue,deleteContextAnnotation:Le,chartHeight:Ve,setContainer:Oe,setSvgElement:je,setTitleMeasureElement:We,setSharedOverlayElement:Xe}=(0,e.toRefs)(n.controller);function He(){E.value=!1,K.value()}return(n,ze)=>((0,e.openBlock)(),(0,e.createElementBlock)("div",{ref:(0,e.unref)(Oe),class:(0,e.normalizeClass)(["waveform-chart",[`waveform-chart--${(0,e.unref)(a)}`,`waveform-chart--interaction-${(0,e.unref)(o)}`,{"waveform-chart--clean":(0,e.unref)(r),"waveform-chart--edge-compact":(0,e.unref)(s),"waveform-chart--presentation":(0,e.unref)(g),"waveform-chart--panning":"pan"===(0,e.unref)(c)?.kind}]]),style:(0,e.normalizeStyle)((0,e.unref)(d)),"data-display-mode":(0,e.unref)(a),"data-interaction-mode":(0,e.unref)(o),"data-presentation-mode":(0,e.unref)(g),"data-overlay-mode":(0,e.unref)(I),"data-chart-left-margin":(0,e.unref)(C),"data-plot-margin-top":(0,e.unref)(B).top,"data-plot-margin-bottom":(0,e.unref)(B).bottom,"data-title-area-height":(0,e.unref)(Q),onPointermoveCapture:ze[7]||(ze[7]=(...t)=>(0,e.unref)(T)&&(0,e.unref)(T)(...t)),onPointerdownCapture:ze[8]||(ze[8]=(...t)=>(0,e.unref)(T)&&(0,e.unref)(T)(...t)),onWheelCapture:ze[9]||(ze[9]=(...t)=>(0,e.unref)(T)&&(0,e.unref)(T)(...t)),onDblclickCapture:ze[10]||(ze[10]=(...t)=>(0,e.unref)(T)&&(0,e.unref)(T)(...t)),onContextmenuCapture:ze[11]||(ze[11]=(...t)=>(0,e.unref)(T)&&(0,e.unref)(T)(...t)),onPointerenter:ze[12]||(ze[12]=e=>E.value=!0),onPointerleave:He,onContextmenu:ze[13]||(ze[13]=(...t)=>(0,e.unref)(p)&&(0,e.unref)(p)(...t))},[(0,e.unref)(f)?((0,e.openBlock)(),(0,e.createElementBlock)("div",{key:0,class:"waveform-chart__title-area",style:(0,e.normalizeStyle)((0,e.unref)(y)),role:(0,e.unref)(v)?"heading":void 0,"aria-level":(0,e.unref)(v)?2:void 0,"aria-hidden":(0,e.unref)(r)||void 0},[(0,e.createElementVNode)("span",{ref:(0,e.unref)(We),class:"waveform-chart__title-measure",style:(0,e.normalizeStyle)((0,e.unref)(w)),"aria-hidden":"true"},(0,e.toDisplayString)((0,e.unref)(k)),5),(0,e.unref)(v)?((0,e.openBlock)(),(0,e.createElementBlock)("span",{key:0,class:"waveform-chart__title-visual",style:(0,e.normalizeStyle)((0,e.unref)(x))},[(0,e.createElementVNode)("span",{class:"waveform-chart__title-text",style:(0,e.normalizeStyle)((0,e.unref)(b)),"data-title-scale":(0,e.unref)(M).scale,"data-title-wrapped":(0,e.unref)(M).wrapped||void 0},(0,e.toDisplayString)((0,e.unref)(k)),13,ja)],4)):(0,e.createCommentVNode)("",!0)],12,Oa)):(0,e.createCommentVNode)("",!0),((0,e.openBlock)(),(0,e.createElementBlock)("svg",{ref:(0,e.unref)(je),class:"waveform-chart__svg",width:(0,e.unref)(N),height:(0,e.unref)(D),role:"img","aria-label":(0,e.unref)(S)?"波形折线图":"暂无波形数据",onDblclick:ze[6]||(ze[6]=(...t)=>(0,e.unref)(F)&&(0,e.unref)(F)(...t))},[(0,e.createElementVNode)("defs",null,[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)((0,e.unref)(G),t=>((0,e.openBlock)(),(0,e.createElementBlock)("clipPath",{id:`${(0,e.unref)(Z)}-${t.index}`,key:`${(0,e.unref)(Z)}-${t.index}`,clipPathUnits:"userSpaceOnUse"},[(0,e.createElementVNode)("rect",{width:t.width,height:t.height},null,8,Ha)],8,Xa))),128))]),(0,e.createElementVNode)("g",{transform:`translate(${(0,e.unref)(C)}, ${(0,e.unref)(U)})`},["compact"===(0,e.unref)(a)||(0,e.unref)(S)||(0,e.unref)(r)?(0,e.createCommentVNode)("",!0):((0,e.openBlock)(),(0,e.createElementBlock)("g",Pa,[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)((0,e.unref)(L),t=>((0,e.openBlock)(),(0,e.createElementBlock)("g",{key:`grid-slot-${t.slotIndex}`,transform:`translate(${t.left}, ${t.top})`},[t.series?(0,e.createCommentVNode)("",!0):((0,e.openBlock)(),(0,e.createElementBlock)("rect",{key:0,class:"waveform-chart__grid-slot-placeholder",width:t.width,height:t.cellHeight},null,8,Ka))],8,qa))),128))])),"independent"!==(0,e.unref)(a)&&(0,e.unref)(G).length&&(0,e.unref)(V)?((0,e.openBlock)(),(0,e.createElementBlock)("rect",{key:1,ref:(0,e.unref)(Xe),class:(0,e.normalizeClass)(["waveform-chart__overlay waveform-chart__overlay--shared",{"is-zoomable":!(0,e.unref)(g)&&(0,e.unref)(O)&&(0,e.unref)(j),"is-annotating":!(0,e.unref)(g)&&"annotation"===(0,e.unref)(o)}]),width:(0,e.unref)(W),height:(0,e.unref)(X),onPointermove:ze[0]||(ze[0]=(...t)=>(0,e.unref)(H)&&(0,e.unref)(H)(...t)),onPointerdown:ze[1]||(ze[1]=(...t)=>(0,e.unref)(z)&&(0,e.unref)(z)(...t)),onPointerup:ze[2]||(ze[2]=(...t)=>(0,e.unref)(P)&&(0,e.unref)(P)(...t)),onPointercancel:ze[3]||(ze[3]=(...t)=>(0,e.unref)(q)&&(0,e.unref)(q)(...t)),onPointerleave:ze[4]||(ze[4]=(...t)=>(0,e.unref)(K)&&(0,e.unref)(K)(...t)),onClick:ze[5]||(ze[5]=(...t)=>(0,e.unref)(_)&&(0,e.unref)(_)(...t))},null,42,_a)):(0,e.createCommentVNode)("",!0),((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)((0,e.unref)(G),t=>((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(ba),{key:`${t.index}-${t.id}`,track:(0,e.unref)(Y).find(e=>e.id===t.id)??t,"pagination-opacity":(0,e.unref)(R),"frame-path":"compact"===(0,e.unref)(a)?(0,e.unref)(La)(t,(0,e.unref)(G),i.value):void 0,"clip-path-id":(0,e.unref)(Z),"inner-width":(0,e.unref)(W),zoomable:(0,e.unref)(O),interactive:!(0,e.unref)(g),"display-mode":(0,e.unref)(a),"interaction-mode":(0,e.unref)(o),"frame-number":(0,e.unref)($)(t.id,((0,e.unref)(ke)-1)*(0,e.unref)(xe)((0,e.unref)(we))+t.index),"frame-style":(0,e.unref)(ee),axes:(0,e.unref)(te),"show-axis-units":"axis"===(0,e.unref)(u),"show-label-units":"channel-label-or-legend"===(0,e.unref)(u)||"channel-label"===(0,e.unref)(u),"hide-y-axis-titles":(0,e.unref)(h),"contain-frame-stroke":(0,e.unref)(s),"clean-view":(0,e.unref)(r),"zero-line":(0,e.unref)(Ae),"time-unit":(0,e.unref)(ne),"y-label":(0,e.unref)(ie),onPointerMove:A=>(0,e.unref)(ae)(A,t.index),onPointerDown:A=>(0,e.unref)(oe)(A,t.index,!0),onPointerUp:(0,e.unref)(P),onPointerCancel:(0,e.unref)(q),onPointerLeave:(0,e.unref)(K),onClick:A=>(0,e.unref)(_)(A,t.index)},null,8,["track","pagination-opacity","frame-path","clip-path-id","inner-width","zoomable","interactive","display-mode","interaction-mode","frame-number","frame-style","axes","show-axis-units","show-label-units","hide-y-axis-titles","contain-frame-stroke","clean-view","zero-line","time-unit","y-label","onPointerMove","onPointerDown","onPointerUp","onPointerCancel","onPointerLeave","onClick"]))),128)),(0,e.createVNode)((0,e.unref)(Ua),{state:(0,e.unref)(re),tracks:(0,e.unref)(G),"clip-path-id":(0,e.unref)(Z),visible:(0,e.unref)(se)&&!(0,e.unref)(g)},null,8,["state","tracks","clip-path-id","visible"]),(0,e.unref)(le)&&"box"===(0,e.unref)(c)?.kind?((0,e.openBlock)(),(0,e.createElementBlock)("rect",{key:2,class:"waveform-chart__zoom-selection",x:(0,e.unref)(le).x,y:(0,e.unref)(le).y,width:(0,e.unref)(le).width,height:(0,e.unref)(le).height,"aria-hidden":"true"},null,8,$a)):(0,e.createCommentVNode)("",!0),(0,e.unref)(r)?(0,e.createCommentVNode)("",!0):((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(KA),{key:3,"cancel-key":(0,e.unref)(o),"data-version":t.controller.data,annotations:(0,e.unref)(J),visible:(0,e.unref)(ge),interactive:!(0,e.unref)(g)&&"none"!==(0,e.unref)(o),onContextmenu:(0,e.unref)(ce),onDragStart:(0,e.unref)(de),onMove:(0,e.unref)(Ie),onDragEnd:(0,e.unref)(ue)},null,8,["cancel-key","data-version","annotations","visible","interactive","onContextmenu","onDragStart","onMove","onDragEnd"])),(0,e.unref)(r)?(0,e.createCommentVNode)("",!0):((0,e.openBlock)(),(0,e.createElementBlock)("g",eo,[((0,e.openBlock)(!0),(0,e.createElementBlock)(e.Fragment,null,(0,e.renderList)((0,e.unref)(G),t=>((0,e.openBlock)(),(0,e.createElementBlock)("g",{key:`legend-${t.index}-${t.id}`,class:"waveform-chart__legend-track","data-legend-track-index":t.index,"data-legend-track-id":t.id,transform:`translate(${t.left}, ${t.top})`},[!t.isEmpty&&(t.legendSeries.length>1||(0,e.unref)(h))?((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(Ja),{key:0,series:t.legendSeries,"show-units":(0,e.unref)(m),position:(0,e.unref)(me)(t.id),orientation:(0,e.unref)(he)((0,e.unref)(me)(t.id)),"background-color":(0,e.unref)(Ce),interactive:(0,e.unref)(Qe),"hidden-series-ids":(0,e.unref)(Be),width:t.width??(0,e.unref)(W),height:t.height,onToggle:(0,e.unref)(Ee)},null,8,["series","show-units","position","orientation","background-color","interactive","hidden-series-ids","width","height","onToggle"])):(0,e.createCommentVNode)("",!0)],8,to))),128))]))],8,za),(0,e.unref)(pe)&&!(0,e.unref)(r)?((0,e.openBlock)(),(0,e.createElementBlock)("text",{key:0,class:"waveform-chart__label waveform-chart__x-label",style:(0,e.normalizeStyle)((0,e.unref)(s)?{fontSize:(0,e.unref)(b).fontSize}:void 0),x:(0,e.unref)(ye),y:(0,e.unref)(fe),"text-anchor":"middle"},(0,e.toDisplayString)((0,e.unref)(pe)),13,Ao)):(0,e.createCommentVNode)("",!0),(0,e.unref)(ve)&&!(0,e.unref)(S)?((0,e.openBlock)(),(0,e.createElementBlock)("text",{key:1,class:"waveform-chart__empty",x:(0,e.unref)(N)/2,y:(0,e.unref)(D)/2,"text-anchor":"middle"}," 暂无有效波形数据 ",8,no)):(0,e.createCommentVNode)("",!0)],40,Wa)),(0,e.createVNode)(ci,{controller:t.controller},null,8,["controller"]),(0,e.unref)(l)?((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(A.Pagination),{key:1,class:"waveform-chart__pagination","aria-label":"波形分页",current:(0,e.unref)(ke),"page-size":(0,e.unref)(xe)((0,e.unref)(we)),total:(0,e.unref)(be).length,"show-size-changer":!1,"show-quick-jumper":!1,onChange:(0,e.unref)(Me)},null,8,["current","page-size","total","onChange"])):(0,e.createCommentVNode)("",!0),!(0,e.unref)(De)||(0,e.unref)(r)||(0,e.unref)(g)?(0,e.createCommentVNode)("",!0):((0,e.openBlock)(),(0,e.createBlock)(Ni,{key:2,annotation:(0,e.unref)(De).annotation,mode:(0,e.unref)(De).mode,series:(0,e.unref)(Fe),"series-options":(0,e.unref)(Ge),"time-unit":(0,e.unref)(ne),"time-error":(0,e.unref)(Ye),onConfirm:(0,e.unref)(Je),onCancel:(0,e.unref)(Re),onSeriesChange:(0,e.unref)(Te),onTimeChange:(0,e.unref)(Ze)},null,8,["annotation","mode","series","series-options","time-unit","time-error","onConfirm","onCancel","onSeriesChange","onTimeChange"])),(0,e.unref)(r)||(0,e.unref)(g)?(0,e.createCommentVNode)("",!0):((0,e.openBlock)(),(0,e.createBlock)((0,e.unref)(_A),{key:3,visible:null!==(0,e.unref)(Se),x:(0,e.unref)(Se)?.x||0,y:(0,e.unref)(Se)?.y||0,"can-edit":Boolean((0,e.unref)(Se)?.annotationId),onEdit:(0,e.unref)(Ue),onDelete:(0,e.unref)(Le),onClose:(0,e.unref)(Ne).closeContextMenu},null,8,["visible","x","y","can-edit","onEdit","onDelete","onClose"])),(0,e.createVNode)((0,e.unref)(Ji),{state:(0,e.unref)(re),visible:(0,e.unref)(se)&&!(0,e.unref)(g),"time-unit":(0,e.unref)(ne),"container-width":(0,e.unref)(N),"container-height":(0,e.unref)(Ve)},null,8,["state","visible","time-unit","container-width","container-height"])],46,Va))}}),ao=io,oo=(0,e.defineComponent)({__name:"WaveformChart",props:{toolbar:{type:[Boolean,Object]},data:{},displayMode:{default:"independent"},overlayMode:{default:"single-axis"},unitDisplayMode:{default:"axis"},layoutPreset:{default:"default"},width:{},height:{},xLabel:{},yLabel:{default:"幅值"},lineColor:{default:"#0960bd"},showTooltip:{type:Boolean,default:!0},zoomable:{type:Boolean,default:!0},integerZoom:{type:Boolean,default:!1},pannable:{type:Boolean,default:!1},panXDomain:{},minZoomSpan:{},minVisiblePoints:{default:0},maxZoomScale:{},initialXDomain:{},initialXDomains:{},xDomainStrategy:{default:()=>({type:"integer-ms"})},yDomain:{},yDomains:{},timeUnit:{default:"ms"},frameNumber:{default:void 0},frameNumbers:{},frameStyle:{},axes:{},annotations:{default:()=>[]},annotationsVisible:{type:Boolean,default:!0},interactionMode:{default:void 0},grid:{default:()=>({rowCount:2,columnCount:1,showPagination:!0})},rendering:{default:()=>({})},plotMargin:{default:()=>({})},title:{},legend:{default:()=>({position:"top-right",orientation:"auto"})},hiddenSeriesIds:{},defaultHiddenSeriesIds:{default:()=>[]},cleanView:{type:Boolean,default:!1},presentationMode:{type:Boolean,default:!1},zeroLine:{default:()=>({visible:!0})},animationEnabled:{type:Boolean,default:!0},animation:{},animationUpdate:{},animationAnnotation:{},animationThreshold:{}},emits:["update:interactionMode","interaction-mode-change","control-state-change","point-hover","zoom-intent","zoom-change","zoom-end","pan-end","zoom-reset","update:annotations","update:hidden-series-ids","series-visibility-change","annotation-create","annotation-update","annotation-delete","page-change","sampling-complete","sampling-backend-change","sampling-error"],setup(t,{expose:A,emit:n}){const i=Pn(t,n);return A({exportImage:i.exportImage,zoomIn:i.zoomIn,zoomOut:i.zoomOut,fitToData:i.fitToData,setInteractionMode:i.setInteractionMode,getControlState:i.getControlState,resetViewport:i.resetViewport,setViewportDomain:i.setViewportDomain}),(t,A)=>((0,e.openBlock)(),(0,e.createBlock)(ao,{controller:(0,e.unref)(i)},null,8,["controller"]))}});exports.Animation=class{#J;constructor(e){const t=new E,A=B(e);A.tracks=t.capture(A),this.#J=new v(A,t),t.bind(this.#J)}get state(){return this.#J.state}start(e){this.#J.start(e)}tick(e){return this.#J.tick(e)}pause(e){this.#J.pause(e)}resume(e){this.#J.resume(e)}abort(){this.#J.abort()}finish(){this.#J.finish()}},exports.Animator=k,exports.DEFAULT_WAVEFORM_RENDERING_OPTIONS=Be,exports.WaveformAnimationController=j,exports.WaveformChart=oo,exports.buildMinorTicks=Dt,exports.calculateWasmRange=async function(e,t){if(e.length!==t.length)throw new Error("x and y must have the same length");await ze();const A=function(e,t){const A=Ze(e,Ve.__wbindgen_malloc),n=je,i=Ze(t,Ve.__wbindgen_malloc),a=je,o=Ve.calculate_range(A,n,i,a);if(o[3])throw Ue(o[2]);var r=Fe(o[0],o[1]).slice();return Ve.__wbindgen_free(o[0],8*o[1],8),r}(e,t);return 4===A.length?{x:[A[0],A[1]],y:[A[2],A[3]]}:void 0},exports.clamp=function(e,t,A){return Math.min(Math.max(e,t),A)},exports.createAnnotationAppearAnimation=V,exports.createAnnotationDisappearAnimation=O,exports.createLineDrawingAnimation=R,exports.createPathTransitionAnimation=Z,exports.createStaggeredLineDrawingAnimations=T,exports.createYAxisScaleAnimation=U,exports.displayTime=Zt,exports.findWasmVisibleRange=async function(e,t,A){if(e.length!==t.length)throw new Error("x and y must have the same length");await ze();const n=function(e,t,A,n){const i=Ze(e,Ve.__wbindgen_malloc),a=je,o=Ze(t,Ve.__wbindgen_malloc),r=je,s=Ve.find_visible_range(i,a,o,r,A,n);if(s[3])throw Ue(s[2]);var l=Ge(s[0],s[1]).slice();return Ve.__wbindgen_free(s[0],4*s[1],4),l}(e,t,A[0],A[1]);return[n[0],n[1]]},exports.formatAxisTime=function(e,t,A){return Ut(e,A??[e,e],t,"tick")},exports.formatEndpointTime=function(e,t,A){return Ut(e,t,A,"end")},exports.formatTooltipTime=Lt,exports.getEasingFunction=o,exports.globalAnimator=x,exports.initializeWasmSampling=ze,exports.normalizeWaveformData=ce,exports.normalizeWaveformSeries=function(e){return Ie(e).map(({source:e,...t})=>({...t,points:e.pointsInRange()}))},exports.paddedDomain=Nt,exports.parseWaveformAnnotations=function(e){let t;"string"!=typeof e&&$A("input must be a JSON string");try{t=JSON.parse(e)}catch{$A("input is not valid JSON")}return en(t)||$A("root must be an object"),1!==t.version&&$A("version must be 1"),Array.isArray(t.annotations)||$A("annotations must be an array"),rn(t.annotations)},exports.resolveTrackGeometry=function(e,t,A){if(e<=0)return{gap:0,axisBand:0,height:0};const n="compact"===t?0:"separated"===t?16:14,i="independent"===t?30:0,a=(e-1)*(n+i),o=.45*A,r=a>o?o/a:1,s=n*r,l=i*r;return{gap:s,axisBand:l,height:Math.max(1,(A-(e-1)*(s+l))/e)}},exports.resolveWaveformRenderingOptions=ke,exports.sampleWaveformWasm=async function(e){!function(e){if(e.x.length!==e.y.length)throw new Error("x and y must have the same length")}(e),await ze();const t=(A=e.targetPointCount,0===(n=e.x.length)?0:Number.isFinite(A)?Math.min(n,Math.max(1,Math.floor(A))):n);var A,n;const i=He[e.strategy];if("average"!==e.strategy&&"sum"!==e.strategy)return{kind:"source-indexes",sourceIndexes:Se(e.x,e.y,i,t)};const a=function(e,t,A,n){const i=Ze(e,Ve.__wbindgen_malloc),a=je,o=Ze(t,Ve.__wbindgen_malloc),r=je,s=Ve.sample_aggregates(i,a,o,r,A,n);if(s[3])throw Ue(s[2]);var l=Fe(s[0],s[1]).slice();return Ve.__wbindgen_free(s[0],8*s[1],8),l}(e.x,e.y,i,t),o=new Float64Array(a.length/2),r=new Float64Array(a.length/2);for(let s=0;s<o.length;s+=1)o[s]=a[2*s],r[s]=a[2*s+1];return{kind:"aggregates",x:o,y:r}},exports.selectRenderablePoints=function(e,t,A,n){return!e.length||A<=0?[]:Me(ie(e),function(e,t){const A=Math.min(t[0],t[1]),n=Math.max(t[0],t[1]);return{start:xe.left(e,A),end:xe.right(e,n)}}(e,t),t,A,n)},exports.serializeWaveformAnnotations=function(e){return JSON.stringify({version:1,annotations:rn(e)},null,2)};
|