survey-core 1.10.5 → 1.10.6

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 (227) hide show
  1. package/defaultV2.css +22 -2
  2. package/defaultV2.css.map +1 -1
  3. package/defaultV2.fontless.css +22 -2
  4. package/defaultV2.fontless.css.map +1 -1
  5. package/defaultV2.fontless.min.css +2 -2
  6. package/defaultV2.min.css +2 -2
  7. package/i18n/arabic.js +1 -1
  8. package/i18n/arabic.min.js +1 -1
  9. package/i18n/basque.js +1 -1
  10. package/i18n/basque.min.js +1 -1
  11. package/i18n/bulgarian.js +1 -1
  12. package/i18n/bulgarian.min.js +1 -1
  13. package/i18n/catalan.js +1 -1
  14. package/i18n/catalan.min.js +1 -1
  15. package/i18n/croatian.js +1 -1
  16. package/i18n/croatian.min.js +1 -1
  17. package/i18n/czech.js +1 -1
  18. package/i18n/czech.min.js +1 -1
  19. package/i18n/danish.js +1 -1
  20. package/i18n/danish.min.js +1 -1
  21. package/i18n/dutch.js +1 -1
  22. package/i18n/dutch.min.js +1 -1
  23. package/i18n/english.js +1 -1
  24. package/i18n/english.min.js +2 -2
  25. package/i18n/estonian.js +1 -1
  26. package/i18n/estonian.min.js +1 -1
  27. package/i18n/finnish.js +1 -1
  28. package/i18n/finnish.min.js +1 -1
  29. package/i18n/french.js +1 -1
  30. package/i18n/french.min.js +1 -1
  31. package/i18n/georgian.js +1 -1
  32. package/i18n/georgian.min.js +1 -1
  33. package/i18n/german.js +1 -1
  34. package/i18n/german.min.js +1 -1
  35. package/i18n/greek.js +1 -1
  36. package/i18n/greek.min.js +1 -1
  37. package/i18n/hebrew.js +1 -1
  38. package/i18n/hebrew.min.js +1 -1
  39. package/i18n/hindi.js +1 -1
  40. package/i18n/hindi.min.js +1 -1
  41. package/i18n/hungarian.js +1 -1
  42. package/i18n/hungarian.min.js +1 -1
  43. package/i18n/icelandic.js +1 -1
  44. package/i18n/icelandic.min.js +1 -1
  45. package/i18n/index.js +132 -1
  46. package/i18n/index.js.map +1 -1
  47. package/i18n/index.min.js +2 -2
  48. package/i18n/indonesian.js +1 -1
  49. package/i18n/indonesian.min.js +1 -1
  50. package/i18n/italian.js +1 -1
  51. package/i18n/italian.min.js +1 -1
  52. package/i18n/japanese.js +1 -1
  53. package/i18n/japanese.min.js +1 -1
  54. package/i18n/kazakh.js +1 -1
  55. package/i18n/kazakh.min.js +1 -1
  56. package/i18n/korean.js +1 -1
  57. package/i18n/korean.min.js +1 -1
  58. package/i18n/latvian.js +1 -1
  59. package/i18n/latvian.min.js +1 -1
  60. package/i18n/lithuanian.js +1 -1
  61. package/i18n/lithuanian.min.js +1 -1
  62. package/i18n/macedonian.js +1 -1
  63. package/i18n/macedonian.min.js +1 -1
  64. package/i18n/malay.js +1 -1
  65. package/i18n/malay.min.js +1 -1
  66. package/i18n/nl-BE.js +1 -1
  67. package/i18n/nl-BE.min.js +1 -1
  68. package/i18n/norwegian.js +1 -1
  69. package/i18n/norwegian.min.js +1 -1
  70. package/i18n/persian.js +1 -1
  71. package/i18n/persian.min.js +1 -1
  72. package/i18n/philippines.js +246 -0
  73. package/i18n/philippines.js.map +1 -0
  74. package/i18n/philippines.min.js +6 -0
  75. package/i18n/polish.js +1 -1
  76. package/i18n/polish.min.js +1 -1
  77. package/i18n/portuguese-br.js +1 -1
  78. package/i18n/portuguese-br.min.js +1 -1
  79. package/i18n/portuguese.js +1 -1
  80. package/i18n/portuguese.min.js +1 -1
  81. package/i18n/romanian.js +1 -1
  82. package/i18n/romanian.min.js +1 -1
  83. package/i18n/russian.js +1 -1
  84. package/i18n/russian.min.js +1 -1
  85. package/i18n/serbian.js +1 -1
  86. package/i18n/serbian.min.js +1 -1
  87. package/i18n/simplified-chinese.js +1 -1
  88. package/i18n/simplified-chinese.min.js +1 -1
  89. package/i18n/slovak.js +1 -1
  90. package/i18n/slovak.min.js +1 -1
  91. package/i18n/spanish.js +1 -1
  92. package/i18n/spanish.min.js +1 -1
  93. package/i18n/swahili.js +1 -1
  94. package/i18n/swahili.min.js +1 -1
  95. package/i18n/swedish.js +1 -1
  96. package/i18n/swedish.min.js +1 -1
  97. package/i18n/tajik.js +1 -1
  98. package/i18n/tajik.min.js +1 -1
  99. package/i18n/telugu.js +1 -1
  100. package/i18n/telugu.min.js +1 -1
  101. package/i18n/thai.js +1 -1
  102. package/i18n/thai.min.js +1 -1
  103. package/i18n/traditional-chinese.js +1 -1
  104. package/i18n/traditional-chinese.min.js +1 -1
  105. package/i18n/turkish.js +1 -1
  106. package/i18n/turkish.min.js +1 -1
  107. package/i18n/ukrainian.js +1 -1
  108. package/i18n/ukrainian.min.js +1 -1
  109. package/i18n/urdu.js +1 -1
  110. package/i18n/urdu.min.js +2 -2
  111. package/i18n/vietnamese.js +1 -1
  112. package/i18n/vietnamese.min.js +1 -1
  113. package/i18n/welsh.js +1 -1
  114. package/i18n/welsh.min.js +1 -1
  115. package/modern.css +1 -1
  116. package/modern.fontless.css +1 -1
  117. package/modern.fontless.min.css +1 -1
  118. package/modern.min.css +1 -1
  119. package/package.json +1 -1
  120. package/plugins/bootstrap-integration.js +1 -1
  121. package/plugins/bootstrap-integration.min.js +1 -1
  122. package/plugins/bootstrap-material-integration.js +1 -1
  123. package/plugins/bootstrap-material-integration.min.js +1 -1
  124. package/survey.core.js +203 -81
  125. package/survey.core.js.map +1 -1
  126. package/survey.core.min.js +3 -3
  127. package/survey.css +1 -1
  128. package/survey.i18n.js +132 -1
  129. package/survey.i18n.js.map +1 -1
  130. package/survey.i18n.min.js +2 -2
  131. package/survey.min.css +1 -1
  132. package/themes/borderless-dark-panelless.js +1 -1
  133. package/themes/borderless-dark-panelless.min.js +1 -1
  134. package/themes/borderless-dark.js +1 -1
  135. package/themes/borderless-dark.min.js +1 -1
  136. package/themes/borderless-light-panelless..js +1 -1
  137. package/themes/borderless-light-panelless..min.js +1 -1
  138. package/themes/borderless-light.js +1 -1
  139. package/themes/borderless-light.min.js +1 -1
  140. package/themes/contrast-dark-panelless.js +1 -1
  141. package/themes/contrast-dark-panelless.min.js +1 -1
  142. package/themes/contrast-dark.js +1 -1
  143. package/themes/contrast-dark.min.js +1 -1
  144. package/themes/contrast-light-panelless.js +1 -1
  145. package/themes/contrast-light-panelless.min.js +1 -1
  146. package/themes/contrast-light.js +1 -1
  147. package/themes/contrast-light.min.js +1 -1
  148. package/themes/default-dark-panelless.js +1 -1
  149. package/themes/default-dark-panelless.min.js +1 -1
  150. package/themes/default-dark.js +1 -1
  151. package/themes/default-dark.min.js +1 -1
  152. package/themes/default-light-panelless.js +1 -1
  153. package/themes/default-light-panelless.min.js +1 -1
  154. package/themes/default-light.js +1 -1
  155. package/themes/default-light.min.js +1 -1
  156. package/themes/doubleborder-dark-panelless.js +1 -1
  157. package/themes/doubleborder-dark-panelless.min.js +1 -1
  158. package/themes/doubleborder-dark.js +1 -1
  159. package/themes/doubleborder-dark.min.js +1 -1
  160. package/themes/doubleborder-light-panelles.js +1 -1
  161. package/themes/doubleborder-light-panelles.min.js +1 -1
  162. package/themes/doubleborder-light.js +1 -1
  163. package/themes/doubleborder-light.min.js +1 -1
  164. package/themes/flat-dark-panelless.js +1 -1
  165. package/themes/flat-dark-panelless.min.js +1 -1
  166. package/themes/flat-dark.js +1 -1
  167. package/themes/flat-dark.min.js +1 -1
  168. package/themes/flat-light-panelless.js +1 -1
  169. package/themes/flat-light-panelless.min.js +1 -1
  170. package/themes/flat-light.js +1 -1
  171. package/themes/flat-light.min.js +1 -1
  172. package/themes/index.js +1 -1
  173. package/themes/index.min.js +1 -1
  174. package/themes/layered-dark-panelless.js +1 -1
  175. package/themes/layered-dark-panelless.min.js +1 -1
  176. package/themes/layered-dark.js +1 -1
  177. package/themes/layered-dark.min.js +1 -1
  178. package/themes/layered-light-panelless.js +1 -1
  179. package/themes/layered-light-panelless.min.js +1 -1
  180. package/themes/layered-light.js +1 -1
  181. package/themes/layered-light.min.js +1 -1
  182. package/themes/plain-dark-panelless.js +1 -1
  183. package/themes/plain-dark-panelless.min.js +1 -1
  184. package/themes/plain-dark.js +1 -1
  185. package/themes/plain-dark.min.js +1 -1
  186. package/themes/plain-light-panelless.js +1 -1
  187. package/themes/plain-light-panelless.min.js +1 -1
  188. package/themes/plain-light.js +1 -1
  189. package/themes/plain-light.min.js +1 -1
  190. package/themes/sharp-dark-panelless.js +1 -1
  191. package/themes/sharp-dark-panelless.min.js +1 -1
  192. package/themes/sharp-dark.js +1 -1
  193. package/themes/sharp-dark.min.js +1 -1
  194. package/themes/sharp-light-panelless.js +1 -1
  195. package/themes/sharp-light-panelless.min.js +1 -1
  196. package/themes/sharp-light.js +1 -1
  197. package/themes/sharp-light.min.js +1 -1
  198. package/themes/solid-dark-panelless.js +1 -1
  199. package/themes/solid-dark-panelless.min.js +1 -1
  200. package/themes/solid-dark.js +1 -1
  201. package/themes/solid-dark.min.js +1 -1
  202. package/themes/solid-light-panelless.js +1 -1
  203. package/themes/solid-light-panelless.min.js +1 -1
  204. package/themes/solid-light.js +1 -1
  205. package/themes/solid-light.min.js +1 -1
  206. package/themes/three-dimensional-dark-panelless.js +1 -1
  207. package/themes/three-dimensional-dark-panelless.min.js +1 -1
  208. package/themes/three-dimensional-dark.js +1 -1
  209. package/themes/three-dimensional-dark.min.js +1 -1
  210. package/themes/three-dimensional-light-panelless.js +1 -1
  211. package/themes/three-dimensional-light-panelless.min.js +1 -1
  212. package/themes/three-dimensional-light.js +1 -1
  213. package/themes/three-dimensional-light.min.js +1 -1
  214. package/ts3.4/typings/actions/action.d.ts +3 -2
  215. package/ts3.4/typings/defaultCss/defaultV2Css.d.ts +1 -0
  216. package/ts3.4/typings/list.d.ts +11 -7
  217. package/ts3.4/typings/multiSelectListModel.d.ts +5 -2
  218. package/ts3.4/typings/popup-view-model.d.ts +2 -0
  219. package/ts3.4/typings/popup.d.ts +3 -0
  220. package/ts3.4/typings/survey.d.ts +2 -1
  221. package/typings/actions/action.d.ts +3 -2
  222. package/typings/defaultCss/defaultV2Css.d.ts +1 -0
  223. package/typings/list.d.ts +11 -7
  224. package/typings/multiSelectListModel.d.ts +5 -2
  225. package/typings/popup-view-model.d.ts +3 -1
  226. package/typings/popup.d.ts +3 -0
  227. package/typings/survey.d.ts +2 -1
