@alfresco/adf-core
Version:
71 lines (70 loc) • 3.35 kB
TypeScript
/*!
* @license
* Copyright © 2005-2025 Hyland Software, Inc. and its affiliates. All rights reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { InjectionToken } from '@angular/core';
import { Subject } from 'rxjs';
import { ContentLinkModel } from '../components/widgets/core/content-link.model';
import { FormOutcomeEvent } from '../components/widgets/core/form-outcome-event.model';
import { FormValues } from '../components/widgets/core/form-values';
import { FormModel } from '../components/widgets/core/form.model';
import { FormEvent } from '../events/form.event';
import { FormFieldEvent } from '../events/form-field.event';
import { FormErrorEvent } from '../events/form-error.event';
import { ValidateFormEvent } from '../events/validate-form.event';
import { ValidateFormFieldEvent } from '../events/validate-form-field.event';
import { FormValidationService } from './form-validation-service.interface';
import { FormRulesEvent } from '../events/form-rules.event';
import { FormSpinnerEvent } from '../events';
import { FormFieldModel, FormFieldValidator } from '../components/widgets';
import * as i0 from "@angular/core";
export declare const FORM_SERVICE_FIELD_VALIDATORS_TOKEN: InjectionToken<FormFieldValidator[]>;
export declare class FormService implements FormValidationService {
private fieldValidators;
formLoaded: Subject<FormEvent>;
formDataRefreshed: Subject<FormEvent>;
formFieldValueChanged: Subject<FormFieldEvent>;
formEvents: Subject<Event>;
taskCompleted: Subject<FormEvent>;
taskCompletedError: Subject<FormErrorEvent>;
taskSaved: Subject<FormEvent>;
taskSavedError: Subject<FormErrorEvent>;
formContentClicked: Subject<ContentLinkModel>;
toggleFormSpinner: Subject<FormSpinnerEvent>;
onFormVariableChanged: Subject<{
field: FormFieldModel;
data?: any;
}>;
validateForm: Subject<ValidateFormEvent>;
validateFormField: Subject<ValidateFormFieldEvent>;
validateDynamicTableRow: Subject<FormFieldEvent>;
executeOutcome: Subject<FormOutcomeEvent>;
updateFormValuesRequested: Subject<FormValues>;
formRulesEvent: Subject<FormRulesEvent>;
constructor(injectedFieldValidators?: FormFieldValidator[]);
/**
* Parses JSON data to create a corresponding Form model.
*
* @param json JSON to create the form
* @param data Values for the form fields
* @param readOnly Should the form fields be read-only?
* @param fixedSpace use fixed space
* @returns Form model created from input data
*/
parseForm(json: any, data?: FormValues, readOnly?: boolean, fixedSpace?: boolean): FormModel;
getPreviewState(): boolean;
static ɵfac: i0.ɵɵFactoryDeclaration<FormService, [{ optional: true; }]>;
static ɵprov: i0.ɵɵInjectableDeclaration<FormService>;
}