@prmichaelsen/acp-visualizer 0.9.5 → 0.10.0
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/package.json
CHANGED
|
@@ -15,12 +15,12 @@ interface FilterBarProps {
|
|
|
15
15
|
|
|
16
16
|
export function FilterBar({ status, onStatusChange }: FilterBarProps) {
|
|
17
17
|
return (
|
|
18
|
-
<div className="flex gap-
|
|
18
|
+
<div className="flex flex-wrap gap-2 p-2 bg-gray-800/50 rounded-lg">
|
|
19
19
|
{statusOptions.map((opt) => (
|
|
20
20
|
<button
|
|
21
21
|
key={opt.value}
|
|
22
22
|
onClick={() => onStatusChange(opt.value)}
|
|
23
|
-
className={`px-
|
|
23
|
+
className={`px-4 py-2 text-sm rounded-md transition-colors whitespace-nowrap min-w-[44px] min-h-[44px] flex items-center justify-center ${
|
|
24
24
|
status === opt.value
|
|
25
25
|
? 'bg-gray-700 text-gray-100 shadow-sm'
|
|
26
26
|
: 'text-gray-500 hover:text-gray-300'
|
|
@@ -90,10 +90,11 @@ export function MilestoneKanban({ milestones, tasks }: MilestoneKanbanProps) {
|
|
|
90
90
|
coreStatuses.has(col.status) ||
|
|
91
91
|
milestones.some((m) => m.status === col.status),
|
|
92
92
|
)
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
93
|
+
|
|
94
|
+
// Responsive grid: 1 col mobile, 2 cols tablet, 3-4 cols desktop
|
|
95
|
+
const gridCols = activeColumns.length <= 3
|
|
96
|
+
? 'grid-cols-1 md:grid-cols-2 lg:grid-cols-3'
|
|
97
|
+
: 'grid-cols-1 md:grid-cols-2 lg:grid-cols-4'
|
|
97
98
|
|
|
98
99
|
return (
|
|
99
100
|
<div className={`grid ${gridCols} gap-4 min-h-[300px]`}>
|
|
@@ -15,12 +15,12 @@ const views: Array<{ id: ViewMode; label: string }> = [
|
|
|
15
15
|
|
|
16
16
|
export function ViewToggle({ value, onChange }: ViewToggleProps) {
|
|
17
17
|
return (
|
|
18
|
-
<div className="flex gap-1 bg-gray-900 border border-gray-800 rounded-lg p-0.5">
|
|
18
|
+
<div className="flex gap-1 bg-gray-900 border border-gray-800 rounded-lg p-0.5 overflow-x-auto scrollbar-hide">
|
|
19
19
|
{views.map((v) => (
|
|
20
20
|
<button
|
|
21
21
|
key={v.id}
|
|
22
22
|
onClick={() => onChange(v.id)}
|
|
23
|
-
className={`px-
|
|
23
|
+
className={`px-4 py-2 text-sm rounded-md transition-colors whitespace-nowrap min-w-[44px] min-h-[44px] flex items-center justify-center ${
|
|
24
24
|
value === v.id
|
|
25
25
|
? 'bg-gray-700 text-gray-100'
|
|
26
26
|
: 'text-gray-500 hover:text-gray-300'
|