@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
@@ -1,17 +1,136 @@
1
+ /**
2
+ * @typedef {object} RequestOptions
3
+ * @property {object} params - The request parameters.
4
+ * @property {boolean} noToken - Whether to include a token in the request.
5
+ */
6
+ /**
7
+ * @typedef {object} Address
8
+ * @property {string} street - The street address.
9
+ * @property {string} city - The city.
10
+ * @property {string} state - The state.
11
+ * @property {string} country - The country.
12
+ * @property {string} postalCode - The postal code.
13
+ */
14
+ /**
15
+ * @class AddressProvider
16
+ * @classdesc Represents an address provider.
17
+ */
1
18
  export class AddressProvider {
19
+ /**
20
+ * @static
21
+ * @type {string}
22
+ * @description The name of the address provider.
23
+ */
2
24
  static get name(): string;
25
+ /**
26
+ * @static
27
+ * @type {string}
28
+ * @description The display name of the address provider.
29
+ */
3
30
  static get displayName(): string;
4
- constructor(options?: {});
31
+ /**
32
+ * @class
33
+ * @param {object} options - The options for the address provider.
34
+ */
35
+ constructor(options?: object);
5
36
  options: any;
6
- beforeMergeOptions(): void;
7
- get defaultOptions(): {};
8
- get queryProperty(): string;
9
- get responseProperty(): null;
10
- get displayValueProperty(): null;
11
- serialize(params: any): any;
12
- getRequestOptions(options?: {}): any;
13
- getRequestUrl(options?: {}): void;
14
- makeRequest(options?: {}): any;
15
- search(query: any, options?: {}): any;
16
- getDisplayValue(address: any): any;
37
+ /**
38
+ * @private
39
+ * @description Executes before merging the options.
40
+ */
41
+ private beforeMergeOptions;
42
+ /**
43
+ * @private
44
+ * @type {object}
45
+ * @description The default options for the address provider.
46
+ */
47
+ private get defaultOptions();
48
+ /**
49
+ * @private
50
+ * @type {string}
51
+ * @description The query property name.
52
+ */
53
+ private get queryProperty();
54
+ /**
55
+ * @private
56
+ * @type {string|null}
57
+ * @description The response property name.
58
+ */
59
+ private get responseProperty();
60
+ /**
61
+ * @private
62
+ * @type {string|null}
63
+ * @description The display value property name.
64
+ */
65
+ private get displayValueProperty();
66
+ /**
67
+ * @private
68
+ * @param {object} params - The parameters to serialize.
69
+ * @returns {string} The serialized parameters.
70
+ */
71
+ private serialize;
72
+ /**
73
+ * @private
74
+ * @param {object} options - The request options.
75
+ * @returns {RequestOptions} The merged request options.
76
+ */
77
+ private getRequestOptions;
78
+ /**
79
+ * @private
80
+ * @param {object} _options - The request options.
81
+ * @throws {Error} Throws an error if the method is not implemented.
82
+ */
83
+ private getRequestUrl;
84
+ /**
85
+ * @private
86
+ * @param {object} options - The request options.
87
+ * @returns {Promise} A promise that resolves with the request result.
88
+ */
89
+ private makeRequest;
90
+ /**
91
+ * @public
92
+ * @description The search parameters for the request.
93
+ * @param {string} query - The search query.
94
+ * @param {object} options - The search options.
95
+ * @returns {Promise<Address[]>} A promise that resolves with the search results.
96
+ */
97
+ public search(query: string, options?: object): Promise<Address[]>;
98
+ /**
99
+ * @public
100
+ * @param {Address} address - The address object.
101
+ * @returns {string} The display value of the address.
102
+ */
103
+ public getDisplayValue(address: Address): string;
17
104
  }
105
+ export type RequestOptions = {
106
+ /**
107
+ * - The request parameters.
108
+ */
109
+ params: object;
110
+ /**
111
+ * - Whether to include a token in the request.
112
+ */
113
+ noToken: boolean;
114
+ };
115
+ export type Address = {
116
+ /**
117
+ * - The street address.
118
+ */
119
+ street: string;
120
+ /**
121
+ * - The city.
122
+ */
123
+ city: string;
124
+ /**
125
+ * - The state.
126
+ */
127
+ state: string;
128
+ /**
129
+ * - The country.
130
+ */
131
+ country: string;
132
+ /**
133
+ * - The postal code.
134
+ */
135
+ postalCode: string;
136
+ };
@@ -1,46 +1,127 @@
1
1
  import _ from 'lodash';
