Skip to content

feat(MSDK-4088): Support PL-5714 new COP restriction fields across Dart, Android and iOS#176

Open
uc-brunosilva wants to merge 1 commit into
masterfrom
bugfix/MSDK-4088-pur-vendor-consents-not-set-on-save
Open

feat(MSDK-4088): Support PL-5714 new COP restriction fields across Dart, Android and iOS#176
uc-brunosilva wants to merge 1 commit into
masterfrom
bugfix/MSDK-4088-pur-vendor-consents-not-set-on-save

Conversation

@uc-brunosilva

Copy link
Copy Markdown
Contributor

Summary

Adds support for the new PL-5714 JSON schema fields across all bridge layers.

New class: ConsentOrPayRestriction{id: int, value: 'FLEXIBLE'|'MANDATORY'} with isFlexible() helper

Updated: TCF2ChangedPurposes — new consentOrPay?: List<ConsentOrPayRestriction> field
Updated: TCF2Settings — new specialFeaturesConsentOrPay?: List<ConsentOrPayRestriction> field

Both Android and iOS bridges serialize the new fields. Dart serializer deserializes both. Old publisherRestrictions and specialFeatures maps are kept for backwards compatibility.

Part of the PUR model fix tracked in MSDK-4088. Native SDK changes are in mobile-sdk PR #2401.

Test plan

  • Dart: ConsentOrPayRestriction exported correctly, new fields present on TCF2Settings and TCF2ChangedPurposes
  • Android: CMPDataSerializer serializes specialFeaturesConsentOrPay and changedPurposes.consentOrPay
  • iOS: CMPDataSerializer serializes both new fields
  • dart analyze passes — no issues found

🤖 Generated with Claude Code

…rt, Android and iOS

Adds ConsentOrPayRestriction class and two new PL-5714 fields:
- TCF2ChangedPurposes.consentOrPay — List<ConsentOrPayRestriction>?
- TCF2Settings.specialFeaturesConsentOrPay — List<ConsentOrPayRestriction>?

Both Android and iOS bridges serialize the new fields. Dart serializer
deserializes both. Old publisherRestrictions/specialFeatures kept for
backwards compatibility.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
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.

1 participant