harperdb 4.3.23 → 4.3.25
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 +1 -1
- package/bin/harperdb.js +33 -33
- package/bin/lite.js +20 -20
- package/launchServiceScripts/launchInstallNATSServer.js +1 -1
- package/launchServiceScripts/launchNatsIngestService.js +20 -20
- package/launchServiceScripts/launchNatsReplyService.js +20 -20
- package/launchServiceScripts/launchUpdateNodes4-0-0.js +20 -20
- package/npm-shrinkwrap.json +245 -245
- package/package.json +2 -2
- package/server/jobs/jobProcess.js +20 -20
- package/server/serverHelpers/Headers.d.ts +1 -1
- package/server/threads/threadServer.js +20 -20
- package/studio/build-local/asset-manifest.json +47 -46
- package/studio/build-local/index.html +1 -1
- package/studio/build-local/static/css/main.e1f8b48c.css +13 -0
- package/studio/build-local/static/js/23.3b9f7144.chunk.js +1 -0
- package/studio/build-local/static/js/239.183c6cbc.chunk.js +2 -0
- package/studio/build-local/static/js/{228.302d7db9.chunk.js → 279.7890bce3.chunk.js} +1 -1
- package/studio/build-local/static/js/311.3d832d8b.chunk.js +2 -0
- package/studio/build-local/static/js/311.3d832d8b.chunk.js.LICENSE.txt +38 -0
- package/studio/build-local/static/js/43.73dc432d.chunk.js +2 -0
- package/studio/build-local/static/js/452.03944f0d.chunk.js +2 -0
- package/studio/build-local/static/js/{446.5237e847.chunk.js.LICENSE.txt → 452.03944f0d.chunk.js.LICENSE.txt} +2 -2
- package/studio/build-local/static/js/545.e12f8571.chunk.js +1 -0
- package/studio/build-local/static/js/591.7498da00.chunk.js +2 -0
- package/studio/build-local/static/js/805.6aab06e2.chunk.js +1 -0
- package/studio/build-local/static/js/806.adb20036.chunk.js +1 -0
- package/studio/build-local/static/js/833.5b133801.chunk.js +1 -0
- package/studio/build-local/static/js/851.e7004b75.chunk.js +1 -0
- package/studio/build-local/static/js/860.727e7fc8.chunk.js +1 -0
- package/studio/build-local/static/js/browse-csvupload.02fdfbea.chunk.js +1 -0
- package/studio/build-local/static/js/browse-datatable.c2eb203f.chunk.js +1 -0
- package/studio/build-local/static/js/browse-entitymanager.0db076c3.chunk.js +1 -0
- package/studio/build-local/static/js/browse-jsonviewer.90814e97.chunk.js +1 -0
- package/studio/build-local/static/js/custom-functions.01f632d1.chunk.js +1 -0
- package/studio/build-local/static/js/instance-charts.217c477d.chunk.js +1 -0
- package/studio/build-local/static/js/instance-cluster.7f6df625.chunk.js +1 -0
- package/studio/build-local/static/js/instance-config.59b29ef6.chunk.js +1 -0
- package/studio/build-local/static/js/instance-query.44ba3d7b.chunk.js +1 -0
- package/studio/build-local/static/js/instance-roles.38ef8e77.chunk.js +1 -0
- package/studio/build-local/static/js/instance-status.694a7846.chunk.js +1 -0
- package/studio/build-local/static/js/instance-users-datatable.d61ab3ef.chunk.js +1 -0
- package/studio/build-local/static/js/instance-users-edit.ff5bfa06.chunk.js +1 -0
- package/studio/build-local/static/js/instance-users.c71b71f2.chunk.js +1 -0
- package/studio/build-local/static/js/instance.47c8b74b.chunk.js +1 -0
- package/studio/build-local/static/js/instances.1ec58722.chunk.js +1 -0
- package/studio/build-local/static/js/main.c58a5ba7.js +2 -0
- package/studio/build-local/static/js/{main.3bdc447b.js.LICENSE.txt → main.c58a5ba7.js.LICENSE.txt} +0 -33
- package/studio/build-local/static/js/offline-app.31c18661.chunk.js +1 -0
- package/studio/build-local/static/js/online-app.0d8194e1.chunk.js +1 -0
- package/studio/build-local/static/js/organization-billing.21b2d3c9.chunk.js +1 -0
- package/studio/build-local/static/js/organization-users.532711dd.chunk.js +1 -0
- package/studio/build-local/static/js/organization.99a1e759.chunk.js +1 -0
- package/studio/build-local/static/js/organizations.4933fdbc.chunk.js +1 -0
- package/studio/build-local/static/js/profile.e4e06bdf.chunk.js +1 -0
- package/studio/build-local/static/js/resetPassword.3478535b.chunk.js +1 -0
- package/studio/build-local/static/js/roles-jsonviewer.bf1011d5.chunk.js +1 -0
- package/studio/build-local/static/js/signIn.0134746e.chunk.js +1 -0
- package/studio/build-local/static/js/signUp.c8fce52d.chunk.js +1 -0
- package/studio/build-local/static/js/structure-reloader.f65842a1.chunk.js +1 -0
- package/studio/build-local/static/js/topnav.0fa4de77.chunk.js +1 -0
- package/studio/build-local/static/js/updatePassword.bc881b36.chunk.js +1 -0
- package/utility/scripts/restartHdb.js +20 -20
- package/studio/build-local/static/css/main.6c0f1b63.css +0 -13
- package/studio/build-local/static/js/110.ca4244a6.chunk.js +0 -2
- package/studio/build-local/static/js/287.21477cf9.chunk.js +0 -1
- package/studio/build-local/static/js/409.17daa4fe.chunk.js +0 -2
- package/studio/build-local/static/js/424.ad87c8fd.chunk.js +0 -1
- package/studio/build-local/static/js/446.5237e847.chunk.js +0 -2
- package/studio/build-local/static/js/662.92e32ffc.chunk.js +0 -1
- package/studio/build-local/static/js/718.74e9355d.chunk.js +0 -1
- package/studio/build-local/static/js/723.c58acced.chunk.js +0 -2
- package/studio/build-local/static/js/731.8a941eb3.chunk.js +0 -1
- package/studio/build-local/static/js/807.510f66df.chunk.js +0 -2
- package/studio/build-local/static/js/807.510f66df.chunk.js.LICENSE.txt +0 -5
- package/studio/build-local/static/js/926.88d6f9ce.chunk.js +0 -1
- package/studio/build-local/static/js/browse-csvupload.453237f3.chunk.js +0 -1
- package/studio/build-local/static/js/browse-datatable.b9ef2d28.chunk.js +0 -1
- package/studio/build-local/static/js/browse-entitymanager.50827a5a.chunk.js +0 -1
- package/studio/build-local/static/js/browse-jsonviewer.a2534004.chunk.js +0 -1
- package/studio/build-local/static/js/custom-functions.dd7e182c.chunk.js +0 -1
- package/studio/build-local/static/js/instance-charts.34d15f02.chunk.js +0 -1
- package/studio/build-local/static/js/instance-cluster.5bce430c.chunk.js +0 -1
- package/studio/build-local/static/js/instance-config.70c17b53.chunk.js +0 -1
- package/studio/build-local/static/js/instance-query.4f6eec62.chunk.js +0 -1
- package/studio/build-local/static/js/instance-roles.507a4ed0.chunk.js +0 -1
- package/studio/build-local/static/js/instance-status.ce9d7f64.chunk.js +0 -1
- package/studio/build-local/static/js/instance-users-datatable.190640fd.chunk.js +0 -1
- package/studio/build-local/static/js/instance-users-edit.d2444479.chunk.js +0 -1
- package/studio/build-local/static/js/instance-users.eabfbbde.chunk.js +0 -1
- package/studio/build-local/static/js/instance.a163623f.chunk.js +0 -1
- package/studio/build-local/static/js/instances.6b88a87c.chunk.js +0 -1
- package/studio/build-local/static/js/main.3bdc447b.js +0 -2
- package/studio/build-local/static/js/offline-app.7371216b.chunk.js +0 -1
- package/studio/build-local/static/js/online-app.db436eec.chunk.js +0 -1
- package/studio/build-local/static/js/organization-billing.b2f260f0.chunk.js +0 -1
- package/studio/build-local/static/js/organization-users.b6171b18.chunk.js +0 -1
- package/studio/build-local/static/js/organization.7800f16a.chunk.js +0 -1
- package/studio/build-local/static/js/organizations.8bb505f2.chunk.js +0 -1
- package/studio/build-local/static/js/profile.292bdd86.chunk.js +0 -1
- package/studio/build-local/static/js/resetPassword.8fdfba77.chunk.js +0 -1
- package/studio/build-local/static/js/roles-jsonviewer.c11f1816.chunk.js +0 -1
- package/studio/build-local/static/js/signIn.b11bdc50.chunk.js +0 -1
- package/studio/build-local/static/js/signUp.564d4e0b.chunk.js +0 -1
- package/studio/build-local/static/js/structure-reloader.b6de4091.chunk.js +0 -1
- package/studio/build-local/static/js/topnav.4fd41d60.chunk.js +0 -1
- package/studio/build-local/static/js/updatePassword.e23019c7.chunk.js +0 -1
- /package/studio/build-local/static/js/{723.c58acced.chunk.js.LICENSE.txt → 239.183c6cbc.chunk.js.LICENSE.txt} +0 -0
- /package/studio/build-local/static/js/{110.ca4244a6.chunk.js.LICENSE.txt → 43.73dc432d.chunk.js.LICENSE.txt} +0 -0
- /package/studio/build-local/static/js/{409.17daa4fe.chunk.js.LICENSE.txt → 591.7498da00.chunk.js.LICENSE.txt} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunkharperdb_studio=self.webpackChunkharperdb_studio||[]).push([[741],{7368:(e,t,s)=>{s.r(t),s.d(t,{default:()=>Y});var n=s(9950),i=s(7176),r=s(6114),a=s(3452),l=s(4084),o=s(8156),c=s(6713),d=s(8429),u=s(9435),m=s(9163),p=s.n(m),h=s(5269),_=s(5553),x=s(9690),A=s(7348),v=s(5996),j=s(4414);const g=function(e){let{which:t,compute:s,storage:n,total:a}=e;return(0,j.jsx)(l.A,{className:"my-3",children:(0,j.jsxs)(o.A,{className:"p-2 text-small",children:[(0,j.jsxs)(i.A,{children:[(0,j.jsxs)(r.A,{xs:"6",className:"text-nowrap",children:["Compute","compute"===t&&" (new)"]}),(0,j.jsx)(r.A,{xs:"6",className:"text-nowrap text-end text-truncate",children:s}),(0,j.jsx)(r.A,{xs:"12",children:(0,j.jsx)("hr",{className:"my-1"})})]}),(0,j.jsxs)(i.A,{children:[(0,j.jsxs)(r.A,{xs:"6",className:"text-nowrap",children:["Storage","storage"===t&&" (new)"]}),(0,j.jsx)(r.A,{xs:"6",className:"text-nowrap text-end text-truncate",children:n}),(0,j.jsx)(r.A,{xs:"12",children:(0,j.jsx)("hr",{className:"my-1"})})]}),(0,j.jsxs)(i.A,{children:[(0,j.jsx)(r.A,{xs:"6",className:"text-nowrap",children:(0,j.jsx)("b",{children:"New Total"})}),(0,j.jsx)(r.A,{xs:"6",className:"text-nowrap text-end text-truncate",children:(0,j.jsx)("b",{children:a})})]})]})})};var f=s(5887),b=s(1943),y=s(2714);const w=async e=>(0,y.A)({endpoint:"updateInstance",method:"POST",payload:Object.entries({stripe_plan_id:e.stripe_plan_id,compute_stack_id:e.compute_stack_id,customer_id:e.customer_id,data_volume_size:e.data_volume_size,stripe_storage_plan_id:e.stripe_storage_plan_id,compute_subscription_id:e.compute_subscription_id,storage_subscription_id:e.storage_subscription_id}).reduce(((e,t)=>{let[s,n]=t;return null==n||(e[s]=n),e}),{}),auth:e.auth});var O=s(4549);const N=function(e){let{setInstanceAction:t,showPrepaidStorage:s}=e;const{customer_id:u,compute_stack_id:m}=(0,d.g)(),y=(0,d.Zp)(),N=(0,A.MW)(),$=(0,c.O$)(_.A,(e=>e.auth)),k=(0,c.O$)(_.A,(e=>e.hasCard)),C=(0,c.O$)(_.A,(e=>{var t,s;return"invoice.payment_failed"===(null===(t=e.customer)||void 0===t||null===(s=t.current_payment_status)||void 0===s?void 0:s.status)})),S=(0,c.O$)(h.A,(e=>e.compute)),E=(0,c.O$)(h.A,(e=>e.storage)),P=(0,c.O$)(h.A,(e=>e.is_local)),T=(0,c.O$)(h.A,(e=>!["CREATE_COMPLETE","UPDATE_COMPLETE"].includes(e.status))),R=(0,c.O$)(h.A,(e=>e.last_volume_resize)),I=(0,c.O$)(h.A,(e=>e.data_volume_size)),z=(0,c.O$)(_.A,(e=>e.products.cloud_storage.filter((e=>e.value.data_volume_size>=(null===E||void 0===E?void 0:E.data_volume_size))))),D=(0,c.O$)(_.A,(e=>e.subscriptions.cloud_storage.filter((e=>(e.value.data_volume_size===I||e.value.storage_quantity_available>=e.value.data_volume_size)&&e.value.data_volume_size>=(null===E||void 0===E?void 0:E.data_volume_size))))),[L,F]=(0,n.useState)({}),[M,U]=(0,n.useState)({compute_stack_id:m,customer_id:u,...E}),[H,B]=(0,n.useState)(!1),W=s?D:z,q=W.find((e=>e.value.data_volume_size===M.data_volume_size&&e.value.stripe_storage_plan_id===M.stripe_storage_plan_id&&e.value.storage_subscription_id===M.storage_subscription_id)),V=$.orgs.filter((e=>$.user_id===e.owner_user_id)).reduce(((e,t)=>e+t.free_cloud_instance_count),0)<v.A.free_cloud_instance_limit,Y=((null===M||void 0===M?void 0:M.storage_price)||0)+((null===S||void 0===S?void 0:S.compute_price)||0),Z=Y?`${(0,O.A)(Y.toFixed(2))}/${S.compute_interval}`:"FREE",G=!R||(Date.now()-new Date(R).getTime())/1e3/3600>6,K=()=>U({compute_stack_id:m,customer_id:u,...E});return p()(K,[s]),p()((()=>{B((null===E||void 0===E?void 0:E.data_volume_size)!==M.data_volume_size||(null===E||void 0===E?void 0:E.stripe_storage_plan_id)!==M.stripe_storage_plan_id||(null===E||void 0===E?void 0:E.storage_subscription_id)!==M.storage_subscription_id)}),[M]),p()((()=>{B(!1)}),[m]),p()((async()=>{const{submitted:e}=L;if(e){t("Updating");(await w({auth:$,...M})).error?(N.error("There was an error updating your instance. Please try again later."),t(!1)):(window._kmq&&window._kmq.push(["record","upgrade instance - disk size",{totalPrice:null===M||void 0===M?void 0:M.compute_price,currency:"USD",products:[{name:"storage",id:q.data_volume_size_string,price:(null===M||void 0===M?void 0:M.storage_price)||0}]}]),N.success("Instance update initialized successfully"),_.A.update((e=>{e.lastUpdate=Date.now()})),setTimeout((()=>y(`/o/${u}/instances`)),100))}}),[L]),T?(0,j.jsx)(l.A,{className:"error",children:(0,j.jsx)(o.A,{children:"instance updating. please wait."})}):(0,j.jsxs)(j.Fragment,{children:[(0,j.jsx)(x.Ay,{className:"react-select-container",classNamePrefix:"react-select",onChange:e=>{let{value:t}=e;return U({...M,...t})},options:W.filter((e=>e.value.active)),value:q,defaultValue:E,isSearchable:!1,isClearable:!1,isLoading:!W,placeholder:"Select Data Volume Size",styles:{placeholder:e=>({...e,textAlign:"center",width:"100%",color:"#BCBCBC"})}}),!H||M.storage_subscription_id||Y||P||V?H&&!G?(0,j.jsx)(l.A,{className:"error mt-3 text-start",children:(0,j.jsxs)(o.A,{children:["You may update disk size every 6 hours",(0,j.jsx)("br",{}),(0,j.jsx)("br",{}),"Last resize: ",new Date(R).toLocaleTimeString(),(0,j.jsx)("br",{}),(0,j.jsx)("br",{}),"Try again at: ",new Date(new Date(R).getTime()+216e5).toLocaleTimeString()]})}):H&&(null!==M&&void 0!==M&&M.storage_price||null!==S&&void 0!==S&&S.compute_price)&&C?(0,j.jsxs)("div",{className:"mt-3",children:[(0,j.jsx)(f.A,{}),(0,j.jsx)(b.A,{disabled:!H||L.submitted,label:"Update Credit Card",onClick:()=>y(`/o/${u}/billing?returnURL=/${u}/i/${m}/config`)})]}):H&&(null!==M&&void 0!==M&&M.storage_price||null!==S&&void 0!==S&&S.compute_price)&&!k?(0,j.jsx)(b.A,{disabled:!H||L.submitted,label:"Add Credit Card To Account",onClick:()=>y(`/o/${u}/billing?returnURL=/${u}/i/${m}/config`)}):H?(0,j.jsxs)(j.Fragment,{children:[(0,j.jsx)(g,{which:"storage",compute:null===S||void 0===S?void 0:S.compute_price_string_with_interval,storage:(null===M||void 0===M?void 0:M.storage_price_string_with_interval)||"FREE",total:Z}),(0,j.jsxs)(i.A,{children:[(0,j.jsx)(r.A,{children:(0,j.jsx)(a.A,{id:"cancelChange",onClick:K,title:"Cancel",block:!0,disabled:L.submitted,color:"grey",children:"Cancel"})}),(0,j.jsx)(r.A,{children:(0,j.jsx)(a.A,{id:"confirmChange",onClick:()=>F({submitted:!0}),title:"Confirm Instance Details",block:!0,disabled:!H||L.submitted,color:"success",children:"Update"})})]})]}):null:(0,j.jsx)(l.A,{className:"error mt-3",children:(0,j.jsxs)(o.A,{children:["You are limited to ",v.A.free_cloud_instance_limit," free cloud instance",1!==v.A.free_cloud_instance_limit?"s":""]})})]})};const $=function(e){let{setInstanceAction:t,showPrepaidCompute:s}=e;const{customer_id:u,compute_stack_id:m}=(0,d.g)(),y=(0,d.Zp)(),N=(0,A.MW)(),$=(0,c.O$)(_.A,(e=>e.auth)),k=(0,c.O$)(_.A,(e=>e.hasCard)),C=(0,c.O$)(_.A,(e=>{var t,s;return"invoice.payment_failed"===(null===(t=e.customer)||void 0===t||null===(s=t.current_payment_status)||void 0===s?void 0:s.status)})),S=(0,c.O$)(h.A,(e=>e.compute)),E=(0,c.O$)(h.A,(e=>e.storage)),P=(0,c.O$)(h.A,(e=>e.is_local)),T=(0,c.O$)(h.A,(e=>e.wavelength_zone_id)),R=(0,c.O$)(h.A,(e=>e.compute_subscription_id)),I=(0,c.O$)(h.A,(e=>!["CREATE_COMPLETE","UPDATE_COMPLETE"].includes(e.status))),z=(0,c.O$)(_.A,(e=>e.products[P?"local_compute":T?"wavelength_compute":"cloud_compute"])),D=(0,c.O$)(_.A,(e=>e.subscriptions[P?"local_compute":T?"wavelength_compute":"cloud_compute"].filter((e=>e.value.compute_subscription_id===R||e.value.compute_quantity_available)))),[L,F]=(0,n.useState)({}),[M,U]=(0,n.useState)({compute_stack_id:m,customer_id:u,...S}),[H,B]=(0,n.useState)(!1),W=s?D:z,q=W.find((e=>e.value.stripe_plan_id===M.stripe_plan_id&&e.value.compute_subscription_id===M.compute_subscription_id)),V=$.orgs.filter((e=>$.user_id===e.owner_user_id)).reduce(((e,t)=>e+t.free_cloud_instance_count),0)<v.A.free_cloud_instance_limit,Y=((null===E||void 0===E?void 0:E.storage_price)||0)+((null===M||void 0===M?void 0:M.compute_price)||0),Z=Y?`${(0,O.A)(Y.toFixed(2))}/${S.compute_interval}`:"FREE",G=()=>U({compute_stack_id:m,customer_id:u,...S});return p()(G,[s]),p()((()=>{B((null===S||void 0===S?void 0:S.stripe_plan_id)!==M.stripe_plan_id||M.compute_subscription_id!==(null===S||void 0===S?void 0:S.compute_subscription_id))}),[M]),p()((()=>{B(!1)}),[m]),p()((async()=>{const{submitted:e}=L;if(e)if(Y||M.compute_subscription_id||P||V){t("Updating");(await w({auth:$,...M})).error?(N.error("There was an error updating your instance. Please try again later."),t(!1)):(window._kmq&&window._kmq.push(["record","upgrade instance - RAM",{totalPrice:null===M||void 0===M?void 0:M.compute_price,currency:"USD",products:[{name:"compute",id:q.compute_ram_string,price:(null===M||void 0===M?void 0:M.compute_price)||0}]}]),N.success("Instance update initialized successfully"),_.A.update((e=>{e.lastUpdate=Date.now()})),setTimeout((()=>y(`/o/${u}/instances`)),100))}else N.error(`You are limited to ${v.A.free_cloud_instance_limit} free cloud instance${1!==v.A.free_cloud_instance_limit?"s":""}`),G(),F({})}),[L]),I?(0,j.jsx)(l.A,{className:"error",children:(0,j.jsx)(o.A,{children:"instance updating. please wait."})}):(0,j.jsxs)(j.Fragment,{children:[(0,j.jsx)(x.Ay,{className:"react-select-container",classNamePrefix:"react-select",onChange:e=>{let{value:t}=e;return U({...M,...t})},options:W.filter((e=>e.value.active)),value:q,defaultValue:S,isSearchable:!1,isClearable:!1,isLoading:!W,placeholder:"select a RAM allotment",styles:{placeholder:e=>({...e,textAlign:"center",width:"100%",color:"#BCBCBC"})}}),!H||Y||M.compute_subscription_id||P||V?H&&(null!==E&&void 0!==E&&E.storage_price||null!==M&&void 0!==M&&M.compute_price)&&C?(0,j.jsxs)("div",{className:"mt-3",children:[(0,j.jsx)(f.A,{}),(0,j.jsx)(b.A,{disabled:!H||L.submitted,label:"Update Credit Card",onClick:()=>y(`/o/${u}/billing?returnURL=/${u}/i/${m}/config`)})]}):H&&(null!==E&&void 0!==E&&E.storage_price||null!==M&&void 0!==M&&M.compute_price)&&!k?(0,j.jsx)(b.A,{disabled:!H||L.submitted,label:"Add Credit Card To Account",onClick:()=>y(`/o/${u}/billing?returnURL=/${u}/i/${m}/config`)}):H?(0,j.jsxs)(j.Fragment,{children:[(0,j.jsx)(g,{which:"compute",compute:M.compute_price_string_with_interval,storage:(null===E||void 0===E?void 0:E.storage_price_string_with_interval)||"FREE",total:Z}),(0,j.jsxs)(i.A,{children:[(0,j.jsx)(r.A,{children:(0,j.jsx)(a.A,{id:"cancelChange",onClick:G,title:"Cancel",block:!0,disabled:L.submitted,color:"grey",children:"Cancel"})}),(0,j.jsx)(r.A,{children:(0,j.jsx)(a.A,{id:"confirmChange",onClick:()=>F({submitted:!0}),title:"Confirm Instance Details",block:!0,disabled:!H||L.submitted,color:"success",children:"Update"})})]})]}):null:(0,j.jsx)(l.A,{className:"error mt-2",children:(0,j.jsxs)(o.A,{children:["You are limited to ",v.A.free_cloud_instance_limit," free cloud instance",1!==v.A.free_cloud_instance_limit?"s":""]})})]})};var k=s(5488),C=s(6404);const S=function(e){let{setInstanceAction:t}=e;const{customer_id:s,compute_stack_id:u}=(0,d.g)(),m=(0,d.Zp)(),x=(0,A.MW)(),v=(0,c.O$)(_.A,(e=>e.auth)),g=(0,c.O$)(h.A,(e=>e.instance_name)),f=(0,c.O$)(h.A,(e=>e.is_local)),b=(0,c.O$)(h.A,(e=>e.wavelength_zone_id)),y=(0,c.O$)(h.A,(e=>!["CREATE_COMPLETE","UPDATE_COMPLETE"].includes(e.status))),[w,O]=(0,n.useState)({}),[N,$]=(0,n.useState)({});return p()((async()=>{const{submitted:e}=w;if(e){const{delete_instance_name:e}=N;if(g!==e)O({error:"instance name is not correct"});else{t("Removing");(await(0,C.A)({auth:v,customer_id:s,compute_stack_id:u,wavelength_zone_id:b})).error?(x.error("There was an error removing your instance. Please try again later."),t(!1)):(x.success("Instance deletion initiated"),_.A.update((e=>{e.lastUpdate=Date.now()})),setTimeout((()=>m(`/o/${s}/instances`)),3e3))}}}),[w]),y?(0,j.jsx)(l.A,{className:"error",children:(0,j.jsx)(o.A,{children:"instance updating. please wait."})}):(0,j.jsxs)(j.Fragment,{children:[(0,j.jsx)(k.A,{id:"instance_name_remove",onChange:e=>$({delete_instance_name:e.target.value}),type:"text",title:"instance_name",placeholder:`Enter "${g}" here to confirm.`,value:N.delete_instance_name||""}),N.delete_instance_name===g&&(0,j.jsxs)(j.Fragment,{children:[(0,j.jsx)(l.A,{className:"my-2",children:(0,j.jsx)(o.A,{className:"px-2 pb-2 pt-3 text-small",children:f?(0,j.jsxs)("ul",{className:"text-small mb-0",children:[(0,j.jsxs)("li",{children:[(0,j.jsx)("b",{children:"DOES NOT"})," uninstall HarperDB."]}),(0,j.jsxs)("li",{children:[(0,j.jsx)("b",{children:"DOES"})," leave all your data intact."]}),(0,j.jsx)("li",{children:"REMOVES your instance license."}),(0,j.jsx)("li",{children:"STOPS recurring license charges."}),(0,j.jsx)("li",{children:"LIMITS instance to 1GB RAM."}),(0,j.jsx)("li",{children:"REMOVES instance from the Studio."}),(0,j.jsx)("li",{children:"RESTARTS the instance."})]}):(0,j.jsxs)("ul",{className:"text-small mb-0",children:[(0,j.jsxs)("li",{children:[(0,j.jsx)("b",{children:"THIS IS"})," an irreversible process."]}),(0,j.jsxs)("li",{children:[(0,j.jsx)("b",{children:"IT CANNOT"})," be undone."]}),(0,j.jsx)("li",{children:"DELETES your instance completely."}),(0,j.jsx)("li",{children:"STOPS recurring license charges."}),(0,j.jsx)("li",{children:"REMOVES instance from the Studio."})]})})}),(0,j.jsxs)(i.A,{children:[(0,j.jsx)(r.A,{children:(0,j.jsx)(a.A,{id:"cancelDeleteInstance",onClick:()=>$({delete_instance_name:""}),title:"Cancel",block:!0,disabled:w.submitted,color:"grey",children:"Cancel"})}),(0,j.jsx)(r.A,{children:(0,j.jsx)(a.A,{id:"removeInstance",onClick:()=>O({submitted:!0}),title:"Confirm Instance Details",block:!0,disabled:w.submitted,color:"danger",children:"Remove"})})]})]})]})};var E=s(135),P=s(5911),T=s(2010);const R=function(e){let{instanceAction:t,setInstanceAction:s}=e;const d=(0,A.MW)(),u=(0,c.O$)(h.A,(e=>e.auth)),m=(0,c.O$)(h.A,(e=>e.url)),_=(0,c.O$)(h.A,(e=>e.instance_name)),x=(0,c.O$)(h.A,(e=>!["CREATE_COMPLETE","UPDATE_COMPLETE"].includes(e.status))),[g,f]=(0,n.useState)({}),[b,y]=(0,n.useState)({});return p()((async()=>{const{submitted:e}=g;if(e){s("Restarting");const e=await(0,T.A)({auth:u,url:m});null!==e&&void 0!==e&&e.error&&(s(!1),d.error("There was an error restarting your instance. Please try again later."))}}),[g]),(0,E.A)((()=>{"Restarting"===t&&(async()=>{(await(0,P.A)({auth:u,url:m})).error||(y({}),f({}),s(!1),d.success("Instance restarted successfully"))})()}),v.A.refresh_content_interval),"Restarting"===t?(0,j.jsx)(l.A,{className:"error",children:(0,j.jsxs)(o.A,{children:[(0,j.jsx)("i",{className:"fa fa-spin fa-spinner me-2"}),"instance restarting. please wait."]})}):!v.A.is_local_studio&&x?(0,j.jsx)(l.A,{className:"error",children:(0,j.jsx)(o.A,{children:"instance updating. please wait."})}):(0,j.jsxs)(j.Fragment,{children:[(0,j.jsx)(k.A,{id:"instance_name_restart",onChange:e=>y({restart_instance_name:e.target.value}),type:"text",title:"instance_name",placeholder:`Enter "${_}" here to confirm.`,value:b.restart_instance_name||""}),b.restart_instance_name===_&&(0,j.jsxs)(j.Fragment,{children:[(0,j.jsx)(l.A,{className:"my-2",children:(0,j.jsx)(o.A,{className:"px-2 pb-2 pt-3 text-small",children:(0,j.jsxs)("ul",{className:"text-small mb-0",children:[(0,j.jsxs)("li",{children:[(0,j.jsx)("b",{children:"WILL"})," interrupt connectivity."]}),(0,j.jsxs)("li",{children:[(0,j.jsx)("b",{children:"WILL"})," leave all your data intact."]})]})})}),(0,j.jsxs)(i.A,{children:[(0,j.jsx)(r.A,{children:(0,j.jsx)(a.A,{onClick:()=>y({restart_instance_name:""}),title:"Cancel",block:!0,disabled:g.submitted,color:"grey",children:"Cancel"})}),(0,j.jsx)(r.A,{children:(0,j.jsx)(a.A,{onClick:()=>f({submitted:!0}),title:"Confirm Instance Details",block:!0,disabled:g.submitted,color:"danger",children:"Restart"})})]})]})]})};var I=s(1652),z=s(7666);const D=function(e){var t,s,n,a,d,u,m,p,_,x,A,g,f,b,y,w,O,N;let{clusterNodeName:$,instanceConfig:k}=e;const C=(0,c.O$)(h.A,(e=>e.url)),S=(0,c.O$)(h.A,(e=>e.auth)),E=(0,c.O$)(h.A,(e=>e.totalPriceStringWithInterval)),P=(0,c.O$)(h.A,(e=>e.compute)),T=(0,c.O$)(h.A,(e=>!!e.compute_subscription_id)),R=(0,c.O$)(h.A,(e=>!!e.storage_subscription_id)),D=(0,c.O$)(h.A,(e=>e.creation_date)),L=(0,c.O$)(h.A,(e=>e.instance_region)),F=(0,c.O$)(h.A,(e=>e.storage)),M=(0,c.O$)(h.A,(e=>e.is_local)),U=null!==S&&void 0!==S&&S.user?`${btoa(`${S.user}:${S.pass}`)}`:"...",H=M?"HARDWARE LIMIT":`${null===F||void 0===F?void 0:F.iops}`,B=D?new Date(D).toLocaleDateString():"N/A",{hostname:W,origin:q}=window.location,V=new URL(v.A.is_local_studio?q:C),Y=v.A.is_local_studio?`${null!==(m=k.operationsApi)&&void 0!==m&&null!==(p=m.network)&&void 0!==p&&p.securePort?"https://":"http://"}${W}:${(null===(_=k.operationsApi)||void 0===_||null===(x=_.network)||void 0===x?void 0:x.securePort)||(null===(A=k.operationsApi)||void 0===A||null===(g=A.network)||void 0===g?void 0:g.port)}`:`${null!==(t=k.operationsApi)&&void 0!==t&&null!==(s=t.network)&&void 0!==s&&s.securePort?"https://":"http://"}${V.hostname}:${(null===(n=k.operationsApi)||void 0===n||null===(a=n.network)||void 0===a?void 0:a.securePort)||(null===(d=k.operationsApi)||void 0===d||null===(u=d.network)||void 0===u?void 0:u.port)}`,Z=v.A.is_local_studio?`${null!==(w=k.http)&&void 0!==w&&w.securePort?"https://":"http://"}${W}:${(null===(O=k.http)||void 0===O?void 0:O.securePort)||(null===(N=k.http)||void 0===N?void 0:N.port)}`:`${null!==(f=k.http)&&void 0!==f&&f.securePort?"https://":"http://"}${V.hostname}:${(null===(b=k.http)||void 0===b?void 0:b.securePort)||(null===(y=k.http)||void 0===y?void 0:y.port)}`,G=(0,c.O$)(h.A,(e=>{var t;return null===(t=e.registration)||void 0===t?void 0:t.version})),[K,J]=(null===G||void 0===G?void 0:G.split("."))||[],Q=parseFloat(`${K}.${J}`);return(0,j.jsxs)(j.Fragment,{children:[(0,j.jsx)("span",{className:"floating-card-header",children:"instance overview"}),(0,j.jsx)(l.A,{className:"mt-3 mb-4 instance-details",children:(0,j.jsx)(o.A,{children:(0,j.jsxs)(i.A,{children:[(0,j.jsx)(r.A,{md:"4",xs:"12",children:(0,j.jsx)(I.A,{header:"Instance URL",className:"mb-3",children:(0,j.jsx)("div",{className:"nowrap-scroll",children:(0,j.jsx)(z.A,{text:Y})})})}),(0,j.jsx)(r.A,{md:"4",xs:"12",children:(0,j.jsx)(I.A,{header:(Q>=4.2?"Applications":"Custom Functions")+" URL",className:"mb-3",children:(0,j.jsx)("div",{className:"nowrap-scroll",children:(0,j.jsx)(z.A,{text:Z})})})}),(0,j.jsx)(r.A,{md:"4",xs:"12",children:(0,j.jsx)(I.A,{header:"Instance Node Name (for clustering)",className:"mb-3",children:(0,j.jsx)("div",{className:"nowrap-scroll",children:$?(0,j.jsx)(z.A,{text:$}):"clustering not enabled"})})}),!v.A.is_local_studio&&(0,j.jsxs)(j.Fragment,{children:[(0,j.jsx)(r.A,{md:"4",xs:"12",children:(0,j.jsx)(I.A,{header:"Instance API Auth Header (this user)",className:"mb-3",children:(0,j.jsx)("div",{className:"nowrap-scroll",children:(0,j.jsx)(z.A,{text:U,beforeText:"Basic ",obscure:!0})})})}),(0,j.jsx)(r.A,{md:"2",sm:"4",xs:"6",children:(0,j.jsx)(I.A,{header:"Created",className:"mb-3",children:(0,j.jsx)("div",{className:"nowrap-scroll",children:B})})}),L&&(0,j.jsx)(r.A,{md:"2",sm:"4",xs:"6",children:(0,j.jsx)(I.A,{header:"Region",className:"mb-3",children:(0,j.jsx)("div",{className:"nowrap-scroll",children:L})})}),(0,j.jsx)(r.A,{md:"2",sm:"4",xs:"6",children:(0,j.jsx)(I.A,{header:"Total Price",className:"mb-3",children:(0,j.jsx)("div",{className:"nowrap-scroll",children:E})})}),(0,j.jsx)(r.A,{md:"2",sm:"4",xs:"6",children:(0,j.jsx)(I.A,{header:"RAM",className:"mb-3",children:(0,j.jsxs)("div",{className:"nowrap-scroll",children:[null===P||void 0===P?void 0:P.compute_ram_string," ",T&&"(PREPAID)"]})})}),!M&&(0,j.jsxs)(j.Fragment,{children:[(0,j.jsx)(r.A,{md:"2",sm:"4",xs:"6",children:(0,j.jsx)(I.A,{header:"Storage",className:"mb-3 text-nowrap",children:(0,j.jsxs)("div",{className:"nowrap-scroll",children:[null===F||void 0===F?void 0:F.data_volume_size_string," ",R&&"(PREPAID)"]})})}),(0,j.jsx)(r.A,{md:"2",sm:"4",xs:"6",children:(0,j.jsx)(I.A,{header:"Disk IOPS",className:"mb-3 text-nowrap",children:(0,j.jsx)("div",{className:"nowrap-scroll",children:H})})})]})]})]})})})]})};var L=s(4979),F=s(3150),M=s(3628),U=s(7596),H=s(5012),B=s(2594);const W=function(e){let{instanceConfig:t}=e;const s=(0,c.O$)(_.A,(e=>e.theme));return(0,j.jsx)(B.A,{placeholder:t,height:"calc(100vh - 566px)",theme:"light_mitsuketa_tribute",viewOnly:!0,colors:{background:"transparent",default:"dark"===s?"#aaa":"#000",colon:"dark"===s?"#aaa":"#000",keys:"dark"===s?"#aaa":"#000",string:"#13c664",number:"#ea4c89",primitive:"#ffa500"},style:{warningBox:{display:"none"},body:{padding:"8px 0 0 0"}},locale:H.A,width:"100%",confirmGood:!1,waitAfterKeyPress:3e4})};var q=s(8750);const V=function(){return(0,j.jsx)("div",{className:"configLoader",children:(0,j.jsx)("i",{className:"fa fa-spinner fa-spin"})})};const Y=function(){const{customer_id:e,compute_stack_id:t}=(0,d.g)(),s=(0,c.O$)(_.A,(e=>e.auth)),m=(0,c.O$)(_.A,(e=>e.theme)),x=(0,c.O$)(h.A,(e=>e.auth),[t]),A=(0,c.O$)(h.A,(e=>e.url),[t]),v=(0,c.O$)(_.A,(e=>{var t;return null===(t=e.customer)||void 0===t?void 0:t.stripe_id})),g=(0,c.O$)(h.A,(e=>e.is_local),[t]),f=(0,c.O$)(h.A,(e=>{var t;return parseFloat(null===(t=e.registration)||void 0===t?void 0:t.version)>=4?"nats":"socketcluster"}),[t]),b=(0,c.O$)(h.A,(e=>e.compute_subscription_id),[t]),y=(0,c.O$)(h.A,(e=>e.storage_subscription_id),[t]),w=(0,c.O$)(_.A,(t=>{var s,n;return null===(s=t.auth)||void 0===s||null===(n=s.orgs)||void 0===n?void 0:n.find((t=>{var s;return(null===(s=t.customer_id)||void 0===s?void 0:s.toString())===e}))}),[e]),O="owner"===(null===w||void 0===w?void 0:w.status),[k,C]=(0,n.useState)(!1),[E,P]=(0,n.useState)(!1),[T,I]=(0,n.useState)(""),z=(0,c.O$)(_.A,(e=>{var t;return(null===(t=e.subscriptions[g?"local_compute":"cloud_compute"])||void 0===t?void 0:t.filter((e=>!e.value.compute_subscription_name||e.value.compute_quantity_available)))||[]})),H=(0,c.O$)(_.A,(e=>{var t,s;return(null===(t=e.subscriptions)||void 0===t||null===(s=t.cloud_storage)||void 0===s?void 0:s.filter((e=>!e.value.storage_subscription_name||e.value.storage_quantity_available)))||[]})),[B,Y]=(0,n.useState)(!!b),[Z,G]=(0,n.useState)(!!y);return p()((async()=>{s&&e&&v&&(0,U.A)({auth:s,customer_id:e,stripe_id:v})}),[s,e,v]),p()((async()=>{if(x&&A){I("..."),P(!1);const e=await(0,q.A)({auth:x,url:A});if(!e.error){const t="nats"===f?e.clustering.nodeName:e.NODE_NAME;I(t),P(e)}}}),[x]),k&&"Restarting"!==k?(0,j.jsx)(L.A,{header:`${k} Instance`,spinner:!0}):(0,j.jsxs)(i.A,{id:"config",children:[(0,j.jsx)(r.A,{xs:"12",children:(0,j.jsx)(u.tH,{onError:(e,t)=>(0,M.A)({error:{message:e.message,componentStack:t}}),FallbackComponent:F.A,children:(0,j.jsx)(D,{clusterNodeName:T,instanceConfig:E})})}),O&&"akamai"!==m&&(0,j.jsxs)(r.A,{lg:"3",sm:"6",xs:"12",children:[(0,j.jsxs)(i.A,{children:[(0,j.jsx)(r.A,{children:(0,j.jsx)("span",{className:"floating-card-header",children:"update ram"})}),(0,j.jsx)(r.A,{className:"text-end",children:(!!b||!!z.length)&&(0,j.jsxs)("span",{className:"floating-card-header",children:["prepaid:"," ",(0,j.jsx)(a.A,{id:"showPrepaidCompute",color:"link",onClick:()=>Y(!B),children:(0,j.jsx)("i",{className:"fa fa-lg fa-toggle-"+(B?"on":"off")})})]})})]}),(0,j.jsx)(l.A,{className:"my-3",children:(0,j.jsx)(o.A,{children:(0,j.jsx)(u.tH,{onError:(e,t)=>(0,M.A)({error:{message:e.message,componentStack:t}}),FallbackComponent:F.A,children:E?(0,j.jsx)($,{setInstanceAction:C,showPrepaidCompute:B}):(0,j.jsx)(V,{})})})})]}),O&&!g&&"akamai"!==m&&(0,j.jsxs)(r.A,{lg:"3",sm:"6",xs:"12",children:[(0,j.jsxs)(i.A,{children:[(0,j.jsx)(r.A,{children:(0,j.jsx)("span",{className:"floating-card-header",children:"update storage"})}),(0,j.jsx)(r.A,{className:"text-end",children:(!!y||!!H.length)&&(0,j.jsxs)("span",{className:"floating-card-header",children:["prepaid:"," ",(0,j.jsx)(a.A,{id:"showPrepaidStorage",color:"link",onClick:()=>G(!Z),children:(0,j.jsx)("i",{className:"fa fa-lg fa-toggle-"+(Z?"on":"off")})})]})})]}),(0,j.jsx)(l.A,{className:"my-3",children:(0,j.jsx)(o.A,{children:(0,j.jsx)(u.tH,{onError:(e,t)=>(0,M.A)({error:{message:e.message,componentStack:t}}),FallbackComponent:F.A,children:E?(0,j.jsx)(N,{setInstanceAction:C,showPrepaidStorage:Z}):(0,j.jsx)(V,{})})})})]}),O&&(0,j.jsxs)(r.A,{lg:"3",sm:"6",xs:"12",children:[(0,j.jsx)("span",{className:"floating-card-header",children:"remove instance"}),(0,j.jsx)(l.A,{className:"my-3",children:(0,j.jsx)(o.A,{children:(0,j.jsx)(u.tH,{onError:(e,t)=>(0,M.A)({error:{message:e.message,componentStack:t}}),FallbackComponent:F.A,children:(0,j.jsx)(S,{setInstanceAction:C,instanceAction:k})})})})]}),(0,j.jsxs)(r.A,{lg:"3",sm:"6",xs:"12",children:[(0,j.jsx)("span",{className:"floating-card-header",children:"restart instance"}),(0,j.jsx)(l.A,{className:"my-3",children:(0,j.jsx)(o.A,{children:(0,j.jsx)(u.tH,{onError:(e,t)=>(0,M.A)({error:{message:e.message,componentStack:t}}),FallbackComponent:F.A,children:(0,j.jsx)(R,{setInstanceAction:C,instanceAction:k})})})})]}),(0,j.jsxs)(r.A,{xs:"12",children:[(0,j.jsx)("span",{className:"floating-card-header",children:"instance config (read only)"}),(0,j.jsx)(l.A,{className:"mt-3 mb-4",children:(0,j.jsx)(o.A,{className:"p-0",children:(0,j.jsx)(u.tH,{onError:(e,t)=>(0,M.A)({error:{message:e.message,componentStack:t}}),FallbackComponent:F.A,children:E?(0,j.jsx)(W,{instanceConfig:E}):(0,j.jsx)(V,{})})})})]})]})}},5887:(e,t,s)=>{s.d(t,{A:()=>i});s(9950);var n=s(4414);const i=function(){return(0,n.jsxs)("div",{className:"text-danger",children:[(0,n.jsx)("i",{children:"Your most recent card payment failed. Please update your card below."}),(0,n.jsx)("hr",{className:"mt-3 mb-2"})]})}},1652:(e,t,s)=>{s.d(t,{A:()=>i});s(9950);var n=s(4414);const i=function(e){let{children:t,header:s,subheader:i,maxHeight:r="auto",minHeight:a="auto",className:l}=e;return(0,n.jsxs)("div",{className:`content-container ${l}`,children:[(0,n.jsxs)("div",{className:"header-container",children:[(0,n.jsx)("span",{className:"header",children:s}),(0,n.jsx)("span",{className:"subheader",children:i})]}),(0,n.jsx)("div",{className:"auto"!==r?"scrollable":"",style:{maxHeight:r,minHeight:a},children:t})]})}},7666:(e,t,s)=>{s.d(t,{A:()=>c});var n=s(9950),i=s(7176),r=s(6114),a=s(3452),l=s(7348),o=s(4414);const c=function(e){let{text:t,beforeText:s,afterText:c,obscure:d=!1}=e;const u=(0,l.MW)(),m=navigator.clipboard,p=(0,n.useCallback)((async e=>{e.stopPropagation(),await navigator.clipboard.writeText(t),u.success("Text copied to clipboard")}),[u,t]);return(0,o.jsxs)(i.A,{className:"copyable-text-holder g-0",children:[m&&t&&(0,o.jsx)(r.A,{className:"copy-icon",children:(0,o.jsx)(a.A,{title:"Copy this value",onClick:p,color:"link",children:(0,o.jsx)("i",{className:"fa fa-copy text-small"})})}),(0,o.jsx)(r.A,{className:"text-container",children:t?(0,o.jsxs)(o.Fragment,{children:[s,d?t.replace(/./g,"*"):t,c]}):(0,o.jsx)("span",{children:"\xa0"})})]})}},1943:(e,t,s)=>{s.d(t,{A:()=>r});s(9950);var n=s(3452),i=s(4414);const r=function(e){let{disabled:t,label:s,onClick:r}=e;return(0,i.jsx)(n.A,{onClick:r,title:s,block:!0,disabled:t,color:"danger",className:"mt-2",id:"visitCreditCard",children:s})}},8750:(e,t,s)=>{s.d(t,{A:()=>i});var n=s(127);const i=async e=>{let{auth:t,url:s}=e;return(0,n.A)({operation:{operation:"get_configuration"},auth:t,url:s})}},2010:(e,t,s)=>{s.d(t,{A:()=>r});var n=s(127),i=s(5269);const r=async e=>{let{auth:t,url:s}=e;return i.A.update((e=>{e.restarting=!0})),(0,n.A)({operation:{operation:"restart"},auth:t,url:s})}},6404:(e,t,s)=>{s.d(t,{A:()=>i});var n=s(2714);const i=async e=>{let{auth:t,customer_id:s,compute_stack_id:i,is_verizon:r,is_akamai:a}=e;return(0,n.A)({endpoint:r?"wl/removeWavelengthInstance":a?"removeAkamaiInstance":"removeInstance",method:"POST",payload:{customer_id:s,compute_stack_id:i,compute_stack_wl_id:i},auth:t})}},5488:(e,t,s)=>{s.d(t,{A:()=>g});var n=s(9950),i=s(1942),r=s.n(i),a=s(8738),l=s.n(a),o=s(1497);function c(e){return c="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},c(e)}var d=["className","cssModule","type","bsSize","valid","invalid","tag","addon","plaintext","innerRef"];function u(){return u=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var s=arguments[t];for(var n in s)Object.prototype.hasOwnProperty.call(s,n)&&(e[n]=s[n])}return e},u.apply(this,arguments)}function m(e,t){if(null==e)return{};var s,n,i=function(e,t){if(null==e)return{};var s,n,i={},r=Object.keys(e);for(n=0;n<r.length;n++)s=r[n],t.indexOf(s)>=0||(i[s]=e[s]);return i}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(n=0;n<r.length;n++)s=r[n],t.indexOf(s)>=0||Object.prototype.propertyIsEnumerable.call(e,s)&&(i[s]=e[s])}return i}function p(e,t){for(var s=0;s<t.length;s++){var n=t[s];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function h(e,t){return h=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},h(e,t)}function _(e){var t=function(){if("undefined"===typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"===typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var s,n=A(e);if(t){var i=A(this).constructor;s=Reflect.construct(n,arguments,i)}else s=n.apply(this,arguments);return function(e,t){if(t&&("object"===c(t)||"function"===typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return x(e)}(this,s)}}function x(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function A(e){return A=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},A(e)}var v={children:r().node,type:r().string,size:r().oneOfType([r().number,r().string]),bsSize:r().string,valid:r().bool,invalid:r().bool,tag:o.Wx,innerRef:r().oneOfType([r().object,r().func,r().string]),plaintext:r().bool,addon:r().bool,className:r().string,cssModule:r().object},j=function(e){!function(e,t){if("function"!==typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&h(e,t)}(a,e);var t,s,i,r=_(a);function a(e){var t;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,a),(t=r.call(this,e)).getRef=t.getRef.bind(x(t)),t.focus=t.focus.bind(x(t)),t}return t=a,(s=[{key:"getRef",value:function(e){this.props.innerRef&&this.props.innerRef(e),this.ref=e}},{key:"focus",value:function(){this.ref&&this.ref.focus()}},{key:"render",value:function(){var e=this.props,t=e.className,s=e.cssModule,i=e.type,r=void 0===i?"text":i,a=e.bsSize,c=e.valid,p=e.invalid,h=e.tag,_=e.addon,x=e.plaintext,A=e.innerRef,v=m(e,d),j=["switch","radio","checkbox"].indexOf(r)>-1,g="select"===r,f="range"===r,b=h||(g||"textarea"===r?r:"input"),y="form-control";x?(y="".concat(y,"-plaintext"),b=h||"input"):f?y="form-range":g?y="form-select":j&&(y=_?null:"form-check-input"),v.size&&/\D/g.test(v.size)&&((0,o.mc)('Please use the prop "bsSize" instead of the "size" to bootstrap\'s input sizing.'),a=v.size,delete v.size);var w=(0,o.qO)(l()(t,p&&"is-invalid",c&&"is-valid",!!a&&(g?"form-select-".concat(a):"form-control-".concat(a)),y),s);return("input"===b||h&&"function"===typeof h)&&(v.type="switch"===r?"checkbox":r),v.children&&!x&&"select"!==r&&"string"===typeof b&&"select"!==b&&((0,o.mc)('Input with a type of "'.concat(r,'" cannot have children. Please use "value"/"defaultValue" instead.')),delete v.children),n.createElement(b,u({},v,{ref:A,className:w,"aria-invalid":p}))}}])&&p(t.prototype,s),i&&p(t,i),Object.defineProperty(t,"prototype",{writable:!1}),a}(n.Component);j.propTypes=v;const g=j}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunkharperdb_studio=self.webpackChunkharperdb_studio||[]).push([[449],{7105:(e,s,a)=>{a.r(s),a.d(s,{default:()=>L});var t=a(9950),r=a(7176),l=a(6114),i=a(135),n=a(4084),c=a(8156),o=a(6713),d=a(9435),u=a(5996),m=a(5269),h=a(3452),x=a(4549),g=a(4414);const p=function(e){let{totalRecords:s,loading:a,autoRefresh:t,setAutoRefresh:i,showFilter:n,filtered:c,setLastUpdate:o,toggleFilter:d,setShowChartModal:m}=e;return(0,g.jsxs)(r.A,{className:"floating-card-header",children:[(0,g.jsxs)(l.A,{xs:"12",md:"3",children:[(0,x.A)(s)," record",1!==s?"s":""]}),(0,g.jsxs)(l.A,{xs:"12",md:"9",className:"text-md-end",children:[(0,g.jsx)("br",{className:"d-block d-md-none"}),!u.A.is_local_studio&&(0,g.jsxs)(g.Fragment,{children:[(0,g.jsxs)(h.A,{id:"createChart",color:"link",title:"Create Chart",onClick:()=>m(!0),children:[(0,g.jsx)("i",{className:"fa fa-lg fa-chart-line"}),(0,g.jsx)("span",{className:"ms-2",children:"create chart"})]}),(0,g.jsx)("span",{className:"mx-3 text",children:"|"})]}),(0,g.jsx)(h.A,{color:"link",title:"Refresh Results",className:"me-2",onClick:()=>o(Date.now()),children:(0,g.jsx)("i",{className:"fa "+(a?"fa-spinner fa-spin":"fa-sync-alt")})}),(0,g.jsxs)(h.A,{color:"link",title:"Turn on autofresh",onClick:()=>i(!t),children:[(0,g.jsx)("span",{className:"me-2",children:"auto"}),(0,g.jsx)("i",{className:"fa fa-lg fa-toggle-"+(t?"on":"off")})]}),(0,g.jsx)("span",{className:"mx-3 text",children:"|"}),(0,g.jsx)(h.A,{color:"link",title:"Filter Results",className:"me-2",onClick:()=>d({filtered:n?[]:c,page:0,showFilter:!n}),children:(0,g.jsx)("i",{className:"fa fa-search"})})]})]})};var j=a(6685),b=a(1340),f=a(877),y=a(5488),A=a(9690),N=a(9452),v=a(8429),C=a(7348),k=a(5553),_=a(2714);var S=a(455);const q=[{type:"line"},{type:"bar"},{type:"area"},{type:"radar"},{type:"pie",singleSeriesAttribute:!0},{type:"donut",singleSeriesAttribute:!0},{type:"single value",singleSeriesAttribute:!0}];var w=a(5379);const P=function(e){var s,a;let{setShowChartModal:i,tableData:d,query:u}=e;const{compute_stack_id:m,customer_id:x}=(0,v.g)(),p=(0,C.MW)(),[P,F]=(0,t.useState)({customer_id:x,compute_stack_id:m,name:!1,type:"line",query:u,labelAttribute:!1,seriesAttributes:[],shared:!1}),[R,z]=(0,t.useState)(!1),$=(0,o.O$)(k.A,(e=>e.auth)),O=(0,o.O$)(k.A,(e=>e.theme)),E=Object.keys(d[0]),D=[...P.seriesAttributes,P.labelAttribute,"__createdtime__","__updatedtime__"],T="single value"===P.type?null===(s=P.seriesAttributes)||void 0===s?void 0:s.length:P.type&&(null===(a=P.seriesAttributes)||void 0===a?void 0:a.length)&&P.labelAttribute,B="single value"===P.type?P.seriesAttributes.length&&P.name:P.type&&P.labelAttribute&&P.seriesAttributes.length&&P.name,H=q.map((e=>e.singleSeriesAttribute&&e.type)).includes(P.type),Q=(0,S.A)({title:P.name||"chart name",type:P.type,labels:d.map((e=>e[P.labelAttribute])),theme:O}),L=H?d.map((e=>e[P.seriesAttributes[0]])):P.seriesAttributes.map((e=>({name:e,data:d.map((s=>s[e]))})));return(0,g.jsxs)(j.A,{id:"chart-modal",size:"lg",isOpen:!0,toggle:()=>i(!1),className:O,centered:!0,fade:!1,children:[(0,g.jsx)(b.A,{toggle:()=>i(!1),children:"Create Chart From This Query Data"}),(0,g.jsxs)(f.A,{children:[(0,g.jsxs)(r.A,{children:[(0,g.jsx)(l.A,{xs:"12",className:"py-2 query-text",children:(0,g.jsx)("i",{children:u})}),(0,g.jsx)(l.A,{xs:"12",children:(0,g.jsx)("hr",{className:"my-2"})}),(0,g.jsx)(l.A,{lg:"4",children:(0,g.jsx)(A.Ay,{className:"react-select-container limited-height",classNamePrefix:"react-select",onChange:e=>{let{value:s}=e;return(e=>{const s=q.find((s=>s.type===e)).singleSeriesAttribute!==q.find((e=>e.type===P.type)).singleSeriesAttribute;F(s?{...P,labelAttribute:!1,seriesAttributes:[],type:e}:{...P,type:e})})(s)},options:q.map((e=>({label:`${e.type}`,value:e.type}))),value:{label:`chart type: ${P.type}`,value:P.type},isSearchable:!1,isClearable:!1,placeholder:"Chart Type",styles:{placeholder:e=>({...e,textAlign:"center",width:"100%",color:"#BCBCBC"})}})}),(0,g.jsx)(l.A,{xs:"12",className:"d-block d-lg-none",children:(0,g.jsx)("hr",{className:"my-2"})}),(0,g.jsx)(l.A,{lg:"4",children:(0,g.jsx)(A.Ay,{className:"react-select-container limited-height",classNamePrefix:"react-select",onChange:e=>{let{value:s}=e;return a=s,F({...P,seriesAttributes:H?[a]:[...P.seriesAttributes,a]});var a},options:E.filter((e=>!D.includes(e))).sort().map((e=>({label:e,value:e}))),value:H&&P.seriesAttributes.length?{label:`data column: ${P.seriesAttributes[0]}`,value:P.seriesAttributes[0]}:null,isSearchable:!1,isClearable:!1,isDisabled:!P.type,placeholder:(H?"select":"add")+" data column",styles:{placeholder:e=>({...e,textAlign:"center",width:"100%",color:"#BCBCBC"})}})}),(0,g.jsx)(l.A,{lg:"4",children:"single value"!==P.type&&(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)("hr",{className:"d-block d-lg-none my-2"}),(0,g.jsx)(A.Ay,{className:"react-select-container limited-height",classNamePrefix:"react-select",onChange:e=>{let{value:s}=e;return a=s,F({...P,labelAttribute:a});var a},options:E.filter((e=>!["__createdtime__","__updatedtime__"].includes(e))).sort().map((e=>({label:e,value:e}))),value:P.labelAttribute?{label:`${H?"label":"x-axis"}: ${P.labelAttribute}`,value:P.labelAttribute}:null,isSearchable:!1,isClearable:!1,isDisabled:!P.type,placeholder:`select ${H?"label":"x-axis"} column`,styles:{placeholder:e=>({...e,textAlign:"center",width:"100%",color:"#BCBCBC"})}})]})}),(0,g.jsx)(l.A,{xs:"12",children:(0,g.jsx)("hr",{className:"my-2"})}),(0,g.jsx)(l.A,{lg:"4",children:(0,g.jsx)(y.A,{id:"chart_name",type:"text",placeholder:"chart name",onChange:e=>F({...P,name:e.target.value})})}),(0,g.jsx)(l.A,{xs:"12",className:"d-block d-lg-none",children:(0,g.jsx)("hr",{className:"my-2"})}),(0,g.jsxs)(l.A,{lg:"4",className:"py-2 text-nowrap d-flex justify-content-center align-items-center",children:[(0,g.jsx)(h.A,{className:"me-2",color:"link",onClick:()=>F({...P,shared:!P.shared}),children:(0,g.jsx)("i",{className:"fa fa-lg text-purple fa-toggle-"+(P.shared?"on":"off")})}),"visible to all org users"]}),(0,g.jsx)(l.A,{xs:"12",className:"d-block d-lg-none",children:(0,g.jsx)("hr",{className:"my-2"})}),(0,g.jsx)(l.A,{lg:"4",children:(0,g.jsx)(h.A,{onClick:async()=>{z(!0);const e=await(async e=>{let{auth:s,customer_id:a,compute_stack_id:t,name:r,type:l,query:i,labelAttribute:n,seriesAttributes:c,shared:o}=e;return(0,_.A)({endpoint:"addChart",method:"POST",auth:s,payload:{user_id:s.user_id,customer_id:a,compute_stack_id:t,name:r,type:l,query:i,labelAttribute:n,seriesAttributes:c,shared:o}})})({auth:$,...P});e.error?(p.error(e.message),z(!1)):(p.success(e.message),i(!1))},block:!0,disabled:!B||R,color:"success",children:R?(0,g.jsx)("i",{className:"fa fa-spin fa-spinner"}):(0,g.jsx)("span",{children:"Add Chart"})})})]}),!H&&P.seriesAttributes.length?(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)("hr",{className:"my-2"}),(0,g.jsx)("div",{className:"",children:P.seriesAttributes.map((e=>(0,g.jsxs)(h.A,{color:"danger",size:"sm",className:"me-2",onClick:()=>(e=>{const s=P.seriesAttributes.indexOf(e);P.seriesAttributes.splice(s,1),F({...P,seriesAttributes:P.seriesAttributes})})(e),children:["[x] ",e]},e)))})]}):null,(0,g.jsx)("hr",{className:"my-2"}),(0,g.jsx)("div",{className:"chart-holder",children:T&&"single value"===P.type?(0,g.jsx)(n.A,{children:(0,g.jsxs)(c.A,{className:"single-value-chart",children:[(0,g.jsx)("div",{className:"title",children:P.name||"chart name"}),(0,g.jsx)("h1",{children:(0,w.A)(L[0])?L[0].toFixed(2):L[0]})]})}):T?(0,g.jsx)(N.A,{options:Q,series:L,type:P.type,height:220}):(0,g.jsxs)("div",{className:"text-center py-5 text-grey",children:["please choose chart ",!P.type&&"type, ","label and data"]})})]})]})};var F=a(306);const R=function(e){let{message:s,loading:a=!1,error:t=!1,accessErrors:r=!1,cancel:l=!1}=e;const i=r&&r.filter((e=>"table"===e.type)),o=r&&r.filter((e=>"attribute"===e.type));return(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)("div",{className:"floating-card-header",children:"\xa0"}),(0,g.jsx)(n.A,{className:"my-3",children:(0,g.jsx)(c.A,{children:(0,g.jsxs)("div",{className:"empty-prompt",children:[(0,g.jsxs)("div",{className:"mb-2",children:["\xa0",a&&(0,g.jsx)("i",{className:"fa fa-spinner fa-spin"}),"\xa0"]}),s&&(0,g.jsxs)("div",{className:"mb-2 "+(t?"text-danger":""),children:["\xa0",s,"\xa0"]}),a&&l&&(0,g.jsx)(h.A,{color:"danger",size:"sm",className:"px-3",onClick:l,children:"cancel query"}),t&&i&&i.length?(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)("hr",{className:"my-4"}),(0,g.jsx)("ul",{children:i.map((e=>(0,g.jsxs)("li",{className:"mb-2",children:[e.schema," > ","attribute"===e.type&&(0,g.jsxs)("span",{children:[e.table," >"]})," ",(0,g.jsx)("b",{children:e.entity}),": ",e.type," requires ",(0,g.jsx)("b",{children:e.permission})," permissions"]},`${e.schema}${e.table}${e.entity}${e.permission}`)))}),(0,g.jsx)("hr",{})]}):null,t&&o&&(0,g.jsxs)(g.Fragment,{children:[(0,g.jsx)("hr",{className:"my-4"}),(0,g.jsx)("ul",{children:o.map((e=>(0,g.jsxs)("li",{className:"mb-2",children:[e.schema," > ","attribute"===e.type&&(0,g.jsxs)("span",{children:[e.table," >"]})," ",(0,g.jsx)("b",{children:e.entity}),": ",e.type," requires ",(0,g.jsx)("b",{children:e.permission})," permissions"]},`${e.schema}${e.table}${e.entity}${e.permission}`)))})]})]})})})]})};var z=a(3150),$=a(3628),O=a(4343);const E={tableData:!1,totalRecords:0,dataTableColumns:[],filtered:[],sorted:[],page:0,totalPages:1,pageSize:20,autoRefresh:!1,showFilter:!1,lastUpdate:!1};let D;const T=function(e){var s;let{query:a}=e;const[r,l]=(0,t.useState)(),h=(0,o.O$)(m.A,(e=>e.auth)),x=(0,o.O$)(m.A,(e=>e.url)),[j,b]=(0,t.useState)(E),[f,y]=(0,t.useState)(!1),[A,N]=(0,t.useState)(!1);return(0,t.useEffect)((()=>{let e=!0;return(async()=>{if(a.query&&a.lastUpdate){D&&D.abort(),D=new AbortController,N(!0);const t=await(async e=>{let{query:s,auth:a,url:t,signal:r}=e;try{const e=await(0,F.A)({sql:s,auth:a,url:t,signal:r});if(e.error)return{message:e.message,error:!0,access_errors:e.access_errors};if(e.message)return{message:e.message};const l=e.length,i=l?Object.keys(e[0]):[],n=i.filter((e=>!["__createdtime__","__updatedtime__"].includes(e))).sort();return i.includes("__createdtime__")&&n.push("__createdtime__"),i.includes("__updatedtime__")&&n.push("__updatedtime__"),{tableData:e,totalRecords:l,dataTableColumns:n.map((e=>({Header:e.toString(),accessor:s=>s[e.toString()]})))}}catch(l){return{message:l,error:!0}}})({query:a.query.replace(/\n/g," ").trim(),auth:h,url:x,signal:D.signal});if(N(!1),t.error&&"Aborted"===t.message)b({...j,message:"query canceled, please execute a new query to proceed",error:!1});else if(t.error)b({...j,message:`error fetching data: ${t.message}`,access_errors:t.access_errors,error:!0});else if(t.message)b({...j,message:t.message,error:!1});else if(e){var s;b({...j,...t,totalPages:Math.ceil(((null===(s=t.tableData)||void 0===s?void 0:s.length)||20)/20),error:!1,message:!t.totalRecords&&"no records matched your query",sorted:[]})}}})(),()=>{var s;null===(s=D)||void 0===s||s.abort(),e=!1}}),[a,r]),(0,t.useEffect)((()=>{b(E)}),[a.query]),(0,i.A)((()=>{j.autoRefresh&&!A&&l(Date.now())}),u.A.refresh_content_interval),A||j.message||j.access_errors?(0,g.jsx)(R,{error:j.error,accessErrors:j.access_errors,loading:A,message:!A&&j.message,cancel:()=>{D&&D.abort(),b(E),N(!1)}}):null!==(s=j.tableData)&&void 0!==s&&s.length?(0,g.jsxs)(d.tH,{onError:(e,s)=>(0,$.A)({error:{message:e.message,componentStack:s}}),FallbackComponent:z.A,children:[(0,g.jsx)(p,{totalRecords:j.totalRecords,loading:A,showFilter:j.showFilter,filtered:j.filtered,toggleFilter:e=>b({...j,...e}),autoRefresh:j.autoRefresh,setAutoRefresh:()=>b({...j,autoRefresh:!j.autoRefresh}),setLastUpdate:l,setShowChartModal:y}),(0,g.jsx)(n.A,{className:"my-3",children:(0,g.jsx)(c.A,{className:"react-table-holder",children:(0,g.jsx)(O.A,{columns:j.dataTableColumns||[],data:j.tableData||[],currentPage:j.page,pageSize:j.pageSize,totalPages:j.totalPages,showFilter:j.showFilter,sorted:j.sorted,loading:A&&!j.autoRefresh,onFilteredChange:e=>b({...j,filtered:e}),onSortedChange:e=>b({...j,sorted:e}),onPageChange:e=>b({...j,pageSize:e}),onPageSizeChange:e=>b({...j,page:0,pageSize:e})})})}),f&&(0,g.jsx)(P,{setShowChartModal:y,tableData:j.tableData,query:a.query.replace(/\n/g," ").trim()})]}):(0,g.jsx)(R,{message:"please execute a SQL query to proceed"})};const B=function(e){let{setQuery:s,query:a}=e;const[i,o]=(0,t.useState)(""),[u,m]=(0,t.useState)(!1),x=(0,t.createRef)();return(0,t.useEffect)((()=>{a&&(m({submitted:!1}),o(a.query||a),x.current.focus())}),[a]),(0,t.useEffect)((()=>{const e=i,a=e.length?e.replace(/[\t\n\r]/gm,""):"";u.submitted&&a.length?(s({lastUpdate:Date.now(),query:i.trim()}),o(i.trim()),m({submitted:!1})):u.submitted&&(o(""),m({submitted:!1}))}),[u]),(0,g.jsx)(d.tH,{onError:(e,s)=>(0,$.A)({error:{message:e.message,componentStack:s}}),FallbackComponent:z.A,children:(0,g.jsxs)("div",{id:"query-window",children:[(0,g.jsx)("span",{className:"floating-card-header",children:"sql query"}),(0,g.jsx)(n.A,{className:"mt-3 mb-4",children:(0,g.jsxs)(c.A,{children:[(0,g.jsxs)("div",{className:"pb-3 border-white",children:["SQL queries are intended for data examination using primary keys. For performant queries in your application, please use our"," ",(0,g.jsx)("a",{href:"https://docs.harperdb.io/docs/developers/rest",target:"_blank",rel:"noopener noreferrer",children:"REST Interface"})]}),(0,g.jsx)(y.A,{id:"sql_query",type:"textarea",className:"sql-query-textarea",value:i,onKeyDown:e=>{"Enter"===e.code&&e.metaKey?m({submitted:!0}):"Tab"===e.code&&(e.preventDefault(),document.execCommand("insertHTML",!1,"	"))},onChange:e=>o(e.target.value)}),(0,g.jsxs)(r.A,{children:[(0,g.jsx)(l.A,{children:(0,g.jsx)(h.A,{color:"grey",title:"clear query",block:!0,className:"mt-2",onClick:()=>{s(!1),o("")},children:"Clear"})}),(0,g.jsx)(l.A,{children:(0,g.jsx)(h.A,{id:"executeQuery",innerRef:x,title:"execute query",color:"success",block:!0,className:"mt-2",onClick:()=>m({submitted:!0}),children:"Execute"})})]})]})})]})})};const H=(0,a(6997).A)("instanceQueries");const Q=function(e){var s;let{setQuery:a,query:i}=e;const{compute_stack_id:o}=(0,v.g)(),[u,m]=H({});return(0,t.useEffect)((()=>{if(i.lastUpdate){var e;const s=u&&(null===(e=u[o])||void 0===e?void 0:e.filter((e=>e.query.toLowerCase()!==i.query.toLowerCase())))||[];s.unshift(i),m({...u,[o]:s})}}),[i]),(0,g.jsx)(d.tH,{onError:(e,s)=>(0,$.A)({error:{message:e.message,componentStack:s}}),FallbackComponent:z.A,children:(0,g.jsxs)("div",{id:"query-history",children:[(0,g.jsxs)(r.A,{className:"floating-card-header",children:[(0,g.jsx)(l.A,{xs:"9",children:"query history (click to load)"}),(0,g.jsx)(l.A,{xs:"3",className:"text-end",children:(0,g.jsx)(h.A,{color:"link",title:"Refresh Results",className:"me-2",onClick:()=>m({...u,[o]:[]}),children:(0,g.jsx)("i",{className:"fa fa-trash"})})})]}),(0,g.jsx)(n.A,{className:"my-3",children:u&&null!==(s=u[o])&&void 0!==s&&s.length?(0,g.jsx)(c.A,{className:"query-scroller",children:u[o].map(((e,s)=>(0,g.jsxs)(t.Fragment,{children:[(0,g.jsx)("button",{id:`loadQuery${s}`,type:"button",tabIndex:"0",title:`Load query: ${e.query}`,className:"past-query",onClick:()=>a(e.query),children:(0,g.jsx)("span",{children:e.query})}),(0,g.jsx)("hr",{className:"my-0"})]},e.query)))}):(0,g.jsx)(c.A,{className:"text-center text-grey",children:"no queries yet"})})]})})};const L=function(){const[e,s]=(0,t.useState)(!1);return(0,g.jsxs)(r.A,{id:"query",children:[(0,g.jsxs)(l.A,{xl:"3",lg:"4",md:"5",xs:"12",children:[(0,g.jsx)(B,{setQuery:s,query:e}),(0,g.jsx)(Q,{setQuery:s,query:e})]}),(0,g.jsx)(l.A,{xl:"9",lg:"8",md:"7",xs:"12",children:(0,g.jsx)(T,{query:e})})]})}},4343:(e,s,a)=>{a.d(s,{A:()=>y});var t=a(9950),r=a(2043),l=a(5488),i=a(9435),n=a(7176),c=a(6114),o=a(4414);const d=e=>{let{headerGroups:s,onSortedChange:a,sorted:t,showFilter:r}=e;return s.map((e=>{const{key:s,...l}=e.getHeaderGroupProps();return(0,o.jsxs)("div",{...l,children:[(0,o.jsx)(n.A,{className:"header g-0",children:e.headers.map((e=>{var s,r;return(0,o.jsx)(c.A,{onClick:()=>{var s,r;return a([{id:e.id,desc:(null===(s=t[0])||void 0===s?void 0:s.id)===e.id&&!(null!==(r=t[0])&&void 0!==r&&r.desc)}])},className:`${(null===(s=t[0])||void 0===s?void 0:s.id)===e.id?"sorted":""} ${null!==(r=t[0])&&void 0!==r&&r.desc?"desc":"asc"} ${-1!==e.id.indexOf("hdb-narrow")?"action":""} px-1`,children:(0,o.jsx)("div",{className:"text-renderer",children:e.render("Header")})},e.id)}))}),r&&(0,o.jsx)(n.A,{className:"filter g-0",children:e.headers.map((e=>(0,o.jsx)(c.A,{className:-1!==e.id.indexOf("hdb-narrow")?"action":"",children:e.render("Filter")},e.id)))})]},s)}))};var u=a(3452);const m=function(e){let{page:s,pageSize:a,totalPages:t,onPageChange:r,onPageSizeChange:i,loading:d}=e;return(0,o.jsxs)(n.A,{className:"pagination",children:[(0,o.jsx)(c.A,{xs:"12",sm:"2",className:"previous",children:(0,o.jsx)(u.A,{className:"mb-2 btn-pagination",color:"purple",block:!0,onClick:()=>r(s-1),disabled:!t||0===s,children:(0,o.jsx)("i",{className:"fa fa-chevron-left"})})}),(0,o.jsxs)(c.A,{xs:"12",sm:"4",className:"paginator",children:[(0,o.jsx)("i",{className:"fa fa-book me-2"}),(0,o.jsx)(l.A,{className:"mb-2",type:"number",value:s+1,min:1,max:t,onChange:e=>r(e.target.value-1)}),(0,o.jsxs)("div",{className:"page-count",children:["\xa0/\xa0",d?(0,o.jsx)("i",{className:"fa fa-spinner fa-spin"}):t]})]}),(0,o.jsx)(c.A,{xs:"12",sm:"4",className:"page-size",children:(0,o.jsx)(l.A,{className:"mb-2",type:"select",value:a,onChange:e=>i(e.target.value),children:[20,50,100,250].map((e=>(0,o.jsxs)("option",{value:e,children:[e," rows"]},e)))})}),(0,o.jsx)(c.A,{xs:"12",sm:"2",className:"next",children:(0,o.jsx)(u.A,{className:"mb-2 pull-right btn-pagination",block:!0,color:"purple",onClick:()=>r(s+1),disabled:!t||s+1===t,children:(0,o.jsx)("i",{className:"fa fa-chevron-right"})})})]})};const h=function(e){let{previousPage:s,canPreviousPage:a,pageIndex:t,gotoPage:r,setPageSize:i,pageCount:d,nextPage:m,canNextPage:h,loading:x}=e;return(0,o.jsxs)(n.A,{className:"pagination",children:[(0,o.jsx)(c.A,{xs:"12",sm:"2",className:"previous",children:(0,o.jsx)(u.A,{className:"mb-2 btn-pagination",color:"purple",block:!0,onClick:s,disabled:!d||!a,children:(0,o.jsx)("i",{className:"fa fa-chevron-left"})})}),(0,o.jsxs)(c.A,{xs:"12",sm:"4",className:"paginator",children:[(0,o.jsx)("i",{className:"fa fa-book me-2"}),(0,o.jsx)(l.A,{className:"mb-2",type:"number",value:t+1||1,min:1,max:d,onChange:e=>r(e.target.value?Number(e.target.value)-1:0)}),(0,o.jsxs)("div",{className:"page-count",children:["\xa0/\xa0",x?(0,o.jsx)("i",{className:"fa fa-spinner fa-spin"}):d]})]}),(0,o.jsx)(c.A,{xs:"12",sm:"4",className:"page-size",children:(0,o.jsx)(l.A,{className:"mb-2",type:"select",onChange:e=>{r(0),setTimeout((()=>i(e.target.value)),1e3)},children:[20,50,100,250].map((e=>(0,o.jsxs)("option",{value:e,children:[e," rows"]},e)))})}),(0,o.jsx)(c.A,{xs:"12",sm:"2",className:"next",children:(0,o.jsx)(u.A,{className:"mb-2 pull-right btn-pagination",block:!0,color:"purple",onClick:m,disabled:!d||!h,children:(0,o.jsx)("i",{className:"fa fa-chevron-right"})})})]})};const x=function(e){let{prepareRow:s,row:a,onRowClick:t=!1}=e;return s(a),(0,o.jsx)(n.A,{onClick:()=>t&&t(a.original),className:"g-0",children:a.cells.map((e=>(0,o.jsx)(c.A,{className:-1!==e.column.id.indexOf("hdb-narrow")?"action":"",children:e.render("Cell")},`${e.row.id}-${e.column.id}`)))})};var g=a(3628),p=a(3150);function j(e){let{value:s}=e;return(0,o.jsx)("div",{className:"text-renderer",children:s})}function b(e){let{src:s}=e;const[a,r]=(0,t.useState)(!1),[l,i]=(0,t.useState)(!1);return(0,o.jsxs)("div",{className:"image-renderer",onMouseEnter:()=>r(!0),onMouseLeave:()=>r(!1),children:[(0,o.jsx)("i",{className:"fa fa-image"}),a&&l?(0,o.jsxs)("div",{className:"preview-image no-image",children:[(0,o.jsx)("i",{className:"fa fa-ban text-danger"}),(0,o.jsx)("div",{className:"mt-2",children:"image failed to load"})]}):a?(0,o.jsx)("img",{onError:i,alt:s,src:s,className:"preview-image"}):null]})}const f={Filter:e=>{let{column:{filterValue:s,setFilter:a}}=e;return(0,o.jsx)(l.A,{type:"text",value:s||"",onChange:e=>a(e.target.value||void 0)})},Cell:e=>{let{value:s}=e;return(e=>{switch(Object.prototype.toString.call(e)){case"[object Array]":case"[object Object]":return(0,o.jsx)(j,{value:JSON.stringify(e)});case"[object Boolean]":return(0,o.jsx)(j,{value:e?"true":"false"});case"[object String]":return(s=e)&&(s.match(/^https?.*\.(jpeg|jpg|gif|png)$/)||-1!==s.indexOf("data:image"))?(0,o.jsx)(b,{src:e}):(0,o.jsx)(j,{value:e});default:return(0,o.jsx)(j,{value:e})}var s})(s)}};const y=function(e){let{columns:s,data:a,currentPage:l,pageSize:n,totalPages:c,onFilteredChange:u,onSortedChange:j,onPageChange:b,onPageSizeChange:y,showFilter:A,onRowClick:N,sorted:v,loading:C,manual:k=!1}=e;const{headerGroups:_,page:S,rows:q,prepareRow:w,state:P,setAllFilters:F,canPreviousPage:R,canNextPage:z,pageOptions:$,pageCount:O,gotoPage:E,nextPage:D,previousPage:T,setPageSize:B}=(0,r.useTable)({columns:s,data:a,defaultColumn:f,onFilteredChange:u,onSortedChange:j,onPageChange:b,onPageSizeChange:y,onRowClick:N,manualPagination:k,manualFilters:k,initialState:{pageIndex:l,pageSize:n}},r.useFilters,r.usePagination),[H,Q]=(0,t.useState)(!0),L=k||!S.length?q:S;return(0,t.useEffect)((()=>{!A&&P.filters.length?F([]):u(P.filters)}),[P.filters,A]),(0,t.useEffect)((()=>{setTimeout((()=>Q(!1)),100)}),[null===L||void 0===L?void 0:L.length]),(0,o.jsxs)(i.tH,{onError:(e,s)=>(0,g.A)({error:{message:e.message,componentStack:s}}),FallbackComponent:p.A,children:[(0,o.jsxs)("div",{className:"react-table-scroller",children:[(0,o.jsx)(d,{headerGroups:_,onSortedChange:j,sorted:v,showFilter:A}),C||H?(0,o.jsx)("div",{className:"centered text-center",children:(0,o.jsx)("i",{className:"fa fa-spinner fa-spin"})}):L.length?L.map((e=>(0,o.jsx)(x,{row:e,prepareRow:w,onRowClick:N},e.id))):(0,o.jsxs)("div",{className:"centered text-center",children:[(0,o.jsx)("i",{className:"fa fa-exclamation-triangle text-danger"}),(0,o.jsx)("div",{className:"mt-2 text-darkgrey",children:"no records"})]})]}),k?(0,o.jsx)(m,{page:l,pageSize:n,totalPages:c,onPageChange:b,onPageSizeChange:y,loading:C}):(0,o.jsx)(h,{previousPage:T,pageSize:n,canPreviousPage:R,pageIndex:P.pageIndex,pageOptions:$,gotoPage:E,setPageSize:B,pageCount:O,nextPage:D,canNextPage:z,loading:C})]})}},306:(e,s,a)=>{a.d(s,{A:()=>r});var t=a(127);const r=async e=>{let{auth:s,url:a,sql:r,signal:l}=e;return(0,t.A)({operation:{operation:"sql",sql:r},auth:s,url:a,signal:l})}},455:(e,s,a)=>{a.d(s,{A:()=>t});const t=e=>{let{title:s,type:a,labels:t,theme:r}=e;const l="light"===r?"#696969":"dark"===r?"#fff":"#212121";return{title:{text:s,style:{color:l}},chart:{type:a,animations:{enabled:!1},fontFamily:"Arial, Helvetica, Verdana, Sans-Serif",toolbar:{offsetX:-25,tools:{selection:!1,pan:!1,zoom:!1,zoomin:!1,zoomout:!1,reset:!1}}},labels:t,theme:{palette:"palette10"},plotOptions:{pie:{offsetY:10}},legend:{offsetY:5,labels:{colors:l}},markers:{size:[4],strokeColors:"dark"===r?"#212121":"#fff",strokeWidth:1,strokeOpacity:"dark"===r?.5:1,hover:{sizeOffset:0}},xaxis:{labels:{rotate:-60,maxHeight:80,style:{fontSize:"10px",colors:l}},tooltip:{enabled:!1}},yaxis:{labels:{style:{fontSize:"10px",colors:l}}}}}},5379:(e,s,a)=>{a.d(s,{A:()=>t});const t=e=>!Number.isNaN(parseFloat(e))&&Number.isFinite(parseFloat(e))}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunkharperdb_studio=self.webpackChunkharperdb_studio||[]).push([[522],{7591:(e,t,r)=>{r.r(t),r.d(t,{default:()=>P});var n=r(9950),o=r(8429),s=r(7176),i=r(6114),a=r(3452),l=r(4084),c=r(8156),u=r(6713),f=r(5269),p=r(9435),d=r(9708),m=r(5488),h=r(7348),y=r(2765),b=r(2415),g=r(6196),j=r(4414);const v=function(e){let{itemType:t,toggleDropItem:r,toggleCreate:l,baseUrl:c}=e;const{compute_stack_id:p,customer_id:v}=(0,o.g)(),x=(0,o.Zp)(),A=(0,h.MW)(),O=(0,u.O$)(f.A,(e=>e.auth)),w=(0,u.O$)(f.A,(e=>e.url)),N=(0,u.O$)(f.A,(e=>e.is_local)),_=(0,u.O$)(f.A,(e=>e.roles&&e.roles.map((e=>e.role)))),[k,R]=(0,n.useState)({});return(0,n.useEffect)((()=>{r()}),[r]),(0,j.jsx)(d.A,{onSubmit:async e=>{if(e.preventDefault(),!k.name)return R({...k,error:!0}),A.error("You must provide a role name");if(_.includes(k.name))return R({...k,error:!0}),A.error("Role with that name already exists");if(!(0,g.A)(k.name))return R({...k,error:!0}),A.error("Role names must have only letters and underscores");const r="cluster user"===t?{cluster_user:!0}:"super user"===t?{super_user:!0}:{},n=await(0,y.A)({auth:O,url:w,is_local:N,compute_stack_id:p,customer_id:v,role:k.name,permission:r});return n.error?(R({...k,error:!0}),A.error(n.message)):(R({}),await(0,b.A)({auth:O,url:w}),x(`${c}/${n.id}`))},children:(0,j.jsxs)(s.A,{className:"item-row form",children:[(0,j.jsx)(i.A,{className:"input-holder",children:(0,j.jsx)(m.A,{id:"name",invalid:k.error,onChange:e=>R({name:e.target.value.toString()}),type:"text",name:"name",placeholder:"name"})}),(0,j.jsxs)(i.A,{className:"item-action",children:[(0,j.jsx)(a.A,{id:"createRole",color:"success",className:"round me-1",children:(0,j.jsx)("i",{className:"fa fa-check text-white"})}),(0,j.jsx)(a.A,{color:"black",className:"round",onClick:()=>l(!1),children:(0,j.jsx)("i",{className:"fa fa-times text-white"})})]})]})})};var x=r(127);const A=function(e){let{item:t,baseUrl:r,isActive:l,toggleDropItem:c,isDropping:p}=e;const d=(0,o.Zp)(),m=(0,h.MW)(),[y,g]=(0,n.useState)(!1),v=(0,u.O$)(f.A,(e=>e.auth)),A=(0,u.O$)(f.A,(e=>e.url)),O=async()=>{if(!y)return!1;const e=await(async e=>{let{auth:t,id:r,url:n}=e;return(0,x.A)({operation:{operation:"drop_role",id:r},auth:t,url:n})})({auth:v,url:A,id:t.id});return e.error?m.error(e.message):((0,b.A)({auth:v,url:A}),!!l&&setTimeout((()=>d(r)),100))};return(0,j.jsxs)(s.A,{className:"item-row "+(l?"active":""),onClick:()=>!(l||p||y)&&d(`${r}/${t.id}`),children:[(0,j.jsx)(i.A,{className:"item-label "+(y?"text-danger text-nowrap":""),children:y?`drop ${t.role}?`:t.role}),(0,j.jsx)(i.A,{className:"item-action",children:y?(0,j.jsxs)(j.Fragment,{children:[(0,j.jsx)(a.A,{id:"confirmDropRole",color:"danger",className:"round me-1",title:`confirm drop ${t.role}`,onClick:()=>{g(!1),O()},children:(0,j.jsx)("i",{className:"fa fa-check text-white"})}),(0,j.jsx)(a.A,{color:"black",className:"round",title:`Cancel drop ${t.role}`,onClick:()=>{g(!1)},children:(0,j.jsx)("i",{className:"fa fa-times text-white"})})]}):p?(0,j.jsx)(a.A,{id:`drop${t.role}`,color:"danger",className:"round",title:`Drop ${t.role}`,onClick:()=>{g(t),c(!1)},children:(0,j.jsx)("i",{className:"fa fa-minus text-white"})}):l?(0,j.jsx)(a.A,{color:"purple",className:"round",title:`Viewing ${t.role}`,children:(0,j.jsx)("i",{className:"fa fa-chevron-right"})}):null})]},t)};const O=function(e){let{items:t,itemType:r,toggleDropItem:n,isDropping:o,toggleCreate:l,isCreating:c,showForm:u}=e;return(0,j.jsxs)(s.A,{className:"floating-card-header",children:[(0,j.jsxs)(i.A,{children:[r,"s"]}),u&&t&&t.length?(0,j.jsxs)(i.A,{className:"text-end",children:[(0,j.jsx)(a.A,{color:"link",title:`Remove ${r}s`,className:"add-remove me-3",onClick:()=>{n(!o),l(!1)},children:(0,j.jsx)("i",{className:"fa fa-minus"})}),(0,j.jsx)(a.A,{color:"link",title:`Add ${r}`,className:"add-remove me-1",onClick:()=>{l(!c),n(!1)},children:(0,j.jsx)("i",{className:"fa fa-plus"})})]}):null]})};var w=r(3150),N=r(3628);const _=function(e){let{items:t,activeItem:r,showForm:o,baseUrl:s,itemType:i}=e;const[a,u]=(0,n.useState)(!1),[f,d]=(0,n.useState)(!1);(0,n.useEffect)((()=>{d(),u()}),[r,t]);const m=t&&[...t].sort(((e,t)=>e.role<t.role?-1:1));return(0,j.jsx)(p.tH,{onError:(e,t)=>(0,N.A)({error:{message:e.message,componentStack:t}}),FallbackComponent:w.A,children:(0,j.jsxs)("div",{className:"entity-manager",children:[(0,j.jsx)(O,{items:t,itemType:i,isDropping:a,toggleDropItem:u,isCreating:f,toggleCreate:d,showForm:o}),(0,j.jsx)(l.A,{className:"my-3",children:(0,j.jsxs)(c.A,{children:[m&&m.length?m.map((e=>(0,j.jsx)(A,{item:e,baseUrl:s,isActive:r===e.id,isDropping:a,toggleDropItem:u},e.id))):null,(t&&!t.length||f)&&(0,j.jsx)(v,{itemType:i,baseUrl:s,isDropping:a,toggleDropItem:u,isCreating:f,toggleCreate:d})]})})]})})};var k=r(4979),R=r(717);const S=(0,n.lazy)((()=>Promise.all([r.e(239),r.e(831)]).then(r.bind(r,3109)))),C={roleName:!1,canEdit:!1,superUsers:[],clusterUsers:[],standardUsers:[],showAttributes:!1};const P=function(){const{role_id:e,customer_id:t}=(0,o.g)(),r=(0,u.O$)(f.A,(e=>e.compute_stack_id)),p=(0,u.O$)(f.A,(e=>e.auth)),d=(0,u.O$)(f.A,(e=>e.url)),m=(0,u.O$)(f.A,(e=>e.roles),[r]),[h,y]=(0,n.useState)(!1),[g,v]=(0,n.useState)(C),x=`/o/${t}/i/${r}/roles`,A=(0,u.O$)(f.A,(e=>{var t;return null===(t=e.registration)||void 0===t?void 0:t.version})),[O,w]=(null===A||void 0===A?void 0:A.split("."))||[],N=parseFloat(`${O}.${w}`),P=(0,n.useCallback)((async()=>{y(!0),await(0,b.A)({auth:p,url:d}),await(0,R.A)({auth:p,url:d}),y(!1)}),[p,d]);return(0,n.useEffect)((()=>{if(m){const t=e&&m.find((t=>t.id===e));v({...g,roleName:t&&t.role,canEdit:t&&!t.permission.cluster_user&&!t.permission.super_user,clusterUsers:m.filter((e=>e.permission.cluster_user)),superUsers:m.filter((e=>e.permission.super_user)),standardUsers:m.filter((e=>!e.permission.super_user&&!e.permission.cluster_user)),showAttributes:!1})}else v(C)}),[e,m]),(0,n.useEffect)((()=>{P()}),[P,r]),(0,j.jsxs)(s.A,{id:"roles",children:[(0,j.jsxs)(i.A,{xl:"3",lg:"4",md:"5",xs:"12",children:[(0,j.jsx)(_,{showForm:!0,activeItem:e,items:g.superUsers,baseUrl:x,itemType:"super user"}),(0,j.jsx)(_,{showForm:!0,activeItem:e,items:g.clusterUsers,baseUrl:x,itemType:"cluster user"}),(0,j.jsx)(_,{showForm:!0,activeItem:e,items:g.standardUsers,baseUrl:x,itemType:"standard role"})]}),(0,j.jsxs)(i.A,{xl:"9",lg:"8",md:"7",xs:"12",children:[(0,j.jsxs)(s.A,{className:"floating-card-header",children:[g.canEdit&&(0,j.jsxs)(i.A,{children:["edit role > ",g.roleName]}),(0,j.jsxs)(i.A,{className:"text-md-end",children:[g.canEdit&&(0,j.jsxs)(j.Fragment,{children:[(0,j.jsxs)(a.A,{color:"link",tabIndex:"0",title:"Show Attributes",onClick:()=>v({...g,showAttributes:!g.showAttributes}),children:[(0,j.jsx)("span",{className:"me-2",children:"show all attributes"}),(0,j.jsx)("i",{className:"fa fa-lg fa-toggle-"+(g.showAttributes?"on":"off")})]}),(0,j.jsx)("span",{className:"mx-3 text",children:"|"})]}),(0,j.jsxs)(a.A,{color:"link",onClick:P,className:"me-2",children:[(0,j.jsx)("span",{className:"me-2",children:"refresh roles"}),(0,j.jsx)("i",{title:"Refresh Roles",className:"fa "+(h?"fa-spinner fa-spin":"fa-sync-alt")})]})]})]}),g.canEdit?(0,j.jsx)(l.A,{className:"my-3",children:(0,j.jsx)(c.A,{className:"full-height",children:(0,j.jsx)(n.Suspense,{fallback:(0,j.jsx)(k.A,{header:" ",spinner:!0}),children:(0,j.jsx)(S,{showAttributes:g.showAttributes,fetchRoles:P})})})}):(0,j.jsx)(l.A,{className:"my-3",children:(0,j.jsx)(c.A,{children:e?(0,j.jsxs)("div",{className:"empty-prompt",children:["Super Users and Cluster Users have full access to all ",N>=4.2?"databases":"schemas",", tables, and attributes."]}):(0,j.jsx)("div",{className:"empty-prompt",children:"Please choose or add a role to manage it."})})})]})]})}},2765:(e,t,r)=>{r.d(t,{A:()=>o});var n=r(127);const o=async e=>{let{auth:t,url:r,role:o,permission:s}=e;return(0,n.A)({operation:{operation:"add_role",role:o,permission:s},auth:t,url:r})}},2415:(e,t,r)=>{r.d(t,{A:()=>s});var n=r(127),o=r(5269);const s=async e=>{let{auth:t,url:r}=e;const s=await(0,n.A)({operation:{operation:"list_roles"},auth:t,url:r}),i=[...Array.isArray(s)?s:[]].sort(((e,t)=>e.role.toLowerCase()>t.role.toLowerCase()?1:-1));return o.A.update((e=>{e.roles=i})),i}},6196:(e,t,r)=>{r.d(t,{A:()=>n});const n=e=>e.match(/^[a-zA-Z_]+$/)},9708:(e,t,r)=>{r.d(t,{A:()=>g});var n=r(9950),o=r(1942),s=r.n(o),i=r(1497);function a(e){return a="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},a(e)}var l=["className","cssModule","tag","innerRef"];function c(){return c=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},c.apply(this,arguments)}function u(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},s=Object.keys(e);for(n=0;n<s.length;n++)r=s[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(n=0;n<s.length;n++)r=s[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function f(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function p(e,t){return p=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},p(e,t)}function d(e){var t=function(){if("undefined"===typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"===typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var r,n=h(e);if(t){var o=h(this).constructor;r=Reflect.construct(n,arguments,o)}else r=n.apply(this,arguments);return function(e,t){if(t&&("object"===a(t)||"function"===typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return m(e)}(this,r)}}function m(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function h(e){return h=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},h(e)}var y={children:s().node,tag:i.Wx,innerRef:s().oneOfType([s().object,s().func,s().string]),className:s().string,cssModule:s().object},b=function(e){!function(e,t){if("function"!==typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&p(e,t)}(a,e);var t,r,o,s=d(a);function a(e){var t;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,a),(t=s.call(this,e)).getRef=t.getRef.bind(m(t)),t.submit=t.submit.bind(m(t)),t}return t=a,(r=[{key:"getRef",value:function(e){this.props.innerRef&&this.props.innerRef(e),this.ref=e}},{key:"submit",value:function(){this.ref&&this.ref.submit()}},{key:"render",value:function(){var e=this.props,t=e.className,r=e.cssModule,o=e.tag,s=void 0===o?"form":o,a=e.innerRef,f=u(e,l),p=(0,i.qO)(t,r);return n.createElement(s,c({},f,{ref:a,className:p}))}}])&&f(t.prototype,r),o&&f(t,o),Object.defineProperty(t,"prototype",{writable:!1}),a}(n.Component);b.propTypes=y;const g=b},5488:(e,t,r)=>{r.d(t,{A:()=>v});var n=r(9950),o=r(1942),s=r.n(o),i=r(8738),a=r.n(i),l=r(1497);function c(e){return c="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},c(e)}var u=["className","cssModule","type","bsSize","valid","invalid","tag","addon","plaintext","innerRef"];function f(){return f=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var n in r)Object.prototype.hasOwnProperty.call(r,n)&&(e[n]=r[n])}return e},f.apply(this,arguments)}function p(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},s=Object.keys(e);for(n=0;n<s.length;n++)r=s[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var s=Object.getOwnPropertySymbols(e);for(n=0;n<s.length;n++)r=s[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}function d(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}function m(e,t){return m=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},m(e,t)}function h(e){var t=function(){if("undefined"===typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"===typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var r,n=b(e);if(t){var o=b(this).constructor;r=Reflect.construct(n,arguments,o)}else r=n.apply(this,arguments);return function(e,t){if(t&&("object"===c(t)||"function"===typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return y(e)}(this,r)}}function y(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function b(e){return b=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},b(e)}var g={children:s().node,type:s().string,size:s().oneOfType([s().number,s().string]),bsSize:s().string,valid:s().bool,invalid:s().bool,tag:l.Wx,innerRef:s().oneOfType([s().object,s().func,s().string]),plaintext:s().bool,addon:s().bool,className:s().string,cssModule:s().object},j=function(e){!function(e,t){if("function"!==typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&m(e,t)}(i,e);var t,r,o,s=h(i);function i(e){var t;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,i),(t=s.call(this,e)).getRef=t.getRef.bind(y(t)),t.focus=t.focus.bind(y(t)),t}return t=i,(r=[{key:"getRef",value:function(e){this.props.innerRef&&this.props.innerRef(e),this.ref=e}},{key:"focus",value:function(){this.ref&&this.ref.focus()}},{key:"render",value:function(){var e=this.props,t=e.className,r=e.cssModule,o=e.type,s=void 0===o?"text":o,i=e.bsSize,c=e.valid,d=e.invalid,m=e.tag,h=e.addon,y=e.plaintext,b=e.innerRef,g=p(e,u),j=["switch","radio","checkbox"].indexOf(s)>-1,v="select"===s,x="range"===s,A=m||(v||"textarea"===s?s:"input"),O="form-control";y?(O="".concat(O,"-plaintext"),A=m||"input"):x?O="form-range":v?O="form-select":j&&(O=h?null:"form-check-input"),g.size&&/\D/g.test(g.size)&&((0,l.mc)('Please use the prop "bsSize" instead of the "size" to bootstrap\'s input sizing.'),i=g.size,delete g.size);var w=(0,l.qO)(a()(t,d&&"is-invalid",c&&"is-valid",!!i&&(v?"form-select-".concat(i):"form-control-".concat(i)),O),r);return("input"===A||m&&"function"===typeof m)&&(g.type="switch"===s?"checkbox":s),g.children&&!y&&"select"!==s&&"string"===typeof A&&"select"!==A&&((0,l.mc)('Input with a type of "'.concat(s,'" cannot have children. Please use "value"/"defaultValue" instead.')),delete g.children),n.createElement(A,f({},g,{ref:b,className:w,"aria-invalid":d}))}}])&&d(t.prototype,r),o&&d(t,o),Object.defineProperty(t,"prototype",{writable:!1}),i}(n.Component);j.propTypes=g;const v=j}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunkharperdb_studio=self.webpackChunkharperdb_studio||[]).push([[541],{5633:(e,s,a)=>{a.r(s),a.d(s,{default:()=>E});var t=a(9950),r=a(7176),l=a(6114),n=a(6713),o=a(3452),i=a(4084),c=a(8156),d=a(9435),m=a(5553),u=a(5269),x=a(127);const h=1e9,j=1073741824;var p=a(1652),v=a(3150),A=a(3628),f=a(4414);let N;const g=function(){const e=(0,n.O$)(u.A,(e=>e.compute_stack_id)),s=(0,n.O$)(u.A,(e=>e.auth)),a=(0,n.O$)(u.A,(e=>e.url)),g=(0,n.O$)(u.A,(e=>e.systemInfo)),w=(0,n.O$)(u.A,(e=>e.is_local)),y=(0,n.O$)(u.A,(e=>e.storage)),k=(0,n.O$)(m.A,(s=>{var a;return s.alarms&&(null===(a=s.alarms[e])||void 0===a?void 0:a.alarmCounts["Disk I/O"])}),[e]),[b,S]=(0,t.useState)(!1),[_,D]=(0,t.useState)(!(null!==g&&void 0!==g&&g.totalMemory)),C=async()=>{D(!0),N=new AbortController,await(async e=>{var s,a,t,r,l,n,o,i,c,d,m,p;let{auth:v,url:A,signal:f,refresh:N,is_local:g,cachedSystemInfo:w,skip:y=[]}=e;const k=["network","disk","cpu","memory","system"],b=await(0,x.A)({operation:{operation:"system_information",attributes:null!==y&&void 0!==y&&y.length?k.filter((e=>!y.includes(e))):k},auth:v,url:A,signal:f});if(b.error&&N)return u.A.update((e=>{e.systemInfoError=!0}));if(b.error)return u.A.update((e=>{e.systemInfo={totalMemory:"...",usedMemory:"...",freeMemory:"...",memoryStatus:"grey",totalDisk:"...",usedDisk:"...",freeDisk:"...",diskStatus:"grey",cpuInfo:"...",cpuCores:"...",cpuLoad:"...",cpuStatus:"grey",networkTransferred:"...",networkReceived:"...",networkLatency:"...",networkLatencyStatus:"grey"},e.systemInfoError=!0}));const S=y.includes("memory")?parseFloat(w.totalMemory):b.memory.total/j,_=y.includes("memory")?parseFloat(w.usedMemory):b.memory.active/j,D=y.includes("memory")?parseFloat(w.freeMemory):b.memory.available/j,C=y.includes("memory")?w.memoryStatus:D/S<.1?"danger":D/S<.25?"warning":"success",L=y.includes("disk")?parseFloat(w.totalDisk):"darwin"===b.system.platform?(null===(s=b.disk)||void 0===s||null===(a=s.size)||void 0===a?void 0:a[0].size)/h:g?(null===(l=b.disk)||void 0===l||null===(n=l.size)||void 0===n?void 0:n[0].size)/j:(null===(t=b.disk)||void 0===t||null===(r=t.size)||void 0===r?void 0:r.find((e=>"/home/ubuntu/hdb"===e.mount)).size)/j,$=y.includes("disk")?parseFloat(w.usedDisk):"darwin"===b.system.platform?(null===(o=b.disk)||void 0===o||null===(i=o.size)||void 0===i?void 0:i.reduce(((e,s)=>e+s.used),0))/h:g?(null===(m=b.disk)||void 0===m||null===(p=m.size)||void 0===p?void 0:p.reduce(((e,s)=>e+s.used),0))/j:(null===(c=b.disk)||void 0===c||null===(d=c.size)||void 0===d?void 0:d.find((e=>"/home/ubuntu/hdb"===e.mount)).used)/j,F=y.includes("disk")?parseFloat(w.freeDisk):L-$,O=y.includes("disk")?w.diskStatus:F/L<.1?"danger":F/L<.25?"warning":"success",M=y.includes("cpu")?w.cpuInfo:`${b.cpu.manufacturer} ${b.cpu.brand}`,T=y.includes("cpu")?w.cpuCores:`${b.cpu.physicalCores} physical / ${b.cpu.cores} virtual`,E=y.includes("cpu")?parseFloat(w.cpuLoad):b.cpu.current_load.currentLoad||b.cpu.current_load.currentload||0,I=y.includes("cpu")?w.cpuStatus:E>90?"danger":E>75?"warning":"success",U=y.includes("network")?parseFloat(w.networkTransferred):b.network.stats.reduce(((e,s)=>e+s.tx_bytes),0)/h,z=y.includes("network")?parseFloat(w.networkReceived):b.network.stats.reduce(((e,s)=>e+s.rx_bytes),0)/h,H=y.includes("network")?parseFloat(w.networkLatency):b.network.latency.ms,B=y.includes("network")?parseFloat(w.networkLatencyStatus):H>1e3?"danger":H>500?"warning":"success",G={totalMemory:null===S||void 0===S?void 0:S.toFixed(2),usedMemory:null===_||void 0===_?void 0:_.toFixed(2),freeMemory:null===D||void 0===D?void 0:D.toFixed(2),memoryStatus:C,totalDisk:null===L||void 0===L?void 0:L.toFixed(2),usedDisk:null===$||void 0===$?void 0:$.toFixed(2),freeDisk:null===F||void 0===F?void 0:F.toFixed(2),diskStatus:O,cpuInfo:M,cpuCores:T,cpuLoad:null===E||void 0===E?void 0:E.toFixed(2),cpuStatus:I,networkTransferred:null===U||void 0===U?void 0:U.toFixed(2),networkReceived:null===z||void 0===z?void 0:z.toFixed(2),networkLatency:H,networkLatencyStatus:B};return u.A.update((e=>{e.systemInfo=G}))})({auth:s,url:a,is_local:w,signal:N.signal,refresh:!!g,previousSystemInfo:g}),D(!1)};return(0,t.useEffect)((()=>(!s||null!==g&&void 0!==g&&g.totalMemory||C(),()=>{var e;null===(e=N)||void 0===e||e.abort()})),[s]),(0,f.jsxs)(d.tH,{onError:(e,s)=>(0,A.A)({error:{message:e.message,componentStack:s}}),FallbackComponent:v.A,children:[(0,f.jsxs)(r.A,{className:"floating-card-header",children:[(0,f.jsx)(l.A,{children:"host system"}),(0,f.jsxs)(l.A,{className:"text-end",children:[(0,f.jsx)(o.A,{color:"link",title:"Update Metrics",className:"me-2",onClick:C,children:(0,f.jsx)("i",{className:"fa "+(_?"fa-spinner fa-spin":"fa-sync-alt")})}),(0,f.jsxs)(o.A,{color:"link",title:"Turn on autofresh",onClick:()=>S(!b),children:[(0,f.jsx)("span",{className:"me-2",children:"auto"}),(0,f.jsx)("i",{className:"fa fa-lg fa-toggle-"+(b?"on":"off")})]})]})]}),(0,f.jsx)(i.A,{className:"my-3 instance-details",children:(0,f.jsx)(c.A,{children:g||b?(0,f.jsxs)(r.A,{children:[(0,f.jsx)(l.A,{md:"2",sm:"4",xs:"6",children:(0,f.jsx)(p.A,{header:"Total Memory",className:"mb-3",children:(0,f.jsxs)("div",{className:"nowrap-scroll",children:[(null===g||void 0===g?void 0:g.totalMemory)||"...","GB"]})})}),(0,f.jsx)(l.A,{md:"2",sm:"4",xs:"6",children:(0,f.jsx)(p.A,{header:"Active Memory",className:"mb-3",children:(0,f.jsxs)("div",{className:"nowrap-scroll",children:[(null===g||void 0===g?void 0:g.usedMemory)||"...","GB"]})})}),(0,f.jsx)(l.A,{md:"2",sm:"4",xs:"6",children:(0,f.jsx)(p.A,{header:"Available Memory",className:"mb-3",children:(0,f.jsxs)("div",{className:`nowrap-scroll text-${(null===g||void 0===g?void 0:g.memoryStatus)||"grey"}`,children:[(null===g||void 0===g?void 0:g.freeMemory)||"...","GB"]})})}),(0,f.jsx)(l.A,{md:"2",sm:"4",xs:"6",children:(0,f.jsx)(p.A,{header:"Total Disk",className:"mb-3",children:(0,f.jsxs)("div",{className:"nowrap-scroll",children:[(null===g||void 0===g?void 0:g.totalDisk)||"...","GB"]})})}),(0,f.jsx)(l.A,{md:"2",sm:"4",xs:"6",children:(0,f.jsx)(p.A,{header:"Used Disk",className:"mb-3",children:(0,f.jsxs)("div",{className:"nowrap-scroll",children:[(null===g||void 0===g?void 0:g.usedDisk)||"...","GB"]})})}),(0,f.jsx)(l.A,{md:"2",sm:"4",xs:"6",children:(0,f.jsx)(p.A,{header:"Free Disk",className:"mb-3",children:(0,f.jsxs)("div",{className:`nowrap-scroll text-${(null===g||void 0===g?void 0:g.diskStatus)||"grey"}`,children:[(null===g||void 0===g?void 0:g.freeDisk)||"...","GB"]})})}),(0,f.jsx)(l.A,{md:"2",sm:"4",xs:"6",children:(0,f.jsx)(p.A,{header:"CPU Cores",className:"mb-3",children:(0,f.jsx)("div",{className:"nowrap-scroll",children:(null===g||void 0===g?void 0:g.cpuCores)||"..."})})}),(0,f.jsx)(l.A,{md:"2",sm:"4",xs:"6",children:(0,f.jsx)(p.A,{header:"CPU Load",className:"mb-3",children:(0,f.jsxs)("div",{className:`nowrap-scroll text-${(null===g||void 0===g?void 0:g.cpuStatus)||"grey"}`,children:[(null===g||void 0===g?void 0:g.cpuLoad)||"...","%"]})})}),(0,f.jsx)(l.A,{md:"2",sm:"4",xs:"6",children:(0,f.jsx)(p.A,{header:"Network Volume Up",className:"mb-3",children:(0,f.jsxs)("div",{className:"nowrap-scroll",children:[(null===g||void 0===g?void 0:g.networkTransferred)||"...","GB"]})})}),(0,f.jsx)(l.A,{md:"2",sm:"4",xs:"6",children:(0,f.jsx)(p.A,{header:"Network Volume Down",className:"mb-3",children:(0,f.jsxs)("div",{className:"nowrap-scroll",children:[(null===g||void 0===g?void 0:g.networkReceived)||"...","GB"]})})}),(0,f.jsx)(l.A,{md:"2",sm:"4",xs:"6",children:(0,f.jsx)(p.A,{header:"Network Latency",className:"mb-3",children:(0,f.jsx)("div",{className:`nowrap-scroll text-${(null===g||void 0===g?void 0:g.networkLatencyStatus)||"grey"}`,children:null!==g&&void 0!==g&&g.networkLatency?`${null===g||void 0===g?void 0:g.networkLatency} ms`:"N/A"})})}),(0,f.jsx)(l.A,{md:"2",sm:"4",xs:"6",children:(0,f.jsx)(p.A,{header:"Disk IOPS",className:"mb-3",children:(0,f.jsx)("div",{className:"nowrap-scroll text-"+(k?"danger":""),children:w?"HARDWARE LIMIT":(null===y||void 0===y?void 0:y.iops)||"..."})})})]}):(0,f.jsx)("div",{className:"pt-5 text-center",children:(0,f.jsx)("i",{className:"fa fa-spinner fa-spin text-purple"})})})}),(0,f.jsx)("br",{})]})};var w=a(135),y=a(8429),k=a(5996);const b=e=>"object"===typeof e&&!Array.isArray(e)&&null!==e;const S=function(e){let{level:s,timestamp:a,message:t,tags:n,thread:o}=e;return(0,f.jsx)("div",{className:"item-row",children:(0,f.jsxs)(r.A,{children:[(0,f.jsx)(l.A,{className:`text-nowrap ${null===s||void 0===s?void 0:s.toLowerCase()}`,children:(null===s||void 0===s?void 0:s.toUpperCase())||"UNKNOWN"}),(0,f.jsx)(l.A,{className:"text-nowrap",children:new Date(a||null).toLocaleDateString()}),(0,f.jsx)(l.A,{className:"text-nowrap",children:new Date(a||null).toLocaleTimeString()}),(0,f.jsx)(l.A,{className:"text-nowrap",children:o}),(0,f.jsx)(l.A,{className:"text-nowrap",children:null===n||void 0===n?void 0:n.join(", ")}),(0,f.jsx)(l.A,{xs:"12",className:"mt-1",children:b(t)&&t.error?t.error:JSON.stringify(t).slice(1,-1)})]})})};let _;const D=function(){const{compute_stack_id:e}=(0,y.g)(),s=(0,n.O$)(u.A,(e=>e.auth)),a=(0,n.O$)(u.A,(e=>e.url)),m=(0,n.O$)(u.A,(e=>e.logs),[e]),h=(0,n.O$)(u.A,(e=>e.logsError)),[j,p]=(0,t.useState)(!1),[N,g]=(0,t.useState)(!0),[b,D]=(0,t.useState)(!0);return(0,t.useEffect)((()=>{let e=!0;return s&&(async()=>{g(!0),_=new AbortController,await(async e=>{let{auth:s,url:a,signal:t}=e;const r=await(0,x.A)({operation:{operation:"read_log",limit:1e3,order:"desc"},auth:s,url:a,signal:t});return u.A.update((e=>{e.logs=r.error?[]:(null===r||void 0===r?void 0:r.filter((e=>e.message)))||[],e.logsError=!1}))})({auth:s,url:a,signal:_.signal,currentLogCount:(null===m||void 0===m?void 0:m.length)||0}),e&&g(!1)})(),()=>{var s;null===(s=_)||void 0===s||s.abort(),e=!1}}),[s,b]),(0,w.A)((()=>s&&j&&D(Date.now())),k.A.refresh_content_interval),(0,f.jsxs)(d.tH,{onError:(e,s)=>(0,A.A)({error:{message:e.message,componentStack:s}}),FallbackComponent:v.A,children:[(0,f.jsxs)(r.A,{className:"floating-card-header",children:[(0,f.jsx)(l.A,{children:"logs"}),(0,f.jsxs)(l.A,{className:"text-end",children:[(0,f.jsx)(o.A,{color:"link",title:"Update Logs",className:"me-2",onClick:()=>D(Date.now()),children:(0,f.jsx)("i",{className:"fa "+(N?"fa-spinner fa-spin":"fa-sync-alt")})}),(0,f.jsxs)(o.A,{color:"link",title:"Turn on autofresh",onClick:()=>p(!j),children:[(0,f.jsx)("span",{className:"me-2",children:"auto"}),(0,f.jsx)("i",{className:"fa fa-lg fa-toggle-"+(j?"on":"off")})]})]})]}),(0,f.jsx)(i.A,{className:"my-3",children:(0,f.jsxs)(c.A,{className:"item-list",children:[(0,f.jsxs)(r.A,{xs:"5",className:"header",children:[(0,f.jsx)(l.A,{className:"text-bold text-nowrap",children:"status"}),(0,f.jsx)(l.A,{className:"text-bold text-nowrap",children:"date"}),(0,f.jsx)(l.A,{className:"text-left text-bold text-nowrap",children:!N&&h?(0,f.jsxs)("span",{className:"text-danger",children:["log fetch error: ",(new Date).toLocaleTimeString().toLowerCase()]}):(0,f.jsx)("span",{children:"time"})}),(0,f.jsx)(l.A,{className:"text-bold text-nowrap",children:"thread"}),(0,f.jsx)(l.A,{className:"text-bold text-nowrap",children:"tags"})]}),(0,f.jsx)("hr",{className:"mt-1 mb-0"}),(0,f.jsx)("div",{className:"item-scroller",children:!N||m||j?m&&m.length?m.map(((e,s)=>(0,f.jsx)(S,{...e},s))):m&&!m.length?(0,f.jsx)("div",{className:"pt-5 text-center",children:"no logs found"}):(0,f.jsx)("div",{className:"pt-5 text-center",children:"no logs found in this view"}):(0,f.jsx)("div",{className:"pt-5 text-center",children:(0,f.jsx)("i",{className:"fa fa-spinner fa-spin text-lightgrey"})})})]})}),(0,f.jsx)("br",{})]})};const C=function(e){let{end_datetime:s,start_datetime:a,status:t,message:n}=e;return(0,f.jsx)("div",{className:"item-row",children:(0,f.jsxs)(r.A,{children:[(0,f.jsx)(l.A,{xs:"3",className:`text-nowrap ${t.toLowerCase()}`,children:t}),(0,f.jsx)(l.A,{xs:"3",className:"text-nowrap",children:new Date(a).toLocaleDateString()}),(0,f.jsx)(l.A,{xs:"3",className:"text-nowrap",children:new Date(a).toLocaleTimeString()}),(0,f.jsx)(l.A,{xs:"3",className:"text-nowrap",children:new Date(s).toLocaleTimeString()}),(0,f.jsx)(l.A,{xs:"12",className:"mt-1",children:b(n)?JSON.stringify(n):n})]})})};let L;const $=function(){const e=(0,n.O$)(u.A,(e=>e.auth)),s=(0,n.O$)(u.A,(e=>e.url)),a=(0,n.O$)(u.A,(e=>e.jobs)),m=(0,n.O$)(u.A,(e=>e.jobsError)),[h,j]=(0,t.useState)(!1),[p,N]=(0,t.useState)(!0),[g,y]=(0,t.useState)(!0);return(0,t.useEffect)((()=>{let t=!0;return e&&(async()=>{N(!0),L=new AbortController;const r=new Date;r.setDate(r.getDate()+1);const l=r.toISOString().split("T")[0];r.setFullYear(r.getFullYear()-1);const n=r.toISOString().split("T")[0];await(async e=>{let{auth:s,url:a,signal:t,from_date:r,to_date:l,currentJobCount:n}=e;const o=await(0,x.A)({operation:{operation:"search_jobs_by_start_date",from_date:r,to_date:l},auth:s,url:a,signal:t});return o.error&&n?u.A.update((e=>{e.jobsError=!0})):!Array.isArray(o)||o.error?u.A.update((e=>{e.jobs=[],e.jobsError=!0})):u.A.update((e=>{e.jobs=[...o].sort(((e,s)=>s.start_datetime-e.end_datetime)),e.jobsError=!1}))})({auth:e,url:s,signal:L.signal,currentJobCount:(null===a||void 0===a?void 0:a.length)||0,from_date:n,to_date:l}),t&&N(!1)})(),()=>{var e;null===(e=L)||void 0===e||e.abort(),t=!1}}),[e,g]),(0,w.A)((()=>e&&h&&y(Date.now())),k.A.refresh_content_interval),(0,f.jsxs)(d.tH,{onError:(e,s)=>(0,A.A)({error:{message:e.message,componentStack:s}}),FallbackComponent:v.A,children:[(0,f.jsxs)(r.A,{className:"floating-card-header",children:[(0,f.jsx)(l.A,{children:"jobs"}),(0,f.jsxs)(l.A,{className:"text-end",children:[(0,f.jsx)(o.A,{color:"link",title:"Update Jobs",className:"me-2",onClick:()=>y(Date.now()),children:(0,f.jsx)("i",{className:"fa "+(p?"fa-spinner fa-spin":"fa-sync-alt")})}),(0,f.jsxs)(o.A,{color:"link",title:"Turn on autofresh",onClick:()=>j(!h),children:[(0,f.jsx)("span",{className:"me-2",children:"auto"}),(0,f.jsx)("i",{className:"fa fa-lg fa-toggle-"+(h?"on":"off")})]})]})]}),(0,f.jsx)(i.A,{className:"my-3",children:(0,f.jsxs)(c.A,{className:"item-list",children:[(0,f.jsxs)(r.A,{className:"header",children:[(0,f.jsx)(l.A,{xs:"3",className:"text-bold text-nowrap",children:"status"}),(0,f.jsx)(l.A,{xs:"3",className:"text-bold text-nowrap",children:"date"}),!p&&m?(0,f.jsx)(l.A,{xs:"6",className:"text-end text-danger text-bold text-nowrap",children:(0,f.jsxs)("b",{children:["job fetch error: ",(new Date).toLocaleTimeString().toLowerCase()]})}):(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)(l.A,{xs:"3",className:"text-bold text-nowrap",children:"start"}),(0,f.jsx)(l.A,{xs:"3",className:"text-bold text-nowrap",children:"end"})]})]}),(0,f.jsx)("hr",{className:"mt-1 mb-0"}),(0,f.jsx)("div",{className:"item-scroller",children:!p||a||h?null!==a&&void 0!==a&&a.length?a.map((e=>(0,f.jsx)(C,{...e},e.id))):(0,f.jsx)("div",{className:"pt-5 text-center",children:"no jobs found"}):(0,f.jsx)("div",{className:"pt-5 text-center",children:(0,f.jsx)("i",{className:"fa fa-spinner fa-spin text-lightgrey"})})})]})}),(0,f.jsx)("br",{})]})};const F=function(e){let{date:s,type:a,message:t}=e;return(0,f.jsx)("div",{className:"item-row",children:(0,f.jsxs)(r.A,{children:[(0,f.jsx)(l.A,{xs:"3",className:"text-danger text-nowrap",children:a}),(0,f.jsx)(l.A,{xs:"9",className:"text-nowrap",children:new Date(s).toLocaleString()}),(0,f.jsx)(l.A,{xs:"12",className:"mt-1",children:b(t)?JSON.stringify(t):t})]})})};var O=a(4817);let M;const T=function(){const{customer_id:e}=(0,y.g)(),s=(0,n.O$)(u.A,(e=>e.compute_stack_id)),a=(0,n.O$)(m.A,(e=>e.auth)),x=(0,n.O$)(m.A,(e=>{var a;return e.alarms&&(null===(a=e.alarms[s])||void 0===a?void 0:a.alarms)}),[s]),h=(0,n.O$)(m.A,(e=>e.alarmsError)),[j,p]=(0,t.useState)(!1),[N,g]=(0,t.useState)(!1),[b,S]=(0,t.useState)(!0);return(0,t.useEffect)((()=>{let s=!0;return a&&(async()=>{g(!0),M=new AbortController,await(0,O.A)({auth:a,signal:M.signal,customer_id:e,currentAlarmsLength:null===x||void 0===x?void 0:x.length}),s&&g(!1)})(),()=>{var e;null===(e=M)||void 0===e||e.abort(),s=!1}}),[a,b]),(0,w.A)((()=>a&&j&&S(Date.now())),k.A.refresh_content_interval),(0,f.jsxs)(d.tH,{onError:(e,s)=>(0,A.A)({error:{message:e.message,componentStack:s}}),FallbackComponent:v.A,children:[(0,f.jsxs)(r.A,{className:"floating-card-header",children:[(0,f.jsx)(l.A,{children:"alarms"}),(0,f.jsxs)(l.A,{className:"text-end",children:[(0,f.jsx)(o.A,{color:"link",title:"Update Jobs",className:"me-2",onClick:()=>S(Date.now()),children:(0,f.jsx)("i",{className:"fa "+(N?"fa-spinner fa-spin":"fa-sync-alt")})}),(0,f.jsxs)(o.A,{color:"link",title:"Turn on autofresh",onClick:()=>p(!j),children:[(0,f.jsx)("span",{className:"me-2",children:"auto"}),(0,f.jsx)("i",{className:"fa fa-lg fa-toggle-"+(j?"on":"off")})]})]})]}),(0,f.jsx)(i.A,{className:"my-3",children:(0,f.jsxs)(c.A,{className:"item-list",children:[(0,f.jsxs)(r.A,{className:"header",children:[(0,f.jsx)(l.A,{xs:"3",className:"text-bold text-nowrap",children:"status"}),(0,f.jsx)(l.A,{xs:"3",className:"text-bold text-nowrap",children:"date"}),(0,f.jsx)(l.A,{xs:"6",className:"text-end text-danger text-bold",children:!N&&h&&(0,f.jsxs)("span",{children:["alarms fetch error: ",(new Date).toLocaleTimeString().toLowerCase()]})})]}),(0,f.jsx)("hr",{className:"mt-1 mb-0"}),(0,f.jsx)("div",{className:"item-scroller",children:!N||x||j?null!==x&&void 0!==x&&x.length?x.map((e=>(0,f.jsx)(F,{...e},e.id))):(0,f.jsx)("div",{className:"pt-5 text-center",children:"no alarms found"}):(0,f.jsx)("div",{className:"pt-5 text-center",children:(0,f.jsx)("i",{className:"fa fa-spinner fa-spin text-lightgrey"})})})]})}),(0,f.jsx)("br",{})]})};const E=function(){return(0,f.jsxs)(r.A,{id:"config",children:[(0,f.jsx)(l.A,{xs:"12",children:(0,f.jsx)(g,{})}),(0,f.jsx)(l.A,{lg:"6",xs:"12",children:(0,f.jsx)(D,{})}),(0,f.jsx)(l.A,{lg:k.A.is_local_studio?6:3,xs:"12",children:(0,f.jsx)($,{})}),!k.A.is_local_studio&&(0,f.jsx)(l.A,{lg:"3",xs:"12",children:(0,f.jsx)(T,{})})]})}},1652:(e,s,a)=>{a.d(s,{A:()=>r});a(9950);var t=a(4414);const r=function(e){let{children:s,header:a,subheader:r,maxHeight:l="auto",minHeight:n="auto",className:o}=e;return(0,t.jsxs)("div",{className:`content-container ${o}`,children:[(0,t.jsxs)("div",{className:"header-container",children:[(0,t.jsx)("span",{className:"header",children:a}),(0,t.jsx)("span",{className:"subheader",children:r})]}),(0,t.jsx)("div",{className:"auto"!==l?"scrollable":"",style:{maxHeight:l,minHeight:n},children:s})]})}}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunkharperdb_studio=self.webpackChunkharperdb_studio||[]).push([[642],{7695:(e,a,s)=>{s.r(a),s.d(a,{default:()=>N});var t=s(9950),n=s(7176),r=s(6114),l=s(3452),i=s(4084),o=s(8156),c=s(6713),d=s(8429),g=s(9435),u=s(5269),m=s(8222),h=s(3150),p=s(3628),x=s(4343),j=s(4414);const f={tableData:[],dataTableColumns:[],totalRecords:0,filtered:[],sorted:[{id:"username",desc:!1}],page:0,loading:!1,totalPages:1,pageSize:20,autoRefresh:!1,showFilter:!1,lastUpdate:!1};let v;const N=function(e){var a,s;let{lastUpdate:N,setLastUpdate:b}=e;const{customer_id:C}=(0,d.g)(),A=(0,d.Zp)(),P=(0,c.O$)(u.A,(e=>e.compute_stack_id)),S=(0,c.O$)(u.A,(e=>e.auth)),w=(0,c.O$)(u.A,(e=>e.url)),[k,z]=(0,t.useState)(f),[F,y]=(0,t.useState)(!0),O=null===(a=k.sorted[0])||void 0===a?void 0:a.id,$=null===(s=k.sorted[0])||void 0===s?void 0:s.desc,R=(0,t.useCallback)((e=>{A(`/o/${C}/i/${P}/users/${e}`)}),[P,C]);return(0,t.useEffect)((()=>{let e=!0;return S&&(async()=>{y(!0),v=new AbortController;const a=await(0,m.A)({auth:S,url:w,signal:v.signal});e&&(y(!1),z({...k,tableData:a,dataTableColumns:[{Header:"username",accessor:"username"},{Header:"role",accessor:"role"}],totalPages:Math.ceil((a.length||k.pageSize)/k.pageSize),loading:!1}))})(),()=>{var a;e=!1,null===(a=v)||void 0===a||a.abort()}}),[S,N,k.pageSize]),(0,t.useEffect)((()=>{let e=!0;if(k.tableData.length&&O){const a=[...[...k.tableData]].sort(((e,a)=>e[O]>a[O]&&$?1:e[O]>a[O]||$?-1:1));e&&z({...k,tableData:a})}return()=>{var a;e=!1,null===(a=v)||void 0===a||a.abort()}}),[O,$]),(0,j.jsxs)(g.tH,{onError:(e,a)=>(0,p.A)({error:{message:e.message,componentStack:a}}),FallbackComponent:h.A,children:[(0,j.jsxs)(n.A,{className:"floating-card-header",children:[(0,j.jsx)(r.A,{children:"existing users"}),(0,j.jsxs)(r.A,{className:"text-end",children:[(0,j.jsx)(l.A,{color:"link",onClick:()=>b(Date.now()),className:"me-2",children:(0,j.jsx)("i",{title:"Refresh Structure",className:"fa "+(F?"fa-spinner fa-spin":"fa-sync-alt")})}),(0,j.jsx)("span",{className:"mx-3 text",children:"|"}),(0,j.jsx)(l.A,{color:"link",title:"Filter Users",className:"me-2",onClick:()=>z({...k,filtered:k.showFilter?[]:k.filtered,showFilter:!k.showFilter}),children:(0,j.jsx)("i",{className:"fa fa-search"})})]})]}),(0,j.jsx)(i.A,{className:"mt-3",children:(0,j.jsx)(o.A,{className:"react-table-holder",children:(0,j.jsx)(x.A,{columns:k.dataTableColumns,data:k.tableData,currentPage:k.page,pageSize:k.pageSize,totalPages:k.totalPages,showFilter:k.showFilter,sorted:k.sorted,loading:F,onFilteredChange:e=>z({...k,filtered:e}),onSortedChange:e=>z({...k,sorted:e}),onPageChange:e=>z({...k,pageSize:e}),onPageSizeChange:e=>z({...k,page:0,pageSize:e}),onRowClick:e=>R(e.username)})})})]})}},4343:(e,a,s)=>{s.d(a,{A:()=>N});var t=s(9950),n=s(2043),r=s(5488),l=s(9435),i=s(7176),o=s(6114),c=s(4414);const d=e=>{let{headerGroups:a,onSortedChange:s,sorted:t,showFilter:n}=e;return a.map((e=>{const{key:a,...r}=e.getHeaderGroupProps();return(0,c.jsxs)("div",{...r,children:[(0,c.jsx)(i.A,{className:"header g-0",children:e.headers.map((e=>{var a,n;return(0,c.jsx)(o.A,{onClick:()=>{var a,n;return s([{id:e.id,desc:(null===(a=t[0])||void 0===a?void 0:a.id)===e.id&&!(null!==(n=t[0])&&void 0!==n&&n.desc)}])},className:`${(null===(a=t[0])||void 0===a?void 0:a.id)===e.id?"sorted":""} ${null!==(n=t[0])&&void 0!==n&&n.desc?"desc":"asc"} ${-1!==e.id.indexOf("hdb-narrow")?"action":""} px-1`,children:(0,c.jsx)("div",{className:"text-renderer",children:e.render("Header")})},e.id)}))}),n&&(0,c.jsx)(i.A,{className:"filter g-0",children:e.headers.map((e=>(0,c.jsx)(o.A,{className:-1!==e.id.indexOf("hdb-narrow")?"action":"",children:e.render("Filter")},e.id)))})]},a)}))};var g=s(3452);const u=function(e){let{page:a,pageSize:s,totalPages:t,onPageChange:n,onPageSizeChange:l,loading:d}=e;return(0,c.jsxs)(i.A,{className:"pagination",children:[(0,c.jsx)(o.A,{xs:"12",sm:"2",className:"previous",children:(0,c.jsx)(g.A,{className:"mb-2 btn-pagination",color:"purple",block:!0,onClick:()=>n(a-1),disabled:!t||0===a,children:(0,c.jsx)("i",{className:"fa fa-chevron-left"})})}),(0,c.jsxs)(o.A,{xs:"12",sm:"4",className:"paginator",children:[(0,c.jsx)("i",{className:"fa fa-book me-2"}),(0,c.jsx)(r.A,{className:"mb-2",type:"number",value:a+1,min:1,max:t,onChange:e=>n(e.target.value-1)}),(0,c.jsxs)("div",{className:"page-count",children:["\xa0/\xa0",d?(0,c.jsx)("i",{className:"fa fa-spinner fa-spin"}):t]})]}),(0,c.jsx)(o.A,{xs:"12",sm:"4",className:"page-size",children:(0,c.jsx)(r.A,{className:"mb-2",type:"select",value:s,onChange:e=>l(e.target.value),children:[20,50,100,250].map((e=>(0,c.jsxs)("option",{value:e,children:[e," rows"]},e)))})}),(0,c.jsx)(o.A,{xs:"12",sm:"2",className:"next",children:(0,c.jsx)(g.A,{className:"mb-2 pull-right btn-pagination",block:!0,color:"purple",onClick:()=>n(a+1),disabled:!t||a+1===t,children:(0,c.jsx)("i",{className:"fa fa-chevron-right"})})})]})};const m=function(e){let{previousPage:a,canPreviousPage:s,pageIndex:t,gotoPage:n,setPageSize:l,pageCount:d,nextPage:u,canNextPage:m,loading:h}=e;return(0,c.jsxs)(i.A,{className:"pagination",children:[(0,c.jsx)(o.A,{xs:"12",sm:"2",className:"previous",children:(0,c.jsx)(g.A,{className:"mb-2 btn-pagination",color:"purple",block:!0,onClick:a,disabled:!d||!s,children:(0,c.jsx)("i",{className:"fa fa-chevron-left"})})}),(0,c.jsxs)(o.A,{xs:"12",sm:"4",className:"paginator",children:[(0,c.jsx)("i",{className:"fa fa-book me-2"}),(0,c.jsx)(r.A,{className:"mb-2",type:"number",value:t+1||1,min:1,max:d,onChange:e=>n(e.target.value?Number(e.target.value)-1:0)}),(0,c.jsxs)("div",{className:"page-count",children:["\xa0/\xa0",h?(0,c.jsx)("i",{className:"fa fa-spinner fa-spin"}):d]})]}),(0,c.jsx)(o.A,{xs:"12",sm:"4",className:"page-size",children:(0,c.jsx)(r.A,{className:"mb-2",type:"select",onChange:e=>{n(0),setTimeout((()=>l(e.target.value)),1e3)},children:[20,50,100,250].map((e=>(0,c.jsxs)("option",{value:e,children:[e," rows"]},e)))})}),(0,c.jsx)(o.A,{xs:"12",sm:"2",className:"next",children:(0,c.jsx)(g.A,{className:"mb-2 pull-right btn-pagination",block:!0,color:"purple",onClick:u,disabled:!d||!m,children:(0,c.jsx)("i",{className:"fa fa-chevron-right"})})})]})};const h=function(e){let{prepareRow:a,row:s,onRowClick:t=!1}=e;return a(s),(0,c.jsx)(i.A,{onClick:()=>t&&t(s.original),className:"g-0",children:s.cells.map((e=>(0,c.jsx)(o.A,{className:-1!==e.column.id.indexOf("hdb-narrow")?"action":"",children:e.render("Cell")},`${e.row.id}-${e.column.id}`)))})};var p=s(3628),x=s(3150);function j(e){let{value:a}=e;return(0,c.jsx)("div",{className:"text-renderer",children:a})}function f(e){let{src:a}=e;const[s,n]=(0,t.useState)(!1),[r,l]=(0,t.useState)(!1);return(0,c.jsxs)("div",{className:"image-renderer",onMouseEnter:()=>n(!0),onMouseLeave:()=>n(!1),children:[(0,c.jsx)("i",{className:"fa fa-image"}),s&&r?(0,c.jsxs)("div",{className:"preview-image no-image",children:[(0,c.jsx)("i",{className:"fa fa-ban text-danger"}),(0,c.jsx)("div",{className:"mt-2",children:"image failed to load"})]}):s?(0,c.jsx)("img",{onError:l,alt:a,src:a,className:"preview-image"}):null]})}const v={Filter:e=>{let{column:{filterValue:a,setFilter:s}}=e;return(0,c.jsx)(r.A,{type:"text",value:a||"",onChange:e=>s(e.target.value||void 0)})},Cell:e=>{let{value:a}=e;return(e=>{switch(Object.prototype.toString.call(e)){case"[object Array]":case"[object Object]":return(0,c.jsx)(j,{value:JSON.stringify(e)});case"[object Boolean]":return(0,c.jsx)(j,{value:e?"true":"false"});case"[object String]":return(a=e)&&(a.match(/^https?.*\.(jpeg|jpg|gif|png)$/)||-1!==a.indexOf("data:image"))?(0,c.jsx)(f,{src:e}):(0,c.jsx)(j,{value:e});default:return(0,c.jsx)(j,{value:e})}var a})(a)}};const N=function(e){let{columns:a,data:s,currentPage:r,pageSize:i,totalPages:o,onFilteredChange:g,onSortedChange:j,onPageChange:f,onPageSizeChange:N,showFilter:b,onRowClick:C,sorted:A,loading:P,manual:S=!1}=e;const{headerGroups:w,page:k,rows:z,prepareRow:F,state:y,setAllFilters:O,canPreviousPage:$,canNextPage:R,pageOptions:E,pageCount:D,gotoPage:H,nextPage:T,previousPage:_,setPageSize:G}=(0,n.useTable)({columns:a,data:s,defaultColumn:v,onFilteredChange:g,onSortedChange:j,onPageChange:f,onPageSizeChange:N,onRowClick:C,manualPagination:S,manualFilters:S,initialState:{pageIndex:r,pageSize:i}},n.useFilters,n.usePagination),[I,L]=(0,t.useState)(!0),U=S||!k.length?z:k;return(0,t.useEffect)((()=>{!b&&y.filters.length?O([]):g(y.filters)}),[y.filters,b]),(0,t.useEffect)((()=>{setTimeout((()=>L(!1)),100)}),[null===U||void 0===U?void 0:U.length]),(0,c.jsxs)(l.tH,{onError:(e,a)=>(0,p.A)({error:{message:e.message,componentStack:a}}),FallbackComponent:x.A,children:[(0,c.jsxs)("div",{className:"react-table-scroller",children:[(0,c.jsx)(d,{headerGroups:w,onSortedChange:j,sorted:A,showFilter:b}),P||I?(0,c.jsx)("div",{className:"centered text-center",children:(0,c.jsx)("i",{className:"fa fa-spinner fa-spin"})}):U.length?U.map((e=>(0,c.jsx)(h,{row:e,prepareRow:F,onRowClick:C},e.id))):(0,c.jsxs)("div",{className:"centered text-center",children:[(0,c.jsx)("i",{className:"fa fa-exclamation-triangle text-danger"}),(0,c.jsx)("div",{className:"mt-2 text-darkgrey",children:"no records"})]})]}),S?(0,c.jsx)(u,{page:r,pageSize:i,totalPages:o,onPageChange:f,onPageSizeChange:N,loading:P}):(0,c.jsx)(m,{previousPage:_,pageSize:i,canPreviousPage:$,pageIndex:y.pageIndex,pageOptions:E,gotoPage:H,setPageSize:G,pageCount:D,nextPage:T,canNextPage:R,loading:P})]})}},8222:(e,a,s)=>{s.d(a,{A:()=>r});var t=s(127),n=s(5269);const r=async e=>{let{auth:a,url:s,signal:r}=e;const l=await(0,t.A)({operation:{operation:"list_users"},auth:a,url:s,signal:r}),i=Array.isArray(l)?[...l].map((e=>({username:e.username,role:e.role.role}))).sort(((e,a)=>e.username.toLowerCase()>a.username.toLowerCase()?1:-1)):[];return n.A.update((e=>{e.users=i})),i}}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunkharperdb_studio=self.webpackChunkharperdb_studio||[]).push([[154],{2729:(e,s,r)=>{r.r(s),r.d(s,{default:()=>$});var a=r(9950),t=r(8429),l=r(4084),n=r(8156),o=r(7176),c=r(6114),u=r(3452),i=r(5488),d=r(6713),m=r(7348),h=r(9435),x=r(127);const p=async e=>{let{auth:s,url:r,username:a,password:t,role:l}=e;return(0,x.A)({operation:{operation:"alter_user",role:l,username:a,password:t,active:!0},auth:s,url:r})};var A=r(5269),j=r(3150),g=r(3628),w=r(8222),b=r(4414);const y=function(){const{username:e}=(0,t.g)(),[s,r]=(0,a.useState)({}),[l,n]=(0,a.useState)({}),x=(0,m.MW)(),y=(0,d.O$)(A.A,(e=>e.auth)),f=(0,d.O$)(A.A,(e=>e.url));return(0,b.jsx)(h.tH,{onError:(e,s)=>(0,g.A)({error:{message:e.message,componentStack:s}}),FallbackComponent:j.A,children:(0,b.jsxs)(o.A,{children:[(0,b.jsxs)(c.A,{xs:"4",className:"py-1",children:["Change user password",(0,b.jsx)("br",{}),(0,b.jsx)("span",{className:"text-small",children:"Modify user's access credentials"})]}),(0,b.jsx)(c.A,{xs:"4",children:(0,b.jsx)(i.A,{id:"password",type:"text",className:"text-center",name:"password",placeholder:"enter new password",value:l.password||"",onChange:e=>n({...l,password:e.target.value})})}),(0,b.jsx)(c.A,{xs:"4",children:(0,b.jsx)(u.A,{block:!0,color:"success",onClick:async()=>{const{password:s}=l;if(s){r({submitted:!0});const a=await p({auth:y,url:f,username:e,password:s});n({}),-1!==a.message.indexOf("updated")?(x.success("password updated"),(0,w.A)({auth:y,url:f}),r({})):(x.error(a.message),r({}))}else r({error:"password is required"})},disabled:s.submitted||!l.password,children:"Update Password"})})]})})};var f=r(9690),v=r(9163),C=r.n(v);const k=function(){const{username:e}=(0,t.g)(),[s,r]=(0,a.useState)({}),[l,n]=(0,a.useState)({}),i=(0,m.MW)(),x=(0,d.O$)(A.A,(e=>e.auth)),y=(0,d.O$)(A.A,(e=>e.url)),v=(0,d.O$)(A.A,(e=>{var s;return parseFloat(null===(s=e.registration)||void 0===s?void 0:s.version)<3})),k=(0,d.O$)(A.A,(e=>e.roles.map((e=>({label:e.role,value:v?e.id:e.role}))))),N=(0,d.O$)(A.A,(s=>s.users&&s.users.find((s=>s.username===e))));return C()((()=>{var e;return n({...l,newRole:null===N||void 0===N||null===(e=N.role)||void 0===e?void 0:e.id})}),[]),(0,b.jsx)(h.tH,{onError:(e,s)=>(0,g.A)({error:{message:e.message,componentStack:s}}),FallbackComponent:j.A,children:(0,b.jsxs)(o.A,{children:[(0,b.jsxs)(c.A,{xs:"4",className:"py-1",children:["Change user role",(0,b.jsx)("br",{}),(0,b.jsx)("span",{className:"text-small",children:"Change what this user can do"})]}),(0,b.jsx)(c.A,{xs:"4",children:(0,b.jsx)(f.Ay,{className:"react-select-container",classNamePrefix:"react-select",onChange:e=>{let{value:s}=e;return n({...l,newRole:s})},options:k.filter((e=>e.value!==N.role.id)),value:k.find((e=>e.value===l.newRole)),isSearchable:!1,isClearable:!1,isLoading:!k,placeholder:"select a role",styles:{placeholder:e=>({...e,textAlign:"center",width:"100%",color:"#BCBCBC"})}})}),(0,b.jsx)(c.A,{xs:"4",children:(0,b.jsx)(u.A,{id:"updateRole",block:!0,color:"success",onClick:async()=>{const{newRole:s}=l;if(s)if(N.role.id===s)r({error:"user already has this role"});else{r({submitted:!0});const a=await p({auth:x,url:y,username:e,role:s});-1!==a.message.indexOf("updated")?(i.success("user role updated"),(0,w.A)({auth:x,url:y}),r({})):(i.error(a.message),r({}))}else r({error:"role is required"})},disabled:l.newRole===N.role.id||"submitted"===s,children:"Update Role"})})]})})};var N=r(2034);const O=function(){const{username:e}=(0,t.g)(),{pathname:s}=(0,t.zy)(),r=(0,t.Zp)(),[l,n]=(0,a.useState)({}),[x,p]=(0,a.useState)({}),y=(0,m.MW)(),f=(0,d.O$)(A.A,(e=>e.auth)),v=(0,d.O$)(A.A,(e=>e.url));return(0,b.jsx)(h.tH,{onError:(e,s)=>(0,g.A)({error:{message:e.message,componentStack:s}}),FallbackComponent:j.A,children:(0,b.jsxs)(o.A,{children:[(0,b.jsxs)(c.A,{xs:"4",className:"py-1",children:["Delete User",(0,b.jsx)("br",{}),(0,b.jsx)("span",{className:"text-small",children:"user will be removed from this instance"})]}),(0,b.jsx)(c.A,{xs:"4",children:(0,b.jsx)(i.A,{id:"delete_username",onChange:e=>n({delete_username:e.target.value}),type:"text",className:"text-center",title:"confirm username to delete",placeholder:`Enter "${e}" here to enable deletion.`,value:l.delete_username||""})}),(0,b.jsx)(c.A,{xs:"4",children:(0,b.jsx)(u.A,{id:"deleteUser",block:!0,color:"success",onClick:async()=>{if(l.delete_username!==e)y.error("Please type the username to delete this user");else{p({submitted:!0});const a=await(0,N.A)({auth:f,username:e,url:v});-1!==a.message.indexOf("successfully")?(y.success(a.message),(0,w.A)({auth:f,url:v}),p({}),setTimeout((()=>r(s.replace(`/users/${e}`,"/users"))),0)):(y.error(a.message),p({}))}},disabled:e!==l.delete_username||x.submitted,children:x.submitted?(0,b.jsx)("i",{className:"fa fa-spinner fa-spin text-white"}):(0,b.jsx)("span",{children:"Delete User"})})})]})})};const $=function(){const{username:e}=(0,t.g)(),{pathname:s}=(0,t.zy)(),r=(0,t.Zp)();return(0,b.jsxs)(b.Fragment,{children:[(0,b.jsxs)("div",{className:"floating-card-header",children:["existing users > edit > ",(0,b.jsx)("b",{children:e})]}),(0,b.jsx)(l.A,{className:"my-3",children:(0,b.jsxs)(n.A,{children:[(0,b.jsx)(y,{}),(0,b.jsx)("hr",{className:"my-3"}),(0,b.jsx)(k,{}),(0,b.jsx)("hr",{className:"my-3"}),(0,b.jsx)(O,{}),(0,b.jsx)("hr",{className:"my-3"}),(0,b.jsxs)(o.A,{children:[(0,b.jsx)(c.A,{xs:"8",className:"py-1"}),(0,b.jsx)(c.A,{xs:"4",children:(0,b.jsx)(u.A,{id:"returnToUserList",block:!0,color:"grey",onClick:()=>r(s.replace(`/${e}`,"")),children:"Return to User List"})})]})]})})]})}},2034:(e,s,r)=>{r.d(s,{A:()=>t});var a=r(127);const t=async e=>{let{auth:s,username:r,url:t}=e;return(0,a.A)({operation:{operation:"drop_user",username:r},auth:s,url:t})}},8222:(e,s,r)=>{r.d(s,{A:()=>l});var a=r(127),t=r(5269);const l=async e=>{let{auth:s,url:r,signal:l}=e;const n=await(0,a.A)({operation:{operation:"list_users"},auth:s,url:r,signal:l}),o=Array.isArray(n)?[...n].map((e=>({username:e.username,role:e.role.role}))).sort(((e,s)=>e.username.toLowerCase()>s.username.toLowerCase()?1:-1)):[];return t.A.update((e=>{e.users=o})),o}}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunkharperdb_studio=self.webpackChunkharperdb_studio||[]).push([[297],{1813:(e,t,r)=>{r.r(t),r.d(t,{default:()=>C});var s=r(9950),n=r(7176),a=r(6114),o=r(8429),c=r(4084),i=r(8156),l=r(5488),u=r(3452),d=r(9690),f=r(9163),p=r.n(f),h=r(6713),m=r(9435),y=r(5269),b=r(8198),v=r(8188),g=r(9561),x=r(3150),j=r(3628),A=r(2415),w=r(4414);const O=function(e){let{setLastUpdate:t}=e;const r=(0,h.O$)(y.A,(e=>e.auth)),n=(0,h.O$)(y.A,(e=>e.url)),a=(0,h.O$)(y.A,(e=>e.users)),o=(0,h.O$)(y.A,(e=>e.roles)),f=(0,h.O$)(y.A,(e=>{var t;return parseFloat(null===(t=e.registration)||void 0===t?void 0:t.version)<3})),[O,N]=(0,s.useState)({}),[S,k]=(0,s.useState)({}),C="224px";return p()((async()=>{const{submitted:e}=O;if(e){const{username:e,password:s,role:o}=S;if(e&&o&&s)if((0,g.A)(e))if(a.find((t=>t.username.toLowerCase()===e.toLowerCase())))N({error:"User already exists"});else{N({processing:!0});const a=await(0,b.A)({auth:r,role:o,username:e,password:s,url:n});-1!==a.message.indexOf("successfully")?(t(Date.now()),N({success:a.message})):N({error:a.message})}else N({error:"usernames must have only letters, numbers, hyphens, and underscores"}),setTimeout((()=>N({})),2e3);else N({error:"All fields must be filled out"});setTimeout((()=>k({})),2e3)}}),[O]),p()((()=>{N({})}),[S]),p()((()=>o&&k({...S,role:!1})),[o]),(0,s.useEffect)((()=>{(0,A.A)({auth:r,url:n})}),[r,n]),(0,w.jsxs)(m.tH,{onError:(e,t)=>(0,j.A)({error:{message:e.message,componentStack:t}}),FallbackComponent:x.A,children:[(0,w.jsx)("span",{className:"floating-card-header",children:"add user"}),O.processing?(0,w.jsx)(v.A,{className:"my-3",height:C,status:"processing",header:"Adding User",subhead:"The Account Airedale Is A Good Boy"}):O.success?(0,w.jsx)(v.A,{className:"my-3",height:C,status:"success",header:"Success!",subhead:O.success}):O.error?(0,w.jsx)(v.A,{className:"my-3",height:C,status:"error",header:O.error,subhead:"Please try again"}):(0,w.jsx)(c.A,{className:"my-3",children:(0,w.jsxs)(i.A,{children:[(0,w.jsx)(l.A,{id:"username",type:"text",className:"mb-2 text-center",name:"username",placeholder:"username",value:S.username||"",onChange:e=>k({...S,username:e.target.value})}),(0,w.jsx)(l.A,{id:"password",type:"text",className:"mb-2 text-center",name:"password",placeholder:"password",value:S.password||"",onChange:e=>k({...S,password:e.target.value})}),(0,w.jsx)(d.Ay,{className:"react-select-container",classNamePrefix:"react-select",onChange:e=>{let{value:t}=e;return k({...S,role:t})},options:o&&o.map((e=>({label:e.role,value:f?e.id:e.role}))),value:o&&S.role&&o.find((e=>e.value===S.role)),isSearchable:!1,isClearable:!1,isLoading:!o,placeholder:"select a role",styles:{placeholder:e=>({...e,textAlign:"center",width:"100%",color:"#BCBCBC"})}}),(0,w.jsx)(u.A,{id:"addInstanceUser",color:"success",className:"mt-3",block:!0,onClick:()=>N({submitted:!0}),children:"Add User"})]})})]})};var N=r(4979);const S=(0,s.lazy)((()=>Promise.all([r.e(43),r.e(642)]).then(r.bind(r,7695)))),k=(0,s.lazy)((()=>r.e(154).then(r.bind(r,2729))));const C=function(){const{username:e}=(0,o.g)(),[t,r]=(0,s.useState)(!0);return(0,w.jsxs)(n.A,{children:[(0,w.jsx)(a.A,{xl:"3",lg:"4",md:"5",xs:"12",children:(0,w.jsx)(O,{setLastUpdate:r})}),(0,w.jsx)(a.A,{xl:"9",lg:"8",md:"7",xs:"12",className:"pb-5",children:(0,w.jsx)(s.Suspense,{fallback:(0,w.jsx)(N.A,{header:" ",spinner:!0}),children:e?(0,w.jsx)(k,{}):(0,w.jsx)(S,{lastUpdate:t,setLastUpdate:r})})})]})}},8188:(e,t,r)=>{r.d(t,{A:()=>o});r(9950);var s=r(4084),n=r(8156),a=r(4414);const o=function(e){let{header:t,subhead:r=" ",height:o,status:c,className:i}=e;return(0,a.jsx)(s.A,{className:`form-status ${i}`,children:(0,a.jsxs)(n.A,{className:"text-center",style:{height:o},children:[(0,a.jsx)("div",{className:"text-bold",children:t}),(0,a.jsx)("div",{className:"py-4",children:(0,a.jsx)("i",{className:"fa fa-lg "+("processing"===c?"fa-spinner fa-spin text-purple":"success"===c?"fa-check-circle text-purple":"fa-exclamation-triangle text-danger")})}),(0,a.jsx)("div",{className:"text-grey",children:r})]})})}},8198:(e,t,r)=>{r.d(t,{A:()=>n});var s=r(127);const n=async e=>{let{auth:t,role:r,username:n,password:a,url:o}=e;return(0,s.A)({operation:{operation:"add_user",role:r,username:n,password:a,active:!0},auth:t,url:o})}},2415:(e,t,r)=>{r.d(t,{A:()=>a});var s=r(127),n=r(5269);const a=async e=>{let{auth:t,url:r}=e;const a=await(0,s.A)({operation:{operation:"list_roles"},auth:t,url:r}),o=[...Array.isArray(a)?a:[]].sort(((e,t)=>e.role.toLowerCase()>t.role.toLowerCase()?1:-1));return n.A.update((e=>{e.roles=o})),o}},9561:(e,t,r)=>{r.d(t,{A:()=>s});const s=e=>e.match(/^[-a-zA-Z0-9_]+$/)},5488:(e,t,r)=>{r.d(t,{A:()=>x});var s=r(9950),n=r(1942),a=r.n(n),o=r(8738),c=r.n(o),i=r(1497);function l(e){return l="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},l(e)}var u=["className","cssModule","type","bsSize","valid","invalid","tag","addon","plaintext","innerRef"];function d(){return d=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var r=arguments[t];for(var s in r)Object.prototype.hasOwnProperty.call(r,s)&&(e[s]=r[s])}return e},d.apply(this,arguments)}function f(e,t){if(null==e)return{};var r,s,n=function(e,t){if(null==e)return{};var r,s,n={},a=Object.keys(e);for(s=0;s<a.length;s++)r=a[s],t.indexOf(r)>=0||(n[r]=e[r]);return n}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(s=0;s<a.length;s++)r=a[s],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(n[r]=e[r])}return n}function p(e,t){for(var r=0;r<t.length;r++){var s=t[r];s.enumerable=s.enumerable||!1,s.configurable=!0,"value"in s&&(s.writable=!0),Object.defineProperty(e,s.key,s)}}function h(e,t){return h=Object.setPrototypeOf?Object.setPrototypeOf.bind():function(e,t){return e.__proto__=t,e},h(e,t)}function m(e){var t=function(){if("undefined"===typeof Reflect||!Reflect.construct)return!1;if(Reflect.construct.sham)return!1;if("function"===typeof Proxy)return!0;try{return Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],(function(){}))),!0}catch(e){return!1}}();return function(){var r,s=b(e);if(t){var n=b(this).constructor;r=Reflect.construct(s,arguments,n)}else r=s.apply(this,arguments);return function(e,t){if(t&&("object"===l(t)||"function"===typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined");return y(e)}(this,r)}}function y(e){if(void 0===e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return e}function b(e){return b=Object.setPrototypeOf?Object.getPrototypeOf.bind():function(e){return e.__proto__||Object.getPrototypeOf(e)},b(e)}var v={children:a().node,type:a().string,size:a().oneOfType([a().number,a().string]),bsSize:a().string,valid:a().bool,invalid:a().bool,tag:i.Wx,innerRef:a().oneOfType([a().object,a().func,a().string]),plaintext:a().bool,addon:a().bool,className:a().string,cssModule:a().object},g=function(e){!function(e,t){if("function"!==typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&h(e,t)}(o,e);var t,r,n,a=m(o);function o(e){var t;return function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,o),(t=a.call(this,e)).getRef=t.getRef.bind(y(t)),t.focus=t.focus.bind(y(t)),t}return t=o,(r=[{key:"getRef",value:function(e){this.props.innerRef&&this.props.innerRef(e),this.ref=e}},{key:"focus",value:function(){this.ref&&this.ref.focus()}},{key:"render",value:function(){var e=this.props,t=e.className,r=e.cssModule,n=e.type,a=void 0===n?"text":n,o=e.bsSize,l=e.valid,p=e.invalid,h=e.tag,m=e.addon,y=e.plaintext,b=e.innerRef,v=f(e,u),g=["switch","radio","checkbox"].indexOf(a)>-1,x="select"===a,j="range"===a,A=h||(x||"textarea"===a?a:"input"),w="form-control";y?(w="".concat(w,"-plaintext"),A=h||"input"):j?w="form-range":x?w="form-select":g&&(w=m?null:"form-check-input"),v.size&&/\D/g.test(v.size)&&((0,i.mc)('Please use the prop "bsSize" instead of the "size" to bootstrap\'s input sizing.'),o=v.size,delete v.size);var O=(0,i.qO)(c()(t,p&&"is-invalid",l&&"is-valid",!!o&&(x?"form-select-".concat(o):"form-control-".concat(o)),w),r);return("input"===A||h&&"function"===typeof h)&&(v.type="switch"===a?"checkbox":a),v.children&&!y&&"select"!==a&&"string"===typeof A&&"select"!==A&&((0,i.mc)('Input with a type of "'.concat(a,'" cannot have children. Please use "value"/"defaultValue" instead.')),delete v.children),s.createElement(A,d({},v,{ref:b,className:O,"aria-invalid":p}))}}])&&p(t.prototype,r),n&&p(t,n),Object.defineProperty(t,"prototype",{writable:!1}),o}(s.Component);g.propTypes=v;const x=g}}]);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";(self.webpackChunkharperdb_studio=self.webpackChunkharperdb_studio||[]).push([[358],{7408:(e,t,s)=>{s.r(t),s.d(t,{default:()=>pe});var a=s(9950),r=s(8429),n=s(6713),i=s(7348),o=s(9163),l=s.n(o),u=s(135),c=s(5553),d=s(5269),p=s(4319),m=s(2072),h=s(8125),v=s(5746),_=s(9690),b=s(2074),A=s(9435),g=s(3150),f=s(3628),y=s(5996),j=s(4414);const x=function(e){let{routes:t=[]}=e;const{compute_stack_id:s,customer_id:a}=(0,r.g)(),[i]=(0,p.A)({}),o=(0,r.Zp)(),l=(0,r.zy)(),u=(0,n.O$)(d.A,(e=>e.defaultBrowseURL)),x=(0,n.O$)(c.A,(e=>{var t;return e.alarms&&(null===(t=e.alarms[s])||void 0===t?void 0:t.alarmCounts.total)}),[s]),{options:$,activeOption:k}=(0,n.O$)(c.A,(e=>{const t=e.instances&&e.instances.find((e=>e.compute_stack_id===s)),a=e.instances&&e.instances.filter((e=>e.compute_stack_id!==s));return{options:a&&a.map((e=>({label:(0,j.jsxs)("span",{children:[(0,j.jsx)("i",{className:`d-none d-sm-inline-block fa me-2 fa-${e.is_local?"server":["CREATE_IN_PROGRESS","UPDATE_IN_PROGRESS","CONFIGURING_NETWORK"].includes(e.status)?"circle-exclamation":"cloud"} ${["CREATE_IN_PROGRESS","UPDATE_IN_PROGRESS","CONFIGURING_NETWORK"].includes(e.status)&&"opacity-25"}`}),e.instance_name," ",["CREATE_IN_PROGRESS","UPDATE_IN_PROGRESS","CONFIGURING_NETWORK"].includes(e.status)&&`(${e.status.replace(/_/g," ").toLowerCase()})`]}),value:e.compute_stack_id,has_auth:i[e.compute_stack_id],is_unavailable:["CREATE_IN_PROGRESS","UPDATE_IN_PROGRESS","CONFIGURING_NETWORK"].includes(e.status)}))),activeOption:{label:(0,j.jsxs)("span",{children:[(0,j.jsx)("i",{className:"d-none d-sm-inline-block fa me-2 fa-"+(t?null!==t&&void 0!==t&&t.is_local?"server":"cloud":"")}),null===t||void 0===t?void 0:t.instance_name]}),value:s}}}),[s]),O=`/o/${a}/i/${s}`,w=l.pathname.split(`/i/${s}`)[1].split("/")[1],N=null===t||void 0===t?void 0:t.find((e=>e.link===w));return(0,j.jsx)(A.tH,{onError:(e,t)=>(0,f.A)({error:{message:e.message,componentStack:t}}),FallbackComponent:g.A,children:(0,j.jsxs)(m.A,{className:"app-subnav",children:[!y.A.is_local_studio&&(0,j.jsx)(h.A,{navbar:!0,className:"instance-select",children:(0,j.jsx)(_.Ay,{className:"react-select-container",classNamePrefix:"react-select",onChange:e=>{let{value:t,has_auth:s,is_unavailable:r}=e;return!r&&o(s?`/o/${a}/i/${t}/${null===N||void 0===N?void 0:N.link}`:`/o/${a}/instances/login`)},options:$||[],value:k,defaultValue:k.value,isSearchable:!1,isClearable:!1,isLoading:!$,noOptionsMessage:()=>"No other instances available"})}),(0,j.jsx)(h.A,{navbar:!0,className:"instance-nav d-none d-lg-flex",children:null===t||void 0===t?void 0:t.map((e=>(0,j.jsx)(v.A,{children:(0,j.jsxs)(b.k2,{title:e.link,className:"nav-link",to:`${O}/${"browse"===e.link&&u?`${e.link}/${u}`:e.link}`,children:[(0,j.jsx)("i",{className:`d-none d-sm-inline-block fa me-2 fa-${e.icon}`}),e.label||e.link,!!x&&"status"===e.link&&(0,j.jsx)("span",{className:"badge",children:x})]})},e.path)))}),(0,j.jsx)(h.A,{navbar:!0,className:"instance-nav-select d-flex d-lg-none",children:(0,j.jsx)(_.Ay,{className:"react-select-container",classNamePrefix:"react-select",width:"200px",onChange:e=>{let{value:t}=e;return o(`${O}/${t}`)},options:null===t||void 0===t?void 0:t.map((e=>({label:(0,j.jsxs)("span",{children:[(0,j.jsx)("i",{className:`d-none d-sm-inline-block fa me-2 fa-${e.icon}`}),e.label]}),value:e.link}))),isLoading:!(null!==N&&void 0!==N&&N.link),value:{label:(0,j.jsxs)("span",{children:[(0,j.jsx)("i",{className:`d-none d-sm-inline-block fa me-2 fa-${null===N||void 0===N?void 0:N.icon}`}),null===N||void 0===N?void 0:N.label]}),value:null===N||void 0===N?void 0:N.link},defaultValue:null===N||void 0===N?void 0:N.link,isSearchable:!1,isClearable:!1})})]})})};var $=s(4084),k=s(8156),O=s(1942),w=s.n(O),N=s(8738),E=s.n(N),S=s(1497),P=["className","cssModule","tag"];function T(){return T=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var s=arguments[t];for(var a in s)Object.prototype.hasOwnProperty.call(s,a)&&(e[a]=s[a])}return e},T.apply(this,arguments)}function R(e,t){if(null==e)return{};var s,a,r=function(e,t){if(null==e)return{};var s,a,r={},n=Object.keys(e);for(a=0;a<n.length;a++)s=n[a],t.indexOf(s)>=0||(r[s]=e[s]);return r}(e,t);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);for(a=0;a<n.length;a++)s=n[a],t.indexOf(s)>=0||Object.prototype.propertyIsEnumerable.call(e,s)&&(r[s]=e[s])}return r}var C={className:w().string,cssModule:w().object,tag:S.Wx};function I(e){var t=e.className,s=e.cssModule,r=e.tag,n=void 0===r?"div":r,i=R(e,P),o=(0,S.qO)(E()(t,"card-title"),s);return a.createElement(n,T({},i,{className:o}))}I.propTypes=C;const z=I;var q=s(7176),F=s(6114),G=s(3369),U=s(6165),B=s(5900);const D=(0,a.lazy)((()=>Promise.all([s.e(43),s.e(702)]).then(s.bind(s,1435)))),L=(0,a.lazy)((()=>s.e(972).then(s.bind(s,1271)))),W=(0,a.lazy)((()=>Promise.all([s.e(23),s.e(374)]).then(s.bind(s,3888)))),H=(0,a.lazy)((()=>Promise.all([s.e(545),s.e(417)]).then(s.bind(s,8086)))),K=(0,a.lazy)((()=>s.e(5).then(s.bind(s,4029)))),M={tableData:[],dataTableColumns:[],filtered:[],sorted:[],page:0,pageSize:20,autoRefresh:!1,showFilter:!1,newEntityAttributes:!1,hashAttribute:!1};function V(e){let{table:t}=e;return(0,j.jsx)($.A,{className:"my-3 missing-primary-key",children:(0,j.jsxs)(k.A,{children:[(0,j.jsx)(z,{children:"No Primary Key"}),(0,j.jsx)("i",{className:"fa fa-warning mt-3"}),(0,j.jsxs)("span",{className:"mt-3",children:["The table ",`'${t}'`," does not have a primary key. The HarperDB Studio does not currently support tables without a primary key defined. Please see the"," ",(0,j.jsx)("a",{href:"https://docs.harperdb.io/docs",target:"_blank",rel:"noreferrer",children:"HarperDB documention"})," ","to see the standard HarperDB querying options."]})]})})}const Z=function(){var e,t,s,i,o;const l=(0,r.Zp)(),u=(0,r.zy)(),{schema:c,table:m,action:h,customer_id:v,compute_stack_id:_}=(0,r.g)(),[b]=(0,p.A)({}),y=b&&b[_],x=(0,n.O$)(d.A,(e=>e.url)),$=(0,n.O$)(d.A,(e=>e.registration)),k=null===$||void 0===$?void 0:$.version,[O,w]=(null===k||void 0===k?void 0:k.split("."))||[],N=`${O}.${w}`,E=(0,n.O$)(d.A,(e=>e.structure)),[S,P]=(0,a.useState)({schemas:[],tables:[],activeTable:!1}),[T,R]=(0,a.useState)(M),C=`/o/${v}/i/${_}/browse`,I=(null===(e=b[_])||void 0===e?void 0:e.super)||!0===(null===(t=b[_])||void 0===t?void 0:t.structure),z=I||(null===(s=b[_])||void 0===s?void 0:s.structure)&&(null===(i=b[_])||void 0===i||null===(o=i.structure)||void 0===o?void 0:o.includes(c)),Z=I?`Please ${c&&S.tables&&!S.tables.length||!S.schemas.length?"create":"choose"} a ${c?"table":""+(N>=4.2?"database":"schema")}`:"This user has not been granted access to any tables. A super-user must update this user's role.",[Y,J]=(0,a.useState)(!0);return(0,a.useEffect)((()=>{!async function(){if(m){const e=await(0,G.A)({auth:y,url:x,schema:c,table:m});J(Boolean(e.hash_attribute))}}()}),[y,x,c,m]),(0,a.useEffect)((()=>{if(E){const e=Object.keys(E),t=Object.keys((null===E||void 0===E?void 0:E[c])||{});if(!e.length&&"/browse"!==u.pathname)return P({schemas:[],tables:[],activeTable:!1}),void l(`/o/${v}/i/${_}/browse`);if(e.length&&!e.includes(c))return void l(`/o/${v}/i/${_}/browse/${e[0]}`);if(t.length&&!t.includes(m))return void l(`/o/${v}/i/${_}/browse/${c}/${t[0]}`);S.activeTable!==`${_}:${c}:${m}`&&R(M),P({schemas:e,tables:t,activeTable:`${_}:${c}:${m}`})}}),[E,c,m,_]),(0,a.useEffect)((()=>{(0,B.A)({auth:y,url:x})}),[y,x,c,m]),(0,j.jsxs)(q.A,{id:"browse",children:[(0,j.jsx)(F.A,{xl:"3",lg:"4",md:"5",xs:"12",children:(0,j.jsxs)(A.tH,{onError:(e,t)=>(0,f.A)({error:{message:e.message,componentStack:t}}),FallbackComponent:g.A,children:[(0,j.jsx)(L,{activeItem:c,items:S.schemas,baseUrl:C,itemType:N>=4.2?"database":"schema",showForm:I}),c&&(0,j.jsx)(L,{activeItem:m,items:S.tables,activeSchema:c,baseUrl:`${C}/${c}`,itemType:"table",showForm:z}),(0,j.jsx)(K,{centerText:!0,label:`refresh ${N>=4.2?"databases":"schemas"} and tables`})]})}),(0,j.jsx)(F.A,{xs:"12",className:"d-block d-md-none",children:(0,j.jsx)("hr",{})}),(0,j.jsx)(F.A,{xl:"9",lg:"8",md:"7",xs:"12",children:(0,j.jsx)(A.tH,{onError:(e,t)=>(0,f.A)({error:{message:e.message,componentStack:t}}),FallbackComponent:g.A,children:c&&m&&"csv"===h&&S.activeTable?(0,j.jsx)(H,{}):c&&m&&h&&S.activeTable?(0,j.jsx)(W,{newEntityAttributes:T.newEntityAttributes,hashAttribute:T.hashAttribute}):c&&m&&S.activeTable?(0,j.jsx)(D,{activeTable:S.activeTable,tableState:T,setTableState:R}):c&&m&&!Y?(0,j.jsx)(V,{}):(0,j.jsx)(U.A,{headline:Z,icon:(0,j.jsx)("i",{className:"fa fa-exclamation-triangle text-warning"})})})})]})};var Y=s(2914);const J=(0,a.lazy)((()=>Promise.all([s.e(452),s.e(232)]).then(s.bind(s,1281)))),Q=(0,a.lazy)((()=>Promise.all([s.e(43),s.e(851),s.e(452),s.e(449)]).then(s.bind(s,7105)))),X=(0,a.lazy)((()=>Promise.all([s.e(43),s.e(851),s.e(575)]).then(s.bind(s,1679)))),ee=(0,a.lazy)((()=>Promise.all([s.e(239),s.e(741)]).then(s.bind(s,7368)))),te=(0,a.lazy)((()=>s.e(541).then(s.bind(s,5633)))),se=(0,a.lazy)((()=>s.e(297).then(s.bind(s,1813)))),ae=(0,a.lazy)((()=>s.e(522).then(s.bind(s,7591)))),re=(0,a.lazy)((()=>Promise.all([s.e(43),s.e(23),s.e(302)]).then(s.bind(s,4410)))),ne=e=>{let{super_user:t,version:s=null}=e;const a=(0,Y.A)({version:s}),r={element:(0,j.jsx)(Z,{}),path:"browse/:schema?/:table?/:action?/:hash?",link:"browse",label:"browse",icon:"list"},n={element:(0,j.jsx)(Q,{}),path:"query",link:"query",label:"query",icon:"search"},i={element:(0,j.jsx)(se,{}),path:"users/:username?",link:"users",label:"users",icon:"users"},o={element:(0,j.jsx)(ae,{}),path:"roles/:role_id?",link:"roles",label:"roles",icon:"check-square"},l={element:(0,j.jsx)(J,{}),path:"charts",link:"charts",label:"charts",icon:"chart-line"},u={element:(0,j.jsx)(X,{}),path:"replication",link:"replication",label:"replication",icon:"cubes"},c={element:(0,j.jsx)(re,{}),path:"functions/:action?/:project?/:type?/:file?",link:"functions",label:"functions",icon:"project-diagram"},d={element:(0,j.jsx)(re,{}),path:"applications",link:"applications",label:"applications",icon:"project-diagram"},p={element:(0,j.jsx)(te,{}),path:"status",link:"status",label:"status",icon:"tachometer-alt"},m={element:(0,j.jsx)(ee,{}),path:"config",link:"config",label:"config",icon:"wrench"};return y.A.is_local_studio&&t?[r,n,i,o,u,a?d:c,p,m]:t?[r,n,i,o,l,u,a?d:c,p,m]:y.A.is_local_studio?[r,n,l]:[r,n]};var ie=s(4979),oe=s(3906),le=s(9519),ue=s(4817),ce=s(5911),de=s(717);const pe=function(){const{compute_stack_id:e,customer_id:t}=(0,r.g)(),s=(0,i.MW)(),o=(0,r.Zp)(),[m,h]=(0,a.useState)(!0),[v,_]=(0,p.A)({}),b=v&&v[e],A=(0,n.O$)(c.A,(e=>e.auth)),g=(0,n.O$)(c.A,(e=>{var s,a;return null===(s=e.auth)||void 0===s||null===(a=s.orgs)||void 0===a?void 0:a.find((e=>{var s;return(null===(s=e.customer_id)||void 0===s?void 0:s.toString())===t}))})),f=(0,n.O$)(c.A,(e=>e.products)),$=(0,n.O$)(c.A,(e=>e.regions)),k=(0,n.O$)(c.A,(e=>e.subscriptions)),O=(0,n.O$)(c.A,(e=>e.instances)),w=(0,n.O$)(c.A,(t=>e&&t.instances&&t.instances.find((t=>t.compute_stack_id===e))),[e]),N=(0,n.O$)(d.A,(e=>e.url)),E=(0,n.O$)(d.A,(e=>e.restarting)),S=(0,n.O$)(d.A,(e=>e.registration)),P=ne({customer_id:t,super_user:null===b||void 0===b?void 0:b.super,version:null===S||void 0===S?void 0:S.version}),[T,R]=(0,a.useState)(!1);return l()((()=>{!y.A.is_local_studio&&A&&t&&(0,le.A)({auth:A,customer_id:t})}),[A,t,y.A.is_local_studio]),l()((()=>{!y.A.is_local_studio&&A&&t&&(0,ue.A)({auth:A,customer_id:t})}),[A,t,O,y.A.is_local_studio]),l()((()=>{A&&f&&$&&k&&t&&(null===O||void 0===O||!O.length)&&(0,oe.A)({auth:A,customer_id:t,products:f,regions:$,subscriptions:k,instanceCount:null===O||void 0===O?void 0:O.length})}),[A,f,$,t,k,O]),l()((async()=>{if(w&&b){d.A.update((()=>w));const{error:e}=await(0,B.A)({auth:b,url:w.url});await(0,de.A)({auth:b,url:w.url}),h(!1),e&&(y.A.is_local_studio?(_({...v,local:!1}),setTimeout((()=>o("/")),10)):setTimeout((()=>o(`/o/${t}/instances`)),10))}}),[w]),l()((()=>{T&&N&&null!==b&&void 0!==b&&b.super?s.success("Your instance user role has been upgraded to super_user"):T&&N&&s.success("Your instance user role has been downgraded to standard")}),[s,null===b||void 0===b?void 0:b.super]),l()((()=>R(!0)),(()=>R(!1)),[]),(0,u.A)((async()=>{if(N&&!y.A.is_local_studio){var a,r;const l=await(0,ce.A)({auth:b,url:N});if(l.error&&"Network request failed"!==l.message&&!E)s.error("Unable to connect to instance."),o(`/o/${t}/instances`);else if(!l.error&&E)d.A.update((e=>{e.restarting=!1}));else if(!l.error&&(null===b||void 0===b?void 0:b.super)!==(null===(a=l.role)||void 0===a||null===(r=a.permission)||void 0===r?void 0:r.super_user)){var n,i;_({...v,[e]:{...b,super:null===(n=l.role)||void 0===n||null===(i=n.permission)||void 0===i?void 0:i.super_user}})}}}),y.A.check_user_interval),(0,j.jsxs)(j.Fragment,{children:[(0,j.jsx)(x,{routes:P}),(y.A.is_local_studio||g&&O)&&!m?(0,j.jsx)(a.Suspense,{fallback:(0,j.jsx)(ie.A,{header:" ",spinner:!0}),children:(0,j.jsxs)(r.BV,{children:[P.map((e=>(0,j.jsx)(r.qh,{path:e.path,element:e.element},e.path))),(0,j.jsx)(r.qh,{path:"*",element:(0,j.jsx)(r.C5,{to:P[0].path,replace:!0})})]})}):(0,j.jsx)(ie.A,{header:"loading instance",spinner:!0})]})}},6165:(e,t,s)=>{s.d(t,{A:()=>i});s(9950);var a=s(4084),r=s(8156),n=s(4414);const i=function(e){let{headline:t,description:s,icon:i,warning:o}=e;return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("div",{className:"floating-card-header text-end",children:"\xa0"}),(0,n.jsx)(a.A,{className:"my-3",children:(0,n.jsx)(r.A,{children:(0,n.jsxs)("div",{className:"empty-prompt narrow",children:[i,t&&(0,n.jsx)("div",{className:"mt-3",children:t}),(0,n.jsx)("div",{className:"mt-3",children:s}),o&&(0,n.jsxs)("div",{className:"warning-text mt-3",children:["Warning: ",o]})]})})})]})}},5346:(e,t,s)=>{s.d(t,{A:()=>r});var a=s(127);const r=async e=>{let{auth:t,url:s}=e;return(0,a.A)({operation:{operation:"describe_all"},auth:t,url:s})}},3369:(e,t,s)=>{s.d(t,{A:()=>r});var a=s(127);const r=async e=>{let{auth:t,url:s,schema:r,table:n,signal:i}=e;return(0,a.A)({operation:{operation:"describe_table",schema:r,table:n},auth:t,url:s,signal:i})}},717:(e,t,s)=>{s.d(t,{A:()=>n});var a=s(127),r=s(5269);const n=async e=>{let{auth:t,url:s}=e;const n=await(0,a.A)({operation:{operation:"registration_info"},auth:t,url:s,timeout:5e3});return r.A.update((e=>{e.registration=n.error?{}:n})),n}},5911:(e,t,s)=>{s.d(t,{A:()=>r});var a=s(127);const r=async e=>{let{auth:t,url:s}=e;return(0,a.A)({operation:{operation:"user_info"},auth:t,url:s,timeout:5e3})}},4817:(e,t,s)=>{s.d(t,{A:()=>l});var a=s(2714),r=s(5553),n=s(3628),i=s(5996);const o=e=>{let{alarms:t}=e;return Object.values(t).reduce(((e,t)=>(e[t.type.trim()]=(e[t.type.trim()]||0)+1,e.total+=1,e)),{total:0})},l=async e=>{let{auth:t,customer_id:s,signal:l,currentAlarmsLength:u}=e,c=null;try{if(c=await(0,a.A)({endpoint:"getAlarms",method:"POST",payload:{customer_id:s},signal:l,auth:t}),c.error&&u)return r.A.update((e=>{e.alarmsError=!0}));if(!Array.isArray(c)||c.error)return r.A.update((e=>{e.alarms=[],e.alarmsError=!0}));const e=[...c].sort(((e,t)=>t.date-e.date)),n=Object.assign({},...e.map((e=>{var t;const s=null===(t=c)||void 0===t?void 0:t.filter((t=>t.compute_stack_id===e.compute_stack_id));return{[e.compute_stack_id]:{alarms:s,alarmCounts:o({alarms:s.filter((e=>e.date+1e3*i.A.alarm_badge_threshold>Date.now()))})}}})));return r.A.update((e=>{e.alarms=n,e.alarmsError=!1}))}catch(d){return(0,n.A)({type:"lms data",status:"error",url:i.A.lms_api_url,operation:"getAlarms",request:{customer_id:s},error:{catch:d.toString()},customer_id:s})}}},9519:(e,t,s)=>{s.d(t,{A:()=>l});var a=s(2714),r=s(5553),n=s(3628),i=s(5996),o=s(7596);const l=async e=>{let{auth:t,customer_id:s}=e,l=null;try{var u;return l=await(0,a.A)({endpoint:"getCustomer",method:"POST",payload:{customer_id:s},auth:t}),(0,o.A)({auth:t,customer_id:s,stripe_id:null===(u=l)||void 0===u?void 0:u.stripe_id}),l.error||r.A.update((e=>{var t;e.customer={...l,customer_id:s},e.hasCard=null===(t=l.stripe_payment_methods)||void 0===t?void 0:t[0]})),l}catch(c){return(0,n.A)({type:"lms data",status:"error",url:i.A.lms_api_url,operation:"getCustomer",request:{customer_id:s},error:{catch:c.toString()},customer_id:s})}}},3906:(e,t,s)=>{s.d(t,{A:()=>u});var a=s(2714),r=s(5553),n=s(4549);const i=e=>{let{is_local:t,wavelength_zone_id:s,cloud_provider:a}=e;switch(!0){case s:return"wavelength_compute";case t:return"local_compute";case"akamai"===a:return"akamai_compute";default:return"cloud_compute"}};var o=s(3628),l=s(5996);const u=async e=>{let{auth:t,customer_id:s,products:u,regions:c,subscriptions:d,instanceCount:p=0}=e,m=null;try{if(m=await(0,a.A)({endpoint:"getInstances",method:"POST",payload:{customer_id:s,user_id:t.user_id},auth:t}),Array.isArray(m)){const e=m.map((e=>{const t=(e=>{let{instance:t,products:s,regions:a,subscriptions:r}=e;try{var o,l;const e=t.compute_subscription_id?r[i(t)]:s[i(t)],u=null===e||void 0===e?void 0:e.find((e=>e.value.stripe_plan_id===t.stripe_plan_id&&(!t.compute_subscription_id||e.value.compute_subscription_id===t.compute_subscription_id))),c=t.storage_subscription_id?r.cloud_storage:s.cloud_storage,d=!t.is_local&&(null===c||void 0===c?void 0:c.find((e=>e.value.data_volume_size===t.data_volume_size&&e.value.stripe_storage_plan_id===t.stripe_storage_plan_id&&(!t.storage_subscription_id||e.value.storage_subscription_id===t.storage_subscription_id)))),p=parseFloat((null===u||void 0===u||null===(o=u.value)||void 0===o?void 0:o.compute_price)||0)+parseFloat((null===d||void 0===d||null===(l=d.value)||void 0===l?void 0:l.storage_price)||0),m=p?`$${(0,n.A)(p.toFixed(2))}`:"FREE",h=t.compute_subscription_id&&t.storage_subscription_id?"PREPAID":p?`${m}/${u.value.compute_interval}`:"FREE",v=!t.is_local&&a.find((e=>e.value===t.instance_region));return{compute:null===u||void 0===u?void 0:u.value,storage:null===d||void 0===d?void 0:d.value,totalPrice:p,totalPriceString:m,totalPriceStringWithInterval:h,region:v}}catch(u){return console.log(u)}})({instance:e,products:u,regions:c,subscriptions:d});return{...e,...t}})),t=e.sort(((e,t)=>e.instance_name>t.instance_name?1:-1));return r.A.update((e=>{e.instances=t})),t}return!p&&r.A.update((e=>{e.instances=[]}))}catch(h){return(0,o.A)({type:"lms data",status:"error",url:l.A.lms_api_url,operation:"getInstances",request:{customer_id:s},error:{catch:h.toString()},customer_id:s})}}},7596:(e,t,s)=>{s.d(t,{A:()=>u});var a=s(2714),r=s(5553),n=s(3628),i=s(2434),o=s(2696),l=s(5996);const u=async e=>{let{auth:t,customer_id:s,stripe_id:u}=e;try{const e=await(0,a.A)({endpoint:"getPrepaidSubscriptions",method:"POST",payload:{customer_id:s,stripe_id:u},auth:t});return!e.error&&r.A.update((t=>{t.subscriptions={cloud_storage:(0,o.A)(e.cloud_storage||[]),cloud_compute:(0,i.A)(e.cloud_compute||[]),wavelength_compute:(0,i.A)(e.wavelength_compute||[]),local_compute:(0,i.A)(e.local_compute||[])}}))}catch(c){return(0,n.A)({type:"lms data",status:"error",url:l.A.lms_api_url,operation:"getPrepaidSubscriptions",error:{catch:c.toString()}})}}},127:(e,t,s)=>{s.d(t,{A:()=>r});var a=s(4038);const r=async e=>{let{operation:t,auth:s,url:r,timeout:n=0,authType:i,signal:o}=e;try{const e=new AbortController,c=setTimeout((()=>n?e.abort():null),n),d=await(0,a.hd)(r,{signal:o||e.signal,method:"POST",body:JSON.stringify(t),headers:{"Content-Type":"application/json",authorization:"token"===i?`Bearer ${s.token}`:`Basic ${btoa(`${s.user}:${s.pass}`)}`}});clearTimeout(c);const p=await d.json();var l,u;return p.error?{error:!0,message:p.error,type:"response",role_errors:null===(l=p.main_permissions)||void 0===l?void 0:l.join(", "),access_errors:null===(u=p.unauthorized_access)||void 0===u?void 0:u.map((e=>{var t,s,a,r,n,i;return{schema:e.schema,table:e.table,type:null!==(t=e.required_attribute_permissions)&&void 0!==t&&t.length?"attribute":"table",entity:null!==(s=e.required_attribute_permissions)&&void 0!==s&&s.length?null===(a=e.required_attribute_permissions[0])||void 0===a?void 0:a.attribute_name:e.table,permission:null!==(r=e.required_attribute_permissions)&&void 0!==r&&r.length?null===(n=e.required_attribute_permissions[0])||void 0===n?void 0:n.required_permissions.join(", "):null===(i=e.required_table_permissions)||void 0===i?void 0:i.join(", ")}}))}:200!==d.status?{error:!0,message:`Error of type ${d.status}`,type:"status"}:p}catch(c){return{error:!0,message:c.message,type:"catch"}}}},396:(e,t,s)=>{s.d(t,{A:()=>a});const a=e=>{const t={},s=[];return e.error||Object.keys(e).sort().forEach(((a,r)=>{t[a]={},0===r&&s.push(a),Object.keys(e[a]).sort().forEach(((n,i)=>{0===i&&0===r&&s.push(n),t[a][n]={record_count:e[a][n].record_count,hashAttribute:e[a][n].hash_attribute}}))})),{structure:t,defaultBrowseURL:s.join("/")}}},5900:(e,t,s)=>{s.d(t,{A:()=>o});var a=s(5269),r=s(5346),n=s(396),i=s(717);const o=async e=>{let{auth:t,url:s}=e;const o=await(0,r.A)({auth:t,url:s}),l=await(0,i.A)({auth:t,url:s});if(o.error)return{error:"Could not log into instance"};const{structure:u,defaultBrowseURL:c}=(0,n.A)(o);return a.A.update((e=>{e.auth=t,e.structure=u,e.defaultBrowseURL=c,e.loading=!1,e.registration=l})),{error:!1}}},2914:(e,t,s)=>{s.d(t,{A:()=>a});const a=e=>{let{version:t}=e;if(t){const[e,s]=(null===t||void 0===t?void 0:t.split("."))||[],a=parseInt(e,10),r=parseInt(s,10);return parseFloat(`${a}.${r}`)>=4.2}return!0}},4319:(e,t,s)=>{s.d(t,{A:()=>a});const a=(0,s(6997).A)("instanceAuths")},5269:(e,t,s)=>{s.d(t,{A:()=>a});const a=new(s(6713).il)({})},9163:(e,t,s)=>{var a=s(9950);function r(e,t,s){var r="function"===typeof t;a.useEffect((function(){var s,a=!0,n=e((function(){return a}));return Promise.resolve(n).then((function(e){s=e})),function(){a=!1,r&&t(s)}}),r?s:t)}e.exports=r,e.exports.useAsyncEffect=r},135:(e,t,s)=>{s.d(t,{A:()=>n});var a=s(9950),r=function(){};function n(e,t,s){var n=(0,a.useRef)(r);(0,a.useEffect)((function(){n.current=e})),(0,a.useEffect)((function(){s&&null!==t&&!1!==t&&n.current()}),[s]),(0,a.useEffect)((function(){if(null!==t&&!1!==t){var e=setInterval((function(){return n.current()}),t);return function(){return clearInterval(e)}}}),[t])}}}]);
|