2
2
  import { Formio } from '../../Formio';
3
+ /**
4
+ * @typedef {object} RequestOptions
5
+ * @property {object} params - The request parameters.
6
+ * @property {boolean} noToken - Whether to include a token in the request.
7
+ */
8
+ /**
9
+ * @typedef {object} Address
10
+ * @property {string} street - The street address.
11
+ * @property {string} city - The city.
12
+ * @property {string} state - The state.
13
+ * @property {string} country - The country.
14
+ * @property {string} postalCode - The postal code.
15
+ */
16
+ /**
17
+ * @class AddressProvider
18
+ * @classdesc Represents an address provider.
19
+ */
3
20
  export class AddressProvider {
21
+ /**
22
+ * @static
23
+ * @type {string}
24
+ * @description The name of the address provider.
25
+ */
4
26
  static get name() {
5
27
  return 'address';
6
28
  }
29
+ /**
30
+ * @static
31
+ * @type {string}
32
+ * @description The display name of the address provider.
33
+ */
7
34
  static get displayName() {
8
35
  return 'Address';
9
36
  }
37
+ /**
38
+ * @class
39
+ * @param {object} options - The options for the address provider.
40
+ */
10
41
  constructor(options = {}) {
11
42
  this.beforeMergeOptions(options);
12
43
  this.options = _.merge({}, this.defaultOptions, options);
13
44
  }
45
+ /**
46
+ * @private
47
+ * @description Executes before merging the options.
48
+ */
14
49
  beforeMergeOptions() {
15
50
  return;
16
51
  }
52
+ /**
53
+ * @private
54
+ * @type {object}
55
+ * @description The default options for the address provider.
56
+ */
17
57
  get defaultOptions() {
18
58
  return {};
19
59
  }
60
+ /**
61
+ * @private
62
+ * @type {string}
63
+ * @description The query property name.
64
+ */
20
65
  get queryProperty() {
21
66
  return 'query';
22
67
  }
68
+ /**
69
+ * @private
70
+ * @type {string|null}
71
+ * @description The response property name.
72
+ */
23
73
  get responseProperty() {
24
74
  return null;
25
75
  }
76
+ /**
77
+ * @private
78
+ * @type {string|null}
79
+ * @description The display value property name.
80
+ */
26
81
  get displayValueProperty() {
27
82
  return null;
28
83
  }
84
+ /**
85
+ * @private
86
+ * @param {object} params - The parameters to serialize.
87
+ * @returns {string} The serialized parameters.
88
+ */
29
89
  serialize(params) {
30
90
  return _.toPairs(params).map(([key, value]) => `${encodeURIComponent(key)}=${encodeURIComponent(value)}`).join('&');
31
91
  }
92
+ /**
93
+ * @private
94
+ * @param {object} options - The request options.
95
+ * @returns {RequestOptions} The merged request options.
96
+ */
32
97
  getRequestOptions(options = {}) {
33
98
  return _.merge({}, this.options, options);
34
99
  }
35
- // eslint-disable-next-line no-unused-vars
36
- getRequestUrl(options = {}) {
100
+ /**
101
+ * @private
102
+ * @param {object} _options - The request options.
103
+ * @throws {Error} Throws an error if the method is not implemented.
104
+ */
105
+ getRequestUrl(_options = {}) {
37
106
  throw new Error('Method AddressProvider#getRequestUrl(options) is abstract.');
38
107
  }
108
+ /**
109
+ * @private
110
+ * @param {object} options - The request options.
111
+ * @returns {Promise} A promise that resolves with the request result.
112
+ */
39
113
  makeRequest(options = {}) {
40
114
  return Formio.makeStaticRequest(this.getRequestUrl(options), 'GET', null, {
41
115
  noToken: true,
42
116
  });
43
117
  }
118
+ /**
119
+ * @public
120
+ * @description The search parameters for the request.
121
+ * @param {string} query - The search query.
122
+ * @param {object} options - The search options.
123
+ * @returns {Promise<Address[]>} A promise that resolves with the search results.
124
+ */
44
125
  search(query, options = {}) {
45
126
  const requestOptions = this.getRequestOptions(options);
46
127
  const params = requestOptions.params = requestOptions.params || {};
@@ -48,6 +129,11 @@ export class AddressProvider {
48
129
  return this.makeRequest(requestOptions)
49
130
  .then((result) => this.responseProperty ? _.get(result, this.responseProperty, []) : result);
50
131
  }
132
+ /**
133
+ * @public
134
+ * @param {Address} address - The address object.
135
+ * @returns {string} The display value of the address.
136
+ */
51
137
  getDisplayValue(address) {
52
138
  return this.displayValueProperty ? _.get(address, this.displayValueProperty, '') : String(address);
53
139
  }
@@ -1,12 +1,59 @@
1
+ /**
2
+ * @typedef {object} AzureAddressProviderOptionsParams
3
+ * @property {string} 'api-version' - The version of the Azure Maps API.
4
+ * @property {string} typeahead - Whether to enable typeahead in the search.
5
+ * @typedef {object} AzureAddressProviderOptions
6
+ * @property {AzureAddressProviderOptionsParams} params - The parameters for the Azure Maps API request.
7
+ */
8
+ /**
9
+ * @class
10
+ * @augments AddressProvider
11
+ * @classdesc Represents an Azure Maps address provider.
12
+ */
1
13
  export class AzureAddressProvider extends AddressProvider {
14
+ /**
15
+ * Gets the default options for the address provider.
16
+ * @returns {{ params: { 'api-version': string, typeahead: string } }} The default options.
17
+ */
2
18
  get defaultOptions(): {
3
19
  params: {
4
20
  'api-version': string;
5
21
  typeahead: string;
6
22
  };
7
23
  };
24
+ /**
25
+ * Gets the response property for the address provider.
26
+ * @type {string}
27
+ */
8
28
  get responseProperty(): string;
29
+ /**
30
+ * Gets the display value property for the address provider.
31
+ * @type {string}
32
+ */
9
33
  get displayValueProperty(): string;
10
- getRequestUrl(options?: {}): string;
34
+ /**
35
+ * Gets the request URL for the address provider.
36
+ * @param {{params: any}} options - The request options.
37
+ * @returns {string} The request URL.
38
+ */
39
+ getRequestUrl(options?: {
40
+ params: any;
41
+ }): string;
11
42
  }
43
+ export type AzureAddressProviderOptionsParams = {
44
+ /**
45
+ * 'api-version' - The version of the Azure Maps API.
46
+ */
47
+ "": string;
48
+ /**
49
+ * - Whether to enable typeahead in the search.
50
+ */
51
+ typeahead: string;
52
+ };
53
+ export type AzureAddressProviderOptions = {
54
+ /**
55
+ * - The parameters for the Azure Maps API request.
56
+ */
57
+ params: AzureAddressProviderOptionsParams;
58
+ };
12
59
  import { AddressProvider } from './AddressProvider';
@@ -1,11 +1,35 @@
1
1
  import { AddressProvider } from './AddressProvider';
2
+ /**
3
+ * @typedef {object} AzureAddressProviderOptionsParams
4
+ * @property {string} 'api-version' - The version of the Azure Maps API.
5
+ * @property {string} typeahead - Whether to enable typeahead in the search.
6
+ * @typedef {object} AzureAddressProviderOptions
7
+ * @property {AzureAddressProviderOptionsParams} params - The parameters for the Azure Maps API request.
8
+ */
9
+ /**
10
+ * @class
11
+ * @augments AddressProvider
12
+ * @classdesc Represents an Azure Maps address provider.
13
+ */
2
14
  export class AzureAddressProvider extends AddressProvider {
15
+ /**
16
+ * Gets the name of the address provider.
17
+ * @type {string}
18
+ */
3
19
  static get name() {
4
20
  return 'azure';
5
21
  }
22
+ /**
23
+ * Gets the display name of the address provider.
24
+ * @type {string}
25
+ */
6
26
  static get displayName() {
7
27
  return 'Azure Maps';
8
28
  }
29
+ /**
30
+ * Gets the default options for the address provider.
31
+ * @returns {{ params: { 'api-version': string, typeahead: string } }} The default options.
32
+ */
9
33
  get defaultOptions() {
10
34
  return {
11
35
  params: {
@@ -14,12 +38,25 @@ export class AzureAddressProvider extends AddressProvider {
14
38
  },
15
39
  };
16
40
  }
41
+ /**
42
+ * Gets the response property for the address provider.
43
+ * @type {string}
44
+ */
17
45
  get responseProperty() {
18
46
  return 'results';
19
47
  }
48
+ /**
49
+ * Gets the display value property for the address provider.
50
+ * @type {string}
51
+ */
20
52
  get displayValueProperty() {
21
53
  return 'address.freeformAddress';
22
54
  }
55
+ /**
56
+ * Gets the request URL for the address provider.
57
+ * @param {{params: any}} options - The request options.
58
+ * @returns {string} The request URL.
59
+ */
23
60
  getRequestUrl(options = {}) {
24
61
  const { params } = options;
25
62
  return `https://atlas.microsoft.com/search/address/json?${this.serialize(params)}`;
@@ -1,7 +1,30 @@
1
+ /**
2
+ * CustomAddressProvider class extends the AddressProvider class and provides custom functionality for address handling.
3
+ * @augments AddressProvider
4
+ */
1
5
  export class CustomAddressProvider extends AddressProvider {
2
- get queryProperty(): any;
3
- get responseProperty(): any;
4
- get displayValueProperty(): any;
5
- getRequestUrl(options?: {}): string;
6
+ /**
7
+ * Returns the response property of the custom address provider.
8
+ * If not provided, falls back to the response property of the parent class.
9
+ * @type {string}
10
+ */
11
+ get responseProperty(): string;
12
+ /**
13
+ * Returns the display value property of the custom address provider.
14
+ * If not provided, falls back to the display value property of the parent class.
15
+ * @type {string}
16
+ */
17
+ get displayValueProperty(): string;
18
+ /**
19
+ * Returns the request URL for the custom address provider.
20
+ * @param {object} options - The options for the request.
21
+ * @param {object} options.params - The parameters for the request.
22
+ * @param {string} options.url - The URL for the request.
23
+ * @returns {string} The request URL.
24
+ */
25
+ getRequestUrl(options?: {
26
+ params: object;
27
+ url: string;
28
+ }): string;
6
29
  }
7
30
  import { AddressProvider } from './AddressProvider';
@@ -1,20 +1,54 @@
1
1
  import { AddressProvider } from './AddressProvider';
2
+ /**
3
+ * CustomAddressProvider class extends the AddressProvider class and provides custom functionality for address handling.
4
+ * @augments AddressProvider
5
+ */
2
6
  export class CustomAddressProvider extends AddressProvider {
7
+ /**
8
+ * Returns the name of the custom address provider.
9
+ * @type {string}
10
+ */
3
11
  static get name() {
4
12
  return 'custom';
5
13
  }
14
+ /**
15
+ * Returns the display name of the custom address provider.
16
+ * @type {string}
17
+ */
6
18
  static get displayName() {
7
19
  return 'Custom';
8
20
  }
21
+ /**
22
+ * Returns the query property of the custom address provider.
23
+ * If not provided, falls back to the query property of the parent class.
24
+ * @type {string}
25
+ */
9
26
  get queryProperty() {
10
27
  return this.options.queryProperty || super.queryProperty;
11
28
  }
29
+ /**
30
+ * Returns the response property of the custom address provider.
31
+ * If not provided, falls back to the response property of the parent class.
32
+ * @type {string}
33
+ */
12
34
  get responseProperty() {
13
35
  return this.options.responseProperty || super.responseProperty;
14
36
  }
37
+ /**
38
+ * Returns the display value property of the custom address provider.
39
+ * If not provided, falls back to the display value property of the parent class.
40
+ * @type {string}
41
+ */
15
42
  get displayValueProperty() {
16
43
  return this.options.displayValueProperty || super.displayValueProperty;
17
44
  }
45
+ /**
46
+ * Returns the request URL for the custom address provider.
47
+ * @param {object} options - The options for the request.
48
+ * @param {object} options.params - The parameters for the request.
49
+ * @param {string} options.url - The URL for the request.
50
+ * @returns {string} The request URL.
51
+ */
18
52
  getRequestUrl(options = {}) {
19
53
  const { params, url } = options;
20
54
  return `${url}?${this.serialize(params)}`;
@@ -1,18 +1,142 @@
1
+ /**
2
+ * @typedef {object} AutocompleteOptions
3
+ * @property {string[]} fields - The fields to include in the autocomplete response.
4
+ * @property {object} componentRestrictions - The component restrictions for the autocomplete response.
5
+ * @property {string[]} componentRestrictions.country - The country codes to restrict the autocomplete response to.
6
+ */
7
+ /**
8
+ * @typedef {object} ProviderOptions
9
+ * @property {string} region - The region to restrict the autocomplete response to.
10
+ * @property {string} key - The API key for Google Maps.
11
+ * @property {AutocompleteOptions} autocompleteOptions - The options for the autocomplete functionality.
12
+ */
13
+ /**
14
+ * @typedef {object} Place
15
+ * @property {object} address_components - The address components of the place.
16
+ * @property {string} formatted_address - The formatted address of the place.
17
+ * @property {object} geometry - The geometry information of the place.
18
+ * @property {string} place_id - The place ID of the place.
19
+ * @property {object} plus_code - The plus code of the place.
20
+ * @property {string[]} types - The types of the place.
21
+ * @property {string} formattedPlace - The formatted place value.
22
+ */
23
+ /**
24
+ * @class GoogleAddressProvider
25
+ * @augments AddressProvider
26
+ */
1
27
  export class GoogleAddressProvider extends AddressProvider {
28
+ /**
29
+
30
+ * @param {ProviderOptions} options - The options for the provider.
31
+ */
32
+ constructor(options?: ProviderOptions);
33
+ /**
34
+ * get display value property
35
+ * @returns {string} The property to use for display value.
36
+ */
2
37
  get displayValueProperty(): string;
38
+ /**
39
+ * @returns {string} The alternative property to use for display value.
40
+ */
3
41
  get alternativeDisplayValueProperty(): string;
4
- set autocompleteOptions(options: any);
5
- get autocompleteOptions(): any;
6
- _autocompleteOptions: any;
42
+ /**
43
+ * @param {AutocompleteOptions} options - The autocomplete options.
44
+ */
45
+ set autocompleteOptions(options: AutocompleteOptions);
46
+ /**
47
+ * @returns {AutocompleteOptions} The autocomplete options.
48
+ */
49
+ get autocompleteOptions(): AutocompleteOptions;
50
+ _autocompleteOptions: AutocompleteOptions | undefined;
51
+ /**
52
+ * Sets the autocomplete options based on the provider options.
53
+
54
+ */
7
55
  setAutocompleteOptions(): void;
8
- beforeMergeOptions(options: any): void;
56
+ /**
57
+
58
+ * Converts the region to autocomplete option if it exists.
59
+ * @param {ProviderOptions} options - The provider options.
60
+ */
61
+ beforeMergeOptions(options: ProviderOptions): void;
62
+ /**
63
+ * @returns {string} The name of the library.
64
+ */
9
65
  getLibraryName(): string;
10
- convertRegionToAutocompleteOption(options: any): void;
66
+ /**
67
+ * Converts the region to autocomplete option.
68
+ * @param {ProviderOptions} options - The provider options.
69
+ */
70
+ convertRegionToAutocompleteOption(options: ProviderOptions): void;
71
+ /**
72
+ * @returns {string[]} The required address properties.
73
+ */
11
74
  getRequiredAddressProperties(): string[];
12
- addRequiredProviderOptions(options: any): void;
75
+ /**
76
+ * Adds the required provider options to the options.
77
+ * @param {AutocompleteOptions} options - The autocomplete options.
78
+ */
79
+ addRequiredProviderOptions(options: AutocompleteOptions): void;
13
80
  filterPlace(place: any): {};
14
81
  attachAutocomplete(elem: any, index: any, onSelectAddress: any): void;
15
82
  search(): Promise<void>;
16
83
  makeRequest(): Promise<void>;
84
+ getDisplayValue(address: any): any;
17
85
  }
86
+ export type AutocompleteOptions = {
87
+ /**
88
+ * - The fields to include in the autocomplete response.
89
+ */
90
+ fields: string[];
91
+ /**
92
+ * - The component restrictions for the autocomplete response.
93
+ */
94
+ componentRestrictions: {
95
+ country: string[];
96
+ };
97
+ };
98
+ export type ProviderOptions = {
99
+ /**
100
+ * - The region to restrict the autocomplete response to.
101
+ */
102
+ region: string;
103
+ /**
104
+ * - The API key for Google Maps.
105
+ */
106
+ key: string;
107
+ /**
108
+ * - The options for the autocomplete functionality.
109
+ */
110
+ autocompleteOptions: AutocompleteOptions;
111
+ };
112
+ export type Place = {
113
+ /**
114
+ * - The address components of the place.
115
+ */
116
+ address_components: object;
117
+ /**
118
+ * - The formatted address of the place.
119
+ */
120
+ formatted_address: string;
121
+ /**
122
+ * - The geometry information of the place.
123
+ */
124
+ geometry: object;
125
+ /**
126
+ * - The place ID of the place.
127
+ */
128
+ place_id: string;
129
+ /**
130
+ * - The plus code of the place.
131
+ */
132
+ plus_code: object;
133
+ /**
134
+ * - The types of the place.
135
+ */
136
+ types: string[];
137
+ /**
138
+ * - The formatted place value.
139
+ */
140
+ formattedPlace: string;
141
+ };
18
142
  import { AddressProvider } from './AddressProvider';