obsidian-douban/src/org/wanxp/douban/setting/BasicSettingsHelper.ts
Wanxp c09f96d3b8 fix #143 #132 #124
1. 增加游戏同步功能
2. 修复自定义参数配置问题
3. 增加搜索默认类型
4. 增加全部搜索为空时的提示
2025-03-11 14:45:14 +08:00

117 lines
3.6 KiB
TypeScript

import I18nHelper, {i18nHelper} from "../../lang/helper";
import {Platform, Setting} from "obsidian";
import {DEFAULT_SETTINGS} from "../../constant/DefaultSettings";
import SettingsManager from "./SettingsManager";
import DoubanLoginModel from "../component/DoubanLoginModel";
import DoubanLogoutModel from "../component/DoubanLogoutModel";
import User from "../user/User";
import {createFolderSelectionSetting} from "./TemplateSettingHelper";
import StringUtil from "../../utils/StringUtil";
import {log} from "../../utils/Logutil";
import DoubanPlugin from "../../main";
import {SearchTypeRecords, SupportType, SupportTypeMap} from "../../constant/Constsant";
export function constructBasicUI(containerEl: HTMLElement, manager: SettingsManager) {
// containerEl.createEl('h3', { text: i18nHelper.getMessage('1210') });
new Setting(containerEl).setName(i18nHelper.getMessage('120501')).then((setting) => {
setting.addMomentFormat((mf) => {
setting.descEl.appendChild(
createFragment((frag) => {
frag.appendText(
i18nHelper.getMessage('120503')
);
frag.createEl('br');
frag.appendText(i18nHelper.getMessage('120506') + ' ');
frag.createEl(
'a',
{
text: i18nHelper.getMessage('120508'),
href: 'https://momentjs.com/docs/#/displaying/format/',
},
(a) => {
a.setAttr('target', '_blank');
}
);
frag.createEl('br');
frag.appendText(i18nHelper.getMessage('120507') + ': ');
mf.setSampleEl(frag.createEl('b', {cls: 'u-pop'}));
frag.createEl('br');
})
);
mf.setPlaceholder(DEFAULT_SETTINGS.dateFormat);
mf.setValue(manager.plugin.settings.dateFormat)
mf.onChange(async (value) => {
manager.plugin.settings.dateFormat = value;
await manager.plugin.saveSettings();
});
});
});
new Setting(containerEl).setName(i18nHelper.getMessage('120502')).then((setting) => {
setting.addMomentFormat((mf) => {
setting.descEl.appendChild(
createFragment((frag) => {
frag.appendText(
i18nHelper.getMessage('120504')
);
frag.createEl('br');
frag.appendText(i18nHelper.getMessage('120506') + ' ');
frag.createEl(
'a',
{
text: i18nHelper.getMessage('120508'),
href: 'https://momentjs.com/docs/#/displaying/format/',
},
(a) => {
a.setAttr('target', '_blank');
}
);
frag.createEl('br');
frag.appendText(i18nHelper.getMessage('120507') + ': ');
mf.setSampleEl(frag.createEl('b', {cls: 'u-pop'}));
frag.createEl('br');
})
);
mf.setPlaceholder(DEFAULT_SETTINGS.timeFormat);
mf.setValue(manager.plugin.settings.timeFormat)
mf.onChange(async (value) => {
manager.plugin.settings.timeFormat = value;
await manager.plugin.saveSettings();
});
});
});
new Setting(containerEl)
.setName(i18nHelper.getMessage('121401'))
.setDesc(i18nHelper.getMessage('121402'))
.addToggle((toggleComponent) => {
toggleComponent
// .setTooltip(i18nHelper.getMessage('121403'))
.setValue(manager.plugin.settings.statusBar)
.onChange(async (value) => {
manager.plugin.settings.statusBar = value;
await manager.plugin.saveSettings();
});
});
new Setting(containerEl)
.setName(i18nHelper.getMessage('121410'))
.setDesc(i18nHelper.getMessage('121411'))
.addDropdown((dropdown) => {
dropdown
.addOptions(SearchTypeRecords)
.setValue(manager.plugin.settings.searchDefaultType)
.onChange(async (value) => {
// @ts-ignore
manager.plugin.settings.searchDefaultType = SupportTypeMap[value];
await manager.plugin.saveSettings();
});
});
}