{"version":3,"file":"formioangular-colfuturo.mjs","sources":["../../../projects/angular-formio/src/formio.config.ts","../../../projects/angular-formio/src/formio.common.ts","../../../projects/angular-formio/src/formio.service.ts","../../../projects/angular-formio/src/formio-promise.service.ts","../../../projects/angular-formio/src/formio.utils.ts","../../../projects/angular-formio/src/components/alerts/formio.alerts.ts","../../../projects/angular-formio/src/types/alerts-position.ts","../../../projects/angular-formio/src/custom-tags.service.ts","../../../projects/angular-formio/src/FormioBaseComponent.ts","../../../projects/angular-formio/src/components/loader/formio.loader.component.ts","../../../projects/angular-formio/src/components/loader/formio.loader.component.html","../../../projects/angular-formio/src/components/alerts/parse-html-content.pipe.ts","../../../projects/angular-formio/src/components/alerts/formio.alerts.component.ts","../../../projects/angular-formio/src/components/alerts/formio.alerts.component.html","../../../projects/angular-formio/src/components/formio/formio.component.ts","../../../projects/angular-formio/src/components/formio/formio.component.html","../../../projects/angular-formio/src/components/formbuilder/formbuilder.component.ts","../../../projects/angular-formio/src/components/formbuilder/formbuilder.component.html","../../../projects/angular-formio/src/components/formioreport/formioreport.component.ts","../../../projects/angular-formio/src/components/formioreport/formioreport.component.html","../../../projects/angular-formio/src/formio.module.ts","../../../projects/angular-formio/src/core.ts","../../../projects/angular-formio/src/formioangular-colfuturo.ts"],"sourcesContent":["import { Inject, Injectable, InjectionToken } from \"@angular/core\";\r\nexport const FORMIO_CONFIG = new InjectionToken(\"formio-config\");\r\nimport { Formio } from \"formiojs-colfuturo\";\r\n\r\n@Injectable()\r\nexport class FormioAppConfig {\r\n  [x: string]: any;\r\n  appUrl = \"\";\r\n  apiUrl = \"\";\r\n  icons?: string;\r\n  formOnly?: boolean;\r\n  formio?: Formio;\r\n  constructor(\r\n    @Inject(FORMIO_CONFIG)\r\n    config: {\r\n      apiUrl?: string;\r\n      baseUrl?: string;\r\n      appUrl?: string;\r\n      projectUrl?: string;\r\n    } = {}\r\n  ) {\r\n    this.apiUrl = config.apiUrl || config.baseUrl;\r\n    this.appUrl = config.appUrl || config.projectUrl;\r\n    if (this.apiUrl) {\r\n      Formio.setBaseUrl(this.apiUrl);\r\n      Formio.setProjectUrl(this.appUrl);\r\n      this.formio = new Formio(this.appUrl);\r\n    }\r\n  }\r\n}\r\n","import { ExtendedComponentSchema, ValidateOptions } from '@formio/deprecated-types';\r\nimport { AlertsPosition } from './types/alerts-position';\r\n\r\nexport interface ComponentOptions<T = any, V extends ValidateOptions = ValidateOptions> extends ExtendedComponentSchema<T> {\r\n  validate?: V;\r\n}\r\n\r\nexport interface FormioRefreshValue {\r\n  property?: string;\r\n  value?: object;\r\n  form?: object;\r\n  submission?: object;\r\n}\r\n\r\nexport interface AccessSetting {\r\n  type: string;\r\n  roles: string[];\r\n}\r\n\r\nexport interface FormioReport {\r\n  form: string,\r\n  roles: object,\r\n  access: object,\r\n  metadata: object,\r\n  data: object,\r\n  project: string,\r\n}\r\n\r\nexport interface FormioForm {\r\n  title?: string;\r\n  display?: string;\r\n  name?: string;\r\n  path?: string;\r\n  type?: string;\r\n  project?: string;\r\n  template?: string;\r\n  components?: ExtendedComponentSchema[];\r\n  tags?: string[];\r\n  access?: AccessSetting[];\r\n  submissionAccess?: AccessSetting[];\r\n  report?: FormioReport\r\n}\r\n\r\nexport interface ComponentInstance {\r\n  component: ExtendedComponentSchema;\r\n  id: string;\r\n  type: string;\r\n  asString?(value: any): string;\r\n  getView(value: any): string;\r\n}\r\n\r\nexport interface AlertsOptions {\r\n  submitMessage: string;\r\n}\r\n\r\nexport interface ErrorsOptions {\r\n  message: string;\r\n}\r\n\r\nexport class FormioError {\r\n  constructor(\r\n    public message: string,\r\n    public component: ExtendedComponentSchema,\r\n    public silent?: boolean,\r\n  ) {}\r\n}\r\n\r\nexport type FormioSubmissionCallback = (\r\n  error: FormioError,\r\n  submission: object\r\n) => void;\r\nexport type FormioBeforeSubmit = (\r\n  submission: object,\r\n  callback: FormioSubmissionCallback\r\n) => void;\r\n\r\nexport interface FormioHookOptions {\r\n  beforeSubmit: FormioBeforeSubmit;\r\n}\r\n\r\nexport interface FormioOptions {\r\n  errors?: ErrorsOptions;\r\n  alerts?: AlertsOptions;\r\n  alertsPosition?: AlertsPosition;\r\n  disableAlerts?: boolean;\r\n  i18n?: object;\r\n  fileService?: object;\r\n  hooks?: FormioHookOptions;\r\n  sanitizeConfig?: any;\r\n}\r\n","import { Observable, Observer } from \"rxjs\";\r\nimport { FormioForm } from \"./formio.common\";\r\nimport { FormioCore as Formio } from \"formiojs-colfuturo\";\r\n\r\nexport class FormioService {\r\n  public formio: any;\r\n  constructor(public url: string, public options?: object) {\r\n    this.formio = new Formio(this.url, this.options);\r\n  }\r\n  requestWrapper(fn: any) {\r\n    let record: any;\r\n    let called = false;\r\n    return Observable.create((observer: Observer<any>) => {\r\n      try {\r\n        if (!called) {\r\n          called = true;\r\n          fn()\r\n            .then((_record: any) => {\r\n              record = _record;\r\n              observer.next(record);\r\n              observer.complete();\r\n            })\r\n            .catch((err: any) => observer.error(err));\r\n        } else if (record) {\r\n          observer.next(record);\r\n          observer.complete();\r\n        }\r\n      } catch (err) {\r\n        observer.error(err);\r\n      }\r\n    });\r\n  }\r\n  saveForm(form: FormioForm, options?: any): Observable<FormioForm> {\r\n    return this.requestWrapper(() => this.formio.saveForm(form, options));\r\n  }\r\n  loadForm(query?: any, options?: any): Observable<FormioForm> {\r\n    return this.requestWrapper(() => this.formio.loadForm(query, options));\r\n  }\r\n  loadForms(query: any, options?: any): Observable<FormioForm> {\r\n    return this.requestWrapper(() => this.formio.loadForms(query, options));\r\n  }\r\n  loadSubmission(query?: any, options?: any): Observable<{}> {\r\n    return this.requestWrapper(() =>\r\n      this.formio.loadSubmission(query, options)\r\n    );\r\n  }\r\n  userPermissions(user: any, form: any, submission: any): Observable<{}> {\r\n    return this.requestWrapper(() =>\r\n      this.formio.userPermissions(user, form, submission)\r\n    );\r\n  }\r\n  deleteSubmission(data?: any, options?: any): Observable<{}> {\r\n    return this.requestWrapper(() =>\r\n      this.formio.deleteSubmission(data, options)\r\n    );\r\n  }\r\n  saveSubmission(submission: {}, options?: any): Observable<{}> {\r\n    return this.requestWrapper(() =>\r\n      this.formio.saveSubmission(submission, options)\r\n    );\r\n  }\r\n  loadSubmissions(query?: any, options?: any): Observable<{}> {\r\n    return this.requestWrapper(() =>\r\n      this.formio.loadSubmissions(query, options)\r\n    );\r\n  }\r\n}\r\n","import { from } from 'rxjs';\r\nimport { FormioService } from './formio.service';\r\nimport { FormioForm } from './formio.common';\r\n\r\nexport class FormioPromiseService {\r\n  private formioService: FormioService;\r\n\r\n  constructor(public url: string, public options?: object) {\r\n    this.formioService = new FormioService(url, options);\r\n  }\r\n\r\n  saveForm(form: FormioForm, options?: any): Promise<any> {\r\n    return this.formioService.saveForm(form, options).toPromise();\r\n  }\r\n  loadForm(query?: any, options?: any): Promise<any> {\r\n    return this.formioService.loadForm(query, options).toPromise();\r\n  }\r\n  loadSubmission(query?: any, options?: any): Promise<any> {\r\n    return this.formioService.loadSubmission(query, options).toPromise();\r\n  }\r\n  userPermissions(user: any, form: any, submission: any): Promise<any> {\r\n    return this.formioService.userPermissions(user, form, submission).toPromise();\r\n  }\r\n  deleteSubmission(data?: any, options?: any): Promise<any> {\r\n    return this.formioService.deleteSubmission(data, options).toPromise();\r\n  }\r\n  loadForms(query: any, options?: any): Promise<any> {\r\n    return this.formioService.loadForms(query, options).toPromise();\r\n  }\r\n  saveSubmission(submission: {}, options?: any): Promise<any> {\r\n    return this.formioService.saveSubmission(submission, options).toPromise();\r\n  }\r\n  loadSubmissions(query?: any, options?: any): Promise<any> {\r\n    return this.formioService.loadSubmissions(query, options).toPromise();\r\n  }\r\n}\r\n","import { RouterModule } from '@angular/router';\r\nimport { each } from 'lodash';\r\n\r\nexport function extendRouter(Class: any, config: any, ClassRoutes: any) {\r\n  each(Class.decorators, decorator => {\r\n    each(decorator.args, arg => {\r\n      if (arg.declarations) {\r\n        each(config, component => arg.declarations.push(component));\r\n      }\r\n      if (arg.imports) {\r\n        each(arg.imports, (_import, index) => {\r\n          if (\r\n            (_import.ngModule && (_import.ngModule.name === 'RouterModule')) ||\r\n            (_import.ngModule && (_import.ngModule.name === '_RouterModule')) ||\r\n            (_import.name === 'RouterModule') ||\r\n            (_import.name === '_RouterModule')\r\n          ) {\r\n            arg.imports[index] = RouterModule.forChild(ClassRoutes(config));\r\n          }\r\n        });\r\n      }\r\n    });\r\n  });\r\n  return Class;\r\n}\r\n","export interface FormioAlert {\r\n  type: string;\r\n  message: string;\r\n  component?: any;\r\n}\r\n\r\nexport class FormioAlerts {\r\n  public alerts: FormioAlert[] = [];\r\n\r\n  setAlert(alert: FormioAlert) {\r\n    this.alerts = [alert];\r\n  }\r\n\r\n  addAlert(alert: FormioAlert) {\r\n    this.alerts.push(alert);\r\n  }\r\n\r\n  setAlerts(alerts: FormioAlert[]) {\r\n    this.alerts = alerts;\r\n  }\r\n}\r\n","export enum AlertsPosition {\r\n  none,\r\n  top,\r\n  bottom,\r\n  both\r\n}\r\n","import { Injectable } from '@angular/core';\r\n@Injectable()\r\nexport class CustomTagsService {\r\n  tags: string[] = [];\r\n\r\n  addCustomTag(tag: string) {\r\n    this.tags.push(tag);\r\n  }\r\n}","import {\r\n  Component,\r\n  ElementRef,\r\n  EventEmitter,\r\n  Input,\r\n  NgZone,\r\n  OnChanges,\r\n  OnDestroy,\r\n  OnInit,\r\n  Optional,\r\n  Output,\r\n  ViewChild,\r\n} from \"@angular/core\";\r\nimport { FormioService } from \"./formio.service\";\r\nimport { FormioAlerts } from \"./components/alerts/formio.alerts\";\r\nimport { FormioAppConfig } from \"./formio.config\";\r\nimport {\r\n  FormioError,\r\n  FormioForm,\r\n  FormioOptions,\r\n  FormioRefreshValue,\r\n} from \"./formio.common\";\r\nimport { assign, get, isEmpty } from \"lodash\";\r\nimport { CustomTagsService } from \"./custom-tags.service\";\r\nimport { Utils } from \"formiojs-colfuturo\";\r\nimport { AlertsPosition } from \"./types/alerts-position\";\r\nconst { Evaluator, fastCloneDeep } = Utils;\r\n\r\n@Component({\r\n  template: \"\",\r\n})\r\nexport class FormioBaseComponent implements OnInit, OnChanges, OnDestroy {\r\n  @Input() form?: FormioForm;\r\n  @Input() submission?: any = {};\r\n  @Input() src?: string;\r\n  @Input() url?: string;\r\n  @Input() service?: FormioService;\r\n  @Input() options?: FormioOptions;\r\n  @Input() noeval? = Evaluator.noeval;\r\n  @Input() formioOptions?: any;\r\n  @Input() renderOptions?: any;\r\n  @Input() readOnly? = false;\r\n  @Input() viewOnly? = false;\r\n  @Input() hideLoading? = false;\r\n  @Input() hideComponents?: string[];\r\n  @Input() refresh?: EventEmitter<FormioRefreshValue>;\r\n  @Input() error?: EventEmitter<any>;\r\n  @Input() success?: EventEmitter<object>;\r\n  @Input() submitDone?: EventEmitter<object>;\r\n  @Input() language?: EventEmitter<string>;\r\n  @Input() hooks?: any = {};\r\n  @Input() renderer?: any;\r\n  @Input() watchSubmissionErrors? = false;\r\n  @Input() dataTableActions?: any = [];\r\n  @Output() render = new EventEmitter<object>();\r\n  @Output() customEvent = new EventEmitter<object>();\r\n  @Output() fileUploadingStatus = new EventEmitter<string>();\r\n  @Output() submit = new EventEmitter<object>();\r\n  @Output() prevPage = new EventEmitter<object>();\r\n  @Output() nextPage = new EventEmitter<object>();\r\n  @Output() beforeSubmit = new EventEmitter<object>();\r\n  @Output() rowAdd = new EventEmitter<any>();\r\n  @Output() rowAdded = new EventEmitter<any>();\r\n  @Output() rowEdit = new EventEmitter<any>();\r\n  @Output() rowEdited = new EventEmitter<any>();\r\n  @Output() rowDelete = new EventEmitter<any>();\r\n  @Output() rowClick = new EventEmitter<any>();\r\n  @Output() rowSelectChange = new EventEmitter<any>();\r\n  @Output() page = new EventEmitter<any>();\r\n  @Output() changeItemsPerPage = new EventEmitter<any>();\r\n  @Output() change = new EventEmitter<object>();\r\n  @Output() invalid = new EventEmitter<boolean>();\r\n  @Output() errorChange = new EventEmitter<any>();\r\n  @Output() formLoad = new EventEmitter<any>();\r\n  @Output() submissionLoad = new EventEmitter<any>();\r\n  @Output() ready = new EventEmitter<FormioBaseComponent>();\r\n  @ViewChild(\"formio\", { static: true }) formioElement?: ElementRef<any>;\r\n\r\n  public AlertsPosition = AlertsPosition;\r\n  public formio: any;\r\n  public initialized = false;\r\n  public alerts = new FormioAlerts();\r\n  public formioReady: Promise<any>;\r\n\r\n  private formioReadyResolve: any;\r\n  private submitting = false;\r\n  private submissionSuccess = false;\r\n  public isLoading: boolean;\r\n  public noAlerts: boolean;\r\n  public label: string;\r\n\r\n  constructor(\r\n    public ngZone: NgZone,\r\n    @Optional() public config: FormioAppConfig,\r\n    @Optional() public customTags?: CustomTagsService\r\n  ) {\r\n    this.isLoading = true;\r\n    this.formioReady = new Promise((ready) => {\r\n      this.formioReadyResolve = ready;\r\n    });\r\n  }\r\n\r\n  getRenderer() {\r\n    return this.renderer;\r\n  }\r\n\r\n  getRendererOptions() {\r\n    const extraTags = this.customTags ? this.customTags.tags : [];\r\n    return assign(\r\n      {},\r\n      {\r\n        icons: get(this.config, \"icons\", \"fontawesome\"),\r\n        noAlerts: get(this.options, \"noAlerts\", true),\r\n        readOnly: this.readOnly,\r\n        viewAsHtml: this.viewOnly,\r\n        ...(this.viewOnly && { renderMode: \"html\" }),\r\n        i18n: get(this.options, \"i18n\", null),\r\n        fileService: get(this.options, \"fileService\", null),\r\n        hooks: this.hooks,\r\n        sanitizeConfig: {\r\n          addTags: extraTags,\r\n        },\r\n        dataTableActions: this.dataTableActions,\r\n      },\r\n      this.renderOptions || {}\r\n    );\r\n  }\r\n\r\n  createRenderer() {\r\n    const Renderer = this.getRenderer();\r\n    const form = new Renderer(\r\n      this.formioElement ? this.formioElement.nativeElement : null,\r\n      this.form,\r\n      this.getRendererOptions()\r\n    );\r\n    return form.instance;\r\n  }\r\n\r\n  setFormUrl(url) {\r\n    this.formio.setUrl(url, this.formioOptions || {});\r\n  }\r\n\r\n  setForm(form: FormioForm) {\r\n    this.form = form;\r\n    if (this.formio) {\r\n      this.formio.destroy();\r\n    }\r\n\r\n    if (this.form.title) {\r\n      this.label = this.form.title;\r\n    } else if (this.form.components && this.form.components[0]) {\r\n      this.label = this.form.components[0].label;\r\n    }\r\n\r\n    // Clear out the element to render the new form.\r\n    if (this.formioElement && this.formioElement.nativeElement) {\r\n      this.formioElement.nativeElement.innerHTML = \"\";\r\n    }\r\n    this.formio = this.createRenderer();\r\n\r\n    if (!this.formio) {\r\n      return;\r\n    }\r\n    this.formio.setSubmission(this.submission, {\r\n      fromSubmission: false,\r\n    });\r\n    if (this.renderOptions && this.renderOptions.validateOnInit) {\r\n      this.formio.setValue(this.submission, { validateOnInit: true });\r\n    }\r\n    if (this.url) {\r\n      this.setFormUrl(this.url);\r\n    }\r\n    if (this.src) {\r\n      this.setFormUrl(this.src);\r\n    }\r\n    this.formio.nosubmit = true;\r\n    this.attachFormEvents();\r\n\r\n    return this.formio.ready.then(() => {\r\n      this.ngZone.run(() => {\r\n        this.isLoading = false;\r\n        this.ready.emit(this);\r\n        this.formioReadyResolve(this.formio);\r\n        if (this.formio.submissionReady) {\r\n          this.formio.submissionReady.then((submission) => {\r\n            this.submissionLoad.emit(submission);\r\n          });\r\n        }\r\n      });\r\n      return this.formio;\r\n    });\r\n  }\r\n\r\n  attachFormEvents() {\r\n    this.formio.on(\"prevPage\", (data: any) =>\r\n      this.ngZone.run(() => this.onPrevPage(data))\r\n    );\r\n    this.formio.on(\"nextPage\", (data: any) =>\r\n      this.ngZone.run(() => this.onNextPage(data))\r\n    );\r\n    this.formio.on(\"change\", (value: any, flags: any, isModified: boolean) =>\r\n      this.ngZone.run(() => this.onChange(value, flags, isModified))\r\n    );\r\n    this.formio.on(\"rowAdd\", (component: any) =>\r\n      this.ngZone.run(() => this.rowAdd.emit(component))\r\n    );\r\n    this.formio.on(\"rowAdded\", (data: any, component: any) =>\r\n      this.ngZone.run(() => this.rowAdded.emit({ component, row: data }))\r\n    );\r\n    this.formio.on(\r\n      \"rowEdit\",\r\n      (data: any, rowIndex: number, index: number, component: any) =>\r\n        this.ngZone.run(() =>\r\n          this.rowEdit.emit({ component, row: data, rowIndex, index })\r\n        )\r\n    );\r\n    this.formio.on(\"rowEdited\", (data: any, rowIndex: number, component: any) =>\r\n      this.ngZone.run(() =>\r\n        this.rowEdited.emit({ component, row: data, rowIndex })\r\n      )\r\n    );\r\n    this.formio.on(\r\n      \"rowDelete\",\r\n      (data: any, rowIndex: number, index: number, component: any) =>\r\n        this.ngZone.run(() =>\r\n          this.rowDelete.emit({ component, row: data, rowIndex, index })\r\n        )\r\n    );\r\n    this.formio.on(\r\n      \"rowClick\",\r\n      (row: any, rowIndex: number, index: number, component: any) =>\r\n        this.ngZone.run(() =>\r\n          this.rowClick.emit({ component, row, rowIndex, index })\r\n        )\r\n    );\r\n    this.formio.on(\"rowSelectChange\", (selectedRows: any[], component: any) =>\r\n      this.ngZone.run(() =>\r\n        this.rowSelectChange.emit({ selectedRows, component })\r\n      )\r\n    );\r\n    this.formio.on(\"page\", (currentPage: number, component: any) =>\r\n      this.ngZone.run(() => this.page.emit({ currentPage, component }))\r\n    );\r\n    this.formio.on(\"changeItemsPerPage\", (itemsPerPage: number) =>\r\n      this.ngZone.run(() => this.changeItemsPerPage.emit({ itemsPerPage }))\r\n    );\r\n    this.formio.on(\"customEvent\", (event: any) =>\r\n      this.ngZone.run(() => this.customEvent.emit(event))\r\n    );\r\n\r\n    [\"fileUploadingStart\", \"fileUploadingEnd\"].forEach((eventName, index) => {\r\n      const status = !!index ? \"end\" : \"start\";\r\n      this.formio.on(eventName, () =>\r\n        this.ngZone.run(() => this.fileUploadingStatus.emit(status))\r\n      );\r\n    });\r\n\r\n    this.formio.on(\"submit\", (submission: any, saved: boolean) =>\r\n      this.ngZone.run(() => this.submitForm(submission, saved))\r\n    );\r\n    this.formio.on(\"error\", (err: any) =>\r\n      this.ngZone.run(() => {\r\n        this.submissionSuccess = false;\r\n        return this.onError(err);\r\n      })\r\n    );\r\n    this.formio.on(\"render\", () => this.ngZone.run(() => this.render.emit()));\r\n    this.formio.on(\"formLoad\", (loadedForm: any) =>\r\n      this.ngZone.run(() => this.formLoad.emit(loadedForm))\r\n    );\r\n  }\r\n\r\n  initialize() {\r\n    if (this.initialized) {\r\n      return;\r\n    }\r\n\r\n    const extraTags = this.customTags ? this.customTags.tags : [];\r\n    const defaultOptions: FormioOptions = {\r\n      errors: {\r\n        message: \"Please fix the following errors before submitting.\",\r\n      },\r\n      alerts: {\r\n        submitMessage: \"Submission Complete.\",\r\n      },\r\n      disableAlerts: false,\r\n      hooks: {\r\n        beforeSubmit: null,\r\n      },\r\n      sanitizeConfig: {\r\n        addTags: extraTags,\r\n      },\r\n      alertsPosition: AlertsPosition.top,\r\n    };\r\n    this.options = Object.assign(defaultOptions, this.options);\r\n    if (this.options.disableAlerts) {\r\n      this.options.alertsPosition = AlertsPosition.none;\r\n    }\r\n    this.initialized = true;\r\n  }\r\n\r\n  ngOnInit() {\r\n    Evaluator.noeval = this.noeval;\r\n    this.initialize();\r\n\r\n    if (this.language) {\r\n      if (typeof this.language === \"string\") {\r\n        this.formio.language = this.language;\r\n      } else {\r\n        this.language.subscribe((lang: string) => {\r\n          this.formio.language = lang;\r\n        });\r\n      }\r\n    }\r\n\r\n    if (this.refresh) {\r\n      this.refresh.subscribe((refresh: FormioRefreshValue) =>\r\n        this.onRefresh(refresh)\r\n      );\r\n    }\r\n\r\n    if (this.error) {\r\n      this.error.subscribe((err: any) => this.onError(err));\r\n    }\r\n\r\n    if (this.success) {\r\n      this.success.subscribe((message: string) => {\r\n        this.alerts.setAlert({\r\n          type: \"success\",\r\n          message: message || get(this.options, \"alerts.submitMessage\"),\r\n        });\r\n      });\r\n    }\r\n\r\n    if (this.submitDone) {\r\n      this.submitDone.subscribe((submission: object) => {\r\n        this.formio.emit(\"submitDone\", submission);\r\n      });\r\n    }\r\n\r\n    if (this.src) {\r\n      if (!this.service) {\r\n        this.service = new FormioService(this.src);\r\n      }\r\n      this.isLoading = true;\r\n      this.setFormFromSrc();\r\n    }\r\n    if (this.url && !this.service) {\r\n      this.service = new FormioService(this.url);\r\n    }\r\n  }\r\n\r\n  setFormFromSrc() {\r\n    this.service.loadForm({ params: { live: 1 } }).subscribe(\r\n      (form: FormioForm) => {\r\n        if (form && form.components) {\r\n          this.ngZone.runOutsideAngular(() => {\r\n            this.setForm(form);\r\n          });\r\n        }\r\n\r\n        // if a submission is also provided.\r\n        if (\r\n          isEmpty(this.submission) &&\r\n          this.service &&\r\n          this.service.formio.submissionId\r\n        ) {\r\n          this.service.loadSubmission().subscribe(\r\n            (submission: any) => {\r\n              if (this.readOnly) {\r\n                this.formio.options.readOnly = true;\r\n              }\r\n              this.submission = this.formio.submission = submission;\r\n            },\r\n            (err) => this.onError(err)\r\n          );\r\n        }\r\n      },\r\n      (err) => this.onError(err)\r\n    );\r\n  }\r\n\r\n  ngOnDestroy() {\r\n    if (this.formio) {\r\n      this.formio.destroy();\r\n    }\r\n  }\r\n\r\n  onRefresh(refresh: FormioRefreshValue) {\r\n    this.formioReady.then(() => {\r\n      if (refresh.form) {\r\n        this.formio.setForm(refresh.form).then(() => {\r\n          if (refresh.submission) {\r\n            this.formio.setSubmission(refresh.submission);\r\n          }\r\n        });\r\n      } else if (refresh.submission) {\r\n        this.formio.setSubmission(refresh.submission);\r\n      } else {\r\n        switch (refresh.property) {\r\n          case \"submission\":\r\n            this.formio.submission = refresh.value;\r\n            break;\r\n          case \"form\":\r\n            this.formio.form = refresh.value;\r\n            break;\r\n        }\r\n      }\r\n    });\r\n  }\r\n\r\n  ngOnChanges(changes: any) {\r\n    Evaluator.noeval = this.noeval;\r\n    this.initialize();\r\n\r\n    if (changes.form && changes.form.currentValue) {\r\n      this.ngZone.runOutsideAngular(() => {\r\n        this.setForm(changes.form.currentValue);\r\n      });\r\n    }\r\n\r\n    this.formioReady.then(() => {\r\n      if (changes.submission && changes.submission.currentValue) {\r\n        this.formio.setSubmission(changes.submission.currentValue, {\r\n          fromSubmission: !changes.submission.firstChange,\r\n        });\r\n      }\r\n\r\n      if (changes.hideComponents && changes.hideComponents.currentValue) {\r\n        const hiddenComponents = changes.hideComponents.currentValue;\r\n        this.formio.options.hide = hiddenComponents;\r\n        this.formio.everyComponent((component) => {\r\n          component.options.hide = hiddenComponents;\r\n          if (hiddenComponents.includes(component.component.key)) {\r\n            component.visible = false;\r\n          }\r\n        });\r\n      }\r\n    });\r\n  }\r\n\r\n  onPrevPage(data: any) {\r\n    this.alerts.setAlerts([]);\r\n    this.prevPage.emit(data);\r\n  }\r\n\r\n  onNextPage(data: any) {\r\n    this.alerts.setAlerts([]);\r\n    this.nextPage.emit(data);\r\n  }\r\n\r\n  onSubmit(submission: any, saved: boolean, noemit?: boolean) {\r\n    this.submitting = false;\r\n    this.submissionSuccess = true;\r\n\r\n    this.formio.setValue(fastCloneDeep(submission), {\r\n      noValidate: true,\r\n      noCheck: true,\r\n    });\r\n\r\n    if (saved) {\r\n      this.formio.emit(\"submitDone\", submission);\r\n    }\r\n    if (!noemit) {\r\n      this.submit.emit(submission);\r\n    }\r\n    if (!this.success) {\r\n      this.alerts.setAlert({\r\n        type: \"success\",\r\n        message: get(this.options, \"alerts.submitMessage\"),\r\n      });\r\n    }\r\n  }\r\n\r\n  onError(err: any) {\r\n    this.alerts.setAlerts([]);\r\n    this.submitting = false;\r\n    this.isLoading = false;\r\n\r\n    if (!err) {\r\n      return;\r\n    }\r\n\r\n    // Make sure it is an array.\r\n    const errors = Array.isArray(err) ? err : [err];\r\n\r\n    // Emit these errors again.\r\n    this.errorChange.emit(errors);\r\n\r\n    if (err.silent) {\r\n      return;\r\n    }\r\n\r\n    if (this.formio && errors.length) {\r\n      this.formio.emit(\"submitError\", errors);\r\n    }\r\n\r\n    // Iterate through each one and set the alerts array.\r\n    errors.forEach((error: any) => {\r\n      const { message, paths } = error\r\n        ? error.details\r\n          ? {\r\n              message: error.details.map((detail) => detail.message),\r\n              paths: error.details.map((detail) => detail.path),\r\n            }\r\n          : {\r\n              message: error.message || error.toString(),\r\n              paths:\r\n                error.path || error.formattedKeyOrPath\r\n                  ? [error.path || error.formattedKeyOrPath]\r\n                  : [],\r\n            }\r\n        : {\r\n            message: \"\",\r\n            paths: [],\r\n          };\r\n\r\n      let shouldErrorDisplay = true;\r\n\r\n      if (this.formio) {\r\n        paths.forEach((path, index) => {\r\n          const component = this.formio.getComponent(path);\r\n          if (component) {\r\n            const components = Array.isArray(component)\r\n              ? component\r\n              : [component];\r\n            const messageText = Array.isArray(message)\r\n              ? message[index]\r\n              : message;\r\n            components.forEach((comp) =>\r\n              comp.setCustomValidity(messageText, true)\r\n            );\r\n            this.alerts.addAlert({\r\n              type: \"danger\",\r\n              message: Array.isArray(message) ? message[index] : message,\r\n              component,\r\n            });\r\n            shouldErrorDisplay = false;\r\n          }\r\n        });\r\n\r\n        if ((window as any).VPAT_ENABLED) {\r\n          if (typeof error === \"string\" && this.formio.components) {\r\n            this.formio.components.forEach((comp) => {\r\n              if (comp && comp.type !== \"button\") {\r\n                comp.setCustomValidity(message, true);\r\n              }\r\n            });\r\n          }\r\n        }\r\n      }\r\n\r\n      if (shouldErrorDisplay) {\r\n        this.alerts.addAlert({\r\n          type: \"danger\",\r\n          message,\r\n          component: error.component,\r\n        });\r\n      }\r\n    });\r\n\r\n    if (this.formio && !this.noAlerts) {\r\n      this.formio.showErrors(errors);\r\n    }\r\n  }\r\n\r\n  focusOnComponet(key: any) {\r\n    if (this.formio) {\r\n      this.formio.focusOnComponent(key);\r\n    }\r\n  }\r\n\r\n  submitExecute(submission: object, saved = false) {\r\n    if (this.service && !this.url && !saved) {\r\n      this.service.saveSubmission(submission).subscribe(\r\n        (sub: {}) => this.onSubmit(sub, true),\r\n        (err) => this.onError(err)\r\n      );\r\n    } else {\r\n      this.onSubmit(submission, false);\r\n    }\r\n  }\r\n\r\n  submitForm(submission: any, saved = false) {\r\n    // Keep double submits from occurring...\r\n    if (this.submitting) {\r\n      return;\r\n    }\r\n    this.formio.setMetadata(submission);\r\n    this.submissionSuccess = false;\r\n    this.submitting = true;\r\n    this.beforeSubmit.emit(submission);\r\n\r\n    // if they provide a beforeSubmit hook, then allow them to alter the submission asynchronously\r\n    // or even provide a custom Error method.\r\n    const beforeSubmit = get(this.options, \"hooks.beforeSubmit\");\r\n    if (beforeSubmit) {\r\n      beforeSubmit(submission, (err: FormioError, sub: object) => {\r\n        if (err) {\r\n          this.onError(err);\r\n          return;\r\n        }\r\n        this.submitExecute(sub, saved);\r\n      });\r\n    } else {\r\n      this.submitExecute(submission, saved);\r\n    }\r\n  }\r\n\r\n  onChange(value: any, flags: any, isModified: boolean) {\r\n    if (this.watchSubmissionErrors && !this.submissionSuccess) {\r\n      const errors = get(this, \"formio.errors\", []);\r\n      const alerts = get(this, \"alerts.alerts\", []);\r\n      const submitted = get(this, \"formio.submitted\", false);\r\n      if (submitted && (errors.length || alerts.length)) {\r\n        this.onError(errors);\r\n      }\r\n    }\r\n    return this.change.emit({ ...value, flags, isModified });\r\n  }\r\n}\r\n","import {Component, Input} from '@angular/core';\r\n\r\n@Component({\r\n  selector: 'formio-loader',\r\n  styleUrls: ['./formio.loader.component.scss'],\r\n  templateUrl: './formio.loader.component.html'\r\n})\r\nexport class FormioLoaderComponent {\r\n  @Input() isLoading: boolean;\r\n}\r\n","<div class=\"formio-loader-wrapper\" *ngIf=\"isLoading\">\r\n  <div class=\"formio-loader\"></div>\r\n</div>\r\n","import { Pipe, PipeTransform } from '@angular/core';\r\n\r\n@Pipe({ name: 'parseHtmlContent', pure: false })\r\nexport class ParseHtmlContentPipe implements PipeTransform {\r\n\r\n  /*\r\n    Some messages that are come from formiojs have hex codes. So the main aim of this pipe is transform this messages to html.\r\n    And then render in template.\r\n  */\r\n  transform(content) {\r\n    const parsedContent = new DOMParser().parseFromString(content, 'text/html').body.childNodes[0];\r\n\r\n    return parsedContent?.textContent;\r\n  }\r\n}\r\n","import {Component, EventEmitter, Input, OnInit, Output} from '@angular/core';\r\nimport { FormioAlerts } from './formio.alerts';\r\n\r\n@Component({\r\n  selector: 'formio-alerts',\r\n  templateUrl: './formio.alerts.component.html'\r\n})\r\nexport class FormioAlertsComponent implements OnInit {\r\n  @Input() alerts: FormioAlerts;\r\n  @Output() focusComponent = new EventEmitter<object>();\r\n  ngOnInit() {\r\n    if (!this.alerts) {\r\n      this.alerts = new FormioAlerts();\r\n    }\r\n  }\r\n  getComponent (event, alert) {\r\n    this.focusComponent.emit(alert.component.key);\r\n  }\r\n}\r\n","<div *ngFor=\"let alert of alerts.alerts\" class=\"alert alert-{{ alert.type }}\" role=\"alert\" (click)=\"getComponent($event, alert)\">\r\n  {{alert.message | parseHtmlContent}}\r\n</div>\r\n","import {\r\n  Component,\r\n  OnInit,\r\n  Optional,\r\n  ViewEncapsulation,\r\n  Input,\r\n  NgZone,\r\n  OnChanges,\r\n} from \"@angular/core\";\r\nimport { FormioAppConfig } from \"../../formio.config\";\r\nimport { Formio, Form } from \"formiojs-colfuturo\";\r\nimport { FormioBaseComponent } from \"../../FormioBaseComponent\";\r\nimport { CustomTagsService } from \"../../custom-tags.service\";\r\n\r\n/* tslint:disable */\r\n@Component({\r\n  selector: \"formio\",\r\n  templateUrl: \"./formio.component.html\",\r\n  styleUrls: [\r\n    \"../../../../../node_modules/formiojs-colfuturo/dist/formio.form.min.css\",\r\n  ],\r\n  encapsulation: ViewEncapsulation.None,\r\n})\r\n/* tslint:enable */\r\nexport class FormioComponent\r\n  extends FormioBaseComponent\r\n  implements OnInit, OnChanges\r\n{\r\n  constructor(\r\n    public ngZone: NgZone,\r\n    @Optional() public config: FormioAppConfig,\r\n    @Optional() public customTags?: CustomTagsService\r\n  ) {\r\n    super(ngZone, config, customTags);\r\n    if (this.config) {\r\n      Formio.setBaseUrl(this.config.apiUrl);\r\n      Formio.setProjectUrl(this.config.appUrl);\r\n    } else {\r\n      console.warn(\"You must provide an AppConfig within your application!\");\r\n    }\r\n  }\r\n\r\n  getRenderer() {\r\n    return this.renderer || Form;\r\n  }\r\n}\r\n","<div role=\"form\" [attr.aria-label]=\"label\">\r\n  <div *ngIf=\"isLoading && !hideLoading\" style=\"position:relative;height:200px\">\r\n    <formio-loader [isLoading]=\"isLoading\"></formio-loader>\r\n  </div>\r\n  <formio-alerts *ngIf=\"this.options.alertsPosition === AlertsPosition.top || this.options.alertsPosition === AlertsPosition.both\" (focusComponent)=\"focusOnComponet($event)\" [alerts]=\"alerts\"></formio-alerts>\r\n  <div #formio></div>\r\n  <formio-alerts *ngIf=\"this.options.alertsPosition === AlertsPosition.bottom || this.options.alertsPosition === AlertsPosition.both\" (focusComponent)=\"focusOnComponet($event)\" [alerts]=\"alerts\"></formio-alerts>\r\n</div>\r\n","import {\r\n  Component,\r\n  Input,\r\n  OnInit,\r\n  OnChanges,\r\n  OnDestroy,\r\n  ViewEncapsulation,\r\n  Optional,\r\n  ElementRef,\r\n  ViewChild,\r\n  EventEmitter,\r\n  Output,\r\n  NgZone,\r\n} from \"@angular/core\";\r\nimport { FormioAppConfig } from \"../../formio.config\";\r\nimport { FormioForm, FormioOptions } from \"../../formio.common\";\r\nimport { Formio, FormBuilder, Utils } from \"formiojs-colfuturo\";\r\nimport { assign } from \"lodash\";\r\nimport { Observable, Subscription } from \"rxjs\";\r\nimport { CustomTagsService } from \"../../custom-tags.service\";\r\n\r\n/* tslint:disable */\r\n@Component({\r\n  selector: \"form-builder\",\r\n  templateUrl: \"./formbuilder.component.html\",\r\n  styleUrls: [\r\n    \"../../../../../node_modules/formiojs-colfuturo/dist/formio.builder.min.css\",\r\n  ],\r\n  encapsulation: ViewEncapsulation.None,\r\n})\r\n/* tslint:enable */\r\nexport class FormBuilderComponent implements OnInit, OnChanges, OnDestroy {\r\n  public ready: Promise<object>;\r\n  public readyResolve: any;\r\n  public formio: any;\r\n  public builder: FormBuilder;\r\n  public componentAdding = false;\r\n  private refreshSubscription: Subscription;\r\n  @Input() form?: FormioForm;\r\n  @Input() options?: FormioOptions;\r\n  @Input() formbuilder?: any;\r\n  @Input() noeval? = false;\r\n  @Input() refresh?: Observable<void>;\r\n  @Input() rebuild?: Observable<object>;\r\n  @Output() change: EventEmitter<object>;\r\n  @ViewChild(\"builder\", { static: true }) builderElement?: ElementRef<any>;\r\n\r\n  constructor(\r\n    private ngZone: NgZone,\r\n    @Optional() private config: FormioAppConfig,\r\n    @Optional() private customTags?: CustomTagsService\r\n  ) {\r\n    if (this.config) {\r\n      Formio.setBaseUrl(this.config.apiUrl);\r\n      Formio.setProjectUrl(this.config.appUrl);\r\n    } else {\r\n      console.warn(\"You must provide an AppConfig within your application!\");\r\n    }\r\n\r\n    this.change = new EventEmitter();\r\n    this.ready = new Promise((resolve: any) => {\r\n      this.readyResolve = resolve;\r\n    });\r\n  }\r\n\r\n  ngOnInit() {\r\n    Utils.Evaluator.noeval = this.noeval;\r\n\r\n    if (this.refresh) {\r\n      this.refreshSubscription = this.refresh.subscribe(() => {\r\n        this.ngZone.runOutsideAngular(() => {\r\n          this.buildForm(this.form);\r\n        });\r\n      });\r\n    }\r\n\r\n    if (this.rebuild) {\r\n      this.rebuild.subscribe((options) => {\r\n        this.ngZone.runOutsideAngular(() => {\r\n          this.rebuildForm(this.form, options);\r\n        });\r\n      });\r\n    }\r\n  }\r\n\r\n  setInstance(instance: any) {\r\n    this.formio = instance;\r\n    instance.off(\"addComponent\");\r\n    instance.off(\"saveComponent\");\r\n    instance.off(\"updateComponent\");\r\n    instance.off(\"removeComponent\");\r\n    instance.on(\"addComponent\", (component, parent, path, index, isNew) => {\r\n      this.ngZone.run(() => {\r\n        if (isNew) {\r\n          this.componentAdding = true;\r\n        } else {\r\n          this.change.emit({\r\n            type: \"addComponent\",\r\n            builder: instance,\r\n            form: instance.schema,\r\n            component: component,\r\n            parent: parent,\r\n            path: path,\r\n            index: index,\r\n          });\r\n          this.componentAdding = false;\r\n        }\r\n      });\r\n    });\r\n    instance.on(\r\n      \"saveComponent\",\r\n      (component, original, parent, path, index, isNew) => {\r\n        this.ngZone.run(() => {\r\n          this.change.emit({\r\n            type: this.componentAdding ? \"addComponent\" : \"saveComponent\",\r\n            builder: instance,\r\n            form: instance.schema,\r\n            component: component,\r\n            originalComponent: original,\r\n            parent: parent,\r\n            path: path,\r\n            index: index,\r\n            isNew: isNew || false,\r\n          });\r\n          this.componentAdding = false;\r\n        });\r\n      }\r\n    );\r\n    instance.on(\"updateComponent\", (component) => {\r\n      this.ngZone.run(() => {\r\n        this.change.emit({\r\n          type: \"updateComponent\",\r\n          builder: instance,\r\n          form: instance.schema,\r\n          component: component,\r\n        });\r\n      });\r\n    });\r\n    instance.on(\"removeComponent\", (component, parent, path, index) => {\r\n      this.ngZone.run(() => {\r\n        this.change.emit({\r\n          type: \"deleteComponent\",\r\n          builder: instance,\r\n          form: instance.schema,\r\n          component: component,\r\n          parent: parent,\r\n          path: path,\r\n          index: index,\r\n        });\r\n      });\r\n    });\r\n    this.ngZone.run(() => {\r\n      this.readyResolve(instance);\r\n    });\r\n    return instance;\r\n  }\r\n\r\n  setDisplay(display: String, prevDisplay?: string) {\r\n    if (display && display !== prevDisplay) {\r\n      (this.builder as any).setDisplay(display);\r\n    }\r\n  }\r\n\r\n  buildForm(form: any, prevForm?: any) {\r\n    if (!form || !this.builderElement || !this.builderElement.nativeElement) {\r\n      return;\r\n    }\r\n\r\n    if (this.builder) {\r\n      this.setDisplay(form.display, prevForm?.display);\r\n      this.setInstance(this.builder.instance);\r\n      this.builder.form = form;\r\n      this.builder.instance.form = form;\r\n      return this.builder.instance;\r\n    }\r\n\r\n    return this.rebuildForm(form);\r\n  }\r\n\r\n  rebuildForm(form: any, options?: object) {\r\n    const Builder = this.formbuilder || FormBuilder;\r\n    const extraTags = this.customTags ? this.customTags.tags : [];\r\n    this.builder = new Builder(\r\n      this.builderElement.nativeElement,\r\n      form,\r\n      assign(\r\n        {\r\n          icons: \"fontawesome\",\r\n          sanitizeConfig: {\r\n            addTags: extraTags,\r\n          },\r\n        },\r\n        options || this.options || {}\r\n      )\r\n    );\r\n    return this.builder.ready.then((instance) => this.setInstance(instance));\r\n  }\r\n\r\n  ngOnChanges(changes: any) {\r\n    Utils.Evaluator.noeval = this.noeval;\r\n\r\n    if (changes.form && changes.form.currentValue) {\r\n      this.ngZone.runOutsideAngular(() => {\r\n        this.buildForm(\r\n          changes.form.currentValue || { components: [] },\r\n          changes.form.previousValue\r\n        );\r\n      });\r\n    }\r\n  }\r\n\r\n  ngOnDestroy() {\r\n    if (this.refreshSubscription) {\r\n      this.refreshSubscription.unsubscribe();\r\n    }\r\n\r\n    if (this.formio) {\r\n      this.formio.destroy();\r\n    }\r\n  }\r\n}\r\n","<div #builder></div>\r\n","import {\r\n  Component,\r\n  OnInit,\r\n  ViewEncapsulation,\r\n  Input,\r\n  OnChanges,\r\n  ViewChild,\r\n  ElementRef,\r\n  EventEmitter,\r\n  Output,\r\n} from \"@angular/core\";\r\nimport { Formio } from \"formiojs-colfuturo\";\r\nimport { FormioComponent } from \"../formio/formio.component\";\r\nimport { FormioReport } from \"../../formio.common\";\r\n\r\n/* tslint:disable */\r\n@Component({\r\n  selector: \"formio-report\",\r\n  templateUrl: \"./formioreport.component.html\",\r\n  styleUrls: [\r\n    \"../../../../../node_modules/formiojs-colfuturo/dist/formio.form.min.css\",\r\n  ],\r\n  encapsulation: ViewEncapsulation.None,\r\n})\r\n/* tslint:enable */\r\nexport class FormioReportComponent\r\n  extends FormioComponent\r\n  implements OnInit, OnChanges\r\n{\r\n  @Input() report?: FormioReport;\r\n  @Input() projectEndpoint?: string;\r\n  @Output() fetchDataError = new EventEmitter<any>();\r\n  @ViewChild(\"report\", { static: true })\r\n  declare formioElement?: ElementRef<any>;\r\n\r\n  public isReportLoading: boolean;\r\n\r\n  setFormFromSrc() {\r\n    this.service.loadSubmission({ params: { live: 1 } }).subscribe(\r\n      (report: FormioReport) => {\r\n        this.report = report;\r\n        if (report && report.data) {\r\n          this.ngZone.runOutsideAngular(() => {\r\n            this.setForm({ components: [], report });\r\n            this.isReportLoading = false;\r\n          });\r\n        }\r\n      },\r\n      (err) => this.onError(err)\r\n    );\r\n  }\r\n\r\n  setFormUrl(url) {\r\n    return;\r\n  }\r\n\r\n  ngOnChanges(changes: any) {\r\n    super.ngOnChanges(changes);\r\n\r\n    if (changes.report && changes.report.currentValue) {\r\n      this.ngZone.runOutsideAngular(() => {\r\n        this.setForm({ report: changes.report.currentValue, components: [] });\r\n        this.isReportLoading = false;\r\n      });\r\n    }\r\n  }\r\n\r\n  getRendererOptions() {\r\n    const projectEndpoint =\r\n      this.projectEndpoint ||\r\n      this.config?.appUrl ||\r\n      this.service?.formio?.projectUrl;\r\n\r\n    if (!projectEndpoint && !this.src) {\r\n      console.warn(\r\n        \"The projectEndpoint url is required to render the Report using JSON schema.\"\r\n      );\r\n    }\r\n    return {\r\n      projectEndpoint,\r\n      ...super.getRendererOptions(),\r\n    };\r\n  }\r\n  createRenderer() {\r\n    const Renderer = this.getRenderer();\r\n    if (!Renderer) {\r\n      return null;\r\n    }\r\n\r\n    const form = new Renderer(\r\n      this.formioElement ? this.formioElement.nativeElement : null,\r\n      this.report,\r\n      this.getRendererOptions()\r\n    );\r\n    return form.instance;\r\n  }\r\n\r\n  attachFormEvents() {\r\n    this.formio.on(\"fetchDataError\", (error: any, component: any) =>\r\n      this.ngZone.run(() => {\r\n        this.alerts.addAlert({\r\n          type: \"danger\",\r\n          message: error ? JSON.stringify(error) : error,\r\n        });\r\n        this.fetchDataError.emit({ error, component });\r\n      })\r\n    );\r\n  }\r\n\r\n  getRenderer() {\r\n    const reportRenderer = (Formio as any).Report;\r\n    if (!reportRenderer) {\r\n      console.error(\r\n        \"Report is not found in Formio. Please make sure that you are using the Formio Reporting module and it is correctly included in your application.\"\r\n      );\r\n    }\r\n\r\n    return reportRenderer;\r\n  }\r\n}\r\n","<div role=\"form\" [attr.aria-label]=\"label\">\r\n  <div *ngIf=\"isReportLoading && !hideLoading\" style=\"position:relative;height:200px\">\r\n    <formio-loader [isLoading]=\"isReportLoading\"></formio-loader>\r\n  </div>\r\n  <formio-alerts *ngIf=\"this.options.alertsPosition === AlertsPosition.top || this.options.alertsPosition === AlertsPosition.both\" (focusComponent)=\"focusOnComponet($event)\" [alerts]=\"alerts\"></formio-alerts>\r\n  <div #report></div>\r\n  <formio-alerts *ngIf=\"this.options.alertsPosition === AlertsPosition.bottom || this.options.alertsPosition === AlertsPosition.both\" (focusComponent)=\"focusOnComponet($event)\" [alerts]=\"alerts\"></formio-alerts>\r\n</div>\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormioComponent } from './components/formio/formio.component';\r\nimport { FormioReportComponent } from './components/formioreport/formioreport.component';\r\nimport { FormBuilderComponent } from './components/formbuilder/formbuilder.component';\r\nimport { FormioAlerts } from './components/alerts/formio.alerts';\r\nimport { ParseHtmlContentPipe } from './components/alerts/parse-html-content.pipe';\r\nimport { FormioAlertsComponent } from './components/alerts/formio.alerts.component';\r\nimport { FormioLoaderComponent } from './components/loader/formio.loader.component';\r\nimport { CustomTagsService } from './custom-tags.service';\r\nimport { FormioBaseComponent } from './FormioBaseComponent';\r\n\r\n@NgModule({\r\n    declarations: [\r\n        FormioComponent,\r\n        FormioReportComponent,\r\n        FormioBaseComponent,\r\n        FormBuilderComponent,\r\n        FormioLoaderComponent,\r\n        FormioAlertsComponent,\r\n        ParseHtmlContentPipe\r\n    ],\r\n    imports: [\r\n        CommonModule\r\n    ],\r\n    exports: [\r\n        FormioComponent,\r\n        FormioReportComponent,\r\n        FormBuilderComponent,\r\n        FormioLoaderComponent,\r\n        FormioAlertsComponent\r\n    ],\r\n    providers: [\r\n        FormioAlerts,\r\n        CustomTagsService\r\n    ]\r\n})\r\nexport class FormioModule {}\r\n","if (window && typeof (window as any).global === \"undefined\") {\r\n  (window as any).global = window;\r\n}\r\nexport * from \"./formio.config\";\r\nexport * from \"./formio.common\";\r\nexport * from \"./formio.service\";\r\nexport * from \"./formio-promise.service\";\r\nexport * from \"./formio.utils\";\r\nexport * from \"./FormioBaseComponent\";\r\nexport * from \"./components/formio/formio.component\";\r\nexport * from \"./components/formbuilder/formbuilder.component\";\r\nexport * from \"./components/formioreport/formioreport.component\";\r\nexport * from \"./components/loader/formio.loader.component\";\r\nexport * from \"./components/alerts/formio.alerts\";\r\nexport * from \"./components/alerts/formio.alerts.component\";\r\nexport { FormioModule } from \"./formio.module\";\r\nexport {\r\n  ComponentSchema,\r\n  ExtendedComponentSchema,\r\n  ElementInfo,\r\n} from \"@formio/deprecated-types\";\r\nexport { Utils as FormioUtils } from \"formiojs-colfuturo\";\r\nexport { Formio } from \"formiojs-colfuturo\";\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["Formio","i1.FormioAppConfig","i2.CustomTagsService","i2.ParseHtmlContentPipe","i3","i4.FormioLoaderComponent","i5.FormioAlertsComponent","i2.FormioLoaderComponent","i3.FormioAlertsComponent"],"mappings":"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"}