survey-core 1.9.136 → 1.9.138

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 +353 -9
  2. package/defaultV2.css.map +1 -1
  3. package/defaultV2.fontless.css +353 -9
  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 +2 -2
  34. package/i18n/german.js.map +1 -1
  35. package/i18n/german.min.js +2 -2
  36. package/i18n/greek.js +1 -1
  37. package/i18n/greek.min.js +1 -1
  38. package/i18n/hebrew.js +2 -2
  39. package/i18n/hebrew.js.map +1 -1
  40. package/i18n/hebrew.min.js +2 -2
  41. package/i18n/hindi.js +1 -1
  42. package/i18n/hindi.min.js +1 -1
  43. package/i18n/hungarian.js +1 -1
  44. package/i18n/hungarian.min.js +1 -1
  45. package/i18n/icelandic.js +1 -1
  46. package/i18n/icelandic.min.js +1 -1
  47. package/i18n/index.js +3 -3
  48. package/i18n/index.js.map +1 -1
  49. package/i18n/index.min.js +2 -2
  50. package/i18n/indonesian.js +1 -1
  51. package/i18n/indonesian.min.js +1 -1
  52. package/i18n/italian.js +1 -1
  53. package/i18n/italian.min.js +1 -1
  54. package/i18n/japanese.js +1 -1
  55. package/i18n/japanese.min.js +1 -1
  56. package/i18n/kazakh.js +1 -1
  57. package/i18n/kazakh.min.js +1 -1
  58. package/i18n/korean.js +1 -1
  59. package/i18n/korean.min.js +1 -1
  60. package/i18n/latvian.js +1 -1
  61. package/i18n/latvian.min.js +1 -1
  62. package/i18n/lithuanian.js +1 -1
  63. package/i18n/lithuanian.min.js +1 -1
  64. package/i18n/macedonian.js +1 -1
  65. package/i18n/macedonian.min.js +1 -1
  66. package/i18n/malay.js +1 -1
  67. package/i18n/malay.min.js +1 -1
  68. package/i18n/nl-BE.js +1 -1
  69. package/i18n/nl-BE.min.js +1 -1
  70. package/i18n/norwegian.js +1 -1
  71. package/i18n/norwegian.min.js +1 -1
  72. package/i18n/persian.js +1 -1
  73. package/i18n/persian.min.js +1 -1
  74. package/i18n/polish.js +1 -1
  75. package/i18n/polish.min.js +1 -1
  76. package/i18n/portuguese-br.js +1 -1
  77. package/i18n/portuguese-br.min.js +1 -1
  78. package/i18n/portuguese.js +1 -1
  79. package/i18n/portuguese.min.js +1 -1
  80. package/i18n/romanian.js +1 -1
  81. package/i18n/romanian.min.js +1 -1
  82. package/i18n/russian.js +1 -1
  83. package/i18n/russian.min.js +1 -1
  84. package/i18n/serbian.js +1 -1
  85. package/i18n/serbian.min.js +1 -1
  86. package/i18n/simplified-chinese.js +1 -1
  87. package/i18n/simplified-chinese.min.js +1 -1
  88. package/i18n/slovak.js +1 -1
  89. package/i18n/slovak.min.js +1 -1
  90. package/i18n/spanish.js +1 -1
  91. package/i18n/spanish.min.js +1 -1
  92. package/i18n/swahili.js +1 -1
  93. package/i18n/swahili.min.js +1 -1
  94. package/i18n/swedish.js +1 -1
  95. package/i18n/swedish.min.js +1 -1
  96. package/i18n/tajik.js +1 -1
  97. package/i18n/tajik.min.js +1 -1
  98. package/i18n/telugu.js +1 -1
  99. package/i18n/telugu.min.js +1 -1
  100. package/i18n/thai.js +1 -1
  101. package/i18n/thai.min.js +1 -1
  102. package/i18n/traditional-chinese.js +1 -1
  103. package/i18n/traditional-chinese.min.js +1 -1
  104. package/i18n/turkish.js +1 -1
  105. package/i18n/turkish.min.js +1 -1
  106. package/i18n/ukrainian.js +1 -1
  107. package/i18n/ukrainian.min.js +1 -1
  108. package/i18n/urdu.js +1 -1
  109. package/i18n/urdu.min.js +1 -1
  110. package/i18n/vietnamese.js +1 -1
  111. package/i18n/vietnamese.min.js +1 -1
  112. package/i18n/welsh.js +1 -1
  113. package/i18n/welsh.min.js +1 -1
  114. package/modern.css +187 -1
  115. package/modern.css.map +1 -1
  116. package/modern.fontless.css +187 -1
  117. package/modern.fontless.css.map +1 -1
  118. package/modern.fontless.min.css +2 -2
  119. package/modern.min.css +2 -2
  120. package/package.json +1 -1
  121. package/plugins/bootstrap-integration.js +1 -1
  122. package/plugins/bootstrap-integration.min.js +1 -1
  123. package/plugins/bootstrap-material-integration.js +1 -1
  124. package/plugins/bootstrap-material-integration.min.js +1 -1
  125. package/survey.core.js +1218 -233
  126. package/survey.core.js.map +1 -1
  127. package/survey.core.min.js +3 -3
  128. package/survey.css +1 -1
  129. package/survey.css.map +1 -1
  130. package/survey.i18n.js +3 -3
  131. package/survey.i18n.js.map +1 -1
  132. package/survey.i18n.min.js +2 -2
  133. package/survey.min.css +1 -1
  134. package/themes/borderless-dark-panelless.js +1 -1
  135. package/themes/borderless-dark-panelless.min.js +1 -1
  136. package/themes/borderless-dark.js +1 -1
  137. package/themes/borderless-dark.min.js +1 -1
  138. package/themes/borderless-light-panelless..js +1 -1
  139. package/themes/borderless-light-panelless..min.js +1 -1
  140. package/themes/borderless-light.js +1 -1
  141. package/themes/borderless-light.min.js +1 -1
  142. package/themes/contrast-dark-panelless.js +1 -1
  143. package/themes/contrast-dark-panelless.min.js +1 -1
  144. package/themes/contrast-dark.js +1 -1
  145. package/themes/contrast-dark.min.js +1 -1
  146. package/themes/contrast-light-panelless.js +1 -1
  147. package/themes/contrast-light-panelless.min.js +1 -1
  148. package/themes/contrast-light.js +1 -1
  149. package/themes/contrast-light.min.js +1 -1
  150. package/themes/default-dark-panelless.js +1 -1
  151. package/themes/default-dark-panelless.min.js +1 -1
  152. package/themes/default-dark.js +1 -1
  153. package/themes/default-dark.min.js +1 -1
  154. package/themes/default-light-panelless.js +1 -1
  155. package/themes/default-light-panelless.min.js +1 -1
  156. package/themes/default-light.js +1 -1
  157. package/themes/default-light.min.js +1 -1
  158. package/themes/doubleborder-dark-panelless.js +1 -1
  159. package/themes/doubleborder-dark-panelless.min.js +1 -1
  160. package/themes/doubleborder-dark.js +1 -1
  161. package/themes/doubleborder-dark.min.js +1 -1
  162. package/themes/doubleborder-light-panelles.js +1 -1
  163. package/themes/doubleborder-light-panelles.min.js +1 -1
  164. package/themes/doubleborder-light.js +1 -1
  165. package/themes/doubleborder-light.min.js +1 -1
  166. package/themes/flat-dark-panelless.js +1 -1
  167. package/themes/flat-dark-panelless.min.js +1 -1
  168. package/themes/flat-dark.js +1 -1
  169. package/themes/flat-dark.min.js +1 -1
  170. package/themes/flat-light-panelless.js +1 -1
  171. package/themes/flat-light-panelless.min.js +1 -1
  172. package/themes/flat-light.js +1 -1
  173. package/themes/flat-light.min.js +1 -1
  174. package/themes/index.js +1 -1
  175. package/themes/index.min.js +1 -1
  176. package/themes/layered-dark-panelless.js +1 -1
  177. package/themes/layered-dark-panelless.min.js +1 -1
  178. package/themes/layered-dark.js +1 -1
  179. package/themes/layered-dark.min.js +1 -1
  180. package/themes/layered-light-panelless.js +1 -1
  181. package/themes/layered-light-panelless.min.js +1 -1
  182. package/themes/layered-light.js +1 -1
  183. package/themes/layered-light.min.js +1 -1
  184. package/themes/plain-dark-panelless.js +1 -1
  185. package/themes/plain-dark-panelless.min.js +1 -1
  186. package/themes/plain-dark.js +1 -1
  187. package/themes/plain-dark.min.js +1 -1
  188. package/themes/plain-light-panelless.js +1 -1
  189. package/themes/plain-light-panelless.min.js +1 -1
  190. package/themes/plain-light.js +1 -1
  191. package/themes/plain-light.min.js +1 -1
  192. package/themes/sharp-dark-panelless.js +1 -1
  193. package/themes/sharp-dark-panelless.min.js +1 -1
  194. package/themes/sharp-dark.js +1 -1
  195. package/themes/sharp-dark.min.js +1 -1
  196. package/themes/sharp-light-panelless.js +1 -1
  197. package/themes/sharp-light-panelless.min.js +1 -1
  198. package/themes/sharp-light.js +1 -1
  199. package/themes/sharp-light.min.js +1 -1
  200. package/themes/solid-dark-panelless.js +1 -1
  201. package/themes/solid-dark-panelless.min.js +1 -1
  202. package/themes/solid-dark.js +1 -1
  203. package/themes/solid-dark.min.js +1 -1
  204. package/themes/solid-light-panelless.js +1 -1
  205. package/themes/solid-light-panelless.min.js +1 -1
  206. package/themes/solid-light.js +1 -1
  207. package/themes/solid-light.min.js +1 -1
  208. package/themes/three-dimensional-dark-panelless.js +1 -1
  209. package/themes/three-dimensional-dark-panelless.min.js +1 -1
  210. package/themes/three-dimensional-dark.js +1 -1
  211. package/themes/three-dimensional-dark.min.js +1 -1
  212. package/themes/three-dimensional-light-panelless.js +1 -1
  213. package/themes/three-dimensional-light-panelless.min.js +1 -1
  214. package/themes/three-dimensional-light.js +1 -1
  215. package/themes/three-dimensional-light.min.js +1 -1
  216. package/ts3.4/typings/base.d.ts +4 -4
  217. package/ts3.4/typings/defaultCss/defaultV2Css.d.ts +14 -0
  218. package/ts3.4/typings/dragdrop/matrix-rows.d.ts +2 -1
  219. package/ts3.4/typings/dragdrop/ranking-choices.d.ts +1 -1
  220. package/ts3.4/typings/dragdrop/ranking-select-to-rank.d.ts +6 -3
  221. package/ts3.4/typings/entries/core-wo-model.d.ts +1 -0
  222. package/ts3.4/typings/mask/input_element_adapter.d.ts +1 -0
  223. package/ts3.4/typings/mask/mask_datetime.d.ts +12 -2
  224. package/ts3.4/typings/mask/mask_numeric.d.ts +1 -1
  225. package/ts3.4/typings/panel.d.ts +17 -4
  226. package/ts3.4/typings/popup-view-model.d.ts +14 -5
  227. package/ts3.4/typings/question_custom.d.ts +11 -0
  228. package/ts3.4/typings/question_imagepicker.d.ts +36 -6
  229. package/ts3.4/typings/question_matrixdropdowncolumn.d.ts +1 -2
  230. package/ts3.4/typings/question_matrixdynamic.d.ts +1 -0
  231. package/ts3.4/typings/question_multipletext.d.ts +67 -20
  232. package/ts3.4/typings/question_ranking.d.ts +12 -3
  233. package/ts3.4/typings/question_text.d.ts +2 -0
  234. package/ts3.4/typings/survey-element.d.ts +12 -1
  235. package/ts3.4/typings/utils/animation.d.ts +54 -0
  236. package/ts3.4/typings/utils/taskmanager.d.ts +28 -0
  237. package/typings/base.d.ts +4 -4
  238. package/typings/defaultCss/defaultV2Css.d.ts +14 -0
  239. package/typings/dragdrop/matrix-rows.d.ts +2 -1
  240. package/typings/dragdrop/ranking-choices.d.ts +1 -1
  241. package/typings/dragdrop/ranking-select-to-rank.d.ts +6 -3
  242. package/typings/entries/core-wo-model.d.ts +1 -0
  243. package/typings/mask/input_element_adapter.d.ts +1 -0
  244. package/typings/mask/mask_datetime.d.ts +12 -2
  245. package/typings/mask/mask_numeric.d.ts +1 -1
  246. package/typings/panel.d.ts +18 -3
  247. package/typings/popup-view-model.d.ts +15 -5
  248. package/typings/question_custom.d.ts +11 -0
  249. package/typings/question_imagepicker.d.ts +36 -6
  250. package/typings/question_matrixdropdowncolumn.d.ts +1 -2
  251. package/typings/question_matrixdynamic.d.ts +2 -0
  252. package/typings/question_multipletext.d.ts +70 -20
  253. package/typings/question_ranking.d.ts +12 -1
  254. package/typings/question_text.d.ts +2 -0
  255. package/typings/survey-element.d.ts +15 -1
  256. package/typings/utils/animation.d.ts +50 -0
  257. package/typings/utils/taskmanager.d.ts +28 -0
