73f80d27c9
之前 auto_approve_plan/auto_approve_exec/checks 列与 Project 类型已存在,但 PatchProjectInput 不含它们 → 无法启用(dead config)。本次接通: - PatchProjectInput + patchProject 支持 autoApprovePlan/autoApproveExec/checks - API PATCH /projects 透传三字段 - ingest decompose-result:auto-approved + autoApprovePlan + 全 easy + 子任务≤5 → store.decide(accept) 跳过 plan_review 直达 decomposed(默认关) Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
18 lines
769 B
React
18 lines
769 B
React
import { ensureFieldCss } from './Input.jsx';
|
|
|
|
export function Textarea({ label, required, placeholder, value, defaultValue, onChange, minHeight = 72, danger, style }) {
|
|
ensureFieldCss();
|
|
const ctrl = (
|
|
<textarea className="m-input" placeholder={placeholder} value={value} defaultValue={defaultValue}
|
|
style={{ resize: 'vertical', minHeight, width: '100%', ...(danger ? { borderColor: 'var(--red-dim)' } : {}), ...style }}
|
|
onChange={onChange ? (e) => onChange(e.target.value) : undefined} readOnly={value !== undefined && !onChange} />
|
|
);
|
|
if (!label) return ctrl;
|
|
return (
|
|
<label className="m-label" style={{ width: '100%' }}>
|
|
<span>{label}{required ? <span className="m-req"> *</span> : null}</span>
|
|
{ctrl}
|
|
</label>
|
|
);
|
|
}
|