hunk.code_window:       .should("have.length", 2);
     });
     it("Clicking on a message should open the search menu", function() {
       cy.get(debuggerLocators.errorMessage)
         .first()
  
hunk.labels: keep keep add keep keep keep
hunk.after_edit:   it("Recent errors are shown at the top of the list", function() {
       cy.get(debuggerLocators.debuggerLogState)
         .first()
         .contains("text");
     });
  
hunk.file_path: app/client/cypress/integration/Smoke_TestSuite/ClientSideTests/Debugger/Widget_Error_spec.js
hunk.type: add
file: import { GoogleOAuthURL, GithubOAuthURL } from "constants/ApiConstants";
  
  import GithubLogo from "assets/images/Github_inverted.png";
  import GoogleLogo from "assets/images/Google.png";
  export type SocialLoginButtonProps = {
    url: string;
    name: string;
    logo: string;
  };
  
  export const GoogleSocialLoginButtonProps: SocialLoginButtonProps = {
    url: GoogleOAuthURL,
    name: "Google",
    logo: GoogleLogo,
  };
  
  export const GithubSocialLoginButtonProps: SocialLoginButtonProps = {
    url: GithubOAuthURL,
    name: "Github",
    logo: GithubLogo,
  };
  
  export const SocialLoginButtonPropsList: Record<
    string,
    SocialLoginButtonProps
  > = {
    google: GoogleSocialLoginButtonProps,
    github: GithubSocialLoginButtonProps,
  };
  
  export type SocialLoginType = keyof typeof SocialLoginButtonPropsList;
  
  export const getSocialLoginButtonProps = (
    logins: SocialLoginType[],
  ): SocialLoginButtonProps[] => {
    return logins.map((login) => {
      const socialLoginButtonProps = SocialLoginButtonPropsList[login];
      if (!socialLoginButtonProps) {
        throw Error("Social login not registered: " + login);
      }
      return socialLoginButtonProps;
    });
  };
  