survey-core 1.9.116 → 1.9.117

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 (233) hide show
  1. package/README.md +4 -0
  2. package/defaultV2.css +3 -3
  3. package/defaultV2.css.map +1 -1
  4. package/defaultV2.fontless.css +3 -3
  5. package/defaultV2.fontless.css.map +1 -1
  6. package/defaultV2.fontless.min.css +2 -2
  7. package/defaultV2.min.css +2 -2
  8. package/i18n/arabic.js +1 -1
  9. package/i18n/arabic.min.js +1 -1
  10. package/i18n/basque.js +1 -1
  11. package/i18n/basque.min.js +1 -1
  12. package/i18n/bulgarian.js +1 -1
  13. package/i18n/bulgarian.min.js +1 -1
  14. package/i18n/catalan.js +1 -1
  15. package/i18n/catalan.min.js +1 -1
  16. package/i18n/croatian.js +1 -1
  17. package/i18n/croatian.min.js +1 -1
  18. package/i18n/czech.js +1 -1
  19. package/i18n/czech.min.js +1 -1
  20. package/i18n/danish.js +1 -1
  21. package/i18n/danish.min.js +1 -1
  22. package/i18n/dutch.js +1 -1
  23. package/i18n/dutch.min.js +1 -1
  24. package/i18n/english.js +1 -1
  25. package/i18n/english.min.js +1 -1
  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 +1 -1
  113. package/modern.fontless.css +1 -1
  114. package/modern.fontless.min.css +1 -1
  115. package/modern.min.css +1 -1
  116. package/package.json +1 -1
  117. package/plugins/bootstrap-integration.js +1 -1
  118. package/plugins/bootstrap-integration.min.js +1 -1
  119. package/plugins/bootstrap-material-integration.js +1 -1
  120. package/plugins/bootstrap-material-integration.min.js +1 -1
  121. package/survey.core.js +221 -76
  122. package/survey.core.js.map +1 -1
  123. package/survey.core.min.js +3 -3
  124. package/survey.css +1 -1
  125. package/survey.i18n.js +1 -1
  126. package/survey.i18n.min.js +1 -1
  127. package/survey.min.css +1 -1
  128. package/themes/borderless-dark-panelless.js +1 -1
  129. package/themes/borderless-dark-panelless.min.js +1 -1
  130. package/themes/borderless-dark.js +1 -1
  131. package/themes/borderless-dark.min.js +1 -1
  132. package/themes/borderless-light-panelless..js +1 -1
  133. package/themes/borderless-light-panelless..min.js +1 -1
  134. package/themes/borderless-light.js +1 -1
  135. package/themes/borderless-light.min.js +1 -1
  136. package/themes/contrast-dark-panelless.js +1 -1
  137. package/themes/contrast-dark-panelless.min.js +1 -1
  138. package/themes/contrast-dark.js +1 -1
  139. package/themes/contrast-dark.min.js +1 -1
  140. package/themes/contrast-light-panelless.js +1 -1
  141. package/themes/contrast-light-panelless.min.js +1 -1
  142. package/themes/contrast-light.js +1 -1
  143. package/themes/contrast-light.min.js +1 -1
  144. package/themes/default-dark-panelless.js +1 -1
  145. package/themes/default-dark-panelless.min.js +1 -1
  146. package/themes/default-dark.js +1 -1
  147. package/themes/default-dark.min.js +1 -1
  148. package/themes/default-light-panelless.js +1 -1
  149. package/themes/default-light-panelless.min.js +1 -1
  150. package/themes/default-light.js +1 -1
  151. package/themes/default-light.min.js +1 -1
  152. package/themes/doubleborder-dark-panelless.js +1 -1
  153. package/themes/doubleborder-dark-panelless.min.js +1 -1
  154. package/themes/doubleborder-dark.js +1 -1
  155. package/themes/doubleborder-dark.min.js +1 -1
  156. package/themes/doubleborder-light-panelles.js +1 -1
  157. package/themes/doubleborder-light-panelles.min.js +1 -1
  158. package/themes/doubleborder-light.js +1 -1
  159. package/themes/doubleborder-light.min.js +1 -1
  160. package/themes/flat-dark-panelless.js +1 -1
  161. package/themes/flat-dark-panelless.min.js +1 -1
  162. package/themes/flat-dark.js +1 -1
  163. package/themes/flat-dark.min.js +1 -1
  164. package/themes/flat-light-panelless.js +1 -1
  165. package/themes/flat-light-panelless.min.js +1 -1
  166. package/themes/flat-light.js +1 -1
  167. package/themes/flat-light.min.js +1 -1
  168. package/themes/index.js +1 -1
  169. package/themes/index.min.js +1 -1
  170. package/themes/layered-dark-panelless.js +1 -1
  171. package/themes/layered-dark-panelless.min.js +1 -1
  172. package/themes/layered-dark.js +1 -1
  173. package/themes/layered-dark.min.js +1 -1
  174. package/themes/layered-light-panelless.js +1 -1
  175. package/themes/layered-light-panelless.min.js +1 -1
  176. package/themes/layered-light.js +1 -1
  177. package/themes/layered-light.min.js +1 -1
  178. package/themes/plain-dark-panelless.js +1 -1
  179. package/themes/plain-dark-panelless.min.js +1 -1
  180. package/themes/plain-dark.js +1 -1
  181. package/themes/plain-dark.min.js +1 -1
  182. package/themes/plain-light-panelless.js +1 -1
  183. package/themes/plain-light-panelless.min.js +1 -1
  184. package/themes/plain-light.js +1 -1
  185. package/themes/plain-light.min.js +1 -1
  186. package/themes/sharp-dark-panelless.js +1 -1
  187. package/themes/sharp-dark-panelless.min.js +1 -1
  188. package/themes/sharp-dark.js +1 -1
  189. package/themes/sharp-dark.min.js +1 -1
  190. package/themes/sharp-light-panelless.js +1 -1
  191. package/themes/sharp-light-panelless.min.js +1 -1
  192. package/themes/sharp-light.js +1 -1
  193. package/themes/sharp-light.min.js +1 -1
  194. package/themes/solid-dark-panelless.js +1 -1
  195. package/themes/solid-dark-panelless.min.js +1 -1
  196. package/themes/solid-dark.js +1 -1
  197. package/themes/solid-dark.min.js +1 -1
  198. package/themes/solid-light-panelless.js +1 -1
  199. package/themes/solid-light-panelless.min.js +1 -1
  200. package/themes/solid-light.js +1 -1
  201. package/themes/solid-light.min.js +1 -1
  202. package/themes/three-dimensional-dark-panelless.js +1 -1
  203. package/themes/three-dimensional-dark-panelless.min.js +1 -1
  204. package/themes/three-dimensional-dark.js +1 -1
  205. package/themes/three-dimensional-dark.min.js +1 -1
  206. package/themes/three-dimensional-light-panelless.js +1 -1
  207. package/themes/three-dimensional-light-panelless.min.js +1 -1
  208. package/themes/three-dimensional-light.js +1 -1
  209. package/themes/three-dimensional-light.min.js +1 -1
  210. package/ts3.4/typings/console-warnings.d.ts +1 -0
  211. package/ts3.4/typings/dropdownListModel.d.ts +2 -1
  212. package/ts3.4/typings/localizablestring.d.ts +0 -1
  213. package/ts3.4/typings/martixBase.d.ts +1 -0
  214. package/ts3.4/typings/question.d.ts +2 -0
  215. package/ts3.4/typings/question_baseselect.d.ts +12 -2
  216. package/ts3.4/typings/question_checkbox.d.ts +5 -2
  217. package/ts3.4/typings/question_custom.d.ts +7 -1
  218. package/ts3.4/typings/question_imagepicker.d.ts +2 -1
  219. package/ts3.4/typings/settings.d.ts +5 -0
  220. package/ts3.4/typings/survey-events-api.d.ts +2 -2
  221. package/ts3.4/typings/survey.d.ts +1 -1
  222. package/typings/console-warnings.d.ts +1 -0
  223. package/typings/dropdownListModel.d.ts +2 -1
  224. package/typings/localizablestring.d.ts +0 -1
  225. package/typings/martixBase.d.ts +1 -0
  226. package/typings/question.d.ts +2 -0
  227. package/typings/question_baseselect.d.ts +12 -2
  228. package/typings/question_checkbox.d.ts +5 -2
  229. package/typings/question_custom.d.ts +7 -1
  230. package/typings/question_imagepicker.d.ts +2 -1
  231. package/typings/settings.d.ts +5 -0
  232. package/typings/survey-events-api.d.ts +2 -2
  233. package/typings/survey.d.ts +1 -1
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * surveyjs - Survey JavaScript library v1.9.116
2
+ * surveyjs - Survey JavaScript library v1.9.117
3
3
  * Copyright (c) 2015-2023 Devsoft Baltic OÜ - http://surveyjs.io/