package/survey.core.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * surveyjs - Survey JavaScript library v1.10.5
2
+ * surveyjs - Survey JavaScript library v1.10.6
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
  */
@@ -686,13 +686,14 @@ class SignaturePad extends SignatureEventTarget {
686
686
  /*!*******************************!*\
687
687
  !*** ./src/actions/action.ts ***!
688
688
  \*******************************/
689
- /*! exports provided: createDropdownActionModel, createDropdownActionModelAdvanced, getActionDropdownButtonTarget, BaseAction, Action, ActionDropdownViewModel */
689
+ /*! exports provided: createDropdownActionModel, createDropdownActionModelAdvanced, createPopupModelWithListModel, getActionDropdownButtonTarget, BaseAction, Action, ActionDropdownViewModel */
690
690
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
691
691
 
692
692
  "use strict";
693
693
  __webpack_require__.r(__webpack_exports__);
694
694
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "createDropdownActionModel", function() { return createDropdownActionModel; });
695
695
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "createDropdownActionModelAdvanced", function() { return createDropdownActionModelAdvanced; });
696
+ /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "createPopupModelWithListModel", function() { return createPopupModelWithListModel; });
696
697
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "getActionDropdownButtonTarget", function() { return getActionDropdownButtonTarget; });
697
698
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "BaseAction", function() { return BaseAction; });
698
699
  /* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Action", function() { return Action; });
@@ -733,36 +734,53 @@ var __decorate = (undefined && undefined.__decorate) || function (decorators, ta
733
734
 
734
735
 
735
736
  function createDropdownActionModel(actionOptions, dropdownOptions, locOwner) {
736
- return createDropdownActionModelAdvanced(actionOptions, dropdownOptions, dropdownOptions, locOwner);
737
+ dropdownOptions.locOwner = locOwner;
738
+ return createDropdownActionModelAdvanced(actionOptions, dropdownOptions, dropdownOptions);
737
739
  }
738
- function createDropdownActionModelAdvanced(actionOptions, listOptions, popupOptions, locOwner) {
739
- var listModel = new _list__WEBPACK_IMPORTED_MODULE_3__["ListModel"](listOptions.items, function (item) {
740
+ function createDropdownActionModelAdvanced(actionOptions, listOptions, popupOptions) {
741
+ var _a;
742
+ var originalSelectionChanged = listOptions.onSelectionChanged;
743
+ listOptions.onSelectionChanged = function (item) {
744
+ var params = [];
745
+ for (var _i = 1; _i < arguments.length; _i++) {
746
+ params[_i - 1] = arguments[_i];
747
+ }
740
748
  if (newAction.hasTitle) {
741
749
  newAction.title = item.title;
742
750
  }
743
- listOptions.onSelectionChanged(item);
744
- innerPopupModel.toggleVisibility();
745
- }, listOptions.allowSelection, listOptions.selectedItem);
746
- listModel.locOwner = locOwner;
747
- listModel.setOnFilterStringChangedCallback(listOptions.onFilterStringChangedCallback);
748
- var options = popupOptions || {};
749
- options.onDispose = function () { listModel.dispose(); };
750
- var innerPopupModel = new _popup__WEBPACK_IMPORTED_MODULE_4__["PopupModel"]("sv-list", { model: listModel }, options);
751
- innerPopupModel.displayMode = popupOptions === null || popupOptions === void 0 ? void 0 : popupOptions.displayMode;
751
+ originalSelectionChanged(item, params);
752
+ };
753
+ var popupModel = createPopupModelWithListModel(listOptions, popupOptions);
752
754
  var newActionOptions = Object.assign({}, actionOptions, {
753
755
  component: "sv-action-bar-item-dropdown",
754
- popupModel: innerPopupModel,
756
+ popupModel: popupModel,
755
757
  action: function (action, isUserAction) {
756
758
  !!(actionOptions.action) && actionOptions.action();
757
- innerPopupModel.isFocusedContent = !isUserAction || listModel.showFilter;
758
- innerPopupModel.toggleVisibility();
759
- listModel.scrollToSelectedItem();
759
+ popupModel.isFocusedContent = popupModel.isFocusedContent || !isUserAction;
760
+ popupModel.show();
760
761
  },
761
762
  });
762
763
  var newAction = new Action(newActionOptions);
763
- newAction.data = listModel;
764
+ newAction.data = (_a = popupModel.contentComponentData) === null || _a === void 0 ? void 0 : _a.model;
764
765
  return newAction;
765
766
  }
767
+ function createPopupModelWithListModel(listOptions, popupOptions) {
768
+ var listModel = new _list__WEBPACK_IMPORTED_MODULE_3__["ListModel"](listOptions);
769
+ listModel.onSelectionChanged = function (item) {
770
+ listOptions.onSelectionChanged(item);
771
+ popupModel.hide();
772
+ };
773
+ var _popupOptions = popupOptions || {};
774
+ _popupOptions.onDispose = function () { listModel.dispose(); };
775
+ var popupModel = new _popup__WEBPACK_IMPORTED_MODULE_4__["PopupModel"]("sv-list", { model: listModel }, _popupOptions);
776
+ popupModel.isFocusedContent = listModel.showFilter;
777
+ popupModel.onShow = function () {
778
+ if (!!_popupOptions.onShow)
779
+ _popupOptions.onShow();
780
+ listModel.scrollToSelectedItem();
781
+ };
782
+ return popupModel;
783
+ }
766
784
  function getActionDropdownButtonTarget(container) {
767
785
  return container === null || container === void 0 ? void 0 : container.previousElementSibling;
768
786
  }
@@ -5990,6 +6008,7 @@ var defaultV2Css = {
5990
6008
  dragElementDecorator: "sd-drag-element__svg",
5991
6009
  iconDragElement: "#icon-v2dragelement_16x16",
5992
6010
  footer: "sd-matrixdynamic__footer",
6011
+ footerTotalCell: "sd-table__cell sd-table__cell--footer-total",
5993
6012
  emptyRowsSection: "sd-matrixdynamic__placeholder sd-question__placeholder",
5994
6013
  iconDrag: "sv-matrixdynamic__drag-icon",
5995
6014
  ghostRow: "sv-matrix-row--drag-drop-ghost-mod",
@@ -8264,10 +8283,17 @@ var DropdownListModel = /** @class */ (function (_super) {
8264
8283
  _this.question.value = item.id;
8265
8284
  if (_this.question.searchEnabled)
8266
8285
  _this.applyInputString(item);
8267
- _this.popupModel.isVisible = false;
8286
+ _this.popupModel.hide();
8268
8287
  };
8269
8288
  }
