survey-core 1.10.5 → 1.11.1

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.
Files changed (284) hide show
  1. package/defaultV2.css +152 -18
  2. package/defaultV2.css.map +1 -1
  3. package/defaultV2.fontless.css +152 -18
  4. package/defaultV2.fontless.css.map +1 -1
  5. package/defaultV2.fontless.min.css +2 -2
  6. package/defaultV2.min.css +2 -2
  7. package/i18n/arabic.js +1 -1
  8. package/i18n/arabic.min.js +1 -1
  9. package/i18n/basque.js +1 -1
  10. package/i18n/basque.min.js +1 -1
  11. package/i18n/bulgarian.js +1 -1
  12. package/i18n/bulgarian.min.js +1 -1
  13. package/i18n/catalan.js +1 -1
  14. package/i18n/catalan.min.js +1 -1
  15. package/i18n/croatian.js +1 -1
  16. package/i18n/croatian.min.js +1 -1
  17. package/i18n/czech.js +1 -1
  18. package/i18n/czech.min.js +1 -1
  19. package/i18n/danish.js +1 -1
  20. package/i18n/danish.min.js +1 -1
  21. package/i18n/dutch.js +1 -1
  22. package/i18n/dutch.min.js +1 -1
  23. package/i18n/english.js +1 -1
  24. package/i18n/english.min.js +2 -2
  25. package/i18n/estonian.js +1 -1
  26. package/i18n/estonian.min.js +1 -1
  27. package/i18n/finnish.js +1 -1
  28. package/i18n/finnish.min.js +1 -1
  29. package/i18n/french.js +1 -1
  30. package/i18n/french.min.js +1 -1
  31. package/i18n/georgian.js +1 -1
  32. package/i18n/georgian.min.js +1 -1
  33. package/i18n/german.js +1 -1
  34. package/i18n/german.min.js +1 -1
  35. package/i18n/greek.js +1 -1
  36. package/i18n/greek.min.js +1 -1
  37. package/i18n/hebrew.js +1 -1
  38. package/i18n/hebrew.min.js +1 -1
  39. package/i18n/hindi.js +1 -1
  40. package/i18n/hindi.min.js +1 -1
  41. package/i18n/hungarian.js +1 -1
  42. package/i18n/hungarian.min.js +1 -1
  43. package/i18n/icelandic.js +1 -1
  44. package/i18n/icelandic.min.js +1 -1
  45. package/i18n/index.js +132 -1
  46. package/i18n/index.js.map +1 -1
  47. package/i18n/index.min.js +2 -2
  48. package/i18n/indonesian.js +1 -1
  49. package/i18n/indonesian.min.js +1 -1
  50. package/i18n/italian.js +1 -1
  51. package/i18n/italian.min.js +1 -1
  52. package/i18n/japanese.js +1 -1
  53. package/i18n/japanese.min.js +1 -1
  54. package/i18n/kazakh.js +1 -1
  55. package/i18n/kazakh.min.js +1 -1
  56. package/i18n/korean.js +1 -1
  57. package/i18n/korean.min.js +1 -1
  58. package/i18n/latvian.js +1 -1
  59. package/i18n/latvian.min.js +1 -1
  60. package/i18n/lithuanian.js +1 -1
  61. package/i18n/lithuanian.min.js +1 -1
  62. package/i18n/macedonian.js +1 -1
  63. package/i18n/macedonian.min.js +1 -1
  64. package/i18n/malay.js +1 -1
  65. package/i18n/malay.min.js +1 -1
  66. package/i18n/nl-BE.js +1 -1
  67. package/i18n/nl-BE.min.js +1 -1
  68. package/i18n/norwegian.js +1 -1
  69. package/i18n/norwegian.min.js +1 -1
  70. package/i18n/persian.js +1 -1
  71. package/i18n/persian.min.js +1 -1
  72. package/i18n/philippines.js +246 -0
  73. package/i18n/philippines.js.map +1 -0
  74. package/i18n/philippines.min.js +6 -0
  75. package/i18n/polish.js +1 -1
  76. package/i18n/polish.min.js +1 -1
  77. package/i18n/portuguese-br.js +1 -1
  78. package/i18n/portuguese-br.min.js +1 -1
  79. package/i18n/portuguese.js +1 -1
  80. package/i18n/portuguese.min.js +1 -1
  81. package/i18n/romanian.js +1 -1
  82. package/i18n/romanian.min.js +1 -1
  83. package/i18n/russian.js +1 -1
  84. package/i18n/russian.min.js +1 -1
  85. package/i18n/serbian.js +1 -1
  86. package/i18n/serbian.min.js +1 -1
  87. package/i18n/simplified-chinese.js +1 -1
  88. package/i18n/simplified-chinese.min.js +1 -1
  89. package/i18n/slovak.js +1 -1
  90. package/i18n/slovak.min.js +1 -1
  91. package/i18n/spanish.js +1 -1
  92. package/i18n/spanish.min.js +1 -1
  93. package/i18n/swahili.js +1 -1
  94. package/i18n/swahili.min.js +1 -1
  95. package/i18n/swedish.js +1 -1
  96. package/i18n/swedish.min.js +1 -1
  97. package/i18n/tajik.js +1 -1
  98. package/i18n/tajik.min.js +1 -1
  99. package/i18n/telugu.js +1 -1
  100. package/i18n/telugu.min.js +1 -1
  101. package/i18n/thai.js +1 -1
  102. package/i18n/thai.min.js +1 -1
  103. package/i18n/traditional-chinese.js +1 -1
  104. package/i18n/traditional-chinese.min.js +1 -1
  105. package/i18n/turkish.js +1 -1
  106. package/i18n/turkish.min.js +1 -1
  107. package/i18n/ukrainian.js +1 -1
  108. package/i18n/ukrainian.min.js +1 -1
  109. package/i18n/urdu.js +1 -1
  110. package/i18n/urdu.min.js +2 -2
  111. package/i18n/vietnamese.js +1 -1
  112. package/i18n/vietnamese.min.js +1 -1
  113. package/i18n/welsh.js +1 -1
  114. package/i18n/welsh.min.js +1 -1
  115. package/modern.css +77 -9
  116. package/modern.css.map +1 -1
  117. package/modern.fontless.css +77 -9
  118. package/modern.fontless.css.map +1 -1
  119. package/modern.fontless.min.css +2 -2
  120. package/modern.min.css +2 -2
  121. package/package.json +1 -1
  122. package/plugins/bootstrap-integration.js +1 -1
  123. package/plugins/bootstrap-integration.min.js +1 -1
  124. package/plugins/bootstrap-material-integration.js +1 -1
  125. package/plugins/bootstrap-material-integration.min.js +1 -1
  126. package/survey.core.js +1228 -502
  127. package/survey.core.js.map +1 -1
  128. package/survey.core.min.js +3 -3
  129. package/survey.css +17 -1
  130. package/survey.css.map +1 -1
  131. package/survey.i18n.js +132 -1
  132. package/survey.i18n.js.map +1 -1
  133. package/survey.i18n.min.js +2 -2
  134. package/survey.min.css +2 -2
  135. package/themes/borderless-dark-panelless.js +1 -1
  136. package/themes/borderless-dark-panelless.min.js +1 -1
  137. package/themes/borderless-dark.js +1 -1
  138. package/themes/borderless-dark.min.js +1 -1
  139. package/themes/borderless-light-panelless..js +1 -1
  140. package/themes/borderless-light-panelless..min.js +1 -1
  141. package/themes/borderless-light.js +1 -1
  142. package/themes/borderless-light.min.js +1 -1
  143. package/themes/contrast-dark-panelless.js +1 -1
  144. package/themes/contrast-dark-panelless.min.js +1 -1
  145. package/themes/contrast-dark.js +1 -1
  146. package/themes/contrast-dark.min.js +1 -1
  147. package/themes/contrast-light-panelless.js +1 -1
  148. package/themes/contrast-light-panelless.min.js +1 -1
  149. package/themes/contrast-light.js +1 -1
  150. package/themes/contrast-light.min.js +1 -1
  151. package/themes/default-dark-panelless.js +1 -1
  152. package/themes/default-dark-panelless.min.js +1 -1
  153. package/themes/default-dark.js +1 -1
  154. package/themes/default-dark.min.js +1 -1
  155. package/themes/default-light-panelless.js +1 -1
  156. package/themes/default-light-panelless.min.js +1 -1
  157. package/themes/default-light.js +1 -1
  158. package/themes/default-light.min.js +1 -1
  159. package/themes/doubleborder-dark-panelless.js +1 -1
  160. package/themes/doubleborder-dark-panelless.min.js +1 -1
  161. package/themes/doubleborder-dark.js +1 -1
  162. package/themes/doubleborder-dark.min.js +1 -1
  163. package/themes/doubleborder-light-panelles.js +1 -1
  164. package/themes/doubleborder-light-panelles.min.js +1 -1
  165. package/themes/doubleborder-light.js +1 -1
  166. package/themes/doubleborder-light.min.js +1 -1
  167. package/themes/flat-dark-panelless.js +1 -1
  168. package/themes/flat-dark-panelless.min.js +1 -1
  169. package/themes/flat-dark.js +1 -1
  170. package/themes/flat-dark.min.js +1 -1
  171. package/themes/flat-light-panelless.js +1 -1
  172. package/themes/flat-light-panelless.min.js +1 -1
  173. package/themes/flat-light.js +1 -1
  174. package/themes/flat-light.min.js +1 -1
  175. package/themes/index.js +1 -1
  176. package/themes/index.min.js +1 -1
  177. package/themes/layered-dark-panelless.js +1 -1
  178. package/themes/layered-dark-panelless.min.js +1 -1
  179. package/themes/layered-dark.js +1 -1
  180. package/themes/layered-dark.min.js +1 -1
  181. package/themes/layered-light-panelless.js +1 -1
  182. package/themes/layered-light-panelless.min.js +1 -1
  183. package/themes/layered-light.js +1 -1
  184. package/themes/layered-light.min.js +1 -1
  185. package/themes/plain-dark-panelless.js +1 -1
  186. package/themes/plain-dark-panelless.min.js +1 -1
  187. package/themes/plain-dark.js +1 -1
  188. package/themes/plain-dark.min.js +1 -1
  189. package/themes/plain-light-panelless.js +1 -1
  190. package/themes/plain-light-panelless.min.js +1 -1
  191. package/themes/plain-light.js +1 -1
  192. package/themes/plain-light.min.js +1 -1
  193. package/themes/sharp-dark-panelless.js +1 -1
  194. package/themes/sharp-dark-panelless.min.js +1 -1
  195. package/themes/sharp-dark.js +1 -1
  196. package/themes/sharp-dark.min.js +1 -1
  197. package/themes/sharp-light-panelless.js +1 -1
  198. package/themes/sharp-light-panelless.min.js +1 -1
  199. package/themes/sharp-light.js +1 -1
  200. package/themes/sharp-light.min.js +1 -1
  201. package/themes/solid-dark-panelless.js +1 -1
  202. package/themes/solid-dark-panelless.min.js +1 -1
  203. package/themes/solid-dark.js +1 -1
  204. package/themes/solid-dark.min.js +1 -1
  205. package/themes/solid-light-panelless.js +1 -1
  206. package/themes/solid-light-panelless.min.js +1 -1
  207. package/themes/solid-light.js +1 -1
  208. package/themes/solid-light.min.js +1 -1
  209. package/themes/three-dimensional-dark-panelless.js +1 -1
  210. package/themes/three-dimensional-dark-panelless.min.js +1 -1
  211. package/themes/three-dimensional-dark.js +1 -1
  212. package/themes/three-dimensional-dark.min.js +1 -1
  213. package/themes/three-dimensional-light-panelless.js +1 -1
  214. package/themes/three-dimensional-light-panelless.min.js +1 -1
  215. package/themes/three-dimensional-light.js +1 -1
  216. package/themes/three-dimensional-light.min.js +1 -1
  217. package/ts3.4/typings/actions/action.d.ts +21 -2
  218. package/ts3.4/typings/actions/adaptive-container.d.ts +0 -1
  219. package/ts3.4/typings/actions/container.d.ts +4 -0
  220. package/ts3.4/typings/base-interfaces.d.ts +1 -1
  221. package/ts3.4/typings/base.d.ts +7 -0
  222. package/ts3.4/typings/defaultCss/defaultV2Css.d.ts +3 -0
  223. package/ts3.4/typings/dragdrop/ranking-choices.d.ts +7 -1
  224. package/ts3.4/typings/dragdrop/ranking-select-to-rank.d.ts +0 -9
  225. package/ts3.4/typings/functionsfactory.d.ts +3 -3
  226. package/ts3.4/typings/list.d.ts +19 -7
  227. package/ts3.4/typings/multiSelectListModel.d.ts +5 -2
  228. package/ts3.4/typings/panel.d.ts +1 -1
  229. package/ts3.4/typings/popup-dropdown-view-model.d.ts +6 -3
  230. package/ts3.4/typings/popup-view-model.d.ts +4 -1
  231. package/ts3.4/typings/popup.d.ts +5 -0
  232. package/ts3.4/typings/question.d.ts +6 -2
  233. package/ts3.4/typings/question_baseselect.d.ts +2 -0
  234. package/ts3.4/typings/question_boolean.d.ts +2 -0
  235. package/ts3.4/typings/question_file.d.ts +2 -1
  236. package/ts3.4/typings/question_matrix.d.ts +4 -0
  237. package/ts3.4/typings/question_matrixdropdown.d.ts +3 -0
  238. package/ts3.4/typings/question_matrixdropdownbase.d.ts +2 -0
  239. package/ts3.4/typings/question_matrixdropdownrendered.d.ts +0 -1
  240. package/ts3.4/typings/question_matrixdynamic.d.ts +4 -5
  241. package/ts3.4/typings/question_paneldynamic.d.ts +2 -4
  242. package/ts3.4/typings/question_ranking.d.ts +13 -5
  243. package/ts3.4/typings/question_text.d.ts +1 -0
  244. package/ts3.4/typings/question_textbase.d.ts +1 -1
  245. package/ts3.4/typings/survey-element.d.ts +3 -1
  246. package/ts3.4/typings/survey.d.ts +3 -2
  247. package/ts3.4/typings/surveyToc.d.ts +4 -0
  248. package/ts3.4/typings/utils/animation.d.ts +33 -19
  249. package/ts3.4/typings/utils/popup.d.ts +16 -4
  250. package/ts3.4/typings/utils/utils.d.ts +9 -0
  251. package/typings/actions/action.d.ts +21 -2
  252. package/typings/actions/adaptive-container.d.ts +0 -1
  253. package/typings/actions/container.d.ts +4 -0
  254. package/typings/base-interfaces.d.ts +1 -1
  255. package/typings/base.d.ts +7 -0
  256. package/typings/defaultCss/defaultV2Css.d.ts +3 -0
  257. package/typings/dragdrop/ranking-choices.d.ts +7 -1
  258. package/typings/dragdrop/ranking-select-to-rank.d.ts +0 -9
  259. package/typings/functionsfactory.d.ts +3 -3
  260. package/typings/list.d.ts +19 -7
  261. package/typings/multiSelectListModel.d.ts +5 -2
  262. package/typings/panel.d.ts +1 -1
  263. package/typings/popup-dropdown-view-model.d.ts +6 -3
  264. package/typings/popup-view-model.d.ts +5 -2
  265. package/typings/popup.d.ts +5 -0
  266. package/typings/question.d.ts +6 -2
  267. package/typings/question_baseselect.d.ts +2 -0
  268. package/typings/question_boolean.d.ts +2 -0
  269. package/typings/question_file.d.ts +2 -1
  270. package/typings/question_matrix.d.ts +4 -0
  271. package/typings/question_matrixdropdown.d.ts +3 -0
  272. package/typings/question_matrixdropdownbase.d.ts +2 -0
  273. package/typings/question_matrixdropdownrendered.d.ts +0 -1
  274. package/typings/question_matrixdynamic.d.ts +4 -5
  275. package/typings/question_paneldynamic.d.ts +2 -2
  276. package/typings/question_ranking.d.ts +18 -9
  277. package/typings/question_text.d.ts +1 -0
  278. package/typings/question_textbase.d.ts +1 -1
  279. package/typings/survey-element.d.ts +3 -1
  280. package/typings/survey.d.ts +3 -2
  281. package/typings/surveyToc.d.ts +4 -0
  282. package/typings/utils/animation.d.ts +31 -10
  283. package/typings/utils/popup.d.ts +16 -4
  284. package/typings/utils/utils.d.ts +9 -0
