public static TelemetryEvent ForIssueFilingRequest(FileBugRequestSource source)
 {
     return(new TelemetryEvent(TelemetryAction.Scan_File_Bug, new Dictionary <TelemetryProperty, string>()
     {
         { TelemetryProperty.By, source.ToString() },
         { TelemetryProperty.IsAlreadyLoggedIn, IssueReporter.IsConnected.ToString(CultureInfo.InvariantCulture) },
         { TelemetryProperty.IssueReporter, IssueReporter.DisplayName?.ToString(CultureInfo.InvariantCulture) },
     }));
 }
 internal FileIssueWrapperInput(IIssueFilingSource vm, Guid ecId, Action switchToServerLogin,
                                Func <IssueInformation> issueInformationProvider, FileBugRequestSource requestSource)
 {
     VM   = vm ?? throw new ArgumentNullException(nameof(vm));
     EcId = ecId;
     SwitchToServerLogin      = switchToServerLogin ?? throw new ArgumentNullException(nameof(switchToServerLogin));
     IssueInformationProvider = issueInformationProvider ?? throw new ArgumentNullException(nameof(issueInformationProvider));
     RequestSource            = requestSource;
 }