@formio/js 5.0.0-rc.26 → 5.0.0-rc.28

Sign up to get free protection for your applications and to get access to all the features.
Files changed (360) hide show
  1. package/dist/fonts/bootstrap-icons.woff +0 -0
  2. package/dist/fonts/bootstrap-icons.woff2 +0 -0
  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.js +710 -689
  7. package/dist/formio.form.min.js +1 -1
  8. package/dist/formio.form.min.js.LICENSE.txt +2 -2
  9. package/dist/formio.full.css +100 -3
  10. package/dist/formio.full.js +715 -727
  11. package/dist/formio.full.min.css +2 -2
  12. package/dist/formio.full.min.js +1 -1
  13. package/dist/formio.full.min.js.LICENSE.txt +2 -2
  14. package/dist/formio.js +659 -264
  15. package/dist/formio.min.js +1 -1
  16. package/dist/formio.min.js.LICENSE.txt +2 -2
  17. package/dist/formio.utils.js +29 -8
  18. package/dist/formio.utils.min.js +1 -1
  19. package/dist/formio.utils.min.js.LICENSE.txt +2 -2
  20. package/lib/cjs/Embed.d.ts +2 -1
  21. package/lib/cjs/Embed.js +20 -7
  22. package/lib/cjs/PDF.js +2 -2
  23. package/lib/cjs/Webform.d.ts +3 -5
  24. package/lib/cjs/Webform.js +59 -81
  25. package/lib/cjs/WebformBuilder.d.ts +1 -1
  26. package/lib/cjs/WebformBuilder.js +27 -10
  27. package/lib/cjs/Wizard.d.ts +2 -0
  28. package/lib/cjs/Wizard.js +37 -26
  29. package/lib/cjs/WizardBuilder.d.ts +1 -0
  30. package/lib/cjs/addons/PasswordStrength/PasswordStrengthAddon.d.ts +1 -2
  31. package/lib/cjs/addons/PasswordStrength/PasswordStrengthAddon.js +11 -12
  32. package/lib/cjs/addons/index.d.ts +1 -0
  33. package/lib/cjs/addons/index.js +5 -1
  34. package/lib/cjs/components/Components.d.ts +7 -0
  35. package/lib/cjs/components/Components.js +30 -0
  36. package/lib/cjs/components/_classes/component/Component.d.ts +57 -27
  37. package/lib/cjs/components/_classes/component/Component.js +193 -119
  38. package/lib/cjs/components/_classes/component/editForm/Component.edit.addons.d.ts +8 -0
  39. package/lib/cjs/components/_classes/component/editForm/Component.edit.addons.js +31 -1
  40. package/lib/cjs/components/_classes/nested/NestedComponent.d.ts +28 -11
  41. package/lib/cjs/components/_classes/nested/NestedComponent.js +88 -57
  42. package/lib/cjs/components/_classes/nestedarray/NestedArrayComponent.d.ts +4 -3
  43. package/lib/cjs/components/_classes/nestedarray/NestedArrayComponent.js +17 -4
  44. package/lib/cjs/components/builder.js +0 -2
  45. package/lib/cjs/components/button/Button.js +2 -1
  46. package/lib/cjs/components/columns/Columns.d.ts +1 -0
  47. package/lib/cjs/components/columns/Columns.js +2 -3
  48. package/lib/cjs/components/columns/editForm/Columns.edit.display.d.ts +30 -1
  49. package/lib/cjs/components/columns/editForm/Columns.edit.display.js +23 -1
  50. package/lib/cjs/components/container/Container.d.ts +1 -0
  51. package/lib/cjs/components/container/Container.js +2 -6
  52. package/lib/cjs/components/content/Content.d.ts +1 -0
  53. package/lib/cjs/components/content/Content.js +1 -0
  54. package/lib/cjs/components/datagrid/DataGrid.d.ts +0 -8
  55. package/lib/cjs/components/datagrid/DataGrid.js +9 -26
  56. package/lib/cjs/components/datamap/DataMap.js +2 -1
  57. package/lib/cjs/components/datetime/DateTime.js +0 -2
  58. package/lib/cjs/components/day/Day.js +2 -3
  59. package/lib/cjs/components/editgrid/EditGrid.d.ts +8 -4
  60. package/lib/cjs/components/editgrid/EditGrid.js +96 -73
  61. package/lib/cjs/components/email/Email.js +0 -1
  62. package/lib/cjs/components/file/File.js +1 -1
  63. package/lib/cjs/components/file/fixtures/comp3.d.ts +29 -0
  64. package/lib/cjs/components/file/fixtures/comp3.js +31 -0
  65. package/lib/cjs/components/form/Form.d.ts +2 -6
  66. package/lib/cjs/components/form/Form.js +43 -14
  67. package/lib/cjs/components/index.d.ts +0 -2
  68. package/lib/cjs/components/index.js +0 -2
  69. package/lib/cjs/components/number/Number.d.ts +1 -2
  70. package/lib/cjs/components/number/Number.js +5 -6
  71. package/lib/cjs/components/panel/Panel.d.ts +0 -1
  72. package/lib/cjs/components/panel/Panel.js +2 -9
  73. package/lib/cjs/components/panel/editForm/Panel.edit.display.d.ts +6 -38
  74. package/lib/cjs/components/panel/editForm/Panel.edit.display.js +3 -16
  75. package/lib/cjs/components/phonenumber/PhoneNumber.js +17 -0
  76. package/lib/cjs/components/radio/Radio.js +0 -2
  77. package/lib/cjs/components/recaptcha/ReCaptcha.d.ts +1 -1
  78. package/lib/cjs/components/recaptcha/ReCaptcha.js +2 -2
  79. package/lib/cjs/components/select/Select.js +3 -2
  80. package/lib/cjs/components/selectboxes/SelectBoxes.d.ts +1 -2
  81. package/lib/cjs/components/selectboxes/SelectBoxes.js +7 -6
  82. package/lib/cjs/components/table/editForm/Table.edit.display.d.ts +31 -2
  83. package/lib/cjs/components/table/editForm/Table.edit.display.js +22 -0
  84. package/lib/cjs/components/tabs/editForm/Tabs.edit.display.d.ts +30 -2
  85. package/lib/cjs/components/tabs/editForm/Tabs.edit.display.js +22 -0
  86. package/lib/cjs/components/textfield/TextField.js +20 -6
  87. package/lib/cjs/components/time/Time.js +0 -6
  88. package/lib/cjs/components/url/Url.js +0 -1
  89. package/lib/cjs/components/well/editForm/Well.edit.display.d.ts +25 -2
  90. package/lib/cjs/components/well/editForm/Well.edit.display.js +18 -0
  91. package/lib/cjs/formio.embed.js +5 -3
  92. package/lib/cjs/formio.form.d.ts +1 -7
  93. package/lib/cjs/formio.form.js +2 -38
  94. package/lib/cjs/index.d.ts +2 -1
  95. package/lib/cjs/index.js +2 -1
  96. package/lib/cjs/providers/Providers.d.ts +0 -4
  97. package/lib/cjs/providers/storage/azure.d.ts +0 -2
  98. package/lib/cjs/providers/storage/azure.js +1 -6
  99. package/lib/cjs/providers/storage/googleDrive.d.ts +0 -1
  100. package/lib/cjs/providers/storage/googleDrive.js +0 -4
  101. package/lib/cjs/providers/storage/s3.d.ts +0 -1
  102. package/lib/cjs/providers/storage/s3.js +0 -4
  103. package/lib/cjs/translations/en.d.ts +5 -0
  104. package/lib/cjs/translations/en.js +5 -0
  105. package/lib/cjs/utils/formUtils.js +1 -0
  106. package/lib/cjs/utils/utils.d.ts +2 -1
  107. package/lib/cjs/utils/utils.js +27 -9
  108. package/lib/mjs/Embed.d.ts +2 -1
  109. package/lib/mjs/Embed.js +20 -7
  110. package/lib/mjs/PDF.js +2 -2
  111. package/lib/mjs/Webform.d.ts +3 -5
  112. package/lib/mjs/Webform.js +58 -82
  113. package/lib/mjs/WebformBuilder.d.ts +1 -1
  114. package/lib/mjs/WebformBuilder.js +28 -7
  115. package/lib/mjs/Wizard.d.ts +2 -0
  116. package/lib/mjs/Wizard.js +36 -27
  117. package/lib/mjs/WizardBuilder.d.ts +1 -0
  118. package/lib/mjs/addons/PasswordStrength/PasswordStrengthAddon.d.ts +1 -2
  119. package/lib/mjs/addons/PasswordStrength/PasswordStrengthAddon.js +11 -12
  120. package/lib/mjs/addons/index.d.ts +1 -0
  121. package/lib/mjs/addons/index.js +5 -1
  122. package/lib/mjs/components/Components.d.ts +7 -0
  123. package/lib/mjs/components/Components.js +29 -0
  124. package/lib/mjs/components/_classes/component/Component.d.ts +57 -27
  125. package/lib/mjs/components/_classes/component/Component.js +191 -118
  126. package/lib/mjs/components/_classes/component/editForm/Component.edit.addons.d.ts +8 -0
  127. package/lib/mjs/components/_classes/component/editForm/Component.edit.addons.js +31 -1
  128. package/lib/mjs/components/_classes/nested/NestedComponent.d.ts +28 -11
  129. package/lib/mjs/components/_classes/nested/NestedComponent.js +88 -57
  130. package/lib/mjs/components/_classes/nestedarray/NestedArrayComponent.d.ts +4 -3
  131. package/lib/mjs/components/_classes/nestedarray/NestedArrayComponent.js +18 -5
  132. package/lib/mjs/components/builder.js +0 -2
  133. package/lib/mjs/components/button/Button.js +2 -1
  134. package/lib/mjs/components/columns/Columns.d.ts +1 -0
  135. package/lib/mjs/components/columns/Columns.js +2 -3
  136. package/lib/mjs/components/columns/editForm/Columns.edit.display.d.ts +30 -1
  137. package/lib/mjs/components/columns/editForm/Columns.edit.display.js +23 -1
  138. package/lib/mjs/components/container/Container.d.ts +1 -0
  139. package/lib/mjs/components/container/Container.js +2 -6
  140. package/lib/mjs/components/content/Content.d.ts +1 -0
  141. package/lib/mjs/components/content/Content.js +1 -0
  142. package/lib/mjs/components/datagrid/DataGrid.d.ts +0 -8
  143. package/lib/mjs/components/datagrid/DataGrid.js +9 -26
  144. package/lib/mjs/components/datamap/DataMap.js +2 -1
  145. package/lib/mjs/components/datetime/DateTime.js +0 -2
  146. package/lib/mjs/components/day/Day.js +2 -3
  147. package/lib/mjs/components/editgrid/EditGrid.d.ts +8 -4
  148. package/lib/mjs/components/editgrid/EditGrid.js +97 -76
  149. package/lib/mjs/components/email/Email.js +0 -1
  150. package/lib/mjs/components/file/File.js +1 -1
  151. package/lib/mjs/components/file/fixtures/comp3.d.ts +29 -0
  152. package/lib/mjs/components/file/fixtures/comp3.js +29 -0
  153. package/lib/mjs/components/form/Form.d.ts +2 -6
  154. package/lib/mjs/components/form/Form.js +45 -14
  155. package/lib/mjs/components/index.d.ts +0 -2
  156. package/lib/mjs/components/index.js +0 -2
  157. package/lib/mjs/components/number/Number.d.ts +1 -2
  158. package/lib/mjs/components/number/Number.js +4 -5
  159. package/lib/mjs/components/panel/Panel.d.ts +0 -1
  160. package/lib/mjs/components/panel/Panel.js +3 -9
  161. package/lib/mjs/components/panel/editForm/Panel.edit.display.d.ts +6 -38
  162. package/lib/mjs/components/panel/editForm/Panel.edit.display.js +3 -16
  163. package/lib/mjs/components/phonenumber/PhoneNumber.js +17 -0
  164. package/lib/mjs/components/radio/Radio.js +0 -2
  165. package/lib/mjs/components/recaptcha/ReCaptcha.d.ts +1 -1
  166. package/lib/mjs/components/recaptcha/ReCaptcha.js +2 -2
  167. package/lib/mjs/components/select/Select.js +3 -2
  168. package/lib/mjs/components/selectboxes/SelectBoxes.d.ts +1 -2
  169. package/lib/mjs/components/selectboxes/SelectBoxes.js +7 -6
  170. package/lib/mjs/components/table/editForm/Table.edit.display.d.ts +31 -2
  171. package/lib/mjs/components/table/editForm/Table.edit.display.js +22 -0
  172. package/lib/mjs/components/tabs/editForm/Tabs.edit.display.d.ts +30 -2
  173. package/lib/mjs/components/tabs/editForm/Tabs.edit.display.js +22 -0
  174. package/lib/mjs/components/textfield/TextField.js +20 -6
  175. package/lib/mjs/components/time/Time.js +0 -6
  176. package/lib/mjs/components/url/Url.js +0 -1
  177. package/lib/mjs/components/well/editForm/Well.edit.display.d.ts +25 -2
  178. package/lib/mjs/components/well/editForm/Well.edit.display.js +18 -0
  179. package/lib/mjs/formio.embed.js +5 -3
  180. package/lib/mjs/formio.form.d.ts +1 -7
  181. package/lib/mjs/formio.form.js +2 -32
  182. package/lib/mjs/index.d.ts +2 -1
  183. package/lib/mjs/index.js +1 -1
  184. package/lib/mjs/providers/Providers.d.ts +0 -4
  185. package/lib/mjs/providers/storage/azure.d.ts +0 -2
  186. package/lib/mjs/providers/storage/azure.js +1 -6
  187. package/lib/mjs/providers/storage/googleDrive.d.ts +0 -1
  188. package/lib/mjs/providers/storage/googleDrive.js +0 -4
  189. package/lib/mjs/providers/storage/s3.d.ts +0 -1
  190. package/lib/mjs/providers/storage/s3.js +0 -4
  191. package/lib/mjs/translations/en.d.ts +5 -0
  192. package/lib/mjs/translations/en.js +5 -0
  193. package/lib/mjs/utils/formUtils.js +1 -0
  194. package/lib/mjs/utils/utils.d.ts +2 -1
  195. package/lib/mjs/utils/utils.js +24 -7
  196. package/package.json +6 -6
  197. package/lib/cjs/components/tree/Node.d.ts +0 -55
  198. package/lib/cjs/components/tree/Node.js +0 -185
  199. package/lib/cjs/components/tree/Tree.d.ts +0 -48
  200. package/lib/cjs/components/tree/Tree.form.d.ts +0 -3
  201. package/lib/cjs/components/tree/Tree.form.js +0 -21
  202. package/lib/cjs/components/tree/Tree.js +0 -383
  203. package/lib/cjs/components/tree/editForm/Tree.edit.data.d.ts +0 -5
  204. package/lib/cjs/components/tree/editForm/Tree.edit.data.js +0 -9
  205. package/lib/cjs/components/tree/editForm/Tree.edit.display.d.ts +0 -9
  206. package/lib/cjs/components/tree/editForm/Tree.edit.display.js +0 -12
  207. package/lib/cjs/components/tree/fixtures/comp1.d.ts +0 -23
  208. package/lib/cjs/components/tree/fixtures/comp1.js +0 -24
  209. package/lib/cjs/components/tree/fixtures/comp2.d.ts +0 -116
  210. package/lib/cjs/components/tree/fixtures/comp2.js +0 -82
  211. package/lib/cjs/components/tree/fixtures/comp3.d.ts +0 -24
  212. package/lib/cjs/components/tree/fixtures/comp3.js +0 -25
  213. package/lib/cjs/components/tree/fixtures/comp4.d.ts +0 -42
  214. package/lib/cjs/components/tree/fixtures/comp4.js +0 -47
  215. package/lib/cjs/components/tree/fixtures/index.d.ts +0 -5
  216. package/lib/cjs/components/tree/fixtures/index.js +0 -14
  217. package/lib/cjs/validator/Rules.d.ts +0 -53
  218. package/lib/cjs/validator/Rules.js +0 -22
  219. package/lib/cjs/validator/Validator.d.ts +0 -228
  220. package/lib/cjs/validator/Validator.js +0 -1113
  221. package/lib/cjs/validator/conjunctions/index.d.ts +0 -7
  222. package/lib/cjs/validator/conjunctions/index.js +0 -18
  223. package/lib/cjs/validator/operators/index.d.ts +0 -7
  224. package/lib/cjs/validator/operators/index.js +0 -18
  225. package/lib/cjs/validator/quickRules/index.d.ts +0 -7
  226. package/lib/cjs/validator/quickRules/index.js +0 -18
  227. package/lib/cjs/validator/rules/Custom.d.ts +0 -5
  228. package/lib/cjs/validator/rules/Custom.js +0 -30
  229. package/lib/cjs/validator/rules/Date.d.ts +0 -5
  230. package/lib/cjs/validator/rules/Date.js +0 -25
  231. package/lib/cjs/validator/rules/Day.d.ts +0 -5
  232. package/lib/cjs/validator/rules/Day.js +0 -58
  233. package/lib/cjs/validator/rules/Email.d.ts +0 -5
  234. package/lib/cjs/validator/rules/Email.js +0 -24
  235. package/lib/cjs/validator/rules/JSON.d.ts +0 -5
  236. package/lib/cjs/validator/rules/JSON.js +0 -29
  237. package/lib/cjs/validator/rules/Mask.d.ts +0 -5
  238. package/lib/cjs/validator/rules/Mask.js +0 -32
  239. package/lib/cjs/validator/rules/Max.d.ts +0 -5
  240. package/lib/cjs/validator/rules/Max.js +0 -21
  241. package/lib/cjs/validator/rules/MaxDate.d.ts +0 -5
  242. package/lib/cjs/validator/rules/MaxDate.js +0 -34
  243. package/lib/cjs/validator/rules/MaxLength.d.ts +0 -5
  244. package/lib/cjs/validator/rules/MaxLength.js +0 -20
  245. package/lib/cjs/validator/rules/MaxWords.d.ts +0 -5
  246. package/lib/cjs/validator/rules/MaxWords.js +0 -20
  247. package/lib/cjs/validator/rules/MaxYear.d.ts +0 -5
  248. package/lib/cjs/validator/rules/MaxYear.js +0 -22
  249. package/lib/cjs/validator/rules/Min.d.ts +0 -5
  250. package/lib/cjs/validator/rules/Min.js +0 -21
  251. package/lib/cjs/validator/rules/MinDate.d.ts +0 -5
  252. package/lib/cjs/validator/rules/MinDate.js +0 -30
  253. package/lib/cjs/validator/rules/MinLength.d.ts +0 -5
  254. package/lib/cjs/validator/rules/MinLength.js +0 -20
  255. package/lib/cjs/validator/rules/MinWords.d.ts +0 -5
  256. package/lib/cjs/validator/rules/MinWords.js +0 -20
  257. package/lib/cjs/validator/rules/MinYear.d.ts +0 -5
  258. package/lib/cjs/validator/rules/MinYear.js +0 -22
  259. package/lib/cjs/validator/rules/Pattern.d.ts +0 -5
  260. package/lib/cjs/validator/rules/Pattern.js +0 -20
  261. package/lib/cjs/validator/rules/Required.d.ts +0 -5
  262. package/lib/cjs/validator/rules/Required.js +0 -17
  263. package/lib/cjs/validator/rules/Rule.d.ts +0 -7
  264. package/lib/cjs/validator/rules/Rule.js +0 -12
  265. package/lib/cjs/validator/rules/Select.d.ts +0 -5
  266. package/lib/cjs/validator/rules/Select.js +0 -95
  267. package/lib/cjs/validator/rules/Time.d.ts +0 -5
  268. package/lib/cjs/validator/rules/Time.js +0 -19
  269. package/lib/cjs/validator/rules/Unique.d.ts +0 -5
  270. package/lib/cjs/validator/rules/Unique.js +0 -69
  271. package/lib/cjs/validator/rules/Url.d.ts +0 -5
  272. package/lib/cjs/validator/rules/Url.js +0 -23
  273. package/lib/cjs/validator/rules/index.d.ts +0 -47
  274. package/lib/cjs/validator/rules/index.js +0 -51
  275. package/lib/cjs/validator/transformers/index.d.ts +0 -7
  276. package/lib/cjs/validator/transformers/index.js +0 -18
  277. package/lib/cjs/validator/valueSources/index.d.ts +0 -7
  278. package/lib/cjs/validator/valueSources/index.js +0 -18
  279. package/lib/mjs/components/tree/Node.d.ts +0 -55
  280. package/lib/mjs/components/tree/Node.js +0 -179
  281. package/lib/mjs/components/tree/Tree.d.ts +0 -48
  282. package/lib/mjs/components/tree/Tree.form.d.ts +0 -3
  283. package/lib/mjs/components/tree/Tree.form.js +0 -15
  284. package/lib/mjs/components/tree/Tree.js +0 -384
  285. package/lib/mjs/components/tree/editForm/Tree.edit.data.d.ts +0 -5
  286. package/lib/mjs/components/tree/editForm/Tree.edit.data.js +0 -7
  287. package/lib/mjs/components/tree/editForm/Tree.edit.display.d.ts +0 -9
  288. package/lib/mjs/components/tree/editForm/Tree.edit.display.js +0 -10
  289. package/lib/mjs/components/tree/fixtures/comp1.d.ts +0 -23
  290. package/lib/mjs/components/tree/fixtures/comp1.js +0 -22
  291. package/lib/mjs/components/tree/fixtures/comp2.d.ts +0 -116
  292. package/lib/mjs/components/tree/fixtures/comp2.js +0 -80
  293. package/lib/mjs/components/tree/fixtures/comp3.d.ts +0 -24
  294. package/lib/mjs/components/tree/fixtures/comp3.js +0 -23
  295. package/lib/mjs/components/tree/fixtures/comp4.d.ts +0 -42
  296. package/lib/mjs/components/tree/fixtures/comp4.js +0 -45
  297. package/lib/mjs/components/tree/fixtures/index.d.ts +0 -5
  298. package/lib/mjs/components/tree/fixtures/index.js +0 -5
  299. package/lib/mjs/validator/Rules.d.ts +0 -53
  300. package/lib/mjs/validator/Rules.js +0 -17
  301. package/lib/mjs/validator/Validator.d.ts +0 -228
  302. package/lib/mjs/validator/Validator.js +0 -1103
  303. package/lib/mjs/validator/conjunctions/index.d.ts +0 -7
  304. package/lib/mjs/validator/conjunctions/index.js +0 -16
  305. package/lib/mjs/validator/operators/index.d.ts +0 -7
  306. package/lib/mjs/validator/operators/index.js +0 -16
  307. package/lib/mjs/validator/quickRules/index.d.ts +0 -7
  308. package/lib/mjs/validator/quickRules/index.js +0 -16
  309. package/lib/mjs/validator/rules/Custom.d.ts +0 -5
  310. package/lib/mjs/validator/rules/Custom.js +0 -21
  311. package/lib/mjs/validator/rules/Date.d.ts +0 -5
  312. package/lib/mjs/validator/rules/Date.js +0 -16
  313. package/lib/mjs/validator/rules/Day.d.ts +0 -5
  314. package/lib/mjs/validator/rules/Day.js +0 -49
  315. package/lib/mjs/validator/rules/Email.d.ts +0 -5
  316. package/lib/mjs/validator/rules/Email.js +0 -15
  317. package/lib/mjs/validator/rules/JSON.d.ts +0 -5
  318. package/lib/mjs/validator/rules/JSON.js +0 -20
  319. package/lib/mjs/validator/rules/Mask.d.ts +0 -5
  320. package/lib/mjs/validator/rules/Mask.js +0 -23
  321. package/lib/mjs/validator/rules/Max.d.ts +0 -5
  322. package/lib/mjs/validator/rules/Max.js +0 -12
  323. package/lib/mjs/validator/rules/MaxDate.d.ts +0 -5
  324. package/lib/mjs/validator/rules/MaxDate.js +0 -25
  325. package/lib/mjs/validator/rules/MaxLength.d.ts +0 -5
  326. package/lib/mjs/validator/rules/MaxLength.js +0 -11
  327. package/lib/mjs/validator/rules/MaxWords.d.ts +0 -5
  328. package/lib/mjs/validator/rules/MaxWords.js +0 -11
  329. package/lib/mjs/validator/rules/MaxYear.d.ts +0 -5
  330. package/lib/mjs/validator/rules/MaxYear.js +0 -13
  331. package/lib/mjs/validator/rules/Min.d.ts +0 -5
  332. package/lib/mjs/validator/rules/Min.js +0 -12
  333. package/lib/mjs/validator/rules/MinDate.d.ts +0 -5
  334. package/lib/mjs/validator/rules/MinDate.js +0 -21
  335. package/lib/mjs/validator/rules/MinLength.d.ts +0 -5
  336. package/lib/mjs/validator/rules/MinLength.js +0 -11
  337. package/lib/mjs/validator/rules/MinWords.d.ts +0 -5
  338. package/lib/mjs/validator/rules/MinWords.js +0 -11
  339. package/lib/mjs/validator/rules/MinYear.d.ts +0 -5
  340. package/lib/mjs/validator/rules/MinYear.js +0 -13
  341. package/lib/mjs/validator/rules/Pattern.d.ts +0 -5
  342. package/lib/mjs/validator/rules/Pattern.js +0 -11
  343. package/lib/mjs/validator/rules/Required.d.ts +0 -5
  344. package/lib/mjs/validator/rules/Required.js +0 -8
  345. package/lib/mjs/validator/rules/Rule.d.ts +0 -7
  346. package/lib/mjs/validator/rules/Rule.js +0 -9
  347. package/lib/mjs/validator/rules/Select.d.ts +0 -5
  348. package/lib/mjs/validator/rules/Select.js +0 -86
  349. package/lib/mjs/validator/rules/Time.d.ts +0 -5
  350. package/lib/mjs/validator/rules/Time.js +0 -10
  351. package/lib/mjs/validator/rules/Unique.d.ts +0 -5
  352. package/lib/mjs/validator/rules/Unique.js +0 -60
  353. package/lib/mjs/validator/rules/Url.d.ts +0 -5
  354. package/lib/mjs/validator/rules/Url.js +0 -14
  355. package/lib/mjs/validator/rules/index.d.ts +0 -47
  356. package/lib/mjs/validator/rules/index.js +0 -46
  357. package/lib/mjs/validator/transformers/index.d.ts +0 -7
  358. package/lib/mjs/validator/transformers/index.js +0 -16
  359. package/lib/mjs/validator/valueSources/index.d.ts +0 -7
  360. package/lib/mjs/validator/valueSources/index.js +0 -16
