@formio/js 5.2.4-rc.0 → 5.2.5

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 (512) hide show
  1. package/dist/formio.builder.css +50 -161
  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 +49 -158
  7. package/dist/formio.form.js +108 -152
  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 +50 -161
  12. package/dist/formio.full.js +227 -401
  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 +18 -51
  17. package/dist/formio.min.js +1 -1
  18. package/dist/formio.min.js.LICENSE.txt +1 -1
  19. package/dist/formio.utils.js +14 -47
  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 +2 -3
  24. package/lib/cjs/Element.js +26 -29
  25. package/lib/cjs/Embed.js +42 -75
  26. package/lib/cjs/EventEmitter.js +1 -1
  27. package/lib/cjs/Form.d.ts +341 -371
  28. package/lib/cjs/Form.js +39 -153
  29. package/lib/cjs/FormBuilder.d.ts +3 -3
  30. package/lib/cjs/FormBuilder.js +3 -2
  31. package/lib/cjs/Formio.js +23 -26
  32. package/lib/cjs/InlineEmbed.js +17 -23
  33. package/lib/cjs/PDF.d.ts +0 -1
  34. package/lib/cjs/PDF.js +15 -18
  35. package/lib/cjs/PDFBuilder.js +36 -51
  36. package/lib/cjs/Webform.d.ts +366 -8
  37. package/lib/cjs/Webform.js +238 -177
  38. package/lib/cjs/WebformBuilder.js +152 -221
  39. package/lib/cjs/Wizard.js +65 -95
  40. package/lib/cjs/WizardBuilder.js +19 -27
  41. package/lib/cjs/addons/FormioAddon.js +1 -1
  42. package/lib/cjs/addons/PasswordStrength/PasswordStrengthAddon.form.js +57 -59
  43. package/lib/cjs/addons/PasswordStrength/PasswordStrengthAddon.js +16 -24
  44. package/lib/cjs/addons/index.js +3 -3
  45. package/lib/cjs/components/Components.js +4 -0
  46. package/lib/cjs/components/_classes/component/Component.form.js +11 -11
  47. package/lib/cjs/components/_classes/component/Component.js +198 -309
  48. package/lib/cjs/components/_classes/component/editForm/Component.edit.addons.js +4 -2
  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 +11 -9
  51. package/lib/cjs/components/_classes/component/editForm/Component.edit.data.d.ts +0 -37
  52. package/lib/cjs/components/_classes/component/editForm/Component.edit.data.js +25 -39
  53. package/lib/cjs/components/_classes/component/editForm/Component.edit.display.js +29 -47
  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 +7 -5
  56. package/lib/cjs/components/_classes/component/editForm/Component.edit.validation.js +34 -37
  57. package/lib/cjs/components/_classes/component/editForm/utils.js +16 -12
  58. package/lib/cjs/components/_classes/componentModal/ComponentModal.js +6 -6
  59. package/lib/cjs/components/_classes/field/Field.js +1 -7
  60. package/lib/cjs/components/_classes/input/Input.js +26 -30
  61. package/lib/cjs/components/_classes/list/ListComponent.form.js +1 -1
  62. package/lib/cjs/components/_classes/list/ListComponent.js +18 -27
  63. package/lib/cjs/components/_classes/list/editForm/ListComponent.edit.data.js +9 -36
  64. package/lib/cjs/components/_classes/multivalue/Multivalue.js +13 -32
  65. package/lib/cjs/components/_classes/nested/NestedComponent.d.ts +1 -1
  66. package/lib/cjs/components/_classes/nested/NestedComponent.form.js +3 -3
  67. package/lib/cjs/components/_classes/nested/NestedComponent.js +75 -67
  68. package/lib/cjs/components/_classes/nestedarray/NestedArrayComponent.js +14 -19
  69. package/lib/cjs/components/_classes/nesteddata/NestedDataComponent.js +17 -19
  70. package/lib/cjs/components/address/Address.d.ts +0 -1
  71. package/lib/cjs/components/address/Address.js +52 -57
  72. package/lib/cjs/components/address/editForm/Address.edit.data.js +2 -2
  73. package/lib/cjs/components/address/editForm/Address.edit.display.js +2 -2
  74. package/lib/cjs/components/address/editForm/Address.edit.provider.js +11 -53
  75. package/lib/cjs/components/alert/Alert.js +15 -21
  76. package/lib/cjs/components/button/Button.form.js +1 -1
  77. package/lib/cjs/components/button/Button.js +47 -64
  78. package/lib/cjs/components/button/editForm/Button.edit.display.js +9 -49
  79. package/lib/cjs/components/checkbox/Checkbox.d.ts +1 -1
  80. package/lib/cjs/components/checkbox/Checkbox.form.js +3 -3
  81. package/lib/cjs/components/checkbox/Checkbox.js +20 -28
  82. package/lib/cjs/components/checkbox/editForm/Checkbox.edit.data.js +1 -1
  83. package/lib/cjs/components/checkbox/editForm/Checkbox.edit.display.js +3 -13
  84. package/lib/cjs/components/checkbox/editForm/Checkbox.edit.validation.js +2 -2
  85. package/lib/cjs/components/columns/Columns.form.js +1 -1
  86. package/lib/cjs/components/columns/Columns.js +12 -24
  87. package/lib/cjs/components/columns/editForm/Columns.edit.display.js +17 -17
  88. package/lib/cjs/components/container/Container.form.js +2 -2
  89. package/lib/cjs/components/container/Container.js +4 -6
  90. package/lib/cjs/components/container/editForm/Container.edit.data.js +3 -3
  91. package/lib/cjs/components/container/editForm/Container.edit.display.js +4 -4
  92. package/lib/cjs/components/content/Content.form.js +2 -4
  93. package/lib/cjs/components/content/Content.js +8 -10
  94. package/lib/cjs/components/content/editForm/Content.edit.display.js +10 -10
  95. package/lib/cjs/components/currency/Currency.form.js +3 -3
  96. package/lib/cjs/components/currency/Currency.js +10 -19
  97. package/lib/cjs/components/currency/editForm/Currency.edit.data.js +5 -5
  98. package/lib/cjs/components/currency/editForm/Currency.edit.display.js +8 -8
  99. package/lib/cjs/components/datagrid/DataGrid.form.js +3 -3
  100. package/lib/cjs/components/datagrid/DataGrid.js +42 -92
  101. package/lib/cjs/components/datagrid/editForm/DataGrid.edit.data.js +1 -1
  102. package/lib/cjs/components/datagrid/editForm/DataGrid.edit.display.js +14 -14
  103. package/lib/cjs/components/datagrid/editForm/DataGrid.edit.validation.js +3 -3
  104. package/lib/cjs/components/datamap/DataMap.form.js +2 -2
  105. package/lib/cjs/components/datamap/DataMap.js +35 -46
  106. package/lib/cjs/components/datamap/editForm/DataMap.edit.data.js +1 -1
  107. package/lib/cjs/components/datamap/editForm/DataMap.edit.display.js +8 -8
  108. package/lib/cjs/components/datetime/DateTime.form.js +5 -5
  109. package/lib/cjs/components/datetime/DateTime.js +15 -30
  110. package/lib/cjs/components/datetime/editForm/DateTime.edit.data.js +3 -4
  111. package/lib/cjs/components/datetime/editForm/DateTime.edit.date.js +10 -10
  112. package/lib/cjs/components/datetime/editForm/DateTime.edit.display.js +17 -22
  113. package/lib/cjs/components/datetime/editForm/DateTime.edit.time.js +5 -5
  114. package/lib/cjs/components/datetime/editForm/DateTime.edit.validation.js +3 -3
  115. package/lib/cjs/components/day/Day.form.js +5 -5
  116. package/lib/cjs/components/day/Day.js +58 -147
  117. package/lib/cjs/components/day/editForm/Day.edit.day.js +9 -13
  118. package/lib/cjs/components/day/editForm/Day.edit.display.js +7 -7
  119. package/lib/cjs/components/day/editForm/Day.edit.month.js +8 -12
  120. package/lib/cjs/components/day/editForm/Day.edit.validation.js +7 -7
  121. package/lib/cjs/components/day/editForm/Day.edit.year.js +8 -8
  122. package/lib/cjs/components/editgrid/EditGrid.form.js +2 -2
  123. package/lib/cjs/components/editgrid/EditGrid.js +96 -142
  124. package/lib/cjs/components/editgrid/editForm/EditGrid.edit.data.js +2 -2
  125. package/lib/cjs/components/editgrid/editForm/EditGrid.edit.display.js +2 -7
  126. package/lib/cjs/components/editgrid/editForm/EditGrid.edit.templates.js +16 -16
  127. package/lib/cjs/components/editgrid/editForm/EditGrid.edit.validation.js +3 -3
  128. package/lib/cjs/components/email/Email.js +4 -4
  129. package/lib/cjs/components/email/editForm/Email.edit.display.js +3 -3
  130. package/lib/cjs/components/email/editForm/Email.edit.validation.js +6 -6
  131. package/lib/cjs/components/fieldset/Fieldset.form.js +1 -1
  132. package/lib/cjs/components/fieldset/Fieldset.js +2 -2
  133. package/lib/cjs/components/fieldset/editForm/Fieldset.edit.display.js +8 -8
  134. package/lib/cjs/components/file/File.form.js +4 -4
  135. package/lib/cjs/components/file/File.js +90 -131
  136. package/lib/cjs/components/file/editForm/File.edit.display.js +5 -9
  137. package/lib/cjs/components/file/editForm/File.edit.file.js +53 -97
  138. package/lib/cjs/components/file/editForm/File.edit.validation.js +2 -2
  139. package/lib/cjs/components/form/Form.form.js +3 -3
  140. package/lib/cjs/components/form/Form.js +58 -68
  141. package/lib/cjs/components/form/editForm/Form.edit.data.js +3 -1
  142. package/lib/cjs/components/form/editForm/Form.edit.display.js +7 -6
  143. package/lib/cjs/components/form/editForm/Form.edit.form.js +9 -11
  144. package/lib/cjs/components/hidden/Hidden.form.js +4 -4
  145. package/lib/cjs/components/hidden/Hidden.js +2 -2
  146. package/lib/cjs/components/hidden/editForm/Hidden.edit.data.js +3 -3
  147. package/lib/cjs/components/hidden/editForm/Hidden.edit.display.js +10 -10
  148. package/lib/cjs/components/html/HTML.js +17 -23
  149. package/lib/cjs/components/html/editForm/HTML.edit.display.js +17 -17
  150. package/lib/cjs/components/html/editForm/HTML.edit.logic.js +2 -2
  151. package/lib/cjs/components/number/Number.form.js +3 -3
  152. package/lib/cjs/components/number/Number.js +11 -27
  153. package/lib/cjs/components/number/editForm/Number.edit.data.js +3 -3
  154. package/lib/cjs/components/number/editForm/Number.edit.display.js +4 -4
  155. package/lib/cjs/components/number/editForm/Number.edit.validation.js +9 -9
  156. package/lib/cjs/components/panel/Panel.form.js +1 -1
  157. package/lib/cjs/components/panel/Panel.js +2 -2
  158. package/lib/cjs/components/panel/editForm/Panel.edit.conditional.js +7 -5
  159. package/lib/cjs/components/panel/editForm/Panel.edit.display.js +29 -55
  160. package/lib/cjs/components/password/Password.form.js +3 -3
  161. package/lib/cjs/components/password/Password.js +2 -5
  162. package/lib/cjs/components/password/editForm/Password.edit.data.js +11 -11
  163. package/lib/cjs/components/password/editForm/Password.edit.display.js +3 -3
  164. package/lib/cjs/components/password/editForm/Password.edit.validation.js +3 -3
  165. package/lib/cjs/components/phonenumber/PhoneNumber.form.js +8 -8
  166. package/lib/cjs/components/phonenumber/PhoneNumber.js +3 -3
  167. package/lib/cjs/components/phonenumber/editForm/PhoneNumber.edit.validation.js +6 -6
  168. package/lib/cjs/components/radio/Radio.form.js +3 -3
  169. package/lib/cjs/components/radio/Radio.js +32 -58
  170. package/lib/cjs/components/radio/editForm/Radio.edit.data.js +9 -23
  171. package/lib/cjs/components/radio/editForm/Radio.edit.display.js +6 -6
  172. package/lib/cjs/components/radio/editForm/Radio.edit.validation.js +2 -2
  173. package/lib/cjs/components/recaptcha/ReCaptcha.form.js +5 -5
  174. package/lib/cjs/components/recaptcha/ReCaptcha.js +10 -10
  175. package/lib/cjs/components/recaptcha/editForm/ReCaptcha.edit.display.js +24 -24
  176. package/lib/cjs/components/select/Select.form.js +3 -3
  177. package/lib/cjs/components/select/Select.js +140 -235
  178. package/lib/cjs/components/select/editForm/Select.edit.data.d.ts +1 -1
  179. package/lib/cjs/components/select/editForm/Select.edit.data.js +57 -191
  180. package/lib/cjs/components/select/editForm/Select.edit.display.js +2 -2
  181. package/lib/cjs/components/select/editForm/Select.edit.validation.js +4 -4
  182. package/lib/cjs/components/selectboxes/SelectBoxes.form.js +3 -3
  183. package/lib/cjs/components/selectboxes/SelectBoxes.js +16 -29
  184. package/lib/cjs/components/selectboxes/editForm/SelectBoxes.edit.validation.js +5 -5
  185. package/lib/cjs/components/signature/Signature.form.js +3 -3
  186. package/lib/cjs/components/signature/Signature.js +17 -26
  187. package/lib/cjs/components/signature/editForm/Signature.edit.display.js +10 -19
  188. package/lib/cjs/components/survey/Survey.form.js +3 -3
  189. package/lib/cjs/components/survey/Survey.js +17 -30
  190. package/lib/cjs/components/survey/editForm/Survey.edit.data.js +11 -23
  191. package/lib/cjs/components/survey/editForm/Survey.edit.display.js +1 -1
  192. package/lib/cjs/components/survey/editForm/Survey.edit.validation.js +1 -1
  193. package/lib/cjs/components/table/Table.form.js +1 -1
  194. package/lib/cjs/components/table/Table.js +7 -8
  195. package/lib/cjs/components/table/editForm/Table.edit.display.js +22 -22
  196. package/lib/cjs/components/tabs/Tabs.form.js +1 -1
  197. package/lib/cjs/components/tabs/Tabs.js +10 -27
  198. package/lib/cjs/components/tabs/editForm/Tabs.edit.display.js +17 -21
  199. package/lib/cjs/components/tags/Tags.form.js +1 -1
  200. package/lib/cjs/components/tags/Tags.js +12 -28
  201. package/lib/cjs/components/tags/editForm/Tags.edit.data.js +7 -7
  202. package/lib/cjs/components/textarea/TextArea.form.js +2 -2
  203. package/lib/cjs/components/textarea/TextArea.js +45 -63
  204. package/lib/cjs/components/textarea/editForm/TextArea.edit.display.js +72 -96
  205. package/lib/cjs/components/textarea/editForm/TextArea.edit.validation.js +3 -3
  206. package/lib/cjs/components/textfield/TextField.form.js +3 -3
  207. package/lib/cjs/components/textfield/TextField.js +21 -32
  208. package/lib/cjs/components/textfield/editForm/TextField.edit.data.js +13 -15
  209. package/lib/cjs/components/textfield/editForm/TextField.edit.display.js +21 -31
  210. package/lib/cjs/components/textfield/editForm/TextField.edit.validation.js +6 -6
  211. package/lib/cjs/components/time/Time.js +10 -17
  212. package/lib/cjs/components/time/editForm/Time.edit.display.js +2 -2
  213. package/lib/cjs/components/unknown/Unknown.form.js +5 -5
  214. package/lib/cjs/components/unknown/Unknown.js +2 -2
  215. package/lib/cjs/components/unknown/editForm/Unknown.edit.display.js +3 -3
  216. package/lib/cjs/components/url/Url.form.js +3 -3
  217. package/lib/cjs/components/url/Url.js +2 -2
  218. package/lib/cjs/components/url/editForm/Url.edit.display.js +3 -3
  219. package/lib/cjs/components/url/editForm/Url.edit.validation.js +1 -1
  220. package/lib/cjs/components/well/Well.form.js +1 -1
  221. package/lib/cjs/components/well/Well.js +2 -2
  222. package/lib/cjs/components/well/editForm/Well.edit.display.js +10 -10
  223. package/lib/cjs/formio.form.d.ts +1 -2
  224. package/lib/cjs/formio.form.js +12 -38
  225. package/lib/cjs/i18n.d.ts +0 -4
  226. package/lib/cjs/i18n.js +3 -7
  227. package/lib/cjs/package.json +1 -1
  228. package/lib/cjs/pdf.image.d.ts +2 -0
  229. package/lib/cjs/pdf.image.js +94 -0
  230. package/lib/cjs/providers/address/AddressProvider.js +5 -8
  231. package/lib/cjs/providers/address/GoogleAddressProvider.d.ts +3 -3
  232. package/lib/cjs/providers/address/GoogleAddressProvider.js +13 -24
  233. package/lib/cjs/providers/processor/fileProcessor.js +1 -3
  234. package/lib/cjs/providers/storage/azure.js +2 -5
  235. package/lib/cjs/providers/storage/dropbox.js +5 -4
  236. package/lib/cjs/providers/storage/googleDrive.js +4 -3
  237. package/lib/cjs/providers/storage/index.js +1 -1
  238. package/lib/cjs/providers/storage/indexeddb.js +6 -16
  239. package/lib/cjs/providers/storage/s3.js +6 -17
  240. package/lib/cjs/providers/storage/uploadAdapter.js +11 -17
  241. package/lib/cjs/providers/storage/url.js +11 -13
  242. package/lib/cjs/providers/storage/xhr.js +9 -17
  243. package/lib/cjs/templates/index.js +1 -1
  244. package/lib/cjs/translations/en.d.ts +2 -0
  245. package/lib/cjs/translations/en.js +9 -7
  246. package/lib/cjs/utils/ChoicesWrapper.js +2 -2
  247. package/lib/cjs/utils/builder.js +7 -31
  248. package/lib/cjs/utils/calendarUtils.js +5 -7
  249. package/lib/cjs/utils/conditionOperators/ConditionOperator.js +1 -1
  250. package/lib/cjs/utils/conditionOperators/DateGreaterThan.js +4 -12
  251. package/lib/cjs/utils/conditionOperators/IsEmptyValue.js +1 -3
  252. package/lib/cjs/utils/conditionOperators/IsEqualTo.js +6 -10
  253. package/lib/cjs/utils/conditionOperators/index.js +1 -1
  254. package/lib/cjs/utils/formUtils.js +1 -1
  255. package/lib/cjs/utils/i18n.js +1 -7
  256. package/lib/cjs/utils/index.d.ts +1 -2
  257. package/lib/cjs/utils/index.js +2 -2
  258. package/lib/cjs/utils/jsonlogic/operators.d.ts +1 -0
  259. package/lib/cjs/utils/jsonlogic/operators.js +265 -0
  260. package/lib/cjs/utils/utils.d.ts +1 -10
  261. package/lib/cjs/utils/utils.js +92 -175
  262. package/lib/cjs/widgets/CalendarWidget.js +49 -66
  263. package/lib/cjs/widgets/InputWidget.js +4 -6
  264. package/lib/cjs/widgets/index.js +1 -1
  265. package/lib/mjs/CDN.js +12 -12
  266. package/lib/mjs/Element.d.ts +2 -3
  267. package/lib/mjs/Element.js +23 -29
  268. package/lib/mjs/Embed.js +43 -77
  269. package/lib/mjs/EventEmitter.js +1 -1
  270. package/lib/mjs/Form.d.ts +341 -371
  271. package/lib/mjs/Form.js +126 -142
  272. package/lib/mjs/FormBuilder.d.ts +3 -3
  273. package/lib/mjs/FormBuilder.js +3 -2
  274. package/lib/mjs/Formio.js +23 -26
  275. package/lib/mjs/InlineEmbed.js +17 -23
  276. package/lib/mjs/PDF.d.ts +0 -1
  277. package/lib/mjs/PDF.js +15 -18
  278. package/lib/mjs/PDFBuilder.js +36 -51
  279. package/lib/mjs/Webform.d.ts +366 -8
  280. package/lib/mjs/Webform.js +251 -184
  281. package/lib/mjs/WebformBuilder.js +151 -224
  282. package/lib/mjs/Wizard.js +64 -94
  283. package/lib/mjs/WizardBuilder.js +19 -27
  284. package/lib/mjs/addons/FormioAddon.js +1 -1
  285. package/lib/mjs/addons/PasswordStrength/PasswordStrengthAddon.form.js +57 -59
  286. package/lib/mjs/addons/PasswordStrength/PasswordStrengthAddon.js +16 -24
  287. package/lib/mjs/addons/index.js +3 -3
  288. package/lib/mjs/components/Components.js +4 -0
  289. package/lib/mjs/components/_classes/component/Component.form.js +11 -11
  290. package/lib/mjs/components/_classes/component/Component.js +194 -313
  291. package/lib/mjs/components/_classes/component/editForm/Component.edit.addons.js +4 -2
  292. package/lib/mjs/components/_classes/component/editForm/Component.edit.api.js +5 -5
  293. package/lib/mjs/components/_classes/component/editForm/Component.edit.conditional.js +11 -9
  294. package/lib/mjs/components/_classes/component/editForm/Component.edit.data.d.ts +0 -37
  295. package/lib/mjs/components/_classes/component/editForm/Component.edit.data.js +25 -39
  296. package/lib/mjs/components/_classes/component/editForm/Component.edit.display.js +29 -47
  297. package/lib/mjs/components/_classes/component/editForm/Component.edit.layout.js +9 -9
  298. package/lib/mjs/components/_classes/component/editForm/Component.edit.logic.js +7 -5
  299. package/lib/mjs/components/_classes/component/editForm/Component.edit.validation.js +34 -37
  300. package/lib/mjs/components/_classes/component/editForm/utils.js +16 -12
  301. package/lib/mjs/components/_classes/componentModal/ComponentModal.js +2 -2
  302. package/lib/mjs/components/_classes/field/Field.js +2 -8
  303. package/lib/mjs/components/_classes/input/Input.js +23 -27
  304. package/lib/mjs/components/_classes/list/ListComponent.form.js +1 -1
  305. package/lib/mjs/components/_classes/list/ListComponent.js +18 -27
  306. package/lib/mjs/components/_classes/list/editForm/ListComponent.edit.data.js +9 -36
  307. package/lib/mjs/components/_classes/multivalue/Multivalue.js +13 -32
  308. package/lib/mjs/components/_classes/nested/NestedComponent.d.ts +1 -1
  309. package/lib/mjs/components/_classes/nested/NestedComponent.form.js +3 -3
  310. package/lib/mjs/components/_classes/nested/NestedComponent.js +33 -41
  311. package/lib/mjs/components/_classes/nestedarray/NestedArrayComponent.js +15 -20
  312. package/lib/mjs/components/_classes/nesteddata/NestedDataComponent.js +17 -19
  313. package/lib/mjs/components/address/Address.d.ts +0 -1
  314. package/lib/mjs/components/address/Address.js +49 -60
  315. package/lib/mjs/components/address/editForm/Address.edit.data.js +2 -2
  316. package/lib/mjs/components/address/editForm/Address.edit.display.js +2 -2
  317. package/lib/mjs/components/address/editForm/Address.edit.provider.js +11 -53
  318. package/lib/mjs/components/alert/Alert.js +16 -22
  319. package/lib/mjs/components/button/Button.form.js +1 -1
  320. package/lib/mjs/components/button/Button.js +42 -65
  321. package/lib/mjs/components/button/editForm/Button.edit.display.js +9 -49
  322. package/lib/mjs/components/checkbox/Checkbox.d.ts +1 -1
  323. package/lib/mjs/components/checkbox/Checkbox.form.js +3 -3
  324. package/lib/mjs/components/checkbox/Checkbox.js +21 -29
  325. package/lib/mjs/components/checkbox/editForm/Checkbox.edit.data.js +1 -1
  326. package/lib/mjs/components/checkbox/editForm/Checkbox.edit.display.js +3 -13
  327. package/lib/mjs/components/checkbox/editForm/Checkbox.edit.validation.js +2 -2
  328. package/lib/mjs/components/columns/Columns.form.js +1 -1
  329. package/lib/mjs/components/columns/Columns.js +12 -24
  330. package/lib/mjs/components/columns/editForm/Columns.edit.display.js +17 -17
  331. package/lib/mjs/components/container/Container.form.js +2 -2
  332. package/lib/mjs/components/container/Container.js +4 -6
  333. package/lib/mjs/components/container/editForm/Container.edit.data.js +3 -3
  334. package/lib/mjs/components/container/editForm/Container.edit.display.js +4 -4
  335. package/lib/mjs/components/content/Content.form.js +2 -4
  336. package/lib/mjs/components/content/Content.js +8 -10
  337. package/lib/mjs/components/content/editForm/Content.edit.display.js +10 -10
  338. package/lib/mjs/components/currency/Currency.form.js +3 -3
  339. package/lib/mjs/components/currency/Currency.js +10 -19
  340. package/lib/mjs/components/currency/editForm/Currency.edit.data.js +5 -5
  341. package/lib/mjs/components/currency/editForm/Currency.edit.display.js +8 -8
  342. package/lib/mjs/components/datagrid/DataGrid.form.js +3 -3
  343. package/lib/mjs/components/datagrid/DataGrid.js +41 -92
  344. package/lib/mjs/components/datagrid/editForm/DataGrid.edit.data.js +1 -1
  345. package/lib/mjs/components/datagrid/editForm/DataGrid.edit.display.js +14 -14
  346. package/lib/mjs/components/datagrid/editForm/DataGrid.edit.validation.js +3 -3
  347. package/lib/mjs/components/datamap/DataMap.form.js +2 -2
  348. package/lib/mjs/components/datamap/DataMap.js +33 -46
  349. package/lib/mjs/components/datamap/editForm/DataMap.edit.data.js +1 -1
  350. package/lib/mjs/components/datamap/editForm/DataMap.edit.display.js +8 -8
  351. package/lib/mjs/components/datetime/DateTime.form.js +5 -5
  352. package/lib/mjs/components/datetime/DateTime.js +16 -31
  353. package/lib/mjs/components/datetime/editForm/DateTime.edit.data.js +3 -4
  354. package/lib/mjs/components/datetime/editForm/DateTime.edit.date.js +10 -10
  355. package/lib/mjs/components/datetime/editForm/DateTime.edit.display.js +17 -22
  356. package/lib/mjs/components/datetime/editForm/DateTime.edit.time.js +5 -5
  357. package/lib/mjs/components/datetime/editForm/DateTime.edit.validation.js +3 -3
  358. package/lib/mjs/components/day/Day.form.js +5 -5
  359. package/lib/mjs/components/day/Day.js +58 -148
  360. package/lib/mjs/components/day/editForm/Day.edit.day.js +9 -13
  361. package/lib/mjs/components/day/editForm/Day.edit.display.js +7 -7
  362. package/lib/mjs/components/day/editForm/Day.edit.month.js +8 -12
  363. package/lib/mjs/components/day/editForm/Day.edit.validation.js +7 -7
  364. package/lib/mjs/components/day/editForm/Day.edit.year.js +8 -8
  365. package/lib/mjs/components/editgrid/EditGrid.form.js +2 -2
  366. package/lib/mjs/components/editgrid/EditGrid.js +92 -140
  367. package/lib/mjs/components/editgrid/editForm/EditGrid.edit.data.js +2 -2
  368. package/lib/mjs/components/editgrid/editForm/EditGrid.edit.display.js +2 -7
  369. package/lib/mjs/components/editgrid/editForm/EditGrid.edit.templates.js +16 -16
  370. package/lib/mjs/components/editgrid/editForm/EditGrid.edit.validation.js +3 -3
  371. package/lib/mjs/components/email/Email.js +4 -4
  372. package/lib/mjs/components/email/editForm/Email.edit.display.js +3 -3
  373. package/lib/mjs/components/email/editForm/Email.edit.validation.js +6 -6
  374. package/lib/mjs/components/fieldset/Fieldset.form.js +1 -1
  375. package/lib/mjs/components/fieldset/Fieldset.js +2 -2
  376. package/lib/mjs/components/fieldset/editForm/Fieldset.edit.display.js +8 -8
  377. package/lib/mjs/components/file/File.form.js +4 -4
  378. package/lib/mjs/components/file/File.js +89 -136
  379. package/lib/mjs/components/file/editForm/File.edit.display.js +5 -9
  380. package/lib/mjs/components/file/editForm/File.edit.file.js +53 -97
  381. package/lib/mjs/components/file/editForm/File.edit.validation.js +2 -2
  382. package/lib/mjs/components/form/Form.form.js +3 -3
  383. package/lib/mjs/components/form/Form.js +55 -68
  384. package/lib/mjs/components/form/editForm/Form.edit.data.js +3 -1
  385. package/lib/mjs/components/form/editForm/Form.edit.display.js +7 -6
  386. package/lib/mjs/components/form/editForm/Form.edit.form.js +8 -10
  387. package/lib/mjs/components/hidden/Hidden.form.js +4 -4
  388. package/lib/mjs/components/hidden/Hidden.js +2 -2
  389. package/lib/mjs/components/hidden/editForm/Hidden.edit.data.js +3 -3
  390. package/lib/mjs/components/hidden/editForm/Hidden.edit.display.js +10 -10
  391. package/lib/mjs/components/html/HTML.js +17 -23
  392. package/lib/mjs/components/html/editForm/HTML.edit.display.js +17 -17
  393. package/lib/mjs/components/html/editForm/HTML.edit.logic.js +2 -2
  394. package/lib/mjs/components/number/Number.form.js +3 -3
  395. package/lib/mjs/components/number/Number.js +12 -28
  396. package/lib/mjs/components/number/editForm/Number.edit.data.js +3 -3
  397. package/lib/mjs/components/number/editForm/Number.edit.display.js +4 -4
  398. package/lib/mjs/components/number/editForm/Number.edit.validation.js +9 -9
  399. package/lib/mjs/components/panel/Panel.form.js +1 -1
  400. package/lib/mjs/components/panel/Panel.js +2 -2
  401. package/lib/mjs/components/panel/editForm/Panel.edit.conditional.js +8 -6
  402. package/lib/mjs/components/panel/editForm/Panel.edit.display.js +29 -55
  403. package/lib/mjs/components/password/Password.form.js +3 -3
  404. package/lib/mjs/components/password/Password.js +2 -5
  405. package/lib/mjs/components/password/editForm/Password.edit.data.js +11 -11
  406. package/lib/mjs/components/password/editForm/Password.edit.display.js +3 -3
  407. package/lib/mjs/components/password/editForm/Password.edit.validation.js +3 -3
  408. package/lib/mjs/components/phonenumber/PhoneNumber.form.js +8 -8
  409. package/lib/mjs/components/phonenumber/PhoneNumber.js +3 -3
  410. package/lib/mjs/components/phonenumber/editForm/PhoneNumber.edit.validation.js +6 -6
  411. package/lib/mjs/components/radio/Radio.form.js +3 -3
  412. package/lib/mjs/components/radio/Radio.js +30 -59
  413. package/lib/mjs/components/radio/editForm/Radio.edit.data.js +9 -23
  414. package/lib/mjs/components/radio/editForm/Radio.edit.display.js +6 -6
  415. package/lib/mjs/components/radio/editForm/Radio.edit.validation.js +2 -2
  416. package/lib/mjs/components/recaptcha/ReCaptcha.form.js +5 -5
  417. package/lib/mjs/components/recaptcha/ReCaptcha.js +8 -10
  418. package/lib/mjs/components/recaptcha/editForm/ReCaptcha.edit.display.js +24 -24
  419. package/lib/mjs/components/select/Select.form.js +3 -3
  420. package/lib/mjs/components/select/Select.js +145 -240
  421. package/lib/mjs/components/select/editForm/Select.edit.data.d.ts +1 -1
  422. package/lib/mjs/components/select/editForm/Select.edit.data.js +57 -191
  423. package/lib/mjs/components/select/editForm/Select.edit.display.js +2 -2
  424. package/lib/mjs/components/select/editForm/Select.edit.validation.js +4 -4
  425. package/lib/mjs/components/selectboxes/SelectBoxes.form.js +3 -3
  426. package/lib/mjs/components/selectboxes/SelectBoxes.js +16 -30
  427. package/lib/mjs/components/selectboxes/editForm/SelectBoxes.edit.validation.js +5 -5
  428. package/lib/mjs/components/signature/Signature.form.js +3 -3
  429. package/lib/mjs/components/signature/Signature.js +16 -26
  430. package/lib/mjs/components/signature/editForm/Signature.edit.display.js +10 -19
  431. package/lib/mjs/components/survey/Survey.form.js +3 -3
  432. package/lib/mjs/components/survey/Survey.js +17 -30
  433. package/lib/mjs/components/survey/editForm/Survey.edit.data.js +11 -23
  434. package/lib/mjs/components/survey/editForm/Survey.edit.display.js +1 -1
  435. package/lib/mjs/components/survey/editForm/Survey.edit.validation.js +1 -1
  436. package/lib/mjs/components/table/Table.form.js +1 -1
  437. package/lib/mjs/components/table/Table.js +6 -8
  438. package/lib/mjs/components/table/editForm/Table.edit.display.js +22 -22
  439. package/lib/mjs/components/tabs/Tabs.form.js +1 -1
  440. package/lib/mjs/components/tabs/Tabs.js +9 -27
  441. package/lib/mjs/components/tabs/editForm/Tabs.edit.display.js +17 -21
  442. package/lib/mjs/components/tags/Tags.form.js +1 -1
  443. package/lib/mjs/components/tags/Tags.js +12 -28
  444. package/lib/mjs/components/tags/editForm/Tags.edit.data.js +7 -7
  445. package/lib/mjs/components/textarea/TextArea.form.js +2 -2
  446. package/lib/mjs/components/textarea/TextArea.js +51 -75
  447. package/lib/mjs/components/textarea/editForm/TextArea.edit.display.js +72 -96
  448. package/lib/mjs/components/textarea/editForm/TextArea.edit.validation.js +3 -3
  449. package/lib/mjs/components/textfield/TextField.form.js +3 -3
  450. package/lib/mjs/components/textfield/TextField.js +23 -34
  451. package/lib/mjs/components/textfield/editForm/TextField.edit.data.js +13 -15
  452. package/lib/mjs/components/textfield/editForm/TextField.edit.display.js +21 -31
  453. package/lib/mjs/components/textfield/editForm/TextField.edit.validation.js +6 -6
  454. package/lib/mjs/components/time/Time.js +10 -17
  455. package/lib/mjs/components/time/editForm/Time.edit.display.js +2 -2
  456. package/lib/mjs/components/unknown/Unknown.form.js +5 -5
  457. package/lib/mjs/components/unknown/Unknown.js +2 -2
  458. package/lib/mjs/components/unknown/editForm/Unknown.edit.display.js +3 -3
  459. package/lib/mjs/components/url/Url.form.js +3 -3
  460. package/lib/mjs/components/url/Url.js +2 -2
  461. package/lib/mjs/components/url/editForm/Url.edit.display.js +3 -3
  462. package/lib/mjs/components/url/editForm/Url.edit.validation.js +1 -1
  463. package/lib/mjs/components/well/Well.form.js +1 -1
  464. package/lib/mjs/components/well/Well.js +2 -2
  465. package/lib/mjs/components/well/editForm/Well.edit.display.js +10 -10
  466. package/lib/mjs/formio.form.d.ts +1 -2
  467. package/lib/mjs/formio.form.js +8 -10
  468. package/lib/mjs/i18n.d.ts +0 -4
  469. package/lib/mjs/i18n.js +3 -7
  470. package/lib/mjs/package.json +1 -1
  471. package/lib/mjs/pdf.image.d.ts +2 -0
  472. package/lib/mjs/pdf.image.js +94 -0
  473. package/lib/mjs/providers/address/AddressProvider.js +5 -8
  474. package/lib/mjs/providers/address/GoogleAddressProvider.d.ts +3 -3
  475. package/lib/mjs/providers/address/GoogleAddressProvider.js +13 -24
  476. package/lib/mjs/providers/processor/fileProcessor.js +1 -3
  477. package/lib/mjs/providers/storage/azure.js +2 -5
  478. package/lib/mjs/providers/storage/dropbox.js +5 -4
  479. package/lib/mjs/providers/storage/googleDrive.js +4 -3
  480. package/lib/mjs/providers/storage/index.js +1 -1
  481. package/lib/mjs/providers/storage/indexeddb.js +6 -16
  482. package/lib/mjs/providers/storage/s3.js +8 -19
  483. package/lib/mjs/providers/storage/uploadAdapter.js +11 -17
  484. package/lib/mjs/providers/storage/url.js +11 -13
  485. package/lib/mjs/providers/storage/xhr.js +9 -17
  486. package/lib/mjs/templates/index.js +1 -1
  487. package/lib/mjs/translations/en.d.ts +2 -0
  488. package/lib/mjs/translations/en.js +9 -7
  489. package/lib/mjs/utils/ChoicesWrapper.js +2 -2
  490. package/lib/mjs/utils/builder.js +7 -31
  491. package/lib/mjs/utils/calendarUtils.js +5 -7
  492. package/lib/mjs/utils/conditionOperators/ConditionOperator.js +1 -1
  493. package/lib/mjs/utils/conditionOperators/DateGreaterThan.js +5 -16
  494. package/lib/mjs/utils/conditionOperators/IsEmptyValue.js +1 -3
  495. package/lib/mjs/utils/conditionOperators/IsEqualTo.js +6 -10
  496. package/lib/mjs/utils/conditionOperators/index.js +1 -1
  497. package/lib/mjs/utils/formUtils.js +2 -2
  498. package/lib/mjs/utils/i18n.js +1 -7
  499. package/lib/mjs/utils/index.d.ts +1 -2
  500. package/lib/mjs/utils/index.js +3 -3
  501. package/lib/mjs/utils/jsonlogic/operators.d.ts +1 -0
  502. package/lib/mjs/utils/jsonlogic/operators.js +262 -0
  503. package/lib/mjs/utils/utils.d.ts +1 -10
  504. package/lib/mjs/utils/utils.js +91 -178
  505. package/lib/mjs/widgets/CalendarWidget.js +50 -67
  506. package/lib/mjs/widgets/InputWidget.js +4 -6
  507. package/lib/mjs/widgets/index.js +1 -1
  508. package/package.json +3 -3
  509. package/lib/cjs/translations/de.d.ts +0 -80
  510. package/lib/cjs/translations/de.js +0 -81
  511. package/lib/mjs/translations/de.d.ts +0 -80
  512. package/lib/mjs/translations/de.js +0 -79
