survey-react 1.12.3 → 1.12.5

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
@@ -889,7 +889,7 @@ declare module "packages/survey-core/src/utils/utils" {
889
889
  const getElement: (element: HTMLElement | string) => HTMLElement;
890
890
  function isElementVisible(element: HTMLElement, threshold?: number): boolean;
891
891
  function findScrollableParent(element: HTMLElement): HTMLElement;
892
- function scrollElementByChildId(id: string): void;
892
+ function activateLazyRenderingChecks(id: string): void;
893
893
  function navigateToUrl(url: string): void;
894
894
  function wrapUrlForBackgroundImage(url: string): string;
895
895
  function getIconNameFromProxy(iconName: string): string;
@@ -948,7 +948,7 @@ declare module "packages/survey-core/src/utils/utils" {
948
948
  export function prepareElementForVerticalAnimation(el: HTMLElement): void;
949
949
  export function cleanHtmlElementAfterAnimation(el: HTMLElement): void;
950
950
  export function roundTo2Decimals(number: number): number;
951
- export { mergeValues, getElementWidth, isContainerVisible, classesToSelector, compareVersions, confirmAction, confirmActionAsync, detectIEOrEdge, detectIEBrowser, loadFileFromBase64, isMobile, isShadowDOM, getElement, isElementVisible, findScrollableParent, scrollElementByChildId, navigateToUrl, wrapUrlForBackgroundImage, createSvg, getIconNameFromProxy, increaseHeightByContent, getOriginalEvent, preventDefaults, findParentByClassNames, getFirstVisibleChild, chooseFiles };
951
+ export { mergeValues, getElementWidth, isContainerVisible, classesToSelector, compareVersions, confirmAction, confirmActionAsync, detectIEOrEdge, detectIEBrowser, loadFileFromBase64, isMobile, isShadowDOM, getElement, isElementVisible, findScrollableParent, activateLazyRenderingChecks, navigateToUrl, wrapUrlForBackgroundImage, createSvg, getIconNameFromProxy, increaseHeightByContent, getOriginalEvent, preventDefaults, findParentByClassNames, getFirstVisibleChild, chooseFiles };
952
952
  }
953
953
  declare module "packages/survey-core/src/actions/container" {
954
954
  import { Base } from "packages/survey-core/src/base";
@@ -2255,6 +2255,7 @@ declare module "packages/survey-core/src/defaultCss/defaultV2Css" {
2255
2255
  changeCameraButton: string;
2256
2256
  takePictureButton: string;
2257
2257
  loadingIndicator: string;
2258
+ page: string;
2258
2259
  };
2259
2260
  signaturepad: {
2260
2261
  mainRoot: string;
@@ -3289,6 +3290,7 @@ declare module "packages/survey-core/src/panel" {
3289
3290
  private static getRowId;
3290
3291
  protected _scrollableParent: any;
3291
3292
  protected _updateVisibility: any;
3293
+ private get allowRendering();
3292
3294
  startLazyRendering(rowContainerDiv: HTMLElement, findScrollableContainer?: typeof findScrollableParent): void;
3293
3295
  ensureVisibility(): void;
3294
3296
  stopLazyRendering(): void;
@@ -3593,6 +3595,8 @@ declare module "packages/survey-core/src/panel" {
3593
3595
  getProgressInfo(): IProgressInfo;
3594
3596
  get root(): PanelModelBase;
3595
3597
  protected childVisibilityChanged(): void;
3598
+ protected canRenderFirstRows(): boolean;
3599
+ private isLazyRenderInRow;
3596
3600
  createRowAndSetLazy(index: number): QuestionRowModel;
3597
3601
  createRow(): QuestionRowModel;
3598
3602
  onSurveyLoad(): void;
@@ -3614,12 +3618,14 @@ declare module "packages/survey-core/src/panel" {
3614
3618
  private updateRowsVisibility;
3615
3619
  canBuildRows(): boolean;
3616
3620
  private buildRows;
3617
- private isLazyRenderInRow;
3618
- protected canRenderFirstRows(): boolean;
3619
3621
  getDragDropInfo(): any;
3620
3622
  private updateRowsOnElementRemoved;
3621
3623
  updateRowsRemoveElementFromRow(element: IElement, row: QuestionRowModel): void;
3622
- disableLazyRenderingBeforeElement(el?: IElement): void;
3624
+ getAllRows(): Array<QuestionRowModel>;
3625
+ private findRowAndIndexByElement;
3626
+ private forceRenderRow;
3627
+ forceRenderElement(el: IElement, elementsRendered?: () => void, gap?: number): void;
3628
+ forceRenderRows(rows: Array<QuestionRowModel>, elementsRendered?: () => void): void;
3623
3629
  findRowByElement(el: IElement): QuestionRowModel;
3624
3630
  elementWidthChanged(el: IElement): void;
3625
3631
  get processedTitle(): string;
@@ -3742,6 +3748,7 @@ declare module "packages/survey-core/src/panel" {
3742
3748
  get cssError(): string;
3743
3749
  protected getCssError(cssClasses: any): string;
3744
3750
  getSerializableColumnsValue(): Array<PanelLayoutColumnModel>;
3751
+ afterRender(el: HTMLElement): void;
3745
3752
  dispose(): void;
3746
3753
  }
3747
3754
  /**
@@ -3825,6 +3832,7 @@ declare module "packages/survey-core/src/panel" {
3825
3832
  protected createLocTitleProperty(): LocalizableString;
3826
3833
  protected beforeSetVisibleIndex(index: number): number;
3827
3834
  protected getPanelStartIndex(index: number): number;
3835
+ private hasParentInQuestionIndex;
3828
3836
  protected isContinueNumbering(): boolean;
3829
3837
  private notifySurveyOnVisibilityChanged;
3830
3838
  protected getRenderedTitle(str: string): string;
@@ -3868,6 +3876,7 @@ declare module "packages/survey-core/src/panel" {
3868
3876
  [index: string]: string;
3869
3877
  }): string;
3870
3878
  getContainerCss(): string;
3879
+ afterRenderCore(element: HTMLElement): void;
3871
3880
  }
3872
3881
  }
3873
3882
  declare module "packages/survey-core/src/utils/camera" {
@@ -3902,7 +3911,7 @@ declare module "packages/survey-core/src/utils/camera" {
3902
3911
  declare module "packages/survey-core/src/question_file" {
3903
3912
  import { IPlainDataOptions } from "packages/survey-core/src/base-interfaces";
3904
3913
  import { IQuestionPlainData, Question } from "packages/survey-core/src/question";
3905
- import { EventBase } from "packages/survey-core/src/base";
3914
+ import { EventBase, Base } from "packages/survey-core/src/base";
3906
3915
  import { SurveyError } from "packages/survey-core/src/survey-error";
3907
3916
  import { ActionContainer } from "packages/survey-core/src/actions/container";
3908
3917
  import { Action } from "packages/survey-core/src/actions/action";
@@ -3955,9 +3964,21 @@ declare module "packages/survey-core/src/question_file" {
3955
3964
  *
3956
3965
  * [View Demo](https://surveyjs.io/form-library/examples/file-upload/ (linkStyle))
3957
3966
  */
3967
+ export class QuestionFilePage extends Base {
3968
+ private question;
3969
+ private index;
3970
+ private static pageCounter;
3971
+ private static getId;
3972
+ items: Array<any>;
3973
+ id: string;
3974
+ constructor(question: QuestionFileModel, index: number);
3975
+ get css(): string;
3976
+ }
3958
3977
  export class QuestionFileModel extends QuestionFileModelBase {
3959
3978
  isDragging: boolean;
3960
3979
  previewValue: any[];
3980
+ pages: QuestionFilePage[];
3981
+ navigationDirection: "left" | "right" | "left-delete";
3961
3982
  indexToShow: number;
3962
3983
  pageSize: number;
3963
3984
  containsMultiplyFiles: boolean;
@@ -3986,6 +4007,7 @@ declare module "packages/survey-core/src/question_file" {
3986
4007
  startCameraAction: Action;
3987
4008
  cleanAction: Action;
3988
4009
  actionsContainer: ActionContainer;
4010
+ get supportFileNavigator(): boolean;
3989
4011
  private isFileLoadingValue;
3990
4012
  protected get isFileLoading(): boolean;
3991
4013
  protected set isFileLoading(val: boolean);
@@ -4010,9 +4032,10 @@ declare module "packages/survey-core/src/question_file" {
4010
4032
  protected updateElementCssCore(cssClasses: any): void;
4011
4033
  private getFileIndexCaption;
4012
4034
  private updateFileNavigator;
4035
+ private updateRenderedPages;
4036
+ private updatePages;
4013
4037
  private prevPreviewLength;
4014
4038
  private previewValueChanged;
4015
- isPreviewVisible(index: number): boolean;
4016
4039
  getType(): string;
4017
4040
  /**
4018
4041
  * Disable this property only to implement a custom preview.
@@ -4150,6 +4173,11 @@ declare module "packages/survey-core/src/question_file" {
4150
4173
  protected supportResponsiveness(): boolean;
4151
4174
  protected getObservedElementSelector(): string;
4152
4175
  private getFileListSelector;
4176
+ private _renderedPages;
4177
+ get renderedPages(): Array<QuestionFilePage>;
4178
+ set renderedPages(val: Array<QuestionFilePage>);
4179
+ private getPagesAnimationOptions;
4180
+ private pagesAnimation;
4153
4181
  private calcAvailableItemsCount;
4154
4182
  private calculatedGapBetweenItems;
4155
4183
  private calculatedItemWidth;
@@ -4392,6 +4420,7 @@ declare module "packages/survey-core/src/utils/text-area" {
4392
4420
  export class TextAreaModel {
4393
4421
  private options;
4394
4422
  private element;
4423
+ private updateElement;
4395
4424
  private onPropertyChangedCallback;
4396
4425
  constructor(options: ITextArea);
4397
4426
  setElement(element: HTMLTextAreaElement | null): void;
@@ -4934,9 +4963,6 @@ declare module "packages/survey-core/src/question_baseselect" {
4934
4963
  getItemId(item: ItemValue): string;
4935
4964
  get questionName(): string;
4936
4965
  getItemEnabled(item: ItemValue): boolean;
4937
- protected rootElement: HTMLElement;
4938
- afterRender(el: HTMLElement): void;
4939
- beforeDestroyQuestionElement(el: HTMLElement): void;
4940
4966
  private focusOtherComment;
4941
4967
  private prevIsOtherSelected;
4942
4968
  protected onValueChanged(): void;
@@ -6083,6 +6109,7 @@ declare module "packages/survey-core/src/question_matrixdynamic" {
6083
6109
  */
6084
6110
  get minRowCount(): number;
6085
6111
  set minRowCount(val: number);
6112
+ private onMinRowCountChanged;
6086
6113
  /**
6087
6114
  * A maximum number of rows in the matrix. Users cannot add new rows if `rowCount` equals `maxRowCount`.
6088
6115
  *
@@ -6093,6 +6120,7 @@ declare module "packages/survey-core/src/question_matrixdynamic" {
6093
6120
  */
6094
6121
  get maxRowCount(): number;
6095
6122
  set maxRowCount(val: number);
6123
+ private onMaxRowCountChanged;
6096
6124
  /**
6097
6125
  * Specifies whether users are allowed to add new rows.
6098
6126
  *
@@ -6342,7 +6370,13 @@ declare module "packages/survey-core/src/themes" {
6342
6370
  *
6343
6371
  * Default value: 256
6344
6372
  */
6345
- height: number;
6373
+ height?: number;
6374
+ /**
6375
+ * The height of the survey header on smartphones, measured in pixels.
6376
+ *
6377
+ * Default value: 0 (the height is calculated automatically to accommodate the header's content).
6378
+ */
6379
+ mobileHeight?: number;
6346
6380
  /**
6347
6381
  * A string value that specifies whether the header spans the width of the survey or that of the survey container.
6348
6382
  *
@@ -6356,27 +6390,27 @@ declare module "packages/survey-core/src/themes" {
6356
6390
  * @see [SurveyModel.width](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#width)
6357
6391
  * @see [SurveyModel.widthMode](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#widthMode)
6358
6392
  */
6359
- inheritWidthFrom: "survey" | "container";
6393
+ inheritWidthFrom?: "survey" | "container";
6360
6394
  /**
6361
6395
  * The width of the header area that contains the survey [title](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#title) and [description](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#description), measured in pixels.
6362
6396
  *
6363
6397
  * Default value: 512
6364
6398
  */
6365
- textAreaWidth: number;
6399
+ textAreaWidth?: number;
6366
6400
  /**
6367
6401
  * A Boolean value that specifies whether the header overlaps the survey content.
6368
6402
  *
6369
6403
  * Default value: `false`
6370
6404
  */
6371
- overlapEnabled: boolean;
6405
+ overlapEnabled?: boolean;
6372
6406
  /**
6373
6407
  * An image to display in the background of the header. Accepts a base64 or URL string value.
6374
6408
  */
6375
- backgroundImage: string;
6409
+ backgroundImage?: string;
6376
6410
  /**
6377
6411
  * A value from 0 to 1 that specifies how transparent the [background image](#backgroundImage) should be: 0 makes the image completely transparent, and 1 makes it opaque.
6378
6412
  */
6379
- backgroundImageOpacity: number;
6413
+ backgroundImageOpacity?: number;
6380
6414
  /**
6381
6415
  * A string value that specifies how to resize a [background image](#backgroundImage) to fit it into the header.
6382
6416
  *
@@ -6391,7 +6425,7 @@ declare module "packages/survey-core/src/themes" {
6391
6425
  * - `"tile"`\
6392
6426
  * Tiles as many copies of the image as needed to fill the entire header.
6393
6427
  */
6394
- backgroundImageFit: "cover" | "fill" | "contain" | "tile";
6428
+ backgroundImageFit?: "cover" | "fill" | "contain" | "tile";
6395
6429
  /**
6396
6430
  * A string value that specifies the logo position within the header in the horizontal direction.
6397
6431
  *
@@ -6403,7 +6437,7 @@ declare module "packages/survey-core/src/themes" {
6403
6437
  *
6404
6438
  * To specify a logo, set `SurveyModel`'s [`logo`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#logo) property.
6405
6439
  */
6406
- logoPositionX: HorizontalAlignment;
6440
+ logoPositionX?: HorizontalAlignment;
6407
6441
  /**
6408
6442
  * A string value that specifies the logo position within the header in the vertical direction.
6409
6443
  *
@@ -6415,7 +6449,7 @@ declare module "packages/survey-core/src/themes" {
6415
6449
  *
6416
6450
  * To specify a logo, set `SurveyModel`'s [`logo`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#logo) property.
6417
6451
  */
6418
- logoPositionY: VerticalAlignment;
6452
+ logoPositionY?: VerticalAlignment;
6419
6453
  /**
6420
6454
  * A string value that specifies the survey title position within the header in the horizontal direction.
6421
6455
  *
@@ -6427,7 +6461,7 @@ declare module "packages/survey-core/src/themes" {
6427
6461
  *
6428
6462
  * To specify a survey title, set `SurveyModel`'s [`title`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#title) property.
6429
6463
  */
6430
- titlePositionX: HorizontalAlignment;
6464
+ titlePositionX?: HorizontalAlignment;
6431
6465
  /**
6432
6466
  * A string value that specifies the survey title position within the header in the vertical direction.
6433
6467
  *
@@ -6439,7 +6473,7 @@ declare module "packages/survey-core/src/themes" {
6439
6473
  *
6440
6474
  * To specify a survey title, set `SurveyModel`'s [`title`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#title) property.
6441
6475
  */
6442
- titlePositionY: VerticalAlignment;
6476
+ titlePositionY?: VerticalAlignment;
6443
6477
  /**
6444
6478
  * A string value that specifies the survey description position within the header in the horizontal direction.
6445
6479
  *
@@ -6451,7 +6485,7 @@ declare module "packages/survey-core/src/themes" {
6451
6485
  *
6452
6486
  * To specify a survey description, set `SurveyModel`'s [`description`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#description) property.
6453
6487
  */
6454
- descriptionPositionX: HorizontalAlignment;
6488
+ descriptionPositionX?: HorizontalAlignment;
6455
6489
  /**
6456
6490
  * A string value that specifies the survey description position within the header in the vertical direction.
6457
6491
  *
@@ -6463,7 +6497,7 @@ declare module "packages/survey-core/src/themes" {
6463
6497
  *
6464
6498
  * To specify a survey description, set `SurveyModel`'s [`description`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#description) property.
6465
6499
  */
6466
- descriptionPositionY: VerticalAlignment;
6500
+ descriptionPositionY?: VerticalAlignment;
6467
6501
  }
6468
6502
  }
6469
6503
  declare module "packages/survey-core/src/question_paneldynamic" {
@@ -6811,6 +6845,7 @@ declare module "packages/survey-core/src/question_paneldynamic" {
6811
6845
  */
6812
6846
  get minPanelCount(): number;
6813
6847
  set minPanelCount(val: number);
6848
+ private onMinPanelCountChanged;
6814
6849
  /**
6815
6850
  * A maximum number of panels in Dynamic Panel. Users cannot add new panels if `panelCount` equals `maxPanelCount`.
6816
6851
  *
@@ -6821,6 +6856,7 @@ declare module "packages/survey-core/src/question_paneldynamic" {
6821
6856
  */
6822
6857
  get maxPanelCount(): number;
6823
6858
  set maxPanelCount(val: number);
6859
+ private onMaxPanelCountChanged;
6824
6860
  /**
6825
6861
  * Specifies whether users are allowed to add new panels.
6826
6862
  *
@@ -8443,6 +8479,7 @@ declare module "packages/survey-core/src/page" {
8443
8479
  set navigationDescription(val: string);
8444
8480
  get locNavigationDescription(): LocalizableString;
8445
8481
  navigationLocStrChanged(): void;
8482
+ getMarkdownHtml(text: string, name: string): string;
8446
8483
  get passed(): boolean;
8447
8484
  set passed(val: boolean);
8448
8485
  protected removeFromParent(): void;
@@ -8490,7 +8527,7 @@ declare module "packages/survey-core/src/page" {
8490
8527
  scrollToTop(): void;
8491
8528
  /**
8492
8529
  * A time period that a respondent has spent on this page so far; measured in seconds. Applies only to [quiz surveys](https://surveyjs.io/form-library/documentation/design-survey-create-a-quiz).
8493
- * @see maxTimeToFinish
8530
+ * @see timeLimit
8494
8531
  */
8495
8532
  timeSpent: number;
8496
8533
  /**
@@ -8503,11 +8540,17 @@ declare module "packages/survey-core/src/page" {
8503
8540
  /**
8504
8541
  * A time period that a respondent has to complete this page; measured in seconds. Applies only to [quiz surveys](https://surveyjs.io/form-library/documentation/design-survey-create-a-quiz).
8505
8542
  *
8506
- * A negative value or 0 sets an unlimited time period.
8543
+ * Default value: 0 (time is unlimited)
8507
8544
  *
8508
- * Alternatively, you can use the `SurveyModel`'s [`maxTimeToFinishPage`](https://surveyjs.io/form-library/documentation/surveymodel#maxTimeToFinishPage) property to specify identical time periods for all survey pages.
8545
+ * Alternatively, you can use the `SurveyModel`'s [`timeLimitPerPage`](https://surveyjs.io/form-library/documentation/surveymodel#timeLimitPerPage) property to specify identical time periods for all survey pages.
8509
8546
  * @see timeSpent
8510
8547
  */
8548
+ get timeLimit(): number;
8549
+ set timeLimit(val: number);
8550
+ /**
8551
+ * Obsolete. Use the [`timeLimit`](https://surveyjs.io/form-library/documentation/api-reference/page-model#timeLimit) property instead.
8552
+ * @deprecated
8553
+ */
8511
8554
  get maxTimeToFinish(): number;
8512
8555
  set maxTimeToFinish(val: number);
8513
8556
  getMaxTimeToFinish(): number;
@@ -8557,6 +8600,7 @@ declare module "packages/survey-core/src/surveytimer" {
8557
8600
  private listenerCounter;
8558
8601
  private timerId;
8559
8602
  private prevTimeInMs;
8603
+ onTimerTick: EventBase<SurveyTimer, SurveyTimerEvent>;
8560
8604
  onTimer: EventBase<SurveyTimer, SurveyTimerEvent>;
8561
8605
  start(func?: (timer: SurveyTimer, options: SurveyTimerEvent) => void): void;
8562
8606
  stop(func?: (timer: SurveyTimer, options: SurveyTimerEvent) => any): void;
@@ -8584,7 +8628,7 @@ declare module "packages/survey-core/src/surveyTimerModel" {
8584
8628
  onCurrentPageChanged: EventBase<SurveyModel>;
8585
8629
  }
8586
8630
  export class SurveyTimerModel extends Base {
8587
- onTimer: (page: PageModel) => void;
8631
+ onTimerTick: (page: PageModel) => void;
8588
8632
  private surveyValue;
8589
8633
  constructor(survey: ISurvey);
8590
8634
  text: string;
@@ -10203,11 +10247,17 @@ declare module "packages/survey-core/src/survey" {
10203
10247
  * An event that is raised every second while the timer is running.
10204
10248
  *
10205
10249
  * Use the [`timeSpent`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#timeSpent) property to find out how many seconds have elapsed.
10206
- * @see maxTimeToFinish
10207
- * @see maxTimeToFinishPage
10208
- * @see showTimerPanel
10250
+ * @see timeLimit
10251
+ * @see timeLimitPerPage
10252
+ * @see showTimer
10253
+ * @see timerLocation
10209
10254
  * @see startTimer
10210
10255
  */
10256
+ onTimerTick: EventBase<SurveyModel, {}>;
10257
+ /**
10258
+ * Obsolete. Use the [`onTimerTick`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#onTimerTick) event instead.
10259
+ * @deprecated
10260
+ */
10211
10261
  onTimer: EventBase<SurveyModel, {}>;
10212
10262
  onTimerPanelInfoText: EventBase<SurveyModel, any>;
10213
10263
  /**
@@ -10352,6 +10402,18 @@ declare module "packages/survey-core/src/survey" {
10352
10402
  */
10353
10403
  headerView: "advanced" | "basic";
10354
10404
  protected insertAdvancedHeader(advHeader: Cover): void;
10405
+ /**
10406
+ * Specifies whether the [Complete page](https://surveyjs.io/form-library/documentation/design-survey/create-a-multi-page-survey#complete-page) should display the [survey header](https://surveyjs.io/form-library/examples/brand-your-survey-header/).
10407
+ *
10408
+ * Possible values:
10409
+ *
10410
+ * - `true` - Displays the survey header on the Complete page.
10411
+ * - `false` - Hides the header when users reach the Complete page.
10412
+ * - `"auto"` (default) - Displays a header with the basic view, but hides a header with the advanced view (see the [`headerView`](https://surveyjs.io/form-library/documentation/api-reference/itheme#headerView) property description).
10413
+ *
10414
+ * > This property cannot be specified in the survey JSON schema. Use dot notation to specify it.
10415
+ */
10416
+ showHeaderOnCompletePage: true | false | "auto";
10355
10417
  private getNavigationCss;
10356
10418
  private lazyRenderingValue;
10357
10419
  showBrandInfo: boolean;
@@ -10372,7 +10434,10 @@ declare module "packages/survey-core/src/survey" {
10372
10434
  lazyRenderingFirstBatchSizeValue: number;
10373
10435
  get lazyRenderingFirstBatchSize(): number;
10374
10436
  set lazyRenderingFirstBatchSize(val: number);
10375
- disableLazyRenderingBeforeElement(el: IElement): void;
10437
+ protected _isLazyRenderingSuspended: boolean;
10438
+ get isLazyRenderingSuspended(): boolean;
10439
+ protected suspendLazyRendering(): void;
10440
+ protected releaseLazyRendering(): void;
10376
10441
  private updateLazyRenderingRowsOnRemovingElements;
10377
10442
  /**
10378
10443
  * A list of triggers in the survey.
@@ -10919,8 +10984,9 @@ declare module "packages/survey-core/src/survey" {
10919
10984
  /**
10920
10985
  * Calculates a given [expression](https://surveyjs.io/form-library/documentation/design-survey/conditional-logic#expressions) and returns a result value.
10921
10986
  * @param expression An expression to calculate.
10987
+ * @param callback A callback function that you can use to access the calculation result if the expression uses asynchronous functions.
10922
10988
  */
10923
- runExpression(expression: string): any;
10989
+ runExpression(expression: string, callback?: (res: any) => void): any;
10924
10990
  /**
10925
10991
  * Calculates a given [expression](https://surveyjs.io/form-library/documentation/design-survey/conditional-logic#expressions) and returns `true` or `false`.
10926
10992
  * @param expression An expression to calculate.
@@ -11821,7 +11887,8 @@ declare module "packages/survey-core/src/survey" {
11821
11887
  private getUpdatedPanelTitleActions;
11822
11888
  private getUpdatedPageTitleActions;
11823
11889
  getUpdatedMatrixRowActions(question: QuestionMatrixDropdownModelBase, row: any, actions: Array<IAction>): IAction[];
11824
- scrollElementToTop(element: ISurveyElement, question: Question, page: PageModel, id: string, scrollIfVisible?: boolean, scrollIntoViewOptions?: ScrollIntoViewOptions): any;
11890
+ skeletonHeight: number;
11891
+ scrollElementToTop(element: ISurveyElement, question: Question, page: PageModel, id: string, scrollIfVisible?: boolean, scrollIntoViewOptions?: ScrollIntoViewOptions, passedRootElement?: HTMLElement): any;
11825
11892
  /**
11826
11893
  * Opens a dialog window for users to select files.
11827
11894
  * @param input A [file input HTML element](https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement).
@@ -12231,39 +12298,60 @@ declare module "packages/survey-core/src/survey" {
12231
12298
  getCorrectedAnswers(): number;
12232
12299
  getInCorrectedAnswers(): number;
12233
12300
  /**
12234
- * Displays the timer panel and specifies its position. Applies only to [quiz surveys](https://surveyjs.io/form-library/documentation/design-survey-create-a-quiz).
12301
+ * Obsolete. Use the [`showTimer`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#showTimer) and [`timerLocation`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#timerLocation) properties instead.
12302
+ * @deprecated
12303
+ */
12304
+ get showTimerPanel(): string;
12305
+ set showTimerPanel(val: string);
12306
+ /**
12307
+ * Specifies the timer's visibility. Applies only to [quiz surveys](https://surveyjs.io/form-library/documentation/design-survey-create-a-quiz).
12235
12308
  *
12236
- * Possible values:
12309
+ * Default value: `false`
12237
12310
  *
12238
- * - `"top"` - Displays the timer panel at the top of the survey.
12239
- * - `"bottom"` - Displays the timer panel at the bottom of the survey.
12240
- * - `"none"` (default) - Hides the timer panel.
12311
+ * If you set this property to `true`, the timer starts automatically when the survey begins. To specify time limits, use the [`timeLimit`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#timeLimit) and [`timeLimitPerPage`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#timeLimitPerPage) properties.
12241
12312
  *
12242
- * If the timer panel is displayed, the timer starts automatically when the survey begins. To specify time limits, use the [`maxTimeToFinish`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#maxTimeToFinish) and [`maxTimeToFinishPage`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#maxTimeToFinishPage) properties.
12313
+ * The timer displays information about time spent on an individual page and the entire survey. If you want to display only the page timer or the survey timer, set the [`timerInfoMode`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#timerInfoMode) property to `"page"` or `"survey"`.
12243
12314
  *
12244
- * The timer panel displays information about time spent on an individual page and the entire survey. If you want to display only the page timer or the survey timer, set the [`showTimerPanelMode`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#showTimerPanelMode) property to `"page"` or `"survey"`.
12245
- * @see startTimer
12246
- * @see stopTimer
12315
+ * You can enable the timer without displaying it. In this case, you need to specify the required time limits and use the [`startTimer()`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#startTimer) and [`stopTimer()`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#stopTimer) methods to control the timer.
12316
+ * @see timerLocation
12247
12317
  * @see timeSpent
12248
- * @see onTimer
12318
+ * @see onTimerTick
12249
12319
  */
12250
- get showTimerPanel(): string;
12251
- set showTimerPanel(val: string);
12320
+ get showTimer(): boolean;
12321
+ set showTimer(val: boolean);
12322
+ /**
12323
+ * Specifies the timer's position relative to the survey. Applies only if the [`showTimer`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#showTimer) property is set to `true`.
12324
+ *
12325
+ * Possible values:
12326
+ *
12327
+ * - `"top"` (default) - Displays the timer at the top of the survey.
12328
+ * - `"bottom"` - Displays the timer at the bottom of the survey.
12329
+ * @see onTimerTick
12330
+ */
12331
+ get timerLocation(): string;
12332
+ set timerLocation(val: string);
12252
12333
  get isTimerPanelShowingOnTop(): boolean;
12253
12334
  get isTimerPanelShowingOnBottom(): boolean;
12254
12335
  /**
12255
- * Specifies whether the timer panel displays timers for the current page, the entire survey, or both. Applies only if the timer panel is [visible](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#showTimerPanel).
12336
+ * Specifies whether the timer panel displays timers for the current page, the entire survey, or both. Applies only if the timer panel is [visible](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#showTimer).
12256
12337
  *
12257
12338
  * Possible values:
12258
12339
  *
12259
12340
  * - `"survey"` - Displays only the survey timer.
12260
12341
  * - `"page"` - Displays only the page timer.
12261
- * - `"all"` (default) - Displays both the survey and page timers.
12342
+ * - `"combined"` (default) - Displays both the survey and page timers.
12262
12343
  * @see timeSpent
12263
- * @see onTimer
12344
+ * @see onTimerTick
12264
12345
  * @see startTimer
12265
12346
  * @see stopTimer
12266
12347
  */
12348
+ get timerInfoMode(): string;
12349
+ set timerInfoMode(val: string);
12350
+ private getTimerInfoVal;
12351
+ /**
12352
+ * Obsolete. Use the [`timerInfoMode`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#timerInfoMode) property instead.
12353
+ * @deprecated
12354
+ */
12267
12355
  get showTimerPanelMode(): string;
12268
12356
  set showTimerPanelMode(val: string);
12269
12357
  gridLayoutEnabled: boolean;
@@ -12310,20 +12398,20 @@ declare module "packages/survey-core/src/survey" {
12310
12398
  /**
12311
12399
  * Starts a timer that calculates how many seconds a respondent has spent on the survey. Applies only to [quiz surveys](https://surveyjs.io/form-library/documentation/design-survey-create-a-quiz).
12312
12400
  * @see stopTimer
12313
- * @see maxTimeToFinish
12314
- * @see maxTimeToFinishPage
12401
+ * @see timeLimit
12402
+ * @see timeLimitPerPage
12315
12403
  * @see timeSpent
12316
- * @see onTimer
12404
+ * @see onTimerTick
12317
12405
  */
12318
12406
  startTimer(): void;
12319
12407
  startTimerFromUI(): void;
12320
12408
  /**
12321
12409
  * Stops the timer. Applies only to [quiz surveys](https://surveyjs.io/form-library/documentation/design-survey-create-a-quiz).
12322
12410
  * @see startTimer
12323
- * @see maxTimeToFinish
12324
- * @see maxTimeToFinishPage
12411
+ * @see timeLimit
12412
+ * @see timeLimitPerPage
12325
12413
  * @see timeSpent
12326
- * @see onTimer
12414
+ * @see onTimerTick
12327
12415
  */
12328
12416
  stopTimer(): void;
12329
12417
  /**
@@ -12332,8 +12420,8 @@ declare module "packages/survey-core/src/survey" {
12332
12420
  * Assign a number to this property if you need to start the quiz timer from a specific time (for instance, if you want to continue an interrupted quiz).
12333
12421
  *
12334
12422
  * You can also find out how many seconds a respondent has spent on an individual survey page. To do this, use the [`timeSpent`](https://surveyjs.io/form-library/documentation/api-reference/page-model#timeSpent) property of a [`PageModel`](https://surveyjs.io/form-library/documentation/api-reference/page-model) object.
12335
- * @see maxTimeToFinish
12336
- * @see maxTimeToFinishPage
12423
+ * @see timeLimit
12424
+ * @see timeLimitPerPage
12337
12425
  * @see startTimer
12338
12426
  */
12339
12427
  get timeSpent(): number;
@@ -12341,27 +12429,39 @@ declare module "packages/survey-core/src/survey" {
12341
12429
  /**
12342
12430
  * A time period that a respondent has to complete the survey; measured in seconds. Applies only to [quiz surveys](https://surveyjs.io/form-library/documentation/design-survey-create-a-quiz).
12343
12431
  *
12344
- * A negative value or 0 sets an unlimited time period.
12432
+ * Default value: 0 (time is unlimited)
12345
12433
  *
12346
12434
  * [View Demo](https://surveyjs.io/form-library/examples/make-quiz-javascript/ (linkStyle))
12347
- * @see maxTimeToFinishPage
12435
+ * @see timeLimitPerPage
12348
12436
  * @see startTimer
12349
12437
  * @see timeSpent
12350
12438
  */
12439
+ get timeLimit(): number;
12440
+ set timeLimit(val: number);
12441
+ /**
12442
+ * Obsolete. Use the [`timeLimit`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#timeLimit) property instead.
12443
+ * @deprecated
12444
+ */
12351
12445
  get maxTimeToFinish(): number;
12352
12446
  set maxTimeToFinish(val: number);
12353
12447
  /**
12354
12448
  * A time period that a respondent has to complete each survey page; measured in seconds. Applies only to [quiz surveys](https://surveyjs.io/form-library/documentation/design-survey-create-a-quiz).
12355
12449
  *
12356
- * A negative value or 0 sets an unlimited time period.
12450
+ * Default value: 0 (time is unlimited)
12357
12451
  *
12358
- * You can also use `PageModel`'s [`maxTimeToFinish`](https://surveyjs.io/form-library/documentation/api-reference/page-model#maxTimeToFinish) property to specify a time period for an individual survey page.
12452
+ * You can also use `PageModel`'s [`timeLimit`](https://surveyjs.io/form-library/documentation/api-reference/page-model#timeLimit) property to specify a time period for an individual survey page.
12359
12453
  *
12360
12454
  * [View Demo](https://surveyjs.io/form-library/examples/make-quiz-javascript/ (linkStyle))
12361
- * @see maxTimeToFinish
12455
+ * @see timeLimit
12362
12456
  * @see startTimer
12363
12457
  * @see timeSpent
12364
12458
  */
12459
+ get timeLimitPerPage(): number;
12460
+ set timeLimitPerPage(val: number);
12461
+ /**
12462
+ * Obsolete. Use the [`timeLimitPerPage`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#timeLimitPerPage) property instead.
12463
+ * @deprecated
12464
+ */
12365
12465
  get maxTimeToFinishPage(): number;
12366
12466
  set maxTimeToFinishPage(val: number);
12367
12467
  private doTimer;
@@ -12457,7 +12557,7 @@ declare module "packages/survey-core/src/survey" {
12457
12557
  }
12458
12558
  }
12459
12559
  declare module "packages/survey-core/src/survey-element" {
12460
- import { Base } from "packages/survey-core/src/base";
12560
+ import { Base, EventBase } from "packages/survey-core/src/base";
12461
12561
  import { IAction } from "packages/survey-core/src/actions/action";
12462
12562
  import { AdaptiveActionContainer } from "packages/survey-core/src/actions/adaptive-container";
12463
12563
  import { ISurveyElement, IPage, IPanel, IProgressInfo, ISurvey, ISurveyData, ISurveyImpl, ITextProcessor, ITitleOwner } from "packages/survey-core/src/base-interfaces";
@@ -12563,8 +12663,10 @@ declare module "packages/survey-core/src/survey-element" {
12563
12663
  dragTypeOverMe: DragTypeOverMeEnum;
12564
12664
  isDragMe: boolean;
12565
12665
  readOnlyChangedCallback: () => void;
12566
- static ScrollElementToTop(elementId: string, scrollIfVisible?: boolean, scrollIntoViewOptions?: ScrollIntoViewOptions): boolean;
12567
- static ScrollElementToViewCore(el: HTMLElement, checkLeft: boolean, scrollIfVisible?: boolean, scrollIntoViewOptions?: ScrollIntoViewOptions): boolean;
12666
+ private static IsNeedScrollIntoView;
12667
+ static ScrollIntoView(el: HTMLElement, scrollIntoViewOptions?: ScrollIntoViewOptions, doneCallback?: () => void): void;
12668
+ static ScrollElementToTop(elementId: string, scrollIfVisible?: boolean, scrollIntoViewOptions?: ScrollIntoViewOptions, doneCallback?: () => void): boolean;
12669
+ static ScrollElementToViewCore(el: HTMLElement, checkLeft: boolean, scrollIfVisible?: boolean, scrollIntoViewOptions?: ScrollIntoViewOptions, doneCallback?: () => void): boolean;
12568
12670
  static GetFirstNonTextElement(elements: any, removeSpaces?: boolean): any;
12569
12671
  static FocusElement(elementId: string): boolean;
12570
12672
  private static focusElementCore;
@@ -12681,6 +12783,7 @@ declare module "packages/survey-core/src/survey-element" {
12681
12783
  get survey(): ISurvey;
12682
12784
  getSurvey(live?: boolean): ISurvey;
12683
12785
  protected setSurveyCore(value: ISurvey): void;
12786
+ get skeletonHeight(): string;
12684
12787
  isContentElement: boolean;
12685
12788
  isEditableTemplateElement: boolean;
12686
12789
  isInteractiveDesignElement: boolean;
@@ -12887,6 +12990,19 @@ declare module "packages/survey-core/src/survey-element" {
12887
12990
  set renderedIsExpanded(val: boolean);
12888
12991
  get renderedIsExpanded(): boolean;
12889
12992
  protected getIsAnimationAllowed(): boolean;
12993
+ onAfterRenderElement: EventBase<SurveyElement<E>, any>;
12994
+ afterRenderCore(element: HTMLElement): void;
12995
+ dispose(): void;
12996
+ }
12997
+ export class RenderingCompletedAwaiter {
12998
+ private _elements;
12999
+ private _renderedHandler;
13000
+ constructor(_elements: Array<SurveyElement>, _renderedHandler: () => void, waitingTimeout?: number);
13001
+ private _elementsToRenderCount;
13002
+ private _elementsToRenderTimer;
13003
+ private _elementRenderedHandler;
13004
+ private stopWaitingForElementsRendering;
13005
+ private visibleElementsRendered;
12890
13006
  dispose(): void;
12891
13007
  }
12892
13008
  }
@@ -13330,7 +13446,7 @@ declare module "packages/survey-core/src/question" {
13330
13446
  onCommentChange(event: any): void;
13331
13447
  afterRenderQuestionElement(el: HTMLElement): void;
13332
13448
  afterRender(el: HTMLElement): void;
13333
- afterRenderCore(el: HTMLElement): void;
13449
+ afterRenderCore(element: HTMLElement): void;
13334
13450
  protected getCommentElementsId(): Array<string>;
13335
13451
  beforeDestroyQuestionElement(el: HTMLElement): void;
13336
13452
  get processedTitle(): string;
@@ -13517,7 +13633,7 @@ declare module "packages/survey-core/src/question" {
13517
13633
  *
13518
13634
  * | Question type | Value type(s) |
13519
13635
  * | ------------- | ------------- |
13520
- * | Checkboxes | `Array<string \| number>` |
13636
+ * | Checkboxes | <code>Array&lt;string &#124; number&gt;</code> |
13521
13637
  * | Dropdown | `string` \| `number` |
13522
13638
  * | Dynamic Matrix | `Array<object>` |
13523
13639
  * | Dynamic Panel | `Array<object>` |
@@ -13525,14 +13641,14 @@ declare module "packages/survey-core/src/question" {
13525
13641
  * | File Upload | `File` \| `Array<File>` |
13526
13642
  * | HTML | (no value) |
13527
13643
  * | Image | (no value) |
13528
- * | Image Picker | `Array<string \| number>` |
13644
+ * | Image Picker | <code>Array&lt;string &#124; number&gt;</code> |
13529
13645
  * | Long Text | `string` |
13530
13646
  * | Multi-Select Dropdown | `object` |
13531
13647
  * | Multi-Select Matrix | `object` |
13532
13648
  * | Multiple Textboxes | `Array<string>` |
13533
13649
  * | Panel | (no value) |
13534
13650
  * | Radio Button Group | `string` \| `number` |
13535
- * | Ranking | `Array<string \| number>` |
13651
+ * | Ranking | <code>Array&lt;string &#124; number&gt;</code> |
13536
13652
  * | Rating Scale | `number` \| `string` |
13537
13653
  * | Signature | `string` (base64-encoded image) |
13538
13654
  * | Single-Line Input | `string` \| `number` \| `Date` |
@@ -13761,7 +13877,7 @@ declare module "packages/survey-core/src/question" {
13761
13877
  get requiredText(): string;
13762
13878
  addError(error: SurveyError | string): void;
13763
13879
  private addCustomError;
13764
- removeError(error: SurveyError): void;
13880
+ removeError(error: SurveyError): boolean;
13765
13881
  private checkForErrors;
13766
13882
  protected canCollectErrors(): boolean;
13767
13883
  private collectErrors;
@@ -14791,7 +14907,7 @@ declare module "packages/survey-core/src/base-interfaces" {
14791
14907
  maxTextLength: number;
14792
14908
  maxOthersLength: number;
14793
14909
  clearValueOnDisableItems: boolean;
14794
- maxTimeToFinishPage: number;
14910
+ timeLimitPerPage: number;
14795
14911
  uploadFiles(question: IQuestion, name: string, files: File[], uploadingCallback: (data: any | Array<any>, errors?: any | Array<any>) => any): any;
14796
14912
  downloadFile(question: IQuestion, name: string, content: string, callback: (status: string, data: any) => any): any;
14797
14913
  clearFiles(question: IQuestion, name: string, value: any, fileName: string, clearCallback: (status: string, data: any) => any): any;
@@ -14848,7 +14964,7 @@ declare module "packages/survey-core/src/base-interfaces" {
14848
14964
  dynamicPanelCurrentIndexChanged(question: IQuestion, options: any): void;
14849
14965
  dragAndDropAllow(options: DragDropAllowEvent): boolean;
14850
14966
  scrollElementToTop(element: ISurveyElement, question: IQuestion, page: IPage, id: string, scrollIfVisible?: boolean, scrollIntoViewOptions?: ScrollIntoViewOptions): any;
14851
- runExpression(expression: string): any;
14967
+ runExpression(expression: string, callback?: (res: any) => void): any;
14852
14968
  elementContentVisibilityChanged(element: ISurveyElement): void;
14853
14969
  onCorrectQuestionAnswer(question: IQuestion, options: any): void;
14854
14970
  processPopupVisiblityChanged(question: IQuestion, popupModel: PopupModel, visible: boolean): void;
@@ -15834,10 +15950,10 @@ declare module "packages/survey-core/src/base" {
15834
15950
  private animationAllowedLock;
15835
15951
  blockAnimations(): void;
15836
15952
  releaseAnimations(): void;
15837
- supportOnElementRenderedEvent: boolean;
15838
- onElementRenderedEventEnabled: boolean;
15839
- enableOnElementRenderedEvent(): void;
15840
- disableOnElementRenderedEvent(): void;
15953
+ supportOnElementRerenderedEvent: boolean;
15954
+ onElementRerenderedEventEnabled: boolean;
15955
+ enableOnElementRerenderedEvent(): void;
15956
+ disableOnElementRerenderedEvent(): void;
15841
15957
  protected _onElementRerendered: EventBase<Base>;
15842
15958
  get onElementRerendered(): EventBase<Base>;
15843
15959
  afterRerender(): void;
@@ -17016,20 +17132,27 @@ declare module "packages/survey-core/src/question_matrix" {
17016
17132
  getRows(): Array<any>;
17017
17133
  getColumns(): Array<any>;
17018
17134
  }
17019
- export class MatrixCells {
17135
+ export class MatrixCells extends Base {
17020
17136
  cellsOwner: IMatrixCellsOwner;
17021
17137
  private values;
17138
+ private locs;
17022
17139
  constructor(cellsOwner: IMatrixCellsOwner);
17140
+ getType(): string;
17023
17141
  get isEmpty(): boolean;
17024
17142
  onValuesChanged: () => void;
17143
+ private locNotification;
17025
17144
  private valuesChanged;
17026
- setCellText(row: any, column: any, val: string): void;
17027
- setDefaultCellText(column: any, val: string): void;
17028
- getCellLocText(row: any, column: any): LocalizableString;
17029
- getDefaultCellLocText(column: any, val: string): LocalizableString;
17145
+ getDefaultCellLocText(column: any): LocalizableString;
17030
17146
  getCellDisplayLocText(row: any, column: any): LocalizableString;
17147
+ private getCellLocCore;
17148
+ private get defaultRowValue();
17149
+ private getCellLocData;
17150
+ private getCellLocDataFromValue;
17031
17151
  getCellText(row: any, column: any): string;
17152
+ setCellText(row: any, column: any, val: string): void;
17153
+ private updateValues;
17032
17154
  getDefaultCellText(column: any): string;
17155
+ setDefaultCellText(column: any, val: string): void;
17033
17156
  getCellDisplayText(row: any, column: any): string;
17034
17157
  get rows(): Array<any>;
17035
17158
  get columns(): Array<any>;
@@ -17037,6 +17160,7 @@ declare module "packages/survey-core/src/question_matrix" {
17037
17160
  getJson(): any;
17038
17161
  setJson(value: any): void;
17039
17162
  locStrsChanged(): void;
17163
+ private runFuncOnLocs;
17040
17164
  protected createString(): LocalizableString;
17041
17165
  }
17042
17166
  /**
@@ -17826,6 +17950,7 @@ declare module "packages/survey-core/src/question_ranking" {
17826
17950
  onSurveyValueChanged(newValue: any): void;
17827
17951
  onSurveyLoad(): void;
17828
17952
  protected onVisibleChoicesChanged: () => void;
17953
+ updateValueFromSurvey(newValue: any, clearData: boolean): void;
17829
17954
  localeChanged: () => void;
17830
17955
  private addToValueByVisibleChoices;
17831
17956
  private removeFromValueByVisibleChoices;
@@ -17978,13 +18103,10 @@ declare module "packages/survey-core/src/question_comment" {
17978
18103
  get resizeStyle(): "none" | "both";
17979
18104
  getType(): string;
17980
18105
  afterRenderQuestionElement(el: HTMLElement): void;
17981
- updateElement(): void;
17982
18106
  beforeDestroyQuestionElement(el: HTMLElement): void;
17983
18107
  onInput(event: any): void;
17984
18108
  protected onBlurCore(event: any): void;
17985
18109
  onKeyDown(event: any): void;
17986
- protected setQuestionValue(newValue: any, updateIsAnswered?: boolean): void;
17987
- onValueChanged(): void;
17988
18110
  protected setNewValue(newValue: string): any;
17989
18111
  protected getValueSeparator(): string;
17990
18112
  get className(): string;
@@ -18178,6 +18300,7 @@ declare module "packages/survey-core/src/question_rating" {
18178
18300
  private createRenderedRateItems;
18179
18301
  renderedRateItems: Array<RenderedRatingItem>;
18180
18302
  private createRateValues;
18303
+ private getRatingItemValue;
18181
18304
  private correctValue;
18182
18305
  getType(): string;
18183
18306
  protected getFirstInputElementId(): string;
@@ -18330,6 +18453,7 @@ declare module "packages/survey-core/src/question_rating" {
18330
18453
  get renderedValue(): any;
18331
18454
  set renderedValue(val: any);
18332
18455
  isItemSelected(item: ItemValue): boolean;
18456
+ private visibleChoicesValue;
18333
18457
  get visibleChoices(): ItemValue[];
18334
18458
  get readOnlyText(): any;
18335
18459
  needResponsiveWidth(): boolean;
@@ -18340,6 +18464,7 @@ declare module "packages/survey-core/src/question_rating" {
18340
18464
  private dropdownListModelValue;
18341
18465
  set dropdownListModel(val: DropdownListModel);
18342
18466
  get dropdownListModel(): DropdownListModel;
18467
+ protected onBlurCore(event: any): void;
18343
18468
  protected updateCssClasses(res: any, css: any): void;
18344
18469
  protected calcCssClasses(css: any): any;
18345
18470
  themeChanged(theme: ITheme): void;
@@ -19121,7 +19246,7 @@ declare module "packages/survey-core/entries/chunks/model" {
19121
19246
  export { QuestionCommentModel } from "packages/survey-core/src/question_comment";
19122
19247
  export { QuestionDropdownModel } from "packages/survey-core/src/question_dropdown";
19123
19248
  export { QuestionFactory, ElementFactory } from "packages/survey-core/src/questionfactory";
19124
- export { QuestionFileModel } from "packages/survey-core/src/question_file";
19249
+ export { QuestionFileModel, QuestionFilePage } from "packages/survey-core/src/question_file";
19125
19250
  export { QuestionHtmlModel } from "packages/survey-core/src/question_html";
19126
19251
  export { QuestionRadiogroupModel } from "packages/survey-core/src/question_radiogroup";
19127
19252
  export { QuestionRatingModel, RenderedRatingItem } from "packages/survey-core/src/question_rating";
@@ -27887,6 +28012,32 @@ declare module "packages/survey-react-ui/src/reactquestion_file" {
27887
28012
  protected renderVideo(): JSX.Element;
27888
28013
  }
27889
28014
  }
28015
+ declare module "packages/survey-react-ui/src/components/file/file-item" {
28016
+ import { SurveyElementBase } from "packages/survey-react-ui/src/reactquestion_element";
28017
+ import { QuestionFileModel } from "src/entries/core";
28018
+ export class SurveyFileItem extends SurveyElementBase<{
28019
+ question: QuestionFileModel;
28020
+ item: any;
28021
+ }, {}> {
28022
+ protected get question(): QuestionFileModel;
28023
+ protected get item(): any;
28024
+ protected renderFileSign(className: string, val: any): JSX.Element | null;
28025
+ protected renderElement(): JSX.Element | null;
28026
+ protected canRender(): boolean;
28027
+ }
28028
+ }
28029
+ declare module "packages/survey-react-ui/src/components/file/file-page" {
28030
+ import { SurveyElementBase } from "packages/survey-react-ui/src/reactquestion_element";
28031
+ import { QuestionFileModel, QuestionFilePage } from "src/entries/core";
28032
+ export class SurveyFilePage extends SurveyElementBase<{
28033
+ question: QuestionFileModel;
28034
+ page: QuestionFilePage;
28035
+ }, {}> {
28036
+ protected get question(): QuestionFileModel;
28037
+ protected get page(): any;
28038
+ protected renderElement(): JSX.Element | null;
28039
+ }
28040
+ }
27890
28041
  declare module "packages/survey-react-ui/src/components/file/file-preview" {
27891
28042
  import { SurveyElementBase } from "packages/survey-react-ui/src/reactquestion_element";
27892
28043
  import { QuestionFileModel } from "src/entries/core";