survey-react 1.9.116 → 1.9.118

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
@@ -297,7 +297,6 @@ declare module "localizablestring" {
297
297
  get localizationName(): string;
298
298
  set localizationName(val: string);
299
299
  onGetTextCallback: (str: string) => string;
300
- onGetDefaultTextCallback: () => string;
301
300
  storeDefaultText: boolean;
302
301
  onGetLocalizationTextCallback: (str: string) => string;
303
302
  onStrChanged: (oldValue: string, newValue: string) => void;
@@ -383,6 +382,14 @@ declare module "localizablestring" {
383
382
  private getValuesKeys;
384
383
  }
385
384
  }
385
+ declare module "console-warnings" {
386
+ export class ConsoleWarnings {
387
+ static disposedObjectChangedProperty(propName: string, objType: string): void;
388
+ static inCorrectQuestionValue(questionName: string, val: any): void;
389
+ static warn(text: string): void;
390
+ static error(text: string): void;
391
+ }
392
+ }
386
393
  declare module "jsonobject" {
387
394
  import { Base } from "base";
388
395
  export interface IPropertyDecoratorOptions<T = any> {
@@ -456,6 +463,7 @@ declare module "jsonobject" {
456
463
  minValue: any;
457
464
  private dataListValue;
458
465
  layout: string;
466
+ onSerializeValue: (obj: any) => any;
459
467
  onGetValue: (obj: any) => any;
460
468
  onSettingValue: (obj: any, value: any) => any;
461
469
  onSetValue: (obj: any, value: any, jsonConv: JsonObject) => any;
@@ -480,6 +488,7 @@ declare module "jsonobject" {
480
488
  set defaultValue(newValue: any);
481
489
  isDefaultValue(value: any): boolean;
482
490
  isDefaultValueByObj(obj: Base, value: any): boolean;
491
+ getSerializableValue(obj: any): any;
483
492
  getValue(obj: any): any;
484
493
  getPropertyValue(obj: any): any;
485
494
  get hasToUseSetValue(): string | ((obj: any, value: any, jsonConv: JsonObject) => any);
@@ -699,13 +708,6 @@ declare module "conditionProcessValue" {
699
708
  private getIntValue;
700
709
  }
701
710
  }
702
- declare module "console-warnings" {
703
- export class ConsoleWarnings {
704
- static disposedObjectChangedProperty(propName: string, objType: string): void;
705
- static inCorrectQuestionValue(questionName: string, val: any): void;
706
- static warn(text: string): void;
707
- }
708
- }
709
711
  declare module "functionsfactory" {
710
712
  import { HashTable } from "helpers";
711
713
  export class FunctionFactory {
@@ -2300,6 +2302,7 @@ declare module "defaultCss/defaultV2Css" {
2300
2302
  };
2301
2303
  saveData: {
2302
2304
  root: string;
2305
+ rootWithButtons: string;
2303
2306
  info: string;
2304
2307
  error: string;
2305
2308
  success: string;
@@ -2626,6 +2629,408 @@ declare module "calculatedValue" {
2626
2629
  private ensureExpression;
2627
2630
  }
2628
2631
  }
2632
+ declare module "textPreProcessor" {
2633
+ import { Question } from "question";
2634
+ import { PanelModel } from "panel";
2635
+ import { ISurvey, ITextProcessor } from "base-interfaces";
2636
+ export class TextPreProcessorItem {
2637
+ start: number;
2638
+ end: number;
2639
+ }
2640
+ export class TextPreProcessorValue {
2641
+ name: string;
2642
+ returnDisplayValue: boolean;
2643
+ constructor(name: string, returnDisplayValue: boolean);
2644
+ value: any;
2645
+ isExists: boolean;
2646
+ canProcess: boolean;
2647
+ }
2648
+ export class TextPreProcessor {
2649
+ private _unObservableValues;
2650
+ private get hasAllValuesOnLastRunValue();
2651
+ private set hasAllValuesOnLastRunValue(value);
2652
+ onProcess: (textValue: TextPreProcessorValue) => void;
2653
+ process(text: string, returnDisplayValue?: boolean, doEncoding?: boolean): string;
2654
+ processValue(name: string, returnDisplayValue: boolean): TextPreProcessorValue;
2655
+ get hasAllValuesOnLastRun(): boolean;
2656
+ private getItems;
2657
+ private getName;
2658
+ }
2659
+ export class QuestionTextProcessor implements ITextProcessor {
2660
+ protected variableName: string;
2661
+ private textPreProcessor;
2662
+ constructor(variableName: string);
2663
+ processValue(name: string, returnDisplayValue: boolean): TextPreProcessorValue;
2664
+ protected get survey(): ISurvey;
2665
+ protected get panel(): PanelModel;
2666
+ protected getValues(): any;
2667
+ protected getQuestionByName(name: string): Question;
2668
+ protected getParentTextProcessor(): ITextProcessor;
2669
+ protected onCustomProcessText(textValue: TextPreProcessorValue): boolean;
2670
+ protected getQuestionDisplayText(question: Question): string;
2671
+ private getProcessedTextValue;
2672
+ processText(text: string, returnDisplayValue: boolean): string;
2673
+ processTextEx(text: string, returnDisplayValue: boolean): any;
2674
+ private processTextCore;
2675
+ }
2676
+ }
2677
+ declare module "question_custom" {
2678
+ import { Question, IConditionObject } from "question";
2679
+ import { ISurveyImpl, ISurveyData, ITextProcessor, IPanel, IElement, IQuestion, IProgressInfo } from "base-interfaces";
2680
+ import { SurveyElement } from "survey-element";
2681
+ import { PanelModel } from "panel";
2682
+ import { HashTable } from "helpers";
2683
+ import { ItemValue } from "itemvalue";
2684
+ /**
2685
+ * An interface used to create custom question types.
2686
+ *
2687
+ * Refer to the following articles for more information:
2688
+ *
2689
+ * - [Create Specialized Question Types](https://surveyjs.io/form-library/documentation/customize-question-types/create-specialized-question-types)
2690
+ * - [Create Composite Question Types](https://surveyjs.io/form-library/documentation/customize-question-types/create-composite-question-types)
2691
+ */
2692
+ export interface ICustomQuestionTypeConfiguration {
2693
+ /**
2694
+ * A name used to identify a custom question type.
2695
+ *
2696
+ * @see title
2697
+ */
2698
+ name: string;
2699
+ /**
2700
+ * A title used for this custom question type in the UI. When `title` is not specified, the `name` property value is used.
2701
+ *
2702
+ * @see name
2703
+ */
2704
+ title?: string;
2705
+ /**
2706
+ * The name of an icon to use for the custom question type.
2707
+ *
2708
+ * [UI Icons](https://surveyjs.io/form-library/documentation/icons (linkStyle))
2709
+ */
2710
+ iconName?: string;
2711
+ internal?: boolean;
2712
+ /**
2713
+ * A function that is called when the custom question type is initialized. Use it to add, remove, or modify the type's properties (see [Override Base Question Properties](https://surveyjs.io/form-library/documentation/customize-question-types/create-composite-question-types#override-base-question-properties)).
2714
+ */
2715
+ onInit?(): void;
2716
+ /**
2717
+ * Specifies whether the custom question type is available in the Toolbox and the Add Question menu.
2718
+ *
2719
+ * Default value: `true`
2720
+ *
2721
+ * Set this property to `false` if your custom question type is used only to customize Property Grid content and is not meant for a survey.
2722
+ */
2723
+ showInToolbox?: boolean;
2724
+ /**
2725
+ * A function that is called when the custom question is created. Use it to access questions nested within a [composite question type](https://surveyjs.io/form-library/documentation/customize-question-types/create-composite-question-types).
2726
+ *
2727
+ * Parameters:
2728
+ *
2729
+ * - `question`: [Question](https://surveyjs.io/Documentation/Library?id=Question)\
2730
+ * The custom question.
2731
+ */
2732
+ onCreated?(question: Question): void;
2733
+ /**
2734
+ * A function that is called when JSON schemas are loaded.
2735
+ *
2736
+ * Parameters:
2737
+ *
2738
+ * - `question`: [Question](https://surveyjs.io/Documentation/Library?id=Question)\
2739
+ * A custom question.
2740
+ */
2741
+ onLoaded?(question: Question): void;
2742
+ /**
2743
+ * A function that is called after the entire question is rendered.
2744
+ *
2745
+ * Parameters:
2746
+ *
2747
+ * - `question`: [Question](https://surveyjs.io/Documentation/Library?id=Question)\
2748
+ * A custom question.
2749
+ * - `htmlElement`: `any`\
2750
+ * An HTML element that represents the custom question.
2751
+ */
2752
+ onAfterRender?(question: Question, htmlElement: any): void;
2753
+ /**
2754
+ * A function that is called each time a question nested within a [composite question](https://surveyjs.io/form-library/documentation/customize-question-types/create-composite-question-types) is rendered.
2755
+ *
2756
+ * Parameters:
2757
+ *
2758
+ * - `question`: [Question](https://surveyjs.io/Documentation/Library?id=Question)\
2759
+ * A composite question.
2760
+ * - `element`: [Question](https://surveyjs.io/Documentation/Library?id=Question)\
2761
+ * A nested question.
2762
+ * - `htmlElement`: `any`\
2763
+ * An HTML element that represents a nested question.
2764
+ */
2765
+ onAfterRenderContentElement?(question: Question, element: Question, htmlElement: any): void;
2766
+ /**
2767
+ * A function that is called each time a question nested within a [composite question](https://surveyjs.io/form-library/documentation/customize-question-types/create-composite-question-types) requires an update of its CSS classes.
2768
+ *
2769
+ * Parameters:
2770
+ *
2771
+ * - `question`: [Question](https://surveyjs.io/Documentation/Library?id=Question)\
2772
+ * A composite question.
2773
+ * - `element`: [Question](https://surveyjs.io/Documentation/Library?id=Question)\
2774
+ * A nested question.
2775
+ * - `cssClasses`: `any`\
2776
+ * An object with CSS classes applied to a nested question, for example, `{ root: "class1", button: "class2" }`. You can modify this object to apply custom CSS classes.
2777
+ */
2778
+ onUpdateQuestionCssClasses?(question: Question, element: Question, cssClasses: any): void;
2779
+ /**
2780
+ * A function that is called when a custom question type property is changed. Use it to handle property changes.
2781
+ *
2782
+ * Parameters:
2783
+ *
2784
+ * - `question`: [Question](https://surveyjs.io/Documentation/Library?id=Question)\
2785
+ * A custom question.
2786
+ * - `propertyName`: `string`\
2787
+ * The name of the changed property.
2788
+ * - `newValue`: `any`\
2789
+ * A new value for the property.
2790
+ */
2791
+ onPropertyChanged?(question: Question, propertyName: string, newValue: any): void;
2792
+ /**
2793
+ * A function that is called after the question value is changed.
2794
+ *
2795
+ * Parameters:
2796
+ *
2797
+ * - `question`: [Question](https://surveyjs.io/Documentation/Library?id=Question)\
2798
+ * A custom question.
2799
+ * - `name`: `string`\
2800
+ * The question's [name](https://surveyjs.io/Documentation/Library?id=Question#name).
2801
+ * - `newValue`: `any`\
2802
+ * A new value for the question.
2803
+ */
2804
+ onValueChanged?(question: Question, name: string, newValue: any): void;
2805
+ /**
2806
+ * A function that is called before a question value is changed.
2807
+ *
2808
+ * This function should return the value you want to save: `newValue`, a custom value, or `undefined` if you want to clear the question value.
2809
+ *
2810
+ * Parameters:
2811
+ *
2812
+ * - `question`: [Question](https://surveyjs.io/Documentation/Library?id=Question)\
2813
+ * A custom question.
2814
+ * - `name`: `string`\
2815
+ * The question's [name](https://surveyjs.io/Documentation/Library?id=Question#name).
2816
+ * - `newValue`: `any`\
2817
+ * A new value for the question.
2818
+ */
2819
+ onValueChanging?(question: Question, name: string, newValue: any): any;
2820
+ /**
2821
+ * A function that is called when an [ItemValue](https://surveyjs.io/Documentation/Library?id=itemvalue) property is changed.
2822
+ *
2823
+ * Parameters:
2824
+ *
2825
+ * - `question`: [Question](https://surveyjs.io/Documentation/Library?id=Question)\
2826
+ * A custom question.
2827
+ * - `options.obj`: [ItemValue](https://surveyjs.io/Documentation/Library?id=itemvalue)\
2828
+ * An `ItemValue` object.
2829
+ * - `options.propertyName`: `string`\
2830
+ * The name of the property to which an array of `ItemValue` objects is assigned (for example, `"choices"` or `"rows"`).
2831
+ * - `options.name`: `string`\
2832
+ * The name of the changed property: `"text"` or `"value"`.
2833
+ * - `options.newValue`: `any`\
2834
+ * A new value for the property.
2835
+ */
2836
+ onItemValuePropertyChanged?(question: Question, options: {
2837
+ obj: ItemValue;
2838
+ propertyName: string;
2839
+ name: string;
2840
+ newValue: any;
2841
+ }): void;
2842
+ /**
2843
+ * A function that allows you to override the default `getDisplayValue()` implementation.
2844
+ */
2845
+ getDisplayValue?: ((keyAsText: boolean, value: any) => any) | ((question: Question) => any);
2846
+ /**
2847
+ * JSON schemas of nested questions. Specify this property to create a [composite question type](https://surveyjs.io/form-library/documentation/customize-question-types/create-composite-question-types).
2848
+ */
2849
+ elementsJSON?: any;
2850
+ /**
2851
+ * A function that allows you to create nested questions if you do not specify the `elementsJSON` property.
2852
+ *
2853
+ * @see elementsJSON
2854
+ */
2855
+ createElements?: any;
2856
+ /**
2857
+ * A JSON schema for a built-in question type on which the custom question type is based.
2858
+ *
2859
+ * Refer to the [Create Specialized Question Types](https://surveyjs.io/form-library/documentation/customize-question-types/create-specialized-question-types) help topic for more information.
2860
+ */
2861
+ questionJSON?: any;
2862
+ /**
2863
+ * A function that allows you to create a custom question if you do not specify the `questionJSON` property.
2864
+ *
2865
+ * @see questionJSON
2866
+ */
2867
+ createQuestion?: any;
2868
+ valueToQuestion?: (val: any) => any;
2869
+ valueFromQuestion?: (val: any) => any;
2870
+ getValue?: (val: any) => any;
2871
+ setValue?: (val: any) => any;
2872
+ }
2873
+ export class ComponentQuestionJSON {
2874
+ name: string;
2875
+ json: ICustomQuestionTypeConfiguration;
2876
+ constructor(name: string, json: ICustomQuestionTypeConfiguration);
2877
+ onInit(): void;
2878
+ onCreated(question: Question): void;
2879
+ onLoaded(question: Question): void;
2880
+ onAfterRender(question: Question, htmlElement: any): void;
2881
+ onAfterRenderContentElement(question: Question, element: Question, htmlElement: any): void;
2882
+ onUpdateQuestionCssClasses(question: Question, element: Question, css: any): void;
2883
+ onPropertyChanged(question: Question, propertyName: string, newValue: any): void;
2884
+ onValueChanged(question: Question, name: string, newValue: any): void;
2885
+ onValueChanging(question: Question, name: string, newValue: any): any;
2886
+ onItemValuePropertyChanged(question: Question, item: ItemValue, propertyName: string, name: string, newValue: any): void;
2887
+ getDisplayValue(keyAsText: boolean, value: any, question: Question): any;
2888
+ setValueToQuestion(val: any): any;
2889
+ getValueFromQuestion(val: any): any;
2890
+ get isComposite(): boolean;
2891
+ }
2892
+ export class ComponentCollection {
2893
+ static Instance: ComponentCollection;
2894
+ private customQuestionValues;
2895
+ onCreateComposite: (name: string, questionJSON: ComponentQuestionJSON) => QuestionCompositeModel;
2896
+ onCreateCustom: (name: string, questionJSON: ComponentQuestionJSON) => QuestionCustomModel;
2897
+ onAddingJson: (name: string, isComposite: boolean) => void;
2898
+ add(json: ICustomQuestionTypeConfiguration): void;
2899
+ remove(componentName: string): boolean;
2900
+ get items(): Array<ComponentQuestionJSON>;
2901
+ getCustomQuestionByName(name: string): ComponentQuestionJSON;
2902
+ private getCustomQuestionIndex;
2903
+ private removeByIndex;
2904
+ clear(includeInternal?: boolean): void;
2905
+ createQuestion(name: string, questionJSON: ComponentQuestionJSON): Question;
2906
+ protected createCompositeModel(name: string, questionJSON: ComponentQuestionJSON): QuestionCompositeModel;
2907
+ protected createCustomModel(name: string, questionJSON: ComponentQuestionJSON): QuestionCustomModel;
2908
+ }
2909
+ export abstract class QuestionCustomModelBase extends Question implements ISurveyImpl, ISurveyData, IPanel {
2910
+ customQuestion: ComponentQuestionJSON;
2911
+ constructor(name: string, customQuestion: ComponentQuestionJSON);
2912
+ getType(): string;
2913
+ locStrsChanged(): void;
2914
+ protected createWrapper(): void;
2915
+ protected onPropertyValueChanged(name: string, oldValue: any, newValue: any): void;
2916
+ itemValuePropertyChanged(item: ItemValue, name: string, oldValue: any, newValue: any): void;
2917
+ onFirstRendering(): void;
2918
+ onHidingContent(): void;
2919
+ getProgressInfo(): IProgressInfo;
2920
+ protected abstract getElement(): SurveyElement;
2921
+ protected initElement(el: SurveyElement): void;
2922
+ protected isSettingValOnLoading: boolean;
2923
+ setSurveyImpl(value: ISurveyImpl, isLight?: boolean): void;
2924
+ onSurveyLoad(): void;
2925
+ afterRenderQuestionElement(el: HTMLElement): void;
2926
+ afterRenderCore(el: any): void;
2927
+ protected onUpdateQuestionCssClasses(element: Question, css: any): void;
2928
+ protected setQuestionValue(newValue: any, updateIsAnswered?: boolean): void;
2929
+ protected setNewValue(newValue: any): void;
2930
+ getSurveyData(): ISurveyData;
2931
+ getTextProcessor(): ITextProcessor;
2932
+ getValue(name: string): any;
2933
+ setValue(name: string, newValue: any, locNotification: any, allowNotifyValueChanged?: boolean): any;
2934
+ protected getQuestionByName(name: string): IQuestion;
2935
+ protected isValueChanging(name: string, newValue: any): boolean;
2936
+ protected convertDataName(name: string): string;
2937
+ protected convertDataValue(name: string, newValue: any): any;
2938
+ getVariable(name: string): any;
2939
+ setVariable(name: string, newValue: any): void;
2940
+ getComment(name: string): string;
2941
+ setComment(name: string, newValue: string, locNotification: any): any;
2942
+ getAllValues(): any;
2943
+ getFilteredValues(): any;
2944
+ getFilteredProperties(): any;
2945
+ findQuestionByName(name: string): IQuestion;
2946
+ addElement(element: IElement, index: number): void;
2947
+ removeElement(element: IElement): boolean;
2948
+ getQuestionTitleLocation(): string;
2949
+ getQuestionStartIndex(): string;
2950
+ getChildrenLayoutType(): string;
2951
+ elementWidthChanged(el: IElement): void;
2952
+ get elements(): Array<IElement>;
2953
+ indexOf(el: IElement): number;
2954
+ ensureRowsVisibility(): void;
2955
+ validateContainerOnly(): void;
2956
+ getQuestionErrorLocation(): string;
2957
+ protected getContentDisplayValueCore(keyAsText: boolean, value: any, question: Question): any;
2958
+ }
2959
+ export class QuestionCustomModel extends QuestionCustomModelBase {
2960
+ private questionWrapper;
2961
+ private hasJSONTitle;
2962
+ getTemplate(): string;
2963
+ protected createWrapper(): void;
2964
+ protected getElement(): SurveyElement;
2965
+ onAnyValueChanged(name: string, questionName: string): void;
2966
+ protected getQuestionByName(name: string): IQuestion;
2967
+ protected getDefaultTitle(): string;
2968
+ setValue(name: string, newValue: any, locNotification: any, allowNotifyValueChanged?: boolean): any;
2969
+ protected onSetData(): void;
2970
+ hasErrors(fireCallback?: boolean, rec?: any): boolean;
2971
+ focus(onError?: boolean): void;
2972
+ afterRenderCore(el: any): void;
2973
+ get contentQuestion(): Question;
2974
+ protected createQuestion(): Question;
2975
+ onSurveyLoad(): void;
2976
+ runCondition(values: HashTable<any>, properties: HashTable<any>): void;
2977
+ protected convertDataName(name: string): string;
2978
+ protected convertDataValue(name: string, newValue: any): any;
2979
+ protected getContentQuestionValue(): any;
2980
+ protected setContentQuestionValue(val: any): void;
2981
+ protected canSetValueToSurvey(): boolean;
2982
+ protected setQuestionValue(newValue: any, updateIsAnswered?: boolean): void;
2983
+ onSurveyValueChanged(newValue: any): void;
2984
+ protected getValueCore(): any;
2985
+ private isSettingValueChanged;
2986
+ protected setValueChangedDirectly(val: boolean): void;
2987
+ protected initElement(el: SurveyElement): void;
2988
+ updateElementCss(reNew?: boolean): void;
2989
+ protected updateElementCssCore(cssClasses: any): void;
2990
+ protected getDisplayValueCore(keyAsText: boolean, value: any): any;
2991
+ }
2992
+ export class QuestionCompositeModel extends QuestionCustomModelBase {
2993
+ customQuestion: ComponentQuestionJSON;
2994
+ static ItemVariableName: string;
2995
+ private panelWrapper;
2996
+ private textProcessing;
2997
+ constructor(name: string, customQuestion: ComponentQuestionJSON);
2998
+ protected createWrapper(): void;
2999
+ getTemplate(): string;
3000
+ protected getElement(): SurveyElement;
3001
+ protected getCssRoot(cssClasses: any): string;
3002
+ get contentPanel(): PanelModel;
3003
+ hasErrors(fireCallback?: boolean, rec?: any): boolean;
3004
+ updateElementCss(reNew?: boolean): void;
3005
+ getTextProcessor(): ITextProcessor;
3006
+ findQuestionByName(name: string): IQuestion;
3007
+ protected clearValueIfInvisibleCore(reason: string): void;
3008
+ onAnyValueChanged(name: string, questionName: string): void;
3009
+ get hasSingleInput(): boolean;
3010
+ get isContainer(): boolean;
3011
+ protected createPanel(): PanelModel;
3012
+ protected onReadOnlyChanged(): void;
3013
+ onSurveyLoad(): void;
3014
+ private setIsContentElement;
3015
+ setVisibleIndex(val: number): number;
3016
+ runCondition(values: HashTable<any>, properties: HashTable<any>): void;
3017
+ getValue(name: string): any;
3018
+ protected getQuestionByName(name: string): IQuestion;
3019
+ private settingNewValue;
3020
+ setValue(name: string, newValue: any, locNotification: any, allowNotifyValueChanged?: boolean): any;
3021
+ private updateValueCoreWithPanelValue;
3022
+ private getContentPanelValue;
3023
+ private getValueForContentPanel;
3024
+ private setNewValueIntoQuestion;
3025
+ addConditionObjectsByContext(objects: Array<IConditionObject>, context: any): void;
3026
+ protected collectNestedQuestionsCore(questions: Question[], visibleOnly: boolean): void;
3027
+ protected convertDataValue(name: string, newValue: any): any;
3028
+ protected setQuestionValue(newValue: any, updateIsAnswered?: boolean): void;
3029
+ private setValuesIntoQuestions;
3030
+ protected getDisplayValueCore(keyAsText: boolean, value: any): any;
3031
+ private setAfterRenderCallbacks;
3032
+ }
3033
+ }
2629
3034
  declare module "questionfactory" {
2630
3035
  import { Question } from "question";
2631
3036
  import { IElement } from "base-interfaces";
@@ -3483,7 +3888,9 @@ declare module "question_file" {
3483
3888
  confirmRemoveAllMessage: string;
3484
3889
  noFileChosenCaption: string;
3485
3890
  chooseButtonCaption: string;
3486
- takePhotoCaption: string;
3891
+ get takePhotoCaption(): string;
3892
+ set takePhotoCaption(val: string);
3893
+ get locTakePhotoCaption(): LocalizableString;
3487
3894
  replaceButtonCaption: string;
3488
3895
  clearButtonCaption: string;
3489
3896
  removeFileCaption: string;
@@ -3833,6 +4240,7 @@ declare module "question_baseselect" {
3833
4240
  * When users select the "None" item in multi-select questions, all other items become unselected.
3834
4241
  * @see noneItem
3835
4242
  * @see noneText
4243
+ * @see [settings.specialChoicesOrder](https://surveyjs.io/form-library/documentation/api-reference/settings#specialChoicesOrder)
3836
4244
  */
3837
4245
  get showNoneItem(): boolean;
3838
4246
  set showNoneItem(val: boolean);
@@ -3937,6 +4345,7 @@ declare module "question_baseselect" {
3937
4345
  *
3938
4346
  * [View Demo](https://surveyjs.io/form-library/examples/questiontype-dropdownrestfull/ (linkStyle))
3939
4347
  * @see choices
4348
+ * @see [settings.specialChoicesOrder](https://surveyjs.io/form-library/documentation/api-reference/settings#specialChoicesOrder)
3940
4349
  */
3941
4350
  get choicesByUrl(): ChoicesRestful;
3942
4351
  set choicesByUrl(val: ChoicesRestful);
@@ -3959,6 +4368,7 @@ declare module "question_baseselect" {
3959
4368
  * If you need to specify only the `value` property, you can set the `choices` property to an array of primitive values, for example, `[ "item1", "item2", "item3" ]`. These values are both saved in survey results and used as display text.
3960
4369
  * @see choicesByUrl
3961
4370
  * @see choicesFromQuestion
4371
+ * @see [settings.specialChoicesOrder](https://surveyjs.io/form-library/documentation/api-reference/settings#specialChoicesOrder)
3962
4372
  */
3963
4373
  get choices(): Array<any>;
3964
4374
  set choices(newValue: Array<any>);
@@ -4030,6 +4440,7 @@ declare module "question_baseselect" {
4030
4440
  * - `"asc"`- Sorts choice items in ascending order.
4031
4441
  * - `"desc"`- Sorts choice items in ascending order.
4032
4442
  * - `"random"` - Displays choice items in random order.
4443
+ * @see [settings.specialChoicesOrder](https://surveyjs.io/form-library/documentation/api-reference/settings#specialChoicesOrder)
4033
4444
  */
4034
4445
  get choicesOrder(): string;
4035
4446
  set choicesOrder(val: string);
@@ -4044,6 +4455,7 @@ declare module "question_baseselect" {
4044
4455
  * Displays the "Select All", "None", and "Other" choices on individual rows.
4045
4456
  * @see showNoneItem
4046
4457
  * @see showOtherItem
4458
+ * @see [settings.specialChoicesOrder](https://surveyjs.io/form-library/documentation/api-reference/settings#specialChoicesOrder)
4047
4459
  */
4048
4460
  separateSpecialChoices: boolean;
4049
4461
  /**
@@ -4085,6 +4497,15 @@ declare module "question_baseselect" {
4085
4497
  setCanShowOptionItemCallback(func: (item: ItemValue) => boolean): void;
4086
4498
  get newItem(): ItemValue;
4087
4499
  protected addToVisibleChoices(items: Array<ItemValue>, isAddAll: boolean): void;
4500
+ protected addNewItemToVisibleChoices(items: Array<ItemValue>, isAddAll: boolean): void;
4501
+ protected addNonChoicesItems(dict: Array<{
4502
+ index: number;
4503
+ item: ItemValue;
4504
+ }>, isAddAll: boolean): void;
4505
+ protected addNonChoiceItem(dict: Array<{
4506
+ index: number;
4507
+ item: ItemValue;
4508
+ }>, item: ItemValue, order: Array<number>): void;
4088
4509
  protected canShowOptionItem(item: ItemValue, isAddAll: boolean, hasItem: boolean): boolean;
4089
4510
  isItemInList(item: ItemValue): boolean;
4090
4511
  protected get isAddDefaultItems(): boolean;
@@ -4108,8 +4529,6 @@ declare module "question_baseselect" {
4108
4529
  private getChoicesFromSelectQuestion;
4109
4530
  private copyChoiceItem;
4110
4531
  protected get hasActiveChoices(): boolean;
4111
- protected isHeadChoice(item: ItemValue, question: QuestionSelectBase): boolean;
4112
- protected isFootChoice(item: ItemValue, question: QuestionSelectBase): boolean;
4113
4532
  protected isBuiltInChoice(item: ItemValue, question: QuestionSelectBase): boolean;
4114
4533
  protected getChoices(): Array<ItemValue>;
4115
4534
  supportOther(): boolean;
@@ -4168,6 +4587,8 @@ declare module "question_baseselect" {
4168
4587
  protected getItemClassCore(item: any, options: any): string;
4169
4588
  getLabelClass(item: ItemValue): string;
4170
4589
  getControlLabelClass(item: ItemValue): string;
4590
+ private headItemsCount;
4591
+ private footItemsCount;
4171
4592
  get headItems(): ItemValue[];
4172
4593
  get footItems(): ItemValue[];
4173
4594
  get dataChoices(): ItemValue[];
@@ -4513,6 +4934,7 @@ declare module "question_matrixdropdowncolumn" {
4513
4934
  getCellType(): string;
4514
4935
  getCustomCellType(column: MatrixDropdownColumn, row: MatrixDropdownRowModelBase, cellType: string): string;
4515
4936
  onColumnCellTypeChanged(column: MatrixDropdownColumn): void;
4937
+ getCellAriaLabel(rowTitle: string, columnTitle: string): string;
4516
4938
  }
4517
4939
  export var matrixDropdownColumnTypes: any;
4518
4940
  export class MatrixDropdownColumn extends Base implements ILocalizableOwner, IWrapperObject {
@@ -4966,6 +5388,9 @@ declare module "question_matrixdynamic" {
4966
5388
  private dragOrClickHelper;
4967
5389
  constructor(index: number, data: IMatrixDropdownData, value: any);
4968
5390
  get rowName(): string;
5391
+ get dataName(): string;
5392
+ get text(): any;
5393
+ getAccessbilityText(): string;
4969
5394
  get shortcutText(): string;
4970
5395
  }
4971
5396
  /**
@@ -5221,51 +5646,6 @@ declare module "question_matrixdynamic" {
5221
5646
  getRootCss(): string;
5222
5647
  }
5223
5648
  }
5224
- declare module "textPreProcessor" {
5225
- import { Question } from "question";
5226
- import { PanelModel } from "panel";
5227
- import { ISurvey, ITextProcessor } from "base-interfaces";
5228
- export class TextPreProcessorItem {
5229
- start: number;
5230
- end: number;
5231
- }
5232
- export class TextPreProcessorValue {
5233
- name: string;
5234
- returnDisplayValue: boolean;
5235
- constructor(name: string, returnDisplayValue: boolean);
5236
- value: any;
5237
- isExists: boolean;
5238
- canProcess: boolean;
5239
- }
5240
- export class TextPreProcessor {
5241
- private _unObservableValues;
5242
- private get hasAllValuesOnLastRunValue();
5243
- private set hasAllValuesOnLastRunValue(value);
5244
- onProcess: (textValue: TextPreProcessorValue) => void;
5245
- process(text: string, returnDisplayValue?: boolean, doEncoding?: boolean): string;
5246
- processValue(name: string, returnDisplayValue: boolean): TextPreProcessorValue;
5247
- get hasAllValuesOnLastRun(): boolean;
5248
- private getItems;
5249
- private getName;
5250
- }
5251
- export class QuestionTextProcessor implements ITextProcessor {
5252
- protected variableName: string;
5253
- private textPreProcessor;
5254
- constructor(variableName: string);
5255
- processValue(name: string, returnDisplayValue: boolean): TextPreProcessorValue;
5256
- protected get survey(): ISurvey;
5257
- protected get panel(): PanelModel;
5258
- protected getValues(): any;
5259
- protected getQuestionByName(name: string): Question;
5260
- protected getParentTextProcessor(): ITextProcessor;
5261
- protected onCustomProcessText(textValue: TextPreProcessorValue): boolean;
5262
- protected getQuestionDisplayText(question: Question): string;
5263
- private getProcessedTextValue;
5264
- processText(text: string, returnDisplayValue: boolean): string;
5265
- processTextEx(text: string, returnDisplayValue: boolean): any;
5266
- private processTextCore;
5267
- }
5268
- }
5269
5649
  declare module "themes" {
5270
5650
  import { HorizontalAlignment, VerticalAlignment } from "base-interfaces";
5271
5651
  export type ImageFit = "auto" | "contain" | "cover";
@@ -6091,7 +6471,7 @@ declare module "question_paneldynamic" {
6091
6471
  declare module "survey-events-api" {
6092
6472
  import { IAction } from "actions/action";
6093
6473
  import { Base } from "base";
6094
- import { IElement, ISurveyElement, IValueItemCustomPropValues } from "base-interfaces";
6474
+ import { IElement, IPanel, ISurveyElement, IValueItemCustomPropValues } from "base-interfaces";
6095
6475
  import { ItemValue } from "itemvalue";
6096
6476
  import { PageModel } from "page";
6097
6477
  import { PanelModel, PanelModelBase } from "panel";
@@ -6600,7 +6980,7 @@ declare module "survey-events-api" {
6600
6980
  }
6601
6981
  export interface DownloadFileEvent extends LoadFilesEvent {
6602
6982
  /**
6603
- * A callback function that you should call when a file is downloaded successfully or when deletion fails. Pass `"success"` or `"error"` as the first argument to indicate the operation status. As the second argument, you can pass the downloaded file's data as a Base64 string if file upload was successful or an error message if file upload failed.
6983
+ * A callback function that you should call when a file is downloaded successfully or when deletion fails. Pass `"success"` or `"error"` as the first argument to indicate the operation status. As the second argument, you can pass the downloaded file's data as a Base64 string if file download was successful or an error message if file download failed.
6604
6984
  */
6605
6985
  callback: (status: string, data?: any) => any;
6606
6986
  /**
@@ -6614,7 +6994,7 @@ declare module "survey-events-api" {
6614
6994
  }
6615
6995
  export interface ClearFilesEvent extends LoadFilesEvent {
6616
6996
  /**
6617
- * A callback function that you should call when files are deleted successfully or when deletion fails. Pass `"success"` or `"error"` as the first argument to indicate the operation status. As the second argument, you can pass deleted files' data (`options.value`) if file upload was successful or an error message if file upload failed.
6997
+ * A callback function that you should call when files are deleted successfully or when deletion fails. Pass `"success"` or `"error"` as the first argument to indicate the operation status. As the second argument, you can pass deleted files' data (`options.value`) if file deletion was successful or an error message if file deletion failed.
6618
6998
  */
6619
6999
  callback: (status: string, data?: any) => any;
6620
7000
  /**
@@ -6949,27 +7329,39 @@ declare module "survey-events-api" {
6949
7329
  /**
6950
7330
  * A survey element being dragged.
6951
7331
  */
6952
- target: IElement;
7332
+ draggedElement: IElement;
6953
7333
  /**
6954
- * A survey element from which `target` is being dragged. This parameter is `null` if `target` is being dragged from the [Toolbox](https://surveyjs.io/survey-creator/documentation/toolbox).
7334
+ * A survey element from which `draggedElement` is being dragged. This parameter is `null` if `draggedElement` is being dragged from the [Toolbox](https://surveyjs.io/survey-creator/documentation/toolbox).
6955
7335
  */
6956
- source: IElement;
7336
+ fromElement: IPanel;
7337
+ /**
7338
+ * A survey element to which `draggedElement` is being dragged.
7339
+ */
7340
+ toElement: IElement;
6957
7341
  /**
6958
7342
  * A survey element before which the target element will be placed. This parameter is `null` if the parent container (page or panel) has no elements or if the target element will be placed below all other elements within the container.
6959
7343
  */
6960
7344
  insertBefore: IElement;
6961
7345
  /**
6962
- * A survey element after which `target` will be placed. This parameter is `null` if the parent container (page or panel) has no elements or if `target` will be placed above all other elements within the container.
7346
+ * A survey element after which `draggedElement` will be placed. This parameter is `null` if the parent container (page or panel) has no elements or if `draggedElement` will be placed above all other elements within the container.
6963
7347
  */
6964
7348
  insertAfter: IElement;
6965
7349
  /**
6966
- * A parent container (page or panel) within which `target` will be placed.
7350
+ * A parent container (page or panel) within which `draggedElement` will be placed.
6967
7351
  */
6968
7352
  parent: ISurveyElement;
6969
7353
  /**
6970
7354
  * A Boolean property that you can set to `false` if you want to cancel the drag and drop operation.
6971
7355
  */
6972
7356
  allow: boolean;
7357
+ /**
7358
+ * Obsolete. Use `options.draggedElement` instead.
7359
+ */
7360
+ target: IElement;
7361
+ /**
7362
+ * Obsolete. Use `options.toElement` instead.
7363
+ */
7364
+ source: IElement;
6973
7365
  }
6974
7366
  export interface ScrollingElementToTopEvent {
6975
7367
  /**
@@ -7390,6 +7782,15 @@ declare module "notifier" {
7390
7782
  import { Base } from "base";
7391
7783
  import { ActionContainer } from "actions/container";
7392
7784
  import { IAction } from "actions/action";
7785
+ interface INotifierCssClasses {
7786
+ root: string;
7787
+ rootWithButtons: string;
7788
+ info: string;
7789
+ error: string;
7790
+ success: string;
7791
+ button: string;
7792
+ shown: string;
7793
+ }
7393
7794
  export class Notifier extends Base {
7394
7795
  private cssClasses;
7395
7796
  active: boolean;
@@ -7397,18 +7798,11 @@ declare module "notifier" {
7397
7798
  message: string;
7398
7799
  css: string;
7399
7800
  timeout: number;
7400
- timer: any;
7401
- private actionsVisibility;
7402
- actionBar: ActionContainer;
7403
- showActions: boolean;
7404
- constructor(cssClasses: {
7405
- root: string;
7406
- info: string;
7407
- error: string;
7408
- success: string;
7409
- button: string;
7410
- shown: string;
7411
- });
7801
+ timer: any;
7802
+ private actionsVisibility;
7803
+ actionBar: ActionContainer;
7804
+ showActions: boolean;
7805
+ constructor(cssClasses: INotifierCssClasses);
7412
7806
  getCssClass(type: string): string;
7413
7807
  updateActionsVisibility(type: string): void;
7414
7808
  notify(message: string, type?: string, waitUserAction?: boolean): void;
@@ -7476,11 +7870,10 @@ declare module "question_textbase" {
7476
7870
  protected setQuestionValue(newValue: any, updateIsAnswered?: boolean): void;
7477
7871
  protected convertToCorrectValue(val: any): any;
7478
7872
  protected getValueSeparator(): string;
7479
- disableNativeUndoRedo: boolean;
7480
- protected checkForUndo(event: KeyboardEvent): void;
7481
7873
  protected getControlCssClassBuilder(): CssClassBuilder;
7482
7874
  getControlClass(): string;
7483
7875
  get isNewA11yStructure(): boolean;
7876
+ onKeyDownPreprocess: (event: any) => void;
7484
7877
  }
7485
7878
  }
7486
7879
  declare module "question_text" {
@@ -8730,6 +9123,8 @@ declare module "survey" {
8730
9123
  *
8731
9124
  * - `"advanced"`\
8732
9125
  * An advanced header view applies the same properties as the basic view, plus [header settings](https://surveyjs.io/form-library/documentation/api-reference/iheader) from the [survey theme](https://surveyjs.io/form-library/documentation/api-reference/itheme#header). The advanced view features a more flexible header layout, a capability to specify a background image, and other settings that give a more professional look to the survey header.
9126
+ *
9127
+ * [View Demo](https://surveyjs.io/form-library/examples/brand-your-survey-header/ (linkStyle))
8733
9128
  */
8734
9129
  headerView: "advanced" | "basic";
8735
9130
  private getNavigationCss;
@@ -9659,6 +10054,16 @@ declare module "survey" {
9659
10054
  get completedState(): string;
9660
10055
  get completedStateText(): string;
9661
10056
  protected setCompletedState(value: string, text: string): void;
10057
+ /**
10058
+ * Displays a toast notification with a specified message.
10059
+ *
10060
+ * Depending on the `type` argument, a survey can display the following notification types:
10061
+ *
10062
+ * ![Toast notification types in SurveyJS Form Library](https://surveyjs.io//Content/Images/docs/notification-types.png)
10063
+ * @param message A message to display.
10064
+ * @param type A notification type: `"info"` (default), `"success"`, or `"error"`.
10065
+ * @param showActions For internal use.
10066
+ */
9662
10067
  notify(message: string, type: string, showActions?: boolean): void;
9663
10068
  /**
9664
10069
  * Resets the survey [`state`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#state) and, optionally, [`data`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#data). If `state` is `"completed"`, it becomes `"running"`.
@@ -9885,9 +10290,9 @@ declare module "survey" {
9885
10290
  private runningPages;
9886
10291
  private onShowingPreviewChanged;
9887
10292
  private changeCurrentPageFromPreview;
9888
- private origionalPages;
10293
+ private originalPages;
9889
10294
  protected onQuestionsOnPageModeChanged(oldValue: string): void;
9890
- private restoreOrigionalPages;
10295
+ private restoreOriginalPages;
9891
10296
  private getPageStartIndex;
9892
10297
  private setupPagesForPageModes;
9893
10298
  private createPagesForQuestionOnPageMode;
@@ -11228,6 +11633,7 @@ declare module "question" {
11228
11633
  isMobile: boolean;
11229
11634
  forceIsInputReadOnly: boolean;
11230
11635
  constructor(name: string);
11636
+ protected getDefaultTitle(): string;
11231
11637
  protected createLocTitleProperty(): LocalizableString;
11232
11638
  getSurvey(live?: boolean): ISurvey;
11233
11639
  getValueName(): string;
@@ -11620,6 +12026,7 @@ declare module "question" {
11620
12026
  * @see otherItem
11621
12027
  * @see otherErrorText
11622
12028
  * @see showCommentArea
12029
+ * @see [settings.specialChoicesOrder](https://surveyjs.io/form-library/documentation/api-reference/settings#specialChoicesOrder)
11623
12030
  */
11624
12031
  get showOtherItem(): boolean;
11625
12032
  set showOtherItem(val: boolean);
@@ -12141,6 +12548,8 @@ declare module "martixBase" {
12141
12548
  */
12142
12549
  get rowTitleWidth(): string;
12143
12550
  set rowTitleWidth(val: string);
12551
+ getCellAriaLabel(rowTitle: string, columnTitle: string): string;
12552
+ get isNewA11yStructure(): boolean;
12144
12553
  }
12145
12554
  }
12146
12555
  declare module "question_matrixdropdownbase" {
@@ -12187,6 +12596,7 @@ declare module "question_matrixdropdownbase" {
12187
12596
  data: IMatrixDropdownData;
12188
12597
  private questionValue;
12189
12598
  constructor(column: MatrixDropdownColumn, row: MatrixDropdownRowModelBase, data: IMatrixDropdownData);
12599
+ private updateCellQuestionTitleDueToAccessebility;
12190
12600
  locStrsChanged(): void;
12191
12601
  protected createQuestion(column: MatrixDropdownColumn, row: MatrixDropdownRowModelBase, data: IMatrixDropdownData): Question;
12192
12602
  get question(): Question;
@@ -12222,10 +12632,12 @@ declare module "question_matrixdropdownbase" {
12222
12632
  constructor(data: IMatrixDropdownData, value: any);
12223
12633
  get id(): string;
12224
12634
  get rowName(): any;
12635
+ get dataName(): string;
12225
12636
  get text(): any;
12226
12637
  get value(): any;
12227
12638
  set value(value: any);
12228
12639
  get locText(): LocalizableString;
12640
+ getAccessbilityText(): string;
12229
12641
  get hasPanel(): boolean;
12230
12642
  get detailPanel(): PanelModel;
12231
12643
  get detailPanelId(): string;
@@ -13953,6 +14365,32 @@ declare module "settings" {
13953
14365
  * Default value: `"none"`
13954
14366
  */
13955
14367
  noneItemValue: string;
14368
+ /**
14369
+ * An object whose properties specify the order of the special choice items (None, Other, Select All) in select-based questions.
14370
+ *
14371
+ * Default value: `{ selectAllItem: [-1], noneItem: [1], otherItem: [2] }`
14372
+ *
14373
+ * Use this object to reorder special choices. Each property accepts an array of integer numbers. Negative numbers place a special choice item above regular choice items, positive numbers place it below them. For instance, the code below specifies the following order of choices: None, Select All, regular choices, Other.
14374
+ *
14375
+ * ```js
14376
+ * import { settings } from "survey-core";
14377
+ *
14378
+ * settings.specialChoicesOrder.noneItem = [-2];
14379
+ * settings.specialChoicesOrder.selectAllItem = [-1];
14380
+ * settings.specialChoicesOrder.otherItem = [1];
14381
+ * ```
14382
+ *
14383
+ * If you want to duplicate a special choice item above and below other choices, add two numbers to the corresponding array:
14384
+ *
14385
+ * ```js
14386
+ * settings.specialChoicesOrder.selectAllItem = [-1, 3] // Displays Select All above and below other choices
14387
+ * ```
14388
+ */
14389
+ specialChoicesOrder: {
14390
+ selectAllItem: number[];
14391
+ noneItem: number[];
14392
+ otherItem: number[];
14393
+ };
13956
14394
  /**
13957
14395
  * A list of supported validators by question type.
13958
14396
  */
@@ -14139,7 +14577,8 @@ declare module "dropdownListModel" {
14139
14577
  private qustionPropertyChangedHandler;
14140
14578
  constructor(question: Question, onSelectionChanged?: (item: IAction, ...params: any[]) => void);
14141
14579
  get popupModel(): PopupModel;
14142
- get inputReadOnly(): boolean;
14580
+ get noTabIndex(): boolean;
14581
+ get filterReadOnly(): boolean;
14143
14582
  get filterStringEnabled(): boolean;
14144
14583
  get inputMode(): "none" | "text";
14145
14584
  setSearchEnabled(newValue: boolean): void;
@@ -14633,8 +15072,11 @@ declare module "question_checkbox" {
14633
15072
  private noneIndexInArray;
14634
15073
  protected canUseFilteredChoices(): boolean;
14635
15074
  protected supportSelectAll(): boolean;
14636
- protected addToVisibleChoices(items: Array<ItemValue>, isAddAll: boolean): void;
14637
- protected isHeadChoice(item: ItemValue, question: QuestionSelectBase): boolean;
15075
+ protected addNonChoicesItems(dict: Array<{
15076
+ index: number;
15077
+ item: ItemValue;
15078
+ }>, isAddAll: boolean): void;
15079
+ protected isBuiltInChoice(item: ItemValue, question: QuestionSelectBase): boolean;
14638
15080
  isItemInList(item: ItemValue): boolean;
14639
15081
  protected getDisplayValueCore(keysAsText: boolean, value: any): any;
14640
15082
  protected clearIncorrectValuesCore(): void;
@@ -14905,7 +15347,8 @@ declare module "question_imagepicker" {
14905
15347
  set contentMode(val: string);
14906
15348
  protected convertDefaultValue(val: any): any;
14907
15349
  get inputType(): "checkbox" | "radio";
14908
- protected isFootChoice(_item: ItemValue, _question: QuestionSelectBase): boolean;
15350
+ protected isBuiltInChoice(item: ItemValue, question: QuestionSelectBase): boolean;
15351
+ protected addToVisibleChoices(items: Array<ItemValue>, isAddAll: boolean): void;
14909
15352
  getSelectBaseRootCss(): string;
14910
15353
  private isResponsiveValue;
14911
15354
  maxImageWidth: number;
@@ -14934,6 +15377,7 @@ declare module "dragdrop/choices" {
14934
15377
  import { QuestionSelectBase } from "question_baseselect";
14935
15378
  import { DragDropCore } from "dragdrop/core";
14936
15379
  export class DragDropChoices extends DragDropCore<QuestionSelectBase> {
15380
+ private imagepickerControlsNode;
14937
15381
  protected get draggedElementType(): string;
14938
15382
  protected createDraggedElementShortcut(text: string, draggedElementNode: HTMLElement, event: PointerEvent): HTMLElement;
14939
15383
  private createImagePickerShortcut;
@@ -15726,7 +16170,9 @@ declare module "question_signaturepad" {
15726
16170
  *
15727
16171
  * Default value: `false`
15728
16172
  *
15729
- * > The signature area is scaled only for display. The resulting image will have dimensions specified by the [`signatureHeight`](#signatureHeight) and [`signatureWidth`](#signatureWidth) properties.
16173
+ * This property auto-scales the signature area to fill all available width within the question box while maintaining the default 3:2 aspect ratio. If you set [custom width](#signatureWidth) and [height](#signatureHeight) values, the setting will keep the aspect ratio of these dimensions.
16174
+ *
16175
+ * > The signature area is scaled only for display. The image saved in survey results will have dimensions specified by the [`signatureHeight`](#signatureHeight) and [`signatureWidth`](#signatureWidth) properties.
15730
16176
  */
15731
16177
  signatureAutoScaleEnabled: boolean;
15732
16178
  /**
@@ -15869,441 +16315,90 @@ declare module "popup-survey" {
15869
16315
  * Set this property to a negative value (for instance, -1) to keep the pop-up window open without a time limit.
15870
16316
  */
15871
16317
  closeOnCompleteTimeout: number;
15872
- /**
15873
- * Indicates whether the pop-up survey appears on the page, regardless of its [expand state](#isExpanded).
15874
- *
15875
- * You can set this property to `true` or `false` to control visibility of the pop-up survey. Alternatively, you can use the [`show()`](#show) and [`hide()`](#hide) methods.
15876
- */
15877
- get isShowing(): boolean;
15878
- set isShowing(val: boolean);
15879
- /**
15880
- * Shows the pop-up survey. The survey may appear [expanded or collapsed](#isExpanded).
15881
- *
15882
- * As an alternative to this method, you can set the [`isShowing`](#isShowing) property to `true`.
15883
- * @see hide
15884
- */
15885
- show(): void;
15886
- /**
15887
- * Hides the pop-up survey.
15888
- *
15889
- * As an alternative to this method, you can set the [`isShowing`](#isShowing) property to `false`.
15890
- * @see show
15891
- * @see expand
15892
- * @see collapse
15893
- */
15894
- hide(): void;
15895
- /**
15896
- * Indicates whether the pop-up window is expanded or collapsed.
15897
- *
15898
- * You can set this property to `true` or `false` to control the expand state of the pop-up survey. Alternatively, you can use the [`expand()`](#expand) and [`collapse()`](#collapse) methods.
15899
- */
15900
- get isExpanded(): boolean;
15901
- set isExpanded(val: boolean);
15902
- protected onExpandedChanged(): void;
15903
- /**
15904
- * A title for the pop-up window. If this property is undefined, the title is taken from [`SurveyModel`](#survey)'s [`title`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#title) property.
15905
- */
15906
- get title(): string;
15907
- set title(value: string);
15908
- get locTitle(): LocalizableString;
15909
- /**
15910
- * Expands the pop-up window.
15911
- *
15912
- * As an alternative to this method, you can set the [`isExpanded`](#isExpanded) property to `true`.
15913
- * @see collapse
15914
- */
15915
- expand(): void;
15916
- /**
15917
- * Collapses the pop-up window, leaving only the survey title visible.
15918
- *
15919
- * As an alternative to this method, you can set the [`isExpanded`](#isExpanded) property to `false`.
15920
- * @see expand
15921
- */
15922
- collapse(): void;
15923
- changeExpandCollapse(): void;
15924
- /**
15925
- * Specifies whether to display a button that closes the pop-up window.
15926
- *
15927
- * Default value: `false`
15928
- *
15929
- * If you allow users to close the pop-up window, make sure to implement a UI element that opens it. This element should call the [`show()`](#show) method or enable the [`isShowing`](#isShowing) property.
15930
- * @see expand
15931
- * @see collapse
15932
- * @see hide
15933
- */
15934
- get allowClose(): boolean;
15935
- set allowClose(val: boolean);
15936
- get css(): any;
15937
- get cssButton(): string;
15938
- get cssRoot(): string;
15939
- get cssBody(): string;
15940
- get cssHeaderRoot(): string;
15941
- get cssHeaderTitle(): string;
15942
- get cssHeaderButton(): string;
15943
- get renderedWidth(): string;
15944
- width: string;
15945
- private updateCss;
15946
- private updateCssButton;
15947
- private setCssButton;
15948
- protected createSurvey(jsonObj: any): SurveyModel;
15949
- protected onSurveyComplete(): void;
15950
- onScroll(): void;
15951
- }
15952
- /**
15953
- * Obsolete. Please use PopupSurvey
15954
- */
15955
- export class SurveyWindowModel extends PopupSurveyModel {
15956
- }
15957
- }
15958
- declare module "question_custom" {
15959
- import { Question, IConditionObject } from "question";
15960
- import { ISurveyImpl, ISurveyData, ITextProcessor, IPanel, IElement, IQuestion, IProgressInfo } from "base-interfaces";
15961
- import { SurveyElement } from "survey-element";
15962
- import { PanelModel } from "panel";
15963
- import { HashTable } from "helpers";
15964
- import { ItemValue } from "itemvalue";
15965
- /**
15966
- * An interface used to create custom question types.
15967
- *
15968
- * Refer to the following articles for more information:
15969
- *
15970
- * - [Create Specialized Question Types](https://surveyjs.io/form-library/documentation/customize-question-types/create-specialized-question-types)
15971
- * - [Create Composite Question Types](https://surveyjs.io/form-library/documentation/customize-question-types/create-composite-question-types)
15972
- */
15973
- export interface ICustomQuestionTypeConfiguration {
15974
- /**
15975
- * A name used to identify a custom question type.
15976
- *
15977
- * @see title
15978
- */
15979
- name: string;
15980
- /**
15981
- * A title used for this custom question type in the UI. When `title` is not specified, the `name` property value is used.
15982
- *
15983
- * @see name
15984
- */
15985
- title?: string;
15986
- /**
15987
- * The name of an icon to use for the custom question type.
15988
- *
15989
- * [UI Icons](https://surveyjs.io/form-library/documentation/icons (linkStyle))
15990
- */
15991
- iconName?: string;
15992
- /**
15993
- * A function that is called when the custom question type is initialized. Use it to add, remove, or modify the type's properties (see [Override Base Question Properties](https://surveyjs.io/form-library/documentation/customize-question-types/create-composite-question-types#override-base-question-properties)).
15994
- */
15995
- onInit?(): void;
15996
- /**
15997
- * Specifies whether the custom question type is available in the Toolbox and the Add Question menu.
15998
- *
15999
- * Default value: `true`
16000
- *
16001
- * Set this property to `false` if your custom question type is used only to customize Property Grid content and is not meant for a survey.
16002
- */
16003
- showInToolbox?: boolean;
16004
- /**
16005
- * A function that is called when the custom question is created. Use it to access questions nested within a [composite question type](https://surveyjs.io/form-library/documentation/customize-question-types/create-composite-question-types).
16006
- *
16007
- * Parameters:
16008
- *
16009
- * - `question`: [Question](https://surveyjs.io/Documentation/Library?id=Question)\
16010
- * The custom question.
16011
- */
16012
- onCreated?(question: Question): void;
16013
- /**
16014
- * A function that is called when JSON schemas are loaded.
16015
- *
16016
- * Parameters:
16017
- *
16018
- * - `question`: [Question](https://surveyjs.io/Documentation/Library?id=Question)\
16019
- * A custom question.
16020
- */
16021
- onLoaded?(question: Question): void;
16022
- /**
16023
- * A function that is called after the entire question is rendered.
16024
- *
16025
- * Parameters:
16026
- *
16027
- * - `question`: [Question](https://surveyjs.io/Documentation/Library?id=Question)\
16028
- * A custom question.
16029
- * - `htmlElement`: `any`\
16030
- * An HTML element that represents the custom question.
16031
- */
16032
- onAfterRender?(question: Question, htmlElement: any): void;
16033
- /**
16034
- * A function that is called each time a question nested within a [composite question](https://surveyjs.io/form-library/documentation/customize-question-types/create-composite-question-types) is rendered.
16035
- *
16036
- * Parameters:
16037
- *
16038
- * - `question`: [Question](https://surveyjs.io/Documentation/Library?id=Question)\
16039
- * A composite question.
16040
- * - `element`: [Question](https://surveyjs.io/Documentation/Library?id=Question)\
16041
- * A nested question.
16042
- * - `htmlElement`: `any`\
16043
- * An HTML element that represents a nested question.
16044
- */
16045
- onAfterRenderContentElement?(question: Question, element: Question, htmlElement: any): void;
16046
- /**
16047
- * A function that is called each time a question nested within a [composite question](https://surveyjs.io/form-library/documentation/customize-question-types/create-composite-question-types) requires an update of its CSS classes.
16048
- *
16049
- * Parameters:
16050
- *
16051
- * - `question`: [Question](https://surveyjs.io/Documentation/Library?id=Question)\
16052
- * A composite question.
16053
- * - `element`: [Question](https://surveyjs.io/Documentation/Library?id=Question)\
16054
- * A nested question.
16055
- * - `cssClasses`: `any`\
16056
- * An object with CSS classes applied to a nested question, for example, `{ root: "class1", button: "class2" }`. You can modify this object to apply custom CSS classes.
16057
- */
16058
- onUpdateQuestionCssClasses?(question: Question, element: Question, cssClasses: any): void;
16059
- /**
16060
- * A function that is called when a custom question type property is changed. Use it to handle property changes.
16061
- *
16062
- * Parameters:
16063
- *
16064
- * - `question`: [Question](https://surveyjs.io/Documentation/Library?id=Question)\
16065
- * A custom question.
16066
- * - `propertyName`: `string`\
16067
- * The name of the changed property.
16068
- * - `newValue`: `any`\
16069
- * A new value for the property.
16070
- */
16071
- onPropertyChanged?(question: Question, propertyName: string, newValue: any): void;
16072
- /**
16073
- * A function that is called after the question value is changed.
16074
- *
16075
- * Parameters:
16076
- *
16077
- * - `question`: [Question](https://surveyjs.io/Documentation/Library?id=Question)\
16078
- * A custom question.
16079
- * - `name`: `string`\
16080
- * The question's [name](https://surveyjs.io/Documentation/Library?id=Question#name).
16081
- * - `newValue`: `any`\
16082
- * A new value for the question.
16083
- */
16084
- onValueChanged?(question: Question, name: string, newValue: any): void;
16085
- /**
16086
- * A function that is called before a question value is changed.
16087
- *
16088
- * This function should return the value you want to save: `newValue`, a custom value, or `undefined` if you want to clear the question value.
16089
- *
16090
- * Parameters:
16091
- *
16092
- * - `question`: [Question](https://surveyjs.io/Documentation/Library?id=Question)\
16093
- * A custom question.
16094
- * - `name`: `string`\
16095
- * The question's [name](https://surveyjs.io/Documentation/Library?id=Question#name).
16096
- * - `newValue`: `any`\
16097
- * A new value for the question.
16318
+ /**
16319
+ * Indicates whether the pop-up survey appears on the page, regardless of its [expand state](#isExpanded).
16320
+ *
16321
+ * You can set this property to `true` or `false` to control visibility of the pop-up survey. Alternatively, you can use the [`show()`](#show) and [`hide()`](#hide) methods.
16098
16322
  */
16099
- onValueChanging?(question: Question, name: string, newValue: any): any;
16323
+ get isShowing(): boolean;
16324
+ set isShowing(val: boolean);
16100
16325
  /**
16101
- * A function that is called when an [ItemValue](https://surveyjs.io/Documentation/Library?id=itemvalue) property is changed.
16326
+ * Shows the pop-up survey. The survey may appear [expanded or collapsed](#isExpanded).
16102
16327
  *
16103
- * Parameters:
16328
+ * As an alternative to this method, you can set the [`isShowing`](#isShowing) property to `true`.
16329
+ * @see hide
16330
+ */
16331
+ show(): void;
16332
+ /**
16333
+ * Hides the pop-up survey.
16104
16334
  *
16105
- * - `question`: [Question](https://surveyjs.io/Documentation/Library?id=Question)\
16106
- * A custom question.
16107
- * - `options.obj`: [ItemValue](https://surveyjs.io/Documentation/Library?id=itemvalue)\
16108
- * An `ItemValue` object.
16109
- * - `options.propertyName`: `string`\
16110
- * The name of the property to which an array of `ItemValue` objects is assigned (for example, `"choices"` or `"rows"`).
16111
- * - `options.name`: `string`\
16112
- * The name of the changed property: `"text"` or `"value"`.
16113
- * - `options.newValue`: `any`\
16114
- * A new value for the property.
16335
+ * As an alternative to this method, you can set the [`isShowing`](#isShowing) property to `false`.
16336
+ * @see show
16337
+ * @see expand
16338
+ * @see collapse
16115
16339
  */
16116
- onItemValuePropertyChanged?(question: Question, options: {
16117
- obj: ItemValue;
16118
- propertyName: string;
16119
- name: string;
16120
- newValue: any;
16121
- }): void;
16340
+ hide(): void;
16122
16341
  /**
16123
- * A function that allows you to override the default `getDisplayValue()` implementation.
16342
+ * Indicates whether the pop-up window is expanded or collapsed.
16343
+ *
16344
+ * You can set this property to `true` or `false` to control the expand state of the pop-up survey. Alternatively, you can use the [`expand()`](#expand) and [`collapse()`](#collapse) methods.
16124
16345
  */
16125
- getDisplayValue?: ((keyAsText: boolean, value: any) => any) | ((question: Question) => any);
16346
+ get isExpanded(): boolean;
16347
+ set isExpanded(val: boolean);
16348
+ protected onExpandedChanged(): void;
16126
16349
  /**
16127
- * JSON schemas of nested questions. Specify this property to create a [composite question type](https://surveyjs.io/form-library/documentation/customize-question-types/create-composite-question-types).
16350
+ * A title for the pop-up window. If this property is undefined, the title is taken from [`SurveyModel`](#survey)'s [`title`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#title) property.
16128
16351
  */
16129
- elementsJSON?: any;
16352
+ get title(): string;
16353
+ set title(value: string);
16354
+ get locTitle(): LocalizableString;
16130
16355
  /**
16131
- * A function that allows you to create nested questions if you do not specify the `elementsJSON` property.
16356
+ * Expands the pop-up window.
16132
16357
  *
16133
- * @see elementsJSON
16358
+ * As an alternative to this method, you can set the [`isExpanded`](#isExpanded) property to `true`.
16359
+ * @see collapse
16134
16360
  */
16135
- createElements?: any;
16361
+ expand(): void;
16136
16362
  /**
16137
- * A JSON schema for a built-in question type on which the custom question type is based.
16363
+ * Collapses the pop-up window, leaving only the survey title visible.
16138
16364
  *
16139
- * Refer to the [Create Specialized Question Types](https://surveyjs.io/form-library/documentation/customize-question-types/create-specialized-question-types) help topic for more information.
16365
+ * As an alternative to this method, you can set the [`isExpanded`](#isExpanded) property to `false`.
16366
+ * @see expand
16140
16367
  */
16141
- questionJSON?: any;
16368
+ collapse(): void;
16369
+ changeExpandCollapse(): void;
16142
16370
  /**
16143
- * A function that allows you to create a custom question if you do not specify the `questionJSON` property.
16371
+ * Specifies whether to display a button that closes the pop-up window.
16144
16372
  *
16145
- * @see questionJSON
16373
+ * Default value: `false`
16374
+ *
16375
+ * If you allow users to close the pop-up window, make sure to implement a UI element that opens it. This element should call the [`show()`](#show) method or enable the [`isShowing`](#isShowing) property.
16376
+ * @see expand
16377
+ * @see collapse
16378
+ * @see hide
16146
16379
  */
16147
- createQuestion?: any;
16148
- valueToQuestion?: (val: any) => any;
16149
- valueFromQuestion?: (val: any) => any;
16150
- getValue?: (val: any) => any;
16151
- setValue?: (val: any) => any;
16152
- }
16153
- export class ComponentQuestionJSON {
16154
- name: string;
16155
- json: ICustomQuestionTypeConfiguration;
16156
- constructor(name: string, json: ICustomQuestionTypeConfiguration);
16157
- onInit(): void;
16158
- onCreated(question: Question): void;
16159
- onLoaded(question: Question): void;
16160
- onAfterRender(question: Question, htmlElement: any): void;
16161
- onAfterRenderContentElement(question: Question, element: Question, htmlElement: any): void;
16162
- onUpdateQuestionCssClasses(question: Question, element: Question, css: any): void;
16163
- onPropertyChanged(question: Question, propertyName: string, newValue: any): void;
16164
- onValueChanged(question: Question, name: string, newValue: any): void;
16165
- onValueChanging(question: Question, name: string, newValue: any): any;
16166
- onItemValuePropertyChanged(question: Question, item: ItemValue, propertyName: string, name: string, newValue: any): void;
16167
- getDisplayValue(keyAsText: boolean, value: any, question: Question): any;
16168
- setValueToQuestion(val: any): any;
16169
- getValueFromQuestion(val: any): any;
16170
- get isComposite(): boolean;
16171
- }
16172
- export class ComponentCollection {
16173
- static Instance: ComponentCollection;
16174
- private customQuestionValues;
16175
- onCreateComposite: (name: string, questionJSON: ComponentQuestionJSON) => QuestionCompositeModel;
16176
- onCreateCustom: (name: string, questionJSON: ComponentQuestionJSON) => QuestionCustomModel;
16177
- onAddingJson: (name: string, isComposite: boolean) => void;
16178
- add(json: ICustomQuestionTypeConfiguration): void;
16179
- get items(): Array<ComponentQuestionJSON>;
16180
- getCustomQuestionByName(name: string): ComponentQuestionJSON;
16181
- clear(): void;
16182
- createQuestion(name: string, questionJSON: ComponentQuestionJSON): Question;
16183
- protected createCompositeModel(name: string, questionJSON: ComponentQuestionJSON): QuestionCompositeModel;
16184
- protected createCustomModel(name: string, questionJSON: ComponentQuestionJSON): QuestionCustomModel;
16185
- }
16186
- export abstract class QuestionCustomModelBase extends Question implements ISurveyImpl, ISurveyData, IPanel {
16187
- customQuestion: ComponentQuestionJSON;
16188
- constructor(name: string, customQuestion: ComponentQuestionJSON);
16189
- getType(): string;
16190
- locStrsChanged(): void;
16191
- protected createWrapper(): void;
16192
- protected onPropertyValueChanged(name: string, oldValue: any, newValue: any): void;
16193
- itemValuePropertyChanged(item: ItemValue, name: string, oldValue: any, newValue: any): void;
16194
- onFirstRendering(): void;
16195
- onHidingContent(): void;
16196
- getProgressInfo(): IProgressInfo;
16197
- protected abstract getElement(): SurveyElement;
16198
- protected initElement(el: SurveyElement): void;
16199
- protected isSettingValOnLoading: boolean;
16200
- setSurveyImpl(value: ISurveyImpl, isLight?: boolean): void;
16201
- onSurveyLoad(): void;
16202
- afterRenderQuestionElement(el: HTMLElement): void;
16203
- afterRenderCore(el: any): void;
16204
- protected onUpdateQuestionCssClasses(element: Question, css: any): void;
16205
- protected setQuestionValue(newValue: any, updateIsAnswered?: boolean): void;
16206
- protected setNewValue(newValue: any): void;
16207
- getSurveyData(): ISurveyData;
16208
- getTextProcessor(): ITextProcessor;
16209
- getValue(name: string): any;
16210
- setValue(name: string, newValue: any, locNotification: any, allowNotifyValueChanged?: boolean): any;
16211
- protected getQuestionByName(name: string): IQuestion;
16212
- protected isValueChanging(name: string, newValue: any): boolean;
16213
- protected convertDataName(name: string): string;
16214
- protected convertDataValue(name: string, newValue: any): any;
16215
- getVariable(name: string): any;
16216
- setVariable(name: string, newValue: any): void;
16217
- getComment(name: string): string;
16218
- setComment(name: string, newValue: string, locNotification: any): any;
16219
- getAllValues(): any;
16220
- getFilteredValues(): any;
16221
- getFilteredProperties(): any;
16222
- findQuestionByName(name: string): IQuestion;
16223
- addElement(element: IElement, index: number): void;
16224
- removeElement(element: IElement): boolean;
16225
- getQuestionTitleLocation(): string;
16226
- getQuestionStartIndex(): string;
16227
- getChildrenLayoutType(): string;
16228
- elementWidthChanged(el: IElement): void;
16229
- get elements(): Array<IElement>;
16230
- indexOf(el: IElement): number;
16231
- ensureRowsVisibility(): void;
16232
- validateContainerOnly(): void;
16233
- getQuestionErrorLocation(): string;
16234
- protected getContentDisplayValueCore(keyAsText: boolean, value: any, question: Question): any;
16235
- }
16236
- export class QuestionCustomModel extends QuestionCustomModelBase {
16237
- private questionWrapper;
16238
- getTemplate(): string;
16239
- protected createWrapper(): void;
16240
- protected getElement(): SurveyElement;
16241
- onAnyValueChanged(name: string, questionName: string): void;
16242
- protected getQuestionByName(name: string): IQuestion;
16243
- setValue(name: string, newValue: any, locNotification: any, allowNotifyValueChanged?: boolean): any;
16244
- protected onSetData(): void;
16245
- hasErrors(fireCallback?: boolean, rec?: any): boolean;
16246
- focus(onError?: boolean): void;
16247
- afterRenderCore(el: any): void;
16248
- get contentQuestion(): Question;
16249
- protected createQuestion(): Question;
16250
- onSurveyLoad(): void;
16251
- runCondition(values: HashTable<any>, properties: HashTable<any>): void;
16252
- protected convertDataName(name: string): string;
16253
- protected convertDataValue(name: string, newValue: any): any;
16254
- protected getContentQuestionValue(): any;
16255
- protected setContentQuestionValue(val: any): void;
16256
- protected canSetValueToSurvey(): boolean;
16257
- protected setQuestionValue(newValue: any, updateIsAnswered?: boolean): void;
16258
- onSurveyValueChanged(newValue: any): void;
16259
- protected getValueCore(): any;
16260
- private isSettingValueChanged;
16261
- protected setValueChangedDirectly(val: boolean): void;
16262
- protected initElement(el: SurveyElement): void;
16263
- updateElementCss(reNew?: boolean): void;
16264
- protected updateElementCssCore(cssClasses: any): void;
16265
- protected getDisplayValueCore(keyAsText: boolean, value: any): any;
16380
+ get allowClose(): boolean;
16381
+ set allowClose(val: boolean);
16382
+ get css(): any;
16383
+ get cssButton(): string;
16384
+ get cssRoot(): string;
16385
+ get cssBody(): string;
16386
+ get cssHeaderRoot(): string;
16387
+ get cssHeaderTitle(): string;
16388
+ get cssHeaderButton(): string;
16389
+ get renderedWidth(): string;
16390
+ width: string;
16391
+ private updateCss;
16392
+ private updateCssButton;
16393
+ private setCssButton;
16394
+ protected createSurvey(jsonObj: any): SurveyModel;
16395
+ protected onSurveyComplete(): void;
16396
+ onScroll(): void;
16266
16397
  }
16267
- export class QuestionCompositeModel extends QuestionCustomModelBase {
16268
- customQuestion: ComponentQuestionJSON;
16269
- static ItemVariableName: string;
16270
- private panelWrapper;
16271
- private textProcessing;
16272
- constructor(name: string, customQuestion: ComponentQuestionJSON);
16273
- protected createWrapper(): void;
16274
- getTemplate(): string;
16275
- protected getElement(): SurveyElement;
16276
- protected getCssRoot(cssClasses: any): string;
16277
- get contentPanel(): PanelModel;
16278
- hasErrors(fireCallback?: boolean, rec?: any): boolean;
16279
- updateElementCss(reNew?: boolean): void;
16280
- getTextProcessor(): ITextProcessor;
16281
- findQuestionByName(name: string): IQuestion;
16282
- protected clearValueIfInvisibleCore(reason: string): void;
16283
- onAnyValueChanged(name: string, questionName: string): void;
16284
- get hasSingleInput(): boolean;
16285
- get isContainer(): boolean;
16286
- protected createPanel(): PanelModel;
16287
- protected onReadOnlyChanged(): void;
16288
- onSurveyLoad(): void;
16289
- private setIsContentElement;
16290
- setVisibleIndex(val: number): number;
16291
- runCondition(values: HashTable<any>, properties: HashTable<any>): void;
16292
- getValue(name: string): any;
16293
- protected getQuestionByName(name: string): IQuestion;
16294
- private settingNewValue;
16295
- setValue(name: string, newValue: any, locNotification: any, allowNotifyValueChanged?: boolean): any;
16296
- private updateValueCoreWithPanelValue;
16297
- private getContentPanelValue;
16298
- private getValueForContentPanel;
16299
- private setNewValueIntoQuestion;
16300
- addConditionObjectsByContext(objects: Array<IConditionObject>, context: any): void;
16301
- protected collectNestedQuestionsCore(questions: Question[], visibleOnly: boolean): void;
16302
- protected convertDataValue(name: string, newValue: any): any;
16303
- protected setQuestionValue(newValue: any, updateIsAnswered?: boolean): void;
16304
- private setValuesIntoQuestions;
16305
- protected getDisplayValueCore(keyAsText: boolean, value: any): any;
16306
- private setAfterRenderCallbacks;
16398
+ /**
16399
+ * Obsolete. Please use PopupSurvey
16400
+ */
16401
+ export class SurveyWindowModel extends PopupSurveyModel {
16307
16402
  }
16308
16403
  }
16309
16404
  declare module "popup-dropdown-view-model" {
@@ -16869,6 +16964,7 @@ declare module "defaultCss/cssstandard" {
16869
16964
  };
16870
16965
  saveData: {
16871
16966
  root: string;
16967
+ rootWithButtons: string;
16872
16968
  info: string;
16873
16969
  error: string;
16874
16970
  success: string;
@@ -17333,6 +17429,7 @@ declare module "defaultCss/cssmodern" {
17333
17429
  };
17334
17430
  saveData: {
17335
17431
  root: string;
17432
+ rootWithButtons: string;
17336
17433
  info: string;
17337
17434
  error: string;
17338
17435
  success: string;
@@ -23622,10 +23719,13 @@ declare module "react/reactquestion_comment" {
23622
23719
  protected renderElement(): JSX.Element;
23623
23720
  }
23624
23721
  export class SurveyQuestionCommentItem extends ReactSurveyElement {
23722
+ private getStateComment;
23723
+ constructor(props: any);
23625
23724
  protected canRender(): boolean;
23626
23725
  protected onCommentChange(event: any): void;
23627
23726
  protected onCommentInput(event: any): void;
23628
23727
  protected getComment(): string;
23728
+ protected setComment(value: any): void;
23629
23729
  protected getId(): string;
23630
23730
  protected getPlaceholder(): string;
23631
23731
  protected renderElement(): JSX.Element;
@@ -23634,6 +23734,7 @@ declare module "react/reactquestion_comment" {
23634
23734
  protected onCommentChange(event: any): void;
23635
23735
  protected onCommentInput(event: any): void;
23636
23736
  protected getComment(): string;
23737
+ protected setComment(value: any): void;
23637
23738
  protected getId(): string;
23638
23739
  protected getPlaceholder(): string;
23639
23740
  }