in src/settings.ts [137:178]
function saveSettings(settings: Settings): LatestSavedSettings {
const s: LatestSavedSettings = { version: LATEST_SAVED_SETTINGS_VERSION };
if (settings.meta.storeDates) {
let start = Math.floor(settings.dates.start.getTime() / DAY_MILLIS);
let end = Math.floor(settings.dates.end.getTime() / DAY_MILLIS);
s.dates = { start, end };
if (settings.meta.relativeDates) {
const now_day = Math.floor(Date.now() / DAY_MILLIS);
s.dates.start -= now_day;
s.dates.end -= now_day;
s.dates.relative = true;
}
}
if (settings.meta.storeEtags) {
s.data_etags = settings.data_etags;
}
if (settings.meta.storeMeta) {
s.meta = settings.meta;
}
if (settings.meta.storeSelection) {
s.selection = settings.selection;
}
if (settings.meta.storeSignature) {
s.signature = settings.signature;
if (settings.meta.storePing) {
s.pingCrashId = settings.pingCrashId;
}
}
if (settings.meta.storeSort) {
s.sort = settings.sort;
}
if (settings.meta.expiration) {
const { months, days } = parseDuration(settings.meta.expiration);
const expires = new Date();
expires.setUTCMonth(expires.getUTCMonth() + months);
expires.setUTCDate(expires.getUTCDate() + days);
s.expires = expires.toISOString();
}
return s;
}