survey-core 1.10.2 → 1.10.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (244) hide show
  1. package/defaultV2.css +57 -19
  2. package/defaultV2.css.map +1 -1
  3. package/defaultV2.fontless.css +57 -19
  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 +3 -3
  24. package/i18n/english.js.map +1 -1
  25. package/i18n/english.min.js +2 -2
  26. package/i18n/estonian.js +1 -1
  27. package/i18n/estonian.min.js +1 -1
  28. package/i18n/finnish.js +1 -1
  29. package/i18n/finnish.min.js +1 -1
  30. package/i18n/french.js +1 -1
  31. package/i18n/french.min.js +1 -1
  32. package/i18n/georgian.js +1 -1
  33. package/i18n/georgian.min.js +1 -1
  34. package/i18n/german.js +1 -1
  35. package/i18n/german.min.js +1 -1
  36. package/i18n/greek.js +1 -1
  37. package/i18n/greek.min.js +1 -1
  38. package/i18n/hebrew.js +1 -1
  39. package/i18n/hebrew.min.js +1 -1
  40. package/i18n/hindi.js +1 -1
  41. package/i18n/hindi.min.js +1 -1
  42. package/i18n/hungarian.js +1 -1
  43. package/i18n/hungarian.min.js +1 -1
  44. package/i18n/icelandic.js +1 -1
  45. package/i18n/icelandic.min.js +1 -1
  46. package/i18n/index.js +1 -1
  47. package/i18n/index.min.js +1 -1
  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/polish.js +1 -1
  73. package/i18n/polish.min.js +1 -1
  74. package/i18n/portuguese-br.js +1 -1
  75. package/i18n/portuguese-br.min.js +1 -1
  76. package/i18n/portuguese.js +1 -1
  77. package/i18n/portuguese.min.js +1 -1
  78. package/i18n/romanian.js +1 -1
  79. package/i18n/romanian.min.js +1 -1
  80. package/i18n/russian.js +1 -1
  81. package/i18n/russian.min.js +1 -1
  82. package/i18n/serbian.js +1 -1
  83. package/i18n/serbian.min.js +1 -1
  84. package/i18n/simplified-chinese.js +1 -1
  85. package/i18n/simplified-chinese.min.js +1 -1
  86. package/i18n/slovak.js +1 -1
  87. package/i18n/slovak.min.js +1 -1
  88. package/i18n/spanish.js +1 -1
  89. package/i18n/spanish.min.js +1 -1
  90. package/i18n/swahili.js +1 -1
  91. package/i18n/swahili.min.js +1 -1
  92. package/i18n/swedish.js +1 -1
  93. package/i18n/swedish.min.js +1 -1
  94. package/i18n/tajik.js +1 -1
  95. package/i18n/tajik.min.js +1 -1
  96. package/i18n/telugu.js +1 -1
  97. package/i18n/telugu.min.js +1 -1
  98. package/i18n/thai.js +1 -1
  99. package/i18n/thai.min.js +1 -1
  100. package/i18n/traditional-chinese.js +1 -1
  101. package/i18n/traditional-chinese.min.js +1 -1
  102. package/i18n/turkish.js +1 -1
  103. package/i18n/turkish.min.js +1 -1
  104. package/i18n/ukrainian.js +1 -1
  105. package/i18n/ukrainian.min.js +1 -1
  106. package/i18n/urdu.js +1 -1
  107. package/i18n/urdu.min.js +1 -1
  108. package/i18n/vietnamese.js +1 -1
  109. package/i18n/vietnamese.min.js +1 -1
  110. package/i18n/welsh.js +1 -1
  111. package/i18n/welsh.min.js +1 -1
  112. package/modern.css +13 -1
  113. package/modern.css.map +1 -1
  114. package/modern.fontless.css +13 -1
  115. package/modern.fontless.css.map +1 -1
  116. package/modern.fontless.min.css +2 -2
  117. package/modern.min.css +2 -2
  118. package/package.json +1 -1
  119. package/plugins/bootstrap-integration.js +1 -1
  120. package/plugins/bootstrap-integration.min.js +1 -1
  121. package/plugins/bootstrap-material-integration.js +1 -1
  122. package/plugins/bootstrap-material-integration.min.js +1 -1
  123. package/survey.core.js +316 -167
  124. package/survey.core.js.map +1 -1
  125. package/survey.core.min.js +3 -3
  126. package/survey.css +387 -1
  127. package/survey.css.map +1 -1
  128. package/survey.i18n.js +1 -1
  129. package/survey.i18n.min.js +1 -1
  130. package/survey.min.css +2 -2
  131. package/themes/borderless-dark-panelless.js +1 -1
  132. package/themes/borderless-dark-panelless.min.js +1 -1
  133. package/themes/borderless-dark.js +1 -1
  134. package/themes/borderless-dark.min.js +1 -1
  135. package/themes/borderless-light-panelless..js +1 -1
  136. package/themes/borderless-light-panelless..min.js +1 -1
  137. package/themes/borderless-light.js +1 -1
  138. package/themes/borderless-light.min.js +1 -1
  139. package/themes/contrast-dark-panelless.js +1 -1
  140. package/themes/contrast-dark-panelless.min.js +1 -1
  141. package/themes/contrast-dark.js +1 -1
  142. package/themes/contrast-dark.min.js +1 -1
  143. package/themes/contrast-light-panelless.js +1 -1
  144. package/themes/contrast-light-panelless.min.js +1 -1
  145. package/themes/contrast-light.js +1 -1
  146. package/themes/contrast-light.min.js +1 -1
  147. package/themes/default-dark-panelless.js +1 -1
  148. package/themes/default-dark-panelless.min.js +1 -1
  149. package/themes/default-dark.js +1 -1
  150. package/themes/default-dark.min.js +1 -1
  151. package/themes/default-light-panelless.js +1 -1
  152. package/themes/default-light-panelless.min.js +1 -1
  153. package/themes/default-light.js +1 -1
  154. package/themes/default-light.min.js +1 -1
  155. package/themes/doubleborder-dark-panelless.js +1 -1
  156. package/themes/doubleborder-dark-panelless.min.js +1 -1
  157. package/themes/doubleborder-dark.js +1 -1
  158. package/themes/doubleborder-dark.min.js +1 -1
  159. package/themes/doubleborder-light-panelles.js +1 -1
  160. package/themes/doubleborder-light-panelles.min.js +1 -1
  161. package/themes/doubleborder-light.js +1 -1
  162. package/themes/doubleborder-light.min.js +1 -1
  163. package/themes/flat-dark-panelless.js +1 -1
  164. package/themes/flat-dark-panelless.min.js +1 -1
  165. package/themes/flat-dark.js +1 -1
  166. package/themes/flat-dark.min.js +1 -1
  167. package/themes/flat-light-panelless.js +1 -1
  168. package/themes/flat-light-panelless.min.js +1 -1
  169. package/themes/flat-light.js +1 -1
  170. package/themes/flat-light.min.js +1 -1
  171. package/themes/index.js +1 -1
  172. package/themes/index.min.js +1 -1
  173. package/themes/layered-dark-panelless.js +1 -1
  174. package/themes/layered-dark-panelless.min.js +1 -1
  175. package/themes/layered-dark.js +1 -1
  176. package/themes/layered-dark.min.js +1 -1
  177. package/themes/layered-light-panelless.js +1 -1
  178. package/themes/layered-light-panelless.min.js +1 -1
  179. package/themes/layered-light.js +1 -1
  180. package/themes/layered-light.min.js +1 -1
  181. package/themes/plain-dark-panelless.js +1 -1
  182. package/themes/plain-dark-panelless.min.js +1 -1
  183. package/themes/plain-dark.js +1 -1
  184. package/themes/plain-dark.min.js +1 -1
  185. package/themes/plain-light-panelless.js +1 -1
  186. package/themes/plain-light-panelless.min.js +1 -1
  187. package/themes/plain-light.js +1 -1
  188. package/themes/plain-light.min.js +1 -1
  189. package/themes/sharp-dark-panelless.js +1 -1
  190. package/themes/sharp-dark-panelless.min.js +1 -1
  191. package/themes/sharp-dark.js +1 -1
  192. package/themes/sharp-dark.min.js +1 -1
  193. package/themes/sharp-light-panelless.js +1 -1
  194. package/themes/sharp-light-panelless.min.js +1 -1
  195. package/themes/sharp-light.js +1 -1
  196. package/themes/sharp-light.min.js +1 -1
  197. package/themes/solid-dark-panelless.js +1 -1
  198. package/themes/solid-dark-panelless.min.js +1 -1
  199. package/themes/solid-dark.js +1 -1
  200. package/themes/solid-dark.min.js +1 -1
  201. package/themes/solid-light-panelless.js +1 -1
  202. package/themes/solid-light-panelless.min.js +1 -1
  203. package/themes/solid-light.js +1 -1
  204. package/themes/solid-light.min.js +1 -1
  205. package/themes/three-dimensional-dark-panelless.js +1 -1
  206. package/themes/three-dimensional-dark-panelless.min.js +1 -1
  207. package/themes/three-dimensional-dark.js +1 -1
  208. package/themes/three-dimensional-dark.min.js +1 -1
  209. package/themes/three-dimensional-light-panelless.js +1 -1
  210. package/themes/three-dimensional-light-panelless.min.js +1 -1
  211. package/themes/three-dimensional-light.js +1 -1
  212. package/themes/three-dimensional-light.min.js +1 -1
  213. package/ts3.4/typings/base.d.ts +6 -2
  214. package/ts3.4/typings/defaultCss/defaultV2Css.d.ts +2 -0
  215. package/ts3.4/typings/dragdrop/dom-adapter.d.ts +2 -0
  216. package/ts3.4/typings/entries/chunks/model.d.ts +1 -1
  217. package/ts3.4/typings/mask/mask_numeric.d.ts +1 -0
  218. package/ts3.4/typings/popup.d.ts +8 -12
  219. package/ts3.4/typings/question_baseselect.d.ts +1 -1
  220. package/ts3.4/typings/question_boolean.d.ts +5 -0
  221. package/ts3.4/typings/question_file.d.ts +0 -1
  222. package/ts3.4/typings/question_matrixdynamic.d.ts +1 -0
  223. package/ts3.4/typings/question_radiogroup.d.ts +1 -0
  224. package/ts3.4/typings/question_rating.d.ts +2 -0
  225. package/ts3.4/typings/question_tagbox.d.ts +2 -0
  226. package/ts3.4/typings/rendererFactory.d.ts +3 -2
  227. package/ts3.4/typings/settings.d.ts +8 -0
  228. package/ts3.4/typings/utils/animation.d.ts +1 -0
  229. package/typings/base.d.ts +6 -2
  230. package/typings/defaultCss/defaultV2Css.d.ts +2 -0
  231. package/typings/dragdrop/dom-adapter.d.ts +2 -0
  232. package/typings/entries/chunks/model.d.ts +1 -1
  233. package/typings/mask/mask_numeric.d.ts +1 -0
  234. package/typings/popup.d.ts +8 -12
  235. package/typings/question_baseselect.d.ts +1 -1
  236. package/typings/question_boolean.d.ts +5 -0
  237. package/typings/question_file.d.ts +0 -1
  238. package/typings/question_matrixdynamic.d.ts +1 -0
  239. package/typings/question_radiogroup.d.ts +1 -0
  240. package/typings/question_rating.d.ts +2 -0
  241. package/typings/question_tagbox.d.ts +2 -0
  242. package/typings/rendererFactory.d.ts +3 -2
  243. package/typings/settings.d.ts +8 -0
  244. package/typings/utils/animation.d.ts +1 -0
