survey-react 1.9.104 → 1.9.106

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
@@ -17,7 +17,7 @@ declare module "helpers" {
17
17
  static getUnbindValue(value: any): any;
18
18
  static createCopy(obj: any): any;
19
19
  static isConvertibleToNumber(value: any): boolean;
20
- static isValueObject(val: any): boolean;
20
+ static isValueObject(val: any, excludeArray?: boolean): boolean;
21
21
  static isNumber(value: any): boolean;
22
22
  static getNumber(value: any): number;
23
23
  private static prepareStringToNumber;
@@ -279,7 +279,9 @@ declare module "localizablestring" {
279
279
  private htmlValues;
280
280
  private renderedText;
281
281
  private calculatedTextValue;
282
- localizationName: string;
282
+ private _localizationName;
283
+ get localizationName(): string;
284
+ set localizationName(val: string);
283
285
  onGetTextCallback: (str: string) => string;
284
286
  onGetDefaultTextCallback: () => string;
285
287
  storeDefaultText: boolean;
@@ -308,8 +310,12 @@ declare module "localizablestring" {
308
310
  get textOrHtml(): string;
309
311
  get renderedHtml(): string;
310
312
  getLocaleText(loc: string): string;
311
- private getLocaleTextWithDefault;
313
+ private getLocaleTextCore;
314
+ private isLocaleTextEqualsWithDefault;
315
+ clear(): void;
316
+ clearLocale(loc?: string): void;
312
317
  setLocaleText(loc: string, value: string): void;
318
+ private isValueEmpty;
313
319
  private get curLocale();
314
320
  private canRemoveLocValue;
315
321
  private fireStrChanged;
@@ -1044,6 +1050,7 @@ declare module "actions/container" {
1044
1050
  defaultSizeMode: string;
1045
1051
  smallSizeMode: string;
1046
1052
  item: string;
1053
+ itemAsIcon: string;
1047
1054
  itemActive: string;
1048
1055
  itemPressed: string;
1049
1056
  itemIcon: string;
@@ -1156,6 +1163,7 @@ declare module "list" {
1156
1163
  private onFilterStringChanged;
1157
1164
  private scrollToItem;
1158
1165
  constructor(items: Array<IAction>, onSelectionChanged: (item: T, ...params: any[]) => void, allowSelection: boolean, selectedItem?: IAction, onFilterStringChangedCallback?: (text: string) => void, elementId?: string);
1166
+ setOnFilterStringChangedCallback(callback: (text: string) => void): void;
1159
1167
  setItems(items: Array<IAction>, sortByVisibleIndex?: boolean): void;
1160
1168
  protected onSet(): void;
1161
1169
  protected getDefaultCssClasses(): {
@@ -1327,7 +1335,7 @@ declare module "actions/action" {
1327
1335
  * The action item's icon size in pixels.
1328
1336
  * @see iconName
1329
1337
  */
1330
- iconSize?: number;
1338
+ iconSize?: number | string;
1331
1339
  /**
1332
1340
  * The action item's location in a matrix question's row.
1333
1341
  *
@@ -1464,6 +1472,7 @@ declare module "actions/action" {
1464
1472
  getEnabled(): boolean;
1465
1473
  setComponent(val: string): void;
1466
1474
  getComponent(): string;
1475
+ dispose(): void;
1467
1476
  }
1468
1477
  export class ActionDropdownViewModel {
1469
1478
  private item;
@@ -1525,6 +1534,7 @@ declare module "actions/adaptive-container" {
1525
1534
  minVisibleItemsCount: number;
1526
1535
  isResponsivenessDisabled: boolean;
1527
1536
  private hideItemsGreaterN;
1537
+ private getActionsToHide;
1528
1538
  private getVisibleItemsCount;
1529
1539
  private updateItemMode;
1530
1540
  private static ContainerID;
@@ -1569,6 +1579,7 @@ declare module "defaultCss/defaultV2Css" {
1569
1579
  rootMobile: string;
1570
1580
  rootReadOnly: string;
1571
1581
  rootCompact: string;
1582
+ rootFitToContainer: string;
1572
1583
  rootBackgroundImage: string;
1573
1584
  container: string;
1574
1585
  header: string;
@@ -1584,6 +1595,7 @@ declare module "defaultCss/defaultV2Css" {
1584
1595
  clockTimerMinorText: string;
1585
1596
  clockTimerMajorText: string;
1586
1597
  bodyEmpty: string;
1598
+ bodyLoading: string;
1587
1599
  footer: string;
1588
1600
  title: string;
1589
1601
  description: string;
@@ -1594,6 +1606,7 @@ declare module "defaultCss/defaultV2Css" {
1594
1606
  navigationButton: string;
1595
1607
  bodyNavigationButton: string;
1596
1608
  completedPage: string;
1609
+ completedBeforePage: string;
1597
1610
  timerRoot: string;
1598
1611
  navigation: {
1599
1612
  complete: string;
@@ -1867,6 +1880,9 @@ declare module "defaultCss/defaultV2Css" {
1867
1880
  content: string;
1868
1881
  row: string;
1869
1882
  cell: string;
1883
+ cellError: string;
1884
+ cellErrorTop: string;
1885
+ cellErrorBottom: string;
1870
1886
  };
1871
1887
  dropdown: {
1872
1888
  root: string;
@@ -2125,6 +2141,8 @@ declare module "defaultCss/defaultV2Css" {
2125
2141
  small: string;
2126
2142
  controls: string;
2127
2143
  placeholder: string;
2144
+ canvas: string;
2145
+ backgroundImage: string;
2128
2146
  clearButton: string;
2129
2147
  clearButtonIconId: string;
2130
2148
  };
@@ -2285,6 +2303,7 @@ declare module "trigger" {
2285
2303
  protected isExecutingOnNextPage: boolean;
2286
2304
  checkExpression(isOnNextPage: boolean, isOnComplete: boolean, keys: any, values: HashTable<any>, properties?: HashTable<any>): void;
2287
2305
  check(value: any): void;
2306
+ get requireValidQuestion(): boolean;
2288
2307
  private perform;
2289
2308
  private triggerResult;
2290
2309
  protected onSuccess(values: HashTable<any>, properties: HashTable<any>): void;
@@ -2340,6 +2359,7 @@ declare module "trigger" {
2340
2359
  export class SurveyTriggerComplete extends SurveyTrigger {
2341
2360
  constructor();
2342
2361
  getType(): string;
2362
+ get requireValidQuestion(): boolean;
2343
2363
  protected isRealExecution(): boolean;
2344
2364
  protected onSuccess(values: HashTable<any>, properties: HashTable<any>): void;
2345
2365
  protected onFailure(): void;
@@ -2366,6 +2386,7 @@ declare module "trigger" {
2366
2386
  export class SurveyTriggerSkip extends SurveyTrigger {
2367
2387
  constructor();
2368
2388
  getType(): string;
2389
+ get requireValidQuestion(): boolean;
2369
2390
  get gotoName(): string;
2370
2391
  set gotoName(val: string);
2371
2392
  protected canBeExecuted(isOnNextPage: boolean): boolean;
@@ -2650,7 +2671,7 @@ declare module "panel" {
2650
2671
  endLoadingFromJson(): void;
2651
2672
  showTitle: boolean;
2652
2673
  get hasTitle(): boolean;
2653
- delete(): void;
2674
+ delete(doDispose?: boolean): void;
2654
2675
  protected removeFromParent(): void;
2655
2676
  protected canShowTitle(): boolean;
2656
2677
  showDescription: boolean;
@@ -3126,7 +3147,8 @@ declare module "panel" {
3126
3147
  }
3127
3148
  }
3128
3149
  declare module "question_file" {
3129
- import { Question } from "question";
3150
+ import { IPlainDataOptions } from "base-interfaces";
3151
+ import { IQuestionPlainData, Question } from "question";
3130
3152
  import { EventBase } from "base";
3131
3153
  import { SurveyError } from "survey-error";
3132
3154
  import { ActionContainer } from "actions/container";
@@ -3248,6 +3270,8 @@ declare module "question_file" {
3248
3270
  loadingFileTitle: string;
3249
3271
  chooseFileTitle: string;
3250
3272
  dragAreaPlaceholder: string;
3273
+ renderedPlaceholderValue: string;
3274
+ get renderedPlaceholder(): string;
3251
3275
  get inputTitle(): string;
3252
3276
  get chooseButtonText(): string;
3253
3277
  clear(doneCallback?: () => void): void;
@@ -3272,12 +3296,7 @@ declare module "question_file" {
3272
3296
  protected stateChanged(state: string): void;
3273
3297
  private allFilesOk;
3274
3298
  private isFileImage;
3275
- getPlainData(options?: {
3276
- includeEmpty?: boolean;
3277
- calculations?: Array<{
3278
- propertyName: string;
3279
- }>;
3280
- }): import("question").IQuestionPlainData;
3299
+ getPlainData(options?: IPlainDataOptions): IQuestionPlainData;
3281
3300
  getChooseFileCss(): string;
3282
3301
  getReadOnlyFileCss(): string;
3283
3302
  get fileRootCss(): string;
@@ -3480,8 +3499,8 @@ declare module "choicesRestful" {
3480
3499
  }
3481
3500
  declare module "question_baseselect" {
3482
3501
  import { SurveyError } from "survey-error";
3483
- import { ISurveyImpl, ISurvey, ISurveyData } from "base-interfaces";
3484
- import { Question } from "question";
3502
+ import { ISurveyImpl, ISurvey, ISurveyData, IPlainDataOptions } from "base-interfaces";
3503
+ import { IQuestionPlainData, Question } from "question";
3485
3504
  import { ItemValue } from "itemvalue";
3486
3505
  import { ChoicesRestful } from "choicesRestful";
3487
3506
  import { LocalizableString } from "localizablestring";
@@ -3635,8 +3654,7 @@ declare module "question_baseselect" {
3635
3654
  protected rendredValueToDataCore(val: any): any;
3636
3655
  protected needConvertRenderedOtherToDataValue(): boolean;
3637
3656
  protected updateSelectedItemValues(): void;
3638
- protected updateSingleSelectedItemValues(): void;
3639
- protected updateMultipleSelectedItemValues(): void;
3657
+ private setCustomValuesIntoItems;
3640
3658
  protected hasUnknownValue(val: any, includeOther?: boolean, isFilteredChoices?: boolean, checkEmptyValue?: boolean): boolean;
3641
3659
  protected isValueDisabled(val: any): boolean;
3642
3660
  /**
@@ -3799,16 +3817,10 @@ declare module "question_baseselect" {
3799
3817
  protected canShowOptionItem(item: ItemValue, isAddAll: boolean, hasItem: boolean): boolean;
3800
3818
  isItemInList(item: ItemValue): boolean;
3801
3819
  protected get isAddDefaultItems(): boolean;
3802
- getPlainData(options?: {
3803
- includeEmpty?: boolean;
3804
- includeQuestionTypes?: boolean;
3805
- calculations?: Array<{
3806
- propertyName: string;
3807
- }>;
3808
- }): import("question").IQuestionPlainData;
3820
+ getPlainData(options?: IPlainDataOptions): IQuestionPlainData;
3809
3821
  protected getDisplayValueCore(keysAsText: boolean, value: any): any;
3810
3822
  protected getDisplayValueEmpty(): string;
3811
- protected getChoicesDisplayValue(items: ItemValue[], val: any): any;
3823
+ private getChoicesDisplayValue;
3812
3824
  protected getDisplayArrayValue(keysAsText: boolean, value: any, onGetValueCallback?: (index: number) => any): string;
3813
3825
  private getItemDisplayValue;
3814
3826
  private getFilteredChoices;
@@ -4222,6 +4234,7 @@ declare module "question_matrixdropdowncolumn" {
4222
4234
  onColumnPropertyChanged(column: MatrixDropdownColumn, name: string, newValue: any): void;
4223
4235
  onColumnItemValuePropertyChanged(column: MatrixDropdownColumn, propertyName: string, obj: ItemValue, name: string, newValue: any, oldValue: any): void;
4224
4236
  onShowInMultipleColumnsChanged(column: MatrixDropdownColumn): void;
4237
+ onColumnVisibilityChanged(column: MatrixDropdownColumn): void;
4225
4238
  getCellType(): string;
4226
4239
  getCustomCellType(column: MatrixDropdownColumn, row: MatrixDropdownRowModelBase, cellType: string): string;
4227
4240
  onColumnCellTypeChanged(column: MatrixDropdownColumn): void;
@@ -4232,8 +4245,8 @@ declare module "question_matrixdropdowncolumn" {
4232
4245
  private templateQuestionValue;
4233
4246
  private colOwnerValue;
4234
4247
  private indexValue;
4235
- private _isVisible;
4236
4248
  private _hasVisibleCell;
4249
+ private _visiblechoices;
4237
4250
  constructor(name: string, title?: string);
4238
4251
  getOriginalObj(): Base;
4239
4252
  getClassNameProperty(): string;
@@ -4253,9 +4266,15 @@ declare module "question_matrixdropdowncolumn" {
4253
4266
  get templateQuestion(): Question;
4254
4267
  get value(): string;
4255
4268
  get isVisible(): boolean;
4256
- setIsVisible(newVal: boolean): void;
4269
+ get isColumnVisible(): boolean;
4270
+ get visible(): boolean;
4271
+ set visible(val: boolean);
4257
4272
  get hasVisibleCell(): boolean;
4258
4273
  set hasVisibleCell(newVal: boolean);
4274
+ getVisibleMultipleChoices(): Array<ItemValue>;
4275
+ get getVisibleChoicesInCell(): Array<any>;
4276
+ setVisibleChoicesInCell(val: Array<any>): void;
4277
+ get isFilteredMultipleColumns(): boolean;
4259
4278
  get name(): string;
4260
4279
  set name(val: string);
4261
4280
  get title(): string;
@@ -4336,6 +4355,7 @@ declare module "question_matrixdropdowncolumn" {
4336
4355
  protected propertyValueChanged(name: string, oldValue: any, newValue: any): void;
4337
4356
  private doItemValuePropertyChanged;
4338
4357
  private doShowInMultipleColumnsChanged;
4358
+ private doColumnVisibilityChanged;
4339
4359
  private getProperties;
4340
4360
  private removeProperties;
4341
4361
  private addProperties;
@@ -4364,7 +4384,7 @@ declare module "dragdrop/dom-adapter" {
4364
4384
  }
4365
4385
  export class DragDropDOMAdapter implements IDragDropDOMAdapter {
4366
4386
  private dd;
4367
- private longTap?;
4387
+ private longTap;
4368
4388
  static PreventScrolling: boolean;
4369
4389
  private timeoutID;
4370
4390
  private startX;
@@ -4372,6 +4392,7 @@ declare module "dragdrop/dom-adapter" {
4372
4392
  private currentX;
4373
4393
  private currentY;
4374
4394
  private savedTargetNode;
4395
+ private savedTargetNodeParent;
4375
4396
  private scrollIntervalId;
4376
4397
  constructor(dd: IDragDropEngine, longTap?: boolean);
4377
4398
  private get rootElement();
@@ -4520,6 +4541,7 @@ declare module "question_matrixdropdownrendered" {
4520
4541
  get headers(): string;
4521
4542
  getTitle(): string;
4522
4543
  calculateFinalClassName(matrixCssClasses: any): string;
4544
+ focusIn(): void;
4523
4545
  }
4524
4546
  export class QuestionMatrixDropdownRenderedRow extends Base {
4525
4547
  cssClasses: any;
@@ -4956,9 +4978,9 @@ declare module "textPreProcessor" {
4956
4978
  }
4957
4979
  declare module "question_paneldynamic" {
4958
4980
  import { HashTable } from "helpers";
4959
- import { IElement, IQuestion, IPanel, ISurveyData, ISurvey, ISurveyImpl, ITextProcessor, IProgressInfo } from "base-interfaces";
4981
+ import { IElement, IQuestion, IPanel, ISurveyData, ISurvey, ISurveyImpl, ITextProcessor, IProgressInfo, IPlainDataOptions } from "base-interfaces";
4960
4982
  import { LocalizableString } from "localizablestring";
4961
- import { Question, IConditionObject } from "question";
4983
+ import { Question, IConditionObject, IQuestionPlainData } from "question";
4962
4984
  import { PanelModel } from "panel";
4963
4985
  import { SurveyError } from "survey-error";
4964
4986
  import { ActionContainer } from "actions/container";
@@ -5020,7 +5042,9 @@ declare module "question_paneldynamic" {
5020
5042
  panelCountChangedCallback: () => void;
5021
5043
  currentIndexChangedCallback: () => void;
5022
5044
  constructor(name: string);
5045
+ get isCompositeQuestion(): boolean;
5023
5046
  get hasSingleInput(): boolean;
5047
+ get isContainer(): boolean;
5024
5048
  getFirstQuestionToFocus(withError: boolean): Question;
5025
5049
  setSurveyImpl(value: ISurveyImpl, isLight?: boolean): void;
5026
5050
  private assignOnPropertyChangedToTemplate;
@@ -5028,7 +5052,6 @@ declare module "question_paneldynamic" {
5028
5052
  private onTemplateElementPropertyChanged;
5029
5053
  private get useTemplatePanel();
5030
5054
  getType(): string;
5031
- get isCompositeQuestion(): boolean;
5032
5055
  clearOnDeletingContainer(): void;
5033
5056
  get isAllowTitleLeft(): boolean;
5034
5057
  removeElement(element: IElement): boolean;
@@ -5526,12 +5549,7 @@ declare module "question_paneldynamic" {
5526
5549
  private static maxCheckCount;
5527
5550
  setPanelItemData(item: ISurveyData, name: string, val: any): void;
5528
5551
  getRootData(): ISurveyData;
5529
- getPlainData(options?: {
5530
- includeEmpty?: boolean;
5531
- calculations?: Array<{
5532
- propertyName: string;
5533
- }>;
5534
- }): import("question").IQuestionPlainData;
5552
+ getPlainData(options?: IPlainDataOptions): IQuestionPlainData;
5535
5553
  updateElementCss(reNew?: boolean): void;
5536
5554
  get progressText(): string;
5537
5555
  get progress(): string;
@@ -5573,7 +5591,7 @@ declare module "question_paneldynamic" {
5573
5591
  declare module "survey-events-api" {
5574
5592
  import { IAction } from "actions/action";
5575
5593
  import { Base } from "base";
5576
- import { IElement, ISurveyElement } from "base-interfaces";
5594
+ import { IElement, ISurveyElement, IValueItemCustomPropValues } from "base-interfaces";
5577
5595
  import { ItemValue } from "itemvalue";
5578
5596
  import { PageModel } from "page";
5579
5597
  import { PanelModel, PanelModelBase } from "panel";
@@ -5977,23 +5995,23 @@ declare module "survey-events-api" {
5977
5995
  }
5978
5996
  export interface ProgressTextEvent {
5979
5997
  /**
5980
- * a number of required questions that have input(s) and an user has answered
5998
+ * The number of questions with input fields. [Image](https://surveyjs.io/form-library/examples/add-image-and-video-to-survey/), [HTML](https://surveyjs.io/form-library/examples/questiontype-html/), and [Expression](https://surveyjs.io/form-library/examples/questiontype-expression/) questions are not counted.
5981
5999
  */
5982
- requiredAnsweredQuestionCount: number;
6000
+ questionCount: number;
5983
6001
  /**
5984
- * a number of required questions that have input(s). We do not count html or expression questions
6002
+ * The number of answered questions.
5985
6003
  */
5986
- requiredQuestionCount: number;
6004
+ answeredQuestionCount: number;
5987
6005
  /**
5988
- * a number of questions that have input(s) and an user has answered
6006
+ * The number of questions marked as required.
5989
6007
  */
5990
- answeredQuestionCount: number;
6008
+ requiredQuestionCount: number;
5991
6009
  /**
5992
- * a number of questions that have input(s). We do not count html or expression questions
6010
+ * The number of answered questions marked as required.
5993
6011
  */
5994
- questionCount: number;
6012
+ requiredAnsweredQuestionCount: number;
5995
6013
  /**
5996
- * a progress text, that SurveyJS will render in progress bar
6014
+ * Progress text rendered in the [progress bar](#showProgressBar). You can change this parameter's value.
5997
6015
  */
5998
6016
  text: string;
5999
6017
  }
@@ -6209,7 +6227,7 @@ declare module "survey-events-api" {
6209
6227
  /**
6210
6228
  * A method that you should call to assign display texts to the question.
6211
6229
  */
6212
- setItems: (displayValues: Array<string>) => void;
6230
+ setItems: (displayValues: Array<string>, ...customValues: Array<IValueItemCustomPropValues>) => void;
6213
6231
  /**
6214
6232
  * An array of one (in Dropdown) or more (in Tag Box) default values.
6215
6233
  */
@@ -6404,6 +6422,20 @@ declare module "survey-events-api" {
6404
6422
  */
6405
6423
  panel: PanelModel;
6406
6424
  }
6425
+ export interface DynamicPanelGetTabTitleEvent extends PanelDynamicQuestionEventMixin {
6426
+ /**
6427
+ * A panel whose tab title is being rendered.
6428
+ */
6429
+ panel: PanelModel;
6430
+ /**
6431
+ * The panel's index in the [`visiblePanels`](https://surveyjs.io/form-library/documentation/api-reference/dynamic-panel-model#visiblePanels) array of the Dynamic Panel.
6432
+ */
6433
+ visiblePanelIndex: number;
6434
+ /**
6435
+ * A tab title. You can change this parameter's value.
6436
+ */
6437
+ title: string;
6438
+ }
6407
6439
  export interface IsAnswerCorrectEvent extends QuestionEventMixin {
6408
6440
  /**
6409
6441
  * you may change the default number of correct or incorrect answers in the question, for example for matrix, where each row is a quiz question
@@ -6934,7 +6966,7 @@ declare module "question_textbase" {
6934
6966
  localeChanged(): void;
6935
6967
  setSurveyImpl(value: ISurveyImpl, isLight?: boolean): void;
6936
6968
  protected calcRenderedPlaceholder(): void;
6937
- protected hasPlaceHolder(): boolean;
6969
+ protected hasPlaceholder(): boolean;
6938
6970
  protected setNewValue(newValue: any): void;
6939
6971
  protected setQuestionValue(newValue: any, updateIsAnswered?: boolean): void;
6940
6972
  disableNativeUndoRedo: boolean;
@@ -7071,7 +7103,7 @@ declare module "question_text" {
7071
7103
  protected canRunValidators(isOnValueChanged: boolean): boolean;
7072
7104
  protected setNewValue(newValue: any): void;
7073
7105
  protected correctValueType(newValue: any): any;
7074
- protected hasPlaceHolder(): boolean;
7106
+ protected hasPlaceholder(): boolean;
7075
7107
  isReadOnlyRenderDiv(): boolean;
7076
7108
  get inputStyle(): any;
7077
7109
  private _isWaitingForEnter;
@@ -7130,6 +7162,7 @@ declare module "question_multipletext" {
7130
7162
  localeChanged(): void;
7131
7163
  locStrsChanged(): void;
7132
7164
  setData(data: IMultipleTextData): void;
7165
+ focusIn: () => void;
7133
7166
  /**
7134
7167
  * Set this property to true, to make the item a required. If a user doesn't fill the item then a validation error will be generated.
7135
7168
  */
@@ -7215,12 +7248,12 @@ declare module "question_multipletext" {
7215
7248
  */
7216
7249
  export class QuestionMultipleTextModel extends Question implements IMultipleTextData, IPanel {
7217
7250
  static addDefaultItems(question: QuestionMultipleTextModel): void;
7218
- colCountChangedCallback: () => void;
7219
7251
  constructor(name: string);
7220
7252
  getType(): string;
7221
7253
  setSurveyImpl(value: ISurveyImpl, isLight?: boolean): void;
7222
7254
  get isAllowTitleLeft(): boolean;
7223
7255
  get hasSingleInput(): boolean;
7256
+ get isContainer(): boolean;
7224
7257
  get id(): string;
7225
7258
  set id(val: string);
7226
7259
  onSurveyLoad(): void;
@@ -7271,6 +7304,8 @@ declare module "question_multipletext" {
7271
7304
  get itemErrorLocation(): string;
7272
7305
  set itemErrorLocation(val: string);
7273
7306
  getQuestionErrorLocation(): string;
7307
+ get showItemErrorOnTop(): boolean;
7308
+ get showItemErrorOnBottom(): boolean;
7274
7309
  getChildErrorLocation(child: Question): string;
7275
7310
  protected isNewValueCorrect(val: any): boolean;
7276
7311
  supportGoNextPageAutomatic(): boolean;
@@ -7286,6 +7321,9 @@ declare module "question_multipletext" {
7286
7321
  */
7287
7322
  get itemSize(): number;
7288
7323
  set itemSize(val: number);
7324
+ rows: Array<MutlipleTextRow>;
7325
+ protected onRowCreated(row: MutlipleTextRow): MutlipleTextRow;
7326
+ private calcVisibleRows;
7289
7327
  getRows(): Array<any>;
7290
7328
  private isMultipleItemValueChanging;
7291
7329
  protected onValueChanged(): void;
@@ -7318,7 +7356,25 @@ declare module "question_multipletext" {
7318
7356
  getItemLabelCss(item: MultipleTextItemModel): string;
7319
7357
  getItemCss(): string;
7320
7358
  getItemTitleCss(): string;
7321
- protected getIsTooltipErrorInsideSupported(): boolean;
7359
+ }
7360
+ export class MutlipleTextRow extends Base {
7361
+ isVisible: boolean;
7362
+ cells: Array<MultipleTextCell>;
7363
+ }
7364
+ export class MutlipleTextErrorRow extends MutlipleTextRow {
7365
+ onAfterCreated(): void;
7366
+ }
7367
+ export class MultipleTextCell {
7368
+ item: MultipleTextItemModel;
7369
+ protected question: QuestionMultipleTextModel;
7370
+ constructor(item: MultipleTextItemModel, question: QuestionMultipleTextModel);
7371
+ isErrorsCell: boolean;
7372
+ protected getClassName(): string;
7373
+ get className(): string;
7374
+ }
7375
+ export class MultipleTextErrorCell extends MultipleTextCell {
7376
+ isErrorsCell: boolean;
7377
+ protected getClassName(): string;
7322
7378
  }
7323
7379
  }
7324
7380
  declare module "themes" {
@@ -7338,7 +7394,7 @@ declare module "themes" {
7338
7394
  declare module "survey" {
7339
7395
  import { JsonError } from "jsonobject";
7340
7396
  import { Base, EventBase } from "base";
7341
- import { ISurvey, ISurveyData, ISurveyImpl, ITextProcessor, IQuestion, IPanel, IElement, IPage, ISurveyErrorOwner, ISurveyElement, IProgressInfo, IFindElement, ISurveyLayoutElement, LayoutElementContainer } from "base-interfaces";
7397
+ import { ISurvey, ISurveyData, ISurveyImpl, ITextProcessor, IQuestion, IPanel, IElement, IPage, ISurveyErrorOwner, ISurveyElement, IProgressInfo, IFindElement, ISurveyLayoutElement, IPlainDataOptions, LayoutElementContainer, IValueItemCustomPropValues } from "base-interfaces";
7342
7398
  import { SurveyElementCore } from "survey-element";
7343
7399
  import { ISurveyTriggerOwner, SurveyTrigger, Trigger } from "trigger";
7344
7400
  import { CalculatedValue } from "calculatedValue";
@@ -7356,7 +7412,7 @@ declare module "survey" {
7356
7412
  import { ActionContainer } from "actions/container";
7357
7413
  import { QuestionPanelDynamicModel } from "question_paneldynamic";
7358
7414
  import { Notifier } from "notifier";
7359
- import { TriggerExecutedEvent, CompletingEvent, CompleteEvent, ShowingPreviewEvent, NavigateToUrlEvent, CurrentPageChangingEvent, CurrentPageChangedEvent, ValueChangingEvent, ValueChangedEvent, VariableChangedEvent, QuestionVisibleChangedEvent, PageVisibleChangedEvent, PanelVisibleChangedEvent, QuestionCreatedEvent, QuestionAddedEvent, QuestionRemovedEvent, PanelAddedEvent, PanelRemovedEvent, PageAddedEvent, ValidateQuestionEvent, SettingQuestionErrorsEvent, ValidatePanelEvent, ErrorCustomTextEvent, ValidatedErrorsOnCurrentPageEvent, ProcessHtmlEvent, GetQuestionTitleEvent, GetTitleTagNameEvent, GetQuestionNoEvent, ProgressTextEvent, TextMarkdownEvent, TextRenderAsEvent, SendResultEvent, GetResultEvent, UploadFilesEvent, DownloadFileEvent, ClearFilesEvent, LoadChoicesFromServerEvent, ProcessTextValueEvent, UpdateQuestionCssClassesEvent, UpdatePanelCssClassesEvent, UpdatePageCssClassesEvent, UpdateChoiceItemCssEvent, AfterRenderSurveyEvent, AfterRenderHeaderEvent, AfterRenderPageEvent, AfterRenderQuestionEvent, AfterRenderQuestionInputEvent, AfterRenderPanelEvent, FocusInQuestionEvent, FocusInPanelEvent, ShowingChoiceItemEvent, ChoicesLazyLoadEvent, GetChoiceDisplayValueEvent, MatrixRowAddedEvent, MatrixBeforeRowAddedEvent, MatrixRowRemovingEvent, MatrixRowRemovedEvent, MatrixAllowRemoveRowEvent, MatrixCellCreatingEvent, MatrixCellCreatedEvent, MatrixAfterCellRenderEvent, MatrixCellValueChangedEvent, MatrixCellValueChangingEvent, MatrixCellValidateEvent, DynamicPanelModifiedEvent, DynamicPanelRemovingEvent, TimerPanelInfoTextEvent, DynamicPanelItemValueChangedEvent, IsAnswerCorrectEvent, DragDropAllowEvent, ScrollingElementToTopEvent, GetQuestionTitleActionsEvent, GetPanelTitleActionsEvent, GetPageTitleActionsEvent, GetPanelFooterActionsEvent, GetMatrixRowActionsEvent, ElementContentVisibilityChangedEvent, GetExpressionDisplayValueEvent, ServerValidateQuestionsEvent, MultipleTextItemAddedEvent, MatrixColumnAddedEvent, GetQuestionDisplayValueEvent, PopupVisibleChangedEvent } from "survey-events-api";
7415
+ import { TriggerExecutedEvent, CompletingEvent, CompleteEvent, ShowingPreviewEvent, NavigateToUrlEvent, CurrentPageChangingEvent, CurrentPageChangedEvent, ValueChangingEvent, ValueChangedEvent, VariableChangedEvent, QuestionVisibleChangedEvent, PageVisibleChangedEvent, PanelVisibleChangedEvent, QuestionCreatedEvent, QuestionAddedEvent, QuestionRemovedEvent, PanelAddedEvent, PanelRemovedEvent, PageAddedEvent, ValidateQuestionEvent, SettingQuestionErrorsEvent, ValidatePanelEvent, ErrorCustomTextEvent, ValidatedErrorsOnCurrentPageEvent, ProcessHtmlEvent, GetQuestionTitleEvent, GetTitleTagNameEvent, GetQuestionNoEvent, ProgressTextEvent, TextMarkdownEvent, TextRenderAsEvent, SendResultEvent, GetResultEvent, UploadFilesEvent, DownloadFileEvent, ClearFilesEvent, LoadChoicesFromServerEvent, ProcessTextValueEvent, UpdateQuestionCssClassesEvent, UpdatePanelCssClassesEvent, UpdatePageCssClassesEvent, UpdateChoiceItemCssEvent, AfterRenderSurveyEvent, AfterRenderHeaderEvent, AfterRenderPageEvent, AfterRenderQuestionEvent, AfterRenderQuestionInputEvent, AfterRenderPanelEvent, FocusInQuestionEvent, FocusInPanelEvent, ShowingChoiceItemEvent, ChoicesLazyLoadEvent, GetChoiceDisplayValueEvent, MatrixRowAddedEvent, MatrixBeforeRowAddedEvent, MatrixRowRemovingEvent, MatrixRowRemovedEvent, MatrixAllowRemoveRowEvent, MatrixCellCreatingEvent, MatrixCellCreatedEvent, MatrixAfterCellRenderEvent, MatrixCellValueChangedEvent, MatrixCellValueChangingEvent, MatrixCellValidateEvent, DynamicPanelModifiedEvent, DynamicPanelRemovingEvent, TimerPanelInfoTextEvent, DynamicPanelItemValueChangedEvent, DynamicPanelGetTabTitleEvent, IsAnswerCorrectEvent, DragDropAllowEvent, ScrollingElementToTopEvent, GetQuestionTitleActionsEvent, GetPanelTitleActionsEvent, GetPageTitleActionsEvent, GetPanelFooterActionsEvent, GetMatrixRowActionsEvent, ElementContentVisibilityChangedEvent, GetExpressionDisplayValueEvent, ServerValidateQuestionsEvent, MultipleTextItemAddedEvent, MatrixColumnAddedEvent, GetQuestionDisplayValueEvent, PopupVisibleChangedEvent } from "survey-events-api";
7360
7416
  import { QuestionMatrixDropdownModelBase } from "question_matrixdropdownbase";
7361
7417
  import { QuestionMatrixDynamicModel } from "question_matrixdynamic";
7362
7418
  import { QuestionFileModel } from "question_file";
@@ -7385,7 +7441,7 @@ declare module "survey" {
7385
7441
  *
7386
7442
  * Many question types allow respondents to leave comments. To enable this functionality, set a question's [`showCommentArea`](https://surveyjs.io/form-library/documentation/api-reference/checkbox-question-model#showCommentArea) property to `true`. Comment values are saved in a separate property. The property name is composed of the question `name` and `commentSuffix`.
7387
7443
  *
7388
- * Respondents can also leave a comment when they select "Other" in a single- or multi-select question, such as Dropdown or Checkboxes. The property name for the comment value is composed according to the same rules. However, you can use the question `name` as a key to store the comment value instead. Disable the [`storeOthersAsComment`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#storeOthersAsComment) property in this case.
7444
+ * Respondents can also leave comments when they select "Other" in choice-based questions, such as Dropdown or Checkboxes. The property name for the comment value is composed according to the same rules. However, you can use the question `name` as a key to store the comment value instead. Disable the [`storeOthersAsComment`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#storeOthersAsComment) property in this case.
7389
7445
  *
7390
7446
  * [View Demo](https://surveyjs.io/form-library/examples/create-checkboxes-question-in-javascript/ (linkStyle))
7391
7447
  */
@@ -7454,7 +7510,7 @@ declare module "survey" {
7454
7510
  *
7455
7511
  * For information on event handler parameters, refer to descriptions within the interface.
7456
7512
  *
7457
- * [Continue an Incomplete Survey](https://surveyjs.io/form-library/documentation/handle-survey-results-continue-incomplete (linkStyle))
7513
+ * Alternatively, you can handle the [`onCurrentPageChanged`](#onCurrentPageChanged) and [`onValueChanged`](#onValueChanged) events, as shown in the following demo: [Continue an Incomplete Survey](https://surveyjs.io/form-library/examples/survey-editprevious/).
7458
7514
  */
7459
7515
  onPartialSend: EventBase<SurveyModel, {}>;
7460
7516
  /**
@@ -7479,7 +7535,7 @@ declare module "survey" {
7479
7535
  */
7480
7536
  onValueChanging: EventBase<SurveyModel, ValueChangingEvent>;
7481
7537
  /**
7482
- * An event that is raised after a question value is changed
7538
+ * An event that is raised after a question value is changed.
7483
7539
  *
7484
7540
  * For information on event handler parameters, refer to descriptions within the interface.
7485
7541
  *
@@ -7674,7 +7730,8 @@ declare module "survey" {
7674
7730
  */
7675
7731
  onGetQuestionNo: EventBase<SurveyModel, GetQuestionNoEvent>;
7676
7732
  /**
7677
- * Use this event to change the progress text in code.
7733
+ * An event that is raised before the survey displays progress text. Handle this event to change the progress text in code.
7734
+ * @see showProgressBar
7678
7735
  * @see progressBarType
7679
7736
  */
7680
7737
  onProgressText: EventBase<SurveyModel, ProgressTextEvent>;
@@ -7966,6 +8023,10 @@ declare module "survey" {
7966
8023
  * An event that is raised after an item value is changed in a panel within a [Dynamic Panel](https://surveyjs.io/form-library/examples/questiontype-paneldynamic/) question.
7967
8024
  */
7968
8025
  onDynamicPanelItemValueChanged: EventBase<SurveyModel, DynamicPanelItemValueChangedEvent>;
8026
+ /**
8027
+ * An event that is raised before a [Dynamic Panel](https://surveyjs.io/form-library/examples/questiontype-paneldynamic/) renders [tab titles](https://surveyjs.io/form-library/documentation/api-reference/dynamic-panel-model#templateTabTitle). Use this event to change individual tab titles.
8028
+ */
8029
+ onGetDynamicPanelTabTitle: EventBase<SurveyModel, DynamicPanelGetTabTitleEvent>;
7969
8030
  /**
7970
8031
  * Use this event to define, whether an answer to a question is correct or not.
7971
8032
  * @see Question.value
@@ -8073,7 +8134,10 @@ declare module "survey" {
8073
8134
  get bodyCss(): string;
8074
8135
  get bodyContainerCss(): string;
8075
8136
  completedCss: string;
8137
+ completedBeforeCss: string;
8138
+ loadingBodyCss: string;
8076
8139
  containerCss: string;
8140
+ fitToContainer: boolean;
8077
8141
  private getNavigationCss;
8078
8142
  private lazyRenderingValue;
8079
8143
  showBrandInfo: boolean;
@@ -8140,7 +8204,7 @@ declare module "survey" {
8140
8204
  /**
8141
8205
  * Specifies whether to save survey results when respondents switch between pages. Handle the [`onPartialSend`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#onPartialSend) event to implement the save operation.
8142
8206
  *
8143
- * [Continue an Incomplete Survey](https://surveyjs.io/form-library/documentation/handle-survey-results-continue-incomplete (linkStyle))
8207
+ * Alternatively, you can handle the [`onCurrentPageChanged`](#onCurrentPageChanged) and [`onValueChanged`](#onValueChanged) events, as shown in the following demo: [Continue an Incomplete Survey](https://surveyjs.io/form-library/examples/survey-editprevious/).
8144
8208
  */
8145
8209
  get sendResultOnPageNext(): boolean;
8146
8210
  set sendResultOnPageNext(val: boolean);
@@ -8266,38 +8330,36 @@ declare module "survey" {
8266
8330
  beforeSettingPanelErrors(question: IPanel, errors: Array<SurveyError>): void;
8267
8331
  private maakeRequiredErrorsInvisibgle;
8268
8332
  /**
8269
- * Gets or sets the first question index. The first question index is '1' by default. You may start it from '100' or from 'A', by setting '100' or 'A' to this property.
8270
- * You can set the start index to "(1)" or "# A)" or "a)" to render question number as (1), # A) and a) accordingly.
8271
- * @see Question.title
8272
- * @see requiredText
8333
+ * Specifies the initial number or letter from which to start question numbering.
8273
8334
  *
8274
- * [View Demo](https://surveyjs.io/form-library/examples/survey-processtext/ (linkStyle))
8335
+ * [Question Numbers](https://surveyjs.io/form-library/documentation/design-survey/configure-question-titles#question-numbers (linkStyle))
8275
8336
  */
8276
8337
  get questionStartIndex(): string;
8277
8338
  set questionStartIndex(val: string);
8278
8339
  /**
8279
- * Gets or sets whether the "Others" option text is stored as question comment.
8340
+ * Specifies whether to store the "Other" option response in a separate property.
8341
+ *
8342
+ * Default value: `true`
8280
8343
  *
8281
- * By default the entered text in the "Others" input in the checkbox/radiogroup/dropdown is stored as `"question name " + "-Comment"`. The value itself is `"question name": "others"`.
8282
- * Set this property to `false`, to store the entered text directly in the `"question name"` key.
8283
- * @see commentSuffix
8344
+ * Respondents can leave comments when they select "Other" in choice-based questions, such as Dropdown or Checkboxes. Comment values are saved in a separate property. The property name is composed of the question `name` and [`commentSuffix`](#commentSuffix). However, you can use the question `name` as a key to store the comment value instead. Disable the `storeOthersAsComment` property in this case.
8345
+ * @see maxOthersLength
8284
8346
  */
8285
8347
  get storeOthersAsComment(): boolean;
8286
8348
  set storeOthersAsComment(val: boolean);
8287
8349
  /**
8288
- * Specifies the default maximum length for questions like text and comment, including matrix cell questions.
8350
+ * Specifies the maximum text length in textual questions ([Single-Line Input](https://surveyjs.io/form-library/examples/text-entry-question/), [Long Text](https://surveyjs.io/form-library/examples/add-open-ended-question-to-a-form/), [Multiple Textboxes](https://surveyjs.io/form-library/examples/multiple-text-box-question/)), measured in characters.
8289
8351
  *
8290
- * The default value is `0`, that means that the text and comment have the same max length as the standard HTML input - 524288 characters: https://www.w3schools.com/tags/att_input_maxlength.asp.
8352
+ * Default value: 0 (unlimited)
8353
+ *
8354
+ * You can override this setting for individual questions if you specify their [`maxLength`](https://surveyjs.io/form-library/documentation/api-reference/text-entry-question-model#maxLength) property.
8291
8355
  * @see maxOthersLength
8292
8356
  */
8293
8357
  get maxTextLength(): number;
8294
8358
  set maxTextLength(val: number);
8295
8359
  /**
8296
- * Gets or sets the default maximum length for question comments and others
8360
+ * Specifies the maximum text length for question comments. Applies to questions with the [`showCommentArea`](https://surveyjs.io/form-library/documentation/api-reference/question#showCommentArea) or [`showOtherItem`](https://surveyjs.io/form-library/documentation/api-reference/question#showOtherItem) property set to `true`.
8297
8361
  *
8298
- * The default value is `0`, that means that the question comments have the same max length as the standard HTML input - 524288 characters: https://www.w3schools.com/tags/att_input_maxlength.asp.
8299
- * @see Question.showCommentArea
8300
- * @see Question.showOtherItem
8362
+ * Default value: 0 (unlimited)
8301
8363
  * @see maxTextLength
8302
8364
  */
8303
8365
  get maxOthersLength(): number;
@@ -8684,9 +8746,9 @@ declare module "survey" {
8684
8746
  getUpdatedQuestionTitle(question: Question, title: string): string;
8685
8747
  getUpdatedQuestionNo(question: Question, no: string): string;
8686
8748
  /**
8687
- * Gets or sets whether the survey displays page numbers on pages titles.
8749
+ * Specifies whether page titles contain page numbers.
8688
8750
  *
8689
- * [View Demo](https://surveyjs.io/form-library/examples/survey-options/ (linkStyle))
8751
+ * [View Demo](https://surveyjs.io/form-library/examples/how-to-number-pages-and-questions/ (linkStyle))
8690
8752
  */
8691
8753
  get showPageNumbers(): boolean;
8692
8754
  set showPageNumbers(value: boolean);
@@ -8737,7 +8799,7 @@ declare module "survey" {
8737
8799
  get isShowProgressBarOnTop(): boolean;
8738
8800
  get isShowProgressBarOnBottom(): boolean;
8739
8801
  getProgressTypeComponent(): string;
8740
- getProgressCssClasses(): string;
8802
+ getProgressCssClasses(container?: string): string;
8741
8803
  private canShowProresBar;
8742
8804
  get processedTitle(): string;
8743
8805
  /**
@@ -8763,12 +8825,15 @@ declare module "survey" {
8763
8825
  get questionErrorLocation(): string;
8764
8826
  set questionErrorLocation(value: string);
8765
8827
  /**
8766
- * Gets or sets the question description position. The default value is `underTitle`.
8828
+ * Specifies where to display question descriptions.
8767
8829
  *
8768
- * The following options are available:
8830
+ * Possible values:
8831
+ *
8832
+ * - `"underTitle"` (default) - Displays descriptions under question titles.
8833
+ * - `"underInput"` - Displays descriptions under the interactive area.
8834
+ *
8835
+ * You can override this setting for individual questions if you specify their [`descriptionLocation`](https://surveyjs.io/form-library/documentation/api-reference/question#descriptionLocation) property.
8769
8836
  *
8770
- * - `underTitle` - show question description under the question title,
8771
- * - `underInput` - show question description under the question input instead of question title.
8772
8837
  */
8773
8838
  get questionDescriptionLocation(): string;
8774
8839
  set questionDescriptionLocation(value: string);
@@ -8830,14 +8895,7 @@ declare module "survey" {
8830
8895
  *
8831
8896
  * If you want to skip empty answers, pass an object with the `includeEmpty` property set to `false`.
8832
8897
  */
8833
- getPlainData(options?: {
8834
- includeEmpty?: boolean;
8835
- includeQuestionTypes?: boolean;
8836
- includeValues?: boolean;
8837
- calculations?: Array<{
8838
- propertyName: string;
8839
- }>;
8840
- }): Array<IQuestionPlainData>;
8898
+ getPlainData(options?: IPlainDataOptions): Array<IQuestionPlainData>;
8841
8899
  getFilteredValues(): any;
8842
8900
  private addCalculatedValuesIntoFilteredValues;
8843
8901
  getFilteredProperties(): any;
@@ -9378,7 +9436,7 @@ declare module "survey" {
9378
9436
  getChoiceDisplayValue(options: {
9379
9437
  question: Question;
9380
9438
  values: Array<any>;
9381
- setItems: (displayValues: Array<string>) => void;
9439
+ setItems: (displayValues: Array<string>, ...customValues: Array<IValueItemCustomPropValues>) => void;
9382
9440
  }): void;
9383
9441
  matrixBeforeRowAdded(options: any): void;
9384
9442
  matrixRowAdded(question: QuestionMatrixDynamicModel, row: any): void;
@@ -9401,6 +9459,7 @@ declare module "survey" {
9401
9459
  dynamicPanelRemoved(question: QuestionPanelDynamicModel, panelIndex: number, panel: PanelModel): void;
9402
9460
  dynamicPanelRemoving(question: QuestionPanelDynamicModel, panelIndex: number, panel: PanelModel): boolean;
9403
9461
  dynamicPanelItemValueChanged(question: IQuestion, options: any): void;
9462
+ dynamicPanelGetTabTitle(question: IQuestion, options: any): void;
9404
9463
  dragAndDropAllow(options: DragDropAllowEvent): boolean;
9405
9464
  elementContentVisibilityChanged(element: ISurveyElement): void;
9406
9465
  getUpdatedPanelFooterActions(panel: PanelModel, actions: Array<IAction>, question?: QuestionPanelDynamicModel): Array<IAction>;
@@ -9409,7 +9468,7 @@ declare module "survey" {
9409
9468
  private getUpdatedPanelTitleActions;
9410
9469
  private getUpdatedPageTitleActions;
9411
9470
  getUpdatedMatrixRowActions(question: QuestionMatrixDropdownModelBase, row: any, actions: Array<IAction>): IAction[];
9412
- scrollElementToTop(element: ISurveyElement, question: Question, page: PageModel, id: string): any;
9471
+ scrollElementToTop(element: ISurveyElement, question: Question, page: PageModel, id: string, scrollIfVisible?: boolean): any;
9413
9472
  /**
9414
9473
  * Uploads a file to server.
9415
9474
  *
@@ -9502,36 +9561,42 @@ declare module "survey" {
9502
9561
  */
9503
9562
  removePage(page: PageModel): void;
9504
9563
  /**
9505
- * Returns a question by its name.
9506
- * @param name a question name
9507
- * @param caseInsensitive
9564
+ * Returns a question with a specified [`name`](https://surveyjs.io/form-library/documentation/api-reference/question#name).
9565
+ * @param name A question name
9566
+ * @param caseInsensitive (Optional) A Boolean value that specifies case sensitivity when searching for the question. Default value: `false` (uppercase and lowercase letters are treated as distinct).
9567
+ * @returns A question with a specified name.
9568
+ * @see getAllQuestions
9508
9569
  * @see getQuestionByValueName
9509
9570
  */
9510
9571
  getQuestionByName(name: string, caseInsensitive?: boolean): Question;
9511
9572
  findQuestionByName(name: string): IQuestion;
9512
9573
  /**
9513
- * Returns a question by its value name
9514
- * @param valueName a question name
9515
- * @param caseInsensitive
9574
+ * Returns a question with a specified [`valueName`](https://surveyjs.io/form-library/documentation/api-reference/question#valueName).
9575
+ *
9576
+ * > Since `valueName` does not have to be unique, multiple questions can have the same `valueName` value. In this case, the `getQuestionByValueName()` method returns the first such question. If you need to get all questions with the same `valueName`, call the `getQuestionsByValueName()` method.
9577
+ * @param valueName A question's `valueName` property value.
9578
+ * @param caseInsensitive (Optional) A Boolean value that specifies case sensitivity when searching for the question. Default value: `false` (uppercase and lowercase letters are treated as distinct).
9579
+ * @returns A question with a specified `valueName`.
9580
+ * @see getAllQuestions
9516
9581
  * @see getQuestionByName
9517
- * @see getQuestionsByValueName
9518
- * @see Question.valueName
9519
9582
  */
9520
- getQuestionByValueName(valueName: string, caseInsensitive?: boolean): IQuestion;
9583
+ getQuestionByValueName(valueName: string, caseInsensitive?: boolean): Question;
9521
9584
  /**
9522
- * Returns all questions by their valueName. name property is used if valueName property is empty.
9523
- * @param valueName a question name
9524
- * @param caseInsensitive
9585
+ * Returns all questions with a specified [`valueName`](https://surveyjs.io/form-library/documentation/api-reference/question#valueName). If a question's `valueName` is undefined, its [`name`](https://surveyjs.io/form-library/documentation/api-reference/question#name) property is used.
9586
+ * @param valueName A question's `valueName` property value.
9587
+ * @param caseInsensitive (Optional) A Boolean value that specifies case sensitivity when searching for the questions. Default value: `false` (uppercase and lowercase letters are treated as distinct).
9588
+ * @returns An array of questions with a specified `valueName`.
9589
+ * @see getAllQuestions
9525
9590
  * @see getQuestionByName
9526
- * @see getQuestionByValueName
9527
- * @see Question.valueName
9528
9591
  */
9529
9592
  getQuestionsByValueName(valueName: string, caseInsensitive?: boolean): Array<Question>;
9530
9593
  getCalculatedValueByName(name: string): CalculatedValue;
9531
9594
  /**
9532
- * Gets a list of questions by their names.
9533
- * @param names an array of question names
9534
- * @param caseInsensitive
9595
+ * Returns an array of questions with specified [names](https://surveyjs.io/form-library/documentation/api-reference/question#name).
9596
+ * @param names An array of question names.
9597
+ * @param caseInsensitive (Optional) A Boolean value that specifies case sensitivity when searching for the questions. Default value: `false` (uppercase and lowercase letters are treated as distinct).
9598
+ * @returns An array of questions with specified names
9599
+ * @see getAllQuestions
9535
9600
  */
9536
9601
  getQuestionsByNames(names: string[], caseInsensitive?: boolean): IQuestion[];
9537
9602
  /**
@@ -9555,26 +9620,36 @@ declare module "survey" {
9555
9620
  */
9556
9621
  getPagesByNames(names: string[]): PageModel[];
9557
9622
  /**
9558
- * Returns a list of all questions in the survey.
9623
+ * Returns a list of all [questions](https://surveyjs.io/form-library/documentation/api-reference/question) in the survey.
9559
9624
  * @param visibleOnly A Boolean value that specifies whether to include only visible questions.
9560
9625
  * @param includeDesignTime For internal use.
9561
9626
  * @param includeNested A Boolean value that specifies whether to include nested questions, such as questions within matrix cells.
9627
+ * @returns An array of questions.
9628
+ * @see getQuestionByName
9562
9629
  */
9563
9630
  getAllQuestions(visibleOnly?: boolean, includeDesignTime?: boolean, includeNested?: boolean): Array<Question>;
9564
9631
  /**
9565
- * Returns quiz questions. All visible questions that has input(s) widgets.
9632
+ * Returns an array of quiz questions. A question counts if it is visible, has an input field, and specifies [`correctAnswer`](https://surveyjs.io/form-library/documentation/api-reference/checkbox-question-model#correctAnswer).
9633
+ *
9634
+ * For more information about quizzes, refer to the following tutorial: [Create a Quiz](https://surveyjs.io/form-library/documentation/design-survey/create-a-quiz).
9635
+ * @returns An array of quiz questions.
9566
9636
  * @see getQuizQuestionCount
9567
9637
  */
9568
9638
  getQuizQuestions(): Array<IQuestion>;
9569
9639
  /**
9570
- * Returns a panel by its name.
9571
- * @param name a panel name
9572
- * @param caseInsensitive
9573
- * @see getQuestionByName
9640
+ * Returns a [panel](https://surveyjs.io/form-library/documentation/api-reference/panel-model) with a specified [`name`](https://surveyjs.io/form-library/documentation/api-reference/panel-model#name).
9641
+ * @param name A panel name.
9642
+ * @param caseInsensitive (Optional) A Boolean value that specifies case sensitivity when searching for the panel. Default value: `false` (uppercase and lowercase letters are treated as distinct).
9643
+ * @returns A panel with a specified name.
9644
+ * @see getAllPanels
9574
9645
  */
9575
9646
  getPanelByName(name: string, caseInsensitive?: boolean): PanelModel;
9576
9647
  /**
9577
- * Returns a list of all survey's panels.
9648
+ * Returns a list of all [panels](https://surveyjs.io/form-library/documentation/api-reference/panel-model) in the survey.
9649
+ * @param visibleOnly A Boolean value that specifies whether to include only visible panels.
9650
+ * @param includeDesignTime For internal use.
9651
+ * @returns An array of panels.
9652
+ * @see getPanelByName
9578
9653
  */
9579
9654
  getAllPanels(visibleOnly?: boolean, includeDesignTime?: boolean): Array<IPanel>;
9580
9655
  /**
@@ -9603,6 +9678,7 @@ declare module "survey" {
9603
9678
  private triggerValues;
9604
9679
  private triggerKeys;
9605
9680
  private checkTriggers;
9681
+ private get hasRequiredValidQuestionTrigger();
9606
9682
  private doElementsOnLoad;
9607
9683
  private conditionValues;
9608
9684
  private get isRunningConditions();
@@ -9664,45 +9740,56 @@ declare module "survey" {
9664
9740
  questionCountByValueName(valueName: string): number;
9665
9741
  private clearInvisibleQuestionValues;
9666
9742
  /**
9667
- * Returns a variable value. Variable, unlike values, are not stored in the survey results.
9668
- * @param name A variable name
9669
- * @see SetVariable
9743
+ * Returns a variable value.
9744
+ *
9745
+ * [Variables help topic](https://surveyjs.io/form-library/documentation/design-survey/conditional-logic#variables (linkStyle))
9746
+ * @param name A variable name.
9747
+ * @return A variable value.
9748
+ * @see setVariable
9749
+ * @see getVariableNames
9670
9750
  */
9671
9751
  getVariable(name: string): any;
9672
9752
  /**
9673
- * Sets a variable value. Variable, unlike values, are not stored in the survey results.
9674
- * @param name A variable name
9675
- * @param newValue A variable new value
9676
- * @see GetVariable
9753
+ * Sets a variable value.
9754
+ *
9755
+ * [Variables help topic](https://surveyjs.io/form-library/documentation/design-survey/conditional-logic#variables (linkStyle))
9756
+ * @param name A variable name.
9757
+ * @param newValue A new variable value.
9758
+ * @see getVariable
9759
+ * @see getVariableNames
9677
9760
  */
9678
9761
  setVariable(name: string, newValue: any): void;
9679
9762
  /**
9680
- * Returns all variables in the survey. Use setVariable function to create a new variable.
9763
+ * Returns the names of all variables in the survey.
9764
+ *
9765
+ * [Variables help topic](https://surveyjs.io/form-library/documentation/design-survey/conditional-logic#variables (linkStyle))
9766
+ * @returns An array of variable names.
9681
9767
  * @see getVariable
9682
9768
  * @see setVariable
9683
9769
  */
9684
9770
  getVariableNames(): Array<string>;
9685
9771
  protected getUnbindValue(value: any): any;
9686
9772
  /**
9687
- * Returns a question value (answer) by a question's name.
9688
- * @param name A question name
9773
+ * Returns a value (answer) for a question with a specified `name`.
9774
+ * @param name A question name.
9775
+ * @returns A question value (answer).
9689
9776
  * @see data
9690
9777
  * @see setValue
9691
9778
  */
9692
9779
  getValue(name: string): any;
9693
9780
  /**
9694
- * Sets a question value (answer). It runs all triggers and conditions (`visibleIf` properties).
9781
+ * Sets a question value (answer).
9695
9782
  *
9696
- * Goes to the next page if `goNextPageAutomatic` is `true` and all questions on the current page are answered correctly.
9697
- * @param name A question name
9698
- * @param newValue A new question value
9783
+ * > This method executes all triggers and reevaluates conditions (`visibleIf`, `requiredId`, and others). It also switches the survey to the next page if the [`goNextPageAutomatic`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#goNextPageAutomatic) property is enabled and all questions on the current page have correct answers.
9784
+ * @param name A question name.
9785
+ * @param newValue A new question value.
9786
+ * @param locNotification For internal use.
9787
+ * @param allowNotifyValueChanged For internal use.
9699
9788
  * @see data
9700
9789
  * @see getValue
9701
- * @see PageModel.visibleIf
9702
- * @see Question.visibleIf
9703
- * @see goNextPageAutomatic
9704
9790
  */
9705
9791
  setValue(name: string, newQuestionValue: any, locNotification?: any, allowNotifyValueChanged?: boolean): void;
9792
+ private isValueEmpyOnSetValue;
9706
9793
  private updateOnSetValue;
9707
9794
  private isValueEqual;
9708
9795
  protected doOnPageAdded(page: PageModel): void;
@@ -9710,15 +9797,17 @@ declare module "survey" {
9710
9797
  private generateNewName;
9711
9798
  protected tryGoNextPageAutomatic(name: string): void;
9712
9799
  /**
9713
- * Returns the comment value.
9714
- * @param name A comment's name.
9800
+ * Returns a comment value from a question with a specified `name`.
9801
+ * @param name A question name.
9802
+ * @returns A comment.
9715
9803
  * @see setComment
9716
9804
  */
9717
9805
  getComment(name: string): string;
9718
9806
  /**
9719
- * Sets a comment value.
9720
- * @param name A comment name.
9807
+ * Sets a comment value to a question with a specified `name`.
9808
+ * @param name A question name.
9721
9809
  * @param newValue A new comment value.
9810
+ * @param locNotification For internal use.
9722
9811
  * @see getComment
9723
9812
  */
9724
9813
  setComment(name: string, newValue: string, locNotification?: any): void;
@@ -9762,17 +9851,31 @@ declare module "survey" {
9762
9851
  getSurveyMarkdownHtml(element: Question | PanelModel | PageModel | SurveyModel, text: string, name: string): string;
9763
9852
  getCorrectedAnswerCount(): number;
9764
9853
  /**
9765
- * Returns an amount of corrected quiz answers.
9854
+ * Returns the number of correct answers in a quiz.
9855
+ *
9856
+ * For more information about quizzes, refer to the following tutorial: [Create a Quiz](https://surveyjs.io/form-library/documentation/design-survey/create-a-quiz).
9857
+ * @returns The number of correct answers in a quiz.
9858
+ * @see getQuizQuestionCount
9859
+ * @see getInCorrectAnswerCount
9766
9860
  */
9767
9861
  getCorrectAnswerCount(): number;
9768
9862
  /**
9769
- * Returns quiz question number. It may be different from `getQuizQuestions.length` because some widgets like matrix may have several questions.
9863
+ * Returns the number of quiz questions. A question counts if it is visible, has an input field, and specifies [`correctAnswer`](https://surveyjs.io/form-library/documentation/api-reference/checkbox-question-model#correctAnswer).
9864
+ *
9865
+ * This number may be different from `getQuizQuestions().length` because certain question types (for instance, matrix-like types) include more than one question.
9866
+ *
9867
+ * For more information about quizzes, refer to the following tutorial: [Create a Quiz](https://surveyjs.io/form-library/documentation/design-survey/create-a-quiz).
9868
+ * @returns The number of quiz questions.
9770
9869
  * @see getQuizQuestions
9771
9870
  */
9772
9871
  getQuizQuestionCount(): number;
9773
9872
  getInCorrectedAnswerCount(): number;
9774
9873
  /**
9775
- * Returns an amount of incorrect quiz answers.
9874
+ * Returns the number of incorrect answers in a quiz.
9875
+ *
9876
+ * For more information about quizzes, refer to the following tutorial: [Create a Quiz](https://surveyjs.io/form-library/documentation/design-survey/create-a-quiz).
9877
+ * @returns The number of incorrect answers in a quiz.
9878
+ * @see getCorrectAnswerCount
9776
9879
  */
9777
9880
  getInCorrectAnswerCount(): number;
9778
9881
  onCorrectQuestionAnswer(question: IQuestion, options: any): void;
@@ -9981,6 +10084,10 @@ declare module "survey" {
9981
10084
  */
9982
10085
  dispose(): void;
9983
10086
  disposeCallback: () => void;
10087
+ private onScrollCallback;
10088
+ onScroll(): void;
10089
+ addScrollEventListener(): void;
10090
+ removeScrollEventListener(): void;
9984
10091
  }
9985
10092
  }
9986
10093
  declare module "survey-element" {
@@ -10068,7 +10175,7 @@ declare module "survey-element" {
10068
10175
  dragTypeOverMe: DragTypeOverMeEnum;
10069
10176
  isDragMe: boolean;
10070
10177
  readOnlyChangedCallback: () => void;
10071
- static ScrollElementToTop(elementId: string): boolean;
10178
+ static ScrollElementToTop(elementId: string, scrollIfVisible?: boolean): boolean;
10072
10179
  static GetFirstNonTextElement(elements: any, removeSpaces?: boolean): any;
10073
10180
  static FocusElement(elementId: string): boolean;
10074
10181
  private static focusElementCore;
@@ -10274,7 +10381,7 @@ declare module "survey-element" {
10274
10381
  * @see Base.getType
10275
10382
  */
10276
10383
  get isQuestion(): boolean;
10277
- delete(): void;
10384
+ delete(doDispose: boolean): void;
10278
10385
  locOwner: ILocalizableOwner;
10279
10386
  /**
10280
10387
  * Returns the survey's [locale](https://surveyjs.io/form-library/documentation/surveymodel#locale).
@@ -10305,10 +10412,6 @@ declare module "survey-element" {
10305
10412
  protected setPage(parent: IPanel, newPage: IPage): void;
10306
10413
  protected getSearchableLocKeys(keys: Array<string>): void;
10307
10414
  get isDefaultV2Theme(): boolean;
10308
- get isErrorsModeTooltip(): boolean;
10309
- protected getIsErrorsModeTooltip(): boolean;
10310
- protected getIsTooltipErrorSupportedByParent(): boolean;
10311
- protected getIsTooltipErrorInsideSupported(): boolean;
10312
10415
  get hasParent(): any;
10313
10416
  isSingleInRow: boolean;
10314
10417
  private shouldAddRunnerStyles;
@@ -10383,6 +10486,7 @@ declare module "survey-element" {
10383
10486
  protected getAdditionalTitleToolbar(): ActionContainer | null;
10384
10487
  protected getCssTitle(cssClasses: any): string;
10385
10488
  localeChanged(): void;
10489
+ dispose(): void;
10386
10490
  }
10387
10491
  }
10388
10492
  declare module "questionCustomWidgets" {
@@ -10442,7 +10546,7 @@ declare module "console-warnings" {
10442
10546
  declare module "question" {
10443
10547
  import { HashTable } from "helpers";
10444
10548
  import { EventBase } from "base";
10445
- import { IElement, IQuestion, IPanel, IConditionRunner, ISurveyImpl, IPage, ITitleOwner, IProgressInfo, ISurvey } from "base-interfaces";
10549
+ import { IElement, IQuestion, IPanel, IConditionRunner, ISurveyImpl, IPage, ITitleOwner, IProgressInfo, ISurvey, IPlainDataOptions } from "base-interfaces";
10446
10550
  import { SurveyElement } from "survey-element";
10447
10551
  import { SurveyValidator, IValidatorOwner } from "validator";
10448
10552
  import { TextPreProcessorValue } from "textPreProcessor";
@@ -10546,7 +10650,7 @@ declare module "question" {
10546
10650
  get page(): IPage;
10547
10651
  set page(val: IPage);
10548
10652
  getPanel(): IPanel;
10549
- delete(): void;
10653
+ delete(doDispose?: boolean): void;
10550
10654
  protected removeFromParent(): void;
10551
10655
  protected addDependedQuestion(question: Question): void;
10552
10656
  protected removeDependedQuestion(question: Question): void;
@@ -10566,6 +10670,7 @@ declare module "question" {
10566
10670
  get visible(): boolean;
10567
10671
  set visible(val: boolean);
10568
10672
  protected onVisibleChanged(): void;
10673
+ private updateIsVisibleProp;
10569
10674
  /**
10570
10675
  * Specifies whether to use display names for question values in placeholders.
10571
10676
  *
@@ -10772,12 +10877,15 @@ declare module "question" {
10772
10877
  commentPlaceholder: string;
10773
10878
  get commentPlaceHolder(): string;
10774
10879
  set commentPlaceHolder(newValue: string);
10880
+ get renderedCommentPlaceholder(): string;
10881
+ private calcRenderedCommentPlaceholder;
10775
10882
  getAllErrors(): Array<SurveyError>;
10776
10883
  getErrorByType(errorType: string): SurveyError;
10777
10884
  get customWidget(): QuestionCustomWidget;
10778
10885
  updateCustomWidget(): void;
10779
10886
  localeChanged(): void;
10780
10887
  get isCompositeQuestion(): boolean;
10888
+ get isContainer(): boolean;
10781
10889
  protected updateCommentElements(): void;
10782
10890
  onCommentInput(event: any): void;
10783
10891
  onCommentChange(event: any): void;
@@ -10814,11 +10922,9 @@ declare module "question" {
10814
10922
  get cssDescription(): string;
10815
10923
  protected setCssDescription(val: string): void;
10816
10924
  protected getCssDescription(cssClasses: any): string;
10817
- protected getIsErrorsModeTooltip(): boolean;
10818
10925
  showErrorOnCore(location: string): boolean;
10819
10926
  get showErrorOnTop(): boolean;
10820
10927
  get showErrorOnBottom(): boolean;
10821
- protected getIsTooltipErrorSupportedByParent(): boolean;
10822
10928
  private get showErrorsOutsideQuestion();
10823
10929
  get showErrorsAboveQuestion(): boolean;
10824
10930
  get showErrorsBelowQuestion(): boolean;
@@ -10839,7 +10945,7 @@ declare module "question" {
10839
10945
  * Moves focus to the input field of this question.
10840
10946
  * @param onError Pass `true` if you want to focus an input field with the first validation error. Default value: `false` (focuses the first input field). Applies to question types with multiple input fields.
10841
10947
  */
10842
- focus(onError?: boolean): void;
10948
+ focus(onError?: boolean, scrollIfVisible?: boolean): void;
10843
10949
  private focuscore;
10844
10950
  private expandAllParents;
10845
10951
  focusIn(): void;
@@ -10974,6 +11080,8 @@ declare module "question" {
10974
11080
  */
10975
11081
  get value(): any;
10976
11082
  set value(newValue: any);
11083
+ get hasFilteredValue(): boolean;
11084
+ getFilteredValue(): any;
10977
11085
  get valueForSurvey(): any;
10978
11086
  /**
10979
11087
  * Sets the question's `value` and `comment` properties to `undefined`.
@@ -11056,13 +11164,8 @@ declare module "question" {
11056
11164
  *
11057
11165
  * Pass an object with the `includeEmpty` property set to `false` if you want to skip empty answers.
11058
11166
  */
11059
- getPlainData(options?: {
11060
- includeEmpty?: boolean;
11061
- includeQuestionTypes?: boolean;
11062
- calculations?: Array<{
11063
- propertyName: string;
11064
- }>;
11065
- }): IQuestionPlainData;
11167
+ getPlainData(options?: IPlainDataOptions): IQuestionPlainData;
11168
+ protected getPlainDataCalculatedValue(propName: string): any;
11066
11169
  /**
11067
11170
  * A correct answer to this question. Specify this property if you want to [create a quiz](https://surveyjs.io/form-library/documentation/design-survey-create-a-quiz).
11068
11171
  * @see SurveyModel.getCorrectAnswerCount
@@ -11174,6 +11277,7 @@ declare module "question" {
11174
11277
  private isOldAnswered;
11175
11278
  protected allowNotifyValueChanged: boolean;
11176
11279
  protected setNewValue(newValue: any): void;
11280
+ private checkIsValueCorrect;
11177
11281
  protected isNewValueCorrect(val: any): boolean;
11178
11282
  protected isNewValueEqualsToValue(newValue: any): boolean;
11179
11283
  protected isTextValue(): boolean;
@@ -11231,6 +11335,7 @@ declare module "question" {
11231
11335
  set validatedValue(val: any);
11232
11336
  getAllValues(): any;
11233
11337
  processPopupVisiblilityChanged(popupModel: PopupModel, visible: boolean): void;
11338
+ protected onTextKeyDownHandler(event: any): void;
11234
11339
  transformToMobileView(): void;
11235
11340
  transformToDesktopView(): void;
11236
11341
  needResponsiveWidth(): boolean;
@@ -11249,6 +11354,7 @@ declare module "question" {
11249
11354
  protected processResponsiveness(requiredWidth: number, availableWidth: number): any;
11250
11355
  destroyResizeObserver(): void;
11251
11356
  dispose(): void;
11357
+ private resetDependedQuestions;
11252
11358
  }
11253
11359
  }
11254
11360
  declare module "martixBase" {
@@ -11367,15 +11473,15 @@ declare module "martixBase" {
11367
11473
  }
11368
11474
  declare module "question_matrixdropdownbase" {
11369
11475
  import { QuestionMatrixBaseModel } from "martixBase";
11370
- import { Question, IConditionObject } from "question";
11476
+ import { Question, IConditionObject, IQuestionPlainData } from "question";
11371
11477
  import { HashTable } from "helpers";
11372
11478
  import { Base } from "base";
11373
- import { IElement, IQuestion, ISurveyData, ISurvey, ISurveyImpl, ITextProcessor, IProgressInfo, IPanel } from "base-interfaces";
11479
+ import { IElement, IQuestion, ISurveyData, ISurvey, ISurveyImpl, ITextProcessor, IProgressInfo, IPanel, IPlainDataOptions } from "base-interfaces";
11374
11480
  import { ItemValue } from "itemvalue";
11375
11481
  import { ILocalizableOwner, LocalizableString } from "localizablestring";
11376
11482
  import { PanelModel } from "panel";
11377
11483
  import { SurveyError } from "survey-error";
11378
- import { MatrixDropdownColumn } from "question_matrixdropdowncolumn";
11484
+ import { IMatrixColumnOwner, MatrixDropdownColumn } from "question_matrixdropdowncolumn";
11379
11485
  import { QuestionMatrixDropdownRenderedCell, QuestionMatrixDropdownRenderedRow, QuestionMatrixDropdownRenderedTable } from "question_matrixdropdownrendered";
11380
11486
  export interface IMatrixDropdownData {
11381
11487
  value: any;
@@ -11522,7 +11628,7 @@ declare module "question_matrixdropdownbase" {
11522
11628
  /**
11523
11629
  * A base class for the [QuestionMatrixDropdownModel](https://surveyjs.io/form-library/documentation/questionmatrixdropdownmodel) and [QuestionMatrixDynamicModel](https://surveyjs.io/form-library/documentation/questionmatrixdynamicmodel) classes.
11524
11630
  */
11525
- export class QuestionMatrixDropdownModelBase extends QuestionMatrixBaseModel<MatrixDropdownRowModelBase, MatrixDropdownColumn> implements IMatrixDropdownData {
11631
+ export class QuestionMatrixDropdownModelBase extends QuestionMatrixBaseModel<MatrixDropdownRowModelBase, MatrixDropdownColumn> implements IMatrixDropdownData, IMatrixColumnOwner {
11526
11632
  static get defaultCellType(): string;
11527
11633
  static set defaultCellType(val: string);
11528
11634
  static addDefaultColumns(matrix: QuestionMatrixDropdownModelBase): void;
@@ -11545,6 +11651,7 @@ declare module "question_matrixdropdownbase" {
11545
11651
  getType(): string;
11546
11652
  dispose(): void;
11547
11653
  get hasSingleInput(): boolean;
11654
+ get isContainer(): boolean;
11548
11655
  get isRowsDynamic(): boolean;
11549
11656
  private isUpdating;
11550
11657
  protected get isUpdateLocked(): boolean;
@@ -11565,7 +11672,7 @@ declare module "question_matrixdropdownbase" {
11565
11672
  get columnsLocation(): string;
11566
11673
  set columnsLocation(val: string);
11567
11674
  /**
11568
- * Specifies the error message position for question within detail sections.
11675
+ * Specifies the error message position for questions within detail sections.
11569
11676
  *
11570
11677
  * Possible values:
11571
11678
  *
@@ -11696,7 +11803,9 @@ declare module "question_matrixdropdownbase" {
11696
11803
  onColumnPropertyChanged(column: MatrixDropdownColumn, name: string, newValue: any): void;
11697
11804
  onColumnItemValuePropertyChanged(column: MatrixDropdownColumn, propertyName: string, obj: ItemValue, name: string, newValue: any, oldValue: any): void;
11698
11805
  onShowInMultipleColumnsChanged(column: MatrixDropdownColumn): void;
11806
+ onColumnVisibilityChanged(column: MatrixDropdownColumn): void;
11699
11807
  onColumnCellTypeChanged(column: MatrixDropdownColumn): void;
11808
+ private resetTableAndRows;
11700
11809
  getRowTitleWidth(): string;
11701
11810
  get hasFooter(): boolean;
11702
11811
  getAddRowLocation(): string;
@@ -11717,6 +11826,7 @@ declare module "question_matrixdropdownbase" {
11717
11826
  private checkColumnsVisibility;
11718
11827
  private checkColumnsRenderedRequired;
11719
11828
  private isColumnVisibilityChanged;
11829
+ private updateNewVisibleChoices;
11720
11830
  protected runTotalsCondition(values: HashTable<any>, properties: HashTable<any>): void;
11721
11831
  private getRowConditionValues;
11722
11832
  IsMultiplyColumn(column: MatrixDropdownColumn): boolean;
@@ -11796,12 +11906,7 @@ declare module "question_matrixdropdownbase" {
11796
11906
  protected getRowValueCore(row: MatrixDropdownRowModelBase, questionValue: any, create?: boolean): any;
11797
11907
  protected getRowObj(row: MatrixDropdownRowModelBase): any;
11798
11908
  protected getRowDisplayValue(keysAsText: boolean, row: MatrixDropdownRowModelBase, rowValue: any): any;
11799
- getPlainData(options?: {
11800
- includeEmpty?: boolean;
11801
- calculations?: Array<{
11802
- propertyName: string;
11803
- }>;
11804
- }): import("question").IQuestionPlainData;
11909
+ getPlainData(options?: IPlainDataOptions): IQuestionPlainData;
11805
11910
  addConditionObjectsByContext(objects: Array<IConditionObject>, context: any): void;
11806
11911
  protected collectNestedQuestionsCore(questions: Question[], visibleOnly: boolean): void;
11807
11912
  protected getConditionObjectRowName(index: number): string;
@@ -11870,7 +11975,6 @@ declare module "question_matrixdropdownbase" {
11870
11975
  getRowHeaderWrapperComponentData(cell: MatrixDropdownCell): any;
11871
11976
  get showHorizontalScroll(): boolean;
11872
11977
  getRootCss(): string;
11873
- protected getIsTooltipErrorInsideSupported(): boolean;
11874
11978
  }
11875
11979
  }
11876
11980
  declare module "base-interfaces" {
@@ -11904,6 +12008,10 @@ declare module "base-interfaces" {
11904
12008
  export interface ISurveyErrorOwner extends ILocalizableOwner {
11905
12009
  getErrorCustomText(text: string, error: SurveyError): string;
11906
12010
  }
12011
+ export interface IValueItemCustomPropValues {
12012
+ propertyName: string;
12013
+ values: Array<any>;
12014
+ }
11907
12015
  export interface ISurvey extends ITextProcessor, ISurveyErrorOwner {
11908
12016
  getSkeletonComponentName(element: ISurveyElement): string;
11909
12017
  currentPage: IPage;
@@ -11996,7 +12104,7 @@ declare module "base-interfaces" {
11996
12104
  getChoiceDisplayValue(options: {
11997
12105
  question: IQuestion;
11998
12106
  values: Array<any>;
11999
- setItems: (displayValues: Array<string>) => void;
12107
+ setItems: (displayValues: Array<string>, ...customValues: Array<IValueItemCustomPropValues>) => void;
12000
12108
  }): void;
12001
12109
  matrixRowAdded(question: IQuestion, row: any): any;
12002
12110
  matrixColumnAdded(question: IQuestion, column: any): void;
@@ -12020,8 +12128,9 @@ declare module "base-interfaces" {
12020
12128
  dynamicPanelRemoved(question: IQuestion, panelIndex: number, panel: IPanel): void;
12021
12129
  dynamicPanelRemoving(question: IQuestion, panelIndex: number, panel: IPanel): boolean;
12022
12130
  dynamicPanelItemValueChanged(question: IQuestion, options: any): any;
12131
+ dynamicPanelGetTabTitle(question: IQuestion, options: any): any;
12023
12132
  dragAndDropAllow(options: DragDropAllowEvent): boolean;
12024
- scrollElementToTop(element: ISurveyElement, question: IQuestion, page: IPage, id: string): any;
12133
+ scrollElementToTop(element: ISurveyElement, question: IQuestion, page: IPage, id: string, scrollIfVisible?: boolean): any;
12025
12134
  runExpression(expression: string): any;
12026
12135
  elementContentVisibilityChanged(element: ISurveyElement): void;
12027
12136
  onCorrectQuestionAnswer(question: IQuestion, options: any): void;
@@ -12053,7 +12162,7 @@ declare module "base-interfaces" {
12053
12162
  getType(): string;
12054
12163
  setVisibleIndex(value: number): number;
12055
12164
  locStrsChanged(): any;
12056
- delete(): any;
12165
+ delete(doDispose?: boolean): void;
12057
12166
  toggleState(): void;
12058
12167
  stateChangedCallback(): void;
12059
12168
  getTitleToolbar(): AdaptiveActionContainer;
@@ -12162,6 +12271,14 @@ declare module "base-interfaces" {
12162
12271
  template?: string;
12163
12272
  data?: any;
12164
12273
  }
12274
+ export interface IPlainDataOptions {
12275
+ includeEmpty?: boolean;
12276
+ includeQuestionTypes?: boolean;
12277
+ includeValues?: boolean;
12278
+ calculations?: Array<{
12279
+ propertyName: string;
12280
+ }>;
12281
+ }
12165
12282
  }
12166
12283
  declare module "itemvalue" {
12167
12284
  import { ILocalizableOwner, LocalizableString } from "localizablestring";
@@ -12313,6 +12430,9 @@ declare module "base" {
12313
12430
  static finishCollectDependencies(): Dependencies;
12314
12431
  static startCollectDependencies(updater: () => void, target: Base, property: string): void;
12315
12432
  private static collectDependency;
12433
+ dependencies: {
12434
+ [key: string]: ComputedUpdater;
12435
+ };
12316
12436
  static get commentSuffix(): string;
12317
12437
  static set commentSuffix(val: string);
12318
12438
  static get commentPrefix(): string;
@@ -12618,6 +12738,7 @@ declare module "popup" {
12618
12738
  contentComponentData: T;
12619
12739
  }
12620
12740
  export class PopupModel<T = any> extends Base {
12741
+ private onDispose;
12621
12742
  setWidthByTarget: boolean;
12622
12743
  focusFirstInputSelector: string;
12623
12744
  contentComponentName: string;
@@ -12640,12 +12761,13 @@ declare module "popup" {
12640
12761
  onFooterActionsCreated: EventBase<Base>;
12641
12762
  onRecalculatePosition: EventBase<Base>;
12642
12763
  private refreshInnerModel;
12643
- constructor(contentComponentName: string, contentComponentData: T, verticalPosition?: VerticalPosition, horizontalPosition?: HorizontalPosition, showPointer?: boolean, isModal?: boolean, onCancel?: () => void, onApply?: () => boolean, onHide?: () => void, onShow?: () => void, cssClass?: string, title?: string);
12764
+ constructor(contentComponentName: string, contentComponentData: T, verticalPosition?: VerticalPosition, horizontalPosition?: HorizontalPosition, showPointer?: boolean, isModal?: boolean, onCancel?: () => void, onApply?: () => boolean, onHide?: () => void, onShow?: () => void, cssClass?: string, title?: string, onDispose?: () => void);
12644
12765
  get isVisible(): boolean;
12645
12766
  set isVisible(value: boolean);
12646
12767
  toggleVisibility(): void;
12647
12768
  recalculatePosition(isResetHeight: boolean): void;
12648
12769
  updateFooterActions(footerActions: Array<IAction>): Array<IAction>;
12770
+ dispose(): void;
12649
12771
  }
12650
12772
  export function createDialogOptions(componentName: string, data: any, onApply: () => boolean, onCancel?: () => void, onHide?: () => void, onShow?: () => void, cssClass?: string, title?: string, displayMode?: "popup" | "overlay"): IDialogOptions;
12651
12773
  }
@@ -13302,6 +13424,7 @@ declare module "dropdownListModel" {
13302
13424
  get showHintString(): boolean;
13303
13425
  get hintStringSuffix(): string;
13304
13426
  get hintStringMiddle(): string;
13427
+ private qustionPropertyChangedHandler;
13305
13428
  constructor(question: Question, onSelectionChanged?: (item: IAction, ...params: any[]) => void);
13306
13429
  get popupModel(): PopupModel;
13307
13430
  get inputReadOnly(): boolean;
@@ -13462,7 +13585,8 @@ declare module "question_matrix" {
13462
13585
  import { Base } from "base";
13463
13586
  import { SurveyError } from "survey-error";
13464
13587
  import { LocalizableString, ILocalizableOwner } from "localizablestring";
13465
- import { IConditionObject } from "question";
13588
+ import { IConditionObject, IQuestionPlainData } from "question";
13589
+ import { IPlainDataOptions } from "base-interfaces";
13466
13590
  export interface IMatrixData {
13467
13591
  onMatrixRowChanged(row: MatrixRowModel): void;
13468
13592
  getCorrectedRowValue(value: any): any;
@@ -13576,12 +13700,7 @@ declare module "question_matrix" {
13576
13700
  protected onMatrixRowCreated(row: MatrixRowModel): void;
13577
13701
  protected setQuestionValue(newValue: any, updateIsAnswered?: boolean): void;
13578
13702
  protected getDisplayValueCore(keysAsText: boolean, value: any): any;
13579
- getPlainData(options?: {
13580
- includeEmpty?: boolean;
13581
- calculations?: Array<{
13582
- propertyName: string;
13583
- }>;
13584
- }): import("question").IQuestionPlainData;
13703
+ getPlainData(options?: IPlainDataOptions): IQuestionPlainData;
13585
13704
  addConditionObjectsByContext(objects: Array<IConditionObject>, context: any): void;
13586
13705
  getConditionJson(operator?: string, path?: string): any;
13587
13706
  protected clearValueIfInvisibleCore(reason: string): void;
@@ -13776,6 +13895,8 @@ declare module "question_checkbox" {
13776
13895
  */
13777
13896
  get selectedChoices(): Array<ItemValue>;
13778
13897
  get selectedItems(): Array<ItemValue>;
13898
+ get hasFilteredValue(): boolean;
13899
+ getFilteredValue(): any;
13779
13900
  protected getMultipleSelectedItems(): Array<ItemValue>;
13780
13901
  protected validateItemValues(itemValues: Array<ItemValue>): Array<ItemValue>;
13781
13902
  protected onCheckForErrors(errors: Array<SurveyError>, isOnValueChanged: boolean): void;
@@ -13846,6 +13967,7 @@ declare module "dropdownMultiSelectListModel" {
13846
13967
  protected popupCssClasses: string;
13847
13968
  filterStringPlaceholder: string;
13848
13969
  closeOnSelect: boolean;
13970
+ locStrsChanged(): void;
13849
13971
  private updateListState;
13850
13972
  private syncFilterStringPlaceholder;
13851
13973
  private getSelectedActions;
@@ -13890,8 +14012,10 @@ declare module "question_tagbox" {
13890
14012
  dropdownListModel: DropdownMultiSelectListModel;
13891
14013
  private itemDisplayNameMap;
13892
14014
  constructor(name: string);
14015
+ locStrsChanged(): void;
14016
+ readOnlyText: string;
14017
+ private updateReadOnlyText;
13893
14018
  protected getDefaultItemComponent(): string;
13894
- get readOnlyText(): any;
13895
14019
  onSurveyLoad(): void;
13896
14020
  /**
13897
14021
  * Specifies whether to display a button that clears the selected value.
@@ -14194,6 +14318,7 @@ declare module "question_ranking" {
14194
14318
  private isDragStartNodeValid;
14195
14319
  private get allowStartDrag();
14196
14320
  private canStartDragDueMaxSelectedChoices;
14321
+ private canStartDragDueItemEnabled;
14197
14322
  checkMaxSelectedChoicesUnreached(): boolean;
14198
14323
  afterRenderQuestionElement(el: HTMLElement): void;
14199
14324
  beforeDestroyQuestionElement(el: HTMLElement): void;
@@ -14486,6 +14611,7 @@ declare module "question_rating" {
14486
14611
  getInputId(index: number): string;
14487
14612
  supportGoNextPageAutomatic(): boolean;
14488
14613
  supportOther(): boolean;
14614
+ protected getPlainDataCalculatedValue(propName: string): any;
14489
14615
  /**
14490
14616
  * Specifies a description for the minimum (first) rate value.
14491
14617
  * @see rateValues
@@ -14860,17 +14986,35 @@ declare module "question_signaturepad" {
14860
14986
  set allowClear(val: boolean);
14861
14987
  get canShowClearButton(): boolean;
14862
14988
  /**
14863
- * Specifies a color for the pen. Accepts hexadecimal colors (`"#FF0000"`), RGB colors (`"rgb(255,0,0)"`), or color names (`"red"`).
14989
+ * Specifies a color for the pen.
14990
+ *
14991
+ * This property accepts color values in the following formats:
14992
+ *
14993
+ * - Hexadecimal colors (`"#FF0000"`)
14994
+ * - RGB colors (`"rgb(255,0,0)"`)
14995
+ * - Color names (`"red"`)
14864
14996
  * @see backgroundColor
14865
14997
  */
14866
14998
  get penColor(): string;
14867
14999
  set penColor(val: string);
14868
15000
  /**
14869
- * Specifies a color for the signature area background. Accepts hexadecimal colors (`"#FF0000"`), RGB colors (`"rgb(255,0,0)"`), or color names (`"red"`).
15001
+ * Specifies a color for the signature area background. Ignored if [`backgroundImage`](#backgroundImage) is set.
15002
+ *
15003
+ * This property accepts color values in the following formats:
15004
+ *
15005
+ * - Hexadecimal colors (`"#FF0000"`)
15006
+ * - RGB colors (`"rgb(255,0,0)"`)
15007
+ * - Color names (`"red"`)
14870
15008
  * @see penColor
14871
15009
  */
14872
15010
  get backgroundColor(): string;
14873
15011
  set backgroundColor(val: string);
15012
+ /**
15013
+ * An image to display in the background of the signature area. Accepts a base64 or URL string value.
15014
+ * @see backgroundColor
15015
+ */
15016
+ get backgroundImage(): string;
15017
+ set backgroundImage(val: string);
14874
15018
  get clearButtonCaption(): string;
14875
15019
  needShowPlaceholder(): boolean;
14876
15020
  get placeHolderText(): string;
@@ -15011,7 +15155,6 @@ declare module "popup-survey" {
15011
15155
  private setCssButton;
15012
15156
  protected createSurvey(jsonObj: any): SurveyModel;
15013
15157
  protected onSurveyComplete(): void;
15014
- private onScrollCallback;
15015
15158
  onScroll(): void;
15016
15159
  }
15017
15160
  /**
@@ -15342,6 +15485,8 @@ declare module "question_custom" {
15342
15485
  findQuestionByName(name: string): IQuestion;
15343
15486
  protected clearValueIfInvisibleCore(reason: string): void;
15344
15487
  onAnyValueChanged(name: string): void;
15488
+ get hasSingleInput(): boolean;
15489
+ get isContainer(): boolean;
15345
15490
  protected createPanel(): PanelModel;
15346
15491
  protected onReadOnlyChanged(): void;
15347
15492
  onSurveyLoad(): void;
@@ -15372,6 +15517,8 @@ declare module "popup-view-model" {
15372
15517
  import { ActionContainer } from "actions/container";
15373
15518
  export const FOCUS_INPUT_SELECTOR = "input:not(:disabled):not([readonly]):not([type=hidden]),select:not(:disabled):not([readonly]),textarea:not(:disabled):not([readonly]), button:not(:disabled):not([readonly]), [tabindex]:not([tabindex^=\"-\"])";
15374
15519
  export class PopupBaseViewModel extends Base {
15520
+ private static SubscriptionId;
15521
+ private subscriptionId;
15375
15522
  protected popupSelector: string;
15376
15523
  protected fixedPopupContainer: string;
15377
15524
  protected containerSelector: string;
@@ -15396,6 +15543,7 @@ declare module "popup-view-model" {
15396
15543
  protected getPopupHeaderTemplate(): string;
15397
15544
  protected createFooterActionBar(): void;
15398
15545
  protected resetDimensionsAndPositionStyleProperties(): void;
15546
+ protected onModelChanging(newModel: PopupModel): void;
15399
15547
  private setupModel;
15400
15548
  private _model;
15401
15549
  get model(): PopupModel;
@@ -15453,12 +15601,16 @@ declare module "popup-dropdown-view-model" {
15453
15601
  protected getPopupHeaderTemplate(): string;
15454
15602
  popupDirection: string;
15455
15603
  pointerTarget: IPosition;
15604
+ private recalculatePositionHandler;
15456
15605
  constructor(model: PopupModel, targetElement?: HTMLElement);
15457
15606
  setComponentElement(componentRoot: HTMLElement, targetElement?: HTMLElement | null): void;
15607
+ resetComponentElement(): void;
15458
15608
  updateOnShowing(): void;
15459
15609
  private get shouldCreateResizeCallback();
15460
15610
  updatePosition(isResetHeight: boolean, isDelayUpdating?: boolean): void;
15461
15611
  updateOnHiding(): void;
15612
+ protected onModelChanging(newModel: PopupModel): void;
15613
+ dispose(): void;
15462
15614
  }
15463
15615
  }
15464
15616
  declare module "popup-modal-view-model" {
@@ -15549,7 +15701,7 @@ declare module "entries/chunks/model" {
15549
15701
  export { AnswerCountValidator, EmailValidator, NumericValidator, RegexValidator, SurveyValidator, TextValidator, ValidatorResult, ExpressionValidator, ValidatorRunner } from "validator";
15550
15702
  export { ItemValue } from "itemvalue";
15551
15703
  export { Base, Event, EventBase, ArrayChanges, ComputedUpdater } from "base";
15552
- export { ISurvey, ISurveyElement, IElement, IQuestion, IPage, IPanel, ISurveyData, ITitleOwner, ISurveyLayoutElement, IShortcutText } from "base-interfaces";
15704
+ export { ISurvey, ISurveyElement, IElement, IQuestion, IPage, IPanel, ISurveyData, ITitleOwner, ISurveyLayoutElement, IPlainDataOptions as IPlainData, IShortcutText } from "base-interfaces";
15553
15705
  export { SurveyError } from "survey-error";
15554
15706
  export { SurveyElementCore, SurveyElement, DragTypeOverMeEnum } from "survey-element";
15555
15707
  export { CalculatedValue } from "calculatedValue";
@@ -15570,7 +15722,7 @@ declare module "entries/chunks/model" {
15570
15722
  export { MatrixDynamicRowModel, QuestionMatrixDynamicModel } from "question_matrixdynamic";
15571
15723
  export { MatrixRowModel, MatrixCells, QuestionMatrixModel, IMatrixData } from "question_matrix";
15572
15724
  export { QuestionMatrixBaseModel } from "martixBase";
15573
- export { MultipleTextItemModel, QuestionMultipleTextModel, MultipleTextEditorModel } from "question_multipletext";
15725
+ export { MultipleTextItemModel, MultipleTextCell, MultipleTextErrorCell, MutlipleTextErrorRow, MutlipleTextRow, QuestionMultipleTextModel, MultipleTextEditorModel } from "question_multipletext";
15574
15726
  export { PanelModel, PanelModelBase, QuestionRowModel } from "panel";
15575
15727
  export { FlowPanelModel } from "flowpanel";
15576
15728
  export { PageModel } from "page";
@@ -15606,7 +15758,7 @@ declare module "entries/chunks/model" {
15606
15758
  export * from "themes";
15607
15759
  export { SurveyModel } from "survey";
15608
15760
  export * from "survey-events-api";
15609
- export { SurveyTrigger, SurveyTriggerComplete, SurveyTriggerSetValue, SurveyTriggerVisible, SurveyTriggerCopyValue, SurveyTriggerRunExpression, Trigger } from "trigger";
15761
+ export { SurveyTrigger, SurveyTriggerComplete, SurveyTriggerSetValue, SurveyTriggerVisible, SurveyTriggerCopyValue, SurveyTriggerRunExpression, SurveyTriggerSkip, Trigger } from "trigger";
15610
15762
  export { PopupSurveyModel, SurveyWindowModel } from "popup-survey";
15611
15763
  export { TextPreProcessor } from "textPreProcessor";
15612
15764
  export { Notifier } from "notifier";
@@ -15981,6 +16133,8 @@ declare module "defaultCss/cssstandard" {
15981
16133
  root: string;
15982
16134
  controls: string;
15983
16135
  placeholder: string;
16136
+ canvas: string;
16137
+ backgroundImage: string;
15984
16138
  clearButton: string;
15985
16139
  };
15986
16140
  saveData: {
@@ -16443,6 +16597,8 @@ declare module "defaultCss/cssmodern" {
16443
16597
  small: string;
16444
16598
  controls: string;
16445
16599
  placeholder: string;
16600
+ canvas: string;
16601
+ backgroundImage: string;
16446
16602
  clearButton: string;
16447
16603
  };
16448
16604
  saveData: {
@@ -16487,15 +16643,6 @@ declare module "svgbundle" {
16487
16643
  export var SvgRegistry: SvgIconRegistry;
16488
16644
  export var SvgBundleViewModel: any;
16489
16645
  }
16490
- declare module "utils/tooltip" {
16491
- export class TooltipManager {
16492
- tooltipElement: HTMLElement;
16493
- private targetElement;
16494
- constructor(tooltipElement: HTMLElement);
16495
- dispose(): void;
16496
- private onMouseMoveCallback;
16497
- }
16498
- }
16499
16646
  declare module "entries/core-wo-model" {
16500
16647
  export * from "entries/chunks/model";
16501
16648
  export { defaultStandardCss } from "defaultCss/cssstandard";
@@ -16507,7 +16654,6 @@ declare module "entries/core-wo-model" {
16507
16654
  export * from "actions/action";
16508
16655
  export * from "actions/adaptive-container";
16509
16656
  export * from "actions/container";
16510
- export * from "utils/tooltip";
16511
16657
  export * from "utils/dragOrClickHelper";
16512
16658
  }
16513
16659
  declare module "entries/core" {
@@ -16849,6 +16995,8 @@ declare module "plugins/themes/bootstrap/cssbootstrap" {
16849
16995
  root: string;
16850
16996
  controls: string;
16851
16997
  placeholder: string;
16998
+ canvas: string;
16999
+ backgroundImage: string;
16852
17000
  clearButton: string;
16853
17001
  };
16854
17002
  saveData: {
@@ -17210,6 +17358,8 @@ declare module "plugins/themes/bootstrapmaterial/cssbootstrapmaterial" {
17210
17358
  root: string;
17211
17359
  controls: string;
17212
17360
  placeholder: string;
17361
+ canvas: string;
17362
+ backgroundImage: string;
17213
17363
  clearButton: string;
17214
17364
  };
17215
17365
  saveData: {
@@ -17677,6 +17827,8 @@ declare module "entries/plugins" {
17677
17827
  root: string;
17678
17828
  controls: string;
17679
17829
  placeholder: string;
17830
+ canvas: string;
17831
+ backgroundImage: string;
17680
17832
  clearButton: string;
17681
17833
  };
17682
17834
  saveData: {
@@ -18036,6 +18188,8 @@ declare module "entries/plugins" {
18036
18188
  root: string;
18037
18189
  controls: string;
18038
18190
  placeholder: string;
18191
+ canvas: string;
18192
+ backgroundImage: string;
18039
18193
  clearButton: string;
18040
18194
  };
18041
18195
  saveData: {
@@ -22637,6 +22791,7 @@ declare module "react/components/popup/popup" {
22637
22791
  private setTargetElement;
22638
22792
  componentDidMount(): void;
22639
22793
  componentDidUpdate(prevProps: any, prevState: any): void;
22794
+ componentWillUnmount(): void;
22640
22795
  shouldComponentUpdate(nextProps: IPopupProps, nextState: any): boolean;
22641
22796
  render(): JSX.Element;
22642
22797
  }
@@ -22768,11 +22923,7 @@ declare module "react/reactquestion" {
22768
22923
  protected get location(): string;
22769
22924
  private getState;
22770
22925
  protected canRender(): boolean;
22771
- private tooltipManager;
22772
- private tooltipRef;
22773
- componentDidUpdate(prevProps: any, prevState: any): void;
22774
22926
  componentWillUnmount(): void;
22775
- private disposeTooltipManager;
22776
22927
  protected renderElement(): JSX.Element;
22777
22928
  }
22778
22929
  export abstract class SurveyQuestionAndErrorsWrapped extends ReactSurveyElement {
@@ -22787,7 +22938,6 @@ declare module "react/reactquestion" {
22787
22938
  componentDidUpdate(prevProps: any, prevState: any): void;
22788
22939
  protected doAfterRender(): void;
22789
22940
  protected canRender(): boolean;
22790
- protected renderErrors(errorsLocation: string): JSX.Element;
22791
22941
  protected renderContent(): JSX.Element;
22792
22942
  protected abstract renderElement(): JSX.Element;
22793
22943
  protected getShowErrors(): boolean;
@@ -22803,6 +22953,16 @@ declare module "react/reactquestion" {
22803
22953
  protected getHeaderText(): string;
22804
22954
  protected wrapCell(cell: QuestionMatrixDropdownRenderedCell, element: JSX.Element): JSX.Element;
22805
22955
  }
22956
+ export class SurveyQuestionErrorCell extends React.Component<any, any> {
22957
+ constructor(props: any);
22958
+ private get question();
22959
+ private update;
22960
+ private registerCallback;
22961
+ private unRegisterCallback;
22962
+ componentDidUpdate(prevProps: Readonly<any>): void;
22963
+ componentWillUnmount(): void;
22964
+ render(): JSX.Element;
22965
+ }
22806
22966
  }
22807
22967
  declare module "react/reactquestion_element" {
22808
22968
  import * as React from "react";
@@ -23338,13 +23498,14 @@ declare module "react/reactquestion_file" {
23338
23498
  declare module "react/reactquestion_multipletext" {
23339
23499
  import { SurveyQuestionElementBase } from "react/reactquestion_element";
23340
23500
  import { SurveyQuestionAndErrorsWrapped } from "react/reactquestion";
23341
- import { QuestionMultipleTextModel, MultipleTextItemModel } from "entries/core";
23501
+ import { QuestionMultipleTextModel, MultipleTextItemModel, MultipleTextCell } from "entries/core";
23342
23502
  import { ReactSurveyElement } from "react/reactquestion_element";
23343
23503
  export class SurveyQuestionMultipleText extends SurveyQuestionElementBase {
23344
23504
  constructor(props: any);
23345
23505
  protected get question(): QuestionMultipleTextModel;
23346
23506
  protected renderElement(): JSX.Element;
23347
- protected renderRow(rowIndex: number, items: Array<MultipleTextItemModel>, cssClasses: any): JSX.Element;
23507
+ protected renderCell(cell: MultipleTextCell, cssClasses: any, index: number): JSX.Element;
23508
+ protected renderRow(rowIndex: number, cells: Array<MultipleTextCell>, cssClasses: any): JSX.Element;
23348
23509
  }
23349
23510
  export class SurveyMultipleTextItem extends ReactSurveyElement {
23350
23511
  private get question();
@@ -23352,7 +23513,6 @@ declare module "react/reactquestion_multipletext" {
23352
23513
  protected getStateElements(): (import("question_multipletext").MultipleTextEditorModel | MultipleTextItemModel)[];
23353
23514
  private get creator();
23354
23515
  protected renderElement(): JSX.Element;
23355
- protected renderItemTooltipError(item: MultipleTextItemModel, cssClasses: any): JSX.Element | null;
23356
23516
  }
23357
23517
  export class SurveyMultipleTextItemEditor extends SurveyQuestionAndErrorsWrapped {
23358
23518
  protected renderElement(): JSX.Element;
@@ -23469,7 +23629,6 @@ declare module "react/components/matrix-actions/drag-drop-icon/drag-drop-icon" {
23469
23629
  }
23470
23630
  }
23471
23631
  declare module "react/reactquestion_matrixdropdownbase" {
23472
- import * as React from "react";
23473
23632
  import { SurveyQuestionElementBase } from "react/reactquestion_element";
23474
23633
  import { SurveyQuestionAndErrorsCell } from "react/reactquestion";
23475
23634
  import { QuestionMatrixDropdownModelBase, QuestionMatrixDropdownRenderedRow, QuestionMatrixDropdownRenderedCell, Question } from "entries/core";
@@ -23503,16 +23662,6 @@ declare module "react/reactquestion_matrixdropdownbase" {
23503
23662
  private renderCellCheckboxButton;
23504
23663
  private renderCellRadiogroupButton;
23505
23664
  }
23506
- export class SurveyQuestionMatrixDropdownErrorCell extends React.Component<any, any> {
23507
- constructor(props: any);
23508
- private get cell();
23509
- private update;
23510
- private registerCallback;
23511
- private unRegisterCallback;
23512
- componentDidUpdate(prevProps: Readonly<any>): void;
23513
- componentWillUnmount(): void;
23514
- render(): JSX.Element;
23515
- }
23516
23665
  }
23517
23666
  declare module "react/reactquestion_matrixdropdown" {
23518
23667
  import { SurveyQuestionMatrixDropdownBase } from "react/reactquestion_matrixdropdownbase";
@@ -23670,6 +23819,7 @@ declare module "react/components/list/list" {
23670
23819
  handleMouseMove: (event: any) => void;
23671
23820
  getStateElement(): ListModel<import("survey-core").Action>;
23672
23821
  componentDidMount(): void;
23822
+ componentWillUnmount(): void;
23673
23823
  renderElement(): JSX.Element;
23674
23824
  renderList(): JSX.Element;
23675
23825
  renderItems(): JSX.Element[];
@@ -23775,6 +23925,7 @@ declare module "react/signaturepad" {
23775
23925
  constructor(props: any);
23776
23926
  protected get question(): QuestionSignaturePadModel;
23777
23927
  protected renderElement(): JSX.Element;
23928
+ renderBackgroundImage(): JSX.Element | null;
23778
23929
  renderCleanButton(): JSX.Element | null;
23779
23930
  }
23780
23931
  }