survey-react 1.8.65 → 1.8.69

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/survey.react.d.ts CHANGED
@@ -1,4 +1,4 @@
1
- /*Type definitions for Survey JavaScript library v1.8.65
1
+ /*Type definitions for Survey JavaScript library v1.8.69
2
2
  Copyright (c) 2015-2021 Devsoft Baltic OÜ - http://surveyjs.io/
3
3
  Definitions by: Devsoft Baltic OÜ <https://github.com/surveyjs/>
4
4
  */
@@ -1350,7 +1350,9 @@ declare function doKey2ClickDown(evt: KeyboardEvent, options?: {
1350
1350
  processEsc: boolean;
1351
1351
  }): void;
1352
1352
  declare function increaseHeightByContent(element: HTMLElement, getComputedStyle?: (elt: Element) => any): void;
1353
- export { compareVersions, confirmAction, detectIEOrEdge, detectIEBrowser, loadFileFromBase64, isMobile, isElementVisible, findScrollableParent, scrollElementByChildId, createSvg, doKey2ClickUp, doKey2ClickDown, getIconNameFromProxy, increaseHeightByContent };
1353
+ declare function getOriginalEvent(event: any): any;
1354
+ declare function preventDefaults(event: any): void;
1355
+ export { compareVersions, confirmAction, detectIEOrEdge, detectIEBrowser, loadFileFromBase64, isMobile, isElementVisible, findScrollableParent, scrollElementByChildId, createSvg, doKey2ClickUp, doKey2ClickDown, getIconNameFromProxy, increaseHeightByContent, getOriginalEvent, preventDefaults };
1354
1356
 
1355
1357
  /**
1356
1358
  * Defines an individual action. Action items can be displayed in certain survey elements - in Toolbar (or action bar), in titles (of pages, panels, questions), in matrix rows (as 'expand details' or 'remove row' buttons), and etc.
@@ -1435,6 +1437,10 @@ export interface IAction {
1435
1437
  * Set it to true to make the tabIndex -1 to disable keyboard navigation to this item
1436
1438
  */
1437
1439
  disableTabStop?: boolean;
1440
+ /**
1441
+ * Action button display mode
1442
+ */
1443
+ mode?: "large" | "small" | "popup";
1438
1444
  visibleIndex?: number;
1439
1445
  }
