fix(ui): correct sort state key handling in updateSortUI for PBS tables

This commit is contained in:
courtmanr@gmail.com
2025-04-24 15:10:57 +01:00
parent 463e5f39b0
commit c62df68d7f
5 changed files with 735 additions and 403 deletions
+76 -61
View File
@@ -1,83 +1,98 @@
# Pulse Environment Variables Example
# Copy this file to .env in the same directory and fill in your details.
# DO NOT commit your actual .env file to version control.
# Example .env file for Pulse configuration
# Copy this file to .env and replace placeholder values with your actual credentials.
# --- Primary Proxmox VE Endpoint ---
# Required connection details for your main Proxmox VE host or cluster.
# --- Proxmox VE Endpoint 1 (Required) ---
# Connection details for your primary Proxmox VE host or cluster endpoint.
PROXMOX_HOST=your-proxmox-ip-or-hostname
PROXMOX_TOKEN_ID=your-api-token-id@pam!your-token-name
PROXMOX_TOKEN_SECRET=your-api-token-secret-uuid
PROXMOX_PORT=8006 # Optional, defaults to 8006 if omitted
# Optional: Node name for display (defaults to PROXMOX_HOST if not set)
# PROXMOX_NODE_NAME=MyPrimaryNode
# Authentication: Use *either* API Token (Recommended) *or* User/Password.
# API Token (Recommended):
PROXMOX_TOKEN_ID=your-api-token-id@pam!your-token-name # e.g., root@pam!pulse
PROXMOX_TOKEN_SECRET=your-api-token-secret-uuid # The Secret UUID value
# Optional: Proxmox API port (defaults to 8006 if not set)
# PROXMOX_PORT=8006
# User/Password (Less Recommended):
# PROXMOX_USERNAME=your-proxmox-username # e.g., root
# PROXMOX_PASSWORD=your-password
# PROXMOX_REALM=pam # Optional, defaults to 'pam' if omitted (e.g., pam, pve, ad)
# Optional: Set to 'false' to disable certificate validation (useful for self-signed certs)
# Defaults to 'true' (validation enabled) if not set.
# Optional: Set a friendly name for this endpoint in logs/UI (defaults to host)
PROXMOX_NODE_NAME=My Primary Proxmox
# Optional: Allow self-signed certificates (defaults to true if omitted)
# Set to false if you have a valid certificate from a trusted CA.
PROXMOX_ALLOW_SELF_SIGNED_CERTS=true
# Optional: Fallback username/password (use Token Auth primarily)
# PROXMOX_USERNAME=your_username
# PROXMOX_PASSWORD=your_password
# PROXMOX_REALM=pam # or pve, etc.
# Optional: Set to 'false' to disable this endpoint (defaults to true)
# Optional: Enable/Disable this endpoint (defaults to true if omitted)
# PROXMOX_ENABLED=true
# --- Additional Proxmox VE Endpoints ---
# Use suffixes _2, _3, etc., for more endpoints. HOST, TOKEN_ID, and TOKEN_SECRET are required for each.
# PROXMOX_HOST_2=second-proxmox-ip
# PROXMOX_TOKEN_ID_2=user@realm!token_name
# PROXMOX_TOKEN_SECRET_2=secret-uuid
# PROXMOX_NODE_NAME_2=MySecondNode
# --- Proxmox VE Endpoint 2 (Optional) ---
# Duplicate these variables with a _2 suffix for a second PVE endpoint.
# PROXMOX_HOST_2=second-proxmox-ip-or-hostname
# PROXMOX_PORT_2=8006
# PROXMOX_TOKEN_ID_2=token-id@pam!token-name_2
# PROXMOX_TOKEN_SECRET_2=token-secret-uuid_2
# PROXMOX_NODE_NAME_2=My Second Proxmox
# PROXMOX_ALLOW_SELF_SIGNED_CERTS_2=true
# PROXMOX_ENABLED_2=true
# ... User/Password_2 if needed ...
# PROXMOX_HOST_3=third-proxmox-ip
# PROXMOX_TOKEN_ID_3=user@realm!token_name
# PROXMOX_TOKEN_SECRET_3=secret-uuid
# ... and so on
# --- Primary Proxmox Backup Server (PBS) Endpoint ---
# Required: Set PBS_HOST and EITHER (PBS_USER + PBS_PASSWORD) OR (PBS_TOKEN_ID + PBS_TOKEN_SECRET)
# --- Proxmox VE Endpoint 3, 4, ... (Optional) ---
# Continue the pattern with _3, _4, etc. for more endpoints.
# PROXMOX_HOST_3=...
# PROXMOX_TOKEN_ID_3=...
# PROXMOX_TOKEN_SECRET_3=...
# ...
# --- Proxmox Backup Server (PBS) Endpoint 1 (Optional) ---
PBS_HOST=your-pbs-ip-or-hostname
PBS_PORT=8007 # Optional, defaults to 8007 if omitted
# Option 1: User/Password Authentication
# PBS_USER=your_pbs_user@pbs # e.g., root@pam or backupuser@pbs
# PBS_PASSWORD=your_pbs_password
# PBS_REALM=pbs # Optional: defaults to 'pbs' if using user/pass
# Authentication: Use *either* API Token *or* User/Password.
# API Token (Recommended):
# PBS_TOKEN_ID=your-pbs-api-token-id@pbs!your-token-name # e.g., pulse-reader@pbs!pulse-token
# PBS_TOKEN_SECRET=your-pbs-api-token-secret-uuid
# Option 2: API Token Authentication (Recommended)
PBS_TOKEN_ID=your_pbs_api_token_id@pbs!your_token_name # e.g., backup@pbs!pulse-token
PBS_TOKEN_SECRET=your_pbs_api_token_secret_uuid
# User/Password (Less Recommended):
PBS_USER=root@pam # e.g., root@pam or backup-user@pbs
PBS_PASSWORD=your-password
PBS_REALM=pbs # Optional, defaults to 'pbs' if using User/Password auth
# Optional: PBS instance name for display (defaults to PBS_HOST if not set)
# PBS_NODE_NAME=MyPrimaryPBS
# Optional: Set a friendly name for this endpoint in logs/UI (defaults to host)
PBS_NODE_NAME=My Primary PBS
# Optional: PBS API port (defaults to 8007 if not set)
# PBS_PORT=8007
# Optional: Set to 'false' to disable certificate validation for PBS
# Defaults to 'true' (validation enabled) if not set.
# Optional: Allow self-signed certificates (defaults to true if omitted)
PBS_ALLOW_SELF_SIGNED_CERTS=true
# --- Additional Proxmox Backup Server (PBS) Endpoints ---
# Use suffixes _2, _3, etc., for more PBS instances. PBS_HOST_n and authentication details are required.
# PBS_HOST_2=second-pbs-ip
# Option 1: User/Password
# PBS_USER_2=user@realm
# PBS_PASSWORD_2=password
# PBS_REALM_2=pbs
# Option 2: Token
# PBS_TOKEN_ID_2=token_id@realm!token_name
# PBS_TOKEN_SECRET_2=secret-uuid
# PBS_NODE_NAME_2=MySecondPBS
# PBS_PORT_2=8007
# PBS_ALLOW_SELF_SIGNED_CERTS_2=true
# --- Development Settings ---
# Set to 'development' to enable features like hot-reloading (requires chokidar dev dependency)
# NODE_ENV=development
# --- Proxmox Backup Server (PBS) Endpoint 2 (Optional) ---
# Duplicate these variables with a _2 suffix for a second PBS endpoint.
# PBS_HOST_2=second-pbs-ip-or-hostname
# PBS_PORT_2=8007
# PBS_TOKEN_ID_2=token-id@pbs!token-name_2
# PBS_TOKEN_SECRET_2=token-secret-uuid_2
# PBS_NODE_NAME_2=My Second PBS
# PBS_ALLOW_SELF_SIGNED_CERTS_2=true
# ... User/Password_2 if needed ...
# --- Proxmox Backup Server (PBS) Endpoint 3, 4, ... (Optional) ---
# Continue the pattern with _3, _4, etc. for more endpoints.
# PBS_HOST_3=...
# PBS_TOKEN_ID_3=...
# PBS_TOKEN_SECRET_3=...
# ...
# Development Settings
ENABLE_HOT_RELOAD=true # Set to false to disable hot reload
# --- Pulse Interval Configuration (Optional) ---
# Adjust how frequently Pulse fetches data. Lower values mean more real-time data
# but increase load on PVE/PBS hosts. Values are in milliseconds.
#
# PULSE_METRIC_INTERVAL_MS=2000 # Default: 2000 (2 seconds) - Frequency for fetching guest CPU/Mem/IO stats.
# PULSE_DISCOVERY_INTERVAL_MS=30000 # Default: 30000 (30 seconds) - Frequency for fetching node/guest lists and PBS data.