dinocollab-core 1.0.3 → 1.0.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.
- package/dist/_virtual/_rollupPluginBabelHelpers.js +1 -487
- package/dist/_virtual/_rollupPluginBabelHelpers.js.map +1 -1
- package/dist/api-context/alert-global.js +1 -165
- package/dist/api-context/alert-global.js.map +1 -1
- package/dist/api-context/drawer-global.js +1 -111
- package/dist/api-context/drawer-global.js.map +1 -1
- package/dist/api-context/global-modal.js +1 -94
- package/dist/api-context/global-modal.js.map +1 -1
- package/dist/api-context/popover-global.js +1 -109
- package/dist/api-context/popover-global.js.map +1 -1
- package/dist/api-context/popover.js +1 -93
- package/dist/api-context/popover.js.map +1 -1
- package/dist/api-context/ui.units.js +1 -22
- package/dist/api-context/ui.units.js.map +1 -1
- package/dist/components/breadcrumbs.js +1 -64
- package/dist/components/breadcrumbs.js.map +1 -1
- package/dist/components/copy-to-clipboard.js +1 -111
- package/dist/components/copy-to-clipboard.js.map +1 -1
- package/dist/components/create.multi-select-dropdown.js +2 -0
- package/dist/components/create.multi-select-dropdown.js.map +1 -0
- package/dist/components/help-tooltip.js +1 -103
- package/dist/components/help-tooltip.js.map +1 -1
- package/dist/components/image-with-fallback.js +1 -50
- package/dist/components/image-with-fallback.js.map +1 -1
- package/dist/components/text-editor.js +1 -117
- package/dist/components/text-editor.js.map +1 -1
- package/dist/components/text-editor.preview.js +1 -26
- package/dist/components/text-editor.preview.js.map +1 -1
- package/dist/filter-bar/base.js +2 -0
- package/dist/filter-bar/base.js.map +1 -0
- package/dist/filter-bar/create.filter-bar.js +2 -0
- package/dist/filter-bar/create.filter-bar.js.map +1 -0
- package/dist/filter-bar/create.filter-menu.js +2 -0
- package/dist/filter-bar/create.filter-menu.js.map +1 -0
- package/dist/filter-bar/create.filter-panel.js +2 -0
- package/dist/filter-bar/create.filter-panel.js.map +1 -0
- package/dist/filter-bar/create.filtered.js +2 -0
- package/dist/filter-bar/create.filtered.js.map +1 -0
- package/dist/filter-bar/create.sort-menu.js +2 -0
- package/dist/filter-bar/create.sort-menu.js.map +1 -0
- package/dist/filter-bar/demo.js +2 -0
- package/dist/filter-bar/demo.js.map +1 -0
- package/dist/filter-bar/types.js +2 -0
- package/dist/filter-bar/types.js.map +1 -0
- package/dist/filter-bar/ui.units.js +2 -0
- package/dist/filter-bar/ui.units.js.map +1 -0
- package/dist/form/create.autocomplete.chips.js +1 -227
- package/dist/form/create.autocomplete.chips.js.map +1 -1
- package/dist/form/create.date-expired.js +1 -210
- package/dist/form/create.date-expired.js.map +1 -1
- package/dist/form/create.date-picker.js +1 -127
- package/dist/form/create.date-picker.js.map +1 -1
- package/dist/form/create.form-base.js +1 -140
- package/dist/form/create.form-base.js.map +1 -1
- package/dist/form/create.form-comfirm.js +1 -130
- package/dist/form/create.form-comfirm.js.map +1 -1
- package/dist/form/create.form-grid-layout.js +1 -187
- package/dist/form/create.form-grid-layout.js.map +1 -1
- package/dist/form/create.form-grid-layout.units.js +1 -41
- package/dist/form/create.form-grid-layout.units.js.map +1 -1
- package/dist/form/create.input.file.js +1 -78
- package/dist/form/create.input.file.js.map +1 -1
- package/dist/form/create.input.js +1 -275
- package/dist/form/create.input.js.map +1 -1
- package/dist/form/create.select-simple.js +1 -113
- package/dist/form/create.select-simple.js.map +1 -1
- package/dist/form/create.select-with-api.js +1 -276
- package/dist/form/create.select-with-api.js.map +1 -1
- package/dist/form/create.text-editor.js +1 -180
- package/dist/form/create.text-editor.js.map +1 -1
- package/dist/form/dino-form.js +1 -40
- package/dist/form/dino-form.js.map +1 -1
- package/dist/form/helper.js +1 -156
- package/dist/form/helper.js.map +1 -1
- package/dist/form/modal-wrapper.js +1 -81
- package/dist/form/modal-wrapper.js.map +1 -1
- package/dist/form/validator.js +1 -189
- package/dist/form/validator.js.map +1 -1
- package/dist/hooks/index.js +1 -47
- package/dist/hooks/index.js.map +1 -1
- package/dist/index.js +1 -32
- package/dist/index.js.map +1 -1
- package/dist/redux/create.hoc-lazy.js +1 -70
- package/dist/redux/create.hoc-lazy.js.map +1 -1
- package/dist/redux/dino.js +1 -10
- package/dist/redux/dino.js.map +1 -1
- package/dist/redux/types.js +1 -8
- package/dist/redux/types.js.map +1 -1
- package/dist/redux/ui.error-page.js +1 -88
- package/dist/redux/ui.error-page.js.map +1 -1
- package/dist/redux/vector-404.webp.js +1 -3
- package/dist/redux/vector-404.webp.js.map +1 -1
- package/dist/table/context.js +1 -14
- package/dist/table/context.js.map +1 -1
- package/dist/table/create.action-row.js +1 -143
- package/dist/table/create.action-row.js.map +1 -1
- package/dist/table/create.table.js +1 -245
- package/dist/table/create.table.js.map +1 -1
- package/dist/table/custom.filter-operators.js +1 -88
- package/dist/table/custom.filter-operators.js.map +1 -1
- package/dist/table/dino.js +1 -135
- package/dist/table/dino.js.map +1 -1
- package/dist/table/helpers.js +1 -114
- package/dist/table/helpers.js.map +1 -1
- package/dist/table/model-filter.js +1 -22
- package/dist/table/model-filter.js.map +1 -1
- package/dist/table/toolbar-pannel.js +1 -142
- package/dist/table/toolbar-pannel.js.map +1 -1
- package/dist/table/ui.buttons.js +1 -66
- package/dist/table/ui.buttons.js.map +1 -1
- package/dist/table/ui.units.js +1 -247
- package/dist/table/ui.units.js.map +1 -1
- package/dist/table-grid/create.table-grid.js +2 -0
- package/dist/table-grid/create.table-grid.js.map +1 -0
- package/dist/table-grid/dino.js +2 -0
- package/dist/table-grid/dino.js.map +1 -0
- package/dist/table-grid/helpers.js +2 -0
- package/dist/table-grid/helpers.js.map +1 -0
- package/dist/table-grid/item-actions.js +2 -0
- package/dist/table-grid/item-actions.js.map +1 -0
- package/dist/table-grid/toolbar-pannel.js +2 -0
- package/dist/table-grid/toolbar-pannel.js.map +1 -0
- package/dist/types/{lab → components}/create.multi-select-dropdown.d.ts +5 -5
- package/dist/types/components/index.d.ts +2 -0
- package/dist/types/index.d.ts +1 -0
- package/dist/types/lab/{create.select-mul-with-api/index.d.ts → select-mul-with-api/create.select-mul-with-api.d.ts} +1 -1
- package/dist/types/lab/select-mul-with-api/index.d.ts +2 -0
- package/dist/types/lab/{create.select-mul-with-api → select-mul-with-api}/types.d.ts +1 -1
- package/dist/types/{lab/table-grid → table-grid}/item-actions.d.ts +1 -1
- package/dist/types/{lab/table-grid → table-grid}/toolbar-pannel.d.ts +1 -1
- package/dist/types/{lab/table-grid → table-grid}/types.d.ts +1 -1
- package/dist/utils/dayjs-config.js +1 -11
- package/dist/utils/dayjs-config.js.map +1 -1
- package/dist/utils/helpers.js +1 -198
- package/dist/utils/helpers.js.map +1 -1
- package/dist/utils/json-object.js +1 -37
- package/dist/utils/json-object.js.map +1 -1
- package/dist/utils/query-param.js +1 -171
- package/dist/utils/query-param.js.map +1 -1
- package/package.json +3 -8
- package/dist/index.d.ts +0 -928
- /package/dist/types/{lab/filter-bar → filter-bar}/base.d.ts +0 -0
- /package/dist/types/{lab/filter-bar → filter-bar}/create.filter-bar.d.ts +0 -0
- /package/dist/types/{lab/filter-bar → filter-bar}/create.filter-menu.d.ts +0 -0
- /package/dist/types/{lab/filter-bar → filter-bar}/create.filter-panel.d.ts +0 -0
- /package/dist/types/{lab/filter-bar → filter-bar}/create.filtered.d.ts +0 -0
- /package/dist/types/{lab/filter-bar → filter-bar}/create.sort-menu.d.ts +0 -0
- /package/dist/types/{lab/filter-bar → filter-bar}/demo.d.ts +0 -0
- /package/dist/types/{lab/filter-bar → filter-bar}/index.d.ts +0 -0
- /package/dist/types/{lab/filter-bar → filter-bar}/types.d.ts +0 -0
- /package/dist/types/{lab/filter-bar → filter-bar}/ui.units.d.ts +0 -0
- /package/dist/types/lab/{create.select-mul-with-api → select-mul-with-api}/table-custom.d.ts +0 -0
- /package/dist/types/lab/{create.select-mul-with-api → select-mul-with-api}/ui.units.d.ts +0 -0
- /package/dist/types/{lab/table-grid → table-grid}/create.table-grid.d.ts +0 -0
- /package/dist/types/{lab/table-grid → table-grid}/demo.d.ts +0 -0
- /package/dist/types/{lab/table-grid → table-grid}/dino.d.ts +0 -0
- /package/dist/types/{lab/table-grid → table-grid}/helpers.d.ts +0 -0
- /package/dist/types/{lab/table-grid → table-grid}/index.d.ts +0 -0
|
@@ -1,144 +1,2 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { jsx } from 'react/jsx-runtime';
|
|
3
|
-
import React, { Component } from 'react';
|
|
4
|
-
import { Box, Tooltip, IconButton } from '@mui/material';
|
|
5
|
-
import EditIcon from '@mui/icons-material/Edit';
|
|
6
|
-
import DeleteIcon from '@mui/icons-material/Delete';
|
|
7
|
-
import { mergeObjects as _mergeObjects } from '../utils/helpers.js';
|
|
8
|
-
import '../utils/query-param.js';
|
|
9
|
-
import '../utils/dayjs-config.js';
|
|
10
|
-
import { MapTableBaseContext } from './context.js';
|
|
11
|
-
|
|
12
|
-
function CreateActionRow(params) {
|
|
13
|
-
var ActionRow = /*#__PURE__*/function (_Component) {
|
|
14
|
-
function ActionRow() {
|
|
15
|
-
var _this;
|
|
16
|
-
_classCallCheck(this, ActionRow);
|
|
17
|
-
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
|
18
|
-
args[_key] = arguments[_key];
|
|
19
|
-
}
|
|
20
|
-
_this = _callSuper(this, ActionRow, [].concat(args));
|
|
21
|
-
_defineProperty(_this, "getButtons", /*#__PURE__*/_regeneratorRuntime().mark(function _callee(that, thatProps, tableContext) {
|
|
22
|
-
var _that$props$before, _that$props, _that$props$formEdit, _that$props2, _that$props$formDelet, _that$props3, _that$props$after, _that$props4;
|
|
23
|
-
var beforeFunc, editFunc, editContent, deleteFunc, deleteContent, afterFunc;
|
|
24
|
-
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
25
|
-
while (1) switch (_context.prev = _context.next) {
|
|
26
|
-
case 0:
|
|
27
|
-
beforeFunc = (_that$props$before = (_that$props = that.props) === null || _that$props === void 0 ? void 0 : _that$props.before) !== null && _that$props$before !== void 0 ? _that$props$before : thatProps === null || thatProps === void 0 ? void 0 : thatProps.before;
|
|
28
|
-
if (!beforeFunc) {
|
|
29
|
-
_context.next = 4;
|
|
30
|
-
break;
|
|
31
|
-
}
|
|
32
|
-
_context.next = 4;
|
|
33
|
-
return jsx(React.Fragment, {
|
|
34
|
-
children: beforeFunc(that.props.value, tableContext)
|
|
35
|
-
}, 'Before');
|
|
36
|
-
case 4:
|
|
37
|
-
editFunc = (_that$props$formEdit = (_that$props2 = that.props) === null || _that$props2 === void 0 ? void 0 : _that$props2.formEdit) !== null && _that$props$formEdit !== void 0 ? _that$props$formEdit : thatProps === null || thatProps === void 0 ? void 0 : thatProps.formEdit;
|
|
38
|
-
editContent = editFunc ? editFunc(that.props.value, tableContext) : undefined;
|
|
39
|
-
if (!(editFunc && !!editContent)) {
|
|
40
|
-
_context.next = 9;
|
|
41
|
-
break;
|
|
42
|
-
}
|
|
43
|
-
_context.next = 9;
|
|
44
|
-
return jsx(Tooltip, {
|
|
45
|
-
title: 'Edit',
|
|
46
|
-
arrow: true,
|
|
47
|
-
children: jsx(IconButton, {
|
|
48
|
-
color: 'primary',
|
|
49
|
-
onClick: function onClick() {
|
|
50
|
-
tableContext === null || tableContext === void 0 || tableContext.showModal(_objectSpread2({
|
|
51
|
-
renderContent: function renderContent() {
|
|
52
|
-
return editContent || jsx(React.Fragment, {});
|
|
53
|
-
},
|
|
54
|
-
sx: {
|
|
55
|
-
display: 'flex',
|
|
56
|
-
justifyContent: 'center',
|
|
57
|
-
alignItems: 'center'
|
|
58
|
-
},
|
|
59
|
-
backdropActivated: true
|
|
60
|
-
}, params === null || params === void 0 ? void 0 : params.buttonEditConfig));
|
|
61
|
-
},
|
|
62
|
-
children: jsx(EditIcon, {
|
|
63
|
-
fontSize: 'small'
|
|
64
|
-
})
|
|
65
|
-
})
|
|
66
|
-
}, 'Edit');
|
|
67
|
-
case 9:
|
|
68
|
-
deleteFunc = (_that$props$formDelet = (_that$props3 = that.props) === null || _that$props3 === void 0 ? void 0 : _that$props3.formDelete) !== null && _that$props$formDelet !== void 0 ? _that$props$formDelet : thatProps === null || thatProps === void 0 ? void 0 : thatProps.formDelete;
|
|
69
|
-
deleteContent = deleteFunc ? deleteFunc(that.props.value, tableContext) : undefined;
|
|
70
|
-
if (!(deleteFunc && !!deleteContent)) {
|
|
71
|
-
_context.next = 14;
|
|
72
|
-
break;
|
|
73
|
-
}
|
|
74
|
-
_context.next = 14;
|
|
75
|
-
return jsx(Tooltip, {
|
|
76
|
-
title: 'Delete',
|
|
77
|
-
arrow: true,
|
|
78
|
-
children: jsx(IconButton, {
|
|
79
|
-
color: 'error',
|
|
80
|
-
onClick: function onClick() {
|
|
81
|
-
tableContext === null || tableContext === void 0 || tableContext.showModal(_objectSpread2({
|
|
82
|
-
renderContent: function renderContent() {
|
|
83
|
-
return deleteContent || jsx(React.Fragment, {});
|
|
84
|
-
},
|
|
85
|
-
sx: {
|
|
86
|
-
display: 'flex',
|
|
87
|
-
justifyContent: 'center',
|
|
88
|
-
alignItems: 'center'
|
|
89
|
-
},
|
|
90
|
-
backdropActivated: true
|
|
91
|
-
}, params === null || params === void 0 ? void 0 : params.buttonDeleteConfig));
|
|
92
|
-
},
|
|
93
|
-
children: jsx(DeleteIcon, {
|
|
94
|
-
fontSize: 'small'
|
|
95
|
-
})
|
|
96
|
-
})
|
|
97
|
-
}, 'Delete');
|
|
98
|
-
case 14:
|
|
99
|
-
afterFunc = (_that$props$after = (_that$props4 = that.props) === null || _that$props4 === void 0 ? void 0 : _that$props4.after) !== null && _that$props$after !== void 0 ? _that$props$after : thatProps === null || thatProps === void 0 ? void 0 : thatProps.after;
|
|
100
|
-
if (!afterFunc) {
|
|
101
|
-
_context.next = 18;
|
|
102
|
-
break;
|
|
103
|
-
}
|
|
104
|
-
_context.next = 18;
|
|
105
|
-
return jsx(React.Fragment, {
|
|
106
|
-
children: afterFunc(that.props.value, tableContext)
|
|
107
|
-
}, 'After');
|
|
108
|
-
case 18:
|
|
109
|
-
case "end":
|
|
110
|
-
return _context.stop();
|
|
111
|
-
}
|
|
112
|
-
}, _callee);
|
|
113
|
-
}));
|
|
114
|
-
return _this;
|
|
115
|
-
}
|
|
116
|
-
_inherits(ActionRow, _Component);
|
|
117
|
-
return _createClass(ActionRow, [{
|
|
118
|
-
key: "propsMerge",
|
|
119
|
-
get: function get() {
|
|
120
|
-
return _mergeObjects(params, this.props);
|
|
121
|
-
}
|
|
122
|
-
}, {
|
|
123
|
-
key: "render",
|
|
124
|
-
value: function render() {
|
|
125
|
-
var _this2 = this;
|
|
126
|
-
return MapTableBaseContext(function (context) {
|
|
127
|
-
return jsx(Box, _objectSpread2(_objectSpread2({
|
|
128
|
-
sx: {
|
|
129
|
-
display: 'flex',
|
|
130
|
-
alignItems: 'center',
|
|
131
|
-
height: '100%'
|
|
132
|
-
}
|
|
133
|
-
}, _this2.propsMerge.wrapProps), {}, {
|
|
134
|
-
children: Array.from(_this2.getButtons(_this2, _this2.propsMerge, context))
|
|
135
|
-
}));
|
|
136
|
-
});
|
|
137
|
-
}
|
|
138
|
-
}]);
|
|
139
|
-
}(Component);
|
|
140
|
-
return ActionRow;
|
|
141
|
-
}
|
|
142
|
-
|
|
143
|
-
export { CreateActionRow as default };
|
|
1
|
+
import{inherits as e,createClass as r,objectSpread2 as t,classCallCheck as n,callSuper as o,defineProperty as i,regeneratorRuntime as l}from"../_virtual/_rollupPluginBabelHelpers.js";import{jsx as a}from"react/jsx-runtime";import s,{Component as u}from"react";import{Box as c,Tooltip as p,IconButton as d}from"@mui/material";import f from"@mui/icons-material/Edit";import m from"@mui/icons-material/Delete";import{mergeObjects as v}from"../utils/helpers.js";import"../utils/query-param.js";import"../utils/dayjs-config.js";import{MapTableBaseContext as g}from"./context.js";function h(h){var x=function(){function x(){var e;n(this,x);for(var r=arguments.length,u=new Array(r),c=0;c<r;c++)u[c]=arguments[c];return e=o(this,x,[].concat(u)),i(e,"getButtons",l().mark((function e(r,n,o){var i,u,c,v,g,x,b,y,k,j,C,w,D,E;return l().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:if(!(k=null!==(i=null===(u=r.props)||void 0===u?void 0:u.before)&&void 0!==i?i:null==n?void 0:n.before)){e.next=4;break}return e.next=4,a(s.Fragment,{children:k(r.props.value,o)},"Before");case 4:if(j=null!==(c=null===(v=r.props)||void 0===v?void 0:v.formEdit)&&void 0!==c?c:null==n?void 0:n.formEdit,C=j?j(r.props.value,o):void 0,!j||!C){e.next=9;break}return e.next=9,a(p,{title:"Edit",arrow:!0,children:a(d,{color:"primary",onClick:function(){null==o||o.showModal(t({renderContent:function(){return C||a(s.Fragment,{})},sx:{display:"flex",justifyContent:"center",alignItems:"center"},backdropActivated:!0},null==h?void 0:h.buttonEditConfig))},children:a(f,{fontSize:"small"})})},"Edit");case 9:if(w=null!==(g=null===(x=r.props)||void 0===x?void 0:x.formDelete)&&void 0!==g?g:null==n?void 0:n.formDelete,D=w?w(r.props.value,o):void 0,!w||!D){e.next=14;break}return e.next=14,a(p,{title:"Delete",arrow:!0,children:a(d,{color:"error",onClick:function(){null==o||o.showModal(t({renderContent:function(){return D||a(s.Fragment,{})},sx:{display:"flex",justifyContent:"center",alignItems:"center"},backdropActivated:!0},null==h?void 0:h.buttonDeleteConfig))},children:a(m,{fontSize:"small"})})},"Delete");case 14:if(!(E=null!==(b=null===(y=r.props)||void 0===y?void 0:y.after)&&void 0!==b?b:null==n?void 0:n.after)){e.next=18;break}return e.next=18,a(s.Fragment,{children:E(r.props.value,o)},"After");case 18:case"end":return e.stop()}}),e)}))),e}return e(x,u),r(x,[{key:"propsMerge",get:function(){return v(h,this.props)}},{key:"render",value:function(){var e=this;return g((function(r){return a(c,t(t({sx:{display:"flex",alignItems:"center",height:"100%"}},e.propsMerge.wrapProps),{},{children:Array.from(e.getButtons(e,e.propsMerge,r))}))}))}}])}();return x}export{h as default};
|
|
144
2
|
//# sourceMappingURL=create.action-row.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create.action-row.js","sources":["../../src/table/create.action-row.tsx"],"sourcesContent":["import React, { Component, ComponentType } from 'react'\r\nimport { Box, BoxProps, IconButton, Tooltip } from '@mui/material'\r\nimport EditIcon from '@mui/icons-material/Edit'\r\nimport DeleteIcon from '@mui/icons-material/Delete'\r\nimport { mergeObjects } from '../utils'\r\nimport { GlobalModalState } from '../api-context'\r\nimport { ITableBaseContext, MapTableBaseContext } from './context'\r\n\r\nexport interface IActionRowProps<T> {\r\n value: T\r\n formEdit?: (value: T, tableContext: ITableBaseContext) => React.ReactNode\r\n formDelete?: (value: T, tableContext: ITableBaseContext) => React.ReactNode\r\n after?: (value: T, tableContext: ITableBaseContext) => React.ReactNode\r\n before?: (value: T, tableContext: ITableBaseContext) => React.ReactNode\r\n wrapProps?: BoxProps\r\n buttonEditConfig?: GlobalModalState\r\n buttonDeleteConfig?: GlobalModalState\r\n}\r\n\r\nfunction CreateActionRow<T>(params?: Omit<IActionRowProps<T>, 'value'>): ComponentType<IActionRowProps<T>> {\r\n class ActionRow extends Component<IActionRowProps<T>> {\r\n get propsMerge() {\r\n return mergeObjects<IActionRowProps<T>>(params, this.props)\r\n }\r\n\r\n getButtons = function* (that: ActionRow, thatProps: Omit<IActionRowProps<T>, 'value'>, tableContext: ITableBaseContext) {\r\n const beforeFunc = that.props?.before ?? thatProps?.before\r\n if (beforeFunc) {\r\n yield <React.Fragment key='Before'>{beforeFunc(that.props.value, tableContext)}</React.Fragment>\r\n }\r\n const editFunc = that.props?.formEdit ?? thatProps?.formEdit\r\n const editContent = editFunc ? editFunc(that.props.value, tableContext) : undefined\r\n if (editFunc && !!editContent) {\r\n yield (\r\n <Tooltip title='Edit' arrow key='Edit'>\r\n <IconButton\r\n color='primary'\r\n onClick={() => {\r\n tableContext?.showModal({\r\n renderContent: () => editContent || <React.Fragment />,\r\n sx: { display: 'flex', justifyContent: 'center', alignItems: 'center' },\r\n backdropActivated: true,\r\n ...params?.buttonEditConfig\r\n })\r\n }}\r\n >\r\n <EditIcon fontSize='small' />\r\n </IconButton>\r\n </Tooltip>\r\n )\r\n }\r\n const deleteFunc = that.props?.formDelete ?? thatProps?.formDelete\r\n const deleteContent = deleteFunc ? deleteFunc(that.props.value, tableContext) : undefined\r\n if (deleteFunc && !!deleteContent) {\r\n yield (\r\n <Tooltip title='Delete' arrow key='Delete'>\r\n <IconButton\r\n color='error'\r\n onClick={() => {\r\n tableContext?.showModal({\r\n renderContent: () => deleteContent || <React.Fragment />,\r\n sx: { display: 'flex', justifyContent: 'center', alignItems: 'center' },\r\n backdropActivated: true,\r\n ...params?.buttonDeleteConfig\r\n })\r\n }}\r\n >\r\n <DeleteIcon fontSize='small' />\r\n </IconButton>\r\n </Tooltip>\r\n )\r\n }\r\n const afterFunc = that.props?.after ?? thatProps?.after\r\n if (afterFunc) {\r\n yield <React.Fragment key='After'>{afterFunc(that.props.value, tableContext)}</React.Fragment>\r\n }\r\n }\r\n\r\n render() {\r\n return MapTableBaseContext((context) => (\r\n <Box sx={{ display: 'flex', alignItems: 'center', height: '100%' }} {...this.propsMerge.wrapProps}>\r\n {Array.from(this.getButtons(this, this.propsMerge, context))}\r\n </Box>\r\n ))\r\n }\r\n }\r\n\r\n return ActionRow\r\n}\r\nexport default CreateActionRow\r\n"],"names":["CreateActionRow","params","ActionRow","_Component","_this","_classCallCheck","_len","arguments","length","args","Array","_key","_callSuper","concat","_defineProperty","_regeneratorRuntime","mark","_callee","that","thatProps","tableContext","_that$props$before","_that$props","_that$props$formEdit","_that$props2","_that$props$formDelet","_that$props3","_that$props$after","_that$props4","beforeFunc","editFunc","editContent","deleteFunc","deleteContent","afterFunc","wrap","_callee$","_context","prev","next","props","before","_jsx","React","Fragment","children","value","formEdit","undefined","Tooltip","title","arrow","IconButton","color","onClick","showModal","_objectSpread","renderContent","sx","display","justifyContent","alignItems","backdropActivated","buttonEditConfig","EditIcon","fontSize","formDelete","buttonDeleteConfig","DeleteIcon","after","stop","_inherits","_createClass","key","get","mergeObjects","render","_this2","MapTableBaseContext","context","Box","height","propsMerge","wrapProps","from","getButtons","Component"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"create.action-row.js","sources":["../../src/table/create.action-row.tsx"],"sourcesContent":["import React, { Component, ComponentType } from 'react'\r\nimport { Box, BoxProps, IconButton, Tooltip } from '@mui/material'\r\nimport EditIcon from '@mui/icons-material/Edit'\r\nimport DeleteIcon from '@mui/icons-material/Delete'\r\nimport { mergeObjects } from '../utils'\r\nimport { GlobalModalState } from '../api-context'\r\nimport { ITableBaseContext, MapTableBaseContext } from './context'\r\n\r\nexport interface IActionRowProps<T> {\r\n value: T\r\n formEdit?: (value: T, tableContext: ITableBaseContext) => React.ReactNode\r\n formDelete?: (value: T, tableContext: ITableBaseContext) => React.ReactNode\r\n after?: (value: T, tableContext: ITableBaseContext) => React.ReactNode\r\n before?: (value: T, tableContext: ITableBaseContext) => React.ReactNode\r\n wrapProps?: BoxProps\r\n buttonEditConfig?: GlobalModalState\r\n buttonDeleteConfig?: GlobalModalState\r\n}\r\n\r\nfunction CreateActionRow<T>(params?: Omit<IActionRowProps<T>, 'value'>): ComponentType<IActionRowProps<T>> {\r\n class ActionRow extends Component<IActionRowProps<T>> {\r\n get propsMerge() {\r\n return mergeObjects<IActionRowProps<T>>(params, this.props)\r\n }\r\n\r\n getButtons = function* (that: ActionRow, thatProps: Omit<IActionRowProps<T>, 'value'>, tableContext: ITableBaseContext) {\r\n const beforeFunc = that.props?.before ?? thatProps?.before\r\n if (beforeFunc) {\r\n yield <React.Fragment key='Before'>{beforeFunc(that.props.value, tableContext)}</React.Fragment>\r\n }\r\n const editFunc = that.props?.formEdit ?? thatProps?.formEdit\r\n const editContent = editFunc ? editFunc(that.props.value, tableContext) : undefined\r\n if (editFunc && !!editContent) {\r\n yield (\r\n <Tooltip title='Edit' arrow key='Edit'>\r\n <IconButton\r\n color='primary'\r\n onClick={() => {\r\n tableContext?.showModal({\r\n renderContent: () => editContent || <React.Fragment />,\r\n sx: { display: 'flex', justifyContent: 'center', alignItems: 'center' },\r\n backdropActivated: true,\r\n ...params?.buttonEditConfig\r\n })\r\n }}\r\n >\r\n <EditIcon fontSize='small' />\r\n </IconButton>\r\n </Tooltip>\r\n )\r\n }\r\n const deleteFunc = that.props?.formDelete ?? thatProps?.formDelete\r\n const deleteContent = deleteFunc ? deleteFunc(that.props.value, tableContext) : undefined\r\n if (deleteFunc && !!deleteContent) {\r\n yield (\r\n <Tooltip title='Delete' arrow key='Delete'>\r\n <IconButton\r\n color='error'\r\n onClick={() => {\r\n tableContext?.showModal({\r\n renderContent: () => deleteContent || <React.Fragment />,\r\n sx: { display: 'flex', justifyContent: 'center', alignItems: 'center' },\r\n backdropActivated: true,\r\n ...params?.buttonDeleteConfig\r\n })\r\n }}\r\n >\r\n <DeleteIcon fontSize='small' />\r\n </IconButton>\r\n </Tooltip>\r\n )\r\n }\r\n const afterFunc = that.props?.after ?? thatProps?.after\r\n if (afterFunc) {\r\n yield <React.Fragment key='After'>{afterFunc(that.props.value, tableContext)}</React.Fragment>\r\n }\r\n }\r\n\r\n render() {\r\n return MapTableBaseContext((context) => (\r\n <Box sx={{ display: 'flex', alignItems: 'center', height: '100%' }} {...this.propsMerge.wrapProps}>\r\n {Array.from(this.getButtons(this, this.propsMerge, context))}\r\n </Box>\r\n ))\r\n }\r\n }\r\n\r\n return ActionRow\r\n}\r\nexport default CreateActionRow\r\n"],"names":["CreateActionRow","params","ActionRow","_this","_classCallCheck","_len","arguments","length","args","Array","_key","_callSuper","this","concat","_defineProperty","_regeneratorRuntime","mark","_callee","that","thatProps","tableContext","_that$props$before","_that$props","_that$props$formEdit","_that$props2","_that$props$formDelet","_that$props3","_that$props$after","_that$props4","beforeFunc","editFunc","editContent","deleteFunc","deleteContent","afterFunc","wrap","_context","prev","next","props","before","_jsx","React","Fragment","children","value","formEdit","undefined","Tooltip","title","arrow","IconButton","color","onClick","showModal","_objectSpread","renderContent","sx","display","justifyContent","alignItems","backdropActivated","buttonEditConfig","EditIcon","fontSize","formDelete","buttonDeleteConfig","DeleteIcon","after","stop","_inherits","Component","_createClass","key","get","mergeObjects","_this2","MapTableBaseContext","context","Box","height","propsMerge","wrapProps","from","getButtons"],"mappings":"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"}
|
|
@@ -1,246 +1,2 @@
|
|
|
1
|
-
import
|
|
2
|
-
import { jsx } from 'react/jsx-runtime';
|
|
3
|
-
import { Component } from 'react';
|
|
4
|
-
import { styled, Box } from '@mui/material';
|
|
5
|
-
import { DataGrid } from '@mui/x-data-grid';
|
|
6
|
-
import { mergeObjects as _mergeObjects } from '../utils/helpers.js';
|
|
7
|
-
import '../utils/query-param.js';
|
|
8
|
-
import '../utils/dayjs-config.js';
|
|
9
|
-
import { TableBaseContext } from './context.js';
|
|
10
|
-
import { customFilterOperators } from './custom.filter-operators.js';
|
|
11
|
-
import '../api-context/alert-global.js';
|
|
12
|
-
import '../api-context/drawer-global.js';
|
|
13
|
-
import GlobalModal, { MapGlobalModalContext } from '../api-context/global-modal.js';
|
|
14
|
-
import TableHelper, { dinoTableClasses } from './helpers.js';
|
|
15
|
-
import ToolbarPannel from './toolbar-pannel.js';
|
|
16
|
-
|
|
17
|
-
var _excluded = ["children"];
|
|
18
|
-
function CreateTable(params) {
|
|
19
|
-
var generateColumns = function generateColumns(extendColDefs) {
|
|
20
|
-
var columns = Object.keys(params.columns).map(function (key) {
|
|
21
|
-
var obj = _objectSpread2({
|
|
22
|
-
field: key
|
|
23
|
-
}, params.columns[key]);
|
|
24
|
-
obj.filterOperators = params.filterOperators ? params.filterOperators(obj) : customFilterOperators(obj);
|
|
25
|
-
return obj;
|
|
26
|
-
});
|
|
27
|
-
if (!!extendColDefs && extendColDefs.length > 0) columns.push.apply(columns, _toConsumableArray(extendColDefs));
|
|
28
|
-
return columns;
|
|
29
|
-
};
|
|
30
|
-
var Table = /*#__PURE__*/function (_Component) {
|
|
31
|
-
function Table(props) {
|
|
32
|
-
var _this;
|
|
33
|
-
_classCallCheck(this, Table);
|
|
34
|
-
_this = _callSuper(this, Table, [props]);
|
|
35
|
-
_defineProperty(_this, "tableQueryParamsCache", {});
|
|
36
|
-
_defineProperty(_this, "setTableQueryParams", function (value) {
|
|
37
|
-
_this.tableQueryParams = _mergeObjects({}, _this.tableQueryParams, value);
|
|
38
|
-
});
|
|
39
|
-
_defineProperty(_this, "renderWrapContext", function (children) {
|
|
40
|
-
return jsx(GlobalModal, {
|
|
41
|
-
children: MapGlobalModalContext(function (context) {
|
|
42
|
-
return jsx(TableBaseContext.Provider, {
|
|
43
|
-
value: {
|
|
44
|
-
showModal: context.show,
|
|
45
|
-
closeModal: context.close
|
|
46
|
-
},
|
|
47
|
-
children: children
|
|
48
|
-
});
|
|
49
|
-
})
|
|
50
|
-
});
|
|
51
|
-
});
|
|
52
|
-
_defineProperty(_this, "getDataGridProps", function () {
|
|
53
|
-
var _this$props$data$item, _this$props$data, _this$props$slots$den, _this$props$slots;
|
|
54
|
-
var mergeConfig = _this.mergeConfig;
|
|
55
|
-
var obj = {
|
|
56
|
-
getRowId: params.getRowId,
|
|
57
|
-
columns: _this.columns,
|
|
58
|
-
rows: (_this$props$data$item = (_this$props$data = _this.props.data) === null || _this$props$data === void 0 ? void 0 : _this$props$data.items) !== null && _this$props$data$item !== void 0 ? _this$props$data$item : [],
|
|
59
|
-
checkboxSelection: true,
|
|
60
|
-
pagination: true,
|
|
61
|
-
density: (_this$props$slots$den = (_this$props$slots = _this.props.slots) === null || _this$props$slots === void 0 ? void 0 : _this$props$slots.density) !== null && _this$props$slots$den !== void 0 ? _this$props$slots$den : 'standard',
|
|
62
|
-
initialState: TableHelper.mapInitialState(_this.props.query, {
|
|
63
|
-
columns: {
|
|
64
|
-
columnVisibilityModel: params.columnVisibilityModel
|
|
65
|
-
}
|
|
66
|
-
}),
|
|
67
|
-
filterDebounceMs: 800,
|
|
68
|
-
sx: {
|
|
69
|
-
border: 0
|
|
70
|
-
},
|
|
71
|
-
slots: {
|
|
72
|
-
toolbar: mergeConfig.toolbar
|
|
73
|
-
},
|
|
74
|
-
rowSelectionModel: _this.rowSelecteds,
|
|
75
|
-
onRowSelectionModelChange: _this.handleRowSelectionChange
|
|
76
|
-
};
|
|
77
|
-
if (params.featureMode === 'server') {
|
|
78
|
-
var _this$props$data$rowT, _this$props$data2;
|
|
79
|
-
var objServer = {
|
|
80
|
-
filterMode: 'server',
|
|
81
|
-
sortingMode: 'server',
|
|
82
|
-
paginationMode: 'server',
|
|
83
|
-
onPaginationModelChange: _this.onPaginationModelChange,
|
|
84
|
-
onFilterModelChange: _this.onFilterModelChange,
|
|
85
|
-
onSortModelChange: _this.onSortModelChange,
|
|
86
|
-
rowCount: (_this$props$data$rowT = (_this$props$data2 = _this.props.data) === null || _this$props$data2 === void 0 ? void 0 : _this$props$data2.rowTotal) !== null && _this$props$data$rowT !== void 0 ? _this$props$data$rowT : 0,
|
|
87
|
-
paginationModel: _this.tableQueryParams.pagination,
|
|
88
|
-
filterModel: _this.tableQueryParams.filter,
|
|
89
|
-
sortModel: TableHelper.mapSortModel(_this.tableQueryParams.sort),
|
|
90
|
-
loading: _this.tableQueryParams.loading
|
|
91
|
-
};
|
|
92
|
-
Object.assign(obj, objServer);
|
|
93
|
-
}
|
|
94
|
-
return _mergeObjects(obj, _this.mergeConfig.dataGridProps);
|
|
95
|
-
});
|
|
96
|
-
_defineProperty(_this, "initialColumns", function () {
|
|
97
|
-
var ActionRow = _this.mergeConfig.ActionRow;
|
|
98
|
-
var list = [];
|
|
99
|
-
if (!!ActionRow) {
|
|
100
|
-
list.push(_objectSpread2({
|
|
101
|
-
field: 'Actions',
|
|
102
|
-
minWidth: 100,
|
|
103
|
-
headerAlign: 'right',
|
|
104
|
-
align: 'right',
|
|
105
|
-
filterable: false,
|
|
106
|
-
sortable: false,
|
|
107
|
-
renderCell: function renderCell(value) {
|
|
108
|
-
return jsx(ActionRow, {
|
|
109
|
-
value: value.row
|
|
110
|
-
});
|
|
111
|
-
}
|
|
112
|
-
}, params.actionRow));
|
|
113
|
-
}
|
|
114
|
-
return generateColumns(list);
|
|
115
|
-
});
|
|
116
|
-
_defineProperty(_this, "onPaginationModelChange", function (model, details) {
|
|
117
|
-
_this.setTableQueryParams({
|
|
118
|
-
pagination: model,
|
|
119
|
-
detail: 'pagination'
|
|
120
|
-
});
|
|
121
|
-
_this.handleChange();
|
|
122
|
-
});
|
|
123
|
-
_defineProperty(_this, "onFilterModelChange", function (model, details) {
|
|
124
|
-
var _pagination$pageSize;
|
|
125
|
-
var pagination = _this.tableQueryParams.pagination;
|
|
126
|
-
_this.setTableQueryParams({
|
|
127
|
-
filter: model,
|
|
128
|
-
pagination: {
|
|
129
|
-
page: 0,
|
|
130
|
-
pageSize: (_pagination$pageSize = pagination === null || pagination === void 0 ? void 0 : pagination.pageSize) !== null && _pagination$pageSize !== void 0 ? _pagination$pageSize : 25
|
|
131
|
-
},
|
|
132
|
-
detail: TableHelper.detectSearchType(model)
|
|
133
|
-
});
|
|
134
|
-
_this.handleChange();
|
|
135
|
-
});
|
|
136
|
-
_defineProperty(_this, "onSortModelChange", function (model, details) {
|
|
137
|
-
var sortValue = model;
|
|
138
|
-
var sort = _this.tableQueryParams.sort;
|
|
139
|
-
if (!!(sort !== null && sort !== void 0 && sort.length) && !sortValue.length) {
|
|
140
|
-
var _sort$, _this$defaultTableQue;
|
|
141
|
-
if ((sort === null || sort === void 0 || (_sort$ = sort[0]) === null || _sort$ === void 0 ? void 0 : _sort$.field) === ((_this$defaultTableQue = _this.defaultTableQueryParams.sort) === null || _this$defaultTableQue === void 0 || (_this$defaultTableQue = _this$defaultTableQue[0]) === null || _this$defaultTableQue === void 0 ? void 0 : _this$defaultTableQue.field)) {
|
|
142
|
-
var _sort$2, _sort$3;
|
|
143
|
-
sortValue = [{
|
|
144
|
-
field: (_sort$2 = sort[0]) === null || _sort$2 === void 0 ? void 0 : _sort$2.field,
|
|
145
|
-
sort: ((_sort$3 = sort[0]) === null || _sort$3 === void 0 ? void 0 : _sort$3.sort) === 'desc' ? 'asc' : 'desc'
|
|
146
|
-
}];
|
|
147
|
-
} else {
|
|
148
|
-
var _this$defaultTableQue2;
|
|
149
|
-
sortValue = (_this$defaultTableQue2 = _this.defaultTableQueryParams.sort) !== null && _this$defaultTableQue2 !== void 0 ? _this$defaultTableQue2 : [];
|
|
150
|
-
}
|
|
151
|
-
}
|
|
152
|
-
_this.setTableQueryParams({
|
|
153
|
-
sort: sortValue,
|
|
154
|
-
detail: 'sort'
|
|
155
|
-
});
|
|
156
|
-
_this.handleChange();
|
|
157
|
-
});
|
|
158
|
-
_defineProperty(_this, "handleChange", function () {
|
|
159
|
-
// const check = TableHelper.isEmpty(this.tableQueryParams)
|
|
160
|
-
// const checkCache = TableHelper.isEmpty(this.tableQueryParamsCache)
|
|
161
|
-
// const isChange = this.props.onChange && this.props.onChange(this.tableQueryParams)
|
|
162
|
-
_this.tableQueryParamsCache = _this.tableQueryParams;
|
|
163
|
-
});
|
|
164
|
-
_defineProperty(_this, "handleRowSelectionChange", function (value, details) {
|
|
165
|
-
if (_this.mergeConfig.maxSelcion && value.length > _this.mergeConfig.maxSelcion) {
|
|
166
|
-
_this.rowSelecteds = value.slice(0, _this.mergeConfig.maxSelcion);
|
|
167
|
-
} else {
|
|
168
|
-
_this.rowSelecteds = value;
|
|
169
|
-
}
|
|
170
|
-
_this.props.onRowSelectionChange && _this.props.onRowSelectionChange(_this.rowSelecteds, details);
|
|
171
|
-
_this.forceUpdate();
|
|
172
|
-
});
|
|
173
|
-
_this.columns = _this.initialColumns();
|
|
174
|
-
_this.tableQueryParams = _objectSpread2({}, props.query);
|
|
175
|
-
_this.defaultTableQueryParams = _this.tableQueryParams;
|
|
176
|
-
_this.rowSelecteds = [];
|
|
177
|
-
return _this;
|
|
178
|
-
}
|
|
179
|
-
_inherits(Table, _Component);
|
|
180
|
-
return _createClass(Table, [{
|
|
181
|
-
key: "mergeConfig",
|
|
182
|
-
get: function get() {
|
|
183
|
-
var _this$props$slots2, _this$props$slots$too, _this$props$slots3, _this$props$slots4, _this$props$slots$max, _this$props$slots5, _this$props$slots6;
|
|
184
|
-
var toolbarPannelProps = _mergeObjects({}, params === null || params === void 0 ? void 0 : params.toolbarProps, (_this$props$slots2 = this.props.slots) === null || _this$props$slots2 === void 0 ? void 0 : _this$props$slots2.toolbarProps);
|
|
185
|
-
return {
|
|
186
|
-
toolbar: (_this$props$slots$too = (_this$props$slots3 = this.props.slots) === null || _this$props$slots3 === void 0 ? void 0 : _this$props$slots3.toolbar) !== null && _this$props$slots$too !== void 0 ? _this$props$slots$too : function () {
|
|
187
|
-
return jsx(ToolbarPannel, _objectSpread2({}, toolbarPannelProps));
|
|
188
|
-
},
|
|
189
|
-
ActionRow: (_this$props$slots4 = this.props.slots) === null || _this$props$slots4 === void 0 ? void 0 : _this$props$slots4.actionRow,
|
|
190
|
-
columnVisibilityModel: params.columnVisibilityModel,
|
|
191
|
-
maxSelcion: (_this$props$slots$max = (_this$props$slots5 = this.props.slots) === null || _this$props$slots5 === void 0 ? void 0 : _this$props$slots5.maxSelection) !== null && _this$props$slots$max !== void 0 ? _this$props$slots$max : params.maxSelection,
|
|
192
|
-
dataGridProps: _mergeObjects({}, params.dataGridProps, (_this$props$slots6 = this.props.slots) === null || _this$props$slots6 === void 0 ? void 0 : _this$props$slots6.dataGridProps)
|
|
193
|
-
};
|
|
194
|
-
}
|
|
195
|
-
}, {
|
|
196
|
-
key: "shouldComponentUpdate",
|
|
197
|
-
value: function shouldComponentUpdate(nextProps) {
|
|
198
|
-
if (params.featureMode === 'server' && !TableHelper.equalTableQueryParams(nextProps.query, this.props.query)) {
|
|
199
|
-
var _nextProps$query;
|
|
200
|
-
this.setTableQueryParams((_nextProps$query = nextProps.query) !== null && _nextProps$query !== void 0 ? _nextProps$query : {});
|
|
201
|
-
return true;
|
|
202
|
-
} else if (params.featureMode !== 'server') {
|
|
203
|
-
return true;
|
|
204
|
-
} else {
|
|
205
|
-
return false;
|
|
206
|
-
}
|
|
207
|
-
}
|
|
208
|
-
}, {
|
|
209
|
-
key: "render",
|
|
210
|
-
value: function render() {
|
|
211
|
-
return this.renderWrapContext(jsx(Wrap, {
|
|
212
|
-
children: jsx(DataGrid, _objectSpread2({}, this.getDataGridProps()))
|
|
213
|
-
}));
|
|
214
|
-
}
|
|
215
|
-
}]);
|
|
216
|
-
}(Component);
|
|
217
|
-
return Table;
|
|
218
|
-
}
|
|
219
|
-
var Wrap = styled(function (_ref) {
|
|
220
|
-
var children = _ref.children,
|
|
221
|
-
p = _objectWithoutProperties(_ref, _excluded);
|
|
222
|
-
return jsx(Box, _objectSpread2(_objectSpread2({}, p), {}, {
|
|
223
|
-
children: jsx("div", {
|
|
224
|
-
children: children
|
|
225
|
-
})
|
|
226
|
-
}));
|
|
227
|
-
})(_defineProperty({
|
|
228
|
-
flex: 1,
|
|
229
|
-
position: 'relative',
|
|
230
|
-
'& > div': {
|
|
231
|
-
position: 'absolute',
|
|
232
|
-
top: 0,
|
|
233
|
-
left: 0,
|
|
234
|
-
width: '100%',
|
|
235
|
-
height: '100%',
|
|
236
|
-
overflowY: 'auto'
|
|
237
|
-
},
|
|
238
|
-
'& .MuiDataGrid-root': {
|
|
239
|
-
'--unstable_DataGrid-radius': 0
|
|
240
|
-
}
|
|
241
|
-
}, "& .MuiDataGrid-cell.".concat(dinoTableClasses.whiteSpacePre, " .MuiDataGrid-cellContent"), {
|
|
242
|
-
whiteSpace: 'pre'
|
|
243
|
-
}));
|
|
244
|
-
|
|
245
|
-
export { CreateTable as default };
|
|
1
|
+
import{objectWithoutProperties as e,objectSpread2 as o,defineProperty as r,inherits as t,createClass as a,classCallCheck as i,callSuper as l,toConsumableArray as n}from"../_virtual/_rollupPluginBabelHelpers.js";import{jsx as s}from"react/jsx-runtime";import{Component as d}from"react";import{styled as u,Box as c}from"@mui/material";import{DataGrid as p}from"@mui/x-data-grid";import{mergeObjects as m}from"../utils/helpers.js";import"../utils/query-param.js";import"../utils/dayjs-config.js";import{TableBaseContext as g}from"./context.js";import{customFilterOperators as h}from"./custom.filter-operators.js";import"../api-context/alert-global.js";import"../api-context/drawer-global.js";import f,{MapGlobalModalContext as v}from"../api-context/global-modal.js";import b,{dinoTableClasses as y}from"./helpers.js";import C from"./toolbar-pannel.js";var P=["children"];function M(e){return function(){function u(t){var a;return i(this,u),a=l(this,u,[t]),r(a,"tableQueryParamsCache",{}),r(a,"setTableQueryParams",(function(e){a.tableQueryParams=m({},a.tableQueryParams,e)})),r(a,"renderWrapContext",(function(e){return s(f,{children:v((function(o){return s(g.Provider,{value:{showModal:o.show,closeModal:o.close},children:e})}))})})),r(a,"getDataGridProps",(function(){var o,r,t,i,l=a.mergeConfig,n={getRowId:e.getRowId,columns:a.columns,rows:null!==(o=null===(r=a.props.data)||void 0===r?void 0:r.items)&&void 0!==o?o:[],checkboxSelection:!0,pagination:!0,density:null!==(t=null===(i=a.props.slots)||void 0===i?void 0:i.density)&&void 0!==t?t:"standard",initialState:b.mapInitialState(a.props.query,{columns:{columnVisibilityModel:e.columnVisibilityModel}}),filterDebounceMs:800,sx:{border:0},slots:{toolbar:l.toolbar},rowSelectionModel:a.rowSelecteds,onRowSelectionModelChange:a.handleRowSelectionChange};if("server"===e.featureMode){var s,d,u={filterMode:"server",sortingMode:"server",paginationMode:"server",onPaginationModelChange:a.onPaginationModelChange,onFilterModelChange:a.onFilterModelChange,onSortModelChange:a.onSortModelChange,rowCount:null!==(s=null===(d=a.props.data)||void 0===d?void 0:d.rowTotal)&&void 0!==s?s:0,paginationModel:a.tableQueryParams.pagination,filterModel:a.tableQueryParams.filter,sortModel:b.mapSortModel(a.tableQueryParams.sort),loading:a.tableQueryParams.loading};Object.assign(n,u)}return m(n,a.mergeConfig.dataGridProps)})),r(a,"initialColumns",(function(){var r,t,i=a.mergeConfig.ActionRow,l=[];return i&&l.push(o({field:"Actions",minWidth:100,headerAlign:"right",align:"right",filterable:!1,sortable:!1,renderCell:function(e){return s(i,{value:e.row})}},e.actionRow)),r=l,t=Object.keys(e.columns).map((function(r){var t=o({field:r},e.columns[r]);return t.filterOperators=e.filterOperators?e.filterOperators(t):h(t),t})),r&&r.length>0&&t.push.apply(t,n(r)),t})),r(a,"onPaginationModelChange",(function(e,o){a.setTableQueryParams({pagination:e,detail:"pagination"}),a.handleChange()})),r(a,"onFilterModelChange",(function(e,o){var r,t=a.tableQueryParams.pagination;a.setTableQueryParams({filter:e,pagination:{page:0,pageSize:null!==(r=null==t?void 0:t.pageSize)&&void 0!==r?r:25},detail:b.detectSearchType(e)}),a.handleChange()})),r(a,"onSortModelChange",(function(e,o){var r,t,i,l,n,s=e,d=a.tableQueryParams.sort;null!=d&&d.length&&!s.length&&(s=(null==d||null===(r=d[0])||void 0===r?void 0:r.field)===(null===(t=a.defaultTableQueryParams.sort)||void 0===t||null===(t=t[0])||void 0===t?void 0:t.field)?[{field:null===(i=d[0])||void 0===i?void 0:i.field,sort:"desc"===(null===(l=d[0])||void 0===l?void 0:l.sort)?"asc":"desc"}]:null!==(n=a.defaultTableQueryParams.sort)&&void 0!==n?n:[]);a.setTableQueryParams({sort:s,detail:"sort"}),a.handleChange()})),r(a,"handleChange",(function(){a.tableQueryParamsCache=a.tableQueryParams})),r(a,"handleRowSelectionChange",(function(e,o){a.mergeConfig.maxSelcion&&e.length>a.mergeConfig.maxSelcion?a.rowSelecteds=e.slice(0,a.mergeConfig.maxSelcion):a.rowSelecteds=e,a.props.onRowSelectionChange&&a.props.onRowSelectionChange(a.rowSelecteds,o),a.forceUpdate()})),a.columns=a.initialColumns(),a.tableQueryParams=o({},t.query),a.defaultTableQueryParams=a.tableQueryParams,a.rowSelecteds=[],a}return t(u,d),a(u,[{key:"mergeConfig",get:function(){var r,t,a,i,l,n,d,u=m({},null==e?void 0:e.toolbarProps,null===(r=this.props.slots)||void 0===r?void 0:r.toolbarProps);return{toolbar:null!==(t=null===(a=this.props.slots)||void 0===a?void 0:a.toolbar)&&void 0!==t?t:function(){return s(C,o({},u))},ActionRow:null===(i=this.props.slots)||void 0===i?void 0:i.actionRow,columnVisibilityModel:e.columnVisibilityModel,maxSelcion:null!==(l=null===(n=this.props.slots)||void 0===n?void 0:n.maxSelection)&&void 0!==l?l:e.maxSelection,dataGridProps:m({},e.dataGridProps,null===(d=this.props.slots)||void 0===d?void 0:d.dataGridProps)}}},{key:"shouldComponentUpdate",value:function(o){return"server"!==e.featureMode||b.equalTableQueryParams(o.query,this.props.query)?"server"!==e.featureMode:(this.setTableQueryParams(null!==(r=o.query)&&void 0!==r?r:{}),!0);var r}},{key:"render",value:function(){return this.renderWrapContext(s(S,{children:s(p,o({},this.getDataGridProps()))}))}}])}()}var S=u((function(r){var t=r.children,a=e(r,P);return s(c,o(o({},a),{},{children:s("div",{children:t})}))}))(r({flex:1,position:"relative","& > div":{position:"absolute",top:0,left:0,width:"100%",height:"100%",overflowY:"auto"},"& .MuiDataGrid-root":{"--unstable_DataGrid-radius":0}},"& .MuiDataGrid-cell.".concat(y.whiteSpacePre," .MuiDataGrid-cellContent"),{whiteSpace:"pre"}));export{M as default};
|
|
246
2
|
//# sourceMappingURL=create.table.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create.table.js","sources":["../../src/table/create.table.tsx"],"sourcesContent":["import React, { Component, ComponentType } from 'react'\r\nimport { Box, BoxProps, styled } from '@mui/material'\r\nimport { DataGrid, DataGridProps, GridColDef, GridFeatureMode, GridFilterOperator } from '@mui/x-data-grid'\r\nimport { GridSortModel, GridValidRowModel, GridRowIdGetter, GridRowSelectionModel } from '@mui/x-data-grid'\r\nimport { GridCallbackDetails, GridColumnVisibilityModel, GridDensity, GridFilterModel, GridPaginationModel } from '@mui/x-data-grid'\r\nimport { mergeObjects } from '../utils'\r\nimport { TableBaseContext } from './context'\r\nimport { IActionRowProps } from './create.action-row'\r\nimport { customFilterOperators } from './custom.filter-operators'\r\nimport { GlobalModal, MapGlobalModalContext } from '../api-context'\r\nimport { ICustomGridColDef, ICustomGridFilterModel, ICustomGridSortModel, ITableData, ITableQueryParams } from './types'\r\nimport TableHelper, { dinoTableClasses } from './helpers'\r\nimport ToolbarPannel, { IToolbarPannelProps } from './toolbar-pannel'\r\n\r\nexport interface ITableSlots<T> {\r\n maxSelection?: number\r\n density?: GridDensity\r\n toolbar?: React.ComponentType<IToolbarPannelProps>\r\n actionRow?: React.ComponentType<IActionRowProps<T>>\r\n toolbarProps?: IToolbarPannelProps\r\n dataGridProps?: DataGridProps\r\n}\r\n\r\nexport type ITableParamsSlots<T> = Pick<ITableSlots<T>, 'maxSelection' | 'toolbarProps' | 'dataGridProps'>\r\n\r\nexport interface ITableProps<T> {\r\n data?: ITableData<T>\r\n query?: ITableQueryParams<T>\r\n onChange?: (query: ITableQueryParams<T>) => void\r\n onRowSelectionChange?: DataGridProps['onRowSelectionModelChange']\r\n slots?: ITableSlots<T>\r\n}\r\n\r\nexport interface ITableParams<T extends GridValidRowModel> extends ITableParamsSlots<T> {\r\n featureMode?: GridFeatureMode\r\n getRowId: GridRowIdGetter<T>\r\n columns: ICustomGridColDef<T>\r\n filterOperators?: (config: GridColDef) => GridFilterOperator[]\r\n columnVisibilityModel?: Partial<Record<keyof T, boolean>>\r\n actionRow?: Omit<GridColDef, 'field'>\r\n}\r\n\r\nfunction CreateTable<T extends GridValidRowModel>(params: ITableParams<T>): ComponentType<ITableProps<T>> {\r\n const generateColumns = (extendColDefs?: GridColDef[]) => {\r\n const columns = Object.keys(params.columns).map<GridColDef>((key) => {\r\n const obj = { field: key, ...params.columns[key] }\r\n obj.filterOperators = params.filterOperators ? params.filterOperators(obj) : customFilterOperators(obj)\r\n return obj\r\n })\r\n\r\n if (!!extendColDefs && extendColDefs.length > 0) columns.push(...extendColDefs)\r\n return columns\r\n }\r\n\r\n class Table extends Component<ITableProps<T>> {\r\n private tableQueryParams: ITableQueryParams<T>\r\n private tableQueryParamsCache: ITableQueryParams<T> = {}\r\n private defaultTableQueryParams: ITableQueryParams<T>\r\n private columns: GridColDef<T>[]\r\n private rowSelecteds: GridRowSelectionModel\r\n constructor(props: ITableProps<T>) {\r\n super(props)\r\n this.columns = this.initialColumns()\r\n this.tableQueryParams = { ...props.query }\r\n this.defaultTableQueryParams = this.tableQueryParams\r\n this.rowSelecteds = []\r\n }\r\n\r\n get mergeConfig() {\r\n const toolbarPannelProps = mergeObjects({}, params?.toolbarProps, this.props.slots?.toolbarProps)\r\n return {\r\n toolbar: this.props.slots?.toolbar ?? (() => <ToolbarPannel {...toolbarPannelProps} />),\r\n ActionRow: this.props.slots?.actionRow,\r\n columnVisibilityModel: params.columnVisibilityModel,\r\n maxSelcion: this.props.slots?.maxSelection ?? params.maxSelection,\r\n dataGridProps: mergeObjects({}, params.dataGridProps, this.props.slots?.dataGridProps)\r\n }\r\n }\r\n\r\n setTableQueryParams = (value: Partial<ITableQueryParams<T>>) => {\r\n this.tableQueryParams = mergeObjects({}, this.tableQueryParams, value)\r\n }\r\n\r\n shouldComponentUpdate(nextProps: Readonly<ITableProps<T>>): boolean {\r\n if (params.featureMode === 'server' && !TableHelper.equalTableQueryParams(nextProps.query, this.props.query)) {\r\n this.setTableQueryParams(nextProps.query ?? {})\r\n return true\r\n } else if (params.featureMode !== 'server') {\r\n return true\r\n } else {\r\n return false\r\n }\r\n }\r\n\r\n render() {\r\n return this.renderWrapContext(\r\n <Wrap>\r\n <DataGrid {...this.getDataGridProps()} />\r\n </Wrap>\r\n )\r\n }\r\n\r\n renderWrapContext = (children: React.ReactNode) => (\r\n <GlobalModal>\r\n {MapGlobalModalContext((context) => (\r\n <TableBaseContext.Provider value={{ showModal: context.show, closeModal: context.close }}>{children}</TableBaseContext.Provider>\r\n ))}\r\n </GlobalModal>\r\n )\r\n\r\n getDataGridProps = (): DataGridProps<T> => {\r\n const mergeConfig = this.mergeConfig\r\n const obj: DataGridProps<T> = {\r\n getRowId: params.getRowId,\r\n columns: this.columns,\r\n rows: this.props.data?.items ?? [],\r\n checkboxSelection: true,\r\n pagination: true,\r\n density: this.props.slots?.density ?? 'standard',\r\n initialState: TableHelper.mapInitialState(this.props.query, {\r\n columns: { columnVisibilityModel: params.columnVisibilityModel as GridColumnVisibilityModel }\r\n }),\r\n filterDebounceMs: 800,\r\n sx: { border: 0 },\r\n slots: { toolbar: mergeConfig.toolbar },\r\n rowSelectionModel: this.rowSelecteds,\r\n onRowSelectionModelChange: this.handleRowSelectionChange\r\n }\r\n if (params.featureMode === 'server') {\r\n const objServer: Partial<DataGridProps<T>> = {\r\n filterMode: 'server',\r\n sortingMode: 'server',\r\n paginationMode: 'server',\r\n onPaginationModelChange: this.onPaginationModelChange,\r\n onFilterModelChange: this.onFilterModelChange,\r\n onSortModelChange: this.onSortModelChange,\r\n rowCount: this.props.data?.rowTotal ?? 0,\r\n paginationModel: this.tableQueryParams.pagination,\r\n filterModel: this.tableQueryParams.filter as GridFilterModel,\r\n sortModel: TableHelper.mapSortModel(this.tableQueryParams.sort),\r\n loading: this.tableQueryParams.loading\r\n }\r\n Object.assign(obj, objServer)\r\n }\r\n return mergeObjects(obj, this.mergeConfig.dataGridProps)\r\n }\r\n\r\n initialColumns = (): GridColDef<T>[] => {\r\n const { ActionRow } = this.mergeConfig\r\n const list: GridColDef<T>[] = []\r\n if (!!ActionRow) {\r\n list.push({\r\n field: 'Actions',\r\n minWidth: 100,\r\n headerAlign: 'right',\r\n align: 'right',\r\n filterable: false,\r\n sortable: false,\r\n renderCell: (value) => <ActionRow value={value.row} />,\r\n ...params.actionRow\r\n })\r\n }\r\n return generateColumns(list)\r\n }\r\n\r\n onPaginationModelChange = (model: GridPaginationModel, details: GridCallbackDetails<'pagination'>) => {\r\n this.setTableQueryParams({ pagination: model, detail: 'pagination' })\r\n this.handleChange()\r\n }\r\n\r\n onFilterModelChange = (model: GridFilterModel, details: GridCallbackDetails<'filter'>) => {\r\n const { pagination } = this.tableQueryParams\r\n this.setTableQueryParams({\r\n filter: model as ICustomGridFilterModel<T>,\r\n pagination: { page: 0, pageSize: pagination?.pageSize ?? 25 },\r\n detail: TableHelper.detectSearchType(model)\r\n })\r\n this.handleChange()\r\n }\r\n\r\n onSortModelChange = (model: GridSortModel, details: GridCallbackDetails<any>) => {\r\n let sortValue = model as ICustomGridSortModel<T>\r\n const { sort } = this.tableQueryParams\r\n if (!!sort?.length && !sortValue.length) {\r\n if (sort?.[0]?.field === this.defaultTableQueryParams.sort?.[0]?.field) {\r\n sortValue = [{ field: sort[0]?.field, sort: sort[0]?.sort === 'desc' ? 'asc' : 'desc' }]\r\n } else {\r\n sortValue = this.defaultTableQueryParams.sort ?? []\r\n }\r\n }\r\n this.setTableQueryParams({ sort: sortValue, detail: 'sort' })\r\n this.handleChange()\r\n }\r\n\r\n handleChange = () => {\r\n // const check = TableHelper.isEmpty(this.tableQueryParams)\r\n // const checkCache = TableHelper.isEmpty(this.tableQueryParamsCache)\r\n // const isChange = this.props.onChange && this.props.onChange(this.tableQueryParams)\r\n this.tableQueryParamsCache = this.tableQueryParams\r\n }\r\n\r\n handleRowSelectionChange = (value: GridRowSelectionModel, details: GridCallbackDetails) => {\r\n if (this.mergeConfig.maxSelcion && value.length > this.mergeConfig.maxSelcion) {\r\n this.rowSelecteds = value.slice(0, this.mergeConfig.maxSelcion)\r\n } else {\r\n this.rowSelecteds = value\r\n }\r\n this.props.onRowSelectionChange && this.props.onRowSelectionChange(this.rowSelecteds, details)\r\n this.forceUpdate()\r\n }\r\n }\r\n\r\n return Table\r\n}\r\n\r\nexport default CreateTable\r\n\r\nconst Wrap = styled(({ children, ...p }: BoxProps) => (\r\n <Box {...p}>\r\n <div>{children}</div>\r\n </Box>\r\n))({\r\n flex: 1,\r\n position: 'relative',\r\n '& > div': {\r\n position: 'absolute',\r\n top: 0,\r\n left: 0,\r\n width: '100%',\r\n height: '100%',\r\n overflowY: 'auto'\r\n },\r\n '& .MuiDataGrid-root': {\r\n '--unstable_DataGrid-radius': 0\r\n },\r\n [`& .MuiDataGrid-cell.${dinoTableClasses.whiteSpacePre} .MuiDataGrid-cellContent`]: {\r\n whiteSpace: 'pre'\r\n }\r\n})\r\n"],"names":["CreateTable","params","generateColumns","extendColDefs","columns","Object","keys","map","key","obj","_objectSpread","field","filterOperators","customFilterOperators","length","push","apply","_toConsumableArray","Table","_Component","props","_this","_classCallCheck","_callSuper","_defineProperty","value","tableQueryParams","mergeObjects","children","_jsx","GlobalModal","MapGlobalModalContext","context","TableBaseContext","Provider","showModal","show","closeModal","close","_this$props$data$item","_this$props$data","_this$props$slots$den","_this$props$slots","mergeConfig","getRowId","rows","data","items","checkboxSelection","pagination","density","slots","initialState","TableHelper","mapInitialState","query","columnVisibilityModel","filterDebounceMs","sx","border","toolbar","rowSelectionModel","rowSelecteds","onRowSelectionModelChange","handleRowSelectionChange","featureMode","_this$props$data$rowT","_this$props$data2","objServer","filterMode","sortingMode","paginationMode","onPaginationModelChange","onFilterModelChange","onSortModelChange","rowCount","rowTotal","paginationModel","filterModel","filter","sortModel","mapSortModel","sort","loading","assign","dataGridProps","ActionRow","list","minWidth","headerAlign","align","filterable","sortable","renderCell","row","actionRow","model","details","setTableQueryParams","detail","handleChange","_pagination$pageSize","page","pageSize","detectSearchType","sortValue","_sort$","_this$defaultTableQue","defaultTableQueryParams","_sort$2","_sort$3","_this$defaultTableQue2","tableQueryParamsCache","maxSelcion","slice","onRowSelectionChange","forceUpdate","initialColumns","_inherits","_createClass","get","_this$props$slots2","_this$props$slots$too","_this$props$slots3","_this$props$slots4","_this$props$slots$max","_this$props$slots5","_this$props$slots6","toolbarPannelProps","toolbarProps","ToolbarPannel","maxSelection","shouldComponentUpdate","nextProps","equalTableQueryParams","_nextProps$query","render","renderWrapContext","Wrap","DataGrid","getDataGridProps","Component","styled","_ref","p","_objectWithoutProperties","_excluded","Box","flex","position","top","left","width","height","overflowY","concat","dinoTableClasses","whiteSpacePre","whiteSpace"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"create.table.js","sources":["../../src/table/create.table.tsx"],"sourcesContent":["import React, { Component, ComponentType } from 'react'\r\nimport { Box, BoxProps, styled } from '@mui/material'\r\nimport { DataGrid, DataGridProps, GridColDef, GridFeatureMode, GridFilterOperator } from '@mui/x-data-grid'\r\nimport { GridSortModel, GridValidRowModel, GridRowIdGetter, GridRowSelectionModel } from '@mui/x-data-grid'\r\nimport { GridCallbackDetails, GridColumnVisibilityModel, GridDensity, GridFilterModel, GridPaginationModel } from '@mui/x-data-grid'\r\nimport { mergeObjects } from '../utils'\r\nimport { TableBaseContext } from './context'\r\nimport { IActionRowProps } from './create.action-row'\r\nimport { customFilterOperators } from './custom.filter-operators'\r\nimport { GlobalModal, MapGlobalModalContext } from '../api-context'\r\nimport { ICustomGridColDef, ICustomGridFilterModel, ICustomGridSortModel, ITableData, ITableQueryParams } from './types'\r\nimport TableHelper, { dinoTableClasses } from './helpers'\r\nimport ToolbarPannel, { IToolbarPannelProps } from './toolbar-pannel'\r\n\r\nexport interface ITableSlots<T> {\r\n maxSelection?: number\r\n density?: GridDensity\r\n toolbar?: React.ComponentType<IToolbarPannelProps>\r\n actionRow?: React.ComponentType<IActionRowProps<T>>\r\n toolbarProps?: IToolbarPannelProps\r\n dataGridProps?: DataGridProps\r\n}\r\n\r\nexport type ITableParamsSlots<T> = Pick<ITableSlots<T>, 'maxSelection' | 'toolbarProps' | 'dataGridProps'>\r\n\r\nexport interface ITableProps<T> {\r\n data?: ITableData<T>\r\n query?: ITableQueryParams<T>\r\n onChange?: (query: ITableQueryParams<T>) => void\r\n onRowSelectionChange?: DataGridProps['onRowSelectionModelChange']\r\n slots?: ITableSlots<T>\r\n}\r\n\r\nexport interface ITableParams<T extends GridValidRowModel> extends ITableParamsSlots<T> {\r\n featureMode?: GridFeatureMode\r\n getRowId: GridRowIdGetter<T>\r\n columns: ICustomGridColDef<T>\r\n filterOperators?: (config: GridColDef) => GridFilterOperator[]\r\n columnVisibilityModel?: Partial<Record<keyof T, boolean>>\r\n actionRow?: Omit<GridColDef, 'field'>\r\n}\r\n\r\nfunction CreateTable<T extends GridValidRowModel>(params: ITableParams<T>): ComponentType<ITableProps<T>> {\r\n const generateColumns = (extendColDefs?: GridColDef[]) => {\r\n const columns = Object.keys(params.columns).map<GridColDef>((key) => {\r\n const obj = { field: key, ...params.columns[key] }\r\n obj.filterOperators = params.filterOperators ? params.filterOperators(obj) : customFilterOperators(obj)\r\n return obj\r\n })\r\n\r\n if (!!extendColDefs && extendColDefs.length > 0) columns.push(...extendColDefs)\r\n return columns\r\n }\r\n\r\n class Table extends Component<ITableProps<T>> {\r\n private tableQueryParams: ITableQueryParams<T>\r\n private tableQueryParamsCache: ITableQueryParams<T> = {}\r\n private defaultTableQueryParams: ITableQueryParams<T>\r\n private columns: GridColDef<T>[]\r\n private rowSelecteds: GridRowSelectionModel\r\n constructor(props: ITableProps<T>) {\r\n super(props)\r\n this.columns = this.initialColumns()\r\n this.tableQueryParams = { ...props.query }\r\n this.defaultTableQueryParams = this.tableQueryParams\r\n this.rowSelecteds = []\r\n }\r\n\r\n get mergeConfig() {\r\n const toolbarPannelProps = mergeObjects({}, params?.toolbarProps, this.props.slots?.toolbarProps)\r\n return {\r\n toolbar: this.props.slots?.toolbar ?? (() => <ToolbarPannel {...toolbarPannelProps} />),\r\n ActionRow: this.props.slots?.actionRow,\r\n columnVisibilityModel: params.columnVisibilityModel,\r\n maxSelcion: this.props.slots?.maxSelection ?? params.maxSelection,\r\n dataGridProps: mergeObjects({}, params.dataGridProps, this.props.slots?.dataGridProps)\r\n }\r\n }\r\n\r\n setTableQueryParams = (value: Partial<ITableQueryParams<T>>) => {\r\n this.tableQueryParams = mergeObjects({}, this.tableQueryParams, value)\r\n }\r\n\r\n shouldComponentUpdate(nextProps: Readonly<ITableProps<T>>): boolean {\r\n if (params.featureMode === 'server' && !TableHelper.equalTableQueryParams(nextProps.query, this.props.query)) {\r\n this.setTableQueryParams(nextProps.query ?? {})\r\n return true\r\n } else if (params.featureMode !== 'server') {\r\n return true\r\n } else {\r\n return false\r\n }\r\n }\r\n\r\n render() {\r\n return this.renderWrapContext(\r\n <Wrap>\r\n <DataGrid {...this.getDataGridProps()} />\r\n </Wrap>\r\n )\r\n }\r\n\r\n renderWrapContext = (children: React.ReactNode) => (\r\n <GlobalModal>\r\n {MapGlobalModalContext((context) => (\r\n <TableBaseContext.Provider value={{ showModal: context.show, closeModal: context.close }}>{children}</TableBaseContext.Provider>\r\n ))}\r\n </GlobalModal>\r\n )\r\n\r\n getDataGridProps = (): DataGridProps<T> => {\r\n const mergeConfig = this.mergeConfig\r\n const obj: DataGridProps<T> = {\r\n getRowId: params.getRowId,\r\n columns: this.columns,\r\n rows: this.props.data?.items ?? [],\r\n checkboxSelection: true,\r\n pagination: true,\r\n density: this.props.slots?.density ?? 'standard',\r\n initialState: TableHelper.mapInitialState(this.props.query, {\r\n columns: { columnVisibilityModel: params.columnVisibilityModel as GridColumnVisibilityModel }\r\n }),\r\n filterDebounceMs: 800,\r\n sx: { border: 0 },\r\n slots: { toolbar: mergeConfig.toolbar },\r\n rowSelectionModel: this.rowSelecteds,\r\n onRowSelectionModelChange: this.handleRowSelectionChange\r\n }\r\n if (params.featureMode === 'server') {\r\n const objServer: Partial<DataGridProps<T>> = {\r\n filterMode: 'server',\r\n sortingMode: 'server',\r\n paginationMode: 'server',\r\n onPaginationModelChange: this.onPaginationModelChange,\r\n onFilterModelChange: this.onFilterModelChange,\r\n onSortModelChange: this.onSortModelChange,\r\n rowCount: this.props.data?.rowTotal ?? 0,\r\n paginationModel: this.tableQueryParams.pagination,\r\n filterModel: this.tableQueryParams.filter as GridFilterModel,\r\n sortModel: TableHelper.mapSortModel(this.tableQueryParams.sort),\r\n loading: this.tableQueryParams.loading\r\n }\r\n Object.assign(obj, objServer)\r\n }\r\n return mergeObjects(obj, this.mergeConfig.dataGridProps)\r\n }\r\n\r\n initialColumns = (): GridColDef<T>[] => {\r\n const { ActionRow } = this.mergeConfig\r\n const list: GridColDef<T>[] = []\r\n if (!!ActionRow) {\r\n list.push({\r\n field: 'Actions',\r\n minWidth: 100,\r\n headerAlign: 'right',\r\n align: 'right',\r\n filterable: false,\r\n sortable: false,\r\n renderCell: (value) => <ActionRow value={value.row} />,\r\n ...params.actionRow\r\n })\r\n }\r\n return generateColumns(list)\r\n }\r\n\r\n onPaginationModelChange = (model: GridPaginationModel, details: GridCallbackDetails<'pagination'>) => {\r\n this.setTableQueryParams({ pagination: model, detail: 'pagination' })\r\n this.handleChange()\r\n }\r\n\r\n onFilterModelChange = (model: GridFilterModel, details: GridCallbackDetails<'filter'>) => {\r\n const { pagination } = this.tableQueryParams\r\n this.setTableQueryParams({\r\n filter: model as ICustomGridFilterModel<T>,\r\n pagination: { page: 0, pageSize: pagination?.pageSize ?? 25 },\r\n detail: TableHelper.detectSearchType(model)\r\n })\r\n this.handleChange()\r\n }\r\n\r\n onSortModelChange = (model: GridSortModel, details: GridCallbackDetails<any>) => {\r\n let sortValue = model as ICustomGridSortModel<T>\r\n const { sort } = this.tableQueryParams\r\n if (!!sort?.length && !sortValue.length) {\r\n if (sort?.[0]?.field === this.defaultTableQueryParams.sort?.[0]?.field) {\r\n sortValue = [{ field: sort[0]?.field, sort: sort[0]?.sort === 'desc' ? 'asc' : 'desc' }]\r\n } else {\r\n sortValue = this.defaultTableQueryParams.sort ?? []\r\n }\r\n }\r\n this.setTableQueryParams({ sort: sortValue, detail: 'sort' })\r\n this.handleChange()\r\n }\r\n\r\n handleChange = () => {\r\n // const check = TableHelper.isEmpty(this.tableQueryParams)\r\n // const checkCache = TableHelper.isEmpty(this.tableQueryParamsCache)\r\n // const isChange = this.props.onChange && this.props.onChange(this.tableQueryParams)\r\n this.tableQueryParamsCache = this.tableQueryParams\r\n }\r\n\r\n handleRowSelectionChange = (value: GridRowSelectionModel, details: GridCallbackDetails) => {\r\n if (this.mergeConfig.maxSelcion && value.length > this.mergeConfig.maxSelcion) {\r\n this.rowSelecteds = value.slice(0, this.mergeConfig.maxSelcion)\r\n } else {\r\n this.rowSelecteds = value\r\n }\r\n this.props.onRowSelectionChange && this.props.onRowSelectionChange(this.rowSelecteds, details)\r\n this.forceUpdate()\r\n }\r\n }\r\n\r\n return Table\r\n}\r\n\r\nexport default CreateTable\r\n\r\nconst Wrap = styled(({ children, ...p }: BoxProps) => (\r\n <Box {...p}>\r\n <div>{children}</div>\r\n </Box>\r\n))({\r\n flex: 1,\r\n position: 'relative',\r\n '& > div': {\r\n position: 'absolute',\r\n top: 0,\r\n left: 0,\r\n width: '100%',\r\n height: '100%',\r\n overflowY: 'auto'\r\n },\r\n '& .MuiDataGrid-root': {\r\n '--unstable_DataGrid-radius': 0\r\n },\r\n [`& .MuiDataGrid-cell.${dinoTableClasses.whiteSpacePre} .MuiDataGrid-cellContent`]: {\r\n whiteSpace: 'pre'\r\n }\r\n})\r\n"],"names":["CreateTable","params","Table","props","_this","_classCallCheck","_callSuper","_defineProperty","value","tableQueryParams","mergeObjects","children","_jsx","GlobalModal","MapGlobalModalContext","context","TableBaseContext","Provider","showModal","show","closeModal","close","_this$props$data$item","_this$props$data","_this$props$slots$den","_this$props$slots","mergeConfig","obj","getRowId","columns","rows","data","items","checkboxSelection","pagination","density","slots","initialState","TableHelper","mapInitialState","query","columnVisibilityModel","filterDebounceMs","sx","border","toolbar","rowSelectionModel","rowSelecteds","onRowSelectionModelChange","handleRowSelectionChange","featureMode","_this$props$data$rowT","_this$props$data2","objServer","filterMode","sortingMode","paginationMode","onPaginationModelChange","onFilterModelChange","onSortModelChange","rowCount","rowTotal","paginationModel","filterModel","filter","sortModel","mapSortModel","sort","loading","Object","assign","dataGridProps","extendColDefs","ActionRow","list","push","_objectSpread","field","minWidth","headerAlign","align","filterable","sortable","renderCell","row","actionRow","keys","map","key","filterOperators","customFilterOperators","length","apply","_toConsumableArray","model","details","setTableQueryParams","detail","handleChange","_pagination$pageSize","page","pageSize","detectSearchType","_sort$","_this$defaultTableQue","_sort$2","_sort$3","_this$defaultTableQue2","sortValue","defaultTableQueryParams","tableQueryParamsCache","maxSelcion","slice","onRowSelectionChange","forceUpdate","initialColumns","_inherits","Component","_createClass","get","_this$props$slots2","_this$props$slots$too","_this$props$slots3","_this$props$slots4","_this$props$slots$max","_this$props$slots5","_this$props$slots6","toolbarPannelProps","toolbarProps","this","ToolbarPannel","maxSelection","nextProps","equalTableQueryParams","_nextProps$query","renderWrapContext","Wrap","DataGrid","getDataGridProps","styled","_ref","p","_objectWithoutProperties","_excluded","Box","flex","position","top","left","width","height","overflowY","concat","dinoTableClasses","whiteSpacePre","whiteSpace"],"mappings":"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"}
|