Fix : Server Icon doesnt load on reconnect
This commit is contained in:
parent
54f2cea4e9
commit
adb169460e
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
|
@ -27,4 +27,4 @@ export interface ISettingsIcon {
|
|||
enterprise: boolean;
|
||||
}
|
||||
|
||||
export type TSettingsModel = ISettings & Model;
|
||||
export type TSettingsModel = (ISettings | ISettingsIcon) & Model;
|
||||
|
|
|
@ -169,7 +169,7 @@ export const defaultSettings = {
|
|||
type: 'valueAsBoolean'
|
||||
},
|
||||
Assets_favicon_512: {
|
||||
type: null
|
||||
type: 'value'
|
||||
},
|
||||
Message_Read_Receipt_Enabled: {
|
||||
type: 'valueAsBoolean'
|
||||
|
|
|
@ -128,14 +128,27 @@ export async function setSettings(): Promise<void> {
|
|||
const db = database.active;
|
||||
const settingsCollection = db.get('settings');
|
||||
const settingsRecords = await settingsCollection.query().fetch();
|
||||
const parsed = Object.values(settingsRecords).map(item => ({
|
||||
_id: item.id,
|
||||
valueAsString: item.valueAsString,
|
||||
valueAsBoolean: item.valueAsBoolean,
|
||||
valueAsNumber: item.valueAsNumber,
|
||||
valueAsArray: item.valueAsArray,
|
||||
_updatedAt: item._updatedAt
|
||||
}));
|
||||
const parsed = Object.values(settingsRecords).map(item => {
|
||||
// All settings except 'Assets_favicon_512' are of type ISettings & Model
|
||||
// 'valueAsString' property check is used in order to avoid eslint error
|
||||
if (item.id !== 'Assets_favicon_512' && 'valueAsString' in item) {
|
||||
return {
|
||||
_id: item.id,
|
||||
valueAsString: item.valueAsString,
|
||||
valueAsBoolean: item.valueAsBoolean,
|
||||
valueAsNumber: item.valueAsNumber,
|
||||
valueAsArray: item.valueAsArray,
|
||||
_updatedAt: item._updatedAt
|
||||
};
|
||||
}
|
||||
return {
|
||||
_id: item.id,
|
||||
// @ts-ignore
|
||||
value: item.value,
|
||||
// @ts-ignore
|
||||
enterprise: item.enterprise
|
||||
};
|
||||
});
|
||||
reduxStore.dispatch(addSettings(parseSettings(parsed.slice(0, parsed.length))));
|
||||
}
|
||||
|
||||
|
|
|
@ -53,11 +53,17 @@ export async function shareExtensionInit(server: string) {
|
|||
const settingsCollection = db.get('settings');
|
||||
const settingsRecords = await settingsCollection.query(Q.where('id', Q.oneOf(settings))).fetch();
|
||||
const parsed = Object.values(settingsRecords).map(item => ({
|
||||
// it is guranteed the properties will exist as the settings list doesnt contain Assets_favicon_512
|
||||
_id: item.id,
|
||||
// @ts-ignore
|
||||
valueAsString: item.valueAsString,
|
||||
// @ts-ignore
|
||||
valueAsBoolean: item.valueAsBoolean,
|
||||
// @ts-ignore
|
||||
valueAsNumber: item.valueAsNumber,
|
||||
// @ts-ignore
|
||||
valueAsArray: item.valueAsArray,
|
||||
// @ts-ignore
|
||||
_updatedAt: item._updatedAt
|
||||
}));
|
||||
store.dispatch(shareSetSettings(parseSettings(parsed)));
|
||||
|
|
Loading…
Reference in New Issue