@formio/angular 7.5.0-rc.1-dev.1060.2e45ec8 → 7.5.0-rc.2

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 (416) hide show
  1. package/FormioBaseComponent.d.ts +93 -0
  2. package/FormioBaseComponent.d.ts.map +1 -0
  3. package/README.md +13 -204
  4. package/auth/auth.component.d.ts +6 -0
  5. package/auth/auth.component.d.ts.map +1 -0
  6. package/auth/auth.config.d.ts +63 -0
  7. package/auth/auth.config.d.ts.map +1 -0
  8. package/auth/auth.module.d.ts +17 -0
  9. package/auth/auth.module.d.ts.map +1 -0
  10. package/auth/auth.routes.d.ts +4 -0
  11. package/auth/auth.routes.d.ts.map +1 -0
  12. package/auth/auth.service.d.ts +41 -0
  13. package/auth/auth.service.d.ts.map +1 -0
  14. package/auth/formio-angular-auth.d.ts.map +1 -0
  15. package/{projects/angular-formio/auth/src/index.ts → auth/index.d.ts} +2 -1
  16. package/auth/index.d.ts.map +1 -0
  17. package/auth/login/login.component.d.ts +10 -0
  18. package/auth/login/login.component.d.ts.map +1 -0
  19. package/auth/register/register.component.d.ts +10 -0
  20. package/auth/register/register.component.d.ts.map +1 -0
  21. package/auth/resetpass/resetpass.component.d.ts +9 -0
  22. package/auth/resetpass/resetpass.component.d.ts.map +1 -0
  23. package/components/alerts/formio.alerts.component.d.ts +12 -0
  24. package/components/alerts/formio.alerts.component.d.ts.map +1 -0
  25. package/components/alerts/formio.alerts.d.ts +12 -0
  26. package/components/alerts/formio.alerts.d.ts.map +1 -0
  27. package/components/alerts/parse-html-content.pipe.d.ts +8 -0
  28. package/components/alerts/parse-html-content.pipe.d.ts.map +1 -0
  29. package/components/formbuilder/formbuilder.component.d.ts +37 -0
  30. package/components/formbuilder/formbuilder.component.d.ts.map +1 -0
  31. package/components/formio/formio.component.d.ts +15 -0
  32. package/components/formio/formio.component.d.ts.map +1 -0
  33. package/components/formioreport/formioreport.component.d.ts +21 -0
  34. package/components/formioreport/formioreport.component.d.ts.map +1 -0
  35. package/components/loader/formio.loader.component.d.ts +7 -0
  36. package/components/loader/formio.loader.component.d.ts.map +1 -0
  37. package/{projects/angular-formio/src/core.ts → core.d.ts} +2 -12
  38. package/core.d.ts.map +1 -0
  39. package/custom-tags.service.d.ts +8 -0
  40. package/custom-tags.service.d.ts.map +1 -0
  41. package/embed/app.service.d.ts +28 -0
  42. package/embed/app.service.d.ts.map +1 -0
  43. package/embed/builder.component.d.ts +14 -0
  44. package/embed/builder.component.d.ts.map +1 -0
  45. package/embed/embed.module.d.ts +10 -0
  46. package/embed/embed.module.d.ts.map +1 -0
  47. package/embed/formio-angular-embed.d.ts.map +1 -0
  48. package/embed/formio.component.d.ts +17 -0
  49. package/embed/formio.component.d.ts.map +1 -0
  50. package/{projects/angular-formio/embed/src/index.ts → embed/index.d.ts} +2 -1
  51. package/embed/index.d.ts.map +1 -0
  52. package/esm2022/FormioBaseComponent.mjs +580 -0
  53. package/esm2022/auth/auth.component.mjs +12 -0
  54. package/esm2022/auth/auth.config.mjs +21 -0
  55. package/esm2022/auth/auth.module.mjs +46 -0
  56. package/esm2022/auth/auth.routes.mjs +32 -0
  57. package/esm2022/auth/auth.service.mjs +199 -0
  58. package/esm2022/auth/formio-angular-auth.mjs +5 -0
  59. package/esm2022/auth/index.mjs +9 -0
  60. package/esm2022/auth/login/login.component.mjs +20 -0
  61. package/esm2022/auth/register/register.component.mjs +20 -0
  62. package/esm2022/auth/resetpass/resetpass.component.mjs +17 -0
  63. package/esm2022/components/alerts/formio.alerts.component.mjs +28 -0
  64. package/esm2022/components/alerts/formio.alerts.mjs +13 -0
  65. package/esm2022/components/alerts/parse-html-content.pipe.mjs +19 -0
  66. package/esm2022/components/formbuilder/formbuilder.component.mjs +202 -0
  67. package/esm2022/components/formio/formio.component.mjs +43 -0
  68. package/esm2022/components/formioreport/formioreport.component.mjs +89 -0
  69. package/esm2022/components/loader/formio.loader.component.mjs +15 -0
  70. package/esm2022/core.mjs +18 -0
  71. package/esm2022/custom-tags.service.mjs +14 -0
  72. package/esm2022/embed/app.service.mjs +58 -0
  73. package/esm2022/embed/builder.component.mjs +36 -0
  74. package/esm2022/embed/embed.module.mjs +35 -0
  75. package/esm2022/embed/formio-angular-embed.mjs +5 -0
  76. package/esm2022/embed/formio.component.mjs +50 -0
  77. package/esm2022/embed/index.mjs +7 -0
  78. package/esm2022/formio-angular.mjs +5 -0
  79. package/esm2022/formio-promise.service.mjs +36 -0
  80. package/esm2022/formio.common.mjs +11 -0
  81. package/esm2022/formio.config.mjs +29 -0
  82. package/esm2022/formio.module.mjs +59 -0
  83. package/esm2022/formio.service.mjs +62 -0
  84. package/esm2022/formio.utils.mjs +21 -0
  85. package/esm2022/grid/GridBodyComponent.mjs +89 -0
  86. package/esm2022/grid/GridFooterComponent.mjs +44 -0
  87. package/esm2022/grid/GridHeaderComponent.mjs +34 -0
  88. package/esm2022/grid/form/FormGridBody.component.mjs +63 -0
  89. package/esm2022/grid/form/FormGridFooter.component.mjs +26 -0
  90. package/esm2022/grid/form/FormGridHeader.component.mjs +27 -0
  91. package/esm2022/grid/form/index.mjs +9 -0
  92. package/esm2022/grid/form/time-since.pipe.mjs +37 -0
  93. package/esm2022/grid/formio-angular-grid.mjs +5 -0
  94. package/esm2022/grid/grid.component.mjs +257 -0
  95. package/esm2022/grid/grid.module.mjs +79 -0
  96. package/esm2022/grid/grid.service.mjs +18 -0
  97. package/esm2022/grid/index.mjs +13 -0
  98. package/esm2022/grid/submission/SubmissionGridBody.component.mjs +43 -0
  99. package/esm2022/grid/submission/SubmissionGridFooter.component.mjs +23 -0
  100. package/esm2022/grid/submission/SubmissionGridHeader.component.mjs +63 -0
  101. package/esm2022/grid/submission/index.mjs +9 -0
  102. package/esm2022/grid/types/grid-column.mjs +2 -0
  103. package/esm2022/grid/types/grid-footer-positions.mjs +7 -0
  104. package/esm2022/grid/types/grid-header.mjs +6 -0
  105. package/esm2022/index.mjs +3 -0
  106. package/esm2022/manager/create/create.component.mjs +18 -0
  107. package/esm2022/manager/delete/delete.component.mjs +42 -0
  108. package/esm2022/manager/edit/edit.component.mjs +125 -0
  109. package/esm2022/manager/form/form.component.mjs +80 -0
  110. package/esm2022/manager/form-manager.config.mjs +18 -0
  111. package/esm2022/manager/form-manager.module.mjs +83 -0
  112. package/esm2022/manager/form-manager.routes.mjs +74 -0
  113. package/esm2022/manager/form-manager.service.mjs +185 -0
  114. package/esm2022/manager/formio-angular-manager.mjs +5 -0
  115. package/esm2022/manager/index/index.component.mjs +108 -0
  116. package/esm2022/manager/index.mjs +16 -0
  117. package/esm2022/manager/submission/delete/delete.component.mjs +32 -0
  118. package/esm2022/manager/submission/edit/edit.component.mjs +25 -0
  119. package/esm2022/manager/submission/index/index.component.mjs +25 -0
  120. package/esm2022/manager/submission/submission/submission.component.mjs +29 -0
  121. package/esm2022/manager/submission/view/view.component.mjs +17 -0
  122. package/esm2022/manager/view/view.component.mjs +52 -0
  123. package/esm2022/resource/create/create.component.mjs +43 -0
  124. package/esm2022/resource/delete/delete.component.mjs +29 -0
  125. package/esm2022/resource/edit/edit.component.mjs +42 -0
  126. package/esm2022/resource/formio-angular-resource.mjs +5 -0
  127. package/esm2022/resource/index/index.component.mjs +69 -0
  128. package/esm2022/resource/index.mjs +12 -0
  129. package/esm2022/resource/resource.component.mjs +46 -0
  130. package/esm2022/resource/resource.config.mjs +13 -0
  131. package/esm2022/resource/resource.module.mjs +62 -0
  132. package/esm2022/resource/resource.routes.mjs +42 -0
  133. package/esm2022/resource/resource.service.mjs +229 -0
  134. package/esm2022/resource/resources.service.mjs +25 -0
  135. package/esm2022/resource/view/view.component.mjs +25 -0
  136. package/esm2022/types/alerts-position.mjs +8 -0
  137. package/esm2022/types/formio-metadata.mjs +2 -0
  138. package/esm2022/types/formio-submission.mjs +6 -0
  139. package/fesm2022/formio-angular-auth.mjs +345 -0
  140. package/fesm2022/formio-angular-auth.mjs.map +1 -0
  141. package/fesm2022/formio-angular-embed.mjs +176 -0
  142. package/fesm2022/formio-angular-embed.mjs.map +1 -0
  143. package/fesm2022/formio-angular-grid.mjs +772 -0
  144. package/fesm2022/formio-angular-grid.mjs.map +1 -0
  145. package/fesm2022/formio-angular-manager.mjs +822 -0
  146. package/fesm2022/formio-angular-manager.mjs.map +1 -0
  147. package/fesm2022/formio-angular-resource.mjs +571 -0
  148. package/fesm2022/formio-angular-resource.mjs.map +1 -0
  149. package/fesm2022/formio-angular.mjs +1187 -0
  150. package/fesm2022/formio-angular.mjs.map +1 -0
  151. package/formio-angular.d.ts.map +1 -0
  152. package/formio-promise.service.d.ts +16 -0
  153. package/formio-promise.service.d.ts.map +1 -0
  154. package/formio.common.d.ts +73 -0
  155. package/formio.common.d.ts.map +1 -0
  156. package/formio.config.d.ts +20 -0
  157. package/formio.config.d.ts.map +1 -0
  158. package/formio.module.d.ts +15 -0
  159. package/formio.module.d.ts.map +1 -0
  160. package/formio.service.d.ts +18 -0
  161. package/formio.service.d.ts.map +1 -0
  162. package/formio.utils.d.ts +2 -0
  163. package/formio.utils.d.ts.map +1 -0
  164. package/grid/GridBodyComponent.d.ts +35 -0
  165. package/grid/GridBodyComponent.d.ts.map +1 -0
  166. package/grid/GridFooterComponent.d.ts +20 -0
  167. package/grid/GridFooterComponent.d.ts.map +1 -0
  168. package/grid/GridHeaderComponent.d.ts +16 -0
  169. package/grid/GridHeaderComponent.d.ts.map +1 -0
  170. package/grid/form/FormGridBody.component.d.ts +19 -0
  171. package/grid/form/FormGridBody.component.d.ts.map +1 -0
  172. package/grid/form/FormGridFooter.component.d.ts +10 -0
  173. package/grid/form/FormGridFooter.component.d.ts.map +1 -0
  174. package/grid/form/FormGridHeader.component.d.ts +11 -0
  175. package/grid/form/FormGridHeader.component.d.ts.map +1 -0
  176. package/grid/form/index.d.ts +10 -0
  177. package/grid/form/index.d.ts.map +1 -0
  178. package/grid/form/time-since.pipe.d.ts +8 -0
  179. package/grid/form/time-since.pipe.d.ts.map +1 -0
  180. package/grid/formio-angular-grid.d.ts.map +1 -0
  181. package/grid/grid.component.d.ts +59 -0
  182. package/grid/grid.component.d.ts.map +1 -0
  183. package/grid/grid.module.d.ts +23 -0
  184. package/grid/grid.module.d.ts.map +1 -0
  185. package/grid/grid.service.d.ts +10 -0
  186. package/grid/grid.service.d.ts.map +1 -0
  187. package/{projects/angular-formio/grid/src/index.ts → grid/index.d.ts} +1 -0
  188. package/grid/index.d.ts.map +1 -0
  189. package/grid/submission/SubmissionGridBody.component.d.ts +19 -0
  190. package/grid/submission/SubmissionGridBody.component.d.ts.map +1 -0
  191. package/grid/submission/SubmissionGridFooter.component.d.ts +10 -0
  192. package/grid/submission/SubmissionGridFooter.component.d.ts.map +1 -0
  193. package/grid/submission/SubmissionGridHeader.component.d.ts +30 -0
  194. package/grid/submission/SubmissionGridHeader.component.d.ts.map +1 -0
  195. package/{projects/angular-formio/grid/src/submission/index.ts → grid/submission/index.d.ts} +6 -4
  196. package/grid/submission/index.d.ts.map +1 -0
  197. package/grid/types/grid-column.d.ts +7 -0
  198. package/grid/types/grid-column.d.ts.map +1 -0
  199. package/grid/types/grid-footer-positions.d.ts +6 -0
  200. package/grid/types/grid-footer-positions.d.ts.map +1 -0
  201. package/grid/types/grid-header.d.ts +13 -0
  202. package/grid/types/grid-header.d.ts.map +1 -0
  203. package/{projects/angular-formio/src/index.ts → index.d.ts} +1 -0
  204. package/index.d.ts.map +1 -0
  205. package/manager/create/create.component.d.ts +9 -0
  206. package/manager/create/create.component.d.ts.map +1 -0
  207. package/manager/delete/delete.component.d.ts +18 -0
  208. package/manager/delete/delete.component.d.ts.map +1 -0
  209. package/manager/edit/edit.component.d.ts +31 -0
  210. package/manager/edit/edit.component.d.ts.map +1 -0
  211. package/manager/form/form.component.d.ts +29 -0
  212. package/manager/form/form.component.d.ts.map +1 -0
  213. package/manager/form-manager.config.d.ts +30 -0
  214. package/manager/form-manager.config.d.ts.map +1 -0
  215. package/manager/form-manager.module.d.ts +28 -0
  216. package/manager/form-manager.module.d.ts.map +1 -0
  217. package/manager/form-manager.routes.d.ts +4 -0
  218. package/manager/form-manager.routes.d.ts.map +1 -0
  219. package/manager/form-manager.service.d.ts +37 -0
  220. package/manager/form-manager.service.d.ts.map +1 -0
  221. package/manager/formio-angular-manager.d.ts.map +1 -0
  222. package/manager/index/index.component.d.ts +28 -0
  223. package/manager/index/index.component.d.ts.map +1 -0
  224. package/{projects/angular-formio/manager/src/index.ts → manager/index.d.ts} +1 -0
  225. package/manager/index.d.ts.map +1 -0
  226. package/manager/submission/delete/delete.component.d.ts +16 -0
  227. package/manager/submission/delete/delete.component.d.ts.map +1 -0
  228. package/manager/submission/edit/edit.component.d.ts +13 -0
  229. package/manager/submission/edit/edit.component.d.ts.map +1 -0
  230. package/manager/submission/index/index.component.d.ts +13 -0
  231. package/manager/submission/index/index.component.d.ts.map +1 -0
  232. package/manager/submission/submission/submission.component.d.ts +15 -0
  233. package/manager/submission/submission/submission.component.d.ts.map +1 -0
  234. package/manager/submission/view/view.component.d.ts +9 -0
  235. package/manager/submission/view/view.component.d.ts.map +1 -0
  236. package/manager/view/view.component.d.ts +24 -0
  237. package/manager/view/view.component.d.ts.map +1 -0
  238. package/package.json +63 -54
  239. package/resource/create/create.component.d.ts +19 -0
  240. package/resource/create/create.component.d.ts.map +1 -0
  241. package/resource/delete/delete.component.d.ts +14 -0
  242. package/resource/delete/delete.component.d.ts.map +1 -0
  243. package/resource/edit/edit.component.d.ts +22 -0
  244. package/resource/edit/edit.component.d.ts.map +1 -0
  245. package/resource/formio-angular-resource.d.ts.map +1 -0
  246. package/resource/index/index.component.d.ts +23 -0
  247. package/resource/index/index.component.d.ts.map +1 -0
  248. package/{projects/angular-formio/resource/src/index.ts → resource/index.d.ts} +1 -0
  249. package/resource/index.d.ts.map +1 -0
  250. package/resource/resource.component.d.ts +24 -0
  251. package/resource/resource.component.d.ts.map +1 -0
  252. package/resource/resource.config.d.ts +17 -0
  253. package/resource/resource.config.d.ts.map +1 -0
  254. package/resource/resource.module.d.ts +20 -0
  255. package/resource/resource.module.d.ts.map +1 -0
  256. package/resource/resource.routes.d.ts +4 -0
  257. package/resource/resource.routes.d.ts.map +1 -0
  258. package/resource/resource.service.d.ts +52 -0
  259. package/resource/resource.service.d.ts.map +1 -0
  260. package/resource/resources.service.d.ts +16 -0
  261. package/resource/resources.service.d.ts.map +1 -0
  262. package/resource/view/view.component.d.ts +16 -0
  263. package/resource/view/view.component.d.ts.map +1 -0
  264. package/types/alerts-position.d.ts +7 -0
  265. package/types/alerts-position.d.ts.map +1 -0
  266. package/types/formio-metadata.d.ts +11 -0
  267. package/types/formio-metadata.d.ts.map +1 -0
  268. package/types/formio-submission.d.ts +19 -0
  269. package/types/formio-submission.d.ts.map +1 -0
  270. package/.dockerignore +0 -5
  271. package/.editorconfig +0 -13
  272. package/.github/ISSUE_TEMPLATE/bug_report.md +0 -38
  273. package/.github/ISSUE_TEMPLATE/custom-components-support-request.md +0 -15
  274. package/.github/ISSUE_TEMPLATE/question.md +0 -8
  275. package/.github/pull_request_template.md +0 -35
  276. package/.github/workflows/repo.yml +0 -145
  277. package/.travis.yml +0 -4
  278. package/.yo-rc.json +0 -7
  279. package/CHANGELOG.md +0 -1153
  280. package/Dockerfile +0 -20
  281. package/LICENSE +0 -21
  282. package/angular.json +0 -38
  283. package/bs-config.json +0 -11
  284. package/projects/angular-formio/README.md +0 -24
  285. package/projects/angular-formio/auth/ng-package.json +0 -5
  286. package/projects/angular-formio/auth/src/auth.component.html +0 -11
  287. package/projects/angular-formio/auth/src/auth.component.ts +0 -5
  288. package/projects/angular-formio/auth/src/auth.config.ts +0 -72
  289. package/projects/angular-formio/auth/src/auth.module.ts +0 -33
  290. package/projects/angular-formio/auth/src/auth.routes.ts +0 -34
  291. package/projects/angular-formio/auth/src/auth.service.ts +0 -221
  292. package/projects/angular-formio/auth/src/login/login.component.html +0 -1
  293. package/projects/angular-formio/auth/src/login/login.component.ts +0 -11
  294. package/projects/angular-formio/auth/src/public_api.ts +0 -5
  295. package/projects/angular-formio/auth/src/register/register.component.html +0 -1
  296. package/projects/angular-formio/auth/src/register/register.component.ts +0 -11
  297. package/projects/angular-formio/auth/src/resetpass/resetpass.component.html +0 -1
  298. package/projects/angular-formio/auth/src/resetpass/resetpass.component.ts +0 -8
  299. package/projects/angular-formio/embed/ng-package.json +0 -5
  300. package/projects/angular-formio/embed/src/app.service.ts +0 -59
  301. package/projects/angular-formio/embed/src/builder.component.ts +0 -19
  302. package/projects/angular-formio/embed/src/embed.module.ts +0 -23
  303. package/projects/angular-formio/embed/src/formio.component.ts +0 -27
  304. package/projects/angular-formio/grid/ng-package.json +0 -5
  305. package/projects/angular-formio/grid/src/GridBodyComponent.ts +0 -80
  306. package/projects/angular-formio/grid/src/GridFooterComponent.ts +0 -25
  307. package/projects/angular-formio/grid/src/GridHeaderComponent.ts +0 -25
  308. package/projects/angular-formio/grid/src/form/FormGridBody.component.html +0 -22
  309. package/projects/angular-formio/grid/src/form/FormGridBody.component.scss +0 -4
  310. package/projects/angular-formio/grid/src/form/FormGridBody.component.ts +0 -46
  311. package/projects/angular-formio/grid/src/form/FormGridFooter.component.html +0 -21
  312. package/projects/angular-formio/grid/src/form/FormGridFooter.component.ts +0 -23
  313. package/projects/angular-formio/grid/src/form/FormGridHeader.component.html +0 -18
  314. package/projects/angular-formio/grid/src/form/FormGridHeader.component.ts +0 -24
  315. package/projects/angular-formio/grid/src/form/index.ts +0 -8
  316. package/projects/angular-formio/grid/src/form/time-since.pipe.ts +0 -31
  317. package/projects/angular-formio/grid/src/grid.component.html +0 -18
  318. package/projects/angular-formio/grid/src/grid.component.scss +0 -9
  319. package/projects/angular-formio/grid/src/grid.component.ts +0 -242
  320. package/projects/angular-formio/grid/src/grid.footer.scss +0 -14
  321. package/projects/angular-formio/grid/src/grid.module.ts +0 -49
  322. package/projects/angular-formio/grid/src/grid.service.ts +0 -16
  323. package/projects/angular-formio/grid/src/public_api.ts +0 -5
  324. package/projects/angular-formio/grid/src/submission/SubmissionGridBody.component.html +0 -7
  325. package/projects/angular-formio/grid/src/submission/SubmissionGridBody.component.ts +0 -39
  326. package/projects/angular-formio/grid/src/submission/SubmissionGridFooter.component.html +0 -18
  327. package/projects/angular-formio/grid/src/submission/SubmissionGridFooter.component.ts +0 -20
  328. package/projects/angular-formio/grid/src/submission/SubmissionGridHeader.component.html +0 -11
  329. package/projects/angular-formio/grid/src/submission/SubmissionGridHeader.component.ts +0 -72
  330. package/projects/angular-formio/grid/src/types/grid-column.ts +0 -7
  331. package/projects/angular-formio/grid/src/types/grid-footer-positions.ts +0 -5
  332. package/projects/angular-formio/grid/src/types/grid-header.ts +0 -14
  333. package/projects/angular-formio/karma.conf.js +0 -32
  334. package/projects/angular-formio/manager/ng-package.json +0 -5
  335. package/projects/angular-formio/manager/src/create/create.component.ts +0 -11
  336. package/projects/angular-formio/manager/src/delete/delete.component.html +0 -6
  337. package/projects/angular-formio/manager/src/delete/delete.component.ts +0 -37
  338. package/projects/angular-formio/manager/src/edit/edit.component.html +0 -19
  339. package/projects/angular-formio/manager/src/edit/edit.component.ts +0 -110
  340. package/projects/angular-formio/manager/src/form/form.component.html +0 -32
  341. package/projects/angular-formio/manager/src/form/form.component.ts +0 -73
  342. package/projects/angular-formio/manager/src/form-manager.config.ts +0 -31
  343. package/projects/angular-formio/manager/src/form-manager.module.ts +0 -54
  344. package/projects/angular-formio/manager/src/form-manager.routes.ts +0 -75
  345. package/projects/angular-formio/manager/src/form-manager.service.ts +0 -190
  346. package/projects/angular-formio/manager/src/index/index.component.html +0 -14
  347. package/projects/angular-formio/manager/src/index/index.component.scss +0 -22
  348. package/projects/angular-formio/manager/src/index/index.component.ts +0 -100
  349. package/projects/angular-formio/manager/src/public_api.ts +0 -5
  350. package/projects/angular-formio/manager/src/submission/delete/delete.component.html +0 -6
  351. package/projects/angular-formio/manager/src/submission/delete/delete.component.ts +0 -26
  352. package/projects/angular-formio/manager/src/submission/edit/edit.component.html +0 -7
  353. package/projects/angular-formio/manager/src/submission/edit/edit.component.ts +0 -18
  354. package/projects/angular-formio/manager/src/submission/index/index.component.html +0 -1
  355. package/projects/angular-formio/manager/src/submission/index/index.component.ts +0 -18
  356. package/projects/angular-formio/manager/src/submission/submission/submission.component.html +0 -8
  357. package/projects/angular-formio/manager/src/submission/submission/submission.component.ts +0 -24
  358. package/projects/angular-formio/manager/src/submission/view/view.component.html +0 -7
  359. package/projects/angular-formio/manager/src/submission/view/view.component.ts +0 -9
  360. package/projects/angular-formio/manager/src/view/view.component.html +0 -11
  361. package/projects/angular-formio/manager/src/view/view.component.ts +0 -44
  362. package/projects/angular-formio/ng-package.json +0 -7
  363. package/projects/angular-formio/package.json +0 -37
  364. package/projects/angular-formio/resource/ng-package.json +0 -5
  365. package/projects/angular-formio/resource/src/create/create.component.html +0 -13
  366. package/projects/angular-formio/resource/src/create/create.component.scss +0 -3
  367. package/projects/angular-formio/resource/src/create/create.component.ts +0 -37
  368. package/projects/angular-formio/resource/src/delete/delete.component.html +0 -5
  369. package/projects/angular-formio/resource/src/delete/delete.component.ts +0 -24
  370. package/projects/angular-formio/resource/src/edit/edit.component.html +0 -7
  371. package/projects/angular-formio/resource/src/edit/edit.component.ts +0 -35
  372. package/projects/angular-formio/resource/src/index/index.component.html +0 -10
  373. package/projects/angular-formio/resource/src/index/index.component.ts +0 -64
  374. package/projects/angular-formio/resource/src/index.js +0 -24
  375. package/projects/angular-formio/resource/src/public_api.ts +0 -5
  376. package/projects/angular-formio/resource/src/resource.component.html +0 -7
  377. package/projects/angular-formio/resource/src/resource.component.ts +0 -48
  378. package/projects/angular-formio/resource/src/resource.config.ts +0 -17
  379. package/projects/angular-formio/resource/src/resource.module.ts +0 -43
  380. package/projects/angular-formio/resource/src/resource.routes.ts +0 -43
  381. package/projects/angular-formio/resource/src/resource.service.ts +0 -258
  382. package/projects/angular-formio/resource/src/resources.service.ts +0 -24
  383. package/projects/angular-formio/resource/src/view/view.component.html +0 -6
  384. package/projects/angular-formio/resource/src/view/view.component.ts +0 -19
  385. package/projects/angular-formio/src/FormioBaseComponent.ts +0 -554
  386. package/projects/angular-formio/src/components/alerts/formio.alerts.component.html +0 -3
  387. package/projects/angular-formio/src/components/alerts/formio.alerts.component.ts +0 -19
  388. package/projects/angular-formio/src/components/alerts/formio.alerts.ts +0 -21
  389. package/projects/angular-formio/src/components/alerts/parse-html-content.pipe.ts +0 -15
  390. package/projects/angular-formio/src/components/formbuilder/formbuilder.component.html +0 -1
  391. package/projects/angular-formio/src/components/formbuilder/formbuilder.component.ts +0 -213
  392. package/projects/angular-formio/src/components/formio/formio.component.html +0 -8
  393. package/projects/angular-formio/src/components/formio/formio.component.ts +0 -33
  394. package/projects/angular-formio/src/components/formioreport/formioreport.component.html +0 -8
  395. package/projects/angular-formio/src/components/formioreport/formioreport.component.ts +0 -95
  396. package/projects/angular-formio/src/components/loader/formio.loader.component.html +0 -3
  397. package/projects/angular-formio/src/components/loader/formio.loader.component.scss +0 -26
  398. package/projects/angular-formio/src/components/loader/formio.loader.component.ts +0 -10
  399. package/projects/angular-formio/src/custom-tags.service.ts +0 -9
  400. package/projects/angular-formio/src/formio-promise.service.ts +0 -36
  401. package/projects/angular-formio/src/formio.common.ts +0 -91
  402. package/projects/angular-formio/src/formio.config.ts +0 -26
  403. package/projects/angular-formio/src/formio.module.ts +0 -38
  404. package/projects/angular-formio/src/formio.service.ts +0 -57
  405. package/projects/angular-formio/src/formio.utils.ts +0 -23
  406. package/projects/angular-formio/src/public-api.ts +0 -5
  407. package/projects/angular-formio/src/test.ts +0 -28
  408. package/projects/angular-formio/src/types/alerts-position.ts +0 -6
  409. package/projects/angular-formio/src/types/formio-metadata.ts +0 -10
  410. package/projects/angular-formio/src/types/formio-submission.ts +0 -20
  411. package/projects/angular-formio/tsconfig.lib.json +0 -27
  412. package/projects/angular-formio/tsconfig.lib.prod.json +0 -8
  413. package/projects/angular-formio/tsconfig.spec.json +0 -17
  414. package/projects/angular-formio/tslint.json +0 -17
  415. package/tsconfig.json +0 -39
  416. package/tslint.json +0 -140
