survey-core 1.9.126 → 1.9.128

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 (443) hide show
  1. package/defaultV2.css +313 -79
  2. package/defaultV2.css.map +1 -1
  3. package/defaultV2.fontless.css +313 -79
  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 +5 -1
  8. package/i18n/arabic.js.map +1 -1
  9. package/i18n/arabic.min.js +2 -2
  10. package/i18n/basque.js +5 -1
  11. package/i18n/basque.js.map +1 -1
  12. package/i18n/basque.min.js +2 -2
  13. package/i18n/bulgarian.js +5 -1
  14. package/i18n/bulgarian.js.map +1 -1
  15. package/i18n/bulgarian.min.js +2 -2
  16. package/i18n/catalan.js +5 -1
  17. package/i18n/catalan.js.map +1 -1
  18. package/i18n/catalan.min.js +2 -2
  19. package/i18n/croatian.js +5 -1
  20. package/i18n/croatian.js.map +1 -1
  21. package/i18n/croatian.min.js +2 -2
  22. package/i18n/czech.js +5 -1
  23. package/i18n/czech.js.map +1 -1
  24. package/i18n/czech.min.js +2 -2
  25. package/i18n/danish.js +5 -1
  26. package/i18n/danish.js.map +1 -1
  27. package/i18n/danish.min.js +2 -2
  28. package/i18n/dutch.js +5 -1
  29. package/i18n/dutch.js.map +1 -1
  30. package/i18n/dutch.min.js +2 -2
  31. package/i18n/english.js +3 -1
  32. package/i18n/english.js.map +1 -1
  33. package/i18n/english.min.js +2 -2
  34. package/i18n/estonian.js +5 -1
  35. package/i18n/estonian.js.map +1 -1
  36. package/i18n/estonian.min.js +2 -2
  37. package/i18n/finnish.js +5 -1
  38. package/i18n/finnish.js.map +1 -1
  39. package/i18n/finnish.min.js +2 -2
  40. package/i18n/french.js +5 -1
  41. package/i18n/french.js.map +1 -1
  42. package/i18n/french.min.js +2 -2
  43. package/i18n/georgian.js +5 -1
  44. package/i18n/georgian.js.map +1 -1
  45. package/i18n/georgian.min.js +2 -2
  46. package/i18n/german.js +5 -1
  47. package/i18n/german.js.map +1 -1
  48. package/i18n/german.min.js +2 -2
  49. package/i18n/greek.js +5 -1
  50. package/i18n/greek.js.map +1 -1
  51. package/i18n/greek.min.js +2 -2
  52. package/i18n/hebrew.js +5 -1
  53. package/i18n/hebrew.js.map +1 -1
  54. package/i18n/hebrew.min.js +2 -2
  55. package/i18n/hindi.js +5 -2
  56. package/i18n/hindi.js.map +1 -1
  57. package/i18n/hindi.min.js +2 -2
  58. package/i18n/hungarian.js +5 -1
  59. package/i18n/hungarian.js.map +1 -1
  60. package/i18n/hungarian.min.js +2 -2
  61. package/i18n/icelandic.js +5 -1
  62. package/i18n/icelandic.js.map +1 -1
  63. package/i18n/icelandic.min.js +2 -2
  64. package/i18n/index.js +189 -13
  65. package/i18n/index.js.map +1 -1
  66. package/i18n/index.min.js +2 -2
  67. package/i18n/indonesian.js +5 -1
  68. package/i18n/indonesian.js.map +1 -1
  69. package/i18n/indonesian.min.js +2 -2
  70. package/i18n/italian.js +5 -1
  71. package/i18n/italian.js.map +1 -1
  72. package/i18n/italian.min.js +2 -2
  73. package/i18n/japanese.js +5 -1
  74. package/i18n/japanese.js.map +1 -1
  75. package/i18n/japanese.min.js +2 -2
  76. package/i18n/kazakh.js +5 -1
  77. package/i18n/kazakh.js.map +1 -1
  78. package/i18n/kazakh.min.js +2 -2
  79. package/i18n/korean.js +5 -1
  80. package/i18n/korean.js.map +1 -1
  81. package/i18n/korean.min.js +2 -2
  82. package/i18n/latvian.js +5 -1
  83. package/i18n/latvian.js.map +1 -1
  84. package/i18n/latvian.min.js +2 -2
  85. package/i18n/lithuanian.js +5 -1
  86. package/i18n/lithuanian.js.map +1 -1
  87. package/i18n/lithuanian.min.js +2 -2
  88. package/i18n/macedonian.js +5 -1
  89. package/i18n/macedonian.js.map +1 -1
  90. package/i18n/macedonian.min.js +2 -2
  91. package/i18n/malay.js +5 -1
  92. package/i18n/malay.js.map +1 -1
  93. package/i18n/malay.min.js +2 -2
  94. package/i18n/nl-BE.js +5 -1
  95. package/i18n/nl-BE.js.map +1 -1
  96. package/i18n/nl-BE.min.js +2 -2
  97. package/i18n/norwegian.js +5 -1
  98. package/i18n/norwegian.js.map +1 -1
  99. package/i18n/norwegian.min.js +2 -2
  100. package/i18n/persian.js +5 -1
  101. package/i18n/persian.js.map +1 -1
  102. package/i18n/persian.min.js +2 -2
  103. package/i18n/polish.js +5 -1
  104. package/i18n/polish.js.map +1 -1
  105. package/i18n/polish.min.js +2 -2
  106. package/i18n/portuguese-br.js +5 -1
  107. package/i18n/portuguese-br.js.map +1 -1
  108. package/i18n/portuguese-br.min.js +2 -2
  109. package/i18n/portuguese.js +5 -1
  110. package/i18n/portuguese.js.map +1 -1
  111. package/i18n/portuguese.min.js +2 -2
  112. package/i18n/romanian.js +5 -1
  113. package/i18n/romanian.js.map +1 -1
  114. package/i18n/romanian.min.js +2 -2
  115. package/i18n/russian.js +5 -5
  116. package/i18n/russian.js.map +1 -1
  117. package/i18n/russian.min.js +2 -2
  118. package/i18n/serbian.js +5 -1
  119. package/i18n/serbian.js.map +1 -1
  120. package/i18n/serbian.min.js +2 -2
  121. package/i18n/simplified-chinese.js +5 -1
  122. package/i18n/simplified-chinese.js.map +1 -1
  123. package/i18n/simplified-chinese.min.js +2 -2
  124. package/i18n/slovak.js +5 -1
  125. package/i18n/slovak.js.map +1 -1
  126. package/i18n/slovak.min.js +2 -2
  127. package/i18n/spanish.js +5 -1
  128. package/i18n/spanish.js.map +1 -1
  129. package/i18n/spanish.min.js +2 -2
  130. package/i18n/swahili.js +5 -1
  131. package/i18n/swahili.js.map +1 -1
  132. package/i18n/swahili.min.js +2 -2
  133. package/i18n/swedish.js +5 -1
  134. package/i18n/swedish.js.map +1 -1
  135. package/i18n/swedish.min.js +2 -2
  136. package/i18n/tajik.js +1 -1
  137. package/i18n/tajik.min.js +1 -1
  138. package/i18n/telugu.js +5 -2
  139. package/i18n/telugu.js.map +1 -1
  140. package/i18n/telugu.min.js +2 -2
  141. package/i18n/thai.js +5 -2
  142. package/i18n/thai.js.map +1 -1
  143. package/i18n/thai.min.js +2 -2
  144. package/i18n/traditional-chinese.js +5 -2
  145. package/i18n/traditional-chinese.js.map +1 -1
  146. package/i18n/traditional-chinese.min.js +2 -2
  147. package/i18n/turkish.js +5 -2
  148. package/i18n/turkish.js.map +1 -1
  149. package/i18n/turkish.min.js +2 -2
  150. package/i18n/ukrainian.js +5 -2
  151. package/i18n/ukrainian.js.map +1 -1
  152. package/i18n/ukrainian.min.js +2 -2
  153. package/i18n/urdu.js +5 -2
  154. package/i18n/urdu.js.map +1 -1
  155. package/i18n/urdu.min.js +2 -2
  156. package/i18n/vietnamese.js +5 -2
  157. package/i18n/vietnamese.js.map +1 -1
  158. package/i18n/vietnamese.min.js +2 -2
  159. package/i18n/welsh.js +5 -2
  160. package/i18n/welsh.js.map +1 -1
  161. package/i18n/welsh.min.js +2 -2
  162. package/modern.css +62 -4
  163. package/modern.css.map +1 -1
  164. package/modern.fontless.css +62 -4
  165. package/modern.fontless.css.map +1 -1
  166. package/modern.fontless.min.css +2 -2
  167. package/modern.min.css +2 -2
  168. package/package.json +1 -1
  169. package/plugins/bootstrap-integration.js +1 -1
  170. package/plugins/bootstrap-integration.min.js +1 -1
  171. package/plugins/bootstrap-material-integration.js +1 -1
  172. package/plugins/bootstrap-material-integration.min.js +1 -1
  173. package/survey.core.js +961 -305
  174. package/survey.core.js.map +1 -1
  175. package/survey.core.min.js +3 -3
  176. package/survey.css +31 -4
  177. package/survey.css.map +1 -1
  178. package/survey.i18n.js +189 -13
  179. package/survey.i18n.js.map +1 -1
  180. package/survey.i18n.min.js +2 -2
  181. package/survey.min.css +2 -2
  182. package/themes/borderless-dark-panelless.js +2 -1
  183. package/themes/borderless-dark-panelless.js.map +1 -1
  184. package/themes/borderless-dark-panelless.min.js +2 -2
  185. package/themes/borderless-dark.js +2 -1
  186. package/themes/borderless-dark.js.map +1 -1
  187. package/themes/borderless-dark.min.js +2 -2
  188. package/themes/borderless-light-panelless..js +2 -1
  189. package/themes/borderless-light-panelless..js.map +1 -1
  190. package/themes/borderless-light-panelless..min.js +2 -2
  191. package/themes/borderless-light.js +2 -1
  192. package/themes/borderless-light.js.map +1 -1
  193. package/themes/borderless-light.min.js +2 -2
  194. package/themes/contrast-dark-panelless.js +2 -1
  195. package/themes/contrast-dark-panelless.js.map +1 -1
  196. package/themes/contrast-dark-panelless.min.js +2 -2
  197. package/themes/contrast-dark.js +2 -1
  198. package/themes/contrast-dark.js.map +1 -1
  199. package/themes/contrast-dark.min.js +2 -2
  200. package/themes/contrast-light-panelless.js +2 -1
  201. package/themes/contrast-light-panelless.js.map +1 -1
  202. package/themes/contrast-light-panelless.min.js +2 -2
  203. package/themes/contrast-light.js +2 -1
  204. package/themes/contrast-light.js.map +1 -1
  205. package/themes/contrast-light.min.js +2 -2
  206. package/themes/default-dark-panelless.js +2 -1
  207. package/themes/default-dark-panelless.js.map +1 -1
  208. package/themes/default-dark-panelless.min.js +2 -2
  209. package/themes/default-dark.js +2 -1
  210. package/themes/default-dark.js.map +1 -1
  211. package/themes/default-dark.min.js +2 -2
  212. package/themes/default-light-panelless.js +2 -1
  213. package/themes/default-light-panelless.js.map +1 -1
  214. package/themes/default-light-panelless.min.js +2 -2
  215. package/themes/default-light.js +2 -1
  216. package/themes/default-light.js.map +1 -1
  217. package/themes/default-light.min.js +2 -2
  218. package/themes/doubleborder-dark-panelless.js +2 -1
  219. package/themes/doubleborder-dark-panelless.js.map +1 -1
  220. package/themes/doubleborder-dark-panelless.min.js +2 -2
  221. package/themes/doubleborder-dark.js +2 -1
  222. package/themes/doubleborder-dark.js.map +1 -1
  223. package/themes/doubleborder-dark.min.js +2 -2
  224. package/themes/doubleborder-light-panelles.js +2 -1
  225. package/themes/doubleborder-light-panelles.js.map +1 -1
  226. package/themes/doubleborder-light-panelles.min.js +2 -2
  227. package/themes/doubleborder-light.js +2 -1
  228. package/themes/doubleborder-light.js.map +1 -1
  229. package/themes/doubleborder-light.min.js +2 -2
  230. package/themes/flat-dark-panelless.js +2 -1
  231. package/themes/flat-dark-panelless.js.map +1 -1
  232. package/themes/flat-dark-panelless.min.js +2 -2
  233. package/themes/flat-dark.js +2 -1
  234. package/themes/flat-dark.js.map +1 -1
  235. package/themes/flat-dark.min.js +2 -2
  236. package/themes/flat-light-panelless.js +2 -1
  237. package/themes/flat-light-panelless.js.map +1 -1
  238. package/themes/flat-light-panelless.min.js +2 -2
  239. package/themes/flat-light.js +2 -1
  240. package/themes/flat-light.js.map +1 -1
  241. package/themes/flat-light.min.js +2 -2
  242. package/themes/index.js +41 -1
  243. package/themes/index.js.map +1 -1
  244. package/themes/index.min.js +2 -2
  245. package/themes/layered-dark-panelless.js +2 -1
  246. package/themes/layered-dark-panelless.js.map +1 -1
  247. package/themes/layered-dark-panelless.min.js +2 -2
  248. package/themes/layered-dark.js +2 -1
  249. package/themes/layered-dark.js.map +1 -1
  250. package/themes/layered-dark.min.js +2 -2
  251. package/themes/layered-light-panelless.js +2 -1
  252. package/themes/layered-light-panelless.js.map +1 -1
  253. package/themes/layered-light-panelless.min.js +2 -2
  254. package/themes/layered-light.js +2 -1
  255. package/themes/layered-light.js.map +1 -1
  256. package/themes/layered-light.min.js +2 -2
  257. package/themes/plain-dark-panelless.js +2 -1
  258. package/themes/plain-dark-panelless.js.map +1 -1
  259. package/themes/plain-dark-panelless.min.js +2 -2
  260. package/themes/plain-dark.js +2 -1
  261. package/themes/plain-dark.js.map +1 -1
  262. package/themes/plain-dark.min.js +2 -2
  263. package/themes/plain-light-panelless.js +2 -1
  264. package/themes/plain-light-panelless.js.map +1 -1
  265. package/themes/plain-light-panelless.min.js +2 -2
  266. package/themes/plain-light.js +2 -1
  267. package/themes/plain-light.js.map +1 -1
  268. package/themes/plain-light.min.js +2 -2
  269. package/themes/sharp-dark-panelless.js +2 -1
  270. package/themes/sharp-dark-panelless.js.map +1 -1
  271. package/themes/sharp-dark-panelless.min.js +2 -2
  272. package/themes/sharp-dark.js +2 -1
  273. package/themes/sharp-dark.js.map +1 -1
  274. package/themes/sharp-dark.min.js +2 -2
  275. package/themes/sharp-light-panelless.js +2 -1
  276. package/themes/sharp-light-panelless.js.map +1 -1
  277. package/themes/sharp-light-panelless.min.js +2 -2
  278. package/themes/sharp-light.js +2 -1
  279. package/themes/sharp-light.js.map +1 -1
  280. package/themes/sharp-light.min.js +2 -2
  281. package/themes/solid-dark-panelless.js +2 -1
  282. package/themes/solid-dark-panelless.js.map +1 -1
  283. package/themes/solid-dark-panelless.min.js +2 -2
  284. package/themes/solid-dark.js +2 -1
  285. package/themes/solid-dark.js.map +1 -1
  286. package/themes/solid-dark.min.js +2 -2
  287. package/themes/solid-light-panelless.js +2 -1
  288. package/themes/solid-light-panelless.js.map +1 -1
  289. package/themes/solid-light-panelless.min.js +2 -2
  290. package/themes/solid-light.js +2 -1
  291. package/themes/solid-light.js.map +1 -1
  292. package/themes/solid-light.min.js +2 -2
  293. package/themes/three-dimensional-dark-panelless.js +2 -1
  294. package/themes/three-dimensional-dark-panelless.js.map +1 -1
  295. package/themes/three-dimensional-dark-panelless.min.js +2 -2
  296. package/themes/three-dimensional-dark.js +2 -1
  297. package/themes/three-dimensional-dark.js.map +1 -1
  298. package/themes/three-dimensional-dark.min.js +2 -2
  299. package/themes/three-dimensional-light-panelless.js +2 -1
  300. package/themes/three-dimensional-light-panelless.js.map +1 -1
  301. package/themes/three-dimensional-light-panelless.min.js +2 -2
  302. package/themes/three-dimensional-light.js +2 -1
  303. package/themes/three-dimensional-light.js.map +1 -1
  304. package/themes/three-dimensional-light.min.js +2 -2
  305. package/themes/typings/borderless-dark-panelless.d.ts +2 -0
  306. package/themes/typings/borderless-dark.d.ts +2 -0
  307. package/themes/typings/borderless-light-panelless.d.ts +2 -0
  308. package/themes/typings/borderless-light.d.ts +2 -0
  309. package/themes/typings/contrast-dark-panelless.d.ts +2 -0
  310. package/themes/typings/contrast-dark.d.ts +2 -0
  311. package/themes/typings/contrast-light-panelless.d.ts +2 -0
  312. package/themes/typings/contrast-light.d.ts +2 -0
  313. package/themes/typings/default-dark-panelless.d.ts +2 -0
  314. package/themes/typings/default-dark.d.ts +2 -0
  315. package/themes/typings/default-light-panelless.d.ts +2 -0
  316. package/themes/typings/default-light.d.ts +2 -0
  317. package/themes/typings/doubleborder-dark-panelless.d.ts +2 -0
  318. package/themes/typings/doubleborder-dark.d.ts +2 -0
  319. package/themes/typings/doubleborder-light-panelless.d.ts +2 -0
  320. package/themes/typings/doubleborder-light.d.ts +2 -0
  321. package/themes/typings/flat-dark-panelless.d.ts +2 -0
  322. package/themes/typings/flat-dark.d.ts +2 -0
  323. package/themes/typings/flat-light-panelless.d.ts +2 -0
  324. package/themes/typings/flat-light.d.ts +2 -0
  325. package/themes/typings/index.d.ts +40 -0
  326. package/themes/typings/layered-dark-panelless.d.ts +2 -0
  327. package/themes/typings/layered-dark.d.ts +2 -0
  328. package/themes/typings/layered-light-panelless.d.ts +2 -0
  329. package/themes/typings/layered-light.d.ts +2 -0
  330. package/themes/typings/plain-dark-panelless.d.ts +2 -0
  331. package/themes/typings/plain-dark.d.ts +2 -0
  332. package/themes/typings/plain-light-panelless.d.ts +2 -0
  333. package/themes/typings/plain-light.d.ts +2 -0
  334. package/themes/typings/sharp-dark-panelless.d.ts +2 -0
  335. package/themes/typings/sharp-dark.d.ts +2 -0
  336. package/themes/typings/sharp-light-panelless.d.ts +2 -0
  337. package/themes/typings/sharp-light.d.ts +2 -0
  338. package/themes/typings/solid-dark-panelless.d.ts +2 -0
  339. package/themes/typings/solid-dark.d.ts +2 -0
  340. package/themes/typings/solid-light-panelless.d.ts +2 -0
  341. package/themes/typings/solid-light.d.ts +2 -0
  342. package/themes/typings/threedimensional-dark-panelless.d.ts +2 -0
  343. package/themes/typings/threedimensional-dark.d.ts +2 -0
  344. package/themes/typings/threedimensional-light-panelless.d.ts +2 -0
  345. package/themes/typings/threedimensional-light.d.ts +2 -0
  346. package/ts3.4/themes/typings/borderless-dark-panelless.d.ts +2 -0
  347. package/ts3.4/themes/typings/borderless-dark.d.ts +2 -0
  348. package/ts3.4/themes/typings/borderless-light-panelless.d.ts +2 -0
  349. package/ts3.4/themes/typings/borderless-light.d.ts +2 -0
  350. package/ts3.4/themes/typings/contrast-dark-panelless.d.ts +2 -0
  351. package/ts3.4/themes/typings/contrast-dark.d.ts +2 -0
  352. package/ts3.4/themes/typings/contrast-light-panelless.d.ts +2 -0
  353. package/ts3.4/themes/typings/contrast-light.d.ts +2 -0
  354. package/ts3.4/themes/typings/default-dark-panelless.d.ts +2 -0
  355. package/ts3.4/themes/typings/default-dark.d.ts +2 -0
  356. package/ts3.4/themes/typings/default-light-panelless.d.ts +2 -0
  357. package/ts3.4/themes/typings/default-light.d.ts +2 -0
  358. package/ts3.4/themes/typings/doubleborder-dark-panelless.d.ts +2 -0
  359. package/ts3.4/themes/typings/doubleborder-dark.d.ts +2 -0
  360. package/ts3.4/themes/typings/doubleborder-light-panelless.d.ts +2 -0
  361. package/ts3.4/themes/typings/doubleborder-light.d.ts +2 -0
  362. package/ts3.4/themes/typings/flat-dark-panelless.d.ts +2 -0
  363. package/ts3.4/themes/typings/flat-dark.d.ts +2 -0
  364. package/ts3.4/themes/typings/flat-light-panelless.d.ts +2 -0
  365. package/ts3.4/themes/typings/flat-light.d.ts +2 -0
  366. package/ts3.4/themes/typings/index.d.ts +40 -0
  367. package/ts3.4/themes/typings/layered-dark-panelless.d.ts +2 -0
  368. package/ts3.4/themes/typings/layered-dark.d.ts +2 -0
  369. package/ts3.4/themes/typings/layered-light-panelless.d.ts +2 -0
  370. package/ts3.4/themes/typings/layered-light.d.ts +2 -0
  371. package/ts3.4/themes/typings/plain-dark-panelless.d.ts +2 -0
  372. package/ts3.4/themes/typings/plain-dark.d.ts +2 -0
  373. package/ts3.4/themes/typings/plain-light-panelless.d.ts +2 -0
  374. package/ts3.4/themes/typings/plain-light.d.ts +2 -0
  375. package/ts3.4/themes/typings/sharp-dark-panelless.d.ts +2 -0
  376. package/ts3.4/themes/typings/sharp-dark.d.ts +2 -0
  377. package/ts3.4/themes/typings/sharp-light-panelless.d.ts +2 -0
  378. package/ts3.4/themes/typings/sharp-light.d.ts +2 -0
  379. package/ts3.4/themes/typings/solid-dark-panelless.d.ts +2 -0
  380. package/ts3.4/themes/typings/solid-dark.d.ts +2 -0
  381. package/ts3.4/themes/typings/solid-light-panelless.d.ts +2 -0
  382. package/ts3.4/themes/typings/solid-light.d.ts +2 -0
  383. package/ts3.4/themes/typings/threedimensional-dark-panelless.d.ts +2 -0
  384. package/ts3.4/themes/typings/threedimensional-dark.d.ts +2 -0
  385. package/ts3.4/themes/typings/threedimensional-light-panelless.d.ts +2 -0
  386. package/ts3.4/themes/typings/threedimensional-light.d.ts +2 -0
  387. package/ts3.4/typings/base-interfaces.d.ts +4 -0
  388. package/ts3.4/typings/base.d.ts +2 -2
  389. package/ts3.4/typings/defaultCss/defaultV2Css.d.ts +8 -0
  390. package/ts3.4/typings/dropdownListModel.d.ts +1 -0
  391. package/ts3.4/typings/entries/chunks/model.d.ts +1 -1
  392. package/ts3.4/typings/helpers.d.ts +1 -0
  393. package/ts3.4/typings/jsonobject.d.ts +12 -4
  394. package/ts3.4/typings/list.d.ts +3 -0
  395. package/ts3.4/typings/localization/english.d.ts +2 -0
  396. package/ts3.4/typings/page.d.ts +2 -2
  397. package/ts3.4/typings/progress-buttons.d.ts +42 -0
  398. package/ts3.4/typings/question_baseselect.d.ts +55 -2
  399. package/ts3.4/typings/question_boolean.d.ts +2 -0
  400. package/ts3.4/typings/question_checkbox.d.ts +3 -2
  401. package/ts3.4/typings/question_custom.d.ts +19 -0
  402. package/ts3.4/typings/question_dropdown.d.ts +14 -0
  403. package/ts3.4/typings/question_imagepicker.d.ts +4 -2
  404. package/ts3.4/typings/question_matrix.d.ts +5 -0
  405. package/ts3.4/typings/question_matrixdropdowncolumn.d.ts +0 -1
  406. package/ts3.4/typings/question_ranking.d.ts +4 -0
  407. package/ts3.4/typings/settings.d.ts +25 -4
  408. package/ts3.4/typings/survey-events-api.d.ts +14 -0
  409. package/ts3.4/typings/survey.d.ts +41 -17
  410. package/ts3.4/typings/surveyStrings.d.ts +2 -0
  411. package/ts3.4/typings/themes.d.ts +2 -2
  412. package/ts3.4/typings/trigger.d.ts +2 -0
  413. package/ts3.4/typings/utils/popup.d.ts +1 -4
  414. package/ts3.4/typings/utils/utils.d.ts +2 -2
  415. package/typings/base-interfaces.d.ts +4 -0
  416. package/typings/base.d.ts +2 -2
  417. package/typings/defaultCss/defaultV2Css.d.ts +8 -0
  418. package/typings/dropdownListModel.d.ts +1 -0
  419. package/typings/entries/chunks/model.d.ts +1 -1
  420. package/typings/helpers.d.ts +1 -0
  421. package/typings/jsonobject.d.ts +12 -4
  422. package/typings/list.d.ts +3 -0
  423. package/typings/localization/english.d.ts +2 -0
  424. package/typings/page.d.ts +2 -2
  425. package/typings/progress-buttons.d.ts +42 -0
  426. package/typings/question_baseselect.d.ts +60 -2
  427. package/typings/question_boolean.d.ts +2 -0
  428. package/typings/question_checkbox.d.ts +3 -2
  429. package/typings/question_custom.d.ts +19 -0
  430. package/typings/question_dropdown.d.ts +14 -0
  431. package/typings/question_imagepicker.d.ts +4 -2
  432. package/typings/question_matrix.d.ts +5 -0
  433. package/typings/question_matrixdropdowncolumn.d.ts +0 -1
  434. package/typings/question_ranking.d.ts +4 -0
  435. package/typings/settings.d.ts +25 -4
  436. package/typings/survey-events-api.d.ts +14 -0
  437. package/typings/survey.d.ts +41 -17
  438. package/typings/surveyProgressButtons.d.ts +9 -9
  439. package/typings/surveyStrings.d.ts +2 -0
  440. package/typings/themes.d.ts +2 -2
  441. package/typings/trigger.d.ts +2 -0
  442. package/typings/utils/popup.d.ts +1 -4
  443. package/typings/utils/utils.d.ts +2 -2
