@asaleh37/ui-base 25.6.1 → 25.6.2-0.2

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 (161) hide show
  1. package/.github/workflows/publish-npm.yml +31 -0
  2. package/README.md +51 -51
  3. package/dist/index.d.ts +3 -0
  4. package/dist/index.js +6 -6
  5. package/dist/index.js.map +1 -1
  6. package/dist/index.mjs +6 -6
  7. package/dist/index.mjs.map +1 -1
  8. package/eslint.config.js +29 -29
  9. package/index.html +13 -13
  10. package/package.json +120 -120
  11. package/rollup.config-1748377725725.cjs +50 -50
  12. package/rollup.config.js +45 -45
  13. package/src/components/App.tsx +123 -123
  14. package/src/components/BaseApp.tsx +53 -53
  15. package/src/components/administration/admin/OrgMemberRoleForm.tsx +83 -83
  16. package/src/components/administration/admin/OrganizationApplicationModuleGrid.tsx +107 -107
  17. package/src/components/administration/admin/OrganizationGrid.tsx +82 -82
  18. package/src/components/administration/admin/OrganizationMemberGrid.tsx +176 -176
  19. package/src/components/administration/admin/OrganizationMemberRoleGrid.tsx +87 -87
  20. package/src/components/administration/admin/OrganizationRankGrid.tsx +133 -133
  21. package/src/components/administration/admin/OrganizationUnitGrid.tsx +143 -143
  22. package/src/components/administration/admin/OrganizationUnitTypeGrid.tsx +108 -108
  23. package/src/components/administration/admin/PersonGrid.tsx +334 -231
  24. package/src/components/administration/admin/RoleAuthoritiesForm.tsx +82 -82
  25. package/src/components/administration/admin/SystemApplicationAuthorityGrid.tsx +117 -126
  26. package/src/components/administration/admin/SystemApplicationGrid.tsx +83 -83
  27. package/src/components/administration/admin/SystemApplicationModuleGrid.tsx +96 -96
  28. package/src/components/administration/admin/SystemApplicationRoleAuthorityGrid.tsx +75 -67
  29. package/src/components/administration/admin/SystemApplicationRoleGrid.tsx +116 -116
  30. package/src/components/administration/dev/AttachmentConfigGrid.tsx +223 -223
  31. package/src/components/administration/dev/AttachmentGrid.tsx +172 -172
  32. package/src/components/administration/dev/BluePrintGrid.tsx +129 -129
  33. package/src/components/administration/dev/DashboardGrid.tsx +173 -173
  34. package/src/components/administration/dev/DashboardWidgetGrid.tsx +164 -164
  35. package/src/components/administration/dev/DataQueryGrid.tsx +206 -206
  36. package/src/components/administration/dev/DataQueryParameterGrid.tsx +191 -191
  37. package/src/components/administration/dev/DataQueryParametersForm.tsx +84 -84
  38. package/src/components/administration/dev/DatasourceConnectionGrid.tsx +150 -150
  39. package/src/components/administration/dev/EntityParameterGrid.tsx +279 -279
  40. package/src/components/administration/dev/LookupGrid.tsx +120 -120
  41. package/src/components/administration/dev/MailAttachmentGrid.tsx +155 -155
  42. package/src/components/administration/dev/MailBodyGrid.tsx +216 -216
  43. package/src/components/administration/dev/MailNotificationQueueGrid.tsx +245 -245
  44. package/src/components/administration/dev/MailRecipientGrid.tsx +169 -169
  45. package/src/components/administration/dev/MailSenderConfigGrid.tsx +478 -478
  46. package/src/components/administration/dev/MailTemplateGrid.tsx +384 -384
  47. package/src/components/administration/dev/NotificationGrid.tsx +432 -432
  48. package/src/components/administration/dev/NotificationQueueGrid.tsx +222 -222
  49. package/src/components/administration/dev/ReportGrid.tsx +506 -506
  50. package/src/components/administration/dev/ReportParameterGrid.tsx +186 -186
  51. package/src/components/administration/dev/ReportParametersForm.tsx +84 -84
  52. package/src/components/administration/dev/WidgetGrid.tsx +431 -431
  53. package/src/components/administration/dev/WorkflowDocumentActionGrid.tsx +264 -264
  54. package/src/components/administration/dev/WorkflowDocumentActionHistoryGrid.tsx +172 -172
  55. package/src/components/administration/dev/WorkflowDocumentActionMailGrid.tsx +161 -161
  56. package/src/components/administration/dev/WorkflowDocumentGrid.tsx +377 -377
  57. package/src/components/administration/dev/WorkflowDocumentMailLogGrid.tsx +218 -218
  58. package/src/components/administration/dev/WorkflowDocumentStatusGrid.tsx +243 -243
  59. package/src/components/common/ChangeOrgForm.tsx +81 -81
  60. package/src/components/common/Home.tsx +43 -43
  61. package/src/components/common/LanguageSwitcher.tsx +25 -25
  62. package/src/components/common/LayoutHandlers.tsx +11 -11
  63. package/src/components/common/LoadingMask.tsx +24 -24
  64. package/src/components/common/Login.tsx +214 -214
  65. package/src/components/common/MyNotificationsPanel.tsx +103 -103
  66. package/src/components/common/NotificationItem.tsx +138 -138
  67. package/src/components/index.ts +9 -9
  68. package/src/components/templates/DataEntryTemplates/DataEntryTypes.ts +324 -324
  69. package/src/components/templates/DataEntryTemplates/DataEntryUtil.ts +248 -248
  70. package/src/components/templates/DataEntryTemplates/TemplateDataForm/FormAction.tsx +60 -60
  71. package/src/components/templates/DataEntryTemplates/TemplateDataForm/FormElementField.tsx +231 -231
  72. package/src/components/templates/DataEntryTemplates/TemplateDataForm/FormElementGroup.tsx +106 -106
  73. package/src/components/templates/DataEntryTemplates/TemplateDataForm/FormFields/CheckBox.tsx +64 -64
  74. package/src/components/templates/DataEntryTemplates/TemplateDataForm/FormFields/ComboBox.tsx +93 -93
  75. package/src/components/templates/DataEntryTemplates/TemplateDataForm/FormFields/Datefield.tsx +65 -65
  76. package/src/components/templates/DataEntryTemplates/TemplateDataForm/FormFields/DatetimeField.tsx +64 -64
  77. package/src/components/templates/DataEntryTemplates/TemplateDataForm/FormFields/FiltersPanel.tsx +237 -237
  78. package/src/components/templates/DataEntryTemplates/TemplateDataForm/FormFields/SystemLookupCombobox.tsx +55 -55
  79. package/src/components/templates/DataEntryTemplates/TemplateDataForm/FormFields/TemplateTextField.tsx +17 -17
  80. package/src/components/templates/DataEntryTemplates/TemplateDataForm/TemplateForm.tsx +387 -387
  81. package/src/components/templates/DataEntryTemplates/TemplateDataGrid/DataGridColumnsUtil.tsx +189 -189
  82. package/src/components/templates/DataEntryTemplates/TemplateDataGrid/TemplateGrid.tsx +998 -998
  83. package/src/components/templates/DataEntryTemplates/TemplateDataGrid/TemplateGridMultiRecordAction.tsx +89 -89
  84. package/src/components/templates/DataEntryTemplates/TemplateDataGrid/TemplateGridRecordAction.tsx +95 -95
  85. package/src/components/templates/DataEntryTemplates/TemplateDataGrid/TemplateGridTopBar.tsx +227 -227
  86. package/src/components/templates/TransferList.tsx +257 -257
  87. package/src/components/templates/Window/ConfirmationWindow.tsx +55 -55
  88. package/src/components/templates/attachment/AttachmentCard.tsx +141 -141
  89. package/src/components/templates/attachment/AttachmentImageViewer.tsx +45 -45
  90. package/src/components/templates/attachment/AttachmentPanel.tsx +271 -271
  91. package/src/components/templates/index.ts +33 -33
  92. package/src/components/templates/report/ExcelReportViewer.tsx +71 -71
  93. package/src/components/templates/report/ReportViewer.tsx +382 -382
  94. package/src/components/templates/visuals/DashboardRouteView.tsx +9 -9
  95. package/src/components/templates/visuals/DashboardViewer.tsx +148 -148
  96. package/src/components/templates/visuals/WidgetViewer.tsx +198 -198
  97. package/src/components/templates/visuals/charts/TemplateBarChart.tsx +23 -23
  98. package/src/components/templates/visuals/charts/TemplateDataCard.tsx +35 -35
  99. package/src/components/templates/visuals/charts/TemplateGauge.tsx +21 -21
  100. package/src/components/templates/visuals/charts/TemplateLineChart.tsx +22 -22
  101. package/src/components/templates/visuals/charts/TemplateLineProgress.tsx +42 -42
  102. package/src/components/templates/visuals/charts/TemplatePieChart.tsx +24 -24
  103. package/src/components/templates/workflow/WorkflowDocumentPanel.tsx +606 -606
  104. package/src/components/templates/workflow/WorkflowDocumentTimeLine.tsx +140 -140
  105. package/src/components/templates/workflow/WorkflowRouteComponent.tsx +14 -14
  106. package/src/hooks/UseConfirmationWindow.tsx +54 -54
  107. package/src/hooks/UseMobile.tsx +13 -13
  108. package/src/hooks/UseSession.tsx +59 -40
  109. package/src/hooks/UseWindow.tsx +107 -107
  110. package/src/hooks/index.ts +7 -7
  111. package/src/hooks/useApiActions.ts +124 -124
  112. package/src/hooks/useAxios.tsx +316 -316
  113. package/src/hooks/useInterval.tsx +23 -23
  114. package/src/hooks/useLoadingMask.tsx +16 -16
  115. package/src/hooks/useLookupGridColumn.tsx +35 -35
  116. package/src/index.ts +4 -4
  117. package/src/layout/DrawerHeader.tsx +10 -10
  118. package/src/layout/Layout.tsx +90 -90
  119. package/src/layout/MainContent.tsx +117 -114
  120. package/src/layout/MobileDrawer.tsx +103 -103
  121. package/src/layout/NavigationTree.tsx +298 -295
  122. package/src/layout/NotificationButton.tsx +207 -207
  123. package/src/layout/RouteWrapper.tsx +63 -36
  124. package/src/layout/SideBar.tsx +85 -85
  125. package/src/layout/TopBar.tsx +215 -215
  126. package/src/locales/arabic/adminLocalsAr.json +93 -93
  127. package/src/locales/arabic/common.json +44 -44
  128. package/src/locales/arabic/devLocalsAr.json +317 -317
  129. package/src/locales/arabic/index.ts +9 -9
  130. package/src/locales/english/adminLocalsEn.json +96 -96
  131. package/src/locales/english/common.json +43 -43
  132. package/src/locales/english/devLocalsEn.json +318 -318
  133. package/src/locales/english/index.ts +9 -9
  134. package/src/locales/i18n.ts +8 -8
  135. package/src/locales/index.ts +9 -9
  136. package/src/main.tsx +23 -23
  137. package/src/navigationItems/Administration/adminNavigationItems.tsx +223 -222
  138. package/src/navigationItems/Administration/index.tsx +16 -16
  139. package/src/navigationItems/common/CommonNavigationItems.tsx +12 -12
  140. package/src/navigationItems/common/index.tsx +7 -7
  141. package/src/navigationItems/index.tsx +35 -34
  142. package/src/redux/features/administration/AdministrationStoresMetaData.ts +148 -126
  143. package/src/redux/features/common/AppInfoSlice.ts +63 -63
  144. package/src/redux/features/common/AppLayoutSlice.ts +29 -29
  145. package/src/redux/features/common/CommonStoreSlice.ts +44 -44
  146. package/src/redux/features/common/LoadingMaskSlice.ts +30 -30
  147. package/src/redux/features/common/SideBarSlice.ts +27 -27
  148. package/src/redux/features/common/UserSessionSlice.ts +54 -54
  149. package/src/redux/store.ts +29 -29
  150. package/src/routes/administration/adminRoutes.tsx +99 -99
  151. package/src/routes/administration/devRoutes.tsx +129 -129
  152. package/src/routes/administration/index.ts +8 -8
  153. package/src/routes/index.ts +11 -11
  154. package/src/routes/types/index.ts +6 -5
  155. package/src/styles/index.css +19 -19
  156. package/src/types/index.ts +8 -8
  157. package/src/util/AppUtils.ts +53 -53
  158. package/src/util/constants.ts +6 -6
  159. package/src/util/index.ts +2 -2
  160. package/tsconfig.json +135 -135
  161. package/vite.config.ts +24 -36
