ERP-node/frontend/lib/registry/pop-components/pop-card-list-v2
SeongHyun Kim a2c532c7c7 feat: 낙관적 잠금 + 소유자 기반 액션 제어 + 디자이너 설정 UI
동시 접수 충돌 방지(preCondition WHERE + 409 에러), 소유자 일치 시에만
버튼 활성화(owner-match showCondition), 본인 카드 우선 정렬(ownerSortColumn)을
구현하고 디자이너에서 설정할 수 있는 UI 3종을 추가한다.
[백엔드]
- popActionRoutes: TaskBody에 preCondition 추가, data-update WHERE 조건 삽입,
  rowCount=0 시 409 Conflict 반환 (isPreConditionFail)
[프론트엔드 - 런타임]
- types.ts: ActionPreCondition 인터페이스, owner-match 타입, ownerSortColumn 필드
- cell-renderers: evaluateShowCondition에 owner-match 분기 + currentUserId prop
- PopCardListV2Component: useAuth 연동, preCondition 전달/409 처리,
  ownerSortColumn 기반 카드 정렬, currentUserId 하위 전달
[프론트엔드 - 디자이너 설정 UI]
- PopCardListV2Config: showCondition 드롭다운에 "소유자 일치" 옵션 + 컬럼 선택,
  ImmediateActionEditor에 "사전 조건(중복 방지)" 토글 + 검증 컬럼/기대값/실패 메시지,
  TabActions에 "소유자 우선 정렬" 컬럼 드롭다운
2026-03-12 18:26:47 +09:00
..
PopCardListV2Component.tsx feat: 낙관적 잠금 + 소유자 기반 액션 제어 + 디자이너 설정 UI 2026-03-12 18:26:47 +09:00
PopCardListV2Config.tsx feat: 낙관적 잠금 + 소유자 기반 액션 제어 + 디자이너 설정 UI 2026-03-12 18:26:47 +09:00
PopCardListV2Preview.tsx feat(pop): pop-card-list-v2 슬롯 기반 카드 컴포넌트 신규 + 타임라인 범용화 + 액션 인라인 설정 2026-03-10 16:56:14 +09:00
cell-renderers.tsx feat: 낙관적 잠금 + 소유자 기반 액션 제어 + 디자이너 설정 UI 2026-03-12 18:26:47 +09:00
index.tsx feat(pop): pop-search status-chip 입력 타입 추가 + all_rows 이벤트 연동 2026-03-10 18:51:22 +09:00
migrate.ts feat(pop): pop-card-list-v2 슬롯 기반 카드 컴포넌트 신규 + 타임라인 범용화 + 액션 인라인 설정 2026-03-10 16:56:14 +09:00