@@ -65,11 +65,12 @@ export declare class QuestionImagePickerModel extends QuestionCheckboxBase {
65
65
  /**
66
66
  * Specifies the height of containers for images or videos. Accepts positive numbers and CSS values.
67
67
  *
68
- * Default value: undefined
68
+ * Default value: `auto`
69
69
  *
70
- * Use the `imageFit` property to specify how to fit the images or videos into their containers.
70
+ * This property allows you to specify the exact image height. If you do not set it, the height will be calculated automatically based on the [`minImageHeight`](#minImageHeight) and [`maxImageHeight`](#maxImageHeight) values and available screen height.
71
+ *
72
+ * Use the [`imageFit`](#imageFit) property to specify how to fit the images or videos into their containers.
71
73
  * @see imageWidth
72
- * @see imageFit
73
74
  */
74
75
  get imageHeight(): number;
75
76
  set imageHeight(val: number);
@@ -78,11 +79,12 @@ export declare class QuestionImagePickerModel extends QuestionCheckboxBase {
78
79
  /**
79
80
  * Specifies the width of containers for images or videos. Accepts positive numbers and CSS values.
80
81
  *
81
- * Default value: 200
82
+ * Default value: `auto`
83
+ *
84
+ * This property allows you to specify the exact image width. If you do not set it, the width will be calculated automatically based on the [`minImageWidth`](#minImageWidth) and [`maxImageWidth`](#maxImageWidth) values and available screen width.
82
85
  *
83
- * Use the `imageFit` property to specify how to fit the images or videos into their containers.
86
+ * Use the [`imageFit`](#imageFit) property to specify how to fit the images or videos into their containers.
84
87
  * @see imageHeight
85
- * @see imageFit
86
88
  */
87
89
  get imageWidth(): number;
88
90
  set imageWidth(val: number);
@@ -113,9 +115,37 @@ export declare class QuestionImagePickerModel extends QuestionCheckboxBase {
113
115
  protected addToVisibleChoices(items: Array<ItemValue>, isAddAll: boolean): void;
114
116
  getSelectBaseRootCss(): string;
115
117
  private isResponsiveValue;
118
+ /**
119
+ * Specifies a maximum width for image or video containers. Accepts positive numbers and CSS values.
120
+ *
121
+ * Default value: 400
122
+ *
123
+ * The `minImageWidth`, `maxImageWidth`, `minImageHeight`, and `maxImageHeight` properties specify boundary values for container sizes. The resulting sizes are selected depending on the available screen space. If you want to specify the exact width and height, use the [`imageWidth`](#imageWidth) and [`imageHeight`](#imageHeight) properties.
124
+ */
116
125
  maxImageWidth: number;
126
+ /**
127
+ * Specifies a minimum width for image or video containers. Accepts positive numbers and CSS values.
128
+ *
129
+ * Default value: 200
130
+ *
131
+ * The `minImageWidth`, `maxImageWidth`, `minImageHeight`, and `maxImageHeight` properties specify boundary values for container sizes. The resulting sizes are selected depending on the available screen space. If you want to specify the exact width and height, use the [`imageWidth`](#imageWidth) and [`imageHeight`](#imageHeight) properties.
132
+ */
117
133
  minImageWidth: number;
134
+ /**
135
+ * Specifies a maximum height for image or video containers. Accepts positive numbers and CSS values.
136
+ *
137
+ * Default value: 266
138
+ *
139
+ * The `minImageWidth`, `maxImageWidth`, `minImageHeight`, and `maxImageHeight` properties specify boundary values for container sizes. The resulting sizes are selected depending on the available screen space. If you want to specify the exact width and height, use the [`imageWidth`](#imageWidth) and [`imageHeight`](#imageHeight) properties.
140
+ */
118
141
  maxImageHeight: number;
142
+ /**
143
+ * Specifies a minimum height for image or video containers. Accepts positive numbers and CSS values.
144
+ *
145
+ * Default value: 133
146
+ *
147
+ * The `minImageWidth`, `maxImageWidth`, `minImageHeight`, and `maxImageHeight` properties specify boundary values for container sizes. The resulting sizes are selected depending on the available screen space. If you want to specify the exact width and height, use the [`imageWidth`](#imageWidth) and [`imageHeight`](#imageHeight) properties.
148
+ */
119
149
  minImageHeight: number;
120
150
  private get isResponsive();
121
151
  private get exactSizesAreEmpty();
@@ -101,10 +101,9 @@ export declare class MatrixDropdownColumn extends Base implements ILocalizableOw
101
101
  get locTitle(): LocalizableString;
102
102
  get fullTitle(): string;
103
103
  /**
104
- * Marks the column as required. If a respondent skips any cell in a required column, the matrix displays a validation error.
104
+ * Marks the column as required. If a respondent skips any cell in a required column, the matrix displays a [validation error](#requiredErrorText).
105
105
  *
106
106
  * If you want to mark the column as required based on a condition, specify the [`requiredIf`](#requiredIf) property.
107
- * @see requiredErrorText
108
107
  * @see visible
109
108
  * @see readOnly
110
109
  */
@@ -91,6 +91,8 @@ export declare class QuestionMatrixDynamicModel extends QuestionMatrixDropdownMo
91
91
  get allowRowsDragAndDrop(): boolean;
92
92
  set allowRowsDragAndDrop(val: boolean);
93
93
  get isRowsDragAndDrop(): boolean;
94
+ get lockedRowCount(): number;
95
+ set lockedRowCount(val: number);
94
96
  get iconDragElement(): string;
95
97
  protected createRenderedTable(): QuestionMatrixDropdownRenderedTable;
96
98
  private get rowCountValue();
@@ -6,6 +6,7 @@ import { QuestionTextModel } from "./question_text";
6
6
  import { SurveyError } from "./survey-error";
7
7
  import { ILocalizableOwner, LocalizableString } from "./localizablestring";
8
8
  import { HashTable } from "./helpers";
9
+ import { InputMaskBase } from "./mask/mask_base";
9
10
  export interface IMultipleTextData extends ILocalizableOwner, IPanel {
10
11
  getSurvey(): ISurvey;
11
12
  getTextProcessor(): ITextProcessor;
@@ -21,9 +22,9 @@ export declare class MultipleTextEditorModel extends QuestionTextModel {
21
22
  get a11y_input_ariaDescribedBy(): string;
22
23
  }
23
24
  /**
24
- * A class that describes an item in a [Multiple Textboxes](https://surveyjs.io/form-library/documentation/api-reference/multiple-text-entry-question-model) question.
25
+ * A class that describes an [item](https://surveyjs.io/form-library/documentation/api-reference/multiple-text-entry-question-model#items) in a Multiple Textboxes question.
25
26
  *
26
- * [View Demo](https://surveyjs.io/form-library/examples/multiple-text-box-question/)
27
+ * [View Demo](https://surveyjs.io/form-library/examples/multiple-text-box-question/ (linkStyle))
27
28
  */
28
29
  export declare class MultipleTextItemModel extends Base implements IValidatorOwner, ISurveyData, ISurveyImpl {
29
30
  private editorValue;
@@ -34,7 +35,10 @@ export declare class MultipleTextItemModel extends Base implements IValidatorOwn
34
35
  get id(): string;
35
36
  getOriginalObj(): Base;
36
37
  /**
37
- * The item name.
38
+ * An item ID that is not visible to respondents.
39
+ *
40
+ * > Item IDs must be unique.
41
+ * @see title
38
42
  */
39
43
  get name(): string;
40
44
  set name(val: string);
@@ -47,33 +51,34 @@ export declare class MultipleTextItemModel extends Base implements IValidatorOwn
47
51
  setData(data: IMultipleTextData): void;
48
52
  focusIn: () => void;
49
53
  /**
50
- * Set this property to true, to make the item a required. If a user doesn't fill the item then a validation error will be generated.
54
+ * Marks the item as required. If a respondent leaves this item empty, the question displays a [validation error](#requiredErrorText).
51
55
  */
52
56
  get isRequired(): boolean;
53
57
  set isRequired(val: boolean);
54
58
  /**
55
- * Use this property to change the default input type.
59
+ * A value passed on to the [`type`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#input_types) attribute of the underlying `<input>` element.
60
+ *
61
+ * Default value: `"text"`
56
62
  */
57
63
  get inputType(): string;
58
64
  set inputType(val: string);
59
65
  /**
60
- * Item title. If it is empty, the item name is rendered as title. This property supports markdown.
61
- * @see name
66
+ * A user-friendly item label to display. If `title` is undefined, [`name`](https://surveyjs.io/form-library/documentation/api-reference/multipletextitemmodel#name) is displayed instead.
62
67
  */
63
68
  get title(): string;
64
69
  set title(val: string);
65
70
  get locTitle(): LocalizableString;
66
71
  get fullTitle(): string;
67
72
  /**
68
- * The maximum text length. If it is -1, defaul value, then the survey maxTextLength property will be used.
69
- * If it is 0, then the value is unlimited
70
- * @see SurveyModel.maxTextLength
73
+ * The maximum text length measured in characters. Assign 0 if the length should be unlimited.
74
+ *
75
+ * Default value: -1 (inherits the actual value from the `SurveyModel`'s [`maxTextLength`](https://surveyjs.io/form-library/documentation/surveymodel#maxTextLength) property).
71
76
  */
72
77
  get maxLength(): number;
73
78
  set maxLength(val: number);
74
79
  getMaxLength(): any;
75
80
  /**
76
- * The input place holder.
81
+ * A placeholder for the input field.
77
82
  */
78
83
  get placeholder(): string;
79
84
  set placeholder(val: string);
@@ -82,39 +87,83 @@ export declare class MultipleTextItemModel extends Base implements IValidatorOwn
82
87
  set placeHolder(val: string);
83
88
  get locPlaceHolder(): LocalizableString;
84
89
  /**
85
- * The custom text that will be shown on required error. Use this property, if you do not want to show the default text.
90
+ * Specifies a custom error message for a [required item](#isRequired).
86
91
  */
87
92
  get requiredErrorText(): string;
88
93
  set requiredErrorText(val: string);
89
94
  get locRequiredErrorText(): LocalizableString;
90
95
  /**
91
- * The input size.
96
+ * A value passed on to the [`size`](https://developer.mozilla.org/en-US/docs/Web/HTML/Attributes/size) attribute of the underlying `<input>` element.
97
+ *
98
+ * If you want to set a uniform `size` for all text box items, use the [`itemSize`](https://surveyjs.io/form-library/documentation/api-reference/multiple-text-entry-question-model#itemSize) within the Multiple Textboxes configuration.
92
99
  */
93
100
  get size(): number;
94
101
  set size(val: number);
95
102
  /**
96
- * An expression used to calculate the [defaultValue](https://surveyjs.io/form-library/documentation/question#defaultValue).
103
+ * An [expression](https://surveyjs.io/form-library/documentation/design-survey/conditional-logic#expressions) used to calculate the default item value.
104
+ * @see minValueExpression
105
+ * @see maxValueExpression
97
106
  */
98
107
  get defaultValueExpression(): string;
99
108
  set defaultValueExpression(val: string);
100
109
  /**
101
- * The minimum value specified as an expression. For example, `"minValueExpression": "today(-1)"` sets the minimum value to yesterday.
110
+ * An [expression](https://surveyjs.io/form-library/documentation/design-survey/conditional-logic#expressions) used to calculate the minimum item value.
111
+ * @see maxValueExpression
112
+ * @see defaultValueExpression
102
113
  */
103
114
  get minValueExpression(): string;
104
115
  set minValueExpression(val: string);
105
116
  /**
106
- * The maximum value specified as an expression. For example, `"maxValueExpression": "today(1)"` sets the maximum value to tomorrow.
117
+ * An [expression](https://surveyjs.io/form-library/documentation/design-survey/conditional-logic#expressions) used to calculate the maximum item value.
118
+ * @see minValueExpression
119
+ * @see defaultValueExpression
107
120
  */
108
121
  get maxValueExpression(): string;
109
122
  set maxValueExpression(val: string);
110
123
  /**
111
- * The list of question validators.
124
+ * Item validators.
125
+ *
126
+ * [Data Validation](https://surveyjs.io/form-library/documentation/data-validation (linkStyle))
112
127
  */
113
128
  get validators(): Array<SurveyValidator>;
114
129
  set validators(val: Array<SurveyValidator>);
115
130
  getValidators(): Array<SurveyValidator>;
116
131
  /**
117
- * The item value.
132
+ * Specifies the type of a mask applied to the input.
133
+ *
134
+ * Possible values:
135
+ *
136
+ * - `"none"` (default)
137
+ * - `"numeric"`
138
+ * - `"currency"`
139
+ * - `"datetime"`
140
+ * - `"pattern"`
141
+ *
142
+ * [View Demo](https://surveyjs.io/form-library/examples/masked-input-fields/ (linkStyle))
143
+ * @see maskSettings
144
+ */
145
+ get maskType(): string;
146
+ set maskType(val: string);
147
+ /**
148
+ * An object with properties that configure the mask applied to the input.
149
+ *
150
+ * Available properties depend on the specified [`maskType`](#maskType) and belong to corresponding classes. Refer to the class APIs for a full list of properties:
151
+ *
152
+ * | `maskType` | Class |
153
+ * | ---------- | ----- |
154
+ * | `"numeric"` | [`InputMaskNumeric`](https://surveyjs.io/form-library/documentation/api-reference/inputmasknumeric) |
155
+ * | `"currency"` | [`InputMaskCurrency`](https://surveyjs.io/form-library/documentation/api-reference/inputmaskcurrency) |
156
+ * | `"datetime"` | [`InputMaskDateTime`](https://surveyjs.io/form-library/documentation/api-reference/inputmaskdatetime) |
157
+ * | `"pattern"` | [`InputMaskPattern`](https://surveyjs.io/form-library/documentation/api-reference/inputmaskpattern) |
158
+ *
159
+ * [View Demo](https://surveyjs.io/form-library/examples/masked-input-fields/ (linkStyle))
160
+ */
161
+ get maskSettings(): InputMaskBase;
162
+ set maskSettings(val: InputMaskBase);
163
+ get inputTextAlignment(): "left" | "right" | "auto";
164
+ set inputTextAlignment(val: "left" | "right" | "auto");
165
+ /**
166
+ * An item value.
118
167
  */
119
168
  get value(): any;
120
169
  set value(value: any);
@@ -161,9 +210,9 @@ export declare class QuestionMultipleTextModel extends Question implements IMult
161
210
  private editorsOnSurveyLoad;
162
211
  private performForEveryEditor;
163
212
  /**
164
- * Gets or sets an array of `MultipleTextItemModel` objects that represent input items.
213
+ * Gets or sets an array of [`MultipleTextItemModel`](https://surveyjs.io/form-library/documentation/api-reference/multipletextitemmodel) objects that represent input items.
165
214
  *
166
- * This property accepts an array of objects with the following structure:
215
+ * Each object in this array should have at least the following properties:
167
216
  *
168
217
  * ```js
169
218
  * {
@@ -186,6 +235,7 @@ export declare class QuestionMultipleTextModel extends Question implements IMult
186
235
  */
187
236
  addItem(name: string, title?: string): MultipleTextItemModel;
188
237
  getItemByName(name: string): MultipleTextItemModel;
238
+ getElementsInDesign(includeHidden?: boolean): Array<IElement>;
189
239
  addConditionObjectsByContext(objects: Array<IConditionObject>, context: any): void;
190
240
  protected collectNestedQuestionsCore(questions: Question[], visibleOnly: boolean): void;
191
241
  getConditionJson(operator?: string, path?: string): any;
@@ -1,7 +1,9 @@
1
1
  import { ISurveyImpl } from "./base-interfaces";
2
2
  import { DragDropRankingChoices } from "./dragdrop/ranking-choices";
3
+ import { DragDropRankingSelectToRank } from "./dragdrop/ranking-select-to-rank";
3
4
  import { ItemValue } from "./itemvalue";
4
5
  import { QuestionCheckboxModel } from "./question_checkbox";
6
+ import { AnimationGroup } from "./utils/animation";
5
7
  /**
6
8
  * A class that describes the Ranking question type.
7
9
  *
@@ -21,6 +23,7 @@ export declare class QuestionRankingModel extends QuestionCheckboxModel {
21
23
  get ghostPositionCssClass(): string;
22
24
  getItemIndexClasses(item: ItemValue): string;
23
25
  getNumberByIndex(index: number): string;
26
+ private updateRankingChoicesSync;
24
27
  setSurveyImpl(value: ISurveyImpl, isLight?: boolean): void;
25
28
  isAnswerCorrect(): boolean;
26
29
  get requireStrictCompare(): boolean;
@@ -29,16 +32,24 @@ export declare class QuestionRankingModel extends QuestionCheckboxModel {
29
32
  localeChanged: () => void;
30
33
  private addToValueByVisibleChoices;
31
34
  private removeFromValueByVisibleChoices;
35
+ private getChoicesAnimation;
36
+ private _rankingChoicesAnimation;
37
+ get rankingChoicesAnimation(): AnimationGroup<ItemValue>;
38
+ private _unRankingChoicesAnimation;
39
+ get unRankingChoicesAnimation(): AnimationGroup<ItemValue>;
32
40
  get rankingChoices(): Array<ItemValue>;
41
+ set rankingChoices(val: Array<ItemValue>);
33
42
  get unRankingChoices(): Array<ItemValue>;
43
+ set unRankingChoices(val: Array<ItemValue>);
34
44
  private updateRankingChoices;
45
+ updateUnRankingChoices(newRankingChoices: Array<ItemValue>): void;
35
46
  private updateRankingChoicesSelectToRankMode;
36
47
  dragDropRankingChoices: DragDropRankingChoices;
37
48
  currentDropTarget: ItemValue;
38
49
  dropTargetNodeMove: string;
39
50
  endLoadingFromJson(): void;
40
51
  private setDragDropRankingChoices;
41
- protected createDragDropRankingChoices(): DragDropRankingChoices;
52
+ protected createDragDropRankingChoices(): DragDropRankingChoices | DragDropRankingSelectToRank;
42
53
  handlePointerDown: (event: PointerEvent, choice: ItemValue, node: HTMLElement) => void;
43
54
  private isDragStartNodeValid;
44
55
  private get allowStartDrag();
@@ -60,6 +60,8 @@ export declare class QuestionTextModel extends QuestionTextBase {
60
60
  onSurveyLoad(): void;
61
61
  /**
62
62
  * A value passed on to the [`type`](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/input#input_types) attribute of the underlying `<input>` element.
63
+ *
64
+ * Default value: `"text"`
63
65
  */
64
66
  get inputType(): string;
65
67
  set inputType(val: string);
@@ -324,7 +324,7 @@ export declare class SurveyElement<E = any> extends SurveyElementCore implements
324
324
  protected setPage(parent: IPanel, newPage: IPage): void;
325
325
  protected getSearchableLocKeys(keys: Array<string>): void;
326
326
  get isDefaultV2Theme(): boolean;
327
- get hasParent(): any;
327
+ get hasParent(): boolean;
328
328
  isSingleInRow: boolean;
329
329
  private shouldAddRunnerStyles;
330
330
  protected get isCompact(): boolean;
@@ -399,5 +399,19 @@ export declare class SurveyElement<E = any> extends SurveyElementCore implements
399
399
  protected getAdditionalTitleToolbar(): ActionContainer | null;
400
400
  protected getCssTitle(cssClasses: any): string;
401
401
  localeChanged(): void;
402
+ private wrapperElement?;
403
+ setWrapperElement(element?: HTMLElement): void;
404
+ getWrapperElement(): HTMLElement;
405
+ private _renderedIsExpanded;
406
+ private _isAnimatingCollapseExpand;
407
+ private set isAnimatingCollapseExpand(value);
408
+ private get isAnimatingCollapseExpand();
409
+ private getExpandCollapseAnimationOptions;
410
+ private animationCollapsed;
411
+ set renderedIsExpanded(val: boolean);
412
+ get renderedIsExpanded(): boolean;
413
+ private animationAllowedValue;
414
+ get animationAllowed(): boolean;
415
+ set animationAllowed(val: boolean);
402
416
  dispose(): void;
403
417
  }
@@ -0,0 +1,50 @@
1
+ export interface AnimationOptions {
2
+ cssClass: string;
3
+ onBeforeRunAnimation?: (element: HTMLElement) => void;
4
+ onAfterRunAnimation?: (element: HTMLElement) => void;
5
+ }
6
+ export interface IAnimationConsumer<T extends Array<any> = []> {
7
+ getLeaveOptions(...args: T): AnimationOptions;
8
+ getEnterOptions(...args: T): AnimationOptions;
9
+ getAnimatedElement(...args: T): HTMLElement;
10
+ isAnimationEnabled(): boolean;
11
+ }
12
+ export declare class AnimationUtils {
13
+ private getMsFromRule;
14
+ private getAnimationsCount;
15
+ private getAnimationDuration;
16
+ private cancelQueue;
17
+ protected onAnimationEnd(element: HTMLElement, callback: (isCancel?: boolean) => void, options: AnimationOptions): void;
18
+ protected beforeAnimationRun(element: HTMLElement, options: AnimationOptions | AnimationOptions): void;
19
+ protected runLeaveAnimation(element: HTMLElement, options: AnimationOptions, callback: () => void): void;
20
+ protected runEnterAnimation(element: HTMLElement, options: AnimationOptions): void;
21
+ cancel(): void;
22
+ }
23
+ export declare class AnimationPropertyUtils extends AnimationUtils {
24
+ onEnter(getElement: () => HTMLElement, options: AnimationOptions): void;
25
+ onLeave(getElement: () => HTMLElement, callback: () => void, options: AnimationOptions): void;
26
+ }
27
+ export declare class AnimationGroupUtils<T> extends AnimationUtils {
28
+ onEnter(getElement: (el: T) => HTMLElement, getOptions: (el: T) => AnimationOptions, elements: Array<T>): void;
29
+ onLeave(getElement: (el: T) => HTMLElement, callback: () => void, getOptions: (el: T) => AnimationOptions, elements: Array<T>): void;
30
+ }
31
+ declare abstract class AnimationProperty<T, S extends Array<any> = []> {
32
+ protected animationOptions: IAnimationConsumer<S>;
33
+ protected update: (val: T) => void;
34
+ protected getCurrentValue: () => T;
35
+ constructor(animationOptions: IAnimationConsumer<S>, update: (val: T) => void, getCurrentValue: () => T);
36
+ protected animation: AnimationUtils;
37
+ protected abstract _sync(newValue: T): void;
38
+ private _debouncedSync;
39
+ sync(newValue: T): void;
40
+ cancel(): void;
41
+ }
42
+ export declare class AnimationBoolean extends AnimationProperty<boolean> {
43
+ protected animation: AnimationPropertyUtils;
44
+ protected _sync(newValue: boolean): void;
45
+ }
46
+ export declare class AnimationGroup<T> extends AnimationProperty<Array<T>, [T]> {
47
+ protected animation: AnimationGroupUtils<T>;
48
+ protected _sync(newValue: Array<T>): void;
49
+ }
50
+ export {};
@@ -0,0 +1,28 @@
1
+ export interface IExecutable {
2
+ id?: string;
3
+ execute: () => void;
4
+ isCompleted: boolean;
5
+ dispose?: () => void;
6
+ }
7
+ export declare class Task implements IExecutable {
8
+ private func;
9
+ private isMultiple;
10
+ private _isCompleted;
11
+ constructor(func: () => void, isMultiple?: boolean);
12
+ execute: () => void;
13
+ discard(): void;
14
+ get isCompleted(): boolean;
15
+ }
16
+ export declare class TaskManger {
17
+ private interval;
18
+ private static instance;
19
+ private static tasks;
20
+ private constructor();
21
+ static Instance(): TaskManger;
22
+ private tick;
23
+ static schedule(task: IExecutable): void;
24
+ }
25
+ export declare function debounce<T extends (...args: any) => void>(func: T): {
26
+ run: T;
27
+ cancel: () => void;
28
+ };