@@ -29,4 +29,22 @@ exports.default = [
29
29
  key: 'tableView',
30
30
  ignore: true
31
31
  },
32
+ {
33
+ key: 'hideLabel',
34
+ ignore: true
35
+ },
36
+ {
37
+ weight: 0,
38
+ type: 'textfield',
39
+ input: true,
40
+ key: 'label',
41
+ label: 'Label',
42
+ placeholder: 'Field Label',
43
+ tooltip: 'The label for this field.',
44
+ validate: {
45
+ required: true
46
+ },
47
+ autofocus: true,
48
+ overrideEditForm: true
49
+ },
32
50
  ];
@@ -26,9 +26,11 @@ if (thisScript) {
26
26
  config.formioPath(scriptSrc);
27
27
  }
28
28
  scriptSrc = scriptSrc.join('/');
29
+ const debug = (query.debug === 'true' || query.debug === '1');
30
+ const renderer = debug ? 'formio.form' : 'formio.form.min';
29
31
  Embed_1.Formio.config = Object.assign({
30
- script: query.script || (`${config.updatePath ? config.updatePath() : scriptSrc}/formio.form.min.js`),
31
- style: query.styles || (`${config.updatePath ? config.updatePath() : scriptSrc}/formio.form.min.css`),
32
+ script: query.script || (`${config.updatePath ? config.updatePath() : scriptSrc}/${renderer}.js`),
33
+ style: query.styles || (`${config.updatePath ? config.updatePath() : scriptSrc}/${renderer}.css`),
32
34
  cdn: query.cdn,
33
35
  class: (query.class || 'formio-form-wrapper'),
34
36
  src: query.src,
@@ -39,7 +41,7 @@ if (thisScript) {
39
41
  submit: query.submit,
40
42
  includeLibs: (query.libs === 'true' || query.libs === '1'),
41
43
  template: query.template,
42
- debug: (query.debug === 'true' || query.debug === '1'),
44
+ debug: debug,
43
45
  config: {},
44
46
  redirect: (query.return || query.redirect),
45
47
  embedCSS: (`${config.updatePath ? config.updatePath() : scriptSrc}/formio.embed.css`),
@@ -8,16 +8,10 @@ export function useModule(defaultFn?: null): (plugins: any, options?: {}) => voi
8
8
  import Components from './components/Components';
9
9
  import Displays from './displays/Displays';
10
10
  import Providers from './providers';
11
- import Rules from './validator/Rules';
12
11
  import Widgets from './widgets';
13
12
  import Templates from './templates/Templates';
14
- import Conjunctions from './validator/conjunctions';
15
- import Operators from './validator/operators';
16
- import QuickRules from './validator/quickRules';
17
- import Transformers from './validator/transformers';
18
- import ValueSources from './validator/valueSources';
19
13
  import Utils from './utils';
20
14
  import Form from './Form';
21
15
  import { Formio } from './Formio';
22
16
  import Licenses from './licenses';
23
- export { Components, Displays, Providers, Rules, Widgets, Templates, Conjunctions, Operators, QuickRules, Transformers, ValueSources, Utils, Form, Formio, Licenses };
17
+ export { Components, Displays, Providers, Widgets, Templates, Utils, Form, Formio, Licenses };
@@ -3,7 +3,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.Licenses = exports.Formio = exports.Form = exports.Utils = exports.ValueSources = exports.Transformers = exports.QuickRules = exports.Operators = exports.Conjunctions = exports.Templates = exports.Widgets = exports.Rules = exports.Providers = exports.Displays = exports.Components = exports.useModule = exports.registerModule = void 0;
6
+ exports.Licenses = exports.Formio = exports.Form = exports.Utils = exports.Templates = exports.Widgets = exports.Providers = exports.Displays = exports.Components = exports.useModule = exports.registerModule = void 0;
7
7
  const lodash_1 = __importDefault(require("lodash"));
8
8
  const Formio_1 = require("./Formio");
9
9
  Object.defineProperty(exports, "Formio", { enumerable: true, get: function () { return Formio_1.Formio; } });
@@ -16,18 +16,6 @@ const Templates_1 = __importDefault(require("./templates/Templates"));
16
16
  exports.Templates = Templates_1.default;
17
17
  const providers_1 = __importDefault(require("./providers"));
18
18
  exports.Providers = providers_1.default;
19
- const Rules_1 = __importDefault(require("./validator/Rules"));
20
- exports.Rules = Rules_1.default;
21
- const conjunctions_1 = __importDefault(require("./validator/conjunctions"));
22
- exports.Conjunctions = conjunctions_1.default;
23
- const operators_1 = __importDefault(require("./validator/operators"));
24
- exports.Operators = operators_1.default;
25
- const quickRules_1 = __importDefault(require("./validator/quickRules"));
26
- exports.QuickRules = quickRules_1.default;
27
- const transformers_1 = __importDefault(require("./validator/transformers"));
28
- exports.Transformers = transformers_1.default;
29
- const valueSources_1 = __importDefault(require("./validator/valueSources"));
30
- exports.ValueSources = valueSources_1.default;
31
19
  const widgets_1 = __importDefault(require("./widgets"));
32
20
  exports.Widgets = widgets_1.default;
33
21
  const Form_1 = __importDefault(require("./Form"));
@@ -50,14 +38,8 @@ Formio_1.Formio.Utils = utils_1.default;
50
38
  Formio_1.Formio.Form = Form_1.default;
51
39
  Formio_1.Formio.Displays = Displays_1.default;
52
40
  Formio_1.Formio.Providers = providers_1.default;
53
- Formio_1.Formio.Rules = Rules_1.default;
54
41
  Formio_1.Formio.Widgets = widgets_1.default;
55
42
  Formio_1.Formio.Evaluator = Evaluator_1.default;
56
- Formio_1.Formio.Conjunctions = conjunctions_1.default;
57
- Formio_1.Formio.Operators = operators_1.default;
58
- Formio_1.Formio.QuickRules = quickRules_1.default;
59
- Formio_1.Formio.Transformers = transformers_1.default;
60
- Formio_1.Formio.ValueSources = valueSources_1.default;
61
43
  Formio_1.Formio.AllComponents = components_1.default;
62
44
  Formio_1.Formio.Licenses = licenses_1.default;
63
45
  // This is strange, but is needed for "premium" components to import correctly.
@@ -106,30 +88,12 @@ function registerModule(mod, defaultFn = null, options = {}) {
106
88
  case 'displays':
107
89
  Formio_1.Formio.Displays.addDisplays(mod.displays);
108
90
  break;
109
- case 'rules':
110
- Formio_1.Formio.Rules.addRules(mod.rules);
111
- break;
112
91
  case 'evaluator':
113
92
  Formio_1.Formio.Evaluator.registerEvaluator(mod.evaluator);
114
93
  break;
115
- case 'conjunctions':
116
- Formio_1.Formio.Conjunctions.addConjunctions(mod.conjunctions);
117
- break;
118
- case 'operators':
119
- Formio_1.Formio.Operators.addOperators(mod.operators);
120
- break;
121
- case 'quickRules':
122
- Formio_1.Formio.QuickRules.addQuickRules(mod.quickRules);
123
- break;
124
- case 'transformers':
125
- Formio_1.Formio.Transformers.addTransformers(mod.transformers);
126
- break;
127
- case 'valueSources':
128
- Formio_1.Formio.ValueSources.addValueSources(mod.valueSources);
129
- break;
130
94
  case 'library':
131
95
  options.license
132
- ? Formio_1.Formio.Licenses.addLicense(mod.library, mod.license)
96
+ ? Formio_1.Formio.Licenses.addLicense(mod.library, options.license)
133
97
  : Formio_1.Formio.Licenses.removeLicense(mod.library);
134
98
  break;
135
99
  default:
@@ -1,4 +1,5 @@
1
1
  export * from "./formio.form";
2
2
  import FormBuilder from './FormBuilder';
3
3
  import Builders from './builders/Builders';
4
- export { FormBuilder, Builders };
4
+ import { Formio } from './formio.form';
5
+ export { FormBuilder, Builders, Formio };
package/lib/cjs/index.js CHANGED
@@ -17,12 +17,13 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
17
17
  return (mod && mod.__esModule) ? mod : { "default": mod };
18
18
  };
19
19
  Object.defineProperty(exports, "__esModule", { value: true });
20
- exports.Builders = exports.FormBuilder = void 0;
20
+ exports.Formio = exports.Builders = exports.FormBuilder = void 0;
21
21
  const FormBuilder_1 = __importDefault(require("./FormBuilder"));
22
22
  exports.FormBuilder = FormBuilder_1.default;
23
23
  const Builders_1 = __importDefault(require("./builders/Builders"));
24
24
  exports.Builders = Builders_1.default;
25
25
  const formio_form_1 = require("./formio.form");
26
+ Object.defineProperty(exports, "Formio", { enumerable: true, get: function () { return formio_form_1.Formio; } });
26
27
  formio_form_1.Formio.Builders = Builders_1.default;
27
28
  formio_form_1.Formio.use = (0, formio_form_1.useModule)((key, mod) => {
28
29
  if (key === 'builders') {
@@ -27,7 +27,6 @@ export default class Providers {
27
27
  type: any;
28
28
  }>;
29
29
  downloadFile(file: any): any;
30
- deleteFile(fileInfo: any): any;
31
30
  };
32
31
  title: string;
33
32
  };
@@ -50,10 +49,8 @@ export default class Providers {
50
49
  type: any;
51
50
  groupPermissions: any;
52
51
  groupId: any;
53
- key: any;
54
52
  }>;
55
53
  downloadFile(file: any): any;
56
- deleteFile: (fileInfo: any) => any;
57
54
  };
58
55
  title: string;
59
56
  };
@@ -71,7 +68,6 @@ export default class Providers {
71
68
  (formio: any): {
72
69
  uploadFile(file: any, fileName: any, dir: any, progressCallback: any, url: any, options: any, fileKey: any, groupPermissions: any, groupId: any, abortCallback: any): Promise<any>;
73
70
  downloadFile(file: any): Promise<any>;
74
- deleteFile: (fileInfo: any) => any;
75
71
  };
76
72
  title: string;
77
73
  };
@@ -7,10 +7,8 @@ declare function azure(formio: any): {
7
7
  type: any;
8
8
  groupPermissions: any;
9
9
  groupId: any;
10
- key: any;
11
10
  }>;
12
11
  downloadFile(file: any): any;
13
- deleteFile: (fileInfo: any) => any;
14
12
  };
15
13
  declare namespace azure {
16
14
  const title: string;
@@ -11,7 +11,7 @@ const azure = (formio) => ({
11
11
  xhr.setRequestHeader('Content-Type', file.type);
12
12
  xhr.setRequestHeader('x-ms-blob-type', 'BlockBlob');
13
13
  return file;
14
- }, file, fileName, dir, progressCallback, groupPermissions, groupId, abortCallback).then((response) => {
14
+ }, file, fileName, dir, progressCallback, groupPermissions, groupId, abortCallback).then(() => {
15
15
  return {
16
16
  storage: 'azure',
17
17
  name: xhr_1.default.path([dir, fileName]),
@@ -19,16 +19,11 @@ const azure = (formio) => ({
19
19
  type: file.type,
20
20
  groupPermissions,
21
21
  groupId,
22
- key: response.pathFile
23
22
  };
24
23
  });
25
24
  },
26
25
  downloadFile(file) {
27
26
  return formio.makeRequest('file', `${formio.formUrl}/storage/azure?name=${xhr_1.default.trim(file.name)}`, 'GET');
28
- },
29
- deleteFile: function deleteFile(fileInfo) {
30
- var url = `${formio.formUrl}/storage/azure?name=${xhr_1.default.trim(fileInfo.name)}&key=${xhr_1.default.trim(fileInfo.key)}`;
31
- return formio.makeRequest('', url, 'delete');
32
27
  }
33
28
  });
34
29
  azure.title = 'Azure File Services';
@@ -2,7 +2,6 @@ export default googledrive;
2
2
  declare function googledrive(formio: any): {
3
3
  uploadFile(file: any, fileName: any, dir: any, progressCallback: any, url: any, options: any, fileKey: any, groupPermissions: any, groupId: any, abortCallback: any): Promise<any>;
4
4
  downloadFile(file: any): Promise<any>;
5
- deleteFile: (fileInfo: any) => any;
6
5
  };
7
6
  declare namespace googledrive {
8
7
  const title: string;
@@ -50,10 +50,6 @@ const googledrive = (formio) => ({
50
50
  file.url =
51
51
  `${formio.formUrl}/storage/gdrive?fileId=${file.id}&fileName=${file.originalName}${token ? `&x-jwt-token=${token}` : ''}`;
52
52
  return Promise.resolve(file);
53
- },
54
- deleteFile: function deleteFile(fileInfo) {
55
- var url = ''.concat(formio.formUrl, `/storage/gdrive?id=${fileInfo.id}&name=${fileInfo.originalName}`);
56
- return formio.makeRequest('', url, 'delete');
57
53
  }
58
54
  });
59
55
  googledrive.title = 'Google Drive';
@@ -11,7 +11,6 @@ declare function s3(formio: any): {
11
11
  type: any;
12
12
  }>;
13
13
  downloadFile(file: any): any;
14
- deleteFile(fileInfo: any): any;
15
14
  };
