func NewMicrosoftAdapter(clientID, clientSecret string) Adapter {
	return &microsoftAdapter{&oauth2.Config{
		ClientID:     clientID,
		ClientSecret: clientSecret,
		RedirectURL:  util.GetConfig().BaseURL + "/api/v1/auth/microsoft/callback",
		Scopes: []string{
			"wl.basic",
		},
		Endpoint: microsoft.LiveConnectEndpoint,
	}}
}
NewMicrosoftAdapter creates an oAuth adapter out of the credentials and the baseURL
package auth
import (
	"context"
	"encoding/json"
	"fmt"
	"golang.org/x/oauth2/microsoft"
	"github.com/mxschmitt/golang-url-shortener/internal/util"
	"github.com/sirupsen/logrus"
	"github.com/pkg/errors"
	"golang.org/x/oauth2"
)
type microsoftAdapter struct {
	config *oauth2.Config
}