1440
1446
  export declare class Action extends Base implements IAction {
@@ -1466,6 +1472,7 @@ export declare class Action extends Base implements IAction {
1466
1472
  get hasTitle(): boolean;
1467
1473
  get isVisible(): boolean;
1468
1474
  get canShrink(): boolean;
1475
+ getActionRootCss(): string;
1469
1476
  getActionBarItemCss(): string;
1470
1477
  getActionBarItemActiveCss(): string;
1471
1478
  minDimension: number;
@@ -1479,8 +1486,10 @@ export declare class AdaptiveActionContainer<T extends Action = Action> extends
1479
1486
  protected onSet(): void;
1480
1487
  protected onPush(item: T): void;
1481
1488
  protected getRenderedActions(): Array<T>;
1482
- setItems(items: Array<IAction>, sortByVisibleIndex?: boolean): void;
1483
1489
  fit(dimension: number, dotsItemSize: number): void;
1490
+ initResponsivityManager(container: HTMLDivElement): void;
1491
+ resetResponsivityManager(): void;
1492
+ dispose(): void;
1484
1493
  }
1485
1494
 
1486
1495
  export declare class ActionContainer<T extends Action = Action> extends Base {
@@ -1496,6 +1505,9 @@ export declare class ActionContainer<T extends Action = Action> extends Base {
1496
1505
  get renderedActions(): Array<T>;
1497
1506
  get visibleActions(): Array<T>;
1498
1507
  get css(): string;
1508
+ setItems(items: Array<IAction>, sortByVisibleIndex?: boolean): void;
1509
+ initResponsivityManager(container: HTMLDivElement): void;
1510
+ resetResponsivityManager(): void;
1499
1511
  }
1500
1512
 
1501
1513
  export declare class Survey extends SurveyElementBase<any, any> implements ISurveyCreator {
@@ -1653,7 +1665,6 @@ export declare class SurveyQuestion extends SurveyElementBase<any, any> {
1653
1665
  protected renderElement(): JSX.Element;
1654
1666
  protected wrapElement(element: JSX.Element): JSX.Element;
1655
1667
  protected renderQuestion(): JSX.Element;
1656
- protected renderTitle(cssClasses: any): JSX.Element;
1657
1668
  protected renderDescription(cssClasses: any, isUnderInput?: boolean): JSX.Element;
1658
1669
  protected renderComment(cssClasses: any): JSX.Element;
1659
1670
  protected renderHeader(question: Question): JSX.Element;
@@ -1763,8 +1774,8 @@ export declare class SurveyQuestionCheckboxItem extends ReactSurveyElement {
1763
1774
  protected get isFirst(): any;
1764
1775
  protected get index(): number;
1765
1776
  shouldComponentUpdate(): boolean;
1766
- handleOnChange(event: any): void;
1767
- selectAllChanged(event: any): void;
1777
+ handleOnChange: (event: any) => void;
1778
+ selectAllChanged: (event: any) => void;
1768
1779
  protected canRender(): boolean;
1769
1780
  protected renderElement(): JSX.Element;
1770
1781
  protected get inputStyle(): any;
@@ -1832,12 +1843,6 @@ export declare class SurveyQuestionHtml extends SurveyQuestionElementBase {
1832
1843
  export declare class SurveyQuestionFile extends SurveyQuestionElementBase {
1833
1844
  constructor(props: any);
1834
1845
  protected get question(): QuestionFileModel;
1835
- handleOnDragOver: (event: any) => boolean;
1836
- handleOnDrop: (event: any) => void;
1837
- handleOnChange: (event: any) => void;
1838
- handleOnClean: (event: any) => void;
1839
- handleOnRemoveFile: (event: any) => void;
1840
- handleOnDownloadFile: (event: any, data: any) => void;
1841
1846
  protected renderElement(): JSX.Element;
1842
1847
  protected renderFileDecorator(): JSX.Element;
1843
1848
  protected renderClearButton(className: string): JSX.Element;
@@ -1882,6 +1887,7 @@ export declare class SurveyQuestionText extends SurveyQuestionUncontrolledElemen
1882
1887
  export declare class SurveyQuestionBoolean extends SurveyQuestionElementBase {
1883
1888
  protected checkRef: React.RefObject<HTMLInputElement>;
1884
1889
  constructor(props: any);
1890
+ protected getStateElement(): Base;
1885
1891
  protected get question(): QuestionBooleanModel;
1886
1892
  handleOnChange(event: any): void;
1887
1893
  handleOnClick(event: any): void;
@@ -2134,7 +2140,12 @@ export {};
2134
2140
 
2135
2141
  export declare class TitleActions extends React.Component<any, any> {
2136
2142
  protected get cssClasses(): any;
2137
- protected get element(): ISurveyElement;
2143
+ protected get element(): SurveyElement;
2144
+ render(): JSX.Element;
2145
+ }
2146
+
2147
+ export declare class TitleElement extends React.Component<any, any> {
2148
+ constructor(props: any);
2138
2149
  render(): JSX.Element;
2139
2150
  }
2140
2151
 
@@ -2214,6 +2225,7 @@ export declare class SurveyLocStringViewer extends React.Component<any, any> {
2214
2225
  constructor(props: any);
2215
2226
  componentDidMount(): void;
2216
2227
  componentWillUnmount(): void;
2228
+ componentDidUpdate(prevProps: any, prevState: any): void;
2217
2229
  render(): JSX.Element;
2218
2230
  }
2219
2231
 
@@ -2386,6 +2398,12 @@ export declare var settings: {
2386
2398
  * For example: Survey.settings.customIcons["icon-redo"] = "my-own-redo-icon"
2387
2399
  */
2388
2400
  customIcons: {};
2401
+ titleTags: {
2402
+ survey: string;
2403
+ page: string;
2404
+ panel: string;
2405
+ question: string;
2406
+ };
2389
2407
  };
2390
2408
 
2391
2409
  export interface HashTable<T> {
@@ -2398,8 +2416,8 @@ export declare class Helpers {
2398
2416
  */
2399
2417
  static isValueEmpty(value: any): boolean;
2400
2418
  static isArrayContainsEqual(x: any, y: any): boolean;
2401
- static isArraysEqual(x: any, y: any, ignoreOrder?: boolean): boolean;
2402
- static isTwoValueEquals(x: any, y: any, ignoreOrder?: boolean): boolean;
2419
+ static isArraysEqual(x: any, y: any, ignoreOrder?: boolean, caseSensitive?: boolean, trimStrings?: boolean): boolean;
2420
+ static isTwoValueEquals(x: any, y: any, ignoreOrder?: boolean, caseSensitive?: boolean, trimStrings?: boolean): boolean;
2403
2421
  static randomizeArray<T>(array: Array<T>): Array<T>;
2404
2422
  static getUnbindValue(value: any): any;
2405
2423
  static createCopy(obj: any): any;
@@ -2601,6 +2619,7 @@ export declare class ItemValue extends Base {
2601
2619
  get isEnabled(): any;
2602
2620
  setIsEnabled(val: boolean): void;
2603
2621
  addUsedLocales(locales: Array<string>): void;
2622
+ locStrsChanged(): void;
2604
2623
  protected onPropertyValueChanged(name: string, oldValue: any, newValue: any): void;
2605
2624
  protected getConditionRunner(isVisible: boolean): ConditionRunner;
2606
2625
  originalItem: any;
@@ -2701,6 +2720,7 @@ export declare class Base {
2701
2720
  * @see toJSON
2702
2721
  */
2703
2722
  fromJSON(json: any): void;
2723
+ onSurveyLoad(): void;
2704
2724
  /**
2705
2725
  * Make a clone of the existing object. Create a new object of the same type and load all properties into it.
2706
2726
  */
@@ -2863,6 +2883,7 @@ export interface ISurvey extends ITextProcessor, ISurveyErrorOwner {
2863
2883
  requiredText: string;
2864
2884
  beforeSettingQuestionErrors(question: IQuestion, errors: Array<SurveyError>): void;
2865
2885
  beforeSettingPanelErrors(question: IPanel, errors: Array<SurveyError>): void;
2886
+ getElementTitleTagName(element: Base, tagName: string): string;
2866
2887
  questionTitlePattern: string;
2867
2888
  getUpdatedQuestionTitle(question: IQuestion, title: string): string;
2868
2889
  getUpdatedQuestionNo(question: IQuestion, no: string): string;
@@ -2880,6 +2901,7 @@ export interface ISurvey extends ITextProcessor, ISurveyErrorOwner {
2880
2901
  downloadFile(name: string, content: string, callback: (status: string, data: any) => any): any;
2881
2902
  clearFiles(question: IQuestion, name: string, value: any, fileName: string, clearCallback: (status: string, data: any) => any): any;
2882
2903
  updateChoicesFromServer(question: IQuestion, choices: Array<any>, serverResult: any): Array<any>;
2904
+ loadedChoicesFromServer(question: IQuestion): void;
2883
2905
  updateQuestionCssClasses(question: IQuestion, cssClasses: any): any;
2884
2906
  updatePanelCssClasses(panel: IPanel, cssClasses: any): any;
2885
2907
  updatePageCssClasses(panel: IPanel, cssClasses: any): any;
@@ -3030,12 +3052,55 @@ export declare class SurveyError {
3030
3052
  protected getDefaultText(): string;
3031
3053
  }
3032
3054
 
3055
+ /**
3056
+ * Base class of SurveyJS Elements and Survey.
3057
+ */
3058
+ export declare abstract class SurveyElementCore extends Base implements ILocalizableOwner {
3059
+ constructor();
3060
+ protected createLocTitleProperty(): LocalizableString;
3061
+ /**
3062
+ * Question, Panel, Page and Survey title. If page and panel is empty then they are not rendered.
3063
+ * Question renders question name if the title is empty. Use survey questionTitleTemplate property to change the title question rendering.
3064
+ * @see SurveyModel.questionTitleTemplate
3065
+ */
3066
+ get title(): string;
3067
+ set title(val: string);
3068
+ get locTitle(): LocalizableString;
3069
+ protected getDefaultTitleValue(): string;
3070
+ /**
3071
+ * Question, Panel and Page description. It renders under element title by using smaller font. Unlike the question title, description can be empty.
3072
+ * Please note, this property is hidden for questions without input, for example html question.
3073
+ * @see title
3074
+ */
3075
+ get description(): string;
3076
+ set description(val: string);
3077
+ get locDescription(): LocalizableString;
3078
+ get titleTagName(): string;
3079
+ protected getDefaultTitleTagName(): string;
3080
+ get hasTitle(): boolean;
3081
+ get hasTitleActions(): boolean;
3082
+ get hasTitleEvents(): boolean;
3083
+ getTitleToolbar(): AdaptiveActionContainer;
3084
+ getTitleOwner(): ITitleOwner;
3085
+ get isTitleOwner(): boolean;
3086
+ toggleState(): boolean;
3087
+ get cssClasses(): any;
3088
+ get cssTitle(): string;
3089
+ get ariaTitleId(): string;
3090
+ get titleTabIndex(): number;
3091
+ get titleAriaExpanded(): boolean;
3092
+ abstract getLocale(): string;
3093
+ abstract getMarkdownHtml(text: string, name: string): string;
3094
+ abstract getRenderer(name: string): string;
3095
+ abstract getProcessedText(text: string): string;
3096
+ }
3033
3097
  /**
3034
3098
  * Base class of SurveyJS Elements.
3035
3099
  */
3036
- export declare class SurveyElement extends Base implements ISurveyElement {
3100
+ export declare class SurveyElement extends SurveyElementCore implements ISurveyElement {
3037
3101
  stateChangedCallback: () => void;
3038
3102
  static getProgressInfoByElements(children: Array<SurveyElement>, isRequired: boolean): IProgressInfo;
3103
+ isDragOverMe: boolean;
3039
3104
  readOnlyChangedCallback: () => void;
3040
3105
  static ScrollElementToTop(elementId: string): boolean;
3041
3106
  static GetFirstNonTextElement(elements: any, removeSpaces?: boolean): any;
@@ -3083,6 +3148,7 @@ export declare class SurveyElement extends Base implements ISurveyElement {
3083
3148
  get titleActions(): Array<any>;
3084
3149
  getTitleActions(): Array<any>;
3085
3150
  get hasTitleActions(): boolean;
3151
+ get hasTitleEvents(): boolean;
3086
3152
  getTitleComponentName(): string;
3087
3153
  get titleTabIndex(): number;
3088
3154
  get titleAriaExpanded(): boolean;
@@ -3115,6 +3181,17 @@ export declare class SurveyElement extends Base implements ISurveyElement {
3115
3181
  get readOnly(): boolean;
3116
3182
  set readOnly(val: boolean);
3117
3183
  protected onReadOnlyChanged(): void;
3184
+ cssClassesValue: any;
3185
+ /**
3186
+ * Returns all css classes that used for rendering the question, panel or page.
3187
+ * You can use survey.onUpdateQuestionCssClasses event to override css classes for a question, survey.onUpdatePanelCssClasses event for a panel and survey.onUpdatePageCssClasses for a page.
3188
+ * @see SurveyModel.updateQuestionCssClasses
3189
+ * @see SurveyModel.updatePanelCssClasses
3190
+ * @see SurveyModel.updatePageCssClasses
3191
+ */
3192
+ get cssClasses(): any;
3193
+ protected calcCssClasses(css: any): any;
3194
+ protected updateElementCssCore(cssClasses: any): void;
3118
3195
  get cssError(): string;
3119
3196
  updateElementCss(reNew?: boolean): void;
3120
3197
  protected getIsLoadingFromJson(): boolean;
@@ -3162,6 +3239,16 @@ export declare class SurveyElement extends Base implements ISurveyElement {
3162
3239
  */
3163
3240
  get isQuestion(): boolean;
3164
3241
  delete(): void;
3242
+ locOwner: ILocalizableOwner;
3243
+ /**
3244
+ * Returns the current survey locale
3245
+ * @see SurveyModel.locale
3246
+ */
3247
+ getLocale(): string;
3248
+ getMarkdownHtml(text: string, name: string): string;
3249
+ getRenderer(name: string): string;
3250
+ getProcessedText(text: string): string;
3251
+ protected getUseDisplayValuesInTitle(): boolean;
3165
3252
  protected removeSelfFromList(list: Array<any>): void;
3166
3253
  protected get textProcessor(): ITextProcessor;
3167
3254
  protected getProcessedHtml(html: string): string;
@@ -3170,7 +3257,7 @@ export declare class SurveyElement extends Base implements ISurveyElement {
3170
3257
  set parent(val: IPanel);
3171
3258
  protected getPage(parent: IPanel): IPage;
3172
3259
  protected moveToBase(parent: IPanel, container: IPanel, insertBefore?: any): boolean;
3173
- protected setPage(parent: IPanel, val: IPage): void;
3260
+ protected setPage(parent: IPanel, newPage: IPage): void;
3174
3261
  protected getSearchableLocKeys(keys: Array<string>): void;
3175
3262
  }
3176
3263
 
@@ -3293,7 +3380,9 @@ export interface ILocalizableOwner {
3293
3380
  export interface ILocalizableString {
3294
3381
  getLocaleText(loc: string): string;
3295
3382
  setLocaleText(loc: string, newValue: string): any;
3383
+ getJson(): any;
3296
3384
  getLocales(): Array<string>;
3385
+ getIsMultiple(): boolean;
3297
3386
  }
3298
3387
  /**
3299
3388
  * The class represents the string that supports multi-languages and markdown.
@@ -3316,6 +3405,7 @@ export declare class LocalizableString implements ILocalizableString {
3316
3405
  searchText: string;
3317
3406
  searchIndex: number;
3318
3407
  constructor(owner: ILocalizableOwner, useMarkdown?: boolean, name?: string);
3408
+ getIsMultiple(): boolean;
3319
3409
  get locale(): string;
3320
3410
  strChanged(): void;
3321
3411
  get text(): string;
@@ -3345,7 +3435,9 @@ export declare class LocalizableString implements ILocalizableString {
3345
3435
  */
3346
3436
  export declare class LocalizableStrings implements ILocalizableString {
3347
3437
  owner: ILocalizableOwner;
3438
+ onValueChanged: (oldValue: any, newValue: any) => void;
3348
3439
  constructor(owner: ILocalizableOwner);
3440
+ getIsMultiple(): boolean;
3349
3441
  get locale(): string;
3350
3442
  get value(): Array<string>;
3351
3443
  set value(val: Array<string>);
@@ -3355,6 +3447,7 @@ export declare class LocalizableStrings implements ILocalizableString {
3355
3447
  setLocaleText(loc: string, newValue: string): any;
3356
3448
  getValue(loc: string): Array<string>;
3357
3449
  setValue(loc: string, val: Array<string>): void;
3450
+ hasValue(loc?: string): boolean;
3358
3451
  get isEmpty(): boolean;
3359
3452
  getLocales(): Array<string>;
3360
3453
  getJson(): any;
@@ -4097,6 +4190,7 @@ export declare class MatrixDropdownRowModelBase implements ISurveyData, ISurveyI
4097
4190
  protected updateCellOnColumnChanged(cell: MatrixDropdownCell, name: string, newValue: any): void;
4098
4191
  updateCellOnColumnItemValueChanged(cell: MatrixDropdownCell, propertyName: string, obj: ItemValue, name: string, newValue: any, oldValue: any): void;
4099
4192
  protected buildCells(value: any): void;
4193
+ protected isTwoValueEquals(val1: any, val2: any): boolean;
4100
4194
  protected createCell(column: MatrixDropdownColumn): MatrixDropdownCell;
4101
4195
  getSurveyData(): ISurveyData;
4102
4196
  getSurvey(): ISurvey;
@@ -4958,7 +5052,7 @@ export declare class QuestionRowModel extends Base {
4958
5052
  /**
4959
5053
  * A base class for a Panel and Page objects.
4960
5054
  */
4961
- export declare class PanelModelBase extends SurveyElement implements IPanel, IConditionRunner, ILocalizableOwner, ISurveyErrorOwner {
5055
+ export declare class PanelModelBase extends SurveyElement implements IPanel, IConditionRunner, ISurveyErrorOwner, ITitleOwner {
4962
5056
  addElementCallback: (element: IElement) => void;
4963
5057
  removeElementCallback: (element: IElement) => void;
4964
5058
  onGetQuestionTitleLocation: () => string;
@@ -4966,22 +5060,9 @@ export declare class PanelModelBase extends SurveyElement implements IPanel, ICo
4966
5060
  getType(): string;
4967
5061
  setSurveyImpl(value: ISurveyImpl): void;
4968
5062
  endLoadingFromJson(): void;
4969
- /**
4970
- * PanelModel or PageModel title property.
4971
- * @description
4972
- */
4973
- get title(): string;
4974
- set title(val: string);
4975
- get locTitle(): LocalizableString;
4976
- get _showTitle(): boolean;
5063
+ get hasTitle(): boolean;
5064
+ protected canShowTitle(): boolean;
4977
5065
  get _showDescription(): boolean;
4978
- /**
4979
- * PanelModel or PageModel description property. It renders under title by using smaller font. Unlike the title, description can be empty.
4980
- * @see title
4981
- */
4982
- get description(): string;
4983
- set description(val: string);
4984
- get locDescription(): LocalizableString;
4985
5066
  localeChanged(): void;
4986
5067
  locStrsChanged(): void;
4987
5068
  /**
@@ -5008,10 +5089,6 @@ export declare class PanelModelBase extends SurveyElement implements IPanel, ICo
5008
5089
  set questionsOrder(val: string);
5009
5090
  protected isRandomizing: boolean;
5010
5091
  randomizeElements(isRandom: boolean): void;
5011
- getLocale(): string;
5012
- getMarkdownHtml(text: string, name: string): string;
5013
- getRenderer(name: string): string;
5014
- getProcessedText(text: string): string;
5015
5092
  /**
5016
5093
  * A parent element. It is always null for the Page object and always not null for the Panel object. Panel object may contain Questions and other Panels.
5017
5094
  */
@@ -5024,9 +5101,7 @@ export declare class PanelModelBase extends SurveyElement implements IPanel, ICo
5024
5101
  */
5025
5102
  get visibleIf(): string;
5026
5103
  set visibleIf(val: string);
5027
- get cssClasses(): any;
5028
- protected calcCssClasses(): any;
5029
- protected get css(): any;
5104
+ protected calcCssClasses(css: any): any;
5030
5105
  /**
5031
5106
  * A unique element identificator. It is generated automatically.
5032
5107
  */
@@ -5260,13 +5335,14 @@ export declare class PanelModelBase extends SurveyElement implements IPanel, ICo
5260
5335
  protected dragDropAddTarget(dragDropInfo: DragDropInfo): void;
5261
5336
  protected dragDropFindRow(findElement: ISurveyElement): QuestionRowModel;
5262
5337
  dragDropMoveElement(src: IElement, target: IElement, targetIndex: number): void;
5338
+ get no(): string;
5263
5339
  dispose(): void;
5264
5340
  }
5265
5341
  /**
5266
5342
  * A container element, similar to the Page objects. However, unlike the Page, Panel can't be a root.
5267
5343
  * It may contain questions and other panels.
5268
5344
  */
5269
- export declare class PanelModel extends PanelModelBase implements IElement, ITitleOwner {
5345
+ export declare class PanelModel extends PanelModelBase implements IElement {
5270
5346
  minWidth?: string;
5271
5347
  maxWidth?: string;
5272
5348
  constructor(name?: string);
@@ -5295,6 +5371,7 @@ export declare class PanelModel extends PanelModelBase implements IElement, ITit
5295
5371
  * @see showNumber
5296
5372
  */
5297
5373
  get visibleIndex(): number;
5374
+ getTitleOwner(): ITitleOwner;
5298
5375
  /**
5299
5376
  * Set showNumber to true to start showing the number for this panel.
5300
5377
  * @see visibleIndex
@@ -5415,6 +5492,7 @@ export declare class PageModel extends PanelModelBase implements IPage {
5415
5492
  getType(): string;
5416
5493
  toString(): string;
5417
5494
  get isPage(): boolean;
5495
+ protected canShowTitle(): boolean;
5418
5496
  /**
5419
5497
  * Use this property to show title in navigation buttons. If the value is empty then page name is used.
5420
5498
  * @see survey.progressBarType
@@ -5441,8 +5519,8 @@ export declare class PageModel extends PanelModelBase implements IPage {
5441
5519
  * Returns true, if the page is started page in the survey. It can be shown on the start only and the end-user could not comeback to it after it passed it.
5442
5520
  */
5443
5521
  get isStarted(): boolean;
5444
- protected calcCssClasses(): any;
5445
- getIsPageVisible(exceptionQuestion: IQuestion): boolean;
5522
+ protected calcCssClasses(css: any): any;
5523
+ get cssTitle(): string;
5446
5524
  get num(): number;
5447
5525
  set num(val: number);
5448
5526
  /**
@@ -5514,7 +5592,7 @@ export interface IConditionObject {
5514
5592
  /**
5515
5593
  * A base class for all questions.
5516
5594
  */
5517
- export declare class Question extends SurveyElement implements IQuestion, IConditionRunner, ILocalizableOwner, IValidatorOwner, ITitleOwner {
5595
+ export declare class Question extends SurveyElement implements IQuestion, IConditionRunner, IValidatorOwner, ITitleOwner {
5518
5596
  [index: string]: any;
5519
5597
  customWidgetData: {
5520
5598
  isNeedRender: boolean;
@@ -5540,6 +5618,7 @@ export declare class Question extends SurveyElement implements IQuestion, ICondi
5540
5618
  onReadyChanged: EventBase<Question>;
5541
5619
  isReadOnlyRenderDiv(): boolean;
5542
5620
  constructor(name: string);
5621
+ protected createLocTitleProperty(): LocalizableString;
5543
5622
  getSurvey(live?: boolean): ISurvey;
5544
5623
  getValueName(): string;
5545
5624
  /**
@@ -5555,6 +5634,11 @@ export declare class Question extends SurveyElement implements IQuestion, ICondi
5555
5634
  protected onValueNameChanged(oldValue: string): void;
5556
5635
  protected onNameChanged(oldValue: string): void;
5557
5636
  get isReady(): boolean;
5637
+ /**
5638
+ * A11Y properties
5639
+ */
5640
+ get ariaRequired(): boolean;
5641
+ get ariaLabel(): string;
5558
5642
  get ariaInvalid(): boolean;
5559
5643
  get ariaDescribedBy(): string;
5560
5644
  /**
@@ -5584,6 +5668,7 @@ export declare class Question extends SurveyElement implements IQuestion, ICondi
5584
5668
  */
5585
5669
  get useDisplayValuesInTitle(): boolean;
5586
5670
  set useDisplayValuesInTitle(val: boolean);
5671
+ protected getUseDisplayValuesInTitle(): boolean;
5587
5672
  /**
5588
5673
  * An expression that returns true or false. If it returns true the Question becomes visible and if it returns false the Question becomes invisible. The library runs the expression on survey start and on changing a question value. If the property is empty then visible property is used.
5589
5674
  * @see visible
@@ -5653,6 +5738,7 @@ export declare class Question extends SurveyElement implements IQuestion, ICondi
5653
5738
  */
5654
5739
  get titleLocation(): string;
5655
5740
  set titleLocation(value: string);
5741
+ getTitleOwner(): ITitleOwner;
5656
5742
  /**
5657
5743
  * Return the title location based on question titleLocation property and QuestionTitleLocation of it's parents
5658
5744
  * @see titleLocation
@@ -5677,19 +5763,8 @@ export declare class Question extends SurveyElement implements IQuestion, ICondi
5677
5763
  */
5678
5764
  get hasSingleInput(): boolean;
5679
5765
  get inputId(): string;
5680
- /**
5681
- * Question title. Use survey questionTitleTemplate property to change the title question is rendered. If it is empty, then question name property is used.
5682
- * @see SurveyModel.questionTitleTemplate
5683
- */
5684
- get title(): string;
5685
- set title(val: string);
5686
- get locTitle(): LocalizableString;
5687
- /**
5688
- * Question description. It renders under question title by using smaller font. Unlike the title, description can be empty.
5689
- * Please note, this property is hidden for questions without input, for example html question.
5690
- * @see title
5691
- */
5692
- description: string;
5766
+ protected getDefaultTitleValue(): string;
5767
+ protected getDefaultTitleTagName(): string;
5693
5768
  /**
5694
5769
  * Question description location. By default, value is "default" and it depends on survey questionDescriptionLocation property
5695
5770
  * You may change it to "underInput" to render it under question input or "underTitle" to rendered it under title.
@@ -5725,6 +5800,9 @@ export declare class Question extends SurveyElement implements IQuestion, ICondi
5725
5800
  get customWidget(): QuestionCustomWidget;
5726
5801
  updateCustomWidget(): void;
5727
5802
  get isCompositeQuestion(): boolean;
5803
+ updateCommentElement(): void;
5804
+ onCommentInput(event: any): void;
5805
+ onCommentChange(event: any): void;
5728
5806
  afterRenderQuestionElement(el: HTMLElement): void;
5729
5807
  afterRender(el: HTMLElement): void;
5730
5808
  beforeDestroyQuestionElement(el: HTMLElement): void;
@@ -5746,12 +5824,7 @@ export declare class Question extends SurveyElement implements IQuestion, ICondi
5746
5824
  */
5747
5825
  get startWithNewLine(): boolean;
5748
5826
  set startWithNewLine(val: boolean);
5749
- cssClassesValue: any;
5750
- /**
5751
- * Returns all css classes that used for rendering the question. You may use survey.updateQuestionCssClasses event to override css classes for a question.
5752
- * @see SurveyModel.updateQuestionCssClasses
5753
- */
5754
- get cssClasses(): any;
5827
+ protected calcCssClasses(css: any): any;
5755
5828
  get cssRoot(): string;
5756
5829
  protected setCssRoot(val: string): void;
5757
5830
  protected getCssRoot(cssClasses: any): string;
@@ -6052,15 +6125,6 @@ export declare class Question extends SurveyElement implements IQuestion, ICondi
6052
6125
  clearUnusedValues(): void;
6053
6126
  onAnyValueChanged(name: string): void;
6054
6127
  checkBindings(valueName: string, value: any): void;
6055
- locOwner: ILocalizableOwner;
6056
- /**
6057
- * Returns the current survey locale
6058
- * @see SurveyModel.locale
6059
- */
6060
- getLocale(): string;
6061
- getMarkdownHtml(text: string, name: string): string;
6062
- getRenderer(name: string): string;
6063
- getProcessedText(text: string): string;
6064
6128
  getComponentName(): string;
6065
6129
  isDefaultRendering(): boolean;
6066
6130
  renderAs: string;
@@ -6104,6 +6168,8 @@ export declare class QuestionSelectBase extends Question {
6104
6168
  constructor(name: string);
6105
6169
  getType(): string;
6106
6170
  dispose(): void;
6171
+ protected getItemValueType(): string;
6172
+ createItemValue(value: any): ItemValue;
6107
6173
  supportGoNextPageError(): boolean;
6108
6174
  isLayoutTypeSupported(layoutType: string): boolean;
6109
6175
  localeChanged(): void;
@@ -6345,6 +6411,8 @@ export declare class QuestionCheckboxBase extends QuestionSelectBase {
6345
6411
  protected onParentChanged(): void;
6346
6412
  protected onParentQuestionChanged(): void;
6347
6413
  protected getSearchableItemValueKeys(keys: Array<string>): void;
6414
+ getItemEnabled(item: ItemValue): any;
6415
+ isOtherItem(item: ItemValue): boolean;
6348
6416
  }
6349
6417
 
6350
6418
  /**
@@ -6427,6 +6495,8 @@ export declare class QuestionCheckboxModel extends QuestionCheckboxBase {
6427
6495
  protected valueFromData(val: any): any;
6428
6496
  protected renderedValueFromDataCore(val: any): any;
6429
6497
  protected rendredValueToDataCore(val: any): any;
6498
+ get checkBoxSvgPath(): string;
6499
+ getItemId(item: ItemValue): string;
6430
6500
  }
6431
6501
 
6432
6502
  /**
@@ -6435,15 +6505,18 @@ export declare class QuestionCheckboxModel extends QuestionCheckboxBase {
6435
6505
  export declare class QuestionRankingModel extends QuestionCheckboxModel {
6436
6506
  constructor(name: string);
6437
6507
  getType(): string;
6438
- get isIndeterminate(): boolean;
6439
6508
  get rootClass(): string;
6440
6509
  getItemClass(item: ItemValue): string;
6441
6510
  protected isItemCurrentDropTarget(item: ItemValue): boolean;
6442
6511
  get ghostPositionCssClass(): string;
6443
6512
  getNumberByIndex(index: number): string;
6444
- get rankingChoices(): ItemValue[];
6513
+ setSurveyImpl: (value: ISurveyImpl) => void;
6514
+ onSurveyValueChanged(newValue: any): void;
6515
+ protected onVisibleChoicesChanged: () => void;
6516
+ localeChanged: () => void;
6517
+ get rankingChoices(): Array<ItemValue>;
6445
6518
  dragDropHelper: DragDropRankingChoices;
6446
- currentDrropTarget: ItemValue;
6519
+ currentDropTarget: ItemValue;
6447
6520
  dropTargetNodeMove: string;
6448
6521
  endLoadingFromJson(): void;
6449
6522
  handlePointerDown: (event: PointerEvent, choice: ItemValue, node: HTMLElement) => void;
@@ -6453,9 +6526,9 @@ export declare class QuestionRankingModel extends QuestionCheckboxModel {
6453
6526
  protected supportSelectAll(): boolean;
6454
6527
  supportOther(): boolean;
6455
6528
  supportNone(): boolean;
6456
- protected onVisibleChoicesChanged(): void;
6457
6529
  get fallbackToSortableJS(): boolean;
6458
6530
  set fallbackToSortableJS(val: boolean);
6531
+ setValue: () => void;
6459
6532
  getIconHoverCss(): string;
6460
6533
  getIconFocusCss(): string;
6461
6534
  }
@@ -6474,6 +6547,11 @@ export declare class QuestionCommentModel extends QuestionTextBase {
6474
6547
  */
6475
6548
  get cols(): number;
6476
6549
  set cols(val: number);
6550
+ /**
6551
+ * Returns or sets a boolean that specifies whether a question can accept and display multiple lines of text.
6552
+ */
6553
+ get multiLine(): boolean;
6554
+ set multiLine(val: boolean);
6477
6555
  /**
6478
6556
  * Specifies whether the question's text area automatically expands its height to avoid the vertical scrollbar and to display the entire multi-line contents entered by respondents.
6479
6557
  * Default value is false.
@@ -6484,7 +6562,10 @@ export declare class QuestionCommentModel extends QuestionTextBase {
6484
6562
  getType(): string;
6485
6563
  afterRenderQuestionElement(el: HTMLElement): void;
6486
6564
  updateElement(): void;
6565
+ onInput(event: any): void;
6566
+ onKeyDown(event: any): void;
6487
6567
  onValueChanged(): void;
6568
+ protected setNewValue(newValue: string): any;
6488
6569
  }
6489
6570
 
6490
6571
  /**
@@ -6629,26 +6710,38 @@ export declare class QuestionFileModel extends Question {
6629
6710
  * The remove file confirmation message.
6630
6711
  */
6631
6712
  getConfirmRemoveMessage(fileName: string): string;
6713
+ /**
6714
+ * The remove file confirmation message template.
6715
+ */
6716
+ confirmRemoveMessage: string;
6632
6717
  /**
6633
6718
  * The remove all files confirmation message.
6634
6719
  */
6635
- get confirmRemoveAllMessage(): string;
6720
+ confirmRemoveAllMessage: string;
6636
6721
  /**
6637
6722
  * The no file chosen caption for modern theme.
6638
6723
  */
6639
- get noFileChosenCaption(): string;
6724
+ noFileChosenCaption: string;
6640
6725
  /**
6641
6726
  * The choose files button caption for modern theme.
6642
6727
  */
6643
- get chooseButtonCaption(): string;
6728
+ chooseButtonCaption: string;
6644
6729
  /**
6645
6730
  * The clean files button caption.
6646
6731
  */
6647
- get cleanButtonCaption(): string;
6732
+ cleanButtonCaption: string;
6648
6733
  /**
6649
6734
  * The remove file button caption.
6650
6735
  */
6651
- get removeFileCaption(): string;
6736
+ removeFileCaption: string;
6737
+ /**
6738
+ * The loading file input title.
6739
+ */
6740
+ loadingFileTitle: string;
6741
+ /**
6742
+ * The choose file input title.
6743
+ */
6744
+ chooseFileTitle: string;
6652
6745
  /**
6653
6746
  * The input title value.
6654
6747
  */
@@ -6681,6 +6774,12 @@ export declare class QuestionFileModel extends Question {
6681
6774
  supportComment(): boolean;
6682
6775
  getChooseFileCss(): string;
6683
6776
  getReadOnlyFileCss(): string;
6777
+ onDragOver: (event: any) => boolean;
6778
+ onDrop: (event: any) => void;
6779
+ doChange: (event: any) => void;
6780
+ doClean: (event: any) => void;
6781
+ doRemoveFile(data: any): void;
6782
+ doDownloadFile: (event: any, data: any) => void;
6684
6783
  }
6685
6784
 
6686
6785
  /**
@@ -6720,6 +6819,7 @@ export declare class QuestionRadiogroupModel extends QuestionCheckboxBase {
6720
6819
  get canShowClearButton(): boolean;
6721
6820
  get clearButtonCaption(): any;
6722
6821
  supportGoNextPageAutomatic(): boolean;
6822
+ get ariaRole(): string;
6723
6823
  }
6724
6824
 
6725
6825
  /**
@@ -6941,8 +7041,8 @@ export declare class QuestionTextModel extends QuestionTextBase {
6941
7041
  protected canRunValidators(isOnValueChanged: boolean): boolean;
6942
7042
  protected setNewValue(newValue: any): void;
6943
7043
  protected correctValueType(newValue: any): any;
6944
- getControlClass(): string;
6945
7044
  protected hasPlaceHolder(): boolean;
7045
+ get inputStyle(): any;
6946
7046
  }
6947
7047
 
6948
7048
  /**
@@ -7007,6 +7107,9 @@ export declare class QuestionBooleanModel extends Question {
7007
7107
  protected getDisplayValueCore(keysAsText: boolean, value: any): any;
7008
7108
  getItemCss(): string;
7009
7109
  getLabelCss(checked: boolean): string;
7110
+ get allowClick(): boolean;
7111
+ onLabelClick(event: any, value: boolean): boolean;
7112
+ onSwitchClickModel(event: any): boolean;
7010
7113
  }
7011
7114
 
7012
7115
  export declare class ImageItemValue extends ItemValue implements ILocalizableOwner {
@@ -7598,7 +7701,7 @@ export declare class SurveyProgressButtonsModel {
7598
7701
  /**
7599
7702
  * The `Survey` object contains information about the survey, Pages, Questions, flow logic and etc.
7600
7703
  */
7601
- export declare class SurveyModel extends Base implements ISurvey, ISurveyData, ISurveyImpl, ISurveyTriggerOwner, ISurveyErrorOwner, ILocalizableOwner {
7704
+ export declare class SurveyModel extends SurveyElementCore implements ISurvey, ISurveyData, ISurveyImpl, ISurveyTriggerOwner, ISurveyErrorOwner {
7602
7705
  static readonly TemplateRendererComponentName: string;
7603
7706
  [index: string]: any;
7604
7707
  static platform: string;
@@ -7873,6 +7976,15 @@ export declare class SurveyModel extends Base implements ISurvey, ISurveyData, I
7873
7976
  * @see requiredText
7874
7977
  */
7875
7978
  onGetQuestionTitle: EventBase<SurveyModel>;
7979
+ /**
7980
+ * Use this event to change the element title tag name that renders by default.
7981
+ * <br/> `sender` - the survey object that fires the event.
7982
+ * <br/> `options.element` - an element (question, panel, page and survey) that SurveyJS is going to render.
7983
+ * <br/> `options.tagName` - an element title tagName that are used to render a title. You can change it from the default value.
7984
+ * @see showQuestionNumbers
7985
+ * @see requiredText
7986
+ */
7987
+ onGetTitleTagName: EventBase<SurveyModel>;
7876
7988
  /**
7877
7989
  * Use this event to change the question no in code. If you want to remove question numbering then set showQuestionNumbers to "off".
7878
7990
  * <br/> `sender` - the survey object that fires the event.
@@ -8335,6 +8447,7 @@ export declare class SurveyModel extends Base implements ISurvey, ISurveyData, I
8335
8447
  getCss(): any;
8336
8448
  get css(): any;
8337
8449
  set css(value: any);
8450
+ get cssTitle(): string;
8338
8451
  get cssNavigationComplete(): string;
8339
8452
  get cssNavigationPreview(): string;
8340
8453
  get cssNavigationEdit(): string;
@@ -8607,20 +8720,6 @@ export declare class SurveyModel extends Base implements ISurvey, ISurveyData, I
8607
8720
  * Returns the text that is displayed when there are no any visible pages and questiona.
8608
8721
  */
8609
8722
  get emptySurveyText(): string;
8610
- /**
8611
- * Gets or sets a survey title.
8612
- * @see description
8613
- */
8614
- get title(): string;
8615
- set title(value: string);
8616
- get locTitle(): LocalizableString;
8617
- /**
8618
- * Gets or sets a survey description. The survey description is displayed under a survey title.
8619
- * @see title
8620
- */
8621
- get description(): string;
8622
- set description(value: string);
8623
- get locDescription(): LocalizableString;
8624
8723
  /**
8625
8724
  * Gets or sets a survey logo.
8626
8725
  * @see title
@@ -8651,6 +8750,7 @@ export declare class SurveyModel extends Base implements ISurvey, ISurveyData, I
8651
8750
  get isLogoAfter(): boolean;
8652
8751
  get logoClassNames(): string;
8653
8752
  get renderedHasTitle(): boolean;
8753
+ get hasTitle(): boolean;
8654
8754
  get renderedHasLogo(): boolean;
8655
8755
  get renderedHasHeader(): boolean;
8656
8756
  /**
@@ -8758,6 +8858,7 @@ export declare class SurveyModel extends Base implements ISurvey, ISurveyData, I
8758
8858
  get editText(): string;
8759
8859
  set editText(newValue: string);
8760
8860
  get locEditText(): LocalizableString;
8861
+ getElementTitleTagName(element: Base, tagName: string): string;
8761
8862
  /**
8762
8863
  * Set the pattern for question title. Default is "numTitleRequire", 1. What is your name? *,
8763
8864
  * You can set it to numRequireTitle: 1. * What is your name?
@@ -9349,6 +9450,7 @@ export declare class SurveyModel extends Base implements ISurvey, ISurveyData, I
9349
9450
  */
9350
9451
  clearFiles(question: IQuestion, name: string, value: any, fileName: string, callback: (status: string, data: any) => any): void;
9351
9452
  updateChoicesFromServer(question: IQuestion, choices: Array<ItemValue>, serverResult: any): Array<ItemValue>;
9453
+ loadedChoicesFromServer(question: IQuestion): void;
9352
9454
  protected createSurveyService(): dxSurveyService;
9353
9455
  protected uploadFilesCore(name: string, files: File[], uploadingCallback: (status: string, data: any) => any): void;
9354
9456
  getPage(index: number): PageModel;
@@ -10421,10 +10523,10 @@ export declare class DragDropSurveyElements extends DragDropCore<any> {
10421
10523
  protected ghostSurveyElement: IElement;
10422
10524
  protected get draggedElementType(): string;
10423
10525
  startDragToolboxItem(event: PointerEvent, draggedElementJson: JsonObject): void;
10424
- protected createElementFromJson(json: object): any;
10425
- protected getShortcutText(draggedElement: any): any;
10526
+ protected createElementFromJson(json: object): HTMLElement;
10527
+ protected getShortcutText(draggedElement: any): string;
10426
10528
  protected getDropTargetByDataAttributeValue(dataAttributeValue: string, dropTargetNode: HTMLElement, event: PointerEvent): any;
10427
- protected isDropTargetValid(dropTarget: any, isBottom: boolean): boolean;
10529
+ protected isDropTargetValid(dropTarget: SurveyElement, isBottom: boolean): boolean;
10428
10530
  protected isDropTargetDoesntChanged(newIsBottom: boolean): boolean;
10429
10531
  protected findDeepestDropTargetChild(parent: HTMLElement): HTMLElement;
10430
10532
  protected afterDragOver(): void;
@@ -10439,10 +10541,12 @@ export declare class DragDropSurveyElements extends DragDropCore<any> {
10439
10541
  export declare class DragDropChoices extends DragDropCore<QuestionSelectBase> {
10440
10542
  protected get draggedElementType(): string;
10441
10543
  protected getShortcutText(draggedElement: ItemValue): string;
10544
+ protected createDraggedElementShortcut(text: string, draggedElementNode: HTMLElement): HTMLElement;
10442
10545
  protected findDropTargetNodeByDragOverNode(dragOverNode: HTMLElement): HTMLElement;
10443
10546
  protected getDropTargetByDataAttributeValue(dataAttributeValue: string): ItemValue;
10444
10547
  protected isDropTargetValid(dropTarget: ItemValue, isBottom: boolean, dropTargetNode?: HTMLElement): boolean;
10445
10548
  protected calculateIsBottom(clientY: number): boolean;
10549
+ protected afterDragOver(dropTargetNode: HTMLElement): void;
10446
10550
  protected doDrop(): any;
10447
10551
  }
10448
10552
 
@@ -10549,9 +10653,12 @@ export declare class DragDropRankingChoices extends DragDropChoices {
10549
10653
  protected createDraggedElementShortcut(text: string, draggedElementNode: HTMLElement): HTMLElement;
10550
10654
  protected getDropTargetByDataAttributeValue(dataAttributeValue: string): ItemValue;
10551
10655
  protected isDropTargetValid(dropTarget: ItemValue, isBottom: boolean, dropTargetNode?: HTMLElement): boolean;
10656
+ protected calculateIsBottom(clientY: number): boolean;
10552
10657
  protected afterDragOver(dropTargetNode: HTMLElement): void;
10553
10658
  protected ghostPositionChanged(): void;
10554
10659
  protected doDrop: () => any;
10660
+ protected handleEscapeButton: (event: KeyboardEvent) => void;
10661
+ protected doClear: () => void;
10555
10662
  }
10556
10663
 
10557
10664
  /**
@@ -10593,9 +10700,11 @@ export declare class QuestionTextBase extends Question {
10593
10700
  get renderedPlaceHolder(): string;
10594
10701
  protected setRenderedPlaceHolder(val: string): void;
10595
10702
  protected onReadOnlyChanged(): void;
10596
- endLoadingFromJson(): void;
10703
+ onSurveyLoad(): void;
10704
+ localeChanged(): void;
10597
10705
  protected calcRenderedPlaceHolder(): void;
10598
10706
  protected hasPlaceHolder(): boolean;
10707
+ getControlClass(): string;
10599
10708
  }
10600
10709
 
10601
10710
  export declare type VerticalPosition = "top" | "bottom" | "middle";
@@ -10629,7 +10738,7 @@ export declare abstract class DragDropCore<T> extends Base {
10629
10738
  protected ghostPositionChanged(): void;
10630
10739
  onBeforeDrop: EventBase<DragDropCore<T>>;
10631
10740
  onAfterDrop: EventBase<DragDropCore<T>>;
10632
- protected draggedElement: any;
10741
+ draggedElement: any;
10633
10742
  protected abstract get draggedElementType(): string;
10634
10743
  protected parentElement: T;
10635
10744
  dropTarget: any;
@@ -10647,14 +10756,17 @@ export declare abstract class DragDropCore<T> extends Base {
10647
10756
  protected afterDragOver(dropTargetNode?: HTMLElement): void;
10648
10757
  getGhostPosition(item: any): string;
10649
10758
  protected abstract isDropTargetValid(dropTarget: any, isBottom: boolean, dropTargetNode?: HTMLElement): boolean;
10759
+ protected handleEscapeButton: (event: KeyboardEvent) => void;
10650
10760
  protected banDropHere: () => void;
10651
10761
  protected doBanDropHere: () => void;
10762
+ protected getDataAttributeValueByNode(node: HTMLElement): string;
10652
10763
  protected getDropTargetByNode(dropTargetNode: HTMLElement, event: PointerEvent): any;
10653
10764
  protected abstract getDropTargetByDataAttributeValue(dataAttributeValue: string, dropTargetNode?: HTMLElement, event?: PointerEvent): any;
10654
10765
  protected calculateMiddleOfHTMLElement(HTMLElement: HTMLElement): number;
10655
10766
  protected calculateIsBottom(clientY: number, dropTargetNode?: HTMLElement): boolean;
10656
10767
  protected findDropTargetNodeByDragOverNode(dragOverNode: HTMLElement): HTMLElement;
10657
10768
  protected abstract doDrop(): any;
10769
+ protected clear: () => void;
10658
10770
  protected doClear(): void;
10659
10771
  }
10660
10772