survey-core 1.9.124 → 1.9.126

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 (321) hide show
  1. package/defaultV2.css +138 -56
  2. package/defaultV2.css.map +1 -1
  3. package/defaultV2.fontless.css +138 -56
  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 +14 -3
  8. package/i18n/arabic.js.map +1 -1
  9. package/i18n/arabic.min.js +2 -2
  10. package/i18n/basque.js +14 -3
  11. package/i18n/basque.js.map +1 -1
  12. package/i18n/basque.min.js +2 -2
  13. package/i18n/bulgarian.js +14 -3
  14. package/i18n/bulgarian.js.map +1 -1
  15. package/i18n/bulgarian.min.js +2 -2
  16. package/i18n/catalan.js +14 -3
  17. package/i18n/catalan.js.map +1 -1
  18. package/i18n/catalan.min.js +2 -2
  19. package/i18n/croatian.js +14 -3
  20. package/i18n/croatian.js.map +1 -1
  21. package/i18n/croatian.min.js +2 -2
  22. package/i18n/czech.js +14 -3
  23. package/i18n/czech.js.map +1 -1
  24. package/i18n/czech.min.js +2 -2
  25. package/i18n/danish.js +14 -3
  26. package/i18n/danish.js.map +1 -1
  27. package/i18n/danish.min.js +2 -2
  28. package/i18n/dutch.js +14 -3
  29. package/i18n/dutch.js.map +1 -1
  30. package/i18n/dutch.min.js +2 -2
  31. package/i18n/english.js +2 -1
  32. package/i18n/english.js.map +1 -1
  33. package/i18n/english.min.js +2 -2
  34. package/i18n/estonian.js +14 -3
  35. package/i18n/estonian.js.map +1 -1
  36. package/i18n/estonian.min.js +2 -2
  37. package/i18n/finnish.js +14 -3
  38. package/i18n/finnish.js.map +1 -1
  39. package/i18n/finnish.min.js +2 -2
  40. package/i18n/french.js +14 -3
  41. package/i18n/french.js.map +1 -1
  42. package/i18n/french.min.js +2 -2
  43. package/i18n/georgian.js +14 -3
  44. package/i18n/georgian.js.map +1 -1
  45. package/i18n/georgian.min.js +2 -2
  46. package/i18n/german.js +14 -3
  47. package/i18n/german.js.map +1 -1
  48. package/i18n/german.min.js +2 -2
  49. package/i18n/greek.js +14 -3
  50. package/i18n/greek.js.map +1 -1
  51. package/i18n/greek.min.js +2 -2
  52. package/i18n/hebrew.js +14 -3
  53. package/i18n/hebrew.js.map +1 -1
  54. package/i18n/hebrew.min.js +2 -2
  55. package/i18n/hindi.js +14 -3
  56. package/i18n/hindi.js.map +1 -1
  57. package/i18n/hindi.min.js +2 -2
  58. package/i18n/hungarian.js +14 -3
  59. package/i18n/hungarian.js.map +1 -1
  60. package/i18n/hungarian.min.js +2 -2
  61. package/i18n/icelandic.js +14 -3
  62. package/i18n/icelandic.js.map +1 -1
  63. package/i18n/icelandic.min.js +2 -2
  64. package/i18n/index.js +612 -95
  65. package/i18n/index.js.map +1 -1
  66. package/i18n/index.min.js +2 -2
  67. package/i18n/indonesian.js +14 -3
  68. package/i18n/indonesian.js.map +1 -1
  69. package/i18n/indonesian.min.js +2 -2
  70. package/i18n/italian.js +14 -3
  71. package/i18n/italian.js.map +1 -1
  72. package/i18n/italian.min.js +2 -2
  73. package/i18n/japanese.js +14 -3
  74. package/i18n/japanese.js.map +1 -1
  75. package/i18n/japanese.min.js +2 -2
  76. package/i18n/kazakh.js +14 -3
  77. package/i18n/kazakh.js.map +1 -1
  78. package/i18n/kazakh.min.js +2 -2
  79. package/i18n/korean.js +14 -3
  80. package/i18n/korean.js.map +1 -1
  81. package/i18n/korean.min.js +2 -2
  82. package/i18n/latvian.js +14 -3
  83. package/i18n/latvian.js.map +1 -1
  84. package/i18n/latvian.min.js +2 -2
  85. package/i18n/lithuanian.js +14 -3
  86. package/i18n/lithuanian.js.map +1 -1
  87. package/i18n/lithuanian.min.js +2 -2
  88. package/i18n/macedonian.js +14 -3
  89. package/i18n/macedonian.js.map +1 -1
  90. package/i18n/macedonian.min.js +2 -2
  91. package/i18n/malay.js +14 -3
  92. package/i18n/malay.js.map +1 -1
  93. package/i18n/malay.min.js +2 -2
  94. package/i18n/nl-BE.js +14 -3
  95. package/i18n/nl-BE.js.map +1 -1
  96. package/i18n/nl-BE.min.js +2 -2
  97. package/i18n/norwegian.js +14 -3
  98. package/i18n/norwegian.js.map +1 -1
  99. package/i18n/norwegian.min.js +2 -2
  100. package/i18n/persian.js +14 -3
  101. package/i18n/persian.js.map +1 -1
  102. package/i18n/persian.min.js +2 -2
  103. package/i18n/polish.js +14 -3
  104. package/i18n/polish.js.map +1 -1
  105. package/i18n/polish.min.js +2 -2
  106. package/i18n/portuguese-br.js +14 -3
  107. package/i18n/portuguese-br.js.map +1 -1
  108. package/i18n/portuguese-br.min.js +2 -2
  109. package/i18n/portuguese.js +14 -3
  110. package/i18n/portuguese.js.map +1 -1
  111. package/i18n/portuguese.min.js +2 -2
  112. package/i18n/romanian.js +14 -3
  113. package/i18n/romanian.js.map +1 -1
  114. package/i18n/romanian.min.js +2 -2
  115. package/i18n/russian.js +14 -3
  116. package/i18n/russian.js.map +1 -1
  117. package/i18n/russian.min.js +2 -2
  118. package/i18n/serbian.js +14 -3
  119. package/i18n/serbian.js.map +1 -1
  120. package/i18n/serbian.min.js +2 -2
  121. package/i18n/simplified-chinese.js +14 -3
  122. package/i18n/simplified-chinese.js.map +1 -1
  123. package/i18n/simplified-chinese.min.js +2 -2
  124. package/i18n/slovak.js +14 -3
  125. package/i18n/slovak.js.map +1 -1
  126. package/i18n/slovak.min.js +2 -2
  127. package/i18n/spanish.js +14 -3
  128. package/i18n/spanish.js.map +1 -1
  129. package/i18n/spanish.min.js +2 -2
  130. package/i18n/swahili.js +14 -3
  131. package/i18n/swahili.js.map +1 -1
  132. package/i18n/swahili.min.js +2 -2
  133. package/i18n/swedish.js +14 -3
  134. package/i18n/swedish.js.map +1 -1
  135. package/i18n/swedish.min.js +2 -2
  136. package/i18n/tajik.js +1 -1
  137. package/i18n/tajik.min.js +1 -1
  138. package/i18n/telugu.js +14 -3
  139. package/i18n/telugu.js.map +1 -1
  140. package/i18n/telugu.min.js +2 -2
  141. package/i18n/thai.js +14 -3
  142. package/i18n/thai.js.map +1 -1
  143. package/i18n/thai.min.js +2 -2
  144. package/i18n/traditional-chinese.js +14 -3
  145. package/i18n/traditional-chinese.js.map +1 -1
  146. package/i18n/traditional-chinese.min.js +2 -2
  147. package/i18n/turkish.js +14 -3
  148. package/i18n/turkish.js.map +1 -1
  149. package/i18n/turkish.min.js +2 -2
  150. package/i18n/ukrainian.js +14 -3
  151. package/i18n/ukrainian.js.map +1 -1
  152. package/i18n/ukrainian.min.js +2 -2
  153. package/i18n/urdu.js +14 -3
  154. package/i18n/urdu.js.map +1 -1
  155. package/i18n/urdu.min.js +2 -2
  156. package/i18n/vietnamese.js +14 -3
  157. package/i18n/vietnamese.js.map +1 -1
  158. package/i18n/vietnamese.min.js +2 -2
  159. package/i18n/welsh.js +14 -3
  160. package/i18n/welsh.js.map +1 -1
  161. package/i18n/welsh.min.js +2 -2
  162. package/modern.css +70 -48
  163. package/modern.css.map +1 -1
  164. package/modern.fontless.css +70 -48
  165. package/modern.fontless.css.map +1 -1
  166. package/modern.fontless.min.css +2 -2
  167. package/modern.min.css +2 -2
  168. package/package.json +1 -1
  169. package/plugins/bootstrap-integration.js +1 -1
  170. package/plugins/bootstrap-integration.min.js +1 -1
  171. package/plugins/bootstrap-material-integration.js +1 -1
  172. package/plugins/bootstrap-material-integration.min.js +1 -1
  173. package/survey.core.js +777 -243
  174. package/survey.core.js.map +1 -1
  175. package/survey.core.min.js +3 -3
  176. package/survey.css +70 -48
  177. package/survey.css.map +1 -1
  178. package/survey.i18n.js +612 -95
  179. package/survey.i18n.js.map +1 -1
  180. package/survey.i18n.min.js +2 -2
  181. package/survey.min.css +2 -2
  182. package/themes/borderless-dark-panelless.js +1 -1
  183. package/themes/borderless-dark-panelless.min.js +1 -1
  184. package/themes/borderless-dark.js +1 -1
  185. package/themes/borderless-dark.min.js +1 -1
  186. package/themes/borderless-light-panelless..js +1 -1
  187. package/themes/borderless-light-panelless..min.js +1 -1
  188. package/themes/borderless-light.js +1 -1
  189. package/themes/borderless-light.min.js +1 -1
  190. package/themes/contrast-dark-panelless.js +1 -1
  191. package/themes/contrast-dark-panelless.min.js +1 -1
  192. package/themes/contrast-dark.js +1 -1
  193. package/themes/contrast-dark.min.js +1 -1
  194. package/themes/contrast-light-panelless.js +1 -1
  195. package/themes/contrast-light-panelless.min.js +1 -1
  196. package/themes/contrast-light.js +1 -1
  197. package/themes/contrast-light.min.js +1 -1
  198. package/themes/default-dark-panelless.js +1 -1
  199. package/themes/default-dark-panelless.min.js +1 -1
  200. package/themes/default-dark.js +1 -1
  201. package/themes/default-dark.min.js +1 -1
  202. package/themes/default-light-panelless.js +1 -1
  203. package/themes/default-light-panelless.min.js +1 -1
  204. package/themes/default-light.js +1 -1
  205. package/themes/default-light.min.js +1 -1
  206. package/themes/doubleborder-dark-panelless.js +1 -1
  207. package/themes/doubleborder-dark-panelless.min.js +1 -1
  208. package/themes/doubleborder-dark.js +1 -1
  209. package/themes/doubleborder-dark.min.js +1 -1
  210. package/themes/doubleborder-light-panelles.js +1 -1
  211. package/themes/doubleborder-light-panelles.min.js +1 -1
  212. package/themes/doubleborder-light.js +1 -1
  213. package/themes/doubleborder-light.min.js +1 -1
  214. package/themes/flat-dark-panelless.js +1 -1
  215. package/themes/flat-dark-panelless.min.js +1 -1
  216. package/themes/flat-dark.js +1 -1
  217. package/themes/flat-dark.min.js +1 -1
  218. package/themes/flat-light-panelless.js +1 -1
  219. package/themes/flat-light-panelless.min.js +1 -1
  220. package/themes/flat-light.js +1 -1
  221. package/themes/flat-light.min.js +1 -1
  222. package/themes/index.js +1 -1
  223. package/themes/index.min.js +1 -1
  224. package/themes/layered-dark-panelless.js +1 -1
  225. package/themes/layered-dark-panelless.min.js +1 -1
  226. package/themes/layered-dark.js +1 -1
  227. package/themes/layered-dark.min.js +1 -1
  228. package/themes/layered-light-panelless.js +1 -1
  229. package/themes/layered-light-panelless.min.js +1 -1
  230. package/themes/layered-light.js +1 -1
  231. package/themes/layered-light.min.js +1 -1
  232. package/themes/plain-dark-panelless.js +1 -1
  233. package/themes/plain-dark-panelless.min.js +1 -1
  234. package/themes/plain-dark.js +1 -1
  235. package/themes/plain-dark.min.js +1 -1
  236. package/themes/plain-light-panelless.js +1 -1
  237. package/themes/plain-light-panelless.min.js +1 -1
  238. package/themes/plain-light.js +1 -1
  239. package/themes/plain-light.min.js +1 -1
  240. package/themes/sharp-dark-panelless.js +1 -1
  241. package/themes/sharp-dark-panelless.min.js +1 -1
  242. package/themes/sharp-dark.js +1 -1
  243. package/themes/sharp-dark.min.js +1 -1
  244. package/themes/sharp-light-panelless.js +1 -1
  245. package/themes/sharp-light-panelless.min.js +1 -1
  246. package/themes/sharp-light.js +1 -1
  247. package/themes/sharp-light.min.js +1 -1
  248. package/themes/solid-dark-panelless.js +1 -1
  249. package/themes/solid-dark-panelless.min.js +1 -1
  250. package/themes/solid-dark.js +1 -1
  251. package/themes/solid-dark.min.js +1 -1
  252. package/themes/solid-light-panelless.js +1 -1
  253. package/themes/solid-light-panelless.min.js +1 -1
  254. package/themes/solid-light.js +1 -1
  255. package/themes/solid-light.min.js +1 -1
  256. package/themes/three-dimensional-dark-panelless.js +1 -1
  257. package/themes/three-dimensional-dark-panelless.min.js +1 -1
  258. package/themes/three-dimensional-dark.js +1 -1
  259. package/themes/three-dimensional-dark.min.js +1 -1
  260. package/themes/three-dimensional-light-panelless.js +1 -1
  261. package/themes/three-dimensional-light-panelless.min.js +1 -1
  262. package/themes/three-dimensional-light.js +1 -1
  263. package/themes/three-dimensional-light.min.js +1 -1
  264. package/ts3.4/typings/actions/action.d.ts +3 -3
  265. package/ts3.4/typings/base-interfaces.d.ts +1 -0
  266. package/ts3.4/typings/base.d.ts +3 -1
  267. package/ts3.4/typings/defaultCss/cssmodern.d.ts +6 -1
  268. package/ts3.4/typings/defaultCss/cssstandard.d.ts +6 -1
  269. package/ts3.4/typings/defaultCss/defaultV2Css.d.ts +8 -1
  270. package/ts3.4/typings/error.d.ts +6 -0
  271. package/ts3.4/typings/jsonobject.d.ts +4 -0
  272. package/ts3.4/typings/localizablestring.d.ts +1 -0
  273. package/ts3.4/typings/localization/english.d.ts +1 -0
  274. package/ts3.4/typings/martixBase.d.ts +6 -2
  275. package/ts3.4/typings/panel.d.ts +3 -3
  276. package/ts3.4/typings/popup-survey.d.ts +8 -2
  277. package/ts3.4/typings/question.d.ts +4 -3
  278. package/ts3.4/typings/question_baseselect.d.ts +4 -2
  279. package/ts3.4/typings/question_custom.d.ts +28 -1
  280. package/ts3.4/typings/question_matrix.d.ts +23 -2
  281. package/ts3.4/typings/question_matrixdropdownbase.d.ts +9 -8
  282. package/ts3.4/typings/question_matrixdropdowncolumn.d.ts +179 -0
  283. package/ts3.4/typings/question_paneldynamic.d.ts +7 -0
  284. package/ts3.4/typings/question_ranking.d.ts +1 -0
  285. package/ts3.4/typings/settings.d.ts +2 -2
  286. package/ts3.4/typings/survey-element.d.ts +2 -0
  287. package/ts3.4/typings/survey-error.d.ts +1 -1
  288. package/ts3.4/typings/survey-events-api.d.ts +3 -3
  289. package/ts3.4/typings/survey.d.ts +5 -0
  290. package/ts3.4/typings/surveyStrings.d.ts +1 -0
  291. package/ts3.4/typings/surveyToc.d.ts +0 -2
  292. package/ts3.4/typings/themes.d.ts +14 -0
  293. package/typings/actions/action.d.ts +3 -3
  294. package/typings/base-interfaces.d.ts +1 -0
  295. package/typings/base.d.ts +3 -1
  296. package/typings/defaultCss/cssmodern.d.ts +6 -1
  297. package/typings/defaultCss/cssstandard.d.ts +6 -1
  298. package/typings/defaultCss/defaultV2Css.d.ts +8 -1
  299. package/typings/error.d.ts +6 -0
  300. package/typings/jsonobject.d.ts +4 -0
  301. package/typings/localizablestring.d.ts +1 -0
  302. package/typings/localization/english.d.ts +1 -0
  303. package/typings/martixBase.d.ts +6 -2
  304. package/typings/panel.d.ts +3 -3
  305. package/typings/popup-survey.d.ts +8 -2
  306. package/typings/question.d.ts +4 -3
  307. package/typings/question_baseselect.d.ts +4 -2
  308. package/typings/question_custom.d.ts +28 -1
  309. package/typings/question_matrix.d.ts +25 -3
  310. package/typings/question_matrixdropdownbase.d.ts +9 -8
  311. package/typings/question_matrixdropdowncolumn.d.ts +179 -0
  312. package/typings/question_paneldynamic.d.ts +7 -0
  313. package/typings/question_ranking.d.ts +1 -0
  314. package/typings/settings.d.ts +2 -2
  315. package/typings/survey-element.d.ts +2 -0
  316. package/typings/survey-error.d.ts +1 -1
  317. package/typings/survey-events-api.d.ts +3 -3
  318. package/typings/survey.d.ts +6 -0
  319. package/typings/surveyStrings.d.ts +1 -0
  320. package/typings/surveyToc.d.ts +0 -2
  321. package/typings/themes.d.ts +14 -0
