survey-core 1.12.8 → 1.12.10

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 (257) hide show
  1. package/defaultV2.css +41 -31
  2. package/defaultV2.css.map +1 -1
  3. package/defaultV2.fontless.css +41 -31
  4. package/defaultV2.fontless.css.map +1 -1
  5. package/defaultV2.fontless.min.css +2 -2
  6. package/defaultV2.min.css +2 -2
  7. package/i18n/arabic.js +1 -1
  8. package/i18n/arabic.min.js +1 -1
  9. package/i18n/basque.js +1 -1
  10. package/i18n/basque.min.js +1 -1
  11. package/i18n/bulgarian.js +1 -1
  12. package/i18n/bulgarian.min.js +1 -1
  13. package/i18n/catalan.js +1 -1
  14. package/i18n/catalan.min.js +1 -1
  15. package/i18n/croatian.js +1 -1
  16. package/i18n/croatian.min.js +1 -1
  17. package/i18n/czech.js +1 -1
  18. package/i18n/czech.min.js +1 -1
  19. package/i18n/danish.js +1 -1
  20. package/i18n/danish.min.js +1 -1
  21. package/i18n/dutch.js +1 -1
  22. package/i18n/dutch.min.js +1 -1
  23. package/i18n/english.js +1 -1
  24. package/i18n/english.min.js +1 -1
  25. package/i18n/estonian.js +1 -1
  26. package/i18n/estonian.min.js +1 -1
  27. package/i18n/finnish.js +1 -1
  28. package/i18n/finnish.min.js +1 -1
  29. package/i18n/french.js +1 -1
  30. package/i18n/french.min.js +1 -1
  31. package/i18n/georgian.js +1 -1
  32. package/i18n/georgian.min.js +1 -1
  33. package/i18n/german.js +1 -1
  34. package/i18n/german.min.js +1 -1
  35. package/i18n/greek.js +1 -1
  36. package/i18n/greek.min.js +1 -1
  37. package/i18n/hebrew.js +1 -1
  38. package/i18n/hebrew.min.js +1 -1
  39. package/i18n/hindi.js +1 -1
  40. package/i18n/hindi.min.js +1 -1
  41. package/i18n/hungarian.js +1 -1
  42. package/i18n/hungarian.min.js +1 -1
  43. package/i18n/icelandic.js +1 -1
  44. package/i18n/icelandic.min.js +1 -1
  45. package/i18n/index.js +1 -1
  46. package/i18n/index.min.js +1 -1
  47. package/i18n/indonesian.js +1 -1
  48. package/i18n/indonesian.min.js +1 -1
  49. package/i18n/italian.js +1 -1
  50. package/i18n/italian.min.js +1 -1
  51. package/i18n/japanese.js +1 -1
  52. package/i18n/japanese.min.js +1 -1
  53. package/i18n/kazakh.js +1 -1
  54. package/i18n/kazakh.min.js +1 -1
  55. package/i18n/korean.js +1 -1
  56. package/i18n/korean.min.js +1 -1
  57. package/i18n/latvian.js +1 -1
  58. package/i18n/latvian.min.js +1 -1
  59. package/i18n/lithuanian.js +1 -1
  60. package/i18n/lithuanian.min.js +1 -1
  61. package/i18n/macedonian.js +1 -1
  62. package/i18n/macedonian.min.js +1 -1
  63. package/i18n/malay.js +1 -1
  64. package/i18n/malay.min.js +1 -1
  65. package/i18n/nl-BE.js +1 -1
  66. package/i18n/nl-BE.min.js +1 -1
  67. package/i18n/norwegian.js +1 -1
  68. package/i18n/norwegian.min.js +1 -1
  69. package/i18n/persian.js +1 -1
  70. package/i18n/persian.min.js +1 -1
  71. package/i18n/philippines.js +1 -1
  72. package/i18n/philippines.min.js +1 -1
  73. package/i18n/polish.js +1 -1
  74. package/i18n/polish.min.js +1 -1
  75. package/i18n/portuguese-br.js +1 -1
  76. package/i18n/portuguese-br.min.js +1 -1
  77. package/i18n/portuguese.js +1 -1
  78. package/i18n/portuguese.min.js +1 -1
  79. package/i18n/romanian.js +1 -1
  80. package/i18n/romanian.min.js +1 -1
  81. package/i18n/russian.js +1 -1
  82. package/i18n/russian.min.js +1 -1
  83. package/i18n/serbian.js +1 -1
  84. package/i18n/serbian.min.js +1 -1
  85. package/i18n/simplified-chinese.js +1 -1
  86. package/i18n/simplified-chinese.min.js +1 -1
  87. package/i18n/slovak.js +1 -1
  88. package/i18n/slovak.min.js +1 -1
  89. package/i18n/spanish.js +1 -1
  90. package/i18n/spanish.min.js +1 -1
  91. package/i18n/swahili.js +1 -1
  92. package/i18n/swahili.min.js +1 -1
  93. package/i18n/swedish.js +1 -1
  94. package/i18n/swedish.min.js +1 -1
  95. package/i18n/tajik.js +1 -1
  96. package/i18n/tajik.min.js +1 -1
  97. package/i18n/telugu.js +1 -1
  98. package/i18n/telugu.min.js +1 -1
  99. package/i18n/thai.js +1 -1
  100. package/i18n/thai.min.js +1 -1
  101. package/i18n/traditional-chinese.js +1 -1
  102. package/i18n/traditional-chinese.min.js +1 -1
  103. package/i18n/turkish.js +1 -1
  104. package/i18n/turkish.min.js +1 -1
  105. package/i18n/ukrainian.js +1 -1
  106. package/i18n/ukrainian.min.js +1 -1
  107. package/i18n/urdu.js +1 -1
  108. package/i18n/urdu.min.js +1 -1
  109. package/i18n/vietnamese.js +1 -1
  110. package/i18n/vietnamese.min.js +1 -1
  111. package/i18n/welsh.js +1 -1
  112. package/i18n/welsh.min.js +1 -1
  113. package/modern.css +23 -8
  114. package/modern.css.map +1 -1
  115. package/modern.fontless.css +23 -8
  116. package/modern.fontless.css.map +1 -1
  117. package/modern.fontless.min.css +2 -2
  118. package/modern.min.css +2 -2
  119. package/package.json +1 -1
  120. package/plugins/bootstrap-integration/cssbootstrap.d.ts +2 -0
  121. package/plugins/bootstrap-integration/index.js +3 -1
  122. package/plugins/bootstrap-integration/index.js.map +1 -1
  123. package/plugins/bootstrap-integration/index.min.js +2 -2
  124. package/plugins/bootstrap-material-integration/cssbootstrapmaterial.d.ts +2 -0
  125. package/plugins/bootstrap-material-integration/index.js +3 -1
  126. package/plugins/bootstrap-material-integration/index.js.map +1 -1
  127. package/plugins/bootstrap-material-integration/index.min.js +2 -2
  128. package/survey.core.js +1711 -713
  129. package/survey.core.js.map +1 -1
  130. package/survey.core.min.js +3 -3
  131. package/survey.css +24 -9
  132. package/survey.css.map +1 -1
  133. package/survey.i18n.js +1 -1
  134. package/survey.i18n.min.js +1 -1
  135. package/survey.min.css +2 -2
  136. package/themes/borderless-dark-panelless.js +1 -1
  137. package/themes/borderless-dark-panelless.min.js +1 -1
  138. package/themes/borderless-dark.js +1 -1
  139. package/themes/borderless-dark.min.js +1 -1
  140. package/themes/borderless-light-panelless..js +1 -1
  141. package/themes/borderless-light-panelless..min.js +1 -1
  142. package/themes/borderless-light.js +1 -1
  143. package/themes/borderless-light.min.js +1 -1
  144. package/themes/contrast-dark-panelless.js +1 -1
  145. package/themes/contrast-dark-panelless.min.js +1 -1
  146. package/themes/contrast-dark.js +1 -1
  147. package/themes/contrast-dark.min.js +1 -1
  148. package/themes/contrast-light-panelless.js +1 -1
  149. package/themes/contrast-light-panelless.min.js +1 -1
  150. package/themes/contrast-light.js +1 -1
  151. package/themes/contrast-light.min.js +1 -1
  152. package/themes/default-dark-panelless.js +1 -1
  153. package/themes/default-dark-panelless.min.js +1 -1
  154. package/themes/default-dark.js +1 -1
  155. package/themes/default-dark.min.js +1 -1
  156. package/themes/default-light-panelless.js +1 -1
  157. package/themes/default-light-panelless.min.js +1 -1
  158. package/themes/default-light.js +1 -1
  159. package/themes/default-light.min.js +1 -1
  160. package/themes/doubleborder-dark-panelless.js +1 -1
  161. package/themes/doubleborder-dark-panelless.min.js +1 -1
  162. package/themes/doubleborder-dark.js +1 -1
  163. package/themes/doubleborder-dark.min.js +1 -1
  164. package/themes/doubleborder-light-panelles.js +1 -1
  165. package/themes/doubleborder-light-panelles.min.js +1 -1
  166. package/themes/doubleborder-light.js +1 -1
  167. package/themes/doubleborder-light.min.js +1 -1
  168. package/themes/flat-dark-panelless.js +1 -1
  169. package/themes/flat-dark-panelless.min.js +1 -1
  170. package/themes/flat-dark.js +1 -1
  171. package/themes/flat-dark.min.js +1 -1
  172. package/themes/flat-light-panelless.js +1 -1
  173. package/themes/flat-light-panelless.min.js +1 -1
  174. package/themes/flat-light.js +1 -1
  175. package/themes/flat-light.min.js +1 -1
  176. package/themes/index.js +1 -1
  177. package/themes/index.min.js +1 -1
  178. package/themes/layered-dark-panelless.js +1 -1
  179. package/themes/layered-dark-panelless.min.js +1 -1
  180. package/themes/layered-dark.js +1 -1
  181. package/themes/layered-dark.min.js +1 -1
  182. package/themes/layered-light-panelless.js +1 -1
  183. package/themes/layered-light-panelless.min.js +1 -1
  184. package/themes/layered-light.js +1 -1
  185. package/themes/layered-light.min.js +1 -1
  186. package/themes/plain-dark-panelless.js +1 -1
  187. package/themes/plain-dark-panelless.min.js +1 -1
  188. package/themes/plain-dark.js +1 -1
  189. package/themes/plain-dark.min.js +1 -1
  190. package/themes/plain-light-panelless.js +1 -1
  191. package/themes/plain-light-panelless.min.js +1 -1
  192. package/themes/plain-light.js +1 -1
  193. package/themes/plain-light.min.js +1 -1
  194. package/themes/sharp-dark-panelless.js +1 -1
  195. package/themes/sharp-dark-panelless.min.js +1 -1
  196. package/themes/sharp-dark.js +1 -1
  197. package/themes/sharp-dark.min.js +1 -1
  198. package/themes/sharp-light-panelless.js +1 -1
  199. package/themes/sharp-light-panelless.min.js +1 -1
  200. package/themes/sharp-light.js +1 -1
  201. package/themes/sharp-light.min.js +1 -1
  202. package/themes/solid-dark-panelless.js +1 -1
  203. package/themes/solid-dark-panelless.min.js +1 -1
  204. package/themes/solid-dark.js +1 -1
  205. package/themes/solid-dark.min.js +1 -1
  206. package/themes/solid-light-panelless.js +1 -1
  207. package/themes/solid-light-panelless.min.js +1 -1
  208. package/themes/solid-light.js +1 -1
  209. package/themes/solid-light.min.js +1 -1
  210. package/themes/three-dimensional-dark-panelless.js +1 -1
  211. package/themes/three-dimensional-dark-panelless.min.js +1 -1
  212. package/themes/three-dimensional-dark.js +1 -1
  213. package/themes/three-dimensional-dark.min.js +1 -1
  214. package/themes/three-dimensional-light-panelless.js +1 -1
  215. package/themes/three-dimensional-light-panelless.min.js +1 -1
  216. package/themes/three-dimensional-light.js +1 -1
  217. package/themes/three-dimensional-light.min.js +1 -1
  218. package/ts3.4/typings/packages/survey-core/entries/chunks/model.d.ts +1 -1
  219. package/ts3.4/typings/packages/survey-core/src/actions/action.d.ts +1 -1
  220. package/ts3.4/typings/packages/survey-core/src/base-interfaces.d.ts +3 -0
  221. package/ts3.4/typings/packages/survey-core/src/defaultCss/defaultV2Css.d.ts +2 -0
  222. package/ts3.4/typings/packages/survey-core/src/page.d.ts +6 -0
  223. package/ts3.4/typings/packages/survey-core/src/panel.d.ts +1 -0
  224. package/ts3.4/typings/packages/survey-core/src/question.d.ts +3 -0
  225. package/ts3.4/typings/packages/survey-core/src/question_buttongroup.d.ts +1 -1
  226. package/ts3.4/typings/packages/survey-core/src/question_matrixdropdownbase.d.ts +2 -0
  227. package/ts3.4/typings/packages/survey-core/src/question_signaturepad.d.ts +1 -1
  228. package/ts3.4/typings/packages/survey-core/src/settings.d.ts +1 -0
  229. package/ts3.4/typings/packages/survey-core/src/survey-element.d.ts +2 -0
  230. package/ts3.4/typings/packages/survey-core/src/survey-events-api.d.ts +4 -0
  231. package/ts3.4/typings/packages/survey-core/src/survey.d.ts +16 -1
  232. package/ts3.4/typings/packages/survey-core/src/svgbundle.d.ts +4 -0
  233. package/ts3.4/typings/packages/survey-core/src/utils/animation.d.ts +10 -0
  234. package/ts3.4/typings/packages/survey-core/src/utils/responsivity-manager.d.ts +3 -1
  235. package/ts3.4/typings/packages/survey-core/src/utils/utils.d.ts +5 -1
  236. package/ts3.4/typings/src/defaultCss/cssmodern.d.ts +2 -0
  237. package/ts3.4/typings/src/defaultCss/cssstandard.d.ts +2 -0
  238. package/typings/packages/survey-core/entries/chunks/model.d.ts +1 -1
  239. package/typings/packages/survey-core/src/actions/action.d.ts +1 -1
  240. package/typings/packages/survey-core/src/base-interfaces.d.ts +3 -0
  241. package/typings/packages/survey-core/src/defaultCss/defaultV2Css.d.ts +2 -0
  242. package/typings/packages/survey-core/src/page.d.ts +7 -0
  243. package/typings/packages/survey-core/src/panel.d.ts +1 -0
  244. package/typings/packages/survey-core/src/question.d.ts +3 -0
  245. package/typings/packages/survey-core/src/question_buttongroup.d.ts +1 -1
  246. package/typings/packages/survey-core/src/question_matrixdropdownbase.d.ts +2 -0
  247. package/typings/packages/survey-core/src/question_signaturepad.d.ts +1 -1
  248. package/typings/packages/survey-core/src/settings.d.ts +1 -0
  249. package/typings/packages/survey-core/src/survey-element.d.ts +2 -0
  250. package/typings/packages/survey-core/src/survey-events-api.d.ts +4 -0
  251. package/typings/packages/survey-core/src/survey.d.ts +16 -1
  252. package/typings/packages/survey-core/src/svgbundle.d.ts +4 -0
  253. package/typings/packages/survey-core/src/utils/animation.d.ts +10 -0
  254. package/typings/packages/survey-core/src/utils/responsivity-manager.d.ts +3 -1
  255. package/typings/packages/survey-core/src/utils/utils.d.ts +5 -1
  256. package/typings/src/defaultCss/cssmodern.d.ts +2 -0
  257. package/typings/src/defaultCss/cssstandard.d.ts +2 -0
