@asaleh37/ui-base 1.2.30 → 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.d.ts +3 -3
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +5 -5
- package/dist/index.mjs.map +1 -1
- package/eslint.config.js +29 -29
- package/index.html +13 -13
- package/package.json +120 -119
- 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 -213
- 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 -504
- 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 -44
- 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 -104
- 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 -388
- 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 -72
- package/src/components/templates/report/ReportViewer.tsx +382 -383
- 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 -291
- 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 -217
- 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 -7
- 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 -23
|
@@ -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.d.ts
CHANGED
|
@@ -42,12 +42,12 @@ type CommonStoresInterface = {
|
|
|
42
42
|
};
|
|
43
43
|
storeKeys: Array<String>;
|
|
44
44
|
};
|
|
45
|
-
|
|
45
|
+
type StoreMetaData = {
|
|
46
46
|
url: string;
|
|
47
47
|
data: Array<any>;
|
|
48
48
|
autoLoad: boolean;
|
|
49
49
|
authority?: string;
|
|
50
|
-
}
|
|
50
|
+
};
|
|
51
51
|
|
|
52
52
|
type AppInfo = {
|
|
53
53
|
documentTitle: string | null;
|
|
@@ -633,4 +633,4 @@ declare const DARK_THEME_INITIAL_MAIN_COLOR = "#ea690e";
|
|
|
633
633
|
declare const DARK_THEME_INITIAL_SECANDARY_COLOR = "#74776B";
|
|
634
634
|
|
|
635
635
|
export { AttachmentCard, AttachmentImageViewer, AttachmentPanel, BaseApp, CheckBox, ComboBox, DARK_THEME_INITIAL_MAIN_COLOR, DARK_THEME_INITIAL_SECANDARY_COLOR, DATE_FORMAT, DATE_TIME_FORMAT, DashboardRouteView, DashboardViewer, Datefield, DatetimeField, ExcelReportViewer, LIGHT_THEME_INITIAL_MAIN_COLOR, LIGHT_THEME_INITIAL_SECANDARY_COLOR, ReportViewer, SystemLookupCombobox, TemplateBarChart, TemplateDataCard, TemplateForm, TemplateGauge, TemplateGrid, TemplateLineChart, TemplateLineProgress, TemplatePieChart, TemplateTextField, TransferList, WorkflowDocumentPanel, WorkflowDocumentTimeLine, WorkflowRouteComponent, capitalizeFirstLetter, constructGridColumnsFromFields, constructValidationSchema, getAllFields, getElementFields, getGridSelection, hasDigitsOnly, isNumber, isNumeric, isValidEmail, timeAgo, useApiActions, useAxios, useConfirmationWindow, useIsMobile, useLoadingMask, useSession, useWindow };
|
|
636
|
-
export type { CommonStores, CommonStoresInterface, EditDeleteAction, ExtendedTreeItemProps, FormActionProps, FormElementFieldProps, FormElementGroupProps, FormElementNodeProps, FormElementProps, FormElementSize, GridSelection, MakeOptional, ModalFormProps, RecordAction, RecordFieldProps, SystemRoute, TemplateFormProps, TemplateGridAttachmentProps, TemplateGridColDef, TemplateGridColumnProps, TemplateGridProps, TemplateGridTopBarProps, TransferListProps };
|
|
636
|
+
export type { CommonStores, CommonStoresInterface, EditDeleteAction, ExtendedTreeItemProps, FormActionProps, FormElementFieldProps, FormElementGroupProps, FormElementNodeProps, FormElementProps, FormElementSize, GridSelection, MakeOptional, ModalFormProps, RecordAction, RecordFieldProps, StoreMetaData, SystemRoute, TemplateFormProps, TemplateGridAttachmentProps, TemplateGridColDef, TemplateGridColumnProps, TemplateGridProps, TemplateGridTopBarProps, TransferListProps };
|