8270
- var res = new _list__WEBPACK_IMPORTED_MODULE_4__["ListModel"](visibleItems, _onSelectionChanged, false, undefined, this.listElementId);
8289
+ var listOptions = {
8290
+ items: visibleItems,
8291
+ onSelectionChanged: _onSelectionChanged,
8292
+ allowSelection: false,
8293
+ locOwner: this.question,
8294
+ elementId: this.listElementId
8295
+ };
8296
+ var res = new _list__WEBPACK_IMPORTED_MODULE_4__["ListModel"](listOptions);
8271
8297
  this.setOnTextSearchCallbackForListModel(res);
8272
8298
  res.renderElements = false;
8273
8299
  res.forceShowFilter = true;
@@ -8279,7 +8305,6 @@ var DropdownListModel = /** @class */ (function (_super) {
8279
8305
  DropdownListModel.prototype.updateAfterListModelCreated = function (model) {
8280
8306
  var _this = this;
8281
8307
  model.isItemSelected = function (action) { return !!action.selected; };
8282
- model.locOwner = this.question;
8283
8308
  model.onPropertyChanged.add(function (sender, options) {
8284
8309
  if (options.name == "hasVerticalScroller") {
8285
8310
  _this.hasScroll = options.newValue;
@@ -8311,7 +8336,7 @@ var DropdownListModel = /** @class */ (function (_super) {
8311
8336
  this.question.survey.onChoicesSearch.fire(this.question.survey, options);
8312
8337
  this.filteredItems = options.filteredChoices;
8313
8338
  if (!!this.filterString && !this.popupModel.isVisible) {
8314
- this.popupModel.isVisible = true;
8339
+ this.popupModel.show();
8315
8340
  }
8316
8341
  var updateAfterFilterStringChanged = function () {
8317
8342
  _this.setFilterStringToListModel(_this.filterString);
@@ -8532,7 +8557,7 @@ var DropdownListModel = /** @class */ (function (_super) {
8532
8557
  };
8533
8558
  DropdownListModel.prototype.onClear = function (event) {
8534
8559
  this.question.clearValue(true);
8535
- this._popupModel.isVisible = false;
8560
+ this._popupModel.hide();
8536
8561
  if (event) {
8537
8562
  event.preventDefault();
8538
8563
  event.stopPropagation();
@@ -8588,19 +8613,17 @@ var DropdownListModel = /** @class */ (function (_super) {
8588
8613
  event.stopPropagation();
8589
8614
  }
8590
8615
  else if (event.keyCode === 40) {
8591
- if (!this.popupModel.isVisible) {
8592
- this.popupModel.toggleVisibility();
8593
- }
8616
+ this.popupModel.show();
8594
8617
  this.changeSelectionWithKeyboard(false);
8595
8618
  event.preventDefault();
8596
8619
  event.stopPropagation();
8597
8620
  }
8598
8621
  if (event.keyCode === 9) {
8599
- this.popupModel.isVisible = false;
8622
+ this.popupModel.hide();
8600
8623
  }
8601
8624
  else if (!this.popupModel.isVisible && (event.keyCode === 13 || event.keyCode === 32)) {
8602
8625
  if (event.keyCode === 32) {
8603
- this.popupModel.toggleVisibility();
8626
+ this.popupModel.show();
8604
8627
  this.changeSelectionWithKeyboard(false);
8605
8628
  }
8606
8629
  if (event.keyCode === 13) {
@@ -8611,7 +8634,7 @@ var DropdownListModel = /** @class */ (function (_super) {
8611
8634
  }
8612
8635
  else if (this.popupModel.isVisible && (event.keyCode === 13 || event.keyCode === 32 && (!this.question.searchEnabled || !this.inputString))) {
8613
8636
  if (event.keyCode === 13 && this.question.searchEnabled && !this.inputString && this.question instanceof _question_dropdown__WEBPACK_IMPORTED_MODULE_6__["QuestionDropdownModel"] && !this._markdownMode && this.question.value) {
8614
- this._popupModel.isVisible = false;
8637
+ this._popupModel.hide();
8615
8638
  this.onClear(event);
8616
8639
  }
8617
8640
  else {
@@ -8627,7 +8650,7 @@ var DropdownListModel = /** @class */ (function (_super) {
8627
8650
  }
8628
8651
  }
8629
8652
  else if (event.keyCode === 27) {
8630
- this._popupModel.isVisible = false;
8653
+ this._popupModel.hide();
8631
8654
  this.hintString = "";
8632
8655
  this.onEscape();
8633
8656
  }
@@ -8655,11 +8678,11 @@ var DropdownListModel = /** @class */ (function (_super) {
8655
8678
  DropdownListModel.prototype.onBlur = function (event) {
8656
8679
  this.focused = false;
8657
8680
  if (this.popupModel.isVisible && _utils_devices__WEBPACK_IMPORTED_MODULE_9__["IsTouch"]) {
8658
- this._popupModel.isVisible = true;
8681
+ this._popupModel.show();
8659
8682
  return;
8660
8683
  }
8661
8684
  Object(_utils_utils__WEBPACK_IMPORTED_MODULE_10__["doKey2ClickBlur"])(event);
8662
- this._popupModel.isVisible = false;
8685
+ this._popupModel.hide();
8663
8686
  this.resetFilterString();
8664
8687
  this.inputString = null;
8665
8688
  this.hintString = "";
@@ -8850,7 +8873,14 @@ var DropdownMultiSelectListModel = /** @class */ (function (_super) {
8850
8873
  }
8851
8874
  };
8852
8875
  }
8853
- var res = new _multiSelectListModel__WEBPACK_IMPORTED_MODULE_3__["MultiSelectListModel"](visibleItems, _onSelectionChanged, false, undefined, this.listElementId);
8876
+ var listOptions = {
8877
+ items: visibleItems,
8878
+ onSelectionChanged: _onSelectionChanged,
8879
+ allowSelection: false,
8880
+ locOwner: this.question,
8881
+ elementId: this.listElementId
8882
+ };
8883
+ var res = new _multiSelectListModel__WEBPACK_IMPORTED_MODULE_3__["MultiSelectListModel"](listOptions);
8854
8884
  res.actions.forEach(function (a) { return a.disableTabStop = true; });
8855
8885
  this.setOnTextSearchCallbackForListModel(res);
8856
8886
  res.forceShowFilter = true;
@@ -9714,8 +9744,8 @@ __webpack_require__.r(__webpack_exports__);
9714
9744
 
9715
9745
  var Version;
9716
9746
  var ReleaseDate;
9717
- Version = "" + "1.10.5";
9718
- ReleaseDate = "" + "2024-05-20";
9747
+ Version = "" + "1.10.6";
9748
+ ReleaseDate = "" + "2024-05-28";
9719
9749
  function checkLibraryVersion(ver, libraryName) {
9720
9750
  if (Version != ver) {
9721
9751
  var str = "survey-core has version '" + Version + "' and " + libraryName
@@ -9896,7 +9926,7 @@ function checkPrefix(prefix) {
9896
9926
  /*!**************************************!*\
9897
9927
  !*** ./src/entries/core-wo-model.ts ***!
9898
9928
  \**************************************/
9899
- /*! exports provided: Version, ReleaseDate, checkLibraryVersion, setLicenseKey, slk, hasLicense, settings, Helpers, AnswerCountValidator, EmailValidator, NumericValidator, RegexValidator, SurveyValidator, TextValidator, ValidatorResult, ExpressionValidator, ValidatorRunner, ItemValue, Base, Event, EventBase, ArrayChanges, ComputedUpdater, SurveyError, SurveyElementCore, SurveyElement, DragTypeOverMeEnum, CalculatedValue, CustomError, AnswerRequiredError, OneAnswerRequiredError, RequreNumericError, ExceedSizeError, LocalizableString, LocalizableStrings, HtmlConditionItem, UrlConditionItem, ChoicesRestful, ChoicesRestfull, FunctionFactory, registerFunction, ConditionRunner, ExpressionRunner, ExpressionExecutor, Operand, Const, BinaryOperand, Variable, FunctionOperand, ArrayOperand, UnaryOperand, ConditionsParser, ProcessValue, JsonError, JsonIncorrectTypeError, JsonMetadata, JsonMetadataClass, JsonMissingTypeError, JsonMissingTypeErrorBase, JsonObject, JsonObjectProperty, JsonRequiredPropertyError, JsonUnknownPropertyError, Serializer, property, propertyArray, MatrixDropdownCell, MatrixDropdownRowModelBase, QuestionMatrixDropdownModelBase, MatrixDropdownColumn, matrixDropdownColumnTypes, QuestionMatrixDropdownRenderedCell, QuestionMatrixDropdownRenderedRow, QuestionMatrixDropdownRenderedErrorRow, QuestionMatrixDropdownRenderedTable, MatrixDropdownRowModel, QuestionMatrixDropdownModel, MatrixDynamicRowModel, QuestionMatrixDynamicModel, MatrixRowModel, MatrixCells, QuestionMatrixModel, QuestionMatrixBaseModel, MultipleTextItemModel, MultipleTextCell, MultipleTextErrorCell, MutlipleTextErrorRow, MutlipleTextRow, QuestionMultipleTextModel, MultipleTextEditorModel, PanelModel, PanelModelBase, QuestionRowModel, FlowPanelModel, PageModel, DefaultTitleModel, Question, QuestionNonValue, QuestionEmptyModel, QuestionCheckboxBase, QuestionSelectBase, QuestionCheckboxModel, QuestionTagboxModel, QuestionRankingModel, QuestionCommentModel, QuestionDropdownModel, QuestionFactory, ElementFactory, QuestionFileModel, QuestionHtmlModel, QuestionRadiogroupModel, QuestionRatingModel, RenderedRatingItem, QuestionExpressionModel, QuestionTextBase, CharacterCounter, QuestionTextModel, QuestionBooleanModel, QuestionImagePickerModel, ImageItemValue, QuestionImageModel, QuestionSignaturePadModel, QuestionPanelDynamicModel, QuestionPanelDynamicItem, SurveyTimer, SurveyTimerModel, tryFocusPage, createTOCListModel, getTocRootCss, TOCModel, SurveyProgressModel, ProgressButtons, ProgressButtonsResponsivityManager, SurveyModel, SurveyTrigger, SurveyTriggerComplete, SurveyTriggerSetValue, SurveyTriggerVisible, SurveyTriggerCopyValue, SurveyTriggerRunExpression, SurveyTriggerSkip, Trigger, PopupSurveyModel, SurveyWindowModel, TextPreProcessor, Notifier, Cover, CoverCell, dxSurveyService, englishStrings, surveyLocalization, surveyStrings, QuestionCustomWidget, CustomWidgetCollection, QuestionCustomModel, QuestionCompositeModel, ComponentQuestionJSON, ComponentCollection, StylesManager, ListModel, MultiSelectListModel, PopupModel, createDialogOptions, PopupBaseViewModel, PopupDropdownViewModel, PopupModalViewModel, createPopupViewModel, createPopupModalViewModel, DropdownListModel, DropdownMultiSelectListModel, QuestionButtonGroupModel, ButtonGroupItemModel, ButtonGroupItemValue, IsMobile, IsTouch, _setIsTouch, confirmAction, confirmActionAsync, detectIEOrEdge, doKey2ClickUp, doKey2ClickDown, doKey2ClickBlur, loadFileFromBase64, increaseHeightByContent, createSvg, chooseFiles, sanitizeEditableContent, InputMaskBase, InputMaskPattern, InputMaskNumeric, InputMaskDateTime, InputMaskCurrency, CssClassBuilder, surveyCss, defaultV2Css, defaultV2ThemeName, DragDropCore, DragDropChoices, DragDropRankingSelectToRank, defaultStandardCss, modernCss, SvgIconRegistry, SvgRegistry, SvgBundleViewModel, RendererFactory, ResponsivityManager, VerticalResponsivityManager, unwrap, getOriginalEvent, getElement, createDropdownActionModel, createDropdownActionModelAdvanced, getActionDropdownButtonTarget, BaseAction, Action, ActionDropdownViewModel, AnimationUtils, AnimationPropertyUtils, AnimationGroupUtils, AnimationProperty, AnimationBoolean, AnimationGroup, AnimationTab, AdaptiveActionContainer, defaultActionBarCss, ActionContainer, DragOrClickHelper */
9929
+ /*! exports provided: Version, ReleaseDate, checkLibraryVersion, setLicenseKey, slk, hasLicense, settings, Helpers, AnswerCountValidator, EmailValidator, NumericValidator, RegexValidator, SurveyValidator, TextValidator, ValidatorResult, ExpressionValidator, ValidatorRunner, ItemValue, Base, Event, EventBase, ArrayChanges, ComputedUpdater, SurveyError, SurveyElementCore, SurveyElement, DragTypeOverMeEnum, CalculatedValue, CustomError, AnswerRequiredError, OneAnswerRequiredError, RequreNumericError, ExceedSizeError, LocalizableString, LocalizableStrings, HtmlConditionItem, UrlConditionItem, ChoicesRestful, ChoicesRestfull, FunctionFactory, registerFunction, ConditionRunner, ExpressionRunner, ExpressionExecutor, Operand, Const, BinaryOperand, Variable, FunctionOperand, ArrayOperand, UnaryOperand, ConditionsParser, ProcessValue, JsonError, JsonIncorrectTypeError, JsonMetadata, JsonMetadataClass, JsonMissingTypeError, JsonMissingTypeErrorBase, JsonObject, JsonObjectProperty, JsonRequiredPropertyError, JsonUnknownPropertyError, Serializer, property, propertyArray, MatrixDropdownCell, MatrixDropdownRowModelBase, QuestionMatrixDropdownModelBase, MatrixDropdownColumn, matrixDropdownColumnTypes, QuestionMatrixDropdownRenderedCell, QuestionMatrixDropdownRenderedRow, QuestionMatrixDropdownRenderedErrorRow, QuestionMatrixDropdownRenderedTable, MatrixDropdownRowModel, QuestionMatrixDropdownModel, MatrixDynamicRowModel, QuestionMatrixDynamicModel, MatrixRowModel, MatrixCells, QuestionMatrixModel, QuestionMatrixBaseModel, MultipleTextItemModel, MultipleTextCell, MultipleTextErrorCell, MutlipleTextErrorRow, MutlipleTextRow, QuestionMultipleTextModel, MultipleTextEditorModel, PanelModel, PanelModelBase, QuestionRowModel, FlowPanelModel, PageModel, DefaultTitleModel, Question, QuestionNonValue, QuestionEmptyModel, QuestionCheckboxBase, QuestionSelectBase, QuestionCheckboxModel, QuestionTagboxModel, QuestionRankingModel, QuestionCommentModel, QuestionDropdownModel, QuestionFactory, ElementFactory, QuestionFileModel, QuestionHtmlModel, QuestionRadiogroupModel, QuestionRatingModel, RenderedRatingItem, QuestionExpressionModel, QuestionTextBase, CharacterCounter, QuestionTextModel, QuestionBooleanModel, QuestionImagePickerModel, ImageItemValue, QuestionImageModel, QuestionSignaturePadModel, QuestionPanelDynamicModel, QuestionPanelDynamicItem, SurveyTimer, SurveyTimerModel, tryFocusPage, createTOCListModel, getTocRootCss, TOCModel, SurveyProgressModel, ProgressButtons, ProgressButtonsResponsivityManager, SurveyModel, SurveyTrigger, SurveyTriggerComplete, SurveyTriggerSetValue, SurveyTriggerVisible, SurveyTriggerCopyValue, SurveyTriggerRunExpression, SurveyTriggerSkip, Trigger, PopupSurveyModel, SurveyWindowModel, TextPreProcessor, Notifier, Cover, CoverCell, dxSurveyService, englishStrings, surveyLocalization, surveyStrings, QuestionCustomWidget, CustomWidgetCollection, QuestionCustomModel, QuestionCompositeModel, ComponentQuestionJSON, ComponentCollection, StylesManager, ListModel, MultiSelectListModel, PopupModel, createDialogOptions, PopupBaseViewModel, PopupDropdownViewModel, PopupModalViewModel, createPopupViewModel, createPopupModalViewModel, DropdownListModel, DropdownMultiSelectListModel, QuestionButtonGroupModel, ButtonGroupItemModel, ButtonGroupItemValue, IsMobile, IsTouch, _setIsTouch, confirmAction, confirmActionAsync, detectIEOrEdge, doKey2ClickUp, doKey2ClickDown, doKey2ClickBlur, loadFileFromBase64, increaseHeightByContent, createSvg, chooseFiles, sanitizeEditableContent, InputMaskBase, InputMaskPattern, InputMaskNumeric, InputMaskDateTime, InputMaskCurrency, CssClassBuilder, surveyCss, defaultV2Css, defaultV2ThemeName, DragDropCore, DragDropChoices, DragDropRankingSelectToRank, defaultStandardCss, modernCss, SvgIconRegistry, SvgRegistry, SvgBundleViewModel, RendererFactory, ResponsivityManager, VerticalResponsivityManager, unwrap, getOriginalEvent, getElement, createDropdownActionModel, createDropdownActionModelAdvanced, createPopupModelWithListModel, getActionDropdownButtonTarget, BaseAction, Action, ActionDropdownViewModel, AnimationUtils, AnimationPropertyUtils, AnimationGroupUtils, AnimationProperty, AnimationBoolean, AnimationGroup, AnimationTab, AdaptiveActionContainer, defaultActionBarCss, ActionContainer, DragOrClickHelper */
9900
9930
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
9901
9931
 
9902
9932
  "use strict";
@@ -10333,6 +10363,8 @@ __webpack_require__.r(__webpack_exports__);
10333
10363
 
10334
10364
  /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "createDropdownActionModelAdvanced", function() { return _actions_action__WEBPACK_IMPORTED_MODULE_7__["createDropdownActionModelAdvanced"]; });
10335
10365
 
10366
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "createPopupModelWithListModel", function() { return _actions_action__WEBPACK_IMPORTED_MODULE_7__["createPopupModelWithListModel"]; });
10367
+
10336
10368
  /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getActionDropdownButtonTarget", function() { return _actions_action__WEBPACK_IMPORTED_MODULE_7__["getActionDropdownButtonTarget"]; });
10337
10369
 
10338
10370
  /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "BaseAction", function() { return _actions_action__WEBPACK_IMPORTED_MODULE_7__["BaseAction"]; });
@@ -10391,7 +10423,7 @@ __webpack_require__.r(__webpack_exports__);
10391
10423
  /*!*****************************!*\
10392
10424
  !*** ./src/entries/core.ts ***!
10393
10425
  \*****************************/
10394
- /*! exports provided: Version, ReleaseDate, checkLibraryVersion, setLicenseKey, slk, hasLicense, settings, Helpers, AnswerCountValidator, EmailValidator, NumericValidator, RegexValidator, SurveyValidator, TextValidator, ValidatorResult, ExpressionValidator, ValidatorRunner, ItemValue, Base, Event, EventBase, ArrayChanges, ComputedUpdater, SurveyError, SurveyElementCore, SurveyElement, DragTypeOverMeEnum, CalculatedValue, CustomError, AnswerRequiredError, OneAnswerRequiredError, RequreNumericError, ExceedSizeError, LocalizableString, LocalizableStrings, HtmlConditionItem, UrlConditionItem, ChoicesRestful, ChoicesRestfull, FunctionFactory, registerFunction, ConditionRunner, ExpressionRunner, ExpressionExecutor, Operand, Const, BinaryOperand, Variable, FunctionOperand, ArrayOperand, UnaryOperand, ConditionsParser, ProcessValue, JsonError, JsonIncorrectTypeError, JsonMetadata, JsonMetadataClass, JsonMissingTypeError, JsonMissingTypeErrorBase, JsonObject, JsonObjectProperty, JsonRequiredPropertyError, JsonUnknownPropertyError, Serializer, property, propertyArray, MatrixDropdownCell, MatrixDropdownRowModelBase, QuestionMatrixDropdownModelBase, MatrixDropdownColumn, matrixDropdownColumnTypes, QuestionMatrixDropdownRenderedCell, QuestionMatrixDropdownRenderedRow, QuestionMatrixDropdownRenderedErrorRow, QuestionMatrixDropdownRenderedTable, MatrixDropdownRowModel, QuestionMatrixDropdownModel, MatrixDynamicRowModel, QuestionMatrixDynamicModel, MatrixRowModel, MatrixCells, QuestionMatrixModel, QuestionMatrixBaseModel, MultipleTextItemModel, MultipleTextCell, MultipleTextErrorCell, MutlipleTextErrorRow, MutlipleTextRow, QuestionMultipleTextModel, MultipleTextEditorModel, PanelModel, PanelModelBase, QuestionRowModel, FlowPanelModel, PageModel, DefaultTitleModel, Question, QuestionNonValue, QuestionEmptyModel, QuestionCheckboxBase, QuestionSelectBase, QuestionCheckboxModel, QuestionTagboxModel, QuestionRankingModel, QuestionCommentModel, QuestionDropdownModel, QuestionFactory, ElementFactory, QuestionFileModel, QuestionHtmlModel, QuestionRadiogroupModel, QuestionRatingModel, RenderedRatingItem, QuestionExpressionModel, QuestionTextBase, CharacterCounter, QuestionTextModel, QuestionBooleanModel, QuestionImagePickerModel, ImageItemValue, QuestionImageModel, QuestionSignaturePadModel, QuestionPanelDynamicModel, QuestionPanelDynamicItem, SurveyTimer, SurveyTimerModel, tryFocusPage, createTOCListModel, getTocRootCss, TOCModel, SurveyProgressModel, ProgressButtons, ProgressButtonsResponsivityManager, SurveyModel, SurveyTrigger, SurveyTriggerComplete, SurveyTriggerSetValue, SurveyTriggerVisible, SurveyTriggerCopyValue, SurveyTriggerRunExpression, SurveyTriggerSkip, Trigger, PopupSurveyModel, SurveyWindowModel, TextPreProcessor, Notifier, Cover, CoverCell, dxSurveyService, englishStrings, surveyLocalization, surveyStrings, QuestionCustomWidget, CustomWidgetCollection, QuestionCustomModel, QuestionCompositeModel, ComponentQuestionJSON, ComponentCollection, StylesManager, ListModel, MultiSelectListModel, PopupModel, createDialogOptions, PopupBaseViewModel, PopupDropdownViewModel, PopupModalViewModel, createPopupViewModel, createPopupModalViewModel, DropdownListModel, DropdownMultiSelectListModel, QuestionButtonGroupModel, ButtonGroupItemModel, ButtonGroupItemValue, IsMobile, IsTouch, _setIsTouch, confirmAction, confirmActionAsync, detectIEOrEdge, doKey2ClickUp, doKey2ClickDown, doKey2ClickBlur, loadFileFromBase64, increaseHeightByContent, createSvg, chooseFiles, sanitizeEditableContent, InputMaskBase, InputMaskPattern, InputMaskNumeric, InputMaskDateTime, InputMaskCurrency, CssClassBuilder, surveyCss, defaultV2Css, defaultV2ThemeName, DragDropCore, DragDropChoices, DragDropRankingSelectToRank, defaultStandardCss, modernCss, SvgIconRegistry, SvgRegistry, SvgBundleViewModel, RendererFactory, ResponsivityManager, VerticalResponsivityManager, unwrap, getOriginalEvent, getElement, createDropdownActionModel, createDropdownActionModelAdvanced, getActionDropdownButtonTarget, BaseAction, Action, ActionDropdownViewModel, AnimationUtils, AnimationPropertyUtils, AnimationGroupUtils, AnimationProperty, AnimationBoolean, AnimationGroup, AnimationTab, AdaptiveActionContainer, defaultActionBarCss, ActionContainer, DragOrClickHelper, Model */
10426
+ /*! exports provided: Version, ReleaseDate, checkLibraryVersion, setLicenseKey, slk, hasLicense, settings, Helpers, AnswerCountValidator, EmailValidator, NumericValidator, RegexValidator, SurveyValidator, TextValidator, ValidatorResult, ExpressionValidator, ValidatorRunner, ItemValue, Base, Event, EventBase, ArrayChanges, ComputedUpdater, SurveyError, SurveyElementCore, SurveyElement, DragTypeOverMeEnum, CalculatedValue, CustomError, AnswerRequiredError, OneAnswerRequiredError, RequreNumericError, ExceedSizeError, LocalizableString, LocalizableStrings, HtmlConditionItem, UrlConditionItem, ChoicesRestful, ChoicesRestfull, FunctionFactory, registerFunction, ConditionRunner, ExpressionRunner, ExpressionExecutor, Operand, Const, BinaryOperand, Variable, FunctionOperand, ArrayOperand, UnaryOperand, ConditionsParser, ProcessValue, JsonError, JsonIncorrectTypeError, JsonMetadata, JsonMetadataClass, JsonMissingTypeError, JsonMissingTypeErrorBase, JsonObject, JsonObjectProperty, JsonRequiredPropertyError, JsonUnknownPropertyError, Serializer, property, propertyArray, MatrixDropdownCell, MatrixDropdownRowModelBase, QuestionMatrixDropdownModelBase, MatrixDropdownColumn, matrixDropdownColumnTypes, QuestionMatrixDropdownRenderedCell, QuestionMatrixDropdownRenderedRow, QuestionMatrixDropdownRenderedErrorRow, QuestionMatrixDropdownRenderedTable, MatrixDropdownRowModel, QuestionMatrixDropdownModel, MatrixDynamicRowModel, QuestionMatrixDynamicModel, MatrixRowModel, MatrixCells, QuestionMatrixModel, QuestionMatrixBaseModel, MultipleTextItemModel, MultipleTextCell, MultipleTextErrorCell, MutlipleTextErrorRow, MutlipleTextRow, QuestionMultipleTextModel, MultipleTextEditorModel, PanelModel, PanelModelBase, QuestionRowModel, FlowPanelModel, PageModel, DefaultTitleModel, Question, QuestionNonValue, QuestionEmptyModel, QuestionCheckboxBase, QuestionSelectBase, QuestionCheckboxModel, QuestionTagboxModel, QuestionRankingModel, QuestionCommentModel, QuestionDropdownModel, QuestionFactory, ElementFactory, QuestionFileModel, QuestionHtmlModel, QuestionRadiogroupModel, QuestionRatingModel, RenderedRatingItem, QuestionExpressionModel, QuestionTextBase, CharacterCounter, QuestionTextModel, QuestionBooleanModel, QuestionImagePickerModel, ImageItemValue, QuestionImageModel, QuestionSignaturePadModel, QuestionPanelDynamicModel, QuestionPanelDynamicItem, SurveyTimer, SurveyTimerModel, tryFocusPage, createTOCListModel, getTocRootCss, TOCModel, SurveyProgressModel, ProgressButtons, ProgressButtonsResponsivityManager, SurveyModel, SurveyTrigger, SurveyTriggerComplete, SurveyTriggerSetValue, SurveyTriggerVisible, SurveyTriggerCopyValue, SurveyTriggerRunExpression, SurveyTriggerSkip, Trigger, PopupSurveyModel, SurveyWindowModel, TextPreProcessor, Notifier, Cover, CoverCell, dxSurveyService, englishStrings, surveyLocalization, surveyStrings, QuestionCustomWidget, CustomWidgetCollection, QuestionCustomModel, QuestionCompositeModel, ComponentQuestionJSON, ComponentCollection, StylesManager, ListModel, MultiSelectListModel, PopupModel, createDialogOptions, PopupBaseViewModel, PopupDropdownViewModel, PopupModalViewModel, createPopupViewModel, createPopupModalViewModel, DropdownListModel, DropdownMultiSelectListModel, QuestionButtonGroupModel, ButtonGroupItemModel, ButtonGroupItemValue, IsMobile, IsTouch, _setIsTouch, confirmAction, confirmActionAsync, detectIEOrEdge, doKey2ClickUp, doKey2ClickDown, doKey2ClickBlur, loadFileFromBase64, increaseHeightByContent, createSvg, chooseFiles, sanitizeEditableContent, InputMaskBase, InputMaskPattern, InputMaskNumeric, InputMaskDateTime, InputMaskCurrency, CssClassBuilder, surveyCss, defaultV2Css, defaultV2ThemeName, DragDropCore, DragDropChoices, DragDropRankingSelectToRank, defaultStandardCss, modernCss, SvgIconRegistry, SvgRegistry, SvgBundleViewModel, RendererFactory, ResponsivityManager, VerticalResponsivityManager, unwrap, getOriginalEvent, getElement, createDropdownActionModel, createDropdownActionModelAdvanced, createPopupModelWithListModel, getActionDropdownButtonTarget, BaseAction, Action, ActionDropdownViewModel, AnimationUtils, AnimationPropertyUtils, AnimationGroupUtils, AnimationProperty, AnimationBoolean, AnimationGroup, AnimationTab, AdaptiveActionContainer, defaultActionBarCss, ActionContainer, DragOrClickHelper, Model */
10395
10427
  /***/ (function(module, __webpack_exports__, __webpack_require__) {
10396
10428
 
10397
10429
  "use strict";
@@ -10821,6 +10853,8 @@ __webpack_require__.r(__webpack_exports__);
10821
10853
 
10822
10854
  /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "createDropdownActionModelAdvanced", function() { return _core_wo_model__WEBPACK_IMPORTED_MODULE_0__["createDropdownActionModelAdvanced"]; });
10823
10855
 
10856
+ /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "createPopupModelWithListModel", function() { return _core_wo_model__WEBPACK_IMPORTED_MODULE_0__["createPopupModelWithListModel"]; });
10857
+
10824
10858
  /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "getActionDropdownButtonTarget", function() { return _core_wo_model__WEBPACK_IMPORTED_MODULE_0__["getActionDropdownButtonTarget"]; });
10825
10859
 
10826
10860
  /* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "BaseAction", function() { return _core_wo_model__WEBPACK_IMPORTED_MODULE_0__["BaseAction"]; });
@@ -20239,8 +20273,28 @@ var ListModel = /** @class */ (function (_super) {
20239
20273
  var level = itemValue.level || 0;
20240
20274
  return (level + 1) * ListModel.INDENT + "px";
20241
20275
  };
20242
- _this.setItems(items);
20243
- _this.selectedItem = selectedItem;
20276
+ if (Object.keys(items).indexOf("items") !== -1) {
20277
+ var options_1 = items;
20278
+ Object.keys(options_1).forEach(function (key) {
20279
+ switch (key) {
20280
+ case "items":
20281
+ _this.setItems(options_1.items);
20282
+ break;
20283
+ case "onFilterStringChangedCallback":
20284
+ _this.setOnFilterStringChangedCallback(options_1.onFilterStringChangedCallback);
20285
+ break;
20286
+ case "onTextSearchCallback":
20287
+ _this.setOnTextSearchCallback(options_1.onTextSearchCallback);
20288
+ break;
20289
+ default:
20290
+ _this[key] = options_1[key];
20291
+ }
20292
+ });
20293
+ }
20294
+ else {
20295
+ _this.setItems(items);
20296
+ _this.selectedItem = selectedItem;
20297
+ }
20244
20298
  return _this;
20245
20299
  }
20246
20300
  ListModel.prototype.hasText = function (item, filterStringInLow) {
@@ -20467,6 +20521,7 @@ var ListModel = /** @class */ (function (_super) {
20467
20521
  };
20468
20522
  ListModel.prototype.addScrollEventListener = function (handler) {
20469
20523
  if (!!handler) {
20524
+ this.removeScrollEventListener();
20470
20525
  this.scrollHandler = handler;
20471
20526
  }
20472
20527
  if (!!this.scrollHandler) {
@@ -22915,12 +22970,53 @@ var InputMaskNumeric = /** @class */ (function (_super) {
22915
22970
  if (Number.isNaN(value)) {
22916
22971
  return true;
22917
22972
  }
22973
+ if (value >= min && value <= max)
22974
+ return true;
22918
22975
  if (!matchWholeMask) {
22976
+ if (!number.hasDecimalSeparator) {
22977
+ var test_high = value;
22978
+ var test_low = value;
22979
+ if (value >= 0) {
22980
+ if (value + 1 > min && value <= max)
22981
+ return true;
22982
+ while (true) {
22983
+ test_high = test_high * 10 + 9;
22984
+ test_low = test_low * 10;
22985
+ if (test_low > max) {
22986
+ break;
22987
+ }
22988
+ if (test_high > min) {
22989
+ return true;
22990
+ }
22991
+ }
22992
+ return false;
22993
+ }
22994
+ if (value < 0) {
22995
+ if (value >= min && value - 1 < max)
22996
+ return true;
22997
+ while (true) {
22998
+ test_high = test_high * 10;
22999
+ test_low = test_low * 10 - 9;
23000
+ if (test_high < min) {
23001
+ break;
23002
+ }
23003
+ if (test_low < max) {
23004
+ return true;
23005
+ }
23006
+ }
23007
+ return false;
23008
+ }
23009
+ }
23010
+ else {
23011
+ var delta = Math.pow(0.1, (number.fractionalPart || "").length);
23012
+ if (value >= 0)
23013
+ return value + delta > min && value <= max;
23014
+ if (value < 0)
23015
+ return value >= min && value - delta < max;
23016
+ }
22919
23017
  return value >= 0 && value <= max || value < 0 && value >= min;
22920
23018
  }
22921
- else {
22922
- return value >= min && value <= max;
22923
- }
23019
+ return false;
22924
23020
  }
22925
23021
  return true;
22926
23022
  };
@@ -23316,8 +23412,8 @@ var __decorate = (undefined && undefined.__decorate) || function (decorators, ta
23316
23412
 
23317
23413
  var MultiSelectListModel = /** @class */ (function (_super) {
23318
23414
  __extends(MultiSelectListModel, _super);
23319
- function MultiSelectListModel(items, onSelectionChanged, allowSelection, selectedItems, elementId) {
23320
- var _this = _super.call(this, items, onSelectionChanged, allowSelection, undefined, elementId) || this;
23415
+ function MultiSelectListModel(options) {
23416
+ var _this = _super.call(this, options) || this;
23321
23417
  _this.onItemClick = function (item) {
23322
23418
  if (_this.isItemDisabled(item))
23323
23419
  return;
@@ -23337,7 +23433,7 @@ var MultiSelectListModel = /** @class */ (function (_super) {
23337
23433
  _this.isItemSelected = function (itemValue) {
23338
23434
  return !!_this.allowSelection && _this.selectedItems.filter(function (item) { return _this.areSameItems(item, itemValue); }).length > 0;
23339
23435
  };
23340
- _this.setSelectedItems(selectedItems || []);
23436
+ _this.setSelectedItems(options.selectedItems || []);
23341
23437
  return _this;
23342
23438
  }
23343
23439
  MultiSelectListModel.prototype.updateItemState = function () {
@@ -24967,7 +25063,7 @@ var PanelModelBase = /** @class */ (function (_super) {
24967
25063
  else {
24968
25064
  var question = element;
24969
25065
  if (!question.validate(rec.fireCallback, rec)) {
24970
- if (rec.focuseOnFirstError && rec.firstErrorQuestion == null) {
25066
+ if (!rec.firstErrorQuestion) {
24971
25067
  rec.firstErrorQuestion = question;
24972
25068
  }
24973
25069
  rec.result = true;
@@ -27343,9 +27439,11 @@ var PopupBaseViewModel = /** @class */ (function (_super) {
27343
27439
  if (!val) {
27344
27440
  _this.updateOnHiding();
27345
27441
  _this.updateIsVisible(val);
27442
+ _this.updateAfterHiding();
27346
27443
  _this._isPositionSetValue = false;
27347
27444
  }
27348
27445
  else {
27446
+ _this.updateBeforeShowing();
27349
27447
  _this.updateIsVisible(val);
27350
27448
  }
27351
27449
  }
@@ -27363,6 +27461,12 @@ var PopupBaseViewModel = /** @class */ (function (_super) {
27363
27461
  this._isVisible = val;
27364
27462
  this.onVisibilityChanged.fire(this, { isVisible: val });
27365
27463
  };
27464
+ PopupBaseViewModel.prototype.updateBeforeShowing = function () {
27465
+ this.model.onShow();
27466
+ };
27467
+ PopupBaseViewModel.prototype.updateAfterHiding = function () {
27468
+ this.model.onHiding();
27469
+ };
27366
27470
  PopupBaseViewModel.prototype.getLeaveOptions = function () {
27367
27471
  return { cssClass: "sv-popup--animate-leave" };
27368
27472
  };
@@ -27790,13 +27894,6 @@ var PopupModel = /** @class */ (function (_super) {
27790
27894
  }
27791
27895
  this.setPropertyValue("isVisible", value);
27792
27896
  this.onVisibilityChanged.fire(this, { model: this, isVisible: value });
27793
- if (this.isVisible) {
27794
- this.onShow();
27795
- }
27796
- else {
27797
- this.refreshInnerModel();
27798
- this.onHide();
27799
- }
27800
27897
  },
27801
27898
  enumerable: false,
27802
27899
  configurable: true
@@ -27804,6 +27901,14 @@ var PopupModel = /** @class */ (function (_super) {
27804
27901
  PopupModel.prototype.toggleVisibility = function () {
27805
27902
  this.isVisible = !this.isVisible;
27806
27903
  };
27904
+ PopupModel.prototype.show = function () {
27905
+ if (!this.isVisible)
27906
+ this.isVisible = true;
27907
+ };
27908
+ PopupModel.prototype.hide = function () {
27909
+ if (this.isVisible)
27910
+ this.isVisible = false;
27911
+ };
27807
27912
  PopupModel.prototype.recalculatePosition = function (isResetHeight) {
27808
27913
  this.onRecalculatePosition.fire(this, { isResetHeight: isResetHeight });
27809
27914
  };
@@ -27812,6 +27917,10 @@ var PopupModel = /** @class */ (function (_super) {
27812
27917
  this.onFooterActionsCreated.fire(this, options);
27813
27918
  return options.actions;
27814
27919
  };
27920
+ PopupModel.prototype.onHiding = function () {
27921
+ this.refreshInnerModel();
27922
+ this.onHide();
27923
+ };
27815
27924
  PopupModel.prototype.dispose = function () {
27816
27925
  _super.prototype.dispose.call(this);
27817
27926
  this.onDispose();
@@ -31477,8 +31586,7 @@ _jsonobject__WEBPACK_IMPORTED_MODULE_1__["Serializer"].addClass("question", [
31477
31586
  visibleIf: function (obj) {
31478
31587
  return obj.showCommentArea;
31479
31588
  },
31480
- serializationProperty: "locCommentText",
31481
- layout: "row",
31589
+ serializationProperty: "locCommentText"
31482
31590
  },
31483
31591
  {
31484
31592
  name: "commentPlaceholder",
@@ -32920,13 +33028,18 @@ var QuestionSelectBase = /** @class */ (function (_super) {
32920
33028
  }
32921
33029
  };
32922
33030
  QuestionSelectBase.prototype.addNewItemToVisibleChoices = function (items, isAddAll) {
33031
+ var _this = this;
32923
33032
  if (!isAddAll)
32924
33033
  return;
32925
33034
  if (!this.newItemValue) {
32926
33035
  this.newItemValue = this.createItemValue("newitem"); //TODO
32927
33036
  this.newItemValue.isGhost = true;
33037
+ this.newItemValue.registerFunctionOnPropertyValueChanged("isVisible", function () {
33038
+ _this.updateVisibleChoices();
33039
+ });
32928
33040
  }
32929
- if (!this.isUsingCarryForward && this.canShowOptionItem(this.newItemValue, isAddAll, false)) {
33041
+ if (this.newItemValue.isVisible && !this.isUsingCarryForward
33042
+ && this.canShowOptionItem(this.newItemValue, isAddAll, false)) {
32930
33043
  this.footItemsCount = 1;
32931
33044
  items.push(this.newItemValue);
32932
33045
  }
@@ -60164,7 +60277,7 @@ var SurveyModel = /** @class */ (function (_super) {
60164
60277
  _this.onPopupVisibleChanged.add(function (_, opt) {
60165
60278
  if (opt.visible) {
60166
60279
  _this.onScrollCallback = function () {
60167
- opt.popup.toggleVisibility();
60280
+ opt.popup.hide();
60168
60281
  };
60169
60282
  }
60170
60283
  else {
@@ -63472,7 +63585,7 @@ var SurveyModel = /** @class */ (function (_super) {
63472
63585
  if (this.isValidateOnComplete) {
63473
63586
  if (!this.isLastPage)
63474
63587
  return false;
63475
- return this.validate(true, true, func) !== true && !skipValidation;
63588
+ return this.validate(true, this.focusOnFirstError, func, true) !== true && !skipValidation;
63476
63589
  }
63477
63590
  return this.validateCurrentPage(func) !== true && !skipValidation;
63478
63591
  };
@@ -63604,25 +63717,27 @@ var SurveyModel = /** @class */ (function (_super) {
63604
63717
  * @see validateCurrentPage
63605
63718
  * @see validatePage
63606
63719
  */
63607
- SurveyModel.prototype.validate = function (fireCallback, focusOnFirstError, onAsyncValidation) {
63720
+ SurveyModel.prototype.validate = function (fireCallback, focusOnFirstError, onAsyncValidation, changeCurrentPage) {
63608
63721
  if (fireCallback === void 0) { fireCallback = true; }
63609
63722
  if (focusOnFirstError === void 0) { focusOnFirstError = false; }
63610
63723
  if (!!onAsyncValidation) {
63611
63724
  fireCallback = true;
63612
63725
  }
63613
63726
  var visPages = this.visiblePages;
63614
- var firstErrorPage = null;
63615
63727
  var res = true;
63616
63728
  var rec = { fireCallback: fireCallback, focuseOnFirstError: focusOnFirstError, firstErrorQuestion: null, result: false };
63617
63729
  for (var i = 0; i < visPages.length; i++) {
63618
63730
  if (!visPages[i].validate(fireCallback, focusOnFirstError, rec)) {
63619
- if (!firstErrorPage)
63620
- firstErrorPage = visPages[i];
63621
63731
  res = false;
63622
63732
  }
63623
63733
  }
63624
- if (focusOnFirstError && !!firstErrorPage && !!rec.firstErrorQuestion) {
63625
- rec.firstErrorQuestion.focus(true);
63734
+ if (!!rec.firstErrorQuestion && (focusOnFirstError || changeCurrentPage)) {
63735
+ if (focusOnFirstError) {
63736
+ rec.firstErrorQuestion.focus(true);
63737
+ }
63738
+ else {
63739
+ this.currentPage = rec.firstErrorQuestion.page;
63740
+ }
63626
63741
  }
63627
63742
  if (!res || !onAsyncValidation)
63628
63743
  return res;
@@ -65611,6 +65726,12 @@ var SurveyModel = /** @class */ (function (_super) {
65611
65726
  }
65612
65727
  this.isTriggerIsRunning = false;
65613
65728
  };
65729
+ SurveyModel.prototype.checkTriggersAndRunConditions = function (name, newValue, oldValue) {
65730
+ var triggerKeys = {};
65731
+ triggerKeys[name] = { newValue: newValue, oldValue: oldValue };
65732
+ this.runConditionOnValueChanged(name, newValue);
65733
+ this.checkTriggers(triggerKeys, false, false, name);
65734
+ };
65614
65735
  Object.defineProperty(SurveyModel.prototype, "hasRequiredValidQuestionTrigger", {
65615
65736
  get: function () {
65616
65737
  for (var i = 0; i < this.triggers.length; i++) {
@@ -66168,10 +66289,7 @@ var SurveyModel = /** @class */ (function (_super) {
66168
66289
  this.variablesHash[name] = newValue;
66169
66290
  this.notifyElementsOnAnyValueOrVariableChanged(name);
66170
66291
  if (!_helpers__WEBPACK_IMPORTED_MODULE_0__["Helpers"].isTwoValueEquals(oldValue, newValue)) {
66171
- this.runConditionOnValueChanged(name, newValue);
66172
- var triggerKeys = {};
66173
- triggerKeys[name] = { newValue: newValue, oldValue: oldValue };
66174
- this.checkTriggers(triggerKeys, false, false, name);
66292
+ this.checkTriggersAndRunConditions(name, newValue, oldValue);
66175
66293
  this.onVariableChanged.fire(this, { name: name, value: newValue });
66176
66294
  }
66177
66295
  };
@@ -66260,10 +66378,7 @@ var SurveyModel = /** @class */ (function (_super) {
66260
66378
  if (locNotification === true || this.isDisposed || this.isRunningElementsBindings)
66261
66379
  return;
66262
66380
  questionName = questionName || name;
66263
- var triggerKeys = {};
66264
- triggerKeys[name] = { newValue: newValue, oldValue: oldValue };
66265
- this.runConditionOnValueChanged(name, newValue);
66266
- this.checkTriggers(triggerKeys, false, false, name);
66381
+ this.checkTriggersAndRunConditions(name, newValue, oldValue);
66267
66382
  if (allowNotifyValueChanged)
66268
66383
  this.notifyQuestionOnValueChanged(name, newValue, questionName);
66269
66384
  if (locNotification !== "text") {
@@ -66396,7 +66511,7 @@ var SurveyModel = /** @class */ (function (_super) {
66396
66511
  }
66397
66512
  }
66398
66513
  if (!locNotification) {
66399
- this.runConditionOnValueChanged(name, this.getValue(name));
66514
+ this.checkTriggersAndRunConditions(name, this.getValue(name), undefined);
66400
66515
  }
66401
66516
  if (locNotification !== "text") {
66402
66517
  this.tryGoNextPageAutomatic(name);
@@ -68389,14 +68504,21 @@ function createTOCListModel(survey, onAction) {
68389
68504
  visible: new _base__WEBPACK_IMPORTED_MODULE_1__["ComputedUpdater"](function () { return page.isVisible && !(page["isStartPage"]); })
68390
68505
  });
68391
68506
  });
68392
- var listModel = new _list__WEBPACK_IMPORTED_MODULE_3__["ListModel"](items, function (item) {
68393
- if (!!item.action()) {
68394
- listModel.selectedItem = item;
68395
- }
68396
- }, 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]);
68507
+ var selectedItem = items.filter(function (i) { return !!survey.currentPage && i.id === survey.currentPage.name; })[0] || items.filter(function (i) { return i.id === pagesSource[0].name; })[0];
68508
+ var listOptions = {
68509
+ items: items,
68510
+ onSelectionChanged: function (item) {
68511
+ if (!!item.action()) {
68512
+ listModel.selectedItem = item;
68513
+ }
68514
+ },
68515
+ allowSelection: true,
68516
+ searchEnabled: false,
68517
+ locOwner: survey,
68518
+ selectedItem: selectedItem
68519
+ };
68520
+ var listModel = new _list__WEBPACK_IMPORTED_MODULE_3__["ListModel"](listOptions);
68397
68521
  listModel.allowSelection = false;
68398
- listModel.locOwner = survey;
68399
- listModel.searchEnabled = false;
68400
68522
  survey.onCurrentPageChanged.add(function (s, o) {
68401
68523
  listModel.selectedItem = items.filter(function (i) { return !!survey.currentPage && i.id === survey.currentPage.name; })[0];
68402
68524
  });