@asaleh37/ui-base 25.6.1 → 25.6.2-0.1
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/.github/workflows/publish-npm.yml +31 -0
- package/README.md +51 -51
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +1 -1
- package/dist/index.mjs.map +1 -1
- package/eslint.config.js +29 -29
- package/index.html +13 -13
- package/package.json +120 -120
- package/rollup.config-1748377725725.cjs +50 -50
- package/rollup.config.js +45 -45
- package/src/components/App.tsx +123 -123
- package/src/components/BaseApp.tsx +53 -53
- package/src/components/administration/admin/OrgMemberRoleForm.tsx +83 -83
- package/src/components/administration/admin/OrganizationApplicationModuleGrid.tsx +107 -107
- package/src/components/administration/admin/OrganizationGrid.tsx +82 -82
- package/src/components/administration/admin/OrganizationMemberGrid.tsx +176 -176
- package/src/components/administration/admin/OrganizationMemberRoleGrid.tsx +87 -87
- package/src/components/administration/admin/OrganizationRankGrid.tsx +133 -133
- package/src/components/administration/admin/OrganizationUnitGrid.tsx +143 -143
- package/src/components/administration/admin/OrganizationUnitTypeGrid.tsx +108 -108
- package/src/components/administration/admin/PersonGrid.tsx +231 -231
- package/src/components/administration/admin/RoleAuthoritiesForm.tsx +82 -82
- package/src/components/administration/admin/SystemApplicationAuthorityGrid.tsx +126 -126
- package/src/components/administration/admin/SystemApplicationGrid.tsx +83 -83
- package/src/components/administration/admin/SystemApplicationModuleGrid.tsx +96 -96
- package/src/components/administration/admin/SystemApplicationRoleAuthorityGrid.tsx +67 -67
- package/src/components/administration/admin/SystemApplicationRoleGrid.tsx +116 -116
- package/src/components/administration/dev/AttachmentConfigGrid.tsx +223 -223
- package/src/components/administration/dev/AttachmentGrid.tsx +172 -172
- package/src/components/administration/dev/BluePrintGrid.tsx +129 -129
- package/src/components/administration/dev/DashboardGrid.tsx +173 -173
- package/src/components/administration/dev/DashboardWidgetGrid.tsx +164 -164
- package/src/components/administration/dev/DataQueryGrid.tsx +206 -206
- package/src/components/administration/dev/DataQueryParameterGrid.tsx +191 -191
- package/src/components/administration/dev/DataQueryParametersForm.tsx +84 -84
- package/src/components/administration/dev/DatasourceConnectionGrid.tsx +150 -150
- package/src/components/administration/dev/EntityParameterGrid.tsx +279 -279
- package/src/components/administration/dev/LookupGrid.tsx +120 -120
- package/src/components/administration/dev/MailAttachmentGrid.tsx +155 -155
- package/src/components/administration/dev/MailBodyGrid.tsx +216 -216
- package/src/components/administration/dev/MailNotificationQueueGrid.tsx +245 -245
- package/src/components/administration/dev/MailRecipientGrid.tsx +169 -169
- package/src/components/administration/dev/MailSenderConfigGrid.tsx +478 -478
- package/src/components/administration/dev/MailTemplateGrid.tsx +384 -384
- package/src/components/administration/dev/NotificationGrid.tsx +432 -432
- package/src/components/administration/dev/NotificationQueueGrid.tsx +222 -222
- package/src/components/administration/dev/ReportGrid.tsx +506 -506
- package/src/components/administration/dev/ReportParameterGrid.tsx +186 -186
- package/src/components/administration/dev/ReportParametersForm.tsx +84 -84
- package/src/components/administration/dev/WidgetGrid.tsx +431 -431
- package/src/components/administration/dev/WorkflowDocumentActionGrid.tsx +264 -264
- package/src/components/administration/dev/WorkflowDocumentActionHistoryGrid.tsx +172 -172
- package/src/components/administration/dev/WorkflowDocumentActionMailGrid.tsx +161 -161
- package/src/components/administration/dev/WorkflowDocumentGrid.tsx +377 -377
- package/src/components/administration/dev/WorkflowDocumentMailLogGrid.tsx +218 -218
- package/src/components/administration/dev/WorkflowDocumentStatusGrid.tsx +243 -243
- package/src/components/common/ChangeOrgForm.tsx +81 -81
- package/src/components/common/Home.tsx +43 -43
- package/src/components/common/LanguageSwitcher.tsx +25 -25
- package/src/components/common/LayoutHandlers.tsx +11 -11
- package/src/components/common/LoadingMask.tsx +24 -24
- package/src/components/common/Login.tsx +214 -214
- package/src/components/common/MyNotificationsPanel.tsx +103 -103
- package/src/components/common/NotificationItem.tsx +138 -138
- package/src/components/index.ts +9 -9
- package/src/components/templates/DataEntryTemplates/DataEntryTypes.ts +324 -324
- package/src/components/templates/DataEntryTemplates/DataEntryUtil.ts +248 -248
- package/src/components/templates/DataEntryTemplates/TemplateDataForm/FormAction.tsx +60 -60
- package/src/components/templates/DataEntryTemplates/TemplateDataForm/FormElementField.tsx +231 -231
- package/src/components/templates/DataEntryTemplates/TemplateDataForm/FormElementGroup.tsx +106 -106
- package/src/components/templates/DataEntryTemplates/TemplateDataForm/FormFields/CheckBox.tsx +64 -64
- package/src/components/templates/DataEntryTemplates/TemplateDataForm/FormFields/ComboBox.tsx +93 -93
- package/src/components/templates/DataEntryTemplates/TemplateDataForm/FormFields/Datefield.tsx +65 -65
- package/src/components/templates/DataEntryTemplates/TemplateDataForm/FormFields/DatetimeField.tsx +64 -64
- package/src/components/templates/DataEntryTemplates/TemplateDataForm/FormFields/FiltersPanel.tsx +237 -237
- package/src/components/templates/DataEntryTemplates/TemplateDataForm/FormFields/SystemLookupCombobox.tsx +55 -55
- package/src/components/templates/DataEntryTemplates/TemplateDataForm/FormFields/TemplateTextField.tsx +17 -17
- package/src/components/templates/DataEntryTemplates/TemplateDataForm/TemplateForm.tsx +387 -387
- package/src/components/templates/DataEntryTemplates/TemplateDataGrid/DataGridColumnsUtil.tsx +189 -189
- package/src/components/templates/DataEntryTemplates/TemplateDataGrid/TemplateGrid.tsx +998 -998
- package/src/components/templates/DataEntryTemplates/TemplateDataGrid/TemplateGridMultiRecordAction.tsx +89 -89
- package/src/components/templates/DataEntryTemplates/TemplateDataGrid/TemplateGridRecordAction.tsx +95 -95
- package/src/components/templates/DataEntryTemplates/TemplateDataGrid/TemplateGridTopBar.tsx +227 -227
- package/src/components/templates/TransferList.tsx +257 -257
- package/src/components/templates/Window/ConfirmationWindow.tsx +55 -55
- package/src/components/templates/attachment/AttachmentCard.tsx +141 -141
- package/src/components/templates/attachment/AttachmentImageViewer.tsx +45 -45
- package/src/components/templates/attachment/AttachmentPanel.tsx +271 -271
- package/src/components/templates/index.ts +33 -33
- package/src/components/templates/report/ExcelReportViewer.tsx +71 -71
- package/src/components/templates/report/ReportViewer.tsx +382 -382
- package/src/components/templates/visuals/DashboardRouteView.tsx +9 -9
- package/src/components/templates/visuals/DashboardViewer.tsx +148 -148
- package/src/components/templates/visuals/WidgetViewer.tsx +198 -198
- package/src/components/templates/visuals/charts/TemplateBarChart.tsx +23 -23
- package/src/components/templates/visuals/charts/TemplateDataCard.tsx +35 -35
- package/src/components/templates/visuals/charts/TemplateGauge.tsx +21 -21
- package/src/components/templates/visuals/charts/TemplateLineChart.tsx +22 -22
- package/src/components/templates/visuals/charts/TemplateLineProgress.tsx +42 -42
- package/src/components/templates/visuals/charts/TemplatePieChart.tsx +24 -24
- package/src/components/templates/workflow/WorkflowDocumentPanel.tsx +606 -606
- package/src/components/templates/workflow/WorkflowDocumentTimeLine.tsx +140 -140
- package/src/components/templates/workflow/WorkflowRouteComponent.tsx +14 -14
- package/src/hooks/UseConfirmationWindow.tsx +54 -54
- package/src/hooks/UseMobile.tsx +13 -13
- package/src/hooks/UseSession.tsx +40 -40
- package/src/hooks/UseWindow.tsx +107 -107
- package/src/hooks/index.ts +7 -7
- package/src/hooks/useApiActions.ts +124 -124
- package/src/hooks/useAxios.tsx +316 -316
- package/src/hooks/useInterval.tsx +23 -23
- package/src/hooks/useLoadingMask.tsx +16 -16
- package/src/hooks/useLookupGridColumn.tsx +35 -35
- package/src/index.ts +4 -4
- package/src/layout/DrawerHeader.tsx +10 -10
- package/src/layout/Layout.tsx +90 -90
- package/src/layout/MainContent.tsx +114 -114
- package/src/layout/MobileDrawer.tsx +103 -103
- package/src/layout/NavigationTree.tsx +295 -295
- package/src/layout/NotificationButton.tsx +207 -207
- package/src/layout/RouteWrapper.tsx +36 -36
- package/src/layout/SideBar.tsx +85 -85
- package/src/layout/TopBar.tsx +215 -215
- package/src/locales/arabic/adminLocalsAr.json +93 -93
- package/src/locales/arabic/common.json +44 -44
- package/src/locales/arabic/devLocalsAr.json +317 -317
- package/src/locales/arabic/index.ts +9 -9
- package/src/locales/english/adminLocalsEn.json +96 -96
- package/src/locales/english/common.json +43 -43
- package/src/locales/english/devLocalsEn.json +318 -318
- package/src/locales/english/index.ts +9 -9
- package/src/locales/i18n.ts +8 -8
- package/src/locales/index.ts +9 -9
- package/src/main.tsx +23 -23
- package/src/navigationItems/Administration/adminNavigationItems.tsx +222 -222
- package/src/navigationItems/Administration/index.tsx +16 -16
- package/src/navigationItems/common/CommonNavigationItems.tsx +12 -12
- package/src/navigationItems/common/index.tsx +7 -7
- package/src/navigationItems/index.tsx +34 -34
- package/src/redux/features/administration/AdministrationStoresMetaData.ts +126 -126
- package/src/redux/features/common/AppInfoSlice.ts +63 -63
- package/src/redux/features/common/AppLayoutSlice.ts +29 -29
- package/src/redux/features/common/CommonStoreSlice.ts +44 -44
- package/src/redux/features/common/LoadingMaskSlice.ts +30 -30
- package/src/redux/features/common/SideBarSlice.ts +27 -27
- package/src/redux/features/common/UserSessionSlice.ts +54 -54
- package/src/redux/store.ts +29 -29
- package/src/routes/administration/adminRoutes.tsx +99 -99
- package/src/routes/administration/devRoutes.tsx +129 -129
- package/src/routes/administration/index.ts +8 -8
- package/src/routes/index.ts +11 -11
- package/src/routes/types/index.ts +5 -5
- package/src/styles/index.css +19 -19
- package/src/types/index.ts +8 -8
- package/src/util/AppUtils.ts +53 -53
- package/src/util/constants.ts +6 -6
- package/src/util/index.ts +2 -2
- package/tsconfig.json +135 -135
- package/vite.config.ts +36 -36
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
name: Publish to npm
|
|
2
|
+
|
|
3
|
+
on:
|
|
4
|
+
push:
|
|
5
|
+
branches:
|
|
6
|
+
- prod
|
|
7
|
+
|
|
8
|
+
jobs:
|
|
9
|
+
publish:
|
|
10
|
+
runs-on: ubuntu-latest
|
|
11
|
+
|
|
12
|
+
steps:
|
|
13
|
+
- name: Checkout repo
|
|
14
|
+
uses: actions/checkout@v4
|
|
15
|
+
|
|
16
|
+
- name: Use Node.js
|
|
17
|
+
uses: actions/setup-node@v4
|
|
18
|
+
with:
|
|
19
|
+
node-version: 20
|
|
20
|
+
registry-url: "https://registry.npmjs.org/"
|
|
21
|
+
|
|
22
|
+
- name: Install dependencies
|
|
23
|
+
run: npm install --force
|
|
24
|
+
|
|
25
|
+
- name: Run build (optional)
|
|
26
|
+
run: npm run build
|
|
27
|
+
|
|
28
|
+
- name: Publish to npm
|
|
29
|
+
run: npm publish
|
|
30
|
+
env:
|
|
31
|
+
NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
|
package/README.md
CHANGED
|
@@ -1,52 +1,52 @@
|
|
|
1
|
-
**UI Base** is a React JS template designed for quickly scaffolding robust, production-ready Enterprise Applications Interface. It incorporates enterprise-grade architectural patterns and integrates a suite of essential features to accelerate development, including:
|
|
2
|
-
|
|
3
|
-
- A modular, layered architecture with a clean separation of concerns and industry-standard project structure.
|
|
4
|
-
|
|
5
|
-
- [ ] Create new react project using vite.
|
|
6
|
-
|
|
7
|
-
```javascript
|
|
8
|
-
npm create vite@latest YOUR_APP_NAME //choose typescript as template
|
|
9
|
-
cd YOUR_APP_NAME
|
|
10
|
-
npm install
|
|
11
|
-
```
|
|
12
|
-
|
|
13
|
-
- [ ] Install the UI Base Dependency.
|
|
14
|
-
|
|
15
|
-
```javascript
|
|
16
|
-
npm install @asaleh37/ui-base --force
|
|
17
|
-
```
|
|
18
|
-
|
|
19
|
-
- [ ] replace the content of the file src/main.tsx
|
|
20
|
-
|
|
21
|
-
```javascript
|
|
22
|
-
import { BaseApp } from "@asaleh37/ui-base";
|
|
23
|
-
import { createRoot } from "react-dom/client";
|
|
24
|
-
|
|
25
|
-
createRoot(document.getElementById("root")!).render(
|
|
26
|
-
<BaseApp
|
|
27
|
-
apiBaseUrl="YOUR_API_URL"
|
|
28
|
-
appLogo={"YOUR_APP_LOGO_PATH"}
|
|
29
|
-
appName="YOUR_APP_NAME"
|
|
30
|
-
appVersion="YOUR_APP_VERSION"
|
|
31
|
-
businessCommonStoresMetaData={{}}
|
|
32
|
-
businessNavigationItems={[]}
|
|
33
|
-
businessReduxReducers={{}}
|
|
34
|
-
businessRoutes={[]}
|
|
35
|
-
documentTitle="YOUR_HTML_DOCUMENT_TITLE"
|
|
36
|
-
enableAdministrationModule={true} // to enable administration module or not
|
|
37
|
-
/* // To Change APP Coloring Theme modify the following colors
|
|
38
|
-
appTheme={{
|
|
39
|
-
dark: { primaryColor: "#b3a10c", secondaryColor: "#2b3c46" },
|
|
40
|
-
light: { primaryColor: "#2b3c46", secondaryColor: "#b3a10c" },
|
|
41
|
-
}}
|
|
42
|
-
*/
|
|
43
|
-
muiPremiumKey="YOUR_MUI_PREMIUM_KEY"
|
|
44
|
-
/>
|
|
45
|
-
);
|
|
46
|
-
```
|
|
47
|
-
|
|
48
|
-
- [ ] then go to the root of your project and then run the following command
|
|
49
|
-
|
|
50
|
-
```javascript
|
|
51
|
-
npm run dev
|
|
1
|
+
**UI Base** is a React JS template designed for quickly scaffolding robust, production-ready Enterprise Applications Interface. It incorporates enterprise-grade architectural patterns and integrates a suite of essential features to accelerate development, including:
|
|
2
|
+
|
|
3
|
+
- A modular, layered architecture with a clean separation of concerns and industry-standard project structure.
|
|
4
|
+
|
|
5
|
+
- [ ] Create new react project using vite.
|
|
6
|
+
|
|
7
|
+
```javascript
|
|
8
|
+
npm create vite@latest YOUR_APP_NAME //choose typescript as template
|
|
9
|
+
cd YOUR_APP_NAME
|
|
10
|
+
npm install
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
- [ ] Install the UI Base Dependency.
|
|
14
|
+
|
|
15
|
+
```javascript
|
|
16
|
+
npm install @asaleh37/ui-base --force
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
- [ ] replace the content of the file src/main.tsx
|
|
20
|
+
|
|
21
|
+
```javascript
|
|
22
|
+
import { BaseApp } from "@asaleh37/ui-base";
|
|
23
|
+
import { createRoot } from "react-dom/client";
|
|
24
|
+
|
|
25
|
+
createRoot(document.getElementById("root")!).render(
|
|
26
|
+
<BaseApp
|
|
27
|
+
apiBaseUrl="YOUR_API_URL"
|
|
28
|
+
appLogo={"YOUR_APP_LOGO_PATH"}
|
|
29
|
+
appName="YOUR_APP_NAME"
|
|
30
|
+
appVersion="YOUR_APP_VERSION"
|
|
31
|
+
businessCommonStoresMetaData={{}}
|
|
32
|
+
businessNavigationItems={[]}
|
|
33
|
+
businessReduxReducers={{}}
|
|
34
|
+
businessRoutes={[]}
|
|
35
|
+
documentTitle="YOUR_HTML_DOCUMENT_TITLE"
|
|
36
|
+
enableAdministrationModule={true} // to enable administration module or not
|
|
37
|
+
/* // To Change APP Coloring Theme modify the following colors
|
|
38
|
+
appTheme={{
|
|
39
|
+
dark: { primaryColor: "#b3a10c", secondaryColor: "#2b3c46" },
|
|
40
|
+
light: { primaryColor: "#2b3c46", secondaryColor: "#b3a10c" },
|
|
41
|
+
}}
|
|
42
|
+
*/
|
|
43
|
+
muiPremiumKey="YOUR_MUI_PREMIUM_KEY"
|
|
44
|
+
/>
|
|
45
|
+
);
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
- [ ] then go to the root of your project and then run the following command
|
|
49
|
+
|
|
50
|
+
```javascript
|
|
51
|
+
npm run dev
|
|
52
52
|
```
|
package/dist/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
"use strict";var e=require("react/jsx-runtime"),t=require("react-redux"),i=require("@fortawesome/fontawesome-svg-core"),o=require("@fortawesome/free-brands-svg-icons"),a=require("@fortawesome/free-regular-svg-icons"),r=require("@fortawesome/free-solid-svg-icons");require("react-toastify/dist/ReactToastify.css");var n=require("@mui/material"),d=require("@emotion/react"),l=require("react"),s=require("@mui/material/styles"),p=require("@mui/material/CssBaseline"),c=require("@mui/material/AppBar"),u=require("@mui/material/Toolbar"),m=require("@fortawesome/react-fontawesome"),T=require("@reduxjs/toolkit"),A=require("react-toastify"),_=require("axios"),f=require("i18next"),I=require("react-i18next"),E=require("@mui/material/List"),O=require("@mui/material/Card"),N=require("@mui/material/CardHeader"),y=require("@mui/material/ListItemText"),h=require("@mui/material/ListItemIcon"),R=require("@mui/material/Checkbox"),L=require("@mui/material/Button"),C=require("@mui/material/Divider"),D=require("@mui/x-date-pickers"),g=require("@mui/x-date-pickers/AdapterMoment"),P=require("moment"),M=require("zod"),x=require("react-hook-form"),b=require("@hookform/resolvers/zod"),S=require("react-router-dom"),U=require("@mui/material/CardActions"),F=require("@mui/material/CardContent"),w=require("@mui/material/CardMedia"),v=require("@mui/material/Typography"),B=require("@mui/x-data-grid-premium"),k=require("@mui/x-charts"),j=require("@mui/material/LinearProgress"),G=require("@mui/material/Box"),W=require("@mui/x-charts/PieChart"),Y=require("@mui/material/IconButton"),V=require("@mui/material/Drawer"),q=require("@react-spring/web"),K=require("@mui/material/Collapse"),H=require("@mui/x-tree-view/RichTreeView"),z=require("@mui/x-tree-view/TreeItem"),Q=require("@mui/x-tree-view/useTreeItem2"),Z=require("@mui/x-tree-view/TreeItem2"),$=require("@mui/x-tree-view/TreeItem2Icon"),X=require("@mui/x-tree-view/TreeItem2Provider"),J=require("@mui/x-tree-view/TreeItem2DragAndDropOverlay"),ee=require("stylis-plugin-rtl"),te=require("stylis"),ie=require("@emotion/cache"),oe=require("@emotion/styled"),ae=require("@mui/material/colors"),re=require("@mui/material/SwipeableDrawer"),ne=require("@mui/x-license"),de=require("@mui/lab"),le=require("@mui/x-tree-view/models");function se(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var o=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,o.get?o:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var pe=se(l),ce=se(M);!function(e,t){void 0===t&&(t={});var i=t.insertAt;if("undefined"!=typeof document){var o=document.head||document.getElementsByTagName("head")[0],a=document.createElement("style");a.type="text/css","top"===i&&o.firstChild?o.insertBefore(a,o.firstChild):o.appendChild(a),a.styleSheet?a.styleSheet.cssText=e:a.appendChild(document.createTextNode(e))}}("html,\r\nbody {\r\n height: 100vh;\r\n margin: 0;\r\n padding: 0;\r\n}\r\n\r\n#root {\r\n height: 100vh;\r\n display: flex;\r\n flex-direction: column;\r\n align-items: center;\r\n justify-content: center;\r\n overflow: hidden;\r\n}\r\n\r\n.red-row {\r\n background-color: #f0d8d8;\r\n}\r\n");const ue=(e=768)=>{const[t,i]=l.useState(window.innerWidth<e);return l.useEffect((()=>{const t=()=>i(window.innerWidth<e);return window.addEventListener("resize",t),()=>window.removeEventListener("resize",t)}),[e]),t},me=350,Te={themeMode:localStorage.getItem("themeMode")||"light",appDirection:"ar"==localStorage.getItem("language")?"rtl":"ltr"},Ae=T.createSlice({name:"AppLayout",initialState:Te,reducers:{setThemeMode:(e,t)=>{e.themeMode=t.payload},setAppDirection:(e,t)=>{e.appDirection=t.payload}}}),_e=Ae.actions;var fe=Ae.reducer;const Ie=T.createSlice({name:"loadingMask",initialState:{value:{isOpened:!1,message:null}},reducers:{showLoadingMask:(e,t)=>{e.value.isOpened=!0,e.value.message=t.payload},hideLoadingMask:e=>{e.value.isOpened=!1,e.value.message=null}}}),{showLoadingMask:Ee,hideLoadingMask:Oe}=Ie.actions;var Ne=Ie.reducer;const ye=()=>{const e=t.useDispatch();return{show:t=>{e(Ee(t))},hide:()=>{e(Oe())}}},he=T.createSlice({name:"UserSession",initialState:{value:{isAuthenticated:null,authorities:[]}},reducers:{setAuthenticated:(e,t)=>{e.value=t.payload},setUnAuthenticated:e=>{e.value={isAuthenticated:!1,authorities:[]}}}}),Re=he.actions;var Le=he.reducer;const Ce=()=>{const e=ye(),i=t.useDispatch(),o=t.useSelector((e=>e.AppInfo.value.apiBaseUrl)),a=_.create({baseURL:o,timeout:6e5,withCredentials:!0});a.defaults.withCredentials=!0,a.interceptors.response.use((e=>e),(e=>{if(e&&(e.response&&(e.response.status&&401===e.response.status)))i(Re.setUnAuthenticated()),A.toast.error("your session is now expired, you need to login again",{autoClose:!1});else if(e&&(e.response&&(e.response.status&&403===e.response.status)))A.toast.error("you aren't authorized to process this request");else if(e&&(e.response&&(e.response.status&&500===e.response.status)))if(e.response.data instanceof Blob){e.response.data.text().then((e=>{A.toast.error(e)}))}else A.toast.error(e.response.data);else A.toast.error("failed to communicate with the server ... try again later");return"ERROR"}));return{handleGetRequest:async t=>{void 0!==t.showMask&&null!=t.showMask&&!0===t.showMask&&e.show(t.loadingMessage);const i=await a.get(t.endPointURI,{params:{...t.parameters},withCredentials:!0,headers:t.headers,responseType:t?.responseType});return void 0!==t.showMask&&null!=t.showMask&&!0===t.showMask&&e.hide(),"ERROR"!==i?(void 0!==t.successCallBkFn&&null!=t.successCallBkFn&&t.successCallBkFn(i),i):(void 0!==t.failureCallBkFn&&null!=t.failureCallBkFn&&t.failureCallBkFn(i),"ERROR")},handlePostRequest:async t=>{void 0!==t.showMask&&null!=t.showMask&&!0===t.showMask&&e.show(t.loadingMessage);let i=await a.post(t.endPointURI,t.data,{params:t.parameters,responseType:t?.responseType,headers:t?.headers});return void 0!==t.showMask&&null!=t.showMask&&!0===t.showMask&&e.hide(),"ERROR"!==i?(void 0!==t.successCallBkFn&&null!=t.successCallBkFn&&t.successCallBkFn(i),i):(void 0!==t.failureCallBkFn&&null!=t.failureCallBkFn&&t.failureCallBkFn(i),"ERROR")},handleDeleteRequest:async t=>{void 0!==t.showMask&&null!=t.showMask&&!0===t.showMask&&e.show(t.loadingMessage);let i=await a.delete(t.endPointURI,{params:{...t.parameters},responseType:t?.responseType,headers:t?.headers});return void 0!==t.showMask&&null!=t.showMask&&!0===t.showMask&&e.hide(),"ERROR"!==i?(void 0!==t.successCallBkFn&&null!=t.successCallBkFn&&t.successCallBkFn(i),i):(void 0!==t.failureCallBkFn&&null!=t.failureCallBkFn&&t.failureCallBkFn(i),"ERROR")},HandleDownloadHTTPPostPDF:async(t={endPointURI:"",parameters:{},data:{}})=>{void 0!==t.showMask&&null!=t.showMask&&!0===t.showMask&&e.show(t.loadingMessage);const i=await a.post(t.endPointURI,t.data,{responseType:"blob"});return void 0!==t.showMask&&null!=t.showMask&&!0===t.showMask&&e.hide(),"ERROR"!==i?(void 0!==t.successCallBkFn&&null!=t.successCallBkFn&&t.successCallBkFn(i),i):(void 0!==t.failureCallBkFn&&null!=t.failureCallBkFn&&t.failureCallBkFn(i),"ERROR")},handleUploadRequest:async t=>{if(null===t.files||0===t.files.length)return A.toast.error("You must add files to upload"),"ERROR";const i=new FormData;for(const e of t.files)i.append("files",e);void 0!==t.showMask&&null!=t.showMask&&!0===t.showMask&&e.show(t.loadingMessage);let o=await a.post(t.endPointURI,i,{params:t?.parameters,headers:{"Content-Type":"multipart/form-data"}});return void 0!==t.showMask&&null!=t.showMask&&!0===t.showMask&&e.hide(),"ERROR"!==o?(void 0!==t.successCallBkFn&&null!=t.successCallBkFn&&t.successCallBkFn(o),o):(void 0!==t.failureCallBkFn&&null!=t.failureCallBkFn&&t.failureCallBkFn(o),"ERROR")}}},De=t=>{const[i,o]=l.useState(!1),{t:a}=I.useTranslation();return{ConfirmationWindow:()=>e.jsxs(n.Dialog,{open:i,children:[e.jsx(n.DialogTitle,{children:t.title}),e.jsx(n.DialogContent,{children:e.jsx(n.DialogContentText,{children:t.body})}),e.jsxs(n.DialogActions,{children:[e.jsx(n.Button,{variant:"contained",color:"primary",onClick:()=>{o(!1)},children:a("NO_LABEL")}),e.jsx(n.Button,{variant:"contained",color:"error",onClick:()=>{t.onConfirmationCallBk(),o(!1)},autoFocus:!0,children:a("YES_LABEL")})]})]}),open:i,setOpen:o}},ge=()=>{const e=t.useSelector((e=>e.UserSession)),i=e.value;return{UserSession:e,isUserAuthorized:t=>{if(e?.value?.authorities)for(let i of e.value.authorities){if("DEVELOPMENT_ADMIN"===t&&("DEVELOPMENT_ADMIN"===i?.authority||"ORGANIZATION_ADMIN"===i?.authority))return!0;if("ORGANIZATION_ADMIN"===t&&"ORGANIZATION_ADMIN"===i?.authority)return!0;if("DEVELOPMENT_ADMIN"!==t&&"ORGANIZATION_ADMIN"!==t&&("ORGANIZATION_ADMIN"===i?.authority||"DEVELOPMENT_ADMIN"===i?.authority||"SYSTEM_ADMIN"===i?.authority||i?.authority===t))return!0}return!1},UserInfo:i}},Pe=t=>{const[i,o]=l.useState(!1);return{windowState:i,setWindowState:o,Window:a=>e.jsx(n.Modal,{open:i,sx:{zIndex:e=>e.zIndex.drawer},onClose:()=>{!i&&t?.onCloseCallBack&&t.onCloseCallBack()},children:e.jsxs(n.Box,{sx:{position:"absolute",top:"50%",left:"50%",maxHeight:"90%",transform:"translate(-50%, -50%)",height:t?.height||"80%",width:t?.width||"90%",minWidth:t.minWidth||400,minHeight:t.minHeight||200,overflow:"hidden",bgcolor:"modalBackground.main",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"flex-start"},children:[e.jsx(n.AppBar,{position:"static",children:e.jsxs(n.Toolbar,{variant:"dense",children:[e.jsx(m.FontAwesomeIcon,{icon:t?.windowIcon||"window-maximize",style:{marginRight:5}}),e.jsx(n.Typography,{variant:"h6",color:"inherit",component:"div",children:t?.windowTitle||"window"}),e.jsx("div",{style:{flexGrow:1}}),e.jsx(n.IconButton,{onClick:()=>{o(!1),null!=t.onCloseCallBack&&null!=t.onCloseCallBack&&t.onCloseCallBack()},color:"secondary",children:e.jsx(m.FontAwesomeIcon,{icon:"xmark-square"})})]})}),e.jsx(n.Paper,{sx:{display:"flex",flexDirection:"column",alignItems:"center",width:"100%",height:"100%",padding:1,overflow:"hidden"},children:a?.children})]})})}},Me=T.createSlice({name:"commonStores",initialState:{stores:{},storeKeys:[]},reducers:{setStoresMetaData:(e,t)=>{e.stores=t.payload,e.storeKeys=Object.keys(t.payload)},setStoreData:(e,t)=>{e.stores[t.payload.storeKey].data=t.payload.data}}}),{setStoreData:xe,setStoresMetaData:be}=Me.actions;var Se=Me.reducer;const Ue=e=>{const i=t.useSelector((e=>e.commonStores.stores)),o=t.useDispatch(),a=ge(),{handleGetRequest:r,handlePostRequest:n,handleDeleteRequest:d}=Ce();return{reloadData:async t=>{if(e?.commonStoreKey){const t=Object.keys(i);for(const n of t)if(n===e.commonStoreKey&&(void 0===i[n]?.authority||null===i[n]?.authority||a.isUserAuthorized(i[n]?.authority))&&""!=i[n]?.url){await r({endPointURI:i[n].url,showMask:!1,successCallBkFn:t=>{o(xe({storeKey:n,data:t.data})),e.setData(t.data)},failureCallBkFn:()=>{o(xe({storeKey:n,data:[]})),e.setData([])}});break}}else e?.findAll&&await r({endPointURI:e.findAll,showMask:!0,parameters:t||{},successCallBkFn:t=>{e.setData(t.data)}})},loadRecordById:async t=>{let i=null;if(e?.findById){const o={};o[e?.findByIdParamName||"id"]=t,await r({endPointURI:e.findById,showMask:!0,parameters:o,successCallBkFn:e=>{i=e.data}})}return i},saveRecord:async t=>{let i=null;return e?.save&&await n({endPointURI:e.save,data:t,showMask:!0,successCallBkFn:e=>{i=e.data}}),i},deleteRecordById:async t=>{let i=!0;if(e?.deleteById){const o={};o[e?.deleteByIdParamName||"id"]=t,await d({endPointURI:e.deleteById,showMask:!0,parameters:o,successCallBkFn:()=>{i=!0},failureCallBkFn:()=>{i=!1}})}return i}}},Fe=t=>{const{t:i}=I.useTranslation();return e.jsx(n.TextField,{...t,slotProps:{inputLabel:{shrink:!0}},label:e.jsx(e.Fragment,{children:t?.label?i(t.label):""})})};function we(e,t){return e.filter((e=>-1===t.indexOf(e)))}function ve(e,t){return e.filter((e=>-1!==t.indexOf(e)))}const Be=({valueField:t="id",displayField:i="name",options:o=[],selectedOptions:a=[],setSelection:r})=>{const[d,l]=pe.useState([]),[s,p]=pe.useState([]),[c,u]=pe.useState([]),[m,T]=pe.useState(""),[A,_]=pe.useState(""),f=ve(d,s),I=ve(d,c);pe.useEffect((()=>{o&&p([...o])}),[o]),pe.useEffect((()=>{a&&u([...a])}),[a]);const D=e=>()=>{const t=d.indexOf(e),i=[...d];-1===t?i.push(e):i.splice(t,1),l(i)},g=e=>ve(d,e).length,P=e=>()=>{var t,i;g(e)===e.length?l(we(d,e)):l((t=d,i=e,[...t,...we(i,t)]))},M=(o,a,r)=>{const l=a.filter((e=>{if(e[i]){const t=e[i];if("left"===r&&t.toLocaleLowerCase().includes(m.toLocaleLowerCase()))return!0;if("right"===r&&t.toLocaleLowerCase().includes(A.toLocaleLowerCase()))return!0}return!1}));return e.jsxs(O,{sx:{height:"100%"},children:[e.jsx(N,{sx:{px:2,py:1},avatar:e.jsx(R,{onClick:P(l),checked:g(l)===l.length&&0!==l.length,indeterminate:g(l)!==l.length&&0!==g(l),disabled:0===l.length,inputProps:{"aria-label":"all items selected"}}),title:o,subheader:`${g(a)} / ${a.length} Selected`}),e.jsx(n.Box,{sx:{width:"100%",padding:1},children:e.jsx(Fe,{fullWidth:!0,label:"search",value:"left"===r?m:A,onChange:e=>{"left"===r?T(e.target.value):_(e.target.value)}})}),e.jsx(C,{}),e.jsx(E,{sx:{width:"100%",height:"100%",bgcolor:"secondary",overflow:"auto"},dense:!0,component:"div",role:"list",children:l.map((o=>(o[t],e.jsxs(n.ListItemButton,{role:"listitem",onClick:D(o),sx:{cursor:"pointer"},children:[e.jsx(h,{children:e.jsx(R,{checked:-1!==d.indexOf(o),tabIndex:-1,disableRipple:!0})}),e.jsx(y,{id:o[t],primary:o[i]})]},o[t]))))})]})};return e.jsxs(n.Grid2,{container:!0,spacing:2,sx:{flexGrow:1,overflow:"auto",margin:1,display:"flex",width:"100%"},justifyContent:"center",alignItems:"center",children:[e.jsx(n.Grid2,{sx:{height:"100%",flex:1},children:M("Available Items",s,"left")}),e.jsx(n.Grid2,{children:e.jsxs(n.Grid2,{container:!0,direction:"column",alignItems:"center",children:[e.jsx(L,{sx:{my:.5},variant:"outlined",size:"small",onClick:()=>{u((e=>{let t=c.concat(f);return r(t),t})),p(we(s,f)),l(we(d,f))},disabled:0===f.length,"aria-label":"move selected right",children:">"}),e.jsx(L,{sx:{my:.5},variant:"outlined",size:"small",onClick:()=>{p(s.concat(I)),u((e=>{let t=we(c,I);return r(t),t})),l(we(d,I))},disabled:0===I.length,"aria-label":"move selected left",children:"<"})]})}),e.jsx(n.Grid2,{sx:{height:"100%",flex:1},children:M("Currently Selected",c,"right")})]})},ke=t=>{const{t:i}=I.useTranslation();return e.jsx(n.FormControlLabel,{sx:t.sx,disabled:t.disabled||!1,required:t.required||!1,control:e.jsx(n.Checkbox,{checked:t?.checkedValue==t.value||"true"===t.value||"1"==t.value,onChange:e=>{void 0!==t.onChangeCallBack&&null!=t.onChangeCallBack&&(e.target.checked?void 0!==t.checkedValue&&null!=t.checkedValue?t.onChangeCallBack(t.checkedValue):t.onChangeCallBack(!0):void 0!==t.unCheckedValue&&null!=t.unCheckedValue?t.onChangeCallBack(t.unCheckedValue):t.onChangeCallBack(!1))}}),label:i(t.label)})},je=i=>{const o=t.useSelector((e=>e.AppLayout)),{t:a}=I.useTranslation();return e.jsx(n.Autocomplete,{sx:i.sx,value:(e=>{for(let t of i.options)if(t[i.valueField]==e)return t;return null})(i.value),options:i.options,disabled:i.disabled,onChange:(e,t)=>{if(void 0!==i.onChangeCallBack&&null!=i.onChangeCallBack)if(null!=t){let e=t[i.valueField];i.onChangeCallBack(e,t)}else i.onChangeCallBack(null,null)},clearOnBlur:!0,handleHomeEndKeys:!0,getOptionLabel:e=>null!=e?a(e[i.displayField]):"",renderOption:(t,o)=>e.jsx("li",{...t,children:null!=o?a(o[i.displayField]):""}),slots:{popper:t=>e.jsx(n.Popper,{...t,style:{...t.style,direction:o.appDirection}})},renderInput:t=>e.jsx(n.TextField,{...t,required:i.required||!1,variant:"outlined",InputLabelProps:{shrink:!0},label:a(i.label),error:null!=i.errorMessage&&void 0!==i.errorMessage,helperText:null!=i.errorMessage&&void 0!==i.errorMessage?a(i.errorMessage):""})})},Ge="YYYY-MM-DD",We="YYYY-MM-DD HH:mm:ss",Ye="#37505C",Ve="#ff6d00",qe="#ea690e",Ke="#74776B",He=t=>{const{t:i}=I.useTranslation();return e.jsx(D.LocalizationProvider,{dateAdapter:g.AdapterMoment,children:e.jsx(D.DatePicker,{value:null!=t.value&&void 0!==t.value&&""!==t.value?P(t.value,t?.format||Ge):null,sx:t.sx,label:i(t.label),format:t?.format||Ge,disabled:t.disabled,onChange:e=>{let i=null;null!=e&&e.isValid()&&(i=e.format(t?.format||Ge)),void 0!==t.onChangeCallBack&&null!=t.onChangeCallBack&&t.onChangeCallBack(i)},slotProps:{textField:{InputLabelProps:{shrink:!0},variant:"outlined",required:t.required,error:void 0!==t.errorMessage&&null!=t.errorMessage,helperText:void 0!==t.errorMessage&&null!=t.errorMessage?e.jsx(e.Fragment,{children:i(t.errorMessage)}):e.jsx(e.Fragment,{})}}})})},ze=t=>{const{t:i}=I.useTranslation();return e.jsx(D.LocalizationProvider,{dateAdapter:g.AdapterMoment,children:e.jsx(D.DateTimePicker,{value:null!=t.value&&void 0!==t.value&&""!==t.value?P(t.value,t?.format||We):null,label:i(t.label),sx:t.sx,format:t?.format||We,disabled:t.disabled,onChange:e=>{let i=null;null!=e&&e.isValid()&&(i=e.format(t?.format||We)),void 0!==t.onChangeCallBack&&null!=t.onChangeCallBack&&t.onChangeCallBack(i)},slotProps:{textField:{variant:"outlined",required:t.required,error:void 0!==t.errorMessage&&null!=t.errorMessage,helperText:void 0!==t.errorMessage&&null!=t.errorMessage?e.jsx(e.Fragment,{children:i(t.errorMessage)}):e.jsx(e.Fragment,{})}}})})},Qe=i=>{const o=t.useSelector((e=>e.AppLayout)),a=ge(),[r,n]=l.useState([]),{handleGetRequest:d}=Ce();return l.useEffect((()=>{i.lookupType&&(async()=>{await d({endPointURI:"api/v1/public/system/lookup",showMask:!0,parameters:{lookupType:i.lookupType},successCallBkFn:e=>{n(e.data)},failureCallBkFn:()=>{n([])}})})()}),[i.lookupType,a.UserSession]),e.jsx(je,{...i,options:r,displayField:"ltr"===o.appDirection?"lookupEnDisplay":"lookupArDisplay",valueField:"lookupValue"})},Ze=t=>({...t,type:"string",renderEditCell:t=>e.jsx(ze,{sx:{width:"100%"},label:"",value:t.value,onChangeCallBack:e=>{t.api.setEditCellValue({id:t.id,field:t.field,value:e})}}),valueParser:(e,t,i)=>{let o=null;return null!==e&&(o=P(e).format(We)),o},valueFormatter:(e,t,i)=>t[i.field]}),$e=t=>({...t,type:"custom",valueGetter:e=>e?e+"":e,renderCell:t=>{let i=null;try{i=t.colDef.options.find((e=>e[t.colDef.valueField]==t.value))}catch(e){}return e.jsx("div",{children:null!=i?i[t.colDef.displayField]:t.value})},renderEditCell:t=>e.jsx(je,{...t,sx:{width:"100%"},options:t.colDef.options,valueField:t.colDef.valueField,displayField:t.colDef.displayField,onChangeCallBack:(e,i)=>{null===e&&t.api.setEditCellValue({id:t.id,field:t.field,value:null}),t.api.setEditCellValue({id:t.id,field:t.field,value:e+""})}})}),Xe=t=>({...t,type:"custom",valueGetter:e=>null==e||null==e?null:e,renderCell:i=>{const o=i?.value;return o===t.checkedValue||"true"===o||1===o||!0===o?e.jsx(m.FontAwesomeIcon,{icon:"check",color:"green"}):e.jsx(m.FontAwesomeIcon,{icon:"xmark",color:"red"})},renderEditCell:i=>e.jsx(ke,{...i,checkedValue:t?.checkedValue||!0,unCheckedValue:t?.unCheckedValue||!1,onChangeCallBack:e=>{i.api.setEditCellValue({id:i.id,field:i.field,value:e})}})}),Je=e=>{const t=[];if("field"===e.type&&"props"===e.mode&&e?.props)t.push(e.props);else if("group"===e.type&&e?.props&&e?.props?.elements)for(const i of e.props.elements)t.push(...Je(i));return t},et=e=>{const t=[];for(const i of e)t.push(...Je(i));return t},tt=(t,i,o)=>{const a=[];for(const n of t)if("text"===n?.fieldType||"number"===n?.fieldType){const e={...n?.gridProps?.muiProps,editable:null!=n?.gridProps?.muiProps?.editable?n?.gridProps?.muiProps?.editable:i,type:"number"==n?.fieldType?"number":"string",field:n?.fieldName,headerName:o(n?.fieldLabel||n?.fieldName),headerAlign:"center",align:"center",hidden:n?.hidden,searchable:n?.gridProps?.searchable,flex:1,minWidth:200};a.push(e)}else if("date"===n?.fieldType){const t=(r={...n?.gridProps?.muiProps,editable:null!=n?.gridProps?.muiProps?.editable?n?.gridProps?.muiProps?.editable:i,field:n?.fieldName,headerName:o(n?.fieldLabel||n?.fieldName),headerAlign:"center",align:"center",hidden:n?.hidden,searchable:n?.gridProps?.searchable,flex:1,minWidth:200},{...r,type:"string",renderEditCell:t=>e.jsx(He,{sx:{width:"100%"},label:"",value:t.value,onChangeCallBack:e=>{t.api.setEditCellValue({id:t.id,field:t.field,value:e})}}),valueParser:(e,t,i)=>{let o=null;return null!==e&&(o=P(e).format(Ge)),o},valueFormatter:(e,t,i)=>t[i.field]});a.push(t)}else if("datetime"===n?.fieldType){const e=Ze({...n?.gridProps?.muiProps,editable:null!=n?.gridProps?.muiProps?.editable?n?.gridProps?.muiProps?.editable:i,field:n?.fieldName,headerName:o(n?.fieldLabel||n?.fieldName),headerAlign:"center",align:"center",hidden:n?.hidden,searchable:n?.gridProps?.searchable,flex:1,minWidth:200});a.push(e)}else if("checkbox"===n?.fieldType){const e=Xe({...n?.gridProps?.muiProps,editable:null!=n?.gridProps?.muiProps?.editable?n?.gridProps?.muiProps?.editable:i,field:n?.fieldName,headerName:o(n?.fieldLabel||n?.fieldName),headerAlign:"center",align:"center",hidden:n?.hidden,searchable:n?.gridProps?.searchable,checkedValue:n?.checkedValue,unCheckedValue:n?.unCheckedValue,width:150});a.push(e)}else if("combobox"===n?.fieldType){const e=$e({...n?.gridProps?.muiProps,editable:null!=n?.gridProps?.muiProps?.editable?n?.gridProps?.muiProps?.editable:i,field:n?.fieldName,headerName:o(n?.fieldLabel||n?.fieldName),headerAlign:"center",align:"center",hidden:n?.hidden,searchable:n?.gridProps?.searchable,valueField:n?.optionValueField||"value",displayField:n?.optionDisplayField||"display",options:n?.options||[],flex:1,minWidth:200});a.push(e)}else if("lookup"===n?.fieldType){const e=$e({...n?.gridProps?.muiProps,editable:null!=n?.gridProps?.muiProps?.editable?n?.gridProps?.muiProps?.editable:i,lookupType:n?.lookupType,field:n?.fieldName,headerName:o(n?.fieldLabel||n?.fieldName),headerAlign:"center",align:"center",hidden:n?.hidden,searchable:n?.gridProps?.searchable,valueField:n?.optionValueField||"value",displayField:n?.optionDisplayField||"display",options:n?.options||[],flex:1,minWidth:200});a.push(e)}else{const e={field:n.fieldName,...n?.gridProps?.muiProps};a.push(e)}var r;return a},it=e=>{const t={};for(const i of e)if(i?.fieldName){const e=i.fieldName;"number"===i.fieldType?t[e]=!0===i?.required?ce.number({required_error:"This field is required",invalid_type_error:"This field must be a number"}):ce.number().optional().nullable():"checkbox"===i.fieldType?t[e]=!0===i?.required?ce.boolean({required_error:"This field is required"}):ce.boolean().optional().nullable():t[e]=!0===i?.required?ce.string({message:"This field is required"}).min(1,"This field is required"):ce.string().optional().nullable()}return t},ot=(e,t,i)=>{const o=[],a=[];if("exclude"===e.type&&0===e.ids.size)for(const e of t)o.push(e),a.push(e[i]);else if(e?.ids)for(const r of e.ids){const e=t.find((e=>e[i]===r));o.push(e),a.push(r)}return{selectedRecords:o,selectedRecordIds:a}};function at(e,...t){const i=new URL(`https://mui.com/production-error/?code=${e}`);return t.forEach((e=>i.searchParams.append("args[]",e))),`Minified MUI error #${e}; visit ${i} for the full message.`}function rt(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var nt,dt={exports:{}},lt={exports:{}},st={};var pt,ct,ut,mt,Tt,At,_t,ft,It,Et,Ot,Nt,yt,ht,Rt,Lt={};
|
|
1
|
+
"use strict";var e=require("react/jsx-runtime"),t=require("react-redux"),i=require("@fortawesome/fontawesome-svg-core"),o=require("@fortawesome/free-brands-svg-icons"),a=require("@fortawesome/free-regular-svg-icons"),r=require("@fortawesome/free-solid-svg-icons");require("react-toastify/dist/ReactToastify.css");var n=require("@mui/material"),d=require("@emotion/react"),l=require("react"),s=require("@mui/material/styles"),p=require("@mui/material/CssBaseline"),c=require("@mui/material/AppBar"),u=require("@mui/material/Toolbar"),m=require("@fortawesome/react-fontawesome"),T=require("@reduxjs/toolkit"),A=require("react-toastify"),_=require("axios"),f=require("i18next"),I=require("react-i18next"),E=require("@mui/material/List"),O=require("@mui/material/Card"),N=require("@mui/material/CardHeader"),y=require("@mui/material/ListItemText"),h=require("@mui/material/ListItemIcon"),R=require("@mui/material/Checkbox"),L=require("@mui/material/Button"),C=require("@mui/material/Divider"),D=require("@mui/x-date-pickers"),g=require("@mui/x-date-pickers/AdapterMoment"),P=require("moment"),M=require("zod"),x=require("react-hook-form"),b=require("@hookform/resolvers/zod"),S=require("react-router-dom"),U=require("@mui/material/CardActions"),F=require("@mui/material/CardContent"),w=require("@mui/material/CardMedia"),v=require("@mui/material/Typography"),B=require("@mui/x-data-grid-premium"),k=require("@mui/x-charts"),j=require("@mui/material/LinearProgress"),G=require("@mui/material/Box"),W=require("@mui/x-charts/PieChart"),Y=require("@mui/material/IconButton"),V=require("@mui/material/Drawer"),q=require("@react-spring/web"),K=require("@mui/material/Collapse"),H=require("@mui/x-tree-view/RichTreeView"),z=require("@mui/x-tree-view/TreeItem"),Q=require("@mui/x-tree-view/useTreeItem2"),Z=require("@mui/x-tree-view/TreeItem2"),$=require("@mui/x-tree-view/TreeItem2Icon"),X=require("@mui/x-tree-view/TreeItem2Provider"),J=require("@mui/x-tree-view/TreeItem2DragAndDropOverlay"),ee=require("stylis-plugin-rtl"),te=require("stylis"),ie=require("@emotion/cache"),oe=require("@emotion/styled"),ae=require("@mui/material/colors"),re=require("@mui/material/SwipeableDrawer"),ne=require("@mui/x-license"),de=require("@mui/lab"),le=require("@mui/x-tree-view/models");function se(e){var t=Object.create(null);return e&&Object.keys(e).forEach((function(i){if("default"!==i){var o=Object.getOwnPropertyDescriptor(e,i);Object.defineProperty(t,i,o.get?o:{enumerable:!0,get:function(){return e[i]}})}})),t.default=e,Object.freeze(t)}var pe=se(l),ce=se(M);!function(e,t){void 0===t&&(t={});var i=t.insertAt;if("undefined"!=typeof document){var o=document.head||document.getElementsByTagName("head")[0],a=document.createElement("style");a.type="text/css","top"===i&&o.firstChild?o.insertBefore(a,o.firstChild):o.appendChild(a),a.styleSheet?a.styleSheet.cssText=e:a.appendChild(document.createTextNode(e))}}("html,\nbody {\n height: 100vh;\n margin: 0;\n padding: 0;\n}\n\n#root {\n height: 100vh;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n overflow: hidden;\n}\n\n.red-row {\n background-color: #f0d8d8;\n}\n");const ue=(e=768)=>{const[t,i]=l.useState(window.innerWidth<e);return l.useEffect((()=>{const t=()=>i(window.innerWidth<e);return window.addEventListener("resize",t),()=>window.removeEventListener("resize",t)}),[e]),t},me=350,Te={themeMode:localStorage.getItem("themeMode")||"light",appDirection:"ar"==localStorage.getItem("language")?"rtl":"ltr"},Ae=T.createSlice({name:"AppLayout",initialState:Te,reducers:{setThemeMode:(e,t)=>{e.themeMode=t.payload},setAppDirection:(e,t)=>{e.appDirection=t.payload}}}),_e=Ae.actions;var fe=Ae.reducer;const Ie=T.createSlice({name:"loadingMask",initialState:{value:{isOpened:!1,message:null}},reducers:{showLoadingMask:(e,t)=>{e.value.isOpened=!0,e.value.message=t.payload},hideLoadingMask:e=>{e.value.isOpened=!1,e.value.message=null}}}),{showLoadingMask:Ee,hideLoadingMask:Oe}=Ie.actions;var Ne=Ie.reducer;const ye=()=>{const e=t.useDispatch();return{show:t=>{e(Ee(t))},hide:()=>{e(Oe())}}},he=T.createSlice({name:"UserSession",initialState:{value:{isAuthenticated:null,authorities:[]}},reducers:{setAuthenticated:(e,t)=>{e.value=t.payload},setUnAuthenticated:e=>{e.value={isAuthenticated:!1,authorities:[]}}}}),Re=he.actions;var Le=he.reducer;const Ce=()=>{const e=ye(),i=t.useDispatch(),o=t.useSelector((e=>e.AppInfo.value.apiBaseUrl)),a=_.create({baseURL:o,timeout:6e5,withCredentials:!0});a.defaults.withCredentials=!0,a.interceptors.response.use((e=>e),(e=>{if(e&&(e.response&&(e.response.status&&401===e.response.status)))i(Re.setUnAuthenticated()),A.toast.error("your session is now expired, you need to login again",{autoClose:!1});else if(e&&(e.response&&(e.response.status&&403===e.response.status)))A.toast.error("you aren't authorized to process this request");else if(e&&(e.response&&(e.response.status&&500===e.response.status)))if(e.response.data instanceof Blob){e.response.data.text().then((e=>{A.toast.error(e)}))}else A.toast.error(e.response.data);else A.toast.error("failed to communicate with the server ... try again later");return"ERROR"}));return{handleGetRequest:async t=>{void 0!==t.showMask&&null!=t.showMask&&!0===t.showMask&&e.show(t.loadingMessage);const i=await a.get(t.endPointURI,{params:{...t.parameters},withCredentials:!0,headers:t.headers,responseType:t?.responseType});return void 0!==t.showMask&&null!=t.showMask&&!0===t.showMask&&e.hide(),"ERROR"!==i?(void 0!==t.successCallBkFn&&null!=t.successCallBkFn&&t.successCallBkFn(i),i):(void 0!==t.failureCallBkFn&&null!=t.failureCallBkFn&&t.failureCallBkFn(i),"ERROR")},handlePostRequest:async t=>{void 0!==t.showMask&&null!=t.showMask&&!0===t.showMask&&e.show(t.loadingMessage);let i=await a.post(t.endPointURI,t.data,{params:t.parameters,responseType:t?.responseType,headers:t?.headers});return void 0!==t.showMask&&null!=t.showMask&&!0===t.showMask&&e.hide(),"ERROR"!==i?(void 0!==t.successCallBkFn&&null!=t.successCallBkFn&&t.successCallBkFn(i),i):(void 0!==t.failureCallBkFn&&null!=t.failureCallBkFn&&t.failureCallBkFn(i),"ERROR")},handleDeleteRequest:async t=>{void 0!==t.showMask&&null!=t.showMask&&!0===t.showMask&&e.show(t.loadingMessage);let i=await a.delete(t.endPointURI,{params:{...t.parameters},responseType:t?.responseType,headers:t?.headers});return void 0!==t.showMask&&null!=t.showMask&&!0===t.showMask&&e.hide(),"ERROR"!==i?(void 0!==t.successCallBkFn&&null!=t.successCallBkFn&&t.successCallBkFn(i),i):(void 0!==t.failureCallBkFn&&null!=t.failureCallBkFn&&t.failureCallBkFn(i),"ERROR")},HandleDownloadHTTPPostPDF:async(t={endPointURI:"",parameters:{},data:{}})=>{void 0!==t.showMask&&null!=t.showMask&&!0===t.showMask&&e.show(t.loadingMessage);const i=await a.post(t.endPointURI,t.data,{responseType:"blob"});return void 0!==t.showMask&&null!=t.showMask&&!0===t.showMask&&e.hide(),"ERROR"!==i?(void 0!==t.successCallBkFn&&null!=t.successCallBkFn&&t.successCallBkFn(i),i):(void 0!==t.failureCallBkFn&&null!=t.failureCallBkFn&&t.failureCallBkFn(i),"ERROR")},handleUploadRequest:async t=>{if(null===t.files||0===t.files.length)return A.toast.error("You must add files to upload"),"ERROR";const i=new FormData;for(const e of t.files)i.append("files",e);void 0!==t.showMask&&null!=t.showMask&&!0===t.showMask&&e.show(t.loadingMessage);let o=await a.post(t.endPointURI,i,{params:t?.parameters,headers:{"Content-Type":"multipart/form-data"}});return void 0!==t.showMask&&null!=t.showMask&&!0===t.showMask&&e.hide(),"ERROR"!==o?(void 0!==t.successCallBkFn&&null!=t.successCallBkFn&&t.successCallBkFn(o),o):(void 0!==t.failureCallBkFn&&null!=t.failureCallBkFn&&t.failureCallBkFn(o),"ERROR")}}},De=t=>{const[i,o]=l.useState(!1),{t:a}=I.useTranslation();return{ConfirmationWindow:()=>e.jsxs(n.Dialog,{open:i,children:[e.jsx(n.DialogTitle,{children:t.title}),e.jsx(n.DialogContent,{children:e.jsx(n.DialogContentText,{children:t.body})}),e.jsxs(n.DialogActions,{children:[e.jsx(n.Button,{variant:"contained",color:"primary",onClick:()=>{o(!1)},children:a("NO_LABEL")}),e.jsx(n.Button,{variant:"contained",color:"error",onClick:()=>{t.onConfirmationCallBk(),o(!1)},autoFocus:!0,children:a("YES_LABEL")})]})]}),open:i,setOpen:o}},ge=()=>{const e=t.useSelector((e=>e.UserSession)),i=e.value;return{UserSession:e,isUserAuthorized:t=>{if(e?.value?.authorities)for(let i of e.value.authorities){if("DEVELOPMENT_ADMIN"===t&&("DEVELOPMENT_ADMIN"===i?.authority||"ORGANIZATION_ADMIN"===i?.authority))return!0;if("ORGANIZATION_ADMIN"===t&&"ORGANIZATION_ADMIN"===i?.authority)return!0;if("DEVELOPMENT_ADMIN"!==t&&"ORGANIZATION_ADMIN"!==t&&("ORGANIZATION_ADMIN"===i?.authority||"DEVELOPMENT_ADMIN"===i?.authority||"SYSTEM_ADMIN"===i?.authority||i?.authority===t))return!0}return!1},UserInfo:i}},Pe=t=>{const[i,o]=l.useState(!1);return{windowState:i,setWindowState:o,Window:a=>e.jsx(n.Modal,{open:i,sx:{zIndex:e=>e.zIndex.drawer},onClose:()=>{!i&&t?.onCloseCallBack&&t.onCloseCallBack()},children:e.jsxs(n.Box,{sx:{position:"absolute",top:"50%",left:"50%",maxHeight:"90%",transform:"translate(-50%, -50%)",height:t?.height||"80%",width:t?.width||"90%",minWidth:t.minWidth||400,minHeight:t.minHeight||200,overflow:"hidden",bgcolor:"modalBackground.main",display:"flex",flexDirection:"column",alignItems:"center",justifyContent:"flex-start"},children:[e.jsx(n.AppBar,{position:"static",children:e.jsxs(n.Toolbar,{variant:"dense",children:[e.jsx(m.FontAwesomeIcon,{icon:t?.windowIcon||"window-maximize",style:{marginRight:5}}),e.jsx(n.Typography,{variant:"h6",color:"inherit",component:"div",children:t?.windowTitle||"window"}),e.jsx("div",{style:{flexGrow:1}}),e.jsx(n.IconButton,{onClick:()=>{o(!1),null!=t.onCloseCallBack&&null!=t.onCloseCallBack&&t.onCloseCallBack()},color:"secondary",children:e.jsx(m.FontAwesomeIcon,{icon:"xmark-square"})})]})}),e.jsx(n.Paper,{sx:{display:"flex",flexDirection:"column",alignItems:"center",width:"100%",height:"100%",padding:1,overflow:"hidden"},children:a?.children})]})})}},Me=T.createSlice({name:"commonStores",initialState:{stores:{},storeKeys:[]},reducers:{setStoresMetaData:(e,t)=>{e.stores=t.payload,e.storeKeys=Object.keys(t.payload)},setStoreData:(e,t)=>{e.stores[t.payload.storeKey].data=t.payload.data}}}),{setStoreData:xe,setStoresMetaData:be}=Me.actions;var Se=Me.reducer;const Ue=e=>{const i=t.useSelector((e=>e.commonStores.stores)),o=t.useDispatch(),a=ge(),{handleGetRequest:r,handlePostRequest:n,handleDeleteRequest:d}=Ce();return{reloadData:async t=>{if(e?.commonStoreKey){const t=Object.keys(i);for(const n of t)if(n===e.commonStoreKey&&(void 0===i[n]?.authority||null===i[n]?.authority||a.isUserAuthorized(i[n]?.authority))&&""!=i[n]?.url){await r({endPointURI:i[n].url,showMask:!1,successCallBkFn:t=>{o(xe({storeKey:n,data:t.data})),e.setData(t.data)},failureCallBkFn:()=>{o(xe({storeKey:n,data:[]})),e.setData([])}});break}}else e?.findAll&&await r({endPointURI:e.findAll,showMask:!0,parameters:t||{},successCallBkFn:t=>{e.setData(t.data)}})},loadRecordById:async t=>{let i=null;if(e?.findById){const o={};o[e?.findByIdParamName||"id"]=t,await r({endPointURI:e.findById,showMask:!0,parameters:o,successCallBkFn:e=>{i=e.data}})}return i},saveRecord:async t=>{let i=null;return e?.save&&await n({endPointURI:e.save,data:t,showMask:!0,successCallBkFn:e=>{i=e.data}}),i},deleteRecordById:async t=>{let i=!0;if(e?.deleteById){const o={};o[e?.deleteByIdParamName||"id"]=t,await d({endPointURI:e.deleteById,showMask:!0,parameters:o,successCallBkFn:()=>{i=!0},failureCallBkFn:()=>{i=!1}})}return i}}},Fe=t=>{const{t:i}=I.useTranslation();return e.jsx(n.TextField,{...t,slotProps:{inputLabel:{shrink:!0}},label:e.jsx(e.Fragment,{children:t?.label?i(t.label):""})})};function we(e,t){return e.filter((e=>-1===t.indexOf(e)))}function ve(e,t){return e.filter((e=>-1!==t.indexOf(e)))}const Be=({valueField:t="id",displayField:i="name",options:o=[],selectedOptions:a=[],setSelection:r})=>{const[d,l]=pe.useState([]),[s,p]=pe.useState([]),[c,u]=pe.useState([]),[m,T]=pe.useState(""),[A,_]=pe.useState(""),f=ve(d,s),I=ve(d,c);pe.useEffect((()=>{o&&p([...o])}),[o]),pe.useEffect((()=>{a&&u([...a])}),[a]);const D=e=>()=>{const t=d.indexOf(e),i=[...d];-1===t?i.push(e):i.splice(t,1),l(i)},g=e=>ve(d,e).length,P=e=>()=>{var t,i;g(e)===e.length?l(we(d,e)):l((t=d,i=e,[...t,...we(i,t)]))},M=(o,a,r)=>{const l=a.filter((e=>{if(e[i]){const t=e[i];if("left"===r&&t.toLocaleLowerCase().includes(m.toLocaleLowerCase()))return!0;if("right"===r&&t.toLocaleLowerCase().includes(A.toLocaleLowerCase()))return!0}return!1}));return e.jsxs(O,{sx:{height:"100%"},children:[e.jsx(N,{sx:{px:2,py:1},avatar:e.jsx(R,{onClick:P(l),checked:g(l)===l.length&&0!==l.length,indeterminate:g(l)!==l.length&&0!==g(l),disabled:0===l.length,inputProps:{"aria-label":"all items selected"}}),title:o,subheader:`${g(a)} / ${a.length} Selected`}),e.jsx(n.Box,{sx:{width:"100%",padding:1},children:e.jsx(Fe,{fullWidth:!0,label:"search",value:"left"===r?m:A,onChange:e=>{"left"===r?T(e.target.value):_(e.target.value)}})}),e.jsx(C,{}),e.jsx(E,{sx:{width:"100%",height:"100%",bgcolor:"secondary",overflow:"auto"},dense:!0,component:"div",role:"list",children:l.map((o=>(o[t],e.jsxs(n.ListItemButton,{role:"listitem",onClick:D(o),sx:{cursor:"pointer"},children:[e.jsx(h,{children:e.jsx(R,{checked:-1!==d.indexOf(o),tabIndex:-1,disableRipple:!0})}),e.jsx(y,{id:o[t],primary:o[i]})]},o[t]))))})]})};return e.jsxs(n.Grid2,{container:!0,spacing:2,sx:{flexGrow:1,overflow:"auto",margin:1,display:"flex",width:"100%"},justifyContent:"center",alignItems:"center",children:[e.jsx(n.Grid2,{sx:{height:"100%",flex:1},children:M("Available Items",s,"left")}),e.jsx(n.Grid2,{children:e.jsxs(n.Grid2,{container:!0,direction:"column",alignItems:"center",children:[e.jsx(L,{sx:{my:.5},variant:"outlined",size:"small",onClick:()=>{u((e=>{let t=c.concat(f);return r(t),t})),p(we(s,f)),l(we(d,f))},disabled:0===f.length,"aria-label":"move selected right",children:">"}),e.jsx(L,{sx:{my:.5},variant:"outlined",size:"small",onClick:()=>{p(s.concat(I)),u((e=>{let t=we(c,I);return r(t),t})),l(we(d,I))},disabled:0===I.length,"aria-label":"move selected left",children:"<"})]})}),e.jsx(n.Grid2,{sx:{height:"100%",flex:1},children:M("Currently Selected",c,"right")})]})},ke=t=>{const{t:i}=I.useTranslation();return e.jsx(n.FormControlLabel,{sx:t.sx,disabled:t.disabled||!1,required:t.required||!1,control:e.jsx(n.Checkbox,{checked:t?.checkedValue==t.value||"true"===t.value||"1"==t.value,onChange:e=>{void 0!==t.onChangeCallBack&&null!=t.onChangeCallBack&&(e.target.checked?void 0!==t.checkedValue&&null!=t.checkedValue?t.onChangeCallBack(t.checkedValue):t.onChangeCallBack(!0):void 0!==t.unCheckedValue&&null!=t.unCheckedValue?t.onChangeCallBack(t.unCheckedValue):t.onChangeCallBack(!1))}}),label:i(t.label)})},je=i=>{const o=t.useSelector((e=>e.AppLayout)),{t:a}=I.useTranslation();return e.jsx(n.Autocomplete,{sx:i.sx,value:(e=>{for(let t of i.options)if(t[i.valueField]==e)return t;return null})(i.value),options:i.options,disabled:i.disabled,onChange:(e,t)=>{if(void 0!==i.onChangeCallBack&&null!=i.onChangeCallBack)if(null!=t){let e=t[i.valueField];i.onChangeCallBack(e,t)}else i.onChangeCallBack(null,null)},clearOnBlur:!0,handleHomeEndKeys:!0,getOptionLabel:e=>null!=e?a(e[i.displayField]):"",renderOption:(t,o)=>e.jsx("li",{...t,children:null!=o?a(o[i.displayField]):""}),slots:{popper:t=>e.jsx(n.Popper,{...t,style:{...t.style,direction:o.appDirection}})},renderInput:t=>e.jsx(n.TextField,{...t,required:i.required||!1,variant:"outlined",InputLabelProps:{shrink:!0},label:a(i.label),error:null!=i.errorMessage&&void 0!==i.errorMessage,helperText:null!=i.errorMessage&&void 0!==i.errorMessage?a(i.errorMessage):""})})},Ge="YYYY-MM-DD",We="YYYY-MM-DD HH:mm:ss",Ye="#37505C",Ve="#ff6d00",qe="#ea690e",Ke="#74776B",He=t=>{const{t:i}=I.useTranslation();return e.jsx(D.LocalizationProvider,{dateAdapter:g.AdapterMoment,children:e.jsx(D.DatePicker,{value:null!=t.value&&void 0!==t.value&&""!==t.value?P(t.value,t?.format||Ge):null,sx:t.sx,label:i(t.label),format:t?.format||Ge,disabled:t.disabled,onChange:e=>{let i=null;null!=e&&e.isValid()&&(i=e.format(t?.format||Ge)),void 0!==t.onChangeCallBack&&null!=t.onChangeCallBack&&t.onChangeCallBack(i)},slotProps:{textField:{InputLabelProps:{shrink:!0},variant:"outlined",required:t.required,error:void 0!==t.errorMessage&&null!=t.errorMessage,helperText:void 0!==t.errorMessage&&null!=t.errorMessage?e.jsx(e.Fragment,{children:i(t.errorMessage)}):e.jsx(e.Fragment,{})}}})})},ze=t=>{const{t:i}=I.useTranslation();return e.jsx(D.LocalizationProvider,{dateAdapter:g.AdapterMoment,children:e.jsx(D.DateTimePicker,{value:null!=t.value&&void 0!==t.value&&""!==t.value?P(t.value,t?.format||We):null,label:i(t.label),sx:t.sx,format:t?.format||We,disabled:t.disabled,onChange:e=>{let i=null;null!=e&&e.isValid()&&(i=e.format(t?.format||We)),void 0!==t.onChangeCallBack&&null!=t.onChangeCallBack&&t.onChangeCallBack(i)},slotProps:{textField:{variant:"outlined",required:t.required,error:void 0!==t.errorMessage&&null!=t.errorMessage,helperText:void 0!==t.errorMessage&&null!=t.errorMessage?e.jsx(e.Fragment,{children:i(t.errorMessage)}):e.jsx(e.Fragment,{})}}})})},Qe=i=>{const o=t.useSelector((e=>e.AppLayout)),a=ge(),[r,n]=l.useState([]),{handleGetRequest:d}=Ce();return l.useEffect((()=>{i.lookupType&&(async()=>{await d({endPointURI:"api/v1/public/system/lookup",showMask:!0,parameters:{lookupType:i.lookupType},successCallBkFn:e=>{n(e.data)},failureCallBkFn:()=>{n([])}})})()}),[i.lookupType,a.UserSession]),e.jsx(je,{...i,options:r,displayField:"ltr"===o.appDirection?"lookupEnDisplay":"lookupArDisplay",valueField:"lookupValue"})},Ze=t=>({...t,type:"string",renderEditCell:t=>e.jsx(ze,{sx:{width:"100%"},label:"",value:t.value,onChangeCallBack:e=>{t.api.setEditCellValue({id:t.id,field:t.field,value:e})}}),valueParser:(e,t,i)=>{let o=null;return null!==e&&(o=P(e).format(We)),o},valueFormatter:(e,t,i)=>t[i.field]}),$e=t=>({...t,type:"custom",valueGetter:e=>e?e+"":e,renderCell:t=>{let i=null;try{i=t.colDef.options.find((e=>e[t.colDef.valueField]==t.value))}catch(e){}return e.jsx("div",{children:null!=i?i[t.colDef.displayField]:t.value})},renderEditCell:t=>e.jsx(je,{...t,sx:{width:"100%"},options:t.colDef.options,valueField:t.colDef.valueField,displayField:t.colDef.displayField,onChangeCallBack:(e,i)=>{null===e&&t.api.setEditCellValue({id:t.id,field:t.field,value:null}),t.api.setEditCellValue({id:t.id,field:t.field,value:e+""})}})}),Xe=t=>({...t,type:"custom",valueGetter:e=>null==e||null==e?null:e,renderCell:i=>{const o=i?.value;return o===t.checkedValue||"true"===o||1===o||!0===o?e.jsx(m.FontAwesomeIcon,{icon:"check",color:"green"}):e.jsx(m.FontAwesomeIcon,{icon:"xmark",color:"red"})},renderEditCell:i=>e.jsx(ke,{...i,checkedValue:t?.checkedValue||!0,unCheckedValue:t?.unCheckedValue||!1,onChangeCallBack:e=>{i.api.setEditCellValue({id:i.id,field:i.field,value:e})}})}),Je=e=>{const t=[];if("field"===e.type&&"props"===e.mode&&e?.props)t.push(e.props);else if("group"===e.type&&e?.props&&e?.props?.elements)for(const i of e.props.elements)t.push(...Je(i));return t},et=e=>{const t=[];for(const i of e)t.push(...Je(i));return t},tt=(t,i,o)=>{const a=[];for(const n of t)if("text"===n?.fieldType||"number"===n?.fieldType){const e={...n?.gridProps?.muiProps,editable:null!=n?.gridProps?.muiProps?.editable?n?.gridProps?.muiProps?.editable:i,type:"number"==n?.fieldType?"number":"string",field:n?.fieldName,headerName:o(n?.fieldLabel||n?.fieldName),headerAlign:"center",align:"center",hidden:n?.hidden,searchable:n?.gridProps?.searchable,flex:1,minWidth:200};a.push(e)}else if("date"===n?.fieldType){const t=(r={...n?.gridProps?.muiProps,editable:null!=n?.gridProps?.muiProps?.editable?n?.gridProps?.muiProps?.editable:i,field:n?.fieldName,headerName:o(n?.fieldLabel||n?.fieldName),headerAlign:"center",align:"center",hidden:n?.hidden,searchable:n?.gridProps?.searchable,flex:1,minWidth:200},{...r,type:"string",renderEditCell:t=>e.jsx(He,{sx:{width:"100%"},label:"",value:t.value,onChangeCallBack:e=>{t.api.setEditCellValue({id:t.id,field:t.field,value:e})}}),valueParser:(e,t,i)=>{let o=null;return null!==e&&(o=P(e).format(Ge)),o},valueFormatter:(e,t,i)=>t[i.field]});a.push(t)}else if("datetime"===n?.fieldType){const e=Ze({...n?.gridProps?.muiProps,editable:null!=n?.gridProps?.muiProps?.editable?n?.gridProps?.muiProps?.editable:i,field:n?.fieldName,headerName:o(n?.fieldLabel||n?.fieldName),headerAlign:"center",align:"center",hidden:n?.hidden,searchable:n?.gridProps?.searchable,flex:1,minWidth:200});a.push(e)}else if("checkbox"===n?.fieldType){const e=Xe({...n?.gridProps?.muiProps,editable:null!=n?.gridProps?.muiProps?.editable?n?.gridProps?.muiProps?.editable:i,field:n?.fieldName,headerName:o(n?.fieldLabel||n?.fieldName),headerAlign:"center",align:"center",hidden:n?.hidden,searchable:n?.gridProps?.searchable,checkedValue:n?.checkedValue,unCheckedValue:n?.unCheckedValue,width:150});a.push(e)}else if("combobox"===n?.fieldType){const e=$e({...n?.gridProps?.muiProps,editable:null!=n?.gridProps?.muiProps?.editable?n?.gridProps?.muiProps?.editable:i,field:n?.fieldName,headerName:o(n?.fieldLabel||n?.fieldName),headerAlign:"center",align:"center",hidden:n?.hidden,searchable:n?.gridProps?.searchable,valueField:n?.optionValueField||"value",displayField:n?.optionDisplayField||"display",options:n?.options||[],flex:1,minWidth:200});a.push(e)}else if("lookup"===n?.fieldType){const e=$e({...n?.gridProps?.muiProps,editable:null!=n?.gridProps?.muiProps?.editable?n?.gridProps?.muiProps?.editable:i,lookupType:n?.lookupType,field:n?.fieldName,headerName:o(n?.fieldLabel||n?.fieldName),headerAlign:"center",align:"center",hidden:n?.hidden,searchable:n?.gridProps?.searchable,valueField:n?.optionValueField||"value",displayField:n?.optionDisplayField||"display",options:n?.options||[],flex:1,minWidth:200});a.push(e)}else{const e={field:n.fieldName,...n?.gridProps?.muiProps};a.push(e)}var r;return a},it=e=>{const t={};for(const i of e)if(i?.fieldName){const e=i.fieldName;"number"===i.fieldType?t[e]=!0===i?.required?ce.number({required_error:"This field is required",invalid_type_error:"This field must be a number"}):ce.number().optional().nullable():"checkbox"===i.fieldType?t[e]=!0===i?.required?ce.boolean({required_error:"This field is required"}):ce.boolean().optional().nullable():t[e]=!0===i?.required?ce.string({message:"This field is required"}).min(1,"This field is required"):ce.string().optional().nullable()}return t},ot=(e,t,i)=>{const o=[],a=[];if("exclude"===e.type&&0===e.ids.size)for(const e of t)o.push(e),a.push(e[i]);else if(e?.ids)for(const r of e.ids){const e=t.find((e=>e[i]===r));o.push(e),a.push(r)}return{selectedRecords:o,selectedRecordIds:a}};function at(e,...t){const i=new URL(`https://mui.com/production-error/?code=${e}`);return t.forEach((e=>i.searchParams.append("args[]",e))),`Minified MUI error #${e}; visit ${i} for the full message.`}function rt(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var nt,dt={exports:{}},lt={exports:{}},st={};var pt,ct,ut,mt,Tt,At,_t,ft,It,Et,Ot,Nt,yt,ht,Rt,Lt={};
|
|
2
2
|
/** @license React v16.13.1
|
|
3
3
|
* react-is.development.js
|
|
4
4
|
*
|