// Auto-generated barrel — re-exports individual component files for tree-shaking

import _ClAnchorNav from '../utils/Element/ClAnchorNav.js'
export { default as ClAnchorNav } from '../utils/Element/ClAnchorNav.js'
import _ClBadge from '../utils/Element/ClBadge.js'
export { default as ClBadge } from '../utils/Element/ClBadge.js'
import _ClButton from '../utils/Element/ClButton.js'
export { default as ClButton } from '../utils/Element/ClButton.js'
import _ClCheckbox from '../utils/Element/ClCheckbox.js'
export { default as ClCheckbox } from '../utils/Element/ClCheckbox.js'
import _ClCheckboxOne from '../utils/Element/ClCheckboxOne.js'
export { default as ClCheckboxOne } from '../utils/Element/ClCheckboxOne.js'
import _ClClipboard from '../utils/Element/ClClipboard.js'
export { default as ClClipboard } from '../utils/Element/ClClipboard.js'
import _ClCountup from '../utils/Element/ClCountup.js'
export { default as ClCountup } from '../utils/Element/ClCountup.js'
import _ClCropper from '../utils/Element/ClCropper.js'
export { default as ClCropper } from '../utils/Element/ClCropper.js'
import _ClDarg from '../utils/Element/ClDarg.js'
export { default as ClDarg } from '../utils/Element/ClDarg.js'
import _ClEllipsis from '../utils/Element/ClEllipsis.js'
export { default as ClEllipsis } from '../utils/Element/ClEllipsis.js'
import _ClForm from '../utils/Element/ClForm.js'
export { default as ClForm } from '../utils/Element/ClForm.js'
import _ClFormGroup from '../utils/Element/ClFormGroup.js'
export { default as ClFormGroup } from '../utils/Element/ClFormGroup.js'
import _ClFormValidate from '../utils/Element/ClFormValidate.js'
export { default as ClFormValidate } from '../utils/Element/ClFormValidate.js'
import _ClIconFont from '../utils/Element/ClIconFont.js'
export { default as ClIconFont } from '../utils/Element/ClIconFont.js'
import _ClImage from '../utils/Element/ClImage.js'
export { default as ClImage } from '../utils/Element/ClImage.js'
import _ClInput from '../utils/Element/ClInput.js'
export { default as ClInput } from '../utils/Element/ClInput.js'
import _ClInputCaptcha from '../utils/Element/ClInputCaptcha.js'
export { default as ClInputCaptcha } from '../utils/Element/ClInputCaptcha.js'
import _ClInputNumber from '../utils/Element/ClInputNumber.js'
export { default as ClInputNumber } from '../utils/Element/ClInputNumber.js'
import _ClInputSearch from '../utils/Element/ClInputSearch.js'
export { default as ClInputSearch } from '../utils/Element/ClInputSearch.js'
import _ClInputTextarea from '../utils/Element/ClInputTextarea.js'
export { default as ClInputTextarea } from '../utils/Element/ClInputTextarea.js'
import _ClInputnumberButton from '../utils/Element/ClInputnumberButton.js'
export { default as ClInputnumberButton } from '../utils/Element/ClInputnumberButton.js'
import _ClLink from '../utils/Element/ClLink.js'
export { default as ClLink } from '../utils/Element/ClLink.js'
import _ClLoad from '../utils/Element/ClLoad.js'
export { default as ClLoad } from '../utils/Element/ClLoad.js'
import _ClLoadFullCenter from '../utils/Element/ClLoadFullCenter.js'
export { default as ClLoadFullCenter } from '../utils/Element/ClLoadFullCenter.js'
import _ClLoadIng from '../utils/Element/ClLoadIng.js'
export { default as ClLoadIng } from '../utils/Element/ClLoadIng.js'
import _ClLoadScreen from '../utils/Element/ClLoadScreen.js'
export { default as ClLoadScreen } from '../utils/Element/ClLoadScreen.js'
import _ClLoadWarp from '../utils/Element/ClLoadWarp.js'
export { default as ClLoadWarp } from '../utils/Element/ClLoadWarp.js'
import _ClModal from '../utils/Element/ClModal.js'
export { default as ClModal } from '../utils/Element/ClModal.js'
import _ClProgress from '../utils/Element/ClProgress.js'
export { default as ClProgress } from '../utils/Element/ClProgress.js'
import _ClRadio from '../utils/Element/ClRadio.js'
export { default as ClRadio } from '../utils/Element/ClRadio.js'
import _ClRadioOne from '../utils/Element/ClRadioOne.js'
export { default as ClRadioOne } from '../utils/Element/ClRadioOne.js'
import _ClSlider from '../utils/Element/ClSlider.js'
export { default as ClSlider } from '../utils/Element/ClSlider.js'
import _ClSwitchery from '../utils/Element/ClSwitchery.js'
export { default as ClSwitchery } from '../utils/Element/ClSwitchery.js'
import _ClTags from '../utils/Element/ClTags.js'
export { default as ClTags } from '../utils/Element/ClTags.js'
import _ClTransitionSlideupdown from '../utils/Element/ClTransitionSlideupdown.js'
export { default as ClTransitionSlideupdown } from '../utils/Element/ClTransitionSlideupdown.js'
import _ClWaterfall from '../utils/Element/ClWaterfall.js'
export { default as ClWaterfall } from '../utils/Element/ClWaterfall.js'
import _ClWaterfallImage from '../utils/Element/ClWaterfallImage.js'
export { default as ClWaterfallImage } from '../utils/Element/ClWaterfallImage.js'
import _ClBreadcrumb from '../utils/Web/ClBreadcrumb.js'
export { default as ClBreadcrumb } from '../utils/Web/ClBreadcrumb.js'
import _ClCalendar from '../utils/Web/ClCalendar.js'
export { default as ClCalendar } from '../utils/Web/ClCalendar.js'
import _ClCard from '../utils/Web/ClCard.js'
export { default as ClCard } from '../utils/Web/ClCard.js'
import _ClCardLegend from '../utils/Web/ClCardLegend.js'
export { default as ClCardLegend } from '../utils/Web/ClCardLegend.js'
import _ClCollapse from '../utils/Web/ClCollapse.js'
export { default as ClCollapse } from '../utils/Web/ClCollapse.js'
import _ClColorpicker from '../utils/Web/ClColorpicker.js'
export { default as ClColorpicker } from '../utils/Web/ClColorpicker.js'
import _ClCropperPreview from '../utils/Web/ClCropperPreview.js'
export { default as ClCropperPreview } from '../utils/Web/ClCropperPreview.js'
import _ClDatetime from '../utils/Web/ClDatetime.js'
export { default as ClDatetime } from '../utils/Web/ClDatetime.js'
import _ClDropdownmenu from '../utils/Web/ClDropdownmenu.js'
export { default as ClDropdownmenu } from '../utils/Web/ClDropdownmenu.js'
import _ClDropdownmenuItem from '../utils/Web/ClDropdownmenuItem.js'
export { default as ClDropdownmenuItem } from '../utils/Web/ClDropdownmenuItem.js'
import _ClDropdownpopup from '../utils/Web/ClDropdownpopup.js'
export { default as ClDropdownpopup } from '../utils/Web/ClDropdownpopup.js'
import _ClEcharts from '../utils/Web/ClEcharts.js'
export { default as ClEcharts } from '../utils/Web/ClEcharts.js'
import _ClFileupload from '../utils/Web/ClFileupload.js'
export { default as ClFileupload } from '../utils/Web/ClFileupload.js'
import _ClInputTag from '../utils/Web/ClInputTag.js'
export { default as ClInputTag } from '../utils/Web/ClInputTag.js'
import _ClPaginate from '../utils/Web/ClPaginate.js'
export { default as ClPaginate } from '../utils/Web/ClPaginate.js'
import _ClPortlet from '../utils/Web/ClPortlet.js'
export { default as ClPortlet } from '../utils/Web/ClPortlet.js'
import _ClPreviewexample from '../utils/Web/ClPreviewexample.js'
export { default as ClPreviewexample } from '../utils/Web/ClPreviewexample.js'
import _ClScrollXFence from '../utils/Web/ClScrollXFence.js'
export { default as ClScrollXFence } from '../utils/Web/ClScrollXFence.js'
import _ClSelect from '../utils/Web/ClSelect.js'
export { default as ClSelect } from '../utils/Web/ClSelect.js'
import _ClSelectCascade from '../utils/Web/ClSelectCascade.js'
export { default as ClSelectCascade } from '../utils/Web/ClSelectCascade.js'
import _ClSelectTag from '../utils/Web/ClSelectTag.js'
export { default as ClSelectTag } from '../utils/Web/ClSelectTag.js'
import _ClSelectTree from '../utils/Web/ClSelectTree.js'
export { default as ClSelectTree } from '../utils/Web/ClSelectTree.js'
import _ClSelectmove from '../utils/Web/ClSelectmove.js'
export { default as ClSelectmove } from '../utils/Web/ClSelectmove.js'
import _ClSidemenu from '../utils/Web/ClSidemenu.js'
export { default as ClSidemenu } from '../utils/Web/ClSidemenu.js'
import _ClTable from '../utils/Web/ClTable.js'
export { default as ClTable } from '../utils/Web/ClTable.js'
import _ClTabs from '../utils/Web/ClTabs.js'
export { default as ClTabs } from '../utils/Web/ClTabs.js'
import _ClTree from '../utils/Web/ClTree.js'
export { default as ClTree } from '../utils/Web/ClTree.js'
import _ClWeekhour from '../utils/Web/ClWeekhour.js'
export { default as ClWeekhour } from '../utils/Web/ClWeekhour.js'
import _ClXeditable from '../utils/Web/ClXeditable.js'
export { default as ClXeditable } from '../utils/Web/ClXeditable.js'

