@b3-crow/ui-kit 0.0.34 → 0.0.35-pr30.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/cards/TipCard.d.ts +5 -0
- package/dist/components/cards/TipCard.d.ts.map +1 -0
- package/dist/components/cards/TipCard.js +10 -0
- package/dist/components/cards/TipCard.js.map +1 -0
- package/dist/components/chat/MessageBubble.d.ts +13 -0
- package/dist/components/chat/MessageBubble.d.ts.map +1 -0
- package/dist/components/chat/MessageBubble.js +19 -0
- package/dist/components/chat/MessageBubble.js.map +1 -0
- package/dist/components/dashboard/ChatHistorySection.d.ts +4 -0
- package/dist/components/dashboard/ChatHistorySection.d.ts.map +1 -0
- package/dist/components/dashboard/ChatHistorySection.js +121 -0
- package/dist/components/dashboard/ChatHistorySection.js.map +1 -0
- package/dist/components/dashboard/CollapseToggleButton.d.ts +7 -0
- package/dist/components/dashboard/CollapseToggleButton.d.ts.map +1 -0
- package/dist/components/dashboard/CollapseToggleButton.js +7 -0
- package/dist/components/dashboard/CollapseToggleButton.js.map +1 -0
- package/dist/components/dashboard/DashboardBackground.d.ts +4 -0
- package/dist/components/dashboard/DashboardBackground.d.ts.map +1 -0
- package/dist/components/dashboard/DashboardBackground.js +20 -0
- package/dist/components/dashboard/DashboardBackground.js.map +1 -0
- package/dist/components/dashboard/Header.d.ts +4 -0
- package/dist/components/dashboard/Header.d.ts.map +1 -0
- package/dist/components/dashboard/Header.js +127 -0
- package/dist/components/dashboard/Header.js.map +1 -0
- package/dist/components/dashboard/MetricsCard.d.ts +10 -0
- package/dist/components/dashboard/MetricsCard.d.ts.map +1 -0
- package/dist/components/dashboard/MetricsCard.js +27 -0
- package/dist/components/dashboard/MetricsCard.js.map +1 -0
- package/dist/components/dashboard/MobileSidebar.d.ts +4 -0
- package/dist/components/dashboard/MobileSidebar.d.ts.map +1 -0
- package/dist/components/dashboard/MobileSidebar.js +45 -0
- package/dist/components/dashboard/MobileSidebar.js.map +1 -0
- package/dist/components/dashboard/NavMenu.d.ts +10 -0
- package/dist/components/dashboard/NavMenu.d.ts.map +1 -0
- package/dist/components/dashboard/NavMenu.js +68 -0
- package/dist/components/dashboard/NavMenu.js.map +1 -0
- package/dist/components/dashboard/NavTooltip.d.ts +10 -0
- package/dist/components/dashboard/NavTooltip.d.ts.map +1 -0
- package/dist/components/dashboard/NavTooltip.js +36 -0
- package/dist/components/dashboard/NavTooltip.js.map +1 -0
- package/dist/components/dashboard/PatternCard.d.ts +15 -0
- package/dist/components/dashboard/PatternCard.d.ts.map +1 -0
- package/dist/components/dashboard/PatternCard.js +45 -0
- package/dist/components/dashboard/PatternCard.js.map +1 -0
- package/dist/components/dashboard/SettingsDropup.d.ts +10 -0
- package/dist/components/dashboard/SettingsDropup.d.ts.map +1 -0
- package/dist/components/dashboard/SettingsDropup.js +94 -0
- package/dist/components/dashboard/SettingsDropup.js.map +1 -0
- package/dist/components/dashboard/SettingsModal.d.ts +4 -0
- package/dist/components/dashboard/SettingsModal.d.ts.map +1 -0
- package/dist/components/dashboard/SettingsModal.js +56 -0
- package/dist/components/dashboard/SettingsModal.js.map +1 -0
- package/dist/components/dashboard/SidePanel.d.ts +12 -0
- package/dist/components/dashboard/SidePanel.d.ts.map +1 -0
- package/dist/components/dashboard/SidePanel.js +79 -0
- package/dist/components/dashboard/SidePanel.js.map +1 -0
- package/dist/components/dashboard/Sidebar.d.ts +4 -0
- package/dist/components/dashboard/Sidebar.d.ts.map +1 -0
- package/dist/components/dashboard/Sidebar.js +15 -0
- package/dist/components/dashboard/Sidebar.js.map +1 -0
- package/dist/components/dashboard/SidebarLogo.d.ts +9 -0
- package/dist/components/dashboard/SidebarLogo.d.ts.map +1 -0
- package/dist/components/dashboard/SidebarLogo.js +10 -0
- package/dist/components/dashboard/SidebarLogo.js.map +1 -0
- package/dist/components/dashboard/constants/accessibility.d.ts +24 -0
- package/dist/components/dashboard/constants/accessibility.d.ts.map +1 -0
- package/dist/components/dashboard/constants/accessibility.js +26 -0
- package/dist/components/dashboard/constants/accessibility.js.map +1 -0
- package/dist/components/dashboard/constants/animations.d.ts +73 -0
- package/dist/components/dashboard/constants/animations.d.ts.map +1 -0
- package/dist/components/dashboard/constants/animations.js +48 -0
- package/dist/components/dashboard/constants/animations.js.map +1 -0
- package/dist/components/dashboard/constants/colors.d.ts +55 -0
- package/dist/components/dashboard/constants/colors.d.ts.map +1 -0
- package/dist/components/dashboard/constants/colors.js +55 -0
- package/dist/components/dashboard/constants/colors.js.map +1 -0
- package/dist/components/dashboard/constants/gradients.d.ts +29 -0
- package/dist/components/dashboard/constants/gradients.d.ts.map +1 -0
- package/dist/components/dashboard/constants/gradients.js +29 -0
- package/dist/components/dashboard/constants/gradients.js.map +1 -0
- package/dist/components/dashboard/constants/icons.d.ts +4 -0
- package/dist/components/dashboard/constants/icons.d.ts.map +1 -0
- package/dist/components/dashboard/constants/icons.js +23 -0
- package/dist/components/dashboard/constants/icons.js.map +1 -0
- package/dist/components/dashboard/constants/navigation.d.ts +3 -0
- package/dist/components/dashboard/constants/navigation.d.ts.map +1 -0
- package/dist/components/dashboard/constants/navigation.js +35 -0
- package/dist/components/dashboard/constants/navigation.js.map +1 -0
- package/dist/components/dashboard/constants/sizing.d.ts +61 -0
- package/dist/components/dashboard/constants/sizing.d.ts.map +1 -0
- package/dist/components/dashboard/constants/sizing.js +49 -0
- package/dist/components/dashboard/constants/sizing.js.map +1 -0
- package/dist/components/dashboard/constants/styles.d.ts +44 -0
- package/dist/components/dashboard/constants/styles.d.ts.map +1 -0
- package/dist/components/dashboard/constants/styles.js +44 -0
- package/dist/components/dashboard/constants/styles.js.map +1 -0
- package/dist/components/dashboard/constants.d.ts +32 -0
- package/dist/components/dashboard/constants.d.ts.map +1 -0
- package/dist/components/dashboard/constants.js +105 -0
- package/dist/components/dashboard/constants.js.map +1 -0
- package/dist/components/dashboard/index.d.ts +38 -0
- package/dist/components/dashboard/index.d.ts.map +1 -0
- package/dist/components/dashboard/index.js +38 -0
- package/dist/components/dashboard/index.js.map +1 -0
- package/dist/components/dashboard/types.d.ts +94 -0
- package/dist/components/dashboard/types.d.ts.map +1 -0
- package/dist/components/dashboard/types.js +2 -0
- package/dist/components/dashboard/types.js.map +1 -0
- package/dist/components/dashboard/utils/accessibilityUtils.d.ts +9 -0
- package/dist/components/dashboard/utils/accessibilityUtils.d.ts.map +1 -0
- package/dist/components/dashboard/utils/accessibilityUtils.js +56 -0
- package/dist/components/dashboard/utils/accessibilityUtils.js.map +1 -0
- package/dist/components/dashboard/utils/pathUtils.d.ts +4 -0
- package/dist/components/dashboard/utils/pathUtils.d.ts.map +1 -0
- package/dist/components/dashboard/utils/pathUtils.js +16 -0
- package/dist/components/dashboard/utils/pathUtils.js.map +1 -0
- package/dist/components/display/IconBadge.d.ts +12 -0
- package/dist/components/display/IconBadge.d.ts.map +1 -0
- package/dist/components/display/IconBadge.js +26 -0
- package/dist/components/display/IconBadge.js.map +1 -0
- package/dist/components/display/SourceIcon.d.ts +7 -0
- package/dist/components/display/SourceIcon.d.ts.map +1 -0
- package/dist/components/display/SourceIcon.js +23 -0
- package/dist/components/display/SourceIcon.js.map +1 -0
- package/dist/components/display/StatusBadge.d.ts +14 -0
- package/dist/components/display/StatusBadge.d.ts.map +1 -0
- package/dist/components/display/StatusBadge.js +30 -0
- package/dist/components/display/StatusBadge.js.map +1 -0
- package/dist/components/display/StatusIndicator.d.ts +7 -0
- package/dist/components/display/StatusIndicator.d.ts.map +1 -0
- package/dist/components/display/StatusIndicator.js +26 -0
- package/dist/components/display/StatusIndicator.js.map +1 -0
- package/dist/components/display/Tag.d.ts +7 -0
- package/dist/components/display/Tag.d.ts.map +1 -0
- package/dist/components/display/Tag.js +12 -0
- package/dist/components/display/Tag.js.map +1 -0
- package/dist/components/feedback/GeneratingState.d.ts +12 -0
- package/dist/components/feedback/GeneratingState.d.ts.map +1 -0
- package/dist/components/feedback/GeneratingState.js +19 -0
- package/dist/components/feedback/GeneratingState.js.map +1 -0
- package/dist/components/index.d.ts +17 -0
- package/dist/components/index.d.ts.map +1 -1
- package/dist/components/index.js +17 -0
- package/dist/components/index.js.map +1 -1
- package/dist/components/inputs/FilterDropdown.d.ts +14 -0
- package/dist/components/inputs/FilterDropdown.d.ts.map +1 -0
- package/dist/components/inputs/FilterDropdown.js +112 -0
- package/dist/components/inputs/FilterDropdown.js.map +1 -0
- package/dist/components/inputs/SearchInput.d.ts +14 -0
- package/dist/components/inputs/SearchInput.d.ts.map +1 -0
- package/dist/components/inputs/SearchInput.js +38 -0
- package/dist/components/inputs/SearchInput.js.map +1 -0
- package/dist/components/inputs/SuggestionChip.d.ts +10 -0
- package/dist/components/inputs/SuggestionChip.d.ts.map +1 -0
- package/dist/components/inputs/SuggestionChip.js +12 -0
- package/dist/components/inputs/SuggestionChip.js.map +1 -0
- package/dist/components/inputs/ToggleSwitch.d.ts +8 -0
- package/dist/components/inputs/ToggleSwitch.d.ts.map +1 -0
- package/dist/components/inputs/ToggleSwitch.js +29 -0
- package/dist/components/inputs/ToggleSwitch.js.map +1 -0
- package/dist/components/layout/GlassPanel.d.ts +4 -0
- package/dist/components/layout/GlassPanel.d.ts.map +1 -0
- package/dist/components/layout/GlassPanel.js +11 -0
- package/dist/components/layout/GlassPanel.js.map +1 -0
- package/dist/components/layout/ListItem.d.ts +10 -0
- package/dist/components/layout/ListItem.d.ts.map +1 -0
- package/dist/components/layout/ListItem.js +14 -0
- package/dist/components/layout/ListItem.js.map +1 -0
- package/dist/components/layout/SectionHeader.d.ts +13 -0
- package/dist/components/layout/SectionHeader.d.ts.map +1 -0
- package/dist/components/layout/SectionHeader.js +22 -0
- package/dist/components/layout/SectionHeader.js.map +1 -0
- package/dist/components/providers/LenisProvider.d.ts +22 -0
- package/dist/components/providers/LenisProvider.d.ts.map +1 -0
- package/dist/components/providers/LenisProvider.js +45 -0
- package/dist/components/providers/LenisProvider.js.map +1 -0
- package/dist/styles.css +1 -1
- package/package.json +23 -14
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
export const GLASS_STYLES = {
|
|
2
|
+
light: {
|
|
3
|
+
className: 'bg-white/[0.02] border-white/[0.06] backdrop-blur-sm',
|
|
4
|
+
style: {
|
|
5
|
+
background: 'rgba(255, 255, 255, 0.02)',
|
|
6
|
+
border: '1px solid rgba(255, 255, 255, 0.06)',
|
|
7
|
+
},
|
|
8
|
+
},
|
|
9
|
+
heavy: {
|
|
10
|
+
className: 'bg-white/[0.02] border-white/[0.08] backdrop-blur-md',
|
|
11
|
+
style: {
|
|
12
|
+
background: 'rgba(255, 255, 255, 0.02)',
|
|
13
|
+
border: '1px solid rgba(255, 255, 255, 0.08)',
|
|
14
|
+
},
|
|
15
|
+
},
|
|
16
|
+
};
|
|
17
|
+
export const MODAL_STYLES = {
|
|
18
|
+
backdrop: {
|
|
19
|
+
className: 'fixed inset-0 bg-black/60 backdrop-blur-sm z-[100]',
|
|
20
|
+
style: {
|
|
21
|
+
background: 'rgba(0, 0, 0, 0.60)',
|
|
22
|
+
backdropFilter: 'blur(4px)',
|
|
23
|
+
},
|
|
24
|
+
},
|
|
25
|
+
container: {
|
|
26
|
+
className: 'bg-[rgba(10,5,20,0.98)] backdrop-blur-[20px] rounded-2xl border border-white/[0.08]',
|
|
27
|
+
style: {
|
|
28
|
+
background: 'rgba(10, 5, 20, 0.98)',
|
|
29
|
+
borderColor: 'rgba(255, 255, 255, 0.08)',
|
|
30
|
+
},
|
|
31
|
+
},
|
|
32
|
+
shadow: 'shadow-[0px_24px_48px_rgba(0,0,0,0.5),0px_0px_1px_rgba(139,92,246,0.3)]',
|
|
33
|
+
};
|
|
34
|
+
export const DROPDOWN_STYLES = {
|
|
35
|
+
container: 'fixed min-w-[160px] py-1 rounded-lg bg-[rgba(20,10,35,0.98)] border border-white/10 shadow-[0_10px_40px_rgba(0,0,0,0.5)]',
|
|
36
|
+
menuItem: 'w-full px-3 py-2 flex items-center justify-between text-left transition-colors',
|
|
37
|
+
menuItemHovered: 'bg-white/5',
|
|
38
|
+
};
|
|
39
|
+
export const BORDER_COLORS = {
|
|
40
|
+
light: 'border-white/[0.06]',
|
|
41
|
+
default: 'border-white/[0.08]',
|
|
42
|
+
heavy: 'border-white/[0.10]',
|
|
43
|
+
};
|
|
44
|
+
//# sourceMappingURL=styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"styles.js","sourceRoot":"","sources":["../../../../src/components/dashboard/constants/styles.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,KAAK,EAAE;QACL,SAAS,EAAE,sDAAsD;QACjE,KAAK,EAAE;YACL,UAAU,EAAE,2BAA2B;YACvC,MAAM,EAAE,qCAAqC;SAC9C;KACF;IACD,KAAK,EAAE;QACL,SAAS,EAAE,sDAAsD;QACjE,KAAK,EAAE;YACL,UAAU,EAAE,2BAA2B;YACvC,MAAM,EAAE,qCAAqC;SAC9C;KACF;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,QAAQ,EAAE;QACR,SAAS,EAAE,oDAAoD;QAC/D,KAAK,EAAE;YACL,UAAU,EAAE,qBAAqB;YACjC,cAAc,EAAE,WAAW;SAC5B;KACF;IACD,SAAS,EAAE;QACT,SAAS,EACP,qFAAqF;QACvF,KAAK,EAAE;YACL,UAAU,EAAE,uBAAuB;YACnC,WAAW,EAAE,2BAA2B;SACzC;KACF;IACD,MAAM,EACJ,yEAAyE;CAC5E,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG;IAC7B,SAAS,EACP,0HAA0H;IAC5H,QAAQ,EACN,gFAAgF;IAClF,eAAe,EAAE,YAAY;CAC9B,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,KAAK,EAAE,qBAAqB;IAC5B,OAAO,EAAE,qBAAqB;IAC9B,KAAK,EAAE,qBAAqB;CAC7B,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { FilterOption } from '../inputs/FilterDropdown';
|
|
2
|
+
import type { ConfidenceLevel, SeverityLevel } from './types';
|
|
3
|
+
export { FOCUSABLE_ELEMENTS, KEYBOARD_KEYS, KEYBOARD_PATTERNS, } from './constants/accessibility';
|
|
4
|
+
export { ANIMATION_PRESETS, MOTION_VARIANTS } from './constants/animations';
|
|
5
|
+
export { COLOR_PALETTE } from './constants/colors';
|
|
6
|
+
export { CHART_COLORS, GRADIENT_CONFIG } from './constants/gradients';
|
|
7
|
+
export { getIcon, ICON_REGISTRY } from './constants/icons';
|
|
8
|
+
export { DEFAULT_NAV_ITEMS } from './constants/navigation';
|
|
9
|
+
export { SIZING, SPACING } from './constants/sizing';
|
|
10
|
+
export { BORDER_COLORS, DROPDOWN_STYLES, GLASS_STYLES, MODAL_STYLES, } from './constants/styles';
|
|
11
|
+
export declare const SEVERITY_CONFIG: Record<SeverityLevel, {
|
|
12
|
+
label: string;
|
|
13
|
+
color: string;
|
|
14
|
+
bg: string;
|
|
15
|
+
border: string;
|
|
16
|
+
}>;
|
|
17
|
+
export declare const CONFIDENCE_CONFIG: Record<ConfidenceLevel, {
|
|
18
|
+
label: string;
|
|
19
|
+
color: string;
|
|
20
|
+
bg: string;
|
|
21
|
+
border: string;
|
|
22
|
+
}>;
|
|
23
|
+
export declare const DEFAULT_DATE_RANGE_OPTIONS: FilterOption[];
|
|
24
|
+
export declare const DEFAULT_SEVERITY_OPTIONS: FilterOption[];
|
|
25
|
+
export declare const DEFAULT_SOURCE_OPTIONS: FilterOption[];
|
|
26
|
+
export declare const DEFAULT_STORE_OPTIONS: FilterOption[];
|
|
27
|
+
export declare const DEFAULT_TIME_OPTIONS: FilterOption[];
|
|
28
|
+
export declare const DEFAULT_SORT_OPTIONS: FilterOption[];
|
|
29
|
+
export declare const DEFAULT_SITE_OPTIONS: FilterOption[];
|
|
30
|
+
export declare const DEFAULT_ROLE_OPTIONS: FilterOption[];
|
|
31
|
+
export declare const DEFAULT_STATUS_OPTIONS: FilterOption[];
|
|
32
|
+
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/components/dashboard/constants.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC7D,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC9D,OAAO,EACL,kBAAkB,EAClB,aAAa,EACb,iBAAiB,GAClB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC5E,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AACtE,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EACL,aAAa,EACb,eAAe,EACf,YAAY,EACZ,YAAY,GACb,MAAM,oBAAoB,CAAC;AAE5B,eAAO,MAAM,eAAe,EAAE,MAAM,CAClC,aAAa,EACb;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAoB7D,CAAC;AAEF,eAAO,MAAM,iBAAiB,EAAE,MAAM,CACpC,eAAe,EACf;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,EAAE,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAoB7D,CAAC;AAEF,eAAO,MAAM,0BAA0B,EAAE,YAAY,EAMpD,CAAC;AAEF,eAAO,MAAM,wBAAwB,EAAE,YAAY,EAKlD,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,YAAY,EAKhD,CAAC;AAEF,eAAO,MAAM,qBAAqB,EAAE,YAAY,EAM/C,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,YAAY,EAM9C,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,YAAY,EAK9C,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,YAAY,EAK9C,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,YAAY,EAK9C,CAAC;AAEF,eAAO,MAAM,sBAAsB,EAAE,YAAY,EAIhD,CAAC"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
export { FOCUSABLE_ELEMENTS, KEYBOARD_KEYS, KEYBOARD_PATTERNS, } from './constants/accessibility';
|
|
2
|
+
export { ANIMATION_PRESETS, MOTION_VARIANTS } from './constants/animations';
|
|
3
|
+
export { COLOR_PALETTE } from './constants/colors';
|
|
4
|
+
export { CHART_COLORS, GRADIENT_CONFIG } from './constants/gradients';
|
|
5
|
+
export { getIcon, ICON_REGISTRY } from './constants/icons';
|
|
6
|
+
export { DEFAULT_NAV_ITEMS } from './constants/navigation';
|
|
7
|
+
export { SIZING, SPACING } from './constants/sizing';
|
|
8
|
+
export { BORDER_COLORS, DROPDOWN_STYLES, GLASS_STYLES, MODAL_STYLES, } from './constants/styles';
|
|
9
|
+
export const SEVERITY_CONFIG = {
|
|
10
|
+
high: {
|
|
11
|
+
label: 'HIGH',
|
|
12
|
+
color: '#F87171',
|
|
13
|
+
bg: 'rgba(239, 68, 68, 0.10)',
|
|
14
|
+
border: 'rgba(239, 68, 68, 0.20)',
|
|
15
|
+
},
|
|
16
|
+
medium: {
|
|
17
|
+
label: 'MEDIUM',
|
|
18
|
+
color: '#FACC15',
|
|
19
|
+
bg: 'rgba(234, 179, 8, 0.10)',
|
|
20
|
+
border: 'rgba(234, 179, 8, 0.20)',
|
|
21
|
+
},
|
|
22
|
+
low: {
|
|
23
|
+
label: 'LOW',
|
|
24
|
+
color: '#60A5FA',
|
|
25
|
+
bg: 'rgba(59, 130, 246, 0.10)',
|
|
26
|
+
border: 'rgba(59, 130, 246, 0.20)',
|
|
27
|
+
},
|
|
28
|
+
};
|
|
29
|
+
export const CONFIDENCE_CONFIG = {
|
|
30
|
+
high: {
|
|
31
|
+
label: 'High',
|
|
32
|
+
color: '#4ADE80',
|
|
33
|
+
bg: 'rgba(74, 222, 128, 0.10)',
|
|
34
|
+
border: 'rgba(74, 222, 128, 0.20)',
|
|
35
|
+
},
|
|
36
|
+
medium: {
|
|
37
|
+
label: 'Medium',
|
|
38
|
+
color: '#FACC15',
|
|
39
|
+
bg: 'rgba(234, 179, 8, 0.10)',
|
|
40
|
+
border: 'rgba(234, 179, 8, 0.20)',
|
|
41
|
+
},
|
|
42
|
+
low: {
|
|
43
|
+
label: 'Low',
|
|
44
|
+
color: '#9CA3AF',
|
|
45
|
+
bg: 'rgba(156, 163, 175, 0.10)',
|
|
46
|
+
border: 'rgba(156, 163, 175, 0.20)',
|
|
47
|
+
},
|
|
48
|
+
};
|
|
49
|
+
export const DEFAULT_DATE_RANGE_OPTIONS = [
|
|
50
|
+
{ label: 'Date range', value: 'all' },
|
|
51
|
+
{ label: 'Today', value: 'today' },
|
|
52
|
+
{ label: 'Yesterday', value: 'yesterday' },
|
|
53
|
+
{ label: 'Last 7 days', value: 'last_7_days' },
|
|
54
|
+
{ label: 'Last 30 days', value: 'last_30_days' },
|
|
55
|
+
];
|
|
56
|
+
export const DEFAULT_SEVERITY_OPTIONS = [
|
|
57
|
+
{ label: 'Severity: All', value: 'all' },
|
|
58
|
+
{ label: 'High', value: 'high' },
|
|
59
|
+
{ label: 'Medium', value: 'medium' },
|
|
60
|
+
{ label: 'Low', value: 'low' },
|
|
61
|
+
];
|
|
62
|
+
export const DEFAULT_SOURCE_OPTIONS = [
|
|
63
|
+
{ label: 'Source: All', value: 'all' },
|
|
64
|
+
{ label: 'Web', value: 'web' },
|
|
65
|
+
{ label: 'CCTV', value: 'cctv' },
|
|
66
|
+
{ label: 'Social', value: 'social' },
|
|
67
|
+
];
|
|
68
|
+
export const DEFAULT_STORE_OPTIONS = [
|
|
69
|
+
{ label: 'Store: All', value: 'all' },
|
|
70
|
+
{ label: 'NY-04', value: 'ny-04' },
|
|
71
|
+
{ label: 'LA-01', value: 'la-01' },
|
|
72
|
+
{ label: 'CH-02', value: 'ch-02' },
|
|
73
|
+
{ label: 'Global Web', value: 'global-web' },
|
|
74
|
+
];
|
|
75
|
+
export const DEFAULT_TIME_OPTIONS = [
|
|
76
|
+
{ label: 'Time: 7d', value: '7d' },
|
|
77
|
+
{ label: 'Today', value: 'today' },
|
|
78
|
+
{ label: 'Yesterday', value: 'yesterday' },
|
|
79
|
+
{ label: 'Last 24h', value: '24h' },
|
|
80
|
+
{ label: 'Last 30d', value: '30d' },
|
|
81
|
+
];
|
|
82
|
+
export const DEFAULT_SORT_OPTIONS = [
|
|
83
|
+
{ label: 'Sort: Most recent', value: 'recent' },
|
|
84
|
+
{ label: 'Severity (High to Low)', value: 'severity-desc' },
|
|
85
|
+
{ label: 'Severity (Low to High)', value: 'severity-asc' },
|
|
86
|
+
{ label: 'Confidence', value: 'confidence' },
|
|
87
|
+
];
|
|
88
|
+
export const DEFAULT_SITE_OPTIONS = [
|
|
89
|
+
{ label: 'Site: Global', value: 'global' },
|
|
90
|
+
{ label: 'Store NY-04', value: 'ny-04' },
|
|
91
|
+
{ label: 'Store LA-02', value: 'la-02' },
|
|
92
|
+
{ label: 'Store LDN-02', value: 'ldn-02' },
|
|
93
|
+
];
|
|
94
|
+
export const DEFAULT_ROLE_OPTIONS = [
|
|
95
|
+
{ label: 'Role: All', value: 'all' },
|
|
96
|
+
{ label: 'Admin', value: 'admin' },
|
|
97
|
+
{ label: 'Manager', value: 'manager' },
|
|
98
|
+
{ label: 'Viewer', value: 'viewer' },
|
|
99
|
+
];
|
|
100
|
+
export const DEFAULT_STATUS_OPTIONS = [
|
|
101
|
+
{ label: 'Status: All', value: 'all' },
|
|
102
|
+
{ label: 'Active', value: 'active' },
|
|
103
|
+
{ label: 'Inactive', value: 'inactive' },
|
|
104
|
+
];
|
|
105
|
+
//# sourceMappingURL=constants.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/components/dashboard/constants.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
export * from '../cards/TipCard';
|
|
2
|
+
export * from '../display/IconBadge';
|
|
3
|
+
export * from '../display/SourceIcon';
|
|
4
|
+
export * from '../display/StatusBadge';
|
|
5
|
+
export * from '../display/StatusIndicator';
|
|
6
|
+
export * from '../display/Tag';
|
|
7
|
+
export * from '../inputs/FilterDropdown';
|
|
8
|
+
export * from '../inputs/SearchInput';
|
|
9
|
+
export * from '../inputs/ToggleSwitch';
|
|
10
|
+
export * from '../layout/GlassPanel';
|
|
11
|
+
export * from '../layout/ListItem';
|
|
12
|
+
export * from '../layout/SectionHeader';
|
|
13
|
+
export * from './ChatHistorySection';
|
|
14
|
+
export * from './CollapseToggleButton';
|
|
15
|
+
export * from './constants';
|
|
16
|
+
export * from './constants/accessibility';
|
|
17
|
+
export * from './constants/animations';
|
|
18
|
+
export * from './constants/colors';
|
|
19
|
+
export * from './constants/icons';
|
|
20
|
+
export * from './constants/navigation';
|
|
21
|
+
export * from './constants/sizing';
|
|
22
|
+
export * from './constants/styles';
|
|
23
|
+
export * from './DashboardBackground';
|
|
24
|
+
export * from './Header';
|
|
25
|
+
export * from './MetricsCard';
|
|
26
|
+
export * from './MobileSidebar';
|
|
27
|
+
export * from './NavMenu';
|
|
28
|
+
export * from './NavTooltip';
|
|
29
|
+
export * from './PatternCard';
|
|
30
|
+
export * from './SettingsDropup';
|
|
31
|
+
export * from './SettingsModal';
|
|
32
|
+
export * from './Sidebar';
|
|
33
|
+
export * from './SidebarLogo';
|
|
34
|
+
export * from './SidePanel';
|
|
35
|
+
export * from './types';
|
|
36
|
+
export * from './utils/accessibilityUtils';
|
|
37
|
+
export * from './utils/pathUtils';
|
|
38
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/dashboard/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gBAAgB,CAAC;AAC/B,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,aAAa,CAAC;AAC5B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,UAAU,CAAC;AAEzB,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,4BAA4B,CAAC;AAC3C,cAAc,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
export * from '../cards/TipCard';
|
|
2
|
+
export * from '../display/IconBadge';
|
|
3
|
+
export * from '../display/SourceIcon';
|
|
4
|
+
export * from '../display/StatusBadge';
|
|
5
|
+
export * from '../display/StatusIndicator';
|
|
6
|
+
export * from '../display/Tag';
|
|
7
|
+
export * from '../inputs/FilterDropdown';
|
|
8
|
+
export * from '../inputs/SearchInput';
|
|
9
|
+
export * from '../inputs/ToggleSwitch';
|
|
10
|
+
export * from '../layout/GlassPanel';
|
|
11
|
+
export * from '../layout/ListItem';
|
|
12
|
+
export * from '../layout/SectionHeader';
|
|
13
|
+
export * from './ChatHistorySection';
|
|
14
|
+
export * from './CollapseToggleButton';
|
|
15
|
+
export * from './constants';
|
|
16
|
+
export * from './constants/accessibility';
|
|
17
|
+
export * from './constants/animations';
|
|
18
|
+
export * from './constants/colors';
|
|
19
|
+
export * from './constants/icons';
|
|
20
|
+
export * from './constants/navigation';
|
|
21
|
+
export * from './constants/sizing';
|
|
22
|
+
export * from './constants/styles';
|
|
23
|
+
export * from './DashboardBackground';
|
|
24
|
+
export * from './Header';
|
|
25
|
+
export * from './MetricsCard';
|
|
26
|
+
export * from './MobileSidebar';
|
|
27
|
+
export * from './NavMenu';
|
|
28
|
+
export * from './NavTooltip';
|
|
29
|
+
export * from './PatternCard';
|
|
30
|
+
export * from './SettingsDropup';
|
|
31
|
+
export * from './SettingsModal';
|
|
32
|
+
export * from './Sidebar';
|
|
33
|
+
export * from './SidebarLogo';
|
|
34
|
+
export * from './SidePanel';
|
|
35
|
+
export * from './types';
|
|
36
|
+
export * from './utils/accessibilityUtils';
|
|
37
|
+
export * from './utils/pathUtils';
|
|
38
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/dashboard/index.ts"],"names":[],"mappings":"AAAA,cAAc,kBAAkB,CAAC;AACjC,cAAc,sBAAsB,CAAC;AACrC,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gBAAgB,CAAC;AAC/B,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC;AACnC,cAAc,yBAAyB,CAAC;AACxC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,aAAa,CAAC;AAC5B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,wBAAwB,CAAC;AACvC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,uBAAuB,CAAC;AACtC,cAAc,UAAU,CAAC;AAEzB,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,kBAAkB,CAAC;AACjC,cAAc,iBAAiB,CAAC;AAChC,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,4BAA4B,CAAC;AAC3C,cAAc,mBAAmB,CAAC"}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import type { ReactNode } from 'react';
|
|
2
|
+
export type SeverityLevel = 'high' | 'medium' | 'low';
|
|
3
|
+
export type ConfidenceLevel = 'high' | 'medium' | 'low';
|
|
4
|
+
export interface DateRangeOption {
|
|
5
|
+
label: string;
|
|
6
|
+
value: string;
|
|
7
|
+
}
|
|
8
|
+
export interface MetricItem {
|
|
9
|
+
label: string;
|
|
10
|
+
value: string;
|
|
11
|
+
change?: string;
|
|
12
|
+
changeType?: 'positive' | 'negative' | 'neutral';
|
|
13
|
+
}
|
|
14
|
+
export interface HeaderProps {
|
|
15
|
+
orgName?: string;
|
|
16
|
+
dateRange?: string;
|
|
17
|
+
onDateRangeChange?: (value: string) => void;
|
|
18
|
+
dateRangeOptions?: DateRangeOption[];
|
|
19
|
+
userInitials?: string;
|
|
20
|
+
showNotification?: boolean;
|
|
21
|
+
onNotificationClick?: () => void;
|
|
22
|
+
onAvatarClick?: () => void;
|
|
23
|
+
minimal?: boolean;
|
|
24
|
+
onMenuClick?: () => void;
|
|
25
|
+
logoSrc?: string;
|
|
26
|
+
}
|
|
27
|
+
export interface NavItem {
|
|
28
|
+
icon: string;
|
|
29
|
+
label: string;
|
|
30
|
+
href: string;
|
|
31
|
+
submenu?: NavItem[];
|
|
32
|
+
}
|
|
33
|
+
export interface SidebarProps {
|
|
34
|
+
navItems?: NavItem[];
|
|
35
|
+
activeHref?: string;
|
|
36
|
+
onNavigate?: (href: string) => void;
|
|
37
|
+
showSettings?: boolean;
|
|
38
|
+
logoSrc?: string;
|
|
39
|
+
userName?: string;
|
|
40
|
+
userEmail?: string;
|
|
41
|
+
onLogout?: () => void;
|
|
42
|
+
onNotificationsChange?: (enabled: boolean) => void;
|
|
43
|
+
initialNotifications?: boolean;
|
|
44
|
+
showChatHistory?: boolean;
|
|
45
|
+
chatHistory?: ChatHistoryItem[];
|
|
46
|
+
activeChatId?: string | null;
|
|
47
|
+
chatHistoryExpanded?: boolean;
|
|
48
|
+
onChatClick?: (id: string) => void;
|
|
49
|
+
onChatHistoryToggle?: () => void;
|
|
50
|
+
onChatRename?: (id: string, newTitle: string) => void;
|
|
51
|
+
onChatDelete?: (id: string) => void;
|
|
52
|
+
isCollapsed?: boolean;
|
|
53
|
+
onToggleCollapse?: () => void;
|
|
54
|
+
}
|
|
55
|
+
export interface GlassPanelProps {
|
|
56
|
+
children: ReactNode;
|
|
57
|
+
className?: string;
|
|
58
|
+
variant?: 'light' | 'heavy';
|
|
59
|
+
}
|
|
60
|
+
export interface DashboardBackgroundProps {
|
|
61
|
+
variant?: 'default' | 'minimal';
|
|
62
|
+
noiseTextureSrc?: string;
|
|
63
|
+
sidebarWidth?: number;
|
|
64
|
+
}
|
|
65
|
+
export interface SettingsModalProps {
|
|
66
|
+
isOpen: boolean;
|
|
67
|
+
onClose: () => void;
|
|
68
|
+
userEmail?: string;
|
|
69
|
+
userName?: string;
|
|
70
|
+
onLogout?: () => void;
|
|
71
|
+
onNotificationsChange?: (enabled: boolean) => void;
|
|
72
|
+
initialNotifications?: boolean;
|
|
73
|
+
}
|
|
74
|
+
export interface ChatHistoryItem {
|
|
75
|
+
id: string;
|
|
76
|
+
title: string;
|
|
77
|
+
}
|
|
78
|
+
export interface ChatHistorySectionProps {
|
|
79
|
+
items?: ChatHistoryItem[];
|
|
80
|
+
activeItemId?: string | null;
|
|
81
|
+
isExpanded?: boolean;
|
|
82
|
+
isVisible?: boolean;
|
|
83
|
+
onItemClick?: (id: string) => void;
|
|
84
|
+
onToggleExpanded?: () => void;
|
|
85
|
+
onRename?: (id: string, newTitle: string) => void;
|
|
86
|
+
onDelete?: (id: string) => void;
|
|
87
|
+
title?: string;
|
|
88
|
+
emptyMessage?: string;
|
|
89
|
+
}
|
|
90
|
+
export interface MobileSidebarProps extends SidebarProps {
|
|
91
|
+
isOpen: boolean;
|
|
92
|
+
onClose: () => void;
|
|
93
|
+
}
|
|
94
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/dashboard/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/components/dashboard/types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export declare const focusFirstElement: (container: HTMLElement | null) => void;
|
|
2
|
+
export declare const focusLastElement: (container: HTMLElement | null) => void;
|
|
3
|
+
export declare const getAllFocusableElements: (container: HTMLElement | null) => HTMLElement[];
|
|
4
|
+
export declare const lockBodyScroll: () => (() => void);
|
|
5
|
+
export declare const isKeyboardEventOpen: (key: string) => boolean;
|
|
6
|
+
export declare const isKeyboardEventClose: (key: string) => boolean;
|
|
7
|
+
export declare const isKeyboardEventSelect: (key: string) => boolean;
|
|
8
|
+
export declare const calculateNavigationIndex: (currentIndex: number, key: string, totalItems: number, direction: "next" | "previous" | "home" | "end") => number;
|
|
9
|
+
//# sourceMappingURL=accessibilityUtils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"accessibilityUtils.d.ts","sourceRoot":"","sources":["../../../../src/components/dashboard/utils/accessibilityUtils.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,iBAAiB,GAAI,WAAW,WAAW,GAAG,IAAI,KAAG,IAQjE,CAAC;AAEF,eAAO,MAAM,gBAAgB,GAAI,WAAW,WAAW,GAAG,IAAI,KAAG,IAOhE,CAAC;AAEF,eAAO,MAAM,uBAAuB,GAClC,WAAW,WAAW,GAAG,IAAI,KAC5B,WAAW,EAGb,CAAC;AAEF,eAAO,MAAM,cAAc,QAAO,CAAC,MAAM,IAAI,CAO5C,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAAI,KAAK,MAAM,KAAG,OAMjD,CAAC;AAEF,eAAO,MAAM,oBAAoB,GAAI,KAAK,MAAM,KAAG,OAElD,CAAC;AAEF,eAAO,MAAM,qBAAqB,GAAI,KAAK,MAAM,KAAG,OAEnD,CAAC;AAEF,eAAO,MAAM,wBAAwB,GACnC,cAAc,MAAM,EACpB,KAAK,MAAM,EACX,YAAY,MAAM,EAClB,WAAW,MAAM,GAAG,UAAU,GAAG,MAAM,GAAG,KAAK,KAC9C,MAaF,CAAC"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { FOCUSABLE_ELEMENTS, KEYBOARD_KEYS } from '../constants/accessibility';
|
|
2
|
+
export const focusFirstElement = (container) => {
|
|
3
|
+
if (!container)
|
|
4
|
+
return;
|
|
5
|
+
setTimeout(() => {
|
|
6
|
+
const focusable = container.querySelector(FOCUSABLE_ELEMENTS);
|
|
7
|
+
focusable?.focus();
|
|
8
|
+
}, 0);
|
|
9
|
+
};
|
|
10
|
+
export const focusLastElement = (container) => {
|
|
11
|
+
if (!container)
|
|
12
|
+
return;
|
|
13
|
+
setTimeout(() => {
|
|
14
|
+
const focusables = container.querySelectorAll(FOCUSABLE_ELEMENTS);
|
|
15
|
+
const lastFocusable = focusables[focusables.length - 1];
|
|
16
|
+
lastFocusable?.focus();
|
|
17
|
+
}, 0);
|
|
18
|
+
};
|
|
19
|
+
export const getAllFocusableElements = (container) => {
|
|
20
|
+
if (!container)
|
|
21
|
+
return [];
|
|
22
|
+
return Array.from(container.querySelectorAll(FOCUSABLE_ELEMENTS));
|
|
23
|
+
};
|
|
24
|
+
export const lockBodyScroll = () => {
|
|
25
|
+
const originalOverflow = document.body.style.overflow;
|
|
26
|
+
document.body.style.overflow = 'hidden';
|
|
27
|
+
return () => {
|
|
28
|
+
document.body.style.overflow = originalOverflow;
|
|
29
|
+
};
|
|
30
|
+
};
|
|
31
|
+
export const isKeyboardEventOpen = (key) => {
|
|
32
|
+
return (key === KEYBOARD_KEYS.ENTER ||
|
|
33
|
+
key === KEYBOARD_KEYS.SPACE ||
|
|
34
|
+
key === KEYBOARD_KEYS.ARROW_DOWN);
|
|
35
|
+
};
|
|
36
|
+
export const isKeyboardEventClose = (key) => {
|
|
37
|
+
return key === KEYBOARD_KEYS.ESCAPE;
|
|
38
|
+
};
|
|
39
|
+
export const isKeyboardEventSelect = (key) => {
|
|
40
|
+
return key === KEYBOARD_KEYS.ENTER || key === KEYBOARD_KEYS.SPACE;
|
|
41
|
+
};
|
|
42
|
+
export const calculateNavigationIndex = (currentIndex, key, totalItems, direction) => {
|
|
43
|
+
switch (direction) {
|
|
44
|
+
case 'next':
|
|
45
|
+
return currentIndex < totalItems - 1 ? currentIndex + 1 : 0;
|
|
46
|
+
case 'previous':
|
|
47
|
+
return currentIndex > 0 ? currentIndex - 1 : totalItems - 1;
|
|
48
|
+
case 'home':
|
|
49
|
+
return 0;
|
|
50
|
+
case 'end':
|
|
51
|
+
return totalItems - 1;
|
|
52
|
+
default:
|
|
53
|
+
return currentIndex;
|
|
54
|
+
}
|
|
55
|
+
};
|
|
56
|
+
//# sourceMappingURL=accessibilityUtils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"accessibilityUtils.js","sourceRoot":"","sources":["../../../../src/components/dashboard/utils/accessibilityUtils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAE/E,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,SAA6B,EAAQ,EAAE;IACvE,IAAI,CAAC,SAAS;QAAE,OAAO;IACvB,UAAU,CAAC,GAAG,EAAE;QACd,MAAM,SAAS,GAAG,SAAS,CAAC,aAAa,CACvC,kBAAkB,CACJ,CAAC;QACjB,SAAS,EAAE,KAAK,EAAE,CAAC;IACrB,CAAC,EAAE,CAAC,CAAC,CAAC;AACR,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,SAA6B,EAAQ,EAAE;IACtE,IAAI,CAAC,SAAS;QAAE,OAAO;IACvB,UAAU,CAAC,GAAG,EAAE;QACd,MAAM,UAAU,GAAG,SAAS,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,CAAC;QAClE,MAAM,aAAa,GAAG,UAAU,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAgB,CAAC;QACvE,aAAa,EAAE,KAAK,EAAE,CAAC;IACzB,CAAC,EAAE,CAAC,CAAC,CAAC;AACR,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,uBAAuB,GAAG,CACrC,SAA6B,EACd,EAAE;IACjB,IAAI,CAAC,SAAS;QAAE,OAAO,EAAE,CAAC;IAC1B,OAAO,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,kBAAkB,CAAC,CAAC,CAAC;AACpE,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,GAAiB,EAAE;IAC/C,MAAM,gBAAgB,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;IACtD,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAExC,OAAO,GAAG,EAAE;QACV,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,gBAAgB,CAAC;IAClD,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,GAAW,EAAW,EAAE;IAC1D,OAAO,CACL,GAAG,KAAK,aAAa,CAAC,KAAK;QAC3B,GAAG,KAAK,aAAa,CAAC,KAAK;QAC3B,GAAG,KAAK,aAAa,CAAC,UAAU,CACjC,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,GAAW,EAAW,EAAE;IAC3D,OAAO,GAAG,KAAK,aAAa,CAAC,MAAM,CAAC;AACtC,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,GAAW,EAAW,EAAE;IAC5D,OAAO,GAAG,KAAK,aAAa,CAAC,KAAK,IAAI,GAAG,KAAK,aAAa,CAAC,KAAK,CAAC;AACpE,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG,CACtC,YAAoB,EACpB,GAAW,EACX,UAAkB,EAClB,SAA+C,EACvC,EAAE;IACV,QAAQ,SAAS,EAAE,CAAC;QAClB,KAAK,MAAM;YACT,OAAO,YAAY,GAAG,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAC9D,KAAK,UAAU;YACb,OAAO,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC;QAC9D,KAAK,MAAM;YACT,OAAO,CAAC,CAAC;QACX,KAAK,KAAK;YACR,OAAO,UAAU,GAAG,CAAC,CAAC;QACxB;YACE,OAAO,YAAY,CAAC;IACxB,CAAC;AACH,CAAC,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export declare const normalizePath: (path: string) => string;
|
|
2
|
+
export declare const isActivePath: (currentPath: string, targetPath: string) => boolean;
|
|
3
|
+
export declare const isActivePathPrefix: (currentPath: string, prefix: string) => boolean;
|
|
4
|
+
//# sourceMappingURL=pathUtils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pathUtils.d.ts","sourceRoot":"","sources":["../../../../src/components/dashboard/utils/pathUtils.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa,GAAI,MAAM,MAAM,KAAG,MAG5C,CAAC;AAEF,eAAO,MAAM,YAAY,GACvB,aAAa,MAAM,EACnB,YAAY,MAAM,KACjB,OAIF,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAC7B,aAAa,MAAM,EACnB,QAAQ,MAAM,KACb,OAIF,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
export const normalizePath = (path) => {
|
|
2
|
+
if (!path)
|
|
3
|
+
return '/';
|
|
4
|
+
return path.replace(/\/$/, '') || '/';
|
|
5
|
+
};
|
|
6
|
+
export const isActivePath = (currentPath, targetPath) => {
|
|
7
|
+
const normalized = normalizePath(currentPath);
|
|
8
|
+
const target = normalizePath(targetPath);
|
|
9
|
+
return normalized === target;
|
|
10
|
+
};
|
|
11
|
+
export const isActivePathPrefix = (currentPath, prefix) => {
|
|
12
|
+
const normalized = normalizePath(currentPath);
|
|
13
|
+
const normalizedPrefix = normalizePath(prefix);
|
|
14
|
+
return normalized.startsWith(normalizedPrefix);
|
|
15
|
+
};
|
|
16
|
+
//# sourceMappingURL=pathUtils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pathUtils.js","sourceRoot":"","sources":["../../../../src/components/dashboard/utils/pathUtils.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,IAAY,EAAU,EAAE;IACpD,IAAI,CAAC,IAAI;QAAE,OAAO,GAAG,CAAC;IACtB,OAAO,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC;AACxC,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,CAC1B,WAAmB,EACnB,UAAkB,EACT,EAAE;IACX,MAAM,UAAU,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC;IAC9C,MAAM,MAAM,GAAG,aAAa,CAAC,UAAU,CAAC,CAAC;IACzC,OAAO,UAAU,KAAK,MAAM,CAAC;AAC/B,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAChC,WAAmB,EACnB,MAAc,EACL,EAAE;IACX,MAAM,UAAU,GAAG,aAAa,CAAC,WAAW,CAAC,CAAC;IAC9C,MAAM,gBAAgB,GAAG,aAAa,CAAC,MAAM,CAAC,CAAC;IAC/C,OAAO,UAAU,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC;AACjD,CAAC,CAAC"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { VariantProps } from 'class-variance-authority';
|
|
2
|
+
declare const iconBadgeVariants: (props?: ({
|
|
3
|
+
variant?: "blue" | "gray" | "violet" | "emerald" | "rose" | null | undefined;
|
|
4
|
+
} & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
|
|
5
|
+
export interface IconBadgeProps extends VariantProps<typeof iconBadgeVariants> {
|
|
6
|
+
icon: string;
|
|
7
|
+
className?: string;
|
|
8
|
+
iconClassName?: string;
|
|
9
|
+
}
|
|
10
|
+
export declare function IconBadge({ icon, variant, className, iconClassName, }: IconBadgeProps): import("react/jsx-runtime").JSX.Element;
|
|
11
|
+
export {};
|
|
12
|
+
//# sourceMappingURL=IconBadge.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IconBadge.d.ts","sourceRoot":"","sources":["../../../src/components/display/IconBadge.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAK7D,QAAA,MAAM,iBAAiB;;mFAiBtB,CAAC;AAEF,MAAM,WAAW,cAAe,SAAQ,YAAY,CAAC,OAAO,iBAAiB,CAAC;IAC5E,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAKD,wBAAgB,SAAS,CAAC,EACxB,IAAI,EACJ,OAAgB,EAChB,SAAc,EACd,aAAkB,GACnB,EAAE,cAAc,2CAmBhB"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import { cva } from 'class-variance-authority';
|
|
4
|
+
import { cn } from '../../lib/utils';
|
|
5
|
+
import { ICON_REGISTRY } from '../dashboard/constants/icons';
|
|
6
|
+
const iconBadgeVariants = cva('w-8 h-8 rounded-lg flex items-center justify-center border', {
|
|
7
|
+
variants: {
|
|
8
|
+
variant: {
|
|
9
|
+
gray: 'bg-gray-800/50 border-white/5',
|
|
10
|
+
violet: 'bg-violet-600 border-violet-500/50 shadow-[0_0_15px_rgba(124,58,237,0.5)]',
|
|
11
|
+
blue: 'bg-blue-600/20 border-blue-500/20',
|
|
12
|
+
emerald: 'bg-emerald-600/20 border-emerald-500/20',
|
|
13
|
+
rose: 'bg-rose-600/20 border-rose-500/20',
|
|
14
|
+
},
|
|
15
|
+
},
|
|
16
|
+
defaultVariants: {
|
|
17
|
+
variant: 'gray',
|
|
18
|
+
},
|
|
19
|
+
});
|
|
20
|
+
const getIconColor = (variant) => variant === 'gray' ? 'text-gray-400' : 'text-white';
|
|
21
|
+
export function IconBadge({ icon, variant = 'gray', className = '', iconClassName = '', }) {
|
|
22
|
+
const IconComponent = ICON_REGISTRY[icon];
|
|
23
|
+
const iconColor = getIconColor(variant);
|
|
24
|
+
return (_jsx("div", { className: cn(iconBadgeVariants({ variant }), className), children: IconComponent ? (_jsx(IconComponent, { size: 18, className: cn(iconColor, iconClassName), strokeWidth: 2 })) : (_jsx("span", { className: cn('text-[18px]', iconColor, iconClassName), children: icon })) }));
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=IconBadge.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"IconBadge.js","sourceRoot":"","sources":["../../../src/components/display/IconBadge.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAGb,OAAO,EAAE,GAAG,EAAE,MAAM,0BAA0B,CAAC;AAC/C,OAAO,EAAE,EAAE,EAAE,MAAM,iBAAiB,CAAC;AACrC,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAE7D,MAAM,iBAAiB,GAAG,GAAG,CAC3B,4DAA4D,EAC5D;IACE,QAAQ,EAAE;QACR,OAAO,EAAE;YACP,IAAI,EAAE,+BAA+B;YACrC,MAAM,EACJ,2EAA2E;YAC7E,IAAI,EAAE,mCAAmC;YACzC,OAAO,EAAE,yCAAyC;YAClD,IAAI,EAAE,mCAAmC;SAC1C;KACF;IACD,eAAe,EAAE;QACf,OAAO,EAAE,MAAM;KAChB;CACF,CACF,CAAC;AAQF,MAAM,YAAY,GAAG,CAAC,OAAsB,EAAE,EAAE,CAC9C,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,YAAY,CAAC;AAEtD,MAAM,UAAU,SAAS,CAAC,EACxB,IAAI,EACJ,OAAO,GAAG,MAAM,EAChB,SAAS,GAAG,EAAE,EACd,aAAa,GAAG,EAAE,GACH;IACf,MAAM,aAAa,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,SAAS,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;IAExC,OAAO,CACL,cAAK,SAAS,EAAE,EAAE,CAAC,iBAAiB,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,SAAS,CAAC,YAC1D,aAAa,CAAC,CAAC,CAAC,CACf,KAAC,aAAa,IACZ,IAAI,EAAE,EAAE,EACR,SAAS,EAAE,EAAE,CAAC,SAAS,EAAE,aAAa,CAAC,EACvC,WAAW,EAAE,CAAC,GACd,CACH,CAAC,CAAC,CAAC,CACF,eAAM,SAAS,EAAE,EAAE,CAAC,aAAa,EAAE,SAAS,EAAE,aAAa,CAAC,YACzD,IAAI,GACA,CACR,GACG,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
export type SourceType = 'web' | 'cctv' | 'social';
|
|
2
|
+
export interface SourceIconProps {
|
|
3
|
+
source: SourceType;
|
|
4
|
+
size?: 'sm' | 'md';
|
|
5
|
+
}
|
|
6
|
+
export declare function SourceIcon({ source, size }: SourceIconProps): import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
//# sourceMappingURL=SourceIcon.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SourceIcon.d.ts","sourceRoot":"","sources":["../../../src/components/display/SourceIcon.tsx"],"names":[],"mappings":"AAIA,MAAM,MAAM,UAAU,GAAG,KAAK,GAAG,MAAM,GAAG,QAAQ,CAAC;AAEnD,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,UAAU,CAAC;IACnB,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;CACpB;AAoBD,wBAAgB,UAAU,CAAC,EAAE,MAAM,EAAE,IAAW,EAAE,EAAE,eAAe,2CAalE"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
3
|
+
import { Globe, MessageCircle, Video } from 'lucide-react';
|
|
4
|
+
const sourceConfig = {
|
|
5
|
+
web: { icon: Globe, color: '#60A5FA', bg: 'rgba(96, 165, 250, 0.15)' },
|
|
6
|
+
cctv: { icon: Video, color: '#F87171', bg: 'rgba(248, 113, 113, 0.15)' },
|
|
7
|
+
social: {
|
|
8
|
+
icon: MessageCircle,
|
|
9
|
+
color: '#A78BFA',
|
|
10
|
+
bg: 'rgba(167, 139, 250, 0.15)',
|
|
11
|
+
},
|
|
12
|
+
};
|
|
13
|
+
const sizeConfig = {
|
|
14
|
+
sm: { containerClass: 'w-8 h-8', iconSize: 16 },
|
|
15
|
+
md: { containerClass: 'w-10 h-10', iconSize: 20 },
|
|
16
|
+
};
|
|
17
|
+
export function SourceIcon({ source, size = 'sm' }) {
|
|
18
|
+
const sourceStyle = sourceConfig[source];
|
|
19
|
+
const IconComponent = sourceStyle.icon;
|
|
20
|
+
const { containerClass, iconSize } = sizeConfig[size];
|
|
21
|
+
return (_jsx("div", { className: `${containerClass} rounded-lg flex items-center justify-center`, style: { background: sourceStyle.bg }, children: _jsx(IconComponent, { size: iconSize, color: sourceStyle.color }) }));
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=SourceIcon.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SourceIcon.js","sourceRoot":"","sources":["../../../src/components/display/SourceIcon.tsx"],"names":[],"mappings":"AAAA,YAAY,CAAC;;AAEb,OAAO,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,MAAM,cAAc,CAAC;AAS3D,MAAM,YAAY,GAGd;IACF,GAAG,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,0BAA0B,EAAE;IACtE,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,EAAE,EAAE,2BAA2B,EAAE;IACxE,MAAM,EAAE;QACN,IAAI,EAAE,aAAa;QACnB,KAAK,EAAE,SAAS;QAChB,EAAE,EAAE,2BAA2B;KAChC;CACF,CAAC;AAEF,MAAM,UAAU,GAAG;IACjB,EAAE,EAAE,EAAE,cAAc,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,EAAE;IAC/C,EAAE,EAAE,EAAE,cAAc,EAAE,WAAW,EAAE,QAAQ,EAAE,EAAE,EAAE;CACzC,CAAC;AAEX,MAAM,UAAU,UAAU,CAAC,EAAE,MAAM,EAAE,IAAI,GAAG,IAAI,EAAmB;IACjE,MAAM,WAAW,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACzC,MAAM,aAAa,GAAG,WAAW,CAAC,IAAI,CAAC;IACvC,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;IAEtD,OAAO,CACL,cACE,SAAS,EAAE,GAAG,cAAc,8CAA8C,EAC1E,KAAK,EAAE,EAAE,UAAU,EAAE,WAAW,CAAC,EAAE,EAAE,YAErC,KAAC,aAAa,IAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,WAAW,CAAC,KAAK,GAAI,GACvD,CACP,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import type { VariantProps } from 'class-variance-authority';
|
|
2
|
+
declare const badgeVariants: (props?: ({
|
|
3
|
+
variant?: "medium" | "positive" | "negative" | "warning" | "neutral" | "info" | "high" | "low" | null | undefined;
|
|
4
|
+
size?: "default" | "sm" | null | undefined;
|
|
5
|
+
} & import("class-variance-authority/dist/types").ClassProp) | undefined) => string;
|
|
6
|
+
export interface StatusBadgeProps extends VariantProps<typeof badgeVariants> {
|
|
7
|
+
children: React.ReactNode;
|
|
8
|
+
className?: string;
|
|
9
|
+
uppercase?: boolean;
|
|
10
|
+
tracking?: boolean;
|
|
11
|
+
}
|
|
12
|
+
export declare function StatusBadge({ children, variant, size, className, uppercase, tracking, }: StatusBadgeProps): import("react/jsx-runtime").JSX.Element;
|
|
13
|
+
export {};
|
|
14
|
+
//# sourceMappingURL=StatusBadge.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"StatusBadge.d.ts","sourceRoot":"","sources":["../../../src/components/display/StatusBadge.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAI7D,QAAA,MAAM,aAAa;;;mFAsBjB,CAAC;AAEH,MAAM,WAAW,gBAAiB,SAAQ,YAAY,CAAC,OAAO,aAAa,CAAC;IAC1E,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,wBAAgB,WAAW,CAAC,EAC1B,QAAQ,EACR,OAAmB,EACnB,IAAgB,EAChB,SAAc,EACd,SAAiB,EACjB,QAAgB,GACjB,EAAE,gBAAgB,2CAalB"}
|