survey-core 1.9.125 → 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 (239) hide show
  1. package/defaultV2.css +135 -54
  2. package/defaultV2.css.map +1 -1
  3. package/defaultV2.fontless.css +135 -54
  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/polish.js +1 -1
  72. package/i18n/polish.min.js +1 -1
  73. package/i18n/portuguese-br.js +1 -1
  74. package/i18n/portuguese-br.min.js +1 -1
  75. package/i18n/portuguese.js +1 -1
  76. package/i18n/portuguese.min.js +1 -1
  77. package/i18n/romanian.js +1 -1
  78. package/i18n/romanian.min.js +1 -1
  79. package/i18n/russian.js +1 -1
  80. package/i18n/russian.min.js +1 -1
  81. package/i18n/serbian.js +1 -1
  82. package/i18n/serbian.min.js +1 -1
  83. package/i18n/simplified-chinese.js +1 -1
  84. package/i18n/simplified-chinese.min.js +1 -1
  85. package/i18n/slovak.js +1 -1
  86. package/i18n/slovak.min.js +1 -1
  87. package/i18n/spanish.js +1 -1
  88. package/i18n/spanish.min.js +1 -1
  89. package/i18n/swahili.js +1 -1
  90. package/i18n/swahili.min.js +1 -1
  91. package/i18n/swedish.js +1 -1
  92. package/i18n/swedish.min.js +1 -1
  93. package/i18n/tajik.js +1 -1
  94. package/i18n/tajik.min.js +1 -1
  95. package/i18n/telugu.js +1 -1
  96. package/i18n/telugu.min.js +1 -1
  97. package/i18n/thai.js +1 -1
  98. package/i18n/thai.min.js +1 -1
  99. package/i18n/traditional-chinese.js +1 -1
  100. package/i18n/traditional-chinese.min.js +1 -1
  101. package/i18n/turkish.js +1 -1
  102. package/i18n/turkish.min.js +1 -1
  103. package/i18n/ukrainian.js +1 -1
  104. package/i18n/ukrainian.min.js +1 -1
  105. package/i18n/urdu.js +1 -1
  106. package/i18n/urdu.min.js +1 -1
  107. package/i18n/vietnamese.js +1 -1
  108. package/i18n/vietnamese.min.js +1 -1
  109. package/i18n/welsh.js +1 -1
  110. package/i18n/welsh.min.js +1 -1
  111. package/modern.css +70 -48
  112. package/modern.css.map +1 -1
  113. package/modern.fontless.css +70 -48
  114. package/modern.fontless.css.map +1 -1
  115. package/modern.fontless.min.css +2 -2
  116. package/modern.min.css +2 -2
  117. package/package.json +1 -1
  118. package/plugins/bootstrap-integration.js +1 -1
  119. package/plugins/bootstrap-integration.min.js +1 -1
  120. package/plugins/bootstrap-material-integration.js +1 -1
  121. package/plugins/bootstrap-material-integration.min.js +1 -1
  122. package/survey.core.js +365 -142
  123. package/survey.core.js.map +1 -1
  124. package/survey.core.min.js +3 -3
  125. package/survey.css +70 -48
  126. package/survey.css.map +1 -1
  127. package/survey.i18n.js +1 -1
  128. package/survey.i18n.min.js +1 -1
  129. package/survey.min.css +2 -2
  130. package/themes/borderless-dark-panelless.js +1 -1
  131. package/themes/borderless-dark-panelless.min.js +1 -1
  132. package/themes/borderless-dark.js +1 -1
  133. package/themes/borderless-dark.min.js +1 -1
  134. package/themes/borderless-light-panelless..js +1 -1
  135. package/themes/borderless-light-panelless..min.js +1 -1
  136. package/themes/borderless-light.js +1 -1
  137. package/themes/borderless-light.min.js +1 -1
  138. package/themes/contrast-dark-panelless.js +1 -1
  139. package/themes/contrast-dark-panelless.min.js +1 -1
  140. package/themes/contrast-dark.js +1 -1
  141. package/themes/contrast-dark.min.js +1 -1
  142. package/themes/contrast-light-panelless.js +1 -1
  143. package/themes/contrast-light-panelless.min.js +1 -1
  144. package/themes/contrast-light.js +1 -1
  145. package/themes/contrast-light.min.js +1 -1
  146. package/themes/default-dark-panelless.js +1 -1
  147. package/themes/default-dark-panelless.min.js +1 -1
  148. package/themes/default-dark.js +1 -1
  149. package/themes/default-dark.min.js +1 -1
  150. package/themes/default-light-panelless.js +1 -1
  151. package/themes/default-light-panelless.min.js +1 -1
  152. package/themes/default-light.js +1 -1
  153. package/themes/default-light.min.js +1 -1
  154. package/themes/doubleborder-dark-panelless.js +1 -1
  155. package/themes/doubleborder-dark-panelless.min.js +1 -1
  156. package/themes/doubleborder-dark.js +1 -1
  157. package/themes/doubleborder-dark.min.js +1 -1
  158. package/themes/doubleborder-light-panelles.js +1 -1
  159. package/themes/doubleborder-light-panelles.min.js +1 -1
  160. package/themes/doubleborder-light.js +1 -1
  161. package/themes/doubleborder-light.min.js +1 -1
  162. package/themes/flat-dark-panelless.js +1 -1
  163. package/themes/flat-dark-panelless.min.js +1 -1
  164. package/themes/flat-dark.js +1 -1
  165. package/themes/flat-dark.min.js +1 -1
  166. package/themes/flat-light-panelless.js +1 -1
  167. package/themes/flat-light-panelless.min.js +1 -1
  168. package/themes/flat-light.js +1 -1
  169. package/themes/flat-light.min.js +1 -1
  170. package/themes/index.js +1 -1
  171. package/themes/index.min.js +1 -1
  172. package/themes/layered-dark-panelless.js +1 -1
  173. package/themes/layered-dark-panelless.min.js +1 -1
  174. package/themes/layered-dark.js +1 -1
  175. package/themes/layered-dark.min.js +1 -1
  176. package/themes/layered-light-panelless.js +1 -1
  177. package/themes/layered-light-panelless.min.js +1 -1
  178. package/themes/layered-light.js +1 -1
  179. package/themes/layered-light.min.js +1 -1
  180. package/themes/plain-dark-panelless.js +1 -1
  181. package/themes/plain-dark-panelless.min.js +1 -1
  182. package/themes/plain-dark.js +1 -1
  183. package/themes/plain-dark.min.js +1 -1
  184. package/themes/plain-light-panelless.js +1 -1
  185. package/themes/plain-light-panelless.min.js +1 -1
  186. package/themes/plain-light.js +1 -1
  187. package/themes/plain-light.min.js +1 -1
  188. package/themes/sharp-dark-panelless.js +1 -1
  189. package/themes/sharp-dark-panelless.min.js +1 -1
  190. package/themes/sharp-dark.js +1 -1
  191. package/themes/sharp-dark.min.js +1 -1
  192. package/themes/sharp-light-panelless.js +1 -1
  193. package/themes/sharp-light-panelless.min.js +1 -1
  194. package/themes/sharp-light.js +1 -1
  195. package/themes/sharp-light.min.js +1 -1
  196. package/themes/solid-dark-panelless.js +1 -1
  197. package/themes/solid-dark-panelless.min.js +1 -1
  198. package/themes/solid-dark.js +1 -1
  199. package/themes/solid-dark.min.js +1 -1
  200. package/themes/solid-light-panelless.js +1 -1
  201. package/themes/solid-light-panelless.min.js +1 -1
  202. package/themes/solid-light.js +1 -1
  203. package/themes/solid-light.min.js +1 -1
  204. package/themes/three-dimensional-dark-panelless.js +1 -1
  205. package/themes/three-dimensional-dark-panelless.min.js +1 -1
  206. package/themes/three-dimensional-dark.js +1 -1
  207. package/themes/three-dimensional-dark.min.js +1 -1
  208. package/themes/three-dimensional-light-panelless.js +1 -1
  209. package/themes/three-dimensional-light-panelless.min.js +1 -1
  210. package/themes/three-dimensional-light.js +1 -1
  211. package/themes/three-dimensional-light.min.js +1 -1
  212. package/ts3.4/typings/base.d.ts +2 -0
  213. package/ts3.4/typings/defaultCss/cssmodern.d.ts +6 -1
  214. package/ts3.4/typings/defaultCss/cssstandard.d.ts +6 -1
  215. package/ts3.4/typings/defaultCss/defaultV2Css.d.ts +8 -1
  216. package/ts3.4/typings/popup-survey.d.ts +8 -2
  217. package/ts3.4/typings/question.d.ts +1 -0
  218. package/ts3.4/typings/question_baseselect.d.ts +2 -0
  219. package/ts3.4/typings/question_matrix.d.ts +8 -1
  220. package/ts3.4/typings/question_paneldynamic.d.ts +7 -0
  221. package/ts3.4/typings/question_ranking.d.ts +1 -0
  222. package/ts3.4/typings/survey-element.d.ts +2 -0
  223. package/ts3.4/typings/survey-error.d.ts +1 -1
  224. package/ts3.4/typings/survey.d.ts +2 -0
  225. package/ts3.4/typings/themes.d.ts +14 -0
  226. package/typings/base.d.ts +2 -0
  227. package/typings/defaultCss/cssmodern.d.ts +6 -1
  228. package/typings/defaultCss/cssstandard.d.ts +6 -1
  229. package/typings/defaultCss/defaultV2Css.d.ts +8 -1
  230. package/typings/popup-survey.d.ts +8 -2
  231. package/typings/question.d.ts +1 -0
  232. package/typings/question_baseselect.d.ts +2 -0
  233. package/typings/question_matrix.d.ts +8 -1
  234. package/typings/question_paneldynamic.d.ts +7 -0
  235. package/typings/question_ranking.d.ts +1 -0
  236. package/typings/survey-element.d.ts +2 -0
  237. package/typings/survey-error.d.ts +1 -1
  238. package/typings/survey.d.ts +2 -0
  239. package/typings/themes.d.ts +14 -0
package/survey.core.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * surveyjs - Survey JavaScript library v1.9.125
2
+ * surveyjs - Survey JavaScript library v1.9.126
3
3
  * Copyright (c) 2015-2024 Devsoft Baltic OÜ - http://surveyjs.io/
