survey-creator-core
Version:
A framework-independent core package of the SurveyJS Survey Creator component. With Survey Creator, you can visually design complex, interactive JSON forms and surveys in a drag-and-drop interface.
98 lines (97 loc) • 3.73 kB
TypeScript
import { SurveyModel, Base, Question, ItemValue, MatrixDropdownColumn } from "survey-core";
import { SurveyLogicType } from "./logic-types";
export declare class SurveyLogicAction {
private surveyValue;
private logicTypeValue;
private elementValue;
constructor(logicType: SurveyLogicType, element: Base, survey: SurveyModel);
get logicType(): SurveyLogicType;
get element(): Base;
get parentElement(): Base;
get survey(): SurveyModel;
apply(expression: string, isRenaming?: boolean): void;
private removeElement;
renameQuestion(oldName: string, newName: string): void;
clone(): SurveyLogicAction;
equals(action: SurveyLogicAction): boolean;
get name(): string;
get logicTypeName(): string;
get logicTypeDescription(): string;
get text(): string;
get deleteActionText(): string;
getLocString(name: string): string;
isSuitableByQuestionName(questionName: string): boolean;
isSuitableByLogicType(logicTypeName: string): boolean;
addQuestionNames(names: string[]): void;
private get questionNames();
get elementName(): string;
private get elementOwnerName();
private getOwnerElement;
private get questionNamesValues();
}
export interface ISurveyLogicItemOwner {
survey: SurveyModel;
readOnly: boolean;
editItem(item: SurveyLogicItem): any;
removeItem(item: SurveyLogicItem): any;
getExpressionAsDisplayText(expression: string): string;
getVisibleLogicTypes(): Array<SurveyLogicType>;
}
export declare class SurveyLogicItem {
private owner;
expression: string;
private static counter;
private idValue;
private removedActions;
private actionsValue;
isNew: boolean;
isModified: boolean;
constructor(owner: ISurveyLogicItemOwner, expression?: string);
get actions(): Array<SurveyLogicAction>;
get id(): number;
get name(): string;
get survey(): SurveyModel;
getVisibleLogicTypes(): Array<SurveyLogicType>;
get expressionText(): string;
get actionsText(): string;
getDisplayText(): string;
edit(): void;
remove(): void;
get isReadOnly(): boolean;
addNewAction(action: SurveyLogicAction): void;
removeAction(action: SurveyLogicAction): void;
replaceAction(newAction: SurveyLogicAction, oldAction: SurveyLogicAction): void;
clone(): SurveyLogicItem;
equals(item: SurveyLogicItem): boolean;
private replaceActionCore;
apply(expression: string): void;
renameQuestion(oldName: string, newName: string): void;
renameColumn(question: Question, column: MatrixDropdownColumn, oldName: string): void;
renameItemValue(question: Question, item: ItemValue, oldValue: any): void;
private renameDropdownColumnItemValue;
renameRowValue(question: Question, item: ItemValue, oldValue: any): void;
private canUpdateExpressionByQuestion;
private isQuestionInExpression;
private isStrContainsInExpression;
private getItemValueQuestionName;
removeQuestion(name: string): void;
getQuestionNames(): string[];
getActionTypes(): string[];
getContext(): Base;
private getQuestionNamesFromExpression;
private getQuestionNamesFromActions;
private getExpressionAsDisplayText;
get editText(): string;
get deleteText(): string;
get ifText(): string;
isSuitable(filteredName: string, logicTypeName?: string): boolean;
private isSuitableInExpression;
private isSuitableByNameInActions;
private isSuitableByLogicTypeInActions;
private renameQuestionInExpression;
private renameQuestionInExpressionCore;
private removeQuestionInExpression;
private applyExpression;
private removeActions;
private removeSameActions;
}