@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
@@ -22,7 +22,6 @@ export default class WebformBuilder extends Component {
22
22
  createForm(options: any): any;
23
23
  /**
24
24
  * Called when everything is ready.
25
- *
26
25
  * @returns {Promise} - Wait for webform to be ready.
27
26
  */
28
27
  get ready(): Promise<any>;
@@ -52,13 +51,15 @@ export default class WebformBuilder extends Component {
52
51
  redraw(): Promise<void> | Promise<boolean>;
53
52
  set form(value: any);
54
53
  get form(): any;
54
+ get schema(): any;
55
55
  get container(): any;
56
56
  /**
57
57
  * When a component sets its api key, we need to check if it is unique within its namespace. Find the namespace root
58
58
  * so we can calculate this correctly.
59
- * @param component
59
+ * @param {import('@formio/core').Component} component - The component to find the namespace root for.
60
+ * @returns {import('@formio/core').Component[]} - The components root for this namespace.
60
61
  */
61
- findNamespaceRoot(component: any): any;
62
+ findNamespaceRoot(component: import('@formio/core').Component): import('@formio/core').Component[];
62
63
  recurseNamespace(component: any): any;
63
64
  render(): any;
64
65
  attach(element: any): Promise<any>;
@@ -80,12 +81,13 @@ export default class WebformBuilder extends Component {
80
81
  highlightInvalidComponents(): void;
81
82
  /**
82
83
  * Called when a new component is saved.
83
- *
84
- * @param parent
85
- * @param component
86
- * @return {boolean}
84
+ * @param {Component} component - The component instance to save.
85
+ * @param {Component} parent - The parent component.
86
+ * @param {boolean} isNew - If this is a new component.
87
+ * @param {Component} original - The original component.
88
+ * @returns {boolean} - If the component was saved.
87
89
  */
88
- saveComponent(component: any, parent: any, isNew: any, original: any): boolean;
90
+ saveComponent(component: Component, parent: Component, isNew: boolean, original: Component): boolean;
89
91
  isComponentCreated: boolean | undefined;
90
92
  emitSaveComponentEvent(schema: any, originalComp: any, parentComponentSchema: any, path: any, index: any, isNew: any, originalComponentSchema: any): void;
91
93
  attachEditComponentControls(component: any, parent: any, isNew: any, original: any, ComponentClass: any): void;
@@ -105,16 +107,16 @@ export default class WebformBuilder extends Component {
105
107
  addNewComponent(element: any): void;
106
108
  /**
107
109
  * Creates copy of component schema and stores it under sessionStorage.
108
- * @param {Component} component
109
- * @return {*}
110
+ * @param {Component} component - The component to copy.
111
+ * @returns {void}
110
112
  */
111
- copyComponent(component: Component): any;
113
+ copyComponent(component: Component): void;
112
114
  /**
113
115
  * Paste copied component after the current component.
114
- * @param {Component} component
115
- * @return {*}
116
+ * @param {Component} component - The component to paste after.
117
+ * @returns {void}
116
118
  */
117
- pasteComponent(component: Component): any;
119
+ pasteComponent(component: Component): void;
118
120
  isParentSaveChildMethod(parentComp: any): boolean;
119
121
  getParentElement(element: any): any;
120
122
  addBuilderComponentInfo(component: any): any;
@@ -366,7 +366,6 @@ export default class WebformBuilder extends Component {
366
366
  }
367
367
  /**
368
368
  * Called when everything is ready.
369
- *
370
369
  * @returns {Promise} - Wait for webform to be ready.
371
370
  */
372
371
  get ready() {
@@ -415,7 +414,8 @@ export default class WebformBuilder extends Component {
415
414
  /**
416
415
  * When a component sets its api key, we need to check if it is unique within its namespace. Find the namespace root
417
416
  * so we can calculate this correctly.
418
- * @param component
417
+ * @param {import('@formio/core').Component} component - The component to find the namespace root for.
418
+ * @returns {import('@formio/core').Component[]} - The components root for this namespace.
419
419
  */
420
420
  findNamespaceRoot(component) {
421
421
  const path = getArrayFromComponentPath(component.path);
@@ -1119,10 +1119,11 @@ export default class WebformBuilder extends Component {
1119
1119
  }
1120
1120
  /**
1121
1121
  * Called when a new component is saved.
1122
- *
1123
- * @param parent
1124
- * @param component
1125
- * @return {boolean}
1122
+ * @param {Component} component - The component instance to save.
1123
+ * @param {Component} parent - The parent component.
1124
+ * @param {boolean} isNew - If this is a new component.
1125
+ * @param {Component} original - The original component.
1126
+ * @returns {boolean} - If the component was saved.
1126
1127
  */
1127
1128
  saveComponent(component, parent, isNew, original) {
1128
1129
  this.editForm.detach();
@@ -1509,8 +1510,8 @@ export default class WebformBuilder extends Component {
1509
1510
  }
1510
1511
  /**
1511
1512
  * Creates copy of component schema and stores it under sessionStorage.
1512
- * @param {Component} component
1513
- * @return {*}
1513
+ * @param {Component} component - The component to copy.
1514
+ * @returns {void}
1514
1515
  */
1515
1516
  copyComponent(component) {
1516
1517
  if (!window.sessionStorage) {
@@ -1521,8 +1522,8 @@ export default class WebformBuilder extends Component {
1521
1522
  }
1522
1523
  /**
1523
1524
  * Paste copied component after the current component.
1524
- * @param {Component} component
1525
- * @return {*}
1525
+ * @param {Component} component - The component to paste after.
1526
+ * @returns {void}
1526
1527
  */
1527
1528
  pasteComponent(component) {
1528
1529
  if (!window.sessionStorage) {
@@ -1,13 +1,4 @@
1
1
  declare class Wizard extends Webform {
2
- /**
3
- * Constructor for wizard based forms
4
- * @param element Dom element to place this wizard.
5
- * @param {Object} options Options object, supported options are:
6
- * - breadcrumbSettings.clickable: true (default) determines if the breadcrumb bar is clickable or not
7
- * - buttonSettings.show*(Previous, Next, Cancel): true (default) determines if the button is shown or not
8
- * - allowPrevious: false (default) determines if the breadcrumb bar is clickable or not for visited tabs
9
- */
10
- constructor(...args: any[]);
11
2
  pages: any[];
12
3
  prefixComps: any[];
13
4
  suffixComps: any[];
@@ -28,11 +19,9 @@ declare class Wizard extends Webform {
28
19
  getPages(args?: {}): any[];
29
20
  get hasExtraPages(): boolean;
30
21
  get localData(): any;
31
- isClickableDefined: any;
32
- isSecondInit: boolean | undefined;
33
22
  get wizardKey(): string;
34
- set wizard(form: Object);
35
- get wizard(): Object;
23
+ set wizard(form: object);
24
+ get wizard(): object;
36
25
  get buttons(): {};
37
26
  get buttonOrder(): any;
38
27
  get renderContext(): {
@@ -47,16 +36,37 @@ declare class Wizard extends Webform {
47
36
  };
48
37
  prepareNavigationSettings(ctx: any): any;
49
38
  prepareHeaderSettings(ctx: any, headerType: any): any;
39
+ render(): any;
50
40
  redrawNavigation(): void;
51
41
  redrawHeader(): void;
52
- attach(element: any): Promise<void>;
42
+ /**
43
+ * Attaches the wizard to the provided DOM element, initializes component references, sets up navigation,
44
+ * and emits a render event. It will initialize the wizard's index if necessary,
45
+ * attach event hooks, and make sure that the current page is rendered and displayed correctly.
46
+ * @param {HTMLElement} element - The DOM element to which the wizard will be attached.
47
+ * @returns {Promise} A promise that resolves when all components have been successfully attached.
48
+ */
49
+ attach(element: HTMLElement): Promise<any>;
53
50
  scrollPageToTop(): void;
54
51
  isBreadcrumbClickable(): any;
55
52
  isAllowPrevious(): any;
56
- handleNaviageteOnEnter(event: any): void;
57
- handleSaveOnEnter(event: any): void;
53
+ /**
54
+ * Handles navigate on 'Enter' key event in a wizard form.
55
+ * @param {KeyboardEvent} event - The keyboard event object that triggered the handler.
56
+ */
57
+ handleNaviageteOnEnter(event: KeyboardEvent): void;
58
+ /**
59
+ * Handles save on 'Enter' key event in a wizard form.
60
+ * @param {KeyboardEvent} event - The keyboard event object that triggered the handler.
61
+ */
62
+ handleSaveOnEnter(event: KeyboardEvent): void;
58
63
  attachNav(): void;
59
- emitWizardPageSelected(index: any): void;
64
+ /**
65
+ * Emits an event indicating that a wizard page has been selected.
66
+ * @param {number} index - Index of the selected wizard page in the `pages` array.
67
+ * @fires emit - Emits the 'wizardPageSelected' event with the page object and index.
68
+ */
69
+ emitWizardPageSelected(index: number): void;
60
70
  attachHeader(): void;
61
71
  detachNav(): void;
62
72
  detachHeader(): void;
@@ -67,7 +77,7 @@ declare class Wizard extends Webform {
67
77
  }): any[];
68
78
  findRootPanel(component: any): any;
69
79
  setRootPanelId(component: any): void;
70
- establishPages(data?: any): any[];
80
+ establishPages(data?: object): any[];
71
81
  updatePages(): void;
72
82
  addComponents(): void;
73
83
  setPage(num: any): Promise<void>;
@@ -84,9 +94,9 @@ declare class Wizard extends Webform {
84
94
  prevPage(): Promise<void>;
85
95
  cancel(noconfirm: any): Promise<void> | Promise<number>;
86
96
  getPageIndexByKey(key: any): number;
87
- get schema(): Object;
97
+ get schema(): object;
88
98
  setComponentSchema(): void;
89
- setForm(form: any, flags: any): any;
99
+ setForm(form: any, flags?: {}): Promise<any> | undefined;
90
100
  onSetForm(clonedForm: any, initialForm: any): void;
91
101
  setEditMode(submission: any): void;
92
102
  setValue(submission: any, flags: {} | undefined, ignoreEstablishment: any): any;
@@ -95,7 +105,7 @@ declare class Wizard extends Webform {
95
105
  pageId(page: any): any;
96
106
  onChange(flags: any, changed: any, modified: any, changes: any): void;
97
107
  checkValidity(data: any, dirty: any, row: any, currentPageOnly: any, childErrors?: any[]): any;
98
- focusOnComponent(key: any): any;
108
+ focusOnComponent(key: any): void | Promise<void>;
99
109
  }
100
110
  declare namespace Wizard {
101
111
  let setBaseUrl: any;
package/lib/mjs/Wizard.js CHANGED
@@ -1,24 +1,24 @@
1
1
  import _ from 'lodash';
2
2
  import Webform from './Webform';
3
3
  import { Formio } from './Formio';
4
- import { fastCloneDeep, checkCondition, firstNonNil, uniqueKey, eachComponent, unescapeHTML } from './utils/utils';
4
+ import { fastCloneDeep, checkCondition, firstNonNil, uniqueKey, eachComponent, } from './utils/utils';
5
5
  export default class Wizard extends Webform {
6
6
  /**
7
- * Constructor for wizard based forms
8
- * @param element Dom element to place this wizard.
9
- * @param {Object} options Options object, supported options are:
10
- * - breadcrumbSettings.clickable: true (default) determines if the breadcrumb bar is clickable or not
11
- * - buttonSettings.show*(Previous, Next, Cancel): true (default) determines if the button is shown or not
12
- * - allowPrevious: false (default) determines if the breadcrumb bar is clickable or not for visited tabs
7
+ * Constructor for wizard-based forms.
8
+ * @param {HTMLElement | object | import('Form').FormOptions} [elementOrOptions] - The DOM element to render this form within or the options to create this form instance.
9
+ * @param {import('Form').FormOptions} [_options] - The options to create a new form instance.
10
+ * - breadcrumbSettings.clickable: true (default) - determines if the breadcrumb bar is clickable.
11
+ * - buttonSettings.show*(Previous, Next, Cancel): true (default) - determines if the button is shown.
12
+ * - allowPrevious: false (default) - determines if the breadcrumb bar is clickable for visited tabs.
13
13
  */
14
- constructor() {
14
+ constructor(elementOrOptions = undefined, _options = undefined) {
15
15
  let element, options;
16
- if (arguments[0] instanceof HTMLElement || arguments[1]) {
17
- element = arguments[0];
18
- options = arguments[1] || {};
16
+ if (elementOrOptions instanceof HTMLElement || options) {
17
+ element = elementOrOptions;
18
+ options = _options || {};
19
19
  }
20
20
  else {
21
- options = arguments[0] || {};
21
+ options = elementOrOptions || {};
22
22
  }
23
23
  options.display = 'wizard';
24
24
  super(element, options);
@@ -90,10 +90,6 @@ export default class Wizard extends Webform {
90
90
  showSubmit: true,
91
91
  showCancel: !this.options.readOnly
92
92
  });
93
- if (!this.isSecondInit) {
94
- this.isClickableDefined = this.options?.breadcrumbSettings?.hasOwnProperty('clickable');
95
- this.isSecondInit = true;
96
- }
97
93
  this.options.breadcrumbSettings = _.defaults(this.options.breadcrumbSettings, {
98
94
  clickable: true
99
95
  });
@@ -239,6 +235,13 @@ export default class Wizard extends Webform {
239
235
  }
240
236
  }
241
237
  }
238
+ /**
239
+ * Attaches the wizard to the provided DOM element, initializes component references, sets up navigation,
240
+ * and emits a render event. It will initialize the wizard's index if necessary,
241
+ * attach event hooks, and make sure that the current page is rendered and displayed correctly.
242
+ * @param {HTMLElement} element - The DOM element to which the wizard will be attached.
243
+ * @returns {Promise} A promise that resolves when all components have been successfully attached.
244
+ */
242
245
  attach(element) {
243
246
  this.setElement(element);
244
247
  this.loadRefs(element, {
@@ -288,7 +291,13 @@ export default class Wizard extends Webform {
288
291
  currentPage = page;
289
292
  }
290
293
  });
291
- return this.isClickableDefined ? this.options.breadcrumbSettings.clickable : _.get(currentPage, 'component.breadcrumbClickable', true);
294
+ if (_.has(currentPage, 'component.breadcrumbClickable')) {
295
+ return _.get(currentPage, 'component.breadcrumbClickable');
296
+ }
297
+ if (_.has(this.options, 'breadcrumbSettings.clickable')) {
298
+ return this.options.breadcrumbSettings.clickable;
299
+ }
300
+ return true;
292
301
  }
293
302
  isAllowPrevious() {
294
303
  let currentPage = null;
@@ -299,6 +308,10 @@ export default class Wizard extends Webform {
299
308
  });
300
309
  return _.get(currentPage.component, 'allowPrevious', this.options.allowPrevious);
301
310
  }
311
+ /**
312
+ * Handles navigate on 'Enter' key event in a wizard form.
313
+ * @param {KeyboardEvent} event - The keyboard event object that triggered the handler.
314
+ */
302
315
  handleNaviageteOnEnter(event) {
303
316
  if (event.keyCode === 13) {
304
317
  const clickEvent = new CustomEvent('click');
@@ -308,6 +321,10 @@ export default class Wizard extends Webform {
308
321
  }
309
322
  }
310
323
  }
324
+ /**
325
+ * Handles save on 'Enter' key event in a wizard form.
326
+ * @param {KeyboardEvent} event - The keyboard event object that triggered the handler.
327
+ */
311
328
  handleSaveOnEnter(event) {
312
329
  if (event.keyCode === 13) {
313
330
  const clickEvent = new CustomEvent('click');
@@ -342,6 +359,11 @@ export default class Wizard extends Webform {
342
359
  });
343
360
  });
344
361
  }
362
+ /**
363
+ * Emits an event indicating that a wizard page has been selected.
364
+ * @param {number} index - Index of the selected wizard page in the `pages` array.
365
+ * @fires emit - Emits the 'wizardPageSelected' event with the page object and index.
366
+ */
345
367
  emitWizardPageSelected(index) {
346
368
  this.emit('wizardPageSelected', this.pages[index], index);
347
369
  }
@@ -742,7 +764,8 @@ export default class Wizard extends Webform {
742
764
  this.options.show = this.options.show || {};
743
765
  this.options.show[item.key] = true;
744
766
  }
745
- else if (this.wizard.hasOwnProperty('full') && !_.isEqual(this.originalOptions.show, this.options.show)) {
767
+ else if (Object.prototype.hasOwnProperty.call(this.wizard, 'full')
768
+ && !_.isEqual(this.originalOptions.show, this.options.show)) {
746
769
  this.options.show = { ...(this.originalOptions.show || {}) };
747
770
  }
748
771
  }
@@ -760,7 +783,7 @@ export default class Wizard extends Webform {
760
783
  this.originalComponents.push(_.clone(newPage));
761
784
  }
762
785
  }
763
- setForm(form, flags) {
786
+ setForm(form, flags = {}) {
764
787
  if (!form) {
765
788
  return;
766
789
  }
@@ -45,6 +45,6 @@ export default class WizardBuilder extends WebformBuilder {
45
45
  key: string;
46
46
  components: any[];
47
47
  };
48
- pasteComponent(component: any): any;
48
+ pasteComponent(component: any): void;
49
49
  }
50
50
  import WebformBuilder from './WebformBuilder';
@@ -680,24 +680,26 @@ export default class PasswordStrengthAddon extends FormioAddon {
680
680
  };
681
681
  /**
682
682
  * Determines is a password is secure enough to submit
683
- * @return {boolean}
683
+ * @returns {boolean} - returns TRUE if password is valid, FALSE if it is not.
684
684
  */
685
685
  isValid(): boolean;
686
686
  /**
687
687
  * Handles the result of check and constructs a new error object or returns an amount of points to add to the current entropy
688
688
  * @param {boolean|number} valid - Determines if the validation was failed or an amount of points if it was passed
689
689
  * @param {*} validation - Validation configuration
690
- * @param {string} value - Value which was validated
691
690
  * @param {string} message - Message which should be shown if validation was not passed
691
+ * @param {any[]} errors - The errors array (will be mutated)
692
+ * @returns {number} - Returns an amount of points to add to the current entropy
692
693
  */
693
- handleRuleCheckResult(valid: boolean | number, validation: any, message: string, errors: any): any;
694
+ handleRuleCheckResult(valid: boolean | number, validation: any, message: string, errors: any[]): number;
694
695
  performChecks(value: any): {
695
696
  charactersPoolSize: number;
696
697
  errors: any[];
697
698
  };
698
699
  /**
699
700
  * Performs checks to validate password security
700
- * @param {string} value - Suggested password
701
+ * @param {string} value - The password value to be checked.
702
+ * @returns {boolean} - Returns TRUE if password is strong enough, FALSE if it is not.
701
703
  */
702
704
  checkValidity(value: string): boolean;
703
705
  handleBlackListCheckResult(result: any, errors: any): void;
@@ -708,8 +710,9 @@ export default class PasswordStrengthAddon extends FormioAddon {
708
710
  /**
709
711
  * Finds the level which one the passed entropy suits
710
712
  * @param {number} entropy - Points of password's security
713
+ * @returns {object} - Returns the level object
711
714
  */
712
- getLevel(entropy?: number): any;
715
+ getLevel(entropy?: number): object;
713
716
  /**
714
717
  * Update the current view of the password's security indicator
715
718
  */
@@ -198,7 +198,7 @@ export default class PasswordStrengthAddon extends FormioAddon {
198
198
  }
199
199
  /**
200
200
  * Determines is a password is secure enough to submit
201
- * @return {boolean}
201
+ * @returns {boolean} - returns TRUE if password is valid, FALSE if it is not.
202
202
  */
203
203
  isValid() {
204
204
  const isValidCheck = this.settings.isValid;
@@ -215,8 +215,9 @@ export default class PasswordStrengthAddon extends FormioAddon {
215
215
  * Handles the result of check and constructs a new error object or returns an amount of points to add to the current entropy
216
216
  * @param {boolean|number} valid - Determines if the validation was failed or an amount of points if it was passed
217
217
  * @param {*} validation - Validation configuration
218
- * @param {string} value - Value which was validated
219
218
  * @param {string} message - Message which should be shown if validation was not passed
219
+ * @param {any[]} errors - The errors array (will be mutated)
220
+ * @returns {number} - Returns an amount of points to add to the current entropy
220
221
  */
221
222
  handleRuleCheckResult(valid, validation, message, errors) {
222
223
  if (valid !== true) {
@@ -256,7 +257,8 @@ export default class PasswordStrengthAddon extends FormioAddon {
256
257
  }
257
258
  /**
258
259
  * Performs checks to validate password security
259
- * @param {string} value - Suggested password
260
+ * @param {string} value - The password value to be checked.
261
+ * @returns {boolean} - Returns TRUE if password is strong enough, FALSE if it is not.
260
262
  */
261
263
  checkValidity(value) {
262
264
  const passwordLength = value.length;
@@ -354,6 +356,7 @@ export default class PasswordStrengthAddon extends FormioAddon {
354
356
  /**
355
357
  * Finds the level which one the passed entropy suits
356
358
  * @param {number} entropy - Points of password's security
359
+ * @returns {object} - Returns the level object
357
360
  */
358
361
  getLevel(entropy = this.entropy) {
359
362
  const lowestLevel = this.levels[0];
@@ -258,11 +258,11 @@ export default class Components {
258
258
  static setComponent(name: any, comp: any): void;
259
259
  /**
260
260
  * Return a path of component's value.
261
- *
262
- * @param {Object} component - The component instance.
263
- * @return {string} - The component's value path.
261
+ * @param {Component} component - The component instance.
262
+ * @returns {string} - The component's value path.
264
263
  */
265
- static getComponentPath(component: Object): string;
264
+ static getComponentPath(component: Component): string;
266
265
  static create(component: any, options: any, data: any): any;
267
266
  }
268
267
  import BaseEditForm from './_classes/component/Component.form';
268
+ import Component from './_classes/component/Component';
@@ -47,9 +47,8 @@ export default class Components {
47
47
  }
48
48
  /**
49
49
  * Return a path of component's value.
50
- *
51
- * @param {Object} component - The component instance.
52
- * @return {string} - The component's value path.
50
+ * @param {Component} component - The component instance.
51
+ * @returns {string} - The component's value path.
53
52
  */
54
53
  static getComponentPath(component) {
55
54
  let path = '';
@@ -68,6 +67,7 @@ export default class Components {
68
67
  path += component.component.key;
69
68
  return _.trim(path, '.');
70
69
  }
70
+ return path;
71
71
  }
72
72
  static create(component, options, data) {
73
73
  let comp = null;