formioangular-colfuturo
Version:
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 10.1.4.
1 lines • 86 kB
Source Map (JSON)
{"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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