[agent-pipeline] pipe-20260311185722-je7c round-2

This commit is contained in:
DDD1542 2026-03-12 04:04:47 +09:00
parent ff94c5c42d
commit 19b078cf02
2 changed files with 109 additions and 0 deletions

View File

@ -321,6 +321,26 @@ export const V2RepeatContainerConfigPanel: React.FC<V2RepeatContainerConfigPanel
className="h-7 w-[100px] text-xs"
/>
</div>
<div className="flex items-center justify-between py-1">
<span className="text-xs text-muted-foreground"> </span>
<Input
value={config.itemMinWidth || ""}
onChange={(e) => onChange({ itemMinWidth: e.target.value || undefined })}
placeholder="auto"
className="h-7 w-[100px] text-xs"
/>
</div>
<div className="flex items-center justify-between py-1">
<span className="text-xs text-muted-foreground"> </span>
<Input
value={config.itemMaxWidth || ""}
onChange={(e) => onChange({ itemMaxWidth: e.target.value || undefined })}
placeholder="auto"
className="h-7 w-[100px] text-xs"
/>
</div>
</div>
{/* ─── 3단계: 반복 표시 필드 (슬롯) ─── */}
@ -474,6 +494,20 @@ export const V2RepeatContainerConfigPanel: React.FC<V2RepeatContainerConfigPanel
</Popover>
</div>
{/* 제목 템플릿 (titleColumn 미사용 시 대체) */}
<div className="space-y-1">
<span className="text-xs text-muted-foreground"> 릿 ()</span>
<Input
value={config.itemTitleTemplate || ""}
onChange={(e) => onChange({ itemTitleTemplate: e.target.value })}
placeholder="{field_name} - {field_code}"
className="h-7 text-xs"
/>
<p className="text-[10px] text-muted-foreground">
.
</p>
</div>
{/* 제목 스타일 */}
<div className="space-y-2 pt-1">
<span className="text-[10px] text-muted-foreground"> </span>
@ -749,6 +783,61 @@ export const V2RepeatContainerConfigPanel: React.FC<V2RepeatContainerConfigPanel
className="h-7 w-[160px] text-xs"
/>
</div>
{/* 데이터 필터링 */}
<div className="flex items-center justify-between py-1">
<div>
<p className="text-sm"> </p>
<p className="text-[11px] text-muted-foreground">formData에서 </p>
</div>
<Input
value={config.filterField || ""}
onChange={(e) => onChange({ filterField: e.target.value || undefined })}
placeholder="미사용"
className="h-7 w-[120px] text-xs"
/>
</div>
{config.filterField && (
<div className="flex items-center justify-between py-1">
<div>
<p className="text-sm"> </p>
<p className="text-[11px] text-muted-foreground"> </p>
</div>
<Input
value={config.filterColumn || ""}
onChange={(e) => onChange({ filterColumn: e.target.value || undefined })}
placeholder="컬럼명"
className="h-7 w-[120px] text-xs"
/>
</div>
)}
{/* 그룹핑 */}
<div className="flex items-center justify-between py-1">
<div>
<p className="text-sm"> </p>
<p className="text-[11px] text-muted-foreground"> </p>
</div>
<Switch
checked={config.useGrouping ?? false}
onCheckedChange={(checked) => onChange({ useGrouping: checked })}
/>
</div>
{config.useGrouping && (
<div className="ml-1 border-l-2 border-primary/20 pl-3">
<div className="flex items-center justify-between py-1">
<span className="text-xs text-muted-foreground"> </span>
<Input
value={config.groupByField || ""}
onChange={(e) => onChange({ groupByField: e.target.value || undefined })}
placeholder="필드명"
className="h-7 w-[120px] text-xs"
/>
</div>
</div>
)}
</div>
</CollapsibleContent>
</Collapsible>

View File

@ -7,6 +7,7 @@
import React, { useState } from "react";
import { Input } from "@/components/ui/input";
import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue } from "@/components/ui/select";
import { Switch } from "@/components/ui/switch";
import {
Collapsible,
@ -243,6 +244,25 @@ export const V2SectionPaperConfigPanel: React.FC<
}
/>
</div>
{/* 테두리 스타일 */}
{config.showBorder && (
<div className="flex items-center justify-between py-1">
<span className="text-xs text-muted-foreground"> </span>
<Select
value={config.borderStyle || "subtle"}
onValueChange={(value) => updateConfig("borderStyle", value)}
>
<SelectTrigger className="h-7 w-[100px] text-xs">
<SelectValue />
</SelectTrigger>
<SelectContent>
<SelectItem value="none"></SelectItem>
<SelectItem value="subtle"></SelectItem>
</SelectContent>
</Select>
</div>
)}
</div>
</CollapsibleContent>
</Collapsible>