diff options
Diffstat (limited to 'src/server/credentials/CredentialsLoader.ts')
| -rw-r--r-- | src/server/credentials/CredentialsLoader.ts | 29 | 
1 files changed, 29 insertions, 0 deletions
| diff --git a/src/server/credentials/CredentialsLoader.ts b/src/server/credentials/CredentialsLoader.ts new file mode 100644 index 000000000..e3f4d167b --- /dev/null +++ b/src/server/credentials/CredentialsLoader.ts @@ -0,0 +1,29 @@ +import { readFile } from "fs"; + +export namespace GoogleCredentialsLoader { + +    export interface InstalledCredentials { +        client_id: string; +        project_id: string; +        auth_uri: string; +        token_uri: string; +        auth_provider_x509_cert_url: string; +        client_secret: string; +        redirect_uris: string[]; +    } + +    export let ProjectCredentials: InstalledCredentials; + +    export async function loadCredentials() { +        ProjectCredentials = await new Promise<InstalledCredentials>(resolve => { +            readFile(__dirname + '/google_project_credentials.json', function processClientSecrets(err, content) { +                if (err) { +                    console.log('Error loading client secret file: ' + err); +                    return; +                } +                resolve(JSON.parse(content.toString()).installed); +            }); +        }); +    } + +} | 