4
4
  * License: MIT (http://www.opensource.org/licenses/mit-license.php)
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * surveyjs - Survey JavaScript library v1.9.116
2
+ * surveyjs - Survey JavaScript library v1.9.117
3
3
  * Copyright (c) 2015-2023 Devsoft Baltic OÜ - http://surveyjs.io/
4
4
  * License: MIT (http://www.opensource.org/licenses/mit-license.php)
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * surveyjs - Survey JavaScript library v1.9.116
2
+ * surveyjs - Survey JavaScript library v1.9.117
3
3
  * Copyright (c) 2015-2023 Devsoft Baltic OÜ - http://surveyjs.io/
4
4
  * License: MIT (http://www.opensource.org/licenses/mit-license.php)
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * surveyjs - Survey JavaScript library v1.9.116
2
+ * surveyjs - Survey JavaScript library v1.9.117
3
3
  * Copyright (c) 2015-2023 Devsoft Baltic OÜ - http://surveyjs.io/
4
4
  * License: MIT (http://www.opensource.org/licenses/mit-license.php)
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * surveyjs - Survey JavaScript library v1.9.116
2
+ * surveyjs - Survey JavaScript library v1.9.117
3
3
  * Copyright (c) 2015-2023 Devsoft Baltic OÜ - http://surveyjs.io/
4
4
  * License: MIT (http://www.opensource.org/licenses/mit-license.php)
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * surveyjs - Survey JavaScript library v1.9.116
2
+ * surveyjs - Survey JavaScript library v1.9.117
3
3
  * Copyright (c) 2015-2023 Devsoft Baltic OÜ - http://surveyjs.io/
4
4
  * License: MIT (http://www.opensource.org/licenses/mit-license.php)
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * surveyjs - Survey JavaScript library v1.9.116
2
+ * surveyjs - Survey JavaScript library v1.9.117
3
3
  * Copyright (c) 2015-2023 Devsoft Baltic OÜ - http://surveyjs.io/
4
4
  * License: MIT (http://www.opensource.org/licenses/mit-license.php)
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * surveyjs - Survey JavaScript library v1.9.116
2
+ * surveyjs - Survey JavaScript library v1.9.117
3
3
  * Copyright (c) 2015-2023 Devsoft Baltic OÜ - http://surveyjs.io/
4
4
  * License: MIT (http://www.opensource.org/licenses/mit-license.php)
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * surveyjs - Survey JavaScript library v1.9.116
2
+ * surveyjs - Survey JavaScript library v1.9.117
3
3
  * Copyright (c) 2015-2023 Devsoft Baltic OÜ - http://surveyjs.io/
4
4
  * License: MIT (http://www.opensource.org/licenses/mit-license.php)
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * surveyjs - Survey JavaScript library v1.9.116
2
+ * surveyjs - Survey JavaScript library v1.9.117
3
3
  * Copyright (c) 2015-2023 Devsoft Baltic OÜ - http://surveyjs.io/
4
4
  * License: MIT (http://www.opensource.org/licenses/mit-license.php)
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * surveyjs - Survey JavaScript library v1.9.116
2
+ * surveyjs - Survey JavaScript library v1.9.117
3
3
  * Copyright (c) 2015-2023 Devsoft Baltic OÜ - http://surveyjs.io/
4
4
  * License: MIT (http://www.opensource.org/licenses/mit-license.php)
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*!
2
- * surveyjs - Survey JavaScript library v1.9.116
2
+ * surveyjs - Survey JavaScript library v1.9.117
3
3
  * Copyright (c) 2015-2023 Devsoft Baltic OÜ - http://surveyjs.io/
4
4
  * License: MIT (http://www.opensource.org/licenses/mit-license.php)
5
5
  */
@@ -2,4 +2,5 @@ export declare class ConsoleWarnings {
2
2
  static disposedObjectChangedProperty(propName: string, objType: string): void;
3
3
  static inCorrectQuestionValue(questionName: string, val: any): void;
4
4
  static warn(text: string): void;
5
+ static error(text: string): void;
5
6
  }
@@ -61,7 +61,8 @@ export declare class DropdownListModel extends Base {
61
61
  private qustionPropertyChangedHandler;
62
62
  constructor(question: Question, onSelectionChanged?: (item: IAction, ...params: any[]) => void);
63
63
  readonly popupModel: PopupModel;
64
- readonly inputReadOnly: boolean;
64
+ readonly noTabIndex: boolean;
65
+ readonly filterReadOnly: boolean;
65
66
  readonly filterStringEnabled: boolean;
66
67
  readonly inputMode: "none" | "text";
67
68
  setSearchEnabled(newValue: boolean): void;
@@ -32,7 +32,6 @@ export declare class LocalizableString implements ILocalizableString {
32
32
  private _localizationName;
33
33
  localizationName: string;
34
34
  onGetTextCallback: (str: string) => string;
35
- onGetDefaultTextCallback: () => string;
36
35
  storeDefaultText: boolean;
37
36
  onGetLocalizationTextCallback: (str: string) => string;
38
37
  onStrChanged: (oldValue: string, newValue: string) => void;
@@ -102,4 +102,5 @@ export declare class QuestionMatrixBaseModel<TRow, TColumn> extends Question {
102
102
  * A width for the column that displays row titles (first column). Accepts CSS values.
103
103
  */
104
104
  rowTitleWidth: string;
105
+ getCellAriaLabel(rowTitle: string, columnTitle: string): string;
105
106
  }
@@ -84,6 +84,7 @@ export declare class Question extends SurveyElement<Question> implements IQuesti
84
84
  isMobile: boolean;
85
85
  forceIsInputReadOnly: boolean;
86
86
  constructor(name: string);
87
+ protected getDefaultTitle(): string;
87
88
  protected createLocTitleProperty(): LocalizableString;
88
89
  getSurvey(live?: boolean): ISurvey;
89
90
  getValueName(): string;
@@ -349,6 +350,7 @@ export declare class Question extends SurveyElement<Question> implements IQuesti
349
350
  readonly isContainer: boolean;
350
351
  protected updateCommentElements(): void;
351
352
  onCommentInput(event: any): void;
353
+ onCompositionUpdateComment(event: any): void;
352
354
  onCommentChange(event: any): void;
353
355
  afterRenderQuestionElement(el: HTMLElement): void;
354
356
  afterRender(el: HTMLElement): void;
@@ -292,6 +292,15 @@ export declare class QuestionSelectBase extends Question {
292
292
  setCanShowOptionItemCallback(func: (item: ItemValue) => boolean): void;
293
293
  readonly newItem: ItemValue;
294
294
  protected addToVisibleChoices(items: Array<ItemValue>, isAddAll: boolean): void;
295
+ protected addNewItemToVisibleChoices(items: Array<ItemValue>, isAddAll: boolean): void;
296
+ protected addNonChoicesItems(dict: Array<{
297
+ index: number;
298
+ item: ItemValue;
299
+ }>, isAddAll: boolean): void;
300
+ protected addNonChoiceItem(dict: Array<{
301
+ index: number;
302
+ item: ItemValue;
303
+ }>, item: ItemValue, order: Array<number>): void;
295
304
  protected canShowOptionItem(item: ItemValue, isAddAll: boolean, hasItem: boolean): boolean;
296
305
  isItemInList(item: ItemValue): boolean;
297
306
  protected readonly isAddDefaultItems: boolean;
@@ -315,8 +324,6 @@ export declare class QuestionSelectBase extends Question {
315
324
  private getChoicesFromSelectQuestion;
316
325
  private copyChoiceItem;
317
326
  protected readonly hasActiveChoices: boolean;
318
- protected isHeadChoice(item: ItemValue, question: QuestionSelectBase): boolean;
319
- protected isFootChoice(item: ItemValue, question: QuestionSelectBase): boolean;
320
327
  protected isBuiltInChoice(item: ItemValue, question: QuestionSelectBase): boolean;
321
328
  protected getChoices(): Array<ItemValue>;
322
329
  supportOther(): boolean;
@@ -332,6 +339,7 @@ export declare class QuestionSelectBase extends Question {
332
339
  protected getCommentFromValue(newValue: any): string;
333
340
  protected setOtherValueIntoValue(newValue: any): any;
334
341
  onOtherValueInput(event: any): void;
342
+ onCompositionUpdateOtherValue(event: any): void;
335
343
  onOtherValueChange(event: any): void;
336
344
  private isRunningChoices;
337
345
  private runChoicesByUrl;
@@ -375,6 +383,8 @@ export declare class QuestionSelectBase extends Question {
375
383
  protected getItemClassCore(item: any, options: any): string;
376
384
  getLabelClass(item: ItemValue): string;
377
385
  getControlLabelClass(item: ItemValue): string;
386
+ private headItemsCount;
387
+ private footItemsCount;
378
388
  readonly headItems: ItemValue[];
379
389
  readonly footItems: ItemValue[];
380
390
  readonly dataChoices: ItemValue[];
@@ -107,8 +107,11 @@ export declare class QuestionCheckboxModel extends QuestionCheckboxBase {
107
107
  private noneIndexInArray;
108
108
  protected canUseFilteredChoices(): boolean;
109
109
  protected supportSelectAll(): boolean;
110
- protected addToVisibleChoices(items: Array<ItemValue>, isAddAll: boolean): void;
111
- protected isHeadChoice(item: ItemValue, question: QuestionSelectBase): boolean;
110
+ protected addNonChoicesItems(dict: Array<{
111
+ index: number;
112
+ item: ItemValue;
113
+ }>, isAddAll: boolean): void;
114
+ protected isBuiltInChoice(item: ItemValue, question: QuestionSelectBase): boolean;
112
115
  isItemInList(item: ItemValue): boolean;
113
116
  protected getDisplayValueCore(keysAsText: boolean, value: any): any;
114
117
  protected clearIncorrectValuesCore(): void;
@@ -31,6 +31,7 @@ export interface ICustomQuestionTypeConfiguration {
31
31
  * [UI Icons](https://surveyjs.io/form-library/documentation/icons (linkStyle))
32
32
  */
33
33
  iconName?: string;
34
+ internal?: boolean;
34
35
  /**
35
36
  * A function that is called when the custom question type is initialized. Use it to add, remove, or modify the type's properties (see [Override Base Question Properties](https://surveyjs.io/form-library/documentation/customize-question-types/create-composite-question-types#override-base-question-properties)).
36
37
  */
@@ -218,9 +219,12 @@ export declare class ComponentCollection {
218
219
  onCreateCustom: (name: string, questionJSON: ComponentQuestionJSON) => QuestionCustomModel;
219
220
  onAddingJson: (name: string, isComposite: boolean) => void;
220
221
  add(json: ICustomQuestionTypeConfiguration): void;
222
+ remove(componentName: string): boolean;
221
223
  readonly items: Array<ComponentQuestionJSON>;
222
224
  getCustomQuestionByName(name: string): ComponentQuestionJSON;
223
- clear(): void;
225
+ private getCustomQuestionIndex;
226
+ private removeByIndex;
227
+ clear(includeInternal?: boolean): void;
224
228
  createQuestion(name: string, questionJSON: ComponentQuestionJSON): Question;
225
229
  protected createCompositeModel(name: string, questionJSON: ComponentQuestionJSON): QuestionCompositeModel;
226
230
  protected createCustomModel(name: string, questionJSON: ComponentQuestionJSON): QuestionCustomModel;
@@ -277,11 +281,13 @@ export declare abstract class QuestionCustomModelBase extends Question implement
277
281
  }
278
282
  export declare class QuestionCustomModel extends QuestionCustomModelBase {
279
283
  private questionWrapper;
284
+ private hasJSONTitle;
280
285
  getTemplate(): string;
281
286
  protected createWrapper(): void;
282
287
  protected getElement(): SurveyElement;
283
288
  onAnyValueChanged(name: string, questionName: string): void;
284
289
  protected getQuestionByName(name: string): IQuestion;
290
+ protected getDefaultTitle(): string;
285
291
  setValue(name: string, newValue: any, locNotification: any, allowNotifyValueChanged?: boolean): any;
286
292
  protected onSetData(): void;
287
293
  hasErrors(fireCallback?: boolean, rec?: any): boolean;
@@ -101,7 +101,8 @@ export declare class QuestionImagePickerModel extends QuestionCheckboxBase {
101
101
  contentMode: string;
102
102
  protected convertDefaultValue(val: any): any;
103
103
  readonly inputType: "checkbox" | "radio";
104
- protected isFootChoice(_item: ItemValue, _question: QuestionSelectBase): boolean;
104
+ protected isBuiltInChoice(item: ItemValue, question: QuestionSelectBase): boolean;
105
+ protected addToVisibleChoices(items: Array<ItemValue>, isAddAll: boolean): void;
105
106
  getSelectBaseRootCss(): string;
106
107
  private isResponsiveValue;
107
108
  maxImageWidth: number;
@@ -485,6 +485,11 @@ export declare var settings: {
485
485
  * Default value: `"none"`
486
486
  */
487
487
  noneItemValue: string;
488
+ specialChoicesOrder: {
489
+ selectAllItem: number[];
490
+ noneItem: number[];
491
+ otherItem: number[];
492
+ };
488
493
  /**
489
494
  * A list of supported validators by question type.
490
495
  */
@@ -509,7 +509,7 @@ export interface UploadFilesEvent extends LoadFilesEvent {
509
509
  }
510
510
  export interface DownloadFileEvent extends LoadFilesEvent {
511
511
  /**
512
- * A callback function that you should call when a file is downloaded successfully or when deletion fails. Pass `"success"` or `"error"` as the first argument to indicate the operation status. As the second argument, you can pass the downloaded file's data as a Base64 string if file upload was successful or an error message if file upload failed.
512
+ * A callback function that you should call when a file is downloaded successfully or when deletion fails. Pass `"success"` or `"error"` as the first argument to indicate the operation status. As the second argument, you can pass the downloaded file's data as a Base64 string if file download was successful or an error message if file download failed.
513
513
  */
514
514
  callback: (status: string, data?: any) => any;
515
515
  /**
@@ -523,7 +523,7 @@ export interface DownloadFileEvent extends LoadFilesEvent {
523
523
  }
524
524
  export interface ClearFilesEvent extends LoadFilesEvent {
525
525
  /**
526
- * A callback function that you should call when files are deleted successfully or when deletion fails. Pass `"success"` or `"error"` as the first argument to indicate the operation status. As the second argument, you can pass deleted files' data (`options.value`) if file upload was successful or an error message if file upload failed.
526
+ * A callback function that you should call when files are deleted successfully or when deletion fails. Pass `"success"` or `"error"` as the first argument to indicate the operation status. As the second argument, you can pass deleted files' data (`options.value`) if file deletion was successful or an error message if file deletion failed.
527
527
  */
528
528
  callback: (status: string, data?: any) => any;
529
529
  /**
@@ -1826,7 +1826,7 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
1826
1826
  private changeCurrentPageFromPreview;
1827
1827
  private origionalPages;
1828
1828
  protected onQuestionsOnPageModeChanged(oldValue: string): void;
1829
- private restoreOrigionalPages;
1829
+ private restoreOriginalPages;
1830
1830
  private getPageStartIndex;
1831
1831
  private setupPagesForPageModes;
1832
1832
  private createPagesForQuestionOnPageMode;
@@ -2,4 +2,5 @@ export declare class ConsoleWarnings {
2
2
  static disposedObjectChangedProperty(propName: string, objType: string): void;
3
3
  static inCorrectQuestionValue(questionName: string, val: any): void;
4
4
  static warn(text: string): void;
5
+ static error(text: string): void;
5
6
  }
@@ -62,7 +62,8 @@ export declare class DropdownListModel extends Base {
62
62
  private qustionPropertyChangedHandler;
63
63
  constructor(question: Question, onSelectionChanged?: (item: IAction, ...params: any[]) => void);
64
64
  get popupModel(): PopupModel;
65
- get inputReadOnly(): boolean;
65
+ get noTabIndex(): boolean;
66
+ get filterReadOnly(): boolean;
66
67
  get filterStringEnabled(): boolean;
67
68
  get inputMode(): "none" | "text";
68
69
  setSearchEnabled(newValue: boolean): void;
@@ -34,7 +34,6 @@ export declare class LocalizableString implements ILocalizableString {
34
34
  get localizationName(): string;
35
35
  set localizationName(val: string);
36
36
  onGetTextCallback: (str: string) => string;
37
- onGetDefaultTextCallback: () => string;
38
37
  storeDefaultText: boolean;
39
38
  onGetLocalizationTextCallback: (str: string) => string;
40
39
  onStrChanged: (oldValue: string, newValue: string) => void;
@@ -109,4 +109,5 @@ export declare class QuestionMatrixBaseModel<TRow, TColumn> extends Question {
109
109
  */
110
110
  get rowTitleWidth(): string;
111
111
  set rowTitleWidth(val: string);
112
+ getCellAriaLabel(rowTitle: string, columnTitle: string): string;
112
113
  }
@@ -84,6 +84,7 @@ export declare class Question extends SurveyElement<Question> implements IQuesti
84
84
  isMobile: boolean;
85
85
  forceIsInputReadOnly: boolean;
86
86
  constructor(name: string);
87
+ protected getDefaultTitle(): string;
87
88
  protected createLocTitleProperty(): LocalizableString;
88
89
  getSurvey(live?: boolean): ISurvey;
89
90
  getValueName(): string;
@@ -362,6 +363,7 @@ export declare class Question extends SurveyElement<Question> implements IQuesti
362
363
  get isContainer(): boolean;
363
364
  protected updateCommentElements(): void;
364
365
  onCommentInput(event: any): void;
366
+ onCompositionUpdateComment(event: any): void;
365
367
  onCommentChange(event: any): void;
366
368
  afterRenderQuestionElement(el: HTMLElement): void;
367
369
  afterRender(el: HTMLElement): void;
@@ -314,6 +314,15 @@ export declare class QuestionSelectBase extends Question {
314
314
  setCanShowOptionItemCallback(func: (item: ItemValue) => boolean): void;
315
315
  get newItem(): ItemValue;
316
316
  protected addToVisibleChoices(items: Array<ItemValue>, isAddAll: boolean): void;
317
+ protected addNewItemToVisibleChoices(items: Array<ItemValue>, isAddAll: boolean): void;
318
+ protected addNonChoicesItems(dict: Array<{
319
+ index: number;
320
+ item: ItemValue;
321
+ }>, isAddAll: boolean): void;
322
+ protected addNonChoiceItem(dict: Array<{
323
+ index: number;
324
+ item: ItemValue;
325
+ }>, item: ItemValue, order: Array<number>): void;
317
326
  protected canShowOptionItem(item: ItemValue, isAddAll: boolean, hasItem: boolean): boolean;
318
327
  isItemInList(item: ItemValue): boolean;
319
328
  protected get isAddDefaultItems(): boolean;
@@ -337,8 +346,6 @@ export declare class QuestionSelectBase extends Question {
337
346
  private getChoicesFromSelectQuestion;
338
347
  private copyChoiceItem;
339
348
  protected get hasActiveChoices(): boolean;
340
- protected isHeadChoice(item: ItemValue, question: QuestionSelectBase): boolean;
341
- protected isFootChoice(item: ItemValue, question: QuestionSelectBase): boolean;
342
349
  protected isBuiltInChoice(item: ItemValue, question: QuestionSelectBase): boolean;
343
350
  protected getChoices(): Array<ItemValue>;
344
351
  supportOther(): boolean;
@@ -354,6 +361,7 @@ export declare class QuestionSelectBase extends Question {
354
361
  protected getCommentFromValue(newValue: any): string;
355
362
  protected setOtherValueIntoValue(newValue: any): any;
356
363
  onOtherValueInput(event: any): void;
364
+ onCompositionUpdateOtherValue(event: any): void;
357
365
  onOtherValueChange(event: any): void;
358
366
  private isRunningChoices;
359
367
  private runChoicesByUrl;
@@ -397,6 +405,8 @@ export declare class QuestionSelectBase extends Question {
397
405
  protected getItemClassCore(item: any, options: any): string;
398
406
  getLabelClass(item: ItemValue): string;
399
407
  getControlLabelClass(item: ItemValue): string;
408
+ private headItemsCount;
409
+ private footItemsCount;
400
410
  get headItems(): ItemValue[];
401
411
  get footItems(): ItemValue[];
402
412
  get dataChoices(): ItemValue[];
@@ -114,8 +114,11 @@ export declare class QuestionCheckboxModel extends QuestionCheckboxBase {
114
114
  private noneIndexInArray;
115
115
  protected canUseFilteredChoices(): boolean;
116
116
  protected supportSelectAll(): boolean;
117
- protected addToVisibleChoices(items: Array<ItemValue>, isAddAll: boolean): void;
118
- protected isHeadChoice(item: ItemValue, question: QuestionSelectBase): boolean;
117
+ protected addNonChoicesItems(dict: Array<{
118
+ index: number;
119
+ item: ItemValue;
120
+ }>, isAddAll: boolean): void;
121
+ protected isBuiltInChoice(item: ItemValue, question: QuestionSelectBase): boolean;
119
122
  isItemInList(item: ItemValue): boolean;
120
123
  protected getDisplayValueCore(keysAsText: boolean, value: any): any;
121
124
  protected clearIncorrectValuesCore(): void;
@@ -31,6 +31,7 @@ export interface ICustomQuestionTypeConfiguration {
31
31
  * [UI Icons](https://surveyjs.io/form-library/documentation/icons (linkStyle))
32
32
  */
33
33
  iconName?: string;
34
+ internal?: boolean;
34
35
  /**
35
36
  * A function that is called when the custom question type is initialized. Use it to add, remove, or modify the type's properties (see [Override Base Question Properties](https://surveyjs.io/form-library/documentation/customize-question-types/create-composite-question-types#override-base-question-properties)).
36
37
  */
@@ -218,9 +219,12 @@ export declare class ComponentCollection {
218
219
  onCreateCustom: (name: string, questionJSON: ComponentQuestionJSON) => QuestionCustomModel;
219
220
  onAddingJson: (name: string, isComposite: boolean) => void;
220
221
  add(json: ICustomQuestionTypeConfiguration): void;
222
+ remove(componentName: string): boolean;
221
223
  get items(): Array<ComponentQuestionJSON>;
222
224
  getCustomQuestionByName(name: string): ComponentQuestionJSON;
223
- clear(): void;
225
+ private getCustomQuestionIndex;
226
+ private removeByIndex;
227
+ clear(includeInternal?: boolean): void;
224
228
  createQuestion(name: string, questionJSON: ComponentQuestionJSON): Question;
225
229
  protected createCompositeModel(name: string, questionJSON: ComponentQuestionJSON): QuestionCompositeModel;
226
230
  protected createCustomModel(name: string, questionJSON: ComponentQuestionJSON): QuestionCustomModel;
@@ -277,11 +281,13 @@ export declare abstract class QuestionCustomModelBase extends Question implement
277
281
  }
278
282
  export declare class QuestionCustomModel extends QuestionCustomModelBase {
279
283
  private questionWrapper;
284
+ private hasJSONTitle;
280
285
  getTemplate(): string;
281
286
  protected createWrapper(): void;
282
287
  protected getElement(): SurveyElement;
283
288
  onAnyValueChanged(name: string, questionName: string): void;
284
289
  protected getQuestionByName(name: string): IQuestion;
290
+ protected getDefaultTitle(): string;
285
291
  setValue(name: string, newValue: any, locNotification: any, allowNotifyValueChanged?: boolean): any;
286
292
  protected onSetData(): void;
287
293
  hasErrors(fireCallback?: boolean, rec?: any): boolean;
@@ -109,7 +109,8 @@ export declare class QuestionImagePickerModel extends QuestionCheckboxBase {
109
109
  set contentMode(val: string);
110
110
  protected convertDefaultValue(val: any): any;
111
111
  get inputType(): "checkbox" | "radio";
112
- protected isFootChoice(_item: ItemValue, _question: QuestionSelectBase): boolean;
112
+ protected isBuiltInChoice(item: ItemValue, question: QuestionSelectBase): boolean;
113
+ protected addToVisibleChoices(items: Array<ItemValue>, isAddAll: boolean): void;
113
114
  getSelectBaseRootCss(): string;
114
115
  private isResponsiveValue;
115
116
  maxImageWidth: number;
@@ -485,6 +485,11 @@ export declare var settings: {
485
485
  * Default value: `"none"`
486
486
  */
487
487
  noneItemValue: string;
488
+ specialChoicesOrder: {
489
+ selectAllItem: number[];
490
+ noneItem: number[];
491
+ otherItem: number[];
492
+ };
488
493
  /**
489
494
  * A list of supported validators by question type.
490
495
  */
@@ -509,7 +509,7 @@ export interface UploadFilesEvent extends LoadFilesEvent {
509
509
  }
510
510
  export interface DownloadFileEvent extends LoadFilesEvent {
511
511
  /**
512
- * A callback function that you should call when a file is downloaded successfully or when deletion fails. Pass `"success"` or `"error"` as the first argument to indicate the operation status. As the second argument, you can pass the downloaded file's data as a Base64 string if file upload was successful or an error message if file upload failed.
512
+ * A callback function that you should call when a file is downloaded successfully or when deletion fails. Pass `"success"` or `"error"` as the first argument to indicate the operation status. As the second argument, you can pass the downloaded file's data as a Base64 string if file download was successful or an error message if file download failed.
513
513
  */
514
514
  callback: (status: string, data?: any) => any;
515
515
  /**
@@ -523,7 +523,7 @@ export interface DownloadFileEvent extends LoadFilesEvent {
523
523
  }
524
524
  export interface ClearFilesEvent extends LoadFilesEvent {
525
525
  /**
526
- * A callback function that you should call when files are deleted successfully or when deletion fails. Pass `"success"` or `"error"` as the first argument to indicate the operation status. As the second argument, you can pass deleted files' data (`options.value`) if file upload was successful or an error message if file upload failed.
526
+ * A callback function that you should call when files are deleted successfully or when deletion fails. Pass `"success"` or `"error"` as the first argument to indicate the operation status. As the second argument, you can pass deleted files' data (`options.value`) if file deletion was successful or an error message if file deletion failed.
527
527
  */
528
528
  callback: (status: string, data?: any) => any;
529
529
  /**
@@ -1907,7 +1907,7 @@ export declare class SurveyModel extends SurveyElementCore implements ISurvey, I
1907
1907
  private changeCurrentPageFromPreview;
1908
1908
  private origionalPages;
1909
1909
  protected onQuestionsOnPageModeChanged(oldValue: string): void;
1910
- private restoreOrigionalPages;
1910
+ private restoreOriginalPages;
1911
1911
  private getPageStartIndex;
1912
1912
  private setupPagesForPageModes;
1913
1913
  private createPagesForQuestionOnPageMode;