survey-react 1.9.117 → 1.9.119

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
@@ -82,6 +82,7 @@ declare module "localization/english" {
82
82
  urlRequestError: string;
83
83
  urlGetChoicesError: string;
84
84
  exceedMaxSize: string;
85
+ noUploadFilesHandler: string;
85
86
  otherRequiredError: string;
86
87
  uploadingFile: string;
87
88
  loadingFile: string;
@@ -201,6 +202,7 @@ declare module "surveyStrings" {
201
202
  urlRequestError: string;
202
203
  urlGetChoicesError: string;
203
204
  exceedMaxSize: string;
205
+ noUploadFilesHandler: string;
204
206
  otherRequiredError: string;
205
207
  uploadingFile: string;
206
208
  loadingFile: string;
@@ -463,6 +465,7 @@ declare module "jsonobject" {
463
465
  minValue: any;
464
466
  private dataListValue;
465
467
  layout: string;
468
+ onSerializeValue: (obj: any) => any;
466
469
  onGetValue: (obj: any) => any;
467
470
  onSettingValue: (obj: any, value: any) => any;
468
471
  onSetValue: (obj: any, value: any, jsonConv: JsonObject) => any;
@@ -487,6 +490,7 @@ declare module "jsonobject" {
487
490
  set defaultValue(newValue: any);
488
491
  isDefaultValue(value: any): boolean;
489
492
  isDefaultValueByObj(obj: Base, value: any): boolean;
493
+ getSerializableValue(obj: any): any;
490
494
  getValue(obj: any): any;
491
495
  getPropertyValue(obj: any): any;
492
496
  get hasToUseSetValue(): string | ((obj: any, value: any, jsonConv: JsonObject) => any);
@@ -700,6 +704,7 @@ declare module "conditionProcessValue" {
700
704
  private getValueFromSurvey;
701
705
  private getValueFromValues;
702
706
  private getNonNestedObject;
707
+ private getNonNestedObjectCore;
703
708
  private getObjInArray;
704
709
  private getFirstPropertyName;
705
710
  private getObjectValue;
@@ -1758,6 +1763,7 @@ declare module "defaultCss/defaultV2Css" {
1758
1763
  invisible: string;
1759
1764
  navigationButton: string;
1760
1765
  compact: string;
1766
+ errorsContainer: string;
1761
1767
  };
1762
1768
  paneldynamic: {
1763
1769
  mainRoot: string;
@@ -1824,6 +1830,7 @@ declare module "defaultCss/defaultV2Css" {
1824
1830
  emptyHeaderRoot: string;
1825
1831
  title: string;
1826
1832
  description: string;
1833
+ errorsContainer: string;
1827
1834
  };
1828
1835
  pageTitle: string;
1829
1836
  pageDescription: string;
@@ -1878,6 +1885,9 @@ declare module "defaultCss/defaultV2Css" {
1878
1885
  invisible: string;
1879
1886
  composite: string;
1880
1887
  disabled: string;
1888
+ errorsContainer: string;
1889
+ errorsContainerTop: string;
1890
+ errorsContainerBottom: string;
1881
1891
  };
1882
1892
  image: {
1883
1893
  mainRoot: string;
@@ -1897,9 +1907,6 @@ declare module "defaultCss/defaultV2Css" {
1897
1907
  root: string;
1898
1908
  icon: string;
1899
1909
  item: string;
1900
- outsideQuestion: string;
1901
- aboveQuestion: string;
1902
- belowQuestion: string;
1903
1910
  locationTop: string;
1904
1911
  locationBottom: string;
1905
1912
  };
@@ -2117,6 +2124,8 @@ declare module "defaultCss/defaultV2Css" {
2117
2124
  rowHasEndActions: string;
2118
2125
  headerCell: string;
2119
2126
  rowTextCell: string;
2127
+ footerCell: string;
2128
+ footerTotalCell: string;
2120
2129
  columnTitleCell: string;
2121
2130
  cellRequiredText: string;
2122
2131
  detailButton: string;
@@ -2152,6 +2161,7 @@ declare module "defaultCss/defaultV2Css" {
2152
2161
  itemCell: string;
2153
2162
  headerCell: string;
2154
2163
  rowTextCell: string;
2164
+ footerCell: string;
2155
2165
  columnTitleCell: string;
2156
2166
  cellRequiredText: string;
2157
2167
  button: string;
@@ -2300,6 +2310,7 @@ declare module "defaultCss/defaultV2Css" {
2300
2310
  };
2301
2311
  saveData: {
2302
2312
  root: string;
2313
+ rootWithButtons: string;
2303
2314
  info: string;
2304
2315
  error: string;
2305
2316
  success: string;
@@ -3577,6 +3588,8 @@ declare module "panel" {
3577
3588
  set questionErrorLocation(val: string);
3578
3589
  getQuestionErrorLocation(): string;
3579
3590
  get no(): string;
3591
+ get cssError(): string;
3592
+ protected getCssError(cssClasses: any): string;
3580
3593
  dispose(): void;
3581
3594
  }
3582
3595
  /**
@@ -3657,6 +3670,7 @@ declare module "panel" {
3657
3670
  */
3658
3671
  get no(): string;
3659
3672
  protected setNo(visibleIndex: number): void;
3673
+ protected notifyStateChanged(): void;
3660
3674
  protected createLocTitleProperty(): LocalizableString;
3661
3675
  protected beforeSetVisibleIndex(index: number): number;
3662
3676
  protected getPanelStartIndex(index: number): number;
@@ -3689,7 +3703,6 @@ declare module "panel" {
3689
3703
  get hasEditButton(): boolean;
3690
3704
  cancelPreview(): void;
3691
3705
  get cssTitle(): string;
3692
- get cssError(): string;
3693
3706
  get showErrorsAbovePanel(): boolean;
3694
3707
  protected getCssError(cssClasses: any): string;
3695
3708
  protected onVisibleChanged(): void;
@@ -3697,6 +3710,7 @@ declare module "panel" {
3697
3710
  focusIn(): void;
3698
3711
  protected getHasFrameV2(): boolean;
3699
3712
  protected getIsNested(): boolean;
3713
+ private get showPanelAsPage();
3700
3714
  protected getCssRoot(cssClasses: {
3701
3715
  [index: string]: string;
3702
3716
  }): string;
@@ -3885,7 +3899,9 @@ declare module "question_file" {
3885
3899
  confirmRemoveAllMessage: string;
3886
3900
  noFileChosenCaption: string;
3887
3901
  chooseButtonCaption: string;
3888
- takePhotoCaption: string;
3902
+ get takePhotoCaption(): string;
3903
+ set takePhotoCaption(val: string);
3904
+ get locTakePhotoCaption(): LocalizableString;
3889
3905
  replaceButtonCaption: string;
3890
3906
  clearButtonCaption: string;
3891
3907
  removeFileCaption: string;
@@ -4235,6 +4251,7 @@ declare module "question_baseselect" {
4235
4251
  * When users select the "None" item in multi-select questions, all other items become unselected.
4236
4252
  * @see noneItem
4237
4253
  * @see noneText
4254
+ * @see [settings.specialChoicesOrder](https://surveyjs.io/form-library/documentation/api-reference/settings#specialChoicesOrder)
4238
4255
  */
4239
4256
  get showNoneItem(): boolean;
4240
4257
  set showNoneItem(val: boolean);
@@ -4339,6 +4356,7 @@ declare module "question_baseselect" {
4339
4356
  *
4340
4357
  * [View Demo](https://surveyjs.io/form-library/examples/questiontype-dropdownrestfull/ (linkStyle))
4341
4358
  * @see choices
4359
+ * @see [settings.specialChoicesOrder](https://surveyjs.io/form-library/documentation/api-reference/settings#specialChoicesOrder)
4342
4360
  */
4343
4361
  get choicesByUrl(): ChoicesRestful;
4344
4362
  set choicesByUrl(val: ChoicesRestful);
@@ -4361,6 +4379,7 @@ declare module "question_baseselect" {
4361
4379
  * If you need to specify only the `value` property, you can set the `choices` property to an array of primitive values, for example, `[ "item1", "item2", "item3" ]`. These values are both saved in survey results and used as display text.
4362
4380
  * @see choicesByUrl
4363
4381
  * @see choicesFromQuestion
4382
+ * @see [settings.specialChoicesOrder](https://surveyjs.io/form-library/documentation/api-reference/settings#specialChoicesOrder)
4364
4383
  */
4365
4384
  get choices(): Array<any>;
4366
4385
  set choices(newValue: Array<any>);
@@ -4432,6 +4451,7 @@ declare module "question_baseselect" {
4432
4451
  * - `"asc"`- Sorts choice items in ascending order.
4433
4452
  * - `"desc"`- Sorts choice items in ascending order.
4434
4453
  * - `"random"` - Displays choice items in random order.
4454
+ * @see [settings.specialChoicesOrder](https://surveyjs.io/form-library/documentation/api-reference/settings#specialChoicesOrder)
4435
4455
  */
4436
4456
  get choicesOrder(): string;
4437
4457
  set choicesOrder(val: string);
@@ -4446,6 +4466,7 @@ declare module "question_baseselect" {
4446
4466
  * Displays the "Select All", "None", and "Other" choices on individual rows.
4447
4467
  * @see showNoneItem
4448
4468
  * @see showOtherItem
4469
+ * @see [settings.specialChoicesOrder](https://surveyjs.io/form-library/documentation/api-reference/settings#specialChoicesOrder)
4449
4470
  */
4450
4471
  separateSpecialChoices: boolean;
4451
4472
  /**
@@ -4534,7 +4555,6 @@ declare module "question_baseselect" {
4534
4555
  protected getCommentFromValue(newValue: any): string;
4535
4556
  protected setOtherValueIntoValue(newValue: any): any;
4536
4557
  onOtherValueInput(event: any): void;
4537
- onCompositionUpdateOtherValue(event: any): void;
4538
4558
  onOtherValueChange(event: any): void;
4539
4559
  private isRunningChoices;
4540
4560
  private runChoicesByUrl;
@@ -4925,6 +4945,7 @@ declare module "question_matrixdropdowncolumn" {
4925
4945
  getCellType(): string;
4926
4946
  getCustomCellType(column: MatrixDropdownColumn, row: MatrixDropdownRowModelBase, cellType: string): string;
4927
4947
  onColumnCellTypeChanged(column: MatrixDropdownColumn): void;
4948
+ getCellAriaLabel(rowTitle: string, columnTitle: string): string;
4928
4949
  }
4929
4950
  export var matrixDropdownColumnTypes: any;
4930
4951
  export class MatrixDropdownColumn extends Base implements ILocalizableOwner, IWrapperObject {
@@ -5378,6 +5399,9 @@ declare module "question_matrixdynamic" {
5378
5399
  private dragOrClickHelper;
5379
5400
  constructor(index: number, data: IMatrixDropdownData, value: any);
5380
5401
  get rowName(): string;
5402
+ get dataName(): string;
5403
+ get text(): any;
5404
+ getAccessbilityText(): string;
5381
5405
  get shortcutText(): string;
5382
5406
  }
5383
5407
  /**
@@ -5719,9 +5743,9 @@ declare module "themes" {
5719
5743
  *
5720
5744
  * Possible values:
5721
5745
  *
5722
- * - `"survey"` (default)\
5746
+ * - `"survey"`\
5723
5747
  * The header width is the same as the survey width.
5724
- * - `"container"`\
5748
+ * - `"container"` (default)\
5725
5749
  * The header width is the same as the survey container width.
5726
5750
  *
5727
5751
  * @see [SurveyModel.width](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#width)
@@ -6458,7 +6482,7 @@ declare module "question_paneldynamic" {
6458
6482
  declare module "survey-events-api" {
6459
6483
  import { IAction } from "actions/action";
6460
6484
  import { Base } from "base";
6461
- import { IElement, ISurveyElement, IValueItemCustomPropValues } from "base-interfaces";
6485
+ import { IElement, IPanel, ISurveyElement, IValueItemCustomPropValues } from "base-interfaces";
6462
6486
  import { ItemValue } from "itemvalue";
6463
6487
  import { PageModel } from "page";
6464
6488
  import { PanelModel, PanelModelBase } from "panel";
@@ -6957,9 +6981,9 @@ declare module "survey-events-api" {
6957
6981
  }
6958
6982
  export interface UploadFilesEvent extends LoadFilesEvent {
6959
6983
  /**
6960
- * A callback function that you should call when a file is uploaded successfully or when file upload fails. Pass `"success"` or `"error"` as the first argument to indicate the operation status. As the second argument, you can pass the uploaded file's data if file upload was successful or an error message if file upload failed.
6984
+ * A callback function that you should call when a file is uploaded successfully or when file upload fails. Pass an array of successfully uploaded files as the first argument. As the second argument, you can pass an array of error messages if file upload failed.
6961
6985
  */
6962
- callback: (status: string, data?: any) => any;
6986
+ callback: (data: any | Array<any>, errors?: any | Array<any>) => any;
6963
6987
  /**
6964
6988
  * An array of JavaScript <a href="https://developer.mozilla.org/en-US/docs/Web/API/File" target="_blank">File</a> objects that represent files to upload.
6965
6989
  */
@@ -7316,27 +7340,39 @@ declare module "survey-events-api" {
7316
7340
  /**
7317
7341
  * A survey element being dragged.
7318
7342
  */
7319
- target: IElement;
7343
+ draggedElement: IElement;
7320
7344
  /**
7321
- * A survey element from which `target` is being dragged. This parameter is `null` if `target` is being dragged from the [Toolbox](https://surveyjs.io/survey-creator/documentation/toolbox).
7345
+ * A survey element from which `draggedElement` is being dragged. This parameter is `null` if `draggedElement` is being dragged from the [Toolbox](https://surveyjs.io/survey-creator/documentation/toolbox).
7322
7346
  */
7323
- source: IElement;
7347
+ fromElement: IPanel;
7348
+ /**
7349
+ * A survey element to which `draggedElement` is being dragged.
7350
+ */
7351
+ toElement: IElement;
7324
7352
  /**
7325
7353
  * A survey element before which the target element will be placed. This parameter is `null` if the parent container (page or panel) has no elements or if the target element will be placed below all other elements within the container.
7326
7354
  */
7327
7355
  insertBefore: IElement;
7328
7356
  /**
7329
- * A survey element after which `target` will be placed. This parameter is `null` if the parent container (page or panel) has no elements or if `target` will be placed above all other elements within the container.
7357
+ * A survey element after which `draggedElement` will be placed. This parameter is `null` if the parent container (page or panel) has no elements or if `draggedElement` will be placed above all other elements within the container.
7330
7358
  */
7331
7359
  insertAfter: IElement;
7332
7360
  /**
7333
- * A parent container (page or panel) within which `target` will be placed.
7361
+ * A parent container (page or panel) within which `draggedElement` will be placed.
7334
7362
  */
7335
7363
  parent: ISurveyElement;
7336
7364
  /**
7337
7365
  * A Boolean property that you can set to `false` if you want to cancel the drag and drop operation.
7338
7366
  */
7339
7367
  allow: boolean;
7368
+ /**
7369
+ * Obsolete. Use `options.draggedElement` instead.
7370
+ */
7371
+ target: IElement;
7372
+ /**
7373
+ * Obsolete. Use `options.toElement` instead.
7374
+ */
7375
+ source: IElement;
7340
7376
  }
7341
7377
  export interface ScrollingElementToTopEvent {
7342
7378
  /**
@@ -7496,6 +7532,7 @@ declare module "page" {
7496
7532
  protected calcCssClasses(css: any): any;
7497
7533
  get cssTitle(): string;
7498
7534
  get cssRoot(): string;
7535
+ protected getCssError(cssClasses: any): string;
7499
7536
  num: number;
7500
7537
  /**
7501
7538
  * Set this property to "hide" to make "Prev", "Next" and "Complete" buttons are invisible for this page. Set this property to "show" to make these buttons visible, even if survey showNavigationButtons property is false.
@@ -7757,6 +7794,15 @@ declare module "notifier" {
7757
7794
  import { Base } from "base";
7758
7795
  import { ActionContainer } from "actions/container";
7759
7796
  import { IAction } from "actions/action";
7797
+ interface INotifierCssClasses {
7798
+ root: string;
7799
+ rootWithButtons: string;
7800
+ info: string;
7801
+ error: string;
7802
+ success: string;
7803
+ button: string;
7804
+ shown: string;
7805
+ }
7760
7806
  export class Notifier extends Base {
7761
7807
  private cssClasses;
7762
7808
  active: boolean;
@@ -7768,14 +7814,7 @@ declare module "notifier" {
7768
7814
  private actionsVisibility;
7769
7815
  actionBar: ActionContainer;
7770
7816
  showActions: boolean;
7771
- constructor(cssClasses: {
7772
- root: string;
7773
- info: string;
7774
- error: string;
7775
- success: string;
7776
- button: string;
7777
- shown: string;
7778
- });
7817
+ constructor(cssClasses: INotifierCssClasses);
7779
7818
  getCssClass(type: string): string;
7780
7819
  updateActionsVisibility(type: string): void;
7781
7820
  notify(message: string, type?: string, waitUserAction?: boolean): void;
@@ -7843,11 +7882,10 @@ declare module "question_textbase" {
7843
7882
  protected setQuestionValue(newValue: any, updateIsAnswered?: boolean): void;
7844
7883
  protected convertToCorrectValue(val: any): any;
7845
7884
  protected getValueSeparator(): string;
7846
- disableNativeUndoRedo: boolean;
7847
- protected checkForUndo(event: KeyboardEvent): void;
7848
7885
  protected getControlCssClassBuilder(): CssClassBuilder;
7849
7886
  getControlClass(): string;
7850
7887
  get isNewA11yStructure(): boolean;
7888
+ onKeyDownPreprocess: (event: any) => void;
7851
7889
  }
7852
7890
  }
7853
7891
  declare module "question_text" {
@@ -8372,6 +8410,7 @@ declare module "survey" {
8372
8410
  import { QuestionMultipleTextModel } from "question_multipletext";
8373
8411
  import { ITheme, ImageFit, ImageAttachment } from "themes";
8374
8412
  import { PopupModel } from "popup";
8413
+ import { Cover } from "header";
8375
8414
  /**
8376
8415
  * The `SurveyModel` object contains properties and methods that allow you to control the survey and access its elements.
8377
8416
  *
@@ -9097,8 +9136,11 @@ declare module "survey" {
9097
9136
  *
9098
9137
  * - `"advanced"`\
9099
9138
  * An advanced header view applies the same properties as the basic view, plus [header settings](https://surveyjs.io/form-library/documentation/api-reference/iheader) from the [survey theme](https://surveyjs.io/form-library/documentation/api-reference/itheme#header). The advanced view features a more flexible header layout, a capability to specify a background image, and other settings that give a more professional look to the survey header.
9139
+ *
9140
+ * [View Demo](https://surveyjs.io/form-library/examples/brand-your-survey-header/ (linkStyle))
9100
9141
  */
9101
9142
  headerView: "advanced" | "basic";
9143
+ protected insertAdvancedHeader(advHeader: Cover): void;
9102
9144
  private getNavigationCss;
9103
9145
  private lazyRenderingValue;
9104
9146
  showBrandInfo: boolean;
@@ -9294,7 +9336,8 @@ declare module "survey" {
9294
9336
  * Specifies whether to hide validation errors thrown by the Required validation in the UI.
9295
9337
  *
9296
9338
  * [Built-In Client-Side Validators](https://surveyjs.io/form-library/documentation/data-validation#built-in-client-side-validators (linkStyle))
9297
- * @see ignoreValidation
9339
+ * @see validationEnabled
9340
+ * @see validationAllowSwitchPages
9298
9341
  */
9299
9342
  hideRequiredErrors: boolean;
9300
9343
  beforeSettingQuestionErrors(question: Question, errors: Array<SurveyError>): void;
@@ -9367,6 +9410,10 @@ declare module "survey" {
9367
9410
  * - `"onComplete"` - Triggers validation when a user clicks the Complete button. If previous pages contain errors, the survey switches to the page with the first error.
9368
9411
  *
9369
9412
  * Refer to the following help topic for more information: [Data Validation](https://surveyjs.io/form-library/documentation/data-validation).
9413
+ * @see validationEnabled
9414
+ * @see validationAllowSwitchPages
9415
+ * @see validationAllowComplete
9416
+ * @see validate
9370
9417
  */
9371
9418
  get checkErrorsMode(): string;
9372
9419
  set checkErrorsMode(val: string);
@@ -10026,6 +10073,16 @@ declare module "survey" {
10026
10073
  get completedState(): string;
10027
10074
  get completedStateText(): string;
10028
10075
  protected setCompletedState(value: string, text: string): void;
10076
+ /**
10077
+ * Displays a toast notification with a specified message.
10078
+ *
10079
+ * Depending on the `type` argument, a survey can display the following notification types:
10080
+ *
10081
+ * ![Toast notification types in SurveyJS Form Library](https://surveyjs.io//Content/Images/docs/notification-types.png)
10082
+ * @param message A message to display.
10083
+ * @param type A notification type: `"info"` (default), `"success"`, or `"error"`.
10084
+ * @param showActions For internal use.
10085
+ */
10029
10086
  notify(message: string, type: string, showActions?: boolean): void;
10030
10087
  /**
10031
10088
  * Resets the survey [`state`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#state) and, optionally, [`data`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#data). If `state` is `"completed"`, it becomes `"running"`.
@@ -10091,15 +10148,32 @@ declare module "survey" {
10091
10148
  */
10092
10149
  deleteCookie(): void;
10093
10150
  /**
10094
- * Specifies whether to skip validation when you switch between pages or complete the survey programmatically or when users do that in the UI.
10151
+ * This property is obsolete. Use the [`validationEnabled`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#validationEnabled) property instead.
10152
+ */
10153
+ get ignoreValidation(): boolean;
10154
+ set ignoreValidation(val: boolean);
10155
+ /**
10156
+ * Specifies whether data validation is enabled.
10095
10157
  *
10096
- * Default value: `false`
10158
+ * Default value: `true`
10159
+ * @see checkErrorsMode
10097
10160
  * @see hideRequiredErrors
10098
- * @see nextPage
10099
- * @see isPrevPage
10100
- * @see completeLastPage
10101
10161
  */
10102
- ignoreValidation: boolean;
10162
+ validationEnabled: boolean;
10163
+ /**
10164
+ * Specifies whether respondents can switch the current page even if it contains validation errors.
10165
+ *
10166
+ * Default value: `false`
10167
+ * @see checkErrorsMode
10168
+ */
10169
+ validationAllowSwitchPages: boolean;
10170
+ /**
10171
+ * Specifies whether respondents can end a survey with validation errors.
10172
+ *
10173
+ * Default value: `false`
10174
+ * @see checkErrorsMode
10175
+ */
10176
+ validationAllowComplete: boolean;
10103
10177
  /**
10104
10178
  * Switches the survey to the next page.
10105
10179
  *
@@ -10252,7 +10326,7 @@ declare module "survey" {
10252
10326
  private runningPages;
10253
10327
  private onShowingPreviewChanged;
10254
10328
  private changeCurrentPageFromPreview;
10255
- private origionalPages;
10329
+ private originalPages;
10256
10330
  protected onQuestionsOnPageModeChanged(oldValue: string): void;
10257
10331
  private restoreOriginalPages;
10258
10332
  private getPageStartIndex;
@@ -10447,11 +10521,11 @@ declare module "survey" {
10447
10521
  * @param question A [File Upload question instance](https://surveyjs.io/form-library/documentation/api-reference/file-model).
10448
10522
  * @param name The File Upload question's [`name`](https://surveyjs.io/form-library/documentation/api-reference/file-model#name).
10449
10523
  * @param files An array of JavaScript <a href="https://developer.mozilla.org/en-US/docs/Web/API/File" target="_blank">File</a> objects that represent files to upload.
10450
- * @param callback A callback function that allows you to get the upload status (`"success"` or `"error"`) and file data.
10524
+ * @param callback A callback function that allows you to access successfully uploaded files as the first argument. If any files fail to upload, the second argument contains an array of error messages.
10451
10525
  * @see onUploadFiles
10452
10526
  * @see downloadFile
10453
10527
  */
10454
- uploadFiles(question: QuestionFileModel, name: string, files: File[], callback: (status: string, data: any) => any): void;
10528
+ uploadFiles(question: QuestionFileModel, name: string, files: File[], callback: (data: any | Array<any>, errors?: any | Array<any>) => any): void;
10455
10529
  /**
10456
10530
  * Downloads a file from a server.
10457
10531
  *
@@ -10487,7 +10561,7 @@ declare module "survey" {
10487
10561
  updateChoicesFromServer(question: QuestionSelectBase, choices: Array<ItemValue>, serverResult: any): Array<ItemValue>;
10488
10562
  loadedChoicesFromServer(question: IQuestion): void;
10489
10563
  protected createSurveyService(): dxSurveyService;
10490
- protected uploadFilesCore(name: string, files: File[], uploadingCallback: (status: string, data: any) => any): void;
10564
+ protected uploadFilesCore(name: string, files: File[], uploadingCallback: (data: any | Array<any>, errors?: any | Array<any>) => any): void;
10491
10565
  getPage(index: number): PageModel;
10492
10566
  /**
10493
10567
  * Adds an existing page to the survey.
@@ -10990,6 +11064,7 @@ declare module "survey" {
10990
11064
  private isMovingQuestion;
10991
11065
  startMovingQuestion(): void;
10992
11066
  stopMovingQuestion(): void;
11067
+ get isQuestionDragging(): boolean;
10993
11068
  private needRenderIcons;
10994
11069
  private skippedPages;
10995
11070
  /**
@@ -11874,7 +11949,6 @@ declare module "question" {
11874
11949
  get isContainer(): boolean;
11875
11950
  protected updateCommentElements(): void;
11876
11951
  onCommentInput(event: any): void;
11877
- onCompositionUpdateComment(event: any): void;
11878
11952
  onCommentChange(event: any): void;
11879
11953
  afterRenderQuestionElement(el: HTMLElement): void;
11880
11954
  afterRender(el: HTMLElement): void;
@@ -11989,6 +12063,7 @@ declare module "question" {
11989
12063
  * @see otherItem
11990
12064
  * @see otherErrorText
11991
12065
  * @see showCommentArea
12066
+ * @see [settings.specialChoicesOrder](https://surveyjs.io/form-library/documentation/api-reference/settings#specialChoicesOrder)
11992
12067
  */
11993
12068
  get showOtherItem(): boolean;
11994
12069
  set showOtherItem(val: boolean);
@@ -12141,6 +12216,8 @@ declare module "question" {
12141
12216
  * - `{row.other_question_name}` (to access questions inside the same dynamic matrix or multi-column dropdown)
12142
12217
  *
12143
12218
  * An expression can also include built-in and custom functions for advanced calculations. For example, if the `defaultValue` should be today's date, set the `defaultValueExpression` to `"today()"`, and the corresponding built-in function will be executed each time the survey is loaded. Refer to the following help topic for more information: [Built-In Functions](https://surveyjs.io/form-library/documentation/design-survey-conditional-logic#built-in-functions).
12219
+ *
12220
+ * [View Demo](https://surveyjs.io/form-library/examples/specify-default-question-value-dynamically (linkStyle))
12144
12221
  * @see defaultValue
12145
12222
  * @see setValueExpression
12146
12223
  */
@@ -12511,6 +12588,7 @@ declare module "martixBase" {
12511
12588
  get rowTitleWidth(): string;
12512
12589
  set rowTitleWidth(val: string);
12513
12590
  getCellAriaLabel(rowTitle: string, columnTitle: string): string;
12591
+ get isNewA11yStructure(): boolean;
12514
12592
  }
12515
12593
  }
12516
12594
  declare module "question_matrixdropdownbase" {
@@ -12557,6 +12635,7 @@ declare module "question_matrixdropdownbase" {
12557
12635
  data: IMatrixDropdownData;
12558
12636
  private questionValue;
12559
12637
  constructor(column: MatrixDropdownColumn, row: MatrixDropdownRowModelBase, data: IMatrixDropdownData);
12638
+ private updateCellQuestionTitleDueToAccessebility;
12560
12639
  locStrsChanged(): void;
12561
12640
  protected createQuestion(column: MatrixDropdownColumn, row: MatrixDropdownRowModelBase, data: IMatrixDropdownData): Question;
12562
12641
  get question(): Question;
@@ -12592,10 +12671,12 @@ declare module "question_matrixdropdownbase" {
12592
12671
  constructor(data: IMatrixDropdownData, value: any);
12593
12672
  get id(): string;
12594
12673
  get rowName(): any;
12674
+ get dataName(): string;
12595
12675
  get text(): any;
12596
12676
  get value(): any;
12597
12677
  set value(value: any);
12598
12678
  get locText(): LocalizableString;
12679
+ getAccessbilityText(): string;
12599
12680
  get hasPanel(): boolean;
12600
12681
  get detailPanel(): PanelModel;
12601
12682
  get detailPanelId(): string;
@@ -13127,7 +13208,7 @@ declare module "base-interfaces" {
13127
13208
  maxTextLength: number;
13128
13209
  maxOthersLength: number;
13129
13210
  clearValueOnDisableItems: boolean;
13130
- uploadFiles(question: IQuestion, name: string, files: File[], uploadingCallback: (status: string, data: any) => any): any;
13211
+ uploadFiles(question: IQuestion, name: string, files: File[], uploadingCallback: (data: any | Array<any>, errors?: any | Array<any>) => any): any;
13131
13212
  downloadFile(question: IQuestion, name: string, content: string, callback: (status: string, data: any) => any): any;
13132
13213
  clearFiles(question: IQuestion, name: string, value: any, fileName: string, clearCallback: (status: string, data: any) => any): any;
13133
13214
  updateChoicesFromServer(question: IQuestion, choices: Array<any>, serverResult: any): Array<any>;
@@ -13321,6 +13402,7 @@ declare module "base-interfaces" {
13321
13402
  component?: string;
13322
13403
  template?: string;
13323
13404
  data?: any;
13405
+ index?: number;
13324
13406
  processResponsiveness?: (width: number) => void;
13325
13407
  }
13326
13408
  export interface IPlainDataOptions {
@@ -14323,6 +14405,27 @@ declare module "settings" {
14323
14405
  * Default value: `"none"`
14324
14406
  */
14325
14407
  noneItemValue: string;
14408
+ /**
14409
+ * An object whose properties specify the order of the special choice items (None, Other, Select All) in select-based questions.
14410
+ *
14411
+ * Default value: `{ selectAllItem: [-1], noneItem: [1], otherItem: [2] }`
14412
+ *
14413
+ * Use this object to reorder special choices. Each property accepts an array of integer numbers. Negative numbers place a special choice item above regular choice items, positive numbers place it below them. For instance, the code below specifies the following order of choices: None, Select All, regular choices, Other.
14414
+ *
14415
+ * ```js
14416
+ * import { settings } from "survey-core";
14417
+ *
14418
+ * settings.specialChoicesOrder.noneItem = [-2];
14419
+ * settings.specialChoicesOrder.selectAllItem = [-1];
14420
+ * settings.specialChoicesOrder.otherItem = [1];
14421
+ * ```
14422
+ *
14423
+ * If you want to duplicate a special choice item above and below other choices, add two numbers to the corresponding array:
14424
+ *
14425
+ * ```js
14426
+ * settings.specialChoicesOrder.selectAllItem = [-1, 3] // Displays Select All above and below other choices
14427
+ * ```
14428
+ */
14326
14429
  specialChoicesOrder: {
14327
14430
  selectAllItem: number[];
14328
14431
  noneItem: number[];
@@ -15314,6 +15417,7 @@ declare module "dragdrop/choices" {
15314
15417
  import { QuestionSelectBase } from "question_baseselect";
15315
15418
  import { DragDropCore } from "dragdrop/core";
15316
15419
  export class DragDropChoices extends DragDropCore<QuestionSelectBase> {
15420
+ private imagepickerControlsNode;
15317
15421
  protected get draggedElementType(): string;
15318
15422
  protected createDraggedElementShortcut(text: string, draggedElementNode: HTMLElement, event: PointerEvent): HTMLElement;
15319
15423
  private createImagePickerShortcut;
@@ -15468,7 +15572,13 @@ declare module "question_ranking" {
15468
15572
  set selectToRankAreasLayout(val: string);
15469
15573
  get renderedSelectToRankAreasLayout(): string;
15470
15574
  isMobileMode(): boolean;
15575
+ /**
15576
+ * A placeholder displayed in the area for ranked choices. Applies when [`selectToRankEnabled`](https://surveyjs.io/form-library/documentation/api-reference/ranking-question-model#selectToRankEnabled) is `true`.
15577
+ */
15471
15578
  selectToRankEmptyRankedAreaText: string;
15579
+ /**
15580
+ * A placeholder displayed in the area for unranked choices. Applies when [`selectToRankEnabled`](https://surveyjs.io/form-library/documentation/api-reference/ranking-question-model#selectToRankEnabled) is `true`.
15581
+ */
15472
15582
  selectToRankEmptyUnrankedAreaText: string;
15473
15583
  get useFullItemSizeForShortcut(): boolean;
15474
15584
  set useFullItemSizeForShortcut(val: boolean);
@@ -15718,6 +15828,7 @@ declare module "question_rating" {
15718
15828
  itemValuePropertyChanged(item: ItemValue, name: string, oldValue: any, newValue: any): void;
15719
15829
  private createRenderedRateItems;
15720
15830
  renderedRateItems: Array<RenderedRatingItem>;
15831
+ private createRateValues;
15721
15832
  private correctValue;
15722
15833
  getType(): string;
15723
15834
  protected getFirstInputElementId(): string;
@@ -16106,7 +16217,9 @@ declare module "question_signaturepad" {
16106
16217
  *
16107
16218
  * Default value: `false`
16108
16219
  *
16109
- * > The signature area is scaled only for display. The resulting image will have dimensions specified by the [`signatureHeight`](#signatureHeight) and [`signatureWidth`](#signatureWidth) properties.
16220
+ * This property auto-scales the signature area to fill all available width within the question box while maintaining the default 3:2 aspect ratio. If you set [custom width](#signatureWidth) and [height](#signatureHeight) values, the setting will keep the aspect ratio of these dimensions.
16221
+ *
16222
+ * > The signature area is scaled only for display. The image saved in survey results will have dimensions specified by the [`signatureHeight`](#signatureHeight) and [`signatureWidth`](#signatureWidth) properties.
16110
16223
  */
16111
16224
  signatureAutoScaleEnabled: boolean;
16112
16225
  /**
@@ -16898,6 +17011,7 @@ declare module "defaultCss/cssstandard" {
16898
17011
  };
16899
17012
  saveData: {
16900
17013
  root: string;
17014
+ rootWithButtons: string;
16901
17015
  info: string;
16902
17016
  error: string;
16903
17017
  success: string;
@@ -17362,6 +17476,7 @@ declare module "defaultCss/cssmodern" {
17362
17476
  };
17363
17477
  saveData: {
17364
17478
  root: string;
17479
+ rootWithButtons: string;
17365
17480
  info: string;
17366
17481
  error: string;
17367
17482
  success: string;
@@ -23651,11 +23766,13 @@ declare module "react/reactquestion_comment" {
23651
23766
  protected renderElement(): JSX.Element;
23652
23767
  }
23653
23768
  export class SurveyQuestionCommentItem extends ReactSurveyElement {
23769
+ private getStateComment;
23770
+ constructor(props: any);
23654
23771
  protected canRender(): boolean;
23655
23772
  protected onCommentChange(event: any): void;
23656
23773
  protected onCommentInput(event: any): void;
23657
- protected onCommentCompositionUpdate(event: any): void;
23658
23774
  protected getComment(): string;
23775
+ protected setComment(value: any): void;
23659
23776
  protected getId(): string;
23660
23777
  protected getPlaceholder(): string;
23661
23778
  protected renderElement(): JSX.Element;
@@ -23663,8 +23780,8 @@ declare module "react/reactquestion_comment" {
23663
23780
  export class SurveyQuestionOtherValueItem extends SurveyQuestionCommentItem {
23664
23781
  protected onCommentChange(event: any): void;
23665
23782
  protected onCommentInput(event: any): void;
23666
- protected onCommentCompositionUpdate(event: any): void;
23667
23783
  protected getComment(): string;
23784
+ protected setComment(value: any): void;
23668
23785
  protected getId(): string;
23669
23786
  protected getPlaceholder(): string;
23670
23787
  }
@@ -24313,6 +24430,18 @@ declare module "react/components/rating/rating-item-smiley" {
24313
24430
  render(): JSX.Element | null;
24314
24431
  }
24315
24432
  }
24433
+ declare module "react/components/rating/rating-dropdown-item" {
24434
+ import { SurveyElementBase } from "react/reactquestion_element";
24435
+ interface IRatingItemProps {
24436
+ item: any;
24437
+ }
24438
+ export class RatingDropdownItem extends SurveyElementBase<IRatingItemProps, any> {
24439
+ get item(): any;
24440
+ getStateElement(): any;
24441
+ render(): JSX.Element | null;
24442
+ renderDescription(item: any): JSX.Element;
24443
+ }
24444
+ }
24316
24445
  declare module "react/tagbox-filter" {
24317
24446
  import { DropdownMultiSelectListModel, QuestionTagboxModel } from "entries/core";
24318
24447
  import { SurveyElementBase } from "react/reactquestion_element";
@@ -24842,6 +24971,7 @@ declare module "react/reactquestion_rating" {
24842
24971
  declare module "react/rating-dropdown" {
24843
24972
  import { QuestionRatingModel } from "entries/core";
24844
24973
  import { SurveyQuestionDropdownBase } from "react/dropdown-base";
24974
+ export * from "react/components/rating/rating-dropdown-item";
24845
24975
  export class SurveyQuestionRatingDropdown extends SurveyQuestionDropdownBase<QuestionRatingModel> {
24846
24976
  constructor(props: any);
24847
24977
  protected renderElement(): JSX.Element;
@@ -25066,6 +25196,7 @@ declare module "entries/react-ui-model" {
25066
25196
  export { RatingItem } from "react/components/rating/rating-item";
25067
25197
  export { RatingItemStar } from "react/components/rating/rating-item-star";
25068
25198
  export { RatingItemSmiley } from "react/components/rating/rating-item-smiley";
25199
+ export { RatingDropdownItem } from "react/components/rating/rating-dropdown-item";
25069
25200
  export { TagboxFilterString } from "react/tagbox-filter";
25070
25201
  export { SurveyQuestionOptionItem } from "react/dropdown-item";
25071
25202
  export { SurveyQuestionDropdownBase } from "react/dropdown-base";