16
15
  declare namespace s3 {
17
16
  const title: string;
@@ -43,10 +43,6 @@ const s3 = (formio) => ({
43
43
  else {
44
44
  return Promise.resolve(file);
45
45
  }
46
- },
47
- deleteFile(fileInfo) {
48
- const url = `${formio.formUrl}/file/${xhr_1.default.trim(fileInfo.name)}?bucket=${xhr_1.default.trim(fileInfo.bucket)}&key=${xhr_1.default.trim(fileInfo.key)}`;
49
- return formio.makeRequest('', url, 'delete');
50
46
  }
51
47
  });
52
48
  s3.title = 'S3';
@@ -2,6 +2,8 @@ declare namespace _default {
2
2
  const unsavedRowsError: string;
3
3
  const invalidRowsError: string;
4
4
  const invalidRowError: string;
5
+ const invalidOption: string;
6
+ const invalidDay: string;
5
7
  const alertMessageWithLabel: string;
6
8
  const alertMessage: string;
7
9
  const complete: string;
@@ -26,11 +28,14 @@ declare namespace _default {
26
28
  const minDate: string;
27
29
  const maxYear: string;
28
30
  const minYear: string;
31
+ const minSelectedCount: string;
32
+ const maxSelectedCount: string;
29
33
  const invalid_email: string;
30
34
  const invalid_url: string;
31
35
  const invalid_regex: string;
32
36
  const invalid_date: string;
33
37
  const invalid_day: string;
38
+ const invalidValueProperty: string;
34
39
  const mask: string;
35
40
  const valueIsNotAvailable: string;
36
41
  const stripe: string;
@@ -4,6 +4,8 @@ exports.default = {
4
4
  unsavedRowsError: 'Please save all rows before proceeding.',
5
5
  invalidRowsError: 'Please correct invalid rows before proceeding.',
6
6
  invalidRowError: 'Invalid row. Please correct it or delete.',
7
+ invalidOption: '{{field}} is an invalid value.',
8
+ invalidDay: '{{field}} is not a valid day.',
7
9
  alertMessageWithLabel: '{{label}}: {{message}}',
8
10
  alertMessage: '{{message}}',
9
11
  complete: 'Submission Complete',
@@ -28,11 +30,14 @@ exports.default = {
28
30
  minDate: '{{field}} should not contain date before {{- minDate}}',
29
31
  maxYear: '{{field}} should not contain year greater than {{maxYear}}',
30
32
  minYear: '{{field}} should not contain year less than {{minYear}}',
33
+ minSelectedCount: 'You must select at least {{minCount}} items',
34
+ maxSelectedCount: 'You may only select up to {{maxCount}} items',
31
35
  invalid_email: '{{field}} must be a valid email.',
32
36
  invalid_url: '{{field}} must be a valid url.',
33
37
  invalid_regex: '{{field}} does not match the pattern {{regex}}.',
34
38
  invalid_date: '{{field}} is not a valid date.',
35
39
  invalid_day: '{{field}} is not a valid day.',
40
+ invalidValueProperty: 'Invalid Value Property',
36
41
  mask: '{{field}} does not match the mask.',
37
42
  valueIsNotAvailable: '{{ field }} is an invalid value.',
38
43
  stripe: '{{stripe}}',
@@ -18,6 +18,7 @@ const chunk_1 = __importDefault(require("lodash/chunk"));
18
18
  const pad_1 = __importDefault(require("lodash/pad"));
19
19
  const fast_json_patch_1 = require("fast-json-patch");
20
20
  const lodash_1 = __importDefault(require("lodash"));
21
+ const utils_1 = require("./utils");
21
22
  /**
22
23
  * Determine if a component is a layout component or not.
23
24
  *
@@ -306,7 +306,7 @@ export function sanitize(string: any, options: any): any;
306
306
  export function fastCloneDeep(obj: any): any;
307
307
  export function isInputComponent(componentJson: any): any;
308
308
  export function getArrayFromComponentPath(pathStr: any): any;
309
- export function hasInvalidComponent(component: any): any;
309
+ export function isChildOf(child: any, parent: any): boolean;
310
310
  export function getStringFromComponentPath(path: any): any;
311
311
  export function round(number: any, precision: any): any;
312
312
  /**
@@ -367,6 +367,7 @@ export namespace componentValueTypes {
367
367
  const date: string;
368
368
  const any: string;
369
369
  }
370
+ export function interpolateErrors(component: any, errors: FieldError[], interpolateFn: any): [];
370
371
  import jsonLogic from 'json-logic-js';
371
372
  import ConditionOperators from './conditionOperators';
372
373
  import Evaluator from './Evaluator';
@@ -31,7 +31,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
31
31
  };
32
32
  Object.defineProperty(exports, "__esModule", { value: true });
33
33
  exports.observeOverload = exports.withSwitch = exports.firstNonNil = exports.unfold = exports.bootstrapVersion = exports.uniqueKey = exports.iterateKey = exports.delay = exports.fieldData = exports.getCurrencyAffixes = exports.getNumberDecimalLimit = exports.getNumberSeparators = exports.matchInputMask = exports.unmaskValue = exports.getInputMask = exports.convertFormatToMask = exports.convertFormatToMoment = exports.convertFormatToFlatpickr = exports.getLocaleDateFormatInfo = exports.formatOffset = exports.formatDate = exports.momentDate = exports.loadZones = exports.shouldLoadZones = exports.zonesLoaded = exports.offsetDate = exports.currentTimezone = exports.isValidDate = exports.getDateSetting = exports.guid = exports.uniqueName = exports.convertStringToHTMLElement = exports.unescapeHTML = exports.setActionProperty = exports.checkTrigger = exports.checkCondition = exports.checkJsonConditional = exports.checkCustomConditional = exports.getComponentActualValue = exports.checkSimpleConditional = exports.checkCalculated = exports.isMongoId = exports.boolValue = exports.getElementRect = exports.getPropertyValue = exports.getRandomComponentId = exports.evaluate = exports.moment = exports.ConditionOperators = exports.jsonLogic = void 0;
34
- exports.getComponentSavedTypes = exports.componentValueTypes = exports._ = exports.getFocusableElements = exports.isInsideScopingComponent = exports.isPromise = exports.getDataParentComponent = exports.getComponentPath = exports.getComponentPathWithoutIndicies = exports.getBrowserInfo = exports.getIEBrowserVersion = exports.round = exports.getStringFromComponentPath = exports.hasInvalidComponent = exports.getArrayFromComponentPath = exports.isInputComponent = exports.interpolate = exports.Evaluator = exports.fastCloneDeep = exports.sanitize = exports.translateHTMLTemplate = exports.getContextButtons = exports.getContextComponents = void 0;
34
+ exports.interpolateErrors = exports.getComponentSavedTypes = exports.componentValueTypes = exports._ = exports.getFocusableElements = exports.isInsideScopingComponent = exports.isPromise = exports.getDataParentComponent = exports.getComponentPath = exports.getComponentPathWithoutIndicies = exports.getBrowserInfo = exports.getIEBrowserVersion = exports.round = exports.getStringFromComponentPath = exports.isChildOf = exports.getArrayFromComponentPath = exports.isInputComponent = exports.interpolate = exports.Evaluator = exports.fastCloneDeep = exports.sanitize = exports.translateHTMLTemplate = exports.getContextButtons = exports.getContextComponents = void 0;
35
35
  const lodash_1 = __importDefault(require("lodash"));
36
36
  exports._ = lodash_1.default;
37
37
  const fetch_ponyfill_1 = __importDefault(require("fetch-ponyfill"));
@@ -784,8 +784,10 @@ function convertFormatToMask(format) {
784
784
  .replace(/M{3}/g, '***')
785
785
  // Short month conversion if input as text.
786
786
  .replace(/e/g, 'Q')
787
+ // Month number conversion.
788
+ .replace(/W/g, '99')
787
789
  // Year conversion.
788
- .replace(/[ydhmsHMG]/g, '9')
790
+ .replace(/[ydhmswHMG]/g, '9')
789
791
  // AM/PM conversion.
790
792
  .replace(/a/g, 'AA');
791
793
  }
@@ -1297,15 +1299,16 @@ function getArrayFromComponentPath(pathStr) {
1297
1299
  .map(part => lodash_1.default.defaultTo(lodash_1.default.toNumber(part), part));
1298
1300
  }
1299
1301
  exports.getArrayFromComponentPath = getArrayFromComponentPath;
1300
- function hasInvalidComponent(component) {
1301
- return component.getComponents().some((comp) => {
1302
- if (lodash_1.default.isArray(comp.components)) {
1303
- return hasInvalidComponent(comp);
1302
+ function isChildOf(child, parent) {
1303
+ while (child && child.parent) {
1304
+ if (child.parent === parent) {
1305
+ return true;
1304
1306
  }
1305
- return comp.error;
1306
- });
1307
+ child = child.parent;
1308
+ }
1309
+ return false;
1307
1310
  }
1308
- exports.hasInvalidComponent = hasInvalidComponent;
1311
+ exports.isChildOf = isChildOf;
1309
1312
  function getStringFromComponentPath(path) {
1310
1313
  if (!lodash_1.default.isArray(path)) {
1311
1314
  return path;
@@ -1485,3 +1488,18 @@ function getComponentSavedTypes(fullSchema) {
1485
1488
  return null;
1486
1489
  }
1487
1490
  exports.getComponentSavedTypes = getComponentSavedTypes;
1491
+ /**
1492
+ * Interpolates @formio/core errors so that they are compatible with the renderer
1493
+ * @param {FieldError[]} errors
1494
+ * @param firstPass
1495
+ * @returns {[]}
1496
+ */
1497
+ const interpolateErrors = (component, errors, interpolateFn) => {
1498
+ return errors.map((error) => {
1499
+ error.component = component;
1500
+ const { errorKeyOrMessage, context } = error;
1501
+ const toInterpolate = component.errors && component.errors[errorKeyOrMessage] ? component.errors[errorKeyOrMessage] : errorKeyOrMessage;
1502
+ return Object.assign(Object.assign({}, error), { message: unescapeHTML(interpolateFn(toInterpolate, context)), context: Object.assign({}, context) });
1503
+ });
1504
+ };
1505
+ exports.interpolateErrors = interpolateErrors;
@@ -5,6 +5,7 @@ export class Formio {
5
5
  static config: {};
6
6
  static cdn: null;
7
7
  static proxy: boolean;
8
+ static version: string;
8
9
  static setBaseUrl(url: any): Promise<void>;
9
10
  static setProjectUrl(url: any): Promise<void>;
10
11
  static debug(...args: any[]): void;
@@ -15,7 +16,7 @@ export class Formio {
15
16
  static addStyles(wrapper: any, href: any): Promise<void>;
16
17
  static submitDone(instance: any, submission: any): Promise<void>;
17
18
  static formioScript(script: any, builder: any): any;
18
- static init(element: any, builder?: boolean): Promise<any>;
19
+ static init(element: any, options?: {}, builder?: boolean): Promise<any>;
19
20
  static createForm(element: any, form: any, options: any): Promise<any>;
20
21
  static builder(element: any, form: any, options: any): Promise<any>;
21
22
  }
package/lib/mjs/Embed.js CHANGED
@@ -6,6 +6,7 @@ class Formio {
6
6
  static config = {};
7
7
  static cdn = null;
8
8
  static proxy = true;
9
+ static version = 'FORMIO_VERSION';
9
10
  static async setBaseUrl(url) {
10
11
  Formio.baseUrl = url;
11
12
  }
@@ -117,10 +118,14 @@ class Formio {
117
118
  }
118
119
  // Return the full script if the builder is being used.
119
120
  static formioScript(script, builder) {
120
- return builder ? script.replace('formio.form', 'formio.full') : script;
121
+ if (Formio.fullAdded || builder) {
122
+ Formio.fullAdded = true;
123
+ return script.replace('formio.form', 'formio.full');
124
+ }
125
+ return script;
121
126
  }
122
127
  // eslint-disable-next-line max-statements
123
- static async init(element, builder = false) {
128
+ static async init(element, options = {}, builder = false) {
124
129
  Formio.cdn = new CDN(Formio.config.cdn);
125
130
  Formio.config.libs = Formio.config.libs || {
126
131
  uswds: {
@@ -137,10 +142,17 @@ class Formio {
137
142
  };
138
143
  const id = Formio.config.id || `formio-${Math.random().toString(36).substring(7)}`;
139
144
  // Create a new wrapper and add the element inside of a new wrapper.
140
- const wrapper = Formio.createElement('div', {
145
+ let wrapper = Formio.createElement('div', {
141
146
  'id': `"${id}-wrapper"`
142
147
  });
143
148
  element.parentNode.insertBefore(wrapper, element);
149
+ // If we include the libraries, then we will attempt to run this in shadow dom.
150
+ if (Formio.config.includeLibs && (typeof wrapper.attachShadow === 'function') && !Formio.config.premium) {
151
+ wrapper = wrapper.attachShadow({
152
+ mode: 'open'
153
+ });
154
+ options.shadowRoot = wrapper;
155
+ }
144
156
  element.parentNode.removeChild(element);
145
157
  wrapper.appendChild(element);
146
158
  // Load the renderer styles.
@@ -160,7 +172,8 @@ class Formio {
160
172
  }
161
173
  }]
162
174
  }]));
163
- Formio.FormioClass = await Formio.addScript(wrapper, Formio.formioScript(Formio.config.script || `${Formio.cdn.js}/formio.form.min.js`, builder), 'Formio');
175
+ const renderer = Formio.config.debug ? 'formio.form' : 'formio.form.min';
176
+ Formio.FormioClass = await Formio.addScript(wrapper, Formio.formioScript(Formio.config.script || `${Formio.cdn.js}/${renderer}.js`, builder), 'Formio');
164
177
  Formio.FormioClass.setBaseUrl(Formio.baseUrl || Formio.config.base);
165
178
  Formio.FormioClass.setProjectUrl(Formio.projectUrl || Formio.config.project);
166
179
  Formio.FormioClass.language = Formio.language;
@@ -202,7 +215,7 @@ class Formio {
202
215
  Formio.debug('Using premium');
203
216
  Formio.FormioClass.use(await Formio.addScript(wrapper, Formio.config.premium.js, 'premium'));
204
217
  }
205
- await Formio.addStyles(wrapper, Formio.formioScript(Formio.config.style || `${Formio.cdn.js}/formio.form.min.css`, builder));
218
+ await Formio.addStyles(wrapper, Formio.formioScript(Formio.config.style || `${Formio.cdn.js}/${renderer}.css`, builder));
206
219
  if (Formio.config.before) {
207
220
  await Formio.config.before(Formio.FormioClass, element, Formio.config);
208
221
  }
@@ -210,7 +223,7 @@ class Formio {
210
223
  return wrapper;
211
224
  }
212
225
  static async createForm(element, form, options) {
213
- const wrapper = await Formio.init(element);
226
+ const wrapper = await Formio.init(element, options);
214
227
  return Formio.FormioClass.createForm(element, form, {
215
228
  ...options,
216
229
  ...{ noLoader: true }
@@ -236,7 +249,7 @@ class Formio {
236
249
  });
237
250
  }
238
251
  static async builder(element, form, options) {
239
- const wrapper = await Formio.init(element, true);
252
+ const wrapper = await Formio.init(element, options, true);
240
253
  return Formio.FormioClass.builder(element, form, options).then((instance) => {
241
254
  Formio.debug('Builder created', instance);
242
255
  Formio.debug('Removing loader');
package/lib/mjs/PDF.js CHANGED
@@ -235,7 +235,7 @@ export default class PDF extends Webform {
235
235
  const helpBlock = document.getElementById('submit-error');
236
236
  const submitError = this.t('submitError');
237
237
  const isSubmitErrorShown = this.refs.buttonMessage?.textContent.trim() === submitError;
238
- if (!helpBlock && this.errors.length && !isSubmitErrorShown) {
238
+ if (!helpBlock && error.length && !isSubmitErrorShown) {
239
239
  const p = this.ce('p', { class: 'help-block' });
240
240
  this.setContent(p, submitError);
241
241
  p.addEventListener('click', () => {
@@ -245,7 +245,7 @@ export default class PDF extends Webform {
245
245
  this.appendTo(p, div);
246
246
  this.appendTo(div, this.element);
247
247
  }
248
- if (!this.errors.length && helpBlock) {
248
+ if (!error.length && helpBlock) {
249
249
  helpBlock.remove();
250
250
  }
251
251
  super.showErrors(error, triggerEvent);
@@ -20,7 +20,6 @@ declare class Webform extends NestedDataComponent {
20
20
  draftEnabled: boolean;
21
21
  savingDraft: boolean;
22
22
  triggerSaveDraft: any;
23
- customErrors: any[];
24
23
  set nosubmit(arg: any);
25
24
  get nosubmit(): any;
26
25
  /**
@@ -327,7 +326,7 @@ declare class Webform extends NestedDataComponent {
327
326
  * @param {Object} error - An optional additional error to display along with the component errors.
328
327
  * @returns {*}
329
328
  */
330
- showErrors(error: Object, triggerEvent: any, onChange: any): any;
329
+ showErrors(errors: any, triggerEvent: any, onChange: any): any;
331
330
  /**
332
331
  * Called when the submission has completed, or if the submission needs to be sent to an external library.
333
332
  *
@@ -342,7 +341,7 @@ declare class Webform extends NestedDataComponent {
342
341
  *
343
342
  * @param {Object} error - The error that occured.
344
343
  */
345
- onSubmissionError(error: Object): any;
344
+ onSubmissionError(error: Object): false | undefined;
346
345
  /**
347
346
  * Trigger the change event for this form.
348
347
  *
@@ -350,7 +349,6 @@ declare class Webform extends NestedDataComponent {
350
349
  * @param flags
351
350
  */
352
351
  onChange(flags: any, changed: any, modified: any, changes: any): void;
353
- checkData(data: any, flags?: {}): any;
354
352
  /**
355
353
  * Send a delete request to the server.
356
354
  */
@@ -388,7 +386,7 @@ declare class Webform extends NestedDataComponent {
388
386
  *
389
387
  * @returns {Promise} - A promise when the form is done submitting.
390
388
  */
391
- submit(before: boolean, options: any): Promise<any>;
389
+ submit(before: boolean, options?: {}): Promise<any>;
392
390
  submitUrl(URL: any, headers: any): void;
393
391
  triggerRecaptcha(): void;
394
392
  _nosubmit: any;