survey-core 1.12.2 → 1.12.4

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 (264) hide show
  1. package/defaultV2.css +65 -50
  2. package/defaultV2.css.map +1 -1
  3. package/defaultV2.fontless.css +65 -50
  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 +1 -1
  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 +1 -1
  46. package/i18n/index.min.js +1 -1
  47. package/i18n/indonesian.js +1 -1
  48. package/i18n/indonesian.min.js +1 -1
  49. package/i18n/italian.js +1 -1
  50. package/i18n/italian.min.js +1 -1
  51. package/i18n/japanese.js +1 -1
  52. package/i18n/japanese.min.js +1 -1
  53. package/i18n/kazakh.js +1 -1
  54. package/i18n/kazakh.min.js +1 -1
  55. package/i18n/korean.js +1 -1
  56. package/i18n/korean.min.js +1 -1
  57. package/i18n/latvian.js +1 -1
  58. package/i18n/latvian.min.js +1 -1
  59. package/i18n/lithuanian.js +1 -1
  60. package/i18n/lithuanian.min.js +1 -1
  61. package/i18n/macedonian.js +1 -1
  62. package/i18n/macedonian.min.js +1 -1
  63. package/i18n/malay.js +1 -1
  64. package/i18n/malay.min.js +1 -1
  65. package/i18n/nl-BE.js +1 -1
  66. package/i18n/nl-BE.min.js +1 -1
  67. package/i18n/norwegian.js +1 -1
  68. package/i18n/norwegian.min.js +1 -1
  69. package/i18n/persian.js +1 -1
  70. package/i18n/persian.min.js +1 -1
  71. package/i18n/philippines.js +1 -1
  72. package/i18n/philippines.min.js +1 -1
  73. package/i18n/polish.js +1 -1
  74. package/i18n/polish.min.js +1 -1
  75. package/i18n/portuguese-br.js +1 -1
  76. package/i18n/portuguese-br.min.js +1 -1
  77. package/i18n/portuguese.js +1 -1
  78. package/i18n/portuguese.min.js +1 -1
  79. package/i18n/romanian.js +1 -1
  80. package/i18n/romanian.min.js +1 -1
  81. package/i18n/russian.js +1 -1
  82. package/i18n/russian.min.js +1 -1
  83. package/i18n/serbian.js +1 -1
  84. package/i18n/serbian.min.js +1 -1
  85. package/i18n/simplified-chinese.js +1 -1
  86. package/i18n/simplified-chinese.min.js +1 -1
  87. package/i18n/slovak.js +1 -1
  88. package/i18n/slovak.min.js +1 -1
  89. package/i18n/spanish.js +1 -1
  90. package/i18n/spanish.min.js +1 -1
  91. package/i18n/swahili.js +1 -1
  92. package/i18n/swahili.min.js +1 -1
  93. package/i18n/swedish.js +1 -1
  94. package/i18n/swedish.min.js +1 -1
  95. package/i18n/tajik.js +1 -1
  96. package/i18n/tajik.min.js +1 -1
  97. package/i18n/telugu.js +1 -1
  98. package/i18n/telugu.min.js +1 -1
  99. package/i18n/thai.js +1 -1
  100. package/i18n/thai.min.js +1 -1
  101. package/i18n/traditional-chinese.js +1 -1
  102. package/i18n/traditional-chinese.min.js +1 -1
  103. package/i18n/turkish.js +1 -1
  104. package/i18n/turkish.min.js +1 -1
  105. package/i18n/ukrainian.js +1 -1
  106. package/i18n/ukrainian.min.js +1 -1
  107. package/i18n/urdu.js +1 -1
  108. package/i18n/urdu.min.js +1 -1
  109. package/i18n/vietnamese.js +1 -1
  110. package/i18n/vietnamese.min.js +1 -1
  111. package/i18n/welsh.js +1 -1
  112. package/i18n/welsh.min.js +1 -1
  113. package/modern.css +69 -84
  114. package/modern.css.map +1 -1
  115. package/modern.fontless.css +69 -84
  116. package/modern.fontless.css.map +1 -1
  117. package/modern.fontless.min.css +2 -2
  118. package/modern.min.css +2 -2
  119. package/package.json +1 -1
  120. package/plugins/bootstrap-integration/index.js +1 -2
  121. package/plugins/bootstrap-integration/index.js.map +1 -1
  122. package/plugins/bootstrap-integration/index.min.js +2 -2
  123. package/plugins/bootstrap-material-integration/cssbootstrapmaterial.d.ts +1 -0
  124. package/plugins/bootstrap-material-integration/index.js +2 -2
  125. package/plugins/bootstrap-material-integration/index.js.map +1 -1
  126. package/plugins/bootstrap-material-integration/index.min.js +2 -2
  127. package/survey.core.js +616 -270
  128. package/survey.core.js.map +1 -1
  129. package/survey.core.min.js +3 -3
  130. package/survey.css +59 -24
  131. package/survey.css.map +1 -1
  132. package/survey.i18n.js +1 -1
  133. package/survey.i18n.min.js +1 -1
  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/packages/survey-core/entries/chunks/model.d.ts +1 -1
  218. package/ts3.4/typings/packages/survey-core/src/base-interfaces.d.ts +12 -2
  219. package/ts3.4/typings/packages/survey-core/src/base.d.ts +12 -1
  220. package/ts3.4/typings/packages/survey-core/src/defaultCss/defaultV2Css.d.ts +1 -2
  221. package/ts3.4/typings/packages/survey-core/src/dragdrop/choices.d.ts +2 -1
  222. package/ts3.4/typings/packages/survey-core/src/header.d.ts +1 -0
  223. package/ts3.4/typings/packages/survey-core/src/helpers.d.ts +1 -1
  224. package/ts3.4/typings/packages/survey-core/src/page.d.ts +2 -0
  225. package/ts3.4/typings/packages/survey-core/src/panel.d.ts +11 -6
  226. package/ts3.4/typings/packages/survey-core/src/question.d.ts +11 -7
  227. package/ts3.4/typings/packages/survey-core/src/question_baseselect.d.ts +1 -1
  228. package/ts3.4/typings/packages/survey-core/src/question_custom.d.ts +1 -0
  229. package/ts3.4/typings/packages/survey-core/src/question_matrix.d.ts +13 -5
  230. package/ts3.4/typings/packages/survey-core/src/question_matrixdropdownbase.d.ts +1 -1
  231. package/ts3.4/typings/packages/survey-core/src/question_multipletext.d.ts +1 -1
  232. package/ts3.4/typings/packages/survey-core/src/question_paneldynamic.d.ts +2 -0
  233. package/ts3.4/typings/packages/survey-core/src/question_ranking.d.ts +2 -0
  234. package/ts3.4/typings/packages/survey-core/src/question_rating.d.ts +4 -1
  235. package/ts3.4/typings/packages/survey-core/src/survey-element.d.ts +4 -2
  236. package/ts3.4/typings/packages/survey-core/src/survey.d.ts +10 -6
  237. package/ts3.4/typings/packages/survey-core/src/textPreProcessor.d.ts +2 -2
  238. package/ts3.4/typings/packages/survey-core/src/utils/utils.d.ts +2 -2
  239. package/ts3.4/typings/src/defaultCss/cssmodern.d.ts +1 -0
  240. package/ts3.4/typings/src/defaultCss/cssstandard.d.ts +1 -0
  241. package/typings/packages/survey-core/entries/chunks/model.d.ts +1 -1
  242. package/typings/packages/survey-core/src/base-interfaces.d.ts +12 -2
  243. package/typings/packages/survey-core/src/base.d.ts +12 -1
  244. package/typings/packages/survey-core/src/defaultCss/defaultV2Css.d.ts +1 -2
  245. package/typings/packages/survey-core/src/dragdrop/choices.d.ts +2 -1
  246. package/typings/packages/survey-core/src/header.d.ts +1 -0
  247. package/typings/packages/survey-core/src/helpers.d.ts +1 -1
  248. package/typings/packages/survey-core/src/page.d.ts +2 -0
  249. package/typings/packages/survey-core/src/panel.d.ts +11 -6
  250. package/typings/packages/survey-core/src/question.d.ts +11 -7
  251. package/typings/packages/survey-core/src/question_baseselect.d.ts +1 -1
  252. package/typings/packages/survey-core/src/question_custom.d.ts +1 -0
  253. package/typings/packages/survey-core/src/question_matrix.d.ts +13 -5
  254. package/typings/packages/survey-core/src/question_matrixdropdownbase.d.ts +1 -1
  255. package/typings/packages/survey-core/src/question_multipletext.d.ts +1 -1
  256. package/typings/packages/survey-core/src/question_paneldynamic.d.ts +2 -0
  257. package/typings/packages/survey-core/src/question_ranking.d.ts +3 -0
  258. package/typings/packages/survey-core/src/question_rating.d.ts +4 -1
  259. package/typings/packages/survey-core/src/survey-element.d.ts +4 -2
  260. package/typings/packages/survey-core/src/survey.d.ts +10 -6
  261. package/typings/packages/survey-core/src/textPreProcessor.d.ts +2 -2
  262. package/typings/packages/survey-core/src/utils/utils.d.ts +2 -2
  263. package/typings/src/defaultCss/cssmodern.d.ts +1 -0
  264. package/typings/src/defaultCss/cssstandard.d.ts +1 -0
