@formio/angular 7.0.0 → 7.5.0-dev.1060.b272e25

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 (439) hide show
  1. package/.dockerignore +5 -0
  2. package/.editorconfig +13 -0
  3. package/.github/ISSUE_TEMPLATE/bug_report.md +38 -0
  4. package/.github/ISSUE_TEMPLATE/custom-components-support-request.md +15 -0
  5. package/.github/ISSUE_TEMPLATE/question.md +8 -0
  6. package/.github/pull_request_template.md +35 -0
  7. package/.github/workflows/ci.yml +171 -0
  8. package/.travis.yml +4 -0
  9. package/.yo-rc.json +7 -0
  10. package/CHANGELOG.md +1154 -0
  11. package/Dockerfile +20 -0
  12. package/LICENSE +21 -0
  13. package/README.md +204 -13
  14. package/angular.json +38 -0
  15. package/bs-config.json +11 -0
  16. package/{FormioBaseComponent.d.ts.map → dist/angular-formio/FormioBaseComponent.d.ts.map} +1 -1
  17. package/dist/angular-formio/README.md +24 -0
  18. package/{components → dist/angular-formio/components}/formbuilder/formbuilder.component.d.ts +1 -1
  19. package/{components → dist/angular-formio/components}/formbuilder/formbuilder.component.d.ts.map +1 -1
  20. package/{components → dist/angular-formio/components}/formioreport/formioreport.component.d.ts.map +1 -1
  21. package/{core.d.ts → dist/angular-formio/core.d.ts} +1 -1
  22. package/{core.d.ts.map → dist/angular-formio/core.d.ts.map} +1 -1
  23. package/dist/angular-formio/embed/app.service.d.ts +28 -0
  24. package/dist/angular-formio/embed/app.service.d.ts.map +1 -0
  25. package/dist/angular-formio/embed/builder.component.d.ts +14 -0
  26. package/dist/angular-formio/embed/builder.component.d.ts.map +1 -0
  27. package/dist/angular-formio/embed/embed.module.d.ts +10 -0
  28. package/dist/angular-formio/embed/embed.module.d.ts.map +1 -0
  29. package/dist/angular-formio/embed/formio-angular-embed.d.ts.map +1 -0
  30. package/dist/angular-formio/embed/formio.component.d.ts +17 -0
  31. package/dist/angular-formio/embed/formio.component.d.ts.map +1 -0
  32. package/dist/angular-formio/embed/index.d.ts +7 -0
  33. package/dist/angular-formio/embed/index.d.ts.map +1 -0
  34. package/dist/angular-formio/esm2022/FormioBaseComponent.mjs +580 -0
  35. package/{esm2022 → dist/angular-formio/esm2022}/auth/auth.service.mjs +2 -2
  36. package/dist/angular-formio/esm2022/components/formbuilder/formbuilder.component.mjs +202 -0
  37. package/dist/angular-formio/esm2022/components/formio/formio.component.mjs +43 -0
  38. package/dist/angular-formio/esm2022/components/formioreport/formioreport.component.mjs +89 -0
  39. package/{esm2022 → dist/angular-formio/esm2022}/core.mjs +2 -2
  40. package/dist/angular-formio/esm2022/embed/app.service.mjs +58 -0
  41. package/dist/angular-formio/esm2022/embed/builder.component.mjs +36 -0
  42. package/dist/angular-formio/esm2022/embed/embed.module.mjs +35 -0
  43. package/dist/angular-formio/esm2022/embed/formio-angular-embed.mjs +5 -0
  44. package/dist/angular-formio/esm2022/embed/formio.component.mjs +50 -0
  45. package/dist/angular-formio/esm2022/embed/index.mjs +7 -0
  46. package/dist/angular-formio/esm2022/formio.common.mjs +11 -0
  47. package/{esm2022 → dist/angular-formio/esm2022}/formio.config.mjs +2 -2
  48. package/dist/angular-formio/esm2022/formio.service.mjs +62 -0
  49. package/dist/angular-formio/esm2022/grid/grid.component.mjs +257 -0
  50. package/{esm2022 → dist/angular-formio/esm2022}/grid/submission/SubmissionGridHeader.component.mjs +2 -2
  51. package/{esm2022 → dist/angular-formio/esm2022}/manager/form-manager.service.mjs +2 -2
  52. package/{esm2022 → dist/angular-formio/esm2022}/manager/view/view.component.mjs +2 -2
  53. package/{esm2022 → dist/angular-formio/esm2022}/resource/edit/edit.component.mjs +2 -2
  54. package/{esm2022 → dist/angular-formio/esm2022}/resource/resource.service.mjs +2 -2
  55. package/{esm2022 → dist/angular-formio/esm2022}/resource/view/view.component.mjs +2 -2
  56. package/{fesm2022 → dist/angular-formio/fesm2022}/formio-angular-auth.mjs +1 -1
  57. package/dist/angular-formio/fesm2022/formio-angular-auth.mjs.map +1 -0
  58. package/dist/angular-formio/fesm2022/formio-angular-embed.mjs +176 -0
  59. package/dist/angular-formio/fesm2022/formio-angular-embed.mjs.map +1 -0
  60. package/{fesm2022 → dist/angular-formio/fesm2022}/formio-angular-grid.mjs +2 -1
  61. package/dist/angular-formio/fesm2022/formio-angular-grid.mjs.map +1 -0
  62. package/{fesm2022 → dist/angular-formio/fesm2022}/formio-angular-manager.mjs +1 -1
  63. package/dist/angular-formio/fesm2022/formio-angular-manager.mjs.map +1 -0
  64. package/{fesm2022 → dist/angular-formio/fesm2022}/formio-angular-resource.mjs +1 -1
  65. package/dist/angular-formio/fesm2022/formio-angular-resource.mjs.map +1 -0
  66. package/dist/angular-formio/fesm2022/formio-angular.mjs +1187 -0
  67. package/dist/angular-formio/fesm2022/formio-angular.mjs.map +1 -0
  68. package/{formio.common.d.ts → dist/angular-formio/formio.common.d.ts} +2 -2
  69. package/dist/angular-formio/formio.common.d.ts.map +1 -0
  70. package/{formio.config.d.ts → dist/angular-formio/formio.config.d.ts} +1 -1
  71. package/{formio.config.d.ts.map → dist/angular-formio/formio.config.d.ts.map} +1 -1
  72. package/{grid → dist/angular-formio/grid}/submission/SubmissionGridHeader.component.d.ts +1 -1
  73. package/{grid → dist/angular-formio/grid}/submission/SubmissionGridHeader.component.d.ts.map +1 -1
  74. package/{manager → dist/angular-formio/manager}/form-manager.service.d.ts +1 -1
  75. package/{manager → dist/angular-formio/manager}/form-manager.service.d.ts.map +1 -1
  76. package/package.json +54 -57
  77. package/projects/angular-formio/README.md +24 -0
  78. package/projects/angular-formio/auth/ng-package.json +5 -0
  79. package/projects/angular-formio/auth/src/auth.component.html +11 -0
  80. package/projects/angular-formio/auth/src/auth.component.ts +5 -0
  81. package/projects/angular-formio/auth/src/auth.config.ts +72 -0
  82. package/projects/angular-formio/auth/src/auth.module.ts +33 -0
  83. package/projects/angular-formio/auth/src/auth.routes.ts +34 -0
  84. package/projects/angular-formio/auth/src/auth.service.ts +221 -0
  85. package/projects/angular-formio/auth/src/index.ts +8 -0
  86. package/projects/angular-formio/auth/src/login/login.component.html +1 -0
  87. package/projects/angular-formio/auth/src/login/login.component.ts +11 -0
  88. package/projects/angular-formio/auth/src/public_api.ts +5 -0
  89. package/projects/angular-formio/auth/src/register/register.component.html +1 -0
  90. package/projects/angular-formio/auth/src/register/register.component.ts +11 -0
  91. package/projects/angular-formio/auth/src/resetpass/resetpass.component.html +1 -0
  92. package/projects/angular-formio/auth/src/resetpass/resetpass.component.ts +8 -0
  93. package/projects/angular-formio/embed/ng-package.json +5 -0
  94. package/projects/angular-formio/embed/src/app.service.ts +59 -0
  95. package/projects/angular-formio/embed/src/builder.component.ts +19 -0
  96. package/projects/angular-formio/embed/src/embed.module.ts +23 -0
  97. package/projects/angular-formio/embed/src/formio.component.ts +27 -0
  98. package/projects/angular-formio/embed/src/index.ts +6 -0
  99. package/projects/angular-formio/grid/ng-package.json +5 -0
  100. package/projects/angular-formio/grid/src/GridBodyComponent.ts +80 -0
  101. package/projects/angular-formio/grid/src/GridFooterComponent.ts +25 -0
  102. package/projects/angular-formio/grid/src/GridHeaderComponent.ts +25 -0
  103. package/projects/angular-formio/grid/src/form/FormGridBody.component.html +22 -0
  104. package/projects/angular-formio/grid/src/form/FormGridBody.component.scss +4 -0
  105. package/projects/angular-formio/grid/src/form/FormGridBody.component.ts +46 -0
  106. package/projects/angular-formio/grid/src/form/FormGridFooter.component.html +21 -0
  107. package/projects/angular-formio/grid/src/form/FormGridFooter.component.ts +23 -0
  108. package/projects/angular-formio/grid/src/form/FormGridHeader.component.html +18 -0
  109. package/projects/angular-formio/grid/src/form/FormGridHeader.component.ts +24 -0
  110. package/projects/angular-formio/grid/src/form/index.ts +8 -0
  111. package/projects/angular-formio/grid/src/form/time-since.pipe.ts +31 -0
  112. package/projects/angular-formio/grid/src/grid.component.html +18 -0
  113. package/projects/angular-formio/grid/src/grid.component.scss +9 -0
  114. package/projects/angular-formio/grid/src/grid.component.ts +242 -0
  115. package/projects/angular-formio/grid/src/grid.footer.scss +14 -0
  116. package/projects/angular-formio/grid/src/grid.module.ts +49 -0
  117. package/projects/angular-formio/grid/src/grid.service.ts +16 -0
  118. package/projects/angular-formio/grid/src/index.ts +12 -0
  119. package/projects/angular-formio/grid/src/public_api.ts +5 -0
  120. package/projects/angular-formio/grid/src/submission/SubmissionGridBody.component.html +7 -0
  121. package/projects/angular-formio/grid/src/submission/SubmissionGridBody.component.ts +39 -0
  122. package/projects/angular-formio/grid/src/submission/SubmissionGridFooter.component.html +18 -0
  123. package/projects/angular-formio/grid/src/submission/SubmissionGridFooter.component.ts +20 -0
  124. package/projects/angular-formio/grid/src/submission/SubmissionGridHeader.component.html +11 -0
  125. package/projects/angular-formio/grid/src/submission/SubmissionGridHeader.component.ts +72 -0
  126. package/projects/angular-formio/grid/src/submission/index.ts +8 -0
  127. package/projects/angular-formio/grid/src/types/grid-column.ts +7 -0
  128. package/projects/angular-formio/grid/src/types/grid-footer-positions.ts +5 -0
  129. package/projects/angular-formio/grid/src/types/grid-header.ts +14 -0
  130. package/projects/angular-formio/karma.conf.js +32 -0
  131. package/projects/angular-formio/manager/ng-package.json +5 -0
  132. package/projects/angular-formio/manager/src/create/create.component.ts +11 -0
  133. package/projects/angular-formio/manager/src/delete/delete.component.html +6 -0
  134. package/projects/angular-formio/manager/src/delete/delete.component.ts +37 -0
  135. package/projects/angular-formio/manager/src/edit/edit.component.html +19 -0
  136. package/projects/angular-formio/manager/src/edit/edit.component.ts +110 -0
  137. package/projects/angular-formio/manager/src/form/form.component.html +32 -0
  138. package/projects/angular-formio/manager/src/form/form.component.ts +73 -0
  139. package/projects/angular-formio/manager/src/form-manager.config.ts +31 -0
  140. package/projects/angular-formio/manager/src/form-manager.module.ts +54 -0
  141. package/projects/angular-formio/manager/src/form-manager.routes.ts +75 -0
  142. package/projects/angular-formio/manager/src/form-manager.service.ts +190 -0
  143. package/projects/angular-formio/manager/src/index/index.component.html +14 -0
  144. package/projects/angular-formio/manager/src/index/index.component.scss +22 -0
  145. package/projects/angular-formio/manager/src/index/index.component.ts +100 -0
  146. package/projects/angular-formio/manager/src/index.ts +16 -0
  147. package/projects/angular-formio/manager/src/public_api.ts +5 -0
  148. package/projects/angular-formio/manager/src/submission/delete/delete.component.html +6 -0
  149. package/projects/angular-formio/manager/src/submission/delete/delete.component.ts +26 -0
  150. package/projects/angular-formio/manager/src/submission/edit/edit.component.html +7 -0
  151. package/projects/angular-formio/manager/src/submission/edit/edit.component.ts +18 -0
  152. package/projects/angular-formio/manager/src/submission/index/index.component.html +1 -0
  153. package/projects/angular-formio/manager/src/submission/index/index.component.ts +18 -0
  154. package/projects/angular-formio/manager/src/submission/submission/submission.component.html +8 -0
  155. package/projects/angular-formio/manager/src/submission/submission/submission.component.ts +24 -0
  156. package/projects/angular-formio/manager/src/submission/view/view.component.html +7 -0
  157. package/projects/angular-formio/manager/src/submission/view/view.component.ts +9 -0
  158. package/projects/angular-formio/manager/src/view/view.component.html +11 -0
  159. package/projects/angular-formio/manager/src/view/view.component.ts +44 -0
  160. package/projects/angular-formio/ng-package.json +7 -0
  161. package/projects/angular-formio/package.json +37 -0
  162. package/projects/angular-formio/resource/ng-package.json +5 -0
  163. package/projects/angular-formio/resource/src/create/create.component.html +13 -0
  164. package/projects/angular-formio/resource/src/create/create.component.scss +3 -0
  165. package/projects/angular-formio/resource/src/create/create.component.ts +37 -0
  166. package/projects/angular-formio/resource/src/delete/delete.component.html +5 -0
  167. package/projects/angular-formio/resource/src/delete/delete.component.ts +24 -0
  168. package/projects/angular-formio/resource/src/edit/edit.component.html +7 -0
  169. package/projects/angular-formio/resource/src/edit/edit.component.ts +35 -0
  170. package/projects/angular-formio/resource/src/index/index.component.html +10 -0
  171. package/projects/angular-formio/resource/src/index/index.component.ts +64 -0
  172. package/projects/angular-formio/resource/src/index.js +24 -0
  173. package/projects/angular-formio/resource/src/index.ts +11 -0
  174. package/projects/angular-formio/resource/src/public_api.ts +5 -0
  175. package/projects/angular-formio/resource/src/resource.component.html +7 -0
  176. package/projects/angular-formio/resource/src/resource.component.ts +48 -0
  177. package/projects/angular-formio/resource/src/resource.config.ts +17 -0
  178. package/projects/angular-formio/resource/src/resource.module.ts +43 -0
  179. package/projects/angular-formio/resource/src/resource.routes.ts +43 -0
  180. package/projects/angular-formio/resource/src/resource.service.ts +258 -0
  181. package/projects/angular-formio/resource/src/resources.service.ts +24 -0
  182. package/projects/angular-formio/resource/src/view/view.component.html +6 -0
  183. package/projects/angular-formio/resource/src/view/view.component.ts +19 -0
  184. package/projects/angular-formio/src/FormioBaseComponent.ts +554 -0
  185. package/projects/angular-formio/src/components/alerts/formio.alerts.component.html +3 -0
  186. package/projects/angular-formio/src/components/alerts/formio.alerts.component.ts +19 -0
  187. package/projects/angular-formio/src/components/alerts/formio.alerts.ts +21 -0
  188. package/projects/angular-formio/src/components/alerts/parse-html-content.pipe.ts +15 -0
  189. package/projects/angular-formio/src/components/formbuilder/formbuilder.component.html +1 -0
  190. package/projects/angular-formio/src/components/formbuilder/formbuilder.component.ts +213 -0
  191. package/projects/angular-formio/src/components/formio/formio.component.html +8 -0
  192. package/projects/angular-formio/src/components/formio/formio.component.ts +33 -0
  193. package/projects/angular-formio/src/components/formioreport/formioreport.component.html +8 -0
  194. package/projects/angular-formio/src/components/formioreport/formioreport.component.ts +95 -0
  195. package/projects/angular-formio/src/components/loader/formio.loader.component.html +3 -0
  196. package/projects/angular-formio/src/components/loader/formio.loader.component.scss +26 -0
  197. package/projects/angular-formio/src/components/loader/formio.loader.component.ts +10 -0
  198. package/projects/angular-formio/src/core.ts +25 -0
  199. package/projects/angular-formio/src/custom-tags.service.ts +9 -0
  200. package/projects/angular-formio/src/formio-promise.service.ts +36 -0
  201. package/projects/angular-formio/src/formio.common.ts +91 -0
  202. package/projects/angular-formio/src/formio.config.ts +26 -0
  203. package/projects/angular-formio/src/formio.module.ts +38 -0
  204. package/projects/angular-formio/src/formio.service.ts +57 -0
  205. package/projects/angular-formio/src/formio.utils.ts +23 -0
  206. package/projects/angular-formio/src/index.ts +3 -0
  207. package/projects/angular-formio/src/public-api.ts +5 -0
  208. package/projects/angular-formio/src/test.ts +28 -0
  209. package/projects/angular-formio/src/types/alerts-position.ts +6 -0
  210. package/projects/angular-formio/src/types/formio-metadata.ts +10 -0
  211. package/projects/angular-formio/src/types/formio-submission.ts +20 -0
  212. package/projects/angular-formio/tsconfig.lib.json +27 -0
  213. package/projects/angular-formio/tsconfig.lib.prod.json +8 -0
  214. package/projects/angular-formio/tsconfig.spec.json +17 -0
  215. package/projects/angular-formio/tslint.json +17 -0
  216. package/tsconfig.json +39 -0
  217. package/tslint.json +140 -0
  218. package/esm2022/FormioBaseComponent.mjs +0 -583
  219. package/esm2022/components/formbuilder/formbuilder.component.mjs +0 -202
  220. package/esm2022/components/formio/formio.component.mjs +0 -43
  221. package/esm2022/components/formioreport/formioreport.component.mjs +0 -86
  222. package/esm2022/formio.common.mjs +0 -11
  223. package/esm2022/formio.service.mjs +0 -62
  224. package/esm2022/grid/grid.component.mjs +0 -257
  225. package/fesm2022/formio-angular-auth.mjs.map +0 -1
  226. package/fesm2022/formio-angular-grid.mjs.map +0 -1
  227. package/fesm2022/formio-angular-manager.mjs.map +0 -1
  228. package/fesm2022/formio-angular-resource.mjs.map +0 -1
  229. package/fesm2022/formio-angular.mjs +0 -1186
  230. package/fesm2022/formio-angular.mjs.map +0 -1
  231. package/formio.common.d.ts.map +0 -1
  232. /package/{FormioBaseComponent.d.ts → dist/angular-formio/FormioBaseComponent.d.ts} +0 -0
  233. /package/{auth → dist/angular-formio/auth}/auth.component.d.ts +0 -0
  234. /package/{auth → dist/angular-formio/auth}/auth.component.d.ts.map +0 -0
  235. /package/{auth → dist/angular-formio/auth}/auth.config.d.ts +0 -0
  236. /package/{auth → dist/angular-formio/auth}/auth.config.d.ts.map +0 -0
  237. /package/{auth → dist/angular-formio/auth}/auth.module.d.ts +0 -0
  238. /package/{auth → dist/angular-formio/auth}/auth.module.d.ts.map +0 -0
  239. /package/{auth → dist/angular-formio/auth}/auth.routes.d.ts +0 -0
  240. /package/{auth → dist/angular-formio/auth}/auth.routes.d.ts.map +0 -0
  241. /package/{auth → dist/angular-formio/auth}/auth.service.d.ts +0 -0
  242. /package/{auth → dist/angular-formio/auth}/auth.service.d.ts.map +0 -0
  243. /package/{auth → dist/angular-formio/auth}/formio-angular-auth.d.ts.map +0 -0
  244. /package/{auth → dist/angular-formio/auth}/index.d.ts +0 -0
  245. /package/{auth → dist/angular-formio/auth}/index.d.ts.map +0 -0
  246. /package/{auth → dist/angular-formio/auth}/login/login.component.d.ts +0 -0
  247. /package/{auth → dist/angular-formio/auth}/login/login.component.d.ts.map +0 -0
  248. /package/{auth → dist/angular-formio/auth}/register/register.component.d.ts +0 -0
  249. /package/{auth → dist/angular-formio/auth}/register/register.component.d.ts.map +0 -0
  250. /package/{auth → dist/angular-formio/auth}/resetpass/resetpass.component.d.ts +0 -0
  251. /package/{auth → dist/angular-formio/auth}/resetpass/resetpass.component.d.ts.map +0 -0
  252. /package/{components → dist/angular-formio/components}/alerts/formio.alerts.component.d.ts +0 -0
  253. /package/{components → dist/angular-formio/components}/alerts/formio.alerts.component.d.ts.map +0 -0
  254. /package/{components → dist/angular-formio/components}/alerts/formio.alerts.d.ts +0 -0
  255. /package/{components → dist/angular-formio/components}/alerts/formio.alerts.d.ts.map +0 -0
  256. /package/{components → dist/angular-formio/components}/alerts/parse-html-content.pipe.d.ts +0 -0
  257. /package/{components → dist/angular-formio/components}/alerts/parse-html-content.pipe.d.ts.map +0 -0
  258. /package/{components → dist/angular-formio/components}/formio/formio.component.d.ts +0 -0
  259. /package/{components → dist/angular-formio/components}/formio/formio.component.d.ts.map +0 -0
  260. /package/{components → dist/angular-formio/components}/formioreport/formioreport.component.d.ts +0 -0
  261. /package/{components → dist/angular-formio/components}/loader/formio.loader.component.d.ts +0 -0
  262. /package/{components → dist/angular-formio/components}/loader/formio.loader.component.d.ts.map +0 -0
  263. /package/{custom-tags.service.d.ts → dist/angular-formio/custom-tags.service.d.ts} +0 -0
  264. /package/{custom-tags.service.d.ts.map → dist/angular-formio/custom-tags.service.d.ts.map} +0 -0
  265. /package/{esm2022 → dist/angular-formio/esm2022}/auth/auth.component.mjs +0 -0
  266. /package/{esm2022 → dist/angular-formio/esm2022}/auth/auth.config.mjs +0 -0
  267. /package/{esm2022 → dist/angular-formio/esm2022}/auth/auth.module.mjs +0 -0
  268. /package/{esm2022 → dist/angular-formio/esm2022}/auth/auth.routes.mjs +0 -0
  269. /package/{esm2022 → dist/angular-formio/esm2022}/auth/formio-angular-auth.mjs +0 -0
  270. /package/{esm2022 → dist/angular-formio/esm2022}/auth/index.mjs +0 -0
  271. /package/{esm2022 → dist/angular-formio/esm2022}/auth/login/login.component.mjs +0 -0
  272. /package/{esm2022 → dist/angular-formio/esm2022}/auth/register/register.component.mjs +0 -0
  273. /package/{esm2022 → dist/angular-formio/esm2022}/auth/resetpass/resetpass.component.mjs +0 -0
  274. /package/{esm2022 → dist/angular-formio/esm2022}/components/alerts/formio.alerts.component.mjs +0 -0
  275. /package/{esm2022 → dist/angular-formio/esm2022}/components/alerts/formio.alerts.mjs +0 -0
  276. /package/{esm2022 → dist/angular-formio/esm2022}/components/alerts/parse-html-content.pipe.mjs +0 -0
  277. /package/{esm2022 → dist/angular-formio/esm2022}/components/loader/formio.loader.component.mjs +0 -0
  278. /package/{esm2022 → dist/angular-formio/esm2022}/custom-tags.service.mjs +0 -0
  279. /package/{esm2022 → dist/angular-formio/esm2022}/formio-angular.mjs +0 -0
  280. /package/{esm2022 → dist/angular-formio/esm2022}/formio-promise.service.mjs +0 -0
  281. /package/{esm2022 → dist/angular-formio/esm2022}/formio.module.mjs +0 -0
  282. /package/{esm2022 → dist/angular-formio/esm2022}/formio.utils.mjs +0 -0
  283. /package/{esm2022 → dist/angular-formio/esm2022}/grid/GridBodyComponent.mjs +0 -0
  284. /package/{esm2022 → dist/angular-formio/esm2022}/grid/GridFooterComponent.mjs +0 -0
  285. /package/{esm2022 → dist/angular-formio/esm2022}/grid/GridHeaderComponent.mjs +0 -0
  286. /package/{esm2022 → dist/angular-formio/esm2022}/grid/form/FormGridBody.component.mjs +0 -0
  287. /package/{esm2022 → dist/angular-formio/esm2022}/grid/form/FormGridFooter.component.mjs +0 -0
  288. /package/{esm2022 → dist/angular-formio/esm2022}/grid/form/FormGridHeader.component.mjs +0 -0
  289. /package/{esm2022 → dist/angular-formio/esm2022}/grid/form/index.mjs +0 -0
  290. /package/{esm2022 → dist/angular-formio/esm2022}/grid/form/time-since.pipe.mjs +0 -0
  291. /package/{esm2022 → dist/angular-formio/esm2022}/grid/formio-angular-grid.mjs +0 -0
  292. /package/{esm2022 → dist/angular-formio/esm2022}/grid/grid.module.mjs +0 -0
  293. /package/{esm2022 → dist/angular-formio/esm2022}/grid/grid.service.mjs +0 -0
  294. /package/{esm2022 → dist/angular-formio/esm2022}/grid/index.mjs +0 -0
  295. /package/{esm2022 → dist/angular-formio/esm2022}/grid/submission/SubmissionGridBody.component.mjs +0 -0
  296. /package/{esm2022 → dist/angular-formio/esm2022}/grid/submission/SubmissionGridFooter.component.mjs +0 -0
  297. /package/{esm2022 → dist/angular-formio/esm2022}/grid/submission/index.mjs +0 -0
  298. /package/{esm2022 → dist/angular-formio/esm2022}/grid/types/grid-column.mjs +0 -0
  299. /package/{esm2022 → dist/angular-formio/esm2022}/grid/types/grid-footer-positions.mjs +0 -0
  300. /package/{esm2022 → dist/angular-formio/esm2022}/grid/types/grid-header.mjs +0 -0
  301. /package/{esm2022 → dist/angular-formio/esm2022}/index.mjs +0 -0
  302. /package/{esm2022 → dist/angular-formio/esm2022}/manager/create/create.component.mjs +0 -0
  303. /package/{esm2022 → dist/angular-formio/esm2022}/manager/delete/delete.component.mjs +0 -0
  304. /package/{esm2022 → dist/angular-formio/esm2022}/manager/edit/edit.component.mjs +0 -0
  305. /package/{esm2022 → dist/angular-formio/esm2022}/manager/form/form.component.mjs +0 -0
  306. /package/{esm2022 → dist/angular-formio/esm2022}/manager/form-manager.config.mjs +0 -0
  307. /package/{esm2022 → dist/angular-formio/esm2022}/manager/form-manager.module.mjs +0 -0
  308. /package/{esm2022 → dist/angular-formio/esm2022}/manager/form-manager.routes.mjs +0 -0
  309. /package/{esm2022 → dist/angular-formio/esm2022}/manager/formio-angular-manager.mjs +0 -0
  310. /package/{esm2022 → dist/angular-formio/esm2022}/manager/index/index.component.mjs +0 -0
  311. /package/{esm2022 → dist/angular-formio/esm2022}/manager/index.mjs +0 -0
  312. /package/{esm2022 → dist/angular-formio/esm2022}/manager/submission/delete/delete.component.mjs +0 -0
  313. /package/{esm2022 → dist/angular-formio/esm2022}/manager/submission/edit/edit.component.mjs +0 -0
  314. /package/{esm2022 → dist/angular-formio/esm2022}/manager/submission/index/index.component.mjs +0 -0
  315. /package/{esm2022 → dist/angular-formio/esm2022}/manager/submission/submission/submission.component.mjs +0 -0
  316. /package/{esm2022 → dist/angular-formio/esm2022}/manager/submission/view/view.component.mjs +0 -0
  317. /package/{esm2022 → dist/angular-formio/esm2022}/resource/create/create.component.mjs +0 -0
  318. /package/{esm2022 → dist/angular-formio/esm2022}/resource/delete/delete.component.mjs +0 -0
  319. /package/{esm2022 → dist/angular-formio/esm2022}/resource/formio-angular-resource.mjs +0 -0
  320. /package/{esm2022 → dist/angular-formio/esm2022}/resource/index/index.component.mjs +0 -0
  321. /package/{esm2022 → dist/angular-formio/esm2022}/resource/index.mjs +0 -0
  322. /package/{esm2022 → dist/angular-formio/esm2022}/resource/resource.component.mjs +0 -0
  323. /package/{esm2022 → dist/angular-formio/esm2022}/resource/resource.config.mjs +0 -0
  324. /package/{esm2022 → dist/angular-formio/esm2022}/resource/resource.module.mjs +0 -0
  325. /package/{esm2022 → dist/angular-formio/esm2022}/resource/resource.routes.mjs +0 -0
  326. /package/{esm2022 → dist/angular-formio/esm2022}/resource/resources.service.mjs +0 -0
  327. /package/{esm2022 → dist/angular-formio/esm2022}/types/alerts-position.mjs +0 -0
  328. /package/{esm2022 → dist/angular-formio/esm2022}/types/formio-metadata.mjs +0 -0
  329. /package/{esm2022 → dist/angular-formio/esm2022}/types/formio-submission.mjs +0 -0
  330. /package/{formio-angular.d.ts.map → dist/angular-formio/formio-angular.d.ts.map} +0 -0
  331. /package/{formio-promise.service.d.ts → dist/angular-formio/formio-promise.service.d.ts} +0 -0
  332. /package/{formio-promise.service.d.ts.map → dist/angular-formio/formio-promise.service.d.ts.map} +0 -0
  333. /package/{formio.module.d.ts → dist/angular-formio/formio.module.d.ts} +0 -0
  334. /package/{formio.module.d.ts.map → dist/angular-formio/formio.module.d.ts.map} +0 -0
  335. /package/{formio.service.d.ts → dist/angular-formio/formio.service.d.ts} +0 -0
  336. /package/{formio.service.d.ts.map → dist/angular-formio/formio.service.d.ts.map} +0 -0
  337. /package/{formio.utils.d.ts → dist/angular-formio/formio.utils.d.ts} +0 -0
  338. /package/{formio.utils.d.ts.map → dist/angular-formio/formio.utils.d.ts.map} +0 -0
  339. /package/{grid → dist/angular-formio/grid}/GridBodyComponent.d.ts +0 -0
  340. /package/{grid → dist/angular-formio/grid}/GridBodyComponent.d.ts.map +0 -0
  341. /package/{grid → dist/angular-formio/grid}/GridFooterComponent.d.ts +0 -0
  342. /package/{grid → dist/angular-formio/grid}/GridFooterComponent.d.ts.map +0 -0
  343. /package/{grid → dist/angular-formio/grid}/GridHeaderComponent.d.ts +0 -0
  344. /package/{grid → dist/angular-formio/grid}/GridHeaderComponent.d.ts.map +0 -0
  345. /package/{grid → dist/angular-formio/grid}/form/FormGridBody.component.d.ts +0 -0
  346. /package/{grid → dist/angular-formio/grid}/form/FormGridBody.component.d.ts.map +0 -0
  347. /package/{grid → dist/angular-formio/grid}/form/FormGridFooter.component.d.ts +0 -0
  348. /package/{grid → dist/angular-formio/grid}/form/FormGridFooter.component.d.ts.map +0 -0
  349. /package/{grid → dist/angular-formio/grid}/form/FormGridHeader.component.d.ts +0 -0
  350. /package/{grid → dist/angular-formio/grid}/form/FormGridHeader.component.d.ts.map +0 -0
  351. /package/{grid → dist/angular-formio/grid}/form/index.d.ts +0 -0
  352. /package/{grid → dist/angular-formio/grid}/form/index.d.ts.map +0 -0
  353. /package/{grid → dist/angular-formio/grid}/form/time-since.pipe.d.ts +0 -0
  354. /package/{grid → dist/angular-formio/grid}/form/time-since.pipe.d.ts.map +0 -0
  355. /package/{grid → dist/angular-formio/grid}/formio-angular-grid.d.ts.map +0 -0
  356. /package/{grid → dist/angular-formio/grid}/grid.component.d.ts +0 -0
  357. /package/{grid → dist/angular-formio/grid}/grid.component.d.ts.map +0 -0
  358. /package/{grid → dist/angular-formio/grid}/grid.module.d.ts +0 -0
  359. /package/{grid → dist/angular-formio/grid}/grid.module.d.ts.map +0 -0
  360. /package/{grid → dist/angular-formio/grid}/grid.service.d.ts +0 -0
  361. /package/{grid → dist/angular-formio/grid}/grid.service.d.ts.map +0 -0
  362. /package/{grid → dist/angular-formio/grid}/index.d.ts +0 -0
  363. /package/{grid → dist/angular-formio/grid}/index.d.ts.map +0 -0
  364. /package/{grid → dist/angular-formio/grid}/submission/SubmissionGridBody.component.d.ts +0 -0
  365. /package/{grid → dist/angular-formio/grid}/submission/SubmissionGridBody.component.d.ts.map +0 -0
  366. /package/{grid → dist/angular-formio/grid}/submission/SubmissionGridFooter.component.d.ts +0 -0
  367. /package/{grid → dist/angular-formio/grid}/submission/SubmissionGridFooter.component.d.ts.map +0 -0
  368. /package/{grid → dist/angular-formio/grid}/submission/index.d.ts +0 -0
  369. /package/{grid → dist/angular-formio/grid}/submission/index.d.ts.map +0 -0
  370. /package/{grid → dist/angular-formio/grid}/types/grid-column.d.ts +0 -0
  371. /package/{grid → dist/angular-formio/grid}/types/grid-column.d.ts.map +0 -0
  372. /package/{grid → dist/angular-formio/grid}/types/grid-footer-positions.d.ts +0 -0
  373. /package/{grid → dist/angular-formio/grid}/types/grid-footer-positions.d.ts.map +0 -0
  374. /package/{grid → dist/angular-formio/grid}/types/grid-header.d.ts +0 -0
  375. /package/{grid → dist/angular-formio/grid}/types/grid-header.d.ts.map +0 -0
  376. /package/{index.d.ts → dist/angular-formio/index.d.ts} +0 -0
  377. /package/{index.d.ts.map → dist/angular-formio/index.d.ts.map} +0 -0
  378. /package/{manager → dist/angular-formio/manager}/create/create.component.d.ts +0 -0
  379. /package/{manager → dist/angular-formio/manager}/create/create.component.d.ts.map +0 -0
  380. /package/{manager → dist/angular-formio/manager}/delete/delete.component.d.ts +0 -0
  381. /package/{manager → dist/angular-formio/manager}/delete/delete.component.d.ts.map +0 -0
  382. /package/{manager → dist/angular-formio/manager}/edit/edit.component.d.ts +0 -0
  383. /package/{manager → dist/angular-formio/manager}/edit/edit.component.d.ts.map +0 -0
  384. /package/{manager → dist/angular-formio/manager}/form/form.component.d.ts +0 -0
  385. /package/{manager → dist/angular-formio/manager}/form/form.component.d.ts.map +0 -0
  386. /package/{manager → dist/angular-formio/manager}/form-manager.config.d.ts +0 -0
  387. /package/{manager → dist/angular-formio/manager}/form-manager.config.d.ts.map +0 -0
  388. /package/{manager → dist/angular-formio/manager}/form-manager.module.d.ts +0 -0
  389. /package/{manager → dist/angular-formio/manager}/form-manager.module.d.ts.map +0 -0
  390. /package/{manager → dist/angular-formio/manager}/form-manager.routes.d.ts +0 -0
  391. /package/{manager → dist/angular-formio/manager}/form-manager.routes.d.ts.map +0 -0
  392. /package/{manager → dist/angular-formio/manager}/formio-angular-manager.d.ts.map +0 -0
  393. /package/{manager → dist/angular-formio/manager}/index/index.component.d.ts +0 -0
  394. /package/{manager → dist/angular-formio/manager}/index/index.component.d.ts.map +0 -0
  395. /package/{manager → dist/angular-formio/manager}/index.d.ts +0 -0
  396. /package/{manager → dist/angular-formio/manager}/index.d.ts.map +0 -0
  397. /package/{manager → dist/angular-formio/manager}/submission/delete/delete.component.d.ts +0 -0
  398. /package/{manager → dist/angular-formio/manager}/submission/delete/delete.component.d.ts.map +0 -0
  399. /package/{manager → dist/angular-formio/manager}/submission/edit/edit.component.d.ts +0 -0
  400. /package/{manager → dist/angular-formio/manager}/submission/edit/edit.component.d.ts.map +0 -0
  401. /package/{manager → dist/angular-formio/manager}/submission/index/index.component.d.ts +0 -0
  402. /package/{manager → dist/angular-formio/manager}/submission/index/index.component.d.ts.map +0 -0
  403. /package/{manager → dist/angular-formio/manager}/submission/submission/submission.component.d.ts +0 -0
  404. /package/{manager → dist/angular-formio/manager}/submission/submission/submission.component.d.ts.map +0 -0
  405. /package/{manager → dist/angular-formio/manager}/submission/view/view.component.d.ts +0 -0
  406. /package/{manager → dist/angular-formio/manager}/submission/view/view.component.d.ts.map +0 -0
  407. /package/{manager → dist/angular-formio/manager}/view/view.component.d.ts +0 -0
  408. /package/{manager → dist/angular-formio/manager}/view/view.component.d.ts.map +0 -0
  409. /package/{resource → dist/angular-formio/resource}/create/create.component.d.ts +0 -0
  410. /package/{resource → dist/angular-formio/resource}/create/create.component.d.ts.map +0 -0
  411. /package/{resource → dist/angular-formio/resource}/delete/delete.component.d.ts +0 -0
  412. /package/{resource → dist/angular-formio/resource}/delete/delete.component.d.ts.map +0 -0
  413. /package/{resource → dist/angular-formio/resource}/edit/edit.component.d.ts +0 -0
  414. /package/{resource → dist/angular-formio/resource}/edit/edit.component.d.ts.map +0 -0
  415. /package/{resource → dist/angular-formio/resource}/formio-angular-resource.d.ts.map +0 -0
  416. /package/{resource → dist/angular-formio/resource}/index/index.component.d.ts +0 -0
  417. /package/{resource → dist/angular-formio/resource}/index/index.component.d.ts.map +0 -0
  418. /package/{resource → dist/angular-formio/resource}/index.d.ts +0 -0
  419. /package/{resource → dist/angular-formio/resource}/index.d.ts.map +0 -0
  420. /package/{resource → dist/angular-formio/resource}/resource.component.d.ts +0 -0
  421. /package/{resource → dist/angular-formio/resource}/resource.component.d.ts.map +0 -0
  422. /package/{resource → dist/angular-formio/resource}/resource.config.d.ts +0 -0
  423. /package/{resource → dist/angular-formio/resource}/resource.config.d.ts.map +0 -0
  424. /package/{resource → dist/angular-formio/resource}/resource.module.d.ts +0 -0
  425. /package/{resource → dist/angular-formio/resource}/resource.module.d.ts.map +0 -0
  426. /package/{resource → dist/angular-formio/resource}/resource.routes.d.ts +0 -0
  427. /package/{resource → dist/angular-formio/resource}/resource.routes.d.ts.map +0 -0
  428. /package/{resource → dist/angular-formio/resource}/resource.service.d.ts +0 -0
  429. /package/{resource → dist/angular-formio/resource}/resource.service.d.ts.map +0 -0
  430. /package/{resource → dist/angular-formio/resource}/resources.service.d.ts +0 -0
  431. /package/{resource → dist/angular-formio/resource}/resources.service.d.ts.map +0 -0
  432. /package/{resource → dist/angular-formio/resource}/view/view.component.d.ts +0 -0
  433. /package/{resource → dist/angular-formio/resource}/view/view.component.d.ts.map +0 -0
  434. /package/{types → dist/angular-formio/types}/alerts-position.d.ts +0 -0
  435. /package/{types → dist/angular-formio/types}/alerts-position.d.ts.map +0 -0
  436. /package/{types → dist/angular-formio/types}/formio-metadata.d.ts +0 -0
  437. /package/{types → dist/angular-formio/types}/formio-metadata.d.ts.map +0 -0
  438. /package/{types → dist/angular-formio/types}/formio-submission.d.ts +0 -0
  439. /package/{types → dist/angular-formio/types}/formio-submission.d.ts.map +0 -0
