@formio/js 5.0.0-dev.5633.8d2b30d → 5.0.0-dev.5633.fde3bc9

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 (493) hide show
  1. package/Changelog.md +47 -2
  2. package/dist/formio.builder.css +8 -8
  3. package/dist/formio.builder.min.css +1 -1
  4. package/dist/formio.embed.js +1 -1
  5. package/dist/formio.embed.min.js +1 -1
  6. package/dist/formio.embed.min.js.LICENSE.txt +1 -1
  7. package/dist/formio.form.css +8 -8
  8. package/dist/formio.form.js +615 -1196
  9. package/dist/formio.form.min.css +1 -1
  10. package/dist/formio.form.min.js +1 -1
  11. package/dist/formio.form.min.js.LICENSE.txt +3 -5
  12. package/dist/formio.full.css +8 -8
  13. package/dist/formio.full.js +659 -920
  14. package/dist/formio.full.min.css +1 -1
  15. package/dist/formio.full.min.js +1 -1
  16. package/dist/formio.full.min.js.LICENSE.txt +3 -5
  17. package/dist/formio.js +18 -18
  18. package/dist/formio.min.js +1 -1
  19. package/dist/formio.min.js.LICENSE.txt +1 -1
  20. package/dist/formio.utils.js +1829 -492
  21. package/dist/formio.utils.min.js +1 -1
  22. package/dist/formio.utils.min.js.LICENSE.txt +10 -4
  23. package/embed.d.ts +1 -0
  24. package/form.d.ts +1 -0
  25. package/lib/cjs/CDN.d.ts +1 -0
  26. package/lib/cjs/CDN.js +6 -3
  27. package/lib/cjs/Element.d.ts +86 -96
  28. package/lib/cjs/Element.js +68 -78
  29. package/lib/cjs/Embed.d.ts +1 -1
  30. package/lib/cjs/Embed.js +52 -12
  31. package/lib/cjs/Form.d.ts +365 -36
  32. package/lib/cjs/Form.js +50 -64
  33. package/lib/cjs/FormBuilder.d.ts +187 -2
  34. package/lib/cjs/FormBuilder.js +30 -8
  35. package/lib/cjs/InlineEmbed.d.ts +7 -0
  36. package/lib/cjs/InlineEmbed.js +116 -0
  37. package/lib/cjs/PDF.d.ts +11 -13
  38. package/lib/cjs/PDF.js +6 -8
  39. package/lib/cjs/Webform.d.ts +183 -143
  40. package/lib/cjs/Webform.js +310 -298
  41. package/lib/cjs/WebformBuilder.d.ts +16 -14
  42. package/lib/cjs/WebformBuilder.js +11 -10
  43. package/lib/cjs/Wizard.d.ts +31 -21
  44. package/lib/cjs/Wizard.js +43 -20
  45. package/lib/cjs/WizardBuilder.d.ts +1 -1
  46. package/lib/cjs/addons/PasswordStrength/PasswordStrengthAddon.d.ts +8 -5
  47. package/lib/cjs/addons/PasswordStrength/PasswordStrengthAddon.js +6 -3
  48. package/lib/cjs/components/Components.d.ts +4 -4
  49. package/lib/cjs/components/Components.js +3 -3
  50. package/lib/cjs/components/_classes/component/Component.d.ts +507 -276
  51. package/lib/cjs/components/_classes/component/Component.form.d.ts +6 -3
  52. package/lib/cjs/components/_classes/component/Component.form.js +5 -0
  53. package/lib/cjs/components/_classes/component/Component.js +438 -196
  54. package/lib/cjs/components/_classes/component/editForm/Component.edit.display.js +0 -8
  55. package/lib/cjs/components/_classes/component/editForm/Component.edit.validation.js +2 -2
  56. package/lib/cjs/components/_classes/component/editForm/utils.js +2 -2
  57. package/lib/cjs/components/_classes/component/fixtures/comp6.d.ts +77 -0
  58. package/lib/cjs/components/_classes/component/fixtures/comp6.js +59 -0
  59. package/lib/cjs/components/_classes/component/fixtures/index.d.ts +2 -1
  60. package/lib/cjs/components/_classes/component/fixtures/index.js +3 -1
  61. package/lib/cjs/components/_classes/field/Field.d.ts +11 -2
  62. package/lib/cjs/components/_classes/field/Field.js +13 -1
  63. package/lib/cjs/components/_classes/input/Input.d.ts +4 -3
  64. package/lib/cjs/components/_classes/input/Input.js +8 -6
  65. package/lib/cjs/components/_classes/list/ListComponent.d.ts +2 -2
  66. package/lib/cjs/components/_classes/list/ListComponent.form.d.ts +6 -3
  67. package/lib/cjs/components/_classes/list/ListComponent.form.js +5 -0
  68. package/lib/cjs/components/_classes/multivalue/Multivalue.d.ts +43 -12
  69. package/lib/cjs/components/_classes/multivalue/Multivalue.js +37 -3
  70. package/lib/cjs/components/_classes/nested/NestedComponent.d.ts +163 -67
  71. package/lib/cjs/components/_classes/nested/NestedComponent.form.d.ts +6 -3
  72. package/lib/cjs/components/_classes/nested/NestedComponent.form.js +5 -0
  73. package/lib/cjs/components/_classes/nested/NestedComponent.js +175 -54
  74. package/lib/cjs/components/_classes/nestedarray/NestedArrayComponent.d.ts +2 -2
  75. package/lib/cjs/components/_classes/nestedarray/NestedArrayComponent.js +1 -1
  76. package/lib/cjs/components/_classes/nesteddata/NestedDataComponent.d.ts +7 -1
  77. package/lib/cjs/components/_classes/nesteddata/NestedDataComponent.js +2 -3
  78. package/lib/cjs/components/address/Address.d.ts +4 -2
  79. package/lib/cjs/components/address/Address.form.d.ts +6 -3
  80. package/lib/cjs/components/address/Address.form.js +5 -0
  81. package/lib/cjs/components/button/Button.d.ts +3 -12
  82. package/lib/cjs/components/button/Button.form.d.ts +6 -3
  83. package/lib/cjs/components/button/Button.form.js +5 -0
  84. package/lib/cjs/components/button/Button.js +5 -0
  85. package/lib/cjs/components/checkbox/Checkbox.d.ts +4 -27
  86. package/lib/cjs/components/checkbox/Checkbox.form.d.ts +6 -3
  87. package/lib/cjs/components/checkbox/Checkbox.form.js +5 -0
  88. package/lib/cjs/components/columns/Columns.d.ts +3 -2
  89. package/lib/cjs/components/columns/Columns.form.d.ts +6 -3
  90. package/lib/cjs/components/columns/Columns.form.js +5 -0
  91. package/lib/cjs/components/columns/Columns.js +1 -1
  92. package/lib/cjs/components/container/Container.form.d.ts +6 -3
  93. package/lib/cjs/components/container/Container.form.js +5 -0
  94. package/lib/cjs/components/content/Content.d.ts +2 -1
  95. package/lib/cjs/components/content/Content.form.d.ts +6 -3
  96. package/lib/cjs/components/content/Content.form.js +5 -0
  97. package/lib/cjs/components/currency/Currency.form.d.ts +6 -3
  98. package/lib/cjs/components/currency/Currency.form.js +5 -0
  99. package/lib/cjs/components/currency/Currency.js +1 -2
  100. package/lib/cjs/components/datagrid/DataGrid.d.ts +8 -7
  101. package/lib/cjs/components/datagrid/DataGrid.form.d.ts +6 -3
  102. package/lib/cjs/components/datagrid/DataGrid.form.js +5 -0
  103. package/lib/cjs/components/datagrid/DataGrid.js +5 -5
  104. package/lib/cjs/components/datagrid/fixtures/comp-with-checkboxes.d.ts +29 -0
  105. package/lib/cjs/components/datagrid/fixtures/comp-with-checkboxes.js +36 -0
  106. package/lib/cjs/components/datagrid/fixtures/index.d.ts +2 -1
  107. package/lib/cjs/components/datagrid/fixtures/index.js +3 -1
  108. package/lib/cjs/components/datamap/DataMap.d.ts +1 -0
  109. package/lib/cjs/components/datamap/DataMap.form.d.ts +6 -3
  110. package/lib/cjs/components/datamap/DataMap.form.js +5 -0
  111. package/lib/cjs/components/datetime/DateTime.d.ts +0 -14
  112. package/lib/cjs/components/datetime/DateTime.form.d.ts +6 -3
  113. package/lib/cjs/components/datetime/DateTime.form.js +5 -0
  114. package/lib/cjs/components/datetime/editForm/DateTime.edit.date.js +2 -2
  115. package/lib/cjs/components/day/Day.d.ts +23 -49
  116. package/lib/cjs/components/day/Day.form.d.ts +6 -3
  117. package/lib/cjs/components/day/Day.form.js +5 -0
  118. package/lib/cjs/components/day/Day.js +16 -21
  119. package/lib/cjs/components/day/fixtures/comp7.d.ts +109 -0
  120. package/lib/cjs/components/day/fixtures/comp7.js +109 -0
  121. package/lib/cjs/components/day/fixtures/index.d.ts +2 -1
  122. package/lib/cjs/components/day/fixtures/index.js +3 -1
  123. package/lib/cjs/components/editgrid/EditGrid.d.ts +7 -3
  124. package/lib/cjs/components/editgrid/EditGrid.form.d.ts +6 -3
  125. package/lib/cjs/components/editgrid/EditGrid.form.js +5 -0
  126. package/lib/cjs/components/editgrid/EditGrid.js +3 -3
  127. package/lib/cjs/components/editgrid/editForm/EditGrid.edit.display.js +2 -5
  128. package/lib/cjs/components/editgrid/editForm/EditGrid.edit.templates.js +6 -9
  129. package/lib/cjs/components/email/Email.form.d.ts +6 -3
  130. package/lib/cjs/components/email/Email.form.js +5 -0
  131. package/lib/cjs/components/fieldset/Fieldset.form.d.ts +6 -3
  132. package/lib/cjs/components/fieldset/Fieldset.form.js +5 -0
  133. package/lib/cjs/components/file/File.d.ts +9 -22
  134. package/lib/cjs/components/file/File.form.d.ts +6 -3
  135. package/lib/cjs/components/file/File.form.js +5 -0
  136. package/lib/cjs/components/file/File.js +1 -2
  137. package/lib/cjs/components/form/Form.d.ts +34 -24
  138. package/lib/cjs/components/form/Form.form.d.ts +6 -3
  139. package/lib/cjs/components/form/Form.form.js +5 -0
  140. package/lib/cjs/components/form/Form.js +15 -13
  141. package/lib/cjs/components/hidden/Hidden.d.ts +1 -11
  142. package/lib/cjs/components/hidden/Hidden.form.d.ts +6 -3
  143. package/lib/cjs/components/hidden/Hidden.form.js +5 -0
  144. package/lib/cjs/components/hidden/Hidden.js +1 -2
  145. package/lib/cjs/components/html/HTML.d.ts +2 -1
  146. package/lib/cjs/components/html/HTML.form.d.ts +6 -3
  147. package/lib/cjs/components/html/HTML.form.js +5 -0
  148. package/lib/cjs/components/number/Number.d.ts +3 -17
  149. package/lib/cjs/components/number/Number.form.d.ts +6 -3
  150. package/lib/cjs/components/number/Number.form.js +5 -0
  151. package/lib/cjs/components/number/Number.js +1 -2
  152. package/lib/cjs/components/panel/Panel.form.d.ts +6 -3
  153. package/lib/cjs/components/panel/Panel.form.js +5 -0
  154. package/lib/cjs/components/panel/Panel.js +0 -1
  155. package/lib/cjs/components/password/Password.form.d.ts +6 -3
  156. package/lib/cjs/components/password/Password.form.js +5 -0
  157. package/lib/cjs/components/phonenumber/PhoneNumber.form.d.ts +6 -3
  158. package/lib/cjs/components/phonenumber/PhoneNumber.form.js +5 -0
  159. package/lib/cjs/components/radio/Radio.d.ts +3 -26
  160. package/lib/cjs/components/radio/Radio.form.d.ts +6 -3
  161. package/lib/cjs/components/radio/Radio.form.js +5 -0
  162. package/lib/cjs/components/radio/Radio.js +6 -6
  163. package/lib/cjs/components/recaptcha/ReCaptcha.d.ts +1 -1
  164. package/lib/cjs/components/recaptcha/ReCaptcha.form.d.ts +6 -3
  165. package/lib/cjs/components/recaptcha/ReCaptcha.form.js +5 -0
  166. package/lib/cjs/components/select/Select.d.ts +16 -39
  167. package/lib/cjs/components/select/Select.form.d.ts +6 -3
  168. package/lib/cjs/components/select/Select.form.js +5 -0
  169. package/lib/cjs/components/select/Select.js +13 -16
  170. package/lib/cjs/components/selectboxes/SelectBoxes.d.ts +2 -17
  171. package/lib/cjs/components/selectboxes/SelectBoxes.form.d.ts +6 -3
  172. package/lib/cjs/components/selectboxes/SelectBoxes.form.js +5 -0
  173. package/lib/cjs/components/selectboxes/SelectBoxes.js +7 -9
  174. package/lib/cjs/components/signature/Signature.d.ts +0 -14
  175. package/lib/cjs/components/signature/Signature.form.d.ts +6 -3
  176. package/lib/cjs/components/signature/Signature.form.js +5 -0
  177. package/lib/cjs/components/survey/Survey.d.ts +3 -15
  178. package/lib/cjs/components/survey/Survey.form.d.ts +6 -3
  179. package/lib/cjs/components/survey/Survey.form.js +5 -0
  180. package/lib/cjs/components/table/Table.d.ts +2 -1
  181. package/lib/cjs/components/table/Table.form.d.ts +6 -3
  182. package/lib/cjs/components/table/Table.form.js +5 -0
  183. package/lib/cjs/components/tabs/Tabs.d.ts +4 -4
  184. package/lib/cjs/components/tabs/Tabs.form.d.ts +6 -3
  185. package/lib/cjs/components/tabs/Tabs.form.js +5 -0
  186. package/lib/cjs/components/tabs/Tabs.js +1 -2
  187. package/lib/cjs/components/tags/Tags.d.ts +0 -14
  188. package/lib/cjs/components/tags/Tags.form.d.ts +6 -3
  189. package/lib/cjs/components/tags/Tags.form.js +5 -0
  190. package/lib/cjs/components/textarea/TextArea.d.ts +4 -9
  191. package/lib/cjs/components/textarea/TextArea.form.d.ts +6 -3
  192. package/lib/cjs/components/textarea/TextArea.form.js +5 -0
  193. package/lib/cjs/components/textarea/TextArea.js +2 -2
  194. package/lib/cjs/components/textfield/TextField.d.ts +14 -30
  195. package/lib/cjs/components/textfield/TextField.form.d.ts +6 -3
  196. package/lib/cjs/components/textfield/TextField.form.js +5 -0
  197. package/lib/cjs/components/textfield/TextField.js +16 -17
  198. package/lib/cjs/components/time/Time.form.d.ts +6 -3
  199. package/lib/cjs/components/time/Time.form.js +5 -0
  200. package/lib/cjs/components/unknown/Unknown.form.d.ts +5 -34
  201. package/lib/cjs/components/unknown/Unknown.form.js +4 -0
  202. package/lib/cjs/components/url/Url.form.d.ts +6 -3
  203. package/lib/cjs/components/url/Url.form.js +5 -0
  204. package/lib/cjs/components/well/Well.form.d.ts +6 -3
  205. package/lib/cjs/components/well/Well.form.js +5 -0
  206. package/lib/cjs/formio.embed.d.ts +1 -2
  207. package/lib/cjs/formio.embed.js +2 -100
  208. package/lib/cjs/formio.form.d.ts +11 -4
  209. package/lib/cjs/formio.form.js +13 -5
  210. package/lib/cjs/providers/Providers.d.ts +36 -5
  211. package/lib/cjs/providers/Providers.js +29 -0
  212. package/lib/cjs/providers/address/AddressProvider.d.ts +131 -12
  213. package/lib/cjs/providers/address/AddressProvider.js +88 -2
  214. package/lib/cjs/providers/address/AzureAddressProvider.d.ts +48 -1
  215. package/lib/cjs/providers/address/AzureAddressProvider.js +37 -0
  216. package/lib/cjs/providers/address/CustomAddressProvider.d.ts +27 -4
  217. package/lib/cjs/providers/address/CustomAddressProvider.js +34 -0
  218. package/lib/cjs/providers/address/GoogleAddressProvider.d.ts +130 -6
  219. package/lib/cjs/providers/address/GoogleAddressProvider.js +73 -1
  220. package/lib/cjs/providers/address/NominatimAddressProvider.d.ts +32 -7
  221. package/lib/cjs/providers/address/NominatimAddressProvider.js +33 -0
  222. package/lib/cjs/providers/address/index.d.ts +3 -1
  223. package/lib/cjs/providers/processor/fileProcessor.d.ts +7 -1
  224. package/lib/cjs/providers/processor/fileProcessor.js +6 -0
  225. package/lib/cjs/providers/storage/azure.d.ts +6 -13
  226. package/lib/cjs/providers/storage/azure.js +5 -0
  227. package/lib/cjs/providers/storage/base64.d.ts +5 -6
  228. package/lib/cjs/providers/storage/base64.js +4 -0
  229. package/lib/cjs/providers/storage/dropbox.d.ts +6 -4
  230. package/lib/cjs/providers/storage/dropbox.js +5 -0
  231. package/lib/cjs/providers/storage/googleDrive.d.ts +7 -5
  232. package/lib/cjs/providers/storage/googleDrive.js +6 -0
  233. package/lib/cjs/providers/storage/indexeddb.d.ts +5 -7
  234. package/lib/cjs/providers/storage/indexeddb.js +4 -0
  235. package/lib/cjs/providers/storage/s3.d.ts +6 -20
  236. package/lib/cjs/providers/storage/s3.js +5 -0
  237. package/lib/cjs/providers/storage/url.d.ts +6 -7
  238. package/lib/cjs/providers/storage/url.js +10 -0
  239. package/lib/cjs/providers/storage/util.d.ts +24 -1
  240. package/lib/cjs/providers/storage/util.js +18 -0
  241. package/lib/cjs/templates/Templates.d.ts +1 -0
  242. package/lib/cjs/translations/en.d.ts +2 -0
  243. package/lib/cjs/translations/en.js +3 -1
  244. package/lib/cjs/utils/ChoicesWrapper.d.ts +1 -1
  245. package/lib/cjs/utils/ChoicesWrapper.js +13 -2
  246. package/lib/cjs/utils/Evaluator.d.ts +6 -3
  247. package/lib/cjs/utils/Evaluator.js +11 -20
  248. package/lib/cjs/utils/builder.d.ts +9 -7
  249. package/lib/cjs/utils/builder.js +10 -5
  250. package/lib/cjs/utils/calendarUtils.d.ts +7 -13
  251. package/lib/cjs/utils/calendarUtils.js +10 -17
  252. package/lib/cjs/utils/formUtils.d.ts +43 -171
  253. package/lib/cjs/utils/formUtils.js +38 -569
  254. package/lib/cjs/utils/utils.d.ts +367 -221
  255. package/lib/cjs/utils/utils.js +335 -228
  256. package/lib/cjs/widgets/CalendarWidget.d.ts +9 -10
  257. package/lib/cjs/widgets/CalendarWidget.js +9 -11
  258. package/lib/mjs/CDN.d.ts +1 -0
  259. package/lib/mjs/CDN.js +6 -3
  260. package/lib/mjs/Element.d.ts +86 -96
  261. package/lib/mjs/Element.js +68 -78
  262. package/lib/mjs/Embed.d.ts +1 -1
  263. package/lib/mjs/Embed.js +52 -12
  264. package/lib/mjs/Form.d.ts +365 -36
  265. package/lib/mjs/Form.js +140 -57
  266. package/lib/mjs/FormBuilder.d.ts +187 -2
  267. package/lib/mjs/FormBuilder.js +32 -8
  268. package/lib/mjs/InlineEmbed.d.ts +7 -0
  269. package/lib/mjs/InlineEmbed.js +112 -0
  270. package/lib/mjs/PDF.d.ts +11 -13
  271. package/lib/mjs/PDF.js +6 -8
  272. package/lib/mjs/Webform.d.ts +183 -143
  273. package/lib/mjs/Webform.js +322 -310
  274. package/lib/mjs/WebformBuilder.d.ts +16 -14
  275. package/lib/mjs/WebformBuilder.js +11 -10
  276. package/lib/mjs/Wizard.d.ts +31 -21
  277. package/lib/mjs/Wizard.js +42 -19
  278. package/lib/mjs/WizardBuilder.d.ts +1 -1
  279. package/lib/mjs/addons/PasswordStrength/PasswordStrengthAddon.d.ts +8 -5
  280. package/lib/mjs/addons/PasswordStrength/PasswordStrengthAddon.js +6 -3
  281. package/lib/mjs/components/Components.d.ts +4 -4
  282. package/lib/mjs/components/Components.js +3 -3
  283. package/lib/mjs/components/_classes/component/Component.d.ts +507 -276
  284. package/lib/mjs/components/_classes/component/Component.form.d.ts +6 -3
  285. package/lib/mjs/components/_classes/component/Component.form.js +5 -0
  286. package/lib/mjs/components/_classes/component/Component.js +438 -196
  287. package/lib/mjs/components/_classes/component/editForm/Component.edit.display.js +0 -8
  288. package/lib/mjs/components/_classes/component/editForm/Component.edit.validation.js +1 -1
  289. package/lib/mjs/components/_classes/component/editForm/utils.js +1 -1
  290. package/lib/mjs/components/_classes/component/fixtures/comp6.d.ts +77 -0
  291. package/lib/mjs/components/_classes/component/fixtures/comp6.js +57 -0
  292. package/lib/mjs/components/_classes/component/fixtures/index.d.ts +2 -1
  293. package/lib/mjs/components/_classes/component/fixtures/index.js +2 -1
  294. package/lib/mjs/components/_classes/field/Field.d.ts +11 -2
  295. package/lib/mjs/components/_classes/field/Field.js +13 -1
  296. package/lib/mjs/components/_classes/input/Input.d.ts +4 -3
  297. package/lib/mjs/components/_classes/input/Input.js +8 -6
  298. package/lib/mjs/components/_classes/list/ListComponent.d.ts +2 -2
  299. package/lib/mjs/components/_classes/list/ListComponent.form.d.ts +6 -3
  300. package/lib/mjs/components/_classes/list/ListComponent.form.js +5 -0
  301. package/lib/mjs/components/_classes/multivalue/Multivalue.d.ts +43 -12
  302. package/lib/mjs/components/_classes/multivalue/Multivalue.js +37 -3
  303. package/lib/mjs/components/_classes/nested/NestedComponent.d.ts +163 -67
  304. package/lib/mjs/components/_classes/nested/NestedComponent.form.d.ts +6 -3
  305. package/lib/mjs/components/_classes/nested/NestedComponent.form.js +5 -0
  306. package/lib/mjs/components/_classes/nested/NestedComponent.js +175 -54
  307. package/lib/mjs/components/_classes/nestedarray/NestedArrayComponent.d.ts +2 -2
  308. package/lib/mjs/components/_classes/nestedarray/NestedArrayComponent.js +1 -1
  309. package/lib/mjs/components/_classes/nesteddata/NestedDataComponent.d.ts +7 -1
  310. package/lib/mjs/components/_classes/nesteddata/NestedDataComponent.js +2 -3
  311. package/lib/mjs/components/address/Address.d.ts +4 -2
  312. package/lib/mjs/components/address/Address.form.d.ts +6 -3
  313. package/lib/mjs/components/address/Address.form.js +5 -0
  314. package/lib/mjs/components/button/Button.d.ts +3 -12
  315. package/lib/mjs/components/button/Button.form.d.ts +6 -3
  316. package/lib/mjs/components/button/Button.form.js +5 -0
  317. package/lib/mjs/components/button/Button.js +5 -0
  318. package/lib/mjs/components/checkbox/Checkbox.d.ts +4 -27
  319. package/lib/mjs/components/checkbox/Checkbox.form.d.ts +6 -3
  320. package/lib/mjs/components/checkbox/Checkbox.form.js +5 -0
  321. package/lib/mjs/components/columns/Columns.d.ts +3 -2
  322. package/lib/mjs/components/columns/Columns.form.d.ts +6 -3
  323. package/lib/mjs/components/columns/Columns.form.js +5 -0
  324. package/lib/mjs/components/columns/Columns.js +1 -1
  325. package/lib/mjs/components/container/Container.form.d.ts +6 -3
  326. package/lib/mjs/components/container/Container.form.js +5 -0
  327. package/lib/mjs/components/content/Content.d.ts +2 -1
  328. package/lib/mjs/components/content/Content.form.d.ts +6 -3
  329. package/lib/mjs/components/content/Content.form.js +5 -0
  330. package/lib/mjs/components/currency/Currency.form.d.ts +6 -3
  331. package/lib/mjs/components/currency/Currency.form.js +5 -0
  332. package/lib/mjs/components/currency/Currency.js +1 -2
  333. package/lib/mjs/components/datagrid/DataGrid.d.ts +8 -7
  334. package/lib/mjs/components/datagrid/DataGrid.form.d.ts +6 -3
  335. package/lib/mjs/components/datagrid/DataGrid.form.js +5 -0
  336. package/lib/mjs/components/datagrid/DataGrid.js +5 -5
  337. package/lib/mjs/components/datagrid/fixtures/comp-with-checkboxes.d.ts +29 -0
  338. package/lib/mjs/components/datagrid/fixtures/comp-with-checkboxes.js +34 -0
  339. package/lib/mjs/components/datagrid/fixtures/index.d.ts +2 -1
  340. package/lib/mjs/components/datagrid/fixtures/index.js +2 -1
  341. package/lib/mjs/components/datamap/DataMap.d.ts +1 -0
  342. package/lib/mjs/components/datamap/DataMap.form.d.ts +6 -3
  343. package/lib/mjs/components/datamap/DataMap.form.js +5 -0
  344. package/lib/mjs/components/datetime/DateTime.d.ts +0 -14
  345. package/lib/mjs/components/datetime/DateTime.form.d.ts +6 -3
  346. package/lib/mjs/components/datetime/DateTime.form.js +5 -0
  347. package/lib/mjs/components/datetime/editForm/DateTime.edit.date.js +1 -1
  348. package/lib/mjs/components/day/Day.d.ts +23 -49
  349. package/lib/mjs/components/day/Day.form.d.ts +6 -3
  350. package/lib/mjs/components/day/Day.form.js +5 -0
  351. package/lib/mjs/components/day/Day.js +16 -21
  352. package/lib/mjs/components/day/fixtures/comp7.d.ts +109 -0
  353. package/lib/mjs/components/day/fixtures/comp7.js +107 -0
  354. package/lib/mjs/components/day/fixtures/index.d.ts +2 -1
  355. package/lib/mjs/components/day/fixtures/index.js +2 -1
  356. package/lib/mjs/components/editgrid/EditGrid.d.ts +7 -3
  357. package/lib/mjs/components/editgrid/EditGrid.form.d.ts +6 -3
  358. package/lib/mjs/components/editgrid/EditGrid.form.js +5 -0
  359. package/lib/mjs/components/editgrid/EditGrid.js +3 -3
  360. package/lib/mjs/components/editgrid/editForm/EditGrid.edit.display.js +1 -1
  361. package/lib/mjs/components/editgrid/editForm/EditGrid.edit.templates.js +1 -1
  362. package/lib/mjs/components/email/Email.form.d.ts +6 -3
  363. package/lib/mjs/components/email/Email.form.js +5 -0
  364. package/lib/mjs/components/fieldset/Fieldset.form.d.ts +6 -3
  365. package/lib/mjs/components/fieldset/Fieldset.form.js +5 -0
  366. package/lib/mjs/components/file/File.d.ts +9 -22
  367. package/lib/mjs/components/file/File.form.d.ts +6 -3
  368. package/lib/mjs/components/file/File.form.js +5 -0
  369. package/lib/mjs/components/file/File.js +1 -2
  370. package/lib/mjs/components/form/Form.d.ts +34 -24
  371. package/lib/mjs/components/form/Form.form.d.ts +6 -3
  372. package/lib/mjs/components/form/Form.form.js +5 -0
  373. package/lib/mjs/components/form/Form.js +15 -13
  374. package/lib/mjs/components/hidden/Hidden.d.ts +1 -11
  375. package/lib/mjs/components/hidden/Hidden.form.d.ts +6 -3
  376. package/lib/mjs/components/hidden/Hidden.form.js +5 -0
  377. package/lib/mjs/components/hidden/Hidden.js +1 -2
  378. package/lib/mjs/components/html/HTML.d.ts +2 -1
  379. package/lib/mjs/components/html/HTML.form.d.ts +6 -3
  380. package/lib/mjs/components/html/HTML.form.js +5 -0
  381. package/lib/mjs/components/number/Number.d.ts +3 -17
  382. package/lib/mjs/components/number/Number.form.d.ts +6 -3
  383. package/lib/mjs/components/number/Number.form.js +5 -0
  384. package/lib/mjs/components/number/Number.js +1 -2
  385. package/lib/mjs/components/panel/Panel.form.d.ts +6 -3
  386. package/lib/mjs/components/panel/Panel.form.js +5 -0
  387. package/lib/mjs/components/panel/Panel.js +0 -1
  388. package/lib/mjs/components/password/Password.form.d.ts +6 -3
  389. package/lib/mjs/components/password/Password.form.js +5 -0
  390. package/lib/mjs/components/phonenumber/PhoneNumber.form.d.ts +6 -3
  391. package/lib/mjs/components/phonenumber/PhoneNumber.form.js +5 -0
  392. package/lib/mjs/components/radio/Radio.d.ts +3 -26
  393. package/lib/mjs/components/radio/Radio.form.d.ts +6 -3
  394. package/lib/mjs/components/radio/Radio.form.js +5 -0
  395. package/lib/mjs/components/radio/Radio.js +6 -6
  396. package/lib/mjs/components/recaptcha/ReCaptcha.d.ts +1 -1
  397. package/lib/mjs/components/recaptcha/ReCaptcha.form.d.ts +6 -3
  398. package/lib/mjs/components/recaptcha/ReCaptcha.form.js +5 -0
  399. package/lib/mjs/components/select/Select.d.ts +16 -39
  400. package/lib/mjs/components/select/Select.form.d.ts +6 -3
  401. package/lib/mjs/components/select/Select.form.js +5 -0
  402. package/lib/mjs/components/select/Select.js +14 -17
  403. package/lib/mjs/components/selectboxes/SelectBoxes.d.ts +2 -17
  404. package/lib/mjs/components/selectboxes/SelectBoxes.form.d.ts +6 -3
  405. package/lib/mjs/components/selectboxes/SelectBoxes.form.js +5 -0
  406. package/lib/mjs/components/selectboxes/SelectBoxes.js +7 -9
  407. package/lib/mjs/components/signature/Signature.d.ts +0 -14
  408. package/lib/mjs/components/signature/Signature.form.d.ts +6 -3
  409. package/lib/mjs/components/signature/Signature.form.js +5 -0
  410. package/lib/mjs/components/survey/Survey.d.ts +3 -15
  411. package/lib/mjs/components/survey/Survey.form.d.ts +6 -3
  412. package/lib/mjs/components/survey/Survey.form.js +5 -0
  413. package/lib/mjs/components/table/Table.d.ts +2 -1
  414. package/lib/mjs/components/table/Table.form.d.ts +6 -3
  415. package/lib/mjs/components/table/Table.form.js +5 -0
  416. package/lib/mjs/components/tabs/Tabs.d.ts +4 -4
  417. package/lib/mjs/components/tabs/Tabs.form.d.ts +6 -3
  418. package/lib/mjs/components/tabs/Tabs.form.js +5 -0
  419. package/lib/mjs/components/tabs/Tabs.js +1 -2
  420. package/lib/mjs/components/tags/Tags.d.ts +0 -14
  421. package/lib/mjs/components/tags/Tags.form.d.ts +6 -3
  422. package/lib/mjs/components/tags/Tags.form.js +5 -0
  423. package/lib/mjs/components/textarea/TextArea.d.ts +4 -9
  424. package/lib/mjs/components/textarea/TextArea.form.d.ts +6 -3
  425. package/lib/mjs/components/textarea/TextArea.form.js +5 -0
  426. package/lib/mjs/components/textarea/TextArea.js +2 -2
  427. package/lib/mjs/components/textfield/TextField.d.ts +14 -30
  428. package/lib/mjs/components/textfield/TextField.form.d.ts +6 -3
  429. package/lib/mjs/components/textfield/TextField.form.js +5 -0
  430. package/lib/mjs/components/textfield/TextField.js +16 -17
  431. package/lib/mjs/components/time/Time.form.d.ts +6 -3
  432. package/lib/mjs/components/time/Time.form.js +5 -0
  433. package/lib/mjs/components/unknown/Unknown.form.d.ts +5 -34
  434. package/lib/mjs/components/unknown/Unknown.form.js +4 -0
  435. package/lib/mjs/components/url/Url.form.d.ts +6 -3
  436. package/lib/mjs/components/url/Url.form.js +5 -0
  437. package/lib/mjs/components/well/Well.form.d.ts +6 -3
  438. package/lib/mjs/components/well/Well.form.js +5 -0
  439. package/lib/mjs/formio.embed.d.ts +1 -2
  440. package/lib/mjs/formio.embed.js +2 -99
  441. package/lib/mjs/formio.form.d.ts +11 -4
  442. package/lib/mjs/formio.form.js +10 -3
  443. package/lib/mjs/providers/Providers.d.ts +36 -5
  444. package/lib/mjs/providers/Providers.js +29 -0
  445. package/lib/mjs/providers/address/AddressProvider.d.ts +131 -12
  446. package/lib/mjs/providers/address/AddressProvider.js +88 -2
  447. package/lib/mjs/providers/address/AzureAddressProvider.d.ts +48 -1
  448. package/lib/mjs/providers/address/AzureAddressProvider.js +37 -0
  449. package/lib/mjs/providers/address/CustomAddressProvider.d.ts +27 -4
  450. package/lib/mjs/providers/address/CustomAddressProvider.js +34 -0
  451. package/lib/mjs/providers/address/GoogleAddressProvider.d.ts +130 -6
  452. package/lib/mjs/providers/address/GoogleAddressProvider.js +73 -1
  453. package/lib/mjs/providers/address/NominatimAddressProvider.d.ts +32 -7
  454. package/lib/mjs/providers/address/NominatimAddressProvider.js +33 -0
  455. package/lib/mjs/providers/address/index.d.ts +3 -1
  456. package/lib/mjs/providers/processor/fileProcessor.d.ts +7 -1
  457. package/lib/mjs/providers/processor/fileProcessor.js +6 -0
  458. package/lib/mjs/providers/storage/azure.d.ts +6 -13
  459. package/lib/mjs/providers/storage/azure.js +5 -0
  460. package/lib/mjs/providers/storage/base64.d.ts +5 -6
  461. package/lib/mjs/providers/storage/base64.js +4 -0
  462. package/lib/mjs/providers/storage/dropbox.d.ts +6 -4
  463. package/lib/mjs/providers/storage/dropbox.js +5 -0
  464. package/lib/mjs/providers/storage/googleDrive.d.ts +7 -5
  465. package/lib/mjs/providers/storage/googleDrive.js +6 -0
  466. package/lib/mjs/providers/storage/indexeddb.d.ts +5 -7
  467. package/lib/mjs/providers/storage/indexeddb.js +4 -0
  468. package/lib/mjs/providers/storage/s3.d.ts +6 -20
  469. package/lib/mjs/providers/storage/s3.js +5 -0
  470. package/lib/mjs/providers/storage/url.d.ts +6 -7
  471. package/lib/mjs/providers/storage/url.js +10 -0
  472. package/lib/mjs/providers/storage/util.d.ts +24 -1
  473. package/lib/mjs/providers/storage/util.js +18 -0
  474. package/lib/mjs/templates/Templates.d.ts +1 -0
  475. package/lib/mjs/translations/en.d.ts +2 -0
  476. package/lib/mjs/translations/en.js +3 -1
  477. package/lib/mjs/utils/ChoicesWrapper.d.ts +1 -1
  478. package/lib/mjs/utils/ChoicesWrapper.js +13 -2
  479. package/lib/mjs/utils/Evaluator.d.ts +6 -3
  480. package/lib/mjs/utils/Evaluator.js +9 -20
  481. package/lib/mjs/utils/builder.d.ts +9 -7
  482. package/lib/mjs/utils/builder.js +10 -5
  483. package/lib/mjs/utils/calendarUtils.d.ts +7 -13
  484. package/lib/mjs/utils/calendarUtils.js +10 -17
  485. package/lib/mjs/utils/formUtils.d.ts +43 -171
  486. package/lib/mjs/utils/formUtils.js +6 -554
  487. package/lib/mjs/utils/utils.d.ts +367 -221
  488. package/lib/mjs/utils/utils.js +329 -222
  489. package/lib/mjs/widgets/CalendarWidget.d.ts +9 -10
  490. package/lib/mjs/widgets/CalendarWidget.js +9 -11
  491. package/package.json +22 -22
  492. package/sdk.d.ts +1 -0
  493. package/utils.d.ts +1 -0
