harperdb 4.6.3 → 4.6.5

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.
Files changed (71) hide show
  1. package/README.md +1 -1
  2. package/bin/harperdb.js +75 -75
  3. package/bin/lite.js +74 -74
  4. package/launchServiceScripts/launchNatsIngestService.js +74 -74
  5. package/launchServiceScripts/launchNatsReplyService.js +74 -74
  6. package/launchServiceScripts/launchUpdateNodes4-0-0.js +74 -74
  7. package/npm-shrinkwrap.json +249 -227
  8. package/package.json +1 -1
  9. package/resources/ResourceInterface.d.ts +1 -0
  10. package/resources/Table.d.ts +39 -39
  11. package/resources/analytics/hostnames.d.ts +39 -39
  12. package/resources/blob.d.ts +4 -4
  13. package/resources/databases.d.ts +39 -39
  14. package/server/jobs/jobProcess.js +74 -74
  15. package/server/replication/replicationConnection.d.ts +3 -0
  16. package/server/threads/threadServer.js +72 -72
  17. package/studio/build-local/asset-manifest.json +55 -0
  18. package/studio/build-local/index.html +1 -0
  19. package/studio/build-local/static/css/main.a46e2bd8.css +13 -0
  20. package/studio/build-local/static/js/11.17b2806b.chunk.js +2 -0
  21. package/studio/build-local/static/js/11.17b2806b.chunk.js.LICENSE.txt +8 -0
  22. package/studio/build-local/static/js/164.794c66a1.chunk.js +1 -0
  23. package/studio/build-local/static/js/23.55c690ce.chunk.js +1 -0
  24. package/studio/build-local/static/js/239.5d22fd48.chunk.js +2 -0
  25. package/studio/build-local/static/js/239.5d22fd48.chunk.js.LICENSE.txt +5 -0
  26. package/studio/build-local/static/js/240.2c705279.chunk.js +2 -0
  27. package/studio/build-local/static/js/240.2c705279.chunk.js.LICENSE.txt +16 -0
  28. package/studio/build-local/static/js/279.bbdf2928.chunk.js +1 -0
  29. package/studio/build-local/static/js/43.73dc432d.chunk.js +2 -0
  30. package/studio/build-local/static/js/43.73dc432d.chunk.js.LICENSE.txt +1 -0
  31. package/studio/build-local/static/js/724.daf66453.chunk.js +1 -0
  32. package/studio/build-local/static/js/805.6aab06e2.chunk.js +1 -0
  33. package/studio/build-local/static/js/833.8c4a4a90.chunk.js +1 -0
  34. package/studio/build-local/static/js/851.4c6536d6.chunk.js +1 -0
  35. package/studio/build-local/static/js/860.727e7fc8.chunk.js +1 -0
  36. package/studio/build-local/static/js/browse-csvupload.088afad6.chunk.js +1 -0
  37. package/studio/build-local/static/js/browse-datatable.9e5f57a4.chunk.js +1 -0
  38. package/studio/build-local/static/js/browse-entitymanager.b1467efe.chunk.js +1 -0
  39. package/studio/build-local/static/js/browse-jsonviewer.c5715070.chunk.js +1 -0
  40. package/studio/build-local/static/js/custom-functions.a20f8853.chunk.js +1 -0
  41. package/studio/build-local/static/js/instance-cluster.d9f5d94b.chunk.js +1 -0
  42. package/studio/build-local/static/js/instance-config.cc1f0e92.chunk.js +1 -0
  43. package/studio/build-local/static/js/instance-logs.9d60d6ad.chunk.js +1 -0
  44. package/studio/build-local/static/js/instance-roles.cf38a24f.chunk.js +1 -0
  45. package/studio/build-local/static/js/instance-status.3c776235.chunk.js +1 -0
  46. package/studio/build-local/static/js/instance-users-datatable.2fa06057.chunk.js +1 -0
  47. package/studio/build-local/static/js/instance-users-edit.d26ea514.chunk.js +1 -0
  48. package/studio/build-local/static/js/instance-users.f11ec173.chunk.js +1 -0
  49. package/studio/build-local/static/js/instance.99cd7bf2.chunk.js +1 -0
  50. package/studio/build-local/static/js/instances.289c385e.chunk.js +1 -0
  51. package/studio/build-local/static/js/main.14ef684d.js +2 -0
  52. package/studio/build-local/static/js/main.14ef684d.js.LICENSE.txt +39 -0
  53. package/studio/build-local/static/js/offline-app.54fd7408.chunk.js +1 -0
  54. package/studio/build-local/static/js/online-app.060fd872.chunk.js +1 -0
  55. package/studio/build-local/static/js/organization-billing.e0e08f86.chunk.js +1 -0
  56. package/studio/build-local/static/js/organization-users.5755c9f0.chunk.js +1 -0
  57. package/studio/build-local/static/js/organization.6db4c138.chunk.js +1 -0
  58. package/studio/build-local/static/js/organizations.cf417207.chunk.js +1 -0
  59. package/studio/build-local/static/js/profile.3502eb02.chunk.js +1 -0
  60. package/studio/build-local/static/js/resetPassword.bdccbba4.chunk.js +1 -0
  61. package/studio/build-local/static/js/roles-jsonviewer.2488b213.chunk.js +1 -0
  62. package/studio/build-local/static/js/signIn.44a8eea8.chunk.js +1 -0
  63. package/studio/build-local/static/js/signUp.84b57b20.chunk.js +1 -0
  64. package/studio/build-local/static/js/structure-reloader.99217942.chunk.js +1 -0
  65. package/studio/build-local/static/js/topnav.dc554a18.chunk.js +1 -0
  66. package/studio/build-local/static/js/updatePassword.56bfd9f7.chunk.js +1 -0
  67. package/studio/build-local/static/media/PPRadioGrotesk-Bold.31436818ea74a78b55af.woff +0 -0
  68. package/studio/build-local/static/media/checkmark.3d7d209874703a9cd0cc.svg +3 -0
  69. package/studio/build-local/static/media/logo_harper_db_studio.81490e70fa4af6879c2e.png +0 -0
  70. package/utility/hdbTerms.d.ts +1 -0
  71. package/utility/scripts/restartHdb.js +74 -74
