feat: add privileges management module with CRUD functionality

- Introduced a new Privileges module, including routes for creating, editing, and viewing privileges.
- Implemented a detailed permissions matrix for managing actions (view, create, update, delete, import) associated with each privilege.
- Added validation schema for privilege creation and editing.
- Developed UI components for displaying and managing privilege details and permissions.
- Integrated language support for English and Indonesian in the privileges module.
- Created unit tests for the privileges remote data service and transformer to ensure functionality.

This commit enhances the application by providing a comprehensive privileges management system, improving user role management and permissions handling.
This commit is contained in:
shancheas
2026-08-25 19:06:50 +07:00
parent 67ae5b6c11
commit a5a42cf87e
40 changed files with 1271 additions and 11 deletions
@@ -23,6 +23,7 @@ export enum STATUS_DATA {
INACTIVE = 'inactive',
DEACTIVATED = 'deactivated',
ARCHIVED = 'archived',
REQUEST = 'request',
REQUESTING = 'requesting',
@@ -198,6 +199,7 @@ export const DEFAULT_STATUS_MAP: Record<string, BadgeProps> = {
[STATUS_DATA.TODO]: { color: STATUS_COLOR.TODO, leftSection: getIcon(Clock) },
[STATUS_DATA.INACTIVE]: { color: STATUS_COLOR.INACTIVE, leftSection: getIcon(XCircle) },
[STATUS_DATA.ARCHIVED]: { color: STATUS_COLOR.INACTIVE, leftSection: getIcon(XCircle) },
[STATUS_DATA.DEACTIVATED]: { color: STATUS_COLOR.DEACTIVATED, leftSection: getIcon(XCircle) },
[STATUS_DATA.CLOSE]: { color: STATUS_COLOR.CLOSE, leftSection: getIcon(XCircle) },
[STATUS_DATA.CLOSED]: { color: STATUS_COLOR.CLOSED, leftSection: getIcon(XCircle) },