dinocollab-core 2.1.27 → 2.1.28

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.
@@ -1,2 +1,2 @@
1
- import{defineProperty as t,inherits as e,createClass as i,objectSpread2 as n,classCallCheck as o,callSuper as r}from"../../_virtual/_rollupPluginBabelHelpers.js";import{jsx as a,jsxs as l}from"react/jsx-runtime";import{Component as s}from"react";import{styled as c,Box as p,colors as d,tablePaginationClasses as g,alpha as u,Grid as m,Fade as h,CircularProgress as f,Typography as v,Divider as S,TablePagination as P}from"@mui/material";import{mergeObjects as b}from"../utils/helpers.js";import"../utils/dayjs-config.js";import"../utils/query-param.js";import{tableGridClasses as x,defaultPagination as j}from"./helpers.js";import{CreateTableGridItemActions as C}from"./item-actions.js";import y from"./filter-bar/create.filter-bar.js";import"./filter-bar/types.js";import I from"./toolbar-pannel.js";import z from"../api-context/popover-global.js";import{GlobalModal as k}from"../api-context/global-modal.js";function w(c){var d,g=y(null!==(d=c.filterBarConfigs)&&void 0!==d?d:{fields:{}}),u=C(),w=function(){function d(){var e;o(this,d);for(var i=arguments.length,s=new Array(i),c=0;c<i;c++)s[c]=arguments[c];return e=r(this,d,[].concat(s)),t(e,"filterStateStore",{pagination:j}),t(e,"setFilterState",(function(t){try{t.details?e.filterStateStore=n({pagination:e.filterStateStore.pagination},t):e.filterStateStore=b({},e.filterState,t),e.props.onFilterChange&&e.props.onFilterChange(e.filterStateStore),e.forceUpdate()}catch(t){console.log(t)}})),t(e,"preRender",(function(t){return l(k,{children:[a(z.Provider,{}),t]})})),t(e,"getPagination",(function(){var t;return null!==(t=e.filterState.pagination)&&void 0!==t?t:j})),t(e,"getRootClasses",(function(){var t=[x.root];return e.filterState.loading&&t.push(x.loading),t.join(" ")})),t(e,"getItems",(function(){var t;return null!==(t=e.props.data.items)&&void 0!==t?t:[]})),t(e,"handleFilterChange",(function(t){e.setFilterState(t)})),t(e,"handleChangePage",(function(t,i){var n=e.getPagination();e.setFilterState({pagination:{page:i,pageSize:n.pageSize}})})),t(e,"handleChangeRowsPerPage",(function(t){e.setFilterState({pagination:{page:0,pageSize:parseInt(t.target.value,10)}})})),e}return e(d,s),i(d,[{key:"filterState",get:function(){var t;return null!==(t=this.props.filter)&&void 0!==t?t:this.filterStateStore}},{key:"slots",get:function(){var t,e,i,o,r,l,s;return n(n({},Object.assign({},c.slots,this.props.slots)),{},{TableGridItem:null!==(t=null!==(e=null===(i=this.props.slots)||void 0===i?void 0:i.item)&&void 0!==e?e:c.item)&&void 0!==t?t:function(){return a(N,{})},ToolbarPannel:null!==(o=null!==(r=null===(l=this.props.slots)||void 0===l?void 0:l.toolbar)&&void 0!==r?r:null===(s=c.slots)||void 0===s?void 0:s.toolbar)&&void 0!==o?o:I})}},{key:"mergeConfig",get:function(){var t;return{size:null!==(t=c.size)&&void 0!==t?t:{xs:12,sm:6,md:4}}}},{key:"render",value:function(){var t,e=this,i=this.slots,o=i.TableGridItem,r=i.ToolbarPannel,s=i.actionProps,d=this.getItems(),b=this.getPagination();return this.preRender(l(F,{className:this.getRootClasses(),children:[a(r,n({title:c.title},this.slots.toolbarProps)),a(g,{value:this.filterState,onChange:this.handleFilterChange}),l("div",{className:x.content,children:[a("div",{className:[x.contentInner,x.contentPosition].join(" "),children:a(m,n(n({container:!0,spacing:2},this.slots.gridContainer),{},{children:d.map((function(t,i){return a(m,n(n(n({item:!0},e.mergeConfig.size),e.slots.gridItem),{},{children:l("div",{className:x.item,children:[a(o,{value:t}),a(p,{className:x.actions,children:a(u,n({value:t},s))})]})}),c.getSelecterId(t).toString()+i)}))}))}),a(h,{in:this.filterState.loading,unmountOnExit:!0,children:a("div",{className:[x.overlay,x.contentPosition].join(" "),children:a(f,{size:36})})}),a(h,{in:d.length<1&&!this.filterState.loading,unmountOnExit:!0,children:a("div",{className:[x.noItems,x.contentPosition].join(" "),children:a(v,{variant:"body2",children:"No items data"})})})]}),a(S,{sx:{position:"relative",zIndex:2}}),a(P,{component:"div",count:null!==(t=this.props.data.totalItems)&&void 0!==t?t:0,page:b.page,onPageChange:this.handleChangePage,rowsPerPage:b.pageSize,onRowsPerPageChange:this.handleChangeRowsPerPage,slotProps:{select:{MenuProps:{disableScrollLock:!0}}}})]}))}}])}();return w}var F=c(p)(t(t(t(t(t(t(t(t({flex:1,height:"100%",display:"flex",flexDirection:"column"},".".concat(x.content),{position:"relative",flex:1,zIndex:1}),".".concat(x.contentPosition),{position:"absolute",top:0,left:0,width:"100%",height:"100%"}),".".concat(x.contentInner),{overflowY:"auto",padding:"10px 5px"}),".".concat(x.overlay),{display:"flex",alignItems:"center",justifyContent:"center",background:u(d.common.white,.4),zIndex:10}),".".concat(x.noItems),{display:"flex",alignItems:"center",justifyContent:"center"}),".".concat(x.item),{position:"relative"}),".".concat(x.actions),{position:"absolute",top:"5px",right:"5px",zIndex:5,display:"inline-block"}),".".concat(g.root),{background:d.common.white,position:"relative",zIndex:5})),N=c(p)({width:"100%",paddingBottom:"100%",background:d.grey[600]});export{w as default};
1
+ import{inherits as t,createClass as e,objectSpread2 as i,classCallCheck as r,callSuper as o,defineProperty as n}from"../../_virtual/_rollupPluginBabelHelpers.js";import{jsx as a,jsxs as l}from"react/jsx-runtime";import{Component as s}from"react";import{Stack as d,Grid as c,Box as p,Fade as g,CircularProgress as u,Typography as h,Divider as m,TablePagination as f}from"@mui/material";import{mergeObjects as v}from"../utils/helpers.js";import"../utils/dayjs-config.js";import"../utils/query-param.js";import{defaultPagination as S}from"./helpers.js";import{CreateTableGridItemActions as P}from"./item-actions.js";import j from"./filter-bar/create.filter-bar.js";import"./filter-bar/types.js";import{ItemDefault as b,TableGridStyled as C,tableGridClasses as y}from"./styled.js";import I from"./toolbar-pannel.js";import x from"../api-context/popover-global.js";import{GlobalModal as z}from"../api-context/global-modal.js";function F(F){var N,R=j(null!==(N=F.filterBarConfigs)&&void 0!==N?N:{fields:{}}),k=P(),w=function(){function P(){var t;r(this,P);for(var e=arguments.length,s=new Array(e),d=0;d<e;d++)s[d]=arguments[d];return t=o(this,P,[].concat(s)),n(t,"filterStateStore",{pagination:S}),n(t,"setFilterState",(function(e){try{e.details?t.filterStateStore=i({pagination:t.filterStateStore.pagination},e):t.filterStateStore=v({},t.filterState,e),t.props.onFilterChange&&t.props.onFilterChange(t.filterStateStore),t.forceUpdate()}catch(t){console.log(t)}})),n(t,"preRender",(function(t){return l(z,{children:[a(x.Provider,{}),t]})})),n(t,"getPagination",(function(){var e;return null!==(e=t.filterState.pagination)&&void 0!==e?e:S})),n(t,"getRootClasses",(function(){var e=[y.root];return t.filterState.loading&&e.push(y.loading),e.join(" ")})),n(t,"getItems",(function(){var e;return null!==(e=t.props.data.items)&&void 0!==e?e:[]})),n(t,"handleFilterChange",(function(e){t.setFilterState(e)})),n(t,"handleChangePage",(function(e,i){var r=t.getPagination();t.setFilterState({pagination:{page:i,pageSize:r.pageSize}})})),n(t,"handleChangeRowsPerPage",(function(e){t.setFilterState({pagination:{page:0,pageSize:parseInt(e.target.value,10)}})})),t}return t(P,s),e(P,[{key:"filterState",get:function(){var t;return null!==(t=this.props.filter)&&void 0!==t?t:this.filterStateStore}},{key:"slots",get:function(){var t,e,r,o,n,l,s;return i(i({},Object.assign({},F.slots,this.props.slots)),{},{TableGridItem:null!==(t=null!==(e=null===(r=this.props.slots)||void 0===r?void 0:r.item)&&void 0!==e?e:F.item)&&void 0!==t?t:function(){return a(b,{})},ToolbarPannel:null!==(o=null!==(n=null===(l=this.props.slots)||void 0===l?void 0:l.toolbar)&&void 0!==n?n:null===(s=F.slots)||void 0===s?void 0:s.toolbar)&&void 0!==o?o:I})}},{key:"mergeConfig",get:function(){var t;return{size:null!==(t=F.size)&&void 0!==t?t:{xs:12,sm:6,md:4}}}},{key:"render",value:function(){var t,e,r,o=this,n=this.slots,s=n.TableGridItem,v=n.ToolbarPannel,S=n.actionProps,P=this.getItems(),j=this.getPagination();return this.preRender(l(C,{className:this.getRootClasses(),children:[a(v,i({title:F.title},this.slots.toolbarProps)),l(d,{direction:"row",alignItems:"stretch",gap:1,children:[(null===(t=this.slots.filterBar)||void 0===t?void 0:t.before)||null,a(R,{value:this.filterState,onChange:this.handleFilterChange}),(null===(e=this.slots.filterBar)||void 0===e?void 0:e.after)||null]}),l("div",{className:y.content,children:[a("div",{className:[y.contentInner,y.contentPosition].join(" "),children:a(c,i(i({container:!0,spacing:2},this.slots.gridContainer),{},{children:P.map((function(t,e){return a(c,i(i(i({item:!0},o.mergeConfig.size),o.slots.gridItem),{},{children:l("div",{className:y.item,children:[a(s,{value:t}),a(p,{className:y.actions,children:a(k,i({value:t},S))})]})}),F.getSelecterId(t).toString()+e)}))}))}),a(g,{in:this.filterState.loading,unmountOnExit:!0,children:a("div",{className:[y.overlay,y.contentPosition].join(" "),children:a(u,{size:36})})}),a(g,{in:P.length<1&&!this.filterState.loading,unmountOnExit:!0,children:a("div",{className:[y.noItems,y.contentPosition].join(" "),children:a(h,{variant:"body2",children:"No items data"})})})]}),a(m,{sx:{position:"relative",zIndex:2}}),a(f,{component:"div",count:null!==(r=this.props.data.totalItems)&&void 0!==r?r:0,page:j.page,onPageChange:this.handleChangePage,rowsPerPage:j.pageSize,onRowsPerPageChange:this.handleChangeRowsPerPage,slotProps:{select:{MenuProps:{disableScrollLock:!0}}}})]}))}}])}();return w}export{F as default};
2
2
  //# sourceMappingURL=create.table-grid.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"create.table-grid.js","sources":["../../../src/table-grid/create.table-grid.tsx"],"sourcesContent":["import React, { Component, ReactNode } from 'react'\r\nimport { alpha, Box, CircularProgress, colors, Divider, Fade, Grid, styled, TablePagination, tablePaginationClasses, Typography } from '@mui/material'\r\nimport { mergeObjects } from '../utils'\r\nimport { defaultPagination, tableGridClasses } from './helpers'\r\nimport { CreateTableGridItemActions } from './item-actions'\r\nimport { GlobalModal, PopoverGlobal } from '../api-context'\r\nimport { CreateFilterBar, IFilterState } from './filter-bar'\r\nimport { ITableGridFilter, IPaginationModel, ITableGridParams, ITableGridProps, ITableGridInnerSlots } from './types'\r\nimport ToolbarPannelDefault from './toolbar-pannel'\r\n\r\nfunction CreateTableGrid<T extends object>(params: ITableGridParams<T>): React.ComponentType<ITableGridProps<T>> {\r\n const FilterBarInstance = CreateFilterBar<T>(params.filterBarConfigs ?? { fields: {} })\r\n const ItemActions = CreateTableGridItemActions<T>()\r\n\r\n class TableGrid extends Component<ITableGridProps<T>> {\r\n private filterStateStore: ITableGridFilter<T> = { pagination: defaultPagination }\r\n get filterState(): ITableGridFilter<T> {\r\n return this.props.filter ?? this.filterStateStore\r\n }\r\n\r\n get slots(): ITableGridInnerSlots<T> {\r\n return {\r\n ...Object.assign({}, params.slots, this.props.slots),\r\n TableGridItem: this.props.slots?.item ?? params.item ?? (() => <ItemDefault />),\r\n ToolbarPannel: this.props.slots?.toolbar ?? params.slots?.toolbar ?? ToolbarPannelDefault\r\n }\r\n }\r\n\r\n get mergeConfig() {\r\n return {\r\n size: params.size ?? { xs: 12, sm: 6, md: 4 }\r\n }\r\n }\r\n\r\n setFilterState = (value: Partial<ITableGridFilter<T>>) => {\r\n try {\r\n if (!!value.details) {\r\n this.filterStateStore = { pagination: this.filterStateStore.pagination, ...value }\r\n } else {\r\n this.filterStateStore = mergeObjects<any>({}, this.filterState, value)\r\n }\r\n this.props.onFilterChange && this.props.onFilterChange(this.filterStateStore)\r\n this.forceUpdate()\r\n } catch (error) {\r\n console.log(error)\r\n }\r\n }\r\n\r\n render() {\r\n const { TableGridItem, ToolbarPannel, actionProps } = this.slots\r\n const items = this.getItems()\r\n const pagination = this.getPagination()\r\n return this.preRender(\r\n <Wrap className={this.getRootClasses()}>\r\n <ToolbarPannel title={params.title} {...this.slots.toolbarProps} />\r\n <FilterBarInstance value={this.filterState} onChange={this.handleFilterChange} />\r\n <div className={tableGridClasses.content}>\r\n <div className={[tableGridClasses.contentInner, tableGridClasses.contentPosition].join(' ')}>\r\n <Grid container spacing={2} {...this.slots.gridContainer}>\r\n {items.map((item, index) => (\r\n <Grid key={params.getSelecterId(item).toString() + index} item {...this.mergeConfig.size} {...this.slots.gridItem}>\r\n <div className={tableGridClasses.item}>\r\n <TableGridItem value={item} />\r\n <Box className={tableGridClasses.actions}>\r\n <ItemActions value={item} {...actionProps} />\r\n </Box>\r\n </div>\r\n </Grid>\r\n ))}\r\n </Grid>\r\n </div>\r\n <Fade in={this.filterState.loading} unmountOnExit>\r\n <div className={[tableGridClasses.overlay, tableGridClasses.contentPosition].join(' ')}>\r\n <CircularProgress size={36} />\r\n </div>\r\n </Fade>\r\n <Fade in={items.length < 1 && !this.filterState.loading} unmountOnExit>\r\n <div className={[tableGridClasses.noItems, tableGridClasses.contentPosition].join(' ')}>\r\n <Typography variant='body2'>No items data</Typography>\r\n </div>\r\n </Fade>\r\n </div>\r\n <Divider sx={{ position: 'relative', zIndex: 2 }} />\r\n <TablePagination\r\n component='div'\r\n count={this.props.data.totalItems ?? 0}\r\n page={pagination.page}\r\n onPageChange={this.handleChangePage}\r\n rowsPerPage={pagination.pageSize}\r\n onRowsPerPageChange={this.handleChangeRowsPerPage}\r\n slotProps={{ select: { MenuProps: { disableScrollLock: true } } }}\r\n />\r\n </Wrap>\r\n )\r\n }\r\n\r\n preRender = (children?: ReactNode) => (\r\n <GlobalModal>\r\n <PopoverGlobal.Provider />\r\n {children}\r\n </GlobalModal>\r\n )\r\n\r\n getPagination = (): IPaginationModel => this.filterState.pagination ?? defaultPagination\r\n\r\n getRootClasses = () => {\r\n const classes = [tableGridClasses.root]\r\n if (this.filterState.loading) classes.push(tableGridClasses.loading)\r\n return classes.join(' ')\r\n }\r\n\r\n getItems = () => {\r\n return this.props.data.items ?? []\r\n }\r\n\r\n handleFilterChange = (filterStateChange: IFilterState<T>) => {\r\n this.setFilterState(filterStateChange)\r\n }\r\n\r\n handleChangePage = (_: React.MouseEvent<HTMLButtonElement, MouseEvent> | null, page: number) => {\r\n const pagination = this.getPagination()\r\n this.setFilterState({ pagination: { page, pageSize: pagination.pageSize } })\r\n }\r\n\r\n handleChangeRowsPerPage: React.ChangeEventHandler<HTMLInputElement | HTMLTextAreaElement> = (event) => {\r\n this.setFilterState({ pagination: { page: 0, pageSize: parseInt(event.target.value, 10) } })\r\n }\r\n }\r\n\r\n return TableGrid\r\n}\r\n\r\nexport default CreateTableGrid\r\n\r\nconst Wrap = styled(Box)({\r\n flex: 1,\r\n height: '100%',\r\n display: 'flex',\r\n flexDirection: 'column',\r\n [`.${tableGridClasses.content}`]: {\r\n position: 'relative',\r\n flex: 1,\r\n zIndex: 1\r\n },\r\n [`.${tableGridClasses.contentPosition}`]: {\r\n position: 'absolute',\r\n top: 0,\r\n left: 0,\r\n width: '100%',\r\n height: '100%'\r\n },\r\n [`.${tableGridClasses.contentInner}`]: {\r\n overflowY: 'auto',\r\n padding: '10px 5px'\r\n },\r\n [`.${tableGridClasses.overlay}`]: {\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n background: alpha(colors.common.white, 0.4),\r\n zIndex: 10\r\n },\r\n [`.${tableGridClasses.noItems}`]: {\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center'\r\n },\r\n [`.${tableGridClasses.item}`]: {\r\n position: 'relative'\r\n },\r\n [`.${tableGridClasses.actions}`]: {\r\n position: 'absolute',\r\n top: '5px',\r\n right: '5px',\r\n zIndex: 5,\r\n display: 'inline-block'\r\n },\r\n [`.${tablePaginationClasses.root}`]: {\r\n background: colors.common.white,\r\n position: 'relative',\r\n zIndex: 5\r\n }\r\n})\r\n\r\nconst ItemDefault = styled(Box)({\r\n width: '100%',\r\n paddingBottom: '100%',\r\n background: colors.grey[600]\r\n})\r\n"],"names":["CreateTableGrid","params","_params$filterBarConf","FilterBarInstance","CreateFilterBar","filterBarConfigs","fields","ItemActions","CreateTableGridItemActions","TableGrid","_this","_classCallCheck","_len","arguments","length","args","Array","_key","_callSuper","this","concat","_defineProperty","pagination","defaultPagination","value","details","filterStateStore","_objectSpread","mergeObjects","filterState","props","onFilterChange","forceUpdate","error","console","log","children","_jsxs","GlobalModal","_jsx","PopoverGlobal","Provider","_this$filterState$pag","classes","tableGridClasses","root","loading","push","join","_this$props$data$item","data","items","filterStateChange","setFilterState","_","page","getPagination","pageSize","event","parseInt","target","_inherits","Component","_createClass","key","get","_this$props$filter","filter","_ref","_this$props$slots$ite","_this$props$slots","_ref2","_this$props$slots$too","_this$props$slots2","_params$slots","Object","assign","slots","TableGridItem","item","ItemDefault","ToolbarPannel","toolbar","ToolbarPannelDefault","_params$size","size","xs","sm","md","_this$props$data$tota","_this2","_this$slots","actionProps","getItems","preRender","Wrap","className","getRootClasses","title","toolbarProps","onChange","handleFilterChange","content","contentInner","contentPosition","Grid","container","spacing","gridContainer","map","index","mergeConfig","gridItem","Box","actions","getSelecterId","toString","Fade","in","unmountOnExit","overlay","CircularProgress","noItems","Typography","variant","Divider","sx","position","zIndex","TablePagination","component","count","totalItems","onPageChange","handleChangePage","rowsPerPage","onRowsPerPageChange","handleChangeRowsPerPage","slotProps","select","MenuProps","disableScrollLock","styled","flex","height","display","flexDirection","top","left","width","overflowY","padding","alignItems","justifyContent","background","alpha","colors","common","white","right","tablePaginationClasses","paddingBottom","grey"],"mappings":"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"}
