@vcr/zabbix-groups-widget (1.0.0-5-ge87af7b)
Installation
@vcr:registry=npm install @vcr/zabbix-groups-widget@1.0.0-5-ge87af7b"@vcr/zabbix-groups-widget": "1.0.0-5-ge87af7b"About this package
📊 Zabbix Groups Widget
This widget provides an overview of Zabbix host groups and their associated statuses, specifically designed for the Virtual Control Room (VCR) and roadwork scenarios.
🎯 Purpose
The main goal of this widget is to allow VCR operators to visualize and manage host groups, facilitating the monitoring of multiple sites simultaneously.
⚙️ Technical Stack
- Framework: Angular
- Core Library: Uses
@vcr/zabbix-widget-commonsfor shared models and Zabbix API integration. - API: GraphQL via Zabbix GraphQL API.
📝 Documentation
- Requirements: Detailed project requirements can be found in docs/requirements.md.
- Preconditions: Preconditions for using the Groups Wizard are described in docs/preconditions.md.
- Local Development: Guide for setting up a local development environment.
- Usage Samples: Example of roadwork usage.
- Deployment: (TBD)
🛡️ User Rights and Permissions
The widget respects the Zabbix-web user concept and permissions. User rights depend on the assigned Zabbix role and user group memberships as described in the User Concept Specification.
The following rights are evaluated within the widget:
- Read-Write Permission: Required for administrative tasks such as:
- Creating new host groups and associated dashboards/maps.
- Updating existing host groups.
- Delete Permission: Required to delete host groups.
- Archive Permission: Required to archive host groups.
The current user's permissions are provided via the UserPermissionsService and derived from the environment.zabbixHostgroupPermissionObject and other relevant permission objects.
📜 Development
This project is part of the VCR ecosystem and follows the project's coding and documentation standards.
- Coding Standards: Follows the VCR project guidelines.
- Git Standards: Uses Conventional Commits.
Dependencies
Dependencies
| ID | Version |
|---|---|
| @angular/common | ^21.2.4 |
| @angular/compiler | ^21.2.4 |
| @angular/core | ^21.2.4 |
| @angular/elements | ^21.2.4 |
| @angular/forms | ^21.2.4 |
| @angular/platform-browser | ^21.2.4 |
| @angular/platform-browser-dynamic | ^21.2.4 |
| @apollo/client | ^4.1.6 |
| @tailwindcss/postcss | ^4.0.3 |
| @vcr/zabbix-widget-commons | ^1.0.2-4-g5a95fa6 |
| apollo-angular | ^13.0.0 |
| git-describe | ^4.1.1 |
| graphql | ^16.12.0 |
| postcss-loader | ^8.1.1 |
| postcss-scss | ^4.0.9 |
| rxjs | ~7.8.0 |
| tailwind-material | ^0.0.22 |
| tslib | ^2.3.0 |
| uuid | ^10.0.0 |
| zone.js | ~0.15.0 |
Development dependencies
| ID | Version |
|---|---|
| @angular/build | ^21.2.2 |
| @angular/cli | ^21.2.2 |
| @angular/compiler-cli | ^21.2.4 |
| @angular/localize | ^21.2.5 |
| @graphql-codegen/cli | ^6.1.3 |
| @graphql-codegen/fragment-matcher | ^6.0.0 |
| @graphql-codegen/typescript | ^5.0.9 |
| @graphql-codegen/typescript-apollo-angular | ^5.0.0 |
| @graphql-codegen/typescript-resolvers | ^5.1.7 |
| @ngx-env/builder | ^21.0.1 |
| @types/jasmine | ^6.0.0 |
| @types/node | ^24.12.0 |
| autoprefixer | ^10.4.20 |
| dotenv | ^17.2.3 |
| jsdom | ^27.1.0 |
| postcss | ^8.5.1 |
| tailwindcss | ^4.0.3 |
| ts-node | ^10.9.2 |
| typescript | ~5.9.2 |
| vitest | ^4.0.18 |