fix: support for invalid expression #58
Merged
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.
This fixes the error that occurs when there is an invalid regular expression input from the GTM template. If it's invalid regular expression return ignore it and throw an error.
Also thought about other ways, but feel it will make things more complicated:
Checking the input in the template instead of the wrapper
a. The input is a string, and since Regex is not natively supported in the GTM template, we are unable to validate whether the input is a valid regular expression. The supported GTM template’s field validation only checks if an input matches a regular expression, but it does not validate the correctness of the regular expression itself.
Using an existing regular expression type in GTM
a. GTM has introduced a new variable, the regex table variable, which provides an output when an input matches a pattern. However, for referrerExclude, I don’t think this simplifies the implementation. Reference.
Handling this on the SDK side
a. The current SDK design allows either a string or a regular expression as input for the excludeReferrer. Unless we provide the input and the input type, we cannot check on SDK side.