export * as ClHighlight from '../utils/Web/__directive__/Highlight.js'
export * as ClTooltip from '../utils/Web/__directive__/Tooltip.js'
export * as ClWaves from '../utils/Web/__directive__/Waves.js'

export { default as ClProClipboard } from '../utils/Element/__provide__/Clipboard.js'
export { default as ClLanguagePack } from '../utils/Element/__provide__/languagePack.js'
export { default as ClProLoadScreen } from '../utils/Element/__provide__/LoadScreen.js'
export { default as ClAlert } from '../utils/Web/__provide__/Alert.js'
export { default as ClNotify } from '../utils/Web/__provide__/Notify.js'
export { default as ClPreview } from '../utils/Web/__provide__/Preview.js'

// Global install function
export function install(app, options = {}) {
  const components = [_ClAnchorNav, _ClBadge, _ClButton, _ClCheckbox, _ClCheckboxOne, _ClClipboard, _ClCountup, _ClCropper, _ClDarg, _ClEllipsis, _ClForm, _ClFormGroup, _ClFormValidate, _ClIconFont, _ClImage, _ClInput, _ClInputCaptcha, _ClInputNumber, _ClInputSearch, _ClInputTextarea, _ClInputnumberButton, _ClLink, _ClLoad, _ClLoadFullCenter, _ClLoadIng, _ClLoadScreen, _ClLoadWarp, _ClModal, _ClProgress, _ClRadio, _ClRadioOne, _ClSlider, _ClSwitchery, _ClTags, _ClTransitionSlideupdown, _ClWaterfall, _ClWaterfallImage, _ClBreadcrumb, _ClCalendar, _ClCard, _ClCardLegend, _ClCollapse, _ClColorpicker, _ClCropperPreview, _ClDatetime, _ClDropdownmenu, _ClDropdownmenuItem, _ClDropdownpopup, _ClEcharts, _ClFileupload, _ClInputTag, _ClPaginate, _ClPortlet, _ClPreviewexample, _ClScrollXFence, _ClSelect, _ClSelectCascade, _ClSelectTag, _ClSelectTree, _ClSelectmove, _ClSidemenu, _ClTable, _ClTabs, _ClTree, _ClWeekhour, _ClXeditable]
  components.forEach(c => app.component(c.name || 'ClUnknown', c))

  app.directive(ClHighlight.name, ClHighlight.directive((options.highlight) || {}))
  app.directive(ClTooltip.name, ClTooltip.directive((options.tooltip) || {}))
  app.directive(ClWaves.name, ClWaves.directive((options.waves) || {}))

  app.provide('$ClGlobals', {
    clipboard: ClProClipboard((options.clipboard) || {}),
    languagePack: ClLanguagePack((options.languagePack) || {}),
    loadScreen: ClProLoadScreen((options.loadScreen) || {}),
    alert: ClAlert((options.alert) || {}),
    notify: ClNotify((options.notify) || {}),
    preview: ClPreview((options.preview) || {}),
  })
}