1
+ {"version":3,"file":"create.table-grid.js","sources":["../../../src/table-grid/create.table-grid.tsx"],"sourcesContent":["import { Component } from 'react'\r\nimport type { ChangeEventHandler, ComponentType, MouseEvent as RMEvent, ReactNode } from 'react'\r\nimport { Box, CircularProgress, Divider, Fade, Grid, Stack, TablePagination, Typography } from '@mui/material'\r\nimport { mergeObjects } from '../utils'\r\nimport { defaultPagination } from './helpers'\r\nimport { CreateTableGridItemActions } from './item-actions'\r\nimport { GlobalModal, PopoverGlobal } from '../api-context'\r\nimport { CreateFilterBar, IFilterState } from './filter-bar'\r\nimport { ItemDefault, tableGridClasses, TableGridStyled } from './styled'\r\nimport { ITableGridFilter, IPaginationModel, ITableGridParams, ITableGridProps, ITableGridInnerSlots } from './types'\r\nimport ToolbarPannelDefault from './toolbar-pannel'\r\n\r\nfunction CreateTableGrid<T extends object>(params: ITableGridParams<T>): ComponentType<ITableGridProps<T>> {\r\n const FilterBarInstance = CreateFilterBar<T>(params.filterBarConfigs ?? { fields: {} })\r\n const ItemActions = CreateTableGridItemActions<T>()\r\n\r\n class TableGrid extends Component<ITableGridProps<T>> {\r\n private filterStateStore: ITableGridFilter<T> = { pagination: defaultPagination }\r\n get filterState(): ITableGridFilter<T> {\r\n return this.props.filter ?? this.filterStateStore\r\n }\r\n\r\n get slots(): ITableGridInnerSlots<T> {\r\n return {\r\n ...Object.assign({}, params.slots, this.props.slots),\r\n TableGridItem: this.props.slots?.item ?? params.item ?? (() => <ItemDefault />),\r\n ToolbarPannel: this.props.slots?.toolbar ?? params.slots?.toolbar ?? ToolbarPannelDefault\r\n }\r\n }\r\n\r\n get mergeConfig() {\r\n return {\r\n size: params.size ?? { xs: 12, sm: 6, md: 4 }\r\n }\r\n }\r\n\r\n setFilterState = (value: Partial<ITableGridFilter<T>>) => {\r\n try {\r\n if (!!value.details) {\r\n this.filterStateStore = { pagination: this.filterStateStore.pagination, ...value }\r\n } else {\r\n this.filterStateStore = mergeObjects<any>({}, this.filterState, value)\r\n }\r\n this.props.onFilterChange && this.props.onFilterChange(this.filterStateStore)\r\n this.forceUpdate()\r\n } catch (error) {\r\n console.log(error)\r\n }\r\n }\r\n\r\n render() {\r\n const { TableGridItem, ToolbarPannel, actionProps } = this.slots\r\n const items = this.getItems()\r\n const pagination = this.getPagination()\r\n return this.preRender(\r\n <TableGridStyled className={this.getRootClasses()}>\r\n <ToolbarPannel title={params.title} {...this.slots.toolbarProps} />\r\n <Stack direction='row' alignItems='stretch' gap={1}>\r\n {this.slots.filterBar?.before || null}\r\n <FilterBarInstance value={this.filterState} onChange={this.handleFilterChange} />\r\n {this.slots.filterBar?.after || null}\r\n </Stack>\r\n <div className={tableGridClasses.content}>\r\n <div className={[tableGridClasses.contentInner, tableGridClasses.contentPosition].join(' ')}>\r\n <Grid container spacing={2} {...this.slots.gridContainer}>\r\n {items.map((item, index) => (\r\n <Grid key={params.getSelecterId(item).toString() + index} item {...this.mergeConfig.size} {...this.slots.gridItem}>\r\n <div className={tableGridClasses.item}>\r\n <TableGridItem value={item} />\r\n <Box className={tableGridClasses.actions}>\r\n <ItemActions value={item} {...actionProps} />\r\n </Box>\r\n </div>\r\n </Grid>\r\n ))}\r\n </Grid>\r\n </div>\r\n <Fade in={this.filterState.loading} unmountOnExit>\r\n <div className={[tableGridClasses.overlay, tableGridClasses.contentPosition].join(' ')}>\r\n <CircularProgress size={36} />\r\n </div>\r\n </Fade>\r\n <Fade in={items.length < 1 && !this.filterState.loading} unmountOnExit>\r\n <div className={[tableGridClasses.noItems, tableGridClasses.contentPosition].join(' ')}>\r\n <Typography variant='body2'>No items data</Typography>\r\n </div>\r\n </Fade>\r\n </div>\r\n <Divider sx={{ position: 'relative', zIndex: 2 }} />\r\n <TablePagination\r\n component='div'\r\n count={this.props.data.totalItems ?? 0}\r\n page={pagination.page}\r\n onPageChange={this.handleChangePage}\r\n rowsPerPage={pagination.pageSize}\r\n onRowsPerPageChange={this.handleChangeRowsPerPage}\r\n slotProps={{ select: { MenuProps: { disableScrollLock: true } } }}\r\n />\r\n </TableGridStyled>\r\n )\r\n }\r\n\r\n preRender = (children?: ReactNode) => (\r\n <GlobalModal>\r\n <PopoverGlobal.Provider />\r\n {children}\r\n </GlobalModal>\r\n )\r\n\r\n getPagination = (): IPaginationModel => this.filterState.pagination ?? defaultPagination\r\n\r\n getRootClasses = () => {\r\n const classes = [tableGridClasses.root]\r\n if (this.filterState.loading) classes.push(tableGridClasses.loading)\r\n return classes.join(' ')\r\n }\r\n\r\n getItems = () => {\r\n return this.props.data.items ?? []\r\n }\r\n\r\n handleFilterChange = (filterStateChange: IFilterState<T>) => {\r\n this.setFilterState(filterStateChange)\r\n }\r\n\r\n handleChangePage = (_: RMEvent<HTMLButtonElement, MouseEvent> | null, page: number) => {\r\n const pagination = this.getPagination()\r\n this.setFilterState({ pagination: { page, pageSize: pagination.pageSize } })\r\n }\r\n\r\n handleChangeRowsPerPage: ChangeEventHandler<HTMLInputElement | HTMLTextAreaElement> = (event) => {\r\n this.setFilterState({ pagination: { page: 0, pageSize: parseInt(event.target.value, 10) } })\r\n }\r\n }\r\n\r\n return TableGrid\r\n}\r\n\r\nexport default CreateTableGrid\r\n"],"names":["CreateTableGrid","params","_params$filterBarConf","FilterBarInstance","CreateFilterBar","filterBarConfigs","fields","ItemActions","CreateTableGridItemActions","TableGrid","_this","_classCallCheck","_len","arguments","length","args","Array","_key","_callSuper","this","concat","_defineProperty","pagination","defaultPagination","value","details","filterStateStore","_objectSpread","mergeObjects","filterState","props","onFilterChange","forceUpdate","error","console","log","children","_jsxs","GlobalModal","_jsx","PopoverGlobal","Provider","_this$filterState$pag","classes","tableGridClasses","root","loading","push","join","_this$props$data$item","data","items","filterStateChange","setFilterState","_","page","getPagination","pageSize","event","parseInt","target","_inherits","Component","_createClass","key","get","_this$props$filter","filter","_ref","_this$props$slots$ite","_this$props$slots","_ref2","_this$props$slots$too","_this$props$slots2","_params$slots","Object","assign","slots","TableGridItem","item","ItemDefault","ToolbarPannel","toolbar","ToolbarPannelDefault","_params$size","size","xs","sm","md","_this$slots$filterBar","_this$slots$filterBar2","_this$props$data$tota","_this2","_this$slots","actionProps","getItems","preRender","TableGridStyled","className","getRootClasses","title","toolbarProps","Stack","direction","alignItems","gap","filterBar","before","onChange","handleFilterChange","after","content","contentInner","contentPosition","Grid","container","spacing","gridContainer","map","index","mergeConfig","gridItem","Box","actions","getSelecterId","toString","Fade","in","unmountOnExit","overlay","CircularProgress","noItems","Typography","variant","Divider","sx","position","zIndex","TablePagination","component","count","totalItems","onPageChange","handleChangePage","rowsPerPage","onRowsPerPageChange","handleChangeRowsPerPage","slotProps","select","MenuProps","disableScrollLock"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- var e={page:0,pageSize:25},n={root:"TableGrid-root",content:"TableGrid-content",contentPosition:"TableGrid-contentPosition",contentInner:"TableGrid-contentInner",loading:"TableGrid-loading",overlay:"TableGrid-overlay",item:"TableGrid-item",actions:"TableGrid-actions",noItems:"TableGrid-noItems"};export{e as defaultPagination,n as tableGridClasses};
1
+ var e={page:0,pageSize:25};export{e as defaultPagination};
2
2
  //# sourceMappingURL=helpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.js","sources":["../../../src/table-grid/helpers.tsx"],"sourcesContent":["import { IPaginationModel } from './types'\r\n\r\nexport const defaultPagination: IPaginationModel = { page: 0, pageSize: 25 }\r\n\r\nexport const tableGridClasses = {\r\n root: 'TableGrid-root',\r\n content: 'TableGrid-content',\r\n contentPosition: 'TableGrid-contentPosition',\r\n contentInner: 'TableGrid-contentInner',\r\n loading: 'TableGrid-loading',\r\n overlay: 'TableGrid-overlay',\r\n item: 'TableGrid-item',\r\n actions: 'TableGrid-actions',\r\n noItems: 'TableGrid-noItems'\r\n}\r\n"],"names":["defaultPagination","page","pageSize","tableGridClasses","root","content","contentPosition","contentInner","loading","overlay","item","actions","noItems"],"mappings":"AAEO,IAAMA,EAAsC,CAAEC,KAAM,EAAGC,SAAU,IAE3DC,EAAmB,CAC9BC,KAAM,iBACNC,QAAS,oBACTC,gBAAiB,4BACjBC,aAAc,yBACdC,QAAS,oBACTC,QAAS,oBACTC,KAAM,iBACNC,QAAS,oBACTC,QAAS"}
1
+ {"version":3,"file":"helpers.js","sources":["../../../src/table-grid/helpers.tsx"],"sourcesContent":["import { IPaginationModel } from './types'\r\n\r\nexport const defaultPagination: IPaginationModel = { page: 0, pageSize: 25 }\r\n"],"names":["defaultPagination","page","pageSize"],"mappings":"AAEO,IAAMA,EAAsC,CAAEC,KAAM,EAAGC,SAAU"}
@@ -0,0 +1,2 @@
1
+ import{defineProperty as t}from"../../_virtual/_rollupPluginBabelHelpers.js";import{styled as o,Box as e,colors as n,tablePaginationClasses as i,alpha as a}from"@mui/material";var r={root:"TableGrid-root",content:"TableGrid-content",contentPosition:"TableGrid-contentPosition",contentInner:"TableGrid-contentInner",loading:"TableGrid-loading",overlay:"TableGrid-overlay",item:"TableGrid-item",actions:"TableGrid-actions",noItems:"TableGrid-noItems"},l=o(e)(t(t(t(t(t(t(t(t({flex:1,height:"100%",display:"flex",flexDirection:"column"},".".concat(r.content),{position:"relative",flex:1,zIndex:1}),".".concat(r.contentPosition),{position:"absolute",top:0,left:0,width:"100%",height:"100%"}),".".concat(r.contentInner),{overflowY:"auto",padding:"10px 5px"}),".".concat(r.overlay),{display:"flex",alignItems:"center",justifyContent:"center",background:a(n.common.white,.4),zIndex:10}),".".concat(r.noItems),{display:"flex",alignItems:"center",justifyContent:"center"}),".".concat(r.item),{position:"relative"}),".".concat(r.actions),{position:"absolute",top:"5px",right:"5px",zIndex:5,display:"inline-block"}),".".concat(i.root),{background:n.common.white,position:"relative",zIndex:5})),c=o(e)({width:"100%",paddingBottom:"100%",background:n.grey[600]});export{c as ItemDefault,l as TableGridStyled,r as tableGridClasses};
2
+ //# sourceMappingURL=styled.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"styled.js","sources":["../../../src/table-grid/styled.tsx"],"sourcesContent":["import { alpha, Box, colors, styled, tablePaginationClasses } from '@mui/material'\r\n\r\nexport const tableGridClasses = {\r\n root: 'TableGrid-root',\r\n content: 'TableGrid-content',\r\n contentPosition: 'TableGrid-contentPosition',\r\n contentInner: 'TableGrid-contentInner',\r\n loading: 'TableGrid-loading',\r\n overlay: 'TableGrid-overlay',\r\n item: 'TableGrid-item',\r\n actions: 'TableGrid-actions',\r\n noItems: 'TableGrid-noItems'\r\n}\r\n\r\nexport const TableGridStyled = styled(Box)({\r\n flex: 1,\r\n height: '100%',\r\n display: 'flex',\r\n flexDirection: 'column',\r\n [`.${tableGridClasses.content}`]: {\r\n position: 'relative',\r\n flex: 1,\r\n zIndex: 1\r\n },\r\n [`.${tableGridClasses.contentPosition}`]: {\r\n position: 'absolute',\r\n top: 0,\r\n left: 0,\r\n width: '100%',\r\n height: '100%'\r\n },\r\n [`.${tableGridClasses.contentInner}`]: {\r\n overflowY: 'auto',\r\n padding: '10px 5px'\r\n },\r\n [`.${tableGridClasses.overlay}`]: {\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n background: alpha(colors.common.white, 0.4),\r\n zIndex: 10\r\n },\r\n [`.${tableGridClasses.noItems}`]: {\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center'\r\n },\r\n [`.${tableGridClasses.item}`]: {\r\n position: 'relative'\r\n },\r\n [`.${tableGridClasses.actions}`]: {\r\n position: 'absolute',\r\n top: '5px',\r\n right: '5px',\r\n zIndex: 5,\r\n display: 'inline-block'\r\n },\r\n [`.${tablePaginationClasses.root}`]: {\r\n background: colors.common.white,\r\n position: 'relative',\r\n zIndex: 5\r\n }\r\n})\r\n\r\nexport const ItemDefault = styled(Box)({\r\n width: '100%',\r\n paddingBottom: '100%',\r\n background: colors.grey[600]\r\n})\r\n"],"names":["tableGridClasses","root","content","contentPosition","contentInner","loading","overlay","item","actions","noItems","TableGridStyled","styled","Box","_defineProperty","flex","height","display","flexDirection","concat","position","zIndex","top","left","width","overflowY","padding","alignItems","justifyContent","background","alpha","colors","common","white","right","tablePaginationClasses","ItemDefault","paddingBottom","grey"],"mappings":"gLAEO,IAAMA,EAAmB,CAC9BC,KAAM,iBACNC,QAAS,oBACTC,gBAAiB,4BACjBC,aAAc,yBACdC,QAAS,oBACTC,QAAS,oBACTC,KAAM,iBACNC,QAAS,oBACTC,QAAS,qBAGEC,EAAkBC,EAAOC,EAAPD,CAAWE,EAAAA,EAAAA,EAAAA,EAAAA,EAAAA,EAAAA,EAAAA,EAAA,CACxCC,KAAM,EACNC,OAAQ,OACRC,QAAS,OACTC,cAAe,UAAQ,IAAAC,OAClBlB,EAAiBE,SAAY,CAChCiB,SAAU,WACVL,KAAM,EACNM,OAAQ,QACTF,OACIlB,EAAiBG,iBAAoB,CACxCgB,SAAU,WACVE,IAAK,EACLC,KAAM,EACNC,MAAO,OACPR,OAAQ,aACTG,OACIlB,EAAiBI,cAAiB,CACrCoB,UAAW,OACXC,QAAS,iBACVP,OACIlB,EAAiBM,SAAY,CAChCU,QAAS,OACTU,WAAY,SACZC,eAAgB,SAChBC,WAAYC,EAAMC,EAAOC,OAAOC,MAAO,IACvCZ,OAAQ,SACTF,OACIlB,EAAiBS,SAAY,CAChCO,QAAS,OACTU,WAAY,SACZC,eAAgB,eACjBT,OACIlB,EAAiBO,MAAS,CAC7BY,SAAU,iBACXD,OACIlB,EAAiBQ,SAAY,CAChCW,SAAU,WACVE,IAAK,MACLY,MAAO,MACPb,OAAQ,EACRJ,QAAS,qBACVE,OACIgB,EAAuBjC,MAAS,CACnC2B,WAAYE,EAAOC,OAAOC,MAC1Bb,SAAU,WACVC,OAAQ,KAICe,EAAcxB,EAAOC,EAAPD,CAAY,CACrCY,MAAO,OACPa,cAAe,OACfR,WAAYE,EAAOO,KAAK"}
@@ -1,4 +1,4 @@
1
- import React from 'react';
1
+ import type { ComponentType } from 'react';
2
2
  import { ITableGridParams, ITableGridProps } from './types';
3
- declare function CreateTableGrid<T extends object>(params: ITableGridParams<T>): React.ComponentType<ITableGridProps<T>>;
3
+ declare function CreateTableGrid<T extends object>(params: ITableGridParams<T>): ComponentType<ITableGridProps<T>>;
4
4
  export default CreateTableGrid;
@@ -1,13 +1,2 @@
1
1
  import { IPaginationModel } from './types';
2
2
  export declare const defaultPagination: IPaginationModel;
3
- export declare const tableGridClasses: {
4
- root: string;
5
- content: string;
6
- contentPosition: string;
7
- contentInner: string;
8
- loading: string;
9
- overlay: string;
10
- item: string;
11
- actions: string;
12
- noItems: string;
13
- };
@@ -0,0 +1,18 @@
1
+ /// <reference types="react" />
2
+ export declare const tableGridClasses: {
3
+ root: string;
4
+ content: string;
5
+ contentPosition: string;
6
+ contentInner: string;
7
+ loading: string;
8
+ overlay: string;
9
+ item: string;
10
+ actions: string;
11
+ noItems: string;
12
+ };
13
+ export declare const TableGridStyled: import("@emotion/styled").StyledComponent<import("@mui/system").BoxOwnProps<import("@mui/material").Theme> & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
14
+ ref?: ((instance: HTMLDivElement | null) => void) | import("react").RefObject<HTMLDivElement> | null | undefined;
15
+ }, keyof import("@mui/system").BoxOwnProps<import("@mui/material").Theme>> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
16
+ export declare const ItemDefault: import("@emotion/styled").StyledComponent<import("@mui/system").BoxOwnProps<import("@mui/material").Theme> & Omit<Omit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "ref"> & {
17
+ ref?: ((instance: HTMLDivElement | null) => void) | import("react").RefObject<HTMLDivElement> | null | undefined;
18
+ }, keyof import("@mui/system").BoxOwnProps<import("@mui/material").Theme>> & import("@mui/system").MUIStyledCommonProps<import("@mui/material").Theme>, {}, {}>;
@@ -26,6 +26,10 @@ export interface ITableGridSlots<T> extends ITableGridFlexibleSlots<T> {
26
26
  toolbarProps?: IToolbarPannelProps;
27
27
  action?: ComponentType<ITableGridItemActionsBaseProps<T>>;
28
28
  actionProps?: TableGridItemActionsConfig<T>;
29
+ filterBar?: {
30
+ after?: ReactNode;
31
+ before?: ReactNode;
32
+ };
29
33
  }
30
34
  export interface ITableGridInnerSlots<T> extends ITableGridSlots<T> {
31
35
  TableGridItem: ComponentType<ITableGridItemProps<T>>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "dinocollab-core",
3
- "version": "2.1.27",
3
+ "version": "2.1.28",
4
4
  "description": "Dinocollab core - libraries for building collaborative applications with React 18",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.js",