add googleSheet to db model

This commit is contained in:
arc-alex
2023-11-23 14:53:22 +01:00
parent ef2fa99673
commit b15b4b48a7
6 changed files with 25 additions and 1 deletions
@@ -11,6 +11,7 @@ import {
UserFields,
Alias,
Settings,
GoogleSheet,
} from 'ontime-types';
import { data, db } from '../../modules/loadDb.js';
@@ -58,6 +59,15 @@ export class DataProvider {
await this.persist();
}
static getGoogleSheet() {
return data.googleSheet;
}
static async setGoogleSheet(newData: GoogleSheet) {
data.googleSheet = { ...newData };
await this.persist();
}
static getOsc() {
return data.osc;
}
@@ -6,12 +6,13 @@ import { DatabaseModel } from 'ontime-types';
* @param {object} newData
*/
export function safeMerge(existing: DatabaseModel, newData: Partial<DatabaseModel>) {
const { rundown, project, settings, viewSettings, osc, aliases, userFields } = newData || {};
const { rundown, project, settings, googleSheet, viewSettings, osc, aliases, userFields } = newData || {};
return {
...existing,
rundown: rundown ?? existing.rundown,
project: { ...existing.project, ...project },
settings: { ...existing.settings, ...settings },
googleSheet: { ...existing.googleSheet, ...googleSheet },
viewSettings: { ...existing.viewSettings, ...viewSettings },
aliases: aliases ?? existing.aliases,
userFields: {
+4
View File
@@ -20,6 +20,10 @@ export const dbModel: DatabaseModel = {
timeFormat: '24',
language: 'en',
},
googleSheet: {
worksheet: '',
id: '',
},
viewSettings: {
overrideStyles: false,
normalColor: '#ffffffcc',
@@ -5,6 +5,7 @@ import { OSCSettings } from './core/OscSettings.type.js';
import { Settings } from './core/Settings.type.js';
import { UserFields } from './core/UserFields.type.js';
import { ViewSettings } from './core/Views.type.js';
import { GoogleSheet } from '../index.js';
export type DatabaseModel = {
rundown: OntimeRundown;
@@ -13,5 +14,6 @@ export type DatabaseModel = {
viewSettings: ViewSettings;
aliases: Alias[];
userFields: UserFields;
googleSheet: GoogleSheet;
osc: OSCSettings;
};
@@ -0,0 +1,4 @@
export type GoogleSheet = {
worksheet: string;
id: string;
};
+3
View File
@@ -33,6 +33,9 @@ export type { OSCSettings, OscSubscription, OscSubscriptionOptions } from './def
// ---> HTTP
// ---> Google Sheet
export type { GoogleSheet } from './definitions/core/GoogleSheet.type.js';
// SERVER RESPONSES
export type { NetworkInterface, GetInfo } from './api/ontime-controller/BackendResponse.type.js';
export type { GetRundownCached } from './api/rundown-controller/BackendResponse.type.js';