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.
58 lines (57 loc) • 3.44 kB
TypeScript
import { Base, ISurveyElement, ItemValue, JsonObjectProperty, SurveyElement, SurveyModel, PageModel, PanelModel, PanelModelBase } from "survey-core";
import { ISurveyCreatorOptions } from "./creator-settings";
export declare function getItemValueSeparator(): string;
export declare enum ObjType {
Unknown = "unknown",
Survey = "survey",
Page = "page",
Panel = "panel",
Question = "question",
Column = "column"
}
export declare class SurveyHelper {
static getNewElementName(el: ISurveyElement): string;
static getNewPageName(objs: Array<any>): string;
static isPageNameAutoGenerated(name: string): boolean;
static isPagePropertiesAreModified(page: PageModel): boolean;
static getNewQuestionName(objs: Array<any>): string;
static getNewPanelName(objs: Array<any>): string;
static generateNewName(name: string): string;
static getNewName(objs: Array<any>, baseName: string): string;
static isNameAutoGenerated(name: string, baseName: string): boolean;
static getObjectType(obj: any): ObjType;
static getObjectTypeStr(obj: any): string;
static getObjectName(obj: any, showObjectTitle?: boolean): string;
static getElements(element: any, includeHidden?: boolean): Array<any>;
static addElements(elements: Array<any>, isPanel: boolean, result: Array<any>): void;
static getAllElements(survey: SurveyModel, isPanel: boolean): Array<any>;
static isPropertyVisible(obj: any, prop: JsonObjectProperty, options?: ISurveyCreatorOptions, showMode?: string, parentObj?: any, parentProperty?: JsonObjectProperty): boolean;
static isNeedScrollIntoView(el: HTMLElement, scrollIfElementBiggerThanContainer?: boolean): undefined | "top" | "bottom";
static scrollIntoViewIfNeeded(el: HTMLElement, getOptions?: (overTop: boolean) => ScrollIntoViewOptions, scrollIfElementBiggerThanContainer?: boolean): void;
static getScrollableDiv(el: HTMLElement): HTMLElement;
static moveItemInArray(list: Array<any>, obj: any, newIndex: number): boolean;
static applyItemValueArray(dest: Array<ItemValue>, src: Array<ItemValue>): void;
static disableSelectingObj(obj: Base): void;
static enableSelectingObj(obj: Base): void;
static canSelectObj(obj: Base): boolean;
static isChoiceItemPanel(panel: PanelModelBase): boolean;
static getChoiceIItemPanel(element: any): PanelModelBase;
static warnNonSupported(name: string, newPropertyName?: string): void;
static warnText(text: string): void;
private static deleteConditionProperties;
private static deleteRandomProperties;
static updateQuestionJson(questionJson: any): void;
private static deleteConditionPropertiesFromArray;
static convertMatrixRowsToText(rows: any): string;
static convertItemValuesToText(items: ItemValue[]): string;
static convertTextToItemValues(text: string, properties: JsonObjectProperty[], className: string): ItemValue[];
static sortItems(items: Array<any>, propertyName?: string): void;
static getQuestionContextIndexInfo(name: string, prefix?: string): {
index: number;
name: string;
};
static isSupportCellEditor(type: string): boolean;
static getElementDeepLength(element: SurveyElement): number;
static getMaximumNestedPanelDepth(panel: PanelModel, currentDepth: number): number;
static getElementParentContainers(element: SurveyElement, includingPage?: boolean): SurveyElement[];
}