survey-react 1.9.134 → 1.9.135
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/defaultV2.css +21 -20
- package/defaultV2.css.map +1 -1
- package/defaultV2.min.css +2 -2
- package/modern.css +6 -1
- package/modern.css.map +1 -1
- package/modern.min.css +2 -2
- package/package.json +1 -1
- package/survey.css +1 -1
- package/survey.css.map +1 -1
- package/survey.min.css +1 -1
- package/survey.react.d.ts +320 -14
- package/survey.react.js +952 -565
- package/survey.react.js.map +1 -1
- package/survey.react.min.js +5 -5
package/survey.min.css
CHANGED
package/survey.react.d.ts
CHANGED
@@ -1,4 +1,33 @@
|
|
1
1
|
/// <reference types="react" />
|
2
|
+
declare module "global_variables_utils" {
|
3
|
+
export class DomWindowHelper {
|
4
|
+
static isAvailable(): boolean;
|
5
|
+
static isFileReaderAvailable(): boolean;
|
6
|
+
static getLocation(): Location;
|
7
|
+
static getVisualViewport(): VisualViewport | null;
|
8
|
+
static getInnerWidth(): number;
|
9
|
+
static getInnerHeight(): number;
|
10
|
+
static getWindow(): Window;
|
11
|
+
static hasOwn(propertyName: string): boolean;
|
12
|
+
static getSelection(): Selection | null;
|
13
|
+
static requestAnimationFrame(callback: FrameRequestCallback): number;
|
14
|
+
static addEventListener(type: string, listener: (e?: any) => void): void;
|
15
|
+
static removeEventListener(type: string, listener: (e?: any) => void): void;
|
16
|
+
}
|
17
|
+
export class DomDocumentHelper {
|
18
|
+
static isAvailable(): boolean;
|
19
|
+
static getBody(): HTMLElement;
|
20
|
+
static getDocumentElement(): HTMLElement;
|
21
|
+
static getDocument(): Document;
|
22
|
+
static getCookie(): string;
|
23
|
+
static setCookie(newCookie: string): void;
|
24
|
+
static activeElementBlur(): Document;
|
25
|
+
static createElement(tagName: string): HTMLElement;
|
26
|
+
static getComputedStyle(elt: Element): CSSStyleDeclaration;
|
27
|
+
static addEventListener(type: string, listener: (e?: any) => void): void;
|
28
|
+
static removeEventListener(type: string, listener: (e?: any) => void): void;
|
29
|
+
}
|
30
|
+
}
|
2
31
|
declare module "helpers" {
|
3
32
|
export interface HashTable<T = any> {
|
4
33
|
[key: string]: T;
|
@@ -814,6 +843,7 @@ declare module "list" {
|
|
814
843
|
itemWithIcon: string;
|
815
844
|
itemDisabled: string;
|
816
845
|
itemFocused: string;
|
846
|
+
itemTextWrap: string;
|
817
847
|
itemIcon: string;
|
818
848
|
itemSeparator: string;
|
819
849
|
itemBody: string;
|
@@ -851,6 +881,7 @@ declare module "list" {
|
|
851
881
|
isAllDataLoaded: boolean;
|
852
882
|
showSearchClearButton: boolean;
|
853
883
|
renderElements: boolean;
|
884
|
+
textWrapEnabled: boolean;
|
854
885
|
static INDENT: number;
|
855
886
|
static MINELEMENTCOUNT: number;
|
856
887
|
scrollHandler: (e?: any) => void;
|
@@ -876,6 +907,7 @@ declare module "list" {
|
|
876
907
|
itemWithIcon: string;
|
877
908
|
itemDisabled: string;
|
878
909
|
itemFocused: string;
|
910
|
+
itemTextWrap: string;
|
879
911
|
itemIcon: string;
|
880
912
|
itemSeparator: string;
|
881
913
|
itemBody: string;
|
@@ -1497,6 +1529,7 @@ declare module "defaultCss/defaultV2Css" {
|
|
1497
1529
|
mainRoot: string;
|
1498
1530
|
root: string;
|
1499
1531
|
withFrame: string;
|
1532
|
+
nested: string;
|
1500
1533
|
};
|
1501
1534
|
error: {
|
1502
1535
|
root: string;
|
@@ -1677,6 +1710,7 @@ declare module "defaultCss/defaultV2Css" {
|
|
1677
1710
|
mainRoot: string;
|
1678
1711
|
tableWrapper: string;
|
1679
1712
|
root: string;
|
1713
|
+
columnsAutoWidth: string;
|
1680
1714
|
noHeader: string;
|
1681
1715
|
rootVerticalAlignTop: string;
|
1682
1716
|
rootVerticalAlignMiddle: string;
|
@@ -1705,6 +1739,7 @@ declare module "defaultCss/defaultV2Css" {
|
|
1705
1739
|
mainRoot: string;
|
1706
1740
|
rootScroll: string;
|
1707
1741
|
root: string;
|
1742
|
+
columnsAutoWidth: string;
|
1708
1743
|
noHeader: string;
|
1709
1744
|
hasFooter: string;
|
1710
1745
|
rootVerticalAlignTop: string;
|
@@ -1747,6 +1782,7 @@ declare module "defaultCss/defaultV2Css" {
|
|
1747
1782
|
rootScroll: string;
|
1748
1783
|
empty: string;
|
1749
1784
|
root: string;
|
1785
|
+
columnsAutoWidth: string;
|
1750
1786
|
noHeader: string;
|
1751
1787
|
hasFooter: string;
|
1752
1788
|
tableWrapper: string;
|
@@ -4095,6 +4131,7 @@ declare module "question_baseselect" {
|
|
4095
4131
|
protected updateSelectedItemValues(): void;
|
4096
4132
|
private setCustomValuesIntoItems;
|
4097
4133
|
protected hasUnknownValue(val: any, includeOther?: boolean, isFilteredChoices?: boolean, checkEmptyValue?: boolean): boolean;
|
4134
|
+
protected hasUnknownValueItem(val: any, includeOther?: boolean, isFilteredChoices?: boolean, checkEmptyValue?: boolean): boolean;
|
4098
4135
|
protected isValueDisabled(val: any): boolean;
|
4099
4136
|
/**
|
4100
4137
|
* If the clearIncorrectValuesCallback is set, it is used to clear incorrect values instead of default behaviour.
|
@@ -7138,9 +7175,18 @@ declare module "survey-events-api" {
|
|
7138
7175
|
*/
|
7139
7176
|
input: HTMLInputElement;
|
7140
7177
|
/**
|
7141
|
-
* A question, panel, page, or survey for which this event is raised.
|
7178
|
+
* A survey element (question, panel, page, or survey) or a theme JSON schema for which this event is raised.
|
7142
7179
|
*/
|
7143
7180
|
element: Base;
|
7181
|
+
/**
|
7182
|
+
* The type of the element passed as the `options.element` parameter.\
|
7183
|
+
* Possible values: `"theme"`, `"header"`, or any value returned from the [`getType()`](https://surveyjs.io/form-library/documentation/api-reference/question#getType) method.
|
7184
|
+
*/
|
7185
|
+
elementType: String;
|
7186
|
+
/**
|
7187
|
+
* The name of the survey element property or theme property for which files are being selected.
|
7188
|
+
*/
|
7189
|
+
propertyName: String;
|
7144
7190
|
/**
|
7145
7191
|
* A choice item for which the event is raised. This parameter has a value only when the dialog window is opened to select images for an [Image Picker](https://surveyjs.io/form-library/documentation/api-reference/image-picker-question-model) question.
|
7146
7192
|
*/
|
@@ -7349,6 +7395,24 @@ declare module "survey-events-api" {
|
|
7349
7395
|
*/
|
7350
7396
|
allow: boolean;
|
7351
7397
|
}
|
7398
|
+
export interface MatrixDetailPanelVisibleChangedEvent extends MatrixDropdownQuestionEventMixin {
|
7399
|
+
/**
|
7400
|
+
* A matrix row to which the detail section belongs.
|
7401
|
+
*/
|
7402
|
+
row: MatrixDropdownRowModelBase;
|
7403
|
+
/**
|
7404
|
+
* A zero-based row index.
|
7405
|
+
*/
|
7406
|
+
rowIndex: number;
|
7407
|
+
/**
|
7408
|
+
* A [PanelModel](https://surveyjs.io/form-library/documentation/panelmodel) that represents the detail section.
|
7409
|
+
*/
|
7410
|
+
detailPanel: PanelModel;
|
7411
|
+
/**
|
7412
|
+
* Indicates whether the detail section is visible now.
|
7413
|
+
*/
|
7414
|
+
visible: boolean;
|
7415
|
+
}
|
7352
7416
|
export interface MatrixCellCreatingBaseEvent extends MatrixDropdownQuestionEventMixin {
|
7353
7417
|
/**
|
7354
7418
|
* A [matrix column](https://surveyjs.io/form-library/documentation/api-reference/multi-select-matrix-column-values) to which the cell belongs.
|
@@ -7847,7 +7911,7 @@ declare module "surveytimer" {
|
|
7847
7911
|
export var surveyTimerFunctions: {
|
7848
7912
|
setTimeout: (func: () => any) => number;
|
7849
7913
|
clearTimeout: (timerId: number) => void;
|
7850
|
-
safeTimeOut: (func: () => any, delay: number) => number;
|
7914
|
+
safeTimeOut: (func: () => any, delay: number) => number | any;
|
7851
7915
|
};
|
7852
7916
|
export class SurveyTimer {
|
7853
7917
|
private static instanceValue;
|
@@ -8089,7 +8153,20 @@ declare module "mask/mask_utils" {
|
|
8089
8153
|
declare module "mask/mask_base" {
|
8090
8154
|
import { Base } from "base";
|
8091
8155
|
import { IInputMask, IMaskedInputResult, ITextInputParams } from "mask/mask_utils";
|
8156
|
+
/**
|
8157
|
+
* A base class for classes that implement input masks:
|
8158
|
+
*
|
8159
|
+
* - [`InputMaskNumeric`](https://surveyjs.io/form-library/documentation/inputmasknumeric)
|
8160
|
+
* - [`InputMaskCurrency`](https://surveyjs.io/form-library/documentation/inputmaskcurrency)
|
8161
|
+
* - [`InputMaskDateTime`](https://surveyjs.io/form-library/documentation/inputmaskdatetime)
|
8162
|
+
* - [`InputMaskPattern`](https://surveyjs.io/form-library/documentation/inputmaskpattern)
|
8163
|
+
*/
|
8092
8164
|
export class InputMaskBase extends Base implements IInputMask {
|
8165
|
+
/**
|
8166
|
+
* Specifies whether to store the question value with an applied mask in survey results.
|
8167
|
+
*
|
8168
|
+
* Default value: `false`
|
8169
|
+
*/
|
8093
8170
|
saveMaskedValue: boolean;
|
8094
8171
|
getType(): string;
|
8095
8172
|
setData(json: any): void;
|
@@ -8109,7 +8186,6 @@ declare module "mask/input_element_adapter" {
|
|
8109
8186
|
constructor(inputMaskInstance: InputMaskBase, inputElement: HTMLInputElement, value?: string);
|
8110
8187
|
inputMaskInstancePropertyChangedHandler: (sender: any, options: any) => void;
|
8111
8188
|
beforeInputHandler: (event: any) => void;
|
8112
|
-
blurInputHandler: (event: any) => void;
|
8113
8189
|
createArgs(event: any): ITextInputParams;
|
8114
8190
|
addInputEventListener(): void;
|
8115
8191
|
removeInputEventListener(): void;
|
@@ -8138,8 +8214,36 @@ declare module "question_text" {
|
|
8138
8214
|
private deleteMaskAdapter;
|
8139
8215
|
private updateMaskAdapter;
|
8140
8216
|
onSetMaskType(newValue: string): void;
|
8217
|
+
/**
|
8218
|
+
* Specifies the type of a mask applied to the input.
|
8219
|
+
*
|
8220
|
+
* Possible values:
|
8221
|
+
*
|
8222
|
+
* - `"none"` (default)
|
8223
|
+
* - `"numeric"`
|
8224
|
+
* - `"currency"`
|
8225
|
+
* - `"datetime"`
|
8226
|
+
* - `"pattern"`
|
8227
|
+
*
|
8228
|
+
* [View Demo](https://surveyjs.io/form-library/examples/masked-input-fields/ (linkStyle))
|
8229
|
+
* @see maskSettings
|
8230
|
+
*/
|
8141
8231
|
maskType: string;
|
8142
8232
|
get maskTypeIsEmpty(): boolean;
|
8233
|
+
/**
|
8234
|
+
* An object with properties that configure the mask applied to the input.
|
8235
|
+
*
|
8236
|
+
* Available properties depend on the specified [`maskType`](https://surveyjs.io/form-library/documentation/api-reference/text-entry-question-model#maskType) and belong to corresponding classes. Refer to the class APIs for a full list of properties:
|
8237
|
+
*
|
8238
|
+
* | `maskType` | Class |
|
8239
|
+
* | ---------- | ----- |
|
8240
|
+
* | `"numeric"` | [`InputMaskNumeric`](https://surveyjs.io/form-library/documentation/api-reference/inputmasknumeric) |
|
8241
|
+
* | `"currency"` | [`InputMaskCurrency`](https://surveyjs.io/form-library/documentation/api-reference/inputmaskcurrency) |
|
8242
|
+
* | `"datetime"` | [`InputMaskDateTime`](https://surveyjs.io/form-library/documentation/api-reference/inputmaskdatetime) |
|
8243
|
+
* | `"pattern"` | [`InputMaskPattern`](https://surveyjs.io/form-library/documentation/api-reference/inputmaskpattern) |
|
8244
|
+
*
|
8245
|
+
* [View Demo](https://surveyjs.io/form-library/examples/masked-input-fields/ (linkStyle))
|
8246
|
+
*/
|
8143
8247
|
get maskSettings(): InputMaskBase;
|
8144
8248
|
set maskSettings(val: InputMaskBase);
|
8145
8249
|
private setNewMaskSettingsProperty;
|
@@ -8220,9 +8324,12 @@ declare module "question_text" {
|
|
8220
8324
|
* @see max
|
8221
8325
|
*/
|
8222
8326
|
get isMinMaxType(): boolean;
|
8327
|
+
_inputValue: string;
|
8223
8328
|
get maskInstance(): IInputMask;
|
8224
8329
|
get inputValue(): string;
|
8225
8330
|
set inputValue(val: string);
|
8331
|
+
protected onChangeQuestionValue(newValue: any): void;
|
8332
|
+
private updateInputValue;
|
8226
8333
|
protected onCheckForErrors(errors: Array<SurveyError>, isOnValueChanged: boolean): void;
|
8227
8334
|
protected canSetValueToSurvey(): boolean;
|
8228
8335
|
protected convertFuncValuetoQuestionValue(val: any): any;
|
@@ -8748,7 +8855,7 @@ declare module "survey" {
|
|
8748
8855
|
import { ActionContainer } from "actions/container";
|
8749
8856
|
import { QuestionPanelDynamicModel } from "question_paneldynamic";
|
8750
8857
|
import { Notifier } from "notifier";
|
8751
|
-
import { TriggerExecutedEvent, CompletingEvent, CompleteEvent, ShowingPreviewEvent, NavigateToUrlEvent, CurrentPageChangingEvent, CurrentPageChangedEvent, ValueChangingEvent, ValueChangedEvent, VariableChangedEvent, QuestionVisibleChangedEvent, PageVisibleChangedEvent, PanelVisibleChangedEvent, QuestionCreatedEvent, QuestionAddedEvent, QuestionRemovedEvent, PanelAddedEvent, PanelRemovedEvent, PageAddedEvent, ValidateQuestionEvent, SettingQuestionErrorsEvent, ValidatePanelEvent, ErrorCustomTextEvent, ValidatedErrorsOnCurrentPageEvent, ProcessHtmlEvent, GetQuestionTitleEvent, GetTitleTagNameEvent, GetQuestionNoEvent, ProgressTextEvent, TextMarkdownEvent, TextRenderAsEvent, SendResultEvent, GetResultEvent, UploadFilesEvent, DownloadFileEvent, ClearFilesEvent, LoadChoicesFromServerEvent, ProcessTextValueEvent, UpdateQuestionCssClassesEvent, UpdatePanelCssClassesEvent, UpdatePageCssClassesEvent, UpdateChoiceItemCssEvent, AfterRenderSurveyEvent, AfterRenderHeaderEvent, AfterRenderPageEvent, AfterRenderQuestionEvent, AfterRenderQuestionInputEvent, AfterRenderPanelEvent, FocusInQuestionEvent, FocusInPanelEvent, ShowingChoiceItemEvent, ChoicesLazyLoadEvent, GetChoiceDisplayValueEvent, MatrixRowAddedEvent, MatrixBeforeRowAddedEvent, MatrixRowRemovingEvent, MatrixRowRemovedEvent, MatrixAllowRemoveRowEvent, MatrixCellCreatingEvent, MatrixCellCreatedEvent, MatrixAfterCellRenderEvent, MatrixCellValueChangedEvent, MatrixCellValueChangingEvent, MatrixCellValidateEvent, DynamicPanelModifiedEvent, DynamicPanelRemovingEvent, TimerPanelInfoTextEvent, DynamicPanelItemValueChangedEvent, DynamicPanelGetTabTitleEvent, DynamicPanelCurrentIndexChangedEvent, IsAnswerCorrectEvent, DragDropAllowEvent, ScrollingElementToTopEvent, GetQuestionTitleActionsEvent, GetPanelTitleActionsEvent, GetPageTitleActionsEvent, GetPanelFooterActionsEvent, GetMatrixRowActionsEvent, ElementContentVisibilityChangedEvent, GetExpressionDisplayValueEvent, ServerValidateQuestionsEvent, MultipleTextItemAddedEvent, MatrixColumnAddedEvent, GetQuestionDisplayValueEvent, PopupVisibleChangedEvent, ChoicesSearchEvent, OpenFileChooserEvent } from "survey-events-api";
|
8858
|
+
import { TriggerExecutedEvent, CompletingEvent, CompleteEvent, ShowingPreviewEvent, NavigateToUrlEvent, CurrentPageChangingEvent, CurrentPageChangedEvent, ValueChangingEvent, ValueChangedEvent, VariableChangedEvent, QuestionVisibleChangedEvent, PageVisibleChangedEvent, PanelVisibleChangedEvent, QuestionCreatedEvent, QuestionAddedEvent, QuestionRemovedEvent, PanelAddedEvent, PanelRemovedEvent, PageAddedEvent, ValidateQuestionEvent, SettingQuestionErrorsEvent, ValidatePanelEvent, ErrorCustomTextEvent, ValidatedErrorsOnCurrentPageEvent, ProcessHtmlEvent, GetQuestionTitleEvent, GetTitleTagNameEvent, GetQuestionNoEvent, ProgressTextEvent, TextMarkdownEvent, TextRenderAsEvent, SendResultEvent, GetResultEvent, UploadFilesEvent, DownloadFileEvent, ClearFilesEvent, LoadChoicesFromServerEvent, ProcessTextValueEvent, UpdateQuestionCssClassesEvent, UpdatePanelCssClassesEvent, UpdatePageCssClassesEvent, UpdateChoiceItemCssEvent, AfterRenderSurveyEvent, AfterRenderHeaderEvent, AfterRenderPageEvent, AfterRenderQuestionEvent, AfterRenderQuestionInputEvent, AfterRenderPanelEvent, FocusInQuestionEvent, FocusInPanelEvent, ShowingChoiceItemEvent, ChoicesLazyLoadEvent, GetChoiceDisplayValueEvent, MatrixRowAddedEvent, MatrixBeforeRowAddedEvent, MatrixRowRemovingEvent, MatrixRowRemovedEvent, MatrixAllowRemoveRowEvent, MatrixDetailPanelVisibleChangedEvent, MatrixCellCreatingEvent, MatrixCellCreatedEvent, MatrixAfterCellRenderEvent, MatrixCellValueChangedEvent, MatrixCellValueChangingEvent, MatrixCellValidateEvent, DynamicPanelModifiedEvent, DynamicPanelRemovingEvent, TimerPanelInfoTextEvent, DynamicPanelItemValueChangedEvent, DynamicPanelGetTabTitleEvent, DynamicPanelCurrentIndexChangedEvent, IsAnswerCorrectEvent, DragDropAllowEvent, ScrollingElementToTopEvent, GetQuestionTitleActionsEvent, GetPanelTitleActionsEvent, GetPageTitleActionsEvent, GetPanelFooterActionsEvent, GetMatrixRowActionsEvent, ElementContentVisibilityChangedEvent, GetExpressionDisplayValueEvent, ServerValidateQuestionsEvent, MultipleTextItemAddedEvent, MatrixColumnAddedEvent, GetQuestionDisplayValueEvent, PopupVisibleChangedEvent, ChoicesSearchEvent, OpenFileChooserEvent } from "survey-events-api";
|
8752
8859
|
import { QuestionMatrixDropdownModelBase } from "question_matrixdropdownbase";
|
8753
8860
|
import { QuestionMatrixDynamicModel } from "question_matrixdynamic";
|
8754
8861
|
import { QuestionFileModel } from "question_file";
|
@@ -8893,7 +9000,7 @@ declare module "survey" {
|
|
8893
9000
|
* Refer to the following help topic for information on how to implement conditional visibility: [Conditional Visibility](https://surveyjs.io/form-library/documentation/design-survey/conditional-logic#conditional-visibility).
|
8894
9001
|
*/
|
8895
9002
|
onQuestionVisibleChanged: EventBase<SurveyModel, QuestionVisibleChangedEvent>;
|
8896
|
-
onVisibleChanged: EventBase<SurveyModel,
|
9003
|
+
onVisibleChanged: EventBase<SurveyModel, any>;
|
8897
9004
|
/**
|
8898
9005
|
* An event that is raised after page visibility is changed.
|
8899
9006
|
*
|
@@ -8903,7 +9010,7 @@ declare module "survey" {
|
|
8903
9010
|
*/
|
8904
9011
|
onPageVisibleChanged: EventBase<SurveyModel, PageVisibleChangedEvent>;
|
8905
9012
|
/**
|
8906
|
-
* An event that is raised after
|
9013
|
+
* An event that is raised after panel visibility is changed.
|
8907
9014
|
*
|
8908
9015
|
* For information on event handler parameters, refer to descriptions within the interface.
|
8909
9016
|
*
|
@@ -9298,6 +9405,10 @@ declare module "survey" {
|
|
9298
9405
|
* This event is obsolete. Use the [`onMatrixRenderRemoveButton`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#onMatrixRenderRemoveButton) event instead.
|
9299
9406
|
*/
|
9300
9407
|
onMatrixAllowRemoveRow: EventBase<SurveyModel, MatrixAllowRemoveRowEvent>;
|
9408
|
+
/**
|
9409
|
+
* An event that is raised after the visibility of an [expandable detail section](https://surveyjs.io/form-library/examples/add-expandable-details-section-under-matrix-rows/) is changed. This event can be raised for [Multi-Select](https://surveyjs.io/form-library/documentation/api-reference/matrix-table-with-dropdown-list) and [Dynamic Matrix](https://surveyjs.io/form-library/documentation/api-reference/dynamic-matrix-table-question-model) questions.
|
9410
|
+
*/
|
9411
|
+
onMatrixDetailPanelVisibleChanged: EventBase<SurveyModel, MatrixDetailPanelVisibleChangedEvent>;
|
9301
9412
|
/**
|
9302
9413
|
* An event that is raised before a cell in a [Multi-Select Matrix](https://surveyjs.io/form-library/examples/questiontype-matrixdropdown/) or [Dynamic Matrix](https://surveyjs.io/form-library/examples/questiontype-matrixdynamic/) is created. Use this event to change the type of individual matrix cells.
|
9303
9414
|
* @see onAfterRenderMatrixCell
|
@@ -9502,13 +9613,12 @@ declare module "survey" {
|
|
9502
9613
|
/**
|
9503
9614
|
* Specifies whether to enable lazy rendering.
|
9504
9615
|
*
|
9505
|
-
* In default mode, a survey renders the entire current page. With lazy rendering, the survey renders the page gradually as a user scrolls it. This helps reduce survey startup time and
|
9616
|
+
* In default mode, a survey renders the entire current page. With lazy rendering, the survey renders the page gradually as a user scrolls it. This helps reduce survey startup time and optimizes large surveys for low-end devices.
|
9506
9617
|
*
|
9507
9618
|
* Default value: `false`
|
9508
9619
|
*
|
9509
9620
|
* [View Demo](https://surveyjs.io/form-library/examples/survey-lazy/ (linkStyle))
|
9510
|
-
*
|
9511
|
-
* > This is an experimental feature that may not work properly in certain cases.
|
9621
|
+
* @see [settings.lazyRender](https://surveyjs.io/form-library/documentation/api-reference/settings#lazyRender)
|
9512
9622
|
*/
|
9513
9623
|
get lazyRendering(): boolean;
|
9514
9624
|
set lazyRendering(val: boolean);
|
@@ -10165,7 +10275,7 @@ declare module "survey" {
|
|
10165
10275
|
* - `"belowHeader"` - Displays the progress bar below the survey header.
|
10166
10276
|
* - `"bottom"` - Displays the progress bar below survey content.
|
10167
10277
|
* - `"topBottom"` - Displays the progress bar above and below survey content.
|
10168
|
-
* - `"auto"` -
|
10278
|
+
* - `"auto"` - Displays the progress bar below the survey header if the header has a [background image](https://surveyjs.io/form-library/documentation/api-reference/iheader#backgroundImage) or color. Otherwise, the progress bar is displayed above the header.
|
10169
10279
|
* - `"top"` - *(Obsolete)* Use the `"aboveHeader"` or `"belowHeader"` property value instead.
|
10170
10280
|
* - `"both"` - *(Obsolete)* Use the `"topBottom"` property value instead.
|
10171
10281
|
*
|
@@ -10882,6 +10992,7 @@ declare module "survey" {
|
|
10882
10992
|
matrixRowRemoved(question: QuestionMatrixDynamicModel, rowIndex: number, row: any): void;
|
10883
10993
|
matrixRowRemoving(question: QuestionMatrixDynamicModel, rowIndex: number, row: any): boolean;
|
10884
10994
|
matrixAllowRemoveRow(question: QuestionMatrixDynamicModel, rowIndex: number, row: any): boolean;
|
10995
|
+
matrixDetailPanelVisibleChanged(question: QuestionMatrixDropdownModelBase, rowIndex: number, row: any, visible: boolean): void;
|
10885
10996
|
matrixCellCreating(question: QuestionMatrixDropdownModelBase, options: any): void;
|
10886
10997
|
matrixCellCreated(question: QuestionMatrixDropdownModelBase, options: any): void;
|
10887
10998
|
matrixAfterCellRender(question: QuestionMatrixDropdownModelBase, options: any): void;
|
@@ -10914,8 +11025,10 @@ declare module "survey" {
|
|
10914
11025
|
* @see onUploadFile
|
10915
11026
|
*/
|
10916
11027
|
chooseFiles(input: HTMLInputElement, callback: (files: File[]) => void, context?: {
|
10917
|
-
element:
|
11028
|
+
element: Base;
|
10918
11029
|
item?: any;
|
11030
|
+
elementType?: string;
|
11031
|
+
propertyName?: string;
|
10919
11032
|
}): void;
|
10920
11033
|
/**
|
10921
11034
|
* Uploads files to a server.
|
@@ -13109,6 +13222,7 @@ declare module "martixBase" {
|
|
13109
13222
|
protected clearInvisibleValuesInRows(): void;
|
13110
13223
|
private restoreNewVisibleRowsValues;
|
13111
13224
|
needResponsiveWidth(): boolean;
|
13225
|
+
protected get columnsAutoWidth(): boolean;
|
13112
13226
|
getTableCss(): string;
|
13113
13227
|
/**
|
13114
13228
|
* Aligns matrix cell content in the vertical direction.
|
@@ -13796,6 +13910,7 @@ declare module "base-interfaces" {
|
|
13796
13910
|
matrixRowRemoved(question: IQuestion, rowIndex: number, row: any): any;
|
13797
13911
|
matrixRowRemoving(question: IQuestion, rowIndex: number, row: any): boolean;
|
13798
13912
|
matrixAllowRemoveRow(question: IQuestion, rowIndex: number, row: any): boolean;
|
13913
|
+
matrixDetailPanelVisibleChanged(question: IQuestion, rowIndex: number, row: any, visible: boolean): void;
|
13799
13914
|
matrixCellCreating(question: IQuestion, options: any): any;
|
13800
13915
|
matrixCellCreated(question: IQuestion, options: any): any;
|
13801
13916
|
matrixAfterCellRender(question: IQuestion, options: any): any;
|
@@ -13818,8 +13933,10 @@ declare module "base-interfaces" {
|
|
13818
13933
|
onCorrectQuestionAnswer(question: IQuestion, options: any): void;
|
13819
13934
|
processPopupVisiblityChanged(question: IQuestion, popupModel: PopupModel, visible: boolean): void;
|
13820
13935
|
chooseFiles(input: HTMLInputElement, callback: (files: File[]) => void, context?: {
|
13821
|
-
element:
|
13936
|
+
element: Base;
|
13822
13937
|
item?: any;
|
13938
|
+
elementType?: string;
|
13939
|
+
propertyName?: string;
|
13823
13940
|
}): void;
|
13824
13941
|
}
|
13825
13942
|
export interface ISurveyImpl {
|
@@ -14933,7 +15050,7 @@ declare module "settings" {
|
|
14933
15050
|
* Nested properties:
|
14934
15051
|
*
|
14935
15052
|
* - `useLocalTimeZone`: `boolean`\
|
14936
|
-
* Disable this property if you want internal SurveyJS functions to use methods that work with UTC date and time (`setUTCDate()` `setUTCHours()`, etc.) instead of methods that work with local date and time (`setYear`, `setHours()`, etc.). Default value: `true`.
|
15053
|
+
* Disable this property if you want internal SurveyJS functions to use methods that work with UTC date and time (`setUTCDate()` `setUTCHours()`, etc.) instead of methods that work with local date and time (`setYear()`, `setHours()`, etc.). Default value: `true`.
|
14937
15054
|
*
|
14938
15055
|
* - `defaultLocaleName`: `string`\
|
14939
15056
|
* A property key that stores a translation for the default locale. Default value: `"default"`.
|
@@ -15059,7 +15176,8 @@ declare module "settings" {
|
|
15059
15176
|
* - `enabled`: `boolean`\
|
15060
15177
|
* Specifies whether to add questions to the DOM only when they get into the viewport. Default value: `false`.
|
15061
15178
|
*
|
15062
|
-
*
|
15179
|
+
* [View Demo](https://surveyjs.io/form-library/examples/survey-lazy/ (linkStyle))
|
15180
|
+
* @see [SurveyModel.lazyRendering](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#lazyRendering)
|
15063
15181
|
*/
|
15064
15182
|
lazyRender: {
|
15065
15183
|
enabled: boolean;
|
@@ -15441,6 +15559,20 @@ declare module "settings" {
|
|
15441
15559
|
dataList: string[];
|
15442
15560
|
};
|
15443
15561
|
legacyProgressBarView: boolean;
|
15562
|
+
/**
|
15563
|
+
* An object with properties that configure input masks.
|
15564
|
+
*
|
15565
|
+
* Nested properties:
|
15566
|
+
*
|
15567
|
+
* - `patternPlaceholderChar`: `string`\
|
15568
|
+
* A symbol used as a placeholder for characters to be entered in [pattern masks](https://surveyjs.io/form-library/documentation/api-reference/inputmaskpattern). Default value: `"_"`.
|
15569
|
+
*
|
15570
|
+
* - `patternEscapeChar`: `string`\
|
15571
|
+
* A symbol used to insert literal representations of special characters in [pattern masks](https://surveyjs.io/form-library/documentation/api-reference/inputmaskpattern). Default value: `"\\"`.
|
15572
|
+
*
|
15573
|
+
* - `patternDefinitions`: `<{ [key: string]: RegExp }>`\
|
15574
|
+
* An object that maps placeholder symbols to regular expressions in [pattern masks](https://surveyjs.io/form-library/documentation/api-reference/inputmaskpattern). Default value: `{ "9": /[0-9]/, "a": /[a-zA-Z]/, "#": /[a-zA-Z0-9]/ }`.
|
15575
|
+
*/
|
15444
15576
|
maskSettings: {
|
15445
15577
|
patternPlaceholderChar: string;
|
15446
15578
|
patternEscapeChar: string;
|
@@ -15532,6 +15664,7 @@ declare module "dropdownListModel" {
|
|
15532
15664
|
private updatePopupFocusFirstInputSelector;
|
15533
15665
|
protected createPopup(): void;
|
15534
15666
|
private setFilterStringToListModel;
|
15667
|
+
private setTextWrapEnabled;
|
15535
15668
|
protected popupRecalculatePosition(isResetHeight: boolean): void;
|
15536
15669
|
protected onHidePopup(): void;
|
15537
15670
|
protected getAvailableItems(): Array<ItemValue>;
|
@@ -15698,6 +15831,14 @@ declare module "question_dropdown" {
|
|
15698
15831
|
* @see [SurveyModel.onChoicesSearch](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#onChoicesSearch)
|
15699
15832
|
*/
|
15700
15833
|
searchMode: "contains" | "startsWith";
|
15834
|
+
/**
|
15835
|
+
* Specifies whether to wrap long texts in choice options onto a new line.
|
15836
|
+
*
|
15837
|
+
* Default value: `true`
|
15838
|
+
*
|
15839
|
+
* Disable this property if you want the texts to be truncated with ellipsis.
|
15840
|
+
*/
|
15841
|
+
textWrapEnabled: boolean;
|
15701
15842
|
inputHasValue: boolean;
|
15702
15843
|
readOnlyText: string;
|
15703
15844
|
/**
|
@@ -16258,6 +16399,7 @@ declare module "question_tagbox" {
|
|
16258
16399
|
* Specifies whether to close the drop-down menu after a user selects a value.
|
16259
16400
|
*/
|
16260
16401
|
closeOnSelect: number;
|
16402
|
+
textWrapEnabled: boolean;
|
16261
16403
|
/**
|
16262
16404
|
* A text displayed in the input field when it doesn't have a value.
|
16263
16405
|
*/
|
@@ -16690,6 +16832,7 @@ declare module "question_html" {
|
|
16690
16832
|
get processedHtml(): string;
|
16691
16833
|
private processHtml;
|
16692
16834
|
get isNewA11yStructure(): boolean;
|
16835
|
+
get renderCssRoot(): string;
|
16693
16836
|
}
|
16694
16837
|
}
|
16695
16838
|
declare module "question_radiogroup" {
|
@@ -17465,8 +17608,55 @@ declare module "mask/mask_pattern" {
|
|
17465
17608
|
export function getLiterals(pattern: string): Array<IMaskLiteral>;
|
17466
17609
|
export function getMaskedValueByPattern(src: string, pattern: string | Array<IMaskLiteral>, matchWholeMask: boolean): string;
|
17467
17610
|
export function getUnmaskedValueByPattern(str: string, pattern: string | Array<IMaskLiteral>, matchWholeMask: boolean, skipFixedChar?: boolean): string;
|
17611
|
+
/**
|
17612
|
+
* A class that describes an input mask of the `"pattern"` [`maskType`](https://surveyjs.io/form-library/documentation/api-reference/text-entry-question-model#maskType).
|
17613
|
+
*
|
17614
|
+
* The following code shows how to specify the properties of this class within a survey JSON schema:
|
17615
|
+
*
|
17616
|
+
* ```js
|
17617
|
+
* const surveyJson = {
|
17618
|
+
* "elements": [{
|
17619
|
+
* "name": "textquestion1"
|
17620
|
+
* "type": "text",
|
17621
|
+
* "maskType": "pattern",
|
17622
|
+
* "maskSettings": {
|
17623
|
+
* // Specify the properties of a pattern input mask here
|
17624
|
+
* }
|
17625
|
+
* }]
|
17626
|
+
* }
|
17627
|
+
* ```
|
17628
|
+
*
|
17629
|
+
* [View Demo](https://surveyjs.io/form-library/examples/masked-input-fields/ (linkStyle))
|
17630
|
+
*/
|
17468
17631
|
export class InputMaskPattern extends InputMaskBase {
|
17469
17632
|
private literals;
|
17633
|
+
/**
|
17634
|
+
* A pattern for the input value.
|
17635
|
+
*
|
17636
|
+
* If you set the [`maskType`](https://surveyjs.io/form-library/documentation/api-reference/text-entry-question-model#maskType) to `"pattern"`, the mask can contain string literals and the following placeholders:
|
17637
|
+
*
|
17638
|
+
* - `9` - A digit.
|
17639
|
+
* - `a` - An upper- or lower-case letter.
|
17640
|
+
* - `#` - A digit or an upper- or lower-case letter.
|
17641
|
+
*
|
17642
|
+
* Use backslash `\` to escape a character.
|
17643
|
+
*
|
17644
|
+
* Example: `+1(999)-999-99-99`
|
17645
|
+
*
|
17646
|
+
* If you set the [`maskType`](https://surveyjs.io/form-library/documentation/api-reference/text-entry-question-model#maskType) to `"datetime"`, the mask can contain separator characters and the following placeholders:
|
17647
|
+
*
|
17648
|
+
* - `m` - Month number.
|
17649
|
+
* - `mm` - Month number, with leading zero for single-digit values.
|
17650
|
+
* - `d` - Day of the month.
|
17651
|
+
* - `dd` - Day of the month, with leading zero for single-digit values.
|
17652
|
+
* - `yy` - Last two digits of the year.
|
17653
|
+
* - `yyyy` - A four-digit year.
|
17654
|
+
*
|
17655
|
+
* Example: `mm/dd/yyyy`
|
17656
|
+
*
|
17657
|
+
* [View Demo](https://surveyjs.io/form-library/examples/masked-input-fields/ (linkStyle))
|
17658
|
+
* @see [settings.maskSettings](https://surveyjs.io/form-library/documentation/api-reference/settings#maskSettings)
|
17659
|
+
*/
|
17470
17660
|
pattern: string;
|
17471
17661
|
protected updateLiterals(): void;
|
17472
17662
|
protected onPropertyValueChanged(name: string, oldValue: any, newValue: any): void;
|
@@ -17489,12 +17679,70 @@ declare module "mask/mask_numeric" {
|
|
17489
17679
|
hasDecimalSeparator?: boolean;
|
17490
17680
|
}
|
17491
17681
|
export function splitString(str: string, reverse?: boolean, n?: number): Array<string>;
|
17682
|
+
/**
|
17683
|
+
* A class that describes an input mask of the `"numeric"` [`maskType`](https://surveyjs.io/form-library/documentation/api-reference/text-entry-question-model#maskType).
|
17684
|
+
*
|
17685
|
+
* The following code shows how to specify the properties of this class within a survey JSON schema:
|
17686
|
+
*
|
17687
|
+
* ```js
|
17688
|
+
* const surveyJson = {
|
17689
|
+
* "elements": [{
|
17690
|
+
* "name": "textquestion1"
|
17691
|
+
* "type": "text",
|
17692
|
+
* "maskType": "numeric",
|
17693
|
+
* "maskSettings": {
|
17694
|
+
* // Specify the properties of a numeric input mask here
|
17695
|
+
* }
|
17696
|
+
* }]
|
17697
|
+
* }
|
17698
|
+
* ```
|
17699
|
+
*
|
17700
|
+
* [View Demo](https://surveyjs.io/form-library/examples/masked-input-fields/ (linkStyle))
|
17701
|
+
*/
|
17492
17702
|
export class InputMaskNumeric extends InputMaskBase {
|
17703
|
+
/**
|
17704
|
+
* Specifies whether respondents can enter negative values.
|
17705
|
+
*
|
17706
|
+
* Default value: `true`
|
17707
|
+
* @see min
|
17708
|
+
* @see max
|
17709
|
+
*/
|
17493
17710
|
allowNegativeValues: boolean;
|
17711
|
+
/**
|
17712
|
+
* A symbol used to separate the fractional part from the integer part of a displayed number.
|
17713
|
+
*
|
17714
|
+
* Default value: `"."`
|
17715
|
+
* @see precision
|
17716
|
+
* @see thousandsSeparator
|
17717
|
+
*/
|
17494
17718
|
decimalSeparator: string;
|
17719
|
+
/**
|
17720
|
+
* Limits how many digits to retain after the decimal point for a displayed number.
|
17721
|
+
*
|
17722
|
+
* Default value: 2
|
17723
|
+
*
|
17724
|
+
* [View Demo](https://surveyjs.io/form-library/examples/masked-input-fields/ (linkStyle))
|
17725
|
+
* @see decimalSeparator
|
17726
|
+
*/
|
17495
17727
|
precision: number;
|
17728
|
+
/**
|
17729
|
+
* A symbol used to separate the digits of a large number into groups of three.
|
17730
|
+
*
|
17731
|
+
* Default value: `","`
|
17732
|
+
* @see decimalSeparator
|
17733
|
+
*/
|
17496
17734
|
thousandsSeparator: string;
|
17735
|
+
/**
|
17736
|
+
* A minimum value that respondents can enter.
|
17737
|
+
* @see max
|
17738
|
+
* @see allowNegativeValues
|
17739
|
+
*/
|
17497
17740
|
min: number;
|
17741
|
+
/**
|
17742
|
+
* A maximum value that respondents can enter.
|
17743
|
+
* @see min
|
17744
|
+
* @see allowNegativeValues
|
17745
|
+
*/
|
17498
17746
|
max: number;
|
17499
17747
|
private calccaretPosition;
|
17500
17748
|
displayNumber(parsedNumber: INumericalComposition, insertThousandsSeparator?: boolean, matchWholeMask?: boolean): string;
|
@@ -17520,11 +17768,39 @@ declare module "mask/mask_datetime" {
|
|
17520
17768
|
maxCount: number;
|
17521
17769
|
}
|
17522
17770
|
export function getDateTimeLexems(pattern: string): Array<IDateTimeMaskLexem>;
|
17771
|
+
/**
|
17772
|
+
* A class that describes an input mask of the `"datetime"` [`maskType`](https://surveyjs.io/form-library/documentation/api-reference/text-entry-question-model#maskType).
|
17773
|
+
*
|
17774
|
+
* The following code shows how to specify the properties of this class within a survey JSON schema:
|
17775
|
+
*
|
17776
|
+
* ```js
|
17777
|
+
* const surveyJson = {
|
17778
|
+
* "elements": [{
|
17779
|
+
* "name": "textquestion1"
|
17780
|
+
* "type": "text",
|
17781
|
+
* "maskType": "datetime",
|
17782
|
+
* "maskSettings": {
|
17783
|
+
* // Specify the properties of a date-time input mask here
|
17784
|
+
* }
|
17785
|
+
* }]
|
17786
|
+
* }
|
17787
|
+
* ```
|
17788
|
+
*
|
17789
|
+
* [View Demo](https://surveyjs.io/form-library/examples/masked-input-fields/ (linkStyle))
|
17790
|
+
*/
|
17523
17791
|
export class InputMaskDateTime extends InputMaskPattern {
|
17524
17792
|
private turnOfTheCentury;
|
17525
17793
|
private lexems;
|
17526
17794
|
private inputDateTimeData;
|
17795
|
+
/**
|
17796
|
+
* A minimum date and time value that respondents can enter.
|
17797
|
+
* @see max
|
17798
|
+
*/
|
17527
17799
|
min: string;
|
17800
|
+
/**
|
17801
|
+
* A maximum date and time value that respondents can enter.
|
17802
|
+
* @see min
|
17803
|
+
*/
|
17528
17804
|
max: string;
|
17529
17805
|
getType(): string;
|
17530
17806
|
protected updateLiterals(): void;
|
@@ -17552,8 +17828,38 @@ declare module "mask/mask_datetime" {
|
|
17552
17828
|
declare module "mask/mask_currency" {
|
17553
17829
|
import { InputMaskNumeric } from "mask/mask_numeric";
|
17554
17830
|
import { IMaskedInputResult, ITextInputParams } from "mask/mask_utils";
|
17831
|
+
/**
|
17832
|
+
* A class that describes an input mask of the `"currency"` [`maskType`](https://surveyjs.io/form-library/documentation/api-reference/text-entry-question-model#maskType).
|
17833
|
+
*
|
17834
|
+
* The following code shows how to specify the properties of this class within a survey JSON schema:
|
17835
|
+
*
|
17836
|
+
* ```js
|
17837
|
+
* const surveyJson = {
|
17838
|
+
* "elements": [{
|
17839
|
+
* "name": "textquestion1"
|
17840
|
+
* "type": "text",
|
17841
|
+
* "maskType": "currency",
|
17842
|
+
* "maskSettings": {
|
17843
|
+
* // Specify the properties of a currency input mask here
|
17844
|
+
* }
|
17845
|
+
* }]
|
17846
|
+
* }
|
17847
|
+
* ```
|
17848
|
+
*
|
17849
|
+
* [View Demo](https://surveyjs.io/form-library/examples/masked-input-fields/ (linkStyle))
|
17850
|
+
*/
|
17555
17851
|
export class InputMaskCurrency extends InputMaskNumeric {
|
17852
|
+
/**
|
17853
|
+
* One or several symbols to be displayed before the currency value.
|
17854
|
+
*
|
17855
|
+
* [View Demo](https://surveyjs.io/form-library/examples/masked-input-fields/ (linkStyle))
|
17856
|
+
* @see suffix
|
17857
|
+
*/
|
17556
17858
|
prefix: string;
|
17859
|
+
/**
|
17860
|
+
* One or several symbols to be displayed after the currency value.
|
17861
|
+
* @see prefix
|
17862
|
+
*/
|
17557
17863
|
suffix: string;
|
17558
17864
|
getType(): string;
|
17559
17865
|
private wrapText;
|