package com.gingersoft.gsa.cloud.table.di.module;

import com.gingersoft.gsa.cloud.common.core.discount.MemberCoupon;
import com.gingersoft.gsa.cloud.ui.adapter.TagViewAdapter;
import com.gingersoft.gsa.cloud.ui.bean.TagViewItem;
import com.jess.arms.di.scope.ActivityScope;
import com.jess.arms.di.scope.FragmentScope;

import dagger.Binds;
import dagger.Module;
import dagger.Provides;

import com.gingersoft.gsa.cloud.table.mvp.contract.CouponContract;
import com.gingersoft.gsa.cloud.table.mvp.model.CouponModel;

import java.util.ArrayList;
import java.util.List;

import javax.inject.Inject;


/**
 * ================================================
 * Description:
 * <p>
 * Created by MVPArmsTemplate on 04/02/2021 17:28
 * <a href="mailto:jess.yan.effort@gmail.com">Contact me</a>
 * <a href="https://github.com/JessYanCoding">Follow me</a>
 * <a href="https://github.com/JessYanCoding/MVPArms">Star me</a>
 * <a href="https://github.com/JessYanCoding/MVPArms/wiki">See me</a>
 * <a href="https://github.com/JessYanCoding/MVPArmsTemplate">模版请保持更新</a>
 * ================================================
 */
@Module
public abstract class CouponModule {

    @Binds
    abstract CouponContract.Model bindCouponModel(CouponModel model);


    @FragmentScope
    @Provides
    static List<TagViewItem> provideMemberCouponList(){
        return new ArrayList<>();
    }

    @FragmentScope
    @Provides
    static TagViewAdapter provideMemberCouponAdapter(List<TagViewItem> memberCouponList){
        return new TagViewAdapter(memberCouponList);
    }

}