@questdb/web-console 0.6.4 → 0.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +36 -14
- package/dist/assets/icon-chart.svg +1 -0
- package/dist/assets/icon-line-chart.svg +1 -0
- package/dist/assets/metric-commit-rate.svg +64 -0
- package/dist/assets/metric-read-latency.svg +14 -0
- package/dist/assets/metric-rows-applied.svg +49 -0
- package/dist/assets/metric-write-amplification.svg +39 -0
- package/dist/index.html +1 -1
- package/dist/{qdb.6e7e7.css → qdb.87458.css} +1 -1
- package/dist/qdb.87458.js +1 -0
- package/dist/{vendor.13d50.css → vendor.f2071.css} +1 -0
- package/dist/vendor.f2071.js +2 -0
- package/dist/{vendor.13d50.js.LICENSE.txt → vendor.f2071.js.LICENSE.txt} +22 -0
- package/package.json +15 -7
- package/dist/qdb.6e7e7.js +0 -1
- package/dist/vendor.13d50.js +0 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(()=>{var e,t,n,r={76369:(e,t,n)=>{"use strict";n(88146);var r=n(16896),a=n(97335),o=n(60081),i=n(15512),l=n(4527),s=n(76098);const c=(0,s.iv)(["\n :root {\n --docsearch-primary-color: ",";\n --docsearch-text-color: ",";\n --docsearch-highlight-color: ",";\n --docsearch-muted-color: #a4a6a8;\n --docsearch-container-background: rgba(0, 0, 0, 0.5);\n /* Modal */\n --docsearch-modal-background: ",";\n --docsearch-modal-shadow: inset 1px 1px 0 0 #2c2e40, 0 3px 8px 0 #000309;\n /* Search box */\n --docsearch-searchbox-background: #2d303e;\n --docsearch-searchbox-focus-background: #141725;\n /* Hit */\n --docsearch-hit-color: ",";\n --docsearch-hit-active-color: ",";\n --docsearch-hit-background: ",";\n --docsearch-hit-shadow: none;\n /* Footer */\n --docsearch-footer-background: ",";\n --docsearch-footer-shadow: inset 0 1px 0 0 rgba(73, 76, 106, 0.5),\n 0 -4px 8px 0 rgba(0, 0, 0, 0.2);\n /* Keys */\n --docsearch-key-gradient: linear-gradient(\n -26.5deg,\n #32343e 0%,\n rgb(38, 40, 51) 100%\n );\n --docsearch-key-shadow: inset 0 -2px 0 0 #282d55, inset 0 0 1px 1px #51577d,\n 0 2px 2px 0 rgba(3, 4, 9, 0.3);\n\n // Allotment styling\n --focus-border: ",";\n --separator-border: ",";\n --sash-size: 1rem !important;\n --sash-hover-size: 0.5rem;\n .allotment-module_splitView__L-yRc.allotment-module_separatorBorder__x-rDS.allotment-module_vertical__WSwwa\n > .allotment-module_splitViewContainer__rQnVa\n > .allotment-module_splitViewView__MGZ6O:not(:first-child)::before {\n height: 2px;\n }\n .allotment-module_splitView__L-yRc.allotment-module_separatorBorder__x-rDS.allotment-module_horizontal__7doS8\n > .allotment-module_splitViewContainer__rQnVa\n > .allotment-module_splitViewView__MGZ6O:not(:first-child)::before {\n width: 2px;\n }\n }\n\n .DocSearch-Button {\n height: 3rem;\n border-radius: 0.4rem;\n color: ",";\n border: 1px solid var(--docsearch-searchbox-background);\n }\n\n .DocSearch-Button:hover {\n background: ",";\n box-shadow: none;\n }\n\n .DocSearch-Button-Placeholder {\n font-size: 100%;\n }\n\n .DocSearch-Button .DocSearch-Search-Icon {\n color: ",";\n width: 1.4rem;\n height: 1.4rem;\n }\n\n .DocSearch-Button:hover .DocSearch-Search-Icon {\n color: ",";\n }\n\n .DocSearch-Button-Key {\n top: 0;\n padding: 0 4px;\n background: ",";\n border-radius: 2px;\n box-shadow: none;\n color: ",";\n font-size: 1.2rem;\n font-style: inherit;\n font-family: inherit;\n font-weight: 600;\n }\n\n .DocSearch-Hit-title {\n font-size: 100%;\n overflow: hidden;\n }\n\n .DocSearch-Logo .cls-1,\n .DocSearch-Logo .cls-2 {\n fill: "," !important;\n }\n"],(({theme:e})=>e.color.pink),(({theme:e})=>e.color.foreground),(({theme:e})=>e.color.pink),(({theme:e})=>e.color.background),(({theme:e})=>e.color.foreground),(({theme:e})=>e.color.foreground),(({theme:e})=>e.color.backgroundLighter),(({theme:e})=>e.color.background),(({theme:e})=>e.color.purple),(({theme:e})=>e.color.backgroundDarker),(({theme:e})=>e.color.foreground),(({theme:e})=>e.color.comment),(({theme:e})=>e.color.foreground),(({theme:e})=>e.color.foreground),(({theme:e})=>e.color.gray2),(({theme:e})=>e.color.black),(({theme:e})=>e.color.foreground)),d=(0,s.vJ)(["\n ","\n\n body {\n color: ",";\n }\n"],c,(({theme:e})=>e.color.foreground)),u=(0,s.F4)(["\n from {\n transform: rotate(0deg);\n }\n\n to {\n transform: rotate(360deg);\n }\n"]),m=(0,s.iv)(["\n animation: "," 1.5s cubic-bezier(0.62, 0.28, 0.23, 0.99) infinite;\n"],u);var g=n(43176),p=n(82529);const f=()=>Intl.DateTimeFormat().resolvedOptions().timeZone,h=(e,t)=>t?(0,g.WU)(new p.N9(e,f()),t):new p.N9(e,f()).toISOString();let b=function(e){return e.MAIN="telemetry",e.CONFIG="telemetry_config",e.WAL="sys.telemetry_wal",e}({});const E="https://fara.questdb.io",y="26px";var w=n(32981),v=n(50307),C=n(95886),_=n(17517),x=n(63137);const S=(e,t={},n=!0)=>{const r="/"===e[0]?"":"/",a=n?`${window.location.origin}${r}${e}`:e;return(0,v.U)(a,t).pipe((0,C.w)((e=>e.ok?e.headers.get("content-type")?.startsWith("application/json")?e.json():Promise.resolve({}):(0,w.of)({error:!0,message:e.statusText}))),(0,_.K)((e=>(console.error(e),(0,w.of)({error:!0,message:e.message})))),(0,x.U)((e=>e.error?e:{data:e,error:!1})))};let T=function(e){return e.DDL="ddl",e.DML="dml",e.DQL="dql",e.ERROR="error",e.NOTICE="notice",e}({}),k=function(e){return e.DISK_FULL="DISK FULL",e.TOO_MANY_OPEN_FILES="TOO MANY OPEN FILES",e.OUT_OF_MMAP_AREAS="OUT OF MMAP AREAS",e.OUT_OF_MEMORY="OUT OF MEMORY",e.UNSUPPORTED_FILE_SYSTEM="UNSUPPORTED FILE SYSTEM",e}({}),N=function(e){return e.EXISTS="Exists",e.DOES_NOT_EXIST="Does not exist",e.RESERVED_NAME="Reserved name",e}({});var O=n(61318);const R=new class{constructor(){this.emitter=new O.Z}publish(e,t){this.emitter.emit(e,t)}subscribe(e,t){this.emitter.on(e,t)}unsubscribe(e,t){this.emitter.off(e,t)}};let I=function(e){return e.MSG_ACTIVE_SIDEBAR="active.panel",e.MSG_EDITOR_FOCUS="editor.focus",e.MSG_EDITOR_INSERT_COLUMN="editor.insert.column",e.GRID_FOCUS="grid.focus",e.MSG_CHART_DRAW="chart.draw",e.MSG_QUERY_CANCEL="query.in.cancel",e.MSG_QUERY_DATASET="query.out.dataset",e.MSG_QUERY_ERROR="query.out.error",e.MSG_QUERY_EXEC="query.in.exec",e.MSG_QUERY_FIND_N_EXEC="query.build.execute",e.MSG_QUERY_OK="query.out.ok",e.MSG_QUERY_RUNNING="query.out.running",e.MSG_QUERY_SCHEMA="query.out.schema",e.MSG_CONNECTION_OK="query.connection.ok",e.MSG_CONNECTION_ERROR="query.connection.error",e.MSG_CONNECTION_UNAUTHORIZED="query.connection.unauthorized",e.MSG_CONNECTION_FORBIDDEN="query.connection.forbidden",e.REACT_READY="react.ready",e.TAB_FOCUS="tab.focus",e.TAB_BLUR="tab.blur",e.METRICS_REFRESH_DATA="metrics.refresh.data",e}({}),P=function(e){return e.AUTH_PAYLOAD="AUTH_PAYLOAD",e.AUTH_REFRESH_TOKEN="AUTH_REFRESH_TOKEN",e.OAUTH_REDIRECT_COUNT="oauth.redirect.count",e.PKCE_CODE_VERIFIER="pkce.code.verifier",e.QUERY_TEXT="query.text",e.EDITOR_LINE="editor.line",e.EDITOR_COL="editor.col",e.EXAMPLE_QUERIES_VISITED="editor.exampleQueriesVisited",e.EDITOR_SPLITTER_BASIS="splitter.editor.basis",e.RESULTS_SPLITTER_BASIS="splitter.results.basis",e.REST_TOKEN="rest.token",e.BASIC_AUTH_HEADER="basic.auth.header",e.AUTO_REFRESH_TABLES="auto.refresh.tables",e}({});class A{_controllers=[];commonHeaders={};static refreshTokenPending=!1;static numOfPendingQueries=0;refreshTokenMethod=async()=>({});tokenNeedsRefresh(){const e=localStorage.getItem(P.AUTH_PAYLOAD),t=localStorage.getItem(P.AUTH_REFRESH_TOKEN);if(e){const n=JSON.parse(e);return new Date(n.expires_at).getTime()-(new Date).getTime()<3e4&&""!==t}}setCommonHeaders(e){this.commonHeaders=e}refreshAuthToken=async()=>{A.refreshTokenPending=!0,await new Promise((e=>{const t=setInterval((async()=>{if(0===A.numOfPendingQueries){clearInterval(t);const n=await this.refreshTokenMethod();return n.access_token&&this.setCommonHeaders({...this.commonHeaders,Authorization:`Bearer ${n.groups_encoded_in_token?n.id_token:n.access_token}`}),A.refreshTokenPending=!1,e(!0)}}),50)}))};static encodeParams=e=>Object.keys(e).filter((t=>void 0!==e[t])).map((t=>`${encodeURIComponent(t)}=${encodeURIComponent(e[t])}`)).join("&");abort=()=>{this._controllers.forEach((e=>{e.abort()})),this._controllers=[]};static transformQueryRawResult=e=>{if(e.type===T.DQL){const{columns:t,count:n,dataset:r,timings:a}=e,o=r.map((e=>e.reduce(((e,n,r)=>({...e,[t[r].name]:n})),{})));return{columns:t,count:n,data:o,timings:a,type:T.DQL,...e.explain?{explain:e.explain}:{}}}return e};async query(e,t){const n=await this.queryRaw(e,t);return A.transformQueryRawResult(n)}async mockQueryResult(e){return A.transformQueryRawResult(e)}async queryRaw(e,t){const n=new AbortController,r={count:!0,src:"con",query:e,timings:!0,version:"2",...t};let a;this._controllers.push(n),this.tokenNeedsRefresh()&&!A.refreshTokenPending&&await this.refreshAuthToken(),A.refreshTokenPending&&await new Promise((e=>{const t=setInterval((()=>{if(!A.refreshTokenPending)return clearInterval(t),e(!0)}),50)})),A.numOfPendingQueries++;const o=new Date;try{a=await fetch(`exec?${A.encodeParams(r)}`,{signal:n.signal,headers:this.commonHeaders})}catch(t){const n={position:-1,query:e,type:T.ERROR},r={...n,error:"An error occured, please try again"};return t instanceof DOMException?Promise.reject({...n,error:20===t.code?"Cancelled by user":JSON.stringify(t).toString()}):(R.publish(I.MSG_CONNECTION_ERROR,r),Promise.reject(r))}finally{const e=this._controllers.indexOf(n);e>=0&&this._controllers.splice(e,1),A.numOfPendingQueries--}if(a.ok||400===a.status||a.ok&&403===a.status){const t=1e6*((new Date).getTime()-o.getTime()),n=await a.json();return R.publish(I.MSG_CONNECTION_OK),403===a.status&&R.publish(I.MSG_CONNECTION_FORBIDDEN,n),n.ddl?{query:e,type:T.DDL}:n.dml?{query:e,type:T.DML}:n.error?Promise.reject({...n,type:T.ERROR}):n.notice?{...n,type:T.NOTICE}:{...n,timings:{...n.timings,fetch:t},type:T.DQL}}const i={status:a.status,error:a.statusText};if((e=>408===e.status||e.status>=500)(a)&&(i.error=`QuestDB is not reachable [${a.status}]`,i.position=-1,i.query=e,i.type=T.ERROR,R.publish(I.MSG_CONNECTION_ERROR,i)),401===a.status&&(i.error="Unauthorized",R.publish(I.MSG_CONNECTION_UNAUTHORIZED,i)),403===a.status){const e=(await a.text()).trim();if(e.startsWith("{")){const t=JSON.parse(e);i.error=t.error}else i.error=e;R.publish(I.MSG_CONNECTION_FORBIDDEN,i)}return Promise.reject(i)}async showTables(){const e=await this.query("tables();");return e.type===T.DQL?{...e,data:e.data.slice().sort(((e,t)=>{const n=e.table_name,r=t.table_name;return n>r?1:n<r?-1:0}))}:e}async showColumns(e){return await this.query(`SHOW COLUMNS FROM '${e}';`)}async checkCSVFile(e){try{const t=await fetch(`chk?${A.encodeParams({f:"json",j:e,version:"2"})}`,{headers:this.commonHeaders});return await t.json()}catch(e){throw e}}async uploadCSVFile({file:e,name:t,settings:n,schema:r,partitionBy:a,timestamp:o,onProgress:i}){const l=new FormData;r&&l.append("schema",JSON.stringify(r)),l.append("data",e);const s={fmt:"json",name:t,...a?{partitionBy:a}:{},...o?{timestamp:o}:{},...n?Object.keys(n).reduce(((e,t)=>({...e,[t]:n[t].toString()})),{}):{}};return new Promise(((e,t)=>{let n=new XMLHttpRequest;n.open("POST",`imp?${new URLSearchParams(s)}`),Object.keys(this.commonHeaders).forEach((e=>{n.setRequestHeader(e,this.commonHeaders[e])})),n.upload.addEventListener("progress",(e=>{let t=e.loaded/e.total*100;i(t)})),n.onload=r=>{200===n.status?e(JSON.parse(n.response)):t({status:n.status,statusText:n.statusText})},n.onerror=()=>{t({status:n.status,statusText:n.statusText})},n.send(l)}))}async exportQueryToCsv(e){try{const t=await fetch(`exp?${A.encodeParams({query:e,version:"2"})}`,{headers:this.commonHeaders}),n=await t.blob(),r=t.headers.get("Content-Disposition")?.split("=")[1],a=window.URL.createObjectURL(n),o=document.createElement("a");o.href=a,o.download=r?r.replaceAll('"',""):`questdb-query-${(new Date).getTime()}.csv`,o.click(),window.URL.revokeObjectURL(a)}catch(e){throw e}}async getLatestRelease(){try{const e=await fetch("https://github-api.questdb.io/github/latest");return await e.json()}catch(e){return Promise.reject(e)}}async sendFeedback({email:e,message:t,telemetryConfig:n}){try{const r=await fetch("https://cloud.questdb.com/api/feedback",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({email:e,message:t,telemetryConfig:n,category:"web-console"})});return await r.json()}catch(e){throw e}}async getNews({category:e,telemetryConfig:t}){try{const n=await fetch(`https://cloud.questdb.com/api/news?category=${e}&telemetryUserId=${t?.id}`);return await n.json()}catch(e){return Promise.reject(e)}}}const L=(e,t,n="...")=>{if(e.length<=t)return e;const r=Math.floor(e.length/2),a=e.length-t+n.length;return e.slice(0,r-Math.floor(a/2))+n+e.slice(r+Math.ceil(a/2))},D=e=>t=>t?t.theme.color[e]:void 0;var M=n(57188);const B=(e,t)=>(0,M.WU)(e,{language:"postgresql",...t}),F={isMacintosh:!1,isWindows:!1,isIOS:!1,isLinux:!1};"object"==typeof navigator&&(F.isMacintosh=-1!==navigator.userAgent.indexOf("Macintosh"),F.isWindows=navigator.userAgent.indexOf("Windows")>=0,F.isIOS=(navigator.userAgent.indexOf("Macintosh")>=0||navigator.userAgent.indexOf("iPad")>=0||navigator.userAgent.indexOf("iPhone")>=0)&&!!navigator.maxTouchPoints&&navigator.maxTouchPoints>0);const z=()=>navigator.languages&&navigator.languages.length?navigator.languages[0]:navigator.language;var Z=n(87905),U=n(73751),q=n(68522),j=n(47761),H=n(85412),V=n(666),$=n(9576),G=n(32629);const W=e=>({"en-GB":Z.e,"en-US":U._,"fr-FR":q.fr,"es-ES":j.es,"de-DE":H.de,"ja-JP":V.ja,"ko-KR":$.ko,"zh-CN":G.U}[e]||U._),Q=e=>Array.from(new Set(e));let Y=function(e){return e[e.SLOW=1500]="SLOW",e[e.REG=200]="REG",e[e.FAST=70]="FAST",e}({});const K=(e,t)=>(0,s.vJ)(["\n .","-enter {\n opacity: 0;\n }\n\n .","-enter-active {\n opacity: 1;\n transition: all ","ms;\n }\n\n .","-exit {\n opacity: 1;\n }\n\n .","-exit-active {\n opacity: 0;\n transition: all ","ms;\n }\n"],e,e,t,e,e,t),X=(0,s.iv)(["\n .collapse-enter {\n max-height: 0;\n }\n\n .collapse-enter-active {\n max-height: ","px;\n transition: all ","ms;\n }\n\n .collapse-exit {\n max-height: ","px;\n }\n\n .collapse-exit-active {\n max-height: 0;\n transition: all ","ms;\n }\n"],(({_height:e})=>e),(({duration:e})=>e||Y.REG),(({_height:e})=>e),(({duration:e})=>e||Y.REG)),J=(Y.FAST,Y.FAST,(0,s.iv)(["\n transition: all ","ms cubic-bezier(0, 0, 0.38, 0.9);\n"],Y.FAST));function ee(){return ee=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},ee.apply(this,arguments)}const te={fontSize:"md",size:"md",type:"button"},ne=({size:e})=>{switch(e){case"sm":return"2rem";case"md":default:return"3rem";case"lg":return"5rem"}},re=(0,s.iv)(["\n display: flex;\n height: ",";\n padding: 0 1rem;\n align-items: center;\n justify-content: center;\n background: transparent;\n border-radius: 4px;\n border: 1px solid transparent;\n outline: 0;\n font-size: ",";\n font-weight: 400;\n line-height: 1.15;\n cursor: pointer;\n ",";\n\n svg + span {\n margin-left: 0.5rem;\n }\n"],ne,(({fontSize:e,theme:t})=>t.fontSize[e]),J),ae=(e,t,n)=>(0,s.iv)(["\n background: ",";\n color: ",";\n border-color: ",";\n\n &:focus {\n box-shadow: inset 0 0 0 1px ",";\n }\n\n &:hover:not([disabled]) {\n background: ",";\n color: ",";\n border-color: ",";\n }\n\n &:active:not([disabled]) {\n background: ",";\n filter: brightness(90%);\n }\n\n &:disabled {\n cursor: not-allowed;\n background: ",";\n color: ",";\n border-color: ",";\n }\n "],D(e.background),D(e.color),D(e.border),D("foreground"),D(t.background),D(t.color),D(t.border),D(t.background),D(n.background),D(n.color),D(n.border)),oe=s.ZP.button.withConfig({displayName:"Button__PrimaryButtonStyled"})(["\n ",";\n ",";\n"],re,ae({background:"selection",border:"selection",color:"foreground"},{background:"comment",border:"selection",color:"foreground"},{background:"selection",border:"gray1",color:"gray1"})),ie=(e,t)=>r.createElement(oe,ee({},te,e,{ref:t}));(0,r.forwardRef)(ie).defaultProps=te;const le=s.ZP.button.withConfig({displayName:"Button__SecondaryButtonStyled"})(["\n ",";\n ",";\n"],re,ae({background:"backgroundLighter",border:"backgroundLighter",color:"foreground"},{background:"comment",border:"comment",color:"foreground"},{background:"gray1",border:"gray1",color:"background"})),se=(e,t)=>r.createElement(le,ee({},te,e,{ref:t})),ce=(0,r.forwardRef)(se);ce.defaultProps=te;const de=s.ZP.button.withConfig({displayName:"Button__SuccessButtonStyled"})(["\n ",";\n ",";\n"],re,ae({background:"selection",border:"selection",color:"green"},{background:"comment",border:"selection",color:"green"},{background:"selection",border:"gray1",color:"gray1"})),ue=(e,t)=>r.createElement(de,ee({},te,e,{ref:t}));(0,r.forwardRef)(ue).defaultProps=te;const me=s.ZP.button.withConfig({displayName:"Button__ErrorButtonStyled"})(["\n ",";\n ",";\n"],re,ae({background:"selection",border:"selection",color:"red"},{background:"comment",border:"selection",color:"red"},{background:"selection",border:"gray1",color:"gray1"})),ge=(e,t)=>r.createElement(me,ee({},te,e,{ref:t}));(0,r.forwardRef)(ge).defaultProps=te;const pe=s.ZP.button.withConfig({displayName:"Button__TransparentButtonStyled"})(["\n ",";\n ",";\n"],re,ae({background:"transparent",border:"transparent",color:"foreground"},{background:"comment",border:"transparent",color:"foreground"},{background:"selection",border:"gray1",color:"gray1"})),fe=(e,t)=>r.createElement(pe,ee({},te,e,{ref:t})),he=(0,r.forwardRef)(fe);he.defaultProps=te;const be=s.ZP.div.withConfig({displayName:"CenteredLayout__Root"})(["\n display: grid;\n place-items: center;\n height: 100vh;\n background: ",";\n color: ",";\n"],(({theme:e})=>e.color.backgroundDarker),(({theme:e})=>e.color.foreground)),Ee=({children:e})=>r.createElement(be,null,e);var ye=n(67692),we=n(92941),ve=n(44947),Ce=n(38638);const _e=s.ZP.div.withConfig({displayName:"group-header__GroupHeader"})(["\n display: flex;\n justify-content: center;\n width: 100%;\n padding: 2rem 0;\n border-bottom: 0.1rem "," solid;\n"],(({theme:e})=>e.color.selection)),xe=s.ZP.div.withConfig({displayName:"group-item__GroupItem"})(["\n display: flex;\n ",";\n padding: 2rem;\n\n &:not(:last-child) {\n border-bottom: 0.1rem "," solid;\n }\n\n &:last-child {\n border-bottom-left-radius: ",";\n border-bottom-right-radius: ",";\n }\n\n ","\n"],(({direction:e})=>"column"===e?"\n flex-direction: column;\n align-items: flex-start;\n flex-wrap: wrap;\n width: 100%;\n ":"\n justify-content: space-between;\n flex-wrap: initial;\n "),(({theme:e})=>e.color.backgroundLighter),(({theme:e})=>e.borderRadius),(({theme:e})=>e.borderRadius),(({theme:e,withLink:t})=>t&&`\n &:hover {\n cursor: pointer;\n background-color: ${e.color.black};\n }\n `)),Se=s.ZP.div.attrs((e=>({flexDirection:e.flexDirection||"row",gap:e.gap||"1rem",margin:e.margin||"0",align:e.align||"center",justifyContent:e.justifyContent||"flex-start"}))).withConfig({displayName:"Box"})(["\n display: flex;\n flex-direction: ",";\n gap: ",";\n margin: ",";\n align-items: ",";\n justify-content: ",";\n"],(({flexDirection:e})=>e),(({gap:e})=>e),(({margin:e})=>e),(({align:e})=>e),(({justifyContent:e})=>e)),Te=(0,s.ZP)(Se).attrs({gap:"1rem",justifyContent:"flex-end",align:"center"}).withConfig({displayName:"actions__Actions"})(["\n width: 100%;\n padding-left: 2rem;\n padding-right: 2rem;\n height: 7rem;\n"]),ke=(0,s.ZP)(Se).attrs({gap:"0",flexDirection:"column"}).withConfig({displayName:"content-wrapper__ContentWrapper"})(["\n width: 100%;\n /*\n 4.5rem = top bar\n 4.5rem = drawer title\n 4rem = footer\n */\n height: ",";\n form {\n width: 100%;\n height: 100%;\n }\n"],(({mode:e})=>"side"===e?"calc(100vh - 4.5rem - 4.5rem - 4rem)":"calc(100vh - 4.5rem)")),Ne=s.ZP.div.withConfig({displayName:"PaneMenu"})(["\n position: relative;\n display: flex;\n justify-content: space-between;\n height: 4.5rem;\n padding: 0 1rem;\n align-items: center;\n background: ",";\n border-top: 1px solid transparent;\n"],D("backgroundLighter"));function Oe(){return Oe=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Oe.apply(this,arguments)}const Re=(0,s.iv)(["\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n"]),Ie=(0,s.iv)(["\n color: ",";\n font-family: ",";\n font-size: ",";\n font-style: ",";\n font-weight: ",";\n text-transform: ",";\n ",";\n ",";\n"],(e=>e.color?D(e.color):"inherit"),(({code:e,theme:t})=>e&&t.fontMonospace),(({size:e,theme:t})=>e?t.fontSize[e]:"inherit"),(({_style:e})=>e??"inherit"),(({weight:e})=>e),(({transform:e})=>e),(({align:e})=>e?`text-align: ${e}`:""),(({ellipsis:e})=>e&&Re)),Pe=s.ZP.label.withConfig({displayName:"Text__TextStyled"})(["\n ",";\n"],Ie),Ae=({type:e,...t})=>r.createElement(Pe,Oe({as:e},t,{type:e}));Ae.defaultProps={color:"black",type:"span"};const Le=s.ZP.div.withConfig({displayName:"header__Root"})(["\n position: relative;\n display: flex;\n justify-content: space-between;\n height: 4.5rem;\n padding: 0 1rem;\n align-items: center;\n background: ",";\n border-top: 1px solid transparent;\n z-index: 5;\n\n ","\n"],D("backgroundLighter"),(({shadow:e})=>e&&"\n box-shadow: 0 2px 10px 0 rgba(23, 23, 23, 0.65)\n ")),De=(0,s.ZP)(Ae).withConfig({displayName:"header__Title"})(["\n display: flex;\n align-items: center;\n padding-left: 1rem;\n font-size: 1.8rem;\n font-weight: 600;\n"]),Me=({children:e})=>e;function Be(){return Be=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Be.apply(this,arguments)}Me.Header=({title:e,afterTitle:t,shadow:n})=>r.createElement(Le,{shadow:n},r.createElement(De,{color:"foreground"},e),t);const Fe=(0,s.iv)(["\n @keyframes animateShow {\n from {\n transform: translateX(100%);\n }\n to {\n transform: translateX(0);\n }\n }\n"]),ze=(0,s.iv)(["\n @keyframes animateHide {\n from {\n transform: translateX(0);\n }\n to {\n transform: translateX(100%);\n }\n }\n"]),Ze=(0,s.ZP)(ye.VY).attrs({forceMount:!0}).withConfig({displayName:"Drawer__DrawerContent"})(["\n background-color: ",";\n border-left: 0.2rem "," solid;\n position: ",";\n top: 0;\n right: 0;\n width: ",";\n max-width: 100%;\n height: 100%;\n overflow: auto;\n z-index: 101;\n\n ","\n ","\n\n ",";\n"],(({theme:e})=>e.color.backgroundLighter),(({theme:e})=>e.color.background),(({mode:e})=>"modal"===e?"fixed":"inherit"),(({width:e})=>e??"50rem"),Fe,ze,(({mode:e})=>"modal"===e&&'\n &[data-state="open"] {\n animation: animateShow 0.5s cubic-bezier(0.16, 1, 0.3, 1);\n }\n\n &[data-state="closed"] {\n animation: animateHide 0.5s cubic-bezier(0.16, 1, 0.3, 1);\n }\n\n &:focus {\n outline: none;\n }\n ')),Ue=(0,s.ZP)(ye.x8).attrs({"aria-label":"Close",asChild:!0}).withConfig({displayName:"Drawer__StyledClose"})(["\n appearance: initial;\n margin-left: auto;\n cursor: pointer;\n color: ",";\n"],(({theme:e})=>e.color.foreground)),qe=({mode:e="modal",children:t,trigger:n,title:a,afterTitle:o,width:i,open:l,onOpenChange:s,onDismiss:c,withCloseButton:d,closeOnOverlayClick:u=!0,closeOnEscape:m=!0})=>r.createElement(ye.fC,{onOpenChange:s,open:l,modal:"modal"===e},r.createElement(ye.xz,{asChild:!0},r.createElement(we.A,null,n)),r.createElement(ye.h_,"side"===e&&{container:document.getElementById("side-panel-right")},"modal"===e&&r.createElement(we.A,null,r.createElement(ve.a,{primitive:ye.aV})),r.createElement(Ze,Be({mode:e,width:i},c&&{onEscapeKeyDown:m?c:void 0,onInteractOutside:u?c:void 0},"side"===e&&{onInteractOutside:e=>e.preventDefault(),onEscapeKeyDown:e=>e.preventDefault(),onPointerDownOutside:e=>e.preventDefault()}),(a||d)&&r.createElement(Me.Header,Be({title:a,afterTitle:o},d&&{afterTitle:r.createElement(Ue,c?{onClick:c}:{},r.createElement(Ce.x,{size:"18px"}))})),t)));qe.GroupHeader=_e,qe.GroupItem=xe,qe.Actions=Te,qe.ContentWrapper=ke;const je=(e,t)=>{const[n,a]=(0,r.useState)(!1),o=n=>{n.key===e&&(t?.preventDefault&&n.preventDefault(),a(!0))},i=n=>{n.key===e&&(t?.preventDefault&&n.preventDefault(),a(!1))};return(0,r.useEffect)((()=>(window.addEventListener("keydown",o),window.addEventListener("keyup",i),()=>{window.removeEventListener("keydown",o),window.removeEventListener("keyup",i)}))),n},He=(e,t)=>{(0,r.useEffect)((()=>{const n=Object.entries(t).reduce(((e,[t,n])=>`${e} ${t}: ${n};`),"z-index: 1000;");e.setAttribute("style",n)}),[e,t])};var Ve=n(31095),$e=function(e){return e[e.SM=767]="SM",e}($e||{});const Ge=(0,r.createContext)({sm:window.innerWidth<=$e.SM}),We=({children:e})=>{const[t,n]=(0,r.useState)({sm:window.innerWidth<=$e.SM}),[a,i]=(0,r.useState)();return(0,r.useEffect)((()=>{const e=(0,Ve.P)(16,(()=>{i({sm:window.innerWidth<=$e.SM})}));return window.addEventListener("resize",e),()=>{window.removeEventListener("resize",e)}}),[]),(0,r.useEffect)((()=>{a&&!(0,o.wU)(a,t)&&n(a)}),[t,a]),r.createElement(Ge.Provider,{value:t},e)},Qe=()=>(0,r.useContext)(Ge),Ye=(e,t,n,a)=>{(0,r.useEffect)((()=>{if(clearTimeout(n.current),t&&!document.body.contains(e))return document.body.appendChild(e),void(null!=a&&a());t||(n.current=window.setTimeout((()=>{document.body.contains(e)&&document.body.removeChild(e)}),Y.REG))}),[t,e,n,a])},Ke=({icon:e,tooltip:t,placement:n,textAlign:a})=>r.createElement(ct,{placement:n,trigger:e},r.createElement(kt,{textAlign:a},t));function Xe(){return Xe=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Xe.apply(this,arguments)}const Je={size:"md",type:"text"},et=s.ZP.input.withConfig({displayName:"Input__InputStyled"})(["\n height: ",";\n border: none;\n padding: 0 1rem;\n line-height: 1.5;\n outline: none;\n background: ",";\n border-radius: 4px;\n color: ",";\n\n &:focus {\n box-shadow: inset 0 0 0 1px ",";\n }\n\n &::placeholder {\n color: ",";\n }\n"],ne,D("selection"),D("foreground"),D("foreground"),D("gray2")),tt=(e,t)=>r.createElement(et,Xe({},Je,e,{ref:t}));(0,r.forwardRef)(tt).defaultProps=Je;const nt=Ae.defaultProps,rt=s.ZP.a.withConfig({displayName:"Link__Wrapper"})(["\n ",";\n text-decoration: none;\n line-height: 1;\n\n &:hover:not([disabled]),\n &:focus:not([disabled]) {\n color: ",";\n }\n"],Ie,(e=>e.hoverColor?D(e.hoverColor):"inherit")),at=e=>r.createElement(rt,e);at.defaultProps=nt;const ot=s.ZP.div.withConfig({displayName:"PaneContent"})(["\n display: flex;\n flex-direction: column;\n flex: 1;\n background: ",";\n overflow: auto;\n"],D("backgroundLighter")),it=s.ZP.div.withConfig({displayName:"PaneWrapper"})(["\n display: flex;\n flex-direction: column;\n flex: 1;\n"]);var lt=n(46317),st=n(1264);const ct=({children:e,delay:t,modifiers:n,placement:o,trigger:i})=>{const[l]=(0,r.useState)(document.createElement("div")),s=(0,r.useRef)(),c=(0,r.useRef)(),[d,u]=(0,r.useState)(!1),[m,g]=(0,r.useState)(null),[p,f]=(0,r.useState)(null),{attributes:h,styles:b,forceUpdate:E}=(0,lt.D)(m,l,{modifiers:[{name:"arrow",options:{element:p}},{name:"offset",options:{offset:[0,6]}},{name:"eventListeners",enabled:d},...n],placement:o}),y=(0,r.useCallback)((()=>{t?s.current=window.setTimeout((()=>{u(!0)}),t):u(!0)}),[t]),w=(0,r.useCallback)((()=>{clearTimeout(s.current),u(!1)}),[]);return(0,r.useEffect)((()=>()=>{clearTimeout(c.current),clearTimeout(s.current),document.body.contains(l)&&document.body.removeChild(l)}),[l]),He(l,b.popper),Ye(l,d,c,E),r.createElement(r.Fragment,null,r.isValidElement(i)&&r.cloneElement(i,{onMouseEnter:y,onMouseLeave:w,ref:g}),a.createPortal(r.createElement(st.Z,{classNames:"fade-reg",in:d,timeout:Y.REG,unmountOnExit:!0},r.isValidElement(e)&&r.cloneElement(e,{...h.popper,arrow:{setArrowElement:f,styles:b.arrow}})),l))};ct.defaultProps={modifiers:[],placement:"auto"};const dt=({active:e,children:t,modifiers:n,onToggle:o,placement:i,trigger:l})=>{const[s]=(0,r.useState)(document.createElement("div")),c=(0,r.useRef)(),[d,u]=(0,r.useState)(!1),[m,g]=(0,r.useState)(null),{attributes:p,styles:f}=(0,lt.D)(m,s,{modifiers:[...n,{name:"eventListeners",enabled:d}],placement:i}),h=(0,r.useCallback)((()=>{const e=!d;u(e),o&&o(e)}),[d,o]),b=(0,r.useCallback)((e=>{const t=e.target;s.contains(t)||m?.contains(t)||(u(!1),o&&o(!1))}),[s,o,m]);return He(s,f.popper),Ye(s,d,c),(0,r.useEffect)((()=>{u(void 0===e?d||!1:e)}),[e,d]),(0,r.useEffect)((()=>(document.addEventListener("mousedown",b),document.addEventListener("touchstart",b),()=>{clearTimeout(c.current),document.removeEventListener("mousedown",b),document.removeEventListener("touchstart",b),document.body.contains(s)&&document.body.removeChild(s)})),[s,b]),r.createElement(r.Fragment,null,r.isValidElement(l)&&r.cloneElement(l,{onClick:h,ref:g}),r.isValidElement(t)&&r.createElement(st.Z,{classNames:"fade-reg",in:d,timeout:Y.REG,unmountOnExit:!0},r.createElement(r.Fragment,null,a.createPortal(r.cloneElement(t,{...p.popper}),s))))};dt.defaultProps={modifiers:[],placement:"auto"};var ut=n(63245);n(97655);let mt=function(e){return e.SUCCESS="success",e.INFO="info",e.WARNING="warning",e.ERROR="error",e}({});const gt={baseFontSize:"10px",color:{black:"#191a21",black70:"rgba(25, 26, 33, 0.7)",black40:"rgba(25, 26, 33, 0.4)",black20:"rgba(25, 26, 33, 0.2)",gray1:"#585858",gray2:"#bbbbbb",backgroundDarker:"#21222c",backgroundLighter:"#282a36",background:"#21222c",foreground:"#f8f8f2",selection:"#44475a",selectionDarker:"#333544",comment:"#6272a4",red:"#ff5555",orange:"#ffb86c",yellow:"#f1fa8c",green:"#50fa7b",purple:"#bd93f9",cyan:"#8be9fd",pink:"#d14671",pink50:"rgba(209, 70, 113, 0.25)",pinkDarker:"#be2f5b",pinkLighter:"#ff79c6",transparent:"transparent",white:"#fafafa",inherit:"inherit",tooltipBackground:"#6272a4",graphLegend:"#6e7078",offWhite:"#bdbdbd"},font:'"Open Sans", -apple-system, BlinkMacSystemFont, Helvetica, Roboto, sans-serif',fontEmoji:'"apple color emoji", "segoe ui emoji", "android emoji", "emojisymbols", "emojione mozilla", "twemoji mozilla", "segoe ui symbol", "noto color emoji"',fontMonospace:'SFMono-Regular, Menlo, Monaco, Consolas,"Liberation Mono", "Courier New", monospace',fontSize:{ms:"1rem",xs:"1.2rem",sm:"1.3rem",md:"1.4rem",lg:"1.5rem",xl:"1.7rem",hg:"3rem"},borderRadius:"0.8rem"};n(85383);const pt=ut.Am,ft=e=>{const t={autoClose:3e3,draggable:!1,position:"top-right",theme:"dark",transition:ut.Mi,...e};return r.createElement(ut.Ix,t)};function ht(){return ht=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},ht.apply(this,arguments)}const bt={direction:"bottom",fontSize:"md",selected:!1,size:"md",type:"button",readOnly:!1},Et=(0,s.iv)(["\n display: flex;\n align-items: center;\n justify-content: center;\n background: ",";\n border: none;\n outline: 0;\n font-size: ",";\n font-weight: 400;\n line-height: 1.15;\n width: 3.5rem;\n height: 3.5rem;\n border-radius: 0.4rem;\n cursor: pointer;\n ",";\n ",";\n color: ",";\n\n svg + span,\n img + span {\n margin-left: 1rem;\n }\n"],(({selected:e,theme:t})=>e?"#2d303e":"transparent"),(({fontSize:e,theme:t})=>t.fontSize[e]),J,(({disabled:e})=>e&&"cursor: default; pointer-events: none;"),(({selected:e,theme:t})=>t.color[e?"green":"offWhite"])),yt=s.ZP.button.withConfig({displayName:"ToggleButton__PrimaryToggleButtonStyled"})(["\n ",";\n ",";\n"],Et,(wt={background:"comment"},(0,s.iv)(["\n &:hover:not([disabled]) {\n background: ",";\n opacity: 1;\n }\n\n &:active:not([disabled]) {\n filter: brightness(90%);\n }\n\n ","\n "],D(wt.background),(({readOnly:e})=>e&&"\n filter: brightness(0.5);\n cursor: default;\n "))));var wt;const vt=(e,t)=>r.createElement(yt,ht({},bt,e,{ref:t})),Ct=(0,r.forwardRef)(vt);function _t(){return _t=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},_t.apply(this,arguments)}Ct.defaultProps=bt;const xt=(0,s.iv)(["\n position: absolute;\n width: 7px;\n height: 7px;\n"]),St=s.ZP.div.withConfig({displayName:"Tooltip__TooltipArrow"})(["\n ",";\n\n &::before {\n ",';\n top: 0;\n left: 0;\n content: "";\n transform: rotate(45deg);\n background: ',";\n border: 1px solid ",";\n border-radius: 1px;\n }\n"],xt,xt,D("backgroundDarker"),D("gray1")),Tt=s.ZP.div.withConfig({displayName:"Tooltip__Wrapper"})(["\n position: relative;\n max-width: 260px;\n padding: 1rem;\n background: ",";\n border: 1px solid ",';\n border-radius: 1px;\n\n &[data-popper-placement^="right"] ',' {\n left: -4px;\n\n &::before {\n border-right: none;\n border-top: none;\n }\n }\n\n &[data-popper-placement^="left"] ',' {\n right: -4px;\n\n &::before {\n border-left: none;\n border-bottom: none;\n }\n }\n\n &[data-popper-placement^="top"] ',' {\n bottom: -4px;\n\n &::before {\n border-left: none;\n border-top: none;\n }\n }\n\n &[data-popper-placement^="bottom"] '," {\n top: -4px;\n\n &::before {\n border-right: none;\n border-bottom: none;\n }\n }\n"],D("backgroundDarker"),D("gray1"),St,St,St,St),kt=({arrow:e,children:t,textAlign:n="left",...a})=>r.createElement(Tt,_t({},a,{"data-hook":"tooltip",style:{textAlign:n}}),r.createElement(Ae,{color:"foreground"},t),e&&r.createElement(St,{ref:e.setArrowElement,style:e.styles}));var Nt=n(44631);function Ot(){return Ot=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Ot.apply(this,arguments)}const Rt=({height:e,...t})=>r.createElement(Nt.OO,Ot({style:e?{height:e}:{}},t));var It=n(34317),Pt=n(4583),At=n(4422),Lt=n(75134),Dt=n(84374),Mt=n(66145),Bt=n.n(Mt),Ft=n(37355),zt=n(46193);const Zt="#ff5555",Ut="#f8f8f2",qt="2.2rem",jt="1.8rem",Ht=s.ZP.div.withConfig({displayName:"table-icon__Root"})(["\n display: flex;\n align-items: center;\n width: ",";\n height: ",";\n position: relative;\n color: ",";\n margin-right: 1rem;\n flex-shrink: 0;\n"],qt,jt,(({$suspended:e})=>e?Zt:Ut)),Vt=s.ZP.span.withConfig({displayName:"table-icon__PartitionLetter"})(["\n width: 100%;\n height: 100%;\n text-align: center;\n font-size: 1.4rem;\n line-height: ",";\n"],jt),$t=s.ZP.div.withConfig({displayName:"table-icon__Icon"})(["\n position: absolute;\n width: ",";\n height: ",";\n border: 1px "," solid;\n border-radius: 2px;\n"],qt,jt,(({$suspended:e})=>e?Zt:Ut)),Gt=s.ZP.span.withConfig({displayName:"table-icon__Asterisk"})(["\n position: absolute;\n top: -9px;\n right: -0.5rem;\n font-size: 1.8rem;\n line-height: 1.8rem;\n color: #f1fa8c;\n"]),Wt=s.ZP.div.withConfig({displayName:"table-icon__HLine"})(["\n position: absolute;\n width: 100%;\n height: 0.1rem;\n background: WHITE;\n top: 0.4rem;\n"]),Qt=s.ZP.div.withConfig({displayName:"table-icon__VLine"})(["\n position: absolute;\n width: 0.1rem;\n height: calc("," - 0.5rem);\n background: WHITE;\n top: 0.4rem;\n"],jt),Yt=(0,s.ZP)(Qt).withConfig({displayName:"table-icon__VLine1"})(["\n left: 0.6rem;\n"]),Kt=(0,s.ZP)(Qt).withConfig({displayName:"table-icon__VLine2"})(["\n left: 1.3rem;\n"]),Xt=({isPartitioned:e,partitionBy:t,walEnabled:n,suspended:a})=>r.createElement(Ht,{$suspended:a},!n&&r.createElement(Gt,null,"*"),r.createElement($t,{$suspended:a},!e&&r.createElement(r.Fragment,null,r.createElement(Wt,null),r.createElement(Yt,null),r.createElement(Kt,null))),e&&t&&r.createElement(Vt,null,t.substr(0,1))),Jt=({partitionBy:e,walEnabled:t,suspended:n})=>{const a=e&&"NONE"!==e||!1;let o=[];return a&&e?o.push(`${e.substr(0,1)}: Partitioned by ${e}`):o.push(r.createElement(zt.x,{align:"center",gap:"0"},r.createElement(Ft.i,{size:"14px"}),r.createElement("span",null,": Not partitioned"))),t||o.push("*: non-WAL (Legacy)"),a||!t?r.createElement(Ke,{icon:r.createElement("span",null,r.createElement(Xt,{isPartitioned:a,partitionBy:e,walEnabled:t,suspended:n})),tooltip:o.map(((e,t)=>r.createElement("div",{key:t},e))),placement:"bottom"}):r.createElement(Xt,{isPartitioned:a,partitionBy:e,walEnabled:t,suspended:n})};var en=n(65742);const tn=(0,r.createContext)({query:"",setQuery:()=>{}});var nn=n(35146),rn=n(87563),an=n(35637),on=n(47223),ln=n(8635),sn=n(94505),cn=n(75013),dn=n(80678),un=n(7523);const mn=s.ZP.div.withConfig({displayName:"FormItem__Root"})(["\n display: grid;\n gap: 1rem;\n white-space: normal;\n width: 100%;\n\n ","\n"],(({border:e,theme:t})=>e&&`\n border-bottom: 1px ${t.color.background} solid;\n `)),gn=s.ZP.div.withConfig({displayName:"FormItem__Control"})(["\n display: grid;\n gap: 1rem;\n ","\n"],(e=>e.disabled&&"opacity: 0.7;")),pn=s.ZP.div.withConfig({displayName:"FormItem__LabelWrapper"})(["\n display: flex;\n align-self: center;\n justify-content: space-between;\n align-items: baseline;\n width: 100%;\n"]),fn=s.ZP.label.withConfig({displayName:"FormItem__Label"})(["\n color: ",";\n"],(({theme:e})=>e.color.gray2)),hn=s.ZP.span.withConfig({displayName:"FormItem__AfterLabel"})(["\n color: ",";\n"],(({theme:e})=>e.color.gray2));var bn=n(68004),En=n(44047);function yn(){return yn=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},yn.apply(this,arguments)}const wn=s.ZP.div.withConfig({displayName:"FormInput__Wrapper"})(["\n display: flex;\n width: 100%;\n ","\n"],(e=>"off"===e.autoComplete&&"\n // Hide the LastPass+NordPass icons\n [data-lastpass-icon-root],\n span[data-np-uid] {\n display: none !important;\n }\n ")),vn=(0,s.ZP)(rn.I).withConfig({displayName:"FormInput__Input"})(["\n ","\n"],(e=>e.disabled&&"opacity: 0.7;")),Cn=(0,s.ZP)(en.z).withConfig({displayName:"FormInput__ToggleButton"})(["\n cursor: pointer;\n border-radius: 0;\n\n ","\n"],(e=>e.last&&"\n border-top-right-radius: 0.4rem;\n border-bottom-right-radius: 0.4rem;\n "));var _n=n(81213);function xn(){return xn=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},xn.apply(this,arguments)}var Sn=n(98378);function Tn(){return Tn=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Tn.apply(this,arguments)}const kn=s.ZP.div.withConfig({displayName:"FormGroup__Root"})(["\n width: 100%;\n display: grid;\n grid-template-columns: repeat(",", minmax(0, 1fr));\n gap: ",";\n"],(({columns:e})=>e),(({gap:e})=>e));function Nn(){return Nn=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Nn.apply(this,arguments)}function On(){return On=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},On.apply(this,arguments)}const Rn=(0,s.ZP)(rn.I).attrs({as:"textarea"}).withConfig({displayName:"FormTextArea__TextArea"})(["\n width: 100%;\n height: inherit;\n"]),In=({name:e,method:t="post",onSubmit:n,onChange:a,onDirtyChange:o,children:i,validationSchema:l,defaultValues:s,preventSubmitOnEnter:c})=>{let d={};s&&(d.defaultValues=s),l&&(d.resolver=(0,un.L)(l));const u=(0,dn.cI)(d);return(0,r.useEffect)((()=>{a&&u.watch(a)}),[]),(0,r.useEffect)((()=>{o&&o(u.formState.isDirty,u.formState.dirtyFields)}),[u.formState]),Object.keys(u.formState.errors).length>0&&console.log("Schema validation errors",u.formState.errors),r.createElement(dn.RV,u,r.createElement("form",{name:e,onSubmit:async e=>{e.stopPropagation(),await u.handleSubmit(n)(e)},method:t,onKeyDown:e=>{"Enter"===e.key&&c&&e.preventDefault()}},i))};In.Item=({name:e,label:t,afterLabel:n,helperText:a,children:o,className:i,disabled:l,border:s,required:c})=>{const{formState:{errors:d}}=(0,dn.Gc)();return r.createElement(mn,{className:i,disabled:l,border:s},r.createElement(gn,{disabled:l},t&&e&&r.createElement(pn,null,r.createElement(fn,{htmlFor:e},t,c?r.createElement(Ae,{color:"red"}," *"):""),r.createElement(hn,null,n)),o),e&&!d[e]&&a&&("string"==typeof a?r.createElement(Ae,{color:"comment"},a):a),e&&d&&d[e]&&r.createElement(Ae,{color:"red"},d[e]?.message))},In.Input=({name:e,placeholder:t,type:n="text",disabled:a,showPassword:o,autoFocus:i,autoComplete:l,...s})=>{const{register:c,setFocus:d}=(0,dn.Gc)(),[u,m]=(0,r.useState)(o),g=(0,r.useCallback)((()=>{m(!u)}),[u,m]);return(0,r.useEffect)((()=>{i&&d(e)}),[]),r.createElement(wn,{autoComplete:l},r.createElement(vn,yn({},c(e,{valueAsNumber:"number"===n}),{name:e,placeholder:t,type:u?"text":n,disabled:a,showPassword:o,autoComplete:l},s)),"password"===n&&r.createElement(Cn,{skin:"secondary",onClick:g,title:"Toggle password visibility",type:"button",last:!0},u?r.createElement(bn.b,{size:"15px"}):r.createElement(En._,{size:"15px"})))},In.Checkbox=({name:e,checked:t,...n})=>{const{register:a}=(0,dn.Gc)();return r.createElement("div",{style:{width:"100%",display:"flex"}},r.createElement(_n.X,xn({},n,a(e))))},In.Select=({name:e,...t})=>{const{register:n}=(0,dn.Gc)();return r.createElement(Sn.P,Tn({},n(e),t))},In.Group=({children:e,columns:t,gap:n="2rem"})=>r.createElement(kn,{columns:t??r.Children.count(r.Children.toArray(e)),gap:n},e),In.Submit=({children:e,disabled:t,variant:n,prefixIcon:a,...o})=>r.createElement(en.z,Nn({type:"submit",disabled:t,skin:n??"primary",prefixIcon:a,dataHook:"form-submit-button"},o),e),In.Cancel=({children:e,disabled:t,variant:n,prefixIcon:a,defaultValues:o,onClick:i})=>{const{reset:l}=(0,dn.Gc)();return r.createElement(en.z,{type:"button",onClick:()=>{l(o),i&&i()},disabled:t,skin:n??"secondary",prefixIcon:a,dataHook:"form-cancel-button"},e)},In.TextArea=({name:e,placeholder:t,rows:n,autoFocus:a,...o})=>{const{register:i,setFocus:l}=(0,dn.Gc)();return(0,r.useEffect)((()=>{a&&l(e)}),[]),r.createElement(Rn,On({},i(e),{rows:n??4,placeholder:t},o))};const Pn=e=>localStorage.getItem(e)??"",An=(e,t)=>localStorage.setItem(e,t),Ln=e=>localStorage.removeItem(e),Dn=e=>e["acl.oidc.host"]?`${e["acl.oidc.tls.enabled"]?"https":"http"}://${e["acl.oidc.host"]}:${e["acl.oidc.port"]}`:"",Mn=async(e,t)=>fetch(`${Dn(e)}${e["acl.oidc.token.endpoint"]}`,{method:"POST",headers:{"Content-Type":"application/x-www-form-urlencoded"},body:new URLSearchParams(t)}),Bn=e=>e["acl.enabled"]&&!e["acl.basic.auth.realm.enabled"];var Fn=n(77798),zn=n(30919);var Zn=n(34825);const Un=({onLogout:e})=>r.createElement(Ee,null,r.createElement(zt.x,{gap:"1rem"},r.createElement(Ae,{color:"foreground"},"You have been logged out."),r.createElement(en.z,{prefixIcon:r.createElement(Zn.n,{size:18}),skin:"secondary",onClick:e},"Log in")));var qn=n(79409);const jn=({basicAuthEnabled:e,errorMessage:t,onLogout:n})=>r.createElement(Ee,null,r.createElement(zt.x,{flexDirection:"column",gap:"2rem"},r.createElement(Ae,{color:"foreground"},t),!e&&r.createElement(en.z,{skin:"secondary",prefixIcon:r.createElement(qn.n,{size:"18px"}),onClick:()=>n()},"Login with other account")));var Hn=n(29674),Vn=n.n(Hn);const $n=s.ZP.div.withConfig({displayName:"login__Header"})(["\n position: absolute;\n width: 100%;\n padding: 30px;\n"]),Gn=s.ZP.div.withConfig({displayName:"login__ErrorContainer"})(["\n @keyframes smooth-appear {\n to {\n transform: translateY(0);\n opacity: 1;\n }\n }\n\n @keyframes smooth-disappear {\n to {\n transform: translateY(10px);\n opacity: 0;\n }\n }\n\n background: gray;\n color: white;\n padding: 20px;\n margin-top: 10px;\n opacity: 0;\n transform: translateY(10px);\n border-radius: 10px;\n text-align: center;\n\n ","\n"],(({hasError:e})=>e?"\n animation: smooth-appear 0.5s ease forwards;\n ":"animation: smooth-disappear 0.5s ease forwards;")),Wn=s.ZP.div.withConfig({displayName:"login__Container"})(["\n margin-left: auto;\n margin-right: auto;\n margin-top: 4%;\n width: 500px;\n font-size: 16px;\n transition: height 10s ease;\n"]),Qn=s.ZP.h1.withConfig({displayName:"login__Title"})(["\n color: white;\n text-align: center;\n"]),Yn=s.ZP.div.withConfig({displayName:"login__SSOCard"})(["\n button {\n padding-top: 2rem;\n padding-bottom: 2rem;\n border-radius: 0 5px 5px 0;\n width: 100%;\n margin-bottom: 10px;\n }\n margin-bottom: 10px;\n"]),Kn=s.ZP.div.withConfig({displayName:"login__Card"})(["\n border-radius: ",';\n\n @keyframes horizontal-shaking {\n 0% {\n transform: translateX(0);\n }\n 25% {\n transform: translateX(5px);\n }\n 50% {\n transform: translateX(-5px);\n }\n 75% {\n transform: translateX(5px);\n }\n 100% {\n transform: translateX(0);\n }\n }\n\n button[type="submit"] {\n padding-top: 2rem;\n padding-bottom: 2rem;\n border-radius: 5px;\n width: 100%;\n margin-top: 40px;\n }\n\n ','\n\n button {\n padding-top: 2rem;\n padding-bottom: 2rem;\n border-radius: 0 5px 5px 0;\n }\n\n input[name="password"] {\n padding-top: 2rem;\n padding-bottom: 2rem;\n border-radius: 5px 0 0 5px;\n }\n\n input {\n padding-top: 2rem;\n padding-bottom: 2rem;\n border-radius: 5px;\n box-shadow: 0 0 0 30px #44475a inset !important;\n -webkit-text-fill-color: white;\n }\n\n label {\n margin-top: 20px;\n }\n'],(({theme:e})=>e.borderRadius),(({hasError:e})=>e&&'\n button[type="submit"] {\n animation: horizontal-shaking 0.3s ease-in-out;\n }\n ')),Xn=(0,s.ZP)(en.z).withConfig({displayName:"login__StyledButton"})(["\n padding-top: 2rem;\n padding-bottom: 2rem;\n"]),Jn=s.ZP.div.withConfig({displayName:"login__Line"})(['\n position: relative;\n text-align: center;\n\n &:before {\n content: "";\n position: absolute;\n top: 50%;\n left: 0;\n width: 100%;\n height: 1px;\n background: ',";\n }\n"],(({theme:e})=>e.color.selection)),er=s.ZP.div.withConfig({displayName:"login__TooltipArrow"})(['\n &::before {\n position: absolute;\n width: 7px;\n height: 7px;\n top: -4px;\n left: 50%;\n content: "";\n transform: rotate(45deg);\n background: gray;\n border-left: 1px solid gray;\n border-radius: 1px;\n border-right: none;\n border-bottom: none;\n }\n']),tr=(0,s.ZP)(Ae).withConfig({displayName:"login__LineText"})(["\n position: relative;\n z-index: 1;\n background: ",";\n padding: 0 1.5rem;\n"],(({theme:e})=>e.color.backgroundDarker)),nr=s.ZP.div.withConfig({displayName:"login__Footer"})(["\n width: 700px;\n text-align: center;\n padding: 20px;\n margin-top: 40px;\n margin-right: auto;\n margin-left: auto;\n"]),rr=Vn().object({username:Vn().string().required().messages({"string.empty":"User name is required"}),password:Vn().string().required().messages({"string.empty":"Password is required"})}),ar=({onOAuthLogin:e,onBasicAuthSuccess:t})=>{const{settings:n}=pr(),a="EE"===n["release.type"],[o,i]=r.useState(),l=a?{query:e=>`alter user '${e}' create token type rest with ttl '1d' refresh transient`,store:async(e,t,n)=>{const r=(await e.json()).dataset[0][1];An(P.REST_TOKEN,r)}}:{query:()=>"select * from long_sequence(1)",store:async(e,t,n)=>{An(P.BASIC_AUTH_HEADER,`Basic ${btoa(`${t}:${n}`)}`)}};return(0,r.useEffect)((()=>{setTimeout((()=>{i(void 0)}),5e3)}),[o]),n["acl.basic.auth.realm.enabled"]?null:r.createElement("div",{"data-hook":"auth-login"},r.createElement($n,null,r.createElement("a",{href:"https://questdb.io"},r.createElement("img",{alt:"QuestDB logotype",height:"20",src:"assets/questdb-logotype.svg"}))),r.createElement(Wn,null,r.createElement(Qn,null,"Please Sign In"),n["acl.oidc.enabled"]&&r.createElement(Yn,null,r.createElement(Xn,{"data-hook":"button-sso-login",skin:"secondary",prefixIcon:r.createElement(qn.n,{size:"18px"}),onClick:()=>e()},"Continue with SSO"),r.createElement(Jn,null,r.createElement(tr,{color:"gray2"},"or"))),r.createElement(Kn,{hasError:o},r.createElement(In,{name:"login",onSubmit:async e=>{const{username:n,password:r}=e;try{const e=await fetch(`exec?query=${l.query(n)}`,{headers:{Authorization:`Basic ${btoa(`${n}:${r}`)}`}});if(200===e.status)return await l.store(e,n,r),t();401===e.status?i("Invalid user name or password"):403===e.status?i("Unauthorized to use the Web Console"):i("Login failed, status code: "+e.status)}catch(e){i("Error occurred while trying to login")}},defaultValues:{},validationSchema:rr},r.createElement(In.Item,{name:"username",label:"User name"},r.createElement(In.Input,{name:"username",placeholder:"johndoe"})),r.createElement(In.Item,{name:"password",label:"Password"},r.createElement(In.Input,{name:"password",type:"password",placeholder:"••••••••"})),r.createElement(In.Submit,{variant:"primary"},"Sign In"),r.createElement(Gn,{hasError:o},r.createElement(er,null),o)))),r.createElement(nr,null))};var or=n(17093),ir=n(91197),lr=function(e){return e[e.loading=0]="loading",e[e.ready=1]="ready",e[e.error=2]="error",e}(lr||{});const sr={view:lr.loading},cr=(e,t)=>({...e,...t}),dr=(0,r.createContext)({settings:{},consoleConfig:{},warnings:[]}),ur=r.createElement(r.Fragment,null,"Error connecting to the database.",r.createElement("br",null),"Please, check if the server is running correctly."),mr=r.createElement(r.Fragment,null,"Error loading the console configuration file"),gr=({children:e})=>{const[t,n]=(0,r.useReducer)(cr,sr),[a,o]=(0,r.useState)({}),[i,l]=(0,r.useState)([]),[s,c]=(0,r.useState)({}),d={[lr.loading]:()=>null,[lr.ready]:()=>r.createElement(dr.Provider,{value:{settings:a,consoleConfig:s,warnings:i}},e),[lr.error]:()=>r.createElement(Ee,null,r.createElement(zt.x,{flexDirection:"column",gap:"2rem"},r.createElement("a",{href:"https://questdb.io"},r.createElement("img",{alt:"QuestDB logotype",width:"95",height:"23",src:"assets/questdb-logotype.svg"})),r.createElement(or.x,{align:"center",size:"lg"},"Error connecting to the database.",r.createElement("br",null),"Please, check if the server is running correctly."),r.createElement(en.z,{skin:"secondary",prefixIcon:r.createElement(ir.h,{size:"18px"}),onClick:()=>window.location.reload()},"Retry")))},u=async(e,t)=>{try{const r=await fetch(e);if(200===r.status)return await r.json();n({view:lr.error,errorMessage:t})}catch(e){n({view:lr.error,errorMessage:t})}};return(0,r.useEffect)((()=>{(async()=>{const e=await u("settings",ur),t=await u("warnings",ur),n=await u("assets/console-configuration.json",mr);e&&o(e),t&&l(t),n&&c(n)})().then((()=>n({view:lr.ready})))}),[]),r.createElement(r.Fragment,null,d[t.view]())},pr=()=>(0,r.useContext)(dr);var fr=function(e){return e[e.ready=0]="ready",e[e.loading=1]="loading",e[e.error=2]="error",e[e.login=3]="login",e[e.loggedOut=4]="loggedOut",e}(fr||{});const hr={view:fr.loading},br={sessionData:void 0,logout:()=>{},refreshAuthToken:async()=>({}),switchToOAuth:()=>{}};class Er{constructor(e,t){this.error=e,this.error_description=t}}const yr=(0,r.createContext)(br),wr=(e,t)=>({...e,...t}),vr=({children:e})=>{const{settings:t}=pr(),[n,a]=(0,r.useState)(void 0),[o,i]=(0,r.useState)(void 0),[l,s]=(0,r.useReducer)(wr,hr),c=(e,t)=>{if(e.access_token)e.groups_encoded_in_token=t["acl.oidc.groups.encoded.in.token"],e.expires_at=(n=e.expires_in,new Date((new Date).getTime()+1e3*n)).toString(),An(P.AUTH_PAYLOAD,JSON.stringify(e)),An(P.AUTH_REFRESH_TOKEN,e.refresh_token??""),a(e),history.replaceState&&history.replaceState(null,"",location.pathname+location.search.replace(/[\?&]code=[^&]+/,"").replace(/^&/,"?"));else{const t=e;s({view:fr.error,errorMessage:t.error_description??"Error logging in. Please try again."})}var n},d=async e=>{const t=await Mn(e,{grant_type:"refresh_token",refresh_token:Pn(P.AUTH_REFRESH_TOKEN),client_id:e["acl.oidc.client.id"]}),n=await t.json();return c(n,e),n},u=async()=>{200===(await fetch("exec?query=select 42")).status?s({view:fr.ready}):await u()},m=()=>{const e=Pn(P.REST_TOKEN),t=Pn(P.BASIC_AUTH_HEADER);s(e||t?{view:fr.ready}:{view:fr.login})},g=e=>{const n=(e=>e["acl.oidc.pkce.required"]?(()=>{const e=new Uint8Array(60);crypto.getRandomValues(e);const t=zn.DS.fromUint8Array(e,!0);return An(P.PKCE_CODE_VERIFIER,t),t})():null)(t),r=(e=>e?(e=>{const t=[];for(let n=0;n<e.length;n++){const r=e.codePointAt(n);if(void 0===r)throw Error(n+" is out of bounds of string: "+e);t.push(r)}const n=new Uint8Array(Fn.sha256.create().update(t).array());return zn.DS.fromUint8Array(n,!0)})(e):null)(n);window.location.href=(({settings:e,code_challenge:t=null,login:n,redirect_uri:r})=>{const a={client_id:e["acl.oidc.client.id"]||"",response_type:"code",scope:e["acl.oidc.scope"]||"openid",redirect_uri:r},o=new URLSearchParams(a);return t&&(o.append("code_challenge",t),o.append("code_challenge_method","S256")),n&&o.append("prompt","login"),Dn(e)+e["acl.oidc.authorization.endpoint"]+"?"+o})({settings:t,code_challenge:r,login:e,redirect_uri:t["acl.oidc.redirect.uri"]||window.location.href})},p=e=>{Ln(P.AUTH_PAYLOAD),Ln(P.REST_TOKEN),Ln(P.BASIC_AUTH_HEADER),e?s({view:fr.loggedOut}):window.location.reload()},f=()=>{g(!0)};(0,r.useEffect)((()=>{n&&s({view:fr.ready})}),[n]),(0,r.useEffect)((()=>{R.subscribe(I.MSG_CONNECTION_FORBIDDEN,(e=>{e&&e.error.match(/Access denied.* \[HTTP]/gm)&&s({view:fr.error,errorMessage:"Unauthorized to use the Web Console."})})),(async e=>{if(e["acl.enabled"])if(e["acl.oidc.enabled"]){const t=Pn(P.AUTH_PAYLOAD),n=new URLSearchParams(window.location.search),r=n.get("code"),o=new Er(n.get("error"),n.get("error_description"));if(R.subscribe(I.MSG_CONNECTION_UNAUTHORIZED,(()=>{const e=Pn(P.OAUTH_REDIRECT_COUNT);if(e){const t=parseInt(e);!isNaN(t)&&t>=5?(Ln(P.OAUTH_REDIRECT_COUNT),p(!0)):(An(P.OAUTH_REDIRECT_COUNT,JSON.stringify(e?parseInt(e)+1:1)),p())}else An(P.OAUTH_REDIRECT_COUNT,JSON.stringify(1)),p()})),R.subscribe(I.MSG_CONNECTION_OK,(()=>{Ln(P.OAUTH_REDIRECT_COUNT)})),""!==t){const n=JSON.parse(t);new Date(n.expires_at).getTime()-Date.now()<3e4?""!==Pn(P.AUTH_REFRESH_TOKEN)?await d(e):s({view:fr.loggedOut}):a(n)}else if(null!==r)try{const t=Pn(P.PKCE_CODE_VERIFIER),n=await Mn(e,{grant_type:"authorization_code",code:r,code_verifier:t,client_id:e["acl.oidc.client.id"],redirect_uri:e["acl.oidc.redirect.uri"]||window.location.origin+window.location.pathname}),a=await n.json();c(a,e)}catch(e){throw e}else o.error?i(o.error+": "+o.error_description):m()}else e["acl.basic.auth.realm.enabled"]?await u():(R.subscribe(I.MSG_CONNECTION_UNAUTHORIZED,(()=>{p()})),m());else s({view:fr.ready})})(t)}),[]);const h={[fr.loading]:()=>null,[fr.ready]:()=>r.createElement(yr.Provider,{value:{sessionData:n,logout:p,refreshAuthToken:d,switchToOAuth:f}},e),[fr.error]:()=>r.createElement(jn,{errorMessage:o,onLogout:p,basicAuthEnabled:t["acl.basic.auth.realm.enabled"]??!1}),[fr.login]:()=>r.createElement(ar,{onOAuthLogin:f,onBasicAuthSuccess:()=>{s({view:fr.ready})}}),[fr.loggedOut]:()=>r.createElement(Un,{onLogout:()=>{Ln(P.OAUTH_REDIRECT_COUNT),g(!0)}})};return r.createElement(r.Fragment,null,h[l.view]())},Cr=()=>(0,r.useContext)(yr),_r=/Build Information: QuestDB ([\w- ]+ )?([0-9A-Za-z.-]*),/,xr=/Commit Hash ([0-9A-Za-z]*)/;let Sr=function(e){return e.TOGGLE_SIDE_MENU="CONSOLE/TOGGLE_SIDE_MENU",e.SET_ACTIVE_TOP_PANEL="CONSOLE/SET_ACTIVE_TOP_PANEL",e.SET_ACTIVE_SIDEBAR="CONSOLE/SET_ACTIVE_SIDEBAR",e.SET_ACTIVE_BOTTOM_PANEL="CONSOLE/SET_ACTIVE_BOTTOM_PANEL",e.SET_IMAGE_TO_ZOOM="CONSOLE/SET_IMAGE_TO_ZOOM",e}({});const Tr={toggleSideMenu:()=>({type:Sr.TOGGLE_SIDE_MENU}),setActiveTopPanel:e=>({payload:e,type:Sr.SET_ACTIVE_TOP_PANEL}),setActiveSidebar:e=>({payload:e,type:Sr.SET_ACTIVE_SIDEBAR}),setActiveBottomPanel:e=>({payload:e,type:Sr.SET_ACTIVE_BOTTOM_PANEL}),setImageToZoom:e=>({payload:e,type:Sr.SET_IMAGE_TO_ZOOM})};let kr=function(e){return e.ERROR="error",e.INFO="info",e.SUCCESS="success",e.NOTICE="notice",e.LOADING="loading",e}({}),Nr=function(e){return e.ADD_NOTIFICATION="QUERY/ADD_NOTIFICATION",e.CLEANUP_NOTIFICATIONS="QUERY/CLEANUP_NOTIFICATIONS",e.REMOVE_NOTIFICATION="QUERY/REMOVE_NOTIFICATION",e.SET_RESULT="QUERY/SET_RESULT",e.STOP_RUNNING="QUERY/STOP_RUNNING",e.TOGGLE_RUNNING="QUERY/TOGGLE_RUNNING",e.SET_TABLES="QUERY/SET_TABLES",e.SET_COLUMNS="QUERY/SET_COLUMNS",e}({}),Or=function(e){return e.START="TELEMETRY/START",e.SET_CONFIG="TELEMETRY/SET_CONFIG",e.SET_REMOTE_CONFIG="TELEMETRY/SET_REMOTE_CONFIG",e}({});const Rr=Tr,Ir=e=>({payload:{createdAt:new Date,type:kr.SUCCESS,...e},type:Nr.ADD_NOTIFICATION}),Pr=()=>({type:Nr.CLEANUP_NOTIFICATIONS}),Ar=e=>({payload:e,type:Nr.SET_RESULT}),Lr=()=>({type:Nr.STOP_RUNNING}),Dr=(e=!1)=>({type:Nr.TOGGLE_RUNNING,payload:{isRefresh:e}}),Mr=e=>({payload:{tables:e},type:Nr.SET_TABLES}),Br=e=>({payload:{columns:e},type:Nr.SET_COLUMNS}),Fr=()=>({type:Or.START}),zr=e=>({payload:e,type:Or.SET_CONFIG}),Zr=e=>({payload:e,type:Or.SET_REMOTE_CONFIG});var Ur=n(61507),qr=n(74998),jr=n(73937),Hr=n(63547),Vr=n(2304),$r=n(41174),Gr=n(3826);const Wr=new A,Qr=[e=>e.pipe((0,qr.l)(Or.START),(0,C.w)((()=>{const e=""!==Pn(P.AUTH_PAYLOAD)?Pn(P.AUTH_PAYLOAD):"{}",t=JSON.parse(e);if(t.access_token)Wr.setCommonHeaders({Authorization:`Bearer ${t.groups_encoded_in_token?t.id_token:t.access_token}`});else{const e=Pn(P.REST_TOKEN);if(e)Wr.setCommonHeaders({Authorization:`Bearer ${e}`});else{const e=Pn(P.BASIC_AUTH_HEADER);e&&Wr.setCommonHeaders({Authorization:e})}}return(0,$r.D)(Wr.query(`${b.CONFIG} limit -1`))})),(0,C.w)((e=>e.type===T.DQL?(0,w.of)(zr(e.data[0])):Gr.C))),(e,t)=>e.pipe((0,qr.l)(Or.SET_CONFIG),(0,jr.M)(t),(0,C.w)((([e,t])=>{const n=ta.telemetry.getConfig(t);return n?.enabled?S(`${E}/config`,{method:"POST",body:JSON.stringify(n)},!1):Gr.C})),(0,C.w)((e=>e.error?Gr.C:(0,w.of)(Zr(e.data))))),(e,t)=>e.pipe((0,qr.l)(Or.SET_REMOTE_CONFIG),(0,jr.M)(t),(0,C.w)((([e,t])=>{const n=ta.telemetry.getRemoteConfig(t);if(n?.lastUpdated){const e=new Date(n.lastUpdated).toISOString();return(0,$r.D)(Wr.queryRaw(`with tel as (\n SELECT cast(created as long), event, origin\n FROM ${b.MAIN}\n WHERE created > '${e}'\n LIMIT -10000 \n ) \n SELECT cast(created as long), cast(1000 as short), cast(case when sm >= 0 then sm else 32767 end as short) FROM (\n SELECT created, cast(ceil(sum(rowCount) / 1000.0) as short) sm\n FROM ${b.WAL}\n WHERE created > '${e}' and rowCount > 0\n SAMPLE BY 1h align to calendar\n )\n UNION ALL \n SELECT cast(created as long), cast(2000 as short), cast(case when sm >= 0 then sm else 32767 end as short) FROM (\n SELECT created, cast(count() as short) sm\n FROM ${b.WAL}\n WHERE created > '${e}' and rowCount > 0\n SAMPLE BY 1h align to calendar\n )\n UNION ALL \n SELECT cast(created as long), cast(3000 as short), cast(case when sm >= 0 then sm else 32767 end as short) FROM (\n SELECT created, cast(max(latency) / 1000.0 as short) sm\n FROM ${b.WAL}\n WHERE created > '${e}' and rowCount > 0\n SAMPLE BY 1h align to calendar\n )\n UNION ALL\n SELECT * FROM tel\n `.replace(/\s+/g," ").trim()))}return Gr.C})),(0,jr.M)(t),(0,C.w)((([e,t])=>{const n=ta.telemetry.getRemoteConfig(t),r=ta.telemetry.getConfig(t);return null!=r?.id&&e.type===T.DQL&&e.count>0?S(`${E}/add`,{method:"POST",body:JSON.stringify({columns:e.columns,dataset:e.dataset,id:r.id,version:r.version,os:r.os,package:r.package})},!1).pipe((0,x.U)((t=>{if(!t.error){const t=e.dataset[e.count-1][0];return Zr({...n,lastUpdated:t})}})),(0,Hr.g)(36e5),(0,Vr.h)((e=>!!e))):Gr.C})))],Yr=(0,Ur.l)(...Qr),Kr={sideMenuOpened:!1,activeTopPanel:"tables",activeSidebar:void 0,activeBottomPanel:"zeroState",imageToZoom:void 0},Xr={notifications:[],tables:[],columns:[],running:{value:!1,isRefresh:!1},maxNotifications:20},Jr={},ea=(0,i.UY)({console:(e=Kr,t)=>{switch(t.type){case Sr.TOGGLE_SIDE_MENU:return{...e,sideMenuOpened:!e.sideMenuOpened};case Sr.SET_ACTIVE_TOP_PANEL:return{...e,activeTopPanel:t.payload};case Sr.SET_ACTIVE_SIDEBAR:return{...e,activeSidebar:t.payload};case Sr.SET_ACTIVE_BOTTOM_PANEL:return{...e,activeBottomPanel:t.payload};case Sr.SET_IMAGE_TO_ZOOM:return{...e,imageToZoom:t.payload};default:return e}},query:(e=Xr,t)=>{switch(t.type){case Nr.ADD_NOTIFICATION:{const n=[...e.notifications,t.payload];for(;n.length===e.maxNotifications;)n.shift();return{...e,notifications:n}}case Nr.CLEANUP_NOTIFICATIONS:return{...e,notifications:[]};case Nr.REMOVE_NOTIFICATION:return{...e,notifications:e.notifications.filter((({createdAt:e})=>e!==t.payload))};case Nr.SET_RESULT:return{...e,result:t.payload};case Nr.STOP_RUNNING:return{...e,running:{value:!1,isRefresh:!1}};case Nr.TOGGLE_RUNNING:return{...e,running:{value:!e.running.value,isRefresh:t.payload.isRefresh}};case Nr.SET_TABLES:return{...e,tables:t.payload.tables};case Nr.SET_COLUMNS:return{...e,columns:t.payload.columns};default:return e}},telemetry:(e=Jr,t)=>{switch(t.type){case Or.SET_CONFIG:return{...e,config:t.payload};case Or.SET_REMOTE_CONFIG:return{...e,remoteConfig:{cta:!1,lastUpdated:new Date((new Date).getTime()-321408e5).toISOString(),...t.payload}};default:return e}}}),ta={console:{getSideMenuOpened:e=>e.console.sideMenuOpened,getActiveTopPanel:e=>e.console.activeTopPanel,getActiveSidebar:e=>e.console.activeSidebar,getActiveBottomPanel:e=>e.console.activeBottomPanel,getImageToZoom:e=>e.console.imageToZoom},query:{getNotifications:e=>e.query.notifications,getResult:e=>e.query.result,getRunning:e=>e.query.running,getTables:e=>e.query.tables,getColumns:e=>e.query.columns},telemetry:{getConfig:e=>e.telemetry.config,getRemoteConfig:e=>e.telemetry.remoteConfig}},na=new A,ra={quest:na,buildVersion:{type:"oss",version:""},commitHash:""},aa=(0,r.createContext)(ra),oa=({children:e})=>{const t=(0,o.I0)(),{settings:n}=pr(),{sessionData:a,refreshAuthToken:i}=Cr(),[l,s]=(0,r.useState)(!Bn(n)),[c,d]=(0,r.useState)(ra.buildVersion),[u,m]=(0,r.useState)(""),g=async()=>{await na.queryRaw("SELECT 1"),s(!0)};return(0,r.useEffect)((()=>{a&&(async e=>{na.setCommonHeaders({Authorization:`Bearer ${e.groups_encoded_in_token?e.id_token:e.access_token}`}),na.refreshTokenMethod=()=>i(n),g()})(a)}),[a]),(0,r.useEffect)((()=>{const e=Pn(P.REST_TOKEN);if(e)na.setCommonHeaders({Authorization:`Bearer ${e}`}),g();else{const e=Pn(P.BASIC_AUTH_HEADER);e&&(na.setCommonHeaders({Authorization:e}),g())}na.queryRaw("select build",{limit:"0,1000"}).then((e=>{e.type===T.DQL&&1===e.count&&(d((e=>{const t=_r.exec(e.toString());return t?{type:t[1]?t[1].trim().toLowerCase():"oss",version:t[2]}:{type:"dev"}})(e.dataset[0][0])),m((e=>{const t=xr.exec(e.toString());return t?t[1]:""})(e.dataset[0][0])))}))}),[]),(0,r.useEffect)((()=>{l&&t(Fr())}),[l]),l?r.createElement(aa.Provider,{value:{quest:na,buildVersion:c,commitHash:u}},e):null},ia="questdb-sql",la=e=>e.replace(/(?<!["'`])(--\s?.*$)/gm,((e,t)=>{if(t){const e=t.split("\n");return t.startsWith("--")&&e.length>1?"\n"+la(e[1]):""}return e})),sa=e=>{const t=e.getModel(),n=e.getSelection();return t&&n?t.getValueInRange(n):void 0},ca=e=>{const t=la(e.getValue({preserveBOM:!1,lineEnding:"\n"})),n=e.getPosition();let r=0,a=0;const o=[];let i=0,l=0,s=-1,c=null,d=!1;if(n){for(let e=0;e<t.length&&null===c;e++)switch(t[e]){case";":if(d){a++;continue}r<n.lineNumber-1||r===n.lineNumber-1&&a<n.column-1?(o.push({row:i,col:l,position:s,limit:e}),i=r,l=a,s=e+1,a++):c=t.substring(-1===s?0:s,e);break;case" ":s===e&&(i=r,l=a,s=e+1),a++;break;case"\n":r++,a=0,s===e&&(i=r,l=a,s=e+1,a++);break;case"'":d=!d,a++;break;default:a++}if(null===c&&(c=-1===s?t:t.substring(s)),0===c.length){const e=o.pop();return e?{column:e.col,query:t.substring(e.position,e.limit),row:e.row}:void 0}return{column:l,query:c,row:i}}},da=(e,t,n={appendAt:"cursor"})=>{const r=e.getModel();if(r){const a=e.getPosition();if(a){const o=t.split("\n"),{prefix:i,suffix:l,lineStartOffset:s,selectStartOffset:c}=(({appendAt:e,model:t,position:n})=>{const r=1===n.lineNumber,a=n.lineNumber===t?.getValue().split("\n").length,o=t?.getLineContent(n.lineNumber),i=a?void 0:t?.getLineContent(n.lineNumber+1),l=!r&&!a,s={prefix:1,suffix:2,lineStartOffset:1,selectStartOffset:0},c=({end:[{when:()=>r,then:()=>({prefix:1,suffix:0})},{when:()=>!0,then:()=>({prefix:2,suffix:0,selectStartOffset:1})}],cursor:[{when:()=>""===t?.getValue(),then:()=>({prefix:0,suffix:1,lineStartOffset:0})},{when:()=>r&&""===o,then:()=>({prefix:0,lineStartOffset:0,suffix:""===i?0:1})},{when:()=>r&&""!==o,then:()=>({prefix:""===i?1:2,suffix:1,selectStartOffset:1})},{when:()=>l&&""===o,then:()=>({prefix:0,suffix:""===i?1:2})},{when:()=>l&&""!==o&&""!==i,then:()=>({prefix:1,suffix:2})},{when:()=>l&&""!==o&&""===i,then:()=>({prefix:1,suffix:1,selectStartOffset:1})},{when:()=>a,then:()=>({prefix:""===o?1:2,suffix:1,lineStartOffset:1,selectStartOffset:""===o?0:1})}]}[e].find((({when:e})=>e()))??{then:()=>s}).then();return{...s,...c}})({appendAt:n.appendAt,model:r,position:a}),d=(({model:e,position:t,lineStartOffset:n,newQueryLines:r,appendAt:a})=>{if("cursor"===a)return{lineStart:t.lineNumber+n,lineEnd:t.lineNumber+r.length,columnStart:0,columnEnd:r[r.length-1].length+1};const o=(e?.getValue().split("\n").length??0)+n;return{lineStart:o,lineEnd:o+r.length,columnStart:0,columnEnd:r[r.length-1].length+1}})({model:r,position:a,lineStartOffset:s,appendAt:n.appendAt,newQueryLines:o}),u={lineStart:d.lineStart+c,lineEnd:d.lineStart+c+(o.length-1),columnStart:0,columnEnd:d.columnEnd};(({editor:e,lineNumber:t,column:n,text:r})=>{e.executeEdits("",[{range:{startLineNumber:t,startColumn:n,endLineNumber:t,endColumn:n},text:r}])})({editor:e,lineNumber:d.lineStart,column:d.columnStart,text:`${"\n".repeat(i)}${t}${"\n".repeat(l)}`}),e.setSelection({startLineNumber:u.lineStart,endLineNumber:u.lineEnd,startColumn:u.columnStart,endColumn:u.columnEnd})}e.focus(),"end"===n.appendAt&&e.revealLine(r.getLineCount())}},ua=(e,t)=>{const n=t.getModel();n&&e.editor.setModelMarkers(n,ia,[])},ma=(e,t)=>e.findMatches(t,!0,!1,!0,null,!0)??null;var ga=n(86732);class pa extends ga.default{constructor(){super("web-console"),this.version(1).stores({buffers:"++id, label",editor_settings:"++id, key"}),this.version(2).stores({read_notifications:"++id, newsId"}),this.version(3).stores({buffers:"++id, label, position, archived, archivedAt"}).upgrade((e=>{let t=0;e.table("buffers").toCollection().modify((e=>{e.position=t,t++}))})),this.on("populate",(()=>{const e=Pn(P.QUERY_TEXT);void 0!==e&&localStorage.removeItem(P.QUERY_TEXT),this.buffers.add(Ea({label:"SQL",value:e??"",position:0})),this.editor_settings.add({key:"activeBufferId",value:ya.id}),this.editor_settings.add({key:"returnTo",value:""}),this.editor_settings.add({key:"returnToLabel",value:""})})),this.on("ready",(async()=>{0===await this.buffers.count()&&this.buffers.add(Ea({label:"SQL",value:"",position:0}));const e=new URL(window.location.href);await Promise.all(["returnTo","returnToLabel"].map((async t=>{if(e.searchParams.has(t)){const n=e.searchParams.get(t)??"";0!==await this.editor_settings.where("key").equals(t).count()?this.editor_settings.where("key").equals(t).modify({value:n}):this.editor_settings.add({key:t,value:n}),e.searchParams.delete(t)}}))),window.history.replaceState({},"",e)}))}}const fa=new pa;let ha=function(e){return e.SQL="SQL",e.METRICS="Metrics",e}({});const ba={cursorState:[{inSelectionMode:!1,selectionStart:{lineNumber:1,column:1},position:{lineNumber:1,column:1}}],contributionsState:[{"editor.contrib.wordHighlighter":!1,"editor.contrib.folding":{lineCount:1,provider:"indent",foldedImports:!1}}],viewState:{scrollLeft:0,firstPosition:{lineNumber:1,column:1},firstPositionDeltaTop:0}},Ea=({label:e,value:t,editorViewState:n=ba,metricsViewState:r,position:a,archived:o,archivedAt:i})=>({label:e,value:t??"",editorViewState:r?void 0:n,metricsViewState:r,position:a,archived:o,archivedAt:i}),ya={id:1,...Ea({label:"SQL",position:0})},wa=()=>fa.buffers.toArray(),va=()=>fa.editor_settings.where("key").equals("activeBufferId").first();var Ca=n(90990);const _a={editorRef:{current:null},monacoRef:{current:null},insertTextAtCursor:()=>{},appendQuery:()=>{},buffers:[],activeBuffer:ya,setActiveBuffer:()=>Promise.resolve(),addBuffer:()=>Promise.resolve(ya),deleteBuffer:()=>Promise.resolve(),archiveBuffer:()=>Promise.resolve(),deleteAllBuffers:()=>Promise.resolve(),updateBuffer:()=>Promise.resolve(),editorReadyTrigger:()=>{},inFocus:!1},xa=(0,r.createContext)(_a),Sa=({children:e})=>{const t=(0,r.useRef)(null),n=(0,r.useRef)(null),a=(0,Ca.useLiveQuery)(wa,[]),o=(0,Ca.useLiveQuery)((()=>va()),[])?.value,[i,l]=(0,r.useState)(ya),[s,c]=(0,r.useState)(!1),d=(0,r.useRef)(!1);if((0,r.useEffect)((()=>{if(!d.current&&a&&o){const e=a?.find((e=>e.id===o))??a[0];l(e),d.current=!0}}),[a,o]),!a||!o||i===ya)return null;const u=async e=>{const r=(await va())?.value;if(r){if(e.id===r)return;await m(i.id)}if(await(a=e.id,fa.editor_settings.where("key").equals("activeBufferId").modify({value:a})),l(e),t.current&&n.current){const r=n.current.editor.createModel(e.value,ia);t.current.setModel(r),t.current.focus(),ua(n.current,t.current)}var a;e.editorViewState&&t.current?.restoreViewState(e.editorViewState)},m=async(e,n)=>{const r=t.current?.saveViewState();await((e,t)=>fa.buffers.update(e,t))(e,{...n,...r&&!n?.metricsViewState?{editorViewState:r}:{}})},g=async e=>{const n=(await va())?.value;if(void 0!==n&&n===e){const e=await fa.buffers.toCollection().filter((e=>!e.archived)).last();await u(e??ya)}else t.current?.focus()};return r.createElement(xa.Provider,{value:{editorRef:t,monacoRef:n,insertTextAtCursor:e=>{t?.current&&((e,t)=>{e.trigger("keyboard","type",{text:t}),e.focus()})(t.current,e)},appendQuery:(e,n)=>{t?.current&&da(t.current,e,n)},inFocus:s,buffers:a,activeBuffer:i,setActiveBuffer:u,addBuffer:async(e,{shouldSelectAll:r=!1}={})=>{const o=(i=e?.metricsViewState?ha.METRICS:ha.SQL,{id:1,...Ea({label:i,position:0})});var i;const l=(await fa.buffers.filter((t=>!t.label.startsWith(o.label)||!e?.metricsViewState||void 0!==t.metricsViewState)).toArray()).map((e=>e.label.slice(o.label.length+1))).filter(Boolean).map((e=>parseInt(e,10))).sort(),s=Ea({...e,label:e?.label??`${o.label} ${(()=>{for(let e=0;e<=l.length;e++){const t=e+1;if(!l.includes(t))return t}})()}`,position:a.filter((e=>!e.archived)).length}),c=await fa.buffers.add(s);if(await u(s),t.current&&n.current&&"string"==typeof s.value&&!s.metricsViewState){const e=n.current?.editor.createModel(s.value,ia);t.current.setModel(e),r&&t.current?.setSelection(e.getFullModelRange())}return{id:c,...s}},deleteBuffer:async e=>{await(e=>fa.buffers.delete(e))(e),await g(e)},archiveBuffer:async e=>{await m(e,{archived:!0,archivedAt:(new Date).getTime(),position:-1}),await g(e)},deleteAllBuffers:async()=>{await fa.buffers.clear()},updateBuffer:m,editorReadyTrigger:e=>{e.focus(),c(!0),e.onDidFocusEditorWidget((()=>c(!0))),e.onDidBlurEditorWidget((()=>c(!1))),i.editorViewState&&e.restoreViewState(i.editorViewState)}}},e)},Ta=()=>(0,r.useContext)(xa);var ka=n(56883);const Na=({children:e})=>{const{settings:t}=pr(),n=!t["posthog.enabled"]??!0;return r.createElement(ka.zf,{apiKey:null===t["posthog.api.key"]?void 0:t["posthog.api.key"],options:{disable_persistence:n,disable_session_recording:n,disable_surveys:n,advanced_disable_decide:n,advanced_disable_feature_flags:n,advanced_disable_feature_flags_on_first_load:n,advanced_disable_toolbar_metrics:n,autocapture:!n,capture_pageview:!n,capture_pageleave:!n}},e)},Oa={[k.TOO_MANY_OPEN_FILES]:{title:"System limit for open files",message:"Too many open files, please, increase the maximum number of open file handlers OS limit",link:"https://questdb.io/docs/deployment/capacity-planning/#maximum-open-files"},[k.DISK_FULL]:{title:"OS configuration",message:"No space left on device, please, extend the volume or free existing disk space up",link:"https://questdb.io/docs/deployment/capacity-planning/#os-configuration"},[k.OUT_OF_MMAP_AREAS]:{title:"Max virtual memory areas limit",message:"Out of virtual memory mapping areas, please, increase the maximum number of memory-mapped areas OS limit",link:"https://questdb.io/docs/deployment/capacity-planning/#max-virtual-memory-areas-limit"},[k.OUT_OF_MEMORY]:{title:"Out of memory",message:"Out of memory, please, analyze system metrics, and upgrade memory, if necessary",link:"https://questdb.io/docs/deployment/capacity-planning/#cpu-and-ram-configuration"},[k.UNSUPPORTED_FILE_SYSTEM]:{title:"Unsupported file system",message:"DB root is located on an unsupported file system, please, move the DB root to a volume with supported file system",link:"https://questdb.io/docs/operations/backup/#supported-filesystems"}},Ra=(0,s.ZP)(en.z).withConfig({displayName:"SuspensionDialog__ErrorButton"})(["\n background: #3e1b1b;\n border: 1px #723131 solid;\n color: #f47474;\n padding: 3px 10px;\n font-size: 1.3rem;\n"]),Ia=(0,s.ZP)(nn.V.Content).withConfig({displayName:"SuspensionDialog__StyledDialogContent"})(["\n border-color: #723131;\n"]),Pa=(0,s.ZP)(nn.V.Description).withConfig({displayName:"SuspensionDialog__StyledDescription"})(["\n display: grid;\n gap: 2rem;\n"]),Aa=(0,s.ZP)(Se).attrs({align:"center",flexDirection:"column"}).withConfig({displayName:"SuspensionDialog__ContentBlockBox"})(["\n width: 100%;\n"]),La=s.ZP.div.withConfig({displayName:"SuspensionDialog__FormWrapper"})(["\n width: 100%;\n display: grid;\n grid-template-columns: 100px auto;\n gap: 1rem;\n"]),Da=(0,s.ZP)(In.Input).withConfig({displayName:"SuspensionDialog__TransactionInput"})(["\n width: 10rem;\n"]),Ma=(0,s.ZP)(Se).withConfig({displayName:"SuspensionDialog__Icon"})(["\n height: 4.8rem;\n"]),Ba=(0,s.ZP)(rn.I).withConfig({displayName:"SuspensionDialog__StyledInput"})(["\n width: 100%;\n font-family: ",";\n background: #313340;\n border-color: ",";\n"],(({theme:e})=>e.fontMonospace),(({theme:e})=>e.color.selection)),Fa="Error restarting transaction",za=({walTableData:e})=>{const[t,n]=(0,r.useState)(!1),{quest:a}=(0,r.useContext)(aa),[o,i]=(0,r.useState)(!1),[l,s]=(0,r.useState)(!1),[c,d]=(0,r.useState)(),u=parseFloat(e.sequencerTxn)-parseFloat(e.writerTxn);return(0,r.useEffect)((()=>{t&&(d(void 0),s(!1))}),[t]),r.createElement(nn.V.Root,{open:t,onOpenChange:e=>{e||R.publish(I.MSG_QUERY_SCHEMA)}},r.createElement(nn.V.Trigger,{asChild:!0},r.createElement(we.A,null,r.createElement(Ra,{prefixIcon:r.createElement(an.j,{size:"18px"}),"data-hook":"schema-suspension-dialog-trigger",onClick:e=>{n(!0),e.stopPropagation()}},"Suspended"))),r.createElement(nn.V.Portal,null,r.createElement(we.A,null,r.createElement(ve.a,{primitive:nn.V.Overlay})),r.createElement(Ia,{"data-hook":"schema-suspension-dialog","data-table-name":e.name,onClick:e=>{e.stopPropagation()},onEscapeKeyDown:()=>n(!1),onPointerDownOutside:()=>n(!1)},r.createElement(nn.V.Title,null,r.createElement(Se,null,r.createElement(Ft.i,{size:20,color:"#FF5555"}),"Table is suspended: ",e.name)),r.createElement(Pa,null,r.createElement(Se,{gap:"3rem",flexDirection:"column",align:"center"},c&&r.createElement(Ae,{color:"red"},c),l&&r.createElement(Ae,{color:"green"},"WAL resumed successfully!"),e.errorTag&&Oa[e.errorTag]&&r.createElement(Ae,{color:"red","data-hook":"schema-suspension-dialog-error-message",size:"lg",align:"center"},Oa[e.errorTag].message),r.createElement(Se,{gap:"2rem",align:"flex-start"},r.createElement(Se,{gap:"1rem",flexDirection:"column",align:"center"},r.createElement(Ma,null,r.createElement("img",{src:"assets/icon-copy.svg",alt:"Copy icon",width:"48",height:"48"})),r.createElement(Ae,{color:"foreground",size:"lg"},e.sequencerTxn)),r.createElement(Ma,null,r.createElement("img",{src:"assets/line.svg",alt:"Broken transation illustration",width:"108",height:"18"})),r.createElement(Se,{gap:"1rem",flexDirection:"column",align:"center"},r.createElement(Ma,null,r.createElement("img",{src:"assets/icon-database.svg",alt:"Database icon",width:"36",height:"38"})),r.createElement(Ae,{color:"foreground",size:"lg"},e.writerTxn))),r.createElement(Ae,{color:"foreground",size:"lg"},u," transaction",1===u?"":"s"," behind"),e.errorMessage&&r.createElement(Se,{flexDirection:"column",gap:"1rem",style:{width:"100%"}},r.createElement(Ae,{color:"foreground"},"Server message:"),r.createElement(Se,{gap:"0.5rem",style:{width:"100%"}},r.createElement(Ba,{name:"server_message",disabled:!0,value:e.errorMessage}),r.createElement(en.z,{skin:"secondary",onClick:()=>{navigator.clipboard.writeText(e.errorMessage??"")}},r.createElement(ln.f,{size:"18px"})))),e.errorTag&&Oa[e.errorTag]&&r.createElement(Aa,{gap:"0.5rem"},r.createElement(Ae,{color:"foreground"},"Workarounds and documentation:"),r.createElement(at,{color:"cyan",hoverColor:"cyan",href:Oa[e.errorTag].link,rel:"noreferrer",target:"_blank","data-hook":"schema-suspension-dialog-error-link"},r.createElement(Se,{align:"center",gap:"0.25rem"},r.createElement(sn.d,{size:"16px"}),Oa[e.errorTag].title))),r.createElement(Aa,{gap:"2rem"},r.createElement(Ae,{color:"gray2"},"If you have addressed the issue, restart the process:"),r.createElement(In,{name:"resume_transaction_form",onSubmit:async t=>{i(!0),d(void 0);try{const n=await a.query(`ALTER TABLE ${e.name} RESUME WAL${t.resume_transaction_id?` FROM TRANSACTION ${t.resume_transaction_id}`:""}`);n&&n.type===T.DDL?s(!0):d(Fa),i(!1)}catch(e){const t=e;i(!1),d(`${Fa}${t.error?`: ${t.error}`:""}`)}},defaultValues:{resume_transaction_id:void 0},validationSchema:Vn().object({resume_transaction_id:Vn().number().optional().allow("")})},r.createElement(La,null,r.createElement(In.Item,{name:"resume_transaction_id"},r.createElement(Da,{name:"resume_transaction_id",placeholder:(parseInt(e.writerTxn)+1).toString()})),r.createElement(In.Submit,{disabled:o,prefixIcon:r.createElement(cn.G,{size:"18px"}),variant:"secondary","data-hook":"schema-suspension-dialog-restart-transaction"},o?"Restarting...":"Resume WAL")))))),r.createElement(nn.V.ActionButtons,null,r.createElement(nn.V.Close,{asChild:!0},r.createElement(en.z,{prefixIcon:r.createElement(on.W,{size:18}),skin:"secondary","data-hook":"schema-suspension-dialog-dismiss",onClick:()=>n(!1)},"Dismiss"))))))};var Za=n(90281);function Ua(){return Ua=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Ua.apply(this,arguments)}const qa=(0,s.ZP)(zt.x).attrs({align:"center",justifyContent:"center"}).withConfig({displayName:"checkbox__Root"})(["\n width: 16px;\n height: 16px;\n flex-shrink: 0;\n opacity: ",";\n transition: opacity 275ms ease-in-out;\n pointer-events: ",";\n"],(({$visible:e})=>e?1:0),(({$visible:e})=>e?"auto":"none")),ja=s.ZP.div.withConfig({displayName:"checkbox__Unchecked"})(["\n width: 14px;\n height: 14px;\n border-radius: 50%;\n border: 1px solid ",";\n cursor: pointer;\n"],D("gray2")),Ha=({visible:e,checked:t,onClick:n})=>r.createElement(qa,Ua({},n?{onClick:n}:{},{$visible:e}),t?r.createElement(Za.e,{size:"16px"}):r.createElement(ja,null)),Va=(0,s.ZP)(Ae).withConfig({displayName:"Row__Type"})(["\n margin-right: 1rem;\n flex: 0;\n transition: opacity ","ms;\n"],Y.REG),$a=(0,s.ZP)(Ae).withConfig({displayName:"Row__Title"})(["\n cursor: ",";\n\n .highlight {\n background-color: #7c804f;\n color: ",";\n }\n"],(({kind:e})=>["folder","table"].includes(e)?"pointer":"initial"),(({theme:e})=>e.color.foreground)),Ga=(0,s.ZP)(en.z).withConfig({displayName:"Row__CopyButton"})(["\n && {\n position: absolute;\n z-index: 2;\n right: ",";\n opacity: 0;\n background: ",";\n padding-top: 1.2rem;\n padding-bottom: 1.2rem;\n font-size: 1.3rem;\n\n .highlight {\n background-color: #7c804f;\n color: ",";\n }\n }\n"],(({suspended:e})=>e?"13rem":"1rem"),(({theme:e})=>e.color.backgroundLighter),(({theme:e})=>e.color.foreground)),Wa=s.ZP.div.withConfig({displayName:"Row__Wrapper"})(["\n position: relative;\n display: flex;\n flex-direction: column;\n padding: ",";\n padding-left: 1rem;\n transition: background ","ms;\n\n &:hover,\n &:active {\n background: ",";\n }\n\n &:hover\n ",",\n &:active\n "," {\n opacity: 1;\n }\n\n &:hover "," {\n opacity: 0;\n }\n"],(({suspended:e})=>e?"0":"0.5rem 0"),Y.REG,D("selection"),Ga,Ga,Va),Qa=(0,s.ZP)($a).withConfig({displayName:"Row__StyledTitle"})(["\n z-index: 1;\n"]),Ya=s.ZP.span.withConfig({displayName:"Row__TableActions"})(["\n z-index: 1;\n position: relative;\n"]),Ka=s.ZP.div.withConfig({displayName:"Row__FlexRow"})(["\n display: flex;\n align-items: center;\n width: 100%;\n transform: translateX(",");\n transition: transform 275ms ease-in-out;\n"],(({$selectOpen:e})=>e?"26px":"0")),Xa=s.ZP.span.withConfig({displayName:"Row__Spacer"})(["\n flex: 1;\n"]),Ja=(0,s.ZP)(Dt.d).withConfig({displayName:"Row__InfoIcon"})(["\n color: ",";\n"],D("purple")),eo=(0,s.ZP)(It.w).withConfig({displayName:"Row__RocketIcon"})(["\n color: ",";\n margin-right: 1rem;\n"],D("orange")),to=(0,s.ZP)(Pt.l).withConfig({displayName:"Row__SortDownIcon"})(["\n color: ",";\n margin-right: 0.8rem;\n"],D("green")),no=(0,s.ZP)(At.U).withConfig({displayName:"Row__RightArrowIcon"})(["\n color: ",";\n margin-right: 0.8rem;\n cursor: pointer;\n"],D("gray2")),ro=(0,s.ZP)(no).withConfig({displayName:"Row__DownArrowIcon"})(["\n transform: rotateZ(90deg);\n"]),ao=(0,s.ZP)(Lt.B).withConfig({displayName:"Row__DotIcon"})(["\n color: ",";\n margin-right: 1rem;\n"],D("gray2")),oo=s.ZP.div.withConfig({displayName:"Row__InfoIconWrapper"})(["\n display: flex;\n padding: 0 1rem;\n align-items: center;\n justify-content: center;\n"]),io=({className:e,designatedTimestamp:t,description:n,expanded:a,kind:o,indexed:i,table_id:l,name:s,partitionBy:c,walEnabled:d,walTableData:u,onClick:m,suffix:g,tooltip:p,type:f,selectOpen:h,selected:b,onSelectToggle:E})=>{const{query:y}=(0,r.useContext)(tn);return r.createElement(Wa,{"data-hook":"schema-row",className:e,expanded:a,suspended:u?.suspended&&"table"===o,onClick:e=>{"table"===o&&h&&E?E(s):m?.(e)}},r.createElement(zt.x,{align:"center",justifyContent:"flex-start",gap:"2rem",style:{width:"100%",position:"relative"}},"table"===o&&r.createElement("div",{style:{position:"absolute"}},r.createElement(Ha,{visible:h&&void 0!==E,checked:b})),r.createElement(Ka,{$selectOpen:h},"table"===o&&r.createElement(r.Fragment,null,r.createElement(Jt,{partitionBy:c,walEnabled:d,suspended:u?.suspended})),"column"===o&&i&&r.createElement(Ke,{icon:r.createElement(eo,{size:"13px"}),placement:"top",tooltip:"Indexed"}),"folder"===o&&a&&r.createElement(ro,{size:"14px"}),"folder"===o&&!a&&r.createElement(no,{size:"14px"}),"column"===o&&!i&&s===t&&r.createElement(Ke,{icon:r.createElement(to,{size:"14px"}),placement:"top",tooltip:"Designated timestamp"}),"column"===o&&!i&&s!==t&&r.createElement(ao,{size:"12px"}),r.createElement(Qa,{color:"foreground",ellipsis:!0,kind:o,"data-hook":`schema-${o}-title`},r.createElement(Bt(),{highlightClassName:"highlight",searchWords:[y??""],textToHighlight:s})),g,r.createElement(Xa,null),f&&r.createElement(Va,{_style:"italic",color:"pinkLighter",transform:"lowercase"},f),u?.suspended&&"table"===o&&r.createElement(Ya,null,r.createElement(za,{walTableData:u})),p&&n&&r.createElement(Ke,{icon:r.createElement(oo,null,r.createElement(Ja,{size:"10px"})),placement:"right",tooltip:n})),!p&&r.createElement(Ae,{color:"comment"},n)))};function lo(){return lo=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},lo.apply(this,arguments)}const so=s.ZP.ul.withConfig({displayName:"Tree__Ul"})(["\n padding: 0;\n margin: 0;\n"]),co=s.ZP.li.withConfig({displayName:"Tree__Li"})(["\n list-style: none;\n padding: 0 1rem;\n"]),uo=e=>{const{table_id:t,name:n,kind:a,initiallyOpen:o,onOpen:i,render:l,children:s=[],wrapper:c}=e,[d,u]=(0,r.useState)(o??!1),[m,g]=(0,r.useState)(!1),[p,f]=(0,r.useState)(s),h=(0,r.useRef)(!0),b=(0,r.useCallback)((async()=>{const e={setChildren:e=>{h.current&&f(e)}};"function"==typeof i&&(g(!0),await i(e),h.current&&g(!1))}),[i]),E=(0,r.useCallback)((async()=>{m||d||await b(),u(!d)}),[d,m,b]);return(0,r.useEffect)((()=>(d&&"function"==typeof i&&0===p.length&&!m&&(async()=>{h.current&&await b()})(),()=>{h.current=!1})),[]),(0,r.useEffect)((()=>{u(o??!1)}),[o]),r.createElement(co,null,"function"==typeof l?l({toggleOpen:E,isOpen:d,isLoading:m}):r.createElement(io,{kind:a??"folder",name:n,table_id:t,onClick:()=>u(!d)}),d&&r.createElement(go,{condition:Boolean(c),wrapper:e=>r.createElement(c??r.Fragment,{},e)},r.createElement(mo,{root:p})))},mo=({root:e})=>r.createElement(so,null,e.map((e=>r.createElement(uo,lo({key:e.name},e))))),go=({condition:e,wrapper:t,children:n})=>e?t(n):n;var po=n(95726),fo=n(849);const ho=s.ZP.div.withConfig({displayName:"GithubBanner__Wrapper"})(["\n position: fixed;\n display: flex;\n right: 0;\n bottom: 0;\n left: 0;\n height: 100%;\n align-items: center;\n justify-content: center;\n background: ",";\n overflow: hidden;\n"],D("pink")),bo=s.ZP.span.withConfig({displayName:"GithubBanner__GithubLink"})(["\n text-decoration: underline;\n"]),Eo=(0,s.ZP)(Ce.x).withConfig({displayName:"GithubBanner__CloseIcon"})(["\n position: absolute;\n right: 1rem;\n color: ",";\n\n &:hover {\n cursor: pointer;\n }\n"],D("black")),yo=(0,s.ZP)(fo.U).withConfig({displayName:"GithubBanner__StarIcon"})(["\n color: ",";\n"],D("yellow")),wo=({onClick:e})=>r.createElement(ho,null,r.createElement(at,{hoverColor:"black",href:"https://github.com/questdb/questdb",weight:800},"If you like QuestDB, give us a ",r.createElement(yo,{size:"14px"})," on ",r.createElement(bo,null,"Github")),r.createElement(Eo,{onClick:e,size:"20px"}));var vo=n(45020),Co=n(99106),_o=n(71073),xo=n(18373),So=n(18226);const To=s.ZP.div.withConfig({displayName:"BuildVersion__Wrapper"})(["\n display: flex;\n flex-direction: row;\n justify-content: flex-start;\n align-items: center;\n\n & > :not(:last-child) {\n margin-right: 1rem;\n }\n"]),ko=(0,s.ZP)(ce).withConfig({displayName:"BuildVersion__ReleaseNotesButton"})(["\n position: relative;\n ","\n gap: 0.5rem;\n"],(({enterprise:e})=>e?"background: #322733;":"")),No=s.ZP.a.withConfig({displayName:"BuildVersion__ReleaseLink"})(["\n text-decoration: none;\n"]),Oo=(0,s.ZP)(vo.k).withConfig({displayName:"BuildVersion__UpgradeIcon"})(["\n color: ",";\n"],(({theme:e})=>e.color.green)),Ro=s.ZP.span.withConfig({displayName:"BuildVersion__NewestRelease"})(["\n color: ",";\n font-size: ",";\n"],(({theme:e})=>e.color.green),(({theme:e})=>e.fontSize.xs)),Io={dev:{label:"QuestDB Dev"},oss:{label:"QuestDB"},enterprise:{icon:r.createElement(Co.S,{size:"18px"}),label:"QuestDB Enterprise"},"enterprise pro":{icon:r.createElement(_o.H,{size:"18px"}),label:"QuestDB Enterprise Pro"},"enterprise ultimate":{icon:r.createElement(xo.$,{size:"18px"}),label:"QuestDB Enterprise Ultimate"}},Po=()=>{const{quest:e,buildVersion:t,commitHash:n}=(0,r.useContext)(aa),[a,o]=(0,r.useState)(null);if((0,r.useEffect)((()=>{t.version&&t.type.includes("oss")&&e.getLatestRelease().then((e=>{e.name&&o(e)})).catch((e=>{console.error(e)}))}),[t]),""===t.version&&!n.length)return null;const i=t.type.includes("enterprise"),l=((e,t)=>{if(void 0===t)return!1;const n=e.type.includes("enterprise");try{if(e.version){const r=(0,So.qu)(e.version,t,"<");return!n&&r}return!1}catch(e){return!1}})(t,a?.name),s=l?a?.html_url:"https://github.com/questdb/questdb"+(t?`/releases/tag/${t.version}`:`/commit/${n}`),{label:c,icon:d}=Io[t.type]??Io.dev;return r.createElement(To,null,r.createElement(No,{href:i?"https://questdb.io/enterprise":s,rel:"noopener noreferrer",target:"_blank"},r.createElement(ko,{enterprise:i,title:["dev","oss"].includes(t.type)?"Show "+(t?"release notes":"commit details"):""},d,c,t.version?` ${t.version}`:"",!i&&r.createElement(sn.d,{size:"16px"}),l&&r.createElement(r.Fragment,null,r.createElement(Oo,{size:"18px"}),r.createElement(Ro,null,a?.name)))))},Ao=s.ZP.div.withConfig({displayName:"ConnectionStatus__Wrapper"})(["\n display: flex;\n flex-direction: row;\n justify-content: flex-start;\n align-items: center;\n"]),Lo=s.ZP.div.withConfig({displayName:"ConnectionStatus__StatusIcon"})(["\n display: block;\n width: 0.6rem;\n height: 0.6rem;\n border-radius: 50%;\n background-color: ",";\n margin-right: 0.6rem;\n"],(e=>e.isConnected?D("green"):D("red"))),Do=()=>{const[e,t]=(0,r.useState)(!0);return(0,r.useEffect)((()=>{R.subscribe(I.MSG_CONNECTION_OK,(()=>{t(!0)})),R.subscribe(I.MSG_CONNECTION_ERROR,(()=>{t(!1)}))}),[e]),r.createElement(Ao,null,r.createElement(Lo,{isConnected:e}),e?r.createElement(Ae,{color:"white"},"Connected"):r.createElement(Ae,{color:"white"},"Error connecting to QuestDB"))},Mo=s.ZP.div.withConfig({displayName:"Footer__Wrapper"})(["\n position: absolute;\n display: flex;\n height: 4rem;\n bottom: 0;\n left: 0;\n right: 0;\n padding-left: 45px;\n"]),Bo=s.ZP.div.withConfig({displayName:"Footer__LeftContainer"})(["\n display: flex;\n padding-left: 1rem;\n align-items: center;\n flex: 1;\n"]),Fo=s.ZP.div.withConfig({displayName:"Footer__RightContainer"})(["\n display: flex;\n padding-right: 1rem;\n align-items: center;\n\n & > *:not(:last-child) {\n margin-right: 1rem;\n }\n"]),zo=(0,s.vJ)(["\n .github-banner-enter {\n max-height: 0;\n }\n\n .github-banner-enter-active {\n max-height: 4rem;\n transition: all ","ms;\n }\n\n .github-banner-exit,\n .github-banner-enter-done {\n max-height: 4rem;\n }\n\n .github-banner-exit-active {\n max-height: 0;\n transition: all ","ms;\n }\n"],Y.REG,Y.REG),Zo=()=>{const[e,t]=(0,r.useState)(!1),[n,a]=(0,r.useState)(!0),o=(0,r.useCallback)((()=>{t(!1)}),[]),{consoleConfig:i}=pr();return(0,r.useEffect)((()=>{setTimeout((()=>{t(!0)}),2e3),R.subscribe(I.MSG_CONNECTION_ERROR,(()=>{a(!1)})),R.subscribe(I.MSG_CONNECTION_OK,(()=>{a(!0)}))}),[]),r.createElement(Mo,{id:"footer"},r.createElement(Bo,null,r.createElement(Ae,{color:"foreground"},"Copyright © ",(new Date).getFullYear()," QuestDB")),r.createElement(Fo,null,r.createElement(Do,null),n&&r.createElement(Po,null),r.createElement(at,{color:"foreground",hoverColor:"cyan",href:"https://github.com/questdb/questdb",rel:"noreferrer",target:"_blank"},r.createElement(po.E,{size:"18px"}))),r.createElement(zo,null),r.createElement(st.Z,{classNames:"github-banner",in:e&&i.githubBanner,timeout:Y.REG,unmountOnExit:!0},r.createElement(wo,{onClick:o})))};var Uo=n(42884);const qo="#2c2e3d",jo={base:"vs-dark",inherit:!0,rules:[{background:qo,token:""},{foreground:"6272a4",token:"comment"},{foreground:"f1fa8c",token:"string"},{foreground:"50fa7b",token:"number"},{foreground:"f1fa8c",token:"string.sql"},{foreground:"ff79c6",token:"operator.sql"},{foreground:"8be9fd",fontStyle:"italic",token:"dataType"},{foreground:"8be9fd",token:"predefined.sql"},{foreground:"8be9fd",token:"function"},{foreground:"bd93f9",token:"constant.numeric"},{foreground:"bd93f9",token:"constant.language"},{foreground:"bd93f9",token:"constant.character"},{foreground:"bd93f9",token:"constant.other"},{foreground:"ffb86c",token:"variable.other.readwrite.instance"},{foreground:"ff79c6",token:"constant.character.escaped"},{foreground:"ff79c6",token:"constant.character.escape"},{foreground:"ff79c6",token:"string source"},{foreground:"ff79c6",token:"string source.ruby"},{foreground:"ff79c6",token:"keyword"},{foreground:"ff79c6",token:"storage"},{foreground:"8be9fd",fontStyle:"italic",token:"storage.type"},{foreground:"50fa7b",fontStyle:"underline",token:"entity.name.class"},{foreground:"50fa7b",fontStyle:"italic underline",token:"entity.other.inherited-class"},{foreground:"50fa7b",token:"entity.name.function"},{foreground:"ffb86c",fontStyle:"italic",token:"variable.parameter"},{foreground:"ff79c6",token:"entity.name.tag"},{foreground:"50fa7b",token:"entity.other.attribute-name"},{foreground:"8be9fd",token:"support.function"},{foreground:"6be5fd",token:"support.constant"},{foreground:"66d9ef",fontStyle:" italic",token:"support.type"},{foreground:"66d9ef",fontStyle:" italic",token:"support.class"},{foreground:"f8f8f0",background:"ff79c6",token:"invalid"},{foreground:"f8f8f0",background:"bd93f9",token:"invalid.deprecated"},{foreground:"cfcfc2",token:"meta.structure.dictionary.json string.quoted.double.json"},{foreground:"6272a4",token:"meta.diff"},{foreground:"6272a4",token:"meta.diff.header"},{foreground:"ff79c6",token:"markup.deleted"},{foreground:"50fa7b",token:"markup.inserted"},{foreground:"e6db74",token:"markup.changed"},{foreground:"bd93f9",token:"constant.numeric.line-number.find-in-files - match"},{foreground:"e6db74",token:"entity.name.filename"},{foreground:"f83333",token:"message.error"},{foreground:"eeeeee",token:"punctuation.definition.string.begin.json - meta.structure.dictionary.value.json"},{foreground:"eeeeee",token:"punctuation.definition.string.end.json - meta.structure.dictionary.value.json"},{foreground:"8be9fd",token:"meta.structure.dictionary.json string.quoted.double.json"},{foreground:"f1fa8c",token:"meta.structure.dictionary.value.json string.quoted.double.json"},{foreground:"50fa7b",token:"meta meta meta meta meta meta meta.structure.dictionary.value string"},{foreground:"ffb86c",token:"meta meta meta meta meta meta.structure.dictionary.value string"},{foreground:"ff79c6",token:"meta meta meta meta meta.structure.dictionary.value string"},{foreground:"bd93f9",token:"meta meta meta meta.structure.dictionary.value string"},{foreground:"50fa7b",token:"meta meta meta.structure.dictionary.value string"},{foreground:"ffb86c",token:"meta meta.structure.dictionary.value string"}],colors:{"activityBar.activeBackground":"#bd93f910","activityBar.activeBorder":"#ff79c680","activityBar.background":"#343746","activityBar.foreground":"#f8f8f2","activityBar.inactiveForeground":"#6272a4","activityBarBadge.background":"#ff79c6","activityBarBadge.foreground":"#f8f8f2","badge.background":"#44475a","badge.foreground":"#f8f8f2","breadcrumb.activeSelectionForeground":"#f8f8f2","breadcrumb.background":qo,"breadcrumb.focusForeground":"#f8f8f2","breadcrumb.foreground":"#6272a4","breadcrumbPicker.background":"#191a21","button.background":"#44475a","button.foreground":"#f8f8f2","button.secondaryBackground":qo,"button.secondaryForeground":"#f8f8f2","button.secondaryHoverBackground":"#343746","debugToolBar.background":"#21222c","diffEditor.insertedTextBackground":"#50fa7b20","diffEditor.removedTextBackground":"#ff555550","dropdown.background":"#343746","dropdown.border":"#191a21","dropdown.foreground":"#f8f8f2","editor.background":qo,"editor.findMatchBackground":"#ffb86c80","editor.findMatchHighlightBackground":"#ffffff40","editor.findRangeHighlightBackground":"#44475a75","editor.foldBackground":"#21222c","editor.foreground":"#f8f8f2","editor.hoverHighlightBackground":"#8be9fd50","editor.lineHighlightBorder":"#383b4b","editor.lineHighlightBackground":"#383b4b","editor.rangeHighlightBackground":"#bd93f915","editor.selectionBackground":"#44475a","editor.selectionHighlightBackground":"#424450","editor.snippetFinalTabstopHighlightBackground":qo,"editor.snippetFinalTabstopHighlightBorder":"#50fa7b","editor.snippetTabstopHighlightBackground":qo,"editor.snippetTabstopHighlightBorder":"#6272a4","editor.wordHighlightBackground":"#8be9fd50","editor.wordHighlightStrongBackground":"#50fa7b50","editorBracketHighlight.foreground1":"#f8f8f2","editorBracketHighlight.foreground2":"#ff79c6","editorBracketHighlight.foreground3":"#8be9fd","editorBracketHighlight.foreground4":"#50fa7b","editorBracketHighlight.foreground5":"#bd93f9","editorBracketHighlight.foreground6":"#ffb86c","editorBracketHighlight.unexpectedBracket.foreground":"#ff5555","editorCodeLens.foreground":"#6272a4","editorError.foreground":"#ff5555","editorGroup.border":"#bd93f9","editorGroup.dropBackground":"#44475a70","editorGroupHeader.tabsBackground":"#191a21","editorGutter.addedBackground":"#50fa7b80","editorGutter.deletedBackground":"#ff555580","editorGutter.modifiedBackground":"#8be9fd80","editorHoverWidget.background":qo,"editorHoverWidget.border":"#6272a4","editorIndentGuide.activeBackground":"#ffffff45","editorIndentGuide.background":"#ffffff1a","editorLineNumber.foreground":"#6272a4","editorLink.activeForeground":"#8be9fd","editorMarkerNavigation.background":"#21222c","editorOverviewRuler.addedForeground":"#50fa7b80","editorOverviewRuler.border":"#191a21","editorOverviewRuler.currentContentForeground":"#50fa7b","editorOverviewRuler.deletedForeground":"#ff555580","editorOverviewRuler.errorForeground":"#ff555580","editorOverviewRuler.incomingContentForeground":"#bd93f9","editorOverviewRuler.infoForeground":"#8be9fd80","editorOverviewRuler.modifiedForeground":"#8be9fd80","editorOverviewRuler.selectionHighlightForeground":"#ffb86c","editorOverviewRuler.warningForeground":"#ffb86c80","editorOverviewRuler.wordHighlightForeground":"#8be9fd","editorOverviewRuler.wordHighlightStrongForeground":"#50fa7b","editorRuler.foreground":"#ffffff1a","editorSuggestWidget.background":"#21222c","editorSuggestWidget.foreground":"#f8f8f2","editorSuggestWidget.selectedBackground":"#44475a","editorWarning.foreground":"#8be9fd","editorWhitespace.foreground":"#ffffff1a","editorWidget.background":"#21222c",errorForeground:"#ff5555","extensionButton.prominentBackground":"#50fa7b90","extensionButton.prominentForeground":"#f8f8f2","extensionButton.prominentHoverBackground":"#50fa7b60",focusBorder:"#6272a4",foreground:"#f8f8f2","gitDecoration.conflictingResourceForeground":"#ffb86c","gitDecoration.deletedResourceForeground":"#ff5555","gitDecoration.ignoredResourceForeground":"#6272a4","gitDecoration.modifiedResourceForeground":"#8be9fd","gitDecoration.untrackedResourceForeground":"#50fa7b","input.background":qo,"input.border":"#191a21","input.foreground":"#f8f8f2","input.placeholderForeground":"#6272a4","inputOption.activeBorder":"#bd93f9","inputValidation.errorBorder":"#ff5555","inputValidation.infoBorder":"#ff79c6","inputValidation.warningBorder":"#ffb86c","list.activeSelectionBackground":"#44475a","list.activeSelectionForeground":"#f8f8f2","list.dropBackground":"#44475a","list.errorForeground":"#ff5555","list.focusBackground":"#44475a75","list.highlightForeground":"#8be9fd","list.hoverBackground":"#44475a75","list.inactiveSelectionBackground":"#44475a75","list.warningForeground":"#ffb86c","listFilterWidget.background":"#343746","listFilterWidget.noMatchesOutline":"#ff5555","listFilterWidget.outline":"#424450","merge.currentHeaderBackground":"#50fa7b90","merge.incomingHeaderBackground":"#bd93f990","panel.background":qo,"panel.border":"#bd93f9","panelTitle.activeBorder":"#ff79c6","panelTitle.activeForeground":"#f8f8f2","panelTitle.inactiveForeground":"#6272a4","peekView.border":"#44475a","peekViewEditor.background":qo,"peekViewEditor.matchHighlightBackground":"#f1fa8c80","peekViewResult.background":"#21222c","peekViewResult.fileForeground":"#f8f8f2","peekViewResult.lineForeground":"#f8f8f2","peekViewResult.matchHighlightBackground":"#f1fa8c80","peekViewResult.selectionBackground":"#44475a","peekViewResult.selectionForeground":"#f8f8f2","peekViewTitle.background":"#191a21","peekViewTitleDescription.foreground":"#6272a4","peekViewTitleLabel.foreground":"#f8f8f2","pickerGroup.border":"#bd93f9","pickerGroup.foreground":"#8be9fd","progressBar.background":"#ff79c6","selection.background":"#bd93f9","settings.checkboxBackground":"#21222c","settings.checkboxBorder":"#191a21","settings.checkboxForeground":"#f8f8f2","settings.dropdownBackground":"#21222c","settings.dropdownBorder":"#191a21","settings.dropdownForeground":"#f8f8f2","settings.headerForeground":"#f8f8f2","settings.modifiedItemIndicator":"#ffb86c","settings.numberInputBackground":"#21222c","settings.numberInputBorder":"#191a21","settings.numberInputForeground":"#f8f8f2","settings.textInputBackground":"#21222c","settings.textInputBorder":"#191a21","settings.textInputForeground":"#f8f8f2","sideBar.background":"#21222c","sideBarSectionHeader.background":qo,"sideBarSectionHeader.border":"#191a21","sideBarTitle.foreground":"#f8f8f2","statusBar.background":"#191a21","statusBar.debuggingBackground":"#ff5555","statusBar.debuggingForeground":"#191a21","statusBar.foreground":"#f8f8f2","statusBar.noFolderBackground":"#191a21","statusBar.noFolderForeground":"#f8f8f2","statusBarItem.prominentBackground":"#ff5555","statusBarItem.prominentHoverBackground":"#ffb86c","statusBarItem.remoteBackground":"#bd93f9","statusBarItem.remoteForeground":qo,"tab.activeBackground":qo,"tab.activeBorderTop":"#ff79c680","tab.activeForeground":"#f8f8f2","tab.border":"#191a21","tab.inactiveBackground":"#21222c","tab.inactiveForeground":"#6272a4","terminal.ansiBlack":"#21222c","terminal.ansiBlue":"#bd93f9","terminal.ansiBrightBlack":"#6272a4","terminal.ansiBrightBlue":"#d6acff","terminal.ansiBrightCyan":"#a4ffff","terminal.ansiBrightGreen":"#69ff94","terminal.ansiBrightMagenta":"#ff92df","terminal.ansiBrightRed":"#ff6e6e","terminal.ansiBrightWhite":"#ffffff","terminal.ansiBrightYellow":"#ffffa5","terminal.ansiCyan":"#8be9fd","terminal.ansiGreen":"#50fa7b","terminal.ansiMagenta":"#ff79c6","terminal.ansiRed":"#ff5555","terminal.ansiWhite":"#f8f8f2","terminal.ansiYellow":"#f1fa8c","terminal.background":qo,"terminal.foreground":"#f8f8f2","titleBar.activeBackground":"#21222c","titleBar.activeForeground":"#f8f8f2","titleBar.inactiveBackground":"#191a21","titleBar.inactiveForeground":"#6272a4","walkThrough.embeddedEditorBackground":"#21222c"}},Ho={wordPattern:/(-?\d*\.\d\w*)|([^\`\~\!\@\#\$\%\^\&\*\-\+\[\{\]\}\\\|\;\:\"\,\<\>\/\?\s]+)/g,comments:{lineComment:"--",blockComment:["/*","*/"]},brackets:[["{","}"],["[","]"],["(",")"]],autoClosingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}],surroundingPairs:[{open:"{",close:"}"},{open:"[",close:"]"},{open:"(",close:")"},{open:'"',close:'"'},{open:"'",close:"'"}]},Vo=["ALL","AND","ANY","BETWEEN","EXISTS","IN","LIKE","NOT","OR","SOME","EXCEPT","INTERSECT","UNION","APPLY","CROSS","FULL","INNER","JOIN","LEFT","OUTER","RIGHT","CONTAINS","FREETEXT","IS","NULL","PIVOT","UNPIVOT","MATCHED","EXPLAIN"];var $o=n(62655);const Go={defaultToken:"",tokenPostfix:".sql",ignoreCase:!0,brackets:[{open:"[",close:"]",token:"delimiter.square"},{open:"(",close:")",token:"delimiter.parenthesis"}],dataTypes:$o.DJ,keywords:$o.Hw,operators:Vo,builtinFunctions:$o.wk,builtinVariables:["@@DATEFIRST","@@DBTS","@@LANGID","@@LANGUAGE","@@LOCK_TIMEOUT","@@MAX_CONNECTIONS","@@MAX_PRECISION","@@NESTLEVEL","@@OPTIONS","@@REMSERVER","@@SERVERNAME","@@SERVICENAME","@@SPID","@@TEXTSIZE","@@VERSION","@@CURSOR_ROWS","@@FETCH_STATUS","@@DATEFIRST","@@PROCID","@@ERROR","@@IDENTITY","@@ROWCOUNT","@@TRANCOUNT","@@CONNECTIONS","@@CPU_BUSY","@@IDLE","@@IO_BUSY","@@PACKET_ERRORS","@@PACK_RECEIVED","@@PACK_SENT","@@TIMETICKS","@@TOTAL_ERRORS","@@TOTAL_READ","@@TOTAL_WRITE"],pseudoColumns:["$ACTION","$IDENTITY","$ROWGUID","$PARTITION"],tokenizer:{root:[{include:"@comments"},{include:"@whitespace"},{include:"@pseudoColumns"},{include:"@numbers"},{include:"@strings"},{include:"@complexIdentifiers"},{include:"@scopes"},[/[;,.]/,"delimiter"],[/[()]/,"@brackets"],[/[\w@#$]+/,{cases:{"@operators":"operator","@builtinVariables":"predefined","@builtinFunctions":"predefined","@keywords":"keyword","@dataTypes":"dataType","@default":"identifier"}}],[/[<>=!%&+\-*/|~^]/,"operator"]],whitespace:[[/\s+/,"white"]],comments:[[/--+.*/,"comment"],[/\/\*/,{token:"comment.quote",next:"@comment"}]],comment:[[/[^*/]+/,"comment"],[/\*\//,{token:"comment.quote",next:"@pop"}],[/./,"comment"]],pseudoColumns:[[/[$][A-Za-z_][\w@#$]*/,{cases:{"@pseudoColumns":"predefined","@default":"identifier"}}]],numbers:[[/0[xX][0-9a-fA-F]*/,"number"],[/[+-]?\d+((_)?\d+)*[Ll]?/,"number"],[/[+-]?\d*(\.\d*)?[Ee]/,"number"]],strings:[[/N'/,{token:"string",next:"@string"}],[/'/,{token:"string",next:"@string"}]],string:[[/[^']+/,"string"],[/''/,"string"],[/'/,{token:"string",next:"@pop"}]],complexIdentifiers:[[/\[/,{token:"identifier.quote",next:"@bracketedIdentifier"}],[/"/,{token:"identifier.quote",next:"@quotedIdentifier"}]],bracketedIdentifier:[[/[^\]]+/,"identifier"],[/]]/,"identifier"],[/]/,{token:"identifier.quote",next:"@pop"}]],quotedIdentifier:[[/[^"]+/,"identifier"],[/""/,"identifier"],[/"/,{token:"identifier.quote",next:"@pop"}]],scopes:[[/BEGIN\s+(DISTRIBUTED\s+)?TRAN(SACTION)?\b/i,"keyword"],[/BEGIN\s+TRY\b/i,{token:"keyword.try"}],[/END\s+TRY\b/i,{token:"keyword.try"}],[/BEGIN\s+CATCH\b/i,{token:"keyword.catch"}],[/END\s+CATCH\b/i,{token:"keyword.catch"}],[/(BEGIN|CASE)\b/i,{token:"keyword.block"}],[/END\b/i,{token:"keyword.block"}],[/WHEN\b/i,{token:"keyword.choice"}],[/THEN\b/i,{token:"keyword.choice"}]]}};let Wo=function(e){return e.High="1",e.MediumHigh="2",e.Medium="3",e.MediumLow="4",e.Low="5",e}({}),Qo=function(e){return e[e.Method=0]="Method",e[e.Function=1]="Function",e[e.Constructor=2]="Constructor",e[e.Field=3]="Field",e[e.Variable=4]="Variable",e[e.Class=5]="Class",e[e.Struct=6]="Struct",e[e.Interface=7]="Interface",e[e.Module=8]="Module",e[e.Property=9]="Property",e[e.Event=10]="Event",e[e.Operator=11]="Operator",e[e.Unit=12]="Unit",e[e.Value=13]="Value",e[e.Constant=14]="Constant",e[e.Enum=15]="Enum",e[e.EnumMember=16]="EnumMember",e[e.Keyword=17]="Keyword",e[e.Text=18]="Text",e[e.Color=19]="Color",e[e.File=20]="File",e[e.Reference=21]="Reference",e[e.Customcolor=22]="Customcolor",e[e.Folder=23]="Folder",e[e.TypeParameter=24]="TypeParameter",e[e.User=25]="User",e[e.Issue=26]="Issue",e[e.Snippet=27]="Snippet",e}({});const Yo=({tables:e,range:t,priority:n,openQuote:r,nextCharQuote:a})=>e.map((e=>({label:e.table_name,kind:Qo.Class,insertText:r?e.table_name+(a?"":'"'):/^[a-z0-9_]+$/i.test(e.table_name)?e.table_name:`"${e.table_name}"`,sortText:n,range:t}))),Ko=({columns:e,range:t,withTableName:n,priority:r})=>n?e.map((e=>({label:{label:`${e.table_name}.${e.column_name}`,detail:"",description:e.data_type},kind:Qo.Enum,insertText:`${e.table_name}.${e.column_name}`,sortText:r,range:t}))):Q(e.map((e=>e.column_name))).map((n=>{const a=e.filter((e=>e.column_name===n)).map((e=>e.table_name));return{label:{label:n,detail:` (${a.sort().join(", ")})`,description:a.length>1?"":e.find((e=>e.column_name===n))?.data_type},kind:Qo.Enum,insertText:n,sortText:r,range:t}})),Xo=e=>[...$o.wk.map((t=>({label:t,kind:Qo.Function,insertText:t,range:e}))),...$o.DJ.map((t=>({label:t,kind:Qo.Keyword,insertText:t,range:e}))),...$o.Hw.map((t=>{const n=t.toUpperCase();return{label:n,kind:Qo.Keyword,filterText:t,insertText:n,range:e}})),...Vo.map((t=>{const n=t.toUpperCase();return{label:n,kind:Qo.Operator,filterText:t,insertText:n,range:e}}))],Jo=e=>e.replace(/(^")|("$)/g,""),ei=e=>e.match(/(?:,$|,\s$|\b(?:SELECT|UPDATE|COLUMN|ON|JOIN|BY|WHERE|DISTINCT)\s$)/gim),ti={provideDocumentFormattingEdits(e,t){const n=B(e.getValue(),{indent:" ".repeat(t.tabSize)});return[{range:e.getFullModelRange(),text:n}]}},ni={provideDocumentRangeFormattingEdits:(e,t,n)=>[{range:t,text:B(e.getValueInRange(t),{indent:" ".repeat(n.tabSize)})}]};var ri=function(e){return e.EXECUTE="execute",e.FOCUS_GRID="focus_grid",e.ADD_NEW_TAB="add_new_tab",e.CLOSE_ACTIVE_TAB="close_active_tab",e.SEARCH_DOCS="search_docs",e}(ri||{});const ai=s.ZP.div.withConfig({displayName:"QueryResult__Wrapper"})(["\n display: flex;\n align-items: center;\n margin-top: 0.2rem;\n overflow: hidden;\n ",";\n\n svg {\n margin-right: 0.2rem;\n color: ",";\n }\n"],X,D("foreground")),oi=s.ZP.div.withConfig({displayName:"QueryResult__Details"})(["\n display: flex;\n"]),ii=s.ZP.div.withConfig({displayName:"QueryResult__DetailsColumn"})(["\n margin-left: 1rem;\n"]),li=(0,s.ZP)(Ae).withConfig({displayName:"QueryResult__DetailsText"})(["\n margin-right: 0.5rem;\n"]),si=e=>Math.round(100*(e+Number.EPSILON))/100,ci=e=>"0"===e?r.createElement(Ae,{color:"gray2"},"0"):r.createElement(Ae,{color:"orange"},e),di=e=>0===e?"0":e>1e9?`${si(e/1e9)}s`:e>1e6?`${si(e/1e6)}ms`:e>1e3?`${si(e/1e3)}μs`:`${e}ns`,ui=({compiler:e,authentication:t,count:n,execute:a,fetch:o,rowCount:i})=>r.createElement(ai,{_height:95,duration:Y.FAST},r.createElement("div",null,r.createElement(Ae,{color:"gray2"},i.toLocaleString()," row",i>1?"s":""," in ",di(o))),r.createElement(oi,null,r.createElement(ii,null,r.createElement(li,{color:"foreground"},"Execute: ",ci(di(a))),r.createElement(li,{color:"foreground"},"Network: ",ci(di(o-a))),r.createElement(li,{color:"foreground"},"Total: ",ci(di(o)))),r.createElement(ii,null,r.createElement(li,{align:"right",color:"gray2",size:"sm"},"Count: ",di(n)),r.createElement(li,{align:"right",color:"gray2",size:"sm"},"Authentication: ",di(t)),r.createElement(li,{align:"right",color:"gray2",size:"sm"},"Compile: ",di(e))))),mi=(0,s.F4)(["\n 0% {\n background-position: left bottom;\n }\n\n 100% {\n background-position: right bottom;\n }\n"]),gi=s.ZP.div.withConfig({displayName:"Loader__Wrapper"})(["\n position: fixed;\n height: 0.4rem;\n top: 0;\n left: 0;\n right: 0;\n z-index: 15;\n background: linear-gradient(\n to left,\n "," 30%,\n "," 80%,\n "," 100%\n )\n repeat;\n background-size: 50% 100%;\n animation-name: ",";\n animation-duration: 1s;\n animation-iteration-count: infinite;\n animation-timing-function: linear;\n"],D("selection"),D("foreground"),D("selection"),mi),pi=({show:e})=>{const[t,n]=(0,r.useState)(!1),a=(0,r.useRef)();return(0,r.useEffect)((()=>()=>{clearTimeout(a.current)}),[]),(0,r.useEffect)((()=>{clearTimeout(a.current),e?a.current=window.setTimeout((()=>{n(!0)}),500):n(!1)}),[e]),r.createElement(r.Fragment,null,r.createElement(st.Z,{classNames:"fade-slow",in:t&&e,timeout:Y.SLOW,unmountOnExit:!0},r.createElement(gi,null)))};function fi(){return fi=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},fi.apply(this,arguments)}const hi=(0,s.ZP)(en.z).withConfig({displayName:"CopyButton__StyledButton"})(["\n padding: 1.2rem 0.6rem;\n"]),bi=(0,s.ZP)(Za.e).withConfig({displayName:"CopyButton__StyledCheckboxCircle"})(["\n position: absolute;\n transform: translate(75%, -75%);\n color: ",";\n"],(({theme:e})=>e.color.green)),Ei=({text:e,iconOnly:t})=>{const[n,a]=(0,r.useState)(!1);return r.createElement(hi,fi({skin:"secondary",onClick:t=>{navigator.clipboard.writeText(e),t.stopPropagation(),a(!0),setTimeout((()=>a(!1)),2e3)}},!t&&{prefixIcon:r.createElement(ln.f,{size:"16px"})}),n&&r.createElement(bi,{size:"14px"}),t?r.createElement(ln.f,{size:"16px"}):"Copy")},yi=(0,s.ZP)(Ae).withConfig({displayName:"query-in-notification__StyledText"})(["\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n"]),wi=({query:e})=>e?r.createElement(zt.x,{gap:"1rem",align:"center"},r.createElement(yi,{color:"foreground",title:e},e),r.createElement(Ei,{text:e,iconOnly:!0})):null;var vi=n(82259);function Ci(){return Ci=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Ci.apply(this,arguments)}Uo._m.config({paths:{vs:"assets/vs"}});const _i=(0,s.ZP)(ot).withConfig({displayName:"Monaco__Content"})(["\n position: relative;\n overflow: hidden;\n\n .monaco-editor .squiggly-error {\n background: none;\n border-bottom: 0.3rem "," solid;\n }\n\n .monaco-scrollable-element > .scrollbar > .slider {\n background: ",";\n }\n\n .cursorQueryDecoration {\n width: 0.2rem !important;\n background: ",";\n margin-left: 1.2rem;\n\n &.hasError {\n background: ",';\n }\n }\n\n .cursorQueryGlyph,\n .cancelQueryGlyph {\n margin-left: 2rem;\n z-index: 1;\n cursor: pointer;\n\n &:after {\n display: block;\n content: "";\n width: 18px;\n height: 18px;\n }\n }\n\n .cursorQueryGlyph {\n &:after {\n background-image: url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGhlaWdodD0iMThweCIgd2lkdGg9IjE4cHgiIGFyaWEtaGlkZGVuPSJ0cnVlIiBmb2N1c2FibGU9ImZhbHNlIiBmaWxsPSIjNTBmYTdiIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGNsYXNzPSJTdHlsZWRJY29uQmFzZS1zYy1lYTl1bGotMCBrZkRiTmwiPjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiPjwvcGF0aD48cGF0aCBkPSJNMTYuMzk0IDEyIDEwIDcuNzM3djguNTI2TDE2LjM5NCAxMnptMi45ODIuNDE2TDguNzc3IDE5LjQ4MkEuNS41IDAgMCAxIDggMTkuMDY2VjQuOTM0YS41LjUgMCAwIDEgLjc3Ny0uNDE2bDEwLjU5OSA3LjA2NmEuNS41IDAgMCAxIDAgLjgzMnoiPjwvcGF0aD48L3N2Zz4K");\n }\n }\n\n .cancelQueryGlyph {\n &:after {\n background-image: url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGhlaWdodD0iMThweCIgd2lkdGg9IjE4cHgiIGFyaWEtaGlkZGVuPSJ0cnVlIiBmb2N1c2FibGU9ImZhbHNlIiBmaWxsPSIjZmY1NTU1IiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGNsYXNzPSJTdHlsZWRJY29uQmFzZS1zYy1lYTl1bGotMCBqQ2hkR0siPjxwYXRoIGZpbGw9Im5vbmUiIGQ9Ik0wIDBoMjR2MjRIMHoiPjwvcGF0aD48cGF0aCBkPSJNNyA3djEwaDEwVjdIN3pNNiA1aDEyYTEgMSAwIDAgMSAxIDF2MTJhMSAxIDAgMCAxLTEgMUg2YTEgMSAwIDAgMS0xLTFWNmExIDEgMCAwIDEgMS0xeiI+PC9wYXRoPjwvc3ZnPgo=");\n }\n }\n\n .errorGlyph {\n margin-left: 2.5rem;\n margin-top: 0.5rem;\n z-index: 1;\n width: 0.75rem !important;\n height: 0.75rem !important;\n border-radius: 50%;\n background: ',";\n }\n"],D("red"),D("selection"),D("green"),D("red"),D("red")),xi=(0,s.ZP)(en.z).withConfig({displayName:"Monaco__CancelButton"})(["\n padding: 1.2rem 0.6rem;\n"]),Si=()=>{const e=Ta(),{buffers:t,editorRef:n,monacoRef:a,insertTextAtCursor:i,activeBuffer:l,updateBuffer:s,editorReadyTrigger:c,addBuffer:d}=e,{quest:u}=(0,r.useContext)(aa),[m,g]=(0,r.useState)(),[p,f]=(0,r.useState)(!1),[h,b]=(0,r.useState)(""),[E,y]=(0,r.useState)(!1),w=(0,o.I0)(),v=(0,o.v9)(ta.query.getRunning),C=(0,o.v9)(ta.query.getTables),_=(0,o.v9)(ta.query.getColumns),[x,S]=(0,r.useState)(),k=(0,r.useRef)(),N=(0,r.useRef)(v.value),O=(0,r.useRef)(l),P=(0,r.useRef)(m),A=(0,r.useRef)({}),[L,D]=(0,r.useState)(5+l.value.split("\n").length.toString().length-1),M=(e=!1)=>{w(Dr(e))},B=(e,t)=>{const n=ca(t),r=t.getModel();if(n&&null!==r){const a=O.current.id,o=e.editor.createModel(la(r.getValue()),ia),i=ma(o,n.query);if(o.dispose(),i.length>0){const r=A.current&&A.current[a]?.error?.query===n.query,o=A.current&&A.current[a]?.range,l=i.find((e=>e.range.startLineNumber===n.row+1));l&&(k.current?.clear(),k.current=t.createDecorationsCollection([{range:new e.Range(l.range.startLineNumber,1,l.range.endLineNumber,1),options:{isWholeLine:!0,linesDecorationsClassName:"cursorQueryDecoration "+(r?"hasError":"")}},{range:new e.Range(l.range.startLineNumber,1,l.range.startLineNumber,1),options:{isWholeLine:!1,glyphMarginClassName:N.current&&P.current?.row&&P.current?.row+1===l.range.startLineNumber?"cancelQueryGlyph":N.current?"":"cursorQueryGlyph"}},...r&&o&&l.range.startLineNumber!==o.startLineNumber?[{range:new e.Range(o.startLineNumber,0,o.startLineNumber,0),options:{isWholeLine:!1,glyphMarginClassName:"errorGlyph"}}]:[]]))}}};(0,r.useEffect)((()=>{Object.keys(A.current).map((e=>{t.find((t=>t.id===parseInt(e)))||delete A.current[e]}))}),[t]),(0,r.useEffect)((()=>{O.current=l}),[l]),(0,r.useEffect)((()=>{!v.value&&m&&(u.abort(),w(Lr()),g(void 0))}),[m,u,w,v]),(0,r.useEffect)((()=>{if(N.current=v.value,v.value&&n?.current){a?.current&&ua(a.current,n.current),a?.current&&n?.current&&B(a.current,n?.current);const t=v.isRefresh?{query:h,row:0,column:0}:(e=n.current,sa(e)?(e=>{const t=e.getSelection(),n=sa(e);if(t&&n){let e=n.length,r=n.charAt(e);for(;e>0&&(" "===r||"\n"===r||";"===r);)e--,r=n.charAt(e);if(e>0)return{query:n.substr(0,e+1),row:t.startLineNumber-1,column:t.startColumn}}})(e):ca(e));t?.query?(setTimeout((()=>{N.current&&w(Ir({type:kr.LOADING,content:r.createElement(zt.x,{gap:"1rem",align:"center"},r.createElement(Ae,{color:"foreground"},"Running..."),r.createElement(xi,{skin:"error",onClick:()=>M()},r.createElement(vi.d,{size:"18px"}))),sideContent:r.createElement(wi,{query:t.query})}))}),1e3),u.queryRaw(t.query,{limit:"0,1000",explain:!0}).then((e=>{g(void 0),delete A.current[l.id],w(Lr()),w(Ar(e)),e.type!==T.DDL&&e.type!==T.DML||(w(Ir({content:r.createElement(wi,{query:e.query})})),R.publish(I.MSG_QUERY_SCHEMA)),e.type===T.NOTICE&&(w(Ir({content:r.createElement(Ae,{color:"foreground",ellipsis:!0,title:e.query},e.notice,void 0!==e.query&&""!==e.query&&`: ${e.query}`),type:kr.NOTICE})),R.publish(I.MSG_QUERY_SCHEMA)),e.type===T.DQL&&(b(t.query),w(Ir({jitCompiled:e.explain?.jitCompiled??!1,content:r.createElement(ui,Ci({},e.timings,{rowCount:e.count})),sideContent:r.createElement(wi,{query:e.query})})),R.publish(I.MSG_QUERY_DATASET,e))})).catch((e=>{if(A.current[l.id]={error:e},g(void 0),w(Lr()),w(Ir({content:r.createElement(Ae,{color:"red"},e.error),sideContent:r.createElement(wi,{query:t.query}),type:kr.ERROR})),n?.current&&a?.current){const r=((e,t,n)=>{const r=((e,t)=>{const n=Math.min(t,e.query.length);let r=0,a=0;for(let t=0;t<n;t++)"\n"===e.query.charAt(t)?(r++,a=0):a++;return{lineNumber:r+1+e.row,column:(0===r?a+e.column:a)+1}})(t,n),a=e.getModel();if(a){const t=e.getSelection(),n=sa(e);let o;if(o=t&&n?a.getWordAtPosition({column:t.startColumn+r.column,lineNumber:r.lineNumber}):a.getWordAtPosition(r),o)return{startColumn:o.startColumn,endColumn:o.endColumn,startLineNumber:r.lineNumber,endLineNumber:r.lineNumber}}return null})(n.current,t,e.position);r&&(A.current[l.id].range=r,((e,t,n,r)=>{const a=t.getModel();a&&e.editor.setModelMarkers(a,ia,[{message:r,severity:e.MarkerSeverity.Error,startLineNumber:n.startLineNumber,endLineNumber:n.endLineNumber,startColumn:n.startColumn,endColumn:n.endColumn}])})(a?.current,n.current,r,e.error),n?.current.focus(),n?.current.setPosition({lineNumber:r.startLineNumber,column:r.startColumn}),n?.current.revealPosition({lineNumber:r.startLineNumber,column:r.endColumn}))}})),g(t)):w(Lr())}else a?.current&&n?.current&&B(a?.current,n?.current);var e}),[v]),(0,r.useEffect)((()=>{P.current=m,a?.current&&n?.current&&B(a?.current,n?.current)}),[m]);const F=async()=>{p&&a?.current&&n?.current&&(x?.dispose(),y(!0),S(a.current.languages.registerCompletionItemProvider(ia,((e,t=[],n=[])=>({triggerCharacters:'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz\n ."'.split(""),provideCompletionItems(r,a){const o=r.getWordUntilPosition(a),i=ca(e),l=r.getValueInRange({startLineNumber:a.lineNumber,startColumn:1,endLineNumber:a.lineNumber,endColumn:a.column});let s=[];const c=/^\s*$/.test(l),d=/(-- |--|\/\/ |\/\/)$/gim.test(l);if(c||d)return null;if(i){const e=ma(r,i.query);if(e.length>0){const l=e.find((e=>e.range.startLineNumber===i.row+1)),d=i.query.match(/(?<=FROM\s)([^ )]+)/gim),u=i.query.match(/(JOIN)\s+([^ ]+)/i),m=i.query.match(/(ALTER TABLE)\s+([^ ]+)/i);d?s=Q(d):m&&m[2]&&s.push(m[2]),u&&u[2]&&s.push(u[2]),s=s.map(Jo);const g=r.getValueInRange({startLineNumber:l?.range.startLineNumber??1,startColumn:l?.range.startColumn??1,endLineNumber:a.lineNumber,endColumn:o.startColumn}),p={startLineNumber:a.lineNumber,endLineNumber:a.lineNumber,startColumn:o.startColumn,endColumn:o.endColumn},f=r.getValueInRange({startLineNumber:a.lineNumber,startColumn:o.endColumn,endLineNumber:a.lineNumber,endColumn:o.endColumn+1}),h='"'===g.substr(-1),b='"'==f;if(r.getValueInRange({startLineNumber:a.lineNumber,startColumn:1,endLineNumber:a.lineNumber,endColumn:a.column}),/(FROM|INTO|(ALTER|BACKUP|DROP|REINDEX|RENAME|TRUNCATE|VACUUM) TABLE|JOIN|UPDATE)\s$/gim.test(g)||/'$/gim.test(g)&&!g.endsWith("= '"))return{suggestions:Yo({tables:t,range:p,priority:Wo.High,openQuote:h,nextCharQuote:b})};if(/(?:(SELECT|UPDATE).*?(?:(?:,(?:COLUMN )?)|(?:ALTER COLUMN ))?(?:WHERE )?(?: BY )?(?: ON )?(?: SET )?$|ALTER COLUMN )/gim.test(g)&&!c){if(s.length>0){const e=null!==g.match(/\sON\s/gim);return{suggestions:[...ei(g)?Ko({columns:n.filter((e=>s.includes(e.table_name))),range:p,withTableName:e,priority:Wo.High}):[],...Xo(p)]}}if(ei(g))return{suggestions:[...Ko({columns:n,range:p,withTableName:!1,priority:Wo.High})]}}if(o.word)return{suggestions:[...Yo({tables:t,range:p,priority:Wo.High,openQuote:h,nextCharQuote:b}),...Xo(p)]}}}}}))(n.current,C,_))),y(!1))};return(0,r.useEffect)((()=>{E||F()}),[C,_,a,p]),(0,r.useEffect)((()=>{a.current&&n.current&&ua(a.current,n.current)}),[l]),(0,r.useEffect)((()=>(window.addEventListener("focus",F),()=>window.removeEventListener("focus",F))),[]),r.createElement(_i,{onClick:e=>{(e.target.classList.contains("cursorQueryGlyph")||e.target.classList.contains("cancelQueryGlyph"))&&(n?.current?.focus(),M())}},r.createElement(Uo.ZP,{beforeMount:e=>{(e=>{e.languages.register({id:ia}),e.languages.setMonarchTokensProvider(ia,Go),e.languages.setLanguageConfiguration(ia,Ho),e.languages.registerDocumentFormattingEditProvider(ia,ti),e.languages.registerDocumentRangeFormattingEditProvider(ia,ni)})(e),e.editor.defineTheme("dracula",jo)},defaultLanguage:ia,onMount:(t,r)=>{a.current=r,n.current=t,r.editor.setTheme("dracula"),t.setModel(r.editor.createModel(l.value,ia)),f(!0),c(t),(({editor:e,insertTextAtCursor:t,toggleRunning:n})=>{R.subscribe(I.MSG_EDITOR_INSERT_COLUMN,(e=>{e&&t(e)})),R.subscribe(I.MSG_QUERY_FIND_N_EXEC,(t=>{if(t){const r=`${t.query};`;da(e,r,t.options),n()}})),R.subscribe(I.MSG_QUERY_EXEC,(()=>{n(!0)})),R.subscribe(I.MSG_EDITOR_FOCUS,(()=>{const t=e.getPosition();t&&e.setPosition({lineNumber:t.lineNumber+1,column:t?.column}),e.focus()}))})({editor:t,insertTextAtCursor:i,toggleRunning:M}),(({editor:e,monaco:t,runQuery:n,dispatch:r,editorContext:a})=>{e.addAction({id:ri.EXECUTE,label:"Execute command",keybindings:[t.KeyCode.F9,t.KeyMod.CtrlCmd|t.KeyCode.Enter],run:()=>{n()}}),e.addAction({id:ri.ADD_NEW_TAB,label:"Add new tab",keybindings:[t.KeyMod.Alt|t.KeyCode.KeyT],run:()=>{a.addBuffer()}}),e.addAction({id:ri.CLOSE_ACTIVE_TAB,label:"Close current tab",keybindings:[t.KeyMod.Alt|t.KeyCode.KeyW],run:async()=>{const e=await wa(),t=await va();e.length>1&&t?.value&&"number"==typeof t?.value&&a.deleteBuffer(t.value)}}),e.addAction({id:ri.SEARCH_DOCS,label:"Search QuestDB Docs",keybindings:[t.KeyMod.CtrlCmd|t.KeyCode.KeyK],run:()=>{const e=document.querySelector(".DocSearch-Button");e&&e.click()}})})({editor:t,monaco:r,runQuery:()=>{N.current||M()},dispatch:w,editorContext:e}),t.onDidChangeCursorPosition((()=>{const e=n.current?.getModel()?.getLineCount();e&&D(e.toString().length-1+5),B(r,t)}));const o=new URLSearchParams(window.location.search),s=o.get("query"),d=t.getModel();if(s&&d){const e=ma(d,s);e&&e.length>0?t.setSelection(e[0].range):da(t,s,{appendAt:"end"})}o.get("executeQuery")&&M()},saveViewState:!1,onChange:e=>{s(l.id,{value:e})},options:{model:null,fixedOverflowWidgets:!0,fontSize:14,fontFamily:gt.fontMonospace,glyphMargin:!0,renderLineHighlight:"gutter",minimap:{enabled:!1},selectOnLineNumbers:!1,scrollBeyondLastLine:!1,tabSize:2,lineNumbersMinChars:L},theme:"vs-dark"}),r.createElement(pi,{show:!!m||!C}))};var Ti=n(72320),ki=n.n(Ti);const Ni=e=>{},Oi={title:"New tab",favicon:!1};let Ri=0;const Ii=class{constructor(){this.draggabillies=[]}init(e,t){this.el=e,this.limit=t,this.instanceId=Ri,this.el.setAttribute("data-chrome-tabs-instance-id",this.instanceId+""),Ri+=1,this.setupCustomProperties(),this.setupStyleEl(),this.setupEvents(),this.layoutTabs(),this.setupNewTabButton(),this.setupDraggabilly()}emit(e,t){this.el.dispatchEvent(new CustomEvent(e,{detail:t}))}setupCustomProperties(){this.el.style.setProperty("--tab-content-margin","10px")}setupStyleEl(){this.styleEl=document.createElement("style"),this.el.appendChild(this.styleEl)}setupEvents(){window.addEventListener("resize",(e=>{this.cleanUpPreviouslyDraggedTabs(),this.layoutTabs()})),new ResizeObserver((e=>{this.cleanUpPreviouslyDraggedTabs(),this.layoutTabs()})).observe(this.el),this.el.addEventListener("click",(({target:e})=>{e instanceof Element&&e.classList.contains("new-tab-button")&&(this.emit("newTab",{}),this.setupNewTabButton())})),this.tabEls.forEach((e=>this.setTabCloseEventListener(e))),this.tabEls.forEach((e=>this.setTabRenameConfirmEventListener(e))),document.addEventListener("click",(({target:e})=>{e instanceof Element&&!e.classList.contains("chrome-tab-rename")&&!e.classList.contains("chrome-tab-content")&&this.tabEls.forEach((e=>{const t=e.querySelector(".chrome-tab-rename").value;null!==e.getAttribute("is-renaming")&&""!==t.trim()&&t.trim()!==e.getAttribute("data-tab-title")&&(e.setAttribute("data-tab-title",t),this.emit("tabRename",{tabEl:e,title:t})),this.hideRenameTab(e)}))}))}get tabEls(){return Array.prototype.slice.call(this.el.querySelectorAll(".chrome-tab"))}get tabContentEl(){return this.el.querySelector(".chrome-tabs-content")}get tabContentWidths(){const e=this.tabEls.length,t=this.el.clientWidth-90,n=1*(e-1),r=(t-20+n)/e,a=Math.max(24,Math.min(240,r)),o=Math.floor(a),i=[];let l=t-(o*e+20-n);for(let t=0;t<e;t+=1){const e=o<240&&l>0?1:0;i.push(o+e),l>0&&(l-=1)}return i}get tabContentPositions(){const e=[],t=this.tabContentWidths;let n=10;return t.forEach(((t,r)=>{const a=1*r;e.push(n-a),n+=t})),e}get tabPositions(){const e=[];return this.tabContentPositions.forEach((t=>{e.push(t-10)})),e}layoutTabs(){const e=this.tabContentWidths;this.tabEls.forEach(((t,n)=>{const r=e[n],a=r+20;t.style.width=a+"px",t.removeAttribute("is-small"),t.removeAttribute("is-smaller"),t.removeAttribute("is-mini"),r<84&&t.setAttribute("is-small",""),r<60&&t.setAttribute("is-smaller",""),r<48&&t.setAttribute("is-mini",""),t.querySelector(".chrome-tab-close").style.display=this.tabEls.length>1?"block":"none"}));let t="";this.tabPositions.forEach(((e,n)=>{t+=`\n .chrome-tabs[data-chrome-tabs-instance-id="${this.instanceId}"] .chrome-tab:nth-child(${n+1}) {\n transform: translate3d(${e}px, 0, 0)\n }\n `})),this.styleEl.innerHTML=t;const n=this.tabEls.length;this.el.offsetWidth-this.tabContentEl.offsetWidth>95||n<5?(this.tabContentEl.style.width=(this.tabEls[0]?this.tabEls[0].offsetWidth*n:0)-(n>0?10*n*2-24+10:0)+"px",this.tabContentEl.nextElementSibling.classList.remove("overflow-shadow")):this.tabContentEl.nextElementSibling.classList.add("overflow-shadow")}createNewTabEl(){const e=document.createElement("div");return e.innerHTML='\n <div class="chrome-tab">\n <div class="chrome-tab-dividers"></div>\n <div class="chrome-tab-background">\n <svg xmlns="http://www.w3.org/2000/svg"><defs><symbol id="chrome-tab-geometry-left" viewBox="0 0 214 36"><path d="M17 0h197v36H0v-2c4.5 0 9-3.5 9-8V8c0-4.5 3.5-8 8-8z"/></symbol><symbol id="chrome-tab-geometry-right" viewBox="0 0 214 36"><use xlink:href="#chrome-tab-geometry-left"/></symbol><clipPath id="crop"><rect class="mask" width="100%" height="100%" x="0"/></clipPath></defs><svg width="52%" height="100%"><use xlink:href="#chrome-tab-geometry-left" width="214" height="36" class="chrome-tab-geometry"/></svg><g transform="scale(-1, 1)"><svg width="52%" height="100%" x="-100%" y="0"><use xlink:href="#chrome-tab-geometry-right" width="214" height="36" class="chrome-tab-geometry"/></svg></g></svg>\n </div>\n <div class="chrome-tab-content">\n <div class="chrome-tab-favicon"></div>\n <div class="chrome-tab-title"></div>\n <input class="chrome-tab-rename" type="text" />\n <div class="chrome-tab-drag-handle"></div>\n <div class="chrome-tab-close"></div>\n </div>\n </div>\n ',e.firstElementChild}addTab(e,{animate:t=!0,background:n=!1}={}){const r=this.createNewTabEl();return r.oncontextmenu=e=>{this.emit("contextmenu",{tabEl:r,event:e})},t&&(r.classList.add("chrome-tab-was-just-added"),setTimeout((()=>r.classList.remove("chrome-tab-was-just-added")),500)),e=Object.assign({},Oi,e),this.tabContentEl.appendChild(r),this.setTabCloseEventListener(r),this.setTabRenameConfirmEventListener(r),this.updateTab(r,e),this.emit("tabAdd",{tabEl:r}),n||this.setCurrentTab(r),this.cleanUpPreviouslyDraggedTabs(),this.layoutTabs(),this.setupDraggabilly(),r}setTabCloseEventListener(e){const t=t=>{t.stopImmediatePropagation(),this.emit("tabClose",{tabEl:e}),this.setupNewTabButton()};e.querySelector(".chrome-tab-close").addEventListener("click",t),e.addEventListener("auxclick",t)}setTabRenameConfirmEventListener(e){const t=e.querySelector(".chrome-tab-rename");t.addEventListener("keydown",(n=>{"Enter"===n.key&&""!==t.value?(e.setAttribute("data-tab-title",t.value),this.emit("tabRename",{tabEl:e,title:t.value}),this.toggleRenameTab(e)):"Escape"===n.key&&this.toggleRenameTab(e)}))}get activeTabEl(){return this.el.querySelector(".chrome-tab[active]")}hasActiveTab(){return!!this.activeTabEl}setCurrentTab(e){const t=this.activeTabEl;t!==e&&(t&&t.removeAttribute("active"),e.setAttribute("active",""),this.emit("activeTabChange",{tabEl:e}))}removeTab(e){e===this.activeTabEl&&(e.nextElementSibling?this.setCurrentTab(e.nextElementSibling):e.previousElementSibling&&this.setCurrentTab(e.previousElementSibling)),e.parentNode.removeChild(e),this.emit("tabRemove",{tabEl:e}),this.cleanUpPreviouslyDraggedTabs(),this.layoutTabs(),this.setupDraggabilly()}updateTab(e,t){e.setAttribute("data-tab-title",t.title),e.querySelector(".chrome-tab-title").textContent=t.title;const n=e.querySelector(".chrome-tab-rename");n.setAttribute("value",t.title),n.setAttribute("placeholder",t.title);const r=e.querySelector(".chrome-tab-favicon"),{favicon:a,faviconClass:o,className:i}=t;i&&(e.className=[e.className,i].join(" ")),r.className="chrome-tab-favicon",r.style.backgroundImage="",a||o?(o&&(r.className=["chrome-tab-favicon",o].join(" ")),a&&(r.style.backgroundImage=`url('${a}')`),r?.removeAttribute("hidden")):(r?.setAttribute("hidden",""),r?.removeAttribute("style")),t.id&&e.setAttribute("data-tab-id",t.id)}showRenameTab(e){e.setAttribute("is-renaming",""),e.setAttribute("data-tab-title",e.textContent?.trim()||"");const t=e.querySelector(".chrome-tab-title"),n=e.querySelector(".chrome-tab-rename"),r=e.querySelector(".chrome-tab-close");t.style.display="none",n.style.display="block",r.style.display="none",n.focus(),n.select()}hideRenameTab(e){e.removeAttribute("is-renaming");const t=e.querySelector(".chrome-tab-title"),n=e.querySelector(".chrome-tab-rename");e.getAttribute("data-tab-title")&&(n.value=e.getAttribute("data-tab-title")||"",t.textContent=e.getAttribute("data-tab-title")||"");const r=e.querySelector(".chrome-tab-close");t.style.display="block",n.style.display="none",r.style.display=this.tabEls.length>1?"block":"none"}toggleRenameTab(e){"none"===e.querySelector(".chrome-tab-title").style.display?this.hideRenameTab(e):this.showRenameTab(e)}cleanUpPreviouslyDraggedTabs(){this.tabEls.forEach((e=>e.classList.remove("chrome-tab-was-just-dragged")))}setupDraggabilly(){const e=this.tabEls,t=this.tabPositions;this.isDragging&&(this.isDragging=!1,this.el.classList.remove("chrome-tabs-is-sorting"),this.draggabillyDragging.element.classList.remove("chrome-tab-is-dragging"),this.draggabillyDragging.element.style.transform="",this.draggabillyDragging.dragEnd(),this.draggabillyDragging.isDragging=!1,this.draggabillyDragging.positionDrag=Ni,this.draggabillyDragging.destroy(),this.draggabillyDragging=null),this.draggabillies.forEach((e=>e.destroy())),e.forEach(((n,r)=>{const a=t[r],o=new(ki())(n,{axis:"x",handle:".chrome-tab-drag-handle",containment:this.tabContentEl});let i,l,s,c=0;this.draggabillies.push(o),o.on("pointerDown",((t,r)=>{const a=r.timeStamp;t.target===n.querySelector(".chrome-tab-drag-handle")&&(i===r.clientX&&l===r.clientY&&a-c<500&&s&&(e.forEach((e=>this.hideRenameTab(e))),this.showRenameTab(n),t.stopImmediatePropagation(),s=!1),s=n.hasAttribute("active"),i=r.clientX,l=r.clientY,c=a),this.emit("tabClick",{tabEl:n})})),o.on("dragStart",(e=>{this.isDragging=!0,this.draggabillyDragging=o,n.classList.add("chrome-tab-is-dragging"),this.el.classList.add("chrome-tabs-is-sorting"),this.emit("dragStart",{})})),o.on("dragEnd",(e=>{this.isDragging=!1;const t=parseFloat(n.style.left);n.style.transform="translate3d(0, 0, 0)",this.emit("dragEnd",{}),requestAnimationFrame((e=>{n.style.left="0",n.style.transform=`translate3d(${t}px, 0, 0)`,requestAnimationFrame((e=>{n.classList.remove("chrome-tab-is-dragging"),this.el.classList.remove("chrome-tabs-is-sorting"),n.classList.add("chrome-tab-was-just-dragged"),requestAnimationFrame((e=>{n.style.transform="",this.layoutTabs(),this.setupDraggabilly()}))}))}))})),o.on("dragMove",((e,r,o)=>{const i=this.tabEls,l=i.indexOf(n),s=((e,t)=>{let n=1/0,r=-1;return t.forEach(((t,a)=>{Math.abs(e-t)<n&&(n=Math.abs(e-t),r=a)})),r})(a+o.x,t),c=Math.max(0,Math.min(i.length,s));l!==c&&this.animateTabMove(n,l,c)}))}))}animateTabMove(e,t,n){n<t?e.parentNode.insertBefore(e,this.tabEls[n]):e.parentNode.insertBefore(e,this.tabEls[n+1]),this.emit("tabReorder",{tabEl:e,originIndex:t,destinationIndex:n}),this.layoutTabs()}setupNewTabButton(){const e=this.tabContentEl.parentNode?.querySelector(".new-tab-button-wrapper"),t=this.limit&&this.tabEls.length>=this.limit;e&&t?(e.parentNode?.removeChild(e),this.layoutTabs()):e||(this.tabContentEl.insertAdjacentHTML("afterend",'\n <div class="new-tab-button-wrapper">\n <button class="new-tab-button">✚</button>\n </div>\n '),this.layoutTabs())}};function Pi(){return Pi=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Pi.apply(this,arguments)}const Ai=(0,r.forwardRef)(((e,t)=>{const n=["chrome-tabs"];return e.darkMode&&n.push("chrome-tabs-dark-theme"),e.className&&n.push(e.className),r.createElement("div",{ref:t,className:n.join(" "),style:{"--tab-content-margin":"9px"}},r.createElement("div",{className:"chrome-tabs-content"}))}));var Li=n(23701),Di=n.n(Li);function Mi({tabs:e,limit:t,className:n,darkMode:a,onTabActive:o,onTabClose:i,onTabRename:l,onTabReorder:s,onContextMenu:c,onNewTab:d}){const u=(0,r.useRef)([]),m=(0,r.useRef)({tabId:"",fromIndex:-1,toIndex:-1}),g=(0,r.useCallback)(((e,t,n)=>{const[r]=u.current.splice(t,1);u.current.splice(n,0,r);const a=m.current.fromIndex;m.current={tabId:e,fromIndex:a>-1?a:t,toIndex:n}}),[]),p=(0,r.useCallback)((()=>{const{tabId:e,fromIndex:t,toIndex:n}=m.current;t>-1&&s?.(e,t,n),m.current={tabId:"",fromIndex:-1,toIndex:-1}}),[s]),{ChromeTabs:f,addTab:h,activeTab:b,removeTab:E,updateTab:y}=function(e,t){const n=(0,r.useRef)(null),a=(0,r.useRef)(null);(0,r.useEffect)((()=>{const e=new Ii;a.current=e,e.init(n.current,t)}),[]),(0,r.useEffect)((()=>{const t=({detail:t})=>{const n=t.tabEl.getAttribute("data-tab-id");e.onTabActive?.(n)},n=({detail:t})=>{const{tabEl:n,title:r}=t,a=n.getAttribute("data-tab-id");e.onTabRename?.(a,r)},r=a.current?.el;return r?.addEventListener("tabClick",t),r?.addEventListener("tabRename",n),()=>{r?.removeEventListener("tabClick",t),r?.removeEventListener("tabRename",n)}}),[e.onTabActive]),(0,r.useEffect)((()=>{const t=a.current?.el,n=({detail:t})=>{const{tabEl:n,originIndex:r,destinationIndex:a}=t,o=n.getAttribute("data-tab-id");e.onTabReorder?.(o,r,a)};return t?.addEventListener("tabReorder",n),()=>{t?.removeEventListener("tabReorder",n)}}),[e.onTabReorder]),(0,r.useEffect)((()=>{const t=a.current?.el,n=({detail:t})=>{const n=t.tabEl.getAttribute("data-tab-id");e.onTabClose?.(n)};return t?.addEventListener("tabClose",n),()=>{t?.removeEventListener("tabClose",n)}}),[e.onTabClose]),(0,r.useEffect)((()=>{const t=()=>{e.onDragBegin?.()},n=a.current?.el;return n?.addEventListener("dragBegin",t),()=>{n?.removeEventListener("dragBegin",t)}}),[e.onDragBegin]),(0,r.useEffect)((()=>{const t=a.current?.el,n=({detail:t})=>{const n=t.tabEl;if(!n)return;const r=n.getAttribute("data-tab-id");e.onContextMenu?.(r,t.event)};return t?.addEventListener("contextmenu",n),()=>{t?.removeEventListener("contextmenu",n)}}),[e.onContextMenu]),(0,r.useEffect)((()=>{const t=()=>{e.onDragEnd?.()},n=a.current?.el;return n?.addEventListener("dragEnd",t),()=>{n?.removeEventListener("dragEnd",t)}}),[e.onDragEnd]),(0,r.useEffect)((()=>{const t=()=>{e.onNewTab?.()},n=a.current?.el;return n?.addEventListener("newTab",t),()=>{n?.removeEventListener("newTab",t)}}),[e.onNewTab]);const o=(0,r.useCallback)((e=>{a.current?.addTab(e)}),[]),i=(0,r.useCallback)((e=>{const t=n.current?.querySelector(`[data-tab-id="${e}"]`);t&&a.current?.removeTab(t)}),[]),l=(0,r.useCallback)((e=>{const t=n.current?.querySelector(`[data-tab-id="${e}"]`);t!==a.current?.activeTabEl&&a.current?.setCurrentTab(t)}),[]),s=(0,r.useCallback)(((e,t)=>{const r=n.current?.querySelector(`[data-tab-id="${e}"]`);r?a.current?.updateTab(r,{...t}):a.current?.addTab(t)}),[]);return{ChromeTabs:(0,r.useCallback)((function(e){return r.createElement(Ai,Pi({},e,{ref:n}))}),[]),addTab:o,updateTab:s,removeTab:i,activeTab:l}}({onTabClose:i,onTabActive:o,onTabRename:l,onContextMenu:c,onNewTab:d,onDragEnd:p,onTabReorder:g},t);return(0,r.useEffect)((()=>{Di()(u.current,e)||(u.current.slice(e.length).forEach((e=>{E(e.id)})),e.forEach(((e,t)=>{const n=u.current[t];n?Di()(e,n)||y(n.id,e):h(e)})),e.forEach((e=>{e.active&&b(e.id)}))),u.current=e}),[e]),r.createElement(f,{className:n,darkMode:a})}var Bi=n(93301),Fi=n(64611),zi=n(66622),Zi=n(30711),Ui=n(75624),qi=n(14413);function ji(){return ji=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},ji.apply(this,arguments)}const Hi=(0,s.ZP)(zt.x).attrs({align:"center",justifyContent:"space-between"}).withConfig({displayName:"tabs__Root"})(["\n width: 100%;\n display: flex;\n background: ",";\n padding-right: 1rem;\n"],(({theme:e})=>e.color.backgroundLighter)),Vi=(0,s.ZP)(en.z).withConfig({displayName:"tabs__HistoryButton"})(["\n &.active {\n background: ",";\n }\n"],(({theme:e})=>e.color.comment)),$i=(0,s.ZP)(Ui.h.Content).withConfig({displayName:"tabs__DropdownMenuContent"})(["\n margin-top: 0.5rem;\n z-index: 100;\n background: ",";\n"],(({theme:e})=>e.color.backgroundDarker)),Gi=e=>e.metricsViewState?"assets/icon-chart.svg":"assets/icon-file.svg",Wi=()=>{const{activeBuffer:e,buffers:t,setActiveBuffer:n,addBuffer:a,updateBuffer:o,deleteBuffer:i,archiveBuffer:l}=Ta(),[s,c]=(0,r.useState)(!1),d=(0,r.useMemo)(z,[]),[u,m]=(0,r.useState)(!1),p=t.filter((e=>e.archived&&e.archivedAt&&-1===e.position)).sort(((e,t)=>e.archivedAt&&t.archivedAt?t.archivedAt-e.archivedAt:0));return(0,r.useLayoutEffect)((()=>{c(!0)}),[]),s?r.createElement(Hi,null,r.createElement(Mi,{limit:40,darkMode:!0,onTabClose:async e=>{const n=t.find((t=>t.id===parseInt(e)));n&&1!==t.filter((e=>!e.archived)).length&&(""!==n?.value||n.metricsViewState?.metrics&&n.metricsViewState.metrics.length>0?await l(parseInt(e)):await i(parseInt(e)),await(async e=>{const n=t.filter((t=>!t.archived&&t.id!==parseInt(e))).sort(((e,t)=>e.position-t.position));for(const e of n){const t=n.indexOf(e);e.id&&await o(e.id,{position:t})}})(e),p.length>=10&&await Promise.all(p.slice(9).map((e=>i(e.id)))))},onTabReorder:async(e,n,r)=>{const a=t.find((t=>t.id===parseInt(e)));if(!a)return;let i=t.filter((t=>t.id!==parseInt(e)&&!t.archived)).sort(((e,t)=>e.position-t.position));i.splice(r,0,a),i.forEach((async(e,t)=>{await o(e.id,{position:t})}))},onTabActive:async e=>{const r=t.find((t=>t.id===parseInt(e)));r&&await n(r)},onTabRename:async(e,t)=>{await o(parseInt(e),{label:t})},onNewTab:a,tabs:t.filter((e=>!e.archived)).sort(((e,t)=>e.position-t.position)).map((t=>({id:t.id?.toString(),favicon:Gi(t),title:t.label,active:e.id===t.id,className:t.metricsViewState?"metrics-tab":""})))}),r.createElement(Ui.h.Root,{modal:!1,onOpenChange:m},r.createElement(Ui.h.Trigger,{asChild:!0},r.createElement(we.A,null,r.createElement(Vi,ji({skin:"transparent","data-hook":"editor-tabs-history-button",prefixIcon:r.createElement(Bi.A,{size:"20px"})},u?{className:"active"}:{}),"History"))),r.createElement(Ui.h.Portal,null,r.createElement($i,{"data-hook":"editor-tabs-history"},0===p.length&&r.createElement("div",{style:{padding:"0 1rem"}},r.createElement(Ae,{color:"gray2"},"History is empty")),p.map((e=>r.createElement(Ui.h.Item,{"data-hook":"editor-tabs-history-item",key:e.id,onClick:async()=>{await o(e.id,{archived:!1,archivedAt:void 0,position:t.length-1}),await n(e)}},r.createElement(zt.x,{align:"flex-start",justifyContent:"flex-start",gap:"0.5rem",title:e.label},e.metricsViewState?r.createElement(Fi.w,{size:"18px"}):r.createElement(zi.$,{size:"18px"}),r.createElement(zt.x,ji({flexDirection:"column",align:"flex-start",gap:"0"},e.archivedAt?{title:(0,g.WU)(new Date(e.archivedAt),"P pppp",{locale:W(d)})}:{}),r.createElement(Ae,{color:"foreground",ellipsis:!0},e.label.substring(0,30),e.label.length>30?"...":""),e.archivedAt&&r.createElement(Ae,{color:"gray2"},(0,qi.B)(e.archivedAt,(new Date).getTime(),{locale:W(d)})," ago")))))),p.length>0&&r.createElement(r.Fragment,null,r.createElement(Ui.h.Divider,null),r.createElement(Ui.h.Item,{onClick:async()=>{for(const e of p)await i(e.id)},"data-hook":"editor-tabs-history-clear"},r.createElement(Zi.r,{size:"18px"}),r.createElement(Ae,{color:"foreground"},"Clear history"))))))):null};var Qi=n(45869),Yi=n(39565);const Ki="yyyy-MM-dd HH:mm:ss";let Xi=function(e){return e.COMMIT_RATE="Commit rate",e.WRITE_THROUGHPUT="Write throughput",e.LATENCY="Latency",e.WRITE_AMPLIFICATION="Write amplification",e}({});const Ji=[{dateFrom:"now-5m",dateTo:"now",label:"Last 5m"},{dateFrom:"now-15m",dateTo:"now",label:"Last 15m"},{dateFrom:"now-1h",dateTo:"now",label:"Last 1h"},{dateFrom:"now-3h",dateTo:"now",label:"Last 3h"},{dateFrom:"now-6h",dateTo:"now",label:"Last 6h"},{dateFrom:"now-12h",dateTo:"now",label:"Last 12h"},{dateFrom:"now-24h",dateTo:"now",label:"Last 24h"},{dateFrom:"now-3d",dateTo:"now",label:"Last 3 days"},{dateFrom:"now-7d",dateTo:"now",label:"Last 7 days"}];let el=function(e){return e.LIST="List",e.GRID="Grid",e}({}),tl=function(e){return e.AUTO="Auto",e.ONE_SECOND="1s",e.FIVE_SECONDS="5s",e.TEN_SECONDS="10s",e.THIRTY_SECONDS="30s",e.ONE_MINUTE="1m",e.OFF="Off",e}({});const nl={[tl.AUTO]:0,[tl.OFF]:0,[tl.ONE_SECOND]:1,[tl.FIVE_SECONDS]:5,[tl.TEN_SECONDS]:10,[tl.THIRTY_SECONDS]:30,[tl.ONE_MINUTE]:60},rl=(e,t=2)=>{const n=parseFloat(e);return Number(n.toFixed(t))},al=e=>e>=1e6?(e/1e6).toFixed(1).replace(/\.0$/,"")+" M":e>=1e3?(e/1e3).toFixed(1).replace(/\.0$/,"")+" k":e.toString(),ol=e=>e>=3600?`${(e/3600).toFixed(0)}h`:e>=60?`${(e/60).toFixed(0)}m`:`${e}s`,il=e=>e instanceof Date?(0,Qi.c)(e):e,ll=[1,2,3,4,5,10,15,20,25,30,45,75,90],sl=[1,2,3,4,5,10,15,20,25,30,45,75,90],cl=[1,2,3,4,6,8,12,18,24],dl=(e,t,n=600)=>{const r=(new Date(t).getTime()-new Date(e).getTime())/1e3;return[...ll,...sl.map((e=>60*e)),...cl.map((e=>3600*e))].sort(((e,t)=>Math.abs(e)-Math.abs(t))).find((e=>e>r/n))},ul=e=>!(!e||0===e[1].length)&&e[1].length>0&&e[1].some((e=>null!==e&&0!==e)),ml=e=>/^now(-\d+[hdm]$)?$/.test(e),gl=e=>{if(!ml(e))return t=e,isNaN(Date.parse(t))?"Invalid date":e;var t;const n=new Date;if("now"===e)return(0,Qi.c)(n);const[r,a,o,i]=e.match(/now(-)?(\d+)([a-z]+)$/);let l=0;switch(i){case"m":l=parseInt(o);break;case"h":l=60*parseInt(o);break;case"d":l=60*parseInt(o)*24;break;default:return"Invalid date"}return(0,Qi.c)((0,Yi._)(n,l))},pl=(e,t)=>{const n=Ji.find((n=>n.dateFrom===e&&n.dateTo===t));return n?n.label:`${e.startsWith("now")?e:(0,g.WU)(new Date(e),Ki)} - ${t.startsWith("now")?t:(0,g.WU)(new Date(t),Ki)}\n `};var fl=n(76697),hl=n(24217),bl=n(41324),El=n(84001),yl=n(22562),wl=n.n(yl),vl=n(51871);const Cl=["#FF6B6B","#4ECDC4","#FFD93D","#95D86E","#FF8F40","#BD93F9","#50FA7B","#FF79C6","#8BE9FD","#F1FA8C"],_l=s.ZP.div.withConfig({displayName:"color-palette__Root"})(["\n padding: 0.5rem;\n"]),xl=s.ZP.div.withConfig({displayName:"color-palette__ColorBox"})(["\n position: relative;\n width: 1.6rem;\n height: 1.6rem;\n cursor: pointer;\n"]),Sl=(0,s.ZP)(vl.J).withConfig({displayName:"color-palette__CheckIcon"})(["\n position: absolute;\n color: black;\n"]),Tl=({selectedColor:e,onSelect:t})=>r.createElement(_l,null,r.createElement(zt.x,{gap:"0.5rem"},Cl.map((n=>r.createElement(xl,{key:n,style:{backgroundColor:n},onClick:()=>t(n)},e===n&&r.createElement(Sl,{size:"16px"})))))),kl={distribution:1,label:"WAL apply latency in ms",getDescription:({lastValue:e,sampleBy:t})=>r.createElement(r.Fragment,null,"Average time taken to apply WAL transactions to the table, making them readable.",r.createElement("br",null),e?`Currently: ${e} for the last ${t}`:""),iconUrl:"/assets/metric-read-latency.svg",isTableMetric:!0,querySupportsRollingAppend:!0,getQuery:({tableId:e,sampleBy:t,limit:n,from:r,to:a})=>`\nselect created, approx_percentile(latency, 0.9, 3) latency\n from ${b.WAL}\n where \n event = 105\n and rowCount > 0\n ${e?`and tableId = ${e}`:""}\n sample by ${t}\n FROM timestamp_floor('${t}', '${r}')\n TO timestamp_floor('${t}', '${a}')\n fill(0)\n ${n?`limit ${n}`:""}\n `,getQueryLastNotNull:e=>`\nselect\n created\nfrom ${b.WAL}\nwhere ${e?`tableId = ${e} and `:""}\nevent = 105\nand latency != null and rowCount > 0\nlimit -1\n`,alignData:e=>[e.map((e=>new Date(e.created).getTime())),e.map((e=>rl(e.latency)))],mapYValue:e=>e>=1e3?`${(e/1e3).toFixed(2)} s`:`${e} ms`},Nl={distribution:3,label:"Write amplification",getDescription:({lastValue:e,sampleBy:t})=>r.createElement(r.Fragment,null,"Ratio of rows physically written to disk against logical/queryable rows. If write amplification is higher than 1, this means data has been re-written several times. This will be higher during O3 writes.",r.createElement("br",null),e?`Currently: ${e} for the last ${t}`:""),iconUrl:"/assets/metric-write-amplification.svg",isTableMetric:!0,querySupportsRollingAppend:!0,getQuery:({tableId:e,sampleBy:t,limit:n,from:r,to:a})=>`\nselect\ncreated,\n case when phy_row_count/row_count = null then 1 else phy_row_count/row_count end as writeAmplification\nfrom ( \n select \n created, \n sum(phy_row_count) over (order by created rows between 59 PRECEDING and CURRENT row) phy_row_count,\n sum(row_count) over (order by created rows between 59 PRECEDING and CURRENT row) row_count\n from (\n select \n created, \n sum(rowcount) row_count,\n sum(physicalRowCount) phy_row_count,\n from ${b.WAL}\n where ${e?`tableId = ${e} and `:""}\n event = 105\n and rowCount > 0\n sample by ${t} \n FROM timestamp_floor('${t}', '${r}')\n TO timestamp_floor('${t}', '${a}')\n fill(null)\n ${n?`limit ${n}`:""}\n )\n);\n `,getQueryLastNotNull:e=>`\nselect\n created\nfrom ${b.WAL}\nwhere ${e?`tableId = ${e} and `:""}\nevent = 105\nand rowCount != null\nand physicalRowCount != null\nlimit -1\n`,alignData:e=>[e.map((e=>new Date(e.created).getTime())),e.map((e=>e.writeAmplification?rl(e.writeAmplification):1))],mapYValue:e=>e},Ol={distribution:1,label:"Write throughput",getDescription:({lastValue:e,sampleBy:t})=>r.createElement(r.Fragment,null,"Logical (queryable) rows applied to table.",r.createElement("br",null),e?`Currently: ${e}/${t}`:""),iconUrl:"/assets/metric-rows-applied.svg",isTableMetric:!0,querySupportsRollingAppend:!0,getQuery:({tableId:e,sampleBy:t,limit:n,from:r,to:a})=>`\nselect\n created time,\n sum(rowCount) numOfRowsApplied,\nfrom ${b.WAL}\nwhere ${e?`tableId = ${e} and `:""}\nevent = 105\nsample by ${t}\nFROM timestamp_floor('${t}', '${r}')\n TO timestamp_floor('${t}', '${a}')\nfill(null)\n${n?`limit ${n}`:""}`,getQueryLastNotNull:e=>`\nselect\n created\nfrom ${b.WAL}\nwhere ${e?`tableId = ${e} and `:""}\nevent = 105\nand rowCount != null\nand physicalRowCount != null\nlimit -1\n`,alignData:e=>[e.map((e=>new Date(e.time).getTime())),e.map((e=>e.numOfRowsApplied?rl(e.numOfRowsApplied):0))],mapYValue:e=>al(e)},Rl={distribution:1,label:"Commit rate",getDescription:({lastValue:e,sampleBy:t})=>r.createElement(r.Fragment,null,"Number of commits written to the table.",r.createElement("br",null),e?`Currently: ${e}/${t}`:""),iconUrl:"/assets/metric-commit-rate.svg",isTableMetric:!0,querySupportsRollingAppend:!0,getQuery:({tableId:e,sampleBy:t,limit:n,from:r,to:a})=>`\n select \n created,\n commit_rate, \n commit_rate_smooth\n from (\n select \n created\n , commit_rate\n , avg(commit_rate) over(order by created rows BETWEEN 59 PRECEDING AND CURRENT ROW) commit_rate_smooth\n from (\n select\n created\n , count() commit_rate\n from ${b.WAL}\n where ${e?`tableId = ${e} and `:""}\n event = 103\n sample by ${t}\n FROM timestamp_floor('${t}', '${r}')\n TO timestamp_floor('${t}', '${a}')\n fill(0)\n )\n order by 1\n ${n?`limit ${n}`:""}\n);\n `,getQueryLastNotNull:e=>`\nselect\n created\nfrom ${b.WAL}\nwhere ${e?`tableId = ${e} and `:""}\nevent = 103\nand physicalRowCount != null\nlimit -1\n`,alignData:e=>[e.map((e=>new Date(e.created).getTime())),e.map((e=>rl(e.commit_rate)))],mapYValue:e=>al(e)},Il={[Xi.COMMIT_RATE]:Rl,[Xi.LATENCY]:kl,[Xi.WRITE_THROUGHPUT]:Ol,[Xi.WRITE_AMPLIFICATION]:Nl},Pl=(0,s.ZP)(nn.V.Description).withConfig({displayName:"add-metric-dialog__StyledDescription"})(["\n display: grid;\n gap: 2rem;\n"]),Al=s.ZP.div.withConfig({displayName:"add-metric-dialog__Metrics"})(["\n display: grid;\n gap: 2rem;\n grid-template-columns: repeat(2, 1fr);\n"]),Ll=(0,s.ZP)(zt.x).attrs({flexDirection:"column",gap:"0"}).withConfig({displayName:"add-metric-dialog__Metric"})(["\n /* background: ","; */\n border-radius: 0.4rem;\n cursor: pointer;\n border: 1px solid transparent;\n padding-bottom: 2rem;\n background: ",";\n\n &:hover {\n border-color: ",";\n }\n"],(({theme:e})=>e.color.selectionDarker),(({theme:e})=>e.color.backgroundLighter),(({theme:e})=>e.color.comment)),Dl=(0,s.ZP)(zt.x).attrs({align:"center",justifyContent:"center"}).withConfig({displayName:"add-metric-dialog__Image"})(["\n width: 100%;\n height: 10rem;\n"]),Ml=({open:e,onOpenChange:t})=>{const{activeBuffer:n,buffers:a,updateBuffer:o}=Ta(),i=a.find((e=>e.id===n?.id)),l=i?.metricsViewState?.metrics??[],s=l.length>0?l[l.length-1]:void 0,c=s?((e,t)=>{const n=Cl.filter((e=>e!==t)),r=n.filter((t=>!e.includes(t)));return r.length>0?r[Math.floor(Math.random()*r.length)]:n[Math.floor(Math.random()*n.length)]})(l.map((e=>e.color)),s.color):"#FF6B6B";return r.createElement(nn.V.Root,{open:e},r.createElement(nn.V.Trigger,{asChild:!0},r.createElement(we.A,null,r.createElement(en.z,{skin:"secondary",prefixIcon:r.createElement(El.J,{size:"18px"}),onClick:()=>t(!e)},"Add widget"))),r.createElement(nn.V.Portal,null,r.createElement(we.A,null,r.createElement(ve.a,{primitive:nn.V.Overlay})),r.createElement(nn.V.Content,{onEscapeKeyDown:()=>t(!1),onInteractOutside:()=>t(!1)},r.createElement(nn.V.Title,null,r.createElement(zt.x,null,r.createElement(El.J,{size:22}),"Add widget")),r.createElement(Pl,null,r.createElement(Al,null,Object.entries(Il).map((([e,n])=>r.createElement(Ll,{key:e,onClick:()=>(async e=>{if(i?.id){const n=wl()(i,{metricsViewState:{metrics:[...i.metricsViewState?.metrics??[],{metricType:e,position:i.metricsViewState?.metrics?.length??0,color:c}]}});await o(i.id,n),t(!1)}})(e)},r.createElement(Dl,null,r.createElement("img",{src:n.iconUrl,alt:`${n.label} icon`,width:"64",height:"64"})),r.createElement(Ae,{color:"foreground",weight:600},n.label)))))))))},Bl=(e,t,n)=>({hooks:{setCursor:r=>{if(!e.current||!t.current)return;const{idx:a}=r.cursor,o=null!=a?r.data[0][a]:null,i=null!=a?r.data[1][a]:null;[i,o].every((e=>null!==e))?(e.current.textContent=h(o,Ki),t.current.textContent=n(i)):(e.current.textContent=null,t.current.textContent=null)}}});var Fl=n(29943),zl=n.n(Fl),Zl=n(40015);const Ul=s.ZP.div.withConfig({displayName:"graph__Actions"})(["\n margin-right: 0;\n"]),ql=(0,s.ZP)(zt.x).attrs({align:"center",flexDirection:"column",gap:0}).withConfig({displayName:"graph__Root"})(["\n position: relative;\n background-color: ",";\n height: 25rem;\n"],(({theme:e})=>e.color.backgroundLighter)),jl=s.ZP.div.withConfig({displayName:"graph__BeforeLabel"})(["\n margin-left: 0;\n"]),Hl=(0,s.ZP)(zt.x).attrs({align:"center",justifyContent:"space-between"}).withConfig({displayName:"graph__Header"})(["\n position: relative;\n width: 100%;\n"]),Vl=s.ZP.span.withConfig({displayName:"graph__HeaderText"})(["\n font-size: 1.4rem;\n font-weight: 600;\n padding: 0 0 0 1rem;\n"]),$l=(0,s.ZP)(zt.x).attrs({flexDirection:"column",align:"center"}).withConfig({displayName:"graph__GraphWrapper"})(["\n position: relative;\n padding: 1rem 0;\n"]),Gl=(0,s.ZP)(zt.x).attrs({flexDirection:"column",align:"center",justifyContent:"center"}).withConfig({displayName:"graph__GraphOverlay"})(["\n width: 100%;\n height: 15rem;\n position: absolute;\n z-index: 1;\n"]),Wl=s.ZP.div.withConfig({displayName:"graph__Label"})(["\n position: absolute;\n bottom: 1rem;\n display: flex;\n gap: 0.5rem;\n font-family: ",";\n"],(({theme:e})=>e.font)),Ql=s.ZP.span.withConfig({displayName:"graph__LabelValue"})(["\n color: ",";\n"],(({theme:e})=>e.color.cyan)),Yl=(0,s.ZP)(an.j).withConfig({displayName:"graph__ErrorIcon"})(["\n color: ",";\n"],(({theme:e})=>e.color.red)),Kl=({dateFrom:e,dateTo:t,tableId:n,tableName:a,beforeLabel:o,data:i,canZoomToData:l,colors:c,loading:d,actions:u,onZoomToData:m,widgetConfig:g,hasError:p})=>{const f=(0,r.useRef)(null),b=(0,r.useRef)(null),E=(0,r.useRef)(),[y,w]=(0,r.useState)(new Date(gl(e)).getTime()),[v,C]=(0,r.useState)(new Date(gl(t)).getTime()),[_,x]=(0,r.useState)(d),{isTableMetric:S,mapYValue:T,label:k}=g,N=new ResizeObserver((e=>{E.current?.setSize({width:e[0].contentRect.width,height:200})})),O=gl(e),R=gl(t);(0,r.useEffect)((()=>{w(new Date(O).getTime()),C(new Date(R).getTime())}),[i,e,t]);const I=(({data:e,startTime:t,endTime:n,colors:a,tickValue:o=(e=>(+e).toString()),mapXValue:i,mapYValue:l=(e=>(+e).toFixed(4)),timeRef:c,valueRef:d,widgetConfig:u})=>{const m=(0,r.useContext)(s.Ni),g={stroke:m.color.gray2,labelFont:`600 12px ${m.font}`,font:`12px ${m.font}`,ticks:{show:!1,stroke:m.color.gray1,width:2,dash:[],size:5},grid:{stroke:m.color.selectionDarker}},p=[{...g,values:(e,t)=>{let n=[];return t.map(((e,r)=>{const a=i(e,r,t);return null===a||n.includes(a)?null:(n.push(a),a)}))}},{...g,values:(e,t)=>t.map((e=>l(e)))}],f={x:{},y:{label:"",points:{show:1===e[0].length},stroke:a[0],width:2,value:(e,t)=>3!==u.distribution?l(t):t}},h={x:{time:!0,range:[t,n]},y:{distr:u.distribution,range:(e,t,n)=>[e.data[0].length>1&&3!==u.distribution&&t!==n?t:3!==u.distribution?0:1,n]}};return{ms:1,padding:[10,20,0,20],cursor:{sync:{key:"metrics",setSeries:!0}},axes:Object.values(p),series:Object.values(f),scales:h,legend:{show:!1,markers:{show:!1}},plugins:[Bl(c,d,l)]}})({data:i,startTime:y,endTime:v,colors:c,timeRef:f,valueRef:b,mapXValue:e=>((e,t,n)=>{let r="HH:mm:ss";const a=(n-t)/1e3;return r=a<60?"HH:mm:ss":a<3600||a<86400?"HH:mm":"dd/MM",h(e,r)})(e,y,v),mapYValue:T,widgetConfig:g}),P=(0,r.useRef)(null);(0,r.useEffect)((()=>(P.current&&N.observe(P.current),()=>{N.disconnect()})),[P.current]),(0,r.useEffect)((()=>{if(d){const e=setTimeout((()=>{x(!0)}),1e3);return()=>clearTimeout(e)}x(!1)}),[d]);const A=i[1].length>0?T(Math.floor(i[1][i[1].length-1])):void 0;return r.createElement(ql,{ref:P},r.createElement(Hl,null,r.createElement(zt.x,{gap:"0.5rem",align:"center"},r.createElement(jl,null,o),r.createElement(Vl,null,k),r.createElement(Ke,{icon:r.createElement(Dt.d,{size:"16px"}),tooltip:g.getDescription({lastValue:A,sampleBy:ol(dl(O,R))}),placement:"bottom"}),_&&r.createElement(Zl.a,{size:"18px",spin:!0}),p&&r.createElement(Ke,{icon:r.createElement(Yl,{size:"18px"}),tooltip:"Error fetching latest data, try refreshing manually",placement:"bottom"})),r.createElement(Ul,null,u)),r.createElement($l,null,!ul(i)&&r.createElement(Gl,null,S&&!a?r.createElement(Ae,{color:"gray2"},n?"Table does not exist. Please select another one":"Select a table to see metrics"):r.createElement(Ae,{color:"gray2"},"No data available for this period"),l&&r.createElement(en.z,{skin:"secondary",onClick:m},"Zoom to data")),r.createElement(zl(),{options:{...I,height:200,width:P.current?.clientWidth??0},data:i,onCreate:e=>{E.current=e}}),r.createElement(Wl,null,r.createElement("span",{ref:f}),r.createElement(Ql,{ref:b}))))};var Xl=n(60407),Jl=n(85501);function es(){return es=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},es.apply(this,arguments)}const ts=s.ZP.div.withConfig({displayName:"table-selector__Root"})(["\n display: flex;\n position: relative;\n margin-left: 1rem;\n"]),ns=(0,s.ZP)(Ft.i).withConfig({displayName:"table-selector__TableIcon"})(["\n color: ",";\n"],(({theme:e})=>e.color.gray2)),rs=(0,s.ZP)(rn.I).withConfig({displayName:"table-selector__StyledInput"})(["\n border: 1px solid transparent;\n background: transparent;\n font-weight: 600;\n font-size: 1.6rem;\n width: 100%;\n\n &:hover,\n &:active,\n &:focus {\n background: transparent;\n border-color: ",";\n }\n"],(({theme:e})=>e.color.comment)),as=(0,s.ZP)(rs).withConfig({displayName:"table-selector__ShadowInput"})(["\n visibility: hidden;\n width: max-content;\n z-index: 1;\n position: fixed;\n"]),os=s.ZP.div.withConfig({displayName:"table-selector__Wrapper"})(["\n position: absolute;\n width: 20rem;\n z-index: 100;\n top: 100%;\n overflow-y: auto;\n max-height: calc(10 * 3rem);\n"]),is=s.ZP.ul.withConfig({displayName:"table-selector__Options"})(["\n list-style: none;\n background: ",";\n box-shadow: 0 5px 5px 0 ",";\n margin: 0;\n padding: 0.5rem;\n border-radius: 0.4rem;\n"],(({theme:e})=>e.color.backgroundDarker),(({theme:e})=>e.color.black40)),ls=s.ZP.li.withConfig({displayName:"table-selector__Item"})(["\n display: flex;\n align-items: center;\n height: 3rem;\n padding: 0 1rem;\n\n ","\n\n ","\n\n .highlight {\n background-color: #7c804f;\n color: ",";\n }\n"],(({active:e,theme:t})=>`\n background: ${e?t.color.selection:"transparent"};\n `),(({disabled:e,theme:t})=>`\n color: ${e?t.color.gray1:t.color.foreground};\n cursor: ${e?"not-allowed":"pointer"};\n `),(({theme:e})=>e.color.foreground)),ss=({tableId:e,defaultValue:t,options:n,onSelect:a,placeholder:o,loading:i})=>{const[l,s]=(0,r.useState)(!1),c=(0,r.useRef)(null),d=(0,r.useRef)(null),[u,m]=(0,r.useState)(t??""),[g,p]=(0,r.useState)(-1),f=je("ArrowDown"),h=je("ArrowUp"),b=je("Enter"),E=(0,r.useRef)(null),y=n.filter((e=>!u||e.label.toLowerCase().includes(u.toLowerCase()))).sort(((e,t)=>e.label.toLowerCase().localeCompare(t.label.toLowerCase())));return(0,r.useEffect)((()=>{if(c.current&&d.current&&c.current&&d.current&&!i){c.current.style.width=`${d.current.offsetWidth}px`,m(t??""),""!==t||e||c.current.focus();const n=e=>{c.current?.contains(e.target)||(e.target instanceof HTMLElement||e.target instanceof SVGElement)&&"table-selector-item"!==e.target.getAttribute("data-hook")&&(t&&m(t),s(!1))};return document.addEventListener("click",n),()=>document.removeEventListener("click",n)}}),[t,c,i]),(0,r.useEffect)((()=>{f?p(g<y.length-1?g+1:0):h&&p(g>0?g-1:y.length-1)}),[f,h]),(0,r.useEffect)((()=>{if(b&&y.length>0&&-1!==g){if(y[g].disabled)return;a(y[g].value),s(!1),m(y[g].label)}}),[b]),(0,r.useEffect)((()=>{1===y.length&&u?.toLowerCase()===y[0].label.toLowerCase()&&p(0)}),[u,y]),r.createElement(ts,null,r.createElement(zt.x,{align:"center",gap:"0.5rem"},r.createElement(ns,{size:"18px"}),r.createElement(rs,{value:u,placeholder:""!==t?t:o,ref:c,onFocus:()=>{m(t),c.current?.select(),s(!0)},onKeyUp:e=>{"Backspace"===e.key?""===u&&(m(""),s(!0),p(-1)):"Escape"===e.key&&(m(t),s(!1))},onChange:e=>{m(e.target.value??"")}})),r.createElement(as,{ref:d,as:"span"},""!==t?t:o),l&&r.createElement(os,{ref:E},r.createElement(is,null,y.sort(((e,t)=>e.disabled===t.disabled?0:e.disabled?1:-1)).map(((e,t)=>r.createElement(ls,es({"data-hook":"table-selector-item",tabIndex:t,active:g===y.indexOf(e),key:e.value,onMouseEnter:()=>p(t),onMouseLeave:()=>p(-1),disabled:e.disabled},!e.disabled&&{onClick:()=>{c.current.value=e.label,a(e.value),m(e.label),s(!1)}}),r.createElement(Bt(),{highlightClassName:"highlight",searchWords:[u??""],textToHighlight:e.label})))))))},cs=(0,s.ZP)(zt.x).attrs({align:"center",justifyContent:"center"}).withConfig({displayName:"metric__MetricInfoRoot"})(["\n background-color: ",";\n height: 25rem;\n"],(({theme:e})=>e.color.backgroundLighter)),ds=(0,s.ZP)(en.z).withConfig({displayName:"metric__ActionButton"})(["\n padding: 0;\n width: 3rem;\n"]),us=({dateFrom:e,dateTo:t,metric:n,onRemove:a,onTableChange:i,onColorChange:l})=>{const{quest:s}=(0,r.useContext)(aa),[c,d]=(0,r.useState)(void 0!==n.tableId),[u,m]=(0,r.useState)(),[g,p]=(0,r.useState)(!1),f=r.useRef(n.tableId),h=r.useRef(e),b=r.useRef(t),E=r.useRef([[],[]]),y=r.useRef(),[w,v]=(0,r.useState)(!1);h.current=e,b.current=t;const C=(0,o.v9)(ta.query.getTables),_=C.find((e=>e.id===n.tableId))?.table_name;y.current=_;const x=Il[n.metricType],S=async e=>{const t=x.querySupportsRollingAppend&&!e;d(!0),v(!1);try{const e=gl(h.current),n=gl(b.current),r=il(e),a=il(n),o=dl(e,n),i=await Promise.all([s.query(x.getQuery({tableId:f.current,sampleBy:`${o}s`,from:r,to:a}).replaceAll("\n"," "))]);if(i[0]&&i[0].type===T.DQL){const n=x.alignData(i[0].data);E.current=t?((e,t,n)=>(new Date,t.values(),new Date(gl(n)).getTime(),t.map(((t,n)=>[...e[n],...t])),t))(E.current,n,e):n}if(i[1]&&i[1].type===T.DQL){const e=i[1].data[0];m(e?new Date(e.created).getTime():void 0)}}catch(e){console.error(e),v(!0)}finally{d(!1)}},k=e=>{y.current?S(e?.overwrite):(E.current=[[],[]],d(!1))};return(0,r.useEffect)((()=>{_&&(y.current=_,f.current=n.tableId,E.current=[[],[]],S(!0))}),[_]),(0,r.useEffect)((()=>(R.subscribe(I.METRICS_REFRESH_DATA,k),()=>{R.unsubscribe(I.METRICS_REFRESH_DATA,k)})),[]),E.current||c||!n.tableId?r.createElement(Kl,{dateFrom:e,dateTo:t,data:n.tableId&&ul(E.current)?E.current:[[],[]],canZoomToData:!1,onZoomToData:()=>{},colors:[n.color],loading:c,tableId:n.tableId,tableName:_,widgetConfig:x,beforeLabel:r.createElement(ss,{tableId:n.tableId,loading:c,options:C.map((e=>({label:e.table_name,value:e.id.toString(),disabled:!e.walEnabled}))),placeholder:"Select table",onSelect:e=>i(n,parseInt(e)),defaultValue:n.tableId&&_?_:""}),actions:r.createElement(zt.x,{gap:"0.5rem",align:"center"},r.createElement(Ke,{icon:r.createElement(we.A,null,r.createElement(Xl.J,{open:g,onOpenChange:p,trigger:r.createElement(ds,{skin:"transparent"},r.createElement(Jl.Y,{size:"18px"})),align:"center"},r.createElement(Tl,{onSelect:e=>l(n,e),selectedColor:n.color}))),tooltip:"Choose series color",placement:"top"}),r.createElement(Ke,{icon:r.createElement(ds,{skin:"transparent",onClick:()=>a(n)},r.createElement(Zi.r,{size:"18px"})),tooltip:"Remove metric",placement:"top"})),hasError:w}):r.createElement(cs,null,r.createElement(an.j,{size:"18px"}),"Cannot load metric: ",x.label)},ms=(e,t)=>isNaN(parseInt(e))?t:parseInt(e),gs={authPayload:"",editorCol:1,editorLine:1,editorSplitterBasis:350,resultsSplitterBasis:350,updateSettings:(e,t)=>{},exampleQueriesVisited:!1,autoRefreshTables:!0},ps=(0,r.createContext)(gs),fs=({children:e})=>{const[t,n]=(0,r.useState)(Pn(P.AUTH_PAYLOAD)),[a,o]=(0,r.useState)(ms(Pn(P.EDITOR_COL),10)),[i,l]=(0,r.useState)(ms(Pn(P.EDITOR_LINE),10)),[s,c]=(0,r.useState)(ms(Pn(P.EDITOR_SPLITTER_BASIS),350)),[d,u]=(0,r.useState)(ms(Pn(P.RESULTS_SPLITTER_BASIS),350)),[m,g]=(0,r.useState)("true"===Pn(P.EXAMPLE_QUERIES_VISITED)),[p,f]=(0,r.useState)(!Pn(P.AUTO_REFRESH_TABLES)||"true"===Pn(P.AUTO_REFRESH_TABLES));return r.createElement(ps.Provider,{value:{authPayload:t,editorCol:a,editorLine:i,editorSplitterBasis:s,resultsSplitterBasis:d,updateSettings:(e,t)=>{An(e,t.toString()),(e=>{const t=Pn(e);switch(e){case P.AUTH_PAYLOAD:n(t);break;case P.EDITOR_COL:o(ms(t,10));break;case P.EDITOR_LINE:l(ms(t,10));break;case P.EXAMPLE_QUERIES_VISITED:g("true"===t);break;case P.EDITOR_SPLITTER_BASIS:c(ms(t,350));break;case P.RESULTS_SPLITTER_BASIS:u(ms(t,350));break;case P.AUTO_REFRESH_TABLES:f("true"===t)}})(e)},exampleQueriesVisited:m,autoRefreshTables:p}},e)},hs=()=>(0,r.useContext)(ps);var bs=n(55743),Es=n(16012),ys=n(93065),ws=n(79540),vs=n(64788),Cs=n(94014);const _s=({className:e,min:t,max:n,value:a,onChange:o,selectRange:i})=>r.createElement(Cs.ZP,{className:e,defaultValue:a,minDate:t,maxDate:n,minDetail:"month",maxDetail:"month",returnValue:"start",onChange:e=>o(e),selectRange:i});var xs=n(48232);function Ss(){return Ss=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Ss.apply(this,arguments)}const Ts=(0,s.ZP)(zt.x).attrs({gap:"1rem",flexDirection:"column",align:"flex-start"}).withConfig({displayName:"date-time-picker__Root"})(["\n background: ",";\n width: 50rem;\n padding: 1rem 1rem 0 1rem;\n"],(({theme:e})=>e.color.backgroundDarker)),ks=(0,s.ZP)(zt.x).attrs({gap:0,align:"flex-start"}).withConfig({displayName:"date-time-picker__Cols"})(["\n width: 100%;\n"]),Ns=(0,s.ZP)(en.z).withConfig({displayName:"date-time-picker__Trigger"})(["\n padding-right: 0;\n"]),Os=(0,s.ZP)(zt.x).attrs({flexDirection:"column",gap:"1rem",align:"flex-start"}).withConfig({displayName:"date-time-picker__DatePickers"})(["\n width: 60%;\n align-self: flex-start;\n padding-right: 1rem;\n"]),Rs=s.ZP.ul.withConfig({displayName:"date-time-picker__MetricDurations"})(["\n width: 40%;\n list-style: none;\n margin: 0;\n padding: 0 0 0 1rem;\n border-left: 1px solid ",";\n"],(({theme:e})=>e.color.selection)),Is=s.ZP.li.withConfig({displayName:"date-time-picker__MetricDurationItem"})(["\n cursor: pointer;\n height: 3rem;\n padding: 0 1rem;\n line-height: 3rem;\n\n &:hover {\n background: ",";\n }\n\n ","\n"],(({theme:e})=>e.color.selection),(({selected:e,theme:t})=>e&&`& { background: ${t.color.selection}; }`)),Ps=(0,s.ZP)(zt.x).attrs({gap:0,align:"center"}).withConfig({displayName:"date-time-picker__Footer"})(["\n width: 100%;\n padding: 1rem 0;\n border-top: 1px solid ",";\n"],(({theme:e})=>e.color.selection)),As=({min:e,max:t,name:n,label:a,dateFrom:o,dateTo:i,onChange:l})=>{const{setValue:s}=(0,dn.Gc)(),c=gl(o),d=gl(i);return r.createElement(In.Item,{name:n,label:a},r.createElement(zt.x,{gap:"0.5rem",align:"center"},r.createElement(In.Input,{name:n,onChange:e=>{s(n,e.target.value);try{const t=gl(e.target.value);if("Invalid date"===t)return;"dateFrom"===n?l([t,i]):"dateTo"===n&&l([o,t])}catch(e){console.error(e)}},placeholder:"now"}),r.createElement(Xl.J,{trigger:r.createElement(en.z,{skin:"secondary"}," ",r.createElement(bs.f,{size:"18px"})," "),align:"center"},r.createElement(_s,{min:e,max:t,onChange:e=>{const t=e;["dateFrom","dateTo"].forEach(((n,r)=>{e&&t[r]&&s(n,h(new Date(t[r]).getTime()))}))},value:["Invalid date"!==c?new Date(gl(o)):new Date,"Invalid date"==d?new Date(gl(i)):new Date],selectRange:!0}))))},Ls=({dateFrom:e,dateTo:t,onDateFromToChange:n})=>{const[a,o]=(0,r.useState)(!1),[i,l]=(0,r.useState)(e),[s,c]=(0,r.useState)(t),d=(0,xs.W)(new Date,12),u=new Date,m={"string.empty":"Please enter a date or duration","string.invalidDate":"Date format or duration is invalid","string.toIsBeforeFrom":"To date must be after From date","string.dateInFuture":"Please set a date in the past or use `now`","string.fromIsAfterTo":"From date must be before To date","string.sameValues":"From and To dates cannot be the same","any.custom":"One of the values is invalid","string.maxDateRange":"Date range cannot exceed 7 days"},g=Vn().object({dateFrom:Vn().any().required().custom(((e,t)=>{const n=gl(e),r=new Date(n).getTime(),a=(new Date).getTime();try{const o=new Date(gl(t.state.ancestors[0].dateTo)).getTime();return"Invalid date"===n?t.error("string.invalidDate"):r>=o?t.error("string.fromIsAfterTo"):r>a?t.error("string.dateInFuture"):r===a?t.error("string.sameValues"):o-r>6048e5?t.error("string.maxDateRange"):e}catch(e){return t.error("any.custom")}})).messages(m),dateTo:Vn().any().required().custom(((e,t)=>{const n=gl(e),r=new Date(n).getTime(),a=(new Date).getTime(),o=new Date(gl(t.state.ancestors[0].dateFrom)).getTime();return"Invalid date"===n?t.error("string.invalidDate"):r<=o?t.error("string.toIsBeforeFrom"):r>a?t.error("string.dateInFuture"):r===a?t.error("string.sameValues"):r-o>6048e5?t.error("string.maxDateRange"):e})).messages(m)}),p={min:d,max:u,dateFrom:i,dateTo:s,onChange:([e,t])=>{l(e),c(t)}};return(0,r.useEffect)((()=>{l(e),c(t)}),[e,t]),r.createElement(Xl.J,{open:a,onOpenChange:o,trigger:r.createElement(Ns,{skin:"secondary",prefixIcon:r.createElement(Es.q,{size:"18px"})},pl(e,t),a?r.createElement(ws.D,{size:"28px"}):r.createElement(vs.D,{size:"28px"}))},r.createElement(Ts,null,r.createElement(ks,null,r.createElement(Os,null,r.createElement(Ae,{weight:600,color:"foreground",size:"lg"},"Absolute time range"),r.createElement(In,{name:"dateRanges",onSubmit:async e=>{e.dateFrom&&e.dateTo&&(n(ml(e.dateFrom)?e.dateFrom:(0,Qi.c)(e.dateFrom),ml(e.dateTo)?e.dateTo:(0,Qi.c)(e.dateTo)),o(!1))},defaultValues:{dateFrom:e,dateTo:t},validationSchema:g},r.createElement(zt.x,{flexDirection:"column",gap:"1rem",align:"flex-start"},r.createElement(As,Ss({name:"dateFrom",label:"From"},p)),r.createElement(As,Ss({name:"dateTo",label:"To"},p)),r.createElement(In.Submit,null,"Apply")))),r.createElement(Rs,null,Object.values(Ji).map((({label:a,dateFrom:i,dateTo:l})=>r.createElement(Is,{key:a,selected:e===i&&t===l,onClick:()=>{n(i,l),o(!1)}},a))))),r.createElement(Ps,null,r.createElement(zt.x,{gap:"0.5rem",align:"center"},r.createElement(ys.q,{size:"14px"}),r.createElement(Ae,{color:"foreground"},f()," (",(()=>{const e=(new Date).getTimezoneOffset(),t=Math.floor(Math.abs(e)/60),n=Math.abs(e)%60;return`GMT${e>0?"-":"+"}${String(t).padStart(2,"0")}:${String(n).padStart(2,"0")}`})(),")")))))},Ds=s.ZP.div.withConfig({displayName:"Metrics__Root"})(["\n display: flex;\n flex-direction: column;\n width: 100%;\n height: 100%;\n background: #2c2e3d;\n padding-bottom: calc(4.5rem);\n"]),Ms=(0,s.ZP)(zt.x).attrs({align:"center",justifyContent:"space-between"}).withConfig({displayName:"Metrics__Toolbar"})(["\n width: 100%;\n height: 4.5rem;\n padding: 0 2.5rem;\n border-bottom: 1px solid ",";\n box-shadow: 0 2px 10px 0 rgba(23, 23, 23, 0.35);\n white-space: nowrap;\n flex-shrink: 0;\n"],(({theme:e})=>e.color.backgroundDarker)),Bs=(0,s.ZP)(Ae).withConfig({displayName:"Metrics__Header"})(["\n font-size: 1.8rem;\n font-weight: 600;\n color: ",";\n margin-bottom: 1rem;\n"],(({theme:e})=>e.color.foreground)),Fs=(0,s.ZP)(zt.x).attrs({align:"flex-start",gap:"2.5rem"}).withConfig({displayName:"Metrics__Charts"})(["\n align-content: ",";\n padding: 2.5rem;\n overflow-y: auto;\n height: 100%;\n width: 100%;\n flex-wrap: wrap;\n\n > div {\n width: ",";\n flex-shrink: 0;\n }\n"],(({noMetrics:e})=>e?"center":"flex-start"),(({viewMode:e})=>e===el.GRID?"calc(50% - 1.25rem)":"100%")),zs=(0,s.ZP)(zt.x).attrs({align:"center",justifyContent:"center"}).withConfig({displayName:"Metrics__GlobalInfo"})(["\n margin: auto;\n\n code {\n background: #505368;\n color: ",";\n }\n"],(({theme:e})=>e.color.foreground)),Zs=()=>{const{activeBuffer:e,updateBuffer:t,buffers:n}=Ta(),[a,i]=(0,r.useState)(el.GRID),[l,s]=(0,r.useState)((0,Qi.c)(new Date)),[c,d]=(0,r.useState)((0,Qi.c)(new Date)),[u,m]=(0,r.useState)(),[g,p]=(0,r.useState)(!1),[f,h]=(0,r.useState)([]),b=(0,o.v9)(ta.telemetry.getConfig),E=r.useRef(!0),y=r.useRef(),w=r.useRef(),{autoRefreshTables:v}=hs(),C=n.find((t=>t.id===e?.id)),_=u?u===tl.AUTO?nl[((e,t)=>{const n=(new Date(gl(t)).getTime()-new Date(gl(e)).getTime())/1e3;return n<=300||n<=900?tl.FIVE_SECONDS:n<=3600?tl.TEN_SECONDS:n<=10800||n<=21600||n<=43200||n<=86400?tl.THIRTY_SECONDS:tl.ONE_MINUTE})(l,c)]:nl[u]:0,x=e=>{C?.id&&t(C?.id,{metricsViewState:{...C?.metricsViewState,metrics:e}})},S=e=>{R.publish(I.METRICS_REFRESH_DATA,{dateFrom:l,dateTo:c,overwrite:e})},T=e=>{C?.id&&C?.metricsViewState?.metrics&&x(C?.metricsViewState?.metrics.filter((t=>t.position!==e.position)).map(((e,t)=>({...e,position:t}))))},k=(e,t)=>{C?.id&&C?.metricsViewState?.metrics&&x(C?.metricsViewState?.metrics.map((n=>n.position===e.position?{...n,tableId:t}:n)))},N=(e,t)=>{C?.id&&C?.metricsViewState?.metrics&&x(C?.metricsViewState?.metrics.map((n=>n.position===e.position?{...n,color:t}:n)))},O=(0,r.useCallback)((()=>{E.current=!0,y.current!==tl.OFF&&S()}),[y.current]),P=(0,r.useCallback)((()=>{E.current=!1}),[]),A=()=>{w.current&&clearInterval(w.current),v&&u&&u!==tl.OFF?w.current=setInterval((()=>{E.current&&S()}),_>0?1e3*_:0):clearInterval(w.current)};return(0,r.useEffect)((()=>{if(C){const e=C?.metricsViewState?.metrics,t=C?.metricsViewState?.refreshRate,n=C?.metricsViewState?.viewMode,r=C?.metricsViewState?.dateFrom,a=C?.metricsViewState?.dateTo;r&&s(r),a&&d(a),e&&h(e),t&&m(t),n&&i(n)}}),[C]),(0,r.useEffect)((()=>{if(C?.id){const e=wl()(C,{metricsViewState:{...a!==C?.metricsViewState?.viewMode&&{viewMode:a},...l!==C?.metricsViewState?.dateFrom&&{dateFrom:l},...c!==C?.metricsViewState?.dateTo&&{dateTo:c}}});l&&c&&u===tl.AUTO&&A(),l&&c&&(t(C.id,e),S(!0))}}),[a,l,c]),(0,r.useEffect)((()=>{u&&(y.current=u,A(),C?.id&&t(C.id,{metricsViewState:{...C?.metricsViewState,refreshRate:u}}))}),[u]),(0,r.useEffect)((()=>(R.subscribe(I.TAB_FOCUS,O),R.subscribe(I.TAB_BLUR,P),()=>{R.unsubscribe(I.TAB_FOCUS,O),R.unsubscribe(I.TAB_BLUR,P),clearInterval(w.current)})),[]),b&&!b.enabled?r.createElement(Ds,null,r.createElement(zs,null,r.createElement(zt.x,{gap:"1.5rem",flexDirection:"column"},r.createElement(Bs,null,"Metrics unavailable"),r.createElement(Ae,{color:"foreground"},"Enable Telemetry to access WAL table metrics."),r.createElement(Ae,{color:"foreground"},"Set ",r.createElement("code",null,"telemetry.enabled=true")," in your server.conf file and restart the server."),r.createElement(Ae,{color:"foreground"},"Alternatively, set ",r.createElement("code",null,"QDB_TELEMETRY_ENABLED=true")," ENV var for the same effect."),r.createElement(at,{color:"cyan",hoverColor:"cyan",href:"https://questdb.io/docs/configuration/#telemetry",rel:"noreferrer",target:"_blank"},r.createElement(zt.x,{align:"center",gap:"0.25rem"},r.createElement(sn.d,{size:"16px"}),"Documentation"))))):r.createElement(Ds,null,r.createElement(Ms,null,r.createElement(Ml,{open:g,onOpenChange:p}),r.createElement(zt.x,{align:"center",gap:"1rem"},r.createElement(zt.x,{gap:"0.5rem",style:{flexShrink:0}},r.createElement(Ke,{icon:r.createElement(en.z,{skin:"secondary",onClick:()=>{S(!0)}},r.createElement(fl.h,{size:"20px"})),tooltip:"Refresh all widgets",placement:"bottom"}),r.createElement(Ke,{icon:r.createElement(Sn.P,{name:"refresh_rate",value:u,options:Object.values(tl).map((e=>({label:`Refresh: ${e}`,value:e}))),onChange:e=>m(e.target.value)}),tooltip:"Widget refresh rate",placement:"bottom"})),r.createElement(Ke,{icon:r.createElement(we.A,null,r.createElement(Ls,{dateFrom:l,dateTo:c,onDateFromToChange:(e,t)=>{s(e),d(t)}})),tooltip:"Time duration",placement:"bottom"}),r.createElement(Ke,{icon:r.createElement(en.z,{skin:"secondary",onClick:()=>i(a===el.GRID?el.LIST:el.GRID)},a===el.LIST?r.createElement(hl.B,{size:"18px"}):r.createElement(bl.v,{size:"18px"})),tooltip:r.createElement(r.Fragment,null,"Toggle view mode",r.createElement("br",null),"to ",a===el.GRID?"column":"grid"),placement:"bottom",textAlign:"center"}))),r.createElement(Fs,{noMetrics:0===f.length,viewMode:a},0===f.length&&r.createElement(zs,null,r.createElement(zt.x,{gap:"1.5rem",flexDirection:"column"},r.createElement(Bs,null,"Add your first widget to see metrics"),r.createElement(en.z,{skin:"secondary",onClick:()=>p(!0),prefixIcon:r.createElement(El.J,{size:"18px"})},"Add widget"))),f&&f.sort(((e,t)=>e.position-t.position)).map(((e,t)=>r.createElement(us,{dateFrom:l,dateTo:c,key:t,metric:e,onRemove:T,onTableChange:k,onColorChange:N})))))};var Us=n(99637),qs=n(76410),js=n(52655);const Hs=s.ZP.div.withConfig({displayName:"styles__Wrapper"})(["\n display: flex;\n align-items: center;\n border-right: none;\n width: 100%;\n height: ",";\n ","\n \n padding: 0 1rem;\n\n ",";\n"],(({isMinimized:e})=>e?"auto":"4.5rem"),(({isMinimized:e})=>!e&&`\n border-bottom: 1px ${D("backgroundDarker")} solid;\n `),J),Vs=s.ZP.div.withConfig({displayName:"styles__Content"})(["\n display: flex;\n margin-left: 0.5rem;\n white-space: nowrap;\n"]),$s=s.ZP.div.withConfig({displayName:"styles__SideContent"})(["\n margin-left: auto;\n padding-left: 1rem;\n overflow: hidden;\n text-overflow: ellipsis;\n"]);var Gs=n(46827),Ws=n(96035);const Qs=(0,s.ZP)(Ae).withConfig({displayName:"Timestamp__TimestampText"})(["\n display: flex;\n margin-right: 0.5rem;\n white-space: nowrap;\n"]),Ys=({createdAt:e})=>{const t=(0,r.useMemo)(z,[]);return r.createElement(Qs,{color:"gray2"},"[",(0,g.WU)(e,"pppp",{locale:W(t)}),"]")},Ks=(0,s.ZP)(Gs.W).withConfig({displayName:"SuccessNotification__CheckmarkOutlineIcon"})(["\n color: ",";\n flex-shrink: 0;\n"],D("green")),Xs=(0,s.ZP)(Ws.i).withConfig({displayName:"SuccessNotification__ZapIcon"})(["\n color: ",";\n"],D("yellow")),Js=e=>{const{createdAt:t,content:n,sideContent:a,jitCompiled:o,isMinimized:i}=e;return r.createElement(Hs,{isMinimized:i},r.createElement(Ys,{createdAt:t}),o?r.createElement(Ke,{icon:r.createElement(Xs,{size:"16px"}),placement:"top",tooltip:"JIT Compiled"}):r.createElement(Ks,{size:"18px"}),r.createElement(Vs,null,n),r.createElement($s,null,a))};var ec=n(2128);const tc=(0,s.ZP)(ec.e).withConfig({displayName:"ErrorNotification__CloseOutlineIcon"})(["\n color: ",";\n flex-shrink: 0;\n"],D("red")),nc=e=>{const{createdAt:t,content:n,sideContent:a,isMinimized:o}=e;return r.createElement(Hs,{isMinimized:o},r.createElement(Ys,{createdAt:t}),r.createElement(tc,{size:"18px"}),r.createElement(Vs,null,n),r.createElement($s,null,a))},rc=e=>{const{createdAt:t,content:n,sideContent:a,isMinimized:o}=e;return r.createElement(Hs,{isMinimized:o},r.createElement(Ys,{createdAt:t}),r.createElement(Vs,null,n),r.createElement($s,null,a))};var ac=n(55122);const oc=(0,s.ZP)(ac.E).withConfig({displayName:"NoticeNotification__InfoOutlineIcon"})(["\n color: ",";\n flex-shrink: 0;\n"],D("yellow")),ic=e=>{const{createdAt:t,content:n,sideContent:a,isMinimized:o}=e;return r.createElement(Hs,{isMinimized:o},r.createElement(Ys,{createdAt:t}),r.createElement(oc,{size:"18px"}),r.createElement(Vs,null,n),r.createElement($s,null,a))},lc=e=>{const{type:t}=e;return t===kr.SUCCESS?r.createElement(Js,e):t===kr.ERROR?r.createElement(nc,e):t==kr.NOTICE?r.createElement(ic,e):r.createElement(rc,e)};function sc(){return sc=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},sc.apply(this,arguments)}const cc=(0,s.ZP)(it).withConfig({displayName:"Notifications__Wrapper"})(["\n flex: ",";\n overflow: auto;\n max-height: 35rem;\n ","\n background: ",";\n"],(e=>e.minimized?"initial":"1"),(({theme:e})=>`border-top: 2px ${e.color.backgroundDarker} solid;`),(({theme:e})=>e.color.backgroundLighter)),dc=(0,s.ZP)(Ne).withConfig({displayName:"Notifications__Menu"})(["\n justify-content: space-between;\n overflow: hidden;\n"]),uc=(0,s.ZP)(ot).withConfig({displayName:"Notifications__Content"})(["\n overflow: ",";\n padding: ",";\n flex: initial;\n height: ",";\n"],(e=>e.minimized?"hidden":"auto"),(e=>e.minimized?"0":"0 0 1rem"),(e=>e.minimized?"4rem":"100%")),mc=(0,s.ZP)(Ae).withConfig({displayName:"Notifications__Header"})(["\n display: flex;\n align-items: center;\n"]),gc=s.ZP.div.withConfig({displayName:"Notifications__LatestNotification"})(["\n margin-left: 1rem;\n flex: 1;\n width: calc(100% - 10rem);\n"]),pc=(0,s.ZP)(Us.T).withConfig({displayName:"Notifications__TerminalBoxIcon"})(["\n margin-right: 1rem;\n"]),fc=s.ZP.div.withConfig({displayName:"Notifications__ClearAllNotifications"})(["\n display: flex;\n width: 100%;\n justify-content: center;\n margin-top: auto;\n"]),hc=()=>{const e=(0,o.v9)(ta.query.getNotifications),{sm:t}=Qe(),[n,a]=(0,r.useState)(!0),i=(0,r.useRef)(null),l=(0,o.I0)(),s=()=>{i.current?.scrollTo({top:i.current?.scrollHeight})},c=(0,r.useCallback)((()=>{a(!n)}),[n]),d=(0,r.useCallback)((()=>{l(Pr())}),[l]);(0,r.useLayoutEffect)((()=>{e.length>0&&s()}),[e]),(0,r.useLayoutEffect)((()=>{s()}),[n]),(0,r.useEffect)((()=>{t&&a(!0)}),[t]);const u=e[e.length-1];return r.createElement(cc,{minimized:n,"data-hook":"notifications-wrapper"},r.createElement(dc,null,r.createElement(mc,{color:"foreground"},r.createElement(pc,{size:"18px"}),"Log"),r.createElement(gc,{"data-hook":"notifications-collapsed"},n&&u&&r.createElement(lc,sc({isMinimized:!0},u))),r.createElement(en.z,{skin:"transparent",onClick:c},n?r.createElement(qs.f,{size:"18px"}):r.createElement(js.I,{size:"18px"}))),!n&&r.createElement(uc,{minimized:n,ref:i,"data-hook":"notifications-expanded"},e.filter((e=>e.type!==kr.LOADING)).map((e=>r.createElement(lc,sc({isMinimized:!1,key:e.createdAt?e.createdAt.getTime():0},e)))),!n&&r.createElement(fc,null,r.createElement(en.z,{skin:"secondary",disabled:0===e.length,onClick:d},"Clear all"))))};function bc(){return bc=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},bc.apply(this,arguments)}const Ec=(0,s.ZP)(it).withConfig({displayName:"Editor__EditorPaneWrapper"})(["\n height: 100%;\n overflow: hidden;\n"]),yc=({innerRef:e,...t})=>{const{activeBuffer:n}=Ta();return r.createElement(Ec,bc({ref:e},t),r.createElement(Wi,null),n.editorViewState&&r.createElement(Si,null),n.metricsViewState&&r.createElement(Zs,null),n.editorViewState&&r.createElement(hc,null))},wc=(e,t)=>r.createElement(yc,bc({},e,{innerRef:t})),vc=(0,r.forwardRef)(wc);var Cc=n(23945),_c=n.n(Cc),xc=n(23401),Sc=n(44609),Tc=n(14544),kc=n(22373);function Nc(e,t,n){const r={gridID:"qdb-grid",minColumnWidth:60,rowHeight:30,divCacheSize:64,viewportHeight:400,yMaxThreshold:1e7,maxRowsToAnalyze:100,minVpHeight:120,minDivHeight:160,scrollerGirth:10,dragHandleWidth:20,dataPageSize:1e3,layoutStoreTimeout:1e3},a="qg-c-active",o=0,i=3,l=4,s=(n||r.gridID)+".columnLayout",c=e,d=t;let u,m,g,p,f,h,b,E,y,w,v,C,_,x,S,T,k,N,O,R,I,P=0,A=[],L=[],D=[],M=0,B=-1,F=-1,z=[],Z=-1,U=!1;const q=r.divCacheSize,j=q-1,H=r.dataPageSize,V=Math.floor(H/3),$=2*V;let G,W,Q,Y,K=[],X=0,J=10,ee=0,te=0,ne=0,re=r.viewportHeight;const ae=r.rowHeight;let oe,ie,le,se,ce,de,ue,me,ge,pe,fe=[],he=-1,be=-1;const Ee={colLo:0,colHi:0,nextVisColumnLo:0,render:!1},ye=r.scrollerGirth;let we,ve,Ce,_e,xe,Se,Te,ke,Ne,Oe,Re,Ie=0,Pe=!0,Ae=!1,Le={};function De(e){return L[D[e]]}function Me(){const e=be;let t=0;P>0&&(t=P,P<=e&&(P=0,E.innerHTML="",on()));const n=$e(e);for(let t=e;t>0;t--)R[t]=R[t-1]+n;R[0]=0;const r=e+1;for(let t=e;t>=0;t--){const e=g.childNodes[t].querySelector(".qg-col-resize-hysteresis");e&&(e.columnIndex=(e.columnIndex+1)%r)}-1!==B&&B<r&&(B=(B+1)%r),g.childNodes[0].before(g.childNodes[e]);const a=D[e];for(let t=e;t>0;t--)D[t]=D[t-1];D[0]=a,t>0&&(t<=e?sn(t+1):(E.childNodes[0].before(E.childNodes[e]),Ct(A,0,Math.min(P,M),X))),ee=0,Ct(fe,0,J,0),u.scrollLeft>0?u.scrollLeft=0:Dt(),xt(e),function(e){const t=rt();t.columnPositions=D,t.timestampIndex=B;for(let n=0;n<e;n++)t.deviants[De(n).name]=$e(n);nt()}(r)}function Be(e,t,n,r){if(e.rowIndex!==t){const a=z[Math.floor(t/H)];if(a){const o=a[t%H];if(o){e.style.display="flex";for(let t=n;t<r;t++)yt(e.childNodes[t%J],o[D[t]]);e.rowIndex=t}else e.style.display="none",e.rowIndex=-1}else{for(let t=n;t<r;t++)e.childNodes[t%J].innerHTML="";e.rowIndex=-1}e.style.top=t*ae-ue+"px"}}function Fe(e){u.scrollTop=e,h.scrollTop=e}function ze(){const e=Math.max(X,P),t=Math.min(e+J,M);Ct(fe,e,t,X)}function Ze(e){return null===z[e]||void 0===z[e]||0===z[e].length}function Ue(e,t){e.style.minWidth=t+"px",e.style.maxWidth=t+"px"}function qe(e,t){Y&&clearTimeout(Y),Y=setTimeout((function(){!function(e,t){let n,r,a;if(function(){for(let e=0,t=z.length;e<t;e++)(e<G||e>W)&&z[e]&&delete z[e]}(),e!==t&&Ze(e)&&Ze(t))n=e*H,r=n+H*(t-e+1),a=function(n){z[e]=n.dataset.splice(0,H),z[t]=n.dataset,ze()};else if(!Ze(e)||Ze(t)&&e!==t){if(Ze(e)&&e!==t||!Ze(t))return void ze();n=t*H,r=n+H,a=function(e){z[t]=e.dataset,ze()}}else n=e*H,r=n+H,a=function(t){z[e]=t.dataset,ze()};d&&d(Q,n+1,r,a)}(e,t)}),75)}function je(){return{t:Math.max(0,Math.floor(le/ae)),b:Math.min(ie/ae,Math.ceil((le+re)/ae))}}function He(e){const t=je();let n=t.t,r=t.b;0!==e&&function(e,t,n){if(t!=t||n!=n)return;let r,a,o,i;if(r=Math.floor(t/H),o=Math.floor(n/H),e>0){if(i=n%H,r>=G&&o<W)return;if(o===W)return void(i>$&&(W=o+1,G=o,qe(o,o+1)));r<o?(qe(r,o),G=r,W=o):i>$?(qe(o,o+1),G=o,W=o+1):(W=r,G=r,qe(r,r))}else{if(a=t%H,r>G&&o<=W)return;if(r===G)return void(a<V&&G>0&&(G=Math.max(0,r-1),W=r,qe(r-1,r)));r<o?(qe(r,o),G=r,W=o):a<V&&r>0?(qe(r-1,r),G=Math.max(0,r-1),W=r):(G=r,W=r,qe(r,r))}}(e,n,r),0===n?r=q:r>oe-2&&(n=Math.max(0,r-q));for(let e=n;e<r;e++){const t=fe[e&j];t&&(Be(t,e,Math.min(M,Math.max(X,P)),J),Be(A[e&j],e,0,Math.min(P,M)))}}function Ve(e){return R[e]}function $e(e){return R[e+1]-R[e]}function Ge(e){const t=De(e);if(t)switch(t.type){case"STRING":case"SYMBOL":case"VARCHAR":return!0;default:return!1}}function We(e){_e||cn("header.click",{columnName:e.currentTarget.getAttribute("data-column-name")})}function Qe(){Te&&(clearTimeout(Te),Te=void 0)}function Ye(e,t){return ve+e-(t<P?0:u.scrollLeft)+"px"}function Ke(e){if(0===e.target.childNodes.length){e.preventDefault();const t=document.createElement("div");t.baguette=!0,ft(t,"qg-col-resize-hysteresis-enter"),e.target.append(t)}}function Xe(e){e.preventDefault(),e.target.childNodes.length>0&&e.target.childNodes[0].remove()}function Je(e){e.preventDefault(),Qe();const t=e.target.baguette?e.target.parentElement:e.target;e.target.childNodes.length>0&&e.target.childNodes[0].remove(),_e=t.columnIndex,xe=Ve(_e),Se=$e(_e);const n=t.parentElement;ve=n.offsetLeft+n.getBoundingClientRect().width,Ce=e.clientX,document.onmousemove=et,document.onmouseup=at,O.style.top=0,O.style.left=Ye(0,_e),O.style.height=c.getBoundingClientRect().height-(kt()?ye:0)+"px",O.style.visibility="visible",Ie=Se}function et(e){e.preventDefault();const t=e.clientX-Ce,n=Se+t;n>r.minColumnWidth&&(O.style.left=Ye(t,_e),Ie=n)}function tt(){window.localStorage.setItem(s,JSON.stringify(Le))}function nt(){Oe&&clearTimeout(Oe),Oe=setTimeout(tt,r.layoutStoreTimeout)}function rt(){let e=Le[Ne];return void 0===e&&(e={key:ke,deviants:{}},Le[Ne]=e),e}function at(e){var t,n;e.preventDefault(),document.onmousemove=null,document.onmouseup=null,function(e,t){!function(e,t){let n=R[e]+t;for(let t=e+1;t<=M;t++){const e=$e(t);R[t]=n,n+=e}Z=R[M]}(e,t),e<P&&(Ue(E.childNodes[e],t),Ct(A,0,Math.min(P,M),X),Ft(),nn()),Ue(g.childNodes[e],t),Bt(),Ct(fe,X,X+J,X),Dt()}(_e,Ie),O.style.visibility="hidden",O.style.left=0,Te=setTimeout((()=>{_e=void 0}),500),t=De(_e).name,n=Ie,rt().deviants[t]=n,nt()}function ot(e){return Math.max(r.minColumnWidth,Math.ceil(8*e*1.2))}function it(e){S||(e.preventDefault(),C.style.left=f+"px",C.style.display="block",C.style.height=re-(kt()?ye:0)+"px",_.style.height=C.style.height,k=e.offsetY-x.getBoundingClientRect().height/2,S=e.pageY,x.style.top=k+"px")}function lt(e){const t=e.relatedTarget;t===x||t===C||t===v||T||(e.preventDefault(),C.style.display="none",S=void 0)}function st(e){const t=e.pageX-T,n=f+t;C.style.left=n+"px",w=P;let r=n;for(let e=0;e<M;e++){const t=$e(e);if(r-=t,r<0){w=-r/t<.5?e+1:e;break}}w>P&&u.scrollLeft>0&&(w=P),_.style.left=Ve(w)+"px",_.style.display="block",ut(e)}function ct(){document.onmousemove=void 0,document.onmouseup=void 0,C.style.display="none",_.style.display="none",S=void 0,T=void 0,c.style.cursor=null,x.style.cursor=null,N.style.cursor=null,sn(w)}function dt(e){e.preventDefault(),T=e.pageX,document.onmousemove=st,document.onmouseup=ct,c.style.cursor="grabbing",x.style.cursor="grabbing",N.style.cursor="grabbing"}function ut(e){if(S){e.preventDefault();const t=e.pageY-S;x.style.top=Math.min(re-x.getBoundingClientRect().height-(kt()?ye:0),Math.max(0,k+t))+"px"}}function mt(e,t,n,r){for(let r=t,a=t+n;r<a;r++){const t=De(r),n=document.createElement("div");ft(n,"qg-header"),Ue(n,$e(r)),n.setAttribute("data-column-name",t.name),Ge(r)&&ft(n,"qg-header-l");const a=document.createElement("span");ft(a,"qg-header-type"),a.innerHTML=t.type.toLowerCase();const o=document.createElement("span");ft(o,"qg-header-name"),o.innerHTML=t.name;const i=document.createElement("div");ft(i,"qg-col-resize-hysteresis"),i.columnIndex=r,i.onmousedown=Je,i.onmouseenter=Ke,i.onmouseleave=Xe;const l=document.createElement("span");ft(l,"qg-header-border"),n.append(i,l),n.append(o,a),n.onclick=We,e.append(n)}if(r){const t=document.createElement("div");return t.className="qg-header qg-stub",t.style.width=ye+"px",e.append(t),t}return null}function gt(){R=[],Z=0;for(let e=0;e<M;e++){const t=De(e),n=ot(t.name.length+t.type.length);R.push(Z),Z+=n}R.push(Z)}function pt(e,t){e.classList.remove(t)}function ft(e,t){e&&e.classList.add(t)}function ht(e){pt(e,a)}function bt(){ft(ge,a)}function Et(e){!e||ge===e&&e.classList.contains(a)||(ge&&ht(ge),ge=e,be=e.columnIndex,bt())}function yt(e,t){null!==t?(e.innerHTML=(e=>{const t={"<":"<",">":">",'"':""","'":"'"};return e.replace(/[<>"']/g,(e=>t[e]))})(t.toString()),e.classList.remove("qg-null")):(e.innerHTML="null",e.classList.add("qg-null"))}function wt(e,t,n){const r=e.childNodes[n%J];Qt(r,n),yt(r,t[D[n]])}function vt(e){return Math.max(P,e)}function Ct(e,t,n,r){if(e.length>0&&M>0&&t<n){Ee.colLo=t,Ee.colHi=n,Ee.nextVisColumnLo=r,Ee.render=!1;const a=je();let o=a.t,i=a.b;o-=o&j,i=i-(i&j)+q;for(let r=o;r<i;r++){const a=e[r&j];a.style.width=Z+"px";const o=Math.floor(r/H),i=r%H;let l,s;if(o<z.length&&(l=z[o])&&i<l.length&&(s=l[i]))for(let e=t;e<n;e++)wt(a,s,e);else Ee.render=!0}X=Math.max(0,Math.min(r,M-J)),Kt()}}function _t(e){const t=u.scrollLeft;u.scrollLeft=e,g.scrollLeft=e,t===u.scrollLeft&&bt()}function xt(e){if(-1!==e){be=e;const t=be<P?y.childNodes[be]:me.childNodes[be%J];t.columnIndex=be,Et(t)}}function St(e){e===i&&X>0&&M>J?Ct(fe,P,J,0):e===l&&X+J<M&&Ct(fe,vt(M-J),M,M-J);const t=Ve(be),n=$e(be);if(e!==o&&(be>=P||e===i)){const e=Math.max(0,t-f);if(e<u.scrollLeft)_t(e);else if(e>u.scrollLeft){const e=t+n;e>u.scrollLeft+u.clientWidth&&_t(e-u.clientWidth)}}xt(be)}function Tt(e){if(he>0){he=Math.max(0,he-e),Rt(),Lt(),Ot(),St(o);const t=he*ae-ue-5;t<u.scrollTop&&Fe(Math.max(0,t))}}function kt(){return u.scrollWidth>ne}function Nt(e){const t=e[he&j];return t.className="qg-r qg-r-active",t}function Ot(){me=Nt(fe),y=Nt(A)}function Rt(){me&&(me.className="qg-r"),y&&(y.className="qg-r")}function It(e){if(he>-1&&he<oe-1){he=Math.min(oe-1,he+e),Rt(),Lt(),Ot(),St(o);const t=Math.min(he*ae+ae-ue,u.scrollHeight)-re,n=kt()?ye:0;t>u.scrollTop&&Fe(t+n)}}function Pt(){const e=ee+te,t=ee,n=u.scrollLeft,r=u.getBoundingClientRect().width;if(R)if(n+r>e){let t=-1,r=ee;for(let e=X,a=J+X;e<a;e++)if(r+=$e(e),r>n){t=e;break}if(t>X)Ct(fe,vt(J+X),Math.min(J+t,M),t);else if(-1===t){let t=e,r=J+X;for(;t<n;)t+=$e(++r);Ct(fe,vt(r),Math.min(J+r,M),r)}}else if(t>n){let e=X,t=ee;for(;t>n&&e>0;)t-=$e(--e);const r=Math.min(J,X-e);Ct(fe,vt(e),Math.min(r+e,M),e)}}function At(){Pe||(ft(c,"qg-hover"),Pe=!0)}function Lt(){Pe&&(pt(c,"qg-hover"),Pe=!1)}function Dt(e){const t=u.scrollLeft,n=u.scrollTop;if(g.scrollLeft!==t&&(g.scrollLeft=t),P>0&&(t>0?ft(p,"qg-panel-scrolled-left"):pt(p,"qg-panel-scrolled-left")),n>0?(ft(g,"qg-panel-scrolled-top"),ft(E,"qg-panel-scrolled-top")):(pt(g,"qg-panel-scrolled-top"),pt(E,"qg-panel-scrolled-top")),Pt(),n!==ce||!e){const e=le;n>=se-re?(le=Math.max(0,ie-re),ce=n,ue=Math.max(0,le-ce),It(oe-he)):(0===n&&ce>0?(le=0,ue=0,Tt(he)):le+=n-ce,ce=n),He(le-e)}zt(),bt()}function Mt(){const e=u.getBoundingClientRect().width;if(U=0===e,!U)if(Z<e)J=M,X=0,Kt();else{let t=0,n=0,r=0,a=0;for(;n<M;){const o=$e(n);r+o>e?(a<n-t+1&&(a=n-t+1),r-=$e(t),t++):(r+=o,n++)}a=Math.max(a,n-t+1),J=Math.min(a,M);const o=X+J-M;o>0&&X>=o&&(X-=o,Kt())}}function Bt(){we&&(kt()&&Math.abs(u.scrollHeight-u.getBoundingClientRect().height)>.8?pt(we,"qg-stub-transparent"):ft(we,"qg-stub-transparent"));const e=J;Mt(),e<J?function(e){for(let t=0,n=fe.length;t<n;t++){const n=fe[t];for(let t=0;t<e;t++){const e=document.createElement("div");e.className="qg-c",n.append(e)}for(let e=0;e<J;e++)Qt(n.childNodes[e],X+e)}Ct(fe,vt(X),X+J,X)}(J-e):e>J&&function(e){for(let t=0,n=fe.length;t<n;t++){const n=fe[t];for(let t=J;t<e;t++)n.childNodes[J].remove()}Ct(fe,vt(X),X+J,X)}(e)}function Ft(){let e=0;const t=Math.min(P,M);for(let n=0;n<t;n++)e+=$e(n);f=e}function zt(){const e=u.clientHeight+g.clientHeight;p.style.height=e+"px",h.style.height=u.clientHeight+"px",h.scrollTop=u.scrollTop}function Zt(){u.scrollTop=h.scrollTop}function Ut(){if(0===z.length||0===z[G].length)return Pt(),void He(0);if(Ae&&(Ae=!1,function(){Xt();for(let e=0;e<P;e++)Ue(E.childNodes[e],$e(e));for(let e=0,t=M-P;e<t;e++)Ue(g.childNodes[e],$e(e+P))}()),U&&(tn(),rn()),zt(),"none"!==c.style.display){re=Math.max(u.getBoundingClientRect().height,r.minVpHeight),pe=Math.floor(re/ae);const e=u.getBoundingClientRect().width;ne!==e&&(ne=e,Bt()),Dt()}}function qt(){Rt(),this.focus(),he=this.parentElement.rowIndex,Ot(),Et(this)}function jt(e){e.preventDefault();const t=e.target;if(t&&!T){const e=t.parentElement.rowIndex&j;ft(fe[e],"qg-r-hover"),ft(A[e],"qg-r-hover")}}function Ht(e){e.preventDefault();const t=e.target;if(t&&!T){const e=t.parentElement.rowIndex&j;pt(fe[e],"qg-r-hover"),pt(A[e],"qg-r-hover")}}function Vt(e){delete K["which"in e?e.which:e.keyCode]}function $t(){Le[Ne]=void 0,nt(),ln(0),E.innerHTML="",on(),en(),B=F,g.innerHTML="",gt(),Xt(),f=0,we=mt(g,0,M,!0),Bt(),Ft(),nn(),Ct(fe,vt(X),X+J,X),Ct(A,0,P,X),u.scrollLeft=0,Jt()}function Gt(){return K[17]||K[91]||K[224]}function Wt(e){const t="which"in e?e.which:e.keyCode;let n=!0;switch(t){case 33:Tt(pe);break;case 38:K[91]?Tt(he):Tt(1);break;case 40:K[91]?It(oe-he):It(1);break;case 34:It(pe);break;case 39:be>-1&&be<M-1&&(Lt(),be++,St(2));break;case 37:be>0&&(Lt(),be--,St(1));break;case 35:K[17]?It(oe-he):be>-1&&be!==M-1&&(Lt(),be=M-1,St(l));break;case 36:K[17]?Tt(he):(be>0||u.scrollLeft>0)&&(Lt(),be=0,St(i));break;case 113:ge&&ht(ge),cn("yield.focus");break;case 67:case 45:Gt()&&ge&&(Re&&clearTimeout(Re),ft(ge,"qg-c-active-pulse"),navigator.clipboard.writeText(ge.innerHTML).then(void 0),Re=setTimeout((()=>{pt(ge,"qg-c-active-pulse")}),1e3));break;case 66:Gt()&&$t();break;case 191:Me();break;default:K[t]=!0,n=!1}n&&e.preventDefault()}function Qt(e,t){const n=Ve(t);e.style.left=n+"px",e.style.width=Ve(t+1)-n+"px",e.style.height=r.rowHeight+"px",e.style.textAlign=Ge(t)?"left":"right",e.onclick=qt,e.onmouseenter=jt,e.onmouseleave=Ht,e.classList.contains("qg-timestamp")&&pt(e,"qg-timestamp"),e.columnIndex===M-1&&pt(e,"qg-last-col"),e.columnIndex=t,t===B&&ft(e,"qg-timestamp"),e.columnIndex===M-1&&ft(e,"qg-last-col")}function Yt(e,t,n,r){for(let a=0;a<q;a++){const o=document.createElement("div");o.className="qg-r",o.tabIndex=a+a;for(let e=0;e<n;e++){const t=document.createElement("div");t.className="qg-c",Qt(t,e),o.append(t),0===a&&0===e&&Et(t)}o.style.top="-100",o.style.height=ae.toString()+"px",o.style.width=r+"px",t.push(o),e.append(o)}}function Kt(){if(U)return;let e=0;for(let t=0;t<X;t++)e+=$e(t);let t=0;for(let e=X,n=X+J;e<n;e++)t+=$e(e);ee=e,te=t}function Xt(){const e=.8*u.getBoundingClientRect().width;if(Ae=e<.1,!Ae&&z&&z.length>0){const t=Le[Ne],n=void 0!==t?t.deviants:void 0,r=z[0],a=r.length;ln(void 0!==t?t.freezeLeft:0);let o=0;for(let t=0;t<M;t++){let i;if(n&&(i=n[De(t).name]),void 0===i){i=$e(t);for(let n=0;n<a;n++){R[t]=o;const a=r[n][t],l=null!==a?a.toString():"null";i=Math.min(e,Math.max(i,ot(l.length)))}}else R[t]=o;o+=i}R[M]=o,Z=o}}function Jt(){xt(0),me.focus()}function en(){D=[];for(let e=0;e<M;e++)D.push(e)}function tn(){Mt(),Kt()}function nn(){p.style.width=f+"px"}function rn(){if(U)return;const e=Le[Ne];e&&e.columnPositions&&(D=e.columnPositions,B=e.timestampIndex),Xt(),Ft(),we=mt(g,0,M,!0),P>0?(mt(E,0,Math.min(P,M),!1),an()):on(),nn(),Yt(m,fe,J,Z),Yt(b,A,Math.min(P,M),f),function(){oe=I,ie=oe*ae,se=ie<r.yMaxThreshold?ie:r.yMaxThreshold,de=ie/se;const e=(0===se?1:se)+"px";m.style.height=e,b.style.height=e}(),Fe(0),Ut(),he=0,me=fe[he],y=A[he],Jt()}function an(){p.style.display="block",N.style.display="none",h.scrollTop=u.scrollTop}function on(){p.style.display="none",N.style.display="block";for(let e=0,t=A.length;e<t;e++)A[e].innerHTML=""}function ln(e){P=void 0!==e?e:0,cn("freeze.state",{freezeLeft:P})}function sn(e){if(void 0!==e&&e!==P){if(e<P){for(let t=0,n=A.length;t<n;t++){const n=A[t];for(let t=e;t<P;t++)n.childNodes[e].remove()}for(let t=e;t<P;t++)E.childNodes[e].remove();0===e&&on()}else{for(let t=0,n=A.length;t<n;t++){const n=A[t];for(let t=P;t<e;t++){const e=document.createElement("div");e.className="qg-c",Qt(e,t),n.append(e)}}mt(E,P,e-P,!1),an()}ln(e),rt().freezeLeft=P,nt(),Ct(A,0,Math.min(P,M),X),Ft(),nn(),Ct(fe,vt(X),X+J,X)}}function cn(e,t){c.dispatchEvent(new CustomEvent(e,{detail:t}))}return function(){g=document.createElement("div"),ft(g,"qg-header-row"),u=document.createElement("div"),u.onscroll=Dt,ft(u,"qg-viewport"),m=document.createElement("div"),m.className="qg-canvas",m.onkeydown=Wt,m.onkeyup=Vt,O=document.createElement("div"),O.className="qg-col-resize-ghost",u.append(m,O),p=document.createElement("div"),ft(p,"qg-panel-left"),E=document.createElement("div"),ft(E,"qg-header-left-row"),h=document.createElement("div"),h.onscroll=Zt,ft(h,"qg-viewport-left"),b=document.createElement("div"),b.className="qg-canvas",b.onkeydown=Wt,b.onkeyup=Vt,h.append(b),v=document.createElement("div"),ft(v,"qg-panel-left-hysteresis"),v.onmouseenter=it,v.onmouseleave=lt,v.onmousemove=ut,v.onmousedown=dt,C=document.createElement("div"),ft(C,"qg-panel-left-ghost"),C.onmousemove=ut,C.onmouseleave=lt,x=document.createElement("div"),ft(x,"qg-panel-left-ghost-handle"),x.onmouseleave=lt,x.onmousedown=dt,C.append(x),p.append(E,h,v),_=document.createElement("div"),ft(_,"qg-panel-left-snap-ghost"),N=document.createElement("div"),ft(N,"qg-panel-left-initial-hysteresis"),N.onmouseenter=it,N.onmouseleave=lt,N.onmousemove=ut,N.onmousedown=dt,c.append(g,u,p,C,_,N),c.onmousemove=At,c.style.position="relative";const e=window.localStorage.getItem(s);e&&(Le=JSON.parse(e)),new ResizeObserver((function(){c.getBoundingClientRect().height>0&&c.getBoundingClientRect().width>0&&Ut()})).observe(c)}(),Ut(),{clearCustomLayout:function(){$t()},shuffleFocusedColumnToFront:function(){Me()},toggleFreezeLeft:function(){sn(P>0?0:1),xt(be)},show:function(){c.style.display="flex",Ut()},hide:function(){c.style.display="none"},focus:function(){ge&&me&&(Et(ge),me.focus())},setData:function(e){!function(e){setTimeout((()=>{(function(e){ce=0,le=0,ue=0,oe=0,g.innerHTML="",E.innerHTML="",m.innerHTML="",b.innerHTML="",fe=[],A=[],z=[],Q=null,G=0,W=0,K=[],M=0,I=0,me=null,y=null,ge=null,be=-1,X=0,J=10,ne=0,B=-1,F=-1,he=-1,Ae=!1,_e=void 0,Qe(),ke=void 0,Ne=void 0,f=0,U=!1,ln(0),At(),Q=e.query,z.push(e.dataset),L=e.columns,M=L.length,en(),F=e.timestamp,B=F,I=e.count,gt(),tn()})(e),function(e){const t=[];for(let e=0;e<M;e++){const n=De(e);t.push({name:n.name,type:n.type})}ke=JSON.stringify(t),Ne=(e=>{let t=0;for(let n=0;n<e.length;n++)t=(t<<5)-t+e.charCodeAt(n),t&=t;return new Uint32Array([t])[0].toString(36)})(ke),e()}(rn)}),0)}(e)},getSQL:function(){return Q},render:function(){Ut()},addEventListener:function(e,t){!function(e,t,n){{const n=e=>{t.call(c,e)};c.addEventListener(e,n)}}(e,t)}}}n(60985),n(91499),n(21287),n(50591);var Oc=n(99400),Rc=n(91074),Ic=n(37579),Pc=n(28670),Ac=n.n(Pc);const Lc="#eee",Dc=function(){return{axisLine:{lineStyle:{color:Lc}},axisTick:{lineStyle:{color:Lc}},axisLabel:{textStyle:{color:Lc}},splitLine:{lineStyle:{type:"dashed",color:"#aaa"}},splitArea:{areaStyle:{color:Lc}}}},Mc=["#dd6b66","#759aa0","#e69d87","#8dc1a9","#ea7e53","#eedd78","#73a373","#73b9bc","#7289ab","#91ca8c","#f49f42"],Bc={color:Mc,backgroundColor:"#282a36",tooltip:{axisPointer:{lineStyle:{color:Lc},crossStyle:{color:Lc}}},legend:{textStyle:{color:Lc}},textStyle:{color:Lc},title:{textStyle:{color:Lc}},toolbox:{iconStyle:{normal:{borderColor:Lc}}},dataZoom:{textStyle:{color:Lc}},timeline:{lineStyle:{color:Lc},itemStyle:{normal:{color:Mc[1]}},label:{normal:{textStyle:{color:Lc}}},controlStyle:{normal:{color:Lc,borderColor:Lc}}},timeAxis:Dc(),logAxis:Dc(),valueAxis:Dc(),categoryAxis:Dc(),line:{symbol:"circle"},graph:{color:Mc},gauge:{title:{textStyle:{color:Lc}}},candlestick:{itemStyle:{normal:{color:"#FD1050",color0:"#0CF49B",borderColor:"#FD1050",borderColor0:"#0CF49B"}}},textStyle:{fontFamily:'"Open Sans", -apple-system, BlinkMacSystemFont, Helvetica, Roboto, sans-serif'}};var Fc=n(94349);Oc.D$([Rc.N,Ic.N]);const zc=s.ZP.div.withConfig({displayName:"Result__Root"})(["\n display: flex;\n flex: 1;\n width: 100%;\n"]),Zc=(0,s.ZP)(it).withConfig({displayName:"Result__Wrapper"})(["\n overflow: hidden;\n"]),Uc=(0,s.ZP)(ot).withConfig({displayName:"Result__Content"})(["\n flex: 1 1 0;\n color: ",";\n\n *::selection {\n background: ",";\n color: ",";\n }\n"],D("foreground"),D("red"),D("foreground")),qc=s.ZP.div.withConfig({displayName:"Result__Actions"})(["\n display: grid;\n grid-auto-flow: column;\n grid-auto-columns: max-content;\n gap: 0;\n align-items: center;\n justify-content: flex-end;\n padding: 0 1rem;\n width: 100%;\n height: 4.5rem;\n background: ",";\n"],(({theme:e})=>e.color.backgroundDarker)),jc=(0,s.ZP)(kc.L).withConfig({displayName:"Result__TableFreezeColumnIcon"})(["\n transform: scaleX(-1);\n"]),Hc=(0,s.ZP)(Ae).withConfig({displayName:"Result__RowCount"})(["\n margin-right: 1rem;\n"]),Vc=({viewMode:e})=>{const{quest:t}=(0,r.useContext)(aa),[n,a]=(0,r.useState)(),i=(0,o.v9)(ta.query.getResult),l=(0,o.v9)(ta.console.getActiveSidebar),s=(0,r.useRef)(),[c,d]=(0,r.useState)(0),u=(0,o.I0)();(0,r.useEffect)((()=>{const e=Nc(document.getElementById("grid"),(async function(e,n,a,o){try{const r=await t.queryRaw(e,{limit:`${n},${a}`,nm:!0});r.type===T.DQL&&o(r)}catch(t){u(Lr()),u(Ir({content:r.createElement(Ae,{color:"red"},t.error),sideContent:r.createElement(wi,{query:e}),type:kr.ERROR}))}}));s.current=e,function(e,t,n){let r=e;const a=_c()("#_qvis_frm_draw");let o,i,l,s,c,d,u;const m=new Set,g={title:{},tooltip:{},legend:{data:["Series"]},xAxis:{data:[]},yAxis:{},series:[{name:"Y-axis",type:"bar",data:[]}]};let p,f,h=!1;const b=new(Ac())({select:"#_qvis_frm_chart_type"}),E=new(Ac())({select:"#_qvis_frm_axis_x"}),y=new(Ac())({select:"#_qvis_frm_axis_y"});function w(){i.resize()}function v(){a.html('<i class="icon icon-play"></i><span>Draw</span>'),a.removeClass("js-chart-cancel").addClass("js-chart-draw")}function C(e){try{let t;const n=e.columns,r=e.dataset;if(n&&r){const e=new Map;for(t=0;t<n.length;t++)e.set(n[t].name,t);let a;if(null!=c){let n=e.get(c);const o=[];for(t=0;t<r.length;t++)o[t]=r[t][n];a={type:"category",name:c,data:o}}else a={};let o=[];if(d.length>0)for(t=0;t<d.length;t++){const n=e.get(d[t]);if(n){let e=[];for(let t=0;t<r.length;t++)e[t]=r[t][n];o[t]="area"===u?{type:"line",name:d[t],data:e,areaStyle:{},smooth:!0,symbol:"none"}:{name:d[t],type:u,data:e,large:!0}}}const l={tooltip:{trigger:"axis",axisPointer:{label:{show:!1}}},legend:{},xAxis:a,yAxis:{type:"value"},series:o};i.setOption(l,!0)}}finally{w(),v()}}async function _(){a.html('<i class="icon icon-stop"></i><span>Cancel</span>'),a.removeClass("js-chart-draw").addClass("js-chart-cancel"),h=!0,u=b.selected();const e=E.selected(),t=y.selected();if((0,Fc.arrayEquals)(e,c)&&(0,Fc.arrayEquals)(t,d)&&l===f)C(p);else{m.clear(),c=E.selected(),c&&m.add(c),d=y.selected(),function(e,t){for(let n=0;n<e.length;n++)t.add(e[n])}(y.selected(),m);let e="";m.forEach((function(t){""!==e&&(e+=","),e+=t})),s=(new Date).getTime();const t=await n.queryRaw(l,{count:!1,timings:!1,cols:e,src:"vis"});t.type===T.DQL?(r=t,h=!1,R.publish(I.MSG_QUERY_OK,{delta:(new Date).getTime()-s,count:r.count}),p=r,f=l,C(r)):function(e){h=!1,v(),R.publish(I.MSG_QUERY_ERROR,{query:f,r:e.responseJSON,status:e.status,statusText:e.statusText,delta:(new Date).getTime()-s})}(t),R.publish(I.MSG_QUERY_RUNNING)}var r}function x(){i.setOption(g,!0)}o=r.find(".quick-vis-canvas")[0],_c()(window).resize(w),R.subscribe(I.MSG_ACTIVE_SIDEBAR,w),i=Oc.S1(o,Bc),R.subscribe(I.MSG_QUERY_DATASET,(function(e){let t=[];const n=e.columns;for(let e=0;e<n.length;e++)t[e]={text:n[e].name,value:n[e].name};E.setData(t),y.setData(t),y.set(t.slice(1).map((e=>e.text))),l=e.query,x()})),a.click((function(){return h?n.abort():_(),_(),!1})),x(),w()}(_c()("#quick-vis"),window.bus,t),e.addEventListener("header.click",(function(e){R.publish(I.MSG_EDITOR_INSERT_COLUMN,e.detail.columnName)})),e.addEventListener("yield.focus",(function(){R.publish(I.MSG_EDITOR_FOCUS)})),e.addEventListener("freeze.state",(function(e){d(e.detail.freezeLeft)}))}),[]),(0,r.useEffect)((()=>{i?.type===T.DQL&&(a(i.count),s?.current?.setData(i))}),[i]),(0,r.useEffect)((()=>{const t=document.getElementById("grid"),n=document.getElementById("quick-vis");t&&n&&("grid"===e?(n.style.display="none",s?.current?.show()):(s?.current?.hide(),n.style.display="flex"))}),[e]),(0,r.useEffect)((()=>{s?.current?.render()}),[l]);const m=[{tooltipText:"Freeze left column",trigger:r.createElement(Ct,{onClick:()=>{s?.current?.toggleFreezeLeft(),s?.current?.focus()},selected:c>0},r.createElement(jc,{size:"18px"}))},{tooltipText:"Move selected column to the front",trigger:r.createElement(en.z,{skin:"transparent",onClick:s?.current?.shuffleFocusedColumnToFront},r.createElement(Tc.W,{size:"18px"}))},{tooltipText:"Reset grid layout",trigger:r.createElement(en.z,{skin:"transparent",onClick:s?.current?.clearCustomLayout},r.createElement(Sc.A,{size:"18px"}))},{tooltipText:"Refresh",trigger:r.createElement(en.z,{skin:"transparent",onClick:()=>{const e=s?.current?.getSQL();e&&R.publish(I.MSG_QUERY_EXEC,{q:e})}},r.createElement(ir.h,{size:"18px"}))}];return(0,r.useEffect)((()=>{i?.type===T.DQL&&a(i.count)}),[i]),r.createElement(zc,null,r.createElement(Zc,null,r.createElement(qc,null,n&&r.createElement(Hc,{color:"foreground"},`${n.toLocaleString()} row${n>1?"s":""}`),"grid"===e&&m.map(((e,t)=>r.createElement(ct,{key:t,delay:350,placement:"bottom",trigger:e.trigger},r.createElement(kt,null,e.tooltipText)))),r.createElement(ct,{delay:350,placement:"bottom",trigger:r.createElement(en.z,{skin:"transparent",onClick:()=>{const e=s?.current?.getSQL();e&&t.exportQueryToCsv(e)}},r.createElement(xc.Q,{size:"18px"}))},r.createElement(kt,null,"Download result as a CSV file"))),r.createElement(Uc,null,r.createElement("div",{id:"grid"}),r.createElement("div",{id:"quick-vis"},r.createElement("div",{className:"quick-vis-controls"},r.createElement("form",{className:"v-fit",role:"form"},r.createElement("div",{className:"form-group"},r.createElement("label",null,"Chart type"),r.createElement("select",{id:"_qvis_frm_chart_type"},r.createElement("option",null,"bar"),r.createElement("option",null,"line"),r.createElement("option",null,"area"))),r.createElement("div",{className:"form-group"},r.createElement("label",null,"Labels"),r.createElement("select",{id:"_qvis_frm_axis_x","data-hook":"chart-panel-labels-select"})),r.createElement("div",{className:"form-group"},r.createElement("label",null,"Series"),r.createElement("select",{id:"_qvis_frm_axis_y","data-hook":"chart-panel-series-select",multiple:!0})),r.createElement("button",{className:"button-primary js-chart-draw",id:"_qvis_frm_draw","data-hook":"chart-panel-draw-button"},r.createElement("i",{className:"icon icon-play"}),r.createElement("span",null,"Draw")))),r.createElement("div",{className:"quick-vis-canvas"})))))};var $c=n(2590),Gc=n(83332),Wc=n(19663),Qc=n(79609);function Yc(){return Yc=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Yc.apply(this,arguments)}D("backgroundDarker"),D("selection"),D("foreground"),D("selection"),D("foreground");const Kc=s.ZP.div.withConfig({displayName:"Table__Wrapper"})(["\n position: relative;\n display: flex;\n margin-top: 0.5rem;\n align-items: stretch;\n flex-direction: column;\n overflow: hidden;\n font-family: ",";\n\n ",";\n"],(({theme:e})=>e.fontMonospace),X),Xc=(0,s.ZP)(io).withConfig({displayName:"Table__Title"})(["\n display: flex;\n align-items: stretch;\n font-weight: ",";\n\n &:hover {\n cursor: pointer;\n }\n"],(({expanded:e})=>e?800:400)),Jc=s.ZP.div.withConfig({displayName:"Table__Columns"})(['\n position: relative;\n display: flex;\n margin-left: 2rem;\n flex-direction: column;\n\n &:before {\n position: absolute;\n height: 100%;\n width: 2px;\n left: -0.4rem;\n top: 0;\n content: "";\n background: ',";\n }\n"],D("gray1")),ed=(0,s.ZP)(Wc.o).withConfig({displayName:"Table__Loader"})(["\n margin-left: 1rem;\n color: ",";\n ",";\n"],D("orange"),m),td=({table_id:e,column:t,designatedTimestamp:n})=>({toggleOpen:a})=>r.createElement(io,Yc({},t,{designatedTimestamp:n,table_id:e,kind:"column",name:t.column,onClick:()=>a()})),nd=({description:e,isScrolling:t,designatedTimestamp:n,id:a,table_name:i,partitionBy:l,ttlValue:s,ttlUnit:c,expanded:d=!1,walEnabled:u,walTableData:m,onChange:g,dedup:p,selected:f,selectOpen:h,onSelectToggle:b})=>{const{quest:E}=(0,r.useContext)(aa),[y,w]=(0,r.useState)(),v=(0,o.v9)(ta.query.getTables),C=(0,o.I0)(),_=async e=>{try{const t=await E.showColumns(e);if(t&&t.type===T.DQL)return t}catch(t){C(Ir({content:r.createElement(Ae,{color:"red"},"Cannot show columns from table '",e,"'"),type:kr.ERROR}))}};(0,r.useEffect)((()=>{(async()=>{if(v&&d&&i){const e=await _(i);e&&e.data&&w(e.data)}})()}),[v,i]);const x=[{name:i,kind:"table",initiallyOpen:d,children:[{name:"Columns",initiallyOpen:!0,wrapper:Jc,async onOpen({setChildren:e}){g(i);const t=await _(i);t&&t.data&&t.data.length>0?(w(t.data),e(t.data.map((e=>({name:e.column,render:td({column:e,designatedTimestamp:n,table_id:a})}))))):e([{name:"error",render:()=>r.createElement(Ae,{color:"gray2"},"No columns found")}])},render:({toggleOpen:e,isOpen:t,isLoading:n})=>r.createElement(io,{expanded:t&&!n,kind:"folder",table_id:a,name:"Columns",onClick:()=>e(),suffix:n&&r.createElement(ed,{size:"18px"})})}],render:({toggleOpen:t,isLoading:n})=>r.createElement(Qc.W4,{id:i},r.createElement(Xc,{description:e,kind:"table",table_id:a,name:i,onClick:()=>{t(),g(i)},partitionBy:l,walEnabled:u,walTableData:m,suffix:n&&r.createElement(ed,{size:"18px"}),tooltip:!!e,selectOpen:h,selected:f,onSelectToggle:b}))}];return r.createElement(Kc,{_height:y?30*y.length:0},r.createElement(mo,{root:x}))};var rd=n(82885);const ad=s.ZP.div.withConfig({displayName:"LoadingError__Wrapper"})(["\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n text-align: center;\n width: 100%;\n height: 100%;\n"]),od=(0,s.ZP)(rd.N).withConfig({displayName:"LoadingError__CloudOffIcon"})(["\n height: 3rem;\n"]),id=(0,s.ZP)(Ae).withConfig({displayName:"LoadingError__ErrorTextLine"})(["\n margin-top: 1rem;\n"]),ld=({error:e})=>r.createElement(ad,null,r.createElement(od,null),r.createElement(id,{color:"white"},"Cannot load tables"),e&&r.createElement(id,{color:"gray2",size:"sm"},e.error));var sd=n(85506);const cd=(0,s.ZP)(zt.x).attrs({justifyContent:"space-between",gap:"1rem",alignItems:"center"}).withConfig({displayName:"toolbar__Root"})(["\n width: 100%;\n padding: 0 2rem;\n margin-bottom: 1rem;\n"]),dd=s.ZP.div.withConfig({displayName:"toolbar__Filter"})(["\n position: relative;\n display: flex;\n width: 100%;\n"]),ud=(0,s.ZP)(sd.P).withConfig({displayName:"toolbar__FilterIcon"})(["\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n left: 1rem;\n color: ",";\n"],(({theme:e})=>e.color.gray2)),md=(0,s.ZP)(Ce.x).withConfig({displayName:"toolbar__CloseIcon"})(["\n position: absolute;\n top: 50%;\n transform: translateY(-50%);\n right: 0.5rem;\n"]),gd=(0,s.ZP)(rn.I).withConfig({displayName:"toolbar__StyledInput"})(["\n padding-left: 3.5rem;\n padding-right: 3.5rem;\n width: 100%;\n\n &::placeholder {\n color: ",";\n }\n"],(({theme:e})=>e.color.foreground)),pd=(0,s.ZP)(en.z).withConfig({displayName:"toolbar__StyledButton"})(["\n &:disabled {\n border: none;\n }\n"]),fd=(0,s.ZP)(zt.x).attrs({gap:"0.5rem"}).withConfig({displayName:"toolbar__Error"})(["\n &,\n button {\n color: ",";\n cursor: ",";\n }\n"],(({theme:e,suspendedTablesCount:t})=>e.color[t>0?"red":"gray1"]),(({suspendedTablesCount:e})=>e>0?"pointer":"default")),hd=({suspendedTablesCount:e,filterSuspendedOnly:t,setFilterSuspendedOnly:n})=>{const{setQuery:a}=(0,r.useContext)(tn),o=r.useRef(null);return r.createElement(cd,null,r.createElement(dd,null,r.createElement(ud,{size:"20px"}),o.current?.value&&r.createElement(md,{size:"20px",onClick:()=>{a(""),o.current?.value&&(o.current.value="")},"data-hook":"schema-search-clear-button"}),r.createElement(gd,{ref:o,name:"table_filter",placeholder:"Filter...",onChange:e=>a(e.target.value)})),e>0&&r.createElement(fd,{suspendedTablesCount:e},r.createElement(ct,{placement:"bottom",trigger:r.createElement(pd,{skin:"transparent",onClick:()=>n(!t),prefixIcon:r.createElement(an.j,{size:"18px"}),"data-hook":"schema-filter-suspended-button"},r.createElement("span",null,e))},r.createElement(kt,null,"Show suspended tables"))))};function bd(){return bd=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},bd.apply(this,arguments)}const Ed=(0,s.iv)(["\n display: flex;\n justify-content: center;\n"]),yd=(0,s.ZP)(it).withConfig({displayName:"Schema__Wrapper"})(["\n overflow-x: auto;\n height: 100%;\n"]),wd=(0,s.ZP)(ot).withConfig({displayName:"Schema__Content"})(["\n display: block;\n overflow: auto;\n ",";\n"],(({_loading:e})=>e&&Ed)),vd=(0,s.ZP)($c.G).withConfig({displayName:"Schema__Loader"})(["\n margin-left: 1rem;\n align-self: center;\n color: ",";\n ",";\n"],D("foreground"),m),Cd=s.ZP.div.withConfig({displayName:"Schema__FlexSpacer"})(["\n flex: 1;\n"]),_d=(0,s.ZP)(Ct).withConfig({displayName:"Schema__ToolbarToggleButton"})(["\n &&:not(:disabled) {\n width: auto;\n padding: 0 1rem;\n height: 3rem;\n }\n"]),xd=()=>{const[e,t]=(0,r.useState)(!1);return(0,r.useEffect)((()=>{const e=setTimeout((()=>t(!0)),1e3);return()=>clearTimeout(e)}),[]),e?r.createElement(vd,{size:"22px"}):null};var Sd=function(e){return e[e.loading=0]="loading",e[e.error=1]="error",e[e.ready=2]="ready",e}(Sd||{});const Td={view:Sd.loading},kd=(e,t)=>({...e,...t}),Nd=({innerRef:e,...t})=>{const[n,a]=(0,r.useReducer)(kd,Td),{quest:i}=(0,r.useContext)(aa),[l,s]=(0,r.useState)(null),c=(0,r.useRef)(null),[d,u]=(0,r.useState)(),[m,g]=(0,r.useState)(),[p,f]=(0,r.useState)(),[h,b]=(0,r.useState)(!1),E=(0,o.I0)(),[y,w]=(0,r.useState)(!0),v=(0,r.useRef)(null),[C,_]=(0,r.useState)(""),[x,S]=(0,r.useState)(!1),{autoRefreshTables:k,updateSettings:N}=hs(),[O,A]=(0,r.useState)(!1),[L,D]=(0,r.useState)([]),[M,B]=(0,r.useState)(!1),F=(0,r.useRef)(!1),{addBuffer:z}=Ta(),Z=e=>{f(e===p?void 0:e)},U=async()=>{try{const e=await i.showTables();if(e&&e.type===T.DQL){c.current=null,u(e.data),E(Mr(e.data));const t=await i.query("wal_tables()");t&&t.type===T.DQL&&g(t.data.filter((t=>e.data.map((e=>e.table_name)).includes(t.name)))),a({view:Sd.ready})}else a({view:Sd.error})}catch(e){a({view:Sd.error})}},q=async()=>{const e=["information_schema.questdb_columns()","information_schema.columns()"];for(const t of e)try{const e=await i.query(t);if(e?.type===T.DQL)return void E(Br(e.data))}catch{}a({view:Sd.error})},j=e=>{L.includes(e)?D(L.filter((t=>t!==e))):D([...L,e])};(0,r.useEffect)((()=>{U(),q(),R.subscribe(I.MSG_CONNECTION_ERROR,(e=>{e&&(c.current=e,s(e))})),R.subscribe(I.MSG_CONNECTION_OK,(()=>{null!==c.current&&(U(),q())}))}),[]);const H=(0,r.useCallback)((()=>{F.current&&(U(),q())}),[]);(0,r.useEffect)((()=>{k?(R.subscribe(I.MSG_QUERY_SCHEMA,(()=>{U(),q()})),window.addEventListener("focus",H),B(!0),F.current=!0):M&&(R.unsubscribe(I.MSG_QUERY_SCHEMA),window.removeEventListener("focus",H),B(!1),F.current=!1)}),[k]);const V={[Sd.loading]:()=>r.createElement(xd,null),[Sd.error]:()=>l?r.createElement(ld,{error:l}):r.createElement(Cd,null),[Sd.ready]:()=>r.createElement(r.Fragment,null,d&&d.length>0&&r.createElement(hd,{suspendedTablesCount:m?.filter((e=>e.suspended)).length??0,filterSuspendedOnly:x,setFilterSuspendedOnly:S}),d&&d.filter((e=>{const t=e.table_name.toLowerCase(),n=C.toLowerCase();return t.includes(n)&&(!x||e.walEnabled&&m?.find((t=>t.name===e.table_name))?.suspended)})).sort(((e,t)=>e.table_name.toLowerCase().localeCompare(t.table_name.toLowerCase()))).map((e=>r.createElement(nd,{designatedTimestamp:e.designatedTimestamp,expanded:e.table_name===p,isScrolling:h,key:e.table_name,id:e.id,table_name:e.table_name,onChange:Z,partitionBy:e.partitionBy,ttlValue:e.ttlValue,ttlUnit:e.ttlUnit,walEnabled:e.walEnabled,walTableData:m?.find((t=>t.name===e.table_name)),dedup:e.dedup,selectOpen:O,selected:L.includes(e.table_name),onSelectToggle:j}))))};return r.createElement(tn.Provider,{value:{query:C,setQuery:_}},r.createElement(yd,bd({ref:e},t),r.createElement(Me.Header,{title:"Tables",afterTitle:r.createElement("div",{style:{display:"flex",marginRight:"1rem"}},d&&r.createElement(Se,{align:"center",gap:"0"},O&&r.createElement(ct,{delay:350,placement:"bottom",trigger:r.createElement(en.z,{skin:"transparent","data-hook":"schema-copy-to-clipboard-button",disabled:0===L.length,onClick:async()=>{if(!d)return;let e=[];const t=await Promise.all(L.map((async t=>{try{const e=await i.query(`SHOW CREATE TABLE ${t}`);if(e&&e.type===T.DQL)return e.data[0].ddl}catch(n){e.push(t)}})));0===e.length?((e=>{const t=document.createElement("textarea");t.value=e,document.body.appendChild(t),t.select(),document.execCommand("copy"),document.body.removeChild(t)})(t.join("\n\n")),E(Ir({content:r.createElement(Ae,{color:"foreground"},"Schemas copied to clipboard")}))):E(Ir({content:r.createElement(Ae,{color:"red"},"Cannot copy schemas from tables:"," ",e.sort().join(", ")),type:kr.ERROR}))}},r.createElement(ln.f,{size:"18px"}))},r.createElement(kt,null,"Copy schemas to clipboard")),O&&r.createElement(ct,{delay:350,placement:"bottom",trigger:r.createElement(en.z,{skin:"transparent","data-hook":"schema-select-all-button",onClick:()=>{L.length===d?.length?D([]):D(d?.map((e=>e.table_name))??[])}},r.createElement(Ha,{visible:!0,checked:L.length===d?.length}))},r.createElement(kt,null,L.length===d?.length?"Deselect":"Select"," ","all")),O&&r.createElement(ct,{delay:350,placement:"bottom",trigger:r.createElement(en.z,{"data-hook":"schema-cancel-select-button",skin:"transparent",onClick:()=>{D([]),A(!1)}},r.createElement(Ce.x,{size:"18px"}))},r.createElement(kt,null,"Cancel")),!O&&r.createElement(ct,{delay:350,placement:"bottom",trigger:r.createElement(en.z,{"data-hook":"schema-add-metrics-button",skin:"transparent",onClick:async()=>{const e=Ji.find((e=>"now-1h"===e.dateFrom&&"now"===e.dateTo));await z({metricsViewState:{metrics:[],dateFrom:e.dateFrom,dateTo:e.dateTo,refreshRate:tl.AUTO,viewMode:el.GRID}})}},r.createElement(El.J,{size:"20px"}))},r.createElement(kt,null,"Add metrics")),!O&&r.createElement(ct,{delay:350,placement:"right",trigger:r.createElement(_d,bd({"data-hook":"schema-select-button",onClick:()=>{O&&D([]),A(!O)}},O?{className:"selected"}:{},{selected:O,disabled:0===d?.length}),r.createElement(Gc.e,{size:"18px"}))},r.createElement(kt,null,"Select")),!O&&r.createElement(ct,{delay:350,placement:"right",trigger:r.createElement(_d,{"data-hook":"schema-auto-refresh-button",onClick:()=>{N(P.AUTO_REFRESH_TABLES,!k),U(),q()},selected:k},r.createElement(ir.h,{size:"18px"}))},r.createElement(kt,null,"Auto refresh"," ",k?"enabled":"disabled")))),shadow:!y}),r.createElement(wd,{_loading:n.view===Sd.loading,ref:v,onScroll:()=>w(0===v?.current?.scrollTop)},V[n.view]())))},Od=(e,t)=>r.createElement(Nd,bd({},e,{innerRef:t})),Rd=(0,r.forwardRef)(Od);var Id=n(83381);const Pd=s.ZP.div.withConfig({displayName:"start__Items"})(["\n display: grid;\n grid-auto-flow: row;\n grid-auto-columns: max-content;\n gap: 4rem;\n text-align: center;\n justify-items: center;\n"]),Ad=(0,s.ZP)(Id.X).withConfig({displayName:"start__StyledHeading"})(["\n color: ",";\n"],(({theme:e})=>e.color.foreground)),Ld=s.ZP.div.withConfig({displayName:"start__Actions"})(["\n display: grid;\n gap: 2rem;\n grid-template-columns: repeat(2, 1fr);\n"]),Dd=(0,s.ZP)(zt.x).attrs({flexDirection:"column",gap:"2rem"}).withConfig({displayName:"start__Action"})(["\n padding: 2rem;\n border-radius: ",";\n background: #2c2e3d;\n cursor: pointer;\n\n &,\n &:hover {\n ",";\n }\n\n > * {\n opacity: 0.8;\n }\n\n &:hover {\n background: #3f4252;\n\n > * {\n opacity: 1;\n }\n }\n"],(({theme:e})=>e.borderRadius),J),Md=()=>{const e=(0,o.I0)();return r.createElement(Pd,null,r.createElement(Ad,{level:3},"Enter a query and press ",r.createElement(Ae,{color:"green"},"Run")," to view results."),r.createElement(Ld,null,r.createElement(Dd,{onClick:()=>e(Rr.setActiveBottomPanel("import"))},r.createElement("img",{alt:"File upload icon",width:"60",height:"80",src:"assets/upload.svg"}),r.createElement(Id.X,{level:5},"Import CSV")),r.createElement(Dd,{onClick:()=>e(Rr.setActiveSidebar("create"))},r.createElement("img",{alt:"Create table icon",width:"60",height:"80",src:"assets/create-table.svg"}),r.createElement(Id.X,{level:5},"Create table"))))},Bd=(0,s.ZP)(ot).withConfig({displayName:"zero-state__StyledPaneContent"})(["\n align-items: center;\n justify-content: center;\n"]),Fd=()=>{const{quest:e}=(0,r.useContext)(aa),[t,n]=(0,r.useState)(!0),[a,o]=(0,r.useState)([]);return(0,r.useEffect)((()=>{(async()=>{try{const t=await e.showTables();t&&t.type===T.DQL&&o(t.data)}catch(e){return}finally{n(!1)}})()}),[]),r.createElement(it,null,r.createElement(Bd,null,!t&&a.length<=2&&r.createElement(Md,null)))},zd=(0,s.ZP)(Se).attrs({flexDirection:"column"}).withConfig({displayName:"Sidebar"})(["\n width: 4.5rem;\n height: 100%;\n background: ",";\n gap: 1rem;\n flex-shrink: 0;\n justify-content: ",";\n align-items: center;\n"],(({theme:e})=>e.color.backgroundDarker),(({align:e})=>"top"===e?"flex-start":"flex-end")),Zd=(0,s.ZP)(Ct).withConfig({displayName:"navigation__Navigation"})(["\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n cursor: pointer;\n\n & > span {\n margin-left: 0 !important;\n }\n\n & > :not(:first-child) {\n margin-top: 0.3rem;\n }\n"]);var Ud=n(61520),qd=n(29155),jd=n(92973),Hd=n(16836);const Vd=["B","KB","MB","GB","TB","PB","EB","ZB","YB"],$d=(e,t=0,n=1e3)=>e<n?`${((e,t=2)=>Math.round((e+Number.EPSILON)*10**t)/10**t)(e)} ${Vd[t]}`:$d(e/n,t+1);var Gd=n(36607);const Wd=(0,s.ZP)(Za.e).withConfig({displayName:"file-status__CheckboxCircleIcon"})(["\n color: ",";\n"],(({theme:e})=>e.color.green)),Qd=(0,s.ZP)(Se).withConfig({displayName:"file-status__StyledBox"})(["\n gap: 0.5rem;\n white-space: nowrap;\n"]),Yd=({file:e})=>{const t=(e=>{if(!e.isUploading&&e.uploaded&&e.uploadResult)return{label:`Imported ${e.uploadResult.rowsImported.toLocaleString()} row${e.uploadResult.rowsImported>1||0===e.uploadResult.rowsImported?"s":""}`,type:mt.SUCCESS,icon:r.createElement(Wd,{size:"16px"})};if(e.error)return{label:"Upload error",type:mt.ERROR};if(e.isUploading)return{label:`Uploading: ${e.uploadProgress.toFixed(2)}%`,type:mt.WARNING};switch(e.status){case N.EXISTS:return{label:"Table already exists",type:mt.WARNING};case N.RESERVED_NAME:return{label:"Reserved table name",type:mt.ERROR};case N.DOES_NOT_EXIST:return{label:"Ready to upload",type:mt.SUCCESS}}})(e);return t?r.createElement(Se,{gap:"1rem",align:"flex-start",flexDirection:"column"},r.createElement(Gd.C,{type:t.type},r.createElement(Qd,null,t.icon," ",t.label))):r.createElement(r.Fragment,null)};var Kd=n(90342),Xd=n(54830),Jd=n(30942),eu=n(7218);const tu="yyyy-MM-ddTHH:mm:ss.SSSUUUz",nu=5e5,ru=(0,s.ZP)(eu.O).withConfig({displayName:"upload-settings-dialog__SettingsIcon"})(["\n color: ",";\n"],(({theme:e})=>e.color.foreground)),au=(0,s.ZP)(Se).attrs({justifyContent:"space-between",gap:"2rem"}).withConfig({displayName:"upload-settings-dialog__Row"})(["\n width: 100%;\n"]),ou=(0,s.ZP)(Se).attrs({gap:"0",flexDirection:"column"}).withConfig({displayName:"upload-settings-dialog__Items"})(["\n height: 100%;\n"]),iu=(0,s.ZP)(Se).attrs({gap:"0",flexDirection:"column"}).withConfig({displayName:"upload-settings-dialog__Inputs"})(["\n width: 100%;\n height: 100%;\n overflow: auto;\n"]),lu=(0,s.ZP)(qe.GroupItem).withConfig({displayName:"upload-settings-dialog__Option"})(["\n width: 100%;\n\n &:nth-child(even) {\n background: #242531;\n }\n"]),su=s.ZP.div.withConfig({displayName:"upload-settings-dialog__InputWrapper"})(["\n flex-shrink: 0;\n width: 30%;\n"]),cu=({file:e,open:t,onOpenChange:n,onSubmit:a})=>{const{delimiter:o,overwrite:i,forceHeader:l,skipLev:s,atomicity:c,maxUncommitedRows:d}=e.settings,u={delimiter:o,overwrite:i,forceHeader:l,skipLev:s,atomicity:c,maxUncommitedRows:d},[m,g]=r.useState(u),p=[{type:"input",name:"maxUncommitedRows",label:"Maximum number of uncommited rows",placeholder:nu.toString(),description:r.createElement(r.Fragment,null,"Set this parameter to determine the size of the commit batch based on the RAM size of the machine to avoid running out of memory during an import."),defaultValue:m.maxUncommitedRows},{type:"input",name:"delimiter",label:"Delimiter",placeholder:"Automatic",description:r.createElement(r.Fragment,null,"Delimiter character. When not set, import will try to detect the delimiter automatically. You can define the parameter here to disable auto-detection and allow single-line file import."),defaultValue:m.delimiter},{type:"select",name:"atomicity",label:"Atomicity",description:r.createElement(r.Fragment,null,"Behavior when an error is detected in the data.",r.createElement("br",null),r.createElement("strong",null,"Abort"),": the entire file will be skipped.",r.createElement("br",null),r.createElement("strong",null,"Skip row"),": the row is skipped.",r.createElement("br",null),r.createElement("strong",null,"Skip column"),": the column is skipped."),defaultValue:m.atomicity,options:[{label:"Skip column",value:"skipCol"},{label:"Skip row",value:"skipRow"},{label:"Abort import",value:"abort"}]},{type:"switch",name:"forceHeader",label:"Force header",description:r.createElement(r.Fragment,null,"When set to ",r.createElement("strong",null,"false"),", QuestDB will try to infer if the first line of the file is the header line.",r.createElement("br",null),"When set to ",r.createElement("strong",null,"true"),", QuestDB will expect that line to be the header line."),defaultValue:m.forceHeader},{type:"switch",name:"skipLev",label:"Skip line extra values",description:r.createElement(r.Fragment,null,"When set to ",r.createElement("strong",null,"true"),", the parser will ignore extra values. When set to ",r.createElement("strong",null,"false"),", the parser will ignore the entire line. An extra value is something in addition to what is defined by the header."),defaultValue:m.skipLev}];return r.createElement(qe,{open:t,title:r.createElement(Se,null,r.createElement(ru,{size:"20px"}),r.createElement(Ae,{color:"foreground"},"Settings for ",e.fileObject.name)),trigger:r.createElement(en.z,{skin:"secondary",prefixIcon:r.createElement(eu.O,{size:"18px"}),onClick:()=>n(!0)},"Settings"),onDismiss:()=>{g(u),n(!1)},afterTitle:r.createElement(Se,{gap:"1rem"},r.createElement(en.z,{prefixIcon:r.createElement(on.W,{size:18}),skin:"secondary",onClick:()=>{g(u),n(!1)},type:"button"},"Dismiss"),r.createElement(en.z,{prefixIcon:r.createElement(eu.O,{size:18}),skin:"success",onClick:()=>{a(m),n(!1)}},"Submit"))},r.createElement(qe.ContentWrapper,null,r.createElement(ou,null,r.createElement(iu,null,p.map((e=>r.createElement(lu,{key:e.name},r.createElement(au,{key:e.name},r.createElement(Se,{gap:"1rem",flexDirection:"column",align:"flex-start",justifyContent:"flex-start"},r.createElement(Ae,{color:"foreground",weight:600},e.label),e.description&&r.createElement(Ae,{color:"gray2",size:"sm"},e.description)),r.createElement(su,null,"input"===e.type&&r.createElement(rn.I,{name:e.name,defaultValue:e.defaultValue,placeholder:e.placeholder,onChange:t=>g({...m,[e.name]:t.target.value})}),"select"===e.type&&r.createElement(Sn.P,{name:e.name,defaultValue:e.defaultValue,onChange:t=>g({...m,[e.name]:t.target.value}),options:e.options}),"switch"===e.type&&r.createElement(Jd.r,{checked:e.defaultValue,onChange:t=>g({...m,[e.name]:t})}))))))))))},du=({file:e,onUpload:t,onRemove:n,onSettingsChange:a})=>{const[o,i]=(0,r.useState)(!1);return r.createElement(Se,{gap:"1rem",align:"center"},r.createElement(cu,{open:o,onOpenChange:i,onSubmit:a,file:e}),r.createElement(en.z,{disabled:e.isUploading,skin:"primary",prefixIcon:r.createElement(Xd.C,{size:"18px"}),onClick:()=>t(e.id)},e.isUploading?"Uploading...":"Upload"),r.createElement(ct,{placement:"top",trigger:r.createElement(en.z,{disabled:e.isUploading,skin:"secondary",onClick:()=>{n(e.id)}},r.createElement(Ce.x,{size:"18px"}))},r.createElement(kt,null,"Remove file from queue")))};var uu=n(3512);const mu=e=>{const t=e.length;if(t>127)return!1;if(["telemetry","telemetry_config"].includes(e))return!1;for(let n=0;n<t;n++)switch(e.charAt(n)){case".":if(0==n||n==t-1||"."==e.charAt(n-1))return!1;break;case"?":case",":case"'":case'"':case"\\":case"/":case":":case")":case"(":case"+":case"*":case"%":case"~":case"\0":case"":case"":case"":case"":case"":case"":case"":case"\b":case"\t":case"\v":case"\f":case"\r":case"\n":case"":case"":case"":case"0xfeff":return!1}return e.length>0&&" "!=e.charAt(0)&&" "!=e.charAt(t-1)},gu=s.ZP.ul.withConfig({displayName:"rename-table-dialog__List"})(["\n list-style-position: inside;\n padding-left: 0;\n\n li {\n margin-bottom: 1rem;\n }\n"]),pu=(0,s.ZP)(nn.V.Description).withConfig({displayName:"rename-table-dialog__StyledDescription"})(["\n display: grid;\n gap: 2rem;\n"]),fu=Vn().object({name:Vn().string().required().custom(((e,t)=>mu(e)?e:t.error("string.validTableName"))).messages({"string.empty":"Please enter a name","string.validTableName":"Invalid table name"})}),hu=({open:e,onOpenChange:t,onNameChange:n,file:a})=>{const o=a.table_name??a.fileObject.name;return r.createElement(nn.V.Root,{open:e},r.createElement(nn.V.Trigger,{asChild:!0},r.createElement(we.A,null,r.createElement(en.z,{skin:"transparent",prefixIcon:r.createElement(uu.I,{size:"14px"}),onClick:()=>t(a)},L(o,20)))),r.createElement(nn.V.Portal,null,r.createElement(we.A,null,r.createElement(ve.a,{primitive:nn.V.Overlay})),r.createElement(nn.V.Content,{onEscapeKeyDown:()=>t(void 0),onInteractOutside:()=>t(void 0)},r.createElement(In,{name:"rename-table",defaultValues:{name:o},onSubmit:e=>{n(e.name),t(void 0)},validationSchema:fu},r.createElement(nn.V.Title,null,r.createElement(Se,null,r.createElement(uu.I,{size:20}),"Change table name")),r.createElement(pu,null,r.createElement(In.Item,{name:"name",label:"Table name"},r.createElement(In.Input,{name:"name"})),r.createElement(Ae,{color:"foreground"},r.createElement(gu,null,r.createElement("li",null,"Max 127 characters"),r.createElement("li",null,"Must not contain dot at the beginning"),r.createElement("li",null,"Must not contain the following characters:"," ",r.createElement("strong",null,"? , ' \" \\ / : ) ( + * & ~ \r \n")),r.createElement("li",null,"No control characters and UTF-8 BOM (Byte Order Mark)"),r.createElement("li",null,"Cannot be named ",r.createElement("strong",null,"telemetry")," or"," ",r.createElement("strong",null,"telemetry_config"))))),r.createElement(nn.V.ActionButtons,null,r.createElement(nn.V.Close,{asChild:!0},r.createElement(en.z,{prefixIcon:r.createElement(on.W,{size:18}),skin:"secondary",onClick:()=>t(void 0)},"Dismiss")),r.createElement(nn.V.Close,{asChild:!0},r.createElement(we.A,null,r.createElement(In.Submit,{prefixIcon:r.createElement(uu.I,{size:18}),variant:"success"},"Change"))))))))};var bu=n(12619);const Eu="yyyy-MM-ddTHH:mm:ss.SSSUUUz",yu=s.ZP.div.withConfig({displayName:"controls__Controls"})(["\n display: grid;\n grid-template-columns: var(--columns);\n gap: 1rem;\n width: 100%;\n align-items: flex-end;\n justify-items: center;\n"]),wu=({url:e,text:t,tooltipText:n="Documentation"})=>r.createElement(ct,{placement:"bottom",trigger:r.createElement("a",{href:e,target:"_blank",rel:"noopener noreferrer"},r.createElement(en.z,{skin:"transparent",type:"button"},r.createElement(Dt.d,{size:"14"}),t&&r.createElement("span",null,t)))},r.createElement(kt,null,n));function vu(){return vu=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},vu.apply(this,arguments)}const Cu=[{label:"AUTO",value:""},{label:"BINARY",value:"BINARY"},{label:"BOOLEAN",value:"BOOLEAN"},{label:"BYTE",value:"BYTE"},{label:"CHAR",value:"CHAR"},{label:"DATE",value:"DATE"},{label:"DOUBLE",value:"DOUBLE"},{label:"FLOAT",value:"FLOAT"},{label:"GEOHASH",value:"GEOHASH"},{label:"INT",value:"INT"},{label:"IPV4",value:"IPV4"},{label:"LONG",value:"LONG"},{label:"LONG256",value:"LONG256"},{label:"SHORT",value:"SHORT"},{label:"STRING",value:"STRING"},{label:"VARCHAR",value:"VARCHAR"},{label:"SYMBOL",value:"SYMBOL"},{label:"TIMESTAMP",value:"TIMESTAMP"},{label:"UUID",value:"UUID"}],_u=(0,s.ZP)(Ae).attrs({color:"foreground"}).withConfig({displayName:"column__IndexNumber"})([""]),xu=s.ZP.div.withConfig({displayName:"column__Root"})(["\n display: grid;\n gap: 1rem;\n grid-template-columns: 40px auto;\n padding: 2rem;\n ",";\n"],(({odd:e})=>e&&"background-color: #242531;")),Su=(0,s.ZP)(Se).attrs({gap:"0",align:"center",justifyContent:"center"}).withConfig({displayName:"column__Index"})(["\n width: 4rem;\n height: 3rem;\n"]),Tu=(0,s.ZP)(yu).withConfig({displayName:"column__TimestampControls"})(["\n justify-items: flex-start;\n"]),ku=({action:e,disabled:t,column:n,index:a,onSetTimestamp:o,onFocus:i,timestamp:l,lastFocusedIndex:s})=>{const[c,d]=(0,r.useState)(n.name);return n?r.createElement(xu,{key:n.name,odd:a%2!=0,disabled:t,onFocus:()=>i(a)},r.createElement(Su,null,r.createElement(_u,{color:"foreground"},a+1)),r.createElement(Se,{flexDirection:"column",gap:"1rem",align:"stretch"},r.createElement(yu,null,r.createElement(In.Item,{name:`schemaColumns.${a}.name`},r.createElement(In.Input,vu({placeholder:"Name",disabled:t,defaultValue:n.name,onChange:e=>d(e.target.value),name:`schemaColumns.${a}.name`,autoComplete:"off",required:!0},s===a&&{autoFocus:!0}))),r.createElement(In.Item,{name:`schemaColumns.${a}.type`},r.createElement(In.Select,{defaultValue:"import"===e?n.type:"VARCHAR",name:`schemaColumns.${a}.type`,options:Cu.filter((t=>""!==t.value||"add"!==e))}))),"TIMESTAMP"===n.type&&r.createElement(Se,{flexDirection:"column",gap:"1rem"},r.createElement(Tu,null,"import"===e&&r.createElement(In.Item,{name:`schemaColumns.${a}.pattern`},r.createElement(In.Input,{name:`schemaColumns.${a}.pattern`,placeholder:"Pattern",defaultValue:""!==n.pattern?n.pattern:Eu,required:!0})),r.createElement(Ke,{icon:r.createElement(en.z,{disabled:""===c,skin:""!==l&&""!==n.name&&l===n.name?"success":"secondary",onClick:()=>o(n.name),type:"button",prefixIcon:r.createElement("input",{type:"checkbox",checked:""!==l&&""!==n.name&&l===n.name,onChange:()=>{}})},"Designated"),tooltip:"Mark this column as a designated timestamp",placement:"top"})),"import"===e&&r.createElement(Ae,{color:"gray2"},"Example: ",Eu,r.createElement("br",null),r.createElement(wu,{url:"https://questdb.io/docs/reference/function/date-time/#timestamp-format",text:"Timestamp format docs",tooltipText:"Timestamp format documentation"}))),"GEOHASH"===n.type&&r.createElement(yu,null,r.createElement(In.Item,{name:`schemaColumns.${a}.precision`},r.createElement(In.Input,{name:`schemaColumns.${a}.precision`,placeholder:"Precision",required:!0})),r.createElement(wu,{url:"https://questdb.io/docs/concept/geohashes/#specifying-geohash-precision",text:"Docs",tooltipText:"GEOHASH type documentation"})))):null},Nu=(0,s.ZP)(Se).attrs({align:"center",gap:"1.5rem"}).withConfig({displayName:"columns__Disclaimer"})(["\n width: 100%;\n padding: 2rem;\n color: ",";\n"],(({theme:e,isEditLocked:t})=>e.color[t?"orange":"foreground"])),Ou=s.ZP.div.withConfig({displayName:"columns__SchemaRoot"})(["\n width: 100%;\n height: 100%;\n"]),Ru=(0,s.ZP)(qe.GroupItem).attrs({direction:"column"}).withConfig({displayName:"columns__Error"})(["\n align-items: center;\n"]),Iu=({action:e,isEditLocked:t,onColumnFocus:n,lastFocusedIndex:a})=>{const{formState:o,getValues:i,setValue:l,watch:s}=(0,dn.Gc)(),c=s("timestamp"),d=i().schemaColumns,u=(0,r.useCallback)((o=>{const i=s(`schemaColumns.${o}`);return r.createElement(r.Fragment,null,r.createElement(ku,{action:e,column:i,disabled:t,index:o,lastFocusedIndex:a,onFocus:n,onSetTimestamp:e=>{l("timestamp",c===e?"":e)},timestamp:c}))}),[c,d.length,d.map((e=>e.type)).join(",")]),m=o.errors.schemaColumns;return r.createElement(r.Fragment,null,"import"===e&&!t&&r.createElement(Nu,{isEditLocked:!1},r.createElement(Dt.d,{size:"20px"}),r.createElement(Ae,{color:"foreground"},"Column names have to match the CSV header.",r.createElement("br",null),"Order is not important.")),m&&(Array.isArray(m)?m:[m]).map(((e,t)=>r.createElement(Ru,{key:t},r.createElement(Ae,{color:"red"},e.message)))),r.createElement(Ou,null,d.length>0&&r.createElement(Rt,{itemContent:u,totalCount:d.length,followOutput:!0})),r.createElement(In.Input,{name:"timestamp",hidden:!0}))};var Pu=n(98501),Au=n(72506),Lu=n(69968);const Du=({action:e,ctaText:t,lastFocusedIndex:n,onAdded:a,isEditLocked:o})=>{const i={name:"",type:"import"===e?"":"VARCHAR",pattern:"",precision:""},{insert:l}=(0,dn.Dq)({name:"schemaColumns"}),{getValues:s,setValue:c}=(0,dn.Gc)(),d=s().schemaColumns;return r.createElement(Se,{gap:"1rem"},!o&&r.createElement(r.Fragment,null,r.createElement(ct,{trigger:r.createElement(en.z,{disabled:0===d.length||void 0===n,skin:"secondary",type:"button",onClick:()=>{c("schemaColumns",d.filter(((e,t)=>t!==n))),a(void 0)}},r.createElement(Pu.X,{size:"18px"})),placement:"bottom"},r.createElement(kt,null,void 0!==n&&`Remove column ${n+1}`)),r.createElement(ct,{trigger:r.createElement(en.z,{disabled:0===d.length||void 0===n,skin:"secondary",type:"button",onClick:()=>{const e=void 0!==n?n:d.length;l(e,i),a(e)}},r.createElement(Au.v,{size:"20px"})),placement:"bottom"},r.createElement(kt,null,void 0!==n?`Insert column above ${n+1}`:"Insert column")),r.createElement(ct,{trigger:r.createElement(en.z,{skin:"secondary",type:"button",onClick:()=>{const e=void 0!==n?n+1:d.length;l(e,i),a(e)}},r.createElement(Lu.D,{size:"20px"})),placement:"bottom"},r.createElement(kt,null,void 0!==n?`Insert column below ${n+1}`:"Insert column"))),r.createElement(In.Submit,{prefixIcon:r.createElement(Ft.i,{size:18}),variant:"success"},t))},Mu=(0,s.ZP)(qe.ContentWrapper).withConfig({displayName:"dialog__StyledContentWrapper"})(["\n --columns: auto 120px; /* magic numbers to fit input, type dropdown and remove button nicely */\n"]),Bu=(0,s.ZP)(Se).attrs({gap:"0",flexDirection:"column"}).withConfig({displayName:"dialog__Items"})(["\n height: 100%;\n"]),Fu=(0,s.ZP)(Se).attrs({gap:"0",flexDirection:"column"}).withConfig({displayName:"dialog__Inputs"})(["\n width: 100%;\n height: 100%;\n overflow: auto;\n"]),zu=s.ZP.div.withConfig({displayName:"dialog__Controls"})(["\n display: grid;\n grid-template-columns: ",";\n gap: 1rem;\n align-items: flex-start;\n width: 100%;\n"],(({action:e})=>"add"===e?"auto 120px 120px":"1fr")),Zu=["NONE","HOUR","DAY","MONTH","YEAR"],Uu=({action:e,name:t,schema:n,partitionBy:a,timestamp:i,ttlValue:l,ttlUnit:s,open:c,isEditLocked:d,hasWalSetting:u,walEnabled:m,onOpenChange:g,onSchemaChange:p,trigger:f,tables:h,ctaText:b})=>{const E={name:t,schemaColumns:n,partitionBy:a,timestamp:i,ttlValue:l,ttlUnit:s,walEnabled:u?"false":void 0},[y,w]=(0,r.useState)(E),[v,C]=(0,r.useState)(E),[_,x]=(0,r.useState)(),S=(0,o.I0)(),T=()=>{w({name:t,schemaColumns:n,partitionBy:a,timestamp:i,ttlValue:l,ttlUnit:s,walEnabled:u&&void 0!==m?m.toString():void 0})},k=Vn().object({name:Vn().string().required().custom(((t,n)=>mu(t)?"add"===e&&h?.find((e=>e.table_name.toLowerCase()===t.toLowerCase()))?n.error("string.uniqueTableName"):t:n.error("string.validTableName"))).messages({"string.empty":"Please enter a name","string.validTableName":"Invalid table name","string.uniqueTableName":"Table name must be unique"}),partitionBy:Vn().string().required().custom(((e,t)=>"NONE"!==e&&""===v.timestamp?t.error("string.timestampRequired"):e)).messages({"string.timestampRequired":"Designated timestamp is required when partitioning is set to anything other than NONE"}),ttlValue:Vn().number(),ttlUnit:Vn().string(),walEnabled:Vn().any().allow("true","false").empty(),timestamp:Vn().string().allow(""),schemaColumns:Vn().array().custom(((t,n)=>"add"===e&&0===t.length?n.error("array.required"):t)).unique(((e,t)=>e.name===t.name)).messages({"array.required":"Please add at least one column","array.unique":"Column names must be unique"})});(0,r.useEffect)((()=>{n&&T()}),[n]),(0,r.useEffect)((()=>{c&&x(void 0)}),[c]);const N=y.schemaColumns.length;return r.createElement(qe,{mode:"add"===e?"side":"modal",open:c,trigger:f??r.createElement(en.z,{skin:N>0?"transparent":"secondary",prefixIcon:N>0?r.createElement(uu.I,{size:"18px"}):r.createElement(Ft.i,{size:"18px"}),onClick:()=>g(t)},N>0?`${N} col${N>1?"s":""}`:"Add"),onDismiss:()=>{T(),g(void 0)},onOpenChange:t=>{t&&"add"===e&&S(Rr.setActiveSidebar(t?"create":void 0))}},r.createElement(Mu,{mode:"add"===e?"side":"modal","data-hook":"create-table-panel"},r.createElement(In,{name:"table-schema",defaultValues:y,onSubmit:e=>{p(e),g(void 0)},onChange:e=>C(e),validationSchema:k},r.createElement(Me.Header,{title:""!==t?`Table schema for ${t}`:"Create table",afterTitle:r.createElement(Du,{ctaText:b,action:e,isEditLocked:d,lastFocusedIndex:_,onAdded:x})}),r.createElement(Bu,null,r.createElement(Fu,null,r.createElement(qe.GroupItem,{direction:"column"},r.createElement(zu,{action:e},"add"===e&&r.createElement(In.Item,{name:"name",label:"Table name"},r.createElement(In.Input,{name:"name",autoComplete:"off",autoFocus:!0})),r.createElement(Se,{align:"flex-end"},r.createElement(In.Item,{name:"partitionBy",label:r.createElement(ct,{trigger:r.createElement(Se,{align:"center",justifyContent:"center",gap:"0.5rem"},r.createElement(bu.Z,{size:"14"}),r.createElement("span",null,"Partition by")),placement:"bottom"},r.createElement(kt,null,"Splits data into smaller chunks by intervals of time in order to improve the performance and scalability of the database system."))},r.createElement(In.Select,{name:"partitionBy",options:Zu.map((e=>({label:e,value:e})))}))),u&&r.createElement(Se,{align:"flex-end"},r.createElement(In.Item,{name:"walEnabled",label:r.createElement(ct,{trigger:r.createElement(Se,{align:"center",justifyContent:"center",gap:"0.5rem"},r.createElement(bu.Z,{size:"14"}),r.createElement("span",null,"WAL")),placement:"bottom"},r.createElement(kt,null,"WAL (Write-Ahead Log) allows concurrent data ingestion and modifications via multiple interfaces as well as table schema changes.","NONE"===v.partitionBy&&r.createElement(r.Fragment,null,r.createElement("br",null),r.createElement("br",null),"To enable WAL, set `Partition by` to a value other than NONE.")))},r.createElement(In.Select,{name:"walEnabled",disabled:"NONE"===v.partitionBy,options:[{label:"Enabled",value:"true"},{label:"Disabled",value:"false"}]}))),"import"===e&&r.createElement(Ae,{color:"gray2"},"If you're changing the partitioning strategy, you'll need to set `Write mode` to `Overwrite` in Settings."))),r.createElement(qe.GroupHeader,null,r.createElement(Ae,{color:"foreground"},"Columns")),r.createElement(Iu,{action:e,isEditLocked:d,onColumnFocus:x,lastFocusedIndex:_}))))))};var qu=n(82589);const ju=(0,s.ZP)(qu.o).withConfig({displayName:"upload-result-dialog__SearchIcon"})(["\n color: ",";\n"],(({theme:e})=>e.color.foreground)),Hu=(0,s.ZP)(Hd.i).withConfig({displayName:"upload-result-dialog__StyledTable"})(["\n width: 100%;\n table-layout: fixed;\n border-collapse: separate;\n border-spacing: 0 2rem;\n padding: 0 2rem;\n\n th {\n padding: 0 1.5rem;\n color: ",";\n }\n\n td {\n padding: 1.5rem;\n }\n\n tbody td {\n background: #242531;\n\n &:first-child {\n border-top-left-radius: ",";\n border-bottom-left-radius: ",";\n }\n\n &:last-child {\n border-top-right-radius: ",";\n border-bottom-right-radius: ",";\n }\n }\n"],(({theme:e})=>e.color.foreground),(({theme:e})=>e.borderRadius),(({theme:e})=>e.borderRadius),(({theme:e})=>e.borderRadius),(({theme:e})=>e.borderRadius)),Vu=(0,s.ZP)(Se).attrs({justifyContent:"space-between",gap:"2rem"}).withConfig({displayName:"upload-result-dialog__Stat"})(["\n width: 100%;\n"]),$u=(0,s.ZP)(en.z).withConfig({displayName:"upload-result-dialog__DetailsButton"})(["\n position: relative;\n"]),Gu=s.ZP.span.withConfig({displayName:"upload-result-dialog__NotificationCircle"})(["\n position: absolute;\n right: -0.4rem;\n top: -0.4rem;\n width: 0.8rem;\n height: 0.8rem;\n border-radius: 50%;\n background-color: ",";\n"],(({theme:e})=>e.color.red)),Wu=({file:e})=>{const t=e.table_name??e.fileObject.name,n=[{label:"Header forced",value:e.uploadResult?.header.toString()},{label:"Table name",value:e.uploadResult?.location},{label:"Imported rows",value:e.uploadResult?.rowsImported.toLocaleString()},{label:"Rejected rows",value:e.uploadResult?.rowsRejected.toLocaleString()}],a=e.uploadResult?.columns.reduce(((e,t)=>e+t.errors),0)??0;return r.createElement(qe,{title:r.createElement(Se,null,r.createElement(ju,{size:20}),r.createElement(Ae,{color:"foreground"},"Import details for ",t)),trigger:r.createElement($u,{skin:"success",prefixIcon:r.createElement(qu.o,{size:"14px"})},a>0&&r.createElement(Gu,null),"Details"),withCloseButton:!0},r.createElement(Se,{flexDirection:"column",gap:"0"},n.map((e=>r.createElement(qe.GroupItem,{key:e.label,direction:"column"},r.createElement(Vu,null,r.createElement(Ae,{color:"gray2"},e.label),r.createElement(Ae,{color:"foreground"},e.value))))),r.createElement(qe.GroupHeader,null,r.createElement(Ae,{color:"foreground"},"Table schema")),r.createElement(Hu,{columns:[{header:"Name",render:({data:e})=>r.createElement(Ae,{color:"foreground"},e.name)},{header:"Type",align:"flex-end",render:({data:e})=>r.createElement(Ae,{color:"foreground"},e.type)},{header:"Size",width:"100px",align:"flex-end",render:({data:e})=>r.createElement(Ae,{color:"foreground"},e.size.toLocaleString())},{header:"Errors",width:"100px",align:"flex-end",render:({data:e})=>r.createElement(Ae,{color:e.errors>0?"red":"foreground"},e.errors.toLocaleString())}],rows:e.uploadResult?.columns??[]})))},Qu=(0,s.ZP)(Se).attrs({flexDirection:"column"}).withConfig({displayName:"dropbox__Root"})(["\n flex: 1;\n width: 100%;\n padding: 4rem 0 0;\n gap: 2rem;\n background: ",";\n border: 3px dashed ",";\n box-shadow: inset 0 0 10px 0 #1b1c23;\n transition: all 0.15s ease-in-out;\n"],(({theme:e})=>e.color.backgroundLighter),(({isDragging:e})=>e?"#7f839b":"#333543")),Yu=({files:e,onFilesDropped:t,dialogOpen:n,render:a})=>{const[o,i]=(0,r.useState)(!1),[l,s]=(0,r.useState)([]),c=(0,r.useRef)(null),d=(0,r.useRef)(e.map((e=>e.table_name))),u=e=>{e.preventDefault(),e.stopPropagation(),i("dragenter"===e.type||"dragover"===e.type)},m=e=>{const n=((e,t)=>Array.from(e).filter((e=>t.includes(e.name))))(e,d.current);s(n),t(Array.from(e).filter((e=>!n.includes(e)))),c.current?.setAttribute("value","")},g=e=>{const t=e,n=t.clipboardData?.files;n&&m(n)};return(0,r.useEffect)((()=>()=>{window.removeEventListener("paste",g)}),[]),(0,r.useEffect)((()=>{n?window.removeEventListener("paste",g):window.addEventListener("paste",g)}),[n]),(0,r.useEffect)((()=>{d.current=e.map((e=>e.table_name))}),[e]),r.createElement(Qu,{onDragEnter:u,onDragOver:u,onDragLeave:u,onDrop:e=>{e.preventDefault(),e.stopPropagation(),i(!1),m(e.dataTransfer.files)},isDragging:o,"data-hook":"import-dropbox"},a({duplicates:l,addToQueue:m}))},Ku=(0,s.ZP)(Se).attrs({flexDirection:"column",gap:"2rem"}).withConfig({displayName:"files-to-upload__Root"})(["\n padding: 2rem;\n"]),Xu=(0,s.ZP)(Hd.i).withConfig({displayName:"files-to-upload__StyledTable"})(["\n width: 100%;\n table-layout: fixed;\n border-collapse: separate;\n border-spacing: 0 2rem;\n\n th {\n padding: 0 1.5rem;\n }\n\n td {\n padding: 1.5rem;\n }\n\n tbody td {\n background: #242531;\n\n &:first-child {\n border-top-left-radius: ",";\n border-bottom-left-radius: ",";\n }\n\n &:last-child {\n border-top-right-radius: ",";\n border-bottom-right-radius: ",";\n }\n }\n"],(({theme:e})=>e.borderRadius),(({theme:e})=>e.borderRadius),(({theme:e})=>e.borderRadius),(({theme:e})=>e.borderRadius)),Ju=(0,s.ZP)(Se).attrs({justifyContent:"center"}).withConfig({displayName:"files-to-upload__EmptyState"})(["\n width: 100%;\n background: #242531;\n border-radius: ",";\n padding: 1rem;\n"],(({theme:e})=>e.borderRadius)),em=(0,s.ZP)(Se).withConfig({displayName:"files-to-upload__FileTextBox"})(["\n padding: 0 1.1rem;\n"]),tm=s.ZP.span.withConfig({displayName:"files-to-upload__BrowseTextLink"})(["\n text-decoration: underline;\n cursor: pointer;\n\n &:hover {\n text-decoration: none;\n }\n"]),nm=({files:e,onDialogToggle:t,onFileRemove:n,onFilePropertyChange:a,onFileUpload:o,onFilesDropped:i,onViewData:l,dialogOpen:s})=>{const c=(0,r.useRef)(null),[d,u]=r.useState(),[m,g]=r.useState();return(0,r.useEffect)((()=>{t(void 0!==d||void 0!==m)}),[d,m]),r.createElement(Yu,{files:e,onFilesDropped:i,dialogOpen:s,render:({duplicates:t,addToQueue:i})=>r.createElement(Ku,null,r.createElement(Id.X,{level:3},"Upload queue"),r.createElement("input",{type:"file",id:"file",onChange:e=>{null!==e.target.files&&i(e.target.files)},multiple:!0,ref:c,style:{display:"none"},value:""}),r.createElement(Ae,{color:"foreground"},"You can drag and drop more files or"," ",r.createElement(tm,{onClick:()=>{c.current?.click()}},"browse from disk")),t.length>0&&r.createElement(Ae,{color:"red"},"File",t.length>1?"s":""," already added to queue:"," ",t.map((e=>e.name)).join(", "),". Change target table name and try again."),r.createElement(Xu,{columns:[{header:"File",align:"flex-start",...e.length>0&&{width:"400px"},render:({data:e})=>{const t=r.createElement(em,{align:"center",gap:"1rem"},r.createElement(Ae,{color:"foreground"},L(e.fileObject.name,20)),r.createElement(Ae,{color:"gray2",size:"sm"},$d(e.fileObject.size)));return r.createElement(Se,{align:"center",gap:"1rem"},r.createElement(Kd.M,{size:"46px"}),r.createElement(Se,{gap:"1rem",align:"flex-4tart",flexDirection:"column"},e.fileObject.name.length>20&&r.createElement(ct,{placement:"top",trigger:t},r.createElement(kt,null,e.fileObject.name)),e.fileObject.name.length<=20&&t,r.createElement(Se,{gap:"1rem",align:"center"},r.createElement(Yd,{file:e}),!e.isUploading&&void 0!==e.uploadResult&&r.createElement(r.Fragment,null,r.createElement(Wu,{file:e}),r.createElement(en.z,{skin:"secondary",prefixIcon:r.createElement(Ud.r,{size:"18px"}),onClick:()=>l(e.uploadResult)},"Result"))),e.uploadResult&&e.uploadResult.rowsRejected>0||e.error&&r.createElement(em,{flexDirection:"column",gap:"1rem",align:"flex-start"},e.uploadResult&&e.uploadResult.rowsRejected>0&&r.createElement(Ae,{color:"orange",size:"sm"},e.uploadResult.rowsRejected.toLocaleString()," ","row",e.uploadResult.rowsRejected>1?"s":""," ","rejected"),e.error&&r.createElement(Ae,{color:"red",size:"sm"},e.error))))}},{header:"Table name",align:"flex-end",width:"200px",render:({data:e})=>r.createElement(hu,{open:d===e.id,onOpenChange:e=>u(e?.id),onNameChange:t=>{a(e.id,{table_name:t})},file:e})},{header:r.createElement(ct,{placement:"top",trigger:r.createElement(Se,{align:"center",gap:"0.5rem"},"Schema",r.createElement(Dt.d,{size:"16px"}))},r.createElement(kt,null,"Optional. By default, QuestDB will infer schema from the CSV file structure")),align:"center",width:"150px",render:({data:e})=>{const t=e.table_name??e.fileObject.name;return r.createElement(Uu,{action:"import",open:m===e.id,onOpenChange:t=>g(t?e.id:void 0),onSchemaChange:t=>{a(e.id,{schema:t.schemaColumns,partitionBy:t.partitionBy,timestamp:t.timestamp})},name:t,schema:e.schema,partitionBy:e.partitionBy,ttlValue:e.ttlValue,ttlUnit:e.ttlUnit,timestamp:e.timestamp,isEditLocked:e.exists&&e.table_name===e.fileObject.name,hasWalSetting:!1,ctaText:"Save"})}},{header:r.createElement(ct,{placement:"top",trigger:r.createElement(Se,{align:"center",gap:"0.5rem"},"Write mode",r.createElement(Dt.d,{size:"16px"}))},r.createElement(kt,null,r.createElement("strong",null,"Append"),": data will be appended to the set.",r.createElement("br",null),r.createElement("strong",null,"Overwrite"),": any existing data or structure will be overwritten. Required for partitioning and timestamp related changes.")),align:"center",width:"150px",render:({data:e})=>r.createElement(Sn.P,{name:"overwrite",defaultValue:e.settings.overwrite?"true":"false",onChange:t=>a(e.id,{settings:{...e.settings,overwrite:"true"===t.target.value}}),options:[{label:"Append",value:"false"},{label:"Overwrite",value:"true"}]})},{align:"flex-end",width:"300px",render:({data:e})=>r.createElement(du,{file:e,onUpload:o,onRemove:n,onSettingsChange:t=>{a(e.id,{settings:t})}})}],rows:e}),0===e.length&&r.createElement(Ju,null,r.createElement(Ae,{color:"gray2",align:"center"},"No files in queue")))})},rm=e=>e.startsWith("GEOHASH"),am=e=>{const t=/\(([^)]+)\)/g.exec(e);return t&&t.length>1?t[1]:""},om=e=>rm(e)?"GEOHASH":e.toUpperCase(),im=e=>"GEOHASH"===e.type?{...e,type:`GEOHASH(${e.precision})`}:e,lm=()=>("00000000000000000"+(0x10000000000000000*Math.random()).toString(16)).slice(-16),sm=()=>{const e=lm(),t=lm();return e.slice(0,8)+"-"+e.slice(8,12)+"-4"+e.slice(13)+"-a"+t.slice(1,4)+"-"+t.slice(4)};var cm=n(23167);const dm=(0,s.ZP)(Se).attrs({flexDirection:"column",gap:"2rem"}).withConfig({displayName:"upload__Actions"})(["\n margin: auto;\n"]),um=s.ZP.div.withConfig({displayName:"upload__Info"})(["\n margin-top: 1rem;\n padding: 2rem;\n background: ",";\n border-radius: ",";\n text-align: center;\n"],(({theme:e})=>e.color.backgroundDarker),(({theme:e})=>e.borderRadius)),mm=(0,s.ZP)(or.x).withConfig({displayName:"upload__InfoText"})(["\n line-height: 1.75;\n color: #8b8fa7;\n\n a {\n color: ",";\n }\n"],(({theme:e})=>e.color.foreground)),gm=()=>r.createElement("a",{href:"https://questdb.io/docs/guides/import-csv/#import-csv-via-copy-sql",target:"_blank",rel:"noopener noreferrer"},"here"),pm=({files:e,onFilesDropped:t,dialogOpen:n})=>{const{quest:a}=(0,r.useContext)(aa),[o,i]=(0,r.useState)(!1),l=(0,r.useRef)(null);return(0,r.useEffect)((()=>{(async()=>{try{const e=await a.query("(show parameters) where property_path ilike 'cairo.sql.copy.root'");"dql"===e.type&&e.count>0&&i(null!==e.data[0].value&&"null"!==e.data[0].value)}catch(e){return}})()}),[]),r.createElement(Yu,{files:e,onFilesDropped:t,dialogOpen:n,render:({duplicates:e,addToQueue:t})=>r.createElement(r.Fragment,null,r.createElement(dm,null,r.createElement("img",{alt:"File upload icon",width:"60",height:"80",src:"assets/upload.svg"}),r.createElement(Id.X,{level:3},"Drag CSV files here or paste from clipboard"),r.createElement("input",{type:"file",id:"file",onChange:e=>{null!==e.target.files&&t(e.target.files)},multiple:!0,ref:l,style:{display:"none"},value:""}),r.createElement(en.z,{onClick:()=>{l.current?.click()},prefixIcon:r.createElement(cm.L,{size:"18px"}),skin:"secondary"},"Browse from disk"),e.length>0&&r.createElement(or.x,{color:"red"},"File",e.length>1?"s":""," already added to queue:"," ",e.map((e=>e.name)).join(", "),". Change target table name and try again."),r.createElement(um,null,o?r.createElement(mm,null,"Suitable for small batches of CSV file upload.",r.createElement("br",null),"For database migrations, we recommend the ",r.createElement(gm,null)," ","command."):r.createElement(mm,null,"Note: COPY SQL is not available for CSV Import on this database. Refer ",r.createElement(gm,null)," to enable it."))))})},fm=(0,s.ZP)(Se).attrs({gap:"4rem",flexDirection:"column"}).withConfig({displayName:"ImportCSVFiles__Root"})(["\n flex: 1;\n"]),hm=({onViewData:e,onUpload:t})=>{const{quest:n}=(0,r.useContext)(aa),[a,i]=(0,r.useState)([]),[l,s]=(0,r.useState)(!1),c=(0,o.v9)(ta.query.getTables),d=(0,r.useRef)(null),u=(e=>{const[t,n]=(0,r.useState)(!1);return(0,r.useEffect)((()=>{const t=new IntersectionObserver((([e])=>n(e.isIntersecting)));return e.current&&t.observe(e.current),()=>{t.disconnect()}}),[e]),t})(d),[m,g]=(0,r.useState)("upload"),p=(e,t)=>{i((n=>n.map((n=>n.id===e?{...n,...t}:n))))},f=(e,t)=>{p(e.id,{isUploading:t})},h=async e=>{const t=await(async e=>await Promise.all(e.map((async e=>{const t=await n.checkCSVFile(e.name),r=t.status===N.EXISTS?await(async()=>{const t=await n.showColumns(e.name);return t&&t.type===T.DQL?t.data.map((e=>({name:e.column,type:om(e.type),pattern:tu,precision:rm(e.type)?am(e.type):""}))):[]})():[],a=t.status===N.EXISTS&&c?await(async()=>{const t=c.find((t=>t.table_name===e.name));return t?.partitionBy??"NONE"})():"NONE",o=t.status===N.EXISTS&&c?await(async()=>{const t=c.find((t=>t.table_name===e.name));return t?.ttlValue??0})():0,i=t.status===N.EXISTS&&c?await(async()=>{const t=c.find((t=>t.table_name===e.name));return t?.ttlUnit??"HOURS"})():"HOURS",l=t.status===N.EXISTS&&c?await(async()=>{const t=c.find((t=>t.table_name===e.name));return t?.designatedTimestamp??""})():"";return{id:sm(),fileObject:e,table_name:e.name,status:t.status,exists:t.status===N.EXISTS,schema:r,partitionBy:a,ttlValue:o,ttlUnit:i,timestamp:l,settings:{forceHeader:!1,overwrite:!1,skipLev:!1,delimiter:"",atomicity:"skipCol",maxUncommitedRows:nu},isUploading:!1,uploaded:!1,uploadResult:void 0,uploadProgress:0}}))))(e);i((e=>[...e,...t])),g("list")};return(0,r.useEffect)((()=>{u&&(async()=>{const e=await Promise.all(a.map((async e=>{const t=await n.checkCSVFile(e.table_name);return{...e,status:t.status}})));i(e)})()}),[u]),r.createElement(fm,{ref:d},"upload"===m&&r.createElement(pm,{files:a,onFilesDropped:h,dialogOpen:l}),"list"===m&&r.createElement(nm,{dialogOpen:l,files:a,onViewData:e,onFilesDropped:h,onDialogToggle:s,onFileUpload:async e=>{const r=a.find((t=>t.id===e));if(!r.isUploading){f(r,!0);try{const e=await n.uploadCSVFile({file:r.fileObject,name:r.table_name,settings:r.settings,schema:r.schema.map(im),partitionBy:r.partitionBy,timestamp:r.timestamp,onProgress:e=>{p(r.id,{uploadProgress:e})}});p(r.id,{uploaded:"OK"===e.status,uploadResult:"OK"===e.status?e:void 0,schema:"OK"===e.status?e.columns.map((e=>{const t=r.schema.find((t=>t.name===e.name));return{...(n=e,a=["name"],a.reduce(((e,t)=>(t in n&&(e[t]=n[t]),e)),{})),type:om(e.type),pattern:"TIMESTAMP"===e.type?t?.pattern?t?.pattern:tu:"",precision:rm(e.type)?am(e.type):void 0};var n,a})):r.schema,error:"OK"===e.status?void 0:e.status}),f(r,!1),t(e)}catch(e){f(r,!1),p(r.id,{uploaded:!1,uploadResult:void 0,uploadProgress:0,error:"Upload error"})}}},onFileRemove:e=>{const t=a.find((t=>t.id===e));i(a.filter((e=>e.fileObject.name!==t.fileObject.name)))},onFilePropertyChange:async(e,t)=>{const r=await Promise.all(a.map((async r=>{if(r.id===e){const e=t.table_name?await n.checkCSVFile(t.table_name):await Promise.resolve({status:r.status});return{...r,...t,status:e.status,error:t.table_name?void 0:r.error}}return r})));i(r)}}))},bm=()=>r.createElement(it,null,r.createElement(ot,null,r.createElement(hm,{onUpload:e=>{R.publish(I.MSG_QUERY_SCHEMA)},onViewData:e=>{"OK"===e.status&&(R.publish(I.MSG_QUERY_SCHEMA),R.publish(I.MSG_QUERY_FIND_N_EXEC,{query:`"${e.location}"`,options:{appendAt:"end"}}))}})));var Em=n(9077);const ym=({size:e})=>r.createElement("svg",{width:e,height:e,viewBox:"0 0 26 26",fill:"currentColor",xmlns:"http://www.w3.org/2000/svg"},r.createElement("path",{d:"M25 22.3704H1V24.1481H25V22.3704Z",fill:"currentColor"}),r.createElement("path",{d:"M1 19.2593V21.037H25V19.7037L21.8889 13.4815H16.1111V16.5926H9.88889V13.4815H4.11111L1 19.2593Z",fill:"currentColor"}),r.createElement("path",{d:"M13 1.92593L6.33337 8.59259H11.2223V14.8148H14.3334V8.59259H19.6667L13 1.92593Z",fill:"currentColor"}));function wm(){return wm=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},wm.apply(this,arguments)}const vm=s.ZP.div.withConfig({displayName:"Console__Root"})(["\n display: flex;\n flex-direction: column;\n flex: 1;\n max-height: 100%;\n"]),Cm=s.ZP.div.withConfig({displayName:"Console__Top"})(["\n display: flex;\n height: 100%;\n flex: 1;\n position: relative;\n overflow: hidden;\n"]),_m=s.ZP.div.withConfig({displayName:"Console__Bottom"})(["\n display: flex;\n height: 100%;\n flex: 1;\n min-height: 0px;\n"]),xm=s.ZP.div.withConfig({displayName:"Console__Tab"})(["\n display: flex;\n width: calc(100% - 4.5rem);\n height: 100%;\n overflow: auto;\n"]),Sm=[{icon:r.createElement(Ud.r,{size:y}),mode:"grid",tooltipText:"Grid"},{icon:r.createElement(qd.u,{size:y}),mode:"chart",tooltipText:"Chart"}],Tm=()=>{const e=(0,o.I0)(),{sm:t}=Qe(),{editorSplitterBasis:n,resultsSplitterBasis:a,updateSettings:i}=hs(),[l,s]=(0,r.useState)(0!==n?n:300),c=(0,o.v9)(ta.query.getResult),d=(0,o.v9)(ta.console.getActiveBottomPanel),{consoleConfig:u}=pr(),[m,g]=(0,r.useState)("grid"),p=r.useRef(null),f=r.useRef(null),h=r.useRef(null),b=r.useRef(null);return(0,r.useEffect)((()=>{p.current&&c?e(Rr.setActiveBottomPanel("result")):f.current&&e(Rr.setActiveBottomPanel("zeroState"))}),[c]),(0,r.useEffect)((()=>{var e;e=d,p.current&&(p.current.style.display="result"===e?"flex":"none"),f.current&&(f.current.style.display="zeroState"===e?"flex":"none"),h.current&&(h.current.style.display="import"===e?"flex":"none")}),[d]),r.createElement(vm,null,r.createElement(Em.oL,{vertical:!0,onDragEnd:e=>{i(P.RESULTS_SPLITTER_BASIS,e[0])}},r.createElement(Em.oL.Pane,{minSize:100,preferredSize:a},r.createElement(Cm,null,r.createElement(zd,{align:"top"},!t&&r.createElement(ct,{placement:"bottom",trigger:r.createElement(Zd,{"data-hook":"tables-panel-button",direction:"left",onClick:()=>{e(Rr.setActiveTopPanel(0===n?"tables":void 0)),i(P.EDITOR_SPLITTER_BASIS,0===n?l:0)},selected:0!==n},r.createElement(jd.L,{size:y}))},r.createElement(kt,null,0===a?"Show":"Hide"," tables"))),r.createElement(Em.oL,{ref:b,onDragEnd:e=>{0!==e[0]&&s(e[0]),i(P.EDITOR_SPLITTER_BASIS,e[0])},snap:!0},r.createElement(Em.oL.Pane,{preferredSize:n,visible:0!==n&&!t,minSize:250},r.createElement(Rd,null)),r.createElement(Em.oL.Pane,null,r.createElement(vc,null))))),r.createElement(Em.oL.Pane,{minSize:100},r.createElement(_m,null,r.createElement(zd,{align:"bottom"},c&&Sm.map((({icon:t,mode:n,tooltipText:a})=>r.createElement(ct,{key:n,placement:"right",trigger:r.createElement(Zd,{"data-hook":`${n}-panel-button`,direction:"left",onClick:()=>{e(Rr.setActiveBottomPanel("result")),g(n)},selected:"result"===d&&m===n},t)},r.createElement(kt,null,a)))),r.createElement(ct,{placement:"right",trigger:r.createElement(Ct,wm({readOnly:u.readOnly},!u.readOnly&&{onClick:()=>{e(Rr.setActiveBottomPanel("import"))}},{selected:"import"===d,"data-hook":"import-panel-button"}),r.createElement(ym,{size:y}))},r.createElement(kt,null,u.readOnly?"To use this feature, turn off read-only mode in the configuration file":"Import files from CSV"))),r.createElement(xm,{ref:p},c&&r.createElement(Vc,{viewMode:m})),r.createElement(xm,{ref:f},r.createElement(Fd,null)),r.createElement(xm,{ref:h},r.createElement(bm,null))))))},km=s.ZP.div.withConfig({displayName:"SideMenu__Backdrop"})(["\n position: fixed;\n top: 4rem;\n right: 0;\n bottom: 0;\n left: 0;\n background: rgba(0, 0, 0, 0.3);\n z-index: 24;\n\n &:hover {\n cursor: pointer;\n }\n"]),Nm=s.ZP.div.withConfig({displayName:"SideMenu__Wrapper"})(["\n position: fixed;\n top: 4rem;\n right: 0;\n bottom: 0;\n width: ","px;\n background: ",";\n border-left: 1px solid ",";\n z-index: 25;\n\n &.side-menu-slide-enter {\n width: 0;\n }\n\n &.side-menu-slide-enter-active {\n width: ","px;\n transition: width ","ms;\n }\n\n &.side-menu-slide-exit {\n width: ","px;\n }\n\n &.side-menu-slide-exit-active {\n width: 0;\n transition: width ","ms;\n }\n"],280,D("backgroundDarker"),D("black"),280,Y.REG,280,Y.REG),Om=()=>{const e=(0,o.v9)(ta.console.getSideMenuOpened),t=(0,o.I0)(),n=(0,r.useCallback)((()=>{t(Rr.toggleSideMenu())}),[t]);return r.createElement(r.Fragment,null,r.createElement(st.Z,{classNames:"fade-reg",in:e,timeout:Y.REG,unmountOnExit:!0},r.createElement(km,{onClick:n})),r.createElement(st.Z,{classNames:"side-menu-slide",in:e,timeout:Y.REG,unmountOnExit:!0},r.createElement(Nm,null,r.createElement(Rd,null))))};var Rm=n(70775),Im=n(79038),Pm=n(60782),Am=n(23737),Lm=n(44752),Dm=n(78613),Mm=n(4888);const Bm=(0,s.iv)(["\n background: ",";\n"],D("selection")),Fm=s.ZP.div.withConfig({displayName:"Row__Wrapper"})(["\n display: flex;\n height: 2.4rem;\n padding: 0 0.6rem;\n line-height: 2.4rem;\n align-items: center;\n transition: background ","ms;\n cursor: pointer;\n user-select: none;\n\n ",";\n\n > span:not(:last-child) {\n margin-right: 0.6rem;\n }\n"],Y.FAST,(({active:e})=>e&&Bm)),zm=(0,s.ZP)(Ae).withConfig({displayName:"Row__Value"})(["\n flex: 1 1 auto;\n text-overflow: ellipsis;\n overflow: hidden;\n white-space: nowrap;\n opacity: 0.7;\n"]),Zm=(0,s.ZP)(Mm.E).withConfig({displayName:"Row__FileIcon"})(["\n height: 2.2rem;\n flex: 0 0 12px;\n margin: 0 0.6rem;\n color: ",";\n"],D("orange")),Um=(0,s.ZP)(Ae).withConfig({displayName:"Row__Name"})(["\n flex: 0 0 auto;\n"]),qm=({active:e,onMouseEnter:t,onMouseLeave:n,onClick:a,query:o})=>r.createElement(Fm,{active:e,onClick:a,onMouseEnter:t,onMouseLeave:n},r.createElement(Zm,{size:"12px"}),o.name&&r.createElement(Um,{color:"foreground",size:"sm"},o.name),r.createElement(zm,{color:"foreground",size:"sm"},o.value));function jm(){return jm=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},jm.apply(this,arguments)}const Hm=s.ZP.div.withConfig({displayName:"QueryPicker__Wrapper"})(["\n display: flex;\n max-height: 650px;\n width: 600px;\n max-width: 100vw;\n padding: 0.6rem 0;\n flex-direction: column;\n background: ",";\n box-shadow: "," 0px 5px 8px;\n border: 1px solid ",";\n border-radius: 4px;\n overflow: auto;\n"],D("backgroundDarker"),D("black"),D("black")),Vm=(0,s.ZP)(Ae).withConfig({displayName:"QueryPicker__Helper"})(["\n padding: 1rem;\n text-align: center;\n opacity: 0.5;\n"]),$m=(0,s.ZP)(Ae).withConfig({displayName:"QueryPicker__Esc"})(["\n padding: 0 2px;\n background: ",";\n border-radius: 2px;\n"],D("foreground")),Gm=({type:e})=>"query"===e,Wm=(0,s.ZP)(Ae).withConfig({displayName:"QueryPicker__Title"})(["\n padding: 0.6rem 1.2rem 0.4rem;\n margin-top: 0.6rem;\n border-top: 1px solid ",";\n background: ",";\n"],(({theme:e})=>e.color.selection),(({theme:e})=>e.color.black40)),Qm=(0,s.ZP)(Ae).withConfig({displayName:"QueryPicker__Description"})(["\n padding: 0 1.2rem 1rem;\n color: ",";\n opacity: 0.7;\n background: ",";\n"],(({theme:e})=>e.color.foreground),(({theme:e})=>e.color.black40)),Ym=({hidePicker:e,queries:t,ref:n})=>{const a=je("ArrowDown"),o=je("ArrowUp"),i=je("Enter"),[l,s]=(0,r.useState)(-1),[c,d]=(0,r.useState)([]),{appendQuery:u}=Ta();(0,r.useEffect)((()=>{d((e=>{const t=[...e],n=[];let r=0;for(;t.length;){const e=t.shift();if(void 0===e.queries)n.push({type:"query",id:r,data:e});else{const a=e;n.push({type:"descriptor",id:r,data:a}),t.unshift(...a.queries)}r++}return n})(t))}),[t]);const m=(0,r.useCallback)((t=>{e(),u(t.value,{appendAt:"end"})}),[e]);return(0,r.useEffect)((()=>{if(c.length){if(a){const e=c.find(Gm)?.id??0,t=c.slice(l+1).find(Gm)?.id??e;s(t)}if(o){const e=[...c].reverse(),t=e.find(Gm)?.id??c.length-1,n=[...c].slice(0,l).reverse().find(Gm)?.id??t;s(n)}}}),[o,a,c]),(0,r.useEffect)((()=>{if(i){const e=c.find((({id:e,type:t})=>e===l&&"query"===t));e&&m(e.data)}}),[l,i,e,t,m]),r.createElement(Hm,{ref:n},r.createElement(Vm,{_style:"italic",color:"foreground",size:"xs"},"Navigate the list with ",r.createElement(Lm.j,{size:"16px"}),r.createElement(Dm.o,{size:"16px"})," keys, exit with ",r.createElement($m,{_style:"normal",size:"ms",weight:700},"Esc")),c.map((t=>{if("query"===t.type){const n=t.data;return r.createElement(qm,{active:t.id===l,hidePicker:e,key:t.id,onClick:()=>m(n),onMouseEnter:()=>s(t.id),onMouseLeave:()=>s(-1),query:n})}const{title:n,description:a}=t.data;return r.createElement(r.Fragment,{key:t.id},r.createElement(Wm,{color:"foreground",size:"md"},n),r.createElement(Qm,{color:"foreground"},a))})))},Km=(e,t)=>r.createElement(Ym,jm({},e,{ref:t})),Xm=(0,r.forwardRef)(Km);var Jm=n(36636);const eg=(0,s.ZP)(Ne).withConfig({displayName:"Menu__Wrapper"})(["\n width: 100%;\n background: transparent;\n z-index: 15;\n padding-right: 1rem;\n\n .algolia-autocomplete {\n display: "," !important;\n flex: 0 1 168px;\n }\n"],(({_display:e})=>e)),tg=s.ZP.div.withConfig({displayName:"Menu__Separator"})(["\n flex: 1;\n"]),ng=(0,s.ZP)(en.z).withConfig({displayName:"Menu__QueryPickerButton"})(["\n position: relative;\n margin: 0 1rem;\n flex: 0 0 auto;\n\n ","\n"],(({$firstTimeVisitor:e})=>e&&'&:after {\n border-radius: 50%;\n content: "";\n background: #dc4949;\n width: 8px;\n height: 8px;\n position: absolute;\n top: -3px;\n right: -3px;\n }')),rg=(0,s.ZP)(Pm.v).withConfig({displayName:"Menu__MenuIcon"})(["\n color: ",";\n"],D("foreground")),ag=(0,s.ZP)(Ce.x).withConfig({displayName:"Menu__CloseIcon"})(["\n color: ",";\n"],D("foreground")),og=(0,s.ZP)(he).withConfig({displayName:"Menu__SideMenuMenuButton"})(["\n padding: 0;\n\n .fade-enter {\n opacity: 0;\n }\n\n .fade-enter-active {\n opacity: 1;\n transition: opacity ","ms;\n }\n\n .fade-exit {\n opacity: 0;\n }\n\n .fade-exit-active {\n opacity: 1;\n transition: opacity ","ms;\n }\n"],Y.REG,Y.REG),ig=(0,s.ZP)(zt.x).attrs({alignItems:"center"}).withConfig({displayName:"Menu__Key"})(["\n padding: 0 4px;\n background: #61647a;\n border-radius: 2px;\n font-size: 1.2rem;\n height: 1.8rem;\n\n &:not(:last-child) {\n margin-right: 0.25rem;\n }\n"]),lg=(0,s.ZP)(zt.x).attrs({alignItems:"center",gap:"0"}).withConfig({displayName:"Menu__RunShortcut"})(["\n margin-left: 1.5rem;\n"]),sg=s.ZP.div.withConfig({displayName:"Menu__MenuItems"})(["\n display: grid;\n grid-auto-flow: column;\n align-items: center;\n"]),cg=F.isMacintosh||F.isIOS?"⌘":"Ctrl",dg=()=>{const e=(0,o.I0)(),[t,n]=(0,r.useState)(),a=je("Escape"),{consoleConfig:i}=pr(),l=(0,o.v9)(ta.query.getRunning),s=(0,o.v9)(ta.console.getSideMenuOpened),{sm:c}=Qe(),{exampleQueriesVisited:d,updateSettings:u}=hs(),m=(0,r.useCallback)((()=>{e(Dr())}),[e]),g=(0,r.useCallback)((e=>{!d&&e&&u(P.EXAMPLE_QUERIES_VISITED,!0),n(e)}),[]),p=(0,r.useCallback)((()=>{n(!1)}),[]),f=(0,r.useCallback)((()=>{e(Rr.toggleSideMenu())}),[e]);return(0,r.useEffect)((()=>{n(!1)}),[a]),(0,r.useEffect)((()=>{!c&&s&&e(Rr.toggleSideMenu())}),[e,s,c]),r.createElement(eg,{_display:c?"none":"inline"},r.createElement(tg,null),i.savedQueries&&i.savedQueries.length>0&&r.createElement(dt,{active:t,onToggle:g,trigger:r.createElement(ng,{skin:"secondary",$firstTimeVisitor:!d},r.createElement(Rm.m,{size:"18px"}),r.createElement("span",null,"Example queries"))},r.createElement(Xm,{hidePicker:p,queries:i.savedQueries??[]})),r.createElement(tg,null),l.value&&r.createElement(en.z,{skin:"error",onClick:m,prefixIcon:r.createElement(vi.d,{size:"18px"})},"Cancel"),!l.value&&r.createElement(en.z,{skin:"success",title:"Ctrl+Enter",onClick:m,prefixIcon:r.createElement(Im.s,{size:"18px"})},"Run",r.createElement(lg,null,r.createElement(ig,null,cg),r.createElement(ig,null,r.createElement(Am.i,{size:"16px"})))),r.createElement(sg,null,r.createElement(Jm.F,{appId:"QL9L2YL7AQ",apiKey:"2f67aeacbe73ad08a49efb9214ea27f3",indexName:"questdb",placeholder:"Search docs",translations:{button:{buttonText:"Search docs"}},hitComponent:({hit:e,children:t})=>r.createElement("a",{href:e.url,target:"_blank",rel:"noreferrer"},t),navigator:{navigate:({itemUrl:e})=>window.open(e,"_blank")}})),c&&r.createElement(og,{onClick:f},r.createElement(st.Z,{classNames:"fade",in:s,timeout:Y.REG},s?r.createElement(ag,{size:"26px"}):r.createElement(rg,{size:"26px"}))))};var ug=n(26882);const mg=(0,s.ZP)(zt.x).attrs({align:"center"}).withConfig({displayName:"toolbar__Root"})(["\n gap: 1.5rem;\n flex-shrink: 0;\n padding-left: 1.5rem;\n white-space: nowrap;\n"]),gg=(0,s.ZP)(zt.x).attrs({align:"center"}).withConfig({displayName:"toolbar__Tag"})(["\n height: 2.8rem;\n border-radius: 0.8rem;\n padding: 0 1rem;\n font-family: ",";\n font-size: 1.6rem;\n font-weight: 600;\n"],(({theme:e})=>e.fontMonospace)),pg=(0,s.ZP)(gg).withConfig({displayName:"toolbar__Badge"})(["\n color: #191a21;\n background: #bbbbbb;\n\n ","\n\n ","\n\n ","\n"],(({theme:e,instance_rgb:t})=>"r"===t&&`\n color: ${e.color.foreground};\n background: #c7072d;\n `),(({theme:e,instance_rgb:t})=>"g"===t&&`\n color: ${e.color.foreground};\n background: #00aa3b;\n `),(({theme:e,instance_rgb:t})=>"b"===t&&`\n color: ${e.color.foreground};\n background: #007aff;\n `)),fg=(0,s.ZP)(zt.x).attrs({gap:"0.5rem"}).withConfig({displayName:"toolbar__User"})(["\n background: ",";\n border-radius: 0.4rem;\n height: 3rem;\n padding: 0 1rem;\n font-weight: 600;\n"],(({theme:e})=>e.color.backgroundLighter)),hg=s.ZP.span.withConfig({displayName:"toolbar__EnterpriseBadge"})(["\n padding: 0 4px;\n background: ",";\n border-radius: 2px;\n color: ",";\n\n &:not(:last-child) {\n margin-right: 0.25rem;\n }\n"],(({theme:e})=>e.color.pinkDarker),(({theme:e})=>e.color.foreground)),bg=()=>{const{quest:e}=(0,r.useContext)(aa),{settings:t}=pr(),{logout:n}=Cr(),a=(0,o.v9)(ta.query.getResult),[i,l]=(0,r.useState)(null),s=async()=>{try{const t=await e.query("SELECT instance_name, instance_rgb, current_user",{limit:"0,1"});t.type===T.DQL&&1===t.count&&l({instance_name:t.data[0].instance_name,instance_rgb:t.data[0].instance_rgb,current_user:t.data[0].current_user})}catch(e){return}};return(0,r.useEffect)((()=>{s()}),[]),(0,r.useEffect)((()=>{a&&a.type===T.DDL&&s()}),[a]),r.createElement(mg,null,r.createElement(zt.x,{gap:"0.5rem"},r.createElement(Ae,{color:"foreground"},"Web Console"),"EE"===t["release.type"]&&r.createElement(Ke,{icon:r.createElement(hg,null,"EE"),tooltip:"QuestDB Enterprise Edition",placement:"bottom"})),r.createElement(zt.x,{gap:"0.5rem"},i&&i.instance_name&&r.createElement(pg,{instance_rgb:i.instance_rgb},i.instance_name),t["acl.enabled"]&&i&&i.current_user&&r.createElement(fg,null,r.createElement(qn.n,{size:"18px"}),r.createElement(Ae,{color:"foreground"},i.current_user)),Bn(t)&&r.createElement(en.z,{onClick:()=>n(),prefixIcon:r.createElement(ug.R,{size:"18px"}),skin:"secondary"},"Log out")))};var Eg=n(6086);const yg=(0,s.ZP)(Ct).withConfig({displayName:"back-button__Root"})(["\n margin-left: 0.5rem;\n"]),wg=({onClick:e,label:t})=>r.createElement(ct,{placement:"right",modifiers:[{name:"offset",options:{offset:[5,15]}}],trigger:r.createElement(yg,{onClick:e},r.createElement(Eg.X,{size:y}))},r.createElement(kt,null,t||"Back to the Cloud")),vg=(0,s.ZP)(zt.x).attrs({align:"center",justifyContent:"space-between"}).withConfig({displayName:"TopBar__Root"})(["\n width: 100%;\n height: 4.5rem;\n background: ",";\n"],(({theme:e})=>e.color.backgroundDarker)),Cg=()=>{const e=(0,Ca.useLiveQuery)((async()=>({returnTo:(await fa.editor_settings.where("key").equals("returnTo").first())?.value??"",returnToLabel:(await fa.editor_settings.where("key").equals("returnToLabel").first())?.value??""})),[]);return r.createElement(vg,null,e?.returnTo&&r.createElement(wg,{label:e?.returnToLabel,onClick:()=>{window.location.href=e.returnTo}}),r.createElement(bg,null),r.createElement(dg,null))};var _g=n(44560);const xg=s.ZP.span.withConfig({displayName:"UnreadItemsIcon__Root"})(["\n position: relative;\n"]),Sg=s.ZP.span.withConfig({displayName:"UnreadItemsIcon__Tick"})(["\n position: absolute;\n right: 0;\n top: 0;\n width: 1.3rem;\n height: 1.3rem;\n border-radius: 50%;\n background-color: ",";\n"],(({theme:e})=>e.color.red)),Tg=s.ZP.span.withConfig({displayName:"UnreadItemsIcon__Count"})(["\n position: absolute;\n left: 100%;\n top: -50%;\n font-size: ",";\n border-radius: 6px;\n background-color: #c64242;\n color: ",";\n padding: 0.2rem 0.4rem;\n"],(({theme:e})=>e.fontSize.ms),(({theme:e})=>e.color.white)),kg=({icon:e,label:t,tick:n,count:a})=>r.createElement(xg,null,"number"==typeof a&&a>0&&r.createElement(Tg,null,a),e,n&&r.createElement(Sg,null),t&&r.createElement("span",null,t)),Ng=s.ZP.div.withConfig({displayName:"thumbnail__Root"})(["\n display: flex;\n align-items: center;\n justify-content: center;\n max-width: 100%;\n margin: 2rem 0;\n border-radius: ",";\n box-shadow: 0 7px 30px -10px ",";\n overflow: hidden;\n background: ",";\n\n svg {\n position: absolute;\n }\n"],(({theme:e})=>e.borderRadius),(({theme:e})=>e.color.black),(({theme:e})=>e.color.backgroundLighter)),Og=s.ZP.img.withConfig({displayName:"thumbnail__ThumbImg"})(["\n height: auto;\n\n ","\n"],(({loaded:e,fadeIn:t})=>`\n opacity: ${e?1:0};\n ${t&&"transition: opacity 0.2s ease-in-out;"}\n `)),Rg=({src:e,alt:t,width:n,height:a,containerWidth:o,containerHeight:i,fadeIn:l,...s})=>{const[c,d]=(0,r.useState)(!1);let u=o,m=u/n*a;if(m>i){const e=i/m;m=i,u*=e}return(0,r.useEffect)((()=>{const t=new Image;t.src=e,t.onload=()=>{d(!0)}}),[e]),r.createElement(Ng,s,!c&&r.createElement(Zl.a,null),r.createElement(Og,{src:e,alt:t,width:u,height:m,loaded:c,fadeIn:l}))};var Ig=n(84991);const Pg="10deg",Ag=(0,s.F4)(["\n 0%, 50%, 100% {\n transform: rotate(0);\n }\n\n 10%, 20%, 30% {\n transform: rotate(-",");\n }\n\n 15%, 25%, 40% {\n transform: rotate(",");\n }\n"],Pg,Pg),Lg=(0,s.iv)(["\n animation: "," 2s infinite ease-in-out;\n transform-origin: 50% 0;\n"],Ag),Dg=(0,s.ZP)(Ig.d).withConfig({displayName:"bell__Bell"})(["\n color: ",";\n\n ","\n"],(({theme:e,$unread:t})=>e.color[t?"foreground":"inherit"]),(({$unread:e})=>e&&Lg));function Mg(){return Mg=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Mg.apply(this,arguments)}const Bg=s.ZP.div.withConfig({displayName:"News__Loading"})(["\n display: grid;\n grid-auto-flow: column;\n gap: 1rem;\n justify-self: center;\n margin-top: 2rem;\n"]),Fg=s.ZP.div.withConfig({displayName:"News__Items"})(["\n display: grid;\n width: 100%;\n overflow: auto;\n"]),zg=s.ZP.div.withConfig({displayName:"News__Item"})(["\n display: grid;\n gap: 1rem;\n padding: 2rem;\n\n &:not(:last-child) {\n border-bottom: 1px solid ",";\n }\n"],(({theme:e})=>e.color.backgroundLighter)),Zg=s.ZP.h2.withConfig({displayName:"News__Title"})(["\n margin: 0;\n font-size: 2rem;\n"]),Ug=(0,s.ZP)(Ae).attrs({color:"foreground"}).withConfig({displayName:"News__NewsText"})(["\n a {\n color: ",";\n }\n\n h2 {\n font-size: 1.8rem;\n }\n\n h3 {\n font-size: 1.6rem;\n }\n\n p,\n li {\n font-size: ",";\n line-height: 1.75;\n }\n\n code {\n background-color: ",";\n color: ",";\n padding: 0.2rem 0.4rem;\n border-radius: 0.2rem;\n }\n\n li:not(:last-child) {\n margin-bottom: 0.5rem;\n }\n"],(({theme:e})=>e.color.cyan),(({theme:e})=>e.fontSize.lg),(({theme:e})=>e.color.selection),(({theme:e})=>e.color.pink)),qg=()=>{const e=(0,o.I0)(),{quest:t}=(0,r.useContext)(aa),n=(0,o.v9)(ta.telemetry.getConfig),[a,i]=(0,r.useState)(!1),[l,s]=(0,r.useState)(!1),[c,d]=(0,r.useState)(void 0),[u,m]=(0,r.useState)(!1),[g,p]=(0,r.useState)([]),[f,h]=(0,r.useState)(!1),b=(0,o.v9)(ta.console.getActiveSidebar);let E;const w=async()=>{i(!0),s(!1);try{const e=await t.getNews({category:"enterprise",telemetryConfig:n});d(e)}catch(e){s(!0)}finally{i(!1)}};return(0,r.useEffect)((()=>(w(),window.addEventListener("focus",w),()=>window.removeEventListener("focus",w))),[]),(0,r.useEffect)((()=>{c&&(async()=>{if(c){const e=await fa.read_notifications.toArray(),t=c.map((e=>e.id)).filter((t=>!e.find((e=>e.newsId===t))));p(t),h(t?.length>0)}})()}),[c]),(0,r.useEffect)((()=>{c&&(u?(async()=>{if(c){const e=c.map((e=>e.id)),t=(await fa.read_notifications.toArray()).map((e=>e.newsId)),n=e.filter((e=>!t.includes(e)));await fa.read_notifications.bulkPut(n.map((e=>({newsId:e}))),{allKeys:!0}),h(!1)}})():p([]))}),[u,c]),(0,r.useEffect)((()=>{m("news"===b)}),[b]),r.createElement(qe,{mode:"side",title:"QuestDB News",open:u,onOpenChange:async t=>{e(Rr.setActiveSidebar(t?"news":void 0))},trigger:r.createElement(Ke,{icon:r.createElement(Ct,{"data-hook":"news-panel-button",onClick:()=>m(!u),selected:u},r.createElement(kg,{icon:r.createElement(Dg,{size:y,$unread:f}),tick:f})),placement:"left",tooltip:"QuestDB News"})},r.createElement(qe.ContentWrapper,{mode:"side"},r.createElement(Fg,null,a&&!c&&r.createElement(Bg,null,r.createElement(Ae,{color:"foreground"},"Loading news..."),r.createElement(Zl.a,null)),l&&r.createElement(Bg,null,r.createElement(Ae,{color:"red"},"Error loading news. Please try again shortly.")),(!a||c)&&!l&&c&&c.map(((t,n)=>r.createElement(zg,{key:`${n}-${t.title}`,unread:void 0!==g.find((e=>t.id===e))},r.createElement(Zg,null,t.title),r.createElement(Ae,{color:"gray2"},t.date),t.thumbnail&&t.thumbnail.length>0&&t.thumbnail[0].thumbnails.large&&r.createElement(Rg,Mg({containerWidth:460,containerHeight:460,src:t.thumbnail[0].thumbnails.large.url,alt:`${t.title} thumbnail`,width:t.thumbnail[0].thumbnails.large.width,height:t.thumbnail[0].thumbnails.large.height,fadeIn:!0},t&&t.thumbnail?{onMouseOver:()=>{t.thumbnail&&(E=setTimeout((()=>{t&&t.thumbnail&&e(Rr.setImageToZoom({src:t.thumbnail[0].thumbnails.large.url,width:t.thumbnail[0].thumbnails.large.width,height:t.thumbnail[0].thumbnails.large.height,alt:t.title}))}),500))},onMouseOut:()=>{clearTimeout(E),setTimeout((()=>{e(Rr.setImageToZoom(void 0))}),250)}}:{})),r.createElement(Ug,null,r.createElement(_g.D,{components:{a:({node:e,children:t,...n})=>r.createElement("a",Mg({},n.href?.startsWith("http")?{target:"_blank",rel:"noopener noreferrer"}:{},n),t)}},t.body))))))))};var jg=n(78882);const Hg=(0,s.ZP)(Ft.i).withConfig({displayName:"CreateTableDialog__DisabledTableIcon"})(["\n opacity: 0.3;\n"]),Vg=()=>{const[e,t]=(0,r.useState)(void 0),n=(0,o.I0)(),a=(0,o.v9)(ta.query.getTables),i=(0,o.v9)(ta.console.getActiveSidebar),{consoleConfig:l}=pr(),{appendQuery:s}=Ta();return(0,r.useEffect)((()=>{t("create"===i?"add":void 0)}),[i]),(0,r.useEffect)((()=>{void 0!==e&&n(Rr.setActiveSidebar("create"))}),[e]),l.readOnly?r.createElement(Ke,{icon:r.createElement(Hg,{size:y,"data-hook":"create-table-panel-button"}),tooltip:"To use this feature, turn off read-only mode in the configuration file",placement:"left"}):r.createElement(Uu,{action:"add",isEditLocked:!1,hasWalSetting:!0,walEnabled:!1,name:"",partitionBy:"NONE",ttlValue:0,ttlUnit:"HOURS",schema:[],tables:a,timestamp:"",onOpenChange:e=>t(e),open:void 0!==e,onSchemaChange:e=>{const{name:t,partitionBy:r,timestamp:a,ttlValue:o,ttlUnit:i,schemaColumns:l,walEnabled:c}=e,d=(({name:e,partitionBy:t,timestamp:n,walEnabled:r,dedup:a,ttlValue:o,ttlUnit:i,schemaColumns:l})=>{const s=n&&l.find((e=>e.column===n&&"TIMESTAMP"===e.type));let c=`CREATE TABLE '${e}' (`;for(let e=0;e<l.length;e++){const{column:t,type:n,indexed:r,indexBlockCapacity:a,symbolCached:o,symbolCapacity:i}=l[e];c+=`${t} ${n} `,"SYMBOL"===n&&(c+=i?`capacity ${i} `:"",o&&(c+="CACHE ")),r&&(c+="index ",a&&(c+=`capacity ${a} `)),c=(0,jg.Z)(c),e!==l.length-1&&(c+=", ")}if(c+=")",s&&(c+=` timestamp (${n})`),"NONE"!==t&&(c+=` PARTITION BY ${t}`,0!==(o??0)&&(c+=` TTL ${o} ${i}`),c+=" "+(r?"WAL":"BYPASS WAL")),r&&a&&s){const e=l.filter((e=>e.upsertKey));e.length>0&&(c+=` DEDUP UPSERT KEYS(${(e.find((e=>e.column===n))?e:[...e,{column:n}]).map((e=>e.column)).join(",")})`)}return`${B(c)};`})({name:t,partitionBy:r,timestamp:a,walEnabled:"true"===c,ttlValue:o,ttlUnit:i,schemaColumns:l.map((e=>({column:e.name,type:e.type}))),dedup:!1});s(d,{appendAt:"end"}),n(Dr())},trigger:r.createElement(Ke,{icon:r.createElement(Ct,{"data-hook":"create-table-panel-button",selected:void 0!==e,onClick:()=>{n(Rr.setActiveSidebar(e?void 0:"create"))}},r.createElement(Ft.i,{size:y})),placement:"left",tooltip:"Create table"}),ctaText:"Create"})};var $g=n(85998),Gg=n(50364),Wg=n(52368),Qg=n(22709),Yg=n(52067),Kg=n(47910),Xg=n(27545),Jg=n(43167);const ep=s.ZP.div.withConfig({displayName:"Shortcuts__Wrapper"})(["\n display: flex;\n max-height: 650px;\n width: 300px;\n max-width: 100vw;\n flex-direction: column;\n background: ",";\n box-shadow: "," 0px 5px 8px;\n border: 1px solid ",";\n border-radius: 4px;\n overflow: auto;\n"],D("backgroundDarker"),D("black"),D("black")),tp=s.ZP.div.withConfig({displayName:"Shortcuts__List"})(["\n display: flex;\n flex-direction: column;\n width: 100%;\n"]),np=(0,s.ZP)(Ae).withConfig({displayName:"Shortcuts__ListTitle"})(["\n padding: 0.6rem 1.2rem;\n margin-bottom: 0.6rem;\n border-top: 1px solid ",";\n background: ",";\n width: 100%;\n"],(({theme:e})=>e.color.selection),(({theme:e})=>e.color.black40)),rp=s.ZP.div.withConfig({displayName:"Shortcuts__Item"})(["\n display: flex;\n align-items: center;\n padding: 0.6rem 1.2rem;\n\n &:not(:last-child) {\n border-bottom: 1px solid ",";\n }\n"],D("background")),ap=s.ZP.div.withConfig({displayName:"Shortcuts__ItemKeys"})(["\n margin-left: auto;\n"]),op=s.ZP.span.withConfig({displayName:"Shortcuts__KeyGroup"})(["\n color: ",';\n\n &:not(:last-child):after {\n content: "or";\n padding: 0 0.5rem;\n }\n'],D("gray2")),ip=s.ZP.span.withConfig({displayName:"Shortcuts__Key"})(["\n padding: 0 4px;\n background: ",";\n border-radius: 2px;\n color: ",";\n\n &:not(:last-child) {\n margin-right: 0.25rem;\n }\n"],D("gray2"),D("black")),lp=F.isMacintosh||F.isIOS?"⌘":"Ctrl",sp=F.isMacintosh||F.isIOS?"⌥":"Alt",cp=[{keys:[[sp,"T"]],title:"Add new tab"},{keys:[[sp,lp,"↑"]],title:"Add cursor above"},{keys:[[sp,lp,"↓"]],title:"Add cursor below"},{keys:[["⇧",sp,"↑"]],title:"Copy line up"},{keys:[["⇧",sp,"↓"]],title:"Copy line down"},{keys:[[sp,"↑"]],title:"Move line up"},{keys:[[sp,"↓"]],title:"Move line down"},{keys:[["⇧",sp,"F"]],title:"Format document"},{keys:[["F1"]],title:"Command palette"}],dp=[{keys:[["F9"],[lp,"Enter"]],title:"Run query"},{keys:[["F2"]],title:"Focus results grid"},{keys:[[lp,"K"]],title:"Clear all notifications"}],up=({list:e,title:t})=>r.createElement(tp,null,r.createElement(np,null,r.createElement(Ae,{color:"gray2"},t)),e.map(((e,t)=>r.createElement(rp,{key:`shortcut-${t}`},r.createElement(Ae,{color:"white"},e.title),r.createElement(ap,null,e.keys.map(((e,t)=>r.createElement(op,{key:`keyGroup-${t}`},e.map(((e,t)=>r.createElement(ip,{key:`shortcutItem-key-${e}-${t}`},r.createElement(Ae,{color:"black",size:"xs",weight:600},e)))))))))))),mp=()=>r.createElement(ep,null,r.createElement(up,{list:dp,title:"Global shortcuts"}),r.createElement(up,{list:cp,title:"SQL editor shortcuts"}));function gp(){return gp=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},gp.apply(this,arguments)}const pp=(0,s.ZP)(Ct).withConfig({displayName:"help__HelpButton"})(["\n padding: 0;\n"]),fp=(0,s.ZP)(Ui.h.Content).withConfig({displayName:"help__DropdownMenuContent"})(["\n background: ",";\n"],(({theme:e})=>e.color.backgroundDarker)),hp=(0,s.ZP)(Ui.h.Item).withConfig({displayName:"help__DropdownMenuItem"})(["\n color: ",";\n"],(({theme:e})=>e.color.foreground)),bp=(0,s.ZP)(zt.x).attrs({justifyContent:"center"}).withConfig({displayName:"help__TooltipWrapper"})(["\n width: 100%;\n height: 100%;\n"]),Ep=({href:e,text:t,...n})=>r.createElement(at,gp({color:"foreground",hoverColor:"foreground",href:e,rel:"noreferrer",target:"_blank"},n),t),yp=()=>{const{quest:e}=(0,r.useContext)(aa),t=(0,o.v9)(ta.telemetry.getConfig),[n,a]=(0,r.useState)(!1),i=(0,r.useCallback)((e=>{a(e)}),[]),[l,s]=(0,r.useState)(!1);return r.createElement(r.Fragment,null,r.createElement(Ui.h.Root,{modal:!1,onOpenChange:s},r.createElement(Ui.h.Trigger,{asChild:!0},r.createElement(pp,gp({},l&&{selected:!0},{"data-hook":"help-panel-button"}),r.createElement(Ke,{icon:r.createElement(bp,null,r.createElement($g.H,{size:y})),placement:"left",tooltip:"Help"}))),r.createElement(Ui.h.Portal,null,r.createElement(fp,null,r.createElement(hp,{onSelect:e=>e.preventDefault()},r.createElement(Gg.f,{size:"18px"}),r.createElement(Jg.o,{withEmailInput:!0,title:"Contact us",subtitle:"Let us know your thoughts",trigger:({setOpen:e})=>r.createElement(Ae,{color:"foreground",onClick:()=>e(!0)},"Contact us"),onSubmit:async({email:n,message:r})=>{try{await e.sendFeedback({email:n,message:r,telemetryConfig:t}),pt.success("Thank you for your feedback! Our team will review it shortly.")}catch(e){throw pt.error("Something went wrong. Please try again later."),e}}})),r.createElement(hp,null,r.createElement(Qg.j,{size:"18px"}),r.createElement(Ep,{"data-hook":"help-link-slack",href:"https://slack.questdb.io/",text:"Slack community"})),r.createElement(hp,null,r.createElement(Yg.o,{size:"18px"}),r.createElement(Ep,{"data-hook":"help-link-community",href:"https://community.questdb.io/",text:"Public forum"})),r.createElement(hp,null,r.createElement(Kg.r,{size:"18px"}),r.createElement(Ep,{"data-hook":"help-link-stackoverflow",href:"https://stackoverflow.com/tags/questdb",text:"Stack Overflow"})),r.createElement(hp,null,r.createElement($g.H,{size:"18px"}),r.createElement(Ep,{"data-hook":"help-link-web-console-docs",href:"https://questdb.io/docs/develop/web-console/",text:"Web Console Docs"})),r.createElement(hp,{onClick:()=>i(!0)},r.createElement(Wg.m,{size:"18px"}),r.createElement(Ae,{color:"foreground"},"Shortcuts")),r.createElement(hp,null,r.createElement(Xg.E,{size:"18px"}),r.createElement(Ep,{href:"https://github.com/questdb/ui/commit/f41fa6d",text:"Commit id: f41fa6d"}))))),r.createElement(dt,{active:n,onToggle:i,trigger:r.createElement(r.Fragment,null)},r.createElement(mp,null)))};var wp=n(94937);const vp=(0,s.ZP)(zt.x).attrs({align:"center",justifyContent:"space-between"}).withConfig({displayName:"warning__WarningRoot"})(["\n width: 100%;\n height: 4rem;\n background: #f8a24d;\n color: #000;\n"]),Cp=(0,s.ZP)(zt.x).attrs({gap:"0.5rem"}).withConfig({displayName:"warning__Content"})(["\n padding: 0 1.5rem;\n"]),_p=(0,s.ZP)(zt.x).attrs({align:"center",justifyContent:"center"}).withConfig({displayName:"warning__CloseButton"})(["\n border: 0;\n cursor: pointer;\n width: 4.5rem;\n height: 4.5rem;\n"]),xp=s.ZP.span.withConfig({displayName:"warning__WarningText"})(["\n font-weight: 600;\n"]),Sp=s.ZP.a.withConfig({displayName:"warning__WorkaroundLink"})(["\n display: flex;\n align-items: center;\n gap: 0.25rem;\n margin-left: 0.5rem;\n color: #000;\n\n &:hover {\n text-decoration: none;\n }\n"]),Tp=(0,s.ZP)(Ce.x).withConfig({displayName:"warning__CloseIcon"})(["\n color: #000;\n"]),kp=()=>{const{warnings:e}=pr(),[t,n]=(0,r.useState)([]);return(0,r.useEffect)((()=>{e&&e.length>0&&n(e.map((e=>e.tag)))}),[e]),0===t.length?null:r.createElement(zt.x,{flexDirection:"column",gap:"0.1rem",style:{width:"100%"},"data-hook":"warnings"},e.filter((e=>t.includes(e.tag))).map(((e,a)=>r.createElement(vp,{key:a,"data-hook":"warning"},r.createElement(Cp,null,r.createElement(wp.u,{size:"20px"}),"Warning:"," ",r.createElement(xp,{"data-hook":"warning-text"},e.warning),Oa[e.tag]&&r.createElement(Sp,{href:Oa[e.tag].link,rel:"noreferrer noopener",target:"_blank","data-hook":"warning-workaround-link"},r.createElement(sn.d,{size:"16px"}),Oa[e.tag].title)),r.createElement(_p,{"data-hook":"warning-close-button",onClick:()=>n(t.filter((t=>t!==e.tag)))},r.createElement(Tp,{size:"20px"}))))))};function Np(){return Np=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},Np.apply(this,arguments)}const Op=(0,s.ZP)(zt.x).attrs({align:"center",justifyContent:"center"}).withConfig({displayName:"image-zoom__Root"})(["\n width: 100%;\n height: 100%;\n position: absolute;\n z-index: 1000;\n opacity: ",";\n pointer-events: ",";\n"],(({visible:e})=>e?1:0),(({visible:e})=>e?"auto":"none")),Rp=s.ZP.div.withConfig({displayName:"image-zoom__Overlay"})(["\n position: absolute;\n left: 0;\n top: 0;\n width: 100%;\n height: 100%;\n background: rgba(33, 34, 44, 0.9);\n opacity: ",";\n pointer-events: ",";\n transition: opacity 0.2s ease-in-out;\n"],(({visible:e})=>e?1:0),(({visible:e})=>e?"auto":"none")),Ip=s.ZP.div.withConfig({displayName:"image-zoom__Wrapper"})(["\n z-index: 1001;\n\n img {\n border: 1px solid ",";\n border-radius: ",";\n }\n"],(({theme:e})=>e.color.offWhite),(({theme:e})=>e.borderRadius)),Pp=()=>{const e=(0,o.v9)(ta.console.getImageToZoom),t=(0,o.I0)(),n=(0,r.useRef)(null),[a,i]=(0,r.useState)(0),[l,s]=(0,r.useState)(0),c=(0,o.v9)(ta.console.getActiveSidebar),d=e=>{"Escape"===e.key&&t(Rr.setImageToZoom(void 0))};return(0,r.useEffect)((()=>{n.current&&(i(n.current.offsetWidth),s(n.current.offsetHeight))}),[e]),(0,r.useEffect)((()=>{"news"===c?document.addEventListener("keydown",d):document.removeEventListener("keydown",d)}),[c]),"news"!==c?null:r.createElement(Op,{ref:n,visible:void 0!==e},r.createElement(Rp,{visible:void 0!==e}),e&&r.createElement(Ip,null,r.createElement(Rg,Np({},e,{containerWidth:a?.9*a:460,containerHeight:l?.75*l:460}))))},Ap=s.ZP.div.withConfig({displayName:"Layout__Page"})(["\n display: flex;\n width: 100%;\n height: 100%;\n flex-direction: column;\n flex: 1;\n overflow: hidden;\n font-size: 1.4rem;\n background: #21222c;\n\n ::selection {\n background: #44475a;\n }\n"]),Lp=s.ZP.div.withConfig({displayName:"Layout__Root"})(["\n display: flex;\n width: 100%;\n flex: 1;\n overflow-y: auto;\n"]),Dp=s.ZP.div.withConfig({displayName:"Layout__Main"})(["\n position: relative;\n flex: 1;\n display: flex;\n width: ",";\n"],(({sideOpened:e})=>e?"calc(100% - 50rem - 4.5rem)":"calc(100% - 4.5rem)")),Mp=s.ZP.div.withConfig({displayName:"Layout__Drawer"})(["\n background: ",";\n"],(({theme:e})=>e.color.backgroundDarker)),Bp=()=>{const e=(0,o.v9)(ta.console.getActiveSidebar),t=(0,r.useCallback)((()=>{R.publish(I.TAB_FOCUS)}),[]),n=(0,r.useCallback)((()=>{R.publish(I.TAB_BLUR)}),[]);return(0,r.useEffect)((()=>(window.addEventListener("focus",t),window.addEventListener("blur",n),()=>{window.removeEventListener("focus",t),window.removeEventListener("blur",n)})),[]),r.createElement(Sa,null,r.createElement(Cg,null),r.createElement(kp,null),r.createElement(Lp,null,r.createElement(Dp,{sideOpened:void 0!==e},r.createElement(Pp,null),r.createElement(Ap,null,r.createElement(Tm,null))),r.createElement(Mp,{id:"side-panel-right"}),r.createElement(zd,{align:"top"},r.createElement(yp,null),r.createElement(qg,null),r.createElement(Vg,null))),r.createElement(Om,null),r.createElement(Zo,null))},Fp=(0,l.k)(),zp=(0,i.MT)(ea,(0,i.qC)((0,i.md)(Fp)));Fp.run(Yr);const Zp=K("fade-reg",Y.REG),Up=K("fade-slow",Y.SLOW);a.render(r.createElement(s.f6,{theme:gt},r.createElement(We,null,r.createElement(o.zt,{store:zp},r.createElement(gr,null,r.createElement(Na,null,r.createElement(vr,null,r.createElement(oa,null,r.createElement(d,null),a.createPortal(r.createElement(ft,null),document.body),r.createElement(fs,null,r.createElement(Up,null),r.createElement(Zp,null),r.createElement(Bp,null))))))))),document.getElementById("root"))},94349:e=>{e.exports={arrayEquals:function(e,t){if(!e||!t)return!1;if(e.length!==t.length)return!1;for(var n=0,r=e.length;n<r;n++)if(e[n]instanceof Array&&t[n]instanceof Array){if(!e[n].equals(t[n]))return!1}else if(e[n]!==t[n])return!1;return!0}}},88344:()=>{},32019:()=>{}},a={};function o(e){var t=a[e];if(void 0!==t)return t.exports;var n=a[e]={id:e,loaded:!1,exports:{}};return r[e].call(n.exports,n,n.exports,o),n.loaded=!0,n.exports}o.m=r,o.amdO={},e=[],o.O=(t,n,r,a)=>{if(!n){var i=1/0;for(d=0;d<e.length;d++){for(var[n,r,a]=e[d],l=!0,s=0;s<n.length;s++)(!1&a||i>=a)&&Object.keys(o.O).every((e=>o.O[e](n[s])))?n.splice(s--,1):(l=!1,a<i&&(i=a));if(l){e.splice(d--,1);var c=r();void 0!==c&&(t=c)}}return t}a=a||0;for(var d=e.length;d>0&&e[d-1][2]>a;d--)e[d]=e[d-1];e[d]=[n,r,a]},o.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return o.d(t,{a:t}),t},n=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,o.t=function(e,r){if(1&r&&(e=this(e)),8&r)return e;if("object"==typeof e&&e){if(4&r&&e.__esModule)return e;if(16&r&&"function"==typeof e.then)return e}var a=Object.create(null);o.r(a);var i={};t=t||[null,n({}),n([]),n(n)];for(var l=2&r&&e;"object"==typeof l&&!~t.indexOf(l);l=n(l))Object.getOwnPropertyNames(l).forEach((t=>i[t]=()=>e[t]));return i.default=()=>e,o.d(a,i),a},o.d=(e,t)=>{for(var n in t)o.o(t,n)&&!o.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},o.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),o.hmd=e=>((e=Object.create(e)).children||(e.children=[]),Object.defineProperty(e,"exports",{enumerable:!0,set:()=>{throw new Error("ES Modules may not assign module.exports or exports.*, Use ESM export syntax, instead: "+e.id)}}),e),o.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),o.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},o.nmd=e=>(e.paths=[],e.children||(e.children=[]),e),(()=>{var e={87:0};o.O.j=t=>0===e[t];var t=(t,n)=>{var r,a,[i,l,s]=n,c=0;if(i.some((t=>0!==e[t]))){for(r in l)o.o(l,r)&&(o.m[r]=l[r]);if(s)var d=s(o)}for(t&&t(n);c<i.length;c++)a=i[c],o.o(e,a)&&e[a]&&e[a][0](),e[a]=0;return o.O(d)},n=self.webpackChunk_questdb_web_console=self.webpackChunk_questdb_web_console||[];n.forEach(t.bind(null,0)),n.push=t.bind(null,n.push.bind(n))})(),o.nc=void 0;var i=o.O(void 0,[736],(()=>o(76369)));i=o.O(i)})();
|