@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
@@ -3,8 +3,11 @@ import _ from 'lodash';
3
3
  import Field from '../field/Field';
4
4
  import Components from '../../Components';
5
5
  import { getArrayFromComponentPath, getStringFromComponentPath, getRandomComponentId } from '../../../utils/utils';
6
- import Component from '../component/Component';
7
6
  import { process as processAsync, processSync } from '@formio/core/process';
7
+ /**
8
+ * NestedComponent class.
9
+ * @augments Field
10
+ */
8
11
  export default class NestedComponent extends Field {
9
12
  static schema(...extend) {
10
13
  return Field.schema({
@@ -15,20 +18,40 @@ export default class NestedComponent extends Field {
15
18
  constructor(component, options, data) {
16
19
  super(component, options, data);
17
20
  this.type = 'components';
21
+ /**
22
+ * The collapsed state of this NestedComponent.
23
+ * @type {boolean}
24
+ * @default false
25
+ * @private
26
+ */
18
27
  this._collapsed = !!this.component.collapsed;
19
28
  }
20
29
  get defaultSchema() {
21
30
  return NestedComponent.schema();
22
31
  }
32
+ /**
33
+ * Get the schema for the NestedComponent.
34
+ * @returns {object} The schema for the NestedComponent.
35
+ * @override
36
+ */
23
37
  get schema() {
24
38
  const schema = super.schema;
25
39
  const components = _.uniqBy(this.getComponents(), 'component.key');
26
40
  schema.components = _.map(components, 'schema');
27
41
  return schema;
28
42
  }
43
+ /**
44
+ * Get collapsed state.
45
+ * @returns {boolean} The collapsed state.
46
+ */
29
47
  get collapsed() {
30
48
  return this._collapsed;
31
49
  }
50
+ /**
51
+ * Set collapsed state.
52
+ * @param {boolean} value - The collapsed state.
53
+ * @returns {void}
54
+ */
32
55
  collapse(value) {
33
56
  const promise = this.redraw();
34
57
  if (!value) {
@@ -36,10 +59,20 @@ export default class NestedComponent extends Field {
36
59
  }
37
60
  return promise;
38
61
  }
62
+ /**
63
+ * Set collapsed state.
64
+ * @param {boolean} value - The collapsed state.
65
+ * @returns {void}
66
+ */
39
67
  set collapsed(value) {
40
68
  this._collapsed = value;
41
69
  this.collapse(value);
42
70
  }
71
+ /**
72
+ * Set visible state of parent and each child component.
73
+ * @param {boolean} value - The visible state.
74
+ * @returns {void}
75
+ */
43
76
  set visible(value) {
44
77
  // DO NOT CALL super here. There is an issue where clearOnHide was getting triggered with
45
78
  // subcomponents because the "parentVisible" flag was set to false when it should really be
@@ -70,75 +103,146 @@ export default class NestedComponent extends Field {
70
103
  this.redraw();
71
104
  }
72
105
  }
106
+ /**
107
+ * Get visible state.
108
+ * @returns {boolean} The visible state.
109
+ */
73
110
  get visible() {
74
111
  return super.visible;
75
112
  }
113
+ /**
114
+ * Set parent visibility.
115
+ * @param {boolean} value - The parent visibility.
116
+ * @returns {void}
117
+ */
76
118
  set parentVisible(value) {
77
119
  super.parentVisible = value;
78
120
  this.components.forEach(component => component.parentVisible = this.visible);
79
121
  }
122
+ /**
123
+ * Get parent visibility.
124
+ * @returns {boolean} The parent visibility.
125
+ */
80
126
  get parentVisible() {
81
127
  return super.parentVisible;
82
128
  }
129
+ /**
130
+ * Get the disabled state.
131
+ * @returns {boolean} - The disabled state.
132
+ */
83
133
  get disabled() {
84
134
  return super.disabled;
85
135
  }
136
+ /**
137
+ * Set the disabled state.
138
+ * @param {boolean} disabled - The disabled state.
139
+ */
86
140
  set disabled(disabled) {
87
141
  super.disabled = disabled;
88
142
  this.components.forEach((component) => component.parentDisabled = disabled);
89
143
  }
144
+ /**
145
+ * Set parent disabled state.
146
+ * @param {boolean} value - The parent disabled state.
147
+ * @returns {void}
148
+ */
90
149
  set parentDisabled(value) {
91
150
  super.parentDisabled = value;
92
151
  this.components.forEach(component => {
93
152
  component.parentDisabled = this.disabled;
94
153
  });
95
154
  }
155
+ /**
156
+ * Get parent disabled state.
157
+ * @returns {boolean} The parent disabled state.
158
+ */
96
159
  get parentDisabled() {
97
160
  return super.parentDisabled;
98
161
  }
162
+ /**
163
+ * Get ready state from all components.
164
+ * @returns {Promise<Array>} - The promise that resolves when all components are ready.
165
+ */
99
166
  get ready() {
100
167
  return Promise.all(this.getComponents().map(component => component.ready));
101
168
  }
169
+ /**
170
+ * Get currentForm object.
171
+ * @returns {object} - The current form object.
172
+ */
102
173
  get currentForm() {
103
174
  return super.currentForm;
104
175
  }
176
+ /**
177
+ * Set currentForm object.
178
+ * @param {object} instance - The current form object.
179
+ * @returns {void}
180
+ */
105
181
  set currentForm(instance) {
106
182
  super.currentForm = instance;
107
183
  this.getComponents().forEach(component => {
108
184
  component.currentForm = instance;
109
185
  });
110
186
  }
187
+ /**
188
+ * Get Row Index.
189
+ * @returns {number} - The row index.
190
+ */
111
191
  get rowIndex() {
112
192
  return this._rowIndex;
113
193
  }
194
+ /**
195
+ * Set Row Index to row and update each component.
196
+ * @param {number} value - The row index.
197
+ * @returns {void}
198
+ */
114
199
  set rowIndex(value) {
115
200
  this._rowIndex = value;
116
201
  this.eachComponent((component) => {
117
202
  component.rowIndex = value;
118
203
  });
119
204
  }
205
+ /**
206
+ * Get Contextual data of the component.
207
+ * @returns {object} - The contextual data of the component.
208
+ * @override
209
+ */
120
210
  componentContext() {
121
211
  return this._data;
122
212
  }
213
+ /**
214
+ * Get the data of the component.
215
+ * @returns {object} - The data of the component.
216
+ * @override
217
+ */
123
218
  get data() {
124
219
  return this._data;
125
220
  }
221
+ /**
222
+ * Set the data of the component.
223
+ * @param {object} value - The data of the component.
224
+ * @returns {void}
225
+ */
126
226
  set data(value) {
127
227
  this._data = value;
128
228
  this.eachComponent((component) => {
129
229
  component.data = this.componentContext(component);
130
230
  });
131
231
  }
232
+ /**
233
+ * Get components array.
234
+ * @returns {Array} - The components array.
235
+ */
132
236
  getComponents() {
133
237
  return this.components || [];
134
238
  }
135
239
  /**
136
240
  * Perform a deep iteration over every component, including those
137
241
  * within other container based components.
138
- *
139
- * @param {function} fn - Called for every component.
242
+ * @param {Function} fn - Called for every component.
243
+ * @param {any} options - The options to include with this everyComponent call.
140
244
  */
141
- everyComponent(fn, options) {
245
+ everyComponent(fn, options = {}) {
142
246
  const components = this.getComponents();
143
247
  _.each(components, (component, index) => {
144
248
  if (fn(component, components, index) === false) {
@@ -151,6 +255,11 @@ export default class NestedComponent extends Field {
151
255
  }
152
256
  });
153
257
  }
258
+ /**
259
+ * Check if the component has a component.
260
+ * @param {import('@formio/core').Component} component - The component to check.
261
+ * @returns {boolean} - TRUE if the component has a component, FALSE otherwise.
262
+ */
154
263
  hasComponent(component) {
155
264
  let result = false;
156
265
  this.everyComponent((comp) => {
@@ -161,6 +270,10 @@ export default class NestedComponent extends Field {
161
270
  });
162
271
  return result;
163
272
  }
273
+ /**
274
+ * Get the flattened components of this NestedComponent.
275
+ * @returns {object} - The flattened components of this NestedComponent.
276
+ */
164
277
  flattenComponents() {
165
278
  const result = {};
166
279
  this.everyComponent((component) => {
@@ -170,8 +283,7 @@ export default class NestedComponent extends Field {
170
283
  }
171
284
  /**
172
285
  * Perform an iteration over each component within this container component.
173
- *
174
- * @param {function} fn - Called for each component
286
+ * @param {Function} fn - Called for each component
175
287
  */
176
288
  eachComponent(fn) {
177
289
  _.each(this.getComponents(), (component, index) => {
@@ -183,11 +295,10 @@ export default class NestedComponent extends Field {
183
295
  /**
184
296
  * Returns a component provided a key. This performs a deep search within the
185
297
  * component tree.
186
- *
187
- * @param {string} key - The key of the component to retrieve.
188
- * @param {function} [fn] - Called with the component once found.
298
+ * @param {string} path - The path to the component.
299
+ * @param {Function} [fn] - Called with the component once found.
189
300
  * @param {string} [originalPath] - The original path to the component.
190
- * @return {Component} - The component that is located.
301
+ * @returns {any} - The component that is located.
191
302
  */
192
303
  getComponent(path, fn, originalPath) {
193
304
  originalPath = originalPath || getStringFromComponentPath(path);
@@ -235,12 +346,11 @@ export default class NestedComponent extends Field {
235
346
  }
236
347
  /**
237
348
  * Return a component provided the Id of the component.
238
- *
239
349
  * @param {string} id - The Id of the component.
240
- * @param {function} fn - Called with the component once it is retrieved.
241
- * @return {Object} - The component retrieved.
350
+ * @param {Function} fn - Called with the component once it is retrieved.
351
+ * @returns {object} - The component retrieved.
242
352
  */
243
- getComponentById(id, fn) {
353
+ getComponentById(id, fn = null) {
244
354
  let comp = null;
245
355
  this.everyComponent((component, components) => {
246
356
  if (component.id === id) {
@@ -255,9 +365,12 @@ export default class NestedComponent extends Field {
255
365
  }
256
366
  /**
257
367
  * Create a new component and add it to the components array.
258
- *
259
- * @param component
260
- * @param data
368
+ * @param {import('@formio/core').Component} component - The component JSON schema to create.
369
+ * @param {object} options - The options to create the component with.
370
+ * @param {import('@formio/core').DataObject} data - The submission data object to house the data for this component.
371
+ * @param {import('@formio/core').Component} [before] - The component before which to add this component.
372
+ * @param {import('@formio/core').Component} [replacedComp] - The component to replace with this component.
373
+ * @returns {any} - The created component instance.
261
374
  */
262
375
  createComponent(component, options, data, before, replacedComp) {
263
376
  if (!component) {
@@ -319,9 +432,9 @@ export default class NestedComponent extends Field {
319
432
  return super.init();
320
433
  }
321
434
  /**
322
- *
323
- * @param element
324
- * @param data
435
+ * Add a new component instance to the components array.
436
+ * @param {import('@formio/core').DataObject} [data] - The Submission data for this component.
437
+ * @param {object} [options] - The options for this component.
325
438
  */
326
439
  addComponents(data, options) {
327
440
  data = data || this.data;
@@ -337,13 +450,13 @@ export default class NestedComponent extends Field {
337
450
  }
338
451
  /**
339
452
  * Add a new component to the components array.
340
- *
341
- * @param {Object} component - The component JSON schema to add.
342
- * @param {Object} data - The submission data object to house the data for this component.
453
+ * @param {import('@formio/core').Component} component - The component JSON schema to add.
454
+ * @param {object} data - The submission data object to house the data for this component.
343
455
  * @param {HTMLElement} before - A DOM element to insert this element before.
344
- * @return {Component} - The created component instance.
456
+ * @param {boolean} [noAdd] - A possibly extraneous boolean flag.
457
+ * @returns {any} - The created component instance.
345
458
  */
346
- addComponent(component, data, before, noAdd) {
459
+ addComponent(component, data = null, before = null, noAdd = false) {
347
460
  data = data || this.data;
348
461
  this.components = this.components || [];
349
462
  component = this.hook('addComponent', component, data, before, noAdd);
@@ -404,6 +517,10 @@ export default class NestedComponent extends Field {
404
517
  childPromise,
405
518
  ]);
406
519
  }
520
+ /**
521
+ * Attach the logic to the components.
522
+ * @param {import('@formio/core').Component[]} components - The components to attach logic to.
523
+ */
407
524
  attachComponentsLogic(components) {
408
525
  components = components || this.components;
409
526
  _.each(components, (comp) => {
@@ -433,9 +550,9 @@ export default class NestedComponent extends Field {
433
550
  }
434
551
  /**
435
552
  * Remove a component from the components array and from the children object
436
- *
437
- * @param {Component} component - The component to remove from the components.
438
- * @param {Array<Component>} components - An array of components to remove this component from.
553
+ * @param {import('@formio/core').Component} component - The component to remove from the components.
554
+ * @param {import('@formio/core').Component[]} components - An array of components to remove this component from.
555
+ * @param {boolean} [all] - If set to TRUE will cascade remove all components.
439
556
  */
440
557
  removeComponent(component, components, all = false) {
441
558
  components = components || this.components;
@@ -447,12 +564,11 @@ export default class NestedComponent extends Field {
447
564
  }
448
565
  /**
449
566
  * Removes a component provided the API key of that component.
450
- *
451
567
  * @param {string} key - The API key of the component to remove.
452
- * @param {function} fn - Called once the component is removed.
453
- * @return {null}
568
+ * @param {Function} fn - Called once the component is removed.
569
+ * @returns {null|void} - Returns nothing if the component is not found.
454
570
  */
455
- removeComponentByKey(key, fn) {
571
+ removeComponentByKey(key, fn = null) {
456
572
  const comp = this.getComponent(key, (component, components) => {
457
573
  this.removeComponent(component, components);
458
574
  if (fn) {
@@ -468,12 +584,11 @@ export default class NestedComponent extends Field {
468
584
  }
469
585
  /**
470
586
  * Removes a component provided the Id of the component.
471
- *
472
587
  * @param {string} id - The Id of the component to remove.
473
- * @param {function} fn - Called when the component is removed.
474
- * @return {null}
588
+ * @param {Function} fn - Called when the component is removed.
589
+ * @returns {null|void} - Returns nothing if the component is not found.
475
590
  */
476
- removeComponentById(id, fn) {
591
+ removeComponentById(id, fn = null) {
477
592
  const comp = this.getComponentById(id, (component, components) => {
478
593
  this.removeComponent(component, components);
479
594
  if (fn) {
@@ -536,16 +651,15 @@ export default class NestedComponent extends Field {
536
651
  }
537
652
  /**
538
653
  * Allow components to hook into the next page trigger to perform their own logic.
539
- *
540
- * @return {*}
654
+ * @param {Function} next - The callback to continue to the next page.
655
+ * @returns {Promise} - A promise when the page has been processed.
541
656
  */
542
657
  beforePage(next) {
543
658
  return Promise.all(this.getComponents().map((comp) => comp.beforePage(next)));
544
659
  }
545
660
  /**
546
661
  * Allow components to hook into the submission to provide their own async data.
547
- *
548
- * @return {*}
662
+ * @returns {Promise} - Returns a promise when the constituent beforeSubmit functions are complete.
549
663
  */
550
664
  beforeSubmit() {
551
665
  return Promise.allSettled(this.getComponents().map((comp) => comp.beforeSubmit()));
@@ -575,12 +689,12 @@ export default class NestedComponent extends Field {
575
689
  }
576
690
  /**
577
691
  * Perform a validation on all child components of this nested component.
578
- * @param {*} components
579
- * @param {*} data
580
- * @param {*} flags
581
- * @returns
692
+ * @param {import('@formio/core').Component[]} components - The components to validate.
693
+ * @param {import('@formio/core').DataObject} data - The data to validate.
694
+ * @param {object} flags - The flags to use when validating.
695
+ * @returns {Promise<Array>|Array} - The errors if any exist.
582
696
  */
583
- validateComponents(components, data, flags = {}) {
697
+ validateComponents(components = null, data = null, flags = {}) {
584
698
  components = components || this.component.components;
585
699
  data = data || this.rootValue;
586
700
  const { async, dirty, process } = flags;
@@ -615,25 +729,32 @@ export default class NestedComponent extends Field {
615
729
  }
616
730
  /**
617
731
  * Validate a nested component with data, or its own internal data.
618
- * @param {*} data
619
- * @param {*} flags
620
- * @returns
732
+ * @param {import('@formio/core').DataObject} data - The data to validate.
733
+ * @param {object} flags - The flags to use when validating.
734
+ * @returns {Array} - The errors if any exist.
621
735
  */
622
- validate(data, flags = {}) {
736
+ validate(data = null, flags = {}) {
623
737
  data = data || this.rootValue;
624
738
  return this.validateComponents(this.getComponents().map((component) => component.component), data, flags);
625
739
  }
626
- checkComponentValidity(data, dirty, row, flags = {}, allErrors = []) {
740
+ checkComponentValidity(data = null, dirty = false, row = null, flags = {}, allErrors = []) {
627
741
  this.childErrors = [];
628
742
  return super.checkComponentValidity(data, dirty, row, flags, allErrors);
629
743
  }
630
- checkValidity(data, dirty, row, silentCheck, childErrors = []) {
631
- console.log('Deprecation warning: Component.checkValidity() will be deprecated in 6.x version of renderer. Use "validate" method instead.');
744
+ /**
745
+ * Checks the validity of the component.
746
+ * @param {*} data - The data to check if the component is valid.
747
+ * @param {boolean} dirty - If the component is dirty.
748
+ * @param {*} row - The contextual row data for this component.
749
+ * @param {boolean} silentCheck - If the check should be silent and not set the error messages.
750
+ * @param {Array<any>} childErrors - An array of all errors that have occured so that it can be appended when another one occurs here.
751
+ * @returns {boolean} - TRUE if the component is valid.
752
+ */
753
+ checkValidity(data = null, dirty = false, row = null, silentCheck = false, childErrors = []) {
632
754
  childErrors.push(...this.validate(data, { dirty, silentCheck }));
633
755
  return this.checkComponentValidity(data, dirty, row, { dirty, silentCheck }, childErrors) && childErrors.length === 0;
634
756
  }
635
- checkAsyncValidity(data, dirty, row, silentCheck) {
636
- console.log('Deprecation warning: Component.checkAsyncValidity() will be deprecated in 6.x version of renderer.');
757
+ checkAsyncValidity(data = null, dirty = false, row = null, silentCheck = false) {
637
758
  return this.ready.then(() => {
638
759
  return this.validate(data, { dirty, silentCheck, async: true }).then((childErrors) => {
639
760
  return this.checkComponentValidity(data, dirty, row, { dirty, silentCheck, async: true }, childErrors).then((valid) => {
@@ -6,12 +6,12 @@ export default class NestedArrayComponent extends NestedDataComponent {
6
6
  checkAddButtonChanged(): void;
7
7
  checkData(data: any, flags: any, row: any): any;
8
8
  processRows(method: any, data: any, opts: any, defaultValue: any, silentCheck: any): any;
9
- validate(data: any, flags?: {}): any;
9
+ validate(data: any, flags?: {}): any[] | Promise<any[]>;
10
10
  checkRow(...args: any[]): any;
11
11
  processRow(method: any, data: any, opts: any, row: any, components: any, silentCheck: any): any;
12
12
  hasAddButton(): any;
13
13
  getComponent(path: any, fn: any, originalPath: any): any;
14
- everyComponent(fn: any, rowIndex: any, options: any): void;
14
+ everyComponent(fn: any, rowIndex: any, options?: {}): void;
15
15
  getComponents(rowIndex: any): any;
16
16
  }
17
17
  import NestedDataComponent from '../nesteddata/NestedDataComponent';
@@ -125,7 +125,7 @@ export default class NestedArrayComponent extends NestedDataComponent {
125
125
  }
126
126
  return result;
127
127
  }
128
- everyComponent(fn, rowIndex, options) {
128
+ everyComponent(fn, rowIndex, options = {}) {
129
129
  if (_.isObject(rowIndex)) {
130
130
  options = rowIndex;
131
131
  rowIndex = null;
@@ -3,9 +3,15 @@ export default class NestedDataComponent extends NestedComponent {
3
3
  hasChanged(newValue: any, oldValue: any): boolean;
4
4
  get allowData(): boolean;
5
5
  get emptyValue(): {};
6
+ componentContext(): any;
6
7
  getValueAsString(value: any, options: any): string;
7
8
  getDataValueAsTable(value: any, options: any): string;
8
- everyComponent(fn: any, options: any): void;
9
+ everyComponent(fn: any, options?: {}): void;
10
+ /**
11
+ * Get the value of this component.
12
+ * @returns {any} - Return the value of this component.
13
+ */
14
+ getValue(): any;
9
15
  updateValue(value: any, flags?: {}): boolean;
10
16
  setValue(value: any, flags?: {}): boolean;
11
17
  }
@@ -87,7 +87,7 @@ export default class NestedDataComponent extends NestedComponent {
87
87
  `);
88
88
  return result;
89
89
  }
90
- everyComponent(fn, options) {
90
+ everyComponent(fn, options = {}) {
91
91
  if (options?.email) {
92
92
  if (options.fromRoot) {
93
93
  delete options.fromRoot;
@@ -100,8 +100,7 @@ export default class NestedDataComponent extends NestedComponent {
100
100
  }
101
101
  /**
102
102
  * Get the value of this component.
103
- *
104
- * @returns {*}
103
+ * @returns {any} - Return the value of this component.
105
104
  */
106
105
  getValue() {
107
106
  return this.dataValue;
@@ -50,13 +50,14 @@ export default class AddressComponent extends ContainerComponent {
50
50
  get gridTemplateName(): string;
51
51
  get rowTemplateName(): string;
52
52
  get hasChildren(): boolean;
53
- get addAnother(): any;
53
+ get addAnother(): string;
54
54
  renderElement(value: any): any;
55
55
  renderRow(value: any, index: any): any;
56
56
  renderGrid(): any;
57
- render(): any;
57
+ render(): Field;
58
58
  onSelectAddress(address: any, element: any, index: any): void;
59
59
  addRow(): void;
60
+ attach(element: any): Promise<void>;
60
61
  addChildComponent(component: any): void;
61
62
  clearAddress(element: any, index: any): void;
62
63
  getDisplayValue(value?: any): any;
@@ -64,3 +65,4 @@ export default class AddressComponent extends ContainerComponent {
64
65
  getValueAsString(value: any, options: any): any;
65
66
  }
66
67
  import ContainerComponent from '../container/Container';
68
+ import Field from '../_classes/field/Field';
@@ -1,3 +1,6 @@
1
- export default function _default(...extend: any[]): {
2
- components: any;
3
- };
1
+ /**
2
+ * The Edit Form function.
3
+ * @param {...any} extend - The components that extend the edit form.
4
+ * @returns {import('@formio/core').Component[]} - The edit form components.
5
+ */
6
+ export default function _default(...extend: any[]): import('@formio/core').Component[];
@@ -2,6 +2,11 @@ import Components from '../Components';
2
2
  import AddressEditData from './editForm/Address.edit.data';
3
3
  import AddressEditDisplay from './editForm/Address.edit.display';
4
4
  import AddressEditProvider from './editForm/Address.edit.provider';
5
+ /**
6
+ * The Edit Form function.
7
+ * @param {...any} extend - The components that extend the edit form.
8
+ * @returns {import('@formio/core').Component[]} - The edit form components.
9
+ */
5
10
  export default function (...extend) {
6
11
  return Components.baseEditForm([
7
12
  {
@@ -10,17 +10,7 @@ export default class ButtonComponent extends Field {
10
10
  static savedValueTypes(schema: any): string[];
11
11
  constructor(component: any, options: any, data: any);
12
12
  filesUploading: any[];
13
- get inputInfo(): {
14
- type: string;
15
- component: any;
16
- changeEvent: string;
17
- attr: {
18
- name: any;
19
- type: any;
20
- class: string;
21
- lang: any;
22
- };
23
- };
13
+ get inputInfo(): any;
24
14
  get labelInfo(): {
25
15
  hidden: boolean;
26
16
  };
@@ -31,10 +21,11 @@ export default class ButtonComponent extends Field {
31
21
  get clicked(): any;
32
22
  get defaultValue(): boolean;
33
23
  get oauthConfig(): any;
34
- render(): any;
24
+ render(): Field;
35
25
  attachButton(): void;
36
26
  hasError: boolean | undefined;
37
27
  isDisabledOnInvalid: any;
28
+ attach(element: any): Promise<void>;
38
29
  detach(element: any): void;
39
30
  onClick(event: any): void;
40
31
  openOauth(settings: any): void;
@@ -1,3 +1,6 @@
1
- export default function _default(...extend: any[]): {
2
- components: any;
3
- };
1
+ /**
2
+ * The Edit Form function.
3
+ * @param {...any} extend - The components that extend the edit form.
4
+ * @returns {import('@formio/core').Component[]} - The edit form components.
5
+ */
6
+ export default function _default(...extend: any[]): import('@formio/core').Component[];
@@ -1,5 +1,10 @@
1
1
  import Components from '../Components';
2
2
  import ButtonEditDisplay from './editForm/Button.edit.display';
3
+ /**
4
+ * The Edit Form function.
5
+ * @param {...any} extend - The components that extend the edit form.
6
+ * @returns {import('@formio/core').Component[]} - The edit form components.
7
+ */
3
8
  export default function (...extend) {
4
9
  return Components.baseEditForm([
5
10
  {
@@ -224,6 +224,11 @@ export default class ButtonComponent extends Field {
224
224
  });
225
225
  this.disabled = this.shouldDisabled;
226
226
  this.setDisabled(this.refs.button, this.disabled);
227
+ /**
228
+ * Get url parameter by name
229
+ * @param {string} name - The url parameter
230
+ * @returns {string} - The url parameter value
231
+ */
227
232
  function getUrlParameter(name) {
228
233
  name = name.replace(/[[]/, '\\[').replace(/[\]]/, '\\]');
229
234
  const regex = new RegExp(`[\\?&]${name}=([^&#]*)`);