survey-core 1.12.21 → 1.12.22

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 (453) hide show
  1. package/default.css +8715 -0
  2. package/default.css.map +1 -0
  3. package/default.fontless.css +8495 -0
  4. package/default.fontless.css.map +1 -0
  5. package/default.fontless.min.css +6 -0
  6. package/default.min.css +6 -0
  7. package/defaultV2.css +1 -1
  8. package/defaultV2.fontless.css +1 -1
  9. package/defaultV2.fontless.min.css +1 -1
  10. package/defaultV2.min.css +1 -1
  11. package/i18n/arabic.js +1 -1
  12. package/i18n/arabic.min.js +1 -1
  13. package/i18n/arabic.min.js.LICENSE.txt +5 -0
  14. package/i18n/basque.js +1 -1
  15. package/i18n/basque.min.js +1 -1
  16. package/i18n/basque.min.js.LICENSE.txt +5 -0
  17. package/i18n/bulgarian.js +1 -1
  18. package/i18n/bulgarian.min.js +1 -1
  19. package/i18n/bulgarian.min.js.LICENSE.txt +5 -0
  20. package/i18n/burmese.js +1 -1
  21. package/i18n/burmese.min.js +1 -1
  22. package/i18n/burmese.min.js.LICENSE.txt +5 -0
  23. package/i18n/catalan.js +1 -1
  24. package/i18n/catalan.min.js +1 -1
  25. package/i18n/catalan.min.js.LICENSE.txt +5 -0
  26. package/i18n/croatian.js +1 -1
  27. package/i18n/croatian.min.js +1 -1
  28. package/i18n/croatian.min.js.LICENSE.txt +5 -0
  29. package/i18n/czech.js +1 -1
  30. package/i18n/czech.min.js +1 -1
  31. package/i18n/czech.min.js.LICENSE.txt +5 -0
  32. package/i18n/danish.js +1 -1
  33. package/i18n/danish.min.js +1 -1
  34. package/i18n/danish.min.js.LICENSE.txt +5 -0
  35. package/i18n/dutch.js +1 -1
  36. package/i18n/dutch.min.js +1 -1
  37. package/i18n/dutch.min.js.LICENSE.txt +5 -0
  38. package/i18n/english.js +1 -1
  39. package/i18n/english.min.js +1 -1
  40. package/i18n/english.min.js.LICENSE.txt +5 -0
  41. package/i18n/estonian.js +1 -1
  42. package/i18n/estonian.min.js +1 -1
  43. package/i18n/estonian.min.js.LICENSE.txt +5 -0
  44. package/i18n/finnish.js +1 -1
  45. package/i18n/finnish.min.js +1 -1
  46. package/i18n/finnish.min.js.LICENSE.txt +5 -0
  47. package/i18n/french.js +1 -1
  48. package/i18n/french.min.js +1 -1
  49. package/i18n/french.min.js.LICENSE.txt +5 -0
  50. package/i18n/georgian.js +1 -1
  51. package/i18n/georgian.min.js +1 -1
  52. package/i18n/georgian.min.js.LICENSE.txt +5 -0
  53. package/i18n/german.js +1 -1
  54. package/i18n/german.min.js +1 -1
  55. package/i18n/german.min.js.LICENSE.txt +5 -0
  56. package/i18n/greek.js +1 -1
  57. package/i18n/greek.min.js +1 -1
  58. package/i18n/greek.min.js.LICENSE.txt +5 -0
  59. package/i18n/hebrew.js +1 -1
  60. package/i18n/hebrew.min.js +1 -1
  61. package/i18n/hebrew.min.js.LICENSE.txt +5 -0
  62. package/i18n/hindi.js +1 -1
  63. package/i18n/hindi.min.js +1 -1
  64. package/i18n/hindi.min.js.LICENSE.txt +5 -0
  65. package/i18n/hungarian.js +1 -1
  66. package/i18n/hungarian.min.js +1 -1
  67. package/i18n/hungarian.min.js.LICENSE.txt +5 -0
  68. package/i18n/icelandic.js +1 -1
  69. package/i18n/icelandic.min.js +1 -1
  70. package/i18n/icelandic.min.js.LICENSE.txt +5 -0
  71. package/i18n/index.js +1 -1
  72. package/i18n/index.min.js +1 -1
  73. package/i18n/index.min.js.LICENSE.txt +5 -0
  74. package/i18n/indonesian.js +1 -1
  75. package/i18n/indonesian.min.js +1 -1
  76. package/i18n/indonesian.min.js.LICENSE.txt +5 -0
  77. package/i18n/italian.js +1 -1
  78. package/i18n/italian.min.js +1 -1
  79. package/i18n/italian.min.js.LICENSE.txt +5 -0
  80. package/i18n/japanese.js +1 -1
  81. package/i18n/japanese.min.js +1 -1
  82. package/i18n/japanese.min.js.LICENSE.txt +5 -0
  83. package/i18n/kazakh.js +1 -1
  84. package/i18n/kazakh.min.js +1 -1
  85. package/i18n/kazakh.min.js.LICENSE.txt +5 -0
  86. package/i18n/korean.js +1 -1
  87. package/i18n/korean.min.js +1 -1
  88. package/i18n/korean.min.js.LICENSE.txt +5 -0
  89. package/i18n/latvian.js +1 -1
  90. package/i18n/latvian.min.js +1 -1
  91. package/i18n/latvian.min.js.LICENSE.txt +5 -0
  92. package/i18n/lithuanian.js +1 -1
  93. package/i18n/lithuanian.min.js +1 -1
  94. package/i18n/lithuanian.min.js.LICENSE.txt +5 -0
  95. package/i18n/macedonian.js +1 -1
  96. package/i18n/macedonian.min.js +1 -1
  97. package/i18n/macedonian.min.js.LICENSE.txt +5 -0
  98. package/i18n/malay.js +1 -1
  99. package/i18n/malay.min.js +1 -1
  100. package/i18n/malay.min.js.LICENSE.txt +5 -0
  101. package/i18n/nl-BE.js +1 -1
  102. package/i18n/nl-BE.min.js +1 -1
  103. package/i18n/nl-BE.min.js.LICENSE.txt +5 -0
  104. package/i18n/norwegian.js +1 -1
  105. package/i18n/norwegian.min.js +1 -1
  106. package/i18n/norwegian.min.js.LICENSE.txt +5 -0
  107. package/i18n/persian.js +1 -1
  108. package/i18n/persian.min.js +1 -1
  109. package/i18n/persian.min.js.LICENSE.txt +5 -0
  110. package/i18n/philippines.js +1 -1
  111. package/i18n/philippines.min.js +1 -1
  112. package/i18n/philippines.min.js.LICENSE.txt +5 -0
  113. package/i18n/polish.js +1 -1
  114. package/i18n/polish.min.js +1 -1
  115. package/i18n/polish.min.js.LICENSE.txt +5 -0
  116. package/i18n/portuguese-br.js +1 -1
  117. package/i18n/portuguese-br.min.js +1 -1
  118. package/i18n/portuguese-br.min.js.LICENSE.txt +5 -0
  119. package/i18n/portuguese.js +1 -1
  120. package/i18n/portuguese.min.js +1 -1
  121. package/i18n/portuguese.min.js.LICENSE.txt +5 -0
  122. package/i18n/romanian.js +1 -1
  123. package/i18n/romanian.min.js +1 -1
  124. package/i18n/romanian.min.js.LICENSE.txt +5 -0
  125. package/i18n/russian.js +1 -1
  126. package/i18n/russian.min.js +1 -1
  127. package/i18n/russian.min.js.LICENSE.txt +5 -0
  128. package/i18n/serbian.js +1 -1
  129. package/i18n/serbian.min.js +1 -1
  130. package/i18n/serbian.min.js.LICENSE.txt +5 -0
  131. package/i18n/simplified-chinese.js +1 -1
  132. package/i18n/simplified-chinese.min.js +1 -1
  133. package/i18n/simplified-chinese.min.js.LICENSE.txt +5 -0
  134. package/i18n/slovak.js +1 -1
  135. package/i18n/slovak.min.js +1 -1
  136. package/i18n/slovak.min.js.LICENSE.txt +5 -0
  137. package/i18n/spanish.js +1 -1
  138. package/i18n/spanish.min.js +1 -1
  139. package/i18n/spanish.min.js.LICENSE.txt +5 -0
  140. package/i18n/swahili.js +1 -1
  141. package/i18n/swahili.min.js +1 -1
  142. package/i18n/swahili.min.js.LICENSE.txt +5 -0
  143. package/i18n/swedish.js +1 -1
  144. package/i18n/swedish.min.js +1 -1
  145. package/i18n/swedish.min.js.LICENSE.txt +5 -0
  146. package/i18n/tajik.js +1 -1
  147. package/i18n/tajik.min.js +1 -1
  148. package/i18n/tajik.min.js.LICENSE.txt +5 -0
  149. package/i18n/telugu.js +1 -1
  150. package/i18n/telugu.min.js +1 -1
  151. package/i18n/telugu.min.js.LICENSE.txt +5 -0
  152. package/i18n/thai.js +1 -1
  153. package/i18n/thai.min.js +1 -1
  154. package/i18n/thai.min.js.LICENSE.txt +5 -0
  155. package/i18n/traditional-chinese.js +1 -1
  156. package/i18n/traditional-chinese.min.js +1 -1
  157. package/i18n/traditional-chinese.min.js.LICENSE.txt +5 -0
  158. package/i18n/turkish.js +1 -1
  159. package/i18n/turkish.min.js +1 -1
  160. package/i18n/turkish.min.js.LICENSE.txt +5 -0
  161. package/i18n/ukrainian.js +1 -1
  162. package/i18n/ukrainian.min.js +1 -1
  163. package/i18n/ukrainian.min.js.LICENSE.txt +5 -0
  164. package/i18n/urdu.js +1 -1
  165. package/i18n/urdu.min.js +1 -1
  166. package/i18n/urdu.min.js.LICENSE.txt +5 -0
  167. package/i18n/vietnamese.js +1 -1
  168. package/i18n/vietnamese.min.js +1 -1
  169. package/i18n/vietnamese.min.js.LICENSE.txt +5 -0
  170. package/i18n/welsh.js +1 -1
  171. package/i18n/welsh.min.js +1 -1
  172. package/i18n/welsh.min.js.LICENSE.txt +5 -0
  173. package/icons/iconsV1.js +1 -1
  174. package/icons/iconsV1.min.js +1 -1
  175. package/icons/iconsV1.min.js.LICENSE.txt +5 -0
  176. package/icons/iconsV2.js +1 -1
  177. package/icons/iconsV2.min.js +1 -1
  178. package/icons/iconsV2.min.js.LICENSE.txt +5 -0
  179. package/modern.css +1 -1
  180. package/modern.fontless.css +1 -1
  181. package/modern.fontless.min.css +1 -1
  182. package/modern.min.css +1 -1
  183. package/package.json +1 -1
  184. package/plugins/bootstrap-integration/index.js +1 -1
  185. package/plugins/bootstrap-integration/index.min.js +1 -1
  186. package/plugins/bootstrap-material-integration/index.js +1 -1
  187. package/plugins/bootstrap-material-integration/index.min.js +1 -1
  188. package/survey.core.js +131 -46
  189. package/survey.core.js.map +1 -1
  190. package/survey.core.min.js +3 -3
  191. package/survey.core.min.js.LICENSE.txt +10 -0
  192. package/survey.css +1 -1
  193. package/survey.i18n.js +1 -1
  194. package/survey.i18n.min.js +1 -1
  195. package/survey.i18n.min.js.LICENSE.txt +5 -0
  196. package/survey.min.css +1 -1
  197. package/themes/borderless-dark-panelless.js +1 -1
  198. package/themes/borderless-dark-panelless.min.js +1 -1
  199. package/themes/borderless-dark-panelless.min.js.LICENSE.txt +5 -0
  200. package/themes/borderless-dark.js +1 -1
  201. package/themes/borderless-dark.min.js +1 -1
  202. package/themes/borderless-dark.min.js.LICENSE.txt +5 -0
  203. package/themes/borderless-light-panelless..js +1 -1
  204. package/themes/borderless-light-panelless..min.js +1 -1
  205. package/themes/borderless-light-panelless.js +156 -0
  206. package/themes/borderless-light-panelless.js.map +1 -0
  207. package/themes/borderless-light-panelless.min.js +2 -0
  208. package/themes/borderless-light-panelless.min.js.LICENSE.txt +5 -0
  209. package/themes/borderless-light.js +1 -1
  210. package/themes/borderless-light.min.js +1 -1
  211. package/themes/borderless-light.min.js.LICENSE.txt +5 -0
  212. package/themes/contrast-dark-panelless.js +1 -1
  213. package/themes/contrast-dark-panelless.min.js +1 -1
  214. package/themes/contrast-dark-panelless.min.js.LICENSE.txt +5 -0
  215. package/themes/contrast-dark.js +1 -1
  216. package/themes/contrast-dark.min.js +1 -1
  217. package/themes/contrast-dark.min.js.LICENSE.txt +5 -0
  218. package/themes/contrast-light-panelless.js +1 -1
  219. package/themes/contrast-light-panelless.min.js +1 -1
  220. package/themes/contrast-light-panelless.min.js.LICENSE.txt +5 -0
  221. package/themes/contrast-light.js +1 -1
  222. package/themes/contrast-light.min.js +1 -1
  223. package/themes/contrast-light.min.js.LICENSE.txt +5 -0
  224. package/themes/default-dark-panelless.js +1 -1
  225. package/themes/default-dark-panelless.min.js +1 -1
  226. package/themes/default-dark-panelless.min.js.LICENSE.txt +5 -0
  227. package/themes/default-dark.js +1 -1
  228. package/themes/default-dark.min.js +1 -1
  229. package/themes/default-dark.min.js.LICENSE.txt +5 -0
  230. package/themes/default-light-panelless.js +1 -1
  231. package/themes/default-light-panelless.min.js +1 -1
  232. package/themes/default-light-panelless.min.js.LICENSE.txt +5 -0
  233. package/themes/default-light.js +1 -1
  234. package/themes/default-light.min.js +1 -1
  235. package/themes/default-light.min.js.LICENSE.txt +5 -0
  236. package/themes/doubleborder-dark-panelless.js +1 -1
  237. package/themes/doubleborder-dark-panelless.min.js +1 -1
  238. package/themes/doubleborder-dark-panelless.min.js.LICENSE.txt +5 -0
  239. package/themes/doubleborder-dark.js +1 -1
  240. package/themes/doubleborder-dark.min.js +1 -1
  241. package/themes/doubleborder-dark.min.js.LICENSE.txt +5 -0
  242. package/themes/doubleborder-light-panelles.js +1 -1
  243. package/themes/doubleborder-light-panelles.min.js +1 -1
  244. package/themes/doubleborder-light-panelles.min.js.LICENSE.txt +5 -0
  245. package/themes/doubleborder-light.js +1 -1
  246. package/themes/doubleborder-light.min.js +1 -1
  247. package/themes/doubleborder-light.min.js.LICENSE.txt +5 -0
  248. package/themes/flat-dark-panelless.js +1 -1
  249. package/themes/flat-dark-panelless.min.js +1 -1
  250. package/themes/flat-dark-panelless.min.js.LICENSE.txt +5 -0
  251. package/themes/flat-dark.js +1 -1
  252. package/themes/flat-dark.min.js +1 -1
  253. package/themes/flat-dark.min.js.LICENSE.txt +5 -0
  254. package/themes/flat-light-panelless.js +1 -1
  255. package/themes/flat-light-panelless.min.js +1 -1
  256. package/themes/flat-light-panelless.min.js.LICENSE.txt +5 -0
  257. package/themes/flat-light.js +1 -1
  258. package/themes/flat-light.min.js +1 -1
  259. package/themes/flat-light.min.js.LICENSE.txt +5 -0
  260. package/themes/index.js +1 -1
  261. package/themes/index.min.js +1 -1
  262. package/themes/index.min.js.LICENSE.txt +5 -0
  263. package/themes/layered-dark-panelless.js +1 -1
  264. package/themes/layered-dark-panelless.min.js +1 -1
  265. package/themes/layered-dark-panelless.min.js.LICENSE.txt +5 -0
  266. package/themes/layered-dark.js +1 -1
  267. package/themes/layered-dark.min.js +1 -1
  268. package/themes/layered-dark.min.js.LICENSE.txt +5 -0
  269. package/themes/layered-light-panelless.js +1 -1
  270. package/themes/layered-light-panelless.min.js +1 -1
  271. package/themes/layered-light-panelless.min.js.LICENSE.txt +5 -0
  272. package/themes/layered-light.js +1 -1
  273. package/themes/layered-light.min.js +1 -1
  274. package/themes/layered-light.min.js.LICENSE.txt +5 -0
  275. package/themes/plain-dark-panelless.js +1 -1
  276. package/themes/plain-dark-panelless.min.js +1 -1
  277. package/themes/plain-dark-panelless.min.js.LICENSE.txt +5 -0
  278. package/themes/plain-dark.js +1 -1
  279. package/themes/plain-dark.min.js +1 -1
  280. package/themes/plain-dark.min.js.LICENSE.txt +5 -0
  281. package/themes/plain-light-panelless.js +1 -1
  282. package/themes/plain-light-panelless.min.js +1 -1
  283. package/themes/plain-light-panelless.min.js.LICENSE.txt +5 -0
  284. package/themes/plain-light.js +1 -1
  285. package/themes/plain-light.min.js +1 -1
  286. package/themes/plain-light.min.js.LICENSE.txt +5 -0
  287. package/themes/sharp-dark-panelless.js +1 -1
  288. package/themes/sharp-dark-panelless.min.js +1 -1
  289. package/themes/sharp-dark-panelless.min.js.LICENSE.txt +5 -0
  290. package/themes/sharp-dark.js +1 -1
  291. package/themes/sharp-dark.min.js +1 -1
  292. package/themes/sharp-dark.min.js.LICENSE.txt +5 -0
  293. package/themes/sharp-light-panelless.js +1 -1
  294. package/themes/sharp-light-panelless.min.js +1 -1
  295. package/themes/sharp-light-panelless.min.js.LICENSE.txt +5 -0
  296. package/themes/sharp-light.js +1 -1
  297. package/themes/sharp-light.min.js +1 -1
  298. package/themes/sharp-light.min.js.LICENSE.txt +5 -0
  299. package/themes/solid-dark-panelless.js +1 -1
  300. package/themes/solid-dark-panelless.min.js +1 -1
  301. package/themes/solid-dark-panelless.min.js.LICENSE.txt +5 -0
  302. package/themes/solid-dark.js +1 -1
  303. package/themes/solid-dark.min.js +1 -1
  304. package/themes/solid-dark.min.js.LICENSE.txt +5 -0
  305. package/themes/solid-light-panelless.js +1 -1
  306. package/themes/solid-light-panelless.min.js +1 -1
  307. package/themes/solid-light-panelless.min.js.LICENSE.txt +5 -0
  308. package/themes/solid-light.js +1 -1
  309. package/themes/solid-light.min.js +1 -1
  310. package/themes/solid-light.min.js.LICENSE.txt +5 -0
  311. package/themes/three-dimensional-dark-panelless.js +1 -1
  312. package/themes/three-dimensional-dark-panelless.min.js +1 -1
  313. package/themes/three-dimensional-dark-panelless.min.js.LICENSE.txt +5 -0
  314. package/themes/three-dimensional-dark.js +1 -1
  315. package/themes/three-dimensional-dark.min.js +1 -1
  316. package/themes/three-dimensional-dark.min.js.LICENSE.txt +5 -0
  317. package/themes/three-dimensional-light-panelless.js +1 -1
  318. package/themes/three-dimensional-light-panelless.min.js +1 -1
  319. package/themes/three-dimensional-light-panelless.min.js.LICENSE.txt +5 -0
  320. package/themes/three-dimensional-light.js +1 -1
  321. package/themes/three-dimensional-light.min.js +1 -1
  322. package/themes/three-dimensional-light.min.js.LICENSE.txt +5 -0
  323. package/ts3.4/typings/packages/survey-core/src/panel.d.ts +2 -1
  324. package/ts3.4/typings/packages/survey-core/src/question_custom.d.ts +3 -0
  325. package/ts3.4/typings/packages/survey-core/src/survey-events-api.d.ts +17 -6
  326. package/ts3.4/typings/packages/survey-core/src/survey.d.ts +11 -6
  327. package/ts3.4/typings/packages/survey-core/src/textPreProcessor.d.ts +1 -0
  328. package/typings/entries/chunks/core-wo-model.d.ts +10 -0
  329. package/typings/entries/chunks/model.d.ts +95 -95
  330. package/typings/entries/index.d.ts +2 -0
  331. package/typings/packages/survey-core/src/panel.d.ts +2 -1
  332. package/typings/packages/survey-core/src/question_custom.d.ts +3 -0
  333. package/typings/packages/survey-core/src/survey-events-api.d.ts +17 -6
  334. package/typings/packages/survey-core/src/survey.d.ts +11 -6
  335. package/typings/packages/survey-core/src/textPreProcessor.d.ts +1 -0
  336. package/typings/src/actions/action.d.ts +300 -0
  337. package/typings/src/actions/adaptive-container.d.ts +29 -0
  338. package/typings/src/actions/container.d.ts +59 -0
  339. package/typings/src/base-interfaces.d.ts +366 -0
  340. package/typings/src/base.d.ts +333 -0
  341. package/typings/src/calculatedValue.d.ts +49 -0
  342. package/typings/src/choicesRestful.d.ts +177 -0
  343. package/typings/src/conditionProcessValue.d.ts +25 -0
  344. package/typings/src/conditions.d.ts +98 -0
  345. package/typings/src/conditionsParser.d.ts +14 -0
  346. package/typings/src/console-warnings.d.ts +6 -0
  347. package/typings/src/defaultCss/defaultCss.d.ts +873 -0
  348. package/typings/src/defaultTitle.d.ts +3 -0
  349. package/typings/src/dragdrop/choices.d.ts +21 -0
  350. package/typings/src/dragdrop/core.d.ts +55 -0
  351. package/typings/src/dragdrop/dom-adapter.d.ts +49 -0
  352. package/typings/src/dragdrop/engine.d.ts +6 -0
  353. package/typings/src/dragdrop/matrix-rows.d.ts +19 -0
  354. package/typings/src/dragdrop/ranking-choices.d.ts +26 -0
  355. package/typings/src/dragdrop/ranking-select-to-rank.d.ts +17 -0
  356. package/typings/src/dropdownListModel.d.ts +97 -0
  357. package/typings/src/dropdownMultiSelectListModel.d.ts +37 -0
  358. package/typings/src/dxSurveyService.d.ts +18 -0
  359. package/typings/src/element-helper.d.ts +8 -0
  360. package/typings/src/error.d.ts +81 -0
  361. package/typings/src/expressionItems.d.ts +57 -0
  362. package/typings/src/expressions/expressionParser.d.ts +54 -0
  363. package/typings/src/expressions/expressions.d.ts +135 -0
  364. package/typings/src/flowpanel.d.ts +34 -0
  365. package/typings/src/functionsfactory.d.ts +14 -0
  366. package/typings/src/global_variables_utils.d.ts +30 -0
  367. package/typings/src/header.d.ts +87 -0
  368. package/typings/src/helpers.d.ts +44 -0
  369. package/typings/src/itemvalue.d.ts +93 -0
  370. package/typings/src/jsonobject.d.ts +378 -0
  371. package/typings/src/list.d.ts +144 -0
  372. package/typings/src/localizablestring.d.ts +125 -0
  373. package/typings/src/localization/english.d.ts +109 -0
  374. package/typings/src/martixBase.d.ts +133 -0
  375. package/typings/src/mask/input_element_adapter.d.ts +16 -0
  376. package/typings/src/mask/mask_base.d.ts +29 -0
  377. package/typings/src/mask/mask_currency.d.ts +41 -0
  378. package/typings/src/mask/mask_datetime.d.ts +91 -0
  379. package/typings/src/mask/mask_numeric.d.ts +90 -0
  380. package/typings/src/mask/mask_pattern.d.ts +78 -0
  381. package/typings/src/mask/mask_utils.d.ts +20 -0
  382. package/typings/src/multiSelectListModel.d.ts +17 -0
  383. package/typings/src/notifier.d.ts +30 -0
  384. package/typings/src/page.d.ts +133 -0
  385. package/typings/src/panel-layout-column.d.ts +9 -0
  386. package/typings/src/panel.d.ts +633 -0
  387. package/typings/src/popup-dropdown-view-model.d.ts +35 -0
  388. package/typings/src/popup-modal-view-model.d.ts +16 -0
  389. package/typings/src/popup-survey.d.ts +132 -0
  390. package/typings/src/popup-utils.d.ts +4 -0
  391. package/typings/src/popup-view-model.d.ts +81 -0
  392. package/typings/src/popup.d.ts +66 -0
  393. package/typings/src/progress-buttons.d.ts +44 -0
  394. package/typings/src/question.d.ts +949 -0
  395. package/typings/src/questionCustomWidgets.d.ts +46 -0
  396. package/typings/src/question_baseselect.d.ts +547 -0
  397. package/typings/src/question_boolean.d.ts +116 -0
  398. package/typings/src/question_buttongroup.d.ts +51 -0
  399. package/typings/src/question_checkbox.d.ts +158 -0
  400. package/typings/src/question_comment.d.ts +59 -0
  401. package/typings/src/question_custom.d.ts +454 -0
  402. package/typings/src/question_dropdown.d.ts +156 -0
  403. package/typings/src/question_empty.d.ts +8 -0
  404. package/typings/src/question_expression.d.ts +110 -0
  405. package/typings/src/question_file.d.ts +303 -0
  406. package/typings/src/question_html.d.ts +26 -0
  407. package/typings/src/question_image.d.ts +86 -0
  408. package/typings/src/question_imagepicker.d.ts +168 -0
  409. package/typings/src/question_matrix.d.ts +198 -0
  410. package/typings/src/question_matrixdropdown.d.ts +56 -0
  411. package/typings/src/question_matrixdropdownbase.d.ts +572 -0
  412. package/typings/src/question_matrixdropdowncolumn.d.ts +344 -0
  413. package/typings/src/question_matrixdropdownrendered.d.ts +171 -0
  414. package/typings/src/question_matrixdynamic.d.ts +299 -0
  415. package/typings/src/question_multipletext.d.ts +361 -0
  416. package/typings/src/question_paneldynamic.d.ts +719 -0
  417. package/typings/src/question_radiogroup.d.ts +40 -0
  418. package/typings/src/question_ranking.d.ts +135 -0
  419. package/typings/src/question_rating.d.ts +300 -0
  420. package/typings/src/question_signaturepad.d.ts +149 -0
  421. package/typings/src/question_tagbox.d.ts +98 -0
  422. package/typings/src/question_text.d.ts +206 -0
  423. package/typings/src/question_textbase.d.ts +62 -0
  424. package/typings/src/questionfactory.d.ts +27 -0
  425. package/typings/src/questionnonvalue.d.ts +22 -0
  426. package/typings/src/rendererFactory.d.ts +11 -0
  427. package/typings/src/settings.d.ts +641 -0
  428. package/typings/src/survey-element.d.ts +471 -0
  429. package/typings/src/survey-error.d.ts +18 -0
  430. package/typings/src/survey-events-api.d.ts +1152 -0
  431. package/typings/src/survey.d.ts +3126 -0
  432. package/typings/src/surveyProgress.d.ts +4 -0
  433. package/typings/src/surveyStrings.d.ts +151 -0
  434. package/typings/src/surveyTaskManager.d.ts +16 -0
  435. package/typings/src/surveyTimerModel.d.ts +47 -0
  436. package/typings/src/surveyToc.d.ts +23 -0
  437. package/typings/src/surveytimer.d.ts +22 -0
  438. package/typings/src/svgbundle.d.ts +23 -0
  439. package/typings/src/template-renderer.d.ts +10 -0
  440. package/typings/src/textPreProcessor.d.ts +43 -0
  441. package/typings/src/themes.d.ts +222 -0
  442. package/typings/src/trigger.d.ts +155 -0
  443. package/typings/src/utils/animation.d.ts +91 -0
  444. package/typings/src/utils/camera.d.ts +27 -0
  445. package/typings/src/utils/cssClassBuilder.d.ts +6 -0
  446. package/typings/src/utils/devices.d.ts +12 -0
  447. package/typings/src/utils/dragOrClickHelper.d.ts +16 -0
  448. package/typings/src/utils/popup.d.ts +45 -0
  449. package/typings/src/utils/responsivity-manager.d.ts +31 -0
  450. package/typings/src/utils/taskmanager.d.ts +28 -0
  451. package/typings/src/utils/text-area.d.ts +58 -0
  452. package/typings/src/utils/utils.d.ts +86 -0
  453. package/typings/src/validator.d.ts +204 -0
