extension Encodable {
func toDictionary() -> [String: Any]? {
do {
let encoder = JSONEncoder()
let data = try encoder.encode(self)
let dictionary = try JSONSerialization.jsonObject(with: data, options: .allowFragments) as? [String: Any]
return dictionary
} catch {
print("Error converting to dictionary:", error)
return nil
}
}
}