Skip to content

Conversation

@acoumb
Copy link
Contributor

@acoumb acoumb commented Nov 18, 2025

HubSpot integration upgraded to work with Umbraco 17.

@acoumb acoumb requested a review from Copilot November 18, 2025 13:46
Copilot finished reviewing on behalf of acoumb November 18, 2025 13:47
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR upgrades the HubSpot integration to work with Umbraco 17, including dependency updates, refactoring to use a factory pattern for authorization services, and improvements to the ActiveCampaign integration with server-side search functionality.

Key Changes:

  • Upgraded target framework from .NET 9.0 to .NET 10.0 for HubSpot integration
  • Replaced delegate-based authorization service instantiation with a factory pattern
  • Updated frontend dependencies to Umbraco 17.0.0-rc2 and related packages
  • Enhanced ActiveCampaign integration with server-side search and pagination

Reviewed Changes

Copilot reviewed 35 out of 41 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
Umbraco.Cms.Integrations.Crm.Hubspot.csproj Updated target framework to net10.0, version to 8.0.0, and Umbraco package version to 17.0.0-rc2
HubspotComposer.cs Replaced delegate factory with IHubspotAuthorizationServiceFactory registration
HubspotAuthorizationServiceFactory.cs New factory implementation for creating authorization services
IHubspotAuthorizationServiceFactory.cs New factory interface
Controllers (GetAccessToken, GetAuthorizationUrl, RefreshAccessToken, ValidateAccessToken) Updated to use factory instead of delegate
Client package files Updated dependencies to @umbraco-cms/backoffice 17.0.0-rc2, @hey-api packages, and generated types
hubspot-forms.repository.ts Changed service name from FormsService to Forms
Property editor elements Updated type reference from HubspotFormPickerSettingsModelReadable to HubspotFormPickerSettingsModel
Algolia integration Added ContentPublishedHandler and updated media picker converter for single media items
ActiveCampaign integration Added server-side search functionality with query parameter support

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +44 to +53
foreach (var item in inputMedia)
{
if (item == null) continue;

var mediaItem = _mediaService.GetById(Guid.Parse(item.MediaKey));
var mediaItem = _mediaService.GetById(Guid.Parse(item.MediaKey));

if (mediaItem == null) continue;
if (mediaItem == null) continue;

list.Add(mediaItem.GetValue("umbracoFile")?.ToString() ?? string.Empty);
list.Add(mediaItem.GetValue("umbracoFile")?.ToString() ?? string.Empty);
}
Copy link

Copilot AI Nov 18, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This foreach loop implicitly filters its target sequence - consider filtering the sequence explicitly using '.Where(...)'.

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants