Merge branch 'main' of https://github.com/nicwands/takerofnotes-app
This commit is contained in:
@@ -68,12 +68,14 @@ class Config {
|
|||||||
}
|
}
|
||||||
parsed = {
|
parsed = {
|
||||||
...parsed ? parsed : {},
|
...parsed ? parsed : {},
|
||||||
activeAdapter: this.defaultPlugin.id
|
activeAdapter: this.defaultPlugin.id,
|
||||||
|
adapters: {}
|
||||||
};
|
};
|
||||||
parsed.adapters[this.defaultPlugin.id] = defaultConfig;
|
parsed.adapters[this.defaultPlugin.id] = defaultConfig;
|
||||||
|
parsed[theme] = "dark";
|
||||||
await this.write(parsed);
|
await this.write(parsed);
|
||||||
} else {
|
} else {
|
||||||
parsed.adapterConfig = this._resolveDefaults(parsed.adapterConfig);
|
parsed.adapters = this._resolveDefaults(parsed.adapters);
|
||||||
}
|
}
|
||||||
return parsed;
|
return parsed;
|
||||||
}
|
}
|
||||||
@@ -82,7 +84,7 @@ class Config {
|
|||||||
await fs.mkdir(dir, { recursive: true });
|
await fs.mkdir(dir, { recursive: true });
|
||||||
const resolvedConfig = {
|
const resolvedConfig = {
|
||||||
...configObject,
|
...configObject,
|
||||||
adapterConfig: this._resolveDefaults(configObject.adapterConfig)
|
adapters: this._resolveDefaults(configObject.adapters)
|
||||||
};
|
};
|
||||||
await fs.writeFile(
|
await fs.writeFile(
|
||||||
this.configPath,
|
this.configPath,
|
||||||
|
|||||||
@@ -50,13 +50,16 @@ export default class Config {
|
|||||||
parsed = {
|
parsed = {
|
||||||
...(parsed ? parsed : {}),
|
...(parsed ? parsed : {}),
|
||||||
activeAdapter: this.defaultPlugin.id,
|
activeAdapter: this.defaultPlugin.id,
|
||||||
|
adapters: {},
|
||||||
}
|
}
|
||||||
parsed.adapters[this.defaultPlugin.id] = defaultConfig
|
parsed.adapters[this.defaultPlugin.id] = defaultConfig
|
||||||
|
|
||||||
|
parsed[theme] = 'dark'
|
||||||
|
|
||||||
await this.write(parsed)
|
await this.write(parsed)
|
||||||
} else {
|
} else {
|
||||||
// Ensure any "__DEFAULT_USER_DATA__" values are resolved on load
|
// Ensure any "__DEFAULT_USER_DATA__" values are resolved on load
|
||||||
parsed.adapterConfig = this._resolveDefaults(parsed.adapterConfig)
|
parsed.adapters = this._resolveDefaults(parsed.adapters)
|
||||||
}
|
}
|
||||||
|
|
||||||
return parsed
|
return parsed
|
||||||
@@ -71,7 +74,7 @@ export default class Config {
|
|||||||
// Resolve defaults before writing
|
// Resolve defaults before writing
|
||||||
const resolvedConfig = {
|
const resolvedConfig = {
|
||||||
...configObject,
|
...configObject,
|
||||||
adapterConfig: this._resolveDefaults(configObject.adapterConfig),
|
adapters: this._resolveDefaults(configObject.adapters),
|
||||||
}
|
}
|
||||||
|
|
||||||
await fs.writeFile(
|
await fs.writeFile(
|
||||||
|
|||||||
@@ -57,6 +57,26 @@ const { plugins, setActivePlugin } = await usePlugins()
|
|||||||
const { config, ensureConfig } = useConfig()
|
const { config, ensureConfig } = useConfig()
|
||||||
await ensureConfig()
|
await ensureConfig()
|
||||||
|
|
||||||
|
const normalizeConfig = () => {
|
||||||
|
if (!config.value.adapters) {
|
||||||
|
config.value.adapters = {}
|
||||||
|
}
|
||||||
|
|
||||||
|
for (const plugin of plugins.value) {
|
||||||
|
if (!config.value.adapters[plugin.id]) {
|
||||||
|
config.value.adapters[plugin.id] = {}
|
||||||
|
}
|
||||||
|
|
||||||
|
for (const field of plugin.configSchema) {
|
||||||
|
if (config.value.adapters[plugin.id][field.key] === undefined) {
|
||||||
|
config.value.adapters[plugin.id][field.key] =
|
||||||
|
field.default ?? ''
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
normalizeConfig()
|
||||||
|
|
||||||
const selectedPluginId = ref(config.value.activeAdapter)
|
const selectedPluginId = ref(config.value.activeAdapter)
|
||||||
const validationError = ref('')
|
const validationError = ref('')
|
||||||
|
|
||||||
@@ -117,11 +137,11 @@ const save = async () => {
|
|||||||
width: 10px;
|
width: 10px;
|
||||||
height: 10px;
|
height: 10px;
|
||||||
margin-right: 10px;
|
margin-right: 10px;
|
||||||
border: 1px solid white;
|
border: 1px solid var(--theme-fg);
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
|
|
||||||
&:checked {
|
&:checked {
|
||||||
background-color: white;
|
background-color: var(--theme-fg);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user