@illuma-ai/codeviz 1.0.8 → 1.0.10
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/index.cjs +42 -32
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +24 -14
- package/dist/index.js.map +1 -1
- package/dist/ui/components.d.ts +1 -1
- package/dist/ui/components.d.ts.map +1 -1
- package/dist/ui/theme.d.ts +1 -1
- package/dist/ui/theme.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -24583,10 +24583,12 @@ const Xm = `
|
|
|
24583
24583
|
/* ── Banking Theme: CSS Custom Properties ── */
|
|
24584
24584
|
.theme-light {
|
|
24585
24585
|
--surface-primary: #ffffff;
|
|
24586
|
+
--surface-primary-alt: #efefef;
|
|
24586
24587
|
--surface-secondary: #f7f7f8;
|
|
24587
24588
|
--surface-tertiary: #ececec;
|
|
24588
24589
|
--surface-left-nav: #ededee;
|
|
24589
24590
|
--surface-active: #e3e3e3;
|
|
24591
|
+
--surface-hover: #e3e3e3;
|
|
24590
24592
|
--text-primary: #212121;
|
|
24591
24593
|
--text-secondary: #424242;
|
|
24592
24594
|
--text-tertiary: #595959;
|
|
@@ -24600,10 +24602,12 @@ const Xm = `
|
|
|
24600
24602
|
}
|
|
24601
24603
|
.theme-dark {
|
|
24602
24604
|
--surface-primary: #0d0d0d;
|
|
24605
|
+
--surface-primary-alt: #171717;
|
|
24603
24606
|
--surface-secondary: #212121;
|
|
24604
24607
|
--surface-tertiary: #2f2f2f;
|
|
24605
24608
|
--surface-left-nav: #1a1a1b;
|
|
24606
24609
|
--surface-active: #595959;
|
|
24610
|
+
--surface-hover: #424242;
|
|
24607
24611
|
--text-primary: #ececec;
|
|
24608
24612
|
--text-secondary: #cdcdcd;
|
|
24609
24613
|
--text-tertiary: #595959;
|
|
@@ -24629,8 +24633,10 @@ const Xm = `
|
|
|
24629
24633
|
.text-accent-navy { color: var(--accent-navy); }
|
|
24630
24634
|
.bg-accent-cyan { background-color: var(--accent-cyan); }
|
|
24631
24635
|
.bg-accent-navy { background-color: var(--accent-navy); }
|
|
24636
|
+
.bg-surface-primary-alt { background-color: var(--surface-primary-alt); }
|
|
24632
24637
|
.bg-surface-left-nav { background-color: var(--surface-left-nav); }
|
|
24633
24638
|
.bg-surface-active { background-color: var(--surface-active); }
|
|
24639
|
+
.bg-surface-hover { background-color: var(--surface-hover); }
|
|
24634
24640
|
.text-status-positive { color: var(--status-positive); }
|
|
24635
24641
|
.text-status-negative { color: var(--status-negative); }
|
|
24636
24642
|
.text-status-warning { color: var(--status-warning); }
|
|
@@ -24705,13 +24711,13 @@ function DataTable({ columns = [], data = [], searchable = true, pageSize = 10,
|
|
|
24705
24711
|
<div className="overflow-x-auto">
|
|
24706
24712
|
<table className="w-full">
|
|
24707
24713
|
<thead>
|
|
24708
|
-
<tr className="bg-surface-
|
|
24714
|
+
<tr className="bg-surface-primary-alt border-b border-border-medium">
|
|
24709
24715
|
{columns.map(col => (
|
|
24710
24716
|
<th
|
|
24711
24717
|
key={col.key}
|
|
24712
24718
|
onClick={() => col.sortable !== false && handleSort(col.key)}
|
|
24713
24719
|
className={cn(
|
|
24714
|
-
'px-4 py-
|
|
24720
|
+
'px-4 py-3 text-xs font-semibold uppercase tracking-wider text-text-secondary whitespace-nowrap',
|
|
24715
24721
|
col.align === 'right' ? 'text-right' : 'text-left',
|
|
24716
24722
|
col.sortable !== false && 'cursor-pointer hover:text-text-primary select-none'
|
|
24717
24723
|
)}
|
|
@@ -24731,13 +24737,13 @@ function DataTable({ columns = [], data = [], searchable = true, pageSize = 10,
|
|
|
24731
24737
|
<tr
|
|
24732
24738
|
key={idx}
|
|
24733
24739
|
onClick={() => onRowClick && onRowClick(row, idx)}
|
|
24734
|
-
className={cn('transition-colors', onRowClick && 'cursor-pointer
|
|
24740
|
+
className={cn('border-b border-border-light last:border-b-0 transition-colors', onRowClick && 'cursor-pointer hover:bg-surface-hover')}
|
|
24735
24741
|
>
|
|
24736
24742
|
{columns.map(col => (
|
|
24737
24743
|
<td
|
|
24738
24744
|
key={col.key}
|
|
24739
24745
|
className={cn(
|
|
24740
|
-
'px-4 py-
|
|
24746
|
+
'px-4 py-3 text-sm',
|
|
24741
24747
|
col.align === 'right' ? 'text-right tabular-nums' : 'text-left',
|
|
24742
24748
|
'text-text-primary'
|
|
24743
24749
|
)}
|
|
@@ -24801,14 +24807,18 @@ function MetricCard({ label, value, trend, trendLabel, icon, iconColor = '#00C1D
|
|
|
24801
24807
|
|
|
24802
24808
|
return (
|
|
24803
24809
|
<div className="bg-surface-secondary border border-border-light rounded-lg p-3">
|
|
24804
|
-
<div className="flex items-center justify-between mb-1
|
|
24805
|
-
<p className="text-text-secondary text-xs font-medium
|
|
24806
|
-
{IconComp &&
|
|
24810
|
+
<div className="flex items-center justify-between mb-1">
|
|
24811
|
+
<p className="text-text-secondary text-xs font-medium">{label}</p>
|
|
24812
|
+
{IconComp && (
|
|
24813
|
+
<div className="flex items-center justify-center w-7 h-7 rounded-lg bg-surface-tertiary">
|
|
24814
|
+
<IconComp className="w-3.5 h-3.5" style={{ color: iconColor }} />
|
|
24815
|
+
</div>
|
|
24816
|
+
)}
|
|
24807
24817
|
</div>
|
|
24808
24818
|
<p className="text-xl font-bold text-text-primary tabular-nums">{value}</p>
|
|
24809
24819
|
{trend && (
|
|
24810
|
-
<div className="flex items-center gap-1.5 mt-
|
|
24811
|
-
<span className={cn('text-xs font-
|
|
24820
|
+
<div className="flex items-center gap-1.5 mt-1">
|
|
24821
|
+
<span className={cn('text-xs font-medium', isPositive && 'text-status-positive', isNegative && 'text-status-negative')}>
|
|
24812
24822
|
{isPositive && '▲'}{isNegative && '▼'} {trend}
|
|
24813
24823
|
</span>
|
|
24814
24824
|
{trendLabel && <span className="text-text-tertiary text-xs">{trendLabel}</span>}
|
|
@@ -24855,11 +24865,11 @@ function DetailCard({ title, subtitle, status, fields = [], tabs, children }) {
|
|
|
24855
24865
|
const [activeTab, setActiveTab] = useState(tabs?.[0]?.id || '');
|
|
24856
24866
|
|
|
24857
24867
|
return (
|
|
24858
|
-
<div className="bg-surface-secondary border border-border-light rounded-
|
|
24859
|
-
<div className="p-
|
|
24868
|
+
<div className="bg-surface-secondary border border-border-light rounded-xl overflow-hidden">
|
|
24869
|
+
<div className="p-4 border-b border-border-light">
|
|
24860
24870
|
<div className="flex items-start justify-between mb-2">
|
|
24861
24871
|
<div>
|
|
24862
|
-
<h2 className="text-base font-
|
|
24872
|
+
<h2 className="text-base font-semibold text-text-primary">{title}</h2>
|
|
24863
24873
|
{subtitle && <p className="text-text-secondary text-sm mt-0.5">{subtitle}</p>}
|
|
24864
24874
|
</div>
|
|
24865
24875
|
{status && <StatusBadge status={status.status} label={status.label} />}
|
|
@@ -24923,8 +24933,8 @@ function StepWizard({ steps = [], onComplete }) {
|
|
|
24923
24933
|
const prev = () => setCurrent(c => Math.max(0, c - 1));
|
|
24924
24934
|
|
|
24925
24935
|
return (
|
|
24926
|
-
<div className="bg-surface-secondary border border-border-light rounded-
|
|
24927
|
-
<div className="flex items-center px-
|
|
24936
|
+
<div className="bg-surface-secondary border border-border-light rounded-xl overflow-hidden">
|
|
24937
|
+
<div className="flex items-center px-4 py-3 border-b border-border-light gap-2">
|
|
24928
24938
|
{steps.map((step, i) => (
|
|
24929
24939
|
<div key={step.id} className="flex items-center gap-2">
|
|
24930
24940
|
<div className={cn(
|