sqlpad
Version:
Web app. Write SQL and visualize the results. Supports Postgres, MySQL, SQL Server, Crate, Vertica and SAP HANA.
1 lines • 95.4 kB
JavaScript
(window["webpackJsonpsqlpad-front-end"]=window["webpackJsonpsqlpad-front-end"]||[]).push([[0],{100:function(e,t,n){e.exports={preview:"QueryPreview_preview__29omD",previewQueryName:"QueryPreview_previewQueryName__2uino"}},156:function(e,t,n){e.exports={ListItem:"ListItem_ListItem__DkhCD"}},159:function(e,t,n){e.exports={formExplain:"FormExplain_formExplain__PR_U0"}},160:function(e,t,n){e.exports={attention:"ConnectionDropdown_attention__1hhgt"}},175:function(e,t,n){e.exports=n(308)},176:function(e,t,n){},179:function(e,t,n){},180:function(e,t,n){},181:function(e,t,n){},193:function(e,t,n){},20:function(e,t,n){e.exports={toolbar:"QueryResultHeader_toolbar__2UhtN",toolbarItem:"QueryResultHeader_toolbarItem__2Zlye",iconLinkWrapper:"QueryResultHeader_iconLinkWrapper__38hqA",iconLink:"QueryResultHeader_iconLink__6Y_cL"}},308:function(e,t,n){"use strict";n.r(t);n(176),n(177),n(178),n(179),n(180),n(181);var r=n(0),a=n.n(r),c=n(54),i=n.n(c),o=n(11),l=n(31),u=n(5),s=n(4),d=n.n(s),m=n(7),f=(n(187),n(69)),p=n(2),h=n(89),y=n.n(h),b=n(130),v=Object(b.a)();var g={error:function(e){v.emit("message",{type:"error",message:e})},success:function(e){v.emit("message",{type:"success",message:e})}};function E(e,t,n){var r=window.BASE_URL||"",a={method:e.toUpperCase(),credentials:"same-origin",headers:{Accept:"application/json","Content-Type":"application/json","Cache-Control":"no-cache",Expires:"-1",Pragma:"no-cache"}};n&&(a.body=JSON.stringify(n));var c=r+t;return r&&"/"!==t.substring(0,1)&&(c=r+"/"+t),fetch(c,a).then(function(e){if(e.redirected)return window.location=e.url;if(200===e.status)return e.json();throw console.error(e),new Error("Server responded not ok")}).catch(function(e){return g.error(e.toString()),{error:"Server responded not ok"}})}var w=function(){var e=Object(m.a)(d.a.mark(function e(){var t,n,r,a,c;return d.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,E("GET","api/app");case 2:if(t=e.sent,n=t.config,r=t.currentUser,a=t.adminRegistrationOpen,c=t.version,n){e.next=9;break}return e.abrupt("return");case 9:return window.BASE_URL=n.baseUrl,e.abrupt("return",{config:n,currentUser:r,adminRegistrationOpen:a,version:c});case 11:case"end":return e.stop()}},e)}));return function(){return e.apply(this,arguments)}}();var O=Object(u.connect)(["currentUser"],{refreshAppContext:w})(function(e){var t=e.children,n=e.currentUser,c=e.refreshAppContext;return Object(r.useEffect)(function(){c()},[c]),n?t:a.a.createElement(l.a,{to:{pathname:"/signin"}})}),C=n(13),x=n(70),j=n.n(x),S=n(168);n(192);function k(e){var t=e.children,n=e.label;return a.a.createElement(S.a,{label:n},t)}var q=a.a.forwardRef(function(e,t){var n=e.children,r=e.icon,c=e.type,i=e.htmlType,o=e.tooltip,l=e.disabled,u=e.className,s=Object(C.a)(e,["children","icon","type","htmlType","tooltip","disabled","className"]),d=[j.a.btn];"primary"===c?d.push(j.a.primary):"danger"===c&&d.push(j.a.danger),u&&d.push(u);var m=a.a.createElement("button",Object.assign({ref:t,className:d.join(" "),type:i,disabled:l},s),r&&a.a.cloneElement(r,{size:18},null),n&&r&&a.a.createElement("span",{style:{width:4}}),n);return!o||l?m:a.a.createElement(k,{label:o},m)}),_=n(92),T=n.n(_);function I(e){var t=e.children,n=e.error,r=e.className,c=Object(C.a)(e,["children","error","className"]),i=[T.a.input];return n&&i.push(T.a.danger),r&&i.push(r),a.a.createElement("input",Object.assign({className:i.join(" ")},c),t)}function N(e){var t=e.size,n=void 0===t?1:t;return a.a.createElement("div",{style:{height:8*n}})}var R=function(){var e=Object(r.useState)(""),t=Object(p.a)(e,2),n=t[0],c=t[1],i=Object(r.useState)(!1),o=Object(p.a)(i,2),u=o[0],s=o[1];Object(r.useEffect)(function(){document.title="SQLPad - Forgot Password"},[]);var f=function(){var e=Object(m.a)(d.a.mark(function e(t){var r;return d.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return t.preventDefault(),e.next=3,E("POST","/api/forgot-password",{email:n});case 3:if(!(r=e.sent).error){e.next=6;break}return e.abrupt("return",g.error(r.error));case 6:s(!0);case 7:case"end":return e.stop()}},e)}));return function(t){return e.apply(this,arguments)}}();return u?a.a.createElement(l.a,{to:"/password-reset"}):a.a.createElement("div",{style:{width:"300px",textAlign:"center",margin:"100px auto"}},a.a.createElement("form",{onSubmit:f},a.a.createElement("h1",null,"SQLPad"),a.a.createElement(I,{name:"email",type:"email",placeholder:"Email address",onChange:function(e){return c(e.target.value)},required:!0}),a.a.createElement(N,{size:2}),a.a.createElement(q,{style:{width:"100%"},htmlType:"submit",type:"primary"},"Reset Password")))};function L(e){var t=e.children;return a.a.createElement("div",{style:{fontSize:"3rem",width:"100%",height:"100vh",display:"flex",justifyContent:"center",alignItems:"center",flexDirection:"column"}},t)}var D=Object(u.connect)(["currentUser"])(function(e){return e.currentUser,Object(r.useEffect)(function(){document.title="SQLPad - Not Found"},[]),a.a.createElement(L,null,"Not Found")});var P=function(e){var t=e.passwordResetId,n=Object(r.useState)(""),c=Object(p.a)(n,2),i=c[0],o=c[1],u=Object(r.useState)(""),s=Object(p.a)(u,2),f=s[0],h=s[1],y=Object(r.useState)(""),b=Object(p.a)(y,2),v=b[0],w=b[1],O=Object(r.useState)(!1),C=Object(p.a)(O,2),x=C[0],j=C[1],S=function(){var e=Object(m.a)(d.a.mark(function e(n){var r;return d.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return n.preventDefault(),e.next=3,E("POST","/api/password-reset/"+t,{email:i,password:f,passwordConfirmation:v});case 3:if(!(r=e.sent).error){e.next=6;break}return e.abrupt("return",g.error(r.error));case 6:j(!0);case 7:case"end":return e.stop()}},e)}));return function(t){return e.apply(this,arguments)}}();return Object(r.useEffect)(function(){document.title="SQLPad - Password Reset"},[]),x?a.a.createElement(l.a,{to:"/"}):a.a.createElement("div",{style:{width:"300px",textAlign:"center",margin:"100px auto"}},a.a.createElement("form",{onSubmit:S},a.a.createElement("h1",null,"SQLPad"),a.a.createElement(I,{name:"email",type:"email",placeholder:"Email address",onChange:function(e){return o(e.target.value)},required:!0}),a.a.createElement(N,null),a.a.createElement(I,{name:"password",type:"password",placeholder:"Password",onChange:function(e){return h(e.target.value)},required:!0}),a.a.createElement(N,null),a.a.createElement(I,{name:"passwordConfirmation",type:"password",placeholder:"Confirm Password",onChange:function(e){return w(e.target.value)},required:!0}),a.a.createElement(N,{size:2}),a.a.createElement(q,{style:{width:"100%"},htmlType:"submit",type:"primary"},"Reset Password")))},A=function(e){return document.title="SQLPad - Password Reset",a.a.createElement(L,null,a.a.createElement("p",null,"Password reset requested."),a.a.createElement("p",null,"An email has been sent with further instruction."))},Q=n(19),B=n(39),U=n.n(B),z=n(55),F=n.n(z),W=function(e){var t=e.children,n=e.icon,r=e.tooltip,c=Object(C.a)(e,["children","icon","tooltip"]),i=a.a.createElement(Q.a,null,a.a.createElement(Q.b,Object.assign({className:F.a.btn},c),n&&a.a.cloneElement(n,{size:18},null)),a.a.createElement(Q.e,null,t));return r?a.a.createElement(k,{label:r},a.a.createElement("span",null,i)):i},M=a.a.forwardRef(function(e,t){return a.a.createElement(o.b,Object.assign({},e,{innerRef:t}))});var G=Object(u.connect)(["config"])(function(e){var t=e.config,n=e.cacheKey,r=e.onSaveImageClick;if(!t||!n)return null;var c=t.baseUrl,i=t.allowCsvDownload,o=[];return r&&o.push(a.a.createElement(Q.c,{key:"png",onSelect:r},"png")),i&&(o.push(a.a.createElement(Q.d,{key:"csv",as:M,to:"".concat(c,"/download-results/").concat(n,".csv"),target:"_blank",rel:"noopener noreferrer"},"csv")),o.push(a.a.createElement(Q.d,{key:"xlsx",as:M,to:"".concat(c,"/download-results/").concat(n,".xlsx"),target:"_blank",rel:"noopener noreferrer"},"xlsx"))),0===o.length?null:a.a.createElement(W,{icon:a.a.createElement(U.a,{"aria-label":"Download"})},o)}),H=n(133),V=n.n(H),K=n(93),Y=n.n(K),X=function(e){var t=e.children,n=e.className,r=e.type,c=Object(C.a)(e,["children","className","type"]),i=[];return n&&i.push(n),"secondary"===r?i.push(Y.a.secondary):"danger"===r&&i.push(Y.a.danger),a.a.createElement("span",Object.assign({className:i.join(" ")},c),t)},J=n(94),Z=n.n(J);var $=function(){return a.a.createElement(k,{label:"Return fewer rows or increase query result max rows in configuration."},a.a.createElement("span",null,a.a.createElement(X,{className:Z.a.text,type:"danger"},a.a.createElement(V.a,{size:18,className:Z.a.AlertIcon}),"Incomplete")))},ee=n(38);n(193);function te(){return a.a.createElement("div",{className:"sk-cube-grid"},a.a.createElement("div",{className:"sk-cube sk-cube1"}),a.a.createElement("div",{className:"sk-cube sk-cube2"}),a.a.createElement("div",{className:"sk-cube sk-cube3"}),a.a.createElement("div",{className:"sk-cube sk-cube4"}),a.a.createElement("div",{className:"sk-cube sk-cube5"}),a.a.createElement("div",{className:"sk-cube sk-cube6"}),a.a.createElement("div",{className:"sk-cube sk-cube7"}),a.a.createElement("div",{className:"sk-cube sk-cube8"}),a.a.createElement("div",{className:"sk-cube sk-cube9"}))}var ne=[{chartType:"line",tauChartsType:"line",chartLabel:"Line",fields:[{fieldId:"x",required:!0,label:"x",inputType:"field-dropdown"},{fieldId:"y",required:!0,label:"y",inputType:"field-dropdown"},{fieldId:"split",required:!1,label:"color / line for each",inputType:"field-dropdown",forceDimension:!0},{fieldId:"size",required:!1,label:"size",inputType:"field-dropdown"},{fieldId:"xFacet",requied:!1,label:"x Facet",inputType:"field-dropdown",forceDimension:!0},{fieldId:"yFacet",required:!1,label:"y Facet",inputType:"field-dropdown",forceDimension:!0},{fieldId:"filter",required:!1,label:"Quick Filter",inputType:"checkbox"},{fieldId:"trendline",required:!1,label:"Show Trendline",inputType:"checkbox"},{fieldId:"yMin",required:!1,label:"y Axis Min",inputType:"textbox"},{fieldId:"yMax",required:!1,label:"y Axis Max",inputType:"textbox"}]},{chartType:"bar",tauChartsType:"horizontalBar",chartLabel:"Bar - Horizontal",fields:[{fieldId:"barlabel",required:!0,label:"Bar Label",inputType:"field-dropdown"},{fieldId:"barvalue",required:!0,label:"Bar Value",inputType:"field-dropdown"},{fieldId:"labelFacet",required:!1,label:"Bar Label Facet",inputType:"field-dropdown",forceDimension:!0},{fieldId:"valueFacet",required:!1,label:"Bar Value Facet",inputType:"field-dropdown",forceDimension:!0}]},{chartType:"verticalbar",tauChartsType:"bar",chartLabel:"Bar - Vertical",fields:[{fieldId:"barlabel",required:!0,label:"Bar Label",inputType:"field-dropdown"},{fieldId:"barvalue",required:!0,label:"Bar Value",inputType:"field-dropdown"},{fieldId:"labelFacet",required:!1,label:"Bar Label Facet",inputType:"field-dropdown",forceDimension:!0},{fieldId:"valueFacet",required:!1,label:"Bar Value Facet",inputType:"field-dropdown",forceDimension:!0}]},{chartType:"bubble",tauChartsType:"scatterplot",chartLabel:"Scatterplot",fields:[{fieldId:"x",label:"x Axis",inputType:"field-dropdown",required:!0},{fieldId:"y",label:"y Axis",inputType:"field-dropdown",required:!0},{fieldId:"size",label:"Size",inputType:"field-dropdown",required:!1},{fieldId:"color",label:"Color",inputType:"field-dropdown",required:!1},{fieldId:"xFacet",requied:!1,label:"x Facet",inputType:"field-dropdown",forceDimension:!0},{fieldId:"yFacet",required:!1,label:"y Facet",inputType:"field-dropdown",forceDimension:!0},{fieldId:"filter",required:!1,label:"Quick Filter",inputType:"checkbox"},{fieldId:"trendline",required:!1,label:"Show Trendline",inputType:"checkbox"}]},{chartType:"stacked-bar-vertical",tauChartsType:"stacked-bar",chartLabel:"Stacked Bar - Vertical",fields:[{fieldId:"barlabel",required:!0,label:"Bar Label",inputType:"field-dropdown"},{fieldId:"barvalue",required:!0,label:"Bar Value",inputType:"field-dropdown"},{fieldId:"color",label:"Color",inputType:"field-dropdown",required:!1},{fieldId:"labelFacet",required:!1,label:"Bar Label Facet",inputType:"field-dropdown",forceDimension:!0},{fieldId:"valueFacet",required:!1,label:"Bar Value Facet",inputType:"field-dropdown",forceDimension:!0}]},{chartType:"stacked-bar-horizontal",tauChartsType:"horizontal-stacked-bar",chartLabel:"Stacked Bar - Horizontal",fields:[{fieldId:"barlabel",required:!0,label:"Bar Label",inputType:"field-dropdown"},{fieldId:"barvalue",required:!0,label:"Bar Value",inputType:"field-dropdown"},{fieldId:"color",label:"Color",inputType:"field-dropdown",required:!1},{fieldId:"labelFacet",required:!1,label:"Bar Label Facet",inputType:"field-dropdown",forceDimension:!0},{fieldId:"valueFacet",required:!1,label:"Bar Value Facet",inputType:"field-dropdown",forceDimension:!0}]}],re=n(134),ae=n.n(re),ce=n(135),ie=n.n(ce),oe=n(95),le=n.n(oe),ue=n(136),se=n.n(ue),de=n(96),me=n.n(de),fe=function(e,t){var n=ne.find(function(t){return t.chartType===e});if(!n)throw new Error("Unknown chartType ".concat(e));var r=[];return n.fields.forEach(function(e){e.required&&!t[e.fieldId]&&r.push(e)}),r};var pe={};function he(e,t){var n=pe[e];n&&n.fire&&n.fire("export-to",{type:"png",fileName:t})}var ye=function(e){var t=e.isRunning,n=e.queryError,c=e.queryResult,i=e.chartConfiguration,o=e.queryId;return Object(r.useEffect)(function(){var e;if(!t&&!n&&i&&c){var r=function(e,t){var n=t?t.meta:{},r=t?t.rows:[],a=e&&e.chartType,c=e&&e.fields,i=ne.find(function(e){return e.chartType===a});if(!r.length||!i)return null;var o={type:i.tauChartsType,plugins:[se()(),ie()(),ae()({cssPaths:[window.BASE_URL+"/javascripts/vendor/tauCharts/tauCharts.min.css"]})],settings:{asyncRendering:!0,renderingTimeout:1e4,syncRenderingInterval:50,handleRenderingErrors:!0,utcTime:!0}};r=r.map(function(e){var r={};return Object.keys(e).forEach(function(n){var a=t.meta[n].datatype;r[n]="date"===a||"datetime"===a?new Date(e[n]):"number"===a?Number(e[n]):e[n]}),i.fields.filter(function(e){return!0===e.forceDimension}).forEach(function(e){var t=c[e.fieldId],a=n[t]?n[t].datatype:null;t&&"number"===a&&r[t]&&(r[t]=r[t].toString())}),r});var l=Object.keys(e.fields).reduce(function(t,r){var a=i.fields.find(function(e){return e.fieldId===r}),c=e.fields[r];return a&&"field-dropdown"!==a.inputType?t[r]=c:n[c]&&(t[r]=c),t},{});if(fe(a,l).length)return null;var u=l.x,s=l.xFacet,d=l.y,m=l.yFacet,f=l.filter,p=l.trendline,h=l.split,y=l.size,b=l.yMin,v=l.yMax,g=l.barvalue,E=l.valueFacet,w=l.barlabel,O=l.labelFacet,C=l.color;switch(a){case"line":o.x=[u],s&&o.x.unshift(s),o.y=[d],m&&o.y.unshift(m),f&&o.plugins.push(le()()),p&&o.plugins.push(me()()),h&&(o.color=h),y&&(o.size=y),(b||v)&&(o.guide={y:{autoScale:!1}},b&&(o.guide.y.min=Number(b)),v&&(o.guide.y.max=Number(v)));break;case"bar":o.x=[g],E&&o.x.unshift(E),o.y=[w],O&&o.y.unshift(O);break;case"verticalbar":o.y=[g],E&&o.y.unshift(E),o.x=[w],O&&o.x.unshift(O);break;case"stacked-bar-horizontal":o.x=[g],E&&o.x.unshift(E),o.y=[w],O&&o.y.unshift(O),C&&(o.color=C);break;case"stacked-bar-vertical":o.y=[g],E&&o.y.unshift(E),o.x=[w],O&&o.x.unshift(O),C&&(o.color=C);break;case"bubble":o.x=[u],s&&o.x.unshift(s),o.y=[d],m&&o.y.unshift(m),f&&o.plugins.push(le()()),p&&o.plugins.push(me()()),y&&(o.size=y),C&&(o.color=C);break;default:console.error("unknown chart type")}return o.data=r,o}(i,c);r&&(e=new ee.Chart(r)).renderTo("#chart")}return function(e,t){pe[e]=t}(o,e),function(){e&&e.destroy(),function(e){delete pe[e]}(o)}},[t,n,c,i,o]),t?a.a.createElement("div",{id:"chart",className:"flex-center h-100 w-100"},a.a.createElement(te,null)):n?a.a.createElement("div",{id:"chart",style:{fontSize:"1.5rem",padding:24,textAlign:"center"},className:"flex-center h-100 w-100 bg-error"},n):a.a.createElement("div",{id:"chart",className:"flex-center h-100 w-100"})};var be=function(e){var t=e.queryId,n=Object(r.useState)(!1),c=Object(p.a)(n,2),i=c[0],o=c[1],l=Object(r.useState)(null),u=Object(p.a)(l,2),s=u[0],f=u[1],h=Object(r.useState)(null),y=Object(p.a)(h,2),b=y[0],v=y[1],g=Object(r.useState)(null),w=Object(p.a)(g,2),O=w[0],C=w[1],x=function(){var e=Object(m.a)(d.a.mark(function e(t){var n,r;return d.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return o(!0),e.next=3,E("GET","/api/queries/"+t);case 3:if(!(n=e.sent).error){e.next=8;break}return o(!1),C(n.error),e.abrupt("return");case 8:return v(n.query),e.next=11,E("GET","/api/query-result/"+t);case 11:r=e.sent,o(!1),C(r.error),f(r.queryResult);case 15:case"end":return e.stop()}},e)}));return function(t){return e.apply(this,arguments)}}();Object(r.useEffect)(function(){document.title="SQLPad",x(t)},[t]);var j=!!s&&s.incomplete,S=s?s.cacheKey:null;return a.a.createElement("div",{style:{display:"flex",height:"100vh",width:"100%",flexDirection:"column",padding:"16px"}},a.a.createElement("div",{style:{height:"50px"}},a.a.createElement("span",{style:{fontSize:"1.5rem"}},b?b.name:""),a.a.createElement("div",{style:{float:"right"}},j&&a.a.createElement($,null),a.a.createElement(G,{cacheKey:S,onSaveImageClick:function(){he(t,b&&b.name)}}))),a.a.createElement("div",{style:{height:"100%",display:"flex"}},a.a.createElement(ye,{queryId:t,queryName:b&&b.name,chartConfiguration:b&&b.chartConfiguration,queryResult:s,queryError:O,isRunning:i})))},ve=n(88),ge=n.n(ve),Ee=n(74),we=n(137),Oe=n.n(we),Ce=n(138),xe=n.n(Ce),je=n(139),Se=n.n(je),ke=n(27),qe=n(40),_e=function(e){var t=e.style,n=(Object(C.a)(e,["style"]),Object.assign({height:16},t));return a.a.createElement("div",{style:n},a.a.createElement("div",{style:{height:8,borderBottom:"1px solid #e8e8e8"}}))},Te=a.a.forwardRef(function(e,t){var n,r=e.children,c=e.type,i=e.to,l=(e.icon,e.tooltip),u=e.disabled,s=e.className,d=Object(C.a)(e,["children","type","to","icon","tooltip","disabled","className"]),m=[F.a.btn];return s&&m.push(s),"danger"===c&&m.push(F.a.danger),n=i&&!u?a.a.createElement("div",{style:{display:"inline",lineHeight:"initial"}},a.a.createElement(o.b,Object.assign({to:i,className:m.join(" ")},d),a.a.Children.map(r,function(e){return a.a.cloneElement(e,{size:18},null)}))):a.a.createElement("button",Object.assign({ref:t,className:m.join(" "),disabled:u},d),a.a.Children.map(r,function(e){return a.a.cloneElement(e,{size:18},null)})),!l||u?n:a.a.createElement(k,{label:l},n)});function Ie(e){var t=e.children;return a.a.createElement("div",{style:{display:"flex",flexDirection:"column",height:"100%",padding:"8px",overflowY:"auto",overflowX:"hidden"}},t)}var Ne=n(15),Re=n(28),Le=n.n(Re),De=n(42),Pe=(n(76),n(77),n(105),n(199),function(e){if(Qe("updating completions"),Qe(e),null===e||void 0===e)return;var t=[],n=[],r={schema:{},table:{},schemaTable:{}};Object.keys(e).forEach(function(a){t.push({name:a,value:a,score:0,meta:"schema"});var c=a.toUpperCase();r.schema[c]||(r.schema[c]=[]),Object.keys(e[a]).forEach(function(t){var i=c+"."+t.toUpperCase(),o=t.toUpperCase();r.table[o]||(r.table[o]=[]),r.schemaTable[i]||(r.schemaTable[i]=[]);var l={name:t,value:t,score:0,meta:"table",schema:a};n.push(l),r.schema[c].push(l),e[a][t].forEach(function(e){var n={name:a+t+e.column_name,value:e.column_name,score:0,meta:"column",schema:a,table:t};r.table[o].push(n),r.schemaTable[i].push(n)})})});var a=t.concat(n),c={getCompletions:function(e,t,n,c,i){var o=t.getValue().split(/\s+/).map(function(e){return e.toUpperCase()}),l={};Object.keys(r.schemaTable).forEach(function(e){if(o.indexOf(e)>=0){l[e]=r.schemaTable[e];var t=r.schemaTable[e][0].table.toUpperCase();l[t]=r.table[t]}}),Object.keys(r.table).forEach(function(e){if(o.indexOf(e)>=0){l[e]=r.table[e];var t=r.table[e][0],n=t.schema.toUpperCase()+"."+t.table.toUpperCase();l[n]=r.table[e]}}),Qe("matched found: ",Object.keys(l));var u=[];Object.keys(l).forEach(function(e){u=u.concat(l[e])});var s={},d={},m=[];u.forEach(function(e){e.schema&&(s[e.schema]=e.schema),e.table&&(d[e.table]=e.schema)}),Object.keys(s).forEach(function(e){m.push({name:e,value:e,score:0,meta:"schema"})}),Object.keys(d).forEach(function(e){var t={name:e,value:e,score:0,meta:"table"};m.push(t);var n=d[e].toUpperCase();l[n]||(l[n]=[]),l[n].push(t)});for(var f=["FROM","JOIN"],p=["SELECT","WHERE","GROUP","HAVING","ON"],h="",y=n.row,b=y;b>=0;b--){var v,g=t.getDocument().getLine(b);b===y&&(g=g.slice(0,n.column));for(var E=(v=g.split(/\s+/).map(function(e){return e.toUpperCase()})).length-1;E>=0;E--){var w=v[E];if(p.indexOf(w)>=0){Qe("WANT COLUMN BECAUSE FOUND: ",w),h="COLUMN",b=0;break}if(f.indexOf(w)>=0){Qe("WANT TABLE BECAUSE FOUND: ",w),h="TABLE",b=0;break}}}Qe("WANTED: ",h);var O=t.getDocument().getLine(n.row),C=O.slice(0,n.column).split(/\s+/).map(function(e){return e.toUpperCase()}),x=O.slice(n.column-1,n.column),j=C[C.length-1];if(Qe('PREFIX: "%s"',c),Qe('PRECEDING CHAR: "%s"',x),Qe('PRECEDING TOKEN: "%s"',j),j.indexOf(".")>=0){var S=j.split(".");S.pop();var k=S.join(".").toUpperCase();if(Qe('Completing for "%s" even though we got "%s"',k,j),"TABLE"===h)return i(null,r.schema[k]);if("COLUMN"===h)return i(null,l[k])}return"TABLE"===h?i(null,a):"COLUMN"===h?i(null,u.concat(m)):void i(null,null)}};De.acequire(["ace/ext/language_tools"],function(e){e.setCompleters([c])})}),Ae=!1;function Qe(){Ae&&console.log.apply(null,arguments)}function Be(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Ue(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Be(n,!0).forEach(function(t){Object(Ne.a)(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Be(n).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}function ze(){return(ze=Object(m.a)(d.a.mark(function e(){var t;return d.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Le.a.getItem("showSchema");case 2:if("boolean"!==typeof(t=e.sent)){e.next=5;break}return e.abrupt("return",{showSchema:t});case 5:case"end":return e.stop()}},e)}))).apply(this,arguments)}function Fe(e){var t=!e.showSchema;return Le.a.setItem("showSchema",t).catch(function(e){return g.error(e)}),{showSchema:t}}var We=function(e){return function(){var t=Object(m.a)(d.a.mark(function t(n,r,a){var c,i,o,l,u,s;return d.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if((c=n.schema)[r]&&!a){t.next=14;break}return e.setState({schema:Ue({},c,Object(Ne.a)({},r,{loading:!0,expanded:{}}))}),i=a?"?reload=true":"",t.next=6,E("GET","/api/schema-info/".concat(r).concat(i));case 6:if(o=t.sent,l=o.error,u=o.schemaInfo,!l){t.next=10;break}return t.abrupt("return",g.error(l));case 10:return Pe(u),s={},u&&Object.keys(u).forEach(function(e){s[e]=!0}),t.abrupt("return",{schema:Ue({},c,Object(Ne.a)({},r,{loading:!1,schemaInfo:u,expanded:s}))});case 14:case"end":return t.stop()}},t)}));return function(e,n,r){return t.apply(this,arguments)}}()},Me=function(e,t,n){var r=e.schema,a=r[t],c=!a.expanded[n.id];return{schema:Ue({},r,Object(Ne.a)({},t,Ue({},a,{expanded:Ue({},a.expanded,Object(Ne.a)({},n.id,c))})))}},Ge={showSchema:!1,schema:{}};var He=n(56),Ve=n.n(He);function Ke(e,t){var n={},r=new RegExp(t,"i");return e&&Object.keys(e).forEach(function(t){var a=function(e,t){var n={};return Object.keys(e).forEach(function(r){(t.test(r)||e[r].some(function(e){return t.test(e.column_name)}))&&(n[r]=e[r])}),n}(e[t],r);n[t]=a}),n}var Ye=22,Xe={marginBottom:-6,marginRight:-6,marginLeft:-4};var Je=Object(u.connect)(function(e,t){var n=e.schema&&e.schema[e.selectedConnectionId]||{},r=n.loading,a=n.schemaInfo;return{expanded:n.expanded,connectionId:e.selectedConnectionId,schemaInfo:a||{},loading:r}},function(e){return{loadSchemaInfo:We(e),toggleSchemaItem:Me}})(a.a.memo(function(e){var t=e.expanded,n=e.connectionId,c=e.loadSchemaInfo,i=e.schemaInfo,o=e.loading,l=e.toggleSchemaItem,u=Object(r.useState)(""),s=Object(p.a)(u,2),d=s[0],m=s[1],f=Object(r.useState)({width:-1,height:-1}),h=Object(p.a)(f,2),y=h[0],b=h[1];Object(r.useEffect)(function(){n&&c(n)},[n,c]);var v=function(e){e.preventDefault(),n&&c(n,!0)},g=function(e){var t=[];return e&&Object.keys(e).forEach(function(n){var r=n;t.push({type:"schema",name:n,id:r,parentIds:[]}),Object.keys(e[n]).forEach(function(a){var c="".concat(n,".").concat(a);t.push({type:"table",name:a,schemaName:n,id:c,parentIds:[r]}),e[n][a].forEach(function(e){var i="".concat(n,".").concat(a,".").concat(e.column_name);t.push({type:"column",name:e.column_name,description:e.column_description,dataType:e.data_type,tableName:a,schemaName:n,id:i,parentIds:[r,c]})})})}),t}(Ke(i,d)).filter(function(e){return e.parentIds.every(function(e){return t[e]})}),E=function(e){var r=e.index,c=e.style,i=g[r],o=t[i.id]?Oe.a:xe.a;if(!i)return null;if("schema"===i.type)return a.a.createElement("li",{key:i.name,className:Ve.a.schema,style:c,onClick:function(){return l(n,i)}},a.a.createElement(o,{size:Ye,style:Xe})," ",i.name);if("table"===i.type)return a.a.createElement("li",{key:"".concat(i.schemaName,".").concat(i.name),className:Ve.a.table,style:c,onClick:function(){return l(n,i)}},a.a.createElement(o,{size:Ye,style:Xe})," ",i.name);if("column"===i.type){var u=" ".concat(i.dataType);return i.description&&(u+=" - ".concat(i.description)),a.a.createElement("li",{key:"".concat(i.schemaName,".").concat(i.tableName,".").concat(i.name),className:Ve.a.column,style:c},i.name,a.a.createElement(X,{type:"secondary"},u))}};return a.a.createElement(ke.a,{bounds:!0,onResize:function(e){b(e.bounds)}},function(e){var t=e.measureRef;return a.a.createElement(Ie,null,a.a.createElement("div",{style:{display:"flex"}},a.a.createElement(I,{value:d,placeholder:"Search schema",onChange:function(e){return m(e.target.value)}}),a.a.createElement(Te,{tooltip:"Refresh schema",style:{marginLeft:8},disabled:o,onClick:v},a.a.createElement(Se.a,null))),a.a.createElement(_e,{style:{margin:"4px 0"}}),a.a.createElement("div",{style:{display:"flex",flexGrow:1}},a.a.createElement("div",{ref:t,style:{display:"flex",width:"100%",height:"100%"}},o?a.a.createElement("div",{className:Ve.a.schemaSpinner},a.a.createElement(te,null)):a.a.createElement("ul",{style:{paddingLeft:0}},a.a.createElement(qe.a,{style:{position:"absolute"},height:y.height,itemCount:g.length,itemSize:22,width:y.width,overscanCount:10},E)))))})})),Ze=n(141),$e=n.n(Ze);function et(e){return $e()(e,[function(e){return e.name.toLowerCase()}])}function tt(){return(tt=Object(m.a)(d.a.mark(function e(t){var n;return d.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,Le.a.getItem("selectedConnectionId");case 2:if("string"!==typeof(n=e.sent)){e.next=5;break}return e.abrupt("return",{selectedConnectionId:n});case 5:case"end":return e.stop()}},e)}))).apply(this,arguments)}var nt=function(e,t){return Le.a.setItem("selectedConnectionId",t).catch(function(e){return g.error(e)}),{selectedConnectionId:t}},rt=function(){var e=Object(m.a)(d.a.mark(function e(t,n){var r,a;return d.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return r=t.connections,e.next=3,E("DELETE","/api/connections/"+n);case 3:if(!e.sent.error){e.next=6;break}return e.abrupt("return",g.error("Delete failed"));case 6:return a=r.filter(function(e){return e._id!==n}),e.abrupt("return",{connections:et(a)});case 8:case"end":return e.stop()}},e)}));return function(t,n){return e.apply(this,arguments)}}(),at=function(){var e=Object(m.a)(d.a.mark(function e(t,n){var r,a;return d.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(r=t.connections,!r.find(function(e){return e._id===n._id})){e.next=5;break}return a=r.map(function(e){return e._id===n._id?n:e}),e.abrupt("return",{connections:et(a)});case 5:return e.abrupt("return",{connections:et([n].concat(r))});case 6:case"end":return e.stop()}},e)}));return function(t,n){return e.apply(this,arguments)}}(),ct=function(e){return function(){var t=Object(m.a)(d.a.mark(function t(n,r){var a,c,i,o,l,u,s;return d.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if(a=n.connections,c=n.connectionsLoading,i=n.connectionsLastUpdated,!c){t.next=3;break}return t.abrupt("return");case 3:if(!(r||!a.length||i&&new Date-i>36e5)){t.next=14;break}return e.setState({connectionsLoading:!0}),t.next=7,E("GET","/api/connections/");case 7:o=t.sent,l=o.error,u=o.connections,l&&g.error(l),s={connectionsLoading:!1,connectionsLastUpdated:new Date,connections:et(u)},u&&1===u.length&&(s.selectedConnectionId=u[0]._id),e.setState(s);case 14:case"end":return t.stop()}},t)}));return function(e,n){return t.apply(this,arguments)}}()},it={selectedConnectionId:"",connections:[],connectionsLastUpdated:null,connectionsLoading:!1},ot=n(65),lt=n.n(ot);function ut(e,t){return Le.a.setItem("queryText:".concat(e),t).catch(function(e){return console.error(e)})}function st(e){return Le.a.getItem("queryText:".concat(e)).catch(function(e){return console.error(e)})}function dt(e){return Le.a.removeItem("queryText:".concat(e)).catch(function(e){return console.error(e)})}function mt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function ft(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?mt(n,!0).forEach(function(t){Object(Ne.a)(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):mt(n).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}var pt={_id:"",name:"",tags:[],connectionId:"",queryText:"",chartConfiguration:{chartType:"",fields:{}}},ht={cacheKey:lt.a.v4(),isRunning:!1,isSaving:!1,queries:[],query:Object.assign({},pt),queryError:void 0,queryResult:void 0,runQueryStartTime:void 0,selectedText:"",showValidation:!1,unsavedChanges:!1},yt=function(){var e=Object(m.a)(d.a.mark(function e(t){var n,r;return d.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return n=t.query,e.next=3,E("POST","/api/format-sql",{query:n.queryText});case 3:if(!(r=e.sent).error){e.next=7;break}return g.error(r.error),e.abrupt("return");case 7:return ut(n._id,r.query),e.abrupt("return",{query:ft({},n,{queryText:r.query}),unsavedChanges:!0});case 9:case"end":return e.stop()}},e)}));return function(t){return e.apply(this,arguments)}}(),bt=function(e){return function(){var t=Object(m.a)(d.a.mark(function t(n){var r,a;return d.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if(r=n.queriesLastUpdated,n.queries.length&&!(r&&new Date-r>36e5)){t.next=8;break}return e.setState({queriesLoading:!0}),t.next=5,E("GET","/api/queries");case 5:(a=t.sent).error&&g.error(a.error),e.setState({queriesLoading:!1,queriesLastUpdated:new Date,queries:a.queries||[]});case 8:case"end":return t.stop()}},t)}));return function(e){return t.apply(this,arguments)}}()},vt=function(e){return function(){var t=Object(m.a)(d.a.mark(function t(n,r){var a,c,i;return d.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return a=n.queries,c=a.filter(function(e){return e._id!==r}),e.setState({queries:c}),t.next=5,E("DELETE","/api/queries/"+r);case 5:(i=t.sent).error&&(g.error(i.error),e.setState({queries:a}));case 7:case"end":return t.stop()}},t)}));return function(e,n){return t.apply(this,arguments)}}()},gt=function(){var e=Object(m.a)(d.a.mark(function e(t,n){var r,a,c;return d.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,E("GET","/api/queries/".concat(n));case 2:return r=e.sent,a=r.error,c=r.query,a&&g.error(a),e.abrupt("return",{query:c,queryError:void 0,queryResult:void 0,selectedConnectionId:c.connectionId,unsavedChanges:!1});case 7:case"end":return e.stop()}},e)}));return function(t,n){return e.apply(this,arguments)}}(),Et=function(e){return function(){var t=Object(m.a)(d.a.mark(function t(n){var r,a,c,i,o,l,u,s;return d.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:return r=n.cacheKey,a=n.query,c=n.selectedText,i=n.selectedConnectionId,e.setState({isRunning:!0,runQueryStartTime:new Date}),o={connectionId:i,cacheKey:r,queryName:a.name,queryText:c||a.queryText},t.next=5,E("POST","/api/query-result",o);case 5:l=t.sent,u=l.queryResult,(s=l.error)&&g.error(s),e.setState({isRunning:!1,queryError:s,queryResult:u});case 10:case"end":return t.stop()}},t)}));return function(e){return t.apply(this,arguments)}}()},wt=function(e){return function(){var t=Object(m.a)(d.a.mark(function t(n){var r,a,c;return d.a.wrap(function(t){for(;;)switch(t.prev=t.next){case 0:if(r=n.query,a=n.selectedConnectionId,r.name){t.next=5;break}return g.error("Query name required"),e.setState({showValidation:!0}),t.abrupt("return");case 5:e.setState({isSaving:!0}),c=Object.assign({},r,{connectionId:a}),r._id?E("PUT","/api/queries/".concat(r._id),c).then(function(t){var n=t.error,r=t.query,a=e.getState().queries;if(n)return g.error(n),void e.setState({isSaving:!1});g.success("Query Saved"),dt(r._id);var c=a.map(function(e){return e._id===r._id?r:e});e.setState({isSaving:!1,unsavedChanges:!1,query:r,queries:c})}):E("POST","/api/queries",c).then(function(t){var n=t.error,r=t.query,a=e.getState().queries;if(n)return g.error(n),void e.setState({isSaving:!1});window.history.replaceState({},r.name,"".concat(window.BASE_URL,"/queries/").concat(r._id)),g.success("Query Saved"),dt(r._id),e.setState({isSaving:!1,unsavedChanges:!1,query:r,queries:[r].concat(a)})});case 8:case"end":return t.stop()}},t)}));return function(e){return t.apply(this,arguments)}}()},Ot=function(e){var t=e.query;delete t._id;var n="Copy of "+t.name;return window.history.replaceState({},n,"".concat(window.BASE_URL,"/queries/new")),{query:ft({},t,{name:n}),unsavedChanges:!0}},Ct=function(e){return{query:Object.assign({},pt),queryError:void 0,queryResult:void 0,unsavedChanges:!1}},xt=function(e,t,n){var r=e.query;return"queryText"===t&&ut(r._id,n),{query:ft({},r,Object(Ne.a)({},t,n)),unsavedChanges:!0}},jt=function(e,t,n){var r=e.query,a=r.chartConfiguration.fields;return{query:ft({},r,{chartConfiguration:ft({},r.chartConfiguration,{fields:ft({},a,Object(Ne.a)({},t,n))})}),unsavedChanges:!0}},St=function(e,t){var n=e.query;return{query:ft({},n,{chartConfiguration:ft({},n.chartConfiguration,{chartType:t})}),unsavedChanges:!0}},kt=function(e,t){return{selectedText:t}},qt={initialState:ht,formatQuery:yt,loadQueries:bt,deleteQuery:vt,loadQuery:gt,runQuery:Et,saveQuery:wt,handleCloneClick:Ot,resetNewQuery:Ct,setQueryState:xt,handleChartConfigurationFieldsChange:jt,handleChartTypeChange:St,handleQuerySelectionChange:kt},_t=function(){var e=Object(m.a)(d.a.mark(function e(t){var n,r,a;return d.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,E("GET","/api/tags");case 2:return n=e.sent,r=n.error,a=n.tags,r&&g.error(r),e.abrupt("return",{availableTags:a});case 7:case"end":return e.stop()}},e)}));return function(t){return e.apply(this,arguments)}}(),Tt={availableTags:[]};var It=Object(u.connect)(function(e,t){var n=e.query&&e.query.name;return{title:"new"===t.queryId?"New query":n}})(function(e){var t=e.title;return Object(r.useEffect)(function(){document.title=t},[t]),null});var Nt=Object(u.connect)(function(e){return{queryId:e.query&&e.query._id||"new",isRunning:e.isRunning,queryError:e.queryError,queryResult:e.queryResult,chartConfiguration:e.query&&e.query.chartConfiguration}})(ye),Rt=n(21),Lt=n.n(Rt);var Dt=Object(u.connect)(function(e){return{queryId:e.query&&e.query._id||"new",queryName:e.query&&e.query.name||"New query",queryResult:e.queryResult}})(function(e){var t=e.queryResult,n=e.queryId,r=e.queryName,c=e.children,i=t&&t.rows&&t.rows.length;return a.a.createElement("div",{style:{display:"flex",flexDirection:"column"},className:"h-100 w-100"},a.a.createElement("div",{style:{display:"flex",justifyContent:"flex-end",alignItems:"center",padding:4}},a.a.createElement(Te,{disabled:"new"===n,to:"/query-chart/".concat(n),target:"_blank",rel:"noopener noreferrer",tooltip:"Open chart in new window"},a.a.createElement(Lt.a,null)),a.a.createElement(Te,{disabled:!i,onClick:function(){return he(n,r)},tooltip:"Save chart image"},a.a.createElement(U.a,null))),a.a.createElement("div",{style:{display:"flex",padding:8,position:"relative"},className:"h-100 w-100"},c))}),Pt=n(142),At=n(143),Qt=n(167),Bt=n(144),Ut=n(169),zt=n(145),Ft=n.n(zt),Wt=n(146),Mt=n.n(Wt);function Gt(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function Ht(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Gt(n,!0).forEach(function(t){Object(Ne.a)(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Gt(n).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}var Vt=function(e,t){return null===e||void 0===e?a.a.createElement("em",null,"null"):!0===e||!1===e?e.toString():"datetime"===t.datatype?e.replace("T"," ").replace("Z",""):"date"===t.datatype?e.substring(0,10):"object"===typeof e?JSON.stringify(e,null,2):"string"===typeof e&&e.match("^https?://")?a.a.createElement("a",{target:"_blank",rel:"noopener noreferrer",href:e},e):e};function Kt(){var e=document.activeElement;e&&(e.blur(),e.focus())}var Yt={overflowX:"hidden",overflowY:"hidden"},Xt={lineHeight:"30px",backgroundColor:"#f4f4f4",justifyContent:"space-between",borderBottom:"1px solid #CCC",display:"flex",paddingLeft:".5rem",paddingRight:".5rem"},Jt={lineHeight:"30px",paddingLeft:".5rem",paddingRight:".5rem",borderBottom:"1px solid #CCC",display:"relative"},Zt=function(e){function t(){var e,n;Object(Pt.a)(this,t);for(var r=arguments.length,c=new Array(r),i=0;i<r;i++)c[i]=arguments[i];return(n=Object(Qt.a)(this,(e=Object(Bt.a)(t)).call.apply(e,[this].concat(c)))).state={dimensions:{width:-1,height:-1},columnWidths:{}},n.getColumnWidth=function(e){var t=n.state.columnWidths,r=n.props.queryResult,a=r.fields[e],c=n.state.dimensions.width;if(a)return t[a];var i=c-r.fields.map(function(e){return t[e]}).reduce(function(e,t){return e+t},0);return i<10?10:i},n.headerGrid=a.a.createRef(),n.bodyGrid=a.a.createRef(),n.resizeColumn=function(e){var t=e.dataKey,r=e.deltaX,a=e.columnIndex;n.setState(function(e){var n=e.columnWidths,a=n[t]+r;return{columnWidths:Ht({},n,Object(Ne.a)({},t,a>100?a:100))}},function(){n.recalc(a),Kt()})},n.recalc=Ft()(function(e){n.headerGrid.current.resetAfterColumnIndex&&(n.headerGrid.current.resetAfterColumnIndex(e),n.bodyGrid.current.resetAfterColumnIndex(e))},100),n.HeaderCell=function(e){var t=e.columnIndex,r=(e.rowIndex,e.style),c=n.props.queryResult.fields[t];return c?a.a.createElement("div",{style:Object.assign({},r,Xt)},a.a.createElement("div",null,c),a.a.createElement(Mt.a,{axis:"x",defaultClassName:"DragHandle",defaultClassNameDragging:"DragHandleActive",onDrag:function(e,r){var a=r.deltaX;n.resizeColumn({dataKey:c,deltaX:a,columnIndex:t})},position:{x:0},zIndex:999},a.a.createElement("span",{className:"DragHandleIcon"},"\u22ee"))):a.a.createElement("div",{style:Object.assign({},r,Xt)})},n.Cell=function(e){var t=e.columnIndex,r=e.rowIndex,c=e.style,i=n.props.queryResult,o=i.fields[t],l=Object.assign({},c,Jt);if(r%2===0&&(l.backgroundColor="#fafafa"),o){var u=i.meta[o],s=i.rows[r][o];return a.a.createElement("div",{style:l},a.a.createElement("div",{className:"truncate"},Vt(s,u)))}return a.a.createElement("div",{style:l},a.a.createElement("div",{className:"truncate"}))},n.handleGridScroll=function(e){var t=e.scrollLeft;n.headerGrid.current.scrollTo({scrollLeft:t}),Kt()},n.handleContainerResize=function(e){n.setState({dimensions:e.bounds})},n}return Object(Ut.a)(t,e),Object(At.a)(t,[{key:"componentWillUnmount",value:function(){setTimeout(function(){Kt()},300)}},{key:"getRowHeight",value:function(){return 30}},{key:"render",value:function(){var e=this,t=this.props.queryResult,n=this.state.dimensions,r=n.height,c=n.width;if(t&&t.rows){var i=t.rows.length,o=t.fields.length+1;return a.a.createElement(ke.a,{bounds:!0,onResize:this.handleContainerResize},function(t){var n=t.measureRef;return a.a.createElement("div",{ref:n,className:"h-100 w-100"},a.a.createElement(qe.b,{columnCount:o,rowCount:1,columnWidth:e.getColumnWidth,rowHeight:e.getRowHeight,height:30,width:c,ref:e.headerGrid,style:Yt},e.HeaderCell),a.a.createElement(qe.b,{columnCount:o,rowCount:i,columnWidth:e.getColumnWidth,rowHeight:e.getRowHeight,width:c,height:r-30,ref:e.bodyGrid,onScroll:e.handleGridScroll},e.Cell))})}return null}}],[{key:"getDerivedStateFromProps",value:function(e,t){var n=e.queryResult,r=t.columnWidths;return n&&n.fields&&n.fields.forEach(function(e){if(!r[e]){var t=n.meta[e].maxValueLength;e.length>t&&(t=e.length);var a=20*t;a<100?a=100:a>350&&(a=350),r[e]=a}}),{columnWidths:r}}}]),t}(a.a.PureComponent);var $t=function(e){var t=e.queryError;return a.a.createElement("div",{style:{fontSize:"1.5rem",padding:24,textAlign:"center"},className:"h-100 bg-error flex-center"},t)};var en=function(){return a.a.createElement("div",{className:"h-100 flex-center"},a.a.createElement(te,null))};var tn=function(e){var t=e.isRunning,n=e.queryError,r=e.queryResult;return t?a.a.createElement(en,null):n?a.a.createElement($t,{queryError:n}):a.a.createElement(Zt,{queryResult:r})},nn=Object(u.connect)(["isRunning","queryError","queryResult"])(tn),rn=n(66),an=n.n(rn),cn=function(){};function on(e){var t=e.config,n=e.onChange,c=e.readOnly,i=e.value,o=e.onSelectionChange,l=Object(r.useState)({width:-1,height:-1}),u=Object(p.a)(l,2),s=u[0],d=u[1],m=Object(r.useState)(null),f=Object(p.a)(m,2),h=f[0],y=f[1];Object(r.useEffect)(function(){h&&n&&(h.commands.on("afterExec",function(e){"insertstring"===e.command.name&&/^[\w.]$/.test(e.args)&&"."===e.args&&h.execCommand("startAutocomplete")}),h.session.setUseWrapMode(Boolean(t.editorWordWrap)))},[h,n,t]);var b=function(e){if(h&&h.session){var t=h.session.getTextRange(e.getRange());o(t)}},v=s.width,g=s.height;return a.a.createElement(ke.a,{bounds:!0,onResize:function(e){return d(e.bounds)}},function(e){var t=e.measureRef;return a.a.createElement("div",{ref:t,className:"h-100 w-100"},a.a.createElement(an.a,{focus:!c,editorProps:{$blockScrolling:1/0},enableBasicAutocompletion:!0,enableLiveAutocompletion:!0,height:g+"px",highlightActiveLine:!1,mode:"sql",name:"query-ace-editor",onLoad:function(e){return y(e)},onChange:n||cn,onSelectionChange:b,showGutter:!1,showPrintMargin:!1,theme:"sqlserver",readOnly:c,value:i,width:v+"px"}))})}on.defaultProps={onSelectionChange:function(){},readOnly:!1,value:""};var ln=Object(u.connect)(["config"])(a.a.memo(on));var un=Object(u.connect)(function(e,t){return{value:e.query&&e.query.queryText}},{setQueryState:xt,handleQuerySelectionChange:kt})(function(e){var t=e.value,n=e.setQueryState,c=e.handleQuerySelectionChange,i=Object(r.useCallback)(function(e){return n("queryText",e)},[n]);return a.a.createElement("div",{style:{padding:4,height:"100%",width:"100%"}},a.a.createElement(ln,{value:t,onChange:i,onSelectionChange:c}))});var sn=function(e){var t=e.startTime,n=Object(r.useState)(0),c=Object(p.a)(n,2),i=c[0],o=c[1];return Object(r.useEffect)(function(){var e=setInterval(function(){var e=new Date;o(((e-t)/1e3).toFixed(0))},33);return function(){return clearInterval(e)}},[t]),a.a.createElement("span",null,i)},dn=n(20),mn=n.n(dn);function fn(e){var t=e.cacheKey,n=e.config,r=e.isRunning,c=e.queryId,i=e.queryResult,l=e.runQueryStartTime;if(r||!i)return a.a.createElement("div",{className:mn.a.toolbar},r?a.a.createElement("span",{className:mn.a.toolbarItem},"Query time: ",a.a.createElement(sn,{startTime:l})):null);var u=i?i.queryRunTime/1e3:"",s=i&&i.rows?i.rows.length:"",d=!!i&&i.incomplete,m="/download-results/".concat(t,".csv"),f="/download-results/".concat(t,".xlsx"),p="/query-table/".concat(c);return a.a.createElement("div",{className:mn.a.toolbar},a.a.createElement("div",{className:mn.a.toolbarItem},u," seconds"),a.a.createElement("div",{className:mn.a.toolbarItem},s," rows"),a.a.createElement("div",{className:mn.a.toolbarItem},n.allowCsvDownload&&a.a.createElement("span",{className:mn.a.iconLinkWrapper},a.a.createElement(o.b,{className:mn.a.iconLink,target:"_blank",rel:"noopener noreferrer",to:m},a.a.createElement(U.a,{style:{marginRight:4},size:16}),".csv"),a.a.createElement(o.b,{className:mn.a.iconLink,target:"_blank",rel:"noopener noreferrer",to:f},a.a.createElement(U.a,{style:{marginRight:4},size:16}),".xlsx"))),a.a.createElement("div",{className:mn.a.toolbarItem},a.a.createElement("span",{className:mn.a.iconLinkWrapper},a.a.createElement(o.b,{className:mn.a.iconLink,target:"_blank",rel:"noopener noreferrer",to:p,disabled:!Boolean(c)||"new"===c},"table ",a.a.createElement(Lt.a,{style:{marginLeft:4},size:16})))),d&&a.a.createElement($,null))}fn.defaultProps={cacheKey:"",config:{},isRunning:!1};var pn=Object(u.connect)(function(e){var t=e.cacheKey,n=e.config,r=e.isRunning,a=e.queryResult,c=e.runQueryStartTime;return{cacheKey:t,config:n,isRunning:r,queryId:e.query&&e.query._id,queryResult:a,runQueryStartTime:c}})(a.a.memo(fn)),hn=n(34),yn=n.n(hn);var bn=Object(u.connect)(null,function(e){return{formatQuery:yt,runQuery:Et(e),saveQuery:wt(e)}})(function(e){var t=e.saveQuery,n=e.runQuery,a=e.formatQuery;return Object(r.useEffect)(function(){return yn.a.filter=function(){return!0},yn()("ctrl+s, command+s",function(e){return t(),!1}),yn()("ctrl+return, command+return",function(e){return n(),!1}),yn()("shift+return",function(e){return a(),!1}),function(){yn.a.unbind("ctrl+return, command+return"),yn.a.unbind("ctrl+s, command+s"),yn.a.unbind("shift+return")}},[t,n,a]),null}),vn=n(147),gn=n.n(vn),En=n(148),wn=n.n(En),On=n(149),Cn=n.n(On),xn=n(150),jn=n.n(xn),Sn=n(151),kn=n.n(Sn),qn=n(152),_n=n.n(qn),Tn=n(153),In=n.n(Tn),Nn=n(154),Rn=n.n(Nn),Ln=n(46),Dn=n(45),Pn=n.n(Dn),An=n(71),Qn=n.n(An);var Bn=function(e){var t=e.title,n=e.visible,r=e.onClose,c=e.width,i=e.placement,o=e.children,l={width:c};return"right"===i&&(l.right=0),n?a.a.createElement(Ln.a,{onDismiss:r,className:Qn.a.Dialog,style:l},a.a.createElement("div",{className:Qn.a.titleWrapper},t,a.a.createElement(Te,{onClick:r},a.a.createElement(Pn.a,null))),a.a.createElement("div",{className:Qn.a.dialogBody},o)):null},Un=n(155),zn=n.n(Un),Fn=n(49),Wn=n.n(Fn),Mn=a.a.forwardRef(function(e,t){var n=e.children,c=e.confirmMessage,i=e.onConfirm,o=(e.className,e.icon),l=Object(C.a)(e,["children","confirmMessage","onConfirm","className","icon"]),u=Object(r.useState)(!1),s=Object(p.a)(u,2),d=s[0],m=s[1],f=Object(r.useRef)(null);return a.a.createElement(a.a.Fragment,null,o?a.a.createElement(Te,Object.assign({onClick:function(){return m(!0)},ref:t,type:"danger"},l),a.a.createElement(zn.a,null)):a.a.createElement(q,Object.assign({onClick:function(){return m(!0)},ref:t,type:"danger"},l),n),d&&a.a.createElement(Ln.a,{onDismiss:function(){return m(!1)},className:Wn.a.Dialog,initialFocusRef:f},a.a.createElement("div",{className:Wn.a.dialogContent},a.a.createElement("span",null,c)),a.a.createElement("div",{className:Wn.a.buttonWrapper},a.a.createElement(q,{type:"danger",className:Wn.a.button,onClick:function(){m(!1),i()}},"Delete"),a.a.createElement(q,{ref:f,className:Wn.a.button,onClick:function(){return m(!1)}},"Cancel"))))}),Gn=n(156),Hn=n.n(Gn),Vn=function(e){var t=e.children,n=e.className,r=Object(C.a)(e,["children","className"]),c=[Hn.a.ListItem];return n&&c.push(n),a.a.createElement("div",Object.assign({className:c.join(" ")},r),t)},Kn=n(157),Yn=n.n(Kn),Xn=n(158),Jn=n.n(Xn);function Zn(e){var t=e.leftWidth,n=void 0===t?"35%":t,r=e.rightWidth,c=void 0===r?"65%":r,i=e.label,o=e.children;return a.a.createElement("div",{style:{marginTop:24,display:"flex",alignItems:"flex-start"}},a.a.createElement("div",{style:{flexBasis:n,marginRight:16,marginTop:4,textAlign:"left"}},a.a.createElement("label",{htmlFor:i},i)),a.a.createElement("div",{style:{flexBasis:c}},o))}var $n=n(98),er=n.n($n);function tr(e){var t=e.children,n=e.error,r=e.className,c=Object(C.a)(e,["children","error","className"]),i=[er.a.select];return r&&i.push(r),n&&i.push(er.a.danger),a.a.createElement("select",Object.assign({className:i.join(" ")},c),t)}function nr(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}var rr="TEXT",ar="PASSWORD",cr="CHECKBOX";var ir=function(e){var t=e.connectionId,n=e.onConnectionSaved,c=Object(r.useState)({}),i=Object(p.a)(c,2),o=i[0],l=i[1],u=Object(r.useState)([]),s=Object(p.a)(u,2),f=s[0],h=s[1],y=Object(r.useState)(!1),b=Object(p.a)(y,2),v=b[0],w=b[1],O=Object(r.useState)(!1),C=Object(p.a)(O,2),x=C[0],j=C[1],S=Object(r.useState)(!1),k=Object(p.a)(S,2),_=k[0],T=k[1],N=Object(r.useState)(!1),R=Object(p.a)(N,2),L=R[0],D=R[1];function P(){return(P=Object(m.a)(d.a.mark(function e(){var t;return d.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,E("GET","/api/drivers");case 2:(t=e.sent).error?g.error(t.error):h(t.drivers);case 4:case"end":return e.stop()}},e)}))).apply(this,arguments)}function A(){return(A=Object(m.a)(d.a.mark(function e(t){var n;return d.a.wrap(function(e){for(;;)switch(e.prev=e.next){case 0:if(!t){e.next=5;break}return e.next=3,E("GET","/api/connections/".concat(t));case 3:(n=e.sent).error?g.error(n.error):l(n.connection);case 5:case"end":return e.stop()}},e)}))).apply(this,arguments)}Object(r.useEffect)(function(){!function(){P.apply(this,arguments)}()},[]),Object(r.useEffect)(function(){!function(e){A.apply(this,arguments)}(t)},[t]);var Q=function(e,t){l(function(n){return function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?nr(n,!0).forEach(function(t){Object(Ne.a)(e,t,n[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):nr(n).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))})}return e}({},n,Object(Ne.a)({},e,t))})},B=function(){var e=Object(m.a)(d.a.mark(function e(){var t;return d.a.wrap(function(e){for(;;)swit