survey-react 1.9.48 → 1.9.49

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/survey.react.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  /*
2
- * Type definition for Survey JavaScript library for React v1.9.48
2
+ * Type definition for Survey JavaScript library for React v1.9.49
3
3
  * Copyright (c) 2015-2022 Devsoft Baltic OÜ - https://surveyjs.io/
4
4
  * License: MIT (http://www.opensource.org/licenses/mit-license.php)
5
5
  */
@@ -101,7 +101,7 @@ export interface IListModel {
101
101
  onSelectionChanged: (item: Action, ...params: any) => void;
102
102
  allowSelection?: boolean;
103
103
  selectedItem?: IAction;
104
- onFilteredTextChangedCallback?: (text: string) => void;
104
+ onFilterStringChangedCallback?: (text: string) => void;
105
105
  }
106
106
  export interface IPosition {
107
107
  left?: string | number;
@@ -371,7 +371,7 @@ export interface ISurvey extends ITextProcessor, ISurveyErrorOwner {
371
371
  maxOthersLength: number;
372
372
  clearValueOnDisableItems: boolean;
373
373
  uploadFiles(question: IQuestion, name: string, files: any, uploadingCallback: (status: string, data: any) => any): any;
374
- downloadFile(name: string, content: string, callback: (status: string, data: any) => any): any;
374
+ downloadFile(question: IQuestion, name: string, content: string, callback: (status: string, data: any) => any): any;
375
375
  clearFiles(question: IQuestion, name: string, value: any, fileName: string, clearCallback: (status: string, data: any) => any): any;
376
376
  updateChoicesFromServer(question: IQuestion, choices: any, serverResult: any): Array<any>;
377
377
  loadedChoicesFromServer(question: IQuestion): void;
@@ -710,6 +710,10 @@ export interface ISurveyCreator {
710
710
  export interface ISurveyHeaderProps {
711
711
  survey: any;
712
712
  }
713
+ export interface ITagboxFilterProps {
714
+ model: any;
715
+ question: any;
716
+ }
713
717
  export interface IMatrixRowProps {
714
718
  model: any;
715
719
  parentMatrix: any;
@@ -738,7 +742,7 @@ export declare class ArrayChanges {
738
742
  deletedItems: any;
739
743
  }
740
744
  /*
741
- * The base class for SurveyJS objects.
745
+ * A base class for all SurveyJS objects.
742
746
  */
743
747
  export declare class Base {
744
748
  constructor();
@@ -750,11 +754,11 @@ export declare class Base {
750
754
  static createItemValue: (item: any, type?: string) => any;
751
755
  static itemValueLocStrChanged: (arr: any) => void;
752
756
  /*
753
- * Returns true if a value undefined, null, empty string or empty array.
757
+ * Returns `true` if a passed `value` is an empty string, array, or object or if it equals to `undefined` or `null`.
754
758
  */
755
759
  isValueEmpty(value: any, trimString?: boolean): boolean;
756
760
  protected trimValue(value: any): any;
757
- protected IsPropertyEmpty(value: any): boolean;
761
+ protected isPropertyEmpty(value: any): boolean;
758
762
  propertyHash: any;
759
763
  localizableStrings: any;
760
764
  arraysInfo: any;
@@ -766,21 +770,26 @@ export declare class Base {
766
770
  protected isLoadingFromJsonValue: boolean;
767
771
  loadingOwner: Base;
768
772
  /*
769
- * Event that raise on property change of the sender object
770
- * sender - the object that owns the property
771
- * options.name - the property name that has been changed
772
- * options.oldValue - old value. Please note, it equals to options.newValue if property is an array
773
- * options.newValue - new value.
773
+ * An event that is raised when a property of this SurveyJS object has changed.
774
+ *
775
+ * Parameters:
776
+ *
777
+ * - `sender` - A SurveyJS object whose property has changed.
778
+ * - `options.name` - The name of the changed property.
779
+ * - `options.oldValue` - An old value of the property. If the property is an array, `oldValue` contains the same array as `newValue` does.
780
+ * - `options.newValue` - A new value for the property.
774
781
  */
775
782
  onPropertyChanged: EventBase<Base>;
776
783
  /*
777
- * Event that raised on changing property of the ItemValue object.
778
- * sender - the object that owns the property
779
- * options.propertyName - the property name to which ItemValue array is belong. It can be "choices" for dropdown question
780
- * options.obj - the instance of ItemValue object which property has been changed
781
- * options.name - the property of ItemObject that has been changed
782
- * options.oldValue - old value
783
- * options.newValue - new value
784
+ * An event that is raised when an [ItemValue](https://surveyjs.io/form-library/documentation/itemvalue) property is changed.
785
+ *
786
+ * Parameters:
787
+ *
788
+ * - `sender` - A SurveyJS object whose property contains an array of `ItemValue` objects.
789
+ * - `options.obj` - An `ItemValue` object.
790
+ * - `options.propertyName` - The name of the property to which an array of `ItemValue` objects is assigned (for example, `"choices"` or `"rows"`).
791
+ * - `options.name` - The name of the changed property: `"text"` or `"value"`.
792
+ * - `options.newValue` - A new value for the property.
784
793
  */
785
794
  onItemValuePropertyChanged: Event<(sender: Base, options: any) => any, any>;
786
795
  getPropertyValueCoreHandler: (propertiesHash: any, name: string) => any;
@@ -793,52 +802,55 @@ export declare class Base {
793
802
  protected addEvent<T>(): EventBase<T>;
794
803
  protected onBaseCreating(): void;
795
804
  /*
796
- * Returns the class type as it is used in the JSON schema.
805
+ * Returns the object type as it is used in the JSON schema.
797
806
  */
798
807
  getType(): string;
799
808
  /*
800
- * Use this method to find out if the current instance is of the given `typeName` or inherited from it.
809
+ * Use this method to find out if the current object is of a given `typeName` or inherited from it.
801
810
  */
802
811
  isDescendantOf(typeName: string): boolean;
803
812
  getSurvey(isLive?: boolean): ISurvey;
804
813
  /*
805
- * Returns true if the question in design mode right now.
814
+ * Returns `true` if the survey is being designed in Survey Creator.
806
815
  */
807
816
  get isDesignMode(): boolean;
808
817
  /*
809
- * Returns true if the object is inluded into survey, otherwise returns false.
818
+ * Returns `true` if the object is included in a survey.
819
+ *
820
+ * This method may return `false`, for example, when you [create a survey model dynamically](https://surveyjs.io/form-library/documentation/design-survey-create-a-simple-survey#create-or-change-a-survey-model-dynamically).
810
821
  */
811
822
  get inSurvey(): boolean;
812
823
  get bindings(): Bindings;
813
824
  checkBindings(valueName: string, value: any): void;
814
825
  protected updateBindings(propertyName: string, value: any): void;
815
826
  protected updateBindingValue(valueName: string, value: any): void;
816
- /*
817
- * Returns the element template name without prefix. Typically it equals to getType().
818
- */
819
827
  getTemplate(): string;
820
828
  /*
821
- * Returns true if the object is loading from Json at the current moment.
829
+ * Returns `true` if the object configuration is being loaded from JSON.
822
830
  */
823
831
  get isLoadingFromJson(): boolean;
824
832
  protected getIsLoadingFromJson(): boolean;
825
833
  startLoadingFromJson(json?: any): void;
826
834
  endLoadingFromJson(): void;
827
835
  /*
828
- * Deserialized the current object into JSON
836
+ * Returns a JSON object that corresponds to the current SurveyJS object.
829
837
  */
830
838
  toJSON(): any;
831
839
  /*
832
- * Load object properties and elements. It doesn't reset properties that was changed before and they are not defined in the json parameter.
840
+ * Assigns a new configuration to the current SurveyJS object. This configuration is taken from a passed JSON object.
841
+ *
842
+ * The JSON object should contain only serializable properties of this SurveyJS object. Event handlers and properties that do not belong to the SurveyJS object are ignored.
833
843
  */
834
844
  fromJSON(json: any): void;
835
845
  onSurveyLoad(): void;
836
846
  /*
837
- * Make a clone of the existing object. Create a new object of the same type and load all properties into it.
847
+ * Creates a new object that has the same type and properties as the current SurveyJS object.
838
848
  */
839
849
  clone(): Base;
840
850
  /*
841
- * Returns the serializable property that belongs to this instance by property name. It returns null if the property is not exists.
851
+ * Returns a `JsonObjectProperty` object with metadata about a serializable property that belongs to the current SurveyJS object.
852
+ *
853
+ * If the property is not found, this method returns `null`.
842
854
  */
843
855
  getPropertyByName(propName: string): JsonObjectProperty;
844
856
  isPropertyVisible(propName: string): boolean;
@@ -847,7 +859,9 @@ export declare class Base {
847
859
  localeChanged(): void;
848
860
  locStrsChanged(): void;
849
861
  /*
850
- * Returns the property value by name
862
+ * Returns the value of a property with a specified name.
863
+ *
864
+ * If the property is not found or does not have a value, this method returns either `undefined`, `defaultValue` specified in the property configuration, or a value passed as the `defaultValue` parameter.
851
865
  */
852
866
  getPropertyValue(name: string, defaultValue?: any): any;
853
867
  protected getPropertyValueCore(propertiesHash: any, name: string): any;
@@ -861,7 +875,7 @@ export declare class Base {
861
875
  */
862
876
  checkAndSetPropertyValue(name: string, val: any): void;
863
877
  /*
864
- * set property value
878
+ * Assigns a new value to a specified property.
865
879
  */
866
880
  setPropertyValue(name: string, val: any): void;
867
881
  protected setArrayPropertyDirectly(name: string, val: any, sendNotification?: boolean): void;
@@ -1282,7 +1296,6 @@ export declare class PopupUtils {
1282
1296
  static updateVerticalPosition(targetRect: any, height: number, verticalPosition: any, showPointer: boolean, windowHeight: number): any;
1283
1297
  static calculatePopupDirection(verticalPosition: any, horizontalPosition: any): string;
1284
1298
  static calculatePointerTarget(targetRect: any, top: number, left: number, verticalPosition: any, horizontalPosition: any, marginLeft?: number, marginRight?: number): INumberPosition;
1285
- static updatePopupWidthBeforeShow(popupModel: any, target: JSX.Element): void;
1286
1299
  }
1287
1300
  export declare class ProcessValue {
1288
1301
  constructor();
@@ -1459,7 +1472,7 @@ export declare class SurveyElementBase<P, S> extends React.Component<P, S> {
1459
1472
  protected getStateElements(): Array<Base>;
1460
1473
  protected getStateElement(): Base;
1461
1474
  protected get isDisplayMode(): boolean;
1462
- protected renderLocString(locStr: any, style?: any): JSX.Element;
1475
+ protected renderLocString(locStr: any, style?: any, key?: string): JSX.Element;
1463
1476
  protected canUsePropInState(key: string): boolean;
1464
1477
  }
1465
1478
  export declare class SurveyElementHeader extends React.Component<any, any> {
@@ -1992,8 +2005,12 @@ export declare class DropdownListModel extends Base {
1992
2005
  focusFirstInputSelector: string;
1993
2006
  protected listModel: ListModel;
1994
2007
  protected popupCssClasses: string;
2008
+ protected onHidePopup(): void;
1995
2009
  protected getAvailableItems(): Array<Action>;
1996
2010
  protected createListModel(): ListModel;
2011
+ protected resetFilterString(): void;
2012
+ searchEnabled: boolean;
2013
+ filterString: string;
1997
2014
  get popupModel(): any;
1998
2015
  setSearchEnabled(newValue: boolean): void;
1999
2016
  updateItems(): void;
@@ -2001,6 +2018,7 @@ export declare class DropdownListModel extends Base {
2001
2018
  onClear(event: any): void;
2002
2019
  onKeyUp(event: any): void;
2003
2020
  onBlur(event: any): void;
2021
+ scrollToFocusedItem(): void;
2004
2022
  }
2005
2023
  export declare class EventBase<T> extends Event<any, any> {
2006
2024
  }
@@ -2154,6 +2172,7 @@ export declare class JsonObjectProperty implements IObject {
2154
2172
  baseValue: any;
2155
2173
  isRequiredValue: boolean;
2156
2174
  isUniqueValue: boolean;
2175
+ uniquePropertyValue: string;
2157
2176
  readOnlyValue: boolean;
2158
2177
  visibleValue: boolean;
2159
2178
  isLocalizableValue: boolean;
@@ -2196,6 +2215,8 @@ export declare class JsonObjectProperty implements IObject {
2196
2215
  set isRequired(val: boolean);
2197
2216
  get isUnique(): boolean;
2198
2217
  set isUnique(val: boolean);
2218
+ get uniquePropertyName(): string;
2219
+ set uniquePropertyName(val: string);
2199
2220
  get hasToUseGetValue(): any;
2200
2221
  get defaultValue(): any;
2201
2222
  set defaultValue(val: any);
@@ -2250,6 +2271,7 @@ export declare class List extends SurveyElementBase<IListProps, any> {
2250
2271
  constructor(props: any);
2251
2272
  get model(): any;
2252
2273
  handleKeydown: (event: any) => void;
2274
+ handleMouseMove: (event: any) => void;
2253
2275
  getStateElement(): any;
2254
2276
  renderElement(): JSX.Element;
2255
2277
  renderItems(): any;
@@ -2703,6 +2725,7 @@ export declare class PopupBaseViewModel extends Base {
2703
2725
  get contentComponentData(): any;
2704
2726
  get showPointer(): boolean;
2705
2727
  get isModal(): boolean;
2728
+ get isFocusedContent(): boolean;
2706
2729
  get showFooter(): boolean;
2707
2730
  get isOverlay(): boolean;
2708
2731
  get styleClass(): string;
@@ -2737,7 +2760,7 @@ export declare class PopupContainer extends SurveyElementBase<any, any> {
2737
2760
  }
2738
2761
  export declare class PopupModel<T = any> extends Base {
2739
2762
  constructor(contentComponentName: string, contentComponentData: T, verticalPosition?: any, horizontalPosition?: any, showPointer?: boolean, isModal?: boolean, onCancel?: any, onApply?: any, onHide?: any, onShow?: any, cssClass?: string, title?: string);
2740
- width: number;
2763
+ setWidthByTarget: boolean;
2741
2764
  focusFirstInputSelector: string;
2742
2765
  contentComponentName: string;
2743
2766
  contentComponentData: T;
@@ -2745,6 +2768,7 @@ export declare class PopupModel<T = any> extends Base {
2745
2768
  horizontalPosition: any;
2746
2769
  showPointer: boolean;
2747
2770
  isModal: boolean;
2771
+ isFocusedContent: boolean;
2748
2772
  onCancel: any;
2749
2773
  onApply: any;
2750
2774
  onHide: any;
@@ -3038,24 +3062,27 @@ export declare class SurveyButtonGroupItem extends SurveyElementBase<any, any> {
3038
3062
  protected renderCaption(): JSX.Element;
3039
3063
  }
3040
3064
  /*
3041
- * Base class of SurveyJS Elements and Survey.
3065
+ * A base class for the [`SurveyElement`](https://surveyjs.io/form-library/documentation/surveyelement) and [`SurveyModel`](https://surveyjs.io/form-library/documentation/surveymodel) classes.
3042
3066
  */
3043
3067
  export declare class SurveyElementCore extends Base implements ILocalizableOwner {
3044
3068
  constructor();
3045
3069
  protected createLocTitleProperty(): LocalizableString;
3046
3070
  /*
3047
- * Question, Panel, Page and Survey title. If page and panel is empty then they are not rendered.
3048
- * Question renders question name if the title is empty. Use survey questionTitleTemplate property to change the title question rendering.
3071
+ * A title for the survey element. If `title` is undefined, the `name` property value is displayed instead.
3072
+ *
3073
+ * Empty pages and panels do not display their titles or names.
3049
3074
  */
3050
3075
  get title(): string;
3051
3076
  set title(val: string);
3052
3077
  get locTitle(): LocalizableString;
3053
3078
  protected getDefaultTitleValue(): string;
3054
3079
  /*
3055
- * Question, Panel and Page description. It renders under element title by using smaller font. Unlike the question title, description can be empty.
3056
- * Please note, this property is hidden for questions without input, for example html question.
3080
+ * Returns `true` if the survey element has a description.
3057
3081
  */
3058
3082
  hasDescription: boolean;
3083
+ /*
3084
+ * Explanatory text displayed under the title.
3085
+ */
3059
3086
  get description(): string;
3060
3087
  set description(val: string);
3061
3088
  updateDescriptionVisibility(newDescription: any): void;
@@ -3212,6 +3239,20 @@ export declare class SurveyValidator extends Base {
3212
3239
  protected createCustomError(name: string): SurveyError;
3213
3240
  toString(): string;
3214
3241
  }
3242
+ export declare class TagboxFilterString extends SurveyElementBase<ITagboxFilterProps, any> {
3243
+ constructor(props: any);
3244
+ inputElement: any;
3245
+ get model(): any;
3246
+ get question(): any;
3247
+ componentDidUpdate(prevProps: any, prevState: any): void;
3248
+ componentDidMount(): void;
3249
+ updateDomElement(): void;
3250
+ onChange(e: any): void;
3251
+ onKeyUp(e: any): void;
3252
+ onBlur(e: any): void;
3253
+ getStateElement(): any;
3254
+ render(): JSX.Element;
3255
+ }
3215
3256
  /*
3216
3257
  * A base class for all triggers.
3217
3258
  * A trigger calls a method when the expression change the result: from false to true or from true to false.
@@ -3405,6 +3446,7 @@ export declare class DragDropSurveyElements extends DragDropCore<any> {
3405
3446
  }
3406
3447
  export declare class DropdownMultiSelectListModel extends DropdownListModel {
3407
3448
  constructor(question: Question, onSelectionChanged?: (item: IAction, ...params: any) => void);
3449
+ filterStringPlaceholder: string;
3408
3450
  protected override: any;
3409
3451
  createListModel(): MultiSelectListModel;
3410
3452
  selectAllItems(): void;
@@ -3413,6 +3455,8 @@ export declare class DropdownMultiSelectListModel extends DropdownListModel {
3413
3455
  deselectItem(id: string): void;
3414
3456
  onClear(event: any): void;
3415
3457
  setHideSelectedItems(newValue: boolean): void;
3458
+ removeLastSelectedItem(): void;
3459
+ inputKeyUpHandler(event: any): void;
3416
3460
  }
3417
3461
  /*
3418
3462
  * Validate e-mail address in the text input
@@ -3486,32 +3530,43 @@ export declare class JsonMissingTypeError extends JsonMissingTypeErrorBase {
3486
3530
  baseClassName: string;
3487
3531
  }
3488
3532
  export declare class ListModel extends ActionContainer {
3489
- constructor(items: any, onSelectionChanged: (item: Action, ...params: any) => void, allowSelection: boolean, selectedItem?: IAction, onFilteredTextChangedCallback?: (text: string) => void);
3533
+ constructor(items: any, onSelectionChanged: (item: Action, ...params: any) => void, allowSelection: boolean, selectedItem?: IAction, onFilterStringChangedCallback?: (text: string) => void);
3490
3534
  onSelectionChanged: (item: Action, ...params: any) => void;
3491
3535
  allowSelection: boolean;
3492
3536
  searchEnabled: boolean;
3493
- needFilter: boolean;
3537
+ showFilter: boolean;
3494
3538
  isEmpty: boolean;
3495
3539
  isExpanded: boolean;
3496
3540
  selectedItem: IAction;
3497
- filteredText: string;
3541
+ focusedItem: Action;
3542
+ filterString: string;
3498
3543
  static INDENT: number;
3499
3544
  static MINELEMENTCOUNT: number;
3500
3545
  isItemVisible(item: Action): boolean;
3546
+ get visibleItems(): any;
3501
3547
  protected onSet(): void;
3502
3548
  protected getDefaultCssClasses(): any;
3503
3549
  protected updateItemActiveState(): void;
3504
3550
  onItemClick: (itemValue: Action) => void;
3505
3551
  isItemDisabled: (itemValue: Action) => boolean;
3506
3552
  isItemSelected: (itemValue: Action) => boolean;
3553
+ isItemFocused: (itemValue: Action) => boolean;
3507
3554
  getItemClass: (itemValue: Action) => string;
3508
3555
  getItemIndent: (itemValue: any) => string;
3509
- get filteredTextPlaceholder(): string;
3556
+ get filterStringPlaceholder(): string;
3510
3557
  get emptyMessage(): string;
3511
3558
  goToItems(event: any): void;
3559
+ onMouseMove(event: any): void;
3512
3560
  onKeyDown(event: any): void;
3513
3561
  onPointerDown(event: any, item: any): void;
3514
3562
  refresh(): void;
3563
+ resetFocusedItem(): void;
3564
+ focusFirstVisibleItem(): void;
3565
+ focusLastVisibleItem(): void;
3566
+ initFocusedItem(): void;
3567
+ focusNextVisibleItem(): void;
3568
+ focusPrevVisibleItem(): void;
3569
+ selectFocusedItem(): void;
3515
3570
  }
3516
3571
  export declare class MatrixDropdownRowModel extends MatrixDropdownRowModelBase {
3517
3572
  constructor(name: string, item: ItemValue, data: IMatrixDropdownData, value: any);
@@ -3622,7 +3677,7 @@ export declare class SurveyCustomWidget extends SurveyQuestionElementBase {
3622
3677
  protected renderElement(): JSX.Element;
3623
3678
  }
3624
3679
  /*
3625
- * Base class of SurveyJS Elements.
3680
+ * A base class for all survey elements.
3626
3681
  */
3627
3682
  export declare class SurveyElement extends SurveyElementCore implements ISurveyElement {
3628
3683
  constructor(name: string);
@@ -3645,28 +3700,35 @@ export declare class SurveyElement extends SurveyElementCore implements ISurveyE
3645
3700
  protected getSkeletonComponentNameCore(): string;
3646
3701
  get skeletonComponentName(): string;
3647
3702
  /*
3648
- * Set this property to "collapsed" to render only Panel title and expanded button and to "expanded" to render the collapsed button in the Panel caption
3703
+ * Gets and sets the survey element's expand state.
3704
+ *
3705
+ * Possible values:
3706
+ *
3707
+ * - `"collapsed"` - The survey element displays only `title` and `description`.
3708
+ * - `"expanded"` - The survey element is displayed in full.
3649
3709
  */
3650
3710
  get state(): string;
3651
3711
  set state(val: string);
3652
3712
  /*
3653
- * Returns true if the Element is in the collapsed state
3713
+ * Returns `true` if the survey element is collapsed.
3654
3714
  */
3655
3715
  get isCollapsed(): boolean;
3656
3716
  /*
3657
- * Returns true if the Element is in the expanded state
3717
+ * Returns `true` if the survey element is expanded.
3658
3718
  */
3659
3719
  get isExpanded(): boolean;
3660
3720
  /*
3661
- * Collapse the Element
3721
+ * Collapses the survey element.
3722
+ *
3723
+ * In collapsed state, the element displays only `title` and `description`.
3662
3724
  */
3663
3725
  collapse(): void;
3664
3726
  /*
3665
- * Expand the Element
3727
+ * Expands the survey element.
3666
3728
  */
3667
3729
  expand(): void;
3668
3730
  /*
3669
- * Toggle element's state
3731
+ * Toggles the survey element's `state` between collapsed and expanded.
3670
3732
  */
3671
3733
  toggleState(): boolean;
3672
3734
  get hasStateButton(): boolean;
@@ -3701,18 +3763,25 @@ export declare class SurveyElement extends SurveyElementCore implements ISurveyE
3701
3763
  protected get isInternal(): boolean;
3702
3764
  get areInvisibleElementsShowing(): boolean;
3703
3765
  get isVisible(): boolean;
3766
+ /*
3767
+ * Returns `true` if the survey element or its parent element is read-only.
3768
+ */
3704
3769
  get isReadOnly(): boolean;
3705
3770
  /*
3706
- * Set it to true to make an element question/panel/page readonly.
3707
- * Please note, this property is hidden for question without input, for example html question.
3771
+ * Makes the survey element read-only.
3708
3772
  */
3709
3773
  get readOnly(): boolean;
3710
3774
  set readOnly(val: boolean);
3711
3775
  protected onReadOnlyChanged(): void;
3712
3776
  cssClassesValue: any;
3713
3777
  /*
3714
- * Returns all css classes that used for rendering the question, panel or page.
3715
- * You can use survey.onUpdateQuestionCssClasses event to override css classes for a question, survey.onUpdatePanelCssClasses event for a panel and survey.onUpdatePageCssClasses for a page.
3778
+ * Returns an object in which keys are UI elements and values are CSS classes applied to them.
3779
+ *
3780
+ * Use the following events of the [`SurveyModel`](https://surveyjs.io/form-library/documentation/surveymodel) object to override CSS classes:
3781
+ *
3782
+ * - [`onUpdatePageCssClasses`](https://surveyjs.io/form-library/documentation/surveymodel#onUpdatePageCssClasses)
3783
+ * - [`onUpdatePanelCssClasses`](https://surveyjs.io/form-library/documentation/surveymodel#onUpdatePanelCssClasses)
3784
+ * - [`onUpdateQuestionCssClasses`](https://surveyjs.io/form-library/documentation/surveymodel#onUpdateQuestionCssClasses)
3716
3785
  */
3717
3786
  get cssClasses(): any;
3718
3787
  protected calcCssClasses(css: any): any;
@@ -3722,7 +3791,7 @@ export declare class SurveyElement extends SurveyElementCore implements ISurveyE
3722
3791
  protected clearCssClasses(): void;
3723
3792
  protected getIsLoadingFromJson(): boolean;
3724
3793
  /*
3725
- * This is the identifier of a survey element - question or panel.
3794
+ * A survey element identifier.
3726
3795
  */
3727
3796
  get name(): string;
3728
3797
  set name(val: string);
@@ -3730,14 +3799,15 @@ export declare class SurveyElement extends SurveyElementCore implements ISurveyE
3730
3799
  protected onNameChanged(oldValue: string): void;
3731
3800
  protected updateBindingValue(valueName: string, value: any): void;
3732
3801
  /*
3733
- * The list of errors. It is created by callig hasErrors functions
3802
+ * Validation errors. Call the `hasErrors()` method to validate survey element data.
3734
3803
  */
3735
3804
  get errors(): any;
3736
3805
  set errors(val: any);
3737
3806
  hasVisibleErrors: boolean;
3738
3807
  /*
3739
- * Returns true if a question or a container (panel/page) or their chidren have an error.
3740
- * The value can be out of date. hasErrors function should be called to get the correct value.
3808
+ * Returns `true` if the survey element or its child elements have a validation error.
3809
+ *
3810
+ * This property contains the result of the most recent validation. This result may be outdated. Call the `hasErrors` method to get an up-to-date value.
3741
3811
  */
3742
3812
  get containsErrors(): boolean;
3743
3813
  updateContainsErrors(): void;
@@ -3751,21 +3821,21 @@ export declare class SurveyElement extends SurveyElementCore implements ISurveyE
3751
3821
  endLoadingFromJson(): void;
3752
3822
  setVisibleIndex(index: number): number;
3753
3823
  /*
3754
- * Returns true if it is a page.
3824
+ * Returns `true` if the survey element is a page.
3755
3825
  */
3756
3826
  get isPage(): boolean;
3757
3827
  /*
3758
- * Returns true if it is a panel.
3828
+ * Returns `true` if the survey element is a panel.
3759
3829
  */
3760
3830
  get isPanel(): boolean;
3761
3831
  /*
3762
- * Returns true if it is a question.
3832
+ * Returns `true` if the survey element is a question.
3763
3833
  */
3764
3834
  get isQuestion(): boolean;
3765
3835
  delete(): void;
3766
3836
  locOwner: ILocalizableOwner;
3767
3837
  /*
3768
- * Returns the current survey locale
3838
+ * Returns the survey's [locale](https://surveyjs.io/form-library/documentation/surveymodel#locale).
3769
3839
  */
3770
3840
  getLocale(): string;
3771
3841
  getMarkdownHtml(text: string, name: string): string;
@@ -3790,32 +3860,38 @@ export declare class SurveyElement extends SurveyElementCore implements ISurveyE
3790
3860
  isSingleInRow: boolean;
3791
3861
  protected get hasFrameV2(): boolean;
3792
3862
  /*
3793
- * A survey element width in CSS values.
3863
+ * Sets survey element width in CSS values.
3864
+ *
3865
+ * Default value: ""
3794
3866
  */
3795
3867
  get width(): string;
3796
3868
  set width(val: string);
3797
3869
  /*
3798
- * Use it to set the specific minWidth constraint to the survey element like css style (%, px, em etc).
3870
+ * Gets or sets minimum survey element width in CSS values.
3871
+ *
3872
+ * Default value: "300px" (taken from [`settings.minWidth`](https://surveyjs.io/form-library/documentation/settings#minWidth))
3799
3873
  */
3800
3874
  get minWidth(): string;
3801
3875
  set minWidth(val: string);
3802
3876
  /*
3803
- * Use it to set the specific maxWidth constraint to the survey element like css style (%, px, em etc).
3877
+ * Gets or sets maximum survey element width in CSS values.
3878
+ *
3879
+ * Default value: "100%" (taken from [`settings.maxWidth`](https://surveyjs.io/form-library/documentation/settings#maxWidth))
3804
3880
  */
3805
3881
  get maxWidth(): string;
3806
3882
  set maxWidth(val: string);
3807
3883
  /*
3808
- * The rendered width of the question.
3884
+ * Returns a calculated width of the rendered survey element in CSS values.
3809
3885
  */
3810
3886
  get renderWidth(): string;
3811
3887
  set renderWidth(val: string);
3812
3888
  /*
3813
- * The left indent. Set this property to increase the survey element left indent.
3889
+ * Increases or decreases indent of the survey element content from the left edge. Accepts positive integer values and 0.
3814
3890
  */
3815
3891
  get indent(): number;
3816
3892
  set indent(val: number);
3817
3893
  /*
3818
- * The right indent. Set it different from 0 to increase the right padding.
3894
+ * Increases or decreases indent of the survey element content from the right edge. Accepts positive integer values and 0.
3819
3895
  */
3820
3896
  get rightIndent(): number;
3821
3897
  set rightIndent(val: number);
@@ -4158,6 +4234,7 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
4158
4234
  /*
4159
4235
  * The event is fired on downloading a file in QuestionFile. Use this event to pass the file to a preview.
4160
4236
  * - `sender` - the survey object that fires the event.
4237
+ * - `question` - the question instance.
4161
4238
  * - `options.name` - the question name.
4162
4239
  * - `options.content` - the file content.
4163
4240
  * - `options.fileValue` - single file question value.
@@ -5410,7 +5487,7 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
5410
5487
  /*
5411
5488
  * Downloads a file from server
5412
5489
  */
5413
- downloadFile(questionName: string, fileValue: any, callback: (status: string, data: any) => any): void;
5490
+ downloadFile(question: IQuestion, questionName: string, fileValue: any, callback: (status: string, data: any) => any): void;
5414
5491
  /*
5415
5492
  * Clears files from server.
5416
5493
  */
@@ -5476,7 +5553,7 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
5476
5553
  /*
5477
5554
  * Returns a panel by its name.
5478
5555
  */
5479
- getPanelByName(name: string, caseInsensitive?: boolean): IPanel;
5556
+ getPanelByName(name: string, caseInsensitive?: boolean): PanelModel;
5480
5557
  /*
5481
5558
  * Returns a list of all survey's panels.
5482
5559
  */
@@ -6139,13 +6216,15 @@ export declare class DragDropRankingChoices extends DragDropChoices {
6139
6216
  protected doClear: any;
6140
6217
  }
6141
6218
  export declare class MultiSelectListModel extends ListModel {
6142
- constructor(items: any, onSelectionChanged: (item: Action, status: string) => void, allowSelection: boolean, selectedItems?: any, onFilteredTextChangedCallback?: (text: string) => void);
6219
+ constructor(items: any, onSelectionChanged: (item: Action, status: string) => void, allowSelection: boolean, selectedItems?: any, onFilterStringChangedCallback?: (text: string) => void);
6143
6220
  selectedItems: any;
6144
6221
  hideSelectedItems: boolean;
6145
6222
  onItemClick: (item: Action) => void;
6146
6223
  isItemDisabled: (itemValue: Action) => boolean;
6147
6224
  isItemSelected: (itemValue: Action) => boolean;
6148
6225
  setSelectedItems(newItems: any): void;
6226
+ initFocusedItem(): void;
6227
+ selectFocusedItem(): void;
6149
6228
  }
6150
6229
  /*
6151
6230
  * A base class for a Panel and Page objects.
@@ -6160,7 +6239,7 @@ export declare class PanelModelBase extends SurveyElement implements IPanel, ICo
6160
6239
  removeElementCallback: (element: IElement) => void;
6161
6240
  onGetQuestionTitleLocation: any;
6162
6241
  /*
6163
- * Returns the class type as it is used in the JSON schema.
6242
+ * Returns the object type as it is used in the JSON schema.
6164
6243
  */
6165
6244
  getType(): string;
6166
6245
  setSurveyImpl(value: ISurveyImpl, isLight?: boolean): void;
@@ -6351,9 +6430,6 @@ export declare class PanelModelBase extends SurveyElement implements IPanel, ICo
6351
6430
  protected beforeSetVisibleIndex(index: number): number;
6352
6431
  protected getPanelStartIndex(index: number): number;
6353
6432
  protected isContinueNumbering(): boolean;
6354
- /*
6355
- * Returns true if readOnly property is true or survey is in display mode or parent panel/page is readOnly.
6356
- */
6357
6433
  get isReadOnly(): boolean;
6358
6434
  protected onReadOnlyChanged(): void;
6359
6435
  updateElementCss(reNew?: boolean): void;
@@ -6743,9 +6819,6 @@ export declare class Question extends SurveyElement implements IQuestion, ICondi
6743
6819
  set hasOther(val: boolean);
6744
6820
  protected hasOtherChanged(): void;
6745
6821
  get requireUpdateCommentValue(): boolean;
6746
- /*
6747
- * Returns true if readOnly property is true or survey is in display mode or parent panel/page is readOnly.
6748
- */
6749
6822
  get isReadOnly(): boolean;
6750
6823
  get isInputReadOnly(): boolean;
6751
6824
  get renderedInputReadOnly(): string;
@@ -7036,6 +7109,7 @@ export declare class SurveyQuestionCustom extends SurveyQuestionUncontrolledElem
7036
7109
  }
7037
7110
  export declare class SurveyQuestionDropdownBase<T> extends SurveyQuestionUncontrolledElement<T> {
7038
7111
  constructor(props: any);
7112
+ inputElement: any;
7039
7113
  click: (event: any) => void;
7040
7114
  clear: (event: any) => void;
7041
7115
  keyup: (event: any) => void;
@@ -7043,9 +7117,12 @@ export declare class SurveyQuestionDropdownBase<T> extends SurveyQuestionUncontr
7043
7117
  protected setValueCore(newValue: any): void;
7044
7118
  protected getValueCore(): any;
7045
7119
  protected renderSelect(cssClasses: any): JSX.Element;
7046
- protected renderInput(): JSX.Element;
7120
+ protected renderInput(dropdownListModel: any): JSX.Element;
7047
7121
  createClearButton(): JSX.Element;
7048
7122
  protected renderOther(cssClasses: any): JSX.Element;
7123
+ componentDidUpdate(prevProps: any, prevState: any): void;
7124
+ componentDidMount(): void;
7125
+ updateInputDomElement(): void;
7049
7126
  }
7050
7127
  export declare class SurveyQuestionMatrixDropdown extends SurveyQuestionMatrixDropdownBase {
7051
7128
  constructor(props: any);
@@ -7411,6 +7488,7 @@ export declare class QuestionBooleanModel extends Question {
7411
7488
  protected setDefaultValue(): void;
7412
7489
  protected getDisplayValueCore(keysAsText: boolean, value: any): any;
7413
7490
  getItemCss(): string;
7491
+ getCheckboxItemCss(): string;
7414
7492
  getLabelCss(checked: boolean): string;
7415
7493
  get svgIcon(): string;
7416
7494
  get allowClick(): boolean;
@@ -8392,7 +8470,7 @@ export declare class QuestionSelectBase extends Question {
8392
8470
  set otherText(val: string);
8393
8471
  get locOtherText(): LocalizableString;
8394
8472
  /*
8395
- * Use this property to show "Select All", "None" and "Other" choices in multi columns .
8473
+ * Displays the "Select All", "None", and "Other" choices on individual rows.
8396
8474
  */
8397
8475
  separateSpecialChoices: boolean;
8398
8476
  /*
@@ -8627,7 +8705,7 @@ export declare class SurveyQuestionRatingDropdown extends SurveyQuestionDropdown
8627
8705
  export declare class SurveyQuestionTagbox extends SurveyQuestionDropdownBase<QuestionTagboxModel> {
8628
8706
  constructor(props: any);
8629
8707
  protected renderItem(key: string, item: any): JSX.Element;
8630
- protected renderInput(): JSX.Element;
8708
+ protected renderInput(dropdownListModel: any): JSX.Element;
8631
8709
  protected renderElement(): JSX.Element;
8632
8710
  }
8633
8711
  /*
@@ -8813,7 +8891,7 @@ export declare class QuestionDropdownModel extends QuestionSelectBase {
8813
8891
  */
8814
8892
  itemComponent: string;
8815
8893
  /*
8816
- * Specifies whether to display a search bar in the drop-down menu.
8894
+ * Specifies whether users can enter a value into the input field to filter the drop-down list.
8817
8895
  */
8818
8896
  searchEnabled: boolean;
8819
8897
  /*
@@ -8828,6 +8906,8 @@ export declare class QuestionDropdownModel extends QuestionSelectBase {
8828
8906
  onOpened: EventBase<QuestionDropdownModel>;
8829
8907
  onOpenedCallBack(): void;
8830
8908
  protected onVisibleChoicesChanged(): void;
8909
+ protected getFirstInputElementId(): string;
8910
+ getInputId(): string;
8831
8911
  onClick(e: any): void;
8832
8912
  onKeyUp(event: any): void;
8833
8913
  }
@@ -9785,16 +9865,23 @@ export declare class QuestionRankingModel extends QuestionCheckboxModel {
9785
9865
  export declare class QuestionTagboxModel extends QuestionCheckboxModel {
9786
9866
  constructor(name: string);
9787
9867
  dropdownListModel: DropdownMultiSelectListModel;
9788
- get readOnlyText(): string;
9868
+ get readOnlyText(): any;
9789
9869
  onSurveyLoad(): void;
9790
9870
  /*
9791
9871
  * Specifies whether to display a button that clears the selected value.
9792
9872
  */
9793
9873
  allowClear: boolean;
9794
9874
  /*
9795
- * Specifies whether to display a search bar in the drop-down menu.
9875
+ * Specifies whether users can enter a value into the input field to filter the drop-down list.
9796
9876
  */
9797
9877
  searchEnabled: boolean;
9878
+ /*
9879
+ * The name of a component used to render drop-down menu items.
9880
+ */
9881
+ itemComponent: string;
9882
+ /*
9883
+ * Specifies whether to remove selected items from the drop-down list.
9884
+ */
9798
9885
  hideSelectedItems: boolean;
9799
9886
  /*
9800
9887
  * The clean files button caption.
@@ -9814,6 +9901,8 @@ export declare class QuestionTagboxModel extends QuestionCheckboxModel {
9814
9901
  onOpened: EventBase<QuestionTagboxModel>;
9815
9902
  onOpenedCallBack(): void;
9816
9903
  protected onVisibleChoicesChanged(): void;
9904
+ protected getFirstInputElementId(): string;
9905
+ getInputId(): string;
9817
9906
  }
9818
9907
  export declare function property(options?: any): (target: any, key: string) => void;
9819
9908
  export declare function propertyArray(options?: IArrayPropertyDecoratorOptions): (target: any, key: string) => void;
@@ -10076,6 +10165,7 @@ export declare var defaultListCss: {
10076
10165
  itemSelected: string,
10077
10166
  itemWithIcon: string,
10078
10167
  itemDisabled: string,
10168
+ itemFocused: string,
10079
10169
  itemIcon: string,
10080
10170
  itemsContainer: string,
10081
10171
  filter: string,
@@ -10187,7 +10277,6 @@ export declare var defaultStandardCss: {
10187
10277
  rootRadio: string,
10188
10278
  item: string,
10189
10279
  control: string,
10190
- controlCheckbox: string,
10191
10280
  itemChecked: string,
10192
10281
  itemIndeterminate: string,
10193
10282
  itemDisabled: string,
@@ -10195,11 +10284,15 @@ export declare var defaultStandardCss: {
10195
10284
  slider: string,
10196
10285
  label: string,
10197
10286
  disabledLabel: string,
10198
- materialDecorator: string,
10199
- itemDecorator: string,
10200
- checkedPath: string,
10201
- uncheckedPath: string,
10202
- indeterminatePath: string,
10287
+ rootCheckbox: string,
10288
+ checkboxItem: string,
10289
+ checkboxItemChecked: string,
10290
+ controlCheckbox: string,
10291
+ checkboxControlLabel: string,
10292
+ checkboxItemIndeterminate: string,
10293
+ checkboxItemDisabled: string,
10294
+ checkboxMaterialDecorator: string,
10295
+ checkboxItemDecorator: string,
10203
10296
  },
10204
10297
  checkbox: {
10205
10298
  root: string,
@@ -10243,6 +10336,7 @@ export declare var defaultStandardCss: {
10243
10336
  cleanButtonSvg: string,
10244
10337
  cleanButtonIconId: string,
10245
10338
  controlValue: string,
10339
+ filterStringInput: string,
10246
10340
  },
10247
10341
  html: {
10248
10342
  root: string,
@@ -10434,6 +10528,8 @@ export declare var defaultStandardCss: {
10434
10528
  control: string,
10435
10529
  controlValue: string,
10436
10530
  controlEmpty: string,
10531
+ placeholderInput: string,
10532
+ filterStringInput: string,
10437
10533
  },
10438
10534
  };
10439
10535
  export declare var surveyTimerFunctions: {
@@ -11355,27 +11451,36 @@ export declare var defaultV2Css: {
11355
11451
  root: string,
11356
11452
  rootRadio: string,
11357
11453
  item: string,
11358
- radioItem: string,
11359
- radioItemChecked: string,
11360
- radioLabel: string,
11361
- radioControlLabel: string,
11362
- radioFieldset: string,
11363
11454
  itemOnError: string,
11364
11455
  control: string,
11365
- controlCheckbox: string,
11366
11456
  itemChecked: string,
11367
11457
  itemIndeterminate: string,
11368
11458
  itemDisabled: string,
11369
11459
  label: string,
11370
11460
  switch: string,
11371
11461
  disabledLabel: string,
11372
- itemDecorator: string,
11373
- materialDecorator: string,
11374
- itemRadioDecorator: string,
11375
- materialRadioDecorator: string,
11376
11462
  sliderText: string,
11377
11463
  slider: string,
11378
- itemControl: string,
11464
+ radioItem: string,
11465
+ radioItemChecked: string,
11466
+ radioLabel: string,
11467
+ radioControlLabel: string,
11468
+ radioFieldset: string,
11469
+ itemRadioDecorator: string,
11470
+ materialRadioDecorator: string,
11471
+ itemRadioControl: string,
11472
+ rootCheckbox: string,
11473
+ checkboxItem: string,
11474
+ checkboxLabel: string,
11475
+ checkboxItemOnError: string,
11476
+ checkboxItemIndeterminate: string,
11477
+ checkboxItemChecked: string,
11478
+ checkboxItemDecorator: string,
11479
+ checkboxItemDisabled: string,
11480
+ controlCheckbox: string,
11481
+ checkboxMaterialDecorator: string,
11482
+ checkboxControlLabel: string,
11483
+ svgIconCheckedId: string,
11379
11484
  },
11380
11485
  text: {
11381
11486
  root: string,
@@ -11413,6 +11518,7 @@ export declare var defaultV2Css: {
11413
11518
  controlDisabled: string,
11414
11519
  controlEmpty: string,
11415
11520
  controlLabel: string,
11521
+ filterStringInput: string,
11416
11522
  materialDecorator: string,
11417
11523
  },
11418
11524
  imagepicker: {
@@ -11535,6 +11641,7 @@ export declare var defaultV2Css: {
11535
11641
  controlValue: string,
11536
11642
  controlDisabled: string,
11537
11643
  controlEmpty: string,
11644
+ filterStringInput: string,
11538
11645
  onError: string,
11539
11646
  },
11540
11647
  comment: {
@@ -11679,9 +11786,12 @@ export declare var defaultV2Css: {
11679
11786
  cleanItemButtonIconId: string,
11680
11787
  control: string,
11681
11788
  controlValue: string,
11789
+ controlValueItems: string,
11790
+ placeholderInput: string,
11682
11791
  controlDisabled: string,
11683
11792
  controlEmpty: string,
11684
11793
  controlLabel: string,
11794
+ filterStringInput: string,
11685
11795
  materialDecorator: string,
11686
11796
  },
11687
11797
  };
@@ -11887,7 +11997,6 @@ export declare var modernCss: {
11887
11997
  small: string,
11888
11998
  item: string,
11889
11999
  control: string,
11890
- controlCheckbox: string,
11891
12000
  itemChecked: string,
11892
12001
  itemIndeterminate: string,
11893
12002
  itemDisabled: string,
@@ -11895,10 +12004,15 @@ export declare var modernCss: {
11895
12004
  slider: string,
11896
12005
  label: string,
11897
12006
  disabledLabel: string,
11898
- materialDecorator: string,
11899
- itemDecorator: string,
11900
- checkedPath: string,
11901
- uncheckedPath: string,
12007
+ rootCheckbox: string,
12008
+ checkboxItem: string,
12009
+ checkboxItemChecked: string,
12010
+ controlCheckbox: string,
12011
+ checkboxControlLabel: string,
12012
+ checkboxItemIndeterminate: string,
12013
+ checkboxItemDisabled: string,
12014
+ checkboxMaterialDecorator: string,
12015
+ checkboxItemDecorator: string,
11902
12016
  indeterminatePath: string,
11903
12017
  svgIconCheckedId: string,
11904
12018
  svgIconUncheckedId: string,
@@ -11927,8 +12041,26 @@ export declare var modernCss: {
11927
12041
  cleanButton: string,
11928
12042
  cleanButtonSvg: string,
11929
12043
  cleanButtonIconId: string,
12044
+ filterStringInput: string,
11930
12045
  controlValue: string,
11931
12046
  },
12047
+ tagbox: {
12048
+ root: string,
12049
+ small: string,
12050
+ selectWrapper: string,
12051
+ other: string,
12052
+ cleanButton: string,
12053
+ cleanButtonSvg: string,
12054
+ cleanButtonIconId: string,
12055
+ cleanItemButton: string,
12056
+ cleanItemButtonSvg: string,
12057
+ cleanItemButtonIconId: string,
12058
+ control: string,
12059
+ controlValue: string,
12060
+ controlEmpty: string,
12061
+ placeholderInput: string,
12062
+ filterStringInput: string,
12063
+ },
11932
12064
  imagepicker: {
11933
12065
  root: string,
11934
12066
  column: string,
@@ -12013,6 +12145,7 @@ export declare var modernCss: {
12013
12145
  itemText: string,
12014
12146
  maxText: string,
12015
12147
  itemDisabled: string,
12148
+ filterStringInput: string,
12016
12149
  },
12017
12150
  comment: {
12018
12151
  root: string,