@@ -0,0 +1,333 @@
1
+ import { ILocalizableOwner, LocalizableString } from "./localizablestring";
2
+ import { HashTable } from "./helpers";
3
+ import { JsonObjectProperty } from "./jsonobject";
4
+ import { ItemValue } from "./itemvalue";
5
+ import { IElement, IFindElement, IProgressInfo, ISurvey, ILoadFromJSONOptions, ISaveToJSONOptions } from "./base-interfaces";
6
+ import { ExpressionRunner } from "./conditions";
7
+ export declare class Bindings {
8
+ private obj;
9
+ private properties;
10
+ private values;
11
+ constructor(obj: Base);
12
+ getType(): string;
13
+ getNames(): Array<string>;
14
+ getProperties(): Array<JsonObjectProperty>;
15
+ setBinding(propertyName: string, valueName: string): void;
16
+ clearBinding(propertyName: string): void;
17
+ isEmpty(): boolean;
18
+ getValueNameByPropertyName(propertyName: string): string;
19
+ getPropertiesByValueName(valueName: string): Array<string>;
20
+ getJson(): any;
21
+ setJson(value: any, isLoading?: boolean): void;
22
+ private fillProperties;
23
+ private onChangedJSON;
24
+ }
25
+ export declare class Dependencies {
26
+ currentDependency: () => void;
27
+ target: Base;
28
+ property: string;
29
+ private static DependenciesCount;
30
+ constructor(currentDependency: () => void, target: Base, property: string);
31
+ dependencies: Array<{
32
+ obj: Base;
33
+ prop: string;
34
+ id: string;
35
+ }>;
36
+ id: string;
37
+ addDependency(target: Base, property: string): void;
38
+ dispose(): void;
39
+ }
40
+ export declare class ComputedUpdater<T = any> {
41
+ private _updater;
42
+ static readonly ComputedUpdaterType = "__dependency_computed";
43
+ private dependencies;
44
+ constructor(_updater: () => T);
45
+ readonly type = "__dependency_computed";
46
+ get updater(): () => T;
47
+ setDependencies(dependencies: Dependencies): void;
48
+ protected getDependencies(): Dependencies;
49
+ private clearDependencies;
50
+ dispose(): any;
51
+ }
52
+ /**
53
+ * A base class for all SurveyJS objects.
54
+ */
55
+ export declare class Base {
56
+ private static currentDependencis;
57
+ static finishCollectDependencies(): Dependencies;
58
+ static startCollectDependencies(updater: () => void, target: Base, property: string): void;
59
+ protected static collectDependency(target: Base, property: string): void;
60
+ dependencies: {
61
+ [key: string]: ComputedUpdater;
62
+ };
63
+ static get commentSuffix(): string;
64
+ static set commentSuffix(val: string);
65
+ static get commentPrefix(): string;
66
+ static set commentPrefix(val: string);
67
+ static createItemValue: (item: any, type?: string) => any;
68
+ static itemValueLocStrChanged: (arr: Array<any>) => void;
69
+ /**
70
+ * Returns `true` if a passed `value` is an empty string, array, or object or if it equals to `undefined` or `null`.
71
+ *
72
+ * @param value A value to be checked.
73
+ * @param trimString *(Optional)* When this parameter is `true`, the method ignores whitespace characters at the beginning and end of a string value. Pass `false` to disable this functionality.
74
+ */
75
+ isValueEmpty(value: any, trimString?: boolean): boolean;
76
+ equals(obj: Base): boolean;
77
+ protected equalsCore(obj: Base): boolean;
78
+ protected trimValue(value: any): any;
79
+ protected isPropertyEmpty(value: any): boolean;
80
+ static createPropertiesHash(): {};
81
+ private propertyHash;
82
+ private localizableStrings;
83
+ private arraysInfo;
84
+ private eventList;
85
+ private expressionInfo;
86
+ private bindingsValue;
87
+ private isDisposedValue;
88
+ private classMetaData;
89
+ private onPropChangeFunctions;
90
+ protected isLoadingFromJsonValue: boolean;
91
+ loadingOwner: Base;
92
+ protected jsonObj: any;
93
+ /**
94
+ * An event that is raised when a property of this SurveyJS object has changed.
95
+ *
96
+ * Parameters:
97
+ *
98
+ * - `sender`: `this`\
99
+ * A SurveyJS object whose property has changed.
100
+ * - `options.name`: `string`\
101
+ * The name of the changed property.
102
+ * - `options.newValue`: `any`\
103
+ * A new value for the property.
104
+ * - `options.oldValue`: `any`\
105
+ * An old value of the property. If the property is an array, `oldValue` contains the same array as `newValue` does.
106
+ *
107
+ * If you need to add and remove property change event handlers dynamically, use the [`registerPropertyChangedHandlers`](#registerPropertyChangedHandlers) and [`unregisterPropertyChangedHandlers`](#unregisterPropertyChangedHandlers) methods instead.
108
+ */
109
+ onPropertyChanged: EventBase<Base>;
110
+ /**
111
+ * An event that is raised when an [`ItemValue`](https://surveyjs.io/form-library/documentation/itemvalue) property is changed.
112
+ *
113
+ * Parameters:
114
+ *
115
+ * - `sender`: `this`\
116
+ * A SurveyJS object whose property contains an array of `ItemValue` objects.
117
+ * - `options.obj`: [`ItemValue`](https://surveyjs.io/form-library/documentation/itemvalue)\
118
+ * An `ItemValue` object.
119
+ * - `options.propertyName`: `string`\
120
+ * The name of the property to which an array of `ItemValue` objects is assigned (for example, `"choices"` or `"rows"`).
121
+ * - `options.name`: `"text"` | `"value"`\
122
+ * The name of the changed property.
123
+ * - `options.newValue`: `any`\
124
+ * A new value for the property.
125
+ */
126
+ onItemValuePropertyChanged: Event<(sender: Base, options: any) => any, Base, any>;
127
+ getPropertyValueCoreHandler: (propertiesHash: any, name: string) => any;
128
+ setPropertyValueCoreHandler: (propertiesHash: any, name: string, val: any) => void;
129
+ createArrayCoreHandler: (propertiesHash: any, name: string) => Array<any>;
130
+ surveyChangedCallback: () => void;
131
+ private isCreating;
132
+ constructor();
133
+ dispose(): void;
134
+ get isDisposed(): boolean;
135
+ protected addEvent<T, Options = any>(): EventBase<T, Options>;
136
+ protected onBaseCreating(): void;
137
+ /**
138
+ * Returns the object type as it is used in the JSON schema.
139
+ */
140
+ getType(): string;
141
+ /**
142
+ * Use this method to find out if the current object is of a given `typeName` or inherited from it.
143
+ *
144
+ * @param typeName One of the values listed in the [getType()](https://surveyjs.io/form-library/documentation/question#getType) description.
145
+ * @returns `true` if the current object is of a given `typeName` or inherited from it.
146
+ * @see getType
147
+ */
148
+ isDescendantOf(typeName: string): boolean;
149
+ getSurvey(isLive?: boolean): ISurvey;
150
+ /**
151
+ * Returns `true` if the survey is being designed in Survey Creator.
152
+ */
153
+ get isDesignMode(): boolean;
154
+ /**
155
+ * Returns `true` if the object is included in a survey.
156
+ *
157
+ * This property may return `false`, for example, when you [create a survey model dynamically](https://surveyjs.io/form-library/documentation/design-survey-create-a-simple-survey#create-or-change-a-survey-model-dynamically).
158
+ */
159
+ get inSurvey(): boolean;
160
+ get bindings(): Bindings;
161
+ checkBindings(valueName: string, value: any): void;
162
+ protected updateBindings(propertyName: string, value: any): void;
163
+ protected updateBindingValue(valueName: string, value: any): void;
164
+ getTemplate(): string;
165
+ /**
166
+ * Returns `true` if the object configuration is being loaded from JSON.
167
+ */
168
+ get isLoadingFromJson(): boolean;
169
+ protected getIsLoadingFromJson(): boolean;
170
+ startLoadingFromJson(json?: any): void;
171
+ endLoadingFromJson(): void;
172
+ /**
173
+ * Returns a JSON object that corresponds to the current SurveyJS object.
174
+ * @see fromJSON
175
+ */
176
+ toJSON(options?: ISaveToJSONOptions): any;
177
+ /**
178
+ * Assigns a new configuration to the current SurveyJS object. This configuration is taken from a passed JSON object.
179
+ *
180
+ * The JSON object should contain only serializable properties of this SurveyJS object. Event handlers and properties that do not belong to the SurveyJS object are ignored.
181
+ *
182
+ * @param json A JSON object with properties that you want to apply to the current SurveyJS object.
183
+ * @param options An object with configuration options.
184
+ * @param {boolean} options.validatePropertyValues Pass `true` if you want to validate property values. Use the [`jsonErrors`](#jsonErrors) array to access validation errors.
185
+ * @see toJSON
186
+ */
187
+ fromJSON(json: any, options?: ILoadFromJSONOptions): void;
188
+ onSurveyLoad(): void;
189
+ /**
190
+ * Creates a new object that has the same type and properties as the current SurveyJS object.
191
+ */
192
+ clone(): Base;
193
+ /**
194
+ * Returns a `JsonObjectProperty` object with metadata about a serializable property that belongs to the current SurveyJS object.
195
+ *
196
+ * If the property is not found, this method returns `null`.
197
+ * @param propName A property name.
198
+ */
199
+ getPropertyByName(propName: string): JsonObjectProperty;
200
+ isPropertyVisible(propName: string): boolean;
201
+ static createProgressInfo(): IProgressInfo;
202
+ getProgressInfo(): IProgressInfo;
203
+ localeChanged(): void;
204
+ locStrsChanged(): void;
205
+ /**
206
+ * Returns the value of a property with a specified name.
207
+ *
208
+ * If the property is not found or does not have a value, this method returns either `undefined`, `defaultValue` specified in the property configuration, or a value passed as the `defaultValue` parameter.
209
+ *
210
+ * @param name A property name.
211
+ * @param defaultValue *(Optional)* A value to return if the property is not found or does not have a value.
212
+ */
213
+ getPropertyValue(name: string, defaultValue?: any, calcFunc?: () => any): any;
214
+ getDefaultPropertyValue(name: string): any;
215
+ hasDefaultPropertyValue(name: string): boolean;
216
+ resetPropertyValue(name: string): void;
217
+ protected getPropertyValueWithoutDefault(name: string): any;
218
+ protected getPropertyValueCore(propertiesHash: any, name: string): any;
219
+ geValueFromHash(): any;
220
+ protected setPropertyValueCore(propertiesHash: any, name: string, val: any): void;
221
+ get isEditingSurveyElement(): boolean;
222
+ iteratePropertiesHash(func: (hash: any, key: string) => void): void;
223
+ /**
224
+ * Assigns a new value to a specified property.
225
+ * @param name A property name.
226
+ * @param val A new value for the property.
227
+ */
228
+ setPropertyValue(name: string, val: any): void;
229
+ protected setArrayPropertyDirectly(name: string, val: any, sendNotification?: boolean): void;
230
+ protected setPropertyValueDirectly(name: string, val: any): void;
231
+ protected clearPropertyValue(name: string): void;
232
+ onPropertyValueChangedCallback(name: string, oldValue: any, newValue: any, sender: Base, arrayChanges: ArrayChanges): void;
233
+ itemValuePropertyChanged(item: ItemValue, name: string, oldValue: any, newValue: any): void;
234
+ protected onPropertyValueChanged(name: string, oldValue: any, newValue: any): void;
235
+ protected propertyValueChanged(name: string, oldValue: any, newValue: any, arrayChanges?: ArrayChanges, target?: Base): void;
236
+ onBindingChanged(oldValue: any, newValue: any): void;
237
+ protected get isInternal(): boolean;
238
+ private doPropertyValueChangedCallback;
239
+ addExpressionProperty(name: string, onExecute: (obj: Base, res: any) => void, canRun?: (obj: Base) => boolean): void;
240
+ getDataFilteredValues(): any;
241
+ getDataFilteredProperties(): any;
242
+ protected runConditionCore(values: HashTable<any>, properties: HashTable<any>): void;
243
+ protected canRunConditions(): boolean;
244
+ private checkConditionPropertyChanged;
245
+ private runConditionItemCore;
246
+ private asynExpressionHash;
247
+ private doBeforeAsynRun;
248
+ private doAfterAsynRun;
249
+ protected onAsyncRunningChanged(): void;
250
+ get isAsyncExpressionRunning(): boolean;
251
+ protected createExpressionRunner(expression: string): ExpressionRunner;
252
+ /**
253
+ * Registers a single value change handler for one or multiple properties.
254
+ *
255
+ * The `registerPropertyChangedHandlers` and [`unregisterPropertyChangedHandlers`](#unregisterPropertyChangedHandlers) methods allow you to manage property change event handlers dynamically. If you only need to attach an event handler without removing it afterwards, you can use the [`onPropertyChanged`](#onPropertyChanged) event instead.
256
+ * @param propertyNames An array of one or multiple property names.
257
+ * @param handler A function to call when one of the listed properties change. Accepts a new property value as an argument.
258
+ * @param key *(Optional)* A key that identifies the current registration. If a function for one of the properties is already registered with the same key, the function will be overwritten. You can also use the key to subsequently unregister handlers.
259
+ * @see unregisterPropertyChangedHandlers
260
+ */
261
+ registerPropertyChangedHandlers(propertyNames: Array<string>, handler: any, key?: string): void;
262
+ /**
263
+ * Unregisters value change event handlers for the specified properties.
264
+ * @param propertyNames An array of one or multiple property names.
265
+ * @param key *(Optional)* A key of the registration that you want to cancel.
266
+ * @see registerPropertyChangedHandlers
267
+ */
268
+ unregisterPropertyChangedHandlers(propertyNames: Array<string>, key?: string): void;
269
+ registerFunctionOnPropertyValueChanged(name: string, func: any, key?: string): void;
270
+ registerFunctionOnPropertiesValueChanged(names: Array<string>, func: any, key?: string): void;
271
+ unRegisterFunctionOnPropertyValueChanged(name: string, key?: string): void;
272
+ unRegisterFunctionOnPropertiesValueChanged(names: Array<string>, key?: string): void;
273
+ createCustomLocalizableObj(name: string): LocalizableString;
274
+ getLocale(): string;
275
+ getLocalizationString(strName: string): string;
276
+ getLocalizationFormatString(strName: string, ...args: any[]): string;
277
+ protected createLocalizableString(name: string, owner: ILocalizableOwner, useMarkDown?: boolean, defaultStr?: boolean | string): LocalizableString;
278
+ getLocalizableString(name: string): LocalizableString;
279
+ getLocalizableStringText(name: string, defaultStr?: string): string;
280
+ setLocalizableStringText(name: string, value: string): void;
281
+ addUsedLocales(locales: Array<string>): void;
282
+ searchText(text: string, founded: Array<IFindElement>): void;
283
+ private getSearchableLocalizedStrings;
284
+ protected getSearchableLocKeys(keys: Array<string>): void;
285
+ protected getSearchableItemValueKeys(keys: Array<string>): void;
286
+ protected AddLocStringToUsedLocales(locStr: LocalizableString, locales: Array<string>): void;
287
+ protected createItemValues(name: string): Array<any>;
288
+ private notifyArrayChanged;
289
+ protected createNewArrayCore(name: string): Array<any>;
290
+ protected ensureArray(name: string, onPush?: any, onRemove?: any): any[];
291
+ protected createNewArray(name: string, onPush?: any, onRemove?: any): Array<any>;
292
+ protected getItemValueType(): string;
293
+ protected setArray(name: string, src: any[], dest: any[], isItemValues: boolean, onPush: any): void;
294
+ protected isTwoValueEquals(x: any, y: any, caseInSensitive?: boolean, trimString?: boolean): boolean;
295
+ private static copyObject;
296
+ protected copyCssClasses(dest: any, source: any): void;
297
+ private getValueInLowCase;
298
+ getElementsInDesign(includeHidden?: boolean): Array<IElement>;
299
+ get animationAllowed(): boolean;
300
+ protected getIsAnimationAllowed(): boolean;
301
+ private animationAllowedLock;
302
+ blockAnimations(): void;
303
+ releaseAnimations(): void;
304
+ supportOnElementRerenderedEvent: boolean;
305
+ onElementRerenderedEventEnabled: boolean;
306
+ enableOnElementRerenderedEvent(): void;
307
+ disableOnElementRerenderedEvent(): void;
308
+ protected _onElementRerendered: EventBase<Base>;
309
+ get onElementRerendered(): EventBase<Base>;
310
+ afterRerender(): void;
311
+ }
312
+ export declare class ArrayChanges<T = any> {
313
+ index: number;
314
+ deleteCount: number;
315
+ itemsToAdd: T[];
316
+ deletedItems: T[];
317
+ constructor(index: number, deleteCount: number, itemsToAdd: T[], deletedItems: T[]);
318
+ }
319
+ export declare class Event<CallbackFunction extends Function, Sender, Options> {
320
+ onCallbacksChanged: () => void;
321
+ protected callbacks: Array<CallbackFunction>;
322
+ get isEmpty(): boolean;
323
+ get length(): number;
324
+ fireByCreatingOptions(sender: any, createOptions: () => Options): void;
325
+ fire(sender: Sender, options: Options): void;
326
+ clear(): void;
327
+ add(func: CallbackFunction): void;
328
+ remove(func: CallbackFunction): void;
329
+ hasFunc(func: CallbackFunction): boolean;
330
+ private fireCallbackChanged;
331
+ }
332
+ export declare class EventBase<Sender, Options = any> extends Event<(sender: Sender, options: Options) => any, Sender, Options> {
333
+ }
@@ -0,0 +1,49 @@
1
+ import { HashTable } from "./helpers";
2
+ import { Base } from "./base";
3
+ import { ISurvey, ISurveyData } from "./base-interfaces";
4
+ /**
5
+ * The calculated value is a way to define the variable in Survey Creator.
6
+ * It has two main properties: name and expression. Based on expression the value read-only property is automatically calculated.
7
+ * The name property should be unique though all calculated values.
8
+ * It uses survey.getVariable/seruvey.setVariable functions to get/set its value. The class do not store its value internally.
9
+ * You may set includeIntoResult property to true to store this calculated value into survey result.
10
+ */
11
+ export declare class CalculatedValue extends Base {
12
+ private data;
13
+ private expressionIsRunning;
14
+ private expressionRunner;
15
+ constructor(name?: string, expression?: string);
16
+ setOwner(data: ISurveyData): void;
17
+ getType(): string;
18
+ getSurvey(live?: boolean): ISurvey;
19
+ get owner(): ISurveyData;
20
+ /**
21
+ * The calculated value name. It should be non empty and unique.
22
+ */
23
+ get name(): string;
24
+ set name(val: string);
25
+ /**
26
+ * Set this property to true to include the non-empty calculated value into survey result, survey.data property.
27
+ */
28
+ get includeIntoResult(): boolean;
29
+ set includeIntoResult(val: boolean);
30
+ /**
31
+ * The Expression that used to calculate the value. You may use standard operators like +, -, * and /, squares (). Here is the example of accessing the question value {questionname}.
32
+ * Example: "({quantity} * {price}) * (100 - {discount}) / 100"
33
+ */
34
+ get expression(): string;
35
+ set expression(val: string);
36
+ locCalculation(): void;
37
+ unlocCalculation(): void;
38
+ private isCalculated;
39
+ resetCalculation(): void;
40
+ doCalculation(calculatedValues: Array<CalculatedValue>, values: HashTable<any>, properties: HashTable<any>): void;
41
+ runExpression(values: HashTable<any>, properties: HashTable<any>): void;
42
+ get value(): any;
43
+ protected setValue(val: any): void;
44
+ private get canRunExpression();
45
+ private rerunExpression;
46
+ private runExpressionCore;
47
+ private runDependentExpressions;
48
+ private ensureExpression;
49
+ }
@@ -0,0 +1,177 @@
1
+ import { Base } from "./base";
2
+ import { ITextProcessor, IQuestion, ISurvey } from "./base-interfaces";
3
+ import { ItemValue } from "./itemvalue";
4
+ import { SurveyError } from "./survey-error";
5
+ /**
6
+ * Configures access to a RESTful service that returns choices for [Checkbox](https://surveyjs.io/Examples/Library?id=questiontype-checkbox), [Dropdown](https://surveyjs.io/Examples/Library?id=questiontype-dropdown), [Radiogroup](https://surveyjs.io/Examples/Library?id=questiontype-radiogroup), and other multiple-choice question types.
7
+ *
8
+ * Use the following properties to configure this object:
9
+ *
10
+ * ```js
11
+ * {
12
+ * url: "http://...", // A RESTful service's URL.
13
+ * valueName: "value", // Specifies which field contains choice values.
14
+ * titleName: "title", // Specifies which field contains display texts for choice values.
15
+ * imageLinkName: "imageUrl", // Specifies which field contains image URLs. Used in Image Picker questions.
16
+ * // Path to the array of choices. Specify `path` only if the array of choices is nested within the object returned by the service.
17
+ * // The following path separators are allowed: semicolon `;`, comma `,`.
18
+ * path: "myNestedArray"
19
+ * }
20
+ * ```
21
+ *
22
+ * Typically, you should assign this object to a question's [`choicesByUrl`](https://surveyjs.io/Documentation/Library?id=QuestionSelectBase#choicesByUrl) property. You can also specify additional application-wide settings using the [`settings.web`](https://surveyjs.io/form-library/documentation/api-reference/settings#web) object.
23
+ */
24
+ export declare class ChoicesRestful extends Base {
25
+ private static cacheText;
26
+ private static noCacheText;
27
+ static get EncodeParameters(): boolean;
28
+ static set EncodeParameters(val: boolean);
29
+ static clearCache(): void;
30
+ private static itemsResult;
31
+ private static sendingSameRequests;
32
+ private static addSameRequest;
33
+ private static unregisterSameRequests;
34
+ static get onBeforeSendRequest(): (sender: ChoicesRestful, options: {
35
+ request: XMLHttpRequest;
36
+ }) => void;
37
+ static set onBeforeSendRequest(val: (sender: ChoicesRestful, options: {
38
+ request: XMLHttpRequest;
39
+ }) => void);
40
+ private static getCachedItemsResult;
41
+ private lastObjHash;
42
+ private isRunningValue;
43
+ protected processedUrl: string;
44
+ protected processedPath: string;
45
+ private isUsingCacheFromUrl;
46
+ onProcessedUrlCallback: (url: string, path: string) => void;
47
+ getResultCallback: (items: Array<ItemValue>) => void;
48
+ beforeSendRequestCallback: () => void;
49
+ updateResultCallback: (items: Array<ItemValue>, serverResult: any) => Array<ItemValue>;
50
+ getItemValueCallback: (item: any) => any;
51
+ error: SurveyError;
52
+ owner: IQuestion;
53
+ createItemValue: (value: any) => ItemValue;
54
+ constructor();
55
+ getSurvey(live?: boolean): ISurvey;
56
+ run(textProcessor?: ITextProcessor): void;
57
+ get isUsingCache(): boolean;
58
+ get isRunning(): boolean;
59
+ protected getIsRunning(): boolean;
60
+ get isWaitingForParameters(): boolean;
61
+ protected useChangedItemsResults(): boolean;
62
+ private doEmptyResultCallback;
63
+ private processedText;
64
+ protected parseResponse(response: any): any;
65
+ protected sendRequest(): void;
66
+ getType(): string;
67
+ get isEmpty(): boolean;
68
+ getCustomPropertiesNames(): Array<string>;
69
+ private getCustomPropertyName;
70
+ private getCustomProperties;
71
+ private getAllPropertiesNames;
72
+ setData(json: any): void;
73
+ getData(): any;
74
+ /**
75
+ * A RESTful service's URL.
76
+ *
77
+ * This property supports [dynamic URLs](https://surveyjs.io/Documentation/Library?id=design-survey-conditional-logic#dynamic-texts). For example, the URL below depends on the `region` question's value. When the value changes, the survey automatically loads a new dataset that corresponds to the selected region.
78
+ *
79
+ * ```js
80
+ * url: "https://surveyjs.io/api/CountriesExample?region={region}"
81
+ * ```
82
+ *
83
+ * [View Demo](https://surveyjs.io/Examples/Library/?id=questiontype-dropdownrestfull (linkStyle))
84
+ * @see path
85
+ * @see valueName
86
+ * @see titleName
87
+ */
88
+ get url(): string;
89
+ set url(val: string);
90
+ /**
91
+ * Path to the array of choices. The following path separators are allowed: semicolon `;`, comma `,`.
92
+ *
93
+ * Specify this property only if the array of choices is nested within the object returned by the service. For example, the service returns the following object:
94
+ *
95
+ * ```js
96
+ * {
97
+ * countries: [ ... ],
98
+ * capitals: [ ... ]
99
+ * }
100
+ * ```
101
+ *
102
+ * To populate choices with values from the `countries` array, set the `path` property to `"countries"`. To use the `capitals` array, set this property to `"capitals"`.
103
+ * @see url
104
+ * @see valueName
105
+ * @see titleName
106
+ */
107
+ get path(): string;
108
+ set path(val: string);
109
+ /**
110
+ * Specifies which property in the obtained data object contains choice values.
111
+ *
112
+ * [View Demo](https://surveyjs.io/Examples/Library/?id=questiontype-dropdownrestfull (linkStyle))
113
+ *
114
+ * @see url
115
+ * @see path
116
+ * @see titleName
117
+ */
118
+ get valueName(): string;
119
+ set valueName(val: string);
120
+ /**
121
+ * Specifies which property in the obtained data object contains display texts for choices.
122
+ *
123
+ * @see url
124
+ * @see path
125
+ * @see valueName
126
+ */
127
+ get titleName(): string;
128
+ set titleName(val: string);
129
+ /**
130
+ * Specifies which property in the obtained data object contains image URLs. Used only in [Image Picker](https://surveyjs.io/Examples/Library?id=questiontype-imagepicker) questions.
131
+ *
132
+ * @see url
133
+ * @see path
134
+ * @see valueName
135
+ */
136
+ get imageLinkName(): string;
137
+ set imageLinkName(val: string);
138
+ /**
139
+ * Specifies whether the service is allowed to return an empty response or an empty array in a response.
140
+ *
141
+ * Default value: `false`
142
+ */
143
+ get allowEmptyResponse(): boolean;
144
+ set allowEmptyResponse(val: boolean);
145
+ get attachOriginalItems(): boolean;
146
+ set attachOriginalItems(val: boolean);
147
+ get itemValueType(): string;
148
+ clear(): void;
149
+ protected beforeSendRequest(): void;
150
+ protected beforeLoadRequest(): void;
151
+ protected onLoad(result: any, loadingObjHash?: string): void;
152
+ protected callResultCallback(items: Array<ItemValue>, loadingObjHash: string): void;
153
+ private setCustomProperties;
154
+ private getPropertyBinding;
155
+ private onError;
156
+ private getResultAfterPath;
157
+ private getPathes;
158
+ private getValue;
159
+ private setTitle;
160
+ private getImageLink;
161
+ private getValueCore;
162
+ private get objHash();
163
+ }
164
+ /**
165
+ * @deprecated Use `ChoicesRestful` instead.
166
+ */
167
+ export declare class ChoicesRestfull extends ChoicesRestful {
168
+ static get EncodeParameters(): boolean;
169
+ static set EncodeParameters(val: boolean);
170
+ static clearCache(): void;
171
+ static get onBeforeSendRequest(): (sender: ChoicesRestful, options: {
172
+ request: XMLHttpRequest;
173
+ }) => void;
174
+ static set onBeforeSendRequest(val: (sender: ChoicesRestful, options: {
175
+ request: XMLHttpRequest;
176
+ }) => void);
177
+ }
@@ -0,0 +1,25 @@
1
+ import { HashTable } from "./helpers";
2
+ export declare class ProcessValue {
3
+ values: HashTable<any>;
4
+ properties: HashTable<any>;
5
+ asyncValues: HashTable<any>;
6
+ onCompleteAsyncFunc: (op: any) => void;
7
+ constructor();
8
+ getFirstName(text: string, obj?: any): string;
9
+ hasValue(text: string, values?: HashTable<any>): boolean;
10
+ getValue(text: string, values?: HashTable<any>): any;
11
+ setValue(obj: any, text: string, value: any): void;
12
+ getValueInfo(valueInfo: any): void;
13
+ isAnyKeyChanged(keys: any, usedNames: string[]): boolean;
14
+ private getValueFromPath;
15
+ private getValueCore;
16
+ private getQuestionDirectly;
17
+ private getValueFromSurvey;
18
+ private getValueFromValues;
19
+ private getNonNestedObject;
20
+ private getNonNestedObjectCore;
21
+ private getObjInArray;
22
+ private getFirstPropertyName;
23
+ private getObjectValue;
24
+ private getIntValue;
25
+ }
@@ -0,0 +1,98 @@
1
+ import { HashTable } from "./helpers";
2
+ import { Operand } from "./expressions/expressions";
3
+ /**
4
+ * Base interface for expression execution
5
+ */
6
+ export interface IExpresionExecutor {
7
+ /**
8
+ * This call back runs on executing expression if there is at least one async function
9
+ */
10
+ onComplete: (res: any, id: number) => void;
11
+ /**
12
+ * The expression as string, property with get
13
+ */
14
+ expression: string;
15
+ /**
16
+ * Returns true if the expression is valid and can be executed
17
+ */
18
+ canRun(): boolean;
19
+ /**
20
+ * Run the expression. Returns the result of execution.
21
+ * The result can be undefined if there is an asyn function. In this case result will be returned onComplete callback.
22
+ * @param values has with values names and their results. Normally it is question names and their values
23
+ * @param properties the list of properties that are available in functions. Commonly it is survey and question, if expression execuited in a question context
24
+ */
25
+ run(values: HashTable<any>, properties: HashTable<any>, id: number): any;
26
+ /**
27
+ * Returns the list of variables that used in the expression. They defined as: {variableName} in default parser.
28
+ */
29
+ getVariables(): Array<string>;
30
+ /**
31
+ * Returns true if there is a function in the expression
32
+ */
33
+ hasFunction(): boolean;
34
+ /**
35
+ * Returns true if there is an async function in the expression
36
+ */
37
+ isAsync: boolean;
38
+ }
39
+ export declare class ExpressionExecutorRunner {
40
+ private operand;
41
+ private id;
42
+ private onComplete;
43
+ private processValue;
44
+ private asyncFuncList;
45
+ constructor(operand: Operand, id: number, onComplete: (res: any, id: number) => void, values: HashTable<any>, properties: HashTable<any>);
46
+ run(isAsync: boolean): any;
47
+ private getAsyncItemByOperand;
48
+ private runAsyncItem;
49
+ private runAsyncItemCore;
50
+ private doAsyncFunctionReady;
51
+ private isAsyncFuncReady;
52
+ private isAsyncChildrenReady;
53
+ private runValues;
54
+ }
55
+ export declare class ExpressionExecutor implements IExpresionExecutor {
56
+ static createExpressionExecutor: (expression: string) => IExpresionExecutor;
57
+ onComplete: (res: any, id: number) => void;
58
+ private expressionValue;
59
+ private operand;
60
+ private parser;
61
+ private isAsyncValue;
62
+ private hasFunctionValue;
63
+ constructor(expression: string);
64
+ get expression(): string;
65
+ private setExpression;
66
+ getVariables(): Array<string>;
67
+ hasFunction(): boolean;
68
+ get isAsync(): boolean;
69
+ canRun(): boolean;
70
+ run(values: HashTable<any>, properties: HashTable<any>, id: number): any;
71
+ }
72
+ export declare class ExpressionRunnerBase {
73
+ private expressionExecutor;
74
+ private variables;
75
+ private containsFunc;
76
+ private static IdRunnerCounter;
77
+ onBeforeAsyncRun: (id: number) => void;
78
+ onAfterAsyncRun: (id: number) => void;
79
+ constructor(expression: string);
80
+ get expression(): string;
81
+ set expression(value: string);
82
+ getVariables(): Array<string>;
83
+ hasFunction(): boolean;
84
+ get isAsync(): boolean;
85
+ canRun(): boolean;
86
+ protected runCore(values: HashTable<any>, properties?: HashTable<any>): any;
87
+ protected doOnComplete(res: any, id: number): void;
88
+ }
89
+ export declare class ConditionRunner extends ExpressionRunnerBase {
90
+ onRunComplete: (result: boolean) => void;
91
+ run(values: HashTable<any>, properties?: HashTable<any>): boolean;
92
+ protected doOnComplete(res: any, id: number): void;
93
+ }
94
+ export declare class ExpressionRunner extends ExpressionRunnerBase {
95
+ onRunComplete: (result: any) => void;
96
+ run(values: HashTable<any>, properties?: HashTable<any>): any;
97
+ protected doOnComplete(res: any, id: number): void;
98
+ }