Repository URL to install this package:
Version:
0.2.0-dev.8 ▾
|
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react"),t=require("@kaos/dashboard"),r=require("@mui/material"),n=require("react-router-dom"),a=require("@mui/system"),o=require("@mui/x-data-grid"),i=require("@mui/icons-material/BrightnessAuto"),l=require("@mui/icons-material/DarkMode"),u=require("@mui/icons-material/LightMode");function d(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var s=d(e),c=d(i),f=d(l),m=d(u),p=function(){return p=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var a in t=arguments[r])Object.prototype.hasOwnProperty.call(t,a)&&(e[a]=t[a]);return e},p.apply(this,arguments)};function g(e,t){var r={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var a=0;for(n=Object.getOwnPropertySymbols(e);a<n.length;a++)t.indexOf(n[a])<0&&Object.prototype.propertyIsEnumerable.call(e,n[a])&&(r[n[a]]=e[n[a]])}return r}function v(e,t,r,n){return new(r||(r=Promise))((function(a,o){function i(e){try{u(n.next(e))}catch(e){o(e)}}function l(e){try{u(n.throw(e))}catch(e){o(e)}}function u(e){var t;e.done?a(e.value):(t=e.value,t instanceof r?t:new r((function(e){e(t)}))).then(i,l)}u((n=n.apply(e,t||[])).next())}))}function h(e,t){var r,n,a,o,i={label:0,sent:function(){if(1&a[0])throw a[1];return a[1]},trys:[],ops:[]};return o={next:l(0),throw:l(1),return:l(2)},"function"==typeof Symbol&&(o[Symbol.iterator]=function(){return this}),o;function l(l){return function(u){return function(l){if(r)throw new TypeError("Generator is already executing.");for(;o&&(o=0,l[0]&&(i=0)),i;)try{if(r=1,n&&(a=2&l[0]?n.return:l[0]?n.throw||((a=n.return)&&a.call(n),0):n.next)&&!(a=a.call(n,l[1])).done)return a;switch(n=0,a&&(l=[2&l[0],a.value]),l[0]){case 0:case 1:a=l;break;case 4:return i.label++,{value:l[1],done:!1};case 5:i.label++,n=l[1],l=[0];continue;case 7:l=i.ops.pop(),i.trys.pop();continue;default:if(!(a=i.trys,(a=a.length>0&&a[a.length-1])||6!==l[0]&&2!==l[0])){i=0;continue}if(3===l[0]&&(!a||l[1]>a[0]&&l[1]<a[3])){i.label=l[1];break}if(6===l[0]&&i.label<a[1]){i.label=a[1],a=l;break}if(a&&i.label<a[2]){i.label=a[2],i.ops.push(l);break}a[2]&&i.ops.pop(),i.trys.pop();continue}l=t.call(e,i)}catch(e){l=[6,e],n=0}finally{r=a=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}([l,u])}}}function y(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,a,o=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=o.next()).done;)i.push(n.value)}catch(e){a={error:e}}finally{try{n&&!n.done&&(r=o.return)&&r.call(o)}finally{if(a)throw a.error}}return i}var w=function(e){var t=g(e,[]);return s.default.createElement(E,p({},t),s.default.createElement(r.CardContent,null,s.default.createElement(r.Typography,{variant:"h5",gutterBottom:!0},s.default.createElement(r.Skeleton,null)),s.default.createElement(r.Skeleton,{variant:"rectangular",height:"3.5rem"})))},E=a.styled(r.Card)({position:"relative",height:"100%"}),S=a.styled(r.CardActionArea)({height:"100%"}),b=function(e){var r=e.data,n=e.isLoading,a=e.refresh,o=e.renderItem,i=e.renderSkeleton,l=void 0===i?function(){return s.default.createElement(w,null)}:i,u=e.pageSize,d=e.gap,c=void 0===d?2:d,f=e.cols,m=void 0===f?4:f,v=e.getItemKey,h=g(e,["data","isLoading","refresh","renderItem","renderSkeleton","pageSize","gap","cols","getItemKey"]),E=function(e,r,n){return void 0===n&&(n=function(e){return e.uuid}),null==e?void 0:e.map((function(e,o){return s.default.createElement(t.CSSGrid.Item,{key:void 0===n(e)?o:n(e),span:{xs:12,sm:Math.floor(12/m)}},r(e,{refresh:a}))}))};return s.default.createElement(t.CSSGrid,p({gap:c},h),E(r,o,v),l&&n&&E(function(e,t,r){if(r||2===arguments.length)for(var n,a=0,o=t.length;a<o;a++)!n&&a in t||(n||(n=Array.prototype.slice.call(t,0,a)),n[a]=t[a]);return e.concat(n||Array.prototype.slice.call(t))}([],y(Array(u)),!1),l))},P=a.styled(b)((function(e){var t=e.theme;return{"& > *:not(:first-of-type) > .MuiPaper-root":{borderTopLeftRadius:0,borderTopRightRadius:0},"& > *:not(:last-child) > .MuiPaper-root":{borderBottomLeftRadius:0,borderBottomRightRadius:0,borderBottom:"thin solid ".concat(t.palette.divider)}}})),x=function(e){var t=e.gap,r=void 0===t?0:t,n=g(e,["gap"]);return s.default.createElement(P,p({cols:1,gap:r},n))},C="page",I="pageSize";function k(e){return e?parseInt(e):null}var L=function(r){var o=r.useListApi,i=r.listApiParams,l=r.swrConfig,u=r.setApiResults,d=r.defaultPageSize,c=r.verboseName,f=r.verboseNamePlural,m=void 0===f?c+"s":f,v=r.getCount,h=void 0===v?function(e){return null==e?void 0:e.count}:v,w=r.getResults,E=void 0===w?function(e){return null==e?void 0:e.results}:w,S=r.renderError,b=void 0===S?function(){return s.default.createElement(t.ErrorBox,{what:"loading ".concat(m)})}:S,P=r.renderIsLoading,x=r.renderView,L=r.renderPagination,V=void 0===L?function(e){return s.default.createElement(t.ContainerPagination,p({},e))}:L,M=g(r,["useListApi","listApiParams","swrConfig","setApiResults","defaultPageSize","verboseName","verboseNamePlural","getCount","getResults","renderError","renderIsLoading","renderView","renderPagination"]),z=y(n.useSearchParams(),2),A=z[0],O=z[1],B=k(A.get(C))||1,D=k(A.get(I))||d,R=(B-1)*D,T=y(o(B,D,i,l),6),G=T[0],j=T[1],q=T[2],K=T[3],N=T[4],F=T[5];e.useEffect((function(){u&&u([G,j,q,K,N,F])}),[G,j,q,K,N,u]);var H={apiResults:[E(G),j,q,K,N,F],count:h(G),page:B,pageSize:D,onPageChange:function(e){var t;O(p(p({},Object.fromEntries(A)),((t={})[C]=e.toString(),t)))},onPageSizeChange:function(e){var t,r=Math.floor(R/e)+1;O(p(p({},Object.fromEntries(A)),((t={})[C]=r.toString(),t[I]=e.toString(),t)))},verboseName:c,verboseNamePlural:m};return s.default.createElement(a.Box,p({},M),b&&q&&b(q),P&&j&&P(),x(H),V&&V(H))};var V=function(e){var n=e.mode,a=e.setMode,o=n?"dark"===n?"Dark":"Light":"Auto";return s.default.createElement(r.ListItem,{secondaryAction:s.default.createElement(t.ThemeModeSettingDropdown,{mode:n,setMode:a})},s.default.createElement(r.ListItemIcon,null,!n&&s.default.createElement(c.default,null),"dark"===n&&s.default.createElement(f.default,null),"light"===n&&s.default.createElement(m.default,null)),s.default.createElement(r.ListItemText,{primary:"Appearance",secondary:o}))};exports.DashboardLayout=function(n){var o,i,l=n.renderSideMenu,u=n.sideMenuHeader,d=n.sideMenuHeaderText,c=n.menuItems,f=n.sideMenuSettings,m=n.frontendSettings,g=n.renderAppBar,v=n.appBarContent,h=n.children,w=null===(o=null==m?void 0:m.isSideMenuOpen)||void 0===o?void 0:o.value,E=null===(i=null==m?void 0:m.isSideMenuOpen)||void 0===i?void 0:i.set,S=t.useIsDesktop(),b=y(t.useToggle(void 0===w?S:w),4),P=b[0],x=b[2],C=b[3];return e.useEffect((function(){E&&E(P)}),[P,E]),s.default.createElement(a.Box,{display:"flex",flexDirection:"row",minHeight:"100vh"},l?l(P,C,S):s.default.createElement(t.SideMenuDrawer,{open:P,onClose:x,variant:S?"persistent":"temporary",header:u,headerText:d},s.default.createElement(r.List,{sx:{flexGrow:1}},null==c?void 0:c.map((function(e,n){var a=e.header,o=e.items;return s.default.createElement(s.default.Fragment,{key:n},a&&s.default.createElement(r.ListSubheader,null,a),o.map((function(e,r){return s.default.createElement(t.DrawerMenuItem,p({key:r},e))})))}))),f||s.default.createElement(r.List,null,s.default.createElement(r.ListSubheader,{sx:{height:36}},"Settings"),(null==m?void 0:m.themeMode)&&s.default.createElement(V,{mode:null==m?void 0:m.themeMode.value,setMode:null==m?void 0:m.themeMode.set}))),s.default.createElement(a.Box,{flexGrow:1,minWidth:S?void 0:"100vw",height:1,display:"flex",flexDirection:"column"},g?g(C):s.default.createElement(t.DashboardAppBar,{onClickMenu:C},v),s.default.createElement(a.Box,{component:"main",flexGrow:1},h)))},exports.DetailPageContainer=function(e){var r=e.lookup,a=void 0===r?"uuid":r,o=e.useDetailApi,i=e.detailApiParams,l=e.verboseName,u=e.defaultTitle,d=void 0===u?l.replace(/\b\w/g,(function(e){return e.toUpperCase()})):u,c=e.getTitle,f=void 0===c?function(e){return null==e?void 0:e.name}:c,m=e.errorMessage,p=void 0===m?"loading ".concat(l):m,g=e.frameComponent,v=e.headComponent,h=e.errorBoxComponent,w=void 0===h?t.ErrorBox:h,E=e.loadingIndicatorComponent,S=void 0===E?t.LoadingIndicator:E,b=y(o(n.useParams()[a],i),5),P=b[0],x=b[1],C=b[2],I=b[3],k=b[4];if(!g)throw Error("Prop `frameComponent` is required on `DetailPageContainer`");if(!v)throw Error("Prop `headComponent` is required on `DetailPageContainer`");return s.default.createElement(s.default.Fragment,null,s.default.createElement(v,{title:P?f(P):d}),C&&s.default.createElement(w,{what:p}),x&&s.default.createElement(S,null),P&&s.default.createElement(g,{obj:P,refresh:I,isRefreshing:k}))},exports.GalleryView=b,exports.GalleryViewContainer=function(e){var t=e.defaultPageSize,r=void 0===t?12:t,n=e.renderItem,a=e.renderSkeleton,o=e.getItemKey,i=e.galleyViewProps,l=g(e,["defaultPageSize","renderItem","renderSkeleton","getItemKey","galleyViewProps"]);return s.default.createElement(L,p({defaultPageSize:r,renderView:function(e){var t=y(e.apiResults,4),r=t[0],l=t[1],u=t[3],d=e.pageSize;return s.default.createElement(b,p({data:r,isLoading:l,refresh:u,renderItem:n,renderSkeleton:a,pageSize:d,getItemKey:o},i))}},l))},exports.GalleryViewItem=function(e){var a=e.actions,o=e.avatar,i=e.title,l=e.subtitle,u=e.metaItems,d=e.meta,c=void 0===d?u&&s.default.createElement(t.MetaItems,{items:u}):d,f=e.children,m=e.footer,v=e.isLoading,h=void 0!==v&&v,y=e.to,w=e.onClick,b=e.linkProps,P=g(e,["actions","avatar","title","subtitle","metaItems","meta","children","footer","isLoading","to","onClick","linkProps"]),x=!(!y&&!w)?S:s.default.Fragment,C=p(p(p({},y&&{component:n.Link,to:y}),b&&p({component:n.Link},b)),w&&{onClick:w}),I=!!i||!!l||!!o,k=!!c||!!f,L=I||k||!!m;return s.default.createElement(E,p({sx:{p:2}},P),h&&s.default.createElement(t.LoadingIndicator,null),L&&s.default.createElement(s.default.Fragment,null,s.default.createElement(x,p({},C),I&&s.default.createElement(t.Module.Header,{icon:o,title:i,subtitle:l,actions:a}),k&&s.default.createElement(r.CardContent,null,c,f)),m))},exports.GalleryViewItemSkeleton=w,exports.ListView=x,exports.ListViewContainer=function(e){var t=e.defaultPageSize,r=void 0===t?5:t,n=e.renderItem,a=e.renderSkeleton,o=e.getItemKey,i=e.listViewProps,l=g(e,["defaultPageSize","renderItem","renderSkeleton","getItemKey","listViewProps"]);return s.default.createElement(L,p({defaultPageSize:r,renderView:function(e){var t=y(e.apiResults,4),r=t[0],l=t[1],u=t[3],d=e.pageSize;return s.default.createElement(x,p({data:r,isLoading:l,refresh:u,renderItem:n,renderSkeleton:a,pageSize:d,getItemKey:o},i))}},l))},exports.PaginatedDataContainer=L,exports.SavedViewsPanel=function(e){var n=e.savedViewType,a=e.getCurrentViewJson,o=e.setViewJsonToCurrent,i=e.resetCurrentView,l=e.useSavedViews,u=e.requestSaveView,d=e.getViewId,c=void 0===d?function(e){return e.uuid}:d,f=e.getViewName,m=void 0===f?function(e){return e.name}:f,p=t.useVariantsSnackbar().successSnackbar,g=y(l(n),4),w=g[0],E=g[2],S=g[3],b=y(s.default.useState(""),2),P=b[0],x=b[1],C=function(e){return void 0===e&&(e=P),w.filter((function(t){return c(t)===e}))[0]};return s.default.createElement(r.Box,{display:"flex",alignItems:"center",gap:1},E&&s.default.createElement(r.Alert,{severity:"error"},"Error loading views"),s.default.createElement(r.FormControl,{size:"small",sx:{minWidth:"250px"}},s.default.createElement(r.InputLabel,null,"View"),s.default.createElement(r.Select,{label:"View",value:P,onChange:function(e){return function(e){x(e);var t=C(e);o(t.json)}(e.target.value)}},null==w?void 0:w.map((function(e){return s.default.createElement(r.MenuItem,{value:c(e),key:c(e)},m(e))})))),u&&s.default.createElement(r.Button,{variant:"outlined",onClick:function(){return v(void 0,void 0,void 0,(function(){var e,t,r,o,i;return h(this,(function(l){switch(l.label){case 0:return e=C(),t=prompt("Please enter a name to save",null==e?void 0:e.name),u&&t?(r=void 0,(o=w.filter((function(e){return m(e)===t}))).length>0?window.confirm("View with name ".concat(t," already exists. Do you want to overwrite it?"))?(i=c(o[0]),[4,u(i,null,null,a())]):[2]:[3,2]):[3,5];case 1:return r=l.sent(),[3,4];case 2:return[4,u(null,t,n,a())];case 3:r=l.sent(),l.label=4;case 4:p("Successfully saved ".concat(t," view")),S(),x(r.data.uuid),l.label=5;case 5:return[2]}}))}))}},"Save view"),i&&s.default.createElement(r.Button,{onClick:function(){x(""),i&&i()}},"Reset view"))},exports.TableViewContainer=function(e){var r=e.columns,n=e.getItemKey,a=void 0===n?function(e){return e.uuid}:n,i=e.defaultPageSize,l=void 0===i?10:i,u=e.dataGridProps,d=g(e,["columns","getItemKey","defaultPageSize","dataGridProps"]);return s.default.createElement(L,p({defaultPageSize:l,renderIsLoading:null,renderPagination:null,renderView:function(e){var n=y(e.apiResults,4),i=n[0],l=n[1],d=e.count,c=e.page,f=e.pageSize,m=e.onPageChange,g=e.onPageSizeChange;return s.default.createElement(o.DataGrid,p({rows:i||[],getRowId:a,columns:r,loading:l,rowCount:d||0,pagination:!0,paginationMode:"server",pageSize:f,rowsPerPageOptions:t.getPageSizeOptions([f]),page:c-1,onPageChange:function(e){return m(e+1)},onPageSizeChange:g},u))}},d))};
//# sourceMappingURL=index.js.map