@@ -55,6 +55,7 @@ export declare var defaultV2Css: {
55
55
  number: string;
56
56
  title: string;
57
57
  titleExpandable: string;
58
+ titleExpandableSvg: string;
58
59
  titleNumInline: string;
59
60
  titleExpanded: string;
60
61
  titleCollapsed: string;
@@ -200,6 +201,7 @@ export declare var defaultV2Css: {
200
201
  titleOnError: string;
201
202
  title: string;
202
203
  titleExpandable: string;
204
+ titleExpandableSvg: string;
203
205
  titleExpanded: string;
204
206
  titleCollapsed: string;
205
207
  titleDisabled: string;
@@ -15,6 +15,7 @@ export declare class PageModel extends PanelModelBase implements IPage {
15
15
  readonly isPage: boolean;
16
16
  readonly no: string;
17
17
  readonly cssTitleNumber: string;
18
+ getCssTitleExpandableSvg(): string;
18
19
  readonly cssRequiredText: string;
19
20
  protected canShowPageNumber(): boolean;
20
21
  protected canShowTitle(): boolean;
@@ -108,4 +109,9 @@ export declare class PageModel extends PanelModelBase implements IPage {
108
109
  dragDropMoveTo(destination: ISurveyElement, isBottom?: boolean, isEdge?: boolean): boolean;
109
110
  dragDropFinish(isCancel?: boolean): IElement;
110
111
  ensureRowsVisibility(): void;
112
+ private _isReadyForClean;
113
+ isReadyForClean: boolean;
114
+ isReadyForCleanChangedCallback: () => void;
115
+ enableOnElementRerenderedEvent(): void;
116
+ disableOnElementRerenderedEvent(): void;
111
117
  }
@@ -565,6 +565,7 @@ export declare class PanelModel extends PanelModelBase implements IElement {
565
565
  readonly hasEditButton: boolean;
566
566
  cancelPreview(): void;
567
567
  readonly cssTitle: string;
568
+ getCssTitleExpandableSvg(): string;
568
569
  readonly showErrorsAbovePanel: boolean;
569
570
  protected getCssError(cssClasses: any): string;
570
571
  protected onVisibleChanged(): void;
@@ -138,6 +138,7 @@ export declare class Question extends SurveyElement<Question> implements IQuesti
138
138
  visible: boolean;
139
139
  protected onVisibleChanged(): void;
140
140
  protected notifyStateChanged(prevState: string): void;
141
+ updateElementVisibility(): void;
141
142
  private updateIsVisibleProp;
142
143
  /*
143
144
  * Specifies whether to use display names for question values in placeholders.
@@ -719,6 +720,8 @@ export declare class Question extends SurveyElement<Question> implements IQuesti
719
720
  protected convertFuncValuetoQuestionValue(val: any): any;
720
721
  private runExpressionSetValueCore;
721
722
  private runExpressionSetValue;
723
+ protected startSetValueOnExpression(): void;
724
+ protected finishSetValueOnExpression(): void;
722
725
  private runDefaultValueExpression;
723
726
  /*
724
727
  * A comment to the selected question value. Enable the `showCommentArea` property to allow users to leave comments.
@@ -29,7 +29,7 @@ export declare class ButtonGroupItemModel {
29
29
  constructor(question: QuestionButtonGroupModel, item: ItemValue, index: number);
30
30
  readonly value: any;
31
31
  readonly iconName: string;
32
- readonly iconSize: number;
32
+ readonly iconSize: string | number;
33
33
  readonly caption: LocalizableString;
34
34
  readonly showCaption: any;
35
35
  readonly isRequired: boolean;
@@ -109,6 +109,7 @@ export declare class MatrixDropdownRowModelBase implements ISurveyData, ISurveyI
109
109
  getFilteredProperties(): any;
110
110
  private applyRowVariablesToValues;
111
111
  runCondition(values: HashTable<any>, properties: HashTable<any>, rowsVisibleIf?: string): void;
112
+ updateElementVisibility(): void;
112
113
  protected setRowsVisibleIfValues(values: any): void;
113
114
  getNamesWithDefaultValues(): Array<string>;
114
115
  clearValue(keepComment?: boolean): void;
@@ -364,6 +365,7 @@ export declare class QuestionMatrixDropdownModelBase extends QuestionMatrixBaseM
364
365
  private runFuncForCellQuestions;
365
366
  runCondition(values: HashTable<any>, properties: HashTable<any>): void;
366
367
  runTriggers(name: string, value: any): void;
368
+ updateElementVisibility(): void;
367
369
  protected shouldRunColumnExpression(): boolean;
368
370
  protected runCellsCondition(values: HashTable<any>, properties: HashTable<any>): void;
369
371
  protected runConditionsForColumns(values: HashTable<any>, properties: HashTable<any>): boolean;
@@ -11,7 +11,7 @@ export declare class QuestionSignaturePadModel extends QuestionFileModelBase {
11
11
  private getPenColorFromTheme;
12
12
  private updateColors;
13
13
  protected getCssRoot(cssClasses: any): string;
14
- protected getFormat(): "" | "image/svg+xml" | "image/jpeg";
14
+ protected getFormat(): "" | "image/jpeg" | "image/svg+xml";
15
15
  protected updateValue(): void;
16
16
  constructor(name: string);
17
17
  getType(): string;
@@ -643,4 +643,5 @@ export declare var settings: {
643
643
  * @see [settings.serialization](https://surveyjs.io/form-library/documentation/api-reference/settings#serialization)
644
644
  */
645
645
  parseNumber: (stringValue: any, numericValue: number) => number;
646
+ useLegacyIcons: boolean;
646
647
  };
@@ -126,6 +126,7 @@ export declare class SurveyElement<E = any> extends SurveyElementCore implements
126
126
  readonly parentQuestion: E;
127
127
  setParentQuestion(val: E): void;
128
128
  protected onParentQuestionChanged(): void;
129
+ updateElementVisibility(): void;
129
130
  readonly skeletonComponentName: string;
130
131
  /*
131
132
  * Gets and sets the survey element's expand state.
@@ -259,6 +260,7 @@ export declare class SurveyElement<E = any> extends SurveyElementCore implements
259
260
  readonly cssClasses: any;
260
261
  readonly cssTitleNumber: any;
261
262
  readonly cssRequiredText: any;
263
+ getCssTitleExpandableSvg(): string;
262
264
  protected calcCssClasses(css: any): any;
263
265
  protected updateElementCssCore(cssClasses: any): void;
264
266
  readonly cssError: string;
@@ -212,6 +212,10 @@ export interface ValueChangeBaseEvent extends QuestionEventMixin {
212
212
  * The `name` of the question whose value is being changed. If you use the [`valueName`](https://surveyjs.io/form-library/documentation/api-reference/text-entry-question-model#valueName) property, this parameter contains its value.
213
213
  */
214
214
  name: string;
215
+ /**
216
+ * A value that indicates what caused the value change: an [expression](https://surveyjs.io/form-library/documentation/design-survey/conditional-logic#expressions) evaluation or a run of a [trigger](https://surveyjs.io/form-library/documentation/design-survey/conditional-logic#conditional-survey-logic-triggers). If the value is changed for other reasons, this parameter is `undefined`.
217
+ */
218
+ reason: "trigger" | "expression" | undefined;
215
219
  }
216
220
  export interface ValueChangedEvent extends ValueChangeBaseEvent {
217
221
  /**
@@ -706,7 +706,7 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
706
706
  */
707
707
  onGetPageTitleActions: EventBase<SurveyModel, GetPageTitleActionsEvent>;
708
708
  /**
709
- * An event that allows you to add, delete, or modify actions in the footer of a [Panel](https://surveyjs.io/form-library/documentation/panelmodel).
709
+ * An event that allows you to add, delete, or modify actions in the footer of a [Panel](https://surveyjs.io/form-library/documentation/panelmodel). This panel may belong to a [Dynamic Panel](https://surveyjs.io/form-library/documentation/api-reference/dynamic-panel-model) or be a standalone survey element.
710
710
  * @see [IAction](https://surveyjs.io/form-library/documentation/api-reference/iaction)
711
711
  */
712
712
  onGetPanelFooterActions: EventBase<SurveyModel, GetPanelFooterActionsEvent>;
@@ -1330,6 +1330,10 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
1330
1330
  * @param callback A callback function that you can use to access the calculation result if the expression uses asynchronous functions.
1331
1331
  */
1332
1332
  runExpression(expression: string, callback?: (res: any) => void): any;
1333
+ private setValueOnExpressionCounter;
1334
+ readonly isSettingValueOnExpression: boolean;
1335
+ startSetValueOnExpression(): void;
1336
+ finishSetValueOnExpression(): void;
1333
1337
  /**
1334
1338
  * Calculates a given [expression](https://surveyjs.io/form-library/documentation/design-survey/conditional-logic#expressions) and returns `true` or `false`.
1335
1339
  * @param expression An expression to calculate.
@@ -2187,6 +2191,7 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
2187
2191
  matrixCellValidate(question: QuestionMatrixDropdownModelBase, options: MatrixCellValidateEvent): SurveyError;
2188
2192
  dynamicPanelAdded(question: QuestionPanelDynamicModel, panelIndex?: number, panel?: PanelModel): void;
2189
2193
  dynamicPanelRemoved(question: QuestionPanelDynamicModel, panelIndex: number, panel: PanelModel): void;
2194
+ private hasQuestionVisibleIndeces;
2190
2195
  dynamicPanelRemoving(question: QuestionPanelDynamicModel, panelIndex: number, panel: PanelModel): boolean;
2191
2196
  dynamicPanelItemValueChanged(question: IQuestion, options: any): void;
2192
2197
  dynamicPanelGetTabTitle(question: IQuestion, options: any): void;
@@ -2379,11 +2384,13 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
2379
2384
  * @see addNewPage
2380
2385
  */
2381
2386
  createNewPage(name: string): PageModel;
2387
+ private getValueChangeReason;
2382
2388
  protected questionOnValueChanging(valueName: string, newValue: any, questionValueName?: string): any;
2383
2389
  protected updateQuestionValue(valueName: string, newValue: any): void;
2384
2390
  private checkQuestionErrorOnValueChanged;
2385
2391
  private checkQuestionErrorOnValueChangedCore;
2386
2392
  private checkErrorsOnValueChanging;
2393
+ private fireOnValueChanged;
2387
2394
  protected notifyQuestionOnValueChanged(valueName: string, newValue: any, questionName: string): void;
2388
2395
  private isRunningElementsBindings;
2389
2396
  private updateVisibleIndexAfterBindings;
@@ -2439,6 +2446,8 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
2439
2446
  protected onLoadSurveyFromService(): void;
2440
2447
  private resetVisibleIndexes;
2441
2448
  private updateVisibleIndexes;
2449
+ private updatePageElementsVisibleIndexes;
2450
+ private getStartVisibleIndex;
2442
2451
  private updatePageVisibleIndexes;
2443
2452
  fromJSON(json: any, options?: ILoadFromJSONOptions): void;
2444
2453
  startLoadingFromJson(json?: any): void;
@@ -2772,6 +2781,10 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
2772
2781
  setTriggerValue(name: string, value: any, isVariable: boolean): void;
2773
2782
  copyTriggerValue(name: string, fromName: string, copyDisplayValue: boolean): void;
2774
2783
  triggerExecuted(trigger: Trigger): void;
2784
+ private setValueFromTriggerCounter;
2785
+ readonly isSettingValueFromTrigger: boolean;
2786
+ private startSetValueFromTrigger;
2787
+ private finishSetValueFromTrigger;
2775
2788
  private focusingQuestionInfo;
2776
2789
  private isMovingQuestion;
2777
2790
  startMovingQuestion(): void;
@@ -2831,6 +2844,7 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
2831
2844
  getContainerContent(container: LayoutElementContainer): ISurveyLayoutElement[];
2832
2845
  processPopupVisiblityChanged(question: Question, popup: PopupModel<any>, visible: boolean): void;
2833
2846
  processOpenDropdownMenu(question: Question, options: IDropdownMenuOptions): void;
2847
+ getCssTitleExpandableSvg(): string;
2834
2848
  /**
2835
2849
  * Applies a specified theme to the survey.
2836
2850
  *
@@ -2853,4 +2867,5 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
2853
2867
  addScrollEventListener(): void;
2854
2868
  removeScrollEventListener(): void;
2855
2869
  questionErrorComponent: string;
2870
+ protected registerIcons(): void;
2856
2871
  }
@@ -13,4 +13,8 @@ export declare class SvgIconRegistry {
13
13
  }
14
14
  export declare var SvgRegistry: SvgIconRegistry;
15
15
  export declare var SvgBundleViewModel: any;
16
+ export declare var svgBundle: {
17
+ V1?: string;
18
+ V2?: string;
19
+ };
16
20
  export {};
@@ -17,6 +17,15 @@ interface IGroupAnimationInfo {
17
17
  isDeletingRunning: boolean;
18
18
  isAddingRunning: boolean;
19
19
  }
20
+ interface IGroupAnimationCompareInfo<T> {
21
+ addedItems: Array<T>;
22
+ deletedItems: Array<T>;
23
+ reorderedItems: Array<{
24
+ item: T;
25
+ movedForward: boolean;
26
+ }>;
27
+ mergedItems: Array<T>;
28
+ }
20
29
  export interface IAnimationGroupConsumer<T> extends IAnimationConsumer<[
21
30
  T
22
31
  ]> {
@@ -24,6 +33,7 @@ export interface IAnimationGroupConsumer<T> extends IAnimationConsumer<[
24
33
  getEnterOptions?(item: T, info?: IGroupAnimationInfo): AnimationOptions;
25
34
  getReorderOptions?(item: T, movedForward: boolean, info?: IGroupAnimationInfo): AnimationOptions;
26
35
  getKey?: (item: T) => any;
36
+ onCompareArrays?(options: IGroupAnimationCompareInfo<T>): void;
27
37
  allowSyncRemovalAddition?: boolean;
28
38
  }
29
39
  export declare class AnimationUtils {
@@ -5,7 +5,7 @@ interface IDimensions {
5
5
  offset: number;
6
6
  }
7
7
  export declare class ResponsivityManager {
8
- protected container: HTMLDivElement;
8
+ container: HTMLDivElement;
9
9
  private model;
10
10
  private itemsSelector;
11
11
  private dotsItemSize;
@@ -17,6 +17,8 @@ export declare class ResponsivityManager {
17
17
  private separatorAddConst;
18
18
  private paddingSizeConst;
19
19
  private dotsSizeConst;
20
+ private dotsIconClass;
21
+ private iconClass;
20
22
  protected recalcMinDimensionConst: boolean;
21
23
  getComputedStyle: (elt: Element) => CSSStyleDeclaration;
22
24
  constructor(container: HTMLDivElement, model: AdaptiveActionContainer, itemsSelector: string, dotsItemSize?: number, delayedUpdateFunction?: (callback: () => void) => void);
@@ -13,7 +13,11 @@ declare function findScrollableParent(element: HTMLElement): HTMLElement;
13
13
  declare function activateLazyRenderingChecks(id: string): void;
14
14
  declare function navigateToUrl(url: string): void;
15
15
  declare function wrapUrlForBackgroundImage(url: string): string;
16
+ declare function isBase64URL(url: string): boolean;
17
+ declare const renamedIcons: any;
16
18
  declare function getIconNameFromProxy(iconName: string): string;
19
+ export declare function getNewIconName(iconName: string): string;
20
+ export declare function getCustomNewIconNameIfExists(iconName: string): string;
17
21
  declare function createSvg(size: number | string, width: number, height: number, iconName: string, svgElem: any, title: string): void;
18
22
  export declare function getSafeUrl(url: string): string;
19
23
  export declare function unwrap<T>(value: T | (() => T)): T;
@@ -69,4 +73,4 @@ export declare function setPropertiesOnElementForAnimation(el: HTMLElement, styl
69
73
  export declare function prepareElementForVerticalAnimation(el: HTMLElement): void;
70
74
  export declare function cleanHtmlElementAfterAnimation(el: HTMLElement): void;
71
75
  export declare function roundTo2Decimals(number: number): number;
72
- export { mergeValues, getElementWidth, isContainerVisible, classesToSelector, compareVersions, confirmAction, confirmActionAsync, detectIEOrEdge, detectIEBrowser, loadFileFromBase64, isMobile, isShadowDOM, getElement, isElementVisible, findScrollableParent, activateLazyRenderingChecks, navigateToUrl, wrapUrlForBackgroundImage, createSvg, getIconNameFromProxy, increaseHeightByContent, getOriginalEvent, preventDefaults, findParentByClassNames, getFirstVisibleChild, chooseFiles };
76
+ export { mergeValues, getElementWidth, isContainerVisible, classesToSelector, compareVersions, confirmAction, confirmActionAsync, detectIEOrEdge, detectIEBrowser, loadFileFromBase64, isMobile, isShadowDOM, getElement, isElementVisible, findScrollableParent, activateLazyRenderingChecks, navigateToUrl, wrapUrlForBackgroundImage, createSvg, getIconNameFromProxy, increaseHeightByContent, getOriginalEvent, preventDefaults, findParentByClassNames, getFirstVisibleChild, chooseFiles, isBase64URL, renamedIcons };
@@ -27,6 +27,7 @@ export declare var modernCss: {
27
27
  panel: {
28
28
  title: string;
29
29
  titleExpandable: string;
30
+ titleExpandableSvg: string;
30
31
  titleExpanded: string;
31
32
  titleCollapsed: string;
32
33
  titleOnError: string;
@@ -104,6 +105,7 @@ export declare var modernCss: {
104
105
  titleOnError: string;
105
106
  title: string;
106
107
  titleExpandable: string;
108
+ titleExpandableSvg: string;
107
109
  titleExpanded: string;
108
110
  titleCollapsed: string;
109
111
  icon: string;
@@ -56,6 +56,7 @@ export declare var defaultStandardCss: {
56
56
  requiredText: string;
57
57
  title: string;
58
58
  titleExpandable: string;
59
+ titleExpandableSvg: string;
59
60
  titleExpanded: string;
60
61
  titleCollapsed: string;
61
62
  number: string;
@@ -75,6 +76,7 @@ export declare var defaultStandardCss: {
75
76
  panel: {
76
77
  title: string;
77
78
  titleExpandable: string;
79
+ titleExpandableSvg: string;
78
80
  titleExpanded: string;
79
81
  titleCollapsed: string;
80
82
  titleOnError: string;
@@ -87,7 +87,7 @@ export { DropdownListModel } from "../../src/dropdownListModel";
87
87
  export { DropdownMultiSelectListModel } from "../../src/dropdownMultiSelectListModel";
88
88
  export { QuestionButtonGroupModel, ButtonGroupItemModel, ButtonGroupItemValue } from "../../src/question_buttongroup";
89
89
  export { IsMobile, IsTouch, _setIsTouch } from "../../src/utils/devices";
90
- export { confirmAction, confirmActionAsync, detectIEOrEdge, doKey2ClickUp, doKey2ClickDown, doKey2ClickBlur, loadFileFromBase64, increaseHeightByContent, createSvg, chooseFiles, sanitizeEditableContent, prepareElementForVerticalAnimation, cleanHtmlElementAfterAnimation, classesToSelector, IAttachKey2clickOptions } from "../../src/utils/utils";
90
+ export { confirmAction, confirmActionAsync, detectIEOrEdge, doKey2ClickUp, doKey2ClickDown, doKey2ClickBlur, loadFileFromBase64, increaseHeightByContent, createSvg, chooseFiles, sanitizeEditableContent, prepareElementForVerticalAnimation, cleanHtmlElementAfterAnimation, classesToSelector, IAttachKey2clickOptions, renamedIcons, getIconNameFromProxy } from "../../src/utils/utils";
91
91
  export { InputMaskBase } from "../../src/mask/mask_base";
92
92
  export { InputMaskPattern } from "../../src/mask/mask_pattern";
93
93
  export { InputMaskNumeric } from "../../src/mask/mask_numeric";
@@ -187,7 +187,7 @@ export declare abstract class BaseAction extends Base implements IAction {
187
187
  id: string;
188
188
  removePriority: number;
189
189
  iconName: string;
190
- iconSize: number;
190
+ iconSize: number | string;
191
191
  markerIconName: string;
192
192
  markerIconSize: number;
193
193
  css?: string;
@@ -172,6 +172,8 @@ export interface ISurvey extends ITextProcessor, ISurveyErrorOwner {
172
172
  dragAndDropAllow(options: DragDropAllowEvent): boolean;
173
173
  scrollElementToTop(element: ISurveyElement, question: IQuestion, page: IPage, id: string, scrollIfVisible?: boolean, scrollIntoViewOptions?: ScrollIntoViewOptions, passedRootElement?: HTMLElement, onScolledCallback?: () => void): any;
174
174
  runExpression(expression: string, callback?: (res: any) => void): any;
175
+ startSetValueOnExpression(): void;
176
+ finishSetValueOnExpression(): void;
175
177
  elementContentVisibilityChanged(element: ISurveyElement): void;
176
178
  onCorrectQuestionAnswer(question: IQuestion, options: any): void;
177
179
  processPopupVisiblityChanged(question: IQuestion, popupModel: PopupModel, visible: boolean): void;
@@ -243,6 +245,7 @@ export interface IElement extends IConditionRunner, ISurveyElement {
243
245
  dispose(): void;
244
246
  needResponsiveWidth(): boolean;
245
247
  updateRootStyle(): void;
248
+ updateElementVisibility(): void;
246
249
  }
247
250
  export interface IQuestion extends IElement, ISurveyErrorOwner {
248
251
  hasTitle: boolean;
@@ -55,6 +55,7 @@ export declare var defaultV2Css: {
55
55
  number: string;
56
56
  title: string;
57
57
  titleExpandable: string;
58
+ titleExpandableSvg: string;
58
59
  titleNumInline: string;
59
60
  titleExpanded: string;
60
61
  titleCollapsed: string;
@@ -200,6 +201,7 @@ export declare var defaultV2Css: {
200
201
  titleOnError: string;
201
202
  title: string;
202
203
  titleExpandable: string;
204
+ titleExpandableSvg: string;
203
205
  titleExpanded: string;
204
206
  titleCollapsed: string;
205
207
  titleDisabled: string;
@@ -15,6 +15,7 @@ export declare class PageModel extends PanelModelBase implements IPage {
15
15
  get isPage(): boolean;
16
16
  get no(): string;
17
17
  get cssTitleNumber(): string;
18
+ getCssTitleExpandableSvg(): string;
18
19
  get cssRequiredText(): string;
19
20
  protected canShowPageNumber(): boolean;
20
21
  protected canShowTitle(): boolean;
@@ -115,4 +116,10 @@ export declare class PageModel extends PanelModelBase implements IPage {
115
116
  dragDropMoveTo(destination: ISurveyElement, isBottom?: boolean, isEdge?: boolean): boolean;
116
117
  dragDropFinish(isCancel?: boolean): IElement;
117
118
  ensureRowsVisibility(): void;
119
+ private _isReadyForClean;
120
+ get isReadyForClean(): boolean;
121
+ set isReadyForClean(val: boolean);
122
+ isReadyForCleanChangedCallback: () => void;
123
+ enableOnElementRerenderedEvent(): void;
124
+ disableOnElementRerenderedEvent(): void;
118
125
  }
@@ -588,6 +588,7 @@ export declare class PanelModel extends PanelModelBase implements IElement {
588
588
  get hasEditButton(): boolean;
589
589
  cancelPreview(): void;
590
590
  get cssTitle(): string;
591
+ getCssTitleExpandableSvg(): string;
591
592
  get showErrorsAbovePanel(): boolean;
592
593
  protected getCssError(cssClasses: any): string;
593
594
  protected onVisibleChanged(): void;
@@ -142,6 +142,7 @@ export declare class Question extends SurveyElement<Question> implements IQuesti
142
142
  set visible(val: boolean);
143
143
  protected onVisibleChanged(): void;
144
144
  protected notifyStateChanged(prevState: string): void;
145
+ updateElementVisibility(): void;
145
146
  private updateIsVisibleProp;
146
147
  /**
147
148
  * Specifies whether to use display names for question values in placeholders.
@@ -752,6 +753,8 @@ export declare class Question extends SurveyElement<Question> implements IQuesti
752
753
  protected convertFuncValuetoQuestionValue(val: any): any;
753
754
  private runExpressionSetValueCore;
754
755
  private runExpressionSetValue;
756
+ protected startSetValueOnExpression(): void;
757
+ protected finishSetValueOnExpression(): void;
755
758
  private runDefaultValueExpression;
756
759
  /**
757
760
  * A comment to the selected question value. Enable the `showCommentArea` property to allow users to leave comments.
@@ -29,7 +29,7 @@ export declare class ButtonGroupItemModel {
29
29
  constructor(question: QuestionButtonGroupModel, item: ItemValue, index: number);
30
30
  get value(): any;
31
31
  get iconName(): string;
32
- get iconSize(): number;
32
+ get iconSize(): string | number;
33
33
  get caption(): LocalizableString;
34
34
  get showCaption(): any;
35
35
  get isRequired(): boolean;
@@ -112,6 +112,7 @@ export declare class MatrixDropdownRowModelBase implements ISurveyData, ISurveyI
112
112
  getFilteredProperties(): any;
113
113
  private applyRowVariablesToValues;
114
114
  runCondition(values: HashTable<any>, properties: HashTable<any>, rowsVisibleIf?: string): void;
115
+ updateElementVisibility(): void;
115
116
  protected setRowsVisibleIfValues(values: any): void;
116
117
  getNamesWithDefaultValues(): Array<string>;
117
118
  clearValue(keepComment?: boolean): void;
@@ -380,6 +381,7 @@ export declare class QuestionMatrixDropdownModelBase extends QuestionMatrixBaseM
380
381
  private runFuncForCellQuestions;
381
382
  runCondition(values: HashTable<any>, properties: HashTable<any>): void;
382
383
  runTriggers(name: string, value: any): void;
384
+ updateElementVisibility(): void;
383
385
  protected shouldRunColumnExpression(): boolean;
384
386
  protected runCellsCondition(values: HashTable<any>, properties: HashTable<any>): void;
385
387
  protected runConditionsForColumns(values: HashTable<any>, properties: HashTable<any>): boolean;
@@ -11,7 +11,7 @@ export declare class QuestionSignaturePadModel extends QuestionFileModelBase {
11
11
  private getPenColorFromTheme;
12
12
  private updateColors;
13
13
  protected getCssRoot(cssClasses: any): string;
14
- protected getFormat(): "" | "image/svg+xml" | "image/jpeg";
14
+ protected getFormat(): "" | "image/jpeg" | "image/svg+xml";
15
15
  protected updateValue(): void;
16
16
  constructor(name: string);
17
17
  getType(): string;
@@ -643,4 +643,5 @@ export declare var settings: {
643
643
  * @see [settings.serialization](https://surveyjs.io/form-library/documentation/api-reference/settings#serialization)
644
644
  */
645
645
  parseNumber: (stringValue: any, numericValue: number) => number;
646
+ useLegacyIcons: boolean;
646
647
  };
@@ -128,6 +128,7 @@ export declare class SurveyElement<E = any> extends SurveyElementCore implements
128
128
  get parentQuestion(): E;
129
129
  setParentQuestion(val: E): void;
130
130
  protected onParentQuestionChanged(): void;
131
+ updateElementVisibility(): void;
131
132
  get skeletonComponentName(): string;
132
133
  /**
133
134
  * Gets and sets the survey element's expand state.
@@ -264,6 +265,7 @@ export declare class SurveyElement<E = any> extends SurveyElementCore implements
264
265
  get cssClasses(): any;
265
266
  get cssTitleNumber(): any;
266
267
  get cssRequiredText(): any;
268
+ getCssTitleExpandableSvg(): string;
267
269
  protected calcCssClasses(css: any): any;
268
270
  protected updateElementCssCore(cssClasses: any): void;
269
271
  get cssError(): string;
@@ -212,6 +212,10 @@ export interface ValueChangeBaseEvent extends QuestionEventMixin {
212
212
  * The `name` of the question whose value is being changed. If you use the [`valueName`](https://surveyjs.io/form-library/documentation/api-reference/text-entry-question-model#valueName) property, this parameter contains its value.
213
213
  */
214
214
  name: string;
215
+ /**
216
+ * A value that indicates what caused the value change: an [expression](https://surveyjs.io/form-library/documentation/design-survey/conditional-logic#expressions) evaluation or a run of a [trigger](https://surveyjs.io/form-library/documentation/design-survey/conditional-logic#conditional-survey-logic-triggers). If the value is changed for other reasons, this parameter is `undefined`.
217
+ */
218
+ reason: "trigger" | "expression" | undefined;
215
219
  }
216
220
  export interface ValueChangedEvent extends ValueChangeBaseEvent {
217
221
  /**
@@ -708,7 +708,7 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
708
708
  */
709
709
  onGetPageTitleActions: EventBase<SurveyModel, GetPageTitleActionsEvent>;
710
710
  /**
711
- * An event that allows you to add, delete, or modify actions in the footer of a [Panel](https://surveyjs.io/form-library/documentation/panelmodel).
711
+ * An event that allows you to add, delete, or modify actions in the footer of a [Panel](https://surveyjs.io/form-library/documentation/panelmodel). This panel may belong to a [Dynamic Panel](https://surveyjs.io/form-library/documentation/api-reference/dynamic-panel-model) or be a standalone survey element.
712
712
  * @see [IAction](https://surveyjs.io/form-library/documentation/api-reference/iaction)
713
713
  */
714
714
  onGetPanelFooterActions: EventBase<SurveyModel, GetPanelFooterActionsEvent>;
@@ -1381,6 +1381,10 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
1381
1381
  * @param callback A callback function that you can use to access the calculation result if the expression uses asynchronous functions.
1382
1382
  */
1383
1383
  runExpression(expression: string, callback?: (res: any) => void): any;
1384
+ private setValueOnExpressionCounter;
1385
+ get isSettingValueOnExpression(): boolean;
1386
+ startSetValueOnExpression(): void;
1387
+ finishSetValueOnExpression(): void;
1384
1388
  /**
1385
1389
  * Calculates a given [expression](https://surveyjs.io/form-library/documentation/design-survey/conditional-logic#expressions) and returns `true` or `false`.
1386
1390
  * @param expression An expression to calculate.
@@ -2273,6 +2277,7 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
2273
2277
  matrixCellValidate(question: QuestionMatrixDropdownModelBase, options: MatrixCellValidateEvent): SurveyError;
2274
2278
  dynamicPanelAdded(question: QuestionPanelDynamicModel, panelIndex?: number, panel?: PanelModel): void;
2275
2279
  dynamicPanelRemoved(question: QuestionPanelDynamicModel, panelIndex: number, panel: PanelModel): void;
2280
+ private hasQuestionVisibleIndeces;
2276
2281
  dynamicPanelRemoving(question: QuestionPanelDynamicModel, panelIndex: number, panel: PanelModel): boolean;
2277
2282
  dynamicPanelItemValueChanged(question: IQuestion, options: any): void;
2278
2283
  dynamicPanelGetTabTitle(question: IQuestion, options: any): void;
@@ -2465,11 +2470,13 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
2465
2470
  * @see addNewPage
2466
2471
  */
2467
2472
  createNewPage(name: string): PageModel;
2473
+ private getValueChangeReason;
2468
2474
  protected questionOnValueChanging(valueName: string, newValue: any, questionValueName?: string): any;
2469
2475
  protected updateQuestionValue(valueName: string, newValue: any): void;
2470
2476
  private checkQuestionErrorOnValueChanged;
2471
2477
  private checkQuestionErrorOnValueChangedCore;
2472
2478
  private checkErrorsOnValueChanging;
2479
+ private fireOnValueChanged;
2473
2480
  protected notifyQuestionOnValueChanged(valueName: string, newValue: any, questionName: string): void;
2474
2481
  private isRunningElementsBindings;
2475
2482
  private updateVisibleIndexAfterBindings;
@@ -2525,6 +2532,8 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
2525
2532
  protected onLoadSurveyFromService(): void;
2526
2533
  private resetVisibleIndexes;
2527
2534
  private updateVisibleIndexes;
2535
+ private updatePageElementsVisibleIndexes;
2536
+ private getStartVisibleIndex;
2528
2537
  private updatePageVisibleIndexes;
2529
2538
  fromJSON(json: any, options?: ILoadFromJSONOptions): void;
2530
2539
  startLoadingFromJson(json?: any): void;
@@ -2871,6 +2880,10 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
2871
2880
  setTriggerValue(name: string, value: any, isVariable: boolean): void;
2872
2881
  copyTriggerValue(name: string, fromName: string, copyDisplayValue: boolean): void;
2873
2882
  triggerExecuted(trigger: Trigger): void;
2883
+ private setValueFromTriggerCounter;
2884
+ get isSettingValueFromTrigger(): boolean;
2885
+ private startSetValueFromTrigger;
2886
+ private finishSetValueFromTrigger;
2874
2887
  private focusingQuestionInfo;
2875
2888
  private isMovingQuestion;
2876
2889
  startMovingQuestion(): void;
@@ -2930,6 +2943,7 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
2930
2943
  getContainerContent(container: LayoutElementContainer): ISurveyLayoutElement[];
2931
2944
  processPopupVisiblityChanged(question: Question, popup: PopupModel<any>, visible: boolean): void;
2932
2945
  processOpenDropdownMenu(question: Question, options: IDropdownMenuOptions): void;
2946
+ getCssTitleExpandableSvg(): string;
2933
2947
  /**
2934
2948
  * Applies a specified theme to the survey.
2935
2949
  *
@@ -2952,4 +2966,5 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
2952
2966
  addScrollEventListener(): void;
2953
2967
  removeScrollEventListener(): void;
2954
2968
  questionErrorComponent: string;
2969
+ protected registerIcons(): void;
2955
2970
  }
@@ -13,4 +13,8 @@ export declare class SvgIconRegistry {
13
13
  }
14
14
  export declare var SvgRegistry: SvgIconRegistry;
15
15
  export declare var SvgBundleViewModel: any;
16
+ export declare var svgBundle: {
17
+ V1?: string;
18
+ V2?: string;
19
+ };
16
20
  export {};
@@ -16,11 +16,21 @@ interface IGroupAnimationInfo {
16
16
  isDeletingRunning: boolean;
17
17
  isAddingRunning: boolean;
18
18
  }
19
+ interface IGroupAnimationCompareInfo<T> {
20
+ addedItems: Array<T>;
21
+ deletedItems: Array<T>;
22
+ reorderedItems: Array<{
23
+ item: T;
24
+ movedForward: boolean;
25
+ }>;
26
+ mergedItems: Array<T>;
27
+ }
19
28
  export interface IAnimationGroupConsumer<T> extends IAnimationConsumer<[T]> {
20
29
  getLeaveOptions?(item: T, info?: IGroupAnimationInfo): AnimationOptions;
21
30
  getEnterOptions?(item: T, info?: IGroupAnimationInfo): AnimationOptions;
22
31
  getReorderOptions?(item: T, movedForward: boolean, info?: IGroupAnimationInfo): AnimationOptions;
23
32
  getKey?: (item: T) => any;
33
+ onCompareArrays?(options: IGroupAnimationCompareInfo<T>): void;
24
34
  allowSyncRemovalAddition?: boolean;
25
35
  }
26
36
  export declare class AnimationUtils {
@@ -5,7 +5,7 @@ interface IDimensions {
5
5
  offset: number;
6
6
  }
7
7
  export declare class ResponsivityManager {
8
- protected container: HTMLDivElement;
8
+ container: HTMLDivElement;
9
9
  private model;
10
10
  private itemsSelector;
11
11
  private dotsItemSize;
@@ -17,6 +17,8 @@ export declare class ResponsivityManager {
17
17
  private separatorAddConst;
18
18
  private paddingSizeConst;
19
19
  private dotsSizeConst;
20
+ private dotsIconClass;
21
+ private iconClass;
20
22
  protected recalcMinDimensionConst: boolean;
21
23
  getComputedStyle: (elt: Element) => CSSStyleDeclaration;
22
24
  constructor(container: HTMLDivElement, model: AdaptiveActionContainer, itemsSelector: string, dotsItemSize?: number, delayedUpdateFunction?: (callback: () => void) => void);
@@ -13,7 +13,11 @@ declare function findScrollableParent(element: HTMLElement): HTMLElement;
13
13
  declare function activateLazyRenderingChecks(id: string): void;
14
14
  declare function navigateToUrl(url: string): void;
15
15
  declare function wrapUrlForBackgroundImage(url: string): string;
16
+ declare function isBase64URL(url: string): boolean;
17
+ declare const renamedIcons: any;
16
18
  declare function getIconNameFromProxy(iconName: string): string;
19
+ export declare function getNewIconName(iconName: string): string;
20
+ export declare function getCustomNewIconNameIfExists(iconName: string): string;
17
21
  declare function createSvg(size: number | string, width: number, height: number, iconName: string, svgElem: any, title: string): void;
18
22
  export declare function getSafeUrl(url: string): string;
19
23
  export declare function unwrap<T>(value: T | (() => T)): T;
@@ -69,4 +73,4 @@ export declare function setPropertiesOnElementForAnimation(el: HTMLElement, styl
69
73
  export declare function prepareElementForVerticalAnimation(el: HTMLElement): void;
70
74
  export declare function cleanHtmlElementAfterAnimation(el: HTMLElement): void;
71
75
  export declare function roundTo2Decimals(number: number): number;
72
- export { mergeValues, getElementWidth, isContainerVisible, classesToSelector, compareVersions, confirmAction, confirmActionAsync, detectIEOrEdge, detectIEBrowser, loadFileFromBase64, isMobile, isShadowDOM, getElement, isElementVisible, findScrollableParent, activateLazyRenderingChecks, navigateToUrl, wrapUrlForBackgroundImage, createSvg, getIconNameFromProxy, increaseHeightByContent, getOriginalEvent, preventDefaults, findParentByClassNames, getFirstVisibleChild, chooseFiles };
76
+ export { mergeValues, getElementWidth, isContainerVisible, classesToSelector, compareVersions, confirmAction, confirmActionAsync, detectIEOrEdge, detectIEBrowser, loadFileFromBase64, isMobile, isShadowDOM, getElement, isElementVisible, findScrollableParent, activateLazyRenderingChecks, navigateToUrl, wrapUrlForBackgroundImage, createSvg, getIconNameFromProxy, increaseHeightByContent, getOriginalEvent, preventDefaults, findParentByClassNames, getFirstVisibleChild, chooseFiles, isBase64URL, renamedIcons };