@@ -56,7 +56,7 @@ export declare class Base {
56
56
  private static currentDependencis;
57
57
  static finishCollectDependencies(): Dependencies;
58
58
  static startCollectDependencies(updater: () => void, target: Base, property: string): void;
59
- private static collectDependency;
59
+ protected static collectDependency(target: Base, property: string): void;
60
60
  dependencies: {
61
61
  [key: string]: ComputedUpdater;
62
62
  };
@@ -308,6 +308,17 @@ export declare class Base {
308
308
  readonly onElementRerendered: EventBase<Base>;
309
309
  afterRerender(): void;
310
310
  }
311
+ export declare class RenderingCompletedAwaiter {
312
+ private _elements;
313
+ private _renderedHandler;
314
+ constructor(_elements: Array<Base>, _renderedHandler: () => void, waitingTimeout?: number);
315
+ private _elementsToRenderCount;
316
+ private _elementsToRenderTimer;
317
+ private _elementRenderedHandler;
318
+ private stopWaitingForElementsRendering;
319
+ private visibleElementsRendered;
320
+ dispose(): void;
321
+ }
311
322
  export declare class ArrayChanges<T = any> {
312
323
  index: number;
313
324
  deleteCount: number;
@@ -59,7 +59,6 @@ export declare var defaultV2Css: {
59
59
  titleExpanded: string;
60
60
  titleCollapsed: string;
61
61
  titleDisabled: string;
62
- titleHidden: string;
63
62
  titleOnExpand: string;
64
63
  titleOnError: string;
65
64
  titleBar: string;
@@ -72,7 +71,6 @@ export declare var defaultV2Css: {
72
71
  footer: string;
73
72
  requiredText: string;
74
73
  header: string;
75
- headerHidden: string;
76
74
  collapsed: string;
77
75
  expanded: string;
78
76
  expandable: string;
@@ -766,6 +764,7 @@ export declare var defaultV2Css: {
766
764
  rootSelectToRankEmptyValueMod: string;
767
765
  rootSelectToRankAlignVertical: string;
768
766
  rootSelectToRankAlignHorizontal: string;
767
+ rootSelectToRankSwapAreas: string;
769
768
  item: string;
770
769
  itemContent: string;
771
770
  itemIndex: string;
@@ -12,7 +12,8 @@ export declare class DragDropChoices extends DragDropCore<QuestionSelectBase> {
12
12
  protected doDragOver: () => any;
13
13
  protected isDropTargetValid(dropTarget: ItemValue, dropTargetNode?: HTMLElement): boolean;
14
14
  protected doBanDropHere: () => any;
15
- protected calculateIsBottom(clientY: number): boolean;
15
+ protected isDropTargetDoesntChanged(newIsBottom: boolean): boolean;
16
+ protected calculateIsBottom(clientY: number, dropTargetNode?: HTMLElement): boolean;
16
17
  protected afterDragOver(dropTargetNode: HTMLElement): void;
17
18
  protected doDrop(): any;
18
19
  clear(): void;
@@ -35,6 +35,7 @@ export declare class Cover extends Base {
35
35
  cells: CoverCell[];
36
36
  actualHeight: number;
37
37
  height: number;
38
+ mobileHeight: number;
38
39
  inheritWidthFrom: "survey" | "container";
39
40
  textAreaWidth: number;
40
41
  textGlowEnabled: boolean;
@@ -23,7 +23,7 @@ export declare class Helpers {
23
23
  private static prepareStringToNumber;
24
24
  static getMaxLength(maxLength: number, surveyLength: number): any;
25
25
  static getRemainingCharacterCounterText(newValue: string | undefined, maxLength: number | null): string;
26
- static getNumberByIndex(index: number, startIndexStr: string): string;
26
+ static getNumberByIndex(index: number, startIndexStr: string, parentIndex?: number): string;
27
27
  static isCharNotLetterAndDigit(ch: string): boolean;
28
28
  static isCharDigit(ch: string): boolean;
29
29
  private static getNumberFromStr;
@@ -18,6 +18,7 @@ export declare class PageModel extends PanelModelBase implements IPage {
18
18
  readonly cssRequiredText: string;
19
19
  protected canShowPageNumber(): boolean;
20
20
  protected canShowTitle(): boolean;
21
+ protected setTitleValue(val: string): void;
21
22
  /*
22
23
  * A caption displayed on a navigation button in the TOC or progress bar. Applies when [`showTOC`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#showTOC) is `true` or when the [progress bar is visible](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#showProgressBar), [`progressBarType`](https://surveyjs.io/form-library/documentation/surveymodel#progressBarType) is set to `"pages"`, and [`progressBarShowPageTitles`](https://surveyjs.io/form-library/documentation/surveymodel#progressBarShowPageTitles) is `true`.
23
24
  *
@@ -30,6 +31,7 @@ export declare class PageModel extends PanelModelBase implements IPage {
30
31
  navigationDescription: string;
31
32
  readonly locNavigationDescription: LocalizableString;
32
33
  navigationLocStrChanged(): void;
34
+ getMarkdownHtml(text: string, name: string): string;
33
35
  passed: boolean;
34
36
  protected removeFromParent(): void;
35
37
  onFirstRendering(): void;
@@ -17,6 +17,7 @@ export declare class QuestionRowModel extends Base {
17
17
  private static getRowId;
18
18
  protected _scrollableParent: any;
19
19
  protected _updateVisibility: any;
20
+ private readonly allowRendering: any;
20
21
  startLazyRendering(rowContainerDiv: HTMLElement, findScrollableContainer?: typeof findScrollableParent): void;
21
22
  ensureVisibility(): void;
22
23
  stopLazyRendering(): void;
@@ -76,6 +77,8 @@ export declare class PanelModelBase extends SurveyElement<Question> implements I
76
77
  setSurveyImpl(value: ISurveyImpl, isLight?: boolean): void;
77
78
  endLoadingFromJson(): void;
78
79
  showTitle: boolean;
80
+ hasTextInTitle: boolean;
81
+ protected calcHasTextInTitle(): void;
79
82
  readonly hasTitle: boolean;
80
83
  delete(doDispose?: boolean): void;
81
84
  private deletePanel;
@@ -307,6 +310,8 @@ export declare class PanelModelBase extends SurveyElement<Question> implements I
307
310
  getProgressInfo(): IProgressInfo;
308
311
  readonly root: PanelModelBase;
309
312
  protected childVisibilityChanged(): void;
313
+ protected canRenderFirstRows(): boolean;
314
+ private isLazyRenderInRow;
310
315
  createRowAndSetLazy(index: number): QuestionRowModel;
311
316
  createRow(): QuestionRowModel;
312
317
  onSurveyLoad(): void;
@@ -328,12 +333,14 @@ export declare class PanelModelBase extends SurveyElement<Question> implements I
328
333
  private updateRowsVisibility;
329
334
  canBuildRows(): boolean;
330
335
  private buildRows;
331
- private isLazyRenderInRow;
332
- protected canRenderFirstRows(): boolean;
333
336
  getDragDropInfo(): any;
334
337
  private updateRowsOnElementRemoved;
335
338
  updateRowsRemoveElementFromRow(element: IElement, row: QuestionRowModel): void;
336
- disableLazyRenderingBeforeElement(el?: IElement): void;
339
+ getAllRows(): Array<QuestionRowModel>;
340
+ private findRowAndIndexByElement;
341
+ private forceRenderRow;
342
+ forceRenderElement(el: IElement, elementsRendered?: () => void, gap?: number): void;
343
+ forceRenderRows(rows: Array<QuestionRowModel>, elementsRendered?: () => void): void;
337
344
  findRowByElement(el: IElement): QuestionRowModel;
338
345
  elementWidthChanged(el: IElement): void;
339
346
  readonly processedTitle: string;
@@ -467,11 +474,8 @@ export declare class PanelModel extends PanelModelBase implements IElement {
467
474
  getType(): string;
468
475
  readonly contentId: string;
469
476
  getSurvey(live?: boolean): ISurvey;
470
- readonly hasTextInTitle: boolean;
471
- private calcHasTextInTitle;
472
477
  onSurveyLoad(): void;
473
478
  protected onSetData(): void;
474
- readonly cssHeader: string;
475
479
  readonly isPanel: boolean;
476
480
  /*
477
481
  * Returns a page to which the panel belongs and allows you to move this panel to a different page.
@@ -535,6 +539,7 @@ export declare class PanelModel extends PanelModelBase implements IElement {
535
539
  protected createLocTitleProperty(): LocalizableString;
536
540
  protected beforeSetVisibleIndex(index: number): number;
537
541
  protected getPanelStartIndex(index: number): number;
542
+ private hasParentInQuestionIndex;
538
543
  protected isContinueNumbering(): boolean;
539
544
  private notifySurveyOnVisibilityChanged;
540
545
  protected getRenderedTitle(str: string): string;
@@ -498,12 +498,16 @@ export declare class Question extends SurveyElement<Question> implements IQuesti
498
498
  * A survey parses and runs all expressions on startup. If any values used in the expression change, the survey re-evaluates it.
499
499
  *
500
500
  * Refer to the following help topic for more information: [Conditional Visibility](https://surveyjs.io/form-library/documentation/design-survey-conditional-logic#conditional-visibility).
501
+ *
502
+ * [View Demo](https://surveyjs.io/form-library/examples/how-to-conditionally-make-input-field-read-only/ (linkStyle))
501
503
  * @see readOnly
502
504
  * @see isReadOnly
503
505
  */
504
506
  enableIf: string;
505
507
  surveyChoiceItemVisibilityChange(): void;
506
508
  runCondition(values: HashTable<any>, properties: HashTable<any>): void;
509
+ readonly isInDesignMode: boolean;
510
+ readonly isInDesignModeV2: boolean;
507
511
  /*
508
512
  * A question number or letter (depends on the `questionStartIndex` property of the question container (panel, page, or survey)).
509
513
  *
@@ -534,7 +538,7 @@ export declare class Question extends SurveyElement<Question> implements IQuesti
534
538
  *
535
539
  * | Question type | Value type(s) |
536
540
  * | ------------- | ------------- |
537
- * | Checkboxes | `Array<string \| number>` |
541
+ * | Checkboxes | <code>Array&lt;string &#124; number&gt;</code> |
538
542
  * | Dropdown | `string` \| `number` |
539
543
  * | Dynamic Matrix | `Array<object>` |
540
544
  * | Dynamic Panel | `Array<object>` |
@@ -542,14 +546,14 @@ export declare class Question extends SurveyElement<Question> implements IQuesti
542
546
  * | File Upload | `File` \| `Array<File>` |
543
547
  * | HTML | (no value) |
544
548
  * | Image | (no value) |
545
- * | Image Picker | `Array<string \| number>` |
549
+ * | Image Picker | <code>Array&lt;string &#124; number&gt;</code> |
546
550
  * | Long Text | `string` |
547
551
  * | Multi-Select Dropdown | `object` |
548
552
  * | Multi-Select Matrix | `object` |
549
553
  * | Multiple Textboxes | `Array<string>` |
550
554
  * | Panel | (no value) |
551
555
  * | Radio Button Group | `string` \| `number` |
552
- * | Ranking | `Array<string \| number>` |
556
+ * | Ranking | <code>Array&lt;string &#124; number&gt;</code> |
553
557
  * | Rating Scale | `number` \| `string` |
554
558
  * | Signature | `string` (base64-encoded image) |
555
559
  * | Single-Line Input | `string` \| `number` \| `Date` |
@@ -642,7 +646,7 @@ export declare class Question extends SurveyElement<Question> implements IQuesti
642
646
  *
643
647
  * A survey parses and runs all expressions on startup. If any values used in the expression change, the survey re-evaluates it.
644
648
  *
645
- * [View Demo](https://surveyjs.io/form-library/examples/trigger-setvalue/ (linkStyle))
649
+ * [View Demo](https://surveyjs.io/form-library/examples/set-question-value-dynamically/ (linkStyle))
646
650
  * @see setValueIf
647
651
  */
648
652
  resetValueIf: string;
@@ -651,7 +655,7 @@ export declare class Question extends SurveyElement<Question> implements IQuesti
651
655
  *
652
656
  * A survey parses and runs all expressions on startup. If any values used in the expression change, the survey re-evaluates it.
653
657
  *
654
- * [View Demo](https://surveyjs.io/form-library/examples/trigger-setvalue/ (linkStyle))
658
+ * [View Demo](https://surveyjs.io/form-library/examples/set-question-value-dynamically/ (linkStyle))
655
659
  * @see resetValueIf
656
660
  */
657
661
  setValueIf: string;
@@ -660,7 +664,7 @@ export declare class Question extends SurveyElement<Question> implements IQuesti
660
664
  *
661
665
  * You can use `setValueExpression` as a standalone property or in conjunction with the [`setValueIf`](#setValueIf) expression, in which case the calculated question value applies only when `setValueIf` evaluates to `true`.
662
666
  *
663
- * [View Demo](https://surveyjs.io/form-library/examples/trigger-setvalue/ (linkStyle))
667
+ * [View Demo](https://surveyjs.io/form-library/examples/set-question-value-dynamically/ (linkStyle))
664
668
  * @see defaultValueExpression
665
669
  * @see resetValueIf
666
670
  */
@@ -767,7 +771,7 @@ export declare class Question extends SurveyElement<Question> implements IQuesti
767
771
  readonly requiredText: string;
768
772
  addError(error: SurveyError | string): void;
769
773
  private addCustomError;
770
- removeError(error: SurveyError): void;
774
+ removeError(error: SurveyError): boolean;
771
775
  private checkForErrors;
772
776
  protected canCollectErrors(): boolean;
773
777
  private collectErrors;
@@ -228,7 +228,7 @@ export declare class QuestionSelectBase extends Question {
228
228
  * }
229
229
  * ```
230
230
  *
231
- * To enable Markdown support for the `text` property, implement Markdown-to-HTML conversion in the [onTextMarkdown](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#onTextMarkdown) event handler. For an example, refer to the following demo: [Convert Markdown to HTML with Showdown](https://surveyjs.io/form-library/examples/edit-survey-questions-markdown/).
231
+ * To enable Markdown support for the `text` property, implement Markdown-to-HTML conversion in the [`onTextMarkdown`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#onTextMarkdown) event handler. For an example, refer to the following demo: [Convert Markdown to HTML with markdown-it](https://surveyjs.io/form-library/examples/edit-survey-questions-markdown/).
232
232
  *
233
233
  * If you add custom properties, refer to the following help topic to learn how to serialize them into JSON: [Add Custom Properties to Property Grid](https://surveyjs.io/survey-creator/documentation/property-grid#add-custom-properties-to-the-property-grid).
234
234
  *
@@ -447,4 +447,5 @@ export declare class QuestionCompositeModel extends QuestionCustomModelBase {
447
447
  private setValuesIntoQuestions;
448
448
  protected getDisplayValueCore(keyAsText: boolean, value: any): any;
449
449
  private setAfterRenderCallbacks;
450
+ readonly ariaRole: string;
450
451
  }
@@ -39,20 +39,27 @@ export interface IMatrixCellsOwner extends ILocalizableOwner {
39
39
  getRows(): Array<any>;
40
40
  getColumns(): Array<any>;
41
41
  }
42
- export declare class MatrixCells {
42
+ export declare class MatrixCells extends Base {
43
43
  cellsOwner: IMatrixCellsOwner;
44
44
  private values;
45
+ private locs;
45
46
  constructor(cellsOwner: IMatrixCellsOwner);
47
+ getType(): string;
46
48
  readonly isEmpty: boolean;
47
49
  onValuesChanged: () => void;
50
+ private locNotification;
48
51
  private valuesChanged;
49
- setCellText(row: any, column: any, val: string): void;
50
- setDefaultCellText(column: any, val: string): void;
51
- getCellLocText(row: any, column: any): LocalizableString;
52
- getDefaultCellLocText(column: any, val: string): LocalizableString;
52
+ getDefaultCellLocText(column: any): LocalizableString;
53
53
  getCellDisplayLocText(row: any, column: any): LocalizableString;
54
+ private getCellLocCore;
55
+ private readonly defaultRowValue: any;
56
+ private getCellLocData;
57
+ private getCellLocDataFromValue;
54
58
  getCellText(row: any, column: any): string;
59
+ setCellText(row: any, column: any, val: string): void;
60
+ private updateValues;
55
61
  getDefaultCellText(column: any): string;
62
+ setDefaultCellText(column: any, val: string): void;
56
63
  getCellDisplayText(row: any, column: any): string;
57
64
  readonly rows: Array<any>;
58
65
  readonly columns: Array<any>;
@@ -60,6 +67,7 @@ export declare class MatrixCells {
60
67
  getJson(): any;
61
68
  setJson(value: any): void;
62
69
  locStrsChanged(): void;
70
+ private runFuncOnLocs;
63
71
  protected createString(): LocalizableString;
64
72
  }
65
73
  /**
@@ -393,7 +393,7 @@ export declare class QuestionMatrixDropdownModelBase extends QuestionMatrixBaseM
393
393
  * }
394
394
  * ```
395
395
  *
396
- * To enable Markdown support for the `text` property, implement Markdown-to-HTML conversion in the [onTextMarkdown](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#onTextMarkdown) event handler. For an example, refer to the following demo: [Convert Markdown to HTML with Showdown](https://surveyjs.io/form-library/examples/edit-survey-questions-markdown/).
396
+ * To enable Markdown support for the `text` property, implement Markdown-to-HTML conversion in the [onTextMarkdown](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#onTextMarkdown) event handler. For an example, refer to the following demo: [Convert Markdown to HTML with markdown-it](https://surveyjs.io/form-library/examples/edit-survey-questions-markdown/).
397
397
  *
398
398
  * If you add custom properties, refer to the following help topic to learn how to serialize them into JSON: [Add Custom Properties to Property Grid](https://surveyjs.io/survey-creator/documentation/property-grid#add-custom-properties-to-the-property-grid).
399
399
  *
@@ -213,7 +213,7 @@ export declare class QuestionMultipleTextModel extends Question implements IMult
213
213
  * }
214
214
  * ```
215
215
  *
216
- * To enable Markdown support for the `title` property, implement Markdown-to-HTML conversion in the [`onTextMarkdown`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#onTextMarkdown) event handler. For an example, refer to the following demo: [Convert Markdown to HTML with Showdown](https://surveyjs.io/form-library/examples/edit-survey-questions-markdown/).
216
+ * To enable Markdown support for the `title` property, implement Markdown-to-HTML conversion in the [`onTextMarkdown`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#onTextMarkdown) event handler. For an example, refer to the following demo: [Convert Markdown to HTML with markdown-it](https://surveyjs.io/form-library/examples/edit-survey-questions-markdown/).
217
217
  * @see itemTitleWidth
218
218
  * @see addItem
219
219
  */
@@ -323,6 +323,7 @@ export declare class QuestionPanelDynamicModel extends Question implements IQues
323
323
  * @see allowRemovePanel
324
324
  */
325
325
  minPanelCount: number;
326
+ private onMinPanelCountChanged;
326
327
  /*
327
328
  * A maximum number of panels in Dynamic Panel. Users cannot add new panels if `panelCount` equals `maxPanelCount`.
328
329
  *
@@ -332,6 +333,7 @@ export declare class QuestionPanelDynamicModel extends Question implements IQues
332
333
  * @see allowAddPanel
333
334
  */
334
335
  maxPanelCount: number;
336
+ private onMaxPanelCountChanged;
335
337
  /*
336
338
  * Specifies whether users are allowed to add new panels.
337
339
  *
@@ -30,6 +30,7 @@ export declare class QuestionRankingModel extends QuestionCheckboxModel {
30
30
  onSurveyValueChanged(newValue: any): void;
31
31
  onSurveyLoad(): void;
32
32
  protected onVisibleChoicesChanged: () => void;
33
+ updateValueFromSurvey(newValue: any, clearData: boolean): void;
33
34
  localeChanged: () => void;
34
35
  private addToValueByVisibleChoices;
35
36
  private removeFromValueByVisibleChoices;
@@ -97,6 +98,7 @@ export declare class QuestionRankingModel extends QuestionCheckboxModel {
97
98
  * @see selectToRankAreasLayout
98
99
  */
99
100
  selectToRankEnabled: boolean;
101
+ selectToRankSwapAreas: boolean;
100
102
  carryForwardStartUnranked: boolean;
101
103
  /*
102
104
  * Specifies the layout of the ranked and unranked areas. Applies when [`selectToRankEnabled`](https://surveyjs.io/form-library/documentation/api-reference/ranking-question-model#selectToRankEnabled) is `true`.
@@ -51,7 +51,7 @@ export declare class QuestionRatingModel extends Question {
51
51
  *
52
52
  * If you add custom properties, refer to the following help topic to learn how to serialize them into JSON: [Add Custom Properties to Property Grid](https://surveyjs.io/survey-creator/documentation/property-grid#add-custom-properties-to-the-property-grid).
53
53
  *
54
- * To enable Markdown support for the `text` property, implement Markdown-to-HTML conversion in the [onTextMarkdown](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#onTextMarkdown) event handler. For an example, refer to the following demo: [Convert Markdown to HTML with Showdown](https://surveyjs.io/form-library/examples/edit-survey-questions-markdown/).
54
+ * To enable Markdown support for the `text` property, implement Markdown-to-HTML conversion in the [onTextMarkdown](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#onTextMarkdown) event handler. For an example, refer to the following demo: [Convert Markdown to HTML with markdown-it](https://surveyjs.io/form-library/examples/edit-survey-questions-markdown/).
55
55
  *
56
56
  * If you need to specify only the `value` property, you can set the `rateValues` property to an array of numbers, for example, `[ 3, 6, 10 ]`. These values are both saved in survey results and used as display text.
57
57
  *
@@ -116,6 +116,7 @@ export declare class QuestionRatingModel extends Question {
116
116
  private createRenderedRateItems;
117
117
  renderedRateItems: Array<RenderedRatingItem>;
118
118
  private createRateValues;
119
+ private getRatingItemValue;
119
120
  private correctValue;
120
121
  getType(): string;
121
122
  protected getFirstInputElementId(): string;
@@ -262,6 +263,7 @@ export declare class QuestionRatingModel extends Question {
262
263
  readonly searchEnabled: boolean;
263
264
  renderedValue: any;
264
265
  isItemSelected(item: ItemValue): boolean;
266
+ private visibleChoicesValue;
265
267
  readonly visibleChoices: ItemValue[];
266
268
  readonly readOnlyText: any;
267
269
  needResponsiveWidth(): boolean;
@@ -271,6 +273,7 @@ export declare class QuestionRatingModel extends Question {
271
273
  protected getDesktopRenderAs(): string;
272
274
  private dropdownListModelValue;
273
275
  dropdownListModel: DropdownListModel;
276
+ protected onBlurCore(event: any): void;
274
277
  protected updateCssClasses(res: any, css: any): void;
275
278
  protected calcCssClasses(css: any): any;
276
279
  themeChanged(theme: ITheme): void;
@@ -41,6 +41,7 @@ export declare abstract class SurveyElementCore extends Base implements ILocaliz
41
41
  title: string;
42
42
  readonly locTitle: LocalizableString;
43
43
  protected getDefaultTitleValue(): string;
44
+ protected setTitleValue(val: string): void;
44
45
  /**
45
46
  * Returns `true` if the survey element has a description.
46
47
  * @see description
@@ -102,8 +103,8 @@ export declare class SurveyElement<E = any> extends SurveyElementCore implements
102
103
  dragTypeOverMe: DragTypeOverMeEnum;
103
104
  isDragMe: boolean;
104
105
  readOnlyChangedCallback: () => void;
105
- static ScrollElementToTop(elementId: string, scrollIfVisible?: boolean, scrollIntoViewOptions?: ScrollIntoViewOptions): boolean;
106
- static ScrollElementToViewCore(el: HTMLElement, checkLeft: boolean, scrollIfVisible?: boolean, scrollIntoViewOptions?: ScrollIntoViewOptions): boolean;
106
+ static ScrollElementToTop(elementId: string, scrollIfVisible?: boolean, scrollIntoViewOptions?: ScrollIntoViewOptions, doneCallback?: () => void): boolean;
107
+ static ScrollElementToViewCore(el: HTMLElement, checkLeft: boolean, scrollIfVisible?: boolean, scrollIntoViewOptions?: ScrollIntoViewOptions, doneCallback?: () => void): boolean;
107
108
  static GetFirstNonTextElement(elements: any, removeSpaces?: boolean): any;
108
109
  static FocusElement(elementId: string): boolean;
109
110
  private static focusElementCore;
@@ -218,6 +219,7 @@ export declare class SurveyElement<E = any> extends SurveyElementCore implements
218
219
  readonly survey: ISurvey;
219
220
  getSurvey(live?: boolean): ISurvey;
220
221
  protected setSurveyCore(value: ISurvey): void;
222
+ readonly skeletonHeight: string;
221
223
  isContentElement: boolean;
222
224
  isEditableTemplateElement: boolean;
223
225
  isInteractiveDesignElement: boolean;
@@ -1,6 +1,6 @@
1
1
  import { JsonError } from "./jsonobject";
2
2
  import { Base, EventBase } from "./base";
3
- import { ISurvey, ISurveyData, ISurveyImpl, ITextProcessor, IQuestion, IPanel, IElement, IPage, ISurveyErrorOwner, ISurveyElement, IProgressInfo, IFindElement, ISurveyLayoutElement, IPlainDataOptions, LayoutElementContainer, IValueItemCustomPropValues, ILoadFromJSONOptions, IDropdownMenuOptions } from "./base-interfaces";
3
+ import { ISurvey, ISurveyData, ISurveyImpl, ITextProcessor, IQuestion, IPanel, IElement, IPage, ISurveyErrorOwner, ISurveyElement, IProgressInfo, IFindElement, ISurveyLayoutElement, IPlainDataOptions, LayoutElementContainer, IValueItemCustomPropValues, ILoadFromJSONOptions, IDropdownMenuOptions, ITextProcessorProp, ITextProcessorResult } from "./base-interfaces";
4
4
  import { SurveyElementCore } from "./survey-element";
5
5
  import { ISurveyTriggerOwner, SurveyTrigger, Trigger } from "./trigger";
6
6
  import { CalculatedValue } from "./calculatedValue";
@@ -791,7 +791,10 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
791
791
  readonly isLazyRendering: boolean;
792
792
  lazyRenderingFirstBatchSizeValue: number;
793
793
  lazyRenderingFirstBatchSize: number;
794
- disableLazyRenderingBeforeElement(el: IElement): void;
794
+ protected _isLazyRenderingSuspended: boolean;
795
+ readonly isLazyRenderingSuspended: boolean;
796
+ protected suspendLazyRendering(): void;
797
+ protected releaseLazyRendering(): void;
795
798
  private updateLazyRenderingRowsOnRemovingElements;
796
799
  /*
797
800
  * A list of triggers in the survey.
@@ -1292,8 +1295,9 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
1292
1295
  /**
1293
1296
  * Calculates a given [expression](https://surveyjs.io/form-library/documentation/design-survey/conditional-logic#expressions) and returns a result value.
1294
1297
  * @param expression An expression to calculate.
1298
+ * @param callback A callback function that you can use to access the calculation result if the expression uses asynchronous functions.
1295
1299
  */
1296
- runExpression(expression: string): any;
1300
+ runExpression(expression: string, callback?: (res: any) => void): any;
1297
1301
  /**
1298
1302
  * Calculates a given [expression](https://surveyjs.io/form-library/documentation/design-survey/conditional-logic#expressions) and returns `true` or `false`.
1299
1303
  * @param expression An expression to calculate.
@@ -2159,7 +2163,8 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
2159
2163
  private getUpdatedPanelTitleActions;
2160
2164
  private getUpdatedPageTitleActions;
2161
2165
  getUpdatedMatrixRowActions(question: QuestionMatrixDropdownModelBase, row: any, actions: Array<IAction>): IAction[];
2162
- scrollElementToTop(element: ISurveyElement, question: Question, page: PageModel, id: string, scrollIfVisible?: boolean, scrollIntoViewOptions?: ScrollIntoViewOptions): any;
2166
+ skeletonHeight: number;
2167
+ scrollElementToTop(element: ISurveyElement, question: Question, page: PageModel, id: string, scrollIfVisible?: boolean, scrollIntoViewOptions?: ScrollIntoViewOptions, passedRootElement?: HTMLElement): any;
2163
2168
  /**
2164
2169
  * Opens a dialog window for users to select files.
2165
2170
  * @param input A [file input HTML element](https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement).
@@ -2530,10 +2535,9 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
2530
2535
  validatePanel(panel: PanelModel): SurveyError;
2531
2536
  processHtml(html: string, reason?: string): string;
2532
2537
  processText(text: string, returnDisplayValue: boolean): string;
2533
- processTextEx(text: string, returnDisplayValue: boolean, doEncoding: boolean): any;
2538
+ processTextEx(params: ITextProcessorProp): ITextProcessorResult;
2534
2539
  private textPreProcessorValue;
2535
2540
  private readonly textPreProcessor: any;
2536
- private processTextCore;
2537
2541
  getSurveyMarkdownHtml(element: Question | PanelModel | PageModel | SurveyModel, text: string, name: string): string;
2538
2542
  getCorrectedAnswerCount(): number;
2539
2543
  /**
@@ -1,6 +1,6 @@
1
1
  import { Question } from "./question";
2
2
  import { PanelModel } from "./panel";
3
- import { ISurvey, ITextProcessor } from "./base-interfaces";
3
+ import { ISurvey, ITextProcessor, ITextProcessorProp, ITextProcessorResult } from "./base-interfaces";
4
4
  export declare class TextPreProcessorItem {
5
5
  start: number;
6
6
  end: number;
@@ -37,6 +37,6 @@ export declare class QuestionTextProcessor implements ITextProcessor {
37
37
  protected getQuestionDisplayText(question: Question): string;
38
38
  private getProcessedTextValue;
39
39
  processText(text: string, returnDisplayValue: boolean): string;
40
- processTextEx(text: string, returnDisplayValue: boolean): any;
40
+ processTextEx(params: ITextProcessorProp): ITextProcessorResult;
41
41
  private processTextCore;
42
42
  }
@@ -10,7 +10,7 @@ declare const isShadowDOM: (rootElement: Document | ShadowRoot | HTMLElement) =>
10
10
  declare const getElement: (element: HTMLElement | string) => HTMLElement;
11
11
  declare function isElementVisible(element: HTMLElement, threshold?: number): boolean;
12
12
  declare function findScrollableParent(element: HTMLElement): HTMLElement;
13
- declare function scrollElementByChildId(id: string): void;
13
+ declare function activateLazyRenderingChecks(id: string): void;
14
14
  declare function navigateToUrl(url: string): void;
15
15
  declare function wrapUrlForBackgroundImage(url: string): string;
16
16
  declare function getIconNameFromProxy(iconName: string): string;
@@ -69,4 +69,4 @@ export declare function setPropertiesOnElementForAnimation(el: HTMLElement, styl
69
69
  export declare function prepareElementForVerticalAnimation(el: HTMLElement): void;
70
70
  export declare function cleanHtmlElementAfterAnimation(el: HTMLElement): void;
71
71
  export declare function roundTo2Decimals(number: number): number;
72
- 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 };
72
+ export { mergeValues, getElementWidth, isContainerVisible, classesToSelector, compareVersions, confirmAction, confirmActionAsync, detectIEOrEdge, detectIEBrowser, loadFileFromBase64, isMobile, isShadowDOM, getElement, isElementVisible, findScrollableParent, activateLazyRenderingChecks, navigateToUrl, wrapUrlForBackgroundImage, createSvg, getIconNameFromProxy, increaseHeightByContent, getOriginalEvent, preventDefaults, findParentByClassNames, getFirstVisibleChild, chooseFiles };
@@ -160,6 +160,7 @@ export declare var modernCss: {
160
160
  rootSelectToRankMod: string;
161
161
  rootSelectToRankAlignVertical: string;
162
162
  rootSelectToRankAlignHorizontal: string;
163
+ rootSelectToRankSwapAreas: string;
163
164
  item: string;
164
165
  itemContent: string;
165
166
  itemIndex: string;
@@ -140,6 +140,7 @@ export declare var defaultStandardCss: {
140
140
  rootSelectToRankMod: string;
141
141
  rootSelectToRankAlignVertical: string;
142
142
  rootSelectToRankAlignHorizontal: string;
143
+ rootSelectToRankSwapAreas: string;
143
144
  item: string;
144
145
  itemContent: string;
145
146
  itemIndex: string;
@@ -87,7 +87,7 @@ export { DropdownListModel } from "../../src/dropdownListModel";
87
87
  export { DropdownMultiSelectListModel } from "../../src/dropdownMultiSelectListModel";
88
88
  export { QuestionButtonGroupModel, ButtonGroupItemModel, ButtonGroupItemValue } from "../../src/question_buttongroup";
89
89
  export { IsMobile, IsTouch, _setIsTouch } from "../../src/utils/devices";
90
- export { confirmAction, confirmActionAsync, detectIEOrEdge, doKey2ClickUp, doKey2ClickDown, doKey2ClickBlur, loadFileFromBase64, increaseHeightByContent, createSvg, chooseFiles, sanitizeEditableContent, IAttachKey2clickOptions } from "../../src/utils/utils";
90
+ export { confirmAction, confirmActionAsync, detectIEOrEdge, doKey2ClickUp, doKey2ClickDown, doKey2ClickBlur, loadFileFromBase64, increaseHeightByContent, createSvg, chooseFiles, sanitizeEditableContent, prepareElementForVerticalAnimation, cleanHtmlElementAfterAnimation, classesToSelector, IAttachKey2clickOptions } from "../../src/utils/utils";
91
91
  export { InputMaskBase } from "../../src/mask/mask_base";
92
92
  export { InputMaskPattern } from "../../src/mask/mask_pattern";
93
93
  export { InputMaskNumeric } from "../../src/mask/mask_numeric";
@@ -23,9 +23,19 @@ export interface ISurveyData {
23
23
  findQuestionByName(name: string): IQuestion;
24
24
  getEditingSurveyElement(): Base;
25
25
  }
26
+ export interface ITextProcessorProp {
27
+ text: string;
28
+ returnDisplayValue?: boolean;
29
+ doEncoding?: boolean;
30
+ runAtDesign?: boolean;
31
+ }
32
+ export interface ITextProcessorResult {
33
+ text: string;
34
+ hasAllValuesOnLastRun: boolean;
35
+ }
26
36
  export interface ITextProcessor {
27
37
  processText(text: string, returnDisplayValue: boolean): string;
28
- processTextEx(text: string, returnDisplayValue: boolean, doEncoding: boolean): any;
38
+ processTextEx(params: ITextProcessorProp): ITextProcessorResult;
29
39
  }
30
40
  export interface ISurveyErrorOwner extends ILocalizableOwner {
31
41
  getErrorCustomText(text: string, error: SurveyError): string;
@@ -160,7 +170,7 @@ export interface ISurvey extends ITextProcessor, ISurveyErrorOwner {
160
170
  dynamicPanelCurrentIndexChanged(question: IQuestion, options: any): void;
161
171
  dragAndDropAllow(options: DragDropAllowEvent): boolean;
162
172
  scrollElementToTop(element: ISurveyElement, question: IQuestion, page: IPage, id: string, scrollIfVisible?: boolean, scrollIntoViewOptions?: ScrollIntoViewOptions): any;
163
- runExpression(expression: string): any;
173
+ runExpression(expression: string, callback?: (res: any) => void): any;
164
174
  elementContentVisibilityChanged(element: ISurveyElement): void;
165
175
  onCorrectQuestionAnswer(question: IQuestion, options: any): void;
166
176
  processPopupVisiblityChanged(question: IQuestion, popupModel: PopupModel, visible: boolean): void;
@@ -56,7 +56,7 @@ export declare class Base {
56
56
  private static currentDependencis;
57
57
  static finishCollectDependencies(): Dependencies;
58
58
  static startCollectDependencies(updater: () => void, target: Base, property: string): void;
59
- private static collectDependency;
59
+ protected static collectDependency(target: Base, property: string): void;
60
60
  dependencies: {
61
61
  [key: string]: ComputedUpdater;
62
62
  };
@@ -310,6 +310,17 @@ export declare class Base {
310
310
  get onElementRerendered(): EventBase<Base>;
311
311
  afterRerender(): void;
312
312
  }
313
+ export declare class RenderingCompletedAwaiter {
314
+ private _elements;
315
+ private _renderedHandler;
316
+ constructor(_elements: Array<Base>, _renderedHandler: () => void, waitingTimeout?: number);
317
+ private _elementsToRenderCount;
318
+ private _elementsToRenderTimer;
319
+ private _elementRenderedHandler;
320
+ private stopWaitingForElementsRendering;
321
+ private visibleElementsRendered;
322
+ dispose(): void;
323
+ }
313
324
  export declare class ArrayChanges<T = any> {
314
325
  index: number;
315
326
  deleteCount: number;
@@ -59,7 +59,6 @@ export declare var defaultV2Css: {
59
59
  titleExpanded: string;
60
60
  titleCollapsed: string;
61
61
  titleDisabled: string;
62
- titleHidden: string;
63
62
  titleOnExpand: string;
64
63
  titleOnError: string;
65
64
  titleBar: string;
@@ -72,7 +71,6 @@ export declare var defaultV2Css: {
72
71
  footer: string;
73
72
  requiredText: string;
74
73
  header: string;
75
- headerHidden: string;
76
74
  collapsed: string;
77
75
  expanded: string;
78
76
  expandable: string;
@@ -766,6 +764,7 @@ export declare var defaultV2Css: {
766
764
  rootSelectToRankEmptyValueMod: string;
767
765
  rootSelectToRankAlignVertical: string;
768
766
  rootSelectToRankAlignHorizontal: string;
767
+ rootSelectToRankSwapAreas: string;
769
768
  item: string;
770
769
  itemContent: string;
771
770
  itemIndex: string;
@@ -12,7 +12,8 @@ export declare class DragDropChoices extends DragDropCore<QuestionSelectBase> {
12
12
  protected doDragOver: () => any;
13
13
  protected isDropTargetValid(dropTarget: ItemValue, dropTargetNode?: HTMLElement): boolean;
14
14
  protected doBanDropHere: () => any;
15
- protected calculateIsBottom(clientY: number): boolean;
15
+ protected isDropTargetDoesntChanged(newIsBottom: boolean): boolean;
16
+ protected calculateIsBottom(clientY: number, dropTargetNode?: HTMLElement): boolean;
16
17
  protected afterDragOver(dropTargetNode: HTMLElement): void;
17
18
  protected doDrop(): any;
18
19
  clear(): void;
@@ -35,6 +35,7 @@ export declare class Cover extends Base {
35
35
  cells: CoverCell[];
36
36
  actualHeight: number;
37
37
  height: number;
38
+ mobileHeight: number;
38
39
  inheritWidthFrom: "survey" | "container";
39
40
  textAreaWidth: number;
40
41
  textGlowEnabled: boolean;