office-addin-usage-data
Version:
Provides infrastructure to send usage data events and exceptions.
46 lines (37 loc) • 1.28 kB
text/typescript
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT license.
import * as defaults from "./defaults";
import { UsageDataLevel } from "./usageData";
import * as jsonData from "./usageDataSettings";
/* global console */
export function listUsageDataSettings(): void {
const usageDataSettings = jsonData.readUsageDataSettings(defaults.groupName);
if (usageDataSettings) {
for (const value of Object.keys(usageDataSettings)) {
console.log(`${value}: ${usageDataSettings[value]}\n`);
}
} else {
console.log(`No usage data settings.`);
}
}
export function turnUsageDataOff(): void {
setUsageDataLevel(UsageDataLevel.off);
}
export function turnUsageDataOn(): void {
setUsageDataLevel(UsageDataLevel.on);
}
function setUsageDataLevel(level: UsageDataLevel) {
try {
jsonData.modifyUsageDataJsonData(defaults.groupName, "usageDataLevel", level);
switch (level) {
case UsageDataLevel.off:
console.log("Usage data has been turned off.");
break;
case UsageDataLevel.on:
console.log("Usage data has been turned on.");
break;
}
} catch (err) {
throw new Error(`Unable to set the usage data level.\n${err}`);
}
}