@@ -2,6 +2,7 @@ export declare var surveyCss: any;
2
2
  export declare var defaultV2Css: {
3
3
  root: string;
4
4
  rootMobile: string;
5
+ rootAnimationDisabled: string;
5
6
  rootReadOnly: string;
6
7
  rootCompact: string;
7
8
  rootFitToContainer: string;
@@ -119,8 +120,13 @@ export declare var defaultV2Css: {
119
120
  progressBottom: string;
120
121
  progressBar: string;
121
122
  progressText: string;
123
+ progressButtonsRoot: string;
124
+ progressButtonsNumbered: string;
122
125
  progressButtonsContainerCenter: string;
123
126
  progressButtonsContainer: string;
127
+ progressButtonsConnector: string;
128
+ progressButtonsHeader: string;
129
+ progressButtonsFooter: string;
124
130
  progressButtonsImageButtonLeft: string;
125
131
  progressButtonsImageButtonRight: string;
126
132
  progressButtonsImageButtonHidden: string;
@@ -307,6 +313,7 @@ export declare var defaultV2Css: {
307
313
  small: string;
308
314
  controlDisabled: string;
309
315
  constrolWithCharacterCounter: string;
316
+ characterCounterBig: string;
310
317
  content: string;
311
318
  remainingCharacterCounter: string;
312
319
  onError: string;
@@ -461,6 +468,7 @@ export declare var defaultV2Css: {
461
468
  noHeader: string;
462
469
  hasFooter: string;
463
470
  tableWrapper: string;
471
+ rootAlternateRows: string;
464
472
  content: string;
465
473
  cell: string;
466
474
  row: string;
@@ -11,6 +11,7 @@ export declare class DropdownListModel extends Base {
11
11
  readonly loadingItemHeight = 40;
12
12
  private _markdownMode;
13
13
  private _popupModel;
14
+ private filteredItems;
14
15
  focused: boolean;
15
16
  private get focusFirstInputSelector();
16
17
  protected readonly selectedItemSelector = ".sv-list__item--selected";
@@ -62,7 +62,7 @@ export { SurveyTimer } from "../../surveytimer";
62
62
  export { SurveyTimerModel } from "../../surveyTimerModel";
63
63
  export * from "../../surveyToc";
64
64
  export { SurveyProgressModel } from "../../surveyProgress";
65
- export { SurveyProgressButtonsModel } from "../../surveyProgressButtons";
65
+ export { ProgressButtons, ProgressButtonsResponsivityManager, IProgressButtonsViewModel } from "../../progress-buttons";
66
66
  export * from "../../themes";
67
67
  export { SurveyModel } from "../../survey";
68
68
  export * from "../../survey-events-api";
@@ -35,4 +35,5 @@ export declare class Helpers {
35
35
  static convertDateToString(date: Date): string;
36
36
  static convertDateTimeToString(date: Date): string;
37
37
  static convertValToQuestionVal(val: any, inputType?: string): any;
38
+ static compareVerions(ver1: string, ver2: string): number;
38
39
  }
@@ -1,5 +1,5 @@
1
1
  import { Base } from "./base";
2
- import { ILoadFromJSONOptions } from "./base-interfaces";
2
+ import { ILoadFromJSONOptions, ISaveToJSONOptions } from "./base-interfaces";
3
3
  export interface IPropertyDecoratorOptions<T = any> {
4
4
  defaultValue?: T;
5
5
  defaultSource?: string;
@@ -71,6 +71,7 @@ export declare class JsonObjectProperty implements IObject {
71
71
  minValue: any;
72
72
  private dataListValue;
73
73
  layout: string;
74
+ version: string;
74
75
  onSerializeValue: (obj: any) => any;
75
76
  onGetValue: (obj: any) => any;
76
77
  onSettingValue: (obj: any, value: any) => any;
@@ -118,6 +119,9 @@ export declare class JsonObjectProperty implements IObject {
118
119
  isVisible(layout: string, obj?: any): boolean;
119
120
  get visible(): boolean;
120
121
  set visible(val: boolean);
122
+ isAvailableInVersion(ver: string): boolean;
123
+ getSerializedName(ver: string): string;
124
+ private isAvailableInVersionCore;
121
125
  get isLocalizable(): boolean;
122
126
  set isLocalizable(val: boolean);
123
127
  get dataList(): Array<string>;
@@ -191,7 +195,10 @@ export declare class JsonMetadata {
191
195
  overrideClassCreator(name: string, creator: () => any): void;
192
196
  getProperties(className: string): Array<JsonObjectProperty>;
193
197
  getPropertiesByObj(obj: any): Array<JsonObjectProperty>;
198
+ addDynamicPropertiesIntoObj(dest: any, src: any, props: Array<JsonObjectProperty>): void;
199
+ private addDynamicPropertyIntoObj;
194
200
  getDynamicPropertiesByObj(obj: any, dynamicType?: string): Array<JsonObjectProperty>;
201
+ getDynamicPropertiesByTypes(objType: string, dynamicType: string, invalidNames?: Array<string>): Array<JsonObjectProperty>;
195
202
  hasOriginalProperty(obj: Base, propName: string): boolean;
196
203
  getOriginalProperty(obj: Base, propName: string): JsonObjectProperty;
197
204
  getProperty(className: string, propertyName: string): JsonObjectProperty;
@@ -276,15 +283,16 @@ export declare class JsonObject {
276
283
  errors: JsonError[];
277
284
  lightSerializing: boolean;
278
285
  options: ILoadFromJSONOptions;
279
- toJsonObject(obj: any, storeDefaults?: boolean): any;
286
+ toJsonObject(obj: any, options?: ISaveToJSONOptions | boolean): any;
280
287
  toObject(jsonObj: any, obj: any, options?: ILoadFromJSONOptions): void;
281
288
  toObjectCore(jsonObj: any, obj: any, options?: ILoadFromJSONOptions): void;
282
- toJsonObjectCore(obj: any, property: JsonObjectProperty, storeDefaults?: boolean): any;
289
+ toJsonObjectCore(obj: any, property: JsonObjectProperty, options?: ISaveToJSONOptions | boolean): any;
283
290
  private getDynamicProperties;
284
291
  private addDynamicProperties;
285
292
  private propertiesToJson;
286
- valueToJson(obj: any, result: any, property: JsonObjectProperty, storeDefaults?: boolean): void;
293
+ valueToJson(obj: any, result: any, prop: JsonObjectProperty, options?: ISaveToJSONOptions): void;
287
294
  valueToObj(value: any, obj: any, property: JsonObjectProperty, jsonObj?: any, options?: ILoadFromJSONOptions): void;
295
+ private removePosOnValueToJson;
288
296
  private removePos;
289
297
  private removePosFromObj;
290
298
  private isValueArray;
package/typings/list.d.ts CHANGED
@@ -26,6 +26,7 @@ export interface IListModel {
26
26
  allowSelection?: boolean;
27
27
  selectedItem?: IAction;
28
28
  onFilterStringChangedCallback?: (text: string) => void;
29
+ onTextSearchCallback?: (text: string, textToSearch: string) => boolean;
29
30
  }
30
31
  export declare class ListModel<T extends BaseAction = Action> extends ActionContainer<T> {
31
32
  onSelectionChanged: (item: T, ...params: any[]) => void;
@@ -56,7 +57,9 @@ export declare class ListModel<T extends BaseAction = Action> extends ActionCont
56
57
  private onFilterStringChanged;
57
58
  private scrollToItem;
58
59
  constructor(items: Array<IAction>, onSelectionChanged: (item: T, ...params: any[]) => void, allowSelection: boolean, selectedItem?: IAction, onFilterStringChangedCallback?: (text: string) => void, elementId?: string);
60
+ private onTextSearchCallback;
59
61
  setOnFilterStringChangedCallback(callback: (text: string) => void): void;
62
+ setOnTextSearchCallback(callback: (item: T, textToSearch: string) => boolean): void;
60
63
  setItems(items: Array<IAction>, sortByVisibleIndex?: boolean): void;
61
64
  protected onSet(): void;
62
65
  protected getDefaultCssClasses(): {
@@ -7,6 +7,8 @@ export declare var englishStrings: {
7
7
  startSurveyText: string;
8
8
  otherItemText: string;
9
9
  noneItemText: string;
10
+ refuseItemText: string;
11
+ dontKnowItemText: string;
10
12
  selectAllItemText: string;
11
13
  progressText: string;
12
14
  indexText: string;
package/typings/page.d.ts CHANGED
@@ -16,7 +16,7 @@ export declare class PageModel extends PanelModelBase implements IPage {
16
16
  protected canShowPageNumber(): boolean;
17
17
  protected canShowTitle(): boolean;
18
18
  /**
19
- * A caption displayed on a navigation button in the TOC or progress bar. Applies when [`showTOC`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#showTOC) is `true` or when the [progress bar is visible](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#showProgressBar) and [`progressBarType`](https://surveyjs.io/form-library/documentation/surveymodel#progressBarType) is set to `"buttons"`.
19
+ * A caption displayed on a navigation button in the TOC or progress bar. Applies when [`showTOC`](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#showTOC) is `true` or when the [progress bar is visible](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#showProgressBar), [`progressBarType`](https://surveyjs.io/form-library/documentation/surveymodel#progressBarType) is set to `"pages"`, and [`progressBarShowPageTitles`](https://surveyjs.io/form-library/documentation/surveymodel#progressBarShowPageTitles) is `true`.
20
20
  *
21
21
  * If navigation titles are unspecified, the navigation buttons display page [titles](https://surveyjs.io/form-library/documentation/api-reference/page-model#title) or [names](https://surveyjs.io/form-library/documentation/pagemodel#name).
22
22
  */
@@ -24,7 +24,7 @@ export declare class PageModel extends PanelModelBase implements IPage {
24
24
  set navigationTitle(val: string);
25
25
  get locNavigationTitle(): LocalizableString;
26
26
  /**
27
- * Explanatory text displayed under a navigation button in the progress bar. Applies when the [progress bar is visible](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#showProgressBar) and `SurveyModel`'s [`progressBarType`](https://surveyjs.io/form-library/documentation/surveymodel#progressBarType) property is set to `"buttons"`.
27
+ * Explanatory text displayed under a navigation button in the progress bar. Applies when the [progress bar is visible](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#showProgressBar), `SurveyModel`'s [`progressBarType`](https://surveyjs.io/form-library/documentation/surveymodel#progressBarType) is set to `"pages"`, and [`progressBarShowPageTitles`](https://surveyjs.io/form-library/documentation/surveymodel#progressBarShowPageTitles) is `true`.
28
28
  */
29
29
  get navigationDescription(): string;
30
30
  set navigationDescription(val: string);
@@ -0,0 +1,42 @@
1
+ import { Base, EventBase } from "./base";
2
+ import { PageModel } from "./page";
3
+ import { SurveyModel } from "./survey";
4
+ export declare class ProgressButtons extends Base {
5
+ survey: SurveyModel;
6
+ constructor(survey: SurveyModel);
7
+ isListElementClickable(index: number | any): boolean;
8
+ getRootCss(container?: string): string;
9
+ getListElementCss(index: number | any): string;
10
+ getScrollButtonCss(hasScroller: boolean, isLeftScroll: boolean): string;
11
+ clickListElement(element: number | PageModel): void;
12
+ isListContainerHasScroller(element: HTMLElement): boolean;
13
+ isCanShowItemTitles(element: HTMLElement): boolean;
14
+ clearConnectorsWidth(element: HTMLElement): void;
15
+ adjustConnectors(element: HTMLElement): void;
16
+ get showItemNumbers(): boolean;
17
+ get showItemTitles(): boolean;
18
+ getItemNumber(page: PageModel): string;
19
+ get headerText(): string;
20
+ get footerText(): string;
21
+ onResize: EventBase<ProgressButtons, any>;
22
+ processResponsiveness(width: number): void;
23
+ }
24
+ export interface IProgressButtonsViewModel {
25
+ container: string;
26
+ onResize(canShowItemTitles: boolean): void;
27
+ onUpdateScroller(hasScroller: boolean): void;
28
+ onUpdateSettings(): void;
29
+ }
30
+ export declare class ProgressButtonsResponsivityManager {
31
+ private model;
32
+ private element;
33
+ private viewModel;
34
+ private criticalProperties;
35
+ private timer;
36
+ private prevWidth;
37
+ private canShowItemTitles;
38
+ constructor(model: ProgressButtons, element: HTMLElement, viewModel: IProgressButtonsViewModel);
39
+ private forceUpdate;
40
+ private processResponsiveness;
41
+ dispose(): void;
42
+ }
@@ -21,6 +21,8 @@ export declare class QuestionSelectBase extends Question {
21
21
  private isChoicesLoaded;
22
22
  private enableOnLoadingChoices;
23
23
  private noneItemValue;
24
+ private refuseItemValue;
25
+ private dontKnowItemValue;
24
26
  private newItemValue;
25
27
  private canShowOptionItemCallback;
26
28
  private waitingGetChoiceDisplayValueResponse;
@@ -64,6 +66,7 @@ export declare class QuestionSelectBase extends Question {
64
66
  * When users select the "None" item in multi-select questions, all other items become unselected.
65
67
  * @see noneItem
66
68
  * @see noneText
69
+ * @see [settings.noneItemValue](https://surveyjs.io/form-library/documentation/api-reference/settings#noneItemValue)
67
70
  * @see [settings.specialChoicesOrder](https://surveyjs.io/form-library/documentation/api-reference/settings#specialChoicesOrder)
68
71
  */
69
72
  get showNoneItem(): boolean;
@@ -82,6 +85,53 @@ export declare class QuestionSelectBase extends Question {
82
85
  get noneText(): string;
83
86
  set noneText(val: string);
84
87
  get locNoneText(): LocalizableString;
88
+ /**
89
+ * Specifies whether to display the "Refuse to answer" choice item.
90
+ *
91
+ * When users select the "Refuse to answer" item in multi-select questions, all other items become unselected.
92
+ * @see refuseItem
93
+ * @see refuseItemText
94
+ * @see [settings.refuseItemValue](https://surveyjs.io/form-library/documentation/api-reference/settings#refuseItemValue)
95
+ * @see [settings.specialChoicesOrder](https://surveyjs.io/form-library/documentation/api-reference/settings#specialChoicesOrder)
96
+ */
97
+ get showRefuseItem(): boolean;
98
+ set showRefuseItem(val: boolean);
99
+ /**
100
+ * Returns the "Refuse to answer" choice item. Use this property to change the item's `value` or `text`.
101
+ * @see showRefuseItem
102
+ */
103
+ get refuseItem(): ItemValue;
104
+ /**
105
+ * Gets or sets a caption for the "Refuse to answer" choice item.
106
+ * @see showRefuseItem
107
+ */
108
+ get refuseText(): string;
109
+ set refuseText(val: string);
110
+ get locRefuseText(): LocalizableString;
111
+ /**
112
+ * Specifies whether to display the "Don't know" choice item.
113
+ *
114
+ * When users select the "Don't know" item in multi-select questions, all other items become unselected.
115
+ * @see dontKnowItem
116
+ * @see dontKnowItemText
117
+ * @see [settings.dontKnowItemValue](https://surveyjs.io/form-library/documentation/api-reference/settings#dontKnowItemValue)
118
+ * @see [settings.specialChoicesOrder](https://surveyjs.io/form-library/documentation/api-reference/settings#specialChoicesOrder)
119
+ */
120
+ get showDontKnowItem(): boolean;
121
+ set showDontKnowItem(val: boolean);
122
+ /**
123
+ * Returns the "Don't know" choice item. Use this property to change the item's `value` or `text`.
124
+ * @see showDontKnowItem
125
+ */
126
+ get dontKnowItem(): ItemValue;
127
+ /**
128
+ * Gets or sets a caption for the "Don't know" choice item.
129
+ * @see showDontKnowItem
130
+ */
131
+ get dontKnowText(): string;
132
+ set dontKnowText(val: string);
133
+ get locDontKnowText(): LocalizableString;
134
+ private createDefaultItem;
85
135
  /**
86
136
  * A Boolean expression that is evaluated against each choice item. If the expression evaluates to `false`, the choice item becomes hidden.
87
137
  *
@@ -331,7 +381,7 @@ export declare class QuestionSelectBase extends Question {
331
381
  protected addNonChoiceItem(dict: Array<{
332
382
  index: number;
333
383
  item: ItemValue;
334
- }>, item: ItemValue, order: Array<number>): void;
384
+ }>, item: ItemValue, isAddAll: boolean, showItem: boolean, order: Array<number>): void;
335
385
  protected canShowOptionItem(item: ItemValue, isAddAll: boolean, hasItem: boolean): boolean;
336
386
  isItemInList(item: ItemValue): boolean;
337
387
  protected get isAddDefaultItems(): boolean;
@@ -343,6 +393,9 @@ export declare class QuestionSelectBase extends Question {
343
393
  private getItemDisplayValue;
344
394
  private getFilteredChoices;
345
395
  protected get activeChoices(): Array<ItemValue>;
396
+ get isMessagePanelVisible(): boolean;
397
+ set isMessagePanelVisible(val: boolean);
398
+ private get isEmptyActiveChoicesInDesign();
346
399
  getCarryForwardQuestion(data?: ISurveyData): Question;
347
400
  protected getIsReadyDependsOn(): Array<Question>;
348
401
  private getQuestionWithChoices;
@@ -355,10 +408,14 @@ export declare class QuestionSelectBase extends Question {
355
408
  private getChoicesFromSelectQuestion;
356
409
  private copyChoiceItem;
357
410
  protected get hasActiveChoices(): boolean;
358
- protected isBuiltInChoice(item: ItemValue, question: QuestionSelectBase): boolean;
411
+ protected isBuiltInChoice(item: ItemValue): boolean;
412
+ isNoneItem(item: ItemValue): boolean;
413
+ protected getNoneItems(): Array<ItemValue>;
359
414
  protected getChoices(): Array<ItemValue>;
360
415
  supportOther(): boolean;
361
416
  supportNone(): boolean;
417
+ supportRefuse(): boolean;
418
+ supportDontKnow(): boolean;
362
419
  protected isSupportProperty(propName: string): boolean;
363
420
  protected onCheckForErrors(errors: Array<SurveyError>, isOnValueChanged: boolean): void;
364
421
  setSurveyImpl(value: ISurveyImpl, isLight?: boolean): void;
@@ -391,6 +448,7 @@ export declare class QuestionSelectBase extends Question {
391
448
  private randomizeArray;
392
449
  private get hasChoicesUrl();
393
450
  clearIncorrectValues(): void;
451
+ private canClearIncorrectValues;
394
452
  protected hasValueToClearIncorrectValues(): boolean;
395
453
  protected clearValueIfInvisibleCore(reason: string): void;
396
454
  /**
@@ -93,4 +93,6 @@ export declare class QuestionBooleanModel extends Question {
93
93
  protected supportResponsiveness(): boolean;
94
94
  protected getCompactRenderAs(): string;
95
95
  protected createActionContainer(allowAdaptiveActions?: boolean): ActionContainer;
96
+ get isNewA11yStructure(): boolean;
97
+ get a11y_input_ariaRole(): string;
96
98
  }
@@ -1,4 +1,4 @@
1
- import { QuestionCheckboxBase, QuestionSelectBase } from "./question_baseselect";
1
+ import { QuestionCheckboxBase } from "./question_baseselect";
2
2
  import { ItemValue } from "./itemvalue";
3
3
  import { LocalizableString } from "./localizablestring";
4
4
  import { IQuestion } from "./base-interfaces";
@@ -116,6 +116,7 @@ export declare class QuestionCheckboxModel extends QuestionCheckboxBase {
116
116
  protected getCommentFromValue(newValue: any): string;
117
117
  protected setOtherValueIntoValue(newValue: any): any;
118
118
  private getFirstUnknownIndex;
119
+ protected removeNoneItemsValues(value: Array<any>, newValue: Array<any>): void;
119
120
  private noneIndexInArray;
120
121
  protected canUseFilteredChoices(): boolean;
121
122
  protected supportSelectAll(): boolean;
@@ -123,7 +124,7 @@ export declare class QuestionCheckboxModel extends QuestionCheckboxBase {
123
124
  index: number;
124
125
  item: ItemValue;
125
126
  }>, isAddAll: boolean): void;
126
- protected isBuiltInChoice(item: ItemValue, question: QuestionSelectBase): boolean;
127
+ protected isBuiltInChoice(item: ItemValue): boolean;
127
128
  isItemInList(item: ItemValue): boolean;
128
129
  protected getDisplayValueCore(keysAsText: boolean, value: any): any;
129
130
  protected clearIncorrectValuesCore(): void;
@@ -1,4 +1,6 @@
1
1
  import { Question, IConditionObject } from "./question";
2
+ import { JsonObjectProperty } from "./jsonobject";
3
+ import { Base } from "./base";
2
4
  import { ISurveyImpl, ISurveyData, ITextProcessor, IPanel, IElement, IQuestion, IProgressInfo } from "./base-interfaces";
3
5
  import { SurveyElement } from "./survey-element";
4
6
  import { PanelModel } from "./panel";
@@ -68,6 +70,16 @@ export interface ICustomQuestionTypeConfiguration {
68
70
  * ```
69
71
  */
70
72
  defaultQuestionTitle?: any;
73
+ /**
74
+ * An array of property names to inherit from a base question or a Boolean value that specifies whether or not to inherit all properties.
75
+ *
76
+ * Default value: `false`
77
+ *
78
+ * When you create a [custom specialized question type](https://surveyjs.io/form-library/documentation/customize-question-types/create-specialized-question-types), you base it on another question type configured within the [`questionJSON`](#questionJSON) object. If the custom question type should inherit all properties from the base type, set the `inheritBaseProps` property to `true`. If you want to inherit only certain properties, set the `inheritBaseProps` property to an array of their names.
79
+ *
80
+ * [Create Specialized Question Types](https://surveyjs.io/form-library/documentation/customize-question-types/create-specialized-question-types (linkStyle))
81
+ */
82
+ inheritBaseProps?: false | true | Array<string>;
71
83
  /**
72
84
  * A function that is called when the custom question is created. Use it to access questions nested within a [composite question type](https://surveyjs.io/form-library/documentation/customize-question-types/create-composite-question-types).
73
85
  *
@@ -220,6 +232,7 @@ export interface ICustomQuestionTypeConfiguration {
220
232
  export declare class ComponentQuestionJSON {
221
233
  name: string;
222
234
  json: ICustomQuestionTypeConfiguration;
235
+ private dynamicProperties;
223
236
  constructor(name: string, json: ICustomQuestionTypeConfiguration);
224
237
  onInit(): void;
225
238
  onCreated(question: Question): void;
@@ -236,6 +249,8 @@ export declare class ComponentQuestionJSON {
236
249
  setValueToQuestion(val: any): any;
237
250
  getValueFromQuestion(val: any): any;
238
251
  get isComposite(): boolean;
252
+ getDynamicProperties(): Array<JsonObjectProperty>;
253
+ private calcDynamicProperties;
239
254
  }
240
255
  export declare class ComponentCollection {
241
256
  static Instance: ComponentCollection;
@@ -313,6 +328,9 @@ export declare class QuestionCustomModel extends QuestionCustomModelBase {
313
328
  private questionWrapper;
314
329
  private hasJSONTitle;
315
330
  getTemplate(): string;
331
+ getDynamicProperties(): Array<JsonObjectProperty>;
332
+ getDynamicType(): string;
333
+ getOriginalObj(): Base;
316
334
  protected createWrapper(): void;
317
335
  protected getElement(): SurveyElement;
318
336
  onAnyValueChanged(name: string, questionName: string): void;
@@ -337,6 +355,7 @@ export declare class QuestionCustomModel extends QuestionCustomModelBase {
337
355
  protected getValueCore(): any;
338
356
  private isSettingValueChanged;
339
357
  protected setValueChangedDirectly(val: boolean): void;
358
+ private createDynamicProperties;
340
359
  protected initElement(el: SurveyElement): void;
341
360
  updateElementCss(reNew?: boolean): void;
342
361
  protected updateElementCssCore(cssClasses: any): void;
@@ -85,8 +85,22 @@ export declare class QuestionDropdownModel extends QuestionSelectBase {
85
85
  allowClear: boolean;
86
86
  /**
87
87
  * Specifies whether users can enter a value into the input field to filter the drop-down list.
88
+ *
89
+ * [View Demo](https://surveyjs.io/form-library/examples/create-dropdown-menu-in-javascript/ (linkStyle))
90
+ * @see searchMode
91
+ * @see [SurveyModel.onChoicesSearch](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#onChoicesSearch)
88
92
  */
89
93
  searchEnabled: boolean;
94
+ /**
95
+ * Specifies a comparison operation used to filter the drop-down list. Applies only if [`searchEnabled`](#searchEnabled) is `true`.
96
+ *
97
+ * Possible values:
98
+ *
99
+ * - `"contains"` (default)
100
+ * - `"startsWith"`
101
+ * @see [SurveyModel.onChoicesSearch](https://surveyjs.io/form-library/documentation/api-reference/survey-data-model#onChoicesSearch)
102
+ */
103
+ searchMode: "contains" | "startsWith";
90
104
  inputHasValue: boolean;
91
105
  readOnlyText: string;
92
106
  /**
@@ -1,4 +1,4 @@
1
- import { QuestionCheckboxBase, QuestionSelectBase } from "./question_baseselect";
1
+ import { QuestionCheckboxBase } from "./question_baseselect";
2
2
  import { ItemValue } from "./itemvalue";
3
3
  import { ILocalizableOwner, LocalizableString } from "./localizablestring";
4
4
  export declare class ImageItemValue extends ItemValue implements ILocalizableOwner {
@@ -37,6 +37,8 @@ export declare class QuestionImagePickerModel extends QuestionCheckboxBase {
37
37
  get isCompositeQuestion(): boolean;
38
38
  supportOther(): boolean;
39
39
  supportNone(): boolean;
40
+ supportRefuse(): boolean;
41
+ supportDontKnow(): boolean;
40
42
  isAnswerCorrect(): boolean;
41
43
  /**
42
44
  * Specifies whether users can select multiple images or videos.
@@ -107,7 +109,7 @@ export declare class QuestionImagePickerModel extends QuestionCheckboxBase {
107
109
  set contentMode(val: string);
108
110
  protected convertDefaultValue(val: any): any;
109
111
  get inputType(): "checkbox" | "radio";
110
- protected isBuiltInChoice(item: ItemValue, question: QuestionSelectBase): boolean;
112
+ protected isBuiltInChoice(item: ItemValue): boolean;
111
113
  protected addToVisibleChoices(items: Array<ItemValue>, isAddAll: boolean): void;
112
114
  getSelectBaseRootCss(): string;
113
115
  private isResponsiveValue;
@@ -120,6 +120,11 @@ export declare class QuestionMatrixModel extends QuestionMatrixBaseModel<MatrixR
120
120
  protected isNewValueCorrect(val: any): boolean;
121
121
  protected processRowsOnSet(newRows: Array<any>): MatrixRowModel[];
122
122
  get visibleRows(): Array<MatrixRowModel>;
123
+ /**
124
+ * An array of matrix cells. Use this array to get or set cell values.
125
+ *
126
+ * [View Demo](https://surveyjs.io/form-library/examples/questiontype-matrix-rubric/ (linkStyle))
127
+ */
123
128
  get cells(): MatrixCells;
124
129
  set cells(value: MatrixCells);
125
130
  get hasCellText(): boolean;
@@ -324,5 +324,4 @@ export declare class MatrixDropdownColumn extends Base implements ILocalizableOw
324
324
  private getProperties;
325
325
  private removeProperties;
326
326
  private addProperties;
327
- private addProperty;
328
327
  }
@@ -51,10 +51,13 @@ export declare class QuestionRankingModel extends QuestionCheckboxModel {
51
51
  protected supportSelectAll(): boolean;
52
52
  supportOther(): boolean;
53
53
  supportNone(): boolean;
54
+ supportRefuse(): boolean;
55
+ supportDontKnow(): boolean;
54
56
  private handleArrowKeys;
55
57
  handleKeydownSelectToRank(event: KeyboardEvent, movedElement: ItemValue): void;
56
58
  private setValueAfterKeydown;
57
59
  private focusItem;
60
+ isValueSetByUser: boolean;
58
61
  setValue: () => void;
59
62
  getIconHoverCss(): string;
60
63
  getIconFocusCss(): string;
@@ -77,6 +80,7 @@ export declare class QuestionRankingModel extends QuestionCheckboxModel {
77
80
  */
78
81
  get selectToRankEnabled(): boolean;
79
82
  set selectToRankEnabled(val: boolean);
83
+ carryForwardStartUnranked: boolean;
80
84
  /**
81
85
  * Specifies the layout of the ranked and unranked areas. Applies when [`selectToRankEnabled`](https://surveyjs.io/form-library/documentation/api-reference/ranking-question-model#selectToRankEnabled) is `true`.
82
86
  *
@@ -363,7 +363,7 @@ export declare var settings: {
363
363
  * @param message A message to be displayed in the confirm dialog window.
364
364
  * @param callback A callback function that should be called with `true` if a user confirms an action or `false` otherwise.
365
365
  */
366
- confirmActionAsync: (message: string, callback: (res: boolean) => void, applyTitle?: string) => boolean;
366
+ confirmActionAsync: (message: string, callback: (res: boolean) => void, applyTitle?: string, locale?: string) => boolean;
367
367
  /**
368
368
  * A minimum width value for all survey elements.
369
369
  *
@@ -413,15 +413,27 @@ export declare var settings: {
413
413
  */
414
414
  showItemsInOrder: string;
415
415
  /**
416
- * A value to save in survey results when respondents select the None choice item.
416
+ * A value to save in survey results when respondents select the "None" choice item.
417
417
  *
418
418
  * Default value: `"none"`
419
419
  */
420
420
  noneItemValue: string;
421
421
  /**
422
- * An object whose properties specify the order of the special choice items (None, Other, Select All) in select-based questions.
422
+ * A value to save in survey results when respondents select the "Refuse to answer" choice item.
423
423
  *
424
- * Default value: `{ selectAllItem: [-1], noneItem: [1], otherItem: [2] }`
424
+ * Default value: `"refused"`
425
+ */
426
+ refuseItemValue: string;
427
+ /**
428
+ * A value to save in survey results when respondents select the "Don't know" choice item.
429
+ *
430
+ * Default value: `"dontknow"`
431
+ */
432
+ dontKnowItemValue: string;
433
+ /**
434
+ * An object whose properties specify the order of the special choice items ("None", "Other", "Select All", "Refuse to answer", "Don't know") in select-based questions.
435
+ *
436
+ * Default value: `{ selectAllItem: [-1], noneItem: [1], otherItem: [2], dontKnowItem: [3], otherItem: [4] }`
425
437
  *
426
438
  * Use this object to reorder special choices. Each property accepts an array of integer numbers. Negative numbers place a special choice item above regular choice items, positive numbers place it below them. For instance, the code below specifies the following order of choices: None, Select All, regular choices, Other.
427
439
  *
@@ -442,6 +454,8 @@ export declare var settings: {
442
454
  specialChoicesOrder: {
443
455
  selectAllItem: number[];
444
456
  noneItem: number[];
457
+ refuseItem: number[];
458
+ dontKnowItem: number[];
445
459
  otherItem: number[];
446
460
  };
447
461
  /**
@@ -496,6 +510,12 @@ export declare var settings: {
496
510
  * Default value: `true`
497
511
  */
498
512
  showMaxLengthIndicator: boolean;
513
+ /**
514
+ * Set to `false` to disable animations
515
+ *
516
+ * Default value: `true`
517
+ */
518
+ animationEnabled: boolean;
499
519
  /**
500
520
  * An object that specifies heading levels (`<h1>`, `<h2>`, etc.) to use when rendering survey, page, panel, and question titles.
501
521
  *
@@ -513,4 +533,5 @@ export declare var settings: {
513
533
  inputTypes: string[];
514
534
  dataList: string[];
515
535
  };
536
+ legacyProgressBarView: boolean;
516
537
  };
@@ -628,6 +628,20 @@ export interface ChoicesLazyLoadEvent extends QuestionEventMixin {
628
628
  */
629
629
  skip: number;
630
630
  }
631
+ export interface ChoicesSearchEvent extends QuestionEventMixin {
632
+ /**
633
+ * A search string used to filter choice options.
634
+ */
635
+ filter: string;
636
+ /**
637
+ * An array of all choice options.
638
+ */
639
+ choices: Array<ItemValue>;
640
+ /**
641
+ * A filtered array of choice options. Apply `options.filter` to the `options.choices` array and assign the result to this parameter.
642
+ */
643
+ filteredChoices: Array<ItemValue>;
644
+ }
631
645
  export interface GetChoiceDisplayValueEvent extends QuestionEventMixin {
632
646
  /**
633
647
  * A method that you should call to assign display texts to the question.