Merge bc559aa4c1
into 6339a0782b
This commit is contained in:
commit
6c0bbb1d96
__tests__/containers
RoomItem/__snapshots__
markdown/__snapshots__
message/__snapshots__
app
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