@@ -0,0 +1,772 @@
1
+ import * as i0 from '@angular/core';
2
+ import { EventEmitter, TemplateRef, Component, Input, Output, ViewChild, Injectable, Pipe, ViewChildren, ViewEncapsulation, ViewContainerRef, NgModule } from '@angular/core';
3
+ import * as i1 from '@angular/common';
4
+ import { CommonModule } from '@angular/common';
5
+ import * as i2$1 from '@angular/forms';
6
+ import { FormsModule } from '@angular/forms';
7
+ import * as i2 from '@angular/router';
8
+ import { RouterModule } from '@angular/router';
9
+ import * as i1$1 from '@formio/angular';
10
+ import { FormioPromiseService, FormioModule, FormioAlerts } from '@formio/angular';
11
+ import { each, clone, get } from 'lodash';
12
+ import { Formio } from '@formio/js/sdk';
13
+ import { Tooltip } from 'bootstrap';
14
+ import * as i3 from 'ngx-bootstrap/pagination';
15
+ import { PaginationModule } from 'ngx-bootstrap/pagination';
16
+ import { Components, Utils } from '@formio/js';
17
+
18
+ var GridFooterPositions;
19
+ (function (GridFooterPositions) {
20
+ GridFooterPositions[GridFooterPositions["bottom"] = 0] = "bottom";
21
+ GridFooterPositions[GridFooterPositions["top"] = 1] = "top";
22
+ GridFooterPositions[GridFooterPositions["both"] = 2] = "both";
23
+ })(GridFooterPositions || (GridFooterPositions = {}));
24
+
25
+ class GridHeaderComponent {
26
+ actionAllowed;
27
+ sort;
28
+ template;
29
+ headers;
30
+ constructor() {
31
+ this.headers = [];
32
+ this.sort = new EventEmitter();
33
+ }
34
+ get numHeaders() {
35
+ return this.headers.length;
36
+ }
37
+ load(formio, query, columns) {
38
+ return Promise.resolve([]);
39
+ }
40
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: GridHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
41
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.2", type: GridHeaderComponent, selector: "ng-component", inputs: { actionAllowed: "actionAllowed" }, outputs: { sort: "sort" }, viewQueries: [{ propertyName: "template", first: true, predicate: TemplateRef, descendants: true, static: true }], ngImport: i0, template: '', isInline: true });
42
+ }
43
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: GridHeaderComponent, decorators: [{
44
+ type: Component,
45
+ args: [{
46
+ template: ''
47
+ }]
48
+ }], ctorParameters: () => [], propDecorators: { actionAllowed: [{
49
+ type: Input
50
+ }], sort: [{
51
+ type: Output
52
+ }], template: [{
53
+ type: ViewChild,
54
+ args: [TemplateRef, { static: true }]
55
+ }] } });
56
+
57
+ var SortType;
58
+ (function (SortType) {
59
+ SortType["ASC"] = "asc";
60
+ SortType["DESC"] = "desc";
61
+ })(SortType || (SortType = {}));
62
+
63
+ class FormGridHeaderComponent extends GridHeaderComponent {
64
+ header;
65
+ load(formio) {
66
+ this.header = {
67
+ label: 'Title',
68
+ key: 'title',
69
+ sort: SortType.ASC
70
+ };
71
+ this.headers = [this.header];
72
+ return Promise.resolve(this.headers);
73
+ }
74
+ get numHeaders() {
75
+ return 2;
76
+ }
77
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: FormGridHeaderComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
78
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.2", type: FormGridHeaderComponent, selector: "form-grid-header", usesInheritance: true, ngImport: i0, template: "<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", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
79
+ }
80
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: FormGridHeaderComponent, decorators: [{
81
+ type: Component,
82
+ args: [{ selector: 'form-grid-header', template: "<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" }]
83
+ }] });
84
+
85
+ class GridService {
86
+ rows;
87
+ constructor() { }
88
+ setRows(rows) {
89
+ this.rows = rows;
90
+ }
91
+ getFormsPerPage() {
92
+ return this.rows?.length;
93
+ }
94
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: GridService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
95
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: GridService });
96
+ }
97
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: GridService, decorators: [{
98
+ type: Injectable
99
+ }], ctorParameters: () => [] });
100
+
101
+ class GridBodyComponent {
102
+ service;
103
+ header;
104
+ actionAllowed;
105
+ rowSelect;
106
+ rowAction;
107
+ template;
108
+ rows;
109
+ loading;
110
+ firstItem = 0;
111
+ lastItem = 0;
112
+ skip = 0;
113
+ limit = 0;
114
+ total = 0;
115
+ constructor(service) {
116
+ this.service = service;
117
+ this.rowSelect = new EventEmitter();
118
+ this.rowAction = new EventEmitter();
119
+ this.loading = true;
120
+ }
121
+ load(formio, query) {
122
+ return formio.loadForm(query);
123
+ }
124
+ onRowSelect(event, row) {
125
+ event.preventDefault();
126
+ this.rowSelect.emit(row);
127
+ }
128
+ onRowAction(event, row, action) {
129
+ event.preventDefault();
130
+ this.rowAction.emit({ row, action });
131
+ }
132
+ /**
133
+ * Set the rows for this Grid body.
134
+ *
135
+ * @param query
136
+ * @param items
137
+ * @return any
138
+ */
139
+ setRows(query, items) {
140
+ this.rows = [];
141
+ if (typeof items !== 'object') {
142
+ this.firstItem = 0;
143
+ this.lastItem = 0;
144
+ this.total = 0;
145
+ this.skip = 0;
146
+ this.loading = false;
147
+ this.service.setRows(this.rows);
148
+ return this.rows;
149
+ }
150
+ this.firstItem = query.skip + 1;
151
+ this.lastItem = this.firstItem + items.length - 1;
152
+ if (this.lastItem === 0) {
153
+ this.firstItem = 0;
154
+ }
155
+ this.total = items.serverCount;
156
+ this.limit = query.limit;
157
+ this.skip = Math.floor(items.skip / query.limit) + 1;
158
+ this.loading = false;
159
+ each(items, (item) => {
160
+ this.rows.push(clone(item));
161
+ });
162
+ this.service.setRows(this.rows);
163
+ return this.rows;
164
+ }
165
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: GridBodyComponent, deps: [{ token: GridService }], target: i0.ɵɵFactoryTarget.Component });
166
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.2", type: GridBodyComponent, selector: "ng-component", inputs: { header: "header", actionAllowed: "actionAllowed" }, outputs: { rowSelect: "rowSelect", rowAction: "rowAction" }, viewQueries: [{ propertyName: "template", first: true, predicate: TemplateRef, descendants: true, static: true }], ngImport: i0, template: '', isInline: true });
167
+ }
168
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: GridBodyComponent, decorators: [{
169
+ type: Component,
170
+ args: [{
171
+ template: ''
172
+ }]
173
+ }], ctorParameters: () => [{ type: GridService }], propDecorators: { header: [{
174
+ type: Input
175
+ }], actionAllowed: [{
176
+ type: Input
177
+ }], rowSelect: [{
178
+ type: Output
179
+ }], rowAction: [{
180
+ type: Output
181
+ }], template: [{
182
+ type: ViewChild,
183
+ args: [TemplateRef, { static: true }]
184
+ }] } });
185
+
186
+ class TimeSince {
187
+ transform(date) {
188
+ const elapsed = (new Date().getTime() - new Date(date).getTime()) / 1000;
189
+ let interval;
190
+ if (interval >= 1) {
191
+ return interval + ' year' + (interval > 1 ? 's' : '');
192
+ }
193
+ interval = Math.floor(elapsed / 2592000);
194
+ if (interval >= 1) {
195
+ return interval + ' month' + (interval > 1 ? 's' : '');
196
+ }
197
+ interval = Math.floor(elapsed / 86400);
198
+ if (interval >= 1) {
199
+ return interval + ' day' + (interval > 1 ? 's' : '');
200
+ }
201
+ interval = Math.floor(elapsed / 3600);
202
+ if (interval >= 1) {
203
+ return interval + ' hour' + (interval > 1 ? 's' : '');
204
+ }
205
+ interval = Math.floor(elapsed / 60);
206
+ if (interval >= 1) {
207
+ return interval + ' minute' + (interval > 1 ? 's' : '');
208
+ }
209
+ return Math.floor(elapsed) + ' second' + (elapsed > 1 ? 's' : '');
210
+ }
211
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: TimeSince, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
212
+ static ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.2", ngImport: i0, type: TimeSince, name: "timeSince" });
213
+ }
214
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: TimeSince, decorators: [{
215
+ type: Pipe,
216
+ args: [{
217
+ name: 'timeSince'
218
+ }]
219
+ }] });
220
+
221
+ class FormGridBodyComponent extends GridBodyComponent {
222
+ createBtns;
223
+ viewBtns;
224
+ editBtns;
225
+ permissionsBtns;
226
+ deleteBtns;
227
+ tooltips = [];
228
+ load(formio, query) {
229
+ query = query || {};
230
+ return formio.loadForms({ params: query })
231
+ .then((forms) => this.setRows(query, forms))
232
+ .then(() => this.attachTooltips());
233
+ }
234
+ attachTooltips() {
235
+ this.createBtns.forEach((el) => {
236
+ this.tooltips.push(new Tooltip(el.nativeElement, { title: 'Create' }));
237
+ });
238
+ this.editBtns.forEach((el) => {
239
+ this.tooltips.push(new Tooltip(el.nativeElement, { title: 'Edit' }));
240
+ });
241
+ this.viewBtns.forEach((el) => {
242
+ this.tooltips.push(new Tooltip(el.nativeElement, { title: 'View' }));
243
+ });
244
+ this.permissionsBtns.forEach((el) => {
245
+ this.tooltips.push(new Tooltip(el.nativeElement, { title: 'Permissions' }));
246
+ });
247
+ this.deleteBtns.forEach((el) => {
248
+ this.tooltips.push(new Tooltip(el.nativeElement, { title: 'Delete' }));
249
+ });
250
+ }
251
+ ngOnDestroy() {
252
+ this.tooltips.forEach((tootip) => tootip.dispose());
253
+ }
254
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: FormGridBodyComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
255
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.2", type: FormGridBodyComponent, selector: "form-grid-body", viewQueries: [{ propertyName: "createBtns", predicate: ["create"], descendants: true }, { propertyName: "viewBtns", predicate: ["view"], descendants: true }, { propertyName: "editBtns", predicate: ["edit"], descendants: true }, { propertyName: "permissionsBtns", predicate: ["permissions"], descendants: true }, { propertyName: "deleteBtns", predicate: ["delete"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<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", styles: [".form-btn{font-size:.75rem;margin:2px 0}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "pipe", type: TimeSince, name: "timeSince" }] });
256
+ }
257
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: FormGridBodyComponent, decorators: [{
258
+ type: Component,
259
+ args: [{ selector: 'form-grid-body', template: "<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", styles: [".form-btn{font-size:.75rem;margin:2px 0}\n"] }]
260
+ }], propDecorators: { createBtns: [{
261
+ type: ViewChildren,
262
+ args: ['create']
263
+ }], viewBtns: [{
264
+ type: ViewChildren,
265
+ args: ['view']
266
+ }], editBtns: [{
267
+ type: ViewChildren,
268
+ args: ['edit']
269
+ }], permissionsBtns: [{
270
+ type: ViewChildren,
271
+ args: ['permissions']
272
+ }], deleteBtns: [{
273
+ type: ViewChildren,
274
+ args: ['delete']
275
+ }] } });
276
+
277
+ class GridFooterComponent {
278
+ header;
279
+ body;
280
+ createText;
281
+ size;
282
+ actionAllowed;
283
+ pageChanged;
284
+ createItem;
285
+ template;
286
+ footerPositions = GridFooterPositions;
287
+ constructor() {
288
+ this.pageChanged = new EventEmitter();
289
+ this.createItem = new EventEmitter();
290
+ }
291
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: GridFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
292
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.2", type: GridFooterComponent, selector: "ng-component", inputs: { header: "header", body: "body", createText: "createText", size: "size", actionAllowed: "actionAllowed" }, outputs: { pageChanged: "pageChanged", createItem: "createItem" }, viewQueries: [{ propertyName: "template", first: true, predicate: TemplateRef, descendants: true, static: true }], ngImport: i0, template: '', isInline: true });
293
+ }
294
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: GridFooterComponent, decorators: [{
295
+ type: Component,
296
+ args: [{
297
+ template: ''
298
+ }]
299
+ }], ctorParameters: () => [], propDecorators: { header: [{
300
+ type: Input
301
+ }], body: [{
302
+ type: Input
303
+ }], createText: [{
304
+ type: Input
305
+ }], size: [{
306
+ type: Input
307
+ }], actionAllowed: [{
308
+ type: Input
309
+ }], pageChanged: [{
310
+ type: Output
311
+ }], createItem: [{
312
+ type: Output
313
+ }], template: [{
314
+ type: ViewChild,
315
+ args: [TemplateRef, { static: true }]
316
+ }] } });
317
+
318
+ class FormGridFooterComponent extends GridFooterComponent {
319
+ constructor() {
320
+ super();
321
+ }
322
+ ngOnInit() {
323
+ if (!this.createText) {
324
+ this.createText = 'Create Form';
325
+ }
326
+ if (!this.size) {
327
+ this.size = 7;
328
+ }
329
+ }
330
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: FormGridFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
331
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.2", type: FormGridFooterComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<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", styles: ["tfoot.formio-grid-footer td{padding:.3rem}tfoot.formio-grid-footer .page-num{font-size:1.4em}tfoot.formio-grid-footer ul.pagination{margin-top:5px;margin-bottom:0}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.PaginationComponent, selector: "pagination", inputs: ["align", "maxSize", "boundaryLinks", "directionLinks", "firstText", "previousText", "nextText", "lastText", "rotate", "pageBtnClass", "disabled", "customPageTemplate", "customNextTemplate", "customPreviousTemplate", "customFirstTemplate", "customLastTemplate", "itemsPerPage", "totalItems"], outputs: ["numPages", "pageChanged"] }], encapsulation: i0.ViewEncapsulation.None });
332
+ }
333
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: FormGridFooterComponent, decorators: [{
334
+ type: Component,
335
+ args: [{ encapsulation: ViewEncapsulation.None, template: "<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", styles: ["tfoot.formio-grid-footer td{padding:.3rem}tfoot.formio-grid-footer .page-num{font-size:1.4em}tfoot.formio-grid-footer ul.pagination{margin-top:5px;margin-bottom:0}\n"] }]
336
+ }], ctorParameters: () => [] });
337
+
338
+ var FormComponents = {
339
+ header: FormGridHeaderComponent,
340
+ body: FormGridBodyComponent,
341
+ footer: FormGridFooterComponent
342
+ };
343
+
344
+ class SubmissionGridHeaderComponent extends GridHeaderComponent {
345
+ // Map structure where the key is the path and the value is the component
346
+ formComponents;
347
+ load(formio, query, columns) {
348
+ query = query || {};
349
+ return formio.loadForm({ params: query }).then((form) => {
350
+ this.headers = [];
351
+ this.formComponents = new Map();
352
+ this.setComponents(form.components);
353
+ columns ? columns.forEach(column => {
354
+ this.setHeader(this.getHeaderForColumn(column, this.formComponents.get(column.path)));
355
+ }) : this.setComponentsHeaders(this.formComponents);
356
+ return this.headers;
357
+ });
358
+ }
359
+ setHeader(header) {
360
+ this.headers.push(header);
361
+ }
362
+ getHeaderForColumn(column, component, sort) {
363
+ return {
364
+ label: column.label,
365
+ key: column.path,
366
+ sort: sort,
367
+ component: component ? Components.create(component, null, null, true) : undefined,
368
+ renderCell: column ? column.renderCell : undefined
369
+ };
370
+ }
371
+ getHeaderForComponent(component, path, sort) {
372
+ return {
373
+ label: component.label,
374
+ key: path,
375
+ sort: sort,
376
+ component: component ? Components.create(component, null, null, true) : undefined,
377
+ };
378
+ }
379
+ // Set headers from components in case if columns are not provided
380
+ setComponentsHeaders(components, sort) {
381
+ components.forEach((component, path) => {
382
+ if (component.input &&
383
+ (!component.hasOwnProperty('tableView') || component.tableView)) {
384
+ this.setHeader(this.getHeaderForComponent(component, path, sort));
385
+ }
386
+ });
387
+ }
388
+ // Map components
389
+ setComponents(components) {
390
+ Utils.eachComponent(components, (component, newPath) => {
391
+ this.formComponents.set(`data.${newPath}`, component);
392
+ });
393
+ }
394
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: SubmissionGridHeaderComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
395
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.2", type: SubmissionGridHeaderComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<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", dependencies: [{ kind: "directive", type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
396
+ }
397
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: SubmissionGridHeaderComponent, decorators: [{
398
+ type: Component,
399
+ args: [{ template: "<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" }]
400
+ }] });
401
+
402
+ class SubmissionGridBodyComponent extends GridBodyComponent {
403
+ load(formio, query) {
404
+ query = query || {};
405
+ return formio.loadSubmissions({ params: query })
406
+ .then((submissions) => this.setRows(query, submissions));
407
+ }
408
+ /**
409
+ * Render the cell data.
410
+ *
411
+ * @param submission
412
+ * @param header
413
+ * @return any
414
+ */
415
+ view(submission, header) {
416
+ const cellValue = get(submission, header.key);
417
+ if (header.renderCell) {
418
+ return header.renderCell(cellValue, header.component);
419
+ }
420
+ else {
421
+ if (header.component) {
422
+ if (header.component.getView) {
423
+ return header.component.getView(cellValue);
424
+ }
425
+ return header.component.asString(cellValue);
426
+ }
427
+ else {
428
+ return cellValue.toString();
429
+ }
430
+ }
431
+ }
432
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: SubmissionGridBodyComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
433
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.2", type: SubmissionGridBodyComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<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", dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }] });
434
+ }
435
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: SubmissionGridBodyComponent, decorators: [{
436
+ type: Component,
437
+ args: [{ template: "<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" }]
438
+ }] });
439
+
440
+ class SubmissionGridFooterComponent extends GridFooterComponent {
441
+ constructor() {
442
+ super();
443
+ }
444
+ ngOnInit() {
445
+ if (!this.size) {
446
+ this.size = 7;
447
+ }
448
+ }
449
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: SubmissionGridFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
450
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.2", type: SubmissionGridFooterComponent, selector: "ng-component", usesInheritance: true, ngImport: i0, template: "<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", styles: ["tfoot.formio-grid-footer td{padding:.3rem}tfoot.formio-grid-footer .page-num{font-size:1.4em}tfoot.formio-grid-footer ul.pagination{margin-top:5px;margin-bottom:0}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i2$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.PaginationComponent, selector: "pagination", inputs: ["align", "maxSize", "boundaryLinks", "directionLinks", "firstText", "previousText", "nextText", "lastText", "rotate", "pageBtnClass", "disabled", "customPageTemplate", "customNextTemplate", "customPreviousTemplate", "customFirstTemplate", "customLastTemplate", "itemsPerPage", "totalItems"], outputs: ["numPages", "pageChanged"] }], encapsulation: i0.ViewEncapsulation.None });
451
+ }
452
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: SubmissionGridFooterComponent, decorators: [{
453
+ type: Component,
454
+ args: [{ encapsulation: ViewEncapsulation.None, template: "<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", styles: ["tfoot.formio-grid-footer td{padding:.3rem}tfoot.formio-grid-footer .page-num{font-size:1.4em}tfoot.formio-grid-footer ul.pagination{margin-top:5px;margin-bottom:0}\n"] }]
455
+ }], ctorParameters: () => [] });
456
+
457
+ var SubmissionComponents = {
458
+ header: SubmissionGridHeaderComponent,
459
+ body: SubmissionGridBodyComponent,
460
+ footer: SubmissionGridFooterComponent
461
+ };
462
+
463
+ class FormioGridComponent {
464
+ alerts;
465
+ resolver;
466
+ ref;
467
+ footerPosition = GridFooterPositions.bottom;
468
+ src;
469
+ items;
470
+ onForm;
471
+ query;
472
+ refresh;
473
+ columns;
474
+ gridType;
475
+ size;
476
+ components;
477
+ formio;
478
+ label;
479
+ createText;
480
+ isActionAllowed;
481
+ select;
482
+ rowSelect;
483
+ rowAction;
484
+ createItem;
485
+ error;
486
+ headerElement;
487
+ bodyElement;
488
+ footerElement;
489
+ page = 0;
490
+ isLoading = false;
491
+ initialized = false;
492
+ header;
493
+ body;
494
+ footer;
495
+ footerPositions = GridFooterPositions;
496
+ constructor(alerts, resolver, ref) {
497
+ this.alerts = alerts;
498
+ this.resolver = resolver;
499
+ this.ref = ref;
500
+ this.select = this.rowSelect = new EventEmitter();
501
+ this.rowAction = new EventEmitter();
502
+ this.createItem = new EventEmitter();
503
+ this.error = new EventEmitter();
504
+ this.isLoading = true;
505
+ }
506
+ createComponent(property, component) {
507
+ const factory = this.resolver.resolveComponentFactory(component);
508
+ const componentRef = property.createComponent(factory);
509
+ return componentRef.instance;
510
+ }
511
+ loadGrid(src) {
512
+ // If no source is provided, then skip.
513
+ if (!src && !this.formio) {
514
+ return;
515
+ }
516
+ // Do not double load.
517
+ if (this.formio && this.src && (src === this.src)) {
518
+ return;
519
+ }
520
+ if (src) {
521
+ this.src = src;
522
+ this.formio = new FormioPromiseService(this.src, { formOnly: true });
523
+ }
524
+ // Load the header.
525
+ this.header.load(this.formio, {}, this.columns)
526
+ .then(() => this.setPage(0))
527
+ .catch(error => this.onError(error));
528
+ }
529
+ ngOnInit() {
530
+ // Create our components.
531
+ const comps = this.components || ((this.gridType === 'form') ? FormComponents : SubmissionComponents);
532
+ this.header = this.createComponent(this.headerElement, comps.header);
533
+ this.header.actionAllowed = this.actionAllowed.bind(this);
534
+ this.header.sort.subscribe(header => this.sortColumn(header));
535
+ this.body = this.createComponent(this.bodyElement, comps.body);
536
+ this.body.header = this.header;
537
+ this.body.actionAllowed = this.actionAllowed.bind(this);
538
+ this.body.rowSelect.subscribe(row => this.rowSelect.emit(row));
539
+ this.body.rowAction.subscribe(action => this.rowAction.emit(action));
540
+ this.footer = this.createComponent(this.footerElement, comps.footer);
541
+ this.footer.header = this.header;
542
+ this.footer.body = this.body;
543
+ this.footer.actionAllowed = this.actionAllowed.bind(this);
544
+ this.footer.createText = this.createText;
545
+ this.footer.size = this.size;
546
+ this.footer.pageChanged.subscribe(page => this.pageChanged(page));
547
+ this.footer.createItem.subscribe(item => this.createItem.emit(item));
548
+ }
549
+ ngOnChanges(changes) {
550
+ if (this.initialized) {
551
+ if ((changes.src && changes.src.currentValue) ||
552
+ (changes.formio && changes.formio.currentValue)) {
553
+ this.loadGrid(changes.src.currentValue);
554
+ }
555
+ if (changes.items && changes.items.currentValue) {
556
+ this.refreshGrid();
557
+ }
558
+ }
559
+ if (this.footer &&
560
+ (changes.createText && changes.createText.currentValue)) {
561
+ this.footer.createText = changes.createText.currentValue;
562
+ }
563
+ }
564
+ ngAfterViewInit() {
565
+ this.alerts.setAlerts([]);
566
+ this.query = this.query || {};
567
+ if (this.refresh) {
568
+ this.refresh.subscribe((query) => this.refreshGrid(query));
569
+ }
570
+ this.loadGrid(this.src);
571
+ this.initialized = true;
572
+ this.ref.detectChanges();
573
+ }
574
+ actionAllowed(action) {
575
+ if (this.isActionAllowed) {
576
+ return this.isActionAllowed(action);
577
+ }
578
+ else {
579
+ return true;
580
+ }
581
+ }
582
+ onError(error) {
583
+ this.isLoading = false;
584
+ this.error.emit(error);
585
+ if (typeof error === 'string' || error.message) {
586
+ this.alerts.setAlert({
587
+ type: 'danger',
588
+ message: error.message || error
589
+ });
590
+ }
591
+ }
592
+ refreshGrid(query) {
593
+ this.alerts.setAlerts([]);
594
+ this.query = query || this.query;
595
+ if (!this.query.hasOwnProperty('limit')) {
596
+ this.query.limit = 10;
597
+ }
598
+ if (!this.query.hasOwnProperty('skip')) {
599
+ this.query.skip = 0;
600
+ }
601
+ this.isLoading = true;
602
+ this.ref.detectChanges();
603
+ Formio.cache = {};
604
+ let loader = null;
605
+ if (this.items) {
606
+ loader = Promise.resolve(this.body.setRows(this.query, this.items));
607
+ }
608
+ else {
609
+ loader = this.body.load(this.formio, this.query);
610
+ }
611
+ return loader.then(info => {
612
+ this.isLoading = false;
613
+ this.initialized = true;
614
+ this.ref.detectChanges();
615
+ }).catch(error => this.onError(error));
616
+ }
617
+ setPage(num = -1) {
618
+ this.page = num !== -1 ? num : this.page;
619
+ if (!this.query.hasOwnProperty('limit')) {
620
+ this.query.limit = 10;
621
+ }
622
+ if (!this.query.hasOwnProperty('skip')) {
623
+ this.query.skip = 0;
624
+ }
625
+ this.query.skip = this.page * this.query.limit;
626
+ this.refreshGrid();
627
+ }
628
+ sortColumn(header) {
629
+ // Reset all other column sorts.
630
+ each(this.header.headers, (col) => {
631
+ if (col.key !== header.key) {
632
+ col.sort = '';
633
+ }
634
+ });
635
+ switch (header.sort) {
636
+ case 'asc':
637
+ header.sort = SortType.DESC;
638
+ this.query.sort = '-' + header.key;
639
+ break;
640
+ case 'desc':
641
+ header.sort = undefined;
642
+ delete this.query.sort;
643
+ break;
644
+ case undefined:
645
+ header.sort = SortType.ASC;
646
+ this.query.sort = header.key;
647
+ break;
648
+ }
649
+ this.refreshGrid();
650
+ }
651
+ pageChanged(page) {
652
+ this.setPage(page.page - 1);
653
+ }
654
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: FormioGridComponent, deps: [{ token: i1$1.FormioAlerts }, { token: i0.ComponentFactoryResolver }, { token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component });
655
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.2", type: FormioGridComponent, selector: "formio-grid", inputs: { footerPosition: "footerPosition", src: "src", items: "items", onForm: "onForm", query: "query", refresh: "refresh", columns: "columns", gridType: "gridType", size: "size", components: "components", formio: "formio", label: "label", createText: "createText", isActionAllowed: "isActionAllowed" }, outputs: { select: "select", rowSelect: "rowSelect", rowAction: "rowAction", createItem: "createItem", error: "error" }, viewQueries: [{ propertyName: "headerElement", first: true, predicate: ["headerTemplate"], descendants: true, read: ViewContainerRef, static: true }, { propertyName: "bodyElement", first: true, predicate: ["bodyTemplate"], descendants: true, read: ViewContainerRef, static: true }, { propertyName: "footerElement", first: true, predicate: ["footerTemplate"], descendants: true, read: ViewContainerRef, static: true }], usesOnChanges: true, ngImport: i0, template: "<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", styles: [".formio-grid{position:relative;width:100%}.grid-refresh{height:400px;width:100%}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: i1$1.FormioLoaderComponent, selector: "formio-loader", inputs: ["isLoading"] }, { kind: "component", type: i1$1.FormioAlertsComponent, selector: "formio-alerts", inputs: ["alerts"], outputs: ["focusComponent"] }] });
656
+ }
657
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: FormioGridComponent, decorators: [{
658
+ type: Component,
659
+ args: [{ selector: 'formio-grid', template: "<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", styles: [".formio-grid{position:relative;width:100%}.grid-refresh{height:400px;width:100%}\n"] }]
660
+ }], ctorParameters: () => [{ type: i1$1.FormioAlerts }, { type: i0.ComponentFactoryResolver }, { type: i0.ChangeDetectorRef }], propDecorators: { footerPosition: [{
661
+ type: Input
662
+ }], src: [{
663
+ type: Input
664
+ }], items: [{
665
+ type: Input
666
+ }], onForm: [{
667
+ type: Input
668
+ }], query: [{
669
+ type: Input
670
+ }], refresh: [{
671
+ type: Input
672
+ }], columns: [{
673
+ type: Input
674
+ }], gridType: [{
675
+ type: Input
676
+ }], size: [{
677
+ type: Input
678
+ }], components: [{
679
+ type: Input
680
+ }], formio: [{
681
+ type: Input
682
+ }], label: [{
683
+ type: Input
684
+ }], createText: [{
685
+ type: Input
686
+ }], isActionAllowed: [{
687
+ type: Input
688
+ }], select: [{
689
+ type: Output
690
+ }], rowSelect: [{
691
+ type: Output
692
+ }], rowAction: [{
693
+ type: Output
694
+ }], createItem: [{
695
+ type: Output
696
+ }], error: [{
697
+ type: Output
698
+ }], headerElement: [{
699
+ type: ViewChild,
700
+ args: ['headerTemplate', { read: ViewContainerRef, static: true }]
701
+ }], bodyElement: [{
702
+ type: ViewChild,
703
+ args: ['bodyTemplate', { read: ViewContainerRef, static: true }]
704
+ }], footerElement: [{
705
+ type: ViewChild,
706
+ args: ['footerTemplate', { read: ViewContainerRef, static: true }]
707
+ }] } });
708
+
709
+ class FormioGrid {
710
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: FormioGrid, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
711
+ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.2", ngImport: i0, type: FormioGrid, declarations: [FormioGridComponent,
712
+ FormGridHeaderComponent,
713
+ FormGridBodyComponent,
714
+ FormGridFooterComponent,
715
+ SubmissionGridHeaderComponent,
716
+ SubmissionGridBodyComponent,
717
+ SubmissionGridFooterComponent,
718
+ GridHeaderComponent,
719
+ GridBodyComponent,
720
+ GridFooterComponent,
721
+ TimeSince], imports: [CommonModule,
722
+ FormsModule,
723
+ FormioModule,
724
+ RouterModule, i3.PaginationModule], exports: [FormioGridComponent] });
725
+ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: FormioGrid, providers: [
726
+ FormioAlerts,
727
+ GridService
728
+ ], imports: [CommonModule,
729
+ FormsModule,
730
+ FormioModule,
731
+ RouterModule,
732
+ PaginationModule.forRoot()] });
733
+ }
734
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.2", ngImport: i0, type: FormioGrid, decorators: [{
735
+ type: NgModule,
736
+ args: [{
737
+ imports: [
738
+ CommonModule,
739
+ FormsModule,
740
+ FormioModule,
741
+ RouterModule,
742
+ PaginationModule.forRoot()
743
+ ],
744
+ declarations: [
745
+ FormioGridComponent,
746
+ FormGridHeaderComponent,
747
+ FormGridBodyComponent,
748
+ FormGridFooterComponent,
749
+ SubmissionGridHeaderComponent,
750
+ SubmissionGridBodyComponent,
751
+ SubmissionGridFooterComponent,
752
+ GridHeaderComponent,
753
+ GridBodyComponent,
754
+ GridFooterComponent,
755
+ TimeSince
756
+ ],
757
+ exports: [
758
+ FormioGridComponent
759
+ ],
760
+ providers: [
761
+ FormioAlerts,
762
+ GridService
763
+ ]
764
+ }]
765
+ }] });
766
+
767
+ /**
768
+ * Generated bundle index. Do not edit.
769
+ */
770
+
771
+ export { FormGridBodyComponent, FormGridFooterComponent, FormGridHeaderComponent, FormioGrid, FormioGridComponent, GridBodyComponent, GridFooterComponent, GridHeaderComponent, GridService, SubmissionGridBodyComponent, SubmissionGridFooterComponent, SubmissionGridHeaderComponent };
772
+ //# sourceMappingURL=formio-angular-grid.mjs.map