survey-core 1.12.7 → 1.12.8
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 +22 -3
- package/defaultV2.css.map +1 -1
- package/defaultV2.fontless.css +22 -3
- package/defaultV2.fontless.css.map +1 -1
- package/defaultV2.fontless.min.css +2 -2
- package/defaultV2.min.css +2 -2
- package/i18n/arabic.js +5 -2
- package/i18n/arabic.js.map +1 -1
- package/i18n/arabic.min.js +2 -2
- package/i18n/basque.js +5 -2
- package/i18n/basque.js.map +1 -1
- package/i18n/basque.min.js +2 -2
- package/i18n/bulgarian.js +5 -2
- package/i18n/bulgarian.js.map +1 -1
- package/i18n/bulgarian.min.js +2 -2
- package/i18n/catalan.js +5 -2
- package/i18n/catalan.js.map +1 -1
- package/i18n/catalan.min.js +2 -2
- package/i18n/croatian.js +5 -2
- package/i18n/croatian.js.map +1 -1
- package/i18n/croatian.min.js +2 -2
- package/i18n/czech.js +5 -2
- package/i18n/czech.js.map +1 -1
- package/i18n/czech.min.js +2 -2
- package/i18n/danish.js +5 -2
- package/i18n/danish.js.map +1 -1
- package/i18n/danish.min.js +2 -2
- package/i18n/dutch.js +5 -2
- package/i18n/dutch.js.map +1 -1
- package/i18n/dutch.min.js +2 -2
- package/i18n/english.js +2 -1
- package/i18n/english.js.map +1 -1
- package/i18n/english.min.js +2 -2
- package/i18n/estonian.js +5 -2
- package/i18n/estonian.js.map +1 -1
- package/i18n/estonian.min.js +2 -2
- package/i18n/finnish.js +5 -2
- package/i18n/finnish.js.map +1 -1
- package/i18n/finnish.min.js +2 -2
- package/i18n/french.js +5 -2
- package/i18n/french.js.map +1 -1
- package/i18n/french.min.js +2 -2
- package/i18n/georgian.js +5 -2
- package/i18n/georgian.js.map +1 -1
- package/i18n/georgian.min.js +2 -2
- package/i18n/german.js +5 -2
- package/i18n/german.js.map +1 -1
- package/i18n/german.min.js +2 -2
- package/i18n/greek.js +5 -2
- package/i18n/greek.js.map +1 -1
- package/i18n/greek.min.js +2 -2
- package/i18n/hebrew.js +5 -2
- package/i18n/hebrew.js.map +1 -1
- package/i18n/hebrew.min.js +2 -2
- package/i18n/hindi.js +5 -2
- package/i18n/hindi.js.map +1 -1
- package/i18n/hindi.min.js +2 -2
- package/i18n/hungarian.js +5 -2
- package/i18n/hungarian.js.map +1 -1
- package/i18n/hungarian.min.js +2 -2
- package/i18n/icelandic.js +5 -2
- package/i18n/icelandic.js.map +1 -1
- package/i18n/icelandic.min.js +2 -2
- package/i18n/index.js +193 -48
- package/i18n/index.js.map +1 -1
- package/i18n/index.min.js +2 -2
- package/i18n/indonesian.js +5 -2
- package/i18n/indonesian.js.map +1 -1
- package/i18n/indonesian.min.js +2 -2
- package/i18n/italian.js +5 -2
- package/i18n/italian.js.map +1 -1
- package/i18n/italian.min.js +2 -2
- package/i18n/japanese.js +5 -1
- package/i18n/japanese.js.map +1 -1
- package/i18n/japanese.min.js +2 -2
- package/i18n/kazakh.js +5 -2
- package/i18n/kazakh.js.map +1 -1
- package/i18n/kazakh.min.js +2 -2
- package/i18n/korean.js +5 -2
- package/i18n/korean.js.map +1 -1
- package/i18n/korean.min.js +2 -2
- package/i18n/latvian.js +5 -2
- package/i18n/latvian.js.map +1 -1
- package/i18n/latvian.min.js +2 -2
- package/i18n/lithuanian.js +5 -2
- package/i18n/lithuanian.js.map +1 -1
- package/i18n/lithuanian.min.js +2 -2
- package/i18n/macedonian.js +5 -2
- package/i18n/macedonian.js.map +1 -1
- package/i18n/macedonian.min.js +2 -2
- package/i18n/malay.js +5 -2
- package/i18n/malay.js.map +1 -1
- package/i18n/malay.min.js +2 -2
- package/i18n/nl-BE.js +5 -2
- package/i18n/nl-BE.js.map +1 -1
- package/i18n/nl-BE.min.js +2 -2
- package/i18n/norwegian.js +5 -2
- package/i18n/norwegian.js.map +1 -1
- package/i18n/norwegian.min.js +2 -2
- package/i18n/persian.js +5 -2
- package/i18n/persian.js.map +1 -1
- package/i18n/persian.min.js +2 -2
- package/i18n/philippines.js +5 -2
- package/i18n/philippines.js.map +1 -1
- package/i18n/philippines.min.js +2 -2
- package/i18n/polish.js +5 -2
- package/i18n/polish.js.map +1 -1
- package/i18n/polish.min.js +2 -2
- package/i18n/portuguese-br.js +5 -2
- package/i18n/portuguese-br.js.map +1 -1
- package/i18n/portuguese-br.min.js +2 -2
- package/i18n/portuguese.js +5 -2
- package/i18n/portuguese.js.map +1 -1
- package/i18n/portuguese.min.js +2 -2
- package/i18n/romanian.js +5 -2
- package/i18n/romanian.js.map +1 -1
- package/i18n/romanian.min.js +2 -2
- package/i18n/russian.js +5 -2
- package/i18n/russian.js.map +1 -1
- package/i18n/russian.min.js +2 -2
- package/i18n/serbian.js +5 -2
- package/i18n/serbian.js.map +1 -1
- package/i18n/serbian.min.js +2 -2
- package/i18n/simplified-chinese.js +5 -2
- package/i18n/simplified-chinese.js.map +1 -1
- package/i18n/simplified-chinese.min.js +2 -2
- package/i18n/slovak.js +5 -2
- package/i18n/slovak.js.map +1 -1
- package/i18n/slovak.min.js +2 -2
- package/i18n/spanish.js +5 -2
- package/i18n/spanish.js.map +1 -1
- package/i18n/spanish.min.js +2 -2
- package/i18n/swahili.js +5 -2
- package/i18n/swahili.js.map +1 -1
- package/i18n/swahili.min.js +2 -2
- package/i18n/swedish.js +5 -2
- package/i18n/swedish.js.map +1 -1
- package/i18n/swedish.min.js +2 -2
- package/i18n/tajik.js +1 -1
- package/i18n/tajik.min.js +1 -1
- package/i18n/telugu.js +5 -2
- package/i18n/telugu.js.map +1 -1
- package/i18n/telugu.min.js +2 -2
- package/i18n/thai.js +5 -2
- package/i18n/thai.js.map +1 -1
- package/i18n/thai.min.js +2 -2
- package/i18n/traditional-chinese.js +5 -2
- package/i18n/traditional-chinese.js.map +1 -1
- package/i18n/traditional-chinese.min.js +2 -2
- package/i18n/turkish.js +5 -2
- package/i18n/turkish.js.map +1 -1
- package/i18n/turkish.min.js +2 -2
- package/i18n/ukrainian.js +5 -2
- package/i18n/ukrainian.js.map +1 -1
- package/i18n/ukrainian.min.js +2 -2
- package/i18n/urdu.js +5 -2
- package/i18n/urdu.js.map +1 -1
- package/i18n/urdu.min.js +2 -2
- package/i18n/vietnamese.js +5 -2
- package/i18n/vietnamese.js.map +1 -1
- package/i18n/vietnamese.min.js +2 -2
- package/i18n/welsh.js +5 -2
- package/i18n/welsh.js.map +1 -1
- package/i18n/welsh.min.js +2 -2
- package/modern.css +17 -1
- package/modern.css.map +1 -1
- package/modern.fontless.css +17 -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/cssbootstrap.d.ts +1 -0
- package/plugins/bootstrap-integration/index.js +3 -2
- package/plugins/bootstrap-integration/index.js.map +1 -1
- package/plugins/bootstrap-integration/index.min.js +2 -2
- package/plugins/bootstrap-material-integration/cssbootstrapmaterial.d.ts +1 -0
- package/plugins/bootstrap-material-integration/index.js +3 -2
- package/plugins/bootstrap-material-integration/index.js.map +1 -1
- package/plugins/bootstrap-material-integration/index.min.js +2 -2
- package/survey.core.js +466 -247
- package/survey.core.js.map +1 -1
- package/survey.core.min.js +3 -3
- package/survey.css +17 -1
- package/survey.css.map +1 -1
- package/survey.i18n.js +193 -48
- 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/packages/survey-core/src/base-interfaces.d.ts +1 -0
- package/ts3.4/typings/packages/survey-core/src/base.d.ts +1 -1
- package/ts3.4/typings/packages/survey-core/src/conditionProcessValue.d.ts +2 -0
- package/ts3.4/typings/packages/survey-core/src/conditions.d.ts +25 -18
- package/ts3.4/typings/packages/survey-core/src/defaultCss/defaultV2Css.d.ts +1 -0
- package/ts3.4/typings/packages/survey-core/src/dragdrop/matrix-rows.d.ts +1 -0
- package/ts3.4/typings/packages/survey-core/src/expressions/expressions.d.ts +5 -5
- package/ts3.4/typings/packages/survey-core/src/itemvalue.d.ts +2 -1
- package/ts3.4/typings/packages/survey-core/src/jsonobject.d.ts +1 -1
- package/ts3.4/typings/packages/survey-core/src/localizablestring.d.ts +2 -2
- package/ts3.4/typings/packages/survey-core/src/localization/english.d.ts +1 -0
- package/ts3.4/typings/packages/survey-core/src/question_checkbox.d.ts +1 -0
- package/ts3.4/typings/packages/survey-core/src/question_file.d.ts +4 -3
- package/ts3.4/typings/packages/survey-core/src/question_matrix.d.ts +1 -1
- package/ts3.4/typings/packages/survey-core/src/question_matrixdropdownbase.d.ts +5 -0
- package/ts3.4/typings/packages/survey-core/src/question_matrixdropdownrendered.d.ts +3 -1
- package/ts3.4/typings/packages/survey-core/src/question_matrixdynamic.d.ts +3 -1
- package/ts3.4/typings/packages/survey-core/src/question_signaturepad.d.ts +5 -3
- package/ts3.4/typings/packages/survey-core/src/survey-events-api.d.ts +13 -1
- package/ts3.4/typings/packages/survey-core/src/survey.d.ts +21 -4
- package/ts3.4/typings/packages/survey-core/src/surveyStrings.d.ts +1 -0
- package/ts3.4/typings/src/defaultCss/cssmodern.d.ts +1 -0
- package/ts3.4/typings/src/defaultCss/cssstandard.d.ts +1 -0
- package/typings/packages/survey-core/src/base-interfaces.d.ts +1 -0
- package/typings/packages/survey-core/src/base.d.ts +1 -1
- package/typings/packages/survey-core/src/conditionProcessValue.d.ts +2 -0
- package/typings/packages/survey-core/src/conditions.d.ts +25 -18
- package/typings/packages/survey-core/src/defaultCss/defaultV2Css.d.ts +1 -0
- package/typings/packages/survey-core/src/dragdrop/matrix-rows.d.ts +1 -0
- package/typings/packages/survey-core/src/expressions/expressions.d.ts +5 -5
- package/typings/packages/survey-core/src/itemvalue.d.ts +2 -1
- package/typings/packages/survey-core/src/jsonobject.d.ts +1 -1
- package/typings/packages/survey-core/src/localizablestring.d.ts +2 -2
- package/typings/packages/survey-core/src/localization/english.d.ts +1 -0
- package/typings/packages/survey-core/src/question_checkbox.d.ts +1 -0
- package/typings/packages/survey-core/src/question_file.d.ts +5 -4
- package/typings/packages/survey-core/src/question_matrix.d.ts +1 -1
- package/typings/packages/survey-core/src/question_matrixdropdownbase.d.ts +5 -0
- package/typings/packages/survey-core/src/question_matrixdropdownrendered.d.ts +3 -1
- package/typings/packages/survey-core/src/question_matrixdynamic.d.ts +3 -1
- package/typings/packages/survey-core/src/question_signaturepad.d.ts +5 -3
- package/typings/packages/survey-core/src/survey-events-api.d.ts +13 -1
- package/typings/packages/survey-core/src/survey.d.ts +21 -4
- package/typings/packages/survey-core/src/surveyStrings.d.ts +1 -0
- package/typings/src/defaultCss/cssmodern.d.ts +1 -0
- package/typings/src/defaultCss/cssstandard.d.ts +1 -0
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { HashTable } from "./helpers";
|
|
2
|
+
import { Operand } from "./expressions/expressions";
|
|
2
3
|
/**
|
|
3
4
|
* Base interface for expression execution
|
|
4
5
|
*/
|
|
@@ -6,7 +7,7 @@ export interface IExpresionExecutor {
|
|
|
6
7
|
/**
|
|
7
8
|
* This call back runs on executing expression if there is at least one async function
|
|
8
9
|
*/
|
|
9
|
-
onComplete: (res: any) => void;
|
|
10
|
+
onComplete: (res: any, id: number) => void;
|
|
10
11
|
/**
|
|
11
12
|
* The expression as string, property with get
|
|
12
13
|
*/
|
|
@@ -21,7 +22,7 @@ export interface IExpresionExecutor {
|
|
|
21
22
|
* @param values has with values names and their results. Normally it is question names and their values
|
|
22
23
|
* @param properties the list of properties that are available in functions. Commonly it is survey and question, if expression execuited in a question context
|
|
23
24
|
*/
|
|
24
|
-
run(values: HashTable<any>, properties: HashTable<any
|
|
25
|
+
run(values: HashTable<any>, properties: HashTable<any>, id: number): any;
|
|
25
26
|
/**
|
|
26
27
|
* Returns the list of variables that used in the expression. They defined as: {variableName} in default parser.
|
|
27
28
|
*/
|
|
@@ -35,16 +36,30 @@ export interface IExpresionExecutor {
|
|
|
35
36
|
*/
|
|
36
37
|
isAsync: boolean;
|
|
37
38
|
}
|
|
39
|
+
export declare class ExpressionExecutorRunner {
|
|
40
|
+
private operand;
|
|
41
|
+
private id;
|
|
42
|
+
private onComplete;
|
|
43
|
+
private processValue;
|
|
44
|
+
private asyncFuncList;
|
|
45
|
+
constructor(operand: Operand, id: number, onComplete: (res: any, id: number) => void, values: HashTable<any>, properties: HashTable<any>);
|
|
46
|
+
run(isAsync: boolean): any;
|
|
47
|
+
private getAsyncItemByOperand;
|
|
48
|
+
private runAsyncItem;
|
|
49
|
+
private runAsyncItemCore;
|
|
50
|
+
private doAsyncFunctionReady;
|
|
51
|
+
private isAsyncFuncReady;
|
|
52
|
+
private isAsyncChildrenReady;
|
|
53
|
+
private runValues;
|
|
54
|
+
}
|
|
38
55
|
export declare class ExpressionExecutor implements IExpresionExecutor {
|
|
39
56
|
static createExpressionExecutor: (expression: string) => IExpresionExecutor;
|
|
40
|
-
onComplete: (res: any) => void;
|
|
57
|
+
onComplete: (res: any, id: number) => void;
|
|
41
58
|
private expressionValue;
|
|
42
59
|
private operand;
|
|
43
|
-
private processValue;
|
|
44
60
|
private parser;
|
|
45
61
|
private isAsyncValue;
|
|
46
62
|
private hasFunctionValue;
|
|
47
|
-
private asyncFuncList;
|
|
48
63
|
constructor(expression: string);
|
|
49
64
|
readonly expression: string;
|
|
50
65
|
private setExpression;
|
|
@@ -52,39 +67,31 @@ export declare class ExpressionExecutor implements IExpresionExecutor {
|
|
|
52
67
|
hasFunction(): boolean;
|
|
53
68
|
readonly isAsync: boolean;
|
|
54
69
|
canRun(): boolean;
|
|
55
|
-
run(values: HashTable<any>, properties
|
|
56
|
-
private runAsyncItem;
|
|
57
|
-
private runAsyncItemCore;
|
|
58
|
-
private doAsyncFunctionReady;
|
|
59
|
-
private isAsyncFuncReady;
|
|
60
|
-
private isAsyncChildrenReady;
|
|
61
|
-
private runValues;
|
|
70
|
+
run(values: HashTable<any>, properties: HashTable<any>, id: number): any;
|
|
62
71
|
}
|
|
63
72
|
export declare class ExpressionRunnerBase {
|
|
64
73
|
private expressionExecutor;
|
|
65
74
|
private variables;
|
|
66
75
|
private containsFunc;
|
|
67
|
-
private static
|
|
68
|
-
private _id;
|
|
76
|
+
private static IdRunnerCounter;
|
|
69
77
|
onBeforeAsyncRun: (id: number) => void;
|
|
70
78
|
onAfterAsyncRun: (id: number) => void;
|
|
71
79
|
constructor(expression: string);
|
|
72
|
-
readonly id: number;
|
|
73
80
|
expression: string;
|
|
74
81
|
getVariables(): Array<string>;
|
|
75
82
|
hasFunction(): boolean;
|
|
76
83
|
readonly isAsync: boolean;
|
|
77
84
|
canRun(): boolean;
|
|
78
85
|
protected runCore(values: HashTable<any>, properties?: HashTable<any>): any;
|
|
79
|
-
protected doOnComplete(res: any): void;
|
|
86
|
+
protected doOnComplete(res: any, id: number): void;
|
|
80
87
|
}
|
|
81
88
|
export declare class ConditionRunner extends ExpressionRunnerBase {
|
|
82
89
|
onRunComplete: (result: boolean) => void;
|
|
83
90
|
run(values: HashTable<any>, properties?: HashTable<any>): boolean;
|
|
84
|
-
protected doOnComplete(res: any): void;
|
|
91
|
+
protected doOnComplete(res: any, id: number): void;
|
|
85
92
|
}
|
|
86
93
|
export declare class ExpressionRunner extends ExpressionRunnerBase {
|
|
87
94
|
onRunComplete: (result: any) => void;
|
|
88
95
|
run(values: HashTable<any>, properties?: HashTable<any>): any;
|
|
89
|
-
protected doOnComplete(res: any): void;
|
|
96
|
+
protected doOnComplete(res: any, id: number): void;
|
|
90
97
|
}
|
|
@@ -5,6 +5,7 @@ export declare class DragDropMatrixRows extends DragDropCore<QuestionMatrixDynam
|
|
|
5
5
|
protected readonly draggedElementType: string;
|
|
6
6
|
protected restoreUserSelectValue: string;
|
|
7
7
|
protected onStartDrag(): void;
|
|
8
|
+
private readonly shortcutClass: any;
|
|
8
9
|
protected createDraggedElementShortcut(text: string, draggedElementNode: HTMLElement, event: PointerEvent): HTMLElement;
|
|
9
10
|
private fromIndex;
|
|
10
11
|
private toIndex;
|
|
@@ -6,6 +6,9 @@ export interface AsyncFunctionItem {
|
|
|
6
6
|
children?: Array<AsyncFunctionItem>;
|
|
7
7
|
}
|
|
8
8
|
export declare abstract class Operand {
|
|
9
|
+
private static counter;
|
|
10
|
+
private _id;
|
|
11
|
+
readonly id: number;
|
|
9
12
|
toString(func?: (op: Operand) => string): string;
|
|
10
13
|
abstract getType(): string;
|
|
11
14
|
abstract evaluate(processValue?: ProcessValue): any;
|
|
@@ -101,17 +104,14 @@ export declare class Variable extends Const {
|
|
|
101
104
|
export declare class FunctionOperand extends Operand {
|
|
102
105
|
private originalValue;
|
|
103
106
|
private parameters;
|
|
104
|
-
private isReadyValue;
|
|
105
|
-
private asynResult;
|
|
106
|
-
onAsyncReady: () => void;
|
|
107
107
|
constructor(originalValue: string, parameters: ArrayOperand);
|
|
108
108
|
getType(): string;
|
|
109
|
-
evaluateAsync(processValue: ProcessValue): void;
|
|
110
109
|
evaluate(processValue?: ProcessValue): any;
|
|
111
110
|
private evaluateCore;
|
|
112
111
|
toString(func?: (op: Operand) => string): string;
|
|
113
112
|
setVariables(variables: Array<string>): void;
|
|
114
|
-
|
|
113
|
+
isReady(proccessValue: ProcessValue): boolean;
|
|
114
|
+
private getAsynValue;
|
|
115
115
|
hasFunction(): boolean;
|
|
116
116
|
hasAsyncFunction(): boolean;
|
|
117
117
|
private isAsyncFunction;
|
|
@@ -43,6 +43,7 @@ export declare class ItemValue extends BaseAction implements ILocalizableOwner,
|
|
|
43
43
|
private _locOwner;
|
|
44
44
|
locOwner: ILocalizableOwner;
|
|
45
45
|
value: any;
|
|
46
|
+
private setValue;
|
|
46
47
|
readonly hasText: boolean;
|
|
47
48
|
pureText: string;
|
|
48
49
|
text: string;
|
|
@@ -51,7 +52,7 @@ export declare class ItemValue extends BaseAction implements ILocalizableOwner,
|
|
|
51
52
|
private canSerializeValue;
|
|
52
53
|
getData(): any;
|
|
53
54
|
toJSON(): any;
|
|
54
|
-
setData(value: any): void;
|
|
55
|
+
setData(value: any, isNewItem?: boolean): void;
|
|
55
56
|
visibleIf: string;
|
|
56
57
|
enableIf: string;
|
|
57
58
|
readonly isVisible: boolean;
|
|
@@ -146,7 +146,7 @@ export declare class JsonObjectProperty implements IObject, IJsonPropertyInfo {
|
|
|
146
146
|
defaultValue: any;
|
|
147
147
|
isDefaultValue(value: any): boolean;
|
|
148
148
|
isDefaultValueByObj(obj: Base, value: any): boolean;
|
|
149
|
-
getSerializableValue(obj: any): any;
|
|
149
|
+
getSerializableValue(obj: any, storeDefaults?: boolean): any;
|
|
150
150
|
getValue(obj: any): any;
|
|
151
151
|
getPropertyValue(obj: any): any;
|
|
152
152
|
readonly hasToUseSetValue: string | ((obj: any, value: any, jsonConv: JsonObject) => any);
|
|
@@ -43,7 +43,7 @@ export declare class LocalizableString implements ILocalizableString {
|
|
|
43
43
|
searchIndex: number;
|
|
44
44
|
disableLocalization: boolean;
|
|
45
45
|
defaultValue: string;
|
|
46
|
-
constructor(owner: ILocalizableOwner, useMarkdown?: boolean, name?: string);
|
|
46
|
+
constructor(owner: ILocalizableOwner, useMarkdown?: boolean, name?: string, locName?: string);
|
|
47
47
|
getIsMultiple(): boolean;
|
|
48
48
|
readonly locale: string;
|
|
49
49
|
strChanged(): void;
|
|
@@ -72,7 +72,7 @@ export declare class LocalizableString implements ILocalizableString {
|
|
|
72
72
|
hasNonDefaultText(): boolean;
|
|
73
73
|
getLocales(): Array<string>;
|
|
74
74
|
getJson(): any;
|
|
75
|
-
setJson(value: any): void;
|
|
75
|
+
setJson(value: any, isLoading?: boolean): void;
|
|
76
76
|
readonly renderAs: string;
|
|
77
77
|
readonly renderAsData: any;
|
|
78
78
|
equals(obj: any): boolean;
|
|
@@ -60,6 +60,7 @@ export declare class QuestionCheckboxModel extends QuestionCheckboxBase {
|
|
|
60
60
|
selectAll(): void;
|
|
61
61
|
clickItemHandler(item: ItemValue, checked?: boolean): void;
|
|
62
62
|
protected isItemSelectedCore(item: ItemValue): boolean;
|
|
63
|
+
protected convertFuncValuetoQuestionValue(val: any): any;
|
|
63
64
|
private getRealValue;
|
|
64
65
|
readonly isValueArray: boolean;
|
|
65
66
|
/*
|
|
@@ -45,6 +45,9 @@ export declare class QuestionFileModelBase extends Question {
|
|
|
45
45
|
protected uploadFiles(files: File[]): void;
|
|
46
46
|
protected loadPreview(newValue: any): void;
|
|
47
47
|
protected onChangeQuestionValue(newValue: any): void;
|
|
48
|
+
protected getIsQuestionReady(): boolean;
|
|
49
|
+
private isFileLoadingValue;
|
|
50
|
+
protected isFileLoading: boolean;
|
|
48
51
|
}
|
|
49
52
|
export declare class QuestionFilePage extends Base {
|
|
50
53
|
private question;
|
|
@@ -95,8 +98,6 @@ export declare class QuestionFileModel extends QuestionFileModelBase {
|
|
|
95
98
|
cleanAction: Action;
|
|
96
99
|
actionsContainer: ActionContainer;
|
|
97
100
|
readonly supportFileNavigator: boolean;
|
|
98
|
-
private isFileLoadingValue;
|
|
99
|
-
protected isFileLoading: boolean;
|
|
100
101
|
readonly fileNavigatorVisible: boolean;
|
|
101
102
|
private readonly pagesCount: any;
|
|
102
103
|
readonly actionsContainerVisible: boolean;
|
|
@@ -123,6 +124,7 @@ export declare class QuestionFileModel extends QuestionFileModelBase {
|
|
|
123
124
|
private prevPreviewLength;
|
|
124
125
|
private previewValueChanged;
|
|
125
126
|
getType(): string;
|
|
127
|
+
protected onChangeQuestionValue(newValue: any): void;
|
|
126
128
|
/*
|
|
127
129
|
* Disable this property only to implement a custom preview.
|
|
128
130
|
*
|
|
@@ -231,7 +233,6 @@ export declare class QuestionFileModel extends QuestionFileModelBase {
|
|
|
231
233
|
protected readonly camera: Camera;
|
|
232
234
|
canPreviewImage(fileItem: any): boolean;
|
|
233
235
|
protected loadPreview(newValue: any): void;
|
|
234
|
-
protected getIsQuestionReady(): boolean;
|
|
235
236
|
private allFilesOk;
|
|
236
237
|
private isFileImage;
|
|
237
238
|
getPlainData(options?: IPlainDataOptions): IQuestionPlainData;
|
|
@@ -65,7 +65,7 @@ export declare class MatrixCells extends Base {
|
|
|
65
65
|
readonly columns: Array<any>;
|
|
66
66
|
private getCellRowColumnValue;
|
|
67
67
|
getJson(): any;
|
|
68
|
-
setJson(value: any): void;
|
|
68
|
+
setJson(value: any, isLoading?: boolean): void;
|
|
69
69
|
locStrsChanged(): void;
|
|
70
70
|
private runFuncOnLocs;
|
|
71
71
|
protected createString(): LocalizableString;
|
|
@@ -538,4 +538,9 @@ export declare class QuestionMatrixDropdownModelBase extends QuestionMatrixBaseM
|
|
|
538
538
|
readonly showHorizontalScroll: boolean;
|
|
539
539
|
protected onMobileChanged(): void;
|
|
540
540
|
getRootCss(): string;
|
|
541
|
+
afterRenderQuestionElement(el: HTMLElement): void;
|
|
542
|
+
beforeDestroyQuestionElement(el: HTMLElement): void;
|
|
543
|
+
private rootElement;
|
|
544
|
+
setRootElement(val: HTMLElement): void;
|
|
545
|
+
getRootElement(): HTMLElement;
|
|
541
546
|
}
|
|
@@ -78,6 +78,7 @@ export declare class QuestionMatrixDropdownRenderedRow extends Base {
|
|
|
78
78
|
private rootElement;
|
|
79
79
|
setRootElement(val: HTMLTableRowElement): void;
|
|
80
80
|
getRootElement(): HTMLTableRowElement;
|
|
81
|
+
focusCell(cellIndex: number): void;
|
|
81
82
|
}
|
|
82
83
|
export declare class QuestionMatrixDropdownRenderedErrorRow extends QuestionMatrixDropdownRenderedRow {
|
|
83
84
|
isErrorsRow: boolean;
|
|
@@ -122,6 +123,7 @@ export declare class QuestionMatrixDropdownRenderedTable extends Base {
|
|
|
122
123
|
private getRenderedDataRowCount;
|
|
123
124
|
onRemovedRow(row: MatrixDropdownRowModelBase): void;
|
|
124
125
|
onDetailPanelChangeVisibility(row: MatrixDropdownRowModelBase, isShowing: boolean): void;
|
|
126
|
+
focusActionCell(row: MatrixDropdownRowModelBase, actionCellIndex: number): void;
|
|
125
127
|
private getRenderedRowIndex;
|
|
126
128
|
protected buildRowsActions(): void;
|
|
127
129
|
protected createRenderedRow(cssClasses: any, isDetailRow?: boolean): QuestionMatrixDropdownRenderedRow;
|
|
@@ -160,7 +162,7 @@ export declare class QuestionMatrixDropdownRenderedTable extends Base {
|
|
|
160
162
|
private setHeaderCellCssClasses;
|
|
161
163
|
private createHeaderCell;
|
|
162
164
|
private setHeaderCell;
|
|
163
|
-
private
|
|
165
|
+
private setCellWidth;
|
|
164
166
|
private createTextCell;
|
|
165
167
|
private createEmptyCell;
|
|
166
168
|
}
|
|
@@ -174,6 +174,8 @@ export declare class QuestionMatrixDynamicModel extends QuestionMatrixDropdownMo
|
|
|
174
174
|
protected isValueSurveyElement(val: any): boolean;
|
|
175
175
|
private addRowCore;
|
|
176
176
|
private getDefaultRowValue;
|
|
177
|
+
focusAddBUtton(): void;
|
|
178
|
+
getActionCellIndex(row: MatrixDropdownRowModelBase): number;
|
|
177
179
|
removeRowUI(value: any): void;
|
|
178
180
|
isRequireConfirmOnRowDelete(index: number): boolean;
|
|
179
181
|
/**
|
|
@@ -181,7 +183,7 @@ export declare class QuestionMatrixDynamicModel extends QuestionMatrixDropdownMo
|
|
|
181
183
|
* @param index A zero-based row index.
|
|
182
184
|
* @param confirmDelete *(Optional)* A Boolean value that specifies whether to display a confirmation dialog. If you do not specify this parameter, the [`confirmDelete`](https://surveyjs.io/form-library/documentation/api-reference/dynamic-matrix-table-question-model#confirmDelete) property value is used.
|
|
183
185
|
*/
|
|
184
|
-
removeRow(index: number, confirmDelete?: boolean): void;
|
|
186
|
+
removeRow(index: number, confirmDelete?: boolean, onRowRemoved?: () => void): void;
|
|
185
187
|
private removeRowAsync;
|
|
186
188
|
private removeRowCore;
|
|
187
189
|
/*
|
|
@@ -25,12 +25,14 @@ export declare class QuestionSignaturePadModel extends QuestionFileModelBase {
|
|
|
25
25
|
valueWasChangedFromLastUpload: boolean;
|
|
26
26
|
private resizeCanvas;
|
|
27
27
|
private scaleCanvas;
|
|
28
|
-
private fromDataUrl;
|
|
29
28
|
private fromUrl;
|
|
30
|
-
private
|
|
31
|
-
private
|
|
29
|
+
private fromDataUrl;
|
|
30
|
+
private _loadedData;
|
|
31
|
+
readonly loadedData: string;
|
|
32
32
|
protected loadPreview(newValue: any): void;
|
|
33
|
+
protected onChangeQuestionValue(newValue: any): void;
|
|
33
34
|
onSurveyLoad(): void;
|
|
35
|
+
private updateValueHandler;
|
|
34
36
|
initSignaturePad(el: HTMLElement): void;
|
|
35
37
|
destroySignaturePad(el: HTMLElement): void;
|
|
36
38
|
/*
|
|
@@ -397,10 +397,22 @@ export interface GetTitleTagNameEvent {
|
|
|
397
397
|
}
|
|
398
398
|
export interface GetQuestionNoEvent extends QuestionEventMixin {
|
|
399
399
|
/**
|
|
400
|
-
*
|
|
400
|
+
* Obsolete. Use `options.number` instead.
|
|
401
401
|
*/
|
|
402
402
|
no: string;
|
|
403
403
|
}
|
|
404
|
+
export interface GetQuestionNumberEvent extends GetQuestionNoEvent {
|
|
405
|
+
/**
|
|
406
|
+
* A question number that is calculated based upon the question's [`visibleIndex`](https://surveyjs.io/form-library/documentation/api-reference/question#visibleIndex) and survey's [`questionStartIndex`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#questionStartIndex) properties. You can change this parameter's value.
|
|
407
|
+
*/
|
|
408
|
+
number: string;
|
|
409
|
+
}
|
|
410
|
+
export interface GetPageNumberEvent extends PageEventMixin {
|
|
411
|
+
/**
|
|
412
|
+
* A page number. Note that this is a string value that contains not only the number itself but also the characters that separate the number from the page title: `"1. "`, `"2. "`, etc. You can change this parameter's value.
|
|
413
|
+
*/
|
|
414
|
+
number: string;
|
|
415
|
+
}
|
|
404
416
|
export interface ProgressTextEvent {
|
|
405
417
|
/**
|
|
406
418
|
* The number of questions with input fields. [Image](https://surveyjs.io/form-library/examples/add-image-and-video-to-survey/), [HTML](https://surveyjs.io/form-library/examples/questiontype-html/), and [Expression](https://surveyjs.io/form-library/examples/questiontype-expression/) questions are not counted.
|
|
@@ -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,
|
|
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, GetQuestionNumberEvent, GetPageNumberEvent, ProgressTextEvent, TextMarkdownEvent, SendResultEvent, GetResultEvent, UploadFilesEvent, DownloadFileEvent, ClearFilesEvent, LoadChoicesFromServerEvent, ProcessTextValueEvent, UpdateQuestionCssClassesEvent, UpdatePanelCssClassesEvent, UpdatePageCssClassesEvent, UpdateChoiceItemCssEvent, AfterRenderSurveyEvent, AfterRenderPageEvent, AfterRenderQuestionEvent, AfterRenderQuestionInputEvent, AfterRenderPanelEvent, FocusInQuestionEvent, FocusInPanelEvent, ShowingChoiceItemEvent, ChoicesLazyLoadEvent, GetChoiceDisplayValueEvent, MatrixRowAddedEvent, MatrixBeforeRowAddedEvent, MatrixRowRemovingEvent, MatrixRowRemovedEvent, MatrixAllowRemoveRowEvent, MatrixDetailPanelVisibleChangedEvent, MatrixCellCreatingEvent, MatrixCellCreatedEvent, MatrixAfterCellRenderEvent, MatrixCellValueChangedEvent, MatrixCellValueChangingEvent, MatrixCellValidateEvent, DynamicPanelModifiedEvent, DynamicPanelRemovingEvent, DynamicPanelItemValueChangedEvent, DynamicPanelGetTabTitleEvent, DynamicPanelCurrentIndexChangedEvent, IsAnswerCorrectEvent, DragDropAllowEvent, ScrollingElementToTopEvent, GetQuestionTitleActionsEvent, GetPanelTitleActionsEvent, GetPageTitleActionsEvent, GetPanelFooterActionsEvent, GetMatrixRowActionsEvent, ElementContentVisibilityChangedEvent, GetExpressionDisplayValueEvent, ServerValidateQuestionsEvent, MultipleTextItemAddedEvent, MatrixColumnAddedEvent, GetQuestionDisplayValueEvent, PopupVisibleChangedEvent, ChoicesSearchEvent, OpenFileChooserEvent, OpenDropdownMenuEvent, ResizeEvent } 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";
|
|
@@ -306,7 +306,7 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
|
|
|
306
306
|
*
|
|
307
307
|
* For information on event handler parameters, refer to descriptions within the interface.
|
|
308
308
|
*
|
|
309
|
-
* If you want to modify question numbers, handle the [`
|
|
309
|
+
* If you want to modify question numbers, handle the [`onGetQuestionNumber`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#onGetQuestionNumber) event.
|
|
310
310
|
* @see requiredText
|
|
311
311
|
*/
|
|
312
312
|
onGetQuestionTitle: EventBase<SurveyModel, GetQuestionTitleEvent>;
|
|
@@ -319,7 +319,7 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
|
|
|
319
319
|
*
|
|
320
320
|
* [View Demo](https://surveyjs.io/form-library/examples/survey-titletagnames/ (linkStyle))
|
|
321
321
|
* @see onGetQuestionTitle
|
|
322
|
-
* @see
|
|
322
|
+
* @see onGetQuestionNumber
|
|
323
323
|
*/
|
|
324
324
|
onGetTitleTagName: EventBase<SurveyModel, GetTitleTagNameEvent>;
|
|
325
325
|
/**
|
|
@@ -331,7 +331,21 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
|
|
|
331
331
|
* @see onGetQuestionTitle
|
|
332
332
|
* @see questionStartIndex
|
|
333
333
|
*/
|
|
334
|
-
|
|
334
|
+
onGetQuestionNumber: EventBase<SurveyModel, GetQuestionNumberEvent>;
|
|
335
|
+
/**
|
|
336
|
+
* This event is obsolete. Use the [`onGetQuestionNumber`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#onGetQuestionNumber) event instead.
|
|
337
|
+
*/
|
|
338
|
+
onGetQuestionNo: EventBase<SurveyModel, GetQuestionNumberEvent>;
|
|
339
|
+
/**
|
|
340
|
+
* An event that is raised before the survey calculates a page number. Handle this event to modify page numbers.
|
|
341
|
+
*
|
|
342
|
+
* This event is raised only if the [`showPageNumbers`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#showPageNumbers) property is enabled.
|
|
343
|
+
*
|
|
344
|
+
* For information on event handler parameters, refer to descriptions within the interface.
|
|
345
|
+
* @see onGetQuestionTitle
|
|
346
|
+
* @see questionStartIndex
|
|
347
|
+
*/
|
|
348
|
+
onGetPageNumber: EventBase<SurveyModel, GetPageNumberEvent>;
|
|
335
349
|
/**
|
|
336
350
|
* An event that is raised before the survey displays progress text. Handle this event to change the progress text in code.
|
|
337
351
|
* @see showProgressBar
|
|
@@ -1407,10 +1421,12 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
|
|
|
1407
1421
|
readonly locQuestionTitleTemplate: LocalizableString;
|
|
1408
1422
|
getUpdatedQuestionTitle(question: Question, title: string): string;
|
|
1409
1423
|
getUpdatedQuestionNo(question: Question, no: string): string;
|
|
1424
|
+
getUpdatedPageNo(page: PageModel, no: string): string;
|
|
1410
1425
|
/*
|
|
1411
1426
|
* Specifies whether page titles contain page numbers.
|
|
1412
1427
|
*
|
|
1413
1428
|
* [View Demo](https://surveyjs.io/form-library/examples/how-to-number-pages-and-questions/ (linkStyle))
|
|
1429
|
+
* @see onGetPageNumber
|
|
1414
1430
|
*/
|
|
1415
1431
|
showPageNumbers: boolean;
|
|
1416
1432
|
/*
|
|
@@ -1425,6 +1441,7 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
|
|
|
1425
1441
|
* [View Demo](https://surveyjs.io/form-library/examples/how-to-number-pages-and-questions/ (linkStyle))
|
|
1426
1442
|
*
|
|
1427
1443
|
* If you want to hide the number of an individual question, enable its [`hideNumber`](https://surveyjs.io/form-library/documentation/api-reference/question#hideNumber) property.
|
|
1444
|
+
* @see onGetQuestionNumber
|
|
1428
1445
|
*/
|
|
1429
1446
|
showQuestionNumbers: string | boolean;
|
|
1430
1447
|
private progressBarValue;
|
|
@@ -102,6 +102,7 @@ export interface ISurvey extends ITextProcessor, ISurveyErrorOwner {
|
|
|
102
102
|
questionTitlePattern: string;
|
|
103
103
|
getUpdatedQuestionTitle(question: IQuestion, title: string): string;
|
|
104
104
|
getUpdatedQuestionNo(question: IQuestion, no: string): string;
|
|
105
|
+
getUpdatedPageNo(question: IPage, no: string): string;
|
|
105
106
|
getUpdatedElementTitleActions(element: ISurveyElement, titleActions: Array<IAction>): Array<IAction>;
|
|
106
107
|
getUpdatedMatrixRowActions(question: QuestionMatrixDropdownModelBase, row: MatrixDropdownRowModelBase, actions: Array<IAction>): Array<IAction>;
|
|
107
108
|
getUpdatedPanelFooterActions(panel: PanelModel, actions: Array<IAction>, question?: QuestionPanelDynamicModel): Array<IAction>;
|
|
@@ -18,7 +18,7 @@ export declare class Bindings {
|
|
|
18
18
|
getValueNameByPropertyName(propertyName: string): string;
|
|
19
19
|
getPropertiesByValueName(valueName: string): Array<string>;
|
|
20
20
|
getJson(): any;
|
|
21
|
-
setJson(value: any): void;
|
|
21
|
+
setJson(value: any, isLoading?: boolean): void;
|
|
22
22
|
private fillProperties;
|
|
23
23
|
private onChangedJSON;
|
|
24
24
|
}
|
|
@@ -2,6 +2,8 @@ import { HashTable } from "./helpers";
|
|
|
2
2
|
export declare class ProcessValue {
|
|
3
3
|
values: HashTable<any>;
|
|
4
4
|
properties: HashTable<any>;
|
|
5
|
+
asyncValues: HashTable<any>;
|
|
6
|
+
onCompleteAsyncFunc: (op: any) => void;
|
|
5
7
|
constructor();
|
|
6
8
|
getFirstName(text: string, obj?: any): string;
|
|
7
9
|
hasValue(text: string, values?: HashTable<any>): boolean;
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { HashTable } from "./helpers";
|
|
2
|
+
import { Operand } from "./expressions/expressions";
|
|
2
3
|
/**
|
|
3
4
|
* Base interface for expression execution
|
|
4
5
|
*/
|
|
@@ -6,7 +7,7 @@ export interface IExpresionExecutor {
|
|
|
6
7
|
/**
|
|
7
8
|
* This call back runs on executing expression if there is at least one async function
|
|
8
9
|
*/
|
|
9
|
-
onComplete: (res: any) => void;
|
|
10
|
+
onComplete: (res: any, id: number) => void;
|
|
10
11
|
/**
|
|
11
12
|
* The expression as string, property with get
|
|
12
13
|
*/
|
|
@@ -21,7 +22,7 @@ export interface IExpresionExecutor {
|
|
|
21
22
|
* @param values has with values names and their results. Normally it is question names and their values
|
|
22
23
|
* @param properties the list of properties that are available in functions. Commonly it is survey and question, if expression execuited in a question context
|
|
23
24
|
*/
|
|
24
|
-
run(values: HashTable<any>, properties: HashTable<any
|
|
25
|
+
run(values: HashTable<any>, properties: HashTable<any>, id: number): any;
|
|
25
26
|
/**
|
|
26
27
|
* Returns the list of variables that used in the expression. They defined as: {variableName} in default parser.
|
|
27
28
|
*/
|
|
@@ -35,16 +36,30 @@ export interface IExpresionExecutor {
|
|
|
35
36
|
*/
|
|
36
37
|
isAsync: boolean;
|
|
37
38
|
}
|
|
39
|
+
export declare class ExpressionExecutorRunner {
|
|
40
|
+
private operand;
|
|
41
|
+
private id;
|
|
42
|
+
private onComplete;
|
|
43
|
+
private processValue;
|
|
44
|
+
private asyncFuncList;
|
|
45
|
+
constructor(operand: Operand, id: number, onComplete: (res: any, id: number) => void, values: HashTable<any>, properties: HashTable<any>);
|
|
46
|
+
run(isAsync: boolean): any;
|
|
47
|
+
private getAsyncItemByOperand;
|
|
48
|
+
private runAsyncItem;
|
|
49
|
+
private runAsyncItemCore;
|
|
50
|
+
private doAsyncFunctionReady;
|
|
51
|
+
private isAsyncFuncReady;
|
|
52
|
+
private isAsyncChildrenReady;
|
|
53
|
+
private runValues;
|
|
54
|
+
}
|
|
38
55
|
export declare class ExpressionExecutor implements IExpresionExecutor {
|
|
39
56
|
static createExpressionExecutor: (expression: string) => IExpresionExecutor;
|
|
40
|
-
onComplete: (res: any) => void;
|
|
57
|
+
onComplete: (res: any, id: number) => void;
|
|
41
58
|
private expressionValue;
|
|
42
59
|
private operand;
|
|
43
|
-
private processValue;
|
|
44
60
|
private parser;
|
|
45
61
|
private isAsyncValue;
|
|
46
62
|
private hasFunctionValue;
|
|
47
|
-
private asyncFuncList;
|
|
48
63
|
constructor(expression: string);
|
|
49
64
|
get expression(): string;
|
|
50
65
|
private setExpression;
|
|
@@ -52,24 +67,16 @@ export declare class ExpressionExecutor implements IExpresionExecutor {
|
|
|
52
67
|
hasFunction(): boolean;
|
|
53
68
|
get isAsync(): boolean;
|
|
54
69
|
canRun(): boolean;
|
|
55
|
-
run(values: HashTable<any>, properties
|
|
56
|
-
private runAsyncItem;
|
|
57
|
-
private runAsyncItemCore;
|
|
58
|
-
private doAsyncFunctionReady;
|
|
59
|
-
private isAsyncFuncReady;
|
|
60
|
-
private isAsyncChildrenReady;
|
|
61
|
-
private runValues;
|
|
70
|
+
run(values: HashTable<any>, properties: HashTable<any>, id: number): any;
|
|
62
71
|
}
|
|
63
72
|
export declare class ExpressionRunnerBase {
|
|
64
73
|
private expressionExecutor;
|
|
65
74
|
private variables;
|
|
66
75
|
private containsFunc;
|
|
67
|
-
private static
|
|
68
|
-
private _id;
|
|
76
|
+
private static IdRunnerCounter;
|
|
69
77
|
onBeforeAsyncRun: (id: number) => void;
|
|
70
78
|
onAfterAsyncRun: (id: number) => void;
|
|
71
79
|
constructor(expression: string);
|
|
72
|
-
get id(): number;
|
|
73
80
|
get expression(): string;
|
|
74
81
|
set expression(value: string);
|
|
75
82
|
getVariables(): Array<string>;
|
|
@@ -77,15 +84,15 @@ export declare class ExpressionRunnerBase {
|
|
|
77
84
|
get isAsync(): boolean;
|
|
78
85
|
canRun(): boolean;
|
|
79
86
|
protected runCore(values: HashTable<any>, properties?: HashTable<any>): any;
|
|
80
|
-
protected doOnComplete(res: any): void;
|
|
87
|
+
protected doOnComplete(res: any, id: number): void;
|
|
81
88
|
}
|
|
82
89
|
export declare class ConditionRunner extends ExpressionRunnerBase {
|
|
83
90
|
onRunComplete: (result: boolean) => void;
|
|
84
91
|
run(values: HashTable<any>, properties?: HashTable<any>): boolean;
|
|
85
|
-
protected doOnComplete(res: any): void;
|
|
92
|
+
protected doOnComplete(res: any, id: number): void;
|
|
86
93
|
}
|
|
87
94
|
export declare class ExpressionRunner extends ExpressionRunnerBase {
|
|
88
95
|
onRunComplete: (result: any) => void;
|
|
89
96
|
run(values: HashTable<any>, properties?: HashTable<any>): any;
|
|
90
|
-
protected doOnComplete(res: any): void;
|
|
97
|
+
protected doOnComplete(res: any, id: number): void;
|
|
91
98
|
}
|
|
@@ -5,6 +5,7 @@ export declare class DragDropMatrixRows extends DragDropCore<QuestionMatrixDynam
|
|
|
5
5
|
protected get draggedElementType(): string;
|
|
6
6
|
protected restoreUserSelectValue: string;
|
|
7
7
|
protected onStartDrag(): void;
|
|
8
|
+
private get shortcutClass();
|
|
8
9
|
protected createDraggedElementShortcut(text: string, draggedElementNode: HTMLElement, event: PointerEvent): HTMLElement;
|
|
9
10
|
private fromIndex;
|
|
10
11
|
private toIndex;
|
|
@@ -6,6 +6,9 @@ export interface AsyncFunctionItem {
|
|
|
6
6
|
children?: Array<AsyncFunctionItem>;
|
|
7
7
|
}
|
|
8
8
|
export declare abstract class Operand {
|
|
9
|
+
private static counter;
|
|
10
|
+
private _id;
|
|
11
|
+
get id(): number;
|
|
9
12
|
toString(func?: (op: Operand) => string): string;
|
|
10
13
|
abstract getType(): string;
|
|
11
14
|
abstract evaluate(processValue?: ProcessValue): any;
|
|
@@ -102,17 +105,14 @@ export declare class Variable extends Const {
|
|
|
102
105
|
export declare class FunctionOperand extends Operand {
|
|
103
106
|
private originalValue;
|
|
104
107
|
private parameters;
|
|
105
|
-
private isReadyValue;
|
|
106
|
-
private asynResult;
|
|
107
|
-
onAsyncReady: () => void;
|
|
108
108
|
constructor(originalValue: string, parameters: ArrayOperand);
|
|
109
109
|
getType(): string;
|
|
110
|
-
evaluateAsync(processValue: ProcessValue): void;
|
|
111
110
|
evaluate(processValue?: ProcessValue): any;
|
|
112
111
|
private evaluateCore;
|
|
113
112
|
toString(func?: (op: Operand) => string): string;
|
|
114
113
|
setVariables(variables: Array<string>): void;
|
|
115
|
-
|
|
114
|
+
isReady(proccessValue: ProcessValue): boolean;
|
|
115
|
+
private getAsynValue;
|
|
116
116
|
hasFunction(): boolean;
|
|
117
117
|
hasAsyncFunction(): boolean;
|
|
118
118
|
private isAsyncFunction;
|