@@ -18,6 +18,11 @@ export interface IMatrixColumnOwner extends ILocalizableOwner {
18
18
  getCellAriaLabel(rowTitle: string, columnTitle: string): string;
19
19
  }
20
20
  export declare var matrixDropdownColumnTypes: any;
21
+ /**
22
+ * An auxiliary class that describes a column in a [Multi-Select Matrix](https://surveyjs.io/form-library/documentation/api-reference/matrix-table-with-dropdown-list) or [Dynamic Matrix](https://surveyjs.io/form-library/documentation/api-reference/dynamic-matrix-table-question-model).
23
+ *
24
+ * You can get an object of this class from the [`columns`](https://surveyjs.io/form-library/documentation/api-reference/matrix-table-with-dropdown-list#columns) array or by calling the [`getColumnByName()`](https://surveyjs.io/form-library/documentation/api-reference/matrix-table-with-dropdown-list#getColumnByName) method on a matrix instance.
25
+ */
21
26
  export declare class MatrixDropdownColumn extends Base implements ILocalizableOwner, IWrapperObject {
22
27
  static getColumnTypes(): Array<string>;
23
28
  private templateQuestionValue;
@@ -39,12 +44,39 @@ export declare class MatrixDropdownColumn extends Base implements ILocalizableOw
39
44
  get index(): number;
40
45
  setIndex(val: number): void;
41
46
  getType(): string;
47
+ /**
48
+ * Specifies the type of column cells.
49
+ *
50
+ * Possible values:
51
+ *
52
+ * - [`"dropdown"`](https://surveyjs.io/form-library/documentation/api-reference/dropdown-menu-model)
53
+ * - [`"checkbox"`](https://surveyjs.io/form-library/documentation/api-reference/checkbox-question-model)
54
+ * - [`"radiogroup"`](https://surveyjs.io/form-library/documentation/api-reference/radio-button-question-model)
55
+ * - [`"tagbox"`](https://surveyjs.io/form-library/documentation/api-reference/dropdown-tag-box-model)
56
+ * - [`"text"`](https://surveyjs.io/form-library/documentation/api-reference/text-entry-question-model)
57
+ * - [`"comment"`](https://surveyjs.io/form-library/documentation/api-reference/comment-field-model)
58
+ * - [`"boolean"`](https://surveyjs.io/form-library/documentation/api-reference/boolean-question-model)
59
+ * - [`"expression"`](https://surveyjs.io/form-library/documentation/api-reference/expression-model)
60
+ * - [`"rating"`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model)
61
+ * - `"default"` (default) - Inherits the input type from the [`cellType`](https://surveyjs.io/form-library/documentation/api-reference/matrix-table-with-dropdown-list#cellType) property specified for the parent matrix.
62
+ *
63
+ * The input types are based upon standalone question types. Depending on the selected input type, the matrix column can have additional configuration properties inherited from the corresponding question type. For instance, Dropdown, Checkboxes, Radio Button Group, and Tag Box columns can specify the [`choices`](https://surveyjs.io/form-library/documentation/api-reference/radio-button-question-model#choices) array, similar to the question types upon which they are based. Refer to the API Reference of these question types for a full list of available properties.
64
+ *
65
+ * [View Demo](https://surveyjs.io/form-library/examples/aggregate-data-within-form/ (linkStyle))
66
+ */
42
67
  get cellType(): string;
43
68
  set cellType(val: string);
44
69
  get templateQuestion(): Question;
45
70
  get value(): string;
46
71
  get isVisible(): boolean;
47
72
  get isColumnVisible(): boolean;
73
+ /**
74
+ * Gets or sets column visibility.
75
+ *
76
+ * If you want to display or hide a column based on a condition, specify the [`visibleIf`](#visibleIf) property.
77
+ * @see isRequired
78
+ * @see readOnly
79
+ */
48
80
  get visible(): boolean;
49
81
  set visible(val: boolean);
50
82
  get hasVisibleCell(): boolean;
@@ -53,52 +85,167 @@ export declare class MatrixDropdownColumn extends Base implements ILocalizableOw
53
85
  get getVisibleChoicesInCell(): Array<any>;
54
86
  setVisibleChoicesInCell(val: Array<any>): void;
55
87
  get isFilteredMultipleColumns(): boolean;
88
+ /**
89
+ * A column ID that is not visible to respondents.
90
+ *
91
+ * > Column IDs must be unique.
92
+ * @see title
93
+ */
56
94
  get name(): string;
57
95
  set name(val: string);
96
+ /**
97
+ * A user-friendly column caption to display. If `title` is undefined, [`name`](#name) is displayed instead.
98
+ */
58
99
  get title(): string;
59
100
  set title(val: string);
60
101
  get locTitle(): LocalizableString;
61
102
  get fullTitle(): string;
103
+ /**
104
+ * Marks the column as required. If a respondent skips any cell in a required column, the matrix displays a validation error.
105
+ *
106
+ * If you want to mark the column as required based on a condition, specify the [`requiredIf`](#requiredIf) property.
107
+ * @see requiredErrorText
108
+ * @see visible
109
+ * @see readOnly
110
+ */
62
111
  get isRequired(): boolean;
63
112
  set isRequired(val: boolean);
64
113
  get isRenderedRequired(): boolean;
65
114
  set isRenderedRequired(val: boolean);
66
115
  updateIsRenderedRequired(val: boolean): void;
67
116
  get requiredText(): string;
117
+ /**
118
+ * Specifies a custom error message for a required column.
119
+ * @see isRequired
120
+ */
68
121
  get requiredErrorText(): string;
69
122
  set requiredErrorText(val: string);
70
123
  get locRequiredErrorText(): LocalizableString;
124
+ /**
125
+ * Makes the column read-only.
126
+ *
127
+ * If you want to switch the column to the read-only state based on a condition, specify the [`enableIf`](#enableIf) property.
128
+ * @see visible
129
+ * @see isRequired
130
+ */
71
131
  get readOnly(): boolean;
72
132
  set readOnly(val: boolean);
73
133
  get hasOther(): boolean;
74
134
  set hasOther(val: boolean);
135
+ /**
136
+ * A Boolean expression. If it evaluates to `false`, this column becomes hidden.
137
+ *
138
+ * Refer to the following help topic for more information: [Conditional Visibility](https://surveyjs.io/form-library/documentation/design-survey-conditional-logic#conditional-visibility).
139
+ * @see visible
140
+ */
75
141
  get visibleIf(): string;
76
142
  set visibleIf(val: string);
143
+ /**
144
+ * A Boolean expression. If it evaluates to `false`, this column becomes read-only.
145
+ *
146
+ * Refer to the following help topic for more information: [Conditional Visibility](https://surveyjs.io/form-library/documentation/design-survey-conditional-logic#conditional-visibility).
147
+ * @see readOnly
148
+ */
77
149
  get enableIf(): string;
78
150
  set enableIf(val: string);
151
+ /**
152
+ * A Boolean expression. If it evaluates to `true`, this column becomes required.
153
+ *
154
+ * Refer to the following help topic for more information: [Conditional Visibility](https://surveyjs.io/form-library/documentation/design-survey-conditional-logic#conditional-visibility).
155
+ * @see isRequired
156
+ */
79
157
  get requiredIf(): string;
80
158
  set requiredIf(val: string);
159
+ /**
160
+ * A Boolean expression. If it evaluates to `true`, all cells in this column are set to a value calculated using the [`defaultValueExpression`](#defaultValueExpression).
161
+ *
162
+ * [Expressions](https://surveyjs.io/form-library/documentation/design-survey/conditional-logic#expressions (linkStyle))
163
+ * @see setValueIf
164
+ */
81
165
  get resetValueIf(): string;
82
166
  set resetValueIf(val: string);
167
+ /**
168
+ * An expression used to calculate the column's default value. This expression applies to all cells of this column until the cell value is specified by an end user or programmatically.
169
+ *
170
+ * [Expressions](https://surveyjs.io/form-library/documentation/design-survey/conditional-logic#expressions (linkStyle))
171
+ * @see setValueExpression
172
+ */
83
173
  get defaultValueExpression(): string;
84
174
  set defaultValueExpression(val: string);
175
+ /**
176
+ * A Boolean expression. If it evaluates to `true`, all cells in this column are set to a value calculated using the [`setValueExpression`](#setValueExpression).
177
+ *
178
+ * [Expressions](https://surveyjs.io/form-library/documentation/design-survey/conditional-logic#expressions (linkStyle))
179
+ * @see resetValueIf
180
+ */
85
181
  get setValueIf(): string;
86
182
  set setValueIf(val: string);
183
+ /**
184
+ * An expression used to calculate a value for all column cells.
185
+ *
186
+ * You can use `setValueExpression` as a standalone property or in conjunction with the [`setValueIf`](#setValueIf) expression, in which case the calculated cell value applies only when `setValueIf` evaluates to `true`.
187
+ *
188
+ * [Expressions](https://surveyjs.io/form-library/documentation/design-survey/conditional-logic#expressions (linkStyle))
189
+ * @see defaultValueExpression
190
+ * @see resetValueIf
191
+ */
87
192
  get setValueExpession(): string;
88
193
  set setValueExpession(val: string);
194
+ /**
195
+ * Specifies whether a respondent is required to provide a unique response for each question within this column.
196
+ *
197
+ * Default value: `false`
198
+ */
89
199
  get isUnique(): boolean;
90
200
  set isUnique(val: boolean);
201
+ /**
202
+ * Specifies whether to create an individual column for each choice option. Applies only to columns of `"checkbox"` or `"radiogroup"` [`cellType`](#cellType).
203
+ */
91
204
  get showInMultipleColumns(): boolean;
92
205
  set showInMultipleColumns(val: boolean);
93
206
  get isSupportMultipleColumns(): boolean;
94
207
  get isShowInMultipleColumns(): boolean;
208
+ /**
209
+ * Column validators.
210
+ *
211
+ * [Data Validation](https://surveyjs.io/form-library/documentation/data-validation (linkStyle))
212
+ * @see isRequired
213
+ */
95
214
  get validators(): Array<SurveyValidator>;
96
215
  set validators(val: Array<SurveyValidator>);
216
+ /**
217
+ * An aggregation method used to calculate the column total.
218
+ *
219
+ * Possible values:
220
+ *
221
+ * - `"none"` (default) - Disables total calculations.
222
+ * - `"sum"`
223
+ * - `"count"`
224
+ * - `"min"`
225
+ * - `"max"`
226
+ * - `"avg"`
227
+ *
228
+ * [View Demo](https://surveyjs.io/form-library/examples/aggregate-data-within-form/ (linkStyle))
229
+ * @see totalFormat
230
+ * @see totalDisplayStyle
231
+ */
97
232
  get totalType(): string;
98
233
  set totalType(val: string);
234
+ /**
235
+ * An expression used to calculate total values. Overrides the [`totalType`](#totalType) property.
236
+ *
237
+ * [Expressions](https://surveyjs.io/form-library/documentation/design-survey/conditional-logic#expressions (linkStyle))
238
+ */
99
239
  get totalExpression(): string;
100
240
  set totalExpression(val: string);
101
241
  get hasTotal(): boolean;
242
+ /**
243
+ * A string pattern used to display column totals. To reference a total value within this pattern, use the `{0}` placeholder.
244
+ *
245
+ * [View Demo](https://surveyjs.io/form-library/examples/aggregate-data-within-form/ (linkStyle))
246
+ * @see totalType
247
+ * @see totalDisplayStyle
248
+ */
102
249
  get totalFormat(): string;
103
250
  set totalFormat(val: string);
104
251
  get locTotalFormat(): LocalizableString;
@@ -111,14 +258,46 @@ export declare class MatrixDropdownColumn extends Base implements ILocalizableOw
111
258
  set totalMaximumFractionDigits(val: number);
112
259
  get totalMinimumFractionDigits(): number;
113
260
  set totalMinimumFractionDigits(val: number);
261
+ /**
262
+ * A format for calculated total values.
263
+ *
264
+ * Possible values:
265
+ *
266
+ * - `"none"` (default)
267
+ * - `"decimal"`
268
+ * - `"currency"`
269
+ * - `"percent"`
270
+ *
271
+ * [View Demo](https://surveyjs.io/form-library/examples/aggregate-data-within-form/ (linkStyle))
272
+ * @see totalType
273
+ * @see totalFormat
274
+ * @see totalCurrency
275
+ */
114
276
  get totalDisplayStyle(): string;
115
277
  set totalDisplayStyle(val: string);
278
+ /**
279
+ * Specifies a currency used to display calculated total values. Applies only if [`totalDisplayStyle`](#totalDisplayStyle) is set to `"currency"`.
280
+ * @see totalType
281
+ */
116
282
  get totalCurrency(): string;
117
283
  set totalCurrency(val: string);
284
+ /**
285
+ * Gets or sets minimum column width in CSS values. By default, the matrix calculates column widths to optimally fit the content of all columns.
286
+ * @see width
287
+ */
118
288
  get minWidth(): string;
119
289
  set minWidth(val: string);
290
+ /**
291
+ * Gets or sets column width in CSS values. By default, the matrix calculates column widths to optimally fit the content of all columns.
292
+ * @see minWidth
293
+ */
120
294
  get width(): string;
121
295
  set width(val: string);
296
+ /**
297
+ * Gets or sets the number of columns used to arrange choice options. Applies only to columns of `"checkbox"` or `"radiogroup"` [`cellType`](#cellType).
298
+ *
299
+ * Default value: -1 (inherits the actual value from the parent matrix's [`columnColCount`](https://surveyjs.io/form-library/documentation/api-reference/matrix-table-with-dropdown-list#columnColCount) property)
300
+ */
122
301
  get colCount(): number;
123
302
  set colCount(val: number);
124
303
  getLocale(): string;
@@ -164,6 +164,8 @@ export declare class QuestionPanelDynamicModel extends Question implements IQues
164
164
  * @see templateVisibleIf
165
165
  */
166
166
  get visiblePanels(): Array<PanelModel>;
167
+ protected get panelsCore(): Array<PanelModel>;
168
+ protected get visiblePanelsCore(): Array<PanelModel>;
167
169
  private onPanelAdded;
168
170
  private onPanelRemoved;
169
171
  private onPanelRemovedCore;
@@ -549,6 +551,11 @@ export declare class QuestionPanelDynamicModel extends Question implements IQues
549
551
  protected onReadOnlyChanged(): void;
550
552
  private updateNoEntriesTextDefaultLoc;
551
553
  onSurveyLoad(): void;
554
+ private hasPanelBuildFirstTime;
555
+ private isBuildingPanelsFirstTime;
556
+ private buildPanelsFirstTime;
557
+ private get wasNotRenderedInSurvey();
558
+ private get canBuildPanels();
552
559
  onFirstRendering(): void;
553
560
  localeChanged(): void;
554
561
  runCondition(values: HashTable<any>, properties: HashTable<any>): void;
@@ -13,6 +13,7 @@ export declare class QuestionRankingModel extends QuestionCheckboxModel {
13
13
  protected getDefaultItemComponent(): string;
14
14
  getType(): string;
15
15
  getItemTabIndex(item: ItemValue): number;
16
+ protected supportContainerQueries(): boolean;
16
17
  get rootClass(): string;
17
18
  protected getItemClassCore(item: ItemValue, options: any): string;
18
19
  getContainerClasses(containerType?: string): string;
@@ -142,12 +142,12 @@ export declare var settings: {
142
142
  * import { ItemValue, settings } from "survey-core";
143
143
  *
144
144
  * // `itemValueSerializeAsObject` example
145
- * settings.localization.itemValueSerializeAsObject = true;
145
+ * settings.serialization.itemValueSerializeAsObject = true;
146
146
  * const item = new ItemValue(5);
147
147
  * const itemString = item.toJSON(); // Produces { value: 5 } instead of 5
148
148
  *
149
149
  * // `itemValueSerializeDisplayText` example
150
- * settings.localization.itemValueSerializeDisplayText = true;
150
+ * settings.serialization.itemValueSerializeDisplayText = true;
151
151
  * const item = new ItemValue("item1");
152
152
  * const itemString = item.toJSON(); // Produces { value: "item1", text: "item1" } instead of "item1"
153
153
  * ```
@@ -271,6 +271,8 @@ export declare class SurveyElement<E = any> extends SurveyElementCore implements
271
271
  set selectedElementInDesign(val: SurveyElement);
272
272
  updateCustomWidgets(): void;
273
273
  onSurveyLoad(): void;
274
+ private wasRenderedValue;
275
+ get wasRendered(): boolean;
274
276
  onFirstRendering(): void;
275
277
  endLoadingFromJson(): void;
276
278
  setVisibleIndex(index: number): number;
@@ -6,7 +6,7 @@ export declare class SurveyError {
6
6
  private locTextValue;
7
7
  visible: boolean;
8
8
  constructor(text?: string, errorOwner?: ISurveyErrorOwner);
9
- equalsTo(error: SurveyError): boolean;
9
+ equals(error: SurveyError): boolean;
10
10
  get locText(): LocalizableString;
11
11
  getText(): string;
12
12
  getErrorType(): string;
@@ -694,7 +694,7 @@ export interface MatrixAllowRemoveRowEvent extends MatrixDynamicQuestionEventMix
694
694
  }
695
695
  export interface MatrixCellCreatingBaseEvent extends MatrixDropdownQuestionEventMixin {
696
696
  /**
697
- * A matrix column to which the cell belongs.
697
+ * A [matrix column](https://surveyjs.io/form-library/documentation/api-reference/multi-select-matrix-column-values) to which the cell belongs.
698
698
  */
699
699
  column: MatrixDropdownColumn;
700
700
  /**
@@ -741,7 +741,7 @@ export interface MatrixAfterCellRenderEvent extends QuestionEventMixin, AfterRen
741
741
  */
742
742
  row: MatrixDropdownRowModelBase;
743
743
  /**
744
- * A matrix column to which the cell belongs.
744
+ * A [matrix column](https://surveyjs.io/form-library/documentation/api-reference/multi-select-matrix-column-values) to which the cell belongs.
745
745
  */
746
746
  column: MatrixDropdownColumn | MatrixDropdownCell;
747
747
  }
@@ -751,7 +751,7 @@ export interface MatrixCellValueBaseEvent extends MatrixDropdownQuestionEventMix
751
751
  */
752
752
  row: MatrixDropdownRowModelBase;
753
753
  /**
754
- * A matrix column to which the cell belongs.
754
+ * A [matrix column](https://surveyjs.io/form-library/documentation/api-reference/multi-select-matrix-column-values) to which the cell belongs.
755
755
  */
756
756
  column: MatrixDropdownColumn;
757
757
  /**
@@ -781,6 +781,9 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
781
781
  get lazyRendering(): boolean;
782
782
  set lazyRendering(val: boolean);
783
783
  get isLazyRendering(): boolean;
784
+ lazyRenderingFirstBatchSizeValue: number;
785
+ get lazyRenderingFirstBatchSize(): number;
786
+ set lazyRenderingFirstBatchSize(val: number);
784
787
  private updateLazyRenderingRowsOnRemovingElements;
785
788
  /**
786
789
  * A list of triggers in the survey.
@@ -1620,6 +1623,7 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
1620
1623
  */
1621
1624
  get currentPage(): any;
1622
1625
  set currentPage(value: any);
1626
+ tryNavigateToPage(page: PageModel): boolean;
1623
1627
  private updateCurrentPage;
1624
1628
  private get isCurrentPageAvailable();
1625
1629
  private isPageExistsInSurvey;
@@ -2398,6 +2402,7 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
2398
2402
  private getProcessedValuesWithoutQuestion;
2399
2403
  private getFirstName;
2400
2404
  private reduceFirstName;
2405
+ private isClearingUnsedValues;
2401
2406
  private clearUnusedValues;
2402
2407
  hasVisibleQuestionByValueName(valueName: string): boolean;
2403
2408
  questionsByValueName(valueName: string): Array<IQuestion>;
@@ -2742,6 +2747,7 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
2742
2747
  * @returns The configuration of the previous layout element with the same `id`.
2743
2748
  */
2744
2749
  addLayoutElement(layoutElement: ISurveyLayoutElement): ISurveyLayoutElement;
2750
+ findLayoutElement(layoutElementId: string): ISurveyLayoutElement;
2745
2751
  removeLayoutElement(layoutElementId: string): ISurveyLayoutElement;
2746
2752
  getContainerContent(container: LayoutElementContainer): any[];
2747
2753
  processPopupVisiblityChanged(question: Question, popup: PopupModel<any>, visible: boolean): void;
@@ -40,6 +40,7 @@ export declare var surveyStrings: {
40
40
  requiredError: string;
41
41
  requiredErrorInPanel: string;
42
42
  requiredInAllRowsError: string;
43
+ eachRowUniqueError: string;
43
44
  numericError: string;
44
45
  minError: string;
45
46
  maxError: string;
@@ -1,10 +1,8 @@
1
1
  import { Action } from "./actions/action";
2
2
  import { ListModel } from "./list";
3
- import { PageModel } from "./page";
4
3
  import { PanelModelBase } from "./panel";
5
4
  import { PopupModel } from "./popup";
6
5
  import { SurveyModel } from "./survey";
7
- export declare function tryNavigateToPage(survey: SurveyModel, page: PageModel): boolean;
8
6
  export declare function tryFocusPage(survey: SurveyModel, panel: PanelModelBase): boolean;
9
7
  export declare function createTOCListModel(survey: SurveyModel, onAction?: () => void): ListModel<Action>;
10
8
  export declare function getTocRootCss(survey: SurveyModel, isMobile?: boolean): string;
@@ -59,6 +59,20 @@ export interface ITheme {
59
59
  * An object with [advanced survey header settings](https://surveyjs.io/form-library/documentation/api-reference/iheader). Applies when `SurveyModel`'s [`headerView`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#headerView) property is set to `"advanced"`.
60
60
  */
61
61
  header?: IHeader;
62
+ /**
63
+ * Specifies whether the survey header uses only basic appearance settings or applies advanced settings from the survey theme.
64
+ *
65
+ * Possible values:
66
+ *
67
+ * - `"basic"` (default)\
68
+ * A basic header view applies only the [`title`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#title), [`description`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#description), and logo-related properties ([`logo`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#logo), [`logoPosition`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#logoPosition), etc.).
69
+ *
70
+ * - `"advanced"`\
71
+ * An advanced header view applies the same properties as the basic view, plus [header settings](https://surveyjs.io/form-library/documentation/api-reference/iheader) from the [survey theme](https://surveyjs.io/form-library/documentation/api-reference/itheme#header). The advanced view features a more flexible header layout, a capability to specify a background image, and other settings that give a more professional look to the survey header.
72
+ *
73
+ * [View Demo](https://surveyjs.io/form-library/examples/brand-your-survey-header/ (linkStyle))
74
+ */
75
+ headerView?: "advanced" | "basic";
62
76
  /**
63
77
  * An object with CSS variables.
64
78
  */