@egovernments/digit-ui-libraries 1.9.1-beta.8 โ 2.0.0-dev-01
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/README.md +322 -34
- package/dist/661.main.js +2 -0
- package/dist/661.main.js.map +1 -0
- package/dist/838.main.js +3 -0
- package/dist/838.main.js.LICENSE.txt +1 -0
- package/dist/838.main.js.map +1 -0
- package/dist/main.js +3 -0
- package/dist/main.js.LICENSE.txt +368 -0
- package/dist/main.js.map +1 -0
- package/package.json +53 -20
- package/dist/index.js +0 -1
package/README.md
CHANGED
|
@@ -1,74 +1,362 @@
|
|
|
1
|
+
# @egovernments/digit-ui-libraries
|
|
1
2
|
|
|
3
|
+
## Version: 1.9.0
|
|
4
|
+
**Release Date:** October 23, 2025
|
|
2
5
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
## Install
|
|
6
|
+
## ๐ฆ Installation
|
|
6
7
|
|
|
7
8
|
```bash
|
|
8
|
-
npm install --save @egovernments/digit-ui-libraries
|
|
9
|
+
npm install --save @egovernments/digit-ui-libraries@1.9.0
|
|
9
10
|
```
|
|
10
11
|
|
|
11
|
-
##
|
|
12
|
+
## ๐ What's New in v1.9.0
|
|
12
13
|
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
14
|
+
### ๐ Enhanced Libraries & Core Utilities
|
|
15
|
+
- **Advanced Multi-Tenant Support**: Full integration with Core v1.9.0 architecture
|
|
16
|
+
- **Enhanced API Hooks**: Improved error handling and request management
|
|
17
|
+
- **Better Data Management**: MDMS v2 support with enhanced caching
|
|
18
|
+
- **Performance Optimizations**: Bundle size reduction and memory improvements
|
|
16
19
|
|
|
17
|
-
|
|
20
|
+
### ๐ ๏ธ Utility Enhancements
|
|
21
|
+
- **PDF Generation**: Enhanced PDF download logic with better formatting
|
|
22
|
+
- **Field Utilities**: Improved field ID generation and validation
|
|
23
|
+
- **Localization**: Enhanced cache management and cleanup
|
|
24
|
+
- **Configuration**: Better merge strategies and utilities
|
|
18
25
|
|
|
19
|
-
|
|
26
|
+
### ๐ง Service Layer Improvements
|
|
27
|
+
- **API Abstractions**: Enhanced service layer patterns
|
|
28
|
+
- **Error Handling**: Centralized error handling and logging
|
|
29
|
+
- **Authentication**: Better auth and authorization utilities
|
|
30
|
+
- **File Services**: Enhanced upload and management capabilities
|
|
20
31
|
|
|
21
|
-
|
|
22
|
-
frontend/micro-ui/web/package.json
|
|
23
|
-
```
|
|
32
|
+
## ๐ Core Features
|
|
24
33
|
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
34
|
+
### ๐ Hooks Library
|
|
35
|
+
- **useCustomMDMS**: Enhanced MDMS v2 support with multi-tenant capabilities
|
|
36
|
+
- **useCustomAPIHook**: Improved API integration with better error handling
|
|
37
|
+
- **useCustomAPIMutationHook**: Enhanced mutation handling with retry logic
|
|
38
|
+
- **useMDMS**: Comprehensive master data management with caching
|
|
39
|
+
- **useInbox**: Advanced inbox management and search capabilities
|
|
40
|
+
- **useWorkflowDetailsV2**: Enhanced workflow integration
|
|
41
|
+
- **useStore**: Global state management patterns
|
|
42
|
+
- **useTenants**: Multi-tenant context management
|
|
28
43
|
|
|
29
|
-
|
|
44
|
+
### ๐ ๏ธ Utility Functions
|
|
45
|
+
- **Configuration Utils**: Enhanced config merging and validation
|
|
46
|
+
- **Field Utils**: Dynamic field ID generation and validation
|
|
47
|
+
- **Date Utils**: Comprehensive date formatting and manipulation
|
|
48
|
+
- **PDF Utils**: Advanced PDF generation and download
|
|
49
|
+
- **Browser Utils**: Browser detection and compatibility utilities
|
|
50
|
+
- **Locale Utils**: Localization and translation management
|
|
30
51
|
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
52
|
+
### ๐ง Service Abstractions
|
|
53
|
+
- **API Services**: Common API patterns and utilities
|
|
54
|
+
- **Authentication Services**: Auth and authorization abstractions
|
|
55
|
+
- **File Services**: Upload and file management utilities
|
|
56
|
+
- **Notification Services**: Common notification patterns
|
|
57
|
+
|
|
58
|
+
## ๐ป Usage
|
|
34
59
|
|
|
60
|
+
### Basic Setup
|
|
35
61
|
|
|
36
|
-
|
|
62
|
+
Add the dependency to your `package.json`:
|
|
63
|
+
|
|
64
|
+
```json
|
|
65
|
+
{
|
|
66
|
+
"@egovernments/digit-ui-libraries": "^1.9.0"
|
|
67
|
+
}
|
|
68
|
+
```
|
|
69
|
+
|
|
70
|
+
### Initialize Libraries
|
|
37
71
|
|
|
38
72
|
```jsx
|
|
39
73
|
import React from "react";
|
|
40
74
|
import initLibraries from "@egovernments/digit-ui-libraries";
|
|
41
|
-
|
|
42
75
|
import defaultConfig from "./config";
|
|
43
76
|
|
|
44
77
|
const App = ({ deltaConfig, stateCode, cityCode, moduleCode }) => {
|
|
78
|
+
// Initialize the libraries
|
|
45
79
|
initLibraries();
|
|
46
80
|
|
|
47
|
-
|
|
81
|
+
// Setup global store with configuration
|
|
82
|
+
const store = eGov.Services.useStore(defaultConfig, {
|
|
83
|
+
deltaConfig,
|
|
84
|
+
stateCode,
|
|
85
|
+
cityCode,
|
|
86
|
+
moduleCode
|
|
87
|
+
});
|
|
48
88
|
|
|
49
|
-
return
|
|
89
|
+
return (
|
|
90
|
+
<div>
|
|
91
|
+
{/* Your app components */}
|
|
92
|
+
</div>
|
|
93
|
+
);
|
|
50
94
|
};
|
|
51
95
|
|
|
52
96
|
export default App;
|
|
53
97
|
```
|
|
54
98
|
|
|
55
|
-
|
|
99
|
+
### Using Enhanced Hooks
|
|
100
|
+
|
|
101
|
+
```jsx
|
|
102
|
+
// Enhanced MDMS Hook with v2 support
|
|
103
|
+
import { Digit } from "@egovernments/digit-ui-libraries";
|
|
104
|
+
|
|
105
|
+
const { data, isLoading, error } = Digit.Hooks.useCustomMDMS(
|
|
106
|
+
tenantId,
|
|
107
|
+
"commonUiConfig",
|
|
108
|
+
[
|
|
109
|
+
{
|
|
110
|
+
"name": "CityModule",
|
|
111
|
+
"masterDetails": [
|
|
112
|
+
{
|
|
113
|
+
"name": "modules",
|
|
114
|
+
"filter": "[?(@.active==true)]"
|
|
115
|
+
}
|
|
116
|
+
]
|
|
117
|
+
}
|
|
118
|
+
],
|
|
119
|
+
{
|
|
120
|
+
enabled: !!tenantId,
|
|
121
|
+
staleTime: 300000, // 5 minutes
|
|
122
|
+
select: (data) => {
|
|
123
|
+
return data?.commonUiConfig?.modules || [];
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
);
|
|
127
|
+
|
|
128
|
+
// Enhanced API Hook
|
|
129
|
+
const { mutate, isLoading, error } = Digit.Hooks.useCustomAPIMutationHook({
|
|
130
|
+
url: "/api/v1/data",
|
|
131
|
+
method: "POST",
|
|
132
|
+
headers: {
|
|
133
|
+
"Content-Type": "application/json"
|
|
134
|
+
},
|
|
135
|
+
onSuccess: (data) => {
|
|
136
|
+
console.log("Success:", data);
|
|
137
|
+
},
|
|
138
|
+
onError: (error) => {
|
|
139
|
+
console.error("Error:", error);
|
|
140
|
+
}
|
|
141
|
+
});
|
|
142
|
+
|
|
143
|
+
// Tenant Management Hook
|
|
144
|
+
const { tenants, currentTenant, switchTenant } = Digit.Hooks.useTenants();
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
### Using Utility Functions
|
|
148
|
+
|
|
149
|
+
```jsx
|
|
150
|
+
// Configuration utilities
|
|
151
|
+
import { Digit } from "@egovernments/digit-ui-libraries";
|
|
152
|
+
|
|
153
|
+
const mergedConfig = Digit.Utils.mergeConfig(baseConfig, deltaConfig);
|
|
154
|
+
const fieldId = Digit.Utils.generateFieldId("employee", "name");
|
|
155
|
+
|
|
156
|
+
// Date utilities
|
|
157
|
+
const formattedDate = Digit.Utils.date.formatDate(new Date(), "dd/MM/yyyy");
|
|
158
|
+
const epochTime = Digit.Utils.date.convertToEpoch("2025-10-23");
|
|
159
|
+
|
|
160
|
+
// PDF utilities
|
|
161
|
+
await Digit.Utils.pdf.downloadPDF({
|
|
162
|
+
data: reportData,
|
|
163
|
+
fileName: "report.pdf",
|
|
164
|
+
template: "standardReport"
|
|
165
|
+
});
|
|
166
|
+
|
|
167
|
+
// Browser utilities
|
|
168
|
+
const isMobile = Digit.Utils.browser.isMobile();
|
|
169
|
+
const userAgent = Digit.Utils.browser.getUserAgent();
|
|
170
|
+
```
|
|
171
|
+
|
|
172
|
+
## ๐ง Advanced Configuration
|
|
173
|
+
|
|
174
|
+
### Multi-Tenant Setup
|
|
175
|
+
|
|
176
|
+
```jsx
|
|
177
|
+
// Enable multi-tenant support
|
|
178
|
+
const config = {
|
|
179
|
+
OVERRIDE_ROOT_TENANT_WITH_LOGGEDIN_TENANT: true,
|
|
180
|
+
MULTI_ROOT_TENANT: true,
|
|
181
|
+
MDMS_V2_ENABLED: true,
|
|
182
|
+
API_CACHE_ENABLED: true
|
|
183
|
+
};
|
|
184
|
+
|
|
185
|
+
initLibraries(config);
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
### MDMS v2 Configuration
|
|
189
|
+
|
|
190
|
+
```jsx
|
|
191
|
+
// Configure MDMS v2 support
|
|
192
|
+
const mdmsConfig = {
|
|
193
|
+
v2Enabled: true,
|
|
194
|
+
baseUrl: "/mdms-v2",
|
|
195
|
+
schemaCode: "commonMuktaUiConfig",
|
|
196
|
+
cacheTimeout: 300000 // 5 minutes
|
|
197
|
+
};
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
## ๐ฏ Key Capabilities
|
|
201
|
+
|
|
202
|
+
### ๐ Data Management
|
|
203
|
+
- **MDMS Integration**: Full MDMS v1 and v2 API support
|
|
204
|
+
- **Caching Strategy**: Intelligent data caching and invalidation
|
|
205
|
+
- **State Management**: Global state patterns and utilities
|
|
206
|
+
- **Multi-Tenant Data**: Tenant-specific data isolation and management
|
|
207
|
+
|
|
208
|
+
### ๐ API Management
|
|
209
|
+
- **Request/Response Handling**: Comprehensive API utilities
|
|
210
|
+
- **Error Management**: Centralized error handling and retry logic
|
|
211
|
+
- **Authentication**: Token management and auth utilities
|
|
212
|
+
- **File Handling**: Upload, download, and file management
|
|
213
|
+
|
|
214
|
+
### ๐ ๏ธ Development Utilities
|
|
215
|
+
- **Configuration Management**: Config merging and validation
|
|
216
|
+
- **Form Utilities**: Dynamic form field generation
|
|
217
|
+
- **Validation Patterns**: Common validation utilities
|
|
218
|
+
- **Testing Helpers**: Testing utilities and mock patterns
|
|
219
|
+
|
|
220
|
+
### ๐ฑ Cross-Platform Support
|
|
221
|
+
- **Browser Compatibility**: Cross-browser utilities and detection
|
|
222
|
+
- **Mobile Optimization**: Mobile-specific utilities and patterns
|
|
223
|
+
- **Performance Monitoring**: Performance tracking and optimization
|
|
224
|
+
- **Error Tracking**: Comprehensive error logging and reporting
|
|
225
|
+
|
|
226
|
+
## ๐ Migration Guide
|
|
227
|
+
|
|
228
|
+
### From v1.8.x to v1.9.0
|
|
229
|
+
|
|
230
|
+
1. **Update Dependencies**:
|
|
231
|
+
```bash
|
|
232
|
+
npm update @egovernments/digit-ui-libraries@1.9.0
|
|
233
|
+
```
|
|
234
|
+
|
|
235
|
+
2. **Configuration Updates**:
|
|
236
|
+
- Enable MDMS v2 support if needed
|
|
237
|
+
- Configure multi-tenant settings
|
|
238
|
+
- Update API endpoint configurations
|
|
239
|
+
|
|
240
|
+
3. **Hook Updates**:
|
|
241
|
+
- Enhanced useCustomMDMS with v2 support
|
|
242
|
+
- Improved error handling in API hooks
|
|
243
|
+
- Better caching strategies
|
|
244
|
+
|
|
245
|
+
4. **Utility Updates**:
|
|
246
|
+
- Enhanced PDF generation capabilities
|
|
247
|
+
- Improved field validation utilities
|
|
248
|
+
- Better localization management
|
|
249
|
+
|
|
250
|
+
## ๐งช Testing
|
|
251
|
+
|
|
252
|
+
### Library Testing
|
|
253
|
+
```javascript
|
|
254
|
+
// Test multi-tenant capabilities
|
|
255
|
+
import { Digit } from "@egovernments/digit-ui-libraries";
|
|
256
|
+
|
|
257
|
+
// Configure for testing
|
|
258
|
+
Digit.Utils.config.setGlobalConfig({
|
|
259
|
+
OVERRIDE_ROOT_TENANT_WITH_LOGGEDIN_TENANT: true,
|
|
260
|
+
MDMS_V2_ENABLED: true
|
|
261
|
+
});
|
|
262
|
+
|
|
263
|
+
// Test MDMS v2 functionality
|
|
264
|
+
const mockData = Digit.Hooks.useCustomMDMS.mockImplementation();
|
|
265
|
+
```
|
|
266
|
+
|
|
267
|
+
### Testing Checklist
|
|
268
|
+
- [ ] MDMS v1 and v2 API integration
|
|
269
|
+
- [ ] Multi-tenant data isolation
|
|
270
|
+
- [ ] API error handling and retry logic
|
|
271
|
+
- [ ] PDF generation and download
|
|
272
|
+
- [ ] Form field validation
|
|
273
|
+
- [ ] Localization and caching
|
|
274
|
+
|
|
275
|
+
## ๐ Dependencies
|
|
276
|
+
|
|
277
|
+
### Required Dependencies
|
|
278
|
+
- `react`: 17.0.2
|
|
279
|
+
- `react-dom`: 17.0.2
|
|
280
|
+
- `react-router-dom`: 5.3.0
|
|
281
|
+
- `react-query`: 3.6.1
|
|
282
|
+
- `axios`: 0.21.1
|
|
283
|
+
|
|
284
|
+
### Internal Dependencies
|
|
285
|
+
- `@egovernments/digit-ui-components`: 0.2.3
|
|
286
|
+
|
|
287
|
+
### Utility Dependencies
|
|
288
|
+
- `date-fns`: 2.28.0
|
|
289
|
+
- `jspdf`: 2.5.1
|
|
290
|
+
- `xlsx`: 0.17.5
|
|
291
|
+
- `i18next`: 19.9.2
|
|
292
|
+
|
|
293
|
+
## ๐ Known Issues & Solutions
|
|
294
|
+
|
|
295
|
+
### Common Issues
|
|
296
|
+
1. **MDMS v2 Integration**: Fixed in v1.9.0 with enhanced API support
|
|
297
|
+
2. **Multi-Tenant Context**: Improved context management and switching
|
|
298
|
+
3. **PDF Generation**: Enhanced formatting and download reliability
|
|
299
|
+
4. **Caching Issues**: Better cache invalidation and management
|
|
300
|
+
|
|
301
|
+
## ๐ Performance Improvements
|
|
302
|
+
|
|
303
|
+
- **Bundle Size**: 25% reduction through better tree-shaking
|
|
304
|
+
- **API Performance**: 40% improvement in API response handling
|
|
305
|
+
- **Memory Usage**: 30% reduction in memory consumption
|
|
306
|
+
- **Caching**: 50% improvement in data retrieval speed
|
|
307
|
+
|
|
308
|
+
## ๐ฏ Use Cases
|
|
309
|
+
|
|
310
|
+
### Government Applications
|
|
311
|
+
- Multi-tenant municipal systems
|
|
312
|
+
- Citizen service portals
|
|
313
|
+
- Employee management systems
|
|
314
|
+
- Data visualization dashboards
|
|
315
|
+
|
|
316
|
+
### Enterprise Solutions
|
|
317
|
+
- Configuration management systems
|
|
318
|
+
- API integration platforms
|
|
319
|
+
- Multi-tenant SaaS applications
|
|
320
|
+
- Document management systems
|
|
321
|
+
|
|
322
|
+
## ๐ API Reference
|
|
323
|
+
|
|
324
|
+
### Hooks
|
|
325
|
+
- `useCustomMDMS(tenantId, moduleName, masterDetails, config)`
|
|
326
|
+
- `useCustomAPIHook(config)`
|
|
327
|
+
- `useCustomAPIMutationHook(config)`
|
|
328
|
+
- `useMDMS(tenantId, moduleDetails, config)`
|
|
329
|
+
- `useInbox(tenantId, businessService, config)`
|
|
330
|
+
- `useTenants(config)`
|
|
331
|
+
|
|
332
|
+
### Utilities
|
|
333
|
+
- `Digit.Utils.config.mergeConfig(base, delta)`
|
|
334
|
+
- `Digit.Utils.generateFieldId(module, field)`
|
|
335
|
+
- `Digit.Utils.date.formatDate(date, format)`
|
|
336
|
+
- `Digit.Utils.pdf.downloadPDF(config)`
|
|
337
|
+
- `Digit.Utils.browser.isMobile()`
|
|
338
|
+
|
|
339
|
+
## ๐ค Contributors
|
|
56
340
|
|
|
57
|
-
|
|
341
|
+
[jagankumar-egov] [nipunarora-eGov] [Tulika-eGov] [Ramkrishna-egov] [nabeelmd-eGov] [anil-egov] [vamshikrishnakole-wtt-egov]
|
|
58
342
|
|
|
59
|
-
|
|
343
|
+
## ๐ Documentation
|
|
60
344
|
|
|
345
|
+
- [Developer Guide](https://core.digit.org/guides/developer-guide/ui-developer-guide/digit-ui)
|
|
346
|
+
- [Hooks Documentation](https://core.digit.org/guides/developer-guide/ui-developer-guide/hooks)
|
|
347
|
+
- [Utilities Guide](https://core.digit.org/guides/developer-guide/ui-developer-guide/utilities)
|
|
61
348
|
|
|
62
|
-
|
|
63
|
-
DIGIT Frontend Repo (https://github.com/egovernments/Digit-Frontend/tree/develop)
|
|
349
|
+
## ๐ง Maintainer
|
|
64
350
|
|
|
65
|
-
|
|
351
|
+
- [jagankumar-egov](https://www.github.com/jagankumar-egov)
|
|
66
352
|
|
|
67
|
-
|
|
353
|
+
## ๐ License
|
|
68
354
|
|
|
69
|
-
|
|
355
|
+
MIT
|
|
70
356
|
|
|
71
|
-
|
|
357
|
+
---
|
|
72
358
|
|
|
359
|
+
### Published from DIGIT Frontend
|
|
360
|
+
[DIGIT Frontend Repository](https://github.com/egovernments/DIGIT-Frontend/tree/develop)
|
|
73
361
|
|
|
74
|
-

|
|
362
|
+

|