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
@@ -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
  get 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
  *
@@ -32,6 +33,7 @@ export declare class PageModel extends PanelModelBase implements IPage {
32
33
  set navigationDescription(val: string);
33
34
  get locNavigationDescription(): LocalizableString;
34
35
  navigationLocStrChanged(): void;
36
+ getMarkdownHtml(text: string, name: string): string;
35
37
  get passed(): boolean;
36
38
  set passed(val: boolean);
37
39
  protected removeFromParent(): 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 get allowRendering();
20
21
  startLazyRendering(rowContainerDiv: HTMLElement, findScrollableContainer?: typeof findScrollableParent): void;
21
22
  ensureVisibility(): void;
22
23
  stopLazyRendering(): void;
@@ -80,6 +81,8 @@ export declare class PanelModelBase extends SurveyElement<Question> implements I
80
81
  setSurveyImpl(value: ISurveyImpl, isLight?: boolean): void;
81
82
  endLoadingFromJson(): void;
82
83
  showTitle: boolean;
84
+ hasTextInTitle: boolean;
85
+ protected calcHasTextInTitle(): void;
83
86
  get hasTitle(): boolean;
84
87
  delete(doDispose?: boolean): void;
85
88
  private deletePanel;
@@ -319,6 +322,8 @@ export declare class PanelModelBase extends SurveyElement<Question> implements I
319
322
  getProgressInfo(): IProgressInfo;
320
323
  get root(): PanelModelBase;
321
324
  protected childVisibilityChanged(): void;
325
+ protected canRenderFirstRows(): boolean;
326
+ private isLazyRenderInRow;
322
327
  createRowAndSetLazy(index: number): QuestionRowModel;
323
328
  createRow(): QuestionRowModel;
324
329
  onSurveyLoad(): void;
@@ -340,12 +345,14 @@ export declare class PanelModelBase extends SurveyElement<Question> implements I
340
345
  private updateRowsVisibility;
341
346
  canBuildRows(): boolean;
342
347
  private buildRows;
343
- private isLazyRenderInRow;
344
- protected canRenderFirstRows(): boolean;
345
348
  getDragDropInfo(): any;
346
349
  private updateRowsOnElementRemoved;
347
350
  updateRowsRemoveElementFromRow(element: IElement, row: QuestionRowModel): void;
348
- disableLazyRenderingBeforeElement(el?: IElement): void;
351
+ getAllRows(): Array<QuestionRowModel>;
352
+ private findRowAndIndexByElement;
353
+ private forceRenderRow;
354
+ forceRenderElement(el: IElement, elementsRendered?: () => void, gap?: number): void;
355
+ forceRenderRows(rows: Array<QuestionRowModel>, elementsRendered?: () => void): void;
349
356
  findRowByElement(el: IElement): QuestionRowModel;
350
357
  elementWidthChanged(el: IElement): void;
351
358
  get processedTitle(): string;
@@ -482,11 +489,8 @@ export declare class PanelModel extends PanelModelBase implements IElement {
482
489
  getType(): string;
483
490
  get contentId(): string;
484
491
  getSurvey(live?: boolean): ISurvey;
485
- get hasTextInTitle(): boolean;
486
- private calcHasTextInTitle;
487
492
  onSurveyLoad(): void;
488
493
  protected onSetData(): void;
489
- get cssHeader(): string;
490
494
  get isPanel(): boolean;
491
495
  /**
492
496
  * Returns a page to which the panel belongs and allows you to move this panel to a different page.
@@ -554,6 +558,7 @@ export declare class PanelModel extends PanelModelBase implements IElement {
554
558
  protected createLocTitleProperty(): LocalizableString;
555
559
  protected beforeSetVisibleIndex(index: number): number;
556
560
  protected getPanelStartIndex(index: number): number;
561
+ private hasParentInQuestionIndex;
557
562
  protected isContinueNumbering(): boolean;
558
563
  private notifySurveyOnVisibilityChanged;
559
564
  protected getRenderedTitle(str: string): string;
@@ -520,6 +520,8 @@ export declare class Question extends SurveyElement<Question> implements IQuesti
520
520
  * A survey parses and runs all expressions on startup. If any values used in the expression change, the survey re-evaluates it.
521
521
  *
522
522
  * Refer to the following help topic for more information: [Conditional Visibility](https://surveyjs.io/form-library/documentation/design-survey-conditional-logic#conditional-visibility).
523
+ *
524
+ * [View Demo](https://surveyjs.io/form-library/examples/how-to-conditionally-make-input-field-read-only/ (linkStyle))
523
525
  * @see readOnly
524
526
  * @see isReadOnly
525
527
  */
@@ -527,6 +529,8 @@ export declare class Question extends SurveyElement<Question> implements IQuesti
527
529
  set enableIf(val: string);
528
530
  surveyChoiceItemVisibilityChange(): void;
529
531
  runCondition(values: HashTable<any>, properties: HashTable<any>): void;
532
+ get isInDesignMode(): boolean;
533
+ get isInDesignModeV2(): boolean;
530
534
  /**
531
535
  * A question number or letter (depends on the `questionStartIndex` property of the question container (panel, page, or survey)).
532
536
  *
@@ -559,7 +563,7 @@ export declare class Question extends SurveyElement<Question> implements IQuesti
559
563
  *
560
564
  * | Question type | Value type(s) |
561
565
  * | ------------- | ------------- |
562
- * | Checkboxes | `Array<string \| number>` |
566
+ * | Checkboxes | <code>Array&lt;string &#124; number&gt;</code> |
563
567
  * | Dropdown | `string` \| `number` |
564
568
  * | Dynamic Matrix | `Array<object>` |
565
569
  * | Dynamic Panel | `Array<object>` |
@@ -567,14 +571,14 @@ export declare class Question extends SurveyElement<Question> implements IQuesti
567
571
  * | File Upload | `File` \| `Array<File>` |
568
572
  * | HTML | (no value) |
569
573
  * | Image | (no value) |
570
- * | Image Picker | `Array<string \| number>` |
574
+ * | Image Picker | <code>Array&lt;string &#124; number&gt;</code> |
571
575
  * | Long Text | `string` |
572
576
  * | Multi-Select Dropdown | `object` |
573
577
  * | Multi-Select Matrix | `object` |
574
578
  * | Multiple Textboxes | `Array<string>` |
575
579
  * | Panel | (no value) |
576
580
  * | Radio Button Group | `string` \| `number` |
577
- * | Ranking | `Array<string \| number>` |
581
+ * | Ranking | <code>Array&lt;string &#124; number&gt;</code> |
578
582
  * | Rating Scale | `number` \| `string` |
579
583
  * | Signature | `string` (base64-encoded image) |
580
584
  * | Single-Line Input | `string` \| `number` \| `Date` |
@@ -671,7 +675,7 @@ export declare class Question extends SurveyElement<Question> implements IQuesti
671
675
  *
672
676
  * A survey parses and runs all expressions on startup. If any values used in the expression change, the survey re-evaluates it.
673
677
  *
674
- * [View Demo](https://surveyjs.io/form-library/examples/trigger-setvalue/ (linkStyle))
678
+ * [View Demo](https://surveyjs.io/form-library/examples/set-question-value-dynamically/ (linkStyle))
675
679
  * @see setValueIf
676
680
  */
677
681
  get resetValueIf(): string;
@@ -681,7 +685,7 @@ export declare class Question extends SurveyElement<Question> implements IQuesti
681
685
  *
682
686
  * A survey parses and runs all expressions on startup. If any values used in the expression change, the survey re-evaluates it.
683
687
  *
684
- * [View Demo](https://surveyjs.io/form-library/examples/trigger-setvalue/ (linkStyle))
688
+ * [View Demo](https://surveyjs.io/form-library/examples/set-question-value-dynamically/ (linkStyle))
685
689
  * @see resetValueIf
686
690
  */
687
691
  get setValueIf(): string;
@@ -691,7 +695,7 @@ export declare class Question extends SurveyElement<Question> implements IQuesti
691
695
  *
692
696
  * 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`.
693
697
  *
694
- * [View Demo](https://surveyjs.io/form-library/examples/trigger-setvalue/ (linkStyle))
698
+ * [View Demo](https://surveyjs.io/form-library/examples/set-question-value-dynamically/ (linkStyle))
695
699
  * @see defaultValueExpression
696
700
  * @see resetValueIf
697
701
  */
@@ -803,7 +807,7 @@ export declare class Question extends SurveyElement<Question> implements IQuesti
803
807
  get requiredText(): string;
804
808
  addError(error: SurveyError | string): void;
805
809
  private addCustomError;
806
- removeError(error: SurveyError): void;
810
+ removeError(error: SurveyError): boolean;
807
811
  private checkForErrors;
808
812
  protected canCollectErrors(): boolean;
809
813
  private collectErrors;
@@ -242,7 +242,7 @@ export declare class QuestionSelectBase extends Question {
242
242
  * }
243
243
  * ```
244
244
  *
245
- * 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/).
245
+ * 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/).
246
246
  *
247
247
  * 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).
248
248
  *
@@ -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
+ get ariaRole(): string;
450
451
  }
