@Observable class ApplicationData {
   var listImages: [ImageData]
   var filteredImages: [ImageData]

   static let shared: ApplicationData = ApplicationData()
   private init() {
      listImages = []
      filteredImages = []
      
      let list = ["picture1", "picture2", "picture3", "picture4", "picture5", "picture6", "picture7", "picture8", "picture9", "picture10"]
      for name in list {
         listImages.append(ImageData(fileName: name, image: UIImage(named: name), categories: []))
      }
      filteredImages = listImages
   }
   func filterValues(search: String) {
      if search.isEmpty {
         filteredImages = listImages
      } else {
         let list = listImages.filter { image in
            image.categories.contains { $0.contains(search.lowercased()) }
         }
         filteredImages = list
      }
   }
}