In this tutorial, we will create list with UISearchBar. We will use UIViewRepresentable protocol.
Before the start, I always resume preview update :)
Firstly, I want to create new struct because we will use string array.
Identifiable protocol is most important part. List component want to conformed array with this protocol. We can set id with UUID(Universal Unique Identifier).
We can add name variable for Animal struct.
I prepared array. We can copy from text editor.
Now, we can create new view for SearchBar. 
Firstly, we can import SwiftUI. Later, we can create a struct that implement to UIViewRepresentable.
We need to implement two method. Firstly, we need to implement makeUIView method that creation of view. We can create a UISearchBar and return to this type.
Secondly, we need to implement updateUIView method. This method triggered when ui updated. We can leave it blank.
Now, we came to complex part :). We need to create a class for coordinator because of UISearchBarDelegate and class creation.
Later, we can add Binding object because this variable changed when UISearchBar text changed. This can be private.
We need to subscribe binding variable, so we can transfer with init method.
We can use underscore for binding object in init method.
Now, we can implement delegate method for text did change.
Later, we need to add makeCoordinator method to CustomSearchBar struct.
By the way, we need to define Binding string for subscribe from used from this view.
Lastly, we can set delegate with coordinator via context.
We can add SearchBar and List with Vertical Stack.
By the way, we need to define state variable for subscribe to binding variable.
We need to filter when text changed. If text is empty, we should return all array, otherwise we can check with contains method.
We could check before filter but it's working with more resource :).
It's nice. Thanks for watching, don't forget to subscribe channel. :)
