package automation

import (
	"strings"

	"github.com/nexuscrm/shared/pkg/models"
)

func cloneConnectorPushUserSession(user models.UserSession) models.UserSession {
	if user.Email != nil {
		email := *user.Email
		user.Email = &email
	}
	if user.RoleID != nil {
		roleID := *user.RoleID
		user.RoleID = &roleID
	}
	if user.RoleName != nil {
		roleName := *user.RoleName
		user.RoleName = &roleName
	}
	return user
}

func connectorPushTechnicalProjectionFieldNameProtected(fieldAPIName string) bool {
	switch strings.ToLower(strings.TrimSpace(fieldAPIName)) {
	case "id",
		"ownerid",
		"recordtypeid",
		"masterrecordid",
		"createdbyid",
		"lastmodifiedbyid",
		"deletedbyid",
		"createddate",
		"lastmodifieddate",
		"systemmodstamp",
		"isdeleted":
		return true
	default:
		return false
	}
}