@@ -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:()=>E});var n=r(9379),o=r(9950),s=r(5077),i=r(7176),a=r(6114),c=r(3452),l=r(4084),u=r(8156),f=r(6713),p=r(5269),d=r(9435),m=r(9708),h=r(5488),y=r(7348),b=r(2765),g=r(2415),j=r(6196),v=r(4414);const x=function(e){let{itemType:t,toggleDropItem:r,toggleCreate:l,baseUrl:u}=e;const{compute_stack_id:d,customer_id:x}=(0,s.g)(),A=(0,s.Zp)(),O=(0,y.MW)(),w=(0,f.O$)(p.A,(e=>e.auth)),N=(0,f.O$)(p.A,(e=>e.url)),_=(0,f.O$)(p.A,(e=>e.is_local)),k=(0,f.O$)(p.A,(e=>e.roles&&e.roles.map((e=>e.role)))),[R,S]=(0,o.useState)({});return(0,o.useEffect)((()=>{r()}),[r]),(0,v.jsx)(m.A,{onSubmit:async e=>{if(e.preventDefault(),!R.name)return S((0,n.A)((0,n.A)({},R),{},{error:!0})),O.error("You must provide a role name");if(k.includes(R.name))return S((0,n.A)((0,n.A)({},R),{},{error:!0})),O.error("Role with that name already exists");if(!(0,j.A)(R.name))return S((0,n.A)((0,n.A)({},R),{},{error:!0})),O.error("Role names must have only letters and underscores");const r="cluster user"===t?{cluster_user:!0}:"super user"===t?{super_user:!0}:{},o=await(0,b.A)({auth:w,url:N,is_local:_,compute_stack_id:d,customer_id:x,role:R.name,permission:r});return o.error?(S((0,n.A)((0,n.A)({},R),{},{error:!0})),O.error(o.message)):(S({}),await(0,g.A)({auth:w,url:N}),A("".concat(u,"/").concat(o.id)))},children:(0,v.jsxs)(i.A,{className:"item-row form",children:[(0,v.jsx)(a.A,{className:"input-holder",children:(0,v.jsx)(h.A,{id:"name",invalid:R.error,onChange:e=>S({name:e.target.value.toString()}),type:"text",name:"name",placeholder:"name"})}),(0,v.jsxs)(a.A,{className:"item-action",children:[(0,v.jsx)(c.A,{id:"createRole",color:"success",className:"round me-1",children:(0,v.jsx)("i",{className:"fa fa-check text-white"})}),(0,v.jsx)(c.A,{color:"black",className:"round",onClick:()=>l(!1),children:(0,v.jsx)("i",{className:"fa fa-times text-white"})})]})]})})};var A=r(127);const O=function(e){let{item:t,baseUrl:r,isActive:n,toggleDropItem:l,isDropping:u}=e;const d=(0,s.Zp)(),m=(0,y.MW)(),[h,b]=(0,o.useState)(!1),j=(0,f.O$)(p.A,(e=>e.auth)),x=(0,f.O$)(p.A,(e=>e.url)),O=async()=>{if(!h)return!1;const e=await(async e=>{let{auth:t,id:r,url:n}=e;return(0,A.A)({operation:{operation:"drop_role",id:r},auth:t,url:n})})({auth:j,url:x,id:t.id});return e.error?m.error(e.message):((0,g.A)({auth:j,url:x}),!!n&&setTimeout((()=>d(r)),100))};return(0,v.jsxs)(i.A,{className:"item-row ".concat(n?"active":""),onClick:()=>!(n||u||h)&&d("".concat(r,"/").concat(t.id)),children:[(0,v.jsx)(a.A,{className:"item-label ".concat(h?"text-danger text-nowrap":""),children:h?"drop ".concat(t.role,"?"):t.role}),(0,v.jsx)(a.A,{className:"item-action",children:h?(0,v.jsxs)(v.Fragment,{children:[(0,v.jsx)(c.A,{id:"confirmDropRole",color:"danger",className:"round me-1",title:"confirm drop ".concat(t.role),onClick:()=>{b(!1),O()},children:(0,v.jsx)("i",{className:"fa fa-check text-white"})}),(0,v.jsx)(c.A,{color:"black",className:"round",title:"Cancel drop ".concat(t.role),onClick:()=>{b(!1)},children:(0,v.jsx)("i",{className:"fa fa-times text-white"})})]}):u?(0,v.jsx)(c.A,{id:"drop".concat(t.role),color:"danger",className:"round",title:"Drop ".concat(t.role),onClick:()=>{b(t),l(!1)},children:(0,v.jsx)("i",{className:"fa fa-minus text-white"})}):n?(0,v.jsx)(c.A,{color:"purple",className:"round",title:"Viewing ".concat(t.role),children:(0,v.jsx)("i",{className:"fa fa-chevron-right"})}):null})]},t)};const w=function(e){let{items:t,itemType:r,toggleDropItem:n,isDropping:o,toggleCreate:s,isCreating:l,showForm:u}=e;return(0,v.jsxs)(i.A,{className:"floating-card-header",children:[(0,v.jsxs)(a.A,{children:[r,"s"]}),u&&t&&t.length?(0,v.jsxs)(a.A,{className:"text-end",children:[(0,v.jsx)(c.A,{color:"link",title:"Remove ".concat(r,"s"),className:"add-remove me-3",onClick:()=>{n(!o),s(!1)},children:(0,v.jsx)("i",{className:"fa fa-minus"})}),(0,v.jsx)(c.A,{color:"link",title:"Add ".concat(r),className:"add-remove me-1",onClick:()=>{s(!l),n(!1)},children:(0,v.jsx)("i",{className:"fa fa-plus"})})]}):null]})};var N=r(3150),_=r(3628);const k=function(e){let{items:t,activeItem:r,showForm:n,baseUrl:s,itemType:i}=e;const[a,c]=(0,o.useState)(!1),[f,p]=(0,o.useState)(!1);(0,o.useEffect)((()=>{p(),c()}),[r,t]);const m=t&&[...t].sort(((e,t)=>e.role<t.role?-1:1));return(0,v.jsx)(d.tH,{onError:(e,t)=>(0,_.A)({error:{message:e.message,componentStack:t}}),FallbackComponent:N.A,children:(0,v.jsxs)("div",{className:"entity-manager",children:[(0,v.jsx)(w,{items:t,itemType:i,isDropping:a,toggleDropItem:c,isCreating:f,toggleCreate:p,showForm:n}),(0,v.jsx)(l.A,{className:"my-3",children:(0,v.jsxs)(u.A,{children:[m&&m.length?m.map((e=>(0,v.jsx)(O,{item:e,baseUrl:s,isActive:r===e.id,isDropping:a,toggleDropItem:c},e.id))):null,(t&&!t.length||f)&&(0,v.jsx)(x,{itemType:i,baseUrl:s,isDropping:a,toggleDropItem:c,isCreating:f,toggleCreate:p})]})})]})})};var R=r(4979),S=r(717);const C=(0,o.lazy)((()=>Promise.all([r.e(239),r.e(831)]).then(r.bind(r,3109)))),P={roleName:!1,canEdit:!1,superUsers:[],clusterUsers:[],standardUsers:[],showAttributes:!1};const E=function(){const{role_id:e,customer_id:t}=(0,s.g)(),r=(0,f.O$)(p.A,(e=>e.compute_stack_id)),d=(0,f.O$)(p.A,(e=>e.auth)),m=(0,f.O$)(p.A,(e=>e.url)),h=(0,f.O$)(p.A,(e=>e.roles),[r]),[y,b]=(0,o.useState)(!1),[j,x]=(0,o.useState)(P),A="/o/".concat(t,"/i/").concat(r,"/roles"),O=(0,f.O$)(p.A,(e=>{var t;return null===(t=e.registration)||void 0===t?void 0:t.version})),[w,N]=(null===O||void 0===O?void 0:O.split("."))||[],_=parseFloat("".concat(w,".").concat(N)),E=(0,o.useCallback)((async()=>{b(!0),await(0,g.A)({auth:d,url:m}),await(0,S.A)({auth:d,url:m}),b(!1)}),[d,m]);return(0,o.useEffect)((()=>{if(h){const t=e&&h.find((t=>t.id===e));x((0,n.A)((0,n.A)({},j),{},{roleName:t&&t.role,canEdit:t&&!t.permission.cluster_user&&!t.permission.super_user,clusterUsers:h.filter((e=>e.permission.cluster_user)),superUsers:h.filter((e=>e.permission.super_user)),standardUsers:h.filter((e=>!e.permission.super_user&&!e.permission.cluster_user)),showAttributes:!1}))}else x(P)}),[e,h]),(0,o.useEffect)((()=>{E()}),[E,r]),(0,v.jsxs)(i.A,{id:"roles",children:[(0,v.jsxs)(a.A,{xl:"3",lg:"4",md:"5",xs:"12",children:[(0,v.jsx)(k,{showForm:!0,activeItem:e,items:j.superUsers,baseUrl:A,itemType:"super user"}),(0,v.jsx)(k,{showForm:!0,activeItem:e,items:j.clusterUsers,baseUrl:A,itemType:"cluster user"}),(0,v.jsx)(k,{showForm:!0,activeItem:e,items:j.standardUsers,baseUrl:A,itemType:"standard role"})]}),(0,v.jsxs)(a.A,{xl:"9",lg:"8",md:"7",xs:"12",children:[(0,v.jsxs)(i.A,{className:"floating-card-header",children:[j.canEdit&&(0,v.jsxs)(a.A,{children:["edit role > ",j.roleName]}),(0,v.jsxs)(a.A,{className:"text-md-end",children:[j.canEdit&&(0,v.jsxs)(v.Fragment,{children:[(0,v.jsxs)(c.A,{color:"link",tabIndex:"0",title:"Show Attributes",onClick:()=>x((0,n.A)((0,n.A)({},j),{},{showAttributes:!j.showAttributes})),children:[(0,v.jsx)("span",{className:"me-2",children:"show all attributes"}),(0,v.jsx)("i",{className:"fa fa-lg fa-toggle-".concat(j.showAttributes?"on":"off")})]}),(0,v.jsx)("span",{className:"mx-3 text",children:"|"})]}),(0,v.jsxs)(c.A,{color:"link",onClick:E,className:"me-2",children:[(0,v.jsx)("span",{className:"me-2",children:"refresh roles"}),(0,v.jsx)("i",{title:"Refresh Roles",className:"fa ".concat(y?"fa-spinner fa-spin":"fa-sync-alt")})]})]})]}),j.canEdit?(0,v.jsx)(l.A,{className:"my-3",children:(0,v.jsx)(u.A,{className:"full-height",children:(0,v.jsx)(o.Suspense,{fallback:(0,v.jsx)(R.A,{header:" ",spinner:!0}),children:(0,v.jsx)(C,{showAttributes:j.showAttributes,fetchRoles:E})})})}):(0,v.jsx)(l.A,{className:"my-3",children:(0,v.jsx)(u.A,{children:e?(0,v.jsxs)("div",{className:"empty-prompt",children:["Super Users and Cluster Users have full access to all"," ",_>=4.2?"databases":"schemas",", tables, and attributes."]}):(0,v.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 c=["className","cssModule","tag","innerRef"];function l(){return l=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},l.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,c),p=(0,i.qO)(t,r);return n.createElement(s,l({},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),c=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 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"===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 g={children:s().node,type:s().string,size:s().oneOfType([s().number,s().string]),bsSize:s().string,valid:s().bool,invalid:s().bool,tag:c.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,l=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,c.mc)('Please use the prop "bsSize" instead of the "size" to bootstrap\'s input sizing.'),i=g.size,delete g.size);var w=(0,c.qO)(a()(t,d&&"is-invalid",l&&"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,c.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],{6812:(e,s,t)=>{t.r(s),t.d(s,{default:()=>E});var a=t(9950),r=t(7176),n=t(6114),l=t(6713),o=t(3452),i=t(4084),c=t(8156),d=t(9435),u=t(5269),m=t(127);const x=1e9,h=1073741824;var p=t(1652),j=t(3150),v=t(3628),A=t(4414);let f;const y=function(){const e=(0,l.O$)(u.A,(e=>e.auth)),s=(0,l.O$)(u.A,(e=>e.url)),t=(0,l.O$)(u.A,(e=>e.systemInfo)),y=(0,l.O$)(u.A,(e=>e.is_local)),[g,N]=(0,a.useState)(!(null!==t&&void 0!==t&&t.totalMemory)),w=async()=>{N(!0),f=new AbortController,await(async e=>{var s,t,a,r,n,l,o,i,c,d,p,j;let{auth:v,url:A,signal:f,refresh:y,is_local:g,cachedSystemInfo:N,skip:w=[]}=e;const k=["network","disk","cpu","memory","system"],b=await(0,m.A)({operation:{operation:"system_information",attributes:null!==w&&void 0!==w&&w.length?k.filter((e=>!w.includes(e))):k},auth:v,url:A,signal:f});if(b.error&&y)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=w.includes("memory")?parseFloat(N.totalMemory):b.memory.total/h,_=w.includes("memory")?parseFloat(N.usedMemory):b.memory.active/h,C=w.includes("memory")?parseFloat(N.freeMemory):b.memory.available/h,F=w.includes("memory")?N.memoryStatus:C/S<.1?"danger":C/S<.25?"warning":"success",D=w.includes("disk")?parseFloat(N.totalDisk):"darwin"===b.system.platform?(null===(s=b.disk)||void 0===s||null===(t=s.size)||void 0===t?void 0:t[0].size)/x:g?(null===(n=b.disk)||void 0===n||null===(l=n.size)||void 0===l?void 0:l[0].size)/h:(null===(a=b.disk)||void 0===a||null===(r=a.size)||void 0===r?void 0:r.find((e=>"/home/ubuntu/hdb"===e.mount)).size)/h,L=w.includes("disk")?parseFloat(N.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))/x:g?(null===(p=b.disk)||void 0===p||null===(j=p.size)||void 0===j?void 0:j.reduce(((e,s)=>e+s.used),0))/h:(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)/h,M=w.includes("disk")?parseFloat(N.freeDisk):D-L,O=w.includes("disk")?N.diskStatus:M/D<.1?"danger":M/D<.25?"warning":"success",E=w.includes("cpu")?N.cpuInfo:"".concat(b.cpu.manufacturer," ").concat(b.cpu.brand),I=w.includes("cpu")?N.cpuCores:"".concat(b.cpu.physicalCores," physical / ").concat(b.cpu.cores," virtual"),T=w.includes("cpu")?parseFloat(N.cpuLoad):b.cpu.current_load.currentLoad||b.cpu.current_load.currentload||0,$=w.includes("cpu")?N.cpuStatus:T>90?"danger":T>75?"warning":"success",z=w.includes("network")?parseFloat(N.networkTransferred):b.network.stats.reduce(((e,s)=>e+s.tx_bytes),0)/x,H=w.includes("network")?parseFloat(N.networkReceived):b.network.stats.reduce(((e,s)=>e+s.rx_bytes),0)/x,J=w.includes("network")?parseFloat(N.networkLatency):b.network.latency.ms,U=w.includes("network")?parseFloat(N.networkLatencyStatus):J>1e3?"danger":J>500?"warning":"success",B={totalMemory:null===S||void 0===S?void 0:S.toFixed(2),usedMemory:null===_||void 0===_?void 0:_.toFixed(2),freeMemory:null===C||void 0===C?void 0:C.toFixed(2),memoryStatus:F,totalDisk:null===D||void 0===D?void 0:D.toFixed(2),usedDisk:null===L||void 0===L?void 0:L.toFixed(2),freeDisk:null===M||void 0===M?void 0:M.toFixed(2),diskStatus:O,cpuInfo:E,cpuCores:I,cpuLoad:null===T||void 0===T?void 0:T.toFixed(2),cpuStatus:$,networkTransferred:null===z||void 0===z?void 0:z.toFixed(2),networkReceived:null===H||void 0===H?void 0:H.toFixed(2),networkLatency:J,networkLatencyStatus:U};return u.A.update((e=>{e.systemInfo=B}))})({auth:e,url:s,is_local:y,signal:f.signal,refresh:!!t,previousSystemInfo:t}),N(!1)};return(0,a.useEffect)((()=>(!e||null!==t&&void 0!==t&&t.totalMemory||w(),()=>{var e;null===(e=f)||void 0===e||e.abort()})),[e]),(0,A.jsxs)(d.tH,{onError:(e,s)=>(0,v.A)({error:{message:e.message,componentStack:s}}),FallbackComponent:j.A,children:[(0,A.jsxs)(r.A,{className:"floating-card-header",children:[(0,A.jsx)(n.A,{children:"host system"}),(0,A.jsx)(n.A,{className:"text-end",children:(0,A.jsx)(o.A,{color:"link",title:"Update Metrics",className:"me-2",onClick:w,children:(0,A.jsx)("i",{className:"fa ".concat(g?"fa-spinner fa-spin":"fa-sync-alt")})})})]}),(0,A.jsx)(i.A,{className:"my-3 instance-details",children:(0,A.jsx)(c.A,{children:t?(0,A.jsxs)(r.A,{children:[(0,A.jsx)(n.A,{children:(0,A.jsx)(p.A,{header:"Total Memory",className:"mb-3",children:(0,A.jsxs)("div",{className:"nowrap-scroll",children:[(null===t||void 0===t?void 0:t.totalMemory)||"...","GB"]})})}),(0,A.jsx)(n.A,{children:(0,A.jsx)(p.A,{header:"Active Memory",className:"mb-3",children:(0,A.jsxs)("div",{className:"nowrap-scroll",children:[(null===t||void 0===t?void 0:t.usedMemory)||"...","GB"]})})}),(0,A.jsx)(n.A,{children:(0,A.jsx)(p.A,{header:"Available Memory",className:"mb-3",children:(0,A.jsxs)("div",{className:"nowrap-scroll text-".concat((null===t||void 0===t?void 0:t.memoryStatus)||"grey"),children:[(null===t||void 0===t?void 0:t.freeMemory)||"...","GB"]})})}),(0,A.jsx)(n.A,{children:(0,A.jsx)(p.A,{header:"CPU Cores",className:"mb-3",children:(0,A.jsx)("div",{className:"nowrap-scroll",children:(null===t||void 0===t?void 0:t.cpuCores)||"..."})})}),(0,A.jsx)(n.A,{children:(0,A.jsx)(p.A,{header:"CPU Load",className:"mb-3",children:(0,A.jsxs)("div",{className:"nowrap-scroll text-".concat((null===t||void 0===t?void 0:t.cpuStatus)||"grey"),children:[(null===t||void 0===t?void 0:t.cpuLoad)||"...","%"]})})})]}):(0,A.jsx)("div",{className:"pt-5 text-center",children:(0,A.jsx)("i",{className:"fa fa-spinner fa-spin text-purple"})})})}),(0,A.jsx)("br",{})]})};var g=t(9379),N=t(135),w=t(5996);var k=t(7209);const b=function(e){let{end_datetime:s,start_datetime:t,status:a,message:l}=e;return(0,A.jsx)("div",{className:"item-row",children:(0,A.jsxs)(r.A,{children:[(0,A.jsx)(n.A,{xs:"3",className:"text-nowrap ".concat(a.toLowerCase()),children:a}),(0,A.jsx)(n.A,{xs:"3",className:"text-nowrap",children:new Date(t).toLocaleDateString()}),(0,A.jsx)(n.A,{xs:"3",className:"text-nowrap",children:new Date(t).toLocaleTimeString()}),(0,A.jsx)(n.A,{xs:"3",className:"text-nowrap",children:new Date(s).toLocaleTimeString()}),(0,A.jsx)(n.A,{xs:"12",className:"mt-1",children:(0,k.A)(l)?JSON.stringify(l):l})]})})};let S;const _=function(){const e=(0,l.O$)(u.A,(e=>e.auth)),s=(0,l.O$)(u.A,(e=>e.url)),t=(0,l.O$)(u.A,(e=>e.jobs)),x=(0,l.O$)(u.A,(e=>e.jobsError)),[h,p]=(0,a.useState)(!1),[f,y]=(0,a.useState)(!0),[k,_]=(0,a.useState)(!0);return(0,a.useEffect)((()=>{let a=!0;return e&&(async()=>{y(!0),S=new AbortController;const r=new Date;r.setDate(r.getDate()+1);const n=r.toISOString().split("T")[0];r.setFullYear(r.getFullYear()-1);const l=r.toISOString().split("T")[0];await(async e=>{let{auth:s,url:t,signal:a,from_date:r,to_date:n,currentJobCount:l}=e;const o=await(0,m.A)({operation:{operation:"search_jobs_by_start_date",from_date:r,to_date:n},auth:s,url:t,signal:a});return o.error&&l?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:S.signal,currentJobCount:(null===t||void 0===t?void 0:t.length)||0,from_date:l,to_date:n}),a&&y(!1)})(),()=>{var e;null===(e=S)||void 0===e||e.abort(),a=!1}}),[e,k]),(0,N.A)((()=>e&&h&&_(Date.now())),w.A.refresh_content_interval),(0,A.jsxs)(d.tH,{onError:(e,s)=>(0,v.A)({error:{message:e.message,componentStack:s}}),FallbackComponent:j.A,children:[(0,A.jsxs)(r.A,{className:"floating-card-header",children:[(0,A.jsx)(n.A,{children:"jobs"}),(0,A.jsxs)(n.A,{className:"text-end",children:[(0,A.jsx)(o.A,{color:"link",title:"Update Jobs",className:"me-2",onClick:()=>_(Date.now()),children:(0,A.jsx)("i",{className:"fa ".concat(f?"fa-spinner fa-spin":"fa-sync-alt")})}),(0,A.jsxs)(o.A,{color:"link",title:"Turn on autofresh",onClick:()=>p(!h),children:[(0,A.jsx)("span",{className:"me-2",children:"auto"}),(0,A.jsx)("i",{className:"fa fa-lg fa-toggle-".concat(h?"on":"off")})]})]})]}),(0,A.jsx)(i.A,{className:"my-3",children:(0,A.jsxs)(c.A,{className:"item-list",children:[(0,A.jsxs)(r.A,{className:"header",children:[(0,A.jsx)(n.A,{xs:"3",className:"text-bold text-nowrap",children:"status"}),(0,A.jsx)(n.A,{xs:"3",className:"text-bold text-nowrap",children:"date"}),!f&&x?(0,A.jsx)(n.A,{xs:"6",className:"text-end text-danger text-bold text-nowrap",children:(0,A.jsxs)("b",{children:["job fetch error: ",(new Date).toLocaleTimeString().toLowerCase()]})}):(0,A.jsxs)(A.Fragment,{children:[(0,A.jsx)(n.A,{xs:"3",className:"text-bold text-nowrap",children:"start"}),(0,A.jsx)(n.A,{xs:"3",className:"text-bold text-nowrap",children:"end"})]})]}),(0,A.jsx)("hr",{className:"mt-1 mb-0"}),(0,A.jsx)("div",{className:"item-scroller",children:!f||t||h?null!==t&&void 0!==t&&t.length?t.map((e=>(0,A.jsx)(b,(0,g.A)({},e),e.id))):(0,A.jsx)("div",{className:"pt-5 text-center",children:"no jobs found"}):(0,A.jsx)("div",{className:"pt-5 text-center",children:(0,A.jsx)("i",{className:"fa fa-spinner fa-spin text-lightgrey"})})})]})}),(0,A.jsx)("br",{})]})};var C=t(5077),F=t(5553);const D=function(e){let{date:s,type:t,message:a}=e;return(0,A.jsx)("div",{className:"item-row",children:(0,A.jsxs)(r.A,{children:[(0,A.jsx)(n.A,{xs:"3",className:"text-danger text-nowrap",children:t}),(0,A.jsx)(n.A,{xs:"9",className:"text-nowrap",children:new Date(s).toLocaleString()}),(0,A.jsx)(n.A,{xs:"12",className:"mt-1",children:(0,k.A)(a)?JSON.stringify(a):a})]})})};var L=t(4817);let M;const O=function(){const{customer_id:e}=(0,C.g)(),s=(0,l.O$)(u.A,(e=>e.compute_stack_id)),t=(0,l.O$)(F.A,(e=>e.auth)),m=(0,l.O$)(F.A,(e=>{var t;return e.alarms&&(null===(t=e.alarms[s])||void 0===t?void 0:t.alarms)}),[s]),x=(0,l.O$)(F.A,(e=>e.alarmsError)),[h,p]=(0,a.useState)(!1),[f,y]=(0,a.useState)(!1),[k,b]=(0,a.useState)(!0);return(0,a.useEffect)((()=>{let s=!0;return t&&(async()=>{y(!0),M=new AbortController,await(0,L.A)({auth:t,signal:M.signal,customer_id:e,currentAlarmsLength:null===m||void 0===m?void 0:m.length}),s&&y(!1)})(),()=>{var e;null===(e=M)||void 0===e||e.abort(),s=!1}}),[t,k]),(0,N.A)((()=>t&&h&&b(Date.now())),w.A.refresh_content_interval),(0,A.jsxs)(d.tH,{onError:(e,s)=>(0,v.A)({error:{message:e.message,componentStack:s}}),FallbackComponent:j.A,children:[(0,A.jsxs)(r.A,{className:"floating-card-header",children:[(0,A.jsx)(n.A,{children:"alarms"}),(0,A.jsxs)(n.A,{className:"text-end",children:[(0,A.jsx)(o.A,{color:"link",title:"Update Jobs",className:"me-2",onClick:()=>b(Date.now()),children:(0,A.jsx)("i",{className:"fa ".concat(f?"fa-spinner fa-spin":"fa-sync-alt")})}),(0,A.jsxs)(o.A,{color:"link",title:"Turn on autofresh",onClick:()=>p(!h),children:[(0,A.jsx)("span",{className:"me-2",children:"auto"}),(0,A.jsx)("i",{className:"fa fa-lg fa-toggle-".concat(h?"on":"off")})]})]})]}),(0,A.jsx)(i.A,{className:"my-3",children:(0,A.jsxs)(c.A,{className:"item-list",children:[(0,A.jsxs)(r.A,{className:"header",children:[(0,A.jsx)(n.A,{xs:"3",className:"text-bold text-nowrap",children:"status"}),(0,A.jsx)(n.A,{xs:"3",className:"text-bold text-nowrap",children:"date"}),(0,A.jsx)(n.A,{xs:"6",className:"text-end text-danger text-bold",children:!f&&x&&(0,A.jsxs)("span",{children:["alarms fetch error: ",(new Date).toLocaleTimeString().toLowerCase()]})})]}),(0,A.jsx)("hr",{className:"mt-1 mb-0"}),(0,A.jsx)("div",{className:"item-scroller",children:!f||m||h?null!==m&&void 0!==m&&m.length?m.map((e=>(0,A.jsx)(D,(0,g.A)({},e),e.id))):(0,A.jsx)("div",{className:"pt-5 text-center",children:"no alarms found"}):(0,A.jsx)("div",{className:"pt-5 text-center",children:(0,A.jsx)("i",{className:"fa fa-spinner fa-spin text-lightgrey"})})})]})}),(0,A.jsx)("br",{})]})};const E=function(){return(0,A.jsxs)(r.A,{id:"config",children:[(0,A.jsx)(n.A,{xs:"12",children:(0,A.jsx)(y,{})}),(0,A.jsx)(n.A,{lg:6,xs:"12",children:(0,A.jsx)(_,{})}),!w.A.is_local_studio&&(0,A.jsx)(n.A,{lg:"6",xs:"12",children:(0,A.jsx)(O,{})})]})}},1652:(e,s,t)=>{t.d(s,{A:()=>r});t(9950);var a=t(4414);const r=function(e){let{children:s,header:t,subheader:r,maxHeight:n="auto",minHeight:l="auto",className:o}=e;return(0,a.jsxs)("div",{className:"content-container ".concat(o),children:[(0,a.jsxs)("div",{className:"header-container",children:[(0,a.jsx)("span",{className:"header",children:t}),(0,a.jsx)("span",{className:"subheader",children:r})]}),(0,a.jsx)("div",{className:"auto"!==n?"scrollable":"",style:{maxHeight:n,minHeight:l},children:s})]})}},7209:(e,s,t)=>{t.d(s,{A:()=>a});const a=e=>"object"===typeof e&&!Array.isArray(e)&&null!==e}}]);
@@ -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:()=>v});var t=s(9379),n=s(9950),r=s(7176),l=s(6114),i=s(3452),o=s(4084),c=s(8156),d=s(6713),g=s(5077),u=s(9435),m=s(5269),p=s(8222),h=s(3150),x=s(3628),j=s(4343),f=s(4414);const A={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 b;const v=function(e){var a,s;let{lastUpdate:v,setLastUpdate:N}=e;const{customer_id:C}=(0,g.g)(),P=(0,g.Zp)(),S=(0,d.O$)(m.A,(e=>e.compute_stack_id)),w=(0,d.O$)(m.A,(e=>e.auth)),k=(0,d.O$)(m.A,(e=>e.url)),[F,z]=(0,n.useState)(A),[y,D]=(0,n.useState)(!0),O=null===(a=F.sorted[0])||void 0===a?void 0:a.id,R=null===(s=F.sorted[0])||void 0===s?void 0:s.desc,E=(0,n.useCallback)((e=>{P("/o/".concat(C,"/i/").concat(S,"/users/").concat(e))}),[S,C]);return(0,n.useEffect)((()=>{let e=!0;return w&&(async()=>{D(!0),b=new AbortController;const a=await(0,p.A)({auth:w,url:k,signal:b.signal});e&&(D(!1),z((0,t.A)((0,t.A)({},F),{},{tableData:a,dataTableColumns:[{Header:"username",accessor:"username"},{Header:"role",accessor:"role"}],totalPages:Math.ceil((a.length||F.pageSize)/F.pageSize),loading:!1})))})(),()=>{var a;e=!1,null===(a=b)||void 0===a||a.abort()}}),[w,v,F.pageSize]),(0,n.useEffect)((()=>{let e=!0;if(F.tableData.length&&O){const a=[...[...F.tableData]].sort(((e,a)=>e[O]>a[O]&&R?1:e[O]>a[O]||R?-1:1));e&&z((0,t.A)((0,t.A)({},F),{},{tableData:a}))}return()=>{var a;e=!1,null===(a=b)||void 0===a||a.abort()}}),[O,R]),(0,f.jsxs)(u.tH,{onError:(e,a)=>(0,x.A)({error:{message:e.message,componentStack:a}}),FallbackComponent:h.A,children:[(0,f.jsxs)(r.A,{className:"floating-card-header",children:[(0,f.jsx)(l.A,{children:"existing users"}),(0,f.jsxs)(l.A,{className:"text-end",children:[(0,f.jsx)(i.A,{color:"link",onClick:()=>N(Date.now()),className:"me-2",children:(0,f.jsx)("i",{title:"Refresh Structure",className:"fa ".concat(y?"fa-spinner fa-spin":"fa-sync-alt")})}),(0,f.jsx)("span",{className:"mx-3 text",children:"|"}),(0,f.jsx)(i.A,{color:"link",title:"Filter Users",className:"me-2",onClick:()=>z((0,t.A)((0,t.A)({},F),{},{filtered:F.showFilter?[]:F.filtered,showFilter:!F.showFilter})),children:(0,f.jsx)("i",{className:"fa fa-search"})})]})]}),(0,f.jsx)(o.A,{className:"mt-3",children:(0,f.jsx)(c.A,{className:"react-table-holder",children:(0,f.jsx)(j.A,{columns:F.dataTableColumns,data:F.tableData,currentPage:F.page,pageSize:F.pageSize,totalPages:F.totalPages,showFilter:F.showFilter,sorted:F.sorted,loading:y,onFilteredChange:e=>z((0,t.A)((0,t.A)({},F),{},{filtered:e})),onSortedChange:e=>z((0,t.A)((0,t.A)({},F),{},{sorted:e})),onPageChange:e=>z((0,t.A)((0,t.A)({},F),{},{pageSize:e})),onPageSizeChange:e=>z((0,t.A)((0,t.A)({},F),{},{page:0,pageSize:e})),onRowClick:e=>E(e.username)})})})]})}},4343:(e,a,s)=>{s.d(a,{A:()=>C});var t=s(9950),n=s(2043),r=s(5488),l=s(9435),i=s(9379),o=s(45),c=s(7176),d=s(6114),g=s(4414);const u=["key"],m=e=>{let{headerGroups:a,onSortedChange:s,sorted:t,showFilter:n,dynamicAttributesFromDataTable:r,tableDescriptionAttributes:l}=e;const m=e=>{let a=!1;return l.forEach((s=>{s.attribute===e&&(s.is_primary_key||s.indexed)&&(a=!0)})),a};return a.map((e=>{const a=e.getHeaderGroupProps(),{key:l}=a,p=(0,o.A)(a,u);return(0,g.jsxs)("div",(0,i.A)((0,i.A)({},p),{},{children:[(0,g.jsx)(c.A,{className:"header g-0",children:e.headers.map((e=>{var a,n;return(0,g.jsx)(d.A,{onClick:()=>{var a,n;r&&!r.includes(e.id)&&m(e.id)&&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:"".concat((null===(a=t[0])||void 0===a?void 0:a.id)===e.id?"sorted":""," ").concat(null!==(n=t[0])&&void 0!==n&&n.desc?"desc":"asc"," ").concat(-1!==e.id.indexOf("hdb-narrow")?"action":""," px-1 ").concat(r&&!r.includes(e.id)&&m(e.id)?"":"disabled-column"),children:(0,g.jsx)("div",{className:"text-renderer",children:e.render("Header")})},e.id)}))}),n&&(0,g.jsx)(c.A,{className:"filter g-0",children:e.headers.map((e=>(0,g.jsx)(d.A,{className:-1!==e.id.indexOf("hdb-narrow")?"action":"",children:e.render("Filter")},e.id)))})]}),l)}))};var p=s(3452);const h=function(e){let{page:a,pageSize:s,totalPages:t,onPageChange:n,onPageSizeChange:l,loading:i}=e;return(0,g.jsxs)(c.A,{className:"pagination",children:[(0,g.jsx)(d.A,{xs:"12",sm:"2",className:"previous",children:(0,g.jsx)(p.A,{className:"mb-2 btn-pagination",color:"purple",block:!0,onClick:()=>n(a-1),disabled:!t||0===a,children:(0,g.jsx)("i",{className:"fa fa-chevron-left"})})}),(0,g.jsxs)(d.A,{xs:"12",sm:"4",className:"paginator",children:[(0,g.jsx)("i",{className:"fa fa-book me-2"}),(0,g.jsx)(r.A,{className:"mb-2",type:"number",value:a+1,min:1,max:t,onChange:e=>n(e.target.value-1)}),(0,g.jsxs)("div",{className:"page-count",children:["\xa0/\xa0",i?(0,g.jsx)("i",{className:"fa fa-spinner fa-spin"}):t]})]}),(0,g.jsx)(d.A,{xs:"12",sm:"4",className:"page-size",children:(0,g.jsx)(r.A,{className:"mb-2",type:"select",value:s,onChange:e=>l(e.target.value),children:[20,50,100,250].map((e=>(0,g.jsxs)("option",{value:e,children:[e," rows"]},e)))})}),(0,g.jsx)(d.A,{xs:"12",sm:"2",className:"next",children:(0,g.jsx)(p.A,{className:"mb-2 pull-right btn-pagination",block:!0,color:"purple",onClick:()=>n(a+1),disabled:!t||a+1===t,children:(0,g.jsx)("i",{className:"fa fa-chevron-right"})})})]})};const x=function(e){let{previousPage:a,canPreviousPage:s,pageIndex:t,gotoPage:n,setPageSize:l,pageCount:i,nextPage:o,canNextPage:u,loading:m}=e;return(0,g.jsxs)(c.A,{className:"pagination",children:[(0,g.jsx)(d.A,{xs:"12",sm:"2",className:"previous",children:(0,g.jsx)(p.A,{className:"mb-2 btn-pagination",color:"purple",block:!0,onClick:a,disabled:!i||!s,children:(0,g.jsx)("i",{className:"fa fa-chevron-left"})})}),(0,g.jsxs)(d.A,{xs:"12",sm:"4",className:"paginator",children:[(0,g.jsx)("i",{className:"fa fa-book me-2"}),(0,g.jsx)(r.A,{className:"mb-2",type:"number",value:t+1||1,min:1,max:i,onChange:e=>n(e.target.value?Number(e.target.value)-1:0)}),(0,g.jsxs)("div",{className:"page-count",children:["\xa0/\xa0",m?(0,g.jsx)("i",{className:"fa fa-spinner fa-spin"}):i]})]}),(0,g.jsx)(d.A,{xs:"12",sm:"4",className:"page-size",children:(0,g.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,g.jsxs)("option",{value:e,children:[e," rows"]},e)))})}),(0,g.jsx)(d.A,{xs:"12",sm:"2",className:"next",children:(0,g.jsx)(p.A,{className:"mb-2 pull-right btn-pagination",block:!0,color:"purple",onClick:o,disabled:!i||!u,children:(0,g.jsx)("i",{className:"fa fa-chevron-right"})})})]})};const j=function(e){let{prepareRow:a,row:s,onRowClick:t=!1}=e;return a(s),(0,g.jsx)(c.A,{onClick:()=>t&&t(s.original),className:"g-0",children:s.cells.map((e=>(0,g.jsx)(d.A,{className:-1!==e.column.id.indexOf("hdb-narrow")?"action":"",children:e.render("Cell")},"".concat(e.row.id,"-").concat(e.column.id))))})};var f=s(3628),A=s(3150);function b(e){let{value:a}=e;return(0,g.jsx)("div",{className:"text-renderer",children:a})}function v(e){let{src:a}=e;const[s,n]=(0,t.useState)(!1),[r,l]=(0,t.useState)(!1);return(0,g.jsxs)("div",{className:"image-renderer",onMouseEnter:()=>n(!0),onMouseLeave:()=>n(!1),children:[(0,g.jsx)("i",{className:"fa fa-image"}),s&&r?(0,g.jsxs)("div",{className:"preview-image no-image",children:[(0,g.jsx)("i",{className:"fa fa-ban text-danger"}),(0,g.jsx)("div",{className:"mt-2",children:"image failed to load"})]}):s?(0,g.jsx)("img",{onError:l,alt:a,src:a,className:"preview-image"}):null]})}const N={Filter:e=>{let{column:{filterValue:a,setFilter:s}}=e;return(0,g.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,g.jsx)(b,{value:JSON.stringify(e)});case"[object Boolean]":return(0,g.jsx)(b,{value:e?"true":"false"});case"[object String]":return(a=e)&&(a.match(/^https?.*\.(jpeg|jpg|gif|png)$/)||-1!==a.indexOf("data:image"))?(0,g.jsx)(v,{src:e}):(0,g.jsx)(b,{value:e});default:return(0,g.jsx)(b,{value:e})}var a})(a)}};const C=function(e){let{columns:a,data:s,error:r,currentPage:i,pageSize:o,totalPages:c,onFilteredChange:d,onSortedChange:u,onPageChange:p,onPageSizeChange:b,showFilter:v,onRowClick:C,sorted:P,loading:S,dynamicAttributesFromDataTable:w,tableDescriptionAttributes:k,manual:F=!1}=e;const{headerGroups:z,page:y,rows:D,prepareRow:O,state:R,setAllFilters:E,canPreviousPage:T,canNextPage:_,pageOptions:H,pageCount:G,gotoPage:I,nextPage:L,previousPage:U,setPageSize:$}=(0,n.useTable)({columns:a,data:s,defaultColumn:N,onFilteredChange:d,onSortedChange:u,onPageChange:p,onPageSizeChange:b,onRowClick:C,manualPagination:F,manualFilters:F,initialState:{pageIndex:i,pageSize:o}},n.useFilters,n.usePagination),[M,B]=(0,t.useState)(!0),J=F||!y.length?D:y;return(0,t.useEffect)((()=>{!v&&R.filters.length?E([]):d(R.filters)}),[R.filters,v]),(0,t.useEffect)((()=>{setTimeout((()=>B(!1)),100)}),[null===J||void 0===J?void 0:J.length]),(0,g.jsxs)(l.tH,{onError:(e,a)=>(0,f.A)({error:{message:e.message,componentStack:a}}),FallbackComponent:A.A,children:[(0,g.jsxs)("div",{className:"react-table-scroller",children:[(0,g.jsx)(m,{headerGroups:z,tableDescriptionAttributes:k,dynamicAttributesFromDataTable:w,onSortedChange:u,sorted:P,showFilter:v}),S||M?(0,g.jsx)("div",{className:"centered text-center",children:(0,g.jsx)("i",{className:"fa fa-spinner fa-spin"})}):J.length?J.map((e=>(0,g.jsx)(j,{row:e,prepareRow:O,onRowClick:C},e.id))):(0,g.jsxs)("div",{className:"centered text-center",children:[(0,g.jsx)("i",{className:"fa fa-exclamation-triangle text-danger"}),(0,g.jsx)("div",{className:"mt-2 text-darkgrey",children:r?"Error loading data: ".concat(r):"no records"})]})]}),F?(0,g.jsx)(h,{page:i,pageSize:o,totalPages:c,onPageChange:p,onPageSizeChange:b,loading:S}):(0,g.jsx)(x,{previousPage:U,pageSize:o,canPreviousPage:T,pageIndex:R.pageIndex,pageOptions:H,gotoPage:I,setPageSize:$,pageCount:G,nextPage:L,canNextPage:_,loading:S})]})}},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(5077),l=r(4084),n=r(8156),o=r(7176),c=r(6114),u=r(3452),i=r(9379),d=r(5488),m=r(6713),h=r(7348),x=r(9435),p=r(127);const A=async e=>{let{auth:s,url:r,username:a,password:t,role:l}=e;return(0,p.A)({operation:{operation:"alter_user",role:l,username:a,password:t,active:!0},auth:s,url:r})};var j=r(5269),g=r(3150),w=r(3628),b=r(8222),y=r(4414);const f=function(){const{username:e}=(0,t.g)(),[s,r]=(0,a.useState)({}),[l,n]=(0,a.useState)({}),p=(0,h.MW)(),f=(0,m.O$)(j.A,(e=>e.auth)),v=(0,m.O$)(j.A,(e=>e.url));return(0,y.jsx)(x.tH,{onError:(e,s)=>(0,w.A)({error:{message:e.message,componentStack:s}}),FallbackComponent:g.A,children:(0,y.jsxs)(o.A,{children:[(0,y.jsxs)(c.A,{xs:"4",className:"py-1",children:["Change user password",(0,y.jsx)("br",{}),(0,y.jsx)("span",{className:"text-small",children:"Modify user's access credentials"})]}),(0,y.jsx)(c.A,{xs:"4",children:(0,y.jsx)(d.A,{id:"password",type:"text",className:"text-center",name:"password",placeholder:"enter new password",value:l.password||"",onChange:e=>n((0,i.A)((0,i.A)({},l),{},{password:e.target.value}))})}),(0,y.jsx)(c.A,{xs:"4",children:(0,y.jsx)(u.A,{block:!0,color:"success",onClick:async()=>{const{password:s}=l;if(s){r({submitted:!0});const a=await A({auth:f,url:v,username:e,password:s});n({}),-1!==a.message.indexOf("updated")?(p.success("password updated"),(0,b.A)({auth:f,url:v}),r({})):(p.error(a.message),r({}))}else r({error:"password is required"})},disabled:s.submitted||!l.password,children:"Update Password"})})]})})};var v=r(8547),C=r(9163),k=r.n(C);const N=function(){const{username:e}=(0,t.g)(),[s,r]=(0,a.useState)({}),[l,n]=(0,a.useState)({}),d=(0,h.MW)(),p=(0,m.O$)(j.A,(e=>e.auth)),f=(0,m.O$)(j.A,(e=>e.url)),C=(0,m.O$)(j.A,(e=>{var s;return parseFloat(null===(s=e.registration)||void 0===s?void 0:s.version)<3})),N=(0,m.O$)(j.A,(e=>e.roles.map((e=>({label:e.role,value:C?e.id:e.role}))))),O=(0,m.O$)(j.A,(s=>s.users&&s.users.find((s=>s.username===e))));return k()((()=>{var e;return n((0,i.A)((0,i.A)({},l),{},{newRole:null===O||void 0===O||null===(e=O.role)||void 0===e?void 0:e.id}))}),[]),(0,y.jsx)(x.tH,{onError:(e,s)=>(0,w.A)({error:{message:e.message,componentStack:s}}),FallbackComponent:g.A,children:(0,y.jsxs)(o.A,{children:[(0,y.jsxs)(c.A,{xs:"4",className:"py-1",children:["Change user role",(0,y.jsx)("br",{}),(0,y.jsx)("span",{className:"text-small",children:"Change what this user can do"})]}),(0,y.jsx)(c.A,{xs:"4",children:(0,y.jsx)(v.Ay,{className:"react-select-container",classNamePrefix:"react-select",onChange:e=>{let{value:s}=e;return n((0,i.A)((0,i.A)({},l),{},{newRole:s}))},options:N.filter((e=>e.value!==O.role.id)),value:N.find((e=>e.value===l.newRole)),isSearchable:!1,isClearable:!1,isLoading:!N,placeholder:"select a role",styles:{placeholder:e=>(0,i.A)((0,i.A)({},e),{},{textAlign:"center",width:"100%",color:"#BCBCBC"})}})}),(0,y.jsx)(c.A,{xs:"4",children:(0,y.jsx)(u.A,{id:"updateRole",block:!0,color:"success",onClick:async()=>{const{newRole:s}=l;if(s)if(O.role.id===s)r({error:"user already has this role"});else{r({submitted:!0});const a=await A({auth:p,url:f,username:e,role:s});-1!==a.message.indexOf("updated")?(d.success("user role updated"),(0,b.A)({auth:p,url:f}),r({})):(d.error(a.message),r({}))}else r({error:"role is required"})},disabled:l.newRole===O.role.id||"submitted"===s,children:"Update Role"})})]})})};var O=r(2034);const S=function(){const{username:e}=(0,t.g)(),{pathname:s}=(0,t.zy)(),r=(0,t.Zp)(),[l,n]=(0,a.useState)({}),[i,p]=(0,a.useState)({}),A=(0,h.MW)(),f=(0,m.O$)(j.A,(e=>e.auth)),v=(0,m.O$)(j.A,(e=>e.url));return(0,y.jsx)(x.tH,{onError:(e,s)=>(0,w.A)({error:{message:e.message,componentStack:s}}),FallbackComponent:g.A,children:(0,y.jsxs)(o.A,{children:[(0,y.jsxs)(c.A,{xs:"4",className:"py-1",children:["Delete User",(0,y.jsx)("br",{}),(0,y.jsx)("span",{className:"text-small",children:"user will be removed from this instance"})]}),(0,y.jsx)(c.A,{xs:"4",children:(0,y.jsx)(d.A,{id:"delete_username",onChange:e=>n({delete_username:e.target.value}),type:"text",className:"text-center",title:"confirm username to delete",placeholder:'Enter "'.concat(e,'" here to enable deletion.'),value:l.delete_username||""})}),(0,y.jsx)(c.A,{xs:"4",children:(0,y.jsx)(u.A,{id:"deleteUser",block:!0,color:"success",onClick:async()=>{if(l.delete_username!==e)A.error("Please type the username to delete this user");else{p({submitted:!0});const a=await(0,O.A)({auth:f,username:e,url:v});-1!==a.message.indexOf("successfully")?(A.success(a.message),(0,b.A)({auth:f,url:v}),p({}),setTimeout((()=>r(s.replace("/users/".concat(e),"/users"))),0)):(A.error(a.message),p({}))}},disabled:e!==l.delete_username||i.submitted,children:i.submitted?(0,y.jsx)("i",{className:"fa fa-spinner fa-spin text-white"}):(0,y.jsx)("span",{children:"Delete User"})})})]})})};const _=function(){const{username:e}=(0,t.g)(),{pathname:s}=(0,t.zy)(),r=(0,t.Zp)();return(0,y.jsxs)(y.Fragment,{children:[(0,y.jsxs)("div",{className:"floating-card-header",children:["existing users > edit > ",(0,y.jsx)("b",{children:e})]}),(0,y.jsx)(l.A,{className:"my-3",children:(0,y.jsxs)(n.A,{children:[(0,y.jsx)(f,{}),(0,y.jsx)("hr",{className:"my-3"}),(0,y.jsx)(N,{}),(0,y.jsx)("hr",{className:"my-3"}),(0,y.jsx)(S,{}),(0,y.jsx)("hr",{className:"my-3"}),(0,y.jsxs)(o.A,{children:[(0,y.jsx)(c.A,{xs:"8",className:"py-1"}),(0,y.jsx)(c.A,{xs:"4",children:(0,y.jsx)(u.A,{id:"returnToUserList",block:!0,color:"grey",onClick:()=>r(s.replace("/".concat(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:()=>P});var s=r(9950),n=r(7176),a=r(6114),o=r(5077),c=r(9379),i=r(4084),l=r(8156),u=r(5488),d=r(3452),f=r(8547),p=r(9163),h=r.n(p),m=r(6713),y=r(9435),b=r(5269),v=r(8198),g=r(8188),x=r(9561),A=r(3150),j=r(3628),w=r(2415),O=r(4414);const N=function(e){let{setLastUpdate:t}=e;const r=(0,m.O$)(b.A,(e=>e.auth)),n=(0,m.O$)(b.A,(e=>e.url)),a=(0,m.O$)(b.A,(e=>e.users)),o=(0,m.O$)(b.A,(e=>e.roles)),p=(0,m.O$)(b.A,(e=>{var t;return parseFloat(null===(t=e.registration)||void 0===t?void 0:t.version)<3})),[N,S]=(0,s.useState)({}),[k,C]=(0,s.useState)({}),P="224px";return h()((async()=>{const{submitted:e}=N;if(e){const{username:e,password:s,role:o}=k;if(e&&o&&s)if((0,x.A)(e))if(a.find((t=>t.username.toLowerCase()===e.toLowerCase())))S({error:"User already exists"});else{S({processing:!0});const a=await(0,v.A)({auth:r,role:o,username:e,password:s,url:n});-1!==a.message.indexOf("successfully")?(t(Date.now()),S({success:a.message})):S({error:a.message})}else S({error:"usernames must have only letters, numbers, hyphens, and underscores"}),setTimeout((()=>S({})),2e3);else S({error:"All fields must be filled out"});setTimeout((()=>C({})),2e3)}}),[N]),h()((()=>{S({})}),[k]),h()((()=>o&&C((0,c.A)((0,c.A)({},k),{},{role:!1}))),[o]),(0,s.useEffect)((()=>{(0,w.A)({auth:r,url:n})}),[r,n]),(0,O.jsxs)(y.tH,{onError:(e,t)=>(0,j.A)({error:{message:e.message,componentStack:t}}),FallbackComponent:A.A,children:[(0,O.jsx)("span",{className:"floating-card-header",children:"add user"}),N.processing?(0,O.jsx)(g.A,{className:"my-3",height:P,status:"processing",header:"Adding User",subhead:"The Account Airedale Is A Good Boy"}):N.success?(0,O.jsx)(g.A,{className:"my-3",height:P,status:"success",header:"Success!",subhead:N.success}):N.error?(0,O.jsx)(g.A,{className:"my-3",height:P,status:"error",header:N.error,subhead:"Please try again"}):(0,O.jsx)(i.A,{className:"my-3",children:(0,O.jsxs)(l.A,{children:[(0,O.jsx)(u.A,{id:"username",type:"text",className:"mb-2 text-center",name:"username",placeholder:"username",value:k.username||"",onChange:e=>C((0,c.A)((0,c.A)({},k),{},{username:e.target.value}))}),(0,O.jsx)(u.A,{id:"password",type:"text",className:"mb-2 text-center",name:"password",placeholder:"password",value:k.password||"",onChange:e=>C((0,c.A)((0,c.A)({},k),{},{password:e.target.value}))}),(0,O.jsx)(f.Ay,{className:"react-select-container",classNamePrefix:"react-select",onChange:e=>{let{value:t}=e;return C((0,c.A)((0,c.A)({},k),{},{role:t}))},options:o&&o.map((e=>({label:e.role,value:p?e.id:e.role}))),value:o&&k.role&&o.find((e=>e.value===k.role)),isSearchable:!1,isClearable:!1,isLoading:!o,placeholder:"select a role",styles:{placeholder:e=>(0,c.A)((0,c.A)({},e),{},{textAlign:"center",width:"100%",color:"#BCBCBC"})}}),(0,O.jsx)(d.A,{id:"addInstanceUser",color:"success",className:"mt-3",block:!0,onClick:()=>S({submitted:!0}),children:"Add User"})]})})]})};var S=r(4979);const k=(0,s.lazy)((()=>Promise.all([r.e(43),r.e(642)]).then(r.bind(r,7695)))),C=(0,s.lazy)((()=>r.e(154).then(r.bind(r,2729))));const P=function(){const{username:e}=(0,o.g)(),[t,r]=(0,s.useState)(!0);return(0,O.jsxs)(n.A,{children:[(0,O.jsx)(a.A,{xl:"3",lg:"4",md:"5",xs:"12",children:(0,O.jsx)(N,{setLastUpdate:r})}),(0,O.jsx)(a.A,{xl:"9",lg:"8",md:"7",xs:"12",className:"pb-5",children:(0,O.jsx)(s.Suspense,{fallback:(0,O.jsx)(S.A,{header:" ",spinner:!0}),children:e?(0,O.jsx)(C,{}):(0,O.jsx)(k,{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 ".concat(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 ".concat("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,A="range"===a,j=h||(x||"textarea"===a?a:"input"),w="form-control";y?(w="".concat(w,"-plaintext"),j=h||"input"):A?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"===j||h&&"function"===typeof h)&&(v.type="switch"===a?"checkbox":a),v.children&&!y&&"select"!==a&&"string"===typeof j&&"select"!==j&&((0,i.mc)('Input with a type of "'.concat(a,'" cannot have children. Please use "value"/"defaultValue" instead.')),delete v.children),s.createElement(j,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,a)=>{a.r(t),a.d(t,{default:()=>ue});var s=a(9379),n=a(9950),r=a(5077),o=a(6713),i=a(7348),l=a(9163),c=a.n(l),u=a(135),d=a(5553),p=a(5269),m=a(4319),v=a(2072),h=a(8125),_=a(5746),b=a(8547),A=a(9435),g=a(3150),f=a(3628),y=a(5996),j=a(4414);const x=function(e){let{routes:t=[]}=e;const{compute_stack_id:a,customer_id:s}=(0,r.g)(),[n]=(0,m.A)({}),i=(0,r.Zp)(),l=(0,r.zy)(),c=(0,o.O$)(p.A,(e=>e.defaultBrowseURL)),u=(0,o.O$)(d.A,(e=>{var t;return e.alarms&&(null===(t=e.alarms[a])||void 0===t?void 0:t.alarmCounts.total)}),[a]),{options:x,activeOption:k}=(0,o.O$)(d.A,(e=>{const t=e.instances&&e.instances.find((e=>e.compute_stack_id===a)),s=e.instances&&e.instances.filter((e=>e.compute_stack_id!==a));return{options:s&&s.map((e=>({label:(0,j.jsxs)("span",{children:[(0,j.jsx)("i",{className:"d-none d-sm-inline-block fa me-2 fa-".concat(e.is_local?"server":["CREATE_IN_PROGRESS","UPDATE_IN_PROGRESS","CONFIGURING_NETWORK"].includes(e.status)?"circle-exclamation":"cloud"," ").concat(["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)&&"(".concat(e.status.replace(/_/g," ").toLowerCase(),")")]}),value:e.compute_stack_id,has_auth:n[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-".concat(t?null!==t&&void 0!==t&&t.is_local?"server":"cloud":"")}),null===t||void 0===t?void 0:t.instance_name]}),value:a}}}),[a]),O="/o/".concat(s,"/i/").concat(a),w=l.pathname.split("/i/".concat(a))[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)(v.A,{className:"app-subnav",children:[!y.A.is_local_studio&&(0,j.jsx)(h.A,{navbar:!0,className:"instance-select",children:(0,j.jsx)(b.Ay,{className:"react-select-container",classNamePrefix:"react-select",onChange:e=>{let{value:t,has_auth:a,is_unavailable:n}=e;return!n&&i(a?"/o/".concat(s,"/i/").concat(t,"/").concat(null===N||void 0===N?void 0:N.link):"/o/".concat(s,"/instances/login"))},options:x||[],value:k,defaultValue:k.value,isSearchable:!1,isClearable:!1,isLoading:!x,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)(_.A,{children:(0,j.jsxs)(r.k2,{title:e.link,className:"nav-link",to:"".concat(O,"/").concat("browse"===e.link&&c?"".concat(e.link,"/").concat(c):e.link),children:[(0,j.jsx)("i",{className:"d-none d-sm-inline-block fa me-2 fa-".concat(e.icon)}),e.label||e.link,!!u&&"status"===e.link&&(0,j.jsx)("span",{className:"badge",children:u})]})},e.path)))}),(0,j.jsx)(h.A,{navbar:!0,className:"instance-nav-select d-flex d-lg-none",children:(0,j.jsx)(b.Ay,{className:"react-select-container",classNamePrefix:"react-select",width:"200px",onChange:e=>{let{value:t}=e;return i("".concat(O,"/").concat(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-".concat(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-".concat(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 k=a(4084),O=a(8156),w=a(1942),N=a.n(w),E=a(8738),S=a.n(E),P=a(1497),T=["className","cssModule","tag"];function R(){return R=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var a=arguments[t];for(var s in a)Object.prototype.hasOwnProperty.call(a,s)&&(e[s]=a[s])}return e},R.apply(this,arguments)}function C(e,t){if(null==e)return{};var a,s,n=function(e,t){if(null==e)return{};var a,s,n={},r=Object.keys(e);for(s=0;s<r.length;s++)a=r[s],t.indexOf(a)>=0||(n[a]=e[a]);return n}(e,t);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);for(s=0;s<r.length;s++)a=r[s],t.indexOf(a)>=0||Object.prototype.propertyIsEnumerable.call(e,a)&&(n[a]=e[a])}return n}var I={className:N().string,cssModule:N().object,tag:P.Wx};function z(e){var t=e.className,a=e.cssModule,s=e.tag,r=void 0===s?"div":s,o=C(e,T),i=(0,P.qO)(S()(t,"card-title"),a);return n.createElement(r,R({},o,{className:i}))}z.propTypes=I;const F=z;var q=a(7176),G=a(6114),$=a(6165),U=a(5502);const B=(0,n.lazy)((()=>Promise.all([a.e(43),a.e(702)]).then(a.bind(a,6816)))),L=(0,n.lazy)((()=>a.e(972).then(a.bind(a,1271)))),W=(0,n.lazy)((()=>Promise.all([a.e(23),a.e(374)]).then(a.bind(a,3888)))),D=(0,n.lazy)((()=>Promise.all([a.e(724),a.e(417)]).then(a.bind(a,8086)))),H=(0,n.lazy)((()=>a.e(5).then(a.bind(a,4029)))),M={tableData:[],dataTableColumns:[],filtered:[],sorted:[],page:0,pageSize:20,autoRefresh:!1,showFilter:!1,newEntityAttributes:!1,hashAttribute:!1,onlyCached:!0};function K(e){let{table:t}=e;return(0,j.jsx)(k.A,{className:"my-3 missing-primary-key",children:(0,j.jsxs)(O.A,{children:[(0,j.jsx)(F,{children:"No Primary Key"}),(0,j.jsx)("i",{className:"mt-3 fa fa-warning"}),(0,j.jsxs)("span",{className:"mt-3",children:["The table ","'".concat(t,"'")," does not have a primary key. Harper 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:"Harper documentation"})," ","to see the standard Harper querying options."]})]})})}const V=function(){var e,t,a,s,i;const l=(0,r.Zp)(),c=(0,r.zy)(),{schema:u,table:d,action:v,customer_id:h,compute_stack_id:_}=(0,r.g)(),[b]=(0,m.A)({}),y=(0,o.O$)(p.A,(e=>e.registration)),x=null===y||void 0===y?void 0:y.version,[k,O]=(null===x||void 0===x?void 0:x.split("."))||[],w="".concat(k,".").concat(O),N=(0,o.O$)(p.A,(e=>e.structure)),[E,S]=(0,n.useState)({schemas:[],tables:[],activeTable:!1}),[P,T]=(0,n.useState)(M),R="/o/".concat(h,"/i/").concat(_,"/browse"),C=(null===(e=b[_])||void 0===e?void 0:e.super)||!0===(null===(t=b[_])||void 0===t?void 0:t.structure),I=C||(null===(a=b[_])||void 0===a?void 0:a.structure)&&(null===(s=b[_])||void 0===s||null===(i=s.structure)||void 0===i?void 0:i.includes(u)),z=C?"Please ".concat(u&&E.tables&&!E.tables.length||!E.schemas.length?"create":"choose"," a ").concat(u?"table":"".concat(w>=4.2?"database":"schema")):"This user has not been granted access to any tables. A super-user must update this user's role.",[F,V]=(0,n.useState)(!0);return(0,n.useEffect)((()=>{P&&V(Boolean(P.hashAttribute))}),[P]),(0,n.useEffect)((()=>{if(N){const e=Object.keys(N),t=Object.keys((null===N||void 0===N?void 0:N[u])||{});if(!e.length&&"/browse"!==c.pathname)return S({schemas:[],tables:[],activeTable:!1}),void l("/o/".concat(h,"/i/").concat(_,"/browse"));if(e.length&&!e.includes(u))return void l("/o/".concat(h,"/i/").concat(_,"/browse/").concat(e[0]));if(t.length&&!t.includes(d))return void l("/o/".concat(h,"/i/").concat(_,"/browse/").concat(u,"/").concat(t[0]));E.activeTable!=="".concat(_,":").concat(u,":").concat(d)&&T(M),S({schemas:e,tables:t,activeTable:"".concat(_,":").concat(u,":").concat(d)})}}),[N,u,d,_]),(0,n.useEffect)((()=>{const e=setInterval((()=>{(0,U.Ak)()}),6e4);return()=>clearInterval(e)}),[]),(0,j.jsxs)(q.A,{id:"browse",children:[(0,j.jsx)(G.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:u,items:E.schemas,baseUrl:R,itemType:w>=4.2?"database":"schema",showForm:C}),u&&(0,j.jsx)(L,{activeItem:d,items:E.tables,activeSchema:u,baseUrl:"".concat(R,"/").concat(u),itemType:"table",showForm:I}),(0,j.jsx)(H,{centerText:!0,label:"refresh ".concat(w>=4.2?"databases":"schemas"," and tables")})]})}),(0,j.jsx)(G.A,{xs:"12",className:"d-block d-md-none",children:(0,j.jsx)("hr",{})}),(0,j.jsx)(G.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:u&&d&&"csv"===v&&E.activeTable?(0,j.jsx)(D,{}):u&&d&&v&&E.activeTable?(0,j.jsx)(W,{newEntityAttributes:P.newEntityAttributes,hashAttribute:P.hashAttribute}):u&&d&&E.activeTable?(0,j.jsx)(B,{activeTable:E.activeTable,tableState:P,setTableState:T}):u&&d&&!F?(0,j.jsx)(K,{}):(0,j.jsx)($.A,{headline:z,icon:(0,j.jsx)("i",{className:"fa fa-exclamation-triangle text-warning"})})})})]})};var Z=a(2914);const Y=(0,n.lazy)((()=>Promise.all([a.e(43),a.e(851),a.e(575)]).then(a.bind(a,1679)))),J=(0,n.lazy)((()=>Promise.all([a.e(239),a.e(741)]).then(a.bind(a,7368)))),Q=(0,n.lazy)((()=>a.e(541).then(a.bind(a,6812)))),X=(0,n.lazy)((()=>Promise.all([a.e(851),a.e(18)]).then(a.bind(a,4016)))),ee=(0,n.lazy)((()=>a.e(297).then(a.bind(a,1813)))),te=(0,n.lazy)((()=>a.e(522).then(a.bind(a,7591)))),ae=(0,n.lazy)((()=>Promise.all([a.e(43),a.e(23),a.e(302)]).then(a.bind(a,4298)))),se=e=>{let{super_user:t,version:a=null}=e;const s=(0,Z.A)({version:a}),n={element:(0,j.jsx)(V,{}),path:"browse/:schema?/:table?/:action?/:hash?",link:"browse",label:"browse",icon:"list"},r={element:(0,j.jsx)(ee,{}),path:"users/:username?",link:"users",label:"users",icon:"users"},o={element:(0,j.jsx)(te,{}),path:"roles/:role_id?",link:"roles",label:"roles",icon:"check-square"},i={element:(0,j.jsx)(Y,{}),path:"replication",link:"replication",label:"replication",icon:"cubes"},l={element:(0,j.jsx)(ae,{}),path:"functions/:action?/:project?/:type?/:file?",link:"functions",label:"functions",icon:"project-diagram"},c={element:(0,j.jsx)(ae,{}),path:"applications",link:"applications",label:"applications",icon:"project-diagram"},u={element:(0,j.jsx)(Q,{}),path:"status",link:"status",label:"status",icon:"tachometer-alt"},d={element:(0,j.jsx)(X,{}),path:"logs",link:"logs",label:"logs",icon:"tachometer-alt"},p={element:(0,j.jsx)(J,{}),path:"config",link:"config",label:"config",icon:"wrench"};return y.A.is_local_studio&&t||t?[n,r,o,i,s?c:l,u,p,d]:(y.A.is_local_studio,[n])};var ne=a(5900),re=a(4979),oe=a(3906),ie=a(9519),le=a(4817),ce=a(5911);a(717);const ue=function(){const{compute_stack_id:e,customer_id:t}=(0,r.g)(),a=(0,i.MW)(),l=(0,r.Zp)(),[v,h]=(0,n.useState)(!0),[_,b]=(0,m.A)({}),A=_&&_[e],g=(0,o.O$)(d.A,(e=>e.auth)),f=(0,o.O$)(d.A,(e=>{var a,s;return null===(a=e.auth)||void 0===a||null===(s=a.orgs)||void 0===s?void 0:s.find((e=>{var a;return(null===(a=e.customer_id)||void 0===a?void 0:a.toString())===t}))})),k=(0,o.O$)(d.A,(e=>e.products)),O=(0,o.O$)(d.A,(e=>e.regions)),w=(0,o.O$)(d.A,(e=>e.subscriptions)),N=(0,o.O$)(d.A,(e=>e.instances)),E=(0,o.O$)(d.A,(t=>e&&t.instances&&t.instances.find((t=>t.compute_stack_id===e))),[e]),S=(0,o.O$)(p.A,(e=>e.url)),P=(0,o.O$)(p.A,(e=>e.restarting)),T=(0,o.O$)(p.A,(e=>e.registration)),R=se({customer_id:t,super_user:null===A||void 0===A?void 0:A.super,version:null===T||void 0===T?void 0:T.version}),[C,I]=(0,n.useState)(!1);return c()((()=>{!y.A.is_local_studio&&g&&t&&(0,ie.A)({auth:g,customer_id:t})}),[g,t,y.A.is_local_studio]),c()((()=>{!y.A.is_local_studio&&g&&t&&(0,le.A)({auth:g,customer_id:t})}),[g,t,N,y.A.is_local_studio]),c()((()=>{g&&k&&O&&w&&t&&(null===N||void 0===N||!N.length)&&(0,oe.A)({auth:g,customer_id:t,products:k,regions:O,subscriptions:w,instanceCount:null===N||void 0===N?void 0:N.length})}),[g,k,O,t,w,N]),c()((async()=>{if(E&&A){p.A.update((()=>E));const{error:e}=await(0,ne.A)({auth:A,url:E.url});h(!1),e&&(y.A.is_local_studio?(b((0,s.A)((0,s.A)({},_),{},{local:!1})),setTimeout((()=>l("/")),10)):setTimeout((()=>l("/o/".concat(t,"/instances"))),10))}}),[E]),c()((()=>{C&&S&&null!==A&&void 0!==A&&A.super?a.success("Your instance user role has been upgraded to super_user"):C&&S&&a.success("Your instance user role has been downgraded to standard")}),[a,null===A||void 0===A?void 0:A.super]),c()((()=>I(!0)),(()=>I(!1)),[]),(0,u.A)((async()=>{if(S&&!y.A.is_local_studio){var n,r;const c=await(0,ce.A)({auth:A,url:S});if(c.error&&"Network request failed"!==c.message&&!P)a.error("Unable to connect to instance."),l("/o/".concat(t,"/instances"));else if(!c.error&&P)p.A.update((e=>{e.restarting=!1}));else if(!c.error&&(null===A||void 0===A?void 0:A.super)!==(null===(n=c.role)||void 0===n||null===(r=n.permission)||void 0===r?void 0:r.super_user)){var o,i;b((0,s.A)((0,s.A)({},_),{},{[e]:(0,s.A)((0,s.A)({},A),{},{super:null===(o=c.role)||void 0===o||null===(i=o.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:R}),(y.A.is_local_studio||f&&N)&&!v?(0,j.jsx)(n.Suspense,{fallback:(0,j.jsx)(re.A,{header:" ",spinner:!0}),children:(0,j.jsxs)(r.BV,{children:[R.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:R[0].path,replace:!0})})]})}):(0,j.jsx)(re.A,{header:"loading instance",spinner:!0})]})}},6165:(e,t,a)=>{a.d(t,{A:()=>o});a(9950);var s=a(4084),n=a(8156),r=a(4414);const o=function(e){let{headline:t,description:a,icon:o,warning:i}=e;return(0,r.jsxs)(r.Fragment,{children:[(0,r.jsx)("div",{className:"floating-card-header text-end",children:"\xa0"}),(0,r.jsx)(s.A,{className:"my-3",children:(0,r.jsx)(n.A,{children:(0,r.jsxs)("div",{className:"empty-prompt narrow",children:[o,t&&(0,r.jsx)("div",{className:"mt-3",children:t}),(0,r.jsx)("div",{className:"mt-3",children:a}),i&&(0,r.jsxs)("div",{className:"warning-text mt-3",children:["Warning: ",i]})]})})})]})}},5346:(e,t,a)=>{a.d(t,{A:()=>n});var s=a(127);const n=async e=>{let{auth:t,url:a}=e;return(0,s.A)({operation:{operation:"describe_all"},auth:t,url:a})}},717:(e,t,a)=>{a.d(t,{A:()=>r});var s=a(127),n=a(5269);const r=async e=>{let{auth:t,url:a}=e;const r=await(0,s.A)({operation:{operation:"registration_info"},auth:t,url:a,timeout:5e3});return n.A.update((e=>{e.registration=r.error?{}:r})),r}},5911:(e,t,a)=>{a.d(t,{A:()=>n});var s=a(127);const n=async e=>{let{auth:t,url:a}=e;return(0,s.A)({operation:{operation:"user_info"},auth:t,url:a,timeout:5e3})}},4817:(e,t,a)=>{a.d(t,{A:()=>l});var s=a(2714),n=a(5553),r=a(3628),o=a(5996);const i=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:a,signal:l,currentAlarmsLength:c}=e,u=null;try{if(u=await(0,s.A)({endpoint:"getAlarms",method:"POST",payload:{customer_id:a},signal:l,auth:t}),u.error&&c)return n.A.update((e=>{e.alarmsError=!0}));if(!Array.isArray(u)||u.error)return n.A.update((e=>{e.alarms=[],e.alarmsError=!0}));const e=[...u].sort(((e,t)=>t.date-e.date)),r=Object.assign({},...e.map((e=>{var t;const a=null===(t=u)||void 0===t?void 0:t.filter((t=>t.compute_stack_id===e.compute_stack_id));return{[e.compute_stack_id]:{alarms:a,alarmCounts:i({alarms:a.filter((e=>e.date+1e3*o.A.alarm_badge_threshold>Date.now()))})}}})));return n.A.update((e=>{e.alarms=r,e.alarmsError=!1}))}catch(d){return(0,r.A)({type:"lms data",status:"error",url:o.A.lms_api_url,operation:"getAlarms",request:{customer_id:a},error:{catch:d.toString()},customer_id:a})}}},9519:(e,t,a)=>{a.d(t,{A:()=>c});var s=a(9379),n=a(2714),r=a(5553),o=a(3628),i=a(5996),l=a(7596);const c=async e=>{let{auth:t,customer_id:a}=e,c=null;try{var u;return c=await(0,n.A)({endpoint:"getCustomer",method:"POST",payload:{customer_id:a},auth:t}),(0,l.A)({auth:t,customer_id:a,stripe_id:null===(u=c)||void 0===u?void 0:u.stripe_id}),c.error||r.A.update((e=>{var t;e.customer=(0,s.A)((0,s.A)({},c),{},{customer_id:a}),e.hasCard=null===(t=c.stripe_payment_methods)||void 0===t?void 0:t[0]})),c}catch(d){return(0,o.A)({type:"lms data",status:"error",url:i.A.lms_api_url,operation:"getCustomer",request:{customer_id:a},error:{catch:d.toString()},customer_id:a})}}},3906:(e,t,a)=>{a.d(t,{A:()=>u});var s=a(9379),n=a(2714),r=a(5553),o=a(4549);const i=e=>{let{is_local:t,wavelength_zone_id:a,cloud_provider:s}=e;switch(!0){case a:return"wavelength_compute";case t:return"local_compute";case"akamai"===s:return"akamai_compute";default:return"cloud_compute"}};var l=a(3628),c=a(5996);const u=async e=>{let{auth:t,customer_id:a,products:u,regions:d,subscriptions:p,instanceCount:m=0}=e,v=null;try{if(v=await(0,n.A)({endpoint:"getInstances",method:"POST",payload:{customer_id:a,user_id:t.user_id},auth:t}),Array.isArray(v)){const e=v.map((e=>{const t=(e=>{let{instance:t,products:a,regions:s,subscriptions:n}=e;try{var r,l;const e=t.compute_subscription_id?n[i(t)]:a[i(t)],c=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))),u=t.storage_subscription_id?n.cloud_storage:a.cloud_storage,d=!t.is_local&&(null===u||void 0===u?void 0:u.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===c||void 0===c||null===(r=c.value)||void 0===r?void 0:r.compute_price)||0)+parseFloat((null===d||void 0===d||null===(l=d.value)||void 0===l?void 0:l.storage_price)||0),m=p?"$".concat((0,o.A)(p.toFixed(2))):"FREE",v=t.compute_subscription_id&&t.storage_subscription_id?"PREPAID":p?"".concat(m,"/").concat(c.value.compute_interval):"FREE",h=!t.is_local&&s.find((e=>e.value===t.instance_region));return{compute:null===c||void 0===c?void 0:c.value,storage:null===d||void 0===d?void 0:d.value,totalPrice:p,totalPriceString:m,totalPriceStringWithInterval:v,region:h}}catch(c){return console.log(c)}})({instance:e,products:u,regions:d,subscriptions:p});return(0,s.A)((0,s.A)({},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!m&&r.A.update((e=>{e.instances=[]}))}catch(h){return(0,l.A)({type:"lms data",status:"error",url:c.A.lms_api_url,operation:"getInstances",request:{customer_id:a},error:{catch:h.toString()},customer_id:a})}}},7596:(e,t,a)=>{a.d(t,{A:()=>c});var s=a(2714),n=a(5553),r=a(3628),o=a(2434),i=a(2696),l=a(5996);const c=async e=>{let{auth:t,customer_id:a,stripe_id:c}=e;try{const e=await(0,s.A)({endpoint:"getPrepaidSubscriptions",method:"POST",payload:{customer_id:a,stripe_id:c},auth:t});return!e.error&&n.A.update((t=>{t.subscriptions={cloud_storage:(0,i.A)(e.cloud_storage||[]),cloud_compute:(0,o.A)(e.cloud_compute||[]),wavelength_compute:(0,o.A)(e.wavelength_compute||[]),local_compute:(0,o.A)(e.local_compute||[])}}))}catch(u){return(0,r.A)({type:"lms data",status:"error",url:l.A.lms_api_url,operation:"getPrepaidSubscriptions",error:{catch:u.toString()}})}}},127:(e,t,a)=>{a.d(t,{A:()=>n});var s=a(4038);const n=async e=>{let{operation:t,auth:a,url:n,timeout:r=0,authType:o,signal:i}=e;try{const e=new AbortController,u=setTimeout((()=>r?e.abort():null),r),d={"Content-Type":"application/json"};"token"===o?d.Authorization="Bearer ".concat(a.token):null!==a&&void 0!==a&&a.pass&&(d.Authorization="Basic ".concat(btoa("".concat(a.user,":").concat(a.pass))));const p=await(0,s.hd)(n,{signal:i||e.signal,method:"POST",body:JSON.stringify(t),headers:d,credentials:d.Authorization?"omit":"include"});clearTimeout(u);const m=await p.json();var l,c;return m.error?{error:!0,message:m.error,type:"response",status:p.status,role_errors:null===(l=m.main_permissions)||void 0===l?void 0:l.join(", "),access_errors:null===(c=m.unauthorized_access)||void 0===c?void 0:c.map((e=>{var t,a,s,n,r,o;return{schema:e.schema,table:e.table,type:null!==(t=e.required_attribute_permissions)&&void 0!==t&&t.length?"attribute":"table",entity:null!==(a=e.required_attribute_permissions)&&void 0!==a&&a.length?null===(s=e.required_attribute_permissions[0])||void 0===s?void 0:s.attribute_name:e.table,permission:null!==(n=e.required_attribute_permissions)&&void 0!==n&&n.length?null===(r=e.required_attribute_permissions[0])||void 0===r?void 0:r.required_permissions.join(", "):null===(o=e.required_table_permissions)||void 0===o?void 0:o.join(", ")}}))}:200!==p.status?{error:!0,message:"Error of type ".concat(p.status),type:"status"}:m}catch(u){return{error:!0,message:u.message,type:"catch"}}}},396:(e,t,a)=>{a.d(t,{A:()=>s});const s=e=>{const t={},a=[];return e.error||Object.keys(e).sort().forEach(((s,n)=>{t[s]={},0===n&&a.push(s),Object.keys(e[s]).sort().forEach(((r,o)=>{0===o&&0===n&&a.push(r),t[s][r]={record_count:e[s][r].record_count,hashAttribute:e[s][r].hash_attribute}}))})),{structure:t,defaultBrowseURL:a.join("/")}}},5900:(e,t,a)=>{a.d(t,{A:()=>i});var s=a(5269),n=a(5346),r=a(396),o=a(717);const i=async e=>{let{auth:t,url:a}=e;const i=await(0,n.A)({auth:t,url:a}),l=await(0,o.A)({auth:t,url:a});if(i.error)return{error:"Could not log into instance"};const{structure:c,defaultBrowseURL:u}=(0,r.A)(i);return s.A.update((e=>{e.auth=t,e.structure=c,e.defaultBrowseURL=u,e.loading=!1,e.registration=l})),{error:!1}}},2914:(e,t,a)=>{a.d(t,{A:()=>s});const s=e=>{let{version:t}=e;if(t){const[e,a]=(null===t||void 0===t?void 0:t.split("."))||[],s=parseInt(e,10),n=parseInt(a,10);return parseFloat("".concat(s,".").concat(n))>=4.2}return!0}},5502:(e,t,a)=>{a.d(t,{Ak:()=>i,Iz:()=>o,b5:()=>r});const s=new Map,n=(e,t)=>"".concat(e,"/").concat(t),r=(e,t)=>{var a;const r=n(e,t);return null!==(a=s.get(r))&&void 0!==a?a:void 0},o=(e,t,a)=>{const r=n(e,t);s.set(r,a)},i=()=>{s.size&&s.clear()}},4319:(e,t,a)=>{a.d(t,{A:()=>s});const s=(0,a(6997).A)("instanceAuths")},5269:(e,t,a)=>{a.d(t,{A:()=>s});const s=new(a(6713).il)({})},9163:(e,t,a)=>{var s=a(9950);function n(e,t,a){var n="function"===typeof t;s.useEffect((function(){var a,s=!0,r=e((function(){return s}));return Promise.resolve(r).then((function(e){a=e})),function(){s=!1,n&&t(a)}}),n?a:t)}e.exports=n,e.exports.useAsyncEffect=n},135:(e,t,a)=>{a.d(t,{A:()=>r});var s=a(9950),n=function(){};function r(e,t,a){var r=(0,s.useRef)(n);(0,s.useEffect)((function(){r.current=e})),(0,s.useEffect)((function(){a&&null!==t&&!1!==t&&r.current()}),[a]),(0,s.useEffect)((function(){if(null!==t&&!1!==t){var e=setInterval((function(){return r.current()}),t);return function(){return clearInterval(e)}}}),[t])}}}]);