feat: Initialize License Tracker Pro v1.2 project
Adds initial project structure, dependencies, and basic configuration for the License Tracker Pro v1.2 application. This includes setting up Vite for the build process, defining core types, and incorporating essential UI components like icons and a timeline. The project is now ready for development.
This commit is contained in:
@@ -0,0 +1,102 @@
|
||||
|
||||
export interface Renewal {
|
||||
id: string;
|
||||
renewalDate: string;
|
||||
endDate?: string;
|
||||
renewalPrice: number;
|
||||
notes?: string;
|
||||
}
|
||||
|
||||
export interface LicenseFile {
|
||||
id: number;
|
||||
fileName: string;
|
||||
mimeType: string;
|
||||
fileSize: number;
|
||||
}
|
||||
|
||||
export interface NotificationGroup {
|
||||
id: number;
|
||||
groupName: string;
|
||||
emails: string;
|
||||
created_at: string;
|
||||
}
|
||||
|
||||
export interface Contact {
|
||||
id?: number;
|
||||
vendorName: string;
|
||||
contactName: string;
|
||||
contactEmail: string;
|
||||
contactPhone: string;
|
||||
}
|
||||
|
||||
export interface AuditLog {
|
||||
id: number;
|
||||
user_id: number;
|
||||
username: string;
|
||||
action_type: 'CREATE' | 'UPDATE' | 'DELETE' | 'LOGIN' | 'LOGOUT';
|
||||
entity_type: string;
|
||||
entity_id: string;
|
||||
entity_name: string;
|
||||
details: string;
|
||||
created_at: string;
|
||||
}
|
||||
|
||||
export interface License {
|
||||
id:string;
|
||||
image?: string;
|
||||
licenseName: string;
|
||||
companyName: string;
|
||||
responsiblePerson: string;
|
||||
purchaseDate: string;
|
||||
endDate?: string;
|
||||
purchasePrice: number;
|
||||
vendorName: string;
|
||||
vendorContact: {
|
||||
name: string;
|
||||
email: string;
|
||||
phone: string;
|
||||
};
|
||||
notificationGroupId?: number | null;
|
||||
comments: string;
|
||||
renewals: Renewal[];
|
||||
files?: LicenseFile[];
|
||||
tags?: string[];
|
||||
isActive: boolean;
|
||||
}
|
||||
|
||||
export interface User {
|
||||
id: number;
|
||||
username: string;
|
||||
email?: string;
|
||||
role: 'admin' | 'editor';
|
||||
auth_source: 'local' | 'azure' | 'ldap';
|
||||
created_at: string;
|
||||
}
|
||||
|
||||
export interface AppSettings {
|
||||
fiscal_start_month: number;
|
||||
alert_days: number;
|
||||
smtp_host: string;
|
||||
smtp_port: string;
|
||||
smtp_user: string;
|
||||
smtp_pass: string;
|
||||
smtp_from: string;
|
||||
azure_enabled: boolean;
|
||||
azure_tenant_id: string;
|
||||
azure_client_id: string;
|
||||
azure_client_secret: string;
|
||||
ldap_enabled: boolean;
|
||||
ldap_host: string;
|
||||
ldap_port: string;
|
||||
ldap_base_dn: string;
|
||||
ldap_bind_dn: string;
|
||||
ldap_bind_pass: string;
|
||||
ldap_user_filter: string;
|
||||
allow_local_login: boolean;
|
||||
}
|
||||
|
||||
export interface AIInsight {
|
||||
status: 'saving' | 'warning' | 'neutral';
|
||||
advice: string;
|
||||
suggested_alternatives: string[];
|
||||
}
|
||||
Reference in New Issue
Block a user