import { App } from 'vue'

import FeedCard from '@/components/feed-card/feed-card.vue'
import FeedVideoCard from '@/components/feed-video-card/feed-video-card.vue'
import MatchCard from '@/components/match-card/match-card.vue'
import WBanner from '@/components/widgets/banner/banner.vue'
import WCustomerService from '@/components/widgets/customer-service/customer-service.vue'
import WMiddleBanner from '@/components/widgets/middle-banner/middle-banner.vue'
import WMyService from '@/components/widgets/my-service/my-service.vue'
import WNav from '@/components/widgets/nav/nav.vue'
import WSearch from '@/components/widgets/search/search.vue'
import WUserBanner from '@/components/widgets/user-banner/user-banner.vue'
import WUserInfo from '@/components/widgets/user-info/user-info.vue'
import PageMeta from '@dcloudio/uni-components/lib/page-meta/page-meta.vue'
import NavigationBar from '@dcloudio/uni-components/lib/navigation-bar/navigation-bar.vue'
import UButton from '@/uni_modules/vk-uview-ui/components/u-button/u-button.vue'
import UCheckbox from '@/uni_modules/vk-uview-ui/components/u-checkbox/u-checkbox.vue'
import UForm from '@/uni_modules/vk-uview-ui/components/u-form/u-form.vue'
import UFormItem from '@/uni_modules/vk-uview-ui/components/u-form-item/u-form-item.vue'
import UIcon from '@/uni_modules/vk-uview-ui/components/u-icon/u-icon.vue'
import UImage from '@/uni_modules/vk-uview-ui/components/u-image/u-image.vue'
import UInput from '@/uni_modules/vk-uview-ui/components/u-input/u-input.vue'
import ULoading from '@/uni_modules/vk-uview-ui/components/u-loading/u-loading.vue'
import UMask from '@/uni_modules/vk-uview-ui/components/u-mask/u-mask.vue'
import UParse from '@/uni_modules/vk-uview-ui/components/u-parse/u-parse.vue'
import UPicker from '@/uni_modules/vk-uview-ui/components/u-picker/u-picker.vue'
import UPopup from '@/uni_modules/vk-uview-ui/components/u-popup/u-popup.vue'
import UVerificationCode from '@/uni_modules/vk-uview-ui/components/u-verification-code/u-verification-code.vue'
import ZPaging from 'z-paging/components/z-paging/z-paging.vue'

export default (app: App) => {
    app.component('feed-card', FeedCard)
    app.component('feed-video-card', FeedVideoCard)
    app.component('match-card', MatchCard)
    app.component('w-banner', WBanner)
    app.component('w-customer-service', WCustomerService)
    app.component('w-middle-banner', WMiddleBanner)
    app.component('w-my-service', WMyService)
    app.component('w-nav', WNav)
    app.component('w-search', WSearch)
    app.component('w-user-banner', WUserBanner)
    app.component('w-user-info', WUserInfo)

    app.component('page-meta', PageMeta)
    app.component('navigation-bar', NavigationBar)
    app.component('u-button', UButton)
    app.component('u-checkbox', UCheckbox)
    app.component('u-form', UForm)
    app.component('u-form-item', UFormItem)
    app.component('u-icon', UIcon)
    app.component('u-image', UImage)
    app.component('u-input', UInput)
    app.component('u-loading', ULoading)
    app.component('u-loading-icon', ULoading)
    app.component('u-mask', UMask)
    app.component('u-parse', UParse)
    app.component('u-picker', UPicker)
    app.component('u-popup', UPopup)
    app.component('u-verification-code', UVerificationCode)
    app.component('z-paging', ZPaging)
}
