in analytics-example-widget/scripts/common/WidgetSettings.ts [17:37]
export function areSettingsValid(widgetSettings: AnalyticsWidgetSettings): boolean {
return (widgetSettings.projectId != null &&
widgetSettings.teamId != null &&
widgetSettings.workItemType != null &&
widgetSettings.fields != null &&
widgetSettings.fields.every(o =>
o.fieldQueryName != null &&
o.fieldReferenceName != null &&
o.fieldType != null &&
o.operator != null &&
o.value != null &&
(o.value != "" || o.fieldType == "String")) &&//Do not allow empty string when dealing with value types.
(widgetSettings.aggregation.aggregationMode != null &&
(widgetSettings.aggregation.aggregationMode == AggregationMode.count ||
(widgetSettings.aggregation.displayName != null &&
widgetSettings.aggregation.queryableName != null &&
widgetSettings.aggregation.fieldReferenceName != null)
)
)
);
}