fix: fix double computation on changing intervals

This commit is contained in:
shumadrid 2025-04-08 10:36:26 +02:00
parent 2628a4ffca
commit b37f46e571
6 changed files with 14 additions and 9 deletions

6
package-lock.json generated
View file

@ -8966,9 +8966,9 @@
}
},
"node_modules/obsidian-dev-utils": {
"version": "24.0.1",
"resolved": "https://registry.npmjs.org/obsidian-dev-utils/-/obsidian-dev-utils-24.0.1.tgz",
"integrity": "sha512-4Ayh/WZSMq1D3M+RvoXQA4HC32V1Flgqeu8HDHZLSjaTozCdtz2p+0AlaVFsozvaK786/gTkP+7NZe0aBIoFvQ==",
"version": "24.1.1",
"resolved": "https://registry.npmjs.org/obsidian-dev-utils/-/obsidian-dev-utils-24.1.1.tgz",
"integrity": "sha512-pHqnS9lnF5GmWWTkVB87/Uqg50Z7u0HzvWoZySuzlhT8hfARDdPqiaD5BTRj2uAv4XV2DAj27cF97OK4UURjDA==",
"dev": true,
"license": "MIT",
"dependencies": {

View file

@ -165,8 +165,12 @@ export class GitChangelogPlugin extends PluginBase<GitChangelogPluginTypes> {
// eslint-disable-next-line @typescript-eslint/require-await
public override async onSaveSettings(
_newSettings: GitChangelogSettings,
_oldSettings: GitChangelogSettings
_oldSettings: GitChangelogSettings,
skipCheck?: boolean
): Promise<void> {
if (skipCheck) {
return;
}
this.debouncedChangelogSettingsChangedCheck?.(_oldSettings, _newSettings);
}

View file

@ -50,7 +50,8 @@ export class FileChangelogManager extends ChangelogManager<FileChangelogEntry> {
await this.plugin.settingsManager.editAndSave(
(settings: GitChangelogSettings): void => {
settings.fileChangelogInterval = this.getNextInterval();
}
},
true
);
this.plugin.app.workspace.trigger(
'git-changelog:file-changelog-generation-settings-changed'

View file

@ -50,7 +50,8 @@ export class VaultChangelogManager extends ChangelogManager<VaultChangelogEntry>
await this.plugin.settingsManager.editAndSave(
(settings: GitChangelogSettings): void => {
settings.vaultChangelogInterval = this.getNextInterval();
}
},
true
);
this.plugin.app.workspace.trigger(
'git-changelog:vault-changelog-generation-settings-changed'

View file

@ -25,7 +25,7 @@ function getSystemLocale(plugin: GitChangelogPlugin): string {
if (validateLocale(systemLocale)) {
plugin.detectedLocale = systemLocale;
} else {
new Notice(
plugin.displayNotice(
"Couldn't detect a valid system locale: Obsidian installer version might be too old.\nFallback to en-US."
);
plugin.detectedLocale = 'en-US';

View file

@ -1,6 +1,5 @@
import type GitChangelogPlugin from 'main.ts';
import { Notice } from 'obsidian';
import { SettingComponent } from 'settings/components/setting.ts';
import { TimeZoneSuggest } from 'settings/components/suggest.ts';
import { TIME_ZONES_LIST } from 'settings/settings.ts';
@ -29,7 +28,7 @@ function getSystemTimeZone(plugin: GitChangelogPlugin): string {
if (validateCustomTimeZone(systemTimeZone)) {
plugin.detectedTimeZone = systemTimeZone;
} else {
new Notice(
plugin.displayNotice(
"Couldn't detect a valid system time zone: Obsidian installer version might be too old.\nFallback to UTC."
);
plugin.detectedTimeZone = 'utc';