component-shared 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (283) hide show
  1. package/Components/Charts/AreaChart.d.ts +19 -0
  2. package/Components/Charts/AreaChart.js +59 -0
  3. package/Components/Charts/AreaChart.js.map +1 -0
  4. package/Components/Charts/BarChart.d.ts +20 -0
  5. package/Components/Charts/BarChart.js +81 -0
  6. package/Components/Charts/BarChart.js.map +1 -0
  7. package/Components/Charts/DoughnutChart.d.ts +12 -0
  8. package/Components/Charts/DoughnutChart.js +81 -0
  9. package/Components/Charts/DoughnutChart.js.map +1 -0
  10. package/Components/Charts/HorizontalBarChart.d.ts +38 -0
  11. package/Components/Charts/HorizontalBarChart.js +83 -0
  12. package/Components/Charts/HorizontalBarChart.js.map +1 -0
  13. package/Components/Charts/LineChart.d.ts +21 -0
  14. package/Components/Charts/LineChart.js +133 -0
  15. package/Components/Charts/LineChart.js.map +1 -0
  16. package/Components/Charts/PieChart.d.ts +20 -0
  17. package/Components/Charts/PieChart.js +123 -0
  18. package/Components/Charts/PieChart.js.map +1 -0
  19. package/Components/Charts/index.d.ts +5 -0
  20. package/Components/Charts/index.js +6 -0
  21. package/Components/Charts/index.js.map +1 -0
  22. package/Components/Charts/type.d.ts +6 -0
  23. package/Components/Charts/type.js +2 -0
  24. package/Components/Charts/type.js.map +1 -0
  25. package/Components/CopyToClipboard/index.d.ts +23 -0
  26. package/Components/CopyToClipboard/index.js +54 -0
  27. package/Components/CopyToClipboard/index.js.map +1 -0
  28. package/Components/CopyToClipboard/indexv2.d.ts +30 -0
  29. package/Components/CopyToClipboard/indexv2.js +63 -0
  30. package/Components/CopyToClipboard/indexv2.js.map +1 -0
  31. package/Components/DropZone/components/DropzoneArea.d.ts +31 -0
  32. package/Components/DropZone/components/DropzoneArea.js +221 -0
  33. package/Components/DropZone/components/DropzoneArea.js.map +1 -0
  34. package/Components/DropZone/components/DropzoneAreaBase.d.ts +4 -0
  35. package/Components/DropZone/components/DropzoneAreaBase.js +555 -0
  36. package/Components/DropZone/components/DropzoneAreaBase.js.map +1 -0
  37. package/Components/DropZone/components/DropzoneDialog.d.ts +33 -0
  38. package/Components/DropZone/components/DropzoneDialog.js +222 -0
  39. package/Components/DropZone/components/DropzoneDialog.js.map +1 -0
  40. package/Components/DropZone/components/DropzoneDialogBase.d.ts +27 -0
  41. package/Components/DropZone/components/DropzoneDialogBase.js +152 -0
  42. package/Components/DropZone/components/DropzoneDialogBase.js.map +1 -0
  43. package/Components/DropZone/components/PreviewList.d.ts +3 -0
  44. package/Components/DropZone/components/PreviewList.js +132 -0
  45. package/Components/DropZone/components/PreviewList.js.map +1 -0
  46. package/Components/DropZone/components/SnackbarContentWrapper.d.ts +3 -0
  47. package/Components/DropZone/components/SnackbarContentWrapper.js +94 -0
  48. package/Components/DropZone/components/SnackbarContentWrapper.js.map +1 -0
  49. package/Components/DropZone/helpers.d.ts +5 -0
  50. package/Components/DropZone/helpers.js +64 -0
  51. package/Components/DropZone/helpers.js.map +1 -0
  52. package/Components/DropZone/index.d.ts +120 -0
  53. package/Components/EditAvatar/index.d.ts +26 -0
  54. package/Components/EditAvatar/index.js +137 -0
  55. package/Components/EditAvatar/index.js.map +1 -0
  56. package/Components/FlexInfiniteScroll/index.d.ts +26 -0
  57. package/Components/FlexInfiniteScroll/index.js +82 -0
  58. package/Components/FlexInfiniteScroll/index.js.map +1 -0
  59. package/Components/Helper/LazySpinner.d.ts +5 -0
  60. package/Components/Helper/LazySpinner.js +33 -0
  61. package/Components/Helper/LazySpinner.js.map +1 -0
  62. package/Components/Helper/RoleKey.d.ts +9 -0
  63. package/Components/Helper/RoleKey.js +15 -0
  64. package/Components/Helper/RoleKey.js.map +1 -0
  65. package/Components/Helper/index.d.ts +41 -0
  66. package/Components/Helper/index.js +247 -0
  67. package/Components/Helper/index.js.map +1 -0
  68. package/Components/HocLazyView/index.d.ts +51 -0
  69. package/Components/HocLazyView/index.js +123 -0
  70. package/Components/HocLazyView/index.js.map +1 -0
  71. package/Components/HtmlTooltip/index.d.ts +3 -0
  72. package/Components/HtmlTooltip/index.js +28 -0
  73. package/Components/HtmlTooltip/index.js.map +1 -0
  74. package/Components/Icons/index.d.ts +6 -0
  75. package/Components/Icons/index.js +52 -0
  76. package/Components/Icons/index.js.map +1 -0
  77. package/Components/LazySpinner.css +6 -0
  78. package/Components/MapLayout/index.d.ts +33 -0
  79. package/Components/MapLayout/index.js +80 -0
  80. package/Components/MapLayout/index.js.map +1 -0
  81. package/Components/MessageBox/index.d.ts +28 -0
  82. package/Components/MessageBox/index.js +93 -0
  83. package/Components/MessageBox/index.js.map +1 -0
  84. package/Components/Models/index.d.ts +641 -0
  85. package/Components/Models/index.js +87 -0
  86. package/Components/Models/index.js.map +1 -0
  87. package/Components/Redux/core/CRUDSlice.d.ts +20 -0
  88. package/Components/Redux/core/CRUDSlice.js +62 -0
  89. package/Components/Redux/core/CRUDSlice.js.map +1 -0
  90. package/Components/Redux/core/type.d.ts +11 -0
  91. package/Components/Redux/core/type.js +9 -0
  92. package/Components/Redux/core/type.js.map +1 -0
  93. package/Components/SkeletonLazyView/index.d.ts +9 -0
  94. package/Components/SkeletonLazyView/index.js +38 -0
  95. package/Components/SkeletonLazyView/index.js.map +1 -0
  96. package/Components/SkeletonService/index.d.ts +15 -0
  97. package/Components/SkeletonService/index.js +57 -0
  98. package/Components/SkeletonService/index.js.map +1 -0
  99. package/Components/SubComponent/index.d.ts +151 -0
  100. package/Components/SubComponent/index.js +883 -0
  101. package/Components/SubComponent/index.js.map +1 -0
  102. package/Components/SubComponent/v2/index.d.ts +20 -0
  103. package/Components/SubComponent/v2/index.js +58 -0
  104. package/Components/SubComponent/v2/index.js.map +1 -0
  105. package/Components/SubUserInputModels/ContactInfoForm/index.d.ts +11 -0
  106. package/Components/SubUserInputModels/ContactInfoForm/index.js +130 -0
  107. package/Components/SubUserInputModels/ContactInfoForm/index.js.map +1 -0
  108. package/Components/SubUserInputModels/index.d.ts +59 -0
  109. package/Components/SubUserInputModels/index.js +928 -0
  110. package/Components/SubUserInputModels/index.js.map +1 -0
  111. package/Components/SwitchComponent/index.d.ts +21 -0
  112. package/Components/SwitchComponent/index.js +71 -0
  113. package/Components/SwitchComponent/index.js.map +1 -0
  114. package/Components/TemplateModal/index.d.ts +29 -0
  115. package/Components/TemplateModal/index.js +94 -0
  116. package/Components/TemplateModal/index.js.map +1 -0
  117. package/Components/TemplateTable/FormTest/index.d.ts +4 -0
  118. package/Components/TemplateTable/FormTest/index.js +22 -0
  119. package/Components/TemplateTable/FormTest/index.js.map +1 -0
  120. package/Components/TemplateTable/InputFormBase/index.d.ts +23 -0
  121. package/Components/TemplateTable/InputFormBase/index.js +111 -0
  122. package/Components/TemplateTable/InputFormBase/index.js.map +1 -0
  123. package/Components/TemplateTable/InputFormModal/index.d.ts +22 -0
  124. package/Components/TemplateTable/InputFormModal/index.js +103 -0
  125. package/Components/TemplateTable/InputFormModal/index.js.map +1 -0
  126. package/Components/TemplateTable/ItemRowMenu/index.d.ts +13 -0
  127. package/Components/TemplateTable/ItemRowMenu/index.js +49 -0
  128. package/Components/TemplateTable/ItemRowMenu/index.js.map +1 -0
  129. package/Components/TemplateTable/PanelAction/index.d.ts +11 -0
  130. package/Components/TemplateTable/PanelAction/index.js +51 -0
  131. package/Components/TemplateTable/PanelAction/index.js.map +1 -0
  132. package/Components/TemplateTable/TableContext/index.d.ts +1 -0
  133. package/Components/TemplateTable/TableContext/index.js +2 -0
  134. package/Components/TemplateTable/TableContext/index.js.map +1 -0
  135. package/Components/TemplateTable/helper.d.ts +3 -0
  136. package/Components/TemplateTable/helper.js +20 -0
  137. package/Components/TemplateTable/helper.js.map +1 -0
  138. package/Components/TemplateTable/index.d.ts +49 -0
  139. package/Components/TemplateTable/index.js +208 -0
  140. package/Components/TemplateTable/index.js.map +1 -0
  141. package/Components/UploadLayout/ProgressItem.d.ts +27 -0
  142. package/Components/UploadLayout/ProgressItem.js +210 -0
  143. package/Components/UploadLayout/ProgressItem.js.map +1 -0
  144. package/Components/UploadLayout/UploadArea.d.ts +9 -0
  145. package/Components/UploadLayout/UploadArea.js +58 -0
  146. package/Components/UploadLayout/UploadArea.js.map +1 -0
  147. package/Components/UploadLayout/UploadMonitor.d.ts +42 -0
  148. package/Components/UploadLayout/UploadMonitor.js +259 -0
  149. package/Components/UploadLayout/UploadMonitor.js.map +1 -0
  150. package/Components/UploadLayout/UploadPannel.d.ts +4 -0
  151. package/Components/UploadLayout/UploadPannel.js +20 -0
  152. package/Components/UploadLayout/UploadPannel.js.map +1 -0
  153. package/Components/UploadLayout/UploadStatus.d.ts +21 -0
  154. package/Components/UploadLayout/UploadStatus.js +184 -0
  155. package/Components/UploadLayout/UploadStatus.js.map +1 -0
  156. package/Components/UploadLayout/index.d.ts +69 -0
  157. package/Components/UploadLayout/index.js +265 -0
  158. package/Components/UploadLayout/index.js.map +1 -0
  159. package/Components/UploadLayout/types.d.ts +10 -0
  160. package/Components/UploadLayout/types.js +2 -0
  161. package/Components/UploadLayout/types.js.map +1 -0
  162. package/Components/Views/Billing/BillingForm/index.d.ts +16 -0
  163. package/Components/Views/Billing/BillingForm/index.js +49 -0
  164. package/Components/Views/Billing/BillingForm/index.js.map +1 -0
  165. package/Components/Views/Billing/ItemBillingRowMenu/index.d.ts +23 -0
  166. package/Components/Views/Billing/ItemBillingRowMenu/index.js +153 -0
  167. package/Components/Views/Billing/ItemBillingRowMenu/index.js.map +1 -0
  168. package/Components/Views/Billing/MenuMore/index.d.ts +6 -0
  169. package/Components/Views/Billing/MenuMore/index.js +89 -0
  170. package/Components/Views/Billing/MenuMore/index.js.map +1 -0
  171. package/Components/Views/Billing/SubBillingFormComponent/index.d.ts +14 -0
  172. package/Components/Views/Billing/SubBillingFormComponent/index.js +306 -0
  173. package/Components/Views/Billing/SubBillingFormComponent/index.js.map +1 -0
  174. package/Components/Views/BillingDetail/BillingDetailForm/index.d.ts +16 -0
  175. package/Components/Views/BillingDetail/BillingDetailForm/index.js +49 -0
  176. package/Components/Views/BillingDetail/BillingDetailForm/index.js.map +1 -0
  177. package/Components/Views/BillingDetail/SubComponent/index.d.ts +10 -0
  178. package/Components/Views/BillingDetail/SubComponent/index.js +152 -0
  179. package/Components/Views/BillingDetail/SubComponent/index.js.map +1 -0
  180. package/Components/Views/DashBoard/Common/index.d.ts +18 -0
  181. package/Components/Views/DashBoard/Common/index.js +55 -0
  182. package/Components/Views/DashBoard/Common/index.js.map +1 -0
  183. package/Components/Views/DashBoard/DeliveryInfo/index.d.ts +17 -0
  184. package/Components/Views/DashBoard/DeliveryInfo/index.js +92 -0
  185. package/Components/Views/DashBoard/DeliveryInfo/index.js.map +1 -0
  186. package/Components/Views/DashBoard/OverViewInfo/index.d.ts +29 -0
  187. package/Components/Views/DashBoard/OverViewInfo/index.js +237 -0
  188. package/Components/Views/DashBoard/OverViewInfo/index.js.map +1 -0
  189. package/Components/Views/DashBoard/PanelIntro/index.d.ts +4 -0
  190. package/Components/Views/DashBoard/PanelIntro/index.js +76 -0
  191. package/Components/Views/DashBoard/PanelIntro/index.js.map +1 -0
  192. package/Components/Views/DashBoard/SummaryPanel/index.d.ts +20 -0
  193. package/Components/Views/DashBoard/SummaryPanel/index.js +229 -0
  194. package/Components/Views/DashBoard/SummaryPanel/index.js.map +1 -0
  195. package/Components/Views/DashBoard/TopChannel/index.d.ts +13 -0
  196. package/Components/Views/DashBoard/TopChannel/index.js +89 -0
  197. package/Components/Views/DashBoard/TopChannel/index.js.map +1 -0
  198. package/Components/Views/DashBoard/TopViewTable/index.d.ts +12 -0
  199. package/Components/Views/DashBoard/TopViewTable/index.js +79 -0
  200. package/Components/Views/DashBoard/TopViewTable/index.js.map +1 -0
  201. package/Components/Views/DashBoard/type.d.ts +9 -0
  202. package/Components/Views/DashBoard/type.js +2 -0
  203. package/Components/Views/DashBoard/type.js.map +1 -0
  204. package/Components/Views/Helper/index.d.ts +2 -0
  205. package/Components/Views/Helper/index.js +10 -0
  206. package/Components/Views/Helper/index.js.map +1 -0
  207. package/Components/YoutubeImage/index.d.ts +45 -0
  208. package/Components/YoutubeImage/index.js +52 -0
  209. package/Components/YoutubeImage/index.js.map +1 -0
  210. package/Components/excel-icon-disabled.svg +16 -0
  211. package/Components/excel-icon.svg +9 -0
  212. package/Components/index.css +0 -0
  213. package/Components/index.d.ts +120 -0
  214. package/ComponentsV2/GlobalModal/index.d.ts +37 -0
  215. package/ComponentsV2/GlobalModal/index.js +100 -0
  216. package/ComponentsV2/GlobalModal/index.js.map +1 -0
  217. package/ComponentsV2/HeightEqualWidth/index.d.ts +8 -0
  218. package/ComponentsV2/HeightEqualWidth/index.js +41 -0
  219. package/ComponentsV2/HeightEqualWidth/index.js.map +1 -0
  220. package/ComponentsV2/LazyView/index.d.ts +6 -0
  221. package/ComponentsV2/LazyView/index.js +30 -0
  222. package/ComponentsV2/LazyView/index.js.map +1 -0
  223. package/ComponentsV2/LoadingAnimation/LoadingSquare.d.ts +3 -0
  224. package/ComponentsV2/LoadingAnimation/LoadingSquare.js +203 -0
  225. package/ComponentsV2/LoadingAnimation/LoadingSquare.js.map +1 -0
  226. package/ComponentsV2/LoadingAnimation/index.d.ts +9 -0
  227. package/ComponentsV2/LoadingAnimation/index.js +25 -0
  228. package/ComponentsV2/LoadingAnimation/index.js.map +1 -0
  229. package/ComponentsV2/TableTemplate/CRUDPannel.d.ts +22 -0
  230. package/ComponentsV2/TableTemplate/CRUDPannel.js +199 -0
  231. package/ComponentsV2/TableTemplate/CRUDPannel.js.map +1 -0
  232. package/ComponentsV2/TableTemplate/CreateTableTemplate.d.ts +60 -0
  233. package/ComponentsV2/TableTemplate/CreateTableTemplate.js +330 -0
  234. package/ComponentsV2/TableTemplate/CreateTableTemplate.js.map +1 -0
  235. package/ComponentsV2/TableTemplate/CustomGridFilterPanel.d.ts +6 -0
  236. package/ComponentsV2/TableTemplate/CustomGridFilterPanel.js +71 -0
  237. package/ComponentsV2/TableTemplate/CustomGridFilterPanel.js.map +1 -0
  238. package/ComponentsV2/TableTemplate/CustomerGridToolbar.d.ts +2 -0
  239. package/ComponentsV2/TableTemplate/CustomerGridToolbar.js +45 -0
  240. package/ComponentsV2/TableTemplate/CustomerGridToolbar.js.map +1 -0
  241. package/ComponentsV2/TableTemplate/ItemRowMenu/index.d.ts +14 -0
  242. package/ComponentsV2/TableTemplate/ItemRowMenu/index.js +49 -0
  243. package/ComponentsV2/TableTemplate/ItemRowMenu/index.js.map +1 -0
  244. package/ComponentsV2/TableTemplate/MapOperators.d.ts +5 -0
  245. package/ComponentsV2/TableTemplate/MapOperators.js +49 -0
  246. package/ComponentsV2/TableTemplate/MapOperators.js.map +1 -0
  247. package/ComponentsV2/TableTemplate/NoRowsOverlay.d.ts +5 -0
  248. package/ComponentsV2/TableTemplate/NoRowsOverlay.js +39 -0
  249. package/ComponentsV2/TableTemplate/NoRowsOverlay.js.map +1 -0
  250. package/ComponentsV2/TableTemplate/TableConverter.d.ts +33 -0
  251. package/ComponentsV2/TableTemplate/TableConverter.js +112 -0
  252. package/ComponentsV2/TableTemplate/TableConverter.js.map +1 -0
  253. package/ComponentsV2/TableTemplate/TableFormatter.d.ts +10 -0
  254. package/ComponentsV2/TableTemplate/TableFormatter.js +122 -0
  255. package/ComponentsV2/TableTemplate/TableFormatter.js.map +1 -0
  256. package/ComponentsV2/TableTemplate/TableTemplateContext.d.ts +16 -0
  257. package/ComponentsV2/TableTemplate/TableTemplateContext.js +6 -0
  258. package/ComponentsV2/TableTemplate/TableTemplateContext.js.map +1 -0
  259. package/ComponentsV2/TableTemplate/index.d.ts +14 -0
  260. package/ComponentsV2/TableTemplate/index.js +9 -0
  261. package/ComponentsV2/TableTemplate/index.js.map +1 -0
  262. package/ComponentsV2/TableTemplate/type.d.ts +59 -0
  263. package/ComponentsV2/TableTemplate/type.js +14 -0
  264. package/ComponentsV2/TableTemplate/type.js.map +1 -0
  265. package/ComponentsV2/index.css +4 -0
  266. package/ComponentsV2/index.d.ts +4 -0
  267. package/ComponentsV2/index.js +6 -0
  268. package/ComponentsV2/index.js.map +1 -0
  269. package/Services/Getway/RequestHelper.d.ts +2 -0
  270. package/Services/Getway/RequestHelper.js +51 -0
  271. package/Services/Getway/RequestHelper.js.map +1 -0
  272. package/Services/Getway/index.d.ts +3 -0
  273. package/Services/Getway/index.js +14 -0
  274. package/Services/Getway/index.js.map +1 -0
  275. package/Services/ServiceBase.d.ts +32 -0
  276. package/Services/ServiceBase.js +523 -0
  277. package/Services/ServiceBase.js.map +1 -0
  278. package/_virtual/_rollupPluginBabelHelpers.js +393 -0
  279. package/_virtual/_rollupPluginBabelHelpers.js.map +1 -0
  280. package/index.css +2 -0
  281. package/index.css.map +1 -0
  282. package/package.json +118 -0
  283. package/types/clipboard-copy.d.ts +6 -0