@@ -4,8 +4,8 @@ import { VerticalPosition, HorizontalPosition, PositionMode } from "./utils/popu
4
4
  export interface IPopupOptionsBase {
5
5
  onHide?: () => void;
6
6
  onShow?: () => void;
7
- onApply?: () => boolean;
8
7
  onCancel?: () => void;
8
+ onDispose?: () => void;
9
9
  cssClass?: string;
10
10
  title?: string;
11
11
  verticalPosition?: VerticalPosition;
@@ -20,15 +20,15 @@ export interface IDialogOptions extends IPopupOptionsBase {
20
20
  onApply: () => boolean;
21
21
  isFocusedContent?: boolean;
22
22
  }
23
- export interface IPopupModel<T = any> extends IDialogOptions {
24
- contentComponentName: string;
25
- contentComponentData: T;
26
- }
27
- export declare class PopupModel<T = any> extends Base {
28
- private onDispose;
23
+ export declare class PopupModel<T = any> extends Base implements IPopupOptionsBase {
29
24
  setWidthByTarget: boolean;
30
25
  focusFirstInputSelector: string;
31
26
  locale: string;
27
+ onCancel: () => void;
28
+ onApply: () => boolean;
29
+ onHide: () => void;
30
+ onShow: () => void;
31
+ onDispose: () => void;
32
32
  contentComponentName: string;
33
33
  contentComponentData: T;
34
34
  verticalPosition: VerticalPosition;
@@ -37,10 +37,6 @@ export declare class PopupModel<T = any> extends Base {
37
37
  isModal: boolean;
38
38
  isFocusedContent: boolean;
39
39
  isFocusedContainer: boolean;
40
- onCancel: () => void;
41
- onApply: () => boolean;
42
- onHide: () => void;
43
- onShow: () => void;
44
40
  cssClass: string;
45
41
  title: string;
46
42
  overlayDisplayMode: "auto" | "overlay" | "dropdown-overlay";
@@ -50,7 +46,7 @@ export declare class PopupModel<T = any> extends Base {
50
46
  onFooterActionsCreated: EventBase<Base>;
51
47
  onRecalculatePosition: EventBase<Base>;
52
48
  private refreshInnerModel;
53
- constructor(contentComponentName: string, contentComponentData: T, verticalPosition?: VerticalPosition, horizontalPosition?: HorizontalPosition, showPointer?: boolean, isModal?: boolean, onCancel?: () => void, onApply?: () => boolean, onHide?: () => void, onShow?: () => void, cssClass?: string, title?: string, onDispose?: () => void);
49
+ constructor(contentComponentName: string, contentComponentData: T, option1?: IPopupOptionsBase | any, option2?: any);
54
50
  isVisible: boolean;
55
51
  toggleVisibility(): void;
56
52
  recalculatePosition(isResetHeight: boolean): void;
@@ -167,7 +167,7 @@ export declare class QuestionSelectBase extends Question {
167
167
  private setConditionalChoicesRunner;
168
168
  private setConditionalEnableChoicesRunner;
169
169
  private canSurveyChangeItemVisibility;
170
- changeItemVisisbility(): (item: ItemValue, val: boolean) => boolean;
170
+ private changeItemVisibility;
171
171
  private runConditionsForItems;
172
172
  protected getHasOther(val: any): boolean;
173
173
  protected getIsItemValue(val: any, item: ItemValue): boolean;
@@ -28,6 +28,11 @@ export declare class QuestionBooleanModel extends Question {
28
28
  getDefaultValue(): any;
29
29
  readonly locTitle: LocalizableString;
30
30
  readonly labelRenderedAriaID: string;
31
+ leftAnswerElement: HTMLElement;
32
+ thumbMargin: string;
33
+ updateThumbMargin(): void;
34
+ afterRender(el: HTMLElement): void;
35
+ beforeDestroyQuestionElement(el: HTMLElement): void;
31
36
  showTitle: boolean;
32
37
  label: string;
33
38
  readonly isLabelRendered: boolean;
@@ -228,7 +228,6 @@ export declare class QuestionFileModel extends QuestionFileModelBase {
228
228
  private onChange;
229
229
  protected onChangeQuestionValue(newValue: any): void;
230
230
  protected calcCssClasses(css: any): any;
231
- updateElementCss(reNew?: boolean): void;
232
231
  onSurveyLoad(): void;
233
232
  protected needResponsiveness(): boolean;
234
233
  protected supportResponsiveness(): boolean;
@@ -241,6 +241,7 @@ export declare class QuestionMatrixDynamicModel extends QuestionMatrixDropdownMo
241
241
  private lastDeletedRow;
242
242
  private getInsertedDeletedIndex;
243
243
  private isEditingObjectValueChanged;
244
+ updateValueFromSurvey(newValue: any, clearData?: boolean): void;
244
245
  protected onBeforeValueChanged(val: any): void;
245
246
  protected createNewValue(): any;
246
247
  protected deleteRowValue(newValue: any, row: MatrixDropdownRowModelBase): any;
@@ -24,6 +24,7 @@ export declare class QuestionRadiogroupModel extends QuestionCheckboxBase {
24
24
  readonly canShowClearButton: boolean;
25
25
  readonly clearButtonCaption: string;
26
26
  supportGoNextPageAutomatic(): boolean;
27
+ getConditionJson(operator?: string, path?: string): any;
27
28
  protected setNewComment(newValue: string): void;
28
29
  readonly showClearButtonInContent: boolean;
29
30
  clickItemHandler(item: ItemValue): void;
@@ -172,6 +172,8 @@ export declare class QuestionRatingModel extends Question {
172
172
  * @see rateType
173
173
  */
174
174
  displayMode: "dropdown" | "buttons" | "auto";
175
+ private updateRenderAsBasedOnDisplayMode;
176
+ onSurveyLoad(): void;
175
177
  /**
176
178
  * Specifies the alignment of [`minRateDescription`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#minRateDescription) and [`maxRateDescription`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#maxRateDescription) texts.
177
179
  *
@@ -17,6 +17,8 @@ export declare class QuestionTagboxModel extends QuestionCheckboxModel {
17
17
  private updateReadOnlyText;
18
18
  protected getDefaultItemComponent(): string;
19
19
  onSurveyLoad(): void;
20
+ protected onSetData(): void;
21
+ private createDropdownListModel;
20
22
  /**
21
23
  * Specifies a comparison operation used to filter the drop-down list. Applies only if [`searchEnabled`](#searchEnabled) is `true`.
22
24
  *
@@ -2,9 +2,10 @@ import { Question } from "./question";
2
2
  export declare class RendererFactory {
3
3
  static Instance: RendererFactory;
4
4
  private renderersHash;
5
+ private defaultHash;
5
6
  unregisterRenderer(questionType: string, rendererAs: string): void;
6
- registerRenderer(questionType: string, renderAs: string, renderer: any): void;
7
- getRenderer(questionType: string, renderAs: string): any;
7
+ registerRenderer(questionType: string, renderAs: string, renderer: any, useAsDefault?: boolean): void;
8
+ getRenderer(questionType: string, renderAs: string): string;
8
9
  getRendererByQuestion(question: Question): any;
9
10
  clear(): void;
10
11
  }
@@ -325,6 +325,7 @@ export declare var settings: {
325
325
  * A separator used in a shorthand notation that specifies a value and display text for an [`ItemValue`](https://surveyjs.io/form-library/documentation/api-reference/itemvalue) object: `"value|text"`.
326
326
  *
327
327
  * Default value: `"|"`
328
+ * @see [settings.choicesSeparator](https://surveyjs.io/form-library/documentation/api-reference/settings#choicesSeparator)
328
329
  */
329
330
  itemValueSeparator: string;
330
331
  /**
@@ -475,6 +476,13 @@ export declare var settings: {
475
476
  dontKnowItem: number[];
476
477
  otherItem: number[];
477
478
  };
479
+ /**
480
+ * One or several characters used to separate choice options in a list.
481
+ *
482
+ * Default value: `", "`
483
+ * @see [settings.itemValueSeparator](https://surveyjs.io/form-library/documentation/api-reference/settings#itemValueSeparator)
484
+ */
485
+ choicesSeparator: string;
478
486
  /**
479
487
  * A list of supported validators by question type.
480
488
  */
@@ -20,6 +20,7 @@ export declare class AnimationUtils {
20
20
  private removeCancelCallback;
21
21
  protected onAnimationEnd(element: HTMLElement, callback: (isCancel?: boolean) => void, options: AnimationOptions): void;
22
22
  protected beforeAnimationRun(element: HTMLElement, options: AnimationOptions | AnimationOptions): void;
23
+ private getCssClasses;
23
24
  protected runAnimation(element: HTMLElement, options: AnimationOptions, callback: (isCancel?: boolean) => void): void;
24
25
  protected clearHtmlElement(element: HTMLElement, options: AnimationOptions): void;
25
26
  protected onNextRender(callback: () => void, runEarly?: () => boolean, isCancel?: boolean): void;
package/typings/base.d.ts CHANGED
@@ -103,6 +103,8 @@ export declare class Base {
103
103
  * A new value for the property.
104
104
  * - `options.oldValue`: `any`\
105
105
  * An old value of the property. If the property is an array, `oldValue` contains the same array as `newValue` does.
106
+ *
107
+ * If you need to add and remove property change event handlers dynamically, use the [`registerPropertyChangedHandlers`](#registerPropertyChangedHandlers) and [`unregisterPropertyChangedHandlers`](#unregisterPropertyChangedHandlers) methods instead.
106
108
  */
107
109
  onPropertyChanged: EventBase<Base>;
108
110
  /**
@@ -249,9 +251,11 @@ export declare class Base {
249
251
  get isAsyncExpressionRunning(): boolean;
250
252
  protected createExpressionRunner(expression: string): ExpressionRunner;
251
253
  /**
252
- * Registers a function to call when a property value changes.
254
+ * Registers a single value change handler for one or multiple properties.
255
+ *
256
+ * The `registerPropertyChangedHandlers` and [`unregisterPropertyChangedHandlers`](#unregisterPropertyChangedHandlers) methods allow you to manage property change event handlers dynamically. If you only need to attach an event handler without removing it afterwards, you can use the [`onPropertyChanged`](#onPropertyChanged) event instead.
253
257
  * @param propertyNames An array of one or multiple property names.
254
- * @param handler A function to call when one of the listed properties change.
258
+ * @param handler A function to call when one of the listed properties change. Accepts a new property value as an argument.
255
259
  * @param key *(Optional)* A key that identifies the current registration. If a function for one of the properties is already registered with the same key, the function will be overwritten. You can also use the key to subsequently unregister handlers.
256
260
  * @see unregisterPropertyChangedHandlers
257
261
  */
@@ -619,6 +619,8 @@ export declare var defaultV2Css: {
619
619
  selectWrapper: string;
620
620
  controlValue: string;
621
621
  controlDisabled: string;
622
+ controlReadOnly: string;
623
+ controlPreview: string;
622
624
  controlEmpty: string;
623
625
  filterStringInput: string;
624
626
  chevronButton: string;
@@ -32,6 +32,8 @@ export declare class DragDropDOMAdapter implements IDragDropDOMAdapter {
32
32
  private moveShortcutElement;
33
33
  private getShortcutBottomCoordinate;
34
34
  private getShortcutRightCoordinate;
35
+ protected requestAnimationFrame(callback: any): number;
36
+ protected scrollByDrag(scrollableParentNode: HTMLElement, clientY: number, clientX: number): void;
35
37
  private doScroll;
36
38
  private dragOver;
37
39
  private clear;
@@ -9,7 +9,7 @@ export { Helpers, HashTable } from "../../helpers";
9
9
  export { AnswerCountValidator, EmailValidator, NumericValidator, RegexValidator, SurveyValidator, TextValidator, ValidatorResult, ExpressionValidator, ValidatorRunner } from "../../validator";
10
10
  export { ItemValue } from "../../itemvalue";
11
11
  export { Base, Event, EventBase, ArrayChanges, ComputedUpdater } from "../../base";
12
- export { ISurvey, ISurveyElement, IElement, IQuestion, IPage, IPanel, ISurveyData, ITitleOwner, ISurveyLayoutElement, IPlainDataOptions as IPlainData, IShortcutText, ILoadFromJSONOptions } from "../../base-interfaces";
12
+ export { ISurvey, ISurveyElement, IElement, IQuestion, IPage, IPanel, ISurveyData, ITitleOwner, ISurveyLayoutElement, IPlainDataOptions as IPlainData, IShortcutText, ILoadFromJSONOptions, ISaveToJSONOptions, HorizontalAlignment, VerticalAlignment } from "../../base-interfaces";
13
13
  export { SurveyError } from "../../survey-error";
14
14
  export { SurveyElementCore, SurveyElement, DragTypeOverMeEnum } from "../../survey-element";
15
15
  export { CalculatedValue } from "../../calculatedValue";
@@ -73,6 +73,7 @@ export declare class InputMaskNumeric extends InputMaskBase {
73
73
  */
74
74
  max: number;
75
75
  private calccaretPosition;
76
+ private numericalCompositionIsEmpty;
76
77
  displayNumber(parsedNumber: INumericalComposition, insertThousandsSeparator?: boolean, matchWholeMask?: boolean): string;
77
78
  convertNumber(parsedNumber: INumericalComposition): number;
78
79
  validateNumber(number: INumericalComposition, matchWholeMask: boolean): boolean;
@@ -4,8 +4,8 @@ import { VerticalPosition, HorizontalPosition, PositionMode } from "./utils/popu
4
4
  export interface IPopupOptionsBase {
5
5
  onHide?: () => void;
6
6
  onShow?: () => void;
7
- onApply?: () => boolean;
8
7
  onCancel?: () => void;
8
+ onDispose?: () => void;
9
9
  cssClass?: string;
10
10
  title?: string;
11
11
  verticalPosition?: VerticalPosition;
@@ -20,15 +20,15 @@ export interface IDialogOptions extends IPopupOptionsBase {
20
20
  onApply: () => boolean;
21
21
  isFocusedContent?: boolean;
22
22
  }
23
- export interface IPopupModel<T = any> extends IDialogOptions {
24
- contentComponentName: string;
25
- contentComponentData: T;
26
- }
27
- export declare class PopupModel<T = any> extends Base {
28
- private onDispose;
23
+ export declare class PopupModel<T = any> extends Base implements IPopupOptionsBase {
29
24
  setWidthByTarget: boolean;
30
25
  focusFirstInputSelector: string;
31
26
  locale: string;
27
+ onCancel: () => void;
28
+ onApply: () => boolean;
29
+ onHide: () => void;
30
+ onShow: () => void;
31
+ onDispose: () => void;
32
32
  contentComponentName: string;
33
33
  contentComponentData: T;
34
34
  verticalPosition: VerticalPosition;
@@ -37,10 +37,6 @@ export declare class PopupModel<T = any> extends Base {
37
37
  isModal: boolean;
38
38
  isFocusedContent: boolean;
39
39
  isFocusedContainer: boolean;
40
- onCancel: () => void;
41
- onApply: () => boolean;
42
- onHide: () => void;
43
- onShow: () => void;
44
40
  cssClass: string;
45
41
  title: string;
46
42
  overlayDisplayMode: "auto" | "overlay" | "dropdown-overlay";
@@ -50,7 +46,7 @@ export declare class PopupModel<T = any> extends Base {
50
46
  onFooterActionsCreated: EventBase<Base>;
51
47
  onRecalculatePosition: EventBase<Base>;
52
48
  private refreshInnerModel;
53
- constructor(contentComponentName: string, contentComponentData: T, verticalPosition?: VerticalPosition, horizontalPosition?: HorizontalPosition, showPointer?: boolean, isModal?: boolean, onCancel?: () => void, onApply?: () => boolean, onHide?: () => void, onShow?: () => void, cssClass?: string, title?: string, onDispose?: () => void);
49
+ constructor(contentComponentName: string, contentComponentData: T, option1?: IPopupOptionsBase | any, option2?: any);
54
50
  get isVisible(): boolean;
55
51
  set isVisible(value: boolean);
56
52
  toggleVisibility(): void;
@@ -178,7 +178,7 @@ export declare class QuestionSelectBase extends Question {
178
178
  private setConditionalChoicesRunner;
179
179
  private setConditionalEnableChoicesRunner;
180
180
  private canSurveyChangeItemVisibility;
181
- changeItemVisisbility(): (item: ItemValue, val: boolean) => boolean;
181
+ private changeItemVisibility;
182
182
  private runConditionsForItems;
183
183
  protected getHasOther(val: any): boolean;
184
184
  protected getIsItemValue(val: any, item: ItemValue): boolean;
@@ -31,6 +31,11 @@ export declare class QuestionBooleanModel extends Question {
31
31
  getDefaultValue(): any;
32
32
  get locTitle(): LocalizableString;
33
33
  get labelRenderedAriaID(): string;
34
+ leftAnswerElement: HTMLElement;
35
+ thumbMargin: string;
36
+ updateThumbMargin(): void;
37
+ afterRender(el: HTMLElement): void;
38
+ beforeDestroyQuestionElement(el: HTMLElement): void;
34
39
  showTitle: boolean;
35
40
  label: string;
36
41
  get isLabelRendered(): boolean;
@@ -241,7 +241,6 @@ export declare class QuestionFileModel extends QuestionFileModelBase {
241
241
  private onChange;
242
242
  protected onChangeQuestionValue(newValue: any): void;
243
243
  protected calcCssClasses(css: any): any;
244
- updateElementCss(reNew?: boolean): void;
245
244
  onSurveyLoad(): void;
246
245
  protected needResponsiveness(): boolean;
247
246
  protected supportResponsiveness(): boolean;
@@ -260,6 +260,7 @@ export declare class QuestionMatrixDynamicModel extends QuestionMatrixDropdownMo
260
260
  private lastDeletedRow;
261
261
  private getInsertedDeletedIndex;
262
262
  private isEditingObjectValueChanged;
263
+ updateValueFromSurvey(newValue: any, clearData?: boolean): void;
263
264
  protected onBeforeValueChanged(val: any): void;
264
265
  protected createNewValue(): any;
265
266
  protected deleteRowValue(newValue: any, row: MatrixDropdownRowModelBase): any;
@@ -25,6 +25,7 @@ export declare class QuestionRadiogroupModel extends QuestionCheckboxBase {
25
25
  get canShowClearButton(): boolean;
26
26
  get clearButtonCaption(): string;
27
27
  supportGoNextPageAutomatic(): boolean;
28
+ getConditionJson(operator?: string, path?: string): any;
28
29
  protected setNewComment(newValue: string): void;
29
30
  get showClearButtonInContent(): boolean;
30
31
  clickItemHandler(item: ItemValue): void;
@@ -178,6 +178,8 @@ export declare class QuestionRatingModel extends Question {
178
178
  * @see rateType
179
179
  */
180
180
  displayMode: "dropdown" | "buttons" | "auto";
181
+ private updateRenderAsBasedOnDisplayMode;
182
+ onSurveyLoad(): void;
181
183
  /**
182
184
  * Specifies the alignment of [`minRateDescription`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#minRateDescription) and [`maxRateDescription`](https://surveyjs.io/form-library/documentation/api-reference/rating-scale-question-model#maxRateDescription) texts.
183
185
  *
@@ -17,6 +17,8 @@ export declare class QuestionTagboxModel extends QuestionCheckboxModel {
17
17
  private updateReadOnlyText;
18
18
  protected getDefaultItemComponent(): string;
19
19
  onSurveyLoad(): void;
20
+ protected onSetData(): void;
21
+ private createDropdownListModel;
20
22
  /**
21
23
  * Specifies a comparison operation used to filter the drop-down list. Applies only if [`searchEnabled`](#searchEnabled) is `true`.
22
24
  *
@@ -2,9 +2,10 @@ import { Question } from "./question";
2
2
  export declare class RendererFactory {
3
3
  static Instance: RendererFactory;
4
4
  private renderersHash;
5
+ private defaultHash;
5
6
  unregisterRenderer(questionType: string, rendererAs: string): void;
6
- registerRenderer(questionType: string, renderAs: string, renderer: any): void;
7
- getRenderer(questionType: string, renderAs: string): any;
7
+ registerRenderer(questionType: string, renderAs: string, renderer: any, useAsDefault?: boolean): void;
8
+ getRenderer(questionType: string, renderAs: string): string;
8
9
  getRendererByQuestion(question: Question): any;
9
10
  clear(): void;
10
11
  }
@@ -325,6 +325,7 @@ export declare var settings: {
325
325
  * A separator used in a shorthand notation that specifies a value and display text for an [`ItemValue`](https://surveyjs.io/form-library/documentation/api-reference/itemvalue) object: `"value|text"`.
326
326
  *
327
327
  * Default value: `"|"`
328
+ * @see [settings.choicesSeparator](https://surveyjs.io/form-library/documentation/api-reference/settings#choicesSeparator)
328
329
  */
329
330
  itemValueSeparator: string;
330
331
  /**
@@ -475,6 +476,13 @@ export declare var settings: {
475
476
  dontKnowItem: number[];
476
477
  otherItem: number[];
477
478
  };
479
+ /**
480
+ * One or several characters used to separate choice options in a list.
481
+ *
482
+ * Default value: `", "`
483
+ * @see [settings.itemValueSeparator](https://surveyjs.io/form-library/documentation/api-reference/settings#itemValueSeparator)
484
+ */
485
+ choicesSeparator: string;
478
486
  /**
479
487
  * A list of supported validators by question type.
480
488
  */
@@ -19,6 +19,7 @@ export declare class AnimationUtils {
19
19
  private removeCancelCallback;
20
20
  protected onAnimationEnd(element: HTMLElement, callback: (isCancel?: boolean) => void, options: AnimationOptions): void;
21
21
  protected beforeAnimationRun(element: HTMLElement, options: AnimationOptions | AnimationOptions): void;
22
+ private getCssClasses;
22
23
  protected runAnimation(element: HTMLElement, options: AnimationOptions, callback: (isCancel?: boolean) => void): void;
23
24
  protected clearHtmlElement(element: HTMLElement, options: AnimationOptions): void;
24
25
  protected onNextRender(callback: () => void, runEarly?: () => boolean, isCancel?: boolean): void;