import { initAllAutocomplete as initAllAutocompleteImp } from './autocomplete.js'
import { initDebounceClick as initDebounceClickImp } from './debounce-click.js'
import { initFileUpload as initFileUploadImp } from './file-upload.js'
import { initAllGovuk as initAllGovukImp } from './govuk.js'
import { initPreviewCloseLink as initPreviewCloseLinkImp } from './preview-close-link.js'
export { initMaps } from './map.js'
export * as map from './map.js'
export * as geospatialMap from './geospatial-map.js'

export const initAllGovuk = initAllGovukImp
export const initAllAutocomplete = initAllAutocompleteImp
export const initDebounceClick = initDebounceClickImp
export const initFileUpload = initFileUploadImp
export const initPreviewCloseLink = initPreviewCloseLinkImp

/**
 * Initialise all clientside components (but not maps as this will be an opt-in for now given the additional UMD assets that are required)
 */
export function initAll() {
  initAllGovuk()
  initAllAutocomplete()
  initDebounceClick()
  initFileUpload()
  initPreviewCloseLink()
}