@@ -98,7 +98,9 @@ export declare class MatrixDropdownRowModelBase implements ISurveyData, ISurveyI
98
98
  getAllValues(): any;
99
99
  getFilteredValues(): any;
100
100
  getFilteredProperties(): any;
101
+ private applyRowVariablesToValues;
101
102
  runCondition(values: HashTable<any>, properties: HashTable<any>): void;
103
+ getNamesWithDefaultValues(): Array<string>;
102
104
  clearValue(keepComment?: boolean): void;
103
105
  onAnyValueChanged(name: string, questionName: string): void;
104
106
  getDataValueCore(valuesHash: any, key: string): any;
@@ -91,7 +91,6 @@ export declare class QuestionMatrixDropdownRenderedTable extends Base {
91
91
  private hasRemoveRowsValue;
92
92
  private rowsActions;
93
93
  private cssClasses;
94
- renderedRowsChangedCallback: () => void;
95
94
  rows: Array<QuestionMatrixDropdownRenderedRow>;
96
95
  protected getIsAnimationAllowed(): boolean;
97
96
  private getRenderedRowsAnimationOptions;
@@ -1,5 +1,4 @@
1
1
  import { QuestionMatrixDropdownModelBase, MatrixDropdownRowModelBase, IMatrixDropdownData } from "./question_matrixdropdownbase";
2
- import { LocalizableString } from "./localizablestring";
3
2
  import { SurveyError } from "./survey-error";
4
3
  import { DragDropMatrixRows } from "./dragdrop/matrix-rows";
5
4
  import { IShortcutText, ISurveyImpl, IProgressInfo } from "./base-interfaces";
@@ -200,14 +199,14 @@ export declare class QuestionMatrixDynamicModel extends QuestionMatrixDropdownMo
200
199
  */
201
200
  get confirmDeleteText(): string;
202
201
  set confirmDeleteText(val: string);
203
- get locConfirmDeleteText(): LocalizableString;
202
+ get locConfirmDeleteText(): import("./localizablestring").LocalizableString;
204
203
  /**
205
204
  * A caption for the Add Row button.
206
205
  * @see addRowLocation
207
206
  */
208
207
  get addRowText(): string;
209
208
  set addRowText(val: string);
210
- get locAddRowText(): LocalizableString;
209
+ get locAddRowText(): import("./localizablestring").LocalizableString;
211
210
  private get defaultAddRowText();
212
211
  /**
213
212
  * Specifies the location of the Add Row button.
@@ -238,14 +237,14 @@ export declare class QuestionMatrixDynamicModel extends QuestionMatrixDropdownMo
238
237
  */
239
238
  get removeRowText(): string;
240
239
  set removeRowText(val: string);
241
- get locRemoveRowText(): LocalizableString;
240
+ get locRemoveRowText(): import("./localizablestring").LocalizableString;
242
241
  /**
243
242
  * A message displayed when the matrix does not contain any rows. Applies only if `hideColumnsIfEmpty` is enabled.
244
243
  * @see hideColumnsIfEmpty
245
244
  */
246
245
  get emptyRowsText(): string;
247
246
  set emptyRowsText(val: string);
248
- get locEmptyRowsText(): LocalizableString;
247
+ get locEmptyRowsText(): import("./localizablestring").LocalizableString;
249
248
  protected getDisplayValueCore(keysAsText: boolean, value: any): any;
250
249
  protected getConditionObjectRowName(index: number): string;
251
250
  protected getConditionObjectsRowIndeces(): Array<number>;
@@ -8,7 +8,7 @@ import { ActionContainer } from "./actions/container";
8
8
  import { IAction } from "./actions/action";
9
9
  import { AdaptiveActionContainer } from "./actions/adaptive-container";
10
10
  import { ITheme } from "./themes";
11
- import { AnimationProperty } from "./utils/animation";
11
+ import { AnimationProperty, IAnimationGroupConsumer } from "./utils/animation";
12
12
  export interface IQuestionPanelDynamicData {
13
13
  getItemIndex(item: ISurveyData): number;
14
14
  getVisibleItemIndex(item: ISurveyData): number;
@@ -202,7 +202,7 @@ export declare class QuestionPanelDynamicModel extends Question implements IQues
202
202
  private disablePanelsAnimations;
203
203
  private enablePanelsAnimations;
204
204
  private updatePanelsAnimation;
205
- get panelsAnimation(): AnimationProperty<Array<PanelModel>, [PanelModel]>;
205
+ get panelsAnimation(): AnimationProperty<Array<PanelModel>, IAnimationGroupConsumer<PanelModel>>;
206
206
  onHidingContent(): void;
207
207
  /**
208
208
  * Specifies whether to display a confirmation dialog when a respondent wants to delete a panel.
@@ -1,6 +1,5 @@
1
1
  import { ISurveyImpl } from "./base-interfaces";
2
2
  import { DragDropRankingChoices } from "./dragdrop/ranking-choices";
3
- import { DragDropRankingSelectToRank } from "./dragdrop/ranking-select-to-rank";
4
3
  import { ItemValue } from "./itemvalue";
5
4
  import { QuestionCheckboxModel } from "./question_checkbox";
6
5
  import { AnimationGroup } from "./utils/animation";
@@ -30,28 +29,34 @@ export declare class QuestionRankingModel extends QuestionCheckboxModel {
30
29
  isAnswerCorrect(): boolean;
31
30
  get requireStrictCompare(): boolean;
32
31
  onSurveyValueChanged(newValue: any): void;
32
+ onSurveyLoad(): void;
33
33
  protected onVisibleChoicesChanged: () => void;
34
34
  localeChanged: () => void;
35
35
  private addToValueByVisibleChoices;
36
36
  private removeFromValueByVisibleChoices;
37
- private getChoicesAnimation;
37
+ private getChoicesAnimationOptions;
38
38
  private _rankingChoicesAnimation;
39
39
  get rankingChoicesAnimation(): AnimationGroup<ItemValue>;
40
40
  private _unRankingChoicesAnimation;
41
41
  get unRankingChoicesAnimation(): AnimationGroup<ItemValue>;
42
- get rankingChoices(): Array<ItemValue>;
43
- set rankingChoices(val: Array<ItemValue>);
44
- get unRankingChoices(): Array<ItemValue>;
45
- set unRankingChoices(val: Array<ItemValue>);
42
+ rankingChoices: Array<ItemValue>;
43
+ unRankingChoices: Array<ItemValue>;
44
+ private _renderedRankingChoices;
45
+ private _renderedUnRankingChoices;
46
+ get renderedRankingChoices(): Array<ItemValue>;
47
+ set renderedRankingChoices(val: Array<ItemValue>);
48
+ get renderedUnRankingChoices(): Array<ItemValue>;
49
+ set renderedUnRankingChoices(val: Array<ItemValue>);
50
+ private updateRenderedRankingChoices;
51
+ private updateRenderedUnRankingChoices;
46
52
  private updateRankingChoices;
47
53
  updateUnRankingChoices(newRankingChoices: Array<ItemValue>): void;
48
54
  private updateRankingChoicesSelectToRankMode;
49
55
  dragDropRankingChoices: DragDropRankingChoices;
50
56
  currentDropTarget: ItemValue;
51
- dropTargetNodeMove: string;
52
57
  endLoadingFromJson(): void;
53
58
  private setDragDropRankingChoices;
54
- protected createDragDropRankingChoices(): DragDropRankingChoices | DragDropRankingSelectToRank;
59
+ protected createDragDropRankingChoices(): DragDropRankingChoices;
55
60
  private draggedChoise;
56
61
  private draggedTargetNode;
57
62
  handlePointerDown: (event: PointerEvent, choice: ItemValue, node: HTMLElement) => void;
@@ -70,7 +75,6 @@ export declare class QuestionRankingModel extends QuestionCheckboxModel {
70
75
  supportNone(): boolean;
71
76
  supportRefuse(): boolean;
72
77
  supportDontKnow(): boolean;
73
- private handleArrowKeys;
74
78
  handleKeydownSelectToRank(event: KeyboardEvent, movedElement: ItemValue, hardKey?: string, isNeedFocus?: boolean): void;
75
79
  private setValueAfterKeydown;
76
80
  private focusItem;
@@ -87,6 +91,11 @@ export declare class QuestionRankingModel extends QuestionCheckboxModel {
87
91
  */
88
92
  get longTap(): boolean;
89
93
  set longTap(val: boolean);
94
+ /**
95
+ * The name of a component used to render items.
96
+ */
97
+ get itemContentComponent(): string;
98
+ set itemContentComponent(value: string);
90
99
  /**
91
100
  * Specifies whether users can select choices they want to rank.
92
101
  *
@@ -153,6 +153,7 @@ export declare class QuestionTextModel extends QuestionTextBase {
153
153
  get step(): string;
154
154
  set step(val: string);
155
155
  get renderedStep(): string;
156
+ protected getIsInputTextUpdate(): boolean;
156
157
  supportGoNextPageAutomatic(): boolean;
157
158
  supportGoNextPageError(): boolean;
158
159
  /**
@@ -45,7 +45,7 @@ export declare class QuestionTextBase extends Question {
45
45
  */
46
46
  get textUpdateMode(): string;
47
47
  set textUpdateMode(val: string);
48
- get isSurveyInputTextUpdate(): boolean;
48
+ protected getIsInputTextUpdate(): boolean;
49
49
  get renderedPlaceholder(): string;
50
50
  protected setRenderedPlaceholder(val: string): void;
51
51
  protected onReadOnlyChanged(): void;
@@ -83,7 +83,7 @@ export declare class SurveyElement<E = any> extends SurveyElementCore implements
83
83
  dragTypeOverMe: DragTypeOverMeEnum;
84
84
  isDragMe: boolean;
85
85
  readOnlyChangedCallback: () => void;
86
- static ScrollElementToTop(elementId: string, scrollIfVisible?: boolean): boolean;
86
+ static ScrollElementToTop(elementId: string, scrollIfVisible?: boolean, scrollIntoViewOptions?: ScrollIntoViewOptions): boolean;
87
87
  static ScrollElementToViewCore(el: HTMLElement, checkLeft: boolean, scrollIfVisible?: boolean, scrollIntoViewOptions?: ScrollIntoViewOptions): boolean;
88
88
  static GetFirstNonTextElement(elements: any, removeSpaces?: boolean): any;
89
89
  static FocusElement(elementId: string): boolean;
@@ -412,7 +412,9 @@ export declare class SurveyElement<E = any> extends SurveyElementCore implements
412
412
  private _isAnimatingCollapseExpand;
413
413
  private set isAnimatingCollapseExpand(value);
414
414
  private get isAnimatingCollapseExpand();
415
+ protected onElementExpanded(elementIsRendered: boolean): void;
415
416
  private getExpandCollapseAnimationOptions;
417
+ private get isExpandCollapseAnimationEnabled();
416
418
  private animationCollapsed;
417
419
  set renderedIsExpanded(val: boolean);
418
420
  get renderedIsExpanded(): boolean;
@@ -1908,7 +1908,7 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
1908
1908
  * @see validateCurrentPage
1909
1909
  * @see validatePage
1910
1910
  */
1911
- validate(fireCallback?: boolean, focusOnFirstError?: boolean, onAsyncValidation?: (hasErrors: boolean) => void): boolean;
1911
+ validate(fireCallback?: boolean, focusOnFirstError?: boolean, onAsyncValidation?: (hasErrors: boolean) => void, changeCurrentPage?: boolean): boolean;
1912
1912
  ensureUniqueNames(element?: ISurveyElement): void;
1913
1913
  private ensureUniqueName;
1914
1914
  private ensureUniquePageName;
@@ -2179,7 +2179,7 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
2179
2179
  private getUpdatedPanelTitleActions;
2180
2180
  private getUpdatedPageTitleActions;
2181
2181
  getUpdatedMatrixRowActions(question: QuestionMatrixDropdownModelBase, row: any, actions: Array<IAction>): IAction[];
2182
- scrollElementToTop(element: ISurveyElement, question: Question, page: PageModel, id: string, scrollIfVisible?: boolean): any;
2182
+ scrollElementToTop(element: ISurveyElement, question: Question, page: PageModel, id: string, scrollIfVisible?: boolean, scrollIntoViewOptions?: ScrollIntoViewOptions): any;
2183
2183
  /**
2184
2184
  * Opens a dialog window for users to select files.
2185
2185
  * @param input A [file input HTML element](https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement).
@@ -2405,6 +2405,7 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
2405
2405
  private triggerValues;
2406
2406
  private triggerKeys;
2407
2407
  private checkTriggers;
2408
+ private checkTriggersAndRunConditions;
2408
2409
  private get hasRequiredValidQuestionTrigger();
2409
2410
  private doElementsOnLoad;
2410
2411
  private conditionValues;
@@ -8,7 +8,11 @@ export declare function createTOCListModel(survey: SurveyModel, onAction?: () =>
8
8
  export declare function getTocRootCss(survey: SurveyModel, isMobile?: boolean): string;
9
9
  export declare class TOCModel {
10
10
  survey: SurveyModel;
11
+ static RootStyle: string;
12
+ static StickyPosition: boolean;
11
13
  constructor(survey: SurveyModel);
14
+ private initStickyTOCSubscriptions;
15
+ updateStickyTOCSize(rootElement: HTMLElement): void;
12
16
  get isMobile(): boolean;
13
17
  get containerCss(): string;
14
18
  listModel: ListModel<Action>;
@@ -1,13 +1,27 @@
1
+ import { EventBase, Base } from "../base";
1
2
  export interface AnimationOptions {
2
3
  cssClass: string;
3
4
  onBeforeRunAnimation?: (element: HTMLElement) => void;
4
5
  onAfterRunAnimation?: (element: HTMLElement) => void;
5
6
  }
6
7
  export interface IAnimationConsumer<T extends Array<any> = []> {
7
- getLeaveOptions(...args: T): AnimationOptions;
8
- getEnterOptions(...args: T): AnimationOptions;
8
+ getLeaveOptions?(...args: T): AnimationOptions;
9
+ getEnterOptions?(...args: T): AnimationOptions;
9
10
  getAnimatedElement(...args: T): HTMLElement;
10
11
  isAnimationEnabled(): boolean;
12
+ getRerenderEvent(): EventBase<Base>;
13
+ }
14
+ interface IGroupAnimationInfo {
15
+ isReorderingRunning: boolean;
16
+ isDeletingRunning: boolean;
17
+ isAddingRunning: boolean;
18
+ }
19
+ export interface IAnimationGroupConsumer<T> extends IAnimationConsumer<[T]> {
20
+ getLeaveOptions?(item: T, info?: IGroupAnimationInfo): AnimationOptions;
21
+ getEnterOptions?(item: T, info?: IGroupAnimationInfo): AnimationOptions;
22
+ getReorderOptions?(item: T, movedForward: boolean, info?: IGroupAnimationInfo): AnimationOptions;
23
+ getKey?: (item: T) => any;
24
+ allowSyncRemovalAddition?: boolean;
11
25
  }
12
26
  export declare class AnimationUtils {
13
27
  private getMsFromRule;
@@ -18,11 +32,12 @@ export declare class AnimationUtils {
18
32
  private addCancelCallback;
19
33
  private removeCancelCallback;
20
34
  protected onAnimationEnd(element: HTMLElement, callback: (isCancel?: boolean) => void, options: AnimationOptions): void;
35
+ protected afterAnimationRun(element: HTMLElement, options: AnimationOptions | AnimationOptions): void;
21
36
  protected beforeAnimationRun(element: HTMLElement, options: AnimationOptions | AnimationOptions): void;
22
37
  private getCssClasses;
23
38
  protected runAnimation(element: HTMLElement, options: AnimationOptions, callback: (isCancel?: boolean) => void): void;
24
39
  protected clearHtmlElement(element: HTMLElement, options: AnimationOptions): void;
25
- protected onNextRender(callback: () => void, runEarly?: () => boolean, isCancel?: boolean): void;
40
+ protected onNextRender(callback: (isCancel?: boolean) => void, isCancel?: boolean): void;
26
41
  cancel(): void;
27
42
  }
28
43
  export declare class AnimationPropertyUtils extends AnimationUtils {
@@ -30,30 +45,36 @@ export declare class AnimationPropertyUtils extends AnimationUtils {
30
45
  onLeave(options: IAnimationConsumer, callback: () => void): void;
31
46
  }
32
47
  export declare class AnimationGroupUtils<T> extends AnimationUtils {
33
- runGroupAnimation(options: IAnimationConsumer<[T]>, addedElements: Array<T>, removedElements: Array<T>, callback?: () => void): void;
48
+ runGroupAnimation(options: IAnimationGroupConsumer<T>, addedItems: Array<T>, removedItems: Array<T>, reorderedItems: Array<{
49
+ item: T;
50
+ movedForward: boolean;
51
+ }>, callback?: () => void): void;
34
52
  }
35
- export declare abstract class AnimationProperty<T, S extends Array<any> = []> {
36
- protected animationOptions: IAnimationConsumer<S>;
53
+ export declare abstract class AnimationProperty<T, S extends IAnimationConsumer<any> = IAnimationConsumer> {
54
+ protected animationOptions: S;
37
55
  protected update: (val: T, isTempUpdate?: boolean) => void;
38
56
  protected getCurrentValue: () => T;
39
- constructor(animationOptions: IAnimationConsumer<S>, update: (val: T, isTempUpdate?: boolean) => void, getCurrentValue: () => T);
57
+ constructor(animationOptions: S, update: (val: T, isTempUpdate?: boolean) => void, getCurrentValue: () => T);
40
58
  protected animation: AnimationUtils;
59
+ protected onNextRender(callback: () => void, onCancel?: () => void): void;
41
60
  protected abstract _sync(newValue: T): void;
42
61
  private _debouncedSync;
43
62
  sync(newValue: T): void;
63
+ private cancelCallback;
44
64
  cancel(): void;
45
65
  }
46
66
  export declare class AnimationBoolean extends AnimationProperty<boolean> {
47
67
  protected animation: AnimationPropertyUtils;
48
68
  protected _sync(newValue: boolean): void;
49
69
  }
50
- export declare class AnimationGroup<T> extends AnimationProperty<Array<T>, [T]> {
70
+ export declare class AnimationGroup<T> extends AnimationProperty<Array<T>, IAnimationGroupConsumer<T>> {
51
71
  protected animation: AnimationGroupUtils<T>;
52
72
  protected _sync(newValue: Array<T>): void;
53
73
  }
54
- export declare class AnimationTab<T> extends AnimationProperty<Array<T>, [T]> {
74
+ export declare class AnimationTab<T> extends AnimationProperty<Array<T>, IAnimationGroupConsumer<T>> {
55
75
  protected mergeValues?: (newValue: Array<T>, oldValue: Array<T>) => Array<T>;
56
76
  protected animation: AnimationGroupUtils<T>;
57
- constructor(animationOptions: IAnimationConsumer<[T]>, update: (val: Array<T>, isTempUpdate?: boolean) => void, getCurrentValue: () => Array<T>, mergeValues?: (newValue: Array<T>, oldValue: Array<T>) => Array<T>);
77
+ constructor(animationOptions: IAnimationGroupConsumer<T>, update: (val: Array<T>, isTempUpdate?: boolean) => void, getCurrentValue: () => Array<T>, mergeValues?: (newValue: Array<T>, oldValue: Array<T>) => Array<T>);
58
78
  protected _sync(newValue: [T]): void;
59
79
  }
80
+ export {};
@@ -13,10 +13,21 @@ export interface ISize {
13
13
  width: number;
14
14
  height: number;
15
15
  }
16
+ export declare class Rect implements ISize, INumberPosition {
17
+ private x;
18
+ private y;
19
+ width: number;
20
+ height: number;
21
+ constructor(x: number, y: number, width: number, height: number);
22
+ get left(): number;
23
+ get top(): number;
24
+ get right(): number;
25
+ get bottom(): number;
26
+ }
16
27
  export declare class PopupUtils {
17
28
  static bottomIndent: number;
18
- static calculatePosition(targetRect: ClientRect, height: number, width: number, verticalPosition: VerticalPosition, horizontalPosition: HorizontalPosition, showPointer: boolean, positionMode?: PositionMode): INumberPosition;
19
- static getCorrectedVerticalDimensions(top: number, height: number, windowHeight: number, verticalPosition: VerticalPosition): any;
29
+ static calculatePosition(targetRect: Rect, height: number, width: number, verticalPosition: VerticalPosition, horizontalPosition: HorizontalPosition, positionMode?: PositionMode): INumberPosition;
30
+ static getCorrectedVerticalDimensions(top: number, height: number, windowHeight: number, verticalPosition: VerticalPosition, canShrink?: boolean): any;
20
31
  static updateHorizontalDimensions(left: number, width: number, windowWidth: number, horizontalPosition: HorizontalPosition, positionMode?: PositionMode, margins?: {
21
32
  left: number;
22
33
  right: number;
@@ -24,7 +35,8 @@ export declare class PopupUtils {
24
35
  width: number;
25
36
  left: number;
26
37
  };
27
- static updateVerticalPosition(targetRect: ClientRect, height: number, verticalPosition: VerticalPosition, showPointer: boolean, windowHeight: number): VerticalPosition;
38
+ static updateVerticalPosition(targetRect: Rect, height: number, horizontalPosition: HorizontalPosition, verticalPosition: VerticalPosition, windowHeight: number): VerticalPosition;
39
+ static updateHorizontalPosition(targetRect: Rect, width: number, horizontalPosition: HorizontalPosition, windowWidth: number): HorizontalPosition;
28
40
  static calculatePopupDirection(verticalPosition: VerticalPosition, horizontalPosition: HorizontalPosition): string;
29
- static calculatePointerTarget(targetRect: ClientRect, top: number, left: number, verticalPosition: VerticalPosition, horizontalPosition: HorizontalPosition, marginLeft?: number, marginRight?: number): INumberPosition;
41
+ static calculatePointerTarget(targetRect: Rect, top: number, left: number, verticalPosition: VerticalPosition, horizontalPosition: HorizontalPosition, marginLeft?: number, marginRight?: number): INumberPosition;
30
42
  }
@@ -44,4 +44,13 @@ export declare class Logger {
44
44
  export declare function showConfirmDialog(message: string, callback: (res: boolean) => void, applyTitle?: string, locale?: string, rootElement?: HTMLElement): boolean;
45
45
  export declare function configConfirmDialog(popupViewModel: PopupBaseViewModel): void;
46
46
  declare function chooseFiles(input: HTMLInputElement, callback: (files: File[]) => void): void;
47
+ export declare function compareArrays<T>(oldValue: Array<T>, newValue: Array<T>, getKey: (item: T) => any): {
48
+ addedItems: Array<T>;
49
+ deletedItems: Array<T>;
50
+ reorderedItems: Array<{
51
+ item: T;
52
+ movedForward: boolean;
53
+ }>;
54
+ mergedItems: Array<T>;
55
+ };
47
56
  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 };