@react-pakistan/util-functions 1.25.56 → 1.25.58
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.
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* Generates tables, forms, drawers, and other common UI patterns.
|
|
6
6
|
*/
|
|
7
7
|
import React, { FC } from 'react';
|
|
8
|
-
import { COMPONENT_TYPE, HeaderAction, TableColumn } from '@appcorp/shadcn/components/enhanced-table';
|
|
8
|
+
import { COMPONENT_TYPE, HeaderAction, RowAction, TableColumn } from '@appcorp/shadcn/components/enhanced-table';
|
|
9
9
|
export declare const DRAWER_TYPES: {
|
|
10
10
|
FORM_DRAWER: string;
|
|
11
11
|
FILTER_DRAWER: string;
|
|
@@ -59,7 +59,7 @@ interface GenericModulePageProps {
|
|
|
59
59
|
context: any;
|
|
60
60
|
tableBodyCols: TableBodyCol[];
|
|
61
61
|
headerActions?: HeaderAction[];
|
|
62
|
-
rowActions?:
|
|
62
|
+
rowActions?: RowAction[];
|
|
63
63
|
iconMap?: Record<string, any>;
|
|
64
64
|
}
|
|
65
65
|
export declare const createGenericModulePage: (config: ComponentConfig) => React.FC<GenericModulePageProps>;
|
|
@@ -42,7 +42,6 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
42
42
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
43
43
|
exports.createGenericModulePage = exports.GenericDrawer = exports.GenericTable = exports.DRAWER_TYPES = void 0;
|
|
44
44
|
var react_1 = __importStar(require("react"));
|
|
45
|
-
var next_intl_1 = require("next-intl");
|
|
46
45
|
var general_1 = require("../general");
|
|
47
46
|
var use_rtl_1 = require("../hooks/use-rtl");
|
|
48
47
|
var enhanced_table_1 = require("@appcorp/shadcn/components/enhanced-table");
|
|
@@ -61,27 +60,28 @@ exports.DRAWER_TYPES = {
|
|
|
61
60
|
};
|
|
62
61
|
var GenericTable = function (_a) {
|
|
63
62
|
var config = _a.config, context = _a.context, tableBodyCols = _a.tableBodyCols, headerActions = _a.headerActions, rowActions = _a.rowActions;
|
|
64
|
-
var t = (0, next_intl_1.useTranslations)(config.moduleName);
|
|
65
63
|
var isRTL = (0, use_rtl_1.useRTL)();
|
|
64
|
+
var numberOfFilters = (0, react_1.useMemo)(function () {
|
|
65
|
+
return Object.keys(context.state).filter(function (key) { return key.startsWith('filter') && context.state[key]; }).length;
|
|
66
|
+
}, [context.state]);
|
|
66
67
|
var tableHeadItems = (0, react_1.useMemo)(function () {
|
|
67
68
|
return config.tableColumns.map(function (col) { return ({
|
|
68
|
-
label:
|
|
69
|
+
label: col.label,
|
|
69
70
|
width: col.width,
|
|
70
71
|
}); });
|
|
71
|
-
}, [config.tableColumns
|
|
72
|
+
}, [config.tableColumns]);
|
|
72
73
|
var totalPages = (0, general_1.calculatePages)(context.state.count, context.state.pageLimit);
|
|
73
74
|
// Build header actions from context or props
|
|
74
75
|
var allHeaderActions = (0, react_1.useMemo)(function () { return headerActions || context.headerActions || []; }, [headerActions, context.headerActions]);
|
|
75
76
|
return (react_1.default.createElement("div", { className: "space-y-4 ".concat(isRTL ? 'rtl' : 'ltr'), dir: isRTL ? 'rtl' : 'ltr' },
|
|
76
77
|
react_1.default.createElement(enhanced_table_1.EnhancedTable, { currentPage: Number(context.state.currentPage), handleNextOnClick: context.handlePageChange, handleOnSelect: context.handlePageLimitChange, handlePreviousOnClick: function () {
|
|
77
78
|
return context.handlePageChange(context.state.currentPage - 1);
|
|
78
|
-
}, handleSearchInput: context.handleSearch, headerActions: allHeaderActions, isNextDisabled: (0, general_1.isNextButtonDisabled)(context.state.currentPage, totalPages), isPreviousDisabled: (0, general_1.isPreviousButtonDisabled)(context.state.currentPage), listOptions: (0, general_1.getAvailablePageLimits)(context.state.count), loading: context.listLoading, nodeSelectKey: "pageLimit", pageLimit: context.state.pageLimit, rowActions: rowActions || context.rowActions || [], searchDisabled: false, searchEnabled: true, searchId: "".concat(config.moduleName.toLowerCase(), "-search"), searchPlaceholder:
|
|
79
|
+
}, handleSearchInput: context.handleSearch, headerActions: allHeaderActions, isNextDisabled: (0, general_1.isNextButtonDisabled)(context.state.currentPage, totalPages), isPreviousDisabled: (0, general_1.isPreviousButtonDisabled)(context.state.currentPage), listOptions: (0, general_1.getAvailablePageLimits)(context.state.count), loading: context.listLoading, nodeSelectKey: "pageLimit", pageLimit: context.state.pageLimit, rowActions: rowActions || context.rowActions || [], searchDisabled: false, searchEnabled: true, searchId: "".concat(config.moduleName.toLowerCase(), "-search"), searchPlaceholder: config.searchPlaceholder, searchValue: context.state.searchQuery, tableBodyCols: tableBodyCols, tableBodyRows: context.state.items, tableDescription: config.tableDescription, tableHeadItems: tableHeadItems, tableHeading: config.tableTitle, totalPages: Number(totalPages), numberOfFilters: numberOfFilters })));
|
|
79
80
|
};
|
|
80
81
|
exports.GenericTable = GenericTable;
|
|
81
82
|
var GenericDrawer = function (_a) {
|
|
82
83
|
var _b, _c, _d, _e, _f, _g;
|
|
83
84
|
var config = _a.config, context = _a.context, formContent = _a.formContent, viewContent = _a.viewContent, filterContent = _a.filterContent, moreActionsContent = _a.moreActionsContent;
|
|
84
|
-
var t = (0, next_intl_1.useTranslations)(config.moduleName);
|
|
85
85
|
var isRTL = (0, use_rtl_1.useRTL)();
|
|
86
86
|
var closeDrawer = context.closeDrawer || context.handleCloseDrawer;
|
|
87
87
|
var _h = context.state, disableSaveButton = _h.disableSaveButton, drawer = _h.drawer;
|
|
@@ -90,9 +90,9 @@ var GenericDrawer = function (_a) {
|
|
|
90
90
|
var isFilterDrawer = drawer === exports.DRAWER_TYPES.FILTER_DRAWER;
|
|
91
91
|
var isMoreActionsDrawer = drawer === exports.DRAWER_TYPES.MORE_ACTIONS_DRAWER;
|
|
92
92
|
var isOpen = isFormDrawer || isViewDrawer || isFilterDrawer || isMoreActionsDrawer;
|
|
93
|
-
var drawerTitle =
|
|
93
|
+
var drawerTitle = config.drawerTitle;
|
|
94
94
|
var drawerDescription = config.drawerDescription
|
|
95
|
-
?
|
|
95
|
+
? config.drawerDescription
|
|
96
96
|
: '';
|
|
97
97
|
var errors = (_b = context.state.errors) !== null && _b !== void 0 ? _b : {};
|
|
98
98
|
var formHeader = isFormDrawer ? (react_1.default.createElement(enhanced_drawer_header_1.EnhancedDrawerHeader, { title: drawerTitle, description: drawerDescription })) : null;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@react-pakistan/util-functions",
|
|
3
|
-
"version": "1.25.
|
|
3
|
+
"version": "1.25.58",
|
|
4
4
|
"description": "A library of all util functions",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"scripts": {
|
|
@@ -75,7 +75,7 @@
|
|
|
75
75
|
"lodash.curry": "^4.1.1",
|
|
76
76
|
"lodash.isequal": "^4.5.0",
|
|
77
77
|
"next": "^15",
|
|
78
|
-
"next-intl": "^4.
|
|
78
|
+
"next-intl": "^4.9.0",
|
|
79
79
|
"prettier": "^3.4.2",
|
|
80
80
|
"react": "^19.2.0",
|
|
81
81
|
"react-dom": "^19.2.0",
|