@@ -9,13 +9,11 @@ export default class RadioComponent extends ListComponent {
9
9
  inputType: 'radio',
10
10
  label: 'Radio',
11
11
  key: 'radio',
12
- values: [
13
- { label: '', value: '' },
14
- ],
12
+ values: [{ label: '', value: '' }],
15
13
  data: {
16
14
  url: '',
17
15
  },
18
- fieldSet: false,
16
+ fieldSet: false
19
17
  }, ...extend);
20
18
  }
21
19
  static get builderInfo() {
@@ -25,7 +23,7 @@ export default class RadioComponent extends ListComponent {
25
23
  icon: 'dot-circle-o',
26
24
  weight: 80,
27
25
  documentation: '/userguide/form-building/form-components#radio',
28
- schema: RadioComponent.schema(),
26
+ schema: RadioComponent.schema()
29
27
  };
30
28
  }
31
29
  static get conditionOperatorsSettings() {
@@ -41,13 +39,13 @@ export default class RadioComponent extends ListComponent {
41
39
  dataType: classComp.dataType || '',
42
40
  data: {
43
41
  custom: `values = ${classComp && classComp.values ? JSON.stringify(classComp.values) : []}`,
44
- },
42
+ }
45
43
  }
46
44
  : {
47
45
  ...classComp,
48
46
  type: 'select',
49
47
  };
