@formio/js 5.0.0-dev.5613.3476921 → 5.0.0-dev.5614.b5c93f3

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