@@ -0,0 +1,199 @@
1
+ import { inherits as _inherits, createClass as _createClass, classCallCheck as _classCallCheck, callSuper as _callSuper, defineProperty as _defineProperty, regenerator as _regenerator } from '../../_virtual/_rollupPluginBabelHelpers.js';
2
+ import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
3
+ import { Component } from 'react';
4
+ import { Box, Button } from '@mui/material';
5
+ import { Add, Delete, Edit } from '@mui/icons-material';
6
+ import AppRegistrationIcon from '@mui/icons-material/AppRegistration';
7
+ import { GlobalModalContext } from '../GlobalModal/index.js';
8
+ import { TableTemplateContext } from './TableTemplateContext.js';
9
+
10
+ var CRUDPannel = /*#__PURE__*/function (_Component) {
11
+ function CRUDPannel(props) {
12
+ var _this;
13
+ _classCallCheck(this, CRUDPannel);
14
+ _this = _callSuper(this, CRUDPannel, [props]);
15
+ _defineProperty(_this, "IsMultiple", function (state) {
16
+ var _state$selectionIds$l, _state$selectionIds;
17
+ return ((_state$selectionIds$l = (_state$selectionIds = state.selectionIds) === null || _state$selectionIds === void 0 ? void 0 : _state$selectionIds.length) !== null && _state$selectionIds$l !== void 0 ? _state$selectionIds$l : 0) > 1;
18
+ });
19
+ _defineProperty(_this, "IsDisplayAction", function (state) {
20
+ var _state$selectionIds2;
21
+ return !!((_state$selectionIds2 = state.selectionIds) !== null && _state$selectionIds2 !== void 0 && _state$selectionIds2.length);
22
+ });
23
+ _defineProperty(_this, "getButtons", /*#__PURE__*/_regenerator().m(function _callee(that, state) {
24
+ return _regenerator().w(function (_context) {
25
+ while (1) switch (_context.n) {
26
+ case 0:
27
+ if (!that.props.Edit) {
28
+ _context.n = 1;
29
+ break;
30
+ }
31
+ _context.n = 1;
32
+ return jsx(Button, {
33
+ onClick: that.onEdit,
34
+ sx: {
35
+ width: 100,
36
+ height: 30
37
+ },
38
+ color: "info",
39
+ disabled: that.IsMultiple(state),
40
+ startIcon: jsx(Edit, {}),
41
+ children: "Edit"
42
+ }, 'Edit');
43
+ case 1:
44
+ if (!that.props.Delete) {
45
+ _context.n = 2;
46
+ break;
47
+ }
48
+ _context.n = 2;
49
+ return jsx(Button, {
50
+ onClick: that.onDelete,
51
+ sx: {
52
+ width: 100,
53
+ height: 30
54
+ },
55
+ color: "error",
56
+ startIcon: jsx(Delete, {}),
57
+ children: "Delete"
58
+ }, 'Delete');
59
+ case 2:
60
+ if (!that.props.Details) {
61
+ _context.n = 3;
62
+ break;
63
+ }
64
+ _context.n = 3;
65
+ return jsx(Button, {
66
+ onClick: that.onDetails,
67
+ sx: {
68
+ width: 100,
69
+ height: 30
70
+ },
71
+ color: "inherit",
72
+ disabled: that.IsMultiple(state),
73
+ startIcon: jsx(AppRegistrationIcon, {}),
74
+ children: "Details"
75
+ }, 'Details');
76
+ case 3:
77
+ return _context.a(2);
78
+ }
79
+ }, _callee);
80
+ }));
81
+ _defineProperty(_this, "onCreate", function () {
82
+ var _this$ModalContext;
83
+ (_this$ModalContext = _this.ModalContext) === null || _this$ModalContext === void 0 || _this$ModalContext.ShowModal({
84
+ ContenModal: function ContenModal() {
85
+ return _this.props.Create || jsx(EmptyDiv, {});
86
+ },
87
+ sx: {
88
+ display: 'flex',
89
+ justifyContent: 'center',
90
+ alignItems: 'center'
91
+ }
92
+ });
93
+ });
94
+ _defineProperty(_this, "onEdit", function () {
95
+ var _this$ModalContext2;
96
+ (_this$ModalContext2 = _this.ModalContext) === null || _this$ModalContext2 === void 0 || _this$ModalContext2.ShowModal({
97
+ ContenModal: function ContenModal() {
98
+ return _this.props.Edit || jsx(EmptyDiv, {});
99
+ },
100
+ sx: {
101
+ display: 'flex',
102
+ justifyContent: 'center',
103
+ alignItems: 'center'
104
+ }
105
+ });
106
+ });
107
+ _defineProperty(_this, "onDelete", function () {
108
+ var _this$ModalContext3;
109
+ (_this$ModalContext3 = _this.ModalContext) === null || _this$ModalContext3 === void 0 || _this$ModalContext3.ShowModal({
110
+ ContenModal: function ContenModal() {
111
+ return _this.props.Delete || jsx(EmptyDiv, {});
112
+ },
113
+ sx: {
114
+ display: 'flex',
115
+ justifyContent: 'center',
116
+ alignItems: 'center'
117
+ }
118
+ });
119
+ });
120
+ _defineProperty(_this, "onDetails", function () {
121
+ var _this$ModalContext4;
122
+ (_this$ModalContext4 = _this.ModalContext) === null || _this$ModalContext4 === void 0 || _this$ModalContext4.ShowModal({
123
+ ContenModal: function ContenModal() {
124
+ return _this.props.Details || jsx(EmptyDiv, {});
125
+ },
126
+ sx: {
127
+ display: 'flex',
128
+ justifyContent: 'center',
129
+ alignItems: 'center'
130
+ }
131
+ });
132
+ });
133
+ _defineProperty(_this, "ModalContext", void 0);
134
+ return _this;
135
+ }
136
+ _inherits(CRUDPannel, _Component);
137
+ return _createClass(CRUDPannel, [{
138
+ key: "render",
139
+ value: function render() {
140
+ var _this2 = this;
141
+ return jsx(GlobalModalContext.Consumer, {
142
+ children: function children(context) {
143
+ _this2.ModalContext = context;
144
+ return jsx(TableTemplateContext.Consumer, {
145
+ children: function children(_ref) {
146
+ var state = _ref.state;
147
+ return jsxs(Box, {
148
+ sx: {
149
+ height: 50,
150
+ justifyContent: 'space-between',
151
+ display: 'flex',
152
+ padding: '10px',
153
+ position: 'relative'
154
+ },
155
+ children: [jsxs(Box, {
156
+ sx: {
157
+ justifyContent: 'space-between',
158
+ display: 'flex',
159
+ flex: 1,
160
+ alignItems: 'center'
161
+ },
162
+ children: [jsx(Box, {}), _this2.props.Create && jsx(Button, {
163
+ onClick: _this2.onCreate,
164
+ sx: {
165
+ height: 30
166
+ },
167
+ variant: "contained",
168
+ startIcon: jsx(Add, {}),
169
+ children: "Create"
170
+ }, 'Create')]
171
+ }), jsx(Box, {
172
+ sx: {
173
+ justifyContent: 'flex-end',
174
+ alignItems: 'center',
175
+ display: _this2.IsDisplayAction(state) ? 'flex' : 'none',
176
+ flex: 1,
177
+ position: 'absolute',
178
+ top: 0,
179
+ left: 0,
180
+ right: 0,
181
+ bottom: 0,
182
+ background: '#e0e0e0'
183
+ },
184
+ children: Array.from(_this2.getButtons(_this2, state))
185
+ })]
186
+ });
187
+ }
188
+ });
189
+ }
190
+ });
191
+ }
192
+ }]);
193
+ }(Component);
194
+ var EmptyDiv = function EmptyDiv() {
195
+ return jsx(Fragment, {});
196
+ };
197
+
198
+ export { CRUDPannel, CRUDPannel as default };
199
+ //# sourceMappingURL=CRUDPannel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CRUDPannel.js","sources":["../../../src/ComponentsV2/TableTemplate/CRUDPannel.tsx"],"sourcesContent":["import React, { Component } from 'react'\r\nimport { Box, Button } from '@mui/material'\r\nimport { Add, Edit, Delete } from '@mui/icons-material'\r\nimport AppRegistrationIcon from '@mui/icons-material/AppRegistration'\r\nimport { GlobalModalContext, IGlobalModalContext } from '../GlobalModal'\r\nimport { ITableTemplateState, TableTemplateContext } from './TableTemplateContext'\r\n\r\ninterface CRUDPannelProps {\r\n Create?: JSX.Element\r\n Edit?: JSX.Element\r\n Details?: JSX.Element\r\n Delete?: JSX.Element\r\n}\r\n\r\nexport class CRUDPannel extends Component<CRUDPannelProps> {\r\n constructor(props: any) {\r\n super(props)\r\n }\r\n\r\n IsMultiple = (state: ITableTemplateState) => {\r\n return (state.selectionIds?.length ?? 0) > 1\r\n }\r\n\r\n IsDisplayAction = (state: ITableTemplateState) => {\r\n return !!state.selectionIds?.length\r\n }\r\n\r\n getButtons = function* (that: CRUDPannel, state: ITableTemplateState) {\r\n if (that.props.Edit)\r\n yield (\r\n <Button\r\n onClick={that.onEdit}\r\n key={'Edit'}\r\n sx={{ width: 100, height: 30 }}\r\n color=\"info\"\r\n disabled={that.IsMultiple(state)}\r\n startIcon={<Edit />}\r\n >\r\n Edit\r\n </Button>\r\n )\r\n if (that.props.Delete)\r\n yield (\r\n <Button onClick={that.onDelete} key={'Delete'} sx={{ width: 100, height: 30 }} color=\"error\" startIcon={<Delete />}>\r\n Delete\r\n </Button>\r\n )\r\n if (that.props.Details)\r\n yield (\r\n <Button\r\n onClick={that.onDetails}\r\n key={'Details'}\r\n sx={{ width: 100, height: 30 }}\r\n color=\"inherit\"\r\n disabled={that.IsMultiple(state)}\r\n startIcon={<AppRegistrationIcon />}\r\n >\r\n Details\r\n </Button>\r\n )\r\n }\r\n\r\n onCreate = () => {\r\n this.ModalContext?.ShowModal({\r\n ContenModal: () => this.props.Create || <EmptyDiv />,\r\n sx: { display: 'flex', justifyContent: 'center', alignItems: 'center' },\r\n })\r\n }\r\n\r\n onEdit = () => {\r\n this.ModalContext?.ShowModal({\r\n ContenModal: () => this.props.Edit || <EmptyDiv />,\r\n sx: { display: 'flex', justifyContent: 'center', alignItems: 'center' },\r\n })\r\n }\r\n\r\n onDelete = () => {\r\n this.ModalContext?.ShowModal({\r\n ContenModal: () => this.props.Delete || <EmptyDiv />,\r\n sx: { display: 'flex', justifyContent: 'center', alignItems: 'center' },\r\n })\r\n }\r\n\r\n onDetails = () => {\r\n this.ModalContext?.ShowModal({\r\n ContenModal: () => this.props.Details || <EmptyDiv />,\r\n sx: { display: 'flex', justifyContent: 'center', alignItems: 'center' },\r\n })\r\n }\r\n\r\n ModalContext?: IGlobalModalContext\r\n render() {\r\n return (\r\n <GlobalModalContext.Consumer>\r\n {(context) => {\r\n this.ModalContext = context\r\n return (\r\n <TableTemplateContext.Consumer>\r\n {({ state }) => {\r\n return (\r\n <Box\r\n sx={{ height: 50, justifyContent: 'space-between', display: 'flex', padding: '10px', position: 'relative' }}\r\n >\r\n <Box sx={{ justifyContent: 'space-between', display: 'flex', flex: 1, alignItems: 'center' }}>\r\n <Box></Box>\r\n {this.props.Create && (\r\n <Button\r\n onClick={this.onCreate}\r\n key={'Create'}\r\n sx={{ height: 30 }}\r\n variant=\"contained\"\r\n startIcon={<Add />}\r\n >\r\n Create\r\n </Button>\r\n )}\r\n </Box>\r\n <Box\r\n sx={{\r\n justifyContent: 'flex-end',\r\n alignItems: 'center',\r\n display: this.IsDisplayAction(state) ? 'flex' : 'none',\r\n flex: 1,\r\n position: 'absolute',\r\n top: 0,\r\n left: 0,\r\n right: 0,\r\n bottom: 0,\r\n background: '#e0e0e0',\r\n }}\r\n >\r\n {Array.from(this.getButtons(this, state))}\r\n </Box>\r\n </Box>\r\n )\r\n }}\r\n </TableTemplateContext.Consumer>\r\n )\r\n }}\r\n </GlobalModalContext.Consumer>\r\n )\r\n }\r\n}\r\nexport default CRUDPannel\r\nconst EmptyDiv = () => <></>\r\n"],"names":["CRUDPannel","_Component","props","_this","_classCallCheck","_callSuper","_defineProperty","state","_state$selectionIds$l","_state$selectionIds","selectionIds","length","_state$selectionIds2","_regenerator","m","_callee","that","w","_context","n","Edit","_jsx","Button","onClick","onEdit","sx","width","height","color","disabled","IsMultiple","startIcon","Delete","onDelete","children","Details","onDetails","AppRegistrationIcon","a","_this$ModalContext","ModalContext","ShowModal","ContenModal","Create","EmptyDiv","display","justifyContent","alignItems","_this$ModalContext2","_this$ModalContext3","_this$ModalContext4","_inherits","_createClass","key","value","render","_this2","GlobalModalContext","Consumer","context","TableTemplateContext","_ref","_jsxs","Box","padding","position","flex","onCreate","variant","Add","IsDisplayAction","top","left","right","bottom","background","Array","from","getButtons","Component"],"mappings":"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"}
@@ -0,0 +1,60 @@
1
+ import React, { ComponentType } from 'react';
2
+ import { SxProps, Theme } from '@mui/material';
3
+ import { GridSortModel, GridColDef, GridValidRowModel, DataGridProps, GridRowModel } from '@mui/x-data-grid';
4
+ import { GridCallbackDetails, GridFilterModel, GridPaginationInitialState } from '@mui/x-data-grid';
5
+ import { IFetchModel, ITableMode, ITableOption, ITableTemplatePropBases } from './type';
6
+ import { ITableTemplateState } from './TableTemplateContext';
7
+ type ITableTemplateProps<T extends GridValidRowModel, Key extends keyof ITableMode<T>> = ITableTemplatePropBases<T> & ITableMode<T>[Key] & {
8
+ sxWrapper?: SxProps<Theme>;
9
+ ItemRowMenu?: ComponentType<React.PropsWithChildren<any>>;
10
+ };
11
+ export declare const CreateTableTemplate: <TModel extends GridValidRowModel>(mode: keyof ITableMode<TModel>, option: ITableOption<TModel>) => {
12
+ new (props: ITableTemplateProps<TModel, keyof ITableMode<TModel>>): {
13
+ AbortController?: AbortController | undefined;
14
+ generateColumns: () => GridColDef<any, any, any>[];
15
+ columns: GridColDef<any, any, any>[];
16
+ initial(): GridColDef<any, any, any>[];
17
+ getPageInfo: () => import("./type").IFetchPagination<TModel>;
18
+ getPagination: () => {
19
+ page: number | undefined;
20
+ pageSize: number | undefined;
21
+ };
22
+ GetDataGridProp: () => Omit<DataGridProps<any>, "columns">;
23
+ onRowSelectionModelChange: (rowSelectionModel: GridRowModel, details: GridCallbackDetails) => void;
24
+ onServerFilterChange: (model: GridFilterModel, details: GridCallbackDetails<'filter'>) => void;
25
+ onPageChange: (page: number, details: GridCallbackDetails<any>) => void;
26
+ onPageSizeChange: (pageSize: number, details: GridCallbackDetails<any>) => void;
27
+ timer: number;
28
+ PageInfoCache: GridPaginationInitialState;
29
+ PageNavidateFetch: (details: GridCallbackDetails<any>) => void;
30
+ onSortModelChange: (model: GridSortModel, details: GridCallbackDetails) => void;
31
+ FetchData: (model: Partial<IFetchModel>) => Promise<void>;
32
+ isServerSide: () => boolean;
33
+ componentDidMount(): Promise<void>;
34
+ render(): JSX.Element;
35
+ context: any;
36
+ setState<K extends keyof ITableTemplateState<TModel>>(state: ITableTemplateState<TModel> | ((prevState: Readonly<ITableTemplateState<TModel>>, props: Readonly<ITableTemplateProps<TModel, keyof ITableMode<TModel>>>) => ITableTemplateState<TModel> | Pick<ITableTemplateState<TModel>, K> | null) | Pick<ITableTemplateState<TModel>, K> | null, callback?: (() => void) | undefined): void;
37
+ forceUpdate(callback?: (() => void) | undefined): void;
38
+ readonly props: Readonly<ITableTemplateProps<TModel, keyof ITableMode<TModel>>> & Readonly<{
39
+ children?: React.ReactNode;
40
+ }>;
41
+ state: Readonly<ITableTemplateState<TModel>>;
42
+ refs: {
43
+ [key: string]: React.ReactInstance;
44
+ };
45
+ shouldComponentUpdate?(nextProps: Readonly<ITableTemplateProps<TModel, keyof ITableMode<TModel>>>, nextState: Readonly<ITableTemplateState<TModel>>, nextContext: any): boolean;
46
+ componentWillUnmount?(): void;
47
+ componentDidCatch?(error: Error, errorInfo: React.ErrorInfo): void;
48
+ getSnapshotBeforeUpdate?(prevProps: Readonly<ITableTemplateProps<TModel, keyof ITableMode<TModel>>>, prevState: Readonly<ITableTemplateState<TModel>>): any;
49
+ componentDidUpdate?(prevProps: Readonly<ITableTemplateProps<TModel, keyof ITableMode<TModel>>>, prevState: Readonly<ITableTemplateState<TModel>>, snapshot?: any): void;
50
+ componentWillMount?(): void;
51
+ UNSAFE_componentWillMount?(): void;
52
+ componentWillReceiveProps?(nextProps: Readonly<ITableTemplateProps<TModel, keyof ITableMode<TModel>>>, nextContext: any): void;
53
+ UNSAFE_componentWillReceiveProps?(nextProps: Readonly<ITableTemplateProps<TModel, keyof ITableMode<TModel>>>, nextContext: any): void;
54
+ componentWillUpdate?(nextProps: Readonly<ITableTemplateProps<TModel, keyof ITableMode<TModel>>>, nextState: Readonly<ITableTemplateState<TModel>>, nextContext: any): void;
55
+ UNSAFE_componentWillUpdate?(nextProps: Readonly<ITableTemplateProps<TModel, keyof ITableMode<TModel>>>, nextState: Readonly<ITableTemplateState<TModel>>, nextContext: any): void;
56
+ };
57
+ defaultState: ITableTemplateState<TModel>;
58
+ contextType?: React.Context<any> | undefined;
59
+ };
60
+ export {};
@@ -0,0 +1,330 @@
1
+ import { inherits as _inherits, createClass as _createClass, objectSpread2 as _objectSpread2, asyncToGenerator as _asyncToGenerator, defineProperty as _defineProperty, classCallCheck as _classCallCheck, callSuper as _callSuper, regenerator as _regenerator } from '../../_virtual/_rollupPluginBabelHelpers.js';
2
+ import { jsx, Fragment, jsxs } 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 { CustomerGridToolbar } from './CustomerGridToolbar.js';
7
+ import { CustomGridFilterPanel } from './CustomGridFilterPanel.js';
8
+ import { TableTemplateContext } from './TableTemplateContext.js';
9
+ import NoRowsOverlay from './NoRowsOverlay.js';
10
+
11
+ var CreateTableTemplate = function CreateTableTemplate(mode, option) {
12
+ var _TableTemplate;
13
+ return _TableTemplate = /*#__PURE__*/function (_Component) {
14
+ function TableTemplate(props) {
15
+ var _this;
16
+ _classCallCheck(this, TableTemplate);
17
+ _this = _callSuper(this, TableTemplate, [props]);
18
+ _defineProperty(_this, "AbortController", void 0);
19
+ _defineProperty(_this, "generateColumns", function () {
20
+ return Object.keys(option.config).map(function (key) {
21
+ var opt = _objectSpread2(_objectSpread2({}, option.config[key]), {}, {
22
+ field: key
23
+ });
24
+ if (mode === 'Server' && !opt.type && opt.filterable !== false) throw new Error("When mode is Server you need set type for '".concat(key, "' column in 'GridColDef'"));
25
+ if (option.filterOperators) {
26
+ opt.filterOperators = option.filterOperators(opt);
27
+ }
28
+ return opt;
29
+ });
30
+ });
31
+ _defineProperty(_this, "columns", void 0);
32
+ _defineProperty(_this, "getPageInfo", function () {
33
+ if ('PageInfo' in _this.props && _this.props.PageInfo) {
34
+ return _this.props.PageInfo;
35
+ }
36
+ return _this.state.PageInfo;
37
+ });
38
+ _defineProperty(_this, "getPagination", function () {
39
+ var pageInfo = _this.getPageInfo();
40
+ return {
41
+ page: pageInfo.page,
42
+ pageSize: pageInfo.pageSize
43
+ };
44
+ });
45
+ _defineProperty(_this, "GetDataGridProp", function () {
46
+ var _DataGridProp;
47
+ if (mode === 'Server') {
48
+ var _pageInfo$rowTotal;
49
+ var pageInfo = _this.getPageInfo();
50
+ _DataGridProp = {
51
+ initialState: {
52
+ pagination: _this.getPagination()
53
+ },
54
+ rowCount: (_pageInfo$rowTotal = pageInfo.rowTotal) !== null && _pageInfo$rowTotal !== void 0 ? _pageInfo$rowTotal : 0,
55
+ rows: pageInfo.data,
56
+ loading: _this.state.isLoading,
57
+ onPageChange: _this.onPageChange,
58
+ onPageSizeChange: _this.onPageSizeChange,
59
+ onFilterModelChange: _this.onServerFilterChange,
60
+ onSortModelChange: _this.onSortModelChange,
61
+ filterMode: 'server',
62
+ paginationMode: 'server',
63
+ sortingMode: 'server',
64
+ filterModel: _this.state.FilterModel,
65
+ sortModel: _this.state.GridSortModel
66
+ };
67
+ } else if (mode === 'Client' && 'data' in _this.props) {
68
+ _DataGridProp = {
69
+ rows: _this.props.data,
70
+ componentsProps: {
71
+ toolbar: {
72
+ showQuickFilter: true,
73
+ quickFilterProps: {
74
+ debounceMs: 500
75
+ }
76
+ }
77
+ }
78
+ };
79
+ } else {
80
+ _DataGridProp = {
81
+ rows: []
82
+ };
83
+ }
84
+ return _DataGridProp;
85
+ });
86
+ _defineProperty(_this, "onRowSelectionModelChange", function (rowSelectionModel, details) {
87
+ _this.setState({
88
+ details: details,
89
+ selectionIds: rowSelectionModel
90
+ });
91
+ });
92
+ _defineProperty(_this, "onServerFilterChange", function (model, details) {
93
+ _this.setState({
94
+ FilterModel: model,
95
+ isLoading: true
96
+ }, function () {
97
+ return _this.FetchData({
98
+ FilterModel: model,
99
+ details: details
100
+ });
101
+ });
102
+ });
103
+ _defineProperty(_this, "onPageChange", function (page, details) {
104
+ _this.PageInfoCache.page = page;
105
+ _this.PageNavidateFetch(details);
106
+ });
107
+ _defineProperty(_this, "onPageSizeChange", function (pageSize, details) {
108
+ _this.PageInfoCache.pageSize = pageSize;
109
+ _this.PageNavidateFetch(details);
110
+ });
111
+ _defineProperty(_this, "timer", 0);
112
+ _defineProperty(_this, "PageInfoCache", {});
113
+ _defineProperty(_this, "PageNavidateFetch", function (details) {
114
+ clearTimeout(_this.timer);
115
+ _this.timer = setTimeout(function () {
116
+ _this.setState({
117
+ PaginationModel: _this.PageInfoCache,
118
+ isLoading: true
119
+ });
120
+ _this.FetchData({
121
+ PaginationModel: _this.PageInfoCache,
122
+ details: details
123
+ });
124
+ }, 250);
125
+ });
126
+ _defineProperty(_this, "onSortModelChange", function (model, details) {
127
+ _this.setState({
128
+ GridSortModel: model,
129
+ isLoading: true
130
+ });
131
+ _this.FetchData({
132
+ GridSortModel: model,
133
+ details: details
134
+ });
135
+ });
136
+ _defineProperty(_this, "FetchData", /*#__PURE__*/function () {
137
+ var _ref = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee(model) {
138
+ var _this$AbortController;
139
+ var data;
140
+ return _regenerator().w(function (_context) {
141
+ while (1) switch (_context.n) {
142
+ case 0:
143
+ (_this$AbortController = _this.AbortController) === null || _this$AbortController === void 0 || _this$AbortController.abort();
144
+ if (!(mode === 'Server' && 'ServerOption' in _this.props)) {
145
+ _context.n = 4;
146
+ break;
147
+ }
148
+ _context.p = 1;
149
+ _this.AbortController = new AbortController();
150
+ _context.n = 2;
151
+ return _this.props.ServerOption.FetchFilterData(Object.assign({}, {
152
+ PaginationModel: _this.state.PaginationModel,
153
+ FilterModel: _this.state.FilterModel,
154
+ GridSortModel: _this.state.GridSortModel,
155
+ abort: _this.AbortController.signal
156
+ }, model));
157
+ case 2:
158
+ data = _context.v;
159
+ if (_this.props.IsInnerState === true) {
160
+ _this.setState({
161
+ isLoading: false,
162
+ PageInfo: data !== null && data !== void 0 ? data : TableTemplate.defaultState.PageInfo
163
+ });
164
+ } else {
165
+ _this.setState({
166
+ isLoading: false
167
+ });
168
+ }
169
+ _context.n = 4;
170
+ break;
171
+ case 3:
172
+ _context.p = 3;
173
+ _context.v;
174
+ _this.setState({
175
+ isLoading: false
176
+ });
177
+ case 4:
178
+ return _context.a(2);
179
+ }
180
+ }, _callee, null, [[1, 3]]);
181
+ }));
182
+ return function (_x) {
183
+ return _ref.apply(this, arguments);
184
+ };
185
+ }());
186
+ _defineProperty(_this, "isServerSide", function () {
187
+ return mode === 'Server';
188
+ });
189
+ _this.state = TableTemplate.defaultState;
190
+ _this.columns = _this.initial();
191
+ return _this;
192
+ }
193
+ _inherits(TableTemplate, _Component);
194
+ return _createClass(TableTemplate, [{
195
+ key: "initial",
196
+ value: function initial() {
197
+ if (option.MenuField) {
198
+ var MenuField = typeof option.MenuField === 'function' ? option.MenuField(option) : option.MenuField;
199
+ var FieldConfig = option.config[MenuField];
200
+ var ItemMenu = this.props.ItemRowMenu;
201
+ if (FieldConfig && ItemMenu) {
202
+ var renderCell = FieldConfig.renderCell;
203
+ FieldConfig.renderCell = function (params) {
204
+ return jsx(ItemMenu, {
205
+ data: params.row,
206
+ children: renderCell ? renderCell(params) : params.value
207
+ });
208
+ };
209
+ }
210
+ }
211
+ return this.generateColumns();
212
+ }
213
+ }, {
214
+ key: "componentDidMount",
215
+ value: function () {
216
+ var _componentDidMount = _asyncToGenerator(/*#__PURE__*/_regenerator().m(function _callee2() {
217
+ var _this$AbortController2, data;
218
+ return _regenerator().w(function (_context2) {
219
+ while (1) switch (_context2.n) {
220
+ case 0:
221
+ if (!(mode === 'Server' && 'ServerOption' in this.props)) {
222
+ _context2.n = 4;
223
+ break;
224
+ }
225
+ (_this$AbortController2 = this.AbortController) === null || _this$AbortController2 === void 0 || _this$AbortController2.abort();
226
+ if (!(mode === 'Server' && 'ServerOption' in this.props)) {
227
+ _context2.n = 4;
228
+ break;
229
+ }
230
+ _context2.p = 1;
231
+ this.AbortController = new AbortController();
232
+ _context2.n = 2;
233
+ return this.props.ServerOption.FetchInitialData();
234
+ case 2:
235
+ data = _context2.v;
236
+ this.setState({
237
+ isLoading: false,
238
+ PageInfo: data !== null && data !== void 0 ? data : TableTemplate.defaultState.PageInfo
239
+ });
240
+ _context2.n = 4;
241
+ break;
242
+ case 3:
243
+ _context2.p = 3;
244
+ _context2.v;
245
+ this.setState({
246
+ isLoading: false
247
+ });
248
+ case 4:
249
+ return _context2.a(2);
250
+ }
251
+ }, _callee2, this, [[1, 3]]);
252
+ }));
253
+ function componentDidMount() {
254
+ return _componentDidMount.apply(this, arguments);
255
+ }
256
+ return componentDidMount;
257
+ }()
258
+ }, {
259
+ key: "render",
260
+ value: function render() {
261
+ var _this$props$InnerProp;
262
+ var CRUDPannel = this.props.CRUDPannel || function () {
263
+ return jsx(Fragment, {});
264
+ };
265
+ return jsx(TableTemplateContext.Provider, {
266
+ value: this,
267
+ children: jsxs(Wrapper, {
268
+ sx: this.props.sxWrapper,
269
+ children: [jsx(CRUDPannel, {}), jsx(DataGrid
270
+ // row
271
+ , _objectSpread2(_objectSpread2({
272
+ // row
273
+ pagination: true,
274
+ getRowId: option.getRowId,
275
+ columns: this.columns
276
+ }, this.GetDataGridProp()), {}, {
277
+ components: {
278
+ Toolbar: CustomerGridToolbar,
279
+ FilterPanel: function FilterPanel(props) {
280
+ return jsx(CustomGridFilterPanel, _objectSpread2({}, props));
281
+ },
282
+ NoRowsOverlay: NoRowsOverlay
283
+ },
284
+ componentsProps: {
285
+ toolbar: {
286
+ showQuickFilter: true,
287
+ quickFilterProps: {
288
+ debounceMs: 500
289
+ }
290
+ }
291
+ },
292
+ style: {
293
+ border: 0
294
+ },
295
+ checkboxSelection: true,
296
+ sx: {
297
+ border: 0,
298
+ '& .MuiTablePagination-root .MuiToolbar-root > p': {
299
+ margin: 0
300
+ },
301
+ '& .MuiDataGrid-columnHeaderTitle': {
302
+ fontWeight: 700,
303
+ color: '#3c3c3c'
304
+ }
305
+ }
306
+ }, (_this$props$InnerProp = this.props.InnerProps) !== null && _this$props$InnerProp !== void 0 ? _this$props$InnerProp : {}))]
307
+ })
308
+ });
309
+ }
310
+ }]);
311
+ }(Component), _defineProperty(_TableTemplate, "defaultState", {
312
+ PageInfo: {
313
+ data: [],
314
+ rowTotal: 0,
315
+ page: 0,
316
+ pageSize: 0
317
+ },
318
+ isLoading: true
319
+ }), _TableTemplate;
320
+ };
321
+ var Wrapper = styled(Box)({
322
+ flex: 1,
323
+ display: 'flex',
324
+ flexDirection: 'column',
325
+ border: '1px solid #e0e0e0',
326
+ borderRadius: '5px'
327
+ });
328
+
329
+ export { CreateTableTemplate };
330
+ //# sourceMappingURL=CreateTableTemplate.js.map