@@ -41,20 +41,27 @@ export interface IMatrixCellsOwner extends ILocalizableOwner {
41
41
  getRows(): Array<any>;
42
42
  getColumns(): Array<any>;
43
43
  }
44
- export declare class MatrixCells {
44
+ export declare class MatrixCells extends Base {
45
45
  cellsOwner: IMatrixCellsOwner;
46
46
  private values;
47
+ private locs;
47
48
  constructor(cellsOwner: IMatrixCellsOwner);
49
+ getType(): string;
48
50
  get isEmpty(): boolean;
49
51
  onValuesChanged: () => void;
52
+ private locNotification;
50
53
  private valuesChanged;
51
- setCellText(row: any, column: any, val: string): void;
52
- setDefaultCellText(column: any, val: string): void;
53
- getCellLocText(row: any, column: any): LocalizableString;
54
- getDefaultCellLocText(column: any, val: string): LocalizableString;
54
+ getDefaultCellLocText(column: any): LocalizableString;
55
55
  getCellDisplayLocText(row: any, column: any): LocalizableString;
56
+ private getCellLocCore;
57
+ private get defaultRowValue();
58
+ private getCellLocData;
59
+ private getCellLocDataFromValue;
56
60
  getCellText(row: any, column: any): string;
61
+ setCellText(row: any, column: any, val: string): void;
62
+ private updateValues;
57
63
  getDefaultCellText(column: any): string;
64
+ setDefaultCellText(column: any, val: string): void;
58
65
  getCellDisplayText(row: any, column: any): string;
59
66
  get rows(): Array<any>;
60
67
  get columns(): Array<any>;
@@ -62,6 +69,7 @@ export declare class MatrixCells {
62
69
  getJson(): any;
63
70
  setJson(value: any): void;
64
71
  locStrsChanged(): void;
72
+ private runFuncOnLocs;
65
73
  protected createString(): LocalizableString;
66
74
  }
67
75
  /**
@@ -409,7 +409,7 @@ export declare class QuestionMatrixDropdownModelBase extends QuestionMatrixBaseM
409
409
  * }
410
410
  * ```
411
411
  *
412
- * 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/).
412
+ * 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/).
413
413
  *
414
414
  * 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).
415
415
  *
@@ -232,7 +232,7 @@ export declare class QuestionMultipleTextModel extends Question implements IMult
232
232
  * }
233
233
  * ```
234
234
  *
235
- * 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/).
235
+ * 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/).
236
236
  * @see itemTitleWidth
237
237
  * @see addItem
238
238
  */
@@ -342,6 +342,7 @@ export declare class QuestionPanelDynamicModel extends Question implements IQues
342
342
  */
343
343
  get minPanelCount(): number;
344
344
  set minPanelCount(val: number);
345
+ private onMinPanelCountChanged;
345
346
  /**
346
347
  * A maximum number of panels in Dynamic Panel. Users cannot add new panels if `panelCount` equals `maxPanelCount`.
347
348
  *
@@ -352,6 +353,7 @@ export declare class QuestionPanelDynamicModel extends Question implements IQues
352
353
  */
353
354
  get maxPanelCount(): number;
354
355
  set maxPanelCount(val: number);
356
+ private onMaxPanelCountChanged;
355
357
  /**
356
358
  * Specifies whether users are allowed to add new panels.
357
359
  *
@@ -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;
@@ -101,6 +102,8 @@ export declare class QuestionRankingModel extends QuestionCheckboxModel {
101
102
  */
102
103
  get selectToRankEnabled(): boolean;
103
104
  set selectToRankEnabled(val: boolean);
105
+ get selectToRankSwapAreas(): boolean;
106
+ set selectToRankSwapAreas(val: boolean);
104
107
  carryForwardStartUnranked: boolean;
105
108
  /**
106
109
  * 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
  *
@@ -120,6 +120,7 @@ export declare class QuestionRatingModel extends Question {
120
120
  private createRenderedRateItems;
121
121
  renderedRateItems: Array<RenderedRatingItem>;
122
122
  private createRateValues;
123
+ private getRatingItemValue;
123
124
  private correctValue;
124
125
  getType(): string;
125
126
  protected getFirstInputElementId(): string;
@@ -272,6 +273,7 @@ export declare class QuestionRatingModel extends Question {
272
273
  get renderedValue(): any;
273
274
  set renderedValue(val: any);
274
275
  isItemSelected(item: ItemValue): boolean;
276
+ private visibleChoicesValue;
275
277
  get visibleChoices(): ItemValue[];
276
278
  get readOnlyText(): any;
277
279
  needResponsiveWidth(): boolean;
@@ -282,6 +284,7 @@ export declare class QuestionRatingModel extends Question {
282
284
  private dropdownListModelValue;
283
285
  set dropdownListModel(val: DropdownListModel);
284
286
  get dropdownListModel(): DropdownListModel;
287
+ protected onBlurCore(event: any): void;
285
288
  protected updateCssClasses(res: any, css: any): void;
286
289
  protected calcCssClasses(css: any): any;
287
290
  themeChanged(theme: ITheme): void;
@@ -42,6 +42,7 @@ export declare abstract class SurveyElementCore extends Base implements ILocaliz
42
42
  set title(val: string);
43
43
  get locTitle(): LocalizableString;
44
44
  protected getDefaultTitleValue(): string;
45
+ protected setTitleValue(val: string): void;
45
46
  /**
46
47
  * Returns `true` if the survey element has a description.
47
48
  * @see description
@@ -103,8 +104,8 @@ export declare class SurveyElement<E = any> extends SurveyElementCore implements
103
104
  dragTypeOverMe: DragTypeOverMeEnum;
104
105
  isDragMe: boolean;
105
106
  readOnlyChangedCallback: () => void;
106
- static ScrollElementToTop(elementId: string, scrollIfVisible?: boolean, scrollIntoViewOptions?: ScrollIntoViewOptions): boolean;
107
- static ScrollElementToViewCore(el: HTMLElement, checkLeft: boolean, scrollIfVisible?: boolean, scrollIntoViewOptions?: ScrollIntoViewOptions): boolean;
107
+ static ScrollElementToTop(elementId: string, scrollIfVisible?: boolean, scrollIntoViewOptions?: ScrollIntoViewOptions, doneCallback?: () => void): boolean;
108
+ static ScrollElementToViewCore(el: HTMLElement, checkLeft: boolean, scrollIfVisible?: boolean, scrollIntoViewOptions?: ScrollIntoViewOptions, doneCallback?: () => void): boolean;
108
109
  static GetFirstNonTextElement(elements: any, removeSpaces?: boolean): any;
109
110
  static FocusElement(elementId: string): boolean;
110
111
  private static focusElementCore;
@@ -221,6 +222,7 @@ export declare class SurveyElement<E = any> extends SurveyElementCore implements
221
222
  get survey(): ISurvey;
222
223
  getSurvey(live?: boolean): ISurvey;
223
224
  protected setSurveyCore(value: ISurvey): void;
225
+ get skeletonHeight(): string;
224
226
  isContentElement: boolean;
225
227
  isEditableTemplateElement: boolean;
226
228
  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";
@@ -796,7 +796,10 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
796
796
  lazyRenderingFirstBatchSizeValue: number;
797
797
  get lazyRenderingFirstBatchSize(): number;
798
798
  set lazyRenderingFirstBatchSize(val: number);
799
- disableLazyRenderingBeforeElement(el: IElement): void;
799
+ protected _isLazyRenderingSuspended: boolean;
800
+ get isLazyRenderingSuspended(): boolean;
801
+ protected suspendLazyRendering(): void;
802
+ protected releaseLazyRendering(): void;
800
803
  private updateLazyRenderingRowsOnRemovingElements;
801
804
  /**
802
805
  * A list of triggers in the survey.
@@ -1343,8 +1346,9 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
1343
1346
  /**
1344
1347
  * Calculates a given [expression](https://surveyjs.io/form-library/documentation/design-survey/conditional-logic#expressions) and returns a result value.
1345
1348
  * @param expression An expression to calculate.
1349
+ * @param callback A callback function that you can use to access the calculation result if the expression uses asynchronous functions.
1346
1350
  */
1347
- runExpression(expression: string): any;
1351
+ runExpression(expression: string, callback?: (res: any) => void): any;
1348
1352
  /**
1349
1353
  * Calculates a given [expression](https://surveyjs.io/form-library/documentation/design-survey/conditional-logic#expressions) and returns `true` or `false`.
1350
1354
  * @param expression An expression to calculate.
@@ -2245,7 +2249,8 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
2245
2249
  private getUpdatedPanelTitleActions;
2246
2250
  private getUpdatedPageTitleActions;
2247
2251
  getUpdatedMatrixRowActions(question: QuestionMatrixDropdownModelBase, row: any, actions: Array<IAction>): IAction[];
2248
- scrollElementToTop(element: ISurveyElement, question: Question, page: PageModel, id: string, scrollIfVisible?: boolean, scrollIntoViewOptions?: ScrollIntoViewOptions): any;
2252
+ skeletonHeight: number;
2253
+ scrollElementToTop(element: ISurveyElement, question: Question, page: PageModel, id: string, scrollIfVisible?: boolean, scrollIntoViewOptions?: ScrollIntoViewOptions, passedRootElement?: HTMLElement): any;
2249
2254
  /**
2250
2255
  * Opens a dialog window for users to select files.
2251
2256
  * @param input A [file input HTML element](https://developer.mozilla.org/en-US/docs/Web/API/HTMLInputElement).
@@ -2617,10 +2622,9 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
2617
2622
  validatePanel(panel: PanelModel): SurveyError;
2618
2623
  processHtml(html: string, reason?: string): string;
2619
2624
  processText(text: string, returnDisplayValue: boolean): string;
2620
- processTextEx(text: string, returnDisplayValue: boolean, doEncoding: boolean): any;
2625
+ processTextEx(params: ITextProcessorProp): ITextProcessorResult;
2621
2626
  private textPreProcessorValue;
2622
2627
  private get textPreProcessor();
2623
- private processTextCore;
2624
2628
  getSurveyMarkdownHtml(element: Question | PanelModel | PageModel | SurveyModel, text: string, name: string): string;
2625
2629
  getCorrectedAnswerCount(): number;
2626
2630
  /**
@@ -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;
@@ -38,6 +38,6 @@ export declare class QuestionTextProcessor implements ITextProcessor {
38
38
  protected getQuestionDisplayText(question: Question): string;
39
39
  private getProcessedTextValue;
40
40
  processText(text: string, returnDisplayValue: boolean): string;
41
- processTextEx(text: string, returnDisplayValue: boolean): any;
41
+ processTextEx(params: ITextProcessorProp): ITextProcessorResult;
42
42
  private processTextCore;
43
43
  }
@@ -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;