tsviewer 1.0.32 → 1.0.34
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{BFLibraryButton-BNlclUro.mjs → BFLibraryButton-D_mduAkj.mjs} +1 -1
- package/dist/{IconSelection-CzE3ngGY.mjs → IconSelection-BEeprN5h.mjs} +1 -1
- package/dist/{TSAnnotationCanvas-CoRxWjXn.mjs → TSAnnotationCanvas-CoyN89L9.mjs} +3 -3
- package/dist/{TSAnnotationModal-B-OHQVza.mjs → TSAnnotationModal-D7hiW-sy.mjs} +3 -3
- package/dist/{TSFilterModal-ZewnIuXD.mjs → TSFilterModal-DRI8h7lk.mjs} +3 -3
- package/dist/{TSScrubber-CfI0H_CE.mjs → TSScrubber--55ypncW.mjs} +1 -1
- package/dist/{TSViewerCanvas-BZitVLGc.mjs → TSViewerCanvas-DVfgbpsC.mjs} +4 -4
- package/dist/{TSViewerLayerWindow-U3NyH3nc.mjs → TSViewerLayerWindow-kqKN1_y8.mjs} +2 -2
- package/dist/{TSViewerToolbar-BwtRehDx.mjs → TSViewerToolbar-CMGvMsQk.mjs} +2 -2
- package/dist/{TsAnnotationDeleteDialog-Ce9pB5DQ.mjs → TsAnnotationDeleteDialog-DXHoAlQ9.mjs} +3 -3
- package/dist/{index-BPrTaCv-.mjs → index-BJ3pfGgo.mjs} +440 -456
- package/dist/{pathOr-B0o1s29P.mjs → pathOr-BSXdOL4Y.mjs} +1 -1
- package/dist/tsviewer.css +1 -1
- package/dist/tsviewer.es.js +1 -1
- package/dist/tsviewer.umd.js +6 -6
- package/package.json +1 -1
package/dist/tsviewer.umd.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
(function(e,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("pinia"),require("aws-amplify/auth")):typeof define=="function"&&define.amd?define(["exports","vue","pinia","aws-amplify/auth"],t):(e=typeof globalThis<"u"?globalThis:e||self,t(e.tsviewer={},e.Vue,e.Pinia,e.Amplify.Auth))})(this,function(exports,vue,pinia,auth){"use strict";function _isPlaceholder(e){return e!=null&&typeof e=="object"&&e["@@functional/placeholder"]===!0}function _curry1(e){return function t(n){return arguments.length===0||_isPlaceholder(n)?t:e.apply(this,arguments)}}function _curry2(e){return function t(n,r){switch(arguments.length){case 0:return t;case 1:return _isPlaceholder(n)?t:_curry1(function(a){return e(n,a)});default:return _isPlaceholder(n)&&_isPlaceholder(r)?t:_isPlaceholder(n)?_curry1(function(a){return e(a,r)}):_isPlaceholder(r)?_curry1(function(a){return e(n,a)}):e(n,r)}}}function _concat(e,t){e=e||[],t=t||[];var n,r=e.length,a=t.length,s=[];for(n=0;n<r;)s[s.length]=e[n],n+=1;for(n=0;n<a;)s[s.length]=t[n],n+=1;return s}function _arity(e,t){switch(e){case 0:return function(){return t.apply(this,arguments)};case 1:return function(n){return t.apply(this,arguments)};case 2:return function(n,r){return t.apply(this,arguments)};case 3:return function(n,r,a){return t.apply(this,arguments)};case 4:return function(n,r,a,s){return t.apply(this,arguments)};case 5:return function(n,r,a,s,o){return t.apply(this,arguments)};case 6:return function(n,r,a,s,o,i){return t.apply(this,arguments)};case 7:return function(n,r,a,s,o,i,u){return t.apply(this,arguments)};case 8:return function(n,r,a,s,o,i,u,l){return t.apply(this,arguments)};case 9:return function(n,r,a,s,o,i,u,l,v){return t.apply(this,arguments)};case 10:return function(n,r,a,s,o,i,u,l,v,d){return t.apply(this,arguments)};default:throw new Error("First argument to _arity must be a non-negative integer no greater than ten")}}function _curryN(e,t,n){return function(){for(var r=[],a=0,s=e,o=0;o<t.length||a<arguments.length;){var i;o<t.length&&(!_isPlaceholder(t[o])||a>=arguments.length)?i=t[o]:(i=arguments[a],a+=1),r[o]=i,_isPlaceholder(i)||(s-=1),o+=1}return s<=0?n.apply(this,r):_arity(s,_curryN(e,r,n))}}var curryN=_curry2(function(t,n){return t===1?_curry1(n):_arity(t,_curryN(t,[],n))});function _curry3(e){return function t(n,r,a){switch(arguments.length){case 0:return t;case 1:return _isPlaceholder(n)?t:_curry2(function(s,o){return e(n,s,o)});case 2:return _isPlaceholder(n)&&_isPlaceholder(r)?t:_isPlaceholder(n)?_curry2(function(s,o){return e(s,r,o)}):_isPlaceholder(r)?_curry2(function(s,o){return e(n,s,o)}):_curry1(function(s){return e(n,r,s)});default:return _isPlaceholder(n)&&_isPlaceholder(r)&&_isPlaceholder(a)?t:_isPlaceholder(n)&&_isPlaceholder(r)?_curry2(function(s,o){return e(s,o,a)}):_isPlaceholder(n)&&_isPlaceholder(a)?_curry2(function(s,o){return e(s,r,o)}):_isPlaceholder(r)&&_isPlaceholder(a)?_curry2(function(s,o){return e(n,s,o)}):_isPlaceholder(n)?_curry1(function(s){return e(s,r,a)}):_isPlaceholder(r)?_curry1(function(s){return e(n,s,a)}):_isPlaceholder(a)?_curry1(function(s){return e(n,r,s)}):e(n,r,a)}}}const _isArray=Array.isArray||function(t){return t!=null&&t.length>=0&&Object.prototype.toString.call(t)==="[object Array]"};function _isTransformer(e){return e!=null&&typeof e["@@transducer/step"]=="function"}function _dispatchable(e,t,n){return function(){if(arguments.length===0)return n();var r=arguments[arguments.length-1];if(!_isArray(r)){for(var a=0;a<e.length;){if(typeof r[e[a]]=="function")return r[e[a]].apply(r,Array.prototype.slice.call(arguments,0,-1));a+=1}if(_isTransformer(r)){var s=t.apply(null,Array.prototype.slice.call(arguments,0,-1));return s(r)}}return n.apply(this,arguments)}}function _reduced(e){return e&&e["@@transducer/reduced"]?e:{"@@transducer/value":e,"@@transducer/reduced":!0}}const _xfBase={init:function(){return this.xf["@@transducer/init"]()},result:function(e){return this.xf["@@transducer/result"](e)}};function _map(e,t){for(var n=0,r=t.length,a=Array(r);n<r;)a[n]=e(t[n]),n+=1;return a}function _isString$1(e){return Object.prototype.toString.call(e)==="[object String]"}var _isArrayLike=_curry1(function(t){return _isArray(t)?!0:!t||typeof t!="object"||_isString$1(t)?!1:t.length===0?!0:t.length>0?t.hasOwnProperty(0)&&t.hasOwnProperty(t.length-1):!1}),XWrap=function(){function e(t){this.f=t}return e.prototype["@@transducer/init"]=function(){throw new Error("init not implemented on XWrap")},e.prototype["@@transducer/result"]=function(t){return t},e.prototype["@@transducer/step"]=function(t,n){return this.f(t,n)},e}();function _xwrap(e){return new XWrap(e)}var bind=_curry2(function(t,n){return _arity(t.length,function(){return t.apply(n,arguments)})});function _arrayReduce(e,t,n){for(var r=0,a=n.length;r<a;){if(t=e["@@transducer/step"](t,n[r]),t&&t["@@transducer/reduced"]){t=t["@@transducer/value"];break}r+=1}return e["@@transducer/result"](t)}function _iterableReduce(e,t,n){for(var r=n.next();!r.done;){if(t=e["@@transducer/step"](t,r.value),t&&t["@@transducer/reduced"]){t=t["@@transducer/value"];break}r=n.next()}return e["@@transducer/result"](t)}function _methodReduce(e,t,n,r){return e["@@transducer/result"](n[r](bind(e["@@transducer/step"],e),t))}var symIterator=typeof Symbol<"u"?Symbol.iterator:"@@iterator";function _reduce(e,t,n){if(typeof e=="function"&&(e=_xwrap(e)),_isArrayLike(n))return _arrayReduce(e,t,n);if(typeof n["fantasy-land/reduce"]=="function")return _methodReduce(e,t,n,"fantasy-land/reduce");if(n[symIterator]!=null)return _iterableReduce(e,t,n[symIterator]());if(typeof n.next=="function")return _iterableReduce(e,t,n);if(typeof n.reduce=="function")return _methodReduce(e,t,n,"reduce");throw new TypeError("reduce: list must be array or iterable")}var XMap=function(){function e(t,n){this.xf=n,this.f=t}return e.prototype["@@transducer/init"]=_xfBase.init,e.prototype["@@transducer/result"]=_xfBase.result,e.prototype["@@transducer/step"]=function(t,n){return this.xf["@@transducer/step"](t,this.f(n))},e}(),_xmap=_curry2(function(t,n){return new XMap(t,n)});function _has(e,t){return Object.prototype.hasOwnProperty.call(t,e)}var toString$1=Object.prototype.toString,_isArguments=function(){return toString$1.call(arguments)==="[object Arguments]"?function(t){return toString$1.call(t)==="[object Arguments]"}:function(t){return _has("callee",t)}}(),hasEnumBug=!{toString:null}.propertyIsEnumerable("toString"),nonEnumerableProps=["constructor","valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"],hasArgsEnumBug=function(){return arguments.propertyIsEnumerable("length")}(),contains=function(t,n){for(var r=0;r<t.length;){if(t[r]===n)return!0;r+=1}return!1},keys$1=_curry1(typeof Object.keys=="function"&&!hasArgsEnumBug?function(t){return Object(t)!==t?[]:Object.keys(t)}:function(t){if(Object(t)!==t)return[];var n,r,a=[],s=hasArgsEnumBug&&_isArguments(t);for(n in t)_has(n,t)&&(!s||n!=="length")&&(a[a.length]=n);if(hasEnumBug)for(r=nonEnumerableProps.length-1;r>=0;)n=nonEnumerableProps[r],_has(n,t)&&!contains(a,n)&&(a[a.length]=n),r-=1;return a}),map=_curry2(_dispatchable(["fantasy-land/map","map"],_xmap,function(t,n){switch(Object.prototype.toString.call(n)){case"[object Function]":return curryN(n.length,function(){return t.call(this,n.apply(this,arguments))});case"[object Object]":return _reduce(function(r,a){return r[a]=t(n[a]),r},{},keys$1(n));default:return _map(t,n)}}));const _isInteger=Number.isInteger||function(t){return t<<0===t};var nth=_curry2(function(t,n){var r=t<0?n.length+t:t;return _isString$1(n)?n.charAt(r):n[r]}),prop=_curry2(function(t,n){if(n!=null)return _isInteger(t)?nth(t,n):n[t]}),reduce=_curry3(_reduce),type$1=_curry1(function(t){return t===null?"Null":t===void 0?"Undefined":Object.prototype.toString.call(t).slice(8,-1)});function _pipe(e,t){return function(){return t.call(this,e.apply(this,arguments))}}function _checkForMethod(e,t){return function(){var n=arguments.length;if(n===0)return t();var r=arguments[n-1];return _isArray(r)||typeof r[e]!="function"?t.apply(this,arguments):r[e].apply(r,Array.prototype.slice.call(arguments,0,n-1))}}var slice=_curry3(_checkForMethod("slice",function(t,n,r){return Array.prototype.slice.call(r,t,n)})),tail=_curry1(_checkForMethod("tail",slice(1,1/0)));function pipe(){if(arguments.length===0)throw new Error("pipe requires at least one argument");return _arity(arguments[0].length,reduce(_pipe,arguments[0],tail(arguments)))}var reverse=_curry1(function(t){return _isString$1(t)?t.split("").reverse().join(""):Array.prototype.slice.call(t,0).reverse()});function compose(){if(arguments.length===0)throw new Error("compose requires at least one argument");return pipe.apply(this,reverse(arguments))}var head=nth(0);function _arrayFromIterator(e){for(var t=[],n;!(n=e.next()).done;)t.push(n.value);return t}function _includesWith(e,t,n){for(var r=0,a=n.length;r<a;){if(e(t,n[r]))return!0;r+=1}return!1}function _functionName(e){var t=String(e).match(/^function (\w*)/);return t==null?"":t[1]}function _objectIs(e,t){return e===t?e!==0||1/e===1/t:e!==e&&t!==t}const _objectIs$1=typeof Object.is=="function"?Object.is:_objectIs;function _uniqContentEquals(e,t,n,r){var a=_arrayFromIterator(e),s=_arrayFromIterator(t);function o(i,u){return _equals(i,u,n.slice(),r.slice())}return!_includesWith(function(i,u){return!_includesWith(o,u,i)},s,a)}function _equals(e,t,n,r){if(_objectIs$1(e,t))return!0;var a=type$1(e);if(a!==type$1(t))return!1;if(typeof e["fantasy-land/equals"]=="function"||typeof t["fantasy-land/equals"]=="function")return typeof e["fantasy-land/equals"]=="function"&&e["fantasy-land/equals"](t)&&typeof t["fantasy-land/equals"]=="function"&&t["fantasy-land/equals"](e);if(typeof e.equals=="function"||typeof t.equals=="function")return typeof e.equals=="function"&&e.equals(t)&&typeof t.equals=="function"&&t.equals(e);switch(a){case"Arguments":case"Array":case"Object":if(typeof e.constructor=="function"&&_functionName(e.constructor)==="Promise")return e===t;break;case"Boolean":case"Number":case"String":if(!(typeof e==typeof t&&_objectIs$1(e.valueOf(),t.valueOf())))return!1;break;case"Date":if(!_objectIs$1(e.valueOf(),t.valueOf()))return!1;break;case"Error":return e.name===t.name&&e.message===t.message;case"RegExp":if(!(e.source===t.source&&e.global===t.global&&e.ignoreCase===t.ignoreCase&&e.multiline===t.multiline&&e.sticky===t.sticky&&e.unicode===t.unicode))return!1;break}for(var s=n.length-1;s>=0;){if(n[s]===e)return r[s]===t;s-=1}switch(a){case"Map":return e.size!==t.size?!1:_uniqContentEquals(e.entries(),t.entries(),n.concat([e]),r.concat([t]));case"Set":return e.size!==t.size?!1:_uniqContentEquals(e.values(),t.values(),n.concat([e]),r.concat([t]));case"Arguments":case"Array":case"Object":case"Boolean":case"Number":case"String":case"Date":case"Error":case"RegExp":case"Int8Array":case"Uint8Array":case"Uint8ClampedArray":case"Int16Array":case"Uint16Array":case"Int32Array":case"Uint32Array":case"Float32Array":case"Float64Array":case"ArrayBuffer":break;default:return!1}var o=keys$1(e);if(o.length!==keys$1(t).length)return!1;var i=n.concat([e]),u=r.concat([t]);for(s=o.length-1;s>=0;){var l=o[s];if(!(_has(l,t)&&_equals(t[l],e[l],i,u)))return!1;s-=1}return!0}var equals=_curry2(function(t,n){return _equals(t,n,[],[])});function _isObject(e){return Object.prototype.toString.call(e)==="[object Object]"}var defaultTo=_curry2(function(t,n){return n==null||n!==n?t:n});function _isTypedArray(e){var t=Object.prototype.toString.call(e);return t==="[object Uint8ClampedArray]"||t==="[object Int8Array]"||t==="[object Uint8Array]"||t==="[object Int16Array]"||t==="[object Uint16Array]"||t==="[object Int32Array]"||t==="[object Uint32Array]"||t==="[object Float32Array]"||t==="[object Float64Array]"||t==="[object BigInt64Array]"||t==="[object BigUint64Array]"}var empty=_curry1(function(t){return t!=null&&typeof t["fantasy-land/empty"]=="function"?t["fantasy-land/empty"]():t!=null&&t.constructor!=null&&typeof t.constructor["fantasy-land/empty"]=="function"?t.constructor["fantasy-land/empty"]():t!=null&&typeof t.empty=="function"?t.empty():t!=null&&t.constructor!=null&&typeof t.constructor.empty=="function"?t.constructor.empty():_isArray(t)?[]:_isString$1(t)?"":_isObject(t)?{}:_isArguments(t)?function(){return arguments}():_isTypedArray(t)?t.constructor.from(""):void 0}),XFind=function(){function e(t,n){this.xf=n,this.f=t,this.found=!1}return e.prototype["@@transducer/init"]=_xfBase.init,e.prototype["@@transducer/result"]=function(t){return this.found||(t=this.xf["@@transducer/step"](t,void 0)),this.xf["@@transducer/result"](t)},e.prototype["@@transducer/step"]=function(t,n){return this.f(n)&&(this.found=!0,t=_reduced(this.xf["@@transducer/step"](t,n))),t},e}(),_xfind=_curry2(function(t,n){return new XFind(t,n)}),find=_curry2(_dispatchable(["find"],_xfind,function(t,n){for(var r=0,a=n.length;r<a;){if(t(n[r]))return n[r];r+=1}})),XFindIndex=function(){function e(t,n){this.xf=n,this.f=t,this.idx=-1,this.found=!1}return e.prototype["@@transducer/init"]=_xfBase.init,e.prototype["@@transducer/result"]=function(t){return this.found||(t=this.xf["@@transducer/step"](t,-1)),this.xf["@@transducer/result"](t)},e.prototype["@@transducer/step"]=function(t,n){return this.idx+=1,this.f(n)&&(this.found=!0,t=_reduced(this.xf["@@transducer/step"](t,this.idx))),t},e}(),_xfindIndex=_curry2(function(t,n){return new XFindIndex(t,n)}),findIndex=_curry2(_dispatchable([],_xfindIndex,function(t,n){for(var r=0,a=n.length;r<a;){if(t(n[r]))return r;r+=1}return-1})),isEmpty$1=_curry1(function(t){return t!=null&&equals(t,empty(t))}),paths=_curry2(function(t,n){return t.map(function(r){for(var a=n,s=0,o;s<r.length;){if(a==null)return;o=r[s],a=_isInteger(o)?nth(o,a):a[o],s+=1}return a})}),path$1=_curry2(function(t,n){return paths([t],n)[0]}),pathOr=_curry3(function(t,n,r){return defaultTo(t,path$1(n,r))}),propEq=_curry3(function(t,n,r){return equals(n,prop(t,r))}),propOr=_curry3(function(t,n,r){return defaultTo(t,prop(n,r))}),tryCatch=_curry2(function(t,n){return _arity(t.length,function(){try{return t.apply(this,arguments)}catch(r){return n.apply(this,_concat([r],arguments))}})});const pennsieveApiUrl="https://api.pennsieve.io",pennsieveApiUrlDev="https://api.pennsieve.net",pennsieveApi2Url="https://api2.pennsieve.io",pennsieveApi2UrlDev="https://api2.pennsieve.net",timeSeriesPublicUrl="wss://api.pennsieve.io/streaming/discover/ts/query",timeSeriesPublicUrlDev="wss://api.pennsieve.net/streaming/discover/ts/query",timeSeriesApi="https://api.pennsieve.io/streaming",timeSeriesApiDev="https://api.pennsieve.net/streaming",site={pennsieveApiUrl,pennsieveApiUrlDev,pennsieveApi2Url,pennsieveApi2UrlDev,timeSeriesPublicUrl,timeSeriesPublicUrlDev,timeSeriesApi,timeSeriesApiDev},site$1=Object.freeze(Object.defineProperty({__proto__:null,default:site,pennsieveApi2Url,pennsieveApi2UrlDev,pennsieveApiUrl,pennsieveApiUrlDev,timeSeriesApi,timeSeriesApiDev,timeSeriesPublicUrl,timeSeriesPublicUrlDev},Symbol.toStringTag,{value:"Module"}));async function useToken(){try{return auth.fetchAuthSession().then(e=>{var t;return(t=e==null?void 0:e.tokens)==null?void 0:t.accessToken.toString()})}catch(e){console.error(e)}}const useChannelDataRequest=()=>({openConnection:async(t,n,r)=>await new Promise((o,i)=>{const u=t+"?session="+r+"&package="+n;console.log("Opening WebSocket connection to:",u);let l=null;const v=new WebSocket(u);v.onopen=()=>{console.log("🔗 WebSocket opened for package:",n);const d={montage:"NOT_MONTAGED",packageId:n};console.log("🎛️ Sending message payload"),v.send(JSON.stringify(d))},v.onclose=()=>{console.log("🔌 WebSocket closed for package:",n),l&&l.channelDetails?o({res:l.channelDetails,status:"websocket closed"}):(console.warn("No channel details received"),o({res:null,status:"websocket closed without data"}))},v.onmessage=d=>{console.log("WebSocket message received:",d.data),l=JSON.parse(d.data),v.close()},v.onerror=d=>{console.error("WebSocket error:",d),i(d)}})}),useViewerStore=pinia.defineStore("tsviewer",()=>{const e=site$1,t=vue.ref([]),n=vue.ref("NOT_MONTAGED"),r=vue.ref({}),a=vue.ref([]),s=vue.ref(null),o=vue.ref(null),i=vue.ref({}),u=vue.ref([]),l=vue.ref({}),v=vue.ref({}),d=vue.ref("POINTER"),{openConnection:f}=useChannelDataRequest(),c=vue.computed(()=>_e=>a.value.find(ze=>ze.name===_e)),p=vue.computed(()=>t.value.filter(_e=>_e.selected)),h=vue.computed(()=>()=>{const _e=u.value.find(ze=>ze.selected);return _e||(console.warn("No active layer found, available layers:",u.value),u.value.length>0?u.value[0]:null)}),y=()=>{let _e=!1;return u.value.forEach((ze,Et)=>{!ze.id&&ze.id!==0&&(console.error(`Layer at index ${Et} missing ID:`,ze),_e=!0),ze.annotations||(console.warn(`Layer at index ${Et} missing annotations array:`,ze),ze.annotations=[])}),_e&&console.error("Annotation layer validation failed. Layers:",u.value),!_e},m=vue.computed(()=>_e=>u.value.flatMap(Et=>Et.annotations||[]).find(Et=>Et.id===_e)),_=_e=>{i.value=_e},b=_e=>{t.value=_e},g=_e=>{n.value=_e},w=_e=>{r.value=_e},k=_e=>{a.value=_e},A=_e=>{s.value=_e},$=_e=>{o.value=_e},M=async _e=>{const ze=_e.packageId,Et=await useToken();let Cn=e.timeSeriesPublicUrl,kn=null;kn=await f(Cn,ze,Et),_({channels:kn.res,content:{id:ze}})},F=()=>_e=>{var Et;return((Et=_e==null?void 0:_e.content)==null?void 0:Et.state)==="READY"},O=_e=>{const ze=_e.map(Et=>(!Et.id&&Et.id!==0&&(console.warn("Annotation layer missing ID:",Et),Et.id=Math.random().toString(36).substr(2,9)),Et.annotations||(Et.annotations=[]),Et.name||(Et.name=`Layer ${Et.id}`),Et));u.value=ze,console.log("Set annotations with validated structure:",ze)},D=_e=>{if(!_e&&_e!==0){console.error("setActiveAnnotationLayer called with invalid layerId:",_e);return}l.value=_e,u.value.forEach(Et=>Et.selected=!1);const ze=findIndex(propEq("id",_e),u.value);ze>=0?(u.value[ze].selected=!0,console.log("Successfully set active layer:",u.value[ze])):console.error("Layer with ID not found:",_e,"Available layers:",u.value)},j=_e=>{if(u.value.forEach(ze=>{var Et;return(Et=ze.annotations)==null?void 0:Et.forEach(Cn=>Cn.selected=!1)}),_e.id){const ze=findIndex(propEq("id",_e.layer_id),u.value);if(ze>=0){const Et=findIndex(propEq("id",_e.id),u.value[ze].annotations);Et>=0&&(u.value[ze].annotations[Et].selected=!0)}}v.value=_e},z=_e=>{d.value=_e},T=_e=>{if(!_e.id&&_e.id!==0){console.error("Cannot create layer without ID:",_e);return}const ze={id:_e.id,name:_e.name||`Layer ${_e.id}`,description:_e.description||"",visible:_e.visible!==void 0?_e.visible:!0,selected:_e.selected||!1,annotations:_e.annotations||[],color:_e.color,hexColor:_e.hexColor,bkColor:_e.bkColor,selColor:_e.selColor,userId:_e.userId,..._e};u.value.push(ze),console.log("Created layer with validated structure:",ze)},L=_e=>{const ze=findIndex(propEq("id",_e.id),u.value);if(ze>=0){const Et=Object.assign(u.value[ze],_e);u.value[ze]=Et}},ie=_e=>{const ze=findIndex(propEq("id",_e.id),u.value);ze>=0&&u.value.splice(ze,1)},x=_e=>{const ze=findIndex(propEq("id",_e.layer_id),u.value);ze>=0&&(u.value[ze].annotations||(u.value[ze].annotations=[]),u.value[ze].annotations.push(_e),j(_e))},V=_e=>{const ze=findIndex(propEq("id",_e.layer_id),u.value);if(ze>=0){const Et=u.value[ze].annotations,Cn=findIndex(propEq("id",_e.id),Et);Cn>=0&&(Et[Cn]=_e)}},le=_e=>{const ze=findIndex(propEq("id",_e.layer_id),u.value);if(ze>=0){const Et=u.value[ze].annotations,Cn=findIndex(propEq("id",_e.id),Et);Cn>=0&&Et.splice(Cn,1)}},Y=(_e,ze,Et)=>{const Cn=t.value.find(kn=>kn.id===_e);Cn&&(Cn[ze]=Et)};return{viewerChannels:t,viewerMontageScheme:n,customMontageMap:r,workspaceMontages:a,viewerErrors:s,needsRerender:o,viewerAnnotations:u,activeAnnotationLayer:l,activeAnnotation:v,activeViewer:i,viewerActiveTool:d,config:e,getMontageMessageByName:c,viewerSelectedChannels:p,getViewerActiveLayer:h,getAnnotationById:m,setChannels:b,setViewerMontageScheme:g,setCustomMontageMap:w,setWorkspaceMontages:k,setViewerErrors:A,setAnnotations:O,setActiveAnnotationLayer:D,setActiveAnnotation:j,setActiveTool:z,createLayer:T,updateLayer:L,deleteLayer:ie,createAnnotation:x,updateAnnotation:V,deleteAnnotation:le,updateChannelProperty:Y,updateChannelVisibility:(_e,ze)=>{Y(_e,"visible",ze)},updateChannelSelection:(_e,ze)=>{Y(_e,"selected",ze)},updateChannelFilter:(_e,ze)=>{Y(_e,"filter",ze)},validateAnnotationLayers:y,resetViewer:()=>{t.value=[],n.value="NOT_MONTAGED",r.value={},a.value=[],s.value=null,u.value=[],l.value={},v.value={},d.value="POINTER",i.value={}},triggerRerender:_e=>{$({timestamp:Date.now(),cause:_e})},resetRerenderTrigger:()=>{o.value=null},isTSFileProcessed:F,fetchAndSetActiveViewer:M,setActiveViewer:_}});function useHandleLogout(e){if(useRoute().name==="docs-login")return;defaultTo(!1,prop("shouldShowToast",e));const n=defaultTo(!1,prop("shouldRedirect",e));this.clearState(),n&&this.$route.fullPath}const _isString=e=>Object.prototype.toString.call(e)==="[object String]",_trimValues=e=>{Object.keys(e).forEach(t=>{_isString(e[t])&&(e[t]=e[t].trim())})};function useSendXhr(e,t){if(!e)return Promise.reject({status:400,message:"Url is missing!"});const n=propOr("GET","method",t),r=propOr({},"header",t),a=Object.assign({},{"Content-type":"application/json"},r),s=prop("body",t);let o={headers:a,method:n};if(s){typeof s=="object"&&_trimValues(s);const i=JSON.stringify(s);o=Object.assign({},o,{body:i})}return fetch(e,o).then(i=>i.status>=400?Promise.reject(i):i.json().catch(()=>i))}function useHandleXhrError(e){const t=prop("status",e);let n;if(t===void 0){console.log(e);return}else n=e.status;if(n===400&&e.body)e.body.getReader().read().then(({done:r,value:a})=>{const s=a instanceof Uint8Array?String.fromCharCode.apply(null,a):a;compose(defaultTo(s),tryCatch(compose(prop("message"),JSON.parse),(o,i)=>i))(s)});else if(n===401)return useHandleLogout()}function useTsAnnotation(){const e=useViewerStore(),{viewerChannels:t,viewerAnnotations:n}=pinia.storeToRefs(e),r=u=>u.id||"",a=u=>{u.sort(function(v,d){return v.start<d.start?-1:v.start>d.start?1:0})};return{viewerChannels:t,viewerAnnotations:n,addAnnotation:async(u=null)=>{const l=u||activeAnnotation.value;if(console.log("🔧 useTsAnnotation: addAnnotation called with:",l),!l||!l.layer_id)throw new TypeError("Missing annotation data or layer_id",l);if(l.id)throw new TypeError("Trying to create an annotation that already exists",l.id);let v=l.start,d=l.duration||l.end-l.start;const f=l.label,c=l.description,p=l.layer_id;if(!f)throw new Error("Annotation label is required");if(v==null)throw new Error("Annotation start time is required");d<0&&(d=-d,v=v-d);let h=[];if(console.log("🔧 useTsAnnotation: Processing channelIds...",{hasChannelIds:l.channelIds&&Array.isArray(l.channelIds),allChannels:l.allChannels,providedChannelIds:l.channelIds,availableChannels:t.value.length}),l.allChannels){console.log("🔧 useTsAnnotation: allChannels=true, adding all visible channels");const b=e.activeViewer.value.channels;for(let g=0;g<b.length;g++){const k=b[g].content.id;h.push(k),console.log("🔧 useTsAnnotation: Added channel ID:",k)}}else if(l.channelIds&&Array.isArray(l.channelIds)&&l.channelIds.length>0)h=l.channelIds,console.log("🔧 useTsAnnotation: Using provided channelIds:",h);else{console.log("🔧 useTsAnnotation: Computing from selected channels");for(let b=0;b<t.value.length;b++){const g=t.value[b];if(g.selected&&g.visible){const w=r(g);h.push(w),console.log("🔧 useTsAnnotation: Added selected channel ID:",w)}}}console.log("🔧 useTsAnnotation: Final channelIds:",h);const y={label:f,name:f,description:c||"",start:Math.floor(v),end:Math.floor(v+d),channelIds:h};console.log("🔧 useTsAnnotation: API payload:",y);const m=e.activeViewer.value.content.id,_=`${e.config.apiUrl}/timeseries/${m}/layers/${p}/annotations`;console.log("🔧 useTsAnnotation: API URL:",_);try{const b=await useToken(),g=await fetch(`${_}?api_key=${b}`,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify(y)});if(!g.ok){const $=await g.text();throw new Error(`HTTP ${g.status}: ${$}`)}const w=await g.json();console.log("🔧 useTsAnnotation: API success:",w);const k={name:"",id:w.id,label:w.label,description:w.description,start:w.start,duration:w.end-w.start,end:w.end,cStart:null,cEnd:null,selected:!0,channelIds:w.channelIds||h,allChannels:h.length===0||h.length>=t.value.length,layer_id:p,userId:w.userId};w.linkedPackage&&(k.linkedPackage=w.linkedPackage);let A=0;for(let $=0;$<n.value.length;$++)if(n.value[$].id===p){A=$;break}return e.createAnnotation(k),n.value[A]&&n.value[A].annotations&&a(n.value[A].annotations),k}catch(b){throw console.error("🔧 useTsAnnotation: Error creating annotation:",b),useHandleXhrError(b),b}},updateAnnotation:async(u=null)=>{const l=u||activeAnnotation.value;if(console.log("🔧 useTsAnnotation: updateAnnotation called with:",l),!l.id)throw new TypeError("Trying to update an annotation that doesn't exist on server",l.id);if(!l.layer_id)throw new TypeError("Missing layer_id for annotation update",l);let v=l.start,d=l.duration||l.end-l.start;d<0&&(d=-d,v=v-d);const f={label:l.label,description:l.description||"",start:Math.floor(v),end:Math.floor(v+d),channelIds:l.channelIds||[]};console.log("🔧 useTsAnnotation: Update API payload:",f);const c=e.activeViewer.value.content.id,p=`${e.config.apiUrl}/timeseries/${c}/layers/${l.layer_id}/annotations/${l.id}`;console.log("🔧 useTsAnnotation: Update API URL:",p);try{const h=await useToken(),y=await fetch(`${p}?api_key=${h}`,{method:"PUT",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify(f)});if(!y.ok){const b=await y.text();throw new Error(`HTTP ${y.status}: ${b}`)}const m=await y.json();console.log("🔧 useTsAnnotation: Update API success:",m);const _={...l,...m,duration:m.end-m.start};return e.updateAnnotation(_),m}catch(h){throw console.error("🔧 useTsAnnotation: Error updating annotation:",h),useHandleXhrError(h),h}},removeAnnotation:async u=>{if(!u||!u.id)throw new TypeError("Invalid annotation for deletion",u);let l="";if(u.layer?l=u.layer.id:l=u.layer_id,!l)throw new TypeError("Missing layer_id for annotation deletion",u);const v=e.activeViewer.value.content.id,d=`${e.config.apiUrl}/timeseries/${v}/layers/${l}/annotations/${u.id}`;console.log("🔧 useTsAnnotation: Delete API URL:",d);try{const f=await useToken(),c=await fetch(`${d}?api_key=${f}`,{method:"DELETE",headers:{Accept:"application/json"}});if(!c.ok){const p=await c.text();throw new Error(`HTTP ${c.status}: ${p}`)}return console.log("🔧 useTsAnnotation: Delete API success"),e.deleteAnnotation(u),!0}catch(f){throw console.error("🔧 useTsAnnotation: Error deleting annotation:",f),useHandleXhrError(f),f}},sortAnns:a,getChannelId:r}}const _export_sfc$1=(e,t)=>{const n=e.__vccOpts||e;for(const[r,a]of t)n[r]=a;return n},_hoisted_1$m={id:"channelCanvas"},_hoisted_2$a=["data-id"],_hoisted_3$9=["hidden"],_hoisted_4$6=["hidden"],_sfc_main$W={__name:"TSViewer",props:{pkg:{type:Object,default:()=>{}},isPreview:{type:Boolean,default:!1},sidePanelOpen:{type:Boolean,default:!1}},setup(e,{expose:t}){const n=vue.defineAsyncComponent(()=>Promise.resolve().then(()=>TSScrubber$1)),r=vue.defineAsyncComponent(()=>Promise.resolve().then(()=>TSViewerCanvas$1)),a=vue.defineAsyncComponent(()=>Promise.resolve().then(()=>TSViewerToolbar$1)),s=vue.defineAsyncComponent(()=>Promise.resolve().then(()=>TSFilterModal$1)),o=vue.defineAsyncComponent(()=>Promise.resolve().then(()=>TSAnnotationModal$1)),i=vue.defineAsyncComponent(()=>Promise.resolve().then(()=>TsAnnotationDeleteDialog$1)),u=vue.defineAsyncComponent(()=>Promise.resolve().then(()=>TSViewerLayerWindow$1)),l={TIMEUNIT:"microSeconds",XOFFSET:0,XGRIDSPACING:1e6,NRPXPERLABEL:150,USEREALTIME:!0,DEFAULTDPI:96,ANNOTATIONLABELHEIGHT:20,ROUNDDATAPIXELS:!1,MINMAXPOLYGON:!0,PAGESIZEDIVIDER:.5,PREFETCHPAGES:5,LIMITANNFETCH:500,USEMEDIAN:!1,CURSOROFFSET:5,SEGMENTSPAN:12096e8,MAXRECURSION:20,MAXDURATION:6e8,INITDURATION:15e6},v=e,d=useViewerStore(),{viewerChannels:f,needsRerender:c}=pinia.storeToRefs(d),{addAnnotation:p,updateAnnotation:h,removeAnnotation:y}=useTsAnnotation(),m=vue.ref(null),_=vue.ref(null),b=vue.ref(null),g=vue.ref(null),w=vue.ref(null),k=vue.ref(null),A=vue.ref(null),$=vue.ref(null),M=vue.ref(0),F=vue.ref(0),O=vue.ref(0),D=vue.ref(0),j=vue.ref(0),z=vue.ref(0),T=vue.ref(0),L=vue.ref(1),ie=vue.ref(1/10),x=vue.ref(!1),V=vue.ref(!1),le=vue.ref(null),Y=vue.ref(!1),re=vue.ref(!1),he=vue.computed(()=>d.activeViewer),Ce=vue.computed(()=>f.value.map(ue=>({...ue,selected:!!ue.selected}))),$e=vue.computed(()=>Ce.value.filter(ue=>ue.visible)),Ne=vue.computed(()=>{let ue=!1;return z.value/Pt.value<30&&(ue=!0),ue}),Pt=vue.computed(()=>$e.value.length),_e=async()=>{if(console.log("onresize..."),!m.value)return;const ue=document.getElementById("ts_viewer");if(!ue)return;const Fe=window.getComputedStyle(ue,null),Ve=parseInt(Fe.getPropertyValue("height")),bn=v.isPreview?0:100;M.value=Ve-bn,await vue.nextTick(),F.value=m.value.offsetWidth;const Ln=b.value;Ln&&(T.value=Ln.clientWidth,j.value=F.value-Ln.clientWidth-16,z.value=M.value-40)};vue.watch(()=>he.value,async(ue,Fe)=>{var Ve,bn,Ln;(Ve=_.value)!=null&&Ve.resetComponentState&&_.value.resetComponentState(),ue&&ue.channels&&ue.channels.length>0&&At(),On(),await vue.nextTick(),(bn=_.value)!=null&&bn.initSegmentSpans&&_.value.initSegmentSpans(),(Ln=_.value)!=null&&Ln.getAnnotations&&_.value.getAnnotations()},{immediate:!1,deep:!0}),vue.watch(Pt,(ue,Fe)=>{Fe!==void 0&&ue!==Fe&&(console.log(`Number of visible channels changed from ${Fe} to ${ue}`),setTimeout(()=>{var Ve;_e(),(Ve=g.value)!=null&&Ve.renderAll&&g.value.renderAll()},20))});const ze=ue=>{store.dispatch("viewerModule/setActiveAnnotation",ue).then(()=>{g.value.renderAnnotationCanvas(),x.value=!0})};vue.watch(c,ue=>{ue&&(console.log(`TSViewer: Re-rendering due to: ${ue.cause} (${ue.timestamp})`),vue.nextTick(()=>{var Fe;ue.cause==="channel-visibility"?setTimeout(()=>{var Ve;_e(),(Ve=g.value)!=null&&Ve.renderAll&&g.value.renderAll()},10):(Fe=g.value)!=null&&Fe.renderAll&&g.value.renderAll()}),d.resetRerenderTrigger(null))},{deep:!0});const Et=ue=>{ze(ue)},Cn=async ue=>{if(console.log("📍 TSViewer: onCreateUpdateAnnotation received:",ue),!ue||Object.keys(ue).length===0){console.error("🚨 TSViewer: Received empty annotation!");return}if(!ue.layer_id){console.error("🚨 TSViewer: annotation.layer_id is missing!",ue);return}x.value=!1;try{ue.id?(console.log("📍 TSViewer: Updating annotation via composable"),await h(ue),kn()):(console.log("📍 TSViewer: Creating annotation via composable"),await p(ue),xe()),console.log("📍 TSViewer: Annotation operation completed successfully")}catch(Fe){console.error("📍 TSViewer: Error creating/updating annotation:",Fe),x.value=!0}},kn=()=>{g.value.renderAnnotationCanvas()},In=ue=>{le.value=ue,Y.value=!0},Dn=async ue=>{Y.value=!1;try{await y(ue),Mn(),console.log("📍 TSViewer: Annotation deleted successfully")}catch(Fe){console.error("📍 TSViewer: Error deleting annotation:",Fe)}},Mn=()=>{g.value.renderAnnotationCanvas()},Ue=(ue,Fe,Ve,bn,Ln,jn)=>{if(console.log("📍 TSViewer: onAddAnnotation called with:",{startTime:ue,duration:Fe,allChannels:Ve,label:bn,description:Ln,layer:jn}),!jn||!jn.id){console.error("Invalid layer provided to onAddAnnotation:",jn);return}const Hn=d.viewerSelectedChannels||[],Gn=Ve?[]:Hn.map(Zn=>Zn.id),Jn={id:null,label:bn||"Event",description:Ln||"",start:Math.floor(ue),end:Math.floor(ue+Fe),duration:Math.floor(Fe),channelIds:Gn,allChannels:Ve,layer_id:jn.id,selected:!0,userId:null};console.log("📍 TSViewer: Created annotation object:",Jn),d.setActiveAnnotation(Jn),console.log("📍 TSViewer: Store now contains:",d.activeAnnotation),x.value=!0,console.log("📍 TSViewer: Modal opened with annotation data")},xe=()=>{g.value.renderAnnotationCanvas()},Dt=ue=>{g.value.createAnnotationLayer(ue)},kt=()=>{V.value=!1},_n=()=>{g.value.resetFocusedAnnotation(),g.value.renderAnnotationCanvas(),x.value=!1},Sn=()=>{re.value=!1},Tn=ue=>{ue.stopPropagation(),ue.preventDefault();const Fe=ue.detail.sourceEvent.metaKey;$n({channelId:ue.currentTarget.dataset.id,append:Fe}),g.value.renderAll()},An=()=>{O.value=g.value.getNextAnnotation()},qe=()=>{O.value=g.value.getPreviousAnnotation()},vn=ue=>{de(ue*1e6)},Nn=()=>{L.value=L.value*1.25},Pn=()=>{L.value=L.value*.8},xn=()=>{_.value.getAnnotations()},Bn=()=>{},Rn=()=>{console.log("Page forward triggered from toolbar");const ue=Math.max(O.value-3/4*D.value,A.value);pe(ue),vue.nextTick(()=>{var Fe;(Fe=g.value)==null||Fe.renderAll()})},qn=()=>{console.log("Page forward triggered from toolbar");const ue=Math.min(O.value+3/4*D.value,$.value-D.value);console.log(`Moving from ${O.value} to ${ue}`),pe(ue),vue.nextTick(()=>{var Fe,Ve;(Fe=g.value)!=null&&Fe.invalidate&&g.value.invalidate(),(Ve=g.value)!=null&&Ve.renderAll&&g.value.renderAll()})},Fn=ue=>{let Fe=g.value.rsPeriod;pe(ue.annotation.start-(ie.value*j.value-l.CURSOROFFSET)*Fe),vue.nextTick(()=>{var Ve;(Ve=g.value)==null||Ve.renderAll()})},$n=ue=>{const Fe=f.value.map(Ve=>{const bn=Ve.selected;return ue.append===!1&&(Ve.selected=!1),ue.channelId===Ve.id&&(Ve.selected=!bn),Ve});d.setChannels(Fe)},oe=(ue,Fe)=>{const Ve=f.value.map(bn=>(Fe===!1&&(bn.selected=!1),bn.id in ue&&(bn.selected=!0),bn));d.setChannels(Ve)},pe=ue=>{O.value=ue},S=ue=>{ie.value=ue},ae=ue=>{L.value=ue},de=ue=>{ue>l.MAXDURATION?D.value=l.MAXDURATION:D.value=ue},Oe=(ue,Fe,Ve)=>(l.DEFAULTDPI*window.devicePixelRatio/(Fe*Ve)/25.4).toFixed(1)+" "+ue.unit+"/mm",At=()=>{var Fe;const ue=(Fe=he.value)==null?void 0:Fe.channels;if(console.log("🔄 initTimeRange called with channels:",(ue==null?void 0:ue.length)||0),ue&&ue.length>0){A.value=ue[0].start,$.value=ue[0].end;for(let bn=1;bn<ue.length;bn++)ue[bn].start<A.value&&(A.value=ue[bn].start),ue[bn].end>$.value&&($.value=ue[bn].end);const Ve=O.value;O.value=A.value,console.log("📅 Time range initialized:",{ts_start:A.value,ts_end:$.value,oldStart:Ve,newStart:O.value,duration:D.value,startDate:new Date(A.value/1e3).toISOString(),endDate:new Date($.value/1e3).toISOString()})}else console.warn("⚠️ initTimeRange: No channels found in activeViewer")},En=()=>{At()},wn=ue=>{V.value=!0},hn=ue=>{const Fe=propOr([],"channels",ue),Ve=propOr("","filter",ue),bn=w.value;bn.onChannels=Fe,isEmpty$1(Ve)?(bn.input0=NaN,bn.input1=NaN,bn.selectedFilter=null,bn.selectedNotch=null):(bn.input0=Ve.input0,bn.input1=Ve.input1),re.value=!0},Lt=ue=>{g.value.setFilters(ue)},On=()=>{var ue,Fe;(ue=g.value)==null||ue.initViewerCanvas(),(Fe=g.value)==null||Fe.renderAll()};return vue.onMounted(()=>{En();const ue=document.getElementById("ts_viewer");if(!ue){console.warn("ts_viewer element not found");return}var Fe=window.getComputedStyle(ue,null);const Ve=parseInt(Fe.getPropertyValue("height")),bn=v.isPreview?0:100;M.value=Ve-bn,m.value&&(F.value=m.value.offsetWidth),window.addEventListener("resize",_e);const Ln=b.value;Ln&&(T.value=Ln.clientWidth,j.value=F.value-Ln.clientWidth-5-10,z.value=M.value-88),D.value=l.INITDURATION,On()}),vue.onBeforeUnmount(()=>{window.removeEventListener("resize",_e)}),t({openEditAnnotationDialog:ze,confirmDeleteAnnotation:In,selectAnnotation:Fn,selectChannel:$n,selectChannels:oe,openLayerWindow:wn,openFilterWindow:hn,setTimeseriesFilters:Lt}),(ue,Fe)=>(vue.openBlock(),vue.createElementBlock("div",{id:"ts_viewer",ref_key:"ts_viewer",ref:m,class:vue.normalizeClass([e.isPreview?"timeseries-viewer preview":"timeseries-viewer"])},[vue.createVNode(vue.unref(n),{ref_key:"scrubber",ref:_,ts_start:A.value,ts_end:$.value,"c-width":j.value,"label-width":T.value,"cursor-loc":ie.value,start:O.value,duration:D.value,constants:l,"active-viewer":he.value,onSetStart:pe},null,8,["ts_start","ts_end","c-width","label-width","cursor-loc","start","duration","active-viewer"]),vue.createElementVNode("div",_hoisted_1$m,[vue.createElementVNode("div",{id:"channelLabels",ref_key:"channelLabels",ref:b},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList($e.value,Ve=>(vue.openBlock(),vue.createElementBlock("div",{key:Ve.displayName,class:"chLabelWrap","data-id":Ve.id,onTap:Tn},[vue.createElementVNode("div",{class:vue.normalizeClass([Ve.selected?"labelDiv selected":"labelDiv"])},vue.toDisplayString(Ve.displayName),3),vue.createElementVNode("div",{class:vue.normalizeClass(["chLabelIndWrap",[Ve.selected?"selected":""]]),hidden:Ne.value},[vue.createElementVNode("div",{class:"chLabelInd",hidden:Ne.value},vue.toDisplayString(Oe(Ve,L.value,Ve.rowScale)),9,_hoisted_4$6)],10,_hoisted_3$9)],40,_hoisted_2$a))),128))],512),vue.createVNode(vue.unref(r),{ref_key:"viewerCanvas",ref:g,window_height:M.value,window_width:F.value,duration:D.value,start:O.value,"c-width":j.value,"c-height":z.value,constants:l,"ts-start":A.value,"ts-end":$.value,"cursor-loc":ie.value,"global-zoom-mult":L.value,"active-viewer":he.value,onSetStart:pe,onSetCursor:S,onSetGlobalZoom:ae,onSetDuration:de,onChannelsInitialized:Bn,onAnnLayersInitialized:xn,onCloseAnnotationLayerWindow:kt,onAddAnnotation:Ue,onUpdateAnnotation:Et},null,8,["window_height","window_width","duration","start","c-width","c-height","ts-start","ts-end","cursor-loc","global-zoom-mult","active-viewer"])]),e.isPreview?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createBlock(vue.unref(a),{key:0,constants:l,duration:D.value,start:O.value,onPageBack:Rn,onPageForward:qn,onIncrementZoom:Nn,onDecrementZoom:Pn,onUpdateDuration:vn,onNextAnnotation:An,onPreviousAnnotation:qe,onSetStart:pe},null,8,["duration","start"])),vue.createVNode(vue.unref(s),{ref_key:"filterWindow",ref:w,visible:re.value,"onUpdate:visible":Fe[0]||(Fe[0]=Ve=>re.value=Ve),onCloseWindow:Sn},null,8,["visible"]),vue.createVNode(vue.unref(o),{ref_key:"annotationModal",ref:k,visible:x.value,"onUpdate:visible":Fe[1]||(Fe[1]=Ve=>x.value=Ve),onCloseWindow:_n,onCreateUpdateAnnotation:Cn},null,8,["visible"]),vue.createVNode(vue.unref(i),{visible:Y.value,"delete-annotation":le.value,"onUpdate:visible":Fe[2]||(Fe[2]=Ve=>Y.value=Ve),onDelete:Dn},null,8,["visible","delete-annotation"]),vue.createVNode(vue.unref(u),{visible:V.value,onCloseWindow:kt,onCreateLayer:Dt},null,8,["visible"])],2))}},TSViewer=_export_sfc$1(_sfc_main$W,[["__scopeId","data-v-d5eda6cd"]]),index={install(e){e.component("TSViewer",TSViewer)}},_hoisted_1$l={class:"timeseries-scrubber"},_hoisted_2$9={class:"dateWrap"},_hoisted_3$8={class:"noselect"},_hoisted_4$5={id:"scrubber",noselect:""},_hoisted_5$4=["width","height"],_hoisted_6$4=["width","height"],_hoisted_7$3=["width","height"],_sfc_main$V={__name:"TSScrubber",props:{ts_start:Number,ts_end:Number,cWidth:Number,constants:Object,start:Number,duration:Number,cursorLoc:Number,labelWidth:Number,activeViewer:Object},emits:["setStart"],setup(e,{expose:t,emit:n}){const r=e,a=n,s=useViewerStore(),o=vue.ref(null),i=vue.ref(null),u=vue.ref(null),l=vue.ref(null),v=vue.ref(1),d=vue.ref(28),f=vue.ref(30),c=vue.ref(!1),p=vue.ref(""),h=vue.ref("point"),y=vue.ref(null),m=vue.ref([]),_=vue.ref([]),b=vue.ref([]),g=vue.ref(!1),w=vue.ref(0),k=vue.ref(0),A=vue.ref(0),$=vue.ref(0),M=vue.computed(()=>Y(r.ts_start)),F=vue.computed(()=>Y(r.ts_end)),O=vue.computed(()=>{if(p.value!=="")return p.value;if(r.start>0){const Ue=new Date(r.start/1e3).toUTCString();return Ue.substring(0,Ue.length-3)}return""}),D=vue.computed(()=>({width:r.labelWidth+r.cWidth-8+5+"px",height:"28px"})),j=vue.computed(()=>({width:r.labelWidth+r.cWidth-8+5+"px",height:"30px"})),z=vue.computed(()=>r.cWidth+r.labelWidth-8+5),T=vue.computed(()=>Math.floor((r.ts_end-r.ts_start)/r.cWidth));vue.watch(()=>r.start,()=>{Et()}),vue.watch(()=>r.duration,()=>{Et()}),vue.watch(()=>r.cWidth,()=>{Et()}),vue.watch(()=>r.activeViewer,(Ue,xe)=>{var Dt;Ue&&Ue!==xe&&(console.log("TSScrubber: ActiveViewer changed, resetting component state"),g.value=!0,L(),(Dt=Ue.content)!=null&&Dt.id?vue.nextTick(()=>{ze(),g.value=!1}):g.value=!1)},{deep:!0}),vue.watch(()=>s.viewerChannels,(Ue,xe)=>{var Dt,kt;Ue&&Ue.length>0&&!g.value&&(!xe||Ue.length!==xe.length||((Dt=Ue[0])==null?void 0:Dt.id)!==((kt=xe[0])==null?void 0:kt.id))&&(console.log("TSScrubber: Viewer channels changed, re-initializing segments"),ie(),vue.nextTick(()=>{Pt()}))},{deep:!0}),vue.watch(()=>s.viewerAnnotations,(Ue,xe)=>{var Dt;Ue&&Ue!==xe&&!g.value?(console.log("TSScrubber: Viewer annotations changed independently, re-fetching annotations"),vue.nextTick(()=>{ze()})):Ue&&Ue.length>0&&!xe&&((Dt=r.activeViewer)!=null&&Dt.content.id)&&(console.log("TSScrubber: Annotation layers now available, fetching annotations"),vue.nextTick(()=>{ze()}))},{deep:!0});const L=()=>{console.log("TSScrubber: Resetting component state"),m.value=[],ie(),c.value=!1,p.value="",h.value="point",x()},ie=()=>{console.log("TSScrubber: Resetting segment state"),b.value=new Array(5e3),b.value=b.value.fill(0,0,4999),_.value=[]},x=()=>{vue.nextTick(()=>{[i.value,u.value,l.value].forEach(xe=>{if(xe){const Dt=xe.getContext("2d");Dt&&Dt.clearRect(0,0,xe.width,xe.height)}})})},V=(Ue,xe,Dt)=>xe*(Ue+Dt),le=()=>{const Ue=l.value.getContext("2d"),xe=window.devicePixelRatio||1,Dt=Ue.webkitBackingStorePixelRatio||Ue.mozBackingStorePixelRatio||Ue.msBackingStorePixelRatio||Ue.oBackingStorePixelRatio||Ue.backingStorePixelRatio||1;return xe/Dt},Y=Ue=>{if(Ue>0)return Ue=Ue/1e3,Ue=new Date(Ue),("0"+Ue.getUTCHours()).slice(-2)+":"+("0"+Ue.getUTCMinutes()).slice(-2)+":"+("0"+Ue.getUTCSeconds()).slice(-2)},re=Ue=>{if(c.value){const Dt=(Ue.clientX-w.value)/r.cWidth*(r.ts_end-r.ts_start),kt=k.value+Dt;a("setStart",kt);const _n=new Date((Dt+r.ts_start)/1e3);p.value=_n.toUTCString()}else{const xe=l.value.getBoundingClientRect(),Dt=Ue.clientX-xe.left,kt=A.value+$.value,_n=h.value;Dt>A.value-10&&Dt<kt+10?(h.value="drag",l.value.setAttribute("dragme",!0),l.value.removeAttribute("resizeme")):(h.value="point",l.value.removeAttribute("dragme"),l.value.removeAttribute("resizeme"));const Tn=Dt/r.cWidth*(r.ts_end-r.ts_start)+r.ts_start,An=new Date(Tn/1e3).toUTCString();p.value=An.substring(0,An.length-3),_n!==h.value&&Et()}},he=()=>{c.value=!1},Ce=Ue=>{c.value=!0;const xe=l.value.getBoundingClientRect(),Dt=Ue.clientX-xe.left;w.value=Ue.clientX;const kt=Dt/z.value*(r.ts_end-r.ts_start);a("setStart",kt+r.ts_start),k.value=kt+r.ts_start},$e=()=>{c.value=!1},Ne=()=>{p.value=""},Pt=()=>{var Dt;if(!s.viewerChannels||s.viewerChannels.length===0){console.warn("TSScrubber: Cannot init segment spans - no viewer channels available");return}if(!r.ts_start||!r.ts_end){console.warn("TSScrubber: Cannot init segment spans - invalid time range");return}if(!((Dt=s.config)!=null&&Dt.timeSeriesApi)){console.warn("TSScrubber: Cannot init segment spans - no timeSeriesApi configured");return}console.log(`TSScrubber: Initializing segment spans for ${s.viewerChannels.length} channels`),ie();const Ue=Math.min(r.constants.SEGMENTSPAN,r.ts_end-r.ts_start),xe=s.viewerChannels;for(let kt=0;kt<xe.length;kt++)_e(xe[kt].id,kt,r.ts_start,r.ts_start+Ue,0)},_e=async(Ue,xe,Dt,kt,_n)=>{var Tn;const Sn=r.constants.MAXRECURSION;if(!((Tn=s.config)!=null&&Tn.timeSeriesApi)){console.warn("TSScrubber: Cannot request segment span - no timeSeriesApi configured");return}if(!Ue){console.warn("TSScrubber: Cannot request segment span - no channel ID provided");return}try{const An=await useToken(),qe=`${s.config.timeSeriesApi}/ts/retrieve/segments?session=${An}&channel=${Ue}&start=${Dt}&end=${kt}`;console.log(`TSScrubber: Fetching segments for channel ${Ue} (${xe})`);const vn=await useSendXhr(qe);if(!s.viewerChannels[xe]||s.viewerChannels[xe].id!==Ue){console.warn("TSScrubber: Channel mismatch detected, ignoring segment response (likely package switched)");return}let Nn=new Array(vn.length*2),Pn=0;for(let oe=0;oe<vn.length;oe++){Nn[Pn]=vn[oe][0],Nn[Pn+1]=vn[oe][1],Pn=Pn+2;const pe=Math.floor((vn[oe][0]-r.ts_start)/(r.ts_end-r.ts_start)*5e3),S=Math.ceil((vn[oe][1]-r.ts_start)/(r.ts_end-r.ts_start)*5e3);b.value.fill(1,pe,S)}let xn=0,Bn=!1,Rn=0;for(_.value=[];xn<b.value.length-1;){if(!b.value[xn]&&!Bn){xn++;continue}else b.value[xn]?Bn||(Rn=xn,Bn=!0):(_.value=_.value.concat([Rn,xn]),Bn=!1);xn++}Bn&&(_.value=_.value.concat([Rn,xn])),_.value=_.value.concat([5e3]);let qn=Nn[0],Fn=s.viewerChannels[xe];if(!Fn||Fn.id!==Ue){console.warn("TSScrubber: Channel configuration mismatch, skipping update");return}qn<Fn.dataSegments[Fn.dataSegments.length-1]&&(Nn.shift(),Nn.shift()),Fn.dataSegments=Fn.dataSegments.concat(Nn.sort((oe,pe)=>oe-pe)),s.updateChannelProperty(Fn.id,"dataSegments",Fn.dataSegments);let $n=kt-Dt;Dt+$n<r.ts_end&&_n<Sn?_e(Ue,xe,kt,kt+$n,_n+1):kn()}catch(An){console.error(`TSScrubber: Error fetching segments for channel ${Ue}:`,An),useHandleXhrError(An)}},ze=async()=>{var xe,Dt,kt;const Ue=(xe=r.activeViewer)==null?void 0:xe.content.id;if(!Ue){console.warn("TSScrubber: Cannot get annotations - no active viewer ID"),m.value=[];return}if(!((Dt=s.config)!=null&&Dt.apiUrl)){console.warn("TSScrubber: Cannot get annotations - no API URL configured"),m.value=[];return}if(!s.viewerAnnotations||s.viewerAnnotations.length===0){console.log("TSScrubber: No annotation layers available, skipping annotation fetch"),m.value=[],Et();return}try{const _n=await useToken(),Sn=map(Nn=>Nn.id,s.viewerAnnotations),Tn=r.ts_end;let qe=`${s.config.apiUrl}/timeseries/${Ue}/annotations/window`+`?api_key=${_n}&aggregation=count&start=${r.ts_start}&end=${r.ts_end}&period=${T.value}&mergePeriods=true`;for(let Nn in Sn)qe=qe+`&layerIds=${Sn[Nn]}`;console.log(`TSScrubber: Fetching annotations for viewer ${Ue}`);const vn=await useSendXhr(qe);((kt=r.activeViewer)==null?void 0:kt.content.id)===Ue?(m.value=vn,Et()):console.log("TSScrubber: Ignoring annotation response - viewer changed during fetch")}catch(_n){console.error("TSScrubber: Error fetching annotations:",_n),m.value=[],useHandleXhrError(_n),Et()}},Et=()=>{Cn(),In(),kn()},Cn=()=>{vue.nextTick(()=>{const Ue=l.value;if(!Ue){console.warn("iCanvas ref is missing, skipping render");return}const xe=Ue.getContext("2d");if(!xe){console.warn("2D context is not available");return}xe.setTransform(v.value,0,0,v.value,0,0),xe.clearRect(0,0,r.cWidth,f.value),A.value=(r.start-r.ts_start)/(r.ts_end-r.ts_start)*r.cWidth+.5|0,$.value=r.duration/(r.ts_end-r.ts_start)*r.cWidth+.5|0,xe.fillStyle="rgb(80,80,80)",xe.strokeStyle="rgb(80,80,80)",xe.strokeRect(A.value+.5,.5,$.value,f.value-1),xe.fillRect(A.value-2,f.value/2-5|0,2,10),xe.fillRect(A.value+$.value+1,f.value/2-5|0,2,10);const Dt=A.value+r.cursorLoc*$.value;Dt>A.value+.5&&(xe.strokeStyle="red",xe.beginPath(),xe.moveTo(Dt,0),xe.lineTo(Dt,f.value-1),xe.stroke())})},kn=()=>{vue.nextTick(()=>{const Ue=i.value;if(!Ue){console.warn("segmentsCanvas ref is missing, skipping renderSegments");return}const xe=Ue.getContext("2d");if(!xe){console.warn("Unable to get 2D context for segmentsCanvas, skipping renderSegments");return}xe.setTransform(v.value,0,0,v.value,0,0),xe.fillStyle=xe.createPattern(y.value,"repeat"),xe.clearRect(0,0,r.cWidth,f.value);for(let Dt=1;Dt<_.value.length;Dt+=2){const kt=r.cWidth*_.value[Dt]/5e3,_n=r.cWidth*_.value[Dt+1]/5e3;xe.fillRect(kt,2,_n-kt,f.value-6)}})},In=()=>{const Ue=u.value;if(!Ue){console.warn("annotationCanvas ref is missing, skipping renderTimelimeLine");return}const xe=Ue.getContext("2d");if(!xe){console.warn("Unable to get 2D context for annotationCanvas, skipping renderTimelimeLine");return}xe.setTransform(v.value,0,0,v.value,0,0),xe.clearRect(0,0,r.cWidth,d.value);const Dt=r.ts_start,kt=r.ts_end,_n=m.value;let Sn=0;const Tn=0,An=Math.floor((d.value-2)/Object.keys(_n).length-Tn),qe=s.viewerAnnotations;let vn="rgb(0,0,0)";for(const Nn in _n)if(_n.hasOwnProperty(Nn)){for(let Pn=0;Pn<qe.length;Pn++)if(qe[Pn].id===parseInt(Nn)){Sn=Pn,vn=qe[Pn].color;break}Dn(xe,Dt,kt,Tn,An,_n[Nn],Sn,vn)}},Dn=(Ue,xe,Dt,kt,_n,Sn,Tn,An)=>{vue.nextTick(()=>{Ue.setTransform(v.value,0,0,v.value,0,0),Ue.fillStyle=An;for(let qe=0;qe<Sn.length;qe++)if(Sn[qe].value>0){const vn=(Sn[qe].start-xe)/(Dt-xe)*r.cWidth;let Pn=(Sn[qe].end-xe)/(Dt-xe)*r.cWidth-vn;Pn<1&&(Pn=1);const xn=1+Tn*(_n-1+kt)+Tn;Ue.fillRect(vn,xn,Pn,_n)}})},Mn=()=>{const Ue=document.createElement("canvas"),xe=Ue.getContext("2d",{antialias:!0}),Dt="rgb(220,220,220)",kt=5,_n=kt,Sn=kt,Tn=10;return Ue.width=_n,Ue.height=Sn,xe.fillStyle=Dt,xe.beginPath(),xe.moveTo(0,Sn*(1/Tn)),xe.lineTo(_n*(1/Tn),0),xe.lineTo(0,0),xe.lineTo(0,Sn*(1/Tn)),xe.fill(),xe.beginPath(),xe.moveTo(_n,Sn*(1/Tn)),xe.lineTo(_n*(1/Tn),Sn),xe.lineTo(0,Sn),xe.lineTo(0,Sn*((Tn-1)/Tn)),xe.lineTo(_n*((Tn-1)/Tn),0),xe.lineTo(_n,0),xe.lineTo(_n,Sn*(1/Tn)),xe.fill(),xe.beginPath(),xe.moveTo(_n,Sn*((Tn-1)/Tn)),xe.lineTo(_n*((Tn-1)/Tn),Sn),xe.lineTo(_n,Sn),xe.lineTo(_n,Sn*((Tn-1)/Tn)),xe.fill(),Ue};return vue.onMounted(()=>{b.value=new Array(5e3),b.value=b.value.fill(0,0,4999),v.value=le(),y.value=Mn(),Cn()}),t({getAnnotations:ze,initSegmentSpans:Pt,render:Et,renderViewPort:Cn,renderSegments:kn,renderTimelimeLine:In,resetComponentState:L,resetSegmentState:ie,clearCanvases:x}),(Ue,xe)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$l,[vue.createElementVNode("div",_hoisted_2$9,[vue.createElementVNode("div",null,vue.toDisplayString(M.value),1),vue.createElementVNode("div",null,vue.toDisplayString(O.value),1),vue.createElementVNode("div",null,vue.toDisplayString(F.value),1)]),vue.createElementVNode("div",_hoisted_3$8,[vue.createElementVNode("div",_hoisted_4$5,[vue.createElementVNode("div",{id:"canvasWrap",ref_key:"canvasWrap",ref:o},[vue.createElementVNode("canvas",{id:"segmentsCanvas",class:"canvas",ref_key:"segmentsCanvas",ref:i,width:V(e.cWidth,v.value,0),height:V(f.value-2,v.value,0),style:vue.normalizeStyle(D.value)},null,12,_hoisted_5$4),vue.createElementVNode("canvas",{id:"annotationCanvas",class:"canvas",ref_key:"annotationCanvas",ref:u,width:V(e.cWidth,v.value,0),height:V(f.value-2,v.value,0),style:vue.normalizeStyle(D.value)},null,12,_hoisted_6$4),vue.createElementVNode("canvas",{id:"iCanvas",class:"canvas",ref_key:"iCanvas",ref:l,width:V(e.cWidth,v.value,0),height:V(f.value,v.value,0),onClick:xe[0]||(xe[0]=(...Dt)=>Ue._onTap&&Ue._onTap(...Dt)),onMousemove:re,onMousedown:Ce,onMouseup:he,onMouseenter:$e,onMouseout:Ne,style:vue.normalizeStyle(j.value)},null,44,_hoisted_7$3)],512)])])]))}},TSScrubber=_export_sfc$1(_sfc_main$V,[["__scopeId","data-v-8618a902"]]),TSScrubber$1=Object.freeze(Object.defineProperty({__proto__:null,default:TSScrubber},Symbol.toStringTag,{value:"Module"}));var commonjsGlobal=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function getDefaultExportFromCjs(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var src={exports:{}},indexLight={exports:{}},indexMinimal={},minimal={},aspromise,hasRequiredAspromise;function requireAspromise(){if(hasRequiredAspromise)return aspromise;hasRequiredAspromise=1,aspromise=e;function e(t,n){for(var r=new Array(arguments.length-1),a=0,s=2,o=!0;s<arguments.length;)r[a++]=arguments[s++];return new Promise(function(u,l){r[a]=function(d){if(o)if(o=!1,d)l(d);else{for(var f=new Array(arguments.length-1),c=0;c<f.length;)f[c++]=arguments[c];u.apply(null,f)}};try{t.apply(n||null,r)}catch(v){o&&(o=!1,l(v))}})}return aspromise}var base64={},hasRequiredBase64;function requireBase64(){return hasRequiredBase64||(hasRequiredBase64=1,function(e){var t=e;t.length=function(i){var u=i.length;if(!u)return 0;for(var l=0;--u%4>1&&i.charAt(u)==="=";)++l;return Math.ceil(i.length*3)/4-l};for(var n=new Array(64),r=new Array(123),a=0;a<64;)r[n[a]=a<26?a+65:a<52?a+71:a<62?a-4:a-59|43]=a++;t.encode=function(i,u,l){for(var v=null,d=[],f=0,c=0,p;u<l;){var h=i[u++];switch(c){case 0:d[f++]=n[h>>2],p=(h&3)<<4,c=1;break;case 1:d[f++]=n[p|h>>4],p=(h&15)<<2,c=2;break;case 2:d[f++]=n[p|h>>6],d[f++]=n[h&63],c=0;break}f>8191&&((v||(v=[])).push(String.fromCharCode.apply(String,d)),f=0)}return c&&(d[f++]=n[p],d[f++]=61,c===1&&(d[f++]=61)),v?(f&&v.push(String.fromCharCode.apply(String,d.slice(0,f))),v.join("")):String.fromCharCode.apply(String,d.slice(0,f))};var s="invalid encoding";t.decode=function(i,u,l){for(var v=l,d=0,f,c=0;c<i.length;){var p=i.charCodeAt(c++);if(p===61&&d>1)break;if((p=r[p])===void 0)throw Error(s);switch(d){case 0:f=p,d=1;break;case 1:u[l++]=f<<2|(p&48)>>4,f=p,d=2;break;case 2:u[l++]=(f&15)<<4|(p&60)>>2,f=p,d=3;break;case 3:u[l++]=(f&3)<<6|p,d=0;break}}if(d===1)throw Error(s);return l-v},t.test=function(i){return/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(i)}}(base64)),base64}var eventemitter,hasRequiredEventemitter;function requireEventemitter(){if(hasRequiredEventemitter)return eventemitter;hasRequiredEventemitter=1,eventemitter=e;function e(){this._listeners={}}return e.prototype.on=function(n,r,a){return(this._listeners[n]||(this._listeners[n]=[])).push({fn:r,ctx:a||this}),this},e.prototype.off=function(n,r){if(n===void 0)this._listeners={};else if(r===void 0)this._listeners[n]=[];else for(var a=this._listeners[n],s=0;s<a.length;)a[s].fn===r?a.splice(s,1):++s;return this},e.prototype.emit=function(n){var r=this._listeners[n];if(r){for(var a=[],s=1;s<arguments.length;)a.push(arguments[s++]);for(s=0;s<r.length;)r[s].fn.apply(r[s++].ctx,a)}return this},eventemitter}var float,hasRequiredFloat;function requireFloat(){if(hasRequiredFloat)return float;hasRequiredFloat=1,float=e(e);function e(s){return typeof Float32Array<"u"?function(){var o=new Float32Array([-0]),i=new Uint8Array(o.buffer),u=i[3]===128;function l(c,p,h){o[0]=c,p[h]=i[0],p[h+1]=i[1],p[h+2]=i[2],p[h+3]=i[3]}function v(c,p,h){o[0]=c,p[h]=i[3],p[h+1]=i[2],p[h+2]=i[1],p[h+3]=i[0]}s.writeFloatLE=u?l:v,s.writeFloatBE=u?v:l;function d(c,p){return i[0]=c[p],i[1]=c[p+1],i[2]=c[p+2],i[3]=c[p+3],o[0]}function f(c,p){return i[3]=c[p],i[2]=c[p+1],i[1]=c[p+2],i[0]=c[p+3],o[0]}s.readFloatLE=u?d:f,s.readFloatBE=u?f:d}():function(){function o(u,l,v,d){var f=l<0?1:0;if(f&&(l=-l),l===0)u(1/l>0?0:2147483648,v,d);else if(isNaN(l))u(2143289344,v,d);else if(l>34028234663852886e22)u((f<<31|2139095040)>>>0,v,d);else if(l<11754943508222875e-54)u((f<<31|Math.round(l/1401298464324817e-60))>>>0,v,d);else{var c=Math.floor(Math.log(l)/Math.LN2),p=Math.round(l*Math.pow(2,-c)*8388608)&8388607;u((f<<31|c+127<<23|p)>>>0,v,d)}}s.writeFloatLE=o.bind(null,t),s.writeFloatBE=o.bind(null,n);function i(u,l,v){var d=u(l,v),f=(d>>31)*2+1,c=d>>>23&255,p=d&8388607;return c===255?p?NaN:f*(1/0):c===0?f*1401298464324817e-60*p:f*Math.pow(2,c-150)*(p+8388608)}s.readFloatLE=i.bind(null,r),s.readFloatBE=i.bind(null,a)}(),typeof Float64Array<"u"?function(){var o=new Float64Array([-0]),i=new Uint8Array(o.buffer),u=i[7]===128;function l(c,p,h){o[0]=c,p[h]=i[0],p[h+1]=i[1],p[h+2]=i[2],p[h+3]=i[3],p[h+4]=i[4],p[h+5]=i[5],p[h+6]=i[6],p[h+7]=i[7]}function v(c,p,h){o[0]=c,p[h]=i[7],p[h+1]=i[6],p[h+2]=i[5],p[h+3]=i[4],p[h+4]=i[3],p[h+5]=i[2],p[h+6]=i[1],p[h+7]=i[0]}s.writeDoubleLE=u?l:v,s.writeDoubleBE=u?v:l;function d(c,p){return i[0]=c[p],i[1]=c[p+1],i[2]=c[p+2],i[3]=c[p+3],i[4]=c[p+4],i[5]=c[p+5],i[6]=c[p+6],i[7]=c[p+7],o[0]}function f(c,p){return i[7]=c[p],i[6]=c[p+1],i[5]=c[p+2],i[4]=c[p+3],i[3]=c[p+4],i[2]=c[p+5],i[1]=c[p+6],i[0]=c[p+7],o[0]}s.readDoubleLE=u?d:f,s.readDoubleBE=u?f:d}():function(){function o(u,l,v,d,f,c){var p=d<0?1:0;if(p&&(d=-d),d===0)u(0,f,c+l),u(1/d>0?0:2147483648,f,c+v);else if(isNaN(d))u(0,f,c+l),u(2146959360,f,c+v);else if(d>17976931348623157e292)u(0,f,c+l),u((p<<31|2146435072)>>>0,f,c+v);else{var h;if(d<22250738585072014e-324)h=d/5e-324,u(h>>>0,f,c+l),u((p<<31|h/4294967296)>>>0,f,c+v);else{var y=Math.floor(Math.log(d)/Math.LN2);y===1024&&(y=1023),h=d*Math.pow(2,-y),u(h*4503599627370496>>>0,f,c+l),u((p<<31|y+1023<<20|h*1048576&1048575)>>>0,f,c+v)}}}s.writeDoubleLE=o.bind(null,t,0,4),s.writeDoubleBE=o.bind(null,n,4,0);function i(u,l,v,d,f){var c=u(d,f+l),p=u(d,f+v),h=(p>>31)*2+1,y=p>>>20&2047,m=4294967296*(p&1048575)+c;return y===2047?m?NaN:h*(1/0):y===0?h*5e-324*m:h*Math.pow(2,y-1075)*(m+4503599627370496)}s.readDoubleLE=i.bind(null,r,0,4),s.readDoubleBE=i.bind(null,a,4,0)}(),s}function t(s,o,i){o[i]=s&255,o[i+1]=s>>>8&255,o[i+2]=s>>>16&255,o[i+3]=s>>>24}function n(s,o,i){o[i]=s>>>24,o[i+1]=s>>>16&255,o[i+2]=s>>>8&255,o[i+3]=s&255}function r(s,o){return(s[o]|s[o+1]<<8|s[o+2]<<16|s[o+3]<<24)>>>0}function a(s,o){return(s[o]<<24|s[o+1]<<16|s[o+2]<<8|s[o+3])>>>0}return float}var inquire_1,hasRequiredInquire;function requireInquire(){if(hasRequiredInquire)return inquire_1;hasRequiredInquire=1,inquire_1=inquire;function inquire(moduleName){try{var mod=eval("quire".replace(/^/,"re"))(moduleName);if(mod&&(mod.length||Object.keys(mod).length))return mod}catch(e){}return null}return inquire_1}var utf8={},hasRequiredUtf8;function requireUtf8(){return hasRequiredUtf8||(hasRequiredUtf8=1,function(e){var t=e;t.length=function(r){for(var a=0,s=0,o=0;o<r.length;++o)s=r.charCodeAt(o),s<128?a+=1:s<2048?a+=2:(s&64512)===55296&&(r.charCodeAt(o+1)&64512)===56320?(++o,a+=4):a+=3;return a},t.read=function(r,a,s){var o=s-a;if(o<1)return"";for(var i=null,u=[],l=0,v;a<s;)v=r[a++],v<128?u[l++]=v:v>191&&v<224?u[l++]=(v&31)<<6|r[a++]&63:v>239&&v<365?(v=((v&7)<<18|(r[a++]&63)<<12|(r[a++]&63)<<6|r[a++]&63)-65536,u[l++]=55296+(v>>10),u[l++]=56320+(v&1023)):u[l++]=(v&15)<<12|(r[a++]&63)<<6|r[a++]&63,l>8191&&((i||(i=[])).push(String.fromCharCode.apply(String,u)),l=0);return i?(l&&i.push(String.fromCharCode.apply(String,u.slice(0,l))),i.join("")):String.fromCharCode.apply(String,u.slice(0,l))},t.write=function(r,a,s){for(var o=s,i,u,l=0;l<r.length;++l)i=r.charCodeAt(l),i<128?a[s++]=i:i<2048?(a[s++]=i>>6|192,a[s++]=i&63|128):(i&64512)===55296&&((u=r.charCodeAt(l+1))&64512)===56320?(i=65536+((i&1023)<<10)+(u&1023),++l,a[s++]=i>>18|240,a[s++]=i>>12&63|128,a[s++]=i>>6&63|128,a[s++]=i&63|128):(a[s++]=i>>12|224,a[s++]=i>>6&63|128,a[s++]=i&63|128);return s-o}}(utf8)),utf8}var pool_1,hasRequiredPool;function requirePool(){if(hasRequiredPool)return pool_1;hasRequiredPool=1,pool_1=e;function e(t,n,r){var a=r||8192,s=a>>>1,o=null,i=a;return function(l){if(l<1||l>s)return t(l);i+l>a&&(o=t(a),i=0);var v=n.call(o,i,i+=l);return i&7&&(i=(i|7)+1),v}}return pool_1}var longbits,hasRequiredLongbits;function requireLongbits(){if(hasRequiredLongbits)return longbits;hasRequiredLongbits=1,longbits=t;var e=requireMinimal();function t(s,o){this.lo=s>>>0,this.hi=o>>>0}var n=t.zero=new t(0,0);n.toNumber=function(){return 0},n.zzEncode=n.zzDecode=function(){return this},n.length=function(){return 1};var r=t.zeroHash="\0\0\0\0\0\0\0\0";t.fromNumber=function(o){if(o===0)return n;var i=o<0;i&&(o=-o);var u=o>>>0,l=(o-u)/4294967296>>>0;return i&&(l=~l>>>0,u=~u>>>0,++u>4294967295&&(u=0,++l>4294967295&&(l=0))),new t(u,l)},t.from=function(o){if(typeof o=="number")return t.fromNumber(o);if(e.isString(o))if(e.Long)o=e.Long.fromString(o);else return t.fromNumber(parseInt(o,10));return o.low||o.high?new t(o.low>>>0,o.high>>>0):n},t.prototype.toNumber=function(o){if(!o&&this.hi>>>31){var i=~this.lo+1>>>0,u=~this.hi>>>0;return i||(u=u+1>>>0),-(i+u*4294967296)}return this.lo+this.hi*4294967296},t.prototype.toLong=function(o){return e.Long?new e.Long(this.lo|0,this.hi|0,!!o):{low:this.lo|0,high:this.hi|0,unsigned:!!o}};var a=String.prototype.charCodeAt;return t.fromHash=function(o){return o===r?n:new t((a.call(o,0)|a.call(o,1)<<8|a.call(o,2)<<16|a.call(o,3)<<24)>>>0,(a.call(o,4)|a.call(o,5)<<8|a.call(o,6)<<16|a.call(o,7)<<24)>>>0)},t.prototype.toHash=function(){return String.fromCharCode(this.lo&255,this.lo>>>8&255,this.lo>>>16&255,this.lo>>>24,this.hi&255,this.hi>>>8&255,this.hi>>>16&255,this.hi>>>24)},t.prototype.zzEncode=function(){var o=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^o)>>>0,this.lo=(this.lo<<1^o)>>>0,this},t.prototype.zzDecode=function(){var o=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^o)>>>0,this.hi=(this.hi>>>1^o)>>>0,this},t.prototype.length=function(){var o=this.lo,i=(this.lo>>>28|this.hi<<4)>>>0,u=this.hi>>>24;return u===0?i===0?o<16384?o<128?1:2:o<2097152?3:4:i<16384?i<128?5:6:i<2097152?7:8:u<128?9:10},longbits}var hasRequiredMinimal;function requireMinimal(){return hasRequiredMinimal||(hasRequiredMinimal=1,function(e){var t=e;t.asPromise=requireAspromise(),t.base64=requireBase64(),t.EventEmitter=requireEventemitter(),t.float=requireFloat(),t.inquire=requireInquire(),t.utf8=requireUtf8(),t.pool=requirePool(),t.LongBits=requireLongbits(),t.isNode=!!(typeof commonjsGlobal<"u"&&commonjsGlobal&&commonjsGlobal.process&&commonjsGlobal.process.versions&&commonjsGlobal.process.versions.node),t.global=t.isNode&&commonjsGlobal||typeof window<"u"&&window||typeof self<"u"&&self||minimal,t.emptyArray=Object.freeze?Object.freeze([]):[],t.emptyObject=Object.freeze?Object.freeze({}):{},t.isInteger=Number.isInteger||function(s){return typeof s=="number"&&isFinite(s)&&Math.floor(s)===s},t.isString=function(s){return typeof s=="string"||s instanceof String},t.isObject=function(s){return s&&typeof s=="object"},t.isset=t.isSet=function(s,o){var i=s[o];return i!=null&&s.hasOwnProperty(o)?typeof i!="object"||(Array.isArray(i)?i.length:Object.keys(i).length)>0:!1},t.Buffer=function(){try{var a=t.inquire("buffer").Buffer;return a.prototype.utf8Write?a:null}catch{return null}}(),t._Buffer_from=null,t._Buffer_allocUnsafe=null,t.newBuffer=function(s){return typeof s=="number"?t.Buffer?t._Buffer_allocUnsafe(s):new t.Array(s):t.Buffer?t._Buffer_from(s):typeof Uint8Array>"u"?s:new Uint8Array(s)},t.Array=typeof Uint8Array<"u"?Uint8Array:Array,t.Long=t.global.dcodeIO&&t.global.dcodeIO.Long||t.global.Long||t.inquire("long"),t.key2Re=/^true|false|0|1$/,t.key32Re=/^-?(?:0|[1-9][0-9]*)$/,t.key64Re=/^(?:[\\x00-\\xff]{8}|-?(?:0|[1-9][0-9]*))$/,t.longToHash=function(s){return s?t.LongBits.from(s).toHash():t.LongBits.zeroHash},t.longFromHash=function(s,o){var i=t.LongBits.fromHash(s);return t.Long?t.Long.fromBits(i.lo,i.hi,o):i.toNumber(!!o)};function n(a,s,o){for(var i=Object.keys(s),u=0;u<i.length;++u)(a[i[u]]===void 0||!o)&&(a[i[u]]=s[i[u]]);return a}t.merge=n,t.lcFirst=function(s){return s.charAt(0).toLowerCase()+s.substring(1)};function r(a){function s(o,i){if(!(this instanceof s))return new s(o,i);Object.defineProperty(this,"message",{get:function(){return o}}),Error.captureStackTrace?Error.captureStackTrace(this,s):Object.defineProperty(this,"stack",{value:new Error().stack||""}),i&&n(this,i)}return s.prototype=Object.create(Error.prototype,{constructor:{value:s,writable:!0,enumerable:!1,configurable:!0},name:{get:function(){return a},set:void 0,enumerable:!1,configurable:!0},toString:{value:function(){return this.name+": "+this.message},writable:!0,enumerable:!1,configurable:!0}}),s}t.newError=r,t.ProtocolError=r("ProtocolError"),t.oneOfGetter=function(s){for(var o={},i=0;i<s.length;++i)o[s[i]]=1;return function(){for(var u=Object.keys(this),l=u.length-1;l>-1;--l)if(o[u[l]]===1&&this[u[l]]!==void 0&&this[u[l]]!==null)return u[l]}},t.oneOfSetter=function(s){return function(o){for(var i=0;i<s.length;++i)s[i]!==o&&delete this[s[i]]}},t.toJSONOptions={longs:String,enums:String,bytes:String,json:!0},t._configure=function(){var a=t.Buffer;if(!a){t._Buffer_from=t._Buffer_allocUnsafe=null;return}t._Buffer_from=a.from!==Uint8Array.from&&a.from||function(o,i){return new a(o,i)},t._Buffer_allocUnsafe=a.allocUnsafe||function(o){return new a(o)}}}(minimal)),minimal}var writer,hasRequiredWriter;function requireWriter(){if(hasRequiredWriter)return writer;hasRequiredWriter=1,writer=u;var e=requireMinimal(),t,n=e.LongBits,r=e.base64,a=e.utf8;function s(y,m,_){this.fn=y,this.len=m,this.next=void 0,this.val=_}function o(){}function i(y){this.head=y.head,this.tail=y.tail,this.len=y.len,this.next=y.states}function u(){this.len=0,this.head=new s(o,0,0),this.tail=this.head,this.states=null}var l=function(){return e.Buffer?function(){return(u.create=function(){return new t})()}:function(){return new u}};u.create=l(),u.alloc=function(m){return new e.Array(m)},e.Array!==Array&&(u.alloc=e.pool(u.alloc,e.Array.prototype.subarray)),u.prototype._push=function(m,_,b){return this.tail=this.tail.next=new s(m,_,b),this.len+=_,this};function v(y,m,_){m[_]=y&255}function d(y,m,_){for(;y>127;)m[_++]=y&127|128,y>>>=7;m[_]=y}function f(y,m){this.len=y,this.next=void 0,this.val=m}f.prototype=Object.create(s.prototype),f.prototype.fn=d,u.prototype.uint32=function(m){return this.len+=(this.tail=this.tail.next=new f((m=m>>>0)<128?1:m<16384?2:m<2097152?3:m<268435456?4:5,m)).len,this},u.prototype.int32=function(m){return m<0?this._push(c,10,n.fromNumber(m)):this.uint32(m)},u.prototype.sint32=function(m){return this.uint32((m<<1^m>>31)>>>0)};function c(y,m,_){for(;y.hi;)m[_++]=y.lo&127|128,y.lo=(y.lo>>>7|y.hi<<25)>>>0,y.hi>>>=7;for(;y.lo>127;)m[_++]=y.lo&127|128,y.lo=y.lo>>>7;m[_++]=y.lo}u.prototype.uint64=function(m){var _=n.from(m);return this._push(c,_.length(),_)},u.prototype.int64=u.prototype.uint64,u.prototype.sint64=function(m){var _=n.from(m).zzEncode();return this._push(c,_.length(),_)},u.prototype.bool=function(m){return this._push(v,1,m?1:0)};function p(y,m,_){m[_]=y&255,m[_+1]=y>>>8&255,m[_+2]=y>>>16&255,m[_+3]=y>>>24}u.prototype.fixed32=function(m){return this._push(p,4,m>>>0)},u.prototype.sfixed32=u.prototype.fixed32,u.prototype.fixed64=function(m){var _=n.from(m);return this._push(p,4,_.lo)._push(p,4,_.hi)},u.prototype.sfixed64=u.prototype.fixed64,u.prototype.float=function(m){return this._push(e.float.writeFloatLE,4,m)},u.prototype.double=function(m){return this._push(e.float.writeDoubleLE,8,m)};var h=e.Array.prototype.set?function(m,_,b){_.set(m,b)}:function(m,_,b){for(var g=0;g<m.length;++g)_[b+g]=m[g]};return u.prototype.bytes=function(m){var _=m.length>>>0;if(!_)return this._push(v,1,0);if(e.isString(m)){var b=u.alloc(_=r.length(m));r.decode(m,b,0),m=b}return this.uint32(_)._push(h,_,m)},u.prototype.string=function(m){var _=a.length(m);return _?this.uint32(_)._push(a.write,_,m):this._push(v,1,0)},u.prototype.fork=function(){return this.states=new i(this),this.head=this.tail=new s(o,0,0),this.len=0,this},u.prototype.reset=function(){return this.states?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new s(o,0,0),this.len=0),this},u.prototype.ldelim=function(){var m=this.head,_=this.tail,b=this.len;return this.reset().uint32(b),b&&(this.tail.next=m.next,this.tail=_,this.len+=b),this},u.prototype.finish=function(){for(var m=this.head.next,_=this.constructor.alloc(this.len),b=0;m;)m.fn(m.val,_,b),b+=m.len,m=m.next;return _},u._configure=function(y){t=y,u.create=l(),t._configure()},writer}var writer_buffer,hasRequiredWriter_buffer;function requireWriter_buffer(){if(hasRequiredWriter_buffer)return writer_buffer;hasRequiredWriter_buffer=1,writer_buffer=n;var e=requireWriter();(n.prototype=Object.create(e.prototype)).constructor=n;var t=requireMinimal();function n(){e.call(this)}n._configure=function(){n.alloc=t._Buffer_allocUnsafe,n.writeBytesBuffer=t.Buffer&&t.Buffer.prototype instanceof Uint8Array&&t.Buffer.prototype.set.name==="set"?function(s,o,i){o.set(s,i)}:function(s,o,i){if(s.copy)s.copy(o,i,0,s.length);else for(var u=0;u<s.length;)o[i++]=s[u++]}},n.prototype.bytes=function(s){t.isString(s)&&(s=t._Buffer_from(s,"base64"));var o=s.length>>>0;return this.uint32(o),o&&this._push(n.writeBytesBuffer,o,s),this};function r(a,s,o){a.length<40?t.utf8.write(a,s,o):s.utf8Write?s.utf8Write(a,o):s.write(a,o)}return n.prototype.string=function(s){var o=t.Buffer.byteLength(s);return this.uint32(o),o&&this._push(r,o,s),this},n._configure(),writer_buffer}var reader,hasRequiredReader;function requireReader(){if(hasRequiredReader)return reader;hasRequiredReader=1,reader=s;var e=requireMinimal(),t,n=e.LongBits,r=e.utf8;function a(d,f){return RangeError("index out of range: "+d.pos+" + "+(f||1)+" > "+d.len)}function s(d){this.buf=d,this.pos=0,this.len=d.length}var o=typeof Uint8Array<"u"?function(f){if(f instanceof Uint8Array||Array.isArray(f))return new s(f);throw Error("illegal buffer")}:function(f){if(Array.isArray(f))return new s(f);throw Error("illegal buffer")},i=function(){return e.Buffer?function(c){return(s.create=function(h){return e.Buffer.isBuffer(h)?new t(h):o(h)})(c)}:o};s.create=i(),s.prototype._slice=e.Array.prototype.subarray||e.Array.prototype.slice,s.prototype.uint32=function(){var f=4294967295;return function(){if(f=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(f=(f|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(f=(f|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(f=(f|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(f=(f|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return f;if((this.pos+=5)>this.len)throw this.pos=this.len,a(this,10);return f}}(),s.prototype.int32=function(){return this.uint32()|0},s.prototype.sint32=function(){var f=this.uint32();return f>>>1^-(f&1)|0};function u(){var d=new n(0,0),f=0;if(this.len-this.pos>4){for(;f<4;++f)if(d.lo=(d.lo|(this.buf[this.pos]&127)<<f*7)>>>0,this.buf[this.pos++]<128)return d;if(d.lo=(d.lo|(this.buf[this.pos]&127)<<28)>>>0,d.hi=(d.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return d;f=0}else{for(;f<3;++f){if(this.pos>=this.len)throw a(this);if(d.lo=(d.lo|(this.buf[this.pos]&127)<<f*7)>>>0,this.buf[this.pos++]<128)return d}return d.lo=(d.lo|(this.buf[this.pos++]&127)<<f*7)>>>0,d}if(this.len-this.pos>4){for(;f<5;++f)if(d.hi=(d.hi|(this.buf[this.pos]&127)<<f*7+3)>>>0,this.buf[this.pos++]<128)return d}else for(;f<5;++f){if(this.pos>=this.len)throw a(this);if(d.hi=(d.hi|(this.buf[this.pos]&127)<<f*7+3)>>>0,this.buf[this.pos++]<128)return d}throw Error("invalid varint encoding")}s.prototype.bool=function(){return this.uint32()!==0};function l(d,f){return(d[f-4]|d[f-3]<<8|d[f-2]<<16|d[f-1]<<24)>>>0}s.prototype.fixed32=function(){if(this.pos+4>this.len)throw a(this,4);return l(this.buf,this.pos+=4)},s.prototype.sfixed32=function(){if(this.pos+4>this.len)throw a(this,4);return l(this.buf,this.pos+=4)|0};function v(){if(this.pos+8>this.len)throw a(this,8);return new n(l(this.buf,this.pos+=4),l(this.buf,this.pos+=4))}return s.prototype.float=function(){if(this.pos+4>this.len)throw a(this,4);var f=e.float.readFloatLE(this.buf,this.pos);return this.pos+=4,f},s.prototype.double=function(){if(this.pos+8>this.len)throw a(this,4);var f=e.float.readDoubleLE(this.buf,this.pos);return this.pos+=8,f},s.prototype.bytes=function(){var f=this.uint32(),c=this.pos,p=this.pos+f;if(p>this.len)throw a(this,f);if(this.pos+=f,Array.isArray(this.buf))return this.buf.slice(c,p);if(c===p){var h=e.Buffer;return h?h.alloc(0):new this.buf.constructor(0)}return this._slice.call(this.buf,c,p)},s.prototype.string=function(){var f=this.bytes();return r.read(f,0,f.length)},s.prototype.skip=function(f){if(typeof f=="number"){if(this.pos+f>this.len)throw a(this,f);this.pos+=f}else do if(this.pos>=this.len)throw a(this);while(this.buf[this.pos++]&128);return this},s.prototype.skipType=function(d){switch(d){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;(d=this.uint32()&7)!==4;)this.skipType(d);break;case 5:this.skip(4);break;default:throw Error("invalid wire type "+d+" at offset "+this.pos)}return this},s._configure=function(d){t=d,s.create=i(),t._configure();var f=e.Long?"toLong":"toNumber";e.merge(s.prototype,{int64:function(){return u.call(this)[f](!1)},uint64:function(){return u.call(this)[f](!0)},sint64:function(){return u.call(this).zzDecode()[f](!1)},fixed64:function(){return v.call(this)[f](!0)},sfixed64:function(){return v.call(this)[f](!1)}})},reader}var reader_buffer,hasRequiredReader_buffer;function requireReader_buffer(){if(hasRequiredReader_buffer)return reader_buffer;hasRequiredReader_buffer=1,reader_buffer=n;var e=requireReader();(n.prototype=Object.create(e.prototype)).constructor=n;var t=requireMinimal();function n(r){e.call(this,r)}return n._configure=function(){t.Buffer&&(n.prototype._slice=t.Buffer.prototype.slice)},n.prototype.string=function(){var a=this.uint32();return this.buf.utf8Slice?this.buf.utf8Slice(this.pos,this.pos=Math.min(this.pos+a,this.len)):this.buf.toString("utf-8",this.pos,this.pos=Math.min(this.pos+a,this.len))},n._configure(),reader_buffer}var rpc={},service$1,hasRequiredService$1;function requireService$1(){if(hasRequiredService$1)return service$1;hasRequiredService$1=1,service$1=t;var e=requireMinimal();(t.prototype=Object.create(e.EventEmitter.prototype)).constructor=t;function t(n,r,a){if(typeof n!="function")throw TypeError("rpcImpl must be a function");e.EventEmitter.call(this),this.rpcImpl=n,this.requestDelimited=!!r,this.responseDelimited=!!a}return t.prototype.rpcCall=function n(r,a,s,o,i){if(!o)throw TypeError("request must be specified");var u=this;if(!i)return e.asPromise(n,u,r,a,s,o);if(!u.rpcImpl){setTimeout(function(){i(Error("already ended"))},0);return}try{return u.rpcImpl(r,a[u.requestDelimited?"encodeDelimited":"encode"](o).finish(),function(v,d){if(v)return u.emit("error",v,r),i(v);if(d===null){u.end(!0);return}if(!(d instanceof s))try{d=s[u.responseDelimited?"decodeDelimited":"decode"](d)}catch(f){return u.emit("error",f,r),i(f)}return u.emit("data",d,r),i(null,d)})}catch(l){u.emit("error",l,r),setTimeout(function(){i(l)},0);return}},t.prototype.end=function(r){return this.rpcImpl&&(r||this.rpcImpl(null,null,null),this.rpcImpl=null,this.emit("end").off()),this},service$1}var hasRequiredRpc;function requireRpc(){return hasRequiredRpc||(hasRequiredRpc=1,function(e){var t=e;t.Service=requireService$1()}(rpc)),rpc}var roots,hasRequiredRoots;function requireRoots(){return hasRequiredRoots||(hasRequiredRoots=1,roots={}),roots}var hasRequiredIndexMinimal;function requireIndexMinimal(){return hasRequiredIndexMinimal||(hasRequiredIndexMinimal=1,function(e){var t=e;t.build="minimal",t.Writer=requireWriter(),t.BufferWriter=requireWriter_buffer(),t.Reader=requireReader(),t.BufferReader=requireReader_buffer(),t.util=requireMinimal(),t.rpc=requireRpc(),t.roots=requireRoots(),t.configure=n;function n(){t.util._configure(),t.Writer._configure(t.BufferWriter),t.Reader._configure(t.BufferReader)}n()}(indexMinimal)),indexMinimal}var types={},util={exports:{}},codegen_1,hasRequiredCodegen;function requireCodegen(){if(hasRequiredCodegen)return codegen_1;hasRequiredCodegen=1,codegen_1=e;function e(t,n){typeof t=="string"&&(n=t,t=void 0);var r=[];function a(o){if(typeof o!="string"){var i=s();if(e.verbose&&console.log("codegen: "+i),i="return "+i,o){for(var u=Object.keys(o),l=new Array(u.length+1),v=new Array(u.length),d=0;d<u.length;)l[d]=u[d],v[d]=o[u[d++]];return l[d]=i,Function.apply(null,l).apply(null,v)}return Function(i)()}for(var f=new Array(arguments.length-1),c=0;c<f.length;)f[c]=arguments[++c];if(c=0,o=o.replace(/%([%dfijs])/g,function(h,y){var m=f[c++];switch(y){case"d":case"f":return String(Number(m));case"i":return String(Math.floor(m));case"j":return JSON.stringify(m);case"s":return String(m)}return"%"}),c!==f.length)throw Error("parameter count mismatch");return r.push(o),a}function s(o){return"function "+(o||n||"")+"("+(t&&t.join(",")||"")+`){
|
|
1
|
+
(function(e,t){typeof exports=="object"&&typeof module<"u"?t(exports,require("vue"),require("pinia"),require("aws-amplify/auth")):typeof define=="function"&&define.amd?define(["exports","vue","pinia","aws-amplify/auth"],t):(e=typeof globalThis<"u"?globalThis:e||self,t(e.tsviewer={},e.Vue,e.Pinia,e.Amplify.Auth))})(this,function(exports,vue,pinia,auth){"use strict";function _isPlaceholder(e){return e!=null&&typeof e=="object"&&e["@@functional/placeholder"]===!0}function _curry1(e){return function t(n){return arguments.length===0||_isPlaceholder(n)?t:e.apply(this,arguments)}}function _curry2(e){return function t(n,r){switch(arguments.length){case 0:return t;case 1:return _isPlaceholder(n)?t:_curry1(function(a){return e(n,a)});default:return _isPlaceholder(n)&&_isPlaceholder(r)?t:_isPlaceholder(n)?_curry1(function(a){return e(a,r)}):_isPlaceholder(r)?_curry1(function(a){return e(n,a)}):e(n,r)}}}function _concat(e,t){e=e||[],t=t||[];var n,r=e.length,a=t.length,s=[];for(n=0;n<r;)s[s.length]=e[n],n+=1;for(n=0;n<a;)s[s.length]=t[n],n+=1;return s}function _arity(e,t){switch(e){case 0:return function(){return t.apply(this,arguments)};case 1:return function(n){return t.apply(this,arguments)};case 2:return function(n,r){return t.apply(this,arguments)};case 3:return function(n,r,a){return t.apply(this,arguments)};case 4:return function(n,r,a,s){return t.apply(this,arguments)};case 5:return function(n,r,a,s,o){return t.apply(this,arguments)};case 6:return function(n,r,a,s,o,i){return t.apply(this,arguments)};case 7:return function(n,r,a,s,o,i,u){return t.apply(this,arguments)};case 8:return function(n,r,a,s,o,i,u,l){return t.apply(this,arguments)};case 9:return function(n,r,a,s,o,i,u,l,v){return t.apply(this,arguments)};case 10:return function(n,r,a,s,o,i,u,l,v,d){return t.apply(this,arguments)};default:throw new Error("First argument to _arity must be a non-negative integer no greater than ten")}}function _curryN(e,t,n){return function(){for(var r=[],a=0,s=e,o=0;o<t.length||a<arguments.length;){var i;o<t.length&&(!_isPlaceholder(t[o])||a>=arguments.length)?i=t[o]:(i=arguments[a],a+=1),r[o]=i,_isPlaceholder(i)||(s-=1),o+=1}return s<=0?n.apply(this,r):_arity(s,_curryN(e,r,n))}}var curryN=_curry2(function(t,n){return t===1?_curry1(n):_arity(t,_curryN(t,[],n))});function _curry3(e){return function t(n,r,a){switch(arguments.length){case 0:return t;case 1:return _isPlaceholder(n)?t:_curry2(function(s,o){return e(n,s,o)});case 2:return _isPlaceholder(n)&&_isPlaceholder(r)?t:_isPlaceholder(n)?_curry2(function(s,o){return e(s,r,o)}):_isPlaceholder(r)?_curry2(function(s,o){return e(n,s,o)}):_curry1(function(s){return e(n,r,s)});default:return _isPlaceholder(n)&&_isPlaceholder(r)&&_isPlaceholder(a)?t:_isPlaceholder(n)&&_isPlaceholder(r)?_curry2(function(s,o){return e(s,o,a)}):_isPlaceholder(n)&&_isPlaceholder(a)?_curry2(function(s,o){return e(s,r,o)}):_isPlaceholder(r)&&_isPlaceholder(a)?_curry2(function(s,o){return e(n,s,o)}):_isPlaceholder(n)?_curry1(function(s){return e(s,r,a)}):_isPlaceholder(r)?_curry1(function(s){return e(n,s,a)}):_isPlaceholder(a)?_curry1(function(s){return e(n,r,s)}):e(n,r,a)}}}const _isArray=Array.isArray||function(t){return t!=null&&t.length>=0&&Object.prototype.toString.call(t)==="[object Array]"};function _isTransformer(e){return e!=null&&typeof e["@@transducer/step"]=="function"}function _dispatchable(e,t,n){return function(){if(arguments.length===0)return n();var r=arguments[arguments.length-1];if(!_isArray(r)){for(var a=0;a<e.length;){if(typeof r[e[a]]=="function")return r[e[a]].apply(r,Array.prototype.slice.call(arguments,0,-1));a+=1}if(_isTransformer(r)){var s=t.apply(null,Array.prototype.slice.call(arguments,0,-1));return s(r)}}return n.apply(this,arguments)}}function _reduced(e){return e&&e["@@transducer/reduced"]?e:{"@@transducer/value":e,"@@transducer/reduced":!0}}const _xfBase={init:function(){return this.xf["@@transducer/init"]()},result:function(e){return this.xf["@@transducer/result"](e)}};function _map(e,t){for(var n=0,r=t.length,a=Array(r);n<r;)a[n]=e(t[n]),n+=1;return a}function _isString$1(e){return Object.prototype.toString.call(e)==="[object String]"}var _isArrayLike=_curry1(function(t){return _isArray(t)?!0:!t||typeof t!="object"||_isString$1(t)?!1:t.length===0?!0:t.length>0?t.hasOwnProperty(0)&&t.hasOwnProperty(t.length-1):!1}),XWrap=function(){function e(t){this.f=t}return e.prototype["@@transducer/init"]=function(){throw new Error("init not implemented on XWrap")},e.prototype["@@transducer/result"]=function(t){return t},e.prototype["@@transducer/step"]=function(t,n){return this.f(t,n)},e}();function _xwrap(e){return new XWrap(e)}var bind=_curry2(function(t,n){return _arity(t.length,function(){return t.apply(n,arguments)})});function _arrayReduce(e,t,n){for(var r=0,a=n.length;r<a;){if(t=e["@@transducer/step"](t,n[r]),t&&t["@@transducer/reduced"]){t=t["@@transducer/value"];break}r+=1}return e["@@transducer/result"](t)}function _iterableReduce(e,t,n){for(var r=n.next();!r.done;){if(t=e["@@transducer/step"](t,r.value),t&&t["@@transducer/reduced"]){t=t["@@transducer/value"];break}r=n.next()}return e["@@transducer/result"](t)}function _methodReduce(e,t,n,r){return e["@@transducer/result"](n[r](bind(e["@@transducer/step"],e),t))}var symIterator=typeof Symbol<"u"?Symbol.iterator:"@@iterator";function _reduce(e,t,n){if(typeof e=="function"&&(e=_xwrap(e)),_isArrayLike(n))return _arrayReduce(e,t,n);if(typeof n["fantasy-land/reduce"]=="function")return _methodReduce(e,t,n,"fantasy-land/reduce");if(n[symIterator]!=null)return _iterableReduce(e,t,n[symIterator]());if(typeof n.next=="function")return _iterableReduce(e,t,n);if(typeof n.reduce=="function")return _methodReduce(e,t,n,"reduce");throw new TypeError("reduce: list must be array or iterable")}var XMap=function(){function e(t,n){this.xf=n,this.f=t}return e.prototype["@@transducer/init"]=_xfBase.init,e.prototype["@@transducer/result"]=_xfBase.result,e.prototype["@@transducer/step"]=function(t,n){return this.xf["@@transducer/step"](t,this.f(n))},e}(),_xmap=_curry2(function(t,n){return new XMap(t,n)});function _has(e,t){return Object.prototype.hasOwnProperty.call(t,e)}var toString$1=Object.prototype.toString,_isArguments=function(){return toString$1.call(arguments)==="[object Arguments]"?function(t){return toString$1.call(t)==="[object Arguments]"}:function(t){return _has("callee",t)}}(),hasEnumBug=!{toString:null}.propertyIsEnumerable("toString"),nonEnumerableProps=["constructor","valueOf","isPrototypeOf","toString","propertyIsEnumerable","hasOwnProperty","toLocaleString"],hasArgsEnumBug=function(){return arguments.propertyIsEnumerable("length")}(),contains=function(t,n){for(var r=0;r<t.length;){if(t[r]===n)return!0;r+=1}return!1},keys$1=_curry1(typeof Object.keys=="function"&&!hasArgsEnumBug?function(t){return Object(t)!==t?[]:Object.keys(t)}:function(t){if(Object(t)!==t)return[];var n,r,a=[],s=hasArgsEnumBug&&_isArguments(t);for(n in t)_has(n,t)&&(!s||n!=="length")&&(a[a.length]=n);if(hasEnumBug)for(r=nonEnumerableProps.length-1;r>=0;)n=nonEnumerableProps[r],_has(n,t)&&!contains(a,n)&&(a[a.length]=n),r-=1;return a}),map=_curry2(_dispatchable(["fantasy-land/map","map"],_xmap,function(t,n){switch(Object.prototype.toString.call(n)){case"[object Function]":return curryN(n.length,function(){return t.call(this,n.apply(this,arguments))});case"[object Object]":return _reduce(function(r,a){return r[a]=t(n[a]),r},{},keys$1(n));default:return _map(t,n)}}));const _isInteger=Number.isInteger||function(t){return t<<0===t};var nth=_curry2(function(t,n){var r=t<0?n.length+t:t;return _isString$1(n)?n.charAt(r):n[r]}),prop=_curry2(function(t,n){if(n!=null)return _isInteger(t)?nth(t,n):n[t]}),reduce=_curry3(_reduce),type$1=_curry1(function(t){return t===null?"Null":t===void 0?"Undefined":Object.prototype.toString.call(t).slice(8,-1)});function _pipe(e,t){return function(){return t.call(this,e.apply(this,arguments))}}function _checkForMethod(e,t){return function(){var n=arguments.length;if(n===0)return t();var r=arguments[n-1];return _isArray(r)||typeof r[e]!="function"?t.apply(this,arguments):r[e].apply(r,Array.prototype.slice.call(arguments,0,n-1))}}var slice=_curry3(_checkForMethod("slice",function(t,n,r){return Array.prototype.slice.call(r,t,n)})),tail=_curry1(_checkForMethod("tail",slice(1,1/0)));function pipe(){if(arguments.length===0)throw new Error("pipe requires at least one argument");return _arity(arguments[0].length,reduce(_pipe,arguments[0],tail(arguments)))}var reverse=_curry1(function(t){return _isString$1(t)?t.split("").reverse().join(""):Array.prototype.slice.call(t,0).reverse()});function compose(){if(arguments.length===0)throw new Error("compose requires at least one argument");return pipe.apply(this,reverse(arguments))}var head=nth(0);function _arrayFromIterator(e){for(var t=[],n;!(n=e.next()).done;)t.push(n.value);return t}function _includesWith(e,t,n){for(var r=0,a=n.length;r<a;){if(e(t,n[r]))return!0;r+=1}return!1}function _functionName(e){var t=String(e).match(/^function (\w*)/);return t==null?"":t[1]}function _objectIs(e,t){return e===t?e!==0||1/e===1/t:e!==e&&t!==t}const _objectIs$1=typeof Object.is=="function"?Object.is:_objectIs;function _uniqContentEquals(e,t,n,r){var a=_arrayFromIterator(e),s=_arrayFromIterator(t);function o(i,u){return _equals(i,u,n.slice(),r.slice())}return!_includesWith(function(i,u){return!_includesWith(o,u,i)},s,a)}function _equals(e,t,n,r){if(_objectIs$1(e,t))return!0;var a=type$1(e);if(a!==type$1(t))return!1;if(typeof e["fantasy-land/equals"]=="function"||typeof t["fantasy-land/equals"]=="function")return typeof e["fantasy-land/equals"]=="function"&&e["fantasy-land/equals"](t)&&typeof t["fantasy-land/equals"]=="function"&&t["fantasy-land/equals"](e);if(typeof e.equals=="function"||typeof t.equals=="function")return typeof e.equals=="function"&&e.equals(t)&&typeof t.equals=="function"&&t.equals(e);switch(a){case"Arguments":case"Array":case"Object":if(typeof e.constructor=="function"&&_functionName(e.constructor)==="Promise")return e===t;break;case"Boolean":case"Number":case"String":if(!(typeof e==typeof t&&_objectIs$1(e.valueOf(),t.valueOf())))return!1;break;case"Date":if(!_objectIs$1(e.valueOf(),t.valueOf()))return!1;break;case"Error":return e.name===t.name&&e.message===t.message;case"RegExp":if(!(e.source===t.source&&e.global===t.global&&e.ignoreCase===t.ignoreCase&&e.multiline===t.multiline&&e.sticky===t.sticky&&e.unicode===t.unicode))return!1;break}for(var s=n.length-1;s>=0;){if(n[s]===e)return r[s]===t;s-=1}switch(a){case"Map":return e.size!==t.size?!1:_uniqContentEquals(e.entries(),t.entries(),n.concat([e]),r.concat([t]));case"Set":return e.size!==t.size?!1:_uniqContentEquals(e.values(),t.values(),n.concat([e]),r.concat([t]));case"Arguments":case"Array":case"Object":case"Boolean":case"Number":case"String":case"Date":case"Error":case"RegExp":case"Int8Array":case"Uint8Array":case"Uint8ClampedArray":case"Int16Array":case"Uint16Array":case"Int32Array":case"Uint32Array":case"Float32Array":case"Float64Array":case"ArrayBuffer":break;default:return!1}var o=keys$1(e);if(o.length!==keys$1(t).length)return!1;var i=n.concat([e]),u=r.concat([t]);for(s=o.length-1;s>=0;){var l=o[s];if(!(_has(l,t)&&_equals(t[l],e[l],i,u)))return!1;s-=1}return!0}var equals=_curry2(function(t,n){return _equals(t,n,[],[])});function _isObject(e){return Object.prototype.toString.call(e)==="[object Object]"}var defaultTo=_curry2(function(t,n){return n==null||n!==n?t:n});function _isTypedArray(e){var t=Object.prototype.toString.call(e);return t==="[object Uint8ClampedArray]"||t==="[object Int8Array]"||t==="[object Uint8Array]"||t==="[object Int16Array]"||t==="[object Uint16Array]"||t==="[object Int32Array]"||t==="[object Uint32Array]"||t==="[object Float32Array]"||t==="[object Float64Array]"||t==="[object BigInt64Array]"||t==="[object BigUint64Array]"}var empty=_curry1(function(t){return t!=null&&typeof t["fantasy-land/empty"]=="function"?t["fantasy-land/empty"]():t!=null&&t.constructor!=null&&typeof t.constructor["fantasy-land/empty"]=="function"?t.constructor["fantasy-land/empty"]():t!=null&&typeof t.empty=="function"?t.empty():t!=null&&t.constructor!=null&&typeof t.constructor.empty=="function"?t.constructor.empty():_isArray(t)?[]:_isString$1(t)?"":_isObject(t)?{}:_isArguments(t)?function(){return arguments}():_isTypedArray(t)?t.constructor.from(""):void 0}),XFind=function(){function e(t,n){this.xf=n,this.f=t,this.found=!1}return e.prototype["@@transducer/init"]=_xfBase.init,e.prototype["@@transducer/result"]=function(t){return this.found||(t=this.xf["@@transducer/step"](t,void 0)),this.xf["@@transducer/result"](t)},e.prototype["@@transducer/step"]=function(t,n){return this.f(n)&&(this.found=!0,t=_reduced(this.xf["@@transducer/step"](t,n))),t},e}(),_xfind=_curry2(function(t,n){return new XFind(t,n)}),find=_curry2(_dispatchable(["find"],_xfind,function(t,n){for(var r=0,a=n.length;r<a;){if(t(n[r]))return n[r];r+=1}})),XFindIndex=function(){function e(t,n){this.xf=n,this.f=t,this.idx=-1,this.found=!1}return e.prototype["@@transducer/init"]=_xfBase.init,e.prototype["@@transducer/result"]=function(t){return this.found||(t=this.xf["@@transducer/step"](t,-1)),this.xf["@@transducer/result"](t)},e.prototype["@@transducer/step"]=function(t,n){return this.idx+=1,this.f(n)&&(this.found=!0,t=_reduced(this.xf["@@transducer/step"](t,this.idx))),t},e}(),_xfindIndex=_curry2(function(t,n){return new XFindIndex(t,n)}),findIndex=_curry2(_dispatchable([],_xfindIndex,function(t,n){for(var r=0,a=n.length;r<a;){if(t(n[r]))return r;r+=1}return-1})),isEmpty$1=_curry1(function(t){return t!=null&&equals(t,empty(t))}),paths=_curry2(function(t,n){return t.map(function(r){for(var a=n,s=0,o;s<r.length;){if(a==null)return;o=r[s],a=_isInteger(o)?nth(o,a):a[o],s+=1}return a})}),path$1=_curry2(function(t,n){return paths([t],n)[0]}),pathOr=_curry3(function(t,n,r){return defaultTo(t,path$1(n,r))}),propEq=_curry3(function(t,n,r){return equals(n,prop(t,r))}),propOr=_curry3(function(t,n,r){return defaultTo(t,prop(n,r))}),tryCatch=_curry2(function(t,n){return _arity(t.length,function(){try{return t.apply(this,arguments)}catch(r){return n.apply(this,_concat([r],arguments))}})});async function useToken(){try{return auth.fetchAuthSession().then(e=>{var t;return(t=e==null?void 0:e.tokens)==null?void 0:t.accessToken.toString()})}catch(e){console.error(e)}}const useChannelDataRequest=()=>({openConnection:async(t,n,r)=>await new Promise((o,i)=>{const u=t+"?session="+r+"&package="+n;console.log("Opening WebSocket connection to:",u);let l=null;const v=new WebSocket(u);v.onopen=()=>{console.log("🔗 WebSocket opened for package:",n);const d={montage:"NOT_MONTAGED",packageId:n};console.log("🎛️ Sending message payload"),v.send(JSON.stringify(d))},v.onclose=()=>{console.log("🔌 WebSocket closed for package:",n),l&&l.channelDetails?o({res:l.channelDetails,status:"websocket closed"}):(console.warn("No channel details received"),o({res:null,status:"websocket closed without data"}))},v.onmessage=d=>{console.log("WebSocket message received:",d.data),l=JSON.parse(d.data),v.close()},v.onerror=d=>{console.error("WebSocket error:",d),i(d)}})}),useViewerStore=pinia.defineStore("tsviewer",()=>{const e=vue.reactive({}),t=vue.ref([]),n=vue.ref("NOT_MONTAGED"),r=vue.ref({}),a=vue.ref([]),s=vue.ref(null),o=vue.ref(null),i=vue.ref({}),u=vue.ref([]),l=vue.ref({}),v=vue.ref({}),d=vue.ref("POINTER"),{openConnection:f}=useChannelDataRequest(),c=vue.computed(()=>Oe=>a.value.find(ze=>ze.name===Oe)),p=vue.computed(()=>t.value.filter(Oe=>Oe.selected)),h=vue.computed(()=>()=>{const Oe=u.value.find(ze=>ze.selected);return Oe||(console.warn("No active layer found, available layers:",u.value),u.value.length>0?u.value[0]:null)}),y=()=>{let Oe=!1;return u.value.forEach((ze,At)=>{!ze.id&&ze.id!==0&&(console.error(`Layer at index ${At} missing ID:`,ze),Oe=!0),ze.annotations||(console.warn(`Layer at index ${At} missing annotations array:`,ze),ze.annotations=[])}),Oe&&console.error("Annotation layer validation failed. Layers:",u.value),!Oe},m=vue.computed(()=>Oe=>u.value.flatMap(At=>At.annotations||[]).find(At=>At.id===Oe)),_=Oe=>{i.value=Oe},b=Oe=>{t.value=Oe},g=Oe=>{n.value=Oe},w=Oe=>{r.value=Oe},k=Oe=>{a.value=Oe},A=Oe=>{s.value=Oe},$=Oe=>{o.value=Oe},M=Oe=>{Object.assign(e,Oe)},F=async Oe=>{const ze=Oe.packageId,At=await useToken();let En=e.timeseriesDiscoverApi,Pn=null;Pn=await f(En,ze,At),_({channels:Pn.res,content:{id:ze}})},O=()=>Oe=>{var At;return((At=Oe==null?void 0:Oe.content)==null?void 0:At.state)==="READY"},D=Oe=>{const ze=Oe.map(At=>(!At.id&&At.id!==0&&(console.warn("Annotation layer missing ID:",At),At.id=Math.random().toString(36).substr(2,9)),At.annotations||(At.annotations=[]),At.name||(At.name=`Layer ${At.id}`),At));u.value=ze,console.log("Set annotations with validated structure:",ze)},j=Oe=>{if(!Oe&&Oe!==0){console.error("setActiveAnnotationLayer called with invalid layerId:",Oe);return}l.value=Oe,u.value.forEach(At=>At.selected=!1);const ze=findIndex(propEq("id",Oe),u.value);ze>=0?(u.value[ze].selected=!0,console.log("Successfully set active layer:",u.value[ze])):console.error("Layer with ID not found:",Oe,"Available layers:",u.value)},z=Oe=>{if(u.value.forEach(ze=>{var At;return(At=ze.annotations)==null?void 0:At.forEach(En=>En.selected=!1)}),Oe.id){const ze=findIndex(propEq("id",Oe.layer_id),u.value);if(ze>=0){const At=findIndex(propEq("id",Oe.id),u.value[ze].annotations);At>=0&&(u.value[ze].annotations[At].selected=!0)}}v.value=Oe},T=Oe=>{d.value=Oe},L=Oe=>{if(!Oe.id&&Oe.id!==0){console.error("Cannot create layer without ID:",Oe);return}const ze={id:Oe.id,name:Oe.name||`Layer ${Oe.id}`,description:Oe.description||"",visible:Oe.visible!==void 0?Oe.visible:!0,selected:Oe.selected||!1,annotations:Oe.annotations||[],color:Oe.color,hexColor:Oe.hexColor,bkColor:Oe.bkColor,selColor:Oe.selColor,userId:Oe.userId,...Oe};u.value.push(ze),console.log("Created layer with validated structure:",ze)},ie=Oe=>{const ze=findIndex(propEq("id",Oe.id),u.value);if(ze>=0){const At=Object.assign(u.value[ze],Oe);u.value[ze]=At}},x=Oe=>{const ze=findIndex(propEq("id",Oe.id),u.value);ze>=0&&u.value.splice(ze,1)},V=Oe=>{const ze=findIndex(propEq("id",Oe.layer_id),u.value);ze>=0&&(u.value[ze].annotations||(u.value[ze].annotations=[]),u.value[ze].annotations.push(Oe),z(Oe))},le=Oe=>{const ze=findIndex(propEq("id",Oe.layer_id),u.value);if(ze>=0){const At=u.value[ze].annotations,En=findIndex(propEq("id",Oe.id),At);En>=0&&(At[En]=Oe)}},re=Oe=>{const ze=findIndex(propEq("id",Oe.layer_id),u.value);if(ze>=0){const At=u.value[ze].annotations,En=findIndex(propEq("id",Oe.id),At);En>=0&&At.splice(En,1)}},Y=(Oe,ze,At)=>{const En=t.value.find(Pn=>Pn.id===Oe);En&&(En[ze]=At)};return{viewerChannels:t,viewerMontageScheme:n,customMontageMap:r,workspaceMontages:a,viewerErrors:s,needsRerender:o,viewerAnnotations:u,activeAnnotationLayer:l,activeAnnotation:v,activeViewer:i,viewerActiveTool:d,config:e,getMontageMessageByName:c,viewerSelectedChannels:p,getViewerActiveLayer:h,getAnnotationById:m,setChannels:b,setViewerMontageScheme:g,setCustomMontageMap:w,setWorkspaceMontages:k,setViewerErrors:A,setAnnotations:D,setActiveAnnotationLayer:j,setActiveAnnotation:z,setActiveTool:T,createLayer:L,updateLayer:ie,deleteLayer:x,createAnnotation:V,updateAnnotation:le,deleteAnnotation:re,updateChannelProperty:Y,updateChannelVisibility:(Oe,ze)=>{Y(Oe,"visible",ze)},updateChannelSelection:(Oe,ze)=>{Y(Oe,"selected",ze)},updateChannelFilter:(Oe,ze)=>{Y(Oe,"filter",ze)},validateAnnotationLayers:y,resetViewer:()=>{t.value=[],n.value="NOT_MONTAGED",r.value={},a.value=[],s.value=null,u.value=[],l.value={},v.value={},d.value="POINTER",i.value={},Object.keys(e).forEach(Oe=>{delete e[Oe]})},triggerRerender:Oe=>{$({timestamp:Date.now(),cause:Oe})},resetRerenderTrigger:()=>{o.value=null},isTSFileProcessed:O,fetchAndSetActiveViewer:F,setActiveViewer:_,setViewerConfig:M}});function useHandleLogout(e){if(useRoute().name==="docs-login")return;defaultTo(!1,prop("shouldShowToast",e));const n=defaultTo(!1,prop("shouldRedirect",e));this.clearState(),n&&this.$route.fullPath}const _isString=e=>Object.prototype.toString.call(e)==="[object String]",_trimValues=e=>{Object.keys(e).forEach(t=>{_isString(e[t])&&(e[t]=e[t].trim())})};function useSendXhr(e,t){if(!e)return Promise.reject({status:400,message:"Url is missing!"});const n=propOr("GET","method",t),r=propOr({},"header",t),a=Object.assign({},{"Content-type":"application/json"},r),s=prop("body",t);let o={headers:a,method:n};if(s){typeof s=="object"&&_trimValues(s);const i=JSON.stringify(s);o=Object.assign({},o,{body:i})}return fetch(e,o).then(i=>i.status>=400?Promise.reject(i):i.json().catch(()=>i))}function useHandleXhrError(e){const t=prop("status",e);let n;if(t===void 0){console.log(e);return}else n=e.status;if(n===400&&e.body)e.body.getReader().read().then(({done:r,value:a})=>{const s=a instanceof Uint8Array?String.fromCharCode.apply(null,a):a;compose(defaultTo(s),tryCatch(compose(prop("message"),JSON.parse),(o,i)=>i))(s)});else if(n===401)return useHandleLogout()}function useTsAnnotation(){const e=useViewerStore(),{viewerChannels:t,viewerAnnotations:n}=pinia.storeToRefs(e),r=u=>u.id||"",a=u=>{u.sort(function(v,d){return v.start<d.start?-1:v.start>d.start?1:0})};return{viewerChannels:t,viewerAnnotations:n,addAnnotation:async(u=null)=>{const l=u||activeAnnotation.value;if(console.log("🔧 useTsAnnotation: addAnnotation called with:",l),!l||!l.layer_id)throw new TypeError("Missing annotation data or layer_id",l);if(l.id)throw new TypeError("Trying to create an annotation that already exists",l.id);let v=l.start,d=l.duration||l.end-l.start;const f=l.label,c=l.description,p=l.layer_id;if(!f)throw new Error("Annotation label is required");if(v==null)throw new Error("Annotation start time is required");d<0&&(d=-d,v=v-d);let h=[];if(console.log("🔧 useTsAnnotation: Processing channelIds...",{hasChannelIds:l.channelIds&&Array.isArray(l.channelIds),allChannels:l.allChannels,providedChannelIds:l.channelIds,availableChannels:t.value.length}),l.allChannels){console.log("🔧 useTsAnnotation: allChannels=true, adding all visible channels");const b=e.activeViewer.value.channels;for(let g=0;g<b.length;g++){const k=b[g].content.id;h.push(k),console.log("🔧 useTsAnnotation: Added channel ID:",k)}}else if(l.channelIds&&Array.isArray(l.channelIds)&&l.channelIds.length>0)h=l.channelIds,console.log("🔧 useTsAnnotation: Using provided channelIds:",h);else{console.log("🔧 useTsAnnotation: Computing from selected channels");for(let b=0;b<t.value.length;b++){const g=t.value[b];if(g.selected&&g.visible){const w=r(g);h.push(w),console.log("🔧 useTsAnnotation: Added selected channel ID:",w)}}}console.log("🔧 useTsAnnotation: Final channelIds:",h);const y={label:f,name:f,description:c||"",start:Math.floor(v),end:Math.floor(v+d),channelIds:h};console.log("🔧 useTsAnnotation: API payload:",y);const m=e.activeViewer.value.content.id,_=`${e.config.apiUrl}/timeseries/${m}/layers/${p}/annotations`;console.log("🔧 useTsAnnotation: API URL:",_);try{const b=await useToken(),g=await fetch(`${_}?api_key=${b}`,{method:"POST",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify(y)});if(!g.ok){const $=await g.text();throw new Error(`HTTP ${g.status}: ${$}`)}const w=await g.json();console.log("🔧 useTsAnnotation: API success:",w);const k={name:"",id:w.id,label:w.label,description:w.description,start:w.start,duration:w.end-w.start,end:w.end,cStart:null,cEnd:null,selected:!0,channelIds:w.channelIds||h,allChannels:h.length===0||h.length>=t.value.length,layer_id:p,userId:w.userId};w.linkedPackage&&(k.linkedPackage=w.linkedPackage);let A=0;for(let $=0;$<n.value.length;$++)if(n.value[$].id===p){A=$;break}return e.createAnnotation(k),n.value[A]&&n.value[A].annotations&&a(n.value[A].annotations),k}catch(b){throw console.error("🔧 useTsAnnotation: Error creating annotation:",b),useHandleXhrError(b),b}},updateAnnotation:async(u=null)=>{const l=u||activeAnnotation.value;if(console.log("🔧 useTsAnnotation: updateAnnotation called with:",l),!l.id)throw new TypeError("Trying to update an annotation that doesn't exist on server",l.id);if(!l.layer_id)throw new TypeError("Missing layer_id for annotation update",l);let v=l.start,d=l.duration||l.end-l.start;d<0&&(d=-d,v=v-d);const f={label:l.label,description:l.description||"",start:Math.floor(v),end:Math.floor(v+d),channelIds:l.channelIds||[]};console.log("🔧 useTsAnnotation: Update API payload:",f);const c=e.activeViewer.value.content.id,p=`${e.config.apiUrl}/timeseries/${c}/layers/${l.layer_id}/annotations/${l.id}`;console.log("🔧 useTsAnnotation: Update API URL:",p);try{const h=await useToken(),y=await fetch(`${p}?api_key=${h}`,{method:"PUT",headers:{"Content-Type":"application/json",Accept:"application/json"},body:JSON.stringify(f)});if(!y.ok){const b=await y.text();throw new Error(`HTTP ${y.status}: ${b}`)}const m=await y.json();console.log("🔧 useTsAnnotation: Update API success:",m);const _={...l,...m,duration:m.end-m.start};return e.updateAnnotation(_),m}catch(h){throw console.error("🔧 useTsAnnotation: Error updating annotation:",h),useHandleXhrError(h),h}},removeAnnotation:async u=>{if(!u||!u.id)throw new TypeError("Invalid annotation for deletion",u);let l="";if(u.layer?l=u.layer.id:l=u.layer_id,!l)throw new TypeError("Missing layer_id for annotation deletion",u);const v=e.activeViewer.value.content.id,d=`${e.config.apiUrl}/timeseries/${v}/layers/${l}/annotations/${u.id}`;console.log("🔧 useTsAnnotation: Delete API URL:",d);try{const f=await useToken(),c=await fetch(`${d}?api_key=${f}`,{method:"DELETE",headers:{Accept:"application/json"}});if(!c.ok){const p=await c.text();throw new Error(`HTTP ${c.status}: ${p}`)}return console.log("🔧 useTsAnnotation: Delete API success"),e.deleteAnnotation(u),!0}catch(f){throw console.error("🔧 useTsAnnotation: Error deleting annotation:",f),useHandleXhrError(f),f}},sortAnns:a,getChannelId:r}}const _export_sfc$1=(e,t)=>{const n=e.__vccOpts||e;for(const[r,a]of t)n[r]=a;return n},_hoisted_1$m={id:"channelCanvas"},_hoisted_2$a=["data-id"],_hoisted_3$9=["hidden"],_hoisted_4$6=["hidden"],_sfc_main$W={__name:"TSViewer",props:{pkg:{type:Object,default:()=>{}},isPreview:{type:Boolean,default:!1},sidePanelOpen:{type:Boolean,default:!1}},setup(e,{expose:t}){const n=vue.defineAsyncComponent(()=>Promise.resolve().then(()=>TSScrubber$1)),r=vue.defineAsyncComponent(()=>Promise.resolve().then(()=>TSViewerCanvas$1)),a=vue.defineAsyncComponent(()=>Promise.resolve().then(()=>TSViewerToolbar$1)),s=vue.defineAsyncComponent(()=>Promise.resolve().then(()=>TSFilterModal$1)),o=vue.defineAsyncComponent(()=>Promise.resolve().then(()=>TSAnnotationModal$1)),i=vue.defineAsyncComponent(()=>Promise.resolve().then(()=>TsAnnotationDeleteDialog$1)),u=vue.defineAsyncComponent(()=>Promise.resolve().then(()=>TSViewerLayerWindow$1)),l={TIMEUNIT:"microSeconds",XOFFSET:0,XGRIDSPACING:1e6,NRPXPERLABEL:150,USEREALTIME:!0,DEFAULTDPI:96,ANNOTATIONLABELHEIGHT:20,ROUNDDATAPIXELS:!1,MINMAXPOLYGON:!0,PAGESIZEDIVIDER:.5,PREFETCHPAGES:5,LIMITANNFETCH:500,USEMEDIAN:!1,CURSOROFFSET:5,SEGMENTSPAN:12096e8,MAXRECURSION:20,MAXDURATION:6e8,INITDURATION:15e6},v=e,d=useViewerStore(),{viewerChannels:f,needsRerender:c}=pinia.storeToRefs(d),{addAnnotation:p,updateAnnotation:h,removeAnnotation:y}=useTsAnnotation(),m=vue.ref(null),_=vue.ref(null),b=vue.ref(null),g=vue.ref(null),w=vue.ref(null),k=vue.ref(null),A=vue.ref(null),$=vue.ref(null),M=vue.ref(0),F=vue.ref(0),O=vue.ref(0),D=vue.ref(0),j=vue.ref(0),z=vue.ref(0),T=vue.ref(0),L=vue.ref(1),ie=vue.ref(1/10),x=vue.ref(!1),V=vue.ref(!1),le=vue.ref(null),re=vue.ref(!1),Y=vue.ref(!1),he=vue.computed(()=>d.activeViewer),_e=vue.computed(()=>f.value.map(ue=>({...ue,selected:!!ue.selected}))),$e=vue.computed(()=>_e.value.filter(ue=>ue.visible)),Ne=vue.computed(()=>{let ue=!1;return z.value/kt.value<30&&(ue=!0),ue}),kt=vue.computed(()=>$e.value.length),Pt=async()=>{if(console.log("onresize..."),!m.value)return;const ue=document.getElementById("ts_viewer");if(!ue)return;const Fe=window.getComputedStyle(ue,null),Ve=parseInt(Fe.getPropertyValue("height")),_n=v.isPreview?0:100;M.value=Ve-_n,await vue.nextTick(),F.value=m.value.offsetWidth;const Ln=b.value;Ln&&(T.value=Ln.clientWidth,j.value=F.value-Ln.clientWidth-16,z.value=M.value-40)};vue.watch(()=>he.value,async(ue,Fe)=>{var Ve,_n,Ln;(Ve=_.value)!=null&&Ve.resetComponentState&&_.value.resetComponentState(),ue&&ue.channels&&ue.channels.length>0&&Dt(),On(),await vue.nextTick(),(_n=_.value)!=null&&_n.initSegmentSpans&&_.value.initSegmentSpans(),(Ln=_.value)!=null&&Ln.getAnnotations&&_.value.getAnnotations()},{immediate:!1,deep:!0}),vue.watch(kt,(ue,Fe)=>{Fe!==void 0&&ue!==Fe&&(console.log(`Number of visible channels changed from ${Fe} to ${ue}`),setTimeout(()=>{var Ve;Pt(),(Ve=g.value)!=null&&Ve.renderAll&&g.value.renderAll()},20))});const Oe=ue=>{store.dispatch("viewerModule/setActiveAnnotation",ue).then(()=>{g.value.renderAnnotationCanvas(),x.value=!0})};vue.watch(c,ue=>{ue&&(console.log(`TSViewer: Re-rendering due to: ${ue.cause} (${ue.timestamp})`),vue.nextTick(()=>{var Fe;ue.cause==="channel-visibility"?setTimeout(()=>{var Ve;Pt(),(Ve=g.value)!=null&&Ve.renderAll&&g.value.renderAll()},10):(Fe=g.value)!=null&&Fe.renderAll&&g.value.renderAll()}),d.resetRerenderTrigger(null))},{deep:!0});const ze=ue=>{Oe(ue)},At=async ue=>{if(console.log("📍 TSViewer: onCreateUpdateAnnotation received:",ue),!ue||Object.keys(ue).length===0){console.error("🚨 TSViewer: Received empty annotation!");return}if(!ue.layer_id){console.error("🚨 TSViewer: annotation.layer_id is missing!",ue);return}x.value=!1;try{ue.id?(console.log("📍 TSViewer: Updating annotation via composable"),await h(ue),En()):(console.log("📍 TSViewer: Creating annotation via composable"),await p(ue),xe()),console.log("📍 TSViewer: Annotation operation completed successfully")}catch(Fe){console.error("📍 TSViewer: Error creating/updating annotation:",Fe),x.value=!0}},En=()=>{g.value.renderAnnotationCanvas()},Pn=ue=>{le.value=ue,re.value=!0},Dn=async ue=>{re.value=!1;try{await y(ue),Mn(),console.log("📍 TSViewer: Annotation deleted successfully")}catch(Fe){console.error("📍 TSViewer: Error deleting annotation:",Fe)}},Mn=()=>{g.value.renderAnnotationCanvas()},Ue=(ue,Fe,Ve,_n,Ln,jn)=>{if(console.log("📍 TSViewer: onAddAnnotation called with:",{startTime:ue,duration:Fe,allChannels:Ve,label:_n,description:Ln,layer:jn}),!jn||!jn.id){console.error("Invalid layer provided to onAddAnnotation:",jn);return}const Hn=d.viewerSelectedChannels||[],Gn=Ve?[]:Hn.map(Zn=>Zn.id),Jn={id:null,label:_n||"Event",description:Ln||"",start:Math.floor(ue),end:Math.floor(ue+Fe),duration:Math.floor(Fe),channelIds:Gn,allChannels:Ve,layer_id:jn.id,selected:!0,userId:null};console.log("📍 TSViewer: Created annotation object:",Jn),d.setActiveAnnotation(Jn),console.log("📍 TSViewer: Store now contains:",d.activeAnnotation),x.value=!0,console.log("📍 TSViewer: Modal opened with annotation data")},xe=()=>{g.value.renderAnnotationCanvas()},Lt=ue=>{g.value.createAnnotationLayer(ue)},Et=()=>{V.value=!1},wn=()=>{g.value.resetFocusedAnnotation(),g.value.renderAnnotationCanvas(),x.value=!1},Tn=()=>{Y.value=!1},kn=ue=>{ue.stopPropagation(),ue.preventDefault();const Fe=ue.detail.sourceEvent.metaKey;$n({channelId:ue.currentTarget.dataset.id,append:Fe}),g.value.renderAll()},In=()=>{O.value=g.value.getNextAnnotation()},qe=()=>{O.value=g.value.getPreviousAnnotation()},hn=ue=>{de(ue*1e6)},An=()=>{L.value=L.value*1.25},Nn=()=>{L.value=L.value*.8},xn=()=>{_.value.getAnnotations()},Bn=()=>{},Rn=()=>{console.log("Page forward triggered from toolbar");const ue=Math.max(O.value-3/4*D.value,A.value);pe(ue),vue.nextTick(()=>{var Fe;(Fe=g.value)==null||Fe.renderAll()})},qn=()=>{console.log("Page forward triggered from toolbar");const ue=Math.min(O.value+3/4*D.value,$.value-D.value);console.log(`Moving from ${O.value} to ${ue}`),pe(ue),vue.nextTick(()=>{var Fe,Ve;(Fe=g.value)!=null&&Fe.invalidate&&g.value.invalidate(),(Ve=g.value)!=null&&Ve.renderAll&&g.value.renderAll()})},Fn=ue=>{let Fe=g.value.rsPeriod;pe(ue.annotation.start-(ie.value*j.value-l.CURSOROFFSET)*Fe),vue.nextTick(()=>{var Ve;(Ve=g.value)==null||Ve.renderAll()})},$n=ue=>{const Fe=f.value.map(Ve=>{const _n=Ve.selected;return ue.append===!1&&(Ve.selected=!1),ue.channelId===Ve.id&&(Ve.selected=!_n),Ve});d.setChannels(Fe)},oe=(ue,Fe)=>{const Ve=f.value.map(_n=>(Fe===!1&&(_n.selected=!1),_n.id in ue&&(_n.selected=!0),_n));d.setChannels(Ve)},pe=ue=>{O.value=ue},S=ue=>{ie.value=ue},ae=ue=>{L.value=ue},de=ue=>{ue>l.MAXDURATION?D.value=l.MAXDURATION:D.value=ue},Ce=(ue,Fe,Ve)=>(l.DEFAULTDPI*window.devicePixelRatio/(Fe*Ve)/25.4).toFixed(1)+" "+ue.unit+"/mm",Dt=()=>{var Fe;const ue=(Fe=he.value)==null?void 0:Fe.channels;if(console.log("🔄 initTimeRange called with channels:",(ue==null?void 0:ue.length)||0),ue&&ue.length>0){A.value=ue[0].start,$.value=ue[0].end;for(let _n=1;_n<ue.length;_n++)ue[_n].start<A.value&&(A.value=ue[_n].start),ue[_n].end>$.value&&($.value=ue[_n].end);const Ve=O.value;O.value=A.value,console.log("📅 Time range initialized:",{ts_start:A.value,ts_end:$.value,oldStart:Ve,newStart:O.value,duration:D.value,startDate:new Date(A.value/1e3).toISOString(),endDate:new Date($.value/1e3).toISOString()})}else console.warn("⚠️ initTimeRange: No channels found in activeViewer")},Sn=()=>{Dt()},Cn=ue=>{V.value=!0},bn=ue=>{const Fe=propOr([],"channels",ue),Ve=propOr("","filter",ue),_n=w.value;_n.onChannels=Fe,isEmpty$1(Ve)?(_n.input0=NaN,_n.input1=NaN,_n.selectedFilter=null,_n.selectedNotch=null):(_n.input0=Ve.input0,_n.input1=Ve.input1),Y.value=!0},jt=ue=>{g.value.setFilters(ue)},On=()=>{var ue,Fe;(ue=g.value)==null||ue.initViewerCanvas(),(Fe=g.value)==null||Fe.renderAll()};return vue.onMounted(()=>{Sn();const ue=document.getElementById("ts_viewer");if(!ue){console.warn("ts_viewer element not found");return}var Fe=window.getComputedStyle(ue,null);const Ve=parseInt(Fe.getPropertyValue("height")),_n=v.isPreview?0:100;M.value=Ve-_n,m.value&&(F.value=m.value.offsetWidth),window.addEventListener("resize",Pt);const Ln=b.value;Ln&&(T.value=Ln.clientWidth,j.value=F.value-Ln.clientWidth-5-10,z.value=M.value-88),D.value=l.INITDURATION,On()}),vue.onBeforeUnmount(()=>{window.removeEventListener("resize",Pt)}),t({openEditAnnotationDialog:Oe,confirmDeleteAnnotation:Pn,selectAnnotation:Fn,selectChannel:$n,selectChannels:oe,openLayerWindow:Cn,openFilterWindow:bn,setTimeseriesFilters:jt}),(ue,Fe)=>(vue.openBlock(),vue.createElementBlock("div",{id:"ts_viewer",ref_key:"ts_viewer",ref:m,class:vue.normalizeClass([e.isPreview?"timeseries-viewer preview":"timeseries-viewer"])},[vue.createVNode(vue.unref(n),{ref_key:"scrubber",ref:_,ts_start:A.value,ts_end:$.value,"c-width":j.value,"label-width":T.value,"cursor-loc":ie.value,start:O.value,duration:D.value,constants:l,"active-viewer":he.value,onSetStart:pe},null,8,["ts_start","ts_end","c-width","label-width","cursor-loc","start","duration","active-viewer"]),vue.createElementVNode("div",_hoisted_1$m,[vue.createElementVNode("div",{id:"channelLabels",ref_key:"channelLabels",ref:b},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList($e.value,Ve=>(vue.openBlock(),vue.createElementBlock("div",{key:Ve.displayName,class:"chLabelWrap","data-id":Ve.id,onTap:kn},[vue.createElementVNode("div",{class:vue.normalizeClass([Ve.selected?"labelDiv selected":"labelDiv"])},vue.toDisplayString(Ve.displayName),3),vue.createElementVNode("div",{class:vue.normalizeClass(["chLabelIndWrap",[Ve.selected?"selected":""]]),hidden:Ne.value},[vue.createElementVNode("div",{class:"chLabelInd",hidden:Ne.value},vue.toDisplayString(Ce(Ve,L.value,Ve.rowScale)),9,_hoisted_4$6)],10,_hoisted_3$9)],40,_hoisted_2$a))),128))],512),vue.createVNode(vue.unref(r),{ref_key:"viewerCanvas",ref:g,window_height:M.value,window_width:F.value,duration:D.value,start:O.value,"c-width":j.value,"c-height":z.value,constants:l,"ts-start":A.value,"ts-end":$.value,"cursor-loc":ie.value,"global-zoom-mult":L.value,"active-viewer":he.value,onSetStart:pe,onSetCursor:S,onSetGlobalZoom:ae,onSetDuration:de,onChannelsInitialized:Bn,onAnnLayersInitialized:xn,onCloseAnnotationLayerWindow:Et,onAddAnnotation:Ue,onUpdateAnnotation:ze},null,8,["window_height","window_width","duration","start","c-width","c-height","ts-start","ts-end","cursor-loc","global-zoom-mult","active-viewer"])]),e.isPreview?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createBlock(vue.unref(a),{key:0,constants:l,duration:D.value,start:O.value,onPageBack:Rn,onPageForward:qn,onIncrementZoom:An,onDecrementZoom:Nn,onUpdateDuration:hn,onNextAnnotation:In,onPreviousAnnotation:qe,onSetStart:pe},null,8,["duration","start"])),vue.createVNode(vue.unref(s),{ref_key:"filterWindow",ref:w,visible:Y.value,"onUpdate:visible":Fe[0]||(Fe[0]=Ve=>Y.value=Ve),onCloseWindow:Tn},null,8,["visible"]),vue.createVNode(vue.unref(o),{ref_key:"annotationModal",ref:k,visible:x.value,"onUpdate:visible":Fe[1]||(Fe[1]=Ve=>x.value=Ve),onCloseWindow:wn,onCreateUpdateAnnotation:At},null,8,["visible"]),vue.createVNode(vue.unref(i),{visible:re.value,"delete-annotation":le.value,"onUpdate:visible":Fe[2]||(Fe[2]=Ve=>re.value=Ve),onDelete:Dn},null,8,["visible","delete-annotation"]),vue.createVNode(vue.unref(u),{visible:V.value,onCloseWindow:Et,onCreateLayer:Lt},null,8,["visible"])],2))}},TSViewer=_export_sfc$1(_sfc_main$W,[["__scopeId","data-v-d5eda6cd"]]),index={install(e){e.component("TSViewer",TSViewer)}},_hoisted_1$l={class:"timeseries-scrubber"},_hoisted_2$9={class:"dateWrap"},_hoisted_3$8={class:"noselect"},_hoisted_4$5={id:"scrubber",noselect:""},_hoisted_5$4=["width","height"],_hoisted_6$4=["width","height"],_hoisted_7$3=["width","height"],_sfc_main$V={__name:"TSScrubber",props:{ts_start:Number,ts_end:Number,cWidth:Number,constants:Object,start:Number,duration:Number,cursorLoc:Number,labelWidth:Number,activeViewer:Object},emits:["setStart"],setup(e,{expose:t,emit:n}){const r=e,a=n,s=useViewerStore(),o=vue.ref(null),i=vue.ref(null),u=vue.ref(null),l=vue.ref(null),v=vue.ref(1),d=vue.ref(28),f=vue.ref(30),c=vue.ref(!1),p=vue.ref(""),h=vue.ref("point"),y=vue.ref(null),m=vue.ref([]),_=vue.ref([]),b=vue.ref([]),g=vue.ref(!1),w=vue.ref(0),k=vue.ref(0),A=vue.ref(0),$=vue.ref(0),M=vue.computed(()=>re(r.ts_start)),F=vue.computed(()=>re(r.ts_end)),O=vue.computed(()=>{if(p.value!=="")return p.value;if(r.start>0){const Ue=new Date(r.start/1e3).toUTCString();return Ue.substring(0,Ue.length-3)}return""}),D=vue.computed(()=>({width:r.labelWidth+r.cWidth-8+5+"px",height:"28px"})),j=vue.computed(()=>({width:r.labelWidth+r.cWidth-8+5+"px",height:"30px"})),z=vue.computed(()=>r.cWidth+r.labelWidth-8+5),T=vue.computed(()=>Math.floor((r.ts_end-r.ts_start)/r.cWidth));vue.watch(()=>r.start,()=>{ze()}),vue.watch(()=>r.duration,()=>{ze()}),vue.watch(()=>r.cWidth,()=>{ze()}),vue.watch(()=>r.activeViewer,(Ue,xe)=>{var Lt;Ue&&Ue!==xe&&(console.log("TSScrubber: ActiveViewer changed, resetting component state"),g.value=!0,L(),(Lt=Ue.content)!=null&&Lt.id?vue.nextTick(()=>{Oe(),g.value=!1}):g.value=!1)},{deep:!0}),vue.watch(()=>s.viewerChannels,(Ue,xe)=>{var Lt,Et;Ue&&Ue.length>0&&!g.value&&(!xe||Ue.length!==xe.length||((Lt=Ue[0])==null?void 0:Lt.id)!==((Et=xe[0])==null?void 0:Et.id))&&(console.log("TSScrubber: Viewer channels changed, re-initializing segments"),ie(),vue.nextTick(()=>{kt()}))},{deep:!0}),vue.watch(()=>s.viewerAnnotations,(Ue,xe)=>{var Lt;Ue&&Ue!==xe&&!g.value?(console.log("TSScrubber: Viewer annotations changed independently, re-fetching annotations"),vue.nextTick(()=>{Oe()})):Ue&&Ue.length>0&&!xe&&((Lt=r.activeViewer)!=null&&Lt.content.id)&&(console.log("TSScrubber: Annotation layers now available, fetching annotations"),vue.nextTick(()=>{Oe()}))},{deep:!0});const L=()=>{console.log("TSScrubber: Resetting component state"),m.value=[],ie(),c.value=!1,p.value="",h.value="point",x()},ie=()=>{console.log("TSScrubber: Resetting segment state"),b.value=new Array(5e3),b.value=b.value.fill(0,0,4999),_.value=[]},x=()=>{vue.nextTick(()=>{[i.value,u.value,l.value].forEach(xe=>{if(xe){const Lt=xe.getContext("2d");Lt&&Lt.clearRect(0,0,xe.width,xe.height)}})})},V=(Ue,xe,Lt)=>xe*(Ue+Lt),le=()=>{const Ue=l.value.getContext("2d"),xe=window.devicePixelRatio||1,Lt=Ue.webkitBackingStorePixelRatio||Ue.mozBackingStorePixelRatio||Ue.msBackingStorePixelRatio||Ue.oBackingStorePixelRatio||Ue.backingStorePixelRatio||1;return xe/Lt},re=Ue=>{if(Ue>0)return Ue=Ue/1e3,Ue=new Date(Ue),("0"+Ue.getUTCHours()).slice(-2)+":"+("0"+Ue.getUTCMinutes()).slice(-2)+":"+("0"+Ue.getUTCSeconds()).slice(-2)},Y=Ue=>{if(c.value){const Lt=(Ue.clientX-w.value)/r.cWidth*(r.ts_end-r.ts_start),Et=k.value+Lt;a("setStart",Et);const wn=new Date((Lt+r.ts_start)/1e3);p.value=wn.toUTCString()}else{const xe=l.value.getBoundingClientRect(),Lt=Ue.clientX-xe.left,Et=A.value+$.value,wn=h.value;Lt>A.value-10&&Lt<Et+10?(h.value="drag",l.value.setAttribute("dragme",!0),l.value.removeAttribute("resizeme")):(h.value="point",l.value.removeAttribute("dragme"),l.value.removeAttribute("resizeme"));const kn=Lt/r.cWidth*(r.ts_end-r.ts_start)+r.ts_start,In=new Date(kn/1e3).toUTCString();p.value=In.substring(0,In.length-3),wn!==h.value&&ze()}},he=()=>{c.value=!1},_e=Ue=>{c.value=!0;const xe=l.value.getBoundingClientRect(),Lt=Ue.clientX-xe.left;w.value=Ue.clientX;const Et=Lt/z.value*(r.ts_end-r.ts_start);a("setStart",Et+r.ts_start),k.value=Et+r.ts_start},$e=()=>{c.value=!1},Ne=()=>{p.value=""},kt=()=>{var Lt;if(!s.viewerChannels||s.viewerChannels.length===0){console.warn("TSScrubber: Cannot init segment spans - no viewer channels available");return}if(!r.ts_start||!r.ts_end){console.warn("TSScrubber: Cannot init segment spans - invalid time range");return}if(!((Lt=s.config)!=null&&Lt.timeSeriesApi)){console.warn("TSScrubber: Cannot init segment spans - no timeSeriesApi configured");return}console.log(`TSScrubber: Initializing segment spans for ${s.viewerChannels.length} channels`),ie();const Ue=Math.min(r.constants.SEGMENTSPAN,r.ts_end-r.ts_start),xe=s.viewerChannels;for(let Et=0;Et<xe.length;Et++)Pt(xe[Et].id,Et,r.ts_start,r.ts_start+Ue,0)},Pt=async(Ue,xe,Lt,Et,wn)=>{var kn;const Tn=r.constants.MAXRECURSION;if(!((kn=s.config)!=null&&kn.timeSeriesApi)){console.warn("TSScrubber: Cannot request segment span - no timeSeriesApi configured");return}if(!Ue){console.warn("TSScrubber: Cannot request segment span - no channel ID provided");return}try{const In=await useToken(),qe=`${s.config.timeSeriesApi}/ts/retrieve/segments?session=${In}&channel=${Ue}&start=${Lt}&end=${Et}`;console.log(`TSScrubber: Fetching segments for channel ${Ue} (${xe})`);const hn=await useSendXhr(qe);if(!s.viewerChannels[xe]||s.viewerChannels[xe].id!==Ue){console.warn("TSScrubber: Channel mismatch detected, ignoring segment response (likely package switched)");return}let An=new Array(hn.length*2),Nn=0;for(let oe=0;oe<hn.length;oe++){An[Nn]=hn[oe][0],An[Nn+1]=hn[oe][1],Nn=Nn+2;const pe=Math.floor((hn[oe][0]-r.ts_start)/(r.ts_end-r.ts_start)*5e3),S=Math.ceil((hn[oe][1]-r.ts_start)/(r.ts_end-r.ts_start)*5e3);b.value.fill(1,pe,S)}let xn=0,Bn=!1,Rn=0;for(_.value=[];xn<b.value.length-1;){if(!b.value[xn]&&!Bn){xn++;continue}else b.value[xn]?Bn||(Rn=xn,Bn=!0):(_.value=_.value.concat([Rn,xn]),Bn=!1);xn++}Bn&&(_.value=_.value.concat([Rn,xn])),_.value=_.value.concat([5e3]);let qn=An[0],Fn=s.viewerChannels[xe];if(!Fn||Fn.id!==Ue){console.warn("TSScrubber: Channel configuration mismatch, skipping update");return}qn<Fn.dataSegments[Fn.dataSegments.length-1]&&(An.shift(),An.shift()),Fn.dataSegments=Fn.dataSegments.concat(An.sort((oe,pe)=>oe-pe)),s.updateChannelProperty(Fn.id,"dataSegments",Fn.dataSegments);let $n=Et-Lt;Lt+$n<r.ts_end&&wn<Tn?Pt(Ue,xe,Et,Et+$n,wn+1):En()}catch(In){console.error(`TSScrubber: Error fetching segments for channel ${Ue}:`,In),useHandleXhrError(In)}},Oe=async()=>{var xe,Lt,Et;const Ue=(xe=r.activeViewer)==null?void 0:xe.content.id;if(!Ue){console.warn("TSScrubber: Cannot get annotations - no active viewer ID"),m.value=[];return}if(!((Lt=s.config)!=null&&Lt.apiUrl)){console.warn("TSScrubber: Cannot get annotations - no API URL configured"),m.value=[];return}if(!s.viewerAnnotations||s.viewerAnnotations.length===0){console.log("TSScrubber: No annotation layers available, skipping annotation fetch"),m.value=[],ze();return}try{const wn=await useToken(),Tn=map(An=>An.id,s.viewerAnnotations),kn=r.ts_end;let qe=`${s.config.apiUrl}/timeseries/${Ue}/annotations/window`+`?api_key=${wn}&aggregation=count&start=${r.ts_start}&end=${r.ts_end}&period=${T.value}&mergePeriods=true`;for(let An in Tn)qe=qe+`&layerIds=${Tn[An]}`;console.log(`TSScrubber: Fetching annotations for viewer ${Ue}`);const hn=await useSendXhr(qe);((Et=r.activeViewer)==null?void 0:Et.content.id)===Ue?(m.value=hn,ze()):console.log("TSScrubber: Ignoring annotation response - viewer changed during fetch")}catch(wn){console.error("TSScrubber: Error fetching annotations:",wn),m.value=[],useHandleXhrError(wn),ze()}},ze=()=>{At(),Pn(),En()},At=()=>{vue.nextTick(()=>{const Ue=l.value;if(!Ue){console.warn("iCanvas ref is missing, skipping render");return}const xe=Ue.getContext("2d");if(!xe){console.warn("2D context is not available");return}xe.setTransform(v.value,0,0,v.value,0,0),xe.clearRect(0,0,r.cWidth,f.value),A.value=(r.start-r.ts_start)/(r.ts_end-r.ts_start)*r.cWidth+.5|0,$.value=r.duration/(r.ts_end-r.ts_start)*r.cWidth+.5|0,xe.fillStyle="rgb(80,80,80)",xe.strokeStyle="rgb(80,80,80)",xe.strokeRect(A.value+.5,.5,$.value,f.value-1),xe.fillRect(A.value-2,f.value/2-5|0,2,10),xe.fillRect(A.value+$.value+1,f.value/2-5|0,2,10);const Lt=A.value+r.cursorLoc*$.value;Lt>A.value+.5&&(xe.strokeStyle="red",xe.beginPath(),xe.moveTo(Lt,0),xe.lineTo(Lt,f.value-1),xe.stroke())})},En=()=>{vue.nextTick(()=>{const Ue=i.value;if(!Ue){console.warn("segmentsCanvas ref is missing, skipping renderSegments");return}const xe=Ue.getContext("2d");if(!xe){console.warn("Unable to get 2D context for segmentsCanvas, skipping renderSegments");return}xe.setTransform(v.value,0,0,v.value,0,0),xe.fillStyle=xe.createPattern(y.value,"repeat"),xe.clearRect(0,0,r.cWidth,f.value);for(let Lt=1;Lt<_.value.length;Lt+=2){const Et=r.cWidth*_.value[Lt]/5e3,wn=r.cWidth*_.value[Lt+1]/5e3;xe.fillRect(Et,2,wn-Et,f.value-6)}})},Pn=()=>{const Ue=u.value;if(!Ue){console.warn("annotationCanvas ref is missing, skipping renderTimelimeLine");return}const xe=Ue.getContext("2d");if(!xe){console.warn("Unable to get 2D context for annotationCanvas, skipping renderTimelimeLine");return}xe.setTransform(v.value,0,0,v.value,0,0),xe.clearRect(0,0,r.cWidth,d.value);const Lt=r.ts_start,Et=r.ts_end,wn=m.value;let Tn=0;const kn=0,In=Math.floor((d.value-2)/Object.keys(wn).length-kn),qe=s.viewerAnnotations;let hn="rgb(0,0,0)";for(const An in wn)if(wn.hasOwnProperty(An)){for(let Nn=0;Nn<qe.length;Nn++)if(qe[Nn].id===parseInt(An)){Tn=Nn,hn=qe[Nn].color;break}Dn(xe,Lt,Et,kn,In,wn[An],Tn,hn)}},Dn=(Ue,xe,Lt,Et,wn,Tn,kn,In)=>{vue.nextTick(()=>{Ue.setTransform(v.value,0,0,v.value,0,0),Ue.fillStyle=In;for(let qe=0;qe<Tn.length;qe++)if(Tn[qe].value>0){const hn=(Tn[qe].start-xe)/(Lt-xe)*r.cWidth;let Nn=(Tn[qe].end-xe)/(Lt-xe)*r.cWidth-hn;Nn<1&&(Nn=1);const xn=1+kn*(wn-1+Et)+kn;Ue.fillRect(hn,xn,Nn,wn)}})},Mn=()=>{const Ue=document.createElement("canvas"),xe=Ue.getContext("2d",{antialias:!0}),Lt="rgb(220,220,220)",Et=5,wn=Et,Tn=Et,kn=10;return Ue.width=wn,Ue.height=Tn,xe.fillStyle=Lt,xe.beginPath(),xe.moveTo(0,Tn*(1/kn)),xe.lineTo(wn*(1/kn),0),xe.lineTo(0,0),xe.lineTo(0,Tn*(1/kn)),xe.fill(),xe.beginPath(),xe.moveTo(wn,Tn*(1/kn)),xe.lineTo(wn*(1/kn),Tn),xe.lineTo(0,Tn),xe.lineTo(0,Tn*((kn-1)/kn)),xe.lineTo(wn*((kn-1)/kn),0),xe.lineTo(wn,0),xe.lineTo(wn,Tn*(1/kn)),xe.fill(),xe.beginPath(),xe.moveTo(wn,Tn*((kn-1)/kn)),xe.lineTo(wn*((kn-1)/kn),Tn),xe.lineTo(wn,Tn),xe.lineTo(wn,Tn*((kn-1)/kn)),xe.fill(),Ue};return vue.onMounted(()=>{b.value=new Array(5e3),b.value=b.value.fill(0,0,4999),v.value=le(),y.value=Mn(),At()}),t({getAnnotations:Oe,initSegmentSpans:kt,render:ze,renderViewPort:At,renderSegments:En,renderTimelimeLine:Pn,resetComponentState:L,resetSegmentState:ie,clearCanvases:x}),(Ue,xe)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$l,[vue.createElementVNode("div",_hoisted_2$9,[vue.createElementVNode("div",null,vue.toDisplayString(M.value),1),vue.createElementVNode("div",null,vue.toDisplayString(O.value),1),vue.createElementVNode("div",null,vue.toDisplayString(F.value),1)]),vue.createElementVNode("div",_hoisted_3$8,[vue.createElementVNode("div",_hoisted_4$5,[vue.createElementVNode("div",{id:"canvasWrap",ref_key:"canvasWrap",ref:o},[vue.createElementVNode("canvas",{id:"segmentsCanvas",class:"canvas",ref_key:"segmentsCanvas",ref:i,width:V(e.cWidth,v.value,0),height:V(f.value-2,v.value,0),style:vue.normalizeStyle(D.value)},null,12,_hoisted_5$4),vue.createElementVNode("canvas",{id:"annotationCanvas",class:"canvas",ref_key:"annotationCanvas",ref:u,width:V(e.cWidth,v.value,0),height:V(f.value-2,v.value,0),style:vue.normalizeStyle(D.value)},null,12,_hoisted_6$4),vue.createElementVNode("canvas",{id:"iCanvas",class:"canvas",ref_key:"iCanvas",ref:l,width:V(e.cWidth,v.value,0),height:V(f.value,v.value,0),onClick:xe[0]||(xe[0]=(...Lt)=>Ue._onTap&&Ue._onTap(...Lt)),onMousemove:Y,onMousedown:_e,onMouseup:he,onMouseenter:$e,onMouseout:Ne,style:vue.normalizeStyle(j.value)},null,44,_hoisted_7$3)],512)])])]))}},TSScrubber=_export_sfc$1(_sfc_main$V,[["__scopeId","data-v-8618a902"]]),TSScrubber$1=Object.freeze(Object.defineProperty({__proto__:null,default:TSScrubber},Symbol.toStringTag,{value:"Module"}));var commonjsGlobal=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function getDefaultExportFromCjs(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var src={exports:{}},indexLight={exports:{}},indexMinimal={},minimal={},aspromise,hasRequiredAspromise;function requireAspromise(){if(hasRequiredAspromise)return aspromise;hasRequiredAspromise=1,aspromise=e;function e(t,n){for(var r=new Array(arguments.length-1),a=0,s=2,o=!0;s<arguments.length;)r[a++]=arguments[s++];return new Promise(function(u,l){r[a]=function(d){if(o)if(o=!1,d)l(d);else{for(var f=new Array(arguments.length-1),c=0;c<f.length;)f[c++]=arguments[c];u.apply(null,f)}};try{t.apply(n||null,r)}catch(v){o&&(o=!1,l(v))}})}return aspromise}var base64={},hasRequiredBase64;function requireBase64(){return hasRequiredBase64||(hasRequiredBase64=1,function(e){var t=e;t.length=function(i){var u=i.length;if(!u)return 0;for(var l=0;--u%4>1&&i.charAt(u)==="=";)++l;return Math.ceil(i.length*3)/4-l};for(var n=new Array(64),r=new Array(123),a=0;a<64;)r[n[a]=a<26?a+65:a<52?a+71:a<62?a-4:a-59|43]=a++;t.encode=function(i,u,l){for(var v=null,d=[],f=0,c=0,p;u<l;){var h=i[u++];switch(c){case 0:d[f++]=n[h>>2],p=(h&3)<<4,c=1;break;case 1:d[f++]=n[p|h>>4],p=(h&15)<<2,c=2;break;case 2:d[f++]=n[p|h>>6],d[f++]=n[h&63],c=0;break}f>8191&&((v||(v=[])).push(String.fromCharCode.apply(String,d)),f=0)}return c&&(d[f++]=n[p],d[f++]=61,c===1&&(d[f++]=61)),v?(f&&v.push(String.fromCharCode.apply(String,d.slice(0,f))),v.join("")):String.fromCharCode.apply(String,d.slice(0,f))};var s="invalid encoding";t.decode=function(i,u,l){for(var v=l,d=0,f,c=0;c<i.length;){var p=i.charCodeAt(c++);if(p===61&&d>1)break;if((p=r[p])===void 0)throw Error(s);switch(d){case 0:f=p,d=1;break;case 1:u[l++]=f<<2|(p&48)>>4,f=p,d=2;break;case 2:u[l++]=(f&15)<<4|(p&60)>>2,f=p,d=3;break;case 3:u[l++]=(f&3)<<6|p,d=0;break}}if(d===1)throw Error(s);return l-v},t.test=function(i){return/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/.test(i)}}(base64)),base64}var eventemitter,hasRequiredEventemitter;function requireEventemitter(){if(hasRequiredEventemitter)return eventemitter;hasRequiredEventemitter=1,eventemitter=e;function e(){this._listeners={}}return e.prototype.on=function(n,r,a){return(this._listeners[n]||(this._listeners[n]=[])).push({fn:r,ctx:a||this}),this},e.prototype.off=function(n,r){if(n===void 0)this._listeners={};else if(r===void 0)this._listeners[n]=[];else for(var a=this._listeners[n],s=0;s<a.length;)a[s].fn===r?a.splice(s,1):++s;return this},e.prototype.emit=function(n){var r=this._listeners[n];if(r){for(var a=[],s=1;s<arguments.length;)a.push(arguments[s++]);for(s=0;s<r.length;)r[s].fn.apply(r[s++].ctx,a)}return this},eventemitter}var float,hasRequiredFloat;function requireFloat(){if(hasRequiredFloat)return float;hasRequiredFloat=1,float=e(e);function e(s){return typeof Float32Array<"u"?function(){var o=new Float32Array([-0]),i=new Uint8Array(o.buffer),u=i[3]===128;function l(c,p,h){o[0]=c,p[h]=i[0],p[h+1]=i[1],p[h+2]=i[2],p[h+3]=i[3]}function v(c,p,h){o[0]=c,p[h]=i[3],p[h+1]=i[2],p[h+2]=i[1],p[h+3]=i[0]}s.writeFloatLE=u?l:v,s.writeFloatBE=u?v:l;function d(c,p){return i[0]=c[p],i[1]=c[p+1],i[2]=c[p+2],i[3]=c[p+3],o[0]}function f(c,p){return i[3]=c[p],i[2]=c[p+1],i[1]=c[p+2],i[0]=c[p+3],o[0]}s.readFloatLE=u?d:f,s.readFloatBE=u?f:d}():function(){function o(u,l,v,d){var f=l<0?1:0;if(f&&(l=-l),l===0)u(1/l>0?0:2147483648,v,d);else if(isNaN(l))u(2143289344,v,d);else if(l>34028234663852886e22)u((f<<31|2139095040)>>>0,v,d);else if(l<11754943508222875e-54)u((f<<31|Math.round(l/1401298464324817e-60))>>>0,v,d);else{var c=Math.floor(Math.log(l)/Math.LN2),p=Math.round(l*Math.pow(2,-c)*8388608)&8388607;u((f<<31|c+127<<23|p)>>>0,v,d)}}s.writeFloatLE=o.bind(null,t),s.writeFloatBE=o.bind(null,n);function i(u,l,v){var d=u(l,v),f=(d>>31)*2+1,c=d>>>23&255,p=d&8388607;return c===255?p?NaN:f*(1/0):c===0?f*1401298464324817e-60*p:f*Math.pow(2,c-150)*(p+8388608)}s.readFloatLE=i.bind(null,r),s.readFloatBE=i.bind(null,a)}(),typeof Float64Array<"u"?function(){var o=new Float64Array([-0]),i=new Uint8Array(o.buffer),u=i[7]===128;function l(c,p,h){o[0]=c,p[h]=i[0],p[h+1]=i[1],p[h+2]=i[2],p[h+3]=i[3],p[h+4]=i[4],p[h+5]=i[5],p[h+6]=i[6],p[h+7]=i[7]}function v(c,p,h){o[0]=c,p[h]=i[7],p[h+1]=i[6],p[h+2]=i[5],p[h+3]=i[4],p[h+4]=i[3],p[h+5]=i[2],p[h+6]=i[1],p[h+7]=i[0]}s.writeDoubleLE=u?l:v,s.writeDoubleBE=u?v:l;function d(c,p){return i[0]=c[p],i[1]=c[p+1],i[2]=c[p+2],i[3]=c[p+3],i[4]=c[p+4],i[5]=c[p+5],i[6]=c[p+6],i[7]=c[p+7],o[0]}function f(c,p){return i[7]=c[p],i[6]=c[p+1],i[5]=c[p+2],i[4]=c[p+3],i[3]=c[p+4],i[2]=c[p+5],i[1]=c[p+6],i[0]=c[p+7],o[0]}s.readDoubleLE=u?d:f,s.readDoubleBE=u?f:d}():function(){function o(u,l,v,d,f,c){var p=d<0?1:0;if(p&&(d=-d),d===0)u(0,f,c+l),u(1/d>0?0:2147483648,f,c+v);else if(isNaN(d))u(0,f,c+l),u(2146959360,f,c+v);else if(d>17976931348623157e292)u(0,f,c+l),u((p<<31|2146435072)>>>0,f,c+v);else{var h;if(d<22250738585072014e-324)h=d/5e-324,u(h>>>0,f,c+l),u((p<<31|h/4294967296)>>>0,f,c+v);else{var y=Math.floor(Math.log(d)/Math.LN2);y===1024&&(y=1023),h=d*Math.pow(2,-y),u(h*4503599627370496>>>0,f,c+l),u((p<<31|y+1023<<20|h*1048576&1048575)>>>0,f,c+v)}}}s.writeDoubleLE=o.bind(null,t,0,4),s.writeDoubleBE=o.bind(null,n,4,0);function i(u,l,v,d,f){var c=u(d,f+l),p=u(d,f+v),h=(p>>31)*2+1,y=p>>>20&2047,m=4294967296*(p&1048575)+c;return y===2047?m?NaN:h*(1/0):y===0?h*5e-324*m:h*Math.pow(2,y-1075)*(m+4503599627370496)}s.readDoubleLE=i.bind(null,r,0,4),s.readDoubleBE=i.bind(null,a,4,0)}(),s}function t(s,o,i){o[i]=s&255,o[i+1]=s>>>8&255,o[i+2]=s>>>16&255,o[i+3]=s>>>24}function n(s,o,i){o[i]=s>>>24,o[i+1]=s>>>16&255,o[i+2]=s>>>8&255,o[i+3]=s&255}function r(s,o){return(s[o]|s[o+1]<<8|s[o+2]<<16|s[o+3]<<24)>>>0}function a(s,o){return(s[o]<<24|s[o+1]<<16|s[o+2]<<8|s[o+3])>>>0}return float}var inquire_1,hasRequiredInquire;function requireInquire(){if(hasRequiredInquire)return inquire_1;hasRequiredInquire=1,inquire_1=inquire;function inquire(moduleName){try{var mod=eval("quire".replace(/^/,"re"))(moduleName);if(mod&&(mod.length||Object.keys(mod).length))return mod}catch(e){}return null}return inquire_1}var utf8={},hasRequiredUtf8;function requireUtf8(){return hasRequiredUtf8||(hasRequiredUtf8=1,function(e){var t=e;t.length=function(r){for(var a=0,s=0,o=0;o<r.length;++o)s=r.charCodeAt(o),s<128?a+=1:s<2048?a+=2:(s&64512)===55296&&(r.charCodeAt(o+1)&64512)===56320?(++o,a+=4):a+=3;return a},t.read=function(r,a,s){var o=s-a;if(o<1)return"";for(var i=null,u=[],l=0,v;a<s;)v=r[a++],v<128?u[l++]=v:v>191&&v<224?u[l++]=(v&31)<<6|r[a++]&63:v>239&&v<365?(v=((v&7)<<18|(r[a++]&63)<<12|(r[a++]&63)<<6|r[a++]&63)-65536,u[l++]=55296+(v>>10),u[l++]=56320+(v&1023)):u[l++]=(v&15)<<12|(r[a++]&63)<<6|r[a++]&63,l>8191&&((i||(i=[])).push(String.fromCharCode.apply(String,u)),l=0);return i?(l&&i.push(String.fromCharCode.apply(String,u.slice(0,l))),i.join("")):String.fromCharCode.apply(String,u.slice(0,l))},t.write=function(r,a,s){for(var o=s,i,u,l=0;l<r.length;++l)i=r.charCodeAt(l),i<128?a[s++]=i:i<2048?(a[s++]=i>>6|192,a[s++]=i&63|128):(i&64512)===55296&&((u=r.charCodeAt(l+1))&64512)===56320?(i=65536+((i&1023)<<10)+(u&1023),++l,a[s++]=i>>18|240,a[s++]=i>>12&63|128,a[s++]=i>>6&63|128,a[s++]=i&63|128):(a[s++]=i>>12|224,a[s++]=i>>6&63|128,a[s++]=i&63|128);return s-o}}(utf8)),utf8}var pool_1,hasRequiredPool;function requirePool(){if(hasRequiredPool)return pool_1;hasRequiredPool=1,pool_1=e;function e(t,n,r){var a=r||8192,s=a>>>1,o=null,i=a;return function(l){if(l<1||l>s)return t(l);i+l>a&&(o=t(a),i=0);var v=n.call(o,i,i+=l);return i&7&&(i=(i|7)+1),v}}return pool_1}var longbits,hasRequiredLongbits;function requireLongbits(){if(hasRequiredLongbits)return longbits;hasRequiredLongbits=1,longbits=t;var e=requireMinimal();function t(s,o){this.lo=s>>>0,this.hi=o>>>0}var n=t.zero=new t(0,0);n.toNumber=function(){return 0},n.zzEncode=n.zzDecode=function(){return this},n.length=function(){return 1};var r=t.zeroHash="\0\0\0\0\0\0\0\0";t.fromNumber=function(o){if(o===0)return n;var i=o<0;i&&(o=-o);var u=o>>>0,l=(o-u)/4294967296>>>0;return i&&(l=~l>>>0,u=~u>>>0,++u>4294967295&&(u=0,++l>4294967295&&(l=0))),new t(u,l)},t.from=function(o){if(typeof o=="number")return t.fromNumber(o);if(e.isString(o))if(e.Long)o=e.Long.fromString(o);else return t.fromNumber(parseInt(o,10));return o.low||o.high?new t(o.low>>>0,o.high>>>0):n},t.prototype.toNumber=function(o){if(!o&&this.hi>>>31){var i=~this.lo+1>>>0,u=~this.hi>>>0;return i||(u=u+1>>>0),-(i+u*4294967296)}return this.lo+this.hi*4294967296},t.prototype.toLong=function(o){return e.Long?new e.Long(this.lo|0,this.hi|0,!!o):{low:this.lo|0,high:this.hi|0,unsigned:!!o}};var a=String.prototype.charCodeAt;return t.fromHash=function(o){return o===r?n:new t((a.call(o,0)|a.call(o,1)<<8|a.call(o,2)<<16|a.call(o,3)<<24)>>>0,(a.call(o,4)|a.call(o,5)<<8|a.call(o,6)<<16|a.call(o,7)<<24)>>>0)},t.prototype.toHash=function(){return String.fromCharCode(this.lo&255,this.lo>>>8&255,this.lo>>>16&255,this.lo>>>24,this.hi&255,this.hi>>>8&255,this.hi>>>16&255,this.hi>>>24)},t.prototype.zzEncode=function(){var o=this.hi>>31;return this.hi=((this.hi<<1|this.lo>>>31)^o)>>>0,this.lo=(this.lo<<1^o)>>>0,this},t.prototype.zzDecode=function(){var o=-(this.lo&1);return this.lo=((this.lo>>>1|this.hi<<31)^o)>>>0,this.hi=(this.hi>>>1^o)>>>0,this},t.prototype.length=function(){var o=this.lo,i=(this.lo>>>28|this.hi<<4)>>>0,u=this.hi>>>24;return u===0?i===0?o<16384?o<128?1:2:o<2097152?3:4:i<16384?i<128?5:6:i<2097152?7:8:u<128?9:10},longbits}var hasRequiredMinimal;function requireMinimal(){return hasRequiredMinimal||(hasRequiredMinimal=1,function(e){var t=e;t.asPromise=requireAspromise(),t.base64=requireBase64(),t.EventEmitter=requireEventemitter(),t.float=requireFloat(),t.inquire=requireInquire(),t.utf8=requireUtf8(),t.pool=requirePool(),t.LongBits=requireLongbits(),t.isNode=!!(typeof commonjsGlobal<"u"&&commonjsGlobal&&commonjsGlobal.process&&commonjsGlobal.process.versions&&commonjsGlobal.process.versions.node),t.global=t.isNode&&commonjsGlobal||typeof window<"u"&&window||typeof self<"u"&&self||minimal,t.emptyArray=Object.freeze?Object.freeze([]):[],t.emptyObject=Object.freeze?Object.freeze({}):{},t.isInteger=Number.isInteger||function(s){return typeof s=="number"&&isFinite(s)&&Math.floor(s)===s},t.isString=function(s){return typeof s=="string"||s instanceof String},t.isObject=function(s){return s&&typeof s=="object"},t.isset=t.isSet=function(s,o){var i=s[o];return i!=null&&s.hasOwnProperty(o)?typeof i!="object"||(Array.isArray(i)?i.length:Object.keys(i).length)>0:!1},t.Buffer=function(){try{var a=t.inquire("buffer").Buffer;return a.prototype.utf8Write?a:null}catch{return null}}(),t._Buffer_from=null,t._Buffer_allocUnsafe=null,t.newBuffer=function(s){return typeof s=="number"?t.Buffer?t._Buffer_allocUnsafe(s):new t.Array(s):t.Buffer?t._Buffer_from(s):typeof Uint8Array>"u"?s:new Uint8Array(s)},t.Array=typeof Uint8Array<"u"?Uint8Array:Array,t.Long=t.global.dcodeIO&&t.global.dcodeIO.Long||t.global.Long||t.inquire("long"),t.key2Re=/^true|false|0|1$/,t.key32Re=/^-?(?:0|[1-9][0-9]*)$/,t.key64Re=/^(?:[\\x00-\\xff]{8}|-?(?:0|[1-9][0-9]*))$/,t.longToHash=function(s){return s?t.LongBits.from(s).toHash():t.LongBits.zeroHash},t.longFromHash=function(s,o){var i=t.LongBits.fromHash(s);return t.Long?t.Long.fromBits(i.lo,i.hi,o):i.toNumber(!!o)};function n(a,s,o){for(var i=Object.keys(s),u=0;u<i.length;++u)(a[i[u]]===void 0||!o)&&(a[i[u]]=s[i[u]]);return a}t.merge=n,t.lcFirst=function(s){return s.charAt(0).toLowerCase()+s.substring(1)};function r(a){function s(o,i){if(!(this instanceof s))return new s(o,i);Object.defineProperty(this,"message",{get:function(){return o}}),Error.captureStackTrace?Error.captureStackTrace(this,s):Object.defineProperty(this,"stack",{value:new Error().stack||""}),i&&n(this,i)}return s.prototype=Object.create(Error.prototype,{constructor:{value:s,writable:!0,enumerable:!1,configurable:!0},name:{get:function(){return a},set:void 0,enumerable:!1,configurable:!0},toString:{value:function(){return this.name+": "+this.message},writable:!0,enumerable:!1,configurable:!0}}),s}t.newError=r,t.ProtocolError=r("ProtocolError"),t.oneOfGetter=function(s){for(var o={},i=0;i<s.length;++i)o[s[i]]=1;return function(){for(var u=Object.keys(this),l=u.length-1;l>-1;--l)if(o[u[l]]===1&&this[u[l]]!==void 0&&this[u[l]]!==null)return u[l]}},t.oneOfSetter=function(s){return function(o){for(var i=0;i<s.length;++i)s[i]!==o&&delete this[s[i]]}},t.toJSONOptions={longs:String,enums:String,bytes:String,json:!0},t._configure=function(){var a=t.Buffer;if(!a){t._Buffer_from=t._Buffer_allocUnsafe=null;return}t._Buffer_from=a.from!==Uint8Array.from&&a.from||function(o,i){return new a(o,i)},t._Buffer_allocUnsafe=a.allocUnsafe||function(o){return new a(o)}}}(minimal)),minimal}var writer,hasRequiredWriter;function requireWriter(){if(hasRequiredWriter)return writer;hasRequiredWriter=1,writer=u;var e=requireMinimal(),t,n=e.LongBits,r=e.base64,a=e.utf8;function s(y,m,_){this.fn=y,this.len=m,this.next=void 0,this.val=_}function o(){}function i(y){this.head=y.head,this.tail=y.tail,this.len=y.len,this.next=y.states}function u(){this.len=0,this.head=new s(o,0,0),this.tail=this.head,this.states=null}var l=function(){return e.Buffer?function(){return(u.create=function(){return new t})()}:function(){return new u}};u.create=l(),u.alloc=function(m){return new e.Array(m)},e.Array!==Array&&(u.alloc=e.pool(u.alloc,e.Array.prototype.subarray)),u.prototype._push=function(m,_,b){return this.tail=this.tail.next=new s(m,_,b),this.len+=_,this};function v(y,m,_){m[_]=y&255}function d(y,m,_){for(;y>127;)m[_++]=y&127|128,y>>>=7;m[_]=y}function f(y,m){this.len=y,this.next=void 0,this.val=m}f.prototype=Object.create(s.prototype),f.prototype.fn=d,u.prototype.uint32=function(m){return this.len+=(this.tail=this.tail.next=new f((m=m>>>0)<128?1:m<16384?2:m<2097152?3:m<268435456?4:5,m)).len,this},u.prototype.int32=function(m){return m<0?this._push(c,10,n.fromNumber(m)):this.uint32(m)},u.prototype.sint32=function(m){return this.uint32((m<<1^m>>31)>>>0)};function c(y,m,_){for(;y.hi;)m[_++]=y.lo&127|128,y.lo=(y.lo>>>7|y.hi<<25)>>>0,y.hi>>>=7;for(;y.lo>127;)m[_++]=y.lo&127|128,y.lo=y.lo>>>7;m[_++]=y.lo}u.prototype.uint64=function(m){var _=n.from(m);return this._push(c,_.length(),_)},u.prototype.int64=u.prototype.uint64,u.prototype.sint64=function(m){var _=n.from(m).zzEncode();return this._push(c,_.length(),_)},u.prototype.bool=function(m){return this._push(v,1,m?1:0)};function p(y,m,_){m[_]=y&255,m[_+1]=y>>>8&255,m[_+2]=y>>>16&255,m[_+3]=y>>>24}u.prototype.fixed32=function(m){return this._push(p,4,m>>>0)},u.prototype.sfixed32=u.prototype.fixed32,u.prototype.fixed64=function(m){var _=n.from(m);return this._push(p,4,_.lo)._push(p,4,_.hi)},u.prototype.sfixed64=u.prototype.fixed64,u.prototype.float=function(m){return this._push(e.float.writeFloatLE,4,m)},u.prototype.double=function(m){return this._push(e.float.writeDoubleLE,8,m)};var h=e.Array.prototype.set?function(m,_,b){_.set(m,b)}:function(m,_,b){for(var g=0;g<m.length;++g)_[b+g]=m[g]};return u.prototype.bytes=function(m){var _=m.length>>>0;if(!_)return this._push(v,1,0);if(e.isString(m)){var b=u.alloc(_=r.length(m));r.decode(m,b,0),m=b}return this.uint32(_)._push(h,_,m)},u.prototype.string=function(m){var _=a.length(m);return _?this.uint32(_)._push(a.write,_,m):this._push(v,1,0)},u.prototype.fork=function(){return this.states=new i(this),this.head=this.tail=new s(o,0,0),this.len=0,this},u.prototype.reset=function(){return this.states?(this.head=this.states.head,this.tail=this.states.tail,this.len=this.states.len,this.states=this.states.next):(this.head=this.tail=new s(o,0,0),this.len=0),this},u.prototype.ldelim=function(){var m=this.head,_=this.tail,b=this.len;return this.reset().uint32(b),b&&(this.tail.next=m.next,this.tail=_,this.len+=b),this},u.prototype.finish=function(){for(var m=this.head.next,_=this.constructor.alloc(this.len),b=0;m;)m.fn(m.val,_,b),b+=m.len,m=m.next;return _},u._configure=function(y){t=y,u.create=l(),t._configure()},writer}var writer_buffer,hasRequiredWriter_buffer;function requireWriter_buffer(){if(hasRequiredWriter_buffer)return writer_buffer;hasRequiredWriter_buffer=1,writer_buffer=n;var e=requireWriter();(n.prototype=Object.create(e.prototype)).constructor=n;var t=requireMinimal();function n(){e.call(this)}n._configure=function(){n.alloc=t._Buffer_allocUnsafe,n.writeBytesBuffer=t.Buffer&&t.Buffer.prototype instanceof Uint8Array&&t.Buffer.prototype.set.name==="set"?function(s,o,i){o.set(s,i)}:function(s,o,i){if(s.copy)s.copy(o,i,0,s.length);else for(var u=0;u<s.length;)o[i++]=s[u++]}},n.prototype.bytes=function(s){t.isString(s)&&(s=t._Buffer_from(s,"base64"));var o=s.length>>>0;return this.uint32(o),o&&this._push(n.writeBytesBuffer,o,s),this};function r(a,s,o){a.length<40?t.utf8.write(a,s,o):s.utf8Write?s.utf8Write(a,o):s.write(a,o)}return n.prototype.string=function(s){var o=t.Buffer.byteLength(s);return this.uint32(o),o&&this._push(r,o,s),this},n._configure(),writer_buffer}var reader,hasRequiredReader;function requireReader(){if(hasRequiredReader)return reader;hasRequiredReader=1,reader=s;var e=requireMinimal(),t,n=e.LongBits,r=e.utf8;function a(d,f){return RangeError("index out of range: "+d.pos+" + "+(f||1)+" > "+d.len)}function s(d){this.buf=d,this.pos=0,this.len=d.length}var o=typeof Uint8Array<"u"?function(f){if(f instanceof Uint8Array||Array.isArray(f))return new s(f);throw Error("illegal buffer")}:function(f){if(Array.isArray(f))return new s(f);throw Error("illegal buffer")},i=function(){return e.Buffer?function(c){return(s.create=function(h){return e.Buffer.isBuffer(h)?new t(h):o(h)})(c)}:o};s.create=i(),s.prototype._slice=e.Array.prototype.subarray||e.Array.prototype.slice,s.prototype.uint32=function(){var f=4294967295;return function(){if(f=(this.buf[this.pos]&127)>>>0,this.buf[this.pos++]<128||(f=(f|(this.buf[this.pos]&127)<<7)>>>0,this.buf[this.pos++]<128)||(f=(f|(this.buf[this.pos]&127)<<14)>>>0,this.buf[this.pos++]<128)||(f=(f|(this.buf[this.pos]&127)<<21)>>>0,this.buf[this.pos++]<128)||(f=(f|(this.buf[this.pos]&15)<<28)>>>0,this.buf[this.pos++]<128))return f;if((this.pos+=5)>this.len)throw this.pos=this.len,a(this,10);return f}}(),s.prototype.int32=function(){return this.uint32()|0},s.prototype.sint32=function(){var f=this.uint32();return f>>>1^-(f&1)|0};function u(){var d=new n(0,0),f=0;if(this.len-this.pos>4){for(;f<4;++f)if(d.lo=(d.lo|(this.buf[this.pos]&127)<<f*7)>>>0,this.buf[this.pos++]<128)return d;if(d.lo=(d.lo|(this.buf[this.pos]&127)<<28)>>>0,d.hi=(d.hi|(this.buf[this.pos]&127)>>4)>>>0,this.buf[this.pos++]<128)return d;f=0}else{for(;f<3;++f){if(this.pos>=this.len)throw a(this);if(d.lo=(d.lo|(this.buf[this.pos]&127)<<f*7)>>>0,this.buf[this.pos++]<128)return d}return d.lo=(d.lo|(this.buf[this.pos++]&127)<<f*7)>>>0,d}if(this.len-this.pos>4){for(;f<5;++f)if(d.hi=(d.hi|(this.buf[this.pos]&127)<<f*7+3)>>>0,this.buf[this.pos++]<128)return d}else for(;f<5;++f){if(this.pos>=this.len)throw a(this);if(d.hi=(d.hi|(this.buf[this.pos]&127)<<f*7+3)>>>0,this.buf[this.pos++]<128)return d}throw Error("invalid varint encoding")}s.prototype.bool=function(){return this.uint32()!==0};function l(d,f){return(d[f-4]|d[f-3]<<8|d[f-2]<<16|d[f-1]<<24)>>>0}s.prototype.fixed32=function(){if(this.pos+4>this.len)throw a(this,4);return l(this.buf,this.pos+=4)},s.prototype.sfixed32=function(){if(this.pos+4>this.len)throw a(this,4);return l(this.buf,this.pos+=4)|0};function v(){if(this.pos+8>this.len)throw a(this,8);return new n(l(this.buf,this.pos+=4),l(this.buf,this.pos+=4))}return s.prototype.float=function(){if(this.pos+4>this.len)throw a(this,4);var f=e.float.readFloatLE(this.buf,this.pos);return this.pos+=4,f},s.prototype.double=function(){if(this.pos+8>this.len)throw a(this,4);var f=e.float.readDoubleLE(this.buf,this.pos);return this.pos+=8,f},s.prototype.bytes=function(){var f=this.uint32(),c=this.pos,p=this.pos+f;if(p>this.len)throw a(this,f);if(this.pos+=f,Array.isArray(this.buf))return this.buf.slice(c,p);if(c===p){var h=e.Buffer;return h?h.alloc(0):new this.buf.constructor(0)}return this._slice.call(this.buf,c,p)},s.prototype.string=function(){var f=this.bytes();return r.read(f,0,f.length)},s.prototype.skip=function(f){if(typeof f=="number"){if(this.pos+f>this.len)throw a(this,f);this.pos+=f}else do if(this.pos>=this.len)throw a(this);while(this.buf[this.pos++]&128);return this},s.prototype.skipType=function(d){switch(d){case 0:this.skip();break;case 1:this.skip(8);break;case 2:this.skip(this.uint32());break;case 3:for(;(d=this.uint32()&7)!==4;)this.skipType(d);break;case 5:this.skip(4);break;default:throw Error("invalid wire type "+d+" at offset "+this.pos)}return this},s._configure=function(d){t=d,s.create=i(),t._configure();var f=e.Long?"toLong":"toNumber";e.merge(s.prototype,{int64:function(){return u.call(this)[f](!1)},uint64:function(){return u.call(this)[f](!0)},sint64:function(){return u.call(this).zzDecode()[f](!1)},fixed64:function(){return v.call(this)[f](!0)},sfixed64:function(){return v.call(this)[f](!1)}})},reader}var reader_buffer,hasRequiredReader_buffer;function requireReader_buffer(){if(hasRequiredReader_buffer)return reader_buffer;hasRequiredReader_buffer=1,reader_buffer=n;var e=requireReader();(n.prototype=Object.create(e.prototype)).constructor=n;var t=requireMinimal();function n(r){e.call(this,r)}return n._configure=function(){t.Buffer&&(n.prototype._slice=t.Buffer.prototype.slice)},n.prototype.string=function(){var a=this.uint32();return this.buf.utf8Slice?this.buf.utf8Slice(this.pos,this.pos=Math.min(this.pos+a,this.len)):this.buf.toString("utf-8",this.pos,this.pos=Math.min(this.pos+a,this.len))},n._configure(),reader_buffer}var rpc={},service$1,hasRequiredService$1;function requireService$1(){if(hasRequiredService$1)return service$1;hasRequiredService$1=1,service$1=t;var e=requireMinimal();(t.prototype=Object.create(e.EventEmitter.prototype)).constructor=t;function t(n,r,a){if(typeof n!="function")throw TypeError("rpcImpl must be a function");e.EventEmitter.call(this),this.rpcImpl=n,this.requestDelimited=!!r,this.responseDelimited=!!a}return t.prototype.rpcCall=function n(r,a,s,o,i){if(!o)throw TypeError("request must be specified");var u=this;if(!i)return e.asPromise(n,u,r,a,s,o);if(!u.rpcImpl){setTimeout(function(){i(Error("already ended"))},0);return}try{return u.rpcImpl(r,a[u.requestDelimited?"encodeDelimited":"encode"](o).finish(),function(v,d){if(v)return u.emit("error",v,r),i(v);if(d===null){u.end(!0);return}if(!(d instanceof s))try{d=s[u.responseDelimited?"decodeDelimited":"decode"](d)}catch(f){return u.emit("error",f,r),i(f)}return u.emit("data",d,r),i(null,d)})}catch(l){u.emit("error",l,r),setTimeout(function(){i(l)},0);return}},t.prototype.end=function(r){return this.rpcImpl&&(r||this.rpcImpl(null,null,null),this.rpcImpl=null,this.emit("end").off()),this},service$1}var hasRequiredRpc;function requireRpc(){return hasRequiredRpc||(hasRequiredRpc=1,function(e){var t=e;t.Service=requireService$1()}(rpc)),rpc}var roots,hasRequiredRoots;function requireRoots(){return hasRequiredRoots||(hasRequiredRoots=1,roots={}),roots}var hasRequiredIndexMinimal;function requireIndexMinimal(){return hasRequiredIndexMinimal||(hasRequiredIndexMinimal=1,function(e){var t=e;t.build="minimal",t.Writer=requireWriter(),t.BufferWriter=requireWriter_buffer(),t.Reader=requireReader(),t.BufferReader=requireReader_buffer(),t.util=requireMinimal(),t.rpc=requireRpc(),t.roots=requireRoots(),t.configure=n;function n(){t.util._configure(),t.Writer._configure(t.BufferWriter),t.Reader._configure(t.BufferReader)}n()}(indexMinimal)),indexMinimal}var types={},util={exports:{}},codegen_1,hasRequiredCodegen;function requireCodegen(){if(hasRequiredCodegen)return codegen_1;hasRequiredCodegen=1,codegen_1=e;function e(t,n){typeof t=="string"&&(n=t,t=void 0);var r=[];function a(o){if(typeof o!="string"){var i=s();if(e.verbose&&console.log("codegen: "+i),i="return "+i,o){for(var u=Object.keys(o),l=new Array(u.length+1),v=new Array(u.length),d=0;d<u.length;)l[d]=u[d],v[d]=o[u[d++]];return l[d]=i,Function.apply(null,l).apply(null,v)}return Function(i)()}for(var f=new Array(arguments.length-1),c=0;c<f.length;)f[c]=arguments[++c];if(c=0,o=o.replace(/%([%dfijs])/g,function(h,y){var m=f[c++];switch(y){case"d":case"f":return String(Number(m));case"i":return String(Math.floor(m));case"j":return JSON.stringify(m);case"s":return String(m)}return"%"}),c!==f.length)throw Error("parameter count mismatch");return r.push(o),a}function s(o){return"function "+(o||n||"")+"("+(t&&t.join(",")||"")+`){
|
|
2
2
|
`+r.join(`
|
|
3
3
|
`)+`
|
|
4
4
|
}`}return a.toString=s,a}return e.verbose=!1,codegen_1}var fetch_1,hasRequiredFetch;function requireFetch(){if(hasRequiredFetch)return fetch_1;hasRequiredFetch=1,fetch_1=r;var e=requireAspromise(),t=requireInquire(),n=t("fs");function r(a,s,o){return typeof s=="function"?(o=s,s={}):s||(s={}),o?!s.xhr&&n&&n.readFile?n.readFile(a,function(u,l){return u&&typeof XMLHttpRequest<"u"?r.xhr(a,s,o):u?o(u):o(null,s.binary?l:l.toString("utf8"))}):r.xhr(a,s,o):e(r,this,a,s)}return r.xhr=function(s,o,i){var u=new XMLHttpRequest;u.onreadystatechange=function(){if(u.readyState===4){if(u.status!==0&&u.status!==200)return i(Error("status "+u.status));if(o.binary){var v=u.response;if(!v){v=[];for(var d=0;d<u.responseText.length;++d)v.push(u.responseText.charCodeAt(d)&255)}return i(null,typeof Uint8Array<"u"?new Uint8Array(v):v)}return i(null,u.responseText)}},o.binary&&("overrideMimeType"in u&&u.overrideMimeType("text/plain; charset=x-user-defined"),u.responseType="arraybuffer"),u.open("GET",s),u.send()},fetch_1}var path={},hasRequiredPath;function requirePath(){return hasRequiredPath||(hasRequiredPath=1,function(e){var t=e,n=t.isAbsolute=function(s){return/^(?:\/|\w+:)/.test(s)},r=t.normalize=function(s){s=s.replace(/\\/g,"/").replace(/\/{2,}/g,"/");var o=s.split("/"),i=n(s),u="";i&&(u=o.shift()+"/");for(var l=0;l<o.length;)o[l]===".."?l>0&&o[l-1]!==".."?o.splice(--l,2):i?o.splice(l,1):++l:o[l]==="."?o.splice(l,1):++l;return u+o.join("/")};t.resolve=function(s,o,i){return i||(o=r(o)),n(o)?o:(i||(s=r(s)),(s=s.replace(/(?:\/|^)[^/]+$/,"")).length?r(s+"/"+o):o)}}(path)),path}var namespace,hasRequiredNamespace;function requireNamespace(){if(hasRequiredNamespace)return namespace;hasRequiredNamespace=1,namespace=u;var e=requireObject();((u.prototype=Object.create(e.prototype)).constructor=u).className="Namespace";var t=requireField(),n=requireUtil(),r=requireOneof(),a,s,o;u.fromJSON=function(d,f){return new u(d,f.options).addJSON(f.nested)};function i(v,d){if(v&&v.length){for(var f={},c=0;c<v.length;++c)f[v[c].name]=v[c].toJSON(d);return f}}u.arrayToJSON=i,u.isReservedId=function(d,f){if(d){for(var c=0;c<d.length;++c)if(typeof d[c]!="string"&&d[c][0]<=f&&d[c][1]>f)return!0}return!1},u.isReservedName=function(d,f){if(d){for(var c=0;c<d.length;++c)if(d[c]===f)return!0}return!1};function u(v,d){e.call(this,v,d),this.nested=void 0,this._nestedArray=null,this._lookupCache={},this._needsRecursiveFeatureResolution=!0,this._needsRecursiveResolve=!0}function l(v){v._nestedArray=null,v._lookupCache={};for(var d=v;d=d.parent;)d._lookupCache={};return v}return Object.defineProperty(u.prototype,"nestedArray",{get:function(){return this._nestedArray||(this._nestedArray=n.toArray(this.nested))}}),u.prototype.toJSON=function(d){return n.toObject(["options",this.options,"nested",i(this.nestedArray,d)])},u.prototype.addJSON=function(d){var f=this;if(d)for(var c=Object.keys(d),p=0,h;p<c.length;++p)h=d[c[p]],f.add((h.fields!==void 0?a.fromJSON:h.values!==void 0?o.fromJSON:h.methods!==void 0?s.fromJSON:h.id!==void 0?t.fromJSON:u.fromJSON)(c[p],h));return this},u.prototype.get=function(d){return this.nested&&this.nested[d]||null},u.prototype.getEnum=function(d){if(this.nested&&this.nested[d]instanceof o)return this.nested[d].values;throw Error("no such enum: "+d)},u.prototype.add=function(d){if(!(d instanceof t&&d.extend!==void 0||d instanceof a||d instanceof r||d instanceof o||d instanceof s||d instanceof u))throw TypeError("object must be a valid nested object");if(!this.nested)this.nested={};else{var f=this.get(d.name);if(f)if(f instanceof u&&d instanceof u&&!(f instanceof a||f instanceof s)){for(var c=f.nestedArray,p=0;p<c.length;++p)d.add(c[p]);this.remove(f),this.nested||(this.nested={}),d.setOptions(f.options,!0)}else throw Error("duplicate name '"+d.name+"' in "+this)}this.nested[d.name]=d,this instanceof a||this instanceof s||this instanceof o||this instanceof t||d._edition||(d._edition=d._defaultEdition),this._needsRecursiveFeatureResolution=!0,this._needsRecursiveResolve=!0;for(var h=this;h=h.parent;)h._needsRecursiveFeatureResolution=!0,h._needsRecursiveResolve=!0;return d.onAdd(this),l(this)},u.prototype.remove=function(d){if(!(d instanceof e))throw TypeError("object must be a ReflectionObject");if(d.parent!==this)throw Error(d+" is not a member of "+this);return delete this.nested[d.name],Object.keys(this.nested).length||(this.nested=void 0),d.onRemove(this),l(this)},u.prototype.define=function(d,f){if(n.isString(d))d=d.split(".");else if(!Array.isArray(d))throw TypeError("illegal path");if(d&&d.length&&d[0]==="")throw Error("path must be relative");for(var c=this;d.length>0;){var p=d.shift();if(c.nested&&c.nested[p]){if(c=c.nested[p],!(c instanceof u))throw Error("path conflicts with non-namespace objects")}else c.add(c=new u(p))}return f&&c.addJSON(f),c},u.prototype.resolveAll=function(){if(!this._needsRecursiveResolve)return this;this._resolveFeaturesRecursive(this._edition);var d=this.nestedArray,f=0;for(this.resolve();f<d.length;)d[f]instanceof u?d[f++].resolveAll():d[f++].resolve();return this._needsRecursiveResolve=!1,this},u.prototype._resolveFeaturesRecursive=function(d){return this._needsRecursiveFeatureResolution?(this._needsRecursiveFeatureResolution=!1,d=this._edition||d,e.prototype._resolveFeaturesRecursive.call(this,d),this.nestedArray.forEach(f=>{f._resolveFeaturesRecursive(d)}),this):this},u.prototype.lookup=function(d,f,c){if(typeof f=="boolean"?(c=f,f=void 0):f&&!Array.isArray(f)&&(f=[f]),n.isString(d)&&d.length){if(d===".")return this.root;d=d.split(".")}else if(!d.length)return this;var p=d.join(".");if(d[0]==="")return this.root.lookup(d.slice(1),f);var h=this.root._fullyQualifiedObjects&&this.root._fullyQualifiedObjects["."+p];if(h&&(!f||f.indexOf(h.constructor)>-1)||(h=this._lookupImpl(d,p),h&&(!f||f.indexOf(h.constructor)>-1)))return h;if(c)return null;for(var y=this;y.parent;){if(h=y.parent._lookupImpl(d,p),h&&(!f||f.indexOf(h.constructor)>-1))return h;y=y.parent}return null},u.prototype._lookupImpl=function(d,f){if(Object.prototype.hasOwnProperty.call(this._lookupCache,f))return this._lookupCache[f];var c=this.get(d[0]),p=null;if(c)d.length===1?p=c:c instanceof u&&(d=d.slice(1),p=c._lookupImpl(d,d.join(".")));else for(var h=0;h<this.nestedArray.length;++h)this._nestedArray[h]instanceof u&&(c=this._nestedArray[h]._lookupImpl(d,f))&&(p=c);return this._lookupCache[f]=p,p},u.prototype.lookupType=function(d){var f=this.lookup(d,[a]);if(!f)throw Error("no such type: "+d);return f},u.prototype.lookupEnum=function(d){var f=this.lookup(d,[o]);if(!f)throw Error("no such Enum '"+d+"' in "+this);return f},u.prototype.lookupTypeOrEnum=function(d){var f=this.lookup(d,[a,o]);if(!f)throw Error("no such Type or Enum '"+d+"' in "+this);return f},u.prototype.lookupService=function(d){var f=this.lookup(d,[s]);if(!f)throw Error("no such Service '"+d+"' in "+this);return f},u._configure=function(v,d,f){a=v,s=d,o=f},namespace}var mapfield,hasRequiredMapfield;function requireMapfield(){if(hasRequiredMapfield)return mapfield;hasRequiredMapfield=1,mapfield=r;var e=requireField();((r.prototype=Object.create(e.prototype)).constructor=r).className="MapField";var t=requireTypes(),n=requireUtil();function r(a,s,o,i,u,l){if(e.call(this,a,s,i,void 0,void 0,u,l),!n.isString(o))throw TypeError("keyType must be a string");this.keyType=o,this.resolvedKeyType=null,this.map=!0}return r.fromJSON=function(s,o){return new r(s,o.id,o.keyType,o.type,o.options,o.comment)},r.prototype.toJSON=function(s){var o=s?!!s.keepComments:!1;return n.toObject(["keyType",this.keyType,"type",this.type,"id",this.id,"extend",this.extend,"options",this.options,"comment",o?this.comment:void 0])},r.prototype.resolve=function(){if(this.resolved)return this;if(t.mapKey[this.keyType]===void 0)throw Error("invalid key type: "+this.keyType);return e.prototype.resolve.call(this)},r.d=function(s,o,i){return typeof i=="function"?i=n.decorateType(i).name:i&&typeof i=="object"&&(i=n.decorateEnum(i).name),function(l,v){n.decorateType(l.constructor).add(new r(v,s,o,i))}},mapfield}var method,hasRequiredMethod;function requireMethod(){if(hasRequiredMethod)return method;hasRequiredMethod=1,method=n;var e=requireObject();((n.prototype=Object.create(e.prototype)).constructor=n).className="Method";var t=requireUtil();function n(r,a,s,o,i,u,l,v,d){if(t.isObject(i)?(l=i,i=u=void 0):t.isObject(u)&&(l=u,u=void 0),!(a===void 0||t.isString(a)))throw TypeError("type must be a string");if(!t.isString(s))throw TypeError("requestType must be a string");if(!t.isString(o))throw TypeError("responseType must be a string");e.call(this,r,l),this.type=a||"rpc",this.requestType=s,this.requestStream=i?!0:void 0,this.responseType=o,this.responseStream=u?!0:void 0,this.resolvedRequestType=null,this.resolvedResponseType=null,this.comment=v,this.parsedOptions=d}return n.fromJSON=function(a,s){return new n(a,s.type,s.requestType,s.responseType,s.requestStream,s.responseStream,s.options,s.comment,s.parsedOptions)},n.prototype.toJSON=function(a){var s=a?!!a.keepComments:!1;return t.toObject(["type",this.type!=="rpc"&&this.type||void 0,"requestType",this.requestType,"requestStream",this.requestStream,"responseType",this.responseType,"responseStream",this.responseStream,"options",this.options,"comment",s?this.comment:void 0,"parsedOptions",this.parsedOptions])},n.prototype.resolve=function(){return this.resolved?this:(this.resolvedRequestType=this.parent.lookupType(this.requestType),this.resolvedResponseType=this.parent.lookupType(this.responseType),e.prototype.resolve.call(this))},method}var service,hasRequiredService;function requireService(){if(hasRequiredService)return service;hasRequiredService=1,service=a;var e=requireNamespace();((a.prototype=Object.create(e.prototype)).constructor=a).className="Service";var t=requireMethod(),n=requireUtil(),r=requireRpc();function a(o,i){e.call(this,o,i),this.methods={},this._methodsArray=null}a.fromJSON=function(i,u){var l=new a(i,u.options);if(u.methods)for(var v=Object.keys(u.methods),d=0;d<v.length;++d)l.add(t.fromJSON(v[d],u.methods[v[d]]));return u.nested&&l.addJSON(u.nested),u.edition&&(l._edition=u.edition),l.comment=u.comment,l._defaultEdition="proto3",l},a.prototype.toJSON=function(i){var u=e.prototype.toJSON.call(this,i),l=i?!!i.keepComments:!1;return n.toObject(["edition",this._editionToJSON(),"options",u&&u.options||void 0,"methods",e.arrayToJSON(this.methodsArray,i)||{},"nested",u&&u.nested||void 0,"comment",l?this.comment:void 0])},Object.defineProperty(a.prototype,"methodsArray",{get:function(){return this._methodsArray||(this._methodsArray=n.toArray(this.methods))}});function s(o){return o._methodsArray=null,o}return a.prototype.get=function(i){return this.methods[i]||e.prototype.get.call(this,i)},a.prototype.resolveAll=function(){if(!this._needsRecursiveResolve)return this;e.prototype.resolve.call(this);for(var i=this.methodsArray,u=0;u<i.length;++u)i[u].resolve();return this},a.prototype._resolveFeaturesRecursive=function(i){return this._needsRecursiveFeatureResolution?(i=this._edition||i,e.prototype._resolveFeaturesRecursive.call(this,i),this.methodsArray.forEach(u=>{u._resolveFeaturesRecursive(i)}),this):this},a.prototype.add=function(i){if(this.get(i.name))throw Error("duplicate name '"+i.name+"' in "+this);return i instanceof t?(this.methods[i.name]=i,i.parent=this,s(this)):e.prototype.add.call(this,i)},a.prototype.remove=function(i){if(i instanceof t){if(this.methods[i.name]!==i)throw Error(i+" is not a member of "+this);return delete this.methods[i.name],i.parent=null,s(this)}return e.prototype.remove.call(this,i)},a.prototype.create=function(i,u,l){for(var v=new r.Service(i,u,l),d=0,f;d<this.methodsArray.length;++d){var c=n.lcFirst((f=this._methodsArray[d]).resolve().name).replace(/[^$\w_]/g,"");v[c]=n.codegen(["r","c"],n.isReserved(c)?c+"_":c)("return this.rpcCall(m,q,s,r,c)")({m:f,q:f.resolvedRequestType.ctor,s:f.resolvedResponseType.ctor})}return v},service}var message,hasRequiredMessage;function requireMessage(){if(hasRequiredMessage)return message;hasRequiredMessage=1,message=t;var e=requireMinimal();function t(n){if(n)for(var r=Object.keys(n),a=0;a<r.length;++a)this[r[a]]=n[r[a]]}return t.create=function(r){return this.$type.create(r)},t.encode=function(r,a){return this.$type.encode(r,a)},t.encodeDelimited=function(r,a){return this.$type.encodeDelimited(r,a)},t.decode=function(r){return this.$type.decode(r)},t.decodeDelimited=function(r){return this.$type.decodeDelimited(r)},t.verify=function(r){return this.$type.verify(r)},t.fromObject=function(r){return this.$type.fromObject(r)},t.toObject=function(r,a){return this.$type.toObject(r,a)},t.prototype.toJSON=function(){return this.$type.toObject(this,e.toJSONOptions)},message}var decoder_1,hasRequiredDecoder;function requireDecoder(){if(hasRequiredDecoder)return decoder_1;hasRequiredDecoder=1,decoder_1=a;var e=require_enum(),t=requireTypes(),n=requireUtil();function r(s){return"missing required '"+s.name+"'"}function a(s){for(var o=n.codegen(["r","l","e"],s.name+"$decode")("if(!(r instanceof Reader))")("r=Reader.create(r)")("var c=l===undefined?r.len:r.pos+l,m=new this.ctor"+(s.fieldsArray.filter(function(f){return f.map}).length?",k,value":""))("while(r.pos<c){")("var t=r.uint32()")("if(t===e)")("break")("switch(t>>>3){"),i=0;i<s.fieldsArray.length;++i){var u=s._fieldsArray[i].resolve(),l=u.resolvedType instanceof e?"int32":u.type,v="m"+n.safeProp(u.name);o("case %i: {",u.id),u.map?(o("if(%s===util.emptyObject)",v)("%s={}",v)("var c2 = r.uint32()+r.pos"),t.defaults[u.keyType]!==void 0?o("k=%j",t.defaults[u.keyType]):o("k=null"),t.defaults[l]!==void 0?o("value=%j",t.defaults[l]):o("value=null"),o("while(r.pos<c2){")("var tag2=r.uint32()")("switch(tag2>>>3){")("case 1: k=r.%s(); break",u.keyType)("case 2:"),t.basic[l]===void 0?o("value=types[%i].decode(r,r.uint32())",i):o("value=r.%s()",l),o("break")("default:")("r.skipType(tag2&7)")("break")("}")("}"),t.long[u.keyType]!==void 0?o('%s[typeof k==="object"?util.longToHash(k):k]=value',v):o("%s[k]=value",v)):u.repeated?(o("if(!(%s&&%s.length))",v,v)("%s=[]",v),t.packed[l]!==void 0&&o("if((t&7)===2){")("var c2=r.uint32()+r.pos")("while(r.pos<c2)")("%s.push(r.%s())",v,l)("}else"),t.basic[l]===void 0?o(u.delimited?"%s.push(types[%i].decode(r,undefined,((t&~7)|4)))":"%s.push(types[%i].decode(r,r.uint32()))",v,i):o("%s.push(r.%s())",v,l)):t.basic[l]===void 0?o(u.delimited?"%s=types[%i].decode(r,undefined,((t&~7)|4))":"%s=types[%i].decode(r,r.uint32())",v,i):o("%s=r.%s()",v,l),o("break")("}")}for(o("default:")("r.skipType(t&7)")("break")("}")("}"),i=0;i<s._fieldsArray.length;++i){var d=s._fieldsArray[i];d.required&&o("if(!m.hasOwnProperty(%j))",d.name)("throw util.ProtocolError(%j,{instance:m})",r(d))}return o("return m")}return decoder_1}var verifier_1,hasRequiredVerifier;function requireVerifier(){if(hasRequiredVerifier)return verifier_1;hasRequiredVerifier=1,verifier_1=s;var e=require_enum(),t=requireUtil();function n(o,i){return o.name+": "+i+(o.repeated&&i!=="array"?"[]":o.map&&i!=="object"?"{k:"+o.keyType+"}":"")+" expected"}function r(o,i,u,l){if(i.resolvedType)if(i.resolvedType instanceof e){o("switch(%s){",l)("default:")("return%j",n(i,"enum value"));for(var v=Object.keys(i.resolvedType.values),d=0;d<v.length;++d)o("case %i:",i.resolvedType.values[v[d]]);o("break")("}")}else o("{")("var e=types[%i].verify(%s);",u,l)("if(e)")("return%j+e",i.name+".")("}");else switch(i.type){case"int32":case"uint32":case"sint32":case"fixed32":case"sfixed32":o("if(!util.isInteger(%s))",l)("return%j",n(i,"integer"));break;case"int64":case"uint64":case"sint64":case"fixed64":case"sfixed64":o("if(!util.isInteger(%s)&&!(%s&&util.isInteger(%s.low)&&util.isInteger(%s.high)))",l,l,l,l)("return%j",n(i,"integer|Long"));break;case"float":case"double":o('if(typeof %s!=="number")',l)("return%j",n(i,"number"));break;case"bool":o('if(typeof %s!=="boolean")',l)("return%j",n(i,"boolean"));break;case"string":o("if(!util.isString(%s))",l)("return%j",n(i,"string"));break;case"bytes":o('if(!(%s&&typeof %s.length==="number"||util.isString(%s)))',l,l,l)("return%j",n(i,"buffer"));break}return o}function a(o,i,u){switch(i.keyType){case"int32":case"uint32":case"sint32":case"fixed32":case"sfixed32":o("if(!util.key32Re.test(%s))",u)("return%j",n(i,"integer key"));break;case"int64":case"uint64":case"sint64":case"fixed64":case"sfixed64":o("if(!util.key64Re.test(%s))",u)("return%j",n(i,"integer|Long key"));break;case"bool":o("if(!util.key2Re.test(%s))",u)("return%j",n(i,"boolean key"));break}return o}function s(o){var i=t.codegen(["m"],o.name+"$verify")('if(typeof m!=="object"||m===null)')("return%j","object expected"),u=o.oneofsArray,l={};u.length&&i("var p={}");for(var v=0;v<o.fieldsArray.length;++v){var d=o._fieldsArray[v].resolve(),f="m"+t.safeProp(d.name);if(d.optional&&i("if(%s!=null&&m.hasOwnProperty(%j)){",f,d.name),d.map)i("if(!util.isObject(%s))",f)("return%j",n(d,"object"))("var k=Object.keys(%s)",f)("for(var i=0;i<k.length;++i){"),a(i,d,"k[i]"),r(i,d,v,f+"[k[i]]")("}");else if(d.repeated)i("if(!Array.isArray(%s))",f)("return%j",n(d,"array"))("for(var i=0;i<%s.length;++i){",f),r(i,d,v,f+"[i]")("}");else{if(d.partOf){var c=t.safeProp(d.partOf.name);l[d.partOf.name]===1&&i("if(p%s===1)",c)("return%j",d.partOf.name+": multiple values"),l[d.partOf.name]=1,i("p%s=1",c)}r(i,d,v,f)}d.optional&&i("}")}return i("return null")}return verifier_1}var converter={},hasRequiredConverter;function requireConverter(){return hasRequiredConverter||(hasRequiredConverter=1,function(e){var t=e,n=require_enum(),r=requireUtil();function a(o,i,u,l){var v=!1;if(i.resolvedType)if(i.resolvedType instanceof n){o("switch(d%s){",l);for(var d=i.resolvedType.values,f=Object.keys(d),c=0;c<f.length;++c)d[f[c]]===i.typeDefault&&!v&&(o("default:")('if(typeof(d%s)==="number"){m%s=d%s;break}',l,l,l),i.repeated||o("break"),v=!0),o("case%j:",f[c])("case %i:",d[f[c]])("m%s=%j",l,d[f[c]])("break");o("}")}else o('if(typeof d%s!=="object")',l)("throw TypeError(%j)",i.fullName+": object expected")("m%s=types[%i].fromObject(d%s)",l,u,l);else{var p=!1;switch(i.type){case"double":case"float":o("m%s=Number(d%s)",l,l);break;case"uint32":case"fixed32":o("m%s=d%s>>>0",l,l);break;case"int32":case"sint32":case"sfixed32":o("m%s=d%s|0",l,l);break;case"uint64":p=!0;case"int64":case"sint64":case"fixed64":case"sfixed64":o("if(util.Long)")("(m%s=util.Long.fromValue(d%s)).unsigned=%j",l,l,p)('else if(typeof d%s==="string")',l)("m%s=parseInt(d%s,10)",l,l)('else if(typeof d%s==="number")',l)("m%s=d%s",l,l)('else if(typeof d%s==="object")',l)("m%s=new util.LongBits(d%s.low>>>0,d%s.high>>>0).toNumber(%s)",l,l,l,p?"true":"");break;case"bytes":o('if(typeof d%s==="string")',l)("util.base64.decode(d%s,m%s=util.newBuffer(util.base64.length(d%s)),0)",l,l,l)("else if(d%s.length >= 0)",l)("m%s=d%s",l,l);break;case"string":o("m%s=String(d%s)",l,l);break;case"bool":o("m%s=Boolean(d%s)",l,l);break}}return o}t.fromObject=function(i){var u=i.fieldsArray,l=r.codegen(["d"],i.name+"$fromObject")("if(d instanceof this.ctor)")("return d");if(!u.length)return l("return new this.ctor");l("var m=new this.ctor");for(var v=0;v<u.length;++v){var d=u[v].resolve(),f=r.safeProp(d.name);d.map?(l("if(d%s){",f)('if(typeof d%s!=="object")',f)("throw TypeError(%j)",d.fullName+": object expected")("m%s={}",f)("for(var ks=Object.keys(d%s),i=0;i<ks.length;++i){",f),a(l,d,v,f+"[ks[i]]")("}")("}")):d.repeated?(l("if(d%s){",f)("if(!Array.isArray(d%s))",f)("throw TypeError(%j)",d.fullName+": array expected")("m%s=[]",f)("for(var i=0;i<d%s.length;++i){",f),a(l,d,v,f+"[i]")("}")("}")):(d.resolvedType instanceof n||l("if(d%s!=null){",f),a(l,d,v,f),d.resolvedType instanceof n||l("}"))}return l("return m")};function s(o,i,u,l){if(i.resolvedType)i.resolvedType instanceof n?o("d%s=o.enums===String?(types[%i].values[m%s]===undefined?m%s:types[%i].values[m%s]):m%s",l,u,l,l,u,l,l):o("d%s=types[%i].toObject(m%s,o)",l,u,l);else{var v=!1;switch(i.type){case"double":case"float":o("d%s=o.json&&!isFinite(m%s)?String(m%s):m%s",l,l,l,l);break;case"uint64":v=!0;case"int64":case"sint64":case"fixed64":case"sfixed64":o('if(typeof m%s==="number")',l)("d%s=o.longs===String?String(m%s):m%s",l,l,l)("else")("d%s=o.longs===String?util.Long.prototype.toString.call(m%s):o.longs===Number?new util.LongBits(m%s.low>>>0,m%s.high>>>0).toNumber(%s):m%s",l,l,l,l,v?"true":"",l);break;case"bytes":o("d%s=o.bytes===String?util.base64.encode(m%s,0,m%s.length):o.bytes===Array?Array.prototype.slice.call(m%s):m%s",l,l,l,l,l);break;default:o("d%s=m%s",l,l);break}}return o}t.toObject=function(i){var u=i.fieldsArray.slice().sort(r.compareFieldsById);if(!u.length)return r.codegen()("return {}");for(var l=r.codegen(["m","o"],i.name+"$toObject")("if(!o)")("o={}")("var d={}"),v=[],d=[],f=[],c=0;c<u.length;++c)u[c].partOf||(u[c].resolve().repeated?v:u[c].map?d:f).push(u[c]);if(v.length){for(l("if(o.arrays||o.defaults){"),c=0;c<v.length;++c)l("d%s=[]",r.safeProp(v[c].name));l("}")}if(d.length){for(l("if(o.objects||o.defaults){"),c=0;c<d.length;++c)l("d%s={}",r.safeProp(d[c].name));l("}")}if(f.length){for(l("if(o.defaults){"),c=0;c<f.length;++c){var p=f[c],h=r.safeProp(p.name);if(p.resolvedType instanceof n)l("d%s=o.enums===String?%j:%j",h,p.resolvedType.valuesById[p.typeDefault],p.typeDefault);else if(p.long)l("if(util.Long){")("var n=new util.Long(%i,%i,%j)",p.typeDefault.low,p.typeDefault.high,p.typeDefault.unsigned)("d%s=o.longs===String?n.toString():o.longs===Number?n.toNumber():n",h)("}else")("d%s=o.longs===String?%j:%i",h,p.typeDefault.toString(),p.typeDefault.toNumber());else if(p.bytes){var y="["+Array.prototype.slice.call(p.typeDefault).join(",")+"]";l("if(o.bytes===String)d%s=%j",h,String.fromCharCode.apply(String,p.typeDefault))("else{")("d%s=%s",h,y)("if(o.bytes!==Array)d%s=util.newBuffer(d%s)",h,h)("}")}else l("d%s=%j",h,p.typeDefault)}l("}")}var m=!1;for(c=0;c<u.length;++c){var p=u[c],_=i._fieldsArray.indexOf(p),h=r.safeProp(p.name);p.map?(m||(m=!0,l("var ks2")),l("if(m%s&&(ks2=Object.keys(m%s)).length){",h,h)("d%s={}",h)("for(var j=0;j<ks2.length;++j){"),s(l,p,_,h+"[ks2[j]]")("}")):p.repeated?(l("if(m%s&&m%s.length){",h,h)("d%s=[]",h)("for(var j=0;j<m%s.length;++j){",h),s(l,p,_,h+"[j]")("}")):(l("if(m%s!=null&&m.hasOwnProperty(%j)){",h,p.name),s(l,p,_,h),p.partOf&&l("if(o.oneofs)")("d%s=%j",r.safeProp(p.partOf.name),p.name)),l("}")}return l("return d")}}(converter)),converter}var wrappers={},hasRequiredWrappers;function requireWrappers(){return hasRequiredWrappers||(hasRequiredWrappers=1,function(e){var t=e,n=requireMessage();t[".google.protobuf.Any"]={fromObject:function(r){if(r&&r["@type"]){var a=r["@type"].substring(r["@type"].lastIndexOf("/")+1),s=this.lookup(a);if(s){var o=r["@type"].charAt(0)==="."?r["@type"].slice(1):r["@type"];return o.indexOf("/")===-1&&(o="/"+o),this.create({type_url:o,value:s.encode(s.fromObject(r)).finish()})}}return this.fromObject(r)},toObject:function(r,a){var s="type.googleapis.com/",o="",i="";if(a&&a.json&&r.type_url&&r.value){i=r.type_url.substring(r.type_url.lastIndexOf("/")+1),o=r.type_url.substring(0,r.type_url.lastIndexOf("/")+1);var u=this.lookup(i);u&&(r=u.decode(r.value))}if(!(r instanceof this.ctor)&&r instanceof n){var l=r.$type.toObject(r,a),v=r.$type.fullName[0]==="."?r.$type.fullName.slice(1):r.$type.fullName;return o===""&&(o=s),i=o+v,l["@type"]=i,l}return this.toObject(r,a)}}}(wrappers)),wrappers}var type,hasRequiredType;function requireType(){if(hasRequiredType)return type;hasRequiredType=1,type=h;var e=requireNamespace();((h.prototype=Object.create(e.prototype)).constructor=h).className="Type";var t=require_enum(),n=requireOneof(),r=requireField(),a=requireMapfield(),s=requireService(),o=requireMessage(),i=requireReader(),u=requireWriter(),l=requireUtil(),v=requireEncoder(),d=requireDecoder(),f=requireVerifier(),c=requireConverter(),p=requireWrappers();function h(m,_){e.call(this,m,_),this.fields={},this.oneofs=void 0,this.extensions=void 0,this.reserved=void 0,this.group=void 0,this._fieldsById=null,this._fieldsArray=null,this._oneofsArray=null,this._ctor=null}Object.defineProperties(h.prototype,{fieldsById:{get:function(){if(this._fieldsById)return this._fieldsById;this._fieldsById={};for(var m=Object.keys(this.fields),_=0;_<m.length;++_){var b=this.fields[m[_]],g=b.id;if(this._fieldsById[g])throw Error("duplicate id "+g+" in "+this);this._fieldsById[g]=b}return this._fieldsById}},fieldsArray:{get:function(){return this._fieldsArray||(this._fieldsArray=l.toArray(this.fields))}},oneofsArray:{get:function(){return this._oneofsArray||(this._oneofsArray=l.toArray(this.oneofs))}},ctor:{get:function(){return this._ctor||(this.ctor=h.generateConstructor(this)())},set:function(m){var _=m.prototype;_ instanceof o||((m.prototype=new o).constructor=m,l.merge(m.prototype,_)),m.$type=m.prototype.$type=this,l.merge(m,o,!0),this._ctor=m;for(var b=0;b<this.fieldsArray.length;++b)this._fieldsArray[b].resolve();var g={};for(b=0;b<this.oneofsArray.length;++b)g[this._oneofsArray[b].resolve().name]={get:l.oneOfGetter(this._oneofsArray[b].oneof),set:l.oneOfSetter(this._oneofsArray[b].oneof)};b&&Object.defineProperties(m.prototype,g)}}}),h.generateConstructor=function(_){for(var b=l.codegen(["p"],_.name),g=0,w;g<_.fieldsArray.length;++g)(w=_._fieldsArray[g]).map?b("this%s={}",l.safeProp(w.name)):w.repeated&&b("this%s=[]",l.safeProp(w.name));return b("if(p)for(var ks=Object.keys(p),i=0;i<ks.length;++i)if(p[ks[i]]!=null)")("this[ks[i]]=p[ks[i]]")};function y(m){return m._fieldsById=m._fieldsArray=m._oneofsArray=null,delete m.encode,delete m.decode,delete m.verify,m}return h.fromJSON=function(_,b){var g=new h(_,b.options);g.extensions=b.extensions,g.reserved=b.reserved;for(var w=Object.keys(b.fields),k=0;k<w.length;++k)g.add((typeof b.fields[w[k]].keyType<"u"?a.fromJSON:r.fromJSON)(w[k],b.fields[w[k]]));if(b.oneofs)for(w=Object.keys(b.oneofs),k=0;k<w.length;++k)g.add(n.fromJSON(w[k],b.oneofs[w[k]]));if(b.nested)for(w=Object.keys(b.nested),k=0;k<w.length;++k){var A=b.nested[w[k]];g.add((A.id!==void 0?r.fromJSON:A.fields!==void 0?h.fromJSON:A.values!==void 0?t.fromJSON:A.methods!==void 0?s.fromJSON:e.fromJSON)(w[k],A))}return b.extensions&&b.extensions.length&&(g.extensions=b.extensions),b.reserved&&b.reserved.length&&(g.reserved=b.reserved),b.group&&(g.group=!0),b.comment&&(g.comment=b.comment),b.edition&&(g._edition=b.edition),g._defaultEdition="proto3",g},h.prototype.toJSON=function(_){var b=e.prototype.toJSON.call(this,_),g=_?!!_.keepComments:!1;return l.toObject(["edition",this._editionToJSON(),"options",b&&b.options||void 0,"oneofs",e.arrayToJSON(this.oneofsArray,_),"fields",e.arrayToJSON(this.fieldsArray.filter(function(w){return!w.declaringField}),_)||{},"extensions",this.extensions&&this.extensions.length?this.extensions:void 0,"reserved",this.reserved&&this.reserved.length?this.reserved:void 0,"group",this.group||void 0,"nested",b&&b.nested||void 0,"comment",g?this.comment:void 0])},h.prototype.resolveAll=function(){if(!this._needsRecursiveResolve)return this;e.prototype.resolveAll.call(this);var _=this.oneofsArray;for(g=0;g<_.length;)_[g++].resolve();for(var b=this.fieldsArray,g=0;g<b.length;)b[g++].resolve();return this},h.prototype._resolveFeaturesRecursive=function(_){return this._needsRecursiveFeatureResolution?(_=this._edition||_,e.prototype._resolveFeaturesRecursive.call(this,_),this.oneofsArray.forEach(b=>{b._resolveFeatures(_)}),this.fieldsArray.forEach(b=>{b._resolveFeatures(_)}),this):this},h.prototype.get=function(_){return this.fields[_]||this.oneofs&&this.oneofs[_]||this.nested&&this.nested[_]||null},h.prototype.add=function(_){if(this.get(_.name))throw Error("duplicate name '"+_.name+"' in "+this);if(_ instanceof r&&_.extend===void 0){if(this._fieldsById?this._fieldsById[_.id]:this.fieldsById[_.id])throw Error("duplicate id "+_.id+" in "+this);if(this.isReservedId(_.id))throw Error("id "+_.id+" is reserved in "+this);if(this.isReservedName(_.name))throw Error("name '"+_.name+"' is reserved in "+this);return _.parent&&_.parent.remove(_),this.fields[_.name]=_,_.message=this,_.onAdd(this),y(this)}return _ instanceof n?(this.oneofs||(this.oneofs={}),this.oneofs[_.name]=_,_.onAdd(this),y(this)):e.prototype.add.call(this,_)},h.prototype.remove=function(_){if(_ instanceof r&&_.extend===void 0){if(!this.fields||this.fields[_.name]!==_)throw Error(_+" is not a member of "+this);return delete this.fields[_.name],_.parent=null,_.onRemove(this),y(this)}if(_ instanceof n){if(!this.oneofs||this.oneofs[_.name]!==_)throw Error(_+" is not a member of "+this);return delete this.oneofs[_.name],_.parent=null,_.onRemove(this),y(this)}return e.prototype.remove.call(this,_)},h.prototype.isReservedId=function(_){return e.isReservedId(this.reserved,_)},h.prototype.isReservedName=function(_){return e.isReservedName(this.reserved,_)},h.prototype.create=function(_){return new this.ctor(_)},h.prototype.setup=function(){for(var _=this.fullName,b=[],g=0;g<this.fieldsArray.length;++g)b.push(this._fieldsArray[g].resolve().resolvedType);this.encode=v(this)({Writer:u,types:b,util:l}),this.decode=d(this)({Reader:i,types:b,util:l}),this.verify=f(this)({types:b,util:l}),this.fromObject=c.fromObject(this)({types:b,util:l}),this.toObject=c.toObject(this)({types:b,util:l});var w=p[_];if(w){var k=Object.create(this);k.fromObject=this.fromObject,this.fromObject=w.fromObject.bind(k),k.toObject=this.toObject,this.toObject=w.toObject.bind(k)}return this},h.prototype.encode=function(_,b){return this.setup().encode(_,b)},h.prototype.encodeDelimited=function(_,b){return this.encode(_,b&&b.len?b.fork():b).ldelim()},h.prototype.decode=function(_,b){return this.setup().decode(_,b)},h.prototype.decodeDelimited=function(_){return _ instanceof i||(_=i.create(_)),this.decode(_,_.uint32())},h.prototype.verify=function(_){return this.setup().verify(_)},h.prototype.fromObject=function(_){return this.setup().fromObject(_)},h.prototype.toObject=function(_,b){return this.setup().toObject(_,b)},h.d=function(_){return function(g){l.decorateType(g,_)}},type}var root$1,hasRequiredRoot;function requireRoot(){if(hasRequiredRoot)return root$1;hasRequiredRoot=1,root$1=u;var e=requireNamespace();((u.prototype=Object.create(e.prototype)).constructor=u).className="Root";var t=requireField(),n=require_enum(),r=requireOneof(),a=requireUtil(),s,o,i;function u(f){e.call(this,"",f),this.deferred=[],this.files=[],this._edition="proto2",this._fullyQualifiedObjects={}}u.fromJSON=function(c,p){return p||(p=new u),c.options&&p.setOptions(c.options),p.addJSON(c.nested).resolveAll()},u.prototype.resolvePath=a.path.resolve,u.prototype.fetch=a.fetch;function l(){}u.prototype.load=function f(c,p,h){typeof p=="function"&&(h=p,p=void 0);var y=this;if(!h)return a.asPromise(f,y,c,p);var m=h===l;function _(M,F){if(h){if(m)throw M;F&&F.resolveAll();var O=h;h=null,O(M,F)}}function b(M){var F=M.lastIndexOf("google/protobuf/");if(F>-1){var O=M.substring(F);if(O in i)return O}return null}function g(M,F){try{if(a.isString(F)&&F.charAt(0)==="{"&&(F=JSON.parse(F)),!a.isString(F))y.setOptions(F.options).addJSON(F.nested);else{o.filename=M;var O=o(F,y,p),D,j=0;if(O.imports)for(;j<O.imports.length;++j)(D=b(O.imports[j])||y.resolvePath(M,O.imports[j]))&&w(D);if(O.weakImports)for(j=0;j<O.weakImports.length;++j)(D=b(O.weakImports[j])||y.resolvePath(M,O.weakImports[j]))&&w(D,!0)}}catch(z){_(z)}!m&&!k&&_(null,y)}function w(M,F){if(M=b(M)||M,!(y.files.indexOf(M)>-1)){if(y.files.push(M),M in i){m?g(M,i[M]):(++k,setTimeout(function(){--k,g(M,i[M])}));return}if(m){var O;try{O=a.fs.readFileSync(M).toString("utf8")}catch(D){F||_(D);return}g(M,O)}else++k,y.fetch(M,function(D,j){if(--k,!!h){if(D){F?k||_(null,y):_(D);return}g(M,j)}})}}var k=0;a.isString(c)&&(c=[c]);for(var A=0,$;A<c.length;++A)($=y.resolvePath("",c[A]))&&w($);return m?(y.resolveAll(),y):(k||_(null,y),y)},u.prototype.loadSync=function(c,p){if(!a.isNode)throw Error("not supported");return this.load(c,p,l)},u.prototype.resolveAll=function(){if(!this._needsRecursiveResolve)return this;if(this.deferred.length)throw Error("unresolvable extensions: "+this.deferred.map(function(c){return"'extend "+c.extend+"' in "+c.parent.fullName}).join(", "));return e.prototype.resolveAll.call(this)};var v=/^[A-Z]/;function d(f,c){var p=c.parent.lookup(c.extend);if(p){var h=new t(c.fullName,c.id,c.type,c.rule,void 0,c.options);return p.get(h.name)||(h.declaringField=c,c.extensionField=h,p.add(h)),!0}return!1}return u.prototype._handleAdd=function(c){if(c instanceof t)c.extend!==void 0&&!c.extensionField&&(d(this,c)||this.deferred.push(c));else if(c instanceof n)v.test(c.name)&&(c.parent[c.name]=c.values);else if(!(c instanceof r)){if(c instanceof s)for(var p=0;p<this.deferred.length;)d(this,this.deferred[p])?this.deferred.splice(p,1):++p;for(var h=0;h<c.nestedArray.length;++h)this._handleAdd(c._nestedArray[h]);v.test(c.name)&&(c.parent[c.name]=c)}(c instanceof s||c instanceof n||c instanceof t)&&(this._fullyQualifiedObjects[c.fullName]=c)},u.prototype._handleRemove=function(c){if(c instanceof t){if(c.extend!==void 0)if(c.extensionField)c.extensionField.parent.remove(c.extensionField),c.extensionField=null;else{var p=this.deferred.indexOf(c);p>-1&&this.deferred.splice(p,1)}}else if(c instanceof n)v.test(c.name)&&delete c.parent[c.name];else if(c instanceof e){for(var h=0;h<c.nestedArray.length;++h)this._handleRemove(c._nestedArray[h]);v.test(c.name)&&delete c.parent[c.name]}delete this._fullyQualifiedObjects[c.fullName]},u._configure=function(f,c,p){s=f,o=c,i=p},root$1}var hasRequiredUtil;function requireUtil(){if(hasRequiredUtil)return util.exports;hasRequiredUtil=1;var e=util.exports=requireMinimal(),t=requireRoots(),n,r;e.codegen=requireCodegen(),e.fetch=requireFetch(),e.path=requirePath(),e.fs=e.inquire("fs"),e.toArray=function(l){if(l){for(var v=Object.keys(l),d=new Array(v.length),f=0;f<v.length;)d[f]=l[v[f++]];return d}return[]},e.toObject=function(l){for(var v={},d=0;d<l.length;){var f=l[d++],c=l[d++];c!==void 0&&(v[f]=c)}return v};var a=/\\/g,s=/"/g;e.isReserved=function(l){return/^(?:do|if|in|for|let|new|try|var|case|else|enum|eval|false|null|this|true|void|with|break|catch|class|const|super|throw|while|yield|delete|export|import|public|return|static|switch|typeof|default|extends|finally|package|private|continue|debugger|function|arguments|interface|protected|implements|instanceof)$/.test(l)},e.safeProp=function(l){return!/^[$\w_]+$/.test(l)||e.isReserved(l)?'["'+l.replace(a,"\\\\").replace(s,'\\"')+'"]':"."+l},e.ucFirst=function(l){return l.charAt(0).toUpperCase()+l.substring(1)};var o=/_([a-z])/g;e.camelCase=function(l){return l.substring(0,1)+l.substring(1).replace(o,function(v,d){return d.toUpperCase()})},e.compareFieldsById=function(l,v){return l.id-v.id},e.decorateType=function(l,v){if(l.$type)return v&&l.$type.name!==v&&(e.decorateRoot.remove(l.$type),l.$type.name=v,e.decorateRoot.add(l.$type)),l.$type;n||(n=requireType());var d=new n(v||l.name);return e.decorateRoot.add(d),d.ctor=l,Object.defineProperty(l,"$type",{value:d,enumerable:!1}),Object.defineProperty(l.prototype,"$type",{value:d,enumerable:!1}),d};var i=0;return e.decorateEnum=function(l){if(l.$type)return l.$type;r||(r=require_enum());var v=new r("Enum"+i++,l);return e.decorateRoot.add(v),Object.defineProperty(l,"$type",{value:v,enumerable:!1}),v},e.setProperty=function(l,v,d,f){function c(p,h,y){var m=h.shift();if(m==="__proto__"||m==="prototype")return p;if(h.length>0)p[m]=c(p[m]||{},h,y);else{var _=p[m];if(_&&f)return p;_&&(y=[].concat(_).concat(y)),p[m]=y}return p}if(typeof l!="object")throw TypeError("dst must be an object");if(!v)throw TypeError("path must be specified");return v=v.split("."),c(l,v,d)},Object.defineProperty(e,"decorateRoot",{get:function(){return t.decorated||(t.decorated=new(requireRoot()))}}),util.exports}var hasRequiredTypes;function requireTypes(){return hasRequiredTypes||(hasRequiredTypes=1,function(e){var t=e,n=requireUtil(),r=["double","float","int32","uint32","sint32","fixed32","sfixed32","int64","uint64","sint64","fixed64","sfixed64","bool","string","bytes"];function a(s,o){var i=0,u={};for(o|=0;i<s.length;)u[r[i+o]]=s[i++];return u}t.basic=a([1,5,0,0,0,5,5,0,0,0,1,1,0,2,2]),t.defaults=a([0,0,0,0,0,0,0,0,0,0,0,0,!1,"",n.emptyArray,null]),t.long=a([0,0,0,1,1],7),t.mapKey=a([0,0,0,5,5,0,0,0,1,1,0,2],2),t.packed=a([1,5,0,0,0,5,5,0,0,0,1,1,0])}(types)),types}var field,hasRequiredField;function requireField(){if(hasRequiredField)return field;hasRequiredField=1,field=o;var e=requireObject();((o.prototype=Object.create(e.prototype)).constructor=o).className="Field";var t=require_enum(),n=requireTypes(),r=requireUtil(),a,s=/^required|optional|repeated$/;o.fromJSON=function(u,l){var v=new o(u,l.id,l.type,l.rule,l.extend,l.options,l.comment);return l.edition&&(v._edition=l.edition),v._defaultEdition="proto3",v};function o(i,u,l,v,d,f,c){if(r.isObject(v)?(c=d,f=v,v=d=void 0):r.isObject(d)&&(c=f,f=d,d=void 0),e.call(this,i,f),!r.isInteger(u)||u<0)throw TypeError("id must be a non-negative integer");if(!r.isString(l))throw TypeError("type must be a string");if(v!==void 0&&!s.test(v=v.toString().toLowerCase()))throw TypeError("rule must be a string rule");if(d!==void 0&&!r.isString(d))throw TypeError("extend must be a string");v==="proto3_optional"&&(v="optional"),this.rule=v&&v!=="optional"?v:void 0,this.type=l,this.id=u,this.extend=d||void 0,this.repeated=v==="repeated",this.map=!1,this.message=null,this.partOf=null,this.typeDefault=null,this.defaultValue=null,this.long=r.Long?n.long[l]!==void 0:!1,this.bytes=l==="bytes",this.resolvedType=null,this.extensionField=null,this.declaringField=null,this.comment=c}return Object.defineProperty(o.prototype,"required",{get:function(){return this._features.field_presence==="LEGACY_REQUIRED"}}),Object.defineProperty(o.prototype,"optional",{get:function(){return!this.required}}),Object.defineProperty(o.prototype,"delimited",{get:function(){return this.resolvedType instanceof a&&this._features.message_encoding==="DELIMITED"}}),Object.defineProperty(o.prototype,"packed",{get:function(){return this._features.repeated_field_encoding==="PACKED"}}),Object.defineProperty(o.prototype,"hasPresence",{get:function(){return this.repeated||this.map?!1:this.partOf||this.declaringField||this.extensionField||this._features.field_presence!=="IMPLICIT"}}),o.prototype.setOption=function(u,l,v){return e.prototype.setOption.call(this,u,l,v)},o.prototype.toJSON=function(u){var l=u?!!u.keepComments:!1;return r.toObject(["edition",this._editionToJSON(),"rule",this.rule!=="optional"&&this.rule||void 0,"type",this.type,"id",this.id,"extend",this.extend,"options",this.options,"comment",l?this.comment:void 0])},o.prototype.resolve=function(){if(this.resolved)return this;if((this.typeDefault=n.defaults[this.type])===void 0?(this.resolvedType=(this.declaringField?this.declaringField.parent:this.parent).lookupTypeOrEnum(this.type),this.resolvedType instanceof a?this.typeDefault=null:this.typeDefault=this.resolvedType.values[Object.keys(this.resolvedType.values)[0]]):this.options&&this.options.proto3_optional&&(this.typeDefault=null),this.options&&this.options.default!=null&&(this.typeDefault=this.options.default,this.resolvedType instanceof t&&typeof this.typeDefault=="string"&&(this.typeDefault=this.resolvedType.values[this.typeDefault])),this.options&&(this.options.packed!==void 0&&this.resolvedType&&!(this.resolvedType instanceof t)&&delete this.options.packed,Object.keys(this.options).length||(this.options=void 0)),this.long)this.typeDefault=r.Long.fromNumber(this.typeDefault,this.type.charAt(0)==="u"),Object.freeze&&Object.freeze(this.typeDefault);else if(this.bytes&&typeof this.typeDefault=="string"){var u;r.base64.test(this.typeDefault)?r.base64.decode(this.typeDefault,u=r.newBuffer(r.base64.length(this.typeDefault)),0):r.utf8.write(this.typeDefault,u=r.newBuffer(r.utf8.length(this.typeDefault)),0),this.typeDefault=u}return this.map?this.defaultValue=r.emptyObject:this.repeated?this.defaultValue=r.emptyArray:this.defaultValue=this.typeDefault,this.parent instanceof a&&(this.parent.ctor.prototype[this.name]=this.defaultValue),e.prototype.resolve.call(this)},o.prototype._inferLegacyProtoFeatures=function(u){if(u!=="proto2"&&u!=="proto3")return{};var l={};if(this.rule==="required"&&(l.field_presence="LEGACY_REQUIRED"),this.parent&&n.defaults[this.type]===void 0){var v=this.parent.get(this.type.split(".").pop());v&&v instanceof a&&v.group&&(l.message_encoding="DELIMITED")}return this.getOption("packed")===!0?l.repeated_field_encoding="PACKED":this.getOption("packed")===!1&&(l.repeated_field_encoding="EXPANDED"),l},o.prototype._resolveFeatures=function(u){return e.prototype._resolveFeatures.call(this,this._edition||u)},o.d=function(u,l,v,d){return typeof l=="function"?l=r.decorateType(l).name:l&&typeof l=="object"&&(l=r.decorateEnum(l).name),function(c,p){r.decorateType(c.constructor).add(new o(p,u,l,v,{default:d}))}},o._configure=function(u){a=u},field}var oneof,hasRequiredOneof;function requireOneof(){if(hasRequiredOneof)return oneof;hasRequiredOneof=1,oneof=r;var e=requireObject();((r.prototype=Object.create(e.prototype)).constructor=r).className="OneOf";var t=requireField(),n=requireUtil();function r(s,o,i,u){if(Array.isArray(o)||(i=o,o=void 0),e.call(this,s,i),!(o===void 0||Array.isArray(o)))throw TypeError("fieldNames must be an Array");this.oneof=o||[],this.fieldsArray=[],this.comment=u}r.fromJSON=function(o,i){return new r(o,i.oneof,i.options,i.comment)},r.prototype.toJSON=function(o){var i=o?!!o.keepComments:!1;return n.toObject(["options",this.options,"oneof",this.oneof,"comment",i?this.comment:void 0])};function a(s){if(s.parent)for(var o=0;o<s.fieldsArray.length;++o)s.fieldsArray[o].parent||s.parent.add(s.fieldsArray[o])}return r.prototype.add=function(o){if(!(o instanceof t))throw TypeError("field must be a Field");return o.parent&&o.parent!==this.parent&&o.parent.remove(o),this.oneof.push(o.name),this.fieldsArray.push(o),o.partOf=this,a(this),this},r.prototype.remove=function(o){if(!(o instanceof t))throw TypeError("field must be a Field");var i=this.fieldsArray.indexOf(o);if(i<0)throw Error(o+" is not a member of "+this);return this.fieldsArray.splice(i,1),i=this.oneof.indexOf(o.name),i>-1&&this.oneof.splice(i,1),o.partOf=null,this},r.prototype.onAdd=function(o){e.prototype.onAdd.call(this,o);for(var i=this,u=0;u<this.oneof.length;++u){var l=o.get(this.oneof[u]);l&&!l.partOf&&(l.partOf=i,i.fieldsArray.push(l))}a(this)},r.prototype.onRemove=function(o){for(var i=0,u;i<this.fieldsArray.length;++i)(u=this.fieldsArray[i]).parent&&u.parent.remove(u);e.prototype.onRemove.call(this,o)},Object.defineProperty(r.prototype,"isProto3Optional",{get:function(){if(this.fieldsArray==null||this.fieldsArray.length!==1)return!1;var s=this.fieldsArray[0];return s.options!=null&&s.options.proto3_optional===!0}}),r.d=function(){for(var o=new Array(arguments.length),i=0;i<arguments.length;)o[i]=arguments[i++];return function(l,v){n.decorateType(l.constructor).add(new r(v,o)),Object.defineProperty(l,v,{get:n.oneOfGetter(o),set:n.oneOfSetter(o)})}},oneof}var object,hasRequiredObject;function requireObject(){if(hasRequiredObject)return object;hasRequiredObject=1,object=o,o.className="ReflectionObject";const e=requireOneof();var t=requireUtil(),n,r={enum_type:"OPEN",field_presence:"EXPLICIT",json_format:"ALLOW",message_encoding:"LENGTH_PREFIXED",repeated_field_encoding:"PACKED",utf8_validation:"VERIFY"},a={enum_type:"CLOSED",field_presence:"EXPLICIT",json_format:"LEGACY_BEST_EFFORT",message_encoding:"LENGTH_PREFIXED",repeated_field_encoding:"EXPANDED",utf8_validation:"NONE"},s={enum_type:"OPEN",field_presence:"IMPLICIT",json_format:"ALLOW",message_encoding:"LENGTH_PREFIXED",repeated_field_encoding:"PACKED",utf8_validation:"VERIFY"};function o(i,u){if(!t.isString(i))throw TypeError("name must be a string");if(u&&!t.isObject(u))throw TypeError("options must be an object");this.options=u,this.parsedOptions=null,this.name=i,this._edition=null,this._defaultEdition="proto2",this._features={},this._featuresResolved=!1,this.parent=null,this.resolved=!1,this.comment=null,this.filename=null}return Object.defineProperties(o.prototype,{root:{get:function(){for(var i=this;i.parent!==null;)i=i.parent;return i}},fullName:{get:function(){for(var i=[this.name],u=this.parent;u;)i.unshift(u.name),u=u.parent;return i.join(".")}}}),o.prototype.toJSON=function(){throw Error()},o.prototype.onAdd=function(u){this.parent&&this.parent!==u&&this.parent.remove(this),this.parent=u,this.resolved=!1;var l=u.root;l instanceof n&&l._handleAdd(this)},o.prototype.onRemove=function(u){var l=u.root;l instanceof n&&l._handleRemove(this),this.parent=null,this.resolved=!1},o.prototype.resolve=function(){return this.resolved?this:(this.root instanceof n&&(this.resolved=!0),this)},o.prototype._resolveFeaturesRecursive=function(u){return this._resolveFeatures(this._edition||u)},o.prototype._resolveFeatures=function(u){if(!this._featuresResolved){var l={};if(!u)throw new Error("Unknown edition for "+this.fullName);var v=Object.assign(this.options?Object.assign({},this.options.features):{},this._inferLegacyProtoFeatures(u));if(this._edition){if(u==="proto2")l=Object.assign({},a);else if(u==="proto3")l=Object.assign({},s);else if(u==="2023")l=Object.assign({},r);else throw new Error("Unknown edition: "+u);this._features=Object.assign(l,v||{}),this._featuresResolved=!0;return}if(this.partOf instanceof e){var d=Object.assign({},this.partOf._features);this._features=Object.assign(d,v||{})}else if(!this.declaringField)if(this.parent){var f=Object.assign({},this.parent._features);this._features=Object.assign(f,v||{})}else throw new Error("Unable to find a parent for "+this.fullName);this.extensionField&&(this.extensionField._features=this._features),this._featuresResolved=!0}},o.prototype._inferLegacyProtoFeatures=function(){return{}},o.prototype.getOption=function(u){if(this.options)return this.options[u]},o.prototype.setOption=function(u,l,v){return this.options||(this.options={}),/^features\./.test(u)?t.setProperty(this.options,u,l,v):(!v||this.options[u]===void 0)&&(this.getOption(u)!==l&&(this.resolved=!1),this.options[u]=l),this},o.prototype.setParsedOption=function(u,l,v){this.parsedOptions||(this.parsedOptions=[]);var d=this.parsedOptions;if(v){var f=d.find(function(h){return Object.prototype.hasOwnProperty.call(h,u)});if(f){var c=f[u];t.setProperty(c,v,l)}else f={},f[u]=t.setProperty({},v,l),d.push(f)}else{var p={};p[u]=l,d.push(p)}return this},o.prototype.setOptions=function(u,l){if(u)for(var v=Object.keys(u),d=0;d<v.length;++d)this.setOption(v[d],u[v[d]],l);return this},o.prototype.toString=function(){var u=this.constructor.className,l=this.fullName;return l.length?u+" "+l:u},o.prototype._editionToJSON=function(){if(!(!this._edition||this._edition==="proto3"))return this._edition},o._configure=function(i){n=i},object}var _enum,hasRequired_enum;function require_enum(){if(hasRequired_enum)return _enum;hasRequired_enum=1,_enum=r;var e=requireObject();((r.prototype=Object.create(e.prototype)).constructor=r).className="Enum";var t=requireNamespace(),n=requireUtil();function r(a,s,o,i,u,l){if(e.call(this,a,o),s&&typeof s!="object")throw TypeError("values must be an object");if(this.valuesById={},this.values=Object.create(this.valuesById),this.comment=i,this.comments=u||{},this.valuesOptions=l,this._valuesFeatures={},this.reserved=void 0,s)for(var v=Object.keys(s),d=0;d<v.length;++d)typeof s[v[d]]=="number"&&(this.valuesById[this.values[v[d]]=s[v[d]]]=v[d])}return r.prototype._resolveFeatures=function(s){return s=this._edition||s,e.prototype._resolveFeatures.call(this,s),Object.keys(this.values).forEach(o=>{var i=Object.assign({},this._features);this._valuesFeatures[o]=Object.assign(i,this.valuesOptions&&this.valuesOptions[o]&&this.valuesOptions[o].features)}),this},r.fromJSON=function(s,o){var i=new r(s,o.values,o.options,o.comment,o.comments);return i.reserved=o.reserved,o.edition&&(i._edition=o.edition),i._defaultEdition="proto3",i},r.prototype.toJSON=function(s){var o=s?!!s.keepComments:!1;return n.toObject(["edition",this._editionToJSON(),"options",this.options,"valuesOptions",this.valuesOptions,"values",this.values,"reserved",this.reserved&&this.reserved.length?this.reserved:void 0,"comment",o?this.comment:void 0,"comments",o?this.comments:void 0])},r.prototype.add=function(s,o,i,u){if(!n.isString(s))throw TypeError("name must be a string");if(!n.isInteger(o))throw TypeError("id must be an integer");if(this.values[s]!==void 0)throw Error("duplicate name '"+s+"' in "+this);if(this.isReservedId(o))throw Error("id "+o+" is reserved in "+this);if(this.isReservedName(s))throw Error("name '"+s+"' is reserved in "+this);if(this.valuesById[o]!==void 0){if(!(this.options&&this.options.allow_alias))throw Error("duplicate id "+o+" in "+this);this.values[s]=o}else this.valuesById[this.values[s]=o]=s;return u&&(this.valuesOptions===void 0&&(this.valuesOptions={}),this.valuesOptions[s]=u||null),this.comments[s]=i||null,this},r.prototype.remove=function(s){if(!n.isString(s))throw TypeError("name must be a string");var o=this.values[s];if(o==null)throw Error("name '"+s+"' does not exist in "+this);return delete this.valuesById[o],delete this.values[s],delete this.comments[s],this.valuesOptions&&delete this.valuesOptions[s],this},r.prototype.isReservedId=function(s){return t.isReservedId(this.reserved,s)},r.prototype.isReservedName=function(s){return t.isReservedName(this.reserved,s)},_enum}var encoder_1,hasRequiredEncoder;function requireEncoder(){if(hasRequiredEncoder)return encoder_1;hasRequiredEncoder=1,encoder_1=a;var e=require_enum(),t=requireTypes(),n=requireUtil();function r(s,o,i,u){return o.delimited?s("types[%i].encode(%s,w.uint32(%i)).uint32(%i)",i,u,(o.id<<3|3)>>>0,(o.id<<3|4)>>>0):s("types[%i].encode(%s,w.uint32(%i).fork()).ldelim()",i,u,(o.id<<3|2)>>>0)}function a(s){for(var o=n.codegen(["m","w"],s.name+"$encode")("if(!w)")("w=Writer.create()"),i,u,l=s.fieldsArray.slice().sort(n.compareFieldsById),i=0;i<l.length;++i){var v=l[i].resolve(),d=s._fieldsArray.indexOf(v),f=v.resolvedType instanceof e?"int32":v.type,c=t.basic[f];u="m"+n.safeProp(v.name),v.map?(o("if(%s!=null&&Object.hasOwnProperty.call(m,%j)){",u,v.name)("for(var ks=Object.keys(%s),i=0;i<ks.length;++i){",u)("w.uint32(%i).fork().uint32(%i).%s(ks[i])",(v.id<<3|2)>>>0,8|t.mapKey[v.keyType],v.keyType),c===void 0?o("types[%i].encode(%s[ks[i]],w.uint32(18).fork()).ldelim().ldelim()",d,u):o(".uint32(%i).%s(%s[ks[i]]).ldelim()",16|c,f,u),o("}")("}")):v.repeated?(o("if(%s!=null&&%s.length){",u,u),v.packed&&t.packed[f]!==void 0?o("w.uint32(%i).fork()",(v.id<<3|2)>>>0)("for(var i=0;i<%s.length;++i)",u)("w.%s(%s[i])",f,u)("w.ldelim()"):(o("for(var i=0;i<%s.length;++i)",u),c===void 0?r(o,v,d,u+"[i]"):o("w.uint32(%i).%s(%s[i])",(v.id<<3|c)>>>0,f,u)),o("}")):(v.optional&&o("if(%s!=null&&Object.hasOwnProperty.call(m,%j))",u,v.name),c===void 0?r(o,v,d,u):o("w.uint32(%i).%s(%s)",(v.id<<3|c)>>>0,f,u))}return o("return w")}return encoder_1}var hasRequiredIndexLight;function requireIndexLight(){if(hasRequiredIndexLight)return indexLight.exports;hasRequiredIndexLight=1;var e=indexLight.exports=requireIndexMinimal();e.build="light";function t(r,a,s){return typeof a=="function"?(s=a,a=new e.Root):a||(a=new e.Root),a.load(r,s)}e.load=t;function n(r,a){return a||(a=new e.Root),a.loadSync(r)}return e.loadSync=n,e.encoder=requireEncoder(),e.decoder=requireDecoder(),e.verifier=requireVerifier(),e.converter=requireConverter(),e.ReflectionObject=requireObject(),e.Namespace=requireNamespace(),e.Root=requireRoot(),e.Enum=require_enum(),e.Type=requireType(),e.Field=requireField(),e.OneOf=requireOneof(),e.MapField=requireMapfield(),e.Service=requireService(),e.Method=requireMethod(),e.Message=requireMessage(),e.wrappers=requireWrappers(),e.types=requireTypes(),e.util=requireUtil(),e.ReflectionObject._configure(e.Root),e.Namespace._configure(e.Type,e.Service,e.Enum),e.Root._configure(e.Type),e.Field._configure(e.Type),indexLight.exports}var tokenize_1,hasRequiredTokenize;function requireTokenize(){if(hasRequiredTokenize)return tokenize_1;hasRequiredTokenize=1,tokenize_1=v;var e=/[\s{}=;:[\],'"()<>]/g,t=/(?:"([^"\\]*(?:\\.[^"\\]*)*)")/g,n=/(?:'([^'\\]*(?:\\.[^'\\]*)*)')/g,r=/^ *[*/]+ */,a=/^\s*\*?\/*/,s=/\n/g,o=/\s/,i=/\\(.?)/g,u={0:"\0",r:"\r",n:`
|
|
5
|
-
`,t:" "};function l(d){return d.replace(i,function(f,c){switch(c){case"\\":case"":return c;default:return u[c]||""}})}v.unescape=l;function v(d,f){d=d.toString();var c=0,p=d.length,h=1,y=0,m={},_=[],b=null;function g(T){return Error("illegal "+T+" (line "+h+")")}function w(){var T=b==="'"?n:t;T.lastIndex=c-1;var L=T.exec(d);if(!L)throw g("string");return c=T.lastIndex,O(b),b=null,l(L[1])}function k(T){return d.charAt(T)}function A(T,L,ie){var x={type:d.charAt(T++),lineEmpty:!1,leading:ie},V;f?V=2:V=3;var le=T-V,
|
|
6
|
-
`){x.lineEmpty=!0;break}while(
|
|
5
|
+
`,t:" "};function l(d){return d.replace(i,function(f,c){switch(c){case"\\":case"":return c;default:return u[c]||""}})}v.unescape=l;function v(d,f){d=d.toString();var c=0,p=d.length,h=1,y=0,m={},_=[],b=null;function g(T){return Error("illegal "+T+" (line "+h+")")}function w(){var T=b==="'"?n:t;T.lastIndex=c-1;var L=T.exec(d);if(!L)throw g("string");return c=T.lastIndex,O(b),b=null,l(L[1])}function k(T){return d.charAt(T)}function A(T,L,ie){var x={type:d.charAt(T++),lineEmpty:!1,leading:ie},V;f?V=2:V=3;var le=T-V,re;do if(--le<0||(re=d.charAt(le))===`
|
|
6
|
+
`){x.lineEmpty=!0;break}while(re===" "||re===" ");for(var Y=d.substring(T,L).split(s),he=0;he<Y.length;++he)Y[he]=Y[he].replace(f?a:r,"").trim();x.text=Y.join(`
|
|
7
7
|
`).trim(),m[h]=x,y=h}function $(T){var L=M(T),ie=d.substring(T,L),x=/^\s*\/\//.test(ie);return x}function M(T){for(var L=T;L<p&&k(L)!==`
|
|
8
8
|
`;)L++;return L}function F(){if(_.length>0)return _.shift();if(b)return w();var T,L,ie,x,V,le=c===0;do{if(c===p)return null;for(T=!1;o.test(ie=k(c));)if(ie===`
|
|
9
9
|
`&&(le=!0,++h),++c===p)return null;if(k(c)==="/"){if(++c===p)throw g("comment");if(k(c)==="/")if(f){if(x=c,V=!1,$(c-1)){V=!0;do if(c=M(c),c===p||(c++,!le))break;while($(c))}else c=Math.min(p,M(c)+1);V&&(A(x,c,le),le=!0),h++,T=!0}else{for(V=k(x=c+1)==="/";k(++c)!==`
|
|
10
10
|
`;)if(c===p)return null;++c,V&&(A(x,c-1,le),le=!0),++h,T=!0}else if((ie=k(c))==="*"){x=c+1,V=f||k(x)==="*";do{if(ie===`
|
|
11
|
-
`&&++h,++c===p)throw g("comment");L=ie,ie=k(c)}while(L!=="*"||ie!=="/");++c,V&&(A(x,c-2,le),le=!0),T=!0}else return"/"}}while(T);var Y=c;e.lastIndex=0;var re=e.test(k(Y++));if(!re)for(;Y<p&&!e.test(k(Y));)++Y;var he=d.substring(c,c=Y);return(he==='"'||he==="'")&&(b=he),he}function O(T){_.push(T)}function D(){if(!_.length){var T=F();if(T===null)return null;O(T)}return _[0]}function j(T,L){var ie=D(),x=ie===T;if(x)return F(),!0;if(!L)throw g("token '"+ie+"', '"+T+"' expected");return!1}function z(T){var L=null,ie;return T===void 0?(ie=m[h-1],delete m[h-1],ie&&(f||ie.type==="*"||ie.lineEmpty)&&(L=ie.leading?ie.text:null)):(y<T&&D(),ie=m[T],delete m[T],ie&&!ie.lineEmpty&&(f||ie.type==="/")&&(L=ie.leading?null:ie.text)),L}return Object.defineProperty({next:F,peek:D,push:O,skip:j,cmnt:z},"line",{get:function(){return h}})}return tokenize_1}var parse_1,hasRequiredParse;function requireParse(){if(hasRequiredParse)return parse_1;hasRequiredParse=1,parse_1=w,w.filename=null,w.defaults={keepCase:!1};var e=requireTokenize(),t=requireRoot(),n=requireType(),r=requireField(),a=requireMapfield(),s=requireOneof(),o=require_enum(),i=requireService(),u=requireMethod(),l=requireObject(),v=requireTypes(),d=requireUtil(),f=/^[1-9][0-9]*$/,c=/^-?[1-9][0-9]*$/,p=/^0[x][0-9a-fA-F]+$/,h=/^-?0[x][0-9a-fA-F]+$/,y=/^0[0-7]+$/,m=/^-?0[0-7]+$/,_=/^(?![eE])[0-9]*(?:\.[0-9]*)?(?:[eE][+-]?[0-9]+)?$/,b=/^[a-zA-Z_][a-zA-Z_0-9]*$/,g=/^(?:\.?[a-zA-Z_][a-zA-Z_0-9]*)(?:\.[a-zA-Z_][a-zA-Z_0-9]*)*$/;function w(k,A,$){A instanceof t||($=A,A=new t),$||($=w.defaults);var M=$.preferTrailingComment||!1,F=e(k,$.alternateCommentMode||!1),O=F.next,D=F.push,j=F.peek,z=F.skip,T=F.cmnt,L=!0,ie,x,V,le="proto2",Y=A,re=[],he={},Ce=$.keepCase?function(oe){return oe}:d.camelCase;function $e(){re.forEach(oe=>{oe._edition=le,Object.keys(he).forEach(pe=>{oe.getOption(pe)===void 0&&oe.setOption(pe,he[pe],!0)})})}function Ne(oe,pe,S){var ae=w.filename;return S||(w.filename=null),Error("illegal "+(pe||"token")+" '"+oe+"' ("+(ae?ae+", ":"")+"line "+F.line+")")}function Pt(){var oe=[],pe;do{if((pe=O())!=='"'&&pe!=="'")throw Ne(pe);oe.push(O()),z(pe),pe=j()}while(pe==='"'||pe==="'");return oe.join("")}function _e(oe){var pe=O();switch(pe){case"'":case'"':return D(pe),Pt();case"true":case"TRUE":return!0;case"false":case"FALSE":return!1}try{return Et(pe,!0)}catch{if(g.test(pe))return pe;throw Ne(pe,"value")}}function ze(oe,pe){var S,ae;do if(pe&&((S=j())==='"'||S==="'")){var de=Pt();if(oe.push(de),le>=2023)throw Ne(de,"id")}else try{oe.push([ae=Cn(O()),z("to",!0)?Cn(O()):ae])}catch(At){if(pe&&g.test(S)&&le>=2023)oe.push(S);else throw At}while(z(",",!0));var Oe={options:void 0};Oe.setOption=function(At,En){this.options===void 0&&(this.options={}),this.options[At]=En},xe(Oe,function(En){if(En==="option")vn(Oe,En),z(";");else throw Ne(En)},function(){Bn(Oe)})}function Et(oe,pe){var S=1;switch(oe.charAt(0)==="-"&&(S=-1,oe=oe.substring(1)),oe){case"inf":case"INF":case"Inf":return S*(1/0);case"nan":case"NAN":case"Nan":case"NaN":return NaN;case"0":return 0}if(f.test(oe))return S*parseInt(oe,10);if(p.test(oe))return S*parseInt(oe,16);if(y.test(oe))return S*parseInt(oe,8);if(_.test(oe))return S*parseFloat(oe);throw Ne(oe,"number",pe)}function Cn(oe,pe){switch(oe){case"max":case"MAX":case"Max":return 536870911;case"0":return 0}if(!pe&&oe.charAt(0)==="-")throw Ne(oe,"id");if(c.test(oe))return parseInt(oe,10);if(h.test(oe))return parseInt(oe,16);if(m.test(oe))return parseInt(oe,8);throw Ne(oe,"id")}function kn(){if(ie!==void 0)throw Ne("package");if(ie=O(),!g.test(ie))throw Ne(ie,"name");Y=Y.define(ie),z(";")}function In(){var oe=j(),pe;switch(oe){case"weak":pe=V||(V=[]),O();break;case"public":O();default:pe=x||(x=[]);break}oe=Pt(),z(";"),pe.push(oe)}function Dn(){if(z("="),le=Pt(),le<2023)throw Ne(le,"syntax");z(";")}function Mn(){if(z("="),le=Pt(),!["2023"].includes(le))throw Ne(le,"edition");z(";")}function Ue(oe,pe){switch(pe){case"option":return vn(oe,pe),z(";"),!0;case"message":return Dt(oe,pe),!0;case"enum":return An(oe,pe),!0;case"service":return Rn(oe,pe),!0;case"extend":return Fn(oe,pe),!0}return!1}function xe(oe,pe,S){var ae=F.line;if(oe&&(typeof oe.comment!="string"&&(oe.comment=T()),oe.filename=w.filename),z("{",!0)){for(var de;(de=O())!=="}";)pe(de);z(";",!0)}else S&&S(),z(";"),oe&&(typeof oe.comment!="string"||M)&&(oe.comment=T(ae)||oe.comment)}function Dt(oe,pe){if(!b.test(pe=O()))throw Ne(pe,"type name");var S=new n(pe);xe(S,function(de){if(!Ue(S,de))switch(de){case"map":Sn(S);break;case"required":if(le!=="proto2")throw Ne(de);case"repeated":kt(S,de);break;case"optional":if(le==="proto3")kt(S,"proto3_optional");else{if(le!=="proto2")throw Ne(de);kt(S,"optional")}break;case"oneof":Tn(S,de);break;case"extensions":ze(S.extensions||(S.extensions=[]));break;case"reserved":ze(S.reserved||(S.reserved=[]),!0);break;default:if(le==="proto2"||!g.test(de))throw Ne(de);D(de),kt(S,"optional");break}}),oe.add(S),oe===Y&&re.push(S)}function kt(oe,pe,S){var ae=O();if(ae==="group"){_n(oe,pe);return}for(;ae.endsWith(".")||j().startsWith(".");)ae+=O();if(!g.test(ae))throw Ne(ae,"type");var de=O();if(!b.test(de))throw Ne(de,"name");de=Ce(de),z("=");var Oe=new r(de,Cn(O()),ae,pe,S);if(xe(Oe,function(wn){if(wn==="option")vn(Oe,wn),z(";");else throw Ne(wn)},function(){Bn(Oe)}),pe==="proto3_optional"){var At=new s("_"+de);Oe.setOption("proto3_optional",!0),At.add(Oe),oe.add(At)}else oe.add(Oe);oe===Y&&re.push(Oe)}function _n(oe,pe){if(le>=2023)throw Ne("group");var S=O();if(!b.test(S))throw Ne(S,"name");var ae=d.lcFirst(S);S===ae&&(S=d.ucFirst(S)),z("=");var de=Cn(O()),Oe=new n(S);Oe.group=!0;var At=new r(ae,de,S,pe);At.filename=w.filename,xe(Oe,function(wn){switch(wn){case"option":vn(Oe,wn),z(";");break;case"required":case"repeated":kt(Oe,wn);break;case"optional":le==="proto3"?kt(Oe,"proto3_optional"):kt(Oe,"optional");break;case"message":Dt(Oe,wn);break;case"enum":An(Oe,wn);break;case"reserved":ze(Oe.reserved||(Oe.reserved=[]),!0);break;default:throw Ne(wn)}}),oe.add(Oe).add(At)}function Sn(oe){z("<");var pe=O();if(v.mapKey[pe]===void 0)throw Ne(pe,"type");z(",");var S=O();if(!g.test(S))throw Ne(S,"type");z(">");var ae=O();if(!b.test(ae))throw Ne(ae,"name");z("=");var de=new a(Ce(ae),Cn(O()),pe,S);xe(de,function(At){if(At==="option")vn(de,At),z(";");else throw Ne(At)},function(){Bn(de)}),oe.add(de)}function Tn(oe,pe){if(!b.test(pe=O()))throw Ne(pe,"name");var S=new s(Ce(pe));xe(S,function(de){de==="option"?(vn(S,de),z(";")):(D(de),kt(S,"optional"))}),oe.add(S)}function An(oe,pe){if(!b.test(pe=O()))throw Ne(pe,"name");var S=new o(pe);xe(S,function(de){switch(de){case"option":vn(S,de),z(";");break;case"reserved":ze(S.reserved||(S.reserved=[]),!0),S.reserved===void 0&&(S.reserved=[]);break;default:qe(S,de)}}),oe.add(S),oe===Y&&re.push(S)}function qe(oe,pe){if(!b.test(pe))throw Ne(pe,"name");z("=");var S=Cn(O(),!0),ae={options:void 0};ae.getOption=function(de){return this.options[de]},ae.setOption=function(de,Oe){l.prototype.setOption.call(ae,de,Oe)},ae.setParsedOption=function(){},xe(ae,function(Oe){if(Oe==="option")vn(ae,Oe),z(";");else throw Ne(Oe)},function(){Bn(ae)}),oe.add(pe,S,ae.comment,ae.parsedOptions||ae.options)}function vn(oe,pe){var S,ae,de=!0;for(pe==="option"&&(pe=O());pe!=="=";){if(pe==="("){var Oe=O();z(")"),pe="("+Oe+")"}if(de){if(de=!1,pe.includes(".")&&!pe.includes("(")){var At=pe.split(".");S=At[0]+".",pe=At[1];continue}S=pe}else ae=ae?ae+=pe:pe;pe=O()}var En=ae?S.concat(ae):S,wn=Nn(oe,En);ae=ae&&ae[0]==="."?ae.slice(1):ae,S=S&&S[S.length-1]==="."?S.slice(0,-1):S,xn(oe,S,wn,ae)}function Nn(oe,pe){if(z("{",!0)){for(var S={};!z("}",!0);){if(!b.test($n=O()))throw Ne($n,"name");if($n===null)throw Ne($n,"end of input");var ae,de=$n;if(z(":",!0),j()==="{")ae=Nn(oe,pe+"."+$n);else if(j()==="["){ae=[];var Oe;if(z("[",!0)){do Oe=_e(),ae.push(Oe);while(z(",",!0));z("]"),typeof Oe<"u"&&Pn(oe,pe+"."+$n,Oe)}}else ae=_e(),Pn(oe,pe+"."+$n,ae);var At=S[de];At&&(ae=[].concat(At).concat(ae)),S[de]=ae,z(",",!0),z(";",!0)}return S}var En=_e();return Pn(oe,pe,En),En}function Pn(oe,pe,S){if(Y===oe&&/^features\./.test(pe)){he[pe]=S;return}oe.setOption&&oe.setOption(pe,S)}function xn(oe,pe,S,ae){oe.setParsedOption&&oe.setParsedOption(pe,S,ae)}function Bn(oe){if(z("[",!0)){do vn(oe,"option");while(z(",",!0));z("]")}return oe}function Rn(oe,pe){if(!b.test(pe=O()))throw Ne(pe,"service name");var S=new i(pe);xe(S,function(de){if(!Ue(S,de))if(de==="rpc")qn(S,de);else throw Ne(de)}),oe.add(S),oe===Y&&re.push(S)}function qn(oe,pe){var S=T(),ae=pe;if(!b.test(pe=O()))throw Ne(pe,"name");var de=pe,Oe,At,En,wn;if(z("("),z("stream",!0)&&(At=!0),!g.test(pe=O())||(Oe=pe,z(")"),z("returns"),z("("),z("stream",!0)&&(wn=!0),!g.test(pe=O())))throw Ne(pe);En=pe,z(")");var hn=new u(de,ae,Oe,En,At,wn);hn.comment=S,xe(hn,function(On){if(On==="option")vn(hn,On),z(";");else throw Ne(On)}),oe.add(hn)}function Fn(oe,pe){if(!g.test(pe=O()))throw Ne(pe,"reference");var S=pe;xe(null,function(de){switch(de){case"required":case"repeated":kt(oe,de,S);break;case"optional":le==="proto3"?kt(oe,"proto3_optional",S):kt(oe,"optional",S);break;default:if(le==="proto2"||!g.test(de))throw Ne(de);D(de),kt(oe,"optional",S);break}})}for(var $n;($n=O())!==null;)switch($n){case"package":if(!L)throw Ne($n);kn();break;case"import":if(!L)throw Ne($n);In();break;case"syntax":if(!L)throw Ne($n);Dn();break;case"edition":if(!L)throw Ne($n);Mn();break;case"option":vn(Y,$n),z(";",!0);break;default:if(Ue(Y,$n)){L=!1;continue}throw Ne($n)}return $e(),w.filename=null,{package:ie,imports:x,weakImports:V,root:A}}return parse_1}var common_1,hasRequiredCommon;function requireCommon(){if(hasRequiredCommon)return common_1;hasRequiredCommon=1,common_1=t;var e=/\/|\./;function t(r,a){e.test(r)||(r="google/protobuf/"+r+".proto",a={nested:{google:{nested:{protobuf:{nested:a}}}}}),t[r]=a}t("any",{Any:{fields:{type_url:{type:"string",id:1},value:{type:"bytes",id:2}}}});var n;return t("duration",{Duration:n={fields:{seconds:{type:"int64",id:1},nanos:{type:"int32",id:2}}}}),t("timestamp",{Timestamp:n}),t("empty",{Empty:{fields:{}}}),t("struct",{Struct:{fields:{fields:{keyType:"string",type:"Value",id:1}}},Value:{oneofs:{kind:{oneof:["nullValue","numberValue","stringValue","boolValue","structValue","listValue"]}},fields:{nullValue:{type:"NullValue",id:1},numberValue:{type:"double",id:2},stringValue:{type:"string",id:3},boolValue:{type:"bool",id:4},structValue:{type:"Struct",id:5},listValue:{type:"ListValue",id:6}}},NullValue:{values:{NULL_VALUE:0}},ListValue:{fields:{values:{rule:"repeated",type:"Value",id:1}}}}),t("wrappers",{DoubleValue:{fields:{value:{type:"double",id:1}}},FloatValue:{fields:{value:{type:"float",id:1}}},Int64Value:{fields:{value:{type:"int64",id:1}}},UInt64Value:{fields:{value:{type:"uint64",id:1}}},Int32Value:{fields:{value:{type:"int32",id:1}}},UInt32Value:{fields:{value:{type:"uint32",id:1}}},BoolValue:{fields:{value:{type:"bool",id:1}}},StringValue:{fields:{value:{type:"string",id:1}}},BytesValue:{fields:{value:{type:"bytes",id:1}}}}),t("field_mask",{FieldMask:{fields:{paths:{rule:"repeated",type:"string",id:1}}}}),t.get=function(a){return t[a]||null},common_1}var hasRequiredSrc;function requireSrc(){if(hasRequiredSrc)return src.exports;hasRequiredSrc=1;var e=src.exports=requireIndexLight();return e.build="full",e.tokenize=requireTokenize(),e.parse=requireParse(),e.common=requireCommon(),e.Root._configure(e.Type,e.parse,e.common),src.exports}var protobufjs,hasRequiredProtobufjs;function requireProtobufjs(){return hasRequiredProtobufjs||(hasRequiredProtobufjs=1,protobufjs=requireSrc()),protobufjs}var protobufjsExports=requireProtobufjs();const protobuf=getDefaultExportFromCjs(protobufjsExports),useWebSocket=()=>{const e=vue.ref(null),t=vue.ref("disconnected"),n=vue.ref(!0),r={nested:{Event:{fields:{source:{type:"string",id:1},pageStart:{type:"uint64",id:2},pageEnd:{type:"uint64",id:3},samplePeriod:{type:"double",id:4},pointsPerEvent:{type:"uint64",id:5},isResampled:{type:"bool",id:6},data:{rule:"repeated",type:"double",id:7},times:{rule:"repeated",type:"uint64",id:8},spikeGroup:{rule:"repeated",type:"uint32",id:9}}},Instruction:{fields:{command:{type:"string",id:1},argument:{type:"string",id:2}}},Segment:{fields:{startTs:{type:"uint64",id:1},source:{type:"string",id:2},lastUsed:{type:"uint64",id:3},unit:{type:"string",id:4},samplePeriod:{type:"double",id:5},requestedSamplePeriod:{type:"double",id:6},pageStart:{type:"uint64",id:7},isMinMax:{type:"bool",id:8},unitM:{type:"uint64",id:9},segmentType:{type:"string",id:10},nrPoints:{type:"uint64",id:11},data:{rule:"repeated",type:"double",id:12},pageEnd:{type:"uint64",id:13},channelName:{type:"string",id:14}}},IngestSegment:{fields:{channelId:{type:"string",id:1},startTime:{type:"uint64",id:2},samplePeriod:{type:"double",id:3},data:{rule:"repeated",type:"double",id:4}}},TimeSeriesMessage:{fields:{segment:{type:"Segment",id:3},event:{rule:"repeated",type:"Event",id:4},instruction:{type:"Instruction",id:5},ingestSegment:{type:"IngestSegment",id:6},totalResponses:{type:"uint64",id:7},responseSequenceId:{type:"uint64",id:8}}}}},s=protobuf.Root.fromJSON(r).TimeSeriesMessage;let o=null,i=null,u=null,l=null,v=null,d=null,f=!1,c=null;const p=(T,L=2e3)=>new Promise(ie=>{if(!T||T.readyState===WebSocket.CLOSED){ie();return}const x=Date.now(),V=()=>{T.readyState===WebSocket.CLOSED||Date.now()-x>L?ie():setTimeout(V,50)};V()}),h=async()=>{if(e.value){const T=e.value;console.log("🔌 Disconnecting WebSocket (state:",T.readyState,")"),e.value=null,t.value="disconnected",(T.readyState===WebSocket.OPEN||T.readyState===WebSocket.CONNECTING)&&(T.close(),await p(T))}c=null},y=async(T,L,ie)=>{if(c&&(console.log("🔄 Waiting for previous connection to finish..."),await c),e.value){const x=e.value.readyState;(x===WebSocket.CONNECTING||x===WebSocket.OPEN||x===WebSocket.CLOSING)&&(console.log(`🔄 Disconnecting existing WebSocket (state: ${x})`),await h(),await new Promise(V=>setTimeout(V,100)))}console.log("setting packageId to: "+L),d=L,n.value=!0,c=new Promise(async(x,V)=>{try{const le=ie||await useToken(),Y=T+"?session="+le+"&package="+d,re=new WebSocket(Y);e.value=re,re.onopen=()=>{console.log("🔗 WebSocket opened for package:",d),m(),x(re)},re.onclose=()=>{console.log("🔌 WebSocket closed for package:",d),_(),x(null)},re.onmessage=b,re.onerror=he=>{console.error("WebSocket error:",he),t.value="disconnected",V(he)},setTimeout(()=>{re.readyState===WebSocket.CONNECTING&&(re.close(),V(new Error("WebSocket connection timeout")))},1e4)}catch(le){console.error("Failed to create WebSocket:",le),V(le)}});try{await c}catch(x){console.error("WebSocket connection failed:",x),c=null}},m=()=>{if(t.value="connected",n.value){if(console.log("📡 Sending initialization messages for package:",d),v&&(console.log("🧹 Clearing channel filters"),v()),d){const T={montage:"NOT_MONTAGED",packageId:d};console.log("🎛️ Sending montage reset:",T),e.value.send(JSON.stringify(T))}n.value=!1}},_=()=>{console.log("📡 WebSocket connection closed"),t.value="disconnected"},b=T=>{if(typeof T.data=="string"){let ie={};try{ie=JSON.parse(T.data)}catch{l==null||l({error:"JSON Parse Error"});return}ie.channelDetails?u==null||u(ie.channelDetails):ie.error&&(l==null||l(ie));return}const L=new FileReader;L.addEventListener("loadend",function(ie){const x=ie.target.result,V=new Uint8Array(x),le=s.decode(V),Y=le.segment;if(le.event&&le.event.length>0&&le.event[0].pageStart){const re=le.event[0],he=[[],[]],Ce=re.times.length/2;let $e=0;for(let ze=0;ze<Ce;ze++)he[0].push(re.times[$e]),he[1].push(re.times[$e+1]),$e+=2;let Ne=new Array(3),Pt=0;for(;Pt<3;)Ne[Pt]=new Float32Array(he[0].length),Pt++;const _e={chId:re.source,lastUsed:0,unit:"uV",samplePeriod:re.samplePeriod,pageStart:re.pageStart,pageEnd:re.pageEnd,startTs:re.pageStart,isMinMax:re.isResampled,unitM:1,type:"Neural",nrPoints:Ce,parsedData:he,cData:Ne};i==null||i({pageStart:re.pageStart,data:_e,type:"Neural",nrResponses:le.totalResponses})}if(Y!==null){let re=null;Y.isMinMax?re=Y.data.length/2:re=Y.data.length;const he=new Array(3),Ce=Y.startTs;let $e=0,Ne=0,Pt=0;for(;Pt<3;)he[Pt]=new Float64Array(re),Pt++;if(Y.isMinMax){let kn=0;for(let In=0;In<re;In++){let Dn=-Y.data[kn],Mn=-Y.data[kn+1];he[0][In]=Ce+In*Y.samplePeriod,he[1][In]=Dn,he[2][In]=Mn,isNaN(Dn)||(Ne++,$e+=Dn+(Mn-Dn)/2),kn+=2}}else for(let kn=0;kn<re;kn++){let In=-Y.data[kn];he[0][kn]=Ce+kn*Y.samplePeriod,he[1][kn]=In,isNaN(In)||(Ne++,$e+=In)}let _e=0;if(f){const kn=Array.prototype.slice.call(he[1]).sort();_e=kn[Math.round(kn.length/2)]}let ze=new Array(3),Et=0;for(;Et<3;)ze[Et]=new Float32Array(he[0].length),Et++;const Cn={chId:Y.source,lastUsed:Y.lastUsed,unit:Y.unit,samplePeriod:Y.samplePeriod,pageStart:Y.pageStart,pageEnd:Y.pageEnd,startTs:Ce,isMinMax:Y.isMinMax,unitM:Y.unitM,type:Y.segmentType,nrPoints:re,cData:ze,parsedData:he,median:_e,sumElem:$e,nrValidPoints:Ne,name:Y.channelName,label:Y.channelName};Cn.nrPoints>0?o==null||o({pageStart:Y.pageStart,data:Cn,type:Y.segmentType,nrResponses:le.totalResponses}):o==null||o({pageStart:Y.pageStart,data:Cn,nrResponses:le.totalResponses,type:"gap"})}}),L.readAsArrayBuffer(T.data)},g=T=>e.value&&e.value.readyState===1?(e.value.send(JSON.stringify(T)),!0):!1,w=T=>{let L;switch(T){case"NOT_MONTAGED":L={montage:"NOT_MONTAGED",packageId:d};break;default:L={montage:"CUSTOM_MONTAGE",packageId:d,montageMap:T}}g(L)},k=T=>{e.value&&e.value.readyState===1?e.value.send(JSON.stringify(T)):setTimeout(()=>k(T),200)},A=()=>{if(e.value&&e.value.readyState===1){const T={requestType:"DumpBufferRequest"};return e.value.send(JSON.stringify(T)),!0}return console.warn("⚠️ Cannot send dump buffer request - WebSocket not connected"),!1},$=T=>{o=T},M=T=>{i=T},F=T=>{u=T},O=T=>{l=T};vue.onUnmounted(async()=>{await h()});const D=T=>{v=T},j=T=>{d=T},z=T=>{f=T};return{websocket:vue.readonly(e),connectionStatus:vue.readonly(t),openWebsocket:y,send:g,sendMontageMessage:w,sendFilterMessage:k,sendDumpBufferRequest:A,disconnect:h,setClearChannelsCallback:D,setPackageId:j,setUseMedian:z,onSegment:$,onEvent:M,onChannelDetails:F,onError:O}},useCanvasRenderer=()=>{const e=vue.ref(null),t=vue.ref(null),n=(i,u,l)=>u*(i+l),r=(i=1)=>i,a=(i,u,l,v,d,f,c=!1)=>{const p=t.value;if(!p){console.warn("blurArea ref is missing, skipping renderData");return}const h=p.getContext("2d");if(!h){console.warn("Unable to get 2D context for blurArea, skipping renderData");return}h.setTransform(f,0,0,f,0,0),h.fillStyle="rgb(220,220,220)";const y=e.value;if(!y){console.warn("plotArea ref is missing, skipping drawing.");return}const m=y.getContext("2d");if(!m){console.warn("Unable to get 2D context for plotArea, skipping drawing.");return}m.setTransform(f,0,0,f,0,0),m.clearRect(0,0,v.cWidth,v.cHeight),h.clearRect(0,0,v.cWidth,v.cHeight);const _=u.reduce((b,g)=>g.visible?b+1:b,0);s(u,v.pHeight,_),m.save();for(let b in i.channels)if(i.channels.hasOwnProperty(b)){const g=i.channels[b];let w=null;if(w=u.find(T=>T.id===g.id),!w||!w.visible)continue;const k=v.start,A=v.rsPeriod,$=l.XOFFSET,M=Math.min(Math.round(v.cHeight/i.channels.length-2),10);for(let T=0;T<w.dataSegments.length;T+=2){if(w.dataSegments[T+1]<k){console.log("skipping something");continue}if(w.dataSegments[T]>k+v.duration){console.log("breaking something");break}let L=Math.floor($+(w.dataSegments[T]-k)/A),ie=Math.floor($+(w.dataSegments[T+1]-k)/A),x=Math.floor(w.rowBaseline-M/2);h.fillRect(L,x,ie-L,M)}o(w,g,v,l,d,c);const F=g.blocks.length;let O="Continuous";F&&(O=g.blocks[0].type),w.hover?w.selected?(m.strokeStyle="rgba(39,96,255,0.70)",m.fillStyle="rgba(39,96,255,0.70)"):(m.strokeStyle="rgba(39,96,255,0.60)",m.fillStyle="rgba(39,96,255,0.60)"):w.selected?(m.strokeStyle="rgb(249,162,58)",m.fillStyle="rgb(3249,162,58)"):O==="Neural"?m.strokeStyle="rgb(249,162,58)":(m.strokeStyle="black",m.fillStyle="black");let D=null,j=!0,z=1e6*(1/w.sf);for(let T=0;T<F;T++){const L=g.blocks[T];if(L.nrPoints===0){console.log("zero points");continue}const ie=L.cData,x=L.nrPoints,V=ie[0],le=ie[1],Y=ie[2];let re=L.renderStartIndex,he=L.renderEndIndex;switch(h.clearRect(Math.floor(V[re]),Math.floor(w.rowBaseline-M/2),Math.ceil(V[he]-V[re]+2),M+1),L.type){case"Continuous":case"realtime":if(L.isMinMax){if(L.samplePeriod/z<3&&(j=!1),j){m.beginPath(),T>0&&V[re]<D.x+3?m.moveTo(D.x,D.y):m.moveTo(V[re],le[re]);for(let Ce=re;Ce<he+1;Ce++)m.lineTo(V[Ce],le[Ce]);for(let Ce=he-1;Ce>=re;Ce--)m.lineTo(V[Ce],Y[Ce]);T>0&&V[re]<D.x+3&&m.lineTo(D.x,D.y2),m.closePath(),m.fill()}else{m.beginPath();for(let Ce=re;Ce<he+1;Ce++)m.lineTo(V[Ce],le[Ce]),m.lineTo(V[Ce],Y[Ce]),m.moveTo(V[Ce],le[Ce]);m.stroke()}m.beginPath(),m.moveTo(V[re],le[re]);for(let Ce=re;Ce<he+1;Ce++)m.lineTo(V[Ce],le[Ce]);m.stroke()}else{T===0?(m.beginPath(),m.moveTo(V[re],le[re])):V[re]>D.x+2&&m.moveTo(V[re],le[re]);for(let Ce=re;Ce<he+1;Ce++)m.lineTo(V[Ce],le[Ce]);T===F-1&&m.stroke()}break;case"Neural":m.beginPath();for(let Ce=0;Ce<x;Ce++)m.moveTo(V[Ce],le[Ce]),m.lineTo(V[Ce],Y[Ce]);m.stroke();break}D={x:V[x-1],y:le[x-1],y2:Y[x-1]}}}m.restore()},s=(i,u,l)=>{const v=i.map(function(p,h){return{index:h,value:p.rank}});v.sort(function(p,h){return+(p.value>h.value)||+(p.value===h.value)-1});const d=v.map(function(p){return p.index}),f=(u+20)/l;let c=0;for(let p=0;p<d.length;p++){const h=i[d[p]];h.visible?(h.rowBaseline=.5*f+c*f,c++):h.rowBaseline=null}},o=(i,u,l,v,d,f)=>{let c=u.blocks.length;switch(i.type){case"UNIT":if(!f)for(let h=0;h<c;h++){const y=u.blocks[h],m=y.cData,_=y.parsedData,b=v.XOFFSET,g=y.parsedData[0].length,w=m[0],k=m[1],A=m[2],$=_[0],M=i.rowBaseline|0,F=l.start,O=l.rsPeriod,D=l.cHeight/(2*(l.nrVisibleChannels+1))|0;for(let j=0;j<g;j++)w[j]=b+($[j]-F)/O,k[j]=M-D,A[j]=M+D}break;case"CONTINUOUS":let p=0;if(!f){u.mean=0,u.median=0;for(let h=0;h<c;h++){const y=u.blocks[h];y.nrValidPoints>0&&(u.mean=(y.sumElem+p*u.mean)/(p+y.nrValidPoints),u.median=(y.median+p*u.median)/(p+y.nrValidPoints),p+=y.nrValidPoints)}}for(let h=0;h<c;h++){const y=u.blocks[h];let m=Math.floor((l.start-y.startTs)/y.samplePeriod);y.renderStartIndex=m>0?m:0;let _=Math.floor((l.start+l.duration-(y.startTs+y.nrPoints*y.samplePeriod))/y.samplePeriod);y.renderEndIndex=_>=0?y.nrPoints-1:y.nrPoints+_;const b=y.cData,g=y.parsedData,w=d*i.rowScale,k=v.XOFFSET,A=y.parsedData[0].length,$=b[0],M=b[1],F=b[2],O=g[0],D=g[1],j=g[2],z=i.rowBaseline;let T=0;v.USEMEDIAN?T=u.median:T=u.mean;const L=l.rsPeriod,ie=l.start;for(let x=0;x<A;x++)$[x]=k+(O[x]-ie)/L,M[x]=z-(D[x]-T)*w,y.isMinMax&&(D[x]===j[x]?F[x]=M[x]+1:F[x]=z-(j[x]-T)*w)}break}};return{plotCanvasRef:e,blurCanvasRef:t,initializeCanvases:r,renderData:a,computeChannelViews:s,getPointCoords:o,cpCanvasScaler:n}},useTimeSeriesData=()=>{const e=vue.ref([]),t=vue.ref(new Map),n=vue.reactive({start:0,duration:0,channels:[]}),r=vue.ref(!1),a=vue.ref(0),s=vue.ref(null),o=vue.ref(1),i=15e6,u=3,l=(g,w,k,A)=>{A||(A=0);let $=v(g,w,A,g.length-1,k);return $===-1?$=0:$<0&&($=-$-2),$},v=(g,w,k,A,$)=>{if(A<k){let F;if(A>=0?F=A:F=-A-2,F===-1)return F;const O=g[F].pageStart;for(;F>=0&&g[F].pageStart===O;)F--;return F++,-F-2}const M=parseInt((k+A)/2);if(g[M].pageStart>w)return v(g,w,k,M-1,$);if(g[M].pageStart<w)return v(g,w,M+1,A,$);{let F=M;if($){for(;F>=0&&g[F].pageStart===w;)F--;F++}else{for(;F<g.length&&g[F].pageStart===w;)F++;F--}return F}},d=(g,w,k)=>{if(!g)return Promise.resolve();const A=[];if(g.length>0){const $=[];for(let M=0;M<g.length;M++){const F=g[M].content,D={id:k?k(F):F.id,serverId:F.serverId,label:F.name,displayName:F.displayName,type:F.channelType,segments:[],start:F.start,end:F.end,sampleFreq:F.rate,unit:F.unit,gaps:[],dataSegments:[]},j=D.label.split("<->",3),z=j[0];let T=j.length>1?parseFloat(j[1]):0;T=isNaN(T)?j[1]:T,$.push({id:D.id,serverId:D.serverId,type:D.type,label:D.label,displayName:D.displayName,label_split:j,label_prefix:z,label_value:T,dataSegments:[],rank:M,visible:!0,plotAgainst:null,rowBaseline:null,rowScale:1,rowAdjust:0,selected:!1,hover:!1,unit:F.unit,sf:F.rate,filter:{},hideFilter:!0,isEditing:!1}),A.push(D)}w&&w.setChannels($)}return f(A),e.value=A,a.value=g.length,r.value=!0,Promise.resolve()},f=g=>{var w,k;if(g.length===0){s.value=null;return}s.value=((k=(w=g[0])==null?void 0:w.gaps)==null?void 0:k[0])||null},c=g=>{let w=null;const k=g.data.chId||g.data.source,A=g.data.label||g.data.name;if(w=e.value.find($=>$.serverId===k&&$.label===A),!w){console.error("❌ NO EXACT MATCH - rejecting to prevent data corruption:",{serverResponseId:k,serverResponseName:A,availableChannels:e.value.map($=>({id:$.id,serverId:$.serverId,label:$.label,matches:{serverId:$.serverId===k,label:$.label===A}}))});return}switch(g.type){case"gap":case"Neural":case"Continuous":let $=!1,M=w&&w.segments;if(M&&g.type!=="gap"&&($=!0,M.length>0)){let O=l(M,g.data.startTs,!0,0);for(;M[O]&&M[O].pageStart===g.data.pageStart;){if(M[O].startTs===g.data.startTs){$=!1;break}O++}}let F=t.value.get(g.data.pageStart);if(F){let O=F.counter.get(w.id);if(isNaN(O)&&(O=g.nrResponses||1,F.counter.set(w.id,O)),O>0&&(O=O-1,F.counter.set(w.id,O)),O===0){let D=!0;for(let[j,z]of F.counter.entries())if(z>0||isNaN(z)){D=!1;break}D&&t.value.delete(g.data.pageStart)}}$&&(M.push(g.data),M.sort((O,D)=>O.startTs<D.startTs?-1:O.startTs>D.startTs?1:0));break}},p=()=>{s.value=[],t.value.clear();for(let g=0;g<e.value.length;g++)e.value[g].segments=[];for(let g=0;g<n.channels.length;g++)n.channels[g].blocks=[]},h=g=>{let w=0,k=0,A=n.channels;for(let M=0;M<A.length;M++){let F=A[M].blocks;for(let O=0;O<F.length;O++)F[O].type==="Continuous"&&(w+=y(F[O].parsedData[1]),k++)}const $=w/k;return!isNaN($)&&g?g/A.length/(2*$):1},y=g=>{const w=m(g),k=g.map(function(M){const F=M-w;return F*F}),A=m(k);return Math.sqrt(A)},m=g=>g.reduce(function(A,$){return A+$},0)/g.length;return{chData:e,requestedPages:t,viewData:n,channelsReady:r,autoScale:a,globalGaps:s,pageSize:i,prefetchPages:u,currentRequestedSamplePeriod:o,initChannels:d,computeSummary:f,dataCallback:c,invalidate:p,autoScaleViewData:h,segmIndexOf:l,updateCurrentRequestedSamplePeriod:g=>{o.value=Math.ceil(g)},isDataCurrentForViewport:g=>g&&g.startTs&&g.startTs>0,standardDeviation:y,average:m}},useDataRequests=()=>{const e=vue.ref([]),t=vue.ref([]),n=vue.ref(null),r=vue.ref(!1),a=vue.ref(null),s=vue.ref(0),o=vue.ref(0);let i=null;const u=(_,b)=>{i=function(){var w,k;if(t.value.length>0){const $=((w=b.value)==null?void 0:w.size)||0;$<5?_([t.value[0]])?t.value.splice(0,1):(console.warn("❌ Prefetch request failed"),clearInterval(n.value),r.value=!1):console.log("🚫 Prefetch blocked - too many pending pages:",{current:$,max:5,pendingPageStarts:Array.from(((k=b.value)==null?void 0:k.keys())||[])})}else console.log("✅ No more prefetch requests, stopping prefetch timer"),clearInterval(n.value),r.value=!1}},l=(_,b,g,w,k,A,$,M,F,O)=>{w.start=b,w.duration=g;const D=[];for(let j=0;j<w.channels.length;j++){const z=O?O(w.channels[j]):w.channels[j].id;D.push(z)}for(let j=0;j<_.length;j++){const z=_[j],T=O?O(z):z.id;D.indexOf(T)<0&&w.channels.push({id:T,mean:null,firstRenderedIndex:0,lastRenderedIndex:0,blocks:[]})}return v(_,b,g,w,k,A,$,M,F,O)},v=(_,b,g,w,k,A,$,M,F,O)=>{e.value=[];let j=!1;(s.value!==b||o.value!==g)&&(t.value=[],j=!0),s.value=b,o.value=g;const z=[];for(let T=0;T<w.channels.length;T++)z.push(w.channels[T]);for(let T=0;T<_.length;T++){let L=!1;const ie=_[T],x=ie.segments,V=O?O(ie):ie.id,le=z.findIndex(Pt=>(O?O(Pt):Pt.id)===V);if(le===-1)continue;const Y=w.channels[le];if(!Y)continue;Y.blocks=[];let re=Math.floor(b/15e6)*15e6;re<0&&(re=0);let he=0,Ce=0;x.length>0&&(he=F(x,re,!0,0));let $e=b+g+A.PREFETCHPAGES*15e6;$e>M&&($e=M);let Ne;for(x.length>0&&(Ne=x[he]);re<$e||L;){L=!1;let Pt=!1;if(Ne&&(Pt=re>=Ne.pageStart&&re<=Ne.pageEnd),Pt){let _e=Ne.startTs<b+g;Ce+=1,re+=15e6,_e&&Y.blocks.push(Ne);const ze=Ne.pageStart;Ne=x[he+Ce],Ne&&ze===Ne.pageStart&&(L=!0)}else{if(k.get(re)){if(re+=15e6,Ne&&re>=Ne.pageEnd)for(;Ne&&Ne.pageEnd<re&&(Ce+=1,Ne=x[he+Ce],!!Ne););continue}let _e=re<b+g,ze=!1;if(_e){for(let Et in t.value)if(t.value[Et].start===re){t.value.splice(Et,1);break}for(let Et in e.value)e.value[Et].start===re&&(e.value[Et].channels.push(ie),ze=!0);ze||e.value.push({channels:[ie],start:re,duration:15e6,isInViewport:!0,pixelWidth:Math.ceil($)})}else if(j){for(let Et in t.value)t.value[Et].start===re&&(t.value[Et].channels.push(ie),ze=!0);ze||t.value.push({channels:[ie],start:re,duration:15e6,isInViewport:!1,pixelWidth:Math.ceil($)})}if(re+=15e6,Ne&&re>=Ne.pageEnd)for(;Ne&&Ne.pageEnd<re&&(Ce+=1,Ne=x[he+Ce],!!Ne););}}Y.blocks.sort(d)}return{asyncRequests:e.value,asyncPreRequests:t.value}},d=(_,b)=>_.startTs<b.startTs?-1:_.startTs>b.startTs?1:0,f=(_,b=0,g,w,k,A,$,M)=>{if(_.length===0)return console.log("⚠️ No requests to send"),!1;const F=M;for(let O=0;O<_.length;O++){let D;O===0?D=_[b]:O===b?D=_[0]:D=_[O];let j=D.start+D.duration;j>F&&(j=F);const z=g;if(z&&z.readyState===1){const T=D.channels.map(Y=>{const re=Y.serverId||Y.id,he=Y.label||Y.name;return{id:re,name:he}}),L={session:w,minMax:!0,startTime:D.start,endTime:j,packageId:k.content.id,pixelWidth:D.pixelWidth,virtualChannels:T},ie=JSON.stringify(L);z.send(ie);const x=D.channels.length,V=new Map;for(let Y=0;Y<x;Y++){const re=D.channels[Y].id;V.set(re,NaN)}const le={count:x,counter:V,subPageCount:NaN,ts:Date.now(),inViewport:D.isInViewport,channels:D.channels.map(Y=>({id:Y.id,serverId:Y.serverId,label:Y.label}))};$.set(D.start,le)}else return console.error("❌ WebSocket not ready for sending requests:",{readyState:z==null?void 0:z.readyState,wsExists:!!z}),!1}return e.value=[],!0},c=()=>{t.value.length>0&&(r.value||(n.value=setInterval(i,150),r.value=!0))},p=()=>{n.value&&(clearInterval(n.value),n.value=null),r.value=!1},h=()=>{const _=e.value.length,b=t.value.length;e.value=[],t.value=[],s.value=0,o.value=0,p(),console.log("🧹 Cleared requests:",{asyncRequests:_,preRequests:b})},y=()=>{const _=e.value.slice();return e.value=[],_},m=(_,b,g)=>{const w=[];return _.forEach(function(k,A){if(!isNaN(k.subPageCount)){const $=[];k.counter.forEach(function(M,F){!isNaN(M)&&M>0&&$.push(F)}),$.length>0&&w.push({channels:$,start:A,duration:b,isInViewport:!0,pixelWidth:Math.ceil(g)})}}),_.clear(),w};return vue.onUnmounted(()=>{p()}),{aSyncRequests:vue.readonly(e),aSyncPreRequests:vue.readonly(t),isPrefetching:vue.readonly(r),lastViewPageRequest:vue.readonly(a),initializePrefetch:u,generatePoints:l,requestData:v,requestDataFromServer:f,startPrefetching:c,stopPrefetching:p,clearRequests:h,getViewportRequests:y,reRequestPages:m}},useChannelProcessing=(e,t,n,r)=>{const a=vue.reactive({totalChannels:0,processedChannels:0,montageChannels:0,errors:0,lastProcessingTime:0}),s=vue.ref(new Map),o=vue.ref(new Map),i=vue.computed(()=>t.value!=="NOT_MONTAGED"),u=vue.computed(()=>!i.value||!n.value?null:n.value.find(O=>O.name===t.value)),l=vue.computed(()=>{var O;return((O=u.value)==null?void 0:O.channelPairs)||{}});vue.watch(t,()=>{s.value.clear(),o.value.clear()});const v=O=>O?propOr("","id",O):"",d=O=>O?propOr("","serverId",O)||propOr("","id",O):"",f=O=>propOr("","id",O),c=O=>{if(!O)return"";let D=propOr("","id",O);if(i.value&&typeof D=="string"){const j=D.split("_");D=j.length>1?head(j):D}return D},p=(O,D,j=null)=>{var ie,x;const z=j||t.value,T=`${O}_${D}_${z}`;if(o.value.has(T))return o.value.get(T);let L=`${O}-${D}`;if(z!=="NOT_MONTAGED"){const V=(ie=n.value)==null?void 0:ie.find(le=>le.name===z);if(V!=null&&V.channelPairs)for(const le of Object.keys(V.channelPairs)){const Y=V.channelPairs[le];if(((x=Y.channels)==null?void 0:x.length)===2&&Y.channels[0]===O&&Y.channels[1]===D){L=Y.name||L;break}}}return o.value.set(T,L),L},h=O=>{if(!Array.isArray(O))return console.warn("Invalid channel details provided:",O),[];const D=performance.now();a.totalChannels=O.length,a.processedChannels=0,a.errors=0;const j=O.map(({id:z,name:T})=>{var L;try{const ie=y(z);if(!ie)return console.warn(`❌ Base channel not found for ID: ${z}, available base channels:`,((L=e.value)==null?void 0:L.map(V=>({id:V==null?void 0:V.id,name:V==null?void 0:V.name})))||[]),a.errors++,null;const x=m(z,T,ie);return a.processedChannels++,i.value&&a.montageChannels++,x}catch(ie){return console.error(`❌ Error processing channel ${z}:`,ie),a.errors++,null}}).filter(Boolean);return a.lastProcessingTime=performance.now()-D,j},y=O=>{var j;if(s.value.has(O))return s.value.get(O);const D=(j=e.value)==null?void 0:j.find(z=>(z==null?void 0:z.id)===O);return D&&s.value.set(O,D),D},m=(O,D,j)=>{let z=D;const T=O;let L=O;if(i.value){L=`${O}_${D}`;const x=D.split("<->",2);x.length===2&&(z=p(x[0],x[1]),console.log("🎭 Montage display name created:",{originalName:D,channelParts:x,displayName:z}))}return{content:{id:L,serverId:T,name:D,channelType:j.channelType,label:D,displayName:z,unit:j.unit,rate:j.rate,start:j.start,end:j.end,montageScheme:i.value?t.value:"NOT_MONTAGED",isMontaged:i.value,baseChannelId:O},properties:j.properties||[]}},_=O=>{var z,T;if(O==="NOT_MONTAGED")return{montage:"NOT_MONTAGED",packageId:(z=r.value)==null?void 0:z.id,montageMap:[]};const D=n.value.find(L=>L.name===O);if(!D)return console.warn("Montage not found:",O),null;const j=D.channelPairs.map(L=>L.channels);return{montage:"CUSTOM_MONTAGE",packageId:(T=r.value)==null?void 0:T.content.id,montageMap:j}},b=O=>{const D=[];if(!O)return D.push("Channel configuration is null or undefined"),{isValid:!1,errors:D};const j=["id","label","type","unit","rate"];for(const T of j)O[T]||D.push(`Missing required field: ${T}`);O.rate&&(typeof O.rate!="number"||O.rate<=0)&&D.push("Sample rate must be a positive number"),O.start&&O.end&&O.start>=O.end&&D.push("Channel start time must be less than end time");const z=["CONTINUOUS","UNIT","Neural"];return O.type&&!z.includes(O.type)&&D.push(`Invalid channel type: ${O.type}. Must be one of: ${z.join(", ")}`),{isValid:D.length===0,errors:D}},g=O=>O.sort((D,j)=>{const z=D.label||"",T=j.label||"",L=z.split("<->",3),ie=T.split("<->",3);if(L.length>2||ie.length>2)return z.localeCompare(T);const x=L[0]||"",V=ie[0]||"";if(x===V&&L.length>1&&ie.length>1){const le=parseFloat(L[1]),Y=parseFloat(ie[1]);return!isNaN(le)&&!isNaN(Y)?le-Y:L[1].localeCompare(ie[1])}return x.localeCompare(V)}),w=(O,D=0)=>{const j=O.content,z=j.label.split("<->",3),T=z[0]||"",L=z.length>1?isNaN(parseFloat(z[1]))?z[1]:parseFloat(z[1]):0;return{id:j.id,serverId:j.serverId,type:j.channelType,label:j.label,displayName:j.displayName,labelParts:z,labelPrefix:T,labelValue:L,dataSegments:[],rank:D,visible:!0,plotAgainst:null,rowBaseline:null,rowScale:1,rowAdjust:0,selected:!1,hover:!1,unit:j.unit,sf:j.rate,filter:{},hideFilter:!0,isEditing:!1,montageScheme:j.montageScheme||"NOT_MONTAGED",isMontaged:j.isMontaged||!1,baseChannelId:j.baseChannelId}},k=(O,D={})=>{const{channelType:j=null,visible:z=null,montageScheme:T=null,labelPattern:L=null,sampleRate:ie=null}=D;return O.filter(x=>!(j&&x.type!==j||z!==null&&x.visible!==z||T&&x.montageScheme!==T||L&&!new RegExp(L,"i").test(x.label)||ie&&x.sf!==ie))},A=(O,D="type")=>{const j={};return O.forEach(z=>{let T;switch(D){case"type":T=z.type;break;case"montage":T=z.montageScheme||"NOT_MONTAGED";break;case"prefix":T=z.labelPrefix;break;case"sampleRate":T=z.sf;break;case"unit":T=z.unit;break;default:T="all"}j[T]||(j[T]=[]),j[T].push(z)}),j},$=()=>{var O;return{...a,cacheSize:s.value.size,montageCacheSize:o.value.size,isViewingMontage:i.value,currentMontageScheme:t.value,availableMontages:((O=n.value)==null?void 0:O.map(D=>D.name))||[]}},M=()=>{s.value.clear(),o.value.clear(),Object.assign(a,{totalChannels:0,processedChannels:0,montageChannels:0,errors:0,lastProcessingTime:0})},F=async O=>{const D=[];for(const j of O)try{const z=await j();D.push({success:!0,result:z})}catch(z){D.push({success:!1,error:z.message}),a.errors++}return D};return{processingStats:vue.readonly(a),isViewingMontage:i,currentMontage:u,montageChannelPairs:l,getChannelId:v,getBaseChannelId:c,getServerChannelId:d,getRawChannelId:f,getDisplayName:p,processChannelData:h,createMontagePayload:_,createChannelConfig:w,validateChannelConfig:b,sortChannelConfigurations:g,filterChannels:k,groupChannels:A,findBaseChannel:y,createVirtualChannel:m,getProcessingStats:$,clearCaches:M,batchProcessChannels:F}};function createThrottle(e,t,n={}){let r,a,s,o=null,i=0;const{leading:u=!0,trailing:l=!0}=n,v=function(){i=u===!1?0:Date.now(),o=null,s=e.apply(r,a),o||(r=a=null)},d=function(){const f=Date.now();!i&&u===!1&&(i=f);const c=t-(f-i);return r=this,a=arguments,c<=0||c>t?(o&&(clearTimeout(o),o=null),i=f,s=e.apply(r,a),o||(r=a=null)):!o&&l!==!1&&(o=setTimeout(v,c)),s};return d.cancel=function(){clearTimeout(o),i=0,o=r=a=null},d}const _hoisted_1$k={class:"timeseries-plot-canvas"},_hoisted_2$8=["width","height"],_hoisted_3$7=["width","height"],_sfc_main$U={__name:"TSPlotCanvas",props:{cHeight:{type:Number,required:!0},cWidth:{type:Number,required:!0},start:{type:Number,required:!0},duration:{type:Number,required:!0},constants:{type:Object,required:!0},rsPeriod:{type:Number,required:!0},ts_start:{type:Number,required:!0},ts_end:{type:Number,required:!0},globalZoomMult:{type:Number,required:!0},activeViewer:{type:Object,required:!0}},emits:["channelsInitialized","setGlobalZoom"],setup(e,{expose:t,emit:n}){const r=e,a=n,s=vue.computed(()=>r.activeViewer||{}),o=vue.computed(()=>{var Oe;return((Oe=s.value)==null?void 0:Oe.channels)||[]}),i=useViewerStore(),{viewerChannels:u,viewerMontageScheme:l,workspaceMontages:v}=pinia.storeToRefs(i),{websocket:d,connectionStatus:f,openWebsocket:c,send:p,sendFilterMessage:h,sendDumpBufferRequest:y,disconnect:m,setClearChannelsCallback:_,onSegment:b,onEvent:g,onChannelDetails:w,onError:k}=useWebSocket(),{plotCanvasRef:A,blurCanvasRef:$,initializeCanvases:M,renderData:F,cpCanvasScaler:O}=useCanvasRenderer(),D=vue.ref(1),j=vue.ref(!1),{chData:z,requestedPages:T,viewData:L,channelsReady:ie,autoScale:x,initChannels:V,dataCallback:le,invalidate:Y,autoScaleViewData:re,segmIndexOf:he,updateCurrentRequestedSamplePeriod:Ce,currentRequestedSamplePeriod:$e,isDataCurrentForViewport:Ne}=useTimeSeriesData(),{aSyncRequests:Pt,aSyncPreRequests:_e,isPrefetching:ze,initializePrefetch:Et,generatePoints:Cn,requestDataFromServer:kn,startPrefetching:In,clearRequests:Dn}=useDataRequests(),{getChannelId:Mn,processChannelData:Ue,createMontagePayload:xe}=useChannelProcessing(o,l,v,s),Dt=vue.ref({totalRequests:0,successfulRequests:0,failedRequests:0,montageRequests:0,singleChannelRequests:0,lastPrefetchTime:null,averageResponseTime:0}),kt=vue.ref(null),_n=vue.ref(null),Sn=vue.ref(null),Tn=vue.ref(0),An=vue.computed(()=>D.value*r.cWidth),qe=vue.computed(()=>O(r.cHeight,D.value,0)),vn=vue.computed(()=>r.cHeight-20),Nn=vue.computed(()=>({width:r.cWidth+"px",height:vn.value+"px"})),Pn=vue.reactive({start:r.start,duration:r.duration,cWidth:r.cWidth,cHeight:r.cHeight,pHeight:vn.value,rsPeriod:r.rsPeriod,nrVisibleChannels:0}),xn=vue.computed(()=>r.rsPeriod>0?r.rsPeriod:Pn.duration>0&&Pn.cWidth>0?Pn.duration/Pn.cWidth:(console.warn("⚠️ Using fallback rsPeriod = 1"),1));vue.watch(xn,Oe=>{Oe>0&&Ce(Oe)},{immediate:!0});const Bn=()=>{var Oe;try{if(!ie.value){console.log("⏳ Render skipped - channels not ready");return}Pn.nrVisibleChannels=((Oe=u.value)==null?void 0:Oe.reduce((wn,hn)=>hn.visible?wn+1:wn,0))||0;let At=0,En=0;if(L.channels.forEach((wn,hn)=>{const Lt=wn.blocks||[],On=Lt.reduce((ue,Fe)=>ue+(Fe.nrPoints||0),0);Lt.length>0&&(En++,At+=Lt.length)}),En===0)return;F(L,u.value||[],r.constants,Pn,r.globalZoomMult,D.value)}catch(At){console.error("💥 ERROR in renderDataInternal:",At),console.error("💥 Stack trace:",At.stack)}},Rn=vue.ref(),qn=()=>{Rn.value=setInterval(()=>{var En,wn;if(!ie.value)return;const Oe={timestamp:new Date().toISOString(),requestedPagesSize:T.value.size,isPrefetching:ze.value,pendingAsyncRequests:Pt.value.length,pendingPreRequests:_e.value.length,currentMontage:l.value,channelCount:((En=u.value)==null?void 0:En.length)||0,visibleChannelCount:((wn=u.value)==null?void 0:wn.filter(hn=>hn.visible).length)||0,connectionStatus:f.value,requestedPages:Array.from(T.value.entries()).map(([hn,Lt])=>{var On;return{pageStart:hn,channelCount:Lt.count,inViewport:Lt.inViewport,age:Date.now()-Lt.ts,channels:((On=Lt.channels)==null?void 0:On.map(ue=>ue.id))||Array.from(Lt.counter.keys())}})},At=Oe.requestedPages.filter(hn=>hn.age>1e4);At.length>0&&console.warn("⚠️ Detected stuck requests:",At),Oe.pendingPreRequests>0&&!Oe.isPrefetching&&console.warn("⚠️ Prefetch is blocked with pending requests:",{pendingPreRequests:Oe.pendingPreRequests,requestedPagesSize:Oe.requestedPagesSize})},5e3)},Fn=async()=>{if(!u.value)return;const Oe=z.value.filter(Fe=>{const Ve=u.value.find(bn=>bn.id===Fe.id);return Ve&&Ve.visible}),At=xn.value,En=Cn(Oe,r.start,r.duration,L,T.value,r.constants,At,r.ts_end,he,Mn),wn=Math.ceil(At);let hn=!1,Lt="";if(kt.value!==null&&wn!==kt.value&&(hn=!0,Lt=`rsPeriod changed: ${kt.value} → ${wn} (resolution change)`),_n.value!==null){const Fe=Math.abs(r.start-_n.value),Ve=Math.max(r.duration,Sn.value||r.duration);Fe>Ve*2&&(hn=!0,Lt=`Large time jump: ${Fe} > ${Ve*2} (${(Fe/Ve).toFixed(1)}x window)`)}const On=15;if(T.value.size>On&&(hn=!0,Lt=`Too many pending requests: ${T.value.size} > ${On}`),Tn.value>=5&&(hn=!0,Lt=`High stale data rate: ${Tn.value} consecutive stale segments`),hn&&!j.value){j.value=!0,console.log("🚨 Dumping server buffer before new requests:",Lt);try{y()&&(T.value.clear(),Dn(),Tn.value=0,await new Promise(Fe=>setTimeout(Fe,50)))}finally{j.value=!1}}else if(hn&&j.value){console.log("⏭️ Skipping duplicate dump request (already in progress)");return}kt.value=wn,_n.value=r.start,Sn.value=r.duration;const ue=await useToken();En.asyncRequests.length>0&&kn(En.asyncRequests,0,d.value,ue,s.value,At,T.value,r.ts_end),En.asyncPreRequests.length>0&&In()},$n=()=>{Fn(),Bn()},oe=()=>{Fn(),x.value===0?(x.value--,pe()):Bn()},pe=()=>{const Oe=re(r.cHeight);Oe&&!isNaN(Oe)&&a("setGlobalZoom",Oe),Bn()},S=createThrottle(oe,250,{leading:!1}),ae=createThrottle(()=>$n(),50);vue.watch(()=>r.rsPeriod,(Oe,At)=>{Oe>0&&Ce(Oe),Y(),T.value.clear()}),vue.watch(()=>r.duration,(Oe,At)=>{Y()}),vue.watch(()=>l.value,Oe=>{if(d.value&&d.value.readyState===1){console.log("🔄 Montage changing to:",Oe),T.value.clear(),Dn(),Y(),Tn.value=0,kt.value=null,_n.value=null,Sn.value=null,ie.value=!1;const At=xe(Oe);console.log("📡 Sending montage payload:",At),At&&p(At)}}),vue.watch(()=>[r.start,r.duration,r.cWidth,r.cHeight,r.rsPeriod],()=>{Pn.start=r.start,Pn.duration=r.duration,Pn.cWidth=r.cWidth,Pn.cHeight=r.cHeight,Pn.pHeight=vn.value,Pn.rsPeriod=r.rsPeriod}),b(Oe=>{Oe.pageStart>=r.start+r.duration&&(Dt.value.totalRequests++,l.value!=="NOT_MONTAGED"?Dt.value.montageRequests++:Dt.value.singleChannelRequests++),le(Oe),Oe.pageStart<r.start+r.duration&&S()}),g(Oe=>{if(!Ne(Oe.data)){Tn.value++;return}Tn.value=0,le(Oe),Oe.pageStart<r.start+r.duration&&S()}),w(Oe=>{const At=Ue(Oe);V(At,i,Mn).then(()=>{Y(),$n(),a("channelsInitialized")})}),k(Oe=>{i.setViewerErrors(Oe)});const de=async()=>{var En,wn,hn;const Oe=xn.value;Ce(Oe),_(()=>{var Lt;if((Lt=u.value)!=null&&Lt.length){const ue={channelFiltersToClear:u.value.map(Fe=>Fe.id)};h(ue)}});const At=await useToken();if(Et(Lt=>{const On=xn.value;return kn(Lt,0,d.value,At,s.value,On,T.value,r.ts_end)},T),(En=s.value)!=null&&En.content.id)try{console.log("🔄 Opening WebSocket connection for package:",s.value.content.id),await c(i.config.timeSeriesPublicUrl,s.value.content.id,At),console.log("✅ WebSocket connection established"),qn()}catch(Lt){console.error("❌ Failed to establish WebSocket connection:",Lt);return}console.log("🚀 TSPlotCanvas mounted with config:",{activeViewerId:(wn=s.value)==null?void 0:wn.content.id,initialMontage:l.value,baseChannelCount:((hn=o.value)==null?void 0:hn.length)||0,viewport:{start:r.start,duration:r.duration,width:r.cWidth,height:r.cHeight,rsPeriod:r.rsPeriod}})};return vue.onMounted(async()=>{D.value=1,M(D.value),de()}),vue.onUnmounted(()=>{clearInterval(Rn.value),T.value.size>0&&y(),i.resetViewer(),Dn(),m(),S.cancel&&S.cancel(),ae.cancel&&ae.cancel()}),t({renderAll:$n,invalidate:Y,throttledDataRender:ae,sendFilterMessage:h,viewData:L,requestedPages:T,chData:z,viewerChannels:u,currentRequestedSamplePeriod:$e,initPlotCanvas:de}),(Oe,At)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$k,[vue.createElementVNode("canvas",{ref_key:"blurCanvasRef",ref:$,class:"canvas",width:An.value,height:qe.value,style:vue.normalizeStyle(Nn.value)},null,12,_hoisted_2$8),vue.renderSlot(Oe.$slots,"axisCanvas",{},void 0,!0),vue.renderSlot(Oe.$slots,"annCanvas",{},void 0,!0),vue.createElementVNode("canvas",{ref_key:"plotCanvasRef",ref:A,class:"canvas",width:An.value,height:qe.value,style:vue.normalizeStyle(Nn.value)},null,12,_hoisted_3$7)]))}},TSPlotCanvas=_export_sfc$1(_sfc_main$U,[["__scopeId","data-v-109a56ec"]]),_hoisted_1$j={class:"timeseries-viewer-canvas"},_hoisted_2$7={id:"canvasWrapper"},_hoisted_3$6=["width","height"],_hoisted_4$4=["width","height"],_hoisted_5$3=["width","height"],_hoisted_6$3=["width","height"],_sfc_main$T={__name:"TSViewerCanvas",props:{windowHeight:Number,windowWidth:Number,duration:Number,start:Number,cHeight:Number,cWidth:Number,globalZoomMult:Number,constants:Object,tsStart:Number,tsEnd:Number,cursorLoc:Number,activeViewer:{type:Object,required:!0}},emits:["setDuration","setGlobalZoom","setStart","addAnnotation","updateAnnotation","closeAnnotationLayerWindow","channelsInitialized","annLayersInitialized"],setup(e,{expose:t,emit:n}){const r=vue.defineAsyncComponent(()=>Promise.resolve().then(()=>TSAnnotationCanvas$1)),a=e,s=n,o=useViewerStore(),{viewerChannels:i,viewerAnnotations:u,viewerActiveTool:l,viewerSelectedChannels:v}=pinia.storeToRefs(o),d=vue.ref(null),f=vue.ref(null),c=vue.ref(null),p=vue.ref(null),h=vue.ref(null),y=vue.ref(null);vue.reactive({});const m=vue.ref(0),_=vue.ref(0),b=vue.ref(0),g=vue.ref(1),w=vue.ref(!1),k=vue.ref(!1),A=vue.ref("pointer");vue.ref(!1);const $=vue.reactive({x:0,y:0}),M=vue.ref(0),F=vue.ref(["Event","Artifact","Seizure","Mark","Stim On","Stim Off","Start","Stop"]),O=vue.ref(0),D=vue.ref(null),j=vue.ref(0),z=vue.ref(!0),T=()=>{if(u.value.length>0){if(!u.value.some(ae=>ae.selected)){console.log("No layer selected, selecting first layer:",u.value[0]);const ae=u.value[0];ae&&ae.id?o.setActiveAnnotationLayer(ae.id):console.error("First layer has no ID:",ae)}}else console.warn("No annotation layers available - waiting for layers to load"),setTimeout(()=>{u.value.length>0&&T()},500)},L=S=>{if(console.log("TSViewerCanvas: setActiveTool called with:",S),S){const ae="set"+S.charAt(0).toUpperCase()+S.slice(1),de=ie[ae];typeof de=="function"&&de()}},ie={setPan:()=>{console.log("Pan tool activated")},setPointer:()=>{console.log("Pointer tool activated")},setAnnotate:()=>{console.log("Annotate tool activated"),T()}},x=vue.computed(()=>i.value.filter(S=>S.visible).length),V=vue.computed(()=>a.cHeight-20),le=vue.computed(()=>a.cWidth+a.constants.CURSOROFFSET);vue.computed(()=>f.value);const Y=vue.computed(()=>({width:a.cWidth+"px",height:a.cHeight+"px"})),re=vue.computed(()=>({width:a.cWidth+"px",height:V.value+"px"})),he=vue.computed(()=>({width:le.value+"px",height:a.cHeight+"px"}));vue.watch(()=>a.cHeight,()=>{Sn()}),vue.watch(()=>a.cWidth,()=>{Sn()}),vue.watch(()=>a.start,()=>{qe()}),vue.watch(()=>a.duration,()=>{var S;(S=d.value)==null||S.invalidate(),Tn(a.cWidth,a.duration),qe()}),vue.watch(()=>a.globalZoomMult,()=>{vue.nextTick(()=>{var S;(S=d.value)==null||S.throttledDataRender()})}),vue.watch(l,S=>{S&&(L(S),!w.value&&!["annResize-left","annResize-right","annSelect"].includes(A.value)&&(A.value=S))},{immediate:!0}),vue.watch(u,S=>{S.length>0&&l.value==="annotate"&&T()},{immediate:!0}),vue.watch(A,()=>{console.log(A);const S=y.value;if(S){switch(S.removeAttribute("col_resize"),S.removeAttribute("active"),S.removeAttribute("point"),A.value){case"cursor_hover":S.removeAttribute("point"),S.setAttribute("cursor_hover",!0);break;case"annResize-left":case"annResize-right":S.setAttribute("col_resize",!0);break;case"annSelect":S.setAttribute("active",!0);break;case"pan":case"pan":break;case"pointer":case"annotate":S.setAttribute("point",!0);break;default:S.removeAttribute("point"),S.removeAttribute("cursor_hover");break}vue.nextTick(()=>{Nn()})}});const Ce=()=>{var S;(S=h.value)==null||S.resetFocusedAnnotation()},$e=S=>{var ae;(ae=h.value)==null||ae.createAnnotationLayer(S)},Ne=()=>{var de;let S=(a.cursorLoc*a.cWidth-a.constants.CURSOROFFSET)*m.value;return((de=h.value)==null?void 0:de.findNextAnnotation(a.start+S)).start-S},Pt=()=>{var de;let S=(a.cursorLoc*a.cWidth-a.constants.CURSOROFFSET)*m.value;return((de=h.value)==null?void 0:de.findPreviousAnnotation(a.start+S)).start-S},_e=S=>{s("updateAnnotation",S)},ze=()=>{s("closeAnnotationLayerWindow")},Et=()=>{qe(100)},Cn=()=>{console.log("Annotation layers initialized, ensuring active layer for annotate tool"),l.value==="annotate"&&T(),s("annLayersInitialized")},kn=S=>{s("setGlobalZoom",S)},In=()=>{s("channelsInitialized")},Dn=S=>{S.stopPropagation(),S.preventDefault(),S.shiftKey?Math.abs(S.deltaY)>Math.abs(S.deltaX)&&(S.deltaY>0?s("setDuration",a.duration*1.1):s("setDuration",a.duration/1.1)):Math.abs(S.deltaY)>Math.abs(S.deltaX)&&(S.deltaY>0?s("setGlobalZoom",a.globalZoomMult*1.2):s("setGlobalZoom",a.globalZoomMult/1.2))},Mn=S=>{var ae,de;switch(console.log("TSViewerCanvas: _onMouseUp called with pointerMode:",A.value,"viewerActiveTool:",l.value),k.value=!1,w.value=!1,A.value){case"pointer":Ue();const Oe=S.metaKey,At=S.clientY-y.value.getBoundingClientRect().top,En=$.y-y.value.getBoundingClientRect().top,wn=i.value.map(bn=>(Oe===!1&&(bn.selected=!1),(bn.rowBaseline>En&&bn.rowBaseline<At||bn.rowBaseline<En&&bn.rowBaseline>At)&&(bn.selected=!0),bn));o.setChannels(wn),qe();break;case"annSelect":Ue(),(ae=h.value)==null||ae.selectFocusedAnn();break;case"annotate":T();let hn=null,Lt=null;for(let bn=0;bn<u.value.length;bn++)if(u.value[bn].selected){hn=bn,Lt=u.value[bn];break}if(console.log("Creating annotation - curLIndex:",hn,"available layers:",u.value.length),console.log("Selected layer details:",Lt),hn===null||!Lt||!Lt.id)if(console.error("No valid selected annotation layer found for annotation creation",{curLIndex:hn,selectedLayer:Lt,allLayers:u.value}),u.value.length>0&&u.value[0].id)o.setActiveAnnotationLayer(u.value[0].id),Lt=u.value[0],hn=0,console.log("Fallback: Selected first layer:",Lt);else{console.error("No layers available with valid IDs");return}const On=v,ue=On.length===i.value.length||On.length===0,Fe=(S.clientX-$.x)*m.value,Ve=M.value+($.x-y.value.getBoundingClientRect().left)*m.value;if(console.log("Creating annotation with:",{startTime:Ve,duration:Fe,allChannels:ue,selectedChannels:On.length,layer:Lt.name,layerId:Lt.id,pointerMode:A.value}),Math.abs(Fe)>1e3){const bn={name:"",id:null,label:F.value[O.value],description:"",start:Ve,duration:Fe,end:Ve+Fe,cStart:null,cEnd:null,selected:!0,channelIds:On,allChannels:ue,layer_id:Lt.id,userId:null};console.log("📍 STEP 1 - TSViewerCanvas created:",bn),o.setActiveAnnotation(bn),console.log("📍 STEP 1 - Store now has:",o.activeAnnotation),s("addAnnotation",Ve,Fe,ue,bn.label,bn.description,Lt);break}else console.log("Annotation duration too small, not creating annotation");break;case"annResize-left":case"annResize-right":(de=h.value)==null||de.onMouseUp();break}},Ue=()=>{y.value.getContext("2d").clearRect(0,0,a.cWidth,a.cHeight)},xe=S=>{var de;console.log("TSViewerCanvas: _onMouseDown called with pointerMode:",A.value,"viewerActiveTool:",l.value),w.value=!0,M.value=a.start;const ae=y.value.getBoundingClientRect();switch($.x=S.clientX,$.y=S.clientY,l.value==="annotate"&&!["annResize-left","annResize-right","annSelect"].includes(A.value)&&(console.log("Setting pointerMode to annotate for annotation creation"),A.value="annotate"),A.value){case"annResize-left":case"annResize-right":k.value=!0,(de=h.value)==null||de.onMouseDown(S.clientX-ae.left,S.clientY-ae.top);break}},Dt=()=>{w.value=!1},kt=S=>{S.buttons===1?w.value=!0:w.value=!1},_n=S=>{var At,En,wn,hn;S.preventDefault(),S.stopPropagation();const ae=y.value.getBoundingClientRect(),de=S.clientY-ae.top,Oe=S.clientX-ae.left;switch(l.value){case"pan":if(w.value){const Lt=M.value-(S.clientX-$.x)*m.value;s("setStart",Lt)}else{const Lt=(At=h.value)==null?void 0:At.onMouseMove(Oe,de,A.value,w.value);A.value=Lt||"pan"}break;case"pointer":if(w.value)Bn(S.clientX,S.clientY);else{const Lt=(En=h.value)==null?void 0:En.onMouseMove(Oe,de,A.value,w.value);A.value=Lt||"pointer"}break;case"annotate":if(w.value&&A.value==="annotate")qn(S.clientX);else if(w.value&&["annResize-left","annResize-right"].includes(A.value)){const Lt=(wn=h.value)==null?void 0:wn.onMouseMove(Oe,de,A.value,w.value);A.value=Lt||A.value,qe()}else{const Lt=(hn=h.value)==null?void 0:hn.onMouseMove(Oe,de,A.value,w.value);Lt?(console.log("TSViewerCanvas: annCanvas.onMouseMove returned:",Lt),A.value=Lt):A.value="annotate"}break}},Sn=()=>{Tn(a.cWidth,a.duration),qe(25)},Tn=(S,ae)=>{const de=m.value,Oe=ae/S;Oe!==de&&(b.value=Date.now(),m.value=Oe,_.value=Math.floor(ae/a.constants.PAGESIZEDIVIDER))},An=(S,ae,de)=>ae*(S+de),qe=(S=0,ae=!0)=>{(!D.value||S!==j.value||z.value!==ae)&&(D.value=vn(Pn,S,{leading:ae}),j.value=S,z.value=ae),D.value()},vn=(S,ae,de={})=>{let Oe,At,En,wn=null,hn=0;const Lt=function(){hn=de.leading===!1?0:Date.now(),wn=null,En=S.apply(Oe,At),wn||(Oe=At=null)};return function(){const On=Date.now();!hn&&de.leading===!1&&(hn=On);const ue=ae-(On-hn);return Oe=this,At=arguments,ue<=0||ue>ae?(wn&&(clearTimeout(wn),wn=null),hn=On,En=S.apply(Oe,At),wn||(Oe=At=null)):!wn&&de.trailing!==!1&&(wn=setTimeout(Lt,ue)),En}},Nn=()=>{var S;Ue(),(S=h.value)==null||S.render()},Pn=()=>{vue.nextTick(()=>{var S,ae;xn(),Rn(),(S=d.value)==null||S.renderAll(),(ae=h.value)==null||ae.render()})},xn=()=>{const ae=f.value.getContext("2d");ae.setTransform(g.value,0,0,g.value,0,0),ae.clearRect(0,0,a.cWidth,a.cHeight),ae.stroke(),ae.beginPath(),ae.lineWidth=1,ae.moveTo(a.constants.XOFFSET+.5,.5),ae.lineTo(a.constants.XOFFSET+.5,V.value+.5),ae.lineTo(a.cWidth+.5,V.value+.5),ae.stroke();let de=V.value/(2*x.value)+.5<<1>>1;ae.lineWidth=.5;for(let hn=0;hn<x.value;hn++)ae.beginPath(),ae.moveTo(a.constants.XOFFSET-2,de),ae.lineTo(a.constants.XOFFSET+2,de),ae.stroke(),de+=V.value/x.value;const Oe=a.constants.XGRIDSPACING*Math.ceil(a.duration/1e8),At=Math.ceil(a.duration/Oe)+1,En=Math.ceil(a.constants.NRPXPERLABEL/(Oe/m.value)),wn=(Oe-a.start%Oe)%Oe;for(let hn=0;hn<At;hn++){let Lt=a.start+wn+hn*Oe;if(Lt>a.tsEnd)break;const On=Lt-a.start,ue=a.constants.XOFFSET+On/m.value,Fe=Math.round(ue);if(Fe>1&&(ae.save(),ae.beginPath(),ae.lineWidth=.5,ae.strokeStyle="rgb(235,235,235)",ae.moveTo(Fe+.5,.5),ae.lineTo(Fe+.5,V.value-.5),ae.stroke(),ae.restore(),((Lt/Oe+Oe/10)%En|0)===1||En===1)){ae.beginPath(),ae.lineWidth=1,ae.moveTo(Fe+.5,V.value-3),ae.lineTo(Fe+.5,V.value+3),ae.stroke();const bn=new Date(Lt/1e3);ae.font="12px sans-serif",ae.fillStyle="rgb(150,150,150)",ae.fillText(oe(bn),Fe-20.5,a.cHeight-.2)}}},Bn=(S,ae)=>{const de=y.value,Oe=de.getContext("2d");Oe.setTransform(g.value,0,0,g.value,0,0),Oe.clearRect(0,0,a.cWidth,a.cHeight),Oe.beginPath(),Oe.lineWidth=2,Oe.strokeStyle="#295eff",Oe.setLineDash([5,5,15,5]);const At=S-de.getBoundingClientRect().left,En=ae-de.getBoundingClientRect().top;Oe.rect(At,En,-S+$.x,-ae+$.y),Oe.stroke()},Rn=()=>{const ae=p.value.getContext("2d");ae.setTransform(g.value,0,0,g.value,0,0),ae.clearRect(0,0,a.cWidth+a.constants.CURSOROFFSET,a.cHeight),ae.save(),ae.beginPath(),ae.fillStyle="red";const de=a.cursorLoc*a.cWidth;de>a.constants.CURSOROFFSET?(ae.strokeStyle="red",ae.moveTo(de,0),ae.lineTo(de,V.value),ae.stroke()):ae.moveTo(de,V.value),ae.beginPath(),ae.lineTo(de-5,V.value+8),ae.lineTo(de+5,V.value+8),ae.lineTo(de,V.value),ae.fill(),ae.restore()},qn=S=>{const ae=y.value,de=ae.getContext("2d");de.setTransform(g.value,0,0,g.value,0,0);const Oe=a.constants.ANNOTATIONLABELHEIGHT,At=Oe/2|0;let En=null;for(let On=0;On<u.value.length;On++)if(u.value[On].selected){En=On;break}if(En===null)return;de.save(),de.clearRect(0,0,a.cWidth,a.cHeight),de.lineWidth=1;const wn=selectedChannels.length===i.value.length||selectedChannels.length===0,hn=S-ae.getBoundingClientRect().left,Lt=-S+$.x;if(wn){de.fillStyle="rgba(0,0,0,0.1)",de.fillRect(hn,0,Lt,V.value),de.fillStyle=u.value[En].color,de.strokeStyle=de.fillStyle;let On=hn-1,ue=Lt+2;Lt<0&&(On=hn+1,ue=Lt-2),de.fillRect(On,0,ue,Oe),de.setLineDash([5,5,5,5]),de.beginPath(),de.moveTo(hn,Oe),de.lineTo(hn,V.value),de.stroke(),de.beginPath(),de.moveTo(hn+Lt,Oe),de.lineTo(hn+Lt,V.value),de.stroke()}else{let On=a.cHeight|0,ue=0;const Fe=i.value;de.fillStyle=u.value[En].color,de.strokeStyle=de.fillStyle;let Ve=hn-1,bn=Lt+2;Lt<0&&(Ve=hn+1,bn=Lt-2);for(let Ln=0;Ln<Fe.length;Ln++){const jn=Fe[Ln];if(jn.selected&&jn.visible){const Hn=jn.rowBaseline|0;Hn<On&&(On=Hn),Hn>ue&&(ue=Hn),de.fillRect(Ve,Hn-At,bn,Oe)}}de.fillStyle="rgba(0,0,0,0.1)",de.setLineDash([5,5,5,5]),de.fillRect(hn-1,On+At,Lt+2,ue-On-Oe),de.beginPath(),de.moveTo(hn,On+At),de.lineTo(hn,ue-At),de.moveTo(hn+Lt,On+At),de.lineTo(hn+Lt,ue-At),de.stroke()}de.restore()},Fn=()=>{var S;(S=d.value)==null||S.initPlotCanvas()},$n=()=>{let S=y.value.getContext("2d"),ae=window.devicePixelRatio||1,de=S.webkitBackingStorePixelRatio||S.mozBackingStorePixelRatio||S.msBackingStorePixelRatio||S.oBackingStorePixelRatio||S.backingStorePixelRatio||1;return ae/de},oe=S=>("0"+S.getUTCHours()).slice(-2)+":"+("0"+S.getUTCMinutes()).slice(-2)+":"+("0"+S.getUTCSeconds()).slice(-2),pe=S=>{var At,En;let ae=parseFloat(S.input0),de=parseFloat(S.input1),Oe={};switch(S.filterType){case"clear":Oe={channelFiltersToClear:S.selChannels};break;case"bandpass":let wn=(ae+de)/2,hn=Math.abs((de-ae)/2);Oe={filter:S.filterType,filterParameters:[4,wn,hn],channels:S.selChannels};break;case"highpass":Oe={filter:S.filterType,filterParameters:[4,ae],channels:S.selChannels};break;case"lowpass":Oe={filter:S.filterType,filterParameters:[4,ae],channels:S.selChannels};break;case"bandstop":let Lt=10;const On=S.notchFreq;Oe={filter:S.filterType,filterParameters:[4,On,Lt],channels:S.selChannels};break;default:return}(At=d.value)==null||At.sendFilterMessage(Oe);for(let wn=0;wn<S.selChannels.length;wn++){let hn=S.selChannels[wn],Lt=find(propEq("id",hn),i.value);S.filterType==="clear"?Lt.filter={}:Lt.filter={type:S.filterType,input0:ae,input1:de,notchFreq:S.notchFreq}}(En=d.value)==null||En.invalidate(),qe()};return vue.onMounted(()=>{g.value=$n()}),t({rsPeriod:m,resetFocusedAnnotation:Ce,createAnnotationLayer:$e,getNextAnnotation:Ne,getPreviousAnnotation:Pt,setFilters:pe,setActiveTool:L,renderAll:qe,renderAnnotationCanvas:Nn,initViewerCanvas:Fn}),(S,ae)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$j,[vue.createElementVNode("div",_hoisted_2$7,[vue.createVNode(TSPlotCanvas,{ref_key:"plotCanvas",ref:d,"c-width":e.cWidth,"c-height":e.cHeight,start:e.start,ts_start:e.tsStart,ts_end:e.tsEnd,duration:e.duration,constants:e.constants,"rs-period":m.value,"global-zoom-mult":e.globalZoomMult,"active-viewer":e.activeViewer,onChannelsInitialized:In,onSetGlobalZoom:kn},{axisCanvas:vue.withCtx(()=>[vue.createElementVNode("canvas",{id:"axisArea",ref_key:"axisArea",ref:f,class:"canvas",width:An(e.cWidth,g.value,0),height:An(e.cHeight,g.value,0),style:vue.normalizeStyle(Y.value)},null,12,_hoisted_3$6)]),annCanvas:vue.withCtx(()=>[vue.createElementVNode("canvas",{id:"annArea",ref_key:"annArea",ref:c,class:"canvas",width:An(e.cWidth,g.value,0),height:An(V.value,g.value,0),style:vue.normalizeStyle(re.value)},null,12,_hoisted_4$4)]),_:1},8,["c-width","c-height","start","ts_start","ts_end","duration","constants","rs-period","global-zoom-mult","active-viewer"]),vue.createElementVNode("canvas",{id:"cursorArea",ref_key:"cursorArea",ref:p,class:"canvas",width:An(e.cWidth+5,g.value,0),height:An(e.cHeight,g.value,0),style:vue.normalizeStyle(he.value)},null,12,_hoisted_5$3),vue.createVNode(vue.unref(r),{ref_key:"annCanvas",ref:h,"c-width":e.cWidth,"c-height":e.cHeight,constants:e.constants,"annotations-canvas":c.value,"pixel-ratio":g.value,"rs-period":m.value,start:e.start,duration:e.duration,"ts-end":e.tsEnd,"pointer-mode":A.value,"viewer-active-tool":vue.unref(l),"active-viewer":e.activeViewer,onAnnLayersInitialized:Cn,onAnnotationsReceived:Et,onCloseAnnotationLayerWindow:ze,onUpdateAnnotation:_e},null,8,["c-width","c-height","constants","annotations-canvas","pixel-ratio","rs-period","start","duration","ts-end","pointer-mode","viewer-active-tool","active-viewer"]),vue.createElementVNode("canvas",{id:"iArea",ref_key:"iArea",ref:y,class:"canvas",width:An(e.cWidth,g.value,0),height:An(e.cHeight,g.value,0),style:vue.normalizeStyle(Y.value),tabindex:"-1",onWheel:Dn,onMousemove:_n,onMousedown:xe,onMouseup:Mn,onMouseout:Dt,onMouseenter:kt},null,44,_hoisted_6$3)])]))}},TSViewerCanvas=_export_sfc$1(_sfc_main$T,[["__scopeId","data-v-c902180d"]]),TSViewerCanvas$1=Object.freeze(Object.defineProperty({__proto__:null,default:TSViewerCanvas},Symbol.toStringTag,{value:"Module"})),configProviderContextKey=Symbol(),defaultNamespace="el",statePrefix="is-",_bem=(e,t,n,r,a)=>{let s=`${e}-${t}`;return n&&(s+=`-${n}`),r&&(s+=`__${r}`),a&&(s+=`--${a}`),s},namespaceContextKey=Symbol("namespaceContextKey"),useGetDerivedNamespace=e=>{const t=vue.getCurrentInstance()?vue.inject(namespaceContextKey,vue.ref(defaultNamespace)):vue.ref(defaultNamespace);return vue.computed(()=>vue.unref(t)||defaultNamespace)},useNamespace=(e,t)=>{const n=useGetDerivedNamespace();return{namespace:n,b:(h="")=>_bem(n.value,e,h,"",""),e:h=>h?_bem(n.value,e,"",h,""):"",m:h=>h?_bem(n.value,e,"","",h):"",be:(h,y)=>h&&y?_bem(n.value,e,h,y,""):"",em:(h,y)=>h&&y?_bem(n.value,e,"",h,y):"",bm:(h,y)=>h&&y?_bem(n.value,e,h,"",y):"",bem:(h,y,m)=>h&&y&&m?_bem(n.value,e,h,y,m):"",is:(h,...y)=>{const m=y.length>=1?y[0]:!0;return h&&m?`${statePrefix}${h}`:""},cssVar:h=>{const y={};for(const m in h)h[m]&&(y[`--${n.value}-${m}`]=h[m]);return y},cssVarName:h=>`--${n.value}-${h}`,cssVarBlock:h=>{const y={};for(const m in h)h[m]&&(y[`--${n.value}-${e}-${m}`]=h[m]);return y},cssVarBlockName:h=>`--${n.value}-${e}-${h}`}};/**
|
|
11
|
+
`&&++h,++c===p)throw g("comment");L=ie,ie=k(c)}while(L!=="*"||ie!=="/");++c,V&&(A(x,c-2,le),le=!0),T=!0}else return"/"}}while(T);var re=c;e.lastIndex=0;var Y=e.test(k(re++));if(!Y)for(;re<p&&!e.test(k(re));)++re;var he=d.substring(c,c=re);return(he==='"'||he==="'")&&(b=he),he}function O(T){_.push(T)}function D(){if(!_.length){var T=F();if(T===null)return null;O(T)}return _[0]}function j(T,L){var ie=D(),x=ie===T;if(x)return F(),!0;if(!L)throw g("token '"+ie+"', '"+T+"' expected");return!1}function z(T){var L=null,ie;return T===void 0?(ie=m[h-1],delete m[h-1],ie&&(f||ie.type==="*"||ie.lineEmpty)&&(L=ie.leading?ie.text:null)):(y<T&&D(),ie=m[T],delete m[T],ie&&!ie.lineEmpty&&(f||ie.type==="/")&&(L=ie.leading?null:ie.text)),L}return Object.defineProperty({next:F,peek:D,push:O,skip:j,cmnt:z},"line",{get:function(){return h}})}return tokenize_1}var parse_1,hasRequiredParse;function requireParse(){if(hasRequiredParse)return parse_1;hasRequiredParse=1,parse_1=w,w.filename=null,w.defaults={keepCase:!1};var e=requireTokenize(),t=requireRoot(),n=requireType(),r=requireField(),a=requireMapfield(),s=requireOneof(),o=require_enum(),i=requireService(),u=requireMethod(),l=requireObject(),v=requireTypes(),d=requireUtil(),f=/^[1-9][0-9]*$/,c=/^-?[1-9][0-9]*$/,p=/^0[x][0-9a-fA-F]+$/,h=/^-?0[x][0-9a-fA-F]+$/,y=/^0[0-7]+$/,m=/^-?0[0-7]+$/,_=/^(?![eE])[0-9]*(?:\.[0-9]*)?(?:[eE][+-]?[0-9]+)?$/,b=/^[a-zA-Z_][a-zA-Z_0-9]*$/,g=/^(?:\.?[a-zA-Z_][a-zA-Z_0-9]*)(?:\.[a-zA-Z_][a-zA-Z_0-9]*)*$/;function w(k,A,$){A instanceof t||($=A,A=new t),$||($=w.defaults);var M=$.preferTrailingComment||!1,F=e(k,$.alternateCommentMode||!1),O=F.next,D=F.push,j=F.peek,z=F.skip,T=F.cmnt,L=!0,ie,x,V,le="proto2",re=A,Y=[],he={},_e=$.keepCase?function(oe){return oe}:d.camelCase;function $e(){Y.forEach(oe=>{oe._edition=le,Object.keys(he).forEach(pe=>{oe.getOption(pe)===void 0&&oe.setOption(pe,he[pe],!0)})})}function Ne(oe,pe,S){var ae=w.filename;return S||(w.filename=null),Error("illegal "+(pe||"token")+" '"+oe+"' ("+(ae?ae+", ":"")+"line "+F.line+")")}function kt(){var oe=[],pe;do{if((pe=O())!=='"'&&pe!=="'")throw Ne(pe);oe.push(O()),z(pe),pe=j()}while(pe==='"'||pe==="'");return oe.join("")}function Pt(oe){var pe=O();switch(pe){case"'":case'"':return D(pe),kt();case"true":case"TRUE":return!0;case"false":case"FALSE":return!1}try{return ze(pe,!0)}catch{if(g.test(pe))return pe;throw Ne(pe,"value")}}function Oe(oe,pe){var S,ae;do if(pe&&((S=j())==='"'||S==="'")){var de=kt();if(oe.push(de),le>=2023)throw Ne(de,"id")}else try{oe.push([ae=At(O()),z("to",!0)?At(O()):ae])}catch(Dt){if(pe&&g.test(S)&&le>=2023)oe.push(S);else throw Dt}while(z(",",!0));var Ce={options:void 0};Ce.setOption=function(Dt,Sn){this.options===void 0&&(this.options={}),this.options[Dt]=Sn},xe(Ce,function(Sn){if(Sn==="option")hn(Ce,Sn),z(";");else throw Ne(Sn)},function(){Bn(Ce)})}function ze(oe,pe){var S=1;switch(oe.charAt(0)==="-"&&(S=-1,oe=oe.substring(1)),oe){case"inf":case"INF":case"Inf":return S*(1/0);case"nan":case"NAN":case"Nan":case"NaN":return NaN;case"0":return 0}if(f.test(oe))return S*parseInt(oe,10);if(p.test(oe))return S*parseInt(oe,16);if(y.test(oe))return S*parseInt(oe,8);if(_.test(oe))return S*parseFloat(oe);throw Ne(oe,"number",pe)}function At(oe,pe){switch(oe){case"max":case"MAX":case"Max":return 536870911;case"0":return 0}if(!pe&&oe.charAt(0)==="-")throw Ne(oe,"id");if(c.test(oe))return parseInt(oe,10);if(h.test(oe))return parseInt(oe,16);if(m.test(oe))return parseInt(oe,8);throw Ne(oe,"id")}function En(){if(ie!==void 0)throw Ne("package");if(ie=O(),!g.test(ie))throw Ne(ie,"name");re=re.define(ie),z(";")}function Pn(){var oe=j(),pe;switch(oe){case"weak":pe=V||(V=[]),O();break;case"public":O();default:pe=x||(x=[]);break}oe=kt(),z(";"),pe.push(oe)}function Dn(){if(z("="),le=kt(),le<2023)throw Ne(le,"syntax");z(";")}function Mn(){if(z("="),le=kt(),!["2023"].includes(le))throw Ne(le,"edition");z(";")}function Ue(oe,pe){switch(pe){case"option":return hn(oe,pe),z(";"),!0;case"message":return Lt(oe,pe),!0;case"enum":return In(oe,pe),!0;case"service":return Rn(oe,pe),!0;case"extend":return Fn(oe,pe),!0}return!1}function xe(oe,pe,S){var ae=F.line;if(oe&&(typeof oe.comment!="string"&&(oe.comment=T()),oe.filename=w.filename),z("{",!0)){for(var de;(de=O())!=="}";)pe(de);z(";",!0)}else S&&S(),z(";"),oe&&(typeof oe.comment!="string"||M)&&(oe.comment=T(ae)||oe.comment)}function Lt(oe,pe){if(!b.test(pe=O()))throw Ne(pe,"type name");var S=new n(pe);xe(S,function(de){if(!Ue(S,de))switch(de){case"map":Tn(S);break;case"required":if(le!=="proto2")throw Ne(de);case"repeated":Et(S,de);break;case"optional":if(le==="proto3")Et(S,"proto3_optional");else{if(le!=="proto2")throw Ne(de);Et(S,"optional")}break;case"oneof":kn(S,de);break;case"extensions":Oe(S.extensions||(S.extensions=[]));break;case"reserved":Oe(S.reserved||(S.reserved=[]),!0);break;default:if(le==="proto2"||!g.test(de))throw Ne(de);D(de),Et(S,"optional");break}}),oe.add(S),oe===re&&Y.push(S)}function Et(oe,pe,S){var ae=O();if(ae==="group"){wn(oe,pe);return}for(;ae.endsWith(".")||j().startsWith(".");)ae+=O();if(!g.test(ae))throw Ne(ae,"type");var de=O();if(!b.test(de))throw Ne(de,"name");de=_e(de),z("=");var Ce=new r(de,At(O()),ae,pe,S);if(xe(Ce,function(Cn){if(Cn==="option")hn(Ce,Cn),z(";");else throw Ne(Cn)},function(){Bn(Ce)}),pe==="proto3_optional"){var Dt=new s("_"+de);Ce.setOption("proto3_optional",!0),Dt.add(Ce),oe.add(Dt)}else oe.add(Ce);oe===re&&Y.push(Ce)}function wn(oe,pe){if(le>=2023)throw Ne("group");var S=O();if(!b.test(S))throw Ne(S,"name");var ae=d.lcFirst(S);S===ae&&(S=d.ucFirst(S)),z("=");var de=At(O()),Ce=new n(S);Ce.group=!0;var Dt=new r(ae,de,S,pe);Dt.filename=w.filename,xe(Ce,function(Cn){switch(Cn){case"option":hn(Ce,Cn),z(";");break;case"required":case"repeated":Et(Ce,Cn);break;case"optional":le==="proto3"?Et(Ce,"proto3_optional"):Et(Ce,"optional");break;case"message":Lt(Ce,Cn);break;case"enum":In(Ce,Cn);break;case"reserved":Oe(Ce.reserved||(Ce.reserved=[]),!0);break;default:throw Ne(Cn)}}),oe.add(Ce).add(Dt)}function Tn(oe){z("<");var pe=O();if(v.mapKey[pe]===void 0)throw Ne(pe,"type");z(",");var S=O();if(!g.test(S))throw Ne(S,"type");z(">");var ae=O();if(!b.test(ae))throw Ne(ae,"name");z("=");var de=new a(_e(ae),At(O()),pe,S);xe(de,function(Dt){if(Dt==="option")hn(de,Dt),z(";");else throw Ne(Dt)},function(){Bn(de)}),oe.add(de)}function kn(oe,pe){if(!b.test(pe=O()))throw Ne(pe,"name");var S=new s(_e(pe));xe(S,function(de){de==="option"?(hn(S,de),z(";")):(D(de),Et(S,"optional"))}),oe.add(S)}function In(oe,pe){if(!b.test(pe=O()))throw Ne(pe,"name");var S=new o(pe);xe(S,function(de){switch(de){case"option":hn(S,de),z(";");break;case"reserved":Oe(S.reserved||(S.reserved=[]),!0),S.reserved===void 0&&(S.reserved=[]);break;default:qe(S,de)}}),oe.add(S),oe===re&&Y.push(S)}function qe(oe,pe){if(!b.test(pe))throw Ne(pe,"name");z("=");var S=At(O(),!0),ae={options:void 0};ae.getOption=function(de){return this.options[de]},ae.setOption=function(de,Ce){l.prototype.setOption.call(ae,de,Ce)},ae.setParsedOption=function(){},xe(ae,function(Ce){if(Ce==="option")hn(ae,Ce),z(";");else throw Ne(Ce)},function(){Bn(ae)}),oe.add(pe,S,ae.comment,ae.parsedOptions||ae.options)}function hn(oe,pe){var S,ae,de=!0;for(pe==="option"&&(pe=O());pe!=="=";){if(pe==="("){var Ce=O();z(")"),pe="("+Ce+")"}if(de){if(de=!1,pe.includes(".")&&!pe.includes("(")){var Dt=pe.split(".");S=Dt[0]+".",pe=Dt[1];continue}S=pe}else ae=ae?ae+=pe:pe;pe=O()}var Sn=ae?S.concat(ae):S,Cn=An(oe,Sn);ae=ae&&ae[0]==="."?ae.slice(1):ae,S=S&&S[S.length-1]==="."?S.slice(0,-1):S,xn(oe,S,Cn,ae)}function An(oe,pe){if(z("{",!0)){for(var S={};!z("}",!0);){if(!b.test($n=O()))throw Ne($n,"name");if($n===null)throw Ne($n,"end of input");var ae,de=$n;if(z(":",!0),j()==="{")ae=An(oe,pe+"."+$n);else if(j()==="["){ae=[];var Ce;if(z("[",!0)){do Ce=Pt(),ae.push(Ce);while(z(",",!0));z("]"),typeof Ce<"u"&&Nn(oe,pe+"."+$n,Ce)}}else ae=Pt(),Nn(oe,pe+"."+$n,ae);var Dt=S[de];Dt&&(ae=[].concat(Dt).concat(ae)),S[de]=ae,z(",",!0),z(";",!0)}return S}var Sn=Pt();return Nn(oe,pe,Sn),Sn}function Nn(oe,pe,S){if(re===oe&&/^features\./.test(pe)){he[pe]=S;return}oe.setOption&&oe.setOption(pe,S)}function xn(oe,pe,S,ae){oe.setParsedOption&&oe.setParsedOption(pe,S,ae)}function Bn(oe){if(z("[",!0)){do hn(oe,"option");while(z(",",!0));z("]")}return oe}function Rn(oe,pe){if(!b.test(pe=O()))throw Ne(pe,"service name");var S=new i(pe);xe(S,function(de){if(!Ue(S,de))if(de==="rpc")qn(S,de);else throw Ne(de)}),oe.add(S),oe===re&&Y.push(S)}function qn(oe,pe){var S=T(),ae=pe;if(!b.test(pe=O()))throw Ne(pe,"name");var de=pe,Ce,Dt,Sn,Cn;if(z("("),z("stream",!0)&&(Dt=!0),!g.test(pe=O())||(Ce=pe,z(")"),z("returns"),z("("),z("stream",!0)&&(Cn=!0),!g.test(pe=O())))throw Ne(pe);Sn=pe,z(")");var bn=new u(de,ae,Ce,Sn,Dt,Cn);bn.comment=S,xe(bn,function(On){if(On==="option")hn(bn,On),z(";");else throw Ne(On)}),oe.add(bn)}function Fn(oe,pe){if(!g.test(pe=O()))throw Ne(pe,"reference");var S=pe;xe(null,function(de){switch(de){case"required":case"repeated":Et(oe,de,S);break;case"optional":le==="proto3"?Et(oe,"proto3_optional",S):Et(oe,"optional",S);break;default:if(le==="proto2"||!g.test(de))throw Ne(de);D(de),Et(oe,"optional",S);break}})}for(var $n;($n=O())!==null;)switch($n){case"package":if(!L)throw Ne($n);En();break;case"import":if(!L)throw Ne($n);Pn();break;case"syntax":if(!L)throw Ne($n);Dn();break;case"edition":if(!L)throw Ne($n);Mn();break;case"option":hn(re,$n),z(";",!0);break;default:if(Ue(re,$n)){L=!1;continue}throw Ne($n)}return $e(),w.filename=null,{package:ie,imports:x,weakImports:V,root:A}}return parse_1}var common_1,hasRequiredCommon;function requireCommon(){if(hasRequiredCommon)return common_1;hasRequiredCommon=1,common_1=t;var e=/\/|\./;function t(r,a){e.test(r)||(r="google/protobuf/"+r+".proto",a={nested:{google:{nested:{protobuf:{nested:a}}}}}),t[r]=a}t("any",{Any:{fields:{type_url:{type:"string",id:1},value:{type:"bytes",id:2}}}});var n;return t("duration",{Duration:n={fields:{seconds:{type:"int64",id:1},nanos:{type:"int32",id:2}}}}),t("timestamp",{Timestamp:n}),t("empty",{Empty:{fields:{}}}),t("struct",{Struct:{fields:{fields:{keyType:"string",type:"Value",id:1}}},Value:{oneofs:{kind:{oneof:["nullValue","numberValue","stringValue","boolValue","structValue","listValue"]}},fields:{nullValue:{type:"NullValue",id:1},numberValue:{type:"double",id:2},stringValue:{type:"string",id:3},boolValue:{type:"bool",id:4},structValue:{type:"Struct",id:5},listValue:{type:"ListValue",id:6}}},NullValue:{values:{NULL_VALUE:0}},ListValue:{fields:{values:{rule:"repeated",type:"Value",id:1}}}}),t("wrappers",{DoubleValue:{fields:{value:{type:"double",id:1}}},FloatValue:{fields:{value:{type:"float",id:1}}},Int64Value:{fields:{value:{type:"int64",id:1}}},UInt64Value:{fields:{value:{type:"uint64",id:1}}},Int32Value:{fields:{value:{type:"int32",id:1}}},UInt32Value:{fields:{value:{type:"uint32",id:1}}},BoolValue:{fields:{value:{type:"bool",id:1}}},StringValue:{fields:{value:{type:"string",id:1}}},BytesValue:{fields:{value:{type:"bytes",id:1}}}}),t("field_mask",{FieldMask:{fields:{paths:{rule:"repeated",type:"string",id:1}}}}),t.get=function(a){return t[a]||null},common_1}var hasRequiredSrc;function requireSrc(){if(hasRequiredSrc)return src.exports;hasRequiredSrc=1;var e=src.exports=requireIndexLight();return e.build="full",e.tokenize=requireTokenize(),e.parse=requireParse(),e.common=requireCommon(),e.Root._configure(e.Type,e.parse,e.common),src.exports}var protobufjs,hasRequiredProtobufjs;function requireProtobufjs(){return hasRequiredProtobufjs||(hasRequiredProtobufjs=1,protobufjs=requireSrc()),protobufjs}var protobufjsExports=requireProtobufjs();const protobuf=getDefaultExportFromCjs(protobufjsExports),useWebSocket=()=>{const e=vue.ref(null),t=vue.ref("disconnected"),n=vue.ref(!0),r={nested:{Event:{fields:{source:{type:"string",id:1},pageStart:{type:"uint64",id:2},pageEnd:{type:"uint64",id:3},samplePeriod:{type:"double",id:4},pointsPerEvent:{type:"uint64",id:5},isResampled:{type:"bool",id:6},data:{rule:"repeated",type:"double",id:7},times:{rule:"repeated",type:"uint64",id:8},spikeGroup:{rule:"repeated",type:"uint32",id:9}}},Instruction:{fields:{command:{type:"string",id:1},argument:{type:"string",id:2}}},Segment:{fields:{startTs:{type:"uint64",id:1},source:{type:"string",id:2},lastUsed:{type:"uint64",id:3},unit:{type:"string",id:4},samplePeriod:{type:"double",id:5},requestedSamplePeriod:{type:"double",id:6},pageStart:{type:"uint64",id:7},isMinMax:{type:"bool",id:8},unitM:{type:"uint64",id:9},segmentType:{type:"string",id:10},nrPoints:{type:"uint64",id:11},data:{rule:"repeated",type:"double",id:12},pageEnd:{type:"uint64",id:13},channelName:{type:"string",id:14}}},IngestSegment:{fields:{channelId:{type:"string",id:1},startTime:{type:"uint64",id:2},samplePeriod:{type:"double",id:3},data:{rule:"repeated",type:"double",id:4}}},TimeSeriesMessage:{fields:{segment:{type:"Segment",id:3},event:{rule:"repeated",type:"Event",id:4},instruction:{type:"Instruction",id:5},ingestSegment:{type:"IngestSegment",id:6},totalResponses:{type:"uint64",id:7},responseSequenceId:{type:"uint64",id:8}}}}},s=protobuf.Root.fromJSON(r).TimeSeriesMessage;let o=null,i=null,u=null,l=null,v=null,d=null,f=!1,c=null;const p=(T,L=2e3)=>new Promise(ie=>{if(!T||T.readyState===WebSocket.CLOSED){ie();return}const x=Date.now(),V=()=>{T.readyState===WebSocket.CLOSED||Date.now()-x>L?ie():setTimeout(V,50)};V()}),h=async()=>{if(e.value){const T=e.value;console.log("🔌 Disconnecting WebSocket (state:",T.readyState,")"),e.value=null,t.value="disconnected",(T.readyState===WebSocket.OPEN||T.readyState===WebSocket.CONNECTING)&&(T.close(),await p(T))}c=null},y=async(T,L,ie)=>{if(c&&(console.log("🔄 Waiting for previous connection to finish..."),await c),e.value){const x=e.value.readyState;(x===WebSocket.CONNECTING||x===WebSocket.OPEN||x===WebSocket.CLOSING)&&(console.log(`🔄 Disconnecting existing WebSocket (state: ${x})`),await h(),await new Promise(V=>setTimeout(V,100)))}console.log("setting packageId to: "+L),d=L,n.value=!0,c=new Promise(async(x,V)=>{try{const le=ie||await useToken(),re=T+"?session="+le+"&package="+d,Y=new WebSocket(re);e.value=Y,Y.onopen=()=>{console.log("🔗 WebSocket opened for package:",d),m(),x(Y)},Y.onclose=()=>{console.log("🔌 WebSocket closed for package:",d),_(),x(null)},Y.onmessage=b,Y.onerror=he=>{console.error("WebSocket error:",he),t.value="disconnected",V(he)},setTimeout(()=>{Y.readyState===WebSocket.CONNECTING&&(Y.close(),V(new Error("WebSocket connection timeout")))},1e4)}catch(le){console.error("Failed to create WebSocket:",le),V(le)}});try{await c}catch(x){console.error("WebSocket connection failed:",x),c=null}},m=()=>{if(t.value="connected",n.value){if(console.log("📡 Sending initialization messages for package:",d),v&&(console.log("🧹 Clearing channel filters"),v()),d){const T={montage:"NOT_MONTAGED",packageId:d};console.log("🎛️ Sending montage reset:",T),e.value.send(JSON.stringify(T))}n.value=!1}},_=()=>{console.log("📡 WebSocket connection closed"),t.value="disconnected"},b=T=>{if(typeof T.data=="string"){let ie={};try{ie=JSON.parse(T.data)}catch{l==null||l({error:"JSON Parse Error"});return}ie.channelDetails?u==null||u(ie.channelDetails):ie.error&&(l==null||l(ie));return}const L=new FileReader;L.addEventListener("loadend",function(ie){const x=ie.target.result,V=new Uint8Array(x),le=s.decode(V),re=le.segment;if(le.event&&le.event.length>0&&le.event[0].pageStart){const Y=le.event[0],he=[[],[]],_e=Y.times.length/2;let $e=0;for(let Oe=0;Oe<_e;Oe++)he[0].push(Y.times[$e]),he[1].push(Y.times[$e+1]),$e+=2;let Ne=new Array(3),kt=0;for(;kt<3;)Ne[kt]=new Float32Array(he[0].length),kt++;const Pt={chId:Y.source,lastUsed:0,unit:"uV",samplePeriod:Y.samplePeriod,pageStart:Y.pageStart,pageEnd:Y.pageEnd,startTs:Y.pageStart,isMinMax:Y.isResampled,unitM:1,type:"Neural",nrPoints:_e,parsedData:he,cData:Ne};i==null||i({pageStart:Y.pageStart,data:Pt,type:"Neural",nrResponses:le.totalResponses})}if(re!==null){let Y=null;re.isMinMax?Y=re.data.length/2:Y=re.data.length;const he=new Array(3),_e=re.startTs;let $e=0,Ne=0,kt=0;for(;kt<3;)he[kt]=new Float64Array(Y),kt++;if(re.isMinMax){let En=0;for(let Pn=0;Pn<Y;Pn++){let Dn=-re.data[En],Mn=-re.data[En+1];he[0][Pn]=_e+Pn*re.samplePeriod,he[1][Pn]=Dn,he[2][Pn]=Mn,isNaN(Dn)||(Ne++,$e+=Dn+(Mn-Dn)/2),En+=2}}else for(let En=0;En<Y;En++){let Pn=-re.data[En];he[0][En]=_e+En*re.samplePeriod,he[1][En]=Pn,isNaN(Pn)||(Ne++,$e+=Pn)}let Pt=0;if(f){const En=Array.prototype.slice.call(he[1]).sort();Pt=En[Math.round(En.length/2)]}let Oe=new Array(3),ze=0;for(;ze<3;)Oe[ze]=new Float32Array(he[0].length),ze++;const At={chId:re.source,lastUsed:re.lastUsed,unit:re.unit,samplePeriod:re.samplePeriod,pageStart:re.pageStart,pageEnd:re.pageEnd,startTs:_e,isMinMax:re.isMinMax,unitM:re.unitM,type:re.segmentType,nrPoints:Y,cData:Oe,parsedData:he,median:Pt,sumElem:$e,nrValidPoints:Ne,name:re.channelName,label:re.channelName};At.nrPoints>0?o==null||o({pageStart:re.pageStart,data:At,type:re.segmentType,nrResponses:le.totalResponses}):o==null||o({pageStart:re.pageStart,data:At,nrResponses:le.totalResponses,type:"gap"})}}),L.readAsArrayBuffer(T.data)},g=T=>e.value&&e.value.readyState===1?(e.value.send(JSON.stringify(T)),!0):!1,w=T=>{let L;switch(T){case"NOT_MONTAGED":L={montage:"NOT_MONTAGED",packageId:d};break;default:L={montage:"CUSTOM_MONTAGE",packageId:d,montageMap:T}}g(L)},k=T=>{e.value&&e.value.readyState===1?e.value.send(JSON.stringify(T)):setTimeout(()=>k(T),200)},A=()=>{if(e.value&&e.value.readyState===1){const T={requestType:"DumpBufferRequest"};return e.value.send(JSON.stringify(T)),!0}return console.warn("⚠️ Cannot send dump buffer request - WebSocket not connected"),!1},$=T=>{o=T},M=T=>{i=T},F=T=>{u=T},O=T=>{l=T};vue.onUnmounted(async()=>{await h()});const D=T=>{v=T},j=T=>{d=T},z=T=>{f=T};return{websocket:vue.readonly(e),connectionStatus:vue.readonly(t),openWebsocket:y,send:g,sendMontageMessage:w,sendFilterMessage:k,sendDumpBufferRequest:A,disconnect:h,setClearChannelsCallback:D,setPackageId:j,setUseMedian:z,onSegment:$,onEvent:M,onChannelDetails:F,onError:O}},useCanvasRenderer=()=>{const e=vue.ref(null),t=vue.ref(null),n=(i,u,l)=>u*(i+l),r=(i=1)=>i,a=(i,u,l,v,d,f,c=!1)=>{const p=t.value;if(!p){console.warn("blurArea ref is missing, skipping renderData");return}const h=p.getContext("2d");if(!h){console.warn("Unable to get 2D context for blurArea, skipping renderData");return}h.setTransform(f,0,0,f,0,0),h.fillStyle="rgb(220,220,220)";const y=e.value;if(!y){console.warn("plotArea ref is missing, skipping drawing.");return}const m=y.getContext("2d");if(!m){console.warn("Unable to get 2D context for plotArea, skipping drawing.");return}m.setTransform(f,0,0,f,0,0),m.clearRect(0,0,v.cWidth,v.cHeight),h.clearRect(0,0,v.cWidth,v.cHeight);const _=u.reduce((b,g)=>g.visible?b+1:b,0);s(u,v.pHeight,_),m.save();for(let b in i.channels)if(i.channels.hasOwnProperty(b)){const g=i.channels[b];let w=null;if(w=u.find(T=>T.id===g.id),!w||!w.visible)continue;const k=v.start,A=v.rsPeriod,$=l.XOFFSET,M=Math.min(Math.round(v.cHeight/i.channels.length-2),10);for(let T=0;T<w.dataSegments.length;T+=2){if(w.dataSegments[T+1]<k){console.log("skipping something");continue}if(w.dataSegments[T]>k+v.duration){console.log("breaking something");break}let L=Math.floor($+(w.dataSegments[T]-k)/A),ie=Math.floor($+(w.dataSegments[T+1]-k)/A),x=Math.floor(w.rowBaseline-M/2);h.fillRect(L,x,ie-L,M)}o(w,g,v,l,d,c);const F=g.blocks.length;let O="Continuous";F&&(O=g.blocks[0].type),w.hover?w.selected?(m.strokeStyle="rgba(39,96,255,0.70)",m.fillStyle="rgba(39,96,255,0.70)"):(m.strokeStyle="rgba(39,96,255,0.60)",m.fillStyle="rgba(39,96,255,0.60)"):w.selected?(m.strokeStyle="rgb(249,162,58)",m.fillStyle="rgb(3249,162,58)"):O==="Neural"?m.strokeStyle="rgb(249,162,58)":(m.strokeStyle="black",m.fillStyle="black");let D=null,j=!0,z=1e6*(1/w.sf);for(let T=0;T<F;T++){const L=g.blocks[T];if(L.nrPoints===0){console.log("zero points");continue}const ie=L.cData,x=L.nrPoints,V=ie[0],le=ie[1],re=ie[2];let Y=L.renderStartIndex,he=L.renderEndIndex;switch(h.clearRect(Math.floor(V[Y]),Math.floor(w.rowBaseline-M/2),Math.ceil(V[he]-V[Y]+2),M+1),L.type){case"Continuous":case"realtime":if(L.isMinMax){if(L.samplePeriod/z<3&&(j=!1),j){m.beginPath(),T>0&&V[Y]<D.x+3?m.moveTo(D.x,D.y):m.moveTo(V[Y],le[Y]);for(let _e=Y;_e<he+1;_e++)m.lineTo(V[_e],le[_e]);for(let _e=he-1;_e>=Y;_e--)m.lineTo(V[_e],re[_e]);T>0&&V[Y]<D.x+3&&m.lineTo(D.x,D.y2),m.closePath(),m.fill()}else{m.beginPath();for(let _e=Y;_e<he+1;_e++)m.lineTo(V[_e],le[_e]),m.lineTo(V[_e],re[_e]),m.moveTo(V[_e],le[_e]);m.stroke()}m.beginPath(),m.moveTo(V[Y],le[Y]);for(let _e=Y;_e<he+1;_e++)m.lineTo(V[_e],le[_e]);m.stroke()}else{T===0?(m.beginPath(),m.moveTo(V[Y],le[Y])):V[Y]>D.x+2&&m.moveTo(V[Y],le[Y]);for(let _e=Y;_e<he+1;_e++)m.lineTo(V[_e],le[_e]);T===F-1&&m.stroke()}break;case"Neural":m.beginPath();for(let _e=0;_e<x;_e++)m.moveTo(V[_e],le[_e]),m.lineTo(V[_e],re[_e]);m.stroke();break}D={x:V[x-1],y:le[x-1],y2:re[x-1]}}}m.restore()},s=(i,u,l)=>{const v=i.map(function(p,h){return{index:h,value:p.rank}});v.sort(function(p,h){return+(p.value>h.value)||+(p.value===h.value)-1});const d=v.map(function(p){return p.index}),f=(u+20)/l;let c=0;for(let p=0;p<d.length;p++){const h=i[d[p]];h.visible?(h.rowBaseline=.5*f+c*f,c++):h.rowBaseline=null}},o=(i,u,l,v,d,f)=>{let c=u.blocks.length;switch(i.type){case"UNIT":if(!f)for(let h=0;h<c;h++){const y=u.blocks[h],m=y.cData,_=y.parsedData,b=v.XOFFSET,g=y.parsedData[0].length,w=m[0],k=m[1],A=m[2],$=_[0],M=i.rowBaseline|0,F=l.start,O=l.rsPeriod,D=l.cHeight/(2*(l.nrVisibleChannels+1))|0;for(let j=0;j<g;j++)w[j]=b+($[j]-F)/O,k[j]=M-D,A[j]=M+D}break;case"CONTINUOUS":let p=0;if(!f){u.mean=0,u.median=0;for(let h=0;h<c;h++){const y=u.blocks[h];y.nrValidPoints>0&&(u.mean=(y.sumElem+p*u.mean)/(p+y.nrValidPoints),u.median=(y.median+p*u.median)/(p+y.nrValidPoints),p+=y.nrValidPoints)}}for(let h=0;h<c;h++){const y=u.blocks[h];let m=Math.floor((l.start-y.startTs)/y.samplePeriod);y.renderStartIndex=m>0?m:0;let _=Math.floor((l.start+l.duration-(y.startTs+y.nrPoints*y.samplePeriod))/y.samplePeriod);y.renderEndIndex=_>=0?y.nrPoints-1:y.nrPoints+_;const b=y.cData,g=y.parsedData,w=d*i.rowScale,k=v.XOFFSET,A=y.parsedData[0].length,$=b[0],M=b[1],F=b[2],O=g[0],D=g[1],j=g[2],z=i.rowBaseline;let T=0;v.USEMEDIAN?T=u.median:T=u.mean;const L=l.rsPeriod,ie=l.start;for(let x=0;x<A;x++)$[x]=k+(O[x]-ie)/L,M[x]=z-(D[x]-T)*w,y.isMinMax&&(D[x]===j[x]?F[x]=M[x]+1:F[x]=z-(j[x]-T)*w)}break}};return{plotCanvasRef:e,blurCanvasRef:t,initializeCanvases:r,renderData:a,computeChannelViews:s,getPointCoords:o,cpCanvasScaler:n}},useTimeSeriesData=()=>{const e=vue.ref([]),t=vue.ref(new Map),n=vue.reactive({start:0,duration:0,channels:[]}),r=vue.ref(!1),a=vue.ref(0),s=vue.ref(null),o=vue.ref(1),i=15e6,u=3,l=(g,w,k,A)=>{A||(A=0);let $=v(g,w,A,g.length-1,k);return $===-1?$=0:$<0&&($=-$-2),$},v=(g,w,k,A,$)=>{if(A<k){let F;if(A>=0?F=A:F=-A-2,F===-1)return F;const O=g[F].pageStart;for(;F>=0&&g[F].pageStart===O;)F--;return F++,-F-2}const M=parseInt((k+A)/2);if(g[M].pageStart>w)return v(g,w,k,M-1,$);if(g[M].pageStart<w)return v(g,w,M+1,A,$);{let F=M;if($){for(;F>=0&&g[F].pageStart===w;)F--;F++}else{for(;F<g.length&&g[F].pageStart===w;)F++;F--}return F}},d=(g,w,k)=>{if(!g)return Promise.resolve();const A=[];if(g.length>0){const $=[];for(let M=0;M<g.length;M++){const F=g[M].content,D={id:k?k(F):F.id,serverId:F.serverId,label:F.name,displayName:F.displayName,type:F.channelType,segments:[],start:F.start,end:F.end,sampleFreq:F.rate,unit:F.unit,gaps:[],dataSegments:[]},j=D.label.split("<->",3),z=j[0];let T=j.length>1?parseFloat(j[1]):0;T=isNaN(T)?j[1]:T,$.push({id:D.id,serverId:D.serverId,type:D.type,label:D.label,displayName:D.displayName,label_split:j,label_prefix:z,label_value:T,dataSegments:[],rank:M,visible:!0,plotAgainst:null,rowBaseline:null,rowScale:1,rowAdjust:0,selected:!1,hover:!1,unit:F.unit,sf:F.rate,filter:{},hideFilter:!0,isEditing:!1}),A.push(D)}w&&w.setChannels($)}return f(A),e.value=A,a.value=g.length,r.value=!0,Promise.resolve()},f=g=>{var w,k;if(g.length===0){s.value=null;return}s.value=((k=(w=g[0])==null?void 0:w.gaps)==null?void 0:k[0])||null},c=g=>{let w=null;const k=g.data.chId||g.data.source,A=g.data.label||g.data.name;if(w=e.value.find($=>$.serverId===k&&$.label===A),!w){console.error("❌ NO EXACT MATCH - rejecting to prevent data corruption:",{serverResponseId:k,serverResponseName:A,availableChannels:e.value.map($=>({id:$.id,serverId:$.serverId,label:$.label,matches:{serverId:$.serverId===k,label:$.label===A}}))});return}switch(g.type){case"gap":case"Neural":case"Continuous":let $=!1,M=w&&w.segments;if(M&&g.type!=="gap"&&($=!0,M.length>0)){let O=l(M,g.data.startTs,!0,0);for(;M[O]&&M[O].pageStart===g.data.pageStart;){if(M[O].startTs===g.data.startTs){$=!1;break}O++}}let F=t.value.get(g.data.pageStart);if(F){let O=F.counter.get(w.id);if(isNaN(O)&&(O=g.nrResponses||1,F.counter.set(w.id,O)),O>0&&(O=O-1,F.counter.set(w.id,O)),O===0){let D=!0;for(let[j,z]of F.counter.entries())if(z>0||isNaN(z)){D=!1;break}D&&t.value.delete(g.data.pageStart)}}$&&(M.push(g.data),M.sort((O,D)=>O.startTs<D.startTs?-1:O.startTs>D.startTs?1:0));break}},p=()=>{s.value=[],t.value.clear();for(let g=0;g<e.value.length;g++)e.value[g].segments=[];for(let g=0;g<n.channels.length;g++)n.channels[g].blocks=[]},h=g=>{let w=0,k=0,A=n.channels;for(let M=0;M<A.length;M++){let F=A[M].blocks;for(let O=0;O<F.length;O++)F[O].type==="Continuous"&&(w+=y(F[O].parsedData[1]),k++)}const $=w/k;return!isNaN($)&&g?g/A.length/(2*$):1},y=g=>{const w=m(g),k=g.map(function(M){const F=M-w;return F*F}),A=m(k);return Math.sqrt(A)},m=g=>g.reduce(function(A,$){return A+$},0)/g.length;return{chData:e,requestedPages:t,viewData:n,channelsReady:r,autoScale:a,globalGaps:s,pageSize:i,prefetchPages:u,currentRequestedSamplePeriod:o,initChannels:d,computeSummary:f,dataCallback:c,invalidate:p,autoScaleViewData:h,segmIndexOf:l,updateCurrentRequestedSamplePeriod:g=>{o.value=Math.ceil(g)},isDataCurrentForViewport:g=>g&&g.startTs&&g.startTs>0,standardDeviation:y,average:m}},useDataRequests=()=>{const e=vue.ref([]),t=vue.ref([]),n=vue.ref(null),r=vue.ref(!1),a=vue.ref(null),s=vue.ref(0),o=vue.ref(0);let i=null;const u=(_,b)=>{i=function(){var w,k;if(t.value.length>0){const $=((w=b.value)==null?void 0:w.size)||0;$<5?_([t.value[0]])?t.value.splice(0,1):(console.warn("❌ Prefetch request failed"),clearInterval(n.value),r.value=!1):console.log("🚫 Prefetch blocked - too many pending pages:",{current:$,max:5,pendingPageStarts:Array.from(((k=b.value)==null?void 0:k.keys())||[])})}else console.log("✅ No more prefetch requests, stopping prefetch timer"),clearInterval(n.value),r.value=!1}},l=(_,b,g,w,k,A,$,M,F,O)=>{w.start=b,w.duration=g;const D=[];for(let j=0;j<w.channels.length;j++){const z=O?O(w.channels[j]):w.channels[j].id;D.push(z)}for(let j=0;j<_.length;j++){const z=_[j],T=O?O(z):z.id;D.indexOf(T)<0&&w.channels.push({id:T,mean:null,firstRenderedIndex:0,lastRenderedIndex:0,blocks:[]})}return v(_,b,g,w,k,A,$,M,F,O)},v=(_,b,g,w,k,A,$,M,F,O)=>{e.value=[];let j=!1;(s.value!==b||o.value!==g)&&(t.value=[],j=!0),s.value=b,o.value=g;const z=[];for(let T=0;T<w.channels.length;T++)z.push(w.channels[T]);for(let T=0;T<_.length;T++){let L=!1;const ie=_[T],x=ie.segments,V=O?O(ie):ie.id,le=z.findIndex(kt=>(O?O(kt):kt.id)===V);if(le===-1)continue;const re=w.channels[le];if(!re)continue;re.blocks=[];let Y=Math.floor(b/15e6)*15e6;Y<0&&(Y=0);let he=0,_e=0;x.length>0&&(he=F(x,Y,!0,0));let $e=b+g+A.PREFETCHPAGES*15e6;$e>M&&($e=M);let Ne;for(x.length>0&&(Ne=x[he]);Y<$e||L;){L=!1;let kt=!1;if(Ne&&(kt=Y>=Ne.pageStart&&Y<=Ne.pageEnd),kt){let Pt=Ne.startTs<b+g;_e+=1,Y+=15e6,Pt&&re.blocks.push(Ne);const Oe=Ne.pageStart;Ne=x[he+_e],Ne&&Oe===Ne.pageStart&&(L=!0)}else{if(k.get(Y)){if(Y+=15e6,Ne&&Y>=Ne.pageEnd)for(;Ne&&Ne.pageEnd<Y&&(_e+=1,Ne=x[he+_e],!!Ne););continue}let Pt=Y<b+g,Oe=!1;if(Pt){for(let ze in t.value)if(t.value[ze].start===Y){t.value.splice(ze,1);break}for(let ze in e.value)e.value[ze].start===Y&&(e.value[ze].channels.push(ie),Oe=!0);Oe||e.value.push({channels:[ie],start:Y,duration:15e6,isInViewport:!0,pixelWidth:Math.ceil($)})}else if(j){for(let ze in t.value)t.value[ze].start===Y&&(t.value[ze].channels.push(ie),Oe=!0);Oe||t.value.push({channels:[ie],start:Y,duration:15e6,isInViewport:!1,pixelWidth:Math.ceil($)})}if(Y+=15e6,Ne&&Y>=Ne.pageEnd)for(;Ne&&Ne.pageEnd<Y&&(_e+=1,Ne=x[he+_e],!!Ne););}}re.blocks.sort(d)}return{asyncRequests:e.value,asyncPreRequests:t.value}},d=(_,b)=>_.startTs<b.startTs?-1:_.startTs>b.startTs?1:0,f=(_,b=0,g,w,k,A,$,M)=>{if(_.length===0)return console.log("⚠️ No requests to send"),!1;const F=M;for(let O=0;O<_.length;O++){let D;O===0?D=_[b]:O===b?D=_[0]:D=_[O];let j=D.start+D.duration;j>F&&(j=F);const z=g;if(z&&z.readyState===1){const T=D.channels.map(re=>{const Y=re.serverId||re.id,he=re.label||re.name;return{id:Y,name:he}}),L={session:w,minMax:!0,startTime:D.start,endTime:j,packageId:k.content.id,pixelWidth:D.pixelWidth,virtualChannels:T},ie=JSON.stringify(L);z.send(ie);const x=D.channels.length,V=new Map;for(let re=0;re<x;re++){const Y=D.channels[re].id;V.set(Y,NaN)}const le={count:x,counter:V,subPageCount:NaN,ts:Date.now(),inViewport:D.isInViewport,channels:D.channels.map(re=>({id:re.id,serverId:re.serverId,label:re.label}))};$.set(D.start,le)}else return console.error("❌ WebSocket not ready for sending requests:",{readyState:z==null?void 0:z.readyState,wsExists:!!z}),!1}return e.value=[],!0},c=()=>{t.value.length>0&&(r.value||(n.value=setInterval(i,150),r.value=!0))},p=()=>{n.value&&(clearInterval(n.value),n.value=null),r.value=!1},h=()=>{const _=e.value.length,b=t.value.length;e.value=[],t.value=[],s.value=0,o.value=0,p(),console.log("🧹 Cleared requests:",{asyncRequests:_,preRequests:b})},y=()=>{const _=e.value.slice();return e.value=[],_},m=(_,b,g)=>{const w=[];return _.forEach(function(k,A){if(!isNaN(k.subPageCount)){const $=[];k.counter.forEach(function(M,F){!isNaN(M)&&M>0&&$.push(F)}),$.length>0&&w.push({channels:$,start:A,duration:b,isInViewport:!0,pixelWidth:Math.ceil(g)})}}),_.clear(),w};return vue.onUnmounted(()=>{p()}),{aSyncRequests:vue.readonly(e),aSyncPreRequests:vue.readonly(t),isPrefetching:vue.readonly(r),lastViewPageRequest:vue.readonly(a),initializePrefetch:u,generatePoints:l,requestData:v,requestDataFromServer:f,startPrefetching:c,stopPrefetching:p,clearRequests:h,getViewportRequests:y,reRequestPages:m}},useChannelProcessing=(e,t,n,r)=>{const a=vue.reactive({totalChannels:0,processedChannels:0,montageChannels:0,errors:0,lastProcessingTime:0}),s=vue.ref(new Map),o=vue.ref(new Map),i=vue.computed(()=>t.value!=="NOT_MONTAGED"),u=vue.computed(()=>!i.value||!n.value?null:n.value.find(O=>O.name===t.value)),l=vue.computed(()=>{var O;return((O=u.value)==null?void 0:O.channelPairs)||{}});vue.watch(t,()=>{s.value.clear(),o.value.clear()});const v=O=>O?propOr("","id",O):"",d=O=>O?propOr("","serverId",O)||propOr("","id",O):"",f=O=>propOr("","id",O),c=O=>{if(!O)return"";let D=propOr("","id",O);if(i.value&&typeof D=="string"){const j=D.split("_");D=j.length>1?head(j):D}return D},p=(O,D,j=null)=>{var ie,x;const z=j||t.value,T=`${O}_${D}_${z}`;if(o.value.has(T))return o.value.get(T);let L=`${O}-${D}`;if(z!=="NOT_MONTAGED"){const V=(ie=n.value)==null?void 0:ie.find(le=>le.name===z);if(V!=null&&V.channelPairs)for(const le of Object.keys(V.channelPairs)){const re=V.channelPairs[le];if(((x=re.channels)==null?void 0:x.length)===2&&re.channels[0]===O&&re.channels[1]===D){L=re.name||L;break}}}return o.value.set(T,L),L},h=O=>{if(!Array.isArray(O))return console.warn("Invalid channel details provided:",O),[];const D=performance.now();a.totalChannels=O.length,a.processedChannels=0,a.errors=0;const j=O.map(({id:z,name:T})=>{var L;try{const ie=y(z);if(!ie)return console.warn(`❌ Base channel not found for ID: ${z}, available base channels:`,((L=e.value)==null?void 0:L.map(V=>({id:V==null?void 0:V.id,name:V==null?void 0:V.name})))||[]),a.errors++,null;const x=m(z,T,ie);return a.processedChannels++,i.value&&a.montageChannels++,x}catch(ie){return console.error(`❌ Error processing channel ${z}:`,ie),a.errors++,null}}).filter(Boolean);return a.lastProcessingTime=performance.now()-D,j},y=O=>{var j;if(s.value.has(O))return s.value.get(O);const D=(j=e.value)==null?void 0:j.find(z=>(z==null?void 0:z.id)===O);return D&&s.value.set(O,D),D},m=(O,D,j)=>{let z=D;const T=O;let L=O;if(i.value){L=`${O}_${D}`;const x=D.split("<->",2);x.length===2&&(z=p(x[0],x[1]),console.log("🎭 Montage display name created:",{originalName:D,channelParts:x,displayName:z}))}return{content:{id:L,serverId:T,name:D,channelType:j.channelType,label:D,displayName:z,unit:j.unit,rate:j.rate,start:j.start,end:j.end,montageScheme:i.value?t.value:"NOT_MONTAGED",isMontaged:i.value,baseChannelId:O},properties:j.properties||[]}},_=O=>{var z,T;if(O==="NOT_MONTAGED")return{montage:"NOT_MONTAGED",packageId:(z=r.value)==null?void 0:z.id,montageMap:[]};const D=n.value.find(L=>L.name===O);if(!D)return console.warn("Montage not found:",O),null;const j=D.channelPairs.map(L=>L.channels);return{montage:"CUSTOM_MONTAGE",packageId:(T=r.value)==null?void 0:T.content.id,montageMap:j}},b=O=>{const D=[];if(!O)return D.push("Channel configuration is null or undefined"),{isValid:!1,errors:D};const j=["id","label","type","unit","rate"];for(const T of j)O[T]||D.push(`Missing required field: ${T}`);O.rate&&(typeof O.rate!="number"||O.rate<=0)&&D.push("Sample rate must be a positive number"),O.start&&O.end&&O.start>=O.end&&D.push("Channel start time must be less than end time");const z=["CONTINUOUS","UNIT","Neural"];return O.type&&!z.includes(O.type)&&D.push(`Invalid channel type: ${O.type}. Must be one of: ${z.join(", ")}`),{isValid:D.length===0,errors:D}},g=O=>O.sort((D,j)=>{const z=D.label||"",T=j.label||"",L=z.split("<->",3),ie=T.split("<->",3);if(L.length>2||ie.length>2)return z.localeCompare(T);const x=L[0]||"",V=ie[0]||"";if(x===V&&L.length>1&&ie.length>1){const le=parseFloat(L[1]),re=parseFloat(ie[1]);return!isNaN(le)&&!isNaN(re)?le-re:L[1].localeCompare(ie[1])}return x.localeCompare(V)}),w=(O,D=0)=>{const j=O.content,z=j.label.split("<->",3),T=z[0]||"",L=z.length>1?isNaN(parseFloat(z[1]))?z[1]:parseFloat(z[1]):0;return{id:j.id,serverId:j.serverId,type:j.channelType,label:j.label,displayName:j.displayName,labelParts:z,labelPrefix:T,labelValue:L,dataSegments:[],rank:D,visible:!0,plotAgainst:null,rowBaseline:null,rowScale:1,rowAdjust:0,selected:!1,hover:!1,unit:j.unit,sf:j.rate,filter:{},hideFilter:!0,isEditing:!1,montageScheme:j.montageScheme||"NOT_MONTAGED",isMontaged:j.isMontaged||!1,baseChannelId:j.baseChannelId}},k=(O,D={})=>{const{channelType:j=null,visible:z=null,montageScheme:T=null,labelPattern:L=null,sampleRate:ie=null}=D;return O.filter(x=>!(j&&x.type!==j||z!==null&&x.visible!==z||T&&x.montageScheme!==T||L&&!new RegExp(L,"i").test(x.label)||ie&&x.sf!==ie))},A=(O,D="type")=>{const j={};return O.forEach(z=>{let T;switch(D){case"type":T=z.type;break;case"montage":T=z.montageScheme||"NOT_MONTAGED";break;case"prefix":T=z.labelPrefix;break;case"sampleRate":T=z.sf;break;case"unit":T=z.unit;break;default:T="all"}j[T]||(j[T]=[]),j[T].push(z)}),j},$=()=>{var O;return{...a,cacheSize:s.value.size,montageCacheSize:o.value.size,isViewingMontage:i.value,currentMontageScheme:t.value,availableMontages:((O=n.value)==null?void 0:O.map(D=>D.name))||[]}},M=()=>{s.value.clear(),o.value.clear(),Object.assign(a,{totalChannels:0,processedChannels:0,montageChannels:0,errors:0,lastProcessingTime:0})},F=async O=>{const D=[];for(const j of O)try{const z=await j();D.push({success:!0,result:z})}catch(z){D.push({success:!1,error:z.message}),a.errors++}return D};return{processingStats:vue.readonly(a),isViewingMontage:i,currentMontage:u,montageChannelPairs:l,getChannelId:v,getBaseChannelId:c,getServerChannelId:d,getRawChannelId:f,getDisplayName:p,processChannelData:h,createMontagePayload:_,createChannelConfig:w,validateChannelConfig:b,sortChannelConfigurations:g,filterChannels:k,groupChannels:A,findBaseChannel:y,createVirtualChannel:m,getProcessingStats:$,clearCaches:M,batchProcessChannels:F}};function createThrottle(e,t,n={}){let r,a,s,o=null,i=0;const{leading:u=!0,trailing:l=!0}=n,v=function(){i=u===!1?0:Date.now(),o=null,s=e.apply(r,a),o||(r=a=null)},d=function(){const f=Date.now();!i&&u===!1&&(i=f);const c=t-(f-i);return r=this,a=arguments,c<=0||c>t?(o&&(clearTimeout(o),o=null),i=f,s=e.apply(r,a),o||(r=a=null)):!o&&l!==!1&&(o=setTimeout(v,c)),s};return d.cancel=function(){clearTimeout(o),i=0,o=r=a=null},d}const _hoisted_1$k={class:"timeseries-plot-canvas"},_hoisted_2$8=["width","height"],_hoisted_3$7=["width","height"],_sfc_main$U={__name:"TSPlotCanvas",props:{cHeight:{type:Number,required:!0},cWidth:{type:Number,required:!0},start:{type:Number,required:!0},duration:{type:Number,required:!0},constants:{type:Object,required:!0},rsPeriod:{type:Number,required:!0},ts_start:{type:Number,required:!0},ts_end:{type:Number,required:!0},globalZoomMult:{type:Number,required:!0},activeViewer:{type:Object,required:!0}},emits:["channelsInitialized","setGlobalZoom"],setup(e,{expose:t,emit:n}){const r=e,a=n,s=vue.computed(()=>r.activeViewer||{}),o=vue.computed(()=>{var Ce;return((Ce=s.value)==null?void 0:Ce.channels)||[]}),i=useViewerStore(),{viewerChannels:u,viewerMontageScheme:l,workspaceMontages:v}=pinia.storeToRefs(i),{websocket:d,connectionStatus:f,openWebsocket:c,send:p,sendFilterMessage:h,sendDumpBufferRequest:y,disconnect:m,setClearChannelsCallback:_,onSegment:b,onEvent:g,onChannelDetails:w,onError:k}=useWebSocket(),{plotCanvasRef:A,blurCanvasRef:$,initializeCanvases:M,renderData:F,cpCanvasScaler:O}=useCanvasRenderer(),D=vue.ref(1),j=vue.ref(!1),{chData:z,requestedPages:T,viewData:L,channelsReady:ie,autoScale:x,initChannels:V,dataCallback:le,invalidate:re,autoScaleViewData:Y,segmIndexOf:he,updateCurrentRequestedSamplePeriod:_e,currentRequestedSamplePeriod:$e,isDataCurrentForViewport:Ne}=useTimeSeriesData(),{aSyncRequests:kt,aSyncPreRequests:Pt,isPrefetching:Oe,initializePrefetch:ze,generatePoints:At,requestDataFromServer:En,startPrefetching:Pn,clearRequests:Dn}=useDataRequests(),{getChannelId:Mn,processChannelData:Ue,createMontagePayload:xe}=useChannelProcessing(o,l,v,s),Lt=vue.ref({totalRequests:0,successfulRequests:0,failedRequests:0,montageRequests:0,singleChannelRequests:0,lastPrefetchTime:null,averageResponseTime:0}),Et=vue.ref(null),wn=vue.ref(null),Tn=vue.ref(null),kn=vue.ref(0),In=vue.computed(()=>D.value*r.cWidth),qe=vue.computed(()=>O(r.cHeight,D.value,0)),hn=vue.computed(()=>r.cHeight-20),An=vue.computed(()=>({width:r.cWidth+"px",height:hn.value+"px"})),Nn=vue.reactive({start:r.start,duration:r.duration,cWidth:r.cWidth,cHeight:r.cHeight,pHeight:hn.value,rsPeriod:r.rsPeriod,nrVisibleChannels:0}),xn=vue.computed(()=>r.rsPeriod>0?r.rsPeriod:Nn.duration>0&&Nn.cWidth>0?Nn.duration/Nn.cWidth:(console.warn("⚠️ Using fallback rsPeriod = 1"),1));vue.watch(xn,Ce=>{Ce>0&&_e(Ce)},{immediate:!0});const Bn=()=>{var Ce;try{if(!ie.value){console.log("⏳ Render skipped - channels not ready");return}Nn.nrVisibleChannels=((Ce=u.value)==null?void 0:Ce.reduce((Cn,bn)=>bn.visible?Cn+1:Cn,0))||0;let Dt=0,Sn=0;if(L.channels.forEach((Cn,bn)=>{const jt=Cn.blocks||[],On=jt.reduce((ue,Fe)=>ue+(Fe.nrPoints||0),0);jt.length>0&&(Sn++,Dt+=jt.length)}),Sn===0)return;F(L,u.value||[],r.constants,Nn,r.globalZoomMult,D.value)}catch(Dt){console.error("💥 ERROR in renderDataInternal:",Dt),console.error("💥 Stack trace:",Dt.stack)}},Rn=vue.ref(),qn=()=>{Rn.value=setInterval(()=>{var Sn,Cn;if(!ie.value)return;const Ce={timestamp:new Date().toISOString(),requestedPagesSize:T.value.size,isPrefetching:Oe.value,pendingAsyncRequests:kt.value.length,pendingPreRequests:Pt.value.length,currentMontage:l.value,channelCount:((Sn=u.value)==null?void 0:Sn.length)||0,visibleChannelCount:((Cn=u.value)==null?void 0:Cn.filter(bn=>bn.visible).length)||0,connectionStatus:f.value,requestedPages:Array.from(T.value.entries()).map(([bn,jt])=>{var On;return{pageStart:bn,channelCount:jt.count,inViewport:jt.inViewport,age:Date.now()-jt.ts,channels:((On=jt.channels)==null?void 0:On.map(ue=>ue.id))||Array.from(jt.counter.keys())}})},Dt=Ce.requestedPages.filter(bn=>bn.age>1e4);Dt.length>0&&console.warn("⚠️ Detected stuck requests:",Dt),Ce.pendingPreRequests>0&&!Ce.isPrefetching&&console.warn("⚠️ Prefetch is blocked with pending requests:",{pendingPreRequests:Ce.pendingPreRequests,requestedPagesSize:Ce.requestedPagesSize})},5e3)},Fn=async()=>{if(!u.value)return;const Ce=z.value.filter(Fe=>{const Ve=u.value.find(_n=>_n.id===Fe.id);return Ve&&Ve.visible}),Dt=xn.value,Sn=At(Ce,r.start,r.duration,L,T.value,r.constants,Dt,r.ts_end,he,Mn),Cn=Math.ceil(Dt);let bn=!1,jt="";if(Et.value!==null&&Cn!==Et.value&&(bn=!0,jt=`rsPeriod changed: ${Et.value} → ${Cn} (resolution change)`),wn.value!==null){const Fe=Math.abs(r.start-wn.value),Ve=Math.max(r.duration,Tn.value||r.duration);Fe>Ve*2&&(bn=!0,jt=`Large time jump: ${Fe} > ${Ve*2} (${(Fe/Ve).toFixed(1)}x window)`)}const On=15;if(T.value.size>On&&(bn=!0,jt=`Too many pending requests: ${T.value.size} > ${On}`),kn.value>=5&&(bn=!0,jt=`High stale data rate: ${kn.value} consecutive stale segments`),bn&&!j.value){j.value=!0,console.log("🚨 Dumping server buffer before new requests:",jt);try{y()&&(T.value.clear(),Dn(),kn.value=0,await new Promise(Fe=>setTimeout(Fe,50)))}finally{j.value=!1}}else if(bn&&j.value){console.log("⏭️ Skipping duplicate dump request (already in progress)");return}Et.value=Cn,wn.value=r.start,Tn.value=r.duration;const ue=await useToken();Sn.asyncRequests.length>0&&En(Sn.asyncRequests,0,d.value,ue,s.value,Dt,T.value,r.ts_end),Sn.asyncPreRequests.length>0&&Pn()},$n=()=>{Fn(),Bn()},oe=()=>{Fn(),x.value===0?(x.value--,pe()):Bn()},pe=()=>{const Ce=Y(r.cHeight);Ce&&!isNaN(Ce)&&a("setGlobalZoom",Ce),Bn()},S=createThrottle(oe,250,{leading:!1}),ae=createThrottle(()=>$n(),50);vue.watch(()=>r.rsPeriod,(Ce,Dt)=>{Ce>0&&_e(Ce),re(),T.value.clear()}),vue.watch(()=>r.duration,(Ce,Dt)=>{re()}),vue.watch(()=>l.value,Ce=>{if(d.value&&d.value.readyState===1){console.log("🔄 Montage changing to:",Ce),T.value.clear(),Dn(),re(),kn.value=0,Et.value=null,wn.value=null,Tn.value=null,ie.value=!1;const Dt=xe(Ce);console.log("📡 Sending montage payload:",Dt),Dt&&p(Dt)}}),vue.watch(()=>[r.start,r.duration,r.cWidth,r.cHeight,r.rsPeriod],()=>{Nn.start=r.start,Nn.duration=r.duration,Nn.cWidth=r.cWidth,Nn.cHeight=r.cHeight,Nn.pHeight=hn.value,Nn.rsPeriod=r.rsPeriod}),b(Ce=>{Ce.pageStart>=r.start+r.duration&&(Lt.value.totalRequests++,l.value!=="NOT_MONTAGED"?Lt.value.montageRequests++:Lt.value.singleChannelRequests++),le(Ce),Ce.pageStart<r.start+r.duration&&S()}),g(Ce=>{if(!Ne(Ce.data)){kn.value++;return}kn.value=0,le(Ce),Ce.pageStart<r.start+r.duration&&S()}),w(Ce=>{const Dt=Ue(Ce);V(Dt,i,Mn).then(()=>{re(),$n(),a("channelsInitialized")})}),k(Ce=>{i.setViewerErrors(Ce)});const de=async()=>{var Sn,Cn,bn;const Ce=xn.value;_e(Ce),_(()=>{var jt;if((jt=u.value)!=null&&jt.length){const ue={channelFiltersToClear:u.value.map(Fe=>Fe.id)};h(ue)}});const Dt=await useToken();if(ze(jt=>{const On=xn.value;return En(jt,0,d.value,Dt,s.value,On,T.value,r.ts_end)},T),(Sn=s.value)!=null&&Sn.content.id)try{console.log("🔄 Opening WebSocket connection for package:",s.value.content.id),await c(i.config.timeseriesDiscoverApi,s.value.content.id,Dt),console.log("✅ WebSocket connection established"),qn()}catch(jt){console.error("❌ Failed to establish WebSocket connection:",jt);return}console.log("🚀 TSPlotCanvas mounted with config:",{activeViewerId:(Cn=s.value)==null?void 0:Cn.content.id,initialMontage:l.value,baseChannelCount:((bn=o.value)==null?void 0:bn.length)||0,viewport:{start:r.start,duration:r.duration,width:r.cWidth,height:r.cHeight,rsPeriod:r.rsPeriod}})};return vue.onMounted(async()=>{D.value=1,M(D.value),de()}),vue.onUnmounted(()=>{clearInterval(Rn.value),T.value.size>0&&y(),i.resetViewer(),Dn(),m(),S.cancel&&S.cancel(),ae.cancel&&ae.cancel()}),t({renderAll:$n,invalidate:re,throttledDataRender:ae,sendFilterMessage:h,viewData:L,requestedPages:T,chData:z,viewerChannels:u,currentRequestedSamplePeriod:$e,initPlotCanvas:de}),(Ce,Dt)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$k,[vue.createElementVNode("canvas",{ref_key:"blurCanvasRef",ref:$,class:"canvas",width:In.value,height:qe.value,style:vue.normalizeStyle(An.value)},null,12,_hoisted_2$8),vue.renderSlot(Ce.$slots,"axisCanvas",{},void 0,!0),vue.renderSlot(Ce.$slots,"annCanvas",{},void 0,!0),vue.createElementVNode("canvas",{ref_key:"plotCanvasRef",ref:A,class:"canvas",width:In.value,height:qe.value,style:vue.normalizeStyle(An.value)},null,12,_hoisted_3$7)]))}},TSPlotCanvas=_export_sfc$1(_sfc_main$U,[["__scopeId","data-v-4be24234"]]),_hoisted_1$j={class:"timeseries-viewer-canvas"},_hoisted_2$7={id:"canvasWrapper"},_hoisted_3$6=["width","height"],_hoisted_4$4=["width","height"],_hoisted_5$3=["width","height"],_hoisted_6$3=["width","height"],_sfc_main$T={__name:"TSViewerCanvas",props:{windowHeight:Number,windowWidth:Number,duration:Number,start:Number,cHeight:Number,cWidth:Number,globalZoomMult:Number,constants:Object,tsStart:Number,tsEnd:Number,cursorLoc:Number,activeViewer:{type:Object,required:!0}},emits:["setDuration","setGlobalZoom","setStart","addAnnotation","updateAnnotation","closeAnnotationLayerWindow","channelsInitialized","annLayersInitialized"],setup(e,{expose:t,emit:n}){const r=vue.defineAsyncComponent(()=>Promise.resolve().then(()=>TSAnnotationCanvas$1)),a=e,s=n,o=useViewerStore(),{viewerChannels:i,viewerAnnotations:u,viewerActiveTool:l,viewerSelectedChannels:v}=pinia.storeToRefs(o),d=vue.ref(null),f=vue.ref(null),c=vue.ref(null),p=vue.ref(null),h=vue.ref(null),y=vue.ref(null);vue.reactive({});const m=vue.ref(0),_=vue.ref(0),b=vue.ref(0),g=vue.ref(1),w=vue.ref(!1),k=vue.ref(!1),A=vue.ref("pointer");vue.ref(!1);const $=vue.reactive({x:0,y:0}),M=vue.ref(0),F=vue.ref(["Event","Artifact","Seizure","Mark","Stim On","Stim Off","Start","Stop"]),O=vue.ref(0),D=vue.ref(null),j=vue.ref(0),z=vue.ref(!0),T=()=>{if(u.value.length>0){if(!u.value.some(ae=>ae.selected)){console.log("No layer selected, selecting first layer:",u.value[0]);const ae=u.value[0];ae&&ae.id?o.setActiveAnnotationLayer(ae.id):console.error("First layer has no ID:",ae)}}else console.warn("No annotation layers available - waiting for layers to load"),setTimeout(()=>{u.value.length>0&&T()},500)},L=S=>{if(console.log("TSViewerCanvas: setActiveTool called with:",S),S){const ae="set"+S.charAt(0).toUpperCase()+S.slice(1),de=ie[ae];typeof de=="function"&&de()}},ie={setPan:()=>{console.log("Pan tool activated")},setPointer:()=>{console.log("Pointer tool activated")},setAnnotate:()=>{console.log("Annotate tool activated"),T()}},x=vue.computed(()=>i.value.filter(S=>S.visible).length),V=vue.computed(()=>a.cHeight-20),le=vue.computed(()=>a.cWidth+a.constants.CURSOROFFSET);vue.computed(()=>f.value);const re=vue.computed(()=>({width:a.cWidth+"px",height:a.cHeight+"px"})),Y=vue.computed(()=>({width:a.cWidth+"px",height:V.value+"px"})),he=vue.computed(()=>({width:le.value+"px",height:a.cHeight+"px"}));vue.watch(()=>a.cHeight,()=>{Tn()}),vue.watch(()=>a.cWidth,()=>{Tn()}),vue.watch(()=>a.start,()=>{qe()}),vue.watch(()=>a.duration,()=>{var S;(S=d.value)==null||S.invalidate(),kn(a.cWidth,a.duration),qe()}),vue.watch(()=>a.globalZoomMult,()=>{vue.nextTick(()=>{var S;(S=d.value)==null||S.throttledDataRender()})}),vue.watch(l,S=>{S&&(L(S),!w.value&&!["annResize-left","annResize-right","annSelect"].includes(A.value)&&(A.value=S))},{immediate:!0}),vue.watch(u,S=>{S.length>0&&l.value==="annotate"&&T()},{immediate:!0}),vue.watch(A,()=>{console.log(A);const S=y.value;if(S){switch(S.removeAttribute("col_resize"),S.removeAttribute("active"),S.removeAttribute("point"),A.value){case"cursor_hover":S.removeAttribute("point"),S.setAttribute("cursor_hover",!0);break;case"annResize-left":case"annResize-right":S.setAttribute("col_resize",!0);break;case"annSelect":S.setAttribute("active",!0);break;case"pan":case"pan":break;case"pointer":case"annotate":S.setAttribute("point",!0);break;default:S.removeAttribute("point"),S.removeAttribute("cursor_hover");break}vue.nextTick(()=>{An()})}});const _e=()=>{var S;(S=h.value)==null||S.resetFocusedAnnotation()},$e=S=>{var ae;(ae=h.value)==null||ae.createAnnotationLayer(S)},Ne=()=>{var de;let S=(a.cursorLoc*a.cWidth-a.constants.CURSOROFFSET)*m.value;return((de=h.value)==null?void 0:de.findNextAnnotation(a.start+S)).start-S},kt=()=>{var de;let S=(a.cursorLoc*a.cWidth-a.constants.CURSOROFFSET)*m.value;return((de=h.value)==null?void 0:de.findPreviousAnnotation(a.start+S)).start-S},Pt=S=>{s("updateAnnotation",S)},Oe=()=>{s("closeAnnotationLayerWindow")},ze=()=>{qe(100)},At=()=>{console.log("Annotation layers initialized, ensuring active layer for annotate tool"),l.value==="annotate"&&T(),s("annLayersInitialized")},En=S=>{s("setGlobalZoom",S)},Pn=()=>{s("channelsInitialized")},Dn=S=>{S.stopPropagation(),S.preventDefault(),S.shiftKey?Math.abs(S.deltaY)>Math.abs(S.deltaX)&&(S.deltaY>0?s("setDuration",a.duration*1.1):s("setDuration",a.duration/1.1)):Math.abs(S.deltaY)>Math.abs(S.deltaX)&&(S.deltaY>0?s("setGlobalZoom",a.globalZoomMult*1.2):s("setGlobalZoom",a.globalZoomMult/1.2))},Mn=S=>{var ae,de;switch(console.log("TSViewerCanvas: _onMouseUp called with pointerMode:",A.value,"viewerActiveTool:",l.value),k.value=!1,w.value=!1,A.value){case"pointer":Ue();const Ce=S.metaKey,Dt=S.clientY-y.value.getBoundingClientRect().top,Sn=$.y-y.value.getBoundingClientRect().top,Cn=i.value.map(_n=>(Ce===!1&&(_n.selected=!1),(_n.rowBaseline>Sn&&_n.rowBaseline<Dt||_n.rowBaseline<Sn&&_n.rowBaseline>Dt)&&(_n.selected=!0),_n));o.setChannels(Cn),qe();break;case"annSelect":Ue(),(ae=h.value)==null||ae.selectFocusedAnn();break;case"annotate":T();let bn=null,jt=null;for(let _n=0;_n<u.value.length;_n++)if(u.value[_n].selected){bn=_n,jt=u.value[_n];break}if(console.log("Creating annotation - curLIndex:",bn,"available layers:",u.value.length),console.log("Selected layer details:",jt),bn===null||!jt||!jt.id)if(console.error("No valid selected annotation layer found for annotation creation",{curLIndex:bn,selectedLayer:jt,allLayers:u.value}),u.value.length>0&&u.value[0].id)o.setActiveAnnotationLayer(u.value[0].id),jt=u.value[0],bn=0,console.log("Fallback: Selected first layer:",jt);else{console.error("No layers available with valid IDs");return}const On=v,ue=On.length===i.value.length||On.length===0,Fe=(S.clientX-$.x)*m.value,Ve=M.value+($.x-y.value.getBoundingClientRect().left)*m.value;if(console.log("Creating annotation with:",{startTime:Ve,duration:Fe,allChannels:ue,selectedChannels:On.length,layer:jt.name,layerId:jt.id,pointerMode:A.value}),Math.abs(Fe)>1e3){const _n={name:"",id:null,label:F.value[O.value],description:"",start:Ve,duration:Fe,end:Ve+Fe,cStart:null,cEnd:null,selected:!0,channelIds:On,allChannels:ue,layer_id:jt.id,userId:null};console.log("📍 STEP 1 - TSViewerCanvas created:",_n),o.setActiveAnnotation(_n),console.log("📍 STEP 1 - Store now has:",o.activeAnnotation),s("addAnnotation",Ve,Fe,ue,_n.label,_n.description,jt);break}else console.log("Annotation duration too small, not creating annotation");break;case"annResize-left":case"annResize-right":(de=h.value)==null||de.onMouseUp();break}},Ue=()=>{y.value.getContext("2d").clearRect(0,0,a.cWidth,a.cHeight)},xe=S=>{var de;console.log("TSViewerCanvas: _onMouseDown called with pointerMode:",A.value,"viewerActiveTool:",l.value),w.value=!0,M.value=a.start;const ae=y.value.getBoundingClientRect();switch($.x=S.clientX,$.y=S.clientY,l.value==="annotate"&&!["annResize-left","annResize-right","annSelect"].includes(A.value)&&(console.log("Setting pointerMode to annotate for annotation creation"),A.value="annotate"),A.value){case"annResize-left":case"annResize-right":k.value=!0,(de=h.value)==null||de.onMouseDown(S.clientX-ae.left,S.clientY-ae.top);break}},Lt=()=>{w.value=!1},Et=S=>{S.buttons===1?w.value=!0:w.value=!1},wn=S=>{var Dt,Sn,Cn,bn;S.preventDefault(),S.stopPropagation();const ae=y.value.getBoundingClientRect(),de=S.clientY-ae.top,Ce=S.clientX-ae.left;switch(l.value){case"pan":if(w.value){const jt=M.value-(S.clientX-$.x)*m.value;s("setStart",jt)}else{const jt=(Dt=h.value)==null?void 0:Dt.onMouseMove(Ce,de,A.value,w.value);A.value=jt||"pan"}break;case"pointer":if(w.value)Bn(S.clientX,S.clientY);else{const jt=(Sn=h.value)==null?void 0:Sn.onMouseMove(Ce,de,A.value,w.value);A.value=jt||"pointer"}break;case"annotate":if(w.value&&A.value==="annotate")qn(S.clientX);else if(w.value&&["annResize-left","annResize-right"].includes(A.value)){const jt=(Cn=h.value)==null?void 0:Cn.onMouseMove(Ce,de,A.value,w.value);A.value=jt||A.value,qe()}else{const jt=(bn=h.value)==null?void 0:bn.onMouseMove(Ce,de,A.value,w.value);jt?(console.log("TSViewerCanvas: annCanvas.onMouseMove returned:",jt),A.value=jt):A.value="annotate"}break}},Tn=()=>{kn(a.cWidth,a.duration),qe(25)},kn=(S,ae)=>{const de=m.value,Ce=ae/S;Ce!==de&&(b.value=Date.now(),m.value=Ce,_.value=Math.floor(ae/a.constants.PAGESIZEDIVIDER))},In=(S,ae,de)=>ae*(S+de),qe=(S=0,ae=!0)=>{(!D.value||S!==j.value||z.value!==ae)&&(D.value=hn(Nn,S,{leading:ae}),j.value=S,z.value=ae),D.value()},hn=(S,ae,de={})=>{let Ce,Dt,Sn,Cn=null,bn=0;const jt=function(){bn=de.leading===!1?0:Date.now(),Cn=null,Sn=S.apply(Ce,Dt),Cn||(Ce=Dt=null)};return function(){const On=Date.now();!bn&&de.leading===!1&&(bn=On);const ue=ae-(On-bn);return Ce=this,Dt=arguments,ue<=0||ue>ae?(Cn&&(clearTimeout(Cn),Cn=null),bn=On,Sn=S.apply(Ce,Dt),Cn||(Ce=Dt=null)):!Cn&&de.trailing!==!1&&(Cn=setTimeout(jt,ue)),Sn}},An=()=>{var S;Ue(),(S=h.value)==null||S.render()},Nn=()=>{vue.nextTick(()=>{var S,ae;xn(),Rn(),(S=d.value)==null||S.renderAll(),(ae=h.value)==null||ae.render()})},xn=()=>{const ae=f.value.getContext("2d");ae.setTransform(g.value,0,0,g.value,0,0),ae.clearRect(0,0,a.cWidth,a.cHeight),ae.stroke(),ae.beginPath(),ae.lineWidth=1,ae.moveTo(a.constants.XOFFSET+.5,.5),ae.lineTo(a.constants.XOFFSET+.5,V.value+.5),ae.lineTo(a.cWidth+.5,V.value+.5),ae.stroke();let de=V.value/(2*x.value)+.5<<1>>1;ae.lineWidth=.5;for(let bn=0;bn<x.value;bn++)ae.beginPath(),ae.moveTo(a.constants.XOFFSET-2,de),ae.lineTo(a.constants.XOFFSET+2,de),ae.stroke(),de+=V.value/x.value;const Ce=a.constants.XGRIDSPACING*Math.ceil(a.duration/1e8),Dt=Math.ceil(a.duration/Ce)+1,Sn=Math.ceil(a.constants.NRPXPERLABEL/(Ce/m.value)),Cn=(Ce-a.start%Ce)%Ce;for(let bn=0;bn<Dt;bn++){let jt=a.start+Cn+bn*Ce;if(jt>a.tsEnd)break;const On=jt-a.start,ue=a.constants.XOFFSET+On/m.value,Fe=Math.round(ue);if(Fe>1&&(ae.save(),ae.beginPath(),ae.lineWidth=.5,ae.strokeStyle="rgb(235,235,235)",ae.moveTo(Fe+.5,.5),ae.lineTo(Fe+.5,V.value-.5),ae.stroke(),ae.restore(),((jt/Ce+Ce/10)%Sn|0)===1||Sn===1)){ae.beginPath(),ae.lineWidth=1,ae.moveTo(Fe+.5,V.value-3),ae.lineTo(Fe+.5,V.value+3),ae.stroke();const _n=new Date(jt/1e3);ae.font="12px sans-serif",ae.fillStyle="rgb(150,150,150)",ae.fillText(oe(_n),Fe-20.5,a.cHeight-.2)}}},Bn=(S,ae)=>{const de=y.value,Ce=de.getContext("2d");Ce.setTransform(g.value,0,0,g.value,0,0),Ce.clearRect(0,0,a.cWidth,a.cHeight),Ce.beginPath(),Ce.lineWidth=2,Ce.strokeStyle="#295eff",Ce.setLineDash([5,5,15,5]);const Dt=S-de.getBoundingClientRect().left,Sn=ae-de.getBoundingClientRect().top;Ce.rect(Dt,Sn,-S+$.x,-ae+$.y),Ce.stroke()},Rn=()=>{const ae=p.value.getContext("2d");ae.setTransform(g.value,0,0,g.value,0,0),ae.clearRect(0,0,a.cWidth+a.constants.CURSOROFFSET,a.cHeight),ae.save(),ae.beginPath(),ae.fillStyle="red";const de=a.cursorLoc*a.cWidth;de>a.constants.CURSOROFFSET?(ae.strokeStyle="red",ae.moveTo(de,0),ae.lineTo(de,V.value),ae.stroke()):ae.moveTo(de,V.value),ae.beginPath(),ae.lineTo(de-5,V.value+8),ae.lineTo(de+5,V.value+8),ae.lineTo(de,V.value),ae.fill(),ae.restore()},qn=S=>{const ae=y.value,de=ae.getContext("2d");de.setTransform(g.value,0,0,g.value,0,0);const Ce=a.constants.ANNOTATIONLABELHEIGHT,Dt=Ce/2|0;let Sn=null;for(let On=0;On<u.value.length;On++)if(u.value[On].selected){Sn=On;break}if(Sn===null)return;de.save(),de.clearRect(0,0,a.cWidth,a.cHeight),de.lineWidth=1;const Cn=selectedChannels.length===i.value.length||selectedChannels.length===0,bn=S-ae.getBoundingClientRect().left,jt=-S+$.x;if(Cn){de.fillStyle="rgba(0,0,0,0.1)",de.fillRect(bn,0,jt,V.value),de.fillStyle=u.value[Sn].color,de.strokeStyle=de.fillStyle;let On=bn-1,ue=jt+2;jt<0&&(On=bn+1,ue=jt-2),de.fillRect(On,0,ue,Ce),de.setLineDash([5,5,5,5]),de.beginPath(),de.moveTo(bn,Ce),de.lineTo(bn,V.value),de.stroke(),de.beginPath(),de.moveTo(bn+jt,Ce),de.lineTo(bn+jt,V.value),de.stroke()}else{let On=a.cHeight|0,ue=0;const Fe=i.value;de.fillStyle=u.value[Sn].color,de.strokeStyle=de.fillStyle;let Ve=bn-1,_n=jt+2;jt<0&&(Ve=bn+1,_n=jt-2);for(let Ln=0;Ln<Fe.length;Ln++){const jn=Fe[Ln];if(jn.selected&&jn.visible){const Hn=jn.rowBaseline|0;Hn<On&&(On=Hn),Hn>ue&&(ue=Hn),de.fillRect(Ve,Hn-Dt,_n,Ce)}}de.fillStyle="rgba(0,0,0,0.1)",de.setLineDash([5,5,5,5]),de.fillRect(bn-1,On+Dt,jt+2,ue-On-Ce),de.beginPath(),de.moveTo(bn,On+Dt),de.lineTo(bn,ue-Dt),de.moveTo(bn+jt,On+Dt),de.lineTo(bn+jt,ue-Dt),de.stroke()}de.restore()},Fn=()=>{var S;(S=d.value)==null||S.initPlotCanvas()},$n=()=>{let S=y.value.getContext("2d"),ae=window.devicePixelRatio||1,de=S.webkitBackingStorePixelRatio||S.mozBackingStorePixelRatio||S.msBackingStorePixelRatio||S.oBackingStorePixelRatio||S.backingStorePixelRatio||1;return ae/de},oe=S=>("0"+S.getUTCHours()).slice(-2)+":"+("0"+S.getUTCMinutes()).slice(-2)+":"+("0"+S.getUTCSeconds()).slice(-2),pe=S=>{var Dt,Sn;let ae=parseFloat(S.input0),de=parseFloat(S.input1),Ce={};switch(S.filterType){case"clear":Ce={channelFiltersToClear:S.selChannels};break;case"bandpass":let Cn=(ae+de)/2,bn=Math.abs((de-ae)/2);Ce={filter:S.filterType,filterParameters:[4,Cn,bn],channels:S.selChannels};break;case"highpass":Ce={filter:S.filterType,filterParameters:[4,ae],channels:S.selChannels};break;case"lowpass":Ce={filter:S.filterType,filterParameters:[4,ae],channels:S.selChannels};break;case"bandstop":let jt=10;const On=S.notchFreq;Ce={filter:S.filterType,filterParameters:[4,On,jt],channels:S.selChannels};break;default:return}(Dt=d.value)==null||Dt.sendFilterMessage(Ce);for(let Cn=0;Cn<S.selChannels.length;Cn++){let bn=S.selChannels[Cn],jt=find(propEq("id",bn),i.value);S.filterType==="clear"?jt.filter={}:jt.filter={type:S.filterType,input0:ae,input1:de,notchFreq:S.notchFreq}}(Sn=d.value)==null||Sn.invalidate(),qe()};return vue.onMounted(()=>{g.value=$n()}),t({rsPeriod:m,resetFocusedAnnotation:_e,createAnnotationLayer:$e,getNextAnnotation:Ne,getPreviousAnnotation:kt,setFilters:pe,setActiveTool:L,renderAll:qe,renderAnnotationCanvas:An,initViewerCanvas:Fn}),(S,ae)=>(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$j,[vue.createElementVNode("div",_hoisted_2$7,[vue.createVNode(TSPlotCanvas,{ref_key:"plotCanvas",ref:d,"c-width":e.cWidth,"c-height":e.cHeight,start:e.start,ts_start:e.tsStart,ts_end:e.tsEnd,duration:e.duration,constants:e.constants,"rs-period":m.value,"global-zoom-mult":e.globalZoomMult,"active-viewer":e.activeViewer,onChannelsInitialized:Pn,onSetGlobalZoom:En},{axisCanvas:vue.withCtx(()=>[vue.createElementVNode("canvas",{id:"axisArea",ref_key:"axisArea",ref:f,class:"canvas",width:In(e.cWidth,g.value,0),height:In(e.cHeight,g.value,0),style:vue.normalizeStyle(re.value)},null,12,_hoisted_3$6)]),annCanvas:vue.withCtx(()=>[vue.createElementVNode("canvas",{id:"annArea",ref_key:"annArea",ref:c,class:"canvas",width:In(e.cWidth,g.value,0),height:In(V.value,g.value,0),style:vue.normalizeStyle(Y.value)},null,12,_hoisted_4$4)]),_:1},8,["c-width","c-height","start","ts_start","ts_end","duration","constants","rs-period","global-zoom-mult","active-viewer"]),vue.createElementVNode("canvas",{id:"cursorArea",ref_key:"cursorArea",ref:p,class:"canvas",width:In(e.cWidth+5,g.value,0),height:In(e.cHeight,g.value,0),style:vue.normalizeStyle(he.value)},null,12,_hoisted_5$3),vue.createVNode(vue.unref(r),{ref_key:"annCanvas",ref:h,"c-width":e.cWidth,"c-height":e.cHeight,constants:e.constants,"annotations-canvas":c.value,"pixel-ratio":g.value,"rs-period":m.value,start:e.start,duration:e.duration,"ts-end":e.tsEnd,"pointer-mode":A.value,"viewer-active-tool":vue.unref(l),"active-viewer":e.activeViewer,onAnnLayersInitialized:At,onAnnotationsReceived:ze,onCloseAnnotationLayerWindow:Oe,onUpdateAnnotation:Pt},null,8,["c-width","c-height","constants","annotations-canvas","pixel-ratio","rs-period","start","duration","ts-end","pointer-mode","viewer-active-tool","active-viewer"]),vue.createElementVNode("canvas",{id:"iArea",ref_key:"iArea",ref:y,class:"canvas",width:In(e.cWidth,g.value,0),height:In(e.cHeight,g.value,0),style:vue.normalizeStyle(re.value),tabindex:"-1",onWheel:Dn,onMousemove:wn,onMousedown:xe,onMouseup:Mn,onMouseout:Lt,onMouseenter:Et},null,44,_hoisted_6$3)])]))}},TSViewerCanvas=_export_sfc$1(_sfc_main$T,[["__scopeId","data-v-c902180d"]]),TSViewerCanvas$1=Object.freeze(Object.defineProperty({__proto__:null,default:TSViewerCanvas},Symbol.toStringTag,{value:"Module"})),configProviderContextKey=Symbol(),defaultNamespace="el",statePrefix="is-",_bem=(e,t,n,r,a)=>{let s=`${e}-${t}`;return n&&(s+=`-${n}`),r&&(s+=`__${r}`),a&&(s+=`--${a}`),s},namespaceContextKey=Symbol("namespaceContextKey"),useGetDerivedNamespace=e=>{const t=vue.getCurrentInstance()?vue.inject(namespaceContextKey,vue.ref(defaultNamespace)):vue.ref(defaultNamespace);return vue.computed(()=>vue.unref(t)||defaultNamespace)},useNamespace=(e,t)=>{const n=useGetDerivedNamespace();return{namespace:n,b:(h="")=>_bem(n.value,e,h,"",""),e:h=>h?_bem(n.value,e,"",h,""):"",m:h=>h?_bem(n.value,e,"","",h):"",be:(h,y)=>h&&y?_bem(n.value,e,h,y,""):"",em:(h,y)=>h&&y?_bem(n.value,e,"",h,y):"",bm:(h,y)=>h&&y?_bem(n.value,e,h,"",y):"",bem:(h,y,m)=>h&&y&&m?_bem(n.value,e,h,y,m):"",is:(h,...y)=>{const m=y.length>=1?y[0]:!0;return h&&m?`${statePrefix}${h}`:""},cssVar:h=>{const y={};for(const m in h)h[m]&&(y[`--${n.value}-${m}`]=h[m]);return y},cssVarName:h=>`--${n.value}-${h}`,cssVarBlock:h=>{const y={};for(const m in h)h[m]&&(y[`--${n.value}-${e}-${m}`]=h[m]);return y},cssVarBlockName:h=>`--${n.value}-${e}-${h}`}};/**
|
|
12
12
|
* @vue/shared v3.5.17
|
|
13
13
|
* (c) 2018-present Yuxi (Evan) You and Vue contributors
|
|
14
14
|
* @license MIT
|
|
@@ -17,6 +17,6 @@ usage: app.provide(ZINDEX_INJECTION_KEY, { current: 0 })`),{initialZIndex:r,curr
|
|
|
17
17
|
usage: app.provide(ID_INJECTION_KEY, {
|
|
18
18
|
prefix: number,
|
|
19
19
|
current: number,
|
|
20
|
-
})`);const n=useGetDerivedNamespace();return computedEager(()=>vue.unref(e)||`${n.value}-id-${t.prefix}-${t.current++}`)},formContextKey=Symbol("formContextKey"),formItemContextKey=Symbol("formItemContextKey"),useFormItem=()=>{const e=vue.inject(formContextKey,void 0),t=vue.inject(formItemContextKey,void 0);return{form:e,formItem:t}},useFormItemInputId=(e,{formItemContext:t,disableIdGeneration:n,disableIdManagement:r})=>{n||(n=vue.ref(!1)),r||(r=vue.ref(!1));const a=vue.ref();let s;const o=vue.computed(()=>{var i;return!!(!(e.label||e.ariaLabel)&&t&&t.inputIds&&((i=t.inputIds)==null?void 0:i.length)<=1)});return vue.onMounted(()=>{s=vue.watch([vue.toRef(e,"id"),n],([i,u])=>{const l=i??(u?void 0:useId().value);l!==a.value&&(t!=null&&t.removeInputId&&(a.value&&t.removeInputId(a.value),!(r!=null&&r.value)&&!u&&l&&t.addInputId(l)),a.value=l)},{immediate:!0})}),vue.onUnmounted(()=>{s&&s(),t!=null&&t.removeInputId&&a.value&&t.removeInputId(a.value)}),{isLabeledByFormItem:o,inputId:a}},useProp=e=>{const t=vue.getCurrentInstance();return vue.computed(()=>{var n,r;return(r=(n=t==null?void 0:t.proxy)==null?void 0:n.$props)==null?void 0:r[e]})},useFormSize=(e,t={})=>{const n=vue.ref(void 0),r=t.prop?n:useProp("size"),a=t.global?n:useGlobalSize(),s=t.form?{size:void 0}:vue.inject(formContextKey,void 0),o=t.formItem?{size:void 0}:vue.inject(formItemContextKey,void 0);return vue.computed(()=>r.value||vue.unref(e)||(o==null?void 0:o.size)||(s==null?void 0:s.size)||a.value||"")},useFormDisabled=e=>{const t=useProp("disabled"),n=vue.inject(formContextKey,void 0);return vue.computed(()=>t.value||vue.unref(e)||(n==null?void 0:n.disabled)||!1)},isFocusable=e=>{if(e.tabIndex>0||e.tabIndex===0&&e.getAttribute("tabIndex")!==null)return!0;if(e.tabIndex<0||e.hasAttribute("disabled")||e.getAttribute("aria-disabled")==="true")return!1;switch(e.nodeName){case"A":return!!e.href&&e.rel!=="ignore";case"INPUT":return!(e.type==="hidden"||e.type==="file");case"BUTTON":case"SELECT":case"TEXTAREA":return!0;default:return!1}};function useFocusController(e,{beforeFocus:t,afterFocus:n,beforeBlur:r,afterBlur:a}={}){const s=vue.getCurrentInstance(),{emit:o}=s,i=vue.shallowRef(),u=useFormDisabled(),l=vue.ref(!1),v=c=>{isFunction$1(t)&&t(c)||l.value||(l.value=!0,o("focus",c),n==null||n())},d=c=>{var p;isFunction$1(r)&&r(c)||c.relatedTarget&&((p=i.value)!=null&&p.contains(c.relatedTarget))||(l.value=!1,o("blur",c),a==null||a())},f=c=>{var p,h;(p=i.value)!=null&&p.contains(document.activeElement)&&i.value!==document.activeElement||isFocusable(c.target)||u.value||(h=e.value)==null||h.focus()};return vue.watch([i,u],([c,p])=>{c&&(p?c.removeAttribute("tabindex"):c.setAttribute("tabindex","-1"))}),useEventListener(i,"focus",v,!0),useEventListener(i,"blur",d,!0),useEventListener(i,"click",f,!0),process.env.NODE_ENV==="test"&&vue.onMounted(()=>{const c=isElement(e.value)?e.value:document.querySelector("input,textarea");c&&(useEventListener(c,"focus",v,!0),useEventListener(c,"blur",d,!0))}),{isFocused:l,wrapperRef:i,handleFocus:v,handleBlur:d}}const isKorean=e=>/([\uAC00-\uD7AF\u3130-\u318F])+/gi.test(e);function useComposition({afterComposition:e,emit:t}){const n=vue.ref(!1),r=i=>{t==null||t("compositionstart",i),n.value=!0},a=i=>{var u;t==null||t("compositionupdate",i);const l=(u=i.target)==null?void 0:u.value,v=l[l.length-1]||"";n.value=!isKorean(v)},s=i=>{t==null||t("compositionend",i),n.value&&(n.value=!1,vue.nextTick(()=>e(i)))};return{isComposing:n,handleComposition:i=>{i.type==="compositionend"?s(i):a(i)},handleCompositionStart:r,handleCompositionUpdate:a,handleCompositionEnd:s}}function useCursor(e){let t;function n(){if(e.value==null)return;const{selectionStart:a,selectionEnd:s,value:o}=e.value;if(a==null||s==null)return;const i=o.slice(0,Math.max(0,a)),u=o.slice(Math.max(0,s));t={selectionStart:a,selectionEnd:s,value:o,beforeTxt:i,afterTxt:u}}function r(){if(e.value==null||t==null)return;const{value:a}=e.value,{beforeTxt:s,afterTxt:o,selectionStart:i}=t;if(s==null||o==null||i==null)return;let u=a.length;if(a.endsWith(o))u=a.length-o.length;else if(a.startsWith(s))u=s.length;else{const l=s[i-1],v=a.indexOf(l,i-1);v!==-1&&(u=v+1)}e.value.setSelectionRange(u,u)}return[n,r]}const COMPONENT_NAME$5="ElInput",__default__$j=vue.defineComponent({name:COMPONENT_NAME$5,inheritAttrs:!1}),_sfc_main$R=vue.defineComponent({...__default__$j,props:inputProps,emits:inputEmits,setup(e,{expose:t,emit:n}){const r=e,a=vue.useAttrs(),s=useAttrs(),o=vue.useSlots(),i=vue.computed(()=>[r.type==="textarea"?h.b():p.b(),p.m(f.value),p.is("disabled",c.value),p.is("exceed",re.value),{[p.b("group")]:o.prepend||o.append,[p.m("prefix")]:o.prefix||r.prefixIcon,[p.m("suffix")]:o.suffix||r.suffixIcon||r.clearable||r.showPassword,[p.bm("suffix","password-clear")]:x.value&&V.value,[p.b("hidden")]:r.type==="hidden"},a.class]),u=vue.computed(()=>[p.e("wrapper"),p.is("focus",$.value)]),{form:l,formItem:v}=useFormItem(),{inputId:d}=useFormItemInputId(r,{formItemContext:v}),f=useFormSize(),c=useFormDisabled(),p=useNamespace("input"),h=useNamespace("textarea"),y=vue.shallowRef(),m=vue.shallowRef(),_=vue.ref(!1),b=vue.ref(!1),g=vue.ref(),w=vue.shallowRef(r.inputStyle),k=vue.computed(()=>y.value||m.value),{wrapperRef:A,isFocused:$,handleFocus:M,handleBlur:F}=useFocusController(k,{beforeFocus(){return c.value},afterBlur(){var qe;r.validateEvent&&((qe=v==null?void 0:v.validate)==null||qe.call(v,"blur").catch(vn=>debugWarn(vn)))}}),O=vue.computed(()=>{var qe;return(qe=l==null?void 0:l.statusIcon)!=null?qe:!1}),D=vue.computed(()=>(v==null?void 0:v.validateState)||""),j=vue.computed(()=>D.value&&ValidateComponentsMap[D.value]),z=vue.computed(()=>b.value?view_default:hide_default),T=vue.computed(()=>[a.style]),L=vue.computed(()=>[r.inputStyle,w.value,{resize:r.resize}]),ie=vue.computed(()=>isNil(r.modelValue)?"":String(r.modelValue)),x=vue.computed(()=>r.clearable&&!c.value&&!r.readonly&&!!ie.value&&($.value||_.value)),V=vue.computed(()=>r.showPassword&&!c.value&&!!ie.value),le=vue.computed(()=>r.showWordLimit&&!!r.maxlength&&(r.type==="text"||r.type==="textarea")&&!c.value&&!r.readonly&&!r.showPassword),Y=vue.computed(()=>ie.value.length),re=vue.computed(()=>!!le.value&&Y.value>Number(r.maxlength)),he=vue.computed(()=>!!o.suffix||!!r.suffixIcon||x.value||r.showPassword||le.value||!!D.value&&O.value),[Ce,$e]=useCursor(y);useResizeObserver(m,qe=>{if(_e(),!le.value||r.resize!=="both")return;const vn=qe[0],{width:Nn}=vn.contentRect;g.value={right:`calc(100% - ${Nn+15+6}px)`}});const Ne=()=>{const{type:qe,autosize:vn}=r;if(!(!isClient||qe!=="textarea"||!m.value))if(vn){const Nn=isObject$1(vn)?vn.minRows:void 0,Pn=isObject$1(vn)?vn.maxRows:void 0,xn=calcTextareaHeight(m.value,Nn,Pn);w.value={overflowY:"hidden",...xn},vue.nextTick(()=>{m.value.offsetHeight,w.value=xn})}else w.value={minHeight:calcTextareaHeight(m.value).minHeight}},_e=(qe=>{let vn=!1;return()=>{var Nn;if(vn||!r.autosize)return;((Nn=m.value)==null?void 0:Nn.offsetParent)===null||(qe(),vn=!0)}})(Ne),ze=()=>{const qe=k.value,vn=r.formatter?r.formatter(ie.value):ie.value;!qe||qe.value===vn||(qe.value=vn)},Et=async qe=>{Ce();let{value:vn}=qe.target;if(r.formatter&&r.parser&&(vn=r.parser(vn)),!kn.value){if(vn===ie.value){ze();return}n(UPDATE_MODEL_EVENT,vn),n(INPUT_EVENT,vn),await vue.nextTick(),ze(),$e()}},Cn=qe=>{let{value:vn}=qe.target;r.formatter&&r.parser&&(vn=r.parser(vn)),n(CHANGE_EVENT,vn)},{isComposing:kn,handleCompositionStart:In,handleCompositionUpdate:Dn,handleCompositionEnd:Mn}=useComposition({emit:n,afterComposition:Et}),Ue=()=>{Ce(),b.value=!b.value,setTimeout($e)},xe=()=>{var qe;return(qe=k.value)==null?void 0:qe.focus()},Dt=()=>{var qe;return(qe=k.value)==null?void 0:qe.blur()},kt=qe=>{_.value=!1,n("mouseleave",qe)},_n=qe=>{_.value=!0,n("mouseenter",qe)},Sn=qe=>{n("keydown",qe)},Tn=()=>{var qe;(qe=k.value)==null||qe.select()},An=()=>{n(UPDATE_MODEL_EVENT,""),n(CHANGE_EVENT,""),n("clear"),n(INPUT_EVENT,"")};return vue.watch(()=>r.modelValue,()=>{var qe;vue.nextTick(()=>Ne()),r.validateEvent&&((qe=v==null?void 0:v.validate)==null||qe.call(v,"change").catch(vn=>debugWarn(vn)))}),vue.watch(ie,()=>ze()),vue.watch(()=>r.type,async()=>{await vue.nextTick(),ze(),Ne()}),vue.onMounted(()=>{!r.formatter&&r.parser&&debugWarn(COMPONENT_NAME$5,"If you set the parser, you also need to set the formatter."),ze(),vue.nextTick(Ne)}),t({input:y,textarea:m,ref:k,textareaStyle:L,autosize:vue.toRef(r,"autosize"),isComposing:kn,focus:xe,blur:Dt,select:Tn,clear:An,resizeTextarea:Ne}),(qe,vn)=>(vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass([vue.unref(i),{[vue.unref(p).bm("group","append")]:qe.$slots.append,[vue.unref(p).bm("group","prepend")]:qe.$slots.prepend}]),style:vue.normalizeStyle(vue.unref(T)),onMouseenter:_n,onMouseleave:kt},[vue.createCommentVNode(" input "),qe.type!=="textarea"?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.createCommentVNode(" prepend slot "),qe.$slots.prepend?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:vue.normalizeClass(vue.unref(p).be("group","prepend"))},[vue.renderSlot(qe.$slots,"prepend")],2)):vue.createCommentVNode("v-if",!0),vue.createElementVNode("div",{ref_key:"wrapperRef",ref:A,class:vue.normalizeClass(vue.unref(u))},[vue.createCommentVNode(" prefix slot "),qe.$slots.prefix||qe.prefixIcon?(vue.openBlock(),vue.createElementBlock("span",{key:0,class:vue.normalizeClass(vue.unref(p).e("prefix"))},[vue.createElementVNode("span",{class:vue.normalizeClass(vue.unref(p).e("prefix-inner"))},[vue.renderSlot(qe.$slots,"prefix"),qe.prefixIcon?(vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{key:0,class:vue.normalizeClass(vue.unref(p).e("icon"))},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(qe.prefixIcon)))]),_:1},8,["class"])):vue.createCommentVNode("v-if",!0)],2)],2)):vue.createCommentVNode("v-if",!0),vue.createElementVNode("input",vue.mergeProps({id:vue.unref(d),ref_key:"input",ref:y,class:vue.unref(p).e("inner")},vue.unref(s),{minlength:qe.minlength,maxlength:qe.maxlength,type:qe.showPassword?b.value?"text":"password":qe.type,disabled:vue.unref(c),readonly:qe.readonly,autocomplete:qe.autocomplete,tabindex:qe.tabindex,"aria-label":qe.ariaLabel,placeholder:qe.placeholder,style:qe.inputStyle,form:qe.form,autofocus:qe.autofocus,role:qe.containerRole,onCompositionstart:vue.unref(In),onCompositionupdate:vue.unref(Dn),onCompositionend:vue.unref(Mn),onInput:Et,onChange:Cn,onKeydown:Sn}),null,16,["id","minlength","maxlength","type","disabled","readonly","autocomplete","tabindex","aria-label","placeholder","form","autofocus","role","onCompositionstart","onCompositionupdate","onCompositionend"]),vue.createCommentVNode(" suffix slot "),vue.unref(he)?(vue.openBlock(),vue.createElementBlock("span",{key:1,class:vue.normalizeClass(vue.unref(p).e("suffix"))},[vue.createElementVNode("span",{class:vue.normalizeClass(vue.unref(p).e("suffix-inner"))},[!vue.unref(x)||!vue.unref(V)||!vue.unref(le)?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.renderSlot(qe.$slots,"suffix"),qe.suffixIcon?(vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{key:0,class:vue.normalizeClass(vue.unref(p).e("icon"))},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(qe.suffixIcon)))]),_:1},8,["class"])):vue.createCommentVNode("v-if",!0)],64)):vue.createCommentVNode("v-if",!0),vue.unref(x)?(vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{key:1,class:vue.normalizeClass([vue.unref(p).e("icon"),vue.unref(p).e("clear")]),onMousedown:vue.withModifiers(vue.unref(NOOP),["prevent"]),onClick:An},{default:vue.withCtx(()=>[vue.createVNode(vue.unref(circle_close_default))]),_:1},8,["class","onMousedown"])):vue.createCommentVNode("v-if",!0),vue.unref(V)?(vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{key:2,class:vue.normalizeClass([vue.unref(p).e("icon"),vue.unref(p).e("password")]),onClick:Ue},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(vue.unref(z))))]),_:1},8,["class"])):vue.createCommentVNode("v-if",!0),vue.unref(le)?(vue.openBlock(),vue.createElementBlock("span",{key:3,class:vue.normalizeClass(vue.unref(p).e("count"))},[vue.createElementVNode("span",{class:vue.normalizeClass(vue.unref(p).e("count-inner"))},vue.toDisplayString(vue.unref(Y))+" / "+vue.toDisplayString(qe.maxlength),3)],2)):vue.createCommentVNode("v-if",!0),vue.unref(D)&&vue.unref(j)&&vue.unref(O)?(vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{key:4,class:vue.normalizeClass([vue.unref(p).e("icon"),vue.unref(p).e("validateIcon"),vue.unref(p).is("loading",vue.unref(D)==="validating")])},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(vue.unref(j))))]),_:1},8,["class"])):vue.createCommentVNode("v-if",!0)],2)],2)):vue.createCommentVNode("v-if",!0)],2),vue.createCommentVNode(" append slot "),qe.$slots.append?(vue.openBlock(),vue.createElementBlock("div",{key:1,class:vue.normalizeClass(vue.unref(p).be("group","append"))},[vue.renderSlot(qe.$slots,"append")],2)):vue.createCommentVNode("v-if",!0)],64)):(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:1},[vue.createCommentVNode(" textarea "),vue.createElementVNode("textarea",vue.mergeProps({id:vue.unref(d),ref_key:"textarea",ref:m,class:[vue.unref(h).e("inner"),vue.unref(p).is("focus",vue.unref($))]},vue.unref(s),{minlength:qe.minlength,maxlength:qe.maxlength,tabindex:qe.tabindex,disabled:vue.unref(c),readonly:qe.readonly,autocomplete:qe.autocomplete,style:vue.unref(L),"aria-label":qe.ariaLabel,placeholder:qe.placeholder,form:qe.form,autofocus:qe.autofocus,rows:qe.rows,role:qe.containerRole,onCompositionstart:vue.unref(In),onCompositionupdate:vue.unref(Dn),onCompositionend:vue.unref(Mn),onInput:Et,onFocus:vue.unref(M),onBlur:vue.unref(F),onChange:Cn,onKeydown:Sn}),null,16,["id","minlength","maxlength","tabindex","disabled","readonly","autocomplete","aria-label","placeholder","form","autofocus","rows","role","onCompositionstart","onCompositionupdate","onCompositionend","onFocus","onBlur"]),vue.unref(le)?(vue.openBlock(),vue.createElementBlock("span",{key:0,style:vue.normalizeStyle(g.value),class:vue.normalizeClass(vue.unref(p).e("count"))},vue.toDisplayString(vue.unref(Y))+" / "+vue.toDisplayString(qe.maxlength),7)):vue.createCommentVNode("v-if",!0)],64))],38))}});var Input=_export_sfc(_sfc_main$R,[["__file","input.vue"]]);const ElInput=withInstall(Input),GAP=4,BAR_MAP={vertical:{offset:"offsetHeight",scroll:"scrollTop",scrollSize:"scrollHeight",size:"height",key:"vertical",axis:"Y",client:"clientY",direction:"top"},horizontal:{offset:"offsetWidth",scroll:"scrollLeft",scrollSize:"scrollWidth",size:"width",key:"horizontal",axis:"X",client:"clientX",direction:"left"}},renderThumbStyle=({move:e,size:t,bar:n})=>({[n.size]:t,transform:`translate${n.axis}(${e}%)`}),scrollbarContextKey=Symbol("scrollbarContextKey"),thumbProps=buildProps({vertical:Boolean,size:String,move:Number,ratio:{type:Number,required:!0},always:Boolean}),COMPONENT_NAME$4="Thumb",_sfc_main$Q=vue.defineComponent({__name:"thumb",props:thumbProps,setup(e){const t=e,n=vue.inject(scrollbarContextKey),r=useNamespace("scrollbar");n||throwError(COMPONENT_NAME$4,"can not inject scrollbar context");const a=vue.ref(),s=vue.ref(),o=vue.ref({}),i=vue.ref(!1);let u=!1,l=!1,v=0,d=0,f=isClient?document.onselectstart:null;const c=vue.computed(()=>BAR_MAP[t.vertical?"vertical":"horizontal"]),p=vue.computed(()=>renderThumbStyle({size:t.size,move:t.move,bar:c.value})),h=vue.computed(()=>a.value[c.value.offset]**2/n.wrapElement[c.value.scrollSize]/t.ratio/s.value[c.value.offset]),y=$=>{var M;if($.stopPropagation(),$.ctrlKey||[1,2].includes($.button))return;(M=window.getSelection())==null||M.removeAllRanges(),_($);const F=$.currentTarget;F&&(o.value[c.value.axis]=F[c.value.offset]-($[c.value.client]-F.getBoundingClientRect()[c.value.direction]))},m=$=>{if(!s.value||!a.value||!n.wrapElement)return;const M=Math.abs($.target.getBoundingClientRect()[c.value.direction]-$[c.value.client]),F=s.value[c.value.offset]/2,O=(M-F)*100*h.value/a.value[c.value.offset];n.wrapElement[c.value.scroll]=O*n.wrapElement[c.value.scrollSize]/100},_=$=>{$.stopImmediatePropagation(),u=!0,v=n.wrapElement.scrollHeight,d=n.wrapElement.scrollWidth,document.addEventListener("mousemove",b),document.addEventListener("mouseup",g),f=document.onselectstart,document.onselectstart=()=>!1},b=$=>{if(!a.value||!s.value||u===!1)return;const M=o.value[c.value.axis];if(!M)return;const F=(a.value.getBoundingClientRect()[c.value.direction]-$[c.value.client])*-1,O=s.value[c.value.offset]-M,D=(F-O)*100*h.value/a.value[c.value.offset];c.value.scroll==="scrollLeft"?n.wrapElement[c.value.scroll]=D*d/100:n.wrapElement[c.value.scroll]=D*v/100},g=()=>{u=!1,o.value[c.value.axis]=0,document.removeEventListener("mousemove",b),document.removeEventListener("mouseup",g),A(),l&&(i.value=!1)},w=()=>{l=!1,i.value=!!t.size},k=()=>{l=!0,i.value=u};vue.onBeforeUnmount(()=>{A(),document.removeEventListener("mouseup",g)});const A=()=>{document.onselectstart!==f&&(document.onselectstart=f)};return useEventListener(vue.toRef(n,"scrollbarElement"),"mousemove",w),useEventListener(vue.toRef(n,"scrollbarElement"),"mouseleave",k),($,M)=>(vue.openBlock(),vue.createBlock(vue.Transition,{name:vue.unref(r).b("fade"),persisted:""},{default:vue.withCtx(()=>[vue.withDirectives(vue.createElementVNode("div",{ref_key:"instance",ref:a,class:vue.normalizeClass([vue.unref(r).e("bar"),vue.unref(r).is(vue.unref(c).key)]),onMousedown:m,onClick:vue.withModifiers(()=>{},["stop"])},[vue.createElementVNode("div",{ref_key:"thumb",ref:s,class:vue.normalizeClass(vue.unref(r).e("thumb")),style:vue.normalizeStyle(vue.unref(p)),onMousedown:y},null,38)],42,["onClick"]),[[vue.vShow,$.always||i.value]])]),_:1},8,["name"]))}});var Thumb=_export_sfc(_sfc_main$Q,[["__file","thumb.vue"]]);const barProps=buildProps({always:{type:Boolean,default:!0},minSize:{type:Number,required:!0}}),_sfc_main$P=vue.defineComponent({__name:"bar",props:barProps,setup(e,{expose:t}){const n=e,r=vue.inject(scrollbarContextKey),a=vue.ref(0),s=vue.ref(0),o=vue.ref(""),i=vue.ref(""),u=vue.ref(1),l=vue.ref(1);return t({handleScroll:f=>{if(f){const c=f.offsetHeight-GAP,p=f.offsetWidth-GAP;s.value=f.scrollTop*100/c*u.value,a.value=f.scrollLeft*100/p*l.value}},update:()=>{const f=r==null?void 0:r.wrapElement;if(!f)return;const c=f.offsetHeight-GAP,p=f.offsetWidth-GAP,h=c**2/f.scrollHeight,y=p**2/f.scrollWidth,m=Math.max(h,n.minSize),_=Math.max(y,n.minSize);u.value=h/(c-h)/(m/(c-m)),l.value=y/(p-y)/(_/(p-_)),i.value=m+GAP<c?`${m}px`:"",o.value=_+GAP<p?`${_}px`:""}}),(f,c)=>(vue.openBlock(),vue.createElementBlock(vue.Fragment,null,[vue.createVNode(Thumb,{move:a.value,ratio:l.value,size:o.value,always:f.always},null,8,["move","ratio","size","always"]),vue.createVNode(Thumb,{move:s.value,ratio:u.value,size:i.value,vertical:"",always:f.always},null,8,["move","ratio","size","always"])],64))}});var Bar=_export_sfc(_sfc_main$P,[["__file","bar.vue"]]);const scrollbarProps=buildProps({height:{type:[String,Number],default:""},maxHeight:{type:[String,Number],default:""},native:{type:Boolean,default:!1},wrapStyle:{type:definePropType([String,Object,Array]),default:""},wrapClass:{type:[String,Array],default:""},viewClass:{type:[String,Array],default:""},viewStyle:{type:[String,Array,Object],default:""},noresize:Boolean,tag:{type:String,default:"div"},always:Boolean,minSize:{type:Number,default:20},tabindex:{type:[String,Number],default:void 0},id:String,role:String,...useAriaProps(["ariaLabel","ariaOrientation"])}),scrollbarEmits={"end-reached":e=>["left","right","top","bottom"].includes(e),scroll:({scrollTop:e,scrollLeft:t})=>[e,t].every(isNumber)},COMPONENT_NAME$3="ElScrollbar",__default__$i=vue.defineComponent({name:COMPONENT_NAME$3}),_sfc_main$O=vue.defineComponent({...__default__$i,props:scrollbarProps,emits:scrollbarEmits,setup(e,{expose:t,emit:n}){const r=e,a=useNamespace("scrollbar");let s,o,i=0,u=0,l="";const v=vue.ref(),d=vue.ref(),f=vue.ref(),c=vue.ref(),p=vue.computed(()=>{const k={};return r.height&&(k.height=addUnit(r.height)),r.maxHeight&&(k.maxHeight=addUnit(r.maxHeight)),[r.wrapStyle,k]}),h=vue.computed(()=>[r.wrapClass,a.e("wrap"),{[a.em("wrap","hidden-default")]:!r.native}]),y=vue.computed(()=>[a.e("view"),r.viewClass]),m=()=>{var k;if(d.value){(k=c.value)==null||k.handleScroll(d.value);const A=i,$=u;i=d.value.scrollTop,u=d.value.scrollLeft;const M={bottom:i+d.value.clientHeight>=d.value.scrollHeight,top:i<=0&&A!==0,right:u+d.value.clientWidth>=d.value.scrollWidth&&$!==u,left:u<=0&&$!==0};A!==i&&(l=i>A?"bottom":"top"),$!==u&&(l=u>$?"right":"left"),n("scroll",{scrollTop:i,scrollLeft:u}),M[l]&&n("end-reached",l)}};function _(k,A){isObject$1(k)?d.value.scrollTo(k):isNumber(k)&&isNumber(A)&&d.value.scrollTo(k,A)}const b=k=>{if(!isNumber(k)){debugWarn(COMPONENT_NAME$3,"value must be a number");return}d.value.scrollTop=k},g=k=>{if(!isNumber(k)){debugWarn(COMPONENT_NAME$3,"value must be a number");return}d.value.scrollLeft=k},w=()=>{var k;(k=c.value)==null||k.update()};return vue.watch(()=>r.noresize,k=>{k?(s==null||s(),o==null||o()):({stop:s}=useResizeObserver(f,w),o=useEventListener("resize",w))},{immediate:!0}),vue.watch(()=>[r.maxHeight,r.height],()=>{r.native||vue.nextTick(()=>{var k;w(),d.value&&((k=c.value)==null||k.handleScroll(d.value))})}),vue.provide(scrollbarContextKey,vue.reactive({scrollbarElement:v,wrapElement:d})),vue.onActivated(()=>{d.value&&(d.value.scrollTop=i,d.value.scrollLeft=u)}),vue.onMounted(()=>{r.native||vue.nextTick(()=>{w()})}),vue.onUpdated(()=>w()),t({wrapRef:d,update:w,scrollTo:_,setScrollTop:b,setScrollLeft:g,handleScroll:m}),(k,A)=>(vue.openBlock(),vue.createElementBlock("div",{ref_key:"scrollbarRef",ref:v,class:vue.normalizeClass(vue.unref(a).b())},[vue.createElementVNode("div",{ref_key:"wrapRef",ref:d,class:vue.normalizeClass(vue.unref(h)),style:vue.normalizeStyle(vue.unref(p)),tabindex:k.tabindex,onScroll:m},[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(k.tag),{id:k.id,ref_key:"resizeRef",ref:f,class:vue.normalizeClass(vue.unref(y)),style:vue.normalizeStyle(k.viewStyle),role:k.role,"aria-label":k.ariaLabel,"aria-orientation":k.ariaOrientation},{default:vue.withCtx(()=>[vue.renderSlot(k.$slots,"default")]),_:3},8,["id","class","style","role","aria-label","aria-orientation"]))],46,["tabindex"]),k.native?vue.createCommentVNode("v-if",!0):(vue.openBlock(),vue.createBlock(Bar,{key:0,ref_key:"barRef",ref:c,always:k.always,"min-size":k.minSize},null,8,["always","min-size"]))],2))}});var Scrollbar=_export_sfc(_sfc_main$O,[["__file","scrollbar.vue"]]);const ElScrollbar=withInstall(Scrollbar),POPPER_INJECTION_KEY=Symbol("popper"),POPPER_CONTENT_INJECTION_KEY=Symbol("popperContent"),roleTypes=["dialog","grid","group","listbox","menu","navigation","tooltip","tree"],popperProps=buildProps({role:{type:String,values:roleTypes,default:"tooltip"}}),__default__$h=vue.defineComponent({name:"ElPopper",inheritAttrs:!1}),_sfc_main$N=vue.defineComponent({...__default__$h,props:popperProps,setup(e,{expose:t}){const n=e,r=vue.ref(),a=vue.ref(),s=vue.ref(),o=vue.ref(),i=vue.computed(()=>n.role),u={triggerRef:r,popperInstanceRef:a,contentRef:s,referenceRef:o,role:i};return t(u),vue.provide(POPPER_INJECTION_KEY,u),(l,v)=>vue.renderSlot(l.$slots,"default")}});var Popper=_export_sfc(_sfc_main$N,[["__file","popper.vue"]]);const __default__$g=vue.defineComponent({name:"ElPopperArrow",inheritAttrs:!1}),_sfc_main$M=vue.defineComponent({...__default__$g,setup(e,{expose:t}){const n=useNamespace("popper"),{arrowRef:r,arrowStyle:a}=vue.inject(POPPER_CONTENT_INJECTION_KEY,void 0);return vue.onBeforeUnmount(()=>{r.value=void 0}),t({arrowRef:r}),(s,o)=>(vue.openBlock(),vue.createElementBlock("span",{ref_key:"arrowRef",ref:r,class:vue.normalizeClass(vue.unref(n).e("arrow")),style:vue.normalizeStyle(vue.unref(a)),"data-popper-arrow":""},null,6))}});var ElPopperArrow=_export_sfc(_sfc_main$M,[["__file","arrow.vue"]]);const popperTriggerProps=buildProps({virtualRef:{type:definePropType(Object)},virtualTriggering:Boolean,onMouseenter:{type:definePropType(Function)},onMouseleave:{type:definePropType(Function)},onClick:{type:definePropType(Function)},onKeydown:{type:definePropType(Function)},onFocus:{type:definePropType(Function)},onBlur:{type:definePropType(Function)},onContextmenu:{type:definePropType(Function)},id:String,open:Boolean}),FORWARD_REF_INJECTION_KEY=Symbol("elForwardRef"),useForwardRef=e=>{const t=n=>{e.value=n};vue.provide(FORWARD_REF_INJECTION_KEY,{setForwardRef:t})},useForwardRefDirective=e=>({mounted(t){e(t)},updated(t){e(t)},unmounted(){e(null)}}),NAME="ElOnlyChild",OnlyChild=vue.defineComponent({name:NAME,setup(e,{slots:t,attrs:n}){var r;const a=vue.inject(FORWARD_REF_INJECTION_KEY),s=useForwardRefDirective((r=a==null?void 0:a.setForwardRef)!=null?r:NOOP);return()=>{var o;const i=(o=t.default)==null?void 0:o.call(t,n);if(!i)return null;if(i.length>1)return debugWarn(NAME,"requires exact only one valid child."),null;const u=findFirstLegitChild(i);return u?vue.withDirectives(vue.cloneVNode(u,n),[[s]]):(debugWarn(NAME,"no valid child node found"),null)}}});function findFirstLegitChild(e){if(!e)return null;const t=e;for(const n of t){if(isObject$1(n))switch(n.type){case vue.Comment:continue;case vue.Text:case"svg":return wrapTextContent(n);case vue.Fragment:return findFirstLegitChild(n.children);default:return n}return wrapTextContent(n)}return null}function wrapTextContent(e){const t=useNamespace("only-child");return vue.createVNode("span",{class:t.e("content")},[e])}const __default__$f=vue.defineComponent({name:"ElPopperTrigger",inheritAttrs:!1}),_sfc_main$L=vue.defineComponent({...__default__$f,props:popperTriggerProps,setup(e,{expose:t}){const n=e,{role:r,triggerRef:a}=vue.inject(POPPER_INJECTION_KEY,void 0);useForwardRef(a);const s=vue.computed(()=>i.value?n.id:void 0),o=vue.computed(()=>{if(r&&r.value==="tooltip")return n.open&&n.id?n.id:void 0}),i=vue.computed(()=>{if(r&&r.value!=="tooltip")return r.value}),u=vue.computed(()=>i.value?`${n.open}`:void 0);let l;const v=["onMouseenter","onMouseleave","onClick","onKeydown","onFocus","onBlur","onContextmenu"];return vue.onMounted(()=>{vue.watch(()=>n.virtualRef,d=>{d&&(a.value=unrefElement(d))},{immediate:!0}),vue.watch(a,(d,f)=>{l==null||l(),l=void 0,isElement(d)&&(v.forEach(c=>{var p;const h=n[c];h&&(d.addEventListener(c.slice(2).toLowerCase(),h),(p=f==null?void 0:f.removeEventListener)==null||p.call(f,c.slice(2).toLowerCase(),h))}),isFocusable(d)&&(l=vue.watch([s,o,i,u],c=>{["aria-controls","aria-describedby","aria-haspopup","aria-expanded"].forEach((p,h)=>{isNil(c[h])?d.removeAttribute(p):d.setAttribute(p,c[h])})},{immediate:!0}))),isElement(f)&&isFocusable(f)&&["aria-controls","aria-describedby","aria-haspopup","aria-expanded"].forEach(c=>f.removeAttribute(c))},{immediate:!0})}),vue.onBeforeUnmount(()=>{if(l==null||l(),l=void 0,a.value&&isElement(a.value)){const d=a.value;v.forEach(f=>{const c=n[f];c&&d.removeEventListener(f.slice(2).toLowerCase(),c)}),a.value=void 0}}),t({triggerRef:a}),(d,f)=>d.virtualTriggering?vue.createCommentVNode("v-if",!0):(vue.openBlock(),vue.createBlock(vue.unref(OnlyChild),vue.mergeProps({key:0},d.$attrs,{"aria-controls":vue.unref(s),"aria-describedby":vue.unref(o),"aria-expanded":vue.unref(u),"aria-haspopup":vue.unref(i)}),{default:vue.withCtx(()=>[vue.renderSlot(d.$slots,"default")]),_:3},16,["aria-controls","aria-describedby","aria-expanded","aria-haspopup"]))}});var ElPopperTrigger=_export_sfc(_sfc_main$L,[["__file","trigger.vue"]]);const FOCUS_AFTER_TRAPPED="focus-trap.focus-after-trapped",FOCUS_AFTER_RELEASED="focus-trap.focus-after-released",FOCUSOUT_PREVENTED="focus-trap.focusout-prevented",FOCUS_AFTER_TRAPPED_OPTS={cancelable:!0,bubbles:!1},FOCUSOUT_PREVENTED_OPTS={cancelable:!0,bubbles:!1},ON_TRAP_FOCUS_EVT="focusAfterTrapped",ON_RELEASE_FOCUS_EVT="focusAfterReleased",FOCUS_TRAP_INJECTION_KEY=Symbol("elFocusTrap"),focusReason=vue.ref(),lastUserFocusTimestamp=vue.ref(0),lastAutomatedFocusTimestamp=vue.ref(0);let focusReasonUserCount=0;const obtainAllFocusableElements=e=>{const t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:r=>{const a=r.tagName==="INPUT"&&r.type==="hidden";return r.disabled||r.hidden||a?NodeFilter.FILTER_SKIP:r.tabIndex>=0||r===document.activeElement?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t},getVisibleElement=(e,t)=>{for(const n of e)if(!isHidden(n,t))return n},isHidden=(e,t)=>{if(process.env.NODE_ENV==="test")return!1;if(getComputedStyle(e).visibility==="hidden")return!0;for(;e;){if(t&&e===t)return!1;if(getComputedStyle(e).display==="none")return!0;e=e.parentElement}return!1},getEdges=e=>{const t=obtainAllFocusableElements(e),n=getVisibleElement(t,e),r=getVisibleElement(t.reverse(),e);return[n,r]},isSelectable=e=>e instanceof HTMLInputElement&&"select"in e,tryFocus=(e,t)=>{if(e&&e.focus){const n=document.activeElement;let r=!1;isElement(e)&&!isFocusable(e)&&!e.getAttribute("tabindex")&&(e.setAttribute("tabindex","-1"),r=!0),e.focus({preventScroll:!0}),lastAutomatedFocusTimestamp.value=window.performance.now(),e!==n&&isSelectable(e)&&t&&e.select(),isElement(e)&&r&&e.removeAttribute("tabindex")}};function removeFromStack(e,t){const n=[...e],r=e.indexOf(t);return r!==-1&&n.splice(r,1),n}const createFocusableStack=()=>{let e=[];return{push:r=>{const a=e[0];a&&r!==a&&a.pause(),e=removeFromStack(e,r),e.unshift(r)},remove:r=>{var a,s;e=removeFromStack(e,r),(s=(a=e[0])==null?void 0:a.resume)==null||s.call(a)}}},focusFirstDescendant=(e,t=!1)=>{const n=document.activeElement;for(const r of e)if(tryFocus(r,t),document.activeElement!==n)return},focusableStack=createFocusableStack(),isFocusCausedByUserEvent=()=>lastUserFocusTimestamp.value>lastAutomatedFocusTimestamp.value,notifyFocusReasonPointer=()=>{focusReason.value="pointer",lastUserFocusTimestamp.value=window.performance.now()},notifyFocusReasonKeydown=()=>{focusReason.value="keyboard",lastUserFocusTimestamp.value=window.performance.now()},useFocusReason=()=>(vue.onMounted(()=>{focusReasonUserCount===0&&(document.addEventListener("mousedown",notifyFocusReasonPointer),document.addEventListener("touchstart",notifyFocusReasonPointer),document.addEventListener("keydown",notifyFocusReasonKeydown)),focusReasonUserCount++}),vue.onBeforeUnmount(()=>{focusReasonUserCount--,focusReasonUserCount<=0&&(document.removeEventListener("mousedown",notifyFocusReasonPointer),document.removeEventListener("touchstart",notifyFocusReasonPointer),document.removeEventListener("keydown",notifyFocusReasonKeydown))}),{focusReason,lastUserFocusTimestamp,lastAutomatedFocusTimestamp}),createFocusOutPreventedEvent=e=>new CustomEvent(FOCUSOUT_PREVENTED,{...FOCUSOUT_PREVENTED_OPTS,detail:e}),EVENT_CODE={tab:"Tab",enter:"Enter",space:"Space",left:"ArrowLeft",up:"ArrowUp",right:"ArrowRight",down:"ArrowDown",esc:"Escape",delete:"Delete",numpadEnter:"NumpadEnter",pageUp:"PageUp",pageDown:"PageDown",home:"Home",end:"End"};let registeredEscapeHandlers=[];const cachedHandler=e=>{e.code===EVENT_CODE.esc&®isteredEscapeHandlers.forEach(t=>t(e))},useEscapeKeydown=e=>{vue.onMounted(()=>{registeredEscapeHandlers.length===0&&document.addEventListener("keydown",cachedHandler),isClient&®isteredEscapeHandlers.push(e)}),vue.onBeforeUnmount(()=>{registeredEscapeHandlers=registeredEscapeHandlers.filter(t=>t!==e),registeredEscapeHandlers.length===0&&isClient&&document.removeEventListener("keydown",cachedHandler)})},_sfc_main$K=vue.defineComponent({name:"ElFocusTrap",inheritAttrs:!1,props:{loop:Boolean,trapped:Boolean,focusTrapEl:Object,focusStartEl:{type:[Object,String],default:"first"}},emits:[ON_TRAP_FOCUS_EVT,ON_RELEASE_FOCUS_EVT,"focusin","focusout","focusout-prevented","release-requested"],setup(e,{emit:t}){const n=vue.ref();let r,a;const{focusReason:s}=useFocusReason();useEscapeKeydown(p=>{e.trapped&&!o.paused&&t("release-requested",p)});const o={paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}},i=p=>{if(!e.loop&&!e.trapped||o.paused)return;const{code:h,altKey:y,ctrlKey:m,metaKey:_,currentTarget:b,shiftKey:g}=p,{loop:w}=e,k=h===EVENT_CODE.tab&&!y&&!m&&!_,A=document.activeElement;if(k&&A){const $=b,[M,F]=getEdges($);if(M&&F){if(!g&&A===F){const D=createFocusOutPreventedEvent({focusReason:s.value});t("focusout-prevented",D),D.defaultPrevented||(p.preventDefault(),w&&tryFocus(M,!0))}else if(g&&[M,$].includes(A)){const D=createFocusOutPreventedEvent({focusReason:s.value});t("focusout-prevented",D),D.defaultPrevented||(p.preventDefault(),w&&tryFocus(F,!0))}}else if(A===$){const D=createFocusOutPreventedEvent({focusReason:s.value});t("focusout-prevented",D),D.defaultPrevented||p.preventDefault()}}};vue.provide(FOCUS_TRAP_INJECTION_KEY,{focusTrapRef:n,onKeydown:i}),vue.watch(()=>e.focusTrapEl,p=>{p&&(n.value=p)},{immediate:!0}),vue.watch([n],([p],[h])=>{p&&(p.addEventListener("keydown",i),p.addEventListener("focusin",v),p.addEventListener("focusout",d)),h&&(h.removeEventListener("keydown",i),h.removeEventListener("focusin",v),h.removeEventListener("focusout",d))});const u=p=>{t(ON_TRAP_FOCUS_EVT,p)},l=p=>t(ON_RELEASE_FOCUS_EVT,p),v=p=>{const h=vue.unref(n);if(!h)return;const y=p.target,m=p.relatedTarget,_=y&&h.contains(y);e.trapped||m&&h.contains(m)||(r=m),_&&t("focusin",p),!o.paused&&e.trapped&&(_?a=y:tryFocus(a,!0))},d=p=>{const h=vue.unref(n);if(!(o.paused||!h))if(e.trapped){const y=p.relatedTarget;!isNil(y)&&!h.contains(y)&&setTimeout(()=>{if(!o.paused&&e.trapped){const m=createFocusOutPreventedEvent({focusReason:s.value});t("focusout-prevented",m),m.defaultPrevented||tryFocus(a,!0)}},0)}else{const y=p.target;y&&h.contains(y)||t("focusout",p)}};async function f(){await vue.nextTick();const p=vue.unref(n);if(p){focusableStack.push(o);const h=p.contains(document.activeElement)?r:document.activeElement;if(r=h,!p.contains(h)){const m=new Event(FOCUS_AFTER_TRAPPED,FOCUS_AFTER_TRAPPED_OPTS);p.addEventListener(FOCUS_AFTER_TRAPPED,u),p.dispatchEvent(m),m.defaultPrevented||vue.nextTick(()=>{let _=e.focusStartEl;isString$1(_)||(tryFocus(_),document.activeElement!==_&&(_="first")),_==="first"&&focusFirstDescendant(obtainAllFocusableElements(p),!0),(document.activeElement===h||_==="container")&&tryFocus(p)})}}}function c(){const p=vue.unref(n);if(p){p.removeEventListener(FOCUS_AFTER_TRAPPED,u);const h=new CustomEvent(FOCUS_AFTER_RELEASED,{...FOCUS_AFTER_TRAPPED_OPTS,detail:{focusReason:s.value}});p.addEventListener(FOCUS_AFTER_RELEASED,l),p.dispatchEvent(h),!h.defaultPrevented&&(s.value=="keyboard"||!isFocusCausedByUserEvent()||p.contains(document.activeElement))&&tryFocus(r??document.body),p.removeEventListener(FOCUS_AFTER_RELEASED,l),focusableStack.remove(o)}}return vue.onMounted(()=>{e.trapped&&f(),vue.watch(()=>e.trapped,p=>{p?f():c()})}),vue.onBeforeUnmount(()=>{e.trapped&&c(),n.value&&(n.value.removeEventListener("keydown",i),n.value.removeEventListener("focusin",v),n.value.removeEventListener("focusout",d),n.value=void 0)}),{onKeydown:i}}});function _sfc_render$k(e,t,n,r,a,s){return vue.renderSlot(e.$slots,"default",{handleKeydown:e.onKeydown})}var ElFocusTrap=_export_sfc(_sfc_main$K,[["render",_sfc_render$k],["__file","focus-trap.vue"]]),E="top",R="bottom",W="right",P="left",me="auto",G=[E,R,W,P],U="start",J="end",Xe="clippingParents",je="viewport",K="popper",Ye="reference",De=G.reduce(function(e,t){return e.concat([t+"-"+U,t+"-"+J])},[]),Ee=[].concat(G,[me]).reduce(function(e,t){return e.concat([t,t+"-"+U,t+"-"+J])},[]),Ge="beforeRead",Je="read",Ke="afterRead",Qe="beforeMain",Ze="main",et="afterMain",tt="beforeWrite",nt="write",rt="afterWrite",ot=[Ge,Je,Ke,Qe,Ze,et,tt,nt,rt];function C(e){return e?(e.nodeName||"").toLowerCase():null}function H(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function Q(e){var t=H(e).Element;return e instanceof t||e instanceof Element}function B(e){var t=H(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function Pe(e){if(typeof ShadowRoot>"u")return!1;var t=H(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}function Mt(e){var t=e.state;Object.keys(t.elements).forEach(function(n){var r=t.styles[n]||{},a=t.attributes[n]||{},s=t.elements[n];!B(s)||!C(s)||(Object.assign(s.style,r),Object.keys(a).forEach(function(o){var i=a[o];i===!1?s.removeAttribute(o):s.setAttribute(o,i===!0?"":i)}))})}function Rt(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(r){var a=t.elements[r],s=t.attributes[r]||{},o=Object.keys(t.styles.hasOwnProperty(r)?t.styles[r]:n[r]),i=o.reduce(function(u,l){return u[l]="",u},{});!B(a)||!C(a)||(Object.assign(a.style,i),Object.keys(s).forEach(function(u){a.removeAttribute(u)}))})}}var Ae={name:"applyStyles",enabled:!0,phase:"write",fn:Mt,effect:Rt,requires:["computeStyles"]};function q(e){return e.split("-")[0]}var X=Math.max,ve=Math.min,Z=Math.round;function ee(e,t){t===void 0&&(t=!1);var n=e.getBoundingClientRect(),r=1,a=1;if(B(e)&&t){var s=e.offsetHeight,o=e.offsetWidth;o>0&&(r=Z(n.width)/o||1),s>0&&(a=Z(n.height)/s||1)}return{width:n.width/r,height:n.height/a,top:n.top/a,right:n.right/r,bottom:n.bottom/a,left:n.left/r,x:n.left/r,y:n.top/a}}function ke(e){var t=ee(e),n=e.offsetWidth,r=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-r)<=1&&(r=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:r}}function it(e,t){var n=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(n&&Pe(n)){var r=t;do{if(r&&e.isSameNode(r))return!0;r=r.parentNode||r.host}while(r)}return!1}function N(e){return H(e).getComputedStyle(e)}function Wt(e){return["table","td","th"].indexOf(C(e))>=0}function I(e){return((Q(e)?e.ownerDocument:e.document)||window.document).documentElement}function ge(e){return C(e)==="html"?e:e.assignedSlot||e.parentNode||(Pe(e)?e.host:null)||I(e)}function at(e){return!B(e)||N(e).position==="fixed"?null:e.offsetParent}function Bt(e){var t=navigator.userAgent.toLowerCase().indexOf("firefox")!==-1,n=navigator.userAgent.indexOf("Trident")!==-1;if(n&&B(e)){var r=N(e);if(r.position==="fixed")return null}var a=ge(e);for(Pe(a)&&(a=a.host);B(a)&&["html","body"].indexOf(C(a))<0;){var s=N(a);if(s.transform!=="none"||s.perspective!=="none"||s.contain==="paint"||["transform","perspective"].indexOf(s.willChange)!==-1||t&&s.willChange==="filter"||t&&s.filter&&s.filter!=="none")return a;a=a.parentNode}return null}function se(e){for(var t=H(e),n=at(e);n&&Wt(n)&&N(n).position==="static";)n=at(n);return n&&(C(n)==="html"||C(n)==="body"&&N(n).position==="static")?t:n||Bt(e)||t}function Le(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}function fe(e,t,n){return X(e,ve(t,n))}function St(e,t,n){var r=fe(e,t,n);return r>n?n:r}function st(){return{top:0,right:0,bottom:0,left:0}}function ft(e){return Object.assign({},st(),e)}function ct(e,t){return t.reduce(function(n,r){return n[r]=e,n},{})}var Tt=function(e,t){return e=typeof e=="function"?e(Object.assign({},t.rects,{placement:t.placement})):e,ft(typeof e!="number"?e:ct(e,G))};function Ht(e){var t,n=e.state,r=e.name,a=e.options,s=n.elements.arrow,o=n.modifiersData.popperOffsets,i=q(n.placement),u=Le(i),l=[P,W].indexOf(i)>=0,v=l?"height":"width";if(!(!s||!o)){var d=Tt(a.padding,n),f=ke(s),c=u==="y"?E:P,p=u==="y"?R:W,h=n.rects.reference[v]+n.rects.reference[u]-o[u]-n.rects.popper[v],y=o[u]-n.rects.reference[u],m=se(s),_=m?u==="y"?m.clientHeight||0:m.clientWidth||0:0,b=h/2-y/2,g=d[c],w=_-f[v]-d[p],k=_/2-f[v]/2+b,A=fe(g,k,w),$=u;n.modifiersData[r]=(t={},t[$]=A,t.centerOffset=A-k,t)}}function Ct(e){var t=e.state,n=e.options,r=n.element,a=r===void 0?"[data-popper-arrow]":r;a!=null&&(typeof a=="string"&&(a=t.elements.popper.querySelector(a),!a)||!it(t.elements.popper,a)||(t.elements.arrow=a))}var pt={name:"arrow",enabled:!0,phase:"main",fn:Ht,effect:Ct,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function te(e){return e.split("-")[1]}var qt={top:"auto",right:"auto",bottom:"auto",left:"auto"};function Vt(e){var t=e.x,n=e.y,r=window,a=r.devicePixelRatio||1;return{x:Z(t*a)/a||0,y:Z(n*a)/a||0}}function ut(e){var t,n=e.popper,r=e.popperRect,a=e.placement,s=e.variation,o=e.offsets,i=e.position,u=e.gpuAcceleration,l=e.adaptive,v=e.roundOffsets,d=e.isFixed,f=o.x,c=f===void 0?0:f,p=o.y,h=p===void 0?0:p,y=typeof v=="function"?v({x:c,y:h}):{x:c,y:h};c=y.x,h=y.y;var m=o.hasOwnProperty("x"),_=o.hasOwnProperty("y"),b=P,g=E,w=window;if(l){var k=se(n),A="clientHeight",$="clientWidth";if(k===H(n)&&(k=I(n),N(k).position!=="static"&&i==="absolute"&&(A="scrollHeight",$="scrollWidth")),k=k,a===E||(a===P||a===W)&&s===J){g=R;var M=d&&k===w&&w.visualViewport?w.visualViewport.height:k[A];h-=M-r.height,h*=u?1:-1}if(a===P||(a===E||a===R)&&s===J){b=W;var F=d&&k===w&&w.visualViewport?w.visualViewport.width:k[$];c-=F-r.width,c*=u?1:-1}}var O=Object.assign({position:i},l&&qt),D=v===!0?Vt({x:c,y:h}):{x:c,y:h};if(c=D.x,h=D.y,u){var j;return Object.assign({},O,(j={},j[g]=_?"0":"",j[b]=m?"0":"",j.transform=(w.devicePixelRatio||1)<=1?"translate("+c+"px, "+h+"px)":"translate3d("+c+"px, "+h+"px, 0)",j))}return Object.assign({},O,(t={},t[g]=_?h+"px":"",t[b]=m?c+"px":"",t.transform="",t))}function Nt(e){var t=e.state,n=e.options,r=n.gpuAcceleration,a=r===void 0?!0:r,s=n.adaptive,o=s===void 0?!0:s,i=n.roundOffsets,u=i===void 0?!0:i,l={placement:q(t.placement),variation:te(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:a,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,ut(Object.assign({},l,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:o,roundOffsets:u})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,ut(Object.assign({},l,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:u})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}var Me={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Nt,data:{}},ye={passive:!0};function It(e){var t=e.state,n=e.instance,r=e.options,a=r.scroll,s=a===void 0?!0:a,o=r.resize,i=o===void 0?!0:o,u=H(t.elements.popper),l=[].concat(t.scrollParents.reference,t.scrollParents.popper);return s&&l.forEach(function(v){v.addEventListener("scroll",n.update,ye)}),i&&u.addEventListener("resize",n.update,ye),function(){s&&l.forEach(function(v){v.removeEventListener("scroll",n.update,ye)}),i&&u.removeEventListener("resize",n.update,ye)}}var Re={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:It,data:{}},_t={left:"right",right:"left",bottom:"top",top:"bottom"};function be(e){return e.replace(/left|right|bottom|top/g,function(t){return _t[t]})}var zt={start:"end",end:"start"};function lt(e){return e.replace(/start|end/g,function(t){return zt[t]})}function We(e){var t=H(e),n=t.pageXOffset,r=t.pageYOffset;return{scrollLeft:n,scrollTop:r}}function Be(e){return ee(I(e)).left+We(e).scrollLeft}function Ft(e){var t=H(e),n=I(e),r=t.visualViewport,a=n.clientWidth,s=n.clientHeight,o=0,i=0;return r&&(a=r.width,s=r.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(o=r.offsetLeft,i=r.offsetTop)),{width:a,height:s,x:o+Be(e),y:i}}function Ut(e){var t,n=I(e),r=We(e),a=(t=e.ownerDocument)==null?void 0:t.body,s=X(n.scrollWidth,n.clientWidth,a?a.scrollWidth:0,a?a.clientWidth:0),o=X(n.scrollHeight,n.clientHeight,a?a.scrollHeight:0,a?a.clientHeight:0),i=-r.scrollLeft+Be(e),u=-r.scrollTop;return N(a||n).direction==="rtl"&&(i+=X(n.clientWidth,a?a.clientWidth:0)-s),{width:s,height:o,x:i,y:u}}function Se(e){var t=N(e),n=t.overflow,r=t.overflowX,a=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+a+r)}function dt(e){return["html","body","#document"].indexOf(C(e))>=0?e.ownerDocument.body:B(e)&&Se(e)?e:dt(ge(e))}function ce(e,t){var n;t===void 0&&(t=[]);var r=dt(e),a=r===((n=e.ownerDocument)==null?void 0:n.body),s=H(r),o=a?[s].concat(s.visualViewport||[],Se(r)?r:[]):r,i=t.concat(o);return a?i:i.concat(ce(ge(o)))}function Te(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function Xt(e){var t=ee(e);return t.top=t.top+e.clientTop,t.left=t.left+e.clientLeft,t.bottom=t.top+e.clientHeight,t.right=t.left+e.clientWidth,t.width=e.clientWidth,t.height=e.clientHeight,t.x=t.left,t.y=t.top,t}function ht(e,t){return t===je?Te(Ft(e)):Q(t)?Xt(t):Te(Ut(I(e)))}function Yt(e){var t=ce(ge(e)),n=["absolute","fixed"].indexOf(N(e).position)>=0,r=n&&B(e)?se(e):e;return Q(r)?t.filter(function(a){return Q(a)&&it(a,r)&&C(a)!=="body"}):[]}function Gt(e,t,n){var r=t==="clippingParents"?Yt(e):[].concat(t),a=[].concat(r,[n]),s=a[0],o=a.reduce(function(i,u){var l=ht(e,u);return i.top=X(l.top,i.top),i.right=ve(l.right,i.right),i.bottom=ve(l.bottom,i.bottom),i.left=X(l.left,i.left),i},ht(e,s));return o.width=o.right-o.left,o.height=o.bottom-o.top,o.x=o.left,o.y=o.top,o}function mt(e){var t=e.reference,n=e.element,r=e.placement,a=r?q(r):null,s=r?te(r):null,o=t.x+t.width/2-n.width/2,i=t.y+t.height/2-n.height/2,u;switch(a){case E:u={x:o,y:t.y-n.height};break;case R:u={x:o,y:t.y+t.height};break;case W:u={x:t.x+t.width,y:i};break;case P:u={x:t.x-n.width,y:i};break;default:u={x:t.x,y:t.y}}var l=a?Le(a):null;if(l!=null){var v=l==="y"?"height":"width";switch(s){case U:u[l]=u[l]-(t[v]/2-n[v]/2);break;case J:u[l]=u[l]+(t[v]/2-n[v]/2);break}}return u}function ne(e,t){t===void 0&&(t={});var n=t,r=n.placement,a=r===void 0?e.placement:r,s=n.boundary,o=s===void 0?Xe:s,i=n.rootBoundary,u=i===void 0?je:i,l=n.elementContext,v=l===void 0?K:l,d=n.altBoundary,f=d===void 0?!1:d,c=n.padding,p=c===void 0?0:c,h=ft(typeof p!="number"?p:ct(p,G)),y=v===K?Ye:K,m=e.rects.popper,_=e.elements[f?y:v],b=Gt(Q(_)?_:_.contextElement||I(e.elements.popper),o,u),g=ee(e.elements.reference),w=mt({reference:g,element:m,placement:a}),k=Te(Object.assign({},m,w)),A=v===K?k:g,$={top:b.top-A.top+h.top,bottom:A.bottom-b.bottom+h.bottom,left:b.left-A.left+h.left,right:A.right-b.right+h.right},M=e.modifiersData.offset;if(v===K&&M){var F=M[a];Object.keys($).forEach(function(O){var D=[W,R].indexOf(O)>=0?1:-1,j=[E,R].indexOf(O)>=0?"y":"x";$[O]+=F[j]*D})}return $}function Jt(e,t){t===void 0&&(t={});var n=t,r=n.placement,a=n.boundary,s=n.rootBoundary,o=n.padding,i=n.flipVariations,u=n.allowedAutoPlacements,l=u===void 0?Ee:u,v=te(r),d=v?i?De:De.filter(function(p){return te(p)===v}):G,f=d.filter(function(p){return l.indexOf(p)>=0});f.length===0&&(f=d);var c=f.reduce(function(p,h){return p[h]=ne(e,{placement:h,boundary:a,rootBoundary:s,padding:o})[q(h)],p},{});return Object.keys(c).sort(function(p,h){return c[p]-c[h]})}function Kt(e){if(q(e)===me)return[];var t=be(e);return[lt(e),t,lt(t)]}function Qt(e){var t=e.state,n=e.options,r=e.name;if(!t.modifiersData[r]._skip){for(var a=n.mainAxis,s=a===void 0?!0:a,o=n.altAxis,i=o===void 0?!0:o,u=n.fallbackPlacements,l=n.padding,v=n.boundary,d=n.rootBoundary,f=n.altBoundary,c=n.flipVariations,p=c===void 0?!0:c,h=n.allowedAutoPlacements,y=t.options.placement,m=q(y),_=m===y,b=u||(_||!p?[be(y)]:Kt(y)),g=[y].concat(b).reduce(function(Ce,$e){return Ce.concat(q($e)===me?Jt(t,{placement:$e,boundary:v,rootBoundary:d,padding:l,flipVariations:p,allowedAutoPlacements:h}):$e)},[]),w=t.rects.reference,k=t.rects.popper,A=new Map,$=!0,M=g[0],F=0;F<g.length;F++){var O=g[F],D=q(O),j=te(O)===U,z=[E,R].indexOf(D)>=0,T=z?"width":"height",L=ne(t,{placement:O,boundary:v,rootBoundary:d,altBoundary:f,padding:l}),ie=z?j?W:P:j?R:E;w[T]>k[T]&&(ie=be(ie));var x=be(ie),V=[];if(s&&V.push(L[D]<=0),i&&V.push(L[ie]<=0,L[x]<=0),V.every(function(Ce){return Ce})){M=O,$=!1;break}A.set(O,V)}if($)for(var le=p?3:1,Y=function(Ce){var $e=g.find(function(Ne){var Pt=A.get(Ne);if(Pt)return Pt.slice(0,Ce).every(function(_e){return _e})});if($e)return M=$e,"break"},re=le;re>0;re--){var he=Y(re);if(he==="break")break}t.placement!==M&&(t.modifiersData[r]._skip=!0,t.placement=M,t.reset=!0)}}var vt={name:"flip",enabled:!0,phase:"main",fn:Qt,requiresIfExists:["offset"],data:{_skip:!1}};function gt(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function yt(e){return[E,W,R,P].some(function(t){return e[t]>=0})}function Zt(e){var t=e.state,n=e.name,r=t.rects.reference,a=t.rects.popper,s=t.modifiersData.preventOverflow,o=ne(t,{elementContext:"reference"}),i=ne(t,{altBoundary:!0}),u=gt(o,r),l=gt(i,a,s),v=yt(u),d=yt(l);t.modifiersData[n]={referenceClippingOffsets:u,popperEscapeOffsets:l,isReferenceHidden:v,hasPopperEscaped:d},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":v,"data-popper-escaped":d})}var bt={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:Zt};function en(e,t,n){var r=q(e),a=[P,E].indexOf(r)>=0?-1:1,s=typeof n=="function"?n(Object.assign({},t,{placement:e})):n,o=s[0],i=s[1];return o=o||0,i=(i||0)*a,[P,W].indexOf(r)>=0?{x:i,y:o}:{x:o,y:i}}function tn(e){var t=e.state,n=e.options,r=e.name,a=n.offset,s=a===void 0?[0,0]:a,o=Ee.reduce(function(v,d){return v[d]=en(d,t.rects,s),v},{}),i=o[t.placement],u=i.x,l=i.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=u,t.modifiersData.popperOffsets.y+=l),t.modifiersData[r]=o}var wt={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:tn};function nn(e){var t=e.state,n=e.name;t.modifiersData[n]=mt({reference:t.rects.reference,element:t.rects.popper,placement:t.placement})}var He={name:"popperOffsets",enabled:!0,phase:"read",fn:nn,data:{}};function rn(e){return e==="x"?"y":"x"}function on(e){var t=e.state,n=e.options,r=e.name,a=n.mainAxis,s=a===void 0?!0:a,o=n.altAxis,i=o===void 0?!1:o,u=n.boundary,l=n.rootBoundary,v=n.altBoundary,d=n.padding,f=n.tether,c=f===void 0?!0:f,p=n.tetherOffset,h=p===void 0?0:p,y=ne(t,{boundary:u,rootBoundary:l,padding:d,altBoundary:v}),m=q(t.placement),_=te(t.placement),b=!_,g=Le(m),w=rn(g),k=t.modifiersData.popperOffsets,A=t.rects.reference,$=t.rects.popper,M=typeof h=="function"?h(Object.assign({},t.rects,{placement:t.placement})):h,F=typeof M=="number"?{mainAxis:M,altAxis:M}:Object.assign({mainAxis:0,altAxis:0},M),O=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,D={x:0,y:0};if(k){if(s){var j,z=g==="y"?E:P,T=g==="y"?R:W,L=g==="y"?"height":"width",ie=k[g],x=ie+y[z],V=ie-y[T],le=c?-$[L]/2:0,Y=_===U?A[L]:$[L],re=_===U?-$[L]:-A[L],he=t.elements.arrow,Ce=c&&he?ke(he):{width:0,height:0},$e=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:st(),Ne=$e[z],Pt=$e[T],_e=fe(0,A[L],Ce[L]),ze=b?A[L]/2-le-_e-Ne-F.mainAxis:Y-_e-Ne-F.mainAxis,Et=b?-A[L]/2+le+_e+Pt+F.mainAxis:re+_e+Pt+F.mainAxis,Cn=t.elements.arrow&&se(t.elements.arrow),kn=Cn?g==="y"?Cn.clientTop||0:Cn.clientLeft||0:0,In=(j=O==null?void 0:O[g])!=null?j:0,Dn=ie+ze-In-kn,Mn=ie+Et-In,Ue=fe(c?ve(x,Dn):x,ie,c?X(V,Mn):V);k[g]=Ue,D[g]=Ue-ie}if(i){var xe,Dt=g==="x"?E:P,kt=g==="x"?R:W,_n=k[w],Sn=w==="y"?"height":"width",Tn=_n+y[Dt],An=_n-y[kt],qe=[E,P].indexOf(m)!==-1,vn=(xe=O==null?void 0:O[w])!=null?xe:0,Nn=qe?Tn:_n-A[Sn]-$[Sn]-vn+F.altAxis,Pn=qe?_n+A[Sn]+$[Sn]-vn-F.altAxis:An,xn=c&&qe?St(Nn,_n,Pn):fe(c?Nn:Tn,_n,c?Pn:An);k[w]=xn,D[w]=xn-_n}t.modifiersData[r]=D}}var xt={name:"preventOverflow",enabled:!0,phase:"main",fn:on,requiresIfExists:["offset"]};function an(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}function sn(e){return e===H(e)||!B(e)?We(e):an(e)}function fn(e){var t=e.getBoundingClientRect(),n=Z(t.width)/e.offsetWidth||1,r=Z(t.height)/e.offsetHeight||1;return n!==1||r!==1}function cn(e,t,n){n===void 0&&(n=!1);var r=B(t),a=B(t)&&fn(t),s=I(t),o=ee(e,a),i={scrollLeft:0,scrollTop:0},u={x:0,y:0};return(r||!r&&!n)&&((C(t)!=="body"||Se(s))&&(i=sn(t)),B(t)?(u=ee(t,!0),u.x+=t.clientLeft,u.y+=t.clientTop):s&&(u.x=Be(s))),{x:o.left+i.scrollLeft-u.x,y:o.top+i.scrollTop-u.y,width:o.width,height:o.height}}function pn(e){var t=new Map,n=new Set,r=[];e.forEach(function(s){t.set(s.name,s)});function a(s){n.add(s.name);var o=[].concat(s.requires||[],s.requiresIfExists||[]);o.forEach(function(i){if(!n.has(i)){var u=t.get(i);u&&a(u)}}),r.push(s)}return e.forEach(function(s){n.has(s.name)||a(s)}),r}function un(e){var t=pn(e);return ot.reduce(function(n,r){return n.concat(t.filter(function(a){return a.phase===r}))},[])}function ln(e){var t;return function(){return t||(t=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})})),t}}function dn(e){var t=e.reduce(function(n,r){var a=n[r.name];return n[r.name]=a?Object.assign({},a,r,{options:Object.assign({},a.options,r.options),data:Object.assign({},a.data,r.data)}):r,n},{});return Object.keys(t).map(function(n){return t[n]})}var Ot={placement:"bottom",modifiers:[],strategy:"absolute"};function $t(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return!t.some(function(r){return!(r&&typeof r.getBoundingClientRect=="function")})}function we(e){e===void 0&&(e={});var t=e,n=t.defaultModifiers,r=n===void 0?[]:n,a=t.defaultOptions,s=a===void 0?Ot:a;return function(o,i,u){u===void 0&&(u=s);var l={placement:"bottom",orderedModifiers:[],options:Object.assign({},Ot,s),modifiersData:{},elements:{reference:o,popper:i},attributes:{},styles:{}},v=[],d=!1,f={state:l,setOptions:function(h){var y=typeof h=="function"?h(l.options):h;p(),l.options=Object.assign({},s,l.options,y),l.scrollParents={reference:Q(o)?ce(o):o.contextElement?ce(o.contextElement):[],popper:ce(i)};var m=un(dn([].concat(r,l.options.modifiers)));return l.orderedModifiers=m.filter(function(_){return _.enabled}),c(),f.update()},forceUpdate:function(){if(!d){var h=l.elements,y=h.reference,m=h.popper;if($t(y,m)){l.rects={reference:cn(y,se(m),l.options.strategy==="fixed"),popper:ke(m)},l.reset=!1,l.placement=l.options.placement,l.orderedModifiers.forEach(function($){return l.modifiersData[$.name]=Object.assign({},$.data)});for(var _=0;_<l.orderedModifiers.length;_++){if(l.reset===!0){l.reset=!1,_=-1;continue}var b=l.orderedModifiers[_],g=b.fn,w=b.options,k=w===void 0?{}:w,A=b.name;typeof g=="function"&&(l=g({state:l,options:k,name:A,instance:f})||l)}}}},update:ln(function(){return new Promise(function(h){f.forceUpdate(),h(l)})}),destroy:function(){p(),d=!0}};if(!$t(o,i))return f;f.setOptions(u).then(function(h){!d&&u.onFirstUpdate&&u.onFirstUpdate(h)});function c(){l.orderedModifiers.forEach(function(h){var y=h.name,m=h.options,_=m===void 0?{}:m,b=h.effect;if(typeof b=="function"){var g=b({state:l,name:y,instance:f,options:_}),w=function(){};v.push(g||w)}})}function p(){v.forEach(function(h){return h()}),v=[]}return f}}we();var mn=[Re,He,Me,Ae];we({defaultModifiers:mn});var gn=[Re,He,Me,Ae,wt,vt,xt,pt,bt],yn=we({defaultModifiers:gn});const popperArrowProps=buildProps({arrowOffset:{type:Number,default:5}}),POSITIONING_STRATEGIES=["fixed","absolute"],popperCoreConfigProps=buildProps({boundariesPadding:{type:Number,default:0},fallbackPlacements:{type:definePropType(Array),default:void 0},gpuAcceleration:{type:Boolean,default:!0},offset:{type:Number,default:12},placement:{type:String,values:Ee,default:"bottom"},popperOptions:{type:definePropType(Object),default:()=>({})},strategy:{type:String,values:POSITIONING_STRATEGIES,default:"absolute"}}),popperContentProps=buildProps({...popperCoreConfigProps,...popperArrowProps,id:String,style:{type:definePropType([String,Array,Object])},className:{type:definePropType([String,Array,Object])},effect:{type:definePropType(String),default:"dark"},visible:Boolean,enterable:{type:Boolean,default:!0},pure:Boolean,focusOnShow:{type:Boolean,default:!1},trapping:{type:Boolean,default:!1},popperClass:{type:definePropType([String,Array,Object])},popperStyle:{type:definePropType([String,Array,Object])},referenceEl:{type:definePropType(Object)},triggerTargetEl:{type:definePropType(Object)},stopPopperMouseEvent:{type:Boolean,default:!0},virtualTriggering:Boolean,zIndex:Number,...useAriaProps(["ariaLabel"])}),popperContentEmits={mouseenter:e=>e instanceof MouseEvent,mouseleave:e=>e instanceof MouseEvent,focus:()=>!0,blur:()=>!0,close:()=>!0},usePopperContentFocusTrap=(e,t)=>{const n=vue.ref(!1),r=vue.ref();return{focusStartRef:r,trapped:n,onFocusAfterReleased:l=>{var v;((v=l.detail)==null?void 0:v.focusReason)!=="pointer"&&(r.value="first",t("blur"))},onFocusAfterTrapped:()=>{t("focus")},onFocusInTrap:l=>{e.visible&&!n.value&&(l.target&&(r.value=l.target),n.value=!0)},onFocusoutPrevented:l=>{e.trapping||(l.detail.focusReason==="pointer"&&l.preventDefault(),n.value=!1)},onReleaseRequested:()=>{n.value=!1,t("close")}}},buildPopperOptions=(e,t=[])=>{const{placement:n,strategy:r,popperOptions:a}=e,s={placement:n,strategy:r,...a,modifiers:[...genModifiers(e),...t]};return deriveExtraModifiers(s,a==null?void 0:a.modifiers),s},unwrapMeasurableEl=e=>{if(isClient)return unrefElement(e)};function genModifiers(e){const{offset:t,gpuAcceleration:n,fallbackPlacements:r}=e;return[{name:"offset",options:{offset:[0,t??12]}},{name:"preventOverflow",options:{padding:{top:2,bottom:2,left:5,right:5}}},{name:"flip",options:{padding:5,fallbackPlacements:r}},{name:"computeStyles",options:{gpuAcceleration:n}}]}function deriveExtraModifiers(e,t){t&&(e.modifiers=[...e.modifiers,...t??[]])}const usePopper=(e,t,n={})=>{const r={name:"updateState",enabled:!0,phase:"write",fn:({state:u})=>{const l=deriveState(u);Object.assign(o.value,l)},requires:["computeStyles"]},a=vue.computed(()=>{const{onFirstUpdate:u,placement:l,strategy:v,modifiers:d}=vue.unref(n);return{onFirstUpdate:u,placement:l||"bottom",strategy:v||"absolute",modifiers:[...d||[],r,{name:"applyStyles",enabled:!1}]}}),s=vue.shallowRef(),o=vue.ref({styles:{popper:{position:vue.unref(a).strategy,left:"0",top:"0"},arrow:{position:"absolute"}},attributes:{}}),i=()=>{s.value&&(s.value.destroy(),s.value=void 0)};return vue.watch(a,u=>{const l=vue.unref(s);l&&l.setOptions(u)},{deep:!0}),vue.watch([e,t],([u,l])=>{i(),!(!u||!l)&&(s.value=yn(u,l,vue.unref(a)))}),vue.onBeforeUnmount(()=>{i()}),{state:vue.computed(()=>{var u;return{...((u=vue.unref(s))==null?void 0:u.state)||{}}}),styles:vue.computed(()=>vue.unref(o).styles),attributes:vue.computed(()=>vue.unref(o).attributes),update:()=>{var u;return(u=vue.unref(s))==null?void 0:u.update()},forceUpdate:()=>{var u;return(u=vue.unref(s))==null?void 0:u.forceUpdate()},instanceRef:vue.computed(()=>vue.unref(s))}};function deriveState(e){const t=Object.keys(e.elements),n=fromPairs(t.map(a=>[a,e.styles[a]||{}])),r=fromPairs(t.map(a=>[a,e.attributes[a]]));return{styles:n,attributes:r}}const DEFAULT_ARROW_OFFSET=0,usePopperContent=e=>{const{popperInstanceRef:t,contentRef:n,triggerRef:r,role:a}=vue.inject(POPPER_INJECTION_KEY,void 0),s=vue.ref(),o=vue.computed(()=>e.arrowOffset),i=vue.computed(()=>({name:"eventListeners",enabled:!!e.visible})),u=vue.computed(()=>{var m;const _=vue.unref(s),b=(m=vue.unref(o))!=null?m:DEFAULT_ARROW_OFFSET;return{name:"arrow",enabled:!isUndefined$1(_),options:{element:_,padding:b}}}),l=vue.computed(()=>({onFirstUpdate:()=>{p()},...buildPopperOptions(e,[vue.unref(u),vue.unref(i)])})),v=vue.computed(()=>unwrapMeasurableEl(e.referenceEl)||vue.unref(r)),{attributes:d,state:f,styles:c,update:p,forceUpdate:h,instanceRef:y}=usePopper(v,n,l);return vue.watch(y,m=>t.value=m,{flush:"sync"}),vue.onMounted(()=>{vue.watch(()=>{var m;return(m=vue.unref(v))==null?void 0:m.getBoundingClientRect()},()=>{p()})}),{attributes:d,arrowRef:s,contentRef:n,instanceRef:y,state:f,styles:c,role:a,forceUpdate:h,update:p}},usePopperContentDOM=(e,{attributes:t,styles:n,role:r})=>{const{nextZIndex:a}=useZIndex(),s=useNamespace("popper"),o=vue.computed(()=>vue.unref(t).popper),i=vue.ref(isNumber(e.zIndex)?e.zIndex:a()),u=vue.computed(()=>[s.b(),s.is("pure",e.pure),s.is(e.effect),e.popperClass]),l=vue.computed(()=>[{zIndex:vue.unref(i)},vue.unref(n).popper,e.popperStyle||{}]),v=vue.computed(()=>r.value==="dialog"?"false":void 0),d=vue.computed(()=>vue.unref(n).arrow||{});return{ariaModal:v,arrowStyle:d,contentAttrs:o,contentClass:u,contentStyle:l,contentZIndex:i,updateZIndex:()=>{i.value=isNumber(e.zIndex)?e.zIndex:a()}}},__default__$e=vue.defineComponent({name:"ElPopperContent"}),_sfc_main$J=vue.defineComponent({...__default__$e,props:popperContentProps,emits:popperContentEmits,setup(e,{expose:t,emit:n}){const r=e,{focusStartRef:a,trapped:s,onFocusAfterReleased:o,onFocusAfterTrapped:i,onFocusInTrap:u,onFocusoutPrevented:l,onReleaseRequested:v}=usePopperContentFocusTrap(r,n),{attributes:d,arrowRef:f,contentRef:c,styles:p,instanceRef:h,role:y,update:m}=usePopperContent(r),{ariaModal:_,arrowStyle:b,contentAttrs:g,contentClass:w,contentStyle:k,updateZIndex:A}=usePopperContentDOM(r,{styles:p,attributes:d,role:y}),$=vue.inject(formItemContextKey,void 0);vue.provide(POPPER_CONTENT_INJECTION_KEY,{arrowStyle:b,arrowRef:f}),$&&vue.provide(formItemContextKey,{...$,addInputId:NOOP,removeInputId:NOOP});let M;const F=(D=!0)=>{m(),D&&A()},O=()=>{F(!1),r.visible&&r.focusOnShow?s.value=!0:r.visible===!1&&(s.value=!1)};return vue.onMounted(()=>{vue.watch(()=>r.triggerTargetEl,(D,j)=>{M==null||M(),M=void 0;const z=vue.unref(D||c.value),T=vue.unref(j||c.value);isElement(z)&&(M=vue.watch([y,()=>r.ariaLabel,_,()=>r.id],L=>{["role","aria-label","aria-modal","id"].forEach((ie,x)=>{isNil(L[x])?z.removeAttribute(ie):z.setAttribute(ie,L[x])})},{immediate:!0})),T!==z&&isElement(T)&&["role","aria-label","aria-modal","id"].forEach(L=>{T.removeAttribute(L)})},{immediate:!0}),vue.watch(()=>r.visible,O,{immediate:!0})}),vue.onBeforeUnmount(()=>{M==null||M(),M=void 0}),t({popperContentRef:c,popperInstanceRef:h,updatePopper:F,contentStyle:k}),(D,j)=>(vue.openBlock(),vue.createElementBlock("div",vue.mergeProps({ref_key:"contentRef",ref:c},vue.unref(g),{style:vue.unref(k),class:vue.unref(w),tabindex:"-1",onMouseenter:z=>D.$emit("mouseenter",z),onMouseleave:z=>D.$emit("mouseleave",z)}),[vue.createVNode(vue.unref(ElFocusTrap),{trapped:vue.unref(s),"trap-on-focus-in":!0,"focus-trap-el":vue.unref(c),"focus-start-el":vue.unref(a),onFocusAfterTrapped:vue.unref(i),onFocusAfterReleased:vue.unref(o),onFocusin:vue.unref(u),onFocusoutPrevented:vue.unref(l),onReleaseRequested:vue.unref(v)},{default:vue.withCtx(()=>[vue.renderSlot(D.$slots,"default")]),_:3},8,["trapped","focus-trap-el","focus-start-el","onFocusAfterTrapped","onFocusAfterReleased","onFocusin","onFocusoutPrevented","onReleaseRequested"])],16,["onMouseenter","onMouseleave"]))}});var ElPopperContent=_export_sfc(_sfc_main$J,[["__file","content.vue"]]);const ElPopper=withInstall(Popper),TOOLTIP_INJECTION_KEY=Symbol("elTooltip"),teleportProps=buildProps({to:{type:definePropType([String,Object]),required:!0},disabled:Boolean}),useTooltipContentProps=buildProps({...useDelayedToggleProps,...popperContentProps,appendTo:{type:teleportProps.to.type},content:{type:String,default:""},rawContent:Boolean,persistent:Boolean,visible:{type:definePropType(Boolean),default:null},transition:String,teleported:{type:Boolean,default:!0},disabled:Boolean,...useAriaProps(["ariaLabel"])}),useTooltipTriggerProps=buildProps({...popperTriggerProps,disabled:Boolean,trigger:{type:definePropType([String,Array]),default:"hover"},triggerKeys:{type:definePropType(Array),default:()=>[EVENT_CODE.enter,EVENT_CODE.numpadEnter,EVENT_CODE.space]}}),_prop=buildProp({type:definePropType(Boolean),default:null}),_event=buildProp({type:definePropType(Function)}),createModelToggleComposable=e=>{const t=`update:${e}`,n=`onUpdate:${e}`,r=[t],a={[e]:_prop,[n]:_event};return{useModelToggle:({indicator:o,toggleReason:i,shouldHideWhenRouteChanges:u,shouldProceed:l,onShow:v,onHide:d})=>{const f=vue.getCurrentInstance(),{emit:c}=f,p=f.props,h=vue.computed(()=>isFunction$1(p[n])),y=vue.computed(()=>p[e]===null),m=A=>{o.value!==!0&&(o.value=!0,i&&(i.value=A),isFunction$1(v)&&v(A))},_=A=>{o.value!==!1&&(o.value=!1,i&&(i.value=A),isFunction$1(d)&&d(A))},b=A=>{if(p.disabled===!0||isFunction$1(l)&&!l())return;const $=h.value&&isClient;$&&c(t,!0),(y.value||!$)&&m(A)},g=A=>{if(p.disabled===!0||!isClient)return;const $=h.value&&isClient;$&&c(t,!1),(y.value||!$)&&_(A)},w=A=>{isBoolean(A)&&(p.disabled&&A?h.value&&c(t,!1):o.value!==A&&(A?m():_()))},k=()=>{o.value?g():b()};return vue.watch(()=>p[e],w),u&&f.appContext.config.globalProperties.$route!==void 0&&vue.watch(()=>({...f.proxy.$route}),()=>{u.value&&o.value&&g()}),vue.onMounted(()=>{w(p[e])}),{hide:g,show:b,toggle:k,hasUpdateHandler:h}},useModelToggleProps:a,useModelToggleEmits:r}},{useModelToggleProps:useTooltipModelToggleProps,useModelToggleEmits:useTooltipModelToggleEmits,useModelToggle:useTooltipModelToggle}=createModelToggleComposable("visible"),useTooltipProps=buildProps({...popperProps,...useTooltipModelToggleProps,...useTooltipContentProps,...useTooltipTriggerProps,...popperArrowProps,showArrow:{type:Boolean,default:!0}}),tooltipEmits=[...useTooltipModelToggleEmits,"before-show","before-hide","show","hide","open","close"],isTriggerType=(e,t)=>isArray$1(e)?e.includes(t):e===t,whenTrigger=(e,t,n)=>r=>{isTriggerType(vue.unref(e),t)&&n(r)},composeEventHandlers=(e,t,{checkForDefaultPrevented:n=!0}={})=>a=>{const s=e==null?void 0:e(a);if(n===!1||!s)return t==null?void 0:t(a)},__default__$d=vue.defineComponent({name:"ElTooltipTrigger"}),_sfc_main$I=vue.defineComponent({...__default__$d,props:useTooltipTriggerProps,setup(e,{expose:t}){const n=e,r=useNamespace("tooltip"),{controlled:a,id:s,open:o,onOpen:i,onClose:u,onToggle:l}=vue.inject(TOOLTIP_INJECTION_KEY,void 0),v=vue.ref(null),d=()=>{if(vue.unref(a)||n.disabled)return!0},f=vue.toRef(n,"trigger"),c=composeEventHandlers(d,whenTrigger(f,"hover",i)),p=composeEventHandlers(d,whenTrigger(f,"hover",u)),h=composeEventHandlers(d,whenTrigger(f,"click",g=>{g.button===0&&l(g)})),y=composeEventHandlers(d,whenTrigger(f,"focus",i)),m=composeEventHandlers(d,whenTrigger(f,"focus",u)),_=composeEventHandlers(d,whenTrigger(f,"contextmenu",g=>{g.preventDefault(),l(g)})),b=composeEventHandlers(d,g=>{const{code:w}=g;n.triggerKeys.includes(w)&&(g.preventDefault(),l(g))});return t({triggerRef:v}),(g,w)=>(vue.openBlock(),vue.createBlock(vue.unref(ElPopperTrigger),{id:vue.unref(s),"virtual-ref":g.virtualRef,open:vue.unref(o),"virtual-triggering":g.virtualTriggering,class:vue.normalizeClass(vue.unref(r).e("trigger")),onBlur:vue.unref(m),onClick:vue.unref(h),onContextmenu:vue.unref(_),onFocus:vue.unref(y),onMouseenter:vue.unref(c),onMouseleave:vue.unref(p),onKeydown:vue.unref(b)},{default:vue.withCtx(()=>[vue.renderSlot(g.$slots,"default")]),_:3},8,["id","virtual-ref","open","virtual-triggering","class","onBlur","onClick","onContextmenu","onFocus","onMouseenter","onMouseleave","onKeydown"]))}});var ElTooltipTrigger=_export_sfc(_sfc_main$I,[["__file","trigger.vue"]]);const _sfc_main$H=vue.defineComponent({__name:"teleport",props:teleportProps,setup(e){return(t,n)=>t.disabled?vue.renderSlot(t.$slots,"default",{key:0}):(vue.openBlock(),vue.createBlock(vue.Teleport,{key:1,to:t.to},[vue.renderSlot(t.$slots,"default")],8,["to"]))}});var Teleport=_export_sfc(_sfc_main$H,[["__file","teleport.vue"]]);const ElTeleport=withInstall(Teleport),usePopperContainerId=()=>{const e=useGetDerivedNamespace(),t=useIdInjection(),n=vue.computed(()=>`${e.value}-popper-container-${t.prefix}`),r=vue.computed(()=>`#${n.value}`);return{id:n,selector:r}},createContainer=e=>{const t=document.createElement("div");return t.id=e,document.body.appendChild(t),t},usePopperContainer=()=>{const{id:e,selector:t}=usePopperContainerId();return vue.onBeforeMount(()=>{isClient&&(process.env.NODE_ENV==="test"||!document.body.querySelector(t.value))&&createContainer(e.value)}),{id:e,selector:t}},__default__$c=vue.defineComponent({name:"ElTooltipContent",inheritAttrs:!1}),_sfc_main$G=vue.defineComponent({...__default__$c,props:useTooltipContentProps,setup(e,{expose:t}){const n=e,{selector:r}=usePopperContainerId(),a=useNamespace("tooltip"),s=vue.ref(),o=computedEager(()=>{var x;return(x=s.value)==null?void 0:x.popperContentRef});let i;const{controlled:u,id:l,open:v,trigger:d,onClose:f,onOpen:c,onShow:p,onHide:h,onBeforeShow:y,onBeforeHide:m}=vue.inject(TOOLTIP_INJECTION_KEY,void 0),_=vue.computed(()=>n.transition||`${a.namespace.value}-fade-in-linear`),b=vue.computed(()=>process.env.NODE_ENV==="test"&&!process.env.RUN_TEST_WITH_PERSISTENT?!0:n.persistent);vue.onBeforeUnmount(()=>{i==null||i()});const g=vue.computed(()=>vue.unref(b)?!0:vue.unref(v)),w=vue.computed(()=>n.disabled?!1:vue.unref(v)),k=vue.computed(()=>n.appendTo||r.value),A=vue.computed(()=>{var x;return(x=n.style)!=null?x:{}}),$=vue.ref(!0),M=()=>{h(),ie()&&tryFocus(document.body),$.value=!0},F=()=>{if(vue.unref(u))return!0},O=composeEventHandlers(F,()=>{n.enterable&&vue.unref(d)==="hover"&&c()}),D=composeEventHandlers(F,()=>{vue.unref(d)==="hover"&&f()}),j=()=>{var x,V;(V=(x=s.value)==null?void 0:x.updatePopper)==null||V.call(x),y==null||y()},z=()=>{m==null||m()},T=()=>{p()},L=()=>{n.virtualTriggering||f()},ie=x=>{var V;const le=(V=s.value)==null?void 0:V.popperContentRef,Y=(x==null?void 0:x.relatedTarget)||document.activeElement;return le==null?void 0:le.contains(Y)};return vue.watch(()=>vue.unref(v),x=>{x?($.value=!1,i=onClickOutside(o,()=>{if(vue.unref(u))return;vue.unref(d)!=="hover"&&f()})):i==null||i()},{flush:"post"}),vue.watch(()=>n.content,()=>{var x,V;(V=(x=s.value)==null?void 0:x.updatePopper)==null||V.call(x)}),t({contentRef:s,isFocusInsideContent:ie}),(x,V)=>(vue.openBlock(),vue.createBlock(vue.unref(ElTeleport),{disabled:!x.teleported,to:vue.unref(k)},{default:vue.withCtx(()=>[vue.createVNode(vue.Transition,{name:vue.unref(_),onAfterLeave:M,onBeforeEnter:j,onAfterEnter:T,onBeforeLeave:z},{default:vue.withCtx(()=>[vue.unref(g)?vue.withDirectives((vue.openBlock(),vue.createBlock(vue.unref(ElPopperContent),vue.mergeProps({key:0,id:vue.unref(l),ref_key:"contentRef",ref:s},x.$attrs,{"aria-label":x.ariaLabel,"aria-hidden":$.value,"boundaries-padding":x.boundariesPadding,"fallback-placements":x.fallbackPlacements,"gpu-acceleration":x.gpuAcceleration,offset:x.offset,placement:x.placement,"popper-options":x.popperOptions,"arrow-offset":x.arrowOffset,strategy:x.strategy,effect:x.effect,enterable:x.enterable,pure:x.pure,"popper-class":x.popperClass,"popper-style":[x.popperStyle,vue.unref(A)],"reference-el":x.referenceEl,"trigger-target-el":x.triggerTargetEl,visible:vue.unref(w),"z-index":x.zIndex,onMouseenter:vue.unref(O),onMouseleave:vue.unref(D),onBlur:L,onClose:vue.unref(f)}),{default:vue.withCtx(()=>[vue.renderSlot(x.$slots,"default")]),_:3},16,["id","aria-label","aria-hidden","boundaries-padding","fallback-placements","gpu-acceleration","offset","placement","popper-options","arrow-offset","strategy","effect","enterable","pure","popper-class","popper-style","reference-el","trigger-target-el","visible","z-index","onMouseenter","onMouseleave","onClose"])),[[vue.vShow,vue.unref(w)]]):vue.createCommentVNode("v-if",!0)]),_:3},8,["name"])]),_:3},8,["disabled","to"]))}});var ElTooltipContent=_export_sfc(_sfc_main$G,[["__file","content.vue"]]);const __default__$b=vue.defineComponent({name:"ElTooltip"}),_sfc_main$F=vue.defineComponent({...__default__$b,props:useTooltipProps,emits:tooltipEmits,setup(e,{expose:t,emit:n}){const r=e;usePopperContainer();const a=useNamespace("tooltip"),s=useId(),o=vue.ref(),i=vue.ref(),u=()=>{var b;const g=vue.unref(o);g&&((b=g.popperInstanceRef)==null||b.update())},l=vue.ref(!1),v=vue.ref(),{show:d,hide:f,hasUpdateHandler:c}=useTooltipModelToggle({indicator:l,toggleReason:v}),{onOpen:p,onClose:h}=useDelayedToggle({showAfter:vue.toRef(r,"showAfter"),hideAfter:vue.toRef(r,"hideAfter"),autoClose:vue.toRef(r,"autoClose"),open:d,close:f}),y=vue.computed(()=>isBoolean(r.visible)&&!c.value),m=vue.computed(()=>[a.b(),r.popperClass]);vue.provide(TOOLTIP_INJECTION_KEY,{controlled:y,id:s,open:vue.readonly(l),trigger:vue.toRef(r,"trigger"),onOpen:b=>{p(b)},onClose:b=>{h(b)},onToggle:b=>{vue.unref(l)?h(b):p(b)},onShow:()=>{n("show",v.value)},onHide:()=>{n("hide",v.value)},onBeforeShow:()=>{n("before-show",v.value)},onBeforeHide:()=>{n("before-hide",v.value)},updatePopper:u}),vue.watch(()=>r.disabled,b=>{b&&l.value&&(l.value=!1)});const _=b=>{var g;return(g=i.value)==null?void 0:g.isFocusInsideContent(b)};return vue.onDeactivated(()=>l.value&&f()),t({popperRef:o,contentRef:i,isFocusInsideContent:_,updatePopper:u,onOpen:p,onClose:h,hide:f}),(b,g)=>(vue.openBlock(),vue.createBlock(vue.unref(ElPopper),{ref_key:"popperRef",ref:o,role:b.role},{default:vue.withCtx(()=>[vue.createVNode(ElTooltipTrigger,{disabled:b.disabled,trigger:b.trigger,"trigger-keys":b.triggerKeys,"virtual-ref":b.virtualRef,"virtual-triggering":b.virtualTriggering},{default:vue.withCtx(()=>[b.$slots.default?vue.renderSlot(b.$slots,"default",{key:0}):vue.createCommentVNode("v-if",!0)]),_:3},8,["disabled","trigger","trigger-keys","virtual-ref","virtual-triggering"]),vue.createVNode(ElTooltipContent,{ref_key:"contentRef",ref:i,"aria-label":b.ariaLabel,"boundaries-padding":b.boundariesPadding,content:b.content,disabled:b.disabled,effect:b.effect,enterable:b.enterable,"fallback-placements":b.fallbackPlacements,"hide-after":b.hideAfter,"gpu-acceleration":b.gpuAcceleration,offset:b.offset,persistent:b.persistent,"popper-class":vue.unref(m),"popper-style":b.popperStyle,placement:b.placement,"popper-options":b.popperOptions,"arrow-offset":b.arrowOffset,pure:b.pure,"raw-content":b.rawContent,"reference-el":b.referenceEl,"trigger-target-el":b.triggerTargetEl,"show-after":b.showAfter,strategy:b.strategy,teleported:b.teleported,transition:b.transition,"virtual-triggering":b.virtualTriggering,"z-index":b.zIndex,"append-to":b.appendTo},{default:vue.withCtx(()=>[vue.renderSlot(b.$slots,"content",{},()=>[b.rawContent?(vue.openBlock(),vue.createElementBlock("span",{key:0,innerHTML:b.content},null,8,["innerHTML"])):(vue.openBlock(),vue.createElementBlock("span",{key:1},vue.toDisplayString(b.content),1))]),b.showArrow?(vue.openBlock(),vue.createBlock(vue.unref(ElPopperArrow),{key:0})):vue.createCommentVNode("v-if",!0)]),_:3},8,["aria-label","boundaries-padding","content","disabled","effect","enterable","fallback-placements","hide-after","gpu-acceleration","offset","persistent","popper-class","popper-style","placement","popper-options","arrow-offset","pure","raw-content","reference-el","trigger-target-el","show-after","strategy","teleported","transition","virtual-triggering","z-index","append-to"])]),_:3},8,["role"]))}});var Tooltip=_export_sfc(_sfc_main$F,[["__file","tooltip.vue"]]);const ElTooltip=withInstall(Tooltip),buttonGroupContextKey=Symbol("buttonGroupContextKey"),useDeprecated=({from:e,replacement:t,scope:n,version:r,ref:a,type:s="API"},o)=>{vue.watch(()=>vue.unref(o),i=>{i&&debugWarn(n,`[${s}] ${e} is about to be deprecated in version ${r}, please use ${t} instead.
|
|
20
|
+
})`);const n=useGetDerivedNamespace();return computedEager(()=>vue.unref(e)||`${n.value}-id-${t.prefix}-${t.current++}`)},formContextKey=Symbol("formContextKey"),formItemContextKey=Symbol("formItemContextKey"),useFormItem=()=>{const e=vue.inject(formContextKey,void 0),t=vue.inject(formItemContextKey,void 0);return{form:e,formItem:t}},useFormItemInputId=(e,{formItemContext:t,disableIdGeneration:n,disableIdManagement:r})=>{n||(n=vue.ref(!1)),r||(r=vue.ref(!1));const a=vue.ref();let s;const o=vue.computed(()=>{var i;return!!(!(e.label||e.ariaLabel)&&t&&t.inputIds&&((i=t.inputIds)==null?void 0:i.length)<=1)});return vue.onMounted(()=>{s=vue.watch([vue.toRef(e,"id"),n],([i,u])=>{const l=i??(u?void 0:useId().value);l!==a.value&&(t!=null&&t.removeInputId&&(a.value&&t.removeInputId(a.value),!(r!=null&&r.value)&&!u&&l&&t.addInputId(l)),a.value=l)},{immediate:!0})}),vue.onUnmounted(()=>{s&&s(),t!=null&&t.removeInputId&&a.value&&t.removeInputId(a.value)}),{isLabeledByFormItem:o,inputId:a}},useProp=e=>{const t=vue.getCurrentInstance();return vue.computed(()=>{var n,r;return(r=(n=t==null?void 0:t.proxy)==null?void 0:n.$props)==null?void 0:r[e]})},useFormSize=(e,t={})=>{const n=vue.ref(void 0),r=t.prop?n:useProp("size"),a=t.global?n:useGlobalSize(),s=t.form?{size:void 0}:vue.inject(formContextKey,void 0),o=t.formItem?{size:void 0}:vue.inject(formItemContextKey,void 0);return vue.computed(()=>r.value||vue.unref(e)||(o==null?void 0:o.size)||(s==null?void 0:s.size)||a.value||"")},useFormDisabled=e=>{const t=useProp("disabled"),n=vue.inject(formContextKey,void 0);return vue.computed(()=>t.value||vue.unref(e)||(n==null?void 0:n.disabled)||!1)},isFocusable=e=>{if(e.tabIndex>0||e.tabIndex===0&&e.getAttribute("tabIndex")!==null)return!0;if(e.tabIndex<0||e.hasAttribute("disabled")||e.getAttribute("aria-disabled")==="true")return!1;switch(e.nodeName){case"A":return!!e.href&&e.rel!=="ignore";case"INPUT":return!(e.type==="hidden"||e.type==="file");case"BUTTON":case"SELECT":case"TEXTAREA":return!0;default:return!1}};function useFocusController(e,{beforeFocus:t,afterFocus:n,beforeBlur:r,afterBlur:a}={}){const s=vue.getCurrentInstance(),{emit:o}=s,i=vue.shallowRef(),u=useFormDisabled(),l=vue.ref(!1),v=c=>{isFunction$1(t)&&t(c)||l.value||(l.value=!0,o("focus",c),n==null||n())},d=c=>{var p;isFunction$1(r)&&r(c)||c.relatedTarget&&((p=i.value)!=null&&p.contains(c.relatedTarget))||(l.value=!1,o("blur",c),a==null||a())},f=c=>{var p,h;(p=i.value)!=null&&p.contains(document.activeElement)&&i.value!==document.activeElement||isFocusable(c.target)||u.value||(h=e.value)==null||h.focus()};return vue.watch([i,u],([c,p])=>{c&&(p?c.removeAttribute("tabindex"):c.setAttribute("tabindex","-1"))}),useEventListener(i,"focus",v,!0),useEventListener(i,"blur",d,!0),useEventListener(i,"click",f,!0),process.env.NODE_ENV==="test"&&vue.onMounted(()=>{const c=isElement(e.value)?e.value:document.querySelector("input,textarea");c&&(useEventListener(c,"focus",v,!0),useEventListener(c,"blur",d,!0))}),{isFocused:l,wrapperRef:i,handleFocus:v,handleBlur:d}}const isKorean=e=>/([\uAC00-\uD7AF\u3130-\u318F])+/gi.test(e);function useComposition({afterComposition:e,emit:t}){const n=vue.ref(!1),r=i=>{t==null||t("compositionstart",i),n.value=!0},a=i=>{var u;t==null||t("compositionupdate",i);const l=(u=i.target)==null?void 0:u.value,v=l[l.length-1]||"";n.value=!isKorean(v)},s=i=>{t==null||t("compositionend",i),n.value&&(n.value=!1,vue.nextTick(()=>e(i)))};return{isComposing:n,handleComposition:i=>{i.type==="compositionend"?s(i):a(i)},handleCompositionStart:r,handleCompositionUpdate:a,handleCompositionEnd:s}}function useCursor(e){let t;function n(){if(e.value==null)return;const{selectionStart:a,selectionEnd:s,value:o}=e.value;if(a==null||s==null)return;const i=o.slice(0,Math.max(0,a)),u=o.slice(Math.max(0,s));t={selectionStart:a,selectionEnd:s,value:o,beforeTxt:i,afterTxt:u}}function r(){if(e.value==null||t==null)return;const{value:a}=e.value,{beforeTxt:s,afterTxt:o,selectionStart:i}=t;if(s==null||o==null||i==null)return;let u=a.length;if(a.endsWith(o))u=a.length-o.length;else if(a.startsWith(s))u=s.length;else{const l=s[i-1],v=a.indexOf(l,i-1);v!==-1&&(u=v+1)}e.value.setSelectionRange(u,u)}return[n,r]}const COMPONENT_NAME$5="ElInput",__default__$j=vue.defineComponent({name:COMPONENT_NAME$5,inheritAttrs:!1}),_sfc_main$R=vue.defineComponent({...__default__$j,props:inputProps,emits:inputEmits,setup(e,{expose:t,emit:n}){const r=e,a=vue.useAttrs(),s=useAttrs(),o=vue.useSlots(),i=vue.computed(()=>[r.type==="textarea"?h.b():p.b(),p.m(f.value),p.is("disabled",c.value),p.is("exceed",Y.value),{[p.b("group")]:o.prepend||o.append,[p.m("prefix")]:o.prefix||r.prefixIcon,[p.m("suffix")]:o.suffix||r.suffixIcon||r.clearable||r.showPassword,[p.bm("suffix","password-clear")]:x.value&&V.value,[p.b("hidden")]:r.type==="hidden"},a.class]),u=vue.computed(()=>[p.e("wrapper"),p.is("focus",$.value)]),{form:l,formItem:v}=useFormItem(),{inputId:d}=useFormItemInputId(r,{formItemContext:v}),f=useFormSize(),c=useFormDisabled(),p=useNamespace("input"),h=useNamespace("textarea"),y=vue.shallowRef(),m=vue.shallowRef(),_=vue.ref(!1),b=vue.ref(!1),g=vue.ref(),w=vue.shallowRef(r.inputStyle),k=vue.computed(()=>y.value||m.value),{wrapperRef:A,isFocused:$,handleFocus:M,handleBlur:F}=useFocusController(k,{beforeFocus(){return c.value},afterBlur(){var qe;r.validateEvent&&((qe=v==null?void 0:v.validate)==null||qe.call(v,"blur").catch(hn=>debugWarn(hn)))}}),O=vue.computed(()=>{var qe;return(qe=l==null?void 0:l.statusIcon)!=null?qe:!1}),D=vue.computed(()=>(v==null?void 0:v.validateState)||""),j=vue.computed(()=>D.value&&ValidateComponentsMap[D.value]),z=vue.computed(()=>b.value?view_default:hide_default),T=vue.computed(()=>[a.style]),L=vue.computed(()=>[r.inputStyle,w.value,{resize:r.resize}]),ie=vue.computed(()=>isNil(r.modelValue)?"":String(r.modelValue)),x=vue.computed(()=>r.clearable&&!c.value&&!r.readonly&&!!ie.value&&($.value||_.value)),V=vue.computed(()=>r.showPassword&&!c.value&&!!ie.value),le=vue.computed(()=>r.showWordLimit&&!!r.maxlength&&(r.type==="text"||r.type==="textarea")&&!c.value&&!r.readonly&&!r.showPassword),re=vue.computed(()=>ie.value.length),Y=vue.computed(()=>!!le.value&&re.value>Number(r.maxlength)),he=vue.computed(()=>!!o.suffix||!!r.suffixIcon||x.value||r.showPassword||le.value||!!D.value&&O.value),[_e,$e]=useCursor(y);useResizeObserver(m,qe=>{if(Pt(),!le.value||r.resize!=="both")return;const hn=qe[0],{width:An}=hn.contentRect;g.value={right:`calc(100% - ${An+15+6}px)`}});const Ne=()=>{const{type:qe,autosize:hn}=r;if(!(!isClient||qe!=="textarea"||!m.value))if(hn){const An=isObject$1(hn)?hn.minRows:void 0,Nn=isObject$1(hn)?hn.maxRows:void 0,xn=calcTextareaHeight(m.value,An,Nn);w.value={overflowY:"hidden",...xn},vue.nextTick(()=>{m.value.offsetHeight,w.value=xn})}else w.value={minHeight:calcTextareaHeight(m.value).minHeight}},Pt=(qe=>{let hn=!1;return()=>{var An;if(hn||!r.autosize)return;((An=m.value)==null?void 0:An.offsetParent)===null||(qe(),hn=!0)}})(Ne),Oe=()=>{const qe=k.value,hn=r.formatter?r.formatter(ie.value):ie.value;!qe||qe.value===hn||(qe.value=hn)},ze=async qe=>{_e();let{value:hn}=qe.target;if(r.formatter&&r.parser&&(hn=r.parser(hn)),!En.value){if(hn===ie.value){Oe();return}n(UPDATE_MODEL_EVENT,hn),n(INPUT_EVENT,hn),await vue.nextTick(),Oe(),$e()}},At=qe=>{let{value:hn}=qe.target;r.formatter&&r.parser&&(hn=r.parser(hn)),n(CHANGE_EVENT,hn)},{isComposing:En,handleCompositionStart:Pn,handleCompositionUpdate:Dn,handleCompositionEnd:Mn}=useComposition({emit:n,afterComposition:ze}),Ue=()=>{_e(),b.value=!b.value,setTimeout($e)},xe=()=>{var qe;return(qe=k.value)==null?void 0:qe.focus()},Lt=()=>{var qe;return(qe=k.value)==null?void 0:qe.blur()},Et=qe=>{_.value=!1,n("mouseleave",qe)},wn=qe=>{_.value=!0,n("mouseenter",qe)},Tn=qe=>{n("keydown",qe)},kn=()=>{var qe;(qe=k.value)==null||qe.select()},In=()=>{n(UPDATE_MODEL_EVENT,""),n(CHANGE_EVENT,""),n("clear"),n(INPUT_EVENT,"")};return vue.watch(()=>r.modelValue,()=>{var qe;vue.nextTick(()=>Ne()),r.validateEvent&&((qe=v==null?void 0:v.validate)==null||qe.call(v,"change").catch(hn=>debugWarn(hn)))}),vue.watch(ie,()=>Oe()),vue.watch(()=>r.type,async()=>{await vue.nextTick(),Oe(),Ne()}),vue.onMounted(()=>{!r.formatter&&r.parser&&debugWarn(COMPONENT_NAME$5,"If you set the parser, you also need to set the formatter."),Oe(),vue.nextTick(Ne)}),t({input:y,textarea:m,ref:k,textareaStyle:L,autosize:vue.toRef(r,"autosize"),isComposing:En,focus:xe,blur:Lt,select:kn,clear:In,resizeTextarea:Ne}),(qe,hn)=>(vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass([vue.unref(i),{[vue.unref(p).bm("group","append")]:qe.$slots.append,[vue.unref(p).bm("group","prepend")]:qe.$slots.prepend}]),style:vue.normalizeStyle(vue.unref(T)),onMouseenter:wn,onMouseleave:Et},[vue.createCommentVNode(" input "),qe.type!=="textarea"?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.createCommentVNode(" prepend slot "),qe.$slots.prepend?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:vue.normalizeClass(vue.unref(p).be("group","prepend"))},[vue.renderSlot(qe.$slots,"prepend")],2)):vue.createCommentVNode("v-if",!0),vue.createElementVNode("div",{ref_key:"wrapperRef",ref:A,class:vue.normalizeClass(vue.unref(u))},[vue.createCommentVNode(" prefix slot "),qe.$slots.prefix||qe.prefixIcon?(vue.openBlock(),vue.createElementBlock("span",{key:0,class:vue.normalizeClass(vue.unref(p).e("prefix"))},[vue.createElementVNode("span",{class:vue.normalizeClass(vue.unref(p).e("prefix-inner"))},[vue.renderSlot(qe.$slots,"prefix"),qe.prefixIcon?(vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{key:0,class:vue.normalizeClass(vue.unref(p).e("icon"))},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(qe.prefixIcon)))]),_:1},8,["class"])):vue.createCommentVNode("v-if",!0)],2)],2)):vue.createCommentVNode("v-if",!0),vue.createElementVNode("input",vue.mergeProps({id:vue.unref(d),ref_key:"input",ref:y,class:vue.unref(p).e("inner")},vue.unref(s),{minlength:qe.minlength,maxlength:qe.maxlength,type:qe.showPassword?b.value?"text":"password":qe.type,disabled:vue.unref(c),readonly:qe.readonly,autocomplete:qe.autocomplete,tabindex:qe.tabindex,"aria-label":qe.ariaLabel,placeholder:qe.placeholder,style:qe.inputStyle,form:qe.form,autofocus:qe.autofocus,role:qe.containerRole,onCompositionstart:vue.unref(Pn),onCompositionupdate:vue.unref(Dn),onCompositionend:vue.unref(Mn),onInput:ze,onChange:At,onKeydown:Tn}),null,16,["id","minlength","maxlength","type","disabled","readonly","autocomplete","tabindex","aria-label","placeholder","form","autofocus","role","onCompositionstart","onCompositionupdate","onCompositionend"]),vue.createCommentVNode(" suffix slot "),vue.unref(he)?(vue.openBlock(),vue.createElementBlock("span",{key:1,class:vue.normalizeClass(vue.unref(p).e("suffix"))},[vue.createElementVNode("span",{class:vue.normalizeClass(vue.unref(p).e("suffix-inner"))},[!vue.unref(x)||!vue.unref(V)||!vue.unref(le)?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.renderSlot(qe.$slots,"suffix"),qe.suffixIcon?(vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{key:0,class:vue.normalizeClass(vue.unref(p).e("icon"))},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(qe.suffixIcon)))]),_:1},8,["class"])):vue.createCommentVNode("v-if",!0)],64)):vue.createCommentVNode("v-if",!0),vue.unref(x)?(vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{key:1,class:vue.normalizeClass([vue.unref(p).e("icon"),vue.unref(p).e("clear")]),onMousedown:vue.withModifiers(vue.unref(NOOP),["prevent"]),onClick:In},{default:vue.withCtx(()=>[vue.createVNode(vue.unref(circle_close_default))]),_:1},8,["class","onMousedown"])):vue.createCommentVNode("v-if",!0),vue.unref(V)?(vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{key:2,class:vue.normalizeClass([vue.unref(p).e("icon"),vue.unref(p).e("password")]),onClick:Ue},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(vue.unref(z))))]),_:1},8,["class"])):vue.createCommentVNode("v-if",!0),vue.unref(le)?(vue.openBlock(),vue.createElementBlock("span",{key:3,class:vue.normalizeClass(vue.unref(p).e("count"))},[vue.createElementVNode("span",{class:vue.normalizeClass(vue.unref(p).e("count-inner"))},vue.toDisplayString(vue.unref(re))+" / "+vue.toDisplayString(qe.maxlength),3)],2)):vue.createCommentVNode("v-if",!0),vue.unref(D)&&vue.unref(j)&&vue.unref(O)?(vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{key:4,class:vue.normalizeClass([vue.unref(p).e("icon"),vue.unref(p).e("validateIcon"),vue.unref(p).is("loading",vue.unref(D)==="validating")])},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(vue.unref(j))))]),_:1},8,["class"])):vue.createCommentVNode("v-if",!0)],2)],2)):vue.createCommentVNode("v-if",!0)],2),vue.createCommentVNode(" append slot "),qe.$slots.append?(vue.openBlock(),vue.createElementBlock("div",{key:1,class:vue.normalizeClass(vue.unref(p).be("group","append"))},[vue.renderSlot(qe.$slots,"append")],2)):vue.createCommentVNode("v-if",!0)],64)):(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:1},[vue.createCommentVNode(" textarea "),vue.createElementVNode("textarea",vue.mergeProps({id:vue.unref(d),ref_key:"textarea",ref:m,class:[vue.unref(h).e("inner"),vue.unref(p).is("focus",vue.unref($))]},vue.unref(s),{minlength:qe.minlength,maxlength:qe.maxlength,tabindex:qe.tabindex,disabled:vue.unref(c),readonly:qe.readonly,autocomplete:qe.autocomplete,style:vue.unref(L),"aria-label":qe.ariaLabel,placeholder:qe.placeholder,form:qe.form,autofocus:qe.autofocus,rows:qe.rows,role:qe.containerRole,onCompositionstart:vue.unref(Pn),onCompositionupdate:vue.unref(Dn),onCompositionend:vue.unref(Mn),onInput:ze,onFocus:vue.unref(M),onBlur:vue.unref(F),onChange:At,onKeydown:Tn}),null,16,["id","minlength","maxlength","tabindex","disabled","readonly","autocomplete","aria-label","placeholder","form","autofocus","rows","role","onCompositionstart","onCompositionupdate","onCompositionend","onFocus","onBlur"]),vue.unref(le)?(vue.openBlock(),vue.createElementBlock("span",{key:0,style:vue.normalizeStyle(g.value),class:vue.normalizeClass(vue.unref(p).e("count"))},vue.toDisplayString(vue.unref(re))+" / "+vue.toDisplayString(qe.maxlength),7)):vue.createCommentVNode("v-if",!0)],64))],38))}});var Input=_export_sfc(_sfc_main$R,[["__file","input.vue"]]);const ElInput=withInstall(Input),GAP=4,BAR_MAP={vertical:{offset:"offsetHeight",scroll:"scrollTop",scrollSize:"scrollHeight",size:"height",key:"vertical",axis:"Y",client:"clientY",direction:"top"},horizontal:{offset:"offsetWidth",scroll:"scrollLeft",scrollSize:"scrollWidth",size:"width",key:"horizontal",axis:"X",client:"clientX",direction:"left"}},renderThumbStyle=({move:e,size:t,bar:n})=>({[n.size]:t,transform:`translate${n.axis}(${e}%)`}),scrollbarContextKey=Symbol("scrollbarContextKey"),thumbProps=buildProps({vertical:Boolean,size:String,move:Number,ratio:{type:Number,required:!0},always:Boolean}),COMPONENT_NAME$4="Thumb",_sfc_main$Q=vue.defineComponent({__name:"thumb",props:thumbProps,setup(e){const t=e,n=vue.inject(scrollbarContextKey),r=useNamespace("scrollbar");n||throwError(COMPONENT_NAME$4,"can not inject scrollbar context");const a=vue.ref(),s=vue.ref(),o=vue.ref({}),i=vue.ref(!1);let u=!1,l=!1,v=0,d=0,f=isClient?document.onselectstart:null;const c=vue.computed(()=>BAR_MAP[t.vertical?"vertical":"horizontal"]),p=vue.computed(()=>renderThumbStyle({size:t.size,move:t.move,bar:c.value})),h=vue.computed(()=>a.value[c.value.offset]**2/n.wrapElement[c.value.scrollSize]/t.ratio/s.value[c.value.offset]),y=$=>{var M;if($.stopPropagation(),$.ctrlKey||[1,2].includes($.button))return;(M=window.getSelection())==null||M.removeAllRanges(),_($);const F=$.currentTarget;F&&(o.value[c.value.axis]=F[c.value.offset]-($[c.value.client]-F.getBoundingClientRect()[c.value.direction]))},m=$=>{if(!s.value||!a.value||!n.wrapElement)return;const M=Math.abs($.target.getBoundingClientRect()[c.value.direction]-$[c.value.client]),F=s.value[c.value.offset]/2,O=(M-F)*100*h.value/a.value[c.value.offset];n.wrapElement[c.value.scroll]=O*n.wrapElement[c.value.scrollSize]/100},_=$=>{$.stopImmediatePropagation(),u=!0,v=n.wrapElement.scrollHeight,d=n.wrapElement.scrollWidth,document.addEventListener("mousemove",b),document.addEventListener("mouseup",g),f=document.onselectstart,document.onselectstart=()=>!1},b=$=>{if(!a.value||!s.value||u===!1)return;const M=o.value[c.value.axis];if(!M)return;const F=(a.value.getBoundingClientRect()[c.value.direction]-$[c.value.client])*-1,O=s.value[c.value.offset]-M,D=(F-O)*100*h.value/a.value[c.value.offset];c.value.scroll==="scrollLeft"?n.wrapElement[c.value.scroll]=D*d/100:n.wrapElement[c.value.scroll]=D*v/100},g=()=>{u=!1,o.value[c.value.axis]=0,document.removeEventListener("mousemove",b),document.removeEventListener("mouseup",g),A(),l&&(i.value=!1)},w=()=>{l=!1,i.value=!!t.size},k=()=>{l=!0,i.value=u};vue.onBeforeUnmount(()=>{A(),document.removeEventListener("mouseup",g)});const A=()=>{document.onselectstart!==f&&(document.onselectstart=f)};return useEventListener(vue.toRef(n,"scrollbarElement"),"mousemove",w),useEventListener(vue.toRef(n,"scrollbarElement"),"mouseleave",k),($,M)=>(vue.openBlock(),vue.createBlock(vue.Transition,{name:vue.unref(r).b("fade"),persisted:""},{default:vue.withCtx(()=>[vue.withDirectives(vue.createElementVNode("div",{ref_key:"instance",ref:a,class:vue.normalizeClass([vue.unref(r).e("bar"),vue.unref(r).is(vue.unref(c).key)]),onMousedown:m,onClick:vue.withModifiers(()=>{},["stop"])},[vue.createElementVNode("div",{ref_key:"thumb",ref:s,class:vue.normalizeClass(vue.unref(r).e("thumb")),style:vue.normalizeStyle(vue.unref(p)),onMousedown:y},null,38)],42,["onClick"]),[[vue.vShow,$.always||i.value]])]),_:1},8,["name"]))}});var Thumb=_export_sfc(_sfc_main$Q,[["__file","thumb.vue"]]);const barProps=buildProps({always:{type:Boolean,default:!0},minSize:{type:Number,required:!0}}),_sfc_main$P=vue.defineComponent({__name:"bar",props:barProps,setup(e,{expose:t}){const n=e,r=vue.inject(scrollbarContextKey),a=vue.ref(0),s=vue.ref(0),o=vue.ref(""),i=vue.ref(""),u=vue.ref(1),l=vue.ref(1);return t({handleScroll:f=>{if(f){const c=f.offsetHeight-GAP,p=f.offsetWidth-GAP;s.value=f.scrollTop*100/c*u.value,a.value=f.scrollLeft*100/p*l.value}},update:()=>{const f=r==null?void 0:r.wrapElement;if(!f)return;const c=f.offsetHeight-GAP,p=f.offsetWidth-GAP,h=c**2/f.scrollHeight,y=p**2/f.scrollWidth,m=Math.max(h,n.minSize),_=Math.max(y,n.minSize);u.value=h/(c-h)/(m/(c-m)),l.value=y/(p-y)/(_/(p-_)),i.value=m+GAP<c?`${m}px`:"",o.value=_+GAP<p?`${_}px`:""}}),(f,c)=>(vue.openBlock(),vue.createElementBlock(vue.Fragment,null,[vue.createVNode(Thumb,{move:a.value,ratio:l.value,size:o.value,always:f.always},null,8,["move","ratio","size","always"]),vue.createVNode(Thumb,{move:s.value,ratio:u.value,size:i.value,vertical:"",always:f.always},null,8,["move","ratio","size","always"])],64))}});var Bar=_export_sfc(_sfc_main$P,[["__file","bar.vue"]]);const scrollbarProps=buildProps({height:{type:[String,Number],default:""},maxHeight:{type:[String,Number],default:""},native:{type:Boolean,default:!1},wrapStyle:{type:definePropType([String,Object,Array]),default:""},wrapClass:{type:[String,Array],default:""},viewClass:{type:[String,Array],default:""},viewStyle:{type:[String,Array,Object],default:""},noresize:Boolean,tag:{type:String,default:"div"},always:Boolean,minSize:{type:Number,default:20},tabindex:{type:[String,Number],default:void 0},id:String,role:String,...useAriaProps(["ariaLabel","ariaOrientation"])}),scrollbarEmits={"end-reached":e=>["left","right","top","bottom"].includes(e),scroll:({scrollTop:e,scrollLeft:t})=>[e,t].every(isNumber)},COMPONENT_NAME$3="ElScrollbar",__default__$i=vue.defineComponent({name:COMPONENT_NAME$3}),_sfc_main$O=vue.defineComponent({...__default__$i,props:scrollbarProps,emits:scrollbarEmits,setup(e,{expose:t,emit:n}){const r=e,a=useNamespace("scrollbar");let s,o,i=0,u=0,l="";const v=vue.ref(),d=vue.ref(),f=vue.ref(),c=vue.ref(),p=vue.computed(()=>{const k={};return r.height&&(k.height=addUnit(r.height)),r.maxHeight&&(k.maxHeight=addUnit(r.maxHeight)),[r.wrapStyle,k]}),h=vue.computed(()=>[r.wrapClass,a.e("wrap"),{[a.em("wrap","hidden-default")]:!r.native}]),y=vue.computed(()=>[a.e("view"),r.viewClass]),m=()=>{var k;if(d.value){(k=c.value)==null||k.handleScroll(d.value);const A=i,$=u;i=d.value.scrollTop,u=d.value.scrollLeft;const M={bottom:i+d.value.clientHeight>=d.value.scrollHeight,top:i<=0&&A!==0,right:u+d.value.clientWidth>=d.value.scrollWidth&&$!==u,left:u<=0&&$!==0};A!==i&&(l=i>A?"bottom":"top"),$!==u&&(l=u>$?"right":"left"),n("scroll",{scrollTop:i,scrollLeft:u}),M[l]&&n("end-reached",l)}};function _(k,A){isObject$1(k)?d.value.scrollTo(k):isNumber(k)&&isNumber(A)&&d.value.scrollTo(k,A)}const b=k=>{if(!isNumber(k)){debugWarn(COMPONENT_NAME$3,"value must be a number");return}d.value.scrollTop=k},g=k=>{if(!isNumber(k)){debugWarn(COMPONENT_NAME$3,"value must be a number");return}d.value.scrollLeft=k},w=()=>{var k;(k=c.value)==null||k.update()};return vue.watch(()=>r.noresize,k=>{k?(s==null||s(),o==null||o()):({stop:s}=useResizeObserver(f,w),o=useEventListener("resize",w))},{immediate:!0}),vue.watch(()=>[r.maxHeight,r.height],()=>{r.native||vue.nextTick(()=>{var k;w(),d.value&&((k=c.value)==null||k.handleScroll(d.value))})}),vue.provide(scrollbarContextKey,vue.reactive({scrollbarElement:v,wrapElement:d})),vue.onActivated(()=>{d.value&&(d.value.scrollTop=i,d.value.scrollLeft=u)}),vue.onMounted(()=>{r.native||vue.nextTick(()=>{w()})}),vue.onUpdated(()=>w()),t({wrapRef:d,update:w,scrollTo:_,setScrollTop:b,setScrollLeft:g,handleScroll:m}),(k,A)=>(vue.openBlock(),vue.createElementBlock("div",{ref_key:"scrollbarRef",ref:v,class:vue.normalizeClass(vue.unref(a).b())},[vue.createElementVNode("div",{ref_key:"wrapRef",ref:d,class:vue.normalizeClass(vue.unref(h)),style:vue.normalizeStyle(vue.unref(p)),tabindex:k.tabindex,onScroll:m},[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(k.tag),{id:k.id,ref_key:"resizeRef",ref:f,class:vue.normalizeClass(vue.unref(y)),style:vue.normalizeStyle(k.viewStyle),role:k.role,"aria-label":k.ariaLabel,"aria-orientation":k.ariaOrientation},{default:vue.withCtx(()=>[vue.renderSlot(k.$slots,"default")]),_:3},8,["id","class","style","role","aria-label","aria-orientation"]))],46,["tabindex"]),k.native?vue.createCommentVNode("v-if",!0):(vue.openBlock(),vue.createBlock(Bar,{key:0,ref_key:"barRef",ref:c,always:k.always,"min-size":k.minSize},null,8,["always","min-size"]))],2))}});var Scrollbar=_export_sfc(_sfc_main$O,[["__file","scrollbar.vue"]]);const ElScrollbar=withInstall(Scrollbar),POPPER_INJECTION_KEY=Symbol("popper"),POPPER_CONTENT_INJECTION_KEY=Symbol("popperContent"),roleTypes=["dialog","grid","group","listbox","menu","navigation","tooltip","tree"],popperProps=buildProps({role:{type:String,values:roleTypes,default:"tooltip"}}),__default__$h=vue.defineComponent({name:"ElPopper",inheritAttrs:!1}),_sfc_main$N=vue.defineComponent({...__default__$h,props:popperProps,setup(e,{expose:t}){const n=e,r=vue.ref(),a=vue.ref(),s=vue.ref(),o=vue.ref(),i=vue.computed(()=>n.role),u={triggerRef:r,popperInstanceRef:a,contentRef:s,referenceRef:o,role:i};return t(u),vue.provide(POPPER_INJECTION_KEY,u),(l,v)=>vue.renderSlot(l.$slots,"default")}});var Popper=_export_sfc(_sfc_main$N,[["__file","popper.vue"]]);const __default__$g=vue.defineComponent({name:"ElPopperArrow",inheritAttrs:!1}),_sfc_main$M=vue.defineComponent({...__default__$g,setup(e,{expose:t}){const n=useNamespace("popper"),{arrowRef:r,arrowStyle:a}=vue.inject(POPPER_CONTENT_INJECTION_KEY,void 0);return vue.onBeforeUnmount(()=>{r.value=void 0}),t({arrowRef:r}),(s,o)=>(vue.openBlock(),vue.createElementBlock("span",{ref_key:"arrowRef",ref:r,class:vue.normalizeClass(vue.unref(n).e("arrow")),style:vue.normalizeStyle(vue.unref(a)),"data-popper-arrow":""},null,6))}});var ElPopperArrow=_export_sfc(_sfc_main$M,[["__file","arrow.vue"]]);const popperTriggerProps=buildProps({virtualRef:{type:definePropType(Object)},virtualTriggering:Boolean,onMouseenter:{type:definePropType(Function)},onMouseleave:{type:definePropType(Function)},onClick:{type:definePropType(Function)},onKeydown:{type:definePropType(Function)},onFocus:{type:definePropType(Function)},onBlur:{type:definePropType(Function)},onContextmenu:{type:definePropType(Function)},id:String,open:Boolean}),FORWARD_REF_INJECTION_KEY=Symbol("elForwardRef"),useForwardRef=e=>{const t=n=>{e.value=n};vue.provide(FORWARD_REF_INJECTION_KEY,{setForwardRef:t})},useForwardRefDirective=e=>({mounted(t){e(t)},updated(t){e(t)},unmounted(){e(null)}}),NAME="ElOnlyChild",OnlyChild=vue.defineComponent({name:NAME,setup(e,{slots:t,attrs:n}){var r;const a=vue.inject(FORWARD_REF_INJECTION_KEY),s=useForwardRefDirective((r=a==null?void 0:a.setForwardRef)!=null?r:NOOP);return()=>{var o;const i=(o=t.default)==null?void 0:o.call(t,n);if(!i)return null;if(i.length>1)return debugWarn(NAME,"requires exact only one valid child."),null;const u=findFirstLegitChild(i);return u?vue.withDirectives(vue.cloneVNode(u,n),[[s]]):(debugWarn(NAME,"no valid child node found"),null)}}});function findFirstLegitChild(e){if(!e)return null;const t=e;for(const n of t){if(isObject$1(n))switch(n.type){case vue.Comment:continue;case vue.Text:case"svg":return wrapTextContent(n);case vue.Fragment:return findFirstLegitChild(n.children);default:return n}return wrapTextContent(n)}return null}function wrapTextContent(e){const t=useNamespace("only-child");return vue.createVNode("span",{class:t.e("content")},[e])}const __default__$f=vue.defineComponent({name:"ElPopperTrigger",inheritAttrs:!1}),_sfc_main$L=vue.defineComponent({...__default__$f,props:popperTriggerProps,setup(e,{expose:t}){const n=e,{role:r,triggerRef:a}=vue.inject(POPPER_INJECTION_KEY,void 0);useForwardRef(a);const s=vue.computed(()=>i.value?n.id:void 0),o=vue.computed(()=>{if(r&&r.value==="tooltip")return n.open&&n.id?n.id:void 0}),i=vue.computed(()=>{if(r&&r.value!=="tooltip")return r.value}),u=vue.computed(()=>i.value?`${n.open}`:void 0);let l;const v=["onMouseenter","onMouseleave","onClick","onKeydown","onFocus","onBlur","onContextmenu"];return vue.onMounted(()=>{vue.watch(()=>n.virtualRef,d=>{d&&(a.value=unrefElement(d))},{immediate:!0}),vue.watch(a,(d,f)=>{l==null||l(),l=void 0,isElement(d)&&(v.forEach(c=>{var p;const h=n[c];h&&(d.addEventListener(c.slice(2).toLowerCase(),h),(p=f==null?void 0:f.removeEventListener)==null||p.call(f,c.slice(2).toLowerCase(),h))}),isFocusable(d)&&(l=vue.watch([s,o,i,u],c=>{["aria-controls","aria-describedby","aria-haspopup","aria-expanded"].forEach((p,h)=>{isNil(c[h])?d.removeAttribute(p):d.setAttribute(p,c[h])})},{immediate:!0}))),isElement(f)&&isFocusable(f)&&["aria-controls","aria-describedby","aria-haspopup","aria-expanded"].forEach(c=>f.removeAttribute(c))},{immediate:!0})}),vue.onBeforeUnmount(()=>{if(l==null||l(),l=void 0,a.value&&isElement(a.value)){const d=a.value;v.forEach(f=>{const c=n[f];c&&d.removeEventListener(f.slice(2).toLowerCase(),c)}),a.value=void 0}}),t({triggerRef:a}),(d,f)=>d.virtualTriggering?vue.createCommentVNode("v-if",!0):(vue.openBlock(),vue.createBlock(vue.unref(OnlyChild),vue.mergeProps({key:0},d.$attrs,{"aria-controls":vue.unref(s),"aria-describedby":vue.unref(o),"aria-expanded":vue.unref(u),"aria-haspopup":vue.unref(i)}),{default:vue.withCtx(()=>[vue.renderSlot(d.$slots,"default")]),_:3},16,["aria-controls","aria-describedby","aria-expanded","aria-haspopup"]))}});var ElPopperTrigger=_export_sfc(_sfc_main$L,[["__file","trigger.vue"]]);const FOCUS_AFTER_TRAPPED="focus-trap.focus-after-trapped",FOCUS_AFTER_RELEASED="focus-trap.focus-after-released",FOCUSOUT_PREVENTED="focus-trap.focusout-prevented",FOCUS_AFTER_TRAPPED_OPTS={cancelable:!0,bubbles:!1},FOCUSOUT_PREVENTED_OPTS={cancelable:!0,bubbles:!1},ON_TRAP_FOCUS_EVT="focusAfterTrapped",ON_RELEASE_FOCUS_EVT="focusAfterReleased",FOCUS_TRAP_INJECTION_KEY=Symbol("elFocusTrap"),focusReason=vue.ref(),lastUserFocusTimestamp=vue.ref(0),lastAutomatedFocusTimestamp=vue.ref(0);let focusReasonUserCount=0;const obtainAllFocusableElements=e=>{const t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:r=>{const a=r.tagName==="INPUT"&&r.type==="hidden";return r.disabled||r.hidden||a?NodeFilter.FILTER_SKIP:r.tabIndex>=0||r===document.activeElement?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t},getVisibleElement=(e,t)=>{for(const n of e)if(!isHidden(n,t))return n},isHidden=(e,t)=>{if(process.env.NODE_ENV==="test")return!1;if(getComputedStyle(e).visibility==="hidden")return!0;for(;e;){if(t&&e===t)return!1;if(getComputedStyle(e).display==="none")return!0;e=e.parentElement}return!1},getEdges=e=>{const t=obtainAllFocusableElements(e),n=getVisibleElement(t,e),r=getVisibleElement(t.reverse(),e);return[n,r]},isSelectable=e=>e instanceof HTMLInputElement&&"select"in e,tryFocus=(e,t)=>{if(e&&e.focus){const n=document.activeElement;let r=!1;isElement(e)&&!isFocusable(e)&&!e.getAttribute("tabindex")&&(e.setAttribute("tabindex","-1"),r=!0),e.focus({preventScroll:!0}),lastAutomatedFocusTimestamp.value=window.performance.now(),e!==n&&isSelectable(e)&&t&&e.select(),isElement(e)&&r&&e.removeAttribute("tabindex")}};function removeFromStack(e,t){const n=[...e],r=e.indexOf(t);return r!==-1&&n.splice(r,1),n}const createFocusableStack=()=>{let e=[];return{push:r=>{const a=e[0];a&&r!==a&&a.pause(),e=removeFromStack(e,r),e.unshift(r)},remove:r=>{var a,s;e=removeFromStack(e,r),(s=(a=e[0])==null?void 0:a.resume)==null||s.call(a)}}},focusFirstDescendant=(e,t=!1)=>{const n=document.activeElement;for(const r of e)if(tryFocus(r,t),document.activeElement!==n)return},focusableStack=createFocusableStack(),isFocusCausedByUserEvent=()=>lastUserFocusTimestamp.value>lastAutomatedFocusTimestamp.value,notifyFocusReasonPointer=()=>{focusReason.value="pointer",lastUserFocusTimestamp.value=window.performance.now()},notifyFocusReasonKeydown=()=>{focusReason.value="keyboard",lastUserFocusTimestamp.value=window.performance.now()},useFocusReason=()=>(vue.onMounted(()=>{focusReasonUserCount===0&&(document.addEventListener("mousedown",notifyFocusReasonPointer),document.addEventListener("touchstart",notifyFocusReasonPointer),document.addEventListener("keydown",notifyFocusReasonKeydown)),focusReasonUserCount++}),vue.onBeforeUnmount(()=>{focusReasonUserCount--,focusReasonUserCount<=0&&(document.removeEventListener("mousedown",notifyFocusReasonPointer),document.removeEventListener("touchstart",notifyFocusReasonPointer),document.removeEventListener("keydown",notifyFocusReasonKeydown))}),{focusReason,lastUserFocusTimestamp,lastAutomatedFocusTimestamp}),createFocusOutPreventedEvent=e=>new CustomEvent(FOCUSOUT_PREVENTED,{...FOCUSOUT_PREVENTED_OPTS,detail:e}),EVENT_CODE={tab:"Tab",enter:"Enter",space:"Space",left:"ArrowLeft",up:"ArrowUp",right:"ArrowRight",down:"ArrowDown",esc:"Escape",delete:"Delete",numpadEnter:"NumpadEnter",pageUp:"PageUp",pageDown:"PageDown",home:"Home",end:"End"};let registeredEscapeHandlers=[];const cachedHandler=e=>{e.code===EVENT_CODE.esc&®isteredEscapeHandlers.forEach(t=>t(e))},useEscapeKeydown=e=>{vue.onMounted(()=>{registeredEscapeHandlers.length===0&&document.addEventListener("keydown",cachedHandler),isClient&®isteredEscapeHandlers.push(e)}),vue.onBeforeUnmount(()=>{registeredEscapeHandlers=registeredEscapeHandlers.filter(t=>t!==e),registeredEscapeHandlers.length===0&&isClient&&document.removeEventListener("keydown",cachedHandler)})},_sfc_main$K=vue.defineComponent({name:"ElFocusTrap",inheritAttrs:!1,props:{loop:Boolean,trapped:Boolean,focusTrapEl:Object,focusStartEl:{type:[Object,String],default:"first"}},emits:[ON_TRAP_FOCUS_EVT,ON_RELEASE_FOCUS_EVT,"focusin","focusout","focusout-prevented","release-requested"],setup(e,{emit:t}){const n=vue.ref();let r,a;const{focusReason:s}=useFocusReason();useEscapeKeydown(p=>{e.trapped&&!o.paused&&t("release-requested",p)});const o={paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}},i=p=>{if(!e.loop&&!e.trapped||o.paused)return;const{code:h,altKey:y,ctrlKey:m,metaKey:_,currentTarget:b,shiftKey:g}=p,{loop:w}=e,k=h===EVENT_CODE.tab&&!y&&!m&&!_,A=document.activeElement;if(k&&A){const $=b,[M,F]=getEdges($);if(M&&F){if(!g&&A===F){const D=createFocusOutPreventedEvent({focusReason:s.value});t("focusout-prevented",D),D.defaultPrevented||(p.preventDefault(),w&&tryFocus(M,!0))}else if(g&&[M,$].includes(A)){const D=createFocusOutPreventedEvent({focusReason:s.value});t("focusout-prevented",D),D.defaultPrevented||(p.preventDefault(),w&&tryFocus(F,!0))}}else if(A===$){const D=createFocusOutPreventedEvent({focusReason:s.value});t("focusout-prevented",D),D.defaultPrevented||p.preventDefault()}}};vue.provide(FOCUS_TRAP_INJECTION_KEY,{focusTrapRef:n,onKeydown:i}),vue.watch(()=>e.focusTrapEl,p=>{p&&(n.value=p)},{immediate:!0}),vue.watch([n],([p],[h])=>{p&&(p.addEventListener("keydown",i),p.addEventListener("focusin",v),p.addEventListener("focusout",d)),h&&(h.removeEventListener("keydown",i),h.removeEventListener("focusin",v),h.removeEventListener("focusout",d))});const u=p=>{t(ON_TRAP_FOCUS_EVT,p)},l=p=>t(ON_RELEASE_FOCUS_EVT,p),v=p=>{const h=vue.unref(n);if(!h)return;const y=p.target,m=p.relatedTarget,_=y&&h.contains(y);e.trapped||m&&h.contains(m)||(r=m),_&&t("focusin",p),!o.paused&&e.trapped&&(_?a=y:tryFocus(a,!0))},d=p=>{const h=vue.unref(n);if(!(o.paused||!h))if(e.trapped){const y=p.relatedTarget;!isNil(y)&&!h.contains(y)&&setTimeout(()=>{if(!o.paused&&e.trapped){const m=createFocusOutPreventedEvent({focusReason:s.value});t("focusout-prevented",m),m.defaultPrevented||tryFocus(a,!0)}},0)}else{const y=p.target;y&&h.contains(y)||t("focusout",p)}};async function f(){await vue.nextTick();const p=vue.unref(n);if(p){focusableStack.push(o);const h=p.contains(document.activeElement)?r:document.activeElement;if(r=h,!p.contains(h)){const m=new Event(FOCUS_AFTER_TRAPPED,FOCUS_AFTER_TRAPPED_OPTS);p.addEventListener(FOCUS_AFTER_TRAPPED,u),p.dispatchEvent(m),m.defaultPrevented||vue.nextTick(()=>{let _=e.focusStartEl;isString$1(_)||(tryFocus(_),document.activeElement!==_&&(_="first")),_==="first"&&focusFirstDescendant(obtainAllFocusableElements(p),!0),(document.activeElement===h||_==="container")&&tryFocus(p)})}}}function c(){const p=vue.unref(n);if(p){p.removeEventListener(FOCUS_AFTER_TRAPPED,u);const h=new CustomEvent(FOCUS_AFTER_RELEASED,{...FOCUS_AFTER_TRAPPED_OPTS,detail:{focusReason:s.value}});p.addEventListener(FOCUS_AFTER_RELEASED,l),p.dispatchEvent(h),!h.defaultPrevented&&(s.value=="keyboard"||!isFocusCausedByUserEvent()||p.contains(document.activeElement))&&tryFocus(r??document.body),p.removeEventListener(FOCUS_AFTER_RELEASED,l),focusableStack.remove(o)}}return vue.onMounted(()=>{e.trapped&&f(),vue.watch(()=>e.trapped,p=>{p?f():c()})}),vue.onBeforeUnmount(()=>{e.trapped&&c(),n.value&&(n.value.removeEventListener("keydown",i),n.value.removeEventListener("focusin",v),n.value.removeEventListener("focusout",d),n.value=void 0)}),{onKeydown:i}}});function _sfc_render$k(e,t,n,r,a,s){return vue.renderSlot(e.$slots,"default",{handleKeydown:e.onKeydown})}var ElFocusTrap=_export_sfc(_sfc_main$K,[["render",_sfc_render$k],["__file","focus-trap.vue"]]),E="top",R="bottom",W="right",P="left",me="auto",G=[E,R,W,P],U="start",J="end",Xe="clippingParents",je="viewport",K="popper",Ye="reference",De=G.reduce(function(e,t){return e.concat([t+"-"+U,t+"-"+J])},[]),Ee=[].concat(G,[me]).reduce(function(e,t){return e.concat([t,t+"-"+U,t+"-"+J])},[]),Ge="beforeRead",Je="read",Ke="afterRead",Qe="beforeMain",Ze="main",et="afterMain",tt="beforeWrite",nt="write",rt="afterWrite",ot=[Ge,Je,Ke,Qe,Ze,et,tt,nt,rt];function C(e){return e?(e.nodeName||"").toLowerCase():null}function H(e){if(e==null)return window;if(e.toString()!=="[object Window]"){var t=e.ownerDocument;return t&&t.defaultView||window}return e}function Q(e){var t=H(e).Element;return e instanceof t||e instanceof Element}function B(e){var t=H(e).HTMLElement;return e instanceof t||e instanceof HTMLElement}function Pe(e){if(typeof ShadowRoot>"u")return!1;var t=H(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot}function Mt(e){var t=e.state;Object.keys(t.elements).forEach(function(n){var r=t.styles[n]||{},a=t.attributes[n]||{},s=t.elements[n];!B(s)||!C(s)||(Object.assign(s.style,r),Object.keys(a).forEach(function(o){var i=a[o];i===!1?s.removeAttribute(o):s.setAttribute(o,i===!0?"":i)}))})}function Rt(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach(function(r){var a=t.elements[r],s=t.attributes[r]||{},o=Object.keys(t.styles.hasOwnProperty(r)?t.styles[r]:n[r]),i=o.reduce(function(u,l){return u[l]="",u},{});!B(a)||!C(a)||(Object.assign(a.style,i),Object.keys(s).forEach(function(u){a.removeAttribute(u)}))})}}var Ae={name:"applyStyles",enabled:!0,phase:"write",fn:Mt,effect:Rt,requires:["computeStyles"]};function q(e){return e.split("-")[0]}var X=Math.max,ve=Math.min,Z=Math.round;function ee(e,t){t===void 0&&(t=!1);var n=e.getBoundingClientRect(),r=1,a=1;if(B(e)&&t){var s=e.offsetHeight,o=e.offsetWidth;o>0&&(r=Z(n.width)/o||1),s>0&&(a=Z(n.height)/s||1)}return{width:n.width/r,height:n.height/a,top:n.top/a,right:n.right/r,bottom:n.bottom/a,left:n.left/r,x:n.left/r,y:n.top/a}}function ke(e){var t=ee(e),n=e.offsetWidth,r=e.offsetHeight;return Math.abs(t.width-n)<=1&&(n=t.width),Math.abs(t.height-r)<=1&&(r=t.height),{x:e.offsetLeft,y:e.offsetTop,width:n,height:r}}function it(e,t){var n=t.getRootNode&&t.getRootNode();if(e.contains(t))return!0;if(n&&Pe(n)){var r=t;do{if(r&&e.isSameNode(r))return!0;r=r.parentNode||r.host}while(r)}return!1}function N(e){return H(e).getComputedStyle(e)}function Wt(e){return["table","td","th"].indexOf(C(e))>=0}function I(e){return((Q(e)?e.ownerDocument:e.document)||window.document).documentElement}function ge(e){return C(e)==="html"?e:e.assignedSlot||e.parentNode||(Pe(e)?e.host:null)||I(e)}function at(e){return!B(e)||N(e).position==="fixed"?null:e.offsetParent}function Bt(e){var t=navigator.userAgent.toLowerCase().indexOf("firefox")!==-1,n=navigator.userAgent.indexOf("Trident")!==-1;if(n&&B(e)){var r=N(e);if(r.position==="fixed")return null}var a=ge(e);for(Pe(a)&&(a=a.host);B(a)&&["html","body"].indexOf(C(a))<0;){var s=N(a);if(s.transform!=="none"||s.perspective!=="none"||s.contain==="paint"||["transform","perspective"].indexOf(s.willChange)!==-1||t&&s.willChange==="filter"||t&&s.filter&&s.filter!=="none")return a;a=a.parentNode}return null}function se(e){for(var t=H(e),n=at(e);n&&Wt(n)&&N(n).position==="static";)n=at(n);return n&&(C(n)==="html"||C(n)==="body"&&N(n).position==="static")?t:n||Bt(e)||t}function Le(e){return["top","bottom"].indexOf(e)>=0?"x":"y"}function fe(e,t,n){return X(e,ve(t,n))}function St(e,t,n){var r=fe(e,t,n);return r>n?n:r}function st(){return{top:0,right:0,bottom:0,left:0}}function ft(e){return Object.assign({},st(),e)}function ct(e,t){return t.reduce(function(n,r){return n[r]=e,n},{})}var Tt=function(e,t){return e=typeof e=="function"?e(Object.assign({},t.rects,{placement:t.placement})):e,ft(typeof e!="number"?e:ct(e,G))};function Ht(e){var t,n=e.state,r=e.name,a=e.options,s=n.elements.arrow,o=n.modifiersData.popperOffsets,i=q(n.placement),u=Le(i),l=[P,W].indexOf(i)>=0,v=l?"height":"width";if(!(!s||!o)){var d=Tt(a.padding,n),f=ke(s),c=u==="y"?E:P,p=u==="y"?R:W,h=n.rects.reference[v]+n.rects.reference[u]-o[u]-n.rects.popper[v],y=o[u]-n.rects.reference[u],m=se(s),_=m?u==="y"?m.clientHeight||0:m.clientWidth||0:0,b=h/2-y/2,g=d[c],w=_-f[v]-d[p],k=_/2-f[v]/2+b,A=fe(g,k,w),$=u;n.modifiersData[r]=(t={},t[$]=A,t.centerOffset=A-k,t)}}function Ct(e){var t=e.state,n=e.options,r=n.element,a=r===void 0?"[data-popper-arrow]":r;a!=null&&(typeof a=="string"&&(a=t.elements.popper.querySelector(a),!a)||!it(t.elements.popper,a)||(t.elements.arrow=a))}var pt={name:"arrow",enabled:!0,phase:"main",fn:Ht,effect:Ct,requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};function te(e){return e.split("-")[1]}var qt={top:"auto",right:"auto",bottom:"auto",left:"auto"};function Vt(e){var t=e.x,n=e.y,r=window,a=r.devicePixelRatio||1;return{x:Z(t*a)/a||0,y:Z(n*a)/a||0}}function ut(e){var t,n=e.popper,r=e.popperRect,a=e.placement,s=e.variation,o=e.offsets,i=e.position,u=e.gpuAcceleration,l=e.adaptive,v=e.roundOffsets,d=e.isFixed,f=o.x,c=f===void 0?0:f,p=o.y,h=p===void 0?0:p,y=typeof v=="function"?v({x:c,y:h}):{x:c,y:h};c=y.x,h=y.y;var m=o.hasOwnProperty("x"),_=o.hasOwnProperty("y"),b=P,g=E,w=window;if(l){var k=se(n),A="clientHeight",$="clientWidth";if(k===H(n)&&(k=I(n),N(k).position!=="static"&&i==="absolute"&&(A="scrollHeight",$="scrollWidth")),k=k,a===E||(a===P||a===W)&&s===J){g=R;var M=d&&k===w&&w.visualViewport?w.visualViewport.height:k[A];h-=M-r.height,h*=u?1:-1}if(a===P||(a===E||a===R)&&s===J){b=W;var F=d&&k===w&&w.visualViewport?w.visualViewport.width:k[$];c-=F-r.width,c*=u?1:-1}}var O=Object.assign({position:i},l&&qt),D=v===!0?Vt({x:c,y:h}):{x:c,y:h};if(c=D.x,h=D.y,u){var j;return Object.assign({},O,(j={},j[g]=_?"0":"",j[b]=m?"0":"",j.transform=(w.devicePixelRatio||1)<=1?"translate("+c+"px, "+h+"px)":"translate3d("+c+"px, "+h+"px, 0)",j))}return Object.assign({},O,(t={},t[g]=_?h+"px":"",t[b]=m?c+"px":"",t.transform="",t))}function Nt(e){var t=e.state,n=e.options,r=n.gpuAcceleration,a=r===void 0?!0:r,s=n.adaptive,o=s===void 0?!0:s,i=n.roundOffsets,u=i===void 0?!0:i,l={placement:q(t.placement),variation:te(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:a,isFixed:t.options.strategy==="fixed"};t.modifiersData.popperOffsets!=null&&(t.styles.popper=Object.assign({},t.styles.popper,ut(Object.assign({},l,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:o,roundOffsets:u})))),t.modifiersData.arrow!=null&&(t.styles.arrow=Object.assign({},t.styles.arrow,ut(Object.assign({},l,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:u})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})}var Me={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:Nt,data:{}},ye={passive:!0};function It(e){var t=e.state,n=e.instance,r=e.options,a=r.scroll,s=a===void 0?!0:a,o=r.resize,i=o===void 0?!0:o,u=H(t.elements.popper),l=[].concat(t.scrollParents.reference,t.scrollParents.popper);return s&&l.forEach(function(v){v.addEventListener("scroll",n.update,ye)}),i&&u.addEventListener("resize",n.update,ye),function(){s&&l.forEach(function(v){v.removeEventListener("scroll",n.update,ye)}),i&&u.removeEventListener("resize",n.update,ye)}}var Re={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:It,data:{}},_t={left:"right",right:"left",bottom:"top",top:"bottom"};function be(e){return e.replace(/left|right|bottom|top/g,function(t){return _t[t]})}var zt={start:"end",end:"start"};function lt(e){return e.replace(/start|end/g,function(t){return zt[t]})}function We(e){var t=H(e),n=t.pageXOffset,r=t.pageYOffset;return{scrollLeft:n,scrollTop:r}}function Be(e){return ee(I(e)).left+We(e).scrollLeft}function Ft(e){var t=H(e),n=I(e),r=t.visualViewport,a=n.clientWidth,s=n.clientHeight,o=0,i=0;return r&&(a=r.width,s=r.height,/^((?!chrome|android).)*safari/i.test(navigator.userAgent)||(o=r.offsetLeft,i=r.offsetTop)),{width:a,height:s,x:o+Be(e),y:i}}function Ut(e){var t,n=I(e),r=We(e),a=(t=e.ownerDocument)==null?void 0:t.body,s=X(n.scrollWidth,n.clientWidth,a?a.scrollWidth:0,a?a.clientWidth:0),o=X(n.scrollHeight,n.clientHeight,a?a.scrollHeight:0,a?a.clientHeight:0),i=-r.scrollLeft+Be(e),u=-r.scrollTop;return N(a||n).direction==="rtl"&&(i+=X(n.clientWidth,a?a.clientWidth:0)-s),{width:s,height:o,x:i,y:u}}function Se(e){var t=N(e),n=t.overflow,r=t.overflowX,a=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+a+r)}function dt(e){return["html","body","#document"].indexOf(C(e))>=0?e.ownerDocument.body:B(e)&&Se(e)?e:dt(ge(e))}function ce(e,t){var n;t===void 0&&(t=[]);var r=dt(e),a=r===((n=e.ownerDocument)==null?void 0:n.body),s=H(r),o=a?[s].concat(s.visualViewport||[],Se(r)?r:[]):r,i=t.concat(o);return a?i:i.concat(ce(ge(o)))}function Te(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}function Xt(e){var t=ee(e);return t.top=t.top+e.clientTop,t.left=t.left+e.clientLeft,t.bottom=t.top+e.clientHeight,t.right=t.left+e.clientWidth,t.width=e.clientWidth,t.height=e.clientHeight,t.x=t.left,t.y=t.top,t}function ht(e,t){return t===je?Te(Ft(e)):Q(t)?Xt(t):Te(Ut(I(e)))}function Yt(e){var t=ce(ge(e)),n=["absolute","fixed"].indexOf(N(e).position)>=0,r=n&&B(e)?se(e):e;return Q(r)?t.filter(function(a){return Q(a)&&it(a,r)&&C(a)!=="body"}):[]}function Gt(e,t,n){var r=t==="clippingParents"?Yt(e):[].concat(t),a=[].concat(r,[n]),s=a[0],o=a.reduce(function(i,u){var l=ht(e,u);return i.top=X(l.top,i.top),i.right=ve(l.right,i.right),i.bottom=ve(l.bottom,i.bottom),i.left=X(l.left,i.left),i},ht(e,s));return o.width=o.right-o.left,o.height=o.bottom-o.top,o.x=o.left,o.y=o.top,o}function mt(e){var t=e.reference,n=e.element,r=e.placement,a=r?q(r):null,s=r?te(r):null,o=t.x+t.width/2-n.width/2,i=t.y+t.height/2-n.height/2,u;switch(a){case E:u={x:o,y:t.y-n.height};break;case R:u={x:o,y:t.y+t.height};break;case W:u={x:t.x+t.width,y:i};break;case P:u={x:t.x-n.width,y:i};break;default:u={x:t.x,y:t.y}}var l=a?Le(a):null;if(l!=null){var v=l==="y"?"height":"width";switch(s){case U:u[l]=u[l]-(t[v]/2-n[v]/2);break;case J:u[l]=u[l]+(t[v]/2-n[v]/2);break}}return u}function ne(e,t){t===void 0&&(t={});var n=t,r=n.placement,a=r===void 0?e.placement:r,s=n.boundary,o=s===void 0?Xe:s,i=n.rootBoundary,u=i===void 0?je:i,l=n.elementContext,v=l===void 0?K:l,d=n.altBoundary,f=d===void 0?!1:d,c=n.padding,p=c===void 0?0:c,h=ft(typeof p!="number"?p:ct(p,G)),y=v===K?Ye:K,m=e.rects.popper,_=e.elements[f?y:v],b=Gt(Q(_)?_:_.contextElement||I(e.elements.popper),o,u),g=ee(e.elements.reference),w=mt({reference:g,element:m,placement:a}),k=Te(Object.assign({},m,w)),A=v===K?k:g,$={top:b.top-A.top+h.top,bottom:A.bottom-b.bottom+h.bottom,left:b.left-A.left+h.left,right:A.right-b.right+h.right},M=e.modifiersData.offset;if(v===K&&M){var F=M[a];Object.keys($).forEach(function(O){var D=[W,R].indexOf(O)>=0?1:-1,j=[E,R].indexOf(O)>=0?"y":"x";$[O]+=F[j]*D})}return $}function Jt(e,t){t===void 0&&(t={});var n=t,r=n.placement,a=n.boundary,s=n.rootBoundary,o=n.padding,i=n.flipVariations,u=n.allowedAutoPlacements,l=u===void 0?Ee:u,v=te(r),d=v?i?De:De.filter(function(p){return te(p)===v}):G,f=d.filter(function(p){return l.indexOf(p)>=0});f.length===0&&(f=d);var c=f.reduce(function(p,h){return p[h]=ne(e,{placement:h,boundary:a,rootBoundary:s,padding:o})[q(h)],p},{});return Object.keys(c).sort(function(p,h){return c[p]-c[h]})}function Kt(e){if(q(e)===me)return[];var t=be(e);return[lt(e),t,lt(t)]}function Qt(e){var t=e.state,n=e.options,r=e.name;if(!t.modifiersData[r]._skip){for(var a=n.mainAxis,s=a===void 0?!0:a,o=n.altAxis,i=o===void 0?!0:o,u=n.fallbackPlacements,l=n.padding,v=n.boundary,d=n.rootBoundary,f=n.altBoundary,c=n.flipVariations,p=c===void 0?!0:c,h=n.allowedAutoPlacements,y=t.options.placement,m=q(y),_=m===y,b=u||(_||!p?[be(y)]:Kt(y)),g=[y].concat(b).reduce(function(_e,$e){return _e.concat(q($e)===me?Jt(t,{placement:$e,boundary:v,rootBoundary:d,padding:l,flipVariations:p,allowedAutoPlacements:h}):$e)},[]),w=t.rects.reference,k=t.rects.popper,A=new Map,$=!0,M=g[0],F=0;F<g.length;F++){var O=g[F],D=q(O),j=te(O)===U,z=[E,R].indexOf(D)>=0,T=z?"width":"height",L=ne(t,{placement:O,boundary:v,rootBoundary:d,altBoundary:f,padding:l}),ie=z?j?W:P:j?R:E;w[T]>k[T]&&(ie=be(ie));var x=be(ie),V=[];if(s&&V.push(L[D]<=0),i&&V.push(L[ie]<=0,L[x]<=0),V.every(function(_e){return _e})){M=O,$=!1;break}A.set(O,V)}if($)for(var le=p?3:1,re=function(_e){var $e=g.find(function(Ne){var kt=A.get(Ne);if(kt)return kt.slice(0,_e).every(function(Pt){return Pt})});if($e)return M=$e,"break"},Y=le;Y>0;Y--){var he=re(Y);if(he==="break")break}t.placement!==M&&(t.modifiersData[r]._skip=!0,t.placement=M,t.reset=!0)}}var vt={name:"flip",enabled:!0,phase:"main",fn:Qt,requiresIfExists:["offset"],data:{_skip:!1}};function gt(e,t,n){return n===void 0&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function yt(e){return[E,W,R,P].some(function(t){return e[t]>=0})}function Zt(e){var t=e.state,n=e.name,r=t.rects.reference,a=t.rects.popper,s=t.modifiersData.preventOverflow,o=ne(t,{elementContext:"reference"}),i=ne(t,{altBoundary:!0}),u=gt(o,r),l=gt(i,a,s),v=yt(u),d=yt(l);t.modifiersData[n]={referenceClippingOffsets:u,popperEscapeOffsets:l,isReferenceHidden:v,hasPopperEscaped:d},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":v,"data-popper-escaped":d})}var bt={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:Zt};function en(e,t,n){var r=q(e),a=[P,E].indexOf(r)>=0?-1:1,s=typeof n=="function"?n(Object.assign({},t,{placement:e})):n,o=s[0],i=s[1];return o=o||0,i=(i||0)*a,[P,W].indexOf(r)>=0?{x:i,y:o}:{x:o,y:i}}function tn(e){var t=e.state,n=e.options,r=e.name,a=n.offset,s=a===void 0?[0,0]:a,o=Ee.reduce(function(v,d){return v[d]=en(d,t.rects,s),v},{}),i=o[t.placement],u=i.x,l=i.y;t.modifiersData.popperOffsets!=null&&(t.modifiersData.popperOffsets.x+=u,t.modifiersData.popperOffsets.y+=l),t.modifiersData[r]=o}var wt={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:tn};function nn(e){var t=e.state,n=e.name;t.modifiersData[n]=mt({reference:t.rects.reference,element:t.rects.popper,placement:t.placement})}var He={name:"popperOffsets",enabled:!0,phase:"read",fn:nn,data:{}};function rn(e){return e==="x"?"y":"x"}function on(e){var t=e.state,n=e.options,r=e.name,a=n.mainAxis,s=a===void 0?!0:a,o=n.altAxis,i=o===void 0?!1:o,u=n.boundary,l=n.rootBoundary,v=n.altBoundary,d=n.padding,f=n.tether,c=f===void 0?!0:f,p=n.tetherOffset,h=p===void 0?0:p,y=ne(t,{boundary:u,rootBoundary:l,padding:d,altBoundary:v}),m=q(t.placement),_=te(t.placement),b=!_,g=Le(m),w=rn(g),k=t.modifiersData.popperOffsets,A=t.rects.reference,$=t.rects.popper,M=typeof h=="function"?h(Object.assign({},t.rects,{placement:t.placement})):h,F=typeof M=="number"?{mainAxis:M,altAxis:M}:Object.assign({mainAxis:0,altAxis:0},M),O=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,D={x:0,y:0};if(k){if(s){var j,z=g==="y"?E:P,T=g==="y"?R:W,L=g==="y"?"height":"width",ie=k[g],x=ie+y[z],V=ie-y[T],le=c?-$[L]/2:0,re=_===U?A[L]:$[L],Y=_===U?-$[L]:-A[L],he=t.elements.arrow,_e=c&&he?ke(he):{width:0,height:0},$e=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:st(),Ne=$e[z],kt=$e[T],Pt=fe(0,A[L],_e[L]),Oe=b?A[L]/2-le-Pt-Ne-F.mainAxis:re-Pt-Ne-F.mainAxis,ze=b?-A[L]/2+le+Pt+kt+F.mainAxis:Y+Pt+kt+F.mainAxis,At=t.elements.arrow&&se(t.elements.arrow),En=At?g==="y"?At.clientTop||0:At.clientLeft||0:0,Pn=(j=O==null?void 0:O[g])!=null?j:0,Dn=ie+Oe-Pn-En,Mn=ie+ze-Pn,Ue=fe(c?ve(x,Dn):x,ie,c?X(V,Mn):V);k[g]=Ue,D[g]=Ue-ie}if(i){var xe,Lt=g==="x"?E:P,Et=g==="x"?R:W,wn=k[w],Tn=w==="y"?"height":"width",kn=wn+y[Lt],In=wn-y[Et],qe=[E,P].indexOf(m)!==-1,hn=(xe=O==null?void 0:O[w])!=null?xe:0,An=qe?kn:wn-A[Tn]-$[Tn]-hn+F.altAxis,Nn=qe?wn+A[Tn]+$[Tn]-hn-F.altAxis:In,xn=c&&qe?St(An,wn,Nn):fe(c?An:kn,wn,c?Nn:In);k[w]=xn,D[w]=xn-wn}t.modifiersData[r]=D}}var xt={name:"preventOverflow",enabled:!0,phase:"main",fn:on,requiresIfExists:["offset"]};function an(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}function sn(e){return e===H(e)||!B(e)?We(e):an(e)}function fn(e){var t=e.getBoundingClientRect(),n=Z(t.width)/e.offsetWidth||1,r=Z(t.height)/e.offsetHeight||1;return n!==1||r!==1}function cn(e,t,n){n===void 0&&(n=!1);var r=B(t),a=B(t)&&fn(t),s=I(t),o=ee(e,a),i={scrollLeft:0,scrollTop:0},u={x:0,y:0};return(r||!r&&!n)&&((C(t)!=="body"||Se(s))&&(i=sn(t)),B(t)?(u=ee(t,!0),u.x+=t.clientLeft,u.y+=t.clientTop):s&&(u.x=Be(s))),{x:o.left+i.scrollLeft-u.x,y:o.top+i.scrollTop-u.y,width:o.width,height:o.height}}function pn(e){var t=new Map,n=new Set,r=[];e.forEach(function(s){t.set(s.name,s)});function a(s){n.add(s.name);var o=[].concat(s.requires||[],s.requiresIfExists||[]);o.forEach(function(i){if(!n.has(i)){var u=t.get(i);u&&a(u)}}),r.push(s)}return e.forEach(function(s){n.has(s.name)||a(s)}),r}function un(e){var t=pn(e);return ot.reduce(function(n,r){return n.concat(t.filter(function(a){return a.phase===r}))},[])}function ln(e){var t;return function(){return t||(t=new Promise(function(n){Promise.resolve().then(function(){t=void 0,n(e())})})),t}}function dn(e){var t=e.reduce(function(n,r){var a=n[r.name];return n[r.name]=a?Object.assign({},a,r,{options:Object.assign({},a.options,r.options),data:Object.assign({},a.data,r.data)}):r,n},{});return Object.keys(t).map(function(n){return t[n]})}var Ot={placement:"bottom",modifiers:[],strategy:"absolute"};function $t(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return!t.some(function(r){return!(r&&typeof r.getBoundingClientRect=="function")})}function we(e){e===void 0&&(e={});var t=e,n=t.defaultModifiers,r=n===void 0?[]:n,a=t.defaultOptions,s=a===void 0?Ot:a;return function(o,i,u){u===void 0&&(u=s);var l={placement:"bottom",orderedModifiers:[],options:Object.assign({},Ot,s),modifiersData:{},elements:{reference:o,popper:i},attributes:{},styles:{}},v=[],d=!1,f={state:l,setOptions:function(h){var y=typeof h=="function"?h(l.options):h;p(),l.options=Object.assign({},s,l.options,y),l.scrollParents={reference:Q(o)?ce(o):o.contextElement?ce(o.contextElement):[],popper:ce(i)};var m=un(dn([].concat(r,l.options.modifiers)));return l.orderedModifiers=m.filter(function(_){return _.enabled}),c(),f.update()},forceUpdate:function(){if(!d){var h=l.elements,y=h.reference,m=h.popper;if($t(y,m)){l.rects={reference:cn(y,se(m),l.options.strategy==="fixed"),popper:ke(m)},l.reset=!1,l.placement=l.options.placement,l.orderedModifiers.forEach(function($){return l.modifiersData[$.name]=Object.assign({},$.data)});for(var _=0;_<l.orderedModifiers.length;_++){if(l.reset===!0){l.reset=!1,_=-1;continue}var b=l.orderedModifiers[_],g=b.fn,w=b.options,k=w===void 0?{}:w,A=b.name;typeof g=="function"&&(l=g({state:l,options:k,name:A,instance:f})||l)}}}},update:ln(function(){return new Promise(function(h){f.forceUpdate(),h(l)})}),destroy:function(){p(),d=!0}};if(!$t(o,i))return f;f.setOptions(u).then(function(h){!d&&u.onFirstUpdate&&u.onFirstUpdate(h)});function c(){l.orderedModifiers.forEach(function(h){var y=h.name,m=h.options,_=m===void 0?{}:m,b=h.effect;if(typeof b=="function"){var g=b({state:l,name:y,instance:f,options:_}),w=function(){};v.push(g||w)}})}function p(){v.forEach(function(h){return h()}),v=[]}return f}}we();var mn=[Re,He,Me,Ae];we({defaultModifiers:mn});var gn=[Re,He,Me,Ae,wt,vt,xt,pt,bt],yn=we({defaultModifiers:gn});const popperArrowProps=buildProps({arrowOffset:{type:Number,default:5}}),POSITIONING_STRATEGIES=["fixed","absolute"],popperCoreConfigProps=buildProps({boundariesPadding:{type:Number,default:0},fallbackPlacements:{type:definePropType(Array),default:void 0},gpuAcceleration:{type:Boolean,default:!0},offset:{type:Number,default:12},placement:{type:String,values:Ee,default:"bottom"},popperOptions:{type:definePropType(Object),default:()=>({})},strategy:{type:String,values:POSITIONING_STRATEGIES,default:"absolute"}}),popperContentProps=buildProps({...popperCoreConfigProps,...popperArrowProps,id:String,style:{type:definePropType([String,Array,Object])},className:{type:definePropType([String,Array,Object])},effect:{type:definePropType(String),default:"dark"},visible:Boolean,enterable:{type:Boolean,default:!0},pure:Boolean,focusOnShow:{type:Boolean,default:!1},trapping:{type:Boolean,default:!1},popperClass:{type:definePropType([String,Array,Object])},popperStyle:{type:definePropType([String,Array,Object])},referenceEl:{type:definePropType(Object)},triggerTargetEl:{type:definePropType(Object)},stopPopperMouseEvent:{type:Boolean,default:!0},virtualTriggering:Boolean,zIndex:Number,...useAriaProps(["ariaLabel"])}),popperContentEmits={mouseenter:e=>e instanceof MouseEvent,mouseleave:e=>e instanceof MouseEvent,focus:()=>!0,blur:()=>!0,close:()=>!0},usePopperContentFocusTrap=(e,t)=>{const n=vue.ref(!1),r=vue.ref();return{focusStartRef:r,trapped:n,onFocusAfterReleased:l=>{var v;((v=l.detail)==null?void 0:v.focusReason)!=="pointer"&&(r.value="first",t("blur"))},onFocusAfterTrapped:()=>{t("focus")},onFocusInTrap:l=>{e.visible&&!n.value&&(l.target&&(r.value=l.target),n.value=!0)},onFocusoutPrevented:l=>{e.trapping||(l.detail.focusReason==="pointer"&&l.preventDefault(),n.value=!1)},onReleaseRequested:()=>{n.value=!1,t("close")}}},buildPopperOptions=(e,t=[])=>{const{placement:n,strategy:r,popperOptions:a}=e,s={placement:n,strategy:r,...a,modifiers:[...genModifiers(e),...t]};return deriveExtraModifiers(s,a==null?void 0:a.modifiers),s},unwrapMeasurableEl=e=>{if(isClient)return unrefElement(e)};function genModifiers(e){const{offset:t,gpuAcceleration:n,fallbackPlacements:r}=e;return[{name:"offset",options:{offset:[0,t??12]}},{name:"preventOverflow",options:{padding:{top:2,bottom:2,left:5,right:5}}},{name:"flip",options:{padding:5,fallbackPlacements:r}},{name:"computeStyles",options:{gpuAcceleration:n}}]}function deriveExtraModifiers(e,t){t&&(e.modifiers=[...e.modifiers,...t??[]])}const usePopper=(e,t,n={})=>{const r={name:"updateState",enabled:!0,phase:"write",fn:({state:u})=>{const l=deriveState(u);Object.assign(o.value,l)},requires:["computeStyles"]},a=vue.computed(()=>{const{onFirstUpdate:u,placement:l,strategy:v,modifiers:d}=vue.unref(n);return{onFirstUpdate:u,placement:l||"bottom",strategy:v||"absolute",modifiers:[...d||[],r,{name:"applyStyles",enabled:!1}]}}),s=vue.shallowRef(),o=vue.ref({styles:{popper:{position:vue.unref(a).strategy,left:"0",top:"0"},arrow:{position:"absolute"}},attributes:{}}),i=()=>{s.value&&(s.value.destroy(),s.value=void 0)};return vue.watch(a,u=>{const l=vue.unref(s);l&&l.setOptions(u)},{deep:!0}),vue.watch([e,t],([u,l])=>{i(),!(!u||!l)&&(s.value=yn(u,l,vue.unref(a)))}),vue.onBeforeUnmount(()=>{i()}),{state:vue.computed(()=>{var u;return{...((u=vue.unref(s))==null?void 0:u.state)||{}}}),styles:vue.computed(()=>vue.unref(o).styles),attributes:vue.computed(()=>vue.unref(o).attributes),update:()=>{var u;return(u=vue.unref(s))==null?void 0:u.update()},forceUpdate:()=>{var u;return(u=vue.unref(s))==null?void 0:u.forceUpdate()},instanceRef:vue.computed(()=>vue.unref(s))}};function deriveState(e){const t=Object.keys(e.elements),n=fromPairs(t.map(a=>[a,e.styles[a]||{}])),r=fromPairs(t.map(a=>[a,e.attributes[a]]));return{styles:n,attributes:r}}const DEFAULT_ARROW_OFFSET=0,usePopperContent=e=>{const{popperInstanceRef:t,contentRef:n,triggerRef:r,role:a}=vue.inject(POPPER_INJECTION_KEY,void 0),s=vue.ref(),o=vue.computed(()=>e.arrowOffset),i=vue.computed(()=>({name:"eventListeners",enabled:!!e.visible})),u=vue.computed(()=>{var m;const _=vue.unref(s),b=(m=vue.unref(o))!=null?m:DEFAULT_ARROW_OFFSET;return{name:"arrow",enabled:!isUndefined$1(_),options:{element:_,padding:b}}}),l=vue.computed(()=>({onFirstUpdate:()=>{p()},...buildPopperOptions(e,[vue.unref(u),vue.unref(i)])})),v=vue.computed(()=>unwrapMeasurableEl(e.referenceEl)||vue.unref(r)),{attributes:d,state:f,styles:c,update:p,forceUpdate:h,instanceRef:y}=usePopper(v,n,l);return vue.watch(y,m=>t.value=m,{flush:"sync"}),vue.onMounted(()=>{vue.watch(()=>{var m;return(m=vue.unref(v))==null?void 0:m.getBoundingClientRect()},()=>{p()})}),{attributes:d,arrowRef:s,contentRef:n,instanceRef:y,state:f,styles:c,role:a,forceUpdate:h,update:p}},usePopperContentDOM=(e,{attributes:t,styles:n,role:r})=>{const{nextZIndex:a}=useZIndex(),s=useNamespace("popper"),o=vue.computed(()=>vue.unref(t).popper),i=vue.ref(isNumber(e.zIndex)?e.zIndex:a()),u=vue.computed(()=>[s.b(),s.is("pure",e.pure),s.is(e.effect),e.popperClass]),l=vue.computed(()=>[{zIndex:vue.unref(i)},vue.unref(n).popper,e.popperStyle||{}]),v=vue.computed(()=>r.value==="dialog"?"false":void 0),d=vue.computed(()=>vue.unref(n).arrow||{});return{ariaModal:v,arrowStyle:d,contentAttrs:o,contentClass:u,contentStyle:l,contentZIndex:i,updateZIndex:()=>{i.value=isNumber(e.zIndex)?e.zIndex:a()}}},__default__$e=vue.defineComponent({name:"ElPopperContent"}),_sfc_main$J=vue.defineComponent({...__default__$e,props:popperContentProps,emits:popperContentEmits,setup(e,{expose:t,emit:n}){const r=e,{focusStartRef:a,trapped:s,onFocusAfterReleased:o,onFocusAfterTrapped:i,onFocusInTrap:u,onFocusoutPrevented:l,onReleaseRequested:v}=usePopperContentFocusTrap(r,n),{attributes:d,arrowRef:f,contentRef:c,styles:p,instanceRef:h,role:y,update:m}=usePopperContent(r),{ariaModal:_,arrowStyle:b,contentAttrs:g,contentClass:w,contentStyle:k,updateZIndex:A}=usePopperContentDOM(r,{styles:p,attributes:d,role:y}),$=vue.inject(formItemContextKey,void 0);vue.provide(POPPER_CONTENT_INJECTION_KEY,{arrowStyle:b,arrowRef:f}),$&&vue.provide(formItemContextKey,{...$,addInputId:NOOP,removeInputId:NOOP});let M;const F=(D=!0)=>{m(),D&&A()},O=()=>{F(!1),r.visible&&r.focusOnShow?s.value=!0:r.visible===!1&&(s.value=!1)};return vue.onMounted(()=>{vue.watch(()=>r.triggerTargetEl,(D,j)=>{M==null||M(),M=void 0;const z=vue.unref(D||c.value),T=vue.unref(j||c.value);isElement(z)&&(M=vue.watch([y,()=>r.ariaLabel,_,()=>r.id],L=>{["role","aria-label","aria-modal","id"].forEach((ie,x)=>{isNil(L[x])?z.removeAttribute(ie):z.setAttribute(ie,L[x])})},{immediate:!0})),T!==z&&isElement(T)&&["role","aria-label","aria-modal","id"].forEach(L=>{T.removeAttribute(L)})},{immediate:!0}),vue.watch(()=>r.visible,O,{immediate:!0})}),vue.onBeforeUnmount(()=>{M==null||M(),M=void 0}),t({popperContentRef:c,popperInstanceRef:h,updatePopper:F,contentStyle:k}),(D,j)=>(vue.openBlock(),vue.createElementBlock("div",vue.mergeProps({ref_key:"contentRef",ref:c},vue.unref(g),{style:vue.unref(k),class:vue.unref(w),tabindex:"-1",onMouseenter:z=>D.$emit("mouseenter",z),onMouseleave:z=>D.$emit("mouseleave",z)}),[vue.createVNode(vue.unref(ElFocusTrap),{trapped:vue.unref(s),"trap-on-focus-in":!0,"focus-trap-el":vue.unref(c),"focus-start-el":vue.unref(a),onFocusAfterTrapped:vue.unref(i),onFocusAfterReleased:vue.unref(o),onFocusin:vue.unref(u),onFocusoutPrevented:vue.unref(l),onReleaseRequested:vue.unref(v)},{default:vue.withCtx(()=>[vue.renderSlot(D.$slots,"default")]),_:3},8,["trapped","focus-trap-el","focus-start-el","onFocusAfterTrapped","onFocusAfterReleased","onFocusin","onFocusoutPrevented","onReleaseRequested"])],16,["onMouseenter","onMouseleave"]))}});var ElPopperContent=_export_sfc(_sfc_main$J,[["__file","content.vue"]]);const ElPopper=withInstall(Popper),TOOLTIP_INJECTION_KEY=Symbol("elTooltip"),teleportProps=buildProps({to:{type:definePropType([String,Object]),required:!0},disabled:Boolean}),useTooltipContentProps=buildProps({...useDelayedToggleProps,...popperContentProps,appendTo:{type:teleportProps.to.type},content:{type:String,default:""},rawContent:Boolean,persistent:Boolean,visible:{type:definePropType(Boolean),default:null},transition:String,teleported:{type:Boolean,default:!0},disabled:Boolean,...useAriaProps(["ariaLabel"])}),useTooltipTriggerProps=buildProps({...popperTriggerProps,disabled:Boolean,trigger:{type:definePropType([String,Array]),default:"hover"},triggerKeys:{type:definePropType(Array),default:()=>[EVENT_CODE.enter,EVENT_CODE.numpadEnter,EVENT_CODE.space]}}),_prop=buildProp({type:definePropType(Boolean),default:null}),_event=buildProp({type:definePropType(Function)}),createModelToggleComposable=e=>{const t=`update:${e}`,n=`onUpdate:${e}`,r=[t],a={[e]:_prop,[n]:_event};return{useModelToggle:({indicator:o,toggleReason:i,shouldHideWhenRouteChanges:u,shouldProceed:l,onShow:v,onHide:d})=>{const f=vue.getCurrentInstance(),{emit:c}=f,p=f.props,h=vue.computed(()=>isFunction$1(p[n])),y=vue.computed(()=>p[e]===null),m=A=>{o.value!==!0&&(o.value=!0,i&&(i.value=A),isFunction$1(v)&&v(A))},_=A=>{o.value!==!1&&(o.value=!1,i&&(i.value=A),isFunction$1(d)&&d(A))},b=A=>{if(p.disabled===!0||isFunction$1(l)&&!l())return;const $=h.value&&isClient;$&&c(t,!0),(y.value||!$)&&m(A)},g=A=>{if(p.disabled===!0||!isClient)return;const $=h.value&&isClient;$&&c(t,!1),(y.value||!$)&&_(A)},w=A=>{isBoolean(A)&&(p.disabled&&A?h.value&&c(t,!1):o.value!==A&&(A?m():_()))},k=()=>{o.value?g():b()};return vue.watch(()=>p[e],w),u&&f.appContext.config.globalProperties.$route!==void 0&&vue.watch(()=>({...f.proxy.$route}),()=>{u.value&&o.value&&g()}),vue.onMounted(()=>{w(p[e])}),{hide:g,show:b,toggle:k,hasUpdateHandler:h}},useModelToggleProps:a,useModelToggleEmits:r}},{useModelToggleProps:useTooltipModelToggleProps,useModelToggleEmits:useTooltipModelToggleEmits,useModelToggle:useTooltipModelToggle}=createModelToggleComposable("visible"),useTooltipProps=buildProps({...popperProps,...useTooltipModelToggleProps,...useTooltipContentProps,...useTooltipTriggerProps,...popperArrowProps,showArrow:{type:Boolean,default:!0}}),tooltipEmits=[...useTooltipModelToggleEmits,"before-show","before-hide","show","hide","open","close"],isTriggerType=(e,t)=>isArray$1(e)?e.includes(t):e===t,whenTrigger=(e,t,n)=>r=>{isTriggerType(vue.unref(e),t)&&n(r)},composeEventHandlers=(e,t,{checkForDefaultPrevented:n=!0}={})=>a=>{const s=e==null?void 0:e(a);if(n===!1||!s)return t==null?void 0:t(a)},__default__$d=vue.defineComponent({name:"ElTooltipTrigger"}),_sfc_main$I=vue.defineComponent({...__default__$d,props:useTooltipTriggerProps,setup(e,{expose:t}){const n=e,r=useNamespace("tooltip"),{controlled:a,id:s,open:o,onOpen:i,onClose:u,onToggle:l}=vue.inject(TOOLTIP_INJECTION_KEY,void 0),v=vue.ref(null),d=()=>{if(vue.unref(a)||n.disabled)return!0},f=vue.toRef(n,"trigger"),c=composeEventHandlers(d,whenTrigger(f,"hover",i)),p=composeEventHandlers(d,whenTrigger(f,"hover",u)),h=composeEventHandlers(d,whenTrigger(f,"click",g=>{g.button===0&&l(g)})),y=composeEventHandlers(d,whenTrigger(f,"focus",i)),m=composeEventHandlers(d,whenTrigger(f,"focus",u)),_=composeEventHandlers(d,whenTrigger(f,"contextmenu",g=>{g.preventDefault(),l(g)})),b=composeEventHandlers(d,g=>{const{code:w}=g;n.triggerKeys.includes(w)&&(g.preventDefault(),l(g))});return t({triggerRef:v}),(g,w)=>(vue.openBlock(),vue.createBlock(vue.unref(ElPopperTrigger),{id:vue.unref(s),"virtual-ref":g.virtualRef,open:vue.unref(o),"virtual-triggering":g.virtualTriggering,class:vue.normalizeClass(vue.unref(r).e("trigger")),onBlur:vue.unref(m),onClick:vue.unref(h),onContextmenu:vue.unref(_),onFocus:vue.unref(y),onMouseenter:vue.unref(c),onMouseleave:vue.unref(p),onKeydown:vue.unref(b)},{default:vue.withCtx(()=>[vue.renderSlot(g.$slots,"default")]),_:3},8,["id","virtual-ref","open","virtual-triggering","class","onBlur","onClick","onContextmenu","onFocus","onMouseenter","onMouseleave","onKeydown"]))}});var ElTooltipTrigger=_export_sfc(_sfc_main$I,[["__file","trigger.vue"]]);const _sfc_main$H=vue.defineComponent({__name:"teleport",props:teleportProps,setup(e){return(t,n)=>t.disabled?vue.renderSlot(t.$slots,"default",{key:0}):(vue.openBlock(),vue.createBlock(vue.Teleport,{key:1,to:t.to},[vue.renderSlot(t.$slots,"default")],8,["to"]))}});var Teleport=_export_sfc(_sfc_main$H,[["__file","teleport.vue"]]);const ElTeleport=withInstall(Teleport),usePopperContainerId=()=>{const e=useGetDerivedNamespace(),t=useIdInjection(),n=vue.computed(()=>`${e.value}-popper-container-${t.prefix}`),r=vue.computed(()=>`#${n.value}`);return{id:n,selector:r}},createContainer=e=>{const t=document.createElement("div");return t.id=e,document.body.appendChild(t),t},usePopperContainer=()=>{const{id:e,selector:t}=usePopperContainerId();return vue.onBeforeMount(()=>{isClient&&(process.env.NODE_ENV==="test"||!document.body.querySelector(t.value))&&createContainer(e.value)}),{id:e,selector:t}},__default__$c=vue.defineComponent({name:"ElTooltipContent",inheritAttrs:!1}),_sfc_main$G=vue.defineComponent({...__default__$c,props:useTooltipContentProps,setup(e,{expose:t}){const n=e,{selector:r}=usePopperContainerId(),a=useNamespace("tooltip"),s=vue.ref(),o=computedEager(()=>{var x;return(x=s.value)==null?void 0:x.popperContentRef});let i;const{controlled:u,id:l,open:v,trigger:d,onClose:f,onOpen:c,onShow:p,onHide:h,onBeforeShow:y,onBeforeHide:m}=vue.inject(TOOLTIP_INJECTION_KEY,void 0),_=vue.computed(()=>n.transition||`${a.namespace.value}-fade-in-linear`),b=vue.computed(()=>process.env.NODE_ENV==="test"&&!process.env.RUN_TEST_WITH_PERSISTENT?!0:n.persistent);vue.onBeforeUnmount(()=>{i==null||i()});const g=vue.computed(()=>vue.unref(b)?!0:vue.unref(v)),w=vue.computed(()=>n.disabled?!1:vue.unref(v)),k=vue.computed(()=>n.appendTo||r.value),A=vue.computed(()=>{var x;return(x=n.style)!=null?x:{}}),$=vue.ref(!0),M=()=>{h(),ie()&&tryFocus(document.body),$.value=!0},F=()=>{if(vue.unref(u))return!0},O=composeEventHandlers(F,()=>{n.enterable&&vue.unref(d)==="hover"&&c()}),D=composeEventHandlers(F,()=>{vue.unref(d)==="hover"&&f()}),j=()=>{var x,V;(V=(x=s.value)==null?void 0:x.updatePopper)==null||V.call(x),y==null||y()},z=()=>{m==null||m()},T=()=>{p()},L=()=>{n.virtualTriggering||f()},ie=x=>{var V;const le=(V=s.value)==null?void 0:V.popperContentRef,re=(x==null?void 0:x.relatedTarget)||document.activeElement;return le==null?void 0:le.contains(re)};return vue.watch(()=>vue.unref(v),x=>{x?($.value=!1,i=onClickOutside(o,()=>{if(vue.unref(u))return;vue.unref(d)!=="hover"&&f()})):i==null||i()},{flush:"post"}),vue.watch(()=>n.content,()=>{var x,V;(V=(x=s.value)==null?void 0:x.updatePopper)==null||V.call(x)}),t({contentRef:s,isFocusInsideContent:ie}),(x,V)=>(vue.openBlock(),vue.createBlock(vue.unref(ElTeleport),{disabled:!x.teleported,to:vue.unref(k)},{default:vue.withCtx(()=>[vue.createVNode(vue.Transition,{name:vue.unref(_),onAfterLeave:M,onBeforeEnter:j,onAfterEnter:T,onBeforeLeave:z},{default:vue.withCtx(()=>[vue.unref(g)?vue.withDirectives((vue.openBlock(),vue.createBlock(vue.unref(ElPopperContent),vue.mergeProps({key:0,id:vue.unref(l),ref_key:"contentRef",ref:s},x.$attrs,{"aria-label":x.ariaLabel,"aria-hidden":$.value,"boundaries-padding":x.boundariesPadding,"fallback-placements":x.fallbackPlacements,"gpu-acceleration":x.gpuAcceleration,offset:x.offset,placement:x.placement,"popper-options":x.popperOptions,"arrow-offset":x.arrowOffset,strategy:x.strategy,effect:x.effect,enterable:x.enterable,pure:x.pure,"popper-class":x.popperClass,"popper-style":[x.popperStyle,vue.unref(A)],"reference-el":x.referenceEl,"trigger-target-el":x.triggerTargetEl,visible:vue.unref(w),"z-index":x.zIndex,onMouseenter:vue.unref(O),onMouseleave:vue.unref(D),onBlur:L,onClose:vue.unref(f)}),{default:vue.withCtx(()=>[vue.renderSlot(x.$slots,"default")]),_:3},16,["id","aria-label","aria-hidden","boundaries-padding","fallback-placements","gpu-acceleration","offset","placement","popper-options","arrow-offset","strategy","effect","enterable","pure","popper-class","popper-style","reference-el","trigger-target-el","visible","z-index","onMouseenter","onMouseleave","onClose"])),[[vue.vShow,vue.unref(w)]]):vue.createCommentVNode("v-if",!0)]),_:3},8,["name"])]),_:3},8,["disabled","to"]))}});var ElTooltipContent=_export_sfc(_sfc_main$G,[["__file","content.vue"]]);const __default__$b=vue.defineComponent({name:"ElTooltip"}),_sfc_main$F=vue.defineComponent({...__default__$b,props:useTooltipProps,emits:tooltipEmits,setup(e,{expose:t,emit:n}){const r=e;usePopperContainer();const a=useNamespace("tooltip"),s=useId(),o=vue.ref(),i=vue.ref(),u=()=>{var b;const g=vue.unref(o);g&&((b=g.popperInstanceRef)==null||b.update())},l=vue.ref(!1),v=vue.ref(),{show:d,hide:f,hasUpdateHandler:c}=useTooltipModelToggle({indicator:l,toggleReason:v}),{onOpen:p,onClose:h}=useDelayedToggle({showAfter:vue.toRef(r,"showAfter"),hideAfter:vue.toRef(r,"hideAfter"),autoClose:vue.toRef(r,"autoClose"),open:d,close:f}),y=vue.computed(()=>isBoolean(r.visible)&&!c.value),m=vue.computed(()=>[a.b(),r.popperClass]);vue.provide(TOOLTIP_INJECTION_KEY,{controlled:y,id:s,open:vue.readonly(l),trigger:vue.toRef(r,"trigger"),onOpen:b=>{p(b)},onClose:b=>{h(b)},onToggle:b=>{vue.unref(l)?h(b):p(b)},onShow:()=>{n("show",v.value)},onHide:()=>{n("hide",v.value)},onBeforeShow:()=>{n("before-show",v.value)},onBeforeHide:()=>{n("before-hide",v.value)},updatePopper:u}),vue.watch(()=>r.disabled,b=>{b&&l.value&&(l.value=!1)});const _=b=>{var g;return(g=i.value)==null?void 0:g.isFocusInsideContent(b)};return vue.onDeactivated(()=>l.value&&f()),t({popperRef:o,contentRef:i,isFocusInsideContent:_,updatePopper:u,onOpen:p,onClose:h,hide:f}),(b,g)=>(vue.openBlock(),vue.createBlock(vue.unref(ElPopper),{ref_key:"popperRef",ref:o,role:b.role},{default:vue.withCtx(()=>[vue.createVNode(ElTooltipTrigger,{disabled:b.disabled,trigger:b.trigger,"trigger-keys":b.triggerKeys,"virtual-ref":b.virtualRef,"virtual-triggering":b.virtualTriggering},{default:vue.withCtx(()=>[b.$slots.default?vue.renderSlot(b.$slots,"default",{key:0}):vue.createCommentVNode("v-if",!0)]),_:3},8,["disabled","trigger","trigger-keys","virtual-ref","virtual-triggering"]),vue.createVNode(ElTooltipContent,{ref_key:"contentRef",ref:i,"aria-label":b.ariaLabel,"boundaries-padding":b.boundariesPadding,content:b.content,disabled:b.disabled,effect:b.effect,enterable:b.enterable,"fallback-placements":b.fallbackPlacements,"hide-after":b.hideAfter,"gpu-acceleration":b.gpuAcceleration,offset:b.offset,persistent:b.persistent,"popper-class":vue.unref(m),"popper-style":b.popperStyle,placement:b.placement,"popper-options":b.popperOptions,"arrow-offset":b.arrowOffset,pure:b.pure,"raw-content":b.rawContent,"reference-el":b.referenceEl,"trigger-target-el":b.triggerTargetEl,"show-after":b.showAfter,strategy:b.strategy,teleported:b.teleported,transition:b.transition,"virtual-triggering":b.virtualTriggering,"z-index":b.zIndex,"append-to":b.appendTo},{default:vue.withCtx(()=>[vue.renderSlot(b.$slots,"content",{},()=>[b.rawContent?(vue.openBlock(),vue.createElementBlock("span",{key:0,innerHTML:b.content},null,8,["innerHTML"])):(vue.openBlock(),vue.createElementBlock("span",{key:1},vue.toDisplayString(b.content),1))]),b.showArrow?(vue.openBlock(),vue.createBlock(vue.unref(ElPopperArrow),{key:0})):vue.createCommentVNode("v-if",!0)]),_:3},8,["aria-label","boundaries-padding","content","disabled","effect","enterable","fallback-placements","hide-after","gpu-acceleration","offset","persistent","popper-class","popper-style","placement","popper-options","arrow-offset","pure","raw-content","reference-el","trigger-target-el","show-after","strategy","teleported","transition","virtual-triggering","z-index","append-to"])]),_:3},8,["role"]))}});var Tooltip=_export_sfc(_sfc_main$F,[["__file","tooltip.vue"]]);const ElTooltip=withInstall(Tooltip),buttonGroupContextKey=Symbol("buttonGroupContextKey"),useDeprecated=({from:e,replacement:t,scope:n,version:r,ref:a,type:s="API"},o)=>{vue.watch(()=>vue.unref(o),i=>{i&&debugWarn(n,`[${s}] ${e} is about to be deprecated in version ${r}, please use ${t} instead.
|
|
21
21
|
For more detail, please visit: ${a}
|
|
22
|
-
`)},{immediate:!0})},useButton=(e,t)=>{useDeprecated({from:"type.text",replacement:"link",version:"3.0.0",scope:"props",ref:"https://element-plus.org/en-US/component/button.html#button-attributes"},vue.computed(()=>e.type==="text"));const n=vue.inject(buttonGroupContextKey,void 0),r=useGlobalConfig("button"),{form:a}=useFormItem(),s=useFormSize(vue.computed(()=>n==null?void 0:n.size)),o=useFormDisabled(),i=vue.ref(),u=vue.useSlots(),l=vue.computed(()=>{var y;return e.type||(n==null?void 0:n.type)||((y=r.value)==null?void 0:y.type)||""}),v=vue.computed(()=>{var y,m,_;return(_=(m=e.autoInsertSpace)!=null?m:(y=r.value)==null?void 0:y.autoInsertSpace)!=null?_:!1}),d=vue.computed(()=>{var y,m,_;return(_=(m=e.plain)!=null?m:(y=r.value)==null?void 0:y.plain)!=null?_:!1}),f=vue.computed(()=>{var y,m,_;return(_=(m=e.round)!=null?m:(y=r.value)==null?void 0:y.round)!=null?_:!1}),c=vue.computed(()=>e.tag==="button"?{ariaDisabled:o.value||e.loading,disabled:o.value||e.loading,autofocus:e.autofocus,type:e.nativeType}:{}),p=vue.computed(()=>{var y;const m=(y=u.default)==null?void 0:y.call(u);if(v.value&&(m==null?void 0:m.length)===1){const _=m[0];if((_==null?void 0:_.type)===vue.Text){const b=_.children;return new RegExp("^\\p{Unified_Ideograph}{2}$","u").test(b.trim())}}return!1});return{_disabled:o,_size:s,_type:l,_ref:i,_props:c,_plain:d,_round:f,shouldAddSpace:p,handleClick:y=>{if(o.value||e.loading){y.stopPropagation();return}e.nativeType==="reset"&&(a==null||a.resetFields()),t("click",y)}}},buttonTypes=["default","primary","success","warning","info","danger","text",""],buttonNativeTypes=["button","submit","reset"],buttonProps=buildProps({size:useSizeProp,disabled:Boolean,type:{type:String,values:buttonTypes,default:""},icon:{type:iconPropType},nativeType:{type:String,values:buttonNativeTypes,default:"button"},loading:Boolean,loadingIcon:{type:iconPropType,default:()=>loading_default},plain:{type:Boolean,default:void 0},text:Boolean,link:Boolean,bg:Boolean,autofocus:Boolean,round:{type:Boolean,default:void 0},circle:Boolean,color:String,dark:Boolean,autoInsertSpace:{type:Boolean,default:void 0},tag:{type:definePropType([String,Object]),default:"button"}}),buttonEmits={click:e=>e instanceof MouseEvent};function bound01(e,t){isOnePointZero(e)&&(e="100%");var n=isPercentage(e);return e=t===360?e:Math.min(t,Math.max(0,parseFloat(e))),n&&(e=parseInt(String(e*t),10)/100),Math.abs(e-t)<1e-6?1:(t===360?e=(e<0?e%t+t:e%t)/parseFloat(String(t)):e=e%t/parseFloat(String(t)),e)}function clamp01(e){return Math.min(1,Math.max(0,e))}function isOnePointZero(e){return typeof e=="string"&&e.indexOf(".")!==-1&&parseFloat(e)===1}function isPercentage(e){return typeof e=="string"&&e.indexOf("%")!==-1}function boundAlpha(e){return e=parseFloat(e),(isNaN(e)||e<0||e>1)&&(e=1),e}function convertToPercentage(e){return e<=1?"".concat(Number(e)*100,"%"):e}function pad2(e){return e.length===1?"0"+e:String(e)}function rgbToRgb(e,t,n){return{r:bound01(e,255)*255,g:bound01(t,255)*255,b:bound01(n,255)*255}}function rgbToHsl(e,t,n){e=bound01(e,255),t=bound01(t,255),n=bound01(n,255);var r=Math.max(e,t,n),a=Math.min(e,t,n),s=0,o=0,i=(r+a)/2;if(r===a)o=0,s=0;else{var u=r-a;switch(o=i>.5?u/(2-r-a):u/(r+a),r){case e:s=(t-n)/u+(t<n?6:0);break;case t:s=(n-e)/u+2;break;case n:s=(e-t)/u+4;break}s/=6}return{h:s,s:o,l:i}}function hue2rgb(e,t,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+(t-e)*(6*n):n<1/2?t:n<2/3?e+(t-e)*(2/3-n)*6:e}function hslToRgb(e,t,n){var r,a,s;if(e=bound01(e,360),t=bound01(t,100),n=bound01(n,100),t===0)a=n,s=n,r=n;else{var o=n<.5?n*(1+t):n+t-n*t,i=2*n-o;r=hue2rgb(i,o,e+1/3),a=hue2rgb(i,o,e),s=hue2rgb(i,o,e-1/3)}return{r:r*255,g:a*255,b:s*255}}function rgbToHsv(e,t,n){e=bound01(e,255),t=bound01(t,255),n=bound01(n,255);var r=Math.max(e,t,n),a=Math.min(e,t,n),s=0,o=r,i=r-a,u=r===0?0:i/r;if(r===a)s=0;else{switch(r){case e:s=(t-n)/i+(t<n?6:0);break;case t:s=(n-e)/i+2;break;case n:s=(e-t)/i+4;break}s/=6}return{h:s,s:u,v:o}}function hsvToRgb(e,t,n){e=bound01(e,360)*6,t=bound01(t,100),n=bound01(n,100);var r=Math.floor(e),a=e-r,s=n*(1-t),o=n*(1-a*t),i=n*(1-(1-a)*t),u=r%6,l=[n,o,s,s,i,n][u],v=[i,n,n,o,s,s][u],d=[s,s,i,n,n,o][u];return{r:l*255,g:v*255,b:d*255}}function rgbToHex(e,t,n,r){var a=[pad2(Math.round(e).toString(16)),pad2(Math.round(t).toString(16)),pad2(Math.round(n).toString(16))];return r&&a[0].startsWith(a[0].charAt(1))&&a[1].startsWith(a[1].charAt(1))&&a[2].startsWith(a[2].charAt(1))?a[0].charAt(0)+a[1].charAt(0)+a[2].charAt(0):a.join("")}function rgbaToHex(e,t,n,r,a){var s=[pad2(Math.round(e).toString(16)),pad2(Math.round(t).toString(16)),pad2(Math.round(n).toString(16)),pad2(convertDecimalToHex(r))];return a&&s[0].startsWith(s[0].charAt(1))&&s[1].startsWith(s[1].charAt(1))&&s[2].startsWith(s[2].charAt(1))&&s[3].startsWith(s[3].charAt(1))?s[0].charAt(0)+s[1].charAt(0)+s[2].charAt(0)+s[3].charAt(0):s.join("")}function convertDecimalToHex(e){return Math.round(parseFloat(e)*255).toString(16)}function convertHexToDecimal(e){return parseIntFromHex(e)/255}function parseIntFromHex(e){return parseInt(e,16)}function numberInputToObject(e){return{r:e>>16,g:(e&65280)>>8,b:e&255}}var names={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",goldenrod:"#daa520",gold:"#ffd700",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavenderblush:"#fff0f5",lavender:"#e6e6fa",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"};function inputToRGB(e){var t={r:0,g:0,b:0},n=1,r=null,a=null,s=null,o=!1,i=!1;return typeof e=="string"&&(e=stringInputToObject(e)),typeof e=="object"&&(isValidCSSUnit(e.r)&&isValidCSSUnit(e.g)&&isValidCSSUnit(e.b)?(t=rgbToRgb(e.r,e.g,e.b),o=!0,i=String(e.r).substr(-1)==="%"?"prgb":"rgb"):isValidCSSUnit(e.h)&&isValidCSSUnit(e.s)&&isValidCSSUnit(e.v)?(r=convertToPercentage(e.s),a=convertToPercentage(e.v),t=hsvToRgb(e.h,r,a),o=!0,i="hsv"):isValidCSSUnit(e.h)&&isValidCSSUnit(e.s)&&isValidCSSUnit(e.l)&&(r=convertToPercentage(e.s),s=convertToPercentage(e.l),t=hslToRgb(e.h,r,s),o=!0,i="hsl"),Object.prototype.hasOwnProperty.call(e,"a")&&(n=e.a)),n=boundAlpha(n),{ok:o,format:e.format||i,r:Math.min(255,Math.max(t.r,0)),g:Math.min(255,Math.max(t.g,0)),b:Math.min(255,Math.max(t.b,0)),a:n}}var CSS_INTEGER="[-\\+]?\\d+%?",CSS_NUMBER="[-\\+]?\\d*\\.\\d+%?",CSS_UNIT="(?:".concat(CSS_NUMBER,")|(?:").concat(CSS_INTEGER,")"),PERMISSIVE_MATCH3="[\\s|\\(]+(".concat(CSS_UNIT,")[,|\\s]+(").concat(CSS_UNIT,")[,|\\s]+(").concat(CSS_UNIT,")\\s*\\)?"),PERMISSIVE_MATCH4="[\\s|\\(]+(".concat(CSS_UNIT,")[,|\\s]+(").concat(CSS_UNIT,")[,|\\s]+(").concat(CSS_UNIT,")[,|\\s]+(").concat(CSS_UNIT,")\\s*\\)?"),matchers={CSS_UNIT:new RegExp(CSS_UNIT),rgb:new RegExp("rgb"+PERMISSIVE_MATCH3),rgba:new RegExp("rgba"+PERMISSIVE_MATCH4),hsl:new RegExp("hsl"+PERMISSIVE_MATCH3),hsla:new RegExp("hsla"+PERMISSIVE_MATCH4),hsv:new RegExp("hsv"+PERMISSIVE_MATCH3),hsva:new RegExp("hsva"+PERMISSIVE_MATCH4),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/};function stringInputToObject(e){if(e=e.trim().toLowerCase(),e.length===0)return!1;var t=!1;if(names[e])e=names[e],t=!0;else if(e==="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var n=matchers.rgb.exec(e);return n?{r:n[1],g:n[2],b:n[3]}:(n=matchers.rgba.exec(e),n?{r:n[1],g:n[2],b:n[3],a:n[4]}:(n=matchers.hsl.exec(e),n?{h:n[1],s:n[2],l:n[3]}:(n=matchers.hsla.exec(e),n?{h:n[1],s:n[2],l:n[3],a:n[4]}:(n=matchers.hsv.exec(e),n?{h:n[1],s:n[2],v:n[3]}:(n=matchers.hsva.exec(e),n?{h:n[1],s:n[2],v:n[3],a:n[4]}:(n=matchers.hex8.exec(e),n?{r:parseIntFromHex(n[1]),g:parseIntFromHex(n[2]),b:parseIntFromHex(n[3]),a:convertHexToDecimal(n[4]),format:t?"name":"hex8"}:(n=matchers.hex6.exec(e),n?{r:parseIntFromHex(n[1]),g:parseIntFromHex(n[2]),b:parseIntFromHex(n[3]),format:t?"name":"hex"}:(n=matchers.hex4.exec(e),n?{r:parseIntFromHex(n[1]+n[1]),g:parseIntFromHex(n[2]+n[2]),b:parseIntFromHex(n[3]+n[3]),a:convertHexToDecimal(n[4]+n[4]),format:t?"name":"hex8"}:(n=matchers.hex3.exec(e),n?{r:parseIntFromHex(n[1]+n[1]),g:parseIntFromHex(n[2]+n[2]),b:parseIntFromHex(n[3]+n[3]),format:t?"name":"hex"}:!1)))))))))}function isValidCSSUnit(e){return!!matchers.CSS_UNIT.exec(String(e))}var TinyColor=function(){function e(t,n){t===void 0&&(t=""),n===void 0&&(n={});var r;if(t instanceof e)return t;typeof t=="number"&&(t=numberInputToObject(t)),this.originalInput=t;var a=inputToRGB(t);this.originalInput=t,this.r=a.r,this.g=a.g,this.b=a.b,this.a=a.a,this.roundA=Math.round(100*this.a)/100,this.format=(r=n.format)!==null&&r!==void 0?r:a.format,this.gradientType=n.gradientType,this.r<1&&(this.r=Math.round(this.r)),this.g<1&&(this.g=Math.round(this.g)),this.b<1&&(this.b=Math.round(this.b)),this.isValid=a.ok}return e.prototype.isDark=function(){return this.getBrightness()<128},e.prototype.isLight=function(){return!this.isDark()},e.prototype.getBrightness=function(){var t=this.toRgb();return(t.r*299+t.g*587+t.b*114)/1e3},e.prototype.getLuminance=function(){var t=this.toRgb(),n,r,a,s=t.r/255,o=t.g/255,i=t.b/255;return s<=.03928?n=s/12.92:n=Math.pow((s+.055)/1.055,2.4),o<=.03928?r=o/12.92:r=Math.pow((o+.055)/1.055,2.4),i<=.03928?a=i/12.92:a=Math.pow((i+.055)/1.055,2.4),.2126*n+.7152*r+.0722*a},e.prototype.getAlpha=function(){return this.a},e.prototype.setAlpha=function(t){return this.a=boundAlpha(t),this.roundA=Math.round(100*this.a)/100,this},e.prototype.isMonochrome=function(){var t=this.toHsl().s;return t===0},e.prototype.toHsv=function(){var t=rgbToHsv(this.r,this.g,this.b);return{h:t.h*360,s:t.s,v:t.v,a:this.a}},e.prototype.toHsvString=function(){var t=rgbToHsv(this.r,this.g,this.b),n=Math.round(t.h*360),r=Math.round(t.s*100),a=Math.round(t.v*100);return this.a===1?"hsv(".concat(n,", ").concat(r,"%, ").concat(a,"%)"):"hsva(".concat(n,", ").concat(r,"%, ").concat(a,"%, ").concat(this.roundA,")")},e.prototype.toHsl=function(){var t=rgbToHsl(this.r,this.g,this.b);return{h:t.h*360,s:t.s,l:t.l,a:this.a}},e.prototype.toHslString=function(){var t=rgbToHsl(this.r,this.g,this.b),n=Math.round(t.h*360),r=Math.round(t.s*100),a=Math.round(t.l*100);return this.a===1?"hsl(".concat(n,", ").concat(r,"%, ").concat(a,"%)"):"hsla(".concat(n,", ").concat(r,"%, ").concat(a,"%, ").concat(this.roundA,")")},e.prototype.toHex=function(t){return t===void 0&&(t=!1),rgbToHex(this.r,this.g,this.b,t)},e.prototype.toHexString=function(t){return t===void 0&&(t=!1),"#"+this.toHex(t)},e.prototype.toHex8=function(t){return t===void 0&&(t=!1),rgbaToHex(this.r,this.g,this.b,this.a,t)},e.prototype.toHex8String=function(t){return t===void 0&&(t=!1),"#"+this.toHex8(t)},e.prototype.toHexShortString=function(t){return t===void 0&&(t=!1),this.a===1?this.toHexString(t):this.toHex8String(t)},e.prototype.toRgb=function(){return{r:Math.round(this.r),g:Math.round(this.g),b:Math.round(this.b),a:this.a}},e.prototype.toRgbString=function(){var t=Math.round(this.r),n=Math.round(this.g),r=Math.round(this.b);return this.a===1?"rgb(".concat(t,", ").concat(n,", ").concat(r,")"):"rgba(".concat(t,", ").concat(n,", ").concat(r,", ").concat(this.roundA,")")},e.prototype.toPercentageRgb=function(){var t=function(n){return"".concat(Math.round(bound01(n,255)*100),"%")};return{r:t(this.r),g:t(this.g),b:t(this.b),a:this.a}},e.prototype.toPercentageRgbString=function(){var t=function(n){return Math.round(bound01(n,255)*100)};return this.a===1?"rgb(".concat(t(this.r),"%, ").concat(t(this.g),"%, ").concat(t(this.b),"%)"):"rgba(".concat(t(this.r),"%, ").concat(t(this.g),"%, ").concat(t(this.b),"%, ").concat(this.roundA,")")},e.prototype.toName=function(){if(this.a===0)return"transparent";if(this.a<1)return!1;for(var t="#"+rgbToHex(this.r,this.g,this.b,!1),n=0,r=Object.entries(names);n<r.length;n++){var a=r[n],s=a[0],o=a[1];if(t===o)return s}return!1},e.prototype.toString=function(t){var n=!!t;t=t??this.format;var r=!1,a=this.a<1&&this.a>=0,s=!n&&a&&(t.startsWith("hex")||t==="name");return s?t==="name"&&this.a===0?this.toName():this.toRgbString():(t==="rgb"&&(r=this.toRgbString()),t==="prgb"&&(r=this.toPercentageRgbString()),(t==="hex"||t==="hex6")&&(r=this.toHexString()),t==="hex3"&&(r=this.toHexString(!0)),t==="hex4"&&(r=this.toHex8String(!0)),t==="hex8"&&(r=this.toHex8String()),t==="name"&&(r=this.toName()),t==="hsl"&&(r=this.toHslString()),t==="hsv"&&(r=this.toHsvString()),r||this.toHexString())},e.prototype.toNumber=function(){return(Math.round(this.r)<<16)+(Math.round(this.g)<<8)+Math.round(this.b)},e.prototype.clone=function(){return new e(this.toString())},e.prototype.lighten=function(t){t===void 0&&(t=10);var n=this.toHsl();return n.l+=t/100,n.l=clamp01(n.l),new e(n)},e.prototype.brighten=function(t){t===void 0&&(t=10);var n=this.toRgb();return n.r=Math.max(0,Math.min(255,n.r-Math.round(255*-(t/100)))),n.g=Math.max(0,Math.min(255,n.g-Math.round(255*-(t/100)))),n.b=Math.max(0,Math.min(255,n.b-Math.round(255*-(t/100)))),new e(n)},e.prototype.darken=function(t){t===void 0&&(t=10);var n=this.toHsl();return n.l-=t/100,n.l=clamp01(n.l),new e(n)},e.prototype.tint=function(t){return t===void 0&&(t=10),this.mix("white",t)},e.prototype.shade=function(t){return t===void 0&&(t=10),this.mix("black",t)},e.prototype.desaturate=function(t){t===void 0&&(t=10);var n=this.toHsl();return n.s-=t/100,n.s=clamp01(n.s),new e(n)},e.prototype.saturate=function(t){t===void 0&&(t=10);var n=this.toHsl();return n.s+=t/100,n.s=clamp01(n.s),new e(n)},e.prototype.greyscale=function(){return this.desaturate(100)},e.prototype.spin=function(t){var n=this.toHsl(),r=(n.h+t)%360;return n.h=r<0?360+r:r,new e(n)},e.prototype.mix=function(t,n){n===void 0&&(n=50);var r=this.toRgb(),a=new e(t).toRgb(),s=n/100,o={r:(a.r-r.r)*s+r.r,g:(a.g-r.g)*s+r.g,b:(a.b-r.b)*s+r.b,a:(a.a-r.a)*s+r.a};return new e(o)},e.prototype.analogous=function(t,n){t===void 0&&(t=6),n===void 0&&(n=30);var r=this.toHsl(),a=360/n,s=[this];for(r.h=(r.h-(a*t>>1)+720)%360;--t;)r.h=(r.h+a)%360,s.push(new e(r));return s},e.prototype.complement=function(){var t=this.toHsl();return t.h=(t.h+180)%360,new e(t)},e.prototype.monochromatic=function(t){t===void 0&&(t=6);for(var n=this.toHsv(),r=n.h,a=n.s,s=n.v,o=[],i=1/t;t--;)o.push(new e({h:r,s:a,v:s})),s=(s+i)%1;return o},e.prototype.splitcomplement=function(){var t=this.toHsl(),n=t.h;return[this,new e({h:(n+72)%360,s:t.s,l:t.l}),new e({h:(n+216)%360,s:t.s,l:t.l})]},e.prototype.onBackground=function(t){var n=this.toRgb(),r=new e(t).toRgb(),a=n.a+r.a*(1-n.a);return new e({r:(n.r*n.a+r.r*r.a*(1-n.a))/a,g:(n.g*n.a+r.g*r.a*(1-n.a))/a,b:(n.b*n.a+r.b*r.a*(1-n.a))/a,a})},e.prototype.triad=function(){return this.polyad(3)},e.prototype.tetrad=function(){return this.polyad(4)},e.prototype.polyad=function(t){for(var n=this.toHsl(),r=n.h,a=[this],s=360/t,o=1;o<t;o++)a.push(new e({h:(r+o*s)%360,s:n.s,l:n.l}));return a},e.prototype.equals=function(t){return this.toRgbString()===new e(t).toRgbString()},e}();function darken(e,t=20){return e.mix("#141414",t).toString()}function useButtonCustomStyle(e){const t=useFormDisabled(),n=useNamespace("button");return vue.computed(()=>{let r={},a=e.color;if(a){const s=a.match(/var\((.*?)\)/);s&&(a=window.getComputedStyle(window.document.documentElement).getPropertyValue(s[1]));const o=new TinyColor(a),i=e.dark?o.tint(20).toString():darken(o,20);if(e.plain)r=n.cssVarBlock({"bg-color":e.dark?darken(o,90):o.tint(90).toString(),"text-color":a,"border-color":e.dark?darken(o,50):o.tint(50).toString(),"hover-text-color":`var(${n.cssVarName("color-white")})`,"hover-bg-color":a,"hover-border-color":a,"active-bg-color":i,"active-text-color":`var(${n.cssVarName("color-white")})`,"active-border-color":i}),t.value&&(r[n.cssVarBlockName("disabled-bg-color")]=e.dark?darken(o,90):o.tint(90).toString(),r[n.cssVarBlockName("disabled-text-color")]=e.dark?darken(o,50):o.tint(50).toString(),r[n.cssVarBlockName("disabled-border-color")]=e.dark?darken(o,80):o.tint(80).toString());else{const u=e.dark?darken(o,30):o.tint(30).toString(),l=o.isDark()?`var(${n.cssVarName("color-white")})`:`var(${n.cssVarName("color-black")})`;if(r=n.cssVarBlock({"bg-color":a,"text-color":l,"border-color":a,"hover-bg-color":u,"hover-text-color":l,"hover-border-color":u,"active-bg-color":i,"active-border-color":i}),t.value){const v=e.dark?darken(o,50):o.tint(50).toString();r[n.cssVarBlockName("disabled-bg-color")]=v,r[n.cssVarBlockName("disabled-text-color")]=e.dark?"rgba(255, 255, 255, 0.5)":`var(${n.cssVarName("color-white")})`,r[n.cssVarBlockName("disabled-border-color")]=v}}}return r})}const __default__$a=vue.defineComponent({name:"ElButton"}),_sfc_main$E=vue.defineComponent({...__default__$a,props:buttonProps,emits:buttonEmits,setup(e,{expose:t,emit:n}){const r=e,a=useButtonCustomStyle(r),s=useNamespace("button"),{_ref:o,_size:i,_type:u,_disabled:l,_props:v,_plain:d,_round:f,shouldAddSpace:c,handleClick:p}=useButton(r,n),h=vue.computed(()=>[s.b(),s.m(u.value),s.m(i.value),s.is("disabled",l.value),s.is("loading",r.loading),s.is("plain",d.value),s.is("round",f.value),s.is("circle",r.circle),s.is("text",r.text),s.is("link",r.link),s.is("has-bg",r.bg)]);return t({ref:o,size:i,type:u,disabled:l,shouldAddSpace:c}),(y,m)=>(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(y.tag),vue.mergeProps({ref_key:"_ref",ref:o},vue.unref(v),{class:vue.unref(h),style:vue.unref(a),onClick:vue.unref(p)}),{default:vue.withCtx(()=>[y.loading?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[y.$slots.loading?vue.renderSlot(y.$slots,"loading",{key:0}):(vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{key:1,class:vue.normalizeClass(vue.unref(s).is("loading"))},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(y.loadingIcon)))]),_:1},8,["class"]))],64)):y.icon||y.$slots.icon?(vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{key:1},{default:vue.withCtx(()=>[y.icon?(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(y.icon),{key:0})):vue.renderSlot(y.$slots,"icon",{key:1})]),_:3})):vue.createCommentVNode("v-if",!0),y.$slots.default?(vue.openBlock(),vue.createElementBlock("span",{key:2,class:vue.normalizeClass({[vue.unref(s).em("text","expand")]:vue.unref(c)})},[vue.renderSlot(y.$slots,"default")],2)):vue.createCommentVNode("v-if",!0)]),_:3},16,["class","style","onClick"]))}});var Button=_export_sfc(_sfc_main$E,[["__file","button.vue"]]);const buttonGroupProps={size:buttonProps.size,type:buttonProps.type},__default__$9=vue.defineComponent({name:"ElButtonGroup"}),_sfc_main$D=vue.defineComponent({...__default__$9,props:buttonGroupProps,setup(e){const t=e;vue.provide(buttonGroupContextKey,vue.reactive({size:vue.toRef(t,"size"),type:vue.toRef(t,"type")}));const n=useNamespace("button");return(r,a)=>(vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(vue.unref(n).b("group"))},[vue.renderSlot(r.$slots,"default")],2))}});var ButtonGroup=_export_sfc(_sfc_main$D,[["__file","button-group.vue"]]);const ElButton=withInstall(Button,{ButtonGroup}),ElButtonGroup=withNoopInstall(ButtonGroup);var dayjs_min$1={exports:{}},dayjs_min=dayjs_min$1.exports,hasRequiredDayjs_min;function requireDayjs_min(){return hasRequiredDayjs_min||(hasRequiredDayjs_min=1,function(e,t){(function(n,r){e.exports=r()})(dayjs_min,function(){var n=1e3,r=6e4,a=36e5,s="millisecond",o="second",i="minute",u="hour",l="day",v="week",d="month",f="quarter",c="year",p="date",h="Invalid Date",y=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,m=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,_={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(z){var T=["th","st","nd","rd"],L=z%100;return"["+z+(T[(L-20)%10]||T[L]||T[0])+"]"}},b=function(z,T,L){var ie=String(z);return!ie||ie.length>=T?z:""+Array(T+1-ie.length).join(L)+z},g={s:b,z:function(z){var T=-z.utcOffset(),L=Math.abs(T),ie=Math.floor(L/60),x=L%60;return(T<=0?"+":"-")+b(ie,2,"0")+":"+b(x,2,"0")},m:function z(T,L){if(T.date()<L.date())return-z(L,T);var ie=12*(L.year()-T.year())+(L.month()-T.month()),x=T.clone().add(ie,d),V=L-x<0,le=T.clone().add(ie+(V?-1:1),d);return+(-(ie+(L-x)/(V?x-le:le-x))||0)},a:function(z){return z<0?Math.ceil(z)||0:Math.floor(z)},p:function(z){return{M:d,y:c,w:v,d:l,D:p,h:u,m:i,s:o,ms:s,Q:f}[z]||String(z||"").toLowerCase().replace(/s$/,"")},u:function(z){return z===void 0}},w="en",k={};k[w]=_;var A="$isDayjsObject",$=function(z){return z instanceof D||!(!z||!z[A])},M=function z(T,L,ie){var x;if(!T)return w;if(typeof T=="string"){var V=T.toLowerCase();k[V]&&(x=V),L&&(k[V]=L,x=V);var le=T.split("-");if(!x&&le.length>1)return z(le[0])}else{var Y=T.name;k[Y]=T,x=Y}return!ie&&x&&(w=x),x||!ie&&w},F=function(z,T){if($(z))return z.clone();var L=typeof T=="object"?T:{};return L.date=z,L.args=arguments,new D(L)},O=g;O.l=M,O.i=$,O.w=function(z,T){return F(z,{locale:T.$L,utc:T.$u,x:T.$x,$offset:T.$offset})};var D=function(){function z(L){this.$L=M(L.locale,null,!0),this.parse(L),this.$x=this.$x||L.x||{},this[A]=!0}var T=z.prototype;return T.parse=function(L){this.$d=function(ie){var x=ie.date,V=ie.utc;if(x===null)return new Date(NaN);if(O.u(x))return new Date;if(x instanceof Date)return new Date(x);if(typeof x=="string"&&!/Z$/i.test(x)){var le=x.match(y);if(le){var Y=le[2]-1||0,re=(le[7]||"0").substring(0,3);return V?new Date(Date.UTC(le[1],Y,le[3]||1,le[4]||0,le[5]||0,le[6]||0,re)):new Date(le[1],Y,le[3]||1,le[4]||0,le[5]||0,le[6]||0,re)}}return new Date(x)}(L),this.init()},T.init=function(){var L=this.$d;this.$y=L.getFullYear(),this.$M=L.getMonth(),this.$D=L.getDate(),this.$W=L.getDay(),this.$H=L.getHours(),this.$m=L.getMinutes(),this.$s=L.getSeconds(),this.$ms=L.getMilliseconds()},T.$utils=function(){return O},T.isValid=function(){return this.$d.toString()!==h},T.isSame=function(L,ie){var x=F(L);return this.startOf(ie)<=x&&x<=this.endOf(ie)},T.isAfter=function(L,ie){return F(L)<this.startOf(ie)},T.isBefore=function(L,ie){return this.endOf(ie)<F(L)},T.$g=function(L,ie,x){return O.u(L)?this[ie]:this.set(x,L)},T.unix=function(){return Math.floor(this.valueOf()/1e3)},T.valueOf=function(){return this.$d.getTime()},T.startOf=function(L,ie){var x=this,V=!!O.u(ie)||ie,le=O.p(L),Y=function(ze,Et){var Cn=O.w(x.$u?Date.UTC(x.$y,Et,ze):new Date(x.$y,Et,ze),x);return V?Cn:Cn.endOf(l)},re=function(ze,Et){return O.w(x.toDate()[ze].apply(x.toDate("s"),(V?[0,0,0,0]:[23,59,59,999]).slice(Et)),x)},he=this.$W,Ce=this.$M,$e=this.$D,Ne="set"+(this.$u?"UTC":"");switch(le){case c:return V?Y(1,0):Y(31,11);case d:return V?Y(1,Ce):Y(0,Ce+1);case v:var Pt=this.$locale().weekStart||0,_e=(he<Pt?he+7:he)-Pt;return Y(V?$e-_e:$e+(6-_e),Ce);case l:case p:return re(Ne+"Hours",0);case u:return re(Ne+"Minutes",1);case i:return re(Ne+"Seconds",2);case o:return re(Ne+"Milliseconds",3);default:return this.clone()}},T.endOf=function(L){return this.startOf(L,!1)},T.$set=function(L,ie){var x,V=O.p(L),le="set"+(this.$u?"UTC":""),Y=(x={},x[l]=le+"Date",x[p]=le+"Date",x[d]=le+"Month",x[c]=le+"FullYear",x[u]=le+"Hours",x[i]=le+"Minutes",x[o]=le+"Seconds",x[s]=le+"Milliseconds",x)[V],re=V===l?this.$D+(ie-this.$W):ie;if(V===d||V===c){var he=this.clone().set(p,1);he.$d[Y](re),he.init(),this.$d=he.set(p,Math.min(this.$D,he.daysInMonth())).$d}else Y&&this.$d[Y](re);return this.init(),this},T.set=function(L,ie){return this.clone().$set(L,ie)},T.get=function(L){return this[O.p(L)]()},T.add=function(L,ie){var x,V=this;L=Number(L);var le=O.p(ie),Y=function(Ce){var $e=F(V);return O.w($e.date($e.date()+Math.round(Ce*L)),V)};if(le===d)return this.set(d,this.$M+L);if(le===c)return this.set(c,this.$y+L);if(le===l)return Y(1);if(le===v)return Y(7);var re=(x={},x[i]=r,x[u]=a,x[o]=n,x)[le]||1,he=this.$d.getTime()+L*re;return O.w(he,this)},T.subtract=function(L,ie){return this.add(-1*L,ie)},T.format=function(L){var ie=this,x=this.$locale();if(!this.isValid())return x.invalidDate||h;var V=L||"YYYY-MM-DDTHH:mm:ssZ",le=O.z(this),Y=this.$H,re=this.$m,he=this.$M,Ce=x.weekdays,$e=x.months,Ne=x.meridiem,Pt=function(Et,Cn,kn,In){return Et&&(Et[Cn]||Et(ie,V))||kn[Cn].slice(0,In)},_e=function(Et){return O.s(Y%12||12,Et,"0")},ze=Ne||function(Et,Cn,kn){var In=Et<12?"AM":"PM";return kn?In.toLowerCase():In};return V.replace(m,function(Et,Cn){return Cn||function(kn){switch(kn){case"YY":return String(ie.$y).slice(-2);case"YYYY":return O.s(ie.$y,4,"0");case"M":return he+1;case"MM":return O.s(he+1,2,"0");case"MMM":return Pt(x.monthsShort,he,$e,3);case"MMMM":return Pt($e,he);case"D":return ie.$D;case"DD":return O.s(ie.$D,2,"0");case"d":return String(ie.$W);case"dd":return Pt(x.weekdaysMin,ie.$W,Ce,2);case"ddd":return Pt(x.weekdaysShort,ie.$W,Ce,3);case"dddd":return Ce[ie.$W];case"H":return String(Y);case"HH":return O.s(Y,2,"0");case"h":return _e(1);case"hh":return _e(2);case"a":return ze(Y,re,!0);case"A":return ze(Y,re,!1);case"m":return String(re);case"mm":return O.s(re,2,"0");case"s":return String(ie.$s);case"ss":return O.s(ie.$s,2,"0");case"SSS":return O.s(ie.$ms,3,"0");case"Z":return le}return null}(Et)||le.replace(":","")})},T.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},T.diff=function(L,ie,x){var V,le=this,Y=O.p(ie),re=F(L),he=(re.utcOffset()-this.utcOffset())*r,Ce=this-re,$e=function(){return O.m(le,re)};switch(Y){case c:V=$e()/12;break;case d:V=$e();break;case f:V=$e()/3;break;case v:V=(Ce-he)/6048e5;break;case l:V=(Ce-he)/864e5;break;case u:V=Ce/a;break;case i:V=Ce/r;break;case o:V=Ce/n;break;default:V=Ce}return x?V:O.a(V)},T.daysInMonth=function(){return this.endOf(d).$D},T.$locale=function(){return k[this.$L]},T.locale=function(L,ie){if(!L)return this.$L;var x=this.clone(),V=M(L,ie,!0);return V&&(x.$L=V),x},T.clone=function(){return O.w(this.$d,this)},T.toDate=function(){return new Date(this.valueOf())},T.toJSON=function(){return this.isValid()?this.toISOString():null},T.toISOString=function(){return this.$d.toISOString()},T.toString=function(){return this.$d.toUTCString()},z}(),j=D.prototype;return F.prototype=j,[["$ms",s],["$s",o],["$m",i],["$H",u],["$W",l],["$M",d],["$y",c],["$D",p]].forEach(function(z){j[z[1]]=function(T){return this.$g(T,z[0],z[1])}}),F.extend=function(z,T){return z.$i||(z(T,D,F),z.$i=!0),F},F.locale=M,F.isDayjs=$,F.unix=function(z){return F(1e3*z)},F.en=k[w],F.Ls=k,F.p={},F})}(dayjs_min$1)),dayjs_min$1.exports}var dayjs_minExports=requireDayjs_min();const dayjs=getDefaultExportFromCjs(dayjs_minExports),buildTimeList=(e,t)=>[e>0?e-1:void 0,e,e<t?e+1:void 0],rangeArr=e=>Array.from(Array.from({length:e}).keys()),extractDateFormat=e=>e.replace(/\W?m{1,2}|\W?ZZ/g,"").replace(/\W?h{1,2}|\W?s{1,3}|\W?a/gi,"").trim(),extractTimeFormat=e=>e.replace(/\W?D{1,2}|\W?Do|\W?d{1,4}|\W?M{1,4}|\W?Y{2,4}/g,"").trim(),dateEquals=function(e,t){const n=isDate(e),r=isDate(t);return n&&r?e.getTime()===t.getTime():!n&&!r?e===t:!1},valueEquals=function(e,t){const n=isArray$1(e),r=isArray$1(t);return n&&r?e.length!==t.length?!1:e.every((a,s)=>dateEquals(a,t[s])):!n&&!r?dateEquals(e,t):!1},parseDate=function(e,t,n){const r=isEmpty(t)||t==="x"?dayjs(e).locale(n):dayjs(e,t).locale(n);return r.isValid()?r:void 0},formatter=function(e,t,n){return isEmpty(t)?e:t==="x"?+e:dayjs(e).locale(n).format(t)},makeList=(e,t)=>{var n;const r=[],a=t==null?void 0:t();for(let s=0;s<e;s++)r.push((n=a==null?void 0:a.includes(s))!=null?n:!1);return r},dayOrDaysToDate=e=>isArray$1(e)?e.map(t=>t.toDate()):e.toDate();var localeData$2={exports:{}},localeData$1=localeData$2.exports,hasRequiredLocaleData;function requireLocaleData(){return hasRequiredLocaleData||(hasRequiredLocaleData=1,function(e,t){(function(n,r){e.exports=r()})(localeData$1,function(){return function(n,r,a){var s=r.prototype,o=function(d){return d&&(d.indexOf?d:d.s)},i=function(d,f,c,p,h){var y=d.name?d:d.$locale(),m=o(y[f]),_=o(y[c]),b=m||_.map(function(w){return w.slice(0,p)});if(!h)return b;var g=y.weekStart;return b.map(function(w,k){return b[(k+(g||0))%7]})},u=function(){return a.Ls[a.locale()]},l=function(d,f){return d.formats[f]||function(c){return c.replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(p,h,y){return h||y.slice(1)})}(d.formats[f.toUpperCase()])},v=function(){var d=this;return{months:function(f){return f?f.format("MMMM"):i(d,"months")},monthsShort:function(f){return f?f.format("MMM"):i(d,"monthsShort","months",3)},firstDayOfWeek:function(){return d.$locale().weekStart||0},weekdays:function(f){return f?f.format("dddd"):i(d,"weekdays")},weekdaysMin:function(f){return f?f.format("dd"):i(d,"weekdaysMin","weekdays",2)},weekdaysShort:function(f){return f?f.format("ddd"):i(d,"weekdaysShort","weekdays",3)},longDateFormat:function(f){return l(d.$locale(),f)},meridiem:this.$locale().meridiem,ordinal:this.$locale().ordinal}};s.localeData=function(){return v.bind(this)()},a.localeData=function(){var d=u();return{firstDayOfWeek:function(){return d.weekStart||0},weekdays:function(){return a.weekdays()},weekdaysShort:function(){return a.weekdaysShort()},weekdaysMin:function(){return a.weekdaysMin()},months:function(){return a.months()},monthsShort:function(){return a.monthsShort()},longDateFormat:function(f){return l(d,f)},meridiem:d.meridiem,ordinal:d.ordinal}},a.months=function(){return i(u(),"months")},a.monthsShort=function(){return i(u(),"monthsShort","months",3)},a.weekdays=function(d){return i(u(),"weekdays",null,null,d)},a.weekdaysShort=function(d){return i(u(),"weekdaysShort","weekdays",3,d)},a.weekdaysMin=function(d){return i(u(),"weekdaysMin","weekdays",2,d)}}})}(localeData$2)),localeData$2.exports}var localeDataExports=requireLocaleData();const localeData=getDefaultExportFromCjs(localeDataExports),datePickTypes=["year","years","month","months","date","dates","week","datetime","datetimerange","daterange","monthrange","yearrange"];var PatchFlags=(e=>(e[e.TEXT=1]="TEXT",e[e.CLASS=2]="CLASS",e[e.STYLE=4]="STYLE",e[e.PROPS=8]="PROPS",e[e.FULL_PROPS=16]="FULL_PROPS",e[e.HYDRATE_EVENTS=32]="HYDRATE_EVENTS",e[e.STABLE_FRAGMENT=64]="STABLE_FRAGMENT",e[e.KEYED_FRAGMENT=128]="KEYED_FRAGMENT",e[e.UNKEYED_FRAGMENT=256]="UNKEYED_FRAGMENT",e[e.NEED_PATCH=512]="NEED_PATCH",e[e.DYNAMIC_SLOTS=1024]="DYNAMIC_SLOTS",e[e.HOISTED=-1]="HOISTED",e[e.BAIL=-2]="BAIL",e))(PatchFlags||{});const flattedChildren=e=>{const t=isArray$1(e)?e:[e],n=[];return t.forEach(r=>{var a;isArray$1(r)?n.push(...flattedChildren(r)):vue.isVNode(r)&&((a=r.component)!=null&&a.subTree)?n.push(r,...flattedChildren(r.component.subTree)):vue.isVNode(r)&&isArray$1(r.children)?n.push(...flattedChildren(r.children)):vue.isVNode(r)&&r.shapeFlag===2?n.push(...flattedChildren(r.type())):n.push(r)}),n},escapeStringRegexp=(e="")=>e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d"),castArray=e=>!e&&e!==0?[]:isArray$1(e)?e:[e],tagProps=buildProps({type:{type:String,values:["primary","success","info","warning","danger"],default:"primary"},closable:Boolean,disableTransitions:Boolean,hit:Boolean,color:String,size:{type:String,values:componentSizes},effect:{type:String,values:["dark","light","plain"],default:"light"},round:Boolean}),tagEmits={close:e=>e instanceof MouseEvent,click:e=>e instanceof MouseEvent},__default__$8=vue.defineComponent({name:"ElTag"}),_sfc_main$C=vue.defineComponent({...__default__$8,props:tagProps,emits:tagEmits,setup(e,{emit:t}){const n=e,r=useFormSize(),a=useNamespace("tag"),s=vue.computed(()=>{const{type:l,hit:v,effect:d,closable:f,round:c}=n;return[a.b(),a.is("closable",f),a.m(l||"primary"),a.m(r.value),a.m(d),a.is("hit",v),a.is("round",c)]}),o=l=>{t("close",l)},i=l=>{t("click",l)},u=l=>{var v,d,f;(f=(d=(v=l==null?void 0:l.component)==null?void 0:v.subTree)==null?void 0:d.component)!=null&&f.bum&&(l.component.subTree.component.bum=null)};return(l,v)=>l.disableTransitions?(vue.openBlock(),vue.createElementBlock("span",{key:0,class:vue.normalizeClass(vue.unref(s)),style:vue.normalizeStyle({backgroundColor:l.color}),onClick:i},[vue.createElementVNode("span",{class:vue.normalizeClass(vue.unref(a).e("content"))},[vue.renderSlot(l.$slots,"default")],2),l.closable?(vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{key:0,class:vue.normalizeClass(vue.unref(a).e("close")),onClick:vue.withModifiers(o,["stop"])},{default:vue.withCtx(()=>[vue.createVNode(vue.unref(close_default))]),_:1},8,["class","onClick"])):vue.createCommentVNode("v-if",!0)],6)):(vue.openBlock(),vue.createBlock(vue.Transition,{key:1,name:`${vue.unref(a).namespace.value}-zoom-in-center`,appear:"",onVnodeMounted:u},{default:vue.withCtx(()=>[vue.createElementVNode("span",{class:vue.normalizeClass(vue.unref(s)),style:vue.normalizeStyle({backgroundColor:l.color}),onClick:i},[vue.createElementVNode("span",{class:vue.normalizeClass(vue.unref(a).e("content"))},[vue.renderSlot(l.$slots,"default")],2),l.closable?(vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{key:0,class:vue.normalizeClass(vue.unref(a).e("close")),onClick:vue.withModifiers(o,["stop"])},{default:vue.withCtx(()=>[vue.createVNode(vue.unref(close_default))]),_:1},8,["class","onClick"])):vue.createCommentVNode("v-if",!0)],6)]),_:3},8,["name"]))}});var Tag=_export_sfc(_sfc_main$C,[["__file","tag.vue"]]);const ElTag=withInstall(Tag),nodeList=new Map;if(isClient){let e;document.addEventListener("mousedown",t=>e=t),document.addEventListener("mouseup",t=>{if(e){for(const n of nodeList.values())for(const{documentHandler:r}of n)r(t,e);e=void 0}})}function createDocumentHandler(e,t){let n=[];return isArray$1(t.arg)?n=t.arg:isElement(t.arg)&&n.push(t.arg),function(r,a){const s=t.instance.popperRef,o=r.target,i=a==null?void 0:a.target,u=!t||!t.instance,l=!o||!i,v=e.contains(o)||e.contains(i),d=e===o,f=n.length&&n.some(p=>p==null?void 0:p.contains(o))||n.length&&n.includes(i),c=s&&(s.contains(o)||s.contains(i));u||l||v||d||f||c||t.value(r,a)}}const ClickOutside={beforeMount(e,t){nodeList.has(e)||nodeList.set(e,[]),nodeList.get(e).push({documentHandler:createDocumentHandler(e,t),bindingFn:t.value})},updated(e,t){nodeList.has(e)||nodeList.set(e,[]);const n=nodeList.get(e),r=n.findIndex(s=>s.bindingFn===t.oldValue),a={documentHandler:createDocumentHandler(e,t),bindingFn:t.value};r>=0?n.splice(r,1,a):n.push(a)},unmounted(e){nodeList.delete(e)}};var customParseFormat$2={exports:{}},customParseFormat$1=customParseFormat$2.exports,hasRequiredCustomParseFormat;function requireCustomParseFormat(){return hasRequiredCustomParseFormat||(hasRequiredCustomParseFormat=1,function(e,t){(function(n,r){e.exports=r()})(customParseFormat$1,function(){var n={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},r=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|Q|YYYY|YY?|ww?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,a=/\d/,s=/\d\d/,o=/\d\d?/,i=/\d*[^-_:/,()\s\d]+/,u={},l=function(y){return(y=+y)+(y>68?1900:2e3)},v=function(y){return function(m){this[y]=+m}},d=[/[+-]\d\d:?(\d\d)?|Z/,function(y){(this.zone||(this.zone={})).offset=function(m){if(!m||m==="Z")return 0;var _=m.match(/([+-]|\d\d)/g),b=60*_[1]+(+_[2]||0);return b===0?0:_[0]==="+"?-b:b}(y)}],f=function(y){var m=u[y];return m&&(m.indexOf?m:m.s.concat(m.f))},c=function(y,m){var _,b=u.meridiem;if(b){for(var g=1;g<=24;g+=1)if(y.indexOf(b(g,0,m))>-1){_=g>12;break}}else _=y===(m?"pm":"PM");return _},p={A:[i,function(y){this.afternoon=c(y,!1)}],a:[i,function(y){this.afternoon=c(y,!0)}],Q:[a,function(y){this.month=3*(y-1)+1}],S:[a,function(y){this.milliseconds=100*+y}],SS:[s,function(y){this.milliseconds=10*+y}],SSS:[/\d{3}/,function(y){this.milliseconds=+y}],s:[o,v("seconds")],ss:[o,v("seconds")],m:[o,v("minutes")],mm:[o,v("minutes")],H:[o,v("hours")],h:[o,v("hours")],HH:[o,v("hours")],hh:[o,v("hours")],D:[o,v("day")],DD:[s,v("day")],Do:[i,function(y){var m=u.ordinal,_=y.match(/\d+/);if(this.day=_[0],m)for(var b=1;b<=31;b+=1)m(b).replace(/\[|\]/g,"")===y&&(this.day=b)}],w:[o,v("week")],ww:[s,v("week")],M:[o,v("month")],MM:[s,v("month")],MMM:[i,function(y){var m=f("months"),_=(f("monthsShort")||m.map(function(b){return b.slice(0,3)})).indexOf(y)+1;if(_<1)throw new Error;this.month=_%12||_}],MMMM:[i,function(y){var m=f("months").indexOf(y)+1;if(m<1)throw new Error;this.month=m%12||m}],Y:[/[+-]?\d+/,v("year")],YY:[s,function(y){this.year=l(y)}],YYYY:[/\d{4}/,v("year")],Z:d,ZZ:d};function h(y){var m,_;m=y,_=u&&u.formats;for(var b=(y=m.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function(F,O,D){var j=D&&D.toUpperCase();return O||_[D]||n[D]||_[j].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(z,T,L){return T||L.slice(1)})})).match(r),g=b.length,w=0;w<g;w+=1){var k=b[w],A=p[k],$=A&&A[0],M=A&&A[1];b[w]=M?{regex:$,parser:M}:k.replace(/^\[|\]$/g,"")}return function(F){for(var O={},D=0,j=0;D<g;D+=1){var z=b[D];if(typeof z=="string")j+=z.length;else{var T=z.regex,L=z.parser,ie=F.slice(j),x=T.exec(ie)[0];L.call(O,x),F=F.replace(x,"")}}return function(V){var le=V.afternoon;if(le!==void 0){var Y=V.hours;le?Y<12&&(V.hours+=12):Y===12&&(V.hours=0),delete V.afternoon}}(O),O}}return function(y,m,_){_.p.customParseFormat=!0,y&&y.parseTwoDigitYear&&(l=y.parseTwoDigitYear);var b=m.prototype,g=b.parse;b.parse=function(w){var k=w.date,A=w.utc,$=w.args;this.$u=A;var M=$[1];if(typeof M=="string"){var F=$[2]===!0,O=$[3]===!0,D=F||O,j=$[2];O&&(j=$[2]),u=this.$locale(),!F&&j&&(u=_.Ls[j]),this.$d=function(ie,x,V,le){try{if(["x","X"].indexOf(x)>-1)return new Date((x==="X"?1e3:1)*ie);var Y=h(x)(ie),re=Y.year,he=Y.month,Ce=Y.day,$e=Y.hours,Ne=Y.minutes,Pt=Y.seconds,_e=Y.milliseconds,ze=Y.zone,Et=Y.week,Cn=new Date,kn=Ce||(re||he?1:Cn.getDate()),In=re||Cn.getFullYear(),Dn=0;re&&!he||(Dn=he>0?he-1:Cn.getMonth());var Mn,Ue=$e||0,xe=Ne||0,Dt=Pt||0,kt=_e||0;return ze?new Date(Date.UTC(In,Dn,kn,Ue,xe,Dt,kt+60*ze.offset*1e3)):V?new Date(Date.UTC(In,Dn,kn,Ue,xe,Dt,kt)):(Mn=new Date(In,Dn,kn,Ue,xe,Dt,kt),Et&&(Mn=le(Mn).week(Et).toDate()),Mn)}catch{return new Date("")}}(k,M,A,_),this.init(),j&&j!==!0&&(this.$L=this.locale(j).$L),D&&k!=this.format(M)&&(this.$d=new Date("")),u={}}else if(M instanceof Array)for(var z=M.length,T=1;T<=z;T+=1){$[1]=M[T-1];var L=_.apply(this,$);if(L.isValid()){this.$d=L.$d,this.$L=L.$L,this.init();break}T===z&&(this.$d=new Date(""))}else g.call(this,w)}}})}(customParseFormat$2)),customParseFormat$2.exports}var customParseFormatExports=requireCustomParseFormat();const customParseFormat=getDefaultExportFromCjs(customParseFormatExports);var advancedFormat$2={exports:{}},advancedFormat$1=advancedFormat$2.exports,hasRequiredAdvancedFormat;function requireAdvancedFormat(){return hasRequiredAdvancedFormat||(hasRequiredAdvancedFormat=1,function(e,t){(function(n,r){e.exports=r()})(advancedFormat$1,function(){return function(n,r){var a=r.prototype,s=a.format;a.format=function(o){var i=this,u=this.$locale();if(!this.isValid())return s.bind(this)(o);var l=this.$utils(),v=(o||"YYYY-MM-DDTHH:mm:ssZ").replace(/\[([^\]]+)]|Q|wo|ww|w|WW|W|zzz|z|gggg|GGGG|Do|X|x|k{1,2}|S/g,function(d){switch(d){case"Q":return Math.ceil((i.$M+1)/3);case"Do":return u.ordinal(i.$D);case"gggg":return i.weekYear();case"GGGG":return i.isoWeekYear();case"wo":return u.ordinal(i.week(),"W");case"w":case"ww":return l.s(i.week(),d==="w"?1:2,"0");case"W":case"WW":return l.s(i.isoWeek(),d==="W"?1:2,"0");case"k":case"kk":return l.s(String(i.$H===0?24:i.$H),d==="k"?1:2,"0");case"X":return Math.floor(i.$d.getTime()/1e3);case"x":return i.$d.getTime();case"z":return"["+i.offsetName()+"]";case"zzz":return"["+i.offsetName("long")+"]";default:return d}});return s.bind(this)(v)}}})}(advancedFormat$2)),advancedFormat$2.exports}var advancedFormatExports=requireAdvancedFormat();const advancedFormat=getDefaultExportFromCjs(advancedFormatExports);var weekOfYear$2={exports:{}},weekOfYear$1=weekOfYear$2.exports,hasRequiredWeekOfYear;function requireWeekOfYear(){return hasRequiredWeekOfYear||(hasRequiredWeekOfYear=1,function(e,t){(function(n,r){e.exports=r()})(weekOfYear$1,function(){var n="week",r="year";return function(a,s,o){var i=s.prototype;i.week=function(u){if(u===void 0&&(u=null),u!==null)return this.add(7*(u-this.week()),"day");var l=this.$locale().yearStart||1;if(this.month()===11&&this.date()>25){var v=o(this).startOf(r).add(1,r).date(l),d=o(this).endOf(n);if(v.isBefore(d))return 1}var f=o(this).startOf(r).date(l).startOf(n).subtract(1,"millisecond"),c=this.diff(f,n,!0);return c<0?o(this).startOf("week").week():Math.ceil(c)},i.weeks=function(u){return u===void 0&&(u=null),this.week(u)}}})}(weekOfYear$2)),weekOfYear$2.exports}var weekOfYearExports=requireWeekOfYear();const weekOfYear=getDefaultExportFromCjs(weekOfYearExports);var weekYear$2={exports:{}},weekYear$1=weekYear$2.exports,hasRequiredWeekYear;function requireWeekYear(){return hasRequiredWeekYear||(hasRequiredWeekYear=1,function(e,t){(function(n,r){e.exports=r()})(weekYear$1,function(){return function(n,r){r.prototype.weekYear=function(){var a=this.month(),s=this.week(),o=this.year();return s===1&&a===11?o+1:a===0&&s>=52?o-1:o}}})}(weekYear$2)),weekYear$2.exports}var weekYearExports=requireWeekYear();const weekYear=getDefaultExportFromCjs(weekYearExports);var dayOfYear$2={exports:{}},dayOfYear$1=dayOfYear$2.exports,hasRequiredDayOfYear;function requireDayOfYear(){return hasRequiredDayOfYear||(hasRequiredDayOfYear=1,function(e,t){(function(n,r){e.exports=r()})(dayOfYear$1,function(){return function(n,r,a){r.prototype.dayOfYear=function(s){var o=Math.round((a(this).startOf("day")-a(this).startOf("year"))/864e5)+1;return s==null?o:this.add(s-o,"day")}}})}(dayOfYear$2)),dayOfYear$2.exports}var dayOfYearExports=requireDayOfYear();const dayOfYear=getDefaultExportFromCjs(dayOfYearExports);var isSameOrAfter$2={exports:{}},isSameOrAfter$1=isSameOrAfter$2.exports,hasRequiredIsSameOrAfter;function requireIsSameOrAfter(){return hasRequiredIsSameOrAfter||(hasRequiredIsSameOrAfter=1,function(e,t){(function(n,r){e.exports=r()})(isSameOrAfter$1,function(){return function(n,r){r.prototype.isSameOrAfter=function(a,s){return this.isSame(a,s)||this.isAfter(a,s)}}})}(isSameOrAfter$2)),isSameOrAfter$2.exports}var isSameOrAfterExports=requireIsSameOrAfter();const isSameOrAfter=getDefaultExportFromCjs(isSameOrAfterExports);var isSameOrBefore$2={exports:{}},isSameOrBefore$1=isSameOrBefore$2.exports,hasRequiredIsSameOrBefore;function requireIsSameOrBefore(){return hasRequiredIsSameOrBefore||(hasRequiredIsSameOrBefore=1,function(e,t){(function(n,r){e.exports=r()})(isSameOrBefore$1,function(){return function(n,r){r.prototype.isSameOrBefore=function(a,s){return this.isSame(a,s)||this.isBefore(a,s)}}})}(isSameOrBefore$2)),isSameOrBefore$2.exports}var isSameOrBeforeExports=requireIsSameOrBefore();const isSameOrBefore=getDefaultExportFromCjs(isSameOrBeforeExports),timeUnits=["hours","minutes","seconds"],PICKER_BASE_INJECTION_KEY="EP_PICKER_BASE",PICKER_POPPER_OPTIONS_INJECTION_KEY="ElPopperOptions",DEFAULT_FORMATS_TIME="HH:mm:ss",DEFAULT_FORMATS_DATE="YYYY-MM-DD",DEFAULT_FORMATS_DATEPICKER={date:DEFAULT_FORMATS_DATE,dates:DEFAULT_FORMATS_DATE,week:"gggg[w]ww",year:"YYYY",years:"YYYY",month:"YYYY-MM",months:"YYYY-MM",datetime:`${DEFAULT_FORMATS_DATE} ${DEFAULT_FORMATS_TIME}`,monthrange:"YYYY-MM",yearrange:"YYYY",daterange:DEFAULT_FORMATS_DATE,datetimerange:`${DEFAULT_FORMATS_DATE} ${DEFAULT_FORMATS_TIME}`},disabledTimeListsProps=buildProps({disabledHours:{type:definePropType(Function)},disabledMinutes:{type:definePropType(Function)},disabledSeconds:{type:definePropType(Function)}}),timePanelSharedProps=buildProps({visible:Boolean,actualVisible:{type:Boolean,default:void 0},format:{type:String,default:""}}),timePickerDefaultProps=buildProps({id:{type:definePropType([Array,String])},name:{type:definePropType([Array,String])},popperClass:{type:String,default:""},format:String,valueFormat:String,dateFormat:String,timeFormat:String,type:{type:String,default:""},clearable:{type:Boolean,default:!0},clearIcon:{type:definePropType([String,Object]),default:circle_close_default},editable:{type:Boolean,default:!0},prefixIcon:{type:definePropType([String,Object]),default:""},size:useSizeProp,readonly:Boolean,disabled:Boolean,placeholder:{type:String,default:""},popperOptions:{type:definePropType(Object),default:()=>({})},modelValue:{type:definePropType([Date,Array,String,Number]),default:""},rangeSeparator:{type:String,default:"-"},startPlaceholder:String,endPlaceholder:String,defaultValue:{type:definePropType([Date,Array])},defaultTime:{type:definePropType([Date,Array])},isRange:Boolean,...disabledTimeListsProps,disabledDate:{type:Function},cellClassName:{type:Function},shortcuts:{type:Array,default:()=>[]},arrowControl:Boolean,tabindex:{type:definePropType([String,Number]),default:0},validateEvent:{type:Boolean,default:!0},unlinkPanels:Boolean,placement:{type:definePropType(String),values:Ee,default:"bottom"},fallbackPlacements:{type:definePropType(Array),default:["bottom","top","right","left"]},...useEmptyValuesProps,...useAriaProps(["ariaLabel"]),showNow:{type:Boolean,default:!0}}),timePickerRangeTriggerProps=buildProps({id:{type:definePropType(Array)},name:{type:definePropType(Array)},modelValue:{type:definePropType([Array,String])},startPlaceholder:String,endPlaceholder:String,disabled:Boolean}),__default__$7=vue.defineComponent({name:"PickerRangeTrigger",inheritAttrs:!1}),_sfc_main$B=vue.defineComponent({...__default__$7,props:timePickerRangeTriggerProps,emits:["mouseenter","mouseleave","click","touchstart","focus","blur","startInput","endInput","startChange","endChange"],setup(e,{expose:t,emit:n}){const r=useAttrs(),a=useNamespace("date"),s=useNamespace("range"),o=vue.ref(),i=vue.ref(),{wrapperRef:u,isFocused:l}=useFocusController(o),v=g=>{n("click",g)},d=g=>{n("mouseenter",g)},f=g=>{n("mouseleave",g)},c=g=>{n("mouseenter",g)},p=g=>{n("startInput",g)},h=g=>{n("endInput",g)},y=g=>{n("startChange",g)},m=g=>{n("endChange",g)};return t({focus:()=>{var g;(g=o.value)==null||g.focus()},blur:()=>{var g,w;(g=o.value)==null||g.blur(),(w=i.value)==null||w.blur()}}),(g,w)=>(vue.openBlock(),vue.createElementBlock("div",{ref_key:"wrapperRef",ref:u,class:vue.normalizeClass([vue.unref(a).is("active",vue.unref(l)),g.$attrs.class]),style:vue.normalizeStyle(g.$attrs.style),onClick:v,onMouseenter:d,onMouseleave:f,onTouchstartPassive:c},[vue.renderSlot(g.$slots,"prefix"),vue.createElementVNode("input",vue.mergeProps(vue.unref(r),{id:g.id&&g.id[0],ref_key:"inputRef",ref:o,name:g.name&&g.name[0],placeholder:g.startPlaceholder,value:g.modelValue&&g.modelValue[0],class:vue.unref(s).b("input"),disabled:g.disabled,onInput:p,onChange:y}),null,16,["id","name","placeholder","value","disabled"]),vue.renderSlot(g.$slots,"range-separator"),vue.createElementVNode("input",vue.mergeProps(vue.unref(r),{id:g.id&&g.id[1],ref_key:"endInputRef",ref:i,name:g.name&&g.name[1],placeholder:g.endPlaceholder,value:g.modelValue&&g.modelValue[1],class:vue.unref(s).b("input"),disabled:g.disabled,onInput:h,onChange:m}),null,16,["id","name","placeholder","value","disabled"]),vue.renderSlot(g.$slots,"suffix")],38))}});var PickerRangeTrigger=_export_sfc(_sfc_main$B,[["__file","picker-range-trigger.vue"]]);const __default__$6=vue.defineComponent({name:"Picker"}),_sfc_main$A=vue.defineComponent({...__default__$6,props:timePickerDefaultProps,emits:[UPDATE_MODEL_EVENT,CHANGE_EVENT,"focus","blur","clear","calendar-change","panel-change","visible-change","keydown"],setup(e,{expose:t,emit:n}){const r=e,a=vue.useAttrs(),{lang:s}=useLocale(),o=useNamespace("date"),i=useNamespace("input"),u=useNamespace("range"),{form:l,formItem:v}=useFormItem(),d=vue.inject(PICKER_POPPER_OPTIONS_INJECTION_KEY,{}),{valueOnClear:f}=useEmptyValues(r,null),c=vue.ref(),p=vue.ref(),h=vue.ref(!1),y=vue.ref(!1),m=vue.ref(null);let _=!1;const{isFocused:b,handleFocus:g,handleBlur:w}=useFocusController(p,{beforeFocus(){return r.readonly||V.value},afterFocus(){h.value=!0},beforeBlur(S){var ae;return!_&&((ae=c.value)==null?void 0:ae.isFocusInsideContent(S))},afterBlur(){_n(),h.value=!1,_=!1,r.validateEvent&&(v==null||v.validate("blur").catch(S=>debugWarn(S)))}}),k=vue.computed(()=>[o.b("editor"),o.bm("editor",r.type),i.e("wrapper"),o.is("disabled",V.value),o.is("active",h.value),u.b("editor"),Ue?u.bm("editor",Ue.value):"",a.class]),A=vue.computed(()=>[i.e("icon"),u.e("close-icon"),_e.value?"":u.e("close-icon--hidden")]);vue.watch(h,S=>{S?vue.nextTick(()=>{S&&(m.value=r.modelValue)}):(kt.value=null,vue.nextTick(()=>{$(r.modelValue)}))});const $=(S,ae)=>{(ae||!valueEquals(S,m.value))&&(n(CHANGE_EVENT,S),ae&&(m.value=S),r.validateEvent&&(v==null||v.validate("change").catch(de=>debugWarn(de))))},M=S=>{if(!valueEquals(r.modelValue,S)){let ae;isArray$1(S)?ae=S.map(de=>formatter(de,r.valueFormat,s.value)):S&&(ae=formatter(S,r.valueFormat,s.value)),n(UPDATE_MODEL_EVENT,S&&ae,s.value)}},F=S=>{n("keydown",S)},O=vue.computed(()=>p.value?Array.from(p.value.$el.querySelectorAll("input")):[]),D=(S,ae,de)=>{const Oe=O.value;Oe.length&&(!de||de==="min"?(Oe[0].setSelectionRange(S,ae),Oe[0].focus()):de==="max"&&(Oe[1].setSelectionRange(S,ae),Oe[1].focus()))},j=(S="",ae=!1)=>{h.value=ae;let de;isArray$1(S)?de=S.map(Oe=>Oe.toDate()):de=S&&S.toDate(),kt.value=null,M(de)},z=()=>{y.value=!0},T=()=>{n("visible-change",!0)},L=()=>{y.value=!1,h.value=!1,n("visible-change",!1)},ie=()=>{h.value=!0},x=()=>{h.value=!1},V=vue.computed(()=>r.disabled||(l==null?void 0:l.disabled)),le=vue.computed(()=>{let S;if(Et.value?Rn.value.getDefaultValue&&(S=Rn.value.getDefaultValue()):isArray$1(r.modelValue)?S=r.modelValue.map(ae=>parseDate(ae,r.valueFormat,s.value)):S=parseDate(r.modelValue,r.valueFormat,s.value),Rn.value.getRangeAvailableTime){const ae=Rn.value.getRangeAvailableTime(S);isEqual(ae,S)||(S=ae,Et.value||M(dayOrDaysToDate(S)))}return isArray$1(S)&&S.some(ae=>!ae)&&(S=[]),S}),Y=vue.computed(()=>{if(!Rn.value.panelReady)return"";const S=Tn(le.value);return isArray$1(kt.value)?[kt.value[0]||S&&S[0]||"",kt.value[1]||S&&S[1]||""]:kt.value!==null?kt.value:!he.value&&Et.value||!h.value&&Et.value?"":S?Ce.value||$e.value||Ne.value?S.join(", "):S:""}),re=vue.computed(()=>r.type.includes("time")),he=vue.computed(()=>r.type.startsWith("time")),Ce=vue.computed(()=>r.type==="dates"),$e=vue.computed(()=>r.type==="months"),Ne=vue.computed(()=>r.type==="years"),Pt=vue.computed(()=>r.prefixIcon||(re.value?clock_default:calendar_default)),_e=vue.ref(!1),ze=S=>{r.readonly||V.value||(_e.value&&(S.stopPropagation(),Rn.value.handleClear?Rn.value.handleClear():M(f.value),$(f.value,!0),_e.value=!1,L()),n("clear"))},Et=vue.computed(()=>{const{modelValue:S}=r;return!S||isArray$1(S)&&!S.filter(Boolean).length}),Cn=async S=>{var ae;r.readonly||V.value||(((ae=S.target)==null?void 0:ae.tagName)!=="INPUT"||b.value)&&(h.value=!0)},kn=()=>{r.readonly||V.value||!Et.value&&r.clearable&&(_e.value=!0)},In=()=>{_e.value=!1},Dn=S=>{var ae;r.readonly||V.value||(((ae=S.touches[0].target)==null?void 0:ae.tagName)!=="INPUT"||b.value)&&(h.value=!0)},Mn=vue.computed(()=>r.type.includes("range")),Ue=useFormSize(),xe=vue.computed(()=>{var S,ae;return(ae=(S=vue.unref(c))==null?void 0:S.popperRef)==null?void 0:ae.contentRef}),Dt=onClickOutside(p,S=>{const ae=vue.unref(xe),de=unrefElement(p);ae&&(S.target===ae||S.composedPath().includes(ae))||S.target===de||de&&S.composedPath().includes(de)||(h.value=!1)});vue.onBeforeUnmount(()=>{Dt==null||Dt()});const kt=vue.ref(null),_n=()=>{if(kt.value){const S=Sn(Y.value);S&&An(S)&&(M(dayOrDaysToDate(S)),kt.value=null)}kt.value===""&&(M(f.value),$(f.value,!0),kt.value=null)},Sn=S=>S?Rn.value.parseUserInput(S):null,Tn=S=>S?Rn.value.formatToString(S):null,An=S=>Rn.value.isValidValue(S),qe=async S=>{if(r.readonly||V.value)return;const{code:ae}=S;if(F(S),ae===EVENT_CODE.esc){h.value===!0&&(h.value=!1,S.preventDefault(),S.stopPropagation());return}if(ae===EVENT_CODE.down&&(Rn.value.handleFocusPicker&&(S.preventDefault(),S.stopPropagation()),h.value===!1&&(h.value=!0,await vue.nextTick()),Rn.value.handleFocusPicker)){Rn.value.handleFocusPicker();return}if(ae===EVENT_CODE.tab){_=!0;return}if(ae===EVENT_CODE.enter||ae===EVENT_CODE.numpadEnter){(kt.value===null||kt.value===""||An(Sn(Y.value)))&&(_n(),h.value=!1),S.stopPropagation();return}if(kt.value){S.stopPropagation();return}Rn.value.handleKeydownInput&&Rn.value.handleKeydownInput(S)},vn=S=>{kt.value=S,h.value||(h.value=!0)},Nn=S=>{const ae=S.target;kt.value?kt.value=[ae.value,kt.value[1]]:kt.value=[ae.value,null]},Pn=S=>{const ae=S.target;kt.value?kt.value=[kt.value[0],ae.value]:kt.value=[null,ae.value]},xn=()=>{var S;const ae=kt.value,de=Sn(ae&&ae[0]),Oe=vue.unref(le);if(de&&de.isValid()){kt.value=[Tn(de),((S=Y.value)==null?void 0:S[1])||null];const At=[de,Oe&&(Oe[1]||null)];An(At)&&(M(dayOrDaysToDate(At)),kt.value=null)}},Bn=()=>{var S;const ae=vue.unref(kt),de=Sn(ae&&ae[1]),Oe=vue.unref(le);if(de&&de.isValid()){kt.value=[((S=vue.unref(Y))==null?void 0:S[0])||null,Tn(de)];const At=[Oe&&Oe[0],de];An(At)&&(M(dayOrDaysToDate(At)),kt.value=null)}},Rn=vue.ref({}),qn=S=>{Rn.value[S[0]]=S[1],Rn.value.panelReady=!0},Fn=S=>{n("calendar-change",S)},$n=(S,ae,de)=>{n("panel-change",S,ae,de)},oe=()=>{var S;(S=p.value)==null||S.focus()},pe=()=>{var S;(S=p.value)==null||S.blur()};return vue.provide(PICKER_BASE_INJECTION_KEY,{props:r}),t({focus:oe,blur:pe,handleOpen:ie,handleClose:x,onPick:j}),(S,ae)=>(vue.openBlock(),vue.createBlock(vue.unref(ElTooltip),vue.mergeProps({ref_key:"refPopper",ref:c,visible:h.value,effect:"light",pure:"",trigger:"click"},S.$attrs,{role:"dialog",teleported:"",transition:`${vue.unref(o).namespace.value}-zoom-in-top`,"popper-class":[`${vue.unref(o).namespace.value}-picker__popper`,S.popperClass],"popper-options":vue.unref(d),"fallback-placements":S.fallbackPlacements,"gpu-acceleration":!1,placement:S.placement,"stop-popper-mouse-event":!1,"hide-after":0,persistent:"",onBeforeShow:z,onShow:T,onHide:L}),{default:vue.withCtx(()=>[vue.unref(Mn)?(vue.openBlock(),vue.createBlock(PickerRangeTrigger,{key:1,id:S.id,ref_key:"inputRef",ref:p,"model-value":vue.unref(Y),name:S.name,disabled:vue.unref(V),readonly:!S.editable||S.readonly,"start-placeholder":S.startPlaceholder,"end-placeholder":S.endPlaceholder,class:vue.normalizeClass(vue.unref(k)),style:vue.normalizeStyle(S.$attrs.style),"aria-label":S.ariaLabel,tabindex:S.tabindex,autocomplete:"off",role:"combobox",onClick:Cn,onFocus:vue.unref(g),onBlur:vue.unref(w),onStartInput:Nn,onStartChange:xn,onEndInput:Pn,onEndChange:Bn,onMousedown:Cn,onMouseenter:kn,onMouseleave:In,onTouchstartPassive:Dn,onKeydown:qe},{prefix:vue.withCtx(()=>[vue.unref(Pt)?(vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{key:0,class:vue.normalizeClass([vue.unref(i).e("icon"),vue.unref(u).e("icon")])},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(vue.unref(Pt))))]),_:1},8,["class"])):vue.createCommentVNode("v-if",!0)]),"range-separator":vue.withCtx(()=>[vue.renderSlot(S.$slots,"range-separator",{},()=>[vue.createElementVNode("span",{class:vue.normalizeClass(vue.unref(u).b("separator"))},vue.toDisplayString(S.rangeSeparator),3)])]),suffix:vue.withCtx(()=>[S.clearIcon?(vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{key:0,class:vue.normalizeClass(vue.unref(A)),onMousedown:vue.withModifiers(vue.unref(NOOP),["prevent"]),onClick:ze},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(S.clearIcon)))]),_:1},8,["class","onMousedown"])):vue.createCommentVNode("v-if",!0)]),_:3},8,["id","model-value","name","disabled","readonly","start-placeholder","end-placeholder","class","style","aria-label","tabindex","onFocus","onBlur"])):(vue.openBlock(),vue.createBlock(vue.unref(ElInput),{key:0,id:S.id,ref_key:"inputRef",ref:p,"container-role":"combobox","model-value":vue.unref(Y),name:S.name,size:vue.unref(Ue),disabled:vue.unref(V),placeholder:S.placeholder,class:vue.normalizeClass([vue.unref(o).b("editor"),vue.unref(o).bm("editor",S.type),S.$attrs.class]),style:vue.normalizeStyle(S.$attrs.style),readonly:!S.editable||S.readonly||vue.unref(Ce)||vue.unref($e)||vue.unref(Ne)||S.type==="week","aria-label":S.ariaLabel,tabindex:S.tabindex,"validate-event":!1,onInput:vn,onFocus:vue.unref(g),onBlur:vue.unref(w),onKeydown:qe,onChange:_n,onMousedown:Cn,onMouseenter:kn,onMouseleave:In,onTouchstartPassive:Dn,onClick:vue.withModifiers(()=>{},["stop"])},{prefix:vue.withCtx(()=>[vue.unref(Pt)?(vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{key:0,class:vue.normalizeClass(vue.unref(i).e("icon")),onMousedown:vue.withModifiers(Cn,["prevent"]),onTouchstartPassive:Dn},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(vue.unref(Pt))))]),_:1},8,["class","onMousedown"])):vue.createCommentVNode("v-if",!0)]),suffix:vue.withCtx(()=>[_e.value&&S.clearIcon?(vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{key:0,class:vue.normalizeClass(`${vue.unref(i).e("icon")} clear-icon`),onMousedown:vue.withModifiers(vue.unref(NOOP),["prevent"]),onClick:ze},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(S.clearIcon)))]),_:1},8,["class","onMousedown"])):vue.createCommentVNode("v-if",!0)]),_:1},8,["id","model-value","name","size","disabled","placeholder","class","style","readonly","aria-label","tabindex","onFocus","onBlur","onClick"]))]),content:vue.withCtx(()=>[vue.renderSlot(S.$slots,"default",{visible:h.value,actualVisible:y.value,parsedValue:vue.unref(le),format:S.format,dateFormat:S.dateFormat,timeFormat:S.timeFormat,unlinkPanels:S.unlinkPanels,type:S.type,defaultValue:S.defaultValue,showNow:S.showNow,onPick:j,onSelectRange:D,onSetPickerOption:qn,onCalendarChange:Fn,onPanelChange:$n,onMousedown:vue.withModifiers(()=>{},["stop"])})]),_:3},16,["visible","transition","popper-class","popper-options","fallback-placements","placement"]))}});var CommonPicker=_export_sfc(_sfc_main$A,[["__file","picker.vue"]]);const panelTimePickerProps=buildProps({...timePanelSharedProps,datetimeRole:String,parsedValue:{type:definePropType(Object)}}),useTimePanel=({getAvailableHours:e,getAvailableMinutes:t,getAvailableSeconds:n})=>{const r=(o,i,u,l)=>{const v={hour:e,minute:t,second:n};let d=o;return["hour","minute","second"].forEach(f=>{if(v[f]){let c;const p=v[f];switch(f){case"minute":{c=p(d.hour(),i,l);break}case"second":{c=p(d.hour(),d.minute(),i,l);break}default:{c=p(i,l);break}}if(c!=null&&c.length&&!c.includes(d[f]())){const h=u?0:c.length-1;d=d[f](c[h])}}}),d},a={};return{timePickerOptions:a,getAvailableTime:r,onSetOption:([o,i])=>{a[o]=i}}},makeAvailableArr=e=>{const t=(r,a)=>r||a,n=r=>r!==!0;return e.map(t).filter(n)},getTimeLists=(e,t,n)=>({getHoursList:(o,i)=>makeList(24,e&&(()=>e==null?void 0:e(o,i))),getMinutesList:(o,i,u)=>makeList(60,t&&(()=>t==null?void 0:t(o,i,u))),getSecondsList:(o,i,u,l)=>makeList(60,n&&(()=>n==null?void 0:n(o,i,u,l)))}),buildAvailableTimeSlotGetter=(e,t,n)=>{const{getHoursList:r,getMinutesList:a,getSecondsList:s}=getTimeLists(e,t,n);return{getAvailableHours:(l,v)=>makeAvailableArr(r(l,v)),getAvailableMinutes:(l,v,d)=>makeAvailableArr(a(l,v,d)),getAvailableSeconds:(l,v,d,f)=>makeAvailableArr(s(l,v,d,f))}},useOldValue=e=>{const t=vue.ref(e.parsedValue);return vue.watch(()=>e.visible,n=>{n||(t.value=e.parsedValue)}),t},basicTimeSpinnerProps=buildProps({role:{type:String,required:!0},spinnerDate:{type:definePropType(Object),required:!0},showSeconds:{type:Boolean,default:!0},arrowControl:Boolean,amPmMode:{type:definePropType(String),default:""},...disabledTimeListsProps}),REPEAT_INTERVAL=100,REPEAT_DELAY=600,vRepeatClick={beforeMount(e,t){const n=t.value,{interval:r=REPEAT_INTERVAL,delay:a=REPEAT_DELAY}=isFunction$1(n)?{}:n;let s,o;const i=()=>isFunction$1(n)?n():n.handler(),u=()=>{o&&(clearTimeout(o),o=void 0),s&&(clearInterval(s),s=void 0)};e.addEventListener("mousedown",l=>{l.button===0&&(u(),i(),document.addEventListener("mouseup",()=>u(),{once:!0}),o=setTimeout(()=>{s=setInterval(()=>{i()},r)},a))})}},_sfc_main$z=vue.defineComponent({__name:"basic-time-spinner",props:basicTimeSpinnerProps,emits:[CHANGE_EVENT,"select-range","set-option"],setup(e,{emit:t}){const n=e,r=vue.inject(PICKER_BASE_INJECTION_KEY),{isRange:a,format:s}=r.props,o=useNamespace("time"),{getHoursList:i,getMinutesList:u,getSecondsList:l}=getTimeLists(n.disabledHours,n.disabledMinutes,n.disabledSeconds);let v=!1;const d=vue.ref(),f=vue.ref(),c=vue.ref(),p=vue.ref(),h={hours:f,minutes:c,seconds:p},y=vue.computed(()=>n.showSeconds?timeUnits:timeUnits.slice(0,2)),m=vue.computed(()=>{const{spinnerDate:re}=n,he=re.hour(),Ce=re.minute(),$e=re.second();return{hours:he,minutes:Ce,seconds:$e}}),_=vue.computed(()=>{const{hours:re,minutes:he}=vue.unref(m),{role:Ce,spinnerDate:$e}=n,Ne=a?void 0:$e;return{hours:i(Ce,Ne),minutes:u(re,Ce,Ne),seconds:l(re,he,Ce,Ne)}}),b=vue.computed(()=>{const{hours:re,minutes:he,seconds:Ce}=vue.unref(m);return{hours:buildTimeList(re,23),minutes:buildTimeList(he,59),seconds:buildTimeList(Ce,59)}}),g=debounce(re=>{v=!1,A(re)},200),w=re=>{if(!!!n.amPmMode)return"";const Ce=n.amPmMode==="A";let $e=re<12?" am":" pm";return Ce&&($e=$e.toUpperCase()),$e},k=re=>{let he=[0,0];if(!s||s===DEFAULT_FORMATS_TIME)switch(re){case"hours":he=[0,2];break;case"minutes":he=[3,5];break;case"seconds":he=[6,8];break}const[Ce,$e]=he;t("select-range",Ce,$e),d.value=re},A=re=>{F(re,vue.unref(m)[re])},$=()=>{A("hours"),A("minutes"),A("seconds")},M=re=>re.querySelector(`.${o.namespace.value}-scrollbar__wrap`),F=(re,he)=>{if(n.arrowControl)return;const Ce=vue.unref(h[re]);Ce&&Ce.$el&&(M(Ce.$el).scrollTop=Math.max(0,he*O(re)))},O=re=>{const he=vue.unref(h[re]),Ce=he==null?void 0:he.$el.querySelector("li");return Ce&&Number.parseFloat(getStyle(Ce,"height"))||0},D=()=>{z(1)},j=()=>{z(-1)},z=re=>{d.value||k("hours");const he=d.value,Ce=vue.unref(m)[he],$e=d.value==="hours"?24:60,Ne=T(he,Ce,re,$e);L(he,Ne),F(he,Ne),vue.nextTick(()=>k(he))},T=(re,he,Ce,$e)=>{let Ne=(he+Ce+$e)%$e;const Pt=vue.unref(_)[re];for(;Pt[Ne]&&Ne!==he;)Ne=(Ne+Ce+$e)%$e;return Ne},L=(re,he)=>{if(vue.unref(_)[re][he])return;const{hours:Ne,minutes:Pt,seconds:_e}=vue.unref(m);let ze;switch(re){case"hours":ze=n.spinnerDate.hour(he).minute(Pt).second(_e);break;case"minutes":ze=n.spinnerDate.hour(Ne).minute(he).second(_e);break;case"seconds":ze=n.spinnerDate.hour(Ne).minute(Pt).second(he);break}t(CHANGE_EVENT,ze)},ie=(re,{value:he,disabled:Ce})=>{Ce||(L(re,he),k(re),F(re,he))},x=re=>{const he=vue.unref(h[re]);if(!he)return;v=!0,g(re);const Ce=Math.min(Math.round((M(he.$el).scrollTop-(V(re)*.5-10)/O(re)+3)/O(re)),re==="hours"?23:59);L(re,Ce)},V=re=>vue.unref(h[re]).$el.offsetHeight,le=()=>{const re=he=>{const Ce=vue.unref(h[he]);Ce&&Ce.$el&&(M(Ce.$el).onscroll=()=>{x(he)})};re("hours"),re("minutes"),re("seconds")};vue.onMounted(()=>{vue.nextTick(()=>{!n.arrowControl&&le(),$(),n.role==="start"&&k("hours")})});const Y=(re,he)=>{h[he].value=re??void 0};return t("set-option",[`${n.role}_scrollDown`,z]),t("set-option",[`${n.role}_emitSelectRange`,k]),vue.watch(()=>n.spinnerDate,()=>{v||$()}),(re,he)=>(vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass([vue.unref(o).b("spinner"),{"has-seconds":re.showSeconds}])},[re.arrowControl?vue.createCommentVNode("v-if",!0):(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,{key:0},vue.renderList(vue.unref(y),Ce=>(vue.openBlock(),vue.createBlock(vue.unref(ElScrollbar),{key:Ce,ref_for:!0,ref:$e=>Y($e,Ce),class:vue.normalizeClass(vue.unref(o).be("spinner","wrapper")),"wrap-style":"max-height: inherit;","view-class":vue.unref(o).be("spinner","list"),noresize:"",tag:"ul",onMouseenter:$e=>k(Ce),onMousemove:$e=>A(Ce)},{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(vue.unref(_)[Ce],($e,Ne)=>(vue.openBlock(),vue.createElementBlock("li",{key:Ne,class:vue.normalizeClass([vue.unref(o).be("spinner","item"),vue.unref(o).is("active",Ne===vue.unref(m)[Ce]),vue.unref(o).is("disabled",$e)]),onClick:Pt=>ie(Ce,{value:Ne,disabled:$e})},[Ce==="hours"?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.createTextVNode(vue.toDisplayString(("0"+(re.amPmMode?Ne%12||12:Ne)).slice(-2))+vue.toDisplayString(w(Ne)),1)],64)):(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:1},[vue.createTextVNode(vue.toDisplayString(("0"+Ne).slice(-2)),1)],64))],10,["onClick"]))),128))]),_:2},1032,["class","view-class","onMouseenter","onMousemove"]))),128)),re.arrowControl?(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,{key:1},vue.renderList(vue.unref(y),Ce=>(vue.openBlock(),vue.createElementBlock("div",{key:Ce,class:vue.normalizeClass([vue.unref(o).be("spinner","wrapper"),vue.unref(o).is("arrow")]),onMouseenter:$e=>k(Ce)},[vue.withDirectives((vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{class:vue.normalizeClass(["arrow-up",vue.unref(o).be("spinner","arrow")])},{default:vue.withCtx(()=>[vue.createVNode(vue.unref(arrow_up_default))]),_:1},8,["class"])),[[vue.unref(vRepeatClick),j]]),vue.withDirectives((vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{class:vue.normalizeClass(["arrow-down",vue.unref(o).be("spinner","arrow")])},{default:vue.withCtx(()=>[vue.createVNode(vue.unref(arrow_down_default))]),_:1},8,["class"])),[[vue.unref(vRepeatClick),D]]),vue.createElementVNode("ul",{class:vue.normalizeClass(vue.unref(o).be("spinner","list"))},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(vue.unref(b)[Ce],($e,Ne)=>(vue.openBlock(),vue.createElementBlock("li",{key:Ne,class:vue.normalizeClass([vue.unref(o).be("spinner","item"),vue.unref(o).is("active",$e===vue.unref(m)[Ce]),vue.unref(o).is("disabled",vue.unref(_)[Ce][$e])])},[vue.unref(isNumber)($e)?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[Ce==="hours"?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.createTextVNode(vue.toDisplayString(("0"+(re.amPmMode?$e%12||12:$e)).slice(-2))+vue.toDisplayString(w($e)),1)],64)):(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:1},[vue.createTextVNode(vue.toDisplayString(("0"+$e).slice(-2)),1)],64))],64)):vue.createCommentVNode("v-if",!0)],2))),128))],2)],42,["onMouseenter"]))),128)):vue.createCommentVNode("v-if",!0)],2))}});var TimeSpinner=_export_sfc(_sfc_main$z,[["__file","basic-time-spinner.vue"]]);const _sfc_main$y=vue.defineComponent({__name:"panel-time-pick",props:panelTimePickerProps,emits:["pick","select-range","set-picker-option"],setup(e,{emit:t}){const n=e,r=vue.inject(PICKER_BASE_INJECTION_KEY),{arrowControl:a,disabledHours:s,disabledMinutes:o,disabledSeconds:i,defaultValue:u}=r.props,{getAvailableHours:l,getAvailableMinutes:v,getAvailableSeconds:d}=buildAvailableTimeSlotGetter(s,o,i),f=useNamespace("time"),{t:c,lang:p}=useLocale(),h=vue.ref([0,2]),y=useOldValue(n),m=vue.computed(()=>isUndefined(n.actualVisible)?`${f.namespace.value}-zoom-in-top`:""),_=vue.computed(()=>n.format.includes("ss")),b=vue.computed(()=>n.format.includes("A")?"A":n.format.includes("a")?"a":""),g=x=>{const V=dayjs(x).locale(p.value),le=z(V);return V.isSame(le)},w=()=>{t("pick",y.value,!1)},k=(x=!1,V=!1)=>{V||t("pick",n.parsedValue,x)},A=x=>{if(!n.visible)return;const V=z(x).millisecond(0);t("pick",V,!0)},$=(x,V)=>{t("select-range",x,V),h.value=[x,V]},M=x=>{const V=[0,3].concat(_.value?[6]:[]),le=["hours","minutes"].concat(_.value?["seconds"]:[]),re=(V.indexOf(h.value[0])+x+V.length)%V.length;O.start_emitSelectRange(le[re])},F=x=>{const V=x.code,{left:le,right:Y,up:re,down:he}=EVENT_CODE;if([le,Y].includes(V)){M(V===le?-1:1),x.preventDefault();return}if([re,he].includes(V)){const Ce=V===re?-1:1;O.start_scrollDown(Ce),x.preventDefault();return}},{timePickerOptions:O,onSetOption:D,getAvailableTime:j}=useTimePanel({getAvailableHours:l,getAvailableMinutes:v,getAvailableSeconds:d}),z=x=>j(x,n.datetimeRole||"",!0),T=x=>x?dayjs(x,n.format).locale(p.value):null,L=x=>x?x.format(n.format):null,ie=()=>dayjs(u).locale(p.value);return t("set-picker-option",["isValidValue",g]),t("set-picker-option",["formatToString",L]),t("set-picker-option",["parseUserInput",T]),t("set-picker-option",["handleKeydownInput",F]),t("set-picker-option",["getRangeAvailableTime",z]),t("set-picker-option",["getDefaultValue",ie]),(x,V)=>(vue.openBlock(),vue.createBlock(vue.Transition,{name:vue.unref(m)},{default:vue.withCtx(()=>[x.actualVisible||x.visible?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:vue.normalizeClass(vue.unref(f).b("panel"))},[vue.createElementVNode("div",{class:vue.normalizeClass([vue.unref(f).be("panel","content"),{"has-seconds":vue.unref(_)}])},[vue.createVNode(TimeSpinner,{ref:"spinner",role:x.datetimeRole||"start","arrow-control":vue.unref(a),"show-seconds":vue.unref(_),"am-pm-mode":vue.unref(b),"spinner-date":x.parsedValue,"disabled-hours":vue.unref(s),"disabled-minutes":vue.unref(o),"disabled-seconds":vue.unref(i),onChange:A,onSetOption:vue.unref(D),onSelectRange:$},null,8,["role","arrow-control","show-seconds","am-pm-mode","spinner-date","disabled-hours","disabled-minutes","disabled-seconds","onSetOption"])],2),vue.createElementVNode("div",{class:vue.normalizeClass(vue.unref(f).be("panel","footer"))},[vue.createElementVNode("button",{type:"button",class:vue.normalizeClass([vue.unref(f).be("panel","btn"),"cancel"]),onClick:w},vue.toDisplayString(vue.unref(c)("el.datepicker.cancel")),3),vue.createElementVNode("button",{type:"button",class:vue.normalizeClass([vue.unref(f).be("panel","btn"),"confirm"]),onClick:le=>k()},vue.toDisplayString(vue.unref(c)("el.datepicker.confirm")),11,["onClick"])],2)],2)):vue.createCommentVNode("v-if",!0)]),_:1},8,["name"]))}});var TimePickPanel=_export_sfc(_sfc_main$y,[["__file","panel-time-pick.vue"]]);const ROOT_PICKER_INJECTION_KEY=Symbol(),ROOT_PICKER_IS_DEFAULT_FORMAT_INJECTION_KEY="ElIsDefaultFormat",datePickerProps=buildProps({...timePickerDefaultProps,type:{type:definePropType(String),default:"date"}}),selectionModes=["date","dates","year","years","month","months","week","range"],datePickerSharedProps=buildProps({disabledDate:{type:definePropType(Function)},date:{type:definePropType(Object),required:!0},minDate:{type:definePropType(Object)},maxDate:{type:definePropType(Object)},parsedValue:{type:definePropType([Object,Array])},rangeState:{type:definePropType(Object),default:()=>({endDate:null,selecting:!1})}}),panelSharedProps=buildProps({type:{type:definePropType(String),required:!0,values:datePickTypes},dateFormat:String,timeFormat:String,showNow:{type:Boolean,default:!0}}),panelRangeSharedProps=buildProps({unlinkPanels:Boolean,visible:Boolean,parsedValue:{type:definePropType(Array)}}),selectionModeWithDefault=e=>({type:String,values:selectionModes,default:e}),panelDatePickProps=buildProps({...panelSharedProps,parsedValue:{type:definePropType([Object,Array])},visible:{type:Boolean},format:{type:String,default:""}}),isValidRange=e=>{if(!isArray$1(e))return!1;const[t,n]=e;return dayjs.isDayjs(t)&&dayjs.isDayjs(n)&&dayjs(t).isValid()&&dayjs(n).isValid()&&t.isSameOrBefore(n)},getDefaultValue=(e,{lang:t,step:n=1,unit:r,unlinkPanels:a})=>{let s;if(isArray$1(e)){let[o,i]=e.map(u=>dayjs(u).locale(t));return a||(i=o.add(n,r)),[o,i]}else e?s=dayjs(e):s=dayjs();return s=s.locale(t),[s,s.add(n,r)]},buildPickerTable=(e,t,{columnIndexOffset:n,startDate:r,nextEndDate:a,now:s,unit:o,relativeDateGetter:i,setCellMetadata:u,setRowMetadata:l})=>{for(let v=0;v<e.row;v++){const d=t[v];for(let f=0;f<e.column;f++){let c=d[f+n];c||(c={row:v,column:f,type:"normal",inRange:!1,start:!1,end:!1});const p=v*e.column+f,h=i(p);c.dayjs=h,c.date=h.toDate(),c.timestamp=h.valueOf(),c.type="normal",c.inRange=!!(r&&h.isSameOrAfter(r,o)&&a&&h.isSameOrBefore(a,o))||!!(r&&h.isSameOrBefore(r,o)&&a&&h.isSameOrAfter(a,o)),r!=null&&r.isSameOrAfter(a)?(c.start=!!a&&h.isSame(a,o),c.end=r&&h.isSame(r,o)):(c.start=!!r&&h.isSame(r,o),c.end=!!a&&h.isSame(a,o)),h.isSame(s,o)&&(c.type="today"),u==null||u(c,{rowIndex:v,columnIndex:f}),d[f+n]=c}l==null||l(d)}},datesInMonth=(e,t,n,r)=>{const a=dayjs().locale(r).startOf("month").month(n).year(t).hour(e.hour()).minute(e.minute()).second(e.second()),s=a.daysInMonth();return rangeArr(s).map(o=>a.add(o,"day").toDate())},getValidDateOfMonth=(e,t,n,r,a)=>{const s=dayjs().year(t).month(n).startOf("month").hour(e.hour()).minute(e.minute()).second(e.second()),o=datesInMonth(e,t,n,r).find(i=>!(a!=null&&a(i)));return o?dayjs(o).locale(r):s.locale(r)},getValidDateOfYear=(e,t,n)=>{const r=e.year();if(!(n!=null&&n(e.toDate())))return e.locale(t);const a=e.month();if(!datesInMonth(e,r,a,t).every(n))return getValidDateOfMonth(e,r,a,t,n);for(let s=0;s<12;s++)if(!datesInMonth(e,r,s,t).every(n))return getValidDateOfMonth(e,r,s,t,n);return e},correctlyParseUserInput=(e,t,n,r)=>{if(isArray$1(e))return e.map(a=>correctlyParseUserInput(a,t,n,r));if(isString$1(e)){const a=r.value?dayjs(e):dayjs(e,t);if(!a.isValid())return a}return dayjs(e,t).locale(n)},basicDateTableProps=buildProps({...datePickerSharedProps,cellClassName:{type:definePropType(Function)},showWeekNumber:Boolean,selectionMode:selectionModeWithDefault("date")}),basicDateTableEmits=["changerange","pick","select"],isNormalDay=(e="")=>["normal","today"].includes(e),useBasicDateTable=(e,t)=>{const{lang:n}=useLocale(),r=vue.ref(),a=vue.ref(),s=vue.ref(),o=vue.ref(),i=vue.ref([[],[],[],[],[],[]]);let u=!1;const l=e.date.$locale().weekStart||7,v=e.date.locale("en").localeData().weekdaysShort().map(V=>V.toLowerCase()),d=vue.computed(()=>l>3?7-l:-l),f=vue.computed(()=>{const V=e.date.startOf("month");return V.subtract(V.day()||7,"day")}),c=vue.computed(()=>v.concat(v).slice(l,l+7)),p=vue.computed(()=>flatten(vue.unref(g)).some(V=>V.isCurrent)),h=vue.computed(()=>{const V=e.date.startOf("month"),le=V.day()||7,Y=V.daysInMonth(),re=V.subtract(1,"month").daysInMonth();return{startOfMonthDay:le,dateCountOfMonth:Y,dateCountOfLastMonth:re}}),y=vue.computed(()=>e.selectionMode==="dates"?castArray(e.parsedValue):[]),m=(V,{count:le,rowIndex:Y,columnIndex:re})=>{const{startOfMonthDay:he,dateCountOfMonth:Ce,dateCountOfLastMonth:$e}=vue.unref(h),Ne=vue.unref(d);if(Y>=0&&Y<=1){const Pt=he+Ne<0?7+he+Ne:he+Ne;if(re+Y*7>=Pt)return V.text=le,!0;V.text=$e-(Pt-re%7)+1+Y*7,V.type="prev-month"}else return le<=Ce?V.text=le:(V.text=le-Ce,V.type="next-month"),!0;return!1},_=(V,{columnIndex:le,rowIndex:Y},re)=>{const{disabledDate:he,cellClassName:Ce}=e,$e=vue.unref(y),Ne=m(V,{count:re,rowIndex:Y,columnIndex:le}),Pt=V.dayjs.toDate();return V.selected=$e.find(_e=>_e.isSame(V.dayjs,"day")),V.isSelected=!!V.selected,V.isCurrent=k(V),V.disabled=he==null?void 0:he(Pt),V.customClass=Ce==null?void 0:Ce(Pt),Ne},b=V=>{if(e.selectionMode==="week"){const[le,Y]=e.showWeekNumber?[1,7]:[0,6],re=x(V[le+1]);V[le].inRange=re,V[le].start=re,V[Y].inRange=re,V[Y].end=re}},g=vue.computed(()=>{const{minDate:V,maxDate:le,rangeState:Y,showWeekNumber:re}=e,he=vue.unref(d),Ce=vue.unref(i),$e="day";let Ne=1;if(re)for(let Pt=0;Pt<6;Pt++)Ce[Pt][0]||(Ce[Pt][0]={type:"week",text:vue.unref(f).add(Pt*7+1,$e).week()});return buildPickerTable({row:6,column:7},Ce,{startDate:V,columnIndexOffset:re?1:0,nextEndDate:Y.endDate||le||Y.selecting&&V||null,now:dayjs().locale(vue.unref(n)).startOf($e),unit:$e,relativeDateGetter:Pt=>vue.unref(f).add(Pt-he,$e),setCellMetadata:(...Pt)=>{_(...Pt,Ne)&&(Ne+=1)},setRowMetadata:b}),Ce});vue.watch(()=>e.date,async()=>{var V;(V=vue.unref(r))!=null&&V.contains(document.activeElement)&&(await vue.nextTick(),await w())});const w=async()=>{var V;return(V=vue.unref(a))==null?void 0:V.focus()},k=V=>e.selectionMode==="date"&&isNormalDay(V.type)&&A(V,e.parsedValue),A=(V,le)=>le?dayjs(le).locale(vue.unref(n)).isSame(e.date.date(Number(V.text)),"day"):!1,$=(V,le)=>{const Y=V*7+(le-(e.showWeekNumber?1:0))-vue.unref(d);return vue.unref(f).add(Y,"day")},M=V=>{var le;if(!e.rangeState.selecting)return;let Y=V.target;if(Y.tagName==="SPAN"&&(Y=(le=Y.parentNode)==null?void 0:le.parentNode),Y.tagName==="DIV"&&(Y=Y.parentNode),Y.tagName!=="TD")return;const re=Y.parentNode.rowIndex-1,he=Y.cellIndex;vue.unref(g)[re][he].disabled||(re!==vue.unref(s)||he!==vue.unref(o))&&(s.value=re,o.value=he,t("changerange",{selecting:!0,endDate:$(re,he)}))},F=V=>!vue.unref(p)&&(V==null?void 0:V.text)===1&&V.type==="normal"||V.isCurrent,O=V=>{u||vue.unref(p)||e.selectionMode!=="date"||ie(V,!0)},D=V=>{V.target.closest("td")&&(u=!0)},j=V=>{V.target.closest("td")&&(u=!1)},z=V=>{!e.rangeState.selecting||!e.minDate?(t("pick",{minDate:V,maxDate:null}),t("select",!0)):(V>=e.minDate?t("pick",{minDate:e.minDate,maxDate:V}):t("pick",{minDate:V,maxDate:e.minDate}),t("select",!1))},T=V=>{const le=V.week(),Y=`${V.year()}w${le}`;t("pick",{year:V.year(),week:le,value:Y,date:V.startOf("week")})},L=(V,le)=>{const Y=le?castArray(e.parsedValue).filter(re=>(re==null?void 0:re.valueOf())!==V.valueOf()):castArray(e.parsedValue).concat([V]);t("pick",Y)},ie=(V,le=!1)=>{const Y=V.target.closest("td");if(!Y)return;const re=Y.parentNode.rowIndex-1,he=Y.cellIndex,Ce=vue.unref(g)[re][he];if(Ce.disabled||Ce.type==="week")return;const $e=$(re,he);switch(e.selectionMode){case"range":{z($e);break}case"date":{t("pick",$e,le);break}case"week":{T($e);break}case"dates":{L($e,!!Ce.selected);break}}},x=V=>{if(e.selectionMode!=="week")return!1;let le=e.date.startOf("day");if(V.type==="prev-month"&&(le=le.subtract(1,"month")),V.type==="next-month"&&(le=le.add(1,"month")),le=le.date(Number.parseInt(V.text,10)),e.parsedValue&&!isArray$1(e.parsedValue)){const Y=(e.parsedValue.day()-l+7)%7-1;return e.parsedValue.subtract(Y,"day").isSame(le,"day")}return!1};return{WEEKS:c,rows:g,tbodyRef:r,currentCellRef:a,focus:w,isCurrent:k,isWeekActive:x,isSelectedCell:F,handlePickDate:ie,handleMouseUp:j,handleMouseDown:D,handleMouseMove:M,handleFocus:O}},useBasicDateTableDOM=(e,{isCurrent:t,isWeekActive:n})=>{const r=useNamespace("date-table"),{t:a}=useLocale(),s=vue.computed(()=>[r.b(),{"is-week-mode":e.selectionMode==="week"}]),o=vue.computed(()=>a("el.datepicker.dateTablePrompt")),i=vue.computed(()=>a("el.datepicker.week"));return{tableKls:s,tableLabel:o,weekLabel:i,getCellClasses:v=>{const d=[];return isNormalDay(v.type)&&!v.disabled?(d.push("available"),v.type==="today"&&d.push("today")):d.push(v.type),t(v)&&d.push("current"),v.inRange&&(isNormalDay(v.type)||e.selectionMode==="week")&&(d.push("in-range"),v.start&&d.push("start-date"),v.end&&d.push("end-date")),v.disabled&&d.push("disabled"),v.selected&&d.push("selected"),v.customClass&&d.push(v.customClass),d.join(" ")},getRowKls:v=>[r.e("row"),{current:n(v)}],t:a}},basicCellProps=buildProps({cell:{type:definePropType(Object)}});var ElDatePickerCell=vue.defineComponent({name:"ElDatePickerCell",props:basicCellProps,setup(e){const t=useNamespace("date-table-cell"),{slots:n}=vue.inject(ROOT_PICKER_INJECTION_KEY);return()=>{const{cell:r}=e;return vue.renderSlot(n,"default",{...r},()=>{var a;return[vue.createVNode("div",{class:t.b()},[vue.createVNode("span",{class:t.e("text")},[(a=r==null?void 0:r.renderText)!=null?a:r==null?void 0:r.text])])]})}}});const _sfc_main$x=vue.defineComponent({__name:"basic-date-table",props:basicDateTableProps,emits:basicDateTableEmits,setup(e,{expose:t,emit:n}){const r=e,{WEEKS:a,rows:s,tbodyRef:o,currentCellRef:i,focus:u,isCurrent:l,isWeekActive:v,isSelectedCell:d,handlePickDate:f,handleMouseUp:c,handleMouseDown:p,handleMouseMove:h,handleFocus:y}=useBasicDateTable(r,n),{tableLabel:m,tableKls:_,weekLabel:b,getCellClasses:g,getRowKls:w,t:k}=useBasicDateTableDOM(r,{isCurrent:l,isWeekActive:v});let A=!1;return vue.onBeforeUnmount(()=>{A=!0}),t({focus:u}),($,M)=>(vue.openBlock(),vue.createElementBlock("table",{"aria-label":vue.unref(m),class:vue.normalizeClass(vue.unref(_)),cellspacing:"0",cellpadding:"0",role:"grid",onClick:vue.unref(f),onMousemove:vue.unref(h),onMousedown:vue.withModifiers(vue.unref(p),["prevent"]),onMouseup:vue.unref(c)},[vue.createElementVNode("tbody",{ref_key:"tbodyRef",ref:o},[vue.createElementVNode("tr",null,[$.showWeekNumber?(vue.openBlock(),vue.createElementBlock("th",{key:0,scope:"col"},vue.toDisplayString(vue.unref(b)),1)):vue.createCommentVNode("v-if",!0),(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(vue.unref(a),(F,O)=>(vue.openBlock(),vue.createElementBlock("th",{key:O,"aria-label":vue.unref(k)("el.datepicker.weeksFull."+F),scope:"col"},vue.toDisplayString(vue.unref(k)("el.datepicker.weeks."+F)),9,["aria-label"]))),128))]),(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(vue.unref(s),(F,O)=>(vue.openBlock(),vue.createElementBlock("tr",{key:O,class:vue.normalizeClass(vue.unref(w)(F[1]))},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(F,(D,j)=>(vue.openBlock(),vue.createElementBlock("td",{key:`${O}.${j}`,ref_for:!0,ref:z=>!vue.unref(A)&&vue.unref(d)(D)&&(i.value=z),class:vue.normalizeClass(vue.unref(g)(D)),"aria-current":D.isCurrent?"date":void 0,"aria-selected":D.isCurrent,tabindex:vue.unref(d)(D)?0:-1,onFocus:vue.unref(y)},[vue.createVNode(vue.unref(ElDatePickerCell),{cell:D},null,8,["cell"])],42,["aria-current","aria-selected","tabindex","onFocus"]))),128))],2))),128))],512)],42,["aria-label","onClick","onMousemove","onMousedown","onMouseup"]))}});var DateTable=_export_sfc(_sfc_main$x,[["__file","basic-date-table.vue"]]);const basicMonthTableProps=buildProps({...datePickerSharedProps,selectionMode:selectionModeWithDefault("month")}),_sfc_main$w=vue.defineComponent({__name:"basic-month-table",props:basicMonthTableProps,emits:["changerange","pick","select"],setup(e,{expose:t,emit:n}){const r=e,a=useNamespace("month-table"),{t:s,lang:o}=useLocale(),i=vue.ref(),u=vue.ref(),l=vue.ref(r.date.locale("en").localeData().monthsShort().map(b=>b.toLowerCase())),v=vue.ref([[],[],[]]),d=vue.ref(),f=vue.ref(),c=vue.computed(()=>{var b,g;const w=v.value,k=dayjs().locale(o.value).startOf("month");for(let A=0;A<3;A++){const $=w[A];for(let M=0;M<4;M++){const F=$[M]||($[M]={row:A,column:M,type:"normal",inRange:!1,start:!1,end:!1,text:-1,disabled:!1});F.type="normal";const O=A*4+M,D=r.date.startOf("year").month(O),j=r.rangeState.endDate||r.maxDate||r.rangeState.selecting&&r.minDate||null;F.inRange=!!(r.minDate&&D.isSameOrAfter(r.minDate,"month")&&j&&D.isSameOrBefore(j,"month"))||!!(r.minDate&&D.isSameOrBefore(r.minDate,"month")&&j&&D.isSameOrAfter(j,"month")),(b=r.minDate)!=null&&b.isSameOrAfter(j)?(F.start=!!(j&&D.isSame(j,"month")),F.end=r.minDate&&D.isSame(r.minDate,"month")):(F.start=!!(r.minDate&&D.isSame(r.minDate,"month")),F.end=!!(j&&D.isSame(j,"month"))),k.isSame(D)&&(F.type="today"),F.text=O,F.disabled=((g=r.disabledDate)==null?void 0:g.call(r,D.toDate()))||!1}}return w}),p=()=>{var b;(b=u.value)==null||b.focus()},h=b=>{const g={},w=r.date.year(),k=new Date,A=b.text;return g.disabled=r.disabledDate?datesInMonth(r.date,w,A,o.value).every(r.disabledDate):!1,g.current=castArray(r.parsedValue).findIndex($=>dayjs.isDayjs($)&&$.year()===w&&$.month()===A)>=0,g.today=k.getFullYear()===w&&k.getMonth()===A,b.inRange&&(g["in-range"]=!0,b.start&&(g["start-date"]=!0),b.end&&(g["end-date"]=!0)),g},y=b=>{const g=r.date.year(),w=b.text;return castArray(r.date).findIndex(k=>k.year()===g&&k.month()===w)>=0},m=b=>{var g;if(!r.rangeState.selecting)return;let w=b.target;if(w.tagName==="SPAN"&&(w=(g=w.parentNode)==null?void 0:g.parentNode),w.tagName==="DIV"&&(w=w.parentNode),w.tagName!=="TD")return;const k=w.parentNode.rowIndex,A=w.cellIndex;c.value[k][A].disabled||(k!==d.value||A!==f.value)&&(d.value=k,f.value=A,n("changerange",{selecting:!0,endDate:r.date.startOf("year").month(k*4+A)}))},_=b=>{var g;const w=(g=b.target)==null?void 0:g.closest("td");if((w==null?void 0:w.tagName)!=="TD"||hasClass(w,"disabled"))return;const k=w.cellIndex,$=w.parentNode.rowIndex*4+k,M=r.date.startOf("year").month($);if(r.selectionMode==="months"){if(b.type==="keydown"){n("pick",castArray(r.parsedValue),!1);return}const F=getValidDateOfMonth(r.date,r.date.year(),$,o.value,r.disabledDate),O=hasClass(w,"current")?castArray(r.parsedValue).filter(D=>(D==null?void 0:D.year())!==F.year()||(D==null?void 0:D.month())!==F.month()):castArray(r.parsedValue).concat([dayjs(F)]);n("pick",O)}else r.selectionMode==="range"?r.rangeState.selecting?(r.minDate&&M>=r.minDate?n("pick",{minDate:r.minDate,maxDate:M}):n("pick",{minDate:M,maxDate:r.minDate}),n("select",!1)):(n("pick",{minDate:M,maxDate:null}),n("select",!0)):n("pick",$)};return vue.watch(()=>r.date,async()=>{var b,g;(b=i.value)!=null&&b.contains(document.activeElement)&&(await vue.nextTick(),(g=u.value)==null||g.focus())}),t({focus:p}),(b,g)=>(vue.openBlock(),vue.createElementBlock("table",{role:"grid","aria-label":vue.unref(s)("el.datepicker.monthTablePrompt"),class:vue.normalizeClass(vue.unref(a).b()),onClick:_,onMousemove:m},[vue.createElementVNode("tbody",{ref_key:"tbodyRef",ref:i},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(vue.unref(c),(w,k)=>(vue.openBlock(),vue.createElementBlock("tr",{key:k},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(w,(A,$)=>(vue.openBlock(),vue.createElementBlock("td",{key:$,ref_for:!0,ref:M=>y(A)&&(u.value=M),class:vue.normalizeClass(h(A)),"aria-selected":`${y(A)}`,"aria-label":vue.unref(s)(`el.datepicker.month${+A.text+1}`),tabindex:y(A)?0:-1,onKeydown:[vue.withKeys(vue.withModifiers(_,["prevent","stop"]),["space"]),vue.withKeys(vue.withModifiers(_,["prevent","stop"]),["enter"])]},[vue.createVNode(vue.unref(ElDatePickerCell),{cell:{...A,renderText:vue.unref(s)("el.datepicker.months."+l.value[A.text])}},null,8,["cell"])],42,["aria-selected","aria-label","tabindex","onKeydown"]))),128))]))),128))],512)],42,["aria-label"]))}});var MonthTable=_export_sfc(_sfc_main$w,[["__file","basic-month-table.vue"]]);const basicYearTableProps=buildProps({...datePickerSharedProps,selectionMode:selectionModeWithDefault("year")}),_sfc_main$v=vue.defineComponent({__name:"basic-year-table",props:basicYearTableProps,emits:["changerange","pick","select"],setup(e,{expose:t,emit:n}){const r=e,a=(g,w)=>{const k=dayjs(String(g)).locale(w).startOf("year"),$=k.endOf("year").dayOfYear();return rangeArr($).map(M=>k.add(M,"day").toDate())},s=useNamespace("year-table"),{t:o,lang:i}=useLocale(),u=vue.ref(),l=vue.ref(),v=vue.computed(()=>Math.floor(r.date.year()/10)*10),d=vue.ref([[],[],[]]),f=vue.ref(),c=vue.ref(),p=vue.computed(()=>{var g;const w=d.value,k=dayjs().locale(i.value).startOf("year");for(let A=0;A<3;A++){const $=w[A];for(let M=0;M<4&&!(A*4+M>=10);M++){let F=$[M];F||(F={row:A,column:M,type:"normal",inRange:!1,start:!1,end:!1,text:-1,disabled:!1}),F.type="normal";const O=A*4+M+v.value,D=dayjs().year(O),j=r.rangeState.endDate||r.maxDate||r.rangeState.selecting&&r.minDate||null;F.inRange=!!(r.minDate&&D.isSameOrAfter(r.minDate,"year")&&j&&D.isSameOrBefore(j,"year"))||!!(r.minDate&&D.isSameOrBefore(r.minDate,"year")&&j&&D.isSameOrAfter(j,"year")),(g=r.minDate)!=null&&g.isSameOrAfter(j)?(F.start=!!(j&&D.isSame(j,"year")),F.end=!!(r.minDate&&D.isSame(r.minDate,"year"))):(F.start=!!(r.minDate&&D.isSame(r.minDate,"year")),F.end=!!(j&&D.isSame(j,"year"))),k.isSame(D)&&(F.type="today"),F.text=O;const T=D.toDate();F.disabled=r.disabledDate&&r.disabledDate(T)||!1,$[M]=F}}return w}),h=()=>{var g;(g=l.value)==null||g.focus()},y=g=>{const w={},k=dayjs().locale(i.value),A=g.text;return w.disabled=r.disabledDate?a(A,i.value).every(r.disabledDate):!1,w.today=k.year()===A,w.current=castArray(r.parsedValue).findIndex($=>$.year()===A)>=0,g.inRange&&(w["in-range"]=!0,g.start&&(w["start-date"]=!0),g.end&&(w["end-date"]=!0)),w},m=g=>{const w=g.text;return castArray(r.date).findIndex(k=>k.year()===w)>=0},_=g=>{var w;const k=(w=g.target)==null?void 0:w.closest("td");if(!k||!k.textContent||hasClass(k,"disabled"))return;const A=k.cellIndex,M=k.parentNode.rowIndex*4+A+v.value,F=dayjs().year(M);if(r.selectionMode==="range")r.rangeState.selecting?(r.minDate&&F>=r.minDate?n("pick",{minDate:r.minDate,maxDate:F}):n("pick",{minDate:F,maxDate:r.minDate}),n("select",!1)):(n("pick",{minDate:F,maxDate:null}),n("select",!0));else if(r.selectionMode==="years"){if(g.type==="keydown"){n("pick",castArray(r.parsedValue),!1);return}const O=getValidDateOfYear(F.startOf("year"),i.value,r.disabledDate),D=hasClass(k,"current")?castArray(r.parsedValue).filter(j=>(j==null?void 0:j.year())!==M):castArray(r.parsedValue).concat([O]);n("pick",D)}else n("pick",M)},b=g=>{var w;if(!r.rangeState.selecting)return;const k=(w=g.target)==null?void 0:w.closest("td");if(!k)return;const A=k.parentNode.rowIndex,$=k.cellIndex;p.value[A][$].disabled||(A!==f.value||$!==c.value)&&(f.value=A,c.value=$,n("changerange",{selecting:!0,endDate:dayjs().year(v.value).add(A*4+$,"year")}))};return vue.watch(()=>r.date,async()=>{var g,w;(g=u.value)!=null&&g.contains(document.activeElement)&&(await vue.nextTick(),(w=l.value)==null||w.focus())}),t({focus:h}),(g,w)=>(vue.openBlock(),vue.createElementBlock("table",{role:"grid","aria-label":vue.unref(o)("el.datepicker.yearTablePrompt"),class:vue.normalizeClass(vue.unref(s).b()),onClick:_,onMousemove:b},[vue.createElementVNode("tbody",{ref_key:"tbodyRef",ref:u},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(vue.unref(p),(k,A)=>(vue.openBlock(),vue.createElementBlock("tr",{key:A},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(k,($,M)=>(vue.openBlock(),vue.createElementBlock("td",{key:`${A}_${M}`,ref_for:!0,ref:F=>m($)&&(l.value=F),class:vue.normalizeClass(["available",y($)]),"aria-selected":m($),"aria-label":String($.text),tabindex:m($)?0:-1,onKeydown:[vue.withKeys(vue.withModifiers(_,["prevent","stop"]),["space"]),vue.withKeys(vue.withModifiers(_,["prevent","stop"]),["enter"])]},[vue.createVNode(vue.unref(ElDatePickerCell),{cell:$},null,8,["cell"])],42,["aria-selected","aria-label","tabindex","onKeydown"]))),128))]))),128))],512)],42,["aria-label"]))}});var YearTable=_export_sfc(_sfc_main$v,[["__file","basic-year-table.vue"]]);const _sfc_main$u=vue.defineComponent({__name:"panel-date-pick",props:panelDatePickProps,emits:["pick","set-picker-option","panel-change"],setup(e,{emit:t}){const n=e,r=(oe,pe,S)=>!0,a=useNamespace("picker-panel"),s=useNamespace("date-picker"),o=vue.useAttrs(),i=vue.useSlots(),{t:u,lang:l}=useLocale(),v=vue.inject(PICKER_BASE_INJECTION_KEY),d=vue.inject(ROOT_PICKER_IS_DEFAULT_FORMAT_INJECTION_KEY),f=vue.inject(TOOLTIP_INJECTION_KEY),{shortcuts:c,disabledDate:p,cellClassName:h,defaultTime:y}=v.props,m=vue.toRef(v.props,"defaultValue"),_=vue.ref(),b=vue.ref(dayjs().locale(l.value)),g=vue.ref(!1);let w=!1;const k=vue.computed(()=>dayjs(y).locale(l.value)),A=vue.computed(()=>b.value.month()),$=vue.computed(()=>b.value.year()),M=vue.ref([]),F=vue.ref(null),O=vue.ref(null),D=oe=>M.value.length>0?r(oe,M.value,n.format||"HH:mm:ss"):!0,j=oe=>y&&!Ue.value&&!g.value&&!w?k.value.year(oe.year()).month(oe.month()).date(oe.date()):_e.value?oe.millisecond(0):oe.startOf("day"),z=(oe,...pe)=>{if(!oe)t("pick",oe,...pe);else if(isArray$1(oe)){const S=oe.map(j);t("pick",S,...pe)}else t("pick",j(oe),...pe);F.value=null,O.value=null,g.value=!1,w=!1},T=async(oe,pe)=>{if(Y.value==="date"){oe=oe;let S=n.parsedValue?n.parsedValue.year(oe.year()).month(oe.month()).date(oe.date()):oe;D(S)||(S=M.value[0][0].year(oe.year()).month(oe.month()).date(oe.date())),b.value=S,z(S,_e.value||pe),n.type==="datetime"&&(await vue.nextTick(),Bn())}else Y.value==="week"?z(oe.date):Y.value==="dates"&&z(oe,!0)},L=oe=>{const pe=oe?"add":"subtract";b.value=b.value[pe](1,"month"),$n("month")},ie=oe=>{const pe=b.value,S=oe?"add":"subtract";b.value=x.value==="year"?pe[S](10,"year"):pe[S](1,"year"),$n("year")},x=vue.ref("date"),V=vue.computed(()=>{const oe=u("el.datepicker.year");if(x.value==="year"){const pe=Math.floor($.value/10)*10;return oe?`${pe} ${oe} - ${pe+9} ${oe}`:`${pe} - ${pe+9}`}return`${$.value} ${oe}`}),le=oe=>{const pe=isFunction$1(oe.value)?oe.value():oe.value;if(pe){w=!0,z(dayjs(pe).locale(l.value));return}oe.onClick&&oe.onClick({attrs:o,slots:i,emit:t})},Y=vue.computed(()=>{const{type:oe}=n;return["week","month","months","year","years","dates"].includes(oe)?oe:"date"}),re=vue.computed(()=>Y.value==="dates"||Y.value==="months"||Y.value==="years"),he=vue.computed(()=>Y.value==="date"?x.value:Y.value),Ce=vue.computed(()=>!!c.length),$e=async(oe,pe)=>{Y.value==="month"?(b.value=getValidDateOfMonth(b.value,b.value.year(),oe,l.value,p),z(b.value,!1)):Y.value==="months"?z(oe,pe??!0):(b.value=getValidDateOfMonth(b.value,b.value.year(),oe,l.value,p),x.value="date",["month","year","date","week"].includes(Y.value)&&(z(b.value,!0),await vue.nextTick(),Bn())),$n("month")},Ne=async(oe,pe)=>{if(Y.value==="year"){const S=b.value.startOf("year").year(oe);b.value=getValidDateOfYear(S,l.value,p),z(b.value,!1)}else if(Y.value==="years")z(oe,pe??!0);else{const S=b.value.year(oe);b.value=getValidDateOfYear(S,l.value,p),x.value="month",["month","year","date","week"].includes(Y.value)&&(z(b.value,!0),await vue.nextTick(),Bn())}$n("year")},Pt=async oe=>{x.value=oe,await vue.nextTick(),Bn()},_e=vue.computed(()=>n.type==="datetime"||n.type==="datetimerange"),ze=vue.computed(()=>{const oe=_e.value||Y.value==="dates",pe=Y.value==="years",S=Y.value==="months",ae=x.value==="date",de=x.value==="year",Oe=x.value==="month";return oe&&ae||pe&&de||S&&Oe}),Et=vue.computed(()=>p?n.parsedValue?isArray$1(n.parsedValue)?p(n.parsedValue[0].toDate()):p(n.parsedValue.toDate()):!0:!1),Cn=()=>{if(re.value)z(n.parsedValue);else{let oe=n.parsedValue;if(!oe){const pe=dayjs(y).locale(l.value),S=xn();oe=pe.year(S.year()).month(S.month()).date(S.date())}b.value=oe,z(oe)}},kn=vue.computed(()=>p?p(dayjs().locale(l.value).toDate()):!1),In=()=>{const pe=dayjs().locale(l.value).toDate();g.value=!0,(!p||!p(pe))&&D(pe)&&(b.value=dayjs().locale(l.value),z(b.value))},Dn=vue.computed(()=>n.timeFormat||extractTimeFormat(n.format)),Mn=vue.computed(()=>n.dateFormat||extractDateFormat(n.format)),Ue=vue.computed(()=>{if(O.value)return O.value;if(!(!n.parsedValue&&!m.value))return(n.parsedValue||b.value).format(Dn.value)}),xe=vue.computed(()=>{if(F.value)return F.value;if(!(!n.parsedValue&&!m.value))return(n.parsedValue||b.value).format(Mn.value)}),Dt=vue.ref(!1),kt=()=>{Dt.value=!0},_n=()=>{Dt.value=!1},Sn=oe=>({hour:oe.hour(),minute:oe.minute(),second:oe.second(),year:oe.year(),month:oe.month(),date:oe.date()}),Tn=(oe,pe,S)=>{const{hour:ae,minute:de,second:Oe}=Sn(oe),At=n.parsedValue?n.parsedValue.hour(ae).minute(de).second(Oe):oe;b.value=At,z(b.value,!0),S||(Dt.value=pe)},An=oe=>{const pe=dayjs(oe,Dn.value).locale(l.value);if(pe.isValid()&&D(pe)){const{year:S,month:ae,date:de}=Sn(b.value);b.value=pe.year(S).month(ae).date(de),O.value=null,Dt.value=!1,z(b.value,!0)}},qe=oe=>{const pe=correctlyParseUserInput(oe,Mn.value,l.value,d);if(pe.isValid()){if(p&&p(pe.toDate()))return;const{hour:S,minute:ae,second:de}=Sn(b.value);b.value=pe.hour(S).minute(ae).second(de),F.value=null,z(b.value,!0)}},vn=oe=>dayjs.isDayjs(oe)&&oe.isValid()&&(p?!p(oe.toDate()):!0),Nn=oe=>isArray$1(oe)?oe.map(pe=>pe.format(n.format)):oe.format(n.format),Pn=oe=>correctlyParseUserInput(oe,n.format,l.value,d),xn=()=>{const oe=dayjs(m.value).locale(l.value);if(!m.value){const pe=k.value;return dayjs().hour(pe.hour()).minute(pe.minute()).second(pe.second()).locale(l.value)}return oe},Bn=()=>{var oe;["week","month","year","date"].includes(Y.value)&&((oe=_.value)==null||oe.focus())},Rn=()=>{Bn(),Y.value==="week"&&Fn(EVENT_CODE.down)},qn=oe=>{const{code:pe}=oe;[EVENT_CODE.up,EVENT_CODE.down,EVENT_CODE.left,EVENT_CODE.right,EVENT_CODE.home,EVENT_CODE.end,EVENT_CODE.pageUp,EVENT_CODE.pageDown].includes(pe)&&(Fn(pe),oe.stopPropagation(),oe.preventDefault()),[EVENT_CODE.enter,EVENT_CODE.space,EVENT_CODE.numpadEnter].includes(pe)&&F.value===null&&O.value===null&&(oe.preventDefault(),z(b.value,!1))},Fn=oe=>{var pe;const{up:S,down:ae,left:de,right:Oe,home:At,end:En,pageUp:wn,pageDown:hn}=EVENT_CODE,Lt={year:{[S]:-4,[ae]:4,[de]:-1,[Oe]:1,offset:(ue,Fe)=>ue.setFullYear(ue.getFullYear()+Fe)},month:{[S]:-4,[ae]:4,[de]:-1,[Oe]:1,offset:(ue,Fe)=>ue.setMonth(ue.getMonth()+Fe)},week:{[S]:-1,[ae]:1,[de]:-1,[Oe]:1,offset:(ue,Fe)=>ue.setDate(ue.getDate()+Fe*7)},date:{[S]:-7,[ae]:7,[de]:-1,[Oe]:1,[At]:ue=>-ue.getDay(),[En]:ue=>-ue.getDay()+6,[wn]:ue=>-new Date(ue.getFullYear(),ue.getMonth(),0).getDate(),[hn]:ue=>new Date(ue.getFullYear(),ue.getMonth()+1,0).getDate(),offset:(ue,Fe)=>ue.setDate(ue.getDate()+Fe)}},On=b.value.toDate();for(;Math.abs(b.value.diff(On,"year",!0))<1;){const ue=Lt[he.value];if(!ue)return;if(ue.offset(On,isFunction$1(ue[oe])?ue[oe](On):(pe=ue[oe])!=null?pe:0),p&&p(On))break;const Fe=dayjs(On).locale(l.value);b.value=Fe,t("pick",Fe,!0);break}},$n=oe=>{t("panel-change",b.value.toDate(),oe,x.value)};return vue.watch(()=>Y.value,oe=>{if(["month","year"].includes(oe)){x.value=oe;return}else if(oe==="years"){x.value="year";return}else if(oe==="months"){x.value="month";return}x.value="date"},{immediate:!0}),vue.watch(()=>x.value,()=>{f==null||f.updatePopper()}),vue.watch(()=>m.value,oe=>{oe&&(b.value=xn())},{immediate:!0}),vue.watch(()=>n.parsedValue,oe=>{if(oe){if(re.value||isArray$1(oe))return;b.value=oe}else b.value=xn()},{immediate:!0}),t("set-picker-option",["isValidValue",vn]),t("set-picker-option",["formatToString",Nn]),t("set-picker-option",["parseUserInput",Pn]),t("set-picker-option",["handleFocusPicker",Rn]),(oe,pe)=>(vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass([vue.unref(a).b(),vue.unref(s).b(),{"has-sidebar":oe.$slots.sidebar||vue.unref(Ce),"has-time":vue.unref(_e)}])},[vue.createElementVNode("div",{class:vue.normalizeClass(vue.unref(a).e("body-wrapper"))},[vue.renderSlot(oe.$slots,"sidebar",{class:vue.normalizeClass(vue.unref(a).e("sidebar"))}),vue.unref(Ce)?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:vue.normalizeClass(vue.unref(a).e("sidebar"))},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(vue.unref(c),(S,ae)=>(vue.openBlock(),vue.createElementBlock("button",{key:ae,type:"button",class:vue.normalizeClass(vue.unref(a).e("shortcut")),onClick:de=>le(S)},vue.toDisplayString(S.text),11,["onClick"]))),128))],2)):vue.createCommentVNode("v-if",!0),vue.createElementVNode("div",{class:vue.normalizeClass(vue.unref(a).e("body"))},[vue.unref(_e)?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:vue.normalizeClass(vue.unref(s).e("time-header"))},[vue.createElementVNode("span",{class:vue.normalizeClass(vue.unref(s).e("editor-wrap"))},[vue.createVNode(vue.unref(ElInput),{placeholder:vue.unref(u)("el.datepicker.selectDate"),"model-value":vue.unref(xe),size:"small","validate-event":!1,onInput:S=>F.value=S,onChange:qe},null,8,["placeholder","model-value","onInput"])],2),vue.withDirectives((vue.openBlock(),vue.createElementBlock("span",{class:vue.normalizeClass(vue.unref(s).e("editor-wrap"))},[vue.createVNode(vue.unref(ElInput),{placeholder:vue.unref(u)("el.datepicker.selectTime"),"model-value":vue.unref(Ue),size:"small","validate-event":!1,onFocus:kt,onInput:S=>O.value=S,onChange:An},null,8,["placeholder","model-value","onInput"]),vue.createVNode(vue.unref(TimePickPanel),{visible:Dt.value,format:vue.unref(Dn),"parsed-value":b.value,onPick:Tn},null,8,["visible","format","parsed-value"])],2)),[[vue.unref(ClickOutside),_n]])],2)):vue.createCommentVNode("v-if",!0),vue.withDirectives(vue.createElementVNode("div",{class:vue.normalizeClass([vue.unref(s).e("header"),(x.value==="year"||x.value==="month")&&vue.unref(s).e("header--bordered")])},[vue.createElementVNode("span",{class:vue.normalizeClass(vue.unref(s).e("prev-btn"))},[vue.createElementVNode("button",{type:"button","aria-label":vue.unref(u)("el.datepicker.prevYear"),class:vue.normalizeClass(["d-arrow-left",vue.unref(a).e("icon-btn")]),onClick:S=>ie(!1)},[vue.renderSlot(oe.$slots,"prev-year",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(d_arrow_left_default))]),_:1})])],10,["aria-label","onClick"]),vue.withDirectives(vue.createElementVNode("button",{type:"button","aria-label":vue.unref(u)("el.datepicker.prevMonth"),class:vue.normalizeClass([vue.unref(a).e("icon-btn"),"arrow-left"]),onClick:S=>L(!1)},[vue.renderSlot(oe.$slots,"prev-month",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(arrow_left_default))]),_:1})])],10,["aria-label","onClick"]),[[vue.vShow,x.value==="date"]])],2),vue.createElementVNode("span",{role:"button",class:vue.normalizeClass(vue.unref(s).e("header-label")),"aria-live":"polite",tabindex:"0",onKeydown:vue.withKeys(S=>Pt("year"),["enter"]),onClick:S=>Pt("year")},vue.toDisplayString(vue.unref(V)),43,["onKeydown","onClick"]),vue.withDirectives(vue.createElementVNode("span",{role:"button","aria-live":"polite",tabindex:"0",class:vue.normalizeClass([vue.unref(s).e("header-label"),{active:x.value==="month"}]),onKeydown:vue.withKeys(S=>Pt("month"),["enter"]),onClick:S=>Pt("month")},vue.toDisplayString(vue.unref(u)(`el.datepicker.month${vue.unref(A)+1}`)),43,["onKeydown","onClick"]),[[vue.vShow,x.value==="date"]]),vue.createElementVNode("span",{class:vue.normalizeClass(vue.unref(s).e("next-btn"))},[vue.withDirectives(vue.createElementVNode("button",{type:"button","aria-label":vue.unref(u)("el.datepicker.nextMonth"),class:vue.normalizeClass([vue.unref(a).e("icon-btn"),"arrow-right"]),onClick:S=>L(!0)},[vue.renderSlot(oe.$slots,"next-month",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(arrow_right_default))]),_:1})])],10,["aria-label","onClick"]),[[vue.vShow,x.value==="date"]]),vue.createElementVNode("button",{type:"button","aria-label":vue.unref(u)("el.datepicker.nextYear"),class:vue.normalizeClass([vue.unref(a).e("icon-btn"),"d-arrow-right"]),onClick:S=>ie(!0)},[vue.renderSlot(oe.$slots,"next-year",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(d_arrow_right_default))]),_:1})])],10,["aria-label","onClick"])],2)],2),[[vue.vShow,x.value!=="time"]]),vue.createElementVNode("div",{class:vue.normalizeClass(vue.unref(a).e("content")),onKeydown:qn},[x.value==="date"?(vue.openBlock(),vue.createBlock(DateTable,{key:0,ref_key:"currentViewRef",ref:_,"selection-mode":vue.unref(Y),date:b.value,"parsed-value":oe.parsedValue,"disabled-date":vue.unref(p),"cell-class-name":vue.unref(h),onPick:T},null,8,["selection-mode","date","parsed-value","disabled-date","cell-class-name"])):vue.createCommentVNode("v-if",!0),x.value==="year"?(vue.openBlock(),vue.createBlock(YearTable,{key:1,ref_key:"currentViewRef",ref:_,"selection-mode":vue.unref(Y),date:b.value,"disabled-date":vue.unref(p),"parsed-value":oe.parsedValue,onPick:Ne},null,8,["selection-mode","date","disabled-date","parsed-value"])):vue.createCommentVNode("v-if",!0),x.value==="month"?(vue.openBlock(),vue.createBlock(MonthTable,{key:2,ref_key:"currentViewRef",ref:_,"selection-mode":vue.unref(Y),date:b.value,"parsed-value":oe.parsedValue,"disabled-date":vue.unref(p),onPick:$e},null,8,["selection-mode","date","parsed-value","disabled-date"])):vue.createCommentVNode("v-if",!0)],34)],2)],2),vue.withDirectives(vue.createElementVNode("div",{class:vue.normalizeClass(vue.unref(a).e("footer"))},[vue.withDirectives(vue.createVNode(vue.unref(ElButton),{text:"",size:"small",class:vue.normalizeClass(vue.unref(a).e("link-btn")),disabled:vue.unref(kn),onClick:In},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(vue.unref(u)("el.datepicker.now")),1)]),_:1},8,["class","disabled"]),[[vue.vShow,!vue.unref(re)&&oe.showNow]]),vue.createVNode(vue.unref(ElButton),{plain:"",size:"small",class:vue.normalizeClass(vue.unref(a).e("link-btn")),disabled:vue.unref(Et),onClick:Cn},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(vue.unref(u)("el.datepicker.confirm")),1)]),_:1},8,["class","disabled"])],2),[[vue.vShow,vue.unref(ze)]])],2))}});var DatePickPanel=_export_sfc(_sfc_main$u,[["__file","panel-date-pick.vue"]]);const panelDateRangeProps=buildProps({...panelSharedProps,...panelRangeSharedProps}),useShortcut=e=>{const{emit:t}=vue.getCurrentInstance(),n=vue.useAttrs(),r=vue.useSlots();return s=>{const o=isFunction$1(s.value)?s.value():s.value;if(o){t("pick",[dayjs(o[0]).locale(e.value),dayjs(o[1]).locale(e.value)]);return}s.onClick&&s.onClick({attrs:n,slots:r,emit:t})}},useRangePicker=(e,{defaultValue:t,defaultTime:n,leftDate:r,rightDate:a,step:s,unit:o,onParsedValueChanged:i})=>{const{emit:u}=vue.getCurrentInstance(),{pickerNs:l}=vue.inject(ROOT_PICKER_INJECTION_KEY),v=useNamespace("date-range-picker"),{t:d,lang:f}=useLocale(),c=useShortcut(f),p=vue.ref(),h=vue.ref(),y=vue.ref({endDate:null,selecting:!1}),m=k=>{y.value=k},_=(k=!1)=>{const A=vue.unref(p),$=vue.unref(h);isValidRange([A,$])&&u("pick",[A,$],k)},b=k=>{y.value.selecting=k,k||(y.value.endDate=null)},g=k=>{if(isArray$1(k)&&k.length===2){const[A,$]=k;p.value=A,r.value=A,h.value=$,i(vue.unref(p),vue.unref(h))}else w()},w=()=>{let[k,A]=getDefaultValue(vue.unref(t),{lang:vue.unref(f),step:s,unit:o,unlinkPanels:e.unlinkPanels});const $=F=>F.diff(F.startOf("d"),"ms"),M=vue.unref(n);if(M){let F=0,O=0;if(isArray$1(M)){const[D,j]=M.map(dayjs);F=$(D),O=$(j)}else{const D=$(dayjs(M));F=D,O=D}k=k.startOf("d").add(F,"ms"),A=A.startOf("d").add(O,"ms")}p.value=void 0,h.value=void 0,r.value=k,a.value=A};return vue.watch(t,k=>{k&&w()},{immediate:!0}),vue.watch(()=>e.parsedValue,g,{immediate:!0}),{minDate:p,maxDate:h,rangeState:y,lang:f,ppNs:l,drpNs:v,handleChangeRange:m,handleRangeConfirm:_,handleShortcutClick:c,onSelect:b,onReset:g,t:d}},usePanelDateRange=(e,t,n,r)=>{const a=vue.ref("date"),s=vue.ref(),o=vue.ref("date"),i=vue.ref(),u=vue.inject(PICKER_BASE_INJECTION_KEY),{disabledDate:l}=u.props,{t:v,lang:d}=useLocale(),f=vue.computed(()=>n.value.year()),c=vue.computed(()=>n.value.month()),p=vue.computed(()=>r.value.year()),h=vue.computed(()=>r.value.month());function y(k,A){const $=v("el.datepicker.year");if(k.value==="year"){const M=Math.floor(A.value/10)*10;return $?`${M} ${$} - ${M+9} ${$}`:`${M} - ${M+9}`}return`${A.value} ${$}`}function m(k){k==null||k.focus()}async function _(k,A){const $=k==="left"?a:o,M=k==="left"?s:i;$.value=A,await vue.nextTick(),m(M.value)}async function b(k,A,$){const M=A==="left",F=M?n:r,O=M?r:n,D=M?a:o,j=M?s:i;if(k==="year"){const z=F.value.year($);F.value=getValidDateOfYear(z,d.value,l)}k==="month"&&(F.value=getValidDateOfMonth(F.value,F.value.year(),$,d.value,l)),e.unlinkPanels||(O.value=A==="left"?F.value.add(1,"month"):F.value.subtract(1,"month")),D.value=k==="year"?"month":"date",await vue.nextTick(),m(j.value),g(k)}function g(k){t("panel-change",[n.value.toDate(),r.value.toDate()],k)}function w(k,A,$){const M=$?"add":"subtract";return k==="year"?A[M](10,"year"):A[M](1,"year")}return{leftCurrentView:a,rightCurrentView:o,leftCurrentViewRef:s,rightCurrentViewRef:i,leftYear:f,rightYear:p,leftMonth:c,rightMonth:h,leftYearLabel:vue.computed(()=>y(a,f)),rightYearLabel:vue.computed(()=>y(o,p)),showLeftPicker:k=>_("left",k),showRightPicker:k=>_("right",k),handleLeftYearPick:k=>b("year","left",k),handleRightYearPick:k=>b("year","right",k),handleLeftMonthPick:k=>b("month","left",k),handleRightMonthPick:k=>b("month","right",k),handlePanelChange:g,adjustDateByView:w}},unit$2="month",_sfc_main$t=vue.defineComponent({__name:"panel-date-range",props:panelDateRangeProps,emits:["pick","set-picker-option","calendar-change","panel-change"],setup(e,{emit:t}){const n=e,r=vue.inject(PICKER_BASE_INJECTION_KEY),a=vue.inject(ROOT_PICKER_IS_DEFAULT_FORMAT_INJECTION_KEY),{disabledDate:s,cellClassName:o,defaultTime:i,clearable:u}=r.props,l=vue.toRef(r.props,"format"),v=vue.toRef(r.props,"shortcuts"),d=vue.toRef(r.props,"defaultValue"),{lang:f}=useLocale(),c=vue.ref(dayjs().locale(f.value)),p=vue.ref(dayjs().locale(f.value).add(1,unit$2)),{minDate:h,maxDate:y,rangeState:m,ppNs:_,drpNs:b,handleChangeRange:g,handleRangeConfirm:w,handleShortcutClick:k,onSelect:A,onReset:$,t:M}=useRangePicker(n,{defaultValue:d,defaultTime:i,leftDate:c,rightDate:p,unit:unit$2,onParsedValueChanged:On});vue.watch(()=>n.visible,ue=>{!ue&&m.value.selecting&&($(n.parsedValue),A(!1))});const F=vue.ref({min:null,max:null}),O=vue.ref({min:null,max:null}),{leftCurrentView:D,rightCurrentView:j,leftCurrentViewRef:z,rightCurrentViewRef:T,leftYear:L,rightYear:ie,leftMonth:x,rightMonth:V,leftYearLabel:le,rightYearLabel:Y,showLeftPicker:re,showRightPicker:he,handleLeftYearPick:Ce,handleRightYearPick:$e,handleLeftMonthPick:Ne,handleRightMonthPick:Pt,handlePanelChange:_e,adjustDateByView:ze}=usePanelDateRange(n,t,c,p),Et=vue.computed(()=>!!v.value.length),Cn=vue.computed(()=>F.value.min!==null?F.value.min:h.value?h.value.format(Ue.value):""),kn=vue.computed(()=>F.value.max!==null?F.value.max:y.value||h.value?(y.value||h.value).format(Ue.value):""),In=vue.computed(()=>O.value.min!==null?O.value.min:h.value?h.value.format(Mn.value):""),Dn=vue.computed(()=>O.value.max!==null?O.value.max:y.value||h.value?(y.value||h.value).format(Mn.value):""),Mn=vue.computed(()=>n.timeFormat||extractTimeFormat(l.value)),Ue=vue.computed(()=>n.dateFormat||extractDateFormat(l.value)),xe=ue=>isValidRange(ue)&&(s?!s(ue[0].toDate())&&!s(ue[1].toDate()):!0),Dt=()=>{c.value=ze(D.value,c.value,!1),n.unlinkPanels||(p.value=c.value.add(1,"month")),_e("year")},kt=()=>{c.value=c.value.subtract(1,"month"),n.unlinkPanels||(p.value=c.value.add(1,"month")),_e("month")},_n=()=>{n.unlinkPanels?p.value=ze(j.value,p.value,!0):(c.value=ze(j.value,c.value,!0),p.value=c.value.add(1,"month")),_e("year")},Sn=()=>{n.unlinkPanels?p.value=p.value.add(1,"month"):(c.value=c.value.add(1,"month"),p.value=c.value.add(1,"month")),_e("month")},Tn=()=>{c.value=ze(D.value,c.value,!0),_e("year")},An=()=>{c.value=c.value.add(1,"month"),_e("month")},qe=()=>{p.value=ze(j.value,p.value,!1),_e("year")},vn=()=>{p.value=p.value.subtract(1,"month"),_e("month")},Nn=vue.computed(()=>{const ue=(x.value+1)%12,Fe=x.value+1>=12?1:0;return n.unlinkPanels&&new Date(L.value+Fe,ue)<new Date(ie.value,V.value)}),Pn=vue.computed(()=>n.unlinkPanels&&ie.value*12+V.value-(L.value*12+x.value+1)>=12),xn=vue.computed(()=>!(h.value&&y.value&&!m.value.selecting&&isValidRange([h.value,y.value]))),Bn=vue.computed(()=>n.type==="datetime"||n.type==="datetimerange"),Rn=(ue,Fe)=>{if(ue)return i?dayjs(i[Fe]||i).locale(f.value).year(ue.year()).month(ue.month()).date(ue.date()):ue},qn=(ue,Fe=!0)=>{const Ve=ue.minDate,bn=ue.maxDate,Ln=Rn(Ve,0),jn=Rn(bn,1);y.value===jn&&h.value===Ln||(t("calendar-change",[Ve.toDate(),bn&&bn.toDate()]),y.value=jn,h.value=Ln,!(!Fe||Bn.value)&&w())},Fn=vue.ref(!1),$n=vue.ref(!1),oe=()=>{Fn.value=!1},pe=()=>{$n.value=!1},S=(ue,Fe)=>{F.value[Fe]=ue;const Ve=dayjs(ue,Ue.value).locale(f.value);if(Ve.isValid()){if(s&&s(Ve.toDate()))return;Fe==="min"?(c.value=Ve,h.value=(h.value||c.value).year(Ve.year()).month(Ve.month()).date(Ve.date()),!n.unlinkPanels&&(!y.value||y.value.isBefore(h.value))&&(p.value=Ve.add(1,"month"),y.value=h.value.add(1,"month"))):(p.value=Ve,y.value=(y.value||p.value).year(Ve.year()).month(Ve.month()).date(Ve.date()),!n.unlinkPanels&&(!h.value||h.value.isAfter(y.value))&&(c.value=Ve.subtract(1,"month"),h.value=y.value.subtract(1,"month")))}},ae=(ue,Fe)=>{F.value[Fe]=null},de=(ue,Fe)=>{O.value[Fe]=ue;const Ve=dayjs(ue,Mn.value).locale(f.value);Ve.isValid()&&(Fe==="min"?(Fn.value=!0,h.value=(h.value||c.value).hour(Ve.hour()).minute(Ve.minute()).second(Ve.second())):($n.value=!0,y.value=(y.value||p.value).hour(Ve.hour()).minute(Ve.minute()).second(Ve.second()),p.value=y.value))},Oe=(ue,Fe)=>{O.value[Fe]=null,Fe==="min"?(c.value=h.value,Fn.value=!1,(!y.value||y.value.isBefore(h.value))&&(y.value=h.value)):(p.value=y.value,$n.value=!1,y.value&&y.value.isBefore(h.value)&&(h.value=y.value))},At=(ue,Fe,Ve)=>{O.value.min||(ue&&(c.value=ue,h.value=(h.value||c.value).hour(ue.hour()).minute(ue.minute()).second(ue.second())),Ve||(Fn.value=Fe),(!y.value||y.value.isBefore(h.value))&&(y.value=h.value,p.value=ue))},En=(ue,Fe,Ve)=>{O.value.max||(ue&&(p.value=ue,y.value=(y.value||p.value).hour(ue.hour()).minute(ue.minute()).second(ue.second())),Ve||($n.value=Fe),y.value&&y.value.isBefore(h.value)&&(h.value=y.value))},wn=()=>{c.value=getDefaultValue(vue.unref(d),{lang:vue.unref(f),unit:"month",unlinkPanels:n.unlinkPanels})[0],p.value=c.value.add(1,"month"),y.value=void 0,h.value=void 0,t("pick",null)},hn=ue=>isArray$1(ue)?ue.map(Fe=>Fe.format(l.value)):ue.format(l.value),Lt=ue=>correctlyParseUserInput(ue,l.value,f.value,a);function On(ue,Fe){if(n.unlinkPanels&&Fe){const Ve=(ue==null?void 0:ue.year())||0,bn=(ue==null?void 0:ue.month())||0,Ln=Fe.year(),jn=Fe.month();p.value=Ve===Ln&&bn===jn?Fe.add(1,unit$2):Fe}else p.value=c.value.add(1,unit$2),Fe&&(p.value=p.value.hour(Fe.hour()).minute(Fe.minute()).second(Fe.second()))}return t("set-picker-option",["isValidValue",xe]),t("set-picker-option",["parseUserInput",Lt]),t("set-picker-option",["formatToString",hn]),t("set-picker-option",["handleClear",wn]),(ue,Fe)=>(vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass([vue.unref(_).b(),vue.unref(b).b(),{"has-sidebar":ue.$slots.sidebar||vue.unref(Et),"has-time":vue.unref(Bn)}])},[vue.createElementVNode("div",{class:vue.normalizeClass(vue.unref(_).e("body-wrapper"))},[vue.renderSlot(ue.$slots,"sidebar",{class:vue.normalizeClass(vue.unref(_).e("sidebar"))}),vue.unref(Et)?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:vue.normalizeClass(vue.unref(_).e("sidebar"))},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(vue.unref(v),(Ve,bn)=>(vue.openBlock(),vue.createElementBlock("button",{key:bn,type:"button",class:vue.normalizeClass(vue.unref(_).e("shortcut")),onClick:Ln=>vue.unref(k)(Ve)},vue.toDisplayString(Ve.text),11,["onClick"]))),128))],2)):vue.createCommentVNode("v-if",!0),vue.createElementVNode("div",{class:vue.normalizeClass(vue.unref(_).e("body"))},[vue.unref(Bn)?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:vue.normalizeClass(vue.unref(b).e("time-header"))},[vue.createElementVNode("span",{class:vue.normalizeClass(vue.unref(b).e("editors-wrap"))},[vue.createElementVNode("span",{class:vue.normalizeClass(vue.unref(b).e("time-picker-wrap"))},[vue.createVNode(vue.unref(ElInput),{size:"small",disabled:vue.unref(m).selecting,placeholder:vue.unref(M)("el.datepicker.startDate"),class:vue.normalizeClass(vue.unref(b).e("editor")),"model-value":vue.unref(Cn),"validate-event":!1,onInput:Ve=>S(Ve,"min"),onChange:Ve=>ae(Ve,"min")},null,8,["disabled","placeholder","class","model-value","onInput","onChange"])],2),vue.withDirectives((vue.openBlock(),vue.createElementBlock("span",{class:vue.normalizeClass(vue.unref(b).e("time-picker-wrap"))},[vue.createVNode(vue.unref(ElInput),{size:"small",class:vue.normalizeClass(vue.unref(b).e("editor")),disabled:vue.unref(m).selecting,placeholder:vue.unref(M)("el.datepicker.startTime"),"model-value":vue.unref(In),"validate-event":!1,onFocus:Ve=>Fn.value=!0,onInput:Ve=>de(Ve,"min"),onChange:Ve=>Oe(Ve,"min")},null,8,["class","disabled","placeholder","model-value","onFocus","onInput","onChange"]),vue.createVNode(vue.unref(TimePickPanel),{visible:Fn.value,format:vue.unref(Mn),"datetime-role":"start","parsed-value":c.value,onPick:At},null,8,["visible","format","parsed-value"])],2)),[[vue.unref(ClickOutside),oe]])],2),vue.createElementVNode("span",null,[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(arrow_right_default))]),_:1})]),vue.createElementVNode("span",{class:vue.normalizeClass([vue.unref(b).e("editors-wrap"),"is-right"])},[vue.createElementVNode("span",{class:vue.normalizeClass(vue.unref(b).e("time-picker-wrap"))},[vue.createVNode(vue.unref(ElInput),{size:"small",class:vue.normalizeClass(vue.unref(b).e("editor")),disabled:vue.unref(m).selecting,placeholder:vue.unref(M)("el.datepicker.endDate"),"model-value":vue.unref(kn),readonly:!vue.unref(h),"validate-event":!1,onInput:Ve=>S(Ve,"max"),onChange:Ve=>ae(Ve,"max")},null,8,["class","disabled","placeholder","model-value","readonly","onInput","onChange"])],2),vue.withDirectives((vue.openBlock(),vue.createElementBlock("span",{class:vue.normalizeClass(vue.unref(b).e("time-picker-wrap"))},[vue.createVNode(vue.unref(ElInput),{size:"small",class:vue.normalizeClass(vue.unref(b).e("editor")),disabled:vue.unref(m).selecting,placeholder:vue.unref(M)("el.datepicker.endTime"),"model-value":vue.unref(Dn),readonly:!vue.unref(h),"validate-event":!1,onFocus:Ve=>vue.unref(h)&&($n.value=!0),onInput:Ve=>de(Ve,"max"),onChange:Ve=>Oe(Ve,"max")},null,8,["class","disabled","placeholder","model-value","readonly","onFocus","onInput","onChange"]),vue.createVNode(vue.unref(TimePickPanel),{"datetime-role":"end",visible:$n.value,format:vue.unref(Mn),"parsed-value":p.value,onPick:En},null,8,["visible","format","parsed-value"])],2)),[[vue.unref(ClickOutside),pe]])],2)],2)):vue.createCommentVNode("v-if",!0),vue.createElementVNode("div",{class:vue.normalizeClass([[vue.unref(_).e("content"),vue.unref(b).e("content")],"is-left"])},[vue.createElementVNode("div",{class:vue.normalizeClass(vue.unref(b).e("header"))},[vue.createElementVNode("button",{type:"button",class:vue.normalizeClass([vue.unref(_).e("icon-btn"),"d-arrow-left"]),"aria-label":vue.unref(M)("el.datepicker.prevYear"),onClick:Dt},[vue.renderSlot(ue.$slots,"prev-year",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(d_arrow_left_default))]),_:1})])],10,["aria-label"]),vue.withDirectives(vue.createElementVNode("button",{type:"button",class:vue.normalizeClass([vue.unref(_).e("icon-btn"),"arrow-left"]),"aria-label":vue.unref(M)("el.datepicker.prevMonth"),onClick:kt},[vue.renderSlot(ue.$slots,"prev-month",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(arrow_left_default))]),_:1})])],10,["aria-label"]),[[vue.vShow,vue.unref(D)==="date"]]),ue.unlinkPanels?(vue.openBlock(),vue.createElementBlock("button",{key:0,type:"button",disabled:!vue.unref(Pn),class:vue.normalizeClass([[vue.unref(_).e("icon-btn"),{"is-disabled":!vue.unref(Pn)}],"d-arrow-right"]),"aria-label":vue.unref(M)("el.datepicker.nextYear"),onClick:Tn},[vue.renderSlot(ue.$slots,"next-year",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(d_arrow_right_default))]),_:1})])],10,["disabled","aria-label"])):vue.createCommentVNode("v-if",!0),ue.unlinkPanels&&vue.unref(D)==="date"?(vue.openBlock(),vue.createElementBlock("button",{key:1,type:"button",disabled:!vue.unref(Nn),class:vue.normalizeClass([[vue.unref(_).e("icon-btn"),{"is-disabled":!vue.unref(Nn)}],"arrow-right"]),"aria-label":vue.unref(M)("el.datepicker.nextMonth"),onClick:An},[vue.renderSlot(ue.$slots,"next-month",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(arrow_right_default))]),_:1})])],10,["disabled","aria-label"])):vue.createCommentVNode("v-if",!0),vue.createElementVNode("div",null,[vue.createElementVNode("span",{role:"button",class:vue.normalizeClass(vue.unref(b).e("header-label")),"aria-live":"polite",tabindex:"0",onKeydown:vue.withKeys(Ve=>vue.unref(re)("year"),["enter"]),onClick:Ve=>vue.unref(re)("year")},vue.toDisplayString(vue.unref(le)),43,["onKeydown","onClick"]),vue.withDirectives(vue.createElementVNode("span",{role:"button","aria-live":"polite",tabindex:"0",class:vue.normalizeClass([vue.unref(b).e("header-label"),{active:vue.unref(D)==="month"}]),onKeydown:vue.withKeys(Ve=>vue.unref(re)("month"),["enter"]),onClick:Ve=>vue.unref(re)("month")},vue.toDisplayString(vue.unref(M)(`el.datepicker.month${c.value.month()+1}`)),43,["onKeydown","onClick"]),[[vue.vShow,vue.unref(D)==="date"]])])],2),vue.unref(D)==="date"?(vue.openBlock(),vue.createBlock(DateTable,{key:0,ref_key:"leftCurrentViewRef",ref:z,"selection-mode":"range",date:c.value,"min-date":vue.unref(h),"max-date":vue.unref(y),"range-state":vue.unref(m),"disabled-date":vue.unref(s),"cell-class-name":vue.unref(o),onChangerange:vue.unref(g),onPick:qn,onSelect:vue.unref(A)},null,8,["date","min-date","max-date","range-state","disabled-date","cell-class-name","onChangerange","onSelect"])):vue.createCommentVNode("v-if",!0),vue.unref(D)==="year"?(vue.openBlock(),vue.createBlock(YearTable,{key:1,ref_key:"leftCurrentViewRef",ref:z,"selection-mode":"year",date:c.value,"disabled-date":vue.unref(s),"parsed-value":ue.parsedValue,onPick:vue.unref(Ce)},null,8,["date","disabled-date","parsed-value","onPick"])):vue.createCommentVNode("v-if",!0),vue.unref(D)==="month"?(vue.openBlock(),vue.createBlock(MonthTable,{key:2,ref_key:"leftCurrentViewRef",ref:z,"selection-mode":"month",date:c.value,"parsed-value":ue.parsedValue,"disabled-date":vue.unref(s),onPick:vue.unref(Ne)},null,8,["date","parsed-value","disabled-date","onPick"])):vue.createCommentVNode("v-if",!0)],2),vue.createElementVNode("div",{class:vue.normalizeClass([[vue.unref(_).e("content"),vue.unref(b).e("content")],"is-right"])},[vue.createElementVNode("div",{class:vue.normalizeClass(vue.unref(b).e("header"))},[ue.unlinkPanels?(vue.openBlock(),vue.createElementBlock("button",{key:0,type:"button",disabled:!vue.unref(Pn),class:vue.normalizeClass([[vue.unref(_).e("icon-btn"),{"is-disabled":!vue.unref(Pn)}],"d-arrow-left"]),"aria-label":vue.unref(M)("el.datepicker.prevYear"),onClick:qe},[vue.renderSlot(ue.$slots,"prev-year",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(d_arrow_left_default))]),_:1})])],10,["disabled","aria-label"])):vue.createCommentVNode("v-if",!0),ue.unlinkPanels&&vue.unref(j)==="date"?(vue.openBlock(),vue.createElementBlock("button",{key:1,type:"button",disabled:!vue.unref(Nn),class:vue.normalizeClass([[vue.unref(_).e("icon-btn"),{"is-disabled":!vue.unref(Nn)}],"arrow-left"]),"aria-label":vue.unref(M)("el.datepicker.prevMonth"),onClick:vn},[vue.renderSlot(ue.$slots,"prev-month",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(arrow_left_default))]),_:1})])],10,["disabled","aria-label"])):vue.createCommentVNode("v-if",!0),vue.createElementVNode("button",{type:"button","aria-label":vue.unref(M)("el.datepicker.nextYear"),class:vue.normalizeClass([vue.unref(_).e("icon-btn"),"d-arrow-right"]),onClick:_n},[vue.renderSlot(ue.$slots,"next-year",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(d_arrow_right_default))]),_:1})])],10,["aria-label"]),vue.withDirectives(vue.createElementVNode("button",{type:"button",class:vue.normalizeClass([vue.unref(_).e("icon-btn"),"arrow-right"]),"aria-label":vue.unref(M)("el.datepicker.nextMonth"),onClick:Sn},[vue.renderSlot(ue.$slots,"next-month",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(arrow_right_default))]),_:1})])],10,["aria-label"]),[[vue.vShow,vue.unref(j)==="date"]]),vue.createElementVNode("div",null,[vue.createElementVNode("span",{role:"button",class:vue.normalizeClass(vue.unref(b).e("header-label")),"aria-live":"polite",tabindex:"0",onKeydown:vue.withKeys(Ve=>vue.unref(he)("year"),["enter"]),onClick:Ve=>vue.unref(he)("year")},vue.toDisplayString(vue.unref(Y)),43,["onKeydown","onClick"]),vue.withDirectives(vue.createElementVNode("span",{role:"button","aria-live":"polite",tabindex:"0",class:vue.normalizeClass([vue.unref(b).e("header-label"),{active:vue.unref(j)==="month"}]),onKeydown:vue.withKeys(Ve=>vue.unref(he)("month"),["enter"]),onClick:Ve=>vue.unref(he)("month")},vue.toDisplayString(vue.unref(M)(`el.datepicker.month${p.value.month()+1}`)),43,["onKeydown","onClick"]),[[vue.vShow,vue.unref(j)==="date"]])])],2),vue.unref(j)==="date"?(vue.openBlock(),vue.createBlock(DateTable,{key:0,ref_key:"rightCurrentViewRef",ref:T,"selection-mode":"range",date:p.value,"min-date":vue.unref(h),"max-date":vue.unref(y),"range-state":vue.unref(m),"disabled-date":vue.unref(s),"cell-class-name":vue.unref(o),onChangerange:vue.unref(g),onPick:qn,onSelect:vue.unref(A)},null,8,["date","min-date","max-date","range-state","disabled-date","cell-class-name","onChangerange","onSelect"])):vue.createCommentVNode("v-if",!0),vue.unref(j)==="year"?(vue.openBlock(),vue.createBlock(YearTable,{key:1,ref_key:"rightCurrentViewRef",ref:T,"selection-mode":"year",date:p.value,"disabled-date":vue.unref(s),"parsed-value":ue.parsedValue,onPick:vue.unref($e)},null,8,["date","disabled-date","parsed-value","onPick"])):vue.createCommentVNode("v-if",!0),vue.unref(j)==="month"?(vue.openBlock(),vue.createBlock(MonthTable,{key:2,ref_key:"rightCurrentViewRef",ref:T,"selection-mode":"month",date:p.value,"parsed-value":ue.parsedValue,"disabled-date":vue.unref(s),onPick:vue.unref(Pt)},null,8,["date","parsed-value","disabled-date","onPick"])):vue.createCommentVNode("v-if",!0)],2)],2)],2),vue.unref(Bn)?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:vue.normalizeClass(vue.unref(_).e("footer"))},[vue.unref(u)?(vue.openBlock(),vue.createBlock(vue.unref(ElButton),{key:0,text:"",size:"small",class:vue.normalizeClass(vue.unref(_).e("link-btn")),onClick:wn},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(vue.unref(M)("el.datepicker.clear")),1)]),_:1},8,["class"])):vue.createCommentVNode("v-if",!0),vue.createVNode(vue.unref(ElButton),{plain:"",size:"small",class:vue.normalizeClass(vue.unref(_).e("link-btn")),disabled:vue.unref(xn),onClick:Ve=>vue.unref(w)(!1)},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(vue.unref(M)("el.datepicker.confirm")),1)]),_:1},8,["class","disabled","onClick"])],2)):vue.createCommentVNode("v-if",!0)],2))}});var DateRangePickPanel=_export_sfc(_sfc_main$t,[["__file","panel-date-range.vue"]]);const panelMonthRangeProps=buildProps({...panelRangeSharedProps}),panelMonthRangeEmits=["pick","set-picker-option","calendar-change"],useMonthRangeHeader=({unlinkPanels:e,leftDate:t,rightDate:n})=>{const{t:r}=useLocale(),a=()=>{t.value=t.value.subtract(1,"year"),e.value||(n.value=n.value.subtract(1,"year"))},s=()=>{e.value||(t.value=t.value.add(1,"year")),n.value=n.value.add(1,"year")},o=()=>{t.value=t.value.add(1,"year")},i=()=>{n.value=n.value.subtract(1,"year")},u=vue.computed(()=>`${t.value.year()} ${r("el.datepicker.year")}`),l=vue.computed(()=>`${n.value.year()} ${r("el.datepicker.year")}`),v=vue.computed(()=>t.value.year()),d=vue.computed(()=>n.value.year()===t.value.year()?t.value.year()+1:n.value.year());return{leftPrevYear:a,rightNextYear:s,leftNextYear:o,rightPrevYear:i,leftLabel:u,rightLabel:l,leftYear:v,rightYear:d}},unit$1="year",__default__$5=vue.defineComponent({name:"DatePickerMonthRange"}),_sfc_main$s=vue.defineComponent({...__default__$5,props:panelMonthRangeProps,emits:panelMonthRangeEmits,setup(e,{emit:t}){const n=e,{lang:r}=useLocale(),a=vue.inject(PICKER_BASE_INJECTION_KEY),s=vue.inject(ROOT_PICKER_IS_DEFAULT_FORMAT_INJECTION_KEY),{shortcuts:o,disabledDate:i}=a.props,u=vue.toRef(a.props,"format"),l=vue.toRef(a.props,"defaultValue"),v=vue.ref(dayjs().locale(r.value)),d=vue.ref(dayjs().locale(r.value).add(1,unit$1)),{minDate:f,maxDate:c,rangeState:p,ppNs:h,drpNs:y,handleChangeRange:m,handleRangeConfirm:_,handleShortcutClick:b,onSelect:g,onReset:w}=useRangePicker(n,{defaultValue:l,leftDate:v,rightDate:d,unit:unit$1,onParsedValueChanged:le}),k=vue.computed(()=>!!o.length),{leftPrevYear:A,rightNextYear:$,leftNextYear:M,rightPrevYear:F,leftLabel:O,rightLabel:D,leftYear:j,rightYear:z}=useMonthRangeHeader({unlinkPanels:vue.toRef(n,"unlinkPanels"),leftDate:v,rightDate:d}),T=vue.computed(()=>n.unlinkPanels&&z.value>j.value+1),L=(Y,re=!0)=>{const he=Y.minDate,Ce=Y.maxDate;c.value===Ce&&f.value===he||(t("calendar-change",[he.toDate(),Ce&&Ce.toDate()]),c.value=Ce,f.value=he,re&&_())},ie=()=>{v.value=getDefaultValue(vue.unref(l),{lang:vue.unref(r),unit:"year",unlinkPanels:n.unlinkPanels})[0],d.value=v.value.add(1,"year"),t("pick",null)},x=Y=>isArray$1(Y)?Y.map(re=>re.format(u.value)):Y.format(u.value),V=Y=>correctlyParseUserInput(Y,u.value,r.value,s);function le(Y,re){if(n.unlinkPanels&&re){const he=(Y==null?void 0:Y.year())||0,Ce=re.year();d.value=he===Ce?re.add(1,unit$1):re}else d.value=v.value.add(1,unit$1)}return vue.watch(()=>n.visible,Y=>{!Y&&p.value.selecting&&(w(n.parsedValue),g(!1))}),t("set-picker-option",["isValidValue",isValidRange]),t("set-picker-option",["formatToString",x]),t("set-picker-option",["parseUserInput",V]),t("set-picker-option",["handleClear",ie]),(Y,re)=>(vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass([vue.unref(h).b(),vue.unref(y).b(),{"has-sidebar":!!Y.$slots.sidebar||vue.unref(k)}])},[vue.createElementVNode("div",{class:vue.normalizeClass(vue.unref(h).e("body-wrapper"))},[vue.renderSlot(Y.$slots,"sidebar",{class:vue.normalizeClass(vue.unref(h).e("sidebar"))}),vue.unref(k)?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:vue.normalizeClass(vue.unref(h).e("sidebar"))},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(vue.unref(o),(he,Ce)=>(vue.openBlock(),vue.createElementBlock("button",{key:Ce,type:"button",class:vue.normalizeClass(vue.unref(h).e("shortcut")),onClick:$e=>vue.unref(b)(he)},vue.toDisplayString(he.text),11,["onClick"]))),128))],2)):vue.createCommentVNode("v-if",!0),vue.createElementVNode("div",{class:vue.normalizeClass(vue.unref(h).e("body"))},[vue.createElementVNode("div",{class:vue.normalizeClass([[vue.unref(h).e("content"),vue.unref(y).e("content")],"is-left"])},[vue.createElementVNode("div",{class:vue.normalizeClass(vue.unref(y).e("header"))},[vue.createElementVNode("button",{type:"button",class:vue.normalizeClass([vue.unref(h).e("icon-btn"),"d-arrow-left"]),onClick:vue.unref(A)},[vue.renderSlot(Y.$slots,"prev-year",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(d_arrow_left_default))]),_:1})])],10,["onClick"]),Y.unlinkPanels?(vue.openBlock(),vue.createElementBlock("button",{key:0,type:"button",disabled:!vue.unref(T),class:vue.normalizeClass([[vue.unref(h).e("icon-btn"),{[vue.unref(h).is("disabled")]:!vue.unref(T)}],"d-arrow-right"]),onClick:vue.unref(M)},[vue.renderSlot(Y.$slots,"next-year",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(d_arrow_right_default))]),_:1})])],10,["disabled","onClick"])):vue.createCommentVNode("v-if",!0),vue.createElementVNode("div",null,vue.toDisplayString(vue.unref(O)),1)],2),vue.createVNode(MonthTable,{"selection-mode":"range",date:v.value,"min-date":vue.unref(f),"max-date":vue.unref(c),"range-state":vue.unref(p),"disabled-date":vue.unref(i),onChangerange:vue.unref(m),onPick:L,onSelect:vue.unref(g)},null,8,["date","min-date","max-date","range-state","disabled-date","onChangerange","onSelect"])],2),vue.createElementVNode("div",{class:vue.normalizeClass([[vue.unref(h).e("content"),vue.unref(y).e("content")],"is-right"])},[vue.createElementVNode("div",{class:vue.normalizeClass(vue.unref(y).e("header"))},[Y.unlinkPanels?(vue.openBlock(),vue.createElementBlock("button",{key:0,type:"button",disabled:!vue.unref(T),class:vue.normalizeClass([[vue.unref(h).e("icon-btn"),{"is-disabled":!vue.unref(T)}],"d-arrow-left"]),onClick:vue.unref(F)},[vue.renderSlot(Y.$slots,"prev-year",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(d_arrow_left_default))]),_:1})])],10,["disabled","onClick"])):vue.createCommentVNode("v-if",!0),vue.createElementVNode("button",{type:"button",class:vue.normalizeClass([vue.unref(h).e("icon-btn"),"d-arrow-right"]),onClick:vue.unref($)},[vue.renderSlot(Y.$slots,"next-year",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(d_arrow_right_default))]),_:1})])],10,["onClick"]),vue.createElementVNode("div",null,vue.toDisplayString(vue.unref(D)),1)],2),vue.createVNode(MonthTable,{"selection-mode":"range",date:d.value,"min-date":vue.unref(f),"max-date":vue.unref(c),"range-state":vue.unref(p),"disabled-date":vue.unref(i),onChangerange:vue.unref(m),onPick:L,onSelect:vue.unref(g)},null,8,["date","min-date","max-date","range-state","disabled-date","onChangerange","onSelect"])],2)],2)],2)],2))}});var MonthRangePickPanel=_export_sfc(_sfc_main$s,[["__file","panel-month-range.vue"]]);const panelYearRangeProps=buildProps({...panelRangeSharedProps}),panelYearRangeEmits=["pick","set-picker-option","calendar-change"],useYearRangeHeader=({unlinkPanels:e,leftDate:t,rightDate:n})=>{const r=()=>{t.value=t.value.subtract(10,"year"),e.value||(n.value=n.value.subtract(10,"year"))},a=()=>{e.value||(t.value=t.value.add(10,"year")),n.value=n.value.add(10,"year")},s=()=>{t.value=t.value.add(10,"year")},o=()=>{n.value=n.value.subtract(10,"year")},i=vue.computed(()=>{const d=Math.floor(t.value.year()/10)*10;return`${d}-${d+9}`}),u=vue.computed(()=>{const d=Math.floor(n.value.year()/10)*10;return`${d}-${d+9}`}),l=vue.computed(()=>Math.floor(t.value.year()/10)*10+9),v=vue.computed(()=>Math.floor(n.value.year()/10)*10);return{leftPrevYear:r,rightNextYear:a,leftNextYear:s,rightPrevYear:o,leftLabel:i,rightLabel:u,leftYear:l,rightYear:v}},step=10,unit="year",__default__$4=vue.defineComponent({name:"DatePickerYearRange"}),_sfc_main$r=vue.defineComponent({...__default__$4,props:panelYearRangeProps,emits:panelYearRangeEmits,setup(e,{emit:t}){const n=e,{lang:r}=useLocale(),a=vue.ref(dayjs().locale(r.value)),s=vue.ref(dayjs().locale(r.value).add(step,unit)),o=vue.inject(ROOT_PICKER_IS_DEFAULT_FORMAT_INJECTION_KEY),i=vue.inject(PICKER_BASE_INJECTION_KEY),{shortcuts:u,disabledDate:l}=i.props,v=vue.toRef(i.props,"format"),d=vue.toRef(i.props,"defaultValue"),{minDate:f,maxDate:c,rangeState:p,ppNs:h,drpNs:y,handleChangeRange:m,handleRangeConfirm:_,handleShortcutClick:b,onSelect:g,onReset:w}=useRangePicker(n,{defaultValue:d,leftDate:a,rightDate:s,step,unit,onParsedValueChanged:Ce}),{leftPrevYear:k,rightNextYear:A,leftNextYear:$,rightPrevYear:M,leftLabel:F,rightLabel:O,leftYear:D,rightYear:j}=useYearRangeHeader({unlinkPanels:vue.toRef(n,"unlinkPanels"),leftDate:a,rightDate:s}),z=vue.computed(()=>!!u.length),T=vue.computed(()=>[h.b(),y.b(),{"has-sidebar":!!vue.useSlots().sidebar||z.value}]),L=vue.computed(()=>({content:[h.e("content"),y.e("content"),"is-left"],arrowLeftBtn:[h.e("icon-btn"),"d-arrow-left"],arrowRightBtn:[h.e("icon-btn"),{[h.is("disabled")]:!x.value},"d-arrow-right"]})),ie=vue.computed(()=>({content:[h.e("content"),y.e("content"),"is-right"],arrowLeftBtn:[h.e("icon-btn"),{"is-disabled":!x.value},"d-arrow-left"],arrowRightBtn:[h.e("icon-btn"),"d-arrow-right"]})),x=vue.computed(()=>n.unlinkPanels&&j.value>D.value+1),V=($e,Ne=!0)=>{const Pt=$e.minDate,_e=$e.maxDate;c.value===_e&&f.value===Pt||(t("calendar-change",[Pt.toDate(),_e&&_e.toDate()]),c.value=_e,f.value=Pt,Ne&&_())},le=$e=>correctlyParseUserInput($e,v.value,r.value,o),Y=$e=>isArray$1($e)?$e.map(Ne=>Ne.format(v.value)):$e.format(v.value),re=$e=>isValidRange($e)&&(l?!l($e[0].toDate())&&!l($e[1].toDate()):!0),he=()=>{const $e=getDefaultValue(vue.unref(d),{lang:vue.unref(r),step,unit,unlinkPanels:n.unlinkPanels});a.value=$e[0],s.value=$e[1],t("pick",null)};function Ce($e,Ne){if(n.unlinkPanels&&Ne){const Pt=($e==null?void 0:$e.year())||0,_e=Ne.year();s.value=Pt+step>_e?Ne.add(step,unit):Ne}else s.value=a.value.add(step,unit)}return vue.watch(()=>n.visible,$e=>{!$e&&p.value.selecting&&(w(n.parsedValue),g(!1))}),t("set-picker-option",["isValidValue",re]),t("set-picker-option",["parseUserInput",le]),t("set-picker-option",["formatToString",Y]),t("set-picker-option",["handleClear",he]),($e,Ne)=>(vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(vue.unref(T))},[vue.createElementVNode("div",{class:vue.normalizeClass(vue.unref(h).e("body-wrapper"))},[vue.renderSlot($e.$slots,"sidebar",{class:vue.normalizeClass(vue.unref(h).e("sidebar"))}),vue.unref(z)?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:vue.normalizeClass(vue.unref(h).e("sidebar"))},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(vue.unref(u),(Pt,_e)=>(vue.openBlock(),vue.createElementBlock("button",{key:_e,type:"button",class:vue.normalizeClass(vue.unref(h).e("shortcut")),onClick:ze=>vue.unref(b)(Pt)},vue.toDisplayString(Pt.text),11,["onClick"]))),128))],2)):vue.createCommentVNode("v-if",!0),vue.createElementVNode("div",{class:vue.normalizeClass(vue.unref(h).e("body"))},[vue.createElementVNode("div",{class:vue.normalizeClass(vue.unref(L).content)},[vue.createElementVNode("div",{class:vue.normalizeClass(vue.unref(y).e("header"))},[vue.createElementVNode("button",{type:"button",class:vue.normalizeClass(vue.unref(L).arrowLeftBtn),onClick:vue.unref(k)},[vue.renderSlot($e.$slots,"prev-year",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(d_arrow_left_default))]),_:1})])],10,["onClick"]),$e.unlinkPanels?(vue.openBlock(),vue.createElementBlock("button",{key:0,type:"button",disabled:!vue.unref(x),class:vue.normalizeClass(vue.unref(L).arrowRightBtn),onClick:vue.unref($)},[vue.renderSlot($e.$slots,"next-year",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(d_arrow_right_default))]),_:1})])],10,["disabled","onClick"])):vue.createCommentVNode("v-if",!0),vue.createElementVNode("div",null,vue.toDisplayString(vue.unref(F)),1)],2),vue.createVNode(YearTable,{"selection-mode":"range",date:a.value,"min-date":vue.unref(f),"max-date":vue.unref(c),"range-state":vue.unref(p),"disabled-date":vue.unref(l),onChangerange:vue.unref(m),onPick:V,onSelect:vue.unref(g)},null,8,["date","min-date","max-date","range-state","disabled-date","onChangerange","onSelect"])],2),vue.createElementVNode("div",{class:vue.normalizeClass(vue.unref(ie).content)},[vue.createElementVNode("div",{class:vue.normalizeClass(vue.unref(y).e("header"))},[$e.unlinkPanels?(vue.openBlock(),vue.createElementBlock("button",{key:0,type:"button",disabled:!vue.unref(x),class:vue.normalizeClass(vue.unref(ie).arrowLeftBtn),onClick:vue.unref(M)},[vue.renderSlot($e.$slots,"prev-year",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(d_arrow_left_default))]),_:1})])],10,["disabled","onClick"])):vue.createCommentVNode("v-if",!0),vue.createElementVNode("button",{type:"button",class:vue.normalizeClass(vue.unref(ie).arrowRightBtn),onClick:vue.unref(A)},[vue.renderSlot($e.$slots,"next-year",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(d_arrow_right_default))]),_:1})])],10,["onClick"]),vue.createElementVNode("div",null,vue.toDisplayString(vue.unref(O)),1)],2),vue.createVNode(YearTable,{"selection-mode":"range",date:s.value,"min-date":vue.unref(f),"max-date":vue.unref(c),"range-state":vue.unref(p),"disabled-date":vue.unref(l),onChangerange:vue.unref(m),onPick:V,onSelect:vue.unref(g)},null,8,["date","min-date","max-date","range-state","disabled-date","onChangerange","onSelect"])],2)],2)],2)],2))}});var YearRangePickPanel=_export_sfc(_sfc_main$r,[["__file","panel-year-range.vue"]]);const getPanel=function(e){switch(e){case"daterange":case"datetimerange":return DateRangePickPanel;case"monthrange":return MonthRangePickPanel;case"yearrange":return YearRangePickPanel;default:return DatePickPanel}};dayjs.extend(localeData),dayjs.extend(advancedFormat),dayjs.extend(customParseFormat),dayjs.extend(weekOfYear),dayjs.extend(weekYear),dayjs.extend(dayOfYear),dayjs.extend(isSameOrAfter),dayjs.extend(isSameOrBefore);var DatePicker=vue.defineComponent({name:"ElDatePicker",install:null,props:datePickerProps,emits:[UPDATE_MODEL_EVENT],setup(e,{expose:t,emit:n,slots:r}){const a=useNamespace("picker-panel"),s=vue.computed(()=>!e.format);vue.provide(ROOT_PICKER_IS_DEFAULT_FORMAT_INJECTION_KEY,s),vue.provide(PICKER_POPPER_OPTIONS_INJECTION_KEY,vue.reactive(vue.toRef(e,"popperOptions"))),vue.provide(ROOT_PICKER_INJECTION_KEY,{slots:r,pickerNs:a});const o=vue.ref();t({focus:()=>{var l;(l=o.value)==null||l.focus()},blur:()=>{var l;(l=o.value)==null||l.blur()},handleOpen:()=>{var l;(l=o.value)==null||l.handleOpen()},handleClose:()=>{var l;(l=o.value)==null||l.handleClose()}});const u=l=>{n(UPDATE_MODEL_EVENT,l)};return()=>{var l;const v=(l=e.format)!=null?l:DEFAULT_FORMATS_DATEPICKER[e.type]||DEFAULT_FORMATS_DATE,d=getPanel(e.type);return vue.createVNode(CommonPicker,vue.mergeProps(e,{format:v,type:e.type,ref:o,"onUpdate:modelValue":u}),{default:f=>vue.createVNode(d,f,{"prev-month":r["prev-month"],"next-month":r["next-month"],"prev-year":r["prev-year"],"next-year":r["next-year"]}),"range-separator":r["range-separator"]})}}});const ElDatePicker=withInstall(DatePicker),useSameTarget=e=>{if(!e)return{onClick:NOOP,onMousedown:NOOP,onMouseup:NOOP};let t=!1,n=!1;return{onClick:o=>{t&&n&&e(o),t=n=!1},onMousedown:o=>{t=o.target===o.currentTarget},onMouseup:o=>{n=o.target===o.currentTarget}}},overlayProps=buildProps({mask:{type:Boolean,default:!0},customMaskEvent:Boolean,overlayClass:{type:definePropType([String,Array,Object])},zIndex:{type:definePropType([String,Number])}}),overlayEmits={click:e=>e instanceof MouseEvent},BLOCK="overlay";var Overlay=vue.defineComponent({name:"ElOverlay",props:overlayProps,emits:overlayEmits,setup(e,{slots:t,emit:n}){const r=useNamespace(BLOCK),a=u=>{n("click",u)},{onClick:s,onMousedown:o,onMouseup:i}=useSameTarget(e.customMaskEvent?void 0:a);return()=>e.mask?vue.createVNode("div",{class:[r.b(),e.overlayClass],style:{zIndex:e.zIndex},onClick:s,onMousedown:o,onMouseup:i},[vue.renderSlot(t,"default")],PatchFlags.STYLE|PatchFlags.CLASS|PatchFlags.PROPS,["onClick","onMouseup","onMousedown"]):vue.h("div",{class:e.overlayClass,style:{zIndex:e.zIndex,position:"fixed",top:"0px",right:"0px",bottom:"0px",left:"0px"}},[vue.renderSlot(t,"default")])}});const ElOverlay=Overlay,dialogInjectionKey=Symbol("dialogInjectionKey"),dialogContentProps=buildProps({center:Boolean,alignCenter:Boolean,closeIcon:{type:iconPropType},draggable:Boolean,overflow:Boolean,fullscreen:Boolean,headerClass:String,bodyClass:String,footerClass:String,showClose:{type:Boolean,default:!0},title:{type:String,default:""},ariaLevel:{type:String,default:"2"}}),dialogContentEmits={close:()=>!0},useDraggable=(e,t,n,r)=>{const a={offsetX:0,offsetY:0},s=(d,f)=>{if(e.value){const{offsetX:c,offsetY:p}=a,h=e.value.getBoundingClientRect(),y=h.left,m=h.top,_=h.width,b=h.height,g=document.documentElement.clientWidth,w=document.documentElement.clientHeight,k=-y+c,A=-m+p,$=g-y-_+c,M=w-m-(b<w?b:0)+p;r!=null&&r.value||(d=Math.min(Math.max(d,k),$),f=Math.min(Math.max(f,A),M)),a.offsetX=d,a.offsetY=f,e.value.style.transform=`translate(${addUnit(d)}, ${addUnit(f)})`}},o=d=>{const f=d.clientX,c=d.clientY,{offsetX:p,offsetY:h}=a,y=_=>{const b=p+_.clientX-f,g=h+_.clientY-c;s(b,g)},m=()=>{document.removeEventListener("mousemove",y),document.removeEventListener("mouseup",m)};document.addEventListener("mousemove",y),document.addEventListener("mouseup",m)},i=()=>{t.value&&e.value&&(t.value.addEventListener("mousedown",o),window.addEventListener("resize",v))},u=()=>{t.value&&e.value&&(t.value.removeEventListener("mousedown",o),window.removeEventListener("resize",v))},l=()=>{a.offsetX=0,a.offsetY=0,e.value&&(e.value.style.transform="")},v=()=>{const{offsetX:d,offsetY:f}=a;s(d,f)};return vue.onMounted(()=>{vue.watchEffect(()=>{n.value?i():u()})}),vue.onBeforeUnmount(()=>{u()}),{resetPosition:l,updatePosition:v}},composeRefs=(...e)=>t=>{e.forEach(n=>{isFunction$1(n)?n(t):n.value=t})},__default__$3=vue.defineComponent({name:"ElDialogContent"}),_sfc_main$q=vue.defineComponent({...__default__$3,props:dialogContentProps,emits:dialogContentEmits,setup(e,{expose:t}){const n=e,{t:r}=useLocale(),{Close:a}=CloseComponents,{dialogRef:s,headerRef:o,bodyId:i,ns:u,style:l}=vue.inject(dialogInjectionKey),{focusTrapRef:v}=vue.inject(FOCUS_TRAP_INJECTION_KEY),d=vue.computed(()=>[u.b(),u.is("fullscreen",n.fullscreen),u.is("draggable",n.draggable),u.is("align-center",n.alignCenter),{[u.m("center")]:n.center}]),f=composeRefs(v,s),c=vue.computed(()=>n.draggable),p=vue.computed(()=>n.overflow),{resetPosition:h,updatePosition:y}=useDraggable(s,o,c,p);return t({resetPosition:h,updatePosition:y}),(m,_)=>(vue.openBlock(),vue.createElementBlock("div",{ref:vue.unref(f),class:vue.normalizeClass(vue.unref(d)),style:vue.normalizeStyle(vue.unref(l)),tabindex:"-1"},[vue.createElementVNode("header",{ref_key:"headerRef",ref:o,class:vue.normalizeClass([vue.unref(u).e("header"),m.headerClass,{"show-close":m.showClose}])},[vue.renderSlot(m.$slots,"header",{},()=>[vue.createElementVNode("span",{role:"heading","aria-level":m.ariaLevel,class:vue.normalizeClass(vue.unref(u).e("title"))},vue.toDisplayString(m.title),11,["aria-level"])]),m.showClose?(vue.openBlock(),vue.createElementBlock("button",{key:0,"aria-label":vue.unref(r)("el.dialog.close"),class:vue.normalizeClass(vue.unref(u).e("headerbtn")),type:"button",onClick:b=>m.$emit("close")},[vue.createVNode(vue.unref(ElIcon),{class:vue.normalizeClass(vue.unref(u).e("close"))},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(m.closeIcon||vue.unref(a))))]),_:1},8,["class"])],10,["aria-label","onClick"])):vue.createCommentVNode("v-if",!0)],2),vue.createElementVNode("div",{id:vue.unref(i),class:vue.normalizeClass([vue.unref(u).e("body"),m.bodyClass])},[vue.renderSlot(m.$slots,"default")],10,["id"]),m.$slots.footer?(vue.openBlock(),vue.createElementBlock("footer",{key:0,class:vue.normalizeClass([vue.unref(u).e("footer"),m.footerClass])},[vue.renderSlot(m.$slots,"footer")],2)):vue.createCommentVNode("v-if",!0)],6))}});var ElDialogContent=_export_sfc(_sfc_main$q,[["__file","dialog-content.vue"]]);const dialogProps=buildProps({...dialogContentProps,appendToBody:Boolean,appendTo:{type:teleportProps.to.type,default:"body"},beforeClose:{type:definePropType(Function)},destroyOnClose:Boolean,closeOnClickModal:{type:Boolean,default:!0},closeOnPressEscape:{type:Boolean,default:!0},lockScroll:{type:Boolean,default:!0},modal:{type:Boolean,default:!0},openDelay:{type:Number,default:0},closeDelay:{type:Number,default:0},top:{type:String},modelValue:Boolean,modalClass:String,headerClass:String,bodyClass:String,footerClass:String,width:{type:[String,Number]},zIndex:{type:Number},trapFocus:Boolean,headerAriaLevel:{type:String,default:"2"}}),dialogEmits={open:()=>!0,opened:()=>!0,close:()=>!0,closed:()=>!0,[UPDATE_MODEL_EVENT]:e=>isBoolean(e),openAutoFocus:()=>!0,closeAutoFocus:()=>!0},useLockscreen=(e,t={})=>{vue.isRef(e)||throwError("[useLockscreen]","You need to pass a ref param to this function");const n=t.ns||useNamespace("popup"),r=vue.computed(()=>n.bm("parent","hidden"));if(!isClient||hasClass(document.body,r.value))return;let a=0,s=!1,o="0";const i=()=>{setTimeout(()=>{typeof document>"u"||s&&document&&(document.body.style.width=o,removeClass(document.body,r.value))},200)};vue.watch(e,u=>{if(!u){i();return}s=!hasClass(document.body,r.value),s&&(o=document.body.style.width,addClass(document.body,r.value)),a=getScrollBarWidth(n.namespace.value);const l=document.documentElement.clientHeight<document.body.scrollHeight,v=getStyle(document.body,"overflowY");a>0&&(l||v==="scroll")&&s&&(document.body.style.width=`calc(100% - ${a}px)`)}),vue.onScopeDispose(()=>i())},useDialog=(e,t)=>{var n;const a=vue.getCurrentInstance().emit,{nextZIndex:s}=useZIndex();let o="";const i=useId(),u=useId(),l=vue.ref(!1),v=vue.ref(!1),d=vue.ref(!1),f=vue.ref((n=e.zIndex)!=null?n:s());let c,p;const h=useGlobalConfig("namespace",defaultNamespace),y=vue.computed(()=>{const T={},L=`--${h.value}-dialog`;return e.fullscreen||(e.top&&(T[`${L}-margin-top`]=e.top),e.width&&(T[`${L}-width`]=addUnit(e.width))),T}),m=vue.computed(()=>e.alignCenter?{display:"flex"}:{});function _(){a("opened")}function b(){a("closed"),a(UPDATE_MODEL_EVENT,!1),e.destroyOnClose&&(d.value=!1)}function g(){a("close")}function w(){p==null||p(),c==null||c(),e.openDelay&&e.openDelay>0?{stop:c}=useTimeoutFn(()=>M(),e.openDelay):M()}function k(){c==null||c(),p==null||p(),e.closeDelay&&e.closeDelay>0?{stop:p}=useTimeoutFn(()=>F(),e.closeDelay):F()}function A(){function T(L){L||(v.value=!0,l.value=!1)}e.beforeClose?e.beforeClose(T):k()}function $(){e.closeOnClickModal&&A()}function M(){isClient&&(l.value=!0)}function F(){l.value=!1}function O(){a("openAutoFocus")}function D(){a("closeAutoFocus")}function j(T){var L;((L=T.detail)==null?void 0:L.focusReason)==="pointer"&&T.preventDefault()}e.lockScroll&&useLockscreen(l);function z(){e.closeOnPressEscape&&A()}return vue.watch(()=>e.zIndex,()=>{var T;f.value=(T=e.zIndex)!=null?T:s()}),vue.watch(()=>e.modelValue,T=>{var L;T?(v.value=!1,w(),d.value=!0,f.value=(L=e.zIndex)!=null?L:s(),vue.nextTick(()=>{a("open"),t.value&&(t.value.parentElement.scrollTop=0,t.value.parentElement.scrollLeft=0,t.value.scrollTop=0)})):l.value&&k()}),vue.watch(()=>e.fullscreen,T=>{t.value&&(T?(o=t.value.style.transform,t.value.style.transform=""):t.value.style.transform=o)}),vue.onMounted(()=>{e.modelValue&&(l.value=!0,d.value=!0,w())}),{afterEnter:_,afterLeave:b,beforeLeave:g,handleClose:A,onModalClick:$,close:k,doClose:F,onOpenAutoFocus:O,onCloseAutoFocus:D,onCloseRequested:z,onFocusoutPrevented:j,titleId:i,bodyId:u,closed:v,style:y,overlayDialogStyle:m,rendered:d,visible:l,zIndex:f}},__default__$2=vue.defineComponent({name:"ElDialog",inheritAttrs:!1}),_sfc_main$p=vue.defineComponent({...__default__$2,props:dialogProps,emits:dialogEmits,setup(e,{expose:t}){const n=e,r=vue.useSlots();useDeprecated({scope:"el-dialog",from:"the title slot",replacement:"the header slot",version:"3.0.0",ref:"https://element-plus.org/en-US/component/dialog.html#slots"},vue.computed(()=>!!r.title));const a=useNamespace("dialog"),s=vue.ref(),o=vue.ref(),i=vue.ref(),{visible:u,titleId:l,bodyId:v,style:d,overlayDialogStyle:f,rendered:c,zIndex:p,afterEnter:h,afterLeave:y,beforeLeave:m,handleClose:_,onModalClick:b,onOpenAutoFocus:g,onCloseAutoFocus:w,onCloseRequested:k,onFocusoutPrevented:A}=useDialog(n,s);vue.provide(dialogInjectionKey,{dialogRef:s,headerRef:o,bodyId:v,ns:a,rendered:c,style:d});const $=useSameTarget(b),M=vue.computed(()=>n.draggable&&!n.fullscreen);return t({visible:u,dialogContentRef:i,resetPosition:()=>{var O;(O=i.value)==null||O.resetPosition()},handleClose:_}),(O,D)=>(vue.openBlock(),vue.createBlock(vue.unref(ElTeleport),{to:O.appendTo,disabled:O.appendTo!=="body"?!1:!O.appendToBody},{default:vue.withCtx(()=>[vue.createVNode(vue.Transition,{name:"dialog-fade",onAfterEnter:vue.unref(h),onAfterLeave:vue.unref(y),onBeforeLeave:vue.unref(m),persisted:""},{default:vue.withCtx(()=>[vue.withDirectives(vue.createVNode(vue.unref(ElOverlay),{"custom-mask-event":"",mask:O.modal,"overlay-class":O.modalClass,"z-index":vue.unref(p)},{default:vue.withCtx(()=>[vue.createElementVNode("div",{role:"dialog","aria-modal":"true","aria-label":O.title||void 0,"aria-labelledby":O.title?void 0:vue.unref(l),"aria-describedby":vue.unref(v),class:vue.normalizeClass(`${vue.unref(a).namespace.value}-overlay-dialog`),style:vue.normalizeStyle(vue.unref(f)),onClick:vue.unref($).onClick,onMousedown:vue.unref($).onMousedown,onMouseup:vue.unref($).onMouseup},[vue.createVNode(vue.unref(ElFocusTrap),{loop:"",trapped:vue.unref(u),"focus-start-el":"container",onFocusAfterTrapped:vue.unref(g),onFocusAfterReleased:vue.unref(w),onFocusoutPrevented:vue.unref(A),onReleaseRequested:vue.unref(k)},{default:vue.withCtx(()=>[vue.unref(c)?(vue.openBlock(),vue.createBlock(ElDialogContent,vue.mergeProps({key:0,ref_key:"dialogContentRef",ref:i},O.$attrs,{center:O.center,"align-center":O.alignCenter,"close-icon":O.closeIcon,draggable:vue.unref(M),overflow:O.overflow,fullscreen:O.fullscreen,"header-class":O.headerClass,"body-class":O.bodyClass,"footer-class":O.footerClass,"show-close":O.showClose,title:O.title,"aria-level":O.headerAriaLevel,onClose:vue.unref(_)}),vue.createSlots({header:vue.withCtx(()=>[O.$slots.title?vue.renderSlot(O.$slots,"title",{key:1}):vue.renderSlot(O.$slots,"header",{key:0,close:vue.unref(_),titleId:vue.unref(l),titleClass:vue.unref(a).e("title")})]),default:vue.withCtx(()=>[vue.renderSlot(O.$slots,"default")]),_:2},[O.$slots.footer?{name:"footer",fn:vue.withCtx(()=>[vue.renderSlot(O.$slots,"footer")])}:void 0]),1040,["center","align-center","close-icon","draggable","overflow","fullscreen","header-class","body-class","footer-class","show-close","title","aria-level","onClose"])):vue.createCommentVNode("v-if",!0)]),_:3},8,["trapped","onFocusAfterTrapped","onFocusAfterReleased","onFocusoutPrevented","onReleaseRequested"])],46,["aria-label","aria-labelledby","aria-describedby","onClick","onMousedown","onMouseup"])]),_:3},8,["mask","overlay-class","z-index"]),[[vue.vShow,vue.unref(u)]])]),_:3},8,["onAfterEnter","onAfterLeave","onBeforeLeave"])]),_:3},8,["to","disabled"]))}});var Dialog=_export_sfc(_sfc_main$p,[["__file","dialog.vue"]]);const ElDialog=withInstall(Dialog),inputNumberProps=buildProps({id:{type:String,default:void 0},step:{type:Number,default:1},stepStrictly:Boolean,max:{type:Number,default:Number.POSITIVE_INFINITY},min:{type:Number,default:Number.NEGATIVE_INFINITY},modelValue:{type:[Number,null]},readonly:Boolean,disabled:Boolean,size:useSizeProp,controls:{type:Boolean,default:!0},controlsPosition:{type:String,default:"",values:["","right"]},valueOnClear:{type:[String,Number,null],validator:e=>e===null||isNumber(e)||["min","max"].includes(e),default:null},name:String,placeholder:String,precision:{type:Number,validator:e=>e>=0&&e===Number.parseInt(`${e}`,10)},validateEvent:{type:Boolean,default:!0},...useAriaProps(["ariaLabel"])}),inputNumberEmits={[CHANGE_EVENT]:(e,t)=>t!==e,blur:e=>e instanceof FocusEvent,focus:e=>e instanceof FocusEvent,[INPUT_EVENT]:e=>isNumber(e)||isNil(e),[UPDATE_MODEL_EVENT]:e=>isNumber(e)||isNil(e)},__default__$1=vue.defineComponent({name:"ElInputNumber"}),_sfc_main$o=vue.defineComponent({...__default__$1,props:inputNumberProps,emits:inputNumberEmits,setup(e,{expose:t,emit:n}){const r=e,{t:a}=useLocale(),s=useNamespace("input-number"),o=vue.ref(),i=vue.reactive({currentValue:r.modelValue,userInput:null}),{formItem:u}=useFormItem(),l=vue.computed(()=>isNumber(r.modelValue)&&r.modelValue<=r.min),v=vue.computed(()=>isNumber(r.modelValue)&&r.modelValue>=r.max),d=vue.computed(()=>{const T=m(r.step);return isUndefined(r.precision)?Math.max(m(r.modelValue),T):(T>r.precision&&debugWarn("InputNumber","precision should not be less than the decimal places of step"),r.precision)}),f=vue.computed(()=>r.controls&&r.controlsPosition==="right"),c=useFormSize(),p=useFormDisabled(),h=vue.computed(()=>{if(i.userInput!==null)return i.userInput;let T=i.currentValue;if(isNil(T))return"";if(isNumber(T)){if(Number.isNaN(T))return"";isUndefined(r.precision)||(T=T.toFixed(r.precision))}return T}),y=(T,L)=>{if(isUndefined(L)&&(L=d.value),L===0)return Math.round(T);let ie=String(T);const x=ie.indexOf(".");if(x===-1||!ie.replace(".","").split("")[x+L])return T;const Y=ie.length;return ie.charAt(Y-1)==="5"&&(ie=`${ie.slice(0,Math.max(0,Y-1))}6`),Number.parseFloat(Number(ie).toFixed(L))},m=T=>{if(isNil(T))return 0;const L=T.toString(),ie=L.indexOf(".");let x=0;return ie!==-1&&(x=L.length-ie-1),x},_=(T,L=1)=>isNumber(T)?y(T+r.step*L):i.currentValue,b=()=>{if(r.readonly||p.value||v.value)return;const T=Number(h.value)||0,L=_(T);k(L),n(INPUT_EVENT,i.currentValue),j()},g=()=>{if(r.readonly||p.value||l.value)return;const T=Number(h.value)||0,L=_(T,-1);k(L),n(INPUT_EVENT,i.currentValue),j()},w=(T,L)=>{const{max:ie,min:x,step:V,precision:le,stepStrictly:Y,valueOnClear:re}=r;ie<x&&throwError("InputNumber","min should not be greater than max.");let he=Number(T);if(isNil(T)||Number.isNaN(he))return null;if(T===""){if(re===null)return null;he=isString$1(re)?{min:x,max:ie}[re]:re}return Y&&(he=y(Math.round(he/V)*V,le),he!==T&&L&&n(UPDATE_MODEL_EVENT,he)),isUndefined(le)||(he=y(he,le)),(he>ie||he<x)&&(he=he>ie?ie:x,L&&n(UPDATE_MODEL_EVENT,he)),he},k=(T,L=!0)=>{var ie;const x=i.currentValue,V=w(T);if(!L){n(UPDATE_MODEL_EVENT,V);return}x===V&&T||(i.userInput=null,n(UPDATE_MODEL_EVENT,V),x!==V&&n(CHANGE_EVENT,V,x),r.validateEvent&&((ie=u==null?void 0:u.validate)==null||ie.call(u,"change").catch(le=>debugWarn(le))),i.currentValue=V)},A=T=>{i.userInput=T;const L=T===""?null:Number(T);n(INPUT_EVENT,L),k(L,!1)},$=T=>{const L=T!==""?Number(T):"";(isNumber(L)&&!Number.isNaN(L)||T==="")&&k(L),j(),i.userInput=null},M=()=>{var T,L;(L=(T=o.value)==null?void 0:T.focus)==null||L.call(T)},F=()=>{var T,L;(L=(T=o.value)==null?void 0:T.blur)==null||L.call(T)},O=T=>{n("focus",T)},D=T=>{var L,ie;i.userInput=null,i.currentValue===null&&((L=o.value)!=null&&L.input)&&(o.value.input.value=""),n("blur",T),r.validateEvent&&((ie=u==null?void 0:u.validate)==null||ie.call(u,"blur").catch(x=>debugWarn(x)))},j=()=>{i.currentValue!==r.modelValue&&(i.currentValue=r.modelValue)},z=T=>{document.activeElement===T.target&&T.preventDefault()};return vue.watch(()=>r.modelValue,(T,L)=>{const ie=w(T,!0);i.userInput===null&&ie!==L&&(i.currentValue=ie)},{immediate:!0}),vue.onMounted(()=>{var T;const{min:L,max:ie,modelValue:x}=r,V=(T=o.value)==null?void 0:T.input;if(V.setAttribute("role","spinbutton"),Number.isFinite(ie)?V.setAttribute("aria-valuemax",String(ie)):V.removeAttribute("aria-valuemax"),Number.isFinite(L)?V.setAttribute("aria-valuemin",String(L)):V.removeAttribute("aria-valuemin"),V.setAttribute("aria-valuenow",i.currentValue||i.currentValue===0?String(i.currentValue):""),V.setAttribute("aria-disabled",String(p.value)),!isNumber(x)&&x!=null){let le=Number(x);Number.isNaN(le)&&(le=null),n(UPDATE_MODEL_EVENT,le)}V.addEventListener("wheel",z,{passive:!1})}),vue.onUpdated(()=>{var T,L;const ie=(T=o.value)==null?void 0:T.input;ie==null||ie.setAttribute("aria-valuenow",`${(L=i.currentValue)!=null?L:""}`)}),t({focus:M,blur:F}),(T,L)=>(vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass([vue.unref(s).b(),vue.unref(s).m(vue.unref(c)),vue.unref(s).is("disabled",vue.unref(p)),vue.unref(s).is("without-controls",!T.controls),vue.unref(s).is("controls-right",vue.unref(f))]),onDragstart:vue.withModifiers(()=>{},["prevent"])},[T.controls?vue.withDirectives((vue.openBlock(),vue.createElementBlock("span",{key:0,role:"button","aria-label":vue.unref(a)("el.inputNumber.decrease"),class:vue.normalizeClass([vue.unref(s).e("decrease"),vue.unref(s).is("disabled",vue.unref(l))]),onKeydown:vue.withKeys(g,["enter"])},[vue.renderSlot(T.$slots,"decrease-icon",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.unref(f)?(vue.openBlock(),vue.createBlock(vue.unref(arrow_down_default),{key:0})):(vue.openBlock(),vue.createBlock(vue.unref(minus_default),{key:1}))]),_:1})])],42,["aria-label","onKeydown"])),[[vue.unref(vRepeatClick),g]]):vue.createCommentVNode("v-if",!0),T.controls?vue.withDirectives((vue.openBlock(),vue.createElementBlock("span",{key:1,role:"button","aria-label":vue.unref(a)("el.inputNumber.increase"),class:vue.normalizeClass([vue.unref(s).e("increase"),vue.unref(s).is("disabled",vue.unref(v))]),onKeydown:vue.withKeys(b,["enter"])},[vue.renderSlot(T.$slots,"increase-icon",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.unref(f)?(vue.openBlock(),vue.createBlock(vue.unref(arrow_up_default),{key:0})):(vue.openBlock(),vue.createBlock(vue.unref(plus_default),{key:1}))]),_:1})])],42,["aria-label","onKeydown"])),[[vue.unref(vRepeatClick),b]]):vue.createCommentVNode("v-if",!0),vue.createVNode(vue.unref(ElInput),{id:T.id,ref_key:"input",ref:o,type:"number",step:T.step,"model-value":vue.unref(h),placeholder:T.placeholder,readonly:T.readonly,disabled:vue.unref(p),size:vue.unref(c),max:T.max,min:T.min,name:T.name,"aria-label":T.ariaLabel,"validate-event":!1,onKeydown:[vue.withKeys(vue.withModifiers(b,["prevent"]),["up"]),vue.withKeys(vue.withModifiers(g,["prevent"]),["down"])],onBlur:D,onFocus:O,onInput:A,onChange:$},vue.createSlots({_:2},[T.$slots.prefix?{name:"prefix",fn:vue.withCtx(()=>[vue.renderSlot(T.$slots,"prefix")])}:void 0,T.$slots.suffix?{name:"suffix",fn:vue.withCtx(()=>[vue.renderSlot(T.$slots,"suffix")])}:void 0]),1032,["id","step","model-value","placeholder","readonly","disabled","size","max","min","name","aria-label","onKeydown"])],42,["onDragstart"]))}});var InputNumber=_export_sfc(_sfc_main$o,[["__file","input-number.vue"]]);const ElInputNumber=withInstall(InputNumber);function useCalcInputWidth(){const e=vue.shallowRef(),t=vue.ref(0),n=11,r=vue.computed(()=>({minWidth:`${Math.max(t.value,n)}px`}));return useResizeObserver(e,()=>{var s,o;t.value=(o=(s=e.value)==null?void 0:s.getBoundingClientRect().width)!=null?o:0}),{calculatorRef:e,calculatorWidth:t,inputStyle:r}}const selectGroupKey=Symbol("ElSelectGroup"),selectKey=Symbol("ElSelect"),COMPONENT_NAME$2="ElOption",optionProps=buildProps({value:{type:[String,Number,Boolean,Object],required:!0},label:{type:[String,Number]},created:Boolean,disabled:Boolean});function useOption(e,t){const n=vue.inject(selectKey);n||throwError(COMPONENT_NAME$2,"usage: <el-select><el-option /></el-select/>");const r=vue.inject(selectGroupKey,{disabled:!1}),a=vue.computed(()=>v(castArray$1(n.props.modelValue),e.value)),s=vue.computed(()=>{var c;if(n.props.multiple){const p=castArray$1((c=n.props.modelValue)!=null?c:[]);return!a.value&&p.length>=n.props.multipleLimit&&n.props.multipleLimit>0}else return!1}),o=vue.computed(()=>{var c;return(c=e.label)!=null?c:isObject$1(e.value)?"":e.value}),i=vue.computed(()=>e.value||e.label||""),u=vue.computed(()=>e.disabled||t.groupDisabled||s.value),l=vue.getCurrentInstance(),v=(c=[],p)=>{if(isObject$1(e.value)){const h=n.props.valueKey;return c&&c.some(y=>vue.toRaw(get(y,h))===get(p,h))}else return c&&c.includes(p)},d=()=>{!e.disabled&&!r.disabled&&(n.states.hoveringIndex=n.optionsArray.indexOf(l.proxy))},f=c=>{const p=new RegExp(escapeStringRegexp(c),"i");t.visible=p.test(String(o.value))||e.created};return vue.watch(()=>o.value,()=>{!e.created&&!n.props.remote&&n.setSelected()}),vue.watch(()=>e.value,(c,p)=>{const{remote:h,valueKey:y}=n.props;if((h?c!==p:!isEqual(c,p))&&(n.onOptionDestroy(p,l.proxy),n.onOptionCreate(l.proxy)),!e.created&&!h){if(y&&isObject$1(c)&&isObject$1(p)&&c[y]===p[y])return;n.setSelected()}}),vue.watch(()=>r.disabled,()=>{t.groupDisabled=r.disabled},{immediate:!0}),{select:n,currentLabel:o,currentValue:i,itemSelected:a,isDisabled:u,hoverItem:d,updateOption:f}}const _sfc_main$n=vue.defineComponent({name:COMPONENT_NAME$2,componentName:COMPONENT_NAME$2,props:optionProps,setup(e){const t=useNamespace("select"),n=useId(),r=vue.computed(()=>[t.be("dropdown","item"),t.is("disabled",vue.unref(i)),t.is("selected",vue.unref(o)),t.is("hovering",vue.unref(f))]),a=vue.reactive({index:-1,groupDisabled:!1,visible:!0,hover:!1}),{currentLabel:s,itemSelected:o,isDisabled:i,select:u,hoverItem:l,updateOption:v}=useOption(e,a),{visible:d,hover:f}=vue.toRefs(a),c=vue.getCurrentInstance().proxy;u.onOptionCreate(c),vue.onBeforeUnmount(()=>{const h=c.value,{selected:y}=u.states,m=y.some(_=>_.value===c.value);vue.nextTick(()=>{u.states.cachedOptions.get(h)===c&&!m&&u.states.cachedOptions.delete(h)}),u.onOptionDestroy(h,c)});function p(){i.value||u.handleOptionSelect(c)}return{ns:t,id:n,containerKls:r,currentLabel:s,itemSelected:o,isDisabled:i,select:u,visible:d,hover:f,states:a,hoverItem:l,updateOption:v,selectOptionClick:p}}});function _sfc_render$j(e,t){return vue.withDirectives((vue.openBlock(),vue.createElementBlock("li",{id:e.id,class:vue.normalizeClass(e.containerKls),role:"option","aria-disabled":e.isDisabled||void 0,"aria-selected":e.itemSelected,onMousemove:e.hoverItem,onClick:vue.withModifiers(e.selectOptionClick,["stop"])},[vue.renderSlot(e.$slots,"default",{},()=>[vue.createElementVNode("span",null,vue.toDisplayString(e.currentLabel),1)])],42,["id","aria-disabled","aria-selected","onMousemove","onClick"])),[[vue.vShow,e.visible]])}var Option=_export_sfc(_sfc_main$n,[["render",_sfc_render$j],["__file","option.vue"]]);const _sfc_main$m=vue.defineComponent({name:"ElSelectDropdown",componentName:"ElSelectDropdown",setup(){const e=vue.inject(selectKey),t=useNamespace("select"),n=vue.computed(()=>e.props.popperClass),r=vue.computed(()=>e.props.multiple),a=vue.computed(()=>e.props.fitInputWidth),s=vue.ref("");function o(){var i;s.value=`${(i=e.selectRef)==null?void 0:i.offsetWidth}px`}return vue.onMounted(()=>{o(),useResizeObserver(e.selectRef,o)}),{ns:t,minWidth:s,popperClass:n,isMultiple:r,isFitInputWidth:a}}});function _sfc_render$i(e,t,n,r,a,s){return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass([e.ns.b("dropdown"),e.ns.is("multiple",e.isMultiple),e.popperClass]),style:vue.normalizeStyle({[e.isFitInputWidth?"width":"minWidth"]:e.minWidth})},[e.$slots.header?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:vue.normalizeClass(e.ns.be("dropdown","header"))},[vue.renderSlot(e.$slots,"header")],2)):vue.createCommentVNode("v-if",!0),vue.renderSlot(e.$slots,"default"),e.$slots.footer?(vue.openBlock(),vue.createElementBlock("div",{key:1,class:vue.normalizeClass(e.ns.be("dropdown","footer"))},[vue.renderSlot(e.$slots,"footer")],2)):vue.createCommentVNode("v-if",!0)],6)}var ElSelectMenu=_export_sfc(_sfc_main$m,[["render",_sfc_render$i],["__file","select-dropdown.vue"]]);const useSelect=(e,t)=>{const{t:n}=useLocale(),r=useId(),a=useNamespace("select"),s=useNamespace("input"),o=vue.reactive({inputValue:"",options:new Map,cachedOptions:new Map,optionValues:[],selected:[],selectionWidth:0,collapseItemWidth:0,selectedLabel:"",hoveringIndex:-1,previousQuery:null,inputHovering:!1,menuVisibleOnFocus:!1,isBeforeHide:!1}),i=vue.ref(),u=vue.ref(),l=vue.ref(),v=vue.ref(),d=vue.ref(),f=vue.ref(),c=vue.ref(),p=vue.ref(),h=vue.ref(),y=vue.ref(),m=vue.ref(),{isComposing:_,handleCompositionStart:b,handleCompositionUpdate:g,handleCompositionEnd:w}=useComposition({afterComposition:Ie=>xn(Ie)}),{wrapperRef:k,isFocused:A,handleBlur:$}=useFocusController(d,{beforeFocus(){return L.value},afterFocus(){e.automaticDropdown&&!M.value&&(M.value=!0,o.menuVisibleOnFocus=!0)},beforeBlur(Ie){var jt,Vn;return((jt=l.value)==null?void 0:jt.isFocusInsideContent(Ie))||((Vn=v.value)==null?void 0:Vn.isFocusInsideContent(Ie))},afterBlur(){var Ie;M.value=!1,o.menuVisibleOnFocus=!1,e.validateEvent&&((Ie=D==null?void 0:D.validate)==null||Ie.call(D,"blur").catch(jt=>debugWarn(jt)))}}),M=vue.ref(!1),F=vue.ref(),{form:O,formItem:D}=useFormItem(),{inputId:j}=useFormItemInputId(e,{formItemContext:D}),{valueOnClear:z,isEmptyValue:T}=useEmptyValues(e),L=vue.computed(()=>e.disabled||(O==null?void 0:O.disabled)),ie=vue.computed(()=>isArray$1(e.modelValue)?e.modelValue.length>0:!T(e.modelValue)),x=vue.computed(()=>{var Ie;return(Ie=O==null?void 0:O.statusIcon)!=null?Ie:!1}),V=vue.computed(()=>e.clearable&&!L.value&&o.inputHovering&&ie.value),le=vue.computed(()=>e.remote&&e.filterable&&!e.remoteShowSuffix?"":e.suffixIcon),Y=vue.computed(()=>a.is("reverse",!!(le.value&&M.value))),re=vue.computed(()=>(D==null?void 0:D.validateState)||""),he=vue.computed(()=>re.value&&ValidateComponentsMap[re.value]),Ce=vue.computed(()=>e.remote?300:0),$e=vue.computed(()=>e.remote&&!o.inputValue&&o.options.size===0),Ne=vue.computed(()=>e.loading?e.loadingText||n("el.select.loading"):e.filterable&&o.inputValue&&o.options.size>0&&Pt.value===0?e.noMatchText||n("el.select.noMatch"):o.options.size===0?e.noDataText||n("el.select.noData"):null),Pt=vue.computed(()=>_e.value.filter(Ie=>Ie.visible).length),_e=vue.computed(()=>{const Ie=Array.from(o.options.values()),jt=[];return o.optionValues.forEach(Vn=>{const zn=Ie.findIndex(Un=>Un.value===Vn);zn>-1&&jt.push(Ie[zn])}),jt.length>=Ie.length?jt:Ie}),ze=vue.computed(()=>Array.from(o.cachedOptions.values())),Et=vue.computed(()=>{const Ie=_e.value.filter(jt=>!jt.created).some(jt=>jt.currentLabel===o.inputValue);return e.filterable&&e.allowCreate&&o.inputValue!==""&&!Ie}),Cn=()=>{e.filterable&&isFunction$1(e.filterMethod)||e.filterable&&e.remote&&isFunction$1(e.remoteMethod)||_e.value.forEach(Ie=>{var jt;(jt=Ie.updateOption)==null||jt.call(Ie,o.inputValue)})},kn=useFormSize(),In=vue.computed(()=>["small"].includes(kn.value)?"small":"default"),Dn=vue.computed({get(){return M.value&&!$e.value},set(Ie){M.value=Ie}}),Mn=vue.computed(()=>{if(e.multiple&&!isUndefined(e.modelValue))return castArray$1(e.modelValue).length===0&&!o.inputValue;const Ie=isArray$1(e.modelValue)?e.modelValue[0]:e.modelValue;return e.filterable||isUndefined(Ie)?!o.inputValue:!0}),Ue=vue.computed(()=>{var Ie;const jt=(Ie=e.placeholder)!=null?Ie:n("el.select.placeholder");return e.multiple||!ie.value?jt:o.selectedLabel}),xe=vue.computed(()=>isIOS?null:"mouseenter");vue.watch(()=>e.modelValue,(Ie,jt)=>{e.multiple&&e.filterable&&!e.reserveKeyword&&(o.inputValue="",Dt("")),_n(),!isEqual(Ie,jt)&&e.validateEvent&&(D==null||D.validate("change").catch(Vn=>debugWarn(Vn)))},{flush:"post",deep:!0}),vue.watch(()=>M.value,Ie=>{Ie?Dt(o.inputValue):(o.inputValue="",o.previousQuery=null,o.isBeforeHide=!0),t("visible-change",Ie)}),vue.watch(()=>o.options.entries(),()=>{isClient&&(_n(),e.defaultFirstOption&&(e.filterable||e.remote)&&Pt.value&&kt())},{flush:"post"}),vue.watch([()=>o.hoveringIndex,_e],([Ie])=>{isNumber(Ie)&&Ie>-1?F.value=_e.value[Ie]||{}:F.value={},_e.value.forEach(jt=>{jt.hover=F.value===jt})}),vue.watchEffect(()=>{o.isBeforeHide||Cn()});const Dt=Ie=>{o.previousQuery===Ie||_.value||(o.previousQuery=Ie,e.filterable&&isFunction$1(e.filterMethod)?e.filterMethod(Ie):e.filterable&&e.remote&&isFunction$1(e.remoteMethod)&&e.remoteMethod(Ie),e.defaultFirstOption&&(e.filterable||e.remote)&&Pt.value?vue.nextTick(kt):vue.nextTick(Tn))},kt=()=>{const Ie=_e.value.filter(Un=>Un.visible&&!Un.disabled&&!Un.states.groupDisabled),jt=Ie.find(Un=>Un.created),Vn=Ie[0],zn=_e.value.map(Un=>Un.value);o.hoveringIndex=S(zn,jt||Vn)},_n=()=>{if(e.multiple)o.selectedLabel="";else{const jt=isArray$1(e.modelValue)?e.modelValue[0]:e.modelValue,Vn=Sn(jt);o.selectedLabel=Vn.currentLabel,o.selected=[Vn];return}const Ie=[];isUndefined(e.modelValue)||castArray$1(e.modelValue).forEach(jt=>{Ie.push(Sn(jt))}),o.selected=Ie},Sn=Ie=>{let jt;const Vn=isPlainObject(Ie);for(let Yn=o.cachedOptions.size-1;Yn>=0;Yn--){const Wn=ze.value[Yn];if(Vn?get(Wn.value,e.valueKey)===get(Ie,e.valueKey):Wn.value===Ie){jt={value:Ie,currentLabel:Wn.currentLabel,get isDisabled(){return Wn.isDisabled}};break}}if(jt)return jt;const zn=Vn?Ie.label:Ie??"";return{value:Ie,currentLabel:zn}},Tn=()=>{o.hoveringIndex=_e.value.findIndex(Ie=>o.selected.some(jt=>bn(jt)===bn(Ie)))},An=()=>{o.selectionWidth=Number.parseFloat(window.getComputedStyle(u.value).width)},qe=()=>{o.collapseItemWidth=y.value.getBoundingClientRect().width},vn=()=>{var Ie,jt;(jt=(Ie=l.value)==null?void 0:Ie.updatePopper)==null||jt.call(Ie)},Nn=()=>{var Ie,jt;(jt=(Ie=v.value)==null?void 0:Ie.updatePopper)==null||jt.call(Ie)},Pn=()=>{o.inputValue.length>0&&!M.value&&(M.value=!0),Dt(o.inputValue)},xn=Ie=>{if(o.inputValue=Ie.target.value,e.remote)Bn();else return Pn()},Bn=debounce(()=>{Pn()},Ce.value),Rn=Ie=>{isEqual(e.modelValue,Ie)||t(CHANGE_EVENT,Ie)},qn=Ie=>findLastIndex(Ie,jt=>{const Vn=o.cachedOptions.get(jt);return Vn&&!Vn.disabled&&!Vn.states.groupDisabled}),Fn=Ie=>{if(e.multiple&&Ie.code!==EVENT_CODE.delete&&Ie.target.value.length<=0){const jt=castArray$1(e.modelValue).slice(),Vn=qn(jt);if(Vn<0)return;const zn=jt[Vn];jt.splice(Vn,1),t(UPDATE_MODEL_EVENT,jt),Rn(jt),t("remove-tag",zn)}},$n=(Ie,jt)=>{const Vn=o.selected.indexOf(jt);if(Vn>-1&&!L.value){const zn=castArray$1(e.modelValue).slice();zn.splice(Vn,1),t(UPDATE_MODEL_EVENT,zn),Rn(zn),t("remove-tag",jt.value)}Ie.stopPropagation(),wn()},oe=Ie=>{Ie.stopPropagation();const jt=e.multiple?[]:z.value;if(e.multiple)for(const Vn of o.selected)Vn.isDisabled&&jt.push(Vn.value);t(UPDATE_MODEL_EVENT,jt),Rn(jt),o.hoveringIndex=-1,M.value=!1,t("clear"),wn()},pe=Ie=>{var jt;if(e.multiple){const Vn=castArray$1((jt=e.modelValue)!=null?jt:[]).slice(),zn=S(Vn,Ie);zn>-1?Vn.splice(zn,1):(e.multipleLimit<=0||Vn.length<e.multipleLimit)&&Vn.push(Ie.value),t(UPDATE_MODEL_EVENT,Vn),Rn(Vn),Ie.created&&Dt(""),e.filterable&&!e.reserveKeyword&&(o.inputValue="")}else t(UPDATE_MODEL_EVENT,Ie.value),Rn(Ie.value),M.value=!1;wn(),!M.value&&vue.nextTick(()=>{ae(Ie)})},S=(Ie,jt)=>isUndefined(jt)?-1:isObject$1(jt.value)?Ie.findIndex(Vn=>isEqual(get(Vn,e.valueKey),bn(jt))):Ie.indexOf(jt.value),ae=Ie=>{var jt,Vn,zn,Un,Yn;const Wn=isArray$1(Ie)?Ie[0]:Ie;let Xn=null;if(Wn!=null&&Wn.value){const Kn=_e.value.filter(tr=>tr.value===Wn.value);Kn.length>0&&(Xn=Kn[0].$el)}if(l.value&&Xn){const Kn=(Un=(zn=(Vn=(jt=l.value)==null?void 0:jt.popperRef)==null?void 0:Vn.contentRef)==null?void 0:zn.querySelector)==null?void 0:Un.call(zn,`.${a.be("dropdown","wrap")}`);Kn&&scrollIntoView(Kn,Xn)}(Yn=m.value)==null||Yn.handleScroll()},de=Ie=>{o.options.set(Ie.value,Ie),o.cachedOptions.set(Ie.value,Ie)},Oe=(Ie,jt)=>{o.options.get(Ie)===jt&&o.options.delete(Ie)},At=vue.computed(()=>{var Ie,jt;return(jt=(Ie=l.value)==null?void 0:Ie.popperRef)==null?void 0:jt.contentRef}),En=()=>{o.isBeforeHide=!1,vue.nextTick(()=>{var Ie;(Ie=m.value)==null||Ie.update(),ae(o.selected)})},wn=()=>{var Ie;(Ie=d.value)==null||Ie.focus()},hn=()=>{var Ie;if(M.value){M.value=!1,vue.nextTick(()=>{var jt;return(jt=d.value)==null?void 0:jt.blur()});return}(Ie=d.value)==null||Ie.blur()},Lt=Ie=>{oe(Ie)},On=Ie=>{if(M.value=!1,A.value){const jt=new FocusEvent("focus",Ie);vue.nextTick(()=>$(jt))}},ue=()=>{o.inputValue.length>0?o.inputValue="":M.value=!1},Fe=()=>{L.value||(isIOS&&(o.inputHovering=!0),o.menuVisibleOnFocus?o.menuVisibleOnFocus=!1:M.value=!M.value)},Ve=()=>{if(!M.value)Fe();else{const Ie=_e.value[o.hoveringIndex];Ie&&!Ie.isDisabled&&pe(Ie)}},bn=Ie=>isObject$1(Ie.value)?get(Ie.value,e.valueKey):Ie.value,Ln=vue.computed(()=>_e.value.filter(Ie=>Ie.visible).every(Ie=>Ie.isDisabled)),jn=vue.computed(()=>e.multiple?e.collapseTags?o.selected.slice(0,e.maxCollapseTags):o.selected:[]),Hn=vue.computed(()=>e.multiple?e.collapseTags?o.selected.slice(e.maxCollapseTags):[]:[]),Gn=Ie=>{if(!M.value){M.value=!0;return}if(!(o.options.size===0||Pt.value===0||_.value)&&!Ln.value){Ie==="next"?(o.hoveringIndex++,o.hoveringIndex===o.options.size&&(o.hoveringIndex=0)):Ie==="prev"&&(o.hoveringIndex--,o.hoveringIndex<0&&(o.hoveringIndex=o.options.size-1));const jt=_e.value[o.hoveringIndex];(jt.isDisabled||!jt.visible)&&Gn(Ie),vue.nextTick(()=>ae(F.value))}},Jn=()=>{if(!u.value)return 0;const Ie=window.getComputedStyle(u.value);return Number.parseFloat(Ie.gap||"6px")},Zn=vue.computed(()=>{const Ie=Jn();return{maxWidth:`${y.value&&e.maxCollapseTags===1?o.selectionWidth-o.collapseItemWidth-Ie:o.selectionWidth}px`}}),Qn=vue.computed(()=>({maxWidth:`${o.selectionWidth}px`})),er=Ie=>{t("popup-scroll",Ie)};return useResizeObserver(u,An),useResizeObserver(p,vn),useResizeObserver(k,vn),useResizeObserver(h,Nn),useResizeObserver(y,qe),vue.onMounted(()=>{_n()}),{inputId:j,contentId:r,nsSelect:a,nsInput:s,states:o,isFocused:A,expanded:M,optionsArray:_e,hoverOption:F,selectSize:kn,filteredOptionsCount:Pt,updateTooltip:vn,updateTagTooltip:Nn,debouncedOnInputChange:Bn,onInput:xn,deletePrevTag:Fn,deleteTag:$n,deleteSelected:oe,handleOptionSelect:pe,scrollToOption:ae,hasModelValue:ie,shouldShowPlaceholder:Mn,currentPlaceholder:Ue,mouseEnterEventName:xe,needStatusIcon:x,showClose:V,iconComponent:le,iconReverse:Y,validateState:re,validateIcon:he,showNewOption:Et,updateOptions:Cn,collapseTagSize:In,setSelected:_n,selectDisabled:L,emptyText:Ne,handleCompositionStart:b,handleCompositionUpdate:g,handleCompositionEnd:w,onOptionCreate:de,onOptionDestroy:Oe,handleMenuEnter:En,focus:wn,blur:hn,handleClearClick:Lt,handleClickOutside:On,handleEsc:ue,toggleMenu:Fe,selectOption:Ve,getValueKey:bn,navigateOptions:Gn,dropdownMenuVisible:Dn,showTagList:jn,collapseTagList:Hn,popupScroll:er,tagStyle:Zn,collapseTagStyle:Qn,popperRef:At,inputRef:d,tooltipRef:l,tagTooltipRef:v,prefixRef:f,suffixRef:c,selectRef:i,wrapperRef:k,selectionRef:u,scrollbarRef:m,menuRef:p,tagMenuRef:h,collapseItemRef:y}};var ElOptions=vue.defineComponent({name:"ElOptions",setup(e,{slots:t}){const n=vue.inject(selectKey);let r=[];return()=>{var a,s;const o=(a=t.default)==null?void 0:a.call(t),i=[];function u(l){isArray$1(l)&&l.forEach(v=>{var d,f,c,p;const h=(d=(v==null?void 0:v.type)||{})==null?void 0:d.name;h==="ElOptionGroup"?u(!isString$1(v.children)&&!isArray$1(v.children)&&isFunction$1((f=v.children)==null?void 0:f.default)?(c=v.children)==null?void 0:c.default():v.children):h==="ElOption"?i.push((p=v.props)==null?void 0:p.value):isArray$1(v.children)&&u(v.children)})}return o.length&&u((s=o[0])==null?void 0:s.children),isEqual(i,r)||(r=i,n&&(n.states.optionValues=i)),o}}});const selectProps=buildProps({name:String,id:String,modelValue:{type:definePropType([Array,String,Number,Boolean,Object]),default:void 0},autocomplete:{type:String,default:"off"},automaticDropdown:Boolean,size:useSizeProp,effect:{type:definePropType(String),default:"light"},disabled:Boolean,clearable:Boolean,filterable:Boolean,allowCreate:Boolean,loading:Boolean,popperClass:{type:String,default:""},popperOptions:{type:definePropType(Object),default:()=>({})},remote:Boolean,loadingText:String,noMatchText:String,noDataText:String,remoteMethod:Function,filterMethod:Function,multiple:Boolean,multipleLimit:{type:Number,default:0},placeholder:{type:String},defaultFirstOption:Boolean,reserveKeyword:{type:Boolean,default:!0},valueKey:{type:String,default:"value"},collapseTags:Boolean,collapseTagsTooltip:Boolean,maxCollapseTags:{type:Number,default:1},teleported:useTooltipContentProps.teleported,persistent:{type:Boolean,default:!0},clearIcon:{type:iconPropType,default:circle_close_default},fitInputWidth:Boolean,suffixIcon:{type:iconPropType,default:arrow_down_default},tagType:{...tagProps.type,default:"info"},tagEffect:{...tagProps.effect,default:"light"},validateEvent:{type:Boolean,default:!0},remoteShowSuffix:Boolean,showArrow:{type:Boolean,default:!0},offset:{type:Number,default:12},placement:{type:definePropType(String),values:Ee,default:"bottom-start"},fallbackPlacements:{type:definePropType(Array),default:["bottom-start","top-start","right","left"]},tabindex:{type:[String,Number],default:0},appendTo:useTooltipContentProps.appendTo,...useEmptyValuesProps,...useAriaProps(["ariaLabel"])});scrollbarEmits.scroll;const COMPONENT_NAME$1="ElSelect",_sfc_main$l=vue.defineComponent({name:COMPONENT_NAME$1,componentName:COMPONENT_NAME$1,components:{ElSelectMenu,ElOption:Option,ElOptions,ElTag,ElScrollbar,ElTooltip,ElIcon},directives:{ClickOutside},props:selectProps,emits:[UPDATE_MODEL_EVENT,CHANGE_EVENT,"remove-tag","clear","visible-change","focus","blur","popup-scroll"],setup(e,{emit:t,slots:n}){const r=vue.getCurrentInstance();r.appContext.config.warnHandler=(...f)=>{!f[0]||f[0].includes('Slot "default" invoked outside of the render function')||console.warn(...f)};const a=vue.computed(()=>{const{modelValue:f,multiple:c}=e,p=c?[]:void 0;return isArray$1(f)?c?f:p:c?p:f}),s=vue.reactive({...vue.toRefs(e),modelValue:a}),o=useSelect(s,t),{calculatorRef:i,inputStyle:u}=useCalcInputWidth(),l=f=>f.reduce((c,p)=>(c.push(p),p.children&&p.children.length>0&&c.push(...l(p.children)),c),[]),v=f=>{flattedChildren(f||[]).forEach(p=>{var h;if(isObject$1(p)&&(p.type.name==="ElOption"||p.type.name==="ElTree")){const y=p.type.name;if(y==="ElTree"){const m=((h=p.props)==null?void 0:h.data)||[];l(m).forEach(b=>{b.currentLabel=b.label||(isObject$1(b.value)?"":b.value),o.onOptionCreate(b)})}else if(y==="ElOption"){const m={...p.props};m.currentLabel=m.label||(isObject$1(m.value)?"":m.value),o.onOptionCreate(m)}}})};vue.watch(()=>{var f;return(f=n.default)==null?void 0:f.call(n)},f=>{e.persistent||v(f)},{immediate:!0}),vue.provide(selectKey,vue.reactive({props:s,states:o.states,selectRef:o.selectRef,optionsArray:o.optionsArray,setSelected:o.setSelected,handleOptionSelect:o.handleOptionSelect,onOptionCreate:o.onOptionCreate,onOptionDestroy:o.onOptionDestroy}));const d=vue.computed(()=>e.multiple?o.states.selected.map(f=>f.currentLabel):o.states.selectedLabel);return{...o,modelValue:a,selectedLabel:d,calculatorRef:i,inputStyle:u}}});function _sfc_render$h(e,t){const n=vue.resolveComponent("el-tag"),r=vue.resolveComponent("el-tooltip"),a=vue.resolveComponent("el-icon"),s=vue.resolveComponent("el-option"),o=vue.resolveComponent("el-options"),i=vue.resolveComponent("el-scrollbar"),u=vue.resolveComponent("el-select-menu"),l=vue.resolveDirective("click-outside");return vue.withDirectives((vue.openBlock(),vue.createElementBlock("div",{ref:"selectRef",class:vue.normalizeClass([e.nsSelect.b(),e.nsSelect.m(e.selectSize)]),[vue.toHandlerKey(e.mouseEnterEventName)]:v=>e.states.inputHovering=!0,onMouseleave:v=>e.states.inputHovering=!1},[vue.createVNode(r,{ref:"tooltipRef",visible:e.dropdownMenuVisible,placement:e.placement,teleported:e.teleported,"popper-class":[e.nsSelect.e("popper"),e.popperClass],"popper-options":e.popperOptions,"fallback-placements":e.fallbackPlacements,effect:e.effect,pure:"",trigger:"click",transition:`${e.nsSelect.namespace.value}-zoom-in-top`,"stop-popper-mouse-event":!1,"gpu-acceleration":!1,persistent:e.persistent,"append-to":e.appendTo,"show-arrow":e.showArrow,offset:e.offset,onBeforeShow:e.handleMenuEnter,onHide:v=>e.states.isBeforeHide=!1},{default:vue.withCtx(()=>{var v;return[vue.createElementVNode("div",{ref:"wrapperRef",class:vue.normalizeClass([e.nsSelect.e("wrapper"),e.nsSelect.is("focused",e.isFocused),e.nsSelect.is("hovering",e.states.inputHovering),e.nsSelect.is("filterable",e.filterable),e.nsSelect.is("disabled",e.selectDisabled)]),onClick:vue.withModifiers(e.toggleMenu,["prevent"])},[e.$slots.prefix?(vue.openBlock(),vue.createElementBlock("div",{key:0,ref:"prefixRef",class:vue.normalizeClass(e.nsSelect.e("prefix"))},[vue.renderSlot(e.$slots,"prefix")],2)):vue.createCommentVNode("v-if",!0),vue.createElementVNode("div",{ref:"selectionRef",class:vue.normalizeClass([e.nsSelect.e("selection"),e.nsSelect.is("near",e.multiple&&!e.$slots.prefix&&!!e.states.selected.length)])},[e.multiple?vue.renderSlot(e.$slots,"tag",{key:0},()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.showTagList,d=>(vue.openBlock(),vue.createElementBlock("div",{key:e.getValueKey(d),class:vue.normalizeClass(e.nsSelect.e("selected-item"))},[vue.createVNode(n,{closable:!e.selectDisabled&&!d.isDisabled,size:e.collapseTagSize,type:e.tagType,effect:e.tagEffect,"disable-transitions":"",style:vue.normalizeStyle(e.tagStyle),onClose:f=>e.deleteTag(f,d)},{default:vue.withCtx(()=>[vue.createElementVNode("span",{class:vue.normalizeClass(e.nsSelect.e("tags-text"))},[vue.renderSlot(e.$slots,"label",{label:d.currentLabel,value:d.value},()=>[vue.createTextVNode(vue.toDisplayString(d.currentLabel),1)])],2)]),_:2},1032,["closable","size","type","effect","style","onClose"])],2))),128)),e.collapseTags&&e.states.selected.length>e.maxCollapseTags?(vue.openBlock(),vue.createBlock(r,{key:0,ref:"tagTooltipRef",disabled:e.dropdownMenuVisible||!e.collapseTagsTooltip,"fallback-placements":["bottom","top","right","left"],effect:e.effect,placement:"bottom",teleported:e.teleported},{default:vue.withCtx(()=>[vue.createElementVNode("div",{ref:"collapseItemRef",class:vue.normalizeClass(e.nsSelect.e("selected-item"))},[vue.createVNode(n,{closable:!1,size:e.collapseTagSize,type:e.tagType,effect:e.tagEffect,"disable-transitions":"",style:vue.normalizeStyle(e.collapseTagStyle)},{default:vue.withCtx(()=>[vue.createElementVNode("span",{class:vue.normalizeClass(e.nsSelect.e("tags-text"))}," + "+vue.toDisplayString(e.states.selected.length-e.maxCollapseTags),3)]),_:1},8,["size","type","effect","style"])],2)]),content:vue.withCtx(()=>[vue.createElementVNode("div",{ref:"tagMenuRef",class:vue.normalizeClass(e.nsSelect.e("selection"))},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.collapseTagList,d=>(vue.openBlock(),vue.createElementBlock("div",{key:e.getValueKey(d),class:vue.normalizeClass(e.nsSelect.e("selected-item"))},[vue.createVNode(n,{class:"in-tooltip",closable:!e.selectDisabled&&!d.isDisabled,size:e.collapseTagSize,type:e.tagType,effect:e.tagEffect,"disable-transitions":"",onClose:f=>e.deleteTag(f,d)},{default:vue.withCtx(()=>[vue.createElementVNode("span",{class:vue.normalizeClass(e.nsSelect.e("tags-text"))},[vue.renderSlot(e.$slots,"label",{label:d.currentLabel,value:d.value},()=>[vue.createTextVNode(vue.toDisplayString(d.currentLabel),1)])],2)]),_:2},1032,["closable","size","type","effect","onClose"])],2))),128))],2)]),_:3},8,["disabled","effect","teleported"])):vue.createCommentVNode("v-if",!0)]):vue.createCommentVNode("v-if",!0),vue.createElementVNode("div",{class:vue.normalizeClass([e.nsSelect.e("selected-item"),e.nsSelect.e("input-wrapper"),e.nsSelect.is("hidden",!e.filterable)])},[vue.withDirectives(vue.createElementVNode("input",{id:e.inputId,ref:"inputRef","onUpdate:modelValue":d=>e.states.inputValue=d,type:"text",name:e.name,class:vue.normalizeClass([e.nsSelect.e("input"),e.nsSelect.is(e.selectSize)]),disabled:e.selectDisabled,autocomplete:e.autocomplete,style:vue.normalizeStyle(e.inputStyle),tabindex:e.tabindex,role:"combobox",readonly:!e.filterable,spellcheck:"false","aria-activedescendant":((v=e.hoverOption)==null?void 0:v.id)||"","aria-controls":e.contentId,"aria-expanded":e.dropdownMenuVisible,"aria-label":e.ariaLabel,"aria-autocomplete":"none","aria-haspopup":"listbox",onKeydown:[vue.withKeys(vue.withModifiers(d=>e.navigateOptions("next"),["stop","prevent"]),["down"]),vue.withKeys(vue.withModifiers(d=>e.navigateOptions("prev"),["stop","prevent"]),["up"]),vue.withKeys(vue.withModifiers(e.handleEsc,["stop","prevent"]),["esc"]),vue.withKeys(vue.withModifiers(e.selectOption,["stop","prevent"]),["enter"]),vue.withKeys(vue.withModifiers(e.deletePrevTag,["stop"]),["delete"])],onCompositionstart:e.handleCompositionStart,onCompositionupdate:e.handleCompositionUpdate,onCompositionend:e.handleCompositionEnd,onInput:e.onInput,onClick:vue.withModifiers(e.toggleMenu,["stop"])},null,46,["id","onUpdate:modelValue","name","disabled","autocomplete","tabindex","readonly","aria-activedescendant","aria-controls","aria-expanded","aria-label","onKeydown","onCompositionstart","onCompositionupdate","onCompositionend","onInput","onClick"]),[[vue.vModelText,e.states.inputValue]]),e.filterable?(vue.openBlock(),vue.createElementBlock("span",{key:0,ref:"calculatorRef","aria-hidden":"true",class:vue.normalizeClass(e.nsSelect.e("input-calculator")),textContent:vue.toDisplayString(e.states.inputValue)},null,10,["textContent"])):vue.createCommentVNode("v-if",!0)],2),e.shouldShowPlaceholder?(vue.openBlock(),vue.createElementBlock("div",{key:1,class:vue.normalizeClass([e.nsSelect.e("selected-item"),e.nsSelect.e("placeholder"),e.nsSelect.is("transparent",!e.hasModelValue||e.expanded&&!e.states.inputValue)])},[e.hasModelValue?vue.renderSlot(e.$slots,"label",{key:0,label:e.currentPlaceholder,value:e.modelValue},()=>[vue.createElementVNode("span",null,vue.toDisplayString(e.currentPlaceholder),1)]):(vue.openBlock(),vue.createElementBlock("span",{key:1},vue.toDisplayString(e.currentPlaceholder),1))],2)):vue.createCommentVNode("v-if",!0)],2),vue.createElementVNode("div",{ref:"suffixRef",class:vue.normalizeClass(e.nsSelect.e("suffix"))},[e.iconComponent&&!e.showClose?(vue.openBlock(),vue.createBlock(a,{key:0,class:vue.normalizeClass([e.nsSelect.e("caret"),e.nsSelect.e("icon"),e.iconReverse])},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(e.iconComponent)))]),_:1},8,["class"])):vue.createCommentVNode("v-if",!0),e.showClose&&e.clearIcon?(vue.openBlock(),vue.createBlock(a,{key:1,class:vue.normalizeClass([e.nsSelect.e("caret"),e.nsSelect.e("icon"),e.nsSelect.e("clear")]),onClick:e.handleClearClick},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(e.clearIcon)))]),_:1},8,["class","onClick"])):vue.createCommentVNode("v-if",!0),e.validateState&&e.validateIcon&&e.needStatusIcon?(vue.openBlock(),vue.createBlock(a,{key:2,class:vue.normalizeClass([e.nsInput.e("icon"),e.nsInput.e("validateIcon"),e.nsInput.is("loading",e.validateState==="validating")])},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(e.validateIcon)))]),_:1},8,["class"])):vue.createCommentVNode("v-if",!0)],2)],10,["onClick"])]}),content:vue.withCtx(()=>[vue.createVNode(u,{ref:"menuRef"},{default:vue.withCtx(()=>[e.$slots.header?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:vue.normalizeClass(e.nsSelect.be("dropdown","header")),onClick:vue.withModifiers(()=>{},["stop"])},[vue.renderSlot(e.$slots,"header")],10,["onClick"])):vue.createCommentVNode("v-if",!0),vue.withDirectives(vue.createVNode(i,{id:e.contentId,ref:"scrollbarRef",tag:"ul","wrap-class":e.nsSelect.be("dropdown","wrap"),"view-class":e.nsSelect.be("dropdown","list"),class:vue.normalizeClass([e.nsSelect.is("empty",e.filteredOptionsCount===0)]),role:"listbox","aria-label":e.ariaLabel,"aria-orientation":"vertical",onScroll:e.popupScroll},{default:vue.withCtx(()=>[e.showNewOption?(vue.openBlock(),vue.createBlock(s,{key:0,value:e.states.inputValue,created:!0},null,8,["value"])):vue.createCommentVNode("v-if",!0),vue.createVNode(o,null,{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3})]),_:3},8,["id","wrap-class","view-class","class","aria-label","onScroll"]),[[vue.vShow,e.states.options.size>0&&!e.loading]]),e.$slots.loading&&e.loading?(vue.openBlock(),vue.createElementBlock("div",{key:1,class:vue.normalizeClass(e.nsSelect.be("dropdown","loading"))},[vue.renderSlot(e.$slots,"loading")],2)):e.loading||e.filteredOptionsCount===0?(vue.openBlock(),vue.createElementBlock("div",{key:2,class:vue.normalizeClass(e.nsSelect.be("dropdown","empty"))},[vue.renderSlot(e.$slots,"empty",{},()=>[vue.createElementVNode("span",null,vue.toDisplayString(e.emptyText),1)])],2)):vue.createCommentVNode("v-if",!0),e.$slots.footer?(vue.openBlock(),vue.createElementBlock("div",{key:3,class:vue.normalizeClass(e.nsSelect.be("dropdown","footer")),onClick:vue.withModifiers(()=>{},["stop"])},[vue.renderSlot(e.$slots,"footer")],10,["onClick"])):vue.createCommentVNode("v-if",!0)]),_:3},512)]),_:3},8,["visible","placement","teleported","popper-class","popper-options","fallback-placements","effect","transition","persistent","append-to","show-arrow","offset","onBeforeShow","onHide"])],16,["onMouseleave"])),[[l,e.handleClickOutside,e.popperRef]])}var Select=_export_sfc(_sfc_main$l,[["render",_sfc_render$h],["__file","select.vue"]]);const _sfc_main$k=vue.defineComponent({name:"ElOptionGroup",componentName:"ElOptionGroup",props:{label:String,disabled:Boolean},setup(e){const t=useNamespace("select"),n=vue.ref(),r=vue.getCurrentInstance(),a=vue.ref([]);vue.provide(selectGroupKey,vue.reactive({...vue.toRefs(e)}));const s=vue.computed(()=>a.value.some(l=>l.visible===!0)),o=l=>{var v;return l.type.name==="ElOption"&&!!((v=l.component)!=null&&v.proxy)},i=l=>{const v=castArray$1(l),d=[];return v.forEach(f=>{var c;vue.isVNode(f)&&(o(f)?d.push(f.component.proxy):isArray$1(f.children)&&f.children.length?d.push(...i(f.children)):(c=f.component)!=null&&c.subTree&&d.push(...i(f.component.subTree)))}),d},u=()=>{a.value=i(r.subTree)};return vue.onMounted(()=>{u()}),useMutationObserver(n,u,{attributes:!0,subtree:!0,childList:!0}),{groupRef:n,visible:s,ns:t}}});function _sfc_render$g(e,t,n,r,a,s){return vue.withDirectives((vue.openBlock(),vue.createElementBlock("ul",{ref:"groupRef",class:vue.normalizeClass(e.ns.be("group","wrap"))},[vue.createElementVNode("li",{class:vue.normalizeClass(e.ns.be("group","title"))},vue.toDisplayString(e.label),3),vue.createElementVNode("li",null,[vue.createElementVNode("ul",{class:vue.normalizeClass(e.ns.b("group"))},[vue.renderSlot(e.$slots,"default")],2)])],2)),[[vue.vShow,e.visible]])}var OptionGroup=_export_sfc(_sfc_main$k,[["render",_sfc_render$g],["__file","option-group.vue"]]);const ElSelect=withInstall(Select,{Option,OptionGroup}),ElOption=withNoopInstall(Option);withNoopInstall(OptionGroup);const isValidComponentSize=e=>["",...componentSizes].includes(e),switchProps=buildProps({modelValue:{type:[Boolean,String,Number],default:!1},disabled:Boolean,loading:Boolean,size:{type:String,validator:isValidComponentSize},width:{type:[String,Number],default:""},inlinePrompt:Boolean,inactiveActionIcon:{type:iconPropType},activeActionIcon:{type:iconPropType},activeIcon:{type:iconPropType},inactiveIcon:{type:iconPropType},activeText:{type:String,default:""},inactiveText:{type:String,default:""},activeValue:{type:[Boolean,String,Number],default:!0},inactiveValue:{type:[Boolean,String,Number],default:!1},name:{type:String,default:""},validateEvent:{type:Boolean,default:!0},beforeChange:{type:definePropType(Function)},id:String,tabindex:{type:[String,Number]},...useAriaProps(["ariaLabel"])}),switchEmits={[UPDATE_MODEL_EVENT]:e=>isBoolean(e)||isString$1(e)||isNumber(e),[CHANGE_EVENT]:e=>isBoolean(e)||isString$1(e)||isNumber(e),[INPUT_EVENT]:e=>isBoolean(e)||isString$1(e)||isNumber(e)},COMPONENT_NAME="ElSwitch",__default__=vue.defineComponent({name:COMPONENT_NAME}),_sfc_main$j=vue.defineComponent({...__default__,props:switchProps,emits:switchEmits,setup(e,{expose:t,emit:n}){const r=e,{formItem:a}=useFormItem(),s=useFormSize(),o=useNamespace("switch"),{inputId:i}=useFormItemInputId(r,{formItemContext:a}),u=useFormDisabled(vue.computed(()=>r.loading)),l=vue.ref(r.modelValue!==!1),v=vue.ref(),d=vue.ref(),f=vue.computed(()=>[o.b(),o.m(s.value),o.is("disabled",u.value),o.is("checked",m.value)]),c=vue.computed(()=>[o.e("label"),o.em("label","left"),o.is("active",!m.value)]),p=vue.computed(()=>[o.e("label"),o.em("label","right"),o.is("active",m.value)]),h=vue.computed(()=>({width:addUnit(r.width)}));vue.watch(()=>r.modelValue,()=>{l.value=!0});const y=vue.computed(()=>l.value?r.modelValue:!1),m=vue.computed(()=>y.value===r.activeValue);[r.activeValue,r.inactiveValue].includes(y.value)||(n(UPDATE_MODEL_EVENT,r.inactiveValue),n(CHANGE_EVENT,r.inactiveValue),n(INPUT_EVENT,r.inactiveValue)),vue.watch(m,w=>{var k;v.value.checked=w,r.validateEvent&&((k=a==null?void 0:a.validate)==null||k.call(a,"change").catch(A=>debugWarn(A)))});const _=()=>{const w=m.value?r.inactiveValue:r.activeValue;n(UPDATE_MODEL_EVENT,w),n(CHANGE_EVENT,w),n(INPUT_EVENT,w),vue.nextTick(()=>{v.value.checked=m.value})},b=()=>{if(u.value)return;const{beforeChange:w}=r;if(!w){_();return}const k=w();[isPromise(k),isBoolean(k)].includes(!0)||throwError(COMPONENT_NAME,"beforeChange must return type `Promise<boolean>` or `boolean`"),isPromise(k)?k.then($=>{$&&_()}).catch($=>{debugWarn(COMPONENT_NAME,`some error occurred: ${$}`)}):k&&_()},g=()=>{var w,k;(k=(w=v.value)==null?void 0:w.focus)==null||k.call(w)};return vue.onMounted(()=>{v.value.checked=m.value}),t({focus:g,checked:m}),(w,k)=>(vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(vue.unref(f)),onClick:vue.withModifiers(b,["prevent"])},[vue.createElementVNode("input",{id:vue.unref(i),ref_key:"input",ref:v,class:vue.normalizeClass(vue.unref(o).e("input")),type:"checkbox",role:"switch","aria-checked":vue.unref(m),"aria-disabled":vue.unref(u),"aria-label":w.ariaLabel,name:w.name,"true-value":w.activeValue,"false-value":w.inactiveValue,disabled:vue.unref(u),tabindex:w.tabindex,onChange:_,onKeydown:vue.withKeys(b,["enter"])},null,42,["id","aria-checked","aria-disabled","aria-label","name","true-value","false-value","disabled","tabindex","onKeydown"]),!w.inlinePrompt&&(w.inactiveIcon||w.inactiveText)?(vue.openBlock(),vue.createElementBlock("span",{key:0,class:vue.normalizeClass(vue.unref(c))},[w.inactiveIcon?(vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{key:0},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(w.inactiveIcon)))]),_:1})):vue.createCommentVNode("v-if",!0),!w.inactiveIcon&&w.inactiveText?(vue.openBlock(),vue.createElementBlock("span",{key:1,"aria-hidden":vue.unref(m)},vue.toDisplayString(w.inactiveText),9,["aria-hidden"])):vue.createCommentVNode("v-if",!0)],2)):vue.createCommentVNode("v-if",!0),vue.createElementVNode("span",{ref_key:"core",ref:d,class:vue.normalizeClass(vue.unref(o).e("core")),style:vue.normalizeStyle(vue.unref(h))},[w.inlinePrompt?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:vue.normalizeClass(vue.unref(o).e("inner"))},[w.activeIcon||w.inactiveIcon?(vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{key:0,class:vue.normalizeClass(vue.unref(o).is("icon"))},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(vue.unref(m)?w.activeIcon:w.inactiveIcon)))]),_:1},8,["class"])):w.activeText||w.inactiveText?(vue.openBlock(),vue.createElementBlock("span",{key:1,class:vue.normalizeClass(vue.unref(o).is("text")),"aria-hidden":!vue.unref(m)},vue.toDisplayString(vue.unref(m)?w.activeText:w.inactiveText),11,["aria-hidden"])):vue.createCommentVNode("v-if",!0)],2)):vue.createCommentVNode("v-if",!0),vue.createElementVNode("div",{class:vue.normalizeClass(vue.unref(o).e("action"))},[w.loading?(vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{key:0,class:vue.normalizeClass(vue.unref(o).is("loading"))},{default:vue.withCtx(()=>[vue.createVNode(vue.unref(loading_default))]),_:1},8,["class"])):vue.unref(m)?vue.renderSlot(w.$slots,"active-action",{key:1},()=>[w.activeActionIcon?(vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{key:0},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(w.activeActionIcon)))]),_:1})):vue.createCommentVNode("v-if",!0)]):vue.unref(m)?vue.createCommentVNode("v-if",!0):vue.renderSlot(w.$slots,"inactive-action",{key:2},()=>[w.inactiveActionIcon?(vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{key:0},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(w.inactiveActionIcon)))]),_:1})):vue.createCommentVNode("v-if",!0)])],2)],6),!w.inlinePrompt&&(w.activeIcon||w.activeText)?(vue.openBlock(),vue.createElementBlock("span",{key:1,class:vue.normalizeClass(vue.unref(p))},[w.activeIcon?(vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{key:0},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(w.activeIcon)))]),_:1})):vue.createCommentVNode("v-if",!0),!w.activeIcon&&w.activeText?(vue.openBlock(),vue.createElementBlock("span",{key:1,"aria-hidden":!vue.unref(m)},vue.toDisplayString(w.activeText),9,["aria-hidden"])):vue.createCommentVNode("v-if",!0)],2)):vue.createCommentVNode("v-if",!0)],10,["onClick"]))}});var Switch=_export_sfc(_sfc_main$j,[["__file","switch.vue"]]);const ElSwitch=withInstall(Switch),_sfc_main$i={name:"IconPreviousPage",props:{width:{type:Number,default:12},height:{type:Number,default:12},color:{type:String,default:"currentColor"}}},_hoisted_1$i=["width","height","fill"];function _sfc_render$f(e,t,n,r,a,s){return vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",width:n.width,height:n.height,fill:n.color,viewBox:"0 0 12 12"},t[0]||(t[0]=[vue.createElementVNode("path",{d:"M10.959,0.571 L3.756,5.52 C3.756,5.52 3.477,5.721 3.477,6.001 C3.477,6.281 3.756,6.48 3.756,6.48 L10.959,11.431 C11.531,11.811 12,11.53 12,10.805 L12,1.196 C12,0.469 11.531,0.188 10.959,0.571 Z M2,0 L1,0 C0.447,0 0,0.048 0,0.6 L0,11.4 C0,11.952 0.447,12 1,12 L2,12 C2.553,12 3,11.952 3,11.4 L3,0.6 C3,0.048 2.553,0 2,0 Z"},null,-1)]),8,_hoisted_1$i)}const IconPreviousPage=_export_sfc$1(_sfc_main$i,[["render",_sfc_render$f]]),_sfc_main$h={name:"IconNextAnnotationLeftFacing",props:{width:{type:Number,default:24},height:{type:Number,default:14},color:{type:String,default:"currentColor"}}},_hoisted_1$h=["width","height","fill"];function _sfc_render$e(e,t,n,r,a,s){return vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",width:n.width,height:n.height,fill:n.color,viewBox:"0 0 24 14"},t[0]||(t[0]=[vue.createElementVNode("defs",null,[vue.createElementVNode("path",{pid:"0",d:"M4 5L.859 1.58a.695.695 0 0 1 0-.978.68.68 0 0 1 .969 0l3.83 3.908a.697.697 0 0 1 0 .979l-3.83 3.908a.68.68 0 0 1-.969 0 .695.695 0 0 1 0-.978L4 5z",id:"svgicon-next-annotation-left-facing-a"})],-1),vue.createElementVNode("g",{_fill:"none","fill-rule":"evenodd"},[vue.createElementVNode("g",{transform:"matrix(-1 0 0 1 6 0)"},[vue.createElementVNode("mask",{id:"svgicon-next-annotation-left-facing-b",_fill:"#fff"},[vue.createElementVNode("use",{"xlink:href":"#svgicon-next-annotation-left-facing-a"})]),vue.createElementVNode("use",{_fill:"#000","fill-rule":"nonzero","xlink:href":"#svgicon-next-annotation-left-facing-a"}),vue.createElementVNode("g",{mask:"url(#svgicon-next-annotation-left-facing-b)",_fill:"#000"},[vue.createElementVNode("path",{pid:"1",d:"M-2 0H8v10H-2z"})])]),vue.createElementVNode("g",{_fill:"#000"},[vue.createElementVNode("path",{pid:"2",d:"M23.986 10.906l-5.6-2.506 2.303 5.6.63-2.611zM10 8.4h1.4v1.4H10zM12.8 8.4h1.4v1.4h-1.4zM15.6 8.4H17v1.4h-1.4zM10 5.6h1.4V7H10zM10 2.8h1.4v1.4H10zM18.4 5.6h1.4V7h-1.4zM18.4 2.8h1.4v1.4h-1.4zM10 0h1.4v1.4H10zM12.8 0h1.4v1.4h-1.4zM15.6 0H17v1.4h-1.4zM18.4 0h1.4v1.4h-1.4z"})])],-1)]),8,_hoisted_1$h)}const IconNextAnnotationLeftFacing=_export_sfc$1(_sfc_main$h,[["render",_sfc_render$e]]),_sfc_main$g={name:"IconNextAnnotationRightFacing",props:{width:{type:Number,default:24},height:{type:Number,default:14},color:{type:String,default:"currentColor"}}},_hoisted_1$g=["width","height","fill"];function _sfc_render$d(e,t,n,r,a,s){return vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",width:n.width,height:n.height,fill:n.color,viewBox:"0 0 24 14"},t[0]||(t[0]=[vue.createElementVNode("defs",null,[vue.createElementVNode("path",{pid:"0",d:"M4 5L.859 1.58a.695.695 0 0 1 0-.978.68.68 0 0 1 .969 0l3.83 3.908a.697.697 0 0 1 0 .979l-3.83 3.908a.68.68 0 0 1-.969 0 .695.695 0 0 1 0-.978L4 5z",id:"svgicon-next-annotation-right-facing-a"})],-1),vue.createElementVNode("g",{_fill:"none","fill-rule":"evenodd"},[vue.createElementVNode("g",{transform:"translate(18)"},[vue.createElementVNode("mask",{id:"svgicon-next-annotation-right-facing-b",_fill:"#fff"},[vue.createElementVNode("use",{"xlink:href":"#svgicon-next-annotation-right-facing-a"})]),vue.createElementVNode("use",{_fill:"#000","fill-rule":"nonzero","xlink:href":"#svgicon-next-annotation-right-facing-a"}),vue.createElementVNode("g",{mask:"url(#svgicon-next-annotation-right-facing-b)",_fill:"#000"},[vue.createElementVNode("path",{pid:"1",d:"M-2 0H8v10H-2z"})])]),vue.createElementVNode("g",{_fill:"#000"},[vue.createElementVNode("path",{pid:"2",d:"M13.986 10.906L8.386 8.4l2.303 5.6.63-2.611zM0 8.4h1.4v1.4H0zM2.8 8.4h1.4v1.4H2.8zM5.6 8.4H7v1.4H5.6zM0 5.6h1.4V7H0zM0 2.8h1.4v1.4H0zM8.4 5.6h1.4V7H8.4zM8.4 2.8h1.4v1.4H8.4zM0 0h1.4v1.4H0zM2.8 0h1.4v1.4H2.8zM5.6 0H7v1.4H5.6zM8.4 0h1.4v1.4H8.4z"})])],-1)]),8,_hoisted_1$g)}const IconNextAnnotationRightFacing=_export_sfc$1(_sfc_main$g,[["render",_sfc_render$d]]),_sfc_main$f={name:"IconNextPage",props:{width:{type:Number,default:16},height:{type:Number,default:16},color:{type:String,default:"currentColor"}}},_hoisted_1$f=["width","height","fill"];function _sfc_render$c(e,t,n,r,a,s){return vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",width:n.width,height:n.height,fill:n.color,viewBox:"0 0 12 12"},t[0]||(t[0]=[vue.createElementVNode("path",{d:"M8.244,5.52 L1.041,0.571 C0.469,0.188 0,0.469 0,1.196 L0,10.805 C0,11.53 0.469,11.811 1.041,11.43 L8.244,6.479 C8.244,6.479 8.523,6.28 8.523,6.001 C8.523,5.721 8.244,5.52 8.244,5.52 Z M10,0 L11,0 C11.553,0 12,0.048 12,0.6 L12,11.4 C12,11.952 11.553,12 11,12 L10,12 C9.447,12 9,11.952 9,11.4 L9,0.6 C9,0.048 9.447,0 10,0 Z"},null,-1)]),8,_hoisted_1$f)}const IconNextPage=_export_sfc$1(_sfc_main$f,[["render",_sfc_render$c]]),_sfc_main$e={name:"IconStopwatch",props:{width:{type:Number,default:15},height:{type:Number,default:16},color:{type:String,default:"currentColor"}}},_hoisted_1$e=["width","height","fill"];function _sfc_render$b(e,t,n,r,a,s){return vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",width:n.width,height:n.height,fill:n.color,viewBox:"0 0 15 16"},t[0]||(t[0]=[vue.createElementVNode("path",{d:"M5.1008,5.396 C4.7432,5.616 6.0584,8.7896 6.3792,9.3064 C6.6592,9.7616 7.2536,9.9 7.7056,9.6216 C8.16,9.34 8.3016,8.7464 8.0216,8.2936 C7.704,7.7752 5.4576,5.1752 5.1008,5.396 Z M4.8328,1.9216 C5.5752,1.6632 6.3704,1.52 7.2,1.52 C8.0296,1.52 8.8248,1.6632 9.5672,1.9216 C9.8304,2.0128 10.1792,1.8296 10.0248,1.4328 C9.912,1.1448 9.8032,0.8632 9.7592,0.7488 C9.6544,0.4776 9.2792,0.2536 9.116,0.2168 C8.4984,0.0776 7.8584,0 7.2,0 C6.5416,0 5.9016,0.0776 5.2832,0.2168 C5.12,0.2536 4.7456,0.4776 4.6408,0.7488 C4.5968,0.8632 4.4872,1.1448 4.3752,1.4328 C4.2208,1.8296 4.5696,2.0136 4.8328,1.9216 Z M14.4784,2.5488 C14.3248,2.3648 14.1616,2.1848 13.988,2.0112 C13.8152,1.8376 13.6352,1.6752 13.452,1.5208 C13.3296,1.4176 12.9696,1.3336 12.7416,1.5616 C12.5144,1.7896 11.4232,2.8792 11.4232,2.8792 C11.7448,3.1096 12.0576,3.3632 12.3472,3.652 C12.6368,3.9408 12.8888,4.2536 13.12,4.576 C13.12,4.576 14.2104,3.4864 14.4376,3.2584 C14.6664,3.0296 14.5824,2.6704 14.4784,2.5488 Z M7.2,2.32 C3.62,2.32 0.7192,5.2208 0.7192,8.8 C0.7192,12.38 3.62,15.2808 7.2,15.2808 C10.7784,15.2808 13.68,12.38 13.68,8.8 C13.68,5.2216 10.7784,2.32 7.2,2.32 Z M7.2,13.6808 C4.5056,13.6808 2.32,11.496 2.32,8.8008 C2.32,6.1056 4.5048,3.9208 7.2,3.9208 C9.8952,3.9208 12.0808,6.1056 12.0808,8.8008 C12.0808,11.4952 9.8952,13.6808 7.2,13.6808 Z"},null,-1)]),8,_hoisted_1$e)}const IconStopwatch=_export_sfc$1(_sfc_main$e,[["render",_sfc_render$b]]),_sfc_main$d={name:"IconControllerPlay",props:{width:{type:Number,default:10},height:{type:Number,default:12},color:{type:String,default:"currentColor"}}},_hoisted_1$d=["width","height","fill"];function _sfc_render$a(e,t,n,r,a,s){return vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",width:n.width,height:n.height,fill:n.color,viewBox:"0 0 20 12"},t[0]||(t[0]=[vue.createElementVNode("path",{d:"M10,6.001 C10,6.3 9.695,6.515 9.695,6.515 L1.134,11.818 C0.51,12.227 0,11.924 0,11.149 L0,0.852 C0,0.075 0.51,-0.226 1.135,0.182 L9.696,5.487 C9.695,5.487 10,5.702 10,6.001 Z"},null,-1)]),8,_hoisted_1$d)}const IconControllerPlay=_export_sfc$1(_sfc_main$d,[["render",_sfc_render$a]]),_sfc_main$c={name:"IconControllerPause",props:{width:{type:Number,default:10},height:{type:Number,default:12},color:{type:String,default:"currentColor"}}},_hoisted_1$c=["width","height","fill"];function _sfc_render$9(e,t,n,r,a,s){return vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",width:n.width,height:n.height,fill:n.color,viewBox:"0 0 20 12"},t[0]||(t[0]=[vue.createElementVNode("path",{d:"M2,0 C2.553,0 3,0.048 3,0.6 L3,11.4 C3,11.952 2.553,12 2,12 L1,12 C0.447,12 0,11.952 0,11.4 L0,0.6 C0,0.048 0.447,0 1,0 L2,0 Z M9,0 C9.553,0 10,0.048 10,0.6 L10,11.4 C10,11.952 9.553,12 9,12 L8,12 C7.447,12 7,11.952 7,11.4 L7,0.6 C7,0.048 7.447,0 8,0 L9,0 Z"},null,-1)]),8,_hoisted_1$c)}const IconControllerPause=_export_sfc$1(_sfc_main$c,[["render",_sfc_render$9]]),_hoisted_1$b={class:"timeseries-viewer-toolbar"},_hoisted_2$6={id:"left-controls"},_hoisted_3$5={id:"center-controls"},_hoisted_4$3={id:"right-controls"},_sfc_main$b={__name:"TSViewerToolbar",props:{constants:{type:Object,required:!0},duration:{type:Number,required:!0},start:{type:Number,required:!0}},emits:["pageBack","pageForward","incrementZoom","decrementZoom","updateDuration","nextAnnotation","previousAnnotation","setStart"],setup(e,{emit:t}){const n=e,r=t,a=vue.ref(!0),s=vue.ref(!0),o=vue.ref(!0);vue.ref(0);const i=vue.ref(!1),u=vue.ref(null),l=vue.ref(null),v=vue.ref(150),d=vue.ref(1e6),f=[{value:.5,label:"0.5x"},{value:1,label:"1x"},{value:2,label:"2x"},{value:5,label:"5x"},{value:10,label:"10x"}],c=vue.computed(()=>i.value===!0?IconControllerPause:IconControllerPlay),p=vue.computed({get(){return n.duration/1e6},set(O){r("updateDuration",O)}}),h=()=>{s.value=!s.value},y=()=>{a.value=!a.value},m=()=>{o.value=!o.value},_=()=>{i.value===!1?M():F()},b=()=>{r("pageBack")},g=()=>{r("pageForward")},w=()=>{r("incrementZoom")},k=()=>{r("decrementZoom")},A=()=>{r("nextAnnotation")},$=()=>{r("previousAnnotation")},M=()=>{i.value=!0;const O=()=>{r("setStart",n.start+d.value*u.value),l.value=setTimeout(O,v.value)};l.value=setTimeout(O,v.value)},F=()=>{i.value=!1,v.value=150,clearInterval(l.value)};return vue.onMounted(()=>{u.value=1}),(O,D)=>{const j=ElTooltip,z=ElInputNumber,T=ElButton,L=ElButtonGroup,ie=ElOption,x=ElSelect;return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$b,[vue.createElementVNode("div",_hoisted_2$6,[vue.createVNode(j,{placement:"top-end",content:"Toggle Time Zoom Controls"},{default:vue.withCtx(()=>[vue.createElementVNode("button",{class:"btn-icon",onClick:D[0]||(D[0]=V=>h())})]),_:1}),s.value?(vue.openBlock(),vue.createBlock(z,{key:0,modelValue:p.value,"onUpdate:modelValue":D[1]||(D[1]=V=>p.value=V),precision:1,step:5,max:e.constants.MAXDURATION,"controls-position":"right"},null,8,["modelValue","max"])):vue.createCommentVNode("",!0),vue.createVNode(j,{placement:"top-end",content:"Toggle Vertical Zoom Controls"},{default:vue.withCtx(()=>[vue.createElementVNode("button",{class:"btn-icon",onClick:D[2]||(D[2]=V=>y())})]),_:1}),a.value?(vue.openBlock(),vue.createBlock(L,{key:1},{default:vue.withCtx(()=>[vue.createVNode(T,{icon:"el-icon-plus",size:"small",onClick:w}),vue.createVNode(T,{icon:"el-icon-minus",size:"small",onClick:k})]),_:1})):vue.createCommentVNode("",!0)]),vue.createElementVNode("div",_hoisted_3$5,[vue.createVNode(j,{placement:"top-end",content:"Page Back"},{default:vue.withCtx(()=>[vue.createElementVNode("button",{class:"btn-icon",onClick:D[3]||(D[3]=V=>b())},[vue.createVNode(IconPreviousPage,{height:12,width:12})])]),_:1}),vue.createVNode(j,{placement:"top-end",content:"Previous Annotation"},{default:vue.withCtx(()=>[vue.createElementVNode("button",{class:"btn-icon",onClick:D[4]||(D[4]=V=>$())},[vue.createVNode(IconNextAnnotationLeftFacing,{height:12,width:18})])]),_:1}),vue.createVNode(j,{placement:"top-end",content:"Automatic Forward"},{default:vue.withCtx(()=>[vue.createElementVNode("button",{class:"btn-icon",onClick:D[5]||(D[5]=V=>_())},[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(c.value),{height:12,width:18}))])]),_:1}),vue.createVNode(j,{placement:"top-end",content:"Next Annotation"},{default:vue.withCtx(()=>[vue.createElementVNode("button",{class:"btn-icon",onClick:D[6]||(D[6]=V=>A())},[vue.createVNode(IconNextAnnotationRightFacing,{name:"next-annotation-right-facing",height:12,width:18})])]),_:1}),vue.createVNode(j,{placement:"top-end",content:"Next Page"},{default:vue.withCtx(()=>[vue.createElementVNode("button",{class:"btn-icon",onClick:D[7]||(D[7]=V=>g())},[vue.createVNode(IconNextPage,{name:"icon-next-page",height:12,width:18})])]),_:1})]),vue.createElementVNode("div",_hoisted_4$3,[vue.createVNode(j,{placement:"top-end",content:"Toggle Play Back Speed Controls"},{default:vue.withCtx(()=>[vue.createElementVNode("button",{class:"btn-icon",onClick:D[8]||(D[8]=V=>m())},[vue.createVNode(IconStopwatch,{height:20,width:22})])]),_:1}),o.value?(vue.openBlock(),vue.createBlock(x,{key:0,modelValue:u.value,"onUpdate:modelValue":D[9]||(D[9]=V=>u.value=V),placeholder:"Select",size:"small",class:"playSelect"},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createElementBlock(vue.Fragment,null,vue.renderList(f,V=>vue.createVNode(ie,{key:V.value,label:V.label,value:V.value},null,8,["label","value"])),64))]),_:1},8,["modelValue"])):vue.createCommentVNode("",!0)])])}}},TSViewerToolbar=_export_sfc$1(_sfc_main$b,[["__scopeId","data-v-344cff0e"]]),TSViewerToolbar$1=Object.freeze(Object.defineProperty({__proto__:null,default:TSViewerToolbar},Symbol.toStringTag,{value:"Module"})),_sfc_main$a={name:"IconSelection",props:{width:{type:Number,default:16},height:{type:Number,default:16},color:{type:String,default:"currentColor"}}},_hoisted_1$a=["width","height","fill"];function _sfc_render$8(e,t,n,r,a,s){return vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",width:n.width,height:n.height,fill:n.color,viewBox:"0 0 24 24"},t[0]||(t[0]=[vue.createElementVNode("path",{pid:"0",d:"M16 10V7h-4V4H4v10h4v3h4v3h8V10zM6 12V6h4v1H8v5zm4 3V9h4v1h-2v5zm8 3h-4v-6h4z"},null,-1)]),8,_hoisted_1$a)}const IconSelection=_export_sfc$1(_sfc_main$a,[["render",_sfc_render$8]]),_sfc_main$9={name:"TimeseriesFilterModal",components:{"bf-library-button":()=>Promise.resolve().then(()=>BFLibraryButton),IconSelection},mixins:[],watch:{},computed:{computeVisible0:function(){switch(this.selectedFilter){case"lowpass":return!0;case"highpass":return!0;case"bandpass":return!0;default:return!1}},onSingleChannel:function(){return this.onChannels.length==1},selectedChannels:function(){return this.onChannels.length},computeVisible1:function(){switch(this.selectedFilter){case"lowpass":return!1;case"highpass":return!1;case"bandpass":return!0;default:return!1}},computeVisible2:function(){switch(this.selectedFilter){case"bandstop":return!0;default:return!1}},computePlaceholder1:function(e){switch(this.selectedFilter){case"lowpass":return"Low Pass Cutoff Frequency (Hz)";case"highpass":return"High Pass Cutoff Frequency (Hz)";case"bandpass":return"Low Pass Cutoff Frequency (Hz)";default:return""}},computePlaceholder2:function(e){switch(this.selectedFilter){case"bandpass":return"High Pass Cutoff Frequency (Hz)";default:return""}}},props:{visible:{type:Boolean,default:!1}},data:function(){return{selectedFilter:null,filterOptions:[{label:"No Filter",value:"clear"},{label:"Low Pass",value:"lowpass"},{label:"High Pass",value:"highpass"},{label:"Band Pass",value:"bandpass"},{label:"Notch",value:"bandstop"}],selectedNotch:null,notchOptions:[{label:"50Hz",value:50},{label:"60Hz",value:60}],input0:null,input1:null,onChannels:[]}},methods:{close:function(){this.$emit("closeWindow")},handleChange:function(){},onButtonClick:function(){},submitForm:function(e){this.$emit("closeWindow")}}},_hoisted_1$9={slot:"body"},_hoisted_2$5={class:"select-wrapper"},_hoisted_3$4={key:0,class:"filter-input-wrapper"},_hoisted_4$2={key:1,class:"filter-input-wrapper"},_hoisted_5$2={slot:"footer"},_hoisted_6$2={class:"button-wrapper"},_hoisted_7$2={class:"channels-selected"},_hoisted_8$2={key:0},_hoisted_9$1={key:1},_hoisted_10={class:"buttons"};function _sfc_render$7(e,t,n,r,a,s){const o=ElOption,i=ElSelect,u=ElInputNumber,l=IconSelection,v=vue.resolveComponent("bf-library-button"),d=ElDialog;return vue.openBlock(),vue.createBlock(d,{class:"timeseries-filter-modal",ref:"filter-modal",title:"Set Filter",modelValue:n.visible,"onUpdate:modelValue":t[4]||(t[4]=f=>n.visible=f),onClose:s.close},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_1$9,[vue.createElementVNode("div",_hoisted_2$5,[vue.createVNode(i,{modelValue:e.selectedFilter,"onUpdate:modelValue":t[0]||(t[0]=f=>e.selectedFilter=f),placeholder:"Select"},{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.filterOptions,f=>(vue.openBlock(),vue.createBlock(o,{key:f.value,label:f.label,value:f.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),s.computeVisible0?(vue.openBlock(),vue.createElementBlock("div",_hoisted_3$4,[vue.createTextVNode(vue.toDisplayString(s.computePlaceholder1)+" ",1),vue.createVNode(u,{class:"filterInput",modelValue:e.input0,"onUpdate:modelValue":t[1]||(t[1]=f=>e.input0=f),"controls-position":"right",precision:2,onChange:s.handleChange},null,8,["modelValue","onChange"])])):vue.createCommentVNode("",!0),s.computeVisible1?(vue.openBlock(),vue.createElementBlock("div",_hoisted_4$2,[vue.createTextVNode(vue.toDisplayString(s.computePlaceholder2)+" ",1),vue.createVNode(u,{class:"filterInput",modelValue:e.input1,"onUpdate:modelValue":t[2]||(t[2]=f=>e.input1=f),"controls-position":"right",precision:2,onChange:s.handleChange},null,8,["modelValue","onChange"])])):vue.createCommentVNode("",!0),s.computeVisible2?(vue.openBlock(),vue.createBlock(i,{key:2,modelValue:e.selectedNotch,"onUpdate:modelValue":t[3]||(t[3]=f=>e.selectedNotch=f),placeholder:"Select",class:"filter-input-wrapper"},{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.notchOptions,f=>(vue.openBlock(),vue.createBlock(o,{key:f.value,label:f.label,value:f.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])):vue.createCommentVNode("",!0)])])]),footer:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_5$2,[vue.createElementVNode("div",_hoisted_6$2,[vue.createElementVNode("div",_hoisted_7$2,[vue.createVNode(l,{height:24,width:24}),s.onSingleChannel?(vue.openBlock(),vue.createElementBlock("div",_hoisted_8$2," Adding to single channel ")):(vue.openBlock(),vue.createElementBlock("div",_hoisted_9$1," Adding to "+vue.toDisplayString(s.selectedChannels)+" Selected Channels ",1))]),vue.createElementVNode("div",_hoisted_10,[vue.createVNode(v,{onClick:s.submitForm},{default:vue.withCtx(()=>t[5]||(t[5]=[vue.createTextVNode("Set Filter ")])),_:1,__:[5]},8,["onClick"])])])])]),_:1},8,["modelValue","onClose"])}const TSFilterModal=_export_sfc$1(_sfc_main$9,[["render",_sfc_render$7],["__scopeId","data-v-718cdb9b"]]),TSFilterModal$1=Object.freeze(Object.defineProperty({__proto__:null,default:TSFilterModal},Symbol.toStringTag,{value:"Module"})),_hoisted_1$8={slot:"body"},_hoisted_2$4={class:"select-wrapper"},_hoisted_3$3={class:"range-type-selector"},_hoisted_4$1={class:"select-wrapper"},_hoisted_5$1={class:"description-wrapper"},_hoisted_6$1={slot:"footer"},_hoisted_7$1={class:"button-wrapper"},_hoisted_8$1={class:"channels-selected"},_hoisted_9={class:"buttons"},_sfc_main$8={__name:"TSAnnotationModal",props:{visible:{type:Boolean,default:!1}},emits:["closeWindow","createUpdateAnnotation"],setup(e,{emit:t}){const n=vue.defineAsyncComponent(()=>Promise.resolve().then(()=>BFLibraryButton)),r=e,a=vue.ref(!1);vue.watch(()=>r.visible,A=>{if(a.value=A,!A)return;const $=i.value.start/1e3,M=i.value.end/1e3;c.value={start:i.value.start,end:i.value.end},i.value.duration==0?(p.value=!1,f.value=$):(p.value=!0,f.value=[$,M])},{immediate:!0});const s=t,o=useViewerStore(),{activeAnnotation:i,viewerChannels:u,viewerAnnotations:l}=pinia.storeToRefs(o);vue.ref(null);const v=vue.ref(null),d=vue.ref(!1),f=vue.ref(null),c=vue.ref({start:0,end:0}),p=vue.ref(!0),h=vue.ref([{value:"Event",label:"Event"},{value:"Artifact",label:"Artifact"},{value:"Seizure",label:"Seizure"},{value:"Mark",label:"Mark"},{value:"Stim On",label:"Stim On"},{value:"Stim Off",label:"Stim Off"},{value:"Start",label:"Start"},{value:"Stop",label:"Stop"}]),y=vue.computed(()=>i.value.id?"Edit Annotation":"Create Annotation"),m=vue.computed(()=>i.value.id?"Update":"Create"),_=vue.computed(()=>p.value?"datetimerange":"datetime"),b=vue.computed(()=>{let A="";return i.value.allChannels?A="Adding to all channels":propOr([],"channelIds",i.value).length==1?A="Adding to single channel":A=`Adding to ${propOr([],"channelIds",i.value).length} channels`,A});vue.watch(()=>r.visible,A=>{if(!A)return;const $=i.value.start/1e3,M=i.value.end/1e3;c.value={start:i.value.start,end:i.value.end},i.value.duration==0?(p.value=!1,f.value=$):(p.value=!0,f.value=[$,M])}),vue.watch(p,A=>{const $=i.value.start/1e3,M=i.value.end/1e3;A?f.value=[$,M]:(i.value.duration=0,f.value=$)});const g=()=>{if(!i.value.layer_id){console.error("No layer selected for annotation");return}if(!f.value){console.error("No time range selected for annotation");return}if(p.value)if(Array.isArray(f.value)&&f.value.length>=2)i.value.start=f.value[0]*1e3,i.value.end=f.value[1]*1e3,i.value.duration=i.value.end-i.value.start;else{console.error("Invalid range value for range mode:",f.value);return}else if(typeof f.value=="number")i.value.start=f.value*1e3,i.value.end=f.value*1e3,i.value.duration=0;else{console.error("Invalid range value for point mode:",f.value);return}o.setActiveAnnotation(i.value),s("createUpdateAnnotation",i.value),w()},w=()=>{a.value=!1,s("closeWindow")},k=()=>{d.value=!1};return(A,$)=>{const M=ElSwitch,F=ElDatePicker,O=ElOption,D=ElSelect,j=ElInput,z=ElDialog;return vue.openBlock(),vue.createBlock(z,{class:"timeseries-annotation-modal",ref:"annotation-modal",title:y.value,modelValue:a.value,"onUpdate:modelValue":$[5]||($[5]=T=>{a.value=T,T||s("closeWindow")}),onClose:w,onClosed:k},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_1$8,[vue.createElementVNode("div",_hoisted_2$4,[vue.createElementVNode("div",_hoisted_3$3,[$[6]||($[6]=vue.createElementVNode("div",{class:"select-label"}," Range? ",-1)),vue.createVNode(M,{modelValue:p.value,"onUpdate:modelValue":$[0]||($[0]=T=>p.value=T),"active-color":"#5039F7","inactive-color":"#CAC5BF"},null,8,["modelValue"])]),vue.createVNode(F,{modelValue:f.value,"onUpdate:modelValue":$[1]||($[1]=T=>f.value=T),class:"date-time-picker",type:_.value,format:"YYYY-MM-DD HH:mm:ss","value-format":"x","range-separator":"To","start-placeholder":"Start date/time","end-placeholder":"End date/time"},null,8,["modelValue","type"])]),vue.createElementVNode("div",_hoisted_4$1,[vue.createElementVNode("div",null,[$[7]||($[7]=vue.createElementVNode("div",{class:"select-label"}," Annotation Layer ",-1)),vue.createVNode(D,{modelValue:vue.unref(i).layer_id,"onUpdate:modelValue":$[2]||($[2]=T=>vue.unref(i).layer_id=T),placeholder:"Select"},{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(vue.unref(l),T=>(vue.openBlock(),vue.createBlock(O,{key:T.id,label:T.name,value:T.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),vue.createElementVNode("div",null,[$[8]||($[8]=vue.createElementVNode("div",{class:"select-label"}," Annotation Type ",-1)),vue.createVNode(D,{modelValue:vue.unref(i).label,"onUpdate:modelValue":$[3]||($[3]=T=>vue.unref(i).label=T),placeholder:"Select"},{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(h.value,T=>(vue.openBlock(),vue.createBlock(O,{key:T.value,label:T.label,value:T.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])])]),vue.createElementVNode("div",_hoisted_5$1,[$[9]||($[9]=vue.createElementVNode("div",{class:"select-label"}," Description ",-1)),vue.createVNode(j,{ref_key:"input",ref:v,modelValue:vue.unref(i).description,"onUpdate:modelValue":$[4]||($[4]=T=>vue.unref(i).description=T),placeholder:"Please provide additional information...",type:"textarea",rows:5},null,8,["modelValue"])])]),vue.createElementVNode("div",_hoisted_6$1,[vue.createElementVNode("div",_hoisted_7$1,[vue.createElementVNode("div",_hoisted_8$1,[vue.createVNode(IconSelection,{class:"inline-icon",height:16,width:16}),vue.createTextVNode(" "+vue.toDisplayString(b.value),1)]),vue.createElementVNode("div",_hoisted_9,[vue.createVNode(vue.unref(n),{onClick:g},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(m.value),1)]),_:1})])])])]),_:1},8,["title","modelValue"])}}},TSAnnotationModal=_export_sfc$1(_sfc_main$8,[["__scopeId","data-v-af090f6f"]]),TSAnnotationModal$1=Object.freeze(Object.defineProperty({__proto__:null,default:TSAnnotationModal},Symbol.toStringTag,{value:"Module"})),_sfc_main$7={name:"DialogBody",setup(e,{slots:t}){return{hasSlot:r=>!!t[r]}},props:{fixedHeight:{type:Boolean,default:!1}},computed:{classNames:function(){const e=this.$slots.icon?"icon":"",t=this.fixedHeight?"fixed-height":"";return`dialog-body ${e} ${t}`}}},_hoisted_1$7={key:0,class:"dialog-body-icon"},_hoisted_2$3={key:1,class:"dialog-body-heading"},_hoisted_3$2={class:"dialog-body-content"};function _sfc_render$6(e,t,n,r,a,s){return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(s.classNames)},[r.hasSlot("icon")?(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$7,[vue.renderSlot(e.$slots,"icon",{},void 0,!0)])):vue.createCommentVNode("",!0),r.hasSlot("heading")?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$3,[vue.renderSlot(e.$slots,"heading",{},void 0,!0)])):vue.createCommentVNode("",!0),vue.createElementVNode("div",_hoisted_3$2,[vue.renderSlot(e.$slots,"default",{},void 0,!0)])],2)}const __unplugin_components_2=_export_sfc$1(_sfc_main$7,[["render",_sfc_render$6],["__scopeId","data-v-8ee2b9e5"]]),_sfc_main$6={name:"IconWarningCircle",props:{width:{type:Number,default:16},height:{type:Number,default:16},color:{type:String,default:"currentColor"}}},_hoisted_1$6=["width","height","fill"];function _sfc_render$5(e,t,n,r,a,s){return vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",width:n.width,height:n.height,fill:n.color,viewBox:"0 0 24 24"},t[0]||(t[0]=[vue.createElementVNode("path",{pid:"0",d:"M22 11.4c-.1-2.7-1.3-5.1-3.3-6.9-.4-.4-1-.3-1.4.1-.4.4-.3 1 .1 1.4 1.6 1.4 2.5 3.4 2.7 5.5.1 2.1-.6 4.2-2 5.8s-3.4 2.5-5.5 2.7c-2.1.1-4.2-.6-5.8-2-1.6-1.4-2.5-3.4-2.7-5.5-.1-2.1.6-4.2 2-5.8 1.3-1.4 3.1-2.4 5-2.6V11c0 .6.4 1 1 1s1-.4 1-1V2h-1C9.2 2 6.4 3.2 4.5 5.3c-1.8 2-2.7 4.6-2.5 7.2.1 2.7 1.3 5.1 3.3 6.9C7.2 21.2 9.6 22 12 22c2.7 0 5.5-1.1 7.5-3.3 1.7-2 2.6-4.6 2.5-7.3z"},null,-1),vue.createElementVNode("circle",{pid:"1",cx:"12",cy:"15.5",r:"1.5"},null,-1)]),8,_hoisted_1$6)}const __unplugin_components_1=_export_sfc$1(_sfc_main$6,[["render",_sfc_render$5]]),_sfc_main$5={name:"BfDialogHeader",props:{title:{type:String,default:""}},methods:{onClose:function(){this.$parent.handleClose()}}},_hoisted_1$5={class:"bf-dialog-header"},_hoisted_2$2={class:"bf-dialog-header-title"};function _sfc_render$4(e,t,n,r,a,s){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$5,[vue.createElementVNode("span",_hoisted_2$2,vue.toDisplayString(n.title),1),this.$slots.tabs?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createElementBlock("button",{key:0,class:"icon-close",onClick:t[0]||(t[0]=(...o)=>s.onClose&&s.onClose(...o))})),vue.renderSlot(e.$slots,"tabs",{},void 0,!0)])}const __unplugin_components_0=_export_sfc$1(_sfc_main$5,[["render",_sfc_render$4],["__scopeId","data-v-8fb1f048"]]),_sfc_main$4={name:"BfLibraryButton",props:{type:{type:String,default:"button"},autofocus:Boolean,disabled:Boolean,processing:{type:Boolean,default:!1},processingText:{type:String,default:""}},computed:{hasPrefixSlot:function(){return!!this.$slots.prefix},hasSuffixSlot:function(){return!!this.$slots.suffix}},methods:{}},_hoisted_1$4=["disabled","autofocus","type"],_hoisted_2$1={key:0,class:"prefix"},_hoisted_3$1={key:3,class:"suffix"};function _sfc_render$3(e,t,n,r,a,s){return vue.openBlock(),vue.createElementBlock("button",{class:vue.normalizeClass(["bf-library-button",[n.type?"bf-library-button--"+n.type:"",s.hasPrefixSlot?"hasPrefix":""]]),disabled:n.disabled||n.processing,autofocus:n.autofocus,type:n.type},[s.hasPrefixSlot?(vue.openBlock(),vue.createElementBlock("span",_hoisted_2$1,[vue.renderSlot(e.$slots,"prefix",{},void 0,!0)])):vue.createCommentVNode("",!0),n.processing?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:1},[n.processingText?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.createTextVNode(vue.toDisplayString(n.processingText),1)],64)):vue.renderSlot(e.$slots,"default",{key:1},void 0,!0)],64)):vue.createCommentVNode("",!0),n.processing?vue.createCommentVNode("",!0):vue.renderSlot(e.$slots,"default",{key:2},void 0,!0),s.hasSuffixSlot?(vue.openBlock(),vue.createElementBlock("span",_hoisted_3$1,[vue.renderSlot(e.$slots,"suffix",{},void 0,!0)])):vue.createCommentVNode("",!0)],10,_hoisted_1$4)}const BfLibraryButton=_export_sfc$1(_sfc_main$4,[["render",_sfc_render$3],["__scopeId","data-v-2e183fe2"]]),BFLibraryButton=Object.freeze(Object.defineProperty({__proto__:null,default:BfLibraryButton},Symbol.toStringTag,{value:"Module"})),_sfc_main$3={name:"TsAnnotationDeleteDialog",components:{BfDialogHeader:__unplugin_components_0,DialogBody:__unplugin_components_2,BfLibraryButton,IconWarningCircle:__unplugin_components_1},props:{visible:{type:Boolean,default:!1},deleteAnnotation:{type:Object,default:()=>({annotation:{},withDiscussions:!1})}},data:function(){return{isProcessing:!1}},computed:{annotationDescription:function(){return pathOr("",["annotation","label"],this.deleteAnnotation)},annotationDateTime:function(){const e=pathOr("",["annotation","start"],this.deleteAnnotation);return this.getUTCDateString(e)+" "+this.getUTCTimeString(e)},deleteDiscussions:function(){return propOr(!1,"withDiscussions",this.deleteAnnotation)},btnDeleteCopy:function(){return this.deleteDiscussions?"Yes, I'm sure":"Delete"}},methods:{removeAnnotation:function(){this.$emit("delete",this.deleteAnnotation.annotation)},close:function(){this.$emit("update:visible",!1)},onClosed:function(){this.isProcessing=!1,this.$emit("update:delete-annotation",{annotation:{},withDiscussions:!1})},getUTCDateString:function(e){return e>0?(e=new Date(e/1e3),e.toDateString()):"unknown"},getUTCTimeString:function(e){if(e>0)return e=e/1e3,e=new Date(e),("0"+e.getUTCHours()).slice(-2)+":"+("0"+e.getUTCMinutes()).slice(-2)+":"+("0"+e.getUTCSeconds()).slice(-2)}}},_hoisted_1$3={class:"dialog-simple-buttons"};function _sfc_render$2(e,t,n,r,a,s){const o=__unplugin_components_0,i=__unplugin_components_1,u=vue.resolveComponent("bf-library-button"),l=__unplugin_components_2,v=ElDialog;return vue.openBlock(),vue.createBlock(v,{class:"simple",modelValue:n.visible,"onUpdate:modelValue":t[0]||(t[0]=d=>n.visible=d),"show-close":!1,onClose:s.close,onClosed:s.onClosed},{default:vue.withCtx(()=>[vue.createVNode(o,{slot:"title"}),vue.createVNode(l,null,{default:vue.withCtx(()=>[vue.createVNode(i,{class:"mb-16",height:32,width:32,color:"#C14D49"}),t[5]||(t[5]=vue.createElementVNode("h2",null,"Delete annotation?",-1)),s.deleteDiscussions?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.createElementVNode("p",null,vue.toDisplayString(s.annotationDescription)+" - "+vue.toDisplayString(s.annotationDateTime),1),t[1]||(t[1]=vue.createElementVNode("hr",null,null,-1)),t[2]||(t[2]=vue.createElementVNode("p",null," Deleting this annotation will also remove any associated discussions and cannot be undone. ",-1)),t[3]||(t[3]=vue.createElementVNode("p",null," Are you sure you would like to remove this annotation? ",-1))],64)):vue.createCommentVNode("",!0),vue.createElementVNode("div",_hoisted_1$3,[vue.createVNode(u,{class:"secondary",onClick:s.close},{default:vue.withCtx(()=>t[4]||(t[4]=[vue.createTextVNode(" Cancel ")])),_:1,__:[4]},8,["onClick"]),vue.createVNode(u,{class:"red",processing:e.isProcessing,onClick:s.removeAnnotation},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(s.btnDeleteCopy),1)]),_:1},8,["processing","onClick"])])]),_:1,__:[5]})]),_:1},8,["modelValue","onClose","onClosed"])}const TsAnnotationDeleteDialog=_export_sfc$1(_sfc_main$3,[["render",_sfc_render$2],["__scopeId","data-v-3cc4b959"]]),TsAnnotationDeleteDialog$1=Object.freeze(Object.defineProperty({__proto__:null,default:TsAnnotationDeleteDialog},Symbol.toStringTag,{value:"Module"})),_sfc_main$2={name:"CircleIcon",props:{icon:{type:String},height:{type:String,default:"16"},width:{type:String,default:"16"},currentColor:{type:String,default:"#71747C"}}},_hoisted_1$2={class:"circle-icon"};function _sfc_render$1(e,t,n,r,a,s){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$2,[vue.renderSlot(e.$slots,"icon",{},void 0,!0)])}const CircleIcon=_export_sfc$1(_sfc_main$2,[["render",_sfc_render$1],["__scopeId","data-v-46dcef49"]]),_sfc_main$1={name:"AnnotationLayerWindow",components:{CircleIcon,BfLibraryButton},props:{visible:{type:Boolean,default:!1}},data:function(){return{name:"",selectedColor:"",colorOptions:[{label:"Green",value:"#18BA62",iconBgColor:"#18BA62"},{label:"Gold",value:"#FFBC27",iconBgColor:"#FFBC27"},{label:"Red",value:"#E94B4B",iconBgColor:"#E94B4B"},{label:"Light Blue",value:"#2760FF",iconBgColor:"#2760FF"},{label:"Magenta",value:"#FF4FFF",iconBgColor:"#FF4FFF"},{label:"Cyan",value:"#50FFFF",iconBgColor:"#50FFFF"},{label:"Yellow",value:"#FFFF4E",iconBgColor:"#FFFF4E"},{label:"Purple",value:"#512BAF",iconBgColor:"#512BAF"},{label:"Lavendar",value:"#8A6ECF",iconBgColor:"#8A6ECF"},{label:"Teal",value:"#389BAD",iconBgColor:"#389BAD"},{label:"Dark Green",value:"#187D46",iconBgColor:"#187D46"},{label:"Brick Red",value:"#B12800",iconBgColor:"#B12800"},{label:"Dark Blue",value:"#0C2475",iconBgColor:"#0C2475"},{label:"Bright Orange",value:"#FF5321",iconBgColor:"#FF5321"},{label:"Pink",value:"#FF99CC",iconBgColor:"#FF99CC"},{label:"Tan",value:"#DCC180",iconBgColor:"#DCC180"},{label:"Medium Blue",value:"#0D4EFF",iconBgColor:"#0D4EFF"},{label:"Orange",value:"#FF6C21",iconBgColor:"#FF6C21"},{label:"Black",value:"#000000",iconBgColor:"#000000"},{label:"Gray",value:"#9B9B9B",iconBgColor:"#9B9B9B"},{label:"Lime",value:"#00FF00",iconBgColor:"#00FF00"},{label:"Salmon",value:"#FA8072",iconBgColor:"#FA8072"},{label:"Olive",value:"#808000",iconBgColor:"#808000"},{label:"Sienna",value:"#A0522D",iconBgColor:"#A0522D"}]}},methods:{close:function(){this.$emit("close-window")},handleFormSubmit:function(){this.$emit("createLayer",{name:this.name,color:this.selectedColor})},handleFormCancel:function(){this.close()}}},_hoisted_1$1={slot:"body"},_hoisted_2={class:"input-section"},_hoisted_3={class:"input-section"},_hoisted_4={class:"color-option"},_hoisted_5={style:{float:"right",color:"#8492a6","font-size":"13px"}},_hoisted_6={slot:"footer"},_hoisted_7={class:"button-wrapper"},_hoisted_8={class:"buttons"};function _sfc_render(e,t,n,r,a,s){const o=ElInput,i=ElOption,u=ElSelect,l=vue.resolveComponent("bf-library-button"),v=ElDialog;return vue.openBlock(),vue.createBlock(v,{"onUpdate:modelValue":t[2]||(t[2]=d=>n.visible=d),"model-value":n.visible,onClose:s.close,class:"timeseries-annotation-layer-modal",ref:"timeseries-filter-modal",title:"Annotation Layers"},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_1$1,[vue.createElementVNode("div",_hoisted_2,[t[3]||(t[3]=vue.createTextVNode(" Layer Name: ")),vue.createVNode(o,{placeholder:"Add a Layer Name",modelValue:e.name,"onUpdate:modelValue":t[0]||(t[0]=d=>e.name=d),ref:"input"},null,8,["modelValue"])]),vue.createElementVNode("div",_hoisted_3,[t[4]||(t[4]=vue.createTextVNode(" Select Color: ")),vue.createVNode(u,{modelValue:e.selectedColor,"onUpdate:modelValue":t[1]||(t[1]=d=>e.selectedColor=d),placeholder:"Select"},{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.colorOptions,d=>(vue.openBlock(),vue.createBlock(i,{key:d.value,label:d.label,value:d.value},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_4,[vue.createElementVNode("div",{style:vue.normalizeStyle({backgroundColor:d.value,height:"30px",width:"30px",borderRadius:"50%"})},null,4),vue.createElementVNode("div",_hoisted_5,vue.toDisplayString(d.label),1)])]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue"])])])]),footer:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_6,[vue.createElementVNode("div",_hoisted_7,[vue.createElementVNode("div",_hoisted_8,[vue.createVNode(l,{onClick:s.handleFormCancel},{default:vue.withCtx(()=>t[5]||(t[5]=[vue.createTextVNode("Cancel ")])),_:1,__:[5]},8,["onClick"]),vue.createVNode(l,{onClick:s.handleFormSubmit},{default:vue.withCtx(()=>t[6]||(t[6]=[vue.createTextVNode("Save ")])),_:1,__:[6]},8,["onClick"])])])])]),_:1},8,["model-value","onClose"])}const TSViewerLayerWindow=_export_sfc$1(_sfc_main$1,[["render",_sfc_render],["__scopeId","data-v-b14c56dd"]]),TSViewerLayerWindow$1=Object.freeze(Object.defineProperty({__proto__:null,default:TSViewerLayerWindow},Symbol.toStringTag,{value:"Module"})),hexToRgbA=(e,t)=>{let n;if(/^#([A-Fa-f0-9]{3}){1,2}$/.test(e))return n=e.substring(1).split(""),n.length===3&&(n=[n[0],n[0],n[1],n[1],n[2],n[2]]),n="0x"+n.join(""),"rgba("+[n>>16&255,n>>8&255,n&255].join(",")+","+t+")";throw new Error("Bad Hex")},sortAnnotations=e=>{e.sort((t,n)=>t.start<n.start?-1:t.start>n.start?1:0)},getLayer=(e,t)=>{const n=(e==null?void 0:e.layer_id)||0;return defaultTo({},find(propEq("id",n),t))},annIndexOf=(e,t,n,r=0,a=!1)=>{let s;return a?s=indexOfEnd(e,t,r,e.length-1,n):s=indexOfStart(e,t,r,e.length-1,n),s===-1?s=0:s<0&&(s=-s-2),s},indexOfStart=(e,t,n,r,a)=>{if(r<n){let o=r>=0?r:-r-2;if(o===-1)return o;const i=e[o].start;for(;o>=0&&e[o].start===i;)o--;return-o-2}const s=parseInt((n+r)/2);if(e[s].start>t)return indexOfStart(e,t,n,s-1,a);if(e[s].start<t)return indexOfStart(e,t,s+1,r,a);{let o=s;if(a){for(;o>=0&&e[o].start===t;)o--;o++}else{for(;o<e.length&&e[o].start===t;)o++;o--}return o}},indexOfEnd=(e,t,n,r,a)=>{if(r<n){let i=r>=0?r:-r-2;if(i===-1)return i;const u=e[i].start+e[i].duration;for(;i>=0&&e[i].start+e[i].duration===u;)i--;return-i-2}const s=parseInt((n+r)/2),o=e[s].start+e[s].duration;if(o>t)return indexOfEnd(e,t,n,s-1,a);if(o<t)return indexOfEnd(e,t,s+1,r,a);{let i=s;if(a){for(;i>=0&&e[i].start+e[i].duration===t;)i--;i++}else{for(;i<e.length&&e[i].start+e[i].duration===t;)i++;i--}return i}},canvasScaler=(e,t,n=0)=>t*(e+n);function useAnnotationData(){const e=useViewerStore(),{viewerChannels:t,viewerAnnotations:n,viewerMontageScheme:r}=pinia.storeToRefs(e),a=vue.ref([]),s=vue.ref([]),o=d=>{const f=r.value!=="NOT_MONTAGED";let c=propOr("","id",d);if(f){const p=c.split("_");c=p.length?head(p):c}return c},i=async(d,f,c,p,h)=>{const y=[];y.push({start:d,end:c.tsEnd});let m=0;for(let g=0;g<a.value.length;g++){const w=a.value[g];if(d>=w.start&&f<=w.end)return;if(y[0].start>f)break;if(w.start<=y[0].start&&w.end>=d)m=g+1,y[0].start=w.end;else if(w.start>y[0].start){m=g;break}}const _=n.value.reduce((g,w)=>g+w.annotations.length,0);if(y[0].start>=y[0].end&&_>0)return;const b=0;for(let g=m;g<a.value.length;g++)if(a.value[g].start>=y[b].start)if(y[b].end=a.value[g].start,a.value[g].end<f)y.push({start:a.value[g].end,end:c.tsEnd});else break;if(!(y[0].start>=y[0].end&&_>0)&&y.length>0){t.value.map(g=>o(g));for(const g of y){for(const w of n.value){if(!w.id){console.warn("Layer ID is undefined, skipping annotation request for layer:",w);continue}const k=Math.floor(g.end),A={id:p.content.id,start:Math.floor(g.start),end:k,layerId:w.id,limit:c.constants.LIMITANNFETCH};try{const $=await useToken(),F=`${e.config.apiUrl}/timeseries/${p.content.id}/layers/${w.id}/annotations?api_key=${$}`,O=Object.keys(A).map(T=>`&${T}=${A[T]}`).join(""),D=`${F}${O}`,j=await fetch(D,{method:"GET",headers:{"Content-type":"application/json"}});if(j.status>=400)throw new Error(j.status);const z=await j.json();await u(z,h)}catch($){useHandleXhrError($)}}a.value.push({start:Math.floor(g.start),end:Math.floor(g.end)})}a.value.sort((g,w)=>g.start<w.start?-1:g.start>w.start?1:0)}},u=async(d,f)=>{const c=propOr({},"linkedPackages",d);let p=pathOr([],["annotations","results"],d);if(p.length>=500){let y=0;for(const m of p)m.start>y&&(y=m.start);for(const m of a.value)if(m.end>y&&m.start<y){m.end=y;break}}const h=r.value!=="NOT_MONTAGED";if(p.length>0){const y=p.map(m=>{const _={name:"",id:m.id,label:m.label,description:m.description,start:m.start,duration:m.end-m.start,end:m.end,cStart:null,cEnd:null,selected:!1,channelIds:m.channelIds,allChannels:!1,layer_id:m.layerId,userId:m.userId};if(m.linkedPackage){const b=m.linkedPackage;_.linkedPackage=pathOr("",["content","id"],c[b]),_.linkedPackageDTO=c[b]}return(!h&&_.channelIds.length===t.value.length||h&&_.channelIds.length>t.value.length)&&(_.allChannels=!0),_});n.value.forEach(m=>{const _=m.annotations,b=y.filter(g=>m.id===g.layer_id);m.annotations=_.concat(b),e.updateLayer(m)})}f("annotationsReceived")};return{cachedAnnRange:a,annLayerInfo:s,checkAnnotationRange:i,findNextAnnotation:d=>{const f=e.getViewerActiveLayer(),c=annIndexOf(f.annotations,d,!1);return c<f.annotations.length?f.annotations[c].start>d?f.annotations[c]:f.annotations[c+1]||f.annotations[c]:f.annotations[c]},findPreviousAnnotation:d=>{const f=e.getViewerActiveLayer(),c=annIndexOf(f.annotations,d,!0);return f.annotations[c].start<d?f.annotations[c]:c>0?f.annotations[c-1]:f.annotations[c]},getChannelId:o}}function useAnnotationRendering(){const e=useViewerStore(),{viewerAnnotations:t,viewerChannels:n}=pinia.storeToRefs(e),r=vue.ref([]),a=vue.ref([]),s=vue.ref(null),o=vue.ref(["#FFFF4E"]),i=(c,p)=>{var _,b;const y=(((_=p.constants)==null?void 0:_.ANNOTATIONLABELHEIGHT)||20)/2|0,m=((b=p.constants)==null?void 0:b.XOFFSET)||0;for(const g of c){let w=g.start,k=g.duration;g.duration<0&&(w=g.start+g.duration,k=-g.duration);const A=m+(w-p.start)/p.rsPeriod;if(g.cStart=A|0,g.duration!==0){const $=m+(w+k-p.start)/p.rsPeriod;g.cEnd=$|0}else g.cEnd=g.cStart+p.cWidth/40|0;if(g.allChannels)g.allOffsets=[y],g.cY=y;else{g.allOffsets=[],g.minOffset=p.cHeight|0,g.maxOffset=0;const $=n.value;for(const M of g.channelIds){let F=null;for(const O of $)if(O.id===M&&O.visible){F=O.rowBaseline|0,F<g.minOffset&&(g.minOffset=F),F>g.maxOffset&&(g.maxOffset=F),g.allOffsets.push(F);break}}a.value.indexOf(g.minOffset)<0&&a.value.push(g.minOffset),g.cY=g.minOffset}}},u=(c,p,h,y)=>{var b,g;const m=((b=h.constants)==null?void 0:b.ANNOTATIONLABELHEIGHT)||20,_=m/2|0;c.setTransform(h.pixelRatio,0,0,h.pixelRatio,0,0),c.save(),c.lineWidth=1,c.setLineDash([8,5]),c.strokeStyle="rgba(0,0,0, 0.6)",c.fillStyle="rgba(0,0,0,0.05)";for(const w of p){const k=getLayer(w,t.value);w.selected&&(c.save(),c.strokeStyle=k.selColor,c.fillStyle=k.bkColor,c.lineWidth=1);const A=Math.round(w.cStart)+.5,$=Math.round(w.cEnd)+.5;w.allChannels?w.duration===0?(c.beginPath(),c.moveTo(A+1,m),c.lineTo(A,y),c.stroke()):(c.fillRect(A,m,$-A,y-m),c.beginPath(),c.moveTo(A,m),c.lineTo(A,y),c.moveTo($,m),c.lineTo($,y),c.stroke()):((g=w==null?void 0:w.channelIds)==null?void 0:g.length)===1?w.duration===0&&(c.beginPath(),c.moveTo(A,w.minOffset+_),c.lineTo(A,w.minOffset+_+8),c.stroke()):w.duration===0?(c.beginPath(),c.moveTo(A,w.minOffset+_),c.lineTo(A,w.maxOffset-_),c.stroke()):(c.fillRect(A-1,w.minOffset+_,$-A+1,w.maxOffset-w.minOffset-m),c.beginPath(),c.moveTo(A,w.minOffset+_),c.lineTo(A,w.maxOffset-_),c.moveTo($,w.minOffset+_),c.lineTo($,w.maxOffset-_),c.stroke()),w.selected&&c.restore()}c.restore()},l=async(c,p,h,y,m,_)=>{var w;const b=((w=h.constants)==null?void 0:w.ANNOTATIONLABELHEIGHT)||20,g=b/2|0;c.setTransform(h.pixelRatio,0,0,h.pixelRatio,0,0),c.save(),c.lineWidth=2,c.font="14px sans-serif",c.textAlign="left";for(const k of p){const A=getLayer(k,t.value);if(k===s.value&&y)continue;k.selected?(c.fillStyle=A.selColor||"rgba(51,204,102, 0.8)",c.strokeStyle="white"):(c.fillStyle=A.color||"rgba(51,204,102,0.8)",c.strokeStyle=k===s.value?"white":"rgba(255,255,255,0.8)");const $=Math.round(k.cStart)+1,M=Math.round(k.cEnd);let F=0;for(let j=0;j<k.allOffsets.length;j++)c.fillRect($-1,k.allOffsets[j]-g,M-$+2,b),k.allOffsets[j]===k.minOffset&&(F=j);const O=k.allOffsets[F];if(["annSelect","annResize-left","annResize-right"].includes(m)&&_==="annotate"&&(c.beginPath(),k.duration!==0&&(c.moveTo(M-3,O-g+3),c.lineTo(M-3,O+g-3)),c.moveTo($+3,O-g+3),c.lineTo($+3,O+g-3),c.stroke()),M-$>k.label.length*8+10){c.fillStyle=o.value.indexOf(A.hexColor)>=0?"black":"white";const j=k.linkedPackage?$+30:$+10,z=k.linkedPackage?O+g-g/2:O+g-6;c.fillText(k.label,j,z)}const D=k.linkedPackageDTO;D&&M-$>=30&&await v(c,D,$,O,g,b)}c.restore()},v=async(c,p,h,y,m,_)=>{const b=pathOr({},["objects","view",1,"content"],p),g=propOr("","fileType",b),w=new Image;if(g==="PNG"){const{id:k,packageId:A}=b,$=e.config.apiUrl;try{const M=await useToken();w.src=`${$}/packages/${A}/files/${k}/presign/?api_key=${M}`,w.complete?c.drawImage(w,h,y-m,27,_):w.addEventListener("load",()=>{c.drawImage(w,h,y-m,27,_)},{once:!0})}catch(M){console.error("Error loading image:",M)}}else w.src=d(),c.drawImage(w,h+5,y-m,20,20)},d=c=>"/path/to/default/icon.png";return{renderAnn:r,hoverOffsets:a,focusedAnn:s,render:(c,p,h,y)=>{var k,A,$,M;if(!p){console.warn("TSAnnotationCanvas: annotationsCanvas prop is undefined or null");return}const m=p.getContext("2d"),_=h.getContext("2d");m.setTransform(c.pixelRatio,0,0,c.pixelRatio,0,0),_.setTransform(c.pixelRatio,0,0,c.pixelRatio,0,0),a.value=[(((k=c.constants)==null?void 0:k.ANNOTATIONLABELHEIGHT)||20)/2],m.clearRect(0,0,c.cWidth,c.cHeight),_.clearRect(0,0,c.cWidth,c.cHeight),r.value=[];const b=c.duration&&c.duration>0?c.duration:15e6,g=c.start||0,w=g+b;console.log("🎨 Annotation render debug:",{start:g,duration:b,end:w,layerCount:((A=t.value)==null?void 0:A.length)||0,totalAnnotations:(($=t.value)==null?void 0:$.reduce((F,O)=>{var D;return F+(((D=O.annotations)==null?void 0:D.length)||0)},0))||0});for(const F of t.value)if(F.visible&&((M=F.annotations)==null?void 0:M.length)>0){console.log(`🔍 Processing layer "${F.name}" with ${F.annotations.length} annotations`);const O=F.annotations.filter(D=>{const j=D.start,z=D.end||D.start+(D.duration||0),T=j<w&&z>g;return T&&console.log(` ✅ Including annotation "${D.label}": ${j} - ${z}`),T});console.log(` 📊 Found ${O.length} annotations in viewport`),O.length>0&&(O.sort((D,j)=>D.start-j.start),r.value.push(...O))}if(console.log(`🎯 Total annotations to render: ${r.value.length}`),r.value.length===0){console.log("⚠️ No annotations found in viewport");return}sortAnnotations(r.value),i(r.value,c),u(m,r.value,c,y),l(_,r.value,c,!0,c.pointerMode,c.viewerActiveTool),s.value&&l(_,[s.value],c,!1,c.pointerMode,c.viewerActiveTool),console.log(`✅ Rendered ${r.value.length} annotations successfully`)},computeRenderOptions:i,renderAnnotationAreas:u,renderAnnotationLabels:l}}function useAnnotationInteraction(e,t,n){const r=useViewerStore(),a=vue.ref([0,0]),s=(c,p)=>{const y=((p==null?void 0:p.ANNOTATIONLABELHEIGHT)||20)/2;for(const m of n.value)if(c>=m-y&&c<=m+y)return!0;return!1},o=(c,p,h)=>{var _;const m=((h==null?void 0:h.ANNOTATIONLABELHEIGHT)||20)/2;for(let b=0;b<(((_=t.value)==null?void 0:_.length)||0);b++){const g=t.value[b];if(g.cStart<c&&g.cEnd>c){if(p>g.cY-m&&p<g.cY+m)return b}else if(g.cStart>c)break}return null},i=(c,p,h)=>{if(!h)return p;switch(p){case"annotate":return c<=h.cStart+10?"annResize-left":c>=h.cEnd-10&&h.duration>0?"annResize-right":"annSelect";case"pointer":return"annSelect";default:return p}};return{mouseDownPosition:a,shouldCheckAnnotationHover:s,findAnnotationAtPosition:o,determinePointerMode:i,resetFocusedAnnotation:()=>{var c;((c=e.value)==null?void 0:c.oldStart)!==void 0&&(e.value.start=e.value.oldStart,e.value.duration=e.value.oldDuration,e.value.end=e.value.start+e.value.duration)},selectFocusedAnnotation:()=>e.value?(r.setActiveAnnotation(e.value),!0):!1,onMouseDown:(c,p,h)=>{e.value&&["annResize-left","annResize-right"].includes(h)&&(e.value.oldStart=e.value.start,e.value.oldDuration=e.value.duration,a.value=[c,p])},onMouseMove:(c,p,h,y,m)=>{let _=h;if(y&&a.value){const b=(c-a.value[0])*m.rsPeriod;switch(h){case"annResize-left":e.value.oldDuration>0?(e.value.start=e.value.oldStart+b,e.value.duration=e.value.oldDuration-b,e.value.end=e.value.start+e.value.duration):e.value.start=e.value.oldStart+b;break;case"annResize-right":e.value.duration=e.value.oldDuration+b,e.value.end=e.value.start+e.value.duration;break}}else{const b=s(p,m.constants);if(_=m.viewerActiveTool,b){const g=o(c,p,m.constants);if(g!==null){const w=e.value,k=t.value[g];(!w||c<e.value.cStart||c>e.value.cEnd)&&(e.value=k),_=i(c,m.viewerActiveTool,e.value)}else e.value=null}else e.value=null,_=m.viewerActiveTool}return _},onMouseUp:(c,p)=>{if(e.value&&["annResize-left","annResize-right"].includes(c)){if(e.value.duration<0){const h=-e.value.duration,y=e.value.start-h;e.value.start=y,e.value.duration=h,e.value.end=y+h}r.setActiveAnnotation(e.value),p("updateAnnotation",e.value)}}}}var tinyEmitter={exports:{}},hasRequiredTinyEmitter;function requireTinyEmitter(){if(hasRequiredTinyEmitter)return tinyEmitter.exports;hasRequiredTinyEmitter=1;function e(){}return e.prototype={on:function(t,n,r){var a=this.e||(this.e={});return(a[t]||(a[t]=[])).push({fn:n,ctx:r}),this},once:function(t,n,r){var a=this;function s(){a.off(t,s),n.apply(r,arguments)}return s._=n,this.on(t,s,r)},emit:function(t){var n=[].slice.call(arguments,1),r=((this.e||(this.e={}))[t]||[]).slice(),a=0,s=r.length;for(a;a<s;a++)r[a].fn.apply(r[a].ctx,n);return this},off:function(t,n){var r=this.e||(this.e={}),a=r[t],s=[];if(a&&n)for(var o=0,i=a.length;o<i;o++)a[o].fn!==n&&a[o].fn._!==n&&s.push(a[o]);return s.length?r[t]=s:delete r[t],this}},tinyEmitter.exports=e,tinyEmitter.exports.TinyEmitter=e,tinyEmitter.exports}var instance,hasRequiredInstance;function requireInstance(){if(hasRequiredInstance)return instance;hasRequiredInstance=1;var e=requireTinyEmitter();return instance=new e,instance}var instanceExports=requireInstance();const emitter=getDefaultExportFromCjs(instanceExports),EventBus={$emit:(...e)=>emitter.emit(...e),$on:(...e)=>emitter.on(...e),$off:(...e)=>emitter.off(...e),$once:(...e)=>emitter.once(...e)};function useAnnotationLayers(){const e=useViewerStore(),t=vue.ref([]),n=vue.ref(["#18BA62","#FFBC27","#E94B4B","#0D4EFF","#FF4FFF","#50FFFF","#FFFF4E","#512BAF","#8A6ECF","#389BAD","#187D46","#B12800","#0C2475","#FF5321","#FF99CC","#DCC180","#FF6C21","#000000","#9B9B9B","#00FF00","#FA8072","#808000","#A0522D","#2760FF"]),r=async(v,d)=>{const f=[];if(v.results.length===0)await a({name:"Default",color:"#18BA62",description:"Default Annotation Layer"},null,d);else{for(let c=0;c<v.results.length;c++){const p=v.results[c];let h=p.color||n.value[c%n.value.length];const y={id:p.id,name:p.name,description:p.description,visible:!0,selected:c===0,annotations:[],color:hexToRgbA(h,.7),hexColor:h,bkColor:hexToRgbA(h,.15),selColor:hexToRgbA(h,.9)};f.push(y)}e.setAnnotations(f),d("annLayersInitialized")}t.value=v.results},a=async(v,d,f)=>{try{const c=await useToken(),p=`${e.config.apiUrl}/timeseries/${d.content.id}/layers?api_key=${c}`,h=await useSendXhr(p,{method:"POST",body:{name:v.name,color:v.color,description:v.description||v.name}}),y={...h,annotations:[],hexColor:h.color,color:hexToRgbA(h.color,.7),bkColor:hexToRgbA(h.color,.15),selColor:hexToRgbA(h.color,.9),visible:!0,selected:!0};return e.createLayer(y),e.setActiveAnnotationLayer(y.id),EventBus.$emit("toast",{detail:{msg:`'${y.name}' Layer Created`}}),y}catch(c){throw useHandleXhrError(c),c}finally{f&&f("closeAnnotationLayerWindow")}};return{annLayerInfo:t,defaultColors:n,initializeLayers:r,createAnnotationLayer:a,updateLayerVisibility:(v,d)=>{console.log(`[useAnnotationLayers] Updating layer ${v} visibility to:`,d);const f=e.viewerAnnotations.find(c=>c.id===v);if(f){console.log("[useAnnotationLayers] Found layer:",f.name,"current visible:",f.visible),f.visible=d,e.updateLayer(f),console.log("[useAnnotationLayers] Updated layer:",f.name,"new visible:",f.visible);const c=e.viewerAnnotations.find(p=>p.id===v);console.log("[useAnnotationLayers] Verification - layer visible is now:",c==null?void 0:c.visible)}else console.error("[useAnnotationLayers] Layer not found with ID:",v),console.log("[useAnnotationLayers] Available layers:",e.viewerAnnotations.map(c=>({id:c.id,name:c.name})))},selectLayer:v=>{e.viewerAnnotations.forEach(f=>{f.selected=!1,e.updateLayer(f)});const d=e.viewerAnnotations.find(f=>f.id===v);d&&(d.selected=!0,e.updateLayer(d),e.setActiveAnnotationLayer(v))},deleteLayer:async(v,d)=>{try{const f=await useToken(),c=`${e.config.apiUrl}/timeseries/${d.content.id}/layers/${v}?api_key=${f}`;await useSendXhr(c,{method:"DELETE"}),e.removeLayer(v),EventBus.$emit("toast",{detail:{msg:"Layer deleted successfully"}})}catch(f){throw useHandleXhrError(f),f}},updateLayerColor:async(v,d,f)=>{try{const c=await useToken(),p=`${e.config.apiUrl}/timeseries/${f.content.id}/layers/${v}?api_key=${c}`,h=await useSendXhr(p,{method:"PUT",body:{color:d}}),y=e.viewerAnnotations.find(m=>m.id===v);return y&&(y.hexColor=d,y.color=hexToRgbA(d,.7),y.bkColor=hexToRgbA(d,.15),y.selColor=hexToRgbA(d,.9),e.updateLayer(y)),h}catch(c){throw useHandleXhrError(c),c}},loadLayers:async(v,d)=>{try{const f=await useToken(),c=`${e.config.apiUrl}/timeseries/${v.content.id}/layers?api_key=${f}`,p=await useSendXhr(c);return await r(p,d),p}catch(f){throw useHandleXhrError(f),f}}}}const _hoisted_1=["width","height"],_sfc_main={__name:"TSAnnotationCanvas",props:{cWidth:{type:Number,default:0},cHeight:Number,start:Number,duration:Number,tsEnd:Number,rsPeriod:Number,pixelRatio:Number,constants:{type:Object,default:()=>({ANNOTATIONLABELHEIGHT:20,XOFFSET:0,LIMITANNFETCH:500})},pointerMode:String,annotationsCanvas:[HTMLCanvasElement,Object],activeViewer:{type:Object,required:!0},viewerActiveTool:String},emits:["annLayersInitialized","annotationsReceived","closeAnnotationLayerWindow","updateAnnotation"],setup(e,{expose:t,emit:n}){const r=e,a=n,s=vue.ref(null),{checkAnnotationRange:o,findNextAnnotation:i,findPreviousAnnotation:u}=useAnnotationData(),{renderAnn:l,hoverOffsets:v,focusedAnn:d,render:f}=useAnnotationRendering(),{resetFocusedAnnotation:c,selectFocusedAnnotation:p,onMouseDown:h,onMouseMove:y,onMouseUp:m}=useAnnotationInteraction(d,l,v),{createAnnotationLayer:_,loadLayers:b}=useAnnotationLayers(),g=vue.computed(()=>r.cHeight-20),w=vue.computed(()=>({width:r.cWidth+"px",height:g.value+"px"})),k=()=>{f(r,r.annotationsCanvas,s.value,g.value)},A=(D,j)=>{h(D,j,r.pointerMode)},$=(D,j,z,T)=>y(D,j,z,T,r),M=()=>{m(r.pointerMode,a)},F=()=>{p()&&vue.nextTick(()=>k())},O=async D=>{try{await _(D,r.activeViewer,a)}catch(j){console.error("Error creating layer:",j)}};return vue.watch(()=>r.activeViewer,async D=>{try{await b(D,a),await o(r.start,r.start+r.duration,r,D,a)}catch(j){console.error("Error loading annotations for new viewer:",j)}}),vue.onMounted(async()=>{console.log("TSAnnotationCanvas mounted with props:",{constants:r.constants,annotationsCanvas:r.annotationsCanvas,viewerActiveTool:r.viewerActiveTool});try{await b(r.activeViewer,a),await o(r.start,r.start+r.duration,r,r.activeViewer,a)}catch(D){console.error("Error initializing annotations:",D)}}),t({render:k,resetFocusedAnnotation:c,findNextAnnotation:i,findPreviousAnnotation:u,checkAnnotationRange:(D,j)=>o(D,j,r,r.activeViewer,a),selectFocusedAnn:F,createAnnotationLayer:O,onMouseDown:A,onMouseMove:$,onMouseUp:M}),(D,j)=>(vue.openBlock(),vue.createElementBlock("canvas",{id:"annLabelArea",ref_key:"annLabelArea",ref:s,class:"timeseries-annotation-canvas",width:vue.unref(canvasScaler)(e.cWidth,e.pixelRatio,0),height:vue.unref(canvasScaler)(g.value,e.pixelRatio,0),style:vue.normalizeStyle(w.value)},null,12,_hoisted_1))}},TSAnnotationCanvas=_export_sfc$1(_sfc_main,[["__scopeId","data-v-41f7f1c2"]]),TSAnnotationCanvas$1=Object.freeze(Object.defineProperty({__proto__:null,default:TSAnnotationCanvas},Symbol.toStringTag,{value:"Module"}));exports.TSViewer=TSViewer,exports.default=index,exports.useViewerStore=useViewerStore,Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|
|
22
|
+
`)},{immediate:!0})},useButton=(e,t)=>{useDeprecated({from:"type.text",replacement:"link",version:"3.0.0",scope:"props",ref:"https://element-plus.org/en-US/component/button.html#button-attributes"},vue.computed(()=>e.type==="text"));const n=vue.inject(buttonGroupContextKey,void 0),r=useGlobalConfig("button"),{form:a}=useFormItem(),s=useFormSize(vue.computed(()=>n==null?void 0:n.size)),o=useFormDisabled(),i=vue.ref(),u=vue.useSlots(),l=vue.computed(()=>{var y;return e.type||(n==null?void 0:n.type)||((y=r.value)==null?void 0:y.type)||""}),v=vue.computed(()=>{var y,m,_;return(_=(m=e.autoInsertSpace)!=null?m:(y=r.value)==null?void 0:y.autoInsertSpace)!=null?_:!1}),d=vue.computed(()=>{var y,m,_;return(_=(m=e.plain)!=null?m:(y=r.value)==null?void 0:y.plain)!=null?_:!1}),f=vue.computed(()=>{var y,m,_;return(_=(m=e.round)!=null?m:(y=r.value)==null?void 0:y.round)!=null?_:!1}),c=vue.computed(()=>e.tag==="button"?{ariaDisabled:o.value||e.loading,disabled:o.value||e.loading,autofocus:e.autofocus,type:e.nativeType}:{}),p=vue.computed(()=>{var y;const m=(y=u.default)==null?void 0:y.call(u);if(v.value&&(m==null?void 0:m.length)===1){const _=m[0];if((_==null?void 0:_.type)===vue.Text){const b=_.children;return new RegExp("^\\p{Unified_Ideograph}{2}$","u").test(b.trim())}}return!1});return{_disabled:o,_size:s,_type:l,_ref:i,_props:c,_plain:d,_round:f,shouldAddSpace:p,handleClick:y=>{if(o.value||e.loading){y.stopPropagation();return}e.nativeType==="reset"&&(a==null||a.resetFields()),t("click",y)}}},buttonTypes=["default","primary","success","warning","info","danger","text",""],buttonNativeTypes=["button","submit","reset"],buttonProps=buildProps({size:useSizeProp,disabled:Boolean,type:{type:String,values:buttonTypes,default:""},icon:{type:iconPropType},nativeType:{type:String,values:buttonNativeTypes,default:"button"},loading:Boolean,loadingIcon:{type:iconPropType,default:()=>loading_default},plain:{type:Boolean,default:void 0},text:Boolean,link:Boolean,bg:Boolean,autofocus:Boolean,round:{type:Boolean,default:void 0},circle:Boolean,color:String,dark:Boolean,autoInsertSpace:{type:Boolean,default:void 0},tag:{type:definePropType([String,Object]),default:"button"}}),buttonEmits={click:e=>e instanceof MouseEvent};function bound01(e,t){isOnePointZero(e)&&(e="100%");var n=isPercentage(e);return e=t===360?e:Math.min(t,Math.max(0,parseFloat(e))),n&&(e=parseInt(String(e*t),10)/100),Math.abs(e-t)<1e-6?1:(t===360?e=(e<0?e%t+t:e%t)/parseFloat(String(t)):e=e%t/parseFloat(String(t)),e)}function clamp01(e){return Math.min(1,Math.max(0,e))}function isOnePointZero(e){return typeof e=="string"&&e.indexOf(".")!==-1&&parseFloat(e)===1}function isPercentage(e){return typeof e=="string"&&e.indexOf("%")!==-1}function boundAlpha(e){return e=parseFloat(e),(isNaN(e)||e<0||e>1)&&(e=1),e}function convertToPercentage(e){return e<=1?"".concat(Number(e)*100,"%"):e}function pad2(e){return e.length===1?"0"+e:String(e)}function rgbToRgb(e,t,n){return{r:bound01(e,255)*255,g:bound01(t,255)*255,b:bound01(n,255)*255}}function rgbToHsl(e,t,n){e=bound01(e,255),t=bound01(t,255),n=bound01(n,255);var r=Math.max(e,t,n),a=Math.min(e,t,n),s=0,o=0,i=(r+a)/2;if(r===a)o=0,s=0;else{var u=r-a;switch(o=i>.5?u/(2-r-a):u/(r+a),r){case e:s=(t-n)/u+(t<n?6:0);break;case t:s=(n-e)/u+2;break;case n:s=(e-t)/u+4;break}s/=6}return{h:s,s:o,l:i}}function hue2rgb(e,t,n){return n<0&&(n+=1),n>1&&(n-=1),n<1/6?e+(t-e)*(6*n):n<1/2?t:n<2/3?e+(t-e)*(2/3-n)*6:e}function hslToRgb(e,t,n){var r,a,s;if(e=bound01(e,360),t=bound01(t,100),n=bound01(n,100),t===0)a=n,s=n,r=n;else{var o=n<.5?n*(1+t):n+t-n*t,i=2*n-o;r=hue2rgb(i,o,e+1/3),a=hue2rgb(i,o,e),s=hue2rgb(i,o,e-1/3)}return{r:r*255,g:a*255,b:s*255}}function rgbToHsv(e,t,n){e=bound01(e,255),t=bound01(t,255),n=bound01(n,255);var r=Math.max(e,t,n),a=Math.min(e,t,n),s=0,o=r,i=r-a,u=r===0?0:i/r;if(r===a)s=0;else{switch(r){case e:s=(t-n)/i+(t<n?6:0);break;case t:s=(n-e)/i+2;break;case n:s=(e-t)/i+4;break}s/=6}return{h:s,s:u,v:o}}function hsvToRgb(e,t,n){e=bound01(e,360)*6,t=bound01(t,100),n=bound01(n,100);var r=Math.floor(e),a=e-r,s=n*(1-t),o=n*(1-a*t),i=n*(1-(1-a)*t),u=r%6,l=[n,o,s,s,i,n][u],v=[i,n,n,o,s,s][u],d=[s,s,i,n,n,o][u];return{r:l*255,g:v*255,b:d*255}}function rgbToHex(e,t,n,r){var a=[pad2(Math.round(e).toString(16)),pad2(Math.round(t).toString(16)),pad2(Math.round(n).toString(16))];return r&&a[0].startsWith(a[0].charAt(1))&&a[1].startsWith(a[1].charAt(1))&&a[2].startsWith(a[2].charAt(1))?a[0].charAt(0)+a[1].charAt(0)+a[2].charAt(0):a.join("")}function rgbaToHex(e,t,n,r,a){var s=[pad2(Math.round(e).toString(16)),pad2(Math.round(t).toString(16)),pad2(Math.round(n).toString(16)),pad2(convertDecimalToHex(r))];return a&&s[0].startsWith(s[0].charAt(1))&&s[1].startsWith(s[1].charAt(1))&&s[2].startsWith(s[2].charAt(1))&&s[3].startsWith(s[3].charAt(1))?s[0].charAt(0)+s[1].charAt(0)+s[2].charAt(0)+s[3].charAt(0):s.join("")}function convertDecimalToHex(e){return Math.round(parseFloat(e)*255).toString(16)}function convertHexToDecimal(e){return parseIntFromHex(e)/255}function parseIntFromHex(e){return parseInt(e,16)}function numberInputToObject(e){return{r:e>>16,g:(e&65280)>>8,b:e&255}}var names={aliceblue:"#f0f8ff",antiquewhite:"#faebd7",aqua:"#00ffff",aquamarine:"#7fffd4",azure:"#f0ffff",beige:"#f5f5dc",bisque:"#ffe4c4",black:"#000000",blanchedalmond:"#ffebcd",blue:"#0000ff",blueviolet:"#8a2be2",brown:"#a52a2a",burlywood:"#deb887",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",cornflowerblue:"#6495ed",cornsilk:"#fff8dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",darkkhaki:"#bdb76b",darkmagenta:"#8b008b",darkolivegreen:"#556b2f",darkorange:"#ff8c00",darkorchid:"#9932cc",darkred:"#8b0000",darksalmon:"#e9967a",darkseagreen:"#8fbc8f",darkslateblue:"#483d8b",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",darkturquoise:"#00ced1",darkviolet:"#9400d3",deeppink:"#ff1493",deepskyblue:"#00bfff",dimgray:"#696969",dimgrey:"#696969",dodgerblue:"#1e90ff",firebrick:"#b22222",floralwhite:"#fffaf0",forestgreen:"#228b22",fuchsia:"#ff00ff",gainsboro:"#dcdcdc",ghostwhite:"#f8f8ff",goldenrod:"#daa520",gold:"#ffd700",gray:"#808080",green:"#008000",greenyellow:"#adff2f",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",indianred:"#cd5c5c",indigo:"#4b0082",ivory:"#fffff0",khaki:"#f0e68c",lavenderblush:"#fff0f5",lavender:"#e6e6fa",lawngreen:"#7cfc00",lemonchiffon:"#fffacd",lightblue:"#add8e6",lightcoral:"#f08080",lightcyan:"#e0ffff",lightgoldenrodyellow:"#fafad2",lightgray:"#d3d3d3",lightgreen:"#90ee90",lightgrey:"#d3d3d3",lightpink:"#ffb6c1",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",lightskyblue:"#87cefa",lightslategray:"#778899",lightslategrey:"#778899",lightsteelblue:"#b0c4de",lightyellow:"#ffffe0",lime:"#00ff00",limegreen:"#32cd32",linen:"#faf0e6",magenta:"#ff00ff",maroon:"#800000",mediumaquamarine:"#66cdaa",mediumblue:"#0000cd",mediumorchid:"#ba55d3",mediumpurple:"#9370db",mediumseagreen:"#3cb371",mediumslateblue:"#7b68ee",mediumspringgreen:"#00fa9a",mediumturquoise:"#48d1cc",mediumvioletred:"#c71585",midnightblue:"#191970",mintcream:"#f5fffa",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",navajowhite:"#ffdead",navy:"#000080",oldlace:"#fdf5e6",olive:"#808000",olivedrab:"#6b8e23",orange:"#ffa500",orangered:"#ff4500",orchid:"#da70d6",palegoldenrod:"#eee8aa",palegreen:"#98fb98",paleturquoise:"#afeeee",palevioletred:"#db7093",papayawhip:"#ffefd5",peachpuff:"#ffdab9",peru:"#cd853f",pink:"#ffc0cb",plum:"#dda0dd",powderblue:"#b0e0e6",purple:"#800080",rebeccapurple:"#663399",red:"#ff0000",rosybrown:"#bc8f8f",royalblue:"#4169e1",saddlebrown:"#8b4513",salmon:"#fa8072",sandybrown:"#f4a460",seagreen:"#2e8b57",seashell:"#fff5ee",sienna:"#a0522d",silver:"#c0c0c0",skyblue:"#87ceeb",slateblue:"#6a5acd",slategray:"#708090",slategrey:"#708090",snow:"#fffafa",springgreen:"#00ff7f",steelblue:"#4682b4",tan:"#d2b48c",teal:"#008080",thistle:"#d8bfd8",tomato:"#ff6347",turquoise:"#40e0d0",violet:"#ee82ee",wheat:"#f5deb3",white:"#ffffff",whitesmoke:"#f5f5f5",yellow:"#ffff00",yellowgreen:"#9acd32"};function inputToRGB(e){var t={r:0,g:0,b:0},n=1,r=null,a=null,s=null,o=!1,i=!1;return typeof e=="string"&&(e=stringInputToObject(e)),typeof e=="object"&&(isValidCSSUnit(e.r)&&isValidCSSUnit(e.g)&&isValidCSSUnit(e.b)?(t=rgbToRgb(e.r,e.g,e.b),o=!0,i=String(e.r).substr(-1)==="%"?"prgb":"rgb"):isValidCSSUnit(e.h)&&isValidCSSUnit(e.s)&&isValidCSSUnit(e.v)?(r=convertToPercentage(e.s),a=convertToPercentage(e.v),t=hsvToRgb(e.h,r,a),o=!0,i="hsv"):isValidCSSUnit(e.h)&&isValidCSSUnit(e.s)&&isValidCSSUnit(e.l)&&(r=convertToPercentage(e.s),s=convertToPercentage(e.l),t=hslToRgb(e.h,r,s),o=!0,i="hsl"),Object.prototype.hasOwnProperty.call(e,"a")&&(n=e.a)),n=boundAlpha(n),{ok:o,format:e.format||i,r:Math.min(255,Math.max(t.r,0)),g:Math.min(255,Math.max(t.g,0)),b:Math.min(255,Math.max(t.b,0)),a:n}}var CSS_INTEGER="[-\\+]?\\d+%?",CSS_NUMBER="[-\\+]?\\d*\\.\\d+%?",CSS_UNIT="(?:".concat(CSS_NUMBER,")|(?:").concat(CSS_INTEGER,")"),PERMISSIVE_MATCH3="[\\s|\\(]+(".concat(CSS_UNIT,")[,|\\s]+(").concat(CSS_UNIT,")[,|\\s]+(").concat(CSS_UNIT,")\\s*\\)?"),PERMISSIVE_MATCH4="[\\s|\\(]+(".concat(CSS_UNIT,")[,|\\s]+(").concat(CSS_UNIT,")[,|\\s]+(").concat(CSS_UNIT,")[,|\\s]+(").concat(CSS_UNIT,")\\s*\\)?"),matchers={CSS_UNIT:new RegExp(CSS_UNIT),rgb:new RegExp("rgb"+PERMISSIVE_MATCH3),rgba:new RegExp("rgba"+PERMISSIVE_MATCH4),hsl:new RegExp("hsl"+PERMISSIVE_MATCH3),hsla:new RegExp("hsla"+PERMISSIVE_MATCH4),hsv:new RegExp("hsv"+PERMISSIVE_MATCH3),hsva:new RegExp("hsva"+PERMISSIVE_MATCH4),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/};function stringInputToObject(e){if(e=e.trim().toLowerCase(),e.length===0)return!1;var t=!1;if(names[e])e=names[e],t=!0;else if(e==="transparent")return{r:0,g:0,b:0,a:0,format:"name"};var n=matchers.rgb.exec(e);return n?{r:n[1],g:n[2],b:n[3]}:(n=matchers.rgba.exec(e),n?{r:n[1],g:n[2],b:n[3],a:n[4]}:(n=matchers.hsl.exec(e),n?{h:n[1],s:n[2],l:n[3]}:(n=matchers.hsla.exec(e),n?{h:n[1],s:n[2],l:n[3],a:n[4]}:(n=matchers.hsv.exec(e),n?{h:n[1],s:n[2],v:n[3]}:(n=matchers.hsva.exec(e),n?{h:n[1],s:n[2],v:n[3],a:n[4]}:(n=matchers.hex8.exec(e),n?{r:parseIntFromHex(n[1]),g:parseIntFromHex(n[2]),b:parseIntFromHex(n[3]),a:convertHexToDecimal(n[4]),format:t?"name":"hex8"}:(n=matchers.hex6.exec(e),n?{r:parseIntFromHex(n[1]),g:parseIntFromHex(n[2]),b:parseIntFromHex(n[3]),format:t?"name":"hex"}:(n=matchers.hex4.exec(e),n?{r:parseIntFromHex(n[1]+n[1]),g:parseIntFromHex(n[2]+n[2]),b:parseIntFromHex(n[3]+n[3]),a:convertHexToDecimal(n[4]+n[4]),format:t?"name":"hex8"}:(n=matchers.hex3.exec(e),n?{r:parseIntFromHex(n[1]+n[1]),g:parseIntFromHex(n[2]+n[2]),b:parseIntFromHex(n[3]+n[3]),format:t?"name":"hex"}:!1)))))))))}function isValidCSSUnit(e){return!!matchers.CSS_UNIT.exec(String(e))}var TinyColor=function(){function e(t,n){t===void 0&&(t=""),n===void 0&&(n={});var r;if(t instanceof e)return t;typeof t=="number"&&(t=numberInputToObject(t)),this.originalInput=t;var a=inputToRGB(t);this.originalInput=t,this.r=a.r,this.g=a.g,this.b=a.b,this.a=a.a,this.roundA=Math.round(100*this.a)/100,this.format=(r=n.format)!==null&&r!==void 0?r:a.format,this.gradientType=n.gradientType,this.r<1&&(this.r=Math.round(this.r)),this.g<1&&(this.g=Math.round(this.g)),this.b<1&&(this.b=Math.round(this.b)),this.isValid=a.ok}return e.prototype.isDark=function(){return this.getBrightness()<128},e.prototype.isLight=function(){return!this.isDark()},e.prototype.getBrightness=function(){var t=this.toRgb();return(t.r*299+t.g*587+t.b*114)/1e3},e.prototype.getLuminance=function(){var t=this.toRgb(),n,r,a,s=t.r/255,o=t.g/255,i=t.b/255;return s<=.03928?n=s/12.92:n=Math.pow((s+.055)/1.055,2.4),o<=.03928?r=o/12.92:r=Math.pow((o+.055)/1.055,2.4),i<=.03928?a=i/12.92:a=Math.pow((i+.055)/1.055,2.4),.2126*n+.7152*r+.0722*a},e.prototype.getAlpha=function(){return this.a},e.prototype.setAlpha=function(t){return this.a=boundAlpha(t),this.roundA=Math.round(100*this.a)/100,this},e.prototype.isMonochrome=function(){var t=this.toHsl().s;return t===0},e.prototype.toHsv=function(){var t=rgbToHsv(this.r,this.g,this.b);return{h:t.h*360,s:t.s,v:t.v,a:this.a}},e.prototype.toHsvString=function(){var t=rgbToHsv(this.r,this.g,this.b),n=Math.round(t.h*360),r=Math.round(t.s*100),a=Math.round(t.v*100);return this.a===1?"hsv(".concat(n,", ").concat(r,"%, ").concat(a,"%)"):"hsva(".concat(n,", ").concat(r,"%, ").concat(a,"%, ").concat(this.roundA,")")},e.prototype.toHsl=function(){var t=rgbToHsl(this.r,this.g,this.b);return{h:t.h*360,s:t.s,l:t.l,a:this.a}},e.prototype.toHslString=function(){var t=rgbToHsl(this.r,this.g,this.b),n=Math.round(t.h*360),r=Math.round(t.s*100),a=Math.round(t.l*100);return this.a===1?"hsl(".concat(n,", ").concat(r,"%, ").concat(a,"%)"):"hsla(".concat(n,", ").concat(r,"%, ").concat(a,"%, ").concat(this.roundA,")")},e.prototype.toHex=function(t){return t===void 0&&(t=!1),rgbToHex(this.r,this.g,this.b,t)},e.prototype.toHexString=function(t){return t===void 0&&(t=!1),"#"+this.toHex(t)},e.prototype.toHex8=function(t){return t===void 0&&(t=!1),rgbaToHex(this.r,this.g,this.b,this.a,t)},e.prototype.toHex8String=function(t){return t===void 0&&(t=!1),"#"+this.toHex8(t)},e.prototype.toHexShortString=function(t){return t===void 0&&(t=!1),this.a===1?this.toHexString(t):this.toHex8String(t)},e.prototype.toRgb=function(){return{r:Math.round(this.r),g:Math.round(this.g),b:Math.round(this.b),a:this.a}},e.prototype.toRgbString=function(){var t=Math.round(this.r),n=Math.round(this.g),r=Math.round(this.b);return this.a===1?"rgb(".concat(t,", ").concat(n,", ").concat(r,")"):"rgba(".concat(t,", ").concat(n,", ").concat(r,", ").concat(this.roundA,")")},e.prototype.toPercentageRgb=function(){var t=function(n){return"".concat(Math.round(bound01(n,255)*100),"%")};return{r:t(this.r),g:t(this.g),b:t(this.b),a:this.a}},e.prototype.toPercentageRgbString=function(){var t=function(n){return Math.round(bound01(n,255)*100)};return this.a===1?"rgb(".concat(t(this.r),"%, ").concat(t(this.g),"%, ").concat(t(this.b),"%)"):"rgba(".concat(t(this.r),"%, ").concat(t(this.g),"%, ").concat(t(this.b),"%, ").concat(this.roundA,")")},e.prototype.toName=function(){if(this.a===0)return"transparent";if(this.a<1)return!1;for(var t="#"+rgbToHex(this.r,this.g,this.b,!1),n=0,r=Object.entries(names);n<r.length;n++){var a=r[n],s=a[0],o=a[1];if(t===o)return s}return!1},e.prototype.toString=function(t){var n=!!t;t=t??this.format;var r=!1,a=this.a<1&&this.a>=0,s=!n&&a&&(t.startsWith("hex")||t==="name");return s?t==="name"&&this.a===0?this.toName():this.toRgbString():(t==="rgb"&&(r=this.toRgbString()),t==="prgb"&&(r=this.toPercentageRgbString()),(t==="hex"||t==="hex6")&&(r=this.toHexString()),t==="hex3"&&(r=this.toHexString(!0)),t==="hex4"&&(r=this.toHex8String(!0)),t==="hex8"&&(r=this.toHex8String()),t==="name"&&(r=this.toName()),t==="hsl"&&(r=this.toHslString()),t==="hsv"&&(r=this.toHsvString()),r||this.toHexString())},e.prototype.toNumber=function(){return(Math.round(this.r)<<16)+(Math.round(this.g)<<8)+Math.round(this.b)},e.prototype.clone=function(){return new e(this.toString())},e.prototype.lighten=function(t){t===void 0&&(t=10);var n=this.toHsl();return n.l+=t/100,n.l=clamp01(n.l),new e(n)},e.prototype.brighten=function(t){t===void 0&&(t=10);var n=this.toRgb();return n.r=Math.max(0,Math.min(255,n.r-Math.round(255*-(t/100)))),n.g=Math.max(0,Math.min(255,n.g-Math.round(255*-(t/100)))),n.b=Math.max(0,Math.min(255,n.b-Math.round(255*-(t/100)))),new e(n)},e.prototype.darken=function(t){t===void 0&&(t=10);var n=this.toHsl();return n.l-=t/100,n.l=clamp01(n.l),new e(n)},e.prototype.tint=function(t){return t===void 0&&(t=10),this.mix("white",t)},e.prototype.shade=function(t){return t===void 0&&(t=10),this.mix("black",t)},e.prototype.desaturate=function(t){t===void 0&&(t=10);var n=this.toHsl();return n.s-=t/100,n.s=clamp01(n.s),new e(n)},e.prototype.saturate=function(t){t===void 0&&(t=10);var n=this.toHsl();return n.s+=t/100,n.s=clamp01(n.s),new e(n)},e.prototype.greyscale=function(){return this.desaturate(100)},e.prototype.spin=function(t){var n=this.toHsl(),r=(n.h+t)%360;return n.h=r<0?360+r:r,new e(n)},e.prototype.mix=function(t,n){n===void 0&&(n=50);var r=this.toRgb(),a=new e(t).toRgb(),s=n/100,o={r:(a.r-r.r)*s+r.r,g:(a.g-r.g)*s+r.g,b:(a.b-r.b)*s+r.b,a:(a.a-r.a)*s+r.a};return new e(o)},e.prototype.analogous=function(t,n){t===void 0&&(t=6),n===void 0&&(n=30);var r=this.toHsl(),a=360/n,s=[this];for(r.h=(r.h-(a*t>>1)+720)%360;--t;)r.h=(r.h+a)%360,s.push(new e(r));return s},e.prototype.complement=function(){var t=this.toHsl();return t.h=(t.h+180)%360,new e(t)},e.prototype.monochromatic=function(t){t===void 0&&(t=6);for(var n=this.toHsv(),r=n.h,a=n.s,s=n.v,o=[],i=1/t;t--;)o.push(new e({h:r,s:a,v:s})),s=(s+i)%1;return o},e.prototype.splitcomplement=function(){var t=this.toHsl(),n=t.h;return[this,new e({h:(n+72)%360,s:t.s,l:t.l}),new e({h:(n+216)%360,s:t.s,l:t.l})]},e.prototype.onBackground=function(t){var n=this.toRgb(),r=new e(t).toRgb(),a=n.a+r.a*(1-n.a);return new e({r:(n.r*n.a+r.r*r.a*(1-n.a))/a,g:(n.g*n.a+r.g*r.a*(1-n.a))/a,b:(n.b*n.a+r.b*r.a*(1-n.a))/a,a})},e.prototype.triad=function(){return this.polyad(3)},e.prototype.tetrad=function(){return this.polyad(4)},e.prototype.polyad=function(t){for(var n=this.toHsl(),r=n.h,a=[this],s=360/t,o=1;o<t;o++)a.push(new e({h:(r+o*s)%360,s:n.s,l:n.l}));return a},e.prototype.equals=function(t){return this.toRgbString()===new e(t).toRgbString()},e}();function darken(e,t=20){return e.mix("#141414",t).toString()}function useButtonCustomStyle(e){const t=useFormDisabled(),n=useNamespace("button");return vue.computed(()=>{let r={},a=e.color;if(a){const s=a.match(/var\((.*?)\)/);s&&(a=window.getComputedStyle(window.document.documentElement).getPropertyValue(s[1]));const o=new TinyColor(a),i=e.dark?o.tint(20).toString():darken(o,20);if(e.plain)r=n.cssVarBlock({"bg-color":e.dark?darken(o,90):o.tint(90).toString(),"text-color":a,"border-color":e.dark?darken(o,50):o.tint(50).toString(),"hover-text-color":`var(${n.cssVarName("color-white")})`,"hover-bg-color":a,"hover-border-color":a,"active-bg-color":i,"active-text-color":`var(${n.cssVarName("color-white")})`,"active-border-color":i}),t.value&&(r[n.cssVarBlockName("disabled-bg-color")]=e.dark?darken(o,90):o.tint(90).toString(),r[n.cssVarBlockName("disabled-text-color")]=e.dark?darken(o,50):o.tint(50).toString(),r[n.cssVarBlockName("disabled-border-color")]=e.dark?darken(o,80):o.tint(80).toString());else{const u=e.dark?darken(o,30):o.tint(30).toString(),l=o.isDark()?`var(${n.cssVarName("color-white")})`:`var(${n.cssVarName("color-black")})`;if(r=n.cssVarBlock({"bg-color":a,"text-color":l,"border-color":a,"hover-bg-color":u,"hover-text-color":l,"hover-border-color":u,"active-bg-color":i,"active-border-color":i}),t.value){const v=e.dark?darken(o,50):o.tint(50).toString();r[n.cssVarBlockName("disabled-bg-color")]=v,r[n.cssVarBlockName("disabled-text-color")]=e.dark?"rgba(255, 255, 255, 0.5)":`var(${n.cssVarName("color-white")})`,r[n.cssVarBlockName("disabled-border-color")]=v}}}return r})}const __default__$a=vue.defineComponent({name:"ElButton"}),_sfc_main$E=vue.defineComponent({...__default__$a,props:buttonProps,emits:buttonEmits,setup(e,{expose:t,emit:n}){const r=e,a=useButtonCustomStyle(r),s=useNamespace("button"),{_ref:o,_size:i,_type:u,_disabled:l,_props:v,_plain:d,_round:f,shouldAddSpace:c,handleClick:p}=useButton(r,n),h=vue.computed(()=>[s.b(),s.m(u.value),s.m(i.value),s.is("disabled",l.value),s.is("loading",r.loading),s.is("plain",d.value),s.is("round",f.value),s.is("circle",r.circle),s.is("text",r.text),s.is("link",r.link),s.is("has-bg",r.bg)]);return t({ref:o,size:i,type:u,disabled:l,shouldAddSpace:c}),(y,m)=>(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(y.tag),vue.mergeProps({ref_key:"_ref",ref:o},vue.unref(v),{class:vue.unref(h),style:vue.unref(a),onClick:vue.unref(p)}),{default:vue.withCtx(()=>[y.loading?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[y.$slots.loading?vue.renderSlot(y.$slots,"loading",{key:0}):(vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{key:1,class:vue.normalizeClass(vue.unref(s).is("loading"))},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(y.loadingIcon)))]),_:1},8,["class"]))],64)):y.icon||y.$slots.icon?(vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{key:1},{default:vue.withCtx(()=>[y.icon?(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(y.icon),{key:0})):vue.renderSlot(y.$slots,"icon",{key:1})]),_:3})):vue.createCommentVNode("v-if",!0),y.$slots.default?(vue.openBlock(),vue.createElementBlock("span",{key:2,class:vue.normalizeClass({[vue.unref(s).em("text","expand")]:vue.unref(c)})},[vue.renderSlot(y.$slots,"default")],2)):vue.createCommentVNode("v-if",!0)]),_:3},16,["class","style","onClick"]))}});var Button=_export_sfc(_sfc_main$E,[["__file","button.vue"]]);const buttonGroupProps={size:buttonProps.size,type:buttonProps.type},__default__$9=vue.defineComponent({name:"ElButtonGroup"}),_sfc_main$D=vue.defineComponent({...__default__$9,props:buttonGroupProps,setup(e){const t=e;vue.provide(buttonGroupContextKey,vue.reactive({size:vue.toRef(t,"size"),type:vue.toRef(t,"type")}));const n=useNamespace("button");return(r,a)=>(vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(vue.unref(n).b("group"))},[vue.renderSlot(r.$slots,"default")],2))}});var ButtonGroup=_export_sfc(_sfc_main$D,[["__file","button-group.vue"]]);const ElButton=withInstall(Button,{ButtonGroup}),ElButtonGroup=withNoopInstall(ButtonGroup);var dayjs_min$1={exports:{}},dayjs_min=dayjs_min$1.exports,hasRequiredDayjs_min;function requireDayjs_min(){return hasRequiredDayjs_min||(hasRequiredDayjs_min=1,function(e,t){(function(n,r){e.exports=r()})(dayjs_min,function(){var n=1e3,r=6e4,a=36e5,s="millisecond",o="second",i="minute",u="hour",l="day",v="week",d="month",f="quarter",c="year",p="date",h="Invalid Date",y=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,m=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,_={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(z){var T=["th","st","nd","rd"],L=z%100;return"["+z+(T[(L-20)%10]||T[L]||T[0])+"]"}},b=function(z,T,L){var ie=String(z);return!ie||ie.length>=T?z:""+Array(T+1-ie.length).join(L)+z},g={s:b,z:function(z){var T=-z.utcOffset(),L=Math.abs(T),ie=Math.floor(L/60),x=L%60;return(T<=0?"+":"-")+b(ie,2,"0")+":"+b(x,2,"0")},m:function z(T,L){if(T.date()<L.date())return-z(L,T);var ie=12*(L.year()-T.year())+(L.month()-T.month()),x=T.clone().add(ie,d),V=L-x<0,le=T.clone().add(ie+(V?-1:1),d);return+(-(ie+(L-x)/(V?x-le:le-x))||0)},a:function(z){return z<0?Math.ceil(z)||0:Math.floor(z)},p:function(z){return{M:d,y:c,w:v,d:l,D:p,h:u,m:i,s:o,ms:s,Q:f}[z]||String(z||"").toLowerCase().replace(/s$/,"")},u:function(z){return z===void 0}},w="en",k={};k[w]=_;var A="$isDayjsObject",$=function(z){return z instanceof D||!(!z||!z[A])},M=function z(T,L,ie){var x;if(!T)return w;if(typeof T=="string"){var V=T.toLowerCase();k[V]&&(x=V),L&&(k[V]=L,x=V);var le=T.split("-");if(!x&&le.length>1)return z(le[0])}else{var re=T.name;k[re]=T,x=re}return!ie&&x&&(w=x),x||!ie&&w},F=function(z,T){if($(z))return z.clone();var L=typeof T=="object"?T:{};return L.date=z,L.args=arguments,new D(L)},O=g;O.l=M,O.i=$,O.w=function(z,T){return F(z,{locale:T.$L,utc:T.$u,x:T.$x,$offset:T.$offset})};var D=function(){function z(L){this.$L=M(L.locale,null,!0),this.parse(L),this.$x=this.$x||L.x||{},this[A]=!0}var T=z.prototype;return T.parse=function(L){this.$d=function(ie){var x=ie.date,V=ie.utc;if(x===null)return new Date(NaN);if(O.u(x))return new Date;if(x instanceof Date)return new Date(x);if(typeof x=="string"&&!/Z$/i.test(x)){var le=x.match(y);if(le){var re=le[2]-1||0,Y=(le[7]||"0").substring(0,3);return V?new Date(Date.UTC(le[1],re,le[3]||1,le[4]||0,le[5]||0,le[6]||0,Y)):new Date(le[1],re,le[3]||1,le[4]||0,le[5]||0,le[6]||0,Y)}}return new Date(x)}(L),this.init()},T.init=function(){var L=this.$d;this.$y=L.getFullYear(),this.$M=L.getMonth(),this.$D=L.getDate(),this.$W=L.getDay(),this.$H=L.getHours(),this.$m=L.getMinutes(),this.$s=L.getSeconds(),this.$ms=L.getMilliseconds()},T.$utils=function(){return O},T.isValid=function(){return this.$d.toString()!==h},T.isSame=function(L,ie){var x=F(L);return this.startOf(ie)<=x&&x<=this.endOf(ie)},T.isAfter=function(L,ie){return F(L)<this.startOf(ie)},T.isBefore=function(L,ie){return this.endOf(ie)<F(L)},T.$g=function(L,ie,x){return O.u(L)?this[ie]:this.set(x,L)},T.unix=function(){return Math.floor(this.valueOf()/1e3)},T.valueOf=function(){return this.$d.getTime()},T.startOf=function(L,ie){var x=this,V=!!O.u(ie)||ie,le=O.p(L),re=function(Oe,ze){var At=O.w(x.$u?Date.UTC(x.$y,ze,Oe):new Date(x.$y,ze,Oe),x);return V?At:At.endOf(l)},Y=function(Oe,ze){return O.w(x.toDate()[Oe].apply(x.toDate("s"),(V?[0,0,0,0]:[23,59,59,999]).slice(ze)),x)},he=this.$W,_e=this.$M,$e=this.$D,Ne="set"+(this.$u?"UTC":"");switch(le){case c:return V?re(1,0):re(31,11);case d:return V?re(1,_e):re(0,_e+1);case v:var kt=this.$locale().weekStart||0,Pt=(he<kt?he+7:he)-kt;return re(V?$e-Pt:$e+(6-Pt),_e);case l:case p:return Y(Ne+"Hours",0);case u:return Y(Ne+"Minutes",1);case i:return Y(Ne+"Seconds",2);case o:return Y(Ne+"Milliseconds",3);default:return this.clone()}},T.endOf=function(L){return this.startOf(L,!1)},T.$set=function(L,ie){var x,V=O.p(L),le="set"+(this.$u?"UTC":""),re=(x={},x[l]=le+"Date",x[p]=le+"Date",x[d]=le+"Month",x[c]=le+"FullYear",x[u]=le+"Hours",x[i]=le+"Minutes",x[o]=le+"Seconds",x[s]=le+"Milliseconds",x)[V],Y=V===l?this.$D+(ie-this.$W):ie;if(V===d||V===c){var he=this.clone().set(p,1);he.$d[re](Y),he.init(),this.$d=he.set(p,Math.min(this.$D,he.daysInMonth())).$d}else re&&this.$d[re](Y);return this.init(),this},T.set=function(L,ie){return this.clone().$set(L,ie)},T.get=function(L){return this[O.p(L)]()},T.add=function(L,ie){var x,V=this;L=Number(L);var le=O.p(ie),re=function(_e){var $e=F(V);return O.w($e.date($e.date()+Math.round(_e*L)),V)};if(le===d)return this.set(d,this.$M+L);if(le===c)return this.set(c,this.$y+L);if(le===l)return re(1);if(le===v)return re(7);var Y=(x={},x[i]=r,x[u]=a,x[o]=n,x)[le]||1,he=this.$d.getTime()+L*Y;return O.w(he,this)},T.subtract=function(L,ie){return this.add(-1*L,ie)},T.format=function(L){var ie=this,x=this.$locale();if(!this.isValid())return x.invalidDate||h;var V=L||"YYYY-MM-DDTHH:mm:ssZ",le=O.z(this),re=this.$H,Y=this.$m,he=this.$M,_e=x.weekdays,$e=x.months,Ne=x.meridiem,kt=function(ze,At,En,Pn){return ze&&(ze[At]||ze(ie,V))||En[At].slice(0,Pn)},Pt=function(ze){return O.s(re%12||12,ze,"0")},Oe=Ne||function(ze,At,En){var Pn=ze<12?"AM":"PM";return En?Pn.toLowerCase():Pn};return V.replace(m,function(ze,At){return At||function(En){switch(En){case"YY":return String(ie.$y).slice(-2);case"YYYY":return O.s(ie.$y,4,"0");case"M":return he+1;case"MM":return O.s(he+1,2,"0");case"MMM":return kt(x.monthsShort,he,$e,3);case"MMMM":return kt($e,he);case"D":return ie.$D;case"DD":return O.s(ie.$D,2,"0");case"d":return String(ie.$W);case"dd":return kt(x.weekdaysMin,ie.$W,_e,2);case"ddd":return kt(x.weekdaysShort,ie.$W,_e,3);case"dddd":return _e[ie.$W];case"H":return String(re);case"HH":return O.s(re,2,"0");case"h":return Pt(1);case"hh":return Pt(2);case"a":return Oe(re,Y,!0);case"A":return Oe(re,Y,!1);case"m":return String(Y);case"mm":return O.s(Y,2,"0");case"s":return String(ie.$s);case"ss":return O.s(ie.$s,2,"0");case"SSS":return O.s(ie.$ms,3,"0");case"Z":return le}return null}(ze)||le.replace(":","")})},T.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},T.diff=function(L,ie,x){var V,le=this,re=O.p(ie),Y=F(L),he=(Y.utcOffset()-this.utcOffset())*r,_e=this-Y,$e=function(){return O.m(le,Y)};switch(re){case c:V=$e()/12;break;case d:V=$e();break;case f:V=$e()/3;break;case v:V=(_e-he)/6048e5;break;case l:V=(_e-he)/864e5;break;case u:V=_e/a;break;case i:V=_e/r;break;case o:V=_e/n;break;default:V=_e}return x?V:O.a(V)},T.daysInMonth=function(){return this.endOf(d).$D},T.$locale=function(){return k[this.$L]},T.locale=function(L,ie){if(!L)return this.$L;var x=this.clone(),V=M(L,ie,!0);return V&&(x.$L=V),x},T.clone=function(){return O.w(this.$d,this)},T.toDate=function(){return new Date(this.valueOf())},T.toJSON=function(){return this.isValid()?this.toISOString():null},T.toISOString=function(){return this.$d.toISOString()},T.toString=function(){return this.$d.toUTCString()},z}(),j=D.prototype;return F.prototype=j,[["$ms",s],["$s",o],["$m",i],["$H",u],["$W",l],["$M",d],["$y",c],["$D",p]].forEach(function(z){j[z[1]]=function(T){return this.$g(T,z[0],z[1])}}),F.extend=function(z,T){return z.$i||(z(T,D,F),z.$i=!0),F},F.locale=M,F.isDayjs=$,F.unix=function(z){return F(1e3*z)},F.en=k[w],F.Ls=k,F.p={},F})}(dayjs_min$1)),dayjs_min$1.exports}var dayjs_minExports=requireDayjs_min();const dayjs=getDefaultExportFromCjs(dayjs_minExports),buildTimeList=(e,t)=>[e>0?e-1:void 0,e,e<t?e+1:void 0],rangeArr=e=>Array.from(Array.from({length:e}).keys()),extractDateFormat=e=>e.replace(/\W?m{1,2}|\W?ZZ/g,"").replace(/\W?h{1,2}|\W?s{1,3}|\W?a/gi,"").trim(),extractTimeFormat=e=>e.replace(/\W?D{1,2}|\W?Do|\W?d{1,4}|\W?M{1,4}|\W?Y{2,4}/g,"").trim(),dateEquals=function(e,t){const n=isDate(e),r=isDate(t);return n&&r?e.getTime()===t.getTime():!n&&!r?e===t:!1},valueEquals=function(e,t){const n=isArray$1(e),r=isArray$1(t);return n&&r?e.length!==t.length?!1:e.every((a,s)=>dateEquals(a,t[s])):!n&&!r?dateEquals(e,t):!1},parseDate=function(e,t,n){const r=isEmpty(t)||t==="x"?dayjs(e).locale(n):dayjs(e,t).locale(n);return r.isValid()?r:void 0},formatter=function(e,t,n){return isEmpty(t)?e:t==="x"?+e:dayjs(e).locale(n).format(t)},makeList=(e,t)=>{var n;const r=[],a=t==null?void 0:t();for(let s=0;s<e;s++)r.push((n=a==null?void 0:a.includes(s))!=null?n:!1);return r},dayOrDaysToDate=e=>isArray$1(e)?e.map(t=>t.toDate()):e.toDate();var localeData$2={exports:{}},localeData$1=localeData$2.exports,hasRequiredLocaleData;function requireLocaleData(){return hasRequiredLocaleData||(hasRequiredLocaleData=1,function(e,t){(function(n,r){e.exports=r()})(localeData$1,function(){return function(n,r,a){var s=r.prototype,o=function(d){return d&&(d.indexOf?d:d.s)},i=function(d,f,c,p,h){var y=d.name?d:d.$locale(),m=o(y[f]),_=o(y[c]),b=m||_.map(function(w){return w.slice(0,p)});if(!h)return b;var g=y.weekStart;return b.map(function(w,k){return b[(k+(g||0))%7]})},u=function(){return a.Ls[a.locale()]},l=function(d,f){return d.formats[f]||function(c){return c.replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(p,h,y){return h||y.slice(1)})}(d.formats[f.toUpperCase()])},v=function(){var d=this;return{months:function(f){return f?f.format("MMMM"):i(d,"months")},monthsShort:function(f){return f?f.format("MMM"):i(d,"monthsShort","months",3)},firstDayOfWeek:function(){return d.$locale().weekStart||0},weekdays:function(f){return f?f.format("dddd"):i(d,"weekdays")},weekdaysMin:function(f){return f?f.format("dd"):i(d,"weekdaysMin","weekdays",2)},weekdaysShort:function(f){return f?f.format("ddd"):i(d,"weekdaysShort","weekdays",3)},longDateFormat:function(f){return l(d.$locale(),f)},meridiem:this.$locale().meridiem,ordinal:this.$locale().ordinal}};s.localeData=function(){return v.bind(this)()},a.localeData=function(){var d=u();return{firstDayOfWeek:function(){return d.weekStart||0},weekdays:function(){return a.weekdays()},weekdaysShort:function(){return a.weekdaysShort()},weekdaysMin:function(){return a.weekdaysMin()},months:function(){return a.months()},monthsShort:function(){return a.monthsShort()},longDateFormat:function(f){return l(d,f)},meridiem:d.meridiem,ordinal:d.ordinal}},a.months=function(){return i(u(),"months")},a.monthsShort=function(){return i(u(),"monthsShort","months",3)},a.weekdays=function(d){return i(u(),"weekdays",null,null,d)},a.weekdaysShort=function(d){return i(u(),"weekdaysShort","weekdays",3,d)},a.weekdaysMin=function(d){return i(u(),"weekdaysMin","weekdays",2,d)}}})}(localeData$2)),localeData$2.exports}var localeDataExports=requireLocaleData();const localeData=getDefaultExportFromCjs(localeDataExports),datePickTypes=["year","years","month","months","date","dates","week","datetime","datetimerange","daterange","monthrange","yearrange"];var PatchFlags=(e=>(e[e.TEXT=1]="TEXT",e[e.CLASS=2]="CLASS",e[e.STYLE=4]="STYLE",e[e.PROPS=8]="PROPS",e[e.FULL_PROPS=16]="FULL_PROPS",e[e.HYDRATE_EVENTS=32]="HYDRATE_EVENTS",e[e.STABLE_FRAGMENT=64]="STABLE_FRAGMENT",e[e.KEYED_FRAGMENT=128]="KEYED_FRAGMENT",e[e.UNKEYED_FRAGMENT=256]="UNKEYED_FRAGMENT",e[e.NEED_PATCH=512]="NEED_PATCH",e[e.DYNAMIC_SLOTS=1024]="DYNAMIC_SLOTS",e[e.HOISTED=-1]="HOISTED",e[e.BAIL=-2]="BAIL",e))(PatchFlags||{});const flattedChildren=e=>{const t=isArray$1(e)?e:[e],n=[];return t.forEach(r=>{var a;isArray$1(r)?n.push(...flattedChildren(r)):vue.isVNode(r)&&((a=r.component)!=null&&a.subTree)?n.push(r,...flattedChildren(r.component.subTree)):vue.isVNode(r)&&isArray$1(r.children)?n.push(...flattedChildren(r.children)):vue.isVNode(r)&&r.shapeFlag===2?n.push(...flattedChildren(r.type())):n.push(r)}),n},escapeStringRegexp=(e="")=>e.replace(/[|\\{}()[\]^$+*?.]/g,"\\$&").replace(/-/g,"\\x2d"),castArray=e=>!e&&e!==0?[]:isArray$1(e)?e:[e],tagProps=buildProps({type:{type:String,values:["primary","success","info","warning","danger"],default:"primary"},closable:Boolean,disableTransitions:Boolean,hit:Boolean,color:String,size:{type:String,values:componentSizes},effect:{type:String,values:["dark","light","plain"],default:"light"},round:Boolean}),tagEmits={close:e=>e instanceof MouseEvent,click:e=>e instanceof MouseEvent},__default__$8=vue.defineComponent({name:"ElTag"}),_sfc_main$C=vue.defineComponent({...__default__$8,props:tagProps,emits:tagEmits,setup(e,{emit:t}){const n=e,r=useFormSize(),a=useNamespace("tag"),s=vue.computed(()=>{const{type:l,hit:v,effect:d,closable:f,round:c}=n;return[a.b(),a.is("closable",f),a.m(l||"primary"),a.m(r.value),a.m(d),a.is("hit",v),a.is("round",c)]}),o=l=>{t("close",l)},i=l=>{t("click",l)},u=l=>{var v,d,f;(f=(d=(v=l==null?void 0:l.component)==null?void 0:v.subTree)==null?void 0:d.component)!=null&&f.bum&&(l.component.subTree.component.bum=null)};return(l,v)=>l.disableTransitions?(vue.openBlock(),vue.createElementBlock("span",{key:0,class:vue.normalizeClass(vue.unref(s)),style:vue.normalizeStyle({backgroundColor:l.color}),onClick:i},[vue.createElementVNode("span",{class:vue.normalizeClass(vue.unref(a).e("content"))},[vue.renderSlot(l.$slots,"default")],2),l.closable?(vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{key:0,class:vue.normalizeClass(vue.unref(a).e("close")),onClick:vue.withModifiers(o,["stop"])},{default:vue.withCtx(()=>[vue.createVNode(vue.unref(close_default))]),_:1},8,["class","onClick"])):vue.createCommentVNode("v-if",!0)],6)):(vue.openBlock(),vue.createBlock(vue.Transition,{key:1,name:`${vue.unref(a).namespace.value}-zoom-in-center`,appear:"",onVnodeMounted:u},{default:vue.withCtx(()=>[vue.createElementVNode("span",{class:vue.normalizeClass(vue.unref(s)),style:vue.normalizeStyle({backgroundColor:l.color}),onClick:i},[vue.createElementVNode("span",{class:vue.normalizeClass(vue.unref(a).e("content"))},[vue.renderSlot(l.$slots,"default")],2),l.closable?(vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{key:0,class:vue.normalizeClass(vue.unref(a).e("close")),onClick:vue.withModifiers(o,["stop"])},{default:vue.withCtx(()=>[vue.createVNode(vue.unref(close_default))]),_:1},8,["class","onClick"])):vue.createCommentVNode("v-if",!0)],6)]),_:3},8,["name"]))}});var Tag=_export_sfc(_sfc_main$C,[["__file","tag.vue"]]);const ElTag=withInstall(Tag),nodeList=new Map;if(isClient){let e;document.addEventListener("mousedown",t=>e=t),document.addEventListener("mouseup",t=>{if(e){for(const n of nodeList.values())for(const{documentHandler:r}of n)r(t,e);e=void 0}})}function createDocumentHandler(e,t){let n=[];return isArray$1(t.arg)?n=t.arg:isElement(t.arg)&&n.push(t.arg),function(r,a){const s=t.instance.popperRef,o=r.target,i=a==null?void 0:a.target,u=!t||!t.instance,l=!o||!i,v=e.contains(o)||e.contains(i),d=e===o,f=n.length&&n.some(p=>p==null?void 0:p.contains(o))||n.length&&n.includes(i),c=s&&(s.contains(o)||s.contains(i));u||l||v||d||f||c||t.value(r,a)}}const ClickOutside={beforeMount(e,t){nodeList.has(e)||nodeList.set(e,[]),nodeList.get(e).push({documentHandler:createDocumentHandler(e,t),bindingFn:t.value})},updated(e,t){nodeList.has(e)||nodeList.set(e,[]);const n=nodeList.get(e),r=n.findIndex(s=>s.bindingFn===t.oldValue),a={documentHandler:createDocumentHandler(e,t),bindingFn:t.value};r>=0?n.splice(r,1,a):n.push(a)},unmounted(e){nodeList.delete(e)}};var customParseFormat$2={exports:{}},customParseFormat$1=customParseFormat$2.exports,hasRequiredCustomParseFormat;function requireCustomParseFormat(){return hasRequiredCustomParseFormat||(hasRequiredCustomParseFormat=1,function(e,t){(function(n,r){e.exports=r()})(customParseFormat$1,function(){var n={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"},r=/(\[[^[]*\])|([-_:/.,()\s]+)|(A|a|Q|YYYY|YY?|ww?|MM?M?M?|Do|DD?|hh?|HH?|mm?|ss?|S{1,3}|z|ZZ?)/g,a=/\d/,s=/\d\d/,o=/\d\d?/,i=/\d*[^-_:/,()\s\d]+/,u={},l=function(y){return(y=+y)+(y>68?1900:2e3)},v=function(y){return function(m){this[y]=+m}},d=[/[+-]\d\d:?(\d\d)?|Z/,function(y){(this.zone||(this.zone={})).offset=function(m){if(!m||m==="Z")return 0;var _=m.match(/([+-]|\d\d)/g),b=60*_[1]+(+_[2]||0);return b===0?0:_[0]==="+"?-b:b}(y)}],f=function(y){var m=u[y];return m&&(m.indexOf?m:m.s.concat(m.f))},c=function(y,m){var _,b=u.meridiem;if(b){for(var g=1;g<=24;g+=1)if(y.indexOf(b(g,0,m))>-1){_=g>12;break}}else _=y===(m?"pm":"PM");return _},p={A:[i,function(y){this.afternoon=c(y,!1)}],a:[i,function(y){this.afternoon=c(y,!0)}],Q:[a,function(y){this.month=3*(y-1)+1}],S:[a,function(y){this.milliseconds=100*+y}],SS:[s,function(y){this.milliseconds=10*+y}],SSS:[/\d{3}/,function(y){this.milliseconds=+y}],s:[o,v("seconds")],ss:[o,v("seconds")],m:[o,v("minutes")],mm:[o,v("minutes")],H:[o,v("hours")],h:[o,v("hours")],HH:[o,v("hours")],hh:[o,v("hours")],D:[o,v("day")],DD:[s,v("day")],Do:[i,function(y){var m=u.ordinal,_=y.match(/\d+/);if(this.day=_[0],m)for(var b=1;b<=31;b+=1)m(b).replace(/\[|\]/g,"")===y&&(this.day=b)}],w:[o,v("week")],ww:[s,v("week")],M:[o,v("month")],MM:[s,v("month")],MMM:[i,function(y){var m=f("months"),_=(f("monthsShort")||m.map(function(b){return b.slice(0,3)})).indexOf(y)+1;if(_<1)throw new Error;this.month=_%12||_}],MMMM:[i,function(y){var m=f("months").indexOf(y)+1;if(m<1)throw new Error;this.month=m%12||m}],Y:[/[+-]?\d+/,v("year")],YY:[s,function(y){this.year=l(y)}],YYYY:[/\d{4}/,v("year")],Z:d,ZZ:d};function h(y){var m,_;m=y,_=u&&u.formats;for(var b=(y=m.replace(/(\[[^\]]+])|(LTS?|l{1,4}|L{1,4})/g,function(F,O,D){var j=D&&D.toUpperCase();return O||_[D]||n[D]||_[j].replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,function(z,T,L){return T||L.slice(1)})})).match(r),g=b.length,w=0;w<g;w+=1){var k=b[w],A=p[k],$=A&&A[0],M=A&&A[1];b[w]=M?{regex:$,parser:M}:k.replace(/^\[|\]$/g,"")}return function(F){for(var O={},D=0,j=0;D<g;D+=1){var z=b[D];if(typeof z=="string")j+=z.length;else{var T=z.regex,L=z.parser,ie=F.slice(j),x=T.exec(ie)[0];L.call(O,x),F=F.replace(x,"")}}return function(V){var le=V.afternoon;if(le!==void 0){var re=V.hours;le?re<12&&(V.hours+=12):re===12&&(V.hours=0),delete V.afternoon}}(O),O}}return function(y,m,_){_.p.customParseFormat=!0,y&&y.parseTwoDigitYear&&(l=y.parseTwoDigitYear);var b=m.prototype,g=b.parse;b.parse=function(w){var k=w.date,A=w.utc,$=w.args;this.$u=A;var M=$[1];if(typeof M=="string"){var F=$[2]===!0,O=$[3]===!0,D=F||O,j=$[2];O&&(j=$[2]),u=this.$locale(),!F&&j&&(u=_.Ls[j]),this.$d=function(ie,x,V,le){try{if(["x","X"].indexOf(x)>-1)return new Date((x==="X"?1e3:1)*ie);var re=h(x)(ie),Y=re.year,he=re.month,_e=re.day,$e=re.hours,Ne=re.minutes,kt=re.seconds,Pt=re.milliseconds,Oe=re.zone,ze=re.week,At=new Date,En=_e||(Y||he?1:At.getDate()),Pn=Y||At.getFullYear(),Dn=0;Y&&!he||(Dn=he>0?he-1:At.getMonth());var Mn,Ue=$e||0,xe=Ne||0,Lt=kt||0,Et=Pt||0;return Oe?new Date(Date.UTC(Pn,Dn,En,Ue,xe,Lt,Et+60*Oe.offset*1e3)):V?new Date(Date.UTC(Pn,Dn,En,Ue,xe,Lt,Et)):(Mn=new Date(Pn,Dn,En,Ue,xe,Lt,Et),ze&&(Mn=le(Mn).week(ze).toDate()),Mn)}catch{return new Date("")}}(k,M,A,_),this.init(),j&&j!==!0&&(this.$L=this.locale(j).$L),D&&k!=this.format(M)&&(this.$d=new Date("")),u={}}else if(M instanceof Array)for(var z=M.length,T=1;T<=z;T+=1){$[1]=M[T-1];var L=_.apply(this,$);if(L.isValid()){this.$d=L.$d,this.$L=L.$L,this.init();break}T===z&&(this.$d=new Date(""))}else g.call(this,w)}}})}(customParseFormat$2)),customParseFormat$2.exports}var customParseFormatExports=requireCustomParseFormat();const customParseFormat=getDefaultExportFromCjs(customParseFormatExports);var advancedFormat$2={exports:{}},advancedFormat$1=advancedFormat$2.exports,hasRequiredAdvancedFormat;function requireAdvancedFormat(){return hasRequiredAdvancedFormat||(hasRequiredAdvancedFormat=1,function(e,t){(function(n,r){e.exports=r()})(advancedFormat$1,function(){return function(n,r){var a=r.prototype,s=a.format;a.format=function(o){var i=this,u=this.$locale();if(!this.isValid())return s.bind(this)(o);var l=this.$utils(),v=(o||"YYYY-MM-DDTHH:mm:ssZ").replace(/\[([^\]]+)]|Q|wo|ww|w|WW|W|zzz|z|gggg|GGGG|Do|X|x|k{1,2}|S/g,function(d){switch(d){case"Q":return Math.ceil((i.$M+1)/3);case"Do":return u.ordinal(i.$D);case"gggg":return i.weekYear();case"GGGG":return i.isoWeekYear();case"wo":return u.ordinal(i.week(),"W");case"w":case"ww":return l.s(i.week(),d==="w"?1:2,"0");case"W":case"WW":return l.s(i.isoWeek(),d==="W"?1:2,"0");case"k":case"kk":return l.s(String(i.$H===0?24:i.$H),d==="k"?1:2,"0");case"X":return Math.floor(i.$d.getTime()/1e3);case"x":return i.$d.getTime();case"z":return"["+i.offsetName()+"]";case"zzz":return"["+i.offsetName("long")+"]";default:return d}});return s.bind(this)(v)}}})}(advancedFormat$2)),advancedFormat$2.exports}var advancedFormatExports=requireAdvancedFormat();const advancedFormat=getDefaultExportFromCjs(advancedFormatExports);var weekOfYear$2={exports:{}},weekOfYear$1=weekOfYear$2.exports,hasRequiredWeekOfYear;function requireWeekOfYear(){return hasRequiredWeekOfYear||(hasRequiredWeekOfYear=1,function(e,t){(function(n,r){e.exports=r()})(weekOfYear$1,function(){var n="week",r="year";return function(a,s,o){var i=s.prototype;i.week=function(u){if(u===void 0&&(u=null),u!==null)return this.add(7*(u-this.week()),"day");var l=this.$locale().yearStart||1;if(this.month()===11&&this.date()>25){var v=o(this).startOf(r).add(1,r).date(l),d=o(this).endOf(n);if(v.isBefore(d))return 1}var f=o(this).startOf(r).date(l).startOf(n).subtract(1,"millisecond"),c=this.diff(f,n,!0);return c<0?o(this).startOf("week").week():Math.ceil(c)},i.weeks=function(u){return u===void 0&&(u=null),this.week(u)}}})}(weekOfYear$2)),weekOfYear$2.exports}var weekOfYearExports=requireWeekOfYear();const weekOfYear=getDefaultExportFromCjs(weekOfYearExports);var weekYear$2={exports:{}},weekYear$1=weekYear$2.exports,hasRequiredWeekYear;function requireWeekYear(){return hasRequiredWeekYear||(hasRequiredWeekYear=1,function(e,t){(function(n,r){e.exports=r()})(weekYear$1,function(){return function(n,r){r.prototype.weekYear=function(){var a=this.month(),s=this.week(),o=this.year();return s===1&&a===11?o+1:a===0&&s>=52?o-1:o}}})}(weekYear$2)),weekYear$2.exports}var weekYearExports=requireWeekYear();const weekYear=getDefaultExportFromCjs(weekYearExports);var dayOfYear$2={exports:{}},dayOfYear$1=dayOfYear$2.exports,hasRequiredDayOfYear;function requireDayOfYear(){return hasRequiredDayOfYear||(hasRequiredDayOfYear=1,function(e,t){(function(n,r){e.exports=r()})(dayOfYear$1,function(){return function(n,r,a){r.prototype.dayOfYear=function(s){var o=Math.round((a(this).startOf("day")-a(this).startOf("year"))/864e5)+1;return s==null?o:this.add(s-o,"day")}}})}(dayOfYear$2)),dayOfYear$2.exports}var dayOfYearExports=requireDayOfYear();const dayOfYear=getDefaultExportFromCjs(dayOfYearExports);var isSameOrAfter$2={exports:{}},isSameOrAfter$1=isSameOrAfter$2.exports,hasRequiredIsSameOrAfter;function requireIsSameOrAfter(){return hasRequiredIsSameOrAfter||(hasRequiredIsSameOrAfter=1,function(e,t){(function(n,r){e.exports=r()})(isSameOrAfter$1,function(){return function(n,r){r.prototype.isSameOrAfter=function(a,s){return this.isSame(a,s)||this.isAfter(a,s)}}})}(isSameOrAfter$2)),isSameOrAfter$2.exports}var isSameOrAfterExports=requireIsSameOrAfter();const isSameOrAfter=getDefaultExportFromCjs(isSameOrAfterExports);var isSameOrBefore$2={exports:{}},isSameOrBefore$1=isSameOrBefore$2.exports,hasRequiredIsSameOrBefore;function requireIsSameOrBefore(){return hasRequiredIsSameOrBefore||(hasRequiredIsSameOrBefore=1,function(e,t){(function(n,r){e.exports=r()})(isSameOrBefore$1,function(){return function(n,r){r.prototype.isSameOrBefore=function(a,s){return this.isSame(a,s)||this.isBefore(a,s)}}})}(isSameOrBefore$2)),isSameOrBefore$2.exports}var isSameOrBeforeExports=requireIsSameOrBefore();const isSameOrBefore=getDefaultExportFromCjs(isSameOrBeforeExports),timeUnits=["hours","minutes","seconds"],PICKER_BASE_INJECTION_KEY="EP_PICKER_BASE",PICKER_POPPER_OPTIONS_INJECTION_KEY="ElPopperOptions",DEFAULT_FORMATS_TIME="HH:mm:ss",DEFAULT_FORMATS_DATE="YYYY-MM-DD",DEFAULT_FORMATS_DATEPICKER={date:DEFAULT_FORMATS_DATE,dates:DEFAULT_FORMATS_DATE,week:"gggg[w]ww",year:"YYYY",years:"YYYY",month:"YYYY-MM",months:"YYYY-MM",datetime:`${DEFAULT_FORMATS_DATE} ${DEFAULT_FORMATS_TIME}`,monthrange:"YYYY-MM",yearrange:"YYYY",daterange:DEFAULT_FORMATS_DATE,datetimerange:`${DEFAULT_FORMATS_DATE} ${DEFAULT_FORMATS_TIME}`},disabledTimeListsProps=buildProps({disabledHours:{type:definePropType(Function)},disabledMinutes:{type:definePropType(Function)},disabledSeconds:{type:definePropType(Function)}}),timePanelSharedProps=buildProps({visible:Boolean,actualVisible:{type:Boolean,default:void 0},format:{type:String,default:""}}),timePickerDefaultProps=buildProps({id:{type:definePropType([Array,String])},name:{type:definePropType([Array,String])},popperClass:{type:String,default:""},format:String,valueFormat:String,dateFormat:String,timeFormat:String,type:{type:String,default:""},clearable:{type:Boolean,default:!0},clearIcon:{type:definePropType([String,Object]),default:circle_close_default},editable:{type:Boolean,default:!0},prefixIcon:{type:definePropType([String,Object]),default:""},size:useSizeProp,readonly:Boolean,disabled:Boolean,placeholder:{type:String,default:""},popperOptions:{type:definePropType(Object),default:()=>({})},modelValue:{type:definePropType([Date,Array,String,Number]),default:""},rangeSeparator:{type:String,default:"-"},startPlaceholder:String,endPlaceholder:String,defaultValue:{type:definePropType([Date,Array])},defaultTime:{type:definePropType([Date,Array])},isRange:Boolean,...disabledTimeListsProps,disabledDate:{type:Function},cellClassName:{type:Function},shortcuts:{type:Array,default:()=>[]},arrowControl:Boolean,tabindex:{type:definePropType([String,Number]),default:0},validateEvent:{type:Boolean,default:!0},unlinkPanels:Boolean,placement:{type:definePropType(String),values:Ee,default:"bottom"},fallbackPlacements:{type:definePropType(Array),default:["bottom","top","right","left"]},...useEmptyValuesProps,...useAriaProps(["ariaLabel"]),showNow:{type:Boolean,default:!0}}),timePickerRangeTriggerProps=buildProps({id:{type:definePropType(Array)},name:{type:definePropType(Array)},modelValue:{type:definePropType([Array,String])},startPlaceholder:String,endPlaceholder:String,disabled:Boolean}),__default__$7=vue.defineComponent({name:"PickerRangeTrigger",inheritAttrs:!1}),_sfc_main$B=vue.defineComponent({...__default__$7,props:timePickerRangeTriggerProps,emits:["mouseenter","mouseleave","click","touchstart","focus","blur","startInput","endInput","startChange","endChange"],setup(e,{expose:t,emit:n}){const r=useAttrs(),a=useNamespace("date"),s=useNamespace("range"),o=vue.ref(),i=vue.ref(),{wrapperRef:u,isFocused:l}=useFocusController(o),v=g=>{n("click",g)},d=g=>{n("mouseenter",g)},f=g=>{n("mouseleave",g)},c=g=>{n("mouseenter",g)},p=g=>{n("startInput",g)},h=g=>{n("endInput",g)},y=g=>{n("startChange",g)},m=g=>{n("endChange",g)};return t({focus:()=>{var g;(g=o.value)==null||g.focus()},blur:()=>{var g,w;(g=o.value)==null||g.blur(),(w=i.value)==null||w.blur()}}),(g,w)=>(vue.openBlock(),vue.createElementBlock("div",{ref_key:"wrapperRef",ref:u,class:vue.normalizeClass([vue.unref(a).is("active",vue.unref(l)),g.$attrs.class]),style:vue.normalizeStyle(g.$attrs.style),onClick:v,onMouseenter:d,onMouseleave:f,onTouchstartPassive:c},[vue.renderSlot(g.$slots,"prefix"),vue.createElementVNode("input",vue.mergeProps(vue.unref(r),{id:g.id&&g.id[0],ref_key:"inputRef",ref:o,name:g.name&&g.name[0],placeholder:g.startPlaceholder,value:g.modelValue&&g.modelValue[0],class:vue.unref(s).b("input"),disabled:g.disabled,onInput:p,onChange:y}),null,16,["id","name","placeholder","value","disabled"]),vue.renderSlot(g.$slots,"range-separator"),vue.createElementVNode("input",vue.mergeProps(vue.unref(r),{id:g.id&&g.id[1],ref_key:"endInputRef",ref:i,name:g.name&&g.name[1],placeholder:g.endPlaceholder,value:g.modelValue&&g.modelValue[1],class:vue.unref(s).b("input"),disabled:g.disabled,onInput:h,onChange:m}),null,16,["id","name","placeholder","value","disabled"]),vue.renderSlot(g.$slots,"suffix")],38))}});var PickerRangeTrigger=_export_sfc(_sfc_main$B,[["__file","picker-range-trigger.vue"]]);const __default__$6=vue.defineComponent({name:"Picker"}),_sfc_main$A=vue.defineComponent({...__default__$6,props:timePickerDefaultProps,emits:[UPDATE_MODEL_EVENT,CHANGE_EVENT,"focus","blur","clear","calendar-change","panel-change","visible-change","keydown"],setup(e,{expose:t,emit:n}){const r=e,a=vue.useAttrs(),{lang:s}=useLocale(),o=useNamespace("date"),i=useNamespace("input"),u=useNamespace("range"),{form:l,formItem:v}=useFormItem(),d=vue.inject(PICKER_POPPER_OPTIONS_INJECTION_KEY,{}),{valueOnClear:f}=useEmptyValues(r,null),c=vue.ref(),p=vue.ref(),h=vue.ref(!1),y=vue.ref(!1),m=vue.ref(null);let _=!1;const{isFocused:b,handleFocus:g,handleBlur:w}=useFocusController(p,{beforeFocus(){return r.readonly||V.value},afterFocus(){h.value=!0},beforeBlur(S){var ae;return!_&&((ae=c.value)==null?void 0:ae.isFocusInsideContent(S))},afterBlur(){wn(),h.value=!1,_=!1,r.validateEvent&&(v==null||v.validate("blur").catch(S=>debugWarn(S)))}}),k=vue.computed(()=>[o.b("editor"),o.bm("editor",r.type),i.e("wrapper"),o.is("disabled",V.value),o.is("active",h.value),u.b("editor"),Ue?u.bm("editor",Ue.value):"",a.class]),A=vue.computed(()=>[i.e("icon"),u.e("close-icon"),Pt.value?"":u.e("close-icon--hidden")]);vue.watch(h,S=>{S?vue.nextTick(()=>{S&&(m.value=r.modelValue)}):(Et.value=null,vue.nextTick(()=>{$(r.modelValue)}))});const $=(S,ae)=>{(ae||!valueEquals(S,m.value))&&(n(CHANGE_EVENT,S),ae&&(m.value=S),r.validateEvent&&(v==null||v.validate("change").catch(de=>debugWarn(de))))},M=S=>{if(!valueEquals(r.modelValue,S)){let ae;isArray$1(S)?ae=S.map(de=>formatter(de,r.valueFormat,s.value)):S&&(ae=formatter(S,r.valueFormat,s.value)),n(UPDATE_MODEL_EVENT,S&&ae,s.value)}},F=S=>{n("keydown",S)},O=vue.computed(()=>p.value?Array.from(p.value.$el.querySelectorAll("input")):[]),D=(S,ae,de)=>{const Ce=O.value;Ce.length&&(!de||de==="min"?(Ce[0].setSelectionRange(S,ae),Ce[0].focus()):de==="max"&&(Ce[1].setSelectionRange(S,ae),Ce[1].focus()))},j=(S="",ae=!1)=>{h.value=ae;let de;isArray$1(S)?de=S.map(Ce=>Ce.toDate()):de=S&&S.toDate(),Et.value=null,M(de)},z=()=>{y.value=!0},T=()=>{n("visible-change",!0)},L=()=>{y.value=!1,h.value=!1,n("visible-change",!1)},ie=()=>{h.value=!0},x=()=>{h.value=!1},V=vue.computed(()=>r.disabled||(l==null?void 0:l.disabled)),le=vue.computed(()=>{let S;if(ze.value?Rn.value.getDefaultValue&&(S=Rn.value.getDefaultValue()):isArray$1(r.modelValue)?S=r.modelValue.map(ae=>parseDate(ae,r.valueFormat,s.value)):S=parseDate(r.modelValue,r.valueFormat,s.value),Rn.value.getRangeAvailableTime){const ae=Rn.value.getRangeAvailableTime(S);isEqual(ae,S)||(S=ae,ze.value||M(dayOrDaysToDate(S)))}return isArray$1(S)&&S.some(ae=>!ae)&&(S=[]),S}),re=vue.computed(()=>{if(!Rn.value.panelReady)return"";const S=kn(le.value);return isArray$1(Et.value)?[Et.value[0]||S&&S[0]||"",Et.value[1]||S&&S[1]||""]:Et.value!==null?Et.value:!he.value&&ze.value||!h.value&&ze.value?"":S?_e.value||$e.value||Ne.value?S.join(", "):S:""}),Y=vue.computed(()=>r.type.includes("time")),he=vue.computed(()=>r.type.startsWith("time")),_e=vue.computed(()=>r.type==="dates"),$e=vue.computed(()=>r.type==="months"),Ne=vue.computed(()=>r.type==="years"),kt=vue.computed(()=>r.prefixIcon||(Y.value?clock_default:calendar_default)),Pt=vue.ref(!1),Oe=S=>{r.readonly||V.value||(Pt.value&&(S.stopPropagation(),Rn.value.handleClear?Rn.value.handleClear():M(f.value),$(f.value,!0),Pt.value=!1,L()),n("clear"))},ze=vue.computed(()=>{const{modelValue:S}=r;return!S||isArray$1(S)&&!S.filter(Boolean).length}),At=async S=>{var ae;r.readonly||V.value||(((ae=S.target)==null?void 0:ae.tagName)!=="INPUT"||b.value)&&(h.value=!0)},En=()=>{r.readonly||V.value||!ze.value&&r.clearable&&(Pt.value=!0)},Pn=()=>{Pt.value=!1},Dn=S=>{var ae;r.readonly||V.value||(((ae=S.touches[0].target)==null?void 0:ae.tagName)!=="INPUT"||b.value)&&(h.value=!0)},Mn=vue.computed(()=>r.type.includes("range")),Ue=useFormSize(),xe=vue.computed(()=>{var S,ae;return(ae=(S=vue.unref(c))==null?void 0:S.popperRef)==null?void 0:ae.contentRef}),Lt=onClickOutside(p,S=>{const ae=vue.unref(xe),de=unrefElement(p);ae&&(S.target===ae||S.composedPath().includes(ae))||S.target===de||de&&S.composedPath().includes(de)||(h.value=!1)});vue.onBeforeUnmount(()=>{Lt==null||Lt()});const Et=vue.ref(null),wn=()=>{if(Et.value){const S=Tn(re.value);S&&In(S)&&(M(dayOrDaysToDate(S)),Et.value=null)}Et.value===""&&(M(f.value),$(f.value,!0),Et.value=null)},Tn=S=>S?Rn.value.parseUserInput(S):null,kn=S=>S?Rn.value.formatToString(S):null,In=S=>Rn.value.isValidValue(S),qe=async S=>{if(r.readonly||V.value)return;const{code:ae}=S;if(F(S),ae===EVENT_CODE.esc){h.value===!0&&(h.value=!1,S.preventDefault(),S.stopPropagation());return}if(ae===EVENT_CODE.down&&(Rn.value.handleFocusPicker&&(S.preventDefault(),S.stopPropagation()),h.value===!1&&(h.value=!0,await vue.nextTick()),Rn.value.handleFocusPicker)){Rn.value.handleFocusPicker();return}if(ae===EVENT_CODE.tab){_=!0;return}if(ae===EVENT_CODE.enter||ae===EVENT_CODE.numpadEnter){(Et.value===null||Et.value===""||In(Tn(re.value)))&&(wn(),h.value=!1),S.stopPropagation();return}if(Et.value){S.stopPropagation();return}Rn.value.handleKeydownInput&&Rn.value.handleKeydownInput(S)},hn=S=>{Et.value=S,h.value||(h.value=!0)},An=S=>{const ae=S.target;Et.value?Et.value=[ae.value,Et.value[1]]:Et.value=[ae.value,null]},Nn=S=>{const ae=S.target;Et.value?Et.value=[Et.value[0],ae.value]:Et.value=[null,ae.value]},xn=()=>{var S;const ae=Et.value,de=Tn(ae&&ae[0]),Ce=vue.unref(le);if(de&&de.isValid()){Et.value=[kn(de),((S=re.value)==null?void 0:S[1])||null];const Dt=[de,Ce&&(Ce[1]||null)];In(Dt)&&(M(dayOrDaysToDate(Dt)),Et.value=null)}},Bn=()=>{var S;const ae=vue.unref(Et),de=Tn(ae&&ae[1]),Ce=vue.unref(le);if(de&&de.isValid()){Et.value=[((S=vue.unref(re))==null?void 0:S[0])||null,kn(de)];const Dt=[Ce&&Ce[0],de];In(Dt)&&(M(dayOrDaysToDate(Dt)),Et.value=null)}},Rn=vue.ref({}),qn=S=>{Rn.value[S[0]]=S[1],Rn.value.panelReady=!0},Fn=S=>{n("calendar-change",S)},$n=(S,ae,de)=>{n("panel-change",S,ae,de)},oe=()=>{var S;(S=p.value)==null||S.focus()},pe=()=>{var S;(S=p.value)==null||S.blur()};return vue.provide(PICKER_BASE_INJECTION_KEY,{props:r}),t({focus:oe,blur:pe,handleOpen:ie,handleClose:x,onPick:j}),(S,ae)=>(vue.openBlock(),vue.createBlock(vue.unref(ElTooltip),vue.mergeProps({ref_key:"refPopper",ref:c,visible:h.value,effect:"light",pure:"",trigger:"click"},S.$attrs,{role:"dialog",teleported:"",transition:`${vue.unref(o).namespace.value}-zoom-in-top`,"popper-class":[`${vue.unref(o).namespace.value}-picker__popper`,S.popperClass],"popper-options":vue.unref(d),"fallback-placements":S.fallbackPlacements,"gpu-acceleration":!1,placement:S.placement,"stop-popper-mouse-event":!1,"hide-after":0,persistent:"",onBeforeShow:z,onShow:T,onHide:L}),{default:vue.withCtx(()=>[vue.unref(Mn)?(vue.openBlock(),vue.createBlock(PickerRangeTrigger,{key:1,id:S.id,ref_key:"inputRef",ref:p,"model-value":vue.unref(re),name:S.name,disabled:vue.unref(V),readonly:!S.editable||S.readonly,"start-placeholder":S.startPlaceholder,"end-placeholder":S.endPlaceholder,class:vue.normalizeClass(vue.unref(k)),style:vue.normalizeStyle(S.$attrs.style),"aria-label":S.ariaLabel,tabindex:S.tabindex,autocomplete:"off",role:"combobox",onClick:At,onFocus:vue.unref(g),onBlur:vue.unref(w),onStartInput:An,onStartChange:xn,onEndInput:Nn,onEndChange:Bn,onMousedown:At,onMouseenter:En,onMouseleave:Pn,onTouchstartPassive:Dn,onKeydown:qe},{prefix:vue.withCtx(()=>[vue.unref(kt)?(vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{key:0,class:vue.normalizeClass([vue.unref(i).e("icon"),vue.unref(u).e("icon")])},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(vue.unref(kt))))]),_:1},8,["class"])):vue.createCommentVNode("v-if",!0)]),"range-separator":vue.withCtx(()=>[vue.renderSlot(S.$slots,"range-separator",{},()=>[vue.createElementVNode("span",{class:vue.normalizeClass(vue.unref(u).b("separator"))},vue.toDisplayString(S.rangeSeparator),3)])]),suffix:vue.withCtx(()=>[S.clearIcon?(vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{key:0,class:vue.normalizeClass(vue.unref(A)),onMousedown:vue.withModifiers(vue.unref(NOOP),["prevent"]),onClick:Oe},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(S.clearIcon)))]),_:1},8,["class","onMousedown"])):vue.createCommentVNode("v-if",!0)]),_:3},8,["id","model-value","name","disabled","readonly","start-placeholder","end-placeholder","class","style","aria-label","tabindex","onFocus","onBlur"])):(vue.openBlock(),vue.createBlock(vue.unref(ElInput),{key:0,id:S.id,ref_key:"inputRef",ref:p,"container-role":"combobox","model-value":vue.unref(re),name:S.name,size:vue.unref(Ue),disabled:vue.unref(V),placeholder:S.placeholder,class:vue.normalizeClass([vue.unref(o).b("editor"),vue.unref(o).bm("editor",S.type),S.$attrs.class]),style:vue.normalizeStyle(S.$attrs.style),readonly:!S.editable||S.readonly||vue.unref(_e)||vue.unref($e)||vue.unref(Ne)||S.type==="week","aria-label":S.ariaLabel,tabindex:S.tabindex,"validate-event":!1,onInput:hn,onFocus:vue.unref(g),onBlur:vue.unref(w),onKeydown:qe,onChange:wn,onMousedown:At,onMouseenter:En,onMouseleave:Pn,onTouchstartPassive:Dn,onClick:vue.withModifiers(()=>{},["stop"])},{prefix:vue.withCtx(()=>[vue.unref(kt)?(vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{key:0,class:vue.normalizeClass(vue.unref(i).e("icon")),onMousedown:vue.withModifiers(At,["prevent"]),onTouchstartPassive:Dn},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(vue.unref(kt))))]),_:1},8,["class","onMousedown"])):vue.createCommentVNode("v-if",!0)]),suffix:vue.withCtx(()=>[Pt.value&&S.clearIcon?(vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{key:0,class:vue.normalizeClass(`${vue.unref(i).e("icon")} clear-icon`),onMousedown:vue.withModifiers(vue.unref(NOOP),["prevent"]),onClick:Oe},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(S.clearIcon)))]),_:1},8,["class","onMousedown"])):vue.createCommentVNode("v-if",!0)]),_:1},8,["id","model-value","name","size","disabled","placeholder","class","style","readonly","aria-label","tabindex","onFocus","onBlur","onClick"]))]),content:vue.withCtx(()=>[vue.renderSlot(S.$slots,"default",{visible:h.value,actualVisible:y.value,parsedValue:vue.unref(le),format:S.format,dateFormat:S.dateFormat,timeFormat:S.timeFormat,unlinkPanels:S.unlinkPanels,type:S.type,defaultValue:S.defaultValue,showNow:S.showNow,onPick:j,onSelectRange:D,onSetPickerOption:qn,onCalendarChange:Fn,onPanelChange:$n,onMousedown:vue.withModifiers(()=>{},["stop"])})]),_:3},16,["visible","transition","popper-class","popper-options","fallback-placements","placement"]))}});var CommonPicker=_export_sfc(_sfc_main$A,[["__file","picker.vue"]]);const panelTimePickerProps=buildProps({...timePanelSharedProps,datetimeRole:String,parsedValue:{type:definePropType(Object)}}),useTimePanel=({getAvailableHours:e,getAvailableMinutes:t,getAvailableSeconds:n})=>{const r=(o,i,u,l)=>{const v={hour:e,minute:t,second:n};let d=o;return["hour","minute","second"].forEach(f=>{if(v[f]){let c;const p=v[f];switch(f){case"minute":{c=p(d.hour(),i,l);break}case"second":{c=p(d.hour(),d.minute(),i,l);break}default:{c=p(i,l);break}}if(c!=null&&c.length&&!c.includes(d[f]())){const h=u?0:c.length-1;d=d[f](c[h])}}}),d},a={};return{timePickerOptions:a,getAvailableTime:r,onSetOption:([o,i])=>{a[o]=i}}},makeAvailableArr=e=>{const t=(r,a)=>r||a,n=r=>r!==!0;return e.map(t).filter(n)},getTimeLists=(e,t,n)=>({getHoursList:(o,i)=>makeList(24,e&&(()=>e==null?void 0:e(o,i))),getMinutesList:(o,i,u)=>makeList(60,t&&(()=>t==null?void 0:t(o,i,u))),getSecondsList:(o,i,u,l)=>makeList(60,n&&(()=>n==null?void 0:n(o,i,u,l)))}),buildAvailableTimeSlotGetter=(e,t,n)=>{const{getHoursList:r,getMinutesList:a,getSecondsList:s}=getTimeLists(e,t,n);return{getAvailableHours:(l,v)=>makeAvailableArr(r(l,v)),getAvailableMinutes:(l,v,d)=>makeAvailableArr(a(l,v,d)),getAvailableSeconds:(l,v,d,f)=>makeAvailableArr(s(l,v,d,f))}},useOldValue=e=>{const t=vue.ref(e.parsedValue);return vue.watch(()=>e.visible,n=>{n||(t.value=e.parsedValue)}),t},basicTimeSpinnerProps=buildProps({role:{type:String,required:!0},spinnerDate:{type:definePropType(Object),required:!0},showSeconds:{type:Boolean,default:!0},arrowControl:Boolean,amPmMode:{type:definePropType(String),default:""},...disabledTimeListsProps}),REPEAT_INTERVAL=100,REPEAT_DELAY=600,vRepeatClick={beforeMount(e,t){const n=t.value,{interval:r=REPEAT_INTERVAL,delay:a=REPEAT_DELAY}=isFunction$1(n)?{}:n;let s,o;const i=()=>isFunction$1(n)?n():n.handler(),u=()=>{o&&(clearTimeout(o),o=void 0),s&&(clearInterval(s),s=void 0)};e.addEventListener("mousedown",l=>{l.button===0&&(u(),i(),document.addEventListener("mouseup",()=>u(),{once:!0}),o=setTimeout(()=>{s=setInterval(()=>{i()},r)},a))})}},_sfc_main$z=vue.defineComponent({__name:"basic-time-spinner",props:basicTimeSpinnerProps,emits:[CHANGE_EVENT,"select-range","set-option"],setup(e,{emit:t}){const n=e,r=vue.inject(PICKER_BASE_INJECTION_KEY),{isRange:a,format:s}=r.props,o=useNamespace("time"),{getHoursList:i,getMinutesList:u,getSecondsList:l}=getTimeLists(n.disabledHours,n.disabledMinutes,n.disabledSeconds);let v=!1;const d=vue.ref(),f=vue.ref(),c=vue.ref(),p=vue.ref(),h={hours:f,minutes:c,seconds:p},y=vue.computed(()=>n.showSeconds?timeUnits:timeUnits.slice(0,2)),m=vue.computed(()=>{const{spinnerDate:Y}=n,he=Y.hour(),_e=Y.minute(),$e=Y.second();return{hours:he,minutes:_e,seconds:$e}}),_=vue.computed(()=>{const{hours:Y,minutes:he}=vue.unref(m),{role:_e,spinnerDate:$e}=n,Ne=a?void 0:$e;return{hours:i(_e,Ne),minutes:u(Y,_e,Ne),seconds:l(Y,he,_e,Ne)}}),b=vue.computed(()=>{const{hours:Y,minutes:he,seconds:_e}=vue.unref(m);return{hours:buildTimeList(Y,23),minutes:buildTimeList(he,59),seconds:buildTimeList(_e,59)}}),g=debounce(Y=>{v=!1,A(Y)},200),w=Y=>{if(!!!n.amPmMode)return"";const _e=n.amPmMode==="A";let $e=Y<12?" am":" pm";return _e&&($e=$e.toUpperCase()),$e},k=Y=>{let he=[0,0];if(!s||s===DEFAULT_FORMATS_TIME)switch(Y){case"hours":he=[0,2];break;case"minutes":he=[3,5];break;case"seconds":he=[6,8];break}const[_e,$e]=he;t("select-range",_e,$e),d.value=Y},A=Y=>{F(Y,vue.unref(m)[Y])},$=()=>{A("hours"),A("minutes"),A("seconds")},M=Y=>Y.querySelector(`.${o.namespace.value}-scrollbar__wrap`),F=(Y,he)=>{if(n.arrowControl)return;const _e=vue.unref(h[Y]);_e&&_e.$el&&(M(_e.$el).scrollTop=Math.max(0,he*O(Y)))},O=Y=>{const he=vue.unref(h[Y]),_e=he==null?void 0:he.$el.querySelector("li");return _e&&Number.parseFloat(getStyle(_e,"height"))||0},D=()=>{z(1)},j=()=>{z(-1)},z=Y=>{d.value||k("hours");const he=d.value,_e=vue.unref(m)[he],$e=d.value==="hours"?24:60,Ne=T(he,_e,Y,$e);L(he,Ne),F(he,Ne),vue.nextTick(()=>k(he))},T=(Y,he,_e,$e)=>{let Ne=(he+_e+$e)%$e;const kt=vue.unref(_)[Y];for(;kt[Ne]&&Ne!==he;)Ne=(Ne+_e+$e)%$e;return Ne},L=(Y,he)=>{if(vue.unref(_)[Y][he])return;const{hours:Ne,minutes:kt,seconds:Pt}=vue.unref(m);let Oe;switch(Y){case"hours":Oe=n.spinnerDate.hour(he).minute(kt).second(Pt);break;case"minutes":Oe=n.spinnerDate.hour(Ne).minute(he).second(Pt);break;case"seconds":Oe=n.spinnerDate.hour(Ne).minute(kt).second(he);break}t(CHANGE_EVENT,Oe)},ie=(Y,{value:he,disabled:_e})=>{_e||(L(Y,he),k(Y),F(Y,he))},x=Y=>{const he=vue.unref(h[Y]);if(!he)return;v=!0,g(Y);const _e=Math.min(Math.round((M(he.$el).scrollTop-(V(Y)*.5-10)/O(Y)+3)/O(Y)),Y==="hours"?23:59);L(Y,_e)},V=Y=>vue.unref(h[Y]).$el.offsetHeight,le=()=>{const Y=he=>{const _e=vue.unref(h[he]);_e&&_e.$el&&(M(_e.$el).onscroll=()=>{x(he)})};Y("hours"),Y("minutes"),Y("seconds")};vue.onMounted(()=>{vue.nextTick(()=>{!n.arrowControl&&le(),$(),n.role==="start"&&k("hours")})});const re=(Y,he)=>{h[he].value=Y??void 0};return t("set-option",[`${n.role}_scrollDown`,z]),t("set-option",[`${n.role}_emitSelectRange`,k]),vue.watch(()=>n.spinnerDate,()=>{v||$()}),(Y,he)=>(vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass([vue.unref(o).b("spinner"),{"has-seconds":Y.showSeconds}])},[Y.arrowControl?vue.createCommentVNode("v-if",!0):(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,{key:0},vue.renderList(vue.unref(y),_e=>(vue.openBlock(),vue.createBlock(vue.unref(ElScrollbar),{key:_e,ref_for:!0,ref:$e=>re($e,_e),class:vue.normalizeClass(vue.unref(o).be("spinner","wrapper")),"wrap-style":"max-height: inherit;","view-class":vue.unref(o).be("spinner","list"),noresize:"",tag:"ul",onMouseenter:$e=>k(_e),onMousemove:$e=>A(_e)},{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(vue.unref(_)[_e],($e,Ne)=>(vue.openBlock(),vue.createElementBlock("li",{key:Ne,class:vue.normalizeClass([vue.unref(o).be("spinner","item"),vue.unref(o).is("active",Ne===vue.unref(m)[_e]),vue.unref(o).is("disabled",$e)]),onClick:kt=>ie(_e,{value:Ne,disabled:$e})},[_e==="hours"?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.createTextVNode(vue.toDisplayString(("0"+(Y.amPmMode?Ne%12||12:Ne)).slice(-2))+vue.toDisplayString(w(Ne)),1)],64)):(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:1},[vue.createTextVNode(vue.toDisplayString(("0"+Ne).slice(-2)),1)],64))],10,["onClick"]))),128))]),_:2},1032,["class","view-class","onMouseenter","onMousemove"]))),128)),Y.arrowControl?(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,{key:1},vue.renderList(vue.unref(y),_e=>(vue.openBlock(),vue.createElementBlock("div",{key:_e,class:vue.normalizeClass([vue.unref(o).be("spinner","wrapper"),vue.unref(o).is("arrow")]),onMouseenter:$e=>k(_e)},[vue.withDirectives((vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{class:vue.normalizeClass(["arrow-up",vue.unref(o).be("spinner","arrow")])},{default:vue.withCtx(()=>[vue.createVNode(vue.unref(arrow_up_default))]),_:1},8,["class"])),[[vue.unref(vRepeatClick),j]]),vue.withDirectives((vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{class:vue.normalizeClass(["arrow-down",vue.unref(o).be("spinner","arrow")])},{default:vue.withCtx(()=>[vue.createVNode(vue.unref(arrow_down_default))]),_:1},8,["class"])),[[vue.unref(vRepeatClick),D]]),vue.createElementVNode("ul",{class:vue.normalizeClass(vue.unref(o).be("spinner","list"))},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(vue.unref(b)[_e],($e,Ne)=>(vue.openBlock(),vue.createElementBlock("li",{key:Ne,class:vue.normalizeClass([vue.unref(o).be("spinner","item"),vue.unref(o).is("active",$e===vue.unref(m)[_e]),vue.unref(o).is("disabled",vue.unref(_)[_e][$e])])},[vue.unref(isNumber)($e)?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[_e==="hours"?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.createTextVNode(vue.toDisplayString(("0"+(Y.amPmMode?$e%12||12:$e)).slice(-2))+vue.toDisplayString(w($e)),1)],64)):(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:1},[vue.createTextVNode(vue.toDisplayString(("0"+$e).slice(-2)),1)],64))],64)):vue.createCommentVNode("v-if",!0)],2))),128))],2)],42,["onMouseenter"]))),128)):vue.createCommentVNode("v-if",!0)],2))}});var TimeSpinner=_export_sfc(_sfc_main$z,[["__file","basic-time-spinner.vue"]]);const _sfc_main$y=vue.defineComponent({__name:"panel-time-pick",props:panelTimePickerProps,emits:["pick","select-range","set-picker-option"],setup(e,{emit:t}){const n=e,r=vue.inject(PICKER_BASE_INJECTION_KEY),{arrowControl:a,disabledHours:s,disabledMinutes:o,disabledSeconds:i,defaultValue:u}=r.props,{getAvailableHours:l,getAvailableMinutes:v,getAvailableSeconds:d}=buildAvailableTimeSlotGetter(s,o,i),f=useNamespace("time"),{t:c,lang:p}=useLocale(),h=vue.ref([0,2]),y=useOldValue(n),m=vue.computed(()=>isUndefined(n.actualVisible)?`${f.namespace.value}-zoom-in-top`:""),_=vue.computed(()=>n.format.includes("ss")),b=vue.computed(()=>n.format.includes("A")?"A":n.format.includes("a")?"a":""),g=x=>{const V=dayjs(x).locale(p.value),le=z(V);return V.isSame(le)},w=()=>{t("pick",y.value,!1)},k=(x=!1,V=!1)=>{V||t("pick",n.parsedValue,x)},A=x=>{if(!n.visible)return;const V=z(x).millisecond(0);t("pick",V,!0)},$=(x,V)=>{t("select-range",x,V),h.value=[x,V]},M=x=>{const V=[0,3].concat(_.value?[6]:[]),le=["hours","minutes"].concat(_.value?["seconds"]:[]),Y=(V.indexOf(h.value[0])+x+V.length)%V.length;O.start_emitSelectRange(le[Y])},F=x=>{const V=x.code,{left:le,right:re,up:Y,down:he}=EVENT_CODE;if([le,re].includes(V)){M(V===le?-1:1),x.preventDefault();return}if([Y,he].includes(V)){const _e=V===Y?-1:1;O.start_scrollDown(_e),x.preventDefault();return}},{timePickerOptions:O,onSetOption:D,getAvailableTime:j}=useTimePanel({getAvailableHours:l,getAvailableMinutes:v,getAvailableSeconds:d}),z=x=>j(x,n.datetimeRole||"",!0),T=x=>x?dayjs(x,n.format).locale(p.value):null,L=x=>x?x.format(n.format):null,ie=()=>dayjs(u).locale(p.value);return t("set-picker-option",["isValidValue",g]),t("set-picker-option",["formatToString",L]),t("set-picker-option",["parseUserInput",T]),t("set-picker-option",["handleKeydownInput",F]),t("set-picker-option",["getRangeAvailableTime",z]),t("set-picker-option",["getDefaultValue",ie]),(x,V)=>(vue.openBlock(),vue.createBlock(vue.Transition,{name:vue.unref(m)},{default:vue.withCtx(()=>[x.actualVisible||x.visible?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:vue.normalizeClass(vue.unref(f).b("panel"))},[vue.createElementVNode("div",{class:vue.normalizeClass([vue.unref(f).be("panel","content"),{"has-seconds":vue.unref(_)}])},[vue.createVNode(TimeSpinner,{ref:"spinner",role:x.datetimeRole||"start","arrow-control":vue.unref(a),"show-seconds":vue.unref(_),"am-pm-mode":vue.unref(b),"spinner-date":x.parsedValue,"disabled-hours":vue.unref(s),"disabled-minutes":vue.unref(o),"disabled-seconds":vue.unref(i),onChange:A,onSetOption:vue.unref(D),onSelectRange:$},null,8,["role","arrow-control","show-seconds","am-pm-mode","spinner-date","disabled-hours","disabled-minutes","disabled-seconds","onSetOption"])],2),vue.createElementVNode("div",{class:vue.normalizeClass(vue.unref(f).be("panel","footer"))},[vue.createElementVNode("button",{type:"button",class:vue.normalizeClass([vue.unref(f).be("panel","btn"),"cancel"]),onClick:w},vue.toDisplayString(vue.unref(c)("el.datepicker.cancel")),3),vue.createElementVNode("button",{type:"button",class:vue.normalizeClass([vue.unref(f).be("panel","btn"),"confirm"]),onClick:le=>k()},vue.toDisplayString(vue.unref(c)("el.datepicker.confirm")),11,["onClick"])],2)],2)):vue.createCommentVNode("v-if",!0)]),_:1},8,["name"]))}});var TimePickPanel=_export_sfc(_sfc_main$y,[["__file","panel-time-pick.vue"]]);const ROOT_PICKER_INJECTION_KEY=Symbol(),ROOT_PICKER_IS_DEFAULT_FORMAT_INJECTION_KEY="ElIsDefaultFormat",datePickerProps=buildProps({...timePickerDefaultProps,type:{type:definePropType(String),default:"date"}}),selectionModes=["date","dates","year","years","month","months","week","range"],datePickerSharedProps=buildProps({disabledDate:{type:definePropType(Function)},date:{type:definePropType(Object),required:!0},minDate:{type:definePropType(Object)},maxDate:{type:definePropType(Object)},parsedValue:{type:definePropType([Object,Array])},rangeState:{type:definePropType(Object),default:()=>({endDate:null,selecting:!1})}}),panelSharedProps=buildProps({type:{type:definePropType(String),required:!0,values:datePickTypes},dateFormat:String,timeFormat:String,showNow:{type:Boolean,default:!0}}),panelRangeSharedProps=buildProps({unlinkPanels:Boolean,visible:Boolean,parsedValue:{type:definePropType(Array)}}),selectionModeWithDefault=e=>({type:String,values:selectionModes,default:e}),panelDatePickProps=buildProps({...panelSharedProps,parsedValue:{type:definePropType([Object,Array])},visible:{type:Boolean},format:{type:String,default:""}}),isValidRange=e=>{if(!isArray$1(e))return!1;const[t,n]=e;return dayjs.isDayjs(t)&&dayjs.isDayjs(n)&&dayjs(t).isValid()&&dayjs(n).isValid()&&t.isSameOrBefore(n)},getDefaultValue=(e,{lang:t,step:n=1,unit:r,unlinkPanels:a})=>{let s;if(isArray$1(e)){let[o,i]=e.map(u=>dayjs(u).locale(t));return a||(i=o.add(n,r)),[o,i]}else e?s=dayjs(e):s=dayjs();return s=s.locale(t),[s,s.add(n,r)]},buildPickerTable=(e,t,{columnIndexOffset:n,startDate:r,nextEndDate:a,now:s,unit:o,relativeDateGetter:i,setCellMetadata:u,setRowMetadata:l})=>{for(let v=0;v<e.row;v++){const d=t[v];for(let f=0;f<e.column;f++){let c=d[f+n];c||(c={row:v,column:f,type:"normal",inRange:!1,start:!1,end:!1});const p=v*e.column+f,h=i(p);c.dayjs=h,c.date=h.toDate(),c.timestamp=h.valueOf(),c.type="normal",c.inRange=!!(r&&h.isSameOrAfter(r,o)&&a&&h.isSameOrBefore(a,o))||!!(r&&h.isSameOrBefore(r,o)&&a&&h.isSameOrAfter(a,o)),r!=null&&r.isSameOrAfter(a)?(c.start=!!a&&h.isSame(a,o),c.end=r&&h.isSame(r,o)):(c.start=!!r&&h.isSame(r,o),c.end=!!a&&h.isSame(a,o)),h.isSame(s,o)&&(c.type="today"),u==null||u(c,{rowIndex:v,columnIndex:f}),d[f+n]=c}l==null||l(d)}},datesInMonth=(e,t,n,r)=>{const a=dayjs().locale(r).startOf("month").month(n).year(t).hour(e.hour()).minute(e.minute()).second(e.second()),s=a.daysInMonth();return rangeArr(s).map(o=>a.add(o,"day").toDate())},getValidDateOfMonth=(e,t,n,r,a)=>{const s=dayjs().year(t).month(n).startOf("month").hour(e.hour()).minute(e.minute()).second(e.second()),o=datesInMonth(e,t,n,r).find(i=>!(a!=null&&a(i)));return o?dayjs(o).locale(r):s.locale(r)},getValidDateOfYear=(e,t,n)=>{const r=e.year();if(!(n!=null&&n(e.toDate())))return e.locale(t);const a=e.month();if(!datesInMonth(e,r,a,t).every(n))return getValidDateOfMonth(e,r,a,t,n);for(let s=0;s<12;s++)if(!datesInMonth(e,r,s,t).every(n))return getValidDateOfMonth(e,r,s,t,n);return e},correctlyParseUserInput=(e,t,n,r)=>{if(isArray$1(e))return e.map(a=>correctlyParseUserInput(a,t,n,r));if(isString$1(e)){const a=r.value?dayjs(e):dayjs(e,t);if(!a.isValid())return a}return dayjs(e,t).locale(n)},basicDateTableProps=buildProps({...datePickerSharedProps,cellClassName:{type:definePropType(Function)},showWeekNumber:Boolean,selectionMode:selectionModeWithDefault("date")}),basicDateTableEmits=["changerange","pick","select"],isNormalDay=(e="")=>["normal","today"].includes(e),useBasicDateTable=(e,t)=>{const{lang:n}=useLocale(),r=vue.ref(),a=vue.ref(),s=vue.ref(),o=vue.ref(),i=vue.ref([[],[],[],[],[],[]]);let u=!1;const l=e.date.$locale().weekStart||7,v=e.date.locale("en").localeData().weekdaysShort().map(V=>V.toLowerCase()),d=vue.computed(()=>l>3?7-l:-l),f=vue.computed(()=>{const V=e.date.startOf("month");return V.subtract(V.day()||7,"day")}),c=vue.computed(()=>v.concat(v).slice(l,l+7)),p=vue.computed(()=>flatten(vue.unref(g)).some(V=>V.isCurrent)),h=vue.computed(()=>{const V=e.date.startOf("month"),le=V.day()||7,re=V.daysInMonth(),Y=V.subtract(1,"month").daysInMonth();return{startOfMonthDay:le,dateCountOfMonth:re,dateCountOfLastMonth:Y}}),y=vue.computed(()=>e.selectionMode==="dates"?castArray(e.parsedValue):[]),m=(V,{count:le,rowIndex:re,columnIndex:Y})=>{const{startOfMonthDay:he,dateCountOfMonth:_e,dateCountOfLastMonth:$e}=vue.unref(h),Ne=vue.unref(d);if(re>=0&&re<=1){const kt=he+Ne<0?7+he+Ne:he+Ne;if(Y+re*7>=kt)return V.text=le,!0;V.text=$e-(kt-Y%7)+1+re*7,V.type="prev-month"}else return le<=_e?V.text=le:(V.text=le-_e,V.type="next-month"),!0;return!1},_=(V,{columnIndex:le,rowIndex:re},Y)=>{const{disabledDate:he,cellClassName:_e}=e,$e=vue.unref(y),Ne=m(V,{count:Y,rowIndex:re,columnIndex:le}),kt=V.dayjs.toDate();return V.selected=$e.find(Pt=>Pt.isSame(V.dayjs,"day")),V.isSelected=!!V.selected,V.isCurrent=k(V),V.disabled=he==null?void 0:he(kt),V.customClass=_e==null?void 0:_e(kt),Ne},b=V=>{if(e.selectionMode==="week"){const[le,re]=e.showWeekNumber?[1,7]:[0,6],Y=x(V[le+1]);V[le].inRange=Y,V[le].start=Y,V[re].inRange=Y,V[re].end=Y}},g=vue.computed(()=>{const{minDate:V,maxDate:le,rangeState:re,showWeekNumber:Y}=e,he=vue.unref(d),_e=vue.unref(i),$e="day";let Ne=1;if(Y)for(let kt=0;kt<6;kt++)_e[kt][0]||(_e[kt][0]={type:"week",text:vue.unref(f).add(kt*7+1,$e).week()});return buildPickerTable({row:6,column:7},_e,{startDate:V,columnIndexOffset:Y?1:0,nextEndDate:re.endDate||le||re.selecting&&V||null,now:dayjs().locale(vue.unref(n)).startOf($e),unit:$e,relativeDateGetter:kt=>vue.unref(f).add(kt-he,$e),setCellMetadata:(...kt)=>{_(...kt,Ne)&&(Ne+=1)},setRowMetadata:b}),_e});vue.watch(()=>e.date,async()=>{var V;(V=vue.unref(r))!=null&&V.contains(document.activeElement)&&(await vue.nextTick(),await w())});const w=async()=>{var V;return(V=vue.unref(a))==null?void 0:V.focus()},k=V=>e.selectionMode==="date"&&isNormalDay(V.type)&&A(V,e.parsedValue),A=(V,le)=>le?dayjs(le).locale(vue.unref(n)).isSame(e.date.date(Number(V.text)),"day"):!1,$=(V,le)=>{const re=V*7+(le-(e.showWeekNumber?1:0))-vue.unref(d);return vue.unref(f).add(re,"day")},M=V=>{var le;if(!e.rangeState.selecting)return;let re=V.target;if(re.tagName==="SPAN"&&(re=(le=re.parentNode)==null?void 0:le.parentNode),re.tagName==="DIV"&&(re=re.parentNode),re.tagName!=="TD")return;const Y=re.parentNode.rowIndex-1,he=re.cellIndex;vue.unref(g)[Y][he].disabled||(Y!==vue.unref(s)||he!==vue.unref(o))&&(s.value=Y,o.value=he,t("changerange",{selecting:!0,endDate:$(Y,he)}))},F=V=>!vue.unref(p)&&(V==null?void 0:V.text)===1&&V.type==="normal"||V.isCurrent,O=V=>{u||vue.unref(p)||e.selectionMode!=="date"||ie(V,!0)},D=V=>{V.target.closest("td")&&(u=!0)},j=V=>{V.target.closest("td")&&(u=!1)},z=V=>{!e.rangeState.selecting||!e.minDate?(t("pick",{minDate:V,maxDate:null}),t("select",!0)):(V>=e.minDate?t("pick",{minDate:e.minDate,maxDate:V}):t("pick",{minDate:V,maxDate:e.minDate}),t("select",!1))},T=V=>{const le=V.week(),re=`${V.year()}w${le}`;t("pick",{year:V.year(),week:le,value:re,date:V.startOf("week")})},L=(V,le)=>{const re=le?castArray(e.parsedValue).filter(Y=>(Y==null?void 0:Y.valueOf())!==V.valueOf()):castArray(e.parsedValue).concat([V]);t("pick",re)},ie=(V,le=!1)=>{const re=V.target.closest("td");if(!re)return;const Y=re.parentNode.rowIndex-1,he=re.cellIndex,_e=vue.unref(g)[Y][he];if(_e.disabled||_e.type==="week")return;const $e=$(Y,he);switch(e.selectionMode){case"range":{z($e);break}case"date":{t("pick",$e,le);break}case"week":{T($e);break}case"dates":{L($e,!!_e.selected);break}}},x=V=>{if(e.selectionMode!=="week")return!1;let le=e.date.startOf("day");if(V.type==="prev-month"&&(le=le.subtract(1,"month")),V.type==="next-month"&&(le=le.add(1,"month")),le=le.date(Number.parseInt(V.text,10)),e.parsedValue&&!isArray$1(e.parsedValue)){const re=(e.parsedValue.day()-l+7)%7-1;return e.parsedValue.subtract(re,"day").isSame(le,"day")}return!1};return{WEEKS:c,rows:g,tbodyRef:r,currentCellRef:a,focus:w,isCurrent:k,isWeekActive:x,isSelectedCell:F,handlePickDate:ie,handleMouseUp:j,handleMouseDown:D,handleMouseMove:M,handleFocus:O}},useBasicDateTableDOM=(e,{isCurrent:t,isWeekActive:n})=>{const r=useNamespace("date-table"),{t:a}=useLocale(),s=vue.computed(()=>[r.b(),{"is-week-mode":e.selectionMode==="week"}]),o=vue.computed(()=>a("el.datepicker.dateTablePrompt")),i=vue.computed(()=>a("el.datepicker.week"));return{tableKls:s,tableLabel:o,weekLabel:i,getCellClasses:v=>{const d=[];return isNormalDay(v.type)&&!v.disabled?(d.push("available"),v.type==="today"&&d.push("today")):d.push(v.type),t(v)&&d.push("current"),v.inRange&&(isNormalDay(v.type)||e.selectionMode==="week")&&(d.push("in-range"),v.start&&d.push("start-date"),v.end&&d.push("end-date")),v.disabled&&d.push("disabled"),v.selected&&d.push("selected"),v.customClass&&d.push(v.customClass),d.join(" ")},getRowKls:v=>[r.e("row"),{current:n(v)}],t:a}},basicCellProps=buildProps({cell:{type:definePropType(Object)}});var ElDatePickerCell=vue.defineComponent({name:"ElDatePickerCell",props:basicCellProps,setup(e){const t=useNamespace("date-table-cell"),{slots:n}=vue.inject(ROOT_PICKER_INJECTION_KEY);return()=>{const{cell:r}=e;return vue.renderSlot(n,"default",{...r},()=>{var a;return[vue.createVNode("div",{class:t.b()},[vue.createVNode("span",{class:t.e("text")},[(a=r==null?void 0:r.renderText)!=null?a:r==null?void 0:r.text])])]})}}});const _sfc_main$x=vue.defineComponent({__name:"basic-date-table",props:basicDateTableProps,emits:basicDateTableEmits,setup(e,{expose:t,emit:n}){const r=e,{WEEKS:a,rows:s,tbodyRef:o,currentCellRef:i,focus:u,isCurrent:l,isWeekActive:v,isSelectedCell:d,handlePickDate:f,handleMouseUp:c,handleMouseDown:p,handleMouseMove:h,handleFocus:y}=useBasicDateTable(r,n),{tableLabel:m,tableKls:_,weekLabel:b,getCellClasses:g,getRowKls:w,t:k}=useBasicDateTableDOM(r,{isCurrent:l,isWeekActive:v});let A=!1;return vue.onBeforeUnmount(()=>{A=!0}),t({focus:u}),($,M)=>(vue.openBlock(),vue.createElementBlock("table",{"aria-label":vue.unref(m),class:vue.normalizeClass(vue.unref(_)),cellspacing:"0",cellpadding:"0",role:"grid",onClick:vue.unref(f),onMousemove:vue.unref(h),onMousedown:vue.withModifiers(vue.unref(p),["prevent"]),onMouseup:vue.unref(c)},[vue.createElementVNode("tbody",{ref_key:"tbodyRef",ref:o},[vue.createElementVNode("tr",null,[$.showWeekNumber?(vue.openBlock(),vue.createElementBlock("th",{key:0,scope:"col"},vue.toDisplayString(vue.unref(b)),1)):vue.createCommentVNode("v-if",!0),(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(vue.unref(a),(F,O)=>(vue.openBlock(),vue.createElementBlock("th",{key:O,"aria-label":vue.unref(k)("el.datepicker.weeksFull."+F),scope:"col"},vue.toDisplayString(vue.unref(k)("el.datepicker.weeks."+F)),9,["aria-label"]))),128))]),(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(vue.unref(s),(F,O)=>(vue.openBlock(),vue.createElementBlock("tr",{key:O,class:vue.normalizeClass(vue.unref(w)(F[1]))},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(F,(D,j)=>(vue.openBlock(),vue.createElementBlock("td",{key:`${O}.${j}`,ref_for:!0,ref:z=>!vue.unref(A)&&vue.unref(d)(D)&&(i.value=z),class:vue.normalizeClass(vue.unref(g)(D)),"aria-current":D.isCurrent?"date":void 0,"aria-selected":D.isCurrent,tabindex:vue.unref(d)(D)?0:-1,onFocus:vue.unref(y)},[vue.createVNode(vue.unref(ElDatePickerCell),{cell:D},null,8,["cell"])],42,["aria-current","aria-selected","tabindex","onFocus"]))),128))],2))),128))],512)],42,["aria-label","onClick","onMousemove","onMousedown","onMouseup"]))}});var DateTable=_export_sfc(_sfc_main$x,[["__file","basic-date-table.vue"]]);const basicMonthTableProps=buildProps({...datePickerSharedProps,selectionMode:selectionModeWithDefault("month")}),_sfc_main$w=vue.defineComponent({__name:"basic-month-table",props:basicMonthTableProps,emits:["changerange","pick","select"],setup(e,{expose:t,emit:n}){const r=e,a=useNamespace("month-table"),{t:s,lang:o}=useLocale(),i=vue.ref(),u=vue.ref(),l=vue.ref(r.date.locale("en").localeData().monthsShort().map(b=>b.toLowerCase())),v=vue.ref([[],[],[]]),d=vue.ref(),f=vue.ref(),c=vue.computed(()=>{var b,g;const w=v.value,k=dayjs().locale(o.value).startOf("month");for(let A=0;A<3;A++){const $=w[A];for(let M=0;M<4;M++){const F=$[M]||($[M]={row:A,column:M,type:"normal",inRange:!1,start:!1,end:!1,text:-1,disabled:!1});F.type="normal";const O=A*4+M,D=r.date.startOf("year").month(O),j=r.rangeState.endDate||r.maxDate||r.rangeState.selecting&&r.minDate||null;F.inRange=!!(r.minDate&&D.isSameOrAfter(r.minDate,"month")&&j&&D.isSameOrBefore(j,"month"))||!!(r.minDate&&D.isSameOrBefore(r.minDate,"month")&&j&&D.isSameOrAfter(j,"month")),(b=r.minDate)!=null&&b.isSameOrAfter(j)?(F.start=!!(j&&D.isSame(j,"month")),F.end=r.minDate&&D.isSame(r.minDate,"month")):(F.start=!!(r.minDate&&D.isSame(r.minDate,"month")),F.end=!!(j&&D.isSame(j,"month"))),k.isSame(D)&&(F.type="today"),F.text=O,F.disabled=((g=r.disabledDate)==null?void 0:g.call(r,D.toDate()))||!1}}return w}),p=()=>{var b;(b=u.value)==null||b.focus()},h=b=>{const g={},w=r.date.year(),k=new Date,A=b.text;return g.disabled=r.disabledDate?datesInMonth(r.date,w,A,o.value).every(r.disabledDate):!1,g.current=castArray(r.parsedValue).findIndex($=>dayjs.isDayjs($)&&$.year()===w&&$.month()===A)>=0,g.today=k.getFullYear()===w&&k.getMonth()===A,b.inRange&&(g["in-range"]=!0,b.start&&(g["start-date"]=!0),b.end&&(g["end-date"]=!0)),g},y=b=>{const g=r.date.year(),w=b.text;return castArray(r.date).findIndex(k=>k.year()===g&&k.month()===w)>=0},m=b=>{var g;if(!r.rangeState.selecting)return;let w=b.target;if(w.tagName==="SPAN"&&(w=(g=w.parentNode)==null?void 0:g.parentNode),w.tagName==="DIV"&&(w=w.parentNode),w.tagName!=="TD")return;const k=w.parentNode.rowIndex,A=w.cellIndex;c.value[k][A].disabled||(k!==d.value||A!==f.value)&&(d.value=k,f.value=A,n("changerange",{selecting:!0,endDate:r.date.startOf("year").month(k*4+A)}))},_=b=>{var g;const w=(g=b.target)==null?void 0:g.closest("td");if((w==null?void 0:w.tagName)!=="TD"||hasClass(w,"disabled"))return;const k=w.cellIndex,$=w.parentNode.rowIndex*4+k,M=r.date.startOf("year").month($);if(r.selectionMode==="months"){if(b.type==="keydown"){n("pick",castArray(r.parsedValue),!1);return}const F=getValidDateOfMonth(r.date,r.date.year(),$,o.value,r.disabledDate),O=hasClass(w,"current")?castArray(r.parsedValue).filter(D=>(D==null?void 0:D.year())!==F.year()||(D==null?void 0:D.month())!==F.month()):castArray(r.parsedValue).concat([dayjs(F)]);n("pick",O)}else r.selectionMode==="range"?r.rangeState.selecting?(r.minDate&&M>=r.minDate?n("pick",{minDate:r.minDate,maxDate:M}):n("pick",{minDate:M,maxDate:r.minDate}),n("select",!1)):(n("pick",{minDate:M,maxDate:null}),n("select",!0)):n("pick",$)};return vue.watch(()=>r.date,async()=>{var b,g;(b=i.value)!=null&&b.contains(document.activeElement)&&(await vue.nextTick(),(g=u.value)==null||g.focus())}),t({focus:p}),(b,g)=>(vue.openBlock(),vue.createElementBlock("table",{role:"grid","aria-label":vue.unref(s)("el.datepicker.monthTablePrompt"),class:vue.normalizeClass(vue.unref(a).b()),onClick:_,onMousemove:m},[vue.createElementVNode("tbody",{ref_key:"tbodyRef",ref:i},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(vue.unref(c),(w,k)=>(vue.openBlock(),vue.createElementBlock("tr",{key:k},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(w,(A,$)=>(vue.openBlock(),vue.createElementBlock("td",{key:$,ref_for:!0,ref:M=>y(A)&&(u.value=M),class:vue.normalizeClass(h(A)),"aria-selected":`${y(A)}`,"aria-label":vue.unref(s)(`el.datepicker.month${+A.text+1}`),tabindex:y(A)?0:-1,onKeydown:[vue.withKeys(vue.withModifiers(_,["prevent","stop"]),["space"]),vue.withKeys(vue.withModifiers(_,["prevent","stop"]),["enter"])]},[vue.createVNode(vue.unref(ElDatePickerCell),{cell:{...A,renderText:vue.unref(s)("el.datepicker.months."+l.value[A.text])}},null,8,["cell"])],42,["aria-selected","aria-label","tabindex","onKeydown"]))),128))]))),128))],512)],42,["aria-label"]))}});var MonthTable=_export_sfc(_sfc_main$w,[["__file","basic-month-table.vue"]]);const basicYearTableProps=buildProps({...datePickerSharedProps,selectionMode:selectionModeWithDefault("year")}),_sfc_main$v=vue.defineComponent({__name:"basic-year-table",props:basicYearTableProps,emits:["changerange","pick","select"],setup(e,{expose:t,emit:n}){const r=e,a=(g,w)=>{const k=dayjs(String(g)).locale(w).startOf("year"),$=k.endOf("year").dayOfYear();return rangeArr($).map(M=>k.add(M,"day").toDate())},s=useNamespace("year-table"),{t:o,lang:i}=useLocale(),u=vue.ref(),l=vue.ref(),v=vue.computed(()=>Math.floor(r.date.year()/10)*10),d=vue.ref([[],[],[]]),f=vue.ref(),c=vue.ref(),p=vue.computed(()=>{var g;const w=d.value,k=dayjs().locale(i.value).startOf("year");for(let A=0;A<3;A++){const $=w[A];for(let M=0;M<4&&!(A*4+M>=10);M++){let F=$[M];F||(F={row:A,column:M,type:"normal",inRange:!1,start:!1,end:!1,text:-1,disabled:!1}),F.type="normal";const O=A*4+M+v.value,D=dayjs().year(O),j=r.rangeState.endDate||r.maxDate||r.rangeState.selecting&&r.minDate||null;F.inRange=!!(r.minDate&&D.isSameOrAfter(r.minDate,"year")&&j&&D.isSameOrBefore(j,"year"))||!!(r.minDate&&D.isSameOrBefore(r.minDate,"year")&&j&&D.isSameOrAfter(j,"year")),(g=r.minDate)!=null&&g.isSameOrAfter(j)?(F.start=!!(j&&D.isSame(j,"year")),F.end=!!(r.minDate&&D.isSame(r.minDate,"year"))):(F.start=!!(r.minDate&&D.isSame(r.minDate,"year")),F.end=!!(j&&D.isSame(j,"year"))),k.isSame(D)&&(F.type="today"),F.text=O;const T=D.toDate();F.disabled=r.disabledDate&&r.disabledDate(T)||!1,$[M]=F}}return w}),h=()=>{var g;(g=l.value)==null||g.focus()},y=g=>{const w={},k=dayjs().locale(i.value),A=g.text;return w.disabled=r.disabledDate?a(A,i.value).every(r.disabledDate):!1,w.today=k.year()===A,w.current=castArray(r.parsedValue).findIndex($=>$.year()===A)>=0,g.inRange&&(w["in-range"]=!0,g.start&&(w["start-date"]=!0),g.end&&(w["end-date"]=!0)),w},m=g=>{const w=g.text;return castArray(r.date).findIndex(k=>k.year()===w)>=0},_=g=>{var w;const k=(w=g.target)==null?void 0:w.closest("td");if(!k||!k.textContent||hasClass(k,"disabled"))return;const A=k.cellIndex,M=k.parentNode.rowIndex*4+A+v.value,F=dayjs().year(M);if(r.selectionMode==="range")r.rangeState.selecting?(r.minDate&&F>=r.minDate?n("pick",{minDate:r.minDate,maxDate:F}):n("pick",{minDate:F,maxDate:r.minDate}),n("select",!1)):(n("pick",{minDate:F,maxDate:null}),n("select",!0));else if(r.selectionMode==="years"){if(g.type==="keydown"){n("pick",castArray(r.parsedValue),!1);return}const O=getValidDateOfYear(F.startOf("year"),i.value,r.disabledDate),D=hasClass(k,"current")?castArray(r.parsedValue).filter(j=>(j==null?void 0:j.year())!==M):castArray(r.parsedValue).concat([O]);n("pick",D)}else n("pick",M)},b=g=>{var w;if(!r.rangeState.selecting)return;const k=(w=g.target)==null?void 0:w.closest("td");if(!k)return;const A=k.parentNode.rowIndex,$=k.cellIndex;p.value[A][$].disabled||(A!==f.value||$!==c.value)&&(f.value=A,c.value=$,n("changerange",{selecting:!0,endDate:dayjs().year(v.value).add(A*4+$,"year")}))};return vue.watch(()=>r.date,async()=>{var g,w;(g=u.value)!=null&&g.contains(document.activeElement)&&(await vue.nextTick(),(w=l.value)==null||w.focus())}),t({focus:h}),(g,w)=>(vue.openBlock(),vue.createElementBlock("table",{role:"grid","aria-label":vue.unref(o)("el.datepicker.yearTablePrompt"),class:vue.normalizeClass(vue.unref(s).b()),onClick:_,onMousemove:b},[vue.createElementVNode("tbody",{ref_key:"tbodyRef",ref:u},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(vue.unref(p),(k,A)=>(vue.openBlock(),vue.createElementBlock("tr",{key:A},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(k,($,M)=>(vue.openBlock(),vue.createElementBlock("td",{key:`${A}_${M}`,ref_for:!0,ref:F=>m($)&&(l.value=F),class:vue.normalizeClass(["available",y($)]),"aria-selected":m($),"aria-label":String($.text),tabindex:m($)?0:-1,onKeydown:[vue.withKeys(vue.withModifiers(_,["prevent","stop"]),["space"]),vue.withKeys(vue.withModifiers(_,["prevent","stop"]),["enter"])]},[vue.createVNode(vue.unref(ElDatePickerCell),{cell:$},null,8,["cell"])],42,["aria-selected","aria-label","tabindex","onKeydown"]))),128))]))),128))],512)],42,["aria-label"]))}});var YearTable=_export_sfc(_sfc_main$v,[["__file","basic-year-table.vue"]]);const _sfc_main$u=vue.defineComponent({__name:"panel-date-pick",props:panelDatePickProps,emits:["pick","set-picker-option","panel-change"],setup(e,{emit:t}){const n=e,r=(oe,pe,S)=>!0,a=useNamespace("picker-panel"),s=useNamespace("date-picker"),o=vue.useAttrs(),i=vue.useSlots(),{t:u,lang:l}=useLocale(),v=vue.inject(PICKER_BASE_INJECTION_KEY),d=vue.inject(ROOT_PICKER_IS_DEFAULT_FORMAT_INJECTION_KEY),f=vue.inject(TOOLTIP_INJECTION_KEY),{shortcuts:c,disabledDate:p,cellClassName:h,defaultTime:y}=v.props,m=vue.toRef(v.props,"defaultValue"),_=vue.ref(),b=vue.ref(dayjs().locale(l.value)),g=vue.ref(!1);let w=!1;const k=vue.computed(()=>dayjs(y).locale(l.value)),A=vue.computed(()=>b.value.month()),$=vue.computed(()=>b.value.year()),M=vue.ref([]),F=vue.ref(null),O=vue.ref(null),D=oe=>M.value.length>0?r(oe,M.value,n.format||"HH:mm:ss"):!0,j=oe=>y&&!Ue.value&&!g.value&&!w?k.value.year(oe.year()).month(oe.month()).date(oe.date()):Pt.value?oe.millisecond(0):oe.startOf("day"),z=(oe,...pe)=>{if(!oe)t("pick",oe,...pe);else if(isArray$1(oe)){const S=oe.map(j);t("pick",S,...pe)}else t("pick",j(oe),...pe);F.value=null,O.value=null,g.value=!1,w=!1},T=async(oe,pe)=>{if(re.value==="date"){oe=oe;let S=n.parsedValue?n.parsedValue.year(oe.year()).month(oe.month()).date(oe.date()):oe;D(S)||(S=M.value[0][0].year(oe.year()).month(oe.month()).date(oe.date())),b.value=S,z(S,Pt.value||pe),n.type==="datetime"&&(await vue.nextTick(),Bn())}else re.value==="week"?z(oe.date):re.value==="dates"&&z(oe,!0)},L=oe=>{const pe=oe?"add":"subtract";b.value=b.value[pe](1,"month"),$n("month")},ie=oe=>{const pe=b.value,S=oe?"add":"subtract";b.value=x.value==="year"?pe[S](10,"year"):pe[S](1,"year"),$n("year")},x=vue.ref("date"),V=vue.computed(()=>{const oe=u("el.datepicker.year");if(x.value==="year"){const pe=Math.floor($.value/10)*10;return oe?`${pe} ${oe} - ${pe+9} ${oe}`:`${pe} - ${pe+9}`}return`${$.value} ${oe}`}),le=oe=>{const pe=isFunction$1(oe.value)?oe.value():oe.value;if(pe){w=!0,z(dayjs(pe).locale(l.value));return}oe.onClick&&oe.onClick({attrs:o,slots:i,emit:t})},re=vue.computed(()=>{const{type:oe}=n;return["week","month","months","year","years","dates"].includes(oe)?oe:"date"}),Y=vue.computed(()=>re.value==="dates"||re.value==="months"||re.value==="years"),he=vue.computed(()=>re.value==="date"?x.value:re.value),_e=vue.computed(()=>!!c.length),$e=async(oe,pe)=>{re.value==="month"?(b.value=getValidDateOfMonth(b.value,b.value.year(),oe,l.value,p),z(b.value,!1)):re.value==="months"?z(oe,pe??!0):(b.value=getValidDateOfMonth(b.value,b.value.year(),oe,l.value,p),x.value="date",["month","year","date","week"].includes(re.value)&&(z(b.value,!0),await vue.nextTick(),Bn())),$n("month")},Ne=async(oe,pe)=>{if(re.value==="year"){const S=b.value.startOf("year").year(oe);b.value=getValidDateOfYear(S,l.value,p),z(b.value,!1)}else if(re.value==="years")z(oe,pe??!0);else{const S=b.value.year(oe);b.value=getValidDateOfYear(S,l.value,p),x.value="month",["month","year","date","week"].includes(re.value)&&(z(b.value,!0),await vue.nextTick(),Bn())}$n("year")},kt=async oe=>{x.value=oe,await vue.nextTick(),Bn()},Pt=vue.computed(()=>n.type==="datetime"||n.type==="datetimerange"),Oe=vue.computed(()=>{const oe=Pt.value||re.value==="dates",pe=re.value==="years",S=re.value==="months",ae=x.value==="date",de=x.value==="year",Ce=x.value==="month";return oe&&ae||pe&&de||S&&Ce}),ze=vue.computed(()=>p?n.parsedValue?isArray$1(n.parsedValue)?p(n.parsedValue[0].toDate()):p(n.parsedValue.toDate()):!0:!1),At=()=>{if(Y.value)z(n.parsedValue);else{let oe=n.parsedValue;if(!oe){const pe=dayjs(y).locale(l.value),S=xn();oe=pe.year(S.year()).month(S.month()).date(S.date())}b.value=oe,z(oe)}},En=vue.computed(()=>p?p(dayjs().locale(l.value).toDate()):!1),Pn=()=>{const pe=dayjs().locale(l.value).toDate();g.value=!0,(!p||!p(pe))&&D(pe)&&(b.value=dayjs().locale(l.value),z(b.value))},Dn=vue.computed(()=>n.timeFormat||extractTimeFormat(n.format)),Mn=vue.computed(()=>n.dateFormat||extractDateFormat(n.format)),Ue=vue.computed(()=>{if(O.value)return O.value;if(!(!n.parsedValue&&!m.value))return(n.parsedValue||b.value).format(Dn.value)}),xe=vue.computed(()=>{if(F.value)return F.value;if(!(!n.parsedValue&&!m.value))return(n.parsedValue||b.value).format(Mn.value)}),Lt=vue.ref(!1),Et=()=>{Lt.value=!0},wn=()=>{Lt.value=!1},Tn=oe=>({hour:oe.hour(),minute:oe.minute(),second:oe.second(),year:oe.year(),month:oe.month(),date:oe.date()}),kn=(oe,pe,S)=>{const{hour:ae,minute:de,second:Ce}=Tn(oe),Dt=n.parsedValue?n.parsedValue.hour(ae).minute(de).second(Ce):oe;b.value=Dt,z(b.value,!0),S||(Lt.value=pe)},In=oe=>{const pe=dayjs(oe,Dn.value).locale(l.value);if(pe.isValid()&&D(pe)){const{year:S,month:ae,date:de}=Tn(b.value);b.value=pe.year(S).month(ae).date(de),O.value=null,Lt.value=!1,z(b.value,!0)}},qe=oe=>{const pe=correctlyParseUserInput(oe,Mn.value,l.value,d);if(pe.isValid()){if(p&&p(pe.toDate()))return;const{hour:S,minute:ae,second:de}=Tn(b.value);b.value=pe.hour(S).minute(ae).second(de),F.value=null,z(b.value,!0)}},hn=oe=>dayjs.isDayjs(oe)&&oe.isValid()&&(p?!p(oe.toDate()):!0),An=oe=>isArray$1(oe)?oe.map(pe=>pe.format(n.format)):oe.format(n.format),Nn=oe=>correctlyParseUserInput(oe,n.format,l.value,d),xn=()=>{const oe=dayjs(m.value).locale(l.value);if(!m.value){const pe=k.value;return dayjs().hour(pe.hour()).minute(pe.minute()).second(pe.second()).locale(l.value)}return oe},Bn=()=>{var oe;["week","month","year","date"].includes(re.value)&&((oe=_.value)==null||oe.focus())},Rn=()=>{Bn(),re.value==="week"&&Fn(EVENT_CODE.down)},qn=oe=>{const{code:pe}=oe;[EVENT_CODE.up,EVENT_CODE.down,EVENT_CODE.left,EVENT_CODE.right,EVENT_CODE.home,EVENT_CODE.end,EVENT_CODE.pageUp,EVENT_CODE.pageDown].includes(pe)&&(Fn(pe),oe.stopPropagation(),oe.preventDefault()),[EVENT_CODE.enter,EVENT_CODE.space,EVENT_CODE.numpadEnter].includes(pe)&&F.value===null&&O.value===null&&(oe.preventDefault(),z(b.value,!1))},Fn=oe=>{var pe;const{up:S,down:ae,left:de,right:Ce,home:Dt,end:Sn,pageUp:Cn,pageDown:bn}=EVENT_CODE,jt={year:{[S]:-4,[ae]:4,[de]:-1,[Ce]:1,offset:(ue,Fe)=>ue.setFullYear(ue.getFullYear()+Fe)},month:{[S]:-4,[ae]:4,[de]:-1,[Ce]:1,offset:(ue,Fe)=>ue.setMonth(ue.getMonth()+Fe)},week:{[S]:-1,[ae]:1,[de]:-1,[Ce]:1,offset:(ue,Fe)=>ue.setDate(ue.getDate()+Fe*7)},date:{[S]:-7,[ae]:7,[de]:-1,[Ce]:1,[Dt]:ue=>-ue.getDay(),[Sn]:ue=>-ue.getDay()+6,[Cn]:ue=>-new Date(ue.getFullYear(),ue.getMonth(),0).getDate(),[bn]:ue=>new Date(ue.getFullYear(),ue.getMonth()+1,0).getDate(),offset:(ue,Fe)=>ue.setDate(ue.getDate()+Fe)}},On=b.value.toDate();for(;Math.abs(b.value.diff(On,"year",!0))<1;){const ue=jt[he.value];if(!ue)return;if(ue.offset(On,isFunction$1(ue[oe])?ue[oe](On):(pe=ue[oe])!=null?pe:0),p&&p(On))break;const Fe=dayjs(On).locale(l.value);b.value=Fe,t("pick",Fe,!0);break}},$n=oe=>{t("panel-change",b.value.toDate(),oe,x.value)};return vue.watch(()=>re.value,oe=>{if(["month","year"].includes(oe)){x.value=oe;return}else if(oe==="years"){x.value="year";return}else if(oe==="months"){x.value="month";return}x.value="date"},{immediate:!0}),vue.watch(()=>x.value,()=>{f==null||f.updatePopper()}),vue.watch(()=>m.value,oe=>{oe&&(b.value=xn())},{immediate:!0}),vue.watch(()=>n.parsedValue,oe=>{if(oe){if(Y.value||isArray$1(oe))return;b.value=oe}else b.value=xn()},{immediate:!0}),t("set-picker-option",["isValidValue",hn]),t("set-picker-option",["formatToString",An]),t("set-picker-option",["parseUserInput",Nn]),t("set-picker-option",["handleFocusPicker",Rn]),(oe,pe)=>(vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass([vue.unref(a).b(),vue.unref(s).b(),{"has-sidebar":oe.$slots.sidebar||vue.unref(_e),"has-time":vue.unref(Pt)}])},[vue.createElementVNode("div",{class:vue.normalizeClass(vue.unref(a).e("body-wrapper"))},[vue.renderSlot(oe.$slots,"sidebar",{class:vue.normalizeClass(vue.unref(a).e("sidebar"))}),vue.unref(_e)?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:vue.normalizeClass(vue.unref(a).e("sidebar"))},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(vue.unref(c),(S,ae)=>(vue.openBlock(),vue.createElementBlock("button",{key:ae,type:"button",class:vue.normalizeClass(vue.unref(a).e("shortcut")),onClick:de=>le(S)},vue.toDisplayString(S.text),11,["onClick"]))),128))],2)):vue.createCommentVNode("v-if",!0),vue.createElementVNode("div",{class:vue.normalizeClass(vue.unref(a).e("body"))},[vue.unref(Pt)?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:vue.normalizeClass(vue.unref(s).e("time-header"))},[vue.createElementVNode("span",{class:vue.normalizeClass(vue.unref(s).e("editor-wrap"))},[vue.createVNode(vue.unref(ElInput),{placeholder:vue.unref(u)("el.datepicker.selectDate"),"model-value":vue.unref(xe),size:"small","validate-event":!1,onInput:S=>F.value=S,onChange:qe},null,8,["placeholder","model-value","onInput"])],2),vue.withDirectives((vue.openBlock(),vue.createElementBlock("span",{class:vue.normalizeClass(vue.unref(s).e("editor-wrap"))},[vue.createVNode(vue.unref(ElInput),{placeholder:vue.unref(u)("el.datepicker.selectTime"),"model-value":vue.unref(Ue),size:"small","validate-event":!1,onFocus:Et,onInput:S=>O.value=S,onChange:In},null,8,["placeholder","model-value","onInput"]),vue.createVNode(vue.unref(TimePickPanel),{visible:Lt.value,format:vue.unref(Dn),"parsed-value":b.value,onPick:kn},null,8,["visible","format","parsed-value"])],2)),[[vue.unref(ClickOutside),wn]])],2)):vue.createCommentVNode("v-if",!0),vue.withDirectives(vue.createElementVNode("div",{class:vue.normalizeClass([vue.unref(s).e("header"),(x.value==="year"||x.value==="month")&&vue.unref(s).e("header--bordered")])},[vue.createElementVNode("span",{class:vue.normalizeClass(vue.unref(s).e("prev-btn"))},[vue.createElementVNode("button",{type:"button","aria-label":vue.unref(u)("el.datepicker.prevYear"),class:vue.normalizeClass(["d-arrow-left",vue.unref(a).e("icon-btn")]),onClick:S=>ie(!1)},[vue.renderSlot(oe.$slots,"prev-year",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(d_arrow_left_default))]),_:1})])],10,["aria-label","onClick"]),vue.withDirectives(vue.createElementVNode("button",{type:"button","aria-label":vue.unref(u)("el.datepicker.prevMonth"),class:vue.normalizeClass([vue.unref(a).e("icon-btn"),"arrow-left"]),onClick:S=>L(!1)},[vue.renderSlot(oe.$slots,"prev-month",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(arrow_left_default))]),_:1})])],10,["aria-label","onClick"]),[[vue.vShow,x.value==="date"]])],2),vue.createElementVNode("span",{role:"button",class:vue.normalizeClass(vue.unref(s).e("header-label")),"aria-live":"polite",tabindex:"0",onKeydown:vue.withKeys(S=>kt("year"),["enter"]),onClick:S=>kt("year")},vue.toDisplayString(vue.unref(V)),43,["onKeydown","onClick"]),vue.withDirectives(vue.createElementVNode("span",{role:"button","aria-live":"polite",tabindex:"0",class:vue.normalizeClass([vue.unref(s).e("header-label"),{active:x.value==="month"}]),onKeydown:vue.withKeys(S=>kt("month"),["enter"]),onClick:S=>kt("month")},vue.toDisplayString(vue.unref(u)(`el.datepicker.month${vue.unref(A)+1}`)),43,["onKeydown","onClick"]),[[vue.vShow,x.value==="date"]]),vue.createElementVNode("span",{class:vue.normalizeClass(vue.unref(s).e("next-btn"))},[vue.withDirectives(vue.createElementVNode("button",{type:"button","aria-label":vue.unref(u)("el.datepicker.nextMonth"),class:vue.normalizeClass([vue.unref(a).e("icon-btn"),"arrow-right"]),onClick:S=>L(!0)},[vue.renderSlot(oe.$slots,"next-month",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(arrow_right_default))]),_:1})])],10,["aria-label","onClick"]),[[vue.vShow,x.value==="date"]]),vue.createElementVNode("button",{type:"button","aria-label":vue.unref(u)("el.datepicker.nextYear"),class:vue.normalizeClass([vue.unref(a).e("icon-btn"),"d-arrow-right"]),onClick:S=>ie(!0)},[vue.renderSlot(oe.$slots,"next-year",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(d_arrow_right_default))]),_:1})])],10,["aria-label","onClick"])],2)],2),[[vue.vShow,x.value!=="time"]]),vue.createElementVNode("div",{class:vue.normalizeClass(vue.unref(a).e("content")),onKeydown:qn},[x.value==="date"?(vue.openBlock(),vue.createBlock(DateTable,{key:0,ref_key:"currentViewRef",ref:_,"selection-mode":vue.unref(re),date:b.value,"parsed-value":oe.parsedValue,"disabled-date":vue.unref(p),"cell-class-name":vue.unref(h),onPick:T},null,8,["selection-mode","date","parsed-value","disabled-date","cell-class-name"])):vue.createCommentVNode("v-if",!0),x.value==="year"?(vue.openBlock(),vue.createBlock(YearTable,{key:1,ref_key:"currentViewRef",ref:_,"selection-mode":vue.unref(re),date:b.value,"disabled-date":vue.unref(p),"parsed-value":oe.parsedValue,onPick:Ne},null,8,["selection-mode","date","disabled-date","parsed-value"])):vue.createCommentVNode("v-if",!0),x.value==="month"?(vue.openBlock(),vue.createBlock(MonthTable,{key:2,ref_key:"currentViewRef",ref:_,"selection-mode":vue.unref(re),date:b.value,"parsed-value":oe.parsedValue,"disabled-date":vue.unref(p),onPick:$e},null,8,["selection-mode","date","parsed-value","disabled-date"])):vue.createCommentVNode("v-if",!0)],34)],2)],2),vue.withDirectives(vue.createElementVNode("div",{class:vue.normalizeClass(vue.unref(a).e("footer"))},[vue.withDirectives(vue.createVNode(vue.unref(ElButton),{text:"",size:"small",class:vue.normalizeClass(vue.unref(a).e("link-btn")),disabled:vue.unref(En),onClick:Pn},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(vue.unref(u)("el.datepicker.now")),1)]),_:1},8,["class","disabled"]),[[vue.vShow,!vue.unref(Y)&&oe.showNow]]),vue.createVNode(vue.unref(ElButton),{plain:"",size:"small",class:vue.normalizeClass(vue.unref(a).e("link-btn")),disabled:vue.unref(ze),onClick:At},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(vue.unref(u)("el.datepicker.confirm")),1)]),_:1},8,["class","disabled"])],2),[[vue.vShow,vue.unref(Oe)]])],2))}});var DatePickPanel=_export_sfc(_sfc_main$u,[["__file","panel-date-pick.vue"]]);const panelDateRangeProps=buildProps({...panelSharedProps,...panelRangeSharedProps}),useShortcut=e=>{const{emit:t}=vue.getCurrentInstance(),n=vue.useAttrs(),r=vue.useSlots();return s=>{const o=isFunction$1(s.value)?s.value():s.value;if(o){t("pick",[dayjs(o[0]).locale(e.value),dayjs(o[1]).locale(e.value)]);return}s.onClick&&s.onClick({attrs:n,slots:r,emit:t})}},useRangePicker=(e,{defaultValue:t,defaultTime:n,leftDate:r,rightDate:a,step:s,unit:o,onParsedValueChanged:i})=>{const{emit:u}=vue.getCurrentInstance(),{pickerNs:l}=vue.inject(ROOT_PICKER_INJECTION_KEY),v=useNamespace("date-range-picker"),{t:d,lang:f}=useLocale(),c=useShortcut(f),p=vue.ref(),h=vue.ref(),y=vue.ref({endDate:null,selecting:!1}),m=k=>{y.value=k},_=(k=!1)=>{const A=vue.unref(p),$=vue.unref(h);isValidRange([A,$])&&u("pick",[A,$],k)},b=k=>{y.value.selecting=k,k||(y.value.endDate=null)},g=k=>{if(isArray$1(k)&&k.length===2){const[A,$]=k;p.value=A,r.value=A,h.value=$,i(vue.unref(p),vue.unref(h))}else w()},w=()=>{let[k,A]=getDefaultValue(vue.unref(t),{lang:vue.unref(f),step:s,unit:o,unlinkPanels:e.unlinkPanels});const $=F=>F.diff(F.startOf("d"),"ms"),M=vue.unref(n);if(M){let F=0,O=0;if(isArray$1(M)){const[D,j]=M.map(dayjs);F=$(D),O=$(j)}else{const D=$(dayjs(M));F=D,O=D}k=k.startOf("d").add(F,"ms"),A=A.startOf("d").add(O,"ms")}p.value=void 0,h.value=void 0,r.value=k,a.value=A};return vue.watch(t,k=>{k&&w()},{immediate:!0}),vue.watch(()=>e.parsedValue,g,{immediate:!0}),{minDate:p,maxDate:h,rangeState:y,lang:f,ppNs:l,drpNs:v,handleChangeRange:m,handleRangeConfirm:_,handleShortcutClick:c,onSelect:b,onReset:g,t:d}},usePanelDateRange=(e,t,n,r)=>{const a=vue.ref("date"),s=vue.ref(),o=vue.ref("date"),i=vue.ref(),u=vue.inject(PICKER_BASE_INJECTION_KEY),{disabledDate:l}=u.props,{t:v,lang:d}=useLocale(),f=vue.computed(()=>n.value.year()),c=vue.computed(()=>n.value.month()),p=vue.computed(()=>r.value.year()),h=vue.computed(()=>r.value.month());function y(k,A){const $=v("el.datepicker.year");if(k.value==="year"){const M=Math.floor(A.value/10)*10;return $?`${M} ${$} - ${M+9} ${$}`:`${M} - ${M+9}`}return`${A.value} ${$}`}function m(k){k==null||k.focus()}async function _(k,A){const $=k==="left"?a:o,M=k==="left"?s:i;$.value=A,await vue.nextTick(),m(M.value)}async function b(k,A,$){const M=A==="left",F=M?n:r,O=M?r:n,D=M?a:o,j=M?s:i;if(k==="year"){const z=F.value.year($);F.value=getValidDateOfYear(z,d.value,l)}k==="month"&&(F.value=getValidDateOfMonth(F.value,F.value.year(),$,d.value,l)),e.unlinkPanels||(O.value=A==="left"?F.value.add(1,"month"):F.value.subtract(1,"month")),D.value=k==="year"?"month":"date",await vue.nextTick(),m(j.value),g(k)}function g(k){t("panel-change",[n.value.toDate(),r.value.toDate()],k)}function w(k,A,$){const M=$?"add":"subtract";return k==="year"?A[M](10,"year"):A[M](1,"year")}return{leftCurrentView:a,rightCurrentView:o,leftCurrentViewRef:s,rightCurrentViewRef:i,leftYear:f,rightYear:p,leftMonth:c,rightMonth:h,leftYearLabel:vue.computed(()=>y(a,f)),rightYearLabel:vue.computed(()=>y(o,p)),showLeftPicker:k=>_("left",k),showRightPicker:k=>_("right",k),handleLeftYearPick:k=>b("year","left",k),handleRightYearPick:k=>b("year","right",k),handleLeftMonthPick:k=>b("month","left",k),handleRightMonthPick:k=>b("month","right",k),handlePanelChange:g,adjustDateByView:w}},unit$2="month",_sfc_main$t=vue.defineComponent({__name:"panel-date-range",props:panelDateRangeProps,emits:["pick","set-picker-option","calendar-change","panel-change"],setup(e,{emit:t}){const n=e,r=vue.inject(PICKER_BASE_INJECTION_KEY),a=vue.inject(ROOT_PICKER_IS_DEFAULT_FORMAT_INJECTION_KEY),{disabledDate:s,cellClassName:o,defaultTime:i,clearable:u}=r.props,l=vue.toRef(r.props,"format"),v=vue.toRef(r.props,"shortcuts"),d=vue.toRef(r.props,"defaultValue"),{lang:f}=useLocale(),c=vue.ref(dayjs().locale(f.value)),p=vue.ref(dayjs().locale(f.value).add(1,unit$2)),{minDate:h,maxDate:y,rangeState:m,ppNs:_,drpNs:b,handleChangeRange:g,handleRangeConfirm:w,handleShortcutClick:k,onSelect:A,onReset:$,t:M}=useRangePicker(n,{defaultValue:d,defaultTime:i,leftDate:c,rightDate:p,unit:unit$2,onParsedValueChanged:On});vue.watch(()=>n.visible,ue=>{!ue&&m.value.selecting&&($(n.parsedValue),A(!1))});const F=vue.ref({min:null,max:null}),O=vue.ref({min:null,max:null}),{leftCurrentView:D,rightCurrentView:j,leftCurrentViewRef:z,rightCurrentViewRef:T,leftYear:L,rightYear:ie,leftMonth:x,rightMonth:V,leftYearLabel:le,rightYearLabel:re,showLeftPicker:Y,showRightPicker:he,handleLeftYearPick:_e,handleRightYearPick:$e,handleLeftMonthPick:Ne,handleRightMonthPick:kt,handlePanelChange:Pt,adjustDateByView:Oe}=usePanelDateRange(n,t,c,p),ze=vue.computed(()=>!!v.value.length),At=vue.computed(()=>F.value.min!==null?F.value.min:h.value?h.value.format(Ue.value):""),En=vue.computed(()=>F.value.max!==null?F.value.max:y.value||h.value?(y.value||h.value).format(Ue.value):""),Pn=vue.computed(()=>O.value.min!==null?O.value.min:h.value?h.value.format(Mn.value):""),Dn=vue.computed(()=>O.value.max!==null?O.value.max:y.value||h.value?(y.value||h.value).format(Mn.value):""),Mn=vue.computed(()=>n.timeFormat||extractTimeFormat(l.value)),Ue=vue.computed(()=>n.dateFormat||extractDateFormat(l.value)),xe=ue=>isValidRange(ue)&&(s?!s(ue[0].toDate())&&!s(ue[1].toDate()):!0),Lt=()=>{c.value=Oe(D.value,c.value,!1),n.unlinkPanels||(p.value=c.value.add(1,"month")),Pt("year")},Et=()=>{c.value=c.value.subtract(1,"month"),n.unlinkPanels||(p.value=c.value.add(1,"month")),Pt("month")},wn=()=>{n.unlinkPanels?p.value=Oe(j.value,p.value,!0):(c.value=Oe(j.value,c.value,!0),p.value=c.value.add(1,"month")),Pt("year")},Tn=()=>{n.unlinkPanels?p.value=p.value.add(1,"month"):(c.value=c.value.add(1,"month"),p.value=c.value.add(1,"month")),Pt("month")},kn=()=>{c.value=Oe(D.value,c.value,!0),Pt("year")},In=()=>{c.value=c.value.add(1,"month"),Pt("month")},qe=()=>{p.value=Oe(j.value,p.value,!1),Pt("year")},hn=()=>{p.value=p.value.subtract(1,"month"),Pt("month")},An=vue.computed(()=>{const ue=(x.value+1)%12,Fe=x.value+1>=12?1:0;return n.unlinkPanels&&new Date(L.value+Fe,ue)<new Date(ie.value,V.value)}),Nn=vue.computed(()=>n.unlinkPanels&&ie.value*12+V.value-(L.value*12+x.value+1)>=12),xn=vue.computed(()=>!(h.value&&y.value&&!m.value.selecting&&isValidRange([h.value,y.value]))),Bn=vue.computed(()=>n.type==="datetime"||n.type==="datetimerange"),Rn=(ue,Fe)=>{if(ue)return i?dayjs(i[Fe]||i).locale(f.value).year(ue.year()).month(ue.month()).date(ue.date()):ue},qn=(ue,Fe=!0)=>{const Ve=ue.minDate,_n=ue.maxDate,Ln=Rn(Ve,0),jn=Rn(_n,1);y.value===jn&&h.value===Ln||(t("calendar-change",[Ve.toDate(),_n&&_n.toDate()]),y.value=jn,h.value=Ln,!(!Fe||Bn.value)&&w())},Fn=vue.ref(!1),$n=vue.ref(!1),oe=()=>{Fn.value=!1},pe=()=>{$n.value=!1},S=(ue,Fe)=>{F.value[Fe]=ue;const Ve=dayjs(ue,Ue.value).locale(f.value);if(Ve.isValid()){if(s&&s(Ve.toDate()))return;Fe==="min"?(c.value=Ve,h.value=(h.value||c.value).year(Ve.year()).month(Ve.month()).date(Ve.date()),!n.unlinkPanels&&(!y.value||y.value.isBefore(h.value))&&(p.value=Ve.add(1,"month"),y.value=h.value.add(1,"month"))):(p.value=Ve,y.value=(y.value||p.value).year(Ve.year()).month(Ve.month()).date(Ve.date()),!n.unlinkPanels&&(!h.value||h.value.isAfter(y.value))&&(c.value=Ve.subtract(1,"month"),h.value=y.value.subtract(1,"month")))}},ae=(ue,Fe)=>{F.value[Fe]=null},de=(ue,Fe)=>{O.value[Fe]=ue;const Ve=dayjs(ue,Mn.value).locale(f.value);Ve.isValid()&&(Fe==="min"?(Fn.value=!0,h.value=(h.value||c.value).hour(Ve.hour()).minute(Ve.minute()).second(Ve.second())):($n.value=!0,y.value=(y.value||p.value).hour(Ve.hour()).minute(Ve.minute()).second(Ve.second()),p.value=y.value))},Ce=(ue,Fe)=>{O.value[Fe]=null,Fe==="min"?(c.value=h.value,Fn.value=!1,(!y.value||y.value.isBefore(h.value))&&(y.value=h.value)):(p.value=y.value,$n.value=!1,y.value&&y.value.isBefore(h.value)&&(h.value=y.value))},Dt=(ue,Fe,Ve)=>{O.value.min||(ue&&(c.value=ue,h.value=(h.value||c.value).hour(ue.hour()).minute(ue.minute()).second(ue.second())),Ve||(Fn.value=Fe),(!y.value||y.value.isBefore(h.value))&&(y.value=h.value,p.value=ue))},Sn=(ue,Fe,Ve)=>{O.value.max||(ue&&(p.value=ue,y.value=(y.value||p.value).hour(ue.hour()).minute(ue.minute()).second(ue.second())),Ve||($n.value=Fe),y.value&&y.value.isBefore(h.value)&&(h.value=y.value))},Cn=()=>{c.value=getDefaultValue(vue.unref(d),{lang:vue.unref(f),unit:"month",unlinkPanels:n.unlinkPanels})[0],p.value=c.value.add(1,"month"),y.value=void 0,h.value=void 0,t("pick",null)},bn=ue=>isArray$1(ue)?ue.map(Fe=>Fe.format(l.value)):ue.format(l.value),jt=ue=>correctlyParseUserInput(ue,l.value,f.value,a);function On(ue,Fe){if(n.unlinkPanels&&Fe){const Ve=(ue==null?void 0:ue.year())||0,_n=(ue==null?void 0:ue.month())||0,Ln=Fe.year(),jn=Fe.month();p.value=Ve===Ln&&_n===jn?Fe.add(1,unit$2):Fe}else p.value=c.value.add(1,unit$2),Fe&&(p.value=p.value.hour(Fe.hour()).minute(Fe.minute()).second(Fe.second()))}return t("set-picker-option",["isValidValue",xe]),t("set-picker-option",["parseUserInput",jt]),t("set-picker-option",["formatToString",bn]),t("set-picker-option",["handleClear",Cn]),(ue,Fe)=>(vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass([vue.unref(_).b(),vue.unref(b).b(),{"has-sidebar":ue.$slots.sidebar||vue.unref(ze),"has-time":vue.unref(Bn)}])},[vue.createElementVNode("div",{class:vue.normalizeClass(vue.unref(_).e("body-wrapper"))},[vue.renderSlot(ue.$slots,"sidebar",{class:vue.normalizeClass(vue.unref(_).e("sidebar"))}),vue.unref(ze)?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:vue.normalizeClass(vue.unref(_).e("sidebar"))},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(vue.unref(v),(Ve,_n)=>(vue.openBlock(),vue.createElementBlock("button",{key:_n,type:"button",class:vue.normalizeClass(vue.unref(_).e("shortcut")),onClick:Ln=>vue.unref(k)(Ve)},vue.toDisplayString(Ve.text),11,["onClick"]))),128))],2)):vue.createCommentVNode("v-if",!0),vue.createElementVNode("div",{class:vue.normalizeClass(vue.unref(_).e("body"))},[vue.unref(Bn)?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:vue.normalizeClass(vue.unref(b).e("time-header"))},[vue.createElementVNode("span",{class:vue.normalizeClass(vue.unref(b).e("editors-wrap"))},[vue.createElementVNode("span",{class:vue.normalizeClass(vue.unref(b).e("time-picker-wrap"))},[vue.createVNode(vue.unref(ElInput),{size:"small",disabled:vue.unref(m).selecting,placeholder:vue.unref(M)("el.datepicker.startDate"),class:vue.normalizeClass(vue.unref(b).e("editor")),"model-value":vue.unref(At),"validate-event":!1,onInput:Ve=>S(Ve,"min"),onChange:Ve=>ae(Ve,"min")},null,8,["disabled","placeholder","class","model-value","onInput","onChange"])],2),vue.withDirectives((vue.openBlock(),vue.createElementBlock("span",{class:vue.normalizeClass(vue.unref(b).e("time-picker-wrap"))},[vue.createVNode(vue.unref(ElInput),{size:"small",class:vue.normalizeClass(vue.unref(b).e("editor")),disabled:vue.unref(m).selecting,placeholder:vue.unref(M)("el.datepicker.startTime"),"model-value":vue.unref(Pn),"validate-event":!1,onFocus:Ve=>Fn.value=!0,onInput:Ve=>de(Ve,"min"),onChange:Ve=>Ce(Ve,"min")},null,8,["class","disabled","placeholder","model-value","onFocus","onInput","onChange"]),vue.createVNode(vue.unref(TimePickPanel),{visible:Fn.value,format:vue.unref(Mn),"datetime-role":"start","parsed-value":c.value,onPick:Dt},null,8,["visible","format","parsed-value"])],2)),[[vue.unref(ClickOutside),oe]])],2),vue.createElementVNode("span",null,[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(arrow_right_default))]),_:1})]),vue.createElementVNode("span",{class:vue.normalizeClass([vue.unref(b).e("editors-wrap"),"is-right"])},[vue.createElementVNode("span",{class:vue.normalizeClass(vue.unref(b).e("time-picker-wrap"))},[vue.createVNode(vue.unref(ElInput),{size:"small",class:vue.normalizeClass(vue.unref(b).e("editor")),disabled:vue.unref(m).selecting,placeholder:vue.unref(M)("el.datepicker.endDate"),"model-value":vue.unref(En),readonly:!vue.unref(h),"validate-event":!1,onInput:Ve=>S(Ve,"max"),onChange:Ve=>ae(Ve,"max")},null,8,["class","disabled","placeholder","model-value","readonly","onInput","onChange"])],2),vue.withDirectives((vue.openBlock(),vue.createElementBlock("span",{class:vue.normalizeClass(vue.unref(b).e("time-picker-wrap"))},[vue.createVNode(vue.unref(ElInput),{size:"small",class:vue.normalizeClass(vue.unref(b).e("editor")),disabled:vue.unref(m).selecting,placeholder:vue.unref(M)("el.datepicker.endTime"),"model-value":vue.unref(Dn),readonly:!vue.unref(h),"validate-event":!1,onFocus:Ve=>vue.unref(h)&&($n.value=!0),onInput:Ve=>de(Ve,"max"),onChange:Ve=>Ce(Ve,"max")},null,8,["class","disabled","placeholder","model-value","readonly","onFocus","onInput","onChange"]),vue.createVNode(vue.unref(TimePickPanel),{"datetime-role":"end",visible:$n.value,format:vue.unref(Mn),"parsed-value":p.value,onPick:Sn},null,8,["visible","format","parsed-value"])],2)),[[vue.unref(ClickOutside),pe]])],2)],2)):vue.createCommentVNode("v-if",!0),vue.createElementVNode("div",{class:vue.normalizeClass([[vue.unref(_).e("content"),vue.unref(b).e("content")],"is-left"])},[vue.createElementVNode("div",{class:vue.normalizeClass(vue.unref(b).e("header"))},[vue.createElementVNode("button",{type:"button",class:vue.normalizeClass([vue.unref(_).e("icon-btn"),"d-arrow-left"]),"aria-label":vue.unref(M)("el.datepicker.prevYear"),onClick:Lt},[vue.renderSlot(ue.$slots,"prev-year",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(d_arrow_left_default))]),_:1})])],10,["aria-label"]),vue.withDirectives(vue.createElementVNode("button",{type:"button",class:vue.normalizeClass([vue.unref(_).e("icon-btn"),"arrow-left"]),"aria-label":vue.unref(M)("el.datepicker.prevMonth"),onClick:Et},[vue.renderSlot(ue.$slots,"prev-month",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(arrow_left_default))]),_:1})])],10,["aria-label"]),[[vue.vShow,vue.unref(D)==="date"]]),ue.unlinkPanels?(vue.openBlock(),vue.createElementBlock("button",{key:0,type:"button",disabled:!vue.unref(Nn),class:vue.normalizeClass([[vue.unref(_).e("icon-btn"),{"is-disabled":!vue.unref(Nn)}],"d-arrow-right"]),"aria-label":vue.unref(M)("el.datepicker.nextYear"),onClick:kn},[vue.renderSlot(ue.$slots,"next-year",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(d_arrow_right_default))]),_:1})])],10,["disabled","aria-label"])):vue.createCommentVNode("v-if",!0),ue.unlinkPanels&&vue.unref(D)==="date"?(vue.openBlock(),vue.createElementBlock("button",{key:1,type:"button",disabled:!vue.unref(An),class:vue.normalizeClass([[vue.unref(_).e("icon-btn"),{"is-disabled":!vue.unref(An)}],"arrow-right"]),"aria-label":vue.unref(M)("el.datepicker.nextMonth"),onClick:In},[vue.renderSlot(ue.$slots,"next-month",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(arrow_right_default))]),_:1})])],10,["disabled","aria-label"])):vue.createCommentVNode("v-if",!0),vue.createElementVNode("div",null,[vue.createElementVNode("span",{role:"button",class:vue.normalizeClass(vue.unref(b).e("header-label")),"aria-live":"polite",tabindex:"0",onKeydown:vue.withKeys(Ve=>vue.unref(Y)("year"),["enter"]),onClick:Ve=>vue.unref(Y)("year")},vue.toDisplayString(vue.unref(le)),43,["onKeydown","onClick"]),vue.withDirectives(vue.createElementVNode("span",{role:"button","aria-live":"polite",tabindex:"0",class:vue.normalizeClass([vue.unref(b).e("header-label"),{active:vue.unref(D)==="month"}]),onKeydown:vue.withKeys(Ve=>vue.unref(Y)("month"),["enter"]),onClick:Ve=>vue.unref(Y)("month")},vue.toDisplayString(vue.unref(M)(`el.datepicker.month${c.value.month()+1}`)),43,["onKeydown","onClick"]),[[vue.vShow,vue.unref(D)==="date"]])])],2),vue.unref(D)==="date"?(vue.openBlock(),vue.createBlock(DateTable,{key:0,ref_key:"leftCurrentViewRef",ref:z,"selection-mode":"range",date:c.value,"min-date":vue.unref(h),"max-date":vue.unref(y),"range-state":vue.unref(m),"disabled-date":vue.unref(s),"cell-class-name":vue.unref(o),onChangerange:vue.unref(g),onPick:qn,onSelect:vue.unref(A)},null,8,["date","min-date","max-date","range-state","disabled-date","cell-class-name","onChangerange","onSelect"])):vue.createCommentVNode("v-if",!0),vue.unref(D)==="year"?(vue.openBlock(),vue.createBlock(YearTable,{key:1,ref_key:"leftCurrentViewRef",ref:z,"selection-mode":"year",date:c.value,"disabled-date":vue.unref(s),"parsed-value":ue.parsedValue,onPick:vue.unref(_e)},null,8,["date","disabled-date","parsed-value","onPick"])):vue.createCommentVNode("v-if",!0),vue.unref(D)==="month"?(vue.openBlock(),vue.createBlock(MonthTable,{key:2,ref_key:"leftCurrentViewRef",ref:z,"selection-mode":"month",date:c.value,"parsed-value":ue.parsedValue,"disabled-date":vue.unref(s),onPick:vue.unref(Ne)},null,8,["date","parsed-value","disabled-date","onPick"])):vue.createCommentVNode("v-if",!0)],2),vue.createElementVNode("div",{class:vue.normalizeClass([[vue.unref(_).e("content"),vue.unref(b).e("content")],"is-right"])},[vue.createElementVNode("div",{class:vue.normalizeClass(vue.unref(b).e("header"))},[ue.unlinkPanels?(vue.openBlock(),vue.createElementBlock("button",{key:0,type:"button",disabled:!vue.unref(Nn),class:vue.normalizeClass([[vue.unref(_).e("icon-btn"),{"is-disabled":!vue.unref(Nn)}],"d-arrow-left"]),"aria-label":vue.unref(M)("el.datepicker.prevYear"),onClick:qe},[vue.renderSlot(ue.$slots,"prev-year",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(d_arrow_left_default))]),_:1})])],10,["disabled","aria-label"])):vue.createCommentVNode("v-if",!0),ue.unlinkPanels&&vue.unref(j)==="date"?(vue.openBlock(),vue.createElementBlock("button",{key:1,type:"button",disabled:!vue.unref(An),class:vue.normalizeClass([[vue.unref(_).e("icon-btn"),{"is-disabled":!vue.unref(An)}],"arrow-left"]),"aria-label":vue.unref(M)("el.datepicker.prevMonth"),onClick:hn},[vue.renderSlot(ue.$slots,"prev-month",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(arrow_left_default))]),_:1})])],10,["disabled","aria-label"])):vue.createCommentVNode("v-if",!0),vue.createElementVNode("button",{type:"button","aria-label":vue.unref(M)("el.datepicker.nextYear"),class:vue.normalizeClass([vue.unref(_).e("icon-btn"),"d-arrow-right"]),onClick:wn},[vue.renderSlot(ue.$slots,"next-year",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(d_arrow_right_default))]),_:1})])],10,["aria-label"]),vue.withDirectives(vue.createElementVNode("button",{type:"button",class:vue.normalizeClass([vue.unref(_).e("icon-btn"),"arrow-right"]),"aria-label":vue.unref(M)("el.datepicker.nextMonth"),onClick:Tn},[vue.renderSlot(ue.$slots,"next-month",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(arrow_right_default))]),_:1})])],10,["aria-label"]),[[vue.vShow,vue.unref(j)==="date"]]),vue.createElementVNode("div",null,[vue.createElementVNode("span",{role:"button",class:vue.normalizeClass(vue.unref(b).e("header-label")),"aria-live":"polite",tabindex:"0",onKeydown:vue.withKeys(Ve=>vue.unref(he)("year"),["enter"]),onClick:Ve=>vue.unref(he)("year")},vue.toDisplayString(vue.unref(re)),43,["onKeydown","onClick"]),vue.withDirectives(vue.createElementVNode("span",{role:"button","aria-live":"polite",tabindex:"0",class:vue.normalizeClass([vue.unref(b).e("header-label"),{active:vue.unref(j)==="month"}]),onKeydown:vue.withKeys(Ve=>vue.unref(he)("month"),["enter"]),onClick:Ve=>vue.unref(he)("month")},vue.toDisplayString(vue.unref(M)(`el.datepicker.month${p.value.month()+1}`)),43,["onKeydown","onClick"]),[[vue.vShow,vue.unref(j)==="date"]])])],2),vue.unref(j)==="date"?(vue.openBlock(),vue.createBlock(DateTable,{key:0,ref_key:"rightCurrentViewRef",ref:T,"selection-mode":"range",date:p.value,"min-date":vue.unref(h),"max-date":vue.unref(y),"range-state":vue.unref(m),"disabled-date":vue.unref(s),"cell-class-name":vue.unref(o),onChangerange:vue.unref(g),onPick:qn,onSelect:vue.unref(A)},null,8,["date","min-date","max-date","range-state","disabled-date","cell-class-name","onChangerange","onSelect"])):vue.createCommentVNode("v-if",!0),vue.unref(j)==="year"?(vue.openBlock(),vue.createBlock(YearTable,{key:1,ref_key:"rightCurrentViewRef",ref:T,"selection-mode":"year",date:p.value,"disabled-date":vue.unref(s),"parsed-value":ue.parsedValue,onPick:vue.unref($e)},null,8,["date","disabled-date","parsed-value","onPick"])):vue.createCommentVNode("v-if",!0),vue.unref(j)==="month"?(vue.openBlock(),vue.createBlock(MonthTable,{key:2,ref_key:"rightCurrentViewRef",ref:T,"selection-mode":"month",date:p.value,"parsed-value":ue.parsedValue,"disabled-date":vue.unref(s),onPick:vue.unref(kt)},null,8,["date","parsed-value","disabled-date","onPick"])):vue.createCommentVNode("v-if",!0)],2)],2)],2),vue.unref(Bn)?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:vue.normalizeClass(vue.unref(_).e("footer"))},[vue.unref(u)?(vue.openBlock(),vue.createBlock(vue.unref(ElButton),{key:0,text:"",size:"small",class:vue.normalizeClass(vue.unref(_).e("link-btn")),onClick:Cn},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(vue.unref(M)("el.datepicker.clear")),1)]),_:1},8,["class"])):vue.createCommentVNode("v-if",!0),vue.createVNode(vue.unref(ElButton),{plain:"",size:"small",class:vue.normalizeClass(vue.unref(_).e("link-btn")),disabled:vue.unref(xn),onClick:Ve=>vue.unref(w)(!1)},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(vue.unref(M)("el.datepicker.confirm")),1)]),_:1},8,["class","disabled","onClick"])],2)):vue.createCommentVNode("v-if",!0)],2))}});var DateRangePickPanel=_export_sfc(_sfc_main$t,[["__file","panel-date-range.vue"]]);const panelMonthRangeProps=buildProps({...panelRangeSharedProps}),panelMonthRangeEmits=["pick","set-picker-option","calendar-change"],useMonthRangeHeader=({unlinkPanels:e,leftDate:t,rightDate:n})=>{const{t:r}=useLocale(),a=()=>{t.value=t.value.subtract(1,"year"),e.value||(n.value=n.value.subtract(1,"year"))},s=()=>{e.value||(t.value=t.value.add(1,"year")),n.value=n.value.add(1,"year")},o=()=>{t.value=t.value.add(1,"year")},i=()=>{n.value=n.value.subtract(1,"year")},u=vue.computed(()=>`${t.value.year()} ${r("el.datepicker.year")}`),l=vue.computed(()=>`${n.value.year()} ${r("el.datepicker.year")}`),v=vue.computed(()=>t.value.year()),d=vue.computed(()=>n.value.year()===t.value.year()?t.value.year()+1:n.value.year());return{leftPrevYear:a,rightNextYear:s,leftNextYear:o,rightPrevYear:i,leftLabel:u,rightLabel:l,leftYear:v,rightYear:d}},unit$1="year",__default__$5=vue.defineComponent({name:"DatePickerMonthRange"}),_sfc_main$s=vue.defineComponent({...__default__$5,props:panelMonthRangeProps,emits:panelMonthRangeEmits,setup(e,{emit:t}){const n=e,{lang:r}=useLocale(),a=vue.inject(PICKER_BASE_INJECTION_KEY),s=vue.inject(ROOT_PICKER_IS_DEFAULT_FORMAT_INJECTION_KEY),{shortcuts:o,disabledDate:i}=a.props,u=vue.toRef(a.props,"format"),l=vue.toRef(a.props,"defaultValue"),v=vue.ref(dayjs().locale(r.value)),d=vue.ref(dayjs().locale(r.value).add(1,unit$1)),{minDate:f,maxDate:c,rangeState:p,ppNs:h,drpNs:y,handleChangeRange:m,handleRangeConfirm:_,handleShortcutClick:b,onSelect:g,onReset:w}=useRangePicker(n,{defaultValue:l,leftDate:v,rightDate:d,unit:unit$1,onParsedValueChanged:le}),k=vue.computed(()=>!!o.length),{leftPrevYear:A,rightNextYear:$,leftNextYear:M,rightPrevYear:F,leftLabel:O,rightLabel:D,leftYear:j,rightYear:z}=useMonthRangeHeader({unlinkPanels:vue.toRef(n,"unlinkPanels"),leftDate:v,rightDate:d}),T=vue.computed(()=>n.unlinkPanels&&z.value>j.value+1),L=(re,Y=!0)=>{const he=re.minDate,_e=re.maxDate;c.value===_e&&f.value===he||(t("calendar-change",[he.toDate(),_e&&_e.toDate()]),c.value=_e,f.value=he,Y&&_())},ie=()=>{v.value=getDefaultValue(vue.unref(l),{lang:vue.unref(r),unit:"year",unlinkPanels:n.unlinkPanels})[0],d.value=v.value.add(1,"year"),t("pick",null)},x=re=>isArray$1(re)?re.map(Y=>Y.format(u.value)):re.format(u.value),V=re=>correctlyParseUserInput(re,u.value,r.value,s);function le(re,Y){if(n.unlinkPanels&&Y){const he=(re==null?void 0:re.year())||0,_e=Y.year();d.value=he===_e?Y.add(1,unit$1):Y}else d.value=v.value.add(1,unit$1)}return vue.watch(()=>n.visible,re=>{!re&&p.value.selecting&&(w(n.parsedValue),g(!1))}),t("set-picker-option",["isValidValue",isValidRange]),t("set-picker-option",["formatToString",x]),t("set-picker-option",["parseUserInput",V]),t("set-picker-option",["handleClear",ie]),(re,Y)=>(vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass([vue.unref(h).b(),vue.unref(y).b(),{"has-sidebar":!!re.$slots.sidebar||vue.unref(k)}])},[vue.createElementVNode("div",{class:vue.normalizeClass(vue.unref(h).e("body-wrapper"))},[vue.renderSlot(re.$slots,"sidebar",{class:vue.normalizeClass(vue.unref(h).e("sidebar"))}),vue.unref(k)?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:vue.normalizeClass(vue.unref(h).e("sidebar"))},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(vue.unref(o),(he,_e)=>(vue.openBlock(),vue.createElementBlock("button",{key:_e,type:"button",class:vue.normalizeClass(vue.unref(h).e("shortcut")),onClick:$e=>vue.unref(b)(he)},vue.toDisplayString(he.text),11,["onClick"]))),128))],2)):vue.createCommentVNode("v-if",!0),vue.createElementVNode("div",{class:vue.normalizeClass(vue.unref(h).e("body"))},[vue.createElementVNode("div",{class:vue.normalizeClass([[vue.unref(h).e("content"),vue.unref(y).e("content")],"is-left"])},[vue.createElementVNode("div",{class:vue.normalizeClass(vue.unref(y).e("header"))},[vue.createElementVNode("button",{type:"button",class:vue.normalizeClass([vue.unref(h).e("icon-btn"),"d-arrow-left"]),onClick:vue.unref(A)},[vue.renderSlot(re.$slots,"prev-year",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(d_arrow_left_default))]),_:1})])],10,["onClick"]),re.unlinkPanels?(vue.openBlock(),vue.createElementBlock("button",{key:0,type:"button",disabled:!vue.unref(T),class:vue.normalizeClass([[vue.unref(h).e("icon-btn"),{[vue.unref(h).is("disabled")]:!vue.unref(T)}],"d-arrow-right"]),onClick:vue.unref(M)},[vue.renderSlot(re.$slots,"next-year",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(d_arrow_right_default))]),_:1})])],10,["disabled","onClick"])):vue.createCommentVNode("v-if",!0),vue.createElementVNode("div",null,vue.toDisplayString(vue.unref(O)),1)],2),vue.createVNode(MonthTable,{"selection-mode":"range",date:v.value,"min-date":vue.unref(f),"max-date":vue.unref(c),"range-state":vue.unref(p),"disabled-date":vue.unref(i),onChangerange:vue.unref(m),onPick:L,onSelect:vue.unref(g)},null,8,["date","min-date","max-date","range-state","disabled-date","onChangerange","onSelect"])],2),vue.createElementVNode("div",{class:vue.normalizeClass([[vue.unref(h).e("content"),vue.unref(y).e("content")],"is-right"])},[vue.createElementVNode("div",{class:vue.normalizeClass(vue.unref(y).e("header"))},[re.unlinkPanels?(vue.openBlock(),vue.createElementBlock("button",{key:0,type:"button",disabled:!vue.unref(T),class:vue.normalizeClass([[vue.unref(h).e("icon-btn"),{"is-disabled":!vue.unref(T)}],"d-arrow-left"]),onClick:vue.unref(F)},[vue.renderSlot(re.$slots,"prev-year",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(d_arrow_left_default))]),_:1})])],10,["disabled","onClick"])):vue.createCommentVNode("v-if",!0),vue.createElementVNode("button",{type:"button",class:vue.normalizeClass([vue.unref(h).e("icon-btn"),"d-arrow-right"]),onClick:vue.unref($)},[vue.renderSlot(re.$slots,"next-year",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(d_arrow_right_default))]),_:1})])],10,["onClick"]),vue.createElementVNode("div",null,vue.toDisplayString(vue.unref(D)),1)],2),vue.createVNode(MonthTable,{"selection-mode":"range",date:d.value,"min-date":vue.unref(f),"max-date":vue.unref(c),"range-state":vue.unref(p),"disabled-date":vue.unref(i),onChangerange:vue.unref(m),onPick:L,onSelect:vue.unref(g)},null,8,["date","min-date","max-date","range-state","disabled-date","onChangerange","onSelect"])],2)],2)],2)],2))}});var MonthRangePickPanel=_export_sfc(_sfc_main$s,[["__file","panel-month-range.vue"]]);const panelYearRangeProps=buildProps({...panelRangeSharedProps}),panelYearRangeEmits=["pick","set-picker-option","calendar-change"],useYearRangeHeader=({unlinkPanels:e,leftDate:t,rightDate:n})=>{const r=()=>{t.value=t.value.subtract(10,"year"),e.value||(n.value=n.value.subtract(10,"year"))},a=()=>{e.value||(t.value=t.value.add(10,"year")),n.value=n.value.add(10,"year")},s=()=>{t.value=t.value.add(10,"year")},o=()=>{n.value=n.value.subtract(10,"year")},i=vue.computed(()=>{const d=Math.floor(t.value.year()/10)*10;return`${d}-${d+9}`}),u=vue.computed(()=>{const d=Math.floor(n.value.year()/10)*10;return`${d}-${d+9}`}),l=vue.computed(()=>Math.floor(t.value.year()/10)*10+9),v=vue.computed(()=>Math.floor(n.value.year()/10)*10);return{leftPrevYear:r,rightNextYear:a,leftNextYear:s,rightPrevYear:o,leftLabel:i,rightLabel:u,leftYear:l,rightYear:v}},step=10,unit="year",__default__$4=vue.defineComponent({name:"DatePickerYearRange"}),_sfc_main$r=vue.defineComponent({...__default__$4,props:panelYearRangeProps,emits:panelYearRangeEmits,setup(e,{emit:t}){const n=e,{lang:r}=useLocale(),a=vue.ref(dayjs().locale(r.value)),s=vue.ref(dayjs().locale(r.value).add(step,unit)),o=vue.inject(ROOT_PICKER_IS_DEFAULT_FORMAT_INJECTION_KEY),i=vue.inject(PICKER_BASE_INJECTION_KEY),{shortcuts:u,disabledDate:l}=i.props,v=vue.toRef(i.props,"format"),d=vue.toRef(i.props,"defaultValue"),{minDate:f,maxDate:c,rangeState:p,ppNs:h,drpNs:y,handleChangeRange:m,handleRangeConfirm:_,handleShortcutClick:b,onSelect:g,onReset:w}=useRangePicker(n,{defaultValue:d,leftDate:a,rightDate:s,step,unit,onParsedValueChanged:_e}),{leftPrevYear:k,rightNextYear:A,leftNextYear:$,rightPrevYear:M,leftLabel:F,rightLabel:O,leftYear:D,rightYear:j}=useYearRangeHeader({unlinkPanels:vue.toRef(n,"unlinkPanels"),leftDate:a,rightDate:s}),z=vue.computed(()=>!!u.length),T=vue.computed(()=>[h.b(),y.b(),{"has-sidebar":!!vue.useSlots().sidebar||z.value}]),L=vue.computed(()=>({content:[h.e("content"),y.e("content"),"is-left"],arrowLeftBtn:[h.e("icon-btn"),"d-arrow-left"],arrowRightBtn:[h.e("icon-btn"),{[h.is("disabled")]:!x.value},"d-arrow-right"]})),ie=vue.computed(()=>({content:[h.e("content"),y.e("content"),"is-right"],arrowLeftBtn:[h.e("icon-btn"),{"is-disabled":!x.value},"d-arrow-left"],arrowRightBtn:[h.e("icon-btn"),"d-arrow-right"]})),x=vue.computed(()=>n.unlinkPanels&&j.value>D.value+1),V=($e,Ne=!0)=>{const kt=$e.minDate,Pt=$e.maxDate;c.value===Pt&&f.value===kt||(t("calendar-change",[kt.toDate(),Pt&&Pt.toDate()]),c.value=Pt,f.value=kt,Ne&&_())},le=$e=>correctlyParseUserInput($e,v.value,r.value,o),re=$e=>isArray$1($e)?$e.map(Ne=>Ne.format(v.value)):$e.format(v.value),Y=$e=>isValidRange($e)&&(l?!l($e[0].toDate())&&!l($e[1].toDate()):!0),he=()=>{const $e=getDefaultValue(vue.unref(d),{lang:vue.unref(r),step,unit,unlinkPanels:n.unlinkPanels});a.value=$e[0],s.value=$e[1],t("pick",null)};function _e($e,Ne){if(n.unlinkPanels&&Ne){const kt=($e==null?void 0:$e.year())||0,Pt=Ne.year();s.value=kt+step>Pt?Ne.add(step,unit):Ne}else s.value=a.value.add(step,unit)}return vue.watch(()=>n.visible,$e=>{!$e&&p.value.selecting&&(w(n.parsedValue),g(!1))}),t("set-picker-option",["isValidValue",Y]),t("set-picker-option",["parseUserInput",le]),t("set-picker-option",["formatToString",re]),t("set-picker-option",["handleClear",he]),($e,Ne)=>(vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(vue.unref(T))},[vue.createElementVNode("div",{class:vue.normalizeClass(vue.unref(h).e("body-wrapper"))},[vue.renderSlot($e.$slots,"sidebar",{class:vue.normalizeClass(vue.unref(h).e("sidebar"))}),vue.unref(z)?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:vue.normalizeClass(vue.unref(h).e("sidebar"))},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(vue.unref(u),(kt,Pt)=>(vue.openBlock(),vue.createElementBlock("button",{key:Pt,type:"button",class:vue.normalizeClass(vue.unref(h).e("shortcut")),onClick:Oe=>vue.unref(b)(kt)},vue.toDisplayString(kt.text),11,["onClick"]))),128))],2)):vue.createCommentVNode("v-if",!0),vue.createElementVNode("div",{class:vue.normalizeClass(vue.unref(h).e("body"))},[vue.createElementVNode("div",{class:vue.normalizeClass(vue.unref(L).content)},[vue.createElementVNode("div",{class:vue.normalizeClass(vue.unref(y).e("header"))},[vue.createElementVNode("button",{type:"button",class:vue.normalizeClass(vue.unref(L).arrowLeftBtn),onClick:vue.unref(k)},[vue.renderSlot($e.$slots,"prev-year",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(d_arrow_left_default))]),_:1})])],10,["onClick"]),$e.unlinkPanels?(vue.openBlock(),vue.createElementBlock("button",{key:0,type:"button",disabled:!vue.unref(x),class:vue.normalizeClass(vue.unref(L).arrowRightBtn),onClick:vue.unref($)},[vue.renderSlot($e.$slots,"next-year",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(d_arrow_right_default))]),_:1})])],10,["disabled","onClick"])):vue.createCommentVNode("v-if",!0),vue.createElementVNode("div",null,vue.toDisplayString(vue.unref(F)),1)],2),vue.createVNode(YearTable,{"selection-mode":"range",date:a.value,"min-date":vue.unref(f),"max-date":vue.unref(c),"range-state":vue.unref(p),"disabled-date":vue.unref(l),onChangerange:vue.unref(m),onPick:V,onSelect:vue.unref(g)},null,8,["date","min-date","max-date","range-state","disabled-date","onChangerange","onSelect"])],2),vue.createElementVNode("div",{class:vue.normalizeClass(vue.unref(ie).content)},[vue.createElementVNode("div",{class:vue.normalizeClass(vue.unref(y).e("header"))},[$e.unlinkPanels?(vue.openBlock(),vue.createElementBlock("button",{key:0,type:"button",disabled:!vue.unref(x),class:vue.normalizeClass(vue.unref(ie).arrowLeftBtn),onClick:vue.unref(M)},[vue.renderSlot($e.$slots,"prev-year",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(d_arrow_left_default))]),_:1})])],10,["disabled","onClick"])):vue.createCommentVNode("v-if",!0),vue.createElementVNode("button",{type:"button",class:vue.normalizeClass(vue.unref(ie).arrowRightBtn),onClick:vue.unref(A)},[vue.renderSlot($e.$slots,"next-year",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.createVNode(vue.unref(d_arrow_right_default))]),_:1})])],10,["onClick"]),vue.createElementVNode("div",null,vue.toDisplayString(vue.unref(O)),1)],2),vue.createVNode(YearTable,{"selection-mode":"range",date:s.value,"min-date":vue.unref(f),"max-date":vue.unref(c),"range-state":vue.unref(p),"disabled-date":vue.unref(l),onChangerange:vue.unref(m),onPick:V,onSelect:vue.unref(g)},null,8,["date","min-date","max-date","range-state","disabled-date","onChangerange","onSelect"])],2)],2)],2)],2))}});var YearRangePickPanel=_export_sfc(_sfc_main$r,[["__file","panel-year-range.vue"]]);const getPanel=function(e){switch(e){case"daterange":case"datetimerange":return DateRangePickPanel;case"monthrange":return MonthRangePickPanel;case"yearrange":return YearRangePickPanel;default:return DatePickPanel}};dayjs.extend(localeData),dayjs.extend(advancedFormat),dayjs.extend(customParseFormat),dayjs.extend(weekOfYear),dayjs.extend(weekYear),dayjs.extend(dayOfYear),dayjs.extend(isSameOrAfter),dayjs.extend(isSameOrBefore);var DatePicker=vue.defineComponent({name:"ElDatePicker",install:null,props:datePickerProps,emits:[UPDATE_MODEL_EVENT],setup(e,{expose:t,emit:n,slots:r}){const a=useNamespace("picker-panel"),s=vue.computed(()=>!e.format);vue.provide(ROOT_PICKER_IS_DEFAULT_FORMAT_INJECTION_KEY,s),vue.provide(PICKER_POPPER_OPTIONS_INJECTION_KEY,vue.reactive(vue.toRef(e,"popperOptions"))),vue.provide(ROOT_PICKER_INJECTION_KEY,{slots:r,pickerNs:a});const o=vue.ref();t({focus:()=>{var l;(l=o.value)==null||l.focus()},blur:()=>{var l;(l=o.value)==null||l.blur()},handleOpen:()=>{var l;(l=o.value)==null||l.handleOpen()},handleClose:()=>{var l;(l=o.value)==null||l.handleClose()}});const u=l=>{n(UPDATE_MODEL_EVENT,l)};return()=>{var l;const v=(l=e.format)!=null?l:DEFAULT_FORMATS_DATEPICKER[e.type]||DEFAULT_FORMATS_DATE,d=getPanel(e.type);return vue.createVNode(CommonPicker,vue.mergeProps(e,{format:v,type:e.type,ref:o,"onUpdate:modelValue":u}),{default:f=>vue.createVNode(d,f,{"prev-month":r["prev-month"],"next-month":r["next-month"],"prev-year":r["prev-year"],"next-year":r["next-year"]}),"range-separator":r["range-separator"]})}}});const ElDatePicker=withInstall(DatePicker),useSameTarget=e=>{if(!e)return{onClick:NOOP,onMousedown:NOOP,onMouseup:NOOP};let t=!1,n=!1;return{onClick:o=>{t&&n&&e(o),t=n=!1},onMousedown:o=>{t=o.target===o.currentTarget},onMouseup:o=>{n=o.target===o.currentTarget}}},overlayProps=buildProps({mask:{type:Boolean,default:!0},customMaskEvent:Boolean,overlayClass:{type:definePropType([String,Array,Object])},zIndex:{type:definePropType([String,Number])}}),overlayEmits={click:e=>e instanceof MouseEvent},BLOCK="overlay";var Overlay=vue.defineComponent({name:"ElOverlay",props:overlayProps,emits:overlayEmits,setup(e,{slots:t,emit:n}){const r=useNamespace(BLOCK),a=u=>{n("click",u)},{onClick:s,onMousedown:o,onMouseup:i}=useSameTarget(e.customMaskEvent?void 0:a);return()=>e.mask?vue.createVNode("div",{class:[r.b(),e.overlayClass],style:{zIndex:e.zIndex},onClick:s,onMousedown:o,onMouseup:i},[vue.renderSlot(t,"default")],PatchFlags.STYLE|PatchFlags.CLASS|PatchFlags.PROPS,["onClick","onMouseup","onMousedown"]):vue.h("div",{class:e.overlayClass,style:{zIndex:e.zIndex,position:"fixed",top:"0px",right:"0px",bottom:"0px",left:"0px"}},[vue.renderSlot(t,"default")])}});const ElOverlay=Overlay,dialogInjectionKey=Symbol("dialogInjectionKey"),dialogContentProps=buildProps({center:Boolean,alignCenter:Boolean,closeIcon:{type:iconPropType},draggable:Boolean,overflow:Boolean,fullscreen:Boolean,headerClass:String,bodyClass:String,footerClass:String,showClose:{type:Boolean,default:!0},title:{type:String,default:""},ariaLevel:{type:String,default:"2"}}),dialogContentEmits={close:()=>!0},useDraggable=(e,t,n,r)=>{const a={offsetX:0,offsetY:0},s=(d,f)=>{if(e.value){const{offsetX:c,offsetY:p}=a,h=e.value.getBoundingClientRect(),y=h.left,m=h.top,_=h.width,b=h.height,g=document.documentElement.clientWidth,w=document.documentElement.clientHeight,k=-y+c,A=-m+p,$=g-y-_+c,M=w-m-(b<w?b:0)+p;r!=null&&r.value||(d=Math.min(Math.max(d,k),$),f=Math.min(Math.max(f,A),M)),a.offsetX=d,a.offsetY=f,e.value.style.transform=`translate(${addUnit(d)}, ${addUnit(f)})`}},o=d=>{const f=d.clientX,c=d.clientY,{offsetX:p,offsetY:h}=a,y=_=>{const b=p+_.clientX-f,g=h+_.clientY-c;s(b,g)},m=()=>{document.removeEventListener("mousemove",y),document.removeEventListener("mouseup",m)};document.addEventListener("mousemove",y),document.addEventListener("mouseup",m)},i=()=>{t.value&&e.value&&(t.value.addEventListener("mousedown",o),window.addEventListener("resize",v))},u=()=>{t.value&&e.value&&(t.value.removeEventListener("mousedown",o),window.removeEventListener("resize",v))},l=()=>{a.offsetX=0,a.offsetY=0,e.value&&(e.value.style.transform="")},v=()=>{const{offsetX:d,offsetY:f}=a;s(d,f)};return vue.onMounted(()=>{vue.watchEffect(()=>{n.value?i():u()})}),vue.onBeforeUnmount(()=>{u()}),{resetPosition:l,updatePosition:v}},composeRefs=(...e)=>t=>{e.forEach(n=>{isFunction$1(n)?n(t):n.value=t})},__default__$3=vue.defineComponent({name:"ElDialogContent"}),_sfc_main$q=vue.defineComponent({...__default__$3,props:dialogContentProps,emits:dialogContentEmits,setup(e,{expose:t}){const n=e,{t:r}=useLocale(),{Close:a}=CloseComponents,{dialogRef:s,headerRef:o,bodyId:i,ns:u,style:l}=vue.inject(dialogInjectionKey),{focusTrapRef:v}=vue.inject(FOCUS_TRAP_INJECTION_KEY),d=vue.computed(()=>[u.b(),u.is("fullscreen",n.fullscreen),u.is("draggable",n.draggable),u.is("align-center",n.alignCenter),{[u.m("center")]:n.center}]),f=composeRefs(v,s),c=vue.computed(()=>n.draggable),p=vue.computed(()=>n.overflow),{resetPosition:h,updatePosition:y}=useDraggable(s,o,c,p);return t({resetPosition:h,updatePosition:y}),(m,_)=>(vue.openBlock(),vue.createElementBlock("div",{ref:vue.unref(f),class:vue.normalizeClass(vue.unref(d)),style:vue.normalizeStyle(vue.unref(l)),tabindex:"-1"},[vue.createElementVNode("header",{ref_key:"headerRef",ref:o,class:vue.normalizeClass([vue.unref(u).e("header"),m.headerClass,{"show-close":m.showClose}])},[vue.renderSlot(m.$slots,"header",{},()=>[vue.createElementVNode("span",{role:"heading","aria-level":m.ariaLevel,class:vue.normalizeClass(vue.unref(u).e("title"))},vue.toDisplayString(m.title),11,["aria-level"])]),m.showClose?(vue.openBlock(),vue.createElementBlock("button",{key:0,"aria-label":vue.unref(r)("el.dialog.close"),class:vue.normalizeClass(vue.unref(u).e("headerbtn")),type:"button",onClick:b=>m.$emit("close")},[vue.createVNode(vue.unref(ElIcon),{class:vue.normalizeClass(vue.unref(u).e("close"))},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(m.closeIcon||vue.unref(a))))]),_:1},8,["class"])],10,["aria-label","onClick"])):vue.createCommentVNode("v-if",!0)],2),vue.createElementVNode("div",{id:vue.unref(i),class:vue.normalizeClass([vue.unref(u).e("body"),m.bodyClass])},[vue.renderSlot(m.$slots,"default")],10,["id"]),m.$slots.footer?(vue.openBlock(),vue.createElementBlock("footer",{key:0,class:vue.normalizeClass([vue.unref(u).e("footer"),m.footerClass])},[vue.renderSlot(m.$slots,"footer")],2)):vue.createCommentVNode("v-if",!0)],6))}});var ElDialogContent=_export_sfc(_sfc_main$q,[["__file","dialog-content.vue"]]);const dialogProps=buildProps({...dialogContentProps,appendToBody:Boolean,appendTo:{type:teleportProps.to.type,default:"body"},beforeClose:{type:definePropType(Function)},destroyOnClose:Boolean,closeOnClickModal:{type:Boolean,default:!0},closeOnPressEscape:{type:Boolean,default:!0},lockScroll:{type:Boolean,default:!0},modal:{type:Boolean,default:!0},openDelay:{type:Number,default:0},closeDelay:{type:Number,default:0},top:{type:String},modelValue:Boolean,modalClass:String,headerClass:String,bodyClass:String,footerClass:String,width:{type:[String,Number]},zIndex:{type:Number},trapFocus:Boolean,headerAriaLevel:{type:String,default:"2"}}),dialogEmits={open:()=>!0,opened:()=>!0,close:()=>!0,closed:()=>!0,[UPDATE_MODEL_EVENT]:e=>isBoolean(e),openAutoFocus:()=>!0,closeAutoFocus:()=>!0},useLockscreen=(e,t={})=>{vue.isRef(e)||throwError("[useLockscreen]","You need to pass a ref param to this function");const n=t.ns||useNamespace("popup"),r=vue.computed(()=>n.bm("parent","hidden"));if(!isClient||hasClass(document.body,r.value))return;let a=0,s=!1,o="0";const i=()=>{setTimeout(()=>{typeof document>"u"||s&&document&&(document.body.style.width=o,removeClass(document.body,r.value))},200)};vue.watch(e,u=>{if(!u){i();return}s=!hasClass(document.body,r.value),s&&(o=document.body.style.width,addClass(document.body,r.value)),a=getScrollBarWidth(n.namespace.value);const l=document.documentElement.clientHeight<document.body.scrollHeight,v=getStyle(document.body,"overflowY");a>0&&(l||v==="scroll")&&s&&(document.body.style.width=`calc(100% - ${a}px)`)}),vue.onScopeDispose(()=>i())},useDialog=(e,t)=>{var n;const a=vue.getCurrentInstance().emit,{nextZIndex:s}=useZIndex();let o="";const i=useId(),u=useId(),l=vue.ref(!1),v=vue.ref(!1),d=vue.ref(!1),f=vue.ref((n=e.zIndex)!=null?n:s());let c,p;const h=useGlobalConfig("namespace",defaultNamespace),y=vue.computed(()=>{const T={},L=`--${h.value}-dialog`;return e.fullscreen||(e.top&&(T[`${L}-margin-top`]=e.top),e.width&&(T[`${L}-width`]=addUnit(e.width))),T}),m=vue.computed(()=>e.alignCenter?{display:"flex"}:{});function _(){a("opened")}function b(){a("closed"),a(UPDATE_MODEL_EVENT,!1),e.destroyOnClose&&(d.value=!1)}function g(){a("close")}function w(){p==null||p(),c==null||c(),e.openDelay&&e.openDelay>0?{stop:c}=useTimeoutFn(()=>M(),e.openDelay):M()}function k(){c==null||c(),p==null||p(),e.closeDelay&&e.closeDelay>0?{stop:p}=useTimeoutFn(()=>F(),e.closeDelay):F()}function A(){function T(L){L||(v.value=!0,l.value=!1)}e.beforeClose?e.beforeClose(T):k()}function $(){e.closeOnClickModal&&A()}function M(){isClient&&(l.value=!0)}function F(){l.value=!1}function O(){a("openAutoFocus")}function D(){a("closeAutoFocus")}function j(T){var L;((L=T.detail)==null?void 0:L.focusReason)==="pointer"&&T.preventDefault()}e.lockScroll&&useLockscreen(l);function z(){e.closeOnPressEscape&&A()}return vue.watch(()=>e.zIndex,()=>{var T;f.value=(T=e.zIndex)!=null?T:s()}),vue.watch(()=>e.modelValue,T=>{var L;T?(v.value=!1,w(),d.value=!0,f.value=(L=e.zIndex)!=null?L:s(),vue.nextTick(()=>{a("open"),t.value&&(t.value.parentElement.scrollTop=0,t.value.parentElement.scrollLeft=0,t.value.scrollTop=0)})):l.value&&k()}),vue.watch(()=>e.fullscreen,T=>{t.value&&(T?(o=t.value.style.transform,t.value.style.transform=""):t.value.style.transform=o)}),vue.onMounted(()=>{e.modelValue&&(l.value=!0,d.value=!0,w())}),{afterEnter:_,afterLeave:b,beforeLeave:g,handleClose:A,onModalClick:$,close:k,doClose:F,onOpenAutoFocus:O,onCloseAutoFocus:D,onCloseRequested:z,onFocusoutPrevented:j,titleId:i,bodyId:u,closed:v,style:y,overlayDialogStyle:m,rendered:d,visible:l,zIndex:f}},__default__$2=vue.defineComponent({name:"ElDialog",inheritAttrs:!1}),_sfc_main$p=vue.defineComponent({...__default__$2,props:dialogProps,emits:dialogEmits,setup(e,{expose:t}){const n=e,r=vue.useSlots();useDeprecated({scope:"el-dialog",from:"the title slot",replacement:"the header slot",version:"3.0.0",ref:"https://element-plus.org/en-US/component/dialog.html#slots"},vue.computed(()=>!!r.title));const a=useNamespace("dialog"),s=vue.ref(),o=vue.ref(),i=vue.ref(),{visible:u,titleId:l,bodyId:v,style:d,overlayDialogStyle:f,rendered:c,zIndex:p,afterEnter:h,afterLeave:y,beforeLeave:m,handleClose:_,onModalClick:b,onOpenAutoFocus:g,onCloseAutoFocus:w,onCloseRequested:k,onFocusoutPrevented:A}=useDialog(n,s);vue.provide(dialogInjectionKey,{dialogRef:s,headerRef:o,bodyId:v,ns:a,rendered:c,style:d});const $=useSameTarget(b),M=vue.computed(()=>n.draggable&&!n.fullscreen);return t({visible:u,dialogContentRef:i,resetPosition:()=>{var O;(O=i.value)==null||O.resetPosition()},handleClose:_}),(O,D)=>(vue.openBlock(),vue.createBlock(vue.unref(ElTeleport),{to:O.appendTo,disabled:O.appendTo!=="body"?!1:!O.appendToBody},{default:vue.withCtx(()=>[vue.createVNode(vue.Transition,{name:"dialog-fade",onAfterEnter:vue.unref(h),onAfterLeave:vue.unref(y),onBeforeLeave:vue.unref(m),persisted:""},{default:vue.withCtx(()=>[vue.withDirectives(vue.createVNode(vue.unref(ElOverlay),{"custom-mask-event":"",mask:O.modal,"overlay-class":O.modalClass,"z-index":vue.unref(p)},{default:vue.withCtx(()=>[vue.createElementVNode("div",{role:"dialog","aria-modal":"true","aria-label":O.title||void 0,"aria-labelledby":O.title?void 0:vue.unref(l),"aria-describedby":vue.unref(v),class:vue.normalizeClass(`${vue.unref(a).namespace.value}-overlay-dialog`),style:vue.normalizeStyle(vue.unref(f)),onClick:vue.unref($).onClick,onMousedown:vue.unref($).onMousedown,onMouseup:vue.unref($).onMouseup},[vue.createVNode(vue.unref(ElFocusTrap),{loop:"",trapped:vue.unref(u),"focus-start-el":"container",onFocusAfterTrapped:vue.unref(g),onFocusAfterReleased:vue.unref(w),onFocusoutPrevented:vue.unref(A),onReleaseRequested:vue.unref(k)},{default:vue.withCtx(()=>[vue.unref(c)?(vue.openBlock(),vue.createBlock(ElDialogContent,vue.mergeProps({key:0,ref_key:"dialogContentRef",ref:i},O.$attrs,{center:O.center,"align-center":O.alignCenter,"close-icon":O.closeIcon,draggable:vue.unref(M),overflow:O.overflow,fullscreen:O.fullscreen,"header-class":O.headerClass,"body-class":O.bodyClass,"footer-class":O.footerClass,"show-close":O.showClose,title:O.title,"aria-level":O.headerAriaLevel,onClose:vue.unref(_)}),vue.createSlots({header:vue.withCtx(()=>[O.$slots.title?vue.renderSlot(O.$slots,"title",{key:1}):vue.renderSlot(O.$slots,"header",{key:0,close:vue.unref(_),titleId:vue.unref(l),titleClass:vue.unref(a).e("title")})]),default:vue.withCtx(()=>[vue.renderSlot(O.$slots,"default")]),_:2},[O.$slots.footer?{name:"footer",fn:vue.withCtx(()=>[vue.renderSlot(O.$slots,"footer")])}:void 0]),1040,["center","align-center","close-icon","draggable","overflow","fullscreen","header-class","body-class","footer-class","show-close","title","aria-level","onClose"])):vue.createCommentVNode("v-if",!0)]),_:3},8,["trapped","onFocusAfterTrapped","onFocusAfterReleased","onFocusoutPrevented","onReleaseRequested"])],46,["aria-label","aria-labelledby","aria-describedby","onClick","onMousedown","onMouseup"])]),_:3},8,["mask","overlay-class","z-index"]),[[vue.vShow,vue.unref(u)]])]),_:3},8,["onAfterEnter","onAfterLeave","onBeforeLeave"])]),_:3},8,["to","disabled"]))}});var Dialog=_export_sfc(_sfc_main$p,[["__file","dialog.vue"]]);const ElDialog=withInstall(Dialog),inputNumberProps=buildProps({id:{type:String,default:void 0},step:{type:Number,default:1},stepStrictly:Boolean,max:{type:Number,default:Number.POSITIVE_INFINITY},min:{type:Number,default:Number.NEGATIVE_INFINITY},modelValue:{type:[Number,null]},readonly:Boolean,disabled:Boolean,size:useSizeProp,controls:{type:Boolean,default:!0},controlsPosition:{type:String,default:"",values:["","right"]},valueOnClear:{type:[String,Number,null],validator:e=>e===null||isNumber(e)||["min","max"].includes(e),default:null},name:String,placeholder:String,precision:{type:Number,validator:e=>e>=0&&e===Number.parseInt(`${e}`,10)},validateEvent:{type:Boolean,default:!0},...useAriaProps(["ariaLabel"])}),inputNumberEmits={[CHANGE_EVENT]:(e,t)=>t!==e,blur:e=>e instanceof FocusEvent,focus:e=>e instanceof FocusEvent,[INPUT_EVENT]:e=>isNumber(e)||isNil(e),[UPDATE_MODEL_EVENT]:e=>isNumber(e)||isNil(e)},__default__$1=vue.defineComponent({name:"ElInputNumber"}),_sfc_main$o=vue.defineComponent({...__default__$1,props:inputNumberProps,emits:inputNumberEmits,setup(e,{expose:t,emit:n}){const r=e,{t:a}=useLocale(),s=useNamespace("input-number"),o=vue.ref(),i=vue.reactive({currentValue:r.modelValue,userInput:null}),{formItem:u}=useFormItem(),l=vue.computed(()=>isNumber(r.modelValue)&&r.modelValue<=r.min),v=vue.computed(()=>isNumber(r.modelValue)&&r.modelValue>=r.max),d=vue.computed(()=>{const T=m(r.step);return isUndefined(r.precision)?Math.max(m(r.modelValue),T):(T>r.precision&&debugWarn("InputNumber","precision should not be less than the decimal places of step"),r.precision)}),f=vue.computed(()=>r.controls&&r.controlsPosition==="right"),c=useFormSize(),p=useFormDisabled(),h=vue.computed(()=>{if(i.userInput!==null)return i.userInput;let T=i.currentValue;if(isNil(T))return"";if(isNumber(T)){if(Number.isNaN(T))return"";isUndefined(r.precision)||(T=T.toFixed(r.precision))}return T}),y=(T,L)=>{if(isUndefined(L)&&(L=d.value),L===0)return Math.round(T);let ie=String(T);const x=ie.indexOf(".");if(x===-1||!ie.replace(".","").split("")[x+L])return T;const re=ie.length;return ie.charAt(re-1)==="5"&&(ie=`${ie.slice(0,Math.max(0,re-1))}6`),Number.parseFloat(Number(ie).toFixed(L))},m=T=>{if(isNil(T))return 0;const L=T.toString(),ie=L.indexOf(".");let x=0;return ie!==-1&&(x=L.length-ie-1),x},_=(T,L=1)=>isNumber(T)?y(T+r.step*L):i.currentValue,b=()=>{if(r.readonly||p.value||v.value)return;const T=Number(h.value)||0,L=_(T);k(L),n(INPUT_EVENT,i.currentValue),j()},g=()=>{if(r.readonly||p.value||l.value)return;const T=Number(h.value)||0,L=_(T,-1);k(L),n(INPUT_EVENT,i.currentValue),j()},w=(T,L)=>{const{max:ie,min:x,step:V,precision:le,stepStrictly:re,valueOnClear:Y}=r;ie<x&&throwError("InputNumber","min should not be greater than max.");let he=Number(T);if(isNil(T)||Number.isNaN(he))return null;if(T===""){if(Y===null)return null;he=isString$1(Y)?{min:x,max:ie}[Y]:Y}return re&&(he=y(Math.round(he/V)*V,le),he!==T&&L&&n(UPDATE_MODEL_EVENT,he)),isUndefined(le)||(he=y(he,le)),(he>ie||he<x)&&(he=he>ie?ie:x,L&&n(UPDATE_MODEL_EVENT,he)),he},k=(T,L=!0)=>{var ie;const x=i.currentValue,V=w(T);if(!L){n(UPDATE_MODEL_EVENT,V);return}x===V&&T||(i.userInput=null,n(UPDATE_MODEL_EVENT,V),x!==V&&n(CHANGE_EVENT,V,x),r.validateEvent&&((ie=u==null?void 0:u.validate)==null||ie.call(u,"change").catch(le=>debugWarn(le))),i.currentValue=V)},A=T=>{i.userInput=T;const L=T===""?null:Number(T);n(INPUT_EVENT,L),k(L,!1)},$=T=>{const L=T!==""?Number(T):"";(isNumber(L)&&!Number.isNaN(L)||T==="")&&k(L),j(),i.userInput=null},M=()=>{var T,L;(L=(T=o.value)==null?void 0:T.focus)==null||L.call(T)},F=()=>{var T,L;(L=(T=o.value)==null?void 0:T.blur)==null||L.call(T)},O=T=>{n("focus",T)},D=T=>{var L,ie;i.userInput=null,i.currentValue===null&&((L=o.value)!=null&&L.input)&&(o.value.input.value=""),n("blur",T),r.validateEvent&&((ie=u==null?void 0:u.validate)==null||ie.call(u,"blur").catch(x=>debugWarn(x)))},j=()=>{i.currentValue!==r.modelValue&&(i.currentValue=r.modelValue)},z=T=>{document.activeElement===T.target&&T.preventDefault()};return vue.watch(()=>r.modelValue,(T,L)=>{const ie=w(T,!0);i.userInput===null&&ie!==L&&(i.currentValue=ie)},{immediate:!0}),vue.onMounted(()=>{var T;const{min:L,max:ie,modelValue:x}=r,V=(T=o.value)==null?void 0:T.input;if(V.setAttribute("role","spinbutton"),Number.isFinite(ie)?V.setAttribute("aria-valuemax",String(ie)):V.removeAttribute("aria-valuemax"),Number.isFinite(L)?V.setAttribute("aria-valuemin",String(L)):V.removeAttribute("aria-valuemin"),V.setAttribute("aria-valuenow",i.currentValue||i.currentValue===0?String(i.currentValue):""),V.setAttribute("aria-disabled",String(p.value)),!isNumber(x)&&x!=null){let le=Number(x);Number.isNaN(le)&&(le=null),n(UPDATE_MODEL_EVENT,le)}V.addEventListener("wheel",z,{passive:!1})}),vue.onUpdated(()=>{var T,L;const ie=(T=o.value)==null?void 0:T.input;ie==null||ie.setAttribute("aria-valuenow",`${(L=i.currentValue)!=null?L:""}`)}),t({focus:M,blur:F}),(T,L)=>(vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass([vue.unref(s).b(),vue.unref(s).m(vue.unref(c)),vue.unref(s).is("disabled",vue.unref(p)),vue.unref(s).is("without-controls",!T.controls),vue.unref(s).is("controls-right",vue.unref(f))]),onDragstart:vue.withModifiers(()=>{},["prevent"])},[T.controls?vue.withDirectives((vue.openBlock(),vue.createElementBlock("span",{key:0,role:"button","aria-label":vue.unref(a)("el.inputNumber.decrease"),class:vue.normalizeClass([vue.unref(s).e("decrease"),vue.unref(s).is("disabled",vue.unref(l))]),onKeydown:vue.withKeys(g,["enter"])},[vue.renderSlot(T.$slots,"decrease-icon",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.unref(f)?(vue.openBlock(),vue.createBlock(vue.unref(arrow_down_default),{key:0})):(vue.openBlock(),vue.createBlock(vue.unref(minus_default),{key:1}))]),_:1})])],42,["aria-label","onKeydown"])),[[vue.unref(vRepeatClick),g]]):vue.createCommentVNode("v-if",!0),T.controls?vue.withDirectives((vue.openBlock(),vue.createElementBlock("span",{key:1,role:"button","aria-label":vue.unref(a)("el.inputNumber.increase"),class:vue.normalizeClass([vue.unref(s).e("increase"),vue.unref(s).is("disabled",vue.unref(v))]),onKeydown:vue.withKeys(b,["enter"])},[vue.renderSlot(T.$slots,"increase-icon",{},()=>[vue.createVNode(vue.unref(ElIcon),null,{default:vue.withCtx(()=>[vue.unref(f)?(vue.openBlock(),vue.createBlock(vue.unref(arrow_up_default),{key:0})):(vue.openBlock(),vue.createBlock(vue.unref(plus_default),{key:1}))]),_:1})])],42,["aria-label","onKeydown"])),[[vue.unref(vRepeatClick),b]]):vue.createCommentVNode("v-if",!0),vue.createVNode(vue.unref(ElInput),{id:T.id,ref_key:"input",ref:o,type:"number",step:T.step,"model-value":vue.unref(h),placeholder:T.placeholder,readonly:T.readonly,disabled:vue.unref(p),size:vue.unref(c),max:T.max,min:T.min,name:T.name,"aria-label":T.ariaLabel,"validate-event":!1,onKeydown:[vue.withKeys(vue.withModifiers(b,["prevent"]),["up"]),vue.withKeys(vue.withModifiers(g,["prevent"]),["down"])],onBlur:D,onFocus:O,onInput:A,onChange:$},vue.createSlots({_:2},[T.$slots.prefix?{name:"prefix",fn:vue.withCtx(()=>[vue.renderSlot(T.$slots,"prefix")])}:void 0,T.$slots.suffix?{name:"suffix",fn:vue.withCtx(()=>[vue.renderSlot(T.$slots,"suffix")])}:void 0]),1032,["id","step","model-value","placeholder","readonly","disabled","size","max","min","name","aria-label","onKeydown"])],42,["onDragstart"]))}});var InputNumber=_export_sfc(_sfc_main$o,[["__file","input-number.vue"]]);const ElInputNumber=withInstall(InputNumber);function useCalcInputWidth(){const e=vue.shallowRef(),t=vue.ref(0),n=11,r=vue.computed(()=>({minWidth:`${Math.max(t.value,n)}px`}));return useResizeObserver(e,()=>{var s,o;t.value=(o=(s=e.value)==null?void 0:s.getBoundingClientRect().width)!=null?o:0}),{calculatorRef:e,calculatorWidth:t,inputStyle:r}}const selectGroupKey=Symbol("ElSelectGroup"),selectKey=Symbol("ElSelect"),COMPONENT_NAME$2="ElOption",optionProps=buildProps({value:{type:[String,Number,Boolean,Object],required:!0},label:{type:[String,Number]},created:Boolean,disabled:Boolean});function useOption(e,t){const n=vue.inject(selectKey);n||throwError(COMPONENT_NAME$2,"usage: <el-select><el-option /></el-select/>");const r=vue.inject(selectGroupKey,{disabled:!1}),a=vue.computed(()=>v(castArray$1(n.props.modelValue),e.value)),s=vue.computed(()=>{var c;if(n.props.multiple){const p=castArray$1((c=n.props.modelValue)!=null?c:[]);return!a.value&&p.length>=n.props.multipleLimit&&n.props.multipleLimit>0}else return!1}),o=vue.computed(()=>{var c;return(c=e.label)!=null?c:isObject$1(e.value)?"":e.value}),i=vue.computed(()=>e.value||e.label||""),u=vue.computed(()=>e.disabled||t.groupDisabled||s.value),l=vue.getCurrentInstance(),v=(c=[],p)=>{if(isObject$1(e.value)){const h=n.props.valueKey;return c&&c.some(y=>vue.toRaw(get(y,h))===get(p,h))}else return c&&c.includes(p)},d=()=>{!e.disabled&&!r.disabled&&(n.states.hoveringIndex=n.optionsArray.indexOf(l.proxy))},f=c=>{const p=new RegExp(escapeStringRegexp(c),"i");t.visible=p.test(String(o.value))||e.created};return vue.watch(()=>o.value,()=>{!e.created&&!n.props.remote&&n.setSelected()}),vue.watch(()=>e.value,(c,p)=>{const{remote:h,valueKey:y}=n.props;if((h?c!==p:!isEqual(c,p))&&(n.onOptionDestroy(p,l.proxy),n.onOptionCreate(l.proxy)),!e.created&&!h){if(y&&isObject$1(c)&&isObject$1(p)&&c[y]===p[y])return;n.setSelected()}}),vue.watch(()=>r.disabled,()=>{t.groupDisabled=r.disabled},{immediate:!0}),{select:n,currentLabel:o,currentValue:i,itemSelected:a,isDisabled:u,hoverItem:d,updateOption:f}}const _sfc_main$n=vue.defineComponent({name:COMPONENT_NAME$2,componentName:COMPONENT_NAME$2,props:optionProps,setup(e){const t=useNamespace("select"),n=useId(),r=vue.computed(()=>[t.be("dropdown","item"),t.is("disabled",vue.unref(i)),t.is("selected",vue.unref(o)),t.is("hovering",vue.unref(f))]),a=vue.reactive({index:-1,groupDisabled:!1,visible:!0,hover:!1}),{currentLabel:s,itemSelected:o,isDisabled:i,select:u,hoverItem:l,updateOption:v}=useOption(e,a),{visible:d,hover:f}=vue.toRefs(a),c=vue.getCurrentInstance().proxy;u.onOptionCreate(c),vue.onBeforeUnmount(()=>{const h=c.value,{selected:y}=u.states,m=y.some(_=>_.value===c.value);vue.nextTick(()=>{u.states.cachedOptions.get(h)===c&&!m&&u.states.cachedOptions.delete(h)}),u.onOptionDestroy(h,c)});function p(){i.value||u.handleOptionSelect(c)}return{ns:t,id:n,containerKls:r,currentLabel:s,itemSelected:o,isDisabled:i,select:u,visible:d,hover:f,states:a,hoverItem:l,updateOption:v,selectOptionClick:p}}});function _sfc_render$j(e,t){return vue.withDirectives((vue.openBlock(),vue.createElementBlock("li",{id:e.id,class:vue.normalizeClass(e.containerKls),role:"option","aria-disabled":e.isDisabled||void 0,"aria-selected":e.itemSelected,onMousemove:e.hoverItem,onClick:vue.withModifiers(e.selectOptionClick,["stop"])},[vue.renderSlot(e.$slots,"default",{},()=>[vue.createElementVNode("span",null,vue.toDisplayString(e.currentLabel),1)])],42,["id","aria-disabled","aria-selected","onMousemove","onClick"])),[[vue.vShow,e.visible]])}var Option=_export_sfc(_sfc_main$n,[["render",_sfc_render$j],["__file","option.vue"]]);const _sfc_main$m=vue.defineComponent({name:"ElSelectDropdown",componentName:"ElSelectDropdown",setup(){const e=vue.inject(selectKey),t=useNamespace("select"),n=vue.computed(()=>e.props.popperClass),r=vue.computed(()=>e.props.multiple),a=vue.computed(()=>e.props.fitInputWidth),s=vue.ref("");function o(){var i;s.value=`${(i=e.selectRef)==null?void 0:i.offsetWidth}px`}return vue.onMounted(()=>{o(),useResizeObserver(e.selectRef,o)}),{ns:t,minWidth:s,popperClass:n,isMultiple:r,isFitInputWidth:a}}});function _sfc_render$i(e,t,n,r,a,s){return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass([e.ns.b("dropdown"),e.ns.is("multiple",e.isMultiple),e.popperClass]),style:vue.normalizeStyle({[e.isFitInputWidth?"width":"minWidth"]:e.minWidth})},[e.$slots.header?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:vue.normalizeClass(e.ns.be("dropdown","header"))},[vue.renderSlot(e.$slots,"header")],2)):vue.createCommentVNode("v-if",!0),vue.renderSlot(e.$slots,"default"),e.$slots.footer?(vue.openBlock(),vue.createElementBlock("div",{key:1,class:vue.normalizeClass(e.ns.be("dropdown","footer"))},[vue.renderSlot(e.$slots,"footer")],2)):vue.createCommentVNode("v-if",!0)],6)}var ElSelectMenu=_export_sfc(_sfc_main$m,[["render",_sfc_render$i],["__file","select-dropdown.vue"]]);const useSelect=(e,t)=>{const{t:n}=useLocale(),r=useId(),a=useNamespace("select"),s=useNamespace("input"),o=vue.reactive({inputValue:"",options:new Map,cachedOptions:new Map,optionValues:[],selected:[],selectionWidth:0,collapseItemWidth:0,selectedLabel:"",hoveringIndex:-1,previousQuery:null,inputHovering:!1,menuVisibleOnFocus:!1,isBeforeHide:!1}),i=vue.ref(),u=vue.ref(),l=vue.ref(),v=vue.ref(),d=vue.ref(),f=vue.ref(),c=vue.ref(),p=vue.ref(),h=vue.ref(),y=vue.ref(),m=vue.ref(),{isComposing:_,handleCompositionStart:b,handleCompositionUpdate:g,handleCompositionEnd:w}=useComposition({afterComposition:Ie=>xn(Ie)}),{wrapperRef:k,isFocused:A,handleBlur:$}=useFocusController(d,{beforeFocus(){return L.value},afterFocus(){e.automaticDropdown&&!M.value&&(M.value=!0,o.menuVisibleOnFocus=!0)},beforeBlur(Ie){var vn,Vn;return((vn=l.value)==null?void 0:vn.isFocusInsideContent(Ie))||((Vn=v.value)==null?void 0:Vn.isFocusInsideContent(Ie))},afterBlur(){var Ie;M.value=!1,o.menuVisibleOnFocus=!1,e.validateEvent&&((Ie=D==null?void 0:D.validate)==null||Ie.call(D,"blur").catch(vn=>debugWarn(vn)))}}),M=vue.ref(!1),F=vue.ref(),{form:O,formItem:D}=useFormItem(),{inputId:j}=useFormItemInputId(e,{formItemContext:D}),{valueOnClear:z,isEmptyValue:T}=useEmptyValues(e),L=vue.computed(()=>e.disabled||(O==null?void 0:O.disabled)),ie=vue.computed(()=>isArray$1(e.modelValue)?e.modelValue.length>0:!T(e.modelValue)),x=vue.computed(()=>{var Ie;return(Ie=O==null?void 0:O.statusIcon)!=null?Ie:!1}),V=vue.computed(()=>e.clearable&&!L.value&&o.inputHovering&&ie.value),le=vue.computed(()=>e.remote&&e.filterable&&!e.remoteShowSuffix?"":e.suffixIcon),re=vue.computed(()=>a.is("reverse",!!(le.value&&M.value))),Y=vue.computed(()=>(D==null?void 0:D.validateState)||""),he=vue.computed(()=>Y.value&&ValidateComponentsMap[Y.value]),_e=vue.computed(()=>e.remote?300:0),$e=vue.computed(()=>e.remote&&!o.inputValue&&o.options.size===0),Ne=vue.computed(()=>e.loading?e.loadingText||n("el.select.loading"):e.filterable&&o.inputValue&&o.options.size>0&&kt.value===0?e.noMatchText||n("el.select.noMatch"):o.options.size===0?e.noDataText||n("el.select.noData"):null),kt=vue.computed(()=>Pt.value.filter(Ie=>Ie.visible).length),Pt=vue.computed(()=>{const Ie=Array.from(o.options.values()),vn=[];return o.optionValues.forEach(Vn=>{const zn=Ie.findIndex(Un=>Un.value===Vn);zn>-1&&vn.push(Ie[zn])}),vn.length>=Ie.length?vn:Ie}),Oe=vue.computed(()=>Array.from(o.cachedOptions.values())),ze=vue.computed(()=>{const Ie=Pt.value.filter(vn=>!vn.created).some(vn=>vn.currentLabel===o.inputValue);return e.filterable&&e.allowCreate&&o.inputValue!==""&&!Ie}),At=()=>{e.filterable&&isFunction$1(e.filterMethod)||e.filterable&&e.remote&&isFunction$1(e.remoteMethod)||Pt.value.forEach(Ie=>{var vn;(vn=Ie.updateOption)==null||vn.call(Ie,o.inputValue)})},En=useFormSize(),Pn=vue.computed(()=>["small"].includes(En.value)?"small":"default"),Dn=vue.computed({get(){return M.value&&!$e.value},set(Ie){M.value=Ie}}),Mn=vue.computed(()=>{if(e.multiple&&!isUndefined(e.modelValue))return castArray$1(e.modelValue).length===0&&!o.inputValue;const Ie=isArray$1(e.modelValue)?e.modelValue[0]:e.modelValue;return e.filterable||isUndefined(Ie)?!o.inputValue:!0}),Ue=vue.computed(()=>{var Ie;const vn=(Ie=e.placeholder)!=null?Ie:n("el.select.placeholder");return e.multiple||!ie.value?vn:o.selectedLabel}),xe=vue.computed(()=>isIOS?null:"mouseenter");vue.watch(()=>e.modelValue,(Ie,vn)=>{e.multiple&&e.filterable&&!e.reserveKeyword&&(o.inputValue="",Lt("")),wn(),!isEqual(Ie,vn)&&e.validateEvent&&(D==null||D.validate("change").catch(Vn=>debugWarn(Vn)))},{flush:"post",deep:!0}),vue.watch(()=>M.value,Ie=>{Ie?Lt(o.inputValue):(o.inputValue="",o.previousQuery=null,o.isBeforeHide=!0),t("visible-change",Ie)}),vue.watch(()=>o.options.entries(),()=>{isClient&&(wn(),e.defaultFirstOption&&(e.filterable||e.remote)&&kt.value&&Et())},{flush:"post"}),vue.watch([()=>o.hoveringIndex,Pt],([Ie])=>{isNumber(Ie)&&Ie>-1?F.value=Pt.value[Ie]||{}:F.value={},Pt.value.forEach(vn=>{vn.hover=F.value===vn})}),vue.watchEffect(()=>{o.isBeforeHide||At()});const Lt=Ie=>{o.previousQuery===Ie||_.value||(o.previousQuery=Ie,e.filterable&&isFunction$1(e.filterMethod)?e.filterMethod(Ie):e.filterable&&e.remote&&isFunction$1(e.remoteMethod)&&e.remoteMethod(Ie),e.defaultFirstOption&&(e.filterable||e.remote)&&kt.value?vue.nextTick(Et):vue.nextTick(kn))},Et=()=>{const Ie=Pt.value.filter(Un=>Un.visible&&!Un.disabled&&!Un.states.groupDisabled),vn=Ie.find(Un=>Un.created),Vn=Ie[0],zn=Pt.value.map(Un=>Un.value);o.hoveringIndex=S(zn,vn||Vn)},wn=()=>{if(e.multiple)o.selectedLabel="";else{const vn=isArray$1(e.modelValue)?e.modelValue[0]:e.modelValue,Vn=Tn(vn);o.selectedLabel=Vn.currentLabel,o.selected=[Vn];return}const Ie=[];isUndefined(e.modelValue)||castArray$1(e.modelValue).forEach(vn=>{Ie.push(Tn(vn))}),o.selected=Ie},Tn=Ie=>{let vn;const Vn=isPlainObject(Ie);for(let Yn=o.cachedOptions.size-1;Yn>=0;Yn--){const Wn=Oe.value[Yn];if(Vn?get(Wn.value,e.valueKey)===get(Ie,e.valueKey):Wn.value===Ie){vn={value:Ie,currentLabel:Wn.currentLabel,get isDisabled(){return Wn.isDisabled}};break}}if(vn)return vn;const zn=Vn?Ie.label:Ie??"";return{value:Ie,currentLabel:zn}},kn=()=>{o.hoveringIndex=Pt.value.findIndex(Ie=>o.selected.some(vn=>_n(vn)===_n(Ie)))},In=()=>{o.selectionWidth=Number.parseFloat(window.getComputedStyle(u.value).width)},qe=()=>{o.collapseItemWidth=y.value.getBoundingClientRect().width},hn=()=>{var Ie,vn;(vn=(Ie=l.value)==null?void 0:Ie.updatePopper)==null||vn.call(Ie)},An=()=>{var Ie,vn;(vn=(Ie=v.value)==null?void 0:Ie.updatePopper)==null||vn.call(Ie)},Nn=()=>{o.inputValue.length>0&&!M.value&&(M.value=!0),Lt(o.inputValue)},xn=Ie=>{if(o.inputValue=Ie.target.value,e.remote)Bn();else return Nn()},Bn=debounce(()=>{Nn()},_e.value),Rn=Ie=>{isEqual(e.modelValue,Ie)||t(CHANGE_EVENT,Ie)},qn=Ie=>findLastIndex(Ie,vn=>{const Vn=o.cachedOptions.get(vn);return Vn&&!Vn.disabled&&!Vn.states.groupDisabled}),Fn=Ie=>{if(e.multiple&&Ie.code!==EVENT_CODE.delete&&Ie.target.value.length<=0){const vn=castArray$1(e.modelValue).slice(),Vn=qn(vn);if(Vn<0)return;const zn=vn[Vn];vn.splice(Vn,1),t(UPDATE_MODEL_EVENT,vn),Rn(vn),t("remove-tag",zn)}},$n=(Ie,vn)=>{const Vn=o.selected.indexOf(vn);if(Vn>-1&&!L.value){const zn=castArray$1(e.modelValue).slice();zn.splice(Vn,1),t(UPDATE_MODEL_EVENT,zn),Rn(zn),t("remove-tag",vn.value)}Ie.stopPropagation(),Cn()},oe=Ie=>{Ie.stopPropagation();const vn=e.multiple?[]:z.value;if(e.multiple)for(const Vn of o.selected)Vn.isDisabled&&vn.push(Vn.value);t(UPDATE_MODEL_EVENT,vn),Rn(vn),o.hoveringIndex=-1,M.value=!1,t("clear"),Cn()},pe=Ie=>{var vn;if(e.multiple){const Vn=castArray$1((vn=e.modelValue)!=null?vn:[]).slice(),zn=S(Vn,Ie);zn>-1?Vn.splice(zn,1):(e.multipleLimit<=0||Vn.length<e.multipleLimit)&&Vn.push(Ie.value),t(UPDATE_MODEL_EVENT,Vn),Rn(Vn),Ie.created&&Lt(""),e.filterable&&!e.reserveKeyword&&(o.inputValue="")}else t(UPDATE_MODEL_EVENT,Ie.value),Rn(Ie.value),M.value=!1;Cn(),!M.value&&vue.nextTick(()=>{ae(Ie)})},S=(Ie,vn)=>isUndefined(vn)?-1:isObject$1(vn.value)?Ie.findIndex(Vn=>isEqual(get(Vn,e.valueKey),_n(vn))):Ie.indexOf(vn.value),ae=Ie=>{var vn,Vn,zn,Un,Yn;const Wn=isArray$1(Ie)?Ie[0]:Ie;let Xn=null;if(Wn!=null&&Wn.value){const Kn=Pt.value.filter(tr=>tr.value===Wn.value);Kn.length>0&&(Xn=Kn[0].$el)}if(l.value&&Xn){const Kn=(Un=(zn=(Vn=(vn=l.value)==null?void 0:vn.popperRef)==null?void 0:Vn.contentRef)==null?void 0:zn.querySelector)==null?void 0:Un.call(zn,`.${a.be("dropdown","wrap")}`);Kn&&scrollIntoView(Kn,Xn)}(Yn=m.value)==null||Yn.handleScroll()},de=Ie=>{o.options.set(Ie.value,Ie),o.cachedOptions.set(Ie.value,Ie)},Ce=(Ie,vn)=>{o.options.get(Ie)===vn&&o.options.delete(Ie)},Dt=vue.computed(()=>{var Ie,vn;return(vn=(Ie=l.value)==null?void 0:Ie.popperRef)==null?void 0:vn.contentRef}),Sn=()=>{o.isBeforeHide=!1,vue.nextTick(()=>{var Ie;(Ie=m.value)==null||Ie.update(),ae(o.selected)})},Cn=()=>{var Ie;(Ie=d.value)==null||Ie.focus()},bn=()=>{var Ie;if(M.value){M.value=!1,vue.nextTick(()=>{var vn;return(vn=d.value)==null?void 0:vn.blur()});return}(Ie=d.value)==null||Ie.blur()},jt=Ie=>{oe(Ie)},On=Ie=>{if(M.value=!1,A.value){const vn=new FocusEvent("focus",Ie);vue.nextTick(()=>$(vn))}},ue=()=>{o.inputValue.length>0?o.inputValue="":M.value=!1},Fe=()=>{L.value||(isIOS&&(o.inputHovering=!0),o.menuVisibleOnFocus?o.menuVisibleOnFocus=!1:M.value=!M.value)},Ve=()=>{if(!M.value)Fe();else{const Ie=Pt.value[o.hoveringIndex];Ie&&!Ie.isDisabled&&pe(Ie)}},_n=Ie=>isObject$1(Ie.value)?get(Ie.value,e.valueKey):Ie.value,Ln=vue.computed(()=>Pt.value.filter(Ie=>Ie.visible).every(Ie=>Ie.isDisabled)),jn=vue.computed(()=>e.multiple?e.collapseTags?o.selected.slice(0,e.maxCollapseTags):o.selected:[]),Hn=vue.computed(()=>e.multiple?e.collapseTags?o.selected.slice(e.maxCollapseTags):[]:[]),Gn=Ie=>{if(!M.value){M.value=!0;return}if(!(o.options.size===0||kt.value===0||_.value)&&!Ln.value){Ie==="next"?(o.hoveringIndex++,o.hoveringIndex===o.options.size&&(o.hoveringIndex=0)):Ie==="prev"&&(o.hoveringIndex--,o.hoveringIndex<0&&(o.hoveringIndex=o.options.size-1));const vn=Pt.value[o.hoveringIndex];(vn.isDisabled||!vn.visible)&&Gn(Ie),vue.nextTick(()=>ae(F.value))}},Jn=()=>{if(!u.value)return 0;const Ie=window.getComputedStyle(u.value);return Number.parseFloat(Ie.gap||"6px")},Zn=vue.computed(()=>{const Ie=Jn();return{maxWidth:`${y.value&&e.maxCollapseTags===1?o.selectionWidth-o.collapseItemWidth-Ie:o.selectionWidth}px`}}),Qn=vue.computed(()=>({maxWidth:`${o.selectionWidth}px`})),er=Ie=>{t("popup-scroll",Ie)};return useResizeObserver(u,In),useResizeObserver(p,hn),useResizeObserver(k,hn),useResizeObserver(h,An),useResizeObserver(y,qe),vue.onMounted(()=>{wn()}),{inputId:j,contentId:r,nsSelect:a,nsInput:s,states:o,isFocused:A,expanded:M,optionsArray:Pt,hoverOption:F,selectSize:En,filteredOptionsCount:kt,updateTooltip:hn,updateTagTooltip:An,debouncedOnInputChange:Bn,onInput:xn,deletePrevTag:Fn,deleteTag:$n,deleteSelected:oe,handleOptionSelect:pe,scrollToOption:ae,hasModelValue:ie,shouldShowPlaceholder:Mn,currentPlaceholder:Ue,mouseEnterEventName:xe,needStatusIcon:x,showClose:V,iconComponent:le,iconReverse:re,validateState:Y,validateIcon:he,showNewOption:ze,updateOptions:At,collapseTagSize:Pn,setSelected:wn,selectDisabled:L,emptyText:Ne,handleCompositionStart:b,handleCompositionUpdate:g,handleCompositionEnd:w,onOptionCreate:de,onOptionDestroy:Ce,handleMenuEnter:Sn,focus:Cn,blur:bn,handleClearClick:jt,handleClickOutside:On,handleEsc:ue,toggleMenu:Fe,selectOption:Ve,getValueKey:_n,navigateOptions:Gn,dropdownMenuVisible:Dn,showTagList:jn,collapseTagList:Hn,popupScroll:er,tagStyle:Zn,collapseTagStyle:Qn,popperRef:Dt,inputRef:d,tooltipRef:l,tagTooltipRef:v,prefixRef:f,suffixRef:c,selectRef:i,wrapperRef:k,selectionRef:u,scrollbarRef:m,menuRef:p,tagMenuRef:h,collapseItemRef:y}};var ElOptions=vue.defineComponent({name:"ElOptions",setup(e,{slots:t}){const n=vue.inject(selectKey);let r=[];return()=>{var a,s;const o=(a=t.default)==null?void 0:a.call(t),i=[];function u(l){isArray$1(l)&&l.forEach(v=>{var d,f,c,p;const h=(d=(v==null?void 0:v.type)||{})==null?void 0:d.name;h==="ElOptionGroup"?u(!isString$1(v.children)&&!isArray$1(v.children)&&isFunction$1((f=v.children)==null?void 0:f.default)?(c=v.children)==null?void 0:c.default():v.children):h==="ElOption"?i.push((p=v.props)==null?void 0:p.value):isArray$1(v.children)&&u(v.children)})}return o.length&&u((s=o[0])==null?void 0:s.children),isEqual(i,r)||(r=i,n&&(n.states.optionValues=i)),o}}});const selectProps=buildProps({name:String,id:String,modelValue:{type:definePropType([Array,String,Number,Boolean,Object]),default:void 0},autocomplete:{type:String,default:"off"},automaticDropdown:Boolean,size:useSizeProp,effect:{type:definePropType(String),default:"light"},disabled:Boolean,clearable:Boolean,filterable:Boolean,allowCreate:Boolean,loading:Boolean,popperClass:{type:String,default:""},popperOptions:{type:definePropType(Object),default:()=>({})},remote:Boolean,loadingText:String,noMatchText:String,noDataText:String,remoteMethod:Function,filterMethod:Function,multiple:Boolean,multipleLimit:{type:Number,default:0},placeholder:{type:String},defaultFirstOption:Boolean,reserveKeyword:{type:Boolean,default:!0},valueKey:{type:String,default:"value"},collapseTags:Boolean,collapseTagsTooltip:Boolean,maxCollapseTags:{type:Number,default:1},teleported:useTooltipContentProps.teleported,persistent:{type:Boolean,default:!0},clearIcon:{type:iconPropType,default:circle_close_default},fitInputWidth:Boolean,suffixIcon:{type:iconPropType,default:arrow_down_default},tagType:{...tagProps.type,default:"info"},tagEffect:{...tagProps.effect,default:"light"},validateEvent:{type:Boolean,default:!0},remoteShowSuffix:Boolean,showArrow:{type:Boolean,default:!0},offset:{type:Number,default:12},placement:{type:definePropType(String),values:Ee,default:"bottom-start"},fallbackPlacements:{type:definePropType(Array),default:["bottom-start","top-start","right","left"]},tabindex:{type:[String,Number],default:0},appendTo:useTooltipContentProps.appendTo,...useEmptyValuesProps,...useAriaProps(["ariaLabel"])});scrollbarEmits.scroll;const COMPONENT_NAME$1="ElSelect",_sfc_main$l=vue.defineComponent({name:COMPONENT_NAME$1,componentName:COMPONENT_NAME$1,components:{ElSelectMenu,ElOption:Option,ElOptions,ElTag,ElScrollbar,ElTooltip,ElIcon},directives:{ClickOutside},props:selectProps,emits:[UPDATE_MODEL_EVENT,CHANGE_EVENT,"remove-tag","clear","visible-change","focus","blur","popup-scroll"],setup(e,{emit:t,slots:n}){const r=vue.getCurrentInstance();r.appContext.config.warnHandler=(...f)=>{!f[0]||f[0].includes('Slot "default" invoked outside of the render function')||console.warn(...f)};const a=vue.computed(()=>{const{modelValue:f,multiple:c}=e,p=c?[]:void 0;return isArray$1(f)?c?f:p:c?p:f}),s=vue.reactive({...vue.toRefs(e),modelValue:a}),o=useSelect(s,t),{calculatorRef:i,inputStyle:u}=useCalcInputWidth(),l=f=>f.reduce((c,p)=>(c.push(p),p.children&&p.children.length>0&&c.push(...l(p.children)),c),[]),v=f=>{flattedChildren(f||[]).forEach(p=>{var h;if(isObject$1(p)&&(p.type.name==="ElOption"||p.type.name==="ElTree")){const y=p.type.name;if(y==="ElTree"){const m=((h=p.props)==null?void 0:h.data)||[];l(m).forEach(b=>{b.currentLabel=b.label||(isObject$1(b.value)?"":b.value),o.onOptionCreate(b)})}else if(y==="ElOption"){const m={...p.props};m.currentLabel=m.label||(isObject$1(m.value)?"":m.value),o.onOptionCreate(m)}}})};vue.watch(()=>{var f;return(f=n.default)==null?void 0:f.call(n)},f=>{e.persistent||v(f)},{immediate:!0}),vue.provide(selectKey,vue.reactive({props:s,states:o.states,selectRef:o.selectRef,optionsArray:o.optionsArray,setSelected:o.setSelected,handleOptionSelect:o.handleOptionSelect,onOptionCreate:o.onOptionCreate,onOptionDestroy:o.onOptionDestroy}));const d=vue.computed(()=>e.multiple?o.states.selected.map(f=>f.currentLabel):o.states.selectedLabel);return{...o,modelValue:a,selectedLabel:d,calculatorRef:i,inputStyle:u}}});function _sfc_render$h(e,t){const n=vue.resolveComponent("el-tag"),r=vue.resolveComponent("el-tooltip"),a=vue.resolveComponent("el-icon"),s=vue.resolveComponent("el-option"),o=vue.resolveComponent("el-options"),i=vue.resolveComponent("el-scrollbar"),u=vue.resolveComponent("el-select-menu"),l=vue.resolveDirective("click-outside");return vue.withDirectives((vue.openBlock(),vue.createElementBlock("div",{ref:"selectRef",class:vue.normalizeClass([e.nsSelect.b(),e.nsSelect.m(e.selectSize)]),[vue.toHandlerKey(e.mouseEnterEventName)]:v=>e.states.inputHovering=!0,onMouseleave:v=>e.states.inputHovering=!1},[vue.createVNode(r,{ref:"tooltipRef",visible:e.dropdownMenuVisible,placement:e.placement,teleported:e.teleported,"popper-class":[e.nsSelect.e("popper"),e.popperClass],"popper-options":e.popperOptions,"fallback-placements":e.fallbackPlacements,effect:e.effect,pure:"",trigger:"click",transition:`${e.nsSelect.namespace.value}-zoom-in-top`,"stop-popper-mouse-event":!1,"gpu-acceleration":!1,persistent:e.persistent,"append-to":e.appendTo,"show-arrow":e.showArrow,offset:e.offset,onBeforeShow:e.handleMenuEnter,onHide:v=>e.states.isBeforeHide=!1},{default:vue.withCtx(()=>{var v;return[vue.createElementVNode("div",{ref:"wrapperRef",class:vue.normalizeClass([e.nsSelect.e("wrapper"),e.nsSelect.is("focused",e.isFocused),e.nsSelect.is("hovering",e.states.inputHovering),e.nsSelect.is("filterable",e.filterable),e.nsSelect.is("disabled",e.selectDisabled)]),onClick:vue.withModifiers(e.toggleMenu,["prevent"])},[e.$slots.prefix?(vue.openBlock(),vue.createElementBlock("div",{key:0,ref:"prefixRef",class:vue.normalizeClass(e.nsSelect.e("prefix"))},[vue.renderSlot(e.$slots,"prefix")],2)):vue.createCommentVNode("v-if",!0),vue.createElementVNode("div",{ref:"selectionRef",class:vue.normalizeClass([e.nsSelect.e("selection"),e.nsSelect.is("near",e.multiple&&!e.$slots.prefix&&!!e.states.selected.length)])},[e.multiple?vue.renderSlot(e.$slots,"tag",{key:0},()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.showTagList,d=>(vue.openBlock(),vue.createElementBlock("div",{key:e.getValueKey(d),class:vue.normalizeClass(e.nsSelect.e("selected-item"))},[vue.createVNode(n,{closable:!e.selectDisabled&&!d.isDisabled,size:e.collapseTagSize,type:e.tagType,effect:e.tagEffect,"disable-transitions":"",style:vue.normalizeStyle(e.tagStyle),onClose:f=>e.deleteTag(f,d)},{default:vue.withCtx(()=>[vue.createElementVNode("span",{class:vue.normalizeClass(e.nsSelect.e("tags-text"))},[vue.renderSlot(e.$slots,"label",{label:d.currentLabel,value:d.value},()=>[vue.createTextVNode(vue.toDisplayString(d.currentLabel),1)])],2)]),_:2},1032,["closable","size","type","effect","style","onClose"])],2))),128)),e.collapseTags&&e.states.selected.length>e.maxCollapseTags?(vue.openBlock(),vue.createBlock(r,{key:0,ref:"tagTooltipRef",disabled:e.dropdownMenuVisible||!e.collapseTagsTooltip,"fallback-placements":["bottom","top","right","left"],effect:e.effect,placement:"bottom",teleported:e.teleported},{default:vue.withCtx(()=>[vue.createElementVNode("div",{ref:"collapseItemRef",class:vue.normalizeClass(e.nsSelect.e("selected-item"))},[vue.createVNode(n,{closable:!1,size:e.collapseTagSize,type:e.tagType,effect:e.tagEffect,"disable-transitions":"",style:vue.normalizeStyle(e.collapseTagStyle)},{default:vue.withCtx(()=>[vue.createElementVNode("span",{class:vue.normalizeClass(e.nsSelect.e("tags-text"))}," + "+vue.toDisplayString(e.states.selected.length-e.maxCollapseTags),3)]),_:1},8,["size","type","effect","style"])],2)]),content:vue.withCtx(()=>[vue.createElementVNode("div",{ref:"tagMenuRef",class:vue.normalizeClass(e.nsSelect.e("selection"))},[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.collapseTagList,d=>(vue.openBlock(),vue.createElementBlock("div",{key:e.getValueKey(d),class:vue.normalizeClass(e.nsSelect.e("selected-item"))},[vue.createVNode(n,{class:"in-tooltip",closable:!e.selectDisabled&&!d.isDisabled,size:e.collapseTagSize,type:e.tagType,effect:e.tagEffect,"disable-transitions":"",onClose:f=>e.deleteTag(f,d)},{default:vue.withCtx(()=>[vue.createElementVNode("span",{class:vue.normalizeClass(e.nsSelect.e("tags-text"))},[vue.renderSlot(e.$slots,"label",{label:d.currentLabel,value:d.value},()=>[vue.createTextVNode(vue.toDisplayString(d.currentLabel),1)])],2)]),_:2},1032,["closable","size","type","effect","onClose"])],2))),128))],2)]),_:3},8,["disabled","effect","teleported"])):vue.createCommentVNode("v-if",!0)]):vue.createCommentVNode("v-if",!0),vue.createElementVNode("div",{class:vue.normalizeClass([e.nsSelect.e("selected-item"),e.nsSelect.e("input-wrapper"),e.nsSelect.is("hidden",!e.filterable)])},[vue.withDirectives(vue.createElementVNode("input",{id:e.inputId,ref:"inputRef","onUpdate:modelValue":d=>e.states.inputValue=d,type:"text",name:e.name,class:vue.normalizeClass([e.nsSelect.e("input"),e.nsSelect.is(e.selectSize)]),disabled:e.selectDisabled,autocomplete:e.autocomplete,style:vue.normalizeStyle(e.inputStyle),tabindex:e.tabindex,role:"combobox",readonly:!e.filterable,spellcheck:"false","aria-activedescendant":((v=e.hoverOption)==null?void 0:v.id)||"","aria-controls":e.contentId,"aria-expanded":e.dropdownMenuVisible,"aria-label":e.ariaLabel,"aria-autocomplete":"none","aria-haspopup":"listbox",onKeydown:[vue.withKeys(vue.withModifiers(d=>e.navigateOptions("next"),["stop","prevent"]),["down"]),vue.withKeys(vue.withModifiers(d=>e.navigateOptions("prev"),["stop","prevent"]),["up"]),vue.withKeys(vue.withModifiers(e.handleEsc,["stop","prevent"]),["esc"]),vue.withKeys(vue.withModifiers(e.selectOption,["stop","prevent"]),["enter"]),vue.withKeys(vue.withModifiers(e.deletePrevTag,["stop"]),["delete"])],onCompositionstart:e.handleCompositionStart,onCompositionupdate:e.handleCompositionUpdate,onCompositionend:e.handleCompositionEnd,onInput:e.onInput,onClick:vue.withModifiers(e.toggleMenu,["stop"])},null,46,["id","onUpdate:modelValue","name","disabled","autocomplete","tabindex","readonly","aria-activedescendant","aria-controls","aria-expanded","aria-label","onKeydown","onCompositionstart","onCompositionupdate","onCompositionend","onInput","onClick"]),[[vue.vModelText,e.states.inputValue]]),e.filterable?(vue.openBlock(),vue.createElementBlock("span",{key:0,ref:"calculatorRef","aria-hidden":"true",class:vue.normalizeClass(e.nsSelect.e("input-calculator")),textContent:vue.toDisplayString(e.states.inputValue)},null,10,["textContent"])):vue.createCommentVNode("v-if",!0)],2),e.shouldShowPlaceholder?(vue.openBlock(),vue.createElementBlock("div",{key:1,class:vue.normalizeClass([e.nsSelect.e("selected-item"),e.nsSelect.e("placeholder"),e.nsSelect.is("transparent",!e.hasModelValue||e.expanded&&!e.states.inputValue)])},[e.hasModelValue?vue.renderSlot(e.$slots,"label",{key:0,label:e.currentPlaceholder,value:e.modelValue},()=>[vue.createElementVNode("span",null,vue.toDisplayString(e.currentPlaceholder),1)]):(vue.openBlock(),vue.createElementBlock("span",{key:1},vue.toDisplayString(e.currentPlaceholder),1))],2)):vue.createCommentVNode("v-if",!0)],2),vue.createElementVNode("div",{ref:"suffixRef",class:vue.normalizeClass(e.nsSelect.e("suffix"))},[e.iconComponent&&!e.showClose?(vue.openBlock(),vue.createBlock(a,{key:0,class:vue.normalizeClass([e.nsSelect.e("caret"),e.nsSelect.e("icon"),e.iconReverse])},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(e.iconComponent)))]),_:1},8,["class"])):vue.createCommentVNode("v-if",!0),e.showClose&&e.clearIcon?(vue.openBlock(),vue.createBlock(a,{key:1,class:vue.normalizeClass([e.nsSelect.e("caret"),e.nsSelect.e("icon"),e.nsSelect.e("clear")]),onClick:e.handleClearClick},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(e.clearIcon)))]),_:1},8,["class","onClick"])):vue.createCommentVNode("v-if",!0),e.validateState&&e.validateIcon&&e.needStatusIcon?(vue.openBlock(),vue.createBlock(a,{key:2,class:vue.normalizeClass([e.nsInput.e("icon"),e.nsInput.e("validateIcon"),e.nsInput.is("loading",e.validateState==="validating")])},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(e.validateIcon)))]),_:1},8,["class"])):vue.createCommentVNode("v-if",!0)],2)],10,["onClick"])]}),content:vue.withCtx(()=>[vue.createVNode(u,{ref:"menuRef"},{default:vue.withCtx(()=>[e.$slots.header?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:vue.normalizeClass(e.nsSelect.be("dropdown","header")),onClick:vue.withModifiers(()=>{},["stop"])},[vue.renderSlot(e.$slots,"header")],10,["onClick"])):vue.createCommentVNode("v-if",!0),vue.withDirectives(vue.createVNode(i,{id:e.contentId,ref:"scrollbarRef",tag:"ul","wrap-class":e.nsSelect.be("dropdown","wrap"),"view-class":e.nsSelect.be("dropdown","list"),class:vue.normalizeClass([e.nsSelect.is("empty",e.filteredOptionsCount===0)]),role:"listbox","aria-label":e.ariaLabel,"aria-orientation":"vertical",onScroll:e.popupScroll},{default:vue.withCtx(()=>[e.showNewOption?(vue.openBlock(),vue.createBlock(s,{key:0,value:e.states.inputValue,created:!0},null,8,["value"])):vue.createCommentVNode("v-if",!0),vue.createVNode(o,null,{default:vue.withCtx(()=>[vue.renderSlot(e.$slots,"default")]),_:3})]),_:3},8,["id","wrap-class","view-class","class","aria-label","onScroll"]),[[vue.vShow,e.states.options.size>0&&!e.loading]]),e.$slots.loading&&e.loading?(vue.openBlock(),vue.createElementBlock("div",{key:1,class:vue.normalizeClass(e.nsSelect.be("dropdown","loading"))},[vue.renderSlot(e.$slots,"loading")],2)):e.loading||e.filteredOptionsCount===0?(vue.openBlock(),vue.createElementBlock("div",{key:2,class:vue.normalizeClass(e.nsSelect.be("dropdown","empty"))},[vue.renderSlot(e.$slots,"empty",{},()=>[vue.createElementVNode("span",null,vue.toDisplayString(e.emptyText),1)])],2)):vue.createCommentVNode("v-if",!0),e.$slots.footer?(vue.openBlock(),vue.createElementBlock("div",{key:3,class:vue.normalizeClass(e.nsSelect.be("dropdown","footer")),onClick:vue.withModifiers(()=>{},["stop"])},[vue.renderSlot(e.$slots,"footer")],10,["onClick"])):vue.createCommentVNode("v-if",!0)]),_:3},512)]),_:3},8,["visible","placement","teleported","popper-class","popper-options","fallback-placements","effect","transition","persistent","append-to","show-arrow","offset","onBeforeShow","onHide"])],16,["onMouseleave"])),[[l,e.handleClickOutside,e.popperRef]])}var Select=_export_sfc(_sfc_main$l,[["render",_sfc_render$h],["__file","select.vue"]]);const _sfc_main$k=vue.defineComponent({name:"ElOptionGroup",componentName:"ElOptionGroup",props:{label:String,disabled:Boolean},setup(e){const t=useNamespace("select"),n=vue.ref(),r=vue.getCurrentInstance(),a=vue.ref([]);vue.provide(selectGroupKey,vue.reactive({...vue.toRefs(e)}));const s=vue.computed(()=>a.value.some(l=>l.visible===!0)),o=l=>{var v;return l.type.name==="ElOption"&&!!((v=l.component)!=null&&v.proxy)},i=l=>{const v=castArray$1(l),d=[];return v.forEach(f=>{var c;vue.isVNode(f)&&(o(f)?d.push(f.component.proxy):isArray$1(f.children)&&f.children.length?d.push(...i(f.children)):(c=f.component)!=null&&c.subTree&&d.push(...i(f.component.subTree)))}),d},u=()=>{a.value=i(r.subTree)};return vue.onMounted(()=>{u()}),useMutationObserver(n,u,{attributes:!0,subtree:!0,childList:!0}),{groupRef:n,visible:s,ns:t}}});function _sfc_render$g(e,t,n,r,a,s){return vue.withDirectives((vue.openBlock(),vue.createElementBlock("ul",{ref:"groupRef",class:vue.normalizeClass(e.ns.be("group","wrap"))},[vue.createElementVNode("li",{class:vue.normalizeClass(e.ns.be("group","title"))},vue.toDisplayString(e.label),3),vue.createElementVNode("li",null,[vue.createElementVNode("ul",{class:vue.normalizeClass(e.ns.b("group"))},[vue.renderSlot(e.$slots,"default")],2)])],2)),[[vue.vShow,e.visible]])}var OptionGroup=_export_sfc(_sfc_main$k,[["render",_sfc_render$g],["__file","option-group.vue"]]);const ElSelect=withInstall(Select,{Option,OptionGroup}),ElOption=withNoopInstall(Option);withNoopInstall(OptionGroup);const isValidComponentSize=e=>["",...componentSizes].includes(e),switchProps=buildProps({modelValue:{type:[Boolean,String,Number],default:!1},disabled:Boolean,loading:Boolean,size:{type:String,validator:isValidComponentSize},width:{type:[String,Number],default:""},inlinePrompt:Boolean,inactiveActionIcon:{type:iconPropType},activeActionIcon:{type:iconPropType},activeIcon:{type:iconPropType},inactiveIcon:{type:iconPropType},activeText:{type:String,default:""},inactiveText:{type:String,default:""},activeValue:{type:[Boolean,String,Number],default:!0},inactiveValue:{type:[Boolean,String,Number],default:!1},name:{type:String,default:""},validateEvent:{type:Boolean,default:!0},beforeChange:{type:definePropType(Function)},id:String,tabindex:{type:[String,Number]},...useAriaProps(["ariaLabel"])}),switchEmits={[UPDATE_MODEL_EVENT]:e=>isBoolean(e)||isString$1(e)||isNumber(e),[CHANGE_EVENT]:e=>isBoolean(e)||isString$1(e)||isNumber(e),[INPUT_EVENT]:e=>isBoolean(e)||isString$1(e)||isNumber(e)},COMPONENT_NAME="ElSwitch",__default__=vue.defineComponent({name:COMPONENT_NAME}),_sfc_main$j=vue.defineComponent({...__default__,props:switchProps,emits:switchEmits,setup(e,{expose:t,emit:n}){const r=e,{formItem:a}=useFormItem(),s=useFormSize(),o=useNamespace("switch"),{inputId:i}=useFormItemInputId(r,{formItemContext:a}),u=useFormDisabled(vue.computed(()=>r.loading)),l=vue.ref(r.modelValue!==!1),v=vue.ref(),d=vue.ref(),f=vue.computed(()=>[o.b(),o.m(s.value),o.is("disabled",u.value),o.is("checked",m.value)]),c=vue.computed(()=>[o.e("label"),o.em("label","left"),o.is("active",!m.value)]),p=vue.computed(()=>[o.e("label"),o.em("label","right"),o.is("active",m.value)]),h=vue.computed(()=>({width:addUnit(r.width)}));vue.watch(()=>r.modelValue,()=>{l.value=!0});const y=vue.computed(()=>l.value?r.modelValue:!1),m=vue.computed(()=>y.value===r.activeValue);[r.activeValue,r.inactiveValue].includes(y.value)||(n(UPDATE_MODEL_EVENT,r.inactiveValue),n(CHANGE_EVENT,r.inactiveValue),n(INPUT_EVENT,r.inactiveValue)),vue.watch(m,w=>{var k;v.value.checked=w,r.validateEvent&&((k=a==null?void 0:a.validate)==null||k.call(a,"change").catch(A=>debugWarn(A)))});const _=()=>{const w=m.value?r.inactiveValue:r.activeValue;n(UPDATE_MODEL_EVENT,w),n(CHANGE_EVENT,w),n(INPUT_EVENT,w),vue.nextTick(()=>{v.value.checked=m.value})},b=()=>{if(u.value)return;const{beforeChange:w}=r;if(!w){_();return}const k=w();[isPromise(k),isBoolean(k)].includes(!0)||throwError(COMPONENT_NAME,"beforeChange must return type `Promise<boolean>` or `boolean`"),isPromise(k)?k.then($=>{$&&_()}).catch($=>{debugWarn(COMPONENT_NAME,`some error occurred: ${$}`)}):k&&_()},g=()=>{var w,k;(k=(w=v.value)==null?void 0:w.focus)==null||k.call(w)};return vue.onMounted(()=>{v.value.checked=m.value}),t({focus:g,checked:m}),(w,k)=>(vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(vue.unref(f)),onClick:vue.withModifiers(b,["prevent"])},[vue.createElementVNode("input",{id:vue.unref(i),ref_key:"input",ref:v,class:vue.normalizeClass(vue.unref(o).e("input")),type:"checkbox",role:"switch","aria-checked":vue.unref(m),"aria-disabled":vue.unref(u),"aria-label":w.ariaLabel,name:w.name,"true-value":w.activeValue,"false-value":w.inactiveValue,disabled:vue.unref(u),tabindex:w.tabindex,onChange:_,onKeydown:vue.withKeys(b,["enter"])},null,42,["id","aria-checked","aria-disabled","aria-label","name","true-value","false-value","disabled","tabindex","onKeydown"]),!w.inlinePrompt&&(w.inactiveIcon||w.inactiveText)?(vue.openBlock(),vue.createElementBlock("span",{key:0,class:vue.normalizeClass(vue.unref(c))},[w.inactiveIcon?(vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{key:0},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(w.inactiveIcon)))]),_:1})):vue.createCommentVNode("v-if",!0),!w.inactiveIcon&&w.inactiveText?(vue.openBlock(),vue.createElementBlock("span",{key:1,"aria-hidden":vue.unref(m)},vue.toDisplayString(w.inactiveText),9,["aria-hidden"])):vue.createCommentVNode("v-if",!0)],2)):vue.createCommentVNode("v-if",!0),vue.createElementVNode("span",{ref_key:"core",ref:d,class:vue.normalizeClass(vue.unref(o).e("core")),style:vue.normalizeStyle(vue.unref(h))},[w.inlinePrompt?(vue.openBlock(),vue.createElementBlock("div",{key:0,class:vue.normalizeClass(vue.unref(o).e("inner"))},[w.activeIcon||w.inactiveIcon?(vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{key:0,class:vue.normalizeClass(vue.unref(o).is("icon"))},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(vue.unref(m)?w.activeIcon:w.inactiveIcon)))]),_:1},8,["class"])):w.activeText||w.inactiveText?(vue.openBlock(),vue.createElementBlock("span",{key:1,class:vue.normalizeClass(vue.unref(o).is("text")),"aria-hidden":!vue.unref(m)},vue.toDisplayString(vue.unref(m)?w.activeText:w.inactiveText),11,["aria-hidden"])):vue.createCommentVNode("v-if",!0)],2)):vue.createCommentVNode("v-if",!0),vue.createElementVNode("div",{class:vue.normalizeClass(vue.unref(o).e("action"))},[w.loading?(vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{key:0,class:vue.normalizeClass(vue.unref(o).is("loading"))},{default:vue.withCtx(()=>[vue.createVNode(vue.unref(loading_default))]),_:1},8,["class"])):vue.unref(m)?vue.renderSlot(w.$slots,"active-action",{key:1},()=>[w.activeActionIcon?(vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{key:0},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(w.activeActionIcon)))]),_:1})):vue.createCommentVNode("v-if",!0)]):vue.unref(m)?vue.createCommentVNode("v-if",!0):vue.renderSlot(w.$slots,"inactive-action",{key:2},()=>[w.inactiveActionIcon?(vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{key:0},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(w.inactiveActionIcon)))]),_:1})):vue.createCommentVNode("v-if",!0)])],2)],6),!w.inlinePrompt&&(w.activeIcon||w.activeText)?(vue.openBlock(),vue.createElementBlock("span",{key:1,class:vue.normalizeClass(vue.unref(p))},[w.activeIcon?(vue.openBlock(),vue.createBlock(vue.unref(ElIcon),{key:0},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(w.activeIcon)))]),_:1})):vue.createCommentVNode("v-if",!0),!w.activeIcon&&w.activeText?(vue.openBlock(),vue.createElementBlock("span",{key:1,"aria-hidden":!vue.unref(m)},vue.toDisplayString(w.activeText),9,["aria-hidden"])):vue.createCommentVNode("v-if",!0)],2)):vue.createCommentVNode("v-if",!0)],10,["onClick"]))}});var Switch=_export_sfc(_sfc_main$j,[["__file","switch.vue"]]);const ElSwitch=withInstall(Switch),_sfc_main$i={name:"IconPreviousPage",props:{width:{type:Number,default:12},height:{type:Number,default:12},color:{type:String,default:"currentColor"}}},_hoisted_1$i=["width","height","fill"];function _sfc_render$f(e,t,n,r,a,s){return vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",width:n.width,height:n.height,fill:n.color,viewBox:"0 0 12 12"},t[0]||(t[0]=[vue.createElementVNode("path",{d:"M10.959,0.571 L3.756,5.52 C3.756,5.52 3.477,5.721 3.477,6.001 C3.477,6.281 3.756,6.48 3.756,6.48 L10.959,11.431 C11.531,11.811 12,11.53 12,10.805 L12,1.196 C12,0.469 11.531,0.188 10.959,0.571 Z M2,0 L1,0 C0.447,0 0,0.048 0,0.6 L0,11.4 C0,11.952 0.447,12 1,12 L2,12 C2.553,12 3,11.952 3,11.4 L3,0.6 C3,0.048 2.553,0 2,0 Z"},null,-1)]),8,_hoisted_1$i)}const IconPreviousPage=_export_sfc$1(_sfc_main$i,[["render",_sfc_render$f]]),_sfc_main$h={name:"IconNextAnnotationLeftFacing",props:{width:{type:Number,default:24},height:{type:Number,default:14},color:{type:String,default:"currentColor"}}},_hoisted_1$h=["width","height","fill"];function _sfc_render$e(e,t,n,r,a,s){return vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",width:n.width,height:n.height,fill:n.color,viewBox:"0 0 24 14"},t[0]||(t[0]=[vue.createElementVNode("defs",null,[vue.createElementVNode("path",{pid:"0",d:"M4 5L.859 1.58a.695.695 0 0 1 0-.978.68.68 0 0 1 .969 0l3.83 3.908a.697.697 0 0 1 0 .979l-3.83 3.908a.68.68 0 0 1-.969 0 .695.695 0 0 1 0-.978L4 5z",id:"svgicon-next-annotation-left-facing-a"})],-1),vue.createElementVNode("g",{_fill:"none","fill-rule":"evenodd"},[vue.createElementVNode("g",{transform:"matrix(-1 0 0 1 6 0)"},[vue.createElementVNode("mask",{id:"svgicon-next-annotation-left-facing-b",_fill:"#fff"},[vue.createElementVNode("use",{"xlink:href":"#svgicon-next-annotation-left-facing-a"})]),vue.createElementVNode("use",{_fill:"#000","fill-rule":"nonzero","xlink:href":"#svgicon-next-annotation-left-facing-a"}),vue.createElementVNode("g",{mask:"url(#svgicon-next-annotation-left-facing-b)",_fill:"#000"},[vue.createElementVNode("path",{pid:"1",d:"M-2 0H8v10H-2z"})])]),vue.createElementVNode("g",{_fill:"#000"},[vue.createElementVNode("path",{pid:"2",d:"M23.986 10.906l-5.6-2.506 2.303 5.6.63-2.611zM10 8.4h1.4v1.4H10zM12.8 8.4h1.4v1.4h-1.4zM15.6 8.4H17v1.4h-1.4zM10 5.6h1.4V7H10zM10 2.8h1.4v1.4H10zM18.4 5.6h1.4V7h-1.4zM18.4 2.8h1.4v1.4h-1.4zM10 0h1.4v1.4H10zM12.8 0h1.4v1.4h-1.4zM15.6 0H17v1.4h-1.4zM18.4 0h1.4v1.4h-1.4z"})])],-1)]),8,_hoisted_1$h)}const IconNextAnnotationLeftFacing=_export_sfc$1(_sfc_main$h,[["render",_sfc_render$e]]),_sfc_main$g={name:"IconNextAnnotationRightFacing",props:{width:{type:Number,default:24},height:{type:Number,default:14},color:{type:String,default:"currentColor"}}},_hoisted_1$g=["width","height","fill"];function _sfc_render$d(e,t,n,r,a,s){return vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",width:n.width,height:n.height,fill:n.color,viewBox:"0 0 24 14"},t[0]||(t[0]=[vue.createElementVNode("defs",null,[vue.createElementVNode("path",{pid:"0",d:"M4 5L.859 1.58a.695.695 0 0 1 0-.978.68.68 0 0 1 .969 0l3.83 3.908a.697.697 0 0 1 0 .979l-3.83 3.908a.68.68 0 0 1-.969 0 .695.695 0 0 1 0-.978L4 5z",id:"svgicon-next-annotation-right-facing-a"})],-1),vue.createElementVNode("g",{_fill:"none","fill-rule":"evenodd"},[vue.createElementVNode("g",{transform:"translate(18)"},[vue.createElementVNode("mask",{id:"svgicon-next-annotation-right-facing-b",_fill:"#fff"},[vue.createElementVNode("use",{"xlink:href":"#svgicon-next-annotation-right-facing-a"})]),vue.createElementVNode("use",{_fill:"#000","fill-rule":"nonzero","xlink:href":"#svgicon-next-annotation-right-facing-a"}),vue.createElementVNode("g",{mask:"url(#svgicon-next-annotation-right-facing-b)",_fill:"#000"},[vue.createElementVNode("path",{pid:"1",d:"M-2 0H8v10H-2z"})])]),vue.createElementVNode("g",{_fill:"#000"},[vue.createElementVNode("path",{pid:"2",d:"M13.986 10.906L8.386 8.4l2.303 5.6.63-2.611zM0 8.4h1.4v1.4H0zM2.8 8.4h1.4v1.4H2.8zM5.6 8.4H7v1.4H5.6zM0 5.6h1.4V7H0zM0 2.8h1.4v1.4H0zM8.4 5.6h1.4V7H8.4zM8.4 2.8h1.4v1.4H8.4zM0 0h1.4v1.4H0zM2.8 0h1.4v1.4H2.8zM5.6 0H7v1.4H5.6zM8.4 0h1.4v1.4H8.4z"})])],-1)]),8,_hoisted_1$g)}const IconNextAnnotationRightFacing=_export_sfc$1(_sfc_main$g,[["render",_sfc_render$d]]),_sfc_main$f={name:"IconNextPage",props:{width:{type:Number,default:16},height:{type:Number,default:16},color:{type:String,default:"currentColor"}}},_hoisted_1$f=["width","height","fill"];function _sfc_render$c(e,t,n,r,a,s){return vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",width:n.width,height:n.height,fill:n.color,viewBox:"0 0 12 12"},t[0]||(t[0]=[vue.createElementVNode("path",{d:"M8.244,5.52 L1.041,0.571 C0.469,0.188 0,0.469 0,1.196 L0,10.805 C0,11.53 0.469,11.811 1.041,11.43 L8.244,6.479 C8.244,6.479 8.523,6.28 8.523,6.001 C8.523,5.721 8.244,5.52 8.244,5.52 Z M10,0 L11,0 C11.553,0 12,0.048 12,0.6 L12,11.4 C12,11.952 11.553,12 11,12 L10,12 C9.447,12 9,11.952 9,11.4 L9,0.6 C9,0.048 9.447,0 10,0 Z"},null,-1)]),8,_hoisted_1$f)}const IconNextPage=_export_sfc$1(_sfc_main$f,[["render",_sfc_render$c]]),_sfc_main$e={name:"IconStopwatch",props:{width:{type:Number,default:15},height:{type:Number,default:16},color:{type:String,default:"currentColor"}}},_hoisted_1$e=["width","height","fill"];function _sfc_render$b(e,t,n,r,a,s){return vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",width:n.width,height:n.height,fill:n.color,viewBox:"0 0 15 16"},t[0]||(t[0]=[vue.createElementVNode("path",{d:"M5.1008,5.396 C4.7432,5.616 6.0584,8.7896 6.3792,9.3064 C6.6592,9.7616 7.2536,9.9 7.7056,9.6216 C8.16,9.34 8.3016,8.7464 8.0216,8.2936 C7.704,7.7752 5.4576,5.1752 5.1008,5.396 Z M4.8328,1.9216 C5.5752,1.6632 6.3704,1.52 7.2,1.52 C8.0296,1.52 8.8248,1.6632 9.5672,1.9216 C9.8304,2.0128 10.1792,1.8296 10.0248,1.4328 C9.912,1.1448 9.8032,0.8632 9.7592,0.7488 C9.6544,0.4776 9.2792,0.2536 9.116,0.2168 C8.4984,0.0776 7.8584,0 7.2,0 C6.5416,0 5.9016,0.0776 5.2832,0.2168 C5.12,0.2536 4.7456,0.4776 4.6408,0.7488 C4.5968,0.8632 4.4872,1.1448 4.3752,1.4328 C4.2208,1.8296 4.5696,2.0136 4.8328,1.9216 Z M14.4784,2.5488 C14.3248,2.3648 14.1616,2.1848 13.988,2.0112 C13.8152,1.8376 13.6352,1.6752 13.452,1.5208 C13.3296,1.4176 12.9696,1.3336 12.7416,1.5616 C12.5144,1.7896 11.4232,2.8792 11.4232,2.8792 C11.7448,3.1096 12.0576,3.3632 12.3472,3.652 C12.6368,3.9408 12.8888,4.2536 13.12,4.576 C13.12,4.576 14.2104,3.4864 14.4376,3.2584 C14.6664,3.0296 14.5824,2.6704 14.4784,2.5488 Z M7.2,2.32 C3.62,2.32 0.7192,5.2208 0.7192,8.8 C0.7192,12.38 3.62,15.2808 7.2,15.2808 C10.7784,15.2808 13.68,12.38 13.68,8.8 C13.68,5.2216 10.7784,2.32 7.2,2.32 Z M7.2,13.6808 C4.5056,13.6808 2.32,11.496 2.32,8.8008 C2.32,6.1056 4.5048,3.9208 7.2,3.9208 C9.8952,3.9208 12.0808,6.1056 12.0808,8.8008 C12.0808,11.4952 9.8952,13.6808 7.2,13.6808 Z"},null,-1)]),8,_hoisted_1$e)}const IconStopwatch=_export_sfc$1(_sfc_main$e,[["render",_sfc_render$b]]),_sfc_main$d={name:"IconControllerPlay",props:{width:{type:Number,default:10},height:{type:Number,default:12},color:{type:String,default:"currentColor"}}},_hoisted_1$d=["width","height","fill"];function _sfc_render$a(e,t,n,r,a,s){return vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",width:n.width,height:n.height,fill:n.color,viewBox:"0 0 20 12"},t[0]||(t[0]=[vue.createElementVNode("path",{d:"M10,6.001 C10,6.3 9.695,6.515 9.695,6.515 L1.134,11.818 C0.51,12.227 0,11.924 0,11.149 L0,0.852 C0,0.075 0.51,-0.226 1.135,0.182 L9.696,5.487 C9.695,5.487 10,5.702 10,6.001 Z"},null,-1)]),8,_hoisted_1$d)}const IconControllerPlay=_export_sfc$1(_sfc_main$d,[["render",_sfc_render$a]]),_sfc_main$c={name:"IconControllerPause",props:{width:{type:Number,default:10},height:{type:Number,default:12},color:{type:String,default:"currentColor"}}},_hoisted_1$c=["width","height","fill"];function _sfc_render$9(e,t,n,r,a,s){return vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",width:n.width,height:n.height,fill:n.color,viewBox:"0 0 20 12"},t[0]||(t[0]=[vue.createElementVNode("path",{d:"M2,0 C2.553,0 3,0.048 3,0.6 L3,11.4 C3,11.952 2.553,12 2,12 L1,12 C0.447,12 0,11.952 0,11.4 L0,0.6 C0,0.048 0.447,0 1,0 L2,0 Z M9,0 C9.553,0 10,0.048 10,0.6 L10,11.4 C10,11.952 9.553,12 9,12 L8,12 C7.447,12 7,11.952 7,11.4 L7,0.6 C7,0.048 7.447,0 8,0 L9,0 Z"},null,-1)]),8,_hoisted_1$c)}const IconControllerPause=_export_sfc$1(_sfc_main$c,[["render",_sfc_render$9]]),_hoisted_1$b={class:"timeseries-viewer-toolbar"},_hoisted_2$6={id:"left-controls"},_hoisted_3$5={id:"center-controls"},_hoisted_4$3={id:"right-controls"},_sfc_main$b={__name:"TSViewerToolbar",props:{constants:{type:Object,required:!0},duration:{type:Number,required:!0},start:{type:Number,required:!0}},emits:["pageBack","pageForward","incrementZoom","decrementZoom","updateDuration","nextAnnotation","previousAnnotation","setStart"],setup(e,{emit:t}){const n=e,r=t,a=vue.ref(!0),s=vue.ref(!0),o=vue.ref(!0);vue.ref(0);const i=vue.ref(!1),u=vue.ref(null),l=vue.ref(null),v=vue.ref(150),d=vue.ref(1e6),f=[{value:.5,label:"0.5x"},{value:1,label:"1x"},{value:2,label:"2x"},{value:5,label:"5x"},{value:10,label:"10x"}],c=vue.computed(()=>i.value===!0?IconControllerPause:IconControllerPlay),p=vue.computed({get(){return n.duration/1e6},set(O){r("updateDuration",O)}}),h=()=>{s.value=!s.value},y=()=>{a.value=!a.value},m=()=>{o.value=!o.value},_=()=>{i.value===!1?M():F()},b=()=>{r("pageBack")},g=()=>{r("pageForward")},w=()=>{r("incrementZoom")},k=()=>{r("decrementZoom")},A=()=>{r("nextAnnotation")},$=()=>{r("previousAnnotation")},M=()=>{i.value=!0;const O=()=>{r("setStart",n.start+d.value*u.value),l.value=setTimeout(O,v.value)};l.value=setTimeout(O,v.value)},F=()=>{i.value=!1,v.value=150,clearInterval(l.value)};return vue.onMounted(()=>{u.value=1}),(O,D)=>{const j=ElTooltip,z=ElInputNumber,T=ElButton,L=ElButtonGroup,ie=ElOption,x=ElSelect;return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$b,[vue.createElementVNode("div",_hoisted_2$6,[vue.createVNode(j,{placement:"top-end",content:"Toggle Time Zoom Controls"},{default:vue.withCtx(()=>[vue.createElementVNode("button",{class:"btn-icon",onClick:D[0]||(D[0]=V=>h())})]),_:1}),s.value?(vue.openBlock(),vue.createBlock(z,{key:0,modelValue:p.value,"onUpdate:modelValue":D[1]||(D[1]=V=>p.value=V),precision:1,step:5,max:e.constants.MAXDURATION,"controls-position":"right"},null,8,["modelValue","max"])):vue.createCommentVNode("",!0),vue.createVNode(j,{placement:"top-end",content:"Toggle Vertical Zoom Controls"},{default:vue.withCtx(()=>[vue.createElementVNode("button",{class:"btn-icon",onClick:D[2]||(D[2]=V=>y())})]),_:1}),a.value?(vue.openBlock(),vue.createBlock(L,{key:1},{default:vue.withCtx(()=>[vue.createVNode(T,{icon:"el-icon-plus",size:"small",onClick:w}),vue.createVNode(T,{icon:"el-icon-minus",size:"small",onClick:k})]),_:1})):vue.createCommentVNode("",!0)]),vue.createElementVNode("div",_hoisted_3$5,[vue.createVNode(j,{placement:"top-end",content:"Page Back"},{default:vue.withCtx(()=>[vue.createElementVNode("button",{class:"btn-icon",onClick:D[3]||(D[3]=V=>b())},[vue.createVNode(IconPreviousPage,{height:12,width:12})])]),_:1}),vue.createVNode(j,{placement:"top-end",content:"Previous Annotation"},{default:vue.withCtx(()=>[vue.createElementVNode("button",{class:"btn-icon",onClick:D[4]||(D[4]=V=>$())},[vue.createVNode(IconNextAnnotationLeftFacing,{height:12,width:18})])]),_:1}),vue.createVNode(j,{placement:"top-end",content:"Automatic Forward"},{default:vue.withCtx(()=>[vue.createElementVNode("button",{class:"btn-icon",onClick:D[5]||(D[5]=V=>_())},[(vue.openBlock(),vue.createBlock(vue.resolveDynamicComponent(c.value),{height:12,width:18}))])]),_:1}),vue.createVNode(j,{placement:"top-end",content:"Next Annotation"},{default:vue.withCtx(()=>[vue.createElementVNode("button",{class:"btn-icon",onClick:D[6]||(D[6]=V=>A())},[vue.createVNode(IconNextAnnotationRightFacing,{name:"next-annotation-right-facing",height:12,width:18})])]),_:1}),vue.createVNode(j,{placement:"top-end",content:"Next Page"},{default:vue.withCtx(()=>[vue.createElementVNode("button",{class:"btn-icon",onClick:D[7]||(D[7]=V=>g())},[vue.createVNode(IconNextPage,{name:"icon-next-page",height:12,width:18})])]),_:1})]),vue.createElementVNode("div",_hoisted_4$3,[vue.createVNode(j,{placement:"top-end",content:"Toggle Play Back Speed Controls"},{default:vue.withCtx(()=>[vue.createElementVNode("button",{class:"btn-icon",onClick:D[8]||(D[8]=V=>m())},[vue.createVNode(IconStopwatch,{height:20,width:22})])]),_:1}),o.value?(vue.openBlock(),vue.createBlock(x,{key:0,modelValue:u.value,"onUpdate:modelValue":D[9]||(D[9]=V=>u.value=V),placeholder:"Select",size:"small",class:"playSelect"},{default:vue.withCtx(()=>[(vue.openBlock(),vue.createElementBlock(vue.Fragment,null,vue.renderList(f,V=>vue.createVNode(ie,{key:V.value,label:V.label,value:V.value},null,8,["label","value"])),64))]),_:1},8,["modelValue"])):vue.createCommentVNode("",!0)])])}}},TSViewerToolbar=_export_sfc$1(_sfc_main$b,[["__scopeId","data-v-5b412e2a"]]),TSViewerToolbar$1=Object.freeze(Object.defineProperty({__proto__:null,default:TSViewerToolbar},Symbol.toStringTag,{value:"Module"})),_sfc_main$a={name:"IconSelection",props:{width:{type:Number,default:16},height:{type:Number,default:16},color:{type:String,default:"currentColor"}}},_hoisted_1$a=["width","height","fill"];function _sfc_render$8(e,t,n,r,a,s){return vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",width:n.width,height:n.height,fill:n.color,viewBox:"0 0 24 24"},t[0]||(t[0]=[vue.createElementVNode("path",{pid:"0",d:"M16 10V7h-4V4H4v10h4v3h4v3h8V10zM6 12V6h4v1H8v5zm4 3V9h4v1h-2v5zm8 3h-4v-6h4z"},null,-1)]),8,_hoisted_1$a)}const IconSelection=_export_sfc$1(_sfc_main$a,[["render",_sfc_render$8]]),_sfc_main$9={name:"TimeseriesFilterModal",components:{"bf-library-button":()=>Promise.resolve().then(()=>BFLibraryButton),IconSelection},mixins:[],watch:{},computed:{computeVisible0:function(){switch(this.selectedFilter){case"lowpass":return!0;case"highpass":return!0;case"bandpass":return!0;default:return!1}},onSingleChannel:function(){return this.onChannels.length==1},selectedChannels:function(){return this.onChannels.length},computeVisible1:function(){switch(this.selectedFilter){case"lowpass":return!1;case"highpass":return!1;case"bandpass":return!0;default:return!1}},computeVisible2:function(){switch(this.selectedFilter){case"bandstop":return!0;default:return!1}},computePlaceholder1:function(e){switch(this.selectedFilter){case"lowpass":return"Low Pass Cutoff Frequency (Hz)";case"highpass":return"High Pass Cutoff Frequency (Hz)";case"bandpass":return"Low Pass Cutoff Frequency (Hz)";default:return""}},computePlaceholder2:function(e){switch(this.selectedFilter){case"bandpass":return"High Pass Cutoff Frequency (Hz)";default:return""}}},props:{visible:{type:Boolean,default:!1}},data:function(){return{selectedFilter:null,filterOptions:[{label:"No Filter",value:"clear"},{label:"Low Pass",value:"lowpass"},{label:"High Pass",value:"highpass"},{label:"Band Pass",value:"bandpass"},{label:"Notch",value:"bandstop"}],selectedNotch:null,notchOptions:[{label:"50Hz",value:50},{label:"60Hz",value:60}],input0:null,input1:null,onChannels:[]}},methods:{close:function(){this.$emit("closeWindow")},handleChange:function(){},onButtonClick:function(){},submitForm:function(e){this.$emit("closeWindow")}}},_hoisted_1$9={slot:"body"},_hoisted_2$5={class:"select-wrapper"},_hoisted_3$4={key:0,class:"filter-input-wrapper"},_hoisted_4$2={key:1,class:"filter-input-wrapper"},_hoisted_5$2={slot:"footer"},_hoisted_6$2={class:"button-wrapper"},_hoisted_7$2={class:"channels-selected"},_hoisted_8$2={key:0},_hoisted_9$1={key:1},_hoisted_10={class:"buttons"};function _sfc_render$7(e,t,n,r,a,s){const o=ElOption,i=ElSelect,u=ElInputNumber,l=IconSelection,v=vue.resolveComponent("bf-library-button"),d=ElDialog;return vue.openBlock(),vue.createBlock(d,{class:"timeseries-filter-modal",ref:"filter-modal",title:"Set Filter",modelValue:n.visible,"onUpdate:modelValue":t[4]||(t[4]=f=>n.visible=f),onClose:s.close},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_1$9,[vue.createElementVNode("div",_hoisted_2$5,[vue.createVNode(i,{modelValue:e.selectedFilter,"onUpdate:modelValue":t[0]||(t[0]=f=>e.selectedFilter=f),placeholder:"Select"},{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.filterOptions,f=>(vue.openBlock(),vue.createBlock(o,{key:f.value,label:f.label,value:f.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"]),s.computeVisible0?(vue.openBlock(),vue.createElementBlock("div",_hoisted_3$4,[vue.createTextVNode(vue.toDisplayString(s.computePlaceholder1)+" ",1),vue.createVNode(u,{class:"filterInput",modelValue:e.input0,"onUpdate:modelValue":t[1]||(t[1]=f=>e.input0=f),"controls-position":"right",precision:2,onChange:s.handleChange},null,8,["modelValue","onChange"])])):vue.createCommentVNode("",!0),s.computeVisible1?(vue.openBlock(),vue.createElementBlock("div",_hoisted_4$2,[vue.createTextVNode(vue.toDisplayString(s.computePlaceholder2)+" ",1),vue.createVNode(u,{class:"filterInput",modelValue:e.input1,"onUpdate:modelValue":t[2]||(t[2]=f=>e.input1=f),"controls-position":"right",precision:2,onChange:s.handleChange},null,8,["modelValue","onChange"])])):vue.createCommentVNode("",!0),s.computeVisible2?(vue.openBlock(),vue.createBlock(i,{key:2,modelValue:e.selectedNotch,"onUpdate:modelValue":t[3]||(t[3]=f=>e.selectedNotch=f),placeholder:"Select",class:"filter-input-wrapper"},{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.notchOptions,f=>(vue.openBlock(),vue.createBlock(o,{key:f.value,label:f.label,value:f.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])):vue.createCommentVNode("",!0)])])]),footer:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_5$2,[vue.createElementVNode("div",_hoisted_6$2,[vue.createElementVNode("div",_hoisted_7$2,[vue.createVNode(l,{height:24,width:24}),s.onSingleChannel?(vue.openBlock(),vue.createElementBlock("div",_hoisted_8$2," Adding to single channel ")):(vue.openBlock(),vue.createElementBlock("div",_hoisted_9$1," Adding to "+vue.toDisplayString(s.selectedChannels)+" Selected Channels ",1))]),vue.createElementVNode("div",_hoisted_10,[vue.createVNode(v,{onClick:s.submitForm},{default:vue.withCtx(()=>t[5]||(t[5]=[vue.createTextVNode("Set Filter ")])),_:1,__:[5]},8,["onClick"])])])])]),_:1},8,["modelValue","onClose"])}const TSFilterModal=_export_sfc$1(_sfc_main$9,[["render",_sfc_render$7],["__scopeId","data-v-718cdb9b"]]),TSFilterModal$1=Object.freeze(Object.defineProperty({__proto__:null,default:TSFilterModal},Symbol.toStringTag,{value:"Module"})),_hoisted_1$8={slot:"body"},_hoisted_2$4={class:"select-wrapper"},_hoisted_3$3={class:"range-type-selector"},_hoisted_4$1={class:"select-wrapper"},_hoisted_5$1={class:"description-wrapper"},_hoisted_6$1={slot:"footer"},_hoisted_7$1={class:"button-wrapper"},_hoisted_8$1={class:"channels-selected"},_hoisted_9={class:"buttons"},_sfc_main$8={__name:"TSAnnotationModal",props:{visible:{type:Boolean,default:!1}},emits:["closeWindow","createUpdateAnnotation"],setup(e,{emit:t}){const n=vue.defineAsyncComponent(()=>Promise.resolve().then(()=>BFLibraryButton)),r=e,a=vue.ref(!1);vue.watch(()=>r.visible,A=>{if(a.value=A,!A)return;const $=i.value.start/1e3,M=i.value.end/1e3;c.value={start:i.value.start,end:i.value.end},i.value.duration==0?(p.value=!1,f.value=$):(p.value=!0,f.value=[$,M])},{immediate:!0});const s=t,o=useViewerStore(),{activeAnnotation:i,viewerChannels:u,viewerAnnotations:l}=pinia.storeToRefs(o);vue.ref(null);const v=vue.ref(null),d=vue.ref(!1),f=vue.ref(null),c=vue.ref({start:0,end:0}),p=vue.ref(!0),h=vue.ref([{value:"Event",label:"Event"},{value:"Artifact",label:"Artifact"},{value:"Seizure",label:"Seizure"},{value:"Mark",label:"Mark"},{value:"Stim On",label:"Stim On"},{value:"Stim Off",label:"Stim Off"},{value:"Start",label:"Start"},{value:"Stop",label:"Stop"}]),y=vue.computed(()=>i.value.id?"Edit Annotation":"Create Annotation"),m=vue.computed(()=>i.value.id?"Update":"Create"),_=vue.computed(()=>p.value?"datetimerange":"datetime"),b=vue.computed(()=>{let A="";return i.value.allChannels?A="Adding to all channels":propOr([],"channelIds",i.value).length==1?A="Adding to single channel":A=`Adding to ${propOr([],"channelIds",i.value).length} channels`,A});vue.watch(()=>r.visible,A=>{if(!A)return;const $=i.value.start/1e3,M=i.value.end/1e3;c.value={start:i.value.start,end:i.value.end},i.value.duration==0?(p.value=!1,f.value=$):(p.value=!0,f.value=[$,M])}),vue.watch(p,A=>{const $=i.value.start/1e3,M=i.value.end/1e3;A?f.value=[$,M]:(i.value.duration=0,f.value=$)});const g=()=>{if(!i.value.layer_id){console.error("No layer selected for annotation");return}if(!f.value){console.error("No time range selected for annotation");return}if(p.value)if(Array.isArray(f.value)&&f.value.length>=2)i.value.start=f.value[0]*1e3,i.value.end=f.value[1]*1e3,i.value.duration=i.value.end-i.value.start;else{console.error("Invalid range value for range mode:",f.value);return}else if(typeof f.value=="number")i.value.start=f.value*1e3,i.value.end=f.value*1e3,i.value.duration=0;else{console.error("Invalid range value for point mode:",f.value);return}o.setActiveAnnotation(i.value),s("createUpdateAnnotation",i.value),w()},w=()=>{a.value=!1,s("closeWindow")},k=()=>{d.value=!1};return(A,$)=>{const M=ElSwitch,F=ElDatePicker,O=ElOption,D=ElSelect,j=ElInput,z=ElDialog;return vue.openBlock(),vue.createBlock(z,{class:"timeseries-annotation-modal",ref:"annotation-modal",title:y.value,modelValue:a.value,"onUpdate:modelValue":$[5]||($[5]=T=>{a.value=T,T||s("closeWindow")}),onClose:w,onClosed:k},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_1$8,[vue.createElementVNode("div",_hoisted_2$4,[vue.createElementVNode("div",_hoisted_3$3,[$[6]||($[6]=vue.createElementVNode("div",{class:"select-label"}," Range? ",-1)),vue.createVNode(M,{modelValue:p.value,"onUpdate:modelValue":$[0]||($[0]=T=>p.value=T),"active-color":"#5039F7","inactive-color":"#CAC5BF"},null,8,["modelValue"])]),vue.createVNode(F,{modelValue:f.value,"onUpdate:modelValue":$[1]||($[1]=T=>f.value=T),class:"date-time-picker",type:_.value,format:"YYYY-MM-DD HH:mm:ss","value-format":"x","range-separator":"To","start-placeholder":"Start date/time","end-placeholder":"End date/time"},null,8,["modelValue","type"])]),vue.createElementVNode("div",_hoisted_4$1,[vue.createElementVNode("div",null,[$[7]||($[7]=vue.createElementVNode("div",{class:"select-label"}," Annotation Layer ",-1)),vue.createVNode(D,{modelValue:vue.unref(i).layer_id,"onUpdate:modelValue":$[2]||($[2]=T=>vue.unref(i).layer_id=T),placeholder:"Select"},{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(vue.unref(l),T=>(vue.openBlock(),vue.createBlock(O,{key:T.id,label:T.name,value:T.id},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])]),vue.createElementVNode("div",null,[$[8]||($[8]=vue.createElementVNode("div",{class:"select-label"}," Annotation Type ",-1)),vue.createVNode(D,{modelValue:vue.unref(i).label,"onUpdate:modelValue":$[3]||($[3]=T=>vue.unref(i).label=T),placeholder:"Select"},{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(h.value,T=>(vue.openBlock(),vue.createBlock(O,{key:T.value,label:T.label,value:T.value},null,8,["label","value"]))),128))]),_:1},8,["modelValue"])])]),vue.createElementVNode("div",_hoisted_5$1,[$[9]||($[9]=vue.createElementVNode("div",{class:"select-label"}," Description ",-1)),vue.createVNode(j,{ref_key:"input",ref:v,modelValue:vue.unref(i).description,"onUpdate:modelValue":$[4]||($[4]=T=>vue.unref(i).description=T),placeholder:"Please provide additional information...",type:"textarea",rows:5},null,8,["modelValue"])])]),vue.createElementVNode("div",_hoisted_6$1,[vue.createElementVNode("div",_hoisted_7$1,[vue.createElementVNode("div",_hoisted_8$1,[vue.createVNode(IconSelection,{class:"inline-icon",height:16,width:16}),vue.createTextVNode(" "+vue.toDisplayString(b.value),1)]),vue.createElementVNode("div",_hoisted_9,[vue.createVNode(vue.unref(n),{onClick:g},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(m.value),1)]),_:1})])])])]),_:1},8,["title","modelValue"])}}},TSAnnotationModal=_export_sfc$1(_sfc_main$8,[["__scopeId","data-v-af090f6f"]]),TSAnnotationModal$1=Object.freeze(Object.defineProperty({__proto__:null,default:TSAnnotationModal},Symbol.toStringTag,{value:"Module"})),_sfc_main$7={name:"DialogBody",setup(e,{slots:t}){return{hasSlot:r=>!!t[r]}},props:{fixedHeight:{type:Boolean,default:!1}},computed:{classNames:function(){const e=this.$slots.icon?"icon":"",t=this.fixedHeight?"fixed-height":"";return`dialog-body ${e} ${t}`}}},_hoisted_1$7={key:0,class:"dialog-body-icon"},_hoisted_2$3={key:1,class:"dialog-body-heading"},_hoisted_3$2={class:"dialog-body-content"};function _sfc_render$6(e,t,n,r,a,s){return vue.openBlock(),vue.createElementBlock("div",{class:vue.normalizeClass(s.classNames)},[r.hasSlot("icon")?(vue.openBlock(),vue.createElementBlock("div",_hoisted_1$7,[vue.renderSlot(e.$slots,"icon",{},void 0,!0)])):vue.createCommentVNode("",!0),r.hasSlot("heading")?(vue.openBlock(),vue.createElementBlock("div",_hoisted_2$3,[vue.renderSlot(e.$slots,"heading",{},void 0,!0)])):vue.createCommentVNode("",!0),vue.createElementVNode("div",_hoisted_3$2,[vue.renderSlot(e.$slots,"default",{},void 0,!0)])],2)}const __unplugin_components_2=_export_sfc$1(_sfc_main$7,[["render",_sfc_render$6],["__scopeId","data-v-8ee2b9e5"]]),_sfc_main$6={name:"IconWarningCircle",props:{width:{type:Number,default:16},height:{type:Number,default:16},color:{type:String,default:"currentColor"}}},_hoisted_1$6=["width","height","fill"];function _sfc_render$5(e,t,n,r,a,s){return vue.openBlock(),vue.createElementBlock("svg",{xmlns:"http://www.w3.org/2000/svg",width:n.width,height:n.height,fill:n.color,viewBox:"0 0 24 24"},t[0]||(t[0]=[vue.createElementVNode("path",{pid:"0",d:"M22 11.4c-.1-2.7-1.3-5.1-3.3-6.9-.4-.4-1-.3-1.4.1-.4.4-.3 1 .1 1.4 1.6 1.4 2.5 3.4 2.7 5.5.1 2.1-.6 4.2-2 5.8s-3.4 2.5-5.5 2.7c-2.1.1-4.2-.6-5.8-2-1.6-1.4-2.5-3.4-2.7-5.5-.1-2.1.6-4.2 2-5.8 1.3-1.4 3.1-2.4 5-2.6V11c0 .6.4 1 1 1s1-.4 1-1V2h-1C9.2 2 6.4 3.2 4.5 5.3c-1.8 2-2.7 4.6-2.5 7.2.1 2.7 1.3 5.1 3.3 6.9C7.2 21.2 9.6 22 12 22c2.7 0 5.5-1.1 7.5-3.3 1.7-2 2.6-4.6 2.5-7.3z"},null,-1),vue.createElementVNode("circle",{pid:"1",cx:"12",cy:"15.5",r:"1.5"},null,-1)]),8,_hoisted_1$6)}const __unplugin_components_1=_export_sfc$1(_sfc_main$6,[["render",_sfc_render$5]]),_sfc_main$5={name:"BfDialogHeader",props:{title:{type:String,default:""}},methods:{onClose:function(){this.$parent.handleClose()}}},_hoisted_1$5={class:"bf-dialog-header"},_hoisted_2$2={class:"bf-dialog-header-title"};function _sfc_render$4(e,t,n,r,a,s){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$5,[vue.createElementVNode("span",_hoisted_2$2,vue.toDisplayString(n.title),1),this.$slots.tabs?vue.createCommentVNode("",!0):(vue.openBlock(),vue.createElementBlock("button",{key:0,class:"icon-close",onClick:t[0]||(t[0]=(...o)=>s.onClose&&s.onClose(...o))})),vue.renderSlot(e.$slots,"tabs",{},void 0,!0)])}const __unplugin_components_0=_export_sfc$1(_sfc_main$5,[["render",_sfc_render$4],["__scopeId","data-v-8fb1f048"]]),_sfc_main$4={name:"BfLibraryButton",props:{type:{type:String,default:"button"},autofocus:Boolean,disabled:Boolean,processing:{type:Boolean,default:!1},processingText:{type:String,default:""}},computed:{hasPrefixSlot:function(){return!!this.$slots.prefix},hasSuffixSlot:function(){return!!this.$slots.suffix}},methods:{}},_hoisted_1$4=["disabled","autofocus","type"],_hoisted_2$1={key:0,class:"prefix"},_hoisted_3$1={key:3,class:"suffix"};function _sfc_render$3(e,t,n,r,a,s){return vue.openBlock(),vue.createElementBlock("button",{class:vue.normalizeClass(["bf-library-button",[n.type?"bf-library-button--"+n.type:"",s.hasPrefixSlot?"hasPrefix":""]]),disabled:n.disabled||n.processing,autofocus:n.autofocus,type:n.type},[s.hasPrefixSlot?(vue.openBlock(),vue.createElementBlock("span",_hoisted_2$1,[vue.renderSlot(e.$slots,"prefix",{},void 0,!0)])):vue.createCommentVNode("",!0),n.processing?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:1},[n.processingText?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.createTextVNode(vue.toDisplayString(n.processingText),1)],64)):vue.renderSlot(e.$slots,"default",{key:1},void 0,!0)],64)):vue.createCommentVNode("",!0),n.processing?vue.createCommentVNode("",!0):vue.renderSlot(e.$slots,"default",{key:2},void 0,!0),s.hasSuffixSlot?(vue.openBlock(),vue.createElementBlock("span",_hoisted_3$1,[vue.renderSlot(e.$slots,"suffix",{},void 0,!0)])):vue.createCommentVNode("",!0)],10,_hoisted_1$4)}const BfLibraryButton=_export_sfc$1(_sfc_main$4,[["render",_sfc_render$3],["__scopeId","data-v-2e183fe2"]]),BFLibraryButton=Object.freeze(Object.defineProperty({__proto__:null,default:BfLibraryButton},Symbol.toStringTag,{value:"Module"})),_sfc_main$3={name:"TsAnnotationDeleteDialog",components:{BfDialogHeader:__unplugin_components_0,DialogBody:__unplugin_components_2,BfLibraryButton,IconWarningCircle:__unplugin_components_1},props:{visible:{type:Boolean,default:!1},deleteAnnotation:{type:Object,default:()=>({annotation:{},withDiscussions:!1})}},data:function(){return{isProcessing:!1}},computed:{annotationDescription:function(){return pathOr("",["annotation","label"],this.deleteAnnotation)},annotationDateTime:function(){const e=pathOr("",["annotation","start"],this.deleteAnnotation);return this.getUTCDateString(e)+" "+this.getUTCTimeString(e)},deleteDiscussions:function(){return propOr(!1,"withDiscussions",this.deleteAnnotation)},btnDeleteCopy:function(){return this.deleteDiscussions?"Yes, I'm sure":"Delete"}},methods:{removeAnnotation:function(){this.$emit("delete",this.deleteAnnotation.annotation)},close:function(){this.$emit("update:visible",!1)},onClosed:function(){this.isProcessing=!1,this.$emit("update:delete-annotation",{annotation:{},withDiscussions:!1})},getUTCDateString:function(e){return e>0?(e=new Date(e/1e3),e.toDateString()):"unknown"},getUTCTimeString:function(e){if(e>0)return e=e/1e3,e=new Date(e),("0"+e.getUTCHours()).slice(-2)+":"+("0"+e.getUTCMinutes()).slice(-2)+":"+("0"+e.getUTCSeconds()).slice(-2)}}},_hoisted_1$3={class:"dialog-simple-buttons"};function _sfc_render$2(e,t,n,r,a,s){const o=__unplugin_components_0,i=__unplugin_components_1,u=vue.resolveComponent("bf-library-button"),l=__unplugin_components_2,v=ElDialog;return vue.openBlock(),vue.createBlock(v,{class:"simple",modelValue:n.visible,"onUpdate:modelValue":t[0]||(t[0]=d=>n.visible=d),"show-close":!1,onClose:s.close,onClosed:s.onClosed},{default:vue.withCtx(()=>[vue.createVNode(o,{slot:"title"}),vue.createVNode(l,null,{default:vue.withCtx(()=>[vue.createVNode(i,{class:"mb-16",height:32,width:32,color:"#C14D49"}),t[5]||(t[5]=vue.createElementVNode("h2",null,"Delete annotation?",-1)),s.deleteDiscussions?(vue.openBlock(),vue.createElementBlock(vue.Fragment,{key:0},[vue.createElementVNode("p",null,vue.toDisplayString(s.annotationDescription)+" - "+vue.toDisplayString(s.annotationDateTime),1),t[1]||(t[1]=vue.createElementVNode("hr",null,null,-1)),t[2]||(t[2]=vue.createElementVNode("p",null," Deleting this annotation will also remove any associated discussions and cannot be undone. ",-1)),t[3]||(t[3]=vue.createElementVNode("p",null," Are you sure you would like to remove this annotation? ",-1))],64)):vue.createCommentVNode("",!0),vue.createElementVNode("div",_hoisted_1$3,[vue.createVNode(u,{class:"secondary",onClick:s.close},{default:vue.withCtx(()=>t[4]||(t[4]=[vue.createTextVNode(" Cancel ")])),_:1,__:[4]},8,["onClick"]),vue.createVNode(u,{class:"red",processing:e.isProcessing,onClick:s.removeAnnotation},{default:vue.withCtx(()=>[vue.createTextVNode(vue.toDisplayString(s.btnDeleteCopy),1)]),_:1},8,["processing","onClick"])])]),_:1,__:[5]})]),_:1},8,["modelValue","onClose","onClosed"])}const TsAnnotationDeleteDialog=_export_sfc$1(_sfc_main$3,[["render",_sfc_render$2],["__scopeId","data-v-3cc4b959"]]),TsAnnotationDeleteDialog$1=Object.freeze(Object.defineProperty({__proto__:null,default:TsAnnotationDeleteDialog},Symbol.toStringTag,{value:"Module"})),_sfc_main$2={name:"CircleIcon",props:{icon:{type:String},height:{type:String,default:"16"},width:{type:String,default:"16"},currentColor:{type:String,default:"#71747C"}}},_hoisted_1$2={class:"circle-icon"};function _sfc_render$1(e,t,n,r,a,s){return vue.openBlock(),vue.createElementBlock("div",_hoisted_1$2,[vue.renderSlot(e.$slots,"icon",{},void 0,!0)])}const CircleIcon=_export_sfc$1(_sfc_main$2,[["render",_sfc_render$1],["__scopeId","data-v-46dcef49"]]),_sfc_main$1={name:"AnnotationLayerWindow",components:{CircleIcon,BfLibraryButton},props:{visible:{type:Boolean,default:!1}},data:function(){return{name:"",selectedColor:"",colorOptions:[{label:"Green",value:"#18BA62",iconBgColor:"#18BA62"},{label:"Gold",value:"#FFBC27",iconBgColor:"#FFBC27"},{label:"Red",value:"#E94B4B",iconBgColor:"#E94B4B"},{label:"Light Blue",value:"#2760FF",iconBgColor:"#2760FF"},{label:"Magenta",value:"#FF4FFF",iconBgColor:"#FF4FFF"},{label:"Cyan",value:"#50FFFF",iconBgColor:"#50FFFF"},{label:"Yellow",value:"#FFFF4E",iconBgColor:"#FFFF4E"},{label:"Purple",value:"#512BAF",iconBgColor:"#512BAF"},{label:"Lavendar",value:"#8A6ECF",iconBgColor:"#8A6ECF"},{label:"Teal",value:"#389BAD",iconBgColor:"#389BAD"},{label:"Dark Green",value:"#187D46",iconBgColor:"#187D46"},{label:"Brick Red",value:"#B12800",iconBgColor:"#B12800"},{label:"Dark Blue",value:"#0C2475",iconBgColor:"#0C2475"},{label:"Bright Orange",value:"#FF5321",iconBgColor:"#FF5321"},{label:"Pink",value:"#FF99CC",iconBgColor:"#FF99CC"},{label:"Tan",value:"#DCC180",iconBgColor:"#DCC180"},{label:"Medium Blue",value:"#0D4EFF",iconBgColor:"#0D4EFF"},{label:"Orange",value:"#FF6C21",iconBgColor:"#FF6C21"},{label:"Black",value:"#000000",iconBgColor:"#000000"},{label:"Gray",value:"#9B9B9B",iconBgColor:"#9B9B9B"},{label:"Lime",value:"#00FF00",iconBgColor:"#00FF00"},{label:"Salmon",value:"#FA8072",iconBgColor:"#FA8072"},{label:"Olive",value:"#808000",iconBgColor:"#808000"},{label:"Sienna",value:"#A0522D",iconBgColor:"#A0522D"}]}},methods:{close:function(){this.$emit("close-window")},handleFormSubmit:function(){this.$emit("createLayer",{name:this.name,color:this.selectedColor})},handleFormCancel:function(){this.close()}}},_hoisted_1$1={slot:"body"},_hoisted_2={class:"input-section"},_hoisted_3={class:"input-section"},_hoisted_4={class:"color-option"},_hoisted_5={style:{float:"right",color:"#8492a6","font-size":"13px"}},_hoisted_6={slot:"footer"},_hoisted_7={class:"button-wrapper"},_hoisted_8={class:"buttons"};function _sfc_render(e,t,n,r,a,s){const o=ElInput,i=ElOption,u=ElSelect,l=vue.resolveComponent("bf-library-button"),v=ElDialog;return vue.openBlock(),vue.createBlock(v,{"onUpdate:modelValue":t[2]||(t[2]=d=>n.visible=d),"model-value":n.visible,onClose:s.close,class:"timeseries-annotation-layer-modal",ref:"timeseries-filter-modal",title:"Annotation Layers"},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_1$1,[vue.createElementVNode("div",_hoisted_2,[t[3]||(t[3]=vue.createTextVNode(" Layer Name: ")),vue.createVNode(o,{placeholder:"Add a Layer Name",modelValue:e.name,"onUpdate:modelValue":t[0]||(t[0]=d=>e.name=d),ref:"input"},null,8,["modelValue"])]),vue.createElementVNode("div",_hoisted_3,[t[4]||(t[4]=vue.createTextVNode(" Select Color: ")),vue.createVNode(u,{modelValue:e.selectedColor,"onUpdate:modelValue":t[1]||(t[1]=d=>e.selectedColor=d),placeholder:"Select"},{default:vue.withCtx(()=>[(vue.openBlock(!0),vue.createElementBlock(vue.Fragment,null,vue.renderList(e.colorOptions,d=>(vue.openBlock(),vue.createBlock(i,{key:d.value,label:d.label,value:d.value},{default:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_4,[vue.createElementVNode("div",{style:vue.normalizeStyle({backgroundColor:d.value,height:"30px",width:"30px",borderRadius:"50%"})},null,4),vue.createElementVNode("div",_hoisted_5,vue.toDisplayString(d.label),1)])]),_:2},1032,["label","value"]))),128))]),_:1},8,["modelValue"])])])]),footer:vue.withCtx(()=>[vue.createElementVNode("div",_hoisted_6,[vue.createElementVNode("div",_hoisted_7,[vue.createElementVNode("div",_hoisted_8,[vue.createVNode(l,{onClick:s.handleFormCancel},{default:vue.withCtx(()=>t[5]||(t[5]=[vue.createTextVNode("Cancel ")])),_:1,__:[5]},8,["onClick"]),vue.createVNode(l,{onClick:s.handleFormSubmit},{default:vue.withCtx(()=>t[6]||(t[6]=[vue.createTextVNode("Save ")])),_:1,__:[6]},8,["onClick"])])])])]),_:1},8,["model-value","onClose"])}const TSViewerLayerWindow=_export_sfc$1(_sfc_main$1,[["render",_sfc_render],["__scopeId","data-v-b14c56dd"]]),TSViewerLayerWindow$1=Object.freeze(Object.defineProperty({__proto__:null,default:TSViewerLayerWindow},Symbol.toStringTag,{value:"Module"})),hexToRgbA=(e,t)=>{let n;if(/^#([A-Fa-f0-9]{3}){1,2}$/.test(e))return n=e.substring(1).split(""),n.length===3&&(n=[n[0],n[0],n[1],n[1],n[2],n[2]]),n="0x"+n.join(""),"rgba("+[n>>16&255,n>>8&255,n&255].join(",")+","+t+")";throw new Error("Bad Hex")},sortAnnotations=e=>{e.sort((t,n)=>t.start<n.start?-1:t.start>n.start?1:0)},getLayer=(e,t)=>{const n=(e==null?void 0:e.layer_id)||0;return defaultTo({},find(propEq("id",n),t))},annIndexOf=(e,t,n,r=0,a=!1)=>{let s;return a?s=indexOfEnd(e,t,r,e.length-1,n):s=indexOfStart(e,t,r,e.length-1,n),s===-1?s=0:s<0&&(s=-s-2),s},indexOfStart=(e,t,n,r,a)=>{if(r<n){let o=r>=0?r:-r-2;if(o===-1)return o;const i=e[o].start;for(;o>=0&&e[o].start===i;)o--;return-o-2}const s=parseInt((n+r)/2);if(e[s].start>t)return indexOfStart(e,t,n,s-1,a);if(e[s].start<t)return indexOfStart(e,t,s+1,r,a);{let o=s;if(a){for(;o>=0&&e[o].start===t;)o--;o++}else{for(;o<e.length&&e[o].start===t;)o++;o--}return o}},indexOfEnd=(e,t,n,r,a)=>{if(r<n){let i=r>=0?r:-r-2;if(i===-1)return i;const u=e[i].start+e[i].duration;for(;i>=0&&e[i].start+e[i].duration===u;)i--;return-i-2}const s=parseInt((n+r)/2),o=e[s].start+e[s].duration;if(o>t)return indexOfEnd(e,t,n,s-1,a);if(o<t)return indexOfEnd(e,t,s+1,r,a);{let i=s;if(a){for(;i>=0&&e[i].start+e[i].duration===t;)i--;i++}else{for(;i<e.length&&e[i].start+e[i].duration===t;)i++;i--}return i}},canvasScaler=(e,t,n=0)=>t*(e+n);function useAnnotationData(){const e=useViewerStore(),{viewerChannels:t,viewerAnnotations:n,viewerMontageScheme:r}=pinia.storeToRefs(e),a=vue.ref([]),s=vue.ref([]),o=d=>{const f=r.value!=="NOT_MONTAGED";let c=propOr("","id",d);if(f){const p=c.split("_");c=p.length?head(p):c}return c},i=async(d,f,c,p,h)=>{const y=[];y.push({start:d,end:c.tsEnd});let m=0;for(let g=0;g<a.value.length;g++){const w=a.value[g];if(d>=w.start&&f<=w.end)return;if(y[0].start>f)break;if(w.start<=y[0].start&&w.end>=d)m=g+1,y[0].start=w.end;else if(w.start>y[0].start){m=g;break}}const _=n.value.reduce((g,w)=>g+w.annotations.length,0);if(y[0].start>=y[0].end&&_>0)return;const b=0;for(let g=m;g<a.value.length;g++)if(a.value[g].start>=y[b].start)if(y[b].end=a.value[g].start,a.value[g].end<f)y.push({start:a.value[g].end,end:c.tsEnd});else break;if(!(y[0].start>=y[0].end&&_>0)&&y.length>0){t.value.map(g=>o(g));for(const g of y){for(const w of n.value){if(!w.id){console.warn("Layer ID is undefined, skipping annotation request for layer:",w);continue}const k=Math.floor(g.end),A={id:p.content.id,start:Math.floor(g.start),end:k,layerId:w.id,limit:c.constants.LIMITANNFETCH};try{const $=await useToken(),F=`${e.config.apiUrl}/timeseries/${p.content.id}/layers/${w.id}/annotations?api_key=${$}`,O=Object.keys(A).map(T=>`&${T}=${A[T]}`).join(""),D=`${F}${O}`,j=await fetch(D,{method:"GET",headers:{"Content-type":"application/json"}});if(j.status>=400)throw new Error(j.status);const z=await j.json();await u(z,h)}catch($){useHandleXhrError($)}}a.value.push({start:Math.floor(g.start),end:Math.floor(g.end)})}a.value.sort((g,w)=>g.start<w.start?-1:g.start>w.start?1:0)}},u=async(d,f)=>{const c=propOr({},"linkedPackages",d);let p=pathOr([],["annotations","results"],d);if(p.length>=500){let y=0;for(const m of p)m.start>y&&(y=m.start);for(const m of a.value)if(m.end>y&&m.start<y){m.end=y;break}}const h=r.value!=="NOT_MONTAGED";if(p.length>0){const y=p.map(m=>{const _={name:"",id:m.id,label:m.label,description:m.description,start:m.start,duration:m.end-m.start,end:m.end,cStart:null,cEnd:null,selected:!1,channelIds:m.channelIds,allChannels:!1,layer_id:m.layerId,userId:m.userId};if(m.linkedPackage){const b=m.linkedPackage;_.linkedPackage=pathOr("",["content","id"],c[b]),_.linkedPackageDTO=c[b]}return(!h&&_.channelIds.length===t.value.length||h&&_.channelIds.length>t.value.length)&&(_.allChannels=!0),_});n.value.forEach(m=>{const _=m.annotations,b=y.filter(g=>m.id===g.layer_id);m.annotations=_.concat(b),e.updateLayer(m)})}f("annotationsReceived")};return{cachedAnnRange:a,annLayerInfo:s,checkAnnotationRange:i,findNextAnnotation:d=>{const f=e.getViewerActiveLayer(),c=annIndexOf(f.annotations,d,!1);return c<f.annotations.length?f.annotations[c].start>d?f.annotations[c]:f.annotations[c+1]||f.annotations[c]:f.annotations[c]},findPreviousAnnotation:d=>{const f=e.getViewerActiveLayer(),c=annIndexOf(f.annotations,d,!0);return f.annotations[c].start<d?f.annotations[c]:c>0?f.annotations[c-1]:f.annotations[c]},getChannelId:o}}function useAnnotationRendering(){const e=useViewerStore(),{viewerAnnotations:t,viewerChannels:n}=pinia.storeToRefs(e),r=vue.ref([]),a=vue.ref([]),s=vue.ref(null),o=vue.ref(["#FFFF4E"]),i=(c,p)=>{var _,b;const y=(((_=p.constants)==null?void 0:_.ANNOTATIONLABELHEIGHT)||20)/2|0,m=((b=p.constants)==null?void 0:b.XOFFSET)||0;for(const g of c){let w=g.start,k=g.duration;g.duration<0&&(w=g.start+g.duration,k=-g.duration);const A=m+(w-p.start)/p.rsPeriod;if(g.cStart=A|0,g.duration!==0){const $=m+(w+k-p.start)/p.rsPeriod;g.cEnd=$|0}else g.cEnd=g.cStart+p.cWidth/40|0;if(g.allChannels)g.allOffsets=[y],g.cY=y;else{g.allOffsets=[],g.minOffset=p.cHeight|0,g.maxOffset=0;const $=n.value;for(const M of g.channelIds){let F=null;for(const O of $)if(O.id===M&&O.visible){F=O.rowBaseline|0,F<g.minOffset&&(g.minOffset=F),F>g.maxOffset&&(g.maxOffset=F),g.allOffsets.push(F);break}}a.value.indexOf(g.minOffset)<0&&a.value.push(g.minOffset),g.cY=g.minOffset}}},u=(c,p,h,y)=>{var b,g;const m=((b=h.constants)==null?void 0:b.ANNOTATIONLABELHEIGHT)||20,_=m/2|0;c.setTransform(h.pixelRatio,0,0,h.pixelRatio,0,0),c.save(),c.lineWidth=1,c.setLineDash([8,5]),c.strokeStyle="rgba(0,0,0, 0.6)",c.fillStyle="rgba(0,0,0,0.05)";for(const w of p){const k=getLayer(w,t.value);w.selected&&(c.save(),c.strokeStyle=k.selColor,c.fillStyle=k.bkColor,c.lineWidth=1);const A=Math.round(w.cStart)+.5,$=Math.round(w.cEnd)+.5;w.allChannels?w.duration===0?(c.beginPath(),c.moveTo(A+1,m),c.lineTo(A,y),c.stroke()):(c.fillRect(A,m,$-A,y-m),c.beginPath(),c.moveTo(A,m),c.lineTo(A,y),c.moveTo($,m),c.lineTo($,y),c.stroke()):((g=w==null?void 0:w.channelIds)==null?void 0:g.length)===1?w.duration===0&&(c.beginPath(),c.moveTo(A,w.minOffset+_),c.lineTo(A,w.minOffset+_+8),c.stroke()):w.duration===0?(c.beginPath(),c.moveTo(A,w.minOffset+_),c.lineTo(A,w.maxOffset-_),c.stroke()):(c.fillRect(A-1,w.minOffset+_,$-A+1,w.maxOffset-w.minOffset-m),c.beginPath(),c.moveTo(A,w.minOffset+_),c.lineTo(A,w.maxOffset-_),c.moveTo($,w.minOffset+_),c.lineTo($,w.maxOffset-_),c.stroke()),w.selected&&c.restore()}c.restore()},l=async(c,p,h,y,m,_)=>{var w;const b=((w=h.constants)==null?void 0:w.ANNOTATIONLABELHEIGHT)||20,g=b/2|0;c.setTransform(h.pixelRatio,0,0,h.pixelRatio,0,0),c.save(),c.lineWidth=2,c.font="14px sans-serif",c.textAlign="left";for(const k of p){const A=getLayer(k,t.value);if(k===s.value&&y)continue;k.selected?(c.fillStyle=A.selColor||"rgba(51,204,102, 0.8)",c.strokeStyle="white"):(c.fillStyle=A.color||"rgba(51,204,102,0.8)",c.strokeStyle=k===s.value?"white":"rgba(255,255,255,0.8)");const $=Math.round(k.cStart)+1,M=Math.round(k.cEnd);let F=0;for(let j=0;j<k.allOffsets.length;j++)c.fillRect($-1,k.allOffsets[j]-g,M-$+2,b),k.allOffsets[j]===k.minOffset&&(F=j);const O=k.allOffsets[F];if(["annSelect","annResize-left","annResize-right"].includes(m)&&_==="annotate"&&(c.beginPath(),k.duration!==0&&(c.moveTo(M-3,O-g+3),c.lineTo(M-3,O+g-3)),c.moveTo($+3,O-g+3),c.lineTo($+3,O+g-3),c.stroke()),M-$>k.label.length*8+10){c.fillStyle=o.value.indexOf(A.hexColor)>=0?"black":"white";const j=k.linkedPackage?$+30:$+10,z=k.linkedPackage?O+g-g/2:O+g-6;c.fillText(k.label,j,z)}const D=k.linkedPackageDTO;D&&M-$>=30&&await v(c,D,$,O,g,b)}c.restore()},v=async(c,p,h,y,m,_)=>{const b=pathOr({},["objects","view",1,"content"],p),g=propOr("","fileType",b),w=new Image;if(g==="PNG"){const{id:k,packageId:A}=b,$=e.config.apiUrl;try{const M=await useToken();w.src=`${$}/packages/${A}/files/${k}/presign/?api_key=${M}`,w.complete?c.drawImage(w,h,y-m,27,_):w.addEventListener("load",()=>{c.drawImage(w,h,y-m,27,_)},{once:!0})}catch(M){console.error("Error loading image:",M)}}else w.src=d(),c.drawImage(w,h+5,y-m,20,20)},d=c=>"/path/to/default/icon.png";return{renderAnn:r,hoverOffsets:a,focusedAnn:s,render:(c,p,h,y)=>{var k,A,$,M;if(!p){console.warn("TSAnnotationCanvas: annotationsCanvas prop is undefined or null");return}const m=p.getContext("2d"),_=h.getContext("2d");m.setTransform(c.pixelRatio,0,0,c.pixelRatio,0,0),_.setTransform(c.pixelRatio,0,0,c.pixelRatio,0,0),a.value=[(((k=c.constants)==null?void 0:k.ANNOTATIONLABELHEIGHT)||20)/2],m.clearRect(0,0,c.cWidth,c.cHeight),_.clearRect(0,0,c.cWidth,c.cHeight),r.value=[];const b=c.duration&&c.duration>0?c.duration:15e6,g=c.start||0,w=g+b;console.log("🎨 Annotation render debug:",{start:g,duration:b,end:w,layerCount:((A=t.value)==null?void 0:A.length)||0,totalAnnotations:(($=t.value)==null?void 0:$.reduce((F,O)=>{var D;return F+(((D=O.annotations)==null?void 0:D.length)||0)},0))||0});for(const F of t.value)if(F.visible&&((M=F.annotations)==null?void 0:M.length)>0){console.log(`🔍 Processing layer "${F.name}" with ${F.annotations.length} annotations`);const O=F.annotations.filter(D=>{const j=D.start,z=D.end||D.start+(D.duration||0),T=j<w&&z>g;return T&&console.log(` ✅ Including annotation "${D.label}": ${j} - ${z}`),T});console.log(` 📊 Found ${O.length} annotations in viewport`),O.length>0&&(O.sort((D,j)=>D.start-j.start),r.value.push(...O))}if(console.log(`🎯 Total annotations to render: ${r.value.length}`),r.value.length===0){console.log("⚠️ No annotations found in viewport");return}sortAnnotations(r.value),i(r.value,c),u(m,r.value,c,y),l(_,r.value,c,!0,c.pointerMode,c.viewerActiveTool),s.value&&l(_,[s.value],c,!1,c.pointerMode,c.viewerActiveTool),console.log(`✅ Rendered ${r.value.length} annotations successfully`)},computeRenderOptions:i,renderAnnotationAreas:u,renderAnnotationLabels:l}}function useAnnotationInteraction(e,t,n){const r=useViewerStore(),a=vue.ref([0,0]),s=(c,p)=>{const y=((p==null?void 0:p.ANNOTATIONLABELHEIGHT)||20)/2;for(const m of n.value)if(c>=m-y&&c<=m+y)return!0;return!1},o=(c,p,h)=>{var _;const m=((h==null?void 0:h.ANNOTATIONLABELHEIGHT)||20)/2;for(let b=0;b<(((_=t.value)==null?void 0:_.length)||0);b++){const g=t.value[b];if(g.cStart<c&&g.cEnd>c){if(p>g.cY-m&&p<g.cY+m)return b}else if(g.cStart>c)break}return null},i=(c,p,h)=>{if(!h)return p;switch(p){case"annotate":return c<=h.cStart+10?"annResize-left":c>=h.cEnd-10&&h.duration>0?"annResize-right":"annSelect";case"pointer":return"annSelect";default:return p}};return{mouseDownPosition:a,shouldCheckAnnotationHover:s,findAnnotationAtPosition:o,determinePointerMode:i,resetFocusedAnnotation:()=>{var c;((c=e.value)==null?void 0:c.oldStart)!==void 0&&(e.value.start=e.value.oldStart,e.value.duration=e.value.oldDuration,e.value.end=e.value.start+e.value.duration)},selectFocusedAnnotation:()=>e.value?(r.setActiveAnnotation(e.value),!0):!1,onMouseDown:(c,p,h)=>{e.value&&["annResize-left","annResize-right"].includes(h)&&(e.value.oldStart=e.value.start,e.value.oldDuration=e.value.duration,a.value=[c,p])},onMouseMove:(c,p,h,y,m)=>{let _=h;if(y&&a.value){const b=(c-a.value[0])*m.rsPeriod;switch(h){case"annResize-left":e.value.oldDuration>0?(e.value.start=e.value.oldStart+b,e.value.duration=e.value.oldDuration-b,e.value.end=e.value.start+e.value.duration):e.value.start=e.value.oldStart+b;break;case"annResize-right":e.value.duration=e.value.oldDuration+b,e.value.end=e.value.start+e.value.duration;break}}else{const b=s(p,m.constants);if(_=m.viewerActiveTool,b){const g=o(c,p,m.constants);if(g!==null){const w=e.value,k=t.value[g];(!w||c<e.value.cStart||c>e.value.cEnd)&&(e.value=k),_=i(c,m.viewerActiveTool,e.value)}else e.value=null}else e.value=null,_=m.viewerActiveTool}return _},onMouseUp:(c,p)=>{if(e.value&&["annResize-left","annResize-right"].includes(c)){if(e.value.duration<0){const h=-e.value.duration,y=e.value.start-h;e.value.start=y,e.value.duration=h,e.value.end=y+h}r.setActiveAnnotation(e.value),p("updateAnnotation",e.value)}}}}var tinyEmitter={exports:{}},hasRequiredTinyEmitter;function requireTinyEmitter(){if(hasRequiredTinyEmitter)return tinyEmitter.exports;hasRequiredTinyEmitter=1;function e(){}return e.prototype={on:function(t,n,r){var a=this.e||(this.e={});return(a[t]||(a[t]=[])).push({fn:n,ctx:r}),this},once:function(t,n,r){var a=this;function s(){a.off(t,s),n.apply(r,arguments)}return s._=n,this.on(t,s,r)},emit:function(t){var n=[].slice.call(arguments,1),r=((this.e||(this.e={}))[t]||[]).slice(),a=0,s=r.length;for(a;a<s;a++)r[a].fn.apply(r[a].ctx,n);return this},off:function(t,n){var r=this.e||(this.e={}),a=r[t],s=[];if(a&&n)for(var o=0,i=a.length;o<i;o++)a[o].fn!==n&&a[o].fn._!==n&&s.push(a[o]);return s.length?r[t]=s:delete r[t],this}},tinyEmitter.exports=e,tinyEmitter.exports.TinyEmitter=e,tinyEmitter.exports}var instance,hasRequiredInstance;function requireInstance(){if(hasRequiredInstance)return instance;hasRequiredInstance=1;var e=requireTinyEmitter();return instance=new e,instance}var instanceExports=requireInstance();const emitter=getDefaultExportFromCjs(instanceExports),EventBus={$emit:(...e)=>emitter.emit(...e),$on:(...e)=>emitter.on(...e),$off:(...e)=>emitter.off(...e),$once:(...e)=>emitter.once(...e)};function useAnnotationLayers(){const e=useViewerStore(),t=vue.ref([]),n=vue.ref(["#18BA62","#FFBC27","#E94B4B","#0D4EFF","#FF4FFF","#50FFFF","#FFFF4E","#512BAF","#8A6ECF","#389BAD","#187D46","#B12800","#0C2475","#FF5321","#FF99CC","#DCC180","#FF6C21","#000000","#9B9B9B","#00FF00","#FA8072","#808000","#A0522D","#2760FF"]),r=async(v,d)=>{const f=[];if(v.results.length===0)await a({name:"Default",color:"#18BA62",description:"Default Annotation Layer"},null,d);else{for(let c=0;c<v.results.length;c++){const p=v.results[c];let h=p.color||n.value[c%n.value.length];const y={id:p.id,name:p.name,description:p.description,visible:!0,selected:c===0,annotations:[],color:hexToRgbA(h,.7),hexColor:h,bkColor:hexToRgbA(h,.15),selColor:hexToRgbA(h,.9)};f.push(y)}e.setAnnotations(f),d("annLayersInitialized")}t.value=v.results},a=async(v,d,f)=>{try{const c=await useToken(),p=`${e.config.apiUrl}/timeseries/${d.content.id}/layers?api_key=${c}`,h=await useSendXhr(p,{method:"POST",body:{name:v.name,color:v.color,description:v.description||v.name}}),y={...h,annotations:[],hexColor:h.color,color:hexToRgbA(h.color,.7),bkColor:hexToRgbA(h.color,.15),selColor:hexToRgbA(h.color,.9),visible:!0,selected:!0};return e.createLayer(y),e.setActiveAnnotationLayer(y.id),EventBus.$emit("toast",{detail:{msg:`'${y.name}' Layer Created`}}),y}catch(c){throw useHandleXhrError(c),c}finally{f&&f("closeAnnotationLayerWindow")}};return{annLayerInfo:t,defaultColors:n,initializeLayers:r,createAnnotationLayer:a,updateLayerVisibility:(v,d)=>{console.log(`[useAnnotationLayers] Updating layer ${v} visibility to:`,d);const f=e.viewerAnnotations.find(c=>c.id===v);if(f){console.log("[useAnnotationLayers] Found layer:",f.name,"current visible:",f.visible),f.visible=d,e.updateLayer(f),console.log("[useAnnotationLayers] Updated layer:",f.name,"new visible:",f.visible);const c=e.viewerAnnotations.find(p=>p.id===v);console.log("[useAnnotationLayers] Verification - layer visible is now:",c==null?void 0:c.visible)}else console.error("[useAnnotationLayers] Layer not found with ID:",v),console.log("[useAnnotationLayers] Available layers:",e.viewerAnnotations.map(c=>({id:c.id,name:c.name})))},selectLayer:v=>{e.viewerAnnotations.forEach(f=>{f.selected=!1,e.updateLayer(f)});const d=e.viewerAnnotations.find(f=>f.id===v);d&&(d.selected=!0,e.updateLayer(d),e.setActiveAnnotationLayer(v))},deleteLayer:async(v,d)=>{try{const f=await useToken(),c=`${e.config.apiUrl}/timeseries/${d.content.id}/layers/${v}?api_key=${f}`;await useSendXhr(c,{method:"DELETE"}),e.removeLayer(v),EventBus.$emit("toast",{detail:{msg:"Layer deleted successfully"}})}catch(f){throw useHandleXhrError(f),f}},updateLayerColor:async(v,d,f)=>{try{const c=await useToken(),p=`${e.config.apiUrl}/timeseries/${f.content.id}/layers/${v}?api_key=${c}`,h=await useSendXhr(p,{method:"PUT",body:{color:d}}),y=e.viewerAnnotations.find(m=>m.id===v);return y&&(y.hexColor=d,y.color=hexToRgbA(d,.7),y.bkColor=hexToRgbA(d,.15),y.selColor=hexToRgbA(d,.9),e.updateLayer(y)),h}catch(c){throw useHandleXhrError(c),c}},loadLayers:async(v,d)=>{try{const f=await useToken(),c=`${e.config.apiUrl}/timeseries/${v.content.id}/layers?api_key=${f}`,p=await useSendXhr(c);return await r(p,d),p}catch(f){throw useHandleXhrError(f),f}}}}const _hoisted_1=["width","height"],_sfc_main={__name:"TSAnnotationCanvas",props:{cWidth:{type:Number,default:0},cHeight:Number,start:Number,duration:Number,tsEnd:Number,rsPeriod:Number,pixelRatio:Number,constants:{type:Object,default:()=>({ANNOTATIONLABELHEIGHT:20,XOFFSET:0,LIMITANNFETCH:500})},pointerMode:String,annotationsCanvas:[HTMLCanvasElement,Object],activeViewer:{type:Object,required:!0},viewerActiveTool:String},emits:["annLayersInitialized","annotationsReceived","closeAnnotationLayerWindow","updateAnnotation"],setup(e,{expose:t,emit:n}){const r=e,a=n,s=vue.ref(null),{checkAnnotationRange:o,findNextAnnotation:i,findPreviousAnnotation:u}=useAnnotationData(),{renderAnn:l,hoverOffsets:v,focusedAnn:d,render:f}=useAnnotationRendering(),{resetFocusedAnnotation:c,selectFocusedAnnotation:p,onMouseDown:h,onMouseMove:y,onMouseUp:m}=useAnnotationInteraction(d,l,v),{createAnnotationLayer:_,loadLayers:b}=useAnnotationLayers(),g=vue.computed(()=>r.cHeight-20),w=vue.computed(()=>({width:r.cWidth+"px",height:g.value+"px"})),k=()=>{f(r,r.annotationsCanvas,s.value,g.value)},A=(D,j)=>{h(D,j,r.pointerMode)},$=(D,j,z,T)=>y(D,j,z,T,r),M=()=>{m(r.pointerMode,a)},F=()=>{p()&&vue.nextTick(()=>k())},O=async D=>{try{await _(D,r.activeViewer,a)}catch(j){console.error("Error creating layer:",j)}};return vue.watch(()=>r.activeViewer,async D=>{try{await b(D,a),await o(r.start,r.start+r.duration,r,D,a)}catch(j){console.error("Error loading annotations for new viewer:",j)}}),vue.onMounted(async()=>{console.log("TSAnnotationCanvas mounted with props:",{constants:r.constants,annotationsCanvas:r.annotationsCanvas,viewerActiveTool:r.viewerActiveTool});try{await b(r.activeViewer,a),await o(r.start,r.start+r.duration,r,r.activeViewer,a)}catch(D){console.error("Error initializing annotations:",D)}}),t({render:k,resetFocusedAnnotation:c,findNextAnnotation:i,findPreviousAnnotation:u,checkAnnotationRange:(D,j)=>o(D,j,r,r.activeViewer,a),selectFocusedAnn:F,createAnnotationLayer:O,onMouseDown:A,onMouseMove:$,onMouseUp:M}),(D,j)=>(vue.openBlock(),vue.createElementBlock("canvas",{id:"annLabelArea",ref_key:"annLabelArea",ref:s,class:"timeseries-annotation-canvas",width:vue.unref(canvasScaler)(e.cWidth,e.pixelRatio,0),height:vue.unref(canvasScaler)(g.value,e.pixelRatio,0),style:vue.normalizeStyle(w.value)},null,12,_hoisted_1))}},TSAnnotationCanvas=_export_sfc$1(_sfc_main,[["__scopeId","data-v-41f7f1c2"]]),TSAnnotationCanvas$1=Object.freeze(Object.defineProperty({__proto__:null,default:TSAnnotationCanvas},Symbol.toStringTag,{value:"Module"}));exports.TSViewer=TSViewer,exports.default=index,exports.useViewerStore=useViewerStore,Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}})});
|