Filter and Collections - mayurparmar2/AlarmDemo GitHub Wiki

Filter By duplicate

CalDAVHelper.kt
   @JvmStatic
        fun filterListUnique(events: List<Event>): List<Event> {

            val eventIds = events.groupBy { it.eventId }
            eventIds.forEach {
                Log.e(TAG, "filterListUnique 111: " + it.value.size)
            }
            val filteredEvents = eventIds.flatMap { entry ->
                if (entry.value.size > 1) {
                    entry.value.forEach {
                        Log.e(TAG, "filterListUnique 222: " + it)
                    }
                    var editableEvent = entry.value.filter { it.isEditable }
                    if (editableEvent.isNotEmpty()) {
                        editableEvent
                    } else {
                        listOf(entry.value.first())
                    }
                } else {
                    entry.value
                }
            }
            return filteredEvents.distinctBy { it.eventId }
        }
⚠️ **GitHub.com Fallback** ⚠️