4
4
  * License: MIT (http://www.opensource.org/licenses/mit-license.php)
5
5
  */
@@ -1900,6 +1900,20 @@ var Base = /** @class */ (function () {
1900
1900
  }
1901
1901
  return _helpers__WEBPACK_IMPORTED_MODULE_1__["Helpers"].isValueEmpty(value);
1902
1902
  };
1903
+ Base.prototype.equals = function (obj) {
1904
+ if (!obj)
1905
+ return false;
1906
+ if (this.isDisposed || obj.isDisposed)
1907
+ return false;
1908
+ if (this.getType() != obj.getType())
1909
+ return false;
1910
+ return this.equalsCore(obj);
1911
+ };
1912
+ Base.prototype.equalsCore = function (obj) {
1913
+ if (this.name !== obj.name)
1914
+ return false;
1915
+ return _helpers__WEBPACK_IMPORTED_MODULE_1__["Helpers"].isTwoValueEquals(this.toJSON(), obj.toJSON(), false, true, false);
1916
+ };
1903
1917
  Base.prototype.trimValue = function (value) {
1904
1918
  if (!!value && (typeof value === "string" || value instanceof String))
1905
1919
  return value.trim();
@@ -4875,14 +4889,19 @@ var modernCss = {
4875
4889
  },
4876
4890
  window: {
4877
4891
  root: "sv_window",
4892
+ rootCollapsedMod: "sv_window--collapsed",
4893
+ rootContent: "sv_window_root-content",
4878
4894
  body: "sv_window_content",
4879
4895
  header: {
4880
- root: "sv_window_title",
4881
- title: "",
4882
- button: "",
4896
+ root: "sv_window_header",
4897
+ titleCollapsed: "sv_window_header_title_collapsed",
4898
+ buttonsContainer: "sv_window_buttons_container",
4899
+ button: "sv_window_button",
4883
4900
  buttonExpanded: "",
4884
4901
  buttonCollapsed: "",
4885
- },
4902
+ collapseButton: "sv_window_button sv_window_button_collapse",
4903
+ closeButton: "sv_window_button sv_window_button_close"
4904
+ }
4886
4905
  },
4887
4906
  variables: {
4888
4907
  mobileWidth: "--sv-mobile-width",
@@ -5268,14 +5287,19 @@ var defaultStandardCss = {
5268
5287
  },
5269
5288
  window: {
5270
5289
  root: "sv_window",
5290
+ rootCollapsedMod: "sv_window--collapsed",
5291
+ rootContent: "sv_window_root-content",
5271
5292
  body: "sv_window_content",
5272
5293
  header: {
5273
- root: "sv_window_title",
5274
- title: "",
5275
- button: "",
5294
+ root: "sv_window_header",
5295
+ titleCollapsed: "sv_window_header_title_collapsed",
5296
+ buttonsContainer: "sv_window_buttons_container",
5297
+ button: "sv_window_button",
5276
5298
  buttonExpanded: "",
5277
5299
  buttonCollapsed: "",
5278
- },
5300
+ collapseButton: "sv_window_button sv_window_button_collapse",
5301
+ closeButton: "sv_window_button sv_window_button_close"
5302
+ }
5279
5303
  },
5280
5304
  variables: {
5281
5305
  mobileWidth: "--sv-mobile-width",
@@ -5496,6 +5520,7 @@ var defaultV2Css = {
5496
5520
  headerTop: "sd-question__header--location-top sd-element__header--location-top",
5497
5521
  headerBottom: "sd-question__header--location--bottom",
5498
5522
  content: "sd-question__content",
5523
+ contentSupportContainerQueries: "sd-question__content--support-container-queries",
5499
5524
  contentLeft: "sd-question__content--left",
5500
5525
  titleNumInline: "sd-element__title--num-inline",
5501
5526
  titleLeftRoot: "sd-question--left",
@@ -5737,6 +5762,7 @@ var defaultV2Css = {
5737
5762
  rowError: "sd-matrix__row--error",
5738
5763
  cell: "sd-table__cell sd-matrix__cell",
5739
5764
  row: "sd-table__row",
5765
+ rowDisabled: "sd-table__row-disabled",
5740
5766
  headerCell: "sd-table__cell sd-table__cell--header",
5741
5767
  rowTextCell: "sd-table__cell sd-matrix__cell sd-table__cell--row-text",
5742
5768
  label: "sd-item sd-radio sd-matrix__label",
@@ -5975,13 +6001,18 @@ var defaultV2Css = {
5975
6001
  },
5976
6002
  window: {
5977
6003
  root: "sv_window",
6004
+ rootCollapsedMod: "sv_window--collapsed",
6005
+ rootContent: "sv_window_root-content",
5978
6006
  body: "sv_window_content",
5979
6007
  header: {
5980
- root: "sv_window_title",
5981
- title: "",
6008
+ root: "sv_window_header",
6009
+ titleCollapsed: "sv_window_header_title_collapsed",
6010
+ buttonsContainer: "sv_window_buttons_container",
5982
6011
  button: "sv_window_button",
5983
6012
  buttonExpanded: "",
5984
- buttonCollapsed: ""
6013
+ buttonCollapsed: "",
6014
+ collapseButton: "sv_window_button sv_window_button_collapse",
6015
+ closeButton: "sv_window_button sv_window_button_close"
5985
6016
  }
5986
6017
  },
5987
6018
  ranking: {
@@ -9337,8 +9368,8 @@ __webpack_require__.r(__webpack_exports__);
9337
9368
  //import "../../modern.scss";
9338
9369
  var Version;
9339
9370
  var ReleaseDate;
9340
- Version = "" + "1.9.125";
9341
- ReleaseDate = "" + "2024-01-11";
9371
+ Version = "" + "1.9.126";
9372
+ ReleaseDate = "" + "2024-01-16";
9342
9373
  function checkLibraryVersion(ver, libraryName) {
9343
9374
  if (Version != ver) {
9344
9375
  var str = "survey-core has version '" + Version + "' and " + libraryName
@@ -15789,21 +15820,11 @@ var Helpers = /** @class */ (function () {
15789
15820
  return x == y;
15790
15821
  if (!Helpers.isValueObject(x) || !Helpers.isValueObject(y))
15791
15822
  return false;
15792
- if (x["equals"])
15823
+ if (x["equals"] && y["equals"])
15793
15824
  return x.equals(y);
15794
- if (!!x.toJSON && !!y.toJSON && !!x.getType && !!y.getType) {
15795
- if (x.isDisposed || y.isDisposed)
15796
- return false;
15797
- if (x.getType() !== y.getType())
15798
- return false;
15799
- if (!!x.name && x.name !== y.name)
15800
- return false;
15801
- return this.isTwoValueEquals(x.toJSON(), y.toJSON(), ignoreOrder, caseSensitive, trimStrings);
15802
- }
15803
- if (Array.isArray(x) && Array.isArray(y))
15825
+ if (Array.isArray(x) && Array.isArray(y)) {
15804
15826
  return Helpers.isArraysEqual(x, y, ignoreOrder, caseSensitive, trimStrings);
15805
- if (!!x.equalsTo && y.equalsTo)
15806
- return x.equalsTo(y);
15827
+ }
15807
15828
  for (var p in x) {
15808
15829
  if (!x.hasOwnProperty(p))
15809
15830
  continue;
@@ -16135,10 +16156,12 @@ var map = {
16135
16156
  "./V2DragElement_16x16.svg": "./src/images/V2DragElement_16x16.svg",
16136
16157
  "./chevron.svg": "./src/images/chevron.svg",
16137
16158
  "./clear_16x16.svg": "./src/images/clear_16x16.svg",
16159
+ "./close_16x16.svg": "./src/images/close_16x16.svg",
16138
16160
  "./collapseDetail.svg": "./src/images/collapseDetail.svg",
16139
16161
  "./drag-n-drop.svg": "./src/images/drag-n-drop.svg",
16140
16162
  "./expandDetail.svg": "./src/images/expandDetail.svg",
16141
16163
  "./loading.svg": "./src/images/loading.svg",
16164
+ "./minimize_16x16.svg": "./src/images/minimize_16x16.svg",
16142
16165
  "./no-image.svg": "./src/images/no-image.svg",
16143
16166
  "./ranking-arrows.svg": "./src/images/ranking-arrows.svg",
16144
16167
  "./ranking-dash.svg": "./src/images/ranking-dash.svg",
@@ -16146,6 +16169,7 @@ var map = {
16146
16169
  "./rating-star-small-2.svg": "./src/images/rating-star-small-2.svg",
16147
16170
  "./rating-star-small.svg": "./src/images/rating-star-small.svg",
16148
16171
  "./rating-star.svg": "./src/images/rating-star.svg",
16172
+ "./restore_16x16.svg": "./src/images/restore_16x16.svg",
16149
16173
  "./search.svg": "./src/images/search.svg"
16150
16174
  };
16151
16175
 
@@ -16534,6 +16558,17 @@ module.exports = "<svg viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\
16534
16558
 
16535
16559
  /***/ }),
16536
16560
 
16561
+ /***/ "./src/images/close_16x16.svg":
16562
+ /*!************************************!*\
16563
+ !*** ./src/images/close_16x16.svg ***!
16564
+ \************************************/
16565
+ /*! no static exports found */
16566
+ /***/ (function(module, exports) {
16567
+
16568
+ module.exports = "<svg viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M9.43 8.0025L13.7 3.7225C14.09 3.3325 14.09 2.6925 13.7 2.2925C13.31 1.9025 12.67 1.9025 12.27 2.2925L7.99 6.5725L3.72 2.3025C3.33 1.9025 2.69 1.9025 2.3 2.3025C1.9 2.6925 1.9 3.3325 2.3 3.7225L6.58 8.0025L2.3 12.2825C1.91 12.6725 1.91 13.3125 2.3 13.7125C2.69 14.1025 3.33 14.1025 3.73 13.7125L8.01 9.4325L12.29 13.7125C12.68 14.1025 13.32 14.1025 13.72 13.7125C14.11 13.3225 14.11 12.6825 13.72 12.2825L9.44 8.0025H9.43Z\"></path></svg>"
16569
+
16570
+ /***/ }),
16571
+
16537
16572
  /***/ "./src/images/collapseDetail.svg":
16538
16573
  /*!***************************************!*\
16539
16574
  !*** ./src/images/collapseDetail.svg ***!
@@ -16578,6 +16613,17 @@ module.exports = "<svg viewBox=\"0 0 48 48\" fill=\"none\" xmlns=\"http://www.w3
16578
16613
 
16579
16614
  /***/ }),
16580
16615
 
16616
+ /***/ "./src/images/minimize_16x16.svg":
16617
+ /*!***************************************!*\
16618
+ !*** ./src/images/minimize_16x16.svg ***!
16619
+ \***************************************/
16620
+ /*! no static exports found */
16621
+ /***/ (function(module, exports) {
16622
+
16623
+ module.exports = "<svg viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M13 9H3C2.45 9 2 8.55 2 8C2 7.45 2.45 7 3 7H13C13.55 7 14 7.45 14 8C14 8.55 13.55 9 13 9Z\"></path></svg>"
16624
+
16625
+ /***/ }),
16626
+
16581
16627
  /***/ "./src/images/no-image.svg":
16582
16628
  /*!*********************************!*\
16583
16629
  !*** ./src/images/no-image.svg ***!
@@ -16655,6 +16701,17 @@ module.exports = "<svg viewBox=\"0 0 48 48\" xmlns=\"http://www.w3.org/2000/svg\
16655
16701
 
16656
16702
  /***/ }),
16657
16703
 
16704
+ /***/ "./src/images/restore_16x16.svg":
16705
+ /*!**************************************!*\
16706
+ !*** ./src/images/restore_16x16.svg ***!
16707
+ \**************************************/
16708
+ /*! no static exports found */
16709
+ /***/ (function(module, exports) {
16710
+
16711
+ module.exports = "<svg viewBox=\"0 0 16 16\" xmlns=\"http://www.w3.org/2000/svg\"><path d=\"M12 13H4C2.9 13 2 12.1 2 11V5C2 3.9 2.9 3 4 3H12C13.1 3 14 3.9 14 5V11C14 12.1 13.1 13 12 13ZM4 5V11H12V5H4Z\"></path></svg>"
16712
+
16713
+ /***/ }),
16714
+
16658
16715
  /***/ "./src/images/search.svg":
16659
16716
  /*!*******************************!*\
16660
16717
  !*** ./src/images/search.svg ***!
@@ -23014,6 +23071,9 @@ var PanelModelBase = /** @class */ (function (_super) {
23014
23071
  else {
23015
23072
  this.elements.splice(index, 0, element);
23016
23073
  }
23074
+ if (this.wasRendered) {
23075
+ element.onFirstRendering();
23076
+ }
23017
23077
  return true;
23018
23078
  };
23019
23079
  PanelModelBase.prototype.insertElementAfter = function (element, after) {
@@ -24158,7 +24218,7 @@ var PopupSurveyModel = /** @class */ (function (_super) {
24158
24218
  else {
24159
24219
  _this.surveyValue = _this.createSurvey(jsonObj);
24160
24220
  }
24161
- _this.surveyValue.showTitle = false;
24221
+ //this.surveyValue.showTitle = false;
24162
24222
  if ("undefined" !== typeof document) {
24163
24223
  _this.windowElement = document.createElement("div");
24164
24224
  }
@@ -24242,6 +24302,13 @@ var PopupSurveyModel = /** @class */ (function (_super) {
24242
24302
  enumerable: false,
24243
24303
  configurable: true
24244
24304
  });
24305
+ Object.defineProperty(PopupSurveyModel.prototype, "isCollapsed", {
24306
+ get: function () {
24307
+ return !this.isExpanded;
24308
+ },
24309
+ enumerable: false,
24310
+ configurable: true
24311
+ });
24245
24312
  PopupSurveyModel.prototype.onExpandedChanged = function () {
24246
24313
  if (!!this.expandedChangedCallback) {
24247
24314
  this.expandedChangedCallback();
@@ -24263,11 +24330,22 @@ var PopupSurveyModel = /** @class */ (function (_super) {
24263
24330
  });
24264
24331
  Object.defineProperty(PopupSurveyModel.prototype, "locTitle", {
24265
24332
  get: function () {
24333
+ if (this.survey.locTitle.isEmpty)
24334
+ return null;
24266
24335
  return this.survey.locTitle;
24267
24336
  },
24268
24337
  enumerable: false,
24269
24338
  configurable: true
24270
24339
  });
24340
+ Object.defineProperty(PopupSurveyModel.prototype, "locDescription", {
24341
+ get: function () {
24342
+ if (this.survey.locTitle.isEmpty)
24343
+ return null;
24344
+ return this.survey.locDescription;
24345
+ },
24346
+ enumerable: false,
24347
+ configurable: true
24348
+ });
24271
24349
  /**
24272
24350
  * Expands the pop-up window.
24273
24351
  *
@@ -24325,7 +24403,24 @@ var PopupSurveyModel = /** @class */ (function (_super) {
24325
24403
  });
24326
24404
  Object.defineProperty(PopupSurveyModel.prototype, "cssRoot", {
24327
24405
  get: function () {
24328
- return this.getPropertyValue("cssRoot", "");
24406
+ var result = this.getPropertyValue("cssRoot", "");
24407
+ if (this.isCollapsed)
24408
+ result += " " + this.getPropertyValue("cssRootCollapsedMod", "");
24409
+ return result;
24410
+ },
24411
+ enumerable: false,
24412
+ configurable: true
24413
+ });
24414
+ Object.defineProperty(PopupSurveyModel.prototype, "cssRootCollapsedMod", {
24415
+ get: function () {
24416
+ return this.getPropertyValue("cssRootCollapsedMod");
24417
+ },
24418
+ enumerable: false,
24419
+ configurable: true
24420
+ });
24421
+ Object.defineProperty(PopupSurveyModel.prototype, "cssRootContent", {
24422
+ get: function () {
24423
+ return this.getPropertyValue("cssRootContent");
24329
24424
  },
24330
24425
  enumerable: false,
24331
24426
  configurable: true
@@ -24344,16 +24439,30 @@ var PopupSurveyModel = /** @class */ (function (_super) {
24344
24439
  enumerable: false,
24345
24440
  configurable: true
24346
24441
  });
24347
- Object.defineProperty(PopupSurveyModel.prototype, "cssHeaderTitle", {
24442
+ Object.defineProperty(PopupSurveyModel.prototype, "cssHeaderTitleCollapsed", {
24443
+ get: function () {
24444
+ return this.getPropertyValue("cssHeaderTitleCollapsed", "");
24445
+ },
24446
+ enumerable: false,
24447
+ configurable: true
24448
+ });
24449
+ Object.defineProperty(PopupSurveyModel.prototype, "cssHeaderButtonsContainer", {
24348
24450
  get: function () {
24349
- return this.getPropertyValue("cssHeaderTitle", "");
24451
+ return this.getPropertyValue("cssHeaderButtonsContainer", "");
24350
24452
  },
24351
24453
  enumerable: false,
24352
24454
  configurable: true
24353
24455
  });
24354
- Object.defineProperty(PopupSurveyModel.prototype, "cssHeaderButton", {
24456
+ Object.defineProperty(PopupSurveyModel.prototype, "cssHeaderCollapseButton", {
24355
24457
  get: function () {
24356
- return this.getPropertyValue("cssHeaderButton", "");
24458
+ return this.getPropertyValue("cssHeaderCollapseButton", "");
24459
+ },
24460
+ enumerable: false,
24461
+ configurable: true
24462
+ });
24463
+ Object.defineProperty(PopupSurveyModel.prototype, "cssHeaderCloseButton", {
24464
+ get: function () {
24465
+ return this.getPropertyValue("cssHeaderCloseButton", "");
24357
24466
  },
24358
24467
  enumerable: false,
24359
24468
  configurable: true
@@ -24373,13 +24482,17 @@ var PopupSurveyModel = /** @class */ (function (_super) {
24373
24482
  return;
24374
24483
  var cssWindow = this.css.window;
24375
24484
  this.setPropertyValue("cssRoot", cssWindow.root);
24485
+ this.setPropertyValue("cssRootCollapsedMod", cssWindow.rootCollapsedMod);
24486
+ this.setPropertyValue("cssRootContent", cssWindow.rootContent);
24376
24487
  this.setPropertyValue("cssBody", cssWindow.body);
24377
24488
  var cssHeader = cssWindow.header;
24378
24489
  if (!cssHeader)
24379
24490
  return;
24380
24491
  this.setPropertyValue("cssHeaderRoot", cssHeader.root);
24381
- this.setPropertyValue("cssHeaderTitle", cssHeader.title);
24382
- this.setPropertyValue("cssHeaderButton", cssHeader.button);
24492
+ this.setPropertyValue("cssHeaderTitleCollapsed", cssHeader.titleCollapsed);
24493
+ this.setPropertyValue("cssHeaderButtonsContainer", cssHeader.buttonsContainer);
24494
+ this.setPropertyValue("cssHeaderCollapseButton", cssHeader.collapseButton);
24495
+ this.setPropertyValue("cssHeaderCloseButton", cssHeader.closeButton);
24383
24496
  this.updateCssButton();
24384
24497
  };
24385
24498
  PopupSurveyModel.prototype.updateCssButton = function () {
@@ -26253,6 +26366,9 @@ var Question = /** @class */ (function (_super) {
26253
26366
  .append(cssClasses.headerBottom, this.hasTitleOnBottom)
26254
26367
  .toString();
26255
26368
  };
26369
+ Question.prototype.supportContainerQueries = function () {
26370
+ return false;
26371
+ };
26256
26372
  Object.defineProperty(Question.prototype, "cssContent", {
26257
26373
  get: function () {
26258
26374
  this.ensureElementCss();
@@ -26267,6 +26383,7 @@ var Question = /** @class */ (function (_super) {
26267
26383
  Question.prototype.getCssContent = function (cssClasses) {
26268
26384
  return new _utils_cssClassBuilder__WEBPACK_IMPORTED_MODULE_10__["CssClassBuilder"]()
26269
26385
  .append(cssClasses.content)
26386
+ .append(cssClasses.contentSupportContainerQueries, this.supportContainerQueries())
26270
26387
  .append(cssClasses.contentLeft, this.hasTitleOnLeft)
26271
26388
  .toString();
26272
26389
  };
@@ -30057,7 +30174,6 @@ var QuestionSelectBase = /** @class */ (function (_super) {
30057
30174
  if (this.isValueEmpty(this.cachedValueForUrlRequests)) {
30058
30175
  this.cachedValueForUrlRequests = this.value;
30059
30176
  }
30060
- this.isFirstLoadChoicesFromUrl = false;
30061
30177
  var cachedValues = this.createCachedValueForUrlRequests(this.cachedValueForUrlRequests, checkCachedValuesOnExisting);
30062
30178
  if (array && (array.length > 0 || this.choicesByUrl.allowEmptyResponse)) {
30063
30179
  newChoices = new Array();
@@ -30068,6 +30184,20 @@ var QuestionSelectBase = /** @class */ (function (_super) {
30068
30184
  newChoices[i].locOwner = this;
30069
30185
  }
30070
30186
  }
30187
+ this.setChoicesFromUrl(newChoices, errors, cachedValues);
30188
+ };
30189
+ QuestionSelectBase.prototype.canAvoidSettChoicesFromUrl = function (newChoices) {
30190
+ if (this.isFirstLoadChoicesFromUrl)
30191
+ return false;
30192
+ var chocesAreEmpty = !newChoices || Array.isArray(newChoices) && newChoices.length === 0;
30193
+ if (chocesAreEmpty && !this.isEmpty())
30194
+ return false;
30195
+ return _helpers__WEBPACK_IMPORTED_MODULE_8__["Helpers"].isTwoValueEquals(this.choicesFromUrl, newChoices);
30196
+ };
30197
+ QuestionSelectBase.prototype.setChoicesFromUrl = function (newChoices, errors, cachedValues) {
30198
+ if (this.canAvoidSettChoicesFromUrl(newChoices))
30199
+ return;
30200
+ this.isFirstLoadChoicesFromUrl = false;
30071
30201
  this.choicesFromUrl = newChoices;
30072
30202
  this.filterItems();
30073
30203
  this.onVisibleChoicesChanged();
@@ -31989,9 +32119,12 @@ var QuestionCheckboxModel = /** @class */ (function (_super) {
31989
32119
  var res = [];
31990
32120
  var visItems = this.visibleChoices;
31991
32121
  for (var i = 0; i < visItems.length; i++) {
32122
+ var item = visItems[i];
32123
+ if (item === this.selectAllItem)
32124
+ continue;
31992
32125
  var val = visItems[i].value;
31993
32126
  if (_helpers__WEBPACK_IMPORTED_MODULE_3__["Helpers"].isTwoValueEquals(val, this.invisibleOldValues[val])) {
31994
- if (!this.isItemSelected(visItems[i])) {
32127
+ if (!this.isItemSelected(item)) {
31995
32128
  res.push(val);
31996
32129
  }
31997
32130
  delete this.invisibleOldValues[val];
@@ -36854,8 +36987,8 @@ var MatrixRowModel = /** @class */ (function (_super) {
36854
36987
  __extends(MatrixRowModel, _super);
36855
36988
  function MatrixRowModel(item, fullName, data, value) {
36856
36989
  var _this = _super.call(this) || this;
36857
- _this.fullName = fullName;
36858
36990
  _this.item = item;
36991
+ _this.fullName = fullName;
36859
36992
  _this.data = data;
36860
36993
  _this.value = value;
36861
36994
  _this.cellClick = function (column) {
@@ -36893,8 +37026,24 @@ var MatrixRowModel = /** @class */ (function (_super) {
36893
37026
  return this.getPropertyValue("value");
36894
37027
  },
36895
37028
  set: function (val) {
36896
- val = this.data.getCorrectedRowValue(val);
36897
- this.setPropertyValue("value", val);
37029
+ if (!this.isReadOnly) {
37030
+ this.setValueDirectly(this.data.getCorrectedRowValue(val));
37031
+ }
37032
+ },
37033
+ enumerable: false,
37034
+ configurable: true
37035
+ });
37036
+ MatrixRowModel.prototype.setValueDirectly = function (val) {
37037
+ this.setPropertyValue("value", val);
37038
+ };
37039
+ Object.defineProperty(MatrixRowModel.prototype, "isReadOnly", {
37040
+ get: function () { return !this.item.enabled || this.data.isInputReadOnly; },
37041
+ enumerable: false,
37042
+ configurable: true
37043
+ });
37044
+ Object.defineProperty(MatrixRowModel.prototype, "rowTextClasses", {
37045
+ get: function () {
37046
+ return new _utils_cssClassBuilder__WEBPACK_IMPORTED_MODULE_11__["CssClassBuilder"]().append(this.data.cssClasses.rowTextCell).toString();
36898
37047
  },
36899
37048
  enumerable: false,
36900
37049
  configurable: true
@@ -36904,6 +37053,7 @@ var MatrixRowModel = /** @class */ (function (_super) {
36904
37053
  var cssClasses = this.data.cssClasses;
36905
37054
  return new _utils_cssClassBuilder__WEBPACK_IMPORTED_MODULE_11__["CssClassBuilder"]().append(cssClasses.row)
36906
37055
  .append(cssClasses.rowError, this.data.hasErrorInRow(this))
37056
+ .append(cssClasses.rowDisabled, this.isReadOnly)
36907
37057
  .toString();
36908
37058
  },
36909
37059
  enumerable: false,
@@ -37263,6 +37413,10 @@ var QuestionMatrixModel = /** @class */ (function (_super) {
37263
37413
  }
37264
37414
  return res;
37265
37415
  };
37416
+ QuestionMatrixModel.prototype.runItemsCondition = function (values, properties) {
37417
+ _itemvalue__WEBPACK_IMPORTED_MODULE_1__["ItemValue"].runEnabledConditionsForItems(this.rows, undefined, values, properties);
37418
+ return _super.prototype.runItemsCondition.call(this, values, properties);
37419
+ };
37266
37420
  QuestionMatrixModel.prototype.getVisibleRows = function () {
37267
37421
  var result = new Array();
37268
37422
  var val = this.value;
@@ -37426,7 +37580,7 @@ var QuestionMatrixModel = /** @class */ (function (_super) {
37426
37580
  if (!val)
37427
37581
  val = {};
37428
37582
  if (this.rows.length == 0) {
37429
- this.generatedVisibleRows[0].value = val;
37583
+ this.generatedVisibleRows[0].setValueDirectly(val);
37430
37584
  }
37431
37585
  else {
37432
37586
  for (var i = 0; i < this.generatedVisibleRows.length; i++) {
@@ -37434,7 +37588,7 @@ var QuestionMatrixModel = /** @class */ (function (_super) {
37434
37588
  var rowVal = val[row.name];
37435
37589
  if (this.isValueEmpty(rowVal))
37436
37590
  rowVal = null;
37437
- this.generatedVisibleRows[i].value = rowVal;
37591
+ this.generatedVisibleRows[i].setValueDirectly(rowVal);
37438
37592
  }
37439
37593
  }
37440
37594
  this.updateIsAnswered();
@@ -45373,8 +45527,8 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
45373
45527
  configurable: true
45374
45528
  });
45375
45529
  QuestionPanelDynamicModel.prototype.getFirstQuestionToFocus = function (withError) {
45376
- for (var i = 0; i < this.visiblePanels.length; i++) {
45377
- var res = this.visiblePanels[i].getFirstQuestionToFocus(withError);
45530
+ for (var i = 0; i < this.visiblePanelsCore.length; i++) {
45531
+ var res = this.visiblePanelsCore[i].getFirstQuestionToFocus(withError);
45378
45532
  if (!!res)
45379
45533
  return res;
45380
45534
  }
@@ -45406,12 +45560,12 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
45406
45560
  }
45407
45561
  };
45408
45562
  QuestionPanelDynamicModel.prototype.onTemplateElementPropertyChanged = function (element, options) {
45409
- if (this.isLoadingFromJson || this.useTemplatePanel || this.panels.length == 0)
45563
+ if (this.isLoadingFromJson || this.useTemplatePanel || this.panelsCore.length == 0)
45410
45564
  return;
45411
45565
  var property = _jsonobject__WEBPACK_IMPORTED_MODULE_5__["Serializer"].findProperty(element.getType(), options.name);
45412
45566
  if (!property)
45413
45567
  return;
45414
- var panels = this.panels;
45568
+ var panels = this.panelsCore;
45415
45569
  for (var i = 0; i < panels.length; i++) {
45416
45570
  var question = panels[i].getQuestionByName(element.name);
45417
45571
  if (!!question && question[options.name] !== options.newValue) {
@@ -45430,7 +45584,7 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
45430
45584
  return "paneldynamic";
45431
45585
  };
45432
45586
  QuestionPanelDynamicModel.prototype.clearOnDeletingContainer = function () {
45433
- this.panels.forEach(function (panel) {
45587
+ this.panelsCore.forEach(function (panel) {
45434
45588
  panel.clearOnDeletingContainer();
45435
45589
  });
45436
45590
  };
@@ -45586,8 +45740,8 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
45586
45740
  Object.defineProperty(QuestionPanelDynamicModel.prototype, "items", {
45587
45741
  get: function () {
45588
45742
  var res = [];
45589
- for (var i = 0; i < this.panels.length; i++) {
45590
- res.push(this.panels[i].data);
45743
+ for (var i = 0; i < this.panelsCore.length; i++) {
45744
+ res.push(this.panelsCore[i].data);
45591
45745
  }
45592
45746
  return res;
45593
45747
  },
@@ -45602,7 +45756,8 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
45602
45756
  * @see panelCount
45603
45757
  */
45604
45758
  get: function () {
45605
- return this.getPropertyValue("panels");
45759
+ this.buildPanelsFirstTime(this.canBuildPanels);
45760
+ return this.panelsCore;
45606
45761
  },
45607
45762
  enumerable: false,
45608
45763
  configurable: true
@@ -45612,6 +45767,21 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
45612
45767
  * An array of currently visible panels ([`PanelModel`](https://surveyjs.io/form-library/documentation/api-reference/panel-model) objects).
45613
45768
  * @see templateVisibleIf
45614
45769
  */
45770
+ get: function () {
45771
+ this.buildPanelsFirstTime(this.canBuildPanels);
45772
+ return this.visiblePanelsCore;
45773
+ },
45774
+ enumerable: false,
45775
+ configurable: true
45776
+ });
45777
+ Object.defineProperty(QuestionPanelDynamicModel.prototype, "panelsCore", {
45778
+ get: function () {
45779
+ return this.getPropertyValue("panels");
45780
+ },
45781
+ enumerable: false,
45782
+ configurable: true
45783
+ });
45784
+ Object.defineProperty(QuestionPanelDynamicModel.prototype, "visiblePanelsCore", {
45615
45785
  get: function () {
45616
45786
  return this.getPropertyValue("visiblePanels");
45617
45787
  },
@@ -45623,14 +45793,14 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
45623
45793
  if (!panel.visible)
45624
45794
  return;
45625
45795
  var index = 0;
45626
- var panels = this.panels;
45796
+ var panels = this.panelsCore;
45627
45797
  for (var i = 0; i < panels.length; i++) {
45628
45798
  if (panels[i] === panel)
45629
45799
  break;
45630
45800
  if (panels[i].visible)
45631
45801
  index++;
45632
45802
  }
45633
- this.visiblePanels.splice(index, 0, panel);
45803
+ this.visiblePanelsCore.splice(index, 0, panel);
45634
45804
  this.addTabFromToolbar(panel, index);
45635
45805
  if (!this.currentPanel) {
45636
45806
  this.currentPanel = panel;
@@ -45639,14 +45809,14 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
45639
45809
  QuestionPanelDynamicModel.prototype.onPanelRemoved = function (panel) {
45640
45810
  var index = this.onPanelRemovedCore(panel);
45641
45811
  if (this.currentPanel === panel) {
45642
- var visPanels = this.visiblePanels;
45812
+ var visPanels = this.visiblePanelsCore;
45643
45813
  if (index >= visPanels.length)
45644
45814
  index = visPanels.length - 1;
45645
45815
  this.currentPanel = index >= 0 ? visPanels[index] : null;
45646
45816
  }
45647
45817
  };
45648
45818
  QuestionPanelDynamicModel.prototype.onPanelRemovedCore = function (panel) {
45649
- var visPanels = this.visiblePanels;
45819
+ var visPanels = this.visiblePanelsCore;
45650
45820
  var index = visPanels.indexOf(panel);
45651
45821
  if (index > -1) {
45652
45822
  visPanels.splice(index, 1);
@@ -45669,14 +45839,14 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
45669
45839
  return -1;
45670
45840
  if (this.useTemplatePanel)
45671
45841
  return 0;
45672
- return this.visiblePanels.indexOf(this.currentPanel);
45842
+ return this.visiblePanelsCore.indexOf(this.currentPanel);
45673
45843
  },
45674
45844
  set: function (val) {
45675
45845
  if (val < 0 || this.visiblePanelCount < 1)
45676
45846
  return;
45677
45847
  if (val >= this.visiblePanelCount)
45678
45848
  val = this.visiblePanelCount - 1;
45679
- this.currentPanel = this.visiblePanels[val];
45849
+ this.currentPanel = this.visiblePanelsCore[val];
45680
45850
  },
45681
45851
  enumerable: false,
45682
45852
  configurable: true
@@ -45698,7 +45868,7 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
45698
45868
  return null;
45699
45869
  var res = this.getPropertyValue("currentPanel", null);
45700
45870
  if (!res && this.visiblePanelCount > 0) {
45701
- res = this.visiblePanels[0];
45871
+ res = this.visiblePanelsCore[0];
45702
45872
  this.currentPanel = res;
45703
45873
  }
45704
45874
  return res;
@@ -45707,7 +45877,7 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
45707
45877
  if (this.isRenderModeList || this.useTemplatePanel)
45708
45878
  return;
45709
45879
  var curPanel = this.getPropertyValue("currentPanel");
45710
- var index = !!val ? this.visiblePanels.indexOf(val) : -1;
45880
+ var index = !!val ? this.visiblePanelsCore.indexOf(val) : -1;
45711
45881
  if (!!val && index < 0 || val === curPanel)
45712
45882
  return;
45713
45883
  if (curPanel) {
@@ -45734,7 +45904,7 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
45734
45904
  this.currentPanel.onHidingContent();
45735
45905
  }
45736
45906
  else {
45737
- this.visiblePanels.forEach(function (panel) { return panel.onHidingContent(); });
45907
+ this.visiblePanelsCore.forEach(function (panel) { return panel.onHidingContent(); });
45738
45908
  }
45739
45909
  };
45740
45910
  Object.defineProperty(QuestionPanelDynamicModel.prototype, "confirmDelete", {
@@ -45991,13 +46161,13 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
45991
46161
  };
45992
46162
  QuestionPanelDynamicModel.prototype.setIsMobile = function (val) {
45993
46163
  _super.prototype.setIsMobile.call(this, val);
45994
- (this.panels || []).forEach(function (panel) { return panel.getQuestions(true).forEach(function (question) {
46164
+ (this.panelsCore || []).forEach(function (panel) { return panel.getQuestions(true).forEach(function (question) {
45995
46165
  question.setIsMobile(val);
45996
46166
  }); });
45997
46167
  };
45998
46168
  QuestionPanelDynamicModel.prototype.themeChanged = function (theme) {
45999
46169
  _super.prototype.themeChanged.call(this, theme);
46000
- (this.panels || []).forEach(function (panel) {
46170
+ (this.panelsCore || []).forEach(function (panel) {
46001
46171
  return panel.getQuestions(true).forEach(function (question) {
46002
46172
  question.themeChanged(theme);
46003
46173
  });
@@ -46010,24 +46180,24 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
46010
46180
  * @see maxPanelCount
46011
46181
  */
46012
46182
  get: function () {
46013
- return this.isLoadingFromJson || this.useTemplatePanel
46183
+ return !this.canBuildPanels || this.wasNotRenderedInSurvey
46014
46184
  ? this.getPropertyValue("panelCount")
46015
- : this.panels.length;
46185
+ : this.panelsCore.length;
46016
46186
  },
46017
46187
  set: function (val) {
46018
46188
  if (val < 0)
46019
46189
  return;
46020
- if (this.isLoadingFromJson || this.useTemplatePanel) {
46190
+ if (!this.canBuildPanels || this.wasNotRenderedInSurvey) {
46021
46191
  this.setPropertyValue("panelCount", val);
46022
46192
  return;
46023
46193
  }
46024
- if (val == this.panels.length || this.useTemplatePanel)
46194
+ if (val == this.panelsCore.length || this.useTemplatePanel)
46025
46195
  return;
46026
46196
  this.updateBindings("panelCount", val);
46027
46197
  this.prepareValueForPanelCreating();
46028
46198
  for (var i = this.panelCount; i < val; i++) {
46029
46199
  var panel = this.createNewPanel();
46030
- this.panels.push(panel);
46200
+ this.panelsCore.push(panel);
46031
46201
  if (this.renderMode == "list" && this.panelsState != "default") {
46032
46202
  if (this.panelsState === "expand") {
46033
46203
  panel.expand();
@@ -46041,7 +46211,7 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
46041
46211
  }
46042
46212
  var removedPanels = [];
46043
46213
  if (val < this.panelCount) {
46044
- removedPanels = this.panels.splice(val, this.panelCount - val);
46214
+ removedPanels = this.panelsCore.splice(val, this.panelCount - val);
46045
46215
  }
46046
46216
  this.setValueAfterPanelsCreating();
46047
46217
  this.setValueBasedOnPanelCount();
@@ -46089,8 +46259,8 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
46089
46259
  : new QuestionPanelDynamicTemplateSurveyImpl(this));
46090
46260
  };
46091
46261
  QuestionPanelDynamicModel.prototype.setPanelsSurveyImpl = function () {
46092
- for (var i = 0; i < this.panels.length; i++) {
46093
- var panel = this.panels[i];
46262
+ for (var i = 0; i < this.panelsCore.length; i++) {
46263
+ var panel = this.panelsCore[i];
46094
46264
  if (panel == this.template)
46095
46265
  continue;
46096
46266
  panel.setSurveyImpl(panel.data);
@@ -46099,12 +46269,12 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
46099
46269
  QuestionPanelDynamicModel.prototype.setPanelsState = function () {
46100
46270
  if (this.useTemplatePanel || this.renderMode != "list" || !this.templateTitle)
46101
46271
  return;
46102
- for (var i = 0; i < this.panels.length; i++) {
46272
+ for (var i = 0; i < this.panelsCore.length; i++) {
46103
46273
  var state = this.panelsState;
46104
46274
  if (state === "firstExpanded") {
46105
46275
  state = i === 0 ? "expanded" : "collapsed";
46106
46276
  }
46107
- this.panels[i].state = state;
46277
+ this.panelsCore[i].state = state;
46108
46278
  }
46109
46279
  };
46110
46280
  QuestionPanelDynamicModel.prototype.setValueBasedOnPanelCount = function () {
@@ -46388,8 +46558,8 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
46388
46558
  if (!this.isVisible)
46389
46559
  return 0;
46390
46560
  var startIndex = this.showQuestionNumbers == "onSurvey" ? value : 0;
46391
- for (var i = 0; i < this.visiblePanels.length; i++) {
46392
- var counter = this.setPanelVisibleIndex(this.visiblePanels[i], startIndex, this.showQuestionNumbers != "off");
46561
+ for (var i = 0; i < this.visiblePanelsCore.length; i++) {
46562
+ var counter = this.setPanelVisibleIndex(this.visiblePanelsCore[i], startIndex, this.showQuestionNumbers != "off");
46393
46563
  if (this.showQuestionNumbers == "onSurvey") {
46394
46564
  startIndex += counter;
46395
46565
  }
@@ -46475,7 +46645,7 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
46475
46645
  panels.push(this.createNewPanel());
46476
46646
  }
46477
46647
  }
46478
- (_a = this.panels).splice.apply(_a, __spreadArray([0, this.panels.length], panels));
46648
+ (_a = this.panelsCore).splice.apply(_a, __spreadArray([0, this.panelsCore.length], panels));
46479
46649
  this.setValueAfterPanelsCreating();
46480
46650
  this.setPanelsState();
46481
46651
  this.reRunCondition();
@@ -46547,7 +46717,7 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
46547
46717
  return true;
46548
46718
  };
46549
46719
  QuestionPanelDynamicModel.prototype.getProgressInfo = function () {
46550
- return _survey_element__WEBPACK_IMPORTED_MODULE_1__["SurveyElement"].getProgressInfoByElements(this.visiblePanels, this.isRequired);
46720
+ return _survey_element__WEBPACK_IMPORTED_MODULE_1__["SurveyElement"].getProgressInfoByElements(this.visiblePanelsCore, this.isRequired);
46551
46721
  };
46552
46722
  QuestionPanelDynamicModel.prototype.isRowEmpty = function (val) {
46553
46723
  for (var prop in val) {
@@ -46597,7 +46767,7 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
46597
46767
  }
46598
46768
  if (this.survey)
46599
46769
  this.survey.dynamicPanelAdded(this);
46600
- return this.panels[index];
46770
+ return this.panelsCore[index];
46601
46771
  };
46602
46772
  QuestionPanelDynamicModel.prototype.updateValueOnAddingPanel = function (prevIndex, index) {
46603
46773
  this.panelCount++;
@@ -46659,7 +46829,7 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
46659
46829
  var index = this.getVisualPanelIndex(val);
46660
46830
  if (index < 0 || index >= this.visiblePanelCount)
46661
46831
  return false;
46662
- var panelValue = this.visiblePanels[index].getValue();
46832
+ var panelValue = this.visiblePanelsCore[index].getValue();
46663
46833
  return !this.isValueEmpty(panelValue) &&
46664
46834
  (this.isValueEmpty(this.defaultPanelValue) || !this.isTwoValueEquals(panelValue, this.defaultPanelValue));
46665
46835
  };
@@ -46693,13 +46863,13 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
46693
46863
  var visIndex = this.getVisualPanelIndex(value);
46694
46864
  if (visIndex < 0 || visIndex >= this.visiblePanelCount)
46695
46865
  return;
46696
- var panel = this.visiblePanels[visIndex];
46697
- var index = this.panels.indexOf(panel);
46866
+ var panel = this.visiblePanelsCore[visIndex];
46867
+ var index = this.panelsCore.indexOf(panel);
46698
46868
  if (index < 0)
46699
46869
  return;
46700
46870
  if (this.survey && !this.survey.dynamicPanelRemoving(this, index, panel))
46701
46871
  return;
46702
- this.panels.splice(index, 1);
46872
+ this.panelsCore.splice(index, 1);
46703
46873
  this.updateBindings("panelCount", this.panelCount);
46704
46874
  var value = this.value;
46705
46875
  if (!value || !Array.isArray(value) || index >= value.length)
@@ -46716,7 +46886,7 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
46716
46886
  QuestionPanelDynamicModel.prototype.getVisualPanelIndex = function (val) {
46717
46887
  if (_helpers__WEBPACK_IMPORTED_MODULE_0__["Helpers"].isNumber(val))
46718
46888
  return val;
46719
- var visPanels = this.visiblePanels;
46889
+ var visPanels = this.visiblePanelsCore;
46720
46890
  for (var i = 0; i < visPanels.length; i++) {
46721
46891
  if (visPanels[i] === val || visPanels[i].data === val)
46722
46892
  return i;
@@ -46724,15 +46894,15 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
46724
46894
  return -1;
46725
46895
  };
46726
46896
  QuestionPanelDynamicModel.prototype.getPanelIndexById = function (id) {
46727
- for (var i = 0; i < this.panels.length; i++) {
46728
- if (this.panels[i].id === id)
46897
+ for (var i = 0; i < this.panelsCore.length; i++) {
46898
+ if (this.panelsCore[i].id === id)
46729
46899
  return i;
46730
46900
  }
46731
46901
  return -1;
46732
46902
  };
46733
46903
  QuestionPanelDynamicModel.prototype.locStrsChanged = function () {
46734
46904
  _super.prototype.locStrsChanged.call(this);
46735
- var panels = this.panels;
46905
+ var panels = this.panelsCore;
46736
46906
  for (var i = 0; i < panels.length; i++) {
46737
46907
  panels[i].locStrsChanged();
46738
46908
  }
@@ -46741,23 +46911,23 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
46741
46911
  }
46742
46912
  };
46743
46913
  QuestionPanelDynamicModel.prototype.clearIncorrectValues = function () {
46744
- for (var i = 0; i < this.panels.length; i++) {
46914
+ for (var i = 0; i < this.panelsCore.length; i++) {
46745
46915
  this.clearIncorrectValuesInPanel(i);
46746
46916
  }
46747
46917
  };
46748
46918
  QuestionPanelDynamicModel.prototype.clearErrors = function () {
46749
46919
  _super.prototype.clearErrors.call(this);
46750
- for (var i = 0; i < this.panels.length; i++) {
46751
- this.panels[i].clearErrors();
46920
+ for (var i = 0; i < this.panelsCore.length; i++) {
46921
+ this.panelsCore[i].clearErrors();
46752
46922
  }
46753
46923
  };
46754
46924
  QuestionPanelDynamicModel.prototype.getQuestionFromArray = function (name, index) {
46755
46925
  if (index >= this.panelCount)
46756
46926
  return null;
46757
- return this.panels[index].getQuestionByName(name);
46927
+ return this.panelsCore[index].getQuestionByName(name);
46758
46928
  };
46759
46929
  QuestionPanelDynamicModel.prototype.clearIncorrectValuesInPanel = function (index) {
46760
- var panel = this.panels[index];
46930
+ var panel = this.panelsCore[index];
46761
46931
  panel.clearIncorrectValues();
46762
46932
  var val = this.value;
46763
46933
  var values = !!val && index < val.length ? val[index] : null;
@@ -46831,7 +47001,7 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
46831
47001
  }
46832
47002
  };
46833
47003
  QuestionPanelDynamicModel.prototype.collectNestedQuestionsCore = function (questions, visibleOnly) {
46834
- var panels = visibleOnly ? this.visiblePanels : this.panels;
47004
+ var panels = visibleOnly ? this.visiblePanelsCore : this.panelsCore;
46835
47005
  if (!Array.isArray(panels))
46836
47006
  return;
46837
47007
  panels.forEach(function (panel) {
@@ -46857,8 +47027,8 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
46857
47027
  QuestionPanelDynamicModel.prototype.onReadOnlyChanged = function () {
46858
47028
  var readOnly = this.isReadOnly;
46859
47029
  this.template.readOnly = readOnly;
46860
- for (var i = 0; i < this.panels.length; i++) {
46861
- this.panels[i].readOnly = readOnly;
47030
+ for (var i = 0; i < this.panelsCore.length; i++) {
47031
+ this.panelsCore[i].readOnly = readOnly;
46862
47032
  }
46863
47033
  this.updateNoEntriesTextDefaultLoc();
46864
47034
  this.updateFooterActions();
@@ -46874,6 +47044,17 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
46874
47044
  QuestionPanelDynamicModel.prototype.onSurveyLoad = function () {
46875
47045
  this.template.readOnly = this.isReadOnly;
46876
47046
  this.template.onSurveyLoad();
47047
+ this.buildPanelsFirstTime();
47048
+ _super.prototype.onSurveyLoad.call(this);
47049
+ };
47050
+ QuestionPanelDynamicModel.prototype.buildPanelsFirstTime = function (force) {
47051
+ if (force === void 0) { force = false; }
47052
+ if (this.hasPanelBuildFirstTime)
47053
+ return;
47054
+ if (!force && this.wasNotRenderedInSurvey)
47055
+ return;
47056
+ this.hasPanelBuildFirstTime = true;
47057
+ this.isBuildingPanelsFirstTime = true;
46877
47058
  if (this.getPropertyValue("panelCount") > 0) {
46878
47059
  this.panelCount = this.getPropertyValue("panelCount");
46879
47060
  }
@@ -46893,28 +47074,43 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
46893
47074
  this.updateNoEntriesTextDefaultLoc();
46894
47075
  }
46895
47076
  this.updateFooterActions();
46896
- _super.prototype.onSurveyLoad.call(this);
47077
+ this.isBuildingPanelsFirstTime = false;
46897
47078
  };
47079
+ Object.defineProperty(QuestionPanelDynamicModel.prototype, "wasNotRenderedInSurvey", {
47080
+ get: function () {
47081
+ return !this.hasPanelBuildFirstTime && !this.wasRendered && !!this.survey;
47082
+ },
47083
+ enumerable: false,
47084
+ configurable: true
47085
+ });
47086
+ Object.defineProperty(QuestionPanelDynamicModel.prototype, "canBuildPanels", {
47087
+ get: function () {
47088
+ return !this.isLoadingFromJson && !this.useTemplatePanel;
47089
+ },
47090
+ enumerable: false,
47091
+ configurable: true
47092
+ });
46898
47093
  QuestionPanelDynamicModel.prototype.onFirstRendering = function () {
47094
+ _super.prototype.onFirstRendering.call(this);
47095
+ this.buildPanelsFirstTime();
46899
47096
  this.template.onFirstRendering();
46900
- for (var i = 0; i < this.panels.length; i++) {
46901
- this.panels[i].onFirstRendering();
47097
+ for (var i = 0; i < this.panelsCore.length; i++) {
47098
+ this.panelsCore[i].onFirstRendering();
46902
47099
  }
46903
- _super.prototype.onFirstRendering.call(this);
46904
47100
  };
46905
47101
  QuestionPanelDynamicModel.prototype.localeChanged = function () {
46906
47102
  _super.prototype.localeChanged.call(this);
46907
- for (var i = 0; i < this.panels.length; i++) {
46908
- this.panels[i].localeChanged();
47103
+ for (var i = 0; i < this.panelsCore.length; i++) {
47104
+ this.panelsCore[i].localeChanged();
46909
47105
  }
46910
47106
  };
46911
47107
  QuestionPanelDynamicModel.prototype.runCondition = function (values, properties) {
46912
47108
  _super.prototype.runCondition.call(this, values, properties);
46913
- this.runPanelsCondition(this.panels, values, properties);
47109
+ this.runPanelsCondition(this.panelsCore, values, properties);
46914
47110
  };
46915
47111
  QuestionPanelDynamicModel.prototype.runTriggers = function (name, value) {
46916
47112
  _super.prototype.runTriggers.call(this, name, value);
46917
- this.visiblePanels.forEach(function (p) {
47113
+ this.visiblePanelsCore.forEach(function (p) {
46918
47114
  p.questions.forEach(function (q) { return q.runTriggers(name, value); });
46919
47115
  });
46920
47116
  };
@@ -46948,18 +47144,18 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
46948
47144
  };
46949
47145
  QuestionPanelDynamicModel.prototype.onAnyValueChanged = function (name, questionName) {
46950
47146
  _super.prototype.onAnyValueChanged.call(this, name, questionName);
46951
- for (var i = 0; i < this.panels.length; i++) {
46952
- this.panels[i].onAnyValueChanged(name, questionName);
46953
- this.panels[i].onAnyValueChanged(QuestionPanelDynamicItem.ItemVariableName, "");
47147
+ for (var i = 0; i < this.panelsCore.length; i++) {
47148
+ this.panelsCore[i].onAnyValueChanged(name, questionName);
47149
+ this.panelsCore[i].onAnyValueChanged(QuestionPanelDynamicItem.ItemVariableName, "");
46954
47150
  }
46955
47151
  };
46956
47152
  QuestionPanelDynamicModel.prototype.hasKeysDuplicated = function (fireCallback, rec) {
46957
47153
  if (rec === void 0) { rec = null; }
46958
47154
  var keyValues = [];
46959
47155
  var res;
46960
- for (var i = 0; i < this.panels.length; i++) {
47156
+ for (var i = 0; i < this.panelsCore.length; i++) {
46961
47157
  res =
46962
- this.isValueDuplicated(this.panels[i], keyValues, rec, fireCallback) ||
47158
+ this.isValueDuplicated(this.panelsCore[i], keyValues, rec, fireCallback) ||
46963
47159
  res;
46964
47160
  }
46965
47161
  return res;
@@ -46976,7 +47172,7 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
46976
47172
  QuestionPanelDynamicModel.prototype.hasErrors = function (fireCallback, rec) {
46977
47173
  if (fireCallback === void 0) { fireCallback = true; }
46978
47174
  if (rec === void 0) { rec = null; }
46979
- if (this.isValueChangingInternally)
47175
+ if (this.isValueChangingInternally || this.isBuildingPanelsFirstTime)
46980
47176
  return false;
46981
47177
  var res = false;
46982
47178
  if (!!this.changingValueQuestion) {
@@ -46993,7 +47189,7 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
46993
47189
  var res = _super.prototype.getContainsErrors.call(this);
46994
47190
  if (res)
46995
47191
  return res;
46996
- var panels = this.panels;
47192
+ var panels = this.panelsCore;
46997
47193
  for (var i = 0; i < panels.length; i++) {
46998
47194
  if (panels[i].containsErrors)
46999
47195
  return true;
@@ -47003,7 +47199,7 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
47003
47199
  QuestionPanelDynamicModel.prototype.getIsAnswered = function () {
47004
47200
  if (!_super.prototype.getIsAnswered.call(this))
47005
47201
  return false;
47006
- var panels = this.visiblePanels;
47202
+ var panels = this.visiblePanelsCore;
47007
47203
  for (var i = 0; i < panels.length; i++) {
47008
47204
  var visibleQuestions = [];
47009
47205
  panels[i].addQuestionsToList(visibleQuestions, true);
@@ -47029,8 +47225,8 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
47029
47225
  _super.prototype.clearValueIfInvisible.call(this, reason);
47030
47226
  };
47031
47227
  QuestionPanelDynamicModel.prototype.clearValueInPanelsIfInvisible = function (reason) {
47032
- for (var i = 0; i < this.panels.length; i++) {
47033
- var questions = this.panels[i].questions;
47228
+ for (var i = 0; i < this.panelsCore.length; i++) {
47229
+ var questions = this.panelsCore[i].questions;
47034
47230
  this.isSetPanelItemData = {};
47035
47231
  for (var j = 0; j < questions.length; j++) {
47036
47232
  var q = questions[j];
@@ -47043,8 +47239,8 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
47043
47239
  QuestionPanelDynamicModel.prototype.getIsRunningValidators = function () {
47044
47240
  if (_super.prototype.getIsRunningValidators.call(this))
47045
47241
  return true;
47046
- for (var i = 0; i < this.panels.length; i++) {
47047
- var questions = this.panels[i].questions;
47242
+ for (var i = 0; i < this.panelsCore.length; i++) {
47243
+ var questions = this.panelsCore[i].questions;
47048
47244
  for (var j = 0; j < questions.length; j++) {
47049
47245
  if (questions[j].isRunningValidators)
47050
47246
  return true;
@@ -47054,7 +47250,7 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
47054
47250
  };
47055
47251
  QuestionPanelDynamicModel.prototype.getAllErrors = function () {
47056
47252
  var result = _super.prototype.getAllErrors.call(this);
47057
- var panels = this.visiblePanels;
47253
+ var panels = this.visiblePanelsCore;
47058
47254
  for (var i = 0; i < panels.length; i++) {
47059
47255
  var questions = panels[i].questions;
47060
47256
  for (var j = 0; j < questions.length; j++) {
@@ -47070,7 +47266,7 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
47070
47266
  var values = this.getUnbindValue(value);
47071
47267
  if (!values || !Array.isArray(values))
47072
47268
  return values;
47073
- for (var i = 0; i < this.panels.length && i < values.length; i++) {
47269
+ for (var i = 0; i < this.panelsCore.length && i < values.length; i++) {
47074
47270
  var val = values[i];
47075
47271
  if (!val)
47076
47272
  continue;
@@ -47081,7 +47277,7 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
47081
47277
  QuestionPanelDynamicModel.prototype.getPanelDisplayValue = function (panelIndex, val, keysAsText) {
47082
47278
  if (!val)
47083
47279
  return val;
47084
- var panel = this.panels[panelIndex];
47280
+ var panel = this.panelsCore[panelIndex];
47085
47281
  var keys = Object.keys(val);
47086
47282
  for (var i = 0; i < keys.length; i++) {
47087
47283
  var key = keys[i];
@@ -47102,7 +47298,7 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
47102
47298
  };
47103
47299
  QuestionPanelDynamicModel.prototype.hasErrorInPanels = function (fireCallback, rec) {
47104
47300
  var res = false;
47105
- var panels = this.visiblePanels;
47301
+ var panels = this.visiblePanelsCore;
47106
47302
  var keyValues = [];
47107
47303
  for (var i = 0; i < panels.length; i++) {
47108
47304
  this.setOnCompleteAsyncInPanel(panels[i]);
@@ -47235,8 +47431,8 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
47235
47431
  return;
47236
47432
  _super.prototype.setQuestionValue.call(this, newValue, false);
47237
47433
  this.setPanelCountBasedOnValue();
47238
- for (var i = 0; i < this.panels.length; i++) {
47239
- this.panelUpdateValueFromSurvey(this.panels[i]);
47434
+ for (var i = 0; i < this.panelsCore.length; i++) {
47435
+ this.panelUpdateValueFromSurvey(this.panelsCore[i]);
47240
47436
  }
47241
47437
  this.updateIsAnswered();
47242
47438
  };
@@ -47244,8 +47440,8 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
47244
47440
  if (newValue === undefined && this.isAllPanelsEmpty())
47245
47441
  return;
47246
47442
  _super.prototype.onSurveyValueChanged.call(this, newValue);
47247
- for (var i = 0; i < this.panels.length; i++) {
47248
- this.panelSurveyValueChanged(this.panels[i]);
47443
+ for (var i = 0; i < this.panelsCore.length; i++) {
47444
+ this.panelSurveyValueChanged(this.panelsCore[i]);
47249
47445
  }
47250
47446
  if (newValue === undefined) {
47251
47447
  this.setValueBasedOnPanelCount();
@@ -47253,8 +47449,8 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
47253
47449
  this.updateIsReady();
47254
47450
  };
47255
47451
  QuestionPanelDynamicModel.prototype.isAllPanelsEmpty = function () {
47256
- for (var i = 0; i < this.panels.length; i++) {
47257
- if (!_helpers__WEBPACK_IMPORTED_MODULE_0__["Helpers"].isValueEmpty(this.panels[i].getValue()))
47452
+ for (var i = 0; i < this.panelsCore.length; i++) {
47453
+ if (!_helpers__WEBPACK_IMPORTED_MODULE_0__["Helpers"].isValueEmpty(this.panelsCore[i].getValue()))
47258
47454
  return false;
47259
47455
  }
47260
47456
  return true;
@@ -47293,7 +47489,7 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
47293
47489
  return res > -1 ? res : this.items.length;
47294
47490
  };
47295
47491
  QuestionPanelDynamicModel.prototype.getVisibleItemIndex = function (item) {
47296
- var visPanels = this.visiblePanels;
47492
+ var visPanels = this.visiblePanelsCore;
47297
47493
  for (var i = 0; i < visPanels.length; i++) {
47298
47494
  if (visPanels[i].data === item)
47299
47495
  return i;
@@ -47341,8 +47537,8 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
47341
47537
  else {
47342
47538
  delete qValue[index][name];
47343
47539
  }
47344
- if (index >= 0 && index < this.panels.length) {
47345
- this.changingValueQuestion = this.panels[index].getQuestionByValueName(name);
47540
+ if (index >= 0 && index < this.panelsCore.length) {
47541
+ this.changingValueQuestion = this.panelsCore[index].getQuestionByValueName(name);
47346
47542
  }
47347
47543
  this.value = qValue;
47348
47544
  this.changingValueQuestion = null;
@@ -47396,8 +47592,8 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
47396
47592
  };
47397
47593
  QuestionPanelDynamicModel.prototype.updateElementCss = function (reNew) {
47398
47594
  _super.prototype.updateElementCss.call(this, reNew);
47399
- for (var i = 0; i < this.panels.length; i++) {
47400
- var el = this.panels[i];
47595
+ for (var i = 0; i < this.panelsCore.length; i++) {
47596
+ var el = this.panelsCore[i];
47401
47597
  el.updateElementCss(reNew);
47402
47598
  }
47403
47599
  };
@@ -47621,7 +47817,7 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
47621
47817
  return;
47622
47818
  if (this.currentIndex < 0 || this.currentIndex >= this.visiblePanelCount)
47623
47819
  return;
47624
- var panel = this.visiblePanels[this.currentIndex];
47820
+ var panel = this.visiblePanelsCore[this.currentIndex];
47625
47821
  this.additionalTitleToolbar.renderedActions.forEach(function (action) {
47626
47822
  var isActive = action.id === panel.id;
47627
47823
  action.pressed = isActive;
@@ -47637,9 +47833,9 @@ var QuestionPanelDynamicModel = /** @class */ (function (_super) {
47637
47833
  if (!this.isRenderModeTab)
47638
47834
  return;
47639
47835
  var items = [];
47640
- var visPanels = this.visiblePanels;
47836
+ var visPanels = this.visiblePanelsCore;
47641
47837
  var _loop_1 = function (i) {
47642
- this_1.visiblePanels.forEach(function (panel) { return items.push(_this.createTabByPanel(visPanels[i], i)); });
47838
+ this_1.visiblePanelsCore.forEach(function (panel) { return items.push(_this.createTabByPanel(visPanels[i], i)); });
47643
47839
  };
47644
47840
  var this_1 = this;
47645
47841
  for (var i = 0; i < visPanels.length; i++) {
@@ -48110,6 +48306,9 @@ var QuestionRankingModel = /** @class */ (function (_super) {
48110
48306
  return undefined;
48111
48307
  return 0;
48112
48308
  };
48309
+ QuestionRankingModel.prototype.supportContainerQueries = function () {
48310
+ return this.selectToRankEnabled;
48311
+ };
48113
48312
  Object.defineProperty(QuestionRankingModel.prototype, "rootClass", {
48114
48313
  get: function () {
48115
48314
  return new _utils_cssClassBuilder__WEBPACK_IMPORTED_MODULE_6__["CssClassBuilder"]()
@@ -53784,7 +53983,13 @@ var SurveyElement = /** @class */ (function (_super) {
53784
53983
  });
53785
53984
  SurveyElement.prototype.updateCustomWidgets = function () { };
53786
53985
  SurveyElement.prototype.onSurveyLoad = function () { };
53986
+ Object.defineProperty(SurveyElement.prototype, "wasRendered", {
53987
+ get: function () { return !!this.wasRenderedValue; },
53988
+ enumerable: false,
53989
+ configurable: true
53990
+ });
53787
53991
  SurveyElement.prototype.onFirstRendering = function () {
53992
+ this.wasRenderedValue = true;
53788
53993
  this.ensureCssClassesValue();
53789
53994
  };
53790
53995
  SurveyElement.prototype.endLoadingFromJson = function () {
@@ -54264,7 +54469,7 @@ var SurveyError = /** @class */ (function () {
54264
54469
  this.visible = true;
54265
54470
  this.onUpdateErrorTextCallback = undefined;
54266
54471
  }
54267
- SurveyError.prototype.equalsTo = function (error) {
54472
+ SurveyError.prototype.equals = function (error) {
54268
54473
  if (!error || !error.getErrorType)
54269
54474
  return false;
54270
54475
  if (this.getErrorType() !== error.getErrorType())
@@ -54364,6 +54569,7 @@ __webpack_require__.r(__webpack_exports__);
54364
54569
  /* harmony import */ var _header__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! ./header */ "./src/header.ts");
54365
54570
  /* harmony import */ var _surveytimer__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! ./surveytimer */ "./src/surveytimer.ts");
54366
54571
  /* harmony import */ var _surveyTaskManager__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! ./surveyTaskManager */ "./src/surveyTaskManager.ts");
54572
+ /* harmony import */ var _surveyToc__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! ./surveyToc */ "./src/surveyToc.ts");
54367
54573
  var __extends = (undefined && undefined.__extends) || (function () {
54368
54574
  var extendStatics = function (d, b) {
54369
54575
  extendStatics = Object.setPrototypeOf ||
@@ -54406,6 +54612,7 @@ var __decorate = (undefined && undefined.__decorate) || function (decorators, ta
54406
54612
 
54407
54613
 
54408
54614
 
54615
+
54409
54616
 
54410
54617
 
54411
54618
  /**
@@ -55279,8 +55486,8 @@ var SurveyModel = /** @class */ (function (_super) {
55279
55486
  });
55280
55487
  _this.addLayoutElement({
55281
55488
  id: "toc-navigation",
55282
- component: "sv-progress-toc",
55283
- data: _this
55489
+ component: "sv-navigation-toc",
55490
+ data: new _surveyToc__WEBPACK_IMPORTED_MODULE_23__["TOCModel"](_this)
55284
55491
  });
55285
55492
  _this.layoutElements.push({
55286
55493
  id: "navigationbuttons",
@@ -56325,6 +56532,8 @@ var SurveyModel = /** @class */ (function (_super) {
56325
56532
  return this.locale;
56326
56533
  };
56327
56534
  SurveyModel.prototype.locStrsChanged = function () {
56535
+ if (this.isClearingUnsedValues)
56536
+ return;
56328
56537
  _super.prototype.locStrsChanged.call(this);
56329
56538
  if (!this.currentPage)
56330
56539
  return;
@@ -57879,11 +58088,11 @@ var SurveyModel = /** @class */ (function (_super) {
57879
58088
  if (this.isDesignMode)
57880
58089
  return false;
57881
58090
  var index = this.visiblePages.indexOf(page);
57882
- if (index < 0)
58091
+ if (index < 0 || index >= this.visiblePageCount)
57883
58092
  return false;
57884
58093
  if (index === this.currentPageNo)
57885
58094
  return false;
57886
- if (index < this.currentPageNo) {
58095
+ if (index < this.currentPageNo || this.isValidateOnComplete) {
57887
58096
  this.currentPageNo = index;
57888
58097
  return true;
57889
58098
  }
@@ -61097,11 +61306,13 @@ var SurveyModel = /** @class */ (function (_super) {
61097
61306
  return name.substring(0, pos);
61098
61307
  };
61099
61308
  SurveyModel.prototype.clearUnusedValues = function () {
61309
+ this.isClearingUnsedValues = true;
61100
61310
  var questions = this.getAllQuestions();
61101
61311
  for (var i = 0; i < questions.length; i++) {
61102
61312
  questions[i].clearUnusedValues();
61103
61313
  }
61104
61314
  this.clearInvisibleQuestionValues();
61315
+ this.isClearingUnsedValues = false;
61105
61316
  };
61106
61317
  SurveyModel.prototype.hasVisibleQuestionByValueName = function (valueName) {
61107
61318
  var questions = this.getQuestionsByValueName(valueName);
@@ -62288,8 +62499,12 @@ var SurveyModel = /** @class */ (function (_super) {
62288
62499
  this.layoutElements.push(layoutElement);
62289
62500
  return existingLayoutElement;
62290
62501
  };
62291
- SurveyModel.prototype.removeLayoutElement = function (layoutElementId) {
62502
+ SurveyModel.prototype.findLayoutElement = function (layoutElementId) {
62292
62503
  var layoutElement = this.layoutElements.filter(function (a) { return a.id === layoutElementId; })[0];
62504
+ return layoutElement;
62505
+ };
62506
+ SurveyModel.prototype.removeLayoutElement = function (layoutElementId) {
62507
+ var layoutElement = this.findLayoutElement(layoutElementId);
62293
62508
  if (!!layoutElement) {
62294
62509
  var layoutElementIndex = this.layoutElements.indexOf(layoutElement);
62295
62510
  this.layoutElements.splice(layoutElementIndex, 1);
@@ -62313,7 +62528,7 @@ var SurveyModel = /** @class */ (function (_super) {
62313
62528
  }
62314
62529
  }
62315
62530
  else if (this.state === "running" && isStrCiEqual(layoutElement.id, "progress-" + this.progressBarType)) {
62316
- var headerLayoutElement = this.layoutElements.filter(function (a) { return a.id === "advanced-header"; })[0];
62531
+ var headerLayoutElement = this.findLayoutElement("advanced-header");
62317
62532
  var advHeader = headerLayoutElement && headerLayoutElement.data;
62318
62533
  var isBelowHeader = !advHeader || advHeader.hasBackground;
62319
62534
  if (container === "header" && !isBelowHeader) {
@@ -62415,6 +62630,14 @@ var SurveyModel = /** @class */ (function (_super) {
62415
62630
  this.removeScrollEventListener();
62416
62631
  this.destroyResizeObserver();
62417
62632
  this.rootElement = undefined;
62633
+ if (this.layoutElements) {
62634
+ for (var i = 0; i < this.layoutElements.length; i++) {
62635
+ if (!!this.layoutElements[i].data && this.layoutElements[i].data !== this && this.layoutElements[i].data.dispose) {
62636
+ this.layoutElements[i].data.dispose();
62637
+ }
62638
+ }
62639
+ this.layoutElements.splice(0, this.layoutElements.length);
62640
+ }
62418
62641
  _super.prototype.dispose.call(this);
62419
62642
  this.editingObj = null;
62420
62643
  if (!this.pages)
@@ -62480,7 +62703,7 @@ var SurveyModel = /** @class */ (function (_super) {
62480
62703
  Object(_jsonobject__WEBPACK_IMPORTED_MODULE_1__["property"])({
62481
62704
  onSet: function (newValue, target) {
62482
62705
  if (newValue === "advanced") {
62483
- var layoutElement = target.layoutElements.filter(function (a) { return a.id === "advanced-header"; })[0];
62706
+ var layoutElement = target.findLayoutElement("advanced-header");
62484
62707
  if (!layoutElement) {
62485
62708
  var advHeader = new _header__WEBPACK_IMPORTED_MODULE_20__["Cover"]();
62486
62709
  advHeader.logoPositionX = target.logoPosition === "right" ? "right" : "left";
@@ -62716,7 +62939,7 @@ _jsonobject__WEBPACK_IMPORTED_MODULE_1__["Serializer"].addClass("survey", [
62716
62939
  {
62717
62940
  name: "checkErrorsMode",
62718
62941
  default: "onNextPage",
62719
- choices: ["onNextPage", "onValueChanged", "onValueChanging", "onComplete"],
62942
+ choices: ["onNextPage", "onValueChanged", "onComplete"],
62720
62943
  },
62721
62944
  {
62722
62945
  name: "textUpdateMode",
@@ -63336,12 +63559,12 @@ function createTOCListModel(survey, onAction) {
63336
63559
  if (!!item.action()) {
63337
63560
  listModel.selectedItem = item;
63338
63561
  }
63339
- }, true, items.filter(function (i) { return i.id === survey.currentPage.name; })[0] || items.filter(function (i) { return i.id === pagesSource[0].name; })[0]);
63562
+ }, true, items.filter(function (i) { return !!survey.currentPage && i.id === survey.currentPage.name; })[0] || items.filter(function (i) { return i.id === pagesSource[0].name; })[0]);
63340
63563
  listModel.allowSelection = false;
63341
63564
  listModel.locOwner = survey;
63342
63565
  listModel.searchEnabled = false;
63343
63566
  survey.onCurrentPageChanged.add(function (s, o) {
63344
- listModel.selectedItem = items.filter(function (i) { return i.id === survey.currentPage.name; })[0];
63567
+ listModel.selectedItem = items.filter(function (i) { return !!survey.currentPage && i.id === survey.currentPage.name; })[0];
63345
63568
  });
63346
63569
  return listModel;
63347
63570
  }
@@ -65376,7 +65599,7 @@ function scrollElementByChildId(id) {
65376
65599
  return;
65377
65600
  var scrollableEl = findScrollableParent(el);
65378
65601
  if (!!scrollableEl) {
65379
- scrollableEl.dispatchEvent(new CustomEvent("scroll"));
65602
+ setTimeout(function () { return scrollableEl.dispatchEvent(new CustomEvent("scroll")); }, 10);
65380
65603
  }
65381
65604
  }
65382
65605
  function navigateToUrl(url) {