50
- },
48
+ }
51
49
  };
52
50
  }
53
51
  static get serverConditionSettings() {
@@ -61,23 +59,12 @@ export default class RadioComponent extends ListComponent {
61
59
  return types;
62
60
  }
63
61
  if (dataType === 'object') {
64
- return [
65
- object,
66
- array,
67
- ];
62
+ return [object, array];
68
63
  }
69
64
  if (componentValueTypes[dataType]) {
70
- return [
71
- componentValueTypes[dataType],
72
- ];
65
+ return [componentValueTypes[dataType]];
73
66
  }
74
- return [
75
- boolean,
76
- string,
77
- number,
78
- object,
79
- array,
80
- ];
67
+ return [boolean, string, number, object, array];
81
68
  }
82
69
  constructor(component, options, data) {
83
70
  super(component, options, data);
@@ -98,7 +85,7 @@ export default class RadioComponent extends ListComponent {
98
85
  this.setValue(this.emptyValue, {
99
86
  noUpdateEvent: true,
100
87
  noValidate: true,
101
- resetValue: true,
88
+ resetValue: true
102
89
  });
103
90
  }
104
91
  get inputInfo() {
@@ -162,7 +149,7 @@ export default class RadioComponent extends ListComponent {
162
149
  this.getTemplateKeys();
163
150
  }
164
151
  beforeSubmit() {
165
- return new Promise((res) => {
152
+ return new Promise(res => {
166
153
  this.dataReady.then(() => res(true));
167
154
  });
168
155
  }
@@ -195,14 +182,11 @@ export default class RadioComponent extends ListComponent {
195
182
  dataValue = _.toString(this.dataValue);
196
183
  }
197
184
  if (this.isSelectURL && _.isObject(this.loadedOptions[index].value)) {
198
- const optionValue = this.component.dataType === 'string'
199
- ? JSON.stringify(this.loadedOptions[index].value)
200
- : this.loadedOptions[index].value;
185
+ const optionValue = this.component.dataType === 'string' ? JSON.stringify(this.loadedOptions[index].value) : this.loadedOptions[index].value;
201
186
  input.checked = _.isEqual(optionValue, this.dataValue);
202
187
  }
203
188
  else {
204
- input.checked =
205
- dataValue === input.value && (input.value || this.component.dataSrc !== 'url');
189
+ input.checked = (dataValue === input.value && (input.value || this.component.dataSrc !== 'url'));
206
190
  }
207
191
  this.addEventListener(input, 'keyup', (event) => {
208
192
  if (event.key === ' ' && dataValue === input.value) {
@@ -236,10 +220,9 @@ export default class RadioComponent extends ListComponent {
236
220
  let value = this.component.inputType === 'checkbox' ? '' : this.dataValue;
237
221
  this.refs.input.forEach((input, index) => {
238
222
  if (input.checked) {
239
- value =
240
- this.isSelectURL && _.isObject(this.loadedOptions[index].value)
241
- ? this.loadedOptions[index].value
242
- : input.value;
223
+ value = (this.isSelectURL && _.isObject(this.loadedOptions[index].value)) ?
224
+ this.loadedOptions[index].value :
225
+ input.value;
243
226
  }
244
227
  });
245
228
  return value;
@@ -256,8 +239,7 @@ export default class RadioComponent extends ListComponent {
256
239
  }
257
240
  const values = this.component.dataSrc === 'values' ? this.component.values : this.loadedOptions;
258
241
  if (values) {
259
- return (values.findIndex(({ value: optionValue }) => this.normalizeValue(optionValue) === value) !==
260
- -1);
242
+ return values.findIndex(({ value: optionValue }) => this.normalizeValue(optionValue) === value) !== -1;
261
243
  }
262
244
  return false;
263
245
  }
@@ -268,18 +250,15 @@ export default class RadioComponent extends ListComponent {
268
250
  else if (!_.isString(value)) {
269
251
  value = _.toString(value);
270
252
  }
271
- const shouldUseSelectData = (options.modalPreview || this.inDataTable) &&
272
- this.component.dataSrc === 'url' &&
273
- (this.loadedOptions.length || this.selectData);
253
+ const shouldUseSelectData = (options.modalPreview || this.inDataTable)
254
+ && this.component.dataSrc === 'url' && (this.loadedOptions.length || this.selectData);
274
255
  if (this.component.dataSrc !== 'values' && !shouldUseSelectData) {
275
256
  return value;
276
257
  }
277
258
  const values = shouldUseSelectData ? this.loadedOptions : this.component.values;
278
- const option = !values?.length && shouldUseSelectData
279
- ? {
280
- label: this.itemTemplate(this.selectData),
281
- }
282
- : _.find(values, (v) => v.value === value);
259
+ const option = !values?.length && shouldUseSelectData ? {
260
+ label: this.itemTemplate(this.selectData),
261
+ } : _.find(values, (v) => v.value === value);
283
262
  if (!value) {
284
263
  return _.get(option, 'label', '');
285
264
  }
@@ -288,7 +267,7 @@ export default class RadioComponent extends ListComponent {
288
267
  setValueAt(index, value) {
289
268
  if (this.refs.input && this.refs.input[index] && value !== null && value !== undefined) {
290
269
  const inputValue = this.refs.input[index].value;
291
- this.refs.input[index].checked = inputValue === value.toString();
270
+ this.refs.input[index].checked = (inputValue === value.toString());
292
271
  }
293
272
  }
294
273
  get shouldLoad() {
@@ -322,7 +301,7 @@ export default class RadioComponent extends ListComponent {
322
301
  search,
323
302
  limit,
324
303
  skip,
325
- page: Math.abs(Math.floor(skip / limit)),
304
+ page: Math.abs(Math.floor(skip / limit))
326
305
  }), this.shouldSanitizeValue);
327
306
  // Set ignoreCache if it is
328
307
  options.ignoreCache = this.component.ignoreCache;
@@ -345,7 +324,7 @@ export default class RadioComponent extends ListComponent {
345
324
  loadItemsFromMetadata() {
346
325
  this.listData.forEach((item, i) => {
347
326
  this.loadedOptions[i] = {
348
- label: this.itemTemplate(item),
327
+ label: this.itemTemplate(item)
349
328
  };
350
329
  if (_.isEqual(item, this.selectData || _.pick(this.dataValue, _.keys(item)))) {
351
330
  this.loadedOptions[i].value = this.dataValue;
@@ -360,9 +339,7 @@ export default class RadioComponent extends ListComponent {
360
339
  const valueAtProperty = _.get(item, this.component.valueProperty);
361
340
  this.loadedOptions[i] = {
362
341
  value: this.component.valueProperty ? valueAtProperty : item,
363
- label: this.component.valueProperty
364
- ? this.itemTemplate(item, valueAtProperty)
365
- : this.itemTemplate(item, item, i),
342
+ label: this.component.valueProperty ? this.itemTemplate(item, valueAtProperty) : this.itemTemplate(item, item, i)
366
343
  };
367
344
  listData.push(this.templateData[this.component.valueProperty ? valueAtProperty : i]);
368
345
  const value = this.loadedOptions[i].value;
@@ -371,7 +348,7 @@ export default class RadioComponent extends ListComponent {
371
348
  }
372
349
  });
373
350
  if (this.isSelectURL) {
374
- const submission = this.root.submission;
351
+ const submission = this.root?.submission;
375
352
  if (!submission.metadata) {
376
353
  submission.metadata = {};
377
354
  }
@@ -388,11 +365,7 @@ export default class RadioComponent extends ListComponent {
388
365
  const value = this.dataValue;
389
366
  this.refs.wrapper.forEach((wrapper, index) => {
390
367
  const input = this.refs.input[index];
391
- const checked = value === undefined || value === null
392
- ? false
393
- : input.type === 'checkbox'
394
- ? value[input.value] || input.checked
395
- : input.value.toString() === value.toString();
368
+ const checked = (value === undefined || value === null) ? false : (input.type === 'checkbox') ? value[input.value] || input.checked : (input.value.toString() === value.toString());
396
369
  if (checked) {
397
370
  //add class to container when selected
398
371
  this.addClass(wrapper, this.optionSelectedClass);
@@ -422,7 +395,7 @@ export default class RadioComponent extends ListComponent {
422
395
  const shouldResetValue = flags && flags.modified && !flags.noUpdateEvent && this.previousValue === this.currentValue;
423
396
  if (shouldResetValue) {
424
397
  this.resetValue();
425
- this.triggerChange(flags);
398
+ this.triggerChange?.(flags);
426
399
  this.setSelectedClasses();
427
400
  }
428
401
  this.previousValue = this.dataValue;
@@ -440,9 +413,7 @@ export default class RadioComponent extends ListComponent {
440
413
  }
441
414
  switch (dataType) {
442
415
  case 'auto':
443
- if (!isNaN(parseFloat(value)) &&
444
- isFinite(value) &&
445
- _.toString(value) === Number(value).toString()) {
416
+ if (!isNaN(parseFloat(value)) && isFinite(value) && _.toString(value) === Number(value).toString()) {
446
417
  value = +value;
447
418
  }
448
419
  if (value === 'true') {
@@ -468,7 +439,7 @@ export default class RadioComponent extends ListComponent {
468
439
  break;
469
440
  }
470
441
  if (this.isSelectURL && this.templateData && this.templateData[value]) {
471
- const submission = this.root.submission;
442
+ const submission = this.root?.submission;
472
443
  if (!submission.metadata.selectData) {
473
444
  submission.metadata.selectData = {};
474
445
  }
@@ -13,14 +13,12 @@ export default [
13
13
  { label: 'URL', value: 'url' },
14
14
  ],
15
15
  },
16
- validate: {
17
- required: true,
16
+ 'validate': {
17
+ 'required': true
18
18
  },
19
19
  onChange(context) {
20
20
  if (context && context.flags && context.flags && context.flags.modified) {
21
- context.data.values = [
22
- { label: '', value: '' },
23
- ];
21
+ context.data.values = [{ label: '', value: '' }];
24
22
  }
25
23
  },
26
24
  },
@@ -32,9 +30,7 @@ export default [
32
30
  tooltip: 'The radio button values that can be picked for this field. Values are text submitted with the form data. Labels are text that appears next to the radio buttons on the form.',
33
31
  weight: 10,
34
32
  reorder: true,
35
- defaultValue: [
36
- { label: '', value: '' },
37
- ],
33
+ defaultValue: [{ label: '', value: '' }],
38
34
  components: [
39
35
  {
40
36
  label: 'Label',
@@ -50,8 +46,8 @@ export default [
50
46
  allowCalculateOverride: true,
51
47
  calculateValue: 'value = _.camelCase(row.label);',
52
48
  validate: {
53
- required: true,
54
- },
49
+ required: true
50
+ }
55
51
  },
56
52
  {
57
53
  type: 'select',
@@ -72,12 +68,7 @@ export default [
72
68
  },
73
69
  ],
74
70
  conditional: {
75
- json: {
76
- '===': [
77
- { var: 'data.dataSrc' },
78
- 'values',
79
- ],
80
- },
71
+ json: { '===': [{ var: 'data.dataSrc' }, 'values'] },
81
72
  },
82
73
  },
83
74
  {
@@ -103,12 +94,7 @@ export default [
103
94
  {
104
95
  key: 'template',
105
96
  conditional: {
106
- json: {
107
- '===': [
108
- { var: 'data.dataSrc' },
109
- 'url',
110
- ],
111
- },
97
+ json: { '===': [{ var: 'data.dataSrc' }, 'url'] },
112
98
  },
113
- },
99
+ }
114
100
  ];
@@ -1,7 +1,7 @@
1
1
  export default [
2
2
  {
3
3
  key: 'placeholder',
4
- ignore: true,
4
+ ignore: true
5
5
  },
6
6
  {
7
7
  type: 'select',
@@ -17,9 +17,9 @@ export default [
17
17
  { label: 'Top', value: 'top' },
18
18
  { label: 'Left', value: 'left' },
19
19
  { label: 'Right', value: 'right' },
20
- { label: 'Bottom', value: 'bottom' },
21
- ],
22
- },
20
+ { label: 'Bottom', value: 'bottom' }
21
+ ]
22
+ }
23
23
  },
24
24
  {
25
25
  type: 'checkbox',
@@ -27,6 +27,6 @@ export default [
27
27
  key: 'inline',
28
28
  label: 'Inline Layout',
29
29
  tooltip: 'Displays the checkboxes/radios horizontally.',
30
- weight: 650,
31
- },
30
+ weight: 650
31
+ }
32
32
  ];
@@ -1,11 +1,11 @@
1
1
  export default [
2
2
  {
3
3
  key: 'validateOn',
4
- ignore: true,
4
+ ignore: true
5
5
  },
6
6
  {
7
7
  key: 'unique',
8
- ignore: true,
8
+ ignore: true
9
9
  },
10
10
  {
11
11
  weight: 52,
@@ -9,23 +9,23 @@ export default function (...extend) {
9
9
  return Components.baseEditForm([
10
10
  {
11
11
  key: 'display',
12
- components: ReCaptchaEditDisplay,
12
+ components: ReCaptchaEditDisplay
13
13
  },
14
14
  {
15
15
  key: 'data',
16
- ignore: true,
16
+ ignore: true
17
17
  },
18
18
  {
19
19
  key: 'validation',
20
- ignore: true,
20
+ ignore: true
21
21
  },
22
22
  {
23
23
  key: 'conditional',
24
- ignore: true,
24
+ ignore: true
25
25
  },
26
26
  {
27
27
  key: 'logic',
28
- ignore: true,
28
+ ignore: true
29
29
  },
30
30
  ], ...extend);
31
31
  }
@@ -8,7 +8,7 @@ export default class ReCaptchaComponent extends Component {
8
8
  return Component.schema({
9
9
  type: 'recaptcha',
10
10
  key: 'recaptcha',
11
- label: 'reCAPTCHA',
11
+ label: 'reCAPTCHA'
12
12
  }, ...extend);
13
13
  }
14
14
  static get builderInfo() {
@@ -20,10 +20,7 @@ export default class ReCaptchaComponent extends Component {
20
20
  static get conditionOperatorsSettings() {
21
21
  return {
22
22
  ...super.conditionOperatorsSettings,
23
- operators: [
24
- 'isEmpty',
25
- 'isNotEmpty',
26
- ],
23
+ operators: ['isEmpty', 'isNotEmpty'],
27
24
  };
28
25
  }
29
26
  static get serverConditionSettings() {
@@ -44,7 +41,7 @@ export default class ReCaptchaComponent extends Component {
44
41
  this.append(this.text(this.name));
45
42
  }
46
43
  else {
47
- const siteKey = _get(this.root.form, 'settings.recaptcha.siteKey');
44
+ const siteKey = _get(this.root?.form, 'settings.recaptcha.siteKey');
48
45
  if (siteKey) {
49
46
  const recaptchaApiScriptUrl = `https://www.google.com/recaptcha/api.js?render=${siteKey}`;
50
47
  this.recaptchaApiReady = Formio.requireLibrary('googleRecaptcha', 'grecaptcha', recaptchaApiScriptUrl, true);
@@ -61,13 +58,13 @@ export default class ReCaptchaComponent extends Component {
61
58
  return true;
62
59
  }
63
60
  async verify(actionName) {
64
- const siteKey = _get(this.root.form, 'settings.recaptcha.siteKey');
61
+ const siteKey = _get(this.root?.form, 'settings.recaptcha.siteKey');
65
62
  if (!siteKey) {
66
63
  console.warn('There is no Site Key specified in settings in form JSON');
67
64
  return;
68
65
  }
69
66
  if (!this.recaptchaApiReady) {
70
- const recaptchaApiScriptUrl = `https://www.google.com/recaptcha/api.js?render=${_get(this.root.form, 'settings.recaptcha.siteKey')}`;
67
+ const recaptchaApiScriptUrl = `https://www.google.com/recaptcha/api.js?render=${_get(this.root?.form, 'settings.recaptcha.siteKey')}`;
71
68
  this.recaptchaApiReady = Formio.requireLibrary('googleRecaptcha', 'grecaptcha', recaptchaApiScriptUrl, true);
72
69
  }
73
70
  try {
@@ -95,13 +92,14 @@ export default class ReCaptchaComponent extends Component {
95
92
  }
96
93
  });
97
94
  }
98
- catch (ignoreErr) {
95
+ catch (err) {
99
96
  this.loading = false;
100
97
  }
101
98
  }
102
99
  beforeSubmit() {
103
100
  if (this.recaptchaVerifiedPromise) {
104
- return this.recaptchaVerifiedPromise.then(() => super.beforeSubmit());
101
+ return this.recaptchaVerifiedPromise
102
+ .then(() => super.beforeSubmit());
105
103
  }
106
104
  return super.beforeSubmit();
107
105
  }
@@ -16,17 +16,17 @@ export default [
16
16
  values: [
17
17
  {
18
18
  label: 'Form Load',
19
- value: 'formLoad',
19
+ value: 'formLoad'
20
20
  },
21
21
  {
22
22
  label: 'Button Click',
23
- value: 'buttonClick',
24
- },
23
+ value: 'buttonClick'
24
+ }
25
25
  ],
26
26
  validate: {
27
- required: true,
27
+ required: true
28
28
  },
29
- weight: 650,
29
+ weight: 650
30
30
  },
31
31
  {
32
32
  type: 'select',
@@ -43,75 +43,75 @@ export default [
43
43
  data: {
44
44
  custom(context) {
45
45
  return getContextButtons(context);
46
- },
47
- },
46
+ }
47
+ }
48
48
  },
49
49
  {
50
50
  key: 'label',
51
- ignore: true,
51
+ ignore: true
52
52
  },
53
53
  {
54
54
  key: 'hideLabel',
55
- ignore: true,
55
+ ignore: true
56
56
  },
57
57
  {
58
58
  key: 'labelPosition',
59
- ignore: true,
59
+ ignore: true
60
60
  },
61
61
  {
62
62
  key: 'placeholder',
63
- ignore: true,
63
+ ignore: true
64
64
  },
65
65
  {
66
66
  key: 'description',
67
- ignore: true,
67
+ ignore: true
68
68
  },
69
69
  {
70
70
  key: 'tooltip',
71
- ignore: true,
71
+ ignore: true
72
72
  },
73
73
  {
74
74
  key: 'errorLabel',
75
- ignore: true,
75
+ ignore: true
76
76
  },
77
77
  {
78
78
  key: 'customClass',
79
- ignore: true,
79
+ ignore: true
80
80
  },
81
81
  {
82
82
  key: 'tabindex',
83
- ignore: true,
83
+ ignore: true
84
84
  },
85
85
  {
86
86
  key: 'multiple',
87
- ignore: true,
87
+ ignore: true
88
88
  },
89
89
  {
90
90
  key: 'clearOnHide',
91
- ignore: true,
91
+ ignore: true
92
92
  },
93
93
  {
94
94
  key: 'hidden',
95
- ignore: true,
95
+ ignore: true
96
96
  },
97
97
  {
98
98
  key: 'mask',
99
- ignore: true,
99
+ ignore: true
100
100
  },
101
101
  {
102
102
  key: 'dataGridLabel',
103
- ignore: true,
103
+ ignore: true
104
104
  },
105
105
  {
106
106
  key: 'disabled',
107
- ignore: true,
107
+ ignore: true
108
108
  },
109
109
  {
110
110
  key: 'autofocus',
111
- ignore: true,
111
+ ignore: true
112
112
  },
113
113
  {
114
114
  key: 'tableView',
115
- ignore: true,
115
+ ignore: true
116
116
  },
117
117
  ];
@@ -11,15 +11,15 @@ export default function (...extend) {
11
11
  return listComponentForm([
12
12
  {
13
13
  key: 'display',
14
- components: SelectEditDisplay,
14
+ components: SelectEditDisplay
15
15
  },
16
16
  {
17
17
  key: 'data',
18
- components: SelectEditData,
18
+ components: SelectEditData
19
19
  },
20
20
  {
21
21
  key: 'validation',
22
- components: SelectEditValidation,
22
+ components: SelectEditValidation
23
23
  },
24
24
  ], ...extend);
25
25
  }