MCPcopy Create free account
hub / github.com/MCSManager/MCSManager / useOperationLog

Function useOperationLog

frontend/src/hooks/useOperationLog.ts:137–176  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

135};
136
137export const useOperationLog = () => {
138 const logs = ref<OperationLoggerItem[]>([]);
139
140 const levelColors = {
141 info: "blue",
142 warning: "orange",
143 error: "red",
144 unknown: "gray"
145 };
146
147 const fetchData = async () => {
148 const { execute } = getOperationLog();
149 const data = await execute();
150 logs.value = data.value?.reverse() || [];
151 };
152
153 const generateTextByItem = (item: OperationLoggerItem) => {
154 const handler = renderMap[item.type];
155 if (!handler) return t("TXT_CODE_43df9305");
156 const { text, data } = handler(item as any);
157 let i = 0;
158 return text.replace(/\<\<\s*[\w_]+\s*\>\>/g, () => data[i++] ?? "--");
159 };
160
161 const getColorByLevel = (level: OperationLoggerItem["operation_level"]) => {
162 return levelColors[level] ?? levelColors.unknown;
163 };
164
165 const formattedLogs = computed(() => {
166 return logs.value.map((item) => {
167 return {
168 ...item,
169 color: getColorByLevel(item.operation_level),
170 text: generateTextByItem(item)
171 };
172 });
173 });
174
175 return { fetchData, logs, getColorByLevel, generateTextByItem, formattedLogs };
176};

Callers

nothing calls this directly

Calls 2

getColorByLevelFunction · 0.85
generateTextByItemFunction · 0.85

Tested by

no test coverage detected