@formio/js 5.2.3 → 5.2.4-rc.0

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 (510) hide show
  1. package/dist/formio.builder.css +161 -50
  2. package/dist/formio.builder.min.css +1 -1
  3. package/dist/formio.embed.js +1 -1
  4. package/dist/formio.embed.min.js +1 -1
  5. package/dist/formio.embed.min.js.LICENSE.txt +1 -1
  6. package/dist/formio.form.css +158 -49
  7. package/dist/formio.form.js +152 -108
  8. package/dist/formio.form.min.css +1 -1
  9. package/dist/formio.form.min.js +1 -1
  10. package/dist/formio.form.min.js.LICENSE.txt +1 -1
  11. package/dist/formio.full.css +161 -50
  12. package/dist/formio.full.js +401 -227
  13. package/dist/formio.full.min.css +1 -1
  14. package/dist/formio.full.min.js +1 -1
  15. package/dist/formio.full.min.js.LICENSE.txt +1 -1
  16. package/dist/formio.js +51 -18
  17. package/dist/formio.min.js +1 -1
  18. package/dist/formio.min.js.LICENSE.txt +1 -1
  19. package/dist/formio.utils.js +47 -14
  20. package/dist/formio.utils.min.js +1 -1
  21. package/dist/formio.utils.min.js.LICENSE.txt +1 -1
  22. package/lib/cjs/CDN.js +12 -12
  23. package/lib/cjs/Element.d.ts +3 -2
  24. package/lib/cjs/Element.js +27 -21
  25. package/lib/cjs/Embed.js +74 -40
  26. package/lib/cjs/EventEmitter.js +1 -1
  27. package/lib/cjs/Form.d.ts +371 -341
  28. package/lib/cjs/Form.js +153 -39
  29. package/lib/cjs/FormBuilder.d.ts +3 -3
  30. package/lib/cjs/FormBuilder.js +2 -3
  31. package/lib/cjs/Formio.js +26 -23
  32. package/lib/cjs/InlineEmbed.js +23 -17
  33. package/lib/cjs/PDF.d.ts +1 -0
  34. package/lib/cjs/PDF.js +18 -15
  35. package/lib/cjs/PDFBuilder.js +51 -36
  36. package/lib/cjs/Webform.d.ts +8 -366
  37. package/lib/cjs/Webform.js +176 -235
  38. package/lib/cjs/WebformBuilder.js +217 -144
  39. package/lib/cjs/Wizard.js +92 -62
  40. package/lib/cjs/WizardBuilder.js +27 -19
  41. package/lib/cjs/addons/FormioAddon.js +1 -1
  42. package/lib/cjs/addons/PasswordStrength/PasswordStrengthAddon.form.js +59 -57
  43. package/lib/cjs/addons/PasswordStrength/PasswordStrengthAddon.js +24 -16
  44. package/lib/cjs/addons/index.js +3 -3
  45. package/lib/cjs/components/Components.js +0 -4
  46. package/lib/cjs/components/_classes/component/Component.form.js +11 -11
  47. package/lib/cjs/components/_classes/component/Component.js +298 -179
  48. package/lib/cjs/components/_classes/component/editForm/Component.edit.addons.js +2 -4
  49. package/lib/cjs/components/_classes/component/editForm/Component.edit.api.js +5 -5
  50. package/lib/cjs/components/_classes/component/editForm/Component.edit.conditional.js +9 -11
  51. package/lib/cjs/components/_classes/component/editForm/Component.edit.data.d.ts +37 -0
  52. package/lib/cjs/components/_classes/component/editForm/Component.edit.data.js +39 -25
  53. package/lib/cjs/components/_classes/component/editForm/Component.edit.display.js +47 -29
  54. package/lib/cjs/components/_classes/component/editForm/Component.edit.layout.js +9 -9
  55. package/lib/cjs/components/_classes/component/editForm/Component.edit.logic.js +5 -7
  56. package/lib/cjs/components/_classes/component/editForm/Component.edit.validation.js +37 -34
  57. package/lib/cjs/components/_classes/component/editForm/utils.js +12 -16
  58. package/lib/cjs/components/_classes/componentModal/ComponentModal.js +6 -6
  59. package/lib/cjs/components/_classes/field/Field.js +7 -1
  60. package/lib/cjs/components/_classes/input/Input.js +30 -26
  61. package/lib/cjs/components/_classes/list/ListComponent.form.js +1 -1
  62. package/lib/cjs/components/_classes/list/ListComponent.js +27 -18
  63. package/lib/cjs/components/_classes/list/editForm/ListComponent.edit.data.js +36 -9
  64. package/lib/cjs/components/_classes/multivalue/Multivalue.js +32 -13
  65. package/lib/cjs/components/_classes/nested/NestedComponent.form.js +3 -3
  66. package/lib/cjs/components/_classes/nested/NestedComponent.js +36 -32
  67. package/lib/cjs/components/_classes/nestedarray/NestedArrayComponent.js +19 -14
  68. package/lib/cjs/components/_classes/nesteddata/NestedDataComponent.js +19 -17
  69. package/lib/cjs/components/address/Address.js +52 -45
  70. package/lib/cjs/components/address/editForm/Address.edit.data.js +2 -2
  71. package/lib/cjs/components/address/editForm/Address.edit.display.js +2 -2
  72. package/lib/cjs/components/address/editForm/Address.edit.provider.js +53 -11
  73. package/lib/cjs/components/alert/Alert.js +21 -15
  74. package/lib/cjs/components/button/Button.form.js +1 -1
  75. package/lib/cjs/components/button/Button.js +50 -27
  76. package/lib/cjs/components/button/editForm/Button.edit.display.js +49 -9
  77. package/lib/cjs/components/checkbox/Checkbox.d.ts +1 -1
  78. package/lib/cjs/components/checkbox/Checkbox.form.js +3 -3
  79. package/lib/cjs/components/checkbox/Checkbox.js +28 -20
  80. package/lib/cjs/components/checkbox/editForm/Checkbox.edit.data.js +1 -1
  81. package/lib/cjs/components/checkbox/editForm/Checkbox.edit.display.js +13 -3
  82. package/lib/cjs/components/checkbox/editForm/Checkbox.edit.validation.js +2 -2
  83. package/lib/cjs/components/columns/Columns.form.js +1 -1
  84. package/lib/cjs/components/columns/Columns.js +24 -12
  85. package/lib/cjs/components/columns/editForm/Columns.edit.display.js +17 -17
  86. package/lib/cjs/components/container/Container.form.js +2 -2
  87. package/lib/cjs/components/container/Container.js +6 -4
  88. package/lib/cjs/components/container/editForm/Container.edit.data.js +3 -3
  89. package/lib/cjs/components/container/editForm/Container.edit.display.js +4 -4
  90. package/lib/cjs/components/content/Content.form.js +4 -2
  91. package/lib/cjs/components/content/Content.js +10 -8
  92. package/lib/cjs/components/content/editForm/Content.edit.display.js +10 -10
  93. package/lib/cjs/components/currency/Currency.form.js +3 -3
  94. package/lib/cjs/components/currency/Currency.js +19 -10
  95. package/lib/cjs/components/currency/editForm/Currency.edit.data.js +5 -5
  96. package/lib/cjs/components/currency/editForm/Currency.edit.display.js +8 -8
  97. package/lib/cjs/components/datagrid/DataGrid.form.js +3 -3
  98. package/lib/cjs/components/datagrid/DataGrid.js +89 -38
  99. package/lib/cjs/components/datagrid/editForm/DataGrid.edit.data.js +1 -1
  100. package/lib/cjs/components/datagrid/editForm/DataGrid.edit.display.js +14 -14
  101. package/lib/cjs/components/datagrid/editForm/DataGrid.edit.validation.js +3 -3
  102. package/lib/cjs/components/datamap/DataMap.form.js +2 -2
  103. package/lib/cjs/components/datamap/DataMap.js +44 -31
  104. package/lib/cjs/components/datamap/editForm/DataMap.edit.data.js +1 -1
  105. package/lib/cjs/components/datamap/editForm/DataMap.edit.display.js +8 -8
  106. package/lib/cjs/components/datetime/DateTime.form.js +5 -5
  107. package/lib/cjs/components/datetime/DateTime.js +30 -15
  108. package/lib/cjs/components/datetime/editForm/DateTime.edit.data.js +4 -3
  109. package/lib/cjs/components/datetime/editForm/DateTime.edit.date.js +10 -10
  110. package/lib/cjs/components/datetime/editForm/DateTime.edit.display.js +22 -17
  111. package/lib/cjs/components/datetime/editForm/DateTime.edit.time.js +5 -5
  112. package/lib/cjs/components/datetime/editForm/DateTime.edit.validation.js +3 -3
  113. package/lib/cjs/components/day/Day.form.js +5 -5
  114. package/lib/cjs/components/day/Day.js +146 -56
  115. package/lib/cjs/components/day/editForm/Day.edit.day.js +13 -9
  116. package/lib/cjs/components/day/editForm/Day.edit.display.js +7 -7
  117. package/lib/cjs/components/day/editForm/Day.edit.month.js +12 -8
  118. package/lib/cjs/components/day/editForm/Day.edit.validation.js +7 -7
  119. package/lib/cjs/components/day/editForm/Day.edit.year.js +8 -8
  120. package/lib/cjs/components/editgrid/EditGrid.form.js +2 -2
  121. package/lib/cjs/components/editgrid/EditGrid.js +137 -89
  122. package/lib/cjs/components/editgrid/editForm/EditGrid.edit.data.js +2 -2
  123. package/lib/cjs/components/editgrid/editForm/EditGrid.edit.display.js +7 -2
  124. package/lib/cjs/components/editgrid/editForm/EditGrid.edit.templates.js +16 -16
  125. package/lib/cjs/components/editgrid/editForm/EditGrid.edit.validation.js +3 -3
  126. package/lib/cjs/components/email/Email.js +4 -4
  127. package/lib/cjs/components/email/editForm/Email.edit.display.js +3 -3
  128. package/lib/cjs/components/email/editForm/Email.edit.validation.js +6 -6
  129. package/lib/cjs/components/fieldset/Fieldset.form.js +1 -1
  130. package/lib/cjs/components/fieldset/Fieldset.js +2 -2
  131. package/lib/cjs/components/fieldset/editForm/Fieldset.edit.display.js +8 -8
  132. package/lib/cjs/components/file/File.form.js +4 -4
  133. package/lib/cjs/components/file/File.js +126 -80
  134. package/lib/cjs/components/file/editForm/File.edit.display.js +9 -5
  135. package/lib/cjs/components/file/editForm/File.edit.file.d.ts +37 -16
  136. package/lib/cjs/components/file/editForm/File.edit.file.js +169 -72
  137. package/lib/cjs/components/file/editForm/File.edit.validation.js +2 -2
  138. package/lib/cjs/components/form/Form.form.js +3 -3
  139. package/lib/cjs/components/form/Form.js +67 -51
  140. package/lib/cjs/components/form/editForm/Form.edit.data.js +1 -3
  141. package/lib/cjs/components/form/editForm/Form.edit.display.js +6 -7
  142. package/lib/cjs/components/form/editForm/Form.edit.form.js +11 -9
  143. package/lib/cjs/components/hidden/Hidden.form.js +4 -4
  144. package/lib/cjs/components/hidden/Hidden.js +2 -2
  145. package/lib/cjs/components/hidden/editForm/Hidden.edit.data.js +3 -3
  146. package/lib/cjs/components/hidden/editForm/Hidden.edit.display.js +10 -10
  147. package/lib/cjs/components/html/HTML.js +23 -17
  148. package/lib/cjs/components/html/editForm/HTML.edit.display.js +17 -17
  149. package/lib/cjs/components/html/editForm/HTML.edit.logic.js +2 -2
  150. package/lib/cjs/components/number/Number.form.js +3 -3
  151. package/lib/cjs/components/number/Number.js +27 -11
  152. package/lib/cjs/components/number/editForm/Number.edit.data.js +3 -3
  153. package/lib/cjs/components/number/editForm/Number.edit.display.js +4 -4
  154. package/lib/cjs/components/number/editForm/Number.edit.validation.js +9 -9
  155. package/lib/cjs/components/panel/Panel.form.js +1 -1
  156. package/lib/cjs/components/panel/Panel.js +2 -2
  157. package/lib/cjs/components/panel/editForm/Panel.edit.conditional.js +5 -7
  158. package/lib/cjs/components/panel/editForm/Panel.edit.display.js +55 -29
  159. package/lib/cjs/components/password/Password.form.js +3 -3
  160. package/lib/cjs/components/password/Password.js +5 -2
  161. package/lib/cjs/components/password/editForm/Password.edit.data.js +11 -11
  162. package/lib/cjs/components/password/editForm/Password.edit.display.js +3 -3
  163. package/lib/cjs/components/password/editForm/Password.edit.validation.js +3 -3
  164. package/lib/cjs/components/phonenumber/PhoneNumber.form.js +8 -8
  165. package/lib/cjs/components/phonenumber/PhoneNumber.js +3 -3
  166. package/lib/cjs/components/phonenumber/editForm/PhoneNumber.edit.validation.js +6 -6
  167. package/lib/cjs/components/radio/Radio.form.js +3 -3
  168. package/lib/cjs/components/radio/Radio.js +55 -26
  169. package/lib/cjs/components/radio/editForm/Radio.edit.data.js +23 -9
  170. package/lib/cjs/components/radio/editForm/Radio.edit.display.js +6 -6
  171. package/lib/cjs/components/radio/editForm/Radio.edit.validation.js +2 -2
  172. package/lib/cjs/components/recaptcha/ReCaptcha.form.js +5 -5
  173. package/lib/cjs/components/recaptcha/ReCaptcha.js +7 -5
  174. package/lib/cjs/components/recaptcha/editForm/ReCaptcha.edit.display.js +24 -24
  175. package/lib/cjs/components/select/Select.form.js +3 -3
  176. package/lib/cjs/components/select/Select.js +235 -129
  177. package/lib/cjs/components/select/editForm/Select.edit.data.d.ts +1 -1
  178. package/lib/cjs/components/select/editForm/Select.edit.data.js +191 -57
  179. package/lib/cjs/components/select/editForm/Select.edit.display.js +2 -2
  180. package/lib/cjs/components/select/editForm/Select.edit.validation.js +4 -4
  181. package/lib/cjs/components/selectboxes/SelectBoxes.form.js +3 -3
  182. package/lib/cjs/components/selectboxes/SelectBoxes.js +31 -15
  183. package/lib/cjs/components/selectboxes/editForm/SelectBoxes.edit.validation.js +5 -5
  184. package/lib/cjs/components/signature/Signature.form.js +3 -3
  185. package/lib/cjs/components/signature/Signature.js +25 -15
  186. package/lib/cjs/components/signature/editForm/Signature.edit.display.js +19 -10
  187. package/lib/cjs/components/survey/Survey.form.js +3 -3
  188. package/lib/cjs/components/survey/Survey.js +30 -17
  189. package/lib/cjs/components/survey/editForm/Survey.edit.data.js +23 -11
  190. package/lib/cjs/components/survey/editForm/Survey.edit.display.js +1 -1
  191. package/lib/cjs/components/survey/editForm/Survey.edit.validation.js +1 -1
  192. package/lib/cjs/components/table/Table.form.js +1 -1
  193. package/lib/cjs/components/table/Table.js +7 -5
  194. package/lib/cjs/components/table/editForm/Table.edit.display.js +22 -22
  195. package/lib/cjs/components/tabs/Tabs.form.js +1 -1
  196. package/lib/cjs/components/tabs/Tabs.js +26 -8
  197. package/lib/cjs/components/tabs/editForm/Tabs.edit.display.js +21 -17
  198. package/lib/cjs/components/tags/Tags.form.js +1 -1
  199. package/lib/cjs/components/tags/Tags.js +28 -12
  200. package/lib/cjs/components/tags/editForm/Tags.edit.data.js +7 -7
  201. package/lib/cjs/components/textarea/TextArea.form.js +2 -2
  202. package/lib/cjs/components/textarea/TextArea.js +63 -45
  203. package/lib/cjs/components/textarea/editForm/TextArea.edit.display.js +96 -72
  204. package/lib/cjs/components/textarea/editForm/TextArea.edit.validation.js +3 -3
  205. package/lib/cjs/components/textfield/TextField.form.js +3 -3
  206. package/lib/cjs/components/textfield/TextField.js +32 -21
  207. package/lib/cjs/components/textfield/editForm/TextField.edit.data.js +15 -13
  208. package/lib/cjs/components/textfield/editForm/TextField.edit.display.js +31 -21
  209. package/lib/cjs/components/textfield/editForm/TextField.edit.validation.js +6 -6
  210. package/lib/cjs/components/time/Time.js +17 -10
  211. package/lib/cjs/components/time/editForm/Time.edit.display.js +2 -2
  212. package/lib/cjs/components/unknown/Unknown.form.js +5 -5
  213. package/lib/cjs/components/unknown/Unknown.js +2 -2
  214. package/lib/cjs/components/unknown/editForm/Unknown.edit.display.js +3 -3
  215. package/lib/cjs/components/url/Url.form.js +3 -3
  216. package/lib/cjs/components/url/Url.js +2 -2
  217. package/lib/cjs/components/url/editForm/Url.edit.display.js +3 -3
  218. package/lib/cjs/components/url/editForm/Url.edit.validation.js +1 -1
  219. package/lib/cjs/components/well/Well.form.js +1 -1
  220. package/lib/cjs/components/well/Well.js +2 -2
  221. package/lib/cjs/components/well/editForm/Well.edit.display.js +10 -10
  222. package/lib/cjs/formio.form.d.ts +2 -1
  223. package/lib/cjs/formio.form.js +38 -12
  224. package/lib/cjs/i18n.d.ts +4 -0
  225. package/lib/cjs/i18n.js +7 -3
  226. package/lib/cjs/package.json +1 -1
  227. package/lib/cjs/providers/address/AddressProvider.js +8 -5
  228. package/lib/cjs/providers/address/GoogleAddressProvider.d.ts +3 -3
  229. package/lib/cjs/providers/address/GoogleAddressProvider.js +24 -13
  230. package/lib/cjs/providers/processor/fileProcessor.js +3 -1
  231. package/lib/cjs/providers/storage/azure.js +5 -2
  232. package/lib/cjs/providers/storage/dropbox.js +4 -5
  233. package/lib/cjs/providers/storage/googleDrive.js +3 -4
  234. package/lib/cjs/providers/storage/index.js +1 -1
  235. package/lib/cjs/providers/storage/indexeddb.js +16 -6
  236. package/lib/cjs/providers/storage/s3.js +17 -6
  237. package/lib/cjs/providers/storage/uploadAdapter.js +17 -11
  238. package/lib/cjs/providers/storage/url.js +13 -11
  239. package/lib/cjs/providers/storage/xhr.js +17 -9
  240. package/lib/cjs/templates/index.js +1 -1
  241. package/lib/cjs/translations/de.d.ts +80 -0
  242. package/lib/cjs/translations/de.js +81 -0
  243. package/lib/cjs/translations/en.d.ts +0 -2
  244. package/lib/cjs/translations/en.js +7 -9
  245. package/lib/cjs/utils/ChoicesWrapper.js +2 -2
  246. package/lib/cjs/utils/builder.js +31 -7
  247. package/lib/cjs/utils/calendarUtils.js +7 -5
  248. package/lib/cjs/utils/conditionOperators/ConditionOperator.js +1 -1
  249. package/lib/cjs/utils/conditionOperators/DateGreaterThan.js +12 -4
  250. package/lib/cjs/utils/conditionOperators/IsEmptyValue.js +3 -1
  251. package/lib/cjs/utils/conditionOperators/IsEqualTo.js +10 -6
  252. package/lib/cjs/utils/conditionOperators/index.js +1 -1
  253. package/lib/cjs/utils/formUtils.js +1 -1
  254. package/lib/cjs/utils/i18n.js +7 -1
  255. package/lib/cjs/utils/index.d.ts +2 -1
  256. package/lib/cjs/utils/index.js +2 -2
  257. package/lib/cjs/utils/utils.d.ts +10 -1
  258. package/lib/cjs/utils/utils.js +175 -92
  259. package/lib/cjs/widgets/CalendarWidget.js +66 -49
  260. package/lib/cjs/widgets/InputWidget.js +6 -4
  261. package/lib/cjs/widgets/index.js +1 -1
  262. package/lib/mjs/CDN.js +12 -12
  263. package/lib/mjs/Element.d.ts +3 -2
  264. package/lib/mjs/Element.js +27 -21
  265. package/lib/mjs/Embed.js +76 -42
  266. package/lib/mjs/EventEmitter.js +1 -1
  267. package/lib/mjs/Form.d.ts +371 -341
  268. package/lib/mjs/Form.js +142 -126
  269. package/lib/mjs/FormBuilder.d.ts +3 -3
  270. package/lib/mjs/FormBuilder.js +2 -3
  271. package/lib/mjs/Formio.js +26 -23
  272. package/lib/mjs/InlineEmbed.js +23 -17
  273. package/lib/mjs/PDF.d.ts +1 -0
  274. package/lib/mjs/PDF.js +18 -15
  275. package/lib/mjs/PDFBuilder.js +51 -36
  276. package/lib/mjs/Webform.d.ts +8 -366
  277. package/lib/mjs/Webform.js +183 -250
  278. package/lib/mjs/WebformBuilder.js +220 -147
  279. package/lib/mjs/Wizard.js +93 -63
  280. package/lib/mjs/WizardBuilder.js +27 -19
  281. package/lib/mjs/addons/FormioAddon.js +1 -1
  282. package/lib/mjs/addons/PasswordStrength/PasswordStrengthAddon.form.js +59 -57
  283. package/lib/mjs/addons/PasswordStrength/PasswordStrengthAddon.js +24 -16
  284. package/lib/mjs/addons/index.js +3 -3
  285. package/lib/mjs/components/Components.js +0 -4
  286. package/lib/mjs/components/_classes/component/Component.form.js +11 -11
  287. package/lib/mjs/components/_classes/component/Component.js +303 -184
  288. package/lib/mjs/components/_classes/component/editForm/Component.edit.addons.js +2 -4
  289. package/lib/mjs/components/_classes/component/editForm/Component.edit.api.js +5 -5
  290. package/lib/mjs/components/_classes/component/editForm/Component.edit.conditional.js +9 -11
  291. package/lib/mjs/components/_classes/component/editForm/Component.edit.data.d.ts +37 -0
  292. package/lib/mjs/components/_classes/component/editForm/Component.edit.data.js +39 -25
  293. package/lib/mjs/components/_classes/component/editForm/Component.edit.display.js +47 -29
  294. package/lib/mjs/components/_classes/component/editForm/Component.edit.layout.js +9 -9
  295. package/lib/mjs/components/_classes/component/editForm/Component.edit.logic.js +5 -7
  296. package/lib/mjs/components/_classes/component/editForm/Component.edit.validation.js +37 -34
  297. package/lib/mjs/components/_classes/component/editForm/utils.js +12 -16
  298. package/lib/mjs/components/_classes/componentModal/ComponentModal.js +2 -2
  299. package/lib/mjs/components/_classes/field/Field.js +8 -2
  300. package/lib/mjs/components/_classes/input/Input.js +27 -23
  301. package/lib/mjs/components/_classes/list/ListComponent.form.js +1 -1
  302. package/lib/mjs/components/_classes/list/ListComponent.js +27 -18
  303. package/lib/mjs/components/_classes/list/editForm/ListComponent.edit.data.js +36 -9
  304. package/lib/mjs/components/_classes/multivalue/Multivalue.js +32 -13
  305. package/lib/mjs/components/_classes/nested/NestedComponent.form.js +3 -3
  306. package/lib/mjs/components/_classes/nested/NestedComponent.js +32 -28
  307. package/lib/mjs/components/_classes/nestedarray/NestedArrayComponent.js +20 -15
  308. package/lib/mjs/components/_classes/nesteddata/NestedDataComponent.js +19 -17
  309. package/lib/mjs/components/address/Address.js +57 -46
  310. package/lib/mjs/components/address/editForm/Address.edit.data.js +2 -2
  311. package/lib/mjs/components/address/editForm/Address.edit.display.js +2 -2
  312. package/lib/mjs/components/address/editForm/Address.edit.provider.js +53 -11
  313. package/lib/mjs/components/alert/Alert.js +22 -16
  314. package/lib/mjs/components/button/Button.form.js +1 -1
  315. package/lib/mjs/components/button/Button.js +51 -28
  316. package/lib/mjs/components/button/editForm/Button.edit.display.js +49 -9
  317. package/lib/mjs/components/checkbox/Checkbox.d.ts +1 -1
  318. package/lib/mjs/components/checkbox/Checkbox.form.js +3 -3
  319. package/lib/mjs/components/checkbox/Checkbox.js +29 -21
  320. package/lib/mjs/components/checkbox/editForm/Checkbox.edit.data.js +1 -1
  321. package/lib/mjs/components/checkbox/editForm/Checkbox.edit.display.js +13 -3
  322. package/lib/mjs/components/checkbox/editForm/Checkbox.edit.validation.js +2 -2
  323. package/lib/mjs/components/columns/Columns.form.js +1 -1
  324. package/lib/mjs/components/columns/Columns.js +24 -12
  325. package/lib/mjs/components/columns/editForm/Columns.edit.display.js +17 -17
  326. package/lib/mjs/components/container/Container.form.js +2 -2
  327. package/lib/mjs/components/container/Container.js +6 -4
  328. package/lib/mjs/components/container/editForm/Container.edit.data.js +3 -3
  329. package/lib/mjs/components/container/editForm/Container.edit.display.js +4 -4
  330. package/lib/mjs/components/content/Content.form.js +4 -2
  331. package/lib/mjs/components/content/Content.js +10 -8
  332. package/lib/mjs/components/content/editForm/Content.edit.display.js +10 -10
  333. package/lib/mjs/components/currency/Currency.form.js +3 -3
  334. package/lib/mjs/components/currency/Currency.js +19 -10
  335. package/lib/mjs/components/currency/editForm/Currency.edit.data.js +5 -5
  336. package/lib/mjs/components/currency/editForm/Currency.edit.display.js +8 -8
  337. package/lib/mjs/components/datagrid/DataGrid.form.js +3 -3
  338. package/lib/mjs/components/datagrid/DataGrid.js +90 -39
  339. package/lib/mjs/components/datagrid/editForm/DataGrid.edit.data.js +1 -1
  340. package/lib/mjs/components/datagrid/editForm/DataGrid.edit.display.js +14 -14
  341. package/lib/mjs/components/datagrid/editForm/DataGrid.edit.validation.js +3 -3
  342. package/lib/mjs/components/datamap/DataMap.form.js +2 -2
  343. package/lib/mjs/components/datamap/DataMap.js +44 -31
  344. package/lib/mjs/components/datamap/editForm/DataMap.edit.data.js +1 -1
  345. package/lib/mjs/components/datamap/editForm/DataMap.edit.display.js +8 -8
  346. package/lib/mjs/components/datetime/DateTime.form.js +5 -5
  347. package/lib/mjs/components/datetime/DateTime.js +31 -16
  348. package/lib/mjs/components/datetime/editForm/DateTime.edit.data.js +4 -3
  349. package/lib/mjs/components/datetime/editForm/DateTime.edit.date.js +10 -10
  350. package/lib/mjs/components/datetime/editForm/DateTime.edit.display.js +22 -17
  351. package/lib/mjs/components/datetime/editForm/DateTime.edit.time.js +5 -5
  352. package/lib/mjs/components/datetime/editForm/DateTime.edit.validation.js +3 -3
  353. package/lib/mjs/components/day/Day.form.js +5 -5
  354. package/lib/mjs/components/day/Day.js +147 -57
  355. package/lib/mjs/components/day/editForm/Day.edit.day.js +13 -9
  356. package/lib/mjs/components/day/editForm/Day.edit.display.js +7 -7
  357. package/lib/mjs/components/day/editForm/Day.edit.month.js +12 -8
  358. package/lib/mjs/components/day/editForm/Day.edit.validation.js +7 -7
  359. package/lib/mjs/components/day/editForm/Day.edit.year.js +8 -8
  360. package/lib/mjs/components/editgrid/EditGrid.form.js +2 -2
  361. package/lib/mjs/components/editgrid/EditGrid.js +138 -90
  362. package/lib/mjs/components/editgrid/editForm/EditGrid.edit.data.js +2 -2
  363. package/lib/mjs/components/editgrid/editForm/EditGrid.edit.display.js +7 -2
  364. package/lib/mjs/components/editgrid/editForm/EditGrid.edit.templates.js +16 -16
  365. package/lib/mjs/components/editgrid/editForm/EditGrid.edit.validation.js +3 -3
  366. package/lib/mjs/components/email/Email.js +4 -4
  367. package/lib/mjs/components/email/editForm/Email.edit.display.js +3 -3
  368. package/lib/mjs/components/email/editForm/Email.edit.validation.js +6 -6
  369. package/lib/mjs/components/fieldset/Fieldset.form.js +1 -1
  370. package/lib/mjs/components/fieldset/Fieldset.js +2 -2
  371. package/lib/mjs/components/fieldset/editForm/Fieldset.edit.display.js +8 -8
  372. package/lib/mjs/components/file/File.form.js +4 -4
  373. package/lib/mjs/components/file/File.js +131 -84
  374. package/lib/mjs/components/file/editForm/File.edit.display.js +9 -5
  375. package/lib/mjs/components/file/editForm/File.edit.file.d.ts +37 -16
  376. package/lib/mjs/components/file/editForm/File.edit.file.js +169 -72
  377. package/lib/mjs/components/file/editForm/File.edit.validation.js +2 -2
  378. package/lib/mjs/components/form/Form.form.js +3 -3
  379. package/lib/mjs/components/form/Form.js +67 -51
  380. package/lib/mjs/components/form/editForm/Form.edit.data.js +1 -3
  381. package/lib/mjs/components/form/editForm/Form.edit.display.js +6 -7
  382. package/lib/mjs/components/form/editForm/Form.edit.form.js +10 -8
  383. package/lib/mjs/components/hidden/Hidden.form.js +4 -4
  384. package/lib/mjs/components/hidden/Hidden.js +2 -2
  385. package/lib/mjs/components/hidden/editForm/Hidden.edit.data.js +3 -3
  386. package/lib/mjs/components/hidden/editForm/Hidden.edit.display.js +10 -10
  387. package/lib/mjs/components/html/HTML.js +23 -17
  388. package/lib/mjs/components/html/editForm/HTML.edit.display.js +17 -17
  389. package/lib/mjs/components/html/editForm/HTML.edit.logic.js +2 -2
  390. package/lib/mjs/components/number/Number.form.js +3 -3
  391. package/lib/mjs/components/number/Number.js +28 -12
  392. package/lib/mjs/components/number/editForm/Number.edit.data.js +3 -3
  393. package/lib/mjs/components/number/editForm/Number.edit.display.js +4 -4
  394. package/lib/mjs/components/number/editForm/Number.edit.validation.js +9 -9
  395. package/lib/mjs/components/panel/Panel.form.js +1 -1
  396. package/lib/mjs/components/panel/Panel.js +2 -2
  397. package/lib/mjs/components/panel/editForm/Panel.edit.conditional.js +6 -8
  398. package/lib/mjs/components/panel/editForm/Panel.edit.display.js +55 -29
  399. package/lib/mjs/components/password/Password.form.js +3 -3
  400. package/lib/mjs/components/password/Password.js +5 -2
  401. package/lib/mjs/components/password/editForm/Password.edit.data.js +11 -11
  402. package/lib/mjs/components/password/editForm/Password.edit.display.js +3 -3
  403. package/lib/mjs/components/password/editForm/Password.edit.validation.js +3 -3
  404. package/lib/mjs/components/phonenumber/PhoneNumber.form.js +8 -8
  405. package/lib/mjs/components/phonenumber/PhoneNumber.js +3 -3
  406. package/lib/mjs/components/phonenumber/editForm/PhoneNumber.edit.validation.js +6 -6
  407. package/lib/mjs/components/radio/Radio.form.js +3 -3
  408. package/lib/mjs/components/radio/Radio.js +56 -27
  409. package/lib/mjs/components/radio/editForm/Radio.edit.data.js +23 -9
  410. package/lib/mjs/components/radio/editForm/Radio.edit.display.js +6 -6
  411. package/lib/mjs/components/radio/editForm/Radio.edit.validation.js +2 -2
  412. package/lib/mjs/components/recaptcha/ReCaptcha.form.js +5 -5
  413. package/lib/mjs/components/recaptcha/ReCaptcha.js +7 -5
  414. package/lib/mjs/components/recaptcha/editForm/ReCaptcha.edit.display.js +24 -24
  415. package/lib/mjs/components/select/Select.form.js +3 -3
  416. package/lib/mjs/components/select/Select.js +240 -134
  417. package/lib/mjs/components/select/editForm/Select.edit.data.d.ts +1 -1
  418. package/lib/mjs/components/select/editForm/Select.edit.data.js +191 -57
  419. package/lib/mjs/components/select/editForm/Select.edit.display.js +2 -2
  420. package/lib/mjs/components/select/editForm/Select.edit.validation.js +4 -4
  421. package/lib/mjs/components/selectboxes/SelectBoxes.form.js +3 -3
  422. package/lib/mjs/components/selectboxes/SelectBoxes.js +32 -16
  423. package/lib/mjs/components/selectboxes/editForm/SelectBoxes.edit.validation.js +5 -5
  424. package/lib/mjs/components/signature/Signature.form.js +3 -3
  425. package/lib/mjs/components/signature/Signature.js +25 -15
  426. package/lib/mjs/components/signature/editForm/Signature.edit.display.js +19 -10
  427. package/lib/mjs/components/survey/Survey.form.js +3 -3
  428. package/lib/mjs/components/survey/Survey.js +30 -17
  429. package/lib/mjs/components/survey/editForm/Survey.edit.data.js +23 -11
  430. package/lib/mjs/components/survey/editForm/Survey.edit.display.js +1 -1
  431. package/lib/mjs/components/survey/editForm/Survey.edit.validation.js +1 -1
  432. package/lib/mjs/components/table/Table.form.js +1 -1
  433. package/lib/mjs/components/table/Table.js +7 -5
  434. package/lib/mjs/components/table/editForm/Table.edit.display.js +22 -22
  435. package/lib/mjs/components/tabs/Tabs.form.js +1 -1
  436. package/lib/mjs/components/tabs/Tabs.js +26 -8
  437. package/lib/mjs/components/tabs/editForm/Tabs.edit.display.js +21 -17
  438. package/lib/mjs/components/tags/Tags.form.js +1 -1
  439. package/lib/mjs/components/tags/Tags.js +28 -12
  440. package/lib/mjs/components/tags/editForm/Tags.edit.data.js +7 -7
  441. package/lib/mjs/components/textarea/TextArea.form.js +2 -2
  442. package/lib/mjs/components/textarea/TextArea.js +75 -51
  443. package/lib/mjs/components/textarea/editForm/TextArea.edit.display.js +96 -72
  444. package/lib/mjs/components/textarea/editForm/TextArea.edit.validation.js +3 -3
  445. package/lib/mjs/components/textfield/TextField.form.js +3 -3
  446. package/lib/mjs/components/textfield/TextField.js +34 -23
  447. package/lib/mjs/components/textfield/editForm/TextField.edit.data.js +15 -13
  448. package/lib/mjs/components/textfield/editForm/TextField.edit.display.js +31 -21
  449. package/lib/mjs/components/textfield/editForm/TextField.edit.validation.js +6 -6
  450. package/lib/mjs/components/time/Time.js +17 -10
  451. package/lib/mjs/components/time/editForm/Time.edit.display.js +2 -2
  452. package/lib/mjs/components/unknown/Unknown.form.js +5 -5
  453. package/lib/mjs/components/unknown/Unknown.js +2 -2
  454. package/lib/mjs/components/unknown/editForm/Unknown.edit.display.js +3 -3
  455. package/lib/mjs/components/url/Url.form.js +3 -3
  456. package/lib/mjs/components/url/Url.js +2 -2
  457. package/lib/mjs/components/url/editForm/Url.edit.display.js +3 -3
  458. package/lib/mjs/components/url/editForm/Url.edit.validation.js +1 -1
  459. package/lib/mjs/components/well/Well.form.js +1 -1
  460. package/lib/mjs/components/well/Well.js +2 -2
  461. package/lib/mjs/components/well/editForm/Well.edit.display.js +10 -10
  462. package/lib/mjs/formio.form.d.ts +2 -1
  463. package/lib/mjs/formio.form.js +10 -8
  464. package/lib/mjs/i18n.d.ts +4 -0
  465. package/lib/mjs/i18n.js +7 -3
  466. package/lib/mjs/package.json +1 -1
  467. package/lib/mjs/providers/address/AddressProvider.js +8 -5
  468. package/lib/mjs/providers/address/GoogleAddressProvider.d.ts +3 -3
  469. package/lib/mjs/providers/address/GoogleAddressProvider.js +24 -13
  470. package/lib/mjs/providers/processor/fileProcessor.js +3 -1
  471. package/lib/mjs/providers/storage/azure.js +5 -2
  472. package/lib/mjs/providers/storage/dropbox.js +4 -5
  473. package/lib/mjs/providers/storage/googleDrive.js +3 -4
  474. package/lib/mjs/providers/storage/index.js +1 -1
  475. package/lib/mjs/providers/storage/indexeddb.js +16 -6
  476. package/lib/mjs/providers/storage/s3.js +19 -8
  477. package/lib/mjs/providers/storage/uploadAdapter.js +17 -11
  478. package/lib/mjs/providers/storage/url.js +13 -11
  479. package/lib/mjs/providers/storage/xhr.js +17 -9
  480. package/lib/mjs/templates/index.js +1 -1
  481. package/lib/mjs/translations/de.d.ts +80 -0
  482. package/lib/mjs/translations/de.js +79 -0
  483. package/lib/mjs/translations/en.d.ts +0 -2
  484. package/lib/mjs/translations/en.js +7 -9
  485. package/lib/mjs/utils/ChoicesWrapper.js +2 -2
  486. package/lib/mjs/utils/builder.js +31 -7
  487. package/lib/mjs/utils/calendarUtils.js +7 -5
  488. package/lib/mjs/utils/conditionOperators/ConditionOperator.js +1 -1
  489. package/lib/mjs/utils/conditionOperators/DateGreaterThan.js +16 -5
  490. package/lib/mjs/utils/conditionOperators/IsEmptyValue.js +3 -1
  491. package/lib/mjs/utils/conditionOperators/IsEqualTo.js +10 -6
  492. package/lib/mjs/utils/conditionOperators/index.js +1 -1
  493. package/lib/mjs/utils/formUtils.js +2 -2
  494. package/lib/mjs/utils/i18n.js +7 -1
  495. package/lib/mjs/utils/index.d.ts +2 -1
  496. package/lib/mjs/utils/index.js +3 -3
  497. package/lib/mjs/utils/utils.d.ts +10 -1
  498. package/lib/mjs/utils/utils.js +178 -91
  499. package/lib/mjs/widgets/CalendarWidget.js +67 -50
  500. package/lib/mjs/widgets/InputWidget.js +6 -4
  501. package/lib/mjs/widgets/index.js +1 -1
  502. package/package.json +3 -3
  503. package/lib/cjs/pdf.image.d.ts +0 -2
  504. package/lib/cjs/pdf.image.js +0 -94
  505. package/lib/cjs/utils/jsonlogic/operators.d.ts +0 -1
  506. package/lib/cjs/utils/jsonlogic/operators.js +0 -265
  507. package/lib/mjs/pdf.image.d.ts +0 -2
  508. package/lib/mjs/pdf.image.js +0 -94
  509. package/lib/mjs/utils/jsonlogic/operators.d.ts +0 -1
  510. package/lib/mjs/utils/jsonlogic/operators.js +0 -262
