[FDL] Refactoring and fixing url validation
Refactored the existing code to use Regex to validate FDL URL formats.
Added checks to make sure the 'link' query param is having an http/https prefix input.
== This is going to be breaking the existing SDK's unintended behavior to support links with non http/https content. The existing SDK was constructing the Dynamic link even though the backend response to resolve the link is not successful.
Added support for URL(s) with Query string starting with '?' alone. Previously it was supporting '/?' formats only. This fixes 177469304: Firebase dynamic links with custom domain will only work if the custom domain has a trailing '/' #7087
Added more test cases to be in sync with FDL backend validation.
Removed invalid test inputs and corrected few test cases to make the input in proper format.