mirror of
https://github.com/xx254/linkedin_skills.git
synced 2026-07-16 15:05:15 +03:00
linkedin skills
This commit is contained in:
@@ -0,0 +1,44 @@
|
||||
const { getWeekKey } = require("./io");
|
||||
|
||||
const DEFAULT_KEYS = [
|
||||
"leads_processed",
|
||||
"qualified_count",
|
||||
"drafted_count",
|
||||
"reply_drafts_count",
|
||||
"replied_count",
|
||||
"rejected_count",
|
||||
"score3_conversion_count"
|
||||
];
|
||||
|
||||
/**
|
||||
* Ensures weeklyMetrics exists, resets when ISO week changes, backfills missing counters.
|
||||
*/
|
||||
function ensureWeekMetrics(state) {
|
||||
const weekKey = getWeekKey();
|
||||
const wm = state.weeklyMetrics;
|
||||
|
||||
if (!wm || wm.weekKey !== weekKey) {
|
||||
state.weeklyMetrics = {
|
||||
weekKey,
|
||||
leads_processed: 0,
|
||||
qualified_count: 0,
|
||||
drafted_count: 0,
|
||||
reply_drafts_count: 0,
|
||||
replied_count: 0,
|
||||
rejected_count: 0,
|
||||
score3_conversion_count: 0
|
||||
};
|
||||
return state;
|
||||
}
|
||||
|
||||
DEFAULT_KEYS.forEach((k) => {
|
||||
if (typeof state.weeklyMetrics[k] !== "number" || Number.isNaN(state.weeklyMetrics[k])) {
|
||||
state.weeklyMetrics[k] = 0;
|
||||
}
|
||||
});
|
||||
return state;
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
ensureWeekMetrics
|
||||
};
|
||||
Reference in New Issue
Block a user