@formio/angular 7.5.0-dev.1060.f7c9795 → 7.5.0-dev.1063.d9205fe

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 (464) hide show
  1. package/{dist/angular-formio/FormioBaseComponent.d.ts → FormioBaseComponent.d.ts} +1 -1
  2. package/{dist/angular-formio/FormioBaseComponent.d.ts.map → FormioBaseComponent.d.ts.map} +1 -1
  3. package/README.md +13 -204
  4. package/{dist/angular-formio/components → components}/formioreport/formioreport.component.d.ts +1 -0
  5. package/{dist/angular-formio/components → components}/formioreport/formioreport.component.d.ts.map +1 -1
  6. package/{dist/angular-formio/core.d.ts → core.d.ts} +3 -1
  7. package/{dist/angular-formio/core.d.ts.map → core.d.ts.map} +1 -1
  8. package/{dist/angular-formio/embed → embed}/app.service.d.ts +1 -1
  9. package/embed/app.service.d.ts.map +1 -0
  10. package/{dist/angular-formio/embed → embed}/builder.component.d.ts +0 -1
  11. package/embed/builder.component.d.ts.map +1 -0
  12. package/{dist/angular-formio/embed → embed}/formio.component.d.ts +0 -1
  13. package/embed/formio.component.d.ts.map +1 -0
  14. package/{dist/angular-formio/embed → embed}/index.d.ts +1 -1
  15. package/embed/index.d.ts.map +1 -0
  16. package/esm2022/FormioBaseComponent.mjs +580 -0
  17. package/{dist/angular-formio/esm2022 → esm2022}/auth/auth.component.mjs +4 -4
  18. package/{dist/angular-formio/esm2022 → esm2022}/auth/auth.config.mjs +4 -4
  19. package/{dist/angular-formio/esm2022 → esm2022}/auth/auth.module.mjs +5 -5
  20. package/esm2022/auth/auth.service.mjs +199 -0
  21. package/{dist/angular-formio/esm2022 → esm2022}/auth/login/login.component.mjs +4 -4
  22. package/{dist/angular-formio/esm2022 → esm2022}/auth/register/register.component.mjs +4 -4
  23. package/{dist/angular-formio/esm2022 → esm2022}/auth/resetpass/resetpass.component.mjs +4 -4
  24. package/esm2022/components/alerts/formio.alerts.component.mjs +28 -0
  25. package/{dist/angular-formio/esm2022 → esm2022}/components/alerts/parse-html-content.pipe.mjs +4 -4
  26. package/esm2022/components/formbuilder/formbuilder.component.mjs +202 -0
  27. package/esm2022/components/formio/formio.component.mjs +43 -0
  28. package/esm2022/components/formioreport/formioreport.component.mjs +89 -0
  29. package/{dist/angular-formio/esm2022 → esm2022}/components/loader/formio.loader.component.mjs +4 -4
  30. package/esm2022/core.mjs +19 -0
  31. package/{dist/angular-formio/esm2022 → esm2022}/custom-tags.service.mjs +4 -4
  32. package/esm2022/embed/app.service.mjs +58 -0
  33. package/esm2022/embed/builder.component.mjs +36 -0
  34. package/{dist/angular-formio/esm2022 → esm2022}/embed/embed.module.mjs +5 -5
  35. package/esm2022/embed/formio.component.mjs +50 -0
  36. package/esm2022/embed/index.mjs +7 -0
  37. package/esm2022/formio.common.mjs +11 -0
  38. package/{dist/angular-formio/esm2022 → esm2022}/formio.config.mjs +4 -4
  39. package/{dist/angular-formio/esm2022 → esm2022}/formio.module.mjs +5 -5
  40. package/{dist/angular-formio/esm2022 → esm2022}/formio.service.mjs +2 -2
  41. package/esm2022/formio.utils.mjs +21 -0
  42. package/esm2022/grid/GridBodyComponent.mjs +89 -0
  43. package/{dist/angular-formio/esm2022 → esm2022}/grid/GridFooterComponent.mjs +4 -4
  44. package/{dist/angular-formio/esm2022 → esm2022}/grid/GridHeaderComponent.mjs +4 -4
  45. package/{dist/angular-formio/esm2022 → esm2022}/grid/form/FormGridBody.component.mjs +4 -4
  46. package/esm2022/grid/form/FormGridFooter.component.mjs +26 -0
  47. package/{dist/angular-formio/esm2022 → esm2022}/grid/form/FormGridHeader.component.mjs +4 -4
  48. package/esm2022/grid/form/time-since.pipe.mjs +37 -0
  49. package/esm2022/grid/grid.component.mjs +257 -0
  50. package/{dist/angular-formio/esm2022 → esm2022}/grid/grid.module.mjs +5 -5
  51. package/{dist/angular-formio/esm2022 → esm2022}/grid/grid.service.mjs +4 -4
  52. package/esm2022/grid/submission/SubmissionGridBody.component.mjs +43 -0
  53. package/esm2022/grid/submission/SubmissionGridFooter.component.mjs +23 -0
  54. package/esm2022/grid/submission/SubmissionGridHeader.component.mjs +63 -0
  55. package/{dist/angular-formio/esm2022 → esm2022}/manager/create/create.component.mjs +4 -4
  56. package/esm2022/manager/delete/delete.component.mjs +42 -0
  57. package/esm2022/manager/edit/edit.component.mjs +125 -0
  58. package/esm2022/manager/form/form.component.mjs +80 -0
  59. package/{dist/angular-formio/esm2022 → esm2022}/manager/form-manager.config.mjs +4 -4
  60. package/{dist/angular-formio/esm2022 → esm2022}/manager/form-manager.module.mjs +5 -5
  61. package/esm2022/manager/form-manager.service.mjs +185 -0
  62. package/esm2022/manager/index/index.component.mjs +108 -0
  63. package/{dist/angular-formio/esm2022 → esm2022}/manager/submission/delete/delete.component.mjs +4 -4
  64. package/{dist/angular-formio/esm2022 → esm2022}/manager/submission/edit/edit.component.mjs +4 -4
  65. package/{dist/angular-formio/esm2022 → esm2022}/manager/submission/index/index.component.mjs +4 -4
  66. package/{dist/angular-formio/esm2022 → esm2022}/manager/submission/submission/submission.component.mjs +4 -4
  67. package/{dist/angular-formio/esm2022 → esm2022}/manager/submission/view/view.component.mjs +4 -4
  68. package/{dist/angular-formio/esm2022 → esm2022}/manager/view/view.component.mjs +4 -4
  69. package/{dist/angular-formio/esm2022 → esm2022}/resource/create/create.component.mjs +4 -4
  70. package/{dist/angular-formio/esm2022 → esm2022}/resource/delete/delete.component.mjs +4 -4
  71. package/{dist/angular-formio/esm2022 → esm2022}/resource/edit/edit.component.mjs +4 -4
  72. package/esm2022/resource/index/index.component.mjs +69 -0
  73. package/esm2022/resource/resource.component.mjs +46 -0
  74. package/{dist/angular-formio/esm2022 → esm2022}/resource/resource.config.mjs +4 -4
  75. package/{dist/angular-formio/esm2022 → esm2022}/resource/resource.module.mjs +5 -5
  76. package/esm2022/resource/resource.service.mjs +229 -0
  77. package/{dist/angular-formio/esm2022 → esm2022}/resource/resources.service.mjs +4 -4
  78. package/{dist/angular-formio/esm2022 → esm2022}/resource/view/view.component.mjs +4 -4
  79. package/{dist/angular-formio/fesm2022 → fesm2022}/formio-angular-auth.mjs +22 -22
  80. package/{dist/angular-formio/fesm2022 → fesm2022}/formio-angular-auth.mjs.map +1 -1
  81. package/{dist/angular-formio/fesm2022 → fesm2022}/formio-angular-embed.mjs +26 -26
  82. package/fesm2022/formio-angular-embed.mjs.map +1 -0
  83. package/{dist/angular-formio/fesm2022 → fesm2022}/formio-angular-grid.mjs +45 -46
  84. package/fesm2022/formio-angular-grid.mjs.map +1 -0
  85. package/{dist/angular-formio/fesm2022 → fesm2022}/formio-angular-manager.mjs +43 -43
  86. package/{dist/angular-formio/fesm2022 → fesm2022}/formio-angular-manager.mjs.map +1 -1
  87. package/{dist/angular-formio/fesm2022 → fesm2022}/formio-angular-resource.mjs +31 -31
  88. package/{dist/angular-formio/fesm2022 → fesm2022}/formio-angular-resource.mjs.map +1 -1
  89. package/fesm2022/formio-angular.mjs +1186 -0
  90. package/fesm2022/formio-angular.mjs.map +1 -0
  91. package/{dist/angular-formio/formio.common.d.ts → formio.common.d.ts} +1 -2
  92. package/formio.common.d.ts.map +1 -0
  93. package/{dist/angular-formio/formio.config.d.ts → formio.config.d.ts} +1 -0
  94. package/formio.config.d.ts.map +1 -0
  95. package/{dist/angular-formio/grid → grid}/submission/SubmissionGridHeader.component.d.ts +1 -1
  96. package/grid/submission/SubmissionGridHeader.component.d.ts.map +1 -0
  97. package/package.json +62 -53
  98. package/.dockerignore +0 -5
  99. package/.editorconfig +0 -13
  100. package/.github/ISSUE_TEMPLATE/bug_report.md +0 -38
  101. package/.github/ISSUE_TEMPLATE/custom-components-support-request.md +0 -15
  102. package/.github/ISSUE_TEMPLATE/question.md +0 -8
  103. package/.github/pull_request_template.md +0 -35
  104. package/.github/workflows/ci.yml +0 -170
  105. package/.travis.yml +0 -4
  106. package/.yo-rc.json +0 -7
  107. package/CHANGELOG.md +0 -1154
  108. package/Dockerfile +0 -20
  109. package/LICENSE +0 -21
  110. package/angular.json +0 -38
  111. package/bs-config.json +0 -11
  112. package/dist/angular-formio/README.md +0 -24
  113. package/dist/angular-formio/embed/app.service.d.ts.map +0 -1
  114. package/dist/angular-formio/embed/builder.component.d.ts.map +0 -1
  115. package/dist/angular-formio/embed/formio.component.d.ts.map +0 -1
  116. package/dist/angular-formio/embed/index.d.ts.map +0 -1
  117. package/dist/angular-formio/esm2022/FormioBaseComponent.mjs +0 -580
  118. package/dist/angular-formio/esm2022/auth/auth.service.mjs +0 -199
  119. package/dist/angular-formio/esm2022/components/alerts/formio.alerts.component.mjs +0 -28
  120. package/dist/angular-formio/esm2022/components/formbuilder/formbuilder.component.mjs +0 -202
  121. package/dist/angular-formio/esm2022/components/formio/formio.component.mjs +0 -43
  122. package/dist/angular-formio/esm2022/components/formioreport/formioreport.component.mjs +0 -89
  123. package/dist/angular-formio/esm2022/core.mjs +0 -18
  124. package/dist/angular-formio/esm2022/embed/app.service.mjs +0 -58
  125. package/dist/angular-formio/esm2022/embed/builder.component.mjs +0 -36
  126. package/dist/angular-formio/esm2022/embed/formio.component.mjs +0 -50
  127. package/dist/angular-formio/esm2022/embed/index.mjs +0 -7
  128. package/dist/angular-formio/esm2022/formio.common.mjs +0 -11
  129. package/dist/angular-formio/esm2022/formio.utils.mjs +0 -21
  130. package/dist/angular-formio/esm2022/grid/GridBodyComponent.mjs +0 -89
  131. package/dist/angular-formio/esm2022/grid/form/FormGridFooter.component.mjs +0 -26
  132. package/dist/angular-formio/esm2022/grid/form/time-since.pipe.mjs +0 -37
  133. package/dist/angular-formio/esm2022/grid/grid.component.mjs +0 -257
  134. package/dist/angular-formio/esm2022/grid/submission/SubmissionGridBody.component.mjs +0 -43
  135. package/dist/angular-formio/esm2022/grid/submission/SubmissionGridFooter.component.mjs +0 -23
  136. package/dist/angular-formio/esm2022/grid/submission/SubmissionGridHeader.component.mjs +0 -63
  137. package/dist/angular-formio/esm2022/manager/delete/delete.component.mjs +0 -42
  138. package/dist/angular-formio/esm2022/manager/edit/edit.component.mjs +0 -125
  139. package/dist/angular-formio/esm2022/manager/form/form.component.mjs +0 -80
  140. package/dist/angular-formio/esm2022/manager/form-manager.service.mjs +0 -185
  141. package/dist/angular-formio/esm2022/manager/index/index.component.mjs +0 -108
  142. package/dist/angular-formio/esm2022/resource/index/index.component.mjs +0 -69
  143. package/dist/angular-formio/esm2022/resource/resource.component.mjs +0 -46
  144. package/dist/angular-formio/esm2022/resource/resource.service.mjs +0 -229
  145. package/dist/angular-formio/fesm2022/formio-angular-embed.mjs.map +0 -1
  146. package/dist/angular-formio/fesm2022/formio-angular-grid.mjs.map +0 -1
  147. package/dist/angular-formio/fesm2022/formio-angular.mjs +0 -1187
  148. package/dist/angular-formio/fesm2022/formio-angular.mjs.map +0 -1
  149. package/dist/angular-formio/formio.common.d.ts.map +0 -1
  150. package/dist/angular-formio/formio.config.d.ts.map +0 -1
  151. package/dist/angular-formio/grid/submission/SubmissionGridHeader.component.d.ts.map +0 -1
  152. package/projects/angular-formio/README.md +0 -24
  153. package/projects/angular-formio/auth/ng-package.json +0 -5
  154. package/projects/angular-formio/auth/src/auth.component.html +0 -11
  155. package/projects/angular-formio/auth/src/auth.component.ts +0 -5
  156. package/projects/angular-formio/auth/src/auth.config.ts +0 -72
  157. package/projects/angular-formio/auth/src/auth.module.ts +0 -33
  158. package/projects/angular-formio/auth/src/auth.routes.ts +0 -34
  159. package/projects/angular-formio/auth/src/auth.service.ts +0 -221
  160. package/projects/angular-formio/auth/src/index.ts +0 -8
  161. package/projects/angular-formio/auth/src/login/login.component.html +0 -1
  162. package/projects/angular-formio/auth/src/login/login.component.ts +0 -11
  163. package/projects/angular-formio/auth/src/public_api.ts +0 -5
  164. package/projects/angular-formio/auth/src/register/register.component.html +0 -1
  165. package/projects/angular-formio/auth/src/register/register.component.ts +0 -11
  166. package/projects/angular-formio/auth/src/resetpass/resetpass.component.html +0 -1
  167. package/projects/angular-formio/auth/src/resetpass/resetpass.component.ts +0 -8
  168. package/projects/angular-formio/embed/ng-package.json +0 -5
  169. package/projects/angular-formio/embed/src/app.service.ts +0 -59
  170. package/projects/angular-formio/embed/src/builder.component.ts +0 -19
  171. package/projects/angular-formio/embed/src/embed.module.ts +0 -23
  172. package/projects/angular-formio/embed/src/formio.component.ts +0 -27
  173. package/projects/angular-formio/embed/src/index.ts +0 -6
  174. package/projects/angular-formio/grid/ng-package.json +0 -5
  175. package/projects/angular-formio/grid/src/GridBodyComponent.ts +0 -80
  176. package/projects/angular-formio/grid/src/GridFooterComponent.ts +0 -25
  177. package/projects/angular-formio/grid/src/GridHeaderComponent.ts +0 -25
  178. package/projects/angular-formio/grid/src/form/FormGridBody.component.html +0 -22
  179. package/projects/angular-formio/grid/src/form/FormGridBody.component.scss +0 -4
  180. package/projects/angular-formio/grid/src/form/FormGridBody.component.ts +0 -46
  181. package/projects/angular-formio/grid/src/form/FormGridFooter.component.html +0 -21
  182. package/projects/angular-formio/grid/src/form/FormGridFooter.component.ts +0 -23
  183. package/projects/angular-formio/grid/src/form/FormGridHeader.component.html +0 -18
  184. package/projects/angular-formio/grid/src/form/FormGridHeader.component.ts +0 -24
  185. package/projects/angular-formio/grid/src/form/index.ts +0 -8
  186. package/projects/angular-formio/grid/src/form/time-since.pipe.ts +0 -31
  187. package/projects/angular-formio/grid/src/grid.component.html +0 -18
  188. package/projects/angular-formio/grid/src/grid.component.scss +0 -9
  189. package/projects/angular-formio/grid/src/grid.component.ts +0 -242
  190. package/projects/angular-formio/grid/src/grid.footer.scss +0 -14
  191. package/projects/angular-formio/grid/src/grid.module.ts +0 -49
  192. package/projects/angular-formio/grid/src/grid.service.ts +0 -16
  193. package/projects/angular-formio/grid/src/index.ts +0 -12
  194. package/projects/angular-formio/grid/src/public_api.ts +0 -5
  195. package/projects/angular-formio/grid/src/submission/SubmissionGridBody.component.html +0 -7
  196. package/projects/angular-formio/grid/src/submission/SubmissionGridBody.component.ts +0 -39
  197. package/projects/angular-formio/grid/src/submission/SubmissionGridFooter.component.html +0 -18
  198. package/projects/angular-formio/grid/src/submission/SubmissionGridFooter.component.ts +0 -20
  199. package/projects/angular-formio/grid/src/submission/SubmissionGridHeader.component.html +0 -11
  200. package/projects/angular-formio/grid/src/submission/SubmissionGridHeader.component.ts +0 -72
  201. package/projects/angular-formio/grid/src/submission/index.ts +0 -8
  202. package/projects/angular-formio/grid/src/types/grid-column.ts +0 -7
  203. package/projects/angular-formio/grid/src/types/grid-footer-positions.ts +0 -5
  204. package/projects/angular-formio/grid/src/types/grid-header.ts +0 -14
  205. package/projects/angular-formio/karma.conf.js +0 -32
  206. package/projects/angular-formio/manager/ng-package.json +0 -5
  207. package/projects/angular-formio/manager/src/create/create.component.ts +0 -11
  208. package/projects/angular-formio/manager/src/delete/delete.component.html +0 -6
  209. package/projects/angular-formio/manager/src/delete/delete.component.ts +0 -37
  210. package/projects/angular-formio/manager/src/edit/edit.component.html +0 -19
  211. package/projects/angular-formio/manager/src/edit/edit.component.ts +0 -110
  212. package/projects/angular-formio/manager/src/form/form.component.html +0 -32
  213. package/projects/angular-formio/manager/src/form/form.component.ts +0 -73
  214. package/projects/angular-formio/manager/src/form-manager.config.ts +0 -31
  215. package/projects/angular-formio/manager/src/form-manager.module.ts +0 -54
  216. package/projects/angular-formio/manager/src/form-manager.routes.ts +0 -75
  217. package/projects/angular-formio/manager/src/form-manager.service.ts +0 -190
  218. package/projects/angular-formio/manager/src/index/index.component.html +0 -14
  219. package/projects/angular-formio/manager/src/index/index.component.scss +0 -22
  220. package/projects/angular-formio/manager/src/index/index.component.ts +0 -100
  221. package/projects/angular-formio/manager/src/index.ts +0 -16
  222. package/projects/angular-formio/manager/src/public_api.ts +0 -5
  223. package/projects/angular-formio/manager/src/submission/delete/delete.component.html +0 -6
  224. package/projects/angular-formio/manager/src/submission/delete/delete.component.ts +0 -26
  225. package/projects/angular-formio/manager/src/submission/edit/edit.component.html +0 -7
  226. package/projects/angular-formio/manager/src/submission/edit/edit.component.ts +0 -18
  227. package/projects/angular-formio/manager/src/submission/index/index.component.html +0 -1
  228. package/projects/angular-formio/manager/src/submission/index/index.component.ts +0 -18
  229. package/projects/angular-formio/manager/src/submission/submission/submission.component.html +0 -8
  230. package/projects/angular-formio/manager/src/submission/submission/submission.component.ts +0 -24
  231. package/projects/angular-formio/manager/src/submission/view/view.component.html +0 -7
  232. package/projects/angular-formio/manager/src/submission/view/view.component.ts +0 -9
  233. package/projects/angular-formio/manager/src/view/view.component.html +0 -11
  234. package/projects/angular-formio/manager/src/view/view.component.ts +0 -44
  235. package/projects/angular-formio/ng-package.json +0 -7
  236. package/projects/angular-formio/package.json +0 -37
  237. package/projects/angular-formio/resource/ng-package.json +0 -5
  238. package/projects/angular-formio/resource/src/create/create.component.html +0 -13
  239. package/projects/angular-formio/resource/src/create/create.component.scss +0 -3
  240. package/projects/angular-formio/resource/src/create/create.component.ts +0 -37
  241. package/projects/angular-formio/resource/src/delete/delete.component.html +0 -5
  242. package/projects/angular-formio/resource/src/delete/delete.component.ts +0 -24
  243. package/projects/angular-formio/resource/src/edit/edit.component.html +0 -7
  244. package/projects/angular-formio/resource/src/edit/edit.component.ts +0 -35
  245. package/projects/angular-formio/resource/src/index/index.component.html +0 -10
  246. package/projects/angular-formio/resource/src/index/index.component.ts +0 -64
  247. package/projects/angular-formio/resource/src/index.js +0 -24
  248. package/projects/angular-formio/resource/src/index.ts +0 -11
  249. package/projects/angular-formio/resource/src/public_api.ts +0 -5
  250. package/projects/angular-formio/resource/src/resource.component.html +0 -7
  251. package/projects/angular-formio/resource/src/resource.component.ts +0 -48
  252. package/projects/angular-formio/resource/src/resource.config.ts +0 -17
  253. package/projects/angular-formio/resource/src/resource.module.ts +0 -43
  254. package/projects/angular-formio/resource/src/resource.routes.ts +0 -43
  255. package/projects/angular-formio/resource/src/resource.service.ts +0 -258
  256. package/projects/angular-formio/resource/src/resources.service.ts +0 -24
  257. package/projects/angular-formio/resource/src/view/view.component.html +0 -6
  258. package/projects/angular-formio/resource/src/view/view.component.ts +0 -19
  259. package/projects/angular-formio/src/FormioBaseComponent.ts +0 -554
  260. package/projects/angular-formio/src/components/alerts/formio.alerts.component.html +0 -3
  261. package/projects/angular-formio/src/components/alerts/formio.alerts.component.ts +0 -19
  262. package/projects/angular-formio/src/components/alerts/formio.alerts.ts +0 -21
  263. package/projects/angular-formio/src/components/alerts/parse-html-content.pipe.ts +0 -15
  264. package/projects/angular-formio/src/components/formbuilder/formbuilder.component.html +0 -1
  265. package/projects/angular-formio/src/components/formbuilder/formbuilder.component.ts +0 -213
  266. package/projects/angular-formio/src/components/formio/formio.component.html +0 -8
  267. package/projects/angular-formio/src/components/formio/formio.component.ts +0 -33
  268. package/projects/angular-formio/src/components/formioreport/formioreport.component.html +0 -8
  269. package/projects/angular-formio/src/components/formioreport/formioreport.component.ts +0 -95
  270. package/projects/angular-formio/src/components/loader/formio.loader.component.html +0 -3
  271. package/projects/angular-formio/src/components/loader/formio.loader.component.scss +0 -26
  272. package/projects/angular-formio/src/components/loader/formio.loader.component.ts +0 -10
  273. package/projects/angular-formio/src/core.ts +0 -25
  274. package/projects/angular-formio/src/custom-tags.service.ts +0 -9
  275. package/projects/angular-formio/src/formio-promise.service.ts +0 -36
  276. package/projects/angular-formio/src/formio.common.ts +0 -91
  277. package/projects/angular-formio/src/formio.config.ts +0 -26
  278. package/projects/angular-formio/src/formio.module.ts +0 -38
  279. package/projects/angular-formio/src/formio.service.ts +0 -57
  280. package/projects/angular-formio/src/formio.utils.ts +0 -23
  281. package/projects/angular-formio/src/index.ts +0 -3
  282. package/projects/angular-formio/src/public-api.ts +0 -5
  283. package/projects/angular-formio/src/test.ts +0 -28
  284. package/projects/angular-formio/src/types/alerts-position.ts +0 -6
  285. package/projects/angular-formio/src/types/formio-metadata.ts +0 -10
  286. package/projects/angular-formio/src/types/formio-submission.ts +0 -20
  287. package/projects/angular-formio/tsconfig.lib.json +0 -27
  288. package/projects/angular-formio/tsconfig.lib.prod.json +0 -8
  289. package/projects/angular-formio/tsconfig.spec.json +0 -17
  290. package/projects/angular-formio/tslint.json +0 -17
  291. package/tsconfig.json +0 -39
  292. package/tslint.json +0 -140
  293. /package/{dist/angular-formio/auth → auth}/auth.component.d.ts +0 -0
  294. /package/{dist/angular-formio/auth → auth}/auth.component.d.ts.map +0 -0
  295. /package/{dist/angular-formio/auth → auth}/auth.config.d.ts +0 -0
  296. /package/{dist/angular-formio/auth → auth}/auth.config.d.ts.map +0 -0
  297. /package/{dist/angular-formio/auth → auth}/auth.module.d.ts +0 -0
  298. /package/{dist/angular-formio/auth → auth}/auth.module.d.ts.map +0 -0
  299. /package/{dist/angular-formio/auth → auth}/auth.routes.d.ts +0 -0
  300. /package/{dist/angular-formio/auth → auth}/auth.routes.d.ts.map +0 -0
  301. /package/{dist/angular-formio/auth → auth}/auth.service.d.ts +0 -0
  302. /package/{dist/angular-formio/auth → auth}/auth.service.d.ts.map +0 -0
  303. /package/{dist/angular-formio/auth → auth}/formio-angular-auth.d.ts.map +0 -0
  304. /package/{dist/angular-formio/auth → auth}/index.d.ts +0 -0
  305. /package/{dist/angular-formio/auth → auth}/index.d.ts.map +0 -0
  306. /package/{dist/angular-formio/auth → auth}/login/login.component.d.ts +0 -0
  307. /package/{dist/angular-formio/auth → auth}/login/login.component.d.ts.map +0 -0
  308. /package/{dist/angular-formio/auth → auth}/register/register.component.d.ts +0 -0
  309. /package/{dist/angular-formio/auth → auth}/register/register.component.d.ts.map +0 -0
  310. /package/{dist/angular-formio/auth → auth}/resetpass/resetpass.component.d.ts +0 -0
  311. /package/{dist/angular-formio/auth → auth}/resetpass/resetpass.component.d.ts.map +0 -0
  312. /package/{dist/angular-formio/components → components}/alerts/formio.alerts.component.d.ts +0 -0
  313. /package/{dist/angular-formio/components → components}/alerts/formio.alerts.component.d.ts.map +0 -0
  314. /package/{dist/angular-formio/components → components}/alerts/formio.alerts.d.ts +0 -0
  315. /package/{dist/angular-formio/components → components}/alerts/formio.alerts.d.ts.map +0 -0
  316. /package/{dist/angular-formio/components → components}/alerts/parse-html-content.pipe.d.ts +0 -0
  317. /package/{dist/angular-formio/components → components}/alerts/parse-html-content.pipe.d.ts.map +0 -0
  318. /package/{dist/angular-formio/components → components}/formbuilder/formbuilder.component.d.ts +0 -0
  319. /package/{dist/angular-formio/components → components}/formbuilder/formbuilder.component.d.ts.map +0 -0
  320. /package/{dist/angular-formio/components → components}/formio/formio.component.d.ts +0 -0
  321. /package/{dist/angular-formio/components → components}/formio/formio.component.d.ts.map +0 -0
  322. /package/{dist/angular-formio/components → components}/loader/formio.loader.component.d.ts +0 -0
  323. /package/{dist/angular-formio/components → components}/loader/formio.loader.component.d.ts.map +0 -0
  324. /package/{dist/angular-formio/custom-tags.service.d.ts → custom-tags.service.d.ts} +0 -0
  325. /package/{dist/angular-formio/custom-tags.service.d.ts.map → custom-tags.service.d.ts.map} +0 -0
  326. /package/{dist/angular-formio/embed → embed}/embed.module.d.ts +0 -0
  327. /package/{dist/angular-formio/embed → embed}/embed.module.d.ts.map +0 -0
  328. /package/{dist/angular-formio/embed → embed}/formio-angular-embed.d.ts.map +0 -0
  329. /package/{dist/angular-formio/esm2022 → esm2022}/auth/auth.routes.mjs +0 -0
  330. /package/{dist/angular-formio/esm2022 → esm2022}/auth/formio-angular-auth.mjs +0 -0
  331. /package/{dist/angular-formio/esm2022 → esm2022}/auth/index.mjs +0 -0
  332. /package/{dist/angular-formio/esm2022 → esm2022}/components/alerts/formio.alerts.mjs +0 -0
  333. /package/{dist/angular-formio/esm2022 → esm2022}/embed/formio-angular-embed.mjs +0 -0
  334. /package/{dist/angular-formio/esm2022 → esm2022}/formio-angular.mjs +0 -0
  335. /package/{dist/angular-formio/esm2022 → esm2022}/formio-promise.service.mjs +0 -0
  336. /package/{dist/angular-formio/esm2022 → esm2022}/grid/form/index.mjs +0 -0
  337. /package/{dist/angular-formio/esm2022 → esm2022}/grid/formio-angular-grid.mjs +0 -0
  338. /package/{dist/angular-formio/esm2022 → esm2022}/grid/index.mjs +0 -0
  339. /package/{dist/angular-formio/esm2022 → esm2022}/grid/submission/index.mjs +0 -0
  340. /package/{dist/angular-formio/esm2022 → esm2022}/grid/types/grid-column.mjs +0 -0
  341. /package/{dist/angular-formio/esm2022 → esm2022}/grid/types/grid-footer-positions.mjs +0 -0
  342. /package/{dist/angular-formio/esm2022 → esm2022}/grid/types/grid-header.mjs +0 -0
  343. /package/{dist/angular-formio/esm2022 → esm2022}/index.mjs +0 -0
  344. /package/{dist/angular-formio/esm2022 → esm2022}/manager/form-manager.routes.mjs +0 -0
  345. /package/{dist/angular-formio/esm2022 → esm2022}/manager/formio-angular-manager.mjs +0 -0
  346. /package/{dist/angular-formio/esm2022 → esm2022}/manager/index.mjs +0 -0
  347. /package/{dist/angular-formio/esm2022 → esm2022}/resource/formio-angular-resource.mjs +0 -0
  348. /package/{dist/angular-formio/esm2022 → esm2022}/resource/index.mjs +0 -0
  349. /package/{dist/angular-formio/esm2022 → esm2022}/resource/resource.routes.mjs +0 -0
  350. /package/{dist/angular-formio/esm2022 → esm2022}/types/alerts-position.mjs +0 -0
  351. /package/{dist/angular-formio/esm2022 → esm2022}/types/formio-metadata.mjs +0 -0
  352. /package/{dist/angular-formio/esm2022 → esm2022}/types/formio-submission.mjs +0 -0
  353. /package/{dist/angular-formio/formio-angular.d.ts.map → formio-angular.d.ts.map} +0 -0
  354. /package/{dist/angular-formio/formio-promise.service.d.ts → formio-promise.service.d.ts} +0 -0
  355. /package/{dist/angular-formio/formio-promise.service.d.ts.map → formio-promise.service.d.ts.map} +0 -0
  356. /package/{dist/angular-formio/formio.module.d.ts → formio.module.d.ts} +0 -0
  357. /package/{dist/angular-formio/formio.module.d.ts.map → formio.module.d.ts.map} +0 -0
  358. /package/{dist/angular-formio/formio.service.d.ts → formio.service.d.ts} +0 -0
  359. /package/{dist/angular-formio/formio.service.d.ts.map → formio.service.d.ts.map} +0 -0
  360. /package/{dist/angular-formio/formio.utils.d.ts → formio.utils.d.ts} +0 -0
  361. /package/{dist/angular-formio/formio.utils.d.ts.map → formio.utils.d.ts.map} +0 -0
  362. /package/{dist/angular-formio/grid → grid}/GridBodyComponent.d.ts +0 -0
  363. /package/{dist/angular-formio/grid → grid}/GridBodyComponent.d.ts.map +0 -0
  364. /package/{dist/angular-formio/grid → grid}/GridFooterComponent.d.ts +0 -0
  365. /package/{dist/angular-formio/grid → grid}/GridFooterComponent.d.ts.map +0 -0
  366. /package/{dist/angular-formio/grid → grid}/GridHeaderComponent.d.ts +0 -0
  367. /package/{dist/angular-formio/grid → grid}/GridHeaderComponent.d.ts.map +0 -0
  368. /package/{dist/angular-formio/grid → grid}/form/FormGridBody.component.d.ts +0 -0
  369. /package/{dist/angular-formio/grid → grid}/form/FormGridBody.component.d.ts.map +0 -0
  370. /package/{dist/angular-formio/grid → grid}/form/FormGridFooter.component.d.ts +0 -0
  371. /package/{dist/angular-formio/grid → grid}/form/FormGridFooter.component.d.ts.map +0 -0
  372. /package/{dist/angular-formio/grid → grid}/form/FormGridHeader.component.d.ts +0 -0
  373. /package/{dist/angular-formio/grid → grid}/form/FormGridHeader.component.d.ts.map +0 -0
  374. /package/{dist/angular-formio/grid → grid}/form/index.d.ts +0 -0
  375. /package/{dist/angular-formio/grid → grid}/form/index.d.ts.map +0 -0
  376. /package/{dist/angular-formio/grid → grid}/form/time-since.pipe.d.ts +0 -0
  377. /package/{dist/angular-formio/grid → grid}/form/time-since.pipe.d.ts.map +0 -0
  378. /package/{dist/angular-formio/grid → grid}/formio-angular-grid.d.ts.map +0 -0
  379. /package/{dist/angular-formio/grid → grid}/grid.component.d.ts +0 -0
  380. /package/{dist/angular-formio/grid → grid}/grid.component.d.ts.map +0 -0
  381. /package/{dist/angular-formio/grid → grid}/grid.module.d.ts +0 -0
  382. /package/{dist/angular-formio/grid → grid}/grid.module.d.ts.map +0 -0
  383. /package/{dist/angular-formio/grid → grid}/grid.service.d.ts +0 -0
  384. /package/{dist/angular-formio/grid → grid}/grid.service.d.ts.map +0 -0
  385. /package/{dist/angular-formio/grid → grid}/index.d.ts +0 -0
  386. /package/{dist/angular-formio/grid → grid}/index.d.ts.map +0 -0
  387. /package/{dist/angular-formio/grid → grid}/submission/SubmissionGridBody.component.d.ts +0 -0
  388. /package/{dist/angular-formio/grid → grid}/submission/SubmissionGridBody.component.d.ts.map +0 -0
  389. /package/{dist/angular-formio/grid → grid}/submission/SubmissionGridFooter.component.d.ts +0 -0
  390. /package/{dist/angular-formio/grid → grid}/submission/SubmissionGridFooter.component.d.ts.map +0 -0
  391. /package/{dist/angular-formio/grid → grid}/submission/index.d.ts +0 -0
  392. /package/{dist/angular-formio/grid → grid}/submission/index.d.ts.map +0 -0
  393. /package/{dist/angular-formio/grid → grid}/types/grid-column.d.ts +0 -0
  394. /package/{dist/angular-formio/grid → grid}/types/grid-column.d.ts.map +0 -0
  395. /package/{dist/angular-formio/grid → grid}/types/grid-footer-positions.d.ts +0 -0
  396. /package/{dist/angular-formio/grid → grid}/types/grid-footer-positions.d.ts.map +0 -0
  397. /package/{dist/angular-formio/grid → grid}/types/grid-header.d.ts +0 -0
  398. /package/{dist/angular-formio/grid → grid}/types/grid-header.d.ts.map +0 -0
  399. /package/{dist/angular-formio/index.d.ts → index.d.ts} +0 -0
  400. /package/{dist/angular-formio/index.d.ts.map → index.d.ts.map} +0 -0
  401. /package/{dist/angular-formio/manager → manager}/create/create.component.d.ts +0 -0
  402. /package/{dist/angular-formio/manager → manager}/create/create.component.d.ts.map +0 -0
  403. /package/{dist/angular-formio/manager → manager}/delete/delete.component.d.ts +0 -0
  404. /package/{dist/angular-formio/manager → manager}/delete/delete.component.d.ts.map +0 -0
  405. /package/{dist/angular-formio/manager → manager}/edit/edit.component.d.ts +0 -0
  406. /package/{dist/angular-formio/manager → manager}/edit/edit.component.d.ts.map +0 -0
  407. /package/{dist/angular-formio/manager → manager}/form/form.component.d.ts +0 -0
  408. /package/{dist/angular-formio/manager → manager}/form/form.component.d.ts.map +0 -0
  409. /package/{dist/angular-formio/manager → manager}/form-manager.config.d.ts +0 -0
  410. /package/{dist/angular-formio/manager → manager}/form-manager.config.d.ts.map +0 -0
  411. /package/{dist/angular-formio/manager → manager}/form-manager.module.d.ts +0 -0
  412. /package/{dist/angular-formio/manager → manager}/form-manager.module.d.ts.map +0 -0
  413. /package/{dist/angular-formio/manager → manager}/form-manager.routes.d.ts +0 -0
  414. /package/{dist/angular-formio/manager → manager}/form-manager.routes.d.ts.map +0 -0
  415. /package/{dist/angular-formio/manager → manager}/form-manager.service.d.ts +0 -0
  416. /package/{dist/angular-formio/manager → manager}/form-manager.service.d.ts.map +0 -0
  417. /package/{dist/angular-formio/manager → manager}/formio-angular-manager.d.ts.map +0 -0
  418. /package/{dist/angular-formio/manager → manager}/index/index.component.d.ts +0 -0
  419. /package/{dist/angular-formio/manager → manager}/index/index.component.d.ts.map +0 -0
  420. /package/{dist/angular-formio/manager → manager}/index.d.ts +0 -0
  421. /package/{dist/angular-formio/manager → manager}/index.d.ts.map +0 -0
  422. /package/{dist/angular-formio/manager → manager}/submission/delete/delete.component.d.ts +0 -0
  423. /package/{dist/angular-formio/manager → manager}/submission/delete/delete.component.d.ts.map +0 -0
  424. /package/{dist/angular-formio/manager → manager}/submission/edit/edit.component.d.ts +0 -0
  425. /package/{dist/angular-formio/manager → manager}/submission/edit/edit.component.d.ts.map +0 -0
  426. /package/{dist/angular-formio/manager → manager}/submission/index/index.component.d.ts +0 -0
  427. /package/{dist/angular-formio/manager → manager}/submission/index/index.component.d.ts.map +0 -0
  428. /package/{dist/angular-formio/manager → manager}/submission/submission/submission.component.d.ts +0 -0
  429. /package/{dist/angular-formio/manager → manager}/submission/submission/submission.component.d.ts.map +0 -0
  430. /package/{dist/angular-formio/manager → manager}/submission/view/view.component.d.ts +0 -0
  431. /package/{dist/angular-formio/manager → manager}/submission/view/view.component.d.ts.map +0 -0
  432. /package/{dist/angular-formio/manager → manager}/view/view.component.d.ts +0 -0
  433. /package/{dist/angular-formio/manager → manager}/view/view.component.d.ts.map +0 -0
  434. /package/{dist/angular-formio/resource → resource}/create/create.component.d.ts +0 -0
  435. /package/{dist/angular-formio/resource → resource}/create/create.component.d.ts.map +0 -0
  436. /package/{dist/angular-formio/resource → resource}/delete/delete.component.d.ts +0 -0
  437. /package/{dist/angular-formio/resource → resource}/delete/delete.component.d.ts.map +0 -0
  438. /package/{dist/angular-formio/resource → resource}/edit/edit.component.d.ts +0 -0
  439. /package/{dist/angular-formio/resource → resource}/edit/edit.component.d.ts.map +0 -0
  440. /package/{dist/angular-formio/resource → resource}/formio-angular-resource.d.ts.map +0 -0
  441. /package/{dist/angular-formio/resource → resource}/index/index.component.d.ts +0 -0
  442. /package/{dist/angular-formio/resource → resource}/index/index.component.d.ts.map +0 -0
  443. /package/{dist/angular-formio/resource → resource}/index.d.ts +0 -0
  444. /package/{dist/angular-formio/resource → resource}/index.d.ts.map +0 -0
  445. /package/{dist/angular-formio/resource → resource}/resource.component.d.ts +0 -0
  446. /package/{dist/angular-formio/resource → resource}/resource.component.d.ts.map +0 -0
  447. /package/{dist/angular-formio/resource → resource}/resource.config.d.ts +0 -0
  448. /package/{dist/angular-formio/resource → resource}/resource.config.d.ts.map +0 -0
  449. /package/{dist/angular-formio/resource → resource}/resource.module.d.ts +0 -0
  450. /package/{dist/angular-formio/resource → resource}/resource.module.d.ts.map +0 -0
  451. /package/{dist/angular-formio/resource → resource}/resource.routes.d.ts +0 -0
  452. /package/{dist/angular-formio/resource → resource}/resource.routes.d.ts.map +0 -0
  453. /package/{dist/angular-formio/resource → resource}/resource.service.d.ts +0 -0
  454. /package/{dist/angular-formio/resource → resource}/resource.service.d.ts.map +0 -0
  455. /package/{dist/angular-formio/resource → resource}/resources.service.d.ts +0 -0
  456. /package/{dist/angular-formio/resource → resource}/resources.service.d.ts.map +0 -0
  457. /package/{dist/angular-formio/resource → resource}/view/view.component.d.ts +0 -0
  458. /package/{dist/angular-formio/resource → resource}/view/view.component.d.ts.map +0 -0
  459. /package/{dist/angular-formio/types → types}/alerts-position.d.ts +0 -0
  460. /package/{dist/angular-formio/types → types}/alerts-position.d.ts.map +0 -0
  461. /package/{dist/angular-formio/types → types}/formio-metadata.d.ts +0 -0
  462. /package/{dist/angular-formio/types → types}/formio-metadata.d.ts.map +0 -0
  463. /package/{dist/angular-formio/types → types}/formio-submission.d.ts +0 -0
  464. /package/{dist/angular-formio/types → types}/formio-submission.d.ts.map +0 -0
