- CampaignsView: update ClusterData interface to match real API response
(severity/unique_ips/score instead of threat_level/total_ips/confidence_range)
Fix fetch to use data.items, rewrite ClusterCard and BehavioralTab
Remove unused getClassificationColor and THREAT_ORDER constants
- analysis.py: fix IPv4Address object has no attribute 'split' on line 322
Add str() conversion before calling .split('.')
- entities.py: fix Date vs DateTime comparison — log_date is a Date column,
comparing against now()-INTERVAL HOUR caused yesterday's entries to be excluded
Use toDate(now() - INTERVAL X HOUR) for correct Date-level comparison
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
42 lines
1.2 KiB
JavaScript
42 lines
1.2 KiB
JavaScript
/** @type {import('tailwindcss').Config} */
|
|
export default {
|
|
content: [
|
|
"./index.html",
|
|
"./src/**/*.{js,ts,jsx,tsx}",
|
|
],
|
|
theme: {
|
|
extend: {
|
|
colors: {
|
|
// Backgrounds — CSS-variable driven for dark/light theming
|
|
background: {
|
|
DEFAULT: 'rgb(var(--color-bg) / <alpha-value>)',
|
|
secondary: 'rgb(var(--color-bg-secondary) / <alpha-value>)',
|
|
card: 'rgb(var(--color-bg-card) / <alpha-value>)',
|
|
},
|
|
text: {
|
|
primary: 'rgb(var(--color-text-primary) / <alpha-value>)',
|
|
secondary: 'rgb(var(--color-text-secondary)/ <alpha-value>)',
|
|
disabled: 'rgb(var(--color-text-disabled) / <alpha-value>)',
|
|
},
|
|
// Threat levels — vivid, same in both themes
|
|
threat: {
|
|
critical: '#EF4444',
|
|
critical_bg: '#7F1D1D',
|
|
high: '#F97316',
|
|
high_bg: '#7C2D12',
|
|
medium: '#EAB308',
|
|
medium_bg: '#713F12',
|
|
low: '#22C55E',
|
|
low_bg: '#14532D',
|
|
},
|
|
// Accents
|
|
accent: {
|
|
primary: '#3B82F6',
|
|
success: '#10B981',
|
|
},
|
|
},
|
|
},
|
|
},
|
|
plugins: [],
|
|
}
|