survey-react 1.9.88 → 1.9.90

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
@@ -892,6 +892,7 @@ declare module "jsonobject" {
892
892
  addDependedProperty(name: string): void;
893
893
  getDependedProperties(): Array<string>;
894
894
  schemaType(): string;
895
+ schemaRef(): string;
895
896
  private mergeValue;
896
897
  }
897
898
  export class CustomPropertiesCollection {
@@ -975,11 +976,11 @@ declare module "jsonobject" {
975
976
  isDescendantOf(className: string, ancestorClassName: string): boolean;
976
977
  addAlterNativeClassName(name: string, alternativeName: string): void;
977
978
  generateSchema(className?: string): any;
979
+ private generateLocStrClass;
978
980
  private generateSchemaProperties;
979
981
  private generateSchemaProperty;
982
+ private getChemeRefName;
980
983
  private generateChemaClass;
981
- private fillProperties;
982
- private addPropertyCore;
983
984
  }
984
985
  export class JsonError {
985
986
  type: string;
@@ -1408,6 +1409,7 @@ declare module "utils/utils" {
1408
1409
  export interface IAttachKey2clickOptions {
1409
1410
  processEsc?: boolean;
1410
1411
  disableTabStop?: boolean;
1412
+ __keyDownReceived?: boolean;
1411
1413
  }
1412
1414
  export function doKey2ClickBlur(evt: KeyboardEvent): void;
1413
1415
  export function doKey2ClickUp(evt: KeyboardEvent, options?: IAttachKey2clickOptions): void;
@@ -1528,6 +1530,7 @@ declare module "list" {
1528
1530
  private loadingIndicatorValue;
1529
1531
  searchEnabled: boolean;
1530
1532
  showFilter: boolean;
1533
+ forceShowFilter: boolean;
1531
1534
  isExpanded: boolean;
1532
1535
  selectedItem: IAction;
1533
1536
  focusedItem: T;
@@ -3015,7 +3018,7 @@ declare module "panel" {
3015
3018
  import { HashTable } from "helpers";
3016
3019
  import { Base } from "base";
3017
3020
  import { ISurveyImpl, IPage, IPanel, IConditionRunner, IElement, ISurveyElement, IQuestion, ISurveyErrorOwner, ITitleOwner, IProgressInfo, ISurvey, IFindElement } from "base-interfaces";
3018
- import { SurveyElement } from "survey-element";
3021
+ import { DragTypeOverMeEnum, SurveyElement } from "survey-element";
3019
3022
  import { Question } from "question";
3020
3023
  import { LocalizableString } from "localizablestring";
3021
3024
  import { findScrollableParent } from "utils/utils";
@@ -3054,6 +3057,7 @@ declare module "panel" {
3054
3057
  private getRenderedWidthFromWidth;
3055
3058
  private calcVisible;
3056
3059
  private needToUpdateVisibleElements;
3060
+ dragTypeOverMe: DragTypeOverMeEnum;
3057
3061
  dispose(): void;
3058
3062
  getRowCss(): string;
3059
3063
  }
@@ -3247,12 +3251,14 @@ declare module "panel" {
3247
3251
  updateElementVisibility(): void;
3248
3252
  getFirstQuestionToFocus(withError?: boolean, ignoreCollapseState?: boolean): Question;
3249
3253
  /**
3250
- * Sets focus on the input of the first question in this panel/page.
3254
+ * Focuses the first question in this panel/page.
3255
+ * @see focusFirstErrorQuestion
3251
3256
  */
3252
3257
  focusFirstQuestion(): void;
3253
3258
  /**
3254
- * Sets focus on the input of the first question in this panel/page that has an error.
3259
+ * Focuses the first question with a validation error in this panel/page.
3255
3260
  * @see validate
3261
+ * @see focusFirstQuestion
3256
3262
  */
3257
3263
  focusFirstErrorQuestion(): void;
3258
3264
  addQuestionsToList(list: Array<IQuestion>, visibleOnly?: boolean, includingDesignTime?: boolean): void;
@@ -4023,7 +4029,6 @@ declare module "question_baseselect" {
4023
4029
  protected updateSelectedItemValues(): void;
4024
4030
  protected updateSingleSelectedItemValues(): void;
4025
4031
  protected updateMultipleSelectedItemValues(): void;
4026
- protected resetSelectedItemValues(): void;
4027
4032
  protected hasUnknownValue(val: any, includeOther?: boolean, isFilteredChoices?: boolean, checkEmptyValue?: boolean): boolean;
4028
4033
  protected isValueDisabled(val: any): boolean;
4029
4034
  /**
@@ -4558,23 +4563,70 @@ declare module "question_matrixdropdowncolumn" {
4558
4563
  private addProperty;
4559
4564
  }
4560
4565
  }
4566
+ declare module "dragdrop/engine" {
4567
+ export interface IDragDropEngine {
4568
+ dragInit(event: PointerEvent, draggedElement: any, parentElement: any, draggedElementNode: HTMLElement): void;
4569
+ dragOver(event: PointerEvent): void;
4570
+ drop(): void;
4571
+ clear(): void;
4572
+ }
4573
+ }
4561
4574
  declare module "utils/devices" {
4562
4575
  export const IsMobile: boolean;
4563
4576
  export let IsTouch: boolean;
4564
4577
  export function _setIsTouch(val: boolean): void;
4565
4578
  }
4579
+ declare module "dragdrop/dom-adapter" {
4580
+ import { IDragDropEngine } from "dragdrop/engine";
4581
+ export interface IDragDropDOMAdapter {
4582
+ startDrag(event: PointerEvent, draggedElement: any, parentElement: any, draggedElementNode: HTMLElement, preventSaveTargetNode: boolean): void;
4583
+ draggedElementShortcut: HTMLElement;
4584
+ }
4585
+ export class DragDropDOMAdapter implements IDragDropDOMAdapter {
4586
+ private dd;
4587
+ private longTap?;
4588
+ static PreventScrolling: boolean;
4589
+ private timeoutID;
4590
+ private startX;
4591
+ private startY;
4592
+ private currentX;
4593
+ private currentY;
4594
+ private savedTargetNode;
4595
+ private scrollIntervalId;
4596
+ constructor(dd: IDragDropEngine, longTap?: boolean);
4597
+ private stopLongTapIfMoveEnough;
4598
+ private get isMicroMovement();
4599
+ private stopLongTap;
4600
+ private startLongTapProcessing;
4601
+ private handlePointerCancel;
4602
+ private handleEscapeButton;
4603
+ private onContextMenu;
4604
+ private moveShortcutElement;
4605
+ private getShortcutBottomCoordinate;
4606
+ private getShortcutRightCoordinate;
4607
+ private doScroll;
4608
+ private dragOver;
4609
+ private clear;
4610
+ private drop;
4611
+ private doStartDrag;
4612
+ draggedElementShortcut: any;
4613
+ startDrag(event: PointerEvent, draggedElement: any, parentElement?: any, draggedElementNode?: HTMLElement, preventSaveTargetNode?: boolean): void;
4614
+ }
4615
+ }
4566
4616
  declare module "dragdrop/core" {
4567
4617
  import { SurveyModel } from "survey";
4568
- import { Base, EventBase } from "base";
4618
+ import { EventBase } from "base";
4569
4619
  import { IShortcutText, ISurvey } from "base-interfaces";
4570
- export abstract class DragDropCore<T> extends Base {
4620
+ import { IDragDropEngine } from "dragdrop/engine";
4621
+ import { IDragDropDOMAdapter } from "dragdrop/dom-adapter";
4622
+ export abstract class DragDropCore<T> implements IDragDropEngine {
4571
4623
  private surveyValue?;
4572
4624
  private creator?;
4573
- private longTap?;
4574
- isBottom: boolean;
4625
+ private _isBottom;
4626
+ get isBottom(): boolean;
4627
+ set isBottom(val: boolean);
4575
4628
  onGhostPositionChanged: EventBase<{}>;
4576
4629
  protected ghostPositionChanged(): void;
4577
- static PreventScrolling: boolean;
4578
4630
  onDragStart: EventBase<DragDropCore<T>>;
4579
4631
  onDragEnd: EventBase<DragDropCore<T>>;
4580
4632
  onBeforeDrop: EventBase<DragDropCore<T>, any>;
@@ -4586,54 +4638,34 @@ declare module "dragdrop/core" {
4586
4638
  protected get dropTargetDataAttributeName(): string;
4587
4639
  protected get survey(): SurveyModel;
4588
4640
  prevDropTarget: any;
4589
- protected draggedElementShortcut: any;
4590
- private scrollIntervalId;
4591
4641
  protected allowDropHere: boolean;
4592
- constructor(surveyValue?: ISurvey, creator?: any, longTap?: boolean);
4642
+ protected domAdapter: IDragDropDOMAdapter;
4643
+ constructor(surveyValue?: ISurvey, creator?: any, longTap?: boolean, domAdapter?: IDragDropDOMAdapter);
4593
4644
  startDrag(event: PointerEvent, draggedElement: any, parentElement?: any, draggedElementNode?: HTMLElement, preventSaveTargetNode?: boolean): void;
4594
- private timeoutID;
4595
- private startX;
4596
- private startY;
4597
- private currentX;
4598
- private currentY;
4599
- private savedTargetNode;
4600
- private startLongTapProcessing;
4601
- private stopLongTapIfMoveEnough;
4602
- private get isMicroMovement();
4603
- private stopLongTap;
4604
- private doStartDrag;
4605
- private onContextMenu;
4606
- private dragOver;
4607
- private drop;
4608
- protected isDropTargetDoesntChanged(newIsBottom: boolean): boolean;
4645
+ dragInit(event: PointerEvent, draggedElement: any, parentElement?: any, draggedElementNode?: HTMLElement): void;
4609
4646
  protected onStartDrag(): void;
4647
+ protected isDropTargetDoesntChanged(newIsBottom: boolean): boolean;
4610
4648
  protected getShortcutText(draggedElement: IShortcutText): string;
4611
4649
  protected createDraggedElementShortcut(text: string, draggedElementNode?: HTMLElement, event?: PointerEvent): HTMLElement;
4612
4650
  protected getDraggedElementClass(): string;
4613
- protected doDragOver(dropTargetNode?: HTMLElement, event?: PointerEvent): void;
4614
- protected afterDragOver(dropTargetNode?: HTMLElement, event?: PointerEvent): void;
4615
- getGhostPosition(item: any): string;
4651
+ protected doDragOver(): void;
4652
+ protected afterDragOver(dropTargetNode: HTMLElement): void;
4616
4653
  protected abstract isDropTargetValid(dropTarget: any, dropTargetNode?: HTMLElement): boolean;
4617
- private handlePointerCancel;
4618
- protected handleEscapeButton: (event: KeyboardEvent) => void;
4619
- private moveShortcutElement;
4620
- private getShortcutBottomCoordinate;
4621
- private getShortcutRightCoordinate;
4622
- private doScroll;
4623
4654
  protected banDropHere: () => void;
4624
4655
  protected doBanDropHere: () => void;
4656
+ protected findDropTargetNodeFromPoint(clientX: number, clientY: number): HTMLElement;
4625
4657
  protected getDataAttributeValueByNode(node: HTMLElement): string;
4626
4658
  protected getDropTargetByNode(dropTargetNode: HTMLElement, event: PointerEvent): any;
4627
4659
  private capitalizeFirstLetter;
4628
4660
  protected abstract getDropTargetByDataAttributeValue(dataAttributeValue: string, dropTargetNode?: HTMLElement, event?: PointerEvent): any;
4629
4661
  protected calculateVerticalMiddleOfHTMLElement(HTMLElement: HTMLElement): number;
4630
4662
  protected calculateHorizontalMiddleOfHTMLElement(HTMLElement: HTMLElement): number;
4631
- protected abstract calculateIsBottom(clientY: number, dropTargetNode?: HTMLElement): boolean;
4632
- private findDropTargetNodeFromPoint;
4663
+ protected calculateIsBottom(clientY: number, dropTargetNode?: HTMLElement): boolean;
4633
4664
  protected findDropTargetNodeByDragOverNode(dragOverNode: HTMLElement): HTMLElement;
4665
+ dragOver(event: PointerEvent): void;
4634
4666
  protected abstract doDrop(): any;
4635
- protected clear: () => void;
4636
- protected doClear(): void;
4667
+ drop(): void;
4668
+ clear(): void;
4637
4669
  }
4638
4670
  }
4639
4671
  declare module "dragdrop/matrix-rows" {
@@ -4646,11 +4678,11 @@ declare module "dragdrop/matrix-rows" {
4646
4678
  private fromIndex;
4647
4679
  private toIndex;
4648
4680
  protected getDropTargetByDataAttributeValue(dataAttributeValue: any): MatrixDropdownRowModelBase;
4649
- protected isDropTargetValid(dropTarget: any): boolean;
4681
+ protected isDropTargetValid(dropTarget: any, dropTargetNode?: HTMLElement): boolean;
4650
4682
  protected calculateIsBottom(clientY: number): boolean;
4651
4683
  protected afterDragOver(dropTargetNode: HTMLElement): void;
4652
4684
  protected doDrop: () => QuestionMatrixDynamicModel;
4653
- protected doClear(): void;
4685
+ clear(): void;
4654
4686
  }
4655
4687
  }
4656
4688
  declare module "question_matrixdropdownrendered" {
@@ -5659,6 +5691,7 @@ declare module "question_paneldynamic" {
5659
5691
  protected createAndSetupNewPanelObject(): PanelModel;
5660
5692
  private getTemplateQuestionTitleLocation;
5661
5693
  protected createNewPanelObject(): PanelModel;
5694
+ private settingPanelCountBasedOnValue;
5662
5695
  private setPanelCountBasedOnValue;
5663
5696
  setQuestionValue(newValue: any): void;
5664
5697
  onSurveyValueChanged(newValue: any): void;
@@ -5713,7 +5746,9 @@ declare module "question_paneldynamic" {
5713
5746
  private updateTabToolbar;
5714
5747
  private addTabFromToolbar;
5715
5748
  private removeTabFromToolbar;
5716
- private get showLegacyNavigation();
5749
+ get showLegacyNavigation(): boolean;
5750
+ get showNavigation(): boolean;
5751
+ showSeparator(index: number): boolean;
5717
5752
  }
5718
5753
  }
5719
5754
  declare module "survey-events-api" {
@@ -7004,8 +7039,20 @@ declare module "question_textbase" {
7004
7039
  protected calcRenderedPlaceholder(): void;
7005
7040
  protected hasPlaceHolder(): boolean;
7006
7041
  protected setNewValue(newValue: any): void;
7042
+ protected setQuestionValue(newValue: any, updateIsAnswered?: boolean): void;
7007
7043
  getControlClass(): string;
7008
7044
  get ariaRole(): string;
7045
+ get ariaRequired(): any;
7046
+ get ariaInvalid(): any;
7047
+ get ariaLabel(): string;
7048
+ get ariaLabelledBy(): string;
7049
+ get ariaDescribedBy(): string;
7050
+ get a11y_input_ariaRole(): string;
7051
+ get a11y_input_ariaRequired(): "true" | "false";
7052
+ get a11y_input_ariaInvalid(): "true" | "false";
7053
+ get a11y_input_ariaLabel(): string;
7054
+ get a11y_input_ariaLabelledBy(): string;
7055
+ get a11y_input_ariaDescribedBy(): string;
7009
7056
  }
7010
7057
  }
7011
7058
  declare module "question_text" {
@@ -7156,6 +7203,10 @@ declare module "question_multipletext" {
7156
7203
  getItemDefaultValue(name: string): any;
7157
7204
  getIsRequiredText(): string;
7158
7205
  }
7206
+ export class MultipleTextEditorModel extends QuestionTextModel {
7207
+ get a11y_input_ariaLabel(): string;
7208
+ get a11y_input_ariaLabelledBy(): string;
7209
+ }
7159
7210
  /**
7160
7211
  * A class that describes an item in a [Multiple Text](https://surveyjs.io/form-library/documentation/api-reference/multiple-text-entry-question-model) question.
7161
7212
  *
@@ -7175,8 +7226,8 @@ declare module "question_multipletext" {
7175
7226
  get name(): string;
7176
7227
  set name(val: string);
7177
7228
  get question(): Question;
7178
- get editor(): QuestionTextModel;
7179
- protected createEditor(name: string): QuestionTextModel;
7229
+ get editor(): MultipleTextEditorModel;
7230
+ protected createEditor(name: string): MultipleTextEditorModel;
7180
7231
  addUsedLocales(locales: Array<string>): void;
7181
7232
  localeChanged(): void;
7182
7233
  locStrsChanged(): void;
@@ -7461,7 +7512,7 @@ declare module "survey" {
7461
7512
  */
7462
7513
  onNavigateToUrl: EventBase<SurveyModel, NavigateToUrlEvent>;
7463
7514
  /**
7464
- * An event that is raised when the survey [`state`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#state) changes from `"starting"` to `"running"`. This occurs only if your survey includes a [start page](https://surveyjs.io/form-library/documentation/design-survey/create-a-multi-page-survey#start-page).
7515
+ * An event that is raised when the survey [`state`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#state) changes to `"running"`.
7465
7516
  * @see firstPageIsStarted
7466
7517
  */
7467
7518
  onStarted: EventBase<SurveyModel, {}>;
@@ -7823,13 +7874,17 @@ declare module "survey" {
7823
7874
  */
7824
7875
  onAfterRenderPanel: EventBase<SurveyModel, AfterRenderPanelEvent>;
7825
7876
  /**
7826
- * The event occurs when an element within a question gets focus.
7877
+ * An event that is raised when an element (input field, checkbox, radio button) within a question gets focus.
7827
7878
  * @see onFocusInPanel
7879
+ * @see focusFirstQuestionAutomatic
7880
+ * @see focusQuestion
7828
7881
  */
7829
7882
  onFocusInQuestion: EventBase<SurveyModel, FocusInQuestionEvent>;
7830
7883
  /**
7831
- * The event occurs when an element within a panel gets focus.
7884
+ * An event that is raised when an element within a panel gets focus.
7832
7885
  * @see onFocusInQuestion
7886
+ * @see focusFirstQuestionAutomatic
7887
+ * @see focusQuestion
7833
7888
  */
7834
7889
  onFocusInPanel: EventBase<SurveyModel, FocusInPanelEvent>;
7835
7890
  /**
@@ -8150,13 +8205,21 @@ declare module "survey" {
8150
8205
  get surveyShowDataSaving(): boolean;
8151
8206
  set surveyShowDataSaving(val: boolean);
8152
8207
  /**
8153
- * Gets or sets whether the first input is focused on showing a next or a previous page.
8208
+ * Specifies whether to focus the first question on the page on survey startup or when users switch between pages.
8209
+ *
8210
+ * Default value: `true`
8211
+ * @see focusOnFirstError
8212
+ * @see focusFirstQuestion
8213
+ * @see focusQuestion
8154
8214
  */
8155
8215
  get focusFirstQuestionAutomatic(): boolean;
8156
8216
  set focusFirstQuestionAutomatic(val: boolean);
8157
8217
  /**
8158
- * Gets or sets whether the first input is focused if the current page has errors.
8159
- * Set this property to `false` (the default value is `true`) if you do not want to bring the focus to the first question that has error on the page.
8218
+ * Specifies whether to focus the first question with a validation error on the current page.
8219
+ *
8220
+ * Default value: `true`
8221
+ * @see validate
8222
+ * @see focusFirstQuestionAutomatic
8160
8223
  */
8161
8224
  get focusOnFirstError(): boolean;
8162
8225
  set focusOnFirstError(val: boolean);
@@ -8328,14 +8391,25 @@ declare module "survey" {
8328
8391
  get checkErrorsMode(): string;
8329
8392
  set checkErrorsMode(val: string);
8330
8393
  /**
8331
- * Specifies whether to increase the height of text areas to accommodate multi-line comments.
8394
+ * Specifies whether to increase the height of [Long Text](https://surveyjs.io/form-library/examples/add-open-ended-question-to-a-form/) questions and other text areas to accommodate multi-line text content.
8332
8395
  *
8333
8396
  * Default value: `false`
8334
8397
  *
8335
- * You can override this property for individual Comment questions: [`autoGrow`](https://surveyjs.io/form-library/documentation/api-reference/comment-field-model#autoGrow).
8398
+ * You can override this property for individual Long Text questions: [`autoGrow`](https://surveyjs.io/form-library/documentation/api-reference/comment-field-model#autoGrow).
8399
+ * @see allowResizeComment
8336
8400
  */
8337
8401
  get autoGrowComment(): boolean;
8338
8402
  set autoGrowComment(val: boolean);
8403
+ /**
8404
+ * Specifies whether to display a resize handle for [Long Text](https://surveyjs.io/form-library/examples/add-open-ended-question-to-a-form/) questions and other text areas intended for multi-line text content.
8405
+ *
8406
+ * Default value: `true`
8407
+ *
8408
+ * You can override this property for individual Long Text questions: [`allowResize`](https://surveyjs.io/form-library/documentation/api-reference/comment-field-model#allowResize).
8409
+ * @see autoGrowComment
8410
+ */
8411
+ get allowResizeComment(): boolean;
8412
+ set allowResizeComment(val: boolean);
8339
8413
  /**
8340
8414
  * Gets or sets a value that specifies how the survey updates its questions' text values.
8341
8415
  *
@@ -8871,7 +8945,9 @@ declare module "survey" {
8871
8945
  get questionsOrder(): string;
8872
8946
  set questionsOrder(val: string);
8873
8947
  /**
8874
- * Sets the input focus to the first question with the input field.
8948
+ * Focuses the first question on the current page.
8949
+ * @see focusQuestion
8950
+ * @see focusFirstQuestionAutomatic
8875
8951
  */
8876
8952
  focusFirstQuestion(): void;
8877
8953
  scrollToTopOnPageChange(doScroll?: boolean): void;
@@ -9345,6 +9421,9 @@ declare module "survey" {
9345
9421
  addPage(page: PageModel, index?: number): void;
9346
9422
  /**
9347
9423
  * Creates a new page and adds it to the survey.
9424
+ *
9425
+ * If you want to switch a survey to the newly added page, assign its index to the [`currentPageNo`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#currentPageNo) property or assign the entire page to the [`currentPage`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#currentPage) property.
9426
+ *
9348
9427
  * @param name A page name. If you do not specify this parameter, it will be generated automatically.
9349
9428
  * @param index An index at which to insert the page. If you do not specify this parameter, the page will be added to the end.
9350
9429
  * @returns The created and added page.
@@ -9762,9 +9841,11 @@ declare module "survey" {
9762
9841
  private needRenderIcons;
9763
9842
  private skippedPages;
9764
9843
  /**
9765
- * Focus question by its name. If needed change the current page on the page where question is located.
9766
- * Function returns false if there is no question with this name or question is invisible, otherwise it returns true.
9767
- * @param name question name
9844
+ * Focuses a question with a specified name. Switches the current page if needed.
9845
+ * @param name A question name.
9846
+ * @returns `false` if the survey does not contain a question with a specified name or this question is hidden; otherwise, `true`.
9847
+ * @see focusFirstQuestion
9848
+ * @see focusFirstQuestionAutomatic
9768
9849
  */
9769
9850
  focusQuestion(name: string): boolean;
9770
9851
  questionEditFinishCallback(question: Question, event: any): void;
@@ -9876,7 +9957,11 @@ declare module "survey-element" {
9876
9957
  export enum DragTypeOverMeEnum {
9877
9958
  InsideEmptyPanel = 1,
9878
9959
  MultilineRight = 2,
9879
- MultilineLeft = 3
9960
+ MultilineLeft = 3,
9961
+ Top = 4,
9962
+ Right = 5,
9963
+ Bottom = 6,
9964
+ Left = 7
9880
9965
  }
9881
9966
  /**
9882
9967
  * A base class for all survey elements.
@@ -10352,6 +10437,7 @@ declare module "question" {
10352
10437
  get ariaRequired(): "true" | "false";
10353
10438
  get ariaInvalid(): "true" | "false";
10354
10439
  get ariaLabelledBy(): string;
10440
+ get ariaExpanded(): string;
10355
10441
  get ariaDescribedBy(): string;
10356
10442
  choicesLoaded(): void;
10357
10443
  /**
@@ -10731,6 +10817,7 @@ declare module "question" {
10731
10817
  protected initCommentFromSurvey(): void;
10732
10818
  protected runExpression(expression: string): any;
10733
10819
  private get autoGrowComment();
10820
+ private get allowResizeComment();
10734
10821
  private get questionValue();
10735
10822
  private set questionValue(value);
10736
10823
  private get questionComment();
@@ -10995,7 +11082,7 @@ declare module "question" {
10995
11082
  protected getCompactRenderAs(): string;
10996
11083
  protected getDesktopRenderAs(): string;
10997
11084
  protected processResponsiveness(requiredWidth: number, availableWidth: number): any;
10998
- private destroyResizeObserver;
11085
+ destroyResizeObserver(): void;
10999
11086
  dispose(): void;
11000
11087
  }
11001
11088
  }
@@ -11660,6 +11747,7 @@ declare module "base-interfaces" {
11660
11747
  isLoadingFromJson: boolean;
11661
11748
  isUpdateValueTextOnTyping: boolean;
11662
11749
  autoGrowComment: boolean;
11750
+ allowResizeComment: boolean;
11663
11751
  state: string;
11664
11752
  isLazyRendering: boolean;
11665
11753
  cancelPreviewByPage(panel: IPanel): any;
@@ -11875,510 +11963,43 @@ declare module "base-interfaces" {
11875
11963
  data?: any;
11876
11964
  }
11877
11965
  }
11878
- declare module "question_dropdown" {
11879
- import { QuestionSelectBase } from "question_baseselect";
11880
- import { LocalizableString } from "localizablestring";
11881
- import { ItemValue } from "itemvalue";
11882
- import { PopupModel } from "popup";
11883
- import { EventBase } from "base";
11884
- import { DropdownListModel } from "dropdownListModel";
11966
+ declare module "itemvalue" {
11967
+ import { ILocalizableOwner, LocalizableString } from "localizablestring";
11968
+ import { ConditionRunner } from "conditions";
11969
+ import { IShortcutText, ISurvey } from "base-interfaces";
11970
+ import { BaseAction } from "actions/action";
11885
11971
  /**
11886
- * A class that describes the Dropdown question type.
11887
- *
11888
- * [View Demo](https://surveyjs.io/form-library/examples/questiontype-dropdown/ (linkStyle))
11972
+ * Array of ItemValue is used in checkox, dropdown and radiogroup choices, matrix columns and rows.
11973
+ * It has two main properties: value and text. If text is empty, value is used for displaying.
11974
+ * The text property is localizable and support markdown.
11889
11975
  */
11890
- export class QuestionDropdownModel extends QuestionSelectBase {
11891
- dropdownListModelValue: DropdownListModel;
11892
- lastSelectedItemValue: ItemValue;
11893
- updateReadOnlyText(): void;
11894
- constructor(name: string);
11895
- locStrsChanged(): void;
11896
- get showOptionsCaption(): boolean;
11897
- set showOptionsCaption(val: boolean);
11898
- get optionsCaption(): string;
11899
- set optionsCaption(val: string);
11976
+ export class ItemValue extends BaseAction implements ILocalizableOwner, IShortcutText {
11977
+ protected typeName: string;
11978
+ [index: string]: any;
11979
+ getMarkdownHtml(text: string, name: string): string;
11980
+ getRenderer(name: string): string;
11981
+ getRendererContext(locStr: LocalizableString): any;
11982
+ getProcessedText(text: string): string;
11983
+ static get Separator(): string;
11984
+ static set Separator(val: string);
11900
11985
  /**
11901
- * A placeholder for the input field.
11986
+ * Resets the input array and fills it with values from the values array
11902
11987
  */
11903
- get placeholder(): string;
11904
- set placeholder(val: string);
11905
- get locPlaceholder(): LocalizableString;
11906
- get clearCaption(): string;
11907
- set clearCaption(value: string);
11908
- get locClearCaption(): LocalizableString;
11909
- getType(): string;
11910
- get ariaRole(): string;
11911
- get selectedItem(): ItemValue;
11912
- protected onGetSingleSelectedItem(selectedItemByValue: ItemValue): void;
11913
- supportGoNextPageAutomatic(): boolean;
11914
- private minMaxChoices;
11915
- protected getChoices(): Array<ItemValue>;
11916
- /**
11917
- * Use the `choicesMin`, `choicesMax`, and `choicesStep` properties to generate choice items automatically. For example, the configuration below generates three choice items: [10, 20, 30].
11918
- *
11919
- * ```js
11920
- * "choicesMin": 10,
11921
- * "choicesMax": 30
11922
- * "choicesStep": 10
11923
- * ```
11924
- * @see choicesMax
11925
- * @see choicesStep
11926
- */
11927
- get choicesMin(): number;
11928
- set choicesMin(val: number);
11929
- /**
11930
- * Use the `choicesMin`, `choicesMax`, and `choicesStep` properties to generate choice items automatically. For example, the configuration below generates three choice items: [10, 20, 30].
11931
- *
11932
- * ```js
11933
- * "choicesMin": 10,
11934
- * "choicesMax": 30
11935
- * "choicesStep": 10
11936
- * ```
11937
- * @see choicesMin
11938
- * @see choicesStep
11939
- */
11940
- get choicesMax(): number;
11941
- set choicesMax(val: number);
11942
- /**
11943
- * Use the `choicesMin`, `choicesMax`, and `choicesStep` properties to generate choice items automatically. For example, the configuration below generates three choice items: [10, 20, 30].
11944
- *
11945
- * ```js
11946
- * "choicesMin": 10,
11947
- * "choicesMax": 30
11948
- * "choicesStep": 10
11949
- * ```
11950
- *
11951
- * The default value of the `choicesStep` property is 1.
11952
- * @see choicesMin
11953
- * @see choicesMax
11954
- */
11955
- get choicesStep(): number;
11956
- set choicesStep(val: number);
11957
- get autocomplete(): string;
11958
- set autocomplete(val: string);
11959
- /**
11960
- * Specifies whether to display a button that clears the selected value.
11961
- */
11962
- allowClear: boolean;
11963
- /**
11964
- * Specifies whether users can enter a value into the input field to filter the drop-down list.
11965
- */
11966
- searchEnabled: boolean;
11967
- inputHasValue: boolean;
11968
- readOnlyText: string;
11969
- /**
11970
- * Enables lazy loading. If you set this property to `true`, you should implement the Survey's [`onChoicesLazyLoad`](https://surveyjs.io/form-library/documentation/surveymodel#onChoicesLazyLoad) event handler.
11971
- * @see choicesLazyLoadPageSize
11972
- * @see SurveyModel.onChoicesLazyLoad
11973
- */
11974
- choicesLazyLoadEnabled: boolean;
11975
- /**
11976
- * Specifies the number of choice items to load at a time when choices are loaded on demand.
11977
- * @see choicesLazyLoadEnabled
11978
- * @see SurveyModel.onChoicesLazyLoad
11979
- */
11980
- choicesLazyLoadPageSize: number;
11981
- getControlClass(): string;
11982
- suggestedItem: ItemValue;
11983
- get selectedItemLocText(): LocalizableString;
11984
- get inputFieldComponentName(): string;
11985
- get showSelectedItemLocText(): boolean;
11986
- get showInputFieldComponent(): boolean;
11987
- private get selectedItemText();
11988
- get dropdownListModel(): DropdownListModel;
11989
- set dropdownListModel(val: DropdownListModel);
11990
- get popupModel(): PopupModel;
11991
- get ariaExpanded(): boolean;
11992
- onOpened: EventBase<QuestionDropdownModel>;
11993
- onOpenedCallBack(): void;
11994
- protected onSelectedItemValuesChangedHandler(newValue: any): void;
11995
- protected hasUnknownValue(val: any, includeOther: boolean, isFilteredChoices: boolean, checkEmptyValue: boolean): boolean;
11996
- protected needConvertRenderedOtherToDataValue(): boolean;
11997
- protected onVisibleChoicesChanged(): void;
11998
- protected getFirstInputElementId(): string;
11999
- getInputId(): string;
12000
- clearValue(): void;
12001
- onClick(e: any): void;
12002
- onKeyUp(event: any): void;
12003
- dispose(): void;
12004
- }
12005
- }
12006
- declare module "dropdownListModel" {
12007
- import { IAction } from "actions/action";
12008
- import { Base } from "base";
12009
- import { ItemValue } from "itemvalue";
12010
- import { ListModel } from "list";
12011
- import { PopupModel } from "popup";
12012
- import { Question } from "question";
12013
- export class DropdownListModel extends Base {
12014
- protected question: Question;
12015
- protected onSelectionChanged?: (item: IAction, ...params: any[]) => void;
12016
- readonly minPageSize = 25;
12017
- readonly loadingItemHeight = 40;
12018
- private _markdownMode;
12019
- private _popupModel;
12020
- private get focusFirstInputSelector();
12021
- protected readonly selectedItemSelector = ".sv-list__item--selected";
12022
- protected readonly itemSelector = ".sv-list__item";
12023
- protected getFocusFirstInputSelector(): string;
12024
- private itemsSettings;
12025
- private isRunningLoadQuestionChoices;
12026
- protected listModel: ListModel<ItemValue>;
12027
- protected popupCssClasses: string;
12028
- private resetItemsSettings;
12029
- private setItems;
12030
- private updateQuestionChoices;
12031
- private updatePopupFocusFirstInputSelector;
12032
- protected createPopup(): void;
12033
- private setFilterStringToListModel;
12034
- protected popupRecalculatePosition(isResetHeight: boolean): void;
12035
- protected onHidePopup(): void;
12036
- protected getAvailableItems(): Array<ItemValue>;
12037
- protected createListModel(): ListModel<ItemValue>;
12038
- protected updateAfterListModelCreated(model: ListModel<ItemValue>): void;
12039
- updateCssClasses(popupCssClass: string, listCssClasses: any): void;
12040
- protected resetFilterString(): void;
12041
- clear(): void;
12042
- protected onSetFilterString(): void;
12043
- searchEnabled: boolean;
12044
- filterString: string;
12045
- inputString: string;
12046
- showSelectedItemLocText: boolean;
12047
- showInputFieldComponent: boolean;
12048
- ariaActivedescendant: string;
12049
- private applyInputString;
12050
- protected fixInputCase(): void;
12051
- protected applyHintString(item: ItemValue): void;
12052
- get inputStringRendered(): string;
12053
- set inputStringRendered(val: string);
12054
- get placeholderRendered(): any;
12055
- get listElementId(): string;
12056
- hasScroll: boolean;
12057
- hintString: string;
12058
- private get hintStringLC();
12059
- private get inputStringLC();
12060
- get showHintPrefix(): boolean;
12061
- get hintStringPrefix(): string;
12062
- get showHintString(): boolean;
12063
- get hintStringSuffix(): string;
12064
- get hintStringMiddle(): string;
12065
- constructor(question: Question, onSelectionChanged?: (item: IAction, ...params: any[]) => void);
12066
- get popupModel(): PopupModel;
12067
- get inputReadOnly(): boolean;
12068
- get filterStringEnabled(): boolean;
12069
- get inputMode(): "none" | "text";
12070
- setSearchEnabled(newValue: boolean): void;
12071
- updateItems(): void;
12072
- onClick(event: any): void;
12073
- protected focusItemOnClickAndPopup(): void;
12074
- onClear(event: any): void;
12075
- getSelectedAction(): ItemValue;
12076
- changeSelectionWithKeyboard(reverse: boolean): void;
12077
- protected beforeScrollToFocusedItem(focusedItem: ItemValue): void;
12078
- protected afterScrollToFocusedItem(): void;
12079
- keyHandler(event: any): void;
12080
- protected onEscape(): void;
12081
- onScroll(event: Event): void;
12082
- onBlur(event: any): void;
12083
- onFocus(event: any): void;
12084
- setInputStringFromSelectedItem(newValue?: any): void;
12085
- dispose(): void;
12086
- scrollToFocusedItem(): void;
12087
- }
12088
- }
12089
- declare module "question_rating" {
12090
- import { ItemValue } from "itemvalue";
12091
- import { Question } from "question";
12092
- import { LocalizableString } from "localizablestring";
12093
- import { Base } from "base";
12094
- import { DropdownListModel } from "dropdownListModel";
12095
- export class RenderedRatingItem extends Base {
12096
- itemValue: ItemValue;
12097
- private locString;
12098
- private onStringChangedCallback;
12099
- get value(): number;
12100
- highlight: "none" | "highlighted" | "unhighlighted";
12101
- get locText(): LocalizableString;
12102
- text: string;
12103
- style: any;
12104
- constructor(itemValue: ItemValue, locString?: LocalizableString);
12105
- }
12106
- /**
12107
- * A class that describes the Rating Scale question type.
12108
- *
12109
- * [View Demo](https://surveyjs.io/form-library/examples/rating-scale/ (linkStyle))
12110
- */
12111
- export class QuestionRatingModel extends Question {
12112
- constructor(name: string);
12113
- private jsonObj;
12114
- private setIconsToRateValues;
12115
- startLoadingFromJson(jsonObj: any): void;
12116
- endLoadingFromJson(): void;
12117
- private _syncPropertiesChanging;
12118
- private registerSychProperties;
12119
- private useRateValues;
12120
- private updateRateMax;
12121
- private updateRateMin;
12122
- private updateRateCount;
12123
- initPropertyDependencies(): void;
12124
- autoGenerate: boolean;
12125
- /**
12126
- * A list of rate values.
12127
- *
12128
- * This property accepts an array of objects with the following structure:
12129
- *
12130
- * ```js
12131
- * {
12132
- * "value": any, // A value to be saved in survey results
12133
- * "text": String, // A display text. This property supports Markdown. When `text` is undefined, `value` is used.
12134
- * "customProperty": any // Any property that you find useful.
12135
- * }
12136
- * ```
12137
- *
12138
- * If you add custom properties, refer to the following help topic to learn how to serialize them into JSON: [Add Custom Properties to Property Grid](https://surveyjs.io/survey-creator/documentation/property-grid#add-custom-properties-to-the-property-grid).
12139
- *
12140
- * To enable Markdown support for the `text` property, implement Markdown-to-HTML conversion in the [onTextMarkdown](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#onTextMarkdown) event handler. For an example, refer to the following demo: [Convert Markdown to HTML with Showdown](https://surveyjs.io/form-library/examples/edit-survey-questions-markdown/).
12141
- *
12142
- * If you need to specify only the `value` property, you can set the `rateValues` property to an array of numbers, for example, `[ 3, 6, 10 ]`. These values are both saved in survey results and used as display text.
12143
- *
12144
- * If you do not specify the `rateValues` property, rate values are generated automatically based upon the [`rateMin`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#rateMin), [`rateMax`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#rateMax), [`rateStep`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#rateStep), and [`rateCount`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#rateCount) property values.
12145
- *
12146
- * [View Demo](/form-library/examples/rating-scale/ (linkStyle))
12147
- */
12148
- get rateValues(): Array<any>;
12149
- set rateValues(val: Array<any>);
12150
- /**
12151
- * Specifies the first rate value in the generated sequence of rate values. Applies if the [`rateValues`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#rateValues) array is empty.
12152
- *
12153
- * Default value: 1
12154
- *
12155
- * [View Demo](/form-library/examples/rating-scale/ (linkStyle))
12156
- * @see rateMax
12157
- * @see rateStep
12158
- * @see rateCount
12159
- */
12160
- get rateMin(): number;
12161
- set rateMin(val: number);
12162
- /**
12163
- * Specifies the last rate value in the generated sequence of rate values. Applies if the [`rateValues`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#rateValues) array is empty.
12164
- *
12165
- * Default value: 5
12166
- *
12167
- * [View Demo](/form-library/examples/rating-scale/ (linkStyle))
12168
- * @see rateMin
12169
- * @see rateStep
12170
- * @see rateCount
12171
- */
12172
- get rateMax(): number;
12173
- set rateMax(val: number);
12174
- /**
12175
- * Specifies a step with which to generate rate values. Applies if the [`rateValues`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#rateValues) array is empty.
12176
- *
12177
- * Default value: 1
12178
- *
12179
- * [View Demo](/form-library/examples/rating-scale/ (linkStyle))
12180
- * @see rateMin
12181
- * @see rateMax
12182
- * @see rateCount
12183
- */
12184
- get rateStep(): number;
12185
- set rateStep(val: number);
12186
- /**
12187
- * Specifies the number of rate values you want to generate. Applies if the [`rateValues`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#rateValues) array is empty.
12188
- *
12189
- * Set the [`rateMin`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#rateMin) or [`rateMax`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#rateMax) property to specify the first or the last rate value. Use the [`rateStep`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#rateStep) property to specify a step with which to generate rate values.
12190
- *
12191
- * [View Demo](/form-library/examples/rating-scale/ (linkStyle))
12192
- */
12193
- rateCount: number;
12194
- private static badColor;
12195
- private static normalColor;
12196
- private static goodColor;
12197
- private static badColorLight;
12198
- private static normalColorLight;
12199
- private static goodColorLight;
12200
- private initColors;
12201
- protected getDisplayValueCore(keysAsText: boolean, value: any): any;
12202
- get visibleRateValues(): ItemValue[];
12203
- itemValuePropertyChanged(item: ItemValue, name: string, oldValue: any, newValue: any): void;
12204
- private createRenderedRateItems;
12205
- renderedRateItems: Array<RenderedRatingItem>;
12206
- private correctValue;
12207
- getType(): string;
12208
- protected getFirstInputElementId(): string;
12209
- getInputId(index: number): string;
12210
- supportGoNextPageAutomatic(): boolean;
12211
- supportOther(): boolean;
12212
- /**
12213
- * Specifies a description for the minimum (first) rate value.
12214
- * @see rateValues
12215
- * @see rateMin
12216
- * @see displayRateDescriptionsAsExtremeItems
12217
- */
12218
- get minRateDescription(): string;
12219
- set minRateDescription(val: string);
12220
- get locMinRateDescription(): LocalizableString;
12221
- /**
12222
- * Specifies a description for the maximum (last) rate value.
12223
- * @see rateValues
12224
- * @see rateMax
12225
- * @see displayRateDescriptionsAsExtremeItems
12226
- */
12227
- get maxRateDescription(): string;
12228
- set maxRateDescription(val: string);
12229
- get locMaxRateDescription(): LocalizableString;
12230
- hasMinRateDescription: boolean;
12231
- hasMaxRateDescription: boolean;
12232
- get hasMinLabel(): boolean;
12233
- get hasMaxLabel(): boolean;
12234
- /**
12235
- * Specifies whether to display `minRateDescription` and `maxRateDescription` values as captions for buttons that correspond to the extreme (first and last) rate values.
12236
- *
12237
- * Default value: `false`
12238
- *
12239
- * If this property is disabled, the `minRateDescription` and `maxRateDescription` values are displayed as plain non-clickable texts.
12240
- *
12241
- * If any of the `minRateDescription` and `maxRateDescription` properties is empty, the corresponding rate value's `value` or `text` is displayed as a button caption.
12242
- * @see minRateDescription
12243
- * @see maxRateDescription
12244
- * @see rateMin
12245
- * @see rateMax
12246
- * @see rateValues
12247
- */
12248
- displayRateDescriptionsAsExtremeItems: boolean;
12249
- /**
12250
- * Specifies whether to display rate values as buttons or items in a drop-down list.
12251
- *
12252
- * Possible values:
12253
- *
12254
- * - `"buttons"` - Displays rate values as buttons in a row.
12255
- * - `"dropdown"` - Displays rate values as items in a drop-down list.
12256
- * - `"auto"` (default) - Selects between the `"buttons"` and `"dropdown"` modes based on the available width. When the width is insufficient to display buttons, the question displays a dropdown.
12257
- *
12258
- * [View Demo](/form-library/examples/ui-adaptation-modes-for-rating-scale/ (linkStyle))
12259
- * @see rateType
12260
- */
12261
- displayMode: "dropdown" | "buttons" | "auto";
12262
- /**
12263
- * Specifies the visual representation of rate values.
12264
- *
12265
- * Possible values:
12266
- *
12267
- * - `"labels"` (default) - Displays rate values as buttons with labels.
12268
- * - `"stars"` - Displays rate values as stars.
12269
- * - `"smileys"` - Displays rate values as smiley faces.
12270
- *
12271
- * [View Demo](/form-library/examples/rating-scale/ (linkStyle))
12272
- * @see scaleColorMode
12273
- * @see rateColorMode
12274
- * @see displayMode
12275
- */
12276
- rateType: "labels" | "stars" | "smileys";
12277
- get rateDisplayMode(): "labels" | "stars" | "smileys";
12278
- set rateDisplayMode(val: "labels" | "stars" | "smileys");
12279
- /**
12280
- * Specifies how to colorize the smiley face rating scale. Applies only if [`rateType`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#rateType) is `"smileys"`.
12281
- *
12282
- * Possible values:
12283
- *
12284
- * - `"monochrome"` (default) - Displays emojis in monochrome.
12285
- * - `"colored"` - Displays emojis in color.
12286
- *
12287
- * [View Demo](/form-library/examples/rating-scale/ (linkStyle))
12288
- * @see rateColorMode
12289
- */
12290
- scaleColorMode: "monochrome" | "colored";
12291
- /**
12292
- * Specifies how to colorize the selected emoji. Applies only if [`rateType`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#rateType) is `"smileys"`.
12293
- *
12294
- * Possible values:
12295
- *
12296
- * - `"default"` - Displays the selected emoji in default survey color.
12297
- * - `"scale"` (default) - Inherits the color from the scale.
12298
- * @see scaleColorMode
12299
- */
12300
- rateColorMode: "default" | "scale";
12301
- get isStar(): boolean;
12302
- get isSmiley(): boolean;
12303
- get itemComponentName(): "sv-rating-item-star" | "sv-rating-item-smiley" | "sv-rating-item";
12304
- protected valueToData(val: any): any;
12305
- setValueFromClick(value: any): void;
12306
- onItemMouseIn(item: RenderedRatingItem): void;
12307
- onItemMouseOut(item: RenderedRatingItem): void;
12308
- get itemSmallMode(): boolean;
12309
- get ratingRootCss(): string;
12310
- get itemStarIcon(): string;
12311
- get itemStarIconAlt(): string;
12312
- getItemSmiley(item: ItemValue): string;
12313
- getItemSmileyIconName(item: ItemValue): string;
12314
- getItemClassByText(item: ItemValue, text: string): string;
12315
- private getRenderedItemColor;
12316
- getItemStyle(item: ItemValue, highlight?: "none" | "highlighted" | "unhighlighted"): {
12317
- borderColor: string;
12318
- fill: string;
12319
- backgroundColor: string;
12320
- };
12321
- getItemClass(item: ItemValue, highlight?: "none" | "highlighted" | "unhighlighted"): string;
12322
- getControlClass(): string;
12323
- get placeholder(): string;
12324
- set placeholder(val: string);
12325
- get locPlaceholder(): LocalizableString;
12326
- get allowClear(): boolean;
12327
- get searchEnabled(): boolean;
12328
- get renderedValue(): any;
12329
- set renderedValue(val: any);
12330
- isItemSelected(item: ItemValue): boolean;
12331
- get visibleChoices(): ItemValue[];
12332
- get readOnlyText(): any;
12333
- needResponsiveWidth(): boolean;
12334
- protected supportResponsiveness(): boolean;
12335
- protected getCompactRenderAs(): string;
12336
- protected getDesktopRenderAs(): string;
12337
- private dropdownListModelValue;
12338
- set dropdownListModel(val: DropdownListModel);
12339
- get dropdownListModel(): DropdownListModel;
12340
- protected updateCssClasses(res: any, css: any): void;
12341
- protected calcCssClasses(css: any): any;
12342
- dispose(): void;
12343
- }
12344
- }
12345
- declare module "itemvalue" {
12346
- import { ILocalizableOwner, LocalizableString } from "localizablestring";
12347
- import { ConditionRunner } from "conditions";
12348
- import { IShortcutText, ISurvey } from "base-interfaces";
12349
- import { BaseAction } from "actions/action";
12350
- /**
12351
- * Array of ItemValue is used in checkox, dropdown and radiogroup choices, matrix columns and rows.
12352
- * It has two main properties: value and text. If text is empty, value is used for displaying.
12353
- * The text property is localizable and support markdown.
12354
- */
12355
- export class ItemValue extends BaseAction implements ILocalizableOwner, IShortcutText {
12356
- protected typeName: string;
12357
- [index: string]: any;
12358
- getMarkdownHtml(text: string, name: string): string;
12359
- getRenderer(name: string): string;
12360
- getRendererContext(locStr: LocalizableString): any;
12361
- getProcessedText(text: string): string;
12362
- static get Separator(): string;
12363
- static set Separator(val: string);
12364
- /**
12365
- * Resets the input array and fills it with values from the values array
12366
- */
12367
- static setData(items: Array<ItemValue>, values: Array<any>, type?: string): void;
12368
- static getData(items: Array<ItemValue>): any;
12369
- static getItemByValue(items: Array<ItemValue>, val: any): ItemValue;
12370
- static getTextOrHtmlByValue(items: Array<ItemValue>, val: any): string;
12371
- static locStrsChanged(items: Array<ItemValue>): void;
12372
- static runConditionsForItems(items: Array<ItemValue>, filteredItems: Array<ItemValue>, runner: ConditionRunner, values: any, properties: any, useItemExpression?: boolean, onItemCallBack?: (item: ItemValue, val: boolean) => boolean): boolean;
12373
- static runEnabledConditionsForItems(items: Array<ItemValue>, runner: ConditionRunner, values: any, properties: any, onItemCallBack?: (item: ItemValue, val: boolean) => boolean): boolean;
12374
- private static runConditionsForItemsCore;
12375
- ownerPropertyName: string;
12376
- private _visible;
12377
- private locTextValue;
12378
- private visibleConditionRunner;
12379
- private enableConditionRunner;
12380
- constructor(value: any, text?: string, typeName?: string);
12381
- onCreating(): any;
11988
+ static setData(items: Array<ItemValue>, values: Array<any>, type?: string): void;
11989
+ static getData(items: Array<ItemValue>): any;
11990
+ static getItemByValue(items: Array<ItemValue>, val: any): ItemValue;
11991
+ static getTextOrHtmlByValue(items: Array<ItemValue>, val: any): string;
11992
+ static locStrsChanged(items: Array<ItemValue>): void;
11993
+ static runConditionsForItems(items: Array<ItemValue>, filteredItems: Array<ItemValue>, runner: ConditionRunner, values: any, properties: any, useItemExpression?: boolean, onItemCallBack?: (item: ItemValue, val: boolean) => boolean): boolean;
11994
+ static runEnabledConditionsForItems(items: Array<ItemValue>, runner: ConditionRunner, values: any, properties: any, onItemCallBack?: (item: ItemValue, val: boolean) => boolean): boolean;
11995
+ private static runConditionsForItemsCore;
11996
+ ownerPropertyName: string;
11997
+ private _visible;
11998
+ private locTextValue;
11999
+ private visibleConditionRunner;
12000
+ private enableConditionRunner;
12001
+ constructor(value: any, text?: string, typeName?: string);
12002
+ onCreating(): any;
12382
12003
  getType(): string;
12383
12004
  getSurvey(live?: boolean): ISurvey;
12384
12005
  getLocale(): string;
@@ -12911,32 +12532,244 @@ declare module "question_matrixdropdown" {
12911
12532
  constructor(name: string);
12912
12533
  getType(): string;
12913
12534
  /**
12914
- * A title for the total row. Applies if at least one column displays total values.
12915
- * @see rowTitleWidth
12916
- * @see columns
12535
+ * A title for the total row. Applies if at least one column displays total values.
12536
+ * @see rowTitleWidth
12537
+ * @see columns
12538
+ */
12539
+ get totalText(): string;
12540
+ set totalText(val: string);
12541
+ get locTotalText(): LocalizableString;
12542
+ getFooterText(): LocalizableString;
12543
+ getRowTitleWidth(): string;
12544
+ /**
12545
+ * Specifies whether to hide the question when the matrix has no visible rows.
12546
+ * @see rowsVisibleIf
12547
+ */
12548
+ get hideIfRowsEmpty(): boolean;
12549
+ set hideIfRowsEmpty(val: boolean);
12550
+ protected getDisplayValueCore(keysAsText: boolean, value: any): any;
12551
+ protected getConditionObjectRowName(index: number): string;
12552
+ protected getConditionObjectRowText(index: number): string;
12553
+ protected getConditionObjectsRowIndeces(): Array<number>;
12554
+ protected setNewValue(newValue: any): void;
12555
+ clearIncorrectValues(): void;
12556
+ protected clearValueIfInvisibleCore(): void;
12557
+ protected generateRows(): Array<MatrixDropdownRowModel>;
12558
+ protected createMatrixRow(item: ItemValue, value: any): MatrixDropdownRowModel;
12559
+ protected getSearchableItemValueKeys(keys: Array<string>): void;
12560
+ protected updateProgressInfoByValues(res: IProgressInfo): void;
12561
+ }
12562
+ }
12563
+ declare module "dropdownListModel" {
12564
+ import { IAction } from "actions/action";
12565
+ import { Base } from "base";
12566
+ import { ItemValue } from "itemvalue";
12567
+ import { ListModel } from "list";
12568
+ import { PopupModel } from "popup";
12569
+ import { Question } from "question";
12570
+ export class DropdownListModel extends Base {
12571
+ protected question: Question;
12572
+ protected onSelectionChanged?: (item: IAction, ...params: any[]) => void;
12573
+ readonly minPageSize = 25;
12574
+ readonly loadingItemHeight = 40;
12575
+ private _markdownMode;
12576
+ private _popupModel;
12577
+ private get focusFirstInputSelector();
12578
+ protected readonly selectedItemSelector = ".sv-list__item--selected";
12579
+ protected readonly itemSelector = ".sv-list__item";
12580
+ protected getFocusFirstInputSelector(): string;
12581
+ private itemsSettings;
12582
+ private isRunningLoadQuestionChoices;
12583
+ protected listModel: ListModel<ItemValue>;
12584
+ protected popupCssClasses: string;
12585
+ protected listModelFilterStringChanged: (newValue: string) => void;
12586
+ private resetItemsSettings;
12587
+ private setItems;
12588
+ private updateQuestionChoices;
12589
+ private updatePopupFocusFirstInputSelector;
12590
+ protected createPopup(): void;
12591
+ private setFilterStringToListModel;
12592
+ protected popupRecalculatePosition(isResetHeight: boolean): void;
12593
+ protected onHidePopup(): void;
12594
+ protected getAvailableItems(): Array<ItemValue>;
12595
+ protected createListModel(): ListModel<ItemValue>;
12596
+ protected updateAfterListModelCreated(model: ListModel<ItemValue>): void;
12597
+ updateCssClasses(popupCssClass: string, listCssClasses: any): void;
12598
+ protected resetFilterString(): void;
12599
+ clear(): void;
12600
+ protected onSetFilterString(): void;
12601
+ searchEnabled: boolean;
12602
+ filterString: string;
12603
+ inputString: string;
12604
+ showSelectedItemLocText: boolean;
12605
+ showInputFieldComponent: boolean;
12606
+ ariaActivedescendant: string;
12607
+ private applyInputString;
12608
+ protected fixInputCase(): void;
12609
+ protected applyHintString(item: ItemValue): void;
12610
+ get inputStringRendered(): string;
12611
+ set inputStringRendered(val: string);
12612
+ get placeholderRendered(): any;
12613
+ get listElementId(): string;
12614
+ hasScroll: boolean;
12615
+ hintString: string;
12616
+ private get hintStringLC();
12617
+ private get inputStringLC();
12618
+ get showHintPrefix(): boolean;
12619
+ get hintStringPrefix(): string;
12620
+ get showHintString(): boolean;
12621
+ get hintStringSuffix(): string;
12622
+ get hintStringMiddle(): string;
12623
+ constructor(question: Question, onSelectionChanged?: (item: IAction, ...params: any[]) => void);
12624
+ get popupModel(): PopupModel;
12625
+ get inputReadOnly(): boolean;
12626
+ get filterStringEnabled(): boolean;
12627
+ get inputMode(): "none" | "text";
12628
+ setSearchEnabled(newValue: boolean): void;
12629
+ updateItems(): void;
12630
+ onClick(event: any): void;
12631
+ protected focusItemOnClickAndPopup(): void;
12632
+ onClear(event: any): void;
12633
+ getSelectedAction(): ItemValue;
12634
+ changeSelectionWithKeyboard(reverse: boolean): void;
12635
+ protected beforeScrollToFocusedItem(focusedItem: ItemValue): void;
12636
+ protected afterScrollToFocusedItem(): void;
12637
+ keyHandler(event: any): void;
12638
+ protected onEscape(): void;
12639
+ onScroll(event: Event): void;
12640
+ onBlur(event: any): void;
12641
+ onFocus(event: any): void;
12642
+ setInputStringFromSelectedItem(newValue: any): void;
12643
+ dispose(): void;
12644
+ scrollToFocusedItem(): void;
12645
+ }
12646
+ }
12647
+ declare module "question_dropdown" {
12648
+ import { QuestionSelectBase } from "question_baseselect";
12649
+ import { LocalizableString } from "localizablestring";
12650
+ import { ItemValue } from "itemvalue";
12651
+ import { PopupModel } from "popup";
12652
+ import { EventBase } from "base";
12653
+ import { DropdownListModel } from "dropdownListModel";
12654
+ /**
12655
+ * A class that describes the Dropdown question type.
12656
+ *
12657
+ * [View Demo](https://surveyjs.io/form-library/examples/questiontype-dropdown/ (linkStyle))
12658
+ */
12659
+ export class QuestionDropdownModel extends QuestionSelectBase {
12660
+ dropdownListModelValue: DropdownListModel;
12661
+ lastSelectedItemValue: ItemValue;
12662
+ updateReadOnlyText(): void;
12663
+ constructor(name: string);
12664
+ locStrsChanged(): void;
12665
+ get showOptionsCaption(): boolean;
12666
+ set showOptionsCaption(val: boolean);
12667
+ get optionsCaption(): string;
12668
+ set optionsCaption(val: string);
12669
+ /**
12670
+ * A placeholder for the input field.
12671
+ */
12672
+ get placeholder(): string;
12673
+ set placeholder(val: string);
12674
+ get locPlaceholder(): LocalizableString;
12675
+ get clearCaption(): string;
12676
+ set clearCaption(value: string);
12677
+ get locClearCaption(): LocalizableString;
12678
+ getType(): string;
12679
+ get ariaRole(): string;
12680
+ get selectedItem(): ItemValue;
12681
+ protected onGetSingleSelectedItem(selectedItemByValue: ItemValue): void;
12682
+ supportGoNextPageAutomatic(): boolean;
12683
+ private minMaxChoices;
12684
+ protected getChoices(): Array<ItemValue>;
12685
+ /**
12686
+ * Use the `choicesMin`, `choicesMax`, and `choicesStep` properties to generate choice items automatically. For example, the configuration below generates three choice items: [10, 20, 30].
12687
+ *
12688
+ * ```js
12689
+ * "choicesMin": 10,
12690
+ * "choicesMax": 30
12691
+ * "choicesStep": 10
12692
+ * ```
12693
+ * @see choicesMax
12694
+ * @see choicesStep
12695
+ */
12696
+ get choicesMin(): number;
12697
+ set choicesMin(val: number);
12698
+ /**
12699
+ * Use the `choicesMin`, `choicesMax`, and `choicesStep` properties to generate choice items automatically. For example, the configuration below generates three choice items: [10, 20, 30].
12700
+ *
12701
+ * ```js
12702
+ * "choicesMin": 10,
12703
+ * "choicesMax": 30
12704
+ * "choicesStep": 10
12705
+ * ```
12706
+ * @see choicesMin
12707
+ * @see choicesStep
12708
+ */
12709
+ get choicesMax(): number;
12710
+ set choicesMax(val: number);
12711
+ /**
12712
+ * Use the `choicesMin`, `choicesMax`, and `choicesStep` properties to generate choice items automatically. For example, the configuration below generates three choice items: [10, 20, 30].
12713
+ *
12714
+ * ```js
12715
+ * "choicesMin": 10,
12716
+ * "choicesMax": 30
12717
+ * "choicesStep": 10
12718
+ * ```
12719
+ *
12720
+ * The default value of the `choicesStep` property is 1.
12721
+ * @see choicesMin
12722
+ * @see choicesMax
12723
+ */
12724
+ get choicesStep(): number;
12725
+ set choicesStep(val: number);
12726
+ get autocomplete(): string;
12727
+ set autocomplete(val: string);
12728
+ /**
12729
+ * Specifies whether to display a button that clears the selected value.
12917
12730
  */
12918
- get totalText(): string;
12919
- set totalText(val: string);
12920
- get locTotalText(): LocalizableString;
12921
- getFooterText(): LocalizableString;
12922
- getRowTitleWidth(): string;
12731
+ allowClear: boolean;
12923
12732
  /**
12924
- * Specifies whether to hide the question when the matrix has no visible rows.
12925
- * @see rowsVisibleIf
12733
+ * Specifies whether users can enter a value into the input field to filter the drop-down list.
12926
12734
  */
12927
- get hideIfRowsEmpty(): boolean;
12928
- set hideIfRowsEmpty(val: boolean);
12929
- protected getDisplayValueCore(keysAsText: boolean, value: any): any;
12930
- protected getConditionObjectRowName(index: number): string;
12931
- protected getConditionObjectRowText(index: number): string;
12932
- protected getConditionObjectsRowIndeces(): Array<number>;
12933
- protected setNewValue(newValue: any): void;
12934
- clearIncorrectValues(): void;
12935
- protected clearValueIfInvisibleCore(): void;
12936
- protected generateRows(): Array<MatrixDropdownRowModel>;
12937
- protected createMatrixRow(item: ItemValue, value: any): MatrixDropdownRowModel;
12938
- protected getSearchableItemValueKeys(keys: Array<string>): void;
12939
- protected updateProgressInfoByValues(res: IProgressInfo): void;
12735
+ searchEnabled: boolean;
12736
+ inputHasValue: boolean;
12737
+ readOnlyText: string;
12738
+ /**
12739
+ * Enables lazy loading. If you set this property to `true`, you should implement the Survey's [`onChoicesLazyLoad`](https://surveyjs.io/form-library/documentation/surveymodel#onChoicesLazyLoad) event handler.
12740
+ * @see choicesLazyLoadPageSize
12741
+ * @see SurveyModel.onChoicesLazyLoad
12742
+ */
12743
+ choicesLazyLoadEnabled: boolean;
12744
+ /**
12745
+ * Specifies the number of choice items to load at a time when choices are loaded on demand.
12746
+ * @see choicesLazyLoadEnabled
12747
+ * @see SurveyModel.onChoicesLazyLoad
12748
+ */
12749
+ choicesLazyLoadPageSize: number;
12750
+ getControlClass(): string;
12751
+ suggestedItem: ItemValue;
12752
+ get selectedItemLocText(): LocalizableString;
12753
+ get inputFieldComponentName(): string;
12754
+ get showSelectedItemLocText(): boolean;
12755
+ get showInputFieldComponent(): boolean;
12756
+ private get selectedItemText();
12757
+ get dropdownListModel(): DropdownListModel;
12758
+ set dropdownListModel(val: DropdownListModel);
12759
+ get popupModel(): PopupModel;
12760
+ get ariaExpanded(): string;
12761
+ onOpened: EventBase<QuestionDropdownModel>;
12762
+ onOpenedCallBack(): void;
12763
+ protected onSelectedItemValuesChangedHandler(newValue: any): void;
12764
+ protected hasUnknownValue(val: any, includeOther: boolean, isFilteredChoices: boolean, checkEmptyValue: boolean): boolean;
12765
+ protected needConvertRenderedOtherToDataValue(): boolean;
12766
+ protected onVisibleChoicesChanged(): void;
12767
+ protected getFirstInputElementId(): string;
12768
+ getInputId(): string;
12769
+ clearValue(): void;
12770
+ onClick(e: any): void;
12771
+ onKeyUp(event: any): void;
12772
+ dispose(): void;
12940
12773
  }
12941
12774
  }
12942
12775
  declare module "question_matrix" {
@@ -13398,7 +13231,7 @@ declare module "question_tagbox" {
13398
13231
  getType(): string;
13399
13232
  get ariaRole(): string;
13400
13233
  get popupModel(): PopupModel;
13401
- get ariaExpanded(): boolean;
13234
+ get ariaExpanded(): string;
13402
13235
  getControlClass(): string;
13403
13236
  onOpened: EventBase<QuestionTagboxModel>;
13404
13237
  onOpenedCallBack(): void;
@@ -13419,7 +13252,8 @@ declare module "question_imagepicker" {
13419
13252
  import { ILocalizableOwner, LocalizableString } from "localizablestring";
13420
13253
  export class ImageItemValue extends ItemValue implements ILocalizableOwner {
13421
13254
  protected typeName: string;
13422
- contentNotLoaded: boolean;
13255
+ private videoNotLoaded;
13256
+ private imageNotLoaded;
13423
13257
  constructor(value: any, text?: string, typeName?: string);
13424
13258
  getType(): string;
13425
13259
  /**
@@ -13435,6 +13269,8 @@ declare module "question_imagepicker" {
13435
13269
  getRendererContext(locStr: LocalizableString): any;
13436
13270
  getProcessedText(text: string): string;
13437
13271
  onErrorHandler(): void;
13272
+ set contentNotLoaded(val: boolean);
13273
+ get contentNotLoaded(): boolean;
13438
13274
  }
13439
13275
  /**
13440
13276
  * A class that describes the Image Picker question type.
@@ -13555,12 +13391,12 @@ declare module "dragdrop/choices" {
13555
13391
  protected getDropTargetByDataAttributeValue(dataAttributeValue: string): ItemValue;
13556
13392
  private getVisibleChoices;
13557
13393
  protected doDragOver: () => any;
13558
- protected isDropTargetValid(dropTarget: ItemValue): boolean;
13394
+ protected isDropTargetValid(dropTarget: ItemValue, dropTargetNode?: HTMLElement): boolean;
13559
13395
  protected doBanDropHere: () => any;
13560
13396
  protected calculateIsBottom(clientY: number): boolean;
13561
13397
  protected afterDragOver(dropTargetNode: HTMLElement): void;
13562
13398
  protected doDrop(): any;
13563
- protected doClear(): void;
13399
+ clear(): void;
13564
13400
  private updateVisibleChoices;
13565
13401
  }
13566
13402
  }
@@ -13583,7 +13419,7 @@ declare module "dragdrop/ranking-choices" {
13583
13419
  protected ghostPositionChanged(): void;
13584
13420
  protected doBanDropHere: () => any;
13585
13421
  protected doDrop: () => any;
13586
- protected doClear: () => void;
13422
+ clear(): void;
13587
13423
  }
13588
13424
  }
13589
13425
  declare module "question_ranking" {
@@ -13661,103 +13497,363 @@ declare module "question_comment" {
13661
13497
  /**
13662
13498
  * Specifies the visible height of the comment area, measured in lines.
13663
13499
  *
13664
- * The value of this property is passed on to the `rows` attribute of the underlying `<textarea>` element.
13665
- * @see cols
13500
+ * The value of this property is passed on to the `rows` attribute of the underlying `<textarea>` element.
13501
+ */
13502
+ get rows(): number;
13503
+ set rows(val: number);
13504
+ get cols(): number;
13505
+ set cols(val: number);
13506
+ /**
13507
+ * Specifies whether the question allows line breaks.
13508
+ *
13509
+ * When this property is enabled, a user can press Enter to insert line breaks. They are saved as `\n` in survey results. The Comment question also recognizes and interprets the `\n` sequence as a line break when you set the question `value` in code.
13510
+ */
13511
+ get acceptCarriageReturn(): boolean;
13512
+ set acceptCarriageReturn(val: boolean);
13513
+ /**
13514
+ * Specifies whether the comment area automatically increases its height to accomodate multi-line content.
13515
+ *
13516
+ * Default value: `false` (inherited from `SurveyModel`'s [`autoGrowComment`](https://surveyjs.io/form-library/documentation/surveymodel#autoGrowComment) property)
13517
+ * @see allowResize
13518
+ */
13519
+ get autoGrow(): boolean;
13520
+ set autoGrow(val: boolean);
13521
+ /**
13522
+ * Specifies whether to display a resize handle for the comment area.
13523
+ *
13524
+ * Default value: `true` (inherited from `SurveyModel`'s [`allowResizeComment`](https://surveyjs.io/form-library/documentation/surveymodel#allowResizeComment) property)
13525
+ * @see autoGrow
13526
+ */
13527
+ get allowResize(): boolean;
13528
+ set allowResize(val: boolean);
13529
+ get resizeStyle(): "none" | "both";
13530
+ getType(): string;
13531
+ afterRenderQuestionElement(el: HTMLElement): void;
13532
+ updateElement(): void;
13533
+ beforeDestroyQuestionElement(el: HTMLElement): void;
13534
+ onInput(event: any): void;
13535
+ onKeyDown(event: any): void;
13536
+ onValueChanged(): void;
13537
+ protected setNewValue(newValue: string): any;
13538
+ get className(): string;
13539
+ }
13540
+ }
13541
+ declare module "question_html" {
13542
+ import { QuestionNonValue } from "questionnonvalue";
13543
+ import { LocalizableString } from "localizablestring";
13544
+ /**
13545
+ * A class that describes the Html question type. Unlike other question types, Html cannot have a title or value.
13546
+ *
13547
+ * [View Demo](https://surveyjs.io/form-library/examples/questiontype-html/ (linkStyle))
13548
+ */
13549
+ export class QuestionHtmlModel extends QuestionNonValue {
13550
+ ignoreHtmlProgressing: boolean;
13551
+ constructor(name: string);
13552
+ getType(): string;
13553
+ get isCompositeQuestion(): boolean;
13554
+ getProcessedText(text: string): string;
13555
+ /**
13556
+ * HTML markup to display.
13557
+ *
13558
+ * > IMPORTANT: If you get the markup from a third party, ensure that it does not contain malicious code.
13559
+ */
13560
+ get html(): string;
13561
+ set html(val: string);
13562
+ get locHtml(): LocalizableString;
13563
+ get processedHtml(): string;
13564
+ private processHtml;
13565
+ }
13566
+ }
13567
+ declare module "question_radiogroup" {
13568
+ import { QuestionCheckboxBase } from "question_baseselect";
13569
+ import { ItemValue } from "itemvalue";
13570
+ import { Action } from "actions/action";
13571
+ /**
13572
+ * A class that describes the Radiogroup question type.
13573
+ *
13574
+ * [View Demo](https://surveyjs.io/form-library/examples/questiontype-radiogroup/ (linkStyle))
13575
+ */
13576
+ export class QuestionRadiogroupModel extends QuestionCheckboxBase {
13577
+ constructor(name: string);
13578
+ protected getDefaultItemComponent(): string;
13579
+ getType(): string;
13580
+ get ariaRole(): string;
13581
+ get titleAriaLabel(): string | null;
13582
+ protected getFirstInputElementId(): string;
13583
+ /**
13584
+ * Returns the selected choice item. If no item is selected, returns `null`.
13585
+ */
13586
+ get selectedItem(): ItemValue;
13587
+ /**
13588
+ * Specifies whether to display a button that clears the question value.
13589
+ *
13590
+ * Default value: `false`
13591
+ */
13592
+ get showClearButton(): boolean;
13593
+ set showClearButton(val: boolean);
13594
+ get canShowClearButton(): boolean;
13595
+ get clearButtonCaption(): string;
13596
+ supportGoNextPageAutomatic(): boolean;
13597
+ get showClearButtonInContent(): boolean;
13598
+ clickItemHandler(item: ItemValue): void;
13599
+ protected getDefaultTitleActions(): Array<Action>;
13600
+ }
13601
+ }
13602
+ declare module "question_rating" {
13603
+ import { ItemValue } from "itemvalue";
13604
+ import { Question } from "question";
13605
+ import { LocalizableString } from "localizablestring";
13606
+ import { Base } from "base";
13607
+ import { DropdownListModel } from "dropdownListModel";
13608
+ export class RenderedRatingItem extends Base {
13609
+ itemValue: ItemValue;
13610
+ private locString;
13611
+ private onStringChangedCallback;
13612
+ get value(): number;
13613
+ highlight: "none" | "highlighted" | "unhighlighted";
13614
+ get locText(): LocalizableString;
13615
+ text: string;
13616
+ style: any;
13617
+ constructor(itemValue: ItemValue, locString?: LocalizableString);
13618
+ }
13619
+ /**
13620
+ * A class that describes the Rating Scale question type.
13621
+ *
13622
+ * [View Demo](https://surveyjs.io/form-library/examples/rating-scale/ (linkStyle))
13623
+ */
13624
+ export class QuestionRatingModel extends Question {
13625
+ constructor(name: string);
13626
+ private jsonObj;
13627
+ private setIconsToRateValues;
13628
+ startLoadingFromJson(jsonObj: any): void;
13629
+ endLoadingFromJson(): void;
13630
+ private _syncPropertiesChanging;
13631
+ private registerSychProperties;
13632
+ private useRateValues;
13633
+ private updateRateMax;
13634
+ private updateRateMin;
13635
+ private updateRateCount;
13636
+ initPropertyDependencies(): void;
13637
+ autoGenerate: boolean;
13638
+ /**
13639
+ * A list of rate values.
13640
+ *
13641
+ * This property accepts an array of objects with the following structure:
13642
+ *
13643
+ * ```js
13644
+ * {
13645
+ * "value": any, // A value to be saved in survey results
13646
+ * "text": String, // A display text. This property supports Markdown. When `text` is undefined, `value` is used.
13647
+ * "customProperty": any // Any property that you find useful.
13648
+ * }
13649
+ * ```
13650
+ *
13651
+ * If you add custom properties, refer to the following help topic to learn how to serialize them into JSON: [Add Custom Properties to Property Grid](https://surveyjs.io/survey-creator/documentation/property-grid#add-custom-properties-to-the-property-grid).
13652
+ *
13653
+ * To enable Markdown support for the `text` property, implement Markdown-to-HTML conversion in the [onTextMarkdown](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#onTextMarkdown) event handler. For an example, refer to the following demo: [Convert Markdown to HTML with Showdown](https://surveyjs.io/form-library/examples/edit-survey-questions-markdown/).
13654
+ *
13655
+ * If you need to specify only the `value` property, you can set the `rateValues` property to an array of numbers, for example, `[ 3, 6, 10 ]`. These values are both saved in survey results and used as display text.
13656
+ *
13657
+ * If you do not specify the `rateValues` property, rate values are generated automatically based upon the [`rateMin`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#rateMin), [`rateMax`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#rateMax), [`rateStep`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#rateStep), and [`rateCount`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#rateCount) property values.
13658
+ *
13659
+ * [View Demo](/form-library/examples/rating-scale/ (linkStyle))
13660
+ */
13661
+ get rateValues(): Array<any>;
13662
+ set rateValues(val: Array<any>);
13663
+ /**
13664
+ * Specifies the first rate value in the generated sequence of rate values. Applies if the [`rateValues`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#rateValues) array is empty.
13665
+ *
13666
+ * Default value: 1
13667
+ *
13668
+ * [View Demo](/form-library/examples/rating-scale/ (linkStyle))
13669
+ * @see rateMax
13670
+ * @see rateStep
13671
+ * @see rateCount
13672
+ */
13673
+ get rateMin(): number;
13674
+ set rateMin(val: number);
13675
+ /**
13676
+ * Specifies the last rate value in the generated sequence of rate values. Applies if the [`rateValues`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#rateValues) array is empty.
13677
+ *
13678
+ * Default value: 5
13679
+ *
13680
+ * [View Demo](/form-library/examples/rating-scale/ (linkStyle))
13681
+ * @see rateMin
13682
+ * @see rateStep
13683
+ * @see rateCount
13684
+ */
13685
+ get rateMax(): number;
13686
+ set rateMax(val: number);
13687
+ /**
13688
+ * Specifies a step with which to generate rate values. Applies if the [`rateValues`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#rateValues) array is empty.
13689
+ *
13690
+ * Default value: 1
13691
+ *
13692
+ * [View Demo](/form-library/examples/rating-scale/ (linkStyle))
13693
+ * @see rateMin
13694
+ * @see rateMax
13695
+ * @see rateCount
13666
13696
  */
13667
- get rows(): number;
13668
- set rows(val: number);
13697
+ get rateStep(): number;
13698
+ set rateStep(val: number);
13669
13699
  /**
13670
- * Specifies the visible width of the comment area, measured in average character width.
13700
+ * Specifies the number of rate values you want to generate. Applies if the [`rateValues`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#rateValues) array is empty.
13671
13701
  *
13672
- * The value of this property is passed on to the `cols` attribute of the underlying `<textarea>` element.
13673
- * @see rows
13702
+ * Set the [`rateMin`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#rateMin) or [`rateMax`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#rateMax) property to specify the first or the last rate value. Use the [`rateStep`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#rateStep) property to specify a step with which to generate rate values.
13703
+ *
13704
+ * [View Demo](/form-library/examples/rating-scale/ (linkStyle))
13674
13705
  */
13675
- get cols(): number;
13676
- set cols(val: number);
13706
+ rateCount: number;
13707
+ private static badColor;
13708
+ private static normalColor;
13709
+ private static goodColor;
13710
+ private static badColorLight;
13711
+ private static normalColorLight;
13712
+ private static goodColorLight;
13713
+ private initColors;
13714
+ protected getDisplayValueCore(keysAsText: boolean, value: any): any;
13715
+ get visibleRateValues(): ItemValue[];
13716
+ itemValuePropertyChanged(item: ItemValue, name: string, oldValue: any, newValue: any): void;
13717
+ private createRenderedRateItems;
13718
+ renderedRateItems: Array<RenderedRatingItem>;
13719
+ private correctValue;
13720
+ getType(): string;
13721
+ protected getFirstInputElementId(): string;
13722
+ getInputId(index: number): string;
13723
+ supportGoNextPageAutomatic(): boolean;
13724
+ supportOther(): boolean;
13677
13725
  /**
13678
- * Specifies whether the question allows line breaks.
13679
- *
13680
- * When this property is enabled, a user can press Enter to insert line breaks. They are saved as `\n` in survey results. The Comment question also recognizes and interprets the `\n` sequence as a line break when you set the question `value` in code.
13726
+ * Specifies a description for the minimum (first) rate value.
13727
+ * @see rateValues
13728
+ * @see rateMin
13729
+ * @see displayRateDescriptionsAsExtremeItems
13681
13730
  */
13682
- get acceptCarriageReturn(): boolean;
13683
- set acceptCarriageReturn(val: boolean);
13731
+ get minRateDescription(): string;
13732
+ set minRateDescription(val: string);
13733
+ get locMinRateDescription(): LocalizableString;
13684
13734
  /**
13685
- * Specifies whether the comment area automatically increases its height to accomodate multi-line content.
13686
- *
13687
- * Default value: `false` (inherited from `SurveyModel`'s [`autoGrowComment`](https://surveyjs.io/form-library/documentation/surveymodel#autoGrowComment) property)
13735
+ * Specifies a description for the maximum (last) rate value.
13736
+ * @see rateValues
13737
+ * @see rateMax
13738
+ * @see displayRateDescriptionsAsExtremeItems
13688
13739
  */
13689
- get autoGrow(): boolean;
13690
- set autoGrow(val: boolean);
13691
- getType(): string;
13692
- afterRenderQuestionElement(el: HTMLElement): void;
13693
- updateElement(): void;
13694
- beforeDestroyQuestionElement(el: HTMLElement): void;
13695
- onInput(event: any): void;
13696
- onKeyDown(event: any): void;
13697
- onValueChanged(): void;
13698
- protected setNewValue(newValue: string): any;
13699
- get className(): string;
13700
- }
13701
- }
13702
- declare module "question_html" {
13703
- import { QuestionNonValue } from "questionnonvalue";
13704
- import { LocalizableString } from "localizablestring";
13705
- /**
13706
- * A class that describes the Html question type. Unlike other question types, Html cannot have a title or value.
13707
- *
13708
- * [View Demo](https://surveyjs.io/form-library/examples/questiontype-html/ (linkStyle))
13709
- */
13710
- export class QuestionHtmlModel extends QuestionNonValue {
13711
- ignoreHtmlProgressing: boolean;
13712
- constructor(name: string);
13713
- getType(): string;
13714
- get isCompositeQuestion(): boolean;
13715
- getProcessedText(text: string): string;
13740
+ get maxRateDescription(): string;
13741
+ set maxRateDescription(val: string);
13742
+ get locMaxRateDescription(): LocalizableString;
13743
+ hasMinRateDescription: boolean;
13744
+ hasMaxRateDescription: boolean;
13745
+ get hasMinLabel(): boolean;
13746
+ get hasMaxLabel(): boolean;
13716
13747
  /**
13717
- * HTML markup to display.
13748
+ * Specifies whether to display `minRateDescription` and `maxRateDescription` values as captions for buttons that correspond to the extreme (first and last) rate values.
13749
+ *
13750
+ * Default value: `false`
13751
+ *
13752
+ * If this property is disabled, the `minRateDescription` and `maxRateDescription` values are displayed as plain non-clickable texts.
13753
+ *
13754
+ * If any of the `minRateDescription` and `maxRateDescription` properties is empty, the corresponding rate value's `value` or `text` is displayed as a button caption.
13755
+ * @see minRateDescription
13756
+ * @see maxRateDescription
13757
+ * @see rateMin
13758
+ * @see rateMax
13759
+ * @see rateValues
13760
+ */
13761
+ displayRateDescriptionsAsExtremeItems: boolean;
13762
+ /**
13763
+ * Specifies whether to display rate values as buttons or items in a drop-down list.
13764
+ *
13765
+ * Possible values:
13766
+ *
13767
+ * - `"buttons"` - Displays rate values as buttons in a row.
13768
+ * - `"dropdown"` - Displays rate values as items in a drop-down list.
13769
+ * - `"auto"` (default) - Selects between the `"buttons"` and `"dropdown"` modes based on the available width. When the width is insufficient to display buttons, the question displays a dropdown.
13770
+ *
13771
+ * [View Demo](/form-library/examples/ui-adaptation-modes-for-rating-scale/ (linkStyle))
13772
+ * @see rateType
13773
+ */
13774
+ displayMode: "dropdown" | "buttons" | "auto";
13775
+ /**
13776
+ * Specifies the visual representation of rate values.
13718
13777
  *
13719
- * > IMPORTANT: If you get the markup from a third party, ensure that it does not contain malicious code.
13778
+ * Possible values:
13779
+ *
13780
+ * - `"labels"` (default) - Displays rate values as buttons with labels.
13781
+ * - `"stars"` - Displays rate values as stars.
13782
+ * - `"smileys"` - Displays rate values as smiley faces.
13783
+ *
13784
+ * [View Demo](/form-library/examples/rating-scale/ (linkStyle))
13785
+ * @see scaleColorMode
13786
+ * @see rateColorMode
13787
+ * @see displayMode
13720
13788
  */
13721
- get html(): string;
13722
- set html(val: string);
13723
- get locHtml(): LocalizableString;
13724
- get processedHtml(): string;
13725
- private processHtml;
13726
- }
13727
- }
13728
- declare module "question_radiogroup" {
13729
- import { QuestionCheckboxBase } from "question_baseselect";
13730
- import { ItemValue } from "itemvalue";
13731
- import { Action } from "actions/action";
13732
- /**
13733
- * A class that describes the Radiogroup question type.
13734
- *
13735
- * [View Demo](https://surveyjs.io/form-library/examples/questiontype-radiogroup/ (linkStyle))
13736
- */
13737
- export class QuestionRadiogroupModel extends QuestionCheckboxBase {
13738
- constructor(name: string);
13739
- protected getDefaultItemComponent(): string;
13740
- getType(): string;
13741
- get ariaRole(): string;
13742
- get titleAriaLabel(): string | null;
13743
- protected getFirstInputElementId(): string;
13789
+ rateType: "labels" | "stars" | "smileys";
13790
+ get rateDisplayMode(): "labels" | "stars" | "smileys";
13791
+ set rateDisplayMode(val: "labels" | "stars" | "smileys");
13744
13792
  /**
13745
- * Returns the selected choice item. If no item is selected, returns `null`.
13793
+ * Specifies how to colorize the smiley face rating scale. Applies only if [`rateType`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#rateType) is `"smileys"`.
13794
+ *
13795
+ * Possible values:
13796
+ *
13797
+ * - `"monochrome"` (default) - Displays emojis in monochrome.
13798
+ * - `"colored"` - Displays emojis in color.
13799
+ *
13800
+ * [View Demo](/form-library/examples/rating-scale/ (linkStyle))
13801
+ * @see rateColorMode
13746
13802
  */
13747
- get selectedItem(): ItemValue;
13803
+ scaleColorMode: "monochrome" | "colored";
13748
13804
  /**
13749
- * Specifies whether to display a button that clears the question value.
13805
+ * Specifies how to colorize the selected emoji. Applies only if [`rateType`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#rateType) is `"smileys"`.
13750
13806
  *
13751
- * Default value: `false`
13807
+ * Possible values:
13808
+ *
13809
+ * - `"default"` - Displays the selected emoji in default survey color.
13810
+ * - `"scale"` (default) - Inherits the color from the scale.
13811
+ * @see scaleColorMode
13752
13812
  */
13753
- get showClearButton(): boolean;
13754
- set showClearButton(val: boolean);
13755
- get canShowClearButton(): boolean;
13756
- get clearButtonCaption(): string;
13757
- supportGoNextPageAutomatic(): boolean;
13758
- get showClearButtonInContent(): boolean;
13759
- clickItemHandler(item: ItemValue): void;
13760
- protected getDefaultTitleActions(): Array<Action>;
13813
+ rateColorMode: "default" | "scale";
13814
+ get isStar(): boolean;
13815
+ get isSmiley(): boolean;
13816
+ get itemComponentName(): "sv-rating-item-star" | "sv-rating-item-smiley" | "sv-rating-item";
13817
+ protected valueToData(val: any): any;
13818
+ setValueFromClick(value: any): void;
13819
+ onItemMouseIn(item: RenderedRatingItem): void;
13820
+ onItemMouseOut(item: RenderedRatingItem): void;
13821
+ get itemSmallMode(): boolean;
13822
+ get ratingRootCss(): string;
13823
+ get itemStarIcon(): string;
13824
+ get itemStarIconAlt(): string;
13825
+ getItemSmiley(item: ItemValue): string;
13826
+ getItemSmileyIconName(item: ItemValue): string;
13827
+ getItemClassByText(item: ItemValue, text: string): string;
13828
+ private getRenderedItemColor;
13829
+ getItemStyle(item: ItemValue, highlight?: "none" | "highlighted" | "unhighlighted"): {
13830
+ borderColor: string;
13831
+ fill: string;
13832
+ backgroundColor: string;
13833
+ };
13834
+ getItemClass(item: ItemValue, highlight?: "none" | "highlighted" | "unhighlighted"): string;
13835
+ getControlClass(): string;
13836
+ get placeholder(): string;
13837
+ set placeholder(val: string);
13838
+ get locPlaceholder(): LocalizableString;
13839
+ get allowClear(): boolean;
13840
+ get searchEnabled(): boolean;
13841
+ get renderedValue(): any;
13842
+ set renderedValue(val: any);
13843
+ isItemSelected(item: ItemValue): boolean;
13844
+ get visibleChoices(): ItemValue[];
13845
+ get readOnlyText(): any;
13846
+ needResponsiveWidth(): boolean;
13847
+ protected supportResponsiveness(): boolean;
13848
+ protected getCompactRenderAs(): string;
13849
+ protected getDesktopRenderAs(): string;
13850
+ get ariaExpanded(): string;
13851
+ private dropdownListModelValue;
13852
+ set dropdownListModel(val: DropdownListModel);
13853
+ get dropdownListModel(): DropdownListModel;
13854
+ protected updateCssClasses(res: any, css: any): void;
13855
+ protected calcCssClasses(css: any): any;
13856
+ dispose(): void;
13761
13857
  }
13762
13858
  }
13763
13859
  declare module "question_boolean" {
@@ -14443,9 +14539,11 @@ declare module "question_custom" {
14443
14539
  protected getQuestionByName(name: string): IQuestion;
14444
14540
  private settingNewValue;
14445
14541
  setValue(name: string, newValue: any, locNotification: any, allowNotifyValueChanged?: boolean): any;
14542
+ private setNewValueIntoQuestion;
14446
14543
  addConditionObjectsByContext(objects: Array<IConditionObject>, context: any): void;
14447
14544
  protected convertDataValue(name: string, newValue: any): any;
14448
14545
  protected setQuestionValue(newValue: any, updateIsAnswered?: boolean): void;
14546
+ private setValuesIntoQuestions;
14449
14547
  protected getDisplayValueCore(keyAsText: boolean, value: any): any;
14450
14548
  private setAfterRenderCallbacks;
14451
14549
  }
@@ -14610,59 +14708,6 @@ declare module "question_buttongroup" {
14610
14708
  onChange(): void;
14611
14709
  }
14612
14710
  }
14613
- declare module "dragdrop/survey-elements" {
14614
- import { IElement, IShortcutText } from "base-interfaces";
14615
- import { JsonObject } from "jsonobject";
14616
- import { PageModel } from "page";
14617
- import { DragDropCore } from "dragdrop/core";
14618
- export class DragDropSurveyElements extends DragDropCore<any> {
14619
- static newGhostPage: PageModel;
14620
- static restrictDragQuestionBetweenPages: boolean;
14621
- static edgeHeight: number;
14622
- static nestedPanelDepth: number;
14623
- static ghostSurveyElementName: string;
14624
- protected isEdge: boolean;
14625
- protected prevIsEdge: any;
14626
- protected ghostSurveyElement: IElement;
14627
- protected get draggedElementType(): string;
14628
- protected isDraggedElementSelected: boolean;
14629
- private isRight;
14630
- protected prevIsRight: boolean;
14631
- startDragToolboxItem(event: PointerEvent, draggedElementJson: JsonObject, toolboxItemTitle: string): void;
14632
- startDragSurveyElement(event: PointerEvent, draggedElement: any, isElementSelected?: boolean): void;
14633
- protected getShortcutText(draggedElement: IShortcutText): string;
14634
- protected createDraggedElementShortcut(text: string, draggedElementNode?: HTMLElement, event?: PointerEvent): HTMLElement;
14635
- protected createDraggedElementIcon(): HTMLElement;
14636
- protected getDraggedElementClass(): string;
14637
- protected createElementFromJson(json: object): HTMLElement;
14638
- private createNewElement;
14639
- protected findDropTargetNodeByDragOverNode(dragOverNode: HTMLElement): HTMLElement;
14640
- protected getDropTargetByDataAttributeValue(dataAttributeValue: string, dropTargetNode: HTMLElement, event: PointerEvent): any;
14641
- protected isDropTargetValid(): boolean;
14642
- protected calculateIsBottom(clientY: number, dropTargetNode?: HTMLElement): boolean;
14643
- protected calculateIsRight(clientX: number, dropTargetNode?: HTMLElement): boolean;
14644
- protected isDropTargetDoesntChanged(newIsBottom: boolean): boolean;
14645
- private shouldRestricDragQuestionBetweenPages;
14646
- private getPanelDropTarget;
14647
- protected findDeepestDropTargetChild(parent: HTMLElement): HTMLElement;
14648
- private calculateIsEdge;
14649
- protected doDragOver(dropTargetNode?: HTMLElement, event?: PointerEvent): void;
14650
- protected afterDragOver(dropTargetNode: HTMLElement, event: PointerEvent): void;
14651
- protected onStartDrag(): void;
14652
- protected doBanDropHere: () => void;
14653
- protected doDrop: () => any;
14654
- protected doClear: () => void;
14655
- protected insertGhostElementIntoSurvey(): boolean;
14656
- private calcTargetRowMultiple;
14657
- private getTargetParent;
14658
- private getTargetRow;
14659
- private isDragOverInsideEmptyPanel;
14660
- protected removeGhostElementFromSurvey(): void;
14661
- private insertRealElementIntoSurvey;
14662
- private createFakeTargetElement;
14663
- private createGhostSurveyElement;
14664
- }
14665
- }
14666
14711
  declare module "entries/chunks/model" {
14667
14712
  export var Version: string;
14668
14713
  export function checkLibraryVersion(ver: string, libraryName: string): void;
@@ -14671,7 +14716,7 @@ declare module "entries/chunks/model" {
14671
14716
  export { AnswerCountValidator, EmailValidator, NumericValidator, RegexValidator, SurveyValidator, TextValidator, ValidatorResult, ExpressionValidator, ValidatorRunner } from "validator";
14672
14717
  export { ItemValue } from "itemvalue";
14673
14718
  export { Base, Event, EventBase, ArrayChanges, ComputedUpdater } from "base";
14674
- export { ISurvey, ISurveyElement, IElement, IQuestion, IPage, IPanel, ISurveyData, ITitleOwner, ISurveyLayoutElement } from "base-interfaces";
14719
+ export { ISurvey, ISurveyElement, IElement, IQuestion, IPage, IPanel, ISurveyData, ITitleOwner, ISurveyLayoutElement, IShortcutText } from "base-interfaces";
14675
14720
  export { SurveyError } from "survey-error";
14676
14721
  export { SurveyElementCore, SurveyElement, DragTypeOverMeEnum } from "survey-element";
14677
14722
  export { CalculatedValue } from "calculatedValue";
@@ -14692,7 +14737,7 @@ declare module "entries/chunks/model" {
14692
14737
  export { MatrixDynamicRowModel, QuestionMatrixDynamicModel } from "question_matrixdynamic";
14693
14738
  export { MatrixRowModel, MatrixCells, QuestionMatrixModel, IMatrixData } from "question_matrix";
14694
14739
  export { QuestionMatrixBaseModel } from "martixBase";
14695
- export { MultipleTextItemModel, QuestionMultipleTextModel } from "question_multipletext";
14740
+ export { MultipleTextItemModel, QuestionMultipleTextModel, MultipleTextEditorModel } from "question_multipletext";
14696
14741
  export { PanelModel, PanelModelBase, QuestionRowModel } from "panel";
14697
14742
  export { FlowPanelModel } from "flowpanel";
14698
14743
  export { PageModel } from "page";
@@ -14750,7 +14795,7 @@ declare module "entries/chunks/model" {
14750
14795
  export { confirmAction, detectIEOrEdge, doKey2ClickUp, doKey2ClickDown, doKey2ClickBlur, loadFileFromBase64, increaseHeightByContent, createSvg, sanitizeEditableContent, IAttachKey2clickOptions } from "utils/utils";
14751
14796
  export * from "utils/cssClassBuilder";
14752
14797
  export { surveyCss, defaultV2Css, defaultV2ThemeName } from "defaultCss/defaultV2Css";
14753
- export { DragDropSurveyElements } from "dragdrop/survey-elements";
14798
+ export { DragDropCore } from "dragdrop/core";
14754
14799
  export { DragDropChoices } from "dragdrop/choices";
14755
14800
  }
14756
14801
  declare module "defaultCss/cssstandard" {
@@ -18065,6 +18110,7 @@ declare module "localization/greek" {
18065
18110
  noneItemText: string;
18066
18111
  selectAllItemText: string;
18067
18112
  progressText: string;
18113
+ indexText: string;
18068
18114
  panelDynamicProgressText: string;
18069
18115
  questionsProgressText: string;
18070
18116
  emptySurvey: string;
@@ -18072,11 +18118,14 @@ declare module "localization/greek" {
18072
18118
  completingSurveyBefore: string;
18073
18119
  loadingSurvey: string;
18074
18120
  placeholder: string;
18121
+ ratingOptionsCaption: string;
18075
18122
  value: string;
18076
18123
  requiredError: string;
18077
18124
  requiredErrorInPanel: string;
18078
18125
  requiredInAllRowsError: string;
18079
18126
  numericError: string;
18127
+ minError: string;
18128
+ maxError: string;
18080
18129
  textMinLength: string;
18081
18130
  textMaxLength: string;
18082
18131
  textMinMaxLength: string;
@@ -18096,16 +18145,19 @@ declare module "localization/greek" {
18096
18145
  loadingFile: string;
18097
18146
  chooseFile: string;
18098
18147
  noFileChosen: string;
18148
+ fileDragAreaPlaceholder: string;
18099
18149
  confirmDelete: string;
18100
18150
  keyDuplicationError: string;
18101
18151
  addColumn: string;
18102
18152
  addRow: string;
18103
18153
  removeRow: string;
18154
+ emptyRowsText: string;
18104
18155
  addPanel: string;
18105
18156
  removePanel: string;
18106
18157
  choices_Item: string;
18107
18158
  matrix_column: string;
18108
18159
  matrix_row: string;
18160
+ multipletext_itemname: string;
18109
18161
  savingData: string;
18110
18162
  savingDataError: string;
18111
18163
  savingDataSuccess: string;
@@ -18119,6 +18171,7 @@ declare module "localization/greek" {
18119
18171
  timerLimitPage: string;
18120
18172
  timerLimitSurvey: string;
18121
18173
  clearCaption: string;
18174
+ signaturePlaceHolder: string;
18122
18175
  chooseFileCaption: string;
18123
18176
  removeFileCaption: string;
18124
18177
  booleanCheckedLabel: string;
@@ -18126,6 +18179,13 @@ declare module "localization/greek" {
18126
18179
  confirmRemoveFile: string;
18127
18180
  confirmRemoveAllFiles: string;
18128
18181
  questionTitlePatternText: string;
18182
+ modalCancelButtonText: string;
18183
+ modalApplyButtonText: string;
18184
+ filterStringPlaceholder: string;
18185
+ emptyMessage: string;
18186
+ noEntriesText: string;
18187
+ more: string;
18188
+ tagboxDoneButtonCaption: string;
18129
18189
  };
18130
18190
  }
18131
18191
  declare module "localization/hebrew" {
@@ -21552,7 +21612,7 @@ declare module "react/reactquestion_multipletext" {
21552
21612
  export class SurveyMultipleTextItem extends ReactSurveyElement {
21553
21613
  private get question();
21554
21614
  private get item();
21555
- protected getStateElements(): (import("question_text").QuestionTextModel | MultipleTextItemModel)[];
21615
+ protected getStateElements(): (import("question_multipletext").MultipleTextEditorModel | MultipleTextItemModel)[];
21556
21616
  private get creator();
21557
21617
  protected renderElement(): JSX.Element;
21558
21618
  protected renderItemTooltipError(item: MultipleTextItemModel, cssClasses: any): JSX.Element | null;