Skip to content

Instantly share code, notes, and snippets.

View pranay1494's full-sized avatar
🤠

Pranay Bansal pranay1494

🤠
View GitHub Profile
productFlavors {
appin {
manifestPlaceholders = [hostName: "www.xyz.in", deepLinkPlaceholder: generateData("www.xyz.in", listOfDeepLinkUrls, locales, ["www.xyz.in"])]
}
appza {
manifestPlaceholders = [hostName: "www.xyz.co.za", deepLinkPlaceholder: generateData("www.xyz.co.za", listOfDeepLinkUrls, locales, ["www.xyz.co.za"])]
}
}
ext {
listOfDeepLinkUrls = new ArrayList<String>()
listOfDeepLinkUrls.add("/home")
locales = ["en", "ar","es","hi-IN"]
}
ext.generateData = { host, listOfDeepLinkUrls, locales,listOfDomains ->
String links = ""
listOfDeepLinkUrls.each{ item ->
override fun onSectionClicked(entity: Sections, absolutePosition: Int) {
if (viewModel.orignalSectionList.size <= 1) return
val mainAdapter = adapterWrapper.getMainAdapter()
adapterWrapper.swapAdapter()
viewModel.sectionList.forEachIndexed { index, section ->
val nestedSelectHeaderAdapter = NestedSelectHeaderAdapter(section, this@NestedFilterViewFragment)
mainAdapter.addAdapter(nestedSelectHeaderAdapter)
if (entity.sectionIndex == index && section.isSelected) {
addAdapterToMergeAdapter(section, index + 1)
}
class NestedFilterViewAdapterWrapper {
private val mainAdapter = ConcatAdapter()
fun getMainAdapter() = mainAdapter
fun refreshAdapters() = getMainAdapter().adapters.map { it.notifyDataSetChanged() }
fun swapAdapter() = getMainAdapter().removeAllAdapters()
package com.example.expandablerecyclerview.data.nestedselect
import androidx.databinding.Observable
import androidx.databinding.ObservableField
data class SelectableEntity(var id: String = "", var itemName: String = "", var isSelected: Boolean = false) {
val selectableField = ObservableField(isSelected)
package com.example.expandablerecyclerview.data.nestedselect
import androidx.databinding.Observable
import androidx.databinding.ObservableField
import kotlin.collections.ArrayList
data class Sections(var id: String?,
var sectionName: String,
var isMultiSelectEnabled: Boolean = false,
var items: List<SelectableEntity> = ArrayList(),
open class UserViewModel @Inject constructor(private val repository: UserRepository, @Named("default") private val defaultDispatcher: CoroutineDispatcher) : BaseViewModel() {
private val userData = MutableLiveData<DisplayData>()
fun getData(): LiveData<DisplayData> = userData
fun fetchUserData(username: String) = viewModelScope.launch(defaultDispatcher) {
viewStatus.postValue(ViewStatus.LOADING)
try {
val user = repository.fetchRepository("pranay1494")
userData.postValue(getUserDisplayData(user))
package com.example.coroutinesdemo.base
import kotlinx.coroutines.CoroutineDispatcher
import kotlinx.coroutines.Dispatchers
data class CoroutineDispatcherProvider constructor(
val main: CoroutineDispatcher = Dispatchers.Main,
val default: CoroutineDispatcher = Dispatchers.Default,
val io: CoroutineDispatcher = Dispatchers.IO
)
@Before
fun setUp(){
MockitoAnnotations.initMocks(this)
viewModel = UserViewModel(repository,dispatcherRule.testDispatcher)
viewModel.getData().observeForever(observer)
}