@@ -1,69 +0,0 @@
1
- import { Component } from '@angular/core';
2
- import { each } from 'lodash';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "../resource.service";
5
- import * as i2 from "@angular/router";
6
- import * as i3 from "../resource.config";
7
- import * as i4 from "@formio/angular";
8
- import * as i5 from "@formio/angular/grid";
9
- export class FormioResourceIndexComponent {
10
- service;
11
- route;
12
- router;
13
- config;
14
- cdr;
15
- ngZone;
16
- gridSrc;
17
- gridQuery;
18
- createText;
19
- constructor(service, route, router, config, cdr, ngZone) {
20
- this.service = service;
21
- this.route = route;
22
- this.router = router;
23
- this.config = config;
24
- this.cdr = cdr;
25
- this.ngZone = ngZone;
26
- }
27
- ngOnInit() {
28
- this.service.init(this.route).then(() => {
29
- this.gridQuery = {};
30
- if (this.service &&
31
- this.config.parents &&
32
- this.config.parents.length) {
33
- this.service.loadParents().then((parents) => {
34
- each(parents, (parent) => {
35
- if (parent && parent.filter) {
36
- this.gridQuery['data.' + parent.name + '._id'] =
37
- parent.resource._id;
38
- }
39
- });
40
- // Set the source to load the grid.
41
- this.gridSrc = this.service.formUrl;
42
- this.createText = `New ${this.service.form.title}`;
43
- this.cdr.detectChanges();
44
- });
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
- onSelect(row) {
53
- this.ngZone.run(() => {
54
- this.router.navigate([row._id, 'view'], { relativeTo: this.route });
55
- });
56
- }
57
- onCreateItem() {
58
- this.ngZone.run(() => {
59
- this.router.navigate(['new'], { relativeTo: this.route });
60
- });
61
- }
62
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: FormioResourceIndexComponent, deps: [{ token: i1.FormioResourceService }, { token: i2.ActivatedRoute }, { token: i2.Router }, { token: i3.FormioResourceConfig }, { token: i0.ChangeDetectorRef }, { token: i0.NgZone }], target: i0.ɵɵFactoryTarget.Component });
63
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.8", type: FormioResourceIndexComponent, selector: "ng-component", ngImport: i0, template: "<formio-alerts [alerts]=\"service.alerts\"></formio-alerts>\n<formio-grid\n [src]=\"gridSrc\"\n [query]=\"gridQuery\"\n [onForm]=\"service.formLoaded\"\n (rowSelect)=\"onSelect($event)\"\n (error)=\"service.onError($event)\"\n (createItem)=\"onCreateItem()\"\n [createText]=\"createText\"\n></formio-grid>\n", dependencies: [{ kind: "component", type: i4.FormioAlertsComponent, selector: "formio-alerts", inputs: ["alerts"], outputs: ["focusComponent"] }, { kind: "component", type: i5.FormioGridComponent, selector: "formio-grid", inputs: ["footerPosition", "src", "items", "onForm", "query", "refresh", "columns", "gridType", "size", "components", "formio", "label", "createText", "isActionAllowed"], outputs: ["select", "rowSelect", "rowAction", "createItem", "error"] }] });
64
- }
65
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: FormioResourceIndexComponent, decorators: [{
66
- type: Component,
67
- args: [{ template: "<formio-alerts [alerts]=\"service.alerts\"></formio-alerts>\n<formio-grid\n [src]=\"gridSrc\"\n [query]=\"gridQuery\"\n [onForm]=\"service.formLoaded\"\n (rowSelect)=\"onSelect($event)\"\n (error)=\"service.onError($event)\"\n (createItem)=\"onCreateItem()\"\n [createText]=\"createText\"\n></formio-grid>\n" }]
68
- }], ctorParameters: () => [{ type: i1.FormioResourceService }, { type: i2.ActivatedRoute }, { type: i2.Router }, { type: i3.FormioResourceConfig }, { type: i0.ChangeDetectorRef }, { type: i0.NgZone }] });
69
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1mb3JtaW8vcmVzb3VyY2Uvc3JjL2luZGV4L2luZGV4LmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItZm9ybWlvL3Jlc291cmNlL3NyYy9pbmRleC9pbmRleC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFxQyxNQUFNLGVBQWUsQ0FBQztBQUk3RSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sUUFBUSxDQUFDOzs7Ozs7O0FBSzlCLE1BQU0sT0FBTyw0QkFBNEI7SUFNOUI7SUFDQTtJQUNBO0lBQ0E7SUFDQTtJQUNBO0lBVkYsT0FBTyxDQUFVO0lBQ2pCLFNBQVMsQ0FBTTtJQUNmLFVBQVUsQ0FBUztJQUUxQixZQUNTLE9BQThCLEVBQzlCLEtBQXFCLEVBQ3JCLE1BQWMsRUFDZCxNQUE0QixFQUM1QixHQUFzQixFQUN0QixNQUFjO1FBTGQsWUFBTyxHQUFQLE9BQU8sQ0FBdUI7UUFDOUIsVUFBSyxHQUFMLEtBQUssQ0FBZ0I7UUFDckIsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQUNkLFdBQU0sR0FBTixNQUFNLENBQXNCO1FBQzVCLFFBQUcsR0FBSCxHQUFHLENBQW1CO1FBQ3RCLFdBQU0sR0FBTixNQUFNLENBQVE7SUFFdkIsQ0FBQztJQUVELFFBQVE7UUFDTixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRTtZQUN0QyxJQUFJLENBQUMsU0FBUyxHQUFHLEVBQUUsQ0FBQztZQUNwQixJQUNFLElBQUksQ0FBQyxPQUFPO2dCQUNaLElBQUksQ0FBQyxNQUFNLENBQUMsT0FBTztnQkFDbkIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsTUFBTSxFQUMxQjtnQkFDQSxJQUFJLENBQUMsT0FBTyxDQUFDLFdBQVcsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLE9BQVksRUFBRSxFQUFFO29CQUMvQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsTUFBVyxFQUFFLEVBQUU7d0JBQzVCLElBQUksTUFBTSxJQUFJLE1BQU0sQ0FBQyxNQUFNLEVBQUU7NEJBQzNCLElBQUksQ0FBQyxTQUFTLENBQUMsT0FBTyxHQUFHLE1BQU0sQ0FBQyxJQUFJLEdBQUcsTUFBTSxDQUFDO2dDQUM1QyxNQUFNLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQzt5QkFDdkI7b0JBQ0gsQ0FBQyxDQUFDLENBQUM7b0JBRUgsbUNBQW1DO29CQUNuQyxJQUFJLENBQUMsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDO29CQUNwQyxJQUFJLENBQUMsVUFBVSxHQUFHLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUM7b0JBQ25ELElBQUksQ0FBQyxHQUFHLENBQUMsYUFBYSxFQUFFLENBQUM7Z0JBQzNCLENBQUMsQ0FBQyxDQUFDO2FBQ0o7aUJBQU0sSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sRUFBRTtnQkFDL0IsSUFBSSxDQUFDLE9BQU8sR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQztnQkFDcEMsSUFBSSxDQUFDLFVBQVUsR0FBRyxPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO2FBQ3BEO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQsUUFBUSxDQUFDLEdBQVE7UUFDZixJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUU7WUFDbkIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLE1BQU0sQ0FBQyxFQUFFLEVBQUUsVUFBVSxFQUFFLElBQUksQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDO1FBQ3RFLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQztJQUVELFlBQVk7UUFDVixJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxHQUFHLEVBQUU7WUFDbkIsSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQyxLQUFLLENBQUMsRUFBRSxFQUFFLFVBQVUsRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQztRQUM1RCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7dUdBckRVLDRCQUE0QjsyRkFBNUIsNEJBQTRCLG9EQ1R6Qyw0VEFVQTs7MkZERGEsNEJBQTRCO2tCQUh4QyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIENoYW5nZURldGVjdG9yUmVmLCBOZ1pvbmUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJvdXRlciwgQWN0aXZhdGVkUm91dGUgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgRm9ybWlvUmVzb3VyY2VTZXJ2aWNlIH0gZnJvbSAnLi4vcmVzb3VyY2Uuc2VydmljZSc7XG5pbXBvcnQgeyBGb3JtaW9SZXNvdXJjZUNvbmZpZyB9IGZyb20gJy4uL3Jlc291cmNlLmNvbmZpZyc7XG5pbXBvcnQgeyBlYWNoIH0gZnJvbSAnbG9kYXNoJztcblxuQENvbXBvbmVudCh7XG4gIHRlbXBsYXRlVXJsOiAnLi9pbmRleC5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgRm9ybWlvUmVzb3VyY2VJbmRleENvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIHB1YmxpYyBncmlkU3JjPzogc3RyaW5nO1xuICBwdWJsaWMgZ3JpZFF1ZXJ5OiBhbnk7XG4gIHB1YmxpYyBjcmVhdGVUZXh0OiBTdHJpbmc7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHNlcnZpY2U6IEZvcm1pb1Jlc291cmNlU2VydmljZSxcbiAgICBwdWJsaWMgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgIHB1YmxpYyByb3V0ZXI6IFJvdXRlcixcbiAgICBwdWJsaWMgY29uZmlnOiBGb3JtaW9SZXNvdXJjZUNvbmZpZyxcbiAgICBwdWJsaWMgY2RyOiBDaGFuZ2VEZXRlY3RvclJlZixcbiAgICBwdWJsaWMgbmdab25lOiBOZ1pvbmUsXG4gICkge1xuICB9XG5cbiAgbmdPbkluaXQoKSB7XG4gICAgdGhpcy5zZXJ2aWNlLmluaXQodGhpcy5yb3V0ZSkudGhlbigoKSA9PiB7XG4gICAgICB0aGlzLmdyaWRRdWVyeSA9IHt9O1xuICAgICAgaWYgKFxuICAgICAgICB0aGlzLnNlcnZpY2UgJiZcbiAgICAgICAgdGhpcy5jb25maWcucGFyZW50cyAmJlxuICAgICAgICB0aGlzLmNvbmZpZy5wYXJlbnRzLmxlbmd0aFxuICAgICAgKSB7XG4gICAgICAgIHRoaXMuc2VydmljZS5sb2FkUGFyZW50cygpLnRoZW4oKHBhcmVudHM6IGFueSkgPT4ge1xuICAgICAgICAgIGVhY2gocGFyZW50cywgKHBhcmVudDogYW55KSA9PiB7XG4gICAgICAgICAgICBpZiAocGFyZW50ICYmIHBhcmVudC5maWx0ZXIpIHtcbiAgICAgICAgICAgICAgdGhpcy5ncmlkUXVlcnlbJ2RhdGEuJyArIHBhcmVudC5uYW1lICsgJy5faWQnXSA9XG4gICAgICAgICAgICAgICAgcGFyZW50LnJlc291cmNlLl9pZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9KTtcblxuICAgICAgICAgIC8vIFNldCB0aGUgc291cmNlIHRvIGxvYWQgdGhlIGdyaWQuXG4gICAgICAgICAgdGhpcy5ncmlkU3JjID0gdGhpcy5zZXJ2aWNlLmZvcm1Vcmw7XG4gICAgICAgICAgdGhpcy5jcmVhdGVUZXh0ID0gYE5ldyAke3RoaXMuc2VydmljZS5mb3JtLnRpdGxlfWA7XG4gICAgICAgICAgdGhpcy5jZHIuZGV0ZWN0Q2hhbmdlcygpO1xuICAgICAgICB9KTtcbiAgICAgIH0gZWxzZSBpZiAodGhpcy5zZXJ2aWNlLmZvcm1VcmwpIHtcbiAgICAgICAgdGhpcy5ncmlkU3JjID0gdGhpcy5zZXJ2aWNlLmZvcm1Vcmw7XG4gICAgICAgIHRoaXMuY3JlYXRlVGV4dCA9IGBOZXcgJHt0aGlzLnNlcnZpY2UuZm9ybS50aXRsZX1gO1xuICAgICAgfVxuICAgIH0pO1xuICB9XG5cbiAgb25TZWxlY3Qocm93OiBhbnkpIHtcbiAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW3Jvdy5faWQsICd2aWV3J10sIHsgcmVsYXRpdmVUbzogdGhpcy5yb3V0ZSB9KTtcbiAgICB9KTtcbiAgfVxuXG4gIG9uQ3JlYXRlSXRlbSgpIHtcbiAgICB0aGlzLm5nWm9uZS5ydW4oKCkgPT4ge1xuICAgICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoWyduZXcnXSwgeyByZWxhdGl2ZVRvOiB0aGlzLnJvdXRlIH0pO1xuICAgIH0pO1xuICB9XG59XG4iLCI8Zm9ybWlvLWFsZXJ0cyBbYWxlcnRzXT1cInNlcnZpY2UuYWxlcnRzXCI+PC9mb3JtaW8tYWxlcnRzPlxuPGZvcm1pby1ncmlkXG4gIFtzcmNdPVwiZ3JpZFNyY1wiXG4gIFtxdWVyeV09XCJncmlkUXVlcnlcIlxuICBbb25Gb3JtXT1cInNlcnZpY2UuZm9ybUxvYWRlZFwiXG4gIChyb3dTZWxlY3QpPVwib25TZWxlY3QoJGV2ZW50KVwiXG4gIChlcnJvcik9XCJzZXJ2aWNlLm9uRXJyb3IoJGV2ZW50KVwiXG4gIChjcmVhdGVJdGVtKT1cIm9uQ3JlYXRlSXRlbSgpXCJcbiAgW2NyZWF0ZVRleHRdPVwiY3JlYXRlVGV4dFwiXG4+PC9mb3JtaW8tZ3JpZD5cbiJdfQ==
@@ -1,46 +0,0 @@
1
- import { Component } from '@angular/core';
2
- import { NavigationEnd } from '@angular/router';
3
- import * as i0 from "@angular/core";
4
- import * as i1 from "./resource.service";
5
- import * as i2 from "@angular/router";
6
- import * as i3 from "@formio/angular/auth";
7
- import * as i4 from "@angular/common";
8
- export class FormioResourceComponent {
9
- service;
10
- route;
11
- auth;
12
- router;
13
- perms = { delete: false, edit: false };
14
- routerSubscription;
15
- constructor(service, route, auth, router) {
16
- this.service = service;
17
- this.route = route;
18
- this.auth = auth;
19
- this.router = router;
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
- ngOnDestroy() {
30
- this.routerSubscription.unsubscribe();
31
- }
32
- init() {
33
- return this.service.init(this.route).then(() => this.auth.ready.then(() => this.service.formFormio.userPermissions(this.auth.user, this.service.form, this.service.resource).then((perms) => {
34
- this.perms.delete = perms.delete;
35
- this.perms.edit = perms.edit;
36
- return this.service.resource;
37
- })));
38
- }
39
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: FormioResourceComponent, deps: [{ token: i1.FormioResourceService }, { token: i2.ActivatedRoute }, { token: i3.FormioAuthService }, { token: i2.Router }], target: i0.ɵɵFactoryTarget.Component });
40
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.0.8", type: FormioResourceComponent, selector: "ng-component", ngImport: i0, template: "<ul class=\"nav nav-tabs\" style=\"margin-bottom: 10px\">\n <li class=\"nav-item\"><a class=\"nav-link\" routerLink=\"../\"><em class=\"fa fa-chevron-left bi bi-chevron-left\"></em></a></li>\n <li class=\"nav-item\" routerLinkActive=\"active\"><a class=\"nav-link\" routerLink=\"view\" routerLinkActive=\"active\">View</a></li>\n <li class=\"nav-item\" routerLinkActive=\"active\" *ngIf=\"perms.edit\"><a class=\"nav-link\" routerLink=\"edit\" routerLinkActive=\"active\">Edit</a></li>\n <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>\n</ul>\n<router-outlet></router-outlet>\n", dependencies: [{ kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i2.RouterLinkActive, selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }] });
41
- }
42
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: FormioResourceComponent, decorators: [{
43
- type: Component,
44
- args: [{ template: "<ul class=\"nav nav-tabs\" style=\"margin-bottom: 10px\">\n <li class=\"nav-item\"><a class=\"nav-link\" routerLink=\"../\"><em class=\"fa fa-chevron-left bi bi-chevron-left\"></em></a></li>\n <li class=\"nav-item\" routerLinkActive=\"active\"><a class=\"nav-link\" routerLink=\"view\" routerLinkActive=\"active\">View</a></li>\n <li class=\"nav-item\" routerLinkActive=\"active\" *ngIf=\"perms.edit\"><a class=\"nav-link\" routerLink=\"edit\" routerLinkActive=\"active\">Edit</a></li>\n <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>\n</ul>\n<router-outlet></router-outlet>\n" }]
45
- }], ctorParameters: () => [{ type: i1.FormioResourceService }, { type: i2.ActivatedRoute }, { type: i3.FormioAuthService }, { type: i2.Router }] });
46
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzb3VyY2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvYW5ndWxhci1mb3JtaW8vcmVzb3VyY2Uvc3JjL3Jlc291cmNlLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItZm9ybWlvL3Jlc291cmNlL3NyYy9yZXNvdXJjZS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsU0FBUyxFQUFxQixNQUFNLGVBQWUsQ0FBQztBQUM3RCxPQUFPLEVBQWtCLGFBQWEsRUFBdUIsTUFBTSxpQkFBaUIsQ0FBQzs7Ozs7O0FBUXJGLE1BQU0sT0FBTyx1QkFBdUI7SUFLekI7SUFDQTtJQUNBO0lBQ0E7SUFQRixLQUFLLEdBQUcsRUFBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUMsQ0FBQztJQUNyQyxrQkFBa0IsQ0FBZTtJQUV4QyxZQUNTLE9BQThCLEVBQzlCLEtBQXFCLEVBQ3JCLElBQXVCLEVBQ3ZCLE1BQWM7UUFIZCxZQUFPLEdBQVAsT0FBTyxDQUF1QjtRQUM5QixVQUFLLEdBQUwsS0FBSyxDQUFnQjtRQUNyQixTQUFJLEdBQUosSUFBSSxDQUFtQjtRQUN2QixXQUFNLEdBQU4sTUFBTSxDQUFRO0lBQ3BCLENBQUM7SUFFSixRQUFRO1FBQ04sSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ1osSUFBSSxDQUFDLGtCQUFrQixHQUFHLElBQUksQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQy9ELElBQUksS0FBSyxZQUFZLGFBQWEsRUFBRTtnQkFDbEMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO2FBQ2I7UUFDSCxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7SUFFRCxXQUFXO1FBQ1QsSUFBSSxDQUFDLGtCQUFrQixDQUFDLFdBQVcsRUFBRSxDQUFDO0lBQ3hDLENBQUM7SUFFRCxJQUFJO1FBQ0YsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxDQUM3QyxJQUFJLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLENBQ3hCLElBQUksQ0FBQyxPQUFPLENBQUMsVUFBVSxDQUFDLGVBQWUsQ0FDckMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLEVBQ2QsSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQ2pCLElBQUksQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUN0QixDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssRUFBRSxFQUFFO1lBQ2YsSUFBSSxDQUFDLEtBQUssQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDLE1BQU0sQ0FBQztZQUNqQyxJQUFJLENBQUMsS0FBSyxDQUFDLElBQUksR0FBRyxLQUFLLENBQUMsSUFBSSxDQUFDO1lBQzdCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRLENBQUM7UUFDL0IsQ0FBQyxDQUFDLENBQ0wsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzt1R0FyQ1UsdUJBQXVCOzJGQUF2Qix1QkFBdUIsb0RDVHBDLGt1QkFPQTs7MkZERWEsdUJBQXVCO2tCQUhuQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBPbkRlc3Ryb3ksIE9uSW5pdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQWN0aXZhdGVkUm91dGUsIE5hdmlnYXRpb25FbmQsIFJvdXRlciwgUm91dGVyRXZlbnQgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgRm9ybWlvQXV0aFNlcnZpY2UgfSBmcm9tICdAZm9ybWlvL2FuZ3VsYXIvYXV0aCc7XG5pbXBvcnQgeyBGb3JtaW9SZXNvdXJjZVNlcnZpY2UgfSBmcm9tICcuL3Jlc291cmNlLnNlcnZpY2UnO1xuaW1wb3J0IHsgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XG5cbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZVVybDogJy4vcmVzb3VyY2UuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIEZvcm1pb1Jlc291cmNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuICBwdWJsaWMgcGVybXMgPSB7ZGVsZXRlOiBmYWxzZSwgZWRpdDogZmFsc2V9O1xuICBwdWJsaWMgcm91dGVyU3Vic2NyaXB0aW9uOiBTdWJzY3JpcHRpb247XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHNlcnZpY2U6IEZvcm1pb1Jlc291cmNlU2VydmljZSxcbiAgICBwdWJsaWMgcm91dGU6IEFjdGl2YXRlZFJvdXRlLFxuICAgIHB1YmxpYyBhdXRoOiBGb3JtaW9BdXRoU2VydmljZSxcbiAgICBwdWJsaWMgcm91dGVyOiBSb3V0ZXJcbiAgKSB7fVxuXG4gIG5nT25Jbml0KCkge1xuICAgIHRoaXMuaW5pdCgpO1xuICAgIHRoaXMucm91dGVyU3Vic2NyaXB0aW9uID0gdGhpcy5yb3V0ZXIuZXZlbnRzLnN1YnNjcmliZSgoZXZlbnQpID0+IHtcbiAgICAgIGlmIChldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQpIHtcbiAgICAgICAgdGhpcy5pbml0KCk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLnJvdXRlclN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xuICB9XG5cbiAgaW5pdCgpIHtcbiAgICByZXR1cm4gdGhpcy5zZXJ2aWNlLmluaXQodGhpcy5yb3V0ZSkudGhlbigoKSA9PiBcbiAgICAgIHRoaXMuYXV0aC5yZWFkeS50aGVuKCgpID0+IFxuICAgICAgICB0aGlzLnNlcnZpY2UuZm9ybUZvcm1pby51c2VyUGVybWlzc2lvbnMoXG4gICAgICAgICAgdGhpcy5hdXRoLnVzZXIsIFxuICAgICAgICAgIHRoaXMuc2VydmljZS5mb3JtLCBcbiAgICAgICAgICB0aGlzLnNlcnZpY2UucmVzb3VyY2VcbiAgICAgICAgKS50aGVuKChwZXJtcykgPT4ge1xuICAgICAgICAgIHRoaXMucGVybXMuZGVsZXRlID0gcGVybXMuZGVsZXRlO1xuICAgICAgICAgIHRoaXMucGVybXMuZWRpdCA9IHBlcm1zLmVkaXQ7XG4gICAgICAgICAgcmV0dXJuIHRoaXMuc2VydmljZS5yZXNvdXJjZTtcbiAgICAgICAgfSlcbiAgICApKTtcbiAgfVxufVxuIiwiPHVsIGNsYXNzPVwibmF2IG5hdi10YWJzXCIgc3R5bGU9XCJtYXJnaW4tYm90dG9tOiAxMHB4XCI+XG4gIDxsaSBjbGFzcz1cIm5hdi1pdGVtXCI+PGEgY2xhc3M9XCJuYXYtbGlua1wiIHJvdXRlckxpbms9XCIuLi9cIj48ZW0gY2xhc3M9XCJmYSBmYS1jaGV2cm9uLWxlZnQgYmkgYmktY2hldnJvbi1sZWZ0XCI+PC9lbT48L2E+PC9saT5cbiAgPGxpIGNsYXNzPVwibmF2LWl0ZW1cIiByb3V0ZXJMaW5rQWN0aXZlPVwiYWN0aXZlXCI+PGEgY2xhc3M9XCJuYXYtbGlua1wiIHJvdXRlckxpbms9XCJ2aWV3XCIgcm91dGVyTGlua0FjdGl2ZT1cImFjdGl2ZVwiPlZpZXc8L2E+PC9saT5cbiAgPGxpIGNsYXNzPVwibmF2LWl0ZW1cIiByb3V0ZXJMaW5rQWN0aXZlPVwiYWN0aXZlXCIgKm5nSWY9XCJwZXJtcy5lZGl0XCI+PGEgY2xhc3M9XCJuYXYtbGlua1wiIHJvdXRlckxpbms9XCJlZGl0XCIgcm91dGVyTGlua0FjdGl2ZT1cImFjdGl2ZVwiPkVkaXQ8L2E+PC9saT5cbiAgPGxpIGNsYXNzPVwibmF2LWl0ZW1cIiByb3V0ZXJMaW5rQWN0aXZlPVwiYWN0aXZlXCIgKm5nSWY9XCJwZXJtcy5kZWxldGVcIj48YSBjbGFzcz1cIm5hdi1saW5rXCIgcm91dGVyTGluaz1cImRlbGV0ZVwiIHJvdXRlckxpbmtBY3RpdmU9XCJhY3RpdmVcIj48c3BhbiBjbGFzcz1cImZhIGZhLXRyYXNoIGJpIGJpLXRyYXNoXCI+PC9zcGFuPjwvYT48L2xpPlxuPC91bD5cbjxyb3V0ZXItb3V0bGV0Pjwvcm91dGVyLW91dGxldD5cbiJdfQ==
@@ -1,229 +0,0 @@
1
- import { EventEmitter, Injectable, Optional } from '@angular/core';
2
- import { FormioPromiseService } from '@formio/angular';
3
- import { FormioAlerts } from '@formio/angular';
4
- import { Formio, Utils } from '@formio/js';
5
- import _ from 'lodash';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "@formio/angular";
8
- import * as i2 from "./resource.config";
9
- import * as i3 from "./resources.service";
10
- export class FormioResourceService {
11
- appConfig;
12
- config;
13
- resourcesService;
14
- initialized = false;
15
- form;
16
- alerts;
17
- resource;
18
- resourceUrl;
19
- formUrl;
20
- formFormio;
21
- formio;
22
- refresh;
23
- resourceResolve;
24
- resourceReject;
25
- resourceLoaded;
26
- resourceLoading;
27
- resourceId;
28
- resources;
29
- ready;
30
- readyResolve;
31
- readyReject;
32
- formLoading;
33
- formLoaded;
34
- formResolve;
35
- formReject;
36
- isLoading;
37
- constructor(appConfig, config, resourcesService) {
38
- this.appConfig = appConfig;
39
- this.config = config;
40
- this.resourcesService = resourcesService;
41
- this.isLoading = true;
42
- this.alerts = new FormioAlerts();
43
- this.refresh = new EventEmitter();
44
- }
45
- initialize() {
46
- console.warn('FormioResourceService.initialize() has been deprecated.');
47
- }
48
- setResource(resourceId) {
49
- this.resourceLoading = null;
50
- this.formLoading = null;
51
- this.ready = new Promise((resolve, reject) => {
52
- this.readyResolve = resolve;
53
- this.readyReject = reject;
54
- });
55
- this.formLoaded = new Promise((resolve, reject) => {
56
- this.formResolve = resolve;
57
- this.formReject = reject;
58
- });
59
- this.resourceLoaded = new Promise((resolve, reject) => {
60
- this.resourceResolve = resolve;
61
- this.resourceReject = reject;
62
- });
63
- this.resourceId = resourceId;
64
- this.resourceUrl = this.appConfig.appUrl + '/' + this.config.form;
65
- if (this.resourceId) {
66
- this.resourceUrl += '/submission/' + this.resourceId;
67
- }
68
- if (this.appConfig && this.appConfig.appUrl) {
69
- Formio.setBaseUrl(this.appConfig.apiUrl);
70
- Formio.setProjectUrl(this.appConfig.appUrl);
71
- Formio.formOnly = this.appConfig.formOnly;
72
- }
73
- else {
74
- console.error('You must provide an AppConfig within your application!');
75
- }
76
- this.formio = new FormioPromiseService(this.resourceUrl);
77
- this.resource = { data: {} };
78
- }
79
- init(route) {
80
- const resourceId = route.snapshot.params['id'];
81
- if (resourceId && (resourceId === this.resourceId)) {
82
- return this.ready;
83
- }
84
- // Set the resource.
85
- this.setResource(resourceId);
86
- // Add this resource service to the list of all resources in context.
87
- if (this.resourcesService) {
88
- this.resources = this.resourcesService.resources;
89
- this.resources[this.config.name] = this;
90
- }
91
- if (this.resourceId) {
92
- return this.loadForm()
93
- .then(() => this.loadResource())
94
- .then(() => this.readyResolve(this.form))
95
- .catch((err) => this.readyReject(err));
96
- }
97
- return this.loadForm()
98
- .then(() => this.readyResolve(this.form))
99
- .catch((err) => this.readyReject(err));
100
- }
101
- onError(error) {
102
- this.alerts.setAlert({
103
- type: 'danger',
104
- message: error.message || error
105
- });
106
- if (this.resourcesService) {
107
- this.resourcesService.error.emit(error);
108
- }
109
- throw error;
110
- }
111
- onFormError(err) {
112
- this.formReject(err);
113
- this.onError(err);
114
- }
115
- loadForm() {
116
- if (this.formLoading) {
117
- return this.formLoading;
118
- }
119
- this.formUrl = this.appConfig.appUrl + '/' + this.config.form;
120
- this.formFormio = new FormioPromiseService(this.formUrl);
121
- this.isLoading = true;
122
- this.formLoading = this.formFormio
123
- .loadForm()
124
- .then((form) => {
125
- this.form = form;
126
- this.formResolve(form);
127
- this.isLoading = false;
128
- this.loadParents();
129
- return form;
130
- }, (err) => this.onFormError(err))
131
- .catch((err) => this.onFormError(err));
132
- return this.formLoading;
133
- }
134
- loadParents() {
135
- if (!this.config.parents || !this.config.parents.length) {
136
- return Promise.resolve([]);
137
- }
138
- if (!this.resourcesService) {
139
- console.warn('You must provide the FormioResources within your application to use nested resources.');
140
- return Promise.resolve([]);
141
- }
142
- return this.formLoading.then((form) => {
143
- // Iterate through the list of parents.
144
- const _parentsLoaded = [];
145
- this.config.parents.forEach((parent) => {
146
- const resourceName = parent.resource || parent;
147
- const resourceField = parent.field || parent;
148
- const filterResource = parent.hasOwnProperty('filter') ? parent.filter : true;
149
- if (this.resources.hasOwnProperty(resourceName) && this.resources[resourceName].resourceLoaded) {
150
- _parentsLoaded.push(this.resources[resourceName].resourceLoaded.then((resource) => {
151
- let parentPath = '';
152
- Utils.eachComponent(form.components, (component, path) => {
153
- if (component.key === resourceField) {
154
- component.hidden = true;
155
- component.clearOnHide = false;
156
- _.set(this.resource.data, path, resource);
157
- parentPath = path;
158
- return true;
159
- }
160
- });
161
- return {
162
- name: parentPath,
163
- filter: filterResource,
164
- resource
165
- };
166
- }));
167
- }
168
- });
169
- // When all the parents have loaded, emit that to the onParents emitter.
170
- return Promise.all(_parentsLoaded).then((parents) => {
171
- this.refresh.emit({
172
- form: form,
173
- submission: this.resource
174
- });
175
- return parents;
176
- });
177
- });
178
- }
179
- onSubmissionError(err) {
180
- this.onError(err);
181
- this.resourceReject(err);
182
- }
183
- loadResource() {
184
- if (this.resourceLoading) {
185
- return this.resourceLoading;
186
- }
187
- this.isLoading = true;
188
- this.resourceLoading = this.formio
189
- .loadSubmission(null, { ignoreCache: true })
190
- .then((resource) => {
191
- this.resource = resource;
192
- this.isLoading = false;
193
- this.refresh.emit({
194
- property: 'submission',
195
- value: this.resource
196
- });
197
- this.resourceResolve(resource);
198
- return resource;
199
- }, (err) => this.onSubmissionError(err))
200
- .catch((err) => this.onSubmissionError(err));
201
- return this.resourceLoading;
202
- }
203
- save(resource) {
204
- const formio = resource._id ? this.formio : this.formFormio;
205
- return formio
206
- .saveSubmission(resource)
207
- .then((saved) => {
208
- this.resource = saved;
209
- return saved;
210
- }, (err) => this.onError(err))
211
- .catch((err) => this.onError(err));
212
- }
213
- remove() {
214
- return this.formio
215
- .deleteSubmission()
216
- .then(() => {
217
- this.resource = null;
218
- }, (err) => this.onError(err))
219
- .catch((err) => this.onError(err));
220
- }
221
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: FormioResourceService, deps: [{ token: i1.FormioAppConfig }, { token: i2.FormioResourceConfig }, { token: i3.FormioResources, optional: true }], target: i0.ɵɵFactoryTarget.Injectable });
222
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: FormioResourceService });
223
- }
224
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.0.8", ngImport: i0, type: FormioResourceService, decorators: [{
225
- type: Injectable
226
- }], ctorParameters: () => [{ type: i1.FormioAppConfig }, { type: i2.FormioResourceConfig }, { type: i3.FormioResources, decorators: [{
227
- type: Optional
228
- }] }] });
229
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVzb3VyY2Uuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2FuZ3VsYXItZm9ybWlvL3Jlc291cmNlL3NyYy9yZXNvdXJjZS5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsVUFBVSxFQUFFLFFBQVEsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUluRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUN2RCxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFHL0MsT0FBTyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDM0MsT0FBTyxDQUFDLE1BQU0sUUFBUSxDQUFDOzs7OztBQUd2QixNQUFNLE9BQU8scUJBQXFCO0lBOEJ2QjtJQUNBO0lBQ1k7SUEvQmQsV0FBVyxHQUFHLEtBQUssQ0FBQztJQUNwQixJQUFJLENBQU07SUFDVixNQUFNLENBQWU7SUFDckIsUUFBUSxDQUFNO0lBQ2QsV0FBVyxDQUFVO0lBQ3JCLE9BQU8sQ0FBUztJQUNoQixVQUFVLENBQXVCO0lBQ2pDLE1BQU0sQ0FBdUI7SUFDN0IsT0FBTyxDQUFtQztJQUUxQyxlQUFlLENBQU07SUFDckIsY0FBYyxDQUFNO0lBQ3BCLGNBQWMsQ0FBZ0I7SUFFOUIsZUFBZSxDQUFnQjtJQUMvQixVQUFVLENBQVU7SUFDcEIsU0FBUyxDQUFNO0lBRWYsS0FBSyxDQUFnQjtJQUNyQixZQUFZLENBQU07SUFDbEIsV0FBVyxDQUFNO0lBRWpCLFdBQVcsQ0FBZ0I7SUFDM0IsVUFBVSxDQUFlO0lBQ3pCLFdBQVcsQ0FBTTtJQUNqQixVQUFVLENBQU07SUFDaEIsU0FBUyxDQUFVO0lBRTFCLFlBQ1MsU0FBMEIsRUFDMUIsTUFBNEIsRUFDaEIsZ0JBQWlDO1FBRjdDLGNBQVMsR0FBVCxTQUFTLENBQWlCO1FBQzFCLFdBQU0s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LEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztJQUM1QyxDQUFDO0lBRUQsTUFBTTtRQUNKLE9BQU8sSUFBSSxDQUFDLE1BQU07YUFDZixnQkFBZ0IsRUFBRTthQUNsQixJQUFJLENBQ0gsR0FBRyxFQUFFO1lBQ0gsSUFBSSxDQUFDLFFBQVEsR0FBRyxJQUFJLENBQUM7UUFDdkIsQ0FBQyxFQUNELENBQUMsR0FBUSxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUNoQzthQUNBLEtBQUssQ0FBQyxDQUFDLEdBQVEsRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDO0lBQzVDLENBQUM7dUdBcFBVLHFCQUFxQjsyR0FBckIscUJBQXFCOzsyRkFBckIscUJBQXFCO2tCQURqQyxVQUFVOzswQkFpQ04sUUFBUSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEV2ZW50RW1pdHRlciwgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFjdGl2YXRlZFJvdXRlIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IEZvcm1pb1Jlc291cmNlQ29uZmlnIH0gZnJvbSAnLi9yZXNvdXJjZS5jb25maWcnO1xuaW1wb3J0IHsgRm9ybWlvUmVzb3VyY2VzIH0gZnJvbSAnLi9yZXNvdXJjZXMuc2VydmljZSc7XG5pbXBvcnQgeyBGb3JtaW9Qcm9taXNlU2VydmljZSB9IGZyb20gJ0Bmb3JtaW8vYW5ndWxhcic7XG5pbXBvcnQgeyBGb3JtaW9BbGVydHMgfSBmcm9tICdAZm9ybWlvL2FuZ3VsYXInO1xuaW1wb3J0IHsgRm9ybWlvQXBwQ29uZmlnIH0gZnJvbSAnQGZvcm1pby9hbmd1bGFyJztcbmltcG9ydCB7IEZvcm1pb1JlZnJlc2hWYWx1ZSB9IGZyb20gJ0Bmb3JtaW8vYW5ndWxhcic7XG5pbXBvcnQgeyBGb3JtaW8sIFV0aWxzIH0gZnJvbSAnQGZvcm1pby9qcyc7XG5pbXBvcnQgXyBmcm9tICdsb2Rhc2gnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRm9ybWlvUmVzb3VyY2VTZXJ2aWNlIHtcbiAgcHVibGljIGluaXRpYWxpemVkID0gZmFsc2U7XG4gIHB1YmxpYyBmb3JtOiBhbnk7XG4gIHB1YmxpYyBhbGVydHM6IEZvcm1pb0FsZXJ0cztcbiAgcHVibGljIHJlc291cmNlOiBhbnk7XG4gIHB1YmxpYyByZXNvdXJjZVVybD86IHN0cmluZztcbiAgcHVibGljIGZvcm1Vcmw6IHN0cmluZztcbiAgcHVibGljIGZvcm1Gb3JtaW86IEZvcm1pb1Byb21pc2VTZXJ2aWNlO1xuICBwdWJsaWMgZm9ybWlvOiBGb3JtaW9Qcm9taXNlU2VydmljZTtcbiAgcHVibGljIHJlZnJlc2g6IEV2ZW50RW1pdHRlcjxGb3JtaW9SZWZyZXNoVmFsdWU+O1xuXG4gIHB1YmxpYyByZXNvdXJjZVJlc29sdmU6IGFueTtcbiAgcHVibGljIHJlc291cmNlUmVqZWN0OiBhbnk7XG4gIHB1YmxpYyByZXNvdXJjZUxvYWRlZD86IFByb21pc2U8YW55PjtcblxuICBwdWJsaWMgcmVzb3VyY2VMb2FkaW5nPzogUHJvbWlzZTxhbnk+O1xuICBwdWJsaWMgcmVzb3VyY2VJZD86IHN0cmluZztcbiAgcHVibGljIHJlc291cmNlczogYW55O1xuXG4gIHB1YmxpYyByZWFkeT86IFByb21pc2U8YW55PjtcbiAgcHVibGljIHJlYWR5UmVzb2x2ZTogYW55O1xuICBwdWJsaWMgcmVhZHlSZWplY3Q6IGFueTtcblxuICBwdWJsaWMgZm9ybUxvYWRpbmc/OiBQcm9taXNlPGFueT47XG4gIHB1YmxpYyBmb3JtTG9hZGVkOiBQcm9taXNlPGFueT47XG4gIHB1YmxpYyBmb3JtUmVzb2x2ZTogYW55O1xuICBwdWJsaWMgZm9ybVJlamVjdDogYW55O1xuICBwdWJsaWMgaXNMb2FkaW5nOiBib29sZWFuO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHB1YmxpYyBhcHBDb25maWc6IEZvcm1pb0FwcENvbmZpZyxcbiAgICBwdWJsaWMgY29uZmlnOiBGb3JtaW9SZXNvdXJjZUNvbmZpZyxcbiAgICBAT3B0aW9uYWwoKSBwdWJsaWMgcmVzb3VyY2VzU2VydmljZTogRm9ybWlvUmVzb3VyY2VzXG4gICkge1xuICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcbiAgICB0aGlzLmFsZXJ0cyA9IG5ldyBGb3JtaW9BbGVydHMoKTtcbiAgICB0aGlzLnJlZnJlc2ggPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG4gIH1cblxuICBpbml0aWFsaXplKCkge1xuICAgIGNvbnNvbGUud2FybignRm9ybWlvUmVzb3VyY2VTZXJ2aWNlLmluaXRpYWxpemUoKSBoYXMgYmVlbiBkZXByZWNhdGVkLicpO1xuICB9XG5cbiAgc2V0UmVzb3VyY2UocmVzb3VyY2VJZDogYW55KSB7XG4gICAgdGhpcy5yZXNvdXJjZUxvYWRpbmcgPSBudWxsO1xuICAgIHRoaXMuZm9ybUxvYWRpbmcgPSBudWxsO1xuICAgIHRoaXMucmVhZHkgPSBuZXcgUHJvbWlzZSgocmVzb2x2ZTogYW55LCByZWplY3Q6IGFueSkgPT4ge1xuICAgICAgdGhpcy5yZWFkeVJlc29sdmUgPSByZXNvbHZlO1xuICAgICAgdGhpcy5yZWFkeVJlamVjdCA9IHJlamVjdDtcbiAgICB9KTtcbiAgICB0aGlzLmZvcm1Mb2FkZWQgPSBuZXcgUHJvbWlzZSgocmVzb2x2ZTogYW55LCByZWplY3Q6IGFueSkgPT4ge1xuICAgICAgdGhpcy5mb3JtUmVzb2x2ZSA9IHJlc29sdmU7XG4gICAgICB0aGlzLmZvcm1SZWplY3QgPSByZWplY3Q7XG4gICAgfSk7XG4gICAgdGhpcy5yZXNvdXJjZUxvYWRlZCA9IG5ldyBQcm9taXNlKChyZXNvbHZlOiBhbnksIHJlamVjdDogYW55KSA9PiB7XG4gICAgICB0aGlzLnJlc291cmNlUmVzb2x2ZSA9IHJlc29sdmU7XG4gICAgICB0aGlzLnJlc291cmNlUmVqZWN0ID0gcmVqZWN0O1xuICAgIH0pO1xuICAgIHRoaXMucmVzb3VyY2VJZCA9IHJlc291cmNlSWQ7XG4gICAgdGhpcy5yZXNvdXJjZVVybCA9IHRoaXMuYXBwQ29uZmlnLmFwcFVybCArICcvJyArIHRoaXMuY29uZmlnLmZvcm07XG4gICAgaWYgKHRoaXMucmVzb3VyY2VJZCkge1xuICAgICAgdGhpcy5yZXNvdXJjZVVybCArPSAnL3N1Ym1pc3Npb24vJyArIHRoaXMucmVzb3VyY2VJZDtcbiAgICB9XG4gICAgaWYgKHRoaXMuYXBwQ29uZmlnICYmIHRoaXMuYXBwQ29uZmlnLmFwcFVybCkge1xuICAgICAgRm9ybWlvLnNldEJhc2VVcmwodGhpcy5hcHBDb25maWcuYXBpVXJsKTtcbiAgICAgIEZvcm1pby5zZXRQcm9qZWN0VXJsKHRoaXMuYXBwQ29uZmlnLmFwcFVybCk7XG4gICAgICBGb3JtaW8uZm9ybU9ubHkgPSB0aGlzLmFwcENvbmZpZy5mb3JtT25seTtcbiAgICB9IGVsc2Uge1xuICAgICAgY29uc29sZS5lcnJvcignWW91IG11c3QgcHJvdmlkZSBhbiBBcHBDb25maWcgd2l0aGluIHlvdXIgYXBwbGljYXRpb24hJyk7XG4gICAgfVxuICAgIHRoaXMuZm9ybWlvID0gbmV3IEZvcm1pb1Byb21pc2VTZXJ2aWNlKHRoaXMucmVzb3VyY2VVcmwpO1xuICAgIHRoaXMucmVzb3VyY2UgPSB7IGRhdGE6IHt9IH07XG4gIH1cblxuICBpbml0KHJvdXRlOiBBY3RpdmF0ZWRSb3V0ZSkge1xuICAgIGNvbnN0IHJlc291cmNlSWQgPSByb3V0ZS5zbmFwc2hvdC5wYXJhbXNbJ2lkJ107XG4gICAgaWYgKHJlc291cmNlSWQgJiYgKHJlc291cmNlSWQgPT09IHRoaXMucmVzb3VyY2VJZCkpIHtcbiAgICAgIHJldHVybiB0aGlzLnJlYWR5O1xuICAgIH1cblxuICAgIC8vIFNldCB0aGUgcmVzb3VyY2UuXG4gICAgdGhpcy5zZXRSZXNvdXJjZShyZXNvdXJjZUlkKTtcblxuICAgIC8vIEFkZCB0aGlzIHJlc291cmNlIHNlcnZpY2UgdG8gdGhlIGxpc3Qgb2YgYWxsIHJlc291cmNlcyBpbiBjb250ZXh0LlxuICAgIGlmICh0aGlzLnJlc291cmNlc1NlcnZpY2UpIHtcbiAgICAgIHRoaXMucmVzb3VyY2VzID0gdGhpcy5yZXNvdXJjZXNTZXJ2aWNlLnJlc291cmNlcztcbiAgICAgIHRoaXMucmVzb3VyY2VzW3RoaXMuY29uZmlnLm5hbWVdID0gdGhpcztcbiAgICB9XG5cbiAgICBpZiAodGhpcy5yZXNvdXJjZUlkKSB7XG4gICAgICByZXR1cm4gdGhpcy5sb2FkRm9ybSgpXG4gICAgICAgIC50aGVuKCgpID0+IHRoaXMubG9hZFJlc291cmNlKCkpXG4gICAgICAgIC50aGVuKCgpID0+IHRoaXMucmVhZHlSZXNvbHZlKHRoaXMuZm9ybSkpXG4gICAgICAgIC5jYXRjaCgoZXJyKSA9PiB0aGlzLnJlYWR5UmVqZWN0KGVycikpO1xuICAgIH1cblxuICAgIHJldHVybiB0aGlzLmxvYWRGb3JtKClcbiAgICAgIC50aGVuKCgpID0+IHRoaXMucmVhZHlSZXNvbHZlKHRoaXMuZm9ybSkpXG4gICAgICAuY2F0Y2goKGVycikgPT4gdGhpcy5yZWFkeVJlamVjdChlcnIpKTtcbiAgfVxuXG4gIG9uRXJyb3IoZXJyb3I6IGFueSkge1xuICAgIHRoaXMuYWxlcnRzLnNldEFsZXJ0KHtcbiAgICAgIHR5cGU6ICdkYW5nZXInLFxuICAgICAgbWVzc2FnZTogZXJyb3IubWVzc2FnZSB8fCBlcnJvclxuICAgIH0pO1xuICAgIGlmICh0aGlzLnJlc291cmNlc1NlcnZpY2UpIHtcbiAgICAgIHRoaXMucmVzb3VyY2VzU2VydmljZS5lcnJvci5lbWl0KGVycm9yKTtcbiAgICB9XG4gICAgdGhyb3cgZXJyb3I7XG4gIH1cblxuICBvbkZvcm1FcnJvcihlcnI6IGFueSkge1xuICAgIHRoaXMuZm9ybVJlamVjdChlcnIpO1xuICAgIHRoaXMub25FcnJvcihlcnIpO1xuICB9XG5cbiAgbG9hZEZvcm0oKSB7XG4gICAgaWYgKHRoaXMuZm9ybUxvYWRpbmcpIHtcbiAgICAgIHJldHVybiB0aGlzLmZvcm1Mb2FkaW5nO1xuICAgIH1cbiAgICB0aGlzLmZvcm1VcmwgPSB0aGlzLmFwcENvbmZpZy5hcHBVcmwgKyAnLycgKyB0aGlzLmNvbmZpZy5mb3JtO1xuICAgIHRoaXMuZm9ybUZvcm1pbyA9IG5ldyBGb3JtaW9Qcm9taXNlU2VydmljZSh0aGlzLmZvcm1VcmwpO1xuICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcbiAgICB0aGlzLmZvcm1Mb2FkaW5nID0gdGhpcy5mb3JtRm9ybWlvXG4gICAgICAubG9hZEZvcm0oKVxuICAgICAgLnRoZW4oXG4gICAgICAgIChmb3JtOiBhbnkpID0+IHtcbiAgICAgICAgICB0aGlzLmZvcm0gPSBmb3JtO1xuICAgICAgICAgIHRoaXMuZm9ybVJlc29sdmUoZm9ybSk7XG4gICAgICAgICAgdGhpcy5pc0xvYWRpbmcgPSBmYWxzZTtcbiAgICAgICAgICB0aGlzLmxvYWRQYXJlbnRzKCk7XG4gICAgICAgICAgcmV0dXJuIGZvcm07XG4gICAgICAgIH0sXG4gICAgICAgIChlcnI6IGFueSkgPT4gdGhpcy5vbkZvcm1FcnJvcihlcnIpXG4gICAgICApXG4gICAgICAuY2F0Y2goKGVycjogYW55KSA9PiB0aGlzLm9uRm9ybUVycm9yKGVycikpO1xuICAgIHJldHVybiB0aGlzLmZvcm1Mb2FkaW5nO1xuICB9XG5cbiAgbG9hZFBhcmVudHMoKSB7XG4gICAgaWYgKCF0aGlzLmNvbmZpZy5wYXJlbnRzIHx8ICF0aGlzLmNvbmZpZy5wYXJlbnRzLmxlbmd0aCkge1xuICAgICAgcmV0dXJuIFByb21pc2UucmVzb2x2ZShbXSk7XG4gICAgfVxuICAgIGlmICghdGhpcy5yZXNvdXJjZXNTZXJ2aWNlKSB7XG4gICAgICBjb25zb2xlLndhcm4oXG4gICAgICAgICdZb3UgbXVzdCBwcm92aWRlIHRoZSBGb3JtaW9SZXNvdXJjZXMgd2l0aGluIHlvdXIgYXBwbGljYXRpb24gdG8gdXNlIG5lc3RlZCByZXNvdXJjZXMuJ1xuICAgICAgKTtcbiAgICAgIHJldHVybiBQcm9taXNlLnJlc29sdmUoW10pO1xuICAgIH1cbiAgICByZXR1cm4gdGhpcy5mb3JtTG9hZGluZy50aGVuKChmb3JtKSA9PiB7XG4gICAgICAvLyBJdGVyYXRlIHRocm91Z2ggdGhlIGxpc3Qgb2YgcGFyZW50cy5cbiAgICAgIGNvbnN0IF9wYXJlbnRzTG9hZGVkOiBBcnJheTxQcm9taXNlPGFueT4+ID0gW107XG4gICAgICB0aGlzLmNvbmZpZy5wYXJlbnRzLmZvckVhY2goKHBhcmVudDogYW55KSA9PiB7XG4gICAgICAgIGNvbnN0IHJlc291cmNlTmFtZSA9IHBhcmVudC5yZXNvdXJjZSB8fCBwYXJlbnQ7XG4gICAgICAgIGNvbnN0IHJlc291cmNlRmllbGQgPSBwYXJlbnQuZmllbGQgfHwgcGFyZW50O1xuICAgICAgICBjb25zdCBmaWx0ZXJSZXNvdXJjZSA9IHBhcmVudC5oYXNPd25Qcm9wZXJ0eSgnZmlsdGVyJykgPyBwYXJlbnQuZmlsdGVyIDogdHJ1ZTtcbiAgICAgICAgaWYgKHRoaXMucmVzb3VyY2VzLmhhc093blByb3BlcnR5KHJlc291cmNlTmFtZSkgJiYgdGhpcy5yZXNvdXJjZXNbcmVzb3VyY2VOYW1lXS5yZXNvdXJjZUxvYWRlZCkge1xuICAgICAgICAgIF9wYXJlbnRzTG9hZGVkLnB1c2goXG4gICAgICAgICAgICB0aGlzLnJlc291cmNlc1tyZXNvdXJjZU5hbWVdLnJlc291cmNlTG9hZGVkLnRoZW4oKHJlc291cmNlOiBhbnkpID0+IHtcbiAgICAgICAgICAgICAgbGV0IHBhcmVudFBhdGggPSAnJztcbiAgICAgICAgICAgICAgVXRpbHMuZWFjaENvbXBvbmVudChmb3JtLmNvbXBvbmVudHMsIChjb21wb25lbnQsIHBhdGgpID0+IHtcbiAgICAgICAgICAgICAgICBpZiAoY29tcG9uZW50LmtleSA9PT0gcmVzb3VyY2VGaWVsZCkge1xuICAgICAgICAgICAgICAgICAgY29tcG9uZW50LmhpZGRlbiA9IHRydWU7XG4gICAgICAgICAgICAgICAgICBjb21wb25lbnQuY2xlYXJPbkhpZGUgPSBmYWxzZTtcbiAgICAgICAgICAgICAgICAgIF8uc2V0KHRoaXMucmVzb3VyY2UuZGF0YSwgcGF0aCwgcmVzb3VyY2UpO1xuICAgICAgICAgICAgICAgICAgcGFyZW50UGF0aCA9IHBhdGg7XG4gICAgICAgICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIG5hbWU6IHBhcmVudFBhdGgsXG4gICAgICAgICAgICAgICAgZmlsdGVyOiBmaWx0ZXJSZXNvdXJjZSxcbiAgICAgICAgICAgICAgICByZXNvdXJjZVxuICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfSlcbiAgICAgICAgICApO1xuICAgICAgICB9XG4gICAgICB9KTtcblxuICAgICAgLy8gV2hlbiBhbGwgdGhlIHBhcmVudHMgaGF2ZSBsb2FkZWQsIGVtaXQgdGhhdCB0byB0aGUgb25QYXJlbnRzIGVtaXR0ZXIuXG4gICAgICByZXR1cm4gUHJvbWlzZS5hbGwoX3BhcmVudHNMb2FkZWQpLnRoZW4oKHBhcmVudHM6IGFueSkgPT4ge1xuICAgICAgICB0aGlzLnJlZnJlc2guZW1pdCh7XG4gICAgICAgICAgZm9ybTogZm9ybSxcbiAgICAgICAgICBzdWJtaXNzaW9uOiB0aGlzLnJlc291cmNlXG4gICAgICAgIH0pO1xuICAgICAgICByZXR1cm4gcGFyZW50cztcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgb25TdWJtaXNzaW9uRXJyb3IoZXJyOiBhbnkpIHtcbiAgICB0aGlzLm9uRXJyb3IoZXJyKTtcbiAgICB0aGlzLnJlc291cmNlUmVqZWN0KGVycik7XG4gIH1cblxuICBsb2FkUmVzb3VyY2UoKSB7XG4gICAgaWYgKHRoaXMucmVzb3VyY2VMb2FkaW5nKSB7XG4gICAgICByZXR1cm4gdGhpcy5yZXNvdXJjZUxvYWRpbmc7XG4gICAgfVxuICAgIHRoaXMuaXNMb2FkaW5nID0gdHJ1ZTtcbiAgICB0aGlzLnJlc291cmNlTG9hZGluZyA9IHRoaXMuZm9ybWlvXG4gICAgICAubG9hZFN1Ym1pc3Npb24obnVsbCwge2lnbm9yZUNhY2hlOiB0cnVlfSlcbiAgICAgIC50aGVuKFxuICAgICAgICAocmVzb3VyY2U6IGFueSkgPT4ge1xuICAgICAgICAgIHRoaXMucmVzb3VyY2UgPSByZXNvdXJjZTtcbiAgICAgICAgICB0aGlzLmlzTG9hZGluZyA9IGZhbHNlO1xuICAgICAgICAgIHRoaXMucmVmcmVzaC5lbWl0KHtcbiAgICAgICAgICAgIHByb3BlcnR5OiAnc3VibWlzc2lvbicsXG4gICAgICAgICAgICB2YWx1ZTogdGhpcy5yZXNvdXJjZVxuICAgICAgICAgIH0pO1xuICAgICAgICAgIHRoaXMucmVzb3VyY2VSZXNvbHZlKHJlc291cmNlKTtcbiAgICAgICAgICByZXR1cm4gcmVzb3VyY2U7XG4gICAgICAgIH0sXG4gICAgICAgIChlcnI6IGFueSkgPT4gdGhpcy5vblN1Ym1pc3Npb25FcnJvcihlcnIpXG4gICAgICApXG4gICAgICAuY2F0Y2goKGVycjogYW55KSA9PiB0aGlzLm9uU3VibWlzc2lvbkVycm9yKGVycikpO1xuICAgIHJldHVybiB0aGlzLnJlc291cmNlTG9hZGluZztcbiAgfVxuXG4gIHNhdmUocmVzb3VyY2U6IGFueSkge1xuICAgIGNvbnN0IGZvcm1pbyA9IHJlc291cmNlLl9pZCA/IHRoaXMuZm9ybWlvIDogdGhpcy5mb3JtRm9ybWlvO1xuICAgIHJldHVybiBmb3JtaW9cbiAgICAgIC5zYXZlU3VibWlzc2lvbihyZXNvdXJjZSlcbiAgICAgIC50aGVuKFxuICAgICAgICAoc2F2ZWQ6IGFueSkgPT4ge1xuICAgICAgICAgIHRoaXMucmVzb3VyY2UgPSBzYXZlZDtcbiAgICAgICAgICByZXR1cm4gc2F2ZWQ7XG4gICAgICAgIH0sXG4gICAgICAgIChlcnI6IGFueSkgPT4gdGhpcy5vbkVycm9yKGVycilcbiAgICAgIClcbiAgICAgIC5jYXRjaCgoZXJyOiBhbnkpID0+IHRoaXMub25FcnJvcihlcnIpKTtcbiAgfVxuXG4gIHJlbW92ZSgpIHtcbiAgICByZXR1cm4gdGhpcy5mb3JtaW9cbiAgICAgIC5kZWxldGVTdWJtaXNzaW9uKClcbiAgICAgIC50aGVuKFxuICAgICAgICAoKSA9PiB7XG4gICAgICAgICAgdGhpcy5yZXNvdXJjZSA9IG51bGw7XG4gICAgICAgIH0sXG4gICAgICAgIChlcnI6IGFueSkgPT4gdGhpcy5vbkVycm9yKGVycilcbiAgICAgIClcbiAgICAgIC5jYXRjaCgoZXJyOiBhbnkpID0+IHRoaXMub25FcnJvcihlcnIpKTtcbiAgfVxufVxuIl19
@@ -1 +0,0 @@
1
- {"version":3,"file":"formio-angular-embed.mjs","sources":["../../../projects/angular-formio/embed/src/formio.component.ts","../../../projects/angular-formio/embed/src/builder.component.ts","../../../projects/angular-formio/embed/src/app.service.ts","../../../projects/angular-formio/embed/src/embed.module.ts","../../../projects/angular-formio/embed/src/formio-angular-embed.ts"],"sourcesContent":["import { Component, ViewChild, ElementRef, Input, Output, EventEmitter, OnChanges, AfterViewInit } from '@angular/core';\nimport { Formio } from '@formio/js/sdk';\n\n@Component({\n selector: 'formio',\n template: '<div #formio></div>'\n})\nexport class FormioComponent implements AfterViewInit {\n @Input() src?: string;\n @Input() form?: Object | null;\n @Input() submission?: Object | null;\n @Input() options?: Object = {};\n @Output() ready = new EventEmitter<Formio>();\n @Output() submit = new EventEmitter<object>();\n @Output() error = new EventEmitter<any>();\n @ViewChild('formio') element: ElementRef;\n ngAfterViewInit(): void {\n Formio.createForm(this.element.nativeElement, this.src || this.form, this.options).then((form) => {\n if (this.submission) {\n form.submission = this.submission;\n }\n this.ready.emit(form);\n form.on('submit', (submission) => this.submit.emit(submission));\n form.on('error', (err) => this.error.emit(err));\n }).catch((err) => this.error.emit(err));\n }\n}","import { Component, ElementRef, Input, ViewChild, OnChanges, Output, EventEmitter, AfterViewInit } from '@angular/core';\nimport { Formio } from '@formio/js/sdk';\n\n@Component({\n selector: 'formio-builder',\n template: '<div #formio></div>'\n})\nexport class FormioBuilder implements AfterViewInit {\n @ViewChild('formio') element: ElementRef;\n @Input() form?: Object | null;\n @Input() options?: Object = {};\n @Output() ready = new EventEmitter<Formio>();\n @Output() error = new EventEmitter<any>();\n ngAfterViewInit(): void {\n Formio.builder(this.element.nativeElement, this.form, this.options).then((builder) => {\n this.ready.emit(builder);\n }).catch((err) => this.error.emit(err));\n }\n}","import { Inject, Injectable, InjectionToken, EventEmitter } from '@angular/core';\nexport const FormioAppConfig = new InjectionToken('formio-config');\nimport { Formio } from '@formio/js/sdk';\n@Injectable()\nexport class FormioAppService {\n baseUrl;\n apiUrl;\n projectUrl;\n appUrl;\n icons?: string;\n formio: Formio;\n user?: any;\n onUser: EventEmitter<object> = new EventEmitter<object>();\n constructor(@Inject(FormioAppConfig) config: {\n apiUrl?: string,\n baseUrl?: string,\n appUrl?: string,\n projectUrl?: string,\n icons?: string,\n config?: any\n } = {}) {\n this.baseUrl = this.apiUrl = config.apiUrl || config.baseUrl;\n this.projectUrl = this.appUrl = config.appUrl || config.projectUrl;\n if (this.baseUrl) {\n Formio.setBaseUrl(this.baseUrl);\n Formio.setProjectUrl(this.projectUrl);\n if (config.icons) {\n Formio.icons = config.icons;\n }\n if (config.config) {\n for (let key in config.config) {\n Formio.config[key] = config.config[key];\n }\n }\n Formio.events.on('formio.user', (user) => this.setUser(user));\n this.formio = new Formio(this.projectUrl);\n this.authenticate();\n }\n }\n\n setUser(user) {\n this.user = user;\n this.onUser.emit(user);\n }\n\n logout() {\n return Formio.logout().then(() => {\n this.setUser(null);\n Formio.clearCache();\n }).catch(() => {\n this.setUser(null);\n Formio.clearCache();\n });\n }\n\n authenticate() {\n return this.formio.currentUser().then((user) => this.setUser(user)).catch(() => this.setUser(null));\n }\n}","import { NgModule } from \"@angular/core\";\nimport { CommonModule } from \"@angular/common\";\nimport { FormioComponent } from \"./formio.component\";\nimport { FormioBuilder } from \"./builder.component\";\nimport { FormioAppService } from \"./app.service\";\n\n@NgModule({\n imports: [\n CommonModule\n ],\n declarations: [\n FormioComponent,\n FormioBuilder\n ],\n exports: [\n FormioComponent,\n FormioBuilder\n ],\n providers: [\n FormioAppService\n ]\n})\nexport class FormioEmbedModule {}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"formio-angular-grid.mjs","sources":["../../../projects/angular-formio/grid/src/types/grid-footer-positions.ts","../../../projects/angular-formio/grid/src/GridHeaderComponent.ts","../../../projects/angular-formio/grid/src/types/grid-header.ts","../../../projects/angular-formio/grid/src/form/FormGridHeader.component.ts","../../../projects/angular-formio/grid/src/form/FormGridHeader.component.html","../../../projects/angular-formio/grid/src/grid.service.ts","../../../projects/angular-formio/grid/src/GridBodyComponent.ts","../../../projects/angular-formio/grid/src/form/time-since.pipe.ts","../../../projects/angular-formio/grid/src/form/FormGridBody.component.ts","../../../projects/angular-formio/grid/src/form/FormGridBody.component.html","../../../projects/angular-formio/grid/src/GridFooterComponent.ts","../../../projects/angular-formio/grid/src/form/FormGridFooter.component.ts","../../../projects/angular-formio/grid/src/form/FormGridFooter.component.html","../../../projects/angular-formio/grid/src/form/index.ts","../../../projects/angular-formio/grid/src/submission/SubmissionGridHeader.component.ts","../../../projects/angular-formio/grid/src/submission/SubmissionGridHeader.component.html","../../../projects/angular-formio/grid/src/submission/SubmissionGridBody.component.ts","../../../projects/angular-formio/grid/src/submission/SubmissionGridBody.component.html","../../../projects/angular-formio/grid/src/submission/SubmissionGridFooter.component.ts","../../../projects/angular-formio/grid/src/submission/SubmissionGridFooter.component.html","../../../projects/angular-formio/grid/src/submission/index.ts","../../../projects/angular-formio/grid/src/grid.component.ts","../../../projects/angular-formio/grid/src/grid.component.html","../../../projects/angular-formio/grid/src/grid.module.ts","../../../projects/angular-formio/grid/src/formio-angular-grid.ts"],"sourcesContent":["export enum GridFooterPositions {\n bottom,\n top,\n both\n}\n","import { Output, EventEmitter, ViewChild, TemplateRef, Input, Component } from '@angular/core';\nimport {FormioPromiseService} from '@formio/angular';\nimport {GridHeader} from './types/grid-header';\n\n@Component({\n template: ''\n})\nexport class GridHeaderComponent {\n @Input() actionAllowed: any;\n @Output() sort: EventEmitter<GridHeader>;\n @ViewChild(TemplateRef, {static: true}) template: TemplateRef<any>;\n public headers: Array<GridHeader>;\n constructor() {\n this.headers = [];\n this.sort = new EventEmitter();\n }\n\n get numHeaders() {\n return this.headers.length;\n }\n\n load(formio: FormioPromiseService, query?: any, columns?: Array<any>): Promise<any> {\n return Promise.resolve([]);\n }\n}\n","import {ComponentInstance} from '@formio/angular';\n\nexport interface GridHeader {\n component?: ComponentInstance;\n key: string;\n sort?: SortType;\n label: string;\n renderCell?(cellValue: any, component?: ComponentInstance): string;\n}\n\nexport enum SortType {\n ASC = 'asc',\n DESC = 'desc'\n}\n","import {Component} from '@angular/core';\nimport {GridHeaderComponent} from '../GridHeaderComponent';\nimport {GridHeader, SortType} from '../types/grid-header';\n\n@Component({\n selector: 'form-grid-header',\n templateUrl: './FormGridHeader.component.html'\n})\nexport class FormGridHeaderComponent extends GridHeaderComponent {\n public header: GridHeader;\n load(formio?: any) {\n this.header = {\n label: 'Title',\n key: 'title',\n sort: SortType.ASC\n };\n this.headers = [this.header];\n return Promise.resolve(this.headers);\n }\n\n get numHeaders() {\n return 2;\n }\n}\n","<ng-template>\n <thead>\n <tr>\n <th>\n <div class=\"row\">\n <div class=\"col-sm-9\">\n <a (click)=\"sort.emit(header)\" style=\"cursor: pointer\">\n {{ header.label }}&nbsp;<span [ngClass]=\"{'fa-caret-up bi-caret-up': (header.sort === 'asc'), 'fa-caret-down bi-caret-down': (header.sort === 'desc')}\" class=\"fa bi\" *ngIf=\"header.sort\"></span>\n </a>\n </div>\n <div class=\"col-sm-3 d-flex justify-content-end\">\n Operations\n </div>\n </div>\n </th>\n </tr>\n </thead>\n</ng-template>\n","import { Injectable } from '@angular/core';\nimport _intersection from 'lodash/intersection';\n\n@Injectable()\nexport class GridService {\n public rows: Array<any>;\n constructor() {}\n\n setRows(rows) {\n this.rows = rows;\n }\n\n getFormsPerPage() {\n return this.rows?.length;\n }\n}\n","import { Input, Output, EventEmitter, ViewChild, TemplateRef, Component } from '@angular/core';\nimport { each, clone } from 'lodash';\nimport { GridHeaderComponent } from './GridHeaderComponent';\nimport { GridService } from './grid.service';\nimport {FormioPromiseService} from '@formio/angular';\n\n@Component({\n template: ''\n})\nexport class GridBodyComponent {\n @Input() header: GridHeaderComponent;\n @Input() actionAllowed: any;\n @Output() rowSelect: EventEmitter<any>;\n @Output() rowAction: EventEmitter<any>;\n @ViewChild(TemplateRef, {static: true}) template: TemplateRef<any>;\n public rows: Array<any>;\n public loading: Boolean;\n public firstItem = 0;\n public lastItem = 0;\n public skip = 0;\n public limit = 0;\n public total = 0;\n constructor(public service: GridService) {\n this.rowSelect = new EventEmitter();\n this.rowAction = new EventEmitter();\n this.loading = true;\n }\n\n load(formio: FormioPromiseService, query?: any): Promise<any> {\n return formio.loadForm(query);\n }\n\n onRowSelect(event, row) {\n event.preventDefault();\n this.rowSelect.emit(row);\n }\n\n onRowAction(event, row, action) {\n event.preventDefault();\n this.rowAction.emit({ row, action });\n }\n\n /**\n * Set the rows for this Grid body.\n *\n * @param query\n * @param items\n * @return any\n */\n setRows(query: any, items: any) {\n this.rows = [];\n\n if (typeof items !== 'object') {\n this.firstItem = 0;\n this.lastItem = 0;\n this.total = 0;\n this.skip = 0;\n this.loading = false;\n this.service.setRows(this.rows);\n \n return this.rows;\n }\n\n this.firstItem = query.skip + 1;\n this.lastItem = this.firstItem + items.length - 1;\n if (this.lastItem === 0) {\n this.firstItem = 0;\n }\n this.total = items.serverCount;\n this.limit = query.limit;\n this.skip = Math.floor(items.skip / query.limit) + 1;\n this.loading = false;\n each(items, (item: any) => {\n this.rows.push(clone(item));\n });\n this.service.setRows(this.rows);\n\n return this.rows;\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'timeSince'\n})\nexport class TimeSince implements PipeTransform {\n transform(date: Date): string {\n const elapsed = (new Date().getTime() - new Date(date).getTime()) / 1000;\n let interval;\n if (interval >= 1) {\n return interval + ' year' + (interval > 1 ? 's' : '');\n }\n interval = Math.floor(elapsed / 2592000);\n if (interval >= 1){\n return interval + ' month' + (interval > 1 ? 's' : '');\n }\n interval = Math.floor(elapsed / 86400);\n if (interval >= 1) {\n return interval + ' day' + (interval > 1 ? 's' : '');\n }\n interval = Math.floor(elapsed / 3600);\n if (interval >= 1) {\n return interval + ' hour' + (interval > 1 ? 's' : '');\n }\n interval = Math.floor(elapsed / 60);\n if (interval >= 1) {\n return interval + ' minute' + (interval > 1 ? 's' : '');\n }\n return Math.floor(elapsed) + ' second' + (elapsed > 1 ? 's' : '');\n }\n}","import { Component, ElementRef, OnDestroy, ViewChild, ViewChildren } from '@angular/core';\nimport { GridBodyComponent } from '../GridBodyComponent';\nimport { FormioPromiseService } from '@formio/angular';\nimport { Tooltip } from 'bootstrap';\n@Component({\n selector: 'form-grid-body',\n styleUrls: ['./FormGridBody.component.scss'],\n templateUrl: './FormGridBody.component.html'\n})\nexport class FormGridBodyComponent extends GridBodyComponent implements OnDestroy {\n @ViewChildren('create') createBtns: ElementRef[];\n @ViewChildren('view') viewBtns: ElementRef[];\n @ViewChildren('edit') editBtns: ElementRef[];\n @ViewChildren('permissions') permissionsBtns: ElementRef[];\n @ViewChildren('delete') deleteBtns: ElementRef[];\n public tooltips: Array<Tooltip> = [];\n\n load(formio: FormioPromiseService, query?: any) {\n query = query || {};\n return formio.loadForms({ params: query })\n .then((forms: any) => this.setRows(query, forms))\n .then(() => this.attachTooltips());\n }\n\n attachTooltips() {\n this.createBtns.forEach((el: ElementRef) => {\n this.tooltips.push(new Tooltip(el.nativeElement, {title: 'Create'}));\n });\n this.editBtns.forEach((el: ElementRef) => {\n this.tooltips.push(new Tooltip(el.nativeElement, {title: 'Edit'}));\n });\n this.viewBtns.forEach((el: ElementRef) => {\n this.tooltips.push(new Tooltip(el.nativeElement, {title: 'View'}));\n })\n this.permissionsBtns.forEach((el: ElementRef) => {\n this.tooltips.push(new Tooltip(el.nativeElement, {title: 'Permissions'}));\n });\n this.deleteBtns.forEach((el: ElementRef) => {\n this.tooltips.push(new Tooltip(el.nativeElement, {title: 'Delete'}));\n });\n }\n\n ngOnDestroy(): void {\n this.tooltips.forEach((tootip: Tooltip) => tootip.dispose());\n }\n}\n","<ng-template>\n <tbody *ngIf=\"rows\">\n <tr *ngFor=\"let form of rows\">\n <td>\n <div class=\"row\">\n <div class=\"col-sm-9\">\n <a routerLink=\"{{form._id}}/view\" (click)=\"onRowSelect($event, form)\" class=\"text-decoration-none\"><h5>{{ form.title }}</h5></a>\n <div class=\"form-updated small text-muted\">\n Updated {{ form.modified | timeSince }} ago\n </div>\n </div>\n <div class=\"col-sm-3 d-flex justify-content-end align-items-center\">\n <button #create *ngIf=\"actionAllowed('formView')\" class=\"btn btn-outline-secondary btn-sm form-btn form-btn-use\" (click)=\"onRowAction($event, form, 'view')\"><span class=\"fa fa-pencil bi bi-pencil\"></span></button>&nbsp;\n <button #view *ngIf=\"actionAllowed('formSubmission')\" class=\"btn btn-outline-secondary btn-sm form-btn\" (click)=\"onRowAction($event, form, 'submission')\"><span class=\"fa fa-list-alt bi bi-table\"></span></button>&nbsp;\n <button #edit *ngIf=\"actionAllowed('formEdit')\" class=\"btn btn-outline-secondary btn-sm form-btn\" (click)=\"onRowAction($event, form, 'edit')\"><span class=\"fa fa-edit bi bi-pencil-square\"></span></button>&nbsp;\n <button #delete *ngIf=\"actionAllowed('formDelete')\" class=\"btn btn-secondary btn-sm form-btn form-btn-delete\" (click)=\"onRowAction($event, form, 'delete')\" title=\"Delete form\"><span class=\"fa fa-trash bi bi-trash\"></span></button>\n </div>\n </div>\n </td>\n </tr>\n </tbody>\n</ng-template>\n","import { GridFooterPositions } from './types/grid-footer-positions';\nimport { Input, Output, ViewChild, TemplateRef, EventEmitter, Component } from '@angular/core';\nimport { GridHeaderComponent } from './GridHeaderComponent';\nimport { GridBodyComponent } from './GridBodyComponent';\n\n@Component({\n template: ''\n})\nexport class GridFooterComponent {\n @Input() header: GridHeaderComponent;\n @Input() body: GridBodyComponent;\n @Input() createText: String;\n @Input() size: number;\n @Input() actionAllowed: any;\n @Output() pageChanged: EventEmitter<any>;\n @Output() createItem: EventEmitter<any>;\n @ViewChild(TemplateRef, {static: true}) template: TemplateRef<any>;\n\n public footerPositions = GridFooterPositions;\n\n constructor() {\n this.pageChanged = new EventEmitter();\n this.createItem = new EventEmitter();\n }\n}\n","import {Component, ViewEncapsulation, OnInit } from '@angular/core';\nimport { GridFooterComponent } from '../GridFooterComponent';\n\n@Component({\n templateUrl: './FormGridFooter.component.html',\n styleUrls: ['../grid.footer.scss'],\n encapsulation: ViewEncapsulation.None\n})\nexport class FormGridFooterComponent extends GridFooterComponent implements OnInit {\n\n constructor() {\n super();\n }\n\n ngOnInit() {\n if (!this.createText) {\n this.createText = 'Create Form';\n }\n if (!this.size) {\n this.size = 7;\n }\n }\n}\n","<ng-template #footer let-position=\"position\" let-label=\"label\">\n <thead class=\"formio-grid-footer\" *ngIf=\"position === footerPositions.top\">\n <ng-container [ngTemplateOutlet]=\"defaultFooterTemplate\" [ngTemplateOutletContext]=\"{ label: label }\"></ng-container>\n </thead>\n <tfoot class=\"formio-grid-footer\" *ngIf=\"position === footerPositions.bottom\">\n <ng-container [ngTemplateOutlet]=\"defaultFooterTemplate\" [ngTemplateOutletContext]=\"{ label: label }\"></ng-container>\n </tfoot>\n</ng-template>\n\n<ng-template let-label=\"label\" #defaultFooterTemplate>\n <tr>\n <td *ngIf=\"header\" [colSpan]=\"header.numHeaders\">\n <button *ngIf=\"actionAllowed('formCreate')\" class=\"btn btn-primary form-btn-use float-start\" (click)=\"createItem.emit('form')\"><em class=\"fa fa-plus bi bi-plus-lg\"></em> {{ createText }}</button>\n <span class=\"float-end item-counter\"><span class=\"page-num\">{{ body.firstItem }} - {{ body.lastItem }}</span> / {{ body.total }} total</span>\n <span [attr.aria-label]=\"label\" role=\"navigation\">\n <pagination [totalItems]=\"body.total\" [itemsPerPage]=\"body.limit\" [(ngModel)]=\"body.skip\" (pageChanged)=\"pageChanged.emit($event)\" [maxSize]=\"size\" class=\"justify-content-center pagination-sm\">\n </pagination>\n </span>\n </td>\n </tr>\n</ng-template>\n","import { FormGridHeaderComponent } from './FormGridHeader.component';\nimport { FormGridBodyComponent } from './FormGridBody.component';\nimport { FormGridFooterComponent } from './FormGridFooter.component';\nexport default {\n header: FormGridHeaderComponent,\n body: FormGridBodyComponent,\n footer: FormGridFooterComponent\n};\n","import {Component} from '@angular/core';\nimport {Utils, Components, ExtendedComponentSchema} from '@formio/js';\nimport {GridHeaderComponent} from '../GridHeaderComponent';\nimport {FormioPromiseService} from '@formio/angular';\nimport {ComponentInstance, FormioForm} from '@formio/angular';\nimport {GridColumn} from '../types/grid-column';\nimport {GridHeader, SortType} from '../types/grid-header';\n\n@Component({\n templateUrl: './SubmissionGridHeader.component.html'\n})\nexport class SubmissionGridHeaderComponent extends GridHeaderComponent {\n\n // Map structure where the key is the path and the value is the component\n formComponents: Map<string, ExtendedComponentSchema>;\n\n load(formio: FormioPromiseService, query?: any, columns?: Array<GridColumn>) {\n query = query || {};\n return formio.loadForm({params: query}).then((form: FormioForm) => {\n this.headers = [];\n this.formComponents = new Map<string, ExtendedComponentSchema>();\n this.setComponents(form.components);\n columns ? columns.forEach(column => {\n this.setHeader(this.getHeaderForColumn(column, this.formComponents.get(column.path)));\n }) : this.setComponentsHeaders(this.formComponents);\n\n return this.headers;\n });\n }\n\n setHeader(header: GridHeader) {\n this.headers.push(header);\n }\n\n getHeaderForColumn(column: GridColumn, component?: ExtendedComponentSchema, sort?: SortType) {\n return {\n label: column.label,\n key: column.path,\n sort: sort,\n component: component ? Components.create(component, null, null, true) as ComponentInstance : undefined,\n renderCell: column ? column.renderCell : undefined\n };\n }\n\n getHeaderForComponent(component: ExtendedComponentSchema, path: string, sort?: SortType) {\n return {\n label: component.label,\n key: path,\n sort: sort,\n component: component ? Components.create(component, null, null, true) as ComponentInstance : undefined,\n };\n }\n // Set headers from components in case if columns are not provided\n setComponentsHeaders(components: Map<string, ExtendedComponentSchema>, sort?: SortType) {\n components.forEach((component, path) => {\n if (\n component.input &&\n (!component.hasOwnProperty('tableView') || component.tableView)\n ) {\n this.setHeader(this.getHeaderForComponent(component, path, sort));\n }\n });\n }\n\n // Map components\n setComponents(components) {\n Utils.eachComponent(components, (component: ExtendedComponentSchema, newPath: string) => {\n this.formComponents.set(`data.${newPath}`, component);\n });\n }\n}\n\n","<ng-template>\n <thead>\n <tr>\n <th *ngFor=\"let header of headers\">\n <a (click)=\"sort.emit(header)\">\n {{ header.label }}&nbsp;<span [ngClass]=\"{'fa-caret-up bi-caret-up': (header.sort === 'asc'), 'fa-caret-down bi-caret-down': (header.sort === 'desc')}\" class=\"fa bi\" *ngIf=\"header.sort\"></span>\n </a>\n </th>\n </tr>\n </thead>\n</ng-template>\n","import { Component } from '@angular/core';\nimport { each, get } from 'lodash';\nimport { GridBodyComponent } from '../GridBodyComponent';\nimport {FormioPromiseService} from '@formio/angular';\nimport { GridHeader } from '../types/grid-header';\nimport {FormioSubmission} from '@formio/angular';\n@Component({\n templateUrl: './SubmissionGridBody.component.html'\n})\nexport class SubmissionGridBodyComponent extends GridBodyComponent {\n load(formio: FormioPromiseService, query?: any) {\n query = query || {};\n return formio.loadSubmissions({ params: query })\n .then((submissions: any) => this.setRows(query, submissions));\n }\n\n /**\n * Render the cell data.\n *\n * @param submission\n * @param header\n * @return any\n */\n view(submission: FormioSubmission, header: GridHeader): string {\n const cellValue: any = get(submission, header.key);\n if (header.renderCell) {\n return header.renderCell(cellValue, header.component);\n } else {\n if (header.component) {\n if (header.component.getView) {\n return header.component.getView(cellValue);\n }\n return header.component.asString(cellValue);\n } else {\n return cellValue.toString();\n }\n }\n }\n}\n","<ng-template>\n <tbody>\n <tr *ngFor=\"let row of rows\" (click)=\"onRowSelect($event, row)\">\n <td *ngFor=\"let rowHeader of header.headers\" [innerHTML]=\"view(row, rowHeader)\"></td>\n </tr>\n </tbody>\n</ng-template>\n","import {Component, OnInit, ViewEncapsulation} from '@angular/core';\nimport { GridFooterComponent } from '../GridFooterComponent';\n\n@Component({\n templateUrl: './SubmissionGridFooter.component.html',\n styleUrls: ['../grid.footer.scss'],\n encapsulation: ViewEncapsulation.None\n})\nexport class SubmissionGridFooterComponent extends GridFooterComponent implements OnInit {\n\n constructor() {\n super();\n }\n\n ngOnInit() {\n if (!this.size) {\n this.size = 7;\n }\n }\n}\n","<ng-template #footer let-position=\"position\">\n <thead class=\"formio-grid-footer\" *ngIf=\"position === footerPositions.top\">\n <ng-container [ngTemplateOutlet]=\"defaultFooterTemplate\"></ng-container>\n </thead>\n <tfoot class=\"formio-grid-footer\" *ngIf=\"position === footerPositions.bottom\">\n <ng-container [ngTemplateOutlet]=\"defaultFooterTemplate\"></ng-container>\n </tfoot>\n</ng-template>\n\n<ng-template #defaultFooterTemplate>\n <tr>\n <td *ngIf=\"header\" [colSpan]=\"header.numHeaders\">\n <button *ngIf=\"actionAllowed('submissionCreate') && createText\" class=\"btn btn-primary float-start\" (click)=\"createItem.emit('form')\"><em class=\"fa fa-plus bi bi-plus\"></em> {{ createText }}</button>\n <span class=\"float-end item-counter\"><span class=\"page-num\">{{ body.firstItem }} - {{ body.lastItem }}</span> / {{ body.total }} total</span>\n <pagination [totalItems]=\"body.total\" [itemsPerPage]=\"body.limit\" [(ngModel)]=\"body.skip\" (pageChanged)=\"pageChanged.emit($event)\" [maxSize]=\"size\" class=\"justify-content-center pagination-sm\"></pagination>\n </td>\n </tr>\n</ng-template>\n","import { SubmissionGridHeaderComponent } from './SubmissionGridHeader.component';\nimport { SubmissionGridBodyComponent } from './SubmissionGridBody.component';\nimport { SubmissionGridFooterComponent } from './SubmissionGridFooter.component';\nexport default {\n header: SubmissionGridHeaderComponent,\n body: SubmissionGridBodyComponent,\n footer: SubmissionGridFooterComponent\n};\n","import { GridFooterPositions } from './types/grid-footer-positions';\nimport {\n AfterViewInit,\n ChangeDetectorRef,\n Component,\n ComponentFactoryResolver,\n EventEmitter,\n Input,\n OnChanges,\n OnInit,\n Output,\n ViewChild,\n ViewContainerRef\n} from '@angular/core';\nimport {FormioAlerts} from '@formio/angular';\nimport {each} from 'lodash';\nimport {Formio} from '@formio/js/sdk';\nimport {GridHeaderComponent} from './GridHeaderComponent';\nimport {GridBodyComponent} from './GridBodyComponent';\nimport {GridFooterComponent} from './GridFooterComponent';\nimport FormComponents from './form/index';\nimport SubmissionComponents from './submission/index';\nimport {FormioPromiseService} from '@formio/angular';\nimport {GridColumn} from './types/grid-column';\nimport {GridHeader, SortType} from './types/grid-header';\n\n@Component({\n selector: 'formio-grid',\n styleUrls: ['./grid.component.scss'],\n templateUrl: './grid.component.html'\n})\nexport class FormioGridComponent implements OnChanges, OnInit, AfterViewInit {\n @Input() footerPosition = GridFooterPositions.bottom;\n @Input() src?: string;\n @Input() items?: Array<any>;\n @Input() onForm?: Promise<any>;\n @Input() query?: any;\n @Input() refresh?: EventEmitter<object>;\n @Input() columns?: Array<GridColumn>;\n @Input() gridType?: string;\n @Input() size?: number;\n @Input() components?: any;\n @Input() formio?: FormioPromiseService;\n @Input() label?: string;\n @Input() createText: String;\n @Input() isActionAllowed: any;\n @Output() select: EventEmitter<object>;\n @Output() rowSelect: EventEmitter<object>;\n @Output() rowAction: EventEmitter<object>;\n @Output() createItem: EventEmitter<any>;\n @Output() error: EventEmitter<any>;\n @ViewChild('headerTemplate', {read: ViewContainerRef, static: true}) headerElement: ViewContainerRef;\n @ViewChild('bodyTemplate', {read: ViewContainerRef, static: true}) bodyElement: ViewContainerRef;\n @ViewChild('footerTemplate', {read: ViewContainerRef, static: true}) footerElement: ViewContainerRef;\n\n public page = 0;\n public isLoading = false;\n public initialized = false;\n public header: GridHeaderComponent;\n public body: GridBodyComponent;\n public footer: GridFooterComponent;\n public footerPositions = GridFooterPositions;\n\n constructor(\n public alerts: FormioAlerts,\n private resolver: ComponentFactoryResolver,\n private ref: ChangeDetectorRef\n ) {\n this.select = this.rowSelect = new EventEmitter();\n this.rowAction = new EventEmitter();\n this.createItem = new EventEmitter();\n this.error = new EventEmitter();\n this.isLoading = true;\n }\n\n createComponent(property, component) {\n const factory = this.resolver.resolveComponentFactory(component);\n const componentRef = property.createComponent(factory);\n return componentRef.instance;\n }\n\n loadGrid(src?: string) {\n // If no source is provided, then skip.\n if (!src && !this.formio) {\n return;\n }\n // Do not double load.\n if (this.formio && this.src && (src === this.src)) {\n return;\n }\n\n if (src) {\n this.src = src;\n this.formio = new FormioPromiseService(this.src, { formOnly: true });\n }\n\n // Load the header.\n this.header.load(this.formio, {}, this.columns)\n .then(() => this.setPage(0))\n .catch(error => this.onError(error));\n }\n\n ngOnInit() {\n // Create our components.\n const comps = this.components || ((this.gridType === 'form') ? FormComponents : SubmissionComponents);\n\n this.header = this.createComponent(this.headerElement, comps.header);\n this.header.actionAllowed = this.actionAllowed.bind(this);\n this.header.sort.subscribe(header => this.sortColumn(header));\n\n this.body = this.createComponent(this.bodyElement, comps.body);\n this.body.header = this.header;\n this.body.actionAllowed = this.actionAllowed.bind(this);\n this.body.rowSelect.subscribe(row => this.rowSelect.emit(row));\n this.body.rowAction.subscribe(action => this.rowAction.emit(action));\n\n this.footer = this.createComponent(this.footerElement, comps.footer);\n this.footer.header = this.header;\n this.footer.body = this.body;\n this.footer.actionAllowed = this.actionAllowed.bind(this);\n this.footer.createText = this.createText;\n this.footer.size = this.size;\n this.footer.pageChanged.subscribe(page => this.pageChanged(page));\n this.footer.createItem.subscribe(item => this.createItem.emit(item));\n }\n\n ngOnChanges(changes: any) {\n if (this.initialized) {\n if (\n (changes.src && changes.src.currentValue) ||\n (changes.formio && changes.formio.currentValue)\n ) {\n this.loadGrid(changes.src.currentValue);\n }\n\n if (changes.items && changes.items.currentValue) {\n this.refreshGrid();\n }\n }\n\n if (this.footer &&\n (changes.createText && changes.createText.currentValue)) {\n this.footer.createText = changes.createText.currentValue;\n }\n }\n\n ngAfterViewInit() {\n this.alerts.setAlerts([]);\n this.query = this.query || {};\n if (this.refresh) {\n this.refresh.subscribe((query: object) => this.refreshGrid(query));\n }\n this.loadGrid(this.src);\n this.initialized = true;\n this.ref.detectChanges();\n }\n\n actionAllowed(action) {\n if (this.isActionAllowed) {\n return this.isActionAllowed(action);\n } else {\n return true;\n }\n }\n\n onError(error: any) {\n this.isLoading = false;\n this.error.emit(error);\n if (typeof error === 'string' || error.message) {\n this.alerts.setAlert({\n type: 'danger',\n message: error.message || error\n });\n }\n }\n\n refreshGrid(query?: any) {\n this.alerts.setAlerts([]);\n this.query = query || this.query;\n if (!this.query.hasOwnProperty('limit')) {\n this.query.limit = 10;\n }\n if (!this.query.hasOwnProperty('skip')) {\n this.query.skip = 0;\n }\n this.isLoading = true;\n this.ref.detectChanges();\n Formio.cache = {};\n let loader = null;\n if (this.items) {\n loader = Promise.resolve(this.body.setRows(this.query, this.items));\n } else {\n loader = this.body.load(this.formio, this.query);\n }\n\n return loader.then(info => {\n this.isLoading = false;\n this.initialized = true;\n this.ref.detectChanges();\n }).catch(error => this.onError(error));\n }\n\n setPage(num = -1) {\n this.page = num !== -1 ? num : this.page;\n if (!this.query.hasOwnProperty('limit')) {\n this.query.limit = 10;\n }\n if (!this.query.hasOwnProperty('skip')) {\n this.query.skip = 0;\n }\n this.query.skip = this.page * this.query.limit;\n this.refreshGrid();\n }\n\n sortColumn(header: GridHeader) {\n // Reset all other column sorts.\n each(this.header.headers, (col: any) => {\n if (col.key !== header.key) {\n col.sort = '';\n }\n });\n switch (header.sort) {\n case 'asc':\n header.sort = SortType.DESC;\n this.query.sort = '-' + header.key;\n break;\n case 'desc':\n header.sort = undefined;\n delete this.query.sort;\n break;\n case undefined:\n header.sort = SortType.ASC;\n this.query.sort = header.key;\n break;\n }\n this.refreshGrid();\n }\n\n pageChanged(page: any) {\n this.setPage(page.page - 1);\n }\n}\n","<ng-template #headerTemplate></ng-template>\n<ng-template #bodyTemplate></ng-template>\n<ng-template #footerTemplate></ng-template>\n<div class=\"formio-grid\">\n <formio-alerts [alerts]=\"alerts\"></formio-alerts>\n <table class=\"table table-bordered table-striped table-hover\">\n <ng-container *ngIf=\"initialized && [footerPositions.top, footerPositions.both].indexOf(footerPosition) !== -1\"\n [ngTemplateOutlet]=\"footer.template\" [ngTemplateOutletContext]=\"{ position: footerPositions.top, label: label }\">\n </ng-container>\n <ng-container *ngIf=\"initialized\"\n [ngTemplateOutlet]=\"header.template\"></ng-container>\n <formio-loader [isLoading]=\"isLoading\"></formio-loader>\n <ng-container *ngIf=\"initialized\" [ngTemplateOutlet]=\"body.template\"></ng-container>\n <ng-container *ngIf=\"initialized && [footerPositions.bottom, footerPositions.both].indexOf(footerPosition) !== -1\"\n [ngTemplateOutlet]=\"footer.template\" [ngTemplateOutletContext]=\"{ position: footerPositions.bottom, label: label }\">\n </ng-container>\n </table>\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { RouterModule } from '@angular/router';\nimport { FormioModule } from '@formio/angular';\nimport { FormioAlerts } from '@formio/angular';\nimport { FormioGridComponent } from './grid.component';\nimport { PaginationModule } from 'ngx-bootstrap/pagination';\nimport { FormGridHeaderComponent } from './form/FormGridHeader.component';\nimport { FormGridBodyComponent } from './form/FormGridBody.component';\nimport { FormGridFooterComponent } from './form/FormGridFooter.component';\nimport { SubmissionGridHeaderComponent } from './submission/SubmissionGridHeader.component';\nimport { SubmissionGridBodyComponent } from './submission/SubmissionGridBody.component';\nimport { SubmissionGridFooterComponent } from './submission/SubmissionGridFooter.component';\nimport { GridHeaderComponent } from './GridHeaderComponent';\nimport { GridBodyComponent } from './GridBodyComponent';\nimport { GridFooterComponent } from './GridFooterComponent';\nimport { GridService } from './grid.service';\nimport { TimeSince } from './form/time-since.pipe'\n@NgModule({\n imports: [\n CommonModule,\n FormsModule,\n FormioModule,\n RouterModule,\n PaginationModule.forRoot()\n ],\n declarations: [\n FormioGridComponent,\n FormGridHeaderComponent,\n FormGridBodyComponent,\n FormGridFooterComponent,\n SubmissionGridHeaderComponent,\n SubmissionGridBodyComponent,\n SubmissionGridFooterComponent,\n GridHeaderComponent,\n GridBodyComponent,\n GridFooterComponent,\n TimeSince\n ],\n exports: [\n FormioGridComponent\n ],\n providers: [\n FormioAlerts,\n GridService\n ]\n})\nexport class FormioGrid {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i1.GridService","i3.TimeSince","i2","i1"],"mappings":"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"}