survey-core 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.fontless.css +21 -20
- package/defaultV2.fontless.css.map +1 -1
- package/defaultV2.fontless.min.css +2 -2
- package/defaultV2.min.css +2 -2
- package/i18n/arabic.js +1 -1
- package/i18n/arabic.min.js +1 -1
- package/i18n/basque.js +1 -1
- package/i18n/basque.min.js +1 -1
- package/i18n/bulgarian.js +1 -1
- package/i18n/bulgarian.min.js +1 -1
- package/i18n/catalan.js +1 -1
- package/i18n/catalan.min.js +1 -1
- package/i18n/croatian.js +1 -1
- package/i18n/croatian.min.js +1 -1
- package/i18n/czech.js +1 -1
- package/i18n/czech.min.js +1 -1
- package/i18n/danish.js +1 -1
- package/i18n/danish.min.js +1 -1
- package/i18n/dutch.js +1 -1
- package/i18n/dutch.min.js +1 -1
- package/i18n/english.js +1 -1
- package/i18n/english.min.js +1 -1
- package/i18n/estonian.js +1 -1
- package/i18n/estonian.min.js +1 -1
- package/i18n/finnish.js +1 -1
- package/i18n/finnish.min.js +1 -1
- package/i18n/french.js +1 -1
- package/i18n/french.min.js +1 -1
- package/i18n/georgian.js +1 -1
- package/i18n/georgian.min.js +1 -1
- package/i18n/german.js +1 -1
- package/i18n/german.min.js +1 -1
- package/i18n/greek.js +1 -1
- package/i18n/greek.min.js +1 -1
- package/i18n/hebrew.js +1 -1
- package/i18n/hebrew.min.js +1 -1
- package/i18n/hindi.js +1 -1
- package/i18n/hindi.min.js +1 -1
- package/i18n/hungarian.js +1 -1
- package/i18n/hungarian.min.js +1 -1
- package/i18n/icelandic.js +1 -1
- package/i18n/icelandic.min.js +1 -1
- package/i18n/index.js +1 -1
- package/i18n/index.min.js +1 -1
- package/i18n/indonesian.js +1 -1
- package/i18n/indonesian.min.js +1 -1
- package/i18n/italian.js +1 -1
- package/i18n/italian.min.js +1 -1
- package/i18n/japanese.js +1 -1
- package/i18n/japanese.min.js +1 -1
- package/i18n/kazakh.js +1 -1
- package/i18n/kazakh.min.js +1 -1
- package/i18n/korean.js +1 -1
- package/i18n/korean.min.js +1 -1
- package/i18n/latvian.js +1 -1
- package/i18n/latvian.min.js +1 -1
- package/i18n/lithuanian.js +1 -1
- package/i18n/lithuanian.min.js +1 -1
- package/i18n/macedonian.js +1 -1
- package/i18n/macedonian.min.js +1 -1
- package/i18n/malay.js +1 -1
- package/i18n/malay.min.js +1 -1
- package/i18n/nl-BE.js +1 -1
- package/i18n/nl-BE.min.js +1 -1
- package/i18n/norwegian.js +1 -1
- package/i18n/norwegian.min.js +1 -1
- package/i18n/persian.js +1 -1
- package/i18n/persian.min.js +1 -1
- package/i18n/polish.js +1 -1
- package/i18n/polish.min.js +1 -1
- package/i18n/portuguese-br.js +1 -1
- package/i18n/portuguese-br.min.js +1 -1
- package/i18n/portuguese.js +1 -1
- package/i18n/portuguese.min.js +1 -1
- package/i18n/romanian.js +1 -1
- package/i18n/romanian.min.js +1 -1
- package/i18n/russian.js +1 -1
- package/i18n/russian.min.js +1 -1
- package/i18n/serbian.js +1 -1
- package/i18n/serbian.min.js +1 -1
- package/i18n/simplified-chinese.js +1 -1
- package/i18n/simplified-chinese.min.js +1 -1
- package/i18n/slovak.js +1 -1
- package/i18n/slovak.min.js +1 -1
- package/i18n/spanish.js +1 -1
- package/i18n/spanish.min.js +1 -1
- package/i18n/swahili.js +1 -1
- package/i18n/swahili.min.js +1 -1
- package/i18n/swedish.js +1 -1
- package/i18n/swedish.min.js +1 -1
- package/i18n/tajik.js +1 -1
- package/i18n/tajik.min.js +1 -1
- package/i18n/telugu.js +1 -1
- package/i18n/telugu.min.js +1 -1
- package/i18n/thai.js +1 -1
- package/i18n/thai.min.js +1 -1
- package/i18n/traditional-chinese.js +1 -1
- package/i18n/traditional-chinese.min.js +1 -1
- package/i18n/turkish.js +1 -1
- package/i18n/turkish.min.js +1 -1
- package/i18n/ukrainian.js +1 -1
- package/i18n/ukrainian.min.js +1 -1
- package/i18n/urdu.js +1 -1
- package/i18n/urdu.min.js +1 -1
- package/i18n/vietnamese.js +1 -1
- package/i18n/vietnamese.min.js +1 -1
- package/i18n/welsh.js +1 -1
- package/i18n/welsh.min.js +1 -1
- package/modern.css +6 -1
- package/modern.css.map +1 -1
- package/modern.fontless.css +6 -1
- package/modern.fontless.css.map +1 -1
- package/modern.fontless.min.css +2 -2
- package/modern.min.css +2 -2
- package/package.json +1 -1
- package/plugins/bootstrap-integration.js +1 -1
- package/plugins/bootstrap-integration.min.js +1 -1
- package/plugins/bootstrap-material-integration.js +1 -1
- package/plugins/bootstrap-material-integration.min.js +1 -1
- package/survey.core.js +950 -563
- package/survey.core.js.map +1 -1
- package/survey.core.min.js +5 -5
- package/survey.css +1 -1
- package/survey.css.map +1 -1
- package/survey.i18n.js +1 -1
- package/survey.i18n.min.js +1 -1
- package/survey.min.css +1 -1
- package/themes/borderless-dark-panelless.js +1 -1
- package/themes/borderless-dark-panelless.min.js +1 -1
- package/themes/borderless-dark.js +1 -1
- package/themes/borderless-dark.min.js +1 -1
- package/themes/borderless-light-panelless..js +1 -1
- package/themes/borderless-light-panelless..min.js +1 -1
- package/themes/borderless-light.js +1 -1
- package/themes/borderless-light.min.js +1 -1
- package/themes/contrast-dark-panelless.js +1 -1
- package/themes/contrast-dark-panelless.min.js +1 -1
- package/themes/contrast-dark.js +1 -1
- package/themes/contrast-dark.min.js +1 -1
- package/themes/contrast-light-panelless.js +1 -1
- package/themes/contrast-light-panelless.min.js +1 -1
- package/themes/contrast-light.js +1 -1
- package/themes/contrast-light.min.js +1 -1
- package/themes/default-dark-panelless.js +1 -1
- package/themes/default-dark-panelless.min.js +1 -1
- package/themes/default-dark.js +1 -1
- package/themes/default-dark.min.js +1 -1
- package/themes/default-light-panelless.js +1 -1
- package/themes/default-light-panelless.min.js +1 -1
- package/themes/default-light.js +1 -1
- package/themes/default-light.min.js +1 -1
- package/themes/doubleborder-dark-panelless.js +1 -1
- package/themes/doubleborder-dark-panelless.min.js +1 -1
- package/themes/doubleborder-dark.js +1 -1
- package/themes/doubleborder-dark.min.js +1 -1
- package/themes/doubleborder-light-panelles.js +1 -1
- package/themes/doubleborder-light-panelles.min.js +1 -1
- package/themes/doubleborder-light.js +1 -1
- package/themes/doubleborder-light.min.js +1 -1
- package/themes/flat-dark-panelless.js +1 -1
- package/themes/flat-dark-panelless.min.js +1 -1
- package/themes/flat-dark.js +1 -1
- package/themes/flat-dark.min.js +1 -1
- package/themes/flat-light-panelless.js +1 -1
- package/themes/flat-light-panelless.min.js +1 -1
- package/themes/flat-light.js +1 -1
- package/themes/flat-light.min.js +1 -1
- package/themes/index.js +1 -1
- package/themes/index.min.js +1 -1
- package/themes/layered-dark-panelless.js +1 -1
- package/themes/layered-dark-panelless.min.js +1 -1
- package/themes/layered-dark.js +1 -1
- package/themes/layered-dark.min.js +1 -1
- package/themes/layered-light-panelless.js +1 -1
- package/themes/layered-light-panelless.min.js +1 -1
- package/themes/layered-light.js +1 -1
- package/themes/layered-light.min.js +1 -1
- package/themes/plain-dark-panelless.js +1 -1
- package/themes/plain-dark-panelless.min.js +1 -1
- package/themes/plain-dark.js +1 -1
- package/themes/plain-dark.min.js +1 -1
- package/themes/plain-light-panelless.js +1 -1
- package/themes/plain-light-panelless.min.js +1 -1
- package/themes/plain-light.js +1 -1
- package/themes/plain-light.min.js +1 -1
- package/themes/sharp-dark-panelless.js +1 -1
- package/themes/sharp-dark-panelless.min.js +1 -1
- package/themes/sharp-dark.js +1 -1
- package/themes/sharp-dark.min.js +1 -1
- package/themes/sharp-light-panelless.js +1 -1
- package/themes/sharp-light-panelless.min.js +1 -1
- package/themes/sharp-light.js +1 -1
- package/themes/sharp-light.min.js +1 -1
- package/themes/solid-dark-panelless.js +1 -1
- package/themes/solid-dark-panelless.min.js +1 -1
- package/themes/solid-dark.js +1 -1
- package/themes/solid-dark.min.js +1 -1
- package/themes/solid-light-panelless.js +1 -1
- package/themes/solid-light-panelless.min.js +1 -1
- package/themes/solid-light.js +1 -1
- package/themes/solid-light.min.js +1 -1
- package/themes/three-dimensional-dark-panelless.js +1 -1
- package/themes/three-dimensional-dark-panelless.min.js +1 -1
- package/themes/three-dimensional-dark.js +1 -1
- package/themes/three-dimensional-dark.min.js +1 -1
- package/themes/three-dimensional-light-panelless.js +1 -1
- package/themes/three-dimensional-light-panelless.min.js +1 -1
- package/themes/three-dimensional-light.js +1 -1
- package/themes/three-dimensional-light.min.js +1 -1
- package/ts3.4/typings/base-interfaces.d.ts +4 -1
- package/ts3.4/typings/defaultCss/defaultV2Css.d.ts +4 -0
- package/ts3.4/typings/dropdownListModel.d.ts +1 -0
- package/ts3.4/typings/global_variables_utils.d.ts +27 -0
- package/ts3.4/typings/list.d.ts +3 -0
- package/ts3.4/typings/martixBase.d.ts +1 -0
- package/ts3.4/typings/mask/input_element_adapter.d.ts +0 -1
- package/ts3.4/typings/mask/mask_base.d.ts +13 -0
- package/ts3.4/typings/mask/mask_currency.d.ts +30 -0
- package/ts3.4/typings/mask/mask_datetime.d.ts +28 -0
- package/ts3.4/typings/mask/mask_numeric.d.ts +58 -0
- package/ts3.4/typings/mask/mask_pattern.d.ts +47 -0
- package/ts3.4/typings/question_baseselect.d.ts +1 -0
- package/ts3.4/typings/question_dropdown.d.ts +8 -0
- package/ts3.4/typings/question_html.d.ts +1 -0
- package/ts3.4/typings/question_tagbox.d.ts +1 -0
- package/ts3.4/typings/question_text.d.ts +31 -0
- package/ts3.4/typings/settings.d.ts +17 -2
- package/ts3.4/typings/survey-events-api.d.ts +28 -1
- package/ts3.4/typings/survey.d.ts +14 -8
- package/ts3.4/typings/surveytimer.d.ts +1 -1
- package/typings/base-interfaces.d.ts +4 -1
- package/typings/defaultCss/defaultV2Css.d.ts +4 -0
- package/typings/dropdownListModel.d.ts +1 -0
- package/typings/global_variables_utils.d.ts +27 -0
- package/typings/list.d.ts +3 -0
- package/typings/martixBase.d.ts +1 -0
- package/typings/mask/input_element_adapter.d.ts +0 -1
- package/typings/mask/mask_base.d.ts +13 -0
- package/typings/mask/mask_currency.d.ts +30 -0
- package/typings/mask/mask_datetime.d.ts +28 -0
- package/typings/mask/mask_numeric.d.ts +58 -0
- package/typings/mask/mask_pattern.d.ts +47 -0
- package/typings/question_baseselect.d.ts +1 -0
- package/typings/question_dropdown.d.ts +8 -0
- package/typings/question_html.d.ts +1 -0
- package/typings/question_tagbox.d.ts +1 -0
- package/typings/question_text.d.ts +31 -0
- package/typings/settings.d.ts +17 -2
- package/typings/survey-events-api.d.ts +28 -1
- package/typings/survey.d.ts +14 -8
- package/typings/surveytimer.d.ts +1 -1
package/themes/solid-light.js
CHANGED
|
@@ -136,6 +136,7 @@ export interface ISurvey extends ITextProcessor, ISurveyErrorOwner {
|
|
|
136
136
|
matrixRowRemoved(question: IQuestion, rowIndex: number, row: any): any;
|
|
137
137
|
matrixRowRemoving(question: IQuestion, rowIndex: number, row: any): boolean;
|
|
138
138
|
matrixAllowRemoveRow(question: IQuestion, rowIndex: number, row: any): boolean;
|
|
139
|
+
matrixDetailPanelVisibleChanged(question: IQuestion, rowIndex: number, row: any, visible: boolean): void;
|
|
139
140
|
matrixCellCreating(question: IQuestion, options: any): any;
|
|
140
141
|
matrixCellCreated(question: IQuestion, options: any): any;
|
|
141
142
|
matrixAfterCellRender(question: IQuestion, options: any): any;
|
|
@@ -158,8 +159,10 @@ export interface ISurvey extends ITextProcessor, ISurveyErrorOwner {
|
|
|
158
159
|
onCorrectQuestionAnswer(question: IQuestion, options: any): void;
|
|
159
160
|
processPopupVisiblityChanged(question: IQuestion, popupModel: PopupModel, visible: boolean): void;
|
|
160
161
|
chooseFiles(input: HTMLInputElement, callback: (files: File[]) => void, context?: {
|
|
161
|
-
element:
|
|
162
|
+
element: Base;
|
|
162
163
|
item?: any;
|
|
164
|
+
elementType?: string;
|
|
165
|
+
propertyName?: string;
|
|
163
166
|
}): void;
|
|
164
167
|
}
|
|
165
168
|
export interface ISurveyImpl {
|
|
@@ -217,6 +217,7 @@ export declare var defaultV2Css: {
|
|
|
217
217
|
mainRoot: string;
|
|
218
218
|
root: string;
|
|
219
219
|
withFrame: string;
|
|
220
|
+
nested: string;
|
|
220
221
|
};
|
|
221
222
|
error: {
|
|
222
223
|
root: string;
|
|
@@ -397,6 +398,7 @@ export declare var defaultV2Css: {
|
|
|
397
398
|
mainRoot: string;
|
|
398
399
|
tableWrapper: string;
|
|
399
400
|
root: string;
|
|
401
|
+
columnsAutoWidth: string;
|
|
400
402
|
noHeader: string;
|
|
401
403
|
rootVerticalAlignTop: string;
|
|
402
404
|
rootVerticalAlignMiddle: string;
|
|
@@ -425,6 +427,7 @@ export declare var defaultV2Css: {
|
|
|
425
427
|
mainRoot: string;
|
|
426
428
|
rootScroll: string;
|
|
427
429
|
root: string;
|
|
430
|
+
columnsAutoWidth: string;
|
|
428
431
|
noHeader: string;
|
|
429
432
|
hasFooter: string;
|
|
430
433
|
rootVerticalAlignTop: string;
|
|
@@ -467,6 +470,7 @@ export declare var defaultV2Css: {
|
|
|
467
470
|
rootScroll: string;
|
|
468
471
|
empty: string;
|
|
469
472
|
root: string;
|
|
473
|
+
columnsAutoWidth: string;
|
|
470
474
|
noHeader: string;
|
|
471
475
|
hasFooter: string;
|
|
472
476
|
tableWrapper: string;
|
|
@@ -29,6 +29,7 @@ export declare class DropdownListModel extends Base {
|
|
|
29
29
|
private updatePopupFocusFirstInputSelector;
|
|
30
30
|
protected createPopup(): void;
|
|
31
31
|
private setFilterStringToListModel;
|
|
32
|
+
private setTextWrapEnabled;
|
|
32
33
|
protected popupRecalculatePosition(isResetHeight: boolean): void;
|
|
33
34
|
protected onHidePopup(): void;
|
|
34
35
|
protected getAvailableItems(): Array<ItemValue>;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export declare class DomWindowHelper {
|
|
2
|
+
static isAvailable(): boolean;
|
|
3
|
+
static isFileReaderAvailable(): boolean;
|
|
4
|
+
static getLocation(): Location;
|
|
5
|
+
static getVisualViewport(): VisualViewport | null;
|
|
6
|
+
static getInnerWidth(): number;
|
|
7
|
+
static getInnerHeight(): number;
|
|
8
|
+
static getWindow(): Window;
|
|
9
|
+
static hasOwn(propertyName: string): boolean;
|
|
10
|
+
static getSelection(): Selection | null;
|
|
11
|
+
static requestAnimationFrame(callback: FrameRequestCallback): number;
|
|
12
|
+
static addEventListener(type: string, listener: (e?: any) => void): void;
|
|
13
|
+
static removeEventListener(type: string, listener: (e?: any) => void): void;
|
|
14
|
+
}
|
|
15
|
+
export declare class DomDocumentHelper {
|
|
16
|
+
static isAvailable(): boolean;
|
|
17
|
+
static getBody(): HTMLElement;
|
|
18
|
+
static getDocumentElement(): HTMLElement;
|
|
19
|
+
static getDocument(): Document;
|
|
20
|
+
static getCookie(): string;
|
|
21
|
+
static setCookie(newCookie: string): void;
|
|
22
|
+
static activeElementBlur(): Document;
|
|
23
|
+
static createElement(tagName: string): HTMLElement;
|
|
24
|
+
static getComputedStyle(elt: Element): CSSStyleDeclaration;
|
|
25
|
+
static addEventListener(type: string, listener: (e?: any) => void): void;
|
|
26
|
+
static removeEventListener(type: string, listener: (e?: any) => void): void;
|
|
27
|
+
}
|
package/ts3.4/typings/list.d.ts
CHANGED
|
@@ -9,6 +9,7 @@ export declare let defaultListCss: {
|
|
|
9
9
|
itemWithIcon: string;
|
|
10
10
|
itemDisabled: string;
|
|
11
11
|
itemFocused: string;
|
|
12
|
+
itemTextWrap: string;
|
|
12
13
|
itemIcon: string;
|
|
13
14
|
itemSeparator: string;
|
|
14
15
|
itemBody: string;
|
|
@@ -46,6 +47,7 @@ export declare class ListModel<T extends BaseAction = Action> extends ActionCont
|
|
|
46
47
|
isAllDataLoaded: boolean;
|
|
47
48
|
showSearchClearButton: boolean;
|
|
48
49
|
renderElements: boolean;
|
|
50
|
+
textWrapEnabled: boolean;
|
|
49
51
|
static INDENT: number;
|
|
50
52
|
static MINELEMENTCOUNT: number;
|
|
51
53
|
scrollHandler: (e?: any) => void;
|
|
@@ -71,6 +73,7 @@ export declare class ListModel<T extends BaseAction = Action> extends ActionCont
|
|
|
71
73
|
itemWithIcon: string;
|
|
72
74
|
itemDisabled: string;
|
|
73
75
|
itemFocused: string;
|
|
76
|
+
itemTextWrap: string;
|
|
74
77
|
itemIcon: string;
|
|
75
78
|
itemSeparator: string;
|
|
76
79
|
itemBody: string;
|
|
@@ -87,6 +87,7 @@ export declare class QuestionMatrixBaseModel<TRow, TColumn> extends Question {
|
|
|
87
87
|
protected clearInvisibleValuesInRows(): void;
|
|
88
88
|
private restoreNewVisibleRowsValues;
|
|
89
89
|
needResponsiveWidth(): boolean;
|
|
90
|
+
protected readonly columnsAutoWidth: boolean;
|
|
90
91
|
getTableCss(): string;
|
|
91
92
|
/**
|
|
92
93
|
* Aligns matrix cell content in the vertical direction.
|
|
@@ -7,7 +7,6 @@ export declare class InputElementAdapter {
|
|
|
7
7
|
constructor(inputMaskInstance: InputMaskBase, inputElement: HTMLInputElement, value?: string);
|
|
8
8
|
inputMaskInstancePropertyChangedHandler: (sender: any, options: any) => void;
|
|
9
9
|
beforeInputHandler: (event: any) => void;
|
|
10
|
-
blurInputHandler: (event: any) => void;
|
|
11
10
|
createArgs(event: any): ITextInputParams;
|
|
12
11
|
addInputEventListener(): void;
|
|
13
12
|
removeInputEventListener(): void;
|
|
@@ -1,6 +1,19 @@
|
|
|
1
1
|
import { Base } from "../base";
|
|
2
2
|
import { IInputMask, IMaskedInputResult, ITextInputParams } from "./mask_utils";
|
|
3
|
+
/**
|
|
4
|
+
* A base class for classes that implement input masks:
|
|
5
|
+
*
|
|
6
|
+
* - [`InputMaskNumeric`](https://surveyjs.io/form-library/documentation/inputmasknumeric)
|
|
7
|
+
* - [`InputMaskCurrency`](https://surveyjs.io/form-library/documentation/inputmaskcurrency)
|
|
8
|
+
* - [`InputMaskDateTime`](https://surveyjs.io/form-library/documentation/inputmaskdatetime)
|
|
9
|
+
* - [`InputMaskPattern`](https://surveyjs.io/form-library/documentation/inputmaskpattern)
|
|
10
|
+
*/
|
|
3
11
|
export declare class InputMaskBase extends Base implements IInputMask {
|
|
12
|
+
/**
|
|
13
|
+
* Specifies whether to store the question value with an applied mask in survey results.
|
|
14
|
+
*
|
|
15
|
+
* Default value: `false`
|
|
16
|
+
*/
|
|
4
17
|
saveMaskedValue: boolean;
|
|
5
18
|
getType(): string;
|
|
6
19
|
setData(json: any): void;
|
|
@@ -1,7 +1,37 @@
|
|
|
1
1
|
import { InputMaskNumeric } from "./mask_numeric";
|
|
2
2
|
import { IMaskedInputResult, ITextInputParams } from "./mask_utils";
|
|
3
|
+
/**
|
|
4
|
+
* A class that describes an input mask of the `"currency"` [`maskType`](https://surveyjs.io/form-library/documentation/api-reference/text-entry-question-model#maskType).
|
|
5
|
+
*
|
|
6
|
+
* The following code shows how to specify the properties of this class within a survey JSON schema:
|
|
7
|
+
*
|
|
8
|
+
* ```js
|
|
9
|
+
* const surveyJson = {
|
|
10
|
+
* "elements": [{
|
|
11
|
+
* "name": "textquestion1"
|
|
12
|
+
* "type": "text",
|
|
13
|
+
* "maskType": "currency",
|
|
14
|
+
* "maskSettings": {
|
|
15
|
+
* // Specify the properties of a currency input mask here
|
|
16
|
+
* }
|
|
17
|
+
* }]
|
|
18
|
+
* }
|
|
19
|
+
* ```
|
|
20
|
+
*
|
|
21
|
+
* [View Demo](https://surveyjs.io/form-library/examples/masked-input-fields/ (linkStyle))
|
|
22
|
+
*/
|
|
3
23
|
export declare class InputMaskCurrency extends InputMaskNumeric {
|
|
24
|
+
/**
|
|
25
|
+
* One or several symbols to be displayed before the currency value.
|
|
26
|
+
*
|
|
27
|
+
* [View Demo](https://surveyjs.io/form-library/examples/masked-input-fields/ (linkStyle))
|
|
28
|
+
* @see suffix
|
|
29
|
+
*/
|
|
4
30
|
prefix: string;
|
|
31
|
+
/**
|
|
32
|
+
* One or several symbols to be displayed after the currency value.
|
|
33
|
+
* @see prefix
|
|
34
|
+
*/
|
|
5
35
|
suffix: string;
|
|
6
36
|
getType(): string;
|
|
7
37
|
private wrapText;
|
|
@@ -7,11 +7,39 @@ export interface IDateTimeMaskLexem {
|
|
|
7
7
|
maxCount: number;
|
|
8
8
|
}
|
|
9
9
|
export declare function getDateTimeLexems(pattern: string): Array<IDateTimeMaskLexem>;
|
|
10
|
+
/**
|
|
11
|
+
* A class that describes an input mask of the `"datetime"` [`maskType`](https://surveyjs.io/form-library/documentation/api-reference/text-entry-question-model#maskType).
|
|
12
|
+
*
|
|
13
|
+
* The following code shows how to specify the properties of this class within a survey JSON schema:
|
|
14
|
+
*
|
|
15
|
+
* ```js
|
|
16
|
+
* const surveyJson = {
|
|
17
|
+
* "elements": [{
|
|
18
|
+
* "name": "textquestion1"
|
|
19
|
+
* "type": "text",
|
|
20
|
+
* "maskType": "datetime",
|
|
21
|
+
* "maskSettings": {
|
|
22
|
+
* // Specify the properties of a date-time input mask here
|
|
23
|
+
* }
|
|
24
|
+
* }]
|
|
25
|
+
* }
|
|
26
|
+
* ```
|
|
27
|
+
*
|
|
28
|
+
* [View Demo](https://surveyjs.io/form-library/examples/masked-input-fields/ (linkStyle))
|
|
29
|
+
*/
|
|
10
30
|
export declare class InputMaskDateTime extends InputMaskPattern {
|
|
11
31
|
private turnOfTheCentury;
|
|
12
32
|
private lexems;
|
|
13
33
|
private inputDateTimeData;
|
|
34
|
+
/**
|
|
35
|
+
* A minimum date and time value that respondents can enter.
|
|
36
|
+
* @see max
|
|
37
|
+
*/
|
|
14
38
|
min: string;
|
|
39
|
+
/**
|
|
40
|
+
* A maximum date and time value that respondents can enter.
|
|
41
|
+
* @see min
|
|
42
|
+
*/
|
|
15
43
|
max: string;
|
|
16
44
|
getType(): string;
|
|
17
45
|
protected updateLiterals(): void;
|
|
@@ -7,12 +7,70 @@ interface INumericalComposition {
|
|
|
7
7
|
hasDecimalSeparator?: boolean;
|
|
8
8
|
}
|
|
9
9
|
export declare function splitString(str: string, reverse?: boolean, n?: number): Array<string>;
|
|
10
|
+
/**
|
|
11
|
+
* A class that describes an input mask of the `"numeric"` [`maskType`](https://surveyjs.io/form-library/documentation/api-reference/text-entry-question-model#maskType).
|
|
12
|
+
*
|
|
13
|
+
* The following code shows how to specify the properties of this class within a survey JSON schema:
|
|
14
|
+
*
|
|
15
|
+
* ```js
|
|
16
|
+
* const surveyJson = {
|
|
17
|
+
* "elements": [{
|
|
18
|
+
* "name": "textquestion1"
|
|
19
|
+
* "type": "text",
|
|
20
|
+
* "maskType": "numeric",
|
|
21
|
+
* "maskSettings": {
|
|
22
|
+
* // Specify the properties of a numeric input mask here
|
|
23
|
+
* }
|
|
24
|
+
* }]
|
|
25
|
+
* }
|
|
26
|
+
* ```
|
|
27
|
+
*
|
|
28
|
+
* [View Demo](https://surveyjs.io/form-library/examples/masked-input-fields/ (linkStyle))
|
|
29
|
+
*/
|
|
10
30
|
export declare class InputMaskNumeric extends InputMaskBase {
|
|
31
|
+
/**
|
|
32
|
+
* Specifies whether respondents can enter negative values.
|
|
33
|
+
*
|
|
34
|
+
* Default value: `true`
|
|
35
|
+
* @see min
|
|
36
|
+
* @see max
|
|
37
|
+
*/
|
|
11
38
|
allowNegativeValues: boolean;
|
|
39
|
+
/**
|
|
40
|
+
* A symbol used to separate the fractional part from the integer part of a displayed number.
|
|
41
|
+
*
|
|
42
|
+
* Default value: `"."`
|
|
43
|
+
* @see precision
|
|
44
|
+
* @see thousandsSeparator
|
|
45
|
+
*/
|
|
12
46
|
decimalSeparator: string;
|
|
47
|
+
/**
|
|
48
|
+
* Limits how many digits to retain after the decimal point for a displayed number.
|
|
49
|
+
*
|
|
50
|
+
* Default value: 2
|
|
51
|
+
*
|
|
52
|
+
* [View Demo](https://surveyjs.io/form-library/examples/masked-input-fields/ (linkStyle))
|
|
53
|
+
* @see decimalSeparator
|
|
54
|
+
*/
|
|
13
55
|
precision: number;
|
|
56
|
+
/**
|
|
57
|
+
* A symbol used to separate the digits of a large number into groups of three.
|
|
58
|
+
*
|
|
59
|
+
* Default value: `","`
|
|
60
|
+
* @see decimalSeparator
|
|
61
|
+
*/
|
|
14
62
|
thousandsSeparator: string;
|
|
63
|
+
/**
|
|
64
|
+
* A minimum value that respondents can enter.
|
|
65
|
+
* @see max
|
|
66
|
+
* @see allowNegativeValues
|
|
67
|
+
*/
|
|
15
68
|
min: number;
|
|
69
|
+
/**
|
|
70
|
+
* A maximum value that respondents can enter.
|
|
71
|
+
* @see min
|
|
72
|
+
* @see allowNegativeValues
|
|
73
|
+
*/
|
|
16
74
|
max: number;
|
|
17
75
|
private calccaretPosition;
|
|
18
76
|
displayNumber(parsedNumber: INumericalComposition, insertThousandsSeparator?: boolean, matchWholeMask?: boolean): string;
|
|
@@ -8,8 +8,55 @@ export interface IMaskLiteral {
|
|
|
8
8
|
export declare function getLiterals(pattern: string): Array<IMaskLiteral>;
|
|
9
9
|
export declare function getMaskedValueByPattern(src: string, pattern: string | Array<IMaskLiteral>, matchWholeMask: boolean): string;
|
|
10
10
|
export declare function getUnmaskedValueByPattern(str: string, pattern: string | Array<IMaskLiteral>, matchWholeMask: boolean, skipFixedChar?: boolean): string;
|
|
11
|
+
/**
|
|
12
|
+
* A class that describes an input mask of the `"pattern"` [`maskType`](https://surveyjs.io/form-library/documentation/api-reference/text-entry-question-model#maskType).
|
|
13
|
+
*
|
|
14
|
+
* The following code shows how to specify the properties of this class within a survey JSON schema:
|
|
15
|
+
*
|
|
16
|
+
* ```js
|
|
17
|
+
* const surveyJson = {
|
|
18
|
+
* "elements": [{
|
|
19
|
+
* "name": "textquestion1"
|
|
20
|
+
* "type": "text",
|
|
21
|
+
* "maskType": "pattern",
|
|
22
|
+
* "maskSettings": {
|
|
23
|
+
* // Specify the properties of a pattern input mask here
|
|
24
|
+
* }
|
|
25
|
+
* }]
|
|
26
|
+
* }
|
|
27
|
+
* ```
|
|
28
|
+
*
|
|
29
|
+
* [View Demo](https://surveyjs.io/form-library/examples/masked-input-fields/ (linkStyle))
|
|
30
|
+
*/
|
|
11
31
|
export declare class InputMaskPattern extends InputMaskBase {
|
|
12
32
|
private literals;
|
|
33
|
+
/**
|
|
34
|
+
* A pattern for the input value.
|
|
35
|
+
*
|
|
36
|
+
* 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:
|
|
37
|
+
*
|
|
38
|
+
* - `9` - A digit.
|
|
39
|
+
* - `a` - An upper- or lower-case letter.
|
|
40
|
+
* - `#` - A digit or an upper- or lower-case letter.
|
|
41
|
+
*
|
|
42
|
+
* Use backslash `\` to escape a character.
|
|
43
|
+
*
|
|
44
|
+
* Example: `+1(999)-999-99-99`
|
|
45
|
+
*
|
|
46
|
+
* 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:
|
|
47
|
+
*
|
|
48
|
+
* - `m` - Month number.
|
|
49
|
+
* - `mm` - Month number, with leading zero for single-digit values.
|
|
50
|
+
* - `d` - Day of the month.
|
|
51
|
+
* - `dd` - Day of the month, with leading zero for single-digit values.
|
|
52
|
+
* - `yy` - Last two digits of the year.
|
|
53
|
+
* - `yyyy` - A four-digit year.
|
|
54
|
+
*
|
|
55
|
+
* Example: `mm/dd/yyyy`
|
|
56
|
+
*
|
|
57
|
+
* [View Demo](https://surveyjs.io/form-library/examples/masked-input-fields/ (linkStyle))
|
|
58
|
+
* @see [settings.maskSettings](https://surveyjs.io/form-library/documentation/api-reference/settings#maskSettings)
|
|
59
|
+
*/
|
|
13
60
|
pattern: string;
|
|
14
61
|
protected updateLiterals(): void;
|
|
15
62
|
protected onPropertyValueChanged(name: string, oldValue: any, newValue: any): void;
|
|
@@ -198,6 +198,7 @@ export declare class QuestionSelectBase extends Question {
|
|
|
198
198
|
protected updateSelectedItemValues(): void;
|
|
199
199
|
private setCustomValuesIntoItems;
|
|
200
200
|
protected hasUnknownValue(val: any, includeOther?: boolean, isFilteredChoices?: boolean, checkEmptyValue?: boolean): boolean;
|
|
201
|
+
protected hasUnknownValueItem(val: any, includeOther?: boolean, isFilteredChoices?: boolean, checkEmptyValue?: boolean): boolean;
|
|
201
202
|
protected isValueDisabled(val: any): boolean;
|
|
202
203
|
/**
|
|
203
204
|
* If the clearIncorrectValuesCallback is set, it is used to clear incorrect values instead of default behaviour.
|
|
@@ -93,6 +93,14 @@ export declare class QuestionDropdownModel extends QuestionSelectBase {
|
|
|
93
93
|
* @see [SurveyModel.onChoicesSearch](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#onChoicesSearch)
|
|
94
94
|
*/
|
|
95
95
|
searchMode: "contains" | "startsWith";
|
|
96
|
+
/**
|
|
97
|
+
* Specifies whether to wrap long texts in choice options onto a new line.
|
|
98
|
+
*
|
|
99
|
+
* Default value: `true`
|
|
100
|
+
*
|
|
101
|
+
* Disable this property if you want the texts to be truncated with ellipsis.
|
|
102
|
+
*/
|
|
103
|
+
textWrapEnabled: boolean;
|
|
96
104
|
inputHasValue: boolean;
|
|
97
105
|
readOnlyText: string;
|
|
98
106
|
/**
|
|
@@ -55,6 +55,7 @@ export declare class QuestionTagboxModel extends QuestionCheckboxModel {
|
|
|
55
55
|
* Specifies whether to close the drop-down menu after a user selects a value.
|
|
56
56
|
*/
|
|
57
57
|
closeOnSelect: number;
|
|
58
|
+
textWrapEnabled: boolean;
|
|
58
59
|
/*
|
|
59
60
|
* A text displayed in the input field when it doesn't have a value.
|
|
60
61
|
*/
|
|
@@ -19,8 +19,36 @@ export declare class QuestionTextModel extends QuestionTextBase {
|
|
|
19
19
|
private deleteMaskAdapter;
|
|
20
20
|
private updateMaskAdapter;
|
|
21
21
|
onSetMaskType(newValue: string): void;
|
|
22
|
+
/**
|
|
23
|
+
* Specifies the type of a mask applied to the input.
|
|
24
|
+
*
|
|
25
|
+
* Possible values:
|
|
26
|
+
*
|
|
27
|
+
* - `"none"` (default)
|
|
28
|
+
* - `"numeric"`
|
|
29
|
+
* - `"currency"`
|
|
30
|
+
* - `"datetime"`
|
|
31
|
+
* - `"pattern"`
|
|
32
|
+
*
|
|
33
|
+
* [View Demo](https://surveyjs.io/form-library/examples/masked-input-fields/ (linkStyle))
|
|
34
|
+
* @see maskSettings
|
|
35
|
+
*/
|
|
22
36
|
maskType: string;
|
|
23
37
|
readonly maskTypeIsEmpty: boolean;
|
|
38
|
+
/*
|
|
39
|
+
* An object with properties that configure the mask applied to the input.
|
|
40
|
+
*
|
|
41
|
+
* 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:
|
|
42
|
+
*
|
|
43
|
+
* | `maskType` | Class |
|
|
44
|
+
* | ---------- | ----- |
|
|
45
|
+
* | `"numeric"` | [`InputMaskNumeric`](https://surveyjs.io/form-library/documentation/api-reference/inputmasknumeric) |
|
|
46
|
+
* | `"currency"` | [`InputMaskCurrency`](https://surveyjs.io/form-library/documentation/api-reference/inputmaskcurrency) |
|
|
47
|
+
* | `"datetime"` | [`InputMaskDateTime`](https://surveyjs.io/form-library/documentation/api-reference/inputmaskdatetime) |
|
|
48
|
+
* | `"pattern"` | [`InputMaskPattern`](https://surveyjs.io/form-library/documentation/api-reference/inputmaskpattern) |
|
|
49
|
+
*
|
|
50
|
+
* [View Demo](https://surveyjs.io/form-library/examples/masked-input-fields/ (linkStyle))
|
|
51
|
+
*/
|
|
24
52
|
maskSettings: InputMaskBase;
|
|
25
53
|
private setNewMaskSettingsProperty;
|
|
26
54
|
protected createMaskSettings(): InputMaskBase;
|
|
@@ -91,8 +119,11 @@ export declare class QuestionTextModel extends QuestionTextBase {
|
|
|
91
119
|
* @see max
|
|
92
120
|
*/
|
|
93
121
|
readonly isMinMaxType: boolean;
|
|
122
|
+
_inputValue: string;
|
|
94
123
|
readonly maskInstance: IInputMask;
|
|
95
124
|
inputValue: string;
|
|
125
|
+
protected onChangeQuestionValue(newValue: any): void;
|
|
126
|
+
private updateInputValue;
|
|
96
127
|
protected onCheckForErrors(errors: Array<SurveyError>, isOnValueChanged: boolean): void;
|
|
97
128
|
protected canSetValueToSurvey(): boolean;
|
|
98
129
|
protected convertFuncValuetoQuestionValue(val: any): any;
|
|
@@ -42,7 +42,7 @@ export declare var settings: {
|
|
|
42
42
|
* Nested properties:
|
|
43
43
|
*
|
|
44
44
|
* - `useLocalTimeZone`: `boolean`\
|
|
45
|
-
* 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`.
|
|
45
|
+
* 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`.
|
|
46
46
|
*
|
|
47
47
|
* - `defaultLocaleName`: `string`\
|
|
48
48
|
* A property key that stores a translation for the default locale. Default value: `"default"`.
|
|
@@ -168,7 +168,8 @@ export declare var settings: {
|
|
|
168
168
|
* - `enabled`: `boolean`\
|
|
169
169
|
* Specifies whether to add questions to the DOM only when they get into the viewport. Default value: `false`.
|
|
170
170
|
*
|
|
171
|
-
*
|
|
171
|
+
* [View Demo](https://surveyjs.io/form-library/examples/survey-lazy/ (linkStyle))
|
|
172
|
+
* @see [SurveyModel.lazyRendering](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#lazyRendering)
|
|
172
173
|
*/
|
|
173
174
|
lazyRender: {
|
|
174
175
|
enabled: boolean;
|
|
@@ -550,6 +551,20 @@ export declare var settings: {
|
|
|
550
551
|
dataList: string[];
|
|
551
552
|
};
|
|
552
553
|
legacyProgressBarView: boolean;
|
|
554
|
+
/**
|
|
555
|
+
* An object with properties that configure input masks.
|
|
556
|
+
*
|
|
557
|
+
* Nested properties:
|
|
558
|
+
*
|
|
559
|
+
* - `patternPlaceholderChar`: `string`\
|
|
560
|
+
* 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: `"_"`.
|
|
561
|
+
*
|
|
562
|
+
* - `patternEscapeChar`: `string`\
|
|
563
|
+
* A symbol used to insert literal representations of special characters in [pattern masks](https://surveyjs.io/form-library/documentation/api-reference/inputmaskpattern). Default value: `"\\"`.
|
|
564
|
+
*
|
|
565
|
+
* - `patternDefinitions`: `<{ [key: string]: RegExp }>`\
|
|
566
|
+
* 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]/ }`.
|
|
567
|
+
*/
|
|
553
568
|
maskSettings: {
|
|
554
569
|
patternPlaceholderChar: string;
|
|
555
570
|
patternEscapeChar: string;
|
|
@@ -514,9 +514,18 @@ export interface OpenFileChooserEvent {
|
|
|
514
514
|
*/
|
|
515
515
|
input: HTMLInputElement;
|
|
516
516
|
/**
|
|
517
|
-
* A question, panel, page, or survey for which this event is raised.
|
|
517
|
+
* A survey element (question, panel, page, or survey) or a theme JSON schema for which this event is raised.
|
|
518
518
|
*/
|
|
519
519
|
element: Base;
|
|
520
|
+
/**
|
|
521
|
+
* The type of the element passed as the `options.element` parameter.\
|
|
522
|
+
* Possible values: `"theme"`, `"header"`, or any value returned from the [`getType()`](https://surveyjs.io/form-library/documentation/api-reference/question#getType) method.
|
|
523
|
+
*/
|
|
524
|
+
elementType: String;
|
|
525
|
+
/**
|
|
526
|
+
* The name of the survey element property or theme property for which files are being selected.
|
|
527
|
+
*/
|
|
528
|
+
propertyName: String;
|
|
520
529
|
/**
|
|
521
530
|
* 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.
|
|
522
531
|
*/
|
|
@@ -725,6 +734,24 @@ export interface MatrixAllowRemoveRowEvent extends MatrixDynamicQuestionEventMix
|
|
|
725
734
|
*/
|
|
726
735
|
allow: boolean;
|
|
727
736
|
}
|
|
737
|
+
export interface MatrixDetailPanelVisibleChangedEvent extends MatrixDropdownQuestionEventMixin {
|
|
738
|
+
/**
|
|
739
|
+
* A matrix row to which the detail section belongs.
|
|
740
|
+
*/
|
|
741
|
+
row: MatrixDropdownRowModelBase;
|
|
742
|
+
/**
|
|
743
|
+
* A zero-based row index.
|
|
744
|
+
*/
|
|
745
|
+
rowIndex: number;
|
|
746
|
+
/**
|
|
747
|
+
* A [PanelModel](https://surveyjs.io/form-library/documentation/panelmodel) that represents the detail section.
|
|
748
|
+
*/
|
|
749
|
+
detailPanel: PanelModel;
|
|
750
|
+
/**
|
|
751
|
+
* Indicates whether the detail section is visible now.
|
|
752
|
+
*/
|
|
753
|
+
visible: boolean;
|
|
754
|
+
}
|
|
728
755
|
export interface MatrixCellCreatingBaseEvent extends MatrixDropdownQuestionEventMixin {
|
|
729
756
|
/**
|
|
730
757
|
* A [matrix column](https://surveyjs.io/form-library/documentation/api-reference/multi-select-matrix-column-values) to which the cell belongs.
|