@hpcc-js/phosphor 3.4.0 → 3.4.1
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/index.js +1 -1
- package/dist/index.umd.cjs +1 -1
- package/package.json +3 -3
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
var e,t,i,n=Object.defineProperty,s=(e,t)=>n(e,"name",{value:t,configurable:!0}),r=(e,t,i)=>((e,t,i)=>t in e?n(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i)(e,"symbol"!=typeof t?t+"":t,i);import{select as o,Widget as a,HTMLWidget as d,Utility as l}from"@hpcc-js/common";const h="@hpcc-js/phosphor",c="3.4.
|
|
1
|
+
var e,t,i,n=Object.defineProperty,s=(e,t)=>n(e,"name",{value:t,configurable:!0}),r=(e,t,i)=>((e,t,i)=>t in e?n(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i)(e,"symbol"!=typeof t?t+"":t,i);import{select as o,Widget as a,HTMLWidget as d,Utility as l}from"@hpcc-js/common";const h="@hpcc-js/phosphor",c="3.4.1",u="3.16.1";var m,p,g,f;function*_(){}function v(e,t){let i=0;for(const n of e)if(t(n,i++))return n}function b(e,t){let i=0;for(const n of e)if(!1===t(n,i++))return!1;return!0}function y(e,t){let i=0;for(const n of e)if(t(n,i++))return!0;return!1}function*w(e){if("function"==typeof e.retro)yield*e.retro();else for(let t=e.length-1;t>-1;t--)yield e[t]}function x(e){let t=[],i=/* @__PURE__ */new Set,n=/* @__PURE__ */new Map;for(const o of e)s(o);for(const[o]of n)r(o);return t;function s(e){let[t,i]=e,s=n.get(i);s?s.push(t):n.set(i,[t])}function r(e){if(i.has(e))return;i.add(e);let s=n.get(e);if(s)for(const t of s)r(t);t.push(e)}}!function(e){function t(e,t,i=0,n=-1){let s,r=e.length;if(0===r)return-1;i=i<0?Math.max(0,i+r):Math.min(i,r-1),s=(n=n<0?Math.max(0,n+r):Math.min(n,r-1))<i?n+1+(r-i):n-i+1;for(let o=0;o<s;++o){let n=(i+o)%r;if(e[n]===t)return n}return-1}function i(e,t,i=-1,n=0){let s,r=e.length;if(0===r)return-1;s=(i=i<0?Math.max(0,i+r):Math.min(i,r-1))<(n=n<0?Math.max(0,n+r):Math.min(n,r-1))?i+1+(r-n):i-n+1;for(let o=0;o<s;++o){let n=(i-o+r)%r;if(e[n]===t)return n}return-1}function n(e,t,i=0,n=-1){let s,r=e.length;if(0===r)return-1;i=i<0?Math.max(0,i+r):Math.min(i,r-1),s=(n=n<0?Math.max(0,n+r):Math.min(n,r-1))<i?n+1+(r-i):n-i+1;for(let o=0;o<s;++o){let n=(i+o)%r;if(t(e[n],n))return n}return-1}function r(e,t,i=-1,n=0){let s,r=e.length;if(0===r)return-1;s=(i=i<0?Math.max(0,i+r):Math.min(i,r-1))<(n=n<0?Math.max(0,n+r):Math.min(n,r-1))?i+1+(r-n):i-n+1;for(let o=0;o<s;++o){let n=(i-o+r)%r;if(t(e[n],n))return n}return-1}function o(e,t,i=0,s=-1){let r=n(e,t,i,s);return-1!==r?e[r]:void 0}function a(e,t,i=-1,n=0){let s=r(e,t,i,n);return-1!==s?e[s]:void 0}function d(e,t,i,n=0,s=-1){let r=e.length;if(0===r)return 0;let o=n=n<0?Math.max(0,n+r):Math.min(n,r-1),a=(s=s<0?Math.max(0,s+r):Math.min(s,r-1))-n+1;for(;a>0;){let n=a>>1,s=o+n;i(e[s],t)<0?(o=s+1,a-=n+1):a=n}return o}function l(e,t,i,n=0,s=-1){let r=e.length;if(0===r)return 0;let o=n=n<0?Math.max(0,n+r):Math.min(n,r-1),a=(s=s<0?Math.max(0,s+r):Math.min(s,r-1))-n+1;for(;a>0;){let n=a>>1,s=o+n;i(e[s],t)>0?a=n:(o=s+1,a-=n+1)}return o}function h(e,t,i){if(e===t)return!0;if(e.length!==t.length)return!1;for(let n=0,s=e.length;n<s;++n)if(i?!i(e[n],t[n]):e[n]!==t[n])return!1;return!0}function c(e,t={}){let{start:i,stop:n,step:s}=t;if(void 0===s&&(s=1),0===s)throw new Error("Slice `step` cannot be zero.");let r,o=e.length;void 0===i?i=s<0?o-1:0:i<0?i=Math.max(i+o,s<0?-1:0):i>=o&&(i=s<0?o-1:o),void 0===n?n=s<0?-1:o:n<0?n=Math.max(n+o,s<0?-1:0):n>=o&&(n=s<0?o-1:o),r=s<0&&n>=i||s>0&&i>=n?0:s<0?Math.floor((n-i+1)/s+1):Math.floor((n-i-1)/s+1);let a=[];for(let d=0;d<r;++d)a[d]=e[i+d*s];return a}function u(e,t,i){let n=e.length;if(n<=1)return;if((t=t<0?Math.max(0,t+n):Math.min(t,n-1))===(i=i<0?Math.max(0,i+n):Math.min(i,n-1)))return;let s=e[t],r=t<i?1:-1;for(let o=t;o!==i;o+=r)e[o]=e[o+r];e[i]=s}function m(e,t=0,i=-1){let n=e.length;if(!(n<=1))for(t=t<0?Math.max(0,t+n):Math.min(t,n-1),i=i<0?Math.max(0,i+n):Math.min(i,n-1);t<i;){let n=e[t],s=e[i];e[t++]=s,e[i--]=n}}function p(e,t,i=0,n=-1){let s=e.length;if(s<=1)return;if((i=i<0?Math.max(0,i+s):Math.min(i,s-1))>=(n=n<0?Math.max(0,n+s):Math.min(n,s-1)))return;let r=n-i+1;if(t>0?t%=r:t<0&&(t=(t%r+r)%r),0===t)return;let o=i+t;m(e,i,o-1),m(e,o,n),m(e,i,n)}function g(e,t,i=0,n=-1){let s,r=e.length;if(0!==r){i=i<0?Math.max(0,i+r):Math.min(i,r-1),s=(n=n<0?Math.max(0,n+r):Math.min(n,r-1))<i?n+1+(r-i):n-i+1;for(let n=0;n<s;++n)e[(i+n)%r]=t}}function f(e,t,i){let n=e.length;t=t<0?Math.max(0,t+n):Math.min(t,n);for(let s=n;s>t;--s)e[s]=e[s-1];e[t]=i}function _(e,t){let i=e.length;if(t<0&&(t+=i),t<0||t>=i)return;let n=e[t];for(let s=t+1;s<i;++s)e[s-1]=e[s];return e.length=i-1,n}function v(e,i,n=0,s=-1){let r=t(e,i,n,s);return-1!==r&&_(e,r),r}function b(e,t,n=-1,s=0){let r=i(e,t,n,s);return-1!==r&&_(e,r),r}function y(e,t,i=0,n=-1){let s=e.length;if(0===s)return 0;i=i<0?Math.max(0,i+s):Math.min(i,s-1),n=n<0?Math.max(0,n+s):Math.min(n,s-1);let r=0;for(let o=0;o<s;++o)i<=n&&o>=i&&o<=n&&e[o]===t||n<i&&(o<=n||o>=i)&&e[o]===t?r++:r>0&&(e[o-r]=e[o]);return r>0&&(e.length=s-r),r}function w(e,t,i=0,s=-1){let r,o=n(e,t,i,s);return-1!==o&&(r=_(e,o)),{index:o,value:r}}function x(e,t,i=-1,n=0){let s,o=r(e,t,i,n);return-1!==o&&(s=_(e,o)),{index:o,value:s}}function M(e,t,i=0,n=-1){let s=e.length;if(0===s)return 0;i=i<0?Math.max(0,i+s):Math.min(i,s-1),n=n<0?Math.max(0,n+s):Math.min(n,s-1);let r=0;for(let o=0;o<s;++o)i<=n&&o>=i&&o<=n&&t(e[o],o)||n<i&&(o<=n||o>=i)&&t(e[o],o)?r++:r>0&&(e[o-r]=e[o]);return r>0&&(e.length=s-r),r}s(t,"firstIndexOf"),e.firstIndexOf=t,s(i,"lastIndexOf"),e.lastIndexOf=i,s(n,"findFirstIndex"),e.findFirstIndex=n,s(r,"findLastIndex"),e.findLastIndex=r,s(o,"findFirstValue"),e.findFirstValue=o,s(a,"findLastValue"),e.findLastValue=a,s(d,"lowerBound"),e.lowerBound=d,s(l,"upperBound"),e.upperBound=l,s(h,"shallowEqual"),e.shallowEqual=h,s(c,"slice"),e.slice=c,s(u,"move"),e.move=u,s(m,"reverse"),e.reverse=m,s(p,"rotate"),e.rotate=p,s(g,"fill"),e.fill=g,s(f,"insert"),e.insert=f,s(_,"removeAt"),e.removeAt=_,s(v,"removeFirstOf"),e.removeFirstOf=v,s(b,"removeLastOf"),e.removeLastOf=b,s(y,"removeAllOf"),e.removeAllOf=y,s(w,"removeFirstWhere"),e.removeFirstWhere=w,s(x,"removeLastWhere"),e.removeLastWhere=x,s(M,"removeAllWhere"),e.removeAllWhere=M}(m||(m={})),s(_,"empty"),s(v,"find"),s(b,"every"),s(y,"some"),function(e){function t(e,t,i){return 0===i?1/0:e>t&&i>0||e<t&&i<0?0:Math.ceil((t-e)/i)}s(t,"rangeLength"),e.rangeLength=t}(p||(p={})),s(w,"retro"),s(x,"topologicSort"),function(e){function t(e,t,i=0){let n=new Array(t.length);for(let s=0,r=i,o=t.length;s<o;++s,++r){if(r=e.indexOf(t[s],r),-1===r)return null;n[s]=r}return n}function i(e,i,n=0){let s=t(e,i,n);if(!s)return null;let r=0;for(let t=0,o=s.length;t<o;++t){let e=s[t]-n;r+=e*e}return{score:r,indices:s}}function n(e,i,n=0){let s=t(e,i,n);if(!s)return null;let r=0,o=n-1;for(let t=0,a=s.length;t<a;++t){let e=s[t];r+=e-o-1,o=e}return{score:r,indices:s}}function r(e,t,i){let n=[],s=0,r=0,o=t.length;for(;s<o;){let a=t[s],d=t[s];for(;++s<o&&t[s]===d+1;)d++;r<a&&n.push(e.slice(r,a)),a<d+1&&n.push(i(e.slice(a,d+1))),r=d+1}return r<e.length&&n.push(e.slice(r)),n}function o(e,t){return e<t?-1:e>t?1:0}s(t,"findIndices"),e.findIndices=t,s(i,"matchSumOfSquares"),e.matchSumOfSquares=i,s(n,"matchSumOfDeltas"),e.matchSumOfDeltas=n,s(r,"highlight"),e.highlight=r,s(o,"cmp"),e.cmp=o}(g||(g={})),function(e){function t(e){return null===e||"boolean"==typeof e||"number"==typeof e||"string"==typeof e}function i(e){return Array.isArray(e)}function n(e){return!t(e)&&!i(e)}function r(e,n){if(e===n)return!0;if(t(e)||t(n))return!1;let s=i(e),r=i(n);return s===r&&(s&&r?a(e,n):d(e,n))}function o(e){return t(e)?e:i(e)?l(e):h(e)}function a(e,t){if(e===t)return!0;if(e.length!==t.length)return!1;for(let i=0,n=e.length;i<n;++i)if(!r(e[i],t[i]))return!1;return!0}function d(e,t){if(e===t)return!0;for(let i in e)if(void 0!==e[i]&&!(i in t))return!1;for(let i in t)if(void 0!==t[i]&&!(i in e))return!1;for(let i in e){let n=e[i],s=t[i];if(void 0!==n||void 0!==s){if(void 0===n||void 0===s)return!1;if(!r(n,s))return!1}}return!0}function l(e){let t=new Array(e.length);for(let i=0,n=e.length;i<n;++i)t[i]=o(e[i]);return t}function h(e){let t={};for(let i in e){let n=e[i];void 0!==n&&(t[i]=o(n))}return t}e.emptyObject=Object.freeze({}),e.emptyArray=Object.freeze([]),s(t,"isPrimitive"),e.isPrimitive=t,s(i,"isArray"),e.isArray=i,s(n,"isObject"),e.isObject=n,s(r,"deepEqual"),e.deepEqual=r,s(o,"deepCopy"),e.deepCopy=o,s(a,"deepArrayEqual"),s(d,"deepObjectEqual"),s(l,"deepArrayCopy"),s(h,"deepObjectCopy")}(f||(f={}));const M=class _MimeData{constructor(){this._types=[],this._values=[]}types(){return this._types.slice()}hasData(e){return-1!==this._types.indexOf(e)}getData(e){let t=this._types.indexOf(e);return-1!==t?this._values[t]:void 0}setData(e,t){this.clearData(e),this._types.push(e),this._values.push(t)}clearData(e){let t=this._types.indexOf(e);-1!==t&&(this._types.splice(t,1),this._values.splice(t,1))}clear(){this._types.length=0,this._values.length=0}};s(M,"MimeData");let C=M;var A,S,I;function z(e){let t=0;for(let i=0,n=e.length;i<n;++i)i%4==0&&(t=4294967295*Math.random()>>>0),e[i]=255&t,t>>>=8}function k(e){const t=new Uint8Array(16),i=new Array(256);for(let n=0;n<16;++n)i[n]="0"+n.toString(16);for(let n=16;n<256;++n)i[n]=n.toString(16);/* @__PURE__ */
|
|
2
2
|
return s(function(){return e(t),t[6]=64|15&t[6],t[8]=128|63&t[8],i[t[0]]+i[t[1]]+i[t[2]]+i[t[3]]+"-"+i[t[4]]+i[t[5]]+"-"+i[t[6]]+i[t[7]]+"-"+i[t[8]]+i[t[9]]+"-"+i[t[10]]+i[t[11]]+i[t[12]]+i[t[13]]+i[t[14]]+i[t[15]]},"uuid4")}!function(e){const t=class _PluginData{constructor(e){var t,i,n,s;this._activated=!1,this._promise=null,this._service=null,this.id=e.id,this.description=null!==(t=e.description)&&void 0!==t?t:"",this.activate=e.activate,this.deactivate=null!==(i=e.deactivate)&&void 0!==i?i:null,this.provides=null!==(n=e.provides)&&void 0!==n?n:null,this.autoStart=null!==(s=e.autoStart)&&void 0!==s&&s,this.requires=e.requires?e.requires.slice():[],this.optional=e.optional?e.optional.slice():[]}get activated(){return this._activated}set activated(e){this._activated=e}get service(){return this._service}set service(e){this._service=e}get promise(){return this._promise}set promise(e){this._promise=e}};s(t,"PluginData");let i=t;function n(e){return new i(e)}function r(e,t,i){const n=[...e.requires,...e.optional],r=/* @__PURE__ */s(n=>{if(n===e.provides)return!0;const s=i.get(n);if(!s)return!1;const a=t.get(s),d=[...a.requires,...a.optional];return 0!==d.length&&(o.push(s),!!d.some(r)||(o.pop(),!1))},"visit");if(!e.provides||0===n.length)return;const o=[e.id];if(n.some(r))throw new ReferenceError(`Cycle detected: ${o.join(" -> ")}.`)}function o(e,t,i){const n=new Array,r=/* @__PURE__ */s(e=>{const s=t.get(e),r=[...s.requires,...s.optional];n.push(...r.reduce((t,n)=>{const s=i.get(n);return s&&t.push([e,s]),t},[]))},"add");for(const s of t.keys())r(s);const o=n.filter(t=>t[1]===e);let a=0;for(;o.length>a;){const e=o.length,t=new Set(o.map(e=>e[0]));for(const i of t)n.filter(e=>e[1]===i).forEach(e=>{o.includes(e)||o.push(e)});a=e}const d=x(o),l=d.findIndex(t=>t===e);return-1===l?[e]:d.slice(0,l+1)}function a(e,t){const i=/* @__PURE__ */new Set;for(const n of e.keys())!0===e.get(n).autoStart&&i.add(n);if(t.startPlugins)for(const n of t.startPlugins)i.add(n);if(t.ignorePlugins)for(const n of t.ignorePlugins)i.delete(n);return Array.from(i)}s(n,"createPluginData"),e.createPluginData=n,s(r,"ensureNoCycle"),e.ensureNoCycle=r,s(o,"findDependents"),e.findDependents=o,s(a,"collectStartupPlugins"),e.collectStartupPlugins=a}(A||(A={})),s(z,"fallbackRandomValues"),(S||(S={})).getRandomValues=(()=>{const e="undefined"!=typeof window&&(window.crypto||window.msCrypto)||null;return e&&"function"==typeof e.getRandomValues?/* @__PURE__ */s(function(t){return e.getRandomValues(t)},"getRandomValues"):z})(),s(k,"uuid4Factory"),(I||(I={})).uuid4=k(S.getRandomValues);const E=class _Signal{constructor(e){this.sender=e}connect(e,t){return L.connect(this,e,t)}disconnect(e,t){return L.disconnect(this,e,t)}emit(e){L.emit(this,e)}};s(E,"Signal");let T=E;var L;!function(e){function t(e,t){L.disconnectBetween(e,t)}function i(e){L.disconnectSender(e)}function n(e){L.disconnectReceiver(e)}function r(e){L.disconnectAll(e)}function o(e){L.disconnectAll(e)}function a(){return L.exceptionHandler}function d(e){let t=L.exceptionHandler;return L.exceptionHandler=e,t}s(t,"disconnectBetween"),e.disconnectBetween=t,s(i,"disconnectSender"),e.disconnectSender=i,s(n,"disconnectReceiver"),e.disconnectReceiver=n,s(r,"disconnectAll"),e.disconnectAll=r,s(o,"clearData"),e.clearData=o,s(a,"getExceptionHandler"),e.getExceptionHandler=a,s(d,"setExceptionHandler"),e.setExceptionHandler=d}(T||(T={})),function(e){function t(e,t,i){i=i||void 0;let n=l.get(e.sender);if(n||(n=[],l.set(e.sender,n)),p(n,e,t,i))return!1;let s=i||t,r=h.get(s);r||(r=[],h.set(s,r));let o={signal:e,slot:t,thisArg:i};return n.push(o),r.push(o),!0}function i(e,t,i){i=i||void 0;let n=l.get(e.sender);if(!n||0===n.length)return!1;let s=p(n,e,t,i);if(!s)return!1;let r=i||t,o=h.get(r);return s.signal=null,f(n),f(o),!0}function n(e,t){let i=l.get(e);if(!i||0===i.length)return;let n=h.get(t);if(n&&0!==n.length){for(const t of n)t.signal&&t.signal.sender===e&&(t.signal=null);f(i),f(n)}}function r(e){let t=l.get(e);if(t&&0!==t.length){for(const e of t){if(!e.signal)continue;let t=e.thisArg||e.slot;e.signal=null,f(h.get(t))}f(t)}}function o(e){let t=h.get(e);if(t&&0!==t.length){for(const e of t){if(!e.signal)continue;let t=e.signal.sender;e.signal=null,f(l.get(t))}f(t)}}function a(e){r(e),o(e)}function d(e,t){let i=l.get(e.sender);if(i&&0!==i.length)for(let n=0,s=i.length;n<s;++n){let s=i[n];s.signal===e&&g(s,t)}}e.exceptionHandler=e=>{console.error(e)},s(t,"connect"),e.connect=t,s(i,"disconnect"),e.disconnect=i,s(n,"disconnectBetween"),e.disconnectBetween=n,s(r,"disconnectSender"),e.disconnectSender=r,s(o,"disconnectReceiver"),e.disconnectReceiver=o,s(a,"disconnectAll"),e.disconnectAll=a,s(d,"emit"),e.emit=d;const l=/* @__PURE__ */new WeakMap,h=/* @__PURE__ */new WeakMap,c=/* @__PURE__ */new Set,u="function"==typeof requestAnimationFrame?requestAnimationFrame:setImmediate;function p(e,t,i,n){return v(e,e=>e.signal===t&&e.slot===i&&e.thisArg===n)}function g(t,i){let{signal:n,slot:s,thisArg:r}=t;try{s.call(r,n.sender,i)}catch(o){e.exceptionHandler(o)}}function f(e){0===c.size&&u(_),c.add(e)}function _(){c.forEach(b),c.clear()}function b(e){m.removeAllWhere(e,y)}function y(e){return null===e.signal}s(p,"findConnection"),s(g,"invokeSlot"),s(f,"scheduleCleanup"),s(_,"cleanupDirtySet"),s(b,"cleanupConnections"),s(y,"isDeadConnection")}(L||(L={}));const D=class _DisposableDelegate{constructor(e){this._fn=e}get isDisposed(){return!this._fn}dispose(){if(!this._fn)return;let e=this._fn;this._fn=null,e()}};s(D,"DisposableDelegate");let B=D;const R=class _DisposableSet{constructor(){this._isDisposed=!1,this._items=/* @__PURE__ */new Set}get isDisposed(){return this._isDisposed}dispose(){this._isDisposed||(this._isDisposed=!0,this._items.forEach(e=>{e.dispose()}),this._items.clear())}contains(e){return this._items.has(e)}add(e){this._items.add(e)}remove(e){this._items.delete(e)}clear(){this._items.clear()}};s(R,"DisposableSet");let P=R;!function(e){function t(t){let i=new e;for(const e of t)i.add(e);return i}s(t,"from"),e.from=t}(P||(P={}));const W=class _ObservableDisposableSet extends P{constructor(){super(...arguments),this._disposed=new T(this)}get disposed(){return this._disposed}dispose(){this.isDisposed||(super.dispose(),this._disposed.emit(void 0),T.clearData(this))}};s(W,"ObservableDisposableSet");let H=W;var N,F,O,q,K;function $(){return Y.keyboardLayout}!function(e){function t(t){let i=new e;for(const e of t)i.add(e);return i}s(t,"from"),e.from=t}(W||(H={})),function(e){function t(e){const t=document.body,i=/* @__PURE__ */s(n=>{n.preventDefault(),n.stopPropagation(),n.clipboardData.setData("text",e),t.removeEventListener("copy",i,!0)},"handler");t.addEventListener("copy",i,!0),document.execCommand("copy")}s(t,"copyText"),e.copyText=t}(N||(N={})),function(e){function t(e){let t=window.getComputedStyle(e),i=parseFloat(t.borderTopWidth)||0,n=parseFloat(t.borderLeftWidth)||0,s=parseFloat(t.borderRightWidth)||0,r=parseFloat(t.borderBottomWidth)||0,o=parseFloat(t.paddingTop)||0,a=parseFloat(t.paddingLeft)||0,d=parseFloat(t.paddingRight)||0,l=parseFloat(t.paddingBottom)||0;return{borderTop:i,borderLeft:n,borderRight:s,borderBottom:r,paddingTop:o,paddingLeft:a,paddingRight:d,paddingBottom:l,horizontalSum:n+a+d+s,verticalSum:i+o+l+r}}function i(e){let t=window.getComputedStyle(e),i=parseFloat(t.minWidth)||0,n=parseFloat(t.minHeight)||0,s=parseFloat(t.maxWidth)||1/0,r=parseFloat(t.maxHeight)||1/0;return s=Math.max(i,s),r=Math.max(n,r),{minWidth:i,minHeight:n,maxWidth:s,maxHeight:r}}function n(e,t,i){let n=e.getBoundingClientRect();return t>=n.left&&t<n.right&&i>=n.top&&i<n.bottom}function r(e,t){let i=e.getBoundingClientRect(),n=t.getBoundingClientRect();n.top<=i.top&&n.bottom>=i.bottom||(n.top<i.top&&n.height<=i.height||n.bottom>i.bottom&&n.height>=i.height?e.scrollTop-=i.top-n.top:(n.top<i.top&&n.height>i.height||n.bottom>i.bottom&&n.height<i.height)&&(e.scrollTop-=i.bottom-n.bottom))}s(t,"boxSizing"),e.boxSizing=t,s(i,"sizeLimits"),e.sizeLimits=i,s(n,"hitTest"),e.hitTest=n,s(r,"scrollIntoViewIfNeeded"),e.scrollIntoViewIfNeeded=r}(F||(F={})),function(e){function t(t){return e.IS_MAC?t.metaKey:t.ctrlKey}e.IS_MAC=!!navigator.platform.match(/Mac/i),e.IS_WIN=!!navigator.platform.match(/Win/i),e.IS_IE=/Trident/.test(navigator.userAgent),e.IS_EDGE=/Edge/.test(navigator.userAgent),s(t,"accelKey"),e.accelKey=t}(O||(O={})),function(e){function t(e){if(e in K.specificityCache)return K.specificityCache[e];let t=K.calculateSingle(e);return K.specificityCache[e]=t}function i(e){if(e in K.validityCache)return K.validityCache[e];let t=!0;try{K.testElem.querySelector(e)}catch(i){t=!1}return K.validityCache[e]=t}function n(e,t){return K.protoMatchFunc.call(e,t)}s(t,"calculateSpecificity"),e.calculateSpecificity=t,s(i,"isValid"),e.isValid=i,s(n,"matches"),e.matches=n}(q||(q={})),function(e){function t(e){e=e.split(",",1)[0];let t=0,c=0,u=0;function m(t){let i=e.match(t);return null!==i&&(e=e.slice(i[0].length),!0)}for(s(m,"match"),e=e.replace(h," $1 ");e.length>0;)if(m(i))t++;else if(m(n))c++;else if(m(r))c++;else if(m(a))u++;else if(m(d))c++;else if(m(o))u++;else if(!m(l))return 0;return t=Math.min(t,255),c=Math.min(c,255),u=Math.min(u,255),t<<16|c<<8|u}e.specificityCache=/* @__PURE__ */Object.create(null),e.validityCache=/* @__PURE__ */Object.create(null),e.testElem=document.createElement("div"),e.protoMatchFunc=(()=>{let e=Element.prototype;return e.matches||e.matchesSelector||e.mozMatchesSelector||e.msMatchesSelector||e.oMatchesSelector||e.webkitMatchesSelector||function(e){let t=this,i=t.ownerDocument?t.ownerDocument.querySelectorAll(e):[];return-1!==Array.prototype.indexOf.call(i,t)}})(),s(t,"calculateSingle"),e.calculateSingle=t;const i=/^#[^\s\+>~#\.\[:]+/,n=/^\.[^\s\+>~#\.\[:]+/,r=/^\[[^\]]+\]/,o=/^[^\s\+>~#\.\[:]+/,a=/^(::[^\s\+>~#\.\[:]+|:first-line|:first-letter|:before|:after)/,d=/^:[^\s\+>~#\.\[:]+/,l=/^[\s\+>~\*]+/,h=/:not\(([^\)]+)\)/g}(K||(K={})),s($,"getKeyboardLayout");const V=class _KeycodeLayout{constructor(e,t,i=[]){this.name=e,this._codes=t,this._keys=_KeycodeLayout.extractKeys(t),this._modifierKeys=_KeycodeLayout.convertToKeySet(i)}keys(){return Object.keys(this._keys)}isValidKey(e){return e in this._keys}isModifierKey(e){return e in this._modifierKeys}keyForKeydownEvent(e){return this._codes[e.keyCode]||""}};s(V,"KeycodeLayout");let U=V;!function(e){function t(e){let t=/* @__PURE__ */Object.create(null);for(let i in e)t[e[i]]=!0;return t}function i(e){let t=Object(null);for(let i=0,n=e.length;i<n;++i)t[e[i]]=!0;return t}s(t,"extractKeys"),e.extractKeys=t,s(i,"convertToKeySet"),e.convertToKeySet=i}(U||(U={}));const j=new U("en-us",{8:"Backspace",9:"Tab",13:"Enter",16:"Shift",17:"Ctrl",18:"Alt",19:"Pause",27:"Escape",32:"Space",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",48:"0",49:"1",50:"2",51:"3",52:"4",53:"5",54:"6",55:"7",56:"8",57:"9",59:";",61:"=",65:"A",66:"B",67:"C",68:"D",69:"E",70:"F",71:"G",72:"H",73:"I",74:"J",75:"K",76:"L",77:"M",78:"N",79:"O",80:"P",81:"Q",82:"R",83:"S",84:"T",85:"U",86:"V",87:"W",88:"X",89:"Y",90:"Z",91:"Meta",93:"ContextMenu",96:"0",97:"1",98:"2",99:"3",100:"4",101:"5",102:"6",103:"7",104:"8",105:"9",106:"*",107:"+",109:"-",110:".",111:"/",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",173:"-",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'",224:"Meta"},["Shift","Ctrl","Alt","Meta"]);var Y;(Y||(Y={})).keyboardLayout=j;const X=class _CommandRegistry{constructor(){this._timerID=0,this._timerModifierID=0,this._replaying=!1,this._keystrokes=[],this._keydownEvents=[],this._keyBindings=[],this._exactKeyMatch=null,this._commands=/* @__PURE__ */new Map,this._commandChanged=new T(this),this._commandExecuted=new T(this),this._keyBindingChanged=new T(this),this._holdKeyBindingPromises=/* @__PURE__ */new Map}get commandChanged(){return this._commandChanged}get commandExecuted(){return this._commandExecuted}get keyBindingChanged(){return this._keyBindingChanged}get keyBindings(){return this._keyBindings}listCommands(){return Array.from(this._commands.keys())}hasCommand(e){return this._commands.has(e)}addCommand(e,t){if(this._commands.has(e))throw new Error(`Command '${e}' already registered.`);return this._commands.set(e,Z.createCommand(t)),this._commandChanged.emit({id:e,type:"added"}),new B(()=>{this._commands.delete(e),this._commandChanged.emit({id:e,type:"removed"})})}notifyCommandChanged(e){if(void 0!==e&&!this._commands.has(e))throw new Error(`Command '${e}' is not registered.`);this._commandChanged.emit({id:e,type:e?"changed":"many-changed"})}describedBy(e,t=f.emptyObject){var i;let n=this._commands.get(e);return Promise.resolve(null!==(i=null==n?void 0:n.describedBy.call(void 0,t))&&void 0!==i?i:{args:null})}label(e,t=f.emptyObject){var i;let n=this._commands.get(e);return null!==(i=null==n?void 0:n.label.call(void 0,t))&&void 0!==i?i:""}mnemonic(e,t=f.emptyObject){let i=this._commands.get(e);return i?i.mnemonic.call(void 0,t):-1}icon(e,t=f.emptyObject){var i;return null===(i=this._commands.get(e))||void 0===i?void 0:i.icon.call(void 0,t)}iconClass(e,t=f.emptyObject){let i=this._commands.get(e);return i?i.iconClass.call(void 0,t):""}iconLabel(e,t=f.emptyObject){let i=this._commands.get(e);return i?i.iconLabel.call(void 0,t):""}caption(e,t=f.emptyObject){let i=this._commands.get(e);return i?i.caption.call(void 0,t):""}usage(e,t=f.emptyObject){let i=this._commands.get(e);return i?i.usage.call(void 0,t):""}className(e,t=f.emptyObject){let i=this._commands.get(e);return i?i.className.call(void 0,t):""}dataset(e,t=f.emptyObject){let i=this._commands.get(e);return i?i.dataset.call(void 0,t):{}}isEnabled(e,t=f.emptyObject){let i=this._commands.get(e);return!!i&&i.isEnabled.call(void 0,t)}isToggled(e,t=f.emptyObject){let i=this._commands.get(e);return!!i&&i.isToggled.call(void 0,t)}isToggleable(e,t=f.emptyObject){let i=this._commands.get(e);return!!i&&i.isToggleable}isVisible(e,t=f.emptyObject){let i=this._commands.get(e);return!!i&&i.isVisible.call(void 0,t)}execute(e,t=f.emptyObject){let i,n=this._commands.get(e);if(!n)return Promise.reject(new Error(`Command '${e}' not registered.`));try{i=n.execute.call(void 0,t)}catch(r){i=Promise.reject(r)}let s=Promise.resolve(i);return this._commandExecuted.emit({id:e,args:t,result:s}),s}addKeyBinding(e){let t=Z.createKeyBinding(e);return this._keyBindings.push(t),this._keyBindingChanged.emit({binding:t,type:"added"}),new B(()=>{m.removeFirstOf(this._keyBindings,t),this._keyBindingChanged.emit({binding:t,type:"removed"})})}processKeydownEvent(e){if(e.defaultPrevented||this._replaying)return;const t=_CommandRegistry.keystrokeForKeydownEvent(e);if(!t)return this._replayKeydownEvents(),void this._clearPendingState();if(_CommandRegistry.isModifierKeyPressed(e)){let{exact:i}=Z.matchKeyBinding(this._keyBindings,[t],e);return void(i?(e.preventDefault(),e.stopPropagation(),this._startModifierTimer(i)):this._clearModifierTimer())}this._keystrokes.push(t);const{exact:i,partial:n}=Z.matchKeyBinding(this._keyBindings,this._keystrokes,e),s=0!==n.length;return i||s?(((null==i?void 0:i.preventDefault)||n.some(e=>e.preventDefault))&&(e.preventDefault(),e.stopPropagation()),this._keydownEvents.push(e),i&&!s?(this._executeKeyBinding(i),void this._clearPendingState()):(i&&(this._exactKeyMatch=i),void this._startTimer())):(this._replayKeydownEvents(),void this._clearPendingState())}holdKeyBindingExecution(e,t){this._holdKeyBindingPromises.set(e,t)}processKeyupEvent(e){this._clearModifierTimer()}_startModifierTimer(e){this._clearModifierTimer(),this._timerModifierID=window.setTimeout(()=>{this._executeKeyBinding(e)},Z.modifierkeyTimeOut)}_clearModifierTimer(){0!==this._timerModifierID&&(clearTimeout(this._timerModifierID),this._timerModifierID=0)}_startTimer(){this._clearTimer(),this._timerID=window.setTimeout(()=>{this._onPendingTimeout()},Z.CHORD_TIMEOUT)}_clearTimer(){0!==this._timerID&&(clearTimeout(this._timerID),this._timerID=0)}_replayKeydownEvents(){0!==this._keydownEvents.length&&(this._replaying=!0,this._keydownEvents.forEach(Z.replayKeyEvent),this._replaying=!1)}async _executeKeyBinding(e){if(0!==this._holdKeyBindingPromises.size){const e=[...this._keydownEvents],t=(await Promise.race([Promise.all(e.map(async e=>{var t;return null!==(t=this._holdKeyBindingPromises.get(e))&&void 0!==t?t:Promise.resolve(!0)})),new Promise(e=>{setTimeout(()=>e([!1]),Z.KEYBINDING_HOLD_TIMEOUT)})])).every(Boolean);if(this._holdKeyBindingPromises.clear(),!t)return}let{command:t,args:i}=e,n={_luminoEvent:{type:"keybinding",keys:e.keys},...i};if(!this.hasCommand(t)||!this.isEnabled(t,n)){let i=this.hasCommand(t)?"enabled":"registered",n=`Cannot execute key binding '${e.keys.join(", ")}':`,s=`command '${t}' is not ${i}.`;return void console.warn(`${n} ${s}`)}await this.execute(t,n)}_clearPendingState(){this._clearTimer(),this._clearModifierTimer(),this._exactKeyMatch=null,this._keystrokes.length=0,this._keydownEvents.length=0}_onPendingTimeout(){this._timerID=0,this._exactKeyMatch?this._executeKeyBinding(this._exactKeyMatch):this._replayKeydownEvents(),this._clearPendingState()}};s(X,"CommandRegistry");let G=X;var Z;!function(e){function t(e){let t="",i=!1,n=!1,s=!1,r=!1;for(let o of e.split(/\s+/))"Accel"===o?O.IS_MAC?n=!0:s=!0:"Alt"===o?i=!0:"Cmd"===o?n=!0:"Ctrl"===o?s=!0:"Shift"===o?r=!0:o.length>0&&(t=o);return{cmd:n,ctrl:s,alt:i,shift:r,key:t}}function i(e){let i="",n=t(e);return n.ctrl&&(i+="Ctrl "),n.alt&&(i+="Alt "),n.shift&&(i+="Shift "),n.cmd&&O.IS_MAC&&(i+="Cmd "),n.key?i+n.key:i.trim()}function n(e){let t;return t=O.IS_WIN?e.winKeys||e.keys:O.IS_MAC?e.macKeys||e.keys:e.linuxKeys||e.keys,t.map(i)}function r(e){return"string"==typeof e?i(e):e.map(i).join(", ");function i(e){let i=[],n=O.IS_MAC?" ":"+",s=t(e);return s.ctrl&&i.push("Ctrl"),s.alt&&i.push("Alt"),s.shift&&i.push("Shift"),O.IS_MAC&&s.cmd&&i.push("Cmd"),i.push(s.key),i.map(Z.formatKey).join(n)}}function o(e){let t=$(),i=t.keyForKeydownEvent(e);return t.isModifierKey(i)}function a(e){let t=$(),i=t.keyForKeydownEvent(e),n=[];return e.ctrlKey&&n.push("Ctrl"),e.altKey&&n.push("Alt"),e.shiftKey&&n.push("Shift"),e.metaKey&&O.IS_MAC&&n.push("Cmd"),t.isModifierKey(i)||n.push(i),n.join(" ")}s(t,"parseKeystroke"),e.parseKeystroke=t,s(i,"normalizeKeystroke"),e.normalizeKeystroke=i,s(n,"normalizeKeys"),e.normalizeKeys=n,s(r,"formatKeystroke"),e.formatKeystroke=r,s(o,"isModifierKeyPressed"),e.isModifierKeyPressed=o,s(a,"keystrokeForKeydownEvent"),e.keystrokeForKeydownEvent=a}(G||(G={})),function(e){function t(e){return{execute:e.execute,describedBy:g("function"==typeof e.describedBy?e.describedBy:{args:null,...e.describedBy},()=>({args:null})),label:g(e.label,l),mnemonic:g(e.mnemonic,h),icon:g(e.icon,p),iconClass:g(e.iconClass,l),iconLabel:g(e.iconLabel,l),caption:g(e.caption,l),usage:g(e.usage,l),className:g(e.className,l),dataset:g(e.dataset,m),isEnabled:e.isEnabled||c,isToggled:e.isToggled||u,isToggleable:e.isToggleable||!!e.isToggled,isVisible:e.isVisible||c}}function i(e){var t;return{keys:G.normalizeKeys(e),selector:_(e),command:e.command,args:e.args||f.emptyObject,preventDefault:null===(t=e.preventDefault)||void 0===t||t}}function n(e,t,i){let n=null,s=[],r=1/0,o=0;for(let a=0,d=e.length;a<d;++a){let d=e[a],l=v(d.keys,t);if(0===l)continue;if(2===l){-1!==b(d.selector,i)&&s.push(d);continue}let h=b(d.selector,i);if(-1===h||h>r)continue;let c=q.calculateSpecificity(d.selector);(!n||h<r||c>=o)&&(n=d,r=h,o=c)}return{exact:n,partial:s}}function r(e){e.target.dispatchEvent(y(e))}function o(e){return O.IS_MAC?a.hasOwnProperty(e)?a[e]:e:d.hasOwnProperty(e)?d[e]:e}e.CHORD_TIMEOUT=1e3,e.KEYBINDING_HOLD_TIMEOUT=1e3,e.modifierkeyTimeOut=500,s(t,"createCommand"),e.createCommand=t,s(i,"createKeyBinding"),e.createKeyBinding=i,s(n,"matchKeyBinding"),e.matchKeyBinding=n,s(r,"replayKeyEvent"),e.replayKeyEvent=r,s(o,"formatKey"),e.formatKey=o;const a={Backspace:"⌫",Tab:"⇥",Enter:"⏎",Shift:"⇧",Ctrl:"⌃",Alt:"⌥",Escape:"⎋",PageUp:"⇞",PageDown:"⇟",End:"↘",Home:"↖",ArrowLeft:"←",ArrowUp:"↑",ArrowRight:"→",ArrowDown:"↓",Delete:"⌦",Cmd:"⌘"},d={Escape:"Esc",PageUp:"Page Up",PageDown:"Page Down",ArrowLeft:"Left",ArrowUp:"Up",ArrowRight:"Right",ArrowDown:"Down",Delete:"Del"},l=/* @__PURE__ */s(()=>"","emptyStringFunc"),h=/* @__PURE__ */s(()=>-1,"negativeOneFunc"),c=/* @__PURE__ */s(()=>!0,"trueFunc"),u=/* @__PURE__ */s(()=>!1,"falseFunc"),m=/* @__PURE__ */s(()=>({}),"emptyDatasetFunc"),p=/* @__PURE__ */s(()=>{},"undefinedFunc");function g(e,t){return void 0===e?t:"function"==typeof e?e:()=>e}function _(e){if(-1!==e.selector.indexOf(","))throw new Error(`Selector cannot contain commas: ${e.selector}`);if(!q.isValid(e.selector))throw new Error(`Invalid selector: ${e.selector}`);return e.selector}function v(e,t){if(e.length<t.length)return 0;for(let i=0,n=t.length;i<n;++i)if(e[i]!==t[i])return 0;return e.length>t.length?2:1}function b(e,t){let i=t.target,n=t.currentTarget;for(let s=0;null!==i;i=i.parentElement,++s){if(i.hasAttribute("data-lm-suppress-shortcuts"))return-1;if(q.matches(i,e))return s;if(i===n)return-1}return-1}function y(e){let t=document.createEvent("Event"),i=e.bubbles||!0,n=e.cancelable||!0;return t.initEvent(e.type||"keydown",i,n),t.key=e.key||"",t.keyCode=e.keyCode||0,t.which=e.keyCode||0,t.ctrlKey=e.ctrlKey||!1,t.altKey=e.altKey||!1,t.shiftKey=e.shiftKey||!1,t.metaKey=e.metaKey||!1,t.view=e.view||window,t}s(g,"asFunc"),s(_,"validateSelector"),s(v,"matchSequence"),s(b,"targetDistance"),s(y,"cloneKeyboardEvent")}(Z||(Z={}));const Q=class _LinkedList{constructor(){this._first=null,this._last=null,this._size=0}get isEmpty(){return 0===this._size}get size(){return this._size}get length(){return this._size}get first(){return this._first?this._first.value:void 0}get last(){return this._last?this._last.value:void 0}get firstNode(){return this._first}get lastNode(){return this._last}*[Symbol.iterator](){let e=this._first;for(;e;)yield e.value,e=e.next}*retro(){let e=this._last;for(;e;)yield e.value,e=e.prev}*nodes(){let e=this._first;for(;e;)yield e,e=e.next}*retroNodes(){let e=this._last;for(;e;)yield e,e=e.prev}assign(e){this.clear();for(const t of e)this.addLast(t)}push(e){this.addLast(e)}pop(){return this.removeLast()}shift(e){this.addFirst(e)}unshift(){return this.removeFirst()}addFirst(e){let t=new ee.LinkedListNode(this,e);return this._first?(t.next=this._first,this._first.prev=t,this._first=t):(this._first=t,this._last=t),this._size++,t}addLast(e){let t=new ee.LinkedListNode(this,e);return this._last?(t.prev=this._last,this._last.next=t,this._last=t):(this._first=t,this._last=t),this._size++,t}insertBefore(e,t){if(!t||t===this._first)return this.addFirst(e);if(!(t instanceof ee.LinkedListNode)||t.list!==this)throw new Error("Reference node is not owned by the list.");let i=new ee.LinkedListNode(this,e),n=t,s=n.prev;return i.next=n,i.prev=s,n.prev=i,s.next=i,this._size++,i}insertAfter(e,t){if(!t||t===this._last)return this.addLast(e);if(!(t instanceof ee.LinkedListNode)||t.list!==this)throw new Error("Reference node is not owned by the list.");let i=new ee.LinkedListNode(this,e),n=t,s=n.next;return i.next=s,i.prev=n,n.next=i,s.prev=i,this._size++,i}removeFirst(){let e=this._first;if(e)return e===this._last?(this._first=null,this._last=null):(this._first=e.next,this._first.prev=null),e.list=null,e.next=null,e.prev=null,this._size--,e.value}removeLast(){let e=this._last;if(e)return e===this._first?(this._first=null,this._last=null):(this._last=e.prev,this._last.next=null),e.list=null,e.next=null,e.prev=null,this._size--,e.value}removeNode(e){if(!(e instanceof ee.LinkedListNode)||e.list!==this)throw new Error("Node is not owned by the list.");let t=e;t===this._first&&t===this._last?(this._first=null,this._last=null):t===this._first?(this._first=t.next,this._first.prev=null):t===this._last?(this._last=t.prev,this._last.next=null):(t.next.prev=t.prev,t.prev.next=t.next),t.list=null,t.next=null,t.prev=null,this._size--}clear(){let e=this._first;for(;e;){let t=e.next;e.list=null,e.prev=null,e.next=null,e=t}this._first=null,this._last=null,this._size=0}};s(Q,"LinkedList");let J=Q;var ee;!function(e){function t(t){let i=new e;return i.assign(t),i}s(t,"from"),e.from=t}(J||(J={})),function(e){const t=class _LinkedListNode{constructor(e,t){this.list=null,this.next=null,this.prev=null,this.list=e,this.value=t}};s(t,"LinkedListNode");let i=t;e.LinkedListNode=i}(ee||(ee={}));const te=class _Message{constructor(e){this.type=e}get isConflatable(){return!1}conflate(e){return!1}};s(te,"Message");let ie=te;const ne=class _ConflatableMessage extends ie{get isConflatable(){return!0}conflate(e){return!0}};s(ne,"ConflatableMessage");let se=ne;var re;!function(e){let t=null;const i=/* @__PURE__ */(e=>t=>{let i=!1;return e.then(()=>!i&&t()),()=>{i=!0}})(Promise.resolve());function n(e,t){let i=p.get(e);i&&0!==i.length?b(w(i),i=>!i||v(i,e,t))&&x(e,t):x(e,t)}function r(e,t){if(!t.isConflatable)return void M(e,t);y(u,i=>i.handler===e&&(!!i.msg&&(i.msg.type===t.type&&(!!i.msg.isConflatable&&i.msg.conflate(t)))))||M(e,t)}function o(e,t){let i=p.get(e);i&&-1!==i.indexOf(t)||(i?i.push(t):p.set(e,[t]))}function a(e,t){let i=p.get(e);if(!i)return;let n=i.indexOf(t);-1!==n&&(i[n]=null,A(i))}function d(e){let t=p.get(e);t&&t.length>0&&(m.fill(t,null),A(t));for(const i of u)i.handler===e&&(i.handler=null,i.msg=null)}function l(){_||null===t||(t(),t=null,_=!0,C(),_=!1)}function h(){return f}function c(e){let t=f;return f=e,t}s(n,"sendMessage"),e.sendMessage=n,s(r,"postMessage"),e.postMessage=r,s(o,"installMessageHook"),e.installMessageHook=o,s(a,"removeMessageHook"),e.removeMessageHook=a,s(d,"clearData"),e.clearData=d,s(l,"flush"),e.flush=l,s(h,"getExceptionHandler"),e.getExceptionHandler=h,s(c,"setExceptionHandler"),e.setExceptionHandler=c;const u=new J,p=/* @__PURE__ */new WeakMap,g=/* @__PURE__ */new Set;let f=/* @__PURE__ */s(e=>{console.error(e)},"exceptionHandler"),_=!1;function v(e,t,i){let n=!0;try{n="function"==typeof e?e(t,i):e.messageHook(t,i)}catch(s){f(s)}return n}function x(e,t){try{e.processMessage(t)}catch(i){f(i)}}function M(e,n){u.addLast({handler:e,msg:n}),null===t&&(t=i(C))}function C(){if(t=null,u.isEmpty)return;let e={handler:null,msg:null};for(u.addLast(e);;){let t=u.removeFirst();if(t===e)return;t.handler&&t.msg&&n(t.handler,t.msg)}}function A(e){0===g.size&&i(S),g.add(e)}function S(){g.forEach(I),g.clear()}function I(e){m.removeAllWhere(e,z)}function z(e){return null===e}s(v,"invokeHook"),s(x,"invokeHandler"),s(M,"enqueueMessage"),s(C,"runMessageLoop"),s(A,"scheduleCleanup"),s(S,"cleanupDirtySet"),s(I,"cleanupHooks"),s(z,"isNull")}(re||(re={}));const oe=class _AttachedProperty{constructor(e){this._pid=de.nextPID(),this.name=e.name,this._create=e.create,this._coerce=e.coerce||null,this._compare=e.compare||null,this._changed=e.changed||null}get(e){let t,i=de.ensureMap(e);return t=this._pid in i?i[this._pid]:i[this._pid]=this._createValue(e),t}set(e,t){let i,n=de.ensureMap(e);i=this._pid in n?n[this._pid]:n[this._pid]=this._createValue(e);let s=this._coerceValue(e,t);this._maybeNotify(e,i,n[this._pid]=s)}coerce(e){let t,i=de.ensureMap(e);t=this._pid in i?i[this._pid]:i[this._pid]=this._createValue(e);let n=this._coerceValue(e,t);this._maybeNotify(e,t,i[this._pid]=n)}_createValue(e){return(0,this._create)(e)}_coerceValue(e,t){let i=this._coerce;return i?i(e,t):t}_compareValue(e,t){let i=this._compare;return i?i(e,t):e===t}_maybeNotify(e,t,i){let n=this._changed;n&&!this._compareValue(t,i)&&n(e,t,i)}};s(oe,"AttachedProperty");let ae=oe;var de;!function(e){function t(e){de.ownerData.delete(e)}s(t,"clearData"),e.clearData=t}(ae||(ae={})),function(e){function t(t){let i=e.ownerData.get(t);return i||(i=/* @__PURE__ */Object.create(null),e.ownerData.set(t,i),i)}e.ownerData=/* @__PURE__ */new WeakMap,e.nextPID=/* @__PURE__ */(()=>{let e=0;return()=>`pid-${`${Math.random()}`.slice(2)}-${e++}`})(),s(t,"ensureMap"),e.ensureMap=t}(de||(de={}));const le=class _Drag{constructor(e){this._onScrollFrame=()=>{if(!this._scrollTarget)return;let{element:e,edge:t,distance:i}=this._scrollTarget,n=ce.SCROLL_EDGE_SIZE-i,s=Math.pow(n/ce.SCROLL_EDGE_SIZE,2),r=Math.max(1,Math.round(s*ce.SCROLL_EDGE_SIZE));switch(t){case"top":e.scrollTop-=r;break;case"left":e.scrollLeft-=r;break;case"right":e.scrollLeft+=r;break;case"bottom":e.scrollTop+=r}requestAnimationFrame(this._onScrollFrame)},this._disposed=!1,this._dropAction="none",this._override=null,this._currentTarget=null,this._currentElement=null,this._promise=null,this._scrollTarget=null,this._resolve=null,this.document=e.document||document,this.mimeData=e.mimeData,this.dragImage=e.dragImage||null,this.proposedAction=e.proposedAction||"copy",this.supportedActions=e.supportedActions||"all",this.source=e.source||null}dispose(){if(!this._disposed){if(this._disposed=!0,this._currentTarget){let e=new PointerEvent("pointerup",{bubbles:!0,cancelable:!0,clientX:-1,clientY:-1});ce.dispatchDragLeave(this,this._currentTarget,null,e)}this._finalize("none")}}get isDisposed(){return this._disposed}start(e,t){if(this._disposed)return Promise.resolve("none");if(this._promise)return this._promise;this._addListeners(),this._attachDragImage(e,t),this._promise=new Promise(e=>{this._resolve=e});let i=new PointerEvent("pointermove",{bubbles:!0,cancelable:!0,clientX:e,clientY:t});return document.dispatchEvent(i),this._promise}handleEvent(e){switch(e.type){case"pointermove":this._evtPointerMove(e);break;case"pointerup":this._evtPointerUp(e);break;case"keydown":this._evtKeyDown(e);break;default:e.preventDefault(),e.stopPropagation()}}moveDragImage(e,t){if(!this.dragImage)return;this.dragImage.style.transform=`translate(${e}px, ${t}px)`}_evtPointerMove(e){e.preventDefault(),e.stopPropagation(),this._updateCurrentTarget(e),this._updateDragScroll(e),this.moveDragImage(e.clientX,e.clientY)}_evtPointerUp(e){if(e.preventDefault(),e.stopPropagation(),0!==e.button)return;if(this._updateCurrentTarget(e),!this._currentTarget)return void this._finalize("none");if("none"===this._dropAction)return ce.dispatchDragLeave(this,this._currentTarget,null,e),void this._finalize("none");let t=ce.dispatchDrop(this,this._currentTarget,e);this._finalize(t)}_evtKeyDown(e){e.preventDefault(),e.stopPropagation(),27===e.keyCode&&this.dispose()}_addListeners(){document.addEventListener("pointerdown",this,!0),document.addEventListener("pointermove",this,!0),document.addEventListener("pointerup",this,!0),document.addEventListener("pointerenter",this,!0),document.addEventListener("pointerleave",this,!0),document.addEventListener("pointerover",this,!0),document.addEventListener("pointerout",this,!0),document.addEventListener("keydown",this,!0),document.addEventListener("keyup",this,!0),document.addEventListener("keypress",this,!0),document.addEventListener("contextmenu",this,!0)}_removeListeners(){document.removeEventListener("pointerdown",this,!0),document.removeEventListener("pointermove",this,!0),document.removeEventListener("pointerup",this,!0),document.removeEventListener("pointerenter",this,!0),document.removeEventListener("pointerleave",this,!0),document.removeEventListener("pointerover",this,!0),document.removeEventListener("pointerout",this,!0),document.removeEventListener("keydown",this,!0),document.removeEventListener("keyup",this,!0),document.removeEventListener("keypress",this,!0),document.removeEventListener("contextmenu",this,!0)}_updateDragScroll(e){let t=ce.findScrollTarget(e);(this._scrollTarget||t)&&(this._scrollTarget||setTimeout(this._onScrollFrame,500),this._scrollTarget=t)}_updateCurrentTarget(e){let t=this._currentTarget,i=this._currentTarget,n=this._currentElement,s=ce.findElementBehindBackdrop(e,this.document);this._currentElement=s,s!==n&&s!==i&&ce.dispatchDragExit(this,i,s,e),s!==n&&s!==i&&(i=ce.dispatchDragEnter(this,s,i,e)),i!==t&&(this._currentTarget=i,ce.dispatchDragLeave(this,t,i,e));let r=ce.dispatchDragOver(this,i,e);this._setDropAction(r)}_attachDragImage(e,t){if(!this.dragImage)return;this.dragImage.classList.add("lm-mod-drag-image");let i=this.dragImage.style;i.pointerEvents="none",i.position="fixed",i.transform=`translate(${e}px, ${t}px)`;(this.document instanceof Document?this.document.body:this.document.firstElementChild).appendChild(this.dragImage)}_detachDragImage(){if(!this.dragImage)return;let e=this.dragImage.parentNode;e&&e.removeChild(this.dragImage)}_setDropAction(e){if(e=ce.validateAction(e,this.supportedActions),!this._override||this._dropAction!==e)switch(e){case"none":this._dropAction=e,this._override=_Drag.overrideCursor("no-drop",this.document);break;case"copy":this._dropAction=e,this._override=_Drag.overrideCursor("copy",this.document);break;case"link":this._dropAction=e,this._override=_Drag.overrideCursor("alias",this.document);break;case"move":this._dropAction=e,this._override=_Drag.overrideCursor("move",this.document)}}_finalize(e){let t=this._resolve;this._removeListeners(),this._detachDragImage(),this._override&&(this._override.dispose(),this._override=null),this.mimeData.clear(),this._disposed=!0,this._dropAction="none",this._currentTarget=null,this._currentElement=null,this._scrollTarget=null,this._promise=null,this._resolve=null,t&&t(e)}};s(le,"Drag");let he=le;var ce;!function(e){const t=class _Event extends DragEvent{constructor(e,t){super(t.type,{bubbles:!0,cancelable:!0,altKey:e.altKey,button:e.button,clientX:e.clientX,clientY:e.clientY,ctrlKey:e.ctrlKey,detail:0,metaKey:e.metaKey,relatedTarget:t.related,screenX:e.screenX,screenY:e.screenY,shiftKey:e.shiftKey,view:window});const{drag:i}=t;this.dropAction="none",this.mimeData=i.mimeData,this.proposedAction=i.proposedAction,this.supportedActions=i.supportedActions,this.source=i.source}};s(t,"Event");let i=t;function n(e,t=document){return ce.overrideCursor(e,t)}e.Event=i,s(n,"overrideCursor"),e.overrideCursor=n}(he||(he={})),function(e){function t(e,t){return u[e]&m[t]?e:"none"}function i(t,i=document){if(t){if(n&&t==n.event)return n.element;e.cursorBackdrop.style.zIndex="-1000";const s=i.elementFromPoint(t.clientX,t.clientY);return e.cursorBackdrop.style.zIndex="",n={event:t,element:s},s}{const t=e.cursorBackdrop.style.transform;if(r&&t===r.transform)return r.element;const n=e.cursorBackdrop.getBoundingClientRect();e.cursorBackdrop.style.zIndex="-1000";const s=i.elementFromPoint(n.left+n.width/2,n.top+n.height/2);return e.cursorBackdrop.style.zIndex="",r={transform:t,element:s},s}}e.SCROLL_EDGE_SIZE=20,s(t,"validateAction"),e.validateAction=t,s(i,"findElementBehindBackdrop"),e.findElementBehindBackdrop=i;let n=null,r=null;function o(t){let n=t.clientX,s=t.clientY,r=i(t);for(;r;r=r.parentElement){if(!r.hasAttribute("data-lm-dragscroll"))continue;let t=0,i=0;r===document.body&&(t=window.pageXOffset,i=window.pageYOffset);let o=r.getBoundingClientRect(),a=o.top+i,d=o.left+t,l=d+o.width,h=a+o.height;if(n<d||n>=l||s<a||s>=h)continue;let c,u=n-d+1,m=s-a+1,p=l-n,g=h-s,f=Math.min(u,m,p,g);if(f>e.SCROLL_EDGE_SIZE)continue;switch(f){case g:c="bottom";break;case m:c="top";break;case p:c="right";break;case u:c="left";break;default:throw"unreachable"}let _,v=r.scrollWidth-r.clientWidth,b=r.scrollHeight-r.clientHeight;switch(c){case"top":_=b>0&&r.scrollTop>0;break;case"left":_=v>0&&r.scrollLeft>0;break;case"right":_=v>0&&r.scrollLeft<v;break;case"bottom":_=b>0&&r.scrollTop<b;break;default:throw"unreachable"}if(_)return{element:r,edge:c,distance:f}}return null}function a(e,t,i,n){if(!t)return null;let s=new he.Event(n,{drag:e,related:i,type:"lm-dragenter"});if(!t.dispatchEvent(s))return t;const r=e.document instanceof Document?e.document.body:e.document.firstElementChild;return t===r?i:(s=new he.Event(n,{drag:e,related:i,type:"lm-dragenter"}),r.dispatchEvent(s),r)}function d(e,t,i,n){if(!t)return;let s=new he.Event(n,{drag:e,related:i,type:"lm-dragexit"});t.dispatchEvent(s)}function l(e,t,i,n){if(!t)return;let s=new he.Event(n,{drag:e,related:i,type:"lm-dragleave"});t.dispatchEvent(s)}function h(e,t,i){if(!t)return"none";let n=new he.Event(i,{drag:e,related:null,type:"lm-dragover"});return!t.dispatchEvent(n)?n.dropAction:"none"}function c(e,t,i){if(!t)return"none";let n=new he.Event(i,{drag:e,related:null,type:"lm-drop"});return!t.dispatchEvent(n)?n.dropAction:"none"}s(o,"findScrollTarget"),e.findScrollTarget=o,s(a,"dispatchDragEnter"),e.dispatchDragEnter=a,s(d,"dispatchDragExit"),e.dispatchDragExit=d,s(l,"dispatchDragLeave"),e.dispatchDragLeave=l,s(h,"dispatchDragOver"),e.dispatchDragOver=h,s(c,"dispatchDrop"),e.dispatchDrop=c;const u={none:0,copy:1,link:2,move:4},m={none:u.none,copy:u.copy,link:u.link,move:u.move,"copy-link":u.copy|u.link,"copy-move":u.copy|u.move,"link-move":u.link|u.move,all:u.copy|u.link|u.move};function p(t,i=document){let n=++y;const s=i instanceof Document?i.body:i.firstElementChild;return e.cursorBackdrop.isConnected||(e.cursorBackdrop.style.transform="scale(0)",s.appendChild(e.cursorBackdrop),_(),document.addEventListener("pointermove",g,{capture:!0,passive:!0}),e.cursorBackdrop.addEventListener("scroll",f,{capture:!0,passive:!0})),e.cursorBackdrop.style.cursor=t,new B(()=>{n===y&&e.cursorBackdrop.isConnected&&(document.removeEventListener("pointermove",g,!0),e.cursorBackdrop.removeEventListener("scroll",f,!0),s.removeChild(e.cursorBackdrop))})}function g(t){e.cursorBackdrop&&(e.cursorBackdrop.style.transform=`translate(${t.clientX}px, ${t.clientY}px)`)}function f(t){if(!e.cursorBackdrop)return;let n=i();if(!n)return;const s=n.closest("[data-lm-dragscroll]");s&&(s.scrollTop+=e.cursorBackdrop.scrollTop-v,s.scrollLeft+=e.cursorBackdrop.scrollLeft-v,_())}function _(){e.cursorBackdrop.scrollTop=v,e.cursorBackdrop.scrollLeft=v}s(p,"overrideCursor"),e.overrideCursor=p,s(g,"alignBackdrop"),s(f,"propagateBackdropScroll"),s(_,"resetBackdropScroll");const v=500;function b(){const e=document.createElement("div");return e.classList.add("lm-cursor-backdrop"),e}s(b,"createCursorBackdrop");let y=0;e.cursorBackdrop=b()}(ce||(ce={}));const ue=class _VirtualText{constructor(e){this.type="text",this.content=e}};s(ue,"VirtualText");let me=ue;const pe=class _VirtualElement{constructor(e,t,i,n){this.type="element",this.tag=e,this.attrs=t,this.children=i,this.renderer=n}};s(pe,"VirtualElement");let ge=pe;function fe(e){let t,i={},n=[];for(let r=1,o=arguments.length;r<o;++r){let e=arguments[r];"string"==typeof e?n.push(new me(e)):e instanceof me||e instanceof ge?n.push(e):e instanceof Array?s(n,e):1!==r&&2!==r||!e||"object"!=typeof e||("render"in e?t=e:i=e)}return new ge(e,i,n,t);function s(e,t){for(let i of t)"string"==typeof i?e.push(new me(i)):(i instanceof me||i instanceof ge)&&e.push(i)}}var _e,ve,be;s(fe,"h"),(_e=fe||(fe={})).a=_e.bind(void 0,"a"),_e.abbr=_e.bind(void 0,"abbr"),_e.address=_e.bind(void 0,"address"),_e.area=_e.bind(void 0,"area"),_e.article=_e.bind(void 0,"article"),_e.aside=_e.bind(void 0,"aside"),_e.audio=_e.bind(void 0,"audio"),_e.b=_e.bind(void 0,"b"),_e.bdi=_e.bind(void 0,"bdi"),_e.bdo=_e.bind(void 0,"bdo"),_e.blockquote=_e.bind(void 0,"blockquote"),_e.br=_e.bind(void 0,"br"),_e.button=_e.bind(void 0,"button"),_e.canvas=_e.bind(void 0,"canvas"),_e.caption=_e.bind(void 0,"caption"),_e.cite=_e.bind(void 0,"cite"),_e.code=_e.bind(void 0,"code"),_e.col=_e.bind(void 0,"col"),_e.colgroup=_e.bind(void 0,"colgroup"),_e.data=_e.bind(void 0,"data"),_e.datalist=_e.bind(void 0,"datalist"),_e.dd=_e.bind(void 0,"dd"),_e.del=_e.bind(void 0,"del"),_e.dfn=_e.bind(void 0,"dfn"),_e.div=_e.bind(void 0,"div"),_e.dl=_e.bind(void 0,"dl"),_e.dt=_e.bind(void 0,"dt"),_e.em=_e.bind(void 0,"em"),_e.embed=_e.bind(void 0,"embed"),_e.fieldset=_e.bind(void 0,"fieldset"),_e.figcaption=_e.bind(void 0,"figcaption"),_e.figure=_e.bind(void 0,"figure"),_e.footer=_e.bind(void 0,"footer"),_e.form=_e.bind(void 0,"form"),_e.h1=_e.bind(void 0,"h1"),_e.h2=_e.bind(void 0,"h2"),_e.h3=_e.bind(void 0,"h3"),_e.h4=_e.bind(void 0,"h4"),_e.h5=_e.bind(void 0,"h5"),_e.h6=_e.bind(void 0,"h6"),_e.header=_e.bind(void 0,"header"),_e.hr=_e.bind(void 0,"hr"),_e.i=_e.bind(void 0,"i"),_e.iframe=_e.bind(void 0,"iframe"),_e.img=_e.bind(void 0,"img"),_e.input=_e.bind(void 0,"input"),_e.ins=_e.bind(void 0,"ins"),_e.kbd=_e.bind(void 0,"kbd"),_e.label=_e.bind(void 0,"label"),_e.legend=_e.bind(void 0,"legend"),_e.li=_e.bind(void 0,"li"),_e.main=_e.bind(void 0,"main"),_e.map=_e.bind(void 0,"map"),_e.mark=_e.bind(void 0,"mark"),_e.meter=_e.bind(void 0,"meter"),_e.nav=_e.bind(void 0,"nav"),_e.noscript=_e.bind(void 0,"noscript"),_e.object=_e.bind(void 0,"object"),_e.ol=_e.bind(void 0,"ol"),_e.optgroup=_e.bind(void 0,"optgroup"),_e.option=_e.bind(void 0,"option"),_e.output=_e.bind(void 0,"output"),_e.p=_e.bind(void 0,"p"),_e.param=_e.bind(void 0,"param"),_e.pre=_e.bind(void 0,"pre"),_e.progress=_e.bind(void 0,"progress"),_e.q=_e.bind(void 0,"q"),_e.rp=_e.bind(void 0,"rp"),_e.rt=_e.bind(void 0,"rt"),_e.ruby=_e.bind(void 0,"ruby"),_e.s=_e.bind(void 0,"s"),_e.samp=_e.bind(void 0,"samp"),_e.section=_e.bind(void 0,"section"),_e.select=_e.bind(void 0,"select"),_e.small=_e.bind(void 0,"small"),_e.source=_e.bind(void 0,"source"),_e.span=_e.bind(void 0,"span"),_e.strong=_e.bind(void 0,"strong"),_e.sub=_e.bind(void 0,"sub"),_e.summary=_e.bind(void 0,"summary"),_e.sup=_e.bind(void 0,"sup"),_e.table=_e.bind(void 0,"table"),_e.tbody=_e.bind(void 0,"tbody"),_e.td=_e.bind(void 0,"td"),_e.textarea=_e.bind(void 0,"textarea"),_e.tfoot=_e.bind(void 0,"tfoot"),_e.th=_e.bind(void 0,"th"),_e.thead=_e.bind(void 0,"thead"),_e.time=_e.bind(void 0,"time"),_e.title=_e.bind(void 0,"title"),_e.tr=_e.bind(void 0,"tr"),_e.track=_e.bind(void 0,"track"),_e.u=_e.bind(void 0,"u"),_e.ul=_e.bind(void 0,"ul"),_e.var_=_e.bind(void 0,"var"),_e.video=_e.bind(void 0,"video"),_e.wbr=_e.bind(void 0,"wbr"),function(e){function t(e){return be.createDOMNode(e)}function i(e,t){let i=be.hostMap.get(t)||[],n=be.asContentArray(e);be.hostMap.set(t,n),be.updateContent(t,i,n)}s(t,"realize"),e.realize=t,s(i,"render"),e.render=i}(ve||(ve={})),function(e){function t(e){return e?e instanceof Array?e:[e]:[]}function i(e){let t=arguments[1]||null;const n=arguments[2]||null;if(t)t.insertBefore(i(e),n);else{if("text"===e.type)return document.createTextNode(e.content);if(t=document.createElement(e.tag),a(t,e.attrs),e.renderer)return e.renderer.render(t,{attrs:e.attrs,children:e.children}),t;for(let n=0,s=e.children.length;n<s;++n)i(e.children[n],t)}return t}function n(e,t,s){if(t===s)return;let o=p(e,t),a=t.slice(),l=e.firstChild,h=s.length;for(let r=0;r<h;++r){if(r>=a.length){i(s[r],e);continue}let t=a[r],h=s[r];if(t===h){l=l.nextSibling;continue}if("text"===t.type&&"text"===h.type){l.textContent!==h.content&&(l.textContent=h.content),l=l.nextSibling;continue}if("text"===t.type||"text"===h.type){m.insert(a,r,h),i(h,e,l);continue}if(!t.renderer!=!h.renderer){m.insert(a,r,h),i(h,e,l);continue}let c=h.attrs.key;if(c&&c in o){let i=o[c];i.vNode!==t&&(m.move(a,a.indexOf(i.vNode,r+1),r),e.insertBefore(i.element,l),t=i.vNode,l=i.element)}if(t===h){l=l.nextSibling;continue}let u=t.attrs.key;u&&u!==c?(m.insert(a,r,h),i(h,e,l)):t.tag===h.tag?(d(l,t.attrs,h.attrs),h.renderer?h.renderer.render(l,{attrs:h.attrs,children:h.children}):n(l,t.children,h.children),l=l.nextSibling):(m.insert(a,r,h),i(h,e,l))}r(e,a,h,!0)}function r(e,t,i,n){for(let s=t.length-1;s>=i;--s){const i=t[s],o=n?e.lastChild:e.childNodes[s];"text"===i.type||(i.renderer&&i.renderer.unrender?i.renderer.unrender(o,{attrs:i.attrs,children:i.children}):r(o,i.children,0,!1)),n&&e.removeChild(o)}}e.hostMap=/* @__PURE__ */new WeakMap,s(t,"asContentArray"),e.asContentArray=t,s(i,"createDOMNode"),e.createDOMNode=i,s(n,"updateContent"),e.updateContent=n,s(r,"removeContent");const o={key:!0,className:!0,htmlFor:!0,dataset:!0,style:!0};function a(e,t){for(let i in t)i in o||("on"===i.substr(0,2)?e[i]=t[i]:e.setAttribute(i,t[i]));void 0!==t.className&&e.setAttribute("class",t.className),void 0!==t.htmlFor&&e.setAttribute("for",t.htmlFor),t.dataset&&l(e,t.dataset),t.style&&c(e,t.style)}function d(e,t,i){if(t===i)return;let n;for(n in t)n in o||n in i||("on"===n.substr(0,2)?e[n]=null:e.removeAttribute(n));for(n in i)n in o||t[n]===i[n]||("on"===n.substr(0,2)?e[n]=i[n]:e.setAttribute(n,i[n]));t.className!==i.className&&(void 0!==i.className?e.setAttribute("class",i.className):e.removeAttribute("class")),t.htmlFor!==i.htmlFor&&(void 0!==i.htmlFor?e.setAttribute("for",i.htmlFor):e.removeAttribute("for")),t.dataset!==i.dataset&&h(e,t.dataset||{},i.dataset||{}),t.style!==i.style&&u(e,t.style||{},i.style||{})}function l(e,t){for(let i in t)e.setAttribute(`data-${i}`,t[i])}function h(e,t,i){for(let n in t)n in i||e.removeAttribute(`data-${n}`);for(let n in i)t[n]!==i[n]&&e.setAttribute(`data-${n}`,i[n])}function c(e,t){let i,n=e.style;for(i in t)n[i]=t[i]}function u(e,t,i){let n,s=e.style;for(n in t)n in i||(s[n]="");for(n in i)t[n]!==i[n]&&(s[n]=i[n])}function p(e,t){let i=e.firstChild,n=/* @__PURE__ */Object.create(null);for(let s of t)"element"===s.type&&s.attrs.key&&(n[s.attrs.key]={vNode:s,element:i}),i=i.nextSibling;return n}s(a,"addAttrs"),s(d,"updateAttrs"),s(l,"addDataset"),s(h,"updateDataset"),s(c,"addStyle"),s(u,"updateStyle"),s(p,"collectKeys")}(be||(be={}));const ye=class _BoxSizer{constructor(){this.sizeHint=0,this.minSize=0,this.maxSize=1/0,this.stretch=1,this.size=0,this.done=!1}};s(ye,"BoxSizer");let we=ye;var xe;!function(e){function t(e,t){let i=e.length;if(0===i)return t;let n=0,s=0,r=0,o=0,a=0;for(let h=0;h<i;++h){let t=e[h],i=t.minSize,d=t.maxSize,l=t.sizeHint;t.done=!1,t.size=Math.max(i,Math.min(l,d)),r+=t.size,n+=i,s+=d,t.stretch>0&&(o+=t.stretch,a++)}if(t===r)return 0;if(t<=n){for(let t=0;t<i;++t){let i=e[t];i.size=i.minSize}return t-n}if(t>=s){for(let t=0;t<i;++t){let i=e[t];i.size=i.maxSize}return t-s}let d=.01,l=i;if(t<r){let n=r-t;for(;a>0&&n>d;){let t=n,s=o;for(let r=0;r<i;++r){let i=e[r];if(i.done||0===i.stretch)continue;let d=i.stretch*t/s;i.size-d<=i.minSize?(n-=i.size-i.minSize,o-=i.stretch,i.size=i.minSize,i.done=!0,l--,a--):(n-=d,i.size-=d)}}for(;l>0&&n>d;){let t=n/l;for(let s=0;s<i;++s){let i=e[s];i.done||(i.size-t<=i.minSize?(n-=i.size-i.minSize,i.size=i.minSize,i.done=!0,l--):(n-=t,i.size-=t))}}}else{let n=t-r;for(;a>0&&n>d;){let t=n,s=o;for(let r=0;r<i;++r){let i=e[r];if(i.done||0===i.stretch)continue;let d=i.stretch*t/s;i.size+d>=i.maxSize?(n-=i.maxSize-i.size,o-=i.stretch,i.size=i.maxSize,i.done=!0,l--,a--):(n-=d,i.size+=d)}}for(;l>0&&n>d;){let t=n/l;for(let s=0;s<i;++s){let i=e[s];i.done||(i.size+t>=i.maxSize?(n-=i.maxSize-i.size,i.size=i.maxSize,i.done=!0,l--):(n-=t,i.size+=t))}}}return 0}function i(e,t,i){0!==e.length&&0!==i&&(i>0?n(e,t,i):r(e,t,-i))}function n(e,t,i){let n=0;for(let a=0;a<=t;++a){let t=e[a];n+=t.maxSize-t.size}let s=0;for(let a=t+1,d=e.length;a<d;++a){let t=e[a];s+=t.size-t.minSize}let r=i=Math.min(i,n,s);for(let a=t;a>=0&&r>0;--a){let t=e[a],i=t.maxSize-t.size;i>=r?(t.sizeHint=t.size+r,r=0):(t.sizeHint=t.size+i,r-=i)}let o=i;for(let a=t+1,d=e.length;a<d&&o>0;++a){let t=e[a],i=t.size-t.minSize;i>=o?(t.sizeHint=t.size-o,o=0):(t.sizeHint=t.size-i,o-=i)}}function r(e,t,i){let n=0;for(let a=t+1,d=e.length;a<d;++a){let t=e[a];n+=t.maxSize-t.size}let s=0;for(let a=0;a<=t;++a){let t=e[a];s+=t.size-t.minSize}let r=i=Math.min(i,n,s);for(let a=t+1,d=e.length;a<d&&r>0;++a){let t=e[a],i=t.maxSize-t.size;i>=r?(t.sizeHint=t.size+r,r=0):(t.sizeHint=t.size+i,r-=i)}let o=i;for(let a=t;a>=0&&o>0;--a){let t=e[a],i=t.size-t.minSize;i>=o?(t.sizeHint=t.size-o,o=0):(t.sizeHint=t.size-i,o-=i)}}s(t,"calc"),e.calc=t,s(i,"adjust"),e.adjust=i,s(n,"growSizer"),s(r,"shrinkSizer")}(xe||(xe={}));const Me=class _Title{constructor(e){this._label="",this._caption="",this._mnemonic=-1,this._icon=void 0,this._iconClass="",this._iconLabel="",this._className="",this._closable=!1,this._changed=new T(this),this._isDisposed=!1,this.owner=e.owner,void 0!==e.label&&(this._label=e.label),void 0!==e.mnemonic&&(this._mnemonic=e.mnemonic),void 0!==e.icon&&(this._icon=e.icon),void 0!==e.iconClass&&(this._iconClass=e.iconClass),void 0!==e.iconLabel&&(this._iconLabel=e.iconLabel),void 0!==e.caption&&(this._caption=e.caption),void 0!==e.className&&(this._className=e.className),void 0!==e.closable&&(this._closable=e.closable),this._dataset=e.dataset||{}}get changed(){return this._changed}get label(){return this._label}set label(e){this._label!==e&&(this._label=e,this._changed.emit(void 0))}get mnemonic(){return this._mnemonic}set mnemonic(e){this._mnemonic!==e&&(this._mnemonic=e,this._changed.emit(void 0))}get icon(){return this._icon}set icon(e){this._icon!==e&&(this._icon=e,this._changed.emit(void 0))}get iconClass(){return this._iconClass}set iconClass(e){this._iconClass!==e&&(this._iconClass=e,this._changed.emit(void 0))}get iconLabel(){return this._iconLabel}set iconLabel(e){this._iconLabel!==e&&(this._iconLabel=e,this._changed.emit(void 0))}get caption(){return this._caption}set caption(e){this._caption!==e&&(this._caption=e,this._changed.emit(void 0))}get className(){return this._className}set className(e){this._className!==e&&(this._className=e,this._changed.emit(void 0))}get closable(){return this._closable}set closable(e){this._closable!==e&&(this._closable=e,this._changed.emit(void 0))}get dataset(){return this._dataset}set dataset(e){this._dataset!==e&&(this._dataset=e,this._changed.emit(void 0))}get isDisposed(){return this._isDisposed}dispose(){this.isDisposed||(this._isDisposed=!0,T.clearData(this))}};s(Me,"Title");let Ce=Me;const Ae=class _Widget{constructor(e={}){this._flags=0,this._layout=null,this._parent=null,this._disposed=new T(this),this._hiddenMode=_Widget.HiddenMode.Display,this.node=Ie.createNode(e),this.addClass("lm-Widget")}dispose(){this.isDisposed||(this.setFlag(_Widget.Flag.IsDisposed),this._disposed.emit(void 0),this.parent?this.parent=null:this.isAttached&&_Widget.detach(this),this._layout&&(this._layout.dispose(),this._layout=null),this.title.dispose(),T.clearData(this),re.clearData(this),ae.clearData(this))}get disposed(){return this._disposed}get isDisposed(){return this.testFlag(_Widget.Flag.IsDisposed)}get isAttached(){return this.testFlag(_Widget.Flag.IsAttached)}get isHidden(){return this.testFlag(_Widget.Flag.IsHidden)}get isVisible(){let e=this;do{if(e.isHidden||!e.isAttached)return!1;e=e.parent}while(null!=e);return!0}get title(){return Ie.titleProperty.get(this)}get id(){return this.node.id}set id(e){this.node.id=e}get dataset(){return this.node.dataset}get hiddenMode(){return this._hiddenMode}set hiddenMode(e){this._hiddenMode!==e&&(this.isHidden&&this._toggleHidden(!1),e==_Widget.HiddenMode.Scale?this.node.style.willChange="transform":this.node.style.willChange="auto",this._hiddenMode=e,this.isHidden&&this._toggleHidden(!0))}get parent(){return this._parent}set parent(e){if(this._parent!==e){if(e&&this.contains(e))throw new Error("Invalid parent widget.");if(this._parent&&!this._parent.isDisposed){let e=new _Widget.ChildMessage("child-removed",this);re.sendMessage(this._parent,e)}if(this._parent=e,this._parent&&!this._parent.isDisposed){let e=new _Widget.ChildMessage("child-added",this);re.sendMessage(this._parent,e)}this.isDisposed||re.sendMessage(this,_Widget.Msg.ParentChanged)}}get layout(){return this._layout}set layout(e){if(this._layout!==e){if(this.testFlag(_Widget.Flag.DisallowLayout))throw new Error("Cannot set widget layout.");if(this._layout)throw new Error("Cannot change widget layout.");if(e.parent)throw new Error("Cannot change layout parent.");this._layout=e,e.parent=this}}*children(){this._layout&&(yield*this._layout)}contains(e){for(let t=e;t;t=t._parent)if(t===this)return!0;return!1}hasClass(e){return this.node.classList.contains(e)}addClass(e){this.node.classList.add(e)}removeClass(e){this.node.classList.remove(e)}toggleClass(e,t){return!0===t?(this.node.classList.add(e),!0):!1===t?(this.node.classList.remove(e),!1):this.node.classList.toggle(e)}update(){re.postMessage(this,_Widget.Msg.UpdateRequest)}fit(){re.postMessage(this,_Widget.Msg.FitRequest)}activate(){re.postMessage(this,_Widget.Msg.ActivateRequest)}close(){re.sendMessage(this,_Widget.Msg.CloseRequest)}show(){if(this.testFlag(_Widget.Flag.IsHidden)&&(!this.isAttached||this.parent&&!this.parent.isVisible||re.sendMessage(this,_Widget.Msg.BeforeShow),this.clearFlag(_Widget.Flag.IsHidden),this._toggleHidden(!1),!this.isAttached||this.parent&&!this.parent.isVisible||re.sendMessage(this,_Widget.Msg.AfterShow),this.parent)){let e=new _Widget.ChildMessage("child-shown",this);re.sendMessage(this.parent,e)}}hide(){if(!this.testFlag(_Widget.Flag.IsHidden)&&(!this.isAttached||this.parent&&!this.parent.isVisible||re.sendMessage(this,_Widget.Msg.BeforeHide),this.setFlag(_Widget.Flag.IsHidden),this._toggleHidden(!0),!this.isAttached||this.parent&&!this.parent.isVisible||re.sendMessage(this,_Widget.Msg.AfterHide),this.parent)){let e=new _Widget.ChildMessage("child-hidden",this);re.sendMessage(this.parent,e)}}setHidden(e){e?this.hide():this.show()}testFlag(e){return 0!==(this._flags&e)}setFlag(e){this._flags|=e}clearFlag(e){this._flags&=~e}processMessage(e){switch(e.type){case"resize":this.notifyLayout(e),this.onResize(e);break;case"update-request":this.notifyLayout(e),this.onUpdateRequest(e);break;case"fit-request":this.notifyLayout(e),this.onFitRequest(e);break;case"before-show":this.notifyLayout(e),this.onBeforeShow(e);break;case"after-show":this.setFlag(_Widget.Flag.IsVisible),this.notifyLayout(e),this.onAfterShow(e);break;case"before-hide":this.notifyLayout(e),this.onBeforeHide(e);break;case"after-hide":this.clearFlag(_Widget.Flag.IsVisible),this.notifyLayout(e),this.onAfterHide(e);break;case"before-attach":this.notifyLayout(e),this.onBeforeAttach(e);break;case"after-attach":this.isHidden||this.parent&&!this.parent.isVisible||this.setFlag(_Widget.Flag.IsVisible),this.setFlag(_Widget.Flag.IsAttached),this.notifyLayout(e),this.onAfterAttach(e);break;case"before-detach":this.notifyLayout(e),this.onBeforeDetach(e);break;case"after-detach":this.clearFlag(_Widget.Flag.IsVisible),this.clearFlag(_Widget.Flag.IsAttached),this.notifyLayout(e),this.onAfterDetach(e);break;case"activate-request":this.notifyLayout(e),this.onActivateRequest(e);break;case"close-request":this.notifyLayout(e),this.onCloseRequest(e);break;case"child-added":this.notifyLayout(e),this.onChildAdded(e);break;case"child-removed":this.notifyLayout(e),this.onChildRemoved(e);break;default:this.notifyLayout(e)}}notifyLayout(e){this._layout&&this._layout.processParentMessage(e)}onCloseRequest(e){this.parent?this.parent=null:this.isAttached&&_Widget.detach(this)}onResize(e){}onUpdateRequest(e){}onFitRequest(e){}onActivateRequest(e){}onBeforeShow(e){}onAfterShow(e){}onBeforeHide(e){}onAfterHide(e){}onBeforeAttach(e){}onAfterAttach(e){}onBeforeDetach(e){}onAfterDetach(e){}onChildAdded(e){}onChildRemoved(e){}_toggleHidden(e){if(e)switch(this._hiddenMode){case _Widget.HiddenMode.Display:this.addClass("lm-mod-hidden");break;case _Widget.HiddenMode.Scale:this.node.style.transform="scale(0)",this.node.setAttribute("aria-hidden","true");break;case _Widget.HiddenMode.ContentVisibility:this.node.style.contentVisibility="hidden",this.node.style.zIndex="-1"}else switch(this._hiddenMode){case _Widget.HiddenMode.Display:this.removeClass("lm-mod-hidden");break;case _Widget.HiddenMode.Scale:this.node.style.transform="",this.node.removeAttribute("aria-hidden");break;case _Widget.HiddenMode.ContentVisibility:this.node.style.contentVisibility="",this.node.style.zIndex=""}}};s(Ae,"Widget");let Se=Ae;var Ie;!function(e){var t,i,n;(t=e.HiddenMode||(e.HiddenMode={}))[t.Display=0]="Display",t[t.Scale=1]="Scale",t[t.ContentVisibility=2]="ContentVisibility",(i=e.Flag||(e.Flag={}))[i.IsDisposed=1]="IsDisposed",i[i.IsAttached=2]="IsAttached",i[i.IsHidden=4]="IsHidden",i[i.IsVisible=8]="IsVisible",i[i.DisallowLayout=16]="DisallowLayout",(n=e.Msg||(e.Msg={})).BeforeShow=new ie("before-show"),n.AfterShow=new ie("after-show"),n.BeforeHide=new ie("before-hide"),n.AfterHide=new ie("after-hide"),n.BeforeAttach=new ie("before-attach"),n.AfterAttach=new ie("after-attach"),n.BeforeDetach=new ie("before-detach"),n.AfterDetach=new ie("after-detach"),n.ParentChanged=new ie("parent-changed"),n.UpdateRequest=new se("update-request"),n.FitRequest=new se("fit-request"),n.ActivateRequest=new se("activate-request"),n.CloseRequest=new se("close-request");const r=class _ChildMessage extends ie{constructor(e,t){super(e),this.child=t}};s(r,"ChildMessage");let o=r;e.ChildMessage=o;const a=class _ResizeMessage extends ie{constructor(e,t){super("resize"),this.width=e,this.height=t}};s(a,"ResizeMessage");let d=a;var l;function h(t,i,n=null){if(t.parent)throw new Error("Cannot attach a child widget.");if(t.isAttached||t.node.isConnected)throw new Error("Widget is already attached.");if(!i.isConnected)throw new Error("Host is not attached.");re.sendMessage(t,e.Msg.BeforeAttach),i.insertBefore(t.node,n),re.sendMessage(t,e.Msg.AfterAttach)}function c(t){if(t.parent)throw new Error("Cannot detach a child widget.");if(!t.isAttached||!t.node.isConnected)throw new Error("Widget is not attached.");re.sendMessage(t,e.Msg.BeforeDetach),t.node.parentNode.removeChild(t.node),re.sendMessage(t,e.Msg.AfterDetach)}e.ResizeMessage=d,(l=d=e.ResizeMessage||(e.ResizeMessage={})).UnknownSize=new l(-1,-1),s(h,"attach"),e.attach=h,s(c,"detach"),e.detach=c}(Se||(Se={})),function(e){function t(e){return e.node||document.createElement(e.tag||"div")}e.titleProperty=new ae({name:"title",create:/* @__PURE__ */s(e=>new Ce({owner:e}),"create")}),s(t,"createNode"),e.createNode=t}(Ie||(Ie={}));const ze=class _Layout{constructor(e={}){this._disposed=!1,this._parent=null,this._fitPolicy=e.fitPolicy||"set-min-size"}dispose(){this._parent=null,this._disposed=!0,T.clearData(this),ae.clearData(this)}get isDisposed(){return this._disposed}get parent(){return this._parent}set parent(e){if(this._parent!==e){if(this._parent)throw new Error("Cannot change parent widget.");if(e.layout!==this)throw new Error("Invalid parent widget.");this._parent=e,this.init()}}get fitPolicy(){return this._fitPolicy}set fitPolicy(e){if(this._fitPolicy!==e&&(this._fitPolicy=e,this._parent)){let e=this._parent.node.style;e.minWidth="",e.minHeight="",e.maxWidth="",e.maxHeight="",this._parent.fit()}}processParentMessage(e){switch(e.type){case"resize":this.onResize(e);break;case"update-request":this.onUpdateRequest(e);break;case"fit-request":this.onFitRequest(e);break;case"before-show":this.onBeforeShow(e);break;case"after-show":this.onAfterShow(e);break;case"before-hide":this.onBeforeHide(e);break;case"after-hide":this.onAfterHide(e);break;case"before-attach":this.onBeforeAttach(e);break;case"after-attach":this.onAfterAttach(e);break;case"before-detach":this.onBeforeDetach(e);break;case"after-detach":this.onAfterDetach(e);break;case"child-removed":this.onChildRemoved(e);break;case"child-shown":this.onChildShown(e);break;case"child-hidden":this.onChildHidden(e)}}init(){for(const e of this)e.parent=this.parent}onResize(e){for(const t of this)re.sendMessage(t,Se.ResizeMessage.UnknownSize)}onUpdateRequest(e){for(const t of this)re.sendMessage(t,Se.ResizeMessage.UnknownSize)}onBeforeAttach(e){for(const t of this)re.sendMessage(t,e)}onAfterAttach(e){for(const t of this)re.sendMessage(t,e)}onBeforeDetach(e){for(const t of this)re.sendMessage(t,e)}onAfterDetach(e){for(const t of this)re.sendMessage(t,e)}onBeforeShow(e){for(const t of this)t.isHidden||re.sendMessage(t,e)}onAfterShow(e){for(const t of this)t.isHidden||re.sendMessage(t,e)}onBeforeHide(e){for(const t of this)t.isHidden||re.sendMessage(t,e)}onAfterHide(e){for(const t of this)t.isHidden||re.sendMessage(t,e)}onChildRemoved(e){this.removeWidget(e.child)}onFitRequest(e){}onChildShown(e){}onChildHidden(e){}};s(ze,"Layout");let ke=ze;!function(e){function t(e){return Le.horizontalAlignmentProperty.get(e)}function i(e,t){Le.horizontalAlignmentProperty.set(e,t)}function n(e){return Le.verticalAlignmentProperty.get(e)}function r(e,t){Le.verticalAlignmentProperty.set(e,t)}s(t,"getHorizontalAlignment"),e.getHorizontalAlignment=t,s(i,"setHorizontalAlignment"),e.setHorizontalAlignment=i,s(n,"getVerticalAlignment"),e.getVerticalAlignment=n,s(r,"setVerticalAlignment"),e.setVerticalAlignment=r}(ke||(ke={}));const Ee=class _LayoutItem{constructor(e){this._top=NaN,this._left=NaN,this._width=NaN,this._height=NaN,this._minWidth=0,this._minHeight=0,this._maxWidth=1/0,this._maxHeight=1/0,this._disposed=!1,this.widget=e,this.widget.node.style.position="absolute",this.widget.node.style.contain="strict"}dispose(){if(this._disposed)return;this._disposed=!0;let e=this.widget.node.style;e.position="",e.top="",e.left="",e.width="",e.height="",e.contain=""}get minWidth(){return this._minWidth}get minHeight(){return this._minHeight}get maxWidth(){return this._maxWidth}get maxHeight(){return this._maxHeight}get isDisposed(){return this._disposed}get isHidden(){return this.widget.isHidden}get isVisible(){return this.widget.isVisible}get isAttached(){return this.widget.isAttached}fit(){let e=F.sizeLimits(this.widget.node);this._minWidth=e.minWidth,this._minHeight=e.minHeight,this._maxWidth=e.maxWidth,this._maxHeight=e.maxHeight}update(e,t,i,n){let s=Math.max(this._minWidth,Math.min(i,this._maxWidth)),r=Math.max(this._minHeight,Math.min(n,this._maxHeight));if(s<i)switch(ke.getHorizontalAlignment(this.widget)){case"left":break;case"center":e+=(i-s)/2;break;case"right":e+=i-s;break;default:throw"unreachable"}if(r<n)switch(ke.getVerticalAlignment(this.widget)){case"top":break;case"center":t+=(n-r)/2;break;case"bottom":t+=n-r;break;default:throw"unreachable"}let o=!1,a=this.widget.node.style;if(this._top!==t&&(this._top=t,a.top=`${t}px`),this._left!==e&&(this._left=e,a.left=`${e}px`),this._width!==s&&(o=!0,this._width=s,a.width=`${s}px`),this._height!==r&&(o=!0,this._height=r,a.height=`${r}px`),o){let e=new Se.ResizeMessage(s,r);re.sendMessage(this.widget,e)}}};s(Ee,"LayoutItem");let Te=Ee;var Le;!function(e){function t(e){e.parent&&e.parent.layout&&e.parent.update()}e.horizontalAlignmentProperty=new ae({name:"horizontalAlignment",create:/* @__PURE__ */s(()=>"center","create"),changed:t}),e.verticalAlignmentProperty=new ae({name:"verticalAlignment",create:/* @__PURE__ */s(()=>"top","create"),changed:t}),s(t,"onAlignmentChanged")}(Le||(Le={}));const De=class _PanelLayout extends ke{constructor(){super(...arguments),this._widgets=[]}dispose(){for(;this._widgets.length>0;)this._widgets.pop().dispose();super.dispose()}get widgets(){return this._widgets}*[Symbol.iterator](){yield*this._widgets}addWidget(e){this.insertWidget(this._widgets.length,e)}insertWidget(e,t){t.parent=this.parent;let i=this._widgets.indexOf(t),n=Math.max(0,Math.min(e,this._widgets.length));if(-1===i)return m.insert(this._widgets,n,t),void(this.parent&&this.attachWidget(n,t));n===this._widgets.length&&n--,i!==n&&(m.move(this._widgets,i,n),this.parent&&this.moveWidget(i,n,t))}removeWidget(e){this.removeWidgetAt(this._widgets.indexOf(e))}removeWidgetAt(e){let t=m.removeAt(this._widgets,e);t&&this.parent&&this.detachWidget(e,t)}init(){super.init();let e=0;for(const t of this)this.attachWidget(e++,t)}attachWidget(e,t){let i=this.parent.node.children[e];this.parent.isAttached&&re.sendMessage(t,Se.Msg.BeforeAttach),this.parent.node.insertBefore(t.node,i),this.parent.isAttached&&re.sendMessage(t,Se.Msg.AfterAttach)}moveWidget(e,t,i){this.parent.isAttached&&re.sendMessage(i,Se.Msg.BeforeDetach),this.parent.node.removeChild(i.node),this.parent.isAttached&&re.sendMessage(i,Se.Msg.AfterDetach);let n=this.parent.node.children[t];this.parent.isAttached&&re.sendMessage(i,Se.Msg.BeforeAttach),this.parent.node.insertBefore(i.node,n),this.parent.isAttached&&re.sendMessage(i,Se.Msg.AfterAttach)}detachWidget(e,t){this.parent.isAttached&&re.sendMessage(t,Se.Msg.BeforeDetach),this.parent.node.removeChild(t.node),this.parent.isAttached&&re.sendMessage(t,Se.Msg.AfterDetach)}};s(De,"PanelLayout");let Be=De;var Re;!function(e){function t(e){return Math.max(0,Math.floor(e))}s(t,"clampDimension"),e.clampDimension=t}(Re||(Re={}));var Pe=Re;const We=class _SplitLayout extends Be{constructor(e){super(),this.widgetOffset=0,this._fixed=0,this._spacing=4,this._dirty=!1,this._hasNormedSizes=!1,this._sizers=[],this._items=[],this._handles=[],this._box=null,this._alignment="start",this._orientation="horizontal",this.renderer=e.renderer,void 0!==e.orientation&&(this._orientation=e.orientation),void 0!==e.alignment&&(this._alignment=e.alignment),void 0!==e.spacing&&(this._spacing=Re.clampDimension(e.spacing))}dispose(){for(const e of this._items)e.dispose();this._box=null,this._items.length=0,this._sizers.length=0,this._handles.length=0,super.dispose()}get orientation(){return this._orientation}set orientation(e){this._orientation!==e&&(this._orientation=e,this.parent&&(this.parent.dataset.orientation=e,this.parent.fit()))}get alignment(){return this._alignment}set alignment(e){this._alignment!==e&&(this._alignment=e,this.parent&&(this.parent.dataset.alignment=e,this.parent.update()))}get spacing(){return this._spacing}set spacing(e){e=Re.clampDimension(e),this._spacing!==e&&(this._spacing=e,this.parent&&this.parent.fit())}get handles(){return this._handles}absoluteSizes(){return this._sizers.map(e=>e.size)}relativeSizes(){return Ne.normalize(this._sizers.map(e=>e.size))}setRelativeSizes(e,t=!0){let i=this._sizers.length,n=e.slice(0,i);for(;n.length<i;)n.push(0);let s=Ne.normalize(n);for(let r=0;r<i;++r){let e=this._sizers[r];e.sizeHint=s[r],e.size=s[r]}this._hasNormedSizes=!0,t&&this.parent&&this.parent.update()}moveHandle(e,t){let i,n=this._handles[e];if(n&&!n.classList.contains("lm-mod-hidden")&&(i="horizontal"===this._orientation?t-n.offsetLeft:t-n.offsetTop,0!==i)){for(let e of this._sizers)e.size>0&&(e.sizeHint=e.size);xe.adjust(this._sizers,e,i),this.parent&&this.parent.update()}}init(){this.parent.dataset.orientation=this.orientation,this.parent.dataset.alignment=this.alignment,super.init()}attachWidget(e,t){let i=new Te(t),n=Ne.createHandle(this.renderer),s=Ne.averageSize(this._sizers),r=Ne.createSizer(s);m.insert(this._items,e,i),m.insert(this._sizers,e,r),m.insert(this._handles,e,n),this.parent.isAttached&&re.sendMessage(t,Se.Msg.BeforeAttach),this.parent.node.appendChild(t.node),this.parent.node.appendChild(n),this.parent.isAttached&&re.sendMessage(t,Se.Msg.AfterAttach),this.parent.fit()}moveWidget(e,t,i){m.move(this._items,e,t),m.move(this._sizers,e,t),m.move(this._handles,e,t),this.parent.fit()}detachWidget(e,t){let i=m.removeAt(this._items,e),n=m.removeAt(this._handles,e);m.removeAt(this._sizers,e),this.parent.isAttached&&re.sendMessage(t,Se.Msg.BeforeDetach),this.parent.node.removeChild(t.node),this.parent.node.removeChild(n),this.parent.isAttached&&re.sendMessage(t,Se.Msg.AfterDetach),i.dispose(),this.parent.fit()}onBeforeShow(e){super.onBeforeShow(e),this.parent.update()}onBeforeAttach(e){super.onBeforeAttach(e),this.parent.fit()}onChildShown(e){this.parent.fit()}onChildHidden(e){this.parent.fit()}onResize(e){this.parent.isVisible&&this._update(e.width,e.height)}onUpdateRequest(e){this.parent.isVisible&&this._update(-1,-1)}onFitRequest(e){this.parent.isAttached&&this._fit()}updateItemPosition(e,t,i,n,s,r,o){const a=this._items[e];if(a.isHidden)return;let d=this._handles[e].style;t?(i+=this.widgetOffset,a.update(i,n,o,s),i+=o,d.top=`${n}px`,d.left=`${i}px`,d.width=`${this._spacing}px`,d.height=`${s}px`):(n+=this.widgetOffset,a.update(i,n,r,o),n+=o,d.top=`${n}px`,d.left=`${i}px`,d.width=`${r}px`,d.height=`${this._spacing}px`)}_fit(){let e=0,t=-1;for(let a=0,d=this._items.length;a<d;++a)this._items[a].isHidden?this._handles[a].classList.add("lm-mod-hidden"):(this._handles[a].classList.remove("lm-mod-hidden"),t=a,e++);-1!==t&&this._handles[t].classList.add("lm-mod-hidden"),this._fixed=this._spacing*Math.max(0,e-1)+this.widgetOffset*this._items.length;let i="horizontal"===this._orientation,n=i?this._fixed:0,s=i?0:this._fixed;for(let a=0,d=this._items.length;a<d;++a){let e=this._items[a],t=this._sizers[a];t.size>0&&(t.sizeHint=t.size),e.isHidden?(t.minSize=0,t.maxSize=0):(e.fit(),t.stretch=_SplitLayout.getStretch(e.widget),i?(t.minSize=e.minWidth,t.maxSize=e.maxWidth,n+=e.minWidth,s=Math.max(s,e.minHeight)):(t.minSize=e.minHeight,t.maxSize=e.maxHeight,s+=e.minHeight,n=Math.max(n,e.minWidth)))}let r=this._box=F.boxSizing(this.parent.node);n+=r.horizontalSum,s+=r.verticalSum;let o=this.parent.node.style;o.minWidth=`${n}px`,o.minHeight=`${s}px`,this._dirty=!0,this.parent.parent&&re.sendMessage(this.parent.parent,Se.Msg.FitRequest),this._dirty&&re.sendMessage(this.parent,Se.Msg.UpdateRequest)}_update(e,t){this._dirty=!1;let i=0;for(let h=0,c=this._items.length;h<c;++h)i+=+!this._items[h].isHidden;if(0===i&&0===this.widgetOffset)return;e<0&&(e=this.parent.node.offsetWidth),t<0&&(t=this.parent.node.offsetHeight),this._box||(this._box=F.boxSizing(this.parent.node));let n=this._box.paddingTop,s=this._box.paddingLeft,r=e-this._box.horizontalSum,o=t-this._box.verticalSum,a=0,d=0,l="horizontal"===this._orientation;if(i>0){let e;if(e=l?Math.max(0,r-this._fixed):Math.max(0,o-this._fixed),this._hasNormedSizes){for(let t of this._sizers)t.sizeHint*=e;this._hasNormedSizes=!1}let t=xe.calc(this._sizers,e);if(t>0)switch(this._alignment){case"start":break;case"center":a=0,d=t/2;break;case"end":a=0,d=t;break;case"justify":a=t/i,d=0;break;default:throw"unreachable"}}for(let h=0,c=this._items.length;h<c;++h){const e=this._items[h].isHidden?0:this._sizers[h].size+a;this.updateItemPosition(h,l,l?s+d:s,l?n:n+d,o,r,e);const t=this.widgetOffset+(this._handles[h].classList.contains("lm-mod-hidden")?0:this._spacing);l?s+=e+t:n+=e+t}}};s(We,"SplitLayout");let He=We;var Ne;!function(e){function t(e){return Ne.stretchProperty.get(e)}function i(e,t){Ne.stretchProperty.set(e,t)}s(t,"getStretch"),e.getStretch=t,s(i,"setStretch"),e.setStretch=i}(He||(He={})),function(e){function t(e){let t=new we;return t.sizeHint=Math.floor(e),t}function i(e){let t=e.createHandle();return t.style.position="absolute",t.style.contain="style",t}function n(e){return e.reduce((e,t)=>e+t.size,0)/e.length||0}function r(e){let t=e.length;if(0===t)return[];let i=e.reduce((e,t)=>e+Math.abs(t),0);return 0===i?e.map(e=>1/t):e.map(e=>e/i)}function o(e){e.parent&&e.parent.layout instanceof He&&e.parent.fit()}e.stretchProperty=new ae({name:"stretch",create:/* @__PURE__ */s(()=>0,"create"),coerce:/* @__PURE__ */s((e,t)=>Math.max(0,Math.floor(t)),"coerce"),changed:o}),s(t,"createSizer"),e.createSizer=t,s(i,"createHandle"),e.createHandle=i,s(n,"averageSize"),e.averageSize=n,s(r,"normalize"),e.normalize=r,s(o,"onChildSizingChanged")}(Ne||(Ne={}));const Fe=class _AccordionLayout extends He{constructor(e){super({...e,orientation:e.orientation||"vertical"}),this._titles=[],this.titleSpace=e.titleSpace||22}get titleSpace(){return this.widgetOffset}set titleSpace(e){e=Pe.clampDimension(e),this.widgetOffset!==e&&(this.widgetOffset=e,this.parent&&this.parent.fit())}get titles(){return this._titles}dispose(){this.isDisposed||(this._titles.length=0,super.dispose())}updateTitle(e,t){const i=this._titles[e],n=i.classList.contains("lm-mod-expanded"),s=qe.createTitle(this.renderer,t.title,n);this._titles[e]=s,this.parent.node.replaceChild(s,i)}insertWidget(e,t){t.id||(t.id=`id-${I.uuid4()}`),super.insertWidget(e,t)}attachWidget(e,t){const i=qe.createTitle(this.renderer,t.title);m.insert(this._titles,e,i),this.parent.node.appendChild(i),t.node.setAttribute("role","region"),t.node.setAttribute("aria-labelledby",i.id),super.attachWidget(e,t)}moveWidget(e,t,i){m.move(this._titles,e,t),super.moveWidget(e,t,i)}detachWidget(e,t){const i=m.removeAt(this._titles,e);this.parent.node.removeChild(i),super.detachWidget(e,t)}updateItemPosition(e,t,i,n,s,r,o){const a=this._titles[e].style;a.top=`${n}px`,a.left=`${i}px`,a.height=`${this.widgetOffset}px`,a.width=t?`${s}px`:`${r}px`,super.updateItemPosition(e,t,i,n,s,r,o)}};s(Fe,"AccordionLayout");let Oe=Fe;var qe;!function(e){function t(e,t,i=!0){const n=e.createSectionTitle(t);return n.style.position="absolute",n.style.contain="strict",n.setAttribute("aria-label",`${t.label} Section`),n.setAttribute("aria-expanded",i?"true":"false"),n.setAttribute("aria-controls",t.owner.id),i&&n.classList.add("lm-mod-expanded"),n}s(t,"createTitle"),e.createTitle=t}(qe||(qe={}));const Ke=class _Panel extends Se{constructor(e={}){super(),this.addClass("lm-Panel"),this.layout=Ve.createLayout(e)}get widgets(){return this.layout.widgets}addWidget(e){this.layout.addWidget(e)}insertWidget(e,t){this.layout.insertWidget(e,t)}};s(Ke,"Panel");let $e=Ke;var Ve;!function(e){function t(e){return e.layout||new Be}s(t,"createLayout"),e.createLayout=t}(Ve||(Ve={}));let Ue=(s(e=class extends $e{constructor(e={}){super({layout:je.createLayout(e)}),this._handleMoved=new T(this),this._pressData=null,this.addClass("lm-SplitPanel")}dispose(){this._releaseMouse(),super.dispose()}get orientation(){return this.layout.orientation}set orientation(e){this.layout.orientation=e}get alignment(){return this.layout.alignment}set alignment(e){this.layout.alignment=e}get spacing(){return this.layout.spacing}set spacing(e){this.layout.spacing=e}get renderer(){return this.layout.renderer}get handleMoved(){return this._handleMoved}get handles(){return this.layout.handles}relativeSizes(){return this.layout.relativeSizes()}setRelativeSizes(e,t=!0){this.layout.setRelativeSizes(e,t)}handleEvent(e){switch(e.type){case"pointerdown":this._evtPointerDown(e);break;case"pointermove":this._evtPointerMove(e);break;case"pointerup":this._evtPointerUp(e);break;case"keydown":this._evtKeyDown(e);break;case"contextmenu":e.preventDefault(),e.stopPropagation()}}onBeforeAttach(e){this.node.addEventListener("pointerdown",this)}onAfterDetach(e){this.node.removeEventListener("pointerdown",this),this._releaseMouse()}onChildAdded(e){e.child.addClass("lm-SplitPanel-child"),this._releaseMouse()}onChildRemoved(e){e.child.removeClass("lm-SplitPanel-child"),this._releaseMouse()}_evtKeyDown(e){this._pressData&&(e.preventDefault(),e.stopPropagation()),27===e.keyCode&&this._releaseMouse()}_evtPointerDown(e){if(0!==e.button)return;let t,i=this.layout,n=m.findFirstIndex(i.handles,t=>t.contains(e.target));if(-1===n)return;e.preventDefault(),e.stopPropagation(),document.addEventListener("pointerup",this,!0),document.addEventListener("pointermove",this,!0),document.addEventListener("keydown",this,!0),document.addEventListener("contextmenu",this,!0);let s=i.handles[n],r=s.getBoundingClientRect();t="horizontal"===i.orientation?e.clientX-r.left:e.clientY-r.top;let o=window.getComputedStyle(s),a=he.overrideCursor(o.cursor);this._pressData={index:n,delta:t,override:a}}_evtPointerMove(e){let t;e.preventDefault(),e.stopPropagation();let i=this.layout,n=this.node.getBoundingClientRect();t="horizontal"===i.orientation?e.clientX-n.left-this._pressData.delta:e.clientY-n.top-this._pressData.delta,i.moveHandle(this._pressData.index,t)}_evtPointerUp(e){0===e.button&&(e.preventDefault(),e.stopPropagation(),this._releaseMouse())}_releaseMouse(){this._pressData&&(this._pressData.override.dispose(),this._pressData=null,this._handleMoved.emit(),document.removeEventListener("keydown",this,!0),document.removeEventListener("pointerup",this,!0),document.removeEventListener("pointermove",this,!0),document.removeEventListener("contextmenu",this,!0))}},"SplitPanel"),e);var je;!function(e){const t=class _Renderer{createHandle(){let e=document.createElement("div");return e.className="lm-SplitPanel-handle",e}};s(t,"Renderer");let i=t;function n(e){return He.getStretch(e)}function r(e,t){He.setStretch(e,t)}e.Renderer=i,e.defaultRenderer=new i,s(n,"getStretch"),e.getStretch=n,s(r,"setStretch"),e.setStretch=r}(Ue||(Ue={})),function(e){function t(e){return e.layout||new He({renderer:e.renderer||Ue.defaultRenderer,orientation:e.orientation,alignment:e.alignment,spacing:e.spacing})}s(t,"createLayout"),e.createLayout=t}(je||(je={}));const Ye=class _AccordionPanel extends Ue{constructor(e={}){super({...e,layout:Ge.createLayout(e)}),this._widgetSizesCache=/* @__PURE__ */new WeakMap,this._expansionToggled=new T(this),this.addClass("lm-AccordionPanel")}get renderer(){return this.layout.renderer}get titleSpace(){return this.layout.titleSpace}set titleSpace(e){this.layout.titleSpace=e}get titles(){return this.layout.titles}get expansionToggled(){return this._expansionToggled}addWidget(e){super.addWidget(e),e.title.changed.connect(this._onTitleChanged,this)}collapse(e){const t=this.layout.widgets[e];t&&!t.isHidden&&this._toggleExpansion(e)}expand(e){const t=this.layout.widgets[e];t&&t.isHidden&&this._toggleExpansion(e)}insertWidget(e,t){super.insertWidget(e,t),t.title.changed.connect(this._onTitleChanged,this)}handleEvent(e){switch(super.handleEvent(e),e.type){case"click":this._evtClick(e);break;case"keydown":this._eventKeyDown(e)}}onBeforeAttach(e){this.node.addEventListener("click",this),this.node.addEventListener("keydown",this),super.onBeforeAttach(e)}onAfterDetach(e){super.onAfterDetach(e),this.node.removeEventListener("click",this),this.node.removeEventListener("keydown",this)}_onTitleChanged(e){const t=m.findFirstIndex(this.widgets,t=>t.contains(e.owner));t>=0&&(this.layout.updateTitle(t,e.owner),this.update())}_computeWidgetSize(e){const t=this.layout,i=t.widgets[e];if(!i)return;const n=i.isHidden,s=t.absoluteSizes(),r=(n?-1:1)*this.spacing,o=s.reduce((e,t)=>e+t);let a=[...s];if(n){const t=this._widgetSizesCache.get(i);if(!t)return;a[e]+=t;const n=a.map(e=>e-t>0).lastIndexOf(!0);-1===n?a.forEach((i,n)=>{n!==e&&(a[n]-=s[n]/o*(t-r))}):a[n]-=t-r}else{const t=s[e];this._widgetSizesCache.set(i,t),a[e]=0;const n=a.map(e=>e>0).lastIndexOf(!0);if(-1===n)return;a[n]=s[n]+t+r}return a.map(e=>e/(o+r))}_evtClick(e){const t=e.target;if(t){const i=m.findFirstIndex(this.titles,e=>e.contains(t));i>=0&&(e.preventDefault(),e.stopPropagation(),this._toggleExpansion(i))}}_eventKeyDown(e){if(e.defaultPrevented)return;const t=e.target;let i=!1;if(t){const n=m.findFirstIndex(this.titles,e=>e.contains(t));if(n>=0){const s=e.keyCode.toString();if(e.key.match(/Space|Enter/)||s.match(/13|32/))t.click(),i=!0;else if("horizontal"===this.orientation?e.key.match(/ArrowLeft|ArrowRight/)||s.match(/37|39/):e.key.match(/ArrowUp|ArrowDown/)||s.match(/38|40/)){const t=e.key.match(/ArrowLeft|ArrowUp/)||s.match(/37|38/)?-1:1,r=this.titles.length,o=(n+r+t)%r;this.titles[o].focus(),i=!0}else"End"===e.key||"35"===s?(this.titles[this.titles.length-1].focus(),i=!0):"Home"!==e.key&&"36"!==s||(this.titles[0].focus(),i=!0)}i&&e.preventDefault()}}_toggleExpansion(e){const t=this.titles[e],i=this.layout.widgets[e],n=this._computeWidgetSize(e);n&&this.setRelativeSizes(n,!1),i.isHidden?(t.classList.add("lm-mod-expanded"),t.setAttribute("aria-expanded","true"),i.show()):(t.classList.remove("lm-mod-expanded"),t.setAttribute("aria-expanded","false"),i.hide()),this._expansionToggled.emit(e)}};s(Ye,"AccordionPanel");let Xe=Ye;var Ge;!function(e){const t=class _Renderer extends Ue.Renderer{constructor(){super(),this.titleClassName="lm-AccordionPanel-title",this._titleID=0,this._titleKeys=/* @__PURE__ */new WeakMap,this._uuid=++_Renderer._nInstance}createCollapseIcon(e){return document.createElement("span")}createSectionTitle(e){const t=document.createElement("h3");t.setAttribute("tabindex","0"),t.id=this.createTitleKey(e),t.className=this.titleClassName;for(const n in e.dataset)t.dataset[n]=e.dataset[n];t.appendChild(this.createCollapseIcon(e)).className="lm-AccordionPanel-titleCollapser";const i=t.appendChild(document.createElement("span"));return i.className="lm-AccordionPanel-titleLabel",i.textContent=e.label,i.title=e.caption||e.label,t}createTitleKey(e){let t=this._titleKeys.get(e);return void 0===t&&(t=`title-key-${this._uuid}-${this._titleID++}`,this._titleKeys.set(e,t)),t}};s(t,"Renderer");let i=t;i._nInstance=0,e.Renderer=i,e.defaultRenderer=new i}(Xe||(Xe={})),function(e){function t(e){return e.layout||new Oe({renderer:e.renderer||Xe.defaultRenderer,orientation:e.orientation,alignment:e.alignment,spacing:e.spacing,titleSpace:e.titleSpace})}s(t,"createLayout"),e.createLayout=t}(Ge||(Ge={}));const Ze=class _BoxLayout extends Be{constructor(e={}){super(),this._fixed=0,this._spacing=4,this._dirty=!1,this._sizers=[],this._items=[],this._box=null,this._alignment="start",this._direction="top-to-bottom",void 0!==e.direction&&(this._direction=e.direction),void 0!==e.alignment&&(this._alignment=e.alignment),void 0!==e.spacing&&(this._spacing=Pe.clampDimension(e.spacing))}dispose(){for(const e of this._items)e.dispose();this._box=null,this._items.length=0,this._sizers.length=0,super.dispose()}get direction(){return this._direction}set direction(e){this._direction!==e&&(this._direction=e,this.parent&&(this.parent.dataset.direction=e,this.parent.fit()))}get alignment(){return this._alignment}set alignment(e){this._alignment!==e&&(this._alignment=e,this.parent&&(this.parent.dataset.alignment=e,this.parent.update()))}get spacing(){return this._spacing}set spacing(e){e=Pe.clampDimension(e),this._spacing!==e&&(this._spacing=e,this.parent&&this.parent.fit())}init(){this.parent.dataset.direction=this.direction,this.parent.dataset.alignment=this.alignment,super.init()}attachWidget(e,t){m.insert(this._items,e,new Te(t)),m.insert(this._sizers,e,new we),this.parent.isAttached&&re.sendMessage(t,Se.Msg.BeforeAttach),this.parent.node.appendChild(t.node),this.parent.isAttached&&re.sendMessage(t,Se.Msg.AfterAttach),this.parent.fit()}moveWidget(e,t,i){m.move(this._items,e,t),m.move(this._sizers,e,t),this.parent.update()}detachWidget(e,t){let i=m.removeAt(this._items,e);m.removeAt(this._sizers,e),this.parent.isAttached&&re.sendMessage(t,Se.Msg.BeforeDetach),this.parent.node.removeChild(t.node),this.parent.isAttached&&re.sendMessage(t,Se.Msg.AfterDetach),i.dispose(),this.parent.fit()}onBeforeShow(e){super.onBeforeShow(e),this.parent.update()}onBeforeAttach(e){super.onBeforeAttach(e),this.parent.fit()}onChildShown(e){this.parent.fit()}onChildHidden(e){this.parent.fit()}onResize(e){this.parent.isVisible&&this._update(e.width,e.height)}onUpdateRequest(e){this.parent.isVisible&&this._update(-1,-1)}onFitRequest(e){this.parent.isAttached&&this._fit()}_fit(){let e=0;for(let o=0,a=this._items.length;o<a;++o)e+=+!this._items[o].isHidden;this._fixed=this._spacing*Math.max(0,e-1);let t=Je.isHorizontal(this._direction),i=t?this._fixed:0,n=t?0:this._fixed;for(let o=0,a=this._items.length;o<a;++o){let e=this._items[o],s=this._sizers[o];e.isHidden?(s.minSize=0,s.maxSize=0):(e.fit(),s.sizeHint=_BoxLayout.getSizeBasis(e.widget),s.stretch=_BoxLayout.getStretch(e.widget),t?(s.minSize=e.minWidth,s.maxSize=e.maxWidth,i+=e.minWidth,n=Math.max(n,e.minHeight)):(s.minSize=e.minHeight,s.maxSize=e.maxHeight,n+=e.minHeight,i=Math.max(i,e.minWidth)))}let s=this._box=F.boxSizing(this.parent.node);i+=s.horizontalSum,n+=s.verticalSum;let r=this.parent.node.style;r.minWidth=`${i}px`,r.minHeight=`${n}px`,this._dirty=!0,this.parent.parent&&re.sendMessage(this.parent.parent,Se.Msg.FitRequest),this._dirty&&re.sendMessage(this.parent,Se.Msg.UpdateRequest)}_update(e,t){this._dirty=!1;let i=0;for(let h=0,c=this._items.length;h<c;++h)i+=+!this._items[h].isHidden;if(0===i)return;e<0&&(e=this.parent.node.offsetWidth),t<0&&(t=this.parent.node.offsetHeight),this._box||(this._box=F.boxSizing(this.parent.node));let n,s=this._box.paddingTop,r=this._box.paddingLeft,o=e-this._box.horizontalSum,a=t-this._box.verticalSum;switch(this._direction){case"left-to-right":n=xe.calc(this._sizers,Math.max(0,o-this._fixed));break;case"top-to-bottom":n=xe.calc(this._sizers,Math.max(0,a-this._fixed));break;case"right-to-left":n=xe.calc(this._sizers,Math.max(0,o-this._fixed)),r+=o;break;case"bottom-to-top":n=xe.calc(this._sizers,Math.max(0,a-this._fixed)),s+=a;break;default:throw"unreachable"}let d=0,l=0;if(n>0)switch(this._alignment){case"start":break;case"center":d=0,l=n/2;break;case"end":d=0,l=n;break;case"justify":d=n/i,l=0;break;default:throw"unreachable"}for(let h=0,c=this._items.length;h<c;++h){let e=this._items[h];if(e.isHidden)continue;let t=this._sizers[h].size;switch(this._direction){case"left-to-right":e.update(r+l,s,t+d,a),r+=t+d+this._spacing;break;case"top-to-bottom":e.update(r,s+l,o,t+d),s+=t+d+this._spacing;break;case"right-to-left":e.update(r-l-t-d,s,t+d,a),r-=t+d+this._spacing;break;case"bottom-to-top":e.update(r,s-l-t-d,o,t+d),s-=t+d+this._spacing;break;default:throw"unreachable"}}}};s(Ze,"BoxLayout");let Qe=Ze;var Je;!function(e){function t(e){return Je.stretchProperty.get(e)}function i(e,t){Je.stretchProperty.set(e,t)}function n(e){return Je.sizeBasisProperty.get(e)}function r(e,t){Je.sizeBasisProperty.set(e,t)}s(t,"getStretch"),e.getStretch=t,s(i,"setStretch"),e.setStretch=i,s(n,"getSizeBasis"),e.getSizeBasis=n,s(r,"setSizeBasis"),e.setSizeBasis=r}(Qe||(Qe={})),function(e){function t(e){return"left-to-right"===e||"right-to-left"===e}function i(e){return Math.max(0,Math.floor(e))}function n(e){e.parent&&e.parent.layout instanceof Qe&&e.parent.fit()}e.stretchProperty=new ae({name:"stretch",create:/* @__PURE__ */s(()=>0,"create"),coerce:/* @__PURE__ */s((e,t)=>Math.max(0,Math.floor(t)),"coerce"),changed:n}),e.sizeBasisProperty=new ae({name:"sizeBasis",create:/* @__PURE__ */s(()=>0,"create"),coerce:/* @__PURE__ */s((e,t)=>Math.max(0,Math.floor(t)),"coerce"),changed:n}),s(t,"isHorizontal"),e.isHorizontal=t,s(i,"clampSpacing"),e.clampSpacing=i,s(n,"onChildSizingChanged")}(Je||(Je={}));const et=class _BoxPanel extends $e{constructor(e={}){super({layout:it.createLayout(e)}),this.addClass("lm-BoxPanel")}get direction(){return this.layout.direction}set direction(e){this.layout.direction=e}get alignment(){return this.layout.alignment}set alignment(e){this.layout.alignment=e}get spacing(){return this.layout.spacing}set spacing(e){this.layout.spacing=e}onChildAdded(e){e.child.addClass("lm-BoxPanel-child")}onChildRemoved(e){e.child.removeClass("lm-BoxPanel-child")}};s(et,"BoxPanel");let tt=et;var it;!function(e){function t(e){return Qe.getStretch(e)}function i(e,t){Qe.setStretch(e,t)}function n(e){return Qe.getSizeBasis(e)}function r(e,t){Qe.setSizeBasis(e,t)}s(t,"getStretch"),e.getStretch=t,s(i,"setStretch"),e.setStretch=i,s(n,"getSizeBasis"),e.getSizeBasis=n,s(r,"setSizeBasis"),e.setSizeBasis=r}(et||(tt={})),function(e){function t(e){return e.layout||new Qe(e)}s(t,"createLayout"),e.createLayout=t}(it||(it={}));const nt=class _CommandPalette extends Se{constructor(e){super({node:rt.createNode()}),this._activeIndex=-1,this._items=[],this._results=null,this.addClass("lm-CommandPalette"),this.setFlag(Se.Flag.DisallowLayout),this.commands=e.commands,this.renderer=e.renderer||_CommandPalette.defaultRenderer,this.commands.commandChanged.connect(this._onGenericChange,this),this.commands.keyBindingChanged.connect(this._onGenericChange,this)}dispose(){this._items.length=0,this._results=null,super.dispose()}get searchNode(){return this.node.getElementsByClassName("lm-CommandPalette-search")[0]}get inputNode(){return this.node.getElementsByClassName("lm-CommandPalette-input")[0]}get contentNode(){return this.node.getElementsByClassName("lm-CommandPalette-content")[0]}get items(){return this._items}addItem(e){let t=rt.createItem(this.commands,e);return this._items.push(t),this.refresh(),t}addItems(e){const t=e.map(e=>rt.createItem(this.commands,e));return t.forEach(e=>this._items.push(e)),this.refresh(),t}removeItem(e){this.removeItemAt(this._items.indexOf(e))}removeItemAt(e){m.removeAt(this._items,e)&&this.refresh()}clearItems(){0!==this._items.length&&(this._items.length=0,this.refresh())}refresh(){if(this._results=null,""!==this.inputNode.value){this.node.getElementsByClassName("lm-close-icon")[0].style.display="inherit"}else{this.node.getElementsByClassName("lm-close-icon")[0].style.display="none"}this.update()}handleEvent(e){switch(e.type){case"click":this._evtClick(e);break;case"keydown":this._evtKeyDown(e);break;case"input":this.refresh();break;case"focus":case"blur":this._toggleFocused()}}onBeforeAttach(e){this.node.addEventListener("click",this),this.node.addEventListener("keydown",this),this.node.addEventListener("input",this),this.node.addEventListener("focus",this,!0),this.node.addEventListener("blur",this,!0)}onAfterDetach(e){this.node.removeEventListener("click",this),this.node.removeEventListener("keydown",this),this.node.removeEventListener("input",this),this.node.removeEventListener("focus",this,!0),this.node.removeEventListener("blur",this,!0)}onAfterShow(e){this.update(),super.onAfterShow(e)}onActivateRequest(e){if(this.isAttached){let e=this.inputNode;e.focus(),e.select()}}onUpdateRequest(e){if(!this.isVisible)return void ve.render(null,this.contentNode);let t=this.inputNode.value,i=this.contentNode,n=this._results;if(n||(n=this._results=rt.search(this._items,t),this._activeIndex=t?m.findFirstIndex(n,rt.canActivate):-1),!t&&0===n.length)return void ve.render(null,i);if(t&&0===n.length){let e=this.renderer.renderEmptyMessage({query:t});return void ve.render(e,i)}let s=this.renderer,r=this._activeIndex,o=new Array(n.length);for(let a=0,d=n.length;a<d;++a){let e=n[a];if("header"===e.type){let t=e.indices,i=e.category;o[a]=s.renderHeader({category:i,indices:t})}else{let t=e.item,i=e.indices,n=a===r;o[a]=s.renderItem({item:t,indices:i,active:n})}}if(ve.render(o,i),r<0||r>=n.length)i.scrollTop=0;else{let e=i.children[r];F.scrollIntoViewIfNeeded(i,e)}}_evtClick(e){if(0!==e.button)return;if(e.target.classList.contains("lm-close-icon"))return this.inputNode.value="",void this.refresh();let t=m.findFirstIndex(this.contentNode.children,t=>t.contains(e.target));-1!==t&&(e.preventDefault(),e.stopPropagation(),this._execute(t))}_evtKeyDown(e){if(!(e.altKey||e.ctrlKey||e.metaKey||e.shiftKey))switch(e.keyCode){case 13:e.preventDefault(),e.stopPropagation(),this._execute(this._activeIndex);break;case 38:e.preventDefault(),e.stopPropagation(),this._activatePreviousItem();break;case 40:e.preventDefault(),e.stopPropagation(),this._activateNextItem()}}_activateNextItem(){if(!this._results||0===this._results.length)return;let e=this._activeIndex,t=this._results.length,i=e<t-1?e+1:0,n=0===i?t-1:i-1;this._activeIndex=m.findFirstIndex(this._results,rt.canActivate,i,n),this.update()}_activatePreviousItem(){if(!this._results||0===this._results.length)return;let e=this._activeIndex,t=this._results.length,i=e<=0?t-1:e-1,n=i===t-1?0:i+1;this._activeIndex=m.findLastIndex(this._results,rt.canActivate,i,n),this.update()}_execute(e){if(!this._results)return;let t=this._results[e];if(t){if("header"===t.type){let e=this.inputNode;return e.value=`${t.category.toLowerCase()} `,e.focus(),void this.refresh()}t.item.isEnabled&&(this.commands.execute(t.item.command,t.item.args),this.inputNode.value="",this.refresh())}}_toggleFocused(){let e=document.activeElement===this.inputNode;this.toggleClass("lm-mod-focused",e)}_onGenericChange(){this.refresh()}};s(nt,"CommandPalette");let st=nt;var rt;!function(e){const t=class _Renderer{renderHeader(e){let t=this.formatHeader(e);return fe.li({className:"lm-CommandPalette-header"},t)}renderItem(e){let t=this.createItemClass(e),i=this.createItemDataset(e);return e.item.isToggleable?fe.li({className:t,dataset:i,role:"menuitemcheckbox","aria-checked":`${e.item.isToggled}`},this.renderItemIcon(e),this.renderItemContent(e),this.renderItemShortcut(e)):fe.li({className:t,dataset:i,role:"menuitem"},this.renderItemIcon(e),this.renderItemContent(e),this.renderItemShortcut(e))}renderEmptyMessage(e){let t=this.formatEmptyMessage(e);return fe.li({className:"lm-CommandPalette-emptyMessage"},t)}renderItemIcon(e){let t=this.createIconClass(e);return fe.div({className:t},e.item.icon,e.item.iconLabel)}renderItemContent(e){return fe.div({className:"lm-CommandPalette-itemContent"},this.renderItemLabel(e),this.renderItemCaption(e))}renderItemLabel(e){let t=this.formatItemLabel(e);return fe.div({className:"lm-CommandPalette-itemLabel"},t)}renderItemCaption(e){let t=this.formatItemCaption(e);return fe.div({className:"lm-CommandPalette-itemCaption"},t)}renderItemShortcut(e){let t=this.formatItemShortcut(e);return fe.div({className:"lm-CommandPalette-itemShortcut"},t)}createItemClass(e){let t="lm-CommandPalette-item";e.item.isEnabled||(t+=" lm-mod-disabled"),e.item.isToggled&&(t+=" lm-mod-toggled"),e.active&&(t+=" lm-mod-active");let i=e.item.className;return i&&(t+=` ${i}`),t}createItemDataset(e){return{...e.item.dataset,command:e.item.command}}createIconClass(e){let t="lm-CommandPalette-itemIcon",i=e.item.iconClass;return i?`${t} ${i}`:t}formatHeader(e){return e.indices&&0!==e.indices.length?g.highlight(e.category,e.indices,fe.mark):e.category}formatEmptyMessage(e){return`No commands found that match '${e.query}'`}formatItemShortcut(e){let t=e.item.keyBinding;return t?G.formatKeystroke(t.keys):null}formatItemLabel(e){return e.indices&&0!==e.indices.length?g.highlight(e.item.label,e.indices,fe.mark):e.item.label}formatItemCaption(e){return e.item.caption}};s(t,"Renderer");let i=t;e.Renderer=i,e.defaultRenderer=new i}(st||(st={})),function(e){function t(){let e=document.createElement("div"),t=document.createElement("div"),i=document.createElement("div"),n=document.createElement("input"),s=document.createElement("ul"),r=document.createElement("button");return t.className="lm-CommandPalette-search",i.className="lm-CommandPalette-wrapper",n.className="lm-CommandPalette-input",r.className="lm-close-icon",s.className="lm-CommandPalette-content",s.setAttribute("role","menu"),n.spellcheck=!1,i.appendChild(n),i.appendChild(r),t.appendChild(i),e.appendChild(t),e.appendChild(s),e}function i(e,t){return new p(e,t)}function n(e,t){let i=d(e,t);return i.sort(h),c(i)}function r(e){return"item"===e.type&&e.item.isEnabled}function o(e){return e.trim().replace(/\s+/g," ")}function a(e){return e.replace(/\s+/g,"").toLowerCase()}function d(e,t){t=a(t);let i=[];for(let n=0,s=e.length;n<s;++n){let s=e[n];if(!s.isVisible)continue;if(!t){i.push({matchType:3,categoryIndices:null,labelIndices:null,score:0,item:s});continue}let r=l(s,t);r&&(s.isEnabled||(r.score+=1e3),i.push(r))}return i}function l(e,t){let i=e.category.toLowerCase(),n=`${i} ${e.label.toLowerCase()}`,s=1/0,r=null,o=/\b\w/g;for(;;){let e=o.exec(n);if(!e)break;let i=g.matchSumOfDeltas(n,t,e.index);if(!i)break;i.score<=s&&(s=i.score,r=i.indices)}if(!r||s===1/0)return null;let a=i.length+1,d=m.lowerBound(r,a,(e,t)=>e-t),l=r.slice(0,d),h=r.slice(d);for(let c=0,u=h.length;c<u;++c)h[c]-=a;return 0===l.length?{matchType:0,categoryIndices:null,labelIndices:h,score:s,item:e}:0===h.length?{matchType:1,categoryIndices:l,labelIndices:null,score:s,item:e}:{matchType:2,categoryIndices:l,labelIndices:h,score:s,item:e}}function h(e,t){let i=e.matchType-t.matchType;if(0!==i)return i;let n=e.score-t.score;if(0!==n)return n;let s=0,r=0;switch(e.matchType){case 0:s=e.labelIndices[0],r=t.labelIndices[0];break;case 1:case 2:s=e.categoryIndices[0],r=t.categoryIndices[0]}if(s!==r)return s-r;let o=e.item.category.localeCompare(t.item.category);if(0!==o)return o;let a=e.item.rank,d=t.item.rank;return a!==d?a<d?-1:1:e.item.label.localeCompare(t.item.label)}function c(e){let t=[];for(let i=0,n=e.length;i<n;++i){let{item:n,categoryIndices:s,labelIndices:r}=e[i],o=n.category;0!==i&&o===e[i-1].item.category||t.push({type:"header",category:o,indices:s}),t.push({type:"item",item:n,indices:r})}return t}s(t,"createNode"),e.createNode=t,s(i,"createItem"),e.createItem=i,s(n,"search"),e.search=n,s(r,"canActivate"),e.canActivate=r,s(o,"normalizeCategory"),s(a,"normalizeQuery"),s(d,"matchItems"),s(l,"fuzzySearch"),s(h,"scoreCmp"),s(c,"createResults");const u=class _CommandItem{constructor(e,t){this._commands=e,this.category=o(t.category),this.command=t.command,this.args=t.args||f.emptyObject,this.rank=void 0!==t.rank?t.rank:1/0}get label(){return this._commands.label(this.command,this.args)}get icon(){return this._commands.icon(this.command,this.args)}get iconClass(){return this._commands.iconClass(this.command,this.args)}get iconLabel(){return this._commands.iconLabel(this.command,this.args)}get caption(){return this._commands.caption(this.command,this.args)}get className(){return this._commands.className(this.command,this.args)}get dataset(){return this._commands.dataset(this.command,this.args)}get isEnabled(){return this._commands.isEnabled(this.command,this.args)}get isToggled(){return this._commands.isToggled(this.command,this.args)}get isToggleable(){return this._commands.isToggleable(this.command,this.args)}get isVisible(){return this._commands.isVisible(this.command,this.args)}get keyBinding(){let{command:e,args:t}=this;return m.findLastValue(this._commands.keyBindings,i=>i.command===e&&f.deepEqual(i.args,t))||null}};s(u,"CommandItem");let p=u}(rt||(rt={}));const ot=class _Menu extends Se{constructor(e){super({node:dt.createNode()}),this._childIndex=-1,this._activeIndex=-1,this._openTimerID=0,this._closeTimerID=0,this._items=[],this._childMenu=null,this._parentMenu=null,this._aboutToClose=new T(this),this._menuRequested=new T(this),this.addClass("lm-Menu"),this.setFlag(Se.Flag.DisallowLayout),this.commands=e.commands,this.renderer=e.renderer||_Menu.defaultRenderer}dispose(){this.close(),this._items.length=0,super.dispose()}get aboutToClose(){return this._aboutToClose}get menuRequested(){return this._menuRequested}get parentMenu(){return this._parentMenu}get childMenu(){return this._childMenu}get rootMenu(){let e=this;for(;e._parentMenu;)e=e._parentMenu;return e}get leafMenu(){let e=this;for(;e._childMenu;)e=e._childMenu;return e}get contentNode(){return this.node.getElementsByClassName("lm-Menu-content")[0]}get activeItem(){return this._items[this._activeIndex]||null}set activeItem(e){this.activeIndex=e?this._items.indexOf(e):-1}get activeIndex(){return this._activeIndex}set activeIndex(e){(e<0||e>=this._items.length)&&(e=-1),-1===e||dt.canActivate(this._items[e])||(e=-1),this._activeIndex!==e&&(this._activeIndex=e,this._activeIndex>=0&&this.contentNode.childNodes[this._activeIndex]&&this.contentNode.childNodes[this._activeIndex].focus(),this.update())}get items(){return this._items}activateNextItem(){let e=this._items.length,t=this._activeIndex,i=t<e-1?t+1:0,n=0===i?e-1:i-1;this.activeIndex=m.findFirstIndex(this._items,dt.canActivate,i,n)}activatePreviousItem(){let e=this._items.length,t=this._activeIndex,i=t<=0?e-1:t-1,n=i===e-1?0:i+1;this.activeIndex=m.findLastIndex(this._items,dt.canActivate,i,n)}triggerActiveItem(){if(!this.isAttached)return;let e=this.activeItem;if(!e)return;if(this._cancelOpenTimer(),this._cancelCloseTimer(),"submenu"===e.type)return void this._openChildMenu(!0);this.rootMenu.close();let{command:t,args:i}=e;this.commands.isEnabled(t,i)?this.commands.execute(t,i):console.log(`Command '${t}' is disabled.`)}addItem(e){return this.insertItem(this._items.length,e)}insertItem(e,t){this.isAttached&&this.close(),this.activeIndex=-1;let i=Math.max(0,Math.min(e,this._items.length)),n=dt.createItem(this,t);return m.insert(this._items,i,n),this.update(),n}removeItem(e){this.removeItemAt(this._items.indexOf(e))}removeItemAt(e){this.isAttached&&this.close(),this.activeIndex=-1,m.removeAt(this._items,e)&&this.update()}clearItems(){this.isAttached&&this.close(),this.activeIndex=-1,0!==this._items.length&&(this._items.length=0,this.update())}open(e,t,i={}){var n,s,r;if(this.isAttached)return;let o=i.forceX||!1,a=i.forceY||!1;const d=null!==(n=i.host)&&void 0!==n?n:null,l=null!==(s=i.ref)&&void 0!==s?s:null,h=null!==(r=i.horizontalAlignment)&&void 0!==r?r:"rtl"===document.documentElement.dir?"right":"left";dt.openRootMenu(this,e,t,o,a,h,d,l),this.activate()}handleEvent(e){switch(e.type){case"keydown":this._evtKeyDown(e);break;case"mouseup":this._evtMouseUp(e);break;case"mousemove":this._evtMouseMove(e);break;case"mouseenter":this._evtMouseEnter(e);break;case"mouseleave":this._evtMouseLeave(e);break;case"mousedown":this._evtMouseDown(e);break;case"contextmenu":e.preventDefault(),e.stopPropagation()}}onBeforeAttach(e){this.node.addEventListener("keydown",this),this.node.addEventListener("mouseup",this),this.node.addEventListener("mousemove",this),this.node.addEventListener("mouseenter",this),this.node.addEventListener("mouseleave",this),this.node.addEventListener("contextmenu",this),document.addEventListener("mousedown",this,!0)}onAfterDetach(e){this.node.removeEventListener("keydown",this),this.node.removeEventListener("mouseup",this),this.node.removeEventListener("mousemove",this),this.node.removeEventListener("mouseenter",this),this.node.removeEventListener("mouseleave",this),this.node.removeEventListener("contextmenu",this),document.removeEventListener("mousedown",this,!0)}onActivateRequest(e){this.isAttached&&this.node.focus()}onUpdateRequest(e){let t=this._items,i=this.renderer,n=this._activeIndex,r=dt.computeCollapsed(t),o=new Array(t.length);for(let a=0,d=t.length;a<d;++a){let e=t[a],d=a===n,l=r[a];o[a]=i.renderItem({item:e,active:d,collapsed:l,onfocus:/* @__PURE__ */s(()=>{this.activeIndex=a},"onfocus")})}ve.render(o,this.contentNode)}onCloseRequest(e){this._cancelOpenTimer(),this._cancelCloseTimer(),this.activeIndex=-1;let t=this._childMenu;t&&(this._childIndex=-1,this._childMenu=null,t._parentMenu=null,t.close());let i=this._parentMenu;i&&(this._parentMenu=null,i._childIndex=-1,i._childMenu=null,i.activate()),this.isAttached&&this._aboutToClose.emit(void 0),super.onCloseRequest(e)}_evtKeyDown(e){e.preventDefault(),e.stopPropagation();let t=e.keyCode;if(13===t)return void this.triggerActiveItem();if(27===t)return void this.close();if(37===t)return void(this._parentMenu?this.close():this._menuRequested.emit("previous"));if(38===t)return void this.activatePreviousItem();if(39===t){let e=this.activeItem;return void(e&&"submenu"===e.type?this.triggerActiveItem():this.rootMenu._menuRequested.emit("next"))}if(40===t)return void this.activateNextItem();let i=$().keyForKeydownEvent(e);if(!i)return;let n=this._activeIndex+1,s=dt.findMnemonic(this._items,i,n);-1===s.index||s.multiple?-1!==s.index?this.activeIndex=s.index:-1!==s.auto&&(this.activeIndex=s.auto):(this.activeIndex=s.index,this.triggerActiveItem())}_evtMouseUp(e){0===e.button&&(e.preventDefault(),e.stopPropagation(),this.triggerActiveItem())}_evtMouseMove(e){let t=m.findFirstIndex(this.contentNode.children,t=>F.hitTest(t,e.clientX,e.clientY));if(t===this._activeIndex)return;if(this.activeIndex=t,t=this.activeIndex,t===this._childIndex)return this._cancelOpenTimer(),void this._cancelCloseTimer();-1!==this._childIndex&&this._startCloseTimer(),this._cancelOpenTimer();let i=this.activeItem;i&&"submenu"===i.type&&i.submenu&&this._startOpenTimer()}_evtMouseEnter(e){for(let t=this._parentMenu;t;t=t._parentMenu)t._cancelOpenTimer(),t._cancelCloseTimer(),t.activeIndex=t._childIndex}_evtMouseLeave(e){if(this._cancelOpenTimer(),!this._childMenu)return void(this.activeIndex=-1);let{clientX:t,clientY:i}=e;F.hitTest(this._childMenu.node,t,i)?this._cancelCloseTimer():(this.activeIndex=-1,this._startCloseTimer())}_evtMouseDown(e){this._parentMenu||(dt.hitTestMenus(this,e.clientX,e.clientY)?(e.preventDefault(),e.stopPropagation()):this.close())}_openChildMenu(e=!1){let t=this.activeItem;if(!t||"submenu"!==t.type||!t.submenu)return void this._closeChildMenu();let i=t.submenu;if(i===this._childMenu)return;_Menu.saveWindowData(),this._closeChildMenu(),this._childMenu=i,this._childIndex=this._activeIndex,i._parentMenu=this,re.sendMessage(this,Se.Msg.UpdateRequest);let n=this.contentNode.children[this._activeIndex];dt.openSubmenu(i,n),e&&(i.activeIndex=-1,i.activateNextItem()),i.activate()}_closeChildMenu(){this._childMenu&&this._childMenu.close()}_startOpenTimer(){0===this._openTimerID&&(this._openTimerID=window.setTimeout(()=>{this._openTimerID=0,this._openChildMenu()},dt.TIMER_DELAY))}_startCloseTimer(){0===this._closeTimerID&&(this._closeTimerID=window.setTimeout(()=>{this._closeTimerID=0,this._closeChildMenu()},dt.TIMER_DELAY))}_cancelOpenTimer(){0!==this._openTimerID&&(clearTimeout(this._openTimerID),this._openTimerID=0)}_cancelCloseTimer(){0!==this._closeTimerID&&(clearTimeout(this._closeTimerID),this._closeTimerID=0)}static saveWindowData(){dt.saveWindowData()}};s(ot,"Menu");let at=ot;var dt;!function(e){const t=class _Renderer{renderItem(e){let t=this.createItemClass(e),i=this.createItemDataset(e),n=this.createItemARIA(e);return fe.li({className:t,dataset:i,tabindex:"0",onfocus:e.onfocus,...n},this.renderIcon(e),this.renderLabel(e),this.renderShortcut(e),this.renderSubmenu(e))}renderIcon(e){let t=this.createIconClass(e);return fe.div({className:t},e.item.icon,e.item.iconLabel)}renderLabel(e){let t=this.formatLabel(e);return fe.div({className:"lm-Menu-itemLabel"},t)}renderShortcut(e){let t=this.formatShortcut(e);return fe.div({className:"lm-Menu-itemShortcut"},t)}renderSubmenu(e){return fe.div({className:"lm-Menu-itemSubmenuIcon"})}createItemClass(e){let t="lm-Menu-item";e.item.isEnabled||(t+=" lm-mod-disabled"),e.item.isToggled&&(t+=" lm-mod-toggled"),e.item.isVisible||(t+=" lm-mod-hidden"),e.active&&(t+=" lm-mod-active"),e.collapsed&&(t+=" lm-mod-collapsed");let i=e.item.className;return i&&(t+=` ${i}`),t}createItemDataset(e){let t,{type:i,command:n,dataset:s}=e.item;return t="command"===i?{...s,type:i,command:n}:{...s,type:i},t}createIconClass(e){let t="lm-Menu-itemIcon",i=e.item.iconClass;return i?`${t} ${i}`:t}createItemARIA(e){let t={};switch(e.item.type){case"separator":t.role="presentation";break;case"submenu":t["aria-haspopup"]="true",e.item.isEnabled||(t["aria-disabled"]="true");break;default:e.item.isEnabled||(t["aria-disabled"]="true"),e.item.isToggled?(t.role="menuitemcheckbox",t["aria-checked"]="true"):t.role="menuitem"}return t}formatLabel(e){let{label:t,mnemonic:i}=e.item;if(i<0||i>=t.length)return t;let n=t.slice(0,i),s=t.slice(i+1),r=t[i];return[n,fe.span({className:"lm-Menu-itemMnemonic"},r),s]}formatShortcut(e){let t=e.item.keyBinding;return t?G.formatKeystroke(t.keys):null}};s(t,"Renderer");let i=t;e.Renderer=i,e.defaultRenderer=new i}(at||(at={})),function(e){e.TIMER_DELAY=300,e.SUBMENU_OVERLAP=3;let t=null,i=0;function n(){return i>0?(i--,t):c()}function r(){t=c(),i++}function o(){let e=document.createElement("div"),t=document.createElement("ul");return t.className="lm-Menu-content",e.appendChild(t),t.setAttribute("role","menu"),e.tabIndex=0,e}function a(e){return"separator"!==e.type&&e.isEnabled&&e.isVisible}function d(e,t){return new v(e.commands,t)}function l(e,t,i){for(let n=e;n;n=n.childMenu)if(F.hitTest(n.node,t,i))return!0;return!1}function h(e){let t=new Array(e.length);m.fill(t,!1);let i=0,n=e.length;for(;i<n;++i){let n=e[i];if(n.isVisible){if("separator"!==n.type)break;t[i]=!0}}let s=n-1;for(;s>=0;--s){let i=e[s];if(i.isVisible){if("separator"!==i.type)break;t[s]=!0}}let r=!1;for(;++i<s;){let n=e[i];n.isVisible&&("separator"!==n.type?r=!1:r?t[i]=!0:r=!0)}return t}function c(){return{pageXOffset:window.pageXOffset,pageYOffset:window.pageYOffset,clientWidth:document.documentElement.clientWidth,clientHeight:document.documentElement.clientHeight}}function u(e,t,i,s,r,o,a,d){const l=n();let h=l.pageXOffset,c=l.pageYOffset,u=l.clientWidth,m=l.clientHeight;re.sendMessage(e,Se.Msg.UpdateRequest);let p=m-(r?i:0),g=e.node,f=g.style;f.opacity="0",f.maxHeight=`${p}px`,Se.attach(e,a||document.body,d);let{width:_,height:v}=g.getBoundingClientRect();"right"===o&&(t-=_),!s&&t+_>h+u&&(t=h+u-_),!r&&i+v>c+m&&(i>c+m?i=c+m-v:i-=v),f.transform=`translate(${Math.max(0,t)}px, ${Math.max(0,i)}px`,f.opacity="1"}function p(t,i){const s=n();let r=s.pageXOffset,o=s.pageYOffset,a=s.clientWidth,d=s.clientHeight;re.sendMessage(t,Se.Msg.UpdateRequest);let l=d,h=t.node,c=h.style;c.opacity="0",c.maxHeight=`${l}px`,Se.attach(t,document.body);let{width:u,height:m}=h.getBoundingClientRect(),p=F.boxSizing(t.node),g=i.getBoundingClientRect(),f=g.right-e.SUBMENU_OVERLAP;f+u>r+a&&(f=g.left+e.SUBMENU_OVERLAP-u);let _=g.top-p.borderTop-p.paddingTop;_+m>o+d&&(_=g.bottom+p.borderBottom+p.paddingBottom-m),c.transform=`translate(${Math.max(0,f)}px, ${Math.max(0,_)}px`,c.opacity="1"}function g(e,t,i){let n=-1,s=-1,r=!1,o=t.toUpperCase();for(let d=0,l=e.length;d<l;++d){let t=(d+i)%l,h=e[t];if(!a(h))continue;let c=h.label;if(0===c.length)continue;let u=h.mnemonic;u>=0&&u<c.length?c[u].toUpperCase()===o&&(-1===n?n=t:r=!0):-1===s&&c[0].toUpperCase()===o&&(s=t)}return{index:n,multiple:r,auto:s}}s(n,"getWindowData"),s(r,"saveWindowData"),e.saveWindowData=r,s(o,"createNode"),e.createNode=o,s(a,"canActivate"),e.canActivate=a,s(d,"createItem"),e.createItem=d,s(l,"hitTestMenus"),e.hitTestMenus=l,s(h,"computeCollapsed"),e.computeCollapsed=h,s(c,"_getWindowData"),s(u,"openRootMenu"),e.openRootMenu=u,s(p,"openSubmenu"),e.openSubmenu=p,s(g,"findMnemonic"),e.findMnemonic=g;const _=class _MenuItem{constructor(e,t){this._commands=e,this.type=t.type||"command",this.command=t.command||"",this.args=t.args||f.emptyObject,this.submenu=t.submenu||null}get label(){return"command"===this.type?this._commands.label(this.command,this.args):"submenu"===this.type&&this.submenu?this.submenu.title.label:""}get mnemonic(){return"command"===this.type?this._commands.mnemonic(this.command,this.args):"submenu"===this.type&&this.submenu?this.submenu.title.mnemonic:-1}get icon(){return"command"===this.type?this._commands.icon(this.command,this.args):"submenu"===this.type&&this.submenu?this.submenu.title.icon:void 0}get iconClass(){return"command"===this.type?this._commands.iconClass(this.command,this.args):"submenu"===this.type&&this.submenu?this.submenu.title.iconClass:""}get iconLabel(){return"command"===this.type?this._commands.iconLabel(this.command,this.args):"submenu"===this.type&&this.submenu?this.submenu.title.iconLabel:""}get caption(){return"command"===this.type?this._commands.caption(this.command,this.args):"submenu"===this.type&&this.submenu?this.submenu.title.caption:""}get className(){return"command"===this.type?this._commands.className(this.command,this.args):"submenu"===this.type&&this.submenu?this.submenu.title.className:""}get dataset(){return"command"===this.type?this._commands.dataset(this.command,this.args):"submenu"===this.type&&this.submenu?this.submenu.title.dataset:{}}get isEnabled(){return"command"===this.type?this._commands.isEnabled(this.command,this.args):"submenu"!==this.type||null!==this.submenu}get isToggled(){return"command"===this.type&&this._commands.isToggled(this.command,this.args)}get isVisible(){return"command"===this.type?this._commands.isVisible(this.command,this.args):"submenu"!==this.type||null!==this.submenu}get keyBinding(){if("command"===this.type){let{command:e,args:t}=this;return m.findLastValue(this._commands.keyBindings,i=>i.command===e&&f.deepEqual(i.args,t))||null}return null}};s(_,"MenuItem");let v=_}(dt||(dt={}));const lt=class _ContextMenu{constructor(e){this._groupByTarget=!0,this._idTick=0,this._items=[],this._sortBySelector=!0;const{groupByTarget:t,sortBySelector:i,...n}=e;this.menu=new at(n),this._groupByTarget=!1!==t,this._sortBySelector=!1!==i}addItem(e){let t=ct.createItem(e,this._idTick++);return this._items.push(t),new B(()=>{m.removeFirstOf(this._items,t)})}open(e){if(at.saveWindowData(),this.menu.clearItems(),0===this._items.length)return!1;let t=ct.matchItems(this._items,e,this._groupByTarget,this._sortBySelector);if(!t||0===t.length)return!1;for(const i of t)this.menu.addItem(i);return this.menu.open(e.clientX,e.clientY),!0}};s(lt,"ContextMenu");let ht=lt;var ct;!function(e){function t(e,t){let i=n(e.selector),s=void 0!==e.rank?e.rank:1/0;return{...e,selector:i,rank:s,id:t}}function i(e,t,i,n){let s=t.target;if(!s)return null;let a=t.currentTarget;if(!a)return null;if(!a.contains(s)&&(s=document.elementFromPoint(t.clientX,t.clientY),!s||!a.contains(s)))return null;let d=[],l=e.slice();for(;null!==s;){let e=[];for(let t=0,i=l.length;t<i;++t){let i=l[t];i&&(q.matches(s,i.selector)&&(e.push(i),l[t]=null))}if(0!==e.length&&(i&&e.sort(n?o:r),d.push(...e)),s===a)break;s=s.parentElement}return i||d.sort(n?o:r),d}function n(e){if(-1!==e.indexOf(","))throw new Error(`Selector cannot contain commas: ${e}`);if(!q.isValid(e))throw new Error(`Invalid selector: ${e}`);return e}function r(e,t){let i=e.rank,n=t.rank;return i!==n?i<n?-1:1:e.id-t.id}function o(e,t){let i=q.calculateSpecificity(e.selector),n=q.calculateSpecificity(t.selector);return i!==n?n-i:r(e,t)}s(t,"createItem"),e.createItem=t,s(i,"matchItems"),e.matchItems=i,s(n,"validateSelector"),s(r,"itemCmpRank"),s(o,"itemCmp")}(ct||(ct={}));const ut=["ArrowLeft","ArrowUp","ArrowRight","ArrowDown","Home","End"],mt=class _TabBar extends Se{constructor(e={}){super({node:gt.createNode()}),this._currentIndex=-1,this._titles=[],this._titlesEditable=!1,this._previousTitle=null,this._dragData=null,this._addButtonEnabled=!1,this._tabMoved=new T(this),this._currentChanged=new T(this),this._addRequested=new T(this),this._tabCloseRequested=new T(this),this._tabDetachRequested=new T(this),this._tabActivateRequested=new T(this),this.addClass("lm-TabBar"),this.contentNode.setAttribute("role","tablist"),this.setFlag(Se.Flag.DisallowLayout),this._document=e.document||document,this.tabsMovable=e.tabsMovable||!1,this.titlesEditable=e.titlesEditable||!1,this.allowDeselect=e.allowDeselect||!1,this.addButtonEnabled=e.addButtonEnabled||!1,this.insertBehavior=e.insertBehavior||"select-tab-if-needed",this.name=e.name||"",this.orientation=e.orientation||"horizontal",this.removeBehavior=e.removeBehavior||"select-tab-after",this.renderer=e.renderer||_TabBar.defaultRenderer}dispose(){this._releaseMouse(),this._titles.length=0,this._previousTitle=null,super.dispose()}get currentChanged(){return this._currentChanged}get tabMoved(){return this._tabMoved}get tabActivateRequested(){return this._tabActivateRequested}get addRequested(){return this._addRequested}get tabCloseRequested(){return this._tabCloseRequested}get tabDetachRequested(){return this._tabDetachRequested}get document(){return this._document}get titlesEditable(){return this._titlesEditable}set titlesEditable(e){this._titlesEditable=e}get currentTitle(){return this._titles[this._currentIndex]||null}set currentTitle(e){this.currentIndex=e?this._titles.indexOf(e):-1}get currentIndex(){return this._currentIndex}set currentIndex(e){if((e<0||e>=this._titles.length)&&(e=-1),this._currentIndex===e)return;let t=this._currentIndex,i=this._titles[t]||null,n=e,s=this._titles[n]||null;this._currentIndex=n,this._previousTitle=i,this.update(),this._currentChanged.emit({previousIndex:t,previousTitle:i,currentIndex:n,currentTitle:s})}get name(){return this._name}set name(e){this._name=e,e?this.contentNode.setAttribute("aria-label",e):this.contentNode.removeAttribute("aria-label")}get orientation(){return this._orientation}set orientation(e){this._orientation!==e&&(this._releaseMouse(),this._orientation=e,this.dataset.orientation=e,this.contentNode.setAttribute("aria-orientation",e))}get addButtonEnabled(){return this._addButtonEnabled}set addButtonEnabled(e){this._addButtonEnabled!==e&&(this._addButtonEnabled=e,e?this.addButtonNode.classList.remove("lm-mod-hidden"):this.addButtonNode.classList.add("lm-mod-hidden"))}get titles(){return this._titles}get contentNode(){return this.node.getElementsByClassName("lm-TabBar-content")[0]}get addButtonNode(){return this.node.getElementsByClassName("lm-TabBar-addButton")[0]}addTab(e){return this.insertTab(this._titles.length,e)}insertTab(e,t){this._releaseMouse();let i=gt.asTitle(t),n=this._titles.indexOf(i),s=Math.max(0,Math.min(e,this._titles.length));return-1===n?(m.insert(this._titles,s,i),i.changed.connect(this._onTitleChanged,this),this.update(),this._adjustCurrentForInsert(s,i),i):(s===this._titles.length&&s--,n===s||(m.move(this._titles,n,s),this.update(),this._adjustCurrentForMove(n,s)),i)}removeTab(e){this.removeTabAt(this._titles.indexOf(e))}removeTabAt(e){this._releaseMouse();let t=m.removeAt(this._titles,e);t&&(t.changed.disconnect(this._onTitleChanged,this),t===this._previousTitle&&(this._previousTitle=null),this.update(),this._adjustCurrentForRemove(e,t))}clearTabs(){if(0===this._titles.length)return;this._releaseMouse();for(let i of this._titles)i.changed.disconnect(this._onTitleChanged,this);let e=this.currentIndex,t=this.currentTitle;this._currentIndex=-1,this._previousTitle=null,this._titles.length=0,this.update(),-1!==e&&this._currentChanged.emit({previousIndex:e,previousTitle:t,currentIndex:-1,currentTitle:null})}releaseMouse(){this._releaseMouse()}handleEvent(e){switch(e.type){case"pointerdown":this._evtPointerDown(e);break;case"pointermove":this._evtPointerMove(e);break;case"pointerup":this._evtPointerUp(e);break;case"dblclick":this._evtDblClick(e);break;case"keydown":e.eventPhase===Event.CAPTURING_PHASE?this._evtKeyDownCapturing(e):this._evtKeyDown(e);break;case"contextmenu":e.preventDefault(),e.stopPropagation()}}onBeforeAttach(e){this.node.addEventListener("pointerdown",this),this.node.addEventListener("dblclick",this),this.node.addEventListener("keydown",this)}onAfterDetach(e){this.node.removeEventListener("pointerdown",this),this.node.removeEventListener("dblclick",this),this.node.removeEventListener("keydown",this),this._releaseMouse()}onUpdateRequest(e){var t;let i=this._titles,n=this.renderer,s=this.currentTitle,r=new Array(i.length);const o=null!==(t=this._getCurrentTabindex())&&void 0!==t?t:this._currentIndex>-1?this._currentIndex:0;for(let a=0,d=i.length;a<d;++a){let e=i[a],t=e===s,l=t?d:d-a-1,h=o===a?0:-1;r[a]=n.renderTab({title:e,current:t,zIndex:l,tabIndex:h})}ve.render(r,this.contentNode)}_getCurrentTabindex(){let e=null;const t=this.contentNode.querySelector('li[tabindex="0"]');return t?e=[...this.contentNode.children].indexOf(t):this._addButtonEnabled&&"0"===this.addButtonNode.getAttribute("tabindex")&&(e=-1),e}_evtDblClick(e){if(!this.titlesEditable)return;let t=this.contentNode.children,i=m.findFirstIndex(t,t=>F.hitTest(t,e.clientX,e.clientY));if(-1===i)return;let n=this.titles[i],r=t[i].querySelector(".lm-TabBar-tabLabel");if(r&&r.contains(e.target)){let e=n.label||"",t=r.innerHTML;r.innerHTML="";let i=document.createElement("input");i.classList.add("lm-TabBar-tabInput"),i.value=e,r.appendChild(i);let o=/* @__PURE__ */s(()=>{i.removeEventListener("blur",o),r.innerHTML=t,this.node.addEventListener("keydown",this)},"onblur");i.addEventListener("dblclick",e=>e.stopPropagation()),i.addEventListener("blur",o),i.addEventListener("keydown",e=>{"Enter"===e.key?(""!==i.value&&(n.label=n.caption=i.value),o()):"Escape"===e.key&&o()}),this.node.removeEventListener("keydown",this),i.select(),i.focus(),r.children.length>0&&r.children[0].focus()}}_evtKeyDownCapturing(e){e.eventPhase===Event.CAPTURING_PHASE&&(e.preventDefault(),e.stopPropagation(),"Escape"===e.key&&this._releaseMouse())}_evtKeyDown(e){var t,i,n;if("Tab"!==e.key&&e.eventPhase!==Event.CAPTURING_PHASE)if("Enter"===e.key||"Spacebar"===e.key||" "===e.key){const t=document.activeElement;if(this.addButtonEnabled&&this.addButtonNode.contains(t))e.preventDefault(),e.stopPropagation(),this._addRequested.emit();else{const i=m.findFirstIndex(this.contentNode.children,e=>e.contains(t));i>=0&&(e.preventDefault(),e.stopPropagation(),this.currentIndex=i)}}else if(ut.includes(e.key)){const s=[...this.contentNode.children];if(this.addButtonEnabled&&s.push(this.addButtonNode),s.length<=1)return;e.preventDefault(),e.stopPropagation();let r,o=s.indexOf(document.activeElement);-1===o&&(o=this._currentIndex),"ArrowRight"===e.key&&"horizontal"===this._orientation||"ArrowDown"===e.key&&"vertical"===this._orientation?r=null!==(t=s[o+1])&&void 0!==t?t:s[0]:"ArrowLeft"===e.key&&"horizontal"===this._orientation||"ArrowUp"===e.key&&"vertical"===this._orientation?r=null!==(i=s[o-1])&&void 0!==i?i:s[s.length-1]:"Home"===e.key?r=s[0]:"End"===e.key&&(r=s[s.length-1]),r&&(null===(n=s[o])||void 0===n||n.setAttribute("tabindex","-1"),null==r||r.setAttribute("tabindex","0"),r.focus())}}_evtPointerDown(e){if(0!==e.button&&1!==e.button)return;if(this._dragData)return;if(e.target.classList.contains("lm-TabBar-tabInput"))return;let t=this.addButtonEnabled&&this.addButtonNode.contains(e.target),i=this.contentNode.children,n=m.findFirstIndex(i,t=>F.hitTest(t,e.clientX,e.clientY));if(-1===n&&!t)return;if(e.preventDefault(),e.stopPropagation(),this._dragData={tab:i[n],index:n,pressX:e.clientX,pressY:e.clientY,tabPos:-1,tabSize:-1,tabPressPos:-1,targetIndex:-1,tabLayout:null,contentRect:null,override:null,dragActive:!1,dragAborted:!1,detachRequested:!1},this.document.addEventListener("pointerup",this,!0),1===e.button||t)return;let s=i[n].querySelector(this.renderer.closeIconSelector);s&&s.contains(e.target)||(this.tabsMovable&&(this.document.addEventListener("pointermove",this,!0),this.document.addEventListener("keydown",this,!0),this.document.addEventListener("contextmenu",this,!0)),this.allowDeselect&&this.currentIndex===n?this.currentIndex=-1:this.currentIndex=n,-1!==this.currentIndex&&this._tabActivateRequested.emit({index:this.currentIndex,title:this.currentTitle}))}_evtPointerMove(e){let t=this._dragData;if(!t)return;e.preventDefault(),e.stopPropagation();let i=this.contentNode.children;if(t.dragActive||gt.dragExceeded(t,e)){if(!t.dragActive){let e=t.tab.getBoundingClientRect();"horizontal"===this._orientation?(t.tabPos=t.tab.offsetLeft,t.tabSize=e.width,t.tabPressPos=t.pressX-e.left):(t.tabPos=t.tab.offsetTop,t.tabSize=e.height,t.tabPressPos=t.pressY-e.top),t.tabPressOffset={x:t.pressX-e.left,y:t.pressY-e.top},t.tabLayout=gt.snapTabLayout(i,this._orientation),t.contentRect=this.contentNode.getBoundingClientRect(),t.override=he.overrideCursor("default"),t.tab.classList.add("lm-mod-dragging"),this.addClass("lm-mod-dragging"),t.dragActive=!0}if(!t.detachRequested&>.detachExceeded(t,e)){t.detachRequested=!0;let n=t.index,s=e.clientX,r=e.clientY,o=i[n],a=this._titles[n];if(this._tabDetachRequested.emit({index:n,title:a,tab:o,clientX:s,clientY:r,offset:t.tabPressOffset}),t.dragAborted)return}gt.layoutTabs(i,t,e,this._orientation)}}_evtPointerUp(e){if(0!==e.button&&1!==e.button)return;const t=this._dragData;if(!t)return;if(e.preventDefault(),e.stopPropagation(),this.document.removeEventListener("pointermove",this,!0),this.document.removeEventListener("pointerup",this,!0),this.document.removeEventListener("keydown",this,!0),this.document.removeEventListener("contextmenu",this,!0),!t.dragActive){if(this._dragData=null,this.addButtonEnabled&&this.addButtonNode.contains(e.target))return void this._addRequested.emit(void 0);let i=this.contentNode.children,n=m.findFirstIndex(i,t=>F.hitTest(t,e.clientX,e.clientY));if(n!==t.index)return;let s=this._titles[n];if(!s.closable)return;if(1===e.button)return void this._tabCloseRequested.emit({index:n,title:s});let r=i[n].querySelector(this.renderer.closeIconSelector);return r&&r.contains(e.target)?void this._tabCloseRequested.emit({index:n,title:s}):void 0}if(0!==e.button)return;gt.finalizeTabPosition(t,this._orientation),t.tab.classList.remove("lm-mod-dragging");let i=gt.parseTransitionDuration(t.tab);setTimeout(()=>{if(t.dragAborted)return;this._dragData=null,gt.resetTabPositions(this.contentNode.children,this._orientation),t.override.dispose(),this.removeClass("lm-mod-dragging");let e=t.index,i=t.targetIndex;-1!==i&&e!==i&&(m.move(this._titles,e,i),this._adjustCurrentForMove(e,i),this._tabMoved.emit({fromIndex:e,toIndex:i,title:this._titles[i]}),re.sendMessage(this,Se.Msg.UpdateRequest))},i)}_releaseMouse(){let e=this._dragData;e&&(this._dragData=null,this.document.removeEventListener("pointermove",this,!0),this.document.removeEventListener("pointerup",this,!0),this.document.removeEventListener("keydown",this,!0),this.document.removeEventListener("contextmenu",this,!0),e.dragAborted=!0,e.dragActive&&(gt.resetTabPositions(this.contentNode.children,this._orientation),e.override.dispose(),e.tab.classList.remove("lm-mod-dragging"),this.removeClass("lm-mod-dragging")))}_adjustCurrentForInsert(e,t){let i=this.currentTitle,n=this._currentIndex,s=this.insertBehavior;if("select-tab"===s||"select-tab-if-needed"===s&&-1===n)return this._currentIndex=e,this._previousTitle=i,void this._currentChanged.emit({previousIndex:n,previousTitle:i,currentIndex:e,currentTitle:t});n>=e&&this._currentIndex++}_adjustCurrentForMove(e,t){this._currentIndex===e?this._currentIndex=t:this._currentIndex<e&&this._currentIndex>=t?this._currentIndex++:this._currentIndex>e&&this._currentIndex<=t&&this._currentIndex--}_adjustCurrentForRemove(e,t){let i=this._currentIndex,n=this.removeBehavior;if(i===e){if(0===this._titles.length)return this._currentIndex=-1,void this._currentChanged.emit({previousIndex:e,previousTitle:t,currentIndex:-1,currentTitle:null});if("select-tab-after"===n)return this._currentIndex=Math.min(e,this._titles.length-1),void this._currentChanged.emit({previousIndex:e,previousTitle:t,currentIndex:this._currentIndex,currentTitle:this.currentTitle});if("select-tab-before"===n)return this._currentIndex=Math.max(0,e-1),void this._currentChanged.emit({previousIndex:e,previousTitle:t,currentIndex:this._currentIndex,currentTitle:this.currentTitle});if("select-previous-tab"===n)return this._previousTitle?(this._currentIndex=this._titles.indexOf(this._previousTitle),this._previousTitle=null):this._currentIndex=Math.min(e,this._titles.length-1),void this._currentChanged.emit({previousIndex:e,previousTitle:t,currentIndex:this._currentIndex,currentTitle:this.currentTitle});this._currentIndex=-1,this._currentChanged.emit({previousIndex:e,previousTitle:t,currentIndex:-1,currentTitle:null})}else i>e&&this._currentIndex--}_onTitleChanged(e){this.update()}};s(mt,"TabBar");let pt=mt;var gt;!function(e){const t=class _Renderer{constructor(){this.closeIconSelector=".lm-TabBar-tabCloseIcon",this._tabID=0,this._tabKeys=/* @__PURE__ */new WeakMap,this._uuid=++_Renderer._nInstance}renderTab(e){let t=e.title.caption,i=this.createTabKey(e),n=i,s=this.createTabStyle(e),r=this.createTabClass(e),o=this.createTabDataset(e),a=this.createTabARIA(e);return e.title.closable?fe.li({id:n,key:i,className:r,title:t,style:s,dataset:o,...a},this.renderIcon(e),this.renderLabel(e),this.renderCloseIcon(e)):fe.li({id:n,key:i,className:r,title:t,style:s,dataset:o,...a},this.renderIcon(e),this.renderLabel(e))}renderIcon(e){const{title:t}=e;let i=this.createIconClass(e);return fe.div({className:i},t.icon,t.iconLabel)}renderLabel(e){return fe.div({className:"lm-TabBar-tabLabel"},e.title.label)}renderCloseIcon(e){return fe.div({className:"lm-TabBar-tabCloseIcon"})}createTabKey(e){let t=this._tabKeys.get(e.title);return void 0===t&&(t=`tab-key-${this._uuid}-${this._tabID++}`,this._tabKeys.set(e.title,t)),t}createTabStyle(e){return{zIndex:`${e.zIndex}`}}createTabClass(e){let t="lm-TabBar-tab";return e.title.className&&(t+=` ${e.title.className}`),e.title.closable&&(t+=" lm-mod-closable"),e.current&&(t+=" lm-mod-current"),t}createTabDataset(e){return e.title.dataset}createTabARIA(e){var t;return{role:"tab","aria-selected":e.current.toString(),tabindex:`${null!==(t=e.tabIndex)&&void 0!==t?t:"-1"}`}}createIconClass(e){let t="lm-TabBar-tabIcon",i=e.title.iconClass;return i?`${t} ${i}`:t}};s(t,"Renderer");let i=t;i._nInstance=0,e.Renderer=i,e.defaultRenderer=new i,e.addButtonSelector=".lm-TabBar-addButton"}(pt||(pt={})),function(e){function t(){let e=document.createElement("div"),t=document.createElement("ul");t.setAttribute("role","tablist"),t.className="lm-TabBar-content",e.appendChild(t);let i=document.createElement("div");return i.className="lm-TabBar-addButton lm-mod-hidden",i.setAttribute("tabindex","-1"),i.setAttribute("role","button"),e.appendChild(i),e}function i(e){return e instanceof Ce?e:new Ce(e)}function n(e){let t=window.getComputedStyle(e);return 1e3*(parseFloat(t.transitionDuration)||0)}function r(e,t){let i=new Array(e.length);for(let n=0,s=e.length;n<s;++n){let s=e[n],r=window.getComputedStyle(s);i[n]="horizontal"===t?{pos:s.offsetLeft,size:s.offsetWidth,margin:parseFloat(r.marginLeft)||0}:{pos:s.offsetTop,size:s.offsetHeight,margin:parseFloat(r.marginTop)||0}}return i}function o(t,i){let n=Math.abs(i.clientX-t.pressX),s=Math.abs(i.clientY-t.pressY);return n>=e.DRAG_THRESHOLD||s>=e.DRAG_THRESHOLD}function a(t,i){let n=t.contentRect;return i.clientX<n.left-e.DETACH_THRESHOLD||i.clientX>=n.right+e.DETACH_THRESHOLD||i.clientY<n.top-e.DETACH_THRESHOLD||i.clientY>=n.bottom+e.DETACH_THRESHOLD}function d(e,t,i,n){let s,r,o,a;"horizontal"===n?(s=t.pressX,r=i.clientX-t.contentRect.left,o=i.clientX,a=t.contentRect.width):(s=t.pressY,r=i.clientY-t.contentRect.top,o=i.clientY,a=t.contentRect.height);let d=t.index,l=r-t.tabPressPos,h=l+t.tabSize;for(let c=0,u=e.length;c<u;++c){let i,r=t.tabLayout[c],u=r.pos+(r.size>>1);if(c<t.index&&l<u)i=`${t.tabSize+t.tabLayout[c+1].margin}px`,d=Math.min(d,c);else if(c>t.index&&h>u)i=-t.tabSize-r.margin+"px",d=Math.max(d,c);else if(c===t.index){let e=o-s,n=a-(t.tabPos+t.tabSize);i=`${Math.max(-t.tabPos,Math.min(e,n))}px`}else i="";"horizontal"===n?e[c].style.left=i:e[c].style.top=i}t.targetIndex=d}function l(e,t){let i,n;if(i="horizontal"===t?e.contentRect.width:e.contentRect.height,e.targetIndex===e.index)n=0;else if(e.targetIndex>e.index){let t=e.tabLayout[e.targetIndex];n=t.pos+t.size-e.tabSize-e.tabPos}else{n=e.tabLayout[e.targetIndex].pos-e.tabPos}let s=i-(e.tabPos+e.tabSize),r=Math.max(-e.tabPos,Math.min(n,s));"horizontal"===t?e.tab.style.left=`${r}px`:e.tab.style.top=`${r}px`}function h(e,t){for(const i of e)"horizontal"===t?i.style.left="":i.style.top=""}e.DRAG_THRESHOLD=5,e.DETACH_THRESHOLD=20,s(t,"createNode"),e.createNode=t,s(i,"asTitle"),e.asTitle=i,s(n,"parseTransitionDuration"),e.parseTransitionDuration=n,s(r,"snapTabLayout"),e.snapTabLayout=r,s(o,"dragExceeded"),e.dragExceeded=o,s(a,"detachExceeded"),e.detachExceeded=a,s(d,"layoutTabs"),e.layoutTabs=d,s(l,"finalizeTabPosition"),e.finalizeTabPosition=l,s(h,"resetTabPositions"),e.resetTabPositions=h}(gt||(gt={}));const ft=class _DockLayout extends ke{constructor(e){super(),this._spacing=4,this._dirty=!1,this._root=null,this._box=null,this._items=/* @__PURE__ */new Map,this.renderer=e.renderer,void 0!==e.spacing&&(this._spacing=Pe.clampDimension(e.spacing)),this._document=e.document||document,this._hiddenMode=void 0!==e.hiddenMode?e.hiddenMode:Se.HiddenMode.Display}dispose(){let e=this[Symbol.iterator]();this._items.forEach(e=>{e.dispose()}),this._box=null,this._root=null,this._items.clear();for(const t of e)t.dispose();super.dispose()}get hiddenMode(){return this._hiddenMode}set hiddenMode(e){if(this._hiddenMode!==e){this._hiddenMode=e;for(const e of this.tabBars())if(e.titles.length>1)for(const t of e.titles)t.owner.hiddenMode=this._hiddenMode}}get spacing(){return this._spacing}set spacing(e){e=Pe.clampDimension(e),this._spacing!==e&&(this._spacing=e,this.parent&&this.parent.fit())}get isEmpty(){return null===this._root}[Symbol.iterator](){return this._root?this._root.iterAllWidgets():_()}widgets(){return this._root?this._root.iterUserWidgets():_()}selectedWidgets(){return this._root?this._root.iterSelectedWidgets():_()}tabBars(){return this._root?this._root.iterTabBars():_()}handles(){return this._root?this._root.iterHandles():_()}moveHandle(e,t,i){let n=e.classList.contains("lm-mod-hidden");if(!this._root||n)return;let s,r=this._root.findSplitNode(e);r&&(s="horizontal"===r.node.orientation?t-e.offsetLeft:i-e.offsetTop,0!==s&&(r.node.holdSizes(),xe.adjust(r.node.sizers,r.index,s),this.parent&&this.parent.update()))}saveLayout(){return this._root?(this._root.holdAllSizes(),{main:this._root.createConfig()}):{main:null}}restoreLayout(e){let t,i=/* @__PURE__ */new Set;t=e.main?vt.normalizeAreaConfig(e.main,i):null;let n=this.widgets(),r=this.tabBars(),o=this.handles();this._root=null;for(const s of n)i.has(s)||(s.parent=null);for(const s of r)s.dispose();for(const s of o)s.parentNode&&s.parentNode.removeChild(s);for(const s of i)s.parent=this.parent;this._root=t?vt.realizeAreaConfig(t,{createTabBar:/* @__PURE__ */s(e=>this._createTabBar(),"createTabBar"),createHandle:/* @__PURE__ */s(()=>this._createHandle(),"createHandle")},this._document):null,this.parent&&(i.forEach(e=>{this.attachWidget(e)}),this.parent.fit())}addWidget(e,t={}){let i=t.ref||null,n=t.mode||"tab-after",s=null;if(this._root&&i&&(s=this._root.findTabNode(i)),i&&!s)throw new Error("Reference widget is not in the layout.");switch(e.parent=this.parent,n){case"tab-after":this._insertTab(e,i,s,!0);break;case"tab-before":this._insertTab(e,i,s,!1);break;case"split-top":this._insertSplit(e,i,s,"vertical",!1);break;case"split-left":this._insertSplit(e,i,s,"horizontal",!1);break;case"split-right":this._insertSplit(e,i,s,"horizontal",!0);break;case"split-bottom":this._insertSplit(e,i,s,"vertical",!0);break;case"merge-top":this._insertSplit(e,i,s,"vertical",!1,!0);break;case"merge-left":this._insertSplit(e,i,s,"horizontal",!1,!0);break;case"merge-right":this._insertSplit(e,i,s,"horizontal",!0,!0);break;case"merge-bottom":this._insertSplit(e,i,s,"vertical",!0,!0)}this.parent&&(this.attachWidget(e),this.parent.fit())}removeWidget(e){this._removeWidget(e),this.parent&&(this.detachWidget(e),this.parent.fit())}hitTestTabAreas(e,t){if(!this._root||!this.parent||!this.parent.isVisible)return null;this._box||(this._box=F.boxSizing(this.parent.node));let i=this.parent.node.getBoundingClientRect(),n=e-i.left-this._box.borderLeft,s=t-i.top-this._box.borderTop,r=this._root.hitTestTabNodes(n,s);if(!r)return null;let{tabBar:o,top:a,left:d,width:l,height:h}=r,c=this._box.borderLeft+this._box.borderRight,u=this._box.borderTop+this._box.borderBottom;return{tabBar:o,x:n,y:s,top:a,left:d,right:i.width-c-(d+l),bottom:i.height-u-(a+h),width:l,height:h}}init(){super.init();for(const e of this)this.attachWidget(e);for(const e of this.handles())this.parent.node.appendChild(e);this.parent.fit()}attachWidget(e){this.parent.node!==e.node.parentNode&&(this._items.set(e,new Te(e)),this.parent.isAttached&&re.sendMessage(e,Se.Msg.BeforeAttach),this.parent.node.appendChild(e.node),this.parent.isAttached&&re.sendMessage(e,Se.Msg.AfterAttach))}detachWidget(e){if(this.parent.node!==e.node.parentNode)return;this.parent.isAttached&&re.sendMessage(e,Se.Msg.BeforeDetach),this.parent.node.removeChild(e.node),this.parent.isAttached&&re.sendMessage(e,Se.Msg.AfterDetach);let t=this._items.get(e);t&&(this._items.delete(e),t.dispose())}onBeforeShow(e){super.onBeforeShow(e),this.parent.update()}onBeforeAttach(e){super.onBeforeAttach(e),this.parent.fit()}onChildShown(e){this.parent.fit()}onChildHidden(e){this.parent.fit()}onResize(e){this.parent.isVisible&&this._update(e.width,e.height)}onUpdateRequest(e){this.parent.isVisible&&this._update(-1,-1)}onFitRequest(e){this.parent.isAttached&&this._fit()}_removeWidget(e){if(!this._root)return;let t=this._root.findTabNode(e);if(!t)return;if(vt.removeAria(e),t.tabBar.titles.length>1){if(t.tabBar.removeTab(e.title),this._hiddenMode===Se.HiddenMode.Scale&&1==t.tabBar.titles.length){t.tabBar.titles[0].owner.hiddenMode=Se.HiddenMode.Display}return}if(t.tabBar.dispose(),this._root===t)return void(this._root=null);this._root.holdAllSizes();let i=t.parent;t.parent=null;let n=m.removeFirstOf(i.children,t),s=m.removeAt(i.handles,n);if(m.removeAt(i.sizers,n),s.parentNode&&s.parentNode.removeChild(s),i.children.length>1)return void i.syncHandles();let r=i.parent;i.parent=null;let o=i.children[0],a=i.handles[0];if(i.children.length=0,i.handles.length=0,i.sizers.length=0,a.parentNode&&a.parentNode.removeChild(a),this._root===i)return o.parent=null,void(this._root=o);let d=r,l=d.children.indexOf(i);if(o instanceof vt.TabLayoutNode)return o.parent=d,void(d.children[l]=o);let h=m.removeAt(d.handles,l);m.removeAt(d.children,l),m.removeAt(d.sizers,l),h.parentNode&&h.parentNode.removeChild(h);for(let c=0,u=o.children.length;c<u;++c){let e=o.children[c],t=o.handles[c],i=o.sizers[c];m.insert(d.children,l+c,e),m.insert(d.handles,l+c,t),m.insert(d.sizers,l+c,i),e.parent=d}o.children.length=0,o.handles.length=0,o.sizers.length=0,o.parent=null,d.syncHandles()}_createTabNode(e){let t=new vt.TabLayoutNode(this._createTabBar());return t.tabBar.addTab(e.title),vt.addAria(e,t.tabBar),t}_insertTab(e,t,i,n){if(e===t)return;if(!this._root){let t=new vt.TabLayoutNode(this._createTabBar());return t.tabBar.addTab(e.title),this._root=t,void vt.addAria(e,t.tabBar)}let s;if(i||(i=this._root.findFirstTabNode()),-1===i.tabBar.titles.indexOf(e.title)&&(this._removeWidget(e),e.hide()),s=t?i.tabBar.titles.indexOf(t.title):i.tabBar.currentIndex,this._hiddenMode===Se.HiddenMode.Scale)if(0===i.tabBar.titles.length)e.hiddenMode=Se.HiddenMode.Display;else if(1==i.tabBar.titles.length){i.tabBar.titles[0].owner.hiddenMode=Se.HiddenMode.Scale}else e.hiddenMode=Se.HiddenMode.Scale;else e.hiddenMode=this._hiddenMode;i.tabBar.insertTab(s+(n?1:0),e.title),vt.addAria(e,i.tabBar)}_insertSplit(e,t,i,n,s,r=!1){if(e===t&&i&&1===i.tabBar.titles.length)return;if(this._removeWidget(e),!this._root)return void(this._root=this._createTabNode(e));if(!i||!i.parent){let t=this._splitRoot(n),r=s?t.children.length:0;t.normalizeSizes();let o=vt.createSizer(i?1:vt.GOLDEN_RATIO),a=this._createTabNode(e);return m.insert(t.children,r,a),m.insert(t.sizers,r,o),m.insert(t.handles,r,this._createHandle()),a.parent=t,t.normalizeSizes(),void t.syncHandles()}let o=i.parent;if(o.orientation===n){let t=o.children.indexOf(i);if(r){let i=t+(s?1:-1),n=o.children[i];if(n instanceof vt.TabLayoutNode)return this._insertTab(e,null,n,!0),void++n.tabBar.currentIndex}o.normalizeSizes();let n=o.sizers[t].sizeHint/=2,a=t+(s?1:0),d=this._createTabNode(e);return m.insert(o.children,a,d),m.insert(o.sizers,a,vt.createSizer(n)),m.insert(o.handles,a,this._createHandle()),d.parent=o,void o.syncHandles()}let a=m.removeFirstOf(o.children,i),d=new vt.SplitLayoutNode(n);d.normalized=!0,d.children.push(i),d.sizers.push(vt.createSizer(.5)),d.handles.push(this._createHandle()),i.parent=d;let l=s?1:0,h=this._createTabNode(e);m.insert(d.children,l,h),m.insert(d.sizers,l,vt.createSizer(.5)),m.insert(d.handles,l,this._createHandle()),h.parent=d,d.syncHandles(),m.insert(o.children,a,d),d.parent=o}_splitRoot(e){let t=this._root;if(t instanceof vt.SplitLayoutNode&&t.orientation===e)return t;let i=this._root=new vt.SplitLayoutNode(e);return t&&(i.children.push(t),i.sizers.push(vt.createSizer(0)),i.handles.push(this._createHandle()),t.parent=i),i}_fit(){let e=0,t=0;if(this._root){let i=this._root.fit(this._spacing,this._items);e=i.minWidth,t=i.minHeight}let i=this._box=F.boxSizing(this.parent.node);e+=i.horizontalSum,t+=i.verticalSum;let n=this.parent.node.style;n.minWidth=`${e}px`,n.minHeight=`${t}px`,this._dirty=!0,this.parent.parent&&re.sendMessage(this.parent.parent,Se.Msg.FitRequest),this._dirty&&re.sendMessage(this.parent,Se.Msg.UpdateRequest)}_update(e,t){if(this._dirty=!1,!this._root)return;e<0&&(e=this.parent.node.offsetWidth),t<0&&(t=this.parent.node.offsetHeight),this._box||(this._box=F.boxSizing(this.parent.node));let i=this._box.paddingTop,n=this._box.paddingLeft,s=e-this._box.horizontalSum,r=t-this._box.verticalSum;this._root.update(i,n,s,r,this._spacing,this._items)}_createTabBar(){let e=this.renderer.createTabBar(this._document);return e.orientation="horizontal",this.parent&&this.attachWidget(e),e}_createHandle(){let e=this.renderer.createHandle(),t=e.style;return t.position="absolute",t.contain="strict",t.top="0",t.left="0",t.width="0",t.height="0",this.parent&&this.parent.node.appendChild(e),e}};s(ft,"DockLayout");let _t=ft;var vt;!function(e){function t(e){let t=new we;return t.sizeHint=e,t.size=e,t}function i(e,t){let i;return i="tab-area"===e.type?c(e,t):u(e,t),i}function n(e,t,i){let n;return n="tab-area"===e.type?m(e,t,i):p(e,t,i),n}e.GOLDEN_RATIO=.618,s(t,"createSizer"),e.createSizer=t,s(i,"normalizeAreaConfig"),e.normalizeAreaConfig=i,s(n,"realizeAreaConfig"),e.realizeAreaConfig=n;const r=class _TabLayoutNode{constructor(e){this.parent=null,this._top=0,this._left=0,this._width=0,this._height=0;let t=new we,i=new we;t.stretch=0,i.stretch=1,this.tabBar=e,this.sizers=[t,i]}get top(){return this._top}get left(){return this._left}get width(){return this._width}get height(){return this._height}*iterAllWidgets(){yield this.tabBar,yield*this.iterUserWidgets()}*iterUserWidgets(){for(const e of this.tabBar.titles)yield e.owner}*iterSelectedWidgets(){let e=this.tabBar.currentTitle;e&&(yield e.owner)}*iterTabBars(){yield this.tabBar}*iterHandles(){}findTabNode(e){return-1!==this.tabBar.titles.indexOf(e.title)?this:null}findSplitNode(e){return null}findFirstTabNode(){return this}hitTestTabNodes(e,t){return e<this._left||e>=this._left+this._width||t<this._top||t>=this._top+this._height?null:this}createConfig(){return{type:"tab-area",widgets:this.tabBar.titles.map(e=>e.owner),currentIndex:this.tabBar.currentIndex}}holdAllSizes(){}fit(e,t){let i=0,n=0,s=1/0,r=1/0,o=t.get(this.tabBar),a=this.tabBar.currentTitle,d=a?t.get(a.owner):void 0,[l,h]=this.sizers;return o&&o.fit(),d&&d.fit(),o&&!o.isHidden?(i=Math.max(i,o.minWidth),n+=o.minHeight,l.minSize=o.minHeight,l.maxSize=o.maxHeight):(l.minSize=0,l.maxSize=0),d&&!d.isHidden?(i=Math.max(i,d.minWidth),n+=d.minHeight,h.minSize=d.minHeight,h.maxSize=1/0):(h.minSize=0,h.maxSize=1/0),{minWidth:i,minHeight:n,maxWidth:s,maxHeight:r}}update(e,t,i,n,s,r){this._top=t,this._left=e,this._width=i,this._height=n;let o=r.get(this.tabBar),a=this.tabBar.currentTitle,d=a?r.get(a.owner):void 0;if(xe.calc(this.sizers,n),o&&!o.isHidden){let n=this.sizers[0].size;o.update(e,t,i,n),t+=n}if(d&&!d.isHidden){let n=this.sizers[1].size;d.update(e,t,i,n)}}};s(r,"TabLayoutNode");let o=r;e.TabLayoutNode=o;const a=class _SplitLayoutNode{constructor(e){this.parent=null,this.normalized=!1,this.children=[],this.sizers=[],this.handles=[],this.orientation=e}*iterAllWidgets(){for(const e of this.children)yield*e.iterAllWidgets()}*iterUserWidgets(){for(const e of this.children)yield*e.iterUserWidgets()}*iterSelectedWidgets(){for(const e of this.children)yield*e.iterSelectedWidgets()}*iterTabBars(){for(const e of this.children)yield*e.iterTabBars()}*iterHandles(){yield*this.handles;for(const e of this.children)yield*e.iterHandles()}findTabNode(e){for(let t=0,i=this.children.length;t<i;++t){let i=this.children[t].findTabNode(e);if(i)return i}return null}findSplitNode(e){let t=this.handles.indexOf(e);if(-1!==t)return{index:t,node:this};for(let i=0,n=this.children.length;i<n;++i){let t=this.children[i].findSplitNode(e);if(t)return t}return null}findFirstTabNode(){return 0===this.children.length?null:this.children[0].findFirstTabNode()}hitTestTabNodes(e,t){for(let i=0,n=this.children.length;i<n;++i){let n=this.children[i].hitTestTabNodes(e,t);if(n)return n}return null}createConfig(){let e=this.orientation,t=this.createNormalizedSizes();return{type:"split-area",orientation:e,children:this.children.map(e=>e.createConfig()),sizes:t}}syncHandles(){this.handles.forEach((e,t)=>{e.setAttribute("data-orientation",this.orientation),t===this.handles.length-1?e.classList.add("lm-mod-hidden"):e.classList.remove("lm-mod-hidden")})}holdSizes(){for(const e of this.sizers)e.sizeHint=e.size}holdAllSizes(){for(const e of this.children)e.holdAllSizes();this.holdSizes()}normalizeSizes(){let e=this.sizers.length;if(0===e)return;this.holdSizes();let t=this.sizers.reduce((e,t)=>e+t.sizeHint,0);if(0===t)for(const i of this.sizers)i.size=i.sizeHint=1/e;else for(const i of this.sizers)i.size=i.sizeHint/=t;this.normalized=!0}createNormalizedSizes(){let e=this.sizers.length;if(0===e)return[];let t=this.sizers.map(e=>e.size),i=t.reduce((e,t)=>e+t,0);if(0===i)for(let n=t.length-1;n>-1;n--)t[n]=1/e;else for(let n=t.length-1;n>-1;n--)t[n]/=i;return t}fit(e,t){let i="horizontal"===this.orientation,n=Math.max(0,this.children.length-1)*e,s=i?n:0,r=i?0:n,o=1/0,a=1/0;for(let d=0,l=this.children.length;d<l;++d){let n=this.children[d].fit(e,t);i?(r=Math.max(r,n.minHeight),s+=n.minWidth,this.sizers[d].minSize=n.minWidth):(s=Math.max(s,n.minWidth),r+=n.minHeight,this.sizers[d].minSize=n.minHeight)}return{minWidth:s,minHeight:r,maxWidth:o,maxHeight:a}}update(e,t,i,n,s,r){let o="horizontal"===this.orientation,a=Math.max(0,this.children.length-1)*s,d=Math.max(0,(o?i:n)-a);if(this.normalized){for(const e of this.sizers)e.sizeHint*=d;this.normalized=!1}xe.calc(this.sizers,d);for(let l=0,h=this.children.length;l<h;++l){let a=this.children[l],d=this.sizers[l].size,h=this.handles[l].style;o?(a.update(e,t,d,n,s,r),e+=d,h.top=`${t}px`,h.left=`${e}px`,h.width=`${s}px`,h.height=`${n}px`,e+=s):(a.update(e,t,i,d,s,r),t+=d,h.top=`${t}px`,h.left=`${e}px`,h.width=`${i}px`,h.height=`${s}px`,t+=s)}}};s(a,"SplitLayoutNode");let d=a;function l(e,t){e.node.setAttribute("role","tabpanel");let i=t.renderer;if(i instanceof pt.Renderer){let t=i.createTabKey({title:e.title,current:!1,zIndex:0});e.node.setAttribute("aria-labelledby",t)}}function h(e){e.node.removeAttribute("role"),e.node.removeAttribute("aria-labelledby")}function c(e,t){if(0===e.widgets.length)return null;let i=[];for(const s of e.widgets)t.has(s)||(t.add(s),i.push(s));if(0===i.length)return null;let n=e.currentIndex;return-1!==n&&(n<0||n>=i.length)&&(n=0),{type:"tab-area",widgets:i,currentIndex:n}}function u(e,t){let n=e.orientation,s=[],r=[];for(let o=0,a=e.children.length;o<a;++o){let a=i(e.children[o],t);a&&("tab-area"===a.type||a.orientation!==n?(s.push(a),r.push(Math.abs(e.sizes[o]||0))):(s.push(...a.children),r.push(...a.sizes)))}return 0===s.length?null:1===s.length?s[0]:{type:"split-area",orientation:n,children:s,sizes:r}}function m(t,i,n){let s=i.createTabBar(n);for(const r of t.widgets)r.hide(),s.addTab(r.title),e.addAria(r,s);return s.currentIndex=t.currentIndex,new o(s)}function p(e,i,s){let r=new d(e.orientation);return e.children.forEach((o,a)=>{let d=n(o,i,s),l=t(e.sizes[a]),h=i.createHandle();r.children.push(d),r.handles.push(h),r.sizers.push(l),d.parent=r}),r.syncHandles(),r.normalizeSizes(),r}e.SplitLayoutNode=d,s(l,"addAria"),e.addAria=l,s(h,"removeAria"),e.removeAria=h,s(c,"normalizeTabAreaConfig"),s(u,"normalizeSplitAreaConfig"),s(m,"realizeTabAreaConfig"),s(p,"realizeSplitAreaConfig")}(vt||(vt={}));let bt=(s(t=class extends Se{constructor(e={}){super(),this._drag=null,this._tabsMovable=!0,this._tabsConstrained=!1,this._addButtonEnabled=!1,this._pressData=null,this._layoutModified=new T(this),this._addRequested=new T(this),this.addClass("lm-DockPanel"),this._document=e.document||document,this._mode=e.mode||"multiple-document",this._renderer=e.renderer||t.defaultRenderer,this._edges=e.edges||yt.DEFAULT_EDGES,void 0!==e.tabsMovable&&(this._tabsMovable=e.tabsMovable),void 0!==e.tabsConstrained&&(this._tabsConstrained=e.tabsConstrained),void 0!==e.addButtonEnabled&&(this._addButtonEnabled=e.addButtonEnabled),this.dataset.mode=this._mode;let i={createTabBar:/* @__PURE__ */s(()=>this._createTabBar(),"createTabBar"),createHandle:/* @__PURE__ */s(()=>this._createHandle(),"createHandle")};this.layout=new _t({document:this._document,renderer:i,spacing:e.spacing,hiddenMode:e.hiddenMode}),this.overlay=e.overlay||new t.Overlay,this.node.appendChild(this.overlay.node)}dispose(){this._releaseMouse(),this.overlay.hide(0),this._drag&&this._drag.dispose(),super.dispose()}get hiddenMode(){return this.layout.hiddenMode}set hiddenMode(e){this.layout.hiddenMode=e}get layoutModified(){return this._layoutModified}get addRequested(){return this._addRequested}get renderer(){return this.layout.renderer}get spacing(){return this.layout.spacing}set spacing(e){this.layout.spacing=e}get mode(){return this._mode}set mode(e){if(this._mode===e)return;this._mode=e,this.dataset.mode=e;let t=this.layout;switch(e){case"multiple-document":for(const e of t.tabBars())e.show();break;case"single-document":t.restoreLayout(yt.createSingleDocumentConfig(this));break;default:throw"unreachable"}re.postMessage(this,yt.LayoutModified)}get tabsMovable(){return this._tabsMovable}set tabsMovable(e){this._tabsMovable=e;for(const t of this.tabBars())t.tabsMovable=e}get tabsConstrained(){return this._tabsConstrained}set tabsConstrained(e){this._tabsConstrained=e}get addButtonEnabled(){return this._addButtonEnabled}set addButtonEnabled(e){this._addButtonEnabled=e;for(const t of this.tabBars())t.addButtonEnabled=e}get isEmpty(){return this.layout.isEmpty}*widgets(){yield*this.layout.widgets()}*selectedWidgets(){yield*this.layout.selectedWidgets()}*tabBars(){yield*this.layout.tabBars()}*handles(){yield*this.layout.handles()}selectWidget(e){let t=v(this.tabBars(),t=>-1!==t.titles.indexOf(e.title));if(!t)throw new Error("Widget is not contained in the dock panel.");t.currentTitle=e.title}activateWidget(e){this.selectWidget(e),e.activate()}saveLayout(){return this.layout.saveLayout()}restoreLayout(e){this._mode="multiple-document",this.layout.restoreLayout(e),(O.IS_EDGE||O.IS_IE)&&re.flush(),re.postMessage(this,yt.LayoutModified)}addWidget(e,t={}){"single-document"===this._mode?this.layout.addWidget(e):this.layout.addWidget(e,t),re.postMessage(this,yt.LayoutModified)}processMessage(e){"layout-modified"===e.type?this._layoutModified.emit(void 0):super.processMessage(e)}handleEvent(e){switch(e.type){case"lm-dragenter":this._evtDragEnter(e);break;case"lm-dragleave":this._evtDragLeave(e);break;case"lm-dragover":this._evtDragOver(e);break;case"lm-drop":this._evtDrop(e);break;case"pointerdown":this._evtPointerDown(e);break;case"pointermove":this._evtPointerMove(e);break;case"pointerup":this._evtPointerUp(e);break;case"keydown":this._evtKeyDown(e);break;case"contextmenu":e.preventDefault(),e.stopPropagation()}}onBeforeAttach(e){this.node.addEventListener("lm-dragenter",this),this.node.addEventListener("lm-dragleave",this),this.node.addEventListener("lm-dragover",this),this.node.addEventListener("lm-drop",this),this.node.addEventListener("pointerdown",this)}onAfterDetach(e){this.node.removeEventListener("lm-dragenter",this),this.node.removeEventListener("lm-dragleave",this),this.node.removeEventListener("lm-dragover",this),this.node.removeEventListener("lm-drop",this),this.node.removeEventListener("pointerdown",this),this._releaseMouse()}onChildAdded(e){yt.isGeneratedTabBarProperty.get(e.child)||e.child.addClass("lm-DockPanel-widget")}onChildRemoved(e){yt.isGeneratedTabBarProperty.get(e.child)||(e.child.removeClass("lm-DockPanel-widget"),re.postMessage(this,yt.LayoutModified))}_evtDragEnter(e){e.mimeData.hasData("application/vnd.lumino.widget-factory")&&(e.preventDefault(),e.stopPropagation())}_evtDragLeave(e){e.preventDefault(),this._tabsConstrained&&e.source!==this||(e.stopPropagation(),this.overlay.hide(1))}_evtDragOver(e){e.preventDefault(),this._tabsConstrained&&e.source!==this||"invalid"===this._showOverlay(e.clientX,e.clientY)?e.dropAction="none":(e.stopPropagation(),e.dropAction=e.proposedAction)}_evtDrop(e){if(e.preventDefault(),this.overlay.hide(0),"none"===e.proposedAction)return void(e.dropAction="none");let{clientX:t,clientY:i}=e,{zone:n,target:s}=yt.findDropTarget(this,t,i,this._edges);if(this._tabsConstrained&&e.source!==this||"invalid"===n)return void(e.dropAction="none");let r=e.mimeData.getData("application/vnd.lumino.widget-factory");if("function"!=typeof r)return void(e.dropAction="none");let o=r();if(!(o instanceof Se))return void(e.dropAction="none");if(o.contains(this))return void(e.dropAction="none");let a=s?yt.getDropRef(s.tabBar):null;switch(n){case"root-all":this.addWidget(o);break;case"root-top":this.addWidget(o,{mode:"split-top"});break;case"root-left":this.addWidget(o,{mode:"split-left"});break;case"root-right":this.addWidget(o,{mode:"split-right"});break;case"root-bottom":this.addWidget(o,{mode:"split-bottom"});break;case"widget-all":case"widget-tab":this.addWidget(o,{mode:"tab-after",ref:a});break;case"widget-top":this.addWidget(o,{mode:"split-top",ref:a});break;case"widget-left":this.addWidget(o,{mode:"split-left",ref:a});break;case"widget-right":this.addWidget(o,{mode:"split-right",ref:a});break;case"widget-bottom":this.addWidget(o,{mode:"split-bottom",ref:a});break;default:throw"unreachable"}e.dropAction=e.proposedAction,e.stopPropagation(),this.activateWidget(o)}_evtKeyDown(e){e.preventDefault(),e.stopPropagation(),27===e.keyCode&&(this._releaseMouse(),re.postMessage(this,yt.LayoutModified))}_evtPointerDown(e){if(0!==e.button)return;let t=this.layout,i=e.target,n=v(t.handles(),e=>e.contains(i));if(!n)return;e.preventDefault(),e.stopPropagation(),this._document.addEventListener("keydown",this,!0),this._document.addEventListener("pointerup",this,!0),this._document.addEventListener("pointermove",this,!0),this._document.addEventListener("contextmenu",this,!0);let s=n.getBoundingClientRect(),r=e.clientX-s.left,o=e.clientY-s.top,a=window.getComputedStyle(n),d=he.overrideCursor(a.cursor,this._document);this._pressData={handle:n,deltaX:r,deltaY:o,override:d}}_evtPointerMove(e){if(!this._pressData)return;e.preventDefault(),e.stopPropagation();let t=this.node.getBoundingClientRect(),i=e.clientX-t.left-this._pressData.deltaX,n=e.clientY-t.top-this._pressData.deltaY;this.layout.moveHandle(this._pressData.handle,i,n)}_evtPointerUp(e){0===e.button&&(e.preventDefault(),e.stopPropagation(),this._releaseMouse(),re.postMessage(this,yt.LayoutModified))}_releaseMouse(){this._pressData&&(this._pressData.override.dispose(),this._pressData=null,this._document.removeEventListener("keydown",this,!0),this._document.removeEventListener("pointerup",this,!0),this._document.removeEventListener("pointermove",this,!0),this._document.removeEventListener("contextmenu",this,!0))}_showOverlay(e,t){let i,n,s,r,{zone:o,target:a}=yt.findDropTarget(this,e,t,this._edges);if("invalid"===o)return this.overlay.hide(100),o;let d=F.boxSizing(this.node),l=this.node.getBoundingClientRect();switch(o){case"root-all":i=d.paddingTop,n=d.paddingLeft,s=d.paddingRight,r=d.paddingBottom;break;case"root-top":i=d.paddingTop,n=d.paddingLeft,s=d.paddingRight,r=l.height*yt.GOLDEN_RATIO;break;case"root-left":i=d.paddingTop,n=d.paddingLeft,s=l.width*yt.GOLDEN_RATIO,r=d.paddingBottom;break;case"root-right":i=d.paddingTop,n=l.width*yt.GOLDEN_RATIO,s=d.paddingRight,r=d.paddingBottom;break;case"root-bottom":i=l.height*yt.GOLDEN_RATIO,n=d.paddingLeft,s=d.paddingRight,r=d.paddingBottom;break;case"widget-all":i=a.top,n=a.left,s=a.right,r=a.bottom;break;case"widget-top":i=a.top,n=a.left,s=a.right,r=a.bottom+a.height/2;break;case"widget-left":i=a.top,n=a.left,s=a.right+a.width/2,r=a.bottom;break;case"widget-right":i=a.top,n=a.left+a.width/2,s=a.right,r=a.bottom;break;case"widget-bottom":i=a.top+a.height/2,n=a.left,s=a.right,r=a.bottom;break;case"widget-tab":{const e=a.tabBar.node.getBoundingClientRect().height;i=a.top,n=a.left,s=a.right,r=a.bottom+a.height-e;break}default:throw"unreachable"}return this.overlay.show({top:i,left:n,right:s,bottom:r}),o}_createTabBar(){let e=this._renderer.createTabBar(this._document);return yt.isGeneratedTabBarProperty.set(e,!0),"single-document"===this._mode&&e.hide(),e.tabsMovable=this._tabsMovable,e.allowDeselect=!1,e.addButtonEnabled=this._addButtonEnabled,e.removeBehavior="select-previous-tab",e.insertBehavior="select-tab-if-needed",e.tabMoved.connect(this._onTabMoved,this),e.currentChanged.connect(this._onCurrentChanged,this),e.tabCloseRequested.connect(this._onTabCloseRequested,this),e.tabDetachRequested.connect(this._onTabDetachRequested,this),e.tabActivateRequested.connect(this._onTabActivateRequested,this),e.addRequested.connect(this._onTabAddRequested,this),e}_createHandle(){return this._renderer.createHandle()}_onTabMoved(){re.postMessage(this,yt.LayoutModified)}_onCurrentChanged(e,t){let{previousTitle:i,currentTitle:n}=t;i&&i.owner.hide(),n&&n.owner.show(),(O.IS_EDGE||O.IS_IE)&&re.flush(),re.postMessage(this,yt.LayoutModified)}_onTabAddRequested(e){this._addRequested.emit(e)}_onTabActivateRequested(e,t){t.title.owner.activate()}_onTabCloseRequested(e,t){t.title.owner.close()}_onTabDetachRequested(e,t){if(this._drag)return;e.releaseMouse();let{title:i,tab:n,clientX:r,clientY:o,offset:a}=t,d=new C,l=/* @__PURE__ */s(()=>i.owner,"factory");d.setData("application/vnd.lumino.widget-factory",l);let h=n.cloneNode(!0);a&&(h.style.top=`-${a.y}px`,h.style.left=`-${a.x}px`),this._drag=new he({document:this._document,mimeData:d,dragImage:h,proposedAction:"move",supportedActions:"move",source:this}),n.classList.add("lm-mod-hidden");let c=/* @__PURE__ */s(()=>{this._drag=null,n.classList.remove("lm-mod-hidden")},"cleanup");this._drag.start(r,o).then(c)}},"DockPanel"),t);var yt;!function(e){const t=class _Overlay{constructor(){this._timer=-1,this._hidden=!0,this.node=document.createElement("div"),this.node.classList.add("lm-DockPanel-overlay"),this.node.classList.add("lm-mod-hidden"),this.node.style.position="absolute",this.node.style.contain="strict"}show(e){let t=this.node.style;t.top=`${e.top}px`,t.left=`${e.left}px`,t.right=`${e.right}px`,t.bottom=`${e.bottom}px`,clearTimeout(this._timer),this._timer=-1,this._hidden&&(this._hidden=!1,this.node.classList.remove("lm-mod-hidden"))}hide(e){if(!this._hidden)return e<=0?(clearTimeout(this._timer),this._timer=-1,this._hidden=!0,void this.node.classList.add("lm-mod-hidden")):void(-1===this._timer&&(this._timer=window.setTimeout(()=>{this._timer=-1,this._hidden=!0,this.node.classList.add("lm-mod-hidden")},e)))}};s(t,"Overlay");let i=t;e.Overlay=i;const n=class _Renderer{createTabBar(e){let t=new pt({document:e});return t.addClass("lm-DockPanel-tabBar"),t}createHandle(){let e=document.createElement("div");return e.className="lm-DockPanel-handle",e}};s(n,"Renderer");let r=n;e.Renderer=r,e.defaultRenderer=new r}(bt||(bt={})),function(e){function t(e){if(e.isEmpty)return{main:null};let t=Array.from(e.widgets()),i=e.selectedWidgets().next().value,n=i?t.indexOf(i):-1;return{main:{type:"tab-area",widgets:t,currentIndex:n}}}function i(e,t,i,n){if(!F.hitTest(e.node,t,i))return{zone:"invalid",target:null};let s=e.layout;if(s.isEmpty)return{zone:"root-all",target:null};if("multiple-document"===e.mode){let s=e.node.getBoundingClientRect(),r=t-s.left+1,o=i-s.top+1,a=s.right-t,d=s.bottom-i;switch(Math.min(o,a,d,r)){case o:if(o<n.top)return{zone:"root-top",target:null};break;case a:if(a<n.right)return{zone:"root-right",target:null};break;case d:if(d<n.bottom)return{zone:"root-bottom",target:null};break;case r:if(r<n.left)return{zone:"root-left",target:null};break;default:throw"unreachable"}}let r=s.hitTestTabAreas(t,i);if(!r)return{zone:"invalid",target:null};if("single-document"===e.mode)return{zone:"widget-all",target:r};let o=r.x-r.left+1,a=r.y-r.top+1,d=r.left+r.width-r.x,l=r.top+r.height-r.y;if(a<r.tabBar.node.getBoundingClientRect().height)return{zone:"widget-tab",target:r};let h,c=Math.round(r.width/3),u=Math.round(r.height/3);if(o>c&&d>c&&a>u&&l>u)return{zone:"widget-all",target:r};switch(o/=c,a/=u,d/=c,l/=u,Math.min(o,a,d,l)){case o:h="widget-left";break;case a:h="widget-top";break;case d:h="widget-right";break;case l:h="widget-bottom";break;default:throw"unreachable"}return{zone:h,target:r}}function n(e){return 0===e.titles.length?null:e.currentTitle?e.currentTitle.owner:e.titles[e.titles.length-1].owner}e.GOLDEN_RATIO=.618,e.DEFAULT_EDGES={top:12,right:40,bottom:40,left:40},e.LayoutModified=new se("layout-modified"),e.isGeneratedTabBarProperty=new ae({name:"isGeneratedTabBar",create:/* @__PURE__ */s(()=>!1,"create")}),s(t,"createSingleDocumentConfig"),e.createSingleDocumentConfig=t,s(i,"findDropTarget"),e.findDropTarget=i,s(n,"getDropRef"),e.getDropRef=n}(yt||(yt={}));const wt=class _GridLayout extends ke{constructor(e={}){super(e),this._dirty=!1,this._rowSpacing=4,this._columnSpacing=4,this._items=[],this._rowStarts=[],this._columnStarts=[],this._rowSizers=[new we],this._columnSizers=[new we],this._box=null,void 0!==e.rowCount&&Mt.reallocSizers(this._rowSizers,e.rowCount),void 0!==e.columnCount&&Mt.reallocSizers(this._columnSizers,e.columnCount),void 0!==e.rowSpacing&&(this._rowSpacing=Mt.clampValue(e.rowSpacing)),void 0!==e.columnSpacing&&(this._columnSpacing=Mt.clampValue(e.columnSpacing))}dispose(){for(const e of this._items){let t=e.widget;e.dispose(),t.dispose()}this._box=null,this._items.length=0,this._rowStarts.length=0,this._rowSizers.length=0,this._columnStarts.length=0,this._columnSizers.length=0,super.dispose()}get rowCount(){return this._rowSizers.length}set rowCount(e){e!==this.rowCount&&(Mt.reallocSizers(this._rowSizers,e),this.parent&&this.parent.fit())}get columnCount(){return this._columnSizers.length}set columnCount(e){e!==this.columnCount&&(Mt.reallocSizers(this._columnSizers,e),this.parent&&this.parent.fit())}get rowSpacing(){return this._rowSpacing}set rowSpacing(e){e=Mt.clampValue(e),this._rowSpacing!==e&&(this._rowSpacing=e,this.parent&&this.parent.fit())}get columnSpacing(){return this._columnSpacing}set columnSpacing(e){e=Mt.clampValue(e),this._columnSpacing!==e&&(this._columnSpacing=e,this.parent&&this.parent.fit())}rowStretch(e){let t=this._rowSizers[e];return t?t.stretch:-1}setRowStretch(e,t){let i=this._rowSizers[e];i&&(t=Mt.clampValue(t),i.stretch!==t&&(i.stretch=t,this.parent&&this.parent.update()))}columnStretch(e){let t=this._columnSizers[e];return t?t.stretch:-1}setColumnStretch(e,t){let i=this._columnSizers[e];i&&(t=Mt.clampValue(t),i.stretch!==t&&(i.stretch=t,this.parent&&this.parent.update()))}*[Symbol.iterator](){for(const e of this._items)yield e.widget}addWidget(e){-1===m.findFirstIndex(this._items,t=>t.widget===e)&&(this._items.push(new Te(e)),this.parent&&this.attachWidget(e))}removeWidget(e){let t=m.findFirstIndex(this._items,t=>t.widget===e);if(-1===t)return;let i=m.removeAt(this._items,t);this.parent&&this.detachWidget(e),i.dispose()}init(){super.init();for(const e of this)this.attachWidget(e)}attachWidget(e){this.parent.isAttached&&re.sendMessage(e,Se.Msg.BeforeAttach),this.parent.node.appendChild(e.node),this.parent.isAttached&&re.sendMessage(e,Se.Msg.AfterAttach),this.parent.fit()}detachWidget(e){this.parent.isAttached&&re.sendMessage(e,Se.Msg.BeforeDetach),this.parent.node.removeChild(e.node),this.parent.isAttached&&re.sendMessage(e,Se.Msg.AfterDetach),this.parent.fit()}onBeforeShow(e){super.onBeforeShow(e),this.parent.update()}onBeforeAttach(e){super.onBeforeAttach(e),this.parent.fit()}onChildShown(e){this.parent.fit()}onChildHidden(e){this.parent.fit()}onResize(e){this.parent.isVisible&&this._update(e.width,e.height)}onUpdateRequest(e){this.parent.isVisible&&this._update(-1,-1)}onFitRequest(e){this.parent.isAttached&&this._fit()}_fit(){for(let a=0,d=this.rowCount;a<d;++a)this._rowSizers[a].minSize=0;for(let a=0,d=this.columnCount;a<d;++a)this._columnSizers[a].minSize=0;let e=this._items.filter(e=>!e.isHidden);for(let a=0,d=e.length;a<d;++a)e[a].fit();let t=this.rowCount-1,i=this.columnCount-1;e.sort(Mt.rowSpanCmp);for(let a=0,d=e.length;a<d;++a){let i=e[a],n=_GridLayout.getCellConfig(i.widget),s=Math.min(n.row,t),r=Math.min(n.row+n.rowSpan-1,t);Mt.distributeMin(this._rowSizers,s,r,i.minHeight)}e.sort(Mt.columnSpanCmp);for(let a=0,d=e.length;a<d;++a){let t=e[a],n=_GridLayout.getCellConfig(t.widget),s=Math.min(n.column,i),r=Math.min(n.column+n.columnSpan-1,i);Mt.distributeMin(this._columnSizers,s,r,t.minWidth)}if("set-no-constraint"===this.fitPolicy)return void re.sendMessage(this.parent,Se.Msg.UpdateRequest);let n=t*this._rowSpacing,s=i*this._columnSpacing;for(let a=0,d=this.rowCount;a<d;++a)n+=this._rowSizers[a].minSize;for(let a=0,d=this.columnCount;a<d;++a)s+=this._columnSizers[a].minSize;let r=this._box=F.boxSizing(this.parent.node);s+=r.horizontalSum,n+=r.verticalSum;let o=this.parent.node.style;o.minWidth=`${s}px`,o.minHeight=`${n}px`,this._dirty=!0,this.parent.parent&&re.sendMessage(this.parent.parent,Se.Msg.FitRequest),this._dirty&&re.sendMessage(this.parent,Se.Msg.UpdateRequest)}_update(e,t){this._dirty=!1,e<0&&(e=this.parent.node.offsetWidth),t<0&&(t=this.parent.node.offsetHeight),this._box||(this._box=F.boxSizing(this.parent.node));let i=this._box.paddingTop,n=this._box.paddingLeft,s=e-this._box.horizontalSum,r=t-this._box.verticalSum,o=this.rowCount-1,a=this.columnCount-1,d=o*this._rowSpacing,l=a*this._columnSpacing;xe.calc(this._rowSizers,Math.max(0,r-d)),xe.calc(this._columnSizers,Math.max(0,s-l));for(let h=0,c=i,u=this.rowCount;h<u;++h)this._rowStarts[h]=c,c+=this._rowSizers[h].size+this._rowSpacing;for(let h=0,c=n,u=this.columnCount;h<u;++h)this._columnStarts[h]=c,c+=this._columnSizers[h].size+this._columnSpacing;for(let h=0,c=this._items.length;h<c;++h){let e=this._items[h];if(e.isHidden)continue;let t=_GridLayout.getCellConfig(e.widget),i=Math.min(t.row,o),n=Math.min(t.column,a),s=Math.min(t.row+t.rowSpan-1,o),r=Math.min(t.column+t.columnSpan-1,a),d=this._columnStarts[n],l=this._rowStarts[i],c=this._columnStarts[r]+this._columnSizers[r].size-d,u=this._rowStarts[s]+this._rowSizers[s].size-l;e.update(d,l,c,u)}}};s(wt,"GridLayout");let xt=wt;var Mt;!function(e){function t(e){return Mt.cellConfigProperty.get(e)}function i(e,t){Mt.cellConfigProperty.set(e,Mt.normalizeConfig(t))}s(t,"getCellConfig"),e.getCellConfig=t,s(i,"setCellConfig"),e.setCellConfig=i}(xt||(xt={})),function(e){function t(e){return{row:Math.max(0,Math.floor(e.row||0)),column:Math.max(0,Math.floor(e.column||0)),rowSpan:Math.max(1,Math.floor(e.rowSpan||0)),columnSpan:Math.max(1,Math.floor(e.columnSpan||0))}}function i(e){return Math.max(0,Math.floor(e))}function n(t,i){let n=e.cellConfigProperty.get(t.widget),s=e.cellConfigProperty.get(i.widget);return n.rowSpan-s.rowSpan}function r(t,i){let n=e.cellConfigProperty.get(t.widget),s=e.cellConfigProperty.get(i.widget);return n.columnSpan-s.columnSpan}function o(e,t){for(t=Math.max(1,Math.floor(t));e.length<t;)e.push(new we);e.length>t&&(e.length=t)}function a(e,t,i,n){if(i<t)return;if(t===i){let i=e[t];return void(i.minSize=Math.max(i.minSize,n))}let s=0;for(let o=t;o<=i;++o)s+=e[o].minSize;if(s>=n)return;let r=(n-s)/(i-t+1);for(let o=t;o<=i;++o)e[o].minSize+=r}function d(e){e.parent&&e.parent.layout instanceof xt&&e.parent.fit()}e.cellConfigProperty=new ae({name:"cellConfig",create:/* @__PURE__ */s(()=>({row:0,column:0,rowSpan:1,columnSpan:1}),"create"),changed:d}),s(t,"normalizeConfig"),e.normalizeConfig=t,s(i,"clampValue"),e.clampValue=i,s(n,"rowSpanCmp"),e.rowSpanCmp=n,s(r,"columnSpanCmp"),e.columnSpanCmp=r,s(o,"reallocSizers"),e.reallocSizers=o,s(a,"distributeMin"),e.distributeMin=a,s(d,"onChildCellConfigChanged")}(Mt||(Mt={}));const Ct=class _MenuBar extends Se{constructor(e={}){super({node:St.createNode()}),this._activeIndex=-1,this._tabFocusIndex=0,this._menus=[],this._childMenu=null,this._overflowMenu=null,this._menuItemSizes=[],this._overflowIndex=-1,this.addClass("lm-MenuBar"),this.setFlag(Se.Flag.DisallowLayout),this.renderer=e.renderer||_MenuBar.defaultRenderer,this._forceItemsPosition=e.forceItemsPosition||{forceX:!0,forceY:!0},this._overflowMenuOptions=e.overflowMenuOptions||{isVisible:!0}}dispose(){this._closeChildMenu(),this._menus.length=0,super.dispose()}get childMenu(){return this._childMenu}get overflowIndex(){return this._overflowIndex}get overflowMenu(){return this._overflowMenu}get contentNode(){return this.node.getElementsByClassName("lm-MenuBar-content")[0]}get activeMenu(){return this._menus[this._activeIndex]||null}set activeMenu(e){this.activeIndex=e?this._menus.indexOf(e):-1}get activeIndex(){return this._activeIndex}set activeIndex(e){(e<0||e>=this._menus.length)&&(e=-1),e>-1&&0===this._menus[e].items.length&&(e=-1),this._activeIndex!==e&&(this._activeIndex=e,this.update())}get menus(){return this._menus}openActiveMenu(){-1!==this._activeIndex&&(this._openChildMenu(),this._childMenu&&(this._childMenu.activeIndex=-1,this._childMenu.activateNextItem()))}addMenu(e,t=!0){this.insertMenu(this._menus.length,e,t)}insertMenu(e,t,i=!0){this._closeChildMenu();let n=this._menus.indexOf(t),s=Math.max(0,Math.min(e,this._menus.length));if(-1===n)return m.insert(this._menus,s,t),t.addClass("lm-MenuBar-menu"),t.aboutToClose.connect(this._onMenuAboutToClose,this),t.menuRequested.connect(this._onMenuMenuRequested,this),t.title.changed.connect(this._onTitleChanged,this),void(i&&this.update());s===this._menus.length&&s--,n!==s&&(m.move(this._menus,n,s),i&&this.update())}removeMenu(e,t=!0){this.removeMenuAt(this._menus.indexOf(e),t)}removeMenuAt(e,t=!0){this._closeChildMenu();let i=m.removeAt(this._menus,e);i&&(i.aboutToClose.disconnect(this._onMenuAboutToClose,this),i.menuRequested.disconnect(this._onMenuMenuRequested,this),i.title.changed.disconnect(this._onTitleChanged,this),i.removeClass("lm-MenuBar-menu"),t&&this.update())}clearMenus(){if(0!==this._menus.length){this._closeChildMenu();for(let e of this._menus)e.aboutToClose.disconnect(this._onMenuAboutToClose,this),e.menuRequested.disconnect(this._onMenuMenuRequested,this),e.title.changed.disconnect(this._onTitleChanged,this),e.removeClass("lm-MenuBar-menu");this._menus.length=0,this.update()}}handleEvent(e){switch(e.type){case"keydown":this._evtKeyDown(e);break;case"mousedown":this._evtMouseDown(e);break;case"mousemove":case"mouseleave":this._evtMouseMove(e);break;case"focusout":this._evtFocusOut(e);break;case"contextmenu":e.preventDefault(),e.stopPropagation()}}onBeforeAttach(e){this.node.addEventListener("keydown",this),this.node.addEventListener("mousedown",this),this.node.addEventListener("mousemove",this),this.node.addEventListener("mouseleave",this),this.node.addEventListener("focusout",this),this.node.addEventListener("contextmenu",this)}onAfterDetach(e){this.node.removeEventListener("keydown",this),this.node.removeEventListener("mousedown",this),this.node.removeEventListener("mousemove",this),this.node.removeEventListener("mouseleave",this),this.node.removeEventListener("focusout",this),this.node.removeEventListener("contextmenu",this),this._closeChildMenu()}onActivateRequest(e){this.isAttached&&this._focusItemAt(0)}onResize(e){this.update(),super.onResize(e)}onUpdateRequest(e){var t;let i=this._menus,n=this.renderer,r=this._activeIndex,o=this._tabFocusIndex>=0&&this._tabFocusIndex<i.length?this._tabFocusIndex:0,a=this._overflowIndex>-1?this._overflowIndex:i.length,d=0,l=!1;a=null!==this._overflowMenu?a-1:a;let h=new Array(a);for(let c=0;c<a;++c)h[c]=n.renderItem({title:i[c].title,active:c===r,tabbable:c===o,disabled:0===i[c].items.length,onfocus:/* @__PURE__ */s(()=>{this._tabFocusIndex=c,this.activeIndex=c},"onfocus")}),d+=this._menuItemSizes[c],i[c].title.label===this._overflowMenuOptions.title&&(l=!0,a--);if(this._overflowMenuOptions.isVisible)if(this._overflowIndex>-1&&!l){if(null===this._overflowMenu){const e=null!==(t=this._overflowMenuOptions.title)&&void 0!==t?t:"...";this._overflowMenu=new at({commands:new G}),this._overflowMenu.title.label=e,this._overflowMenu.title.mnemonic=0,this.addMenu(this._overflowMenu,!1)}for(let e=i.length-2;e>=a;e--){const t=this.menus[e];t.title.mnemonic=0,this._overflowMenu.insertItem(0,{type:"submenu",submenu:t}),this.removeMenu(t,!1)}h[a]=n.renderItem({title:this._overflowMenu.title,active:a===r&&0!==i[a].items.length,tabbable:a===o,disabled:0===i[a].items.length,onfocus:/* @__PURE__ */s(()=>{this._tabFocusIndex=a,this.activeIndex=a},"onfocus")}),a++}else if(null!==this._overflowMenu){let e=this._overflowMenu.items,t=this.node.offsetWidth,r=this._overflowMenu.items.length;for(let l=0;l<r;++l){let r=i.length-1-l;if(t-d>this._menuItemSizes[r]){let t=e[0].submenu;this._overflowMenu.removeItemAt(0),this.insertMenu(a,t,!1),h[a]=n.renderItem({title:t.title,active:!1,tabbable:a===o,disabled:0===i[a].items.length,onfocus:/* @__PURE__ */s(()=>{this._tabFocusIndex=a,this.activeIndex=a},"onfocus")}),a++}}0===this._overflowMenu.items.length&&(this.removeMenu(this._overflowMenu,!1),h.pop(),this._overflowMenu=null,this._overflowIndex=-1)}ve.render(h,this.contentNode),this._updateOverflowIndex()}_updateOverflowIndex(){if(!this._overflowMenuOptions.isVisible)return;const e=this.contentNode.childNodes;let t=this.node.offsetWidth,i=0,n=-1,s=e.length;if(0==this._menuItemSizes.length)for(let r=0;r<s;r++){let s=e[r];i+=s.offsetWidth,this._menuItemSizes.push(s.offsetWidth),i>t&&-1===n&&(n=r)}else for(let r=0;r<this._menuItemSizes.length;r++)if(i+=this._menuItemSizes[r],i>t){n=r;break}this._overflowIndex=n}_evtKeyDown(e){let t=e.keyCode;if(9===t)return void(this.activeIndex=-1);if(e.preventDefault(),e.stopPropagation(),13===t||32===t||38===t||40===t){if(this.activeIndex=this._tabFocusIndex,this.activeIndex!==this._tabFocusIndex)return;return void this.openActiveMenu()}if(27===t)return this._closeChildMenu(),void this._focusItemAt(this.activeIndex);if(37===t||39===t){let e=37===t?-1:1,i=this._tabFocusIndex+e,n=this._menus.length;for(let t=0;t<n;t++){let s=(n+i+e*t)%n;if(this._menus[s].items.length)return void this._focusItemAt(s)}return}let i=$().keyForKeydownEvent(e);if(!i)return;let n=this._activeIndex+1,s=St.findMnemonic(this._menus,i,n);-1===s.index||s.multiple?-1!==s.index?(this.activeIndex=s.index,this._focusItemAt(this.activeIndex)):-1!==s.auto&&(this.activeIndex=s.auto,this._focusItemAt(this.activeIndex)):(this.activeIndex=s.index,this.openActiveMenu())}_evtMouseDown(e){if(!F.hitTest(this.node,e.clientX,e.clientY))return;e.stopPropagation(),e.stopImmediatePropagation();let t=m.findFirstIndex(this.contentNode.children,t=>F.hitTest(t,e.clientX,e.clientY));if(-1!==t){if(0===e.button)if(this._childMenu)this._closeChildMenu(),this.activeIndex=t;else{e.preventDefault();const i=this._positionForMenu(t);at.saveWindowData(),this.activeIndex=t,this._openChildMenu(i)}}else this._closeChildMenu()}_evtMouseMove(e){let t=m.findFirstIndex(this.contentNode.children,t=>F.hitTest(t,e.clientX,e.clientY));if(t===this._activeIndex)return;if(-1===t&&this._childMenu)return;const i=t>=0&&this._childMenu?this._positionForMenu(t):null;at.saveWindowData(),this.activeIndex=t,i&&this._openChildMenu(i)}_positionForMenu(e){let t=this.contentNode.children[e],{left:i,bottom:n}=t.getBoundingClientRect();return{top:n,left:i}}_evtFocusOut(e){this._childMenu||this.node.contains(e.relatedTarget)||(this.activeIndex=-1)}_focusItemAt(e){const t=this.contentNode.childNodes[e];t&&t.focus()}_openChildMenu(e={}){let t=this.activeMenu;if(!t)return void this._closeChildMenu();let i=this._childMenu;if(i===t)return;this._childMenu=t,i?i.close():document.addEventListener("mousedown",this,!0),this._tabFocusIndex=this.activeIndex,re.sendMessage(this,Se.Msg.UpdateRequest);let{left:n,top:s}=e;void 0!==n&&void 0!==s||({left:n,top:s}=this._positionForMenu(this._activeIndex)),i||this.addClass("lm-mod-active"),t.items.length>0&&t.open(n,s,this._forceItemsPosition)}_closeChildMenu(){if(!this._childMenu)return;this.removeClass("lm-mod-active"),document.removeEventListener("mousedown",this,!0);let e=this._childMenu;this._childMenu=null,e.close(),this.activeIndex=-1}_onMenuAboutToClose(e){e===this._childMenu&&(this.removeClass("lm-mod-active"),document.removeEventListener("mousedown",this,!0),this._childMenu=null,this.activeIndex=-1)}_onMenuMenuRequested(e,t){if(e!==this._childMenu)return;let i=this._activeIndex,n=this._menus.length;switch(t){case"next":this.activeIndex=i===n-1?0:i+1;break;case"previous":this.activeIndex=0===i?n-1:i-1}this.openActiveMenu()}_onTitleChanged(){this.update()}};s(Ct,"MenuBar");let At=Ct;var St,It;!function(e){const t=class _Renderer{renderItem(e){let t=this.createItemClass(e),i=this.createItemDataset(e),n=this.createItemARIA(e);return fe.li({className:t,dataset:i,...e.disabled?{}:{tabindex:e.tabbable?"0":"-1"},onfocus:e.onfocus,...n},this.renderIcon(e),this.renderLabel(e))}renderIcon(e){let t=this.createIconClass(e);return fe.div({className:t},e.title.icon,e.title.iconLabel)}renderLabel(e){let t=this.formatLabel(e);return fe.div({className:"lm-MenuBar-itemLabel"},t)}createItemClass(e){let t="lm-MenuBar-item";return e.title.className&&(t+=` ${e.title.className}`),e.active&&!e.disabled&&(t+=" lm-mod-active"),t}createItemDataset(e){return e.title.dataset}createItemARIA(e){return{role:"menuitem","aria-haspopup":"true","aria-disabled":e.disabled?"true":"false"}}createIconClass(e){let t="lm-MenuBar-itemIcon",i=e.title.iconClass;return i?`${t} ${i}`:t}formatLabel(e){let{label:t,mnemonic:i}=e.title;if(i<0||i>=t.length)return t;let n=t.slice(0,i),s=t.slice(i+1),r=t[i];return[n,fe.span({className:"lm-MenuBar-itemMnemonic"},r),s]}};s(t,"Renderer");let i=t;e.Renderer=i,e.defaultRenderer=new i}(Ct||(At={})),function(e){function t(){let e=document.createElement("div"),t=document.createElement("ul");return t.className="lm-MenuBar-content",e.appendChild(t),t.setAttribute("role","menubar"),e}function i(e,t,i){let n=-1,s=-1,r=!1,o=t.toUpperCase();for(let a=0,d=e.length;a<d;++a){let t=(a+i)%d,l=e[t].title;if(0===l.label.length)continue;let h=l.mnemonic;h>=0&&h<l.label.length?l.label[h].toUpperCase()===o&&(-1===n?n=t:r=!0):-1===s&&l.label[0].toUpperCase()===o&&(s=t)}return{index:n,multiple:r,auto:s}}s(t,"createNode"),e.createNode=t,s(i,"findMnemonic"),e.findMnemonic=i}(St||(St={})),function(e){function t(){let e=document.createElement("div"),t=document.createElement("div"),i=document.createElement("div"),n=document.createElement("div"),s=document.createElement("div");return t.className="lm-ScrollBar-button",i.className="lm-ScrollBar-button",t.dataset.action="decrement",i.dataset.action="increment",n.className="lm-ScrollBar-track",s.className="lm-ScrollBar-thumb",n.appendChild(s),e.appendChild(t),e.appendChild(n),e.appendChild(i),e}function i(e,t){return e.thumbNode.contains(t)?"thumb":e.trackNode.contains(t)?"track":e.decrementNode.contains(t)?"decrement":e.incrementNode.contains(t)?"increment":null}s(t,"createNode"),e.createNode=t,s(i,"findPart"),e.findPart=i}(It||(It={}));const zt=class _StackedLayout extends Be{constructor(e={}){super(e),this._dirty=!1,this._items=[],this._box=null,this._hiddenMode=void 0!==e.hiddenMode?e.hiddenMode:Se.HiddenMode.Display}get hiddenMode(){return this._hiddenMode}set hiddenMode(e){this._hiddenMode!==e&&(this._hiddenMode=e,this.widgets.length>1&&this.widgets.forEach(e=>{e.hiddenMode=this._hiddenMode}))}dispose(){for(const e of this._items)e.dispose();this._box=null,this._items.length=0,super.dispose()}attachWidget(e,t){this._hiddenMode===Se.HiddenMode.Scale&&this._items.length>0?(1===this._items.length&&(this.widgets[0].hiddenMode=Se.HiddenMode.Scale),t.hiddenMode=Se.HiddenMode.Scale):t.hiddenMode=Se.HiddenMode.Display,m.insert(this._items,e,new Te(t)),this.parent.isAttached&&re.sendMessage(t,Se.Msg.BeforeAttach),this.parent.node.appendChild(t.node),this.parent.isAttached&&re.sendMessage(t,Se.Msg.AfterAttach),this.parent.fit()}moveWidget(e,t,i){m.move(this._items,e,t),this.parent.update()}detachWidget(e,t){let i=m.removeAt(this._items,e);this.parent.isAttached&&re.sendMessage(t,Se.Msg.BeforeDetach),this.parent.node.removeChild(t.node),this.parent.isAttached&&re.sendMessage(t,Se.Msg.AfterDetach),i.widget.node.style.zIndex="",this._hiddenMode===Se.HiddenMode.Scale&&(t.hiddenMode=Se.HiddenMode.Display,1===this._items.length&&(this._items[0].widget.hiddenMode=Se.HiddenMode.Display)),i.dispose(),this.parent.fit()}onBeforeShow(e){super.onBeforeShow(e),this.parent.update()}onBeforeAttach(e){super.onBeforeAttach(e),this.parent.fit()}onChildShown(e){this.parent.fit()}onChildHidden(e){this.parent.fit()}onResize(e){this.parent.isVisible&&this._update(e.width,e.height)}onUpdateRequest(e){this.parent.isVisible&&this._update(-1,-1)}onFitRequest(e){this.parent.isAttached&&this._fit()}_fit(){let e=0,t=0;for(let s=0,r=this._items.length;s<r;++s){let i=this._items[s];i.isHidden||(i.fit(),e=Math.max(e,i.minWidth),t=Math.max(t,i.minHeight))}let i=this._box=F.boxSizing(this.parent.node);e+=i.horizontalSum,t+=i.verticalSum;let n=this.parent.node.style;n.minWidth=`${e}px`,n.minHeight=`${t}px`,this._dirty=!0,this.parent.parent&&re.sendMessage(this.parent.parent,Se.Msg.FitRequest),this._dirty&&re.sendMessage(this.parent,Se.Msg.UpdateRequest)}_update(e,t){this._dirty=!1;let i=0;for(let a=0,d=this._items.length;a<d;++a)i+=+!this._items[a].isHidden;if(0===i)return;e<0&&(e=this.parent.node.offsetWidth),t<0&&(t=this.parent.node.offsetHeight),this._box||(this._box=F.boxSizing(this.parent.node));let n=this._box.paddingTop,s=this._box.paddingLeft,r=e-this._box.horizontalSum,o=t-this._box.verticalSum;for(let a=0,d=this._items.length;a<d;++a){let e=this._items[a];e.isHidden||(e.widget.node.style.zIndex=`${a}`,e.update(s,n,r,o))}}};s(zt,"StackedLayout");let kt=zt;const Et=class _StackedPanel extends $e{constructor(e={}){super({layout:Lt.createLayout(e)}),this._widgetRemoved=new T(this),this.addClass("lm-StackedPanel")}get hiddenMode(){return this.layout.hiddenMode}set hiddenMode(e){this.layout.hiddenMode=e}get widgetRemoved(){return this._widgetRemoved}onChildAdded(e){e.child.addClass("lm-StackedPanel-child")}onChildRemoved(e){e.child.removeClass("lm-StackedPanel-child"),this._widgetRemoved.emit(e.child)}};s(Et,"StackedPanel");let Tt=Et;var Lt;!function(e){function t(e){return e.layout||new kt}s(t,"createLayout"),e.createLayout=t}(Lt||(Lt={}));let Dt=(s(i=class extends Se{constructor(e={}){super(),this._currentChanged=new T(this),this._addRequested=new T(this),this.addClass("lm-TabPanel"),this.tabBar=new pt(e),this.tabBar.addClass("lm-TabPanel-tabBar"),this.stackedPanel=new Tt,this.stackedPanel.addClass("lm-TabPanel-stackedPanel"),this.tabBar.tabMoved.connect(this._onTabMoved,this),this.tabBar.currentChanged.connect(this._onCurrentChanged,this),this.tabBar.tabCloseRequested.connect(this._onTabCloseRequested,this),this.tabBar.tabActivateRequested.connect(this._onTabActivateRequested,this),this.tabBar.addRequested.connect(this._onTabAddRequested,this),this.stackedPanel.widgetRemoved.connect(this._onWidgetRemoved,this),this._tabPlacement=e.tabPlacement||"top";let t=Bt.directionFromPlacement(this._tabPlacement),i=Bt.orientationFromPlacement(this._tabPlacement);this.tabBar.orientation=i,this.tabBar.dataset.placement=this._tabPlacement;let n=new Qe({direction:t,spacing:0});Qe.setStretch(this.tabBar,0),Qe.setStretch(this.stackedPanel,1),n.addWidget(this.tabBar),n.addWidget(this.stackedPanel),this.layout=n}get currentChanged(){return this._currentChanged}get currentIndex(){return this.tabBar.currentIndex}set currentIndex(e){this.tabBar.currentIndex=e}get currentWidget(){let e=this.tabBar.currentTitle;return e?e.owner:null}set currentWidget(e){this.tabBar.currentTitle=e?e.title:null}get tabsMovable(){return this.tabBar.tabsMovable}set tabsMovable(e){this.tabBar.tabsMovable=e}get addButtonEnabled(){return this.tabBar.addButtonEnabled}set addButtonEnabled(e){this.tabBar.addButtonEnabled=e}get tabPlacement(){return this._tabPlacement}set tabPlacement(e){if(this._tabPlacement===e)return;this._tabPlacement=e;let t=Bt.directionFromPlacement(e),i=Bt.orientationFromPlacement(e);this.tabBar.orientation=i,this.tabBar.dataset.placement=e,this.layout.direction=t}get addRequested(){return this._addRequested}get widgets(){return this.stackedPanel.widgets}addWidget(e){this.insertWidget(this.widgets.length,e)}insertWidget(e,t){t!==this.currentWidget&&t.hide(),this.stackedPanel.insertWidget(e,t),this.tabBar.insertTab(e,t.title),t.node.setAttribute("role","tabpanel");let i=this.tabBar.renderer;if(i instanceof pt.Renderer){let e=i.createTabKey({title:t.title,current:!1,zIndex:0});t.node.setAttribute("aria-labelledby",e)}}_onCurrentChanged(e,t){let{previousIndex:i,previousTitle:n,currentIndex:s,currentTitle:r}=t,o=n?n.owner:null,a=r?r.owner:null;o&&o.hide(),a&&a.show(),this._currentChanged.emit({previousIndex:i,previousWidget:o,currentIndex:s,currentWidget:a}),(O.IS_EDGE||O.IS_IE)&&re.flush()}_onTabAddRequested(e,t){this._addRequested.emit(e)}_onTabActivateRequested(e,t){t.title.owner.activate()}_onTabCloseRequested(e,t){t.title.owner.close()}_onTabMoved(e,t){this.stackedPanel.insertWidget(t.toIndex,t.title.owner)}_onWidgetRemoved(e,t){t.node.removeAttribute("role"),t.node.removeAttribute("aria-labelledby"),this.tabBar.removeTab(t.title)}},"TabPanel"),i);var Bt,Rt;!function(e){function t(e){return n[e]}function i(e){return r[e]}s(t,"orientationFromPlacement"),e.orientationFromPlacement=t,s(i,"directionFromPlacement"),e.directionFromPlacement=i;const n={top:"horizontal",left:"vertical",right:"vertical",bottom:"horizontal"},r={top:"top-to-bottom",left:"left-to-right",right:"right-to-left",bottom:"bottom-to-top"}}(Bt||(Bt={})),(e=>{const t=class _WAConflatableMessage extends se{_wa;constructor(e,t){super(t),this._wa=e}get wa(){return this._wa}conflate(e){return this._wa=e.wa,!0}};s(t,"WAConflatableMessage");let i=t;e.WAConflatableMessage=i;const n=class _WAActivateRequest extends i{constructor(e){super(e,_WAActivateRequest.type)}};s(n,"WAActivateRequest"),r(n,"type","wa-activate-request");let o=n;e.WAActivateRequest=o;const a=class _WALayoutChanged extends i{constructor(e){super(e,_WALayoutChanged.type)}};s(a,"WALayoutChanged"),r(a,"type","wa-layout-changed");let d=a;e.WALayoutChanged=d})(Rt||(Rt={}));const Pt=class _WidgetAdapter extends Se{_owner;_element;_widget;get widget(){return this._widget}_widgetLayout;lparam={};padding=0;_width=0;_height=0;_ext;_closable;constructor(e,t,i={},n=!1,s={}){super(),this._owner=e,this._element=o(this.node),this.addClass("phosphor_WidgetAdapter"),this.title.label="",this.title.closable=!!n,this.title.caption=`Long description for: ${name}`,this._ext=s,this._closable="boolean"==typeof n?{canClose:(e,t)=>n}:n,t instanceof a?this._widget=t.target(this.node):this._widgetLayout=t,this.lparam=i}get inputNode(){return this.node.getElementsByTagName("input")[0]}resizeAndRender(){this._widget&&(o(this.node).style("padding",this.padding+"px").style("width",this._width+"px").style("height",this._height+"px").style("overflow-x",this._ext.overflowX).style("overflow-y",this._ext.overflowY),this._widget.resize({width:this._width-2*this.padding-2,height:this._height-2*this.padding-2}).lazyRender(),this._owner&&re.postMessage(this._owner,new Rt.WALayoutChanged(this)))}onActivateRequest(e){super.onActivateRequest(e),this._widget&&this.resizeAndRender(),this._owner&&re.postMessage(this._owner,new Rt.WAActivateRequest(this))}onResize(e){super.onResize(e),this.node&&null!==this.node.offsetParent&&e.width>=0&&e.height>=0?(this._width=e.width,this._height=e.height,this.resizeAndRender()):this._widgetLayout}onCloseRequest(e){this._closable.canClose(this._widget,this)&&this.dispose()}};s(Pt,"WidgetAdapter");let Wt=Pt;const Ht=class _WidgetAdapterArray extends Array{constructor(e){super(...e)}static create(){return Object.create(_WidgetAdapterArray.prototype)}watchRendered(e,t){if(!t)return;const i=this.map(e=>({wa:e,w:e.widget,rc:e.widget.renderCount()})),n=setInterval(()=>{r()&&(clearInterval(n),t(e))},20);function r(){for(const e of i)if(e.wa.isVisible&&e.rc>=e.w.renderCount())return!1;return!0}s(r,"complete")}};s(Ht,"WidgetAdapterArray");let Nt=Ht;const Ft=class _PRenderer extends bt.Renderer{_owner;constructor(){super()}createTabBar(){const e=super.createTabBar();return e.tabsMovable=this._owner.tabsMovable,e}};s(Ft,"PRenderer");let Ot=Ft;const qt=class _PDockPanel extends bt{_content;_contentMap;constructor(e={}){e.renderer=e.renderer||new Ot,super(e),this._renderer instanceof Ot&&(this._renderer._owner=this),this._content=Nt.create(),this._contentMap={}}appendContent(e){this._content.push(e),this._contentMap[e.widget.id()]=e}removeContent(e){const t=this._content.indexOf(e);t>=0&&this._content.splice(t,1),delete this._contentMap[e.widget.id()],e.dispose()}content(){return this._content}serializeWidget(e){if(e instanceof Wt)try{return{__id:e.widget.id()}}catch(t){return{exception:{message:t.message??"",stack:t.stack??[]}}}return null}deserializeWidget(e){let t=this._contentMap[e.__id];return t||(t=new Wt(void 0,e)),t}serializeITabAreaConfig(e,t){return{...e,widgets:e.widgets.map(e=>t?this.deserializeWidget(e):this.serializeWidget(e))}}serializeISplitAreaConfig(e,t){return{...e,children:e.children.map(e=>this.serializeAreaConfig(e,t))}}serializeAreaConfig(e,t){if(e)switch(e.type){case"tab-area":return this.serializeITabAreaConfig(e,t);case"split-area":return this.serializeISplitAreaConfig(e,t)}}saveLayout(){return{main:this.serializeAreaConfig(super.saveLayout().main,!1)}}restoreLayout(e){return super.restoreLayout({main:this.serializeAreaConfig(e.main,!0)})}};s(qt,"PDockPanel");let Kt=qt;const $t=class _DockPanel extends d{_dock=new Kt({mode:"multiple-document"});constructor(){super(),this._tag="div",this._dock.id="p"+this.id(),re.installMessageHook(this,this)}getWidgetAdapter(e){let t=null;return this._dock.content().some(i=>i.widget===e&&(t=i,!0)),t}addWidget(e,t,i="split-right",n,s,r=8){const o={mode:i,ref:this.getWidgetAdapter(n)},a=new Wt(this,e,{},s);return a.title.label=t,a.padding=r,this._dock.addWidget(a,o),this._dock.appendContent(a),this._dock.tabsMovable=!0,this}removeWidget(e){const t=this.getWidgetAdapter(e);return t&&(e.target(null),this._dock.removeContent(t)),this}isVisible(e){return this.getWidgetAdapter(e).isVisible}widgetAdapters(){return this._dock.content()}widgets(){return this._dock.content().map(e=>e.widget)}layout(e){return arguments.length?(this._dock.restoreLayout(e),this):this._dock.saveLayout()}_layoutObj=null;layoutObj(e){return this._layoutObj=e,this}_pPlaceholder;enter(e,t){super.enter(e,t),this._pPlaceholder=t.append("div"),Se.attach(this._dock,this._pPlaceholder.node())}_prevHideSingleTabs;update(e,t){super.update(e,t),this._pPlaceholder.style("width",this.width()+"px").style("height",this.height()+"px").style("overflow","hidden"),t.select(".lm-Widget").style("width",this._pPlaceholder.node().clientWidth+"px").style("height",this.height()+"px"),this.widgets().forEach(e=>e.render())}exit(e,t){[...this.widgets()].forEach(e=>this.removeWidget(e)),Se.detach(this._dock),super.exit(e,t)}render(e){const t=this;return null!==this._layoutObj&&(this.layout(this._layoutObj),this.layoutObj(null)),super.render(i=>{this._dock.content().watchRendered(this,e),this._dock.update(),setTimeout(()=>{const e=this.element().selectAll(".lm-Widget.lm-TabBar.lm-DockPanel-tabBar");let i=!1;e.each(function(){const e=o(this),n=e.node().childNodes[0].childNodes.length,s=t.hideSingleTabs()&&1===n;s!==e.classed("hide")&&(e.classed("hide",s),i=!0)}),i&&this._dock.fit()},0)})}refit(){this._dock.fit()}messageHook(e,t){return e===this&&this.processMessage(t),!0}_lazyLayoutChanged=l.debounce(async()=>{this.layoutChanged()},1e3);_prevActive;processMessage(e){switch(e.type){case Rt.WAActivateRequest.type:const t=e.wa,i=t.widget;this._prevActive!==i&&(this._prevActive=i,this.childActivation(i,t));break;case Rt.WALayoutChanged.type:this._lazyLayoutChanged()}}active(){return this._prevActive}childActivation(e,t){}layoutChanged(){}};s($t,"DockPanel");let Vt=$t;Vt.prototype._class+=" phosphor_DockPanel",Vt.prototype.publish("hideSingleTabs",!1,"boolean");const Ut=class _SplitPanel extends d{_split;content=Nt.create();constructor(e="vertical"){super(),this._split=new Ue({orientation:e}),this._tag="div",this._split.id="p"+this.id()}getWidgetAdapter(e){let t=null;return this.content.some(i=>i.widget===e&&(t=i,!0)),t}addWidget(e){const t=new Wt(this,e);return this._split.addWidget(t),this.content.push(t),this}relativeSizes(e){return arguments.length?(this._split.setRelativeSizes(e),this):this._split.relativeSizes()}enter(e,t){super.enter(e,t),Se.attach(this._split,e)}update(e,t){super.update(e,t),t.select(".lm-Widget").style("width",this.width()+"px").style("height",this.height()+"px")}exit(e,t){Se.detach(this._split),super.exit(e,t)}render(e){return super.render(t=>{this.content.watchRendered(this,e),this._split.update()})}};s(Ut,"SplitPanel");let jt=Ut;jt.prototype._class+=" phosphor_SplitPanel";const Yt=class _TabPanel extends d{_tab=new Dt({tabPlacement:"top"});content=Nt.create();constructor(){super(),this._tag="div",this._tab.id="p"+this.id()}getWidget(e){if(e instanceof Wt)return e.widget}getWidgetAdapter(e){let t=null;return this.content.some(i=>i.widget===e&&(t=i,!0)),t}addWidget(e,t,i={}){this._prevActive||(this._prevActive=e);const n=new Wt(this,e,void 0,void 0,i);return n.title.label=t,n.padding=8,this._tab.addWidget(n),this.content.push(n),this}removeWidget(e){const t=this.getWidgetAdapter(e);if(t){const i=this.content.indexOf(t);i>=0&&this.content.splice(i,1),e.target(null),t.dispose()}return this}enter(e,t){super.enter(e,t),Se.attach(this._tab,e)}update(e,t){super.update(e,t),t.select(".lm-Widget").style("width",this.width()+"px").style("height",this.height()+"px")}exit(e,t){Se.detach(this._tab),super.exit(e,t)}render(e){return super.render(t=>{this.content.watchRendered(this,e),this._tab.update()})}messageHook(e,t){return e===this&&this.processMessage(t),!0}_prevActive;processMessage(e){if("wa-activate-request"===e.type){const t=e.wa.widget;this._prevActive!==t&&(this._prevActive=t,this.childActivation(t))}}childActivation(e){}active(e){return arguments.length?(this._tab.currentWidget=this.getWidgetAdapter(e),this):this.getWidget(this._tab.currentWidget)}};s(Yt,"TabPanel");let Xt=Yt;Xt.prototype._class+=" phosphor_TabPanel";export{u as BUILD_VERSION,st as CommandPalette,G as CommandRegistry,ht as ContextMenu,Vt as DockPanel,Rt as Msg,h as PKG_NAME,c as PKG_VERSION,jt as SplitPanel,Xt as TabPanel,Wt as WidgetAdapter,Nt as WidgetAdapterArray};
|
|
3
3
|
//# sourceMappingURL=index.js.map
|
|
4
4
|
!function(){"use strict";try{if("undefined"!=typeof document){var e=document.createElement("style");e.appendChild(document.createTextNode('.lm-Widget{box-sizing:border-box;position:relative}.lm-Widget.lm-mod-hidden{display:none!important}.lm-CommandPalette{display:flex;flex-direction:column;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.lm-CommandPalette-search{flex:0 0 auto}.lm-CommandPalette-content{flex:1 1 auto;margin:0;padding:0;min-height:0;overflow:auto;list-style-type:none}.lm-CommandPalette-header{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.lm-CommandPalette-item{display:flex;flex-direction:row}.lm-CommandPalette-itemIcon{flex:0 0 auto}.lm-CommandPalette-itemContent{flex:1 1 auto;overflow:hidden}.lm-CommandPalette-itemShortcut{flex:0 0 auto}.lm-CommandPalette-itemLabel{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.lm-close-icon{border:1px solid transparent;background-color:transparent;position:absolute;z-index:1;right:3%;top:0;bottom:0;margin:auto;padding:7px 0;display:none;vertical-align:middle;outline:0;cursor:pointer}.lm-close-icon:after{content:"X";display:block;width:15px;height:15px;text-align:center;color:#000;font-weight:400;font-size:12px;cursor:pointer}.lm-DockPanel,.lm-DockPanel-widget{z-index:0}.lm-DockPanel-tabBar{z-index:1}.lm-DockPanel-handle{z-index:2}.lm-DockPanel-handle.lm-mod-hidden{display:none!important}.lm-DockPanel-handle:after{position:absolute;top:0;left:0;width:100%;height:100%;content:""}.lm-DockPanel-handle[data-orientation=horizontal]{cursor:ew-resize}.lm-DockPanel-handle[data-orientation=vertical]{cursor:ns-resize}.lm-DockPanel-handle[data-orientation=horizontal]:after{left:50%;min-width:8px;transform:translate(-50%)}.lm-DockPanel-handle[data-orientation=vertical]:after{top:50%;min-height:8px;transform:translateY(-50%)}.lm-DockPanel-overlay{z-index:3;box-sizing:border-box;pointer-events:none}.lm-DockPanel-overlay.lm-mod-hidden{display:none!important}.lm-Menu{z-index:10000;position:absolute;white-space:nowrap;overflow-x:hidden;overflow-y:auto;outline:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.lm-Menu-content{margin:0;padding:0;display:table;list-style-type:none}.lm-Menu-item{display:table-row}.lm-Menu-item.lm-mod-hidden,.lm-Menu-item.lm-mod-collapsed{display:none!important}.lm-Menu-itemIcon,.lm-Menu-itemSubmenuIcon{display:table-cell;text-align:center}.lm-Menu-itemLabel{display:table-cell;text-align:left}.lm-Menu-itemShortcut{display:table-cell;text-align:right}.lm-MenuBar{outline:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.lm-MenuBar-content{margin:0;padding:0;display:flex;flex-direction:row;list-style-type:none}.lm-MenuBar-item{box-sizing:border-box}.lm-MenuBar-itemIcon,.lm-MenuBar-itemLabel{display:inline-block}.lm-ScrollBar{display:flex;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.lm-ScrollBar[data-orientation=horizontal]{flex-direction:row}.lm-ScrollBar[data-orientation=vertical]{flex-direction:column}.lm-ScrollBar-button{box-sizing:border-box;flex:0 0 auto}.lm-ScrollBar-track{box-sizing:border-box;position:relative;overflow:hidden;flex:1 1 auto}.lm-ScrollBar-thumb{box-sizing:border-box;position:absolute}.lm-SplitPanel-child{z-index:0}.lm-SplitPanel-handle{z-index:1}.lm-SplitPanel-handle.lm-mod-hidden{display:none!important}.lm-SplitPanel-handle:after{position:absolute;top:0;left:0;width:100%;height:100%;content:""}.lm-SplitPanel[data-orientation=horizontal]>.lm-SplitPanel-handle{cursor:ew-resize}.lm-SplitPanel[data-orientation=vertical]>.lm-SplitPanel-handle{cursor:ns-resize}.lm-SplitPanel[data-orientation=horizontal]>.lm-SplitPanel-handle:after{left:50%;min-width:8px;transform:translate(-50%)}.lm-SplitPanel[data-orientation=vertical]>.lm-SplitPanel-handle:after{top:50%;min-height:8px;transform:translateY(-50%)}.lm-TabBar{display:flex;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.lm-TabBar[data-orientation=horizontal]{flex-direction:row;align-items:flex-end}.lm-TabBar[data-orientation=vertical]{flex-direction:column;align-items:flex-end}.lm-TabBar-content{margin:0;padding:0;display:flex;flex:1 1 auto;list-style-type:none}.lm-TabBar[data-orientation=horizontal]>.lm-TabBar-content{flex-direction:row}.lm-TabBar[data-orientation=vertical]>.lm-TabBar-content{flex-direction:column}.lm-TabBar-tab{display:flex;flex-direction:row;box-sizing:border-box;overflow:hidden;touch-action:none}.lm-TabBar-tabIcon,.lm-TabBar-tabCloseIcon{flex:0 0 auto}.lm-TabBar-tabLabel{flex:1 1 auto;overflow:hidden;white-space:nowrap}.lm-TabBar-tabInput{-webkit-user-select:all;user-select:all;width:100%;box-sizing:border-box}.lm-TabBar-tab.lm-mod-hidden,.lm-TabBar-addButton.lm-mod-hidden{display:none!important}.lm-TabBar.lm-mod-dragging .lm-TabBar-tab{position:relative}.lm-TabBar.lm-mod-dragging[data-orientation=horizontal] .lm-TabBar-tab{left:0;transition:left .15s ease}.lm-TabBar.lm-mod-dragging[data-orientation=vertical] .lm-TabBar-tab{top:0;transition:top .15s ease}.lm-TabBar.lm-mod-dragging .lm-TabBar-tab.lm-mod-dragging{transition:none}.lm-TabBar-tabLabel .lm-TabBar-tabInput{-webkit-user-select:all;user-select:all;width:100%;box-sizing:border-box;background:inherit}.lm-TabPanel-tabBar{z-index:1}.lm-TabPanel-stackedPanel{z-index:0}.phosphor_WidgetAdapter{border-left:1px solid #C0C0C0;border-right:1px solid #C0C0C0;border-bottom:1px solid #C0C0C0;background:#fff;min-width:64px;min-height:64px}.phosphor_WidgetAdapter.lm-DockPanel-widget{border-top:none;box-shadow:0 -1px #0003,1px 1px 2px #0003}.phosphor_WidgetAdapter.lm-SplitPanel-child{border:none}.lm-DockPanel-overlay{background:#fff9;border:1px dashed black;transition-property:top,left,right,bottom;transition-duration:.15s;transition-timing-function:ease}.lm-TabBar{min-height:24px;max-height:24px}.lm-TabBar-content{min-width:0;min-height:0;align-items:flex-end}.lm-TabPanel-tabBar .lm-TabBar-content{border-bottom:1px solid #C0C0C0}.lm-TabBar-tab{padding:0 10px;background:#e5e5e5;border:1px solid #C0C0C0;border-bottom:none;font:12px Helvetica,Arial,sans-serif;flex:0 1 125px;min-height:20px;max-height:20px;min-width:35px;margin-left:-1px;line-height:20px}.lm-TabBar-tab.lm-mod-current{background:#fff}.lm-TabBar-tab:hover:not(.lm-mod-current){background:#f0f0f0}.lm-TabBar-tab:first-child{margin-left:0}.lm-TabBar-tab.lm-mod-current{min-height:23px;max-height:23px;transform:translateY(1px)}.lm-TabBar-tabIcon,.lm-TabBar-tabLabel,.lm-TabBar-tabCloseIcon{display:inline-block}.lm-TabBar-tab.lm-mod-closable>.lm-TabBar-tabCloseIcon{margin-left:4px}.lm-TabBar-tab.lm-mod-closable>.lm-TabBar-tabCloseIcon:before{content:"";font-family:FontAwesome}.lm-TabBar-tab.lm-mod-drag-image{min-height:23px;max-height:23px;min-width:125px;border:none;box-shadow:1px 1px 2px #0000004d;transform:translate(-40%) translateY(-58%)}.lm-Widget.lm-TabBar.lm-DockPanel-tabBar.hide{min-height:1px!important;max-height:1px!important}.lm-Widget.lm-TabBar.lm-DockPanel-tabBar.hide .lm-TabBar-tab.lm-mod-current{display:none}')),document.head.appendChild(e)}}catch(t){console.error("vite-plugin-css-injected-by-js",t)}}();
|