[st] - 일정등록, 입력단 지난검증결과 알림 뱃지, 로그 상세조회, 검토단 cell style 적용
This commit is contained in:
@@ -39,10 +39,10 @@ function mergeCellStyleCallbackResult(
|
||||
return baseStyleName ? { styleName: baseStyleName } : {};
|
||||
}
|
||||
if (typeof extra === "string") {
|
||||
const styleName = [extra, baseStyleName].filter(Boolean).join(" ");
|
||||
const styleName = [baseStyleName, extra].filter(Boolean).join(" ");
|
||||
return styleName ? { styleName } : {};
|
||||
}
|
||||
const styleName = [extra.styleName, baseStyleName].filter(Boolean).join(" ");
|
||||
const styleName = [baseStyleName, extra.styleName].filter(Boolean).join(" ");
|
||||
return {
|
||||
...extra,
|
||||
...(styleName ? { styleName } : {}),
|
||||
@@ -812,13 +812,24 @@ useEffect(() => {
|
||||
useLayoutEffect(() => {
|
||||
const gv = gridRef.current?.gridView;
|
||||
if (!gv || !cellStyleCallback) return;
|
||||
applyCellStyleCallbacksToColumns(
|
||||
gv,
|
||||
columns,
|
||||
rowDataRef,
|
||||
cellStyleCallbackRef,
|
||||
);
|
||||
(gv as { refresh?: () => void }).refresh?.();
|
||||
|
||||
const apply = () => {
|
||||
applyCellStyleCallbacksToColumns(
|
||||
gv,
|
||||
columns,
|
||||
rowDataRef,
|
||||
cellStyleCallbackRef,
|
||||
);
|
||||
(gv as { refresh?: () => void }).refresh?.();
|
||||
};
|
||||
|
||||
apply();
|
||||
// footer setColumns / setColumnLayout 비동기 처리 이후 styleCallback 재적용
|
||||
const timerId = window.setTimeout(apply, 300);
|
||||
|
||||
return () => {
|
||||
window.clearTimeout(timerId);
|
||||
};
|
||||
}, [cellStyleCallback, columns, rowData]);
|
||||
|
||||
const { setMessage: alert } = useAlertStore((state) => state);
|
||||
@@ -1416,6 +1427,13 @@ useEffect(() => {
|
||||
| ((layout: unknown) => void)
|
||||
| undefined
|
||||
)?.(safeLayout);
|
||||
applyCellStyleCallbacksToColumns(
|
||||
gridRef.current.gridView,
|
||||
columns,
|
||||
rowDataRef,
|
||||
cellStyleCallbackRef,
|
||||
);
|
||||
gridRef.current.gridView.refresh?.();
|
||||
} catch (e) {
|
||||
console.warn("setColumnLayout skipped due to invalid columns:", e);
|
||||
}
|
||||
@@ -1482,16 +1500,16 @@ useEffect(() => {
|
||||
col,
|
||||
),
|
||||
);
|
||||
applyFooterSettings(currentGridView);
|
||||
if (hasFooterUserSpans) {
|
||||
currentGridView.setColumnLayout?.(columnLayout);
|
||||
}
|
||||
applyCellStyleCallbacksToColumns(
|
||||
currentGridView,
|
||||
columns,
|
||||
rowDataRef,
|
||||
cellStyleCallbackRef,
|
||||
);
|
||||
applyFooterSettings(currentGridView);
|
||||
if (hasFooterUserSpans) {
|
||||
currentGridView.setColumnLayout?.(columnLayout);
|
||||
}
|
||||
|
||||
// setColumns 호출 후 footer 배열의 valueCallback을 다시 설정
|
||||
scheduleFooterTask(() => {
|
||||
@@ -1535,16 +1553,16 @@ useEffect(() => {
|
||||
);
|
||||
}
|
||||
});
|
||||
applyFooterSettings(liveGridView);
|
||||
if (hasFooterUserSpans) {
|
||||
liveGridView.setColumnLayout?.(columnLayout);
|
||||
}
|
||||
applyCellStyleCallbacksToColumns(
|
||||
liveGridView,
|
||||
columns,
|
||||
rowDataRef,
|
||||
cellStyleCallbackRef,
|
||||
);
|
||||
applyFooterSettings(liveGridView);
|
||||
if (hasFooterUserSpans) {
|
||||
liveGridView.setColumnLayout?.(columnLayout);
|
||||
}
|
||||
liveGridView.refresh?.();
|
||||
}, 50);
|
||||
} catch (e) {
|
||||
|
||||
Reference in New Issue
Block a user