feat: dependsOn for service dependencies #557
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
This PR adds a
dependsOnfeature to Klaro Cookie Consent Manager, allowing services to declare dependencies on other services. When a service is enabled, all its dependencies are automatically enabled. When a dependency is disabled, all dependent services are automatically disabled.Changes
Core Implementation
File:
src/consent-manager.jsBug Fix
File:
src/translations/hu.ymlUsage Example
Behavior
Forward Dependencies
googleAnalyticsautomatically enablesgoogleTagManagerReverse Dependencies
googleTagManagerautomatically disablesgoogleAnalyticsand any other services that depend on itMultiple Dependencies
dependsOnproperty accepts either a string (single dependency) or an array of strings (multiple dependencies)Testing
The feature has been tested with:
Backward Compatibility
This feature is fully backward compatible. Services without the
dependsOnproperty continue to work exactly as before.Files Changed
src/consent-manager.js- Core implementationsrc/translations/hu.yml- YAML syntax fix