survey-core 1.9.128 → 1.9.129
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 +154 -48
- package/defaultV2.css.map +1 -1
- package/defaultV2.fontless.css +154 -48
- 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 +2 -2
- package/i18n/index.js.map +1 -1
- package/i18n/index.min.js +2 -2
- 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 +2 -2
- package/i18n/slovak.js.map +1 -1
- package/i18n/slovak.min.js +2 -2
- 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 +61 -14
- package/modern.css.map +1 -1
- package/modern.fontless.css +61 -14
- 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 +347 -54
- package/survey.core.js.map +1 -1
- package/survey.core.min.js +3 -3
- package/survey.css +61 -14
- package/survey.css.map +1 -1
- package/survey.i18n.js +2 -2
- package/survey.i18n.js.map +1 -1
- package/survey.i18n.min.js +2 -2
- package/survey.min.css +2 -2
- 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 -0
- package/ts3.4/typings/defaultCss/cssmodern.d.ts +2 -0
- package/ts3.4/typings/defaultCss/cssstandard.d.ts +2 -0
- package/ts3.4/typings/defaultCss/defaultV2Css.d.ts +2 -0
- package/ts3.4/typings/dropdownListModel.d.ts +2 -0
- package/ts3.4/typings/entries/chunks/model.d.ts +1 -1
- package/ts3.4/typings/header.d.ts +3 -0
- package/ts3.4/typings/jsonobject.d.ts +3 -0
- package/ts3.4/typings/popup-survey.d.ts +11 -0
- package/ts3.4/typings/question_custom.d.ts +2 -0
- package/ts3.4/typings/question_file.d.ts +1 -0
- package/ts3.4/typings/question_matrixdropdownbase.d.ts +2 -0
- package/ts3.4/typings/question_matrixdropdowncolumn.d.ts +17 -0
- package/ts3.4/typings/question_matrixdropdownrendered.d.ts +1 -0
- package/ts3.4/typings/settings.d.ts +1 -1
- package/ts3.4/typings/survey-events-api.d.ts +19 -0
- package/ts3.4/typings/survey.d.ts +18 -1
- package/ts3.4/typings/utils/utils.d.ts +4 -3
- package/typings/base-interfaces.d.ts +4 -0
- package/typings/defaultCss/cssmodern.d.ts +2 -0
- package/typings/defaultCss/cssstandard.d.ts +2 -0
- package/typings/defaultCss/defaultV2Css.d.ts +2 -0
- package/typings/dropdownListModel.d.ts +2 -0
- package/typings/entries/chunks/model.d.ts +1 -1
- package/typings/header.d.ts +3 -0
- package/typings/jsonobject.d.ts +3 -0
- package/typings/popup-survey.d.ts +13 -0
- package/typings/question_custom.d.ts +2 -0
- package/typings/question_file.d.ts +1 -0
- package/typings/question_matrixdropdownbase.d.ts +2 -0
- package/typings/question_matrixdropdowncolumn.d.ts +18 -0
- package/typings/question_matrixdropdownrendered.d.ts +1 -0
- package/typings/settings.d.ts +1 -1
- package/typings/survey-events-api.d.ts +19 -0
- package/typings/survey.d.ts +18 -1
- package/typings/utils/utils.d.ts +4 -3
|
@@ -33,6 +33,7 @@ export declare class PopupSurveyModel extends Base {
|
|
|
33
33
|
* 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.
|
|
34
34
|
*/
|
|
35
35
|
isShowing: boolean;
|
|
36
|
+
isFullScreen: boolean;
|
|
36
37
|
/**
|
|
37
38
|
* Shows the pop-up survey. The survey may appear [expanded or collapsed](#isExpanded).
|
|
38
39
|
*
|
|
@@ -49,6 +50,7 @@ export declare class PopupSurveyModel extends Base {
|
|
|
49
50
|
* @see collapse
|
|
50
51
|
*/
|
|
51
52
|
hide(): void;
|
|
53
|
+
toggleFullScreen(): void;
|
|
52
54
|
/*
|
|
53
55
|
* Indicates whether the pop-up window is expanded or collapsed.
|
|
54
56
|
*
|
|
@@ -89,6 +91,13 @@ export declare class PopupSurveyModel extends Base {
|
|
|
89
91
|
* @see hide
|
|
90
92
|
*/
|
|
91
93
|
allowClose: boolean;
|
|
94
|
+
/*
|
|
95
|
+
* Specifies whether to display a button that allow showing pop-up in full-screen mode.
|
|
96
|
+
*
|
|
97
|
+
* Default value: `false`
|
|
98
|
+
*
|
|
99
|
+
*/
|
|
100
|
+
allowFullScreen: boolean;
|
|
92
101
|
readonly css: any;
|
|
93
102
|
readonly cssButton: string;
|
|
94
103
|
readonly cssRoot: string;
|
|
@@ -100,9 +109,11 @@ export declare class PopupSurveyModel extends Base {
|
|
|
100
109
|
readonly cssHeaderButtonsContainer: string;
|
|
101
110
|
readonly cssHeaderCollapseButton: string;
|
|
102
111
|
readonly cssHeaderCloseButton: string;
|
|
112
|
+
readonly cssHeaderFullScreenButton: string;
|
|
103
113
|
readonly renderedWidth: string;
|
|
104
114
|
width: string;
|
|
105
115
|
private updateCss;
|
|
116
|
+
private setCssRoot;
|
|
106
117
|
private updateCssButton;
|
|
107
118
|
private setCssButton;
|
|
108
119
|
protected createSurvey(jsonObj: any): SurveyModel;
|
|
@@ -332,6 +332,7 @@ export declare class QuestionCustomModel extends QuestionCustomModelBase {
|
|
|
332
332
|
getDynamicType(): string;
|
|
333
333
|
getOriginalObj(): Base;
|
|
334
334
|
protected createWrapper(): void;
|
|
335
|
+
private getDynamicProperty;
|
|
335
336
|
protected getElement(): SurveyElement;
|
|
336
337
|
onAnyValueChanged(name: string, questionName: string): void;
|
|
337
338
|
protected getQuestionByName(name: string): IQuestion;
|
|
@@ -390,6 +391,7 @@ export declare class QuestionCompositeModel extends QuestionCustomModelBase {
|
|
|
390
391
|
protected getQuestionByName(name: string): IQuestion;
|
|
391
392
|
private settingNewValue;
|
|
392
393
|
setValue(name: string, newValue: any, locNotification: any, allowNotifyValueChanged?: boolean): any;
|
|
394
|
+
getFilteredValues(): any;
|
|
393
395
|
private updateValueCoreWithPanelValue;
|
|
394
396
|
private getContentPanelValue;
|
|
395
397
|
private getValueForContentPanel;
|
|
@@ -46,6 +46,7 @@ export declare class MatrixDropdownCell {
|
|
|
46
46
|
protected createQuestion(column: MatrixDropdownColumn, row: MatrixDropdownRowModelBase, data: IMatrixDropdownData): Question;
|
|
47
47
|
readonly question: Question;
|
|
48
48
|
value: any;
|
|
49
|
+
getQuestionWrapperClassName(className: string): string;
|
|
49
50
|
runCondition(values: HashTable<any>, properties: HashTable<any>): void;
|
|
50
51
|
}
|
|
51
52
|
export declare class MatrixDropdownTotalCell extends MatrixDropdownCell {
|
|
@@ -56,6 +57,7 @@ export declare class MatrixDropdownTotalCell extends MatrixDropdownCell {
|
|
|
56
57
|
protected createQuestion(column: MatrixDropdownColumn, row: MatrixDropdownRowModelBase, data: IMatrixDropdownData): Question;
|
|
57
58
|
locStrsChanged(): void;
|
|
58
59
|
updateCellQuestion(): void;
|
|
60
|
+
getQuestionWrapperClassName(className: string): string;
|
|
59
61
|
getTotalExpression(): string;
|
|
60
62
|
}
|
|
61
63
|
export declare class MatrixDropdownRowModelBase implements ISurveyData, ISurveyImpl, ILocalizableOwner {
|
|
@@ -247,6 +247,23 @@ export declare class MatrixDropdownColumn extends Base implements ILocalizableOw
|
|
|
247
247
|
*/
|
|
248
248
|
totalDisplayStyle: string;
|
|
249
249
|
/*
|
|
250
|
+
* An alignment for calculated total values.
|
|
251
|
+
*
|
|
252
|
+
* Possible values:
|
|
253
|
+
*
|
|
254
|
+
* - `"left"`
|
|
255
|
+
* - `"center"`
|
|
256
|
+
* - `"right"`
|
|
257
|
+
* - `"auto"` (default) - Applies one of the values above based on the column's [cell type](#cellType).
|
|
258
|
+
*
|
|
259
|
+
* [View Demo](https://surveyjs.io/form-library/examples/aggregate-data-within-form/ (linkStyle))
|
|
260
|
+
* @see totalType
|
|
261
|
+
* @see totalFormat
|
|
262
|
+
* @see totalCurrency
|
|
263
|
+
* @see totalDisplayStyle
|
|
264
|
+
*/
|
|
265
|
+
totalAlignment: string;
|
|
266
|
+
/*
|
|
250
267
|
* Specifies a currency used to display calculated total values. Applies only if [`totalDisplayStyle`](#totalDisplayStyle) is set to `"currency"`.
|
|
251
268
|
* @see totalType
|
|
252
269
|
*/
|
|
@@ -44,6 +44,7 @@ export declare class QuestionMatrixDropdownRenderedCell {
|
|
|
44
44
|
readonly isRadio: boolean;
|
|
45
45
|
readonly isFirstChoice: boolean;
|
|
46
46
|
className: string;
|
|
47
|
+
readonly cellQuestionWrapperClassName: string;
|
|
47
48
|
readonly headers: string;
|
|
48
49
|
getTitle(): string;
|
|
49
50
|
calculateFinalClassName(matrixCssClasses: any): string;
|
|
@@ -363,7 +363,7 @@ export declare var settings: {
|
|
|
363
363
|
* @param message A message to be displayed in the confirm dialog window.
|
|
364
364
|
* @param callback A callback function that should be called with `true` if a user confirms an action or `false` otherwise.
|
|
365
365
|
*/
|
|
366
|
-
confirmActionAsync: (message: string, callback: (res: boolean) => void, applyTitle?: string, locale?: string) => boolean;
|
|
366
|
+
confirmActionAsync: (message: string, callback: (res: boolean) => void, applyTitle?: string, locale?: string, rootElement?: HTMLElement) => boolean;
|
|
367
367
|
/**
|
|
368
368
|
* A minimum width value for all survey elements.
|
|
369
369
|
*
|
|
@@ -508,6 +508,25 @@ export interface UploadFilesEvent extends LoadFilesEvent {
|
|
|
508
508
|
*/
|
|
509
509
|
files: Array<File>;
|
|
510
510
|
}
|
|
511
|
+
export interface OpenFileChooserEvent {
|
|
512
|
+
/**
|
|
513
|
+
* A file input HTML element.
|
|
514
|
+
*/
|
|
515
|
+
input: HTMLInputElement;
|
|
516
|
+
/**
|
|
517
|
+
* A question, panel, page, or survey for which this event is raised.
|
|
518
|
+
*/
|
|
519
|
+
element: Base;
|
|
520
|
+
/**
|
|
521
|
+
* 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
|
+
*/
|
|
523
|
+
item: ItemValue;
|
|
524
|
+
/**
|
|
525
|
+
* A callback function to which you should pass selected files.
|
|
526
|
+
* @param files An array of selected files.
|
|
527
|
+
*/
|
|
528
|
+
callback: (files: Array<File>) => void;
|
|
529
|
+
}
|
|
511
530
|
export interface DownloadFileEvent extends LoadFilesEvent {
|
|
512
531
|
/**
|
|
513
532
|
* 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.
|
|
@@ -18,7 +18,7 @@ import { IAction, Action } from "./actions/action";
|
|
|
18
18
|
import { ActionContainer } from "./actions/container";
|
|
19
19
|
import { QuestionPanelDynamicModel } from "./question_paneldynamic";
|
|
20
20
|
import { Notifier } from "./notifier";
|
|
21
|
-
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 } from "./survey-events-api";
|
|
21
|
+
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";
|
|
22
22
|
import { QuestionMatrixDropdownModelBase } from "./question_matrixdropdownbase";
|
|
23
23
|
import { QuestionMatrixDynamicModel } from "./question_matrixdynamic";
|
|
24
24
|
import { QuestionFileModel } from "./question_file";
|
|
@@ -358,6 +358,12 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
|
|
|
358
358
|
* @see getResult
|
|
359
359
|
*/
|
|
360
360
|
onGetResult: EventBase<SurveyModel, GetResultEvent>;
|
|
361
|
+
/**
|
|
362
|
+
* An event that is raised when Survey Creator opens a dialog window for users to select files.
|
|
363
|
+
* @see onUploadFile
|
|
364
|
+
* @see uploadFiles
|
|
365
|
+
*/
|
|
366
|
+
onOpenFileChooser: EventBase<SurveyModel, OpenFileChooserEvent>;
|
|
361
367
|
/**
|
|
362
368
|
* An event that is raised when a File Upload or Signature Pad question starts to upload a file. Applies only if [`storeDataAsText`](https://surveyjs.io/form-library/documentation/api-reference/file-model#storeDataAsText) is `false`. Use this event to upload files to your server.
|
|
363
369
|
*
|
|
@@ -2069,6 +2075,17 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
|
|
|
2069
2075
|
private getUpdatedPageTitleActions;
|
|
2070
2076
|
getUpdatedMatrixRowActions(question: QuestionMatrixDropdownModelBase, row: any, actions: Array<IAction>): IAction[];
|
|
2071
2077
|
scrollElementToTop(element: ISurveyElement, question: Question, page: PageModel, id: string, scrollIfVisible?: boolean): any;
|
|
2078
|
+
/**
|
|
2079
|
+
* Opens a dialog window for users to select files.
|
|
2080
|
+
* @param input A [file input HTML element](https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement).
|
|
2081
|
+
* @param callback A callback function that you can use to process selected files. Accepts an array of JavaScript <a href="https://developer.mozilla.org/en-US/docs/Web/API/File" target="_blank">File</a> objects.
|
|
2082
|
+
* @see onOpenFileChooser
|
|
2083
|
+
* @see onUploadFile
|
|
2084
|
+
*/
|
|
2085
|
+
chooseFiles(input: HTMLInputElement, callback: (files: File[]) => void, context?: {
|
|
2086
|
+
element: ISurveyElement;
|
|
2087
|
+
item?: any;
|
|
2088
|
+
}): void;
|
|
2072
2089
|
/**
|
|
2073
2090
|
* Uploads files to a server.
|
|
2074
2091
|
*
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
declare function compareVersions(a: any, b: any): number;
|
|
2
2
|
declare function confirmAction(message: string): boolean;
|
|
3
|
-
declare function confirmActionAsync(message: string, funcOnYes: () => void, funcOnNo?: () => void, locale?: string): void;
|
|
3
|
+
declare function confirmActionAsync(message: string, funcOnYes: () => void, funcOnNo?: () => void, locale?: string, rootElement?: HTMLElement): void;
|
|
4
4
|
declare function detectIEBrowser(): boolean;
|
|
5
5
|
declare function detectIEOrEdge(): boolean;
|
|
6
6
|
declare function loadFileFromBase64(b64Data: string, fileName: string): void;
|
|
@@ -40,5 +40,6 @@ export declare class Logger {
|
|
|
40
40
|
log(action: string): void;
|
|
41
41
|
readonly result: string;
|
|
42
42
|
}
|
|
43
|
-
export declare function showConfirmDialog(message: string, callback: (res: boolean) => void, applyTitle?: string, locale?: string): boolean;
|
|
44
|
-
|
|
43
|
+
export declare function showConfirmDialog(message: string, callback: (res: boolean) => void, applyTitle?: string, locale?: string, rootElement?: HTMLElement): boolean;
|
|
44
|
+
declare function chooseFiles(input: HTMLInputElement, callback: (files: File[]) => void): void;
|
|
45
|
+
export { mergeValues, getElementWidth, isContainerVisible, classesToSelector, compareVersions, confirmAction, confirmActionAsync, detectIEOrEdge, detectIEBrowser, loadFileFromBase64, isMobile, isShadowDOM, getElement, isElementVisible, findScrollableParent, scrollElementByChildId, navigateToUrl, wrapUrlForBackgroundImage, createSvg, getIconNameFromProxy, increaseHeightByContent, getOriginalEvent, preventDefaults, findParentByClassNames, getFirstVisibleChild, chooseFiles };
|
|
@@ -157,6 +157,10 @@ export interface ISurvey extends ITextProcessor, ISurveyErrorOwner {
|
|
|
157
157
|
elementContentVisibilityChanged(element: ISurveyElement): void;
|
|
158
158
|
onCorrectQuestionAnswer(question: IQuestion, options: any): void;
|
|
159
159
|
processPopupVisiblityChanged(question: IQuestion, popupModel: PopupModel, visible: boolean): void;
|
|
160
|
+
chooseFiles(input: HTMLInputElement, callback: (files: File[]) => void, context?: {
|
|
161
|
+
element: ISurveyElement;
|
|
162
|
+
item?: any;
|
|
163
|
+
}): void;
|
|
160
164
|
}
|
|
161
165
|
export interface ISurveyImpl {
|
|
162
166
|
getSurveyData(): ISurveyData;
|
|
@@ -426,6 +426,7 @@ export declare var modernCss: {
|
|
|
426
426
|
window: {
|
|
427
427
|
root: string;
|
|
428
428
|
rootCollapsedMod: string;
|
|
429
|
+
rootFullScreenMode: string;
|
|
429
430
|
rootContent: string;
|
|
430
431
|
body: string;
|
|
431
432
|
header: {
|
|
@@ -437,6 +438,7 @@ export declare var modernCss: {
|
|
|
437
438
|
buttonCollapsed: string;
|
|
438
439
|
collapseButton: string;
|
|
439
440
|
closeButton: string;
|
|
441
|
+
fullScreenButton: string;
|
|
440
442
|
};
|
|
441
443
|
};
|
|
442
444
|
variables: {
|
|
@@ -360,6 +360,7 @@ export declare var defaultStandardCss: {
|
|
|
360
360
|
window: {
|
|
361
361
|
root: string;
|
|
362
362
|
rootCollapsedMod: string;
|
|
363
|
+
rootFullScreenMode: string;
|
|
363
364
|
rootContent: string;
|
|
364
365
|
body: string;
|
|
365
366
|
header: {
|
|
@@ -371,6 +372,7 @@ export declare var defaultStandardCss: {
|
|
|
371
372
|
buttonCollapsed: string;
|
|
372
373
|
collapseButton: string;
|
|
373
374
|
closeButton: string;
|
|
375
|
+
fullScreenButton: string;
|
|
374
376
|
};
|
|
375
377
|
};
|
|
376
378
|
variables: {
|
|
@@ -641,6 +641,7 @@ export declare var defaultV2Css: {
|
|
|
641
641
|
window: {
|
|
642
642
|
root: string;
|
|
643
643
|
rootCollapsedMod: string;
|
|
644
|
+
rootFullScreenMode: string;
|
|
644
645
|
rootContent: string;
|
|
645
646
|
body: string;
|
|
646
647
|
header: {
|
|
@@ -652,6 +653,7 @@ export declare var defaultV2Css: {
|
|
|
652
653
|
buttonCollapsed: string;
|
|
653
654
|
collapseButton: string;
|
|
654
655
|
closeButton: string;
|
|
656
|
+
fullScreenButton: string;
|
|
655
657
|
};
|
|
656
658
|
};
|
|
657
659
|
ranking: {
|
|
@@ -9,6 +9,7 @@ export declare class DropdownListModel extends Base {
|
|
|
9
9
|
protected onSelectionChanged?: (item: IAction, ...params: any[]) => void;
|
|
10
10
|
readonly minPageSize = 25;
|
|
11
11
|
readonly loadingItemHeight = 40;
|
|
12
|
+
private htmlCleanerElement;
|
|
12
13
|
private _markdownMode;
|
|
13
14
|
private _popupModel;
|
|
14
15
|
private filteredItems;
|
|
@@ -45,6 +46,7 @@ export declare class DropdownListModel extends Base {
|
|
|
45
46
|
showInputFieldComponent: boolean;
|
|
46
47
|
ariaActivedescendant: string;
|
|
47
48
|
private applyInputString;
|
|
49
|
+
private cleanHtml;
|
|
48
50
|
protected fixInputCase(): void;
|
|
49
51
|
protected applyHintString(item: ItemValue): void;
|
|
50
52
|
get inputStringRendered(): string;
|
|
@@ -88,7 +88,7 @@ export { DropdownListModel } from "../../dropdownListModel";
|
|
|
88
88
|
export { DropdownMultiSelectListModel } from "../../dropdownMultiSelectListModel";
|
|
89
89
|
export { QuestionButtonGroupModel, ButtonGroupItemModel, ButtonGroupItemValue } from "../../question_buttongroup";
|
|
90
90
|
export { IsMobile, IsTouch, _setIsTouch } from "../../utils/devices";
|
|
91
|
-
export { confirmAction, confirmActionAsync, detectIEOrEdge, doKey2ClickUp, doKey2ClickDown, doKey2ClickBlur, loadFileFromBase64, increaseHeightByContent, createSvg, sanitizeEditableContent, IAttachKey2clickOptions } from "../../utils/utils";
|
|
91
|
+
export { confirmAction, confirmActionAsync, detectIEOrEdge, doKey2ClickUp, doKey2ClickDown, doKey2ClickBlur, loadFileFromBase64, increaseHeightByContent, createSvg, chooseFiles, sanitizeEditableContent, IAttachKey2clickOptions } from "../../utils/utils";
|
|
92
92
|
export * from "../../utils/cssClassBuilder";
|
|
93
93
|
export { surveyCss, defaultV2Css, defaultV2ThemeName } from "../../defaultCss/defaultV2Css";
|
|
94
94
|
export { DragDropCore } from "../../dragdrop/core";
|
package/typings/header.d.ts
CHANGED
|
@@ -29,6 +29,7 @@ export declare class Cover extends Base {
|
|
|
29
29
|
private updateContentClasses;
|
|
30
30
|
private updateBackgroundImageClasses;
|
|
31
31
|
fromTheme(theme: ITheme): void;
|
|
32
|
+
private init;
|
|
32
33
|
constructor();
|
|
33
34
|
getType(): string;
|
|
34
35
|
cells: CoverCell[];
|
|
@@ -39,6 +40,8 @@ export declare class Cover extends Base {
|
|
|
39
40
|
textGlowEnabled: boolean;
|
|
40
41
|
overlapEnabled: boolean;
|
|
41
42
|
backgroundColor: string;
|
|
43
|
+
titleColor: string;
|
|
44
|
+
descriptionColor: string;
|
|
42
45
|
backgroundImage: string;
|
|
43
46
|
renderBackgroundImage: string;
|
|
44
47
|
backgroundImageFit: "cover" | "fill" | "contain" | "tile";
|
package/typings/jsonobject.d.ts
CHANGED
|
@@ -77,6 +77,7 @@ export declare class JsonObjectProperty implements IObject {
|
|
|
77
77
|
onSettingValue: (obj: any, value: any) => any;
|
|
78
78
|
onSetValue: (obj: any, value: any, jsonConv: JsonObject) => any;
|
|
79
79
|
visibleIf: (obj: any) => boolean;
|
|
80
|
+
enableIf: (obj: any) => boolean;
|
|
80
81
|
onExecuteExpression: (obj: any, res: any) => any;
|
|
81
82
|
onPropertyEditorUpdate: (obj: any, propEditor: any) => any;
|
|
82
83
|
constructor(classInfo: JsonMetadataClass, name: string, isRequired?: boolean);
|
|
@@ -116,7 +117,9 @@ export declare class JsonObjectProperty implements IObject {
|
|
|
116
117
|
setBaseValue(val: any): void;
|
|
117
118
|
get readOnly(): boolean;
|
|
118
119
|
set readOnly(val: boolean);
|
|
120
|
+
isEnable(obj: any): boolean;
|
|
119
121
|
isVisible(layout: string, obj?: any): boolean;
|
|
122
|
+
private getOriginalObj;
|
|
120
123
|
get visible(): boolean;
|
|
121
124
|
set visible(val: boolean);
|
|
122
125
|
isAvailableInVersion(ver: string): boolean;
|
|
@@ -34,6 +34,8 @@ export declare class PopupSurveyModel extends Base {
|
|
|
34
34
|
*/
|
|
35
35
|
get isShowing(): boolean;
|
|
36
36
|
set isShowing(val: boolean);
|
|
37
|
+
get isFullScreen(): boolean;
|
|
38
|
+
set isFullScreen(val: boolean);
|
|
37
39
|
/**
|
|
38
40
|
* Shows the pop-up survey. The survey may appear [expanded or collapsed](#isExpanded).
|
|
39
41
|
*
|
|
@@ -50,6 +52,7 @@ export declare class PopupSurveyModel extends Base {
|
|
|
50
52
|
* @see collapse
|
|
51
53
|
*/
|
|
52
54
|
hide(): void;
|
|
55
|
+
toggleFullScreen(): void;
|
|
53
56
|
/**
|
|
54
57
|
* Indicates whether the pop-up window is expanded or collapsed.
|
|
55
58
|
*
|
|
@@ -93,6 +96,14 @@ export declare class PopupSurveyModel extends Base {
|
|
|
93
96
|
*/
|
|
94
97
|
get allowClose(): boolean;
|
|
95
98
|
set allowClose(val: boolean);
|
|
99
|
+
/**
|
|
100
|
+
* Specifies whether to display a button that allow showing pop-up in full-screen mode.
|
|
101
|
+
*
|
|
102
|
+
* Default value: `false`
|
|
103
|
+
*
|
|
104
|
+
*/
|
|
105
|
+
get allowFullScreen(): boolean;
|
|
106
|
+
set allowFullScreen(val: boolean);
|
|
96
107
|
get css(): any;
|
|
97
108
|
get cssButton(): string;
|
|
98
109
|
get cssRoot(): string;
|
|
@@ -104,9 +115,11 @@ export declare class PopupSurveyModel extends Base {
|
|
|
104
115
|
get cssHeaderButtonsContainer(): string;
|
|
105
116
|
get cssHeaderCollapseButton(): string;
|
|
106
117
|
get cssHeaderCloseButton(): string;
|
|
118
|
+
get cssHeaderFullScreenButton(): string;
|
|
107
119
|
get renderedWidth(): string;
|
|
108
120
|
width: string;
|
|
109
121
|
private updateCss;
|
|
122
|
+
private setCssRoot;
|
|
110
123
|
private updateCssButton;
|
|
111
124
|
private setCssButton;
|
|
112
125
|
protected createSurvey(jsonObj: any): SurveyModel;
|
|
@@ -332,6 +332,7 @@ export declare class QuestionCustomModel extends QuestionCustomModelBase {
|
|
|
332
332
|
getDynamicType(): string;
|
|
333
333
|
getOriginalObj(): Base;
|
|
334
334
|
protected createWrapper(): void;
|
|
335
|
+
private getDynamicProperty;
|
|
335
336
|
protected getElement(): SurveyElement;
|
|
336
337
|
onAnyValueChanged(name: string, questionName: string): void;
|
|
337
338
|
protected getQuestionByName(name: string): IQuestion;
|
|
@@ -390,6 +391,7 @@ export declare class QuestionCompositeModel extends QuestionCustomModelBase {
|
|
|
390
391
|
protected getQuestionByName(name: string): IQuestion;
|
|
391
392
|
private settingNewValue;
|
|
392
393
|
setValue(name: string, newValue: any, locNotification: any, allowNotifyValueChanged?: boolean): any;
|
|
394
|
+
getFilteredValues(): any;
|
|
393
395
|
private updateValueCoreWithPanelValue;
|
|
394
396
|
private getContentPanelValue;
|
|
395
397
|
private getValueForContentPanel;
|
|
@@ -47,6 +47,7 @@ export declare class MatrixDropdownCell {
|
|
|
47
47
|
get question(): Question;
|
|
48
48
|
get value(): any;
|
|
49
49
|
set value(value: any);
|
|
50
|
+
getQuestionWrapperClassName(className: string): string;
|
|
50
51
|
runCondition(values: HashTable<any>, properties: HashTable<any>): void;
|
|
51
52
|
}
|
|
52
53
|
export declare class MatrixDropdownTotalCell extends MatrixDropdownCell {
|
|
@@ -57,6 +58,7 @@ export declare class MatrixDropdownTotalCell extends MatrixDropdownCell {
|
|
|
57
58
|
protected createQuestion(column: MatrixDropdownColumn, row: MatrixDropdownRowModelBase, data: IMatrixDropdownData): Question;
|
|
58
59
|
locStrsChanged(): void;
|
|
59
60
|
updateCellQuestion(): void;
|
|
61
|
+
getQuestionWrapperClassName(className: string): string;
|
|
60
62
|
getTotalExpression(): string;
|
|
61
63
|
}
|
|
62
64
|
export declare class MatrixDropdownRowModelBase implements ISurveyData, ISurveyImpl, ILocalizableOwner {
|
|
@@ -275,6 +275,24 @@ export declare class MatrixDropdownColumn extends Base implements ILocalizableOw
|
|
|
275
275
|
*/
|
|
276
276
|
get totalDisplayStyle(): string;
|
|
277
277
|
set totalDisplayStyle(val: string);
|
|
278
|
+
/**
|
|
279
|
+
* An alignment for calculated total values.
|
|
280
|
+
*
|
|
281
|
+
* Possible values:
|
|
282
|
+
*
|
|
283
|
+
* - `"left"`
|
|
284
|
+
* - `"center"`
|
|
285
|
+
* - `"right"`
|
|
286
|
+
* - `"auto"` (default) - Applies one of the values above based on the column's [cell type](#cellType).
|
|
287
|
+
*
|
|
288
|
+
* [View Demo](https://surveyjs.io/form-library/examples/aggregate-data-within-form/ (linkStyle))
|
|
289
|
+
* @see totalType
|
|
290
|
+
* @see totalFormat
|
|
291
|
+
* @see totalCurrency
|
|
292
|
+
* @see totalDisplayStyle
|
|
293
|
+
*/
|
|
294
|
+
get totalAlignment(): string;
|
|
295
|
+
set totalAlignment(val: string);
|
|
278
296
|
/**
|
|
279
297
|
* Specifies a currency used to display calculated total values. Applies only if [`totalDisplayStyle`](#totalDisplayStyle) is set to `"currency"`.
|
|
280
298
|
* @see totalType
|
|
@@ -46,6 +46,7 @@ export declare class QuestionMatrixDropdownRenderedCell {
|
|
|
46
46
|
get isFirstChoice(): boolean;
|
|
47
47
|
set className(val: string);
|
|
48
48
|
get className(): string;
|
|
49
|
+
get cellQuestionWrapperClassName(): string;
|
|
49
50
|
get headers(): string;
|
|
50
51
|
getTitle(): string;
|
|
51
52
|
calculateFinalClassName(matrixCssClasses: any): string;
|
package/typings/settings.d.ts
CHANGED
|
@@ -363,7 +363,7 @@ export declare var settings: {
|
|
|
363
363
|
* @param message A message to be displayed in the confirm dialog window.
|
|
364
364
|
* @param callback A callback function that should be called with `true` if a user confirms an action or `false` otherwise.
|
|
365
365
|
*/
|
|
366
|
-
confirmActionAsync: (message: string, callback: (res: boolean) => void, applyTitle?: string, locale?: string) => boolean;
|
|
366
|
+
confirmActionAsync: (message: string, callback: (res: boolean) => void, applyTitle?: string, locale?: string, rootElement?: HTMLElement) => boolean;
|
|
367
367
|
/**
|
|
368
368
|
* A minimum width value for all survey elements.
|
|
369
369
|
*
|
|
@@ -508,6 +508,25 @@ export interface UploadFilesEvent extends LoadFilesEvent {
|
|
|
508
508
|
*/
|
|
509
509
|
files: Array<File>;
|
|
510
510
|
}
|
|
511
|
+
export interface OpenFileChooserEvent {
|
|
512
|
+
/**
|
|
513
|
+
* A file input HTML element.
|
|
514
|
+
*/
|
|
515
|
+
input: HTMLInputElement;
|
|
516
|
+
/**
|
|
517
|
+
* A question, panel, page, or survey for which this event is raised.
|
|
518
|
+
*/
|
|
519
|
+
element: Base;
|
|
520
|
+
/**
|
|
521
|
+
* 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
|
+
*/
|
|
523
|
+
item: ItemValue;
|
|
524
|
+
/**
|
|
525
|
+
* A callback function to which you should pass selected files.
|
|
526
|
+
* @param files An array of selected files.
|
|
527
|
+
*/
|
|
528
|
+
callback: (files: Array<File>) => void;
|
|
529
|
+
}
|
|
511
530
|
export interface DownloadFileEvent extends LoadFilesEvent {
|
|
512
531
|
/**
|
|
513
532
|
* 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.
|
package/typings/survey.d.ts
CHANGED
|
@@ -18,7 +18,7 @@ import { IAction, Action } from "./actions/action";
|
|
|
18
18
|
import { ActionContainer } from "./actions/container";
|
|
19
19
|
import { QuestionPanelDynamicModel } from "./question_paneldynamic";
|
|
20
20
|
import { Notifier } from "./notifier";
|
|
21
|
-
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 } from "./survey-events-api";
|
|
21
|
+
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";
|
|
22
22
|
import { QuestionMatrixDropdownModelBase } from "./question_matrixdropdownbase";
|
|
23
23
|
import { QuestionMatrixDynamicModel } from "./question_matrixdynamic";
|
|
24
24
|
import { QuestionFileModel } from "./question_file";
|
|
@@ -361,6 +361,12 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
|
|
|
361
361
|
* @see getResult
|
|
362
362
|
*/
|
|
363
363
|
onGetResult: EventBase<SurveyModel, GetResultEvent>;
|
|
364
|
+
/**
|
|
365
|
+
* An event that is raised when Survey Creator opens a dialog window for users to select files.
|
|
366
|
+
* @see onUploadFile
|
|
367
|
+
* @see uploadFiles
|
|
368
|
+
*/
|
|
369
|
+
onOpenFileChooser: EventBase<SurveyModel, OpenFileChooserEvent>;
|
|
364
370
|
/**
|
|
365
371
|
* An event that is raised when a File Upload or Signature Pad question starts to upload a file. Applies only if [`storeDataAsText`](https://surveyjs.io/form-library/documentation/api-reference/file-model#storeDataAsText) is `false`. Use this event to upload files to your server.
|
|
366
372
|
*
|
|
@@ -2154,6 +2160,17 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
|
|
|
2154
2160
|
private getUpdatedPageTitleActions;
|
|
2155
2161
|
getUpdatedMatrixRowActions(question: QuestionMatrixDropdownModelBase, row: any, actions: Array<IAction>): IAction[];
|
|
2156
2162
|
scrollElementToTop(element: ISurveyElement, question: Question, page: PageModel, id: string, scrollIfVisible?: boolean): any;
|
|
2163
|
+
/**
|
|
2164
|
+
* Opens a dialog window for users to select files.
|
|
2165
|
+
* @param input A [file input HTML element](https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement).
|
|
2166
|
+
* @param callback A callback function that you can use to process selected files. Accepts an array of JavaScript <a href="https://developer.mozilla.org/en-US/docs/Web/API/File" target="_blank">File</a> objects.
|
|
2167
|
+
* @see onOpenFileChooser
|
|
2168
|
+
* @see onUploadFile
|
|
2169
|
+
*/
|
|
2170
|
+
chooseFiles(input: HTMLInputElement, callback: (files: File[]) => void, context?: {
|
|
2171
|
+
element: ISurveyElement;
|
|
2172
|
+
item?: any;
|
|
2173
|
+
}): void;
|
|
2157
2174
|
/**
|
|
2158
2175
|
* Uploads files to a server.
|
|
2159
2176
|
*
|
package/typings/utils/utils.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
declare function compareVersions(a: any, b: any): number;
|
|
2
2
|
declare function confirmAction(message: string): boolean;
|
|
3
|
-
declare function confirmActionAsync(message: string, funcOnYes: () => void, funcOnNo?: () => void, locale?: string): void;
|
|
3
|
+
declare function confirmActionAsync(message: string, funcOnYes: () => void, funcOnNo?: () => void, locale?: string, rootElement?: HTMLElement): void;
|
|
4
4
|
declare function detectIEBrowser(): boolean;
|
|
5
5
|
declare function detectIEOrEdge(): boolean;
|
|
6
6
|
declare function loadFileFromBase64(b64Data: string, fileName: string): void;
|
|
@@ -40,5 +40,6 @@ export declare class Logger {
|
|
|
40
40
|
log(action: string): void;
|
|
41
41
|
get result(): string;
|
|
42
42
|
}
|
|
43
|
-
export declare function showConfirmDialog(message: string, callback: (res: boolean) => void, applyTitle?: string, locale?: string): boolean;
|
|
44
|
-
|
|
43
|
+
export declare function showConfirmDialog(message: string, callback: (res: boolean) => void, applyTitle?: string, locale?: string, rootElement?: HTMLElement): boolean;
|
|
44
|
+
declare function chooseFiles(input: HTMLInputElement, callback: (files: File[]) => void): void;
|
|
45
|
+
export { mergeValues, getElementWidth, isContainerVisible, classesToSelector, compareVersions, confirmAction, confirmActionAsync, detectIEOrEdge, detectIEBrowser, loadFileFromBase64, isMobile, isShadowDOM, getElement, isElementVisible, findScrollableParent, scrollElementByChildId, navigateToUrl, wrapUrlForBackgroundImage, createSvg, getIconNameFromProxy, increaseHeightByContent, getOriginalEvent, preventDefaults, findParentByClassNames, getFirstVisibleChild, chooseFiles };
|