# UI V3 Changelog Major updates and improvements in this release: ## Core Changes - Complete NEW REWRITTEN UI system overhaul (V3) with semantic design tokens - New settings management system with drag-and-drop capabilities - Enhanced provider system supporting multiple AI services - Improved theme system with better dark mode support - New component library with consistent design patterns ## Technical Updates - Reorganized project architecture for better maintainability - Performance optimizations and bundle size improvements - Enhanced security features and access controls - Improved developer experience with better tooling - Comprehensive testing infrastructure ## New Features - Background rays effect for improved visual feedback - Advanced tab management system - Automatic and manual update support - Enhanced error handling and visualization - Improved accessibility across all components For detailed information about all changes and improvements, please see the full changelog.
41 lines
1.5 KiB
TypeScript
41 lines
1.5 KiB
TypeScript
import { BaseProviderChecker } from '~/components/@settings/tabs/providers/service-status/base-provider';
|
|
import type { StatusCheckResult } from '~/components/@settings/tabs/providers/service-status/types';
|
|
|
|
export class HyperbolicStatusChecker extends BaseProviderChecker {
|
|
async checkStatus(): Promise<StatusCheckResult> {
|
|
try {
|
|
/*
|
|
* Check API endpoint directly since Hyperbolic is a newer provider
|
|
* and may not have a public status page yet
|
|
*/
|
|
const apiEndpoint = 'https://api.hyperbolic.ai/v1/models';
|
|
const apiStatus = await this.checkEndpoint(apiEndpoint);
|
|
|
|
// Check their website as a secondary indicator
|
|
const websiteStatus = await this.checkEndpoint('https://hyperbolic.ai');
|
|
|
|
let status: StatusCheckResult['status'] = 'operational';
|
|
let message = 'All systems operational';
|
|
|
|
if (apiStatus !== 'reachable' || websiteStatus !== 'reachable') {
|
|
status = apiStatus !== 'reachable' ? 'down' : 'degraded';
|
|
message = apiStatus !== 'reachable' ? 'API appears to be down' : 'Service may be experiencing issues';
|
|
}
|
|
|
|
return {
|
|
status,
|
|
message,
|
|
incidents: [], // No public incident tracking available yet
|
|
};
|
|
} catch (error) {
|
|
console.error('Error checking Hyperbolic status:', error);
|
|
|
|
return {
|
|
status: 'degraded',
|
|
message: 'Unable to determine service status',
|
|
incidents: ['Note: Limited status information available'],
|
|
};
|
|
}
|
|
}
|
|
}
|