index.ts 804 B

1234567891011121314151617181920212223
  1. // Copyright (C) 2012-2022 Zammad Foundation, https://zammad-foundation.org/
  2. import mainInitializeForm, { getFormPlugins } from '@common/form'
  3. import type {
  4. FormFieldTypeImportModules,
  5. InitializeAppForm,
  6. } from '@common/types/form'
  7. import type { ImportGlobEagerOutput } from '@common/types/utils'
  8. import type { FormKitPlugin } from '@formkit/core'
  9. import { App } from 'vue'
  10. const pluginModules: ImportGlobEagerOutput<FormKitPlugin> =
  11. import.meta.globEager('./plugins/*.ts')
  12. const fieldModules: ImportGlobEagerOutput<FormFieldTypeImportModules> =
  13. import.meta.globEager('../components/form/field/**/*.ts')
  14. const initializeForm: InitializeAppForm = (app: App) => {
  15. const plugins = getFormPlugins(pluginModules)
  16. mainInitializeForm(app, fieldModules, plugins)
  17. }
  18. export default initializeForm