@@ -0,0 +1,24 @@
1
+ import { Component } from '@angular/core';
2
+ import { Router, ActivatedRoute } from '@angular/router';
3
+ import { FormioResourceService } from '../resource.service';
4
+
5
+ @Component({
6
+ templateUrl: './delete.component.html'
7
+ })
8
+ export class FormioResourceDeleteComponent {
9
+ constructor(
10
+ public service: FormioResourceService,
11
+ public route: ActivatedRoute,
12
+ public router: Router
13
+ ) {}
14
+
15
+ onDelete() {
16
+ this.service.remove().then(() => {
17
+ this.router.navigate(['../../'], { relativeTo: this.route });
18
+ });
19
+ }
20
+
21
+ onCancel() {
22
+ this.router.navigate(['../', 'view'], { relativeTo: this.route });
23
+ }
24
+ }
@@ -0,0 +1,7 @@
1
+ <formio
2
+ [form]="service.form"
3
+ [submission]="service.resource"
4
+ [error]="triggerError"
5
+ [submitDone]="onSubmitDone"
6
+ (submit)="onSubmit($event)"
7
+ ></formio>
@@ -0,0 +1,35 @@
1
+ import {Component, EventEmitter, OnDestroy} from '@angular/core';
2
+ import { Router, ActivatedRoute } from '@angular/router';
3
+ import { FormioResourceService } from '../resource.service';
4
+ import { FormioResourceConfig } from '../resource.config';
5
+ import { Formio } from '@formio/js';
6
+
7
+ @Component({
8
+ templateUrl: './edit.component.html'
9
+ })
10
+ export class FormioResourceEditComponent implements OnDestroy {
11
+ public triggerError: EventEmitter<any> = new EventEmitter();
12
+ public onSubmitDone: EventEmitter<object> = new EventEmitter();
13
+ public submission = {data: {}};
14
+ constructor(
15
+ public service: FormioResourceService,
16
+ public route: ActivatedRoute,
17
+ public router: Router,
18
+ public config: FormioResourceConfig
19
+ ) {}
20
+
21
+ onSubmit(submission: any) {
22
+ const edit = this.service.resource;
23
+ edit.data = submission.data;
24
+ this.service.save(edit)
25
+ .then(() => {
26
+ this.onSubmitDone.emit(this.service.resource);
27
+ this.router.navigate(['../', 'view'], { relativeTo: this.route });
28
+ })
29
+ .catch((err) => this.triggerError.emit(err));
30
+ }
31
+
32
+ ngOnDestroy() {
33
+ Formio.clearCache();
34
+ }
35
+ }
@@ -0,0 +1,10 @@
1
+ <formio-alerts [alerts]="service.alerts"></formio-alerts>
2
+ <formio-grid
3
+ [src]="gridSrc"
4
+ [query]="gridQuery"
5
+ [onForm]="service.formLoaded"
6
+ (rowSelect)="onSelect($event)"
7
+ (error)="service.onError($event)"
8
+ (createItem)="onCreateItem()"
9
+ [createText]="createText"
10
+ ></formio-grid>
@@ -0,0 +1,64 @@
1
+ import { Component, OnInit, ChangeDetectorRef, NgZone } from '@angular/core';
2
+ import { Router, ActivatedRoute } from '@angular/router';
3
+ import { FormioResourceService } from '../resource.service';
4
+ import { FormioResourceConfig } from '../resource.config';
5
+ import { each } from 'lodash';
6
+
7
+ @Component({
8
+ templateUrl: './index.component.html'
9
+ })
10
+ export class FormioResourceIndexComponent implements OnInit {
11
+ public gridSrc?: string;
12
+ public gridQuery: any;
13
+ public createText: String;
14
+
15
+ constructor(
16
+ public service: FormioResourceService,
17
+ public route: ActivatedRoute,
18
+ public router: Router,
19
+ public config: FormioResourceConfig,
20
+ public cdr: ChangeDetectorRef,
21
+ public ngZone: NgZone,
22
+ ) {
23
+ }
24
+
25
+ ngOnInit() {
26
+ this.service.init(this.route).then(() => {
27
+ this.gridQuery = {};
28
+ if (
29
+ this.service &&
30
+ this.config.parents &&
31
+ this.config.parents.length
32
+ ) {
33
+ this.service.loadParents().then((parents: any) => {
34
+ each(parents, (parent: any) => {
35
+ if (parent && parent.filter) {
36
+ this.gridQuery['data.' + parent.name + '._id'] =
37
+ parent.resource._id;
38
+ }
39
+ });
40
+
41
+ // Set the source to load the grid.
42
+ this.gridSrc = this.service.formUrl;
43
+ this.createText = `New ${this.service.form.title}`;
44
+ this.cdr.detectChanges();
45
+ });
46
+ } else if (this.service.formUrl) {
47
+ this.gridSrc = this.service.formUrl;
48
+ this.createText = `New ${this.service.form.title}`;
49
+ }
50
+ });
51
+ }
52
+
53
+ onSelect(row: any) {
54
+ this.ngZone.run(() => {
55
+ this.router.navigate([row._id, 'view'], { relativeTo: this.route });
56
+ });
57
+ }
58
+
59
+ onCreateItem() {
60
+ this.ngZone.run(() => {
61
+ this.router.navigate(['new'], { relativeTo: this.route });
62
+ });
63
+ }
64
+ }
@@ -0,0 +1,24 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var resource_config_1 = require("./resource.config");
4
+ exports.FormioResourceConfig = resource_config_1.FormioResourceConfig;
5
+ var resources_service_1 = require("./resources.service");
6
+ exports.FormioResources = resources_service_1.FormioResources;
7
+ var resource_service_1 = require("./resource.service");
8
+ exports.FormioResourceService = resource_service_1.FormioResourceService;
9
+ var resource_component_1 = require("./resource.component");
10
+ exports.FormioResourceComponent = resource_component_1.FormioResourceComponent;
11
+ var view_component_1 = require("./view/view.component");
12
+ exports.FormioResourceViewComponent = view_component_1.FormioResourceViewComponent;
13
+ var edit_component_1 = require("./edit/edit.component");
14
+ exports.FormioResourceEditComponent = edit_component_1.FormioResourceEditComponent;
15
+ var delete_component_1 = require("./delete/delete.component");
16
+ exports.FormioResourceDeleteComponent = delete_component_1.FormioResourceDeleteComponent;
17
+ var create_component_1 = require("./create/create.component");
18
+ exports.FormioResourceCreateComponent = create_component_1.FormioResourceCreateComponent;
19
+ var index_component_1 = require("./index/index.component");
20
+ exports.FormioResourceIndexComponent = index_component_1.FormioResourceIndexComponent;
21
+ var resource_routes_1 = require("./resource.routes");
22
+ exports.FormioResourceRoutes = resource_routes_1.FormioResourceRoutes;
23
+ var resource_module_1 = require("./resource.module");
24
+ exports.FormioResource = resource_module_1.FormioResource;
@@ -0,0 +1,11 @@
1
+ export { FormioResourceConfig } from './resource.config';
2
+ export { FormioResources } from './resources.service';
3
+ export { FormioResourceService } from './resource.service';
4
+ export { FormioResourceComponent } from './resource.component';
5
+ export { FormioResourceViewComponent } from './view/view.component';
6
+ export { FormioResourceEditComponent } from './edit/edit.component';
7
+ export { FormioResourceDeleteComponent } from './delete/delete.component';
8
+ export { FormioResourceCreateComponent } from './create/create.component';
9
+ export { FormioResourceIndexComponent } from './index/index.component';
10
+ export { FormioResourceRoutes } from './resource.routes';
11
+ export { FormioResource } from './resource.module';
@@ -0,0 +1,5 @@
1
+ /*
2
+ * Public API Surface of angular-formio
3
+ */
4
+
5
+ export * from './index';
@@ -0,0 +1,7 @@
1
+ <ul class="nav nav-tabs" style="margin-bottom: 10px">
2
+ <li class="nav-item"><a class="nav-link" routerLink="../"><em class="fa fa-chevron-left bi bi-chevron-left"></em></a></li>
3
+ <li class="nav-item" routerLinkActive="active"><a class="nav-link" routerLink="view" routerLinkActive="active">View</a></li>
4
+ <li class="nav-item" routerLinkActive="active" *ngIf="perms.edit"><a class="nav-link" routerLink="edit" routerLinkActive="active">Edit</a></li>
5
+ <li class="nav-item" routerLinkActive="active" *ngIf="perms.delete"><a class="nav-link" routerLink="delete" routerLinkActive="active"><span class="fa fa-trash bi bi-trash"></span></a></li>
6
+ </ul>
7
+ <router-outlet></router-outlet>
@@ -0,0 +1,48 @@
1
+ import { Component, OnDestroy, OnInit } from '@angular/core';
2
+ import { ActivatedRoute, NavigationEnd, Router, RouterEvent } from '@angular/router';
3
+ import { FormioAuthService } from '@formio/angular/auth';
4
+ import { FormioResourceService } from './resource.service';
5
+ import { Subscription } from 'rxjs';
6
+
7
+ @Component({
8
+ templateUrl: './resource.component.html'
9
+ })
10
+ export class FormioResourceComponent implements OnInit, OnDestroy {
11
+ public perms = {delete: false, edit: false};
12
+ public routerSubscription: Subscription;
13
+
14
+ constructor(
15
+ public service: FormioResourceService,
16
+ public route: ActivatedRoute,
17
+ public auth: FormioAuthService,
18
+ public router: Router
19
+ ) {}
20
+
21
+ ngOnInit() {
22
+ this.init();
23
+ this.routerSubscription = this.router.events.subscribe((event) => {
24
+ if (event instanceof NavigationEnd) {
25
+ this.init();
26
+ }
27
+ });
28
+ }
29
+
30
+ ngOnDestroy() {
31
+ this.routerSubscription.unsubscribe();
32
+ }
33
+
34
+ init() {
35
+ return this.service.init(this.route).then(() =>
36
+ this.auth.ready.then(() =>
37
+ this.service.formFormio.userPermissions(
38
+ this.auth.user,
39
+ this.service.form,
40
+ this.service.resource
41
+ ).then((perms) => {
42
+ this.perms.delete = perms.delete;
43
+ this.perms.edit = perms.edit;
44
+ return this.service.resource;
45
+ })
46
+ ));
47
+ }
48
+ }
@@ -0,0 +1,17 @@
1
+ import { Injectable } from '@angular/core';
2
+
3
+ export interface FormioResourceRouteConfig {
4
+ index?: any;
5
+ create?: any;
6
+ resource?: any;
7
+ view?: any;
8
+ edit?: any;
9
+ delete?: any;
10
+ }
11
+
12
+ @Injectable()
13
+ export class FormioResourceConfig {
14
+ name = '';
15
+ form = '';
16
+ parents: any[] = [];
17
+ }
@@ -0,0 +1,43 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { RouterModule } from '@angular/router';
3
+ import { CommonModule } from '@angular/common';
4
+ import { FormioModule } from '@formio/angular';
5
+ import { FormioAlerts } from '@formio/angular';
6
+ import { FormioGrid } from '@formio/angular/grid';
7
+ import { FormioResourceComponent } from './resource.component';
8
+ import { FormioResourceViewComponent } from './view/view.component';
9
+ import { FormioResourceEditComponent } from './edit/edit.component';
10
+ import { FormioResourceDeleteComponent } from './delete/delete.component';
11
+ import { FormioResourceCreateComponent } from './create/create.component';
12
+ import { FormioResourceIndexComponent } from './index/index.component';
13
+ import { FormioResourceRouteConfig } from './resource.config';
14
+ import { FormioResourceRoutes } from './resource.routes';
15
+ import { extendRouter } from '@formio/angular';
16
+
17
+ @NgModule({
18
+ imports: [
19
+ CommonModule,
20
+ FormioModule,
21
+ FormioGrid,
22
+ RouterModule
23
+ ],
24
+ declarations: [
25
+ FormioResourceComponent,
26
+ FormioResourceCreateComponent,
27
+ FormioResourceIndexComponent,
28
+ FormioResourceViewComponent,
29
+ FormioResourceEditComponent,
30
+ FormioResourceDeleteComponent
31
+ ],
32
+ providers: [
33
+ FormioAlerts
34
+ ]
35
+ })
36
+ export class FormioResource {
37
+ static forChild(config?: FormioResourceRouteConfig): any {
38
+ return extendRouter(FormioResource, config, FormioResourceRoutes);
39
+ }
40
+ static forRoot(config?: FormioResourceRouteConfig): any {
41
+ return extendRouter(FormioResource, config, FormioResourceRoutes);
42
+ }
43
+ }
@@ -0,0 +1,43 @@
1
+ import { Routes } from '@angular/router';
2
+ import { FormioResourceComponent } from './resource.component';
3
+ import { FormioResourceViewComponent } from './view/view.component';
4
+ import { FormioResourceEditComponent } from './edit/edit.component';
5
+ import { FormioResourceDeleteComponent } from './delete/delete.component';
6
+ import { FormioResourceCreateComponent } from './create/create.component';
7
+ import { FormioResourceIndexComponent } from './index/index.component';
8
+ import { FormioResourceRouteConfig } from './resource.config';
9
+ export function FormioResourceRoutes(config?: FormioResourceRouteConfig): Routes {
10
+ return [
11
+ {
12
+ path: '',
13
+ component: config && config.index ? config.index : FormioResourceIndexComponent
14
+ },
15
+ {
16
+ path: 'new',
17
+ component: config && config.create ? config.create : FormioResourceCreateComponent
18
+ },
19
+ {
20
+ path: ':id',
21
+ component: config && config.resource ? config.resource : FormioResourceComponent,
22
+ children: [
23
+ {
24
+ path: '',
25
+ redirectTo: 'view',
26
+ pathMatch: 'full'
27
+ },
28
+ {
29
+ path: 'view',
30
+ component: config && config.view ? config.view : FormioResourceViewComponent
31
+ },
32
+ {
33
+ path: 'edit',
34
+ component: config && config.edit ? config.edit : FormioResourceEditComponent
35
+ },
36
+ {
37
+ path: 'delete',
38
+ component: config && config.delete ? config.delete : FormioResourceDeleteComponent
39
+ }
40
+ ]
41
+ }
42
+ ];
43
+ }
@@ -0,0 +1,258 @@
1
+ import { EventEmitter, Injectable, Optional } from '@angular/core';
2
+ import { ActivatedRoute } from '@angular/router';
3
+ import { FormioResourceConfig } from './resource.config';
4
+ import { FormioResources } from './resources.service';
5
+ import { FormioPromiseService } from '@formio/angular';
6
+ import { FormioAlerts } from '@formio/angular';
7
+ import { FormioAppConfig } from '@formio/angular';
8
+ import { FormioRefreshValue } from '@formio/angular';
9
+ import { Formio, Utils } from '@formio/js';
10
+ import _ from 'lodash';
11
+
12
+ @Injectable()
13
+ export class FormioResourceService {
14
+ public initialized = false;
15
+ public form: any;
16
+ public alerts: FormioAlerts;
17
+ public resource: any;
18
+ public resourceUrl?: string;
19
+ public formUrl: string;
20
+ public formFormio: FormioPromiseService;
21
+ public formio: FormioPromiseService;
22
+ public refresh: EventEmitter<FormioRefreshValue>;
23
+
24
+ public resourceResolve: any;
25
+ public resourceReject: any;
26
+ public resourceLoaded?: Promise<any>;
27
+
28
+ public resourceLoading?: Promise<any>;
29
+ public resourceId?: string;
30
+ public resources: any;
31
+
32
+ public ready?: Promise<any>;
33
+ public readyResolve: any;
34
+ public readyReject: any;
35
+
36
+ public formLoading?: Promise<any>;
37
+ public formLoaded: Promise<any>;
38
+ public formResolve: any;
39
+ public formReject: any;
40
+ public isLoading: boolean;
41
+
42
+ constructor(
43
+ public appConfig: FormioAppConfig,
44
+ public config: FormioResourceConfig,
45
+ @Optional() public resourcesService: FormioResources
46
+ ) {
47
+ this.isLoading = true;
48
+ this.alerts = new FormioAlerts();
49
+ this.refresh = new EventEmitter();
50
+ }
51
+
52
+ initialize() {
53
+ console.warn('FormioResourceService.initialize() has been deprecated.');
54
+ }
55
+
56
+ setResource(resourceId: any) {
57
+ this.resourceLoading = null;
58
+ this.formLoading = null;
59
+ this.ready = new Promise((resolve: any, reject: any) => {
60
+ this.readyResolve = resolve;
61
+ this.readyReject = reject;
62
+ });
63
+ this.formLoaded = new Promise((resolve: any, reject: any) => {
64
+ this.formResolve = resolve;
65
+ this.formReject = reject;
66
+ });
67
+ this.resourceLoaded = new Promise((resolve: any, reject: any) => {
68
+ this.resourceResolve = resolve;
69
+ this.resourceReject = reject;
70
+ });
71
+ this.resourceId = resourceId;
72
+ this.resourceUrl = this.appConfig.appUrl + '/' + this.config.form;
73
+ if (this.resourceId) {
74
+ this.resourceUrl += '/submission/' + this.resourceId;
75
+ }
76
+ if (this.appConfig && this.appConfig.appUrl) {
77
+ Formio.setBaseUrl(this.appConfig.apiUrl);
78
+ Formio.setProjectUrl(this.appConfig.appUrl);
79
+ Formio.formOnly = this.appConfig.formOnly;
80
+ } else {
81
+ console.error('You must provide an AppConfig within your application!');
82
+ }
83
+ this.formio = new FormioPromiseService(this.resourceUrl);
84
+ this.resource = { data: {} };
85
+ }
86
+
87
+ init(route: ActivatedRoute) {
88
+ const resourceId = route.snapshot.params['id'];
89
+ if (resourceId && (resourceId === this.resourceId)) {
90
+ return this.ready;
91
+ }
92
+
93
+ // Set the resource.
94
+ this.setResource(resourceId);
95
+
96
+ // Add this resource service to the list of all resources in context.
97
+ if (this.resourcesService) {
98
+ this.resources = this.resourcesService.resources;
99
+ this.resources[this.config.name] = this;
100
+ }
101
+
102
+ if (this.resourceId) {
103
+ return this.loadForm()
104
+ .then(() => this.loadResource())
105
+ .then(() => this.readyResolve(this.form))
106
+ .catch((err) => this.readyReject(err));
107
+ }
108
+
109
+ return this.loadForm()
110
+ .then(() => this.readyResolve(this.form))
111
+ .catch((err) => this.readyReject(err));
112
+ }
113
+
114
+ onError(error: any) {
115
+ this.alerts.setAlert({
116
+ type: 'danger',
117
+ message: error.message || error
118
+ });
119
+ if (this.resourcesService) {
120
+ this.resourcesService.error.emit(error);
121
+ }
122
+ throw error;
123
+ }
124
+
125
+ onFormError(err: any) {
126
+ this.formReject(err);
127
+ this.onError(err);
128
+ }
129
+
130
+ loadForm() {
131
+ if (this.formLoading) {
132
+ return this.formLoading;
133
+ }
134
+ this.formUrl = this.appConfig.appUrl + '/' + this.config.form;
135
+ this.formFormio = new FormioPromiseService(this.formUrl);
136
+ this.isLoading = true;
137
+ this.formLoading = this.formFormio
138
+ .loadForm()
139
+ .then(
140
+ (form: any) => {
141
+ this.form = form;
142
+ this.formResolve(form);
143
+ this.isLoading = false;
144
+ this.loadParents();
145
+ return form;
146
+ },
147
+ (err: any) => this.onFormError(err)
148
+ )
149
+ .catch((err: any) => this.onFormError(err));
150
+ return this.formLoading;
151
+ }
152
+
153
+ loadParents() {
154
+ if (!this.config.parents || !this.config.parents.length) {
155
+ return Promise.resolve([]);
156
+ }
157
+ if (!this.resourcesService) {
158
+ console.warn(
159
+ 'You must provide the FormioResources within your application to use nested resources.'
160
+ );
161
+ return Promise.resolve([]);
162
+ }
163
+ return this.formLoading.then((form) => {
164
+ // Iterate through the list of parents.
165
+ const _parentsLoaded: Array<Promise<any>> = [];
166
+ this.config.parents.forEach((parent: any) => {
167
+ const resourceName = parent.resource || parent;
168
+ const resourceField = parent.field || parent;
169
+ const filterResource = parent.hasOwnProperty('filter') ? parent.filter : true;
170
+ if (this.resources.hasOwnProperty(resourceName) && this.resources[resourceName].resourceLoaded) {
171
+ _parentsLoaded.push(
172
+ this.resources[resourceName].resourceLoaded.then((resource: any) => {
173
+ let parentPath = '';
174
+ Utils.eachComponent(form.components, (component, path) => {
175
+ if (component.key === resourceField) {
176
+ component.hidden = true;
177
+ component.clearOnHide = false;
178
+ _.set(this.resource.data, path, resource);
179
+ parentPath = path;
180
+ return true;
181
+ }
182
+ });
183
+ return {
184
+ name: parentPath,
185
+ filter: filterResource,
186
+ resource
187
+ };
188
+ })
189
+ );
190
+ }
191
+ });
192
+
193
+ // When all the parents have loaded, emit that to the onParents emitter.
194
+ return Promise.all(_parentsLoaded).then((parents: any) => {
195
+ this.refresh.emit({
196
+ form: form,
197
+ submission: this.resource
198
+ });
199
+ return parents;
200
+ });
201
+ });
202
+ }
203
+
204
+ onSubmissionError(err: any) {
205
+ this.onError(err);
206
+ this.resourceReject(err);
207
+ }
208
+
209
+ loadResource() {
210
+ if (this.resourceLoading) {
211
+ return this.resourceLoading;
212
+ }
213
+ this.isLoading = true;
214
+ this.resourceLoading = this.formio
215
+ .loadSubmission(null, {ignoreCache: true})
216
+ .then(
217
+ (resource: any) => {
218
+ this.resource = resource;
219
+ this.isLoading = false;
220
+ this.refresh.emit({
221
+ property: 'submission',
222
+ value: this.resource
223
+ });
224
+ this.resourceResolve(resource);
225
+ return resource;
226
+ },
227
+ (err: any) => this.onSubmissionError(err)
228
+ )
229
+ .catch((err: any) => this.onSubmissionError(err));
230
+ return this.resourceLoading;
231
+ }
232
+
233
+ save(resource: any) {
234
+ const formio = resource._id ? this.formio : this.formFormio;
235
+ return formio
236
+ .saveSubmission(resource)
237
+ .then(
238
+ (saved: any) => {
239
+ this.resource = saved;
240
+ return saved;
241
+ },
242
+ (err: any) => this.onError(err)
243
+ )
244
+ .catch((err: any) => this.onError(err));
245
+ }
246
+
247
+ remove() {
248
+ return this.formio
249
+ .deleteSubmission()
250
+ .then(
251
+ () => {
252
+ this.resource = null;
253
+ },
254
+ (err: any) => this.onError(err)
255
+ )
256
+ .catch((err: any) => this.onError(err));
257
+ }
258
+ }
@@ -0,0 +1,24 @@
1
+ import { Injectable, EventEmitter } from '@angular/core';
2
+ import { FormioAuthService } from '@formio/angular/auth';
3
+
4
+ export interface FormioResourceMap {
5
+ [name: string]: any;
6
+ }
7
+
8
+ @Injectable()
9
+ export class FormioResources {
10
+ resources: FormioResourceMap = {};
11
+ error: EventEmitter<any>;
12
+ onError: EventEmitter<any>;
13
+ constructor(
14
+ public auth?: FormioAuthService
15
+ ) {
16
+ this.error = new EventEmitter();
17
+ this.onError = this.error;
18
+ this.resources = {
19
+ currentUser: {
20
+ resourceLoaded: this.auth.userReady
21
+ }
22
+ };
23
+ }
24
+ }
@@ -0,0 +1,6 @@
1
+ <formio
2
+ [form]="service.form"
3
+ [submission]="service.resource"
4
+ [hideComponents]="config.parents"
5
+ [readOnly]="true"
6
+ ></formio>
@@ -0,0 +1,19 @@
1
+ import {Component, OnDestroy} from '@angular/core';
2
+ import { FormioResourceService } from '../resource.service';
3
+ import { FormioResourceConfig } from '../resource.config';
4
+ import {Formio} from '@formio/js';
5
+
6
+ @Component({
7
+ templateUrl: './view.component.html'
8
+ })
9
+ export class FormioResourceViewComponent implements OnDestroy{
10
+ constructor(
11
+ public service: FormioResourceService,
12
+ public config: FormioResourceConfig
13
+ ) {}
14
+ public submission = {data: {}};
15
+
16
+ ngOnDestroy() {
17
+ Formio.clearCache();
18
+ }
19
+ }