@@ -1,34 +1,35 @@
1
- import { TreeViewBaseItem } from "@mui/x-tree-view/models";
2
- import { AdministrationItems } from "./Administration";
3
- import { IconProp } from "@fortawesome/fontawesome-svg-core";
4
-
5
- export type ExtendedTreeItemProps = {
6
- icon: IconProp;
7
- id: string;
8
- label: string;
9
- action?: "NAVIGATION";
10
- authority?: string;
11
- actionPayload?: {
12
- path?: string;
13
- parameters?: object;
14
- };
15
- children?: ExtendedTreeItemProps[];
16
- };
17
-
18
- export const findNavigationItemById = (
19
- id: string,
20
- nodes: ExtendedTreeItemProps[]
21
- ): ExtendedTreeItemProps | undefined => {
22
- for (const node of nodes) {
23
- if (node.id === id) return node;
24
- if (node.children) {
25
- const found = findNavigationItemById(id, node.children);
26
- if (found) return found;
27
- }
28
- }
29
- return undefined;
30
- };
31
-
32
- export const NavigationItems: TreeViewBaseItem<ExtendedTreeItemProps>[] = [
33
- ...AdministrationItems,
34
- ];
1
+ import { TreeViewBaseItem } from "@mui/x-tree-view/models";
2
+ import { AdministrationItems } from "./Administration";
3
+ import { IconProp } from "@fortawesome/fontawesome-svg-core";
4
+
5
+ export type ExtendedTreeItemProps = {
6
+ icon: IconProp;
7
+ id: string;
8
+ label: string;
9
+ action?: "NAVIGATION";
10
+ authority?: string;
11
+ applicationModule?: string;
12
+ actionPayload?: {
13
+ path?: string;
14
+ parameters?: object;
15
+ };
16
+ children?: ExtendedTreeItemProps[];
17
+ };
18
+
19
+ export const findNavigationItemById = (
20
+ id: string,
21
+ nodes: ExtendedTreeItemProps[]
22
+ ): ExtendedTreeItemProps | undefined => {
23
+ for (const node of nodes) {
24
+ if (node.id === id) return node;
25
+ if (node.children) {
26
+ const found = findNavigationItemById(id, node.children);
27
+ if (found) return found;
28
+ }
29
+ }
30
+ return undefined;
31
+ };
32
+
33
+ export const NavigationItems: TreeViewBaseItem<ExtendedTreeItemProps>[] = [
34
+ ...AdministrationItems,
35
+ ];
@@ -1,126 +1,148 @@
1
- import { CommonStores } from "../common/CommonStoreSlice";
2
-
3
- export const ADMINISTRATION_STORES: CommonStores = {
4
- SystemDataSourceType: {
5
- autoLoad: false,
6
- data: [{ value: "Mysql" }, { value: "Oracle" }, { value: "DB2" }],
7
- url: "",
8
- },
9
- SystemParameterTypes: {
10
- autoLoad: false,
11
- url: "",
12
- data: [
13
- { value: "text" },
14
- { value: "number" },
15
- { value: "date" },
16
- { value: "datetime" },
17
- { value: "combobox" },
18
- { value: "checkbox" },
19
- { value: "html" },
20
- { value: "lookup" },
21
- ],
22
- },
23
- SystemReportTypes: {
24
- autoLoad: false,
25
- url: "",
26
- data: [{ value: "Excel" }, { value: "Jasper" }, { value: "Blueprint" }],
27
- },
28
- SystemWidgetTypes: {
29
- autoLoad: false,
30
- url: "",
31
- data: [
32
- { name: "LineChart" },
33
- { name: "ColumnChart" },
34
- { name: "PieChart" },
35
- { name: "Card" },
36
- { name: "CircularProgress" },
37
- { name: "LinearProgress" },
38
- ],
39
- },
40
- SystemTimeIntervals: {
41
- autoLoad: false,
42
- url: "",
43
- data: [
44
- { value: "second" },
45
- { value: "minute" },
46
- { value: "hour" },
47
- { value: "day" },
48
- { value: "week" },
49
- { value: "month" },
50
- { value: "year" },
51
- ],
52
- },
53
- SystemMailRecipientTypes: {
54
- autoLoad: false,
55
- url: "",
56
- data: [{ name: "To" }, { name: "CC" }],
57
- },
58
- SystemOrganizations: {
59
- autoLoad: true,
60
- url: "api/v1/public/organization/all",
61
- data: [],
62
- },
63
- SystemOrganizationRanks: {
64
- autoLoad: true,
65
- url: "api/v1/public/organization/ranks/all",
66
- data: [],
67
- },
68
- SystemOrganizationUnits: {
69
- autoLoad: true,
70
- url: "api/v1/public/organization/units/all",
71
- data: [],
72
- },
73
- SystemOrganizationUnitType: {
74
- autoLoad: true,
75
- url: "api/v1/public/organizationunittype/all",
76
- data: [],
77
- },
78
- SystemDataSources: {
79
- autoLoad: true,
80
- data: [],
81
- authority: "DEVELOPMENT_ADMIN",
82
- url: "api/v1/dev/datasourceconnection/all",
83
- },
84
- SystemDataQueries: {
85
- autoLoad: true,
86
- data: [],
87
- authority: "DEVELOPMENT_ADMIN",
88
- url: "api/v1/dev/dataquery/all",
89
- },
90
- SystemBluePrints: {
91
- autoLoad: true,
92
- data: [],
93
- authority: "DEVELOPMENT_ADMIN",
94
- url: "api/v1/dev/blueprint/all",
95
- },
96
- SystemReports: {
97
- autoLoad: true,
98
- data: [],
99
- authority: "DEVELOPMENT_ADMIN",
100
- url: "api/v1/dev/report/all",
101
- },
102
- SystemEntityParameters: {
103
- autoLoad: true,
104
- data: [],
105
- authority: "DEVELOPMENT_ADMIN",
106
- url: "api/v1/dev/entityparameter/all",
107
- },
108
- SystemMailTemplates: {
109
- autoLoad: true,
110
- data: [],
111
- authority: "DEVELOPMENT_ADMIN",
112
- url: "api/v1/dev/mailtemplate/all",
113
- },
114
- SystemWidgets: {
115
- autoLoad: true,
116
- data: [],
117
- authority: "DEVELOPMENT_ADMIN",
118
- url: "api/v1/dev/widget/all",
119
- },
120
- SystemApplicationModules: {
121
- autoLoad: true,
122
- data: [],
123
- authority: "DEVELOPMENT_ADMIN",
124
- url: "api/v1/admin/systemapplicationmodule/application/all",
125
- },
126
- };
1
+ import { CommonStores } from "../common/CommonStoreSlice";
2
+
3
+ export const ADMINISTRATION_STORES: CommonStores = {
4
+ SystemDataSourceType: {
5
+ autoLoad: false,
6
+ data: [{ value: "Mysql" }, { value: "Oracle" }, { value: "DB2" }],
7
+ url: "",
8
+ },
9
+ SystemParameterTypes: {
10
+ autoLoad: false,
11
+ url: "",
12
+ data: [
13
+ { value: "text" },
14
+ { value: "number" },
15
+ { value: "date" },
16
+ { value: "datetime" },
17
+ { value: "combobox" },
18
+ { value: "checkbox" },
19
+ { value: "html" },
20
+ { value: "lookup" },
21
+ ],
22
+ },
23
+ SystemReportTypes: {
24
+ autoLoad: false,
25
+ url: "",
26
+ data: [{ value: "Excel" }, { value: "Jasper" }, { value: "Blueprint" }],
27
+ },
28
+ SystemWidgetTypes: {
29
+ autoLoad: false,
30
+ url: "",
31
+ data: [
32
+ { name: "LineChart" },
33
+ { name: "ColumnChart" },
34
+ { name: "PieChart" },
35
+ { name: "Card" },
36
+ { name: "CircularProgress" },
37
+ { name: "LinearProgress" },
38
+ ],
39
+ },
40
+ SystemTimeIntervals: {
41
+ autoLoad: false,
42
+ url: "",
43
+ data: [
44
+ { value: "second" },
45
+ { value: "minute" },
46
+ { value: "hour" },
47
+ { value: "day" },
48
+ { value: "week" },
49
+ { value: "month" },
50
+ { value: "year" },
51
+ ],
52
+ },
53
+ SystemMailRecipientTypes: {
54
+ autoLoad: false,
55
+ url: "",
56
+ data: [{ name: "To" }, { name: "CC" }],
57
+ },
58
+ SystemOrganizations: {
59
+ autoLoad: true,
60
+ url: "api/v1/public/organization/all",
61
+ data: [],
62
+ },
63
+ SystemOrganizationRanks: {
64
+ autoLoad: true,
65
+ url: "api/v1/public/organization/ranks/all",
66
+ data: [],
67
+ },
68
+ CurrentOrganizationRanks: {
69
+ autoLoad: true,
70
+ url: "api/v1/public/organizationrank/all",
71
+ data: [],
72
+ },
73
+ SystemOrganizationUnits: {
74
+ autoLoad: true,
75
+ url: "api/v1/public/organization/units/all",
76
+ data: [],
77
+ },
78
+ CurrentOrganizationUnits: {
79
+ autoLoad: true,
80
+ url: "api/v1/public/organizationunit/all",
81
+ data: [],
82
+ },
83
+ SystemOrganizationUnitType: {
84
+ autoLoad: true,
85
+ url: "api/v1/public/organizationunittype/all",
86
+ data: [],
87
+ },
88
+ SystemDataSources: {
89
+ autoLoad: true,
90
+ data: [],
91
+ authority: "DEVELOPMENT_ADMIN",
92
+ url: "api/v1/dev/datasourceconnection/all",
93
+ },
94
+ SystemDataQueries: {
95
+ autoLoad: true,
96
+ data: [],
97
+ authority: "DEVELOPMENT_ADMIN",
98
+ url: "api/v1/dev/dataquery/all",
99
+ },
100
+ SystemBluePrints: {
101
+ autoLoad: true,
102
+ data: [],
103
+ authority: "DEVELOPMENT_ADMIN",
104
+ url: "api/v1/dev/blueprint/all",
105
+ },
106
+ SystemReports: {
107
+ autoLoad: true,
108
+ data: [],
109
+ authority: "DEVELOPMENT_ADMIN",
110
+ url: "api/v1/dev/report/all",
111
+ },
112
+ SystemEntityParameters: {
113
+ autoLoad: true,
114
+ data: [],
115
+ authority: "DEVELOPMENT_ADMIN",
116
+ url: "api/v1/dev/entityparameter/all",
117
+ },
118
+ SystemMailTemplates: {
119
+ autoLoad: true,
120
+ data: [],
121
+ authority: "DEVELOPMENT_ADMIN",
122
+ url: "api/v1/dev/mailtemplate/all",
123
+ },
124
+ SystemWidgets: {
125
+ autoLoad: true,
126
+ data: [],
127
+ authority: "DEVELOPMENT_ADMIN",
128
+ url: "api/v1/dev/widget/all",
129
+ },
130
+ SystemApplicationModules: {
131
+ autoLoad: true,
132
+ data: [],
133
+ authority: "DEVELOPMENT_ADMIN",
134
+ url: "api/v1/admin/systemapplicationmodule/application/all",
135
+ },
136
+ SystemApplicationAuthorities: {
137
+ autoLoad: true,
138
+ data: [],
139
+ authority: "DEVELOPMENT_ADMIN",
140
+ url: "api/v1/admin/systemapplicationauthority/all",
141
+ },
142
+ SystemApplicationRoles: {
143
+ autoLoad: true,
144
+ data: [],
145
+ authority: "DEVELOPMENT_ADMIN",
146
+ url: "api/v1/admin/systemapplicationrole/all",
147
+ },
148
+ };
@@ -1,63 +1,63 @@
1
- import { createSlice, Reducer } from "@reduxjs/toolkit";
2
- import { SystemRoute } from "../../../routes/types";
3
- import { ExtendedTreeItemProps } from "../../../navigationItems";
4
- import { StoreMetaData } from "./CommonStoreSlice";
5
-
6
- export type AppInfo = {
7
- documentTitle: string | null;
8
- apiBaseUrl: string | null;
9
- appName: string | null;
10
- appVersion: string | null;
11
- appLogo: any | null;
12
- businessLocals?: {
13
- ar: { [key: string]: string };
14
- en: { [key: string]: string };
15
- };
16
- businessRoutes?: Array<SystemRoute>;
17
- businessNavigationItems?: Array<ExtendedTreeItemProps>;
18
- businessReduxReducers?: { [key: string]: Reducer<any> };
19
- businessCommonStoresMetaData?: { [key: string]: StoreMetaData };
20
- muiPremiumKey: string;
21
- enableAdministrationModule: boolean;
22
- appTheme?: {
23
- light: { primaryColor: string; secondaryColor: string };
24
- dark: { primaryColor: string; secondaryColor: string };
25
- };
26
- };
27
-
28
- export type AppInfoProp = {
29
- value: AppInfo;
30
- };
31
-
32
- const initialState: AppInfoProp = {
33
- value: {
34
- documentTitle: null,
35
- apiBaseUrl: null,
36
- appName: null,
37
- appVersion: null,
38
- appLogo: null,
39
- muiPremiumKey: null,
40
- enableAdministrationModule: false,
41
- businessRoutes: [],
42
- businessNavigationItems: [],
43
- businessReduxReducers: {},
44
- businessCommonStoresMetaData: {},
45
- appTheme: {
46
- light: { primaryColor: "#37505C", secondaryColor: "#ff6d00" },
47
- dark: { primaryColor: "#ea690e", secondaryColor: "#74776B" },
48
- },
49
- },
50
- };
51
-
52
- const AppInfoSlice = createSlice({
53
- name: "AppInfo",
54
- initialState: initialState,
55
- reducers: {
56
- setAppInfo: (state, action) => {
57
- state.value = action.payload;
58
- },
59
- },
60
- });
61
-
62
- export const AppInfoActions = AppInfoSlice.actions;
63
- export default AppInfoSlice.reducer;
1
+ import { createSlice, Reducer } from "@reduxjs/toolkit";
2
+ import { SystemRoute } from "../../../routes/types";
3
+ import { ExtendedTreeItemProps } from "../../../navigationItems";
4
+ import { StoreMetaData } from "./CommonStoreSlice";
5
+
6
+ export type AppInfo = {
7
+ documentTitle: string | null;
8
+ apiBaseUrl: string | null;
9
+ appName: string | null;
10
+ appVersion: string | null;
11
+ appLogo: any | null;
12
+ businessLocals?: {
13
+ ar: { [key: string]: string };
14
+ en: { [key: string]: string };
15
+ };
16
+ businessRoutes?: Array<SystemRoute>;
17
+ businessNavigationItems?: Array<ExtendedTreeItemProps>;
18
+ businessReduxReducers?: { [key: string]: Reducer<any> };
19
+ businessCommonStoresMetaData?: { [key: string]: StoreMetaData };
20
+ muiPremiumKey: string;
21
+ enableAdministrationModule: boolean;
22
+ appTheme?: {
23
+ light: { primaryColor: string; secondaryColor: string };
24
+ dark: { primaryColor: string; secondaryColor: string };
25
+ };
26
+ };
27
+
28
+ export type AppInfoProp = {
29
+ value: AppInfo;
30
+ };
31
+
32
+ const initialState: AppInfoProp = {
33
+ value: {
34
+ documentTitle: null,
35
+ apiBaseUrl: null,
36
+ appName: null,
37
+ appVersion: null,
38
+ appLogo: null,
39
+ muiPremiumKey: null,
40
+ enableAdministrationModule: false,
41
+ businessRoutes: [],
42
+ businessNavigationItems: [],
43
+ businessReduxReducers: {},
44
+ businessCommonStoresMetaData: {},
45
+ appTheme: {
46
+ light: { primaryColor: "#37505C", secondaryColor: "#ff6d00" },
47
+ dark: { primaryColor: "#ea690e", secondaryColor: "#74776B" },
48
+ },
49
+ },
50
+ };
51
+
52
+ const AppInfoSlice = createSlice({
53
+ name: "AppInfo",
54
+ initialState: initialState,
55
+ reducers: {
56
+ setAppInfo: (state, action) => {
57
+ state.value = action.payload;
58
+ },
59
+ },
60
+ });
61
+
62
+ export const AppInfoActions = AppInfoSlice.actions;
63
+ export default AppInfoSlice.reducer;
@@ -1,29 +1,29 @@
1
- import { createSlice } from "@reduxjs/toolkit";
2
-
3
- export const DRAWER_WIDTH = 350;
4
-
5
- interface AppLayoutState {
6
- themeMode: "light" | "dark" | string;
7
- appDirection: "ltr" | "rtl";
8
- }
9
-
10
- const initialState: AppLayoutState = {
11
- themeMode: localStorage.getItem("themeMode") || "light",
12
- appDirection: localStorage.getItem("language") == "ar" ? "rtl" : "ltr",
13
- };
14
-
15
- const AppLayoutSlice = createSlice({
16
- name: "AppLayout",
17
- initialState,
18
- reducers: {
19
- setThemeMode: (state, action) => {
20
- state.themeMode = action.payload;
21
- },
22
- setAppDirection: (state, action) => {
23
- state.appDirection = action.payload;
24
- },
25
- },
26
- });
27
-
28
- export const AppLayoutActions = AppLayoutSlice.actions;
29
- export default AppLayoutSlice.reducer;
1
+ import { createSlice } from "@reduxjs/toolkit";
2
+
3
+ export const DRAWER_WIDTH = 350;
4
+
5
+ interface AppLayoutState {
6
+ themeMode: "light" | "dark" | string;
7
+ appDirection: "ltr" | "rtl";
8
+ }
9
+
10
+ const initialState: AppLayoutState = {
11
+ themeMode: localStorage.getItem("themeMode") || "light",
12
+ appDirection: localStorage.getItem("language") == "ar" ? "rtl" : "ltr",
13
+ };
14
+
15
+ const AppLayoutSlice = createSlice({
16
+ name: "AppLayout",
17
+ initialState,
18
+ reducers: {
19
+ setThemeMode: (state, action) => {
20
+ state.themeMode = action.payload;
21
+ },
22
+ setAppDirection: (state, action) => {
23
+ state.appDirection = action.payload;
24
+ },
25
+ },
26
+ });
27
+
28
+ export const AppLayoutActions = AppLayoutSlice.actions;
29
+ export default AppLayoutSlice.reducer;
@@ -1,44 +1,44 @@
1
- import { createSlice, PayloadAction } from "@reduxjs/toolkit";
2
-
3
- export type CommonStores = {
4
- [key: string]: StoreMetaData;
5
- };
6
-
7
- export type CommonStoresInterface = {
8
- stores: { [key: string]: StoreMetaData };
9
- storeKeys: Array<String>;
10
- };
11
-
12
- interface setStoreDataProps {
13
- storeKey: string;
14
- data: Array<any>;
15
- }
16
-
17
- export type StoreMetaData = {
18
- url: string;
19
- data: Array<any>;
20
- autoLoad: boolean;
21
- authority?: string;
22
- };
23
-
24
- export const commonStoresInitialState: CommonStoresInterface = {
25
- stores: {},
26
- storeKeys: [],
27
- };
28
-
29
- const commonStoreSlice = createSlice({
30
- name: "commonStores",
31
- initialState: commonStoresInitialState,
32
- reducers: {
33
- setStoresMetaData: (state, action) => {
34
- state.stores = action.payload;
35
- state.storeKeys = Object.keys(action.payload);
36
- },
37
- setStoreData: (state, action: PayloadAction<setStoreDataProps>) => {
38
- state.stores[action.payload.storeKey].data = action.payload.data;
39
- },
40
- },
41
- });
42
-
43
- export const { setStoreData, setStoresMetaData } = commonStoreSlice.actions;
44
- export default commonStoreSlice.reducer;
1
+ import { createSlice, PayloadAction } from "@reduxjs/toolkit";
2
+
3
+ export type CommonStores = {
4
+ [key: string]: StoreMetaData;
5
+ };
6
+
7
+ export type CommonStoresInterface = {
8
+ stores: { [key: string]: StoreMetaData };
9
+ storeKeys: Array<String>;
10
+ };
11
+
12
+ interface setStoreDataProps {
13
+ storeKey: string;
14
+ data: Array<any>;
15
+ }
16
+
17
+ export type StoreMetaData = {
18
+ url: string;
19
+ data: Array<any>;
20
+ autoLoad: boolean;
21
+ authority?: string;
22
+ };
23
+
24
+ export const commonStoresInitialState: CommonStoresInterface = {
25
+ stores: {},
26
+ storeKeys: [],
27
+ };
28
+
29
+ const commonStoreSlice = createSlice({
30
+ name: "commonStores",
31
+ initialState: commonStoresInitialState,
32
+ reducers: {
33
+ setStoresMetaData: (state, action) => {
34
+ state.stores = action.payload;
35
+ state.storeKeys = Object.keys(action.payload);
36
+ },
37
+ setStoreData: (state, action: PayloadAction<setStoreDataProps>) => {
38
+ state.stores[action.payload.storeKey].data = action.payload.data;
39
+ },
40
+ },
41
+ });
42
+
43
+ export const { setStoreData, setStoresMetaData } = commonStoreSlice.actions;
44
+ export default commonStoreSlice.reducer;