@@ -2,34 +2,87 @@
2
2
  import { Formio } from '../../Formio';
3
3
  import _ from 'lodash';
4
4
  import { AddressProvider } from './AddressProvider';
5
+ /**
6
+ * @typedef {object} AutocompleteOptions
7
+ * @property {string[]} fields - The fields to include in the autocomplete response.
8
+ * @property {object} componentRestrictions - The component restrictions for the autocomplete response.
9
+ * @property {string[]} componentRestrictions.country - The country codes to restrict the autocomplete response to.
10
+ */
11
+ /**
12
+ * @typedef {object} ProviderOptions
13
+ * @property {string} region - The region to restrict the autocomplete response to.
14
+ * @property {string} key - The API key for Google Maps.
15
+ * @property {AutocompleteOptions} autocompleteOptions - The options for the autocomplete functionality.
16
+ */
17
+ /**
18
+ * @typedef {object} Place
19
+ * @property {object} address_components - The address components of the place.
20
+ * @property {string} formatted_address - The formatted address of the place.
21
+ * @property {object} geometry - The geometry information of the place.
22
+ * @property {string} place_id - The place ID of the place.
23
+ * @property {object} plus_code - The plus code of the place.
24
+ * @property {string[]} types - The types of the place.
25
+ * @property {string} formattedPlace - The formatted place value.
26
+ */
27
+ /**
28
+ * @class GoogleAddressProvider
29
+ * @augments AddressProvider
30
+ */
5
31
  export class GoogleAddressProvider extends AddressProvider {
32
+ /**
33
+ * @returns {string} The name of the provider.
34
+ */
6
35
  static get name() {
7
36
  return 'google';
8
37
  }
38
+ /**
39
+ * @returns {string} The display name of the provider.
40
+ */
9
41
  static get displayName() {
10
42
  return 'Google Maps';
11
43
  }
44
+ /**
45
+
46
+ * @param {ProviderOptions} options - The options for the provider.
47
+ */
12
48
  constructor(options = {}) {
13
49
  super(options);
14
50
  this.setAutocompleteOptions();
15
- let src = 'https://maps.googleapis.com/maps/api/js?v=quarterly&libraries=places&callback=googleMapsCallback';
51
+ let src = 'https://maps.googleapis.com/maps/api/js?v=quarterly&libraries=places&loading=async&callback=googleMapsCallback';
16
52
  if (options.params?.key) {
17
53
  src += `&key=${options.params.key}`;
18
54
  }
19
55
  Formio.requireLibrary(this.getLibraryName(), 'google.maps.places', src);
20
56
  }
57
+ /**
58
+ * get display value property
59
+ * @returns {string} The property to use for display value.
60
+ */
21
61
  get displayValueProperty() {
22
62
  return 'formattedPlace';
23
63
  }
64
+ /**
65
+ * @returns {string} The alternative property to use for display value.
66
+ */
24
67
  get alternativeDisplayValueProperty() {
25
68
  return 'formatted_address';
26
69
  }
70
+ /**
71
+ * @param {AutocompleteOptions} options - The autocomplete options.
72
+ */
27
73
  set autocompleteOptions(options) {
28
74
  this._autocompleteOptions = options;
29
75
  }
76
+ /**
77
+ * @returns {AutocompleteOptions} The autocomplete options.
78
+ */
30
79
  get autocompleteOptions() {
31
80
  return this._autocompleteOptions;
32
81
  }
82
+ /**
83
+ * Sets the autocomplete options based on the provider options.
84
+
85
+ */
33
86
  setAutocompleteOptions() {
34
87
  let options = _.get(this.options, 'params.autocompleteOptions', {});
35
88
  if (!_.isObject(options)) {
@@ -38,13 +91,25 @@ export class GoogleAddressProvider extends AddressProvider {
38
91
  this.addRequiredProviderOptions(options);
39
92
  this.autocompleteOptions = options;
40
93
  }
94
+ /**
95
+
96
+ * Converts the region to autocomplete option if it exists.
97
+ * @param {ProviderOptions} options - The provider options.
98
+ */
41
99
  beforeMergeOptions(options) {
42
100
  // providing support of old Google Provider option
43
101
  this.convertRegionToAutocompleteOption(options);
44
102
  }
103
+ /**
104
+ * @returns {string} The name of the library.
105
+ */
45
106
  getLibraryName() {
46
107
  return 'googleMaps';
47
108
  }
109
+ /**
110
+ * Converts the region to autocomplete option.
111
+ * @param {ProviderOptions} options - The provider options.
112
+ */
48
113
  convertRegionToAutocompleteOption(options) {
49
114
  const providerOptions = options;
50
115
  let region = _.get(providerOptions, 'params.region', '');
@@ -58,9 +123,16 @@ export class GoogleAddressProvider extends AddressProvider {
58
123
  _.set(providerOptions, 'params.autocompleteOptions.componentRestrictions.country', [region]);
59
124
  }
60
125
  }
126
+ /**
127
+ * @returns {string[]} The required address properties.
128
+ */
61
129
  getRequiredAddressProperties() {
62
130
  return ['address_components', 'formatted_address', 'geometry', 'place_id', 'plus_code', 'types'];
63
131
  }
132
+ /**
133
+ * Adds the required provider options to the options.
134
+ * @param {AutocompleteOptions} options - The autocomplete options.
135
+ */
64
136
  addRequiredProviderOptions(options) {
65
137
  const addressProperties = this.getRequiredAddressProperties();
66
138
  if (_.isArray(options.fields) && options.fields.length > 0) {
@@ -1,11 +1,36 @@
1
+ /**
2
+ * @typedef {object} NominatimAddressProviderOptionsParams
3
+ * @property {{ addressdetails: string, format: string } } params - The parameters for the Nominatim API request.
4
+ */
5
+ /**
6
+ * Represents an Nominatim address provider.
7
+ * {extends AddressProvider}
8
+ */
1
9
  export class NominatimAddressProvider extends AddressProvider {
2
- get defaultOptions(): {
3
- params: {
4
- addressdetails: string;
5
- format: string;
6
- };
7
- };
10
+ /**
11
+ * Gets the default options for the address provider.
12
+ * @returns {NominatimAddressProviderOptionsParams} The default options.
13
+ */
14
+ get defaultOptions(): NominatimAddressProviderOptionsParams;
15
+ /**
16
+ * Gets the display value property for the address provider.
17
+ * @returns {string} The property to use for display value.
18
+ */
8
19
  get displayValueProperty(): string;
9
- getRequestUrl(options?: {}): string;
20
+ /**
21
+ * Generates the request URL for the address provider with options.
22
+ * @param {NominatimAddressProviderOptionsParams} options - The request options.
23
+ * @returns {string} The formatted Url.
24
+ */
25
+ getRequestUrl(options?: NominatimAddressProviderOptionsParams): string;
10
26
  }
27
+ export type NominatimAddressProviderOptionsParams = {
28
+ /**
29
+ * - The parameters for the Nominatim API request.
30
+ */
31
+ params: {
32
+ addressdetails: string;
33
+ format: string;
34
+ };
35
+ };
11
36
  import { AddressProvider } from './AddressProvider';
@@ -1,11 +1,31 @@
1
1
  import { AddressProvider } from './AddressProvider';
2
+ /**
3
+ * @typedef {object} NominatimAddressProviderOptionsParams
4
+ * @property {{ addressdetails: string, format: string } } params - The parameters for the Nominatim API request.
5
+ */
6
+ /**
7
+ * Represents an Nominatim address provider.
8
+ * {extends AddressProvider}
9
+ */
2
10
  export class NominatimAddressProvider extends AddressProvider {
11
+ /**
12
+ * Gets the name of the address provider.
13
+ * @type {string}
14
+ */
3
15
  static get name() {
4
16
  return 'nominatim';
5
17
  }
18
+ /**
19
+ * Gets the display name of the address provider.
20
+ * @type {string}
21
+ */
6
22
  static get displayName() {
7
23
  return 'OpenStreetMap Nominatim';
8
24
  }
25
+ /**
26
+ * Gets the default options for the address provider.
27
+ * @returns {NominatimAddressProviderOptionsParams} The default options.
28
+ */
9
29
  get defaultOptions() {
10
30
  return {
11
31
  params: {
@@ -14,12 +34,25 @@ export class NominatimAddressProvider extends AddressProvider {
14
34
  },
15
35
  };
16
36
  }
37
+ /**
38
+ * Gets the response property for the address provider.
39
+ * @type {string}
40
+ */
17
41
  get queryProperty() {
18
42
  return 'q';
19
43
  }
44
+ /**
45
+ * Gets the display value property for the address provider.
46
+ * @returns {string} The property to use for display value.
47
+ */
20
48
  get displayValueProperty() {
21
49
  return 'display_name';
22
50
  }
51
+ /**
52
+ * Generates the request URL for the address provider with options.
53
+ * @param {NominatimAddressProviderOptionsParams} options - The request options.
54
+ * @returns {string} The formatted Url.
55
+ */
23
56
  getRequestUrl(options = {}) {
24
57
  const { params } = options;
25
58
  return `https://nominatim.openstreetmap.org/search?${this.serialize(params)}`;
@@ -1,6 +1,8 @@
1
1
  declare const _default: {
2
- [x: string]: typeof CustomAddressProvider | typeof GoogleAddressProvider;
2
+ [x: string]: typeof AzureAddressProvider | typeof CustomAddressProvider | typeof GoogleAddressProvider | typeof NominatimAddressProvider;
3
3
  };
4
4
  export default _default;
5
+ import { AzureAddressProvider } from './AzureAddressProvider';
5
6
  import { CustomAddressProvider } from './CustomAddressProvider';
6
7
  import { GoogleAddressProvider } from './GoogleAddressProvider';
8
+ import { NominatimAddressProvider } from './NominatimAddressProvider';
@@ -1,2 +1,8 @@
1
1
  export default fileProcessor;
2
- declare function fileProcessor(formio: any, config: any): (file: any, options: any) => Promise<any>;
2
+ /**
3
+ * Creates a file processor function.
4
+ * @param {Formio} formio - The Formio instance.
5
+ * @param {object} config - The configuration object.
6
+ * @returns {function(File, object): Promise<FormData>} A function that takes a file and options, and returns a Promise that resolves with the processed file.
7
+ */
8
+ declare function fileProcessor(formio: Formio, config: object): (arg0: File, arg1: object) => Promise<FormData>;
@@ -1,3 +1,9 @@
1
+ /**
2
+ * Creates a file processor function.
3
+ * @param {Formio} formio - The Formio instance.
4
+ * @param {object} config - The configuration object.
5
+ * @returns {function(File, object): Promise<FormData>} A function that takes a file and options, and returns a Promise that resolves with the processed file.
6
+ */
1
7
  const fileProcessor = (formio, config) => (file, options) => new Promise((resolve, reject) => {
2
8
  const xhr = new XMLHttpRequest();
3
9
  // Fire on network error.
@@ -1,17 +1,10 @@
1
1
  export default azure;
2
- declare function azure(formio: any): {
3
- uploadFile(file: any, fileName: any, dir: any, progressCallback: any, url: any, options: any, fileKey: any, groupPermissions: any, groupId: any, abortCallback: any): Promise<{
4
- storage: string;
5
- name: any;
6
- size: any;
7
- type: any;
8
- groupPermissions: any;
9
- groupId: any;
10
- key: any;
11
- }>;
12
- downloadFile(file: any): any;
13
- deleteFile: (fileInfo: any) => any;
14
- };
2
+ /**
3
+ * Azure File Services provider for file storage.
4
+ * @param {object} formio formio instance
5
+ * @returns {import('./typedefs').FileProvider} The FileProvider interface defined in index.js.
6
+ */
7
+ declare function azure(formio: object): any;
15
8
  declare namespace azure {
16
9
  let title: string;
17
10
  }
@@ -1,4 +1,9 @@
1
1
  import XHR from './xhr';
2
+ /**
3
+ * Azure File Services provider for file storage.
4
+ * @param {object} formio formio instance
5
+ * @returns {import('./typedefs').FileProvider} The FileProvider interface defined in index.js.
6
+ */
2
7
  function azure(formio) {
3
8
  return {
4
9
  uploadFile(file, fileName, dir, progressCallback, url, options, fileKey, groupPermissions, groupId, abortCallback) {
@@ -1,10 +1,9 @@
1
1
  export default base64;
2
- declare function base64(): {
3
- title: string;
4
- name: string;
5
- uploadFile(file: any, fileName: any): Promise<any>;
6
- downloadFile(file: any): Promise<any>;
7
- };
2
+ /**
3
+ * base64 File Services provider for file storage.
4
+ * @returns {import('./typedefs').FileProvider} The FileProvider interface defined in index.js.
5
+ */
6
+ declare function base64(): any;
8
7
  declare namespace base64 {
9
8
  let title: string;
10
9
  }
@@ -1,3 +1,7 @@
1
+ /**
2
+ * base64 File Services provider for file storage.
3
+ * @returns {import('./typedefs').FileProvider} The FileProvider interface defined in index.js.
4
+ */
1
5
  function base64() {
2
6
  return {
3
7
  title: 'Base64',
@@ -1,8 +1,10 @@
1
1
  export default dropbox;
2
- declare function dropbox(formio: any): {
3
- uploadFile(file: any, fileName: any, dir: any, progressCallback: any, url: any, options: any, fileKey: any, groupPermissions: any, groupId: any, abortCallback: any): Promise<any>;
4
- downloadFile(file: any): Promise<any>;
5
- };
2
+ /**
3
+ * Dropbox provider for file storage.
4
+ * @param {object} formio formio instance
5
+ * @returns {import('./typedefs').FileProvider} The FileProvider interface defined in index.js.
6
+ */
7
+ declare function dropbox(formio: object): any;
6
8
  declare namespace dropbox {
7
9
  let title: string;
8
10
  }
@@ -1,4 +1,9 @@
1
1
  import { setXhrHeaders } from './xhr';
2
+ /**
3
+ * Dropbox provider for file storage.
4
+ * @param {object} formio formio instance
5
+ * @returns {import('./typedefs').FileProvider} The FileProvider interface defined in index.js.
6
+ */
2
7
  function dropbox(formio) {
3
8
  return {
4
9
  uploadFile(file, fileName, dir, progressCallback, url, options, fileKey, groupPermissions, groupId, abortCallback) {
@@ -1,9 +1,11 @@
1
1
  export default googledrive;
2
- declare function googledrive(formio: any): {
3
- uploadFile(file: any, fileName: any, dir: any, progressCallback: any, url: any, options: any, fileKey: any, groupPermissions: any, groupId: any, abortCallback: any): Promise<any>;
4
- downloadFile(file: any): Promise<any>;
5
- deleteFile: (fileInfo: any) => any;
6
- };
2
+ /**
3
+ *
4
+ * Google Drive provider for file storage.
5
+ * @param {object} formio - formio instance
6
+ * @returns {import('./typedefs').FileProvider} The FileProvider interface defined in index.js.
7
+ */
8
+ declare function googledrive(formio: object): any;
7
9
  declare namespace googledrive {
8
10
  let title: string;
9
11
  }
@@ -1,4 +1,10 @@
1
1
  import { setXhrHeaders } from './xhr';
2
+ /**
3
+ *
4
+ * Google Drive provider for file storage.
5
+ * @param {object} formio - formio instance
6
+ * @returns {import('./typedefs').FileProvider} The FileProvider interface defined in index.js.
7
+ */
2
8
  function googledrive(formio) {
3
9
  return {
4
10
  uploadFile(file, fileName, dir, progressCallback, url, options, fileKey, groupPermissions, groupId, abortCallback) {
@@ -1,11 +1,9 @@
1
1
  export default indexeddb;
2
- declare function indexeddb(): {
3
- title: string;
4
- name: string;
5
- uploadFile(file: any, fileName: any, dir: any, progressCallback: any, url: any, options: any): Promise<any> | undefined;
6
- downloadFile(file: any, options: any): Promise<any>;
7
- deleteFile(file: any, options: any): Promise<any>;
8
- };
2
+ /**
3
+ * indexedDb provider for file storage.
4
+ * @returns {import('./typedefs').FileProvider} The FileProvider interface defined in index.js.
5
+ */
6
+ declare function indexeddb(): any;
9
7
  declare namespace indexeddb {
10
8
  let title: string;
11
9
  }
@@ -1,4 +1,8 @@
1
1
  import { v4 as uuidv4 } from 'uuid';
2
+ /**
3
+ * indexedDb provider for file storage.
4
+ * @returns {import('./typedefs').FileProvider} The FileProvider interface defined in index.js.
5
+ */
2
6
  function indexeddb() {
3
7
  return {
4
8
  title: 'indexedDB',
@@ -1,24 +1,10 @@
1
1
  export default s3;
2
- declare function s3(formio: any): {
3
- uploadFile(file: any, fileName: any, dir: any, progressCallback: any, url: any, options: any, fileKey: any, groupPermissions: any, groupId: any, abortCallback: any, multipartOptions: any): Promise<{
4
- storage: string;
5
- name: any;
6
- bucket: any;
7
- key: any;
8
- url: any;
9
- acl: any;
10
- size: any;
11
- type: any;
12
- }>;
13
- completeMultipartUpload(serverResponse: any, parts: any, multipart: any): Promise<void>;
14
- abortMultipartUpload(serverResponse: any): void;
15
- uploadParts(file: any, urls: any, headers: any, partSize: any, multipart: any, abortSignal: any): Promise<{
16
- ETag: string;
17
- PartNumber: number;
18
- }[]>;
19
- downloadFile(file: any): any;
20
- deleteFile(fileInfo: any): any;
21
- };
2
+ /**
3
+ * S3 File Services provider for file storage.
4
+ * @param {object} formio formio instance
5
+ * @returns {import('./typedefs').FileProvider} The FileProvider interface defined in index.js.
6
+ */
7
+ declare function s3(formio: object): any;
22
8
  declare namespace s3 {
23
9
  let title: string;
24
10
  }
@@ -5,6 +5,11 @@ const loadAbortControllerPolyfill = async () => {
5
5
  await import('abortcontroller-polyfill/dist/polyfill-patch-fetch');
6
6
  }
7
7
  };
8
+ /**
9
+ * S3 File Services provider for file storage.
10
+ * @param {object} formio formio instance
11
+ * @returns {import('./typedefs').FileProvider} The FileProvider interface defined in index.js.
12
+ */
8
13
  function s3(formio) {
9
14
  return {
10
15
  async uploadFile(file, fileName, dir, progressCallback, url, options, fileKey, groupPermissions, groupId, abortCallback, multipartOptions) {
@@ -1,11 +1,10 @@
1
1
  export default url;
2
- declare function url(formio: any): {
3
- title: string;
4
- name: string;
5
- uploadFile(file: any, name: any, dir: any, progressCallback: any, url: any, options: any, fileKey: any, groupPermissions: any, groupId: any, abortCallback: any): any;
6
- deleteFile(fileInfo: any, options: any): Promise<any>;
7
- downloadFile(file: any): Promise<any>;
8
- };
2
+ /**
3
+ *
4
+ * @param {object} formio - formio instance
5
+ * @returns {import('./typedefs').FileProvider} The FileProvider interface defined in index.js.
6
+ */
7
+ declare function url(formio: object): any;
9
8
  declare namespace url {
10
9
  let title: string;
11
10
  }
@@ -1,4 +1,14 @@
1
+ /**
2
+ *
3
+ * @param {object} formio - formio instance
4
+ * @returns {import('./typedefs').FileProvider} The FileProvider interface defined in index.js.
5
+ */
1
6
  function url(formio) {
7
+ /**
8
+ *
9
+ * @param {object} options - options to set on the xhr
10
+ * @param {object} xhr - the xhr object
11
+ */
2
12
  function setOptions(options, xhr) {
3
13
  const parsedOptions = typeof options === 'string' ? JSON.parse(options) : options;
4
14
  for (const prop in parsedOptions) {
@@ -1 +1,24 @@
1
- export function withRetries(fn: any, args: any, retries?: number, err?: null): Promise<any>;
1
+ /**
2
+ * @typedef {any[]} Args
3
+ */
4
+ /**
5
+ * Function to be retried
6
+ * @callback RetryFunction
7
+ * @param {...Args} args
8
+ * @returns {Promise<any>}
9
+ */
10
+ /**
11
+ * Executes a function with retries in case of failure.
12
+ * @param {RetryFunction} fn - The function to be executed.
13
+ * @param {Args} args - The arguments to be passed to the function.
14
+ * @param {number} [retries] - The number of retries in case of failure.
15
+ * @param {string} [err] - The error message to be thrown after all retries have failed.
16
+ * @returns {Promise<any>} The result of the function execution.
17
+ * @throws {Error} When all retries have failed.
18
+ */
19
+ export function withRetries(fn: RetryFunction, args: Args, retries?: number | undefined, err?: string | undefined): Promise<any>;
20
+ export type Args = any[];
21
+ /**
22
+ * Function to be retried
23
+ */
24
+ export type RetryFunction = (...args: Args[]) => Promise<any>;
@@ -1,3 +1,21 @@
1
+ /**
2
+ * @typedef {any[]} Args
3
+ */
4
+ /**
5
+ * Function to be retried
6
+ * @callback RetryFunction
7
+ * @param {...Args} args
8
+ * @returns {Promise<any>}
9
+ */
10
+ /**
11
+ * Executes a function with retries in case of failure.
12
+ * @param {RetryFunction} fn - The function to be executed.
13
+ * @param {Args} args - The arguments to be passed to the function.
14
+ * @param {number} [retries] - The number of retries in case of failure.
15
+ * @param {string} [err] - The error message to be thrown after all retries have failed.
16
+ * @returns {Promise<any>} The result of the function execution.
17
+ * @throws {Error} When all retries have failed.
18
+ */
1
19
  export async function withRetries(fn, args, retries = 3, err = null) {
2
20
  if (!retries) {
3
21
  throw new Error(err);
@@ -1 +1,2 @@
1
1
  export default Template;
2
+ import { Template } from '@formio/core/experimental';
@@ -72,5 +72,7 @@ declare namespace _default {
72
72
  let reCaptchaTokenValidationError: string;
73
73
  let reCaptchaTokenNotSpecifiedError: string;
74
74
  let apiKey: string;
75
+ let typeRemaining: string;
76
+ let typeCount: string;
75
77
  }
76
78
  export default _default;
@@ -71,5 +71,7 @@ export default {
71
71
  submitButtonAriaLabel: 'Submit Form button. Click to submit the form',
72
72
  reCaptchaTokenValidationError: 'ReCAPTCHA: Token validation error',
73
73
  reCaptchaTokenNotSpecifiedError: 'ReCAPTCHA: Token is not specified in submission',
74
- apiKey: 'API Key is not unique: {{key}}'
74
+ apiKey: 'API Key is not unique: {{key}}',
75
+ typeRemaining: '{{ remaining }} {{ type }} remaining.',
76
+ typeCount: '{{ count }} {{ type }}'
75
77
  };
@@ -24,7 +24,7 @@ declare class ChoicesWrapper extends Choices {
24
24
  _onEnterKey(args: any): void;
25
25
  _onDirectionKey(...args: any[]): void;
26
26
  timeout: NodeJS.Timeout | undefined;
27
- _selectHighlightedChoice(activeItems: any): void;
27
+ _selectHighlightedChoice(): void;
28
28
  _onKeyDown(event: any): void;
29
29
  onSelectValue({ event, activeItems, hasActiveDropdown }: {
30
30
  event: any;
@@ -99,10 +99,21 @@ class ChoicesWrapper extends Choices {
99
99
  this._selectHighlightedChoice(activeItems);
100
100
  }
101
101
  }
102
- _selectHighlightedChoice(activeItems) {
102
+ _selectHighlightedChoice() {
103
103
  const highlightedChoice = this.dropdown.getChild(`.${this.config.classNames.highlightedState}`);
104
104
  if (highlightedChoice) {
105
- this._handleChoiceAction(activeItems, highlightedChoice);
105
+ const id = highlightedChoice.dataset.id;
106
+ const choice = id && this._store.getChoiceById(id);
107
+ this._addItem({
108
+ value: choice.value,
109
+ label: choice.label,
110
+ choiceId: choice.id,
111
+ groupId: choice.groupId,
112
+ customProperties: choice.customProperties,
113
+ placeholder: choice.placeholder,
114
+ keyCode: choice.keyCode
115
+ });
116
+ this._triggerChange(choice.value);
106
117
  }
107
118
  event.preventDefault();
108
119
  }
@@ -1,4 +1,7 @@
1
- export default Evaluator;
2
- declare namespace Evaluator {
3
- function registerEvaluator(evaluator: any): void;
1
+ export class Evaluator {
2
+ static cache: {};
3
+ static protectedEval: boolean;
4
+ static noeval: boolean;
5
+ static template(template: any, hash: any): any;
6
+ static interpolate(rawTemplate: any, data: any, _options: any): any;
4
7
  }