roadmap-kit 1.0.1 → 1.0.3

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.
@@ -17,9 +17,9 @@ export default function SharedResources({ resources = {} }) {
17
17
  if (total === 0) {
18
18
  return (
19
19
  <div className="card-dark rounded-2xl p-12 text-center">
20
- <Package className="w-12 h-12 mx-auto mb-4 text-gray-600" />
21
- <h3 className="text-lg font-semibold text-gray-400 mb-2">Sin recursos compartidos</h3>
22
- <p className="text-gray-500 text-sm">Agrega componentes en roadmap.json</p>
20
+ <Package className="w-12 h-12 mx-auto mb-4 text-theme-muted" />
21
+ <h3 className="text-lg font-semibold text-theme-secondary mb-2">Sin recursos compartidos</h3>
22
+ <p className="text-theme-muted text-sm">Agrega componentes en roadmap.json</p>
23
23
  </div>
24
24
  );
25
25
  }
@@ -118,7 +118,7 @@ function StatCard({ icon: Icon, label, value, gradient }) {
118
118
  <div className="card-dark rounded-2xl p-5 hover:scale-[1.02] transition-all">
119
119
  <div className="flex items-center justify-between">
120
120
  <div>
121
- <p className="text-xs text-gray-500 uppercase tracking-wider mb-1">{label}</p>
121
+ <p className="text-xs text-theme-muted uppercase tracking-wider mb-1">{label}</p>
122
122
  <p className={`text-3xl font-bold bg-gradient-to-r ${gradient} bg-clip-text text-transparent`}>{value}</p>
123
123
  </div>
124
124
  <div className={`w-12 h-12 rounded-xl bg-gradient-to-br ${gradient} flex items-center justify-center opacity-80`}>
@@ -146,9 +146,9 @@ function Section({ title, icon: Icon, color, isOpen, onToggle, children }) {
146
146
  <Icon className={`w-5 h-5 ${colors[color]}`} />
147
147
  <h3 className={`text-lg font-semibold ${colors[color]}`}>{title}</h3>
148
148
  </div>
149
- <ChevronDown className={`w-5 h-5 text-gray-500 transition-transform ${isOpen ? 'rotate-180' : ''}`} />
149
+ <ChevronDown className={`w-5 h-5 text-theme-muted transition-transform ${isOpen ? 'rotate-180' : ''}`} />
150
150
  </button>
151
- {isOpen && <div className="px-6 pb-6 pt-2 border-t border-white/5">{children}</div>}
151
+ {isOpen && <div className="px-6 pb-6 pt-2 border-t border-theme">{children}</div>}
152
152
  </div>
153
153
  );
154
154
  }
@@ -169,16 +169,16 @@ function ResourceItem({ path, description, usage, exports, warning, color, copyI
169
169
  <FileCode className={`w-4 h-4 flex-shrink-0 ${colors[color].split(' ')[0]}`} />
170
170
  <div className="flex-1 min-w-0">
171
171
  <code className={`text-sm ${colors[color].split(' ')[0]}`}>{path}</code>
172
- <p className="text-xs text-gray-500 truncate mt-0.5">{description}</p>
172
+ <p className="text-xs text-theme-muted truncate mt-0.5">{description}</p>
173
173
  </div>
174
- <ChevronDown className={`w-4 h-4 text-gray-500 transition-transform ${open ? 'rotate-180' : ''}`} />
174
+ <ChevronDown className={`w-4 h-4 text-theme-muted transition-transform ${open ? 'rotate-180' : ''}`} />
175
175
  </button>
176
176
 
177
177
  {open && (
178
- <div className="px-4 pb-4 pt-2 border-t border-white/5 space-y-3 animate-fade-in">
178
+ <div className="px-4 pb-4 pt-2 border-t border-theme space-y-3 animate-fade-in">
179
179
  {exports?.length > 0 && (
180
180
  <div>
181
- <span className="text-[10px] text-gray-500 uppercase tracking-wider">Exports:</span>
181
+ <span className="text-[10px] text-theme-muted uppercase tracking-wider">Exports:</span>
182
182
  <div className="flex flex-wrap gap-1.5 mt-1.5">
183
183
  {exports.map((e, i) => (
184
184
  <span key={i} className="px-2 py-1 text-xs bg-white/5 text-blue-400 rounded border border-blue-500/20">{e}</span>
@@ -189,12 +189,12 @@ function ResourceItem({ path, description, usage, exports, warning, color, copyI
189
189
  {usage && (
190
190
  <div>
191
191
  <div className="flex items-center justify-between mb-1.5">
192
- <span className="text-[10px] text-gray-500 uppercase tracking-wider">Uso:</span>
192
+ <span className="text-[10px] text-theme-muted uppercase tracking-wider">Uso:</span>
193
193
  <button onClick={() => onCopy(usage, copyId)} className="text-xs text-blue-400 hover:text-blue-300 flex items-center gap-1">
194
194
  {copiedItem === copyId ? <><Check className="w-3 h-3" /> Copiado</> : <><Copy className="w-3 h-3" /> Copiar</>}
195
195
  </button>
196
196
  </div>
197
- <div className="bg-white/5 rounded-lg p-3 border border-white/5">
197
+ <div className="bg-white/5 rounded-lg p-3 border border-theme">
198
198
  <code className="text-sm text-blue-400">{usage}</code>
199
199
  </div>
200
200
  </div>
@@ -220,16 +220,16 @@ function TableCard({ table, copyId, copiedItem, onCopy }) {
220
220
  <code className="text-base font-semibold text-emerald-400">{table.name}</code>
221
221
  </div>
222
222
  <button onClick={() => onCopy(table.name, copyId)} className="p-1.5 hover:bg-white/5 rounded-lg transition-colors">
223
- {copiedItem === copyId ? <Check className="w-3.5 h-3.5 text-emerald-400" /> : <Copy className="w-3.5 h-3.5 text-gray-500" />}
223
+ {copiedItem === copyId ? <Check className="w-3.5 h-3.5 text-emerald-400" /> : <Copy className="w-3.5 h-3.5 text-theme-muted" />}
224
224
  </button>
225
225
  </div>
226
- <p className="text-sm text-gray-400 mb-3">{table.description}</p>
226
+ <p className="text-sm text-theme-secondary mb-3">{table.description}</p>
227
227
  {table.fields?.length > 0 && (
228
228
  <div>
229
- <span className="text-[10px] text-gray-500 uppercase tracking-wider">Campos:</span>
229
+ <span className="text-[10px] text-theme-muted uppercase tracking-wider">Campos:</span>
230
230
  <div className="flex flex-wrap gap-1 mt-1.5">
231
231
  {table.fields.map((f, i) => (
232
- <span key={i} className="text-xs bg-white/5 px-2 py-1 rounded text-gray-300 border border-emerald-500/10">{f}</span>
232
+ <span key={i} className="text-xs bg-white/5 px-2 py-1 rounded text-theme-secondary border border-emerald-500/10">{f}</span>
233
233
  ))}
234
234
  </div>
235
235
  </div>
@@ -28,11 +28,11 @@ export default function TechnicalDebt({ roadmap = {} }) {
28
28
  if (allDebts.length === 0) {
29
29
  return (
30
30
  <div className="card-dark rounded-2xl p-12 text-center">
31
- <div className="w-16 h-16 mx-auto mb-4 rounded-full bg-emerald-500/10 flex items-center justify-center">
32
- <TrendingDown className="w-8 h-8 text-emerald-400" />
31
+ <div className="w-16 h-16 mx-auto mb-4 rounded-full bg-matrix/10 flex items-center justify-center">
32
+ <TrendingDown className="w-8 h-8 text-matrix" />
33
33
  </div>
34
- <h3 className="text-lg font-semibold text-emerald-400 mb-2">Sin deuda tecnica</h3>
35
- <p className="text-gray-500 text-sm">No hay deuda tecnica registrada</p>
34
+ <h3 className="text-lg font-semibold text-matrix mb-2">Sin deuda técnica</h3>
35
+ <p className="text-theme-secondary text-sm">No hay deuda técnica registrada</p>
36
36
  </div>
37
37
  );
38
38
  }
@@ -49,7 +49,7 @@ export default function TechnicalDebt({ roadmap = {} }) {
49
49
 
50
50
  {/* Distribution Bar */}
51
51
  <div className="card-dark rounded-2xl p-6">
52
- <h3 className="text-sm text-gray-500 uppercase tracking-wider mb-4">Distribucion</h3>
52
+ <h3 className="text-sm text-theme-secondary uppercase tracking-wider mb-4">Distribución</h3>
53
53
  <div className="flex h-4 rounded-full overflow-hidden bg-white/5">
54
54
  {grouped.high.length > 0 && (
55
55
  <div
@@ -92,7 +92,7 @@ function StatCard({ label, value, gradient, icon: Icon }) {
92
92
  <div className="card-dark rounded-2xl p-5 hover:scale-[1.02] transition-all">
93
93
  <div className="flex items-center justify-between">
94
94
  <div>
95
- <p className="text-xs text-gray-500 uppercase tracking-wider mb-1">{label}</p>
95
+ <p className="text-xs text-theme-muted uppercase tracking-wider mb-1">{label}</p>
96
96
  <p className={`text-3xl font-bold bg-gradient-to-r ${gradient} bg-clip-text text-transparent`}>{value}</p>
97
97
  </div>
98
98
  <Icon className={`w-8 h-8 opacity-50 bg-gradient-to-r ${gradient} bg-clip-text`} style={{ color: 'currentColor' }} />
@@ -105,6 +105,7 @@ function DebtSection({ severity, debts }) {
105
105
  const config = {
106
106
  high: {
107
107
  title: 'Severidad Alta',
108
+ label: 'Alta',
108
109
  textColor: 'text-rose-400',
109
110
  bgColor: 'bg-rose-500/5',
110
111
  borderColor: 'border-rose-500/20',
@@ -112,6 +113,7 @@ function DebtSection({ severity, debts }) {
112
113
  },
113
114
  medium: {
114
115
  title: 'Severidad Media',
116
+ label: 'Media',
115
117
  textColor: 'text-amber-400',
116
118
  bgColor: 'bg-amber-500/5',
117
119
  borderColor: 'border-amber-500/20',
@@ -119,6 +121,7 @@ function DebtSection({ severity, debts }) {
119
121
  },
120
122
  low: {
121
123
  title: 'Severidad Baja',
124
+ label: 'Baja',
122
125
  textColor: 'text-cyan-400',
123
126
  bgColor: 'bg-cyan-500/5',
124
127
  borderColor: 'border-cyan-500/20',
@@ -149,17 +152,17 @@ function DebtSection({ severity, debts }) {
149
152
  <AlertTriangle className={`w-5 h-5 ${cfg.textColor}`} />
150
153
  </div>
151
154
  <div className="flex-1 min-w-0">
152
- <p className="text-white font-medium mb-2">{debt.description}</p>
155
+ <p className="text-theme-primary font-medium mb-2">{debt.description}</p>
153
156
  <div className="flex flex-wrap items-center gap-x-4 gap-y-2 text-sm">
154
- <span className="text-gray-500">Feature: <span className="text-blue-400">{debt.featureName}</span></span>
155
- <span className="text-gray-500">Tarea: <span className="text-cyan-400">{debt.taskName}</span></span>
156
- <span className="flex items-center gap-1 text-gray-500">
157
+ <span className="text-theme-muted">Característica: <span className="text-cyber">{debt.featureName}</span></span>
158
+ <span className="text-theme-muted">Tarea: <span className="text-cyber">{debt.taskName}</span></span>
159
+ <span className="flex items-center gap-1 text-theme-muted">
157
160
  <Clock className="w-3.5 h-3.5" /> {debt.estimated_effort}
158
161
  </span>
159
162
  </div>
160
163
  </div>
161
164
  <span className={`flex-shrink-0 px-2.5 py-1 text-[10px] font-bold text-white rounded-full uppercase tracking-wider ${cfg.badgeBg}`}>
162
- {severity}
165
+ {cfg.label}
163
166
  </span>
164
167
  </div>
165
168
  </div>