package/lib/cjs/Wizard.js CHANGED
@@ -35,7 +35,9 @@ class Wizard extends Webform_1.default {
35
35
  this.page = 0;
36
36
  this.currentPanel = null;
37
37
  this.currentNextPage = 0;
38
- this._seenPages = [0];
38
+ this._seenPages = [
39
+ 0,
40
+ ];
39
41
  this.subWizards = [];
40
42
  this.allPages = [];
41
43
  this.lastPromise = Promise.resolve();
@@ -53,8 +55,7 @@ class Wizard extends Webform_1.default {
53
55
  getPages(args = {}) {
54
56
  const { all = false } = args;
55
57
  const pages = this.hasSubWizards ? this.components : this.pages;
56
- const filteredPages = pages
57
- .filter(all ? lodash_1.default.identity : (p, index) => this._seenPages.includes(index));
58
+ const filteredPages = pages.filter(all ? lodash_1.default.identity : (p, index) => this._seenPages.includes(index));
58
59
  return filteredPages;
59
60
  }
60
61
  get hasSubWizards() {
@@ -79,9 +80,7 @@ class Wizard extends Webform_1.default {
79
80
  });
80
81
  }
81
82
  getComponents() {
82
- return this.submitting
83
- ? this.getPages({ all: this.isLastPage() })
84
- : super.getComponents();
83
+ return this.submitting ? this.getPages({ all: this.isLastPage() }) : super.getComponents();
85
84
  }
86
85
  resetValue() {
87
86
  this.getPages({ all: true }).forEach((page) => page.resetValue());
@@ -94,10 +93,10 @@ class Wizard extends Webform_1.default {
94
93
  showPrevious: true,
95
94
  showNext: true,
96
95
  showSubmit: true,
97
- showCancel: !this.options.readOnly
96
+ showCancel: !this.options.readOnly,
98
97
  });
99
98
  this.options.breadcrumbSettings = lodash_1.default.defaults(this.options.breadcrumbSettings, {
100
- clickable: true
99
+ clickable: true,
101
100
  });
102
101
  this.options.allowPrevious = this.options.allowPrevious || false;
103
102
  this.page = 0;
@@ -107,7 +106,7 @@ class Wizard extends Webform_1.default {
107
106
  this.component = this.pages[this.page].component;
108
107
  }
109
108
  this.on('subWizardsUpdated', (subForm) => {
110
- const subWizard = this.subWizards.find(subWizard => { var _a; return (subForm === null || subForm === void 0 ? void 0 : subForm.id) && ((_a = subWizard.subForm) === null || _a === void 0 ? void 0 : _a.id) === (subForm === null || subForm === void 0 ? void 0 : subForm.id); });
109
+ const subWizard = this.subWizards.find((subWizard) => { var _a; return (subForm === null || subForm === void 0 ? void 0 : subForm.id) && ((_a = subWizard.subForm) === null || _a === void 0 ? void 0 : _a.id) === (subForm === null || subForm === void 0 ? void 0 : subForm.id); });
111
110
  if (this.subWizards.length && subWizard) {
112
111
  subWizard.subForm.setValue(subForm._submission, {}, true);
113
112
  this.establishPages();
@@ -131,7 +130,7 @@ class Wizard extends Webform_1.default {
131
130
  { name: 'cancel', method: 'cancel' },
132
131
  { name: 'previous', method: 'prevPage' },
133
132
  { name: 'next', method: 'nextPage' },
134
- { name: 'submit', method: 'submit' }
133
+ { name: 'submit', method: 'submit' },
135
134
  ].forEach((button) => {
136
135
  if (this.hasButton(button.name)) {
137
136
  buttons[button.name] = button;
@@ -145,9 +144,9 @@ class Wizard extends Webform_1.default {
145
144
  'cancel',
146
145
  'previous',
147
146
  'next',
148
- 'submit'
147
+ 'submit',
149
148
  ];
150
- return (_c = (_b = (_a = this.options.properties) === null || _a === void 0 ? void 0 : _a.wizardButtonOrder) === null || _b === void 0 ? void 0 : _b.toLowerCase().split(', ')) !== null && _c !== void 0 ? _c : defaultButtonOrder;
149
+ return ((_c = (_b = (_a = this.options.properties) === null || _a === void 0 ? void 0 : _a.wizardButtonOrder) === null || _b === void 0 ? void 0 : _b.toLowerCase().split(', ')) !== null && _c !== void 0 ? _c : defaultButtonOrder);
151
150
  }
152
151
  get renderContext() {
153
152
  var _a, _b;
@@ -156,7 +155,9 @@ class Wizard extends Webform_1.default {
156
155
  wizardKey: this.wizardKey,
157
156
  isBreadcrumbClickable: this.isBreadcrumbClickable(),
158
157
  isSubForm: !!this.parent && !((_b = (_a = this.root) === null || _a === void 0 ? void 0 : _a.component) === null || _b === void 0 ? void 0 : _b.type) === 'wizard',
159
- panels: this.allPages.length ? this.allPages.map(page => page.component) : this.pages.map(page => page.component),
158
+ panels: this.allPages.length
159
+ ? this.allPages.map((page) => page.component)
160
+ : this.pages.map((page) => page.component),
160
161
  buttons: this.buttons,
161
162
  currentPage: this.page,
162
163
  buttonOrder: this.buttonOrder,
@@ -166,8 +167,10 @@ class Wizard extends Webform_1.default {
166
167
  const currentPanel = this.currentPanel;
167
168
  if (currentPanel && currentPanel.buttonSettings) {
168
169
  Object.keys(currentPanel.buttonSettings).forEach(() => {
169
- Object.keys(ctx.buttons).forEach(key => {
170
- if (typeof currentPanel.buttonSettings[key] !== 'undefined' && !currentPanel.buttonSettings[key] || ctx.isSubForm) {
170
+ Object.keys(ctx.buttons).forEach((key) => {
171
+ if ((typeof currentPanel.buttonSettings[key] !== 'undefined' &&
172
+ !currentPanel.buttonSettings[key]) ||
173
+ ctx.isSubForm) {
171
174
  ctx.buttons[key] = null;
172
175
  }
173
176
  });
@@ -187,7 +190,7 @@ class Wizard extends Webform_1.default {
187
190
  render() {
188
191
  const ctx = this.renderContext;
189
192
  if (this.component.id) {
190
- ctx.panels.forEach(panel => {
193
+ ctx.panels.forEach((panel) => {
191
194
  if (panel.id === this.component.id) {
192
195
  this.currentPanel = panel;
193
196
  ctx.wizardPageTooltip = this.getFormattedTooltip(panel.tooltip);
@@ -204,7 +207,7 @@ class Wizard extends Webform_1.default {
204
207
  wizardNav, components: this.renderComponents([
205
208
  ...this.prefixComps,
206
209
  ...this.currentPage.components,
207
- ...this.suffixComps
210
+ ...this.suffixComps,
208
211
  ]) }), this.builderMode ? 'builder' : 'form');
209
212
  }
210
213
  redrawNavigation() {
@@ -233,7 +236,7 @@ class Wizard extends Webform_1.default {
233
236
  headerElement = this.element.querySelector(`#${this.wizardKey}-header`);
234
237
  this.loadRefs(headerElement, {
235
238
  [`${this.wizardKey}-link`]: 'multiple',
236
- [`${this.wizardKey}-tooltip`]: 'multiple'
239
+ [`${this.wizardKey}-tooltip`]: 'multiple',
237
240
  });
238
241
  this.attachHeader();
239
242
  }
@@ -257,7 +260,7 @@ class Wizard extends Webform_1.default {
257
260
  [`${this.wizardKey}-next`]: 'single',
258
261
  [`${this.wizardKey}-submit`]: 'single',
259
262
  [`${this.wizardKey}-link`]: 'multiple',
260
- [`${this.wizardKey}-tooltip`]: 'multiple'
263
+ [`${this.wizardKey}-tooltip`]: 'multiple',
261
264
  });
262
265
  if ((this.options.readOnly || this.editMode) && !this.enabledIndex) {
263
266
  this.enabledIndex = ((_a = this.pages) === null || _a === void 0 ? void 0 : _a.length) - 1;
@@ -292,7 +295,7 @@ class Wizard extends Webform_1.default {
292
295
  }
293
296
  isBreadcrumbClickable() {
294
297
  let currentPage = null;
295
- this.pages.map(page => {
298
+ this.pages.map((page) => {
296
299
  if (lodash_1.default.isEqual(this.currentPage.component, page.component)) {
297
300
  currentPage = page;
298
301
  }
@@ -307,7 +310,7 @@ class Wizard extends Webform_1.default {
307
310
  }
308
311
  isAllowPrevious() {
309
312
  let currentPage = null;
310
- this.pages.map(page => {
313
+ this.pages.map((page) => {
311
314
  if (lodash_1.default.isEqual(this.currentPage.component, page.component)) {
312
315
  currentPage = page;
313
316
  }
@@ -355,10 +358,12 @@ class Wizard extends Webform_1.default {
355
358
  buttonElement.setAttribute('disabled', 'disabled');
356
359
  this.setLoading(buttonElement, true);
357
360
  // Call the button method, then re-enable the button.
358
- this[button.method]().then(() => {
361
+ this[button.method]()
362
+ .then(() => {
359
363
  buttonElement.removeAttribute('disabled');
360
364
  this.setLoading(buttonElement, false);
361
- }).catch(() => {
365
+ })
366
+ .catch(() => {
362
367
  buttonElement.removeAttribute('disabled');
363
368
  this.setLoading(buttonElement, false);
364
369
  });
@@ -417,15 +422,24 @@ class Wizard extends Webform_1.default {
417
422
  // Get all components including all nested components and line up in the correct order
418
423
  const getAllComponents = (nestedComp, compsArr, pushAllowed = true) => {
419
424
  const nestedPages = [];
420
- const dataArrayComponents = ['datagrid', 'editgrid', 'dynamicWizard'];
421
- const currentComponents = (nestedComp === null || nestedComp === void 0 ? void 0 : nestedComp.subForm) ? this.getSortedComponents(nestedComp.subForm) : (nestedComp === null || nestedComp === void 0 ? void 0 : nestedComp.components) || [];
422
- const visibleComponents = currentComponents.filter(comp => comp._visible);
423
- const filteredComponents = visibleComponents.filter(comp => !dataArrayComponents.includes(comp.component.type) && (comp.type !== 'form' || comp.isNestedWizard));
424
- const additionalComponents = currentComponents.filter(comp => { var _a; return ((_a = comp.subForm) === null || _a === void 0 ? void 0 : _a._form.display) !== 'wizard'; });
425
+ const dataArrayComponents = [
426
+ 'datagrid',
427
+ 'editgrid',
428
+ 'dynamicWizard',
429
+ ];
430
+ const currentComponents = (nestedComp === null || nestedComp === void 0 ? void 0 : nestedComp.subForm)
431
+ ? this.getSortedComponents(nestedComp.subForm)
432
+ : (nestedComp === null || nestedComp === void 0 ? void 0 : nestedComp.components) || [];
433
+ const visibleComponents = currentComponents.filter((comp) => comp._visible);
434
+ const filteredComponents = visibleComponents.filter((comp) => !dataArrayComponents.includes(comp.component.type) &&
435
+ (comp.type !== 'form' || comp.isNestedWizard));
436
+ const additionalComponents = currentComponents.filter((comp) => { var _a; return ((_a = comp.subForm) === null || _a === void 0 ? void 0 : _a._form.display) !== 'wizard'; });
425
437
  let hasNested = false;
426
438
  (0, utils_1.eachComponent)(filteredComponents, (comp) => {
427
439
  if (comp && comp.component) {
428
- if (comp.component.type === 'panel' && (comp === null || comp === void 0 ? void 0 : comp.parent.wizard) && !getAllComponents(comp, compsArr, false)) {
440
+ if (comp.component.type === 'panel' &&
441
+ (comp === null || comp === void 0 ? void 0 : comp.parent.wizard) &&
442
+ !getAllComponents(comp, compsArr, false)) {
429
443
  if (pushAllowed) {
430
444
  this.setRootPanelId(comp);
431
445
  nestedPages.push(comp);
@@ -474,10 +488,11 @@ class Wizard extends Webform_1.default {
474
488
  this.allPages = allComponents;
475
489
  }
476
490
  getSortedComponents({ components, originalComponents }) {
491
+ // sorts components if they were shuffled after the conditional logic
477
492
  const currentComponents = [];
478
493
  const currentPages = [];
479
494
  if (components && components.length) {
480
- components.map(page => {
495
+ components.map((page) => {
481
496
  if (page.component.type === 'panel') {
482
497
  currentPages[page.component.key || page.component.title] = page;
483
498
  }
@@ -511,9 +526,9 @@ class Wizard extends Webform_1.default {
511
526
  this.suffixComps = [];
512
527
  const visible = [];
513
528
  const currentPages = {};
514
- const pageOptions = Object.assign(Object.assign({}, (lodash_1.default.clone(this.options))), (this.parent ? { root: this } : {}));
529
+ const pageOptions = Object.assign(Object.assign({}, lodash_1.default.clone(this.options)), (this.parent ? { root: this } : {}));
515
530
  if (this.components && this.components.length) {
516
- this.components.forEach(page => {
531
+ this.components.forEach((page) => {
517
532
  if (page.component.type === 'panel') {
518
533
  currentPages[page.component.key || page.component.title] = page;
519
534
  }
@@ -548,7 +563,7 @@ class Wizard extends Webform_1.default {
548
563
  page.visible = isVisible;
549
564
  this.pages.push(page);
550
565
  page.eachComponent((component) => {
551
- component.page = (this.pages.length - 1);
566
+ component.page = this.pages.length - 1;
552
567
  });
553
568
  }
554
569
  }
@@ -590,7 +605,7 @@ class Wizard extends Webform_1.default {
590
605
  const pageFromPages = this.pages[num];
591
606
  const pageFromComponents = this.components[num];
592
607
  if (!pageFromComponents || (pageFromPages === null || pageFromPages === void 0 ? void 0 : pageFromPages.id) !== pageFromComponents.id) {
593
- parentNum = this.components.findIndex(comp => {
608
+ parentNum = this.components.findIndex((comp) => {
594
609
  var _a, _b;
595
610
  return comp.id === ((_b = (_a = this.pages) === null || _a === void 0 ? void 0 : _a[parentNum]) === null || _b === void 0 ? void 0 : _b.rootPanelId);
596
611
  });
@@ -602,7 +617,9 @@ class Wizard extends Webform_1.default {
602
617
  return this.redraw().then(() => {
603
618
  this.checkData(this.submission.data);
604
619
  this.triggerCaptcha(this.currentPage.components);
605
- const errors = this.submitted ? this.validate(this.localData, { dirty: true }) : this.validateCurrentPage();
620
+ const errors = this.submitted
621
+ ? this.validate(this.localData, { dirty: true })
622
+ : this.validateCurrentPage();
606
623
  if (this.alert) {
607
624
  this.showErrors(errors, true, true);
608
625
  }
@@ -626,7 +643,9 @@ class Wizard extends Webform_1.default {
626
643
  }
627
644
  }
628
645
  get currentPage() {
629
- return (this.pages && (this.pages.length >= this.page)) ? this.pages[this.page] : { components: [] };
646
+ return this.pages && this.pages.length >= this.page
647
+ ? this.pages[this.page]
648
+ : { components: [] };
630
649
  }
631
650
  getNextPage() {
632
651
  var _a;
@@ -635,13 +654,13 @@ class Wizard extends Webform_1.default {
635
654
  const form = this.pages[this.page].component;
636
655
  // Check conditional nextPage
637
656
  if (form) {
638
- const page = this.pages.length > (this.page + 1) && !this.showAllErrors ? this.page + 1 : -1;
657
+ const page = this.pages.length > this.page + 1 && !this.showAllErrors ? this.page + 1 : -1;
639
658
  if (form.nextPage) {
640
659
  const next = this.evaluate(form.nextPage, {
641
660
  next: page,
642
661
  data,
643
662
  page,
644
- form
663
+ form,
645
664
  }, 'next');
646
665
  if (next === null) {
647
666
  this.currentNextPage = null;
@@ -704,7 +723,9 @@ class Wizard extends Webform_1.default {
704
723
  }
705
724
  // Validate the form before going to the next page
706
725
  const currentPageErrors = this.validateCurrentPage({ dirty: true });
707
- const errors = this.submitted ? this.validate(this.localData, { dirty: true }) : currentPageErrors;
726
+ const errors = this.submitted
727
+ ? this.validate(this.localData, { dirty: true })
728
+ : currentPageErrors;
708
729
  // allow going to the next page if the current page is valid, even if there are form level errors
709
730
  if (currentPageErrors.length === 0) {
710
731
  this.checkData(this.submission.data);
@@ -778,14 +799,14 @@ class Wizard extends Webform_1.default {
778
799
  this.originalComponents = [];
779
800
  this.component.components.map((item) => {
780
801
  if (item.type === 'panel') {
781
- item.key = (0, utils_1.uniqueKey)(pageKeys, (item.key || 'panel'));
802
+ item.key = (0, utils_1.uniqueKey)(pageKeys, item.key || 'panel');
782
803
  pageKeys[item.key] = true;
783
804
  if (this.wizard.full) {
784
805
  this.options.show = this.options.show || {};
785
806
  this.options.show[item.key] = true;
786
807
  }
787
- else if (Object.prototype.hasOwnProperty.call(this.wizard, 'full')
788
- && !lodash_1.default.isEqual(this.originalOptions.show, this.options.show)) {
808
+ else if (Object.prototype.hasOwnProperty.call(this.wizard, 'full') &&
809
+ !lodash_1.default.isEqual(this.originalOptions.show, this.options.show)) {
789
810
  this.options.show = Object.assign({}, (this.originalOptions.show || {}));
790
811
  }
791
812
  }
@@ -797,9 +818,11 @@ class Wizard extends Webform_1.default {
797
818
  title: 'Page 1',
798
819
  label: 'Page 1',
799
820
  key: 'page1',
800
- components: this.component.components
821
+ components: this.component.components,
801
822
  };
802
- this.component.components = [newPage];
823
+ this.component.components = [
824
+ newPage,
825
+ ];
803
826
  this.originalComponents.push(lodash_1.default.clone(newPage));
804
827
  }
805
828
  }
@@ -810,7 +833,8 @@ class Wizard extends Webform_1.default {
810
833
  return super.setForm(form, flags);
811
834
  }
812
835
  onSetForm(clonedForm, initialForm) {
813
- this.component.components = (this.parent ? initialForm.components : clonedForm.components) || [];
836
+ this.component.components =
837
+ (this.parent ? initialForm.components : clonedForm.components) || [];
814
838
  this.setComponentSchema();
815
839
  }
816
840
  setEditMode(submission) {
@@ -841,23 +865,26 @@ class Wizard extends Webform_1.default {
841
865
  return changed;
842
866
  }
843
867
  isClickable(page, index) {
844
- return this.page !== index && (0, utils_1.firstNonNil)([
845
- lodash_1.default.get(page, 'breadcrumbClickable'),
846
- this.options.breadcrumbSettings.clickable
847
- ]);
868
+ return (this.page !== index &&
869
+ (0, utils_1.firstNonNil)([
870
+ lodash_1.default.get(page, 'breadcrumbClickable'),
871
+ this.options.breadcrumbSettings.clickable,
872
+ ]));
848
873
  }
849
874
  hasButton(name, nextPage = this.getNextPage()) {
850
875
  // get page options with global options as default values
851
- const { previous = this.options.buttonSettings.showPrevious, cancel = this.options.buttonSettings.showCancel, submit = this.options.buttonSettings.showSubmit, next = this.options.buttonSettings.showNext } = lodash_1.default.get(this.currentPage, 'component.buttonSettings', {});
876
+ const { previous = this.options.buttonSettings.showPrevious, cancel = this.options.buttonSettings.showCancel, submit = this.options.buttonSettings.showSubmit, next = this.options.buttonSettings.showNext, } = lodash_1.default.get(this.currentPage, 'component.buttonSettings', {});
852
877
  switch (name) {
853
878
  case 'previous':
854
- return previous && (this.getPreviousPage() > -1);
879
+ return previous && this.getPreviousPage() > -1;
855
880
  case 'next':
856
- return next && (nextPage !== null) && (nextPage !== -1);
881
+ return next && nextPage !== null && nextPage !== -1;
857
882
  case 'cancel':
858
883
  return cancel && !this.options.readOnly;
859
884
  case 'submit':
860
- return submit && !this.options.readOnly && ((nextPage === null) || (this.page === (this.pages.length - 1)));
885
+ return (submit &&
886
+ !this.options.readOnly &&
887
+ (nextPage === null || this.page === this.pages.length - 1));
861
888
  default:
862
889
  return true;
863
890
  }
@@ -867,8 +894,7 @@ class Wizard extends Webform_1.default {
867
894
  // Some panels have the same key....
868
895
  return `${page.key}-${page.title}`;
869
896
  }
870
- else if (page.components &&
871
- page.components.length > 0) {
897
+ else if (page.components && page.components.length > 0) {
872
898
  return this.pageId(page.components[0]);
873
899
  }
874
900
  else {
@@ -879,7 +905,11 @@ class Wizard extends Webform_1.default {
879
905
  var _a;
880
906
  super.onChange(flags, changed, modified, changes);
881
907
  // The onChange loop doesn't need all components for wizards
882
- const errors = this.submitted ? this.validate(this.localData, { dirty: true }) : this.validateCurrentPage();
908
+ const errors = (flags === null || flags === void 0 ? void 0 : flags.noValidate)
909
+ ? []
910
+ : this.submitted
911
+ ? this.validate(this.localData, { dirty: true })
912
+ : this.validateCurrentPage();
883
913
  if (this.alert) {
884
914
  this.showErrors(errors, true, true);
885
915
  }
@@ -890,8 +920,10 @@ class Wizard extends Webform_1.default {
890
920
  const newPanels = this.pages;
891
921
  const currentNextPage = this.currentNextPage;
892
922
  const panelsUpdated = !lodash_1.default.isEqual(newPanels, currentPanels);
893
- if (((_a = this.currentPanel) === null || _a === void 0 ? void 0 : _a.id) && this.pages.length && (!this.hasSubWizards || (this.hasSubWizards && panelsUpdated))) {
894
- const newIndex = this.pages.findIndex(page => page.id === this.currentPanel.id);
923
+ if (((_a = this.currentPanel) === null || _a === void 0 ? void 0 : _a.id) &&
924
+ this.pages.length &&
925
+ (!this.hasSubWizards || (this.hasSubWizards && panelsUpdated))) {
926
+ const newIndex = this.pages.findIndex((page) => page.id === this.currentPanel.id);
895
927
  if (newIndex !== -1)
896
928
  this.setPage(newIndex);
897
929
  }
@@ -916,9 +948,7 @@ class Wizard extends Webform_1.default {
916
948
  this.setCustomValidity('');
917
949
  return true;
918
950
  }
919
- const components = !currentPageOnly || this.isLastPage()
920
- ? this.getComponents()
921
- : this.currentPage.components;
951
+ const components = !currentPageOnly || this.isLastPage() ? this.getComponents() : this.currentPage.components;
922
952
  return components.reduce((check, comp) => comp.checkValidity(data, dirty, row, currentPageOnly, childErrors) && check, true);
923
953
  }
924
954
  get errors() {
@@ -931,7 +961,7 @@ class Wizard extends Webform_1.default {
931
961
  while (!(topPanel.parent instanceof Wizard)) {
932
962
  topPanel = topPanel.parent;
933
963
  }
934
- const pageIndex = this.pages.findIndex(page => page.id === topPanel.id);
964
+ const pageIndex = this.pages.findIndex((page) => page.id === topPanel.id);
935
965
  if (pageIndex >= 0) {
936
966
  const page = this.pages[pageIndex];
937
967
  if (page && page !== this.currentPage) {
@@ -32,10 +32,10 @@ class WizardBuilder extends WebformBuilder_1.default {
32
32
  for (const group in this.groups) {
33
33
  if (this.groups[group] && this.groups[group].components) {
34
34
  this.groups[group].componentOrder = Object.keys(this.groups[group].components)
35
- .map(key => this.groups[group].components[key])
36
- .filter(component => component && !component.ignore)
35
+ .map((key) => this.groups[group].components[key])
36
+ .filter((component) => component && !component.ignore)
37
37
  .sort((a, b) => a.weight - b.weight)
38
- .map(component => component.key);
38
+ .map((component) => component.key);
39
39
  }
40
40
  }
41
41
  const originalRenderComponentsHook = this.options.hooks.renderComponents;
@@ -88,14 +88,16 @@ class WizardBuilder extends WebformBuilder_1.default {
88
88
  return remove;
89
89
  }
90
90
  allowDrop(element) {
91
- return (this.webform && this.webform.refs && this.webform.refs.webform === element) ? false : true;
91
+ return this.webform && this.webform.refs && this.webform.refs.webform === element
92
+ ? false
93
+ : true;
92
94
  }
93
95
  get pages() {
94
96
  return lodash_1.default.filter(this._form.components, { type: 'panel' });
95
97
  }
96
98
  get currentPage() {
97
99
  const pages = this.pages;
98
- return (pages && (pages.length >= this.page)) ? pages[this.page] : null;
100
+ return pages && pages.length >= this.page ? pages[this.page] : null;
99
101
  }
100
102
  setForm(value) {
101
103
  this._form = value;
@@ -104,11 +106,12 @@ class WizardBuilder extends WebformBuilder_1.default {
104
106
  }
105
107
  if (this.pages.length === 0) {
106
108
  const components = this._form.components.filter((component) => component.type !== 'button');
107
- this._form.components = [this.getPageConfig(1, components)];
109
+ this._form.components = [
110
+ this.getPageConfig(1, components),
111
+ ];
108
112
  }
109
113
  else {
110
- const components = this._form.components
111
- .filter((component) => component.type !== 'button' || component.action !== 'submit');
114
+ const components = this._form.components.filter((component) => component.type !== 'button' || component.action !== 'submit');
112
115
  this._form.components = components;
113
116
  }
114
117
  this.rebuild();
@@ -139,7 +142,7 @@ class WizardBuilder extends WebformBuilder_1.default {
139
142
  group,
140
143
  groupKey: group.key,
141
144
  groupId: `group-container-${groupKey}`,
142
- subgroups: []
145
+ subgroups: [],
143
146
  })),
144
147
  })),
145
148
  }),
@@ -156,13 +159,14 @@ class WizardBuilder extends WebformBuilder_1.default {
156
159
  page.parentNode.dragInfo = { index };
157
160
  });
158
161
  if (this.dragulaLib) {
159
- this.navigationDragula = this.dragulaLib([this.element.querySelector('.wizard-pages')], {
160
- moves: (el) => (!el.classList.contains('wizard-add-page')),
162
+ this.navigationDragula = this.dragulaLib([
163
+ this.element.querySelector('.wizard-pages'),
164
+ ], {
165
+ moves: (el) => !el.classList.contains('wizard-add-page'),
161
166
  accepts: (el, target, source, sibling) => (sibling ? true : false),
162
- })
163
- .on('drop', this.onReorder.bind(this));
167
+ }).on('drop', this.onReorder.bind(this));
164
168
  }
165
- this.refs.addPage.forEach(link => {
169
+ this.refs.addPage.forEach((link) => {
166
170
  this.addEventListener(link, 'click', (event) => {
167
171
  event.preventDefault();
168
172
  this.addPage();
@@ -189,8 +193,12 @@ class WizardBuilder extends WebformBuilder_1.default {
189
193
  this.webform.setForm({
190
194
  display: 'form',
191
195
  type: 'form',
192
- components: page ? [page] : [],
193
- controller: ((_a = this._form) === null || _a === void 0 ? void 0 : _a.controller) || ''
196
+ components: page
197
+ ? [
198
+ page,
199
+ ]
200
+ : [],
201
+ controller: ((_a = this._form) === null || _a === void 0 ? void 0 : _a.controller) || '',
194
202
  }, { keepAsReference: true });
195
203
  return this.redraw();
196
204
  }
@@ -198,7 +206,7 @@ class WizardBuilder extends WebformBuilder_1.default {
198
206
  const newPage = page && page.schema ? (0, utils_1.fastCloneDeep)(page.schema) : this.getPageConfig(this.pages.length + 1);
199
207
  builder_1.default.uniquify(this._form.components, newPage);
200
208
  this._form.components.push(newPage);
201
- this.emitSaveComponentEvent(newPage, newPage, this._form, 'components', (this._form.components.length - 1), true, newPage);
209
+ this.emitSaveComponentEvent(newPage, newPage, this._form, 'components', this._form.components.length - 1, true, newPage);
202
210
  this.emit('change', this._form);
203
211
  return this.rebuild();
204
212
  }
@@ -228,7 +236,7 @@ class WizardBuilder extends WebformBuilder_1.default {
228
236
  }
229
237
  const oldPosition = element.dragInfo.index;
230
238
  //should drop at next sibling position; no next sibling means drop to last position
231
- const newPosition = (sibling && sibling.dragInfo ? sibling.dragInfo.index : this.pages.length);
239
+ const newPosition = sibling && sibling.dragInfo ? sibling.dragInfo.index : this.pages.length;
232
240
  const movedBelow = newPosition > oldPosition;
233
241
  const formComponents = (0, utils_1.fastCloneDeep)(this._form.components);
234
242
  const draggedRowData = this._form.components[oldPosition];
@@ -261,7 +269,7 @@ class WizardBuilder extends WebformBuilder_1.default {
261
269
  if (component instanceof WizardBuilder) {
262
270
  return;
263
271
  }
264
- if (this._form.components.find(comp => lodash_1.default.isEqual(component.component, comp))) {
272
+ if (this._form.components.find((comp) => lodash_1.default.isEqual(component.component, comp))) {
265
273
  this.addPage(component);
266
274
  }
267
275
  else {
@@ -12,7 +12,7 @@ class FormioAddon extends Element_1.default {
12
12
  name: 'formioAddon',
13
13
  components: [],
14
14
  label: 'Formio Addon',
15
- defaultSettings: {}
15
+ defaultSettings: {},
16
16
  